PageSourceSearch

https://externia.ai/_app/immutable/chunks/3IHSg3-s.js

js externia.ai collected 2026-10-05 15:21:11 UTC 198,057 bytes, 3 lines download raw bytes

1var rc=Object.defineProperty;var Ko=t=>{throw TypeError(t)};var ac=(t,e,i)=>e in t?rc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i;var Ue=(t,e,i)=>ac(t,typeof e!="symbol"?e+"":e,i),ys=(t,e,i)=>e.has(t)||Ko("Cannot "+i);var m=(t,e,i)=>(ys(t,e,"read from private field"),i?i.call(t):e.get(t)),z=(t,e,i)=>e.has(t)?Ko("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,i),S=(t,e,i,n)=>(ys(t,e,"write to private field"),n?n.call(t,i):e.set(t,i),i),q=(t,e,i)=>(ys(t,e,"access private method"),i);var _o=Array.isArray,lc=Array.prototype.indexOf,Xi=Array.prototype.includes,cs=Array.from,xo=Object.defineProperty,Li=Object.getOwnPropertyDescriptor,ma=Object.getOwnPropertyDescriptors,cc=Object.prototype,uc=Array.prototype,ko=Object.getPrototypeOf,Zo=Object.isExtensible;function fc(t){return typeof t=="function"}const Le=()=>{};function hc(t){return t()}function $s(t){for(var e=0;e<t.length;e++)t[e]()}function ga(){var t,e,i=new Promise((n,s)=>{t=n,e=s});return{promise:i,resolve:t,reject:e}}const J=2,di=4,On=8,ya=1<<24,St=16,Je=32,pi=64,Ns=128,Fe=512,X=1024,ae=2048,et=4096,Se=8192,Be=16384,Mt=32768,Vs=1<<25,Ct=65536,Jo=1<<17,ba=1<<18,xi=1<<19,wa=1<<20,ct=1<<25,vi=65536,Us=1<<21,Co=1<<22,qt=1<<23,ci=Symbol("$state"),_a=Symbol("legacy props"),dc=Symbol(""),mt=new class extends Error{constructor(){super(...arguments);Ue(this,"name","StaleReactionError");Ue(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}},pc=!!globalThis.document?.contentType&&globalThis.document.contentType.includes("xml"),En=3,ki=8;function us(t){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function vc(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function mc(t,e,i){throw new Error("https://svelte.dev/e/each_key_duplicate")}function gc(t){throw new Error("https://svelte.dev/e/effect_in_teardown")}function yc(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function bc(t){throw new Error("https://svelte.dev/e/effect_orphan")}function wc(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function _c(){throw new Error("https://svelte.dev/e/hydration_failed")}function xc(t){throw new Error("https://svelte.dev/e/lifecycle_legacy_only")}function kc(t){throw new Error("https://svelte.dev/e/props_invalid_value")}function Cc(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Pc(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Sc(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function Mc(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const Oc=1,Ec=2,xa=4,zc=8,Rc=16,Tc=1,Dc=2,Ic=4,Lc=8,Ac=16,Fc=1,Bc=2,qc=4,$c=1,Nc=2,Po="[",So="[!",er="[?",Mo="]",mi={},ee=Symbol(),ka="http://www.w3.org/1999/xhtml",Vc="http://www.w3.org/2000/svg",Uc="http://www.w3.org/1998/Math/MathML";function zn(t){console.warn("https://svelte.dev/e/hydration_mismatch")}function Hc(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}let C=!1;function Ce(t){C=t}let O;function Y(t){if(t===null)throw zn(),mi;return O=t}function Pt(){return Y(Ee(O))}function Qg(t){if(C){if(Ee(O)!==null)throw zn(),mi;O=t}}function Wc(t=1){if(C){for(var e=t,i=O;e--;)i=Ee(i);O=i}}function gn(t=!0){for(var e=0,i=O;;){if(i.nodeType===ki){var n=i.data;if(n===Mo){if(e===0)return i;e-=1}else(n===Po||n===So||n[0]==="["&&!isNaN(Number(n.slice(1))))&&(e+=1)}var s=Ee(i);t&&i.remove(),i=s}}function Oo(t){if(!t||t.nodeType!==ki)throw zn(),mi;return t.data}function Ca(t){return t===this.v}function Pa(t,e){return t!=t?e==e:t!==e||t!==null&&typeof t=="object"||typeof t=="function"}function Sa(t){return!Pa(t,this.v)}let rn=!1;function jc(){rn=!0}let F=null;function Ki(t){F=t}function Ma(t,e=!1,i){F={p:F,i:!1,c:null,e:null,s:t,x:null,r:E,l:rn&&!e?{s:null,u:null,$:[]}:null}}function Oa(t){var e=F,i=e.e;if(i!==null){e.e=null;for(var n of i)Ja(n)}return t!==void 0&&(e.x=t),e.i=!0,F=e.p,t??{}}function an(){return!rn||F!==null&&F.l===null}let Jt=[];function Ea(){var t=Jt;Jt=[],$s(t)}function ft(t){if(Jt.length===0&&!pn){var e=Jt;queueMicrotask(()=>{e===Jt&&Ea()})}Jt.push(t)}function Gc(){for(;Jt.length>0;)Ea()}function za(t){var e=E;if(e===null)return R.f|=qt,t;if((e.f&Mt)===0&&(e.f&di)===0)throw t;At(t,e)}function At(t,e){for(;e!==null;){if((e.f&Ns)!==0){if((e.f&Mt)===0)throw t;try{e.b.error(t);return}catch(i){t=i}}e=e.parent}throw t}const Yc=-7169;function V(t,e){t.f=t.f&Yc|e}function Eo(t){(t.f&Fe)!==0||t.deps===null?V(t,X):V(t,et)}function Ra(t){if(t!==null)for(const e of t)(e.f&J)===0||(e.f&vi)===0||(e.f^=vi,Ra(e.deps))}
1function Ta(t,e,i){(t.f&ae)!==0?e.add(t):(t.f&et)!==0&&i.add(t),Ra(t.deps),V(t,X)}function Da(t,e,i){if(t==null)return e(void 0),Le;const n=Ot(()=>t.subscribe(e,i));return n.unsubscribe?()=>n.unsubscribe():n}const Si=[];function Qc(t,e=Le){let i=null;const n=new Set;function s(a){if(Pa(t,a)&&(t=a,i)){const l=!Si.length;for(const c of n)c[1](),Si.push(c,t);if(l){for(let c=0;c<Si.length;c+=2)Si[c][0](Si[c+1]);Si.length=0}}}function o(a){s(a(t))}function r(a,l=Le){const c=[a,l];return n.add(c),n.size===1&&(i=e(s,o)||Le),a(t),()=>{n.delete(c),n.size===0&&i&&(i(),i=null)}}return{set:s,update:o,subscribe:r}}function Xc(t){let e;return Da(t,i=>e=i)(),e}let In=!1,Hs=Symbol();function Xg(t,e,i){const n=i[e]??(i[e]={store:null,source:Io(void 0),unsubscribe:Le});if(n.store!==t&&!(Hs in i))if(n.unsubscribe(),n.store=t??null,t==null)n.source.v=void 0,n.unsubscribe=Le;else{var s=!0;n.unsubscribe=Da(t,o=>{s?n.source.v=o:lt(n.source,o)}),s=!1}return t&&Hs in i?Xc(t):K(n.source)}function Kg(){const t={};function e(){Fo(()=>{for(var i in t)t[i].unsubscribe();xo(t,Hs,{enumerable:!1,value:!0})})}return[t,e]}function Kc(t){var e=In;try{return In=!1,[t(),In]}finally{In=e}}const cn=new Set;let I=null,Ge=null,Ws=null,pn=!1,bs=!1,zi=null,Wn=null;var tr=0;let Zc=1;var Ni,Vi,Ui,Hi,Cn,Dt,Wi,It,st,ji,ue,js,Gs,Ys,Qs,Ia;const rs=class rs{constructor(){z(this,ue);Ue(this,"id",Zc++);Ue(this,"current",new Map);Ue(this,"previous",new Map);z(this,Ni,new Set);z(this,Vi,new Set);z(this,Ui,0);z(this,Hi,0);z(this,Cn,null);z(this,Dt,[]);z(this,Wi,new Set);z(this,It,new Set);z(this,st,new Map);Ue(this,"is_fork",!1);z(this,ji,!1)}skip_effect(e){m(this,st).has(e)||m(this,st).set(e,{d:[],m:[]})}unskip_effect(e){var i=m(this,st).get(e);if(i){m(this,st).delete(e);for(var n of i.d)V(n,ae),this.schedule(n);for(n of i.m)V(n,et),this.schedule(n)}}capture(e,i){i!==ee&&!this.previous.has(e)&&this.previous.set(e,i),(e.f&qt)===0&&(this.current.set(e,e.v),Ge?.set(e,e.v))}activate(){I=this}deactivate(){I=null,Ge=null}flush(){try{if(bs=!0,I=this,!q(this,ue,js).call(this)){for(const e of m(this,Wi))m(this,It).delete(e),V(e,ae),this.schedule(e);for(const e of m(this,It))V(e,et),this.schedule(e)}q(this,ue,Gs).call(this)}finally{tr=0,Ws=null,zi=null,Wn=null,bs=!1,I=null,Ge=null,$t.clear()}}discard(){for(const e of m(this,Vi))e(this);m(this,Vi).clear()}increment(e){S(this,Ui,m(this,Ui)+1),e&&S(this,Hi,m(this,Hi)+1)}decrement(e,i){S(this,Ui,m(this,Ui)-1),e&&S(this,Hi,m(this,Hi)-1),!(m(this,ji)||i)&&(S(this,ji,!0),ft(()=>{S(this,ji,!1),this.flush()}))}oncommit(e){m(this,Ni).add(e)}ondiscard(e){m(this,Vi).add(e)}settled(){return(m(this,Cn)??S(this,Cn,ga())).promise}static ensure(){if(I===null){const e=I=new rs;bs||(cn.add(I),pn||ft(()=>{I===e&&e.flush()}))}return I}apply(){}schedule(e){if(Ws=e,e.b?.is_pending&&(e.f&(di|On|ya))!==0&&(e.f&Mt)===0){e.b.defer_effect(e);return}for(var i=e;i.parent!==null;){i=i.parent;var n=i.f;if(zi!==null&&i===E&&(R===null||(R.f&J)===0))return;if((n&(pi|Je))!==0){if((n&X)===0)return;i.f^=X}}m(this,Dt).push(i)}};Ni=new WeakMap,Vi=new WeakMap,Ui=new WeakMap,Hi=new WeakMap,Cn=new WeakMap,Dt=new WeakMap,Wi=new WeakMap,It=new WeakMap,st=new WeakMap,ji=new WeakMap,ue=new WeakSet,js=function(){return this.is_fork||m(this,Hi)>0},Gs=function(){var a;tr++>1e3&&Jc();const e=m(this,Dt);S(this,Dt,[]),this.apply();var i=zi=[],n=[],s=Wn=[];for(const l of e)q(this,ue,Ys).call(this,l,i,n);if(I=null,s.length>0){var o=rs.ensure();for(const l of s)o.schedule(l)}if(zi=null,Wn=null,q(this,ue,js).call(this)){q(this,ue,Qs).call(this,n),q(this,ue,Qs).call(this,i);for(const[l,c]of m(this,st))Fa(l,c)}else{m(this,Wi).clear(),m(this,It).clear();for(const l of m(this,Ni))l(this);m(this,Ni).clear(),ir(n),ir(i),m(this,Ui)===0&&q(this,ue,Ia).call(this),m(this,Cn)?.resolve()}var r=I;r!==null&&(cn.add(r),q(a=r,ue,Gs).call(a))},Ys=function(e,i,n){e.f^=X;for(var s=e.first;s!==null;){var o=s.f,r=(o&(Je|pi))!==0,a=r&&(o&X)!==0,l=a||(o&Se)!==0||m(this,st).has(s);if(!l&&s.fn!==null){r?s.f^=X:(o&di)!==0?i.push(s):Tn(s)&&((o&St)!==0&&m(this,It).add(s),Ji(s));var c=s.first;if(c!==null){s=c;continue}}for(;s!==null;){var u=s.next;if(u!==null){s=u;break}s=s.parent}}},Qs=function(e){for(var i=0;i<e.length;i+=1)Ta(e[i],m(this,Wi),m(this,It))},Ia=function(){var s;if(cn.size>1){this.previous.clear();var e=I,i=Ge,n=!0;for(const o of cn){if(o===this){n=!1;continue}const r=[];for(const[l,c]of this.current){if(o.current.has(l))if(n&&c!==o.current.get(l))o.current.set(l,c);else continue;r.push(l)}if(r.length===0)continue;const a=[...o.current.keys()].filter(l=>!this.current.has(l));if(a.length>0){o.activate();const l=new Set,c=new Map;for(const u of r)La(u,a,l,c);if(m(o,Dt).length>0){o.apply();for(const u of m(o,Dt))q(s=o,ue,Ys).call(s,u,[],[])}o.deactivate()}}I=e,Ge=i}m(this,st).clear(),cn.delete(this)};let Vt=rs;function Kt(t){var e=pn;pn=!0;try{for(var i;;){if(Gc(),I===null)return i;I.flush()}}finally{pn=e}}
1function Jc(){try{wc()}catch(t){At(t,Ws)}}let vt=null;function ir(t){var e=t.length;if(e!==0){for(var i=0;i<e;){var n=t[i++];if((n.f&(Be|Se))===0&&Tn(n)&&(vt=new Set,Ji(n),n.deps===null&&n.first===null&&n.nodes===null&&n.teardown===null&&n.ac===null&&sl(n),vt?.size>0)){$t.clear();for(const s of vt){if((s.f&(Be|Se))!==0)continue;const o=[s];let r=s.parent;for(;r!==null;)vt.has(r)&&(vt.delete(r),o.push(r)),r=r.parent;for(let a=o.length-1;a>=0;a--){const l=o[a];(l.f&(Be|Se))===0&&Ji(l)}}vt.clear()}}vt=null}}function La(t,e,i,n){if(!i.has(t)&&(i.add(t),t.reactions!==null))for(const s of t.reactions){const o=s.f;(o&J)!==0?La(s,e,i,n):(o&(Co|St))!==0&&(o&ae)===0&&Aa(s,e,n)&&(V(s,ae),zo(s))}}function Aa(t,e,i){const n=i.get(t);if(n!==void 0)return n;if(t.deps!==null)for(const s of t.deps){if(Xi.call(e,s))return!0;if((s.f&J)!==0&&Aa(s,e,i))return i.set(s,!0),!0}return i.set(t,!1),!1}function zo(t){I.schedule(t)}function Fa(t,e){if(!((t.f&Je)!==0&&(t.f&X)!==0)){(t.f&ae)!==0?e.d.push(t):(t.f&et)!==0&&e.m.push(t),V(t,X);for(var i=t.first;i!==null;)Fa(i,e),i=i.next}}function eu(t){let e=0,i=gi(0),n;return()=>{Ao()&&(K(i),Bo(()=>(e===0&&(n=Ot(()=>t(()=>vn(i)))),e+=1,()=>{ft(()=>{e-=1,e===0&&(n?.(),n=void 0,vn(i))})})))}}var tu=Ct|xi;function iu(t,e,i,n){new nu(t,e,i,n)}var we,Pn,ot,ri,ve,rt,_e,We,gt,ai,Lt,Gi,Yi,Qi,yt,as,N,Ba,qa,$a,Xs,jn,Gn,Ks;class nu{constructor(e,i,n,s){z(this,N);Ue(this,"parent");Ue(this,"is_pending",!1);Ue(this,"transform_error");z(this,we);z(this,Pn,C?O:null);z(this,ot);z(this,ri);z(this,ve);z(this,rt,null);z(this,_e,null);z(this,We,null);z(this,gt,null);z(this,ai,0);z(this,Lt,0);z(this,Gi,!1);z(this,Yi,new Set);z(this,Qi,new Set);z(this,yt,null);z(this,as,eu(()=>(S(this,yt,gi(m(this,ai))),()=>{S(this,yt,null)})));S(this,we,e),S(this,ot,i),S(this,ri,o=>{var r=E;r.b=this,r.f|=Ns,n(o)}),this.parent=E.b,this.transform_error=s??this.parent?.transform_error??(o=>o),S(this,ve,Ci(()=>{if(C){const o=m(this,Pn);Pt();const r=o.data===So;if(o.data.startsWith(er)){const l=JSON.parse(o.data.slice(er.length));q(this,N,qa).call(this,l)}else r?q(this,N,$a).call(this):q(this,N,Ba).call(this)}else q(this,N,Xs).call(this)},tu)),C&&S(this,we,O)}defer_effect(e){Ta(e,m(this,Yi),m(this,Qi))}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!m(this,ot).pending}update_pending_count(e,i){q(this,N,Ks).call(this,e,i),S(this,ai,m(this,ai)+e),!(!m(this,yt)||m(this,Gi))&&(S(this,Gi,!0),ft(()=>{S(this,Gi,!1),m(this,yt)&&Zi(m(this,yt),m(this,ai))}))}get_effect_pending(){return m(this,as).call(this),K(m(this,yt))}error(e){var i=m(this,ot).onerror;let n=m(this,ot).failed;if(!i&&!n)throw e;m(this,rt)&&(ge(m(this,rt)),S(this,rt,null)),m(this,_e)&&(ge(m(this,_e)),S(this,_e,null)),m(this,We)&&(ge(m(this,We)),S(this,We,null)),C&&(Y(m(this,Pn)),Wc(),Y(gn()));var s=!1,o=!1;const r=()=>{if(s){Hc();return}s=!0,o&&Mc(),m(this,We)!==null&&ui(m(this,We),()=>{S(this,We,null)}),q(this,N,Gn).call(this,()=>{q(this,N,Xs).call(this)})},a=l=>{try{o=!0,i?.(l,r),o=!1}catch(c){At(c,m(this,ve)&&m(this,ve).parent)}n&&S(this,We,q(this,N,Gn).call(this,()=>{try{return Ie(()=>{var c=E;c.b=this,c.f|=Ns,n(m(this,we),()=>l,()=>r)})}catch(c){return At(c,m(this,ve).parent),null}}))};ft(()=>{var l;try{l=this.transform_error(e)}catch(c){At(c,m(this,ve)&&m(this,ve).parent);return}l!==null&&typeof l=="object"&&typeof l.then=="function"?l.then(a,c=>At(c,m(this,ve)&&m(this,ve).parent)):a(l)})}}we=new WeakMap,Pn=new WeakMap,ot=new WeakMap,ri=new WeakMap,ve=new WeakMap,rt=new WeakMap,_e=new WeakMap,We=new WeakMap,gt=new WeakMap,ai=new WeakMap,Lt=new WeakMap,Gi=new WeakMap,Yi=new WeakMap,Qi=new WeakMap,yt=new WeakMap,as=new WeakMap,N=new WeakSet,Ba=function(){try{S(this,rt,Ie(()=>m(this,ri).call(this,m(this,we))))}catch(e){this.error(e)}},qa=function(e){const i=m(this,ot).failed;i&&S(this,We,Ie(()=>{i(m(this,we),()=>e,()=>()=>{})}))},$a=function(){const e=m(this,ot).pending;if(e){this.is_pending=!0,S(this,_e,Ie(()=>e(m(this,we))));var i=I;ft(()=>{var n=S(this,gt,document.createDocumentFragment()),s=he();n.append(s),S(this,rt,q(this,N,Gn).call(this,()=>Ie(()=>m(this,ri).call(this,s)))),m(this,Lt)===0&&(m(this,we).before(n),S(this,gt,null),ui(m(this,_e),()=>{S(this,_e,null)}),q(this,N,jn).call(this,i))})}},Xs=function(){var e=I;try{if(this.is_pending=this.has_pending_snippet(),S(this,Lt,0),S(this,ai,0),S(this,rt,Ie(()=>{m(this,ri).call(this,m(this,we))})),m(this,Lt)>0){var i=S(this,gt,document.createDocumentFragment());No(m(this,rt),i);const n=m(this,ot).pending;S(this,_e,Ie(()=>n(m(this,we))))}else q(this,N,jn).call(this,e)}catch(n){this.error(n)}},jn=function(e){this.is_pending=!1;for(const i of m(this,Yi))V(i,ae),e.schedule(i);for(const i of m(this,Qi))V(i,et),e.schedule(i);m(this,Yi).clear(),m(this,Qi).clear()},Gn=function(e){var i=E,n=R,s=F;ht(m(this,ve)),$e(m(this,ve)),Ki(m(this,ve).ctx);try{return Vt.ensure(),e()}catch(o){return za(o),null}finally{ht(i),$e(n),Ki(s)}},Ks=function(e,i){var n;if(!this.has_pending_snippet()){this.parent&&q(n=this.parent,N,Ks).call(n,e,i);return}S(this,Lt,m(this,Lt)+e),m(this,Lt)===0&&(q(this,N,jn).call(this,i),m(this,_e)&&ui(m(this,_e),()=>{S(this,_e,null)}),m(this,gt)&&(m(this,we).before(m(this,gt)),S(this,gt,null)))};function Na(t,e,i,n){const s=an()?Rn:To;var o=t.filter(h=>!h.settled);if(i.length===0&&o.length===0){n(e.map(s));return}var r=E,a=su(),l=o.length===1?o[0].promise:o.length>1?Promise.all(o.map(h=>h.promise)):null;function c(h){a();try{n(h)}catch(d){(r.f&Be)===0&&At(d,r)}Zn()}if(i.length===0){l.then(()=>c(e.map(s)));return}var u=Ro();function f(){Promise.all(i.map(h=>ou(h))).then(h=>
1c([...e.map(s),...h])).catch(h=>At(h,r)).finally(()=>u())}l?l.then(()=>{a(),f(),Zn()}):f()}function su(){var t=E,e=R,i=F,n=I;return function(o=!0){ht(t),$e(e),Ki(i),o&&(t.f&Be)===0&&(n?.activate(),n?.apply())}}function Zn(t=!0){ht(null),$e(null),Ki(null),t&&I?.deactivate()}function Ro(){var t=E.b,e=I,i=t.is_rendered();return t.update_pending_count(1,e),e.increment(i),(n=!1)=>{t.update_pending_count(-1,e),e.decrement(i,n)}}function Rn(t){var e=J|ae,i=R!==null&&(R.f&J)!==0?R:null;return E!==null&&(E.f|=xi),{ctx:F,deps:null,effects:null,equals:Ca,f:e,fn:t,reactions:null,rv:0,v:ee,wv:0,parent:i??E,ac:null}}function ou(t,e,i){let n=E;n===null&&vc();var s=void 0,o=gi(ee),r=!R,a=new Map;return vu(()=>{var l=E,c=ga();s=c.promise;try{Promise.resolve(t()).then(c.resolve,c.reject).finally(Zn)}catch(d){c.reject(d),Zn()}var u=I;if(r){if((l.f&Mt)!==0)var f=Ro();if(n.b.is_rendered())a.get(u)?.reject(mt),a.delete(u);else{for(const d of a.values())d.reject(mt);a.clear()}a.set(u,c)}const h=(d,v=void 0)=>{if(f){var g=v===mt;f(g)}if(!(v===mt||(l.f&Be)!==0)){if(u.activate(),v)o.f|=qt,Zi(o,v);else{(o.f&qt)!==0&&(o.f^=qt),Zi(o,d);for(const[p,y]of a){if(a.delete(p),p===u)break;y.reject(mt)}}u.deactivate()}};c.promise.then(h,d=>h(null,d||"unknown"))}),Fo(()=>{for(const l of a.values())l.reject(mt)}),new Promise(l=>{function c(u){function f(){u===s?l(o):c(s)}u.then(f,f)}c(s)})}function Zg(t){const e=Rn(t);return al(e),e}function To(t){const e=Rn(t);return e.equals=Sa,e}function ru(t){var e=t.effects;if(e!==null){t.effects=null;for(var i=0;i<e.length;i+=1)ge(e[i])}}function au(t){for(var e=t.parent;e!==null;){if((e.f&J)===0)return(e.f&Be)===0?e:null;e=e.parent}return null}function Do(t){var e,i=E;ht(au(t));try{t.f&=~vi,ru(t),e=fl(t)}finally{ht(i)}return e}function Va(t){var e=Do(t);if(!t.equals(e)&&(t.wv=cl(),(!I?.is_fork||t.deps===null)&&(t.v=e,t.deps===null))){V(t,X);return}Ut||(Ge!==null?(Ao()||I?.is_fork)&&Ge.set(t,e):Eo(t))}function lu(t){if(t.effects!==null)for(const e of t.effects)(e.teardown||e.ac)&&(e.teardown?.(),e.ac?.abort(mt),e.teardown=Le,e.ac=null,yn(e,0),qo(e))}function Ua(t){if(t.effects!==null)for(const e of t.effects)e.teardown&&Ji(e)}let Zs=new Set;const $t=new Map;let Ha=!1;function gi(t,e){var i={f:0,v:t,reactions:null,equals:Ca,rv:0,wv:0};return i}function zt(t,e){const i=gi(t);return al(i),i}function Io(t,e=!1,i=!0){var s;const n=gi(t);return e||(n.equals=Sa),rn&&i&&F!==null&&F.l!==null&&((s=F.l).s??(s.s=[])).push(n),n}function lt(t,e,i=!1){R!==null&&(!Qe||(R.f&Jo)!==0)&&an()&&(R.f&(J|St|Co|Jo))!==0&&(qe===null||!Xi.call(qe,t))&&Sc();let n=i?Ri(e):e;return Zi(t,n,Wn)}function Zi(t,e,i=null){if(!t.equals(e)){var n=t.v;Ut?$t.set(t,e):$t.set(t,n),t.v=e;var s=Vt.ensure();if(s.capture(t,n),(t.f&J)!==0){const o=t;(t.f&ae)!==0&&Do(o),Eo(o)}t.wv=cl(),Wa(t,ae,i),an()&&E!==null&&(E.f&X)!==0&&(E.f&(Je|pi))===0&&(Te===null?gu([t]):Te.push(t)),!s.is_fork&&Zs.size>0&&!Ha&&cu()}return e}function cu(){Ha=!1;for(const t of Zs)(t.f&X)!==0&&V(t,et),Tn(t)&&Ji(t);Zs.clear()}function vn(t){lt(t,t.v+1)}function Wa(t,e,i){var n=t.reactions;if(n!==null)for(var s=an(),o=n.length,r=0;r<o;r++){var a=n[r],l=a.f;if(!(!s&&a===E)){var c=(l&ae)===0;if(c&&V(a,e),(l&J)!==0){var u=a;Ge?.delete(u),(l&vi)===0&&(l&Fe&&(a.f|=vi),Wa(u,et,i))}else if(c){var f=a;(l&St)!==0&&vt!==null&&vt.add(f),i!==null?i.push(f):zo(f)}}}}function Ri(t){if(typeof t!="object"||t===null||ci in t)return t;const e=ko(t);if(e!==cc&&e!==uc)return t;var i=new Map,n=_o(t),s=zt(0),o=fi,r=a=>{if(fi===o)return a();var l=R,c=fi;$e(null),rr(o);var u=a();return $e(l),rr(c),u};return n&&i.set("length",zt(t.length)),new Proxy(t,{defineProperty(a,l,c){(!("value"in c)||c.configurable===!1||c.enumerable===!1||c.writable===!1)&&Cc();var u=i.get(l);return u===void 0?r(()=>{var f=zt(c.value);return i.set(l,f),f}):lt(u,c.value,!0),!0},deleteProperty(a,l){var c=i.get(l);if(c===void 0){if(l in a){const u=r(()=>zt(ee));i.set(l,u),vn(s)}}else lt(c,ee),vn(s);return!0},get(a,l,c){if(l===ci)return t;var u=i.get(l),f=l in a;if(u===void 0&&(!f||Li(a,l)?.writable)&&(u=r(()=>{var d=Ri(f?a[l]:ee),v=zt(d);return v}),i.set(l,u)),u!==void 0){var h=K(u);return h===ee?void 0:h}return Reflect.get(a,l,c)},getOwnPropertyDescriptor(a,l){var c=Reflect.getOwnPropertyDescriptor(a,l);
1if(c&&"value"in c){var u=i.get(l);u&&(c.value=K(u))}else if(c===void 0){var f=i.get(l),h=f?.v;if(f!==void 0&&h!==ee)return{enumerable:!0,configurable:!0,value:h,writable:!0}}return c},has(a,l){if(l===ci)return!0;var c=i.get(l),u=c!==void 0&&c.v!==ee||Reflect.has(a,l);if(c!==void 0||E!==null&&(!u||Li(a,l)?.writable)){c===void 0&&(c=r(()=>{var h=u?Ri(a[l]):ee,d=zt(h);return d}),i.set(l,c));var f=K(c);if(f===ee)return!1}return u},set(a,l,c,u){var f=i.get(l),h=l in a;if(n&&l==="length")for(var d=c;d<f.v;d+=1){var v=i.get(d+"");v!==void 0?lt(v,ee):d in a&&(v=r(()=>zt(ee)),i.set(d+"",v))}if(f===void 0)(!h||Li(a,l)?.writable)&&(f=r(()=>zt(void 0)),lt(f,Ri(c)),i.set(l,f));else{h=f.v!==ee;var g=r(()=>Ri(c));lt(f,g)}var p=Reflect.getOwnPropertyDescriptor(a,l);if(p?.set&&p.set.call(u,c),!h){if(n&&typeof l=="string"){var y=i.get("length"),w=Number(l);Number.isInteger(w)&&w>=y.v&&lt(y,w+1)}vn(s)}return!0},ownKeys(a){K(s);var l=Reflect.ownKeys(a).filter(f=>{var h=i.get(f);return h===void 0||h.v!==ee});for(var[c,u]of i)u.v!==ee&&!(c in a)&&l.push(c);return l},setPrototypeOf(){Pc()}})}var nr,uu,ja,Ga,Ya;function Js(){if(nr===void 0){nr=window,uu=document,ja=/Firefox/.test(navigator.userAgent);var t=Element.prototype,e=Node.prototype,i=Text.prototype;Ga=Li(e,"firstChild").get,Ya=Li(e,"nextSibling").get,Zo(t)&&(t.__click=void 0,t.__className=void 0,t.__attributes=null,t.__style=void 0,t.__e=void 0),Zo(i)&&(i.__t=void 0)}}function he(t=""){return document.createTextNode(t)}function ne(t){return Ga.call(t)}function Ee(t){return Ya.call(t)}function Jg(t,e){if(!C)return ne(t);var i=ne(O);if(i===null)i=O.appendChild(he());else if(e&&i.nodeType!==En){var n=he();return i?.before(n),Y(n),n}return e&&fs(i),Y(i),i}function ey(t,e=!1){if(!C){var i=ne(t);return i instanceof Comment&&i.data===""?Ee(i):i}if(e){if(O?.nodeType!==En){var n=he();return O?.before(n),Y(n),n}fs(O)}return O}function ty(t,e=1,i=!1){let n=C?O:t;for(var s;e--;)s=n,n=Ee(n);if(!C)return n;if(i){if(n?.nodeType!==En){var o=he();return n===null?s?.after(o):n.before(o),Y(o),o}fs(n)}return Y(n),n}function Lo(t){t.textContent=""}function Qa(){return!1}function Xa(t,e,i){return document.createElementNS(e??ka,t,void 0)}function fs(t){if(t.nodeValue.length<65536)return;let e=t.nextSibling;for(;e!==null&&e.nodeType===En;)e.remove(),t.nodeValue+=e.nodeValue,e=t.nextSibling}function iy(t){C&&ne(t)!==null&&Lo(t)}let sr=!1;function Ka(){sr||(sr=!0,document.addEventListener("reset",t=>{Promise.resolve().then(()=>{if(!t.defaultPrevented)for(const e of t.target.elements)e.__on_r?.()})},{capture:!0}))}function ln(t){var e=R,i=E;$e(null),ht(null);try{return t()}finally{$e(e),ht(i)}}function fu(t,e,i,n=i){t.addEventListener(e,()=>ln(i));const s=t.__on_r;s?t.__on_r=()=>{s(),n(!0)}:t.__on_r=()=>n(!0),Ka()}function Za(t){E===null&&(R===null&&bc(),yc()),Ut&&gc()}function hu(t,e){var i=e.last;i===null?e.last=e.first=t:(i.next=t,t.prev=i,e.last=t)}function it(t,e){var i=E;i!==null&&(i.f&Se)!==0&&(t|=Se);var n={ctx:F,deps:null,nodes:null,f:t|ae|Fe,first:null,fn:e,last:null,next:null,parent:i,b:i&&i.b,prev:null,teardown:null,wv:0,ac:null},s=n;if((t&di)!==0)zi!==null?zi.push(n):Vt.ensure().schedule(n);else if(e!==null){try{Ji(n)}catch(r){throw ge(n),r}s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&(s.f&xi)===0&&(s=s.first,(t&St)!==0&&(t&Ct)!==0&&s!==null&&(s.f|=Ct))}if(s!==null&&(s.parent=i,i!==null&&hu(s,i),R!==null&&(R.f&J)!==0&&(t&pi)===0)){var o=R;(o.effects??(o.effects=[])).push(s)}return n}function Ao(){return R!==null&&!Qe}function Fo(t){const e=it(On,null);return V(e,X),e.teardown=t,e}function eo(t){Za();var e=E.f,i=!R&&(e&Je)!==0&&(e&Mt)===0;if(i){var n=F;(n.e??(n.e=[])).push(t)}else return Ja(t)}function Ja(t){return it(di|wa,t)}function du(t){return Za(),it(On|wa,t)}function pu(t){Vt.ensure();const e=it(pi|xi,t);return(i={})=>new Promise(n=>{i.outro?ui(e,()=>{ge(e),n(void 0)}):(ge(e),n(void 0))})}function el(t){return it(di,t)}function vu(t){return it(Co|xi,t)}function Bo(t,e=0){return it(On|e,t)}function tl(t,e=[],i=[],n=[]){Na(n,e,i,s=>{it(On,()=>t(...s.map(K)))})}function ny(t,e=[],i=[],n=[]){if(i.length>0||n.length>0)var s=Ro();Na(n,e,i,o=>{it(di,()=>t(...o.map(K))),s&&s()})}function Ci(t,e=0){var i=it(St|e,t);return i}function Ie(t){return it(Je|xi,t)}function il(t){var e=t.teardown;
1if(e!==null){const i=Ut,n=R;or(!0),$e(null);try{e.call(null)}finally{or(i),$e(n)}}}function qo(t,e=!1){var i=t.first;for(t.first=t.last=null;i!==null;){const s=i.ac;s!==null&&ln(()=>{s.abort(mt)});var n=i.next;(i.f&pi)!==0?i.parent=null:ge(i,e),i=n}}function mu(t){for(var e=t.first;e!==null;){var i=e.next;(e.f&Je)===0&&ge(e),e=i}}function ge(t,e=!0){var i=!1;(e||(t.f&ba)!==0)&&t.nodes!==null&&t.nodes.end!==null&&(nl(t.nodes.start,t.nodes.end),i=!0),V(t,Vs),qo(t,e&&!i),yn(t,0);var n=t.nodes&&t.nodes.t;if(n!==null)for(const o of n)o.stop();il(t),t.f^=Vs,t.f|=Be;var s=t.parent;s!==null&&s.first!==null&&sl(t),t.next=t.prev=t.teardown=t.ctx=t.deps=t.fn=t.nodes=t.ac=null}function nl(t,e){for(;t!==null;){var i=t===e?null:Ee(t);t.remove(),t=i}}function sl(t){var e=t.parent,i=t.prev,n=t.next;i!==null&&(i.next=n),n!==null&&(n.prev=i),e!==null&&(e.first===t&&(e.first=n),e.last===t&&(e.last=i))}function ui(t,e,i=!0){var n=[];ol(t,n,!0);var s=()=>{i&&ge(t),e&&e()},o=n.length;if(o>0){var r=()=>--o||s();for(var a of n)a.out(r)}else s()}function ol(t,e,i){if((t.f&Se)===0){t.f^=Se;var n=t.nodes&&t.nodes.t;if(n!==null)for(const a of n)(a.is_global||i)&&e.push(a);for(var s=t.first;s!==null;){var o=s.next,r=(s.f&Ct)!==0||(s.f&Je)!==0&&(t.f&St)!==0;ol(s,e,r?i:!1),s=o}}}function $o(t){rl(t,!0)}function rl(t,e){if((t.f&Se)!==0){t.f^=Se,(t.f&X)===0&&(V(t,ae),Vt.ensure().schedule(t));for(var i=t.first;i!==null;){var n=i.next,s=(i.f&Ct)!==0||(i.f&Je)!==0;rl(i,s?e:!1),i=n}var o=t.nodes&&t.nodes.t;if(o!==null)for(const r of o)(r.is_global||e)&&r.in()}}function No(t,e){if(t.nodes)for(var i=t.nodes.start,n=t.nodes.end;i!==null;){var s=i===n?null:Ee(i);e.append(i),i=s}}let Yn=!1,Ut=!1;function or(t){Ut=t}let R=null,Qe=!1;function $e(t){R=t}let E=null;function ht(t){E=t}let qe=null;function al(t){R!==null&&(qe===null?qe=[t]:qe.push(t))}let me=null,be=0,Te=null;function gu(t){Te=t}let ll=1,ei=0,fi=ei;function rr(t){fi=t}function cl(){return++ll}function Tn(t){var e=t.f;if((e&ae)!==0)return!0;if(e&J&&(t.f&=~vi),(e&et)!==0){for(var i=t.deps,n=i.length,s=0;s<n;s++){var o=i[s];if(Tn(o)&&Va(o),o.wv>t.wv)return!0}(e&Fe)!==0&&Ge===null&&V(t,X)}return!1}function ul(t,e,i=!0){var n=t.reactions;if(n!==null&&!(qe!==null&&Xi.call(qe,t)))for(var s=0;s<n.length;s++){var o=n[s];(o.f&J)!==0?ul(o,e,!1):e===o&&(i?V(o,ae):(o.f&X)!==0&&V(o,et),zo(o))}}function fl(t){var g;var e=me,i=be,n=Te,s=R,o=qe,r=F,a=Qe,l=fi,c=t.f;me=null,be=0,Te=null,R=(c&(Je|pi))===0?t:null,qe=null,Ki(t.ctx),Qe=!1,fi=++ei,t.ac!==null&&(ln(()=>{t.ac.abort(mt)}),t.ac=null);try{t.f|=Us;var u=t.fn,f=u();t.f|=Mt;var h=t.deps,d=I?.is_fork;if(me!==null){var v;if(d||yn(t,be),h!==null&&be>0)for(h.length=be+me.length,v=0;v<me.length;v++)h[be+v]=me[v];else t.deps=h=me;if(Ao()&&(t.f&Fe)!==0)for(v=be;v<h.length;v++)((g=h[v]).reactions??(g.reactions=[])).push(t)}else!d&&h!==null&&be<h.length&&(yn(t,be),h.length=be);if(an()&&Te!==null&&!Qe&&h!==null&&(t.f&(J|et|ae))===0)for(v=0;v<Te.length;v++)ul(Te[v],t);if(s!==null&&s!==t){if(ei++,s.deps!==null)for(let p=0;p<i;p+=1)s.deps[p].rv=ei;if(e!==null)for(const p of e)p.rv=ei;Te!==null&&(n===null?n=Te:n.push(...Te))}return(t.f&qt)!==0&&(t.f^=qt),f}catch(p){return za(p)}finally{t.f^=Us,me=e,be=i,Te=n,R=s,qe=o,Ki(r),Qe=a,fi=l}}function yu(t,e){let i=e.reactions;if(i!==null){var n=lc.call(i,t);if(n!==-1){var s=i.length-1;s===0?i=e.reactions=null:(i[n]=i[s],i.pop())}}if(i===null&&(e.f&J)!==0&&(me===null||!Xi.call(me,e))){var o=e;(o.f&Fe)!==0&&(o.f^=Fe,o.f&=~vi),Eo(o),lu(o),yn(o,0)}}function yn(t,e){var i=t.deps;if(i!==null)for(var n=e;n<i.length;n++)yu(t,i[n])}function Ji(t){var e=t.f;if((e&Be)===0){V(t,X);var i=E,n=Yn;E=t,Yn=!0;try{(e&(St|ya))!==0?mu(t):qo(t),il(t);var s=fl(t);t.teardown=typeof s=="function"?s:null,t.wv=ll;var o}finally{Yn=n,E=i}}}async function bu(){await Promise.resolve(),Kt()}function sy(){return Vt.ensure().settled()}function K(t){var e=t.f,i=(e&J)!==0;if(R!==null&&!Qe){var n=E!==null&&(E.f&Be)!==0;if(!n&&(qe===null||!Xi.call(qe,t))){var s=R.deps;if((R.f&Us)!==0)t.rv<ei&&(t.rv=ei,me===null&&s!==null&&s[be]===t?be++:me===null?me=[t]:me.push(t));else{(R.deps??(R.deps=[])).push(t);var o=t.reactions;o===null?t.reactions=[R]:Xi.call(o,R)||o.push(R)}}}if(Ut&&$t.has(t))return $t.get(t);if(i){var r=t;if(Ut){var a=r.v;return((r.f&X)===0&&r.reactions!==null||dl(r))&&(a=Do(r)),$t.set(r,a),a}var l=(r.f&Fe)===0&&!Qe&&R!==null&&(Yn||(R.f&Fe)!==0),c=(r.f&Mt)===0;Tn(r)&&(l&&(r.f|=Fe),Va(r)),l&&!c&&(Ua(r),hl(r))}if(Ge?.has(t))return Ge.get(t);if((t.f&qt)!==0)throw t.v;return t.v}function hl(t){if(t.f|=Fe,t.deps!==null)for(const e of t.deps)(e.reactions??(e.reactions=[])).push(t),(e.f&J)!==0&&(e.f&Fe)===0&&(Ua(e),hl(e))}function dl(t){if(t.v===ee)return!0;
1if(t.deps===null)return!1;for(const e of t.deps)if($t.has(e)||(e.f&J)!==0&&dl(e))return!0;return!1}function Ot(t){var e=Qe;try{return Qe=!0,t()}finally{Qe=e}}function wu(t){if(!(typeof t!="object"||!t||t instanceof EventTarget)){if(ci in t)to(t);else if(!Array.isArray(t))for(let e in t){const i=t[e];typeof i=="object"&&i&&ci in i&&to(i)}}}function to(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 n in t)try{to(t[n],e)}catch{}const i=ko(t);if(i!==Object.prototype&&i!==Array.prototype&&i!==Map.prototype&&i!==Set.prototype&&i!==Date.prototype){const n=ma(i);for(let s in n){const o=n[s].get;if(o)try{o.call(t)}catch{}}}}}const _u=["touchstart","touchmove"];function xu(t){return _u.includes(t)}const ti=Symbol("events"),pl=new Set,io=new Set;function ku(t,e,i,n={}){function s(o){if(n.capture||no.call(e,o),!o.cancelBubble)return ln(()=>i?.call(this,o))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?ft(()=>{e.addEventListener(t,s,n)}):e.addEventListener(t,s,n),s}function oy(t,e,i,n,s){var o={capture:n,passive:s},r=ku(t,e,i,o);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&Fo(()=>{e.removeEventListener(t,r,o)})}function ry(t,e,i){(e[ti]??(e[ti]={}))[t]=i}function ay(t){for(var e=0;e<t.length;e++)pl.add(t[e]);for(var i of io)i(t)}let ar=null;function no(t){var e=this,i=e.ownerDocument,n=t.type,s=t.composedPath?.()||[],o=s[0]||t.target;ar=t;var r=0,a=ar===t&&t[ti];if(a){var l=s.indexOf(a);if(l!==-1&&(e===document||e===window)){t[ti]=e;return}var c=s.indexOf(e);if(c===-1)return;l<=c&&(r=l)}if(o=s[r]||t.target,o!==e){xo(t,"currentTarget",{configurable:!0,get(){return o||i}});var u=R,f=E;$e(null),ht(null);try{for(var h,d=[];o!==null;){var v=o.assignedSlot||o.parentNode||o.host||null;try{var g=o[ti]?.[n];g!=null&&(!o.disabled||t.target===o)&&g.call(o,t)}catch(p){h?d.push(p):h=p}if(t.cancelBubble||v===e||v===null)break;o=v}if(h){for(let p of d)queueMicrotask(()=>{throw p});throw h}}finally{t[ti]=e,delete t.currentTarget,$e(u),ht(f)}}}const Cu=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:t=>t});function Pu(t){return Cu?.createHTML(t)??t}function vl(t){var e=Xa("template");return e.innerHTML=Pu(t.replaceAll("<!>","<!---->")),e.content}function Me(t,e){var i=E;i.nodes===null&&(i.nodes={start:t,end:e,a:null,t:null})}function Su(t,e){var i=(e&$c)!==0,n=(e&Nc)!==0,s,o=!t.startsWith("<!>");return()=>{if(C)return Me(O,null),O;s===void 0&&(s=vl(o?t:"<!>"+t),i||(s=ne(s)));var r=n||ja?document.importNode(s,!0):s.cloneNode(!0);if(i){var a=ne(r),l=r.lastChild;Me(a,l)}else Me(r,r);return r}}function Mu(t,e,i="svg"){var n=!t.startsWith("<!>"),s=`<${i}>${n?t:"<!>"+t}</${i}>`,o;return()=>{if(C)return Me(O,null),O;if(!o){var r=vl(s),a=ne(r);o=ne(a)}var l=o.cloneNode(!0);return Me(l,l),l}}function ly(t,e){return Mu(t,e,"svg")}function cy(t=""){if(!C){var e=he(t+"");return Me(e,e),e}var i=O;return i.nodeType!==En?(i.before(i=he()),Y(i)):fs(i),Me(i,i),i}function uy(){if(C)return Me(O,null),O;var t=document.createDocumentFragment(),e=document.createComment(""),i=he();return t.append(e,i),Me(e,i),t}function Ou(t,e){if(C){var i=E;((i.f&Mt)===0||i.nodes.end===null)&&(i.nodes.end=O),Pt();return}t!==null&&t.before(e)}let so=!0;function fy(t,e){var i=e==null?"":typeof e=="object"?`${e}`:e;i!==(t.__t??(t.__t=t.nodeValue))&&(t.__t=i,t.nodeValue=`${i}`)}function ml(t,e){return gl(t,e)}function Eu(t,e){Js(),e.intro=e.intro??!1;const i=e.target,n=C,s=O;try{for(var o=ne(i);o&&(o.nodeType!==ki||o.data!==Po);)o=Ee(o);if(!o)throw mi;Ce(!0),Y(o);const r=gl(t,{...e,anchor:o});return Ce(!1),r}catch(r){if(r instanceof Error&&r.message.split(`
2`).some(a=>a.startsWith("https://svelte.dev/e/")))throw r;return r!==mi&&console.warn("Failed to hydrate: ",r),e.recover===!1&&_c(),Js(),Lo(i),Ce(!1),ml(t,e)}finally{Ce(n),Y(s)}}const Ln=new Map;function gl(t,{target:e,anchor:i,props:n={},events:s,context:o,intro:r=!0,transformError:a}){Js();var l=void 0,c=pu(()=>{var u=i??e.appendChild(he());iu(u,{pending:()=>{}},d=>{Ma({});var v=F;if(o&&(v.c=o),s&&(n.$$events=s),C&&Me(d,null),so=r,l=t(d,n)||{},so=!0,C&&(E.nodes.end=O,O===null||O.nodeType!==ki||O.data!==Mo))throw zn(),mi;Oa()},a);var f=new Set,h=d=>{for(var v=0;v<d.length;v++){var g=d[v];if(!f.has(g)){f.add(g);var p=xu(g);for(const b of[e,document]){var y=Ln.get(b);y===void 0&&(y=new Map,Ln.set(b,y));var w=y.get(g);w===void 0?(b.addEventListener(g,no,{passive:p}),y.set(g,1)):y.set(g,w+1)}}}};return h(cs(pl)),io.add(h),()=>{for(var d of f)for(const p of[e,document]){var v=Ln.get(p),g=v.get(d);--g==0?(p.removeEventListener(d,no),v.delete(d),v.size===0&&Ln.delete(p)):v.set(d,g)}io.delete(h),u!==i&&u.parentNode?.removeChild(u)}});return oo.set(l,c),l}let oo=new WeakMap;function zu(t,e){const i=oo.get(t);return i?(oo.delete(t),i(e)):Promise.resolve()}var je,at,xe,li,Sn,Mn,ls;class hs{constructor(e,i=!0){Ue(this,"anchor");z(this,je,new Map);z(this,at,new Map);z(this,xe,new Map);z(this,li,new Set);z(this,Sn,!0);z(this,Mn,e=>{if(m(this,je).has(e)){var i=m(this,je).get(e),n=m(this,at).get(i);if(n)$o(n),m(this,li).delete(i);else{var s=m(this,xe).get(i);s&&(m(this,at).set(i,s.effect),m(this,xe).delete(i),s.fragment.lastChild.remove(),this.anchor.before(s.fragment),n=s.effect)}for(const[o,r]of m(this,je)){if(m(this,je).delete(o),o===e)break;const a=m(this,xe).get(r);a&&(ge(a.effect),m(this,xe).delete(r))}for(const[o,r]of m(this,at)){if(o===i||m(this,li).has(o))continue;const a=()=>
2{if(Array.from(m(this,je).values()).includes(o)){var c=document.createDocumentFragment();No(r,c),c.append(he()),m(this,xe).set(o,{effect:r,fragment:c})}else ge(r);m(this,li).delete(o),m(this,at).delete(o)};m(this,Sn)||!n?(m(this,li).add(o),ui(r,a,!1)):a()}}});z(this,ls,e=>{m(this,je).delete(e);const i=Array.from(m(this,je).values());for(const[n,s]of m(this,xe))i.includes(n)||(ge(s.effect),m(this,xe).delete(n))});this.anchor=e,S(this,Sn,i)}ensure(e,i){var n=I,s=Qa();if(i&&!m(this,at).has(e)&&!m(this,xe).has(e))if(s){var o=document.createDocumentFragment(),r=he();o.append(r),m(this,xe).set(e,{effect:Ie(()=>i(r)),fragment:o})}else m(this,at).set(e,Ie(()=>i(this.anchor)));if(m(this,je).set(n,e),s){for(const[a,l]of m(this,at))a===e?n.unskip_effect(l):n.skip_effect(l);for(const[a,l]of m(this,xe))a===e?n.unskip_effect(l.effect):n.skip_effect(l.effect);n.oncommit(m(this,Mn)),n.ondiscard(m(this,ls))}else C&&(this.anchor=O),m(this,Mn).call(this,n)}}je=new WeakMap,at=new WeakMap,xe=new WeakMap,li=new WeakMap,Sn=new WeakMap,Mn=new WeakMap,ls=new WeakMap;function hy(t,e,i=!1){var n;C&&(n=O,Pt());var s=new hs(t),o=i?Ct:0;function r(a,l){if(C){var c=Oo(n);if(a!==parseInt(c.substring(1))){var u=gn();Y(u),s.anchor=u,Ce(!1),s.ensure(a,l),Ce(!0);return}}s.ensure(a,l)}Ci(()=>{var a=!1;e((l,c=0)=>{a=!0,r(c,l)}),a||r(-1,null)},o)}const Ru=Symbol("NaN");function dy(t,e,i){C&&Pt();var n=new hs(t),s=!an();Ci(()=>{var o=e();o!==o&&(o=Ru),s&&o!==null&&typeof o=="object"&&(o={}),n.ensure(o,i)})}function py(t,e){return e}function Tu(t,e,i){for(var n=[],s=e.length,o,r=e.length,a=0;a<s;a++){let f=e[a];ui(f,()=>{if(o){if(o.pending.delete(f),o.done.add(f),o.pending.size===0){var h=t.outrogroups;ro(t,cs(o.done)),h.delete(o),h.size===0&&(t.outrogroups=null)}}else r-=1},!1)}if(r===0){var l=n.length===0&&i!==null;if(l){var c=i,u=c.parentNode;Lo(u),u.append(c),t.items.clear()}ro(t,e,!l)}else o={pending:new Set(e),done:new Set},(t.outrogroups??(t.outrogroups=new Set)).add(o)}function ro(t,e,i=!0){var n;if(t.pending.size>0){n=new Set;for(const r of t.pending.values())for(const a of r)n.add(t.items.get(a).e)}for(var s=0;s<e.length;s++){var o=e[s];if(n?.has(o)){o.f|=ct;const r=document.createDocumentFragment();No(o,r)}else ge(e[s],i)}}var lr;function vy(t,e,i,n,s,o=null){var r=t,a=new Map,l=(e&xa)!==0;if(l){var c=t;r=C?Y(ne(c)):c.appendChild(he())}C&&Pt();var u=null,f=To(()=>{var b=i();return _o(b)?b:b==null?[]:cs(b)}),h,d=new Map,v=!0;function g(b){(w.effect.f&Be)===0&&(w.pending.delete(b),w.fallback=u,Du(w,h,r,e,n),u!==null&&(h.length===0?(u.f&ct)===0?$o(u):(u.f^=ct,dn(u,null,r)):ui(u,()=>{u=null})))}function p(b){w.pending.delete(b)}var y=Ci(()=>{h=K(f);var b=h.length;let _=!1;if(C){var M=Oo(r)===So;M!==(b===0)&&(r=gn(),Y(r),Ce(!1),_=!0)}for(var D=new Set,P=I,B=Qa(),H=0;H<b;H+=1){C&&O.nodeType===ki&&O.data===Mo&&(r=O,_=!0,Ce(!1));var W=h[H],Et=n(W,H),ye=v?null:a.get(Et);ye?(ye.v&&Zi(ye.v,W),ye.i&&Zi(ye.i,H),B&&P.unskip_effect(ye.e)):(ye=Iu(a,v?r:lr??(lr=he()),W,Et,H,s,e,i),v||(ye.e.f|=ct),a.set(Et,ye)),D.add(Et)}if(b===0&&o&&!u&&(v?u=Ie(()=>o(r)):(u=Ie(()=>o(lr??(lr=he()))),u.f|=ct)),b>D.size&&mc(),C&&b>0&&Y(gn()),!v)if(d.set(P,D),B){for(const[ms,gs]of a)D.has(ms)||P.skip_effect(gs.e);P.oncommit(g),P.ondiscard(p)}else g(P);_&&Ce(!0),K(f)}),w={effect:y,items:a,pending:d,outrogroups:null,fallback:u};v=!1,C&&(r=O)}function un(t){for(;t!==null&&(t.f&Je)===0;)t=t.next;return t}function Du(t,e,i,n,s){var o=(n&zc)!==0,r=e.length,a=t.items,l=un(t.effect.first),c,u=null,f,h=[],d=[],v,g,p,y;if(o)for(y=0;y<r;y+=1)v=e[y],g=s(v,y),p=a.get(g).e,(p.f&ct)===0&&(p.nodes?.a?.measure(),(f??(f=new Set)).add(p));for(y=0;y<r;y+=1){if(v=e[y],g=s(v,y),p=a.get(g).e,t.outrogroups!==null)for(const W of t.outrogroups)W.pending.delete(p),W.done.delete(p);if((p.f&ct)!==0)if(p.f^=ct,p===l)dn(p,null,i);else{var w=u?u.next:l;p===t.effect.last&&(t.effect.last=p.prev),p.prev&&(p.prev.next=p.next),p.next&&(p.next.prev=p.prev),Rt(t,u,p),Rt(t,p,w),dn(p,w,i),u=p,h=[],d=[],l=un(u.next);continue}if((p.f&Se)!==0&&($o(p),o&&(p.nodes?.a?.unfix(),(f??(f=new Set)).delete(p))),p!==l){if(c!==void 0&&c.has(p)){if(h.length<d.length){var b=d[
20],_;u=b.prev;var M=h[0],D=h[h.length-1];for(_=0;_<h.length;_+=1)dn(h[_],b,i);for(_=0;_<d.length;_+=1)c.delete(d[_]);Rt(t,M.prev,D.next),Rt(t,u,M),Rt(t,D,b),l=b,u=D,y-=1,h=[],d=[]}else c.delete(p),dn(p,l,i),Rt(t,p.prev,p.next),Rt(t,p,u===null?t.effect.first:u.next),Rt(t,u,p),u=p;continue}for(h=[],d=[];l!==null&&l!==p;)(c??(c=new Set)).add(l),d.push(l),l=un(l.next);if(l===null)continue}(p.f&ct)===0&&h.push(p),u=p,l=un(p.next)}if(t.outrogroups!==null){for(const W of t.outrogroups)W.pending.size===0&&(ro(t,cs(W.done)),t.outrogroups?.delete(W));t.outrogroups.size===0&&(t.outrogroups=null)}if(l!==null||c!==void 0){var P=[];if(c!==void 0)for(p of c)(p.f&Se)===0&&P.push(p);for(;l!==null;)(l.f&Se)===0&&l!==t.fallback&&P.push(l),l=un(l.next);var B=P.length;if(B>0){var H=(n&xa)!==0&&r===0?i:null;if(o){for(y=0;y<B;y+=1)P[y].nodes?.a?.measure();for(y=0;y<B;y+=1)P[y].nodes?.a?.fix()}Tu(t,P,H)}}o&&ft(()=>{if(f!==void 0)for(p of f)p.nodes?.a?.apply()})}function Iu(t,e,i,n,s,o,r,a){var l=(r&Oc)!==0?(r&Rc)===0?Io(i,!1,!1):gi(i):null,c=(r&Ec)!==0?gi(s):null;return{v:l,i:c,e:Ie(()=>(o(e,l??i,c??s,a),()=>{t.delete(n)}))}}function dn(t,e,i){if(t.nodes)for(var n=t.nodes.start,s=t.nodes.end,o=e&&(e.f&ct)===0?e.nodes.start:i;n!==null;){var r=Ee(n);if(o.before(n),n===s)return;n=r}}function Rt(t,e,i){e===null?t.effect.first=i:e.next=i,i===null?t.effect.last=e:i.prev=e}function my(t,e,i=!1,n=!1,s=!1,o=!1){var r=t,a="";if(i){var l=t;C&&(r=Y(ne(l)))}tl(()=>{var c=E;if(a===(a=e()??"")){C&&Pt();return}if(i&&!C){c.nodes=null,l.innerHTML=a,a!==""&&Me(ne(l),l.lastChild);return}if(c.nodes!==null&&(nl(c.nodes.start,c.nodes.end),c.nodes=null),a!==""){if(C){O.data;for(var u=Pt(),f=u;u!==null&&(u.nodeType!==ki||u.data!=="");)f=u,u=Ee(u);if(u===null)throw zn(),mi;Me(O,f),r=Y(u);return}var h=n?Vc:s?Uc:void 0,d=Xa(n?"svg":s?"math":"template",h);d.innerHTML=a;var v=n||s?d:d.content;if(Me(ne(v),v.lastChild),n||s)for(;ne(v);)r.before(ne(v));else r.before(v)}})}function gy(t,e,i,n,s){C&&Pt();var o=e.$$slots?.[i],r=!1;o===!0&&(o=e.children,r=!0),o===void 0||o(t,r?()=>n:n)}function yy(t,e,...i){var n=new hs(t);Ci(()=>{const s=e()??null;n.ensure(s,s&&(o=>s(o,...i)))},Ct)}function by(t,e,i){var n;C&&(n=O,Pt());var s=new hs(t);Ci(()=>{var o=e()??null;if(C){var r=Oo(n),a=r===Po,l=o!==null;if(a!==l){var c=gn();Y(c),s.anchor=c,Ce(!1),s.ensure(o,o&&(u=>i(u,o))),Ce(!0);return}}s.ensure(o,o&&(u=>i(u,o)))},Ct)}const Lu=()=>performance.now(),wt={tick:t=>requestAnimationFrame(t),now:()=>Lu(),tasks:new Set};function yl(){const t=wt.now();wt.tasks.forEach(e=>{e.c(t)||(wt.tasks.delete(e),e.f())}),wt.tasks.size!==0&&wt.tick(yl)}function Au(t){let e;return wt.tasks.size===0&&wt.tick(yl),{promise:new Promise(i=>{wt.tasks.add(e={c:t,f:i})}),abort(){wt.tasks.delete(e)}}}function Jn(t,e){ln(()=>{t.dispatchEvent(new CustomEvent(e))})}function Fu(t){if(t==="float")return"cssFloat";if(t==="offset")return"cssOffset";if(t.startsWith("--"))return t;const e=t.split("-");return e.length===1?e[0]:e[0]+e.slice(1).map(i=>i[0].toUpperCase()+i.slice(1)).join("")}function cr(t){const e={},i=t.split(";");for(const n of i){const[s,o]=n.split(":");if(!s||o===void 0)break;const r=Fu(s.trim());e[r]=o.trim()}return e}const Bu=t=>t;function wy(t,e,i,n){var b;var s=(t&Fc)!==0,o=(t&Bc)!==0,r=s&&o,a=(t&qc)!==0,l=r?"both":s?"in":"out",c,u=e.inert,f=e.style.overflow,h,d;function v(){return ln(()=>c??(c=i()(e,n?.()??{},{direction:l})))}var g={is_global:a,in(){if(e.inert=u,!s){d?.abort(),d?.reset?.();return}o||h?.abort(),h=ao(e,v(),d,1,()=>{Jn(e,"introend"),h?.abort(),h=c=void 0,e.style.overflow=f})},out(_){if(!o){_?.(),c=void 0;return}e.inert=!0,d=ao(e,v(),h,0,()=>{Jn(e,"outroend"),_?.()})},stop:()=>{h?.abort(),d?.abort()}},p=E;if(((b=p.nodes).t??(b.t=[])).push(g),s&&so){var y=a;if(!y){for(var w=p.parent;w&&(w.f&Ct)!==0;)for(;(w=w.parent)&&(w.f&St)===0;);y=!w||(w.f&Mt)!==0}y&&el(()=>{Ot(()=>g.in())})}}function ao(t,e,i,n,s){var o=n===1;if(fc(e)){var r,a=!1;return ft(()=>{if(!a){var p=e({direction:o?"in":"out"});r=ao(t,p,i,n,s)}}),{abort:()=>{a=!0,r?.abort()},deactivate:()=>r.deactivate(),reset:()=>r.reset(),t:()=>r.t()}}if(i?.deactivate(),!e?.duration&&!e?.delay)return Jn(t,o?"introstart":"outrostart"),s(),{abort:Le,deactivate:Le,reset:Le,t:()=>n};const{delay:l=0,css:c,tick:u,easing:f=Bu}=e;var h=[];if(o&&i===void 0&&(u&&u(0,1),c)){var d=cr(c(0,1));h.push(d,d)}var v=()=>1-n,g=t.animate(h,{duration:l,fill:"forwards"});return g.onfinish=()=>{g.cancel(),Jn(t,o?"introstart":"outrostart");var p=i?.t()??1-n;i?.abort();var y=n-p,w=e.duration*Math.abs(y),b=[];if(w>0){var _=!1;if(c)for(var M=Math.ceil(w/16.666666666666668),D=0;D<=M;D+=1){var P=p+y*f(D/M),B=cr(c(P,1-P));b.push(B),_||(_=B.overflow==="hidden")}_&&(t.style.overflow="hidden"),v=()=>{var H=g.currentTime;return p+y*f(H/w)},u&&Au(()=>{if(g.playState!=="running")return!1;var H=v();return u(H,1-H),!0})}g=t.animate(b,{duration:w,fill:"forwards"}),g.onfinish=()=>{v=()=>n,u?.(n,1-n),s()}},{abort:()=>{g&&(g.cancel(),g.effect=null,g.onfinish=Le)},deactivate:()=>{s=Le},reset:()=>{n===0&&u?.(1,0)},t:()=>v()}}function _y(t,e){let i=null,n=C;var s;if(C){i=O;for(var o=ne(document.head);o!==null&&(o.nodeType!==ki||o.data!==t);)o=Ee(o);if(o===null)Ce(!1);else{var r=Ee(o);o.remove(),Y(r)}}C||(s=document.head.appendChild(he()));try{Ci(()=>e(s),ba|xi)}finally{n&&(Ce(!0),Y(i))}}function bl(t){var e,i,n="";if(typeof t=="string"||typeof t=="number")n+=t;else if(typeof t=="object")if(Array.isArray(t)){var s=t.length;for(e=0;e<s;e++)t[e]&&(i=bl(t[e]))&&(n&&(n+=" "),n+=i)}else for(i in t)t[i]&&(n&&(n+=" "),n+=i);return n}function qu(){for(var t,e,i=0,n="",s=arguments.length;i<s;i++)(t=arguments[i])&&(e=bl(t))&&(n&&(n+=" "),n+=e);return n}function $u(t){return typeof t=="object"?qu(t):t??""}function Nu(t,e,i){var n=t==null?"":""+t;return e&&(n=n?n+" "+e:e),n===""?null:n}function Vu(t,e){return t==null?null:String(t)}function Uu(t,e,i,n,s,o){var r=t.__className;if(C||r!==i||r===void 0){var a=Nu(i,n);(!C||a!==t.getAttribute("class"))&&(a==null?t.removeAttribute("class"):e?t.className=a:t.setAttribute("class",a)),t.__className=i}return o}function Hu(t,e,i,n){var s=t.__style;if(C||s!==e){var o=Vu(e);(!C||o!==t.getAttribute("style"))&&(o==null?t.removeAttribute("style"):t.style.cssText=o),t.__style=e}return n}const Wu=Symbol("is custom element"),ju=Symbol("is html"),Gu=pc?"link":"LINK";function xy(t){if(C){var e=!1,i=()=>
2{if(!e){if(e=!0,t.hasAttribute("value")){var n=t.value;lo(t,"value",null),t.value=n}if(t.hasAttribute("checked")){var s=t.checked;lo(t,"checked",null),t.checked=s}}};t.__on_r=i,ft(i),Ka()}}function lo(t,e,i,n){var s=Yu(t);C&&(s[e]=t.getAttribute(e),e==="src"||e==="srcset"||e==="href"&&t.nodeName===Gu)||s[e]!==(s[e]=i)&&(e==="loading"&&(t[dc]=i),i==null?t.removeAttribute(e):typeof i!="string"&&Qu(t).includes(e)?t[e]=i:t.setAttribute(e,i))}function Yu(t){return t.__attributes??(t.__attributes={[Wu]:t.nodeName.includes("-"),[ju]:t.namespaceURI===ka})}var ur=new Map;function Qu(t){var e=t.getAttribute("is")||t.nodeName,i=ur.get(e);if(i)return i;ur.set(e,i=[]);for(var n,s=t,o=Element.prototype;o!==s;){n=ma(s);for(var r in n)n[r].set&&i.push(r);s=ko(s)}return i}function ky(t,e,i=e){var n=new WeakSet;fu(t,"input",async s=>{var o=s?t.defaultValue:t.value;if(o=ws(t)?_s(o):o,i(o),I!==null&&n.add(I),await bu(),o!==(o=e())){var r=t.selectionStart,a=t.selectionEnd,l=t.value.length;if(t.value=o??"",a!==null){var c=t.value.length;r===a&&a===l&&c>l?(t.selectionStart=c,t.selectionEnd=c):(t.selectionStart=r,t.selectionEnd=Math.min(a,c))}}}),(C&&t.defaultValue!==t.value||Ot(e)==null&&t.value)&&(i(ws(t)?_s(t.value):t.value),I!==null&&n.add(I)),Bo(()=>{var s=e();if(t===document.activeElement){var o=I;if(n.has(o))return}ws(t)&&s===_s(t.value)||t.type==="date"&&!s&&!t.value||s!==t.value&&(t.value=s??"")})}function ws(t){var e=t.type;return e==="number"||e==="range"}function _s(t){return t===""?null:+t}function fr(t,e){return t===e||t?.[ci]===e}function Cy(t={},e,i,n){var s=F.r,o=E;return el(()=>{var r,a;return Bo(()=>{r=a,a=[],Ot(()=>{t!==i(...a)&&(e(t,...a),r&&fr(i(...r),t)&&e(null,...r))})}),()=>{let l=o;for(;l!==s&&l.parent!==null&&l.parent.f&Vs;)l=l.parent;const c=()=>{a&&fr(i(...a),t)&&e(null,...a)},u=l.teardown;l.teardown=()=>{c(),u?.()}}}),t}function Xu(t=!1){const e=F,i=e.l.u;if(!i)return;let n=()=>wu(e.s);if(t){let s=0,o={};const r=Rn(()=>{let a=!1;const l=e.s;for(const c in l)l[c]!==o[c]&&(o[c]=l[c],a=!0);return a&&s++,s});n=()=>K(r)}i.b.length&&du(()=>{hr(e,n),$s(i.b)}),eo(()=>{const s=Ot(()=>i.m.map(hc));return()=>{for(const o of s)typeof o=="function"&&o()}}),i.a.length&&eo(()=>{hr(e,n),$s(i.a)})}function hr(t,e){if(t.l.s)for(const i of t.l.s)K(i);e()}function fn(t,e,i,n){var s=!rn||(i&Dc)!==0,o=(i&Lc)!==0,r=(i&Ac)!==0,a=n,l=!0,c=()=>(l&&(l=!1,a=r?Ot(n):n),a);let u;if(o){var f=ci in t||_a in t;u=Li(t,e)?.set??(f&&e in t?b=>t[e]=b:void 0)}var h,d=!1;o?[h,d]=Kc(()=>t[e]):h=t[e],h===void 0&&n!==void 0&&(h=c(),u&&(s&&kc(),u(h)));var v;if(s?v=()=>{var b=t[e];return b===void 0?c():(l=!0,b)}:v=()=>{var b=t[e];return b!==void 0&&(a=void 0),b===void 0?a:b},s&&(i&Ic)===0)return v;if(u){var g=t.$$legacy;return(function(b,_){return arguments.length>0?((!s||!_||g||d)&&u(_?v():b),b):v()})}var p=!1,y=((i&Tc)!==0?Rn:To)(()=>(p=!1,v()));o&&K(y);var w=E;return(function(b,_){if(arguments.length>0){const M=_?K(y):s&&o?Ri(b):b;return lt(y,M),p=!0,a!==void 0&&(a=M),b}return Ut&&p||(w.f&Be)!==0?y.v:K(y)})}function Py(t){return class extends Ku{constructor(e){super({component:t,...e})}}}var bt,De;class Ku{constructor(e){z(this,bt);z(this,De);var i=new Map,n=(o,r)=>{var a=Io(r,!1,!1);return i.set(o,a),a};const s=new Proxy({...e.props||{},$$events:{}},{get(o,r){return K(i.get(r)??n(r,Reflect.get(o,r)))},has(o,r){return r===_a?!0:(K(i.get(r)??n(r,Reflect.get(o,r))),Reflect.has(o,r))},set(o,r,a){return lt(i.get(r)??n(r,a),a),Reflect.set(o,r,a)}});S(this,De,(e.hydrate?Eu:ml)(e.component,{target:e.target,anchor:e.anchor,props:s,context:e.context,intro:e.intro??!1,recover:e.recover,transformError:e.transformError})),(!e?.props?.$$host||e.sync===!1)&&Kt(),S(this,bt,s.$$events);for(const o of Object.keys(m(this,De)))o==="$set"||o==="$destroy"||o==="$on"||xo(this,o,{get(){return m(this,De)[o]},set(r){m(this,De)[o]=r},enumerable:!0});m(this,De).$set=o=>{Object.assign(s,o)},m(this,De).$destroy=()=>{zu(m(this,De))}}$set(e){m(this,De).$set(e)}$on(e,i){m(this,bt)[e]=m(this,bt)[e]||[];const n=(...s)=>i.call(this,...s);return m(this,bt)[e].push(n),()=>{m(this,bt)[e]=m(this,bt)[e].filter(s=>s!==n)}}$destroy(){m(this,De).$destroy()}}bt=new WeakMap,De=new WeakMap;function wl(t){F===null&&us(),rn&&F.l!==null?_l(F).m.push(t):eo(()=>{const e=Ot(t);if(typeof e=="function")return e})}function Zu(t){F===null&&us(),wl(()=>()=>Ot(t))}function Ju(t,e,{bubbles:i=!1,cancelable:n=!1}={}){return new CustomEvent(t,{detail:e,bubbles:i,cancelable:n})}function ef(){const t=F;return t===null&&us(),(e,i,n)=>{const s=t.s.$$events?.[e];if(s){const o=_o(s)?s.slice():[s],r=Ju(e,i,n);for(const a of o)a.call(t.x,r);return!r.defaultPrevented}return!0}}function tf(t){F===null&&us(),F.l===null&&xc(),_l(F).a.push(t)}function _l(t){var e=t.l;return e.u??(e.u={a:[],b:[],m:[]})}const nf="5";var va;typeof window<"u"&&((va=window.__svelte??(window.__svelte={})).v??(va.v=new Set)).add(nf);jc();const ii="generated",sf="pointerdown",of="pointerup",co="pointerleave",rf="pointerout",yi="pointermove",af="touchstart",dr="touchend",lf="touchmove",cf="touchcancel",uf="resize",ff="visibilitychange",Ne="tsParticles - Error",Ft=100,Q=.5,se=1e3,ie={x:0,y:0,z:0},An={a:1,b:0,c:0,d:1},en="random",Qn="mid",oe=2,hf=Math.PI*oe,xs=60,xl="true",pr="false",ks="canvas",vr=0,_t=2,mr=4,df=1,gr=1,yr=1,pf=4,kl=1,Xn=255,ni=360,uo=100,fo=100,br=0,ho=0,vf=60,mf=0,es=.25,wr=Q+es,_r=0,gf=1,yf=0,bf=0,wf=1,Vo=1,_f=1,xr=1,ts=0,Cl=1,xf=0,kf=120,Cf=0,Pf=0,Sf=1e4,Mf=0,Of=1,is=0,Pl=1,Ef=1,zf=0,kr=1,Rf=0,Tf=0,Cr=-es,Pr=1.5,Sr=0,Df=1,If=0,po=0,Sl=1,Lf=1,ns=1,Af=500,Mr=50,Ff=0,vo=1,Ml=0,Or=1,Bf=0,jt=255,Cs=3,Ps=6,qf=1,$f=1,Nf=0,Vf=0,Uf=0,Hf=0;var te;(function(t){t.bottom="bottom",t.bottomLeft="bottom-left",t.bottomRight="bottom-right",t.left="left",t.n
vendor: 146,685 bytes, line 2
2one="none",t.right="right",t.top="top",t.topLeft="top-left",t.topRight="top-right",t.outside="outside",t.inside="inside"})(te||(te={}));function Ol(t){return typeof t=="boolean"}function Ht(t){return typeof t=="string"}function Wt(t){return typeof t=="number"}function Ti(t){return typeof t=="object"&&t!==null}function dt(t){return Array.isArray(t)}function x(t){return t==null}class ke{constructor(e,i,n){if(this._updateFromAngle=(s,o)=>{this.x=Math.cos(s)*o,this.y=Math.sin(s)*o},!Wt(e)&&e){this.x=e.x,this.y=e.y;const s=e;this.z=s.z?s.z:ie.z}else if(e!==void 0&&i!==void 0)this.x=e,this.y=i,this.z=n??ie.z;else throw new Error(`${Ne} Vector3d not initialized correctly`)}static get origin(){return ke.create(ie.x,ie.y,ie.z)}get angle(){return Math.atan2(this.y,this.x)}set angle(e){this._updateFromAngle(e,this.length)}get length(){return Math.sqrt(this.getLengthSq())}set length(e){this._updateFromAngle(this.angle,e)}static clone(e){return ke.create(e.x,e.y,e.z)}static create(e,i,n){return new ke(e,i,n)}add(e){return ke.create(this.x+e.x,this.y+e.y,this.z+e.z)}addTo(e){this.x+=e.x,this.y+=e.y,this.z+=e.z}copy(){return ke.clone(this)}distanceTo(e){return this.sub(e).length}distanceToSq(e){return this.sub(e).getLengthSq()}div(e){return ke.create(this.x/e,this.y/e,this.z/e)}divTo(e){this.x/=e,this.y/=e,this.z/=e}getLengthSq(){return this.x**_t+this.y**_t}mult(e){return ke.create(this.x*e,this.y*e,this.z*e)}multTo(e){this.x*=e,this.y*=e,this.z*=e}normalize(){const e=this.length;e!=is&&this.multTo(kl/e)}rotate(e){return ke.create(this.x*Math.cos(e)-this.y*Math.sin(e),this.x*Math.sin(e)+this.y*Math.cos(e),ie.z)}setTo(e){this.x=e.x,this.y=e.y;const i=e;this.z=i.z?i.z:ie.z}sub(e){return ke.create(this.x-e.x,this.y-e.y,this.z-e.z)}subFrom(e){this.x-=e.x,this.y-=e.y,this.z-=e.z}}class Z extends ke{constructor(e,i){super(e,i,ie.z)}static get origin(){return Z.create(ie.x,ie.y)}static clone(e){return Z.create(e.x,e.y)}static create(e,i){return new Z(e,i)}}let Wf=Math.random;const El={nextFrame:t=>requestAnimationFrame(t),cancel:t=>cancelAnimationFrame(t)};function A(){return Ve(Wf(),0,1-Number.EPSILON)}function jf(t){return El.nextFrame(t)}function Gf(t){El.cancel(t)}function Ve(t,e,i){return Math.min(Math.max(t,e),i)}function Ss(t,e,i,n){return Math.floor((t*i+e*n)/(i+n))}function Pe(t){const e=ut(t),i=0;let n=ds(t);return e===n&&(n=i),A()*(e-n)+n}function k(t){return Wt(t)?t:Pe(t)}function ds(t){return Wt(t)?t:t.min}function ut(t){return Wt(t)?t:t.max}function L(t,e){if(t===e||e===void 0&&Wt(t))return t;const i=ds(t),n=ut(t);return e!==void 0?{min:Math.min(i,e),max:Math.max(n,e)}:L(i,n)}function de(t,e){const i=t.x-e.x,n=t.y-e.y,s=2;return{dx:i,dy:n,distance:Math.sqrt(i**s+n**s)}}function Oe(t,e){return de(t,e).distance}function Nt(t){return t*Math.PI/180}function Yf(t,e,i){if(Wt(t))return Nt(t);switch(t){case te.top:return-Math.PI*Q;case te.topRight:return-Math.PI*es;case te.right:return mf;case te.bottomRight:return Math.PI*es;case te.bottom:return Math.PI*Q;case te.bottomLeft:return Math.PI*wr;case te.left:return Math.PI;case te.topLeft:return-Math.PI*wr;case te.inside:return Math.atan2(i.y-e.y,i.x-e.x);case te.outside:return Math.atan2(e.y-i.y,e.x-i.x);default:return A()*hf}}function Qf(t){const e=Z.origin;return e.length=1,e.angle=t,e}function Er(t,e,i,n){return Z.create(t.x*(i-n)/(i+n)+e.x*oe*n/(i+n),t.y)}function Xf(t){return{x:t.position?.x??A()*t.size.width,y:t.position?.y??A()*t.size.height}}function zl(t){return t?t.endsWith("%")?parseFloat(t)/Ft:parseFloat(t):1}var si;(function(t){t.auto="auto",t.increase="increase",t.decrease="decrease",t.random="random"})(si||(si={}));var j;(function(t){t.increasing="increasing",t.decreasing="decreasing"})(j||(j={}));var bi;(function(t){t.none="none",t.max="max",t.min="min"})(bi||(bi={}));var T;(function(t){t.bottom="bottom",t.left="left",t.right="right",t.top="top"})(T||(T={}));var tn;(function(t){t.precise="precise",t.percent="percent"})(tn||(tn={}));var Ai;(function(t){t.max="max",t.min="min",t.random="random"})(Ai||(Ai={}));const Kf={debug:console.debug,error:console.error,info:console.info,log:console.log,verbose:console.log,warning:console.warn};function wi(){return Kf}function Zf(t){const e=new Map;return(...i)=>{const n=JSON.stringify(i);if(e.has(n))return e.get(n);const s=t(...i);return e.set(n,s),s}}function zr(t){const e={bounced:!1},{pSide:i,pOtherSide:n,rectSide:s,rectOtherSide:o,velocity:r,factor:a}=t;return n.min<o.min||n.min>o.max||n.max<o.min||n.max>o.max||(i.max>=s.min&&i.max<=(s.max+s.min)*Q&&r>_r||i.min<=s.max&&i.min>(s.max+s.min)*Q&&r<_r)&&(e.velocity=r*-a,e.bounced=!0),e}function Jf(t,e){const i=ze(e,n=>t.matches(n));return dt(i)?i.some(n=>n):i}function _i(){return typeof window>"u"||!window||typeof window.document>"u"||!window.document}function eh(){return!_i()&&typeof matchMedia<"u"}function Rl(t){if(eh())return matchMedia(t)}function th(t){if(!(_i()||typeof IntersectionObserver>"u"))return new IntersectionObserver(t)}function ih(t){if(!(_i()||typeof MutationObserver>"u"))return new MutationObserver(t)}function U(t,e){return t===e||dt(e)&&e.indexOf(t)>-1}async function Rr(t,e){try{await document.fonts.load(`${e??"400"} 36px '${t??"Verdana"}'`)}catch{}}function nh(t){return Math.floor(A()*t.length)}function ps(t,e,i=!0){return t[e!==void 0&&i?e%t.length:nh(t)]}function Uo(t,e,i,n,s){return sh(Dn(t,n??0),e,i,s)}function sh(t,e,i,n){let s=!0;return(!n||n===T.bottom)&&(s=t.top<e.height+i.x),s&&(!n||n===T.left)&&(s=t.right>i.x),s&&(!n||n===T.right)&&(s=t.left<e.width+i.y),s&&(!n||n===T.top)&&(s=t.bottom>i.y),s}function Dn(t,e){return{bottom:t.y+e,left:t.x-e,right:t.x+e,top:t.y-e}}function le(t,...e){for(const i of e){if(i==null)continue;if(!Ti(i)){t=i;continue}const n=Array.isArray(i);n&&(Ti(t)||!t||!Array.isArray(t))?t=[]:!n&&(Ti(t)||!t||Array.isArray(t))&&(t={});for(const s in i){if(s==="__proto__")continue;const o=i,r=o[s],a=t;a[s]=Ti(r)&&Array.isArray(r)?r.map(l=>le(a[s],l)):le(a[s],r)}}return t}function Ho(t,e){return!!Il(e,i=>i.enable&&U(t,i.mode))}function Wo(t,e,i){ze(e,n=>{const s=n.mode;n.enable&&U(t,s)&&oh(n,i)})}function oh(t,e){const i=t.selectors;ze(i,n=>{e(n,t)})}function Tl(t,e){if(!(!e||!t))return Il(t,i=>Jf(e,i.selectors))}function mo(t){return{position:t.getPosition(),radius:t.getRadius(),mass:t.getMass(),velocity:t.velocity,factor:Z.create(k(t.options.bounce.horizontal.value),k(t.options.bounce.vertical.value))}}function Dl(t,e){const{x:i,y:n}=t.velocity.sub(e.velocity),[s,o]=[t.position,e.position],{dx:r,dy:a}=de(o,s);if(i*r+n*a<0)return;const c=-Math.atan2(a,r),u=t.mass,f=e.mass,h=t.velocity.rotate(c),d=e.velocity.rotate(c),v=Er(h,d,u,f),g=Er(d,h,u,f),p=v.rotate(-c),y=g.rotate(-c);t.velocity.x=p.x*t.factor.x,t.velocity.y=p.y*t.factor.y,e.velocity.x=y.x*e.factor.x,e.velocity.y=y.y*e.factor.y}function rh(t,e){const i=t.getPosition(),n=t.getRadius(),s=Dn(i,n),o=t.options.bounce,r=zr({pSide:{min:s.left,max:s.right},pOtherSide:{min:s.top,max:s.bottom},rectSide:{min:e.left,max:e.right},rectOtherSide:{min:e.top,max:e.bottom},velocity:t.velocity.x,factor:k(o.horizontal.value)});r.bounced&&(r.velocity!==void 0&&(t.velocity.x=r.velocity),r.position!==void 0&&(t.position.x=r.position));const a=zr({pSide:{min:s.top,max:s.bottom},pOtherSide:{min:s.left,max:s.right},rectSide:{min:e.top,max:e.bottom},rectOtherSide:{min:e.left,max:e.right},velocity:t.velocity.y,factor:k(o.vertical.value)});a.bounced&&(a.velocity!==void 0&&(t.velocity.y=a.velocity),a.position!==void 0&&(t.position.y=a.position))}function ze(t,e){return dt(t)?t.map((n,s)=>e(n,s)):e(t,0)}function Ae(t,e,i){return dt(t)?ps(t,e,i):t}function Il(t,e){return dt(t)?t.find((n,s)=>e(n,s)):e(t,0)?t:void 0}function Ll(t,e){const i=t.value,n=t.animation,s={delayTime:k(n.delay)*se,enable:n.enable,value:k(t.value)*e,max:ut(i)*e,min:ds(i)*e,loops:0,maxLoops:k(n.count),time:0},o=1;if(n.enable){switch(s.decay=o-k(n.decay),n.mode){case si.increase:s.status=j.increasing;break;case si.decrease:s.status=j.decreasing;break;case si.random:s.status=A()>=Q?j.increasing:j.decreasing;break}const r=n.mode===si.auto;switch(n.startValue){case Ai.min:s.value=s.min,r&&(s.status=j.increasing);break;case Ai.max:s.value=s.max,r&&(s.status=j.decreasing);break;case Ai.random:default:s.value=Pe(s),r&&(s.status=A()>=Q?j.increasing:j.decreasing);break}}return s.initialValue=s.value,s}function ah(t,e){if(!(t.mode===tn.percent)){const{mode:s,...o}=t;return o}return"x"in t?{x:t.x/Ft*e.width,y:t.y/Ft*e.height}:{width:t.width/Ft*e.width,height:t.height/Ft*e.height}}function Al(t,e){return ah(t,e)}function lh(t,e,i,n,s){switch(e){case bi.max:i>=s&&t.destroy();break;case bi.min:i<=n&&t.destroy();break}}function jo(t,e,i,n,s){if(t.destroyed||!e||!e.enable||(e.maxLoops??0)>0&&(e.loops??0)>(e.maxLoops??0))return;const u=(e.velocity??0)*s.factor,f=e.min,h=e.max,d=e.decay??1;if(e.time||(e.time=0),(e.delayTime??0)>0&&e.time<(e.delayTime??0)&&(e.time+=s.value),!((e.delayTime??0)>0&&e.time<(e.delayTime??0))){switch(e.status){case j.increasing:e.value>=h?(i?e.status=j.decreasing:e.value-=h,e.loops||(e.loops=0),e.loops++):e.value+=u;break;case j.decreasing:e.value<=f?(i?e.status=j.increasing:e.value+=h,e.loops||(e.loops=0),e.loops++):e.value-=u}e.velocity&&d!==1&&(e.velocity*=d),lh(t,n,e.value,f,h),t.destroyed||(e.value=Ve(e.value,f,h))}}function ch(t){const e=document.createElement("div").style;if(!t)return e;for(const i in t){const n=t[i];if(!Object.prototype.hasOwnProperty.call(t,i)||x(n))continue;const s=t.getPropertyValue?.(n);if(!s)continue;const o=t.getPropertyPriority?.(n);o?e.setProperty?.(n,s,o):e.setProperty?.(n,s)}return e}function uh(t){const e=document.createElement("div").style,i=10,n={width:"100%",height:"100%",margin:"0",padding:"0",borderWidth:"0",position:"fixed",zIndex:t.toString(i),"z-index":t.toString(i),top:"0",left:"0"};for(const s in n){const o=n[s];e.setProperty(s,o)}return e}const fh=Zf(uh);var go;(function(t){t.darken="darken",t.enlighten="enlighten"})(go||(go={}));function hh(t,e){if(e){for(const i of t.colorManagers.values())if(e.startsWith(i.stringPrefix))return i.parseString(e)}}function Ke(t,e,i,n=!0){if(!e)return;const s=Ht(e)?{value:e}:e;if(Ht(s.value))return Fl(t,s.value,i,n);if(dt(s.value))return Ke(t,{value:ps(s.value,i,n)});for(const o of t.colorManagers.values()){const r=o.handleRangeColor(s);if(r)return r}}function Fl(t,e,i,n=!0){if(!e)return;const s=Ht(e)?{value:e}:e;if(Ht(s.value))return s.value===en?ql():dh(t,s.value);if(dt(s.value))return Fl(t,{value:ps(s.value,i,n)});for(const o of t.colorManagers.values()){const r=o.handleColor(s);if(r)return r}}function bn(t,e,i,n=!0){const s=Ke(t,e,i,n);return s?Bl(s):void 0}function Bl(t){const e=t.r/Xn,i=t.g/Xn,n=t.b/Xn,s=Math.max(e,i,n),o=Math.min(e,i,n),r={h:br,l:(s+o)*Q,s:ho};return s!==o&&(r.s=r.l<Q?(s-o)/(s+o):(s-o)/(oe-s-o),r.h=e===s?(i-n)/(s-o):r.h=i===s?oe+(n-e)/(s-o):oe*oe+(e-i)/(s-o)),r.l*=fo,r.s*=uo,r.h*=vf,r.h<br&&(r.h+=ni),r.h>=ni&&(r.h-=ni),r}function dh(t,e){return hh(t,e)}function nn(t){const e=(t.h%ni+ni)%ni,i=Math.max(ho,Math.min(uo,t.s)),n=Math.max(Bf,Math.min(fo,t.l)),s=e/ni,o=i/uo,r=n/fo;if(i===ho){const v=Math.round(r*jt);return{r:v,g:v,b:v}}const a=(v,g,p)=>{if(p<0&&p++,p>1&&p--,p*Ps<1)return v+(g-v)*Ps*p;if(p*oe<1)return g;if(p*Cs<1*oe){const b=oe/Cs;return v+(g-v)*(b-p)*Ps}return v},l=r<Q?r*(qf+o):r+o-r*o,c=oe*r-l,u=$f/Cs,f=Math.min(jt,jt*a(c,l,s+u)),h=Math.min(jt,jt*a(c,l,s)),d=Math.min(jt,jt*a(c,l,s-u));return{r:Math.round(f),g:Math.round(h),b:Math.round(d)}}function ph(t){const e=nn(t);return{a:t.a,b:e.b,g:e.g,r:e.r}}function ql(t){const e=Nf,i=Xn+vo;return{b:Math.floor(Pe(L(e,i))),g:Math.floor(Pe(L(e,i))),r:Math.floor(Pe(L(e,i)))}}function kt(t,e){return`rgba(${t.r}, ${t.g}, ${t.b}, ${e??Vo})`}function wn(t,e){return`hsla(${t.h}, ${t.s}%, ${t.l}%, ${e??Vo})`}function Go(t,e,i,n){let s=t,o=e;return s.r===void 0&&(s=nn(t)),o.r===void 0&&(o=nn(e)),{b:Ss(s.b,o.b,i,n),g:Ss(s.g,o.g,i,n),r:Ss(s.r,o.r,i,n)}}function yo(t,e,i){if(i===en)return ql();if(i===Qn){const n=t.getFillColor()??t.getStrokeColor(),s=e?.getFillColor()??e?.getStrokeColor();if(n&&s&&e)return Go(n,s,t.getRadius(),e.getRadius());{const o=n??s;if(o)return nn(o)}}else return i}function $l(t,e,i,n){const s=Ht(e)?e:e.value;return s===en?n?Ke(t,{value:s}):i?en:Qn:s===Qn?Qn:Ke(t,{value:s})}function Tr(t){return t!==void 0?{h:t.h.value,s:t.s.value,l:t.l.value}:void 0}function Nl(t,e,i){const n={h:{enable:!1,value:t.h},s:{enable:!1,value:t.s},l:{enable:!1,value:t.l}};return e&&(Ms(n.h,e.h,i),Ms(n.s,e.s,i),Ms(n.l,e.l,i)),n}function Ms(t,e,i){t.enable=e.enable,t.enable?(t.velocity=k(e.speed)/Ft*i,t.decay=Pl-k(e.decay),t.status=j.increasing,t.loops=Uf,t.maxLoops=k(e.count),t.time=Hf,t.delayTime=k(e.delay)*se,e.sync||(t.velocity*=A(),t.value*=A()),t.initialValue=t.value,t.offset=L(e.offset)):t.velocity=Vf}function Os(t,e,i,n){if(!t||!t.enable||(t.maxLoops??0)>0&&(t.loops??0)>(t.maxLoops??0)||(t.time||(t.time=0),(t.delayTime??0)>0&&t.time<(t.delayTime??0)&&(t.time+=n.value),(t.delayTime??0)>0&&t.time<(t.delayTime??0)))return;const u=t.offset?Pe(t.offset):0,f=(t.velocity??0)*n.factor+u*3.6,h=t.decay??1,d=ut(e),v=ds(e);!i||t.status===j.increasing?(t.value+=f,t.value>d&&(t.loops||(t.loops=0),t.loops++,i?t.status=j.decreasing:t.value-=d)):(t.value-=f,t.value<0&&(t.loops||(t.loops=0),t.loops++,t.status=j.increasing)),t.velocity&&h!==1&&(t.velocity*=h),t.value=Ve(t.value,v,d)}function Vl(t,e){if(!t)return;const{h:i,s:n,l:s}=t,o={h:{min:0,max:360},s:{min:0,max:100},l:{min:0,max:100}};i&&Os(i,o.h,!1,e),n&&Os(n,o.s,!0,e),s&&Os(s,o.l,!0,e)}function mn(t,e,i){t.beginPath(),t.moveTo(e.x,e.y),t.lineTo(i.x,i.y),t.closePath()}function vh(t,e,i){t.fillStyle=i??"rgba(0,0,0,0)",t.fillRect(ie.x,ie.y,e.width,e.height)}function mh(t,e,i,n){i&&(t.globalAlpha=n,t.drawImage(i,ie.x,ie.y,e.width,e.height),t.globalAlpha=1)}function Es(t,e){t.clearRect(ie.x,ie.y,e.width,e.height)}function gh(t){const{container:e,context:i,particle:n,delta:s,colorStyles:o,backgroundMask:r,composite:a,radius:l,opacity:c,shadow:u,transform:f}=t,h=n.getPosition(),d=n.rotation+(n.pathRotation?n.velocity.angle:Ff),v={sin:Math.sin(d),cos:Math.cos(d)},g=!!d,p={a:v.cos*(f.a??An.a),b:g?v.sin*(f.b??vo):f.b??An.b,c:g?-v.sin*(f.c??vo):f.c??An.c,d:v.cos*(f.d??An.d)};i.setTransform(p.a,p.b,p.c,p.d,h.x,h.y),r&&(i.globalCompositeOperation=a);const y=n.shadowColor;u.enable&&y&&(i.shadowBlur=u.blur,i.shadowColor=kt(y),i.shadowOffsetX=u.offset.x,i.shadowOffsetY=u.offset.y),o.fill&&(i.fillStyle=o.fill);const w=n.strokeWidth??Ml;i.lineWidth=w,o.stroke&&(i.strokeStyle=o.stroke);const b={container:e,context:i,particle:n,radius:l,opacity:c,delta:s,transformData:p,strokeWidth:w};bh(b),wh(b),yh(b),i.globalCompositeOperation="source-over",i.resetTransform()}function yh(t){const{container:e,context:i,particle:n,radius:s,opacity:o,delta:r,transformData:a}=t;if(!n.effect)return;const l=e.effectDrawers.get(n.effect);l&&l.draw({context:i,particle:n,radius:s,opacity:o,delta:r,pixelRatio:e.retina.pixelRatio,transformData:{...a}})}function bh(t){const{container:e,context:i,particle:n,radius:s,opacity:o,delta:r,strokeWidth:a,transformData:l}=t;if(!n.shape)return;const c=e.shapeDrawers.get(n.shape);c&&(i.beginPath(),c.draw({context:i,particle:n,radius:s,opacity:o,delta:r,pixelRatio:e.retina.pixelRatio,transformData:{...l}}),n.shapeClose&&i.closePath(),a>Ml&&i.stroke(),n.shapeFill&&i.fill())}function wh(t){const{container:e,context:i,particle:n,radius:s,opacity:o,delta:r,transformData:a}=t;if(!n.shape)return;const l=e.shapeDrawers.get(n.shape);l?.afterDraw&&l.afterDraw({context:i,particle:n,radius:s,opacity:o,delta:r,pixelRatio:e.retina.pixelRatio,transformData:{...a}})}function _h(t,e,i){e.draw&&e.draw(t,i)}function xh(t,e,i,n){e.drawParticle&&e.drawParticle(t,i,n)}function kh(t,e,i){return{h:t.h,s:t.s,l:t.l+(e===go.darken?-Or:Or)*i}}function Ch(t,e,i){const n=e[i];n!==void 0&&(t[i]=(t[i]??gf)*n)}function Dr(t,e,i=!1){if(!e)return;const n=t;if(!n)return;const s=n.style;if(!s)return;const o=new Set;for(const r in s)Object.prototype.hasOwnProperty.call(s,r)&&o.add(s[r]);for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&o.add(e[r]);for(const r of o){const a=e.getPropertyValue(r);a?s.setProperty(r,a,i?"important":""):s.removeProperty(r)}}class Ph{constructor(e,i){this.container=e,this._applyPostDrawUpdaters=o=>{for(const r of this._postDrawUpdaters)r.afterDraw?.(o)},this._applyPreDrawUpdaters=(o,r,a,l,c,u)=>{for(const f of this._preDrawUpdaters){if(f.getColorStyles){const{fill:h,stroke:d}=f.getColorStyles(r,o,a,l);h&&(c.fill=h),d&&(c.stroke=d)}if(f.getTransformValues){const h=f.getTransformValues(r);for(const d in h)Ch(u,h,d)}f.beforeDraw?.(r)}},this._applyResizePlugins=()=>{for(const o of this._resizePlugins)o.resize?.()},this._getPluginParticleColors=o=>{let r,a;for(const l of this._colorPlugins)if(!r&&l.particleFillColor&&(r=bn(this._engine,l.particleFillColor(o))),!a&&l.particleStrokeColor&&(a=bn(this._engine,l.particleStrokeColor(o))),r&&a)break;return[r,a]},this._initCover=async()=>{const o=this.container.actualOptions,r=o.backgroundMask.cover,a=r.color;if(a){const l=Ke(this._engine,a);if(l){const c={...l,a:r.opacity};this._coverColorStyle=kt(c,c.a)}}else await new Promise((l,c)=>{if(!r.image)return;const u=document.createElement("img");u.addEventListener("load",()=>{this._coverImage={image:u,opacity:r.opacity},l()}),u.addEventListener("error",f=>{c(f.error)}),u.src=r.image})},this._initStyle=()=>{const o=this.element,r=this.container.actualOptions;if(o){this._fullScreen?this._setFullScreenStyle():this._resetOriginalStyle();for(const a in r.style){if(!a||!r.style||!Object.prototype.hasOwnProperty.call(r.style,a))continue;const l=r.style[a];l&&o.style.setProperty(a,l,"important")}}},this._initTrail=async()=>{const o=this.container.actualOptions,r=o.particles.move.trail,a=r.fill;if(!r.enable)return;const l=kl/r.length;if(a.color){const c=Ke(this._engine,a.color);if(!c)return;this._trailFill={color:{...c},opacity:l}}else await new Promise((c,u)=>{if(!a.image)return;const f=document.createElement("img");f.addEventListener("load",()=>{this._trailFill={image:f,opacity:l},c()}),f.addEventListener("error",h=>{u(h.error)}),f.src=a.image})},this._paintBase=o=>{this.draw(r=>vh(r,this.size,o))},this._paintImage=(o,r)=>{this.draw(a=>mh(a,this.size,o,r))},this._repairStyle=()=>{const o=this.element;if(!o)return;this._safeMutationObserver(a=>a.disconnect()),this._initStyle(),this.initBackground();const r=this._pointerEvents;o.style.pointerEvents=r,o.setAttribute("pointer-events",r),this._safeMutationObserver(a=>{!o||!(o instanceof Node)||a.observe(o,{attributes:!0})})},this._resetOriginalStyle=()=>{const o=this.element,r=this._originalStyle;!o||!r||Dr(o,r,!0)},this._safeMutationObserver=o=>{this._mutationObserver&&o(this._mutationObserver)},this._setFullScreenStyle=()=>{const o=this.element;o&&Dr(o,fh(this.container.actualOptions.fullScreen.zIndex),!0)},this._engine=i,this._standardSize={height:0,width:0};const n=e.retina.pixelRatio,s=this._standardSize;this.size={height:s.height*n,width:s.width*n},this._context=null,this._generated=!1,this._preDrawUpdaters=[],this._postDrawUpdaters=[],this._resizePlugins=[],this._colorPlugins=[],this._pointerEvents="none"}get _fullScreen(){return this.container.actualOptions.fullScreen.enable}clear(){const e=this.container.actualOptions,i=e.particles.move.trail,n=this._trailFill;e.backgroundMask.enable?this.paint():i.enable&&i.length>bf&&n?n.color?this._paintBase(kt(n.color,n.opacity)):n.image&&this._paintImage(n.image,n.opacity):e.clear&&this.draw(s=>{Es(s,this.size)})}destroy(){this.stop(),this._generated?(this.element?.remove(),this.element=void 0):this._resetOriginalStyle(),this._preDrawUpdaters=[],this._postDrawUpdaters=[],this._resizePlugins=[],this._colorPlugins=[]}draw(e){const i=this._context;if(i)return e(i)}drawAsync(e){const i=this._context;if(i)return e(i)}drawParticle(e,i){if(e.spawning||e.destroyed)return;const n=e.getRadius();if(n<=yf)return;const s=e.getFillColor(),o=e.getStrokeColor()??s;let[r,a]=this._getPluginParticleColors(e);r||(r=s),a||(a=o),!(!r&&!a)&&this.draw(l=>{const c=this.container,u=c.actualOptions,f=e.options.zIndex,h=wf-e.zIndexFactor,d=h**f.opacityRate,v=e.bubble.opacity??e.opacity?.value??Vo,g=e.strokeOpacity??v,p=v*d,y=g*d,w={},b={fill:r?wn(r,p):void 0};b.stroke=a?wn(a,y):b.fill,this._applyPreDrawUpdaters(l,e,n,p,b,w),gh({container:c,context:l,particle:e,delta:i,colorStyles:b,backgroundMask:u.backgroundMask.enable,composite:u.backgroundMask.composite,radius:n*h**f.sizeRate,opacity:p,shadow:e.options.shadow,transform:w}),this._applyPostDrawUpdaters(e)})}drawParticlePlugin(e,i,n){this.draw(s=>xh(s,e,i,n))}drawPlugin(e,i){this.draw(n=>_h(n,e,i))}async init(){this._safeMutationObserver(e=>e.disconnect()),this._mutationObserver=ih(e=>{for(const i of e)i.type==="attributes"&&i.attributeName==="style"&&this._repairStyle()}),this.resize(),this._initStyle(),await this._initCover();try{await this._initTrail()}catch(e){wi().error(e)}this.initBackground(),this._safeMutationObserver(e=>{!this.element||!(this.element instanceof Node)||e.observe(this.element,{attributes:!0})}),this.initUpdaters(),this.initPlugins(),this.paint()}initBackground(){const e=this.container.actualOptions,i=e.background,n=this.element;if(!n)return;const s=n.style;if(s){if(i.color){const o=Ke(this._engine,i.color);s.backgroundColor=o?kt(o,i.opacity):""}else s.backgroundColor="";s.backgroundImage=i.image||"",s.backgroundPosition=i.position||"",s.backgroundRepeat=i.repeat||"",s.backgroundSize=i.size||""}}initPlugins(){this._resizePlugins=[];for(const e of this.container.plugins.values())e.resize&&this._resizePlugins.push(e),(e.particleFillColor??e.particleStrokeColor)&&this._colorPlugins.push(e)}initUpdaters(){this._preDrawUpdaters=[],this._postDrawUpdaters=[];for(const e of this.container.particles.updaters)e.afterDraw&&this._postDrawUpdaters.push(e),(e.getColorStyles??e.getTransformValues??e.beforeDraw)&&this._preDrawUpdaters.push(e)}loadCanvas(e){this._generated&&this.element&&this.element.remove(),this._generated=e.dataset&&ii in e.dataset?e.dataset[ii]==="true":this._generated,this.element=e,this.element.ariaHidden="true",this._originalStyle=ch(this.element.style);const i=this._standardSize;i.height=e.offsetHeight,i.width=e.offsetWidth;const n=this.container.retina.pixelRatio,s=this.size;e.height=s.height=i.height*n,e.width=s.width=i.width*n,this._context=this.element.getContext("2d"),this._safeMutationObserver(o=>o.disconnect()),this.container.retina.init(),this.initBackground(),this._safeMutationObserver(o=>{!this.element||!(this.element instanceof Node)||o.observe(this.element,{attributes:!0})})}paint(){const e=this.container.actualOptions;this.draw(i=>{e.backgroundMask.enable&&e.backgroundMask.cover?(Es(i,this.size),this._coverImage?this._paintImage(this._coverImage.image,this._coverImage.opacity):this._coverColorStyle?this._paintBase(this._coverColorStyle):this._paintBase()):this._paintBase()})}resize(){if(!this.element)return!1;const e=this.container,i=e.canvas._standardSize,n={width:this.element.offsetWidth,height:this.element.offsetHeight},s=e.retina.pixelRatio,o={width:n.width*s,height:n.height*s};if(n.height===i.height&&n.width===i.width&&o.height===this.element.height&&o.width===this.element.width)return!1;const r={...i};i.height=n.height,i.width=n.width;const a=this.size;return this.element.width=a.width=o.width,this.element.height=a.height=o.height,this.container.started&&e.particles.setResizeFactor({width:i.width/r.width,height:i.height/r.height}),!0}setPointerEvents(e){this.element&&(this._pointerEvents=e,this._repairStyle())}stop(){this._safeMutationObserver(e=>e.disconnect()),this._mutationObserver=void 0,this.draw(e=>Es(e,this.size))}async windowResize(){if(!this.element||!this.resize())return;const e=this.container,i=e.updateActualOptions();e.particles.setDensity(),this._applyResizePlugins(),i&&await e.refresh()}}var Fi;(function(t){t.canvas="canvas",t.parent="parent",t.window="window"})(Fi||(Fi={}));function Re(t,e,i,n,s){if(n){let o={passive:!0};Ol(s)?o.capture=s:s!==void 0&&(o=s),t.addEventListener(e,i,o)}else{const o=s;t.removeEventListener(e,i,o)}}class Sh{constructor(e){this.container=e,this._doMouseTouchClick=i=>{const n=this.container,s=n.actualOptions;if(this._canPush){const o=n.interactivity.mouse,r=o.position;if(!r)return;o.clickPosition={...r},o.clickTime=new Date().getTime();const a=s.interactivity.events.onClick;ze(a.mode,l=>this.container.handleClickMode(l))}i.type==="touchend"&&setTimeout(()=>this._mouseTouchFinish(),Af)},this._handleThemeChange=i=>{const n=i,s=this.container,o=s.options,r=o.defaultThemes,a=n.matches?r.dark:r.light;o.themes.find(c=>c.name===a)?.default.auto&&s.loadTheme(a)},this._handleVisibilityChange=()=>{const i=this.container,n=i.actualOptions;this._mouseTouchFinish(),n.pauseOnBlur&&(document?.hidden?(i.pageHidden=!0,i.pause()):(i.pageHidden=!1,i.animationStatus?i.play(!0):i.draw(!0)))},this._handleWindowResize=()=>{this._resizeTimeout&&(clearTimeout(this._resizeTimeout),delete this._resizeTimeout);const i=async()=>{await this.container.canvas?.windowResize()};this._resizeTimeout=setTimeout(()=>void i(),this.container.actualOptions.interactivity.events.resize.delay*se)},this._manageInteractivityListeners=(i,n)=>{const s=this._handlers,o=this.container,r=o.actualOptions,a=o.interactivity.element;if(!a)return;const l=a,c=o.canvas;c.setPointerEvents(l===c.element?"initial":"none"),(r.interactivity.events.onHover.enable||r.interactivity.events.onClick.enable)&&(Re(a,yi,s.mouseMove,n),Re(a,af,s.touchStart,n),Re(a,lf,s.touchMove,n),r.interactivity.events.onClick.enable?(Re(a,dr,s.touchEndClick,n),Re(a,of,s.mouseUp,n),Re(a,sf,s.mouseDown,n)):Re(a,dr,s.touchEnd,n),Re(a,i,s.mouseLeave,n),Re(a,cf,s.touchCancel,n))},this._manageListeners=i=>{const n=this._handlers,s=this.container,o=s.actualOptions,r=o.interactivity.detectsOn,a=s.canvas.element;let l=co;r===Fi.window?(s.interactivity.element=window,l=rf):r===Fi.parent&&a?s.interactivity.element=a.parentElement??a.parentNode:s.interactivity.element=a,this._manageMediaMatch(i),this._manageResize(i),this._manageInteractivityListeners(l,i),document&&Re(document,ff,n.visibilityChange,i,!1)},this._manageMediaMatch=i=>{const n=this._handlers,s=Rl("(prefers-color-scheme: dark)");if(s){if(s.addEventListener!==void 0){Re(s,"change",n.themeChange,i);return}s.addListener!==void 0&&(i?s.addListener(n.oldThemeChange):s.removeListener(n.oldThemeChange))}},this._manageResize=i=>{const n=this._handlers,s=this.container;if(!s.actualOptions.interactivity.events.resize)return;if(typeof ResizeObserver>"u"){Re(window,uf,n.resize,i);return}const r=s.canvas.element;this._resizeObserver&&!i?(r&&this._resizeObserver.unobserve(r),this._resizeObserver.disconnect(),delete this._resizeObserver):!this._resizeObserver&&i&&r&&(this._resizeObserver=new ResizeObserver(a=>{a.find(c=>c.target===r)&&this._handleWindowResize()}),this._resizeObserver.observe(r))},this._mouseDown=()=>{const{interactivity:i}=this.container;if(!i)return;const{mouse:n}=i;n.clicking=!0,n.downPosition=n.position},this._mouseTouchClick=i=>{const n=this.container,s=n.actualOptions,{mouse:o}=n.interactivity;o.inside=!0;let r=!1;const a=o.position;if(!(!a||!s.interactivity.events.onClick.enable)){for(const l of n.plugins.values())if(l.clickPositionValid&&(r=l.clickPositionValid(a),r))break;r||this._doMouseTouchClick(i),o.clicking=!1}},this._mouseTouchFinish=()=>{const i=this.container.interactivity;if(!i)return;const n=i.mouse;delete n.position,delete n.clickPosition,delete n.downPosition,i.status=co,n.inside=!1,n.clicking=!1},this._mouseTouchMove=i=>{const n=this.container,s=n.actualOptions,o=n.interactivity,r=n.canvas.element;if(!o?.element)return;o.mouse.inside=!0;let a;if(i.type.startsWith("pointer")){this._canPush=!0;const c=i;if(o.element===window){if(r){const u=r.getBoundingClientRect();a={x:c.clientX-u.left,y:c.clientY-u.top}}}else if(s.interactivity.detectsOn===Fi.parent){const u=c.target,f=c.currentTarget;if(u&&f&&r){const h=u.getBoundingClientRect(),d=f.getBoundingClientRect(),v=r.getBoundingClientRect();a={x:c.offsetX+oe*h.left-(d.left+v.left),y:c.offsetY+oe*h.top-(d.top+v.top)}}else a={x:c.offsetX??c.clientX,y:c.offsetY??c.clientY}}else c.target===r&&(a={x:c.offsetX??c.clientX,y:c.offsetY??c.clientY})}else if(this._canPush=i.type!=="touchmove",r){const c=i,u=c.touches[c.touches.length-Sl],f=r.getBoundingClientRect();a={x:u.clientX-(f.left??ts),y:u.clientY-(f.top??ts)}}const l=n.retina.pixelRatio;a&&(a.x*=l,a.y*=l),o.mouse.position=a,o.status=yi},this._touchEnd=i=>{const n=i,s=Array.from(n.changedTouches);for(const o of s)this._touches.delete(o.identifier);this._mouseTouchFinish()},this._touchEndClick=i=>{const n=i,s=Array.from(n.changedTouches);for(const o of s)this._touches.delete(o.identifier);this._mouseTouchClick(i)},this._touchStart=i=>{const n=i,s=Array.from(n.changedTouches);for(const o of s)this._touches.set(o.identifier,performance.now());this._mouseTouchMove(i)},this._canPush=!0,this._touches=new Map,this._handlers={mouseDown:()=>this._mouseDown(),mouseLeave:()=>this._mouseTouchFinish(),mouseMove:i=>this._mouseTouchMove(i),mouseUp:i=>this._mouseTouchClick(i),touchStart:i=>this._touchStart(i),touchMove:i=>this._mouseTouchMove(i),touchEnd:i=>this._touchEnd(i),touchCancel:i=>this._touchEnd(i),touchEndClick:i=>this._touchEndClick(i),visibilityChange:()=>this._handleVisibilityChange(),themeChange:i=>this._handleThemeChange(i),oldThemeChange:i=>this._handleThemeChange(i),resize:()=>{this._handleWindowResize()}}}addListeners(){this._manageListeners(!0)}removeListeners(){this._manageListeners(!1)}}var fe;(function(t){t.configAdded="configAdded",t.containerInit="containerInit",t.particlesSetup="particlesSetup",t.containerStarted="containerStarted",t.containerStopped="containerStopped",t.containerDestroyed="containerDestroyed",t.containerPaused="containerPaused",t.containerPlay="containerPlay",t.containerBuilt="containerBuilt",t.particleAdded="particleAdded",t.particleDestroyed="particleDestroyed",t.particleRemoved="particleRemoved"})(fe||(fe={}));class ce{constructor(){this.value=""}static create(e,i){const n=new ce;return n.load(e),i!==void 0&&(Ht(i)||dt(i)?n.load({value:i}):n.load(i)),n}load(e){x(e)||x(e.value)||(this.value=e.value)}}class Mh{constructor(){this.color=new ce,this.color.value="",this.image="",this.position="",this.repeat="",this.size="",this.opacity=1}load(e){x(e)||(e.color!==void 0&&(this.color=ce.create(this.color,e.color)),e.image!==void 0&&(this.image=e.image),e.position!==void 0&&(this.position=e.position),e.repeat!==void 0&&(this.repeat=e.repeat),e.size!==void 0&&(this.size=e.size),e.opacity!==void 0&&(this.opacity=e.opacity))}}class Oh{constructor(){this.opacity=1}load(e){x(e)||(e.color!==void 0&&(this.color=ce.create(this.color,e.color)),e.image!==void 0&&(this.image=e.image),e.opacity!==void 0&&(this.opacity=e.opacity))}}class Eh{constructor(){this.composite="destination-out",this.cover=new Oh,this.enable=!1}load(e){if(!x(e)){if(e.composite!==void 0&&(this.composite=e.composite),e.cover!==void 0){const i=e.cover,n=Ht(e.cover)?{color:e.cover}:e.cover;this.cover.load(i.color!==void 0||i.image!==void 0?i:{color:n})}e.enable!==void 0&&(this.enable=e.enable)}}}class zh{constructor(){this.enable=!0,this.zIndex=0}load(e){x(e)||(e.enable!==void 0&&(this.enable=e.enable),e.zIndex!==void 0&&(this.zIndex=e.zIndex))}}class Rh{constructor(){this.enable=!1,this.mode=[]}load(e){x(e)||(e.enable!==void 0&&(this.enable=e.enable),e.mode!==void 0&&(this.mode=e.mode))}}var sn;(function(t){t.circle="circle",t.rectangle="rectangle"})(sn||(sn={}));class Ir{constructor(){this.selectors=[],this.enable=!1,this.mode=[],this.type=sn.circle}load(e){x(e)||(e.selectors!==void 0&&(this.selectors=e.selectors),e.enable!==void 0&&(this.enable=e.enable),e.mode!==void 0&&(this.mode=e.mode),e.type!==void 0&&(this.type=e.type))}}class Th{constructor(){this.enable=!1,this.force=2,this.smooth=10}load(e){x(e)||(e.enable!==void 0&&(this.enable=e.enable),e.force!==void 0&&(this.force=e.force),e.smooth!==void 0&&(this.smooth=e.smooth))}}class Dh{constructor(){this.enable=!1,this.mode=[],this.parallax=new Th}load(e){x(e)||(e.enable!==void 0&&(this.enable=e.enable),e.mode!==void 0&&(this.mode=e.mode),this.parallax.load(e.parallax))}}class Ih{constructor(){this.delay=.5,this.enable=!0}load(e){x(e)||(e.delay!==void 0&&(this.delay=e.delay),e.enable!==void 0&&(this.enable=e.enable))}}class Lh{constructor(){this.onClick=new Rh,this.onDiv=new Ir,this.onHover=new Dh,this.resize=new Ih}load(e){if(x(e))return;this.onClick.load(e.onClick);const i=e.onDiv;i!==void 0&&(this.onDiv=ze(i,n=>{const s=new Ir;return s.load(n),s})),this.onHover.load(e.onHover),this.resize.load(e.resize)}}class Ah{constructor(e,i){this._engine=e,this._container=i}load(e){if(x(e)||!this._container)return;const i=this._engine.interactors.get(this._container);if(i)for(const n of i)n.loadModeOptions&&n.loadModeOptions(this,e)}}class Ul{constructor(e,i){this.detectsOn=Fi.window,this.events=new Lh,this.modes=new Ah(e,i)}load(e){if(x(e))return;const i=e.detectsOn;i!==void 0&&(this.detectsOn=i),this.events.load(e.events),this.modes.load(e.modes)}}class Fh{load(e){x(e)||(e.position&&(this.position={x:e.position.x??Mr,y:e.position.y??Mr,mode:e.position.mode??tn.percent}),e.options&&(this.options=le({},e.options)))}}var oi;(function(t){t.screen="screen",t.canvas="canvas"})(oi||(oi={}));class Bh{constructor(){this.maxWidth=1/0,this.options={},this.mode=oi.canvas}load(e){x(e)||(x(e.maxWidth)||(this.maxWidth=e.maxWidth),x(e.mode)||(e.mode===oi.screen?this.mode=oi.screen:this.mode=oi.canvas),x(e.options)||(this.options=le({},e.options)))}}var Tt;(function(t){t.any="any",t.dark="dark",t.light="light"})(Tt||(Tt={}));class qh{constructor(){this.auto=!1,this.mode=Tt.any,this.value=!1}load(e){x(e)||(e.auto!==void 0&&(this.auto=e.auto),e.mode!==void 0&&(this.mode=e.mode),e.value!==void 0&&(this.value=e.value))}}class $h{constructor(){this.name="",this.default=new qh}load(e){x(e)||(e.name!==void 0&&(this.name=e.name),this.default.load(e.default),e.options!==void 0&&(this.options=le({},e.options)))}}class Yo{constructor(){this.count=0,this.enable=!1,this.speed=1,this.decay=0,this.delay=0,this.sync=!1}load(e){x(e)||(e.count!==void 0&&(this.count=L(e.count)),e.enable!==void 0&&(this.enable=e.enable),e.speed!==void 0&&(this.speed=L(e.speed)),e.decay!==void 0&&(this.decay=L(e.decay)),e.delay!==void 0&&(this.delay=L(e.delay)),e.sync!==void 0&&(this.sync=e.sync))}}class Qo extends Yo{constructor(){super(),this.mode=si.auto,this.startValue=Ai.random}load(e){super.load(e),!x(e)&&(e.mode!==void 0&&(this.mode=e.mode),e.startValue!==void 0&&(this.startValue=e.startValue))}}class zs extends Yo{constructor(){super(),this.offset=0,this.sync=!0}load(e){super.load(e),!x(e)&&e.offset!==void 0&&(this.offset=L(e.offset))}}class Nh{constructor(){this.h=new zs,this.s=new zs,this.l=new zs}load(e){x(e)||(this.h.load(e.h),this.s.load(e.s),this.l.load(e.l))}}class _n extends ce{constructor(){super(),this.animation=new Nh}static create(e,i){const n=new _n;return n.load(e),i!==void 0&&(Ht(i)||dt(i)?n.load({value:i}):n.load(i)),n}load(e){if(super.load(e),x(e))return;const i=e.animation;i!==void 0&&(i.enable!==void 0?this.animation.h.load(i):this.animation.load(e.animation))}}var Bi;(function(t){t.absorb="absorb",t.bounce="bounce",t.destroy="destroy"})(Bi||(Bi={}));class Vh{constructor(){this.speed=2}load(e){x(e)||e.speed!==void 0&&(this.speed=e.speed)}}class Uh{constructor(){this.enable=!0,this.retries=0}load(e){x(e)||(e.enable!==void 0&&(this.enable=e.enable),e.retries!==void 0&&(this.retries=e.retries))}}class Pi{constructor(){this.value=0}load(e){x(e)||x(e.value)||(this.value=L(e.value))}}class Hh extends Pi{constructor(){super(),this.animation=new Yo}load(e){if(super.load(e),x(e))return;const i=e.animation;i!==void 0&&this.animation.load(i)}}class Hl extends Hh{constructor(){super(),this.animation=new Qo}load(e){super.load(e)}}class Lr extends Pi{constructor(){super(),this.value=1}}class Wl{constructor(){this.horizontal=new Lr,this.vertical=new Lr}load(e){x(e)||(this.horizontal.load(e.horizontal),this.vertical.load(e.vertical))}}class Wh{constructor(){this.absorb=new Vh,this.bounce=new Wl,this.enable=!1,this.maxSpeed=50,this.mode=Bi.bounce,this.overlap=new Uh}load(e){x(e)||(this.absorb.load(e.absorb),this.bounce.load(e.bounce),e.enable!==void 0&&(this.enable=e.enable),e.maxSpeed!==void 0&&(this.maxSpeed=L(e.maxSpeed)),e.mode!==void 0&&(this.mode=e.mode),this.overlap.load(e.overlap))}}class jh{constructor(){this.close=!0,this.fill=!0,this.options={},this.type=[]}load(e){if(x(e))return;const i=e.options;if(i!==void 0)for(const n in i){const s=i[n];s&&(this.options[n]=le(this.options[n]??{},s))}e.close!==void 0&&(this.close=e.close),e.fill!==void 0&&(this.fill=e.fill),e.type!==void 0&&(this.type=e.type)}}class Gh{constructor(){this.offset=0,this.value=90}load(e){x(e)||(e.offset!==void 0&&(this.offset=L(e.offset)),e.value!==void 0&&(this.value=L(e.value)))}}class Yh{constructor(){this.distance=200,this.enable=!1,this.rotate={x:3e3,y:3e3}}load(e){if(!x(e)&&(e.distance!==void 0&&(this.distance=L(e.distance)),e.enable!==void 0&&(this.enable=e.enable),e.rotate)){const i=e.rotate.x;i!==void 0&&(this.rotate.x=i);const n=e.rotate.y;n!==void 0&&(this.rotate.y=n)}}}class Qh{constructor(){this.x=50,this.y=50,this.mode=tn.percent,this.radius=0}load(e){x(e)||(e.x!==void 0&&(this.x=e.x),e.y!==void 0&&(this.y=e.y),e.mode!==void 0&&(this.mode=e.mode),e.radius!==void 0&&(this.radius=e.radius))}}class Xh{constructor(){this.acceleration=9.81,this.enable=!1,this.inverse=!1,this.maxSpeed=50}load(e){x(e)||(e.acceleration!==void 0&&(this.acceleration=L(e.acceleration)),e.enable!==void 0&&(this.enable=e.enable),e.inverse!==void 0&&(this.inverse=e.inverse),e.maxSpeed!==void 0&&(this.maxSpeed=L(e.maxSpeed)))}}class Kh{constructor(){this.clamp=!0,this.delay=new Pi,this.enable=!1,this.options={}}load(e){x(e)||(e.clamp!==void 0&&(this.clamp=e.clamp),this.delay.load(e.delay),e.enable!==void 0&&(this.enable=e.enable),this.generator=e.generator,e.options&&(this.options=le(this.options,e.options)))}}class Zh{load(e){x(e)||(e.color!==void 0&&(this.color=ce.create(this.color,e.color)),e.image!==void 0&&(this.image=e.image))}}class Jh{constructor(){this.enable=!1,this.length=10,this.fill=new Zh}load(e){x(e)||(e.enable!==void 0&&(this.enable=e.enable),e.fill!==void 0&&this.fill.load(e.fill),e.length!==void 0&&(this.length=e.length))}}var G;(function(t){t.bounce="bounce",t.none="none",t.out="out",t.destroy="destroy",t.split="split"})(G||(G={}));class ed{constructor(){this.default=G.out}load(e){x(e)||(e.default!==void 0&&(this.default=e.default),this.bottom=e.bottom??e.default,this.left=e.left??e.default,this.right=e.right??e.default,this.top=e.top??e.default)}}class td{constructor(){this.acceleration=0,this.enable=!1}load(e){x(e)||(e.acceleration!==void 0&&(this.acceleration=L(e.acceleration)),e.enable!==void 0&&(this.enable=e.enable),e.position&&(this.position=le({},e.position)))}}class id{constructor(){this.angle=new Gh,this.attract=new Yh,this.center=new Qh,this.decay=0,this.distance={},this.direction=te.none,this.drift=0,this.enable=!1,this.gravity=new Xh,this.path=new Kh,this.outModes=new ed,this.random=!1,this.size=!1,this.speed=2,this.spin=new td,this.straight=!1,this.trail=new Jh,this.vibrate=!1,this.warp=!1}load(e){if(x(e))return;this.angle.load(Wt(e.angle)?{value:e.angle}:e.angle),this.attract.load(e.attract),this.center.load(e.center),e.decay!==void 0&&(this.decay=L(e.decay)),e.direction!==void 0&&(this.direction=e.direction),e.distance!==void 0&&(this.distance=Wt(e.distance)?{horizontal:e.distance,vertical:e.distance}:{...e.distance}),e.drift!==void 0&&(this.drift=L(e.drift)),e.enable!==void 0&&(this.enable=e.enable),this.gravity.load(e.gravity);const i=e.outModes;i!==void 0&&(Ti(i)?this.outModes.load(i):this.outModes.load({default:i})),this.path.load(e.path),e.random!==void 0&&(this.random=e.random),e.size!==void 0&&(this.size=e.size),e.speed!==void 0&&(this.speed=L(e.speed)),this.spin.load(e.spin),e.straight!==void 0&&(this.straight=e.straight),this.trail.load(e.trail),e.vibrate!==void 0&&(this.vibrate=e.vibrate),e.warp!==void 0&&(this.warp=e.warp)}}class nd extends Qo{constructor(){super(),this.destroy=bi.none,this.speed=2}load(e){super.load(e),!x(e)&&e.destroy!==void 0&&(this.destroy=e.destroy)}}class sd extends Hl{constructor(){super(),this.animation=new nd,this.value=1}load(e){if(x(e))return;super.load(e);const i=e.animation;i!==void 0&&this.animation.load(i)}}class od{constructor(){this.enable=!1,this.width=1920,this.height=1080}load(e){if(x(e))return;e.enable!==void 0&&(this.enable=e.enable);const i=e.width;i!==void 0&&(this.width=i);const n=e.height;n!==void 0&&(this.height=n)}}var xn;(function(t){t.delete="delete",t.wait="wait"})(xn||(xn={}));class rd{constructor(){this.mode=xn.delete,this.value=0}load(e){x(e)||(e.mode!==void 0&&(this.mode=e.mode),e.value!==void 0&&(this.value=e.value))}}class ad{constructor(){this.density=new od,this.limit=new rd,this.value=0}load(e){x(e)||(this.density.load(e.density),this.limit.load(e.limit),e.value!==void 0&&(this.value=e.value))}}class ld{constructor(){this.blur=0,this.color=new ce,this.enable=!1,this.offset={x:0,y:0},this.color.value="#000"}load(e){x(e)||(e.blur!==void 0&&(this.blur=e.blur),this.color=ce.create(this.color,e.color),e.enable!==void 0&&(this.enable=e.enable),e.offset!==void 0&&(e.offset.x!==void 0&&(this.offset.x=e.offset.x),e.offset.y!==void 0&&(this.offset.y=e.offset.y)))}}class cd{constructor(){this.close=!0,this.fill=!0,this.options={},this.type="circle"}load(e){if(x(e))return;const i=e.options;if(i!==void 0)for(const n in i){const s=i[n];s&&(this.options[n]=le(this.options[n]??{},s))}e.close!==void 0&&(this.close=e.close),e.fill!==void 0&&(this.fill=e.fill),e.type!==void 0&&(this.type=e.type)}}class ud extends Qo{constructor(){super(),this.destroy=bi.none,this.speed=5}load(e){super.load(e),!x(e)&&e.destroy!==void 0&&(this.destroy=e.destroy)}}class fd extends Hl{constructor(){super(),this.animation=new ud,this.value=3}load(e){if(super.load(e),x(e))return;const i=e.animation;i!==void 0&&this.animation.load(i)}}class Ar{constructor(){this.width=0}load(e){x(e)||(e.color!==void 0&&(this.color=_n.create(this.color,e.color)),e.width!==void 0&&(this.width=L(e.width)),e.opacity!==void 0&&(this.opacity=L(e.opacity)))}}class hd extends Pi{constructor(){super(),this.opacityRate=1,this.sizeRate=1,this.velocityRate=1}load(e){super.load(e),!x(e)&&(e.opacityRate!==void 0&&(this.opacityRate=e.opacityRate),e.sizeRate!==void 0&&(this.sizeRate=e.sizeRate),e.velocityRate!==void 0&&(this.velocityRate=e.velocityRate))}}class dd{constructor(e,i){this._engine=e,this._container=i,this.bounce=new Wl,this.collisions=new Wh,this.color=new _n,this.color.value="#fff",this.effect=new jh,this.groups={},this.move=new id,this.number=new ad,this.opacity=new sd,this.reduceDuplicates=!1,this.shadow=new ld,this.shape=new cd,this.size=new fd,this.stroke=new Ar,this.zIndex=new hd}load(e){if(x(e))return;if(e.groups!==void 0)for(const n of Object.keys(e.groups)){if(!Object.hasOwn(e.groups,n))continue;const s=e.groups[n];s!==void 0&&(this.groups[n]=le(this.groups[n]??{},s))}e.reduceDuplicates!==void 0&&(this.reduceDuplicates=e.reduceDuplicates),this.bounce.load(e.bounce),this.color.load(_n.create(this.color,e.color)),this.effect.load(e.effect),this.move.load(e.move),this.number.load(e.number),this.opacity.load(e.opacity),this.shape.load(e.shape),this.size.load(e.size),this.shadow.load(e.shadow),this.zIndex.load(e.zIndex),this.collisions.load(e.collisions),e.interactivity!==void 0&&(this.interactivity=le({},e.interactivity));const i=e.stroke;if(i&&(this.stroke=ze(i,n=>{const s=new Ar;return s.load(n),s})),this._container){const n=this._engine.updaters.get(this._container);if(n)for(const o of n)o.loadOptions&&o.loadOptions(this,e);const s=this._engine.interactors.get(this._container);if(s)for(const o of s)o.loadParticlesOptions&&o.loadParticlesOptions(this,e)}}}function jl(t,...e){for(const i of e)t.load(i)}function Gl(t,e,...i){const n=new dd(t,e);return jl(n,...i),n}class pd{constructor(e,i){this._findDefaultTheme=n=>this.themes.find(s=>s.default.value&&s.default.mode===n)??this.themes.find(s=>s.default.value&&s.default.mode===Tt.any),this._importPreset=n=>{this.load(this._engine.getPreset(n))},this._engine=e,this._container=i,this.autoPlay=!0,this.background=new Mh,this.backgroundMask=new Eh,this.clear=!0,this.defaultThemes={},this.delay=0,this.fullScreen=new zh,this.detectRetina=!0,this.duration=0,this.fpsLimit=120,this.interactivity=new Ul(e,i),this.manualParticles=[],this.particles=Gl(this._engine,this._container),this.pauseOnBlur=!0,this.pauseOnOutsideViewport=!0,this.responsive=[],this.smooth=!1,this.style={},this.themes=[],this.zLayers=100}load(e){if(x(e))return;e.preset!==void 0&&ze(e.preset,r=>this._importPreset(r)),e.autoPlay!==void 0&&(this.autoPlay=e.autoPlay),e.clear!==void 0&&(this.clear=e.clear),e.key!==void 0&&(this.key=e.key),e.name!==void 0&&(this.name=e.name),e.delay!==void 0&&(this.delay=L(e.delay));const i=e.detectRetina;i!==void 0&&(this.detectRetina=i),e.duration!==void 0&&(this.duration=L(e.duration));const n=e.fpsLimit;n!==void 0&&(this.fpsLimit=n),e.pauseOnBlur!==void 0&&(this.pauseOnBlur=e.pauseOnBlur),e.pauseOnOutsideViewport!==void 0&&(this.pauseOnOutsideViewport=e.pauseOnOutsideViewport),e.zLayers!==void 0&&(this.zLayers=e.zLayers),this.background.load(e.background);const s=e.fullScreen;Ol(s)?this.fullScreen.enable=s:this.fullScreen.load(s),this.backgroundMask.load(e.backgroundMask),this.interactivity.load(e.interactivity),e.manualParticles&&(this.manualParticles=e.manualParticles.map(r=>{const a=new Fh;return a.load(r),a})),this.particles.load(e.particles),this.style=le(this.style,e.style),this._engine.loadOptions(this,e),e.smooth!==void 0&&(this.smooth=e.smooth);const o=this._engine.interactors.get(this._container);if(o)for(const r of o)r.loadOptions&&r.loadOptions(this,e);if(e.responsive!==void 0)for(const r of e.responsive){const a=new Bh;a.load(r),this.responsive.push(a)}if(this.responsive.sort((r,a)=>r.maxWidth-a.maxWidth),e.themes!==void 0)for(const r of e.themes){const a=this.themes.find(l=>l.name===r.name);if(a)a.load(r);else{const l=new $h;l.load(r),this.themes.push(l)}}this.defaultThemes.dark=this._findDefaultTheme(Tt.dark)?.name,this.defaultThemes.light=this._findDefaultTheme(Tt.light)?.name}setResponsive(e,i,n){this.load(n);const s=this.responsive.find(o=>o.mode===oi.screen&&screen?o.maxWidth>screen.availWidth:o.maxWidth*i>e);return this.load(s?.options),s?.maxWidth}setTheme(e){if(e){const i=this.themes.find(n=>n.name===e);i&&this.load(i.options)}else{const i=Rl("(prefers-color-scheme: dark)"),n=i?.matches,s=this._findDefaultTheme(n?Tt.dark:Tt.light);s&&this.load(s.options)}}}var on;(function(t){t.external="external",t.particles="particles"})(on||(on={}));class vd{constructor(e,i){this.container=i,this._engine=e,this._interactors=[],this._externalInteractors=[],this._particleInteractors=[]}externalInteract(e){for(const i of this._externalInteractors)i.isEnabled()&&i.interact(e)}handleClickMode(e){for(const i of this._externalInteractors)i.handleClickMode?.(e)}async init(){this._interactors=await this._engine.getInteractors(this.container,!0),this._externalInteractors=[],this._particleInteractors=[];for(const e of this._interactors){switch(e.type){case on.external:this._externalInteractors.push(e);break;case on.particles:this._particleInteractors.push(e);break}e.init()}}particlesInteract(e,i){for(const n of this._externalInteractors)n.clear(e,i);for(const n of this._particleInteractors)n.isEnabled(e)&&n.interact(e,i)}reset(e){for(const i of this._externalInteractors)i.isEnabled()&&i.reset(e);for(const i of this._particleInteractors)i.isEnabled(e)&&i.reset(e)}}var Ze;(function(t){t.normal="normal",t.inside="inside",t.outside="outside"})(Ze||(Ze={}));function md(t,e,i,n){const s=e.options[t];if(s)return le({close:e.close,fill:e.fill},Ae(s,i,n))}function gd(t,e,i,n){const s=e.options[t];if(s)return le({close:e.close,fill:e.fill},Ae(s,i,n))}function Fr(t){if(!U(t.outMode,t.checkModes))return;const e=t.radius*oe;t.coord>t.maxCoord-e?t.setCb(-t.radius):t.coord<e&&t.setCb(t.radius)}class yd{constructor(e,i){this.container=i,this._calcPosition=(n,s,o,r=vr)=>{for(const v of n.plugins.values()){const g=v.particlePosition!==void 0?v.particlePosition(s,this):void 0;if(g)return ke.create(g.x,g.y,o)}const a=n.canvas.size,l=Xf({size:a,position:s}),c=ke.create(l.x,l.y,o),u=this.getRadius(),f=this.options.move.outModes,h=v=>{Fr({outMode:v,checkModes:[G.bounce],coord:c.x,maxCoord:n.canvas.size.width,setCb:g=>c.x+=g,radius:u})},d=v=>{Fr({outMode:v,checkModes:[G.bounce],coord:c.y,maxCoord:n.canvas.size.height,setCb:g=>c.y+=g,radius:u})};return h(f.left??f.default),h(f.right??f.default),d(f.top??f.default),d(f.bottom??f.default),this._checkOverlap(c,r)?this._calcPosition(n,void 0,o,r+Ef):c},this._calculateVelocity=()=>{const n=Qf(this.direction),s=n.copy(),o=this.options.move;if(o.direction===te.inside||o.direction===te.outside)return s;const r=Nt(k(o.angle.value)),a=Nt(k(o.angle.offset)),l={left:a-r*Q,right:a+r*Q};return o.straight||(s.angle+=Pe(L(l.left,l.right))),o.random&&typeof o.speed=="number"&&(s.length*=A()),s},this._checkOverlap=(n,s=vr)=>{const o=this.options.collisions,r=this.getRadius();if(!o.enable)return!1;const a=o.overlap;if(a.enable)return!1;const l=a.retries;if(l>=zf&&s>l)throw new Error(`${Ne} particle is overlapping and can't be placed`);return!!this.container.particles.find(c=>Oe(n,c.position)<r+c.getRadius())},this._getRollColor=n=>{if(!n||!this.roll||!this.backColor&&!this.roll.alter)return n;const s=this.roll.horizontal&&this.roll.vertical?oe*kr:kr,o=this.roll.horizontal?Math.PI*Q:is;return Math.floor(((this.roll.angle??is)+o)/(Math.PI/s))%oe?this.backColor?this.backColor:this.roll.alter?kh(n,this.roll.alter.type,this.roll.alter.value):n:n},this._initPosition=n=>{const s=this.container,o=k(this.options.zIndex.value);this.position=this._calcPosition(s,n,Ve(o,Rf,s.zLayers)),this.initialPosition=this.position.copy();const r=s.canvas.size;switch(this.moveCenter={...Al(this.options.move.center,r),radius:this.options.move.center.radius??Tf,mode:this.options.move.center.mode??tn.percent},this.direction=Yf(this.options.move.direction,this.position,this.moveCenter),this.options.move.direction){case te.inside:this.outType=Ze.inside;break;case te.outside:this.outType=Ze.outside;break}this.offset=Z.origin},this._engine=e}destroy(e){if(this.unbreakable||this.destroyed)return;this.destroyed=!0,this.bubble.inRange=!1,this.slow.inRange=!1;const i=this.container,n=this.pathGenerator;i.shapeDrawers.get(this.shape)?.particleDestroy?.(this);for(const o of i.plugins.values())o.particleDestroyed?.(this,e);for(const o of i.particles.updaters)o.particleDestroyed?.(this,e);n?.reset(this),this._engine.dispatchEvent(fe.particleDestroyed,{container:this.container,data:{particle:this}})}draw(e){const i=this.container,n=i.canvas;for(const s of i.plugins.values())n.drawParticlePlugin(s,this,e);n.drawParticle(this,e)}getFillColor(){return this._getRollColor(this.bubble.color??Tr(this.color))}getMass(){return this.getRadius()**_t*Math.PI*Q}getPosition(){return{x:this.position.x+this.offset.x,y:this.position.y+this.offset.y,z:this.position.z}}getRadius(){return this.bubble.radius??this.size.value}getStrokeColor(){return this._getRollColor(this.bubble.color??Tr(this.strokeColor))}init(e,i,n,s){const o=this.container,r=this._engine;this.id=e,this.group=s,this.effectClose=!0,this.effectFill=!0,this.shapeClose=!0,this.shapeFill=!0,this.pathRotation=!1,this.lastPathTime=0,this.destroyed=!1,this.unbreakable=!1,this.isRotating=!1,this.rotation=0,this.misplaced=!1,this.retina={maxDistance:{}},this.outType=Ze.normal,this.ignoresResizeRatio=!0;const a=o.retina.pixelRatio,l=o.actualOptions,c=Gl(this._engine,o,l.particles),{reduceDuplicates:u}=c,f=c.effect.type,h=c.shape.type;this.effect=Ae(f,this.id,u),this.shape=Ae(h,this.id,u);const d=c.effect,v=c.shape;if(n){if(n.effect?.type){const P=n.effect.type,B=Ae(P,this.id,u);B&&(this.effect=B,d.load(n.effect))}if(n.shape?.type){const P=n.shape.type,B=Ae(P,this.id,u);B&&(this.shape=B,v.load(n.shape))}}if(this.effect===en){const P=[...this.container.effectDrawers.keys()];this.effect=P[Math.floor(A()*P.length)]}if(this.shape===en){const P=[...this.container.shapeDrawers.keys()];this.shape=P[Math.floor(A()*P.length)]}this.effectData=md(this.effect,d,this.id,u),this.shapeData=gd(this.shape,v,this.id,u),c.load(n);const g=this.effectData;g&&c.load(g.particles);const p=this.shapeData;p&&c.load(p.particles);const y=new Ul(r,o);y.load(o.actualOptions.interactivity),y.load(c.interactivity),this.interactivity=y,this.effectFill=g?.fill??c.effect.fill,this.effectClose=g?.close??c.effect.close,this.shapeFill=p?.fill??c.shape.fill,this.shapeClose=p?.close??c.shape.close,this.options=c;const w=this.options.move.path;this.pathDelay=k(w.delay.value)*se,w.generator&&(this.pathGenerator=this._engine.getPathGenerator(w.generator),this.pathGenerator&&o.addPath(w.generator,this.pathGenerator)&&this.pathGenerator.init(o)),o.retina.initParticle(this),this.size=Ll(this.options.size,a),this.bubble={inRange:!1},this.slow={inRange:!1,factor:1},this._initPosition(i),this.initialVelocity=this._calculateVelocity(),this.velocity=this.initialVelocity.copy(),this.moveDecay=Pl-k(this.options.move.decay);const b=o.particles;b.setLastZIndex(this.position.z),this.zIndexFactor=this.position.z/o.zLayers,this.sides=24;let _=o.effectDrawers.get(this.effect);_||(_=this._engine.getEffectDrawer(this.effect),_&&o.effectDrawers.set(this.effect,_)),_?.loadEffect&&_.loadEffect(this);let M=o.shapeDrawers.get(this.shape);M||(M=this._engine.getShapeDrawer(this.shape),M&&o.shapeDrawers.set(this.shape,M)),M?.loadShape&&M.loadShape(this);const D=M?.getSidesCount;D&&(this.sides=D(this)),this.spawning=!1,this.shadowColor=Ke(this._engine,this.options.shadow.color);for(const P of b.updaters)P.init(this);for(const P of b.movers)P.init?.(this);_?.particleInit?.(o,this),M?.particleInit?.(o,this);for(const P of o.plugins.values())P.particleCreated?.(this)}isInsideCanvas(){const e=this.getRadius(),i=this.container.canvas.size,n=this.position;return n.x>=-e&&n.y>=-e&&n.y<=i.height+e&&n.x<=i.width+e}isVisible(){return!this.destroyed&&!this.spawning&&this.isInsideCanvas()}reset(){for(const e of this.container.particles.updaters)e.reset?.(this)}}class bd{constructor(e,i){this.position=e,this.particle=i}}var qi;(function(t){t.circle="circle",t.rectangle="rectangle"})(qi||(qi={}));class Yl{constructor(e,i,n){this.position={x:e,y:i},this.type=n}}class re extends Yl{constructor(e,i,n){super(e,i,qi.circle),this.radius=n}contains(e){return Oe(e,this.position)<=this.radius}intersects(e){const i=this.position,n=e.position,s={x:Math.abs(n.x-i.x),y:Math.abs(n.y-i.y)},o=this.radius;if(e instanceof re||e.type===qi.circle){const r=e,a=o+r.radius,l=Math.sqrt(s.x**_t+s.y**_t);return a>l}else if(e instanceof tt||e.type===qi.rectangle){const r=e,{width:a,height:l}=r.size;return Math.pow(s.x-a,_t)+Math.pow(s.y-l,_t)<=o**_t||s.x<=o+a&&s.y<=o+l||s.x<=a||s.y<=l}return!1}}class tt extends Yl{constructor(e,i,n,s){super(e,i,qi.rectangle),this.size={height:s,width:n}}contains(e){const i=this.size.width,n=this.size.height,s=this.position;return e.x>=s.x&&e.x<=s.x+i&&e.y>=s.y&&e.y<=s.y+n}intersects(e){if(e instanceof re)return e.intersects(this);const i=this.size.width,n=this.size.height,s=this.position,o=e.position,r=e instanceof tt?e.size:{width:0,height:0},a=r.width,l=r.height;return o.x<s.x+i&&o.x+a>s.x&&o.y<s.y+n&&o.y+l>s.y}}class ss{constructor(e,i){this.rectangle=e,this.capacity=i,this._subdivide=()=>{const{x:n,y:s}=this.rectangle.position,{width:o,height:r}=this.rectangle.size,{capacity:a}=this;for(let l=0;l<pf;l++){const c=l%oe;this._subs.push(new ss(new tt(n+o*Q*c,s+r*Q*(Math.round(l*Q)-c),o*Q,r*Q),a))}this._divided=!0},this._points=[],this._divided=!1,this._subs=[]}insert(e){return this.rectangle.contains(e.position)?this._points.length<this.capacity?(this._points.push(e),!0):(this._divided||this._subdivide(),this._subs.some(i=>i.insert(e))):!1}query(e,i){const n=[];if(!e.intersects(this.rectangle))return[];for(const s of this._points)!e.contains(s.position)&&Oe(e.position,s.position)>s.particle.getRadius()&&(!i||i(s.particle))||n.push(s.particle);if(this._divided)for(const s of this._subs)n.push(...s.query(e,i));return n}queryCircle(e,i,n){return this.query(new re(e.x,e.y,i),n)}queryRectangle(e,i,n){return this.query(new tt(e.x,e.y,i.width,i.height),n)}}const Br=t=>{const{height:e,width:i}=t;return new tt(Cr*i,Cr*e,Pr*i,Pr*e)};let wd=class{constructor(e,i){this._addToPool=(...s)=>{this._pool.push(...s)},this._applyDensity=(s,o,r,a)=>{const l=s.number;if(!s.number.density?.enable){r===void 0?this._limit=l.limit.value:(a?.number.limit?.value??l.limit.value)&&this._groupLimits.set(r,a?.number.limit?.value??l.limit.value);return}const c=this._initDensityFactor(l.density),u=l.value,f=l.limit.value>Sr?l.limit.value:u,h=Math.min(u,f)*c+o,d=Math.min(this.count,this.filter(v=>v.group===r).length);r===void 0?this._limit=l.limit.value*c:this._groupLimits.set(r,l.limit.value*c),d<h?this.push(Math.abs(h-d),void 0,s,r):d>h&&this.removeQuantity(d-h,r)},this._initDensityFactor=s=>{const o=this._container;if(!o.canvas.element||!s.enable)return Lf;const r=o.canvas.element,a=o.retina.pixelRatio;return r.width*r.height/(s.height*s.width*a**_t)},this._pushParticle=(s,o,r,a)=>{try{let l=this._pool.pop();l||(l=new yd(this._engine,this._container)),l.init(this._nextId,s,o,r);let c=!0;return a&&(c=a(l)),c?(this._array.push(l),this._zArray.push(l),this._nextId++,this._engine.dispatchEvent(fe.particleAdded,{container:this._container,data:{particle:l}}),l):void 0}catch(l){wi().warning(`${Ne} adding particle: ${l}`)}},this._removeParticle=(s,o,r)=>{const a=this._array[s];if(!a||a.group!==o)return!1;const l=this._zArray.indexOf(a);return this._array.splice(s,ns),this._zArray.splice(l,ns),a.destroy(r),this._engine.dispatchEvent(fe.particleRemoved,{container:this._container,data:{particle:a}}),this._addToPool(a),!0},this._engine=e,this._container=i,this._nextId=0,this._array=[],this._zArray=[],this._pool=[],this._limit=0,this._groupLimits=new Map,this._needsSort=!1,this._lastZIndex=0,this._interactionManager=new vd(e,i),this._pluginsInitialized=!1;const n=i.canvas.size;this.quadTree=new ss(Br(n),mr),this.movers=[],this.updaters=[]}get count(){return this._array.length}addManualParticles(){const e=this._container;e.actualOptions.manualParticles.forEach(n=>this.addParticle(n.position?Al(n.position,e.canvas.size):void 0,n.options))}addParticle(e,i,n,s){const o=this._container.actualOptions.particles.number.limit.mode,r=n===void 0?this._limit:this._groupLimits.get(n)??this._limit,a=this.count;if(r>Sr)switch(o){case xn.delete:{const l=a+Df-r;l>If&&this.removeQuantity(l);break}case xn.wait:if(a>=r)return;break}return this._pushParticle(e,i,n,s)}clear(){this._array=[],this._zArray=[],this._pluginsInitialized=!1}destroy(){this._array=[],this._zArray=[],this.movers=[],this.updaters=[]}draw(e){const i=this._container,n=i.canvas;n.clear(),this.update(e);for(const s of i.plugins.values())n.drawPlugin(s,e);for(const s of this._zArray)s.draw(e)}filter(e){return this._array.filter(e)}find(e){return this._array.find(e)}get(e){return this._array[e]}handleClickMode(e){this._interactionManager.handleClickMode(e)}async init(){const e=this._container,i=e.actualOptions;this._lastZIndex=0,this._needsSort=!1,await this.initPlugins();let n=!1;for(const s of e.plugins.values())if(n=s.particlesInitialization?.()??n,n)break;if(this.addManualParticles(),!n){const s=i.particles,o=s.groups;for(const r in o){const a=o[r];for(let l=this.count,c=0;c<a.number?.value&&l<s.number.value;l++,c++)this.addParticle(void 0,a,r)}for(let r=this.count;r<s.number.value;r++)this.addParticle()}}async initPlugins(){if(this._pluginsInitialized)return;const e=this._container;this.movers=await this._engine.getMovers(e,!0),this.updaters=await this._engine.getUpdaters(e,!0),await this._interactionManager.init();for(const i of e.pathGenerators.values())i.init(e)}push(e,i,n,s){for(let o=0;o<e;o++)this.addParticle(i?.position,n,s)}async redraw(){this.clear(),await this.init(),this.draw({value:0,factor:0})}remove(e,i,n){this.removeAt(this._array.indexOf(e),void 0,i,n)}removeAt(e,i=df,n,s){if(e<po||e>this.count)return;let o=0;for(let r=e;o<i&&r<this.count;r++)this._removeParticle(r,n,s)&&(r--,o++)}removeQuantity(e,i){this.removeAt(po,e,i)}setDensity(){const e=this._container.actualOptions,i=e.particles.groups,n=e.manualParticles.length;for(const s in i)this._applyDensity(i[s],n,s);this._applyDensity(e.particles,n)}setLastZIndex(e){this._lastZIndex=e,this._needsSort=this._needsSort||this._lastZIndex<e}setResizeFactor(e){this._resizeFactor=e}update(e){const i=this._container,n=new Set;this.quadTree=new ss(Br(i.canvas.size),mr);for(const o of i.pathGenerators.values())o.update();for(const o of i.plugins.values())o.update?.(e);const s=this._resizeFactor;for(const o of this._array){s&&!o.ignoresResizeRatio&&(o.position.x*=s.width,o.position.y*=s.height,o.initialPosition.x*=s.width,o.initialPosition.y*=s.height),o.ignoresResizeRatio=!1,this._interactionManager.reset(o);for(const r of this._container.plugins.values()){if(o.destroyed)break;r.particleUpdate?.(o,e)}for(const r of this.movers)r.isEnabled(o)&&r.move(o,e);if(o.destroyed){n.add(o);continue}this.quadTree.insert(new bd(o.getPosition(),o))}if(n.size){const o=r=>!n.has(r);this._array=this.filter(o),this._zArray=this._zArray.filter(o);for(const r of n)this._engine.dispatchEvent(fe.particleRemoved,{container:this._container,data:{particle:r}});this._addToPool(...n)}this._interactionManager.externalInteract(e);for(const o of this._array){for(const r of this.updaters)r.update(o,e);!o.destroyed&&!o.spawning&&this._interactionManager.particlesInteract(o,e)}if(delete this._resizeFactor,this._needsSort){const o=this._zArray;o.sort((r,a)=>a.position.z-r.position.z||r.id-a.id),this._lastZIndex=o[o.length-Sl].position.z,this._needsSort=!1}}};class _d{constructor(e){this.container=e,this.pixelRatio=gr,this.reduceFactor=yr}init(){const e=this.container,i=e.actualOptions;this.pixelRatio=!i.detectRetina||_i()?gr:devicePixelRatio,this.reduceFactor=yr;const n=this.pixelRatio,s=e.canvas;if(s.element){const a=s.element;s.size.width=a.offsetWidth*n,s.size.height=a.offsetHeight*n}const o=i.particles,r=o.move;this.maxSpeed=k(r.gravity.maxSpeed)*n,this.sizeAnimationSpeed=k(o.size.animation.speed)*n}initParticle(e){const i=e.options,n=this.pixelRatio,s=i.move,o=s.distance,r=e.retina;r.moveDrift=k(s.drift)*n,r.moveSpeed=k(s.speed)*n,r.sizeAnimationSpeed=k(i.size.animation.speed)*n;const a=r.maxDistance;a.horizontal=o.horizontal!==void 0?o.horizontal*n:void 0,a.vertical=o.vertical!==void 0?o.vertical*n:void 0,r.maxSpeed=k(s.gravity.maxSpeed)*n}}function $(t){return t&&!t.destroyed}function xd(t,e=xs,i=!1){return{value:t,factor:i?xs/e:xs*t/se}}function Mi(t,e,...i){const n=new pd(t,e);return jl(n,...i),n}class kd{constructor(e,i,n){this._intersectionManager=s=>{if(!(!$(this)||!this.actualOptions.pauseOnOutsideViewport))for(const o of s)o.target===this.interactivity.element&&(o.isIntersecting?this.play():this.pause())},this._nextFrame=s=>{try{if(!this._smooth&&this._lastFrameTime!==void 0&&s<this._lastFrameTime+se/this.fpsLimit){this.draw(!1);return}this._lastFrameTime??(this._lastFrameTime=s);const o=xd(s-this._lastFrameTime,this.fpsLimit,this._smooth);if(this.addLifeTime(o.value),this._lastFrameTime=s,o.value>se){this.draw(!1);return}if(this.particles.draw(o),!this.alive()){this.destroy();return}this.animationStatus&&this.draw(!1)}catch(o){wi().error(`${Ne} in animation loop`,o)}},this._engine=e,this.id=Symbol(i),this.fpsLimit=120,this._smooth=!1,this._delay=0,this._duration=0,this._lifeTime=0,this._firstStart=!0,this.started=!1,this.destroyed=!1,this._paused=!0,this._lastFrameTime=0,this.zLayers=100,this.pageHidden=!1,this._clickHandlers=new Map,this._sourceOptions=n,this._initialSourceOptions=n,this.retina=new _d(this),this.canvas=new Ph(this,this._engine),this.particles=new wd(this._engine,this),this.pathGenerators=new Map,this.interactivity={mouse:{clicking:!1,inside:!1}},this.plugins=new Map,this.effectDrawers=new Map,this.shapeDrawers=new Map,this._options=Mi(this._engine,this),this.actualOptions=Mi(this._engine,this),this._eventListeners=new Sh(this),this._intersectionObserver=th(s=>this._intersectionManager(s)),this._engine.dispatchEvent(fe.containerBuilt,{container:this})}get animationStatus(){return!this._paused&&!this.pageHidden&&$(this)}get options(){return this._options}get sourceOptions(){return this._sourceOptions}addClickHandler(e){if(!$(this))return;const i=this.interactivity.element;if(!i)return;const n=(f,h,d)=>{if(!$(this))return;const v=this.retina.pixelRatio,g={x:h.x*v,y:h.y*v},p=this.particles.quadTree.queryCircle(g,d*v);e(f,p)},s=f=>{if(!$(this))return;const h=f,d={x:h.offsetX||h.clientX,y:h.offsetY||h.clientY};n(f,d,_f)},o=()=>{$(this)&&(c=!0,u=!1)},r=()=>{$(this)&&(u=!0)},a=f=>{if($(this)){if(c&&!u){const h=f;let d=h.touches[h.touches.length-xr];if(!d&&(d=h.changedTouches[h.changedTouches.length-xr],!d))return;const v=this.canvas.element,g=v?v.getBoundingClientRect():void 0,p={x:d.clientX-(g?g.left:ts),y:d.clientY-(g?g.top:ts)};n(f,p,Math.max(d.radiusX,d.radiusY))}c=!1,u=!1}},l=()=>{$(this)&&(c=!1,u=!1)};let c=!1,u=!1;this._clickHandlers.set("click",s),this._clickHandlers.set("touchstart",o),this._clickHandlers.set("touchmove",r),this._clickHandlers.set("touchend",a),this._clickHandlers.set("touchcancel",l);for(const[f,h]of this._clickHandlers)i.addEventListener(f,h)}addLifeTime(e){this._lifeTime+=e}addPath(e,i,n=!1){return!$(this)||!n&&this.pathGenerators.has(e)?!1:(this.pathGenerators.set(e,i),!0)}alive(){return!this._duration||this._lifeTime<=this._duration}clearClickHandlers(){if($(this)){for(const[e,i]of this._clickHandlers)this.interactivity.element?.removeEventListener(e,i);this._clickHandlers.clear()}}destroy(e=!0){if($(this)){this.stop(),this.clearClickHandlers(),this.particles.destroy(),this.canvas.destroy();for(const i of this.effectDrawers.values())i.destroy?.(this);for(const i of this.shapeDrawers.values())i.destroy?.(this);for(const i of this.effectDrawers.keys())this.effectDrawers.delete(i);for(const i of this.shapeDrawers.keys())this.shapeDrawers.delete(i);if(this._engine.clearPlugins(this),this.destroyed=!0,e){const i=this._engine.items,n=i.findIndex(s=>s===this);n>=xf&&i.splice(n,Cl)}this._engine.dispatchEvent(fe.containerDestroyed,{container:this})}}draw(e){if(!$(this))return;let i=e;const n=s=>{i&&(this._lastFrameTime=void 0,i=!1),this._nextFrame(s)};this._drawAnimationFrame=jf(s=>n(s))}async export(e,i={}){for(const n of this.plugins.values()){if(!n.export)continue;const s=await n.export(e,i);if(s.supported)return s.blob}wi().error(`${Ne} - Export plugin with type ${e} not found`)}handleClickMode(e){if($(this)){this.particles.handleClickMode(e);for(const i of this.plugins.values())i.handleClickMode?.(e)}}async init(){if(!$(this))return;const e=this._engine.getSupportedEffects();for(const c of e){const u=this._engine.getEffectDrawer(c);u&&this.effectDrawers.set(c,u)}const i=this._engine.getSupportedShapes();for(const c of i){const u=this._engine.getShapeDrawer(c);u&&this.shapeDrawers.set(c,u)}await this.particles.initPlugins(),this._options=Mi(this._engine,this,this._initialSourceOptions,this.sourceOptions),this.actualOptions=Mi(this._engine,this,this._options);const n=await this._engine.getAvailablePlugins(this);for(const[c,u]of n)this.plugins.set(c,u);this.retina.init(),await this.canvas.init(),this.updateActualOptions(),this.canvas.initBackground(),this.canvas.resize();const{zLayers:s,duration:o,delay:r,fpsLimit:a,smooth:l}=this.actualOptions;this.zLayers=s,this._duration=k(o)*se,this._delay=k(r)*se,this._lifeTime=0,this.fpsLimit=a>Cf?a:kf,this._smooth=l;for(const c of this.effectDrawers.values())await c.init?.(this);for(const c of this.shapeDrawers.values())await c.init?.(this);for(const c of this.plugins.values())await c.init?.();this._engine.dispatchEvent(fe.containerInit,{container:this}),await this.particles.init(),this.particles.setDensity();for(const c of this.plugins.values())c.particlesSetup?.();this._engine.dispatchEvent(fe.particlesSetup,{container:this})}async loadTheme(e){$(this)&&(this._currentTheme=e,await this.refresh())}pause(){if($(this)&&(this._drawAnimationFrame!==void 0&&(Gf(this._drawAnimationFrame),delete this._drawAnimationFrame),!this._paused)){for(const e of this.plugins.values())e.pause?.();this.pageHidden||(this._paused=!0),this._engine.dispatchEvent(fe.containerPaused,{container:this})}}play(e){if(!$(this))return;const i=this._paused||e;if(this._firstStart&&!this.actualOptions.autoPlay){this._firstStart=!1;return}if(this._paused&&(this._paused=!1),i)for(const n of this.plugins.values())n.play&&n.play();this._engine.dispatchEvent(fe.containerPlay,{container:this}),this.draw(i??!1)}async refresh(){if($(this))return this.stop(),this.start()}async reset(e){if($(this))return this._initialSourceOptions=e,this._sourceOptions=e,this._options=Mi(this._engine,this,this._initialSourceOptions,this.sourceOptions),this.actualOptions=Mi(this._engine,this,this._options),this.refresh()}async start(){!$(this)||this.started||(await this.init(),this.started=!0,await new Promise(e=>{const i=async()=>{this._eventListeners.addListeners(),this.interactivity.element instanceof HTMLElement&&this._intersectionObserver&&this._intersectionObserver.observe(this.interactivity.element);for(const n of this.plugins.values())await n.start?.();this._engine.dispatchEvent(fe.containerStarted,{container:this}),this.play(),e()};this._delayTimeout=setTimeout(()=>void i(),this._delay)}))}stop(){if(!(!$(this)||!this.started)){this._delayTimeout&&(clearTimeout(this._delayTimeout),delete this._delayTimeout),this._firstStart=!0,this.started=!1,this._eventListeners.removeListeners(),this.pause(),this.particles.clear(),this.canvas.stop(),this.interactivity.element instanceof HTMLElement&&this._intersectionObserver&&this._intersectionObserver.unobserve(this.interactivity.element);for(const e of this.plugins.values())e.stop?.();for(const e of this.plugins.keys())this.plugins.delete(e);this._sourceOptions=this._options,this._engine.dispatchEvent(fe.containerStopped,{container:this})}}updateActualOptions(){this.actualOptions.responsive=[];const e=this.actualOptions.setResponsive(this.canvas.size.width,this.retina.pixelRatio,this._options);return this.actualOptions.setTheme(this._currentTheme),this._responsiveMaxWidth===e?!1:(this._responsiveMaxWidth=e,!0)}}class Cd{constructor(){this._listeners=new Map}addEventListener(e,i){this.removeEventListener(e,i);let n=this._listeners.get(e);n||(n=[],this._listeners.set(e,n)),n.push(i)}dispatchEvent(e,i){this._listeners.get(e)?.forEach(s=>s(i))}hasEventListener(e){return!!this._listeners.get(e)}removeAllEventListeners(e){e?this._listeners.delete(e):this._listeners=new Map}removeEventListener(e,i){const n=this._listeners.get(e);if(!n)return;const s=n.length,o=n.indexOf(i);o<po||(s===ns?this._listeners.delete(e):n.splice(o,ns))}}async function Rs(t,e,i,n=!1){let s=e.get(t);return(!s||n)&&(s=await Promise.all([...i.values()].map(o=>o(t))),e.set(t,s)),s}async function Pd(t){const e=Ae(t.url,t.index);if(!e)return t.fallback;const i=await fetch(e);return i.ok?await i.json():(wi().error(`${Ne} ${i.status} while retrieving config file`),t.fallback)}const Sd=t=>{let e;if(t instanceof HTMLCanvasElement||t.tagName.toLowerCase()===ks)e=t,e.dataset[ii]||(e.dataset[ii]=pr);else{const n=t.getElementsByTagName(ks);n.length?(e=n[Pf],e.dataset[ii]=pr):(e=document.createElement(ks),e.dataset[ii]=xl,t.appendChild(e))}const i="100%";return e.style.width||(e.style.width=i),e.style.height||(e.style.height=i),e},Md=(t,e)=>{let i=e??document.getElementById(t);return i||(i=document.createElement("div"),i.id=t,i.dataset[ii]=xl,document.body.append(i),i)};class Od{constructor(){this._configs=new Map,this._domArray=[],this._eventDispatcher=new Cd,this._initialized=!1,this.plugins=[],this.colorManagers=new Map,this.easingFunctions=new Map,this._initializers={interactors:new Map,movers:new Map,updaters:new Map},this.interactors=new Map,this.movers=new Map,this.updaters=new Map,this.presets=new Map,this.effectDrawers=new Map,this.shapeDrawers=new Map,this.pathGenerators=new Map}get configs(){const e={};for(const[i,n]of this._configs)e[i]=n;return e}get items(){return this._domArray}get version(){return"3.9.1"}async addColorManager(e,i=!0){this.colorManagers.set(e.key,e),await this.refresh(i)}addConfig(e){const i=e.key??e.name??"default";this._configs.set(i,e),this._eventDispatcher.dispatchEvent(fe.configAdded,{data:{name:i,config:e}})}async addEasing(e,i,n=!0){this.getEasing(e)||(this.easingFunctions.set(e,i),await this.refresh(n))}async addEffect(e,i,n=!0){ze(e,s=>{this.getEffectDrawer(s)||this.effectDrawers.set(s,i)}),await this.refresh(n)}addEventListener(e,i){this._eventDispatcher.addEventListener(e,i)}async addInteractor(e,i,n=!0){this._initializers.interactors.set(e,i),await this.refresh(n)}async addMover(e,i,n=!0){this._initializers.movers.set(e,i),await this.refresh(n)}async addParticleUpdater(e,i,n=!0){this._initializers.updaters.set(e,i),await this.refresh(n)}async addPathGenerator(e,i,n=!0){this.getPathGenerator(e)||this.pathGenerators.set(e,i),await this.refresh(n)}async addPlugin(e,i=!0){this.getPlugin(e.id)||this.plugins.push(e),await this.refresh(i)}async addPreset(e,i,n=!1,s=!0){(n||!this.getPreset(e))&&this.presets.set(e,i),await this.refresh(s)}async addShape(e,i=!0){for(const n of e.validTypes)this.getShapeDrawer(n)||this.shapeDrawers.set(n,e);await this.refresh(i)}checkVersion(e){if(this.version!==e)throw new Error(`The tsParticles version is different from the loaded plugins version. Engine version: ${this.version}. Plugin version: ${e}`)}clearPlugins(e){this.updaters.delete(e),this.movers.delete(e),this.interactors.delete(e)}dispatchEvent(e,i){this._eventDispatcher.dispatchEvent(e,i)}dom(){return this.items}domItem(e){return this.item(e)}async getAvailablePlugins(e){const i=new Map;for(const n of this.plugins)n.needsPlugin(e.actualOptions)&&i.set(n.id,await n.getPlugin(e));return i}getEasing(e){return this.easingFunctions.get(e)??(i=>i)}getEffectDrawer(e){return this.effectDrawers.get(e)}async getInteractors(e,i=!1){return Rs(e,this.interactors,this._initializers.interactors,i)}async getMovers(e,i=!1){return Rs(e,this.movers,this._initializers.movers,i)}getPathGenerator(e){return this.pathGenerators.get(e)}getPlugin(e){return this.plugins.find(i=>i.id===e)}getPreset(e){return this.presets.get(e)}getShapeDrawer(e){return this.shapeDrawers.get(e)}getSupportedEffects(){return this.effectDrawers.keys()}getSupportedShapes(){return this.shapeDrawers.keys()}async getUpdaters(e,i=!1){return Rs(e,this.updaters,this._initializers.updaters,i)}init(){this._initialized||(this._initialized=!0)}item(e){const{items:i}=this,n=i[e];if(!n||n.destroyed){i.splice(e,Cl);return}return n}async load(e){const i=e.id??e.element?.id??`tsparticles${Math.floor(A()*Sf)}`,{index:n,url:s}=e,o=s?await Pd({fallback:e.options,url:s,index:n}):e.options,r=Ae(o,n),{items:a}=this,l=a.findIndex(h=>h.id.description===i),c=new kd(this,i,r);if(l>=Mf){const h=this.item(l),d=h?Of:is;h&&!h.destroyed&&h.destroy(!1),a.splice(l,d,c)}else a.push(c);const u=Md(i,e.element),f=Sd(u);return c.canvas.loadCanvas(f),await c.start(),c}loadOptions(e,i){this.plugins.forEach(n=>n.loadOptions?.(e,i))}loadParticlesOptions(e,i,...n){const s=this.updaters.get(e);s&&s.forEach(o=>o.loadOptions?.(i,...n))}async refresh(e=!0){e&&await Promise.all(this.items.map(i=>i.refresh()))}removeEventListener(e,i){this._eventDispatcher.removeEventListener(e,i)}setOnClickHandler(e){const{items:i}=this;if(!i.length)throw new Error(`${Ne} can only set click handlers after calling tsParticles.load()`);i.forEach(n=>n.addClickHandler(e))}}function Ed(){const t=new Od;return t.init(),t}class pt{constructor(e){this.type=on.external,this.container=e}}class Xo{constructor(e){this.type=on.particles,this.container=e}}var Ye;(function(t){t.clockwise="clockwise",t.counterClockwise="counter-clockwise",t.random="random"})(Ye||(Ye={}));var qr;(function(t){t.linear="linear",t.radial="radial",t.random="random"})(qr||(qr={}));var hi;(function(t){t.easeInBack="ease-in-back",t.easeInCirc="ease-in-circ",t.easeInCubic="ease-in-cubic",t.easeInLinear="ease-in-linear",t.easeInQuad="ease-in-quad",t.easeInQuart="ease-in-quart",t.easeInQuint="ease-in-quint",t.easeInExpo="ease-in-expo",t.easeInSine="ease-in-sine",t.easeOutBack="ease-out-back",t.easeOutCirc="ease-out-circ",t.easeOutCubic="ease-out-cubic",t.easeOutLinear="ease-out-linear",t.easeOutQuad="ease-out-quad",t.easeOutQuart="ease-out-quart",t.easeOutQuint="ease-out-quint",t.easeOutExpo="ease-out-expo",t.easeOutSine="ease-out-sine",t.easeInOutBack="ease-in-out-back",t.easeInOutCirc="ease-in-out-circ",t.easeInOutCubic="ease-in-out-cubic",t.easeInOutLinear="ease-in-out-linear",t.easeInOutQuad="ease-in-out-quad",t.easeInOutQuart="ease-in-out-quart",t.easeInOutQuint="ease-in-out-quint",t.easeInOutExpo="ease-in-out-expo",t.easeInOutSine="ease-in-out-sine"})(hi||(hi={}));const kn=Ed();_i()||(window.tsParticles=kn);const Ql=Qc(!1);var zd=Su("<div></div>");function Rd(t,e){Ma(e,!1);let i=fn(e,"class",12,""),n=!1,s=!1,o=fn(e,"style",12,""),r=fn(e,"options",28,()=>({})),a=fn(e,"url",12,""),l=fn(e,"id",12,"tsparticles");const c=ef(),u="particlesLoaded";let f=l();function h(){if(f){const y=kn.dom().find(w=>w.id.toString()===f);y&&y.destroy()}}const d=Ql.subscribe(y=>{n=y,v()});Zu(()=>{d(),h()}),wl(()=>{s=!0,v()});async function v(){if(h(),!(!n||!s))if(l()){const y=b=>{c(u,{particles:b}),f=l()},w=await kn.load({id:l(),options:r(),url:a()});y(w)}else c(u,{particles:void 0})}tf(async()=>{await v()});var g={get class(){return i()},set class(y){i(y),Kt()},get style(){return o()},set style(y){o(y),Kt()},get options(){return r()},set options(y){r(y),Kt()},get url(){return a()},set url(y){a(y),Kt()},get id(){return l()},set id(y){l(y),Kt()}};Xu();var p=zd();return tl(()=>{lo(p,"id",l()),Uu(p,1,$u(i())),Hu(p,o())}),Ou(t,p),Oa(g)}async function Td(t){kn.init(),await t(kn),Ql.set(!0)}const My=Object.freeze(Object.defineProperty({__proto__:null,default:Rd,particlesInit:Td},Symbol.toStringTag,{value:"Module"})),bo=.5,Dd=2,Bt=0,Xe=1,$r=60,Nr=0,Id=.01,Ld=Math.PI*Dd;function Ad(t){const e=t.initialPosition,{dx:i,dy:n}=de(e,t.position),s=Math.abs(i),o=Math.abs(n),{maxDistance:r}=t.retina,a=r.horizontal,l=r.vertical;if(!a&&!l)return;const c=(a&&s>=a)??!1,u=(l&&o>=l)??!1;if((c||u)&&!t.misplaced)t.misplaced=!!a&&s>a||!!l&&o>l,a&&(t.velocity.x=t.velocity.y*bo-t.velocity.x),l&&(t.velocity.y=t.velocity.x*bo-t.velocity.y);else if((!a||s<a)&&(!l||o<l)&&t.misplaced)t.misplaced=!1;else if(t.misplaced){const f=t.position,h=t.velocity;a&&(f.x<e.x&&h.x<Bt||f.x>e.x&&h.x>Bt)&&(h.x*=-A()),l&&(f.y<e.y&&h.y<Bt||f.y>e.y&&h.y>Bt)&&(h.y*=-A())}}function Fd(t,e,i,n,s,o,r){qd(t,r);const a=t.gravity,l=a?.enable&&a.inverse?-Xe:Xe;s&&i&&(t.velocity.x+=s*r.factor/($r*i)),a?.enable&&i&&(t.velocity.y+=l*(a.acceleration*r.factor)/($r*i));const c=t.moveDecay;t.velocity.multTo(c);const u=t.velocity.mult(i);a?.enable&&n>Bt&&(!a.inverse&&u.y>=Bt&&u.y>=n||a.inverse&&u.y<=Bt&&u.y<=-n)&&(u.y=l*n,i&&(t.velocity.y=u.y/i));const f=t.options.zIndex,h=(Xe-t.zIndexFactor)**f.velocityRate;u.multTo(h),u.multTo(o);const{position:d}=t;d.addTo(u),e.vibrate&&(d.x+=Math.sin(d.x*Math.cos(d.y))*o,d.y+=Math.cos(d.y*Math.sin(d.x))*o)}function Bd(t,e,i){const n=t.container;if(!t.spin)return;const s=t.spin.direction===Ye.clockwise,o={x:s?Math.cos:Math.sin,y:s?Math.sin:Math.cos};t.position.x=t.spin.center.x+t.spin.radius*o.x(t.spin.angle)*i,t.position.y=t.spin.center.y+t.spin.radius*o.y(t.spin.angle)*i,t.spin.radius+=t.spin.acceleration*i;const r=Math.max(n.canvas.size.width,n.canvas.size.height),a=r*bo;t.spin.radius>a?(t.spin.radius=a,t.spin.acceleration*=-Xe):t.spin.radius<Nr&&(t.spin.radius=Nr,t.spin.acceleration*=-Xe),t.spin.angle+=e*Id*(Xe-t.spin.radius/r)}function qd(t,e){const i=t.options,n=i.move.path;if(!n.enable)return;if(t.lastPathTime<=t.pathDelay){t.lastPathTime+=e.value;return}const o=t.pathGenerator?.generate(t,e);o&&t.velocity.addTo(o),n.clamp&&(t.velocity.x=Ve(t.velocity.x,-Xe,Xe),t.velocity.y=Ve(t.velocity.y,-Xe,Xe)),t.lastPathTime-=t.pathDelay}function $d(t){return t.slow.inRange?t.slow.factor:Xe}function Nd(t){const e=t.container,i=t.options,n=i.move.spin;if(!n.enable)return;const s=n.position??{x:50,y:50},o=.01,r={x:s.x*o*e.canvas.size.width,y:s.y*o*e.canvas.size.height},a=t.getPosition(),l=Oe(a,r),c=k(n.acceleration);t.retina.spinAcceleration=c*e.retina.pixelRatio,t.spin={center:r,direction:t.velocity.x>=Bt?Ye.clockwise:Ye.counterClockwise,angle:A()*Ld,radius:l,acceleration:t.retina.spinAcceleration}}const Vd=2,Ud=1,Hd=1;class Wd{init(e){const i=e.options,n=i.move.gravity;e.gravity={enable:n.enable,acceleration:k(n.acceleration),inverse:n.inverse},Nd(e)}isEnabled(e){return!e.destroyed&&e.options.move.enable}move(e,i){var p,y;const n=e.options,s=n.move;if(!s.enable)return;const o=e.container,r=o.retina.pixelRatio;(p=e.retina).moveSpeed??(p.moveSpeed=k(s.speed)*r),(y=e.retina).moveDrift??(y.moveDrift=k(e.options.move.drift)*r);const a=$d(e),l=o.retina.reduceFactor,c=e.retina.moveSpeed,u=e.retina.moveDrift,f=ut(n.size.value)*r,h=s.size?e.getRadius()/f:Ud,d=i.factor||Hd,v=c*h*a*d/Vd,g=e.retina.maxSpeed??o.retina.maxSpeed;s.spin.enable?Bd(e,v,l):Fd(e,s,v,g,u,l,i),Ad(e)}}async function jd(t,e=!0){t.checkVersion("3.9.1"),await t.addMover("base",()=>Promise.resolve(new Wd),e)}const Gd=2,Yd=Math.PI*Gd,Qd=0,Vr={x:0,y:0};function Xd(t){const{context:e,particle:i,radius:n}=t;i.circleRange||(i.circleRange={min:Qd,max:Yd});const s=i.circleRange;e.arc(Vr.x,Vr.y,n,s.min,s.max,!1)}const Kd=12,Zd=360,Ur=0;class Jd{constructor(){this.validTypes=["circle"]}draw(e){Xd(e)}getSidesCount(){return Kd}particleInit(e,i){const n=i.shapeData,s=n?.angle??{max:Zd,min:Ur};i.circleRange=Ti(s)?{min:Nt(s.min),max:Nt(s.max)}:{min:Ur,max:Nt(s)}}}async function ep(t,e=!0){t.checkVersion("3.9.1"),await t.addShape(new Jd,e)}class tp{constructor(e,i){this._container=e,this._engine=i}init(e){const i=bn(this._engine,e.options.color,e.id,e.options.reduceDuplicates);i&&(e.color=Nl(i,e.options.color.animation,this._container.retina.reduceFactor))}isEnabled(e){const{h:i,s:n,l:s}=e.options.color.animation,{color:o}=e;return!e.destroyed&&!e.spawning&&(o?.h.value!==void 0&&i.enable||o?.s.value!==void 0&&n.enable||o?.l.value!==void 0&&s.enable)}update(e,i){Vl(e.color,i)}}async function ip(t,e=!0){t.checkVersion("3.9.1"),await t.addParticleUpdater("color",i=>Promise.resolve(new tp(i,t)),e)}var Zt;(function(t){t[t.r=1]="r",t[t.g=2]="g",t[t.b=3]="b",t[t.a=4]="a"})(Zt||(Zt={}));const np=/^#?([a-f\d])([a-f\d])([a-f\d])([a-f\d])?$/i,sp=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i,Fn=16,op=1,rp=255;class ap{constructor(){this.key="hex",this.stringPrefix="#"}handleColor(e){return this._parseString(e.value)}handleRangeColor(e){return this._parseString(e.value)}parseString(e){return this._parseString(e)}_parseString(e){if(typeof e!="string"||!e?.startsWith(this.stringPrefix))return;const i=e.replace(np,(s,o,r,a,l)=>o+o+r+r+a+a+(l!==void 0?l+l:"")),n=sp.exec(i);return n?{a:n[Zt.a]!==void 0?parseInt(n[Zt.a],Fn)/rp:op,b:parseInt(n[Zt.b],Fn),g:parseInt(n[Zt.g],Fn),r:parseInt(n[Zt.r],Fn)}:void 0}}async function lp(t,e=!0){t.checkVersion("3.9.1"),await t.addColorManager(new ap,e)}var Di;(function(t){t[t.h=1]="h",t[t.s=2]="s",t[t.l=3]="l",t[t.a=5]="a"})(Di||(Di={}));class cp{constructor(){this.key="hsl",this.stringPrefix="hsl"}handleColor(e){const i=e.value,n=i.hsl??e.value;if(n.h!==void 0&&n.s!==void 0&&n.l!==void 0)return nn(n)}handleRangeColor(e){const i=e.value,n=i.hsl??e.value;if(n.h!==void 0&&n.l!==void 0)return nn({h:k(n.h),l:k(n.l),s:k(n.s)})}parseString(e){if(!e.startsWith("hsl"))return;const i=/hsla?\(\s*(\d+)\s*[\s,]\s*(\d+)%\s*[\s,]\s*(\d+)%\s*([\s,]\s*(0|1|0?\.\d+|(\d{1,3})%)\s*)?\)/i,n=i.exec(e),s=4,o=1,r=10;return n?ph({a:n.length>s?zl(n[Di.a]):o,h:parseInt(n[Di.h],r),l:parseInt(n[Di.l],r),s:parseInt(n[Di.s],r)}):void 0}}async function up(t,e=!0){t.checkVersion("3.9.1"),await t.addColorManager(new cp,e)}class fp{constructor(e){this.container=e}init(e){const i=e.options.opacity,n=1;e.opacity=Ll(i,n);const s=i.animation;s.enable&&(e.opacity.velocity=k(s.speed)/Ft*this.container.retina.reduceFactor,s.sync||(e.opacity.velocity*=A()))}isEnabled(e){return!e.destroyed&&!e.spawning&&!!e.opacity&&e.opacity.enable&&((e.opacity.maxLoops??0)<=0||(e.opacity.maxLoops??0)>0&&(e.opacity.loops??0)<(e.opacity.maxLoops??0))}reset(e){e.opacity&&(e.opacity.time=0,e.opacity.loops=0)}update(e,i){!this.isEnabled(e)||!e.opacity||jo(e,e.opacity,!0,e.options.opacity.animation.destroy,i)}}async function hp(t,e=!0){t.checkVersion("3.9.1"),await t.addParticleUpdater("opacity",i=>Promise.resolve(new fp(i)),e)}const os=0,$i=0;function dp(t){if(t.outMode!==G.bounce&&t.outMode!==G.split||t.direction!==T.left&&t.direction!==T.right)return;t.bounds.right<$i&&t.direction===T.left?t.particle.position.x=t.size+t.offset.x:t.bounds.left>t.canvasSize.width&&t.direction===T.right&&(t.particle.position.x=t.canvasSize.width-t.size-t.offset.x);const e=t.particle.velocity.x;let i=!1;if(t.direction===T.right&&t.bounds.right>=t.canvasSize.width&&e>os||t.direction===T.left&&t.bounds.left<=$i&&e<os){const s=k(t.particle.options.bounce.horizontal.value);t.particle.velocity.x*=-s,i=!0}if(!i)return;const n=t.offset.x+t.size;t.bounds.right>=t.canvasSize.width&&t.direction===T.right?t.particle.position.x=t.canvasSize.width-n:t.bounds.left<=$i&&t.direction===T.left&&(t.particle.position.x=n),t.outMode===G.split&&t.particle.destroy()}function pp(t){if(t.outMode!==G.bounce&&t.outMode!==G.split||t.direction!==T.bottom&&t.direction!==T.top)return;t.bounds.bottom<$i&&t.direction===T.top?t.particle.position.y=t.size+t.offset.y:t.bounds.top>t.canvasSize.height&&t.direction===T.bottom&&(t.particle.position.y=t.canvasSize.height-t.size-t.offset.y);const e=t.particle.velocity.y;let i=!1;if(t.direction===T.bottom&&t.bounds.bottom>=t.canvasSize.height&&e>os||t.direction===T.top&&t.bounds.top<=$i&&e<os){const s=k(t.particle.options.bounce.vertical.value);t.particle.velocity.y*=-s,i=!0}if(!i)return;const n=t.offset.y+t.size;t.bounds.bottom>=t.canvasSize.height&&t.direction===T.bottom?t.particle.position.y=t.canvasSize.height-n:t.bounds.top<=$i&&t.direction===T.top&&(t.particle.position.y=n),t.outMode===G.split&&t.particle.destroy()}class vp{constructor(e){this.container=e,this.modes=[G.bounce,G.split]}update(e,i,n,s){if(!this.modes.includes(s))return;const o=this.container;let r=!1;for(const h of o.plugins.values())if(h.particleBounce!==void 0&&(r=h.particleBounce(e,n,i)),r)break;if(r)return;const a=e.getPosition(),l=e.offset,c=e.getRadius(),u=Dn(a,c),f=o.canvas.size;dp({particle:e,outMode:s,direction:i,bounds:u,canvasSize:f,offset:l,size:c}),pp({particle:e,outMode:s,direction:i,bounds:u,canvasSize:f,offset:l,size:c})}}const Bn=0;class mp{constructor(e){this.container=e,this.modes=[G.destroy]}update(e,i,n,s){if(!this.modes.includes(s))return;const o=this.container;switch(e.outType){case Ze.normal:case Ze.outside:if(Uo(e.position,o.canvas.size,Z.origin,e.getRadius(),i))return;break;case Ze.inside:{const{dx:r,dy:a}=de(e.position,e.moveCenter),{x:l,y:c}=e.velocity;if(l<Bn&&r>e.moveCenter.radius||c<Bn&&a>e.moveCenter.radius||l>=Bn&&r<-e.moveCenter.radius||c>=Bn&&a<-e.moveCenter.radius)return;break}}o.particles.remove(e,e.group,!0)}}const qn=0;class gp{constructor(e){this.container=e,this.modes=[G.none]}update(e,i,n,s){if(!this.modes.includes(s)||((e.options.move.distance.horizontal&&(i===T.left||i===T.right))??(e.options.move.distance.vertical&&(i===T.top||i===T.bottom))))return;const o=e.options.move.gravity,r=this.container,a=r.canvas.size,l=e.getRadius();if(o.enable){const c=e.position;(!o.inverse&&c.y>a.height+l&&i===T.bottom||o.inverse&&c.y<-l&&i===T.top)&&r.particles.remove(e)}else{if(e.velocity.y>qn&&e.position.y<=a.height+l||e.velocity.y<qn&&e.position.y>=-l||e.velocity.x>qn&&e.position.x<=a.width+l||e.velocity.x<qn&&e.position.x>=-l)return;Uo(e.position,r.canvas.size,Z.origin,l,i)||r.particles.remove(e)}}}const $n=0,Nn=0;class yp{constructor(e){this.container=e,this.modes=[G.out]}update(e,i,n,s){if(!this.modes.includes(s))return;const o=this.container;switch(e.outType){case Ze.inside:{const{x:r,y:a}=e.velocity,l=Z.origin;l.length=e.moveCenter.radius,l.angle=e.velocity.angle+Math.PI,l.addTo(Z.create(e.moveCenter));const{dx:c,dy:u}=de(e.position,l);if(r<=$n&&c>=Nn||a<=$n&&u>=Nn||r>=$n&&c<=Nn||a>=$n&&u<=Nn)return;e.position.x=Math.floor(Pe({min:0,max:o.canvas.size.width})),e.position.y=Math.floor(Pe({min:0,max:o.canvas.size.height}));const{dx:f,dy:h}=de(e.position,e.moveCenter);e.direction=Math.atan2(-h,-f),e.velocity.angle=e.direction;break}default:{if(Uo(e.position,o.canvas.size,Z.origin,e.getRadius(),i))return;switch(e.outType){case Ze.outside:{e.position.x=Math.floor(Pe({min:-e.moveCenter.radius,max:e.moveCenter.radius}))+e.moveCenter.x,e.position.y=Math.floor(Pe({min:-e.moveCenter.radius,max:e.moveCenter.radius}))+e.moveCenter.y;const{dx:r,dy:a}=de(e.position,e.moveCenter);e.moveCenter.radius&&(e.direction=Math.atan2(a,r),e.velocity.angle=e.direction);break}case Ze.normal:{const r=e.options.move.warp,a=o.canvas.size,l={bottom:a.height+e.getRadius()+e.offset.y,left:-e.getRadius()-e.offset.x,right:a.width+e.getRadius()+e.offset.x,top:-e.getRadius()-e.offset.y},c=e.getRadius(),u=Dn(e.position,c);i===T.right&&u.left>a.width+e.offset.x?(e.position.x=l.left,e.initialPosition.x=e.position.x,r||(e.position.y=A()*a.height,e.initialPosition.y=e.position.y)):i===T.left&&u.right<-e.offset.x&&(e.position.x=l.right,e.initialPosition.x=e.position.x,r||(e.position.y=A()*a.height,e.initialPosition.y=e.position.y)),i===T.bottom&&u.top>a.height+e.offset.y?(r||(e.position.x=A()*a.width,e.initialPosition.x=e.position.x),e.position.y=l.top,e.initialPosition.y=e.position.y):i===T.top&&u.bottom<-e.offset.y&&(r||(e.position.x=A()*a.width,e.initialPosition.x=e.position.x),e.position.y=l.bottom,e.initialPosition.y=e.position.y);break}}break}}}}const bp=(t,e)=>t.default===e||t.bottom===e||t.left===e||t.right===e||t.top===e;class wp{constructor(e){this._addUpdaterIfMissing=(i,n,s)=>{const o=i.options.move.outModes;!this.updaters.has(n)&&bp(o,n)&&this.updaters.set(n,s(this.container))},this._updateOutMode=(i,n,s,o)=>{for(const r of this.updaters.values())r.update(i,o,n,s)},this.container=e,this.updaters=new Map}init(e){this._addUpdaterIfMissing(e,G.bounce,i=>new vp(i)),this._addUpdaterIfMissing(e,G.out,i=>new yp(i)),this._addUpdaterIfMissing(e,G.destroy,i=>new mp(i)),this._addUpdaterIfMissing(e,G.none,i=>new gp(i))}isEnabled(e){return!e.destroyed&&!e.spawning}update(e,i){const n=e.options.move.outModes;this._updateOutMode(e,i,n.bottom??n.default,T.bottom),this._updateOutMode(e,i,n.left??n.default,T.left),this._updateOutMode(e,i,n.right??n.default,T.right),this._updateOutMode(e,i,n.top??n.default,T.top)}}async function _p(t,e=!0){t.checkVersion("3.9.1"),await t.addParticleUpdater("outModes",i=>Promise.resolve(new wp(i)),e)}var Ii;(function(t){t[t.r=1]="r",t[t.g=2]="g",t[t.b=3]="b",t[t.a=5]="a"})(Ii||(Ii={}));class xp{constructor(){this.key="rgb",this.stringPrefix="rgb"}handleColor(e){const i=e.value,n=i.rgb??e.value;if(n.r!==void 0)return n}handleRangeColor(e){const i=e.value,n=i.rgb??e.value;if(n.r!==void 0)return{r:k(n.r),g:k(n.g),b:k(n.b)}}parseString(e){if(!e.startsWith(this.stringPrefix))return;const i=/rgba?\(\s*(\d{1,3})\s*[\s,]\s*(\d{1,3})\s*[\s,]\s*(\d{1,3})\s*([\s,]\s*(0|1|0?\.\d+|(\d{1,3})%)\s*)?\)/i,n=i.exec(e),s=10;return n?{a:n.length>4?zl(n[Ii.a]):1,b:parseInt(n[Ii.b],s),g:parseInt(n[Ii.g],s),r:parseInt(n[Ii.r],s)}:void 0}}async function kp(t,e=!0){t.checkVersion("3.9.1"),await t.addColorManager(new xp,e)}const Gt=0;class Cp{init(e){const i=e.container,n=e.options.size,s=n.animation;s.enable&&(e.size.velocity=(e.retina.sizeAnimationSpeed??i.retina.sizeAnimationSpeed)/Ft*i.retina.reduceFactor,s.sync||(e.size.velocity*=A()))}isEnabled(e){return!e.destroyed&&!e.spawning&&e.size.enable&&((e.size.maxLoops??Gt)<=Gt||(e.size.maxLoops??Gt)>Gt&&(e.size.loops??Gt)<(e.size.maxLoops??Gt))}reset(e){e.size.loops=Gt}update(e,i){this.isEnabled(e)&&jo(e,e.size,!0,e.options.size.animation.destroy,i)}}async function Pp(t,e=!0){t.checkVersion("3.9.1"),await t.addParticleUpdater("size",()=>Promise.resolve(new Cp),e)}async function Sp(t,e=!0){t.checkVersion("3.9.1"),await lp(t,!1),await up(t,!1),await kp(t,!1),await jd(t,!1),await ep(t,!1),await ip(t,!1),await hp(t,!1),await _p(t,!1),await Pp(t,!1),await t.refresh(e)}async function Mp(t,e=!0){t.checkVersion("3.9.1"),await t.addEasing(hi.easeInQuad,i=>i**2,!1),await t.addEasing(hi.easeOutQuad,i=>1-(1-i)**2,!1),await t.addEasing(hi.easeInOutQuad,i=>i<.5?2*i**2:1-(-2*i+2)**2/2,!1),await t.refresh(e)}function Op(t,e){const{context:i,opacity:n}=t,s=.5,o=i.globalAlpha;if(!e)return;const r=e.width,a=r*s;i.globalAlpha=n,i.drawImage(e,-a,-a,r,r),i.globalAlpha=o}const Ts='"Twemoji Mozilla", Apple Color Emoji, "Segoe UI Emoji", "Noto Color Emoji", "EmojiOne Color"',Hr=0;class Ep{constructor(){this.validTypes=["emoji"],this._emojiShapeDict=new Map}destroy(){for(const[e,i]of this._emojiShapeDict)i instanceof ImageBitmap&&i?.close(),this._emojiShapeDict.delete(e)}draw(e){const i=e.particle.emojiDataKey;if(!i)return;const n=this._emojiShapeDict.get(i);n&&Op(e,n)}async init(e){const i=e.actualOptions,{validTypes:n}=this;if(!n.find(r=>U(r,i.particles.shape.type)))return;const s=[Rr(Ts)],o=n.map(r=>i.particles.shape.options[r]).find(r=>!!r);o&&ze(o,r=>{r.font&&s.push(Rr(r.font))}),await Promise.all(s)}particleDestroy(e){e.emojiDataKey=void 0}particleInit(e,i){const s=i.shapeData;if(!s?.value)return;const o=Ae(s.value,i.randomIndexData);if(!o)return;const r=typeof o=="string"?{font:s.font??Ts,padding:s.padding??Hr,value:o}:{font:Ts,padding:Hr,...s,...o},a=r.font,l=r.value,c=`${l}_${a}`;if(this._emojiShapeDict.has(c)){i.emojiDataKey=c;return}const u=r.padding*2,f=ut(i.size.value),h=f+u,d=h*2;let v;if(typeof OffscreenCanvas<"u"){const g=new OffscreenCanvas(d,d),p=g.getContext("2d");if(!p)return;p.font=`400 ${f*2}px ${a}`,p.textBaseline="middle",p.textAlign="center",p.fillText(l,h,h),v=g.transferToImageBitmap()}else{const g=document.createElement("canvas");g.width=d,g.height=d;const p=g.getContext("2d");if(!p)return;p.font=`400 ${f*2}px ${a}`,p.textBaseline="middle",p.textAlign="center",p.fillText(l,h,h),v=g}this._emojiShapeDict.set(c,v),i.emojiDataKey=c}}async function zp(t,e=!0){t.checkVersion("3.9.1"),await t.addShape(new Ep,e)}const Rp=1,Tp=1,Xl=0;function Kl(t,e,i,n,s,o){const r=e.actualOptions.interactivity.modes.attract;if(!r)return;const a=e.particles.quadTree.query(s,o);for(const l of a){const{dx:c,dy:u,distance:f}=de(l.position,i),h=r.speed*r.factor,d=Ve(t.getEasing(r.easing)(Tp-f/n)*h,Rp,r.maxSpeed),v=Z.create(f?c/f*d:h,f?u/f*d:h);l.position.subFrom(v)}}function Dp(t,e,i){e.attract||(e.attract={particles:[]});const{attract:n}=e;if(n.finish||(n.count||(n.count=0),n.count++,n.count===e.particles.count&&(n.finish=!0)),n.clicking){const s=e.interactivity.mouse.clickPosition,o=e.retina.attractModeDistance;if(!o||o<Xl||!s)return;Kl(t,e,s,o,new re(s.x,s.y,o),r=>i(r))}else n.clicking===!1&&(n.particles=[])}function Ip(t,e,i){const n=e.interactivity.mouse.position,s=e.retina.attractModeDistance;!s||s<Xl||!n||Kl(t,e,n,s,new re(n.x,n.y,s),o=>i(o))}class Lp{constructor(){this.distance=200,this.duration=.4,this.easing=hi.easeOutQuad,this.factor=1,this.maxSpeed=50,this.speed=1}load(e){x(e)||(e.distance!==void 0&&(this.distance=e.distance),e.duration!==void 0&&(this.duration=e.duration),e.easing!==void 0&&(this.easing=e.easing),e.factor!==void 0&&(this.factor=e.factor),e.maxSpeed!==void 0&&(this.maxSpeed=e.maxSpeed),e.speed!==void 0&&(this.speed=e.speed))}}const hn="attract";let Ap=class extends pt{constructor(e,i){super(i),this._engine=e,i.attract||(i.attract={particles:[]}),this.handleClickMode=n=>{const s=this.container.actualOptions,o=s.interactivity.modes.attract;if(!(!o||n!==hn)){i.attract||(i.attract={particles:[]}),i.attract.clicking=!0,i.attract.count=0;for(const r of i.attract.particles)this.isEnabled(r)&&r.velocity.setTo(r.initialVelocity);i.attract.particles=[],i.attract.finish=!1,setTimeout(()=>{i.destroyed||(i.attract||(i.attract={particles:[]}),i.attract.clicking=!1)},o.duration*se)}}}clear(){}init(){const e=this.container,i=e.actualOptions.interactivity.modes.attract;i&&(e.retina.attractModeDistance=i.distance*e.retina.pixelRatio)}interact(){const e=this.container,i=e.actualOptions,n=e.interactivity.status===yi,s=i.interactivity.events,{enable:o,mode:r}=s.onHover,{enable:a,mode:l}=s.onClick;n&&o&&U(hn,r)?Ip(this._engine,this.container,c=>this.isEnabled(c)):a&&U(hn,l)&&Dp(this._engine,this.container,c=>this.isEnabled(c))}isEnabled(e){const i=this.container,n=i.actualOptions,s=i.interactivity.mouse,o=(e?.interactivity??n.interactivity).events;if((!s.position||!o.onHover.enable)&&(!s.clickPosition||!o.onClick.enable))return!1;const r=o.onHover.mode,a=o.onClick.mode;return U(hn,r)||U(hn,a)}loadModeOptions(e,...i){e.attract||(e.attract=new Lp);for(const n of i)e.attract.load(n?.attract)}reset(){}};async function Fp(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalAttract",i=>Promise.resolve(new Ap(t,i)),e)}const Bp=2,Kn=.5,qp=Math.PI*Kn,Wr=2,Zl=10,$p=0;function Jl(t,e,i,n,s){const o=t.particles.quadTree.query(n,s);for(const r of o)n instanceof re?Dl(mo(r),{position:e,mass:i**Bp*qp,velocity:Z.origin,factor:Z.origin}):n instanceof tt&&rh(r,Dn(e,i))}function Np(t,e,i,n){const s=document.querySelectorAll(e);s.length&&s.forEach(o=>{const r=o,a=t.retina.pixelRatio,l={x:(r.offsetLeft+r.offsetWidth*Kn)*a,y:(r.offsetTop+r.offsetHeight*Kn)*a},c=r.offsetWidth*Kn*a,u=Zl*a,f=i.type===sn.circle?new re(l.x,l.y,c+u):new tt(r.offsetLeft*a-u,r.offsetTop*a-u,r.offsetWidth*a+u*Wr,r.offsetHeight*a+u*Wr);n(l,c,f)})}function Vp(t,e,i,n){Wo(i,e,(s,o)=>Np(t,s,o,(r,a,l)=>Jl(t,r,a,l,n)))}function Up(t,e){const i=t.retina.pixelRatio,n=Zl*i,s=t.interactivity.mouse.position,o=t.retina.bounceModeDistance;!o||o<$p||!s||Jl(t,s,o,new re(s.x,s.y,o+n),e)}class Hp{constructor(){this.distance=200}load(e){x(e)||e.distance!==void 0&&(this.distance=e.distance)}}const Vn="bounce";class Wp extends pt{constructor(e){super(e)}clear(){}init(){const e=this.container,i=e.actualOptions.interactivity.modes.bounce;i&&(e.retina.bounceModeDistance=i.distance*e.retina.pixelRatio)}interact(){const e=this.container,i=e.actualOptions,n=i.interactivity.events,s=e.interactivity.status===yi,o=n.onHover.enable,r=n.onHover.mode,a=n.onDiv;s&&o&&U(Vn,r)?Up(this.container,l=>this.isEnabled(l)):Vp(this.container,a,Vn,l=>this.isEnabled(l))}isEnabled(e){const i=this.container,n=i.actualOptions,s=i.interactivity.mouse,o=(e?.interactivity??n.interactivity).events,r=o.onDiv;return!!s.position&&o.onHover.enable&&U(Vn,o.onHover.mode)||Ho(Vn,r)}loadModeOptions(e,...i){e.bounce||(e.bounce=new Hp);for(const n of i)e.bounce.load(n?.bounce)}reset(){}}async function jp(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalBounce",i=>Promise.resolve(new Wp(i)),e)}class ec{constructor(){this.distance=200,this.duration=.4,this.mix=!1}load(e){if(!x(e)){if(e.distance!==void 0&&(this.distance=e.distance),e.duration!==void 0&&(this.duration=e.duration),e.mix!==void 0&&(this.mix=e.mix),e.opacity!==void 0&&(this.opacity=e.opacity),e.color!==void 0){const i=dt(this.color)?void 0:this.color;this.color=ze(e.color,n=>ce.create(i,n))}e.size!==void 0&&(this.size=e.size)}}}class Gp extends ec{constructor(){super(),this.selectors=[]}load(e){super.load(e),!x(e)&&e.selectors!==void 0&&(this.selectors=e.selectors)}}class Yp extends ec{load(e){super.load(e),!x(e)&&(this.divs=ze(e.divs,i=>{const n=new Gp;return n.load(i),n}))}}var nt;(function(t){t.color="color",t.opacity="opacity",t.size="size"})(nt||(nt={}));function jr(t,e,i,n){if(e>=i){const s=t+(e-i)*n;return Ve(s,t,e)}else if(e<i){const s=t-(i-e)*n;return Ve(s,e,t)}}const Yt="bubble",Ds=0,Qp=0,Xp=2,Gr=1,Yr=1,Kp=0,Zp=0,Is=.5,Ls=1;class Jp extends pt{constructor(e,i){super(e),this._clickBubble=()=>{const n=this.container,s=n.actualOptions,o=n.interactivity.mouse.clickPosition,r=s.interactivity.modes.bubble;if(!r||!o)return;n.bubble||(n.bubble={});const a=n.retina.bubbleModeDistance;if(!a||a<Ds)return;const l=n.particles.quadTree.queryCircle(o,a,u=>this.isEnabled(u)),{bubble:c}=n;for(const u of l){if(!c.clicking)continue;u.bubble.inRange=!c.durationEnd;const f=u.getPosition(),h=Oe(f,o),d=(new Date().getTime()-(n.interactivity.mouse.clickTime??Qp))/se;d>r.duration&&(c.durationEnd=!0),d>r.duration*Xp&&(c.clicking=!1,c.durationEnd=!1);const v={bubbleObj:{optValue:n.retina.bubbleModeSize,value:u.bubble.radius},particlesObj:{optValue:ut(u.options.size.value)*n.retina.pixelRatio,value:u.size.value},type:nt.size};this._process(u,h,d,v);const g={bubbleObj:{optValue:r.opacity,value:u.bubble.opacity},particlesObj:{optValue:ut(u.options.opacity.value),value:u.opacity?.value??Gr},type:nt.opacity};this._process(u,h,d,g),!c.durationEnd&&h<=a?this._hoverBubbleColor(u,h):delete u.bubble.color}},this._hoverBubble=()=>{const n=this.container,s=n.interactivity.mouse.position,o=n.retina.bubbleModeDistance;if(!o||o<Ds||!s)return;const r=n.particles.quadTree.queryCircle(s,o,a=>this.isEnabled(a));for(const a of r){a.bubble.inRange=!0;const l=a.getPosition(),c=Oe(l,s),u=Yr-c/o;c<=o?u>=Zp&&n.interactivity.status===yi&&(this._hoverBubbleSize(a,u),this._hoverBubbleOpacity(a,u),this._hoverBubbleColor(a,u)):this.reset(a),n.interactivity.status===co&&this.reset(a)}},this._hoverBubbleColor=(n,s,o)=>{const r=this.container.actualOptions,a=o??r.interactivity.modes.bubble;if(a){if(!n.bubble.finalColor){const l=a.color;if(!l)return;const c=Ae(l);n.bubble.finalColor=bn(this._engine,c)}if(n.bubble.finalColor)if(a.mix){n.bubble.color=void 0;const l=n.getFillColor();n.bubble.color=l?Bl(Go(l,n.bubble.finalColor,Yr-s,s)):n.bubble.finalColor}else n.bubble.color=n.bubble.finalColor}},this._hoverBubbleOpacity=(n,s,o)=>{const r=this.container,a=r.actualOptions,l=o?.opacity??a.interactivity.modes.bubble?.opacity;if(!l)return;const c=n.options.opacity.value,u=n.opacity?.value??Gr,f=jr(u,l,ut(c),s);f!==void 0&&(n.bubble.opacity=f)},this._hoverBubbleSize=(n,s,o)=>{const r=this.container,a=o?.size?o.size*r.retina.pixelRatio:r.retina.bubbleModeSize;if(a===void 0)return;const l=ut(n.options.size.value)*r.retina.pixelRatio,c=n.size.value,u=jr(c,a,l,s);u!==void 0&&(n.bubble.radius=u)},this._process=(n,s,o,r)=>{const a=this.container,l=r.bubbleObj.optValue,c=a.actualOptions,u=c.interactivity.modes.bubble;if(!u||l===void 0)return;const f=u.duration,h=a.retina.bubbleModeDistance,d=r.particlesObj.optValue,v=r.bubbleObj.value,g=r.particlesObj.value??Kp,p=r.type;if(!(!h||h<Ds||l===d))if(a.bubble||(a.bubble={}),a.bubble.durationEnd)v&&(p===nt.size&&delete n.bubble.radius,p===nt.opacity&&delete n.bubble.opacity);else if(s<=h){if((v??g)!==l){const w=g-o*(g-l)/f;p===nt.size&&(n.bubble.radius=w),p===nt.opacity&&(n.bubble.opacity=w)}}else p===nt.size&&delete n.bubble.radius,p===nt.opacity&&delete n.bubble.opacity},this._singleSelectorHover=(n,s,o)=>{const r=this.container,a=document.querySelectorAll(s),l=r.actualOptions.interactivity.modes.bubble;!l||!a.length||a.forEach(c=>{const u=c,f=r.retina.pixelRatio,h={x:(u.offsetLeft+u.offsetWidth*Is)*f,y:(u.offsetTop+u.offsetHeight*Is)*f},d=u.offsetWidth*Is*f,v=o.type===sn.circle?new re(h.x,h.y,d):new tt(u.offsetLeft*f,u.offsetTop*f,u.offsetWidth*f,u.offsetHeight*f),g=r.particles.quadTree.query(v,p=>this.isEnabled(p));for(const p of g){if(!v.contains(p.getPosition()))continue;p.bubble.inRange=!0;const y=l.divs,w=Tl(y,u);(!p.bubble.div||p.bubble.div!==u)&&(this.clear(p,n,!0),p.bubble.div=u),this._hoverBubbleSize(p,Ls,w),this._hoverBubbleOpacity(p,Ls,w),this._hoverBubbleColor(p,Ls,w)}})},this._engine=i,e.bubble||(e.bubble={}),this.handleClickMode=n=>{n===Yt&&(e.bubble||(e.bubble={}),e.bubble.clicking=!0)}}clear(e,i,n){e.bubble.inRange&&!n||(delete e.bubble.div,delete e.bubble.opacity,delete e.bubble.radius,delete e.bubble.color)}init(){const e=this.container,i=e.actualOptions.interactivity.modes.bubble;i&&(e.retina.bubbleModeDistance=i.distance*e.retina.pixelRatio,i.size!==void 0&&(e.retina.bubbleModeSize=i.size*e.retina.pixelRatio))}interact(e){const i=this.container.actualOptions,n=i.interactivity.events,s=n.onHover,o=n.onClick,r=s.enable,a=s.mode,l=o.enable,c=o.mode,u=n.onDiv;r&&U(Yt,a)?this._hoverBubble():l&&U(Yt,c)?this._clickBubble():Wo(Yt,u,(f,h)=>this._singleSelectorHover(e,f,h))}isEnabled(e){const i=this.container,n=i.actualOptions,s=i.interactivity.mouse,o=(e?.interactivity??n.interactivity).events,{onClick:r,onDiv:a,onHover:l}=o,c=Ho(Yt,a);return c||l.enable&&s.position||r.enable&&s.clickPosition?U(Yt,l.mode)||U(Yt,r.mode)||c:!1}loadModeOptions(e,...i){e.bubble||(e.bubble=new Yp);for(const n of i)e.bubble.load(n?.bubble)}reset(e){e.bubble.inRange=!1}}async function ev(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalBubble",i=>Promise.resolve(new Jp(i,t)),e)}class tv{constructor(){this.opacity=.5}load(e){x(e)||e.opacity!==void 0&&(this.opacity=e.opacity)}}class iv{constructor(){this.distance=80,this.links=new tv,this.radius=60}load(e){x(e)||(e.distance!==void 0&&(this.distance=e.distance),this.links.load(e.links),e.radius!==void 0&&(this.radius=e.radius))}}const Qr=0,Xr=1,nv=0;function sv(t,e,i,n){const s=Math.floor(i.getRadius()/e.getRadius()),o=e.getFillColor(),r=i.getFillColor();if(!o||!r)return;const a=e.getPosition(),l=i.getPosition(),c=Go(o,r,e.getRadius(),i.getRadius()),u=t.createLinearGradient(a.x,a.y,l.x,l.y);return u.addColorStop(Qr,wn(o,n)),u.addColorStop(Ve(s,Qr,Xr),kt(c,n)),u.addColorStop(Xr,wn(r,n)),u}function ov(t,e,i,n,s){mn(t,n,s),t.lineWidth=e,t.strokeStyle=i,t.stroke()}function rv(t,e,i,n){const s=t.actualOptions,o=s.interactivity.modes.connect;if(o)return sv(e,i,n,o.links.opacity)}function av(t,e,i){t.canvas.draw(n=>{const s=rv(t,n,e,i);if(!s)return;const o=e.getPosition(),r=i.getPosition();ov(n,e.retina.linksWidth??nv,s,o,r)})}const lv="connect",Kr=0;class cv extends pt{constructor(e){super(e)}clear(){}init(){const e=this.container,i=e.actualOptions.interactivity.modes.connect;i&&(e.retina.connectModeDistance=i.distance*e.retina.pixelRatio,e.retina.connectModeRadius=i.radius*e.retina.pixelRatio)}interact(){const e=this.container;if(e.actualOptions.interactivity.events.onHover.enable&&e.interactivity.status==="pointermove"){const n=e.interactivity.mouse.position,{connectModeDistance:s,connectModeRadius:o}=e.retina;if(!s||s<Kr||!o||o<Kr||!n)return;const r=Math.abs(o),a=e.particles.quadTree.queryCircle(n,r,l=>this.isEnabled(l));a.forEach((l,c)=>{const u=l.getPosition(),f=1;for(const h of a.slice(c+f)){const d=h.getPosition(),v=Math.abs(s),g=Math.abs(u.x-d.x),p=Math.abs(u.y-d.y);g<v&&p<v&&av(e,l,h)}})}}isEnabled(e){const i=this.container,n=i.interactivity.mouse,s=(e?.interactivity??i.actualOptions.interactivity).events;return s.onHover.enable&&n.position?U(lv,s.onHover.mode):!1}loadModeOptions(e,...i){e.connect||(e.connect=new iv);for(const n of i)e.connect.load(n?.connect)}reset(){}}async function uv(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalConnect",i=>Promise.resolve(new cv(i)),e)}class fv{constructor(){this.blink=!1,this.consent=!1,this.opacity=1}load(e){x(e)||(e.blink!==void 0&&(this.blink=e.blink),e.color!==void 0&&(this.color=ce.create(this.color,e.color)),e.consent!==void 0&&(this.consent=e.consent),e.opacity!==void 0&&(this.opacity=e.opacity))}}class hv{constructor(){this.distance=100,this.links=new fv}load(e){x(e)||(e.distance!==void 0&&(this.distance=e.distance),this.links.load(e.links))}}const dv=0;function pv(t,e,i,n,s,o){mn(t,i,n),t.strokeStyle=kt(s,o),t.lineWidth=e,t.stroke()}function vv(t,e,i,n,s){t.canvas.draw(o=>{const r=e.getPosition();pv(o,e.retina.linksWidth??dv,r,s,i,n)})}const mv="grab",gv=0,yv=0;class bv extends pt{constructor(e,i){super(e),this._engine=i}clear(){}init(){const e=this.container,i=e.actualOptions.interactivity.modes.grab;i&&(e.retina.grabModeDistance=i.distance*e.retina.pixelRatio)}interact(){const e=this.container,i=e.actualOptions,n=i.interactivity;if(!n.modes.grab||!n.events.onHover.enable||e.interactivity.status!==yi)return;const s=e.interactivity.mouse.position;if(!s)return;const o=e.retina.grabModeDistance;if(!o||o<gv)return;const r=e.particles.quadTree.queryCircle(s,o,a=>this.isEnabled(a));for(const a of r){const l=a.getPosition(),c=Oe(l,s);if(c>o)continue;const u=n.modes.grab.links,f=u.opacity,h=f-c*f/o;if(h<=yv)continue;const d=u.color??a.options.links?.color;if(!e.particles.grabLineColor&&d){const g=n.modes.grab.links;e.particles.grabLineColor=$l(this._engine,d,g.blink,g.consent)}const v=yo(a,void 0,e.particles.grabLineColor);v&&vv(e,a,v,h,s)}}isEnabled(e){const i=this.container,n=i.interactivity.mouse,s=(e?.interactivity??i.actualOptions.interactivity).events;return s.onHover.enable&&!!n.position&&U(mv,s.onHover.mode)}loadModeOptions(e,...i){e.grab||(e.grab=new hv);for(const n of i)e.grab.load(n?.grab)}reset(){}}async function wv(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalGrab",i=>Promise.resolve(new bv(i,t)),e)}const _v="pause";class xv extends pt{constructor(e){super(e),this.handleClickMode=i=>{if(i!==_v)return;const n=this.container;n.animationStatus?n.pause():n.play()}}clear(){}init(){}interact(){}isEnabled(){return!0}reset(){}}async function kv(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalPause",i=>Promise.resolve(new xv(i)),e)}class Cv{constructor(){this.default=!0,this.groups=[],this.quantity=4}load(e){if(x(e))return;e.default!==void 0&&(this.default=e.default),e.groups!==void 0&&(this.groups=e.groups.map(n=>n)),this.groups.length||(this.default=!0);const i=e.quantity;i!==void 0&&(this.quantity=L(i)),this.particles=ze(e.particles,n=>le({},n))}}const Pv="push",Sv=0;class Mv extends pt{constructor(e){super(e),this.handleClickMode=i=>{if(i!==Pv)return;const n=this.container,s=n.actualOptions,o=s.interactivity.modes.push;if(!o)return;const r=k(o.quantity);if(r<=Sv)return;const a=ps([void 0,...o.groups]),l=a!==void 0?n.actualOptions.particles.groups[a]:void 0,c=Ae(o.particles),u=le(l,c);n.particles.push(r,n.interactivity.mouse,u,a)}}clear(){}init(){}interact(){}isEnabled(){return!0}loadModeOptions(e,...i){e.push||(e.push=new Cv);for(const n of i)e.push.load(n?.push)}reset(){}}async function Ov(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalPush",i=>Promise.resolve(new Mv(i)),e)}class Ev{constructor(){this.quantity=2}load(e){if(x(e))return;const i=e.quantity;i!==void 0&&(this.quantity=L(i))}}const zv="remove";class Rv extends pt{constructor(e){super(e),this.handleClickMode=i=>{const n=this.container,s=n.actualOptions;if(!s.interactivity.modes.remove||i!==zv)return;const o=k(s.interactivity.modes.remove.quantity);n.particles.removeQuantity(o)}}clear(){}init(){}interact(){}isEnabled(){return!0}loadModeOptions(e,...i){e.remove||(e.remove=new Ev);for(const n of i)e.remove.load(n?.remove)}reset(){}}async function Tv(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalRemove",i=>Promise.resolve(new Rv(i)),e)}class tc{constructor(){this.distance=200,this.duration=.4,this.factor=100,this.speed=1,this.maxSpeed=50,this.easing=hi.easeOutQuad}load(e){x(e)||(e.distance!==void 0&&(this.distance=e.distance),e.duration!==void 0&&(this.duration=e.duration),e.easing!==void 0&&(this.easing=e.easing),e.factor!==void 0&&(this.factor=e.factor),e.speed!==void 0&&(this.speed=e.speed),e.maxSpeed!==void 0&&(this.maxSpeed=e.maxSpeed))}}class Dv extends tc{constructor(){super(),this.selectors=[]}load(e){super.load(e),!x(e)&&e.selectors!==void 0&&(this.selectors=e.selectors)}}class Iv extends tc{load(e){super.load(e),!x(e)&&(this.divs=ze(e.divs,i=>{const n=new Dv;return n.load(i),n}))}}const Qt="repulse",Lv=0,Av=6,Fv=3,Bv=2,qv=0,$v=0,Nv=1,As=.5;class Vv extends pt{constructor(e,i){super(i),this._clickRepulse=()=>{const n=this.container,s=n.actualOptions.interactivity.modes.repulse;if(!s)return;const o=n.repulse??{particles:[]};if(o.finish||(o.count||(o.count=0),o.count++,o.count===n.particles.count&&(o.finish=!0)),o.clicking){const r=n.retina.repulseModeDistance;if(!r||r<Lv)return;const a=Math.pow(r/Av,Fv),l=n.interactivity.mouse.clickPosition;if(l===void 0)return;const c=new re(l.x,l.y,a),u=n.particles.quadTree.query(c,f=>this.isEnabled(f));for(const f of u){const{dx:h,dy:d,distance:v}=de(l,f.position),g=v**Bv,p=s.speed,y=-a*p/g;if(g<=a){o.particles.push(f);const w=Z.create(h,d);w.length=y,f.velocity.setTo(w)}}}else if(o.clicking===!1){for(const r of o.particles)r.velocity.setTo(r.initialVelocity);o.particles=[]}},this._hoverRepulse=()=>{const n=this.container,s=n.interactivity.mouse.position,o=n.retina.repulseModeDistance;!o||o<qv||!s||this._processRepulse(s,o,new re(s.x,s.y,o))},this._processRepulse=(n,s,o,r)=>{const a=this.container,l=a.particles.quadTree.query(o,p=>this.isEnabled(p)),c=a.actualOptions.interactivity.modes.repulse;if(!c)return;const{easing:u,speed:f,factor:h,maxSpeed:d}=c,v=this._engine.getEasing(u),g=(r?.speed??f)*h;for(const p of l){const{dx:y,dy:w,distance:b}=de(p.position,n),_=Ve(v(Nv-b/s)*g,$v,d),M=Z.create(b?y/b*_:g,b?w/b*_:g);p.position.addTo(M)}},this._singleSelectorRepulse=(n,s)=>{const o=this.container,r=o.actualOptions.interactivity.modes.repulse;if(!r)return;const a=document.querySelectorAll(n);a.length&&a.forEach(l=>{const c=l,u=o.retina.pixelRatio,f={x:(c.offsetLeft+c.offsetWidth*As)*u,y:(c.offsetTop+c.offsetHeight*As)*u},h=c.offsetWidth*As*u,d=s.type===sn.circle?new re(f.x,f.y,h):new tt(c.offsetLeft*u,c.offsetTop*u,c.offsetWidth*u,c.offsetHeight*u),v=r.divs,g=Tl(v,c);this._processRepulse(f,h,d,g)})},this._engine=e,i.repulse||(i.repulse={particles:[]}),this.handleClickMode=n=>{const s=this.container.actualOptions,o=s.interactivity.modes.repulse;if(!o||n!==Qt)return;i.repulse||(i.repulse={particles:[]});const r=i.repulse;r.clicking=!0,r.count=0;for(const a of i.repulse.particles)this.isEnabled(a)&&a.velocity.setTo(a.initialVelocity);r.particles=[],r.finish=!1,setTimeout(()=>{i.destroyed||(r.clicking=!1)},o.duration*se)}}clear(){}init(){const e=this.container,i=e.actualOptions.interactivity.modes.repulse;i&&(e.retina.repulseModeDistance=i.distance*e.retina.pixelRatio)}interact(){const e=this.container,i=e.actualOptions,n=e.interactivity.status===yi,s=i.interactivity.events,o=s.onHover,r=o.enable,a=o.mode,l=s.onClick,c=l.enable,u=l.mode,f=s.onDiv;n&&r&&U(Qt,a)?this._hoverRepulse():c&&U(Qt,u)?this._clickRepulse():Wo(Qt,f,(h,d)=>this._singleSelectorRepulse(h,d))}isEnabled(e){const i=this.container,n=i.actualOptions,s=i.interactivity.mouse,o=(e?.interactivity??n.interactivity).events,r=o.onDiv,a=o.onHover,l=o.onClick,c=Ho(Qt,r);if(!(c||a.enable&&s.position||l.enable&&s.clickPosition))return!1;const u=a.mode,f=l.mode;return U(Qt,u)||U(Qt,f)||c}loadModeOptions(e,...i){e.repulse||(e.repulse=new Iv);for(const n of i)e.repulse.load(n?.repulse)}reset(){}}async function Uv(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalRepulse",i=>Promise.resolve(new Vv(t,i)),e)}class Hv{constructor(){this.factor=3,this.radius=200}load(e){x(e)||(e.factor!==void 0&&(this.factor=e.factor),e.radius!==void 0&&(this.radius=e.radius))}}const Wv="slow",jv=0;class Gv extends pt{constructor(e){super(e)}clear(e,i,n){e.slow.inRange&&!n||(e.slow.factor=1)}init(){const e=this.container,i=e.actualOptions.interactivity.modes.slow;i&&(e.retina.slowModeRadius=i.radius*e.retina.pixelRatio)}interact(){}isEnabled(e){const i=this.container,n=i.interactivity.mouse,s=(e?.interactivity??i.actualOptions.interactivity).events;return s.onHover.enable&&!!n.position&&U(Wv,s.onHover.mode)}loadModeOptions(e,...i){e.slow||(e.slow=new Hv);for(const n of i)e.slow.load(n?.slow)}reset(e){e.slow.inRange=!1;const i=this.container,n=i.actualOptions,s=i.interactivity.mouse.position,o=i.retina.slowModeRadius,r=n.interactivity.modes.slow;if(!r||!o||o<jv||!s)return;const a=e.getPosition(),l=Oe(s,a),c=l/o,u=r.factor,{slow:f}=e;l>o||(f.inRange=!0,f.factor=c/u)}}async function Yv(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("externalSlow",i=>Promise.resolve(new Gv(i)),e)}const Qv=0,Xv=1,Kv=/(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d.]+%?\))|currentcolor/gi;function Zv(t,e,i){const{svgData:n}=t;if(!n)return"";const s=wn(e,i);if(n.includes("fill"))return n.replace(Kv,()=>s);const o=n.indexOf(">");return`${n.substring(Qv,o)} fill="${s}"${n.substring(o)}`}async function vs(t){return new Promise(e=>{t.loading=!0;const i=new Image;t.element=i,i.addEventListener("load",()=>{t.loading=!1,e()}),i.addEventListener("error",()=>{t.element=void 0,t.error=!0,t.loading=!1,wi().error(`${Ne} loading image: ${t.source}`),e()}),i.src=t.source})}async function Jv(t){if(t.type!=="svg"){await vs(t);return}t.loading=!0;const e=await fetch(t.source);e.ok?t.svgData=await e.text():(wi().error(`${Ne} Image not found`),t.error=!0),t.loading=!1}function em(t,e,i,n){const s=Zv(t,i,n.opacity?.value??Xv),o={color:i,gif:e.gif,data:{...t,svgData:s},loaded:!1,ratio:e.width/e.height,replaceColor:e.replaceColor,source:e.src};return new Promise(r=>{const a=new Blob([s],{type:"image/svg+xml"}),l=URL||window.URL||window.webkitURL||window,c=l.createObjectURL(a),u=new Image;u.addEventListener("load",()=>{o.loaded=!0,o.element=u,r(o),l.revokeObjectURL(c)});const f=async()=>{l.revokeObjectURL(c);const h={...t,error:!1,loading:!0};await vs(h),o.loaded=!0,o.element=h.element,r(o)};u.addEventListener("error",()=>void f()),u.src=c})}const Fs=[0,4,2,1],Zr=[8,8,4,2];class tm{constructor(e){this.pos=0,this.data=new Uint8ClampedArray(e)}getString(e){const i=this.data.slice(this.pos,this.pos+e);return this.pos+=i.length,i.reduce((n,s)=>n+String.fromCharCode(s),"")}nextByte(){return this.data[this.pos++]}nextTwoBytes(){return this.pos+=2,this.data[this.pos-2]+(this.data[this.pos-1]<<8)}readSubBlocks(){let e="",i=0;const n=0,s=0;do{i=this.data[this.pos++];for(let o=i;--o>=n;e+=String.fromCharCode(this.data[this.pos++]));}while(i!==s);return e}readSubBlocksBin(){let e=this.data[this.pos],i=0;const n=0,s=1;for(let r=0;e!==n;r+=e+s,e=this.data[this.pos+r])i+=e;const o=new Uint8Array(i);e=this.data[this.pos++];for(let r=0;e!==n;e=this.data[this.pos++])for(let a=e;--a>=n;o[r++]=this.data[this.pos++]);return o}skipSubBlocks(){for(const e=1,i=0;this.data[this.pos]!==i;this.pos+=this.data[this.pos]+e);this.pos++}}var He;(function(t){t[t.Replace=0]="Replace",t[t.Combine=1]="Combine",t[t.RestoreBackground=2]="RestoreBackground",t[t.RestorePrevious=3]="RestorePrevious",t[t.UndefinedA=4]="UndefinedA",t[t.UndefinedB=5]="UndefinedB",t[t.UndefinedC=6]="UndefinedC",t[t.UndefinedD=7]="UndefinedD"})(He||(He={}));var xt;(function(t){t[t.Extension=33]="Extension",t[t.ApplicationExtension=255]="ApplicationExtension",t[t.GraphicsControlExtension=249]="GraphicsControlExtension",t[t.PlainTextExtension=1]="PlainTextExtension",t[t.CommentExtension=254]="CommentExtension",t[t.Image=44]="Image",t[t.EndOfFile=59]="EndOfFile"})(xt||(xt={}));const pe={x:0,y:0},im=0,Jr=.5,nm=0,ea=0,wo=0;function ic(t,e){const i=[];for(let n=0;n<e;n++)i.push({r:t.data[t.pos],g:t.data[t.pos+1],b:t.data[t.pos+2]}),t.pos+=3;return i}function sm(t,e,i,n){switch(t.nextByte()){case xt.GraphicsControlExtension:{const s=e.frames[i(!1)];t.pos++;const o=t.nextByte();s.GCreserved=(o&224)>>>5,s.disposalMethod=(o&28)>>>2,s.userInputDelayFlag=(o&2)===2;const r=(o&1)===1;s.delayTime=t.nextTwoBytes()*10;const a=t.nextByte();r&&n(a),t.pos++;break}case xt.ApplicationExtension:{t.pos++;const s={identifier:t.getString(8),authenticationCode:t.getString(3),data:t.readSubBlocksBin()};e.applicationExtensions.push(s);break}case xt.CommentExtension:{e.comments.push([i(!1),t.readSubBlocks()]);break}case xt.PlainTextExtension:{if(e.globalColorTable.length===0)throw new EvalError("plain text extension without global color table");t.pos++,e.frames[i(!1)].plainTextData={left:t.nextTwoBytes(),top:t.nextTwoBytes(),width:t.nextTwoBytes(),height:t.nextTwoBytes(),charSize:{width:t.nextTwoBytes(),height:t.nextTwoBytes()},foregroundColor:t.nextByte(),backgroundColor:t.nextByte(),text:t.readSubBlocks()};break}default:t.skipSubBlocks();break}}async function om(t,e,i,n,s,o){const r=e.frames[n(!0)];r.left=t.nextTwoBytes(),r.top=t.nextTwoBytes(),r.width=t.nextTwoBytes(),r.height=t.nextTwoBytes();const a=t.nextByte(),l=(a&128)===128,c=(a&64)===64;r.sortFlag=(a&32)===32,r.reserved=(a&24)>>>3;const u=1<<(a&7)+1;l&&(r.localColorTable=ic(t,u));const f=y=>{const{r:w,g:b,b:_}=(l?r.localColorTable:e.globalColorTable)[y];return y!==s(null)?{r:w,g:b,b:_,a:255}:{r:w,g:b,b:_,a:i?~~((w+b+_)/3):0}},h=(()=>{try{return new ImageData(r.width,r.height,{colorSpace:"srgb"})}catch(y){if(y instanceof DOMException&&y.name==="IndexSizeError")return null;throw y}})();if(h==null)throw new EvalError("GIF frame size is to large");const d=t.nextByte(),v=t.readSubBlocksBin(),g=1<<d,p=(y,w)=>{const b=y>>>3,_=y&7;return(v[b]+(v[b+1]<<8)+(v[b+2]<<16)&(1<<w)-1<<_)>>>_};if(c){for(let y=0,w=d+1,b=0,_=[[0]],M=0;M<4;M++)if(Fs[M]<r.height){let D=0,P=0,B=!1;for(;!B;){const H=y;if(y=p(b,w),b+=w+1,y===g){w=d+1,_.length=g+2;for(let W=0;W<_.length;W++)_[W]=W<g?[W]:[]}else{y>=_.length?_.push(_[H].concat(_[H][0])):H!==g&&_.push(_[H].concat(_[y][0]));for(const W of _[y]){const{r:Et,g:ye,b:ms,a:gs}=f(W);h.data.set([Et,ye,ms,gs],Fs[M]*r.width+Zr[M]*P+D%(r.width*4)),D+=4}_.length===1<<w&&w<12&&w++}D===r.width*4*(P+1)&&(P++,Fs[M]+Zr[M]*P>=r.height&&(B=!0))}}r.image=h,r.bitmap=await createImageBitmap(h)}else{let y=0,w=d+1,b=0,_=-4,M=!1;const D=[[0]];for(;!M;){const P=y;if(y=p(b,w),b+=w,y===g){w=d+1,D.length=g+2;for(let B=0;B<D.length;B++)D[B]=B<g?[B]:[]}else{if(y===g+1){M=!0;break}y>=D.length?D.push(D[P].concat(D[P][0])):P!==g&&D.push(D[P].concat(D[y][0]));for(const B of D[y]){const{r:H,g:W,b:Et,a:ye}=f(B);h.data.set([H,W,Et,ye],_+=4)}D.length>=1<<w&&w<12&&w++}}r.image=h,r.bitmap=await createImageBitmap(h)}}async function rm(t,e,i,n,s,o){switch(t.nextByte()){case xt.EndOfFile:return!0;case xt.Image:await om(t,e,i,n,s);break;case xt.Extension:sm(t,e,n,s);break;default:throw new EvalError("undefined block found")}return!1}function am(t){for(const e of t.applicationExtensions)if(e.identifier+e.authenticationCode==="NETSCAPE2.0")return e.data[1]+(e.data[2]<<8);return NaN}async function lm(t,e,i){i||(i=!1);const n=await fetch(t);if(!n.ok&&n.status===404)throw new EvalError("file not found");const s=await n.arrayBuffer(),o={width:0,height:0,totalTime:0,colorRes:0,pixelAspectRatio:0,frames:[],sortFlag:!1,globalColorTable:[],backgroundImage:new ImageData(1,1,{colorSpace:"srgb"}),comments:[],applicationExtensions:[]},r=new tm(new Uint8ClampedArray(s));if(r.getString(6)!=="GIF89a")throw new Error("not a supported GIF file");o.width=r.nextTwoBytes(),o.height=r.nextTwoBytes();const a=r.nextByte(),l=(a&128)===128;o.colorRes=(a&112)>>>4,o.sortFlag=(a&8)===8;const c=1<<(a&7)+1,u=r.nextByte();o.pixelAspectRatio=r.nextByte(),o.pixelAspectRatio!==0&&(o.pixelAspectRatio=(o.pixelAspectRatio+15)/64),l&&(o.globalColorTable=ic(r,c));const f=(()=>{try{return new ImageData(o.width,o.height,{colorSpace:"srgb"})}catch(_){if(_ instanceof DOMException&&_.name==="IndexSizeError")return null;throw _}})();if(f==null)throw new Error("GIF frame size is to large");const{r:h,g:d,b:v}=o.globalColorTable[u];f.data.set(l?[h,d,v,255]:[0,0,0,0]);for(let _=4;_<f.data.length;_*=2)f.data.copyWithin(_,0,_);o.backgroundImage=f;let g=-1,p=!0,y=-1;const w=_=>(_&&(p=!0),g),b=_=>(_!=null&&(y=_),y);try{do p&&(o.frames.push({left:0,top:0,width:0,height:0,disposalMethod:He.Replace,image:new ImageData(1,1,{colorSpace:"srgb"}),plainTextData:null,userInputDelayFlag:!1,delayTime:0,sortFlag:!1,localColorTable:[],reserved:0,GCreserved:0}),g++,y=-1,p=!1);while(!await rm(r,o,i,w,b,e));o.frames.length--;for(const _ of o.frames){if(_.userInputDelayFlag&&_.delayTime===0){o.totalTime=1/0;break}o.totalTime+=_.delayTime}return o}catch(_){throw _ instanceof EvalError?new Error(`error while parsing frame ${g} "${_.message}"`):_}}function cm(t){const{context:e,radius:i,particle:n,delta:s}=t,o=n.image;if(!o?.gifData||!o.gif)return;const r=new OffscreenCanvas(o.gifData.width,o.gifData.height),a=r.getContext("2d");if(!a)throw new Error("could not create offscreen canvas context");a.imageSmoothingQuality="low",a.imageSmoothingEnabled=!1,a.clearRect(pe.x,pe.y,r.width,r.height),n.gifLoopCount===void 0&&(n.gifLoopCount=o.gifLoopCount??wo);let l=n.gifFrame??im;const c={x:-o.gifData.width*Jr,y:-o.gifData.height*Jr},u=o.gifData.frames[l];if(n.gifTime===void 0&&(n.gifTime=nm),!!u.bitmap){switch(e.scale(i/o.gifData.width,i/o.gifData.height),u.disposalMethod){case He.UndefinedA:case He.UndefinedB:case He.UndefinedC:case He.UndefinedD:case He.Replace:a.drawImage(u.bitmap,u.left,u.top),e.drawImage(r,c.x,c.y),a.clearRect(pe.x,pe.y,r.width,r.height);break;case He.Combine:a.drawImage(u.bitmap,u.left,u.top),e.drawImage(r,c.x,c.y);break;case He.RestoreBackground:a.drawImage(u.bitmap,u.left,u.top),e.drawImage(r,c.x,c.y),a.clearRect(pe.x,pe.y,r.width,r.height),o.gifData.globalColorTable.length?a.putImageData(o.gifData.backgroundImage,c.x,c.y):a.putImageData(o.gifData.frames[ea].image,c.x+u.left,c.y+u.top);break;case He.RestorePrevious:{const f=a.getImageData(pe.x,pe.y,r.width,r.height);a.drawImage(u.bitmap,u.left,u.top),e.drawImage(r,c.x,c.y),a.clearRect(pe.x,pe.y,r.width,r.height),a.putImageData(f,pe.x,pe.y)}break}if(n.gifTime+=s.value,n.gifTime>u.delayTime){if(n.gifTime-=u.delayTime,++l>=o.gifData.frames.length){if(--n.gifLoopCount<=wo)return;l=ea,a.clearRect(pe.x,pe.y,r.width,r.height)}n.gifFrame=l}e.scale(o.gifData.width/i,o.gifData.height/i)}}async function um(t){if(t.type!=="gif"){await vs(t);return}t.loading=!0;try{t.gifData=await lm(t.source),t.gifLoopCount=am(t.gifData)??wo,t.gifLoopCount||(t.gifLoopCount=1/0)}catch{t.error=!0}t.loading=!1}const fm=2,hm=1,dm=12,pm=1;class vm{constructor(e){this.validTypes=["image","images"],this.loadImageShape=async i=>{if(!this._engine.loadImage)throw new Error(`${Ne} image shape not initialized`);await this._engine.loadImage({gif:i.gif,name:i.name,replaceColor:i.replaceColor??!1,src:i.src})},this._engine=e}addImage(e){this._engine.images||(this._engine.images=[]),this._engine.images.push(e)}draw(e){const{context:i,radius:n,particle:s,opacity:o}=e,r=s.image,a=r?.element;if(r){if(i.globalAlpha=o,r.gif&&r.gifData)cm(e);else if(a){const l=r.ratio,c={x:-n,y:-n},u=n*fm;i.drawImage(a,c.x,c.y,u,u/l)}i.globalAlpha=hm}}getSidesCount(){return dm}async init(e){const i=e.actualOptions;if(!(!i.preload||!this._engine.loadImage))for(const n of i.preload)await this._engine.loadImage(n)}loadShape(e){if(e.shape!=="image"&&e.shape!=="images")return;this._engine.images||(this._engine.images=[]);const i=e.shapeData;if(!i)return;this._engine.images.find(s=>s.name===i.name||s.source===i.src)||this.loadImageShape(i).then(()=>{this.loadShape(e)})}particleInit(e,i){if(i.shape!=="image"&&i.shape!=="images")return;this._engine.images||(this._engine.images=[]);const n=this._engine.images,s=i.shapeData;if(!s)return;const o=i.getFillColor(),r=n.find(l=>l.name===s.name||l.source===s.src);if(!r)return;const a=s.replaceColor??r.replaceColor;if(r.loading){setTimeout(()=>{this.particleInit(e,i)});return}(async()=>{let l;r.svgData&&o?l=await em(r,s,o,i):l={color:o,data:r,element:r.element,gif:r.gif,gifData:r.gifData,gifLoopCount:r.gifLoopCount,loaded:!0,ratio:s.width&&s.height?s.width/s.height:r.ratio??pm,replaceColor:a,source:s.src},l.ratio||(l.ratio=1);const c=s.fill??i.shapeFill,u=s.close??i.shapeClose,f={image:l,fill:c,close:u};i.image=f.image,i.shapeFill=f.fill,i.shapeClose=f.close})()}}class mm{constructor(){this.src="",this.gif=!1}load(e){x(e)||(e.gif!==void 0&&(this.gif=e.gif),e.height!==void 0&&(this.height=e.height),e.name!==void 0&&(this.name=e.name),e.replaceColor!==void 0&&(this.replaceColor=e.replaceColor),e.src!==void 0&&(this.src=e.src),e.width!==void 0&&(this.width=e.width))}}class gm{constructor(e){this.id="imagePreloader",this._engine=e}async getPlugin(){return await Promise.resolve(),{}}loadOptions(e,i){if(!i?.preload)return;e.preload||(e.preload=[]);const n=e.preload;for(const s of i.preload){const o=n.find(r=>r.name===s.name||r.src===s.src);if(o)o.load(s);else{const r=new mm;r.load(s),n.push(r)}}}needsPlugin(){return!0}}const ym=3;function bm(t){t.loadImage||(t.loadImage=async e=>{if(!e.name&&!e.src)throw new Error(`${Ne} no image source provided`);if(t.images||(t.images=[]),!t.images.find(i=>i.name===e.name||i.source===e.src))try{const i={gif:e.gif??!1,name:e.name??e.src,source:e.src,type:e.src.substring(e.src.length-ym),error:!1,loading:!0,replaceColor:e.replaceColor,ratio:e.width&&e.height?e.width/e.height:void 0};t.images.push(i);let n;e.gif?n=um:n=e.replaceColor?Jv:vs,await n(i)}catch{throw new Error(`${Ne} ${e.name??e.src} not found`)}})}async function wm(t,e=!0){t.checkVersion("3.9.1"),bm(t);const i=new gm(t);await t.addPlugin(i,e),await t.addShape(new vm(t),e)}class _m extends Pi{constructor(){super(),this.sync=!1}load(e){x(e)||(super.load(e),e.sync!==void 0&&(this.sync=e.sync))}}class xm extends Pi{constructor(){super(),this.sync=!1}load(e){x(e)||(super.load(e),e.sync!==void 0&&(this.sync=e.sync))}}class km{constructor(){this.count=0,this.delay=new _m,this.duration=new xm}load(e){x(e)||(e.count!==void 0&&(this.count=e.count),this.delay.load(e.delay),this.duration.load(e.duration))}}const Oi=0,Cm=-1,ta=0,ia=0;function Pm(t,e,i){if(!t.life)return;const n=t.life;let s=!1;if(t.spawning)if(n.delayTime+=e.value,n.delayTime>=t.life.delay)s=!0,t.spawning=!1,n.delayTime=Oi,n.time=Oi;else return;if(n.duration===Cm||t.spawning||(s?n.time=Oi:n.time+=e.value,n.time<n.duration))return;if(n.time=Oi,t.life.count>ta&&t.life.count--,t.life.count===ta){t.destroy();return}const o=L(ia,i.width),r=L(ia,i.width);t.position.x=Pe(o),t.position.y=Pe(r),t.spawning=!0,n.delayTime=Oi,n.time=Oi,t.reset();const a=t.options.life;a&&(n.delay=k(a.delay.value)*se,n.duration=k(a.duration.value)*se)}const Xt=0,na=1,sa=-1;class Sm{constructor(e){this.container=e}init(e){const i=this.container,n=e.options,s=n.life;s&&(e.life={delay:i.retina.reduceFactor?k(s.delay.value)*(s.delay.sync?na:A())/i.retina.reduceFactor*se:Xt,delayTime:Xt,duration:i.retina.reduceFactor?k(s.duration.value)*(s.duration.sync?na:A())/i.retina.reduceFactor*se:Xt,time:Xt,count:s.count},e.life.duration<=Xt&&(e.life.duration=sa),e.life.count<=Xt&&(e.life.count=sa),e.life&&(e.spawning=e.life.delay>Xt))}isEnabled(e){return!e.destroyed}loadOptions(e,...i){e.life||(e.life=new km);for(const n of i)e.life.load(n?.life)}update(e,i){!this.isEnabled(e)||!e.life||Pm(e,i,this.container.canvas.size)}}async function Mm(t,e=!0){t.checkVersion("3.9.1"),await t.addParticleUpdater("life",async i=>Promise.resolve(new Sm(i)),e)}function Om(t){const{context:e,particle:i,radius:n}=t,s=i.shapeData,o=0;e.moveTo(-n,o),e.lineTo(n,o),e.lineCap=s?.cap??"butt"}const Em=1;class zm{constructor(){this.validTypes=["line"]}draw(e){Om(e)}getSidesCount(){return Em}}async function Rm(t,e=!0){t.checkVersion("3.9.1"),await t.addShape(new zm,e)}const oa=.5;class Tm{init(){}isEnabled(e){return!_i()&&!e.destroyed&&e.container.actualOptions.interactivity.events.onHover.parallax.enable}move(e){const i=e.container,n=i.actualOptions,s=n.interactivity.events.onHover.parallax;if(_i()||!s.enable)return;const o=s.force,r=i.interactivity.mouse.position;if(!r)return;const a=i.canvas.size,l={x:a.width*oa,y:a.height*oa},c=s.smooth,u=e.getRadius()/o,f={x:(r.x-l.x)*u,y:(r.y-l.y)*u},{offset:h}=e;h.x+=(f.x-h.x)/c,h.y+=(f.y-h.y)/c}}async function Dm(t,e=!0){t.checkVersion("3.9.1"),await t.addMover("parallax",()=>Promise.resolve(new Tm),e)}const ra=1e3,Im=1;class Lm extends Xo{constructor(e){super(e)}clear(){}init(){}interact(e){const i=this.container;e.attractDistance===void 0&&(e.attractDistance=k(e.options.move.attract.distance)*i.retina.pixelRatio);const n=e.attractDistance,s=e.getPosition(),o=i.particles.quadTree.queryCircle(s,n);for(const r of o){if(e===r||!r.options.move.attract.enable||r.destroyed||r.spawning)continue;const a=r.getPosition(),{dx:l,dy:c}=de(s,a),u=e.options.move.attract.rotate,f=l/(u.x*ra),h=c/(u.y*ra),d=r.size.value/e.size.value,v=Im/d;e.velocity.x-=f*d,e.velocity.y-=h*d,r.velocity.x+=f*v,r.velocity.y+=h*v}}isEnabled(e){return e.options.move.attract.enable}reset(){}}async function Am(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("particlesAttract",i=>Promise.resolve(new Lm(i)),e)}const Fm=.5,Bm=10,qm=0;function aa(t,e,i,n,s,o){const r=Ve(t.options.collisions.absorb.speed*s.factor/Bm,qm,n);t.size.value+=r*Fm,i.size.value-=r,n<=o&&(i.size.value=0,i.destroy())}function $m(t,e,i,n){const s=t.getRadius(),o=e.getRadius();s===void 0&&o!==void 0?t.destroy():s!==void 0&&o===void 0?e.destroy():s!==void 0&&o!==void 0&&(s>=o?aa(t,s,e,o,i,n):aa(e,o,t,s,i,n))}const la=t=>{t.collisionMaxSpeed===void 0&&(t.collisionMaxSpeed=k(t.options.collisions.maxSpeed)),t.velocity.length>t.collisionMaxSpeed&&(t.velocity.length=t.collisionMaxSpeed)};function nc(t,e){Dl(mo(t),mo(e)),la(t),la(e)}function Nm(t,e){!t.unbreakable&&!e.unbreakable&&nc(t,e),t.getRadius()===void 0&&e.getRadius()!==void 0?t.destroy():t.getRadius()!==void 0&&e.getRadius()===void 0?e.destroy():t.getRadius()!==void 0&&e.getRadius()!==void 0&&(t.getRadius()>=e.getRadius()?e:t).destroy()}function Vm(t,e,i,n){switch(t.options.collisions.mode){case Bi.absorb:{$m(t,e,i,n);break}case Bi.bounce:{nc(t,e);break}case Bi.destroy:{Nm(t,e);break}}}const Um=2;class Hm extends Xo{constructor(e){super(e)}clear(){}init(){}interact(e,i){if(e.destroyed||e.spawning)return;const n=this.container,s=e.getPosition(),o=e.getRadius(),r=n.particles.quadTree.queryCircle(s,o*Um);for(const a of r){if(e===a||!a.options.collisions.enable||e.options.collisions.mode!==a.options.collisions.mode||a.destroyed||a.spawning)continue;const l=a.getPosition(),c=a.getRadius();if(Math.abs(Math.round(s.z)-Math.round(l.z))>o+c)continue;const u=Oe(s,l),f=o+c;u>f||Vm(e,a,i,n.retina.pixelRatio)}}isEnabled(e){return e.options.collisions.enable}reset(){}}async function Wm(t,e=!0){t.checkVersion("3.9.1"),await t.addInteractor("particlesCollisions",i=>Promise.resolve(new Hm(i)),e)}const Bs=2;class jm extends re{constructor(e,i,n,s){super(e,i,n),this.canvasSize=s,this.canvasSize={...s}}contains(e){const{width:i,height:n}=this.canvasSize,{x:s,y:o}=e;return super.contains(e)||super.contains({x:s-i,y:o})||super.contains({x:s-i,y:o-n})||super.contains({x:s,y:o-n})}intersects(e){if(super.intersects(e))return!0;const i=e,n=e,s={x:e.position.x-this.canvasSize.width,y:e.position.y-this.canvasSize.height};if(n.radius!==void 0){const o=new re(s.x,s.y,n.radius*Bs);return super.intersects(o)}else if(i.size!==void 0){const o=new tt(s.x,s.y,i.size.width*Bs,i.size.height*Bs);return super.intersects(o)}return!1}}class Gm{constructor(){this.blur=5,this.color=new ce,this.color.value="#000",this.enable=!1}load(e){x(e)||(e.blur!==void 0&&(this.blur=e.blur),this.color=ce.create(this.color,e.color),e.enable!==void 0&&(this.enable=e.enable))}}class Ym{constructor(){this.enable=!1,this.frequency=1}load(e){x(e)||(e.color!==void 0&&(this.color=ce.create(this.color,e.color)),e.enable!==void 0&&(this.enable=e.enable),e.frequency!==void 0&&(this.frequency=e.frequency),e.opacity!==void 0&&(this.opacity=e.opacity))}}class Qm{constructor(){this.blink=!1,this.color=new ce,this.color.value="#fff",this.consent=!1,this.distance=100,this.enable=!1,this.frequency=1,this.opacity=1,this.shadow=new Gm,this.triangles=new Ym,this.width=1,this.warp=!1}load(e){x(e)||(e.id!==void 0&&(this.id=e.id),e.blink!==void 0&&(this.blink=e.blink),this.color=ce.create(this.color,e.color),e.consent!==void 0&&(this.consent=e.consent),e.distance!==void 0&&(this.distance=e.distance),e.enable!==void 0&&(this.enable=e.enable),e.frequency!==void 0&&(this.frequency=e.frequency),e.opacity!==void 0&&(this.opacity=e.opacity),this.shadow.load(e.shadow),this.triangles.load(e.triangles),e.width!==void 0&&(this.width=e.width),e.warp!==void 0&&(this.warp=e.warp))}}const ca=2,Xm=1,Un={x:0,y:0},Km=0;function Zm(t,e,i,n,s){const{dx:o,dy:r,distance:a}=de(t,e);if(!s||a<=i)return a;const l={x:Math.abs(o),y:Math.abs(r)},c={x:Math.min(l.x,n.width-l.x),y:Math.min(l.y,n.height-l.y)};return Math.sqrt(c.x**ca+c.y**ca)}class Jm extends Xo{constructor(e,i){super(e),this._setColor=n=>{if(!n.options.links)return;const s=this._linkContainer,o=n.options.links;let r=o.id===void 0?s.particles.linksColor:s.particles.linksColors.get(o.id);if(r)return;const a=o.color;r=$l(this._engine,a,o.blink,o.consent),o.id===void 0?s.particles.linksColor=r:s.particles.linksColors.set(o.id,r)},this._linkContainer=e,this._engine=i}clear(){}init(){this._linkContainer.particles.linksColor=void 0,this._linkContainer.particles.linksColors=new Map}interact(e){if(!e.options.links)return;e.links=[];const i=e.getPosition(),n=this.container,s=n.canvas.size;if(i.x<Un.x||i.y<Un.y||i.x>s.width||i.y>s.height)return;const o=e.options.links,r=o.opacity,a=e.retina.linksDistance??Km,l=o.warp;let c;l?c=new jm(i.x,i.y,a,s):c=new re(i.x,i.y,a);const u=n.particles.quadTree.query(c);for(const f of u){const h=f.options.links;if(e===f||!h?.enable||o.id!==h.id||f.spawning||f.destroyed||!f.links||e.links.some(p=>p.destination===f)||f.links.some(p=>p.destination===e))continue;const d=f.getPosition();if(d.x<Un.x||d.y<Un.y||d.x>s.width||d.y>s.height)continue;const v=Zm(i,d,a,s,l&&h.warp);if(v>a)continue;const g=(Xm-v/a)*r;this._setColor(e),e.links.push({destination:f,opacity:g})}}isEnabled(e){return!!e.options.links?.enable}loadParticlesOptions(e,...i){e.links||(e.links=new Qm);for(const n of i)e.links.load(n?.links)}reset(){}}async function eg(t,e=!0){await t.addInteractor("particlesLinks",async i=>Promise.resolve(new Jm(i,t)),e)}function tg(t,e,i,n){t.beginPath(),t.moveTo(e.x,e.y),t.lineTo(i.x,i.y),t.lineTo(n.x,n.y),t.closePath()}function ig(t){let e=!1;const{begin:i,end:n,engine:s,maxDistance:o,context:r,canvasSize:a,width:l,backgroundMask:c,colorLine:u,opacity:f,links:h}=t;if(Oe(i,n)<=o)mn(r,i,n),e=!0;else if(h.warp){let v,g;const p={x:n.x-a.width,y:n.y},y=de(i,p);if(y.distance<=o){const w=i.y-y.dy/y.dx*i.x;v={x:0,y:w},g={x:a.width,y:w}}else{const w={x:n.x,y:n.y-a.height},b=de(i,w);if(b.distance<=o){const M=-(i.y-b.dy/b.dx*i.x)/(b.dy/b.dx);v={x:M,y:0},g={x:M,y:a.height}}else{const _={x:n.x-a.width,y:n.y-a.height},M=de(i,_);if(M.distance<=o){const D=i.y-M.dy/M.dx*i.x;v={x:-D/(M.dy/M.dx),y:D},g={x:v.x+a.width,y:v.y+a.height}}}}v&&g&&(mn(r,i,v),mn(r,n,g),e=!0)}if(!e)return;r.lineWidth=l,c.enable&&(r.globalCompositeOperation=c.composite),r.strokeStyle=kt(u,f);const{shadow:d}=h;if(d.enable){const v=Ke(s,d.color);v&&(r.shadowBlur=d.blur,r.shadowColor=kt(v))}r.stroke()}function ng(t){const{context:e,pos1:i,pos2:n,pos3:s,backgroundMask:o,colorTriangle:r,opacityTriangle:a}=t;tg(e,i,n,s),o.enable&&(e.globalCompositeOperation=o.composite),e.fillStyle=kt(r,a),e.fill()}function sg(t){return t.sort((e,i)=>e-i),t.join("_")}function ua(t,e){const i=sg(t.map(s=>s.id));let n=e.get(i);return n===void 0&&(n=A(),e.set(i,n)),n}const fa=0,qs=0,ha=0,og=.5,rg=1;class ag{constructor(e,i){this._drawLinkLine=(n,s)=>{const o=n.options.links;if(!o?.enable)return;const r=this._container,a=r.actualOptions,l=s.destination,c=n.getPosition(),u=l.getPosition();let f=s.opacity;r.canvas.draw(h=>{let d;const v=n.options.twinkle?.lines;if(v?.enable){const w=v.frequency,b=Ke(this._engine,v.color);A()<w&&b&&(d=b,f=k(v.opacity))}if(!d){const w=o.id!==void 0?r.particles.linksColors.get(o.id):r.particles.linksColor;d=yo(n,l,w)}if(!d)return;const g=n.retina.linksWidth??qs,p=n.retina.linksDistance??ha,{backgroundMask:y}=a;ig({context:h,width:g,begin:c,end:u,engine:this._engine,maxDistance:p,canvasSize:r.canvas.size,links:o,backgroundMask:y,colorLine:d,opacity:f})})},this._drawLinkTriangle=(n,s,o)=>{const r=n.options.links;if(!r?.enable)return;const a=r.triangles;if(!a.enable)return;const l=this._container,c=l.actualOptions,u=s.destination,f=o.destination,h=a.opacity??(s.opacity+o.opacity)*og;h<=fa||l.canvas.draw(d=>{const v=n.getPosition(),g=u.getPosition(),p=f.getPosition(),y=n.retina.linksDistance??ha;if(Oe(v,g)>y||Oe(p,g)>y||Oe(p,v)>y)return;let w=Ke(this._engine,a.color);if(!w){const b=r.id!==void 0?l.particles.linksColors.get(r.id):l.particles.linksColor;w=yo(n,u,b)}w&&ng({context:d,pos1:v,pos2:g,pos3:p,backgroundMask:c.backgroundMask,colorTriangle:w,opacityTriangle:h})})},this._drawTriangles=(n,s,o,r)=>{const a=o.destination;if(!(n.links?.triangles.enable&&a.options.links?.triangles.enable))return;const l=a.links?.filter(c=>{const u=this._getLinkFrequency(a,c.destination);return a.options.links&&u<=a.options.links.frequency&&r.findIndex(h=>h.destination===c.destination)>=0});if(l?.length)for(const c of l){const u=c.destination;this._getTriangleFrequency(s,a,u)>n.links.triangles.frequency||this._drawLinkTriangle(s,o,c)}},this._getLinkFrequency=(n,s)=>ua([n,s],this._freqs.links),this._getTriangleFrequency=(n,s,o)=>ua([n,s,o],this._freqs.triangles),this._container=e,this._engine=i,this._freqs={links:new Map,triangles:new Map}}drawParticle(e,i){const{links:n,options:s}=i;if(!n?.length)return;const o=n.filter(r=>s.links&&(s.links.frequency>=rg||this._getLinkFrequency(i,r.destination)<=s.links.frequency));for(const r of o)this._drawTriangles(s,i,r,o),r.opacity>fa&&(i.retina.linksWidth??qs)>qs&&this._drawLinkLine(i,r)}async init(){this._freqs.links=new Map,this._freqs.triangles=new Map,await Promise.resolve()}particleCreated(e){if(e.links=[],!e.options.links)return;const i=this._container.retina.pixelRatio,{retina:n}=e,{distance:s,width:o}=e.options.links;n.linksDistance=s*i,n.linksWidth=o*i}particleDestroyed(e){e.links=[]}}class lg{constructor(e){this.id="links",this._engine=e}getPlugin(e){return Promise.resolve(new ag(e,this._engine))}loadOptions(){}needsPlugin(){return!0}}async function cg(t,e=!0){const i=new lg(t);await t.addPlugin(i,e)}async function ug(t,e=!0){t.checkVersion("3.9.1"),await eg(t,e),await cg(t,e)}const fg=180,Hn={x:0,y:0},hg=2;function dg(t,e,i){const{context:n}=t,s=i.count.numerator*i.count.denominator,o=i.count.numerator/i.count.denominator,r=fg*(o-hg)/o,a=Math.PI-Nt(r);if(n){n.beginPath(),n.translate(e.x,e.y),n.moveTo(Hn.x,Hn.y);for(let l=0;l<s;l++)n.lineTo(i.length,Hn.y),n.translate(i.length,Hn.y),n.rotate(a)}}const pg=5;class sc{draw(e){const{particle:i,radius:n}=e,s=this.getCenter(i,n),o=this.getSidesData(i,n);dg(e,s,o)}getSidesCount(e){const i=e.shapeData;return Math.round(k(i?.sides??pg))}}const da=3.5,pa=2.66,vg=3;class mg extends sc{constructor(){super(...arguments),this.validTypes=["polygon"]}getCenter(e,i){return{x:-i/(e.sides/da),y:-i/(pa/da)}}getSidesData(e,i){const n=e.sides;return{count:{denominator:1,numerator:n},length:i*pa/(n/vg)}}}const gg=1.66,yg=3,bg=2;class wg extends sc{constructor(){super(...arguments),this.validTypes=["triangle"]}getCenter(e,i){return{x:-i,y:i/gg}}getSidesCount(){return yg}getSidesData(e,i){const n=i*bg;return{count:{denominator:2,numerator:3},length:n}}}async function _g(t,e=!0){t.checkVersion("3.9.1"),await t.addShape(new mg,e)}async function xg(t,e=!0){t.checkVersion("3.9.1"),await t.addShape(new wg,e)}async function kg(t,e=!0){t.checkVersion("3.9.1"),await _g(t,e),await xg(t,e)}class Cg{constructor(){this.enable=!1,this.speed=0,this.decay=0,this.sync=!1}load(e){x(e)||(e.enable!==void 0&&(this.enable=e.enable),e.speed!==void 0&&(this.speed=L(e.speed)),e.decay!==void 0&&(this.decay=L(e.decay)),e.sync!==void 0&&(this.sync=e.sync))}}class Pg extends Pi{constructor(){super(),this.animation=new Cg,this.direction=Ye.clockwise,this.path=!1,this.value=0}load(e){x(e)||(super.load(e),e.direction!==void 0&&(this.direction=e.direction),this.animation.load(e.animation),e.path!==void 0&&(this.path=e.path))}}const oc=2,Sg=Math.PI*oc,Mg=1,Og=360;class Eg{constructor(e){this.container=e}init(e){const i=e.options.rotate;if(!i)return;e.rotate={enable:i.animation.enable,value:Nt(k(i.value)),min:0,max:Sg},e.pathRotation=i.path;let n=i.direction;switch(n===Ye.random&&(n=Math.floor(A()*oc)>0?Ye.counterClockwise:Ye.clockwise),n){case Ye.counterClockwise:case"counterClockwise":e.rotate.status=j.decreasing;break;case Ye.clockwise:e.rotate.status=j.increasing;break}const s=i.animation;s.enable&&(e.rotate.decay=Mg-k(s.decay),e.rotate.velocity=k(s.speed)/Og*this.container.retina.reduceFactor,s.sync||(e.rotate.velocity*=A())),e.rotation=e.rotate.value}isEnabled(e){const i=e.options.rotate;return i?!e.destroyed&&!e.spawning&&(!!i.value||i.animation.enable||i.path):!1}loadOptions(e,...i){e.rotate||(e.rotate=new Pg);for(const n of i)e.rotate.load(n?.rotate)}update(e,i){this.isEnabled(e)&&(e.isRotating=!!e.rotate,e.rotate&&(jo(e,e.rotate,!1,bi.none,i),e.rotation=e.rotate.value))}}async function zg(t,e=!0){t.checkVersion("3.9.1"),await t.addParticleUpdater("rotate",i=>Promise.resolve(new Eg(i)),e)}const Rg=2,Tg=Math.sqrt(Rg),Dg=2;function Ig(t){const{context:e,radius:i}=t,n=i/Tg,s=n*Dg;e.rect(-n,-n,s,s)}const Lg=4;class Ag{constructor(){this.validTypes=["edge","square"]}draw(e){Ig(e)}getSidesCount(){return Lg}}async function Fg(t,e=!0){t.checkVersion("3.9.1"),await t.addShape(new Ag,e)}const Bg=2,Ei={x:0,y:0};function qg(t){const{context:e,particle:i,radius:n}=t,s=i.sides,o=i.starInset??Bg;e.moveTo(Ei.x,Ei.y-n);for(let r=0;r<s;r++)e.rotate(Math.PI/s),e.lineTo(Ei.x,Ei.y-n*o),e.rotate(Math.PI/s),e.lineTo(Ei.x,Ei.y-n)}const $g=2,Ng=5;class Vg{constructor(){this.validTypes=["star"]}draw(e){qg(e)}getSidesCount(e){const i=e.shapeData;return Math.round(k(i?.sides??Ng))}particleInit(e,i){const n=i.shapeData;i.starInset=k(n?.inset??$g)}}async function Ug(t,e=!0){t.checkVersion("3.9.1"),await t.addShape(new Vg,e)}const Hg=1;class Wg{constructor(e,i){this._container=e,this._engine=i}init(e){const i=this._container,n=e.options,s=Ae(n.stroke,e.id,n.reduceDuplicates);e.strokeWidth=k(s.width)*i.retina.pixelRatio,e.strokeOpacity=k(s.opacity??Hg),e.strokeAnimation=s.color?.animation;const o=bn(this._engine,s.color)??e.getFillColor();o&&(e.strokeColor=Nl(o,e.strokeAnimation,i.retina.reduceFactor))}isEnabled(e){const i=e.strokeAnimation,{strokeColor:n}=e;return!e.destroyed&&!e.spawning&&!!i&&(n?.h.value!==void 0&&n.h.enable||n?.s.value!==void 0&&n.s.enable||n?.l.value!==void 0&&n.l.enable)}
2update(e,i){this.isEnabled(e)&&Vl(e.strokeColor,i)}}async function jg(t,e=!0){t.checkVersion("3.9.1"),await t.addParticleUpdater("strokeColor",i=>Promise.resolve(new Wg(i,t)),e)}async function Ey(t,e=!0){t.checkVersion("3.9.1"),await Dm(t,!1),await Fp(t,!1),await jp(t,!1),await ev(t,!1),await uv(t,!1),await wv(t,!1),await kv(t,!1),await Ov(t,!1),await Tv(t,!1),await Uv(t,!1),await Yv(t,!1),await Am(t,!1),await Wm(t,!1),await ug(t,!1),await Mp(t,!1),await zp(t,!1),await wm(t,!1),await Rm(t,!1),await kg(t,!1),await Fg(t,!1),await Ug(t,!1),await Mm(t,!1),await zg(t,!1),await jg(t,!1),await Sp(t,e)}export{uu as $,ny as A,my as B,Xg as C,Cy as D,Hu as E,oy as F,el as G,cy as H,ay as I,ry as J,dy as K,wy as L,fn as M,Ri as N,yy as O,ly as P,gy as Q,Td as R,Ey as S,eo as T,Qc as U,wt as V,Au as W,Xu as X,xy as Y,iy as Z,ky as _,Ou as a,Zu as a0,du as a1,bu as a2,Py as a3,Io as a4,sy as a5,My as a6,Oa as b,Jg as c,ty as d,Uu as e,Su as f,K as g,$u as h,zt as i,ey as j,hy as k,uy as l,by as m,Wc as n,wl as o,Ma as p,fy as q,Qg as r,lt as s,tl as t,Zg as u,vy as v,lo as w,py as x,_y as y,Kg as z};
3//# sourceMappingURL=3IHSg3-s.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.