PageSourceSearch

https://recly.io/_next/static/chunks/7604-cc789aae00f65a09.js

js recly.io collected 2026-10-08 23:12:24 UTC 86,729 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7604],{6741:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]])},52958:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},60401:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("circle-help",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},68065:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("file-type",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M9 13v-1h6v1",key:"1bb014"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"M11 18h2",key:"12mj7e"}]])},55452:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("pause",[["rect",{x:"14",y:"4",width:"4",height:"16",rx:"1",key:"zuxfzm"}],["rect",{x:"6",y:"4",width:"4",height:"16",rx:"1",key:"1okwgv"}]])},77908:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("pen-line",[["path",{d:"M12 20h9",key:"t2du7b"}],["path",{d:"M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z",key:"1ykcvy"}]])},71864:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]])},26198:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]])},35325:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]])},27720:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("square-pen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]])},60597:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("video",[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]])},78081:function(t,e,i){i.d(e,{Z:function(){return s}});let s=(0,i(59565).Z)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]])},20582:function(t,e,i){i.d(e,{default:function(){return n.a}});var s=i(31727),n=i.n(s)},31727:function(t,e,i){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return a}});let s=i(84732);i(27573),i(7653);let n=s._(i(19484));function a(t,e){var i;let s={loading:t=>{let{error:e,isLoading:i,pastDelay:s}=t;return null}};"function"==typeof t&&(s.loader=t);let a={...s,...e};return(0,n.default)({...a,modules:null==(i=a.loadableGenerated)?void 0:i.modules})}("function"==typeof e.default||"object"==typeof e.default&&null!==e.default)&&void 0===e.default.__esModule&&(Object.defineProperty(e.default,"__esModule",{value:!0}
1),Object.assign(e.default,e),t.exports=e.default)},897:function(t,e,i){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"BailoutToCSR",{enumerable:!0,get:function(){return n}});let s=i(86463);function n(t){let{reason:e,children:i}=t;if("undefined"==typeof window)throw new s.BailoutToCSRError(e);return i}},19484:function(t,e,i){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return h}});let s=i(27573),n=i(7653),a=i(897),r=i(30697);function o(t){return{default:t&&"default"in t?t.default:t}}let l={loader:()=>Promise.resolve(o(()=>null)),loading:null,ssr:!0},h=function(t){let e={...l,...t},i=(0,n.lazy)(()=>e.loader().then(o)),h=e.loading;function c(t){let o=h?(0,s.jsx)(h,{isLoading:!0,pastDelay:!0,error:null}):null,l=e.ssr?(0,s.jsxs)(s.Fragment,{children:["undefined"==typeof window?(0,s.jsx)(r.PreloadCss,{moduleIds:e.modules}):null,(0,s.jsx)(i,{...t})]}):(0,s.jsx)(a.BailoutToCSR,{reason:"next/dynamic",children:(0,s.jsx)(i,{...t})});return(0,s.jsx)(n.Suspense,{fallback:o,children:l})}return c.displayName="LoadableComponent",c}},30697:function(t,e,i){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"PreloadCss",{enumerable:!0,get:function(){return a}});let s=i(27573),n=i(51458);function a(t){let{moduleIds:e}=t;if("undefined"!=typeof window)return null;let i=(0,n.getExpectedRequestStore)("next/dynamic css"),a=[];if(i.reactLoadableManifest&&e){let t=i.reactLoadableManifest;for(let i of e){if(!t[i])continue;let e=t[i].files.filter(t=>t.endsWith(".css"));a.push(...e)}}return 0===a.length?null:(0,s.jsx)(s.Fragment,{children:a.map(t=>(0,s.jsx)("link",{precedence:"dynamic",rel:"stylesheet",href:i.assetPrefix+"/_next/"+encodeURI(t),as:"style"},t))})}},57819:function(t,e,i){i.d(e,{u:function(){return s}});function s(t,[e,i]){return Math.min(i,Math.max(e,t))}},20461:function(t,e,i){i.d(e,{f:function(){return p}});var s=i(7653),n=i.t(s,2);i(3458);var a=i(18497),r=i(27573),o=Symbol.for("react.lazy"),l=n[" use ".trim().toString()];function h(t){var e;return null!=t&&"object"==typeof t&&"$$typeof"in t&&t.$$typeof===o&&"_payload"in t&&"object"==typeof(e=t._payload)&&null!==e&&"then"in e}var c=Symbol("radix.slottable");function u(t){return s.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===c}var d=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((t,e)=>{let i=function(t){let e=function(t){let e=s.forwardRef((t,e)=>{let{children:i,...n}=t;if(h(i)&&"function"==typeof l&&(i=l(i._payload)),s.isValidElement(i)){var r;let t,o;let l=(r=i,(t=Object.getOwnPropertyDescriptor(r.props,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning?r.ref:(t=Object.getOwnPropertyDescriptor(r,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning?r.props.ref:r.props.ref||r.ref),h=function(t,e){let i={...e};for(let s in e){let n=t[s],a=e[s];/^on[A-Z]/.test(s)?n&&a?i[s]=(...t)=>{let e=a(...t);return n(...t),e}:n&&(i[s]=n):"style"===s?i[s]={...n,...a}:"className"===s&&(i[s]=[n,a].filter(Boolean).join(" "))}return{...t,...i}}(n,i.props);return i.type!==s.Fragment&&(h.ref=e?(0,a.F)(e,l):l),s.cloneElement(i,h)}return s.Children.count(i)>1?s.Children.only(null):null});return e.displayName=`${t}.SlotClone`,e}(t),i=s.forwardRef((t,i)=>{let{children:n,...a}=t;h(n)&&"function"==typeof l&&(n=l(n._payload));let o=s.Children.toArray(n),c=o.find(u);if(c){let t=c.props.children,n=o.map(e=>e!==c?e:s.Children.count(t)>1?s.Children.only(null):s.isValidElement(t)?t.props.children:null);return(0,r.jsx)(e,{...a,ref:i,children:s.isValidElement(t)?s.cloneElement(t,void 0,n):null})}return(0,r.jsx)(e,{...a,ref:i,children:n})});return i.displayName=`${t}.Slot`,i}(`Primitive.${e}`),n=s.forwardRef((t,s)=>{let{asChild:n,...a}=t,o=n?i:e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,r.jsx)(o,{...a,ref:s})});return n.displayName=`Primitive.${e}`,{...t,[e]:n}},{}),f=s.forwardRef((t,e)=>(0,r.jsx)(d.label,{...t,ref:e,onMouseDown:e=>{var i;e.target.closest("button, input, select, textarea")||(null===(i=t.onMouseDown)||void 0===i||i.call(t,e),!e.defaultPrevented&&e.detail>1&&e.preventDefault())}}));f.displayName="Label";var p=f}
1,77214:function(t,e,i){i.d(e,{D:function(){return n}});var s=i(7653);function n(t){let e=s.useRef({value:t,previous:t});return s.useMemo(()=>(e.current.value!==t&&(e.current.previous=e.current.value,e.current.value=t),e.current.previous),[t])}},115:function(t,e,i){var s,n,a,r,o,l,h,c,u,d,f,p,v,m,y,g,_,w,b,x,z,k,M,P,O,S,C,D,R,T,I,E,L,A,F,V,j,B,Z,q,H,$,W,U;i.d(e,{NV1:function(){return a},Cdc:function(){return id},Dpx:function(){return m},Hyf:function(){return r},gqJ:function(){return f},nxi:function(){return k},L8z:function(){return iS},OzF:function(){return ep},Voc:function(){return y},DYc:function(){return o},Igb:function(){return w},$Sh:function(){return iC},AeJ:function(){return ip},RnL:function(){return x},SWe:function(){return eV},OWs:function(){return tv},M_G:function(){return tZ},kRC:function(){return tN},gy4:function(){return tU},uZ5:function(){return tw},ocL:function(){return et},ZBL:function(){return tq},Idc:function(){return tC},iCg:function(){return tW},XDe:function(){return t$},pSR:function(){return el},gK4:function(){return Q},KH1:function(){return tX},Spd:function(){return tS},oW6:function(){return tO},bS$:function(){return en},BEi:function(){return ee},Dt5:function(){return ei},jl5:function(){return tI},sZz:function(){return t_},KIV:function(){return tM},Gu7:function(){return tz},vzQ:function(){return t9},izR:function(){return t4},veL:function(){return t6},Y6v:function(){return t7},V0:function(){return tJ},kJL:function(){return td},wm$:function(){return tH},dBL:function(){return tF},Ft:function(){return tf},Kn2:function(){return tu},Ac:function(){return tB},KrJ:function(){return tL},c86:function(){return tj},wA_:function(){return tY},mxw:function(){return tV},X5o:function(){return K},aMP:function(){return G},WtO:function(){return X},BVM:function(){return tR},tZy:function(){return J},vdf:function(){return tx},lNs:function(){return t5},tXk:function(){return t2},dpV:function(){return tG},lCU:function(){return t3},Cst:function(){return tP},S6T:function(){return iD},CrJ:function(){return t0},PBz:function(){return eo}});let N="generated",G="pointerleave",X="pointermove",Y="touchend",Q="tsParticles - Error",J=100,K=1e3,tt={x:0,y:0,z:0},te={a:1,b:0,c:0,d:1},ti="random",ts=2*Math.PI,tn="true",ta="false",tr="canvas",to=0;function tl(t){return"boolean"==typeof t}function th(t){return"string"==typeof t}function tc(t){return"number"==typeof t}function tu(t){return"object"==typeof t&&null!==t}function td(t){return Array.isArray(t)}function tf(t){return null==t}(M=s||(s={})).bottom="bottom",M.bottomLeft="bottom-left",M.bottomRight="bottom-right",M.left="left",M.none="none",M.right="right",M.top="top",M.topLeft="top-left",M.topRight="top-right",M.outside="outside",M.inside="inside";class tp{constructor(t,e,i){if(this._updateFromAngle=(t,e)=>{this.x=Math.cos(t)*e,this.y=Math.sin(t)*e},!tc(t)&&t)this.x=t.x,this.y=t.y,this.z=t.z?t.z:tt.z;else if(void 0!==t&&void 0!==e)this.x=t,this.y=e,this.z=i??tt.z;else throw Error(`${Q} Vector3d not initialized correctly`)}static get origin(){return tp.create(tt.x,tt.y,tt.z)}get angle(){return Math.atan2(this.y,this.x)}set angle(t){this._updateFromAngle(t,this.length)}get length(){return Math.sqrt(this.getLengthSq())}set length(t){this._updateFromAngle(this.angle,t)}static clone(t){return tp.create(t.x,t.y,t.z)}static create(t,e,i){return new tp(t,e,i)}add(t){return tp.create(this.x+t.x,this.y+t.y,this.z+t.z)}addTo(t){this.x+=t.x,this.y+=t.y,this.z+=t.z}copy(){return tp.clone(this)}distanceTo(t){return this.sub(t).length}distanceToSq(t){return this.sub(t).getLengthSq()}div(t){return tp.create(this.x/t,this.y/t,this.z/t)}divTo(t){this.x/=t,this.y/=t,this.z/=t}getLengthSq(){return this.x**2+this.y**2}mult(t){return tp.create(this.x*t,this.y*t,this.z*t)}multTo(t){this.x*=t,this.y*=t,this.z*=t}normalize(){let t=this.length;0!=t&&this.multTo(1/t)}rotate(t){return tp.create(this.x*Math.cos(t)-this.y*Math.sin(t),this.x*Math.sin(t)+this.y*Math.cos(t),tt.z)}setTo(t){this.x=t.x,this.y=t.y,this.z=t.z?t.z:tt.z}sub(t){return tp.create(this.x-t.x,this.y-t.y,this.z-t.z)}subFrom(t){this.x-=t.x,this.y-=t.y,this.z-=t.z}}class tv extends tp{constructor(t,e){super(t,e,tt.z)}static get origin(){return tv.create(tt.x,tt.y)}static clone(t){return tv.create(t.x,t.y)}static create(t,e){return new tv(t,e)}}let tm=Math.random,ty=t=>requestAnimationFrame(t),tg=t=>cancelAnimationFrame(t);function t_(){return tw(tm(),0,1-Number.EPSILON)}function tw(t,e,i){return Math.min(Math.max(t,e),i)}function tb(t,e,i,s){return Math.floor((t*i+e*s)/(i+s))}function tx(t){let e=tM(t),i=tk(t);return e===i&&(i=0),t_()*(e-i)+i}function tz(t){return tc(t)?t:tx(t)}function tk(t){return tc(t)?t:t.min}function tM(t){return tc(t)?t:t.max}function tP(t,e){if(t===e||void 0===e&&tc(t))return t;let i=tk(t),s=tM(t);return void 0!==e?{min:Math.min(i,e),max:Math.max(s,e)}:tP(i,s)}function tO(t,e){let i=t.x-e.x,s=t.y-e.y;return{dx:i,dy:s,distance:Math.sqrt(i**2+s**2)}}function tS(t,e){return tO(t,e).distance}function tC(t){return t*Math.PI/180}function tD(t,e,i,s){return tv.create(t.x*(i-s)/(i+s)+2*e.x*s/(i+s),t.y)}function tR(t){return t?t.endsWith("%")?parseFloat(t)/J:parseFloat(t):1}(P=n||(n={})).auto="auto",P.increase="increase",P.decrease="decrease",P.random="random",(O=a||(a={})).increasing="increasing",O.decreasing="decreasing",(S=r||(r={})).none="none",S.max="max",S.min="min",(C=o||(o={})).bottom="bottom",C.left="left",C.right="right",C.top="top",(D=l||(l={})).precise="precise",D.percent="percent",(R=h||(h={})).max="max",R.min="min",R.random="random";let tT={debug:console.debug,error:console.error,info:console.info,log:console.log,verbose:console.log,warning:console.warn};function tI(){return tT}function tE(t){let e={bounced:!1}
1,{pSide:i,pOtherSide:s,rectSide:n,rectOtherSide:a,velocity:r,factor:o}=t;return s.min<a.min||s.min>a.max||s.max<a.min||s.max>a.max||(i.max>=n.min&&i.max<=(n.max+n.min)*.5&&r>0||i.min<=n.max&&i.min>(n.max+n.min)*.5&&r<0)&&(e.velocity=-(r*o),e.bounced=!0),e}function tL(){return"undefined"==typeof window||!window||void 0===window.document||!window.document}function tA(t){if(!tL()&&"undefined"!=typeof matchMedia)return matchMedia(t)}function tF(t,e){return t===e||td(e)&&e.indexOf(t)>-1}async function tV(t,e){try{await document.fonts.load(`${e??"400"} 36px '${t??"Verdana"}'`)}catch{}}function tj(t,e,i=!0){return t[void 0!==e&&i?e%t.length:Math.floor(t_()*t.length)]}function tB(t,e,i,s,n){var a;let r;return a=tZ(t,s??0),r=!0,n&&n!==o.bottom||(r=a.top<e.height+i.x),r&&(!n||n===o.left)&&(r=a.right>i.x),r&&(!n||n===o.right)&&(r=a.left<e.width+i.y),r&&(!n||n===o.top)&&(r=a.bottom>i.y),r}function tZ(t,e){return{bottom:t.y+e,left:t.x-e,right:t.x+e,top:t.y-e}}function tq(t,...e){for(let i of e){if(null==i)continue;if(!tu(i)){t=i;continue}let e=Array.isArray(i);for(let s in e&&(tu(t)||!t||!Array.isArray(t))?t=[]:!e&&(tu(t)||!t||Array.isArray(t))&&(t={}),i){if("__proto__"===s)continue;let e=i[s],n=t;n[s]=tu(e)&&Array.isArray(e)?e.map(t=>tq(n[s],t)):tq(n[s],e)}}return t}function tH(t,e){return!!tQ(e,e=>e.enable&&tF(t,e.mode))}function t$(t,e,i){tX(e,e=>{let s=e.mode;e.enable&&tF(t,s)&&tX(e.selectors,t=>{i(t,e)})})}function tW(t,e){if(e&&t)return tQ(t,t=>(function(t,e){let i=tX(e,e=>t.matches(e));return td(i)?i.some(t=>t):i})(e,t.selectors))}function tU(t){return{position:t.getPosition(),radius:t.getRadius(),mass:t.getMass(),velocity:t.velocity,factor:tv.create(tz(t.options.bounce.horizontal.value),tz(t.options.bounce.vertical.value))}}function tN(t,e){let{x:i,y:s}=t.velocity.sub(e.velocity),[n,a]=[t.position,e.position],{dx:r,dy:o}=tO(a,n);if(i*r+s*o<0)return;let l=-Math.atan2(o,r),h=t.mass,c=e.mass,u=t.velocity.rotate(l),d=e.velocity.rotate(l),f=tD(u,d,h,c),p=tD(d,u,h,c),v=f.rotate(-l),m=p.rotate(-l);t.velocity.x=v.x*t.factor.x,t.velocity.y=v.y*t.factor.y,e.velocity.x=m.x*e.factor.x,e.velocity.y=m.y*e.factor.y}function tG(t,e){let i=tZ(t.getPosition(),t.getRadius()),s=t.options.bounce,n=tE({pSide:{min:i.left,max:i.right},pOtherSide:{min:i.top,max:i.bottom},rectSide:{min:e.left,max:e.right},rectOtherSide:{min:e.top,max:e.bottom},velocity:t.velocity.x,factor:tz(s.horizontal.value)});n.bounced&&(void 0!==n.velocity&&(t.velocity.x=n.velocity),void 0!==n.position&&(t.position.x=n.position));let a=tE({pSide:{min:i.top,max:i.bottom},pOtherSide:{min:i.left,max:i.right},rectSide:{min:e.top,max:e.bottom},rectOtherSide:{min:e.left,max:e.right},velocity:t.velocity.y,factor:tz(s.vertical.value)});a.bounced&&(void 0!==a.velocity&&(t.velocity.y=a.velocity),void 0!==a.position&&(t.position.y=a.position))}function tX(t,e){return td(t)?t.map((t,i)=>e(t,i)):e(t,0)}function tY(t,e,i){return td(t)?tj(t,e,i):t}function tQ(t,e){return td(t)?t.find((t,i)=>e(t,i)):e(t,0)?t:void 0}function tJ(t,e){let i=t.value,s=t.animation,r={delayTime:tz(s.delay)*K,enable:s.enable,value:tz(t.value)*e,max:tM(i)*e,min:tk(i)*e,loops:0,maxLoops:tz(s.count),time:0};if(s.enable){switch(r.decay=1-tz(s.decay),s.mode){case n.increase:r.status=a.increasing;break;case n.decrease:r.status=a.decreasing;break;case n.random:r.status=t_()>=.5?a.increasing:a.decreasing}let t=s.mode===n.auto;switch(s.startValue){case h.min:r.value=r.min,t&&(r.status=a.increasing);break;case h.max:r.value=r.max,t&&(r.status=a.decreasing);break;case h.random:default:r.value=tx(r),t&&(r.status=t_()>=.5?a.increasing:a.decreasing)}}return r.initialValue=r.value,r}function tK(t,e){return function(t,e){if(t.mode!==l.percent){let{mode:e,...i}=t;return i}return"x"in t?{x:t.x/J*e.width,y:t.y/J*e.height}:{width:t.width/J*e.width,height:t.height/J*e.height}}(t,e)}function t0(t,e,i,s,n){if(t.destroyed||!e||!e.enable||(e.maxLoops??0)>0&&(e.loops??0)>(e.maxLoops??0))return;let o=(e.velocity??0)*n.factor,l=e.min,h=e.max,c=e.decay??1;if(e.time||(e.time=0),(e.delayTime??0)>0&&e.time<(e.delayTime??0)&&(e.time+=n.value),!((e.delayTime??0)>
10)||!(e.time<(e.delayTime??0))){switch(e.status){case a.increasing:e.value>=h?(i?e.status=a.decreasing:e.value-=h,e.loops||(e.loops=0),e.loops++):e.value+=o;break;case a.decreasing:e.value<=l?(i?e.status=a.increasing:e.value+=h,e.loops||(e.loops=0),e.loops++):e.value-=o}e.velocity&&1!==c&&(e.velocity*=c),function(t,e,i,s,n){switch(e){case r.max:i>=n&&t.destroy();break;case r.min:i<=s&&t.destroy()}}(t,s,e.value,l,h),t.destroyed||(e.value=tw(e.value,l,h))}}let t1=function(t){let e=new Map;return(...i)=>{let s=JSON.stringify(i);if(e.has(s))return e.get(s);let n=t(...i);return e.set(s,n),n}}(function(t){let e=document.createElement("div").style,i={width:"100%",height:"100%",margin:"0",padding:"0",borderWidth:"0",position:"fixed",zIndex:t.toString(10),"z-index":t.toString(10),top:"0",left:"0"};for(let t in i){let s=i[t];e.setProperty(t,s)}return e});function t2(t,e,i,s=!0){if(!e)return;let n=th(e)?{value:e}:e;if(th(n.value))return function t(e,i,s,n=!0){if(!i)return;let a=th(i)?{value:i}:i;if(th(a.value))return a.value===ti?t8():function(t,e){if(e){for(let i of t.colorManagers.values())if(e.startsWith(i.stringPrefix))return i.parseString(e)}}(e,a.value);if(td(a.value))return t(e,{value:tj(a.value,s,n)});for(let t of e.colorManagers.values()){let e=t.handleColor(a);if(e)return e}}(t,n.value,i,s);if(td(n.value))return t2(t,{value:tj(n.value,i,s)});for(let e of t.colorManagers.values()){let t=e.handleRangeColor(n);if(t)return t}}function t5(t,e,i,s=!0){let n=t2(t,e,i,s);return n?t3(n):void 0}function t3(t){let e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),a=Math.min(e,i,s),r={h:0,l:(n+a)*.5,s:0};return n!==a&&(r.s=r.l<.5?(n-a)/(n+a):(n-a)/(2-n-a),r.h=e===n?(i-s)/(n-a):r.h=i===n?2+(s-e)/(n-a):4+(e-i)/(n-a)),r.l*=100,r.s*=100,r.h*=60,r.h<0&&(r.h+=360),r.h>=360&&(r.h-=360),r}function t6(t){let e=(t.h%360+360)%360,i=Math.max(0,Math.min(100,t.s)),s=Math.max(0,Math.min(100,t.l)),n=e/360,a=i/100,r=s/100;if(0===i){let t=Math.round(255*r);return{r:t,g:t,b:t}}let o=(t,e,i)=>(i<0&&i++,i>1&&i--,6*i<1)?t+(e-t)*6*i:2*i<1?e:3*i<2?t+(e-t)*(2/3-i)*6:t,l=r<.5?r*(1+a):r+a-r*a,h=2*r-l;return{r:Math.round(Math.min(255,255*o(h,l,n+.3333333333333333))),g:Math.round(Math.min(255,255*o(h,l,n))),b:Math.round(Math.min(255,255*o(h,l,n-.3333333333333333)))}}function t7(t){let e=t6(t);return{a:t.a,b:e.b,g:e.g,r:e.r}}function t8(t){let e=t??0;return{b:Math.floor(tx(tP(e,256))),g:Math.floor(tx(tP(e,256))),r:Math.floor(tx(tP(e,256)))}}function t4(t,e){return`rgba(${t.r}, ${t.g}, ${t.b}, ${e??1})`}function t9(t,e){return`hsla(${t.h}, ${t.s}%, ${t.l}%, ${e??1})`}function et(t,e,i,s){let n=t,a=e;return void 0===n.r&&(n=t6(t)),void 0===a.r&&(a=t6(e)),{b:tb(n.b,a.b,i,s),g:tb(n.g,a.g,i,s),r:tb(n.r,a.r,i,s)}}function ee(t,e,i){if(i===ti)return t8();if("mid"!==i)return i;{let i=t.getFillColor()??t.getStrokeColor(),s=e?.getFillColor()??e?.getStrokeColor();if(i&&s&&e)return et(i,s,t.getRadius(),e.getRadius());{let t=i??s;if(t)return t6(t)}}}function ei(t,e,i,s){let n=th(e)?e:e.value;return n===ti?s?t2(t,{value:n}):i?ti:"mid":"mid"===n?"mid":t2(t,{value:n})}function es(t){return void 0!==t?{h:t.h.value,s:t.s.value,l:t.l.value}:void 0}function en(t,e,i){let s={h:{enable:!1,value:t.h},s:{enable:!1,value:t.s},l:{enable:!1,value:t.l}};return e&&(ea(s.h,e.h,i),ea(s.s,e.s,i),ea(s.l,e.l,i)),s}function ea(t,e,i){t.enable=e.enable,t.enable?(t.velocity=tz(e.speed)/J*i,t.decay=1-tz(e.decay),t.status=a.increasing,t.loops=0,t.maxLoops=tz(e.count),t.time=0,t.delayTime=tz(e.delay)*K,e.sync||(t.velocity
1*=t_(),t.value*=t_()),t.initialValue=t.value,t.offset=tP(e.offset)):t.velocity=0}function er(t,e,i,s){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+=s.value),(t.delayTime??0)>0&&t.time<(t.delayTime??0)))return;let n=t.offset?tx(t.offset):0,r=(t.velocity??0)*s.factor+3.6*n,o=t.decay??1,l=tM(e),h=tk(e);i&&t.status!==a.increasing?(t.value-=r,t.value<0&&(t.loops||(t.loops=0),t.loops++,t.status=a.increasing)):(t.value+=r,t.value>l&&(t.loops||(t.loops=0),t.loops++,i?t.status=a.decreasing:t.value-=l)),t.velocity&&1!==o&&(t.velocity*=o),t.value=tw(t.value,h,l)}function eo(t,e){if(!t)return;let{h:i,s,l:n}=t,a={h:{min:0,max:360},s:{min:0,max:100},l:{min:0,max:100}};i&&er(i,a.h,!1,e),s&&er(s,a.s,!0,e),n&&er(n,a.l,!0,e)}function el(t,e,i){t.beginPath(),t.moveTo(e.x,e.y),t.lineTo(i.x,i.y),t.closePath()}function eh(t,e){t.clearRect(tt.x,tt.y,e.width,e.height)}function ec(t,e,i=!1){if(!e||!t)return;let s=t.style;if(!s)return;let n=new Set;for(let t in s)Object.prototype.hasOwnProperty.call(s,t)&&n.add(s[t]);for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&n.add(e[t]);for(let t of n){let n=e.getPropertyValue(t);n?s.setProperty(t,n,i?"important":""):s.removeProperty(t)}}(T=c||(c={})).darken="darken",T.enlighten="enlighten";class eu{constructor(t,e){this.container=t,this._applyPostDrawUpdaters=t=>{for(let e of this._postDrawUpdaters)e.afterDraw?.(t)},this._applyPreDrawUpdaters=(t,e,i,s,n,a)=>{for(let r of this._preDrawUpdaters){if(r.getColorStyles){let{fill:a,stroke:o}=r.getColorStyles(e,t,i,s);a&&(n.fill=a),o&&(n.stroke=o)}if(r.getTransformValues){let t=r.getTransformValues(e);for(let e in t)!function(t,e,i){let s=e[i];void 0!==s&&(t[i]=(t[i]??1)*s)}(a,t,e)}r.beforeDraw?.(e)}},this._applyResizePlugins=()=>{for(let t of this._resizePlugins)t.resize?.()},this._getPluginParticleColors=t=>{let e,i;for(let s of this._colorPlugins)if(!e&&s.particleFillColor&&(e=t5(this._engine,s.particleFillColor(t))),!i&&s.particleStrokeColor&&(i=t5(this._engine,s.particleStrokeColor(t))),e&&i)break;return[e,i]},this._initCover=async()=>{let t=this.container.actualOptions.backgroundMask.cover,e=t.color;if(e){let i=t2(this._engine,e);if(i){let e={...i,a:t.opacity};this._coverColorStyle=t4(e,e.a)}}else await new Promise((e,i)=>{if(!t.image)return;let s=document.createElement("img");s.addEventListener("load",()=>{this._coverImage={image:s,opacity:t.opacity},e()}),s.addEventListener("error",t=>{i(t.error)}),s.src=t.image})},this._initStyle=()=>{let t=this.element,e=this.container.actualOptions;if(t)for(let i in this._fullScreen?this._setFullScreenStyle():this._resetOriginalStyle(),e.style){if(!i||!e.style||!Object.prototype.hasOwnProperty.call(e.style,i))continue;let s=e.style[i];s&&t.style.setProperty(i,s,"important")}},this._initTrail=async()=>{let t=this.container.actualOptions.particles.move.trail,e=t.fill;if(!t.enable)return;let i=1/t.length;if(e.color){let t=t2(this._engine,e.color);if(!t)return;this._trailFill={color:{...t},opacity:i}}else await new Promise((t,s)=>{if(!e.image)return;let n=document.createElement("img");n.addEventListener("load",()=>{this._trailFill={image:n,opacity:i},t()}),n.addEventListener("error",t=>{s(t.error)}),n.src=e.image})},this._paintBase=t=>{this.draw(e=>{var i;return i=this.size,void(e.fillStyle=t??"rgba(0,0,0,0)",e.fillRect(tt.x,tt.y,i.width,i.height))})},this._paintImage=(t,e)=>{this.draw(i=>{var s;return s=this.size,void(t&&(i.globalAlpha=e,i.drawImage(t,tt.x,tt.y,s.width,s.height),i.globalAlpha=1))})},this._repairStyle=()=>{let t=this.element;if(!t)return;this._safeMutationObserver(t=>
1t.disconnect()),this._initStyle(),this.initBackground();let e=this._pointerEvents;t.style.pointerEvents=e,t.setAttribute("pointer-events",e),this._safeMutationObserver(e=>{t&&t instanceof Node&&e.observe(t,{attributes:!0})})},this._resetOriginalStyle=()=>{let t=this.element,e=this._originalStyle;t&&e&&ec(t,e,!0)},this._safeMutationObserver=t=>{this._mutationObserver&&t(this._mutationObserver)},this._setFullScreenStyle=()=>{let t=this.element;t&&ec(t,t1(this.container.actualOptions.fullScreen.zIndex),!0)},this._engine=e,this._standardSize={height:0,width:0};let i=t.retina.pixelRatio,s=this._standardSize;this.size={height:s.height*i,width:s.width*i},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(){let t=this.container.actualOptions,e=t.particles.move.trail,i=this._trailFill;t.backgroundMask.enable?this.paint():e.enable&&e.length>0&&i?i.color?this._paintBase(t4(i.color,i.opacity)):i.image&&this._paintImage(i.image,i.opacity):t.clear&&this.draw(t=>{eh(t,this.size)})}destroy(){if(this.stop(),this._generated){let t=this.element;t?.remove(),this.element=void 0}else this._resetOriginalStyle();this._preDrawUpdaters=[],this._postDrawUpdaters=[],this._resizePlugins=[],this._colorPlugins=[]}draw(t){let e=this._context;if(e)return t(e)}drawAsync(t){let e=this._context;if(e)return t(e)}drawParticle(t,e){if(t.spawning||t.destroyed)return;let i=t.getRadius();if(i<=0)return;let s=t.getFillColor(),n=t.getStrokeColor()??s,[a,r]=this._getPluginParticleColors(t);a||(a=s),r||(r=n),(a||r)&&this.draw(s=>{let n=this.container,o=n.actualOptions,l=t.options.zIndex,h=1-t.zIndexFactor,c=h**l.opacityRate,u=t.bubble.opacity??t.opacity?.value??1,d=t.strokeOpacity??u,f=u*c,p={},v={fill:a?t9(a,f):void 0};v.stroke=r?t9(r,d*c):v.fill,this._applyPreDrawUpdaters(s,t,i,f,v,p),function(t){let{container:e,context:i,particle:s,delta:n,colorStyles:a,backgroundMask:r,composite:o,radius:l,opacity:h,shadow:c,transform:u}=t,d=s.getPosition(),f=s.rotation+(s.pathRotation?s.velocity.angle:0),p={sin:Math.sin(f),cos:Math.cos(f)},v=!!f,m={a:p.cos*(u.a??te.a),b:v?p.sin*(u.b??1):u.b??te.b,c:v?-p.sin*(u.c??1):u.c??te.c,d:p.cos*(u.d??te.d)};i.setTransform(m.a,m.b,m.c,m.d,d.x,d.y),r&&(i.globalCompositeOperation=o);let y=s.shadowColor;c.enable&&y&&(i.shadowBlur=c.blur,i.shadowColor=t4(y),i.shadowOffsetX=c.offset.x,i.shadowOffsetY=c.offset.y),a.fill&&(i.fillStyle=a.fill);let g=s.strokeWidth??0;i.lineWidth=g,a.stroke&&(i.strokeStyle=a.stroke);let _={container:e,context:i,particle:s,radius:l,opacity:h,delta:n,transformData:m,strokeWidth:g};(function(t){let{container:e,context:i,particle:s,radius:n,opacity:a,delta:r,strokeWidth:o,transformData:l}=t;if(!s.shape)return;let h=e.shapeDrawers.get(s.shape);h&&(i.beginPath(),h.draw({context:i,particle:s,radius:n,opacity:a,delta:r,pixelRatio:e.retina.pixelRatio,transformData:{...l}}),s.shapeClose&&i.closePath(),o>0&&i.stroke(),s.shapeFill&&i.fill())})(_),function(t){let{container:e,context:i,particle:s,radius:n,opacity:a,delta:r,transformData:o}=t;if(!s.shape)return;let l=e.shapeDrawers.get(s.shape);l?.afterDraw&&l.afterDraw({context:i,particle:s,radius:n,opacity:a,delta:r,pixelRatio:e.retina.pixelRatio,transformData:{...o}})}(_),function(t){let{container:e,context:i,particle:s,radius:n,opacity:a,delta:r,transformData:o}=t;if(!s.effect)return;let l=e.effectDrawers.get(s.effect);l&&l.draw({context:i,particle:s,radius:n,opacity:a,delta:r,pixelRatio:e.retina.pixelRatio,transformData:{...o}})}(_),i.globalCompositeOperation="source-over",i.resetTransform()}({container:n,context:s,particle:t,delta:e,colorStyles:v,backgroundMask:o.backgroundMask.enable,composite:o.backgroundMask.composite,radius:i*h**l.sizeRate,opacity:f,shadow:t.options.shadow,transform:p}),this._applyPostDrawUpdaters(t)})}drawParticlePlugin(t,e,i){this.draw(s=>{t.drawParticle&&t.drawParticle(s,e,i)})}drawPlugin(t,e){this.draw(i=>{t.draw&&t.draw(i,e)})}
1async init(){this._safeMutationObserver(t=>t.disconnect()),this._mutationObserver=function(t){if(!tL()&&"undefined"!=typeof MutationObserver)return new MutationObserver(t)}(t=>{for(let e of t)"attributes"===e.type&&"style"===e.attributeName&&this._repairStyle()}),this.resize(),this._initStyle(),await this._initCover();try{await this._initTrail()}catch(t){tT.error(t)}this.initBackground(),this._safeMutationObserver(t=>{this.element&&this.element instanceof Node&&t.observe(this.element,{attributes:!0})}),this.initUpdaters(),this.initPlugins(),this.paint()}initBackground(){let t=this.container.actualOptions.background,e=this.element;if(!e)return;let i=e.style;if(i){if(t.color){let e=t2(this._engine,t.color);i.backgroundColor=e?t4(e,t.opacity):""}else i.backgroundColor="";i.backgroundImage=t.image||"",i.backgroundPosition=t.position||"",i.backgroundRepeat=t.repeat||"",i.backgroundSize=t.size||""}}initPlugins(){for(let t of(this._resizePlugins=[],this.container.plugins.values()))t.resize&&this._resizePlugins.push(t),(t.particleFillColor??t.particleStrokeColor)&&this._colorPlugins.push(t)}initUpdaters(){for(let t of(this._preDrawUpdaters=[],this._postDrawUpdaters=[],this.container.particles.updaters))t.afterDraw&&this._postDrawUpdaters.push(t),(t.getColorStyles??t.getTransformValues??t.beforeDraw)&&this._preDrawUpdaters.push(t)}loadCanvas(t){this._generated&&this.element&&this.element.remove(),this._generated=t.dataset&&N in t.dataset?"true"===t.dataset[N]:this._generated,this.element=t,this.element.ariaHidden="true",this._originalStyle=function(t){let e=document.createElement("div").style;if(!t)return e;for(let i in t){let s=t[i];if(!Object.prototype.hasOwnProperty.call(t,i)||tf(s))continue;let n=t.getPropertyValue?.(s);if(!n)continue;let a=t.getPropertyPriority?.(s);a?e.setProperty?.(s,n,a):e.setProperty?.(s,n)}return e}(this.element.style);let e=this._standardSize;e.height=t.offsetHeight,e.width=t.offsetWidth;let i=this.container.retina.pixelRatio,s=this.size;t.height=s.height=e.height*i,t.width=s.width=e.width*i,this._context=this.element.getContext("2d"),this._safeMutationObserver(t=>
1t.disconnect()),this.container.retina.init(),this.initBackground(),this._safeMutationObserver(t=>{this.element&&this.element instanceof Node&&t.observe(this.element,{attributes:!0})})}paint(){let t=this.container.actualOptions;this.draw(e=>{t.backgroundMask.enable&&t.backgroundMask.cover?(eh(e,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;let t=this.container,e=t.canvas._standardSize,i={width:this.element.offsetWidth,height:this.element.offsetHeight},s=t.retina.pixelRatio,n={width:i.width*s,height:i.height*s};if(i.height===e.height&&i.width===e.width&&n.height===this.element.height&&n.width===this.element.width)return!1;let a={...e};e.height=i.height,e.width=i.width;let r=this.size;return this.element.width=r.width=n.width,this.element.height=r.height=n.height,this.container.started&&t.particles.setResizeFactor({width:e.width/a.width,height:e.height/a.height}),!0}setPointerEvents(t){this.element&&(this._pointerEvents=t,this._repairStyle())}stop(){this._safeMutationObserver(t=>t.disconnect()),this._mutationObserver=void 0,this.draw(t=>eh(t,this.size))}async windowResize(){if(!this.element||!this.resize())return;let t=this.container,e=t.updateActualOptions();t.particles.setDensity(),this._applyResizePlugins(),e&&await t.refresh()}}function ed(t,e,i,s,n){if(s){let s={passive:!0};tl(n)?s.capture=n:void 0!==n&&(s=n),t.addEventListener(e,i,s)}else t.removeEventListener(e,i,n)}(I=u||(u={})).canvas="canvas",I.parent="parent",I.window="window";class ef{constructor(t){this.container=t,this._doMouseTouchClick=t=>{let e=this.container,i=e.actualOptions;if(this._canPush){let t=e.interactivity.mouse,s=t.position;if(!s)return;t.clickPosition={...s},t.clickTime=new Date().getTime(),tX(i.interactivity.events.onClick.mode,t=>this.container.handleClickMode(t))}"touchend"===t.type&&setTimeout(()=>this._mouseTouchFinish(),500)},this._handleThemeChange=t=>{let e=this.container,i=e.options,s=i.defaultThemes,n=t.matches?s.dark:s.light,a=i.themes.find(t=>t.name===n);a?.default.auto&&e.loadTheme(n)},this._handleVisibilityChange=()=>{let t=this.container,e=t.actualOptions;this._mouseTouchFinish(),e.pauseOnBlur&&(document?.hidden?(t.pageHidden=!0,t.pause()):(t.pageHidden=!1,t.animationStatus?t.play(!0):t.draw(!0)))},this._handleWindowResize=()=>{this._resizeTimeout&&(clearTimeout(this._resizeTimeout),delete this._resizeTimeout);let t=async()=>{let t=this.container.canvas;await t?.windowResize()};this._resizeTimeout=setTimeout(()=>void t(),this.container.actualOptions.interactivity.events.resize.delay*K)},this._manageInteractivityListeners=(t,e)=>{let i=this._handlers,s=this.container,n=s.actualOptions,a=s.interactivity.element;if(!a)return;let r=s.canvas;r.setPointerEvents(a===r.element?"initial":"none"),(n.interactivity.events.onHover.enable||n.interactivity.events.onClick.enable)&&(ed(a,X,i.mouseMove,e),ed(a,"touchstart",i.touchStart,e),ed(a,"touchmove",i.touchMove,e),n.interactivity.events.onClick.enable?(ed(a,Y,i.touchEndClick,e),ed(a,"pointerup",i.mouseUp,e),ed(a,"pointerdown",i.mouseDown,e)):ed(a,Y,i.touchEnd,e),ed(a,t,i.mouseLeave,e),ed(a,"touchcancel",i.touchCancel,e))},this._manageListeners=t=>{let e=this._handlers,i=this.container,s=i.actualOptions.interactivity.detectsOn,n=i.canvas.element,a=G;s===u.window?(i.interactivity.element=window,a="pointerout"):s===u.parent&&n?i.interactivity.element=n.parentElement??n.parentNode:i.interactivity.element=n,this._manageMediaMatch(t),this._manageResize(t),this._manageInteractivityListeners(a,t),document&&ed(document,"visibilitychange",e.visibilityChange,t,!1)},this._manageMediaMatch=t=>{let e=this._handlers,i=tA("(prefers-color-scheme: dark)");if(i){if(void 0!==i.addEventListener){ed(i,"change",e.themeChange,t);return}void 0!==i.addListener&&(t?i.addListener(e.oldThemeChange):i.removeListener(e.oldThemeChange))}},this._manageResize=t=>{let e=this._handlers,i=this.container;if(!i.actualOptions.interactivity.events.resize)return;if("undefined"==typeof ResizeObserver){ed(window,"resize",e.resize,t);return}let s=i.canvas.element;this._resizeObserver&&!t?(s&&this._resizeObserver.unobserve(s),this._resizeObserver.disconnect(),delete this._resizeObserver):!this._resizeObserver&&t&&s&&(this._resizeObserver=new ResizeObserver(t=>{t.find(t=>t.target===s)&&this._handleWindowResize()}),this._resizeObserver.observe(s))},this._mouseDown=()=>{let{interactivity:t}=this.container;if(!t)return;let{mouse:e}=t;e.clicking=!0,e.downPosition=e.position},this._mouseTouchClick=t=>{let e=this.container,i=e.actualOptions,{mouse:s}=e.interactivity;s.inside=!0;let n=!1,a=s.position;if(a&&i.interactivity.events.onClick.enable){for(let t of e.plugins.values())if(t.clickPositionValid&&
1(n=t.clickPositionValid(a)))break;n||this._doMouseTouchClick(t),s.clicking=!1}},this._mouseTouchFinish=()=>{let t=this.container.interactivity;if(!t)return;let e=t.mouse;delete e.position,delete e.clickPosition,delete e.downPosition,t.status=G,e.inside=!1,e.clicking=!1},this._mouseTouchMove=t=>{let e;let i=this.container,s=i.actualOptions,n=i.interactivity,a=i.canvas.element;if(!n?.element)return;if(n.mouse.inside=!0,t.type.startsWith("pointer")){if(this._canPush=!0,n.element===window){if(a){let i=a.getBoundingClientRect();e={x:t.clientX-i.left,y:t.clientY-i.top}}}else if(s.interactivity.detectsOn===u.parent){let i=t.target,s=t.currentTarget;if(i&&s&&a){let n=i.getBoundingClientRect(),r=s.getBoundingClientRect(),o=a.getBoundingClientRect();e={x:t.offsetX+2*n.left-(r.left+o.left),y:t.offsetY+2*n.top-(r.top+o.top)}}else e={x:t.offsetX??t.clientX,y:t.offsetY??t.clientY}}else t.target===a&&(e={x:t.offsetX??t.clientX,y:t.offsetY??t.clientY})}else if(this._canPush="touchmove"!==t.type,a){let i=t.touches[t.touches.length-1],s=a.getBoundingClientRect();e={x:i.clientX-(s.left??0),y:i.clientY-(s.top??0)}}let r=i.retina.pixelRatio;e&&(e.x*=r,e.y*=r),n.mouse.position=e,n.status=X},this._touchEnd=t=>{for(let e of Array.from(t.changedTouches))this._touches.delete(e.identifier);this._mouseTouchFinish()},this._touchEndClick=t=>{for(let e of Array.from(t.changedTouches))this._touches.delete(e.identifier);this._mouseTouchClick(t)},this._touchStart=t=>{for(let e of Array.from(t.changedTouches))this._touches.set(e.identifier,performance.now());this._mouseTouchMove(t)},this._canPush=!0,this._touches=new Map,this._handlers={mouseDown:()=>this._mouseDown(),mouseLeave:()=>this._mouseTouchFinish(),mouseMove:t=>this._mouseTouchMove(t),mouseUp:t=>this._mouseTouchClick(t),touchStart:t=>this._touchStart(t),touchMove:t=>this._mouseTouchMove(t),touchEnd:t=>this._touchEnd(t),touchCancel:t=>this._touchEnd(t),touchEndClick:t=>this._touchEndClick(t),visibilityChange:()=>this._handleVisibilityChange(),themeChange:t=>this._handleThemeChange(t),oldThemeChange:t=>this._handleThemeChange(t),resize:()=>{this._handleWindowResize()}}}addListeners(){this._manageListeners(!0)}removeListeners(){this._manageListeners(!1)}}(E=d||(d={})).configAdded="configAdded",E.containerInit="containerInit",E.particlesSetup="particlesSetup",E.containerStarted="containerStarted",E.containerStopped="containerStopped",E.containerDestroyed="containerDestroyed",E.containerPaused="containerPaused",E.containerPlay="containerPlay",E.containerBuilt="containerBuilt",E.particleAdded="particleAdded",E.particleDestroyed="particleDestroyed",E.particleRemoved="particleRemoved";class ep{constructor(){this.value=""}static create(t,e){let i=new ep;return i.load(t),void 0!==e&&(th(e)||td(e)?i.load({value:e}):i.load(e)),i}load(t){!tf(t)&&(tf(t.value)||(this.value=t.value))}}class ev{constructor(){this.color=new ep,this.color.value="",this.image="",this.position="",this.repeat="",this.size="",this.opacity=1}load(t){tf(t)||(void 0!==t.color&&(this.color=ep.create(this.color,t.color)),void 0!==t.image&&(this.image=t.image),void 0!==t.position&&(this.position=t.position),void 0!==t.repeat&&(this.repeat=t.repeat),void 0!==t.size&&(this.size=t.size),void 0===t.opacity||(this.opacity=t.opacity))}}class em{constructor(){this.opacity=1}load(t){tf(t)||(void 0!==t.color&&(this.color=ep.create(this.color,t.color)),void 0!==t.image&&(this.image=t.image),void 0===t.opacity||(this.opacity=t.opacity))}}class ey{constructor(){this.composite="destination-out",this.cover=new em,this.enable=!1}load(t){if(!tf(t)){if(void 0!==t.composite&&(this.composite=t.composite),void 0!==t.cover){let e=t.cover,i=th(t.cover)?{color:t.cover}:t.cover;this.cover.load(void 0!==e.color||void 0!==e.image?e:{color:i})}void 0!==t.enable&&(this.enable=t.enable)}}}class eg{constructor(){this.enable=!0,this.zIndex=0}load(t){tf(t)||(void 0!==t.enable&&(this.enable=t.enable),void 0===t.zIndex||(this.zIndex=t.zIndex))}}class e_{constructor(){this.enable=!1,this.mode=[]}load(t){tf(t)||(void 0!==t.enable&&(this.enable=t.enable),void 0===t.mode||(this.mode=t.mode))}}(L=f||(f={})).circle="circle",L.rectangle="rectangle";class ew{constructor(){this.selectors=[],this.enable=!1,this.mode=[],this.type=f.circle}load(t){tf(t)||(void 0!==t.selectors&&(this.selectors=t.selectors),void 0!==t.enable&&(this.enable=t.enable),void 0!==t.mode&&(this.mode=t.mode),void 0===t.type||(this.t
1ype=t.type))}}class eb{constructor(){this.enable=!1,this.force=2,this.smooth=10}load(t){tf(t)||(void 0!==t.enable&&(this.enable=t.enable),void 0!==t.force&&(this.force=t.force),void 0===t.smooth||(this.smooth=t.smooth))}}class ex{constructor(){this.enable=!1,this.mode=[],this.parallax=new eb}load(t){tf(t)||(void 0!==t.enable&&(this.enable=t.enable),void 0!==t.mode&&(this.mode=t.mode),this.parallax.load(t.parallax))}}class ez{constructor(){this.delay=.5,this.enable=!0}load(t){tf(t)||(void 0!==t.delay&&(this.delay=t.delay),void 0===t.enable||(this.enable=t.enable))}}class ek{constructor(){this.onClick=new e_,this.onDiv=new ew,this.onHover=new ex,this.resize=new ez}load(t){if(tf(t))return;this.onClick.load(t.onClick);let e=t.onDiv;void 0!==e&&(this.onDiv=tX(e,t=>{let e=new ew;return e.load(t),e})),this.onHover.load(t.onHover),this.resize.load(t.resize)}}class eM{constructor(t,e){this._engine=t,this._container=e}load(t){if(tf(t)||!this._container)return;let e=this._engine.interactors.get(this._container);if(e)for(let i of e)i.loadModeOptions&&i.loadModeOptions(this,t)}}class eP{constructor(t,e){this.detectsOn=u.window,this.events=new ek,this.modes=new eM(t,e)}load(t){if(tf(t))return;let e=t.detectsOn;void 0!==e&&(this.detectsOn=e),this.events.load(t.events),this.modes.load(t.modes)}}class eO{load(t){!tf(t)&&(t.position&&(this.position={x:t.position.x??50,y:t.position.y??50,mode:t.position.mode??l.percent}),t.options&&(this.options=tq({},t.options)))}}(A=p||(p={})).screen="screen",A.canvas="canvas";class eS{constructor(){this.maxWidth=1/0,this.options={},this.mode=p.canvas}load(t){!tf(t)&&(tf(t.maxWidth)||(this.maxWidth=t.maxWidth),tf(t.mode)||(t.mode===p.screen?this.mode=p.screen:this.mode=p.canvas),tf(t.options)||(this.options=tq({},t.options)))}}(F=v||(v={})).any="any",F.dark="dark",F.light="light";class eC{constructor(){this.auto=!1,this.mode=v.any,this.value=!1}load(t){tf(t)||(void 0!==t.auto&&(this.auto=t.auto),void 0!==t.mode&&(this.mode=t.mode),void 0===t.value||(this.value=t.value))}}class eD{constructor(){this.name="",this.default=new eC}load(t){tf(t)||(void 0!==t.name&&(this.name=t.name),this.default.load(t.default),void 0!==t.options&&(this.options=tq({},t.options)))}}class eR{constructor(){this.count=0,this.enable=!1,this.speed=1,this.decay=0,this.delay=0,this.sync=!1}load(t){tf(t)||(void 0!==t.count&&(this.count=tP(t.count)),void 0!==t.enable&&(this.enable=t.enable),void 0!==t.speed&&(this.speed=tP(t.speed)),void 0!==t.decay&&(this.decay=tP(t.decay)),void 0!==t.delay&&(this.delay=tP(t.delay)),void 0===t.sync||(this.sync=t.sync))}}class eT extends eR{constructor(){super(),this.mode=n.auto,this.startValue=h.random}load(t){super.load(t),tf(t)||(void 0!==t.mode&&(this.mode=t.mode),void 0===t.startValue||(this.startValue=t.startValue))}}class eI extends eR{constructor(){super(),this.offset=0,this.sync=!0}load(t){super.load(t),tf(t)||void 0===t.offset||(this.offset=tP(t.offset))}}class eE{constructor(){this.h=new eI,this.s=new eI,this.l=new eI}load(t){tf(t)||(this.h.load(t.h),this.s.load(t.s),this.l.load(t.l))}}class eL extends ep{constructor(){super(),this.animation=new eE}static create(t,e){let i=new eL;return i.load(t),void 0!==e&&(th(e)||td(e)?i.load({value:e}):i.load(e)),i}load(t){if(super.load(t),tf(t))return;let e=t.animation;void 0!==e&&(void 0!==e.enable?this.animation.h.load(e):this.animation.load(t.animation))}}(V=m||(m={})).absorb="absorb",V.bounce="bounce",V.destroy="destroy";class eA{constructor(){this.speed=2}load(t){tf(t)||void 0===t.speed||(this.speed=t.speed)}}class eF{constructor(){this.enable=!0,this.retries=0}load(t){tf(t)||(void 0!==t.enable&&(this.enable=t.enable),void 0===t.retries||(this.retries=t.retries))}}class eV{constructor(){this.value=0}load(t){!tf(t)&&(tf(t.value)||(this.value=tP(t.value)))}}class ej extends eV{constructor(){super(),this.animation=new eR}load(t){if(super.load(t),tf(t))return;let e=t.animation;void 0!==e&&this.animation.load(e)}}class eB extends ej{constructor(){super(),this.animation=new eT}load(t){super.load(t)}}class eZ extends eV{constructor(){super(),this.value=1}}class eq{constructor(){this.horizontal=new eZ,this.vertical=new eZ}load(t){tf(t)||(this.horizontal.load(t.horizontal),this.vertical.load(t.vertical))}}class eH{constructor(){this.absorb=new eA,this.bounce=new eq,this.enable=!1,this.maxSpeed=50,this.mode=m.bounce,this.overlap=new eF}load(t){tf(t)||(this.absorb.load(t.absorb),this.bounce.load(t.bounce),void 0!==t.enable&&(this.enable=t.enable),void 0!==t.maxSpeed&&(this.maxSpeed=tP(t.maxSpeed)),void 0!==t.mode&&(this.mode=t.mode),this.overlap.load(t.overlap))}}class e${constructor(){this.close=!0,this.fill=!0,this.options={},this.type=[]}load(t){if(tf(t))return;let e=t.options;if(void 0!==e)for(let t in e){let i=e[t];i&&(this.options[t]=tq(this.options[t]??{},i))}void 0!==t.close&&(this.close=t.close),void 0!==t.fill&&(this.fill=t.fill),void 0!==t.type&&(this.t
1ype=t.type)}}class eW{constructor(){this.offset=0,this.value=90}load(t){tf(t)||(void 0!==t.offset&&(this.offset=tP(t.offset)),void 0!==t.value&&(this.value=tP(t.value)))}}class eU{constructor(){this.distance=200,this.enable=!1,this.rotate={x:3e3,y:3e3}}load(t){if(!tf(t)&&(void 0!==t.distance&&(this.distance=tP(t.distance)),void 0!==t.enable&&(this.enable=t.enable),t.rotate)){let e=t.rotate.x;void 0!==e&&(this.rotate.x=e);let i=t.rotate.y;void 0!==i&&(this.rotate.y=i)}}}class eN{constructor(){this.x=50,this.y=50,this.mode=l.percent,this.radius=0}load(t){tf(t)||(void 0!==t.x&&(this.x=t.x),void 0!==t.y&&(this.y=t.y),void 0!==t.mode&&(this.mode=t.mode),void 0===t.radius||(this.radius=t.radius))}}class eG{constructor(){this.acceleration=9.81,this.enable=!1,this.inverse=!1,this.maxSpeed=50}load(t){tf(t)||(void 0!==t.acceleration&&(this.acceleration=tP(t.acceleration)),void 0!==t.enable&&(this.enable=t.enable),void 0!==t.inverse&&(this.inverse=t.inverse),void 0!==t.maxSpeed&&(this.maxSpeed=tP(t.maxSpeed)))}}class eX{constructor(){this.clamp=!0,this.delay=new eV,this.enable=!1,this.options={}}load(t){!tf(t)&&(void 0!==t.clamp&&(this.clamp=t.clamp),this.delay.load(t.delay),void 0!==t.enable&&(this.enable=t.enable),this.generator=t.generator,t.options&&(this.options=tq(this.options,t.options)))}}class eY{load(t){tf(t)||(void 0!==t.color&&(this.color=ep.create(this.color,t.color)),void 0===t.image||(this.image=t.image))}}class eQ{constructor(){this.enable=!1,this.length=10,this.fill=new eY}load(t){tf(t)||(void 0!==t.enable&&(this.enable=t.enable),void 0!==t.fill&&this.fill.load(t.fill),void 0===t.length||(this.length=t.length))}}(j=y||(y={})).bounce="bounce",j.none="none",j.out="out",j.destroy="destroy",j.split="split";class eJ{constructor(){this.default=y.out}load(t){tf(t)||(void 0!==t.default&&(this.default=t.default),this.bottom=t.bottom??t.default,this.left=t.left??t.default,this.right=t.right??t.default,this.top=t.top??t.default)}}class eK{constructor(){this.acceleration=0,this.enable=!1}load(t){!tf(t)&&(void 0!==t.acceleration&&(this.acceleration=tP(t.acceleration)),void 0!==t.enable&&(this.enable=t.enable),t.position&&(this.position=tq({},t.position)))}}class e0{constructor(){this.angle=new eW,this.attract=new eU,this.center=new eN,this.decay=0,this.distance={},this.direction=s.none,this.drift=0,this.enable=!1,this.gravity=new eG,this.path=new eX,this.outModes=new eJ,this.random=!1,this.size=!1,this.speed=2,this.spin=new eK,this.straight=!1,this.trail=new eQ,this.vibrate=!1,this.warp=!1}load(t){if(tf(t))return;this.angle.load(tc(t.angle)?{value:t.angle}:t.angle),this.attract.load(t.attract),this.center.load(t.center),void 0!==t.decay&&(this.decay=tP(t.decay)),void 0!==t.direction&&(this.direction=t.direction),void 0!==t.distance&&(this.distance=tc(t.distance)?{horizontal:t.distance,vertical:t.distance}:{...t.distance}),void 0!==t.drift&&(this.drift=tP(t.drift)),void 0!==t.enable&&(this.enable=t.enable),this.gravity.load(t.gravity);let e=t.outModes;void 0!==e&&(tu(e)?this.outModes.load(e):this.outModes.load({default:e})),this.path.load(t.path),void 0!==t.random&&(this.random=t.random),void 0!==t.size&&(this.size=t.size),void 0!==t.speed&&(this.speed=tP(t.speed)),this.spin.load(t.spin),void 0!==t.straight&&(this.straight=t.straight),this.trail.load(t.trail),void 0!==t.vibrate&&(this.vibrate=t.vibrate),void 0!==t.warp&&(this.warp=t.warp)}}class e1 extends eT{constructor(){super(),this.destroy=r.none,this.speed=2}load(t){super.load(t),tf(t)||void 0===t.destroy||(this.destroy=t.destroy)}}class e2 extends eB{constructor(){super(),this.animation=new e1,this.value=1}load(t){if(tf(t))return;super.load(t);let e=t.animation;void 0!==e&&this.animation.load(e)}}class e5{constructor(){this.enable=!1,this.width=1920,this.height=1080}load(t){if(tf(t))return;void 0!==t.enable&&(this.enable=t.enable);let e=t.width;void 0!==e&&(this.width=e);let i=t.height;void 0!==i&&(this.height=i)}}(B=g||(g={})).delete="delete",B.wait="wait";class e3{constructor(){this.mode=g.delete,this.value=0}load(t){tf(t)||(void 0!==t.mode&&(this.mode=t.mode),void 0===t.value||(this.value=t.value))}}class e6{constructor(){this.density=new e5,this.limit=new e3,this.value=0}load(t){tf(t)||(this.density.load(t.density),this.limit.load(t.limit),void 0===t.value||(this.value=t.value))}}class e7{constructor(){this.blur=0,this.color=new ep,this.enable=!1,this.offset={x:0,y:0},this.color.value="#000"}load(t){!tf(t)&&(void 0!==t.blur&&(this.blur=t.blur),this.color=ep.create(this.color,t.color),void 0!==t.enable&&(this.enable=t.enable),void 0!==t.offset&&(void 0!==t.offset.x&&(this.offset.x=t.offset.x),void 0!==t.offset.y&&(this.offset.y=t.offset.y)))}}class e8{constructor(){this.close=!0,this.fill=!0,this.options={},this.type="circle"}load(t){if(tf(t))return;let e=t.options;if(void 0!==e)for(let t in e){let i=e[t];i&&(this.options[t]=tq(this.options[t]??{},i))}void 0!==t.close&&(this.close=t.close),void 0!==t.fill&&(this.fill=t.fill),void 0!==t.type&&(this.t
1ype=t.type)}}class e4 extends eT{constructor(){super(),this.destroy=r.none,this.speed=5}load(t){super.load(t),tf(t)||void 0===t.destroy||(this.destroy=t.destroy)}}class e9 extends eB{constructor(){super(),this.animation=new e4,this.value=3}load(t){if(super.load(t),tf(t))return;let e=t.animation;void 0!==e&&this.animation.load(e)}}class it{constructor(){this.width=0}load(t){tf(t)||(void 0!==t.color&&(this.color=eL.create(this.color,t.color)),void 0!==t.width&&(this.width=tP(t.width)),void 0!==t.opacity&&(this.opacity=tP(t.opacity)))}}class ie extends eV{constructor(){super(),this.opacityRate=1,this.sizeRate=1,this.velocityRate=1}load(t){super.load(t),tf(t)||(void 0!==t.opacityRate&&(this.opacityRate=t.opacityRate),void 0!==t.sizeRate&&(this.sizeRate=t.sizeRate),void 0===t.velocityRate||(this.velocityRate=t.velocityRate))}}class ii{constructor(t,e){this._engine=t,this._container=e,this.bounce=new eq,this.collisions=new eH,this.color=new eL,this.color.value="#fff",this.effect=new e$,this.groups={},this.move=new e0,this.number=new e6,this.opacity=new e2,this.reduceDuplicates=!1,this.shadow=new e7,this.shape=new e8,this.size=new e9,this.stroke=new it,this.zIndex=new ie}load(t){if(tf(t))return;if(void 0!==t.groups)for(let e of Object.keys(t.groups)){if(!Object.hasOwn(t.groups,e))continue;let i=t.groups[e];void 0!==i&&(this.groups[e]=tq(this.groups[e]??{},i))}void 0!==t.reduceDuplicates&&(this.reduceDuplicates=t.reduceDuplicates),this.bounce.load(t.bounce),this.color.load(eL.create(this.color,t.color)),this.effect.load(t.effect),this.move.load(t.move),this.number.load(t.number),this.opacity.load(t.opacity),this.shape.load(t.shape),this.size.load(t.size),this.shadow.load(t.shadow),this.zIndex.load(t.zIndex),this.collisions.load(t.collisions),void 0!==t.interactivity&&(this.interactivity=tq({},t.interactivity));let e=t.stroke;if(e&&(this.stroke=tX(e,t=>{let e=new it;return e.load(t),e})),this._container){let e=this._engine.updaters.get(this._container);if(e)for(let i of e)i.loadOptions&&i.loadOptions(this,t);let i=this._engine.interactors.get(this._container);if(i)for(let e of i)e.loadParticlesOptions&&e.loadParticlesOptions(this,t)}}}function is(t,...e){for(let i of e)t.load(i)}function ia(t,e,...i){let s=new ii(t,e);return is(s,...i),s}class ir{constructor(t,e){this._findDefaultTheme=t=>this.themes.find(e=>e.default.value&&e.default.mode===t)??this.themes.find(t=>t.default.value&&t.default.mode===v.any),this._importPreset=t=>{this.load(this._engine.getPreset(t))},this._engine=t,this._container=e,this.autoPlay=!0,this.background=new ev,this.backgroundMask=new ey,this.clear=!0,this.defaultThemes={},this.delay=0,this.fullScreen=new eg,this.detectRetina=!0,this.duration=0,this.fpsLimit=120,this.interactivity=new eP(t,e),this.manualParticles=[],this.particles=ia(this._engine,this._container),this.pauseOnBlur=!0,this.pauseOnOutsideViewport=!0,this.responsive=[],this.smooth=!1,this.style={},this.themes=[],this.zLayers=100}load(t){if(tf(t))return;void 0!==t.preset&&tX(t.preset,t=>this._importPreset(t)),void 0!==t.autoPlay&&(this.autoPlay=t.autoPlay),void 0!==t.clear&&(this.clear=t.clear),void 0!==t.key&&(this.key=t.key),void 0!==t.name&&(this.name=t.name),void 0!==t.delay&&(this.delay=tP(t.delay));let e=t.detectRetina;void 0!==e&&(this.detectRetina=e),void 0!==t.duration&&(this.duration=tP(t.duration));let i=t.fpsLimit;void 0!==i&&(this.fpsLimit=i),void 0!==t.pauseOnBlur&&(this.pauseOnBlur=t.pauseOnBlur),void 0!==t.pauseOnOutsideViewport&&(this.pauseOnOutsideViewport=t.pauseOnOutsideViewport),void 0!==t.zLayers&&(this.zLayers=t.zLayers),this.background.load(t.background);let s=t.fullScreen;tl(s)?this.fullScreen.enable=s:this.fullScreen.load(s),this.backgroundMask.load(t.backgroundMask),this.interactivity.load(t.interactivity),t.manualParticles&&(this.manualParticles=t.manualParticles.map(t=>{let e=new eO;return e.load(t),e})),this.particles.load(t.particles),this.style=tq(this.style,t.style),this._engine.loadOptions(this,t),void 0!==t.smooth&&(this.smooth=t.smooth);let n=this._engine.interactors.get(this._container);if(n)for(let e of n)e.loadOptions&&e.loadOptions(this,t);if(void 0!==t.responsive)for(let e of t.responsive){let t=new eS;t.load(e),this.responsive.push(t)}if(this.responsive.sort((t,e)=>t.maxWidth-e.maxWidth),void 0!==t.themes)for(let e of t.themes){let t=this.themes.find(t=>t.name===e.name);if(t)t.load(e);else{let t=new eD;t.load(e),this.themes.push(t)}}this.defaultThemes.dark=this._findDefaultTheme(v.dark)?.name,this.defaultThemes.light=this._findDefaultTheme(v.light)?.name}setResponsive(t,e,i){this.load(i);let s=this.responsive.find(i=>i.mode===p.screen&&screen?i.maxWidth>
1screen.availWidth:i.maxWidth*e>t);return this.load(s?.options),s?.maxWidth}setTheme(t){if(t){let e=this.themes.find(e=>e.name===t);e&&this.load(e.options)}else{let t=tA("(prefers-color-scheme: dark)"),e=t?.matches,i=this._findDefaultTheme(e?v.dark:v.light);i&&this.load(i.options)}}}(Z=_||(_={})).external="external",Z.particles="particles";class io{constructor(t,e){this.container=e,this._engine=t,this._interactors=[],this._externalInteractors=[],this._particleInteractors=[]}externalInteract(t){for(let e of this._externalInteractors)e.isEnabled()&&e.interact(t)}handleClickMode(t){for(let e of this._externalInteractors)e.handleClickMode?.(t)}async init(){for(let t of(this._interactors=await this._engine.getInteractors(this.container,!0),this._externalInteractors=[],this._particleInteractors=[],this._interactors)){switch(t.type){case _.external:this._externalInteractors.push(t);break;case _.particles:this._particleInteractors.push(t)}t.init()}}particlesInteract(t,e){for(let i of this._externalInteractors)i.clear(t,e);for(let i of this._particleInteractors)i.isEnabled(t)&&i.interact(t,e)}reset(t){for(let e of this._externalInteractors)e.isEnabled()&&e.reset(t);for(let e of this._particleInteractors)e.isEnabled(t)&&e.reset(t)}}function il(t){if(!tF(t.outMode,t.checkModes))return;let e=2*t.radius;t.coord>t.maxCoord-e?t.setCb(-t.radius):t.coord<e&&t.setCb(t.radius)}(q=w||(w={})).normal="normal",q.inside="inside",q.outside="outside";class ih{constructor(t,e){this.container=e,this._calcPosition=(t,e,i,s=to)=>{var n;for(let s of t.plugins.values()){let t=void 0!==s.particlePosition?s.particlePosition(e,this):void 0;if(t)return tp.create(t.x,t.y,i)}let a=(n={size:t.canvas.size,position:e},{x:n.position?.x??t_()*n.size.width,y:n.position?.y??t_()*n.size.height}),r=tp.create(a.x,a.y,i),o=this.getRadius(),l=this.options.move.outModes,h=e=>{il({outMode:e,checkModes:[y.bounce],coord:r.x,maxCoord:t.canvas.size.width,setCb:t=>r.x+=t,radius:o})},c=e=>{il({outMode:e,checkModes:[y.bounce],coord:r.y,maxCoord:t.canvas.size.height,setCb:t=>r.y+=t,radius:o})};return(h(l.left??l.default),h(l.right??l.default),c(l.top??l.default),c(l.bottom??l.default),this._checkOverlap(r,s))?this._calcPosition(t,void 0,i,s+1):r},this._calculateVelocity=()=>{let t=(function(t){let e=tv.origin;return e.length=1,e.angle=t,e})(this.direction).copy(),e=this.options.move;if(e.direction===s.inside||e.direction===s.outside)return t;let i=tC(tz(e.angle.value)),n=tC(tz(e.angle.offset)),a={left:n-.5*i,right:n+.5*i};return e.straight||(t.angle+=tx(tP(a.left,a.right))),e.random&&"number"==typeof e.speed&&(t.length*=t_()),t},this._checkOverlap=(t,e=to)=>{let i=this.options.collisions,s=this.getRadius();if(!i.enable)return!1;let n=i.overlap;if(n.enable)return!1;let a=n.retries;if(a>=0&&e>a)throw Error(`${Q} particle is overlapping and can't be placed`);return!!this.container.particles.find(e=>tS(t,e.position)<s+e.getRadius())},this._getRollColor=t=>{if(!t||!this.roll||!this.backColor&&!this.roll.alter)return t;let e=this.roll.horizontal&&this.roll.vertical?2:1,i=this.roll.horizontal?.5*Math.PI:0;if(!(Math.floor(((this.roll.angle??0)+i)/(Math.PI/e))%2))return t;if(this.backColor)return this.backColor;if(this.roll.alter){var s,n;return s=this.roll.alter.type,n=this.roll.alter.value,{h:t.h,s:t.s,l:t.l+(s===c.darken?-1:1)*n}}return t},this._initPosition=t=>{let e=this.container,i=tz(this.options.zIndex.value);this.position=this._calcPosition(e,t,tw(i,0,e.zLayers)),this.initialPosition=this.position.copy();let n=e.canvas.size;switch(this.moveCenter={...tK(this.options.move.center,n),radius:this.options.move.center.radius??0,mode:this.options.move.center.mode??l.percent},this.direction=function(t,e,i){if(tc(t))return tC(t);switch(t){case s.top:return-(.5*Math.PI);case s.topRight:return-(.25*Math.PI);case s.right:return 0;case s.bottomRight:return .25*Math.PI;case s.bottom:return .5*Math.PI;case s.bottomLeft:return .75*Math.PI;case s.left:return Math.PI;case s.topLeft:return-(.75*Math.PI);case s.inside:return Math.atan2(i.y-e.y,i.x-e.x);case s.outside:return Math.atan2(e.y-i.y,e.x-i.x);default:return t_()*ts}}(this.options.move.direction,this.position,this.moveCenter),this.options.move.direction){case s.inside:this.outType=w.inside;break;case s.outside:this.outType=w.outside}this.offset=tv.origin},this._engine=t}destroy(t){if(this.unbreakable||this.destroyed)return;this.destroyed=!0,this.bubble.inRange=!1,this.slow.inRange=!1;let e=this.container,i=this.pathGenerator,s=e.shapeDrawers.get(this.shape);
1for(let i of(s?.particleDestroy?.(this),e.plugins.values()))i.particleDestroyed?.(this,t);for(let i of e.particles.updaters)i.particleDestroyed?.(this,t);i?.reset(this),this._engine.dispatchEvent(d.particleDestroyed,{container:this.container,data:{particle:this}})}draw(t){let e=this.container,i=e.canvas;for(let s of e.plugins.values())i.drawParticlePlugin(s,this,t);i.drawParticle(this,t)}getFillColor(){return this._getRollColor(this.bubble.color??es(this.color))}getMass(){return this.getRadius()**2*Math.PI*.5}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??es(this.strokeColor))}init(t,e,i,s){let n=this.container,a=this._engine;this.id=t,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=w.normal,this.ignoresResizeRatio=!0;let r=n.retina.pixelRatio,o=n.actualOptions,l=ia(this._engine,n,o.particles),{reduceDuplicates:h}=l,c=l.effect.type,u=l.shape.type;this.effect=tY(c,this.id,h),this.shape=tY(u,this.id,h);let d=l.effect,f=l.shape;if(i){if(i.effect?.type){let t=tY(i.effect.type,this.id,h);t&&(this.effect=t,d.load(i.effect))}if(i.shape?.type){let t=tY(i.shape.type,this.id,h);t&&(this.shape=t,f.load(i.shape))}}if(this.effect===ti){let t=[...this.container.effectDrawers.keys()];this.effect=t[Math.floor(t_()*t.length)]}if(this.shape===ti){let t=[...this.container.shapeDrawers.keys()];this.shape=t[Math.floor(t_()*t.length)]}this.effectData=function(t,e,i,s){let n=e.options[t];if(n)return tq({close:e.close,fill:e.fill},tY(n,i,s))}(this.effect,d,this.id,h),this.shapeData=function(t,e,i,s){let n=e.options[t];if(n)return tq({close:e.close,fill:e.fill},tY(n,i,s))}(this.shape,f,this.id,h),l.load(i);let p=this.effectData;p&&l.load(p.particles);let v=this.shapeData;v&&l.load(v.particles);let m=new eP(a,n);m.load(n.actualOptions.interactivity),m.load(l.interactivity),this.interactivity=m,this.effectFill=p?.fill??l.effect.fill,this.effectClose=p?.close??l.effect.close,this.shapeFill=v?.fill??l.shape.fill,this.shapeClose=v?.close??l.shape.close,this.options=l;let y=this.options.move.path;this.pathDelay=tz(y.delay.value)*K,y.generator&&(this.pathGenerator=this._engine.getPathGenerator(y.generator),this.pathGenerator&&n.addPath(y.generator,this.pathGenerator)&&this.pathGenerator.init(n)),n.retina.initParticle(this),this.size=tJ(this.options.size,r),this.bubble={inRange:!1},this.slow={inRange:!1,factor:1},this._initPosition(e),this.initialVelocity=this._calculateVelocity(),this.velocity=this.initialVelocity.copy(),this.moveDecay=1-tz(this.options.move.decay);let g=n.particles;g.setLastZIndex(this.position.z),this.zIndexFactor=this.position.z/n.zLayers,this.sides=24;let _=n.effectDrawers.get(this.effect);!_&&(_=this._engine.getEffectDrawer(this.effect))&&n.effectDrawers.set(this.effect,_),_?.loadEffect&&_.loadEffect(this);let b=n.shapeDrawers.get(this.shape);!b&&(b=this._engine.getShapeDrawer(this.shape))&&n.shapeDrawers.set(this.shape,b),b?.loadShape&&b.loadShape(this);let x=b?.getSidesCount;for(let t of(x&&(this.sides=x(this)),this.spawning=!1,this.shadowColor=t2(this._engine,this.options.shadow.color),g.updaters))t.init(this);for(let t of g.movers)t.init?.(this);for(let t of(_?.particleInit?.(n,this),b?.particleInit?.(n,this),n.plugins.values()))t.particleCreated?.(this)}isInsideCanvas(){let t=this.getRadius(),e=this.container.canvas.size,i=this.position;return i.x>=-t&&i.y>=-t&&i.y<=e.height+t&&i.x<=e.width+t}isVisible(){return!this.destroyed&&!this.spawning&&this.isInsideCanvas()}reset(){for(let t of this.container.particles.updaters)t.reset?.(this)}}class ic{constructor(t,e){this.position=t,this.particle=e}}(H=b||(b={})).circle="circle",H.rectangle="rectangle";class iu{constructor(t,e,i){this.position={x:t,y:e},this.type=i}}class id extends iu{constructor(t,e,i){super(t,e,b.circle),this.radius=i}contains(t){return tS(t,this.position)<=this.radius}intersects(t){let e=this.position,i=t.position,s={x:Math.abs(i.x-e.x),y:Math.abs(i.y-e.y)},n=this.radius;if(t instanceof id||t.type===b.circle)return n+t.radius>Math.sqrt(s.x**2+s.y**2);if(t instanceof ip||t.type===b.rectangle){let{width:e,height:i}=t.size;return Math.pow(s.x-e,2)+Math.pow(s.y-i,2)<=n**2||s.x<=n+e&&s.y<=n+i||s.x<=e||s.y<=i}return!1}}class ip extends iu{constructor(t,e,i,s){super(t,e,b.rectangle),this.size={height:s,width:i}}contains(t){let e=this.size.width,i=this.size.height,s=this.position;return t.x>=s.x&&t.x<=s.x+e&&t.y>=s.y&&t.y<=s.y+i}intersects(t){if(t instanceof id)return t.intersects(this);let e=this.size.width,i=this.size.height,s=this.position,n=t.position,a=t instanceof ip?t.size:{width:0,height:0},r=a.width,o=a.height;return n.x<s.x+e&&n.x+r>s.x&&n.y<s.y+i&&n.y+o>s.y}}class iv{constructor(t,e){this.rectangle=t,this.capacity=e,this._subdivide=()=>{let{x:t,y:e}=this.rectangle.position,{width:i,height:s}=this.rectangle.size,{capacity:n}=this;for(let a=0;a<4;a++){let r=a%2;this._subs.push(new iv(new ip(t+.5*i*r,e+.5*s*(Math.round(.5*a)-r),.5*i,.5*s),n))}this._divided=!0},this._points=[],this._divided=!1,this._subs=[]}insert(t){return!!this.rectangle.contains(t.position)&&(this._points.length<this.capacity?(this._points.push(t),!0):(this._divided||this._subdivide(),this._subs.some(e=>e.insert(t))))}query(t,e){let i=[];if(!t.intersects(this.rectangle))return[];for(let s of this._points)!t.contains(s.position)&&tS(t.position,s.position)>s.particle.getRadius()&&(!e||e(s.particle))||i.push(s.particle);if(this._divided)for(let s of this._subs)i.push(...s.query(t,e));return i}queryCircle(t,e,i){return this.query(new id(t.x,t.y,e),i)}queryRectangle(t,e,i){return this.query(new ip(t.x,t.y,e.width,e.height),i)}}let im=t=>{let{height:e,width:i}=t;return new ip(-.25*i,-.25*e,1.5*i,1.5*e)};class iy{constructor(t,e){this._addToPool=(...t)=>{this._pool.push(...t)},this._applyDensity=(t,e,i,s)=>{let n=t.number;if(!t.number.density?.enable){void 0===i?this._limit=n.limit.value:(s?.number.limit?.value??n.limit.value)&&this._groupLimits.set(i,s?.number.limit?.value??n.limit.value);return}let a=this._initDensityFactor(n.density),r=n.value,o=n.limit.value>0?n.limit.value:r,l=Math.min(r,o)*a+e,h=Math.min(this.count,this.filter(t=>t.group===i).length);void 0===i?this._limit=n.limit.value*a:this._groupLimits.set(i,n.limit.value*a),h<l?this.push(Math.abs(l-h),void 0,t,i):h>l&&this.removeQuantity(h-l,i)},this._initDensityFactor=t=>{let e=this._container;if(!e.canvas.element||!t.enable)return 1;let i=e.canvas.element,s=e.retina.pixelRatio;return i.width*i.height/(t.height*t.width*s**2)},this._pushParticle=(t,e,i,s)=>{try{let n=this._pool.pop();n||(n=new ih(this._engine,this._container)),n.init(this._nextId,t,e,i);let a=!0;if(s&&(a=s(n)),!a)return;return this._array.push(n),this._zArray.push(n),this._nextId++,this._engine.dispatchEvent(d.particleAdded,{container:this._container,data:{particle:n}}),n}catch(t){tT.warning(`${Q} adding particle: ${t}`)}},this._removeParticle=(t,e,i)=>{let s=this._array[t];if(!s||s.group!==e)return!1;let n=this._zArray.indexOf(s);return this._array.splice(t,1),this._zArray.splice(n,1),s.destroy(i),this._engine.dispatchEvent(d.particleRemoved,{container:this._container,data:{particle:s}}),this._addToPool(s),!0},this._engine=t,this._container=e,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 io(t,e),this._pluginsInitialized=!1;let i=e.canvas.size;this.quadTree=new iv(im(i),4),this.movers=[],this.updaters=[]}get count(){return this._array.length}
1addManualParticles(){let t=this._container;t.actualOptions.manualParticles.forEach(e=>this.addParticle(e.position?tK(e.position,t.canvas.size):void 0,e.options))}addParticle(t,e,i,s){let n=this._container.actualOptions.particles.number.limit.mode,a=void 0===i?this._limit:this._groupLimits.get(i)??this._limit,r=this.count;if(a>0)switch(n){case g.delete:{let t=r+1-a;t>0&&this.removeQuantity(t);break}case g.wait:if(r>=a)return}return this._pushParticle(t,e,i,s)}clear(){this._array=[],this._zArray=[],this._pluginsInitialized=!1}destroy(){this._array=[],this._zArray=[],this.movers=[],this.updaters=[]}draw(t){let e=this._container,i=e.canvas;for(let s of(i.clear(),this.update(t),e.plugins.values()))i.drawPlugin(s,t);for(let e of this._zArray)e.draw(t)}filter(t){return this._array.filter(t)}find(t){return this._array.find(t)}get(t){return this._array[t]}handleClickMode(t){this._interactionManager.handleClickMode(t)}async init(){let t=this._container,e=t.actualOptions;this._lastZIndex=0,this._needsSort=!1,await this.initPlugins();let i=!1;for(let e of t.plugins.values())if(i=e.particlesInitialization?.()??i)break;if(this.addManualParticles(),!i){let t=e.particles,i=t.groups;for(let e in i){let s=i[e];for(let i=this.count,n=0;n<s.number?.value&&i<t.number.value;i++,n++)this.addParticle(void 0,s,e)}for(let e=this.count;e<t.number.value;e++)this.addParticle()}}async initPlugins(){if(this._pluginsInitialized)return;let t=this._container;for(let e of(this.movers=await this._engine.getMovers(t,!0),this.updaters=await this._engine.getUpdaters(t,!0),await this._interactionManager.init(),t.pathGenerators.values()))e.init(t)}push(t,e,i,s){for(let n=0;n<t;n++)this.addParticle(e?.position,i,s)}async redraw(){this.clear(),await this.init(),this.draw({value:0,factor:0})}remove(t,e,i){this.removeAt(this._array.indexOf(t),void 0,e,i)}removeAt(t,e=1,i,s){if(t<0||t>this.count)return;let n=0;for(let a=t;n<e&&a<this.count;a++)this._removeParticle(a,i,s)&&(a--,n++)}removeQuantity(t,e){this.removeAt(0,t,e)}setDensity(){let t=this._container.actualOptions,e=t.particles.groups,i=t.manualParticles.length;for(let t in e)this._applyDensity(e[t],i,t);this._applyDensity(t.particles,i)}setLastZIndex(t){this._lastZIndex=t,this._needsSort=this._needsSort||this._lastZIndex<t}setResizeFactor(t){this._resizeFactor=t}update(t){let e=this._container,i=new Set;for(let t of(this.quadTree=new iv(im(e.canvas.size),4),e.pathGenerators.values()))t.update();for(let i of e.plugins.values())i.update?.(t);let s=this._resizeFactor;for(let e of this._array){for(let i of(s&&!e.ignoresResizeRatio&&(e.position.x*=s.width,e.position.y*=s.height,e.initialPosition.x*=s.width,e.initialPosition.y*=s.height),e.ignoresResizeRatio=!1,this._interactionManager.reset(e),this._container.plugins.values())){if(e.destroyed)break;i.particleUpdate?.(e,t)}for(let i of this.movers)i.isEnabled(e)&&i.move(e,t);if(e.destroyed){i.add(e);continue}this.quadTree.insert(new ic(e.getPosition(),e))}if(i.size){let t=t=>!i.has(t);for(let e of(this._array=this.filter(t),this._zArray=this._zArray.filter(t),i))this._engine.dispatchEvent(d.particleRemoved,{container:this._container,data:{particle:e}});this._addToPool(...i)}for(let e of(this._interactionManager.externalInteract(t),this._array)){for(let i of this.updaters)i.update(e,t);e.destroyed||e.spawning||this._interactionManager.particlesInteract(e,t)}if(delete this._resizeFactor,this._needsSort){let t=this._zArray;t.sort((t,e)=>e.position.z-t.position.z||t.id-e.id),this._lastZIndex=t[t.length-1].position.z,this._needsSort=!1}}}class ig{constructor(t){this.container=t,this.pixelRatio=1,this.reduceFactor=1}init(){let t=this.container,e=t.actualOptions;this.pixelRatio=!e.detectRetina||tL()?1:devicePixelRatio,this.reduceFactor=1;let i=this.pixelRatio,s=t.canvas;if(s.element){let t=s.element;s.size.width=t.offsetWidth*i,s.size.height=t.offsetHeight*i}let n=e.particles,a=n.move;this.maxSpeed=tz(a.gravity.maxSpeed)*i,this.sizeAnimationSpeed=tz(n.size.animation.speed)*i}initParticle(t){let e=t.options,i=this.pixelRatio,s=e.move,n=s.distance,a=t.retina;a.moveDrift=tz(s.drift)*i,a.moveSpeed=tz(s.speed)*i,a.sizeAnimationSpeed=tz(e.size.animation.speed)*i;let r=a.maxDistance;r.horizontal=void 0!==n.horizontal?n.horizontal*i:void 0,r.vertical=void 0!==n.vertical?n.vertical*i:void 0,a.maxSpeed=tz(s.gravity.maxSpeed)*i}}function i_(t){return t&&!t.destroyed}function iw(t,e,...i){let s=new ir(t,e);return is(s,...i),s}class ib{constructor(t,e,i){this._intersectionManager=t=>{if(i_(this)&&this.actualOptions.pauseOnOutsideViewport)for(let e of t)e.target===this.interactivity.element&&(e.isIntersecting?this.play():this.pause())},this._nextFrame=t=>{try{if(!this._smooth&&void 0!==this._lastFrameTime&&t<this._lastFrameTime+K/this.fpsLimit){this.draw(!1);return}this._lastFrameTime??=t;let e=function(t,e=60,i=!1){return{value:t,factor:i?60/e:60*t/K}}(t-this._lastFrameTime,this.fpsLimit,this._smooth);if(this.addLifeTime(e.value),this._lastFrameTime=t,e.value>K){this.draw(!1);return}if(this.particles.draw(e),!this.alive()){this.destroy();return}this.animationStatus&&this.draw(!1)}catch(t){tT.error(`${Q} in animation loop`,t)}},this._engine=t,this.id=Symbol(e),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=i,this._initialSourceOptions=i,this.retina=new ig(this),this.canvas=new eu(this,this._engine),this.particles=new iy(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=iw(this._engine,this),this.actualOptions=iw(this._engine,this),this._eventListeners=new ef(this),this._intersectionObserver=function(t){if(!tL()&&"undefined"!=typeof IntersectionObserver)return new IntersectionObserver(t)}(t=>this._intersectionManager(t)),this._engine.dispatchEvent(d.containerBuilt,{container:this})}get animationStatus(){return!this._paused&&!this.pageHidden&&i_(this)}get options(){return this._options}get sourceOptions(){return this._sourceOptions}addClickHandler(t){if(!i_(this))return;let e=this.interactivity.element;if(!e)return;let i=(e,i,s)=>{if(!i_(this))return;let n=this.retina.pixelRatio,a={x:i.x*n,y:i.y*n};t(e,this.particles.quadTree.queryCircle(a,s*n))},s=!1,n=!1;for(let[t,a]of(this._clickHandlers.set("click",t=>{if(!i_(this))return;let e={x:t.offsetX||t.clientX,y:t.offsetY||t.clientY};i(t,e,1)}),this._clickHandlers.set("touchstart",()=>{i_(this)&&(s=!0,n=!1)}),this._clickHandlers.set("touchmove",()=>{i_(this)&&(n=!0)}),this._clickHandlers.set("touchend",t=>{if(i_(this)){if(s&&!n){let e=t.touches[t.touches.length-1];if(!e&&!(e=t.changedTouches[t.changedTouches.length-1]))return;let s=this.canvas.element,n=s?s.getBoundingClientRect():void 0;i(t,{x:e.clientX-(n?n.left:0),y:e.clientY-(n?n.top:0)},Math.max(e.radiusX,e.radiusY))}s=!1,n=!1}}),this._clickHandlers.set("touchcancel",()=>{i_(this)&&(s=!1,n=!1)}),this._clickHandlers))e.addEventListener(t,a)}addLifeTime(t){this._lifeTime+=t}addPath(t,e,i=!1){return!(!i_(this)||!i&&this.pathGenerators.has(t))&&(this.pathGenerators.set(t,e),!0)}alive(){return!this._duration||this._lifeTime<=this._duration}clearClickHandlers(){if(i_(this)){for(let[t,e]of this._clickHandlers)this.interactivity.element?.removeEventListener(t,e);this._clickHandlers.clear()}}destroy(t=!0){if(i_(this)){for(let t of(this.stop(),this.clearClickHandlers(),this.particles.destroy(),this.canvas.destroy(),this.effectDrawers.values())
1)t.destroy?.(this);for(let t of this.shapeDrawers.values())t.destroy?.(this);for(let t of this.effectDrawers.keys())this.effectDrawers.delete(t);for(let t of this.shapeDrawers.keys())this.shapeDrawers.delete(t);if(this._engine.clearPlugins(this),this.destroyed=!0,t){let t=this._engine.items,e=t.findIndex(t=>t===this);e>=0&&t.splice(e,1)}this._engine.dispatchEvent(d.containerDestroyed,{container:this})}}draw(t){if(!i_(this))return;let e=t,i=t=>{e&&(this._lastFrameTime=void 0,e=!1),this._nextFrame(t)};this._drawAnimationFrame=ty(t=>i(t))}async export(t,e={}){for(let i of this.plugins.values()){if(!i.export)continue;let s=await i.export(t,e);if(s.supported)return s.blob}tT.error(`${Q} - Export plugin with type ${t} not found`)}handleClickMode(t){if(i_(this))for(let e of(this.particles.handleClickMode(t),this.plugins.values()))e.handleClickMode?.(t)}async init(){if(!i_(this))return;for(let t of this._engine.getSupportedEffects()){let e=this._engine.getEffectDrawer(t);e&&this.effectDrawers.set(t,e)}for(let t of this._engine.getSupp
1ortedShapes()){let e=this._engine.getShapeDrawer(t);e&&this.shapeDrawers.set(t,e)}for(let[t,e]of(await this.particles.initPlugins(),this._options=iw(this._engine,this,this._initialSourceOptions,this.sourceOptions),this.actualOptions=iw(this._engine,this,this._options),await this._engine.getAvailablePlugins(this)))this.plugins.set(t,e);this.retina.init(),await this.canvas.init(),this.updateActualOptions(),this.canvas.initBackground(),this.canvas.resize();let{zLayers:t,duration:e,delay:i,fpsLimit:s,smooth:n}=this.actualOptions;for(let a of(this.zLayers=t,this._duration=tz(e)*K,this._delay=tz(i)*K,this._lifeTime=0,this.fpsLimit=s>0?s:120,this._smooth=n,this.effectDrawers.values()))await a.init?.(this);for(let t of this.shapeDrawers.values())await t.init?.(this);for(let t of this.plugins.values())await t.init?.();for(let t of(this._engine.dispatchEvent(d.containerInit,{container:this}),await this.particles.init(),this.particles.setDensity(),this.plugins.values()))t.particlesSetup?.();this._engine.dispatchEvent(d.particlesSetup,{container:this})}async loadTheme(t){i_(this)&&(this._currentTheme=t,await this.refresh())}pause(){if(i_(this)&&(void 0!==this._drawAnimationFrame&&(tg(this._drawAnimationFrame),delete this._drawAnimationFrame),!this._paused)){for(let t of this.plugins.values())t.pause?.();this.pageHidden||(this._paused=!0),this._engine.dispatchEvent(d.containerPaused,{container:this})}}play(t){if(!i_(this))return;let e=this._paused||t;if(this._firstStart&&!this.actualOptions.autoPlay){this._firstStart=!1;return}if(this._paused&&(this._paused=!1),e)for(let t of this.plugins.values())t.play&&t.play();this._engine.dispatchEvent(d.containerPlay,{container:this}),this.draw(e??!1)}async refresh(){if(i_(this))return this.stop(),this.start()}async reset(t){if(i_(this))return this._initialSourceOptions=t,this._sourceOptions=t,this._options=iw(this._engine,this,this._initialSourceOptions,this.sourceOptions),this.actualOptions=iw(this._engine,this,this._options),this.refresh()}async start(){i_(this)&&!this.started&&(await this.init(),this.started=!0,await new Promise(t=>{let e=async()=>{for(let t of(this._eventListeners.addListeners(),this.interactivity.element instanceof HTMLElement&&this._intersectionObserver&&this._intersectionObserver.observe(this.interactivity.element),this.plugins.values()))await t.start?.();this._engine.dispatchEvent(d.containerStarted,{container:this}),this.play(),t()};this._delayTimeout=setTimeout(()=>void e(),this._delay)}))}stop(){if(i_(this)&&this.started){for(let t of(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),this.plugins.values()))t.stop?.();for(let t of this.plugins.keys())this.plugins.delete(t);this._sourceOptions=this._options,this._engine.dispatchEvent(d.containerStopped,{container:this})}}updateActualOptions(){this.actualOptions.responsive=[];let t=this.actualOptions.setResponsive(this.canvas.size.width,this.retina.pixelRatio,this._options);return this.actualOptions.setTheme(this._currentTheme),this._responsiveMaxWidth!==t&&(this._responsiveMaxWidth=t,!0)}}class ix{constructor(){this._listeners=new Map}addEventListener(t,e){this.removeEventListener(t,e);let i=this._listeners.get(t);i||(i=[],this._listeners.set(t,i)),i.push(e)}dispatchEvent(t,e){let i=this._listeners.get(t);i?.forEach(t=>t(e))}hasEventListener(t){return!!this._listeners.get(t)}removeAllEventListeners(t){t?this._listeners.delete(t):this._listeners=new Map}removeEventListener(t,e){let i=this._listeners.get(t);if(!i)return;let s=i.length,n=i.indexOf(e);n<0||(1===s?this._listeners.delete(t):i.splice(n,1))}}async function iz(t,e,i,s=!1){let n=e.get(t);return(!n||s)&&(n=await Promise.all([...i.values()].map(e=>e(t))),e.set(t,n)),n}async function ik(t){let e=tY(t.url,t.index);if(!e)return t.fallback;let i=await fetch(e);return i.ok?await i.json():(tT.error(`${Q} ${i.status} while retrieving config file`),t.fallback)}let iM=t=>{let e;if(t instanceof HTMLCanvasElement||t.tagName.toLowerCase()===tr)(e=t).dataset[N]||(e.dataset[N]=ta);else{let i=t.getElementsByTagName(tr);i.length?(e=i[0]).dataset[N]=ta:((e=document.createElement(tr)).dataset[N]=tn,t.appendChild(e))}let i="100%";return e.style.width||(e.style.width=i),e.style.height||(e.style.height=i),e},iP=(t,e)=>{let i=e??document.getElementById(t);
1return i||((i=document.createElement("div")).id=t,i.dataset[N]=tn,document.body.append(i)),i};class iO{constructor(){this._configs=new Map,this._domArray=[],this._eventDispatcher=new ix,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(){let t={};for(let[e,i]of this._configs)t[e]=i;return t}get items(){return this._domArray}get version(){return"3.9.1"}async addColorManager(t,e=!0){this.colorManagers.set(t.key,t),await this.refresh(e)}addConfig(t){let e=t.key??t.name??"default";this._configs.set(e,t),this._eventDispatcher.dispatchEvent(d.configAdded,{data:{name:e,config:t}})}async addEasing(t,e,i=!0){this.getEasing(t)||(this.easingFunctions.set(t,e),await this.refresh(i))}async addEffect(t,e,i=!0){tX(t,t=>{this.getEffectDrawer(t)||this.effectDrawers.set(t,e)}),await this.refresh(i)}addEventListener(t,e){this._eventDispatcher.addEventListener(t,e)}async addInteractor(t,e,i=!0){this._initializers.interactors.set(t,e),await this.refresh(i)}async addMover(t,e,i=!0){this._initializers.movers.set(t,e),await this.refresh(i)}async addParticleUpdater(t,e,i=!0){this._initializers.updaters.set(t,e),await this.refresh(i)}async addPathGenerator(t,e,i=!0){this.getPathGenerator(t)||this.pathGenerators.set(t,e),await this.refresh(i)}async addPlugin(t,e=!0){this.getPlugin(t.id)||this.plugins.push(t),await this.refresh(e)}async addPreset(t,e,i=!1,s=!0){(i||!this.getPreset(t))&&this.presets.set(t,e),await this.refresh(s)}async addShape(t,e=!0){for(let e of t.validTypes)this.getShapeDrawer(e)||this.shapeDrawers.set(e,t);await this.refresh(e)}checkVersion(t){if(this.version!==t)throw Error(`The tsParticles version is different from the loaded plugins version. Engine version: ${this.version}. Plugin version: ${t}`)}clearPlugins(t){this.updaters.delete(t),this.movers.delete(t),this.interactors.delete(t)}dispatchEvent(t,e){this._eventDispatcher.dispatchEvent(t,e)}dom(){return this.items}domItem(t){return this.item(t)}async getAvailablePlugins(t){let e=new Map;for(let i of this.plugins)i.needsPlugin(t.actualOptions)&&e.set(i.id,await i.getPlugin(t));return e}getEasing(t){return this.easingFunctions.get(t)??(t=>t)}getEffectDrawer(t){return this.effectDrawers.get(t)}async getInteractors(t,e=!1){return iz(t,this.interactors,this._initializers.interactors,e)}async getMovers(t,e=!1){return iz(t,this.movers,this._initializers.movers,e)}getPathGenerator(t){return this.pathGenerators.get(t)}getPlugin(t){return this.plugins.find(e=>e.id===t)}getPreset(t){return this.presets.get(t)}getShapeDrawer(t){return this.shapeDrawers.get(t)}getSupportedEffects(){return this.effectDrawers.keys()}getSupportedShapes(){return this.shapeDrawers.keys()}async getUpdaters(t,e=!1){return iz(t,this.updaters,this._initializers.updaters,e)}init(){this._initialized||(this._initialized=!0)}item(t){let{items:e}=this,i=e[t];if(!i||i.destroyed){e.splice(t,1);return}return i}async load(t){let e=t.id??t.element?.id??`tsparticles${Math.floor(1e4*t_())}`,{index:i,url:s}=t,n=tY(s?await ik({fallback:t.options,url:s,index:i}):t.options,i),{items:a}=this,r=a.findIndex(t=>t.id.description===e),o=new ib(this,e,n);if(r>=0){let t=this.item(r);t&&!t.destroyed&&t.destroy(!1),a.splice(r,t?1:0,o)}else a.push(o);let l=iM(iP(e,t.element));return o.canvas.loadCanvas(l),await o.start(),o}loadOptions(t,e){this.plugins.forEach(i=>i.loadOptions?.(t,e))}loadParticlesOptions(t,e,...i){let s=this.updaters.get(t);s&&s.forEach(t=>t.loadOptions?.(e,...i))}async refresh(t=!0){t&&await Promise.all(this.items.map(t=>t.refresh()))}removeEventListener(t,e){this._eventDispatcher.removeEventListener(t,e)}setOnClickHandler(t){let{items:e}=this;if(!e.length)throw Error(`${Q} can only set click handlers after calling tsParticles.load()`);e.forEach(e=>e.addClickHandler(t))}}class iS{constructor(t){this.type=_.external,this.container=t}}class iC{constructor(t){this.type=_.particles,this.container=t}}($=x||(x={})).clockwise="clockwise",$.counterClockwise="counter-clockwise",$.random="random",(W=z||(z={})).linear="linear",W.radial="radial",W.random="random",(U=k||(k={})).easeInBack="ease-in-back",U.easeInCirc="ease-in-circ",U.easeInCubic="ease-in-cubic",U.easeInLinear="ease-in-linear",U.easeInQuad="ease-in-quad",U.easeInQuart="ease-in-quart",
1U.easeInQuint="ease-in-quint",U.easeInExpo="ease-in-expo",U.easeInSine="ease-in-sine",U.easeOutBack="ease-out-back",U.easeOutCirc="ease-out-circ",U.easeOutCubic="ease-out-cubic",U.easeOutLinear="ease-out-linear",U.easeOutQuad="ease-out-quad",U.easeOutQuart="ease-out-quart",U.easeOutQuint="ease-out-quint",U.easeOutExpo="ease-out-expo",U.easeOutSine="ease-out-sine",U.easeInOutBack="ease-in-out-back",U.easeInOutCirc="ease-in-out-circ",U.easeInOutCubic="ease-in-out-cubic",U.easeInOutLinear="ease-in-out-linear",U.easeInOutQuad="ease-in-out-quad",U.easeInOutQuart="ease-in-out-quart",U.easeInOutQuint="ease-in-out-quint",U.easeInOutExpo="ease-in-out-expo",U.easeInOutSine="ease-in-out-sine";let iD=function(){let t=new iO;return t.init(),t}();tL()||(window.tsParticles=iD)},48167:function(t,e,i){i.d(e,{Z:function(){return r},initParticlesEngine:function(){return o}});var s=i(115),n=i(27573),a=i(7653);let r=t=>{let e=t.id??"tsparticles";return(0,a.useEffect)(()=>{let i;return s.S6T.load({id:e,url:t.url,options:t.options}).then(e=>{var s;i=e,null==(s=t.particlesLoaded)||s.call(t,e)}),()=>{null==i||i.destroy()}},[e,t,t.url,t.options]),(0,n.jsx)("div",{id:e,className:t.className})};async function o(t){await t(s.S6T)}}}]);

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.