PageSourceSearch

https://stocklift.co/assets/index-DQv37lpF.js

js stocklift.co collected 2026-09-25 03:22:51 UTC 189,230 bytes, 3 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/LearnHubView-BC4J0MwL.js","assets/LandingArticle-B_hy_oi3.js","assets/LandingArticle-BvcfmN5A.css","assets/LearnHubView-CZpmlYPZ.css","assets/ToolPageView-Dh-RQM-4.js","assets/NotFoundView-DRxn-INe.js","assets/rolldown-runtime-DK3Fl9T5.js","assets/NotFoundView-DgQ2ZUbU.css","assets/ToolPageView-DA8Mo5LB.css","assets/LandingPageView-DimuR5-x.js","assets/LandingPageView-B4Wi2bEQ.css","assets/blog-Dk8znfHo.js","assets/BlogHubView-bUR0iwvO.js","assets/BlogHubView-DCdHm4Px.css","assets/BlogArticleView-pqjezoTp.js","assets/BlogArticleView-Cy6o7Vjw.css","assets/HomeView-YLKJOL2O.js","assets/IconPhone-BBWbC9O6.js","assets/IconPhone-C_PmhkCi.css","assets/HomeView-Dbf8X9jT.css","assets/PrivacyPolicyView-B-iEc-9S.js","assets/LegalPage-CrUE0iPt.js","assets/LegalPage-DbuvQh6q.css","assets/TermsView-Cr0fiUjl.js","assets/ContactView-CE1J2l6d.js","assets/ContactView-DHZWeUvf.css"])))=>i.map(i=>d[i]);
2(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();function e(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var t={},n=[],r=()=>{},i=()=>!1,a=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),o=e=>e.startsWith(`onUpdate:`),s=Object.assign,c=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},l=Object.prototype.hasOwnProperty,u=(e,t)=>l.call(e,t),d=Array.isArray,f=e=>x(e)===`[object Map]`,p=e=>x(e)===`[object Set]`,m=e=>x(e)===`[object Date]`,h=e=>typeof e==`function`,g=e=>typeof e==`string`,_=e=>typeof e==`symbol`,v=e=>typeof e==`object`&&!!e,y=e=>(v(e)||h(e))&&h(e.then)&&h(e.catch),b=Object.prototype.toString,x=e=>b.call(e),S=e=>x(e).slice(8,-1),C=e=>x(e)===`[object Object]`,w=e=>g(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,ee=e(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),te=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},ne=/-\w/g,T=te(e=>e.replace(ne,e=>e.slice(1).toUpperCase())),re=/\B([A-Z])/g,E=te(e=>e.replace(re,`-$1`).toLowerCase()),ie=te(e=>e.charAt(0).toUpperCase()+e.slice(1)),ae=te(e=>e?`on${ie(e)}`:``),D=(e,t)=>!Object.is(e,t),oe=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},O=(e,t,n,r=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},se=e=>{let t=parseFloat(e);return isNaN(t)?e:t},ce,le=()=>ce||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{};function ue(e){if(d(e)){let t={};for(let n=0;n<e.length;n++){let r=e[n],i=g(r)?me(r):ue(r);if(i)for(let e in i)t[e]=i[e]}return t}if(g(e)||v(e))return e}var de=/;(?![^(]*\))/g,fe=/:([^]+)/,pe=/\/\*[^]*?\*\//g;function me(e){let t={};return e.replace(pe,``).split(de).forEach(e=>{if(e){let n=e.split(fe);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function k(e){let t=``;if(g(e))t=e;else if(d(e))for(let n=0;n<e.length;n++){let r=k(e[n]);r&&(t+=r+` `)}else if(v(e))for(let n in e)e[n]&&(t+=n+` `);return t.trim()}var he=`itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`,ge=e(he);he+``;function _e(e){return!!e||e===``}function ve(e,t){if(e.length!==t.length)return!1;let n=!0;for(let r=0;n&&r<e.length;r++)n=ye(e[r],t[r]);return n}function ye(e,t){if(e===t)return!0;let n=m(e),r=m(t);if(n||r)return n&&r?e.getTime()===t.getTime():!1;if(n=_(e),r=_(t),n||r)return e===t;if(n=d(e),r=d(t),n||r)return n&&r?ve(e,t):!1;if(n=v(e),r=v(t),n||r){if(!n||!r||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e){let r=e.hasOwnProperty(n),i=t.hasOwnProperty(n);if(r&&!i||!r&&i||!ye(e[n],t[n]))return!1}}return String(e)===String(t)}function be(e,t){return e.findIndex(e=>ye(e,t))}var xe=e=>!!(e&&e.__v_isRef===!0),A=e=>g(e)?e:e==null?``:d(e)||v(e)&&(e.toString===b||!h(e.toString))?xe(e)?A(e.value):JSON.stringify(e,Se,2):String(e),Se=(e,t)=>xe(t)?Se(e,t.value):f(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>
vendor: 5,713 bytes, line 2
2(e[Ce(t,r)+` =>`]=n,e),{})}:p(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Ce(e))}:_(t)?Ce(t):v(t)&&!d(t)&&!C(t)?String(t):t,Ce=(e,t=``)=>_(e)?`Symbol(${e.description??t})`:e,j,we=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!e&&j&&(j.active?(this.parent=j,this.index=(j.scopes||(j.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes){let n=this.scopes.slice();for(e=0,t=n.length;e<t;e++)n[e].pause()}for(e=0,t=this.effects.length;e<t;e++)this.effects[e].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let e,t;if(this.scopes){let n=this.scopes.slice();for(e=0,t=n.length;e<t;e++)n[e].resume()}let n=this.effects.slice();for(e=0,t=n.length;e<t;e++)n[e].resume()}}run(e){if(this._active){let t=j;try{return j=this,e()}finally{j=t}}}on(){++this._on===1&&(this.prevScope=j,j=this)}off(){if(this._on>0&&--this._on===0){if(j===this)j=this.prevScope;else{let e=j;for(;e;){if(e.prevScope===this){e.prevScope=this.prevScope;break}e=e.prevScope}}this.prevScope=void 0}}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t<n;t++)this.effects[t].stop();for(this.effects.length=0,t=0,n=this.cleanups.length;t<n;t++)this.cleanups[t]();if(this.cleanups.length=0,this.scopes){let e=this.scopes.slice();for(t=0,n=e.length;t<n;t++)e[t].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!e){let e=this.parent.scopes.pop();e&&e!==this&&(this.parent.scopes[this.index]=e,e.index=this.index)}this.parent=void 0}}};function Te(){return j}var M,Ee=new WeakSet,De=class{constructor(e){this.fn=e,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,j&&(j.active?j.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Ee.has(this)&&(Ee.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||je(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,We(this),Pe(this);let e=M,t=Be;M=this,Be=!0;try{return this.fn()}finally{Fe(this),M=e,Be=t,this.flags&=-3}}stop(){if(this.flags&1){for(let e=this.deps;e;e=e.nextDep)Re(e);this.deps=this.depsTail=void 0,We(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Ee.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Ie(this)&&this.run()}get dirty(){return Ie(this)}},Oe=0,ke,Ae;function je(e,t=!1){if(e.flags|=8,t){e.next=Ae,Ae=e;return}e.next=ke,ke=e}function Me(){Oe++}function Ne(){if(--Oe>0)return;if(Ae){let e=Ae;for(Ae=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;ke;){let t=ke;for(ke=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function Pe(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Fe(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),Re(r),ze(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function Ie(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Le(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Le(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ge)||(e.globalVersion=Ge,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ie(e))))return;e.flags|=2;let t=e.dep,n=M,r=Be;M=e,Be=!0;try{Pe(e);let n=e.fn(e._value);(t.version===0||D(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{M=n,Be=r,Fe(e),e.flags&=-3}}function Re(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)Re(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ze(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}var Be=!0,Ve=[];function He(){Ve.push(Be),Be=!1}function Ue(){let e=Ve.pop();Be=e===void 0||e}function We(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=M;M=void 0;try{t()}finally{M=e}}}var Ge=0,Ke=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},qe=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!M||!Be||M===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==M)t=this.activeLink=new Ke(M,this),M.deps?(t.prevDep=M.depsTail,M.depsTail.nextDep=t,M.depsTail=t):M.deps=M.depsTail=t,Je(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=M.depsTail,t.nextDep=void 0,M.depsTail.nextDep=t,M.depsTail=t,M.deps===t&&(M.deps=e)}return t}trigger(e){this.version++,Ge++,this.notify(e)}notify(e){Me();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{Ne()}}};function Je(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)Je(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var Ye=new WeakMap,Xe=Symbol(``),Ze=Symbol(``),Qe=Symbol(``);function N(e,t,n){if(Be&&M){let t=Ye.get(e);t||Ye.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new qe),r.map=t,r.key=n),r.track()}}function $e(e,t,n,r,i,a){let o=Ye.get(e);if(!o){Ge++;return}let s=e=>{e&&e.trigger()};
vendor: 9,607 bytes, line 2
2if(Me(),t===`clear`)o.forEach(s);else{let i=d(e),a=i&&w(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===Qe||!_(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(Qe)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(Xe)),f(e)&&s(o.get(Ze)));break;case`delete`:i||(s(o.get(Xe)),f(e)&&s(o.get(Ze)));break;case`set`:f(e)&&s(o.get(Xe))}}Ne()}function et(e){let t=F(e);return t===e?t:(N(t,`iterate`,Qe),P(e)?t:t.map(Vt))}function tt(e){return N(e=F(e),`iterate`,Qe),e}function nt(e,t){return Rt(e)?Ht(Lt(e)?Vt(t):t):Vt(t)}var rt={__proto__:null,[Symbol.iterator](){return it(this,Symbol.iterator,e=>nt(this,e))},concat(...e){return et(this).concat(...e.map(e=>d(e)?et(e):e))},entries(){return it(this,`entries`,e=>(e[1]=nt(this,e[1]),e))},every(e,t){return ot(this,`every`,e,t,void 0,arguments)},filter(e,t){return ot(this,`filter`,e,t,e=>e.map(e=>nt(this,e)),arguments)},find(e,t){return ot(this,`find`,e,t,e=>nt(this,e),arguments)},findIndex(e,t){return ot(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return ot(this,`findLast`,e,t,e=>nt(this,e),arguments)},findLastIndex(e,t){return ot(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return ot(this,`forEach`,e,t,void 0,arguments)},includes(...e){return ct(this,`includes`,e)},indexOf(...e){return ct(this,`indexOf`,e)},join(e){return et(this).join(e)},lastIndexOf(...e){return ct(this,`lastIndexOf`,e)},map(e,t){return ot(this,`map`,e,t,void 0,arguments)},pop(){return lt(this,`pop`)},push(...e){return lt(this,`push`,e)},reduce(e,...t){return st(this,`reduce`,e,t)},reduceRight(e,...t){return st(this,`reduceRight`,e,t)},shift(){return lt(this,`shift`)},some(e,t){return ot(this,`some`,e,t,void 0,arguments)},splice(...e){return lt(this,`splice`,e)},toReversed(){return et(this).toReversed()},toSorted(e){return et(this).toSorted(e)},toSpliced(...e){return et(this).toSpliced(...e)},unshift(...e){return lt(this,`unshift`,e)},values(){return it(this,`values`,e=>nt(this,e))}};function it(e,t,n){let r=tt(e),i=r[t]();return r!==e&&!P(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var at=Array.prototype;function ot(e,t,n,r,i,a){let o=tt(e),s=o!==e&&!P(e),c=o[t];if(c!==at[t]){let t=c.apply(e,a);return s?Vt(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,nt(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function st(e,t,n,r){let i=tt(e),a=i!==e&&!P(e),o=n,s=!1;i!==e&&(a?(s=r.length===0,o=function(t,r,i){return s&&(s=!1,t=nt(e,t)),n.call(this,t,nt(e,r),i,e)}):n.length>3&&(o=function(t,r,i){return n.call(this,t,r,i,e)}));let c=i[t](o,...r);return s?nt(e,c):c}function ct(e,t,n){let r=F(e);N(r,`iterate`,Qe);let i=r[t](...n);return(i===-1||i===!1)&&zt(n[0])?(n[0]=F(n[0]),r[t](...n)):i}function lt(e,t,n=[]){He(),Me();let r=F(e)[t].apply(e,n);return Ne(),Ue(),r}var ut=e(`__proto__,__v_isRef,__isVue`),dt=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(_));function ft(e){_(e)||(e=String(e));let t=F(this);return N(t,`has`,e),t.hasOwnProperty(e)}var pt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?jt:At:i?kt:Ot).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=d(e);if(!r){let e;if(a&&(e=rt[t]))return e;if(t===`hasOwnProperty`)return ft}let o=Reflect.get(e,t,I(e)?e:n);if((_(t)?dt.has(t):ut(t))||(r||N(e,`get`,t),i))return o;if(I(o)){let e=a&&w(t)?o:o.value;return r&&v(e)?Ft(e):e}return v(o)?r?Ft(o):Nt(o):o}},mt=class extends pt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=d(e)&&w(t);if(!this._isShallow){let e=Rt(i);if(!P(n)&&!Rt(n)&&(i=F(i),n=F(n)),!a&&I(i)&&!I(n))return e||(i.value=n),!0}let o=a?Number(t)<e.length:u(e,t),s=Reflect.set(e,t,n,I(e)?e:r);return e===F(r)&&s&&(o?D(n,i)&&$e(e,`set`,t,n,i):$e(e,`add`,t,n)),s}deleteProperty(e,t){let n=u(e,t),r=e[t],i=Reflect.deleteProperty(e,t);return i&&n&&$e(e,`delete`,t,void 0,r),i}has(e,t){let n=Reflect.has(e,t);return(!_(t)||!dt.has(t))&&N(e,`has`,t),n}ownKeys(e){return N(e,`iterate`,d(e)?`length`:Xe),Reflect.ownKeys(e)}},ht=class extends pt{constructor(e=!1){super(!0,e)}set(e,t){return!0}deleteProperty(e,t){return!0}},gt=new mt,_t=new ht,vt=new mt(!0),yt=e=>e,bt=e=>Reflect.getPrototypeOf(e);function xt(e,t,n){return function(...r){let i=this.__v_raw,a=F(i),o=f(a),c=e===`entries`||e===Symbol.iterator&&o,l=e===`keys`&&o,u=i[e](...r),d=n?yt:t?Ht:Vt;return!t&&N(a,`iterate`,l?Ze:Xe),s(Object.create(u),{next(){let{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:c?[d(e[0]),d(e[1])]:d(e),done:t}}})}}function St(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function Ct(e,t){let n={get(n){let r=this.__v_raw,i=F(r),a=F(n);e||(D(n,a)&&N(i,`get`,n),N(i,`get`,a));let{has:o}=bt(i),s=t?yt:e?Ht:Vt;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&N(F(t),`iterate`,Xe),t.size},has(t){let n=this.__v_raw,r=F(n),i=F(t);return e||(D(t,i)&&N(r,`has`,t),N(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=F(a),s=t?yt:e?Ht:Vt;return!e&&N(o,`iterate`,Xe),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return s(n,e?{add:St(`add`),set:St(`set`),delete:St(`delete`),clear:St(`clear`)}:{add(e){let n=F(this),r=bt(n),i=F(e),a=!t&&!P(e)&&!Rt(e)?i:e;return r.has.call(n,a)||D(e,a)&&r.has.call(n,e)||D(i,a)&&r.has.call(n,i)||(n.add(a),$e(n,`add`,a,a)),this},set(e,n){!t&&!P(n)&&!Rt(n)&&(n=F(n));let r=F(this),{has:i,get:a}=bt(r),o=i.call(r,e);o||=(e=F(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?D(n,s)&&$e(r,`set`,e,n,s):$e(r,`add`,e,n),this},delete(e){let t=F(this),{has:n,get:r}=bt(t),i=n.call(t,e);i||=(e=F(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&$e(t,`delete`,e,void 0,a),o},clear(){let e=F(this),t=e.size!==0,n=e.clear();return t&&$e(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=xt(r,e,t)}),n}function wt(e,t){let n=Ct(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(u(n,r)&&r in t?n:t,r,i)}var Tt={get:wt(!1,!1)},Et={get:wt(!1,!0)},Dt={get:wt(!0,!1)},Ot=new WeakMap,kt=new WeakMap,At=new WeakMap,jt=new WeakMap;function Mt(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function Nt(e){return Rt(e)?e:It(e,!1,gt,Tt,Ot)}function Pt(e){return It(e,!1,vt,Et,kt)}function Ft(e){return It(e,!0,_t,Dt,At)}function It(e,t,n,r,i){if(!v(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let a=i.get(e);if(a)return a;let o=Mt(S(e));if(o===0)return e;let s=new Proxy(e,o===2?r:n);return i.set(e,s),s}function Lt(e){return Rt(e)?Lt(e.__v_raw):!!(e&&e.__v_isReactive)}function Rt(e){return!!(e&&e.__v_isReadonly)}function P(e){return!!(e&&e.__v_isShallow)}function zt(e){return e?!!e.__v_raw:!1}function F(e){let t=e&&e.__v_raw;return t?F(t):e}function Bt(e){return!u(e,`__v_skip`)&&Object.isExtensible(e)&&O(e,`__v_skip`,!0),e}var Vt=e=>v(e)?Nt(e):e,Ht=e=>v(e)?Ft(e):e;function I(e){return e?e.__v_isRef===!0:!1}function Ut(e){return Gt(e,!1)}function Wt(e){return Gt(e,!0)}function Gt(e,t){return I(e)?e:new Kt(e,t)}var Kt=class{constructor(e,t){this.dep=new qe,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:F(e),this._value=t?e:Vt(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||P(e)||Rt(e);e=n?e:F(e),D(e,t)&&(this._rawValue=e,this._value=n?e:Vt(e),this.dep.trigger())}};function L(e){return I(e)?e.value:e}var qt={get:(e,t,n)=>t===`__v_raw`?e:L(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return I(i)&&!I(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function Jt(e){return Lt(e)?e:new Proxy(e,qt)}var Yt=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new qe(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ge-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&M!==this)return je(this,!0),!0}get value(){let e=this.dep.track();return Le(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function Xt(e,t,n=!1){let r,i;return h(e)?r=e:(r=e.get,i=e.set),new Yt(r,i,n)}var Zt={},Qt=new WeakMap,$t=void 0;function en(e,t=!1,n=$t){if(n){let t=Qt.get(n);t||Qt.set(n,t=[]),t.push(e)}}function tn(e,n,i=t){let{immediate:a,deep:o,once:s,scheduler:l,augmentJob:u,call:f}=i,p=e=>o?e:P(e)||o===!1||o===0?nn(e,1):nn(e),m,g,_,v,y=!1,b=!1;if(I(e)?(g=()=>e.value,y=P(e)):Lt(e)?(g=()=>p(e),y=!0):d(e)?(b=!0,y=e.some(e=>Lt(e)||P(e)),g=()=>e.map(e=>{if(I(e))return e.value;if(Lt(e))return p(e);if(h(e))return f?f(e,2):e()})):g=h(e)?n?f?()=>f(e,2):e:()=>{if(_){He();try{_()}finally{Ue()}}let t=$t;$t=m;try{return f?f(e,3,[v]):e(v)}finally{$t=t}}:r,n&&o){let e=g,t=o===!0?1/0:o;g=()=>nn(e(),t)}let x=Te(),S=()=>{m.stop(),x&&x.active&&c(x.effects,m)};if(s&&n){let e=n;n=(...t)=>{let n=e(...t);return S(),n}}let C=b?Array(e.length).fill(Zt):Zt,w=e=>{if(!(!(m.flags&1)||!m.dirty&&!e)){if(n){let t=m.run();if(e||o||y||(b?t.some((e,t)=>D(e,C[t])):D(t,C))){_&&_();let e=$t;$t=m;try{let e=[t,C===Zt?void 0:b&&C[0]===Zt?[]:C,v];C=t,f?f(n,3,e):n(...e)}
vendor: 25,134 bytes, line 2
2finally{$t=e}}}else m.run()}};return u&&u(w),m=new De(g),m.scheduler=l?()=>l(w,!1):w,v=e=>en(e,!1,m),_=m.onStop=()=>{let e=Qt.get(m);if(e){if(f)f(e,4);else for(let t of e)t();Qt.delete(m)}},n?a?w(!0):C=m.run():l?l(w.bind(null,!0),!0):m.run(),S.pause=m.pause.bind(m),S.resume=m.resume.bind(m),S.stop=S,S}function nn(e,t=1/0,n){if(t<=0||!v(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,I(e))nn(e.value,t,n);else if(d(e))for(let r=0;r<e.length;r++)nn(e[r],t,n);else if(p(e)||f(e))e.forEach(e=>{nn(e,t,n)});else if(C(e)){for(let r in e)nn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&nn(e[r],t,n)}return e}function rn(e,t,n,r){try{return r?e(...r):e()}catch(e){on(e,t,n)}}function an(e,t,n,r){if(h(e)){let i=rn(e,t,n,r);return i&&y(i)&&i.catch(e=>{on(e,t,n)}),i}if(d(e)){let i=[];for(let a=0;a<e.length;a++)i.push(an(e[a],t,n,r));return i}}function on(e,n,r,i=!0){let a=n?n.vnode:null,{errorHandler:o,throwUnhandledErrorInProduction:s}=n&&n.appContext.config||t;if(n){let t=n.parent,i=n.proxy,a=`https://vuejs.org/error-reference/#runtime-${r}`;for(;t;){let n=t.ec;if(n){for(let t=0;t<n.length;t++)if(n[t](e,i,a)===!1)return}t=t.parent}if(o){He(),rn(o,null,10,[e,i,a]),Ue();return}}sn(e,r,a,i,s)}function sn(e,t,n,r=!0,i=!1){if(i)throw e;console.error(e)}var R=[],cn=-1,ln=[],un=null,dn=0,fn=Promise.resolve(),pn=null;function mn(e){let t=pn||fn;return e?t.then(this?e.bind(this):e):t}function hn(e){let t=cn+1,n=R.length;for(;t<n;){let r=t+n>>>1,i=R[r],a=xn(i);a<e||a===e&&i.flags&2?t=r+1:n=r}return t}function gn(e){if(!(e.flags&1)){let t=xn(e),n=R[R.length-1];!n||!(e.flags&2)&&t>=xn(n)?R.push(e):R.splice(hn(t),0,e),e.flags|=1,_n()}}function _n(){pn||=fn.then(Sn)}function vn(e){if(!d(e))un&&e.id===-1?un.splice(dn+1,0,e):e.flags&1||(ln.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)ln.push(e[t]);_n()}function yn(e,t,n=cn+1){for(;n<R.length;n++){let t=R[n];if(t&&t.flags&2){if(e&&t.id!==e.uid)continue;R.splice(n,1),n--,t.flags&4&&(t.flags&=-2),t(),t.flags&4||(t.flags&=-2)}}}function bn(e){if(ln.length){let e=[...new Set(ln)].sort((e,t)=>xn(e)-xn(t));if(ln.length=0,un){for(let t=0;t<e.length;t++)un.push(e[t]);return}for(un=e,dn=0;dn<un.length;dn++){let e=un[dn];e.flags&4&&(e.flags&=-2),e.flags&8||e(),e.flags&=-2}un=null,dn=0}}var xn=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Sn(e){try{for(cn=0;cn<R.length;cn++){let e=R[cn];e&&!(e.flags&8)&&(e.flags&4&&(e.flags&=-2),rn(e,e.i,e.i?15:14),e.flags&4||(e.flags&=-2))}}finally{for(;cn<R.length;cn++){let e=R[cn];e&&(e.flags&=-2)}cn=-1,R.length=0,bn(e),pn=null,(R.length||ln.length)&&Sn(e)}}var z=null,Cn=null;function wn(e){let t=z;return z=e,Cn=e&&e.type.__scopeId||null,t}function B(e,t=z,n){if(!t||e._n)return e;let r=(...n)=>{r._d&&Ri(-1);let i=wn(t),a=Fi.length,o;try{o=e(...n)}finally{for(let e=Fi.length;e>a;e--)Ii();wn(i),r._d&&Ri(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function Tn(e,n){if(z===null)return e;let r=_a(z),i=e.dirs||=[];for(let e=0;e<n.length;e++){let[a,o,s,c=t]=n[e];a&&(h(a)&&(a={mounted:a,updated:a}),a.deep&&nn(o),i.push({dir:a,instance:r,value:o,oldValue:void 0,arg:s,modifiers:c}))}return e}function En(e,t,n,r){let i=e.dirs,a=t&&t.dirs;for(let o=0;o<i.length;o++){let s=i[o];a&&(s.oldValue=a[o].value);let c=s.dir[r];c&&(He(),an(c,n,8,[e.el,s,e,t]),Ue())}}function Dn(e,t){if(Y){let n=Y.provides,r=Y.parent&&Y.parent.provides;r===n&&(n=Y.provides=Object.create(r)),n[e]=t}}function On(e,t,n=!1){let r=ia();if(r||Ur){let i=Ur?Ur._context.provides:r?r.parent==null||r.ce?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:void 0;if(i&&e in i)return i[e];if(arguments.length>1)return n&&h(t)?t.call(r&&r.proxy):t}}var kn=Symbol.for(`v-scx`),An=()=>On(kn);function jn(e,t,n){return Mn(e,t,n)}function Mn(e,n,i=t){let{immediate:a,deep:o,flush:c,once:l}=i,u=s({},i),d=n&&a||!n&&c!==`post`,f;if(ua){if(c===`sync`){let e=An();f=e.__watcherHandles||=[]}else if(!d){let e=()=>{};return e.stop=r,e.resume=r,e.pause=r,e}}let p=Y;u.call=(e,t,n)=>an(e,p,t,n);let m=!1;c===`post`?u.scheduler=e=>{H(e,p&&p.suspense)}:c!==`sync`&&(m=!0,u.scheduler=(e,t)=>{t?e():gn(e)}),u.augmentJob=e=>{n&&(e.flags|=4),m&&(e.flags|=2,p&&(e.id=p.uid,e.i=p))};let h=tn(e,n,u);return ua&&(f?f.push(h):d&&h()),h}function Nn(e,t,n){let r=this.proxy,i=g(e)?e.includes(`.`)?Pn(r,e):()=>r[e]:e.bind(r,r),a;h(t)?a=t:(a=t.handler,n=t);let o=sa(this),s=Mn(i,a.bind(r),n);return o(),s}function Pn(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;e<n.length&&t;e++)t=t[n[e]];return t}}var Fn=Symbol(`_vte`),In=e=>e.__isTeleport,Ln=Symbol(`_leaveCb`);function Rn(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==Ni){t=n;break}}return t}function zn(e){if(!Yn(e))return In(e.type)&&e.children?Rn(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&h(n.default))return n.default()}}function Bn(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;let n=e.component.subTree;Bn(In(n.type)&&zn(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Vn(e,t){return h(e)?s({name:e.name},t,{setup:e}):e}function Hn(e){e.ids=[e.ids[0]+e.ids[2]+++`-`,0,0]}function Un(e){let n=ia(),r=Wt(null);if(n){let i=n.refs===t?n.refs={}:n.refs;Object.defineProperty(i,e,{enumerable:!0,get:()=>r.value,set:e=>r.value=e})}return r}function Wn(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}var Gn=new WeakMap;function Kn(e,n,r,a,o=!1){if(d(e)){e.forEach((e,t)=>Kn(e,n&&(d(n)?n[t]:n),r,a,o));return}if(Jn(a)&&!o){a.shapeFlag&512&&a.type.__asyncResolved&&a.component.subTree.component&&Kn(e,n,r,a.component.subTree);return}let s=a.shapeFlag&4?_a(a.component):a.el,l=o?null:s,{i:f,r:p}=e,m=n&&n.r,_=f.refs===t?f.refs={}:f.refs,v=f.setupState,y=F(v),b=v===t?i:e=>!Wn(_,e)&&u(y,e),x=(e,t)=>!(t&&Wn(_,t));if(m!=null&&m!==p){if(qn(n),g(m))_[m]=null,b(m)&&(v[m]=null);else if(I(m)){let e=n;x(m,e.k)&&(m.value=null),e.k&&(_[e.k]=null)}}if(h(p))rn(p,f,12,[l,_]);else{let t=g(p),n=I(p);if(t||n){let i=()=>{if(e.f){let n=t?b(p)?v[p]:_[p]:x(p)||!e.k?p.value:_[e.k];if(o)d(n)&&c(n,s);else if(d(n))n.includes(s)||n.push(s);else if(t)_[p]=[s],b(p)&&(v[p]=_[p]);else{let t=[s];x(p,e.k)&&(p.value=t),e.k&&(_[e.k]=t)}}else t?(_[p]=l,b(p)&&(v[p]=l)):n&&(x(p,e.k)&&(p.value=l),e.k&&(_[e.k]=l))};if(l){let t=()=>{i(),Gn.delete(e)};t.id=-1,Gn.set(e,t),H(t,r)}else qn(e),i()}}}function qn(e){let t=Gn.get(e);t&&(t.flags|=8,Gn.delete(e))}le().requestIdleCallback,le().cancelIdleCallback;var Jn=e=>!!e.type.__asyncLoader,Yn=e=>e.type.__isKeepAlive;function Xn(e,t){Qn(e,`a`,t)}function Zn(e,t){Qn(e,`da`,t)}function Qn(e,t,n=Y){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(er(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Yn(e.parent.vnode)&&$n(r,t,n,e),e=e.parent}}function $n(e,t,n,r){let i=er(t,e,r,!0);sr(()=>{c(r[t],i)},n)}function er(e,t,n=Y,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{He();let i=sa(n),a=an(t,n,e,r);return i(),Ue(),a};return r?i.unshift(a):i.push(a),a}}var tr=e=>(t,n=Y)=>{(!ua||e===`sp`)&&er(e,(...e)=>t(...e),n)},nr=tr(`bm`),rr=tr(`m`),ir=tr(`bu`),ar=tr(`u`),or=tr(`bum`),sr=tr(`um`),cr=tr(`sp`),lr=tr(`rtg`),ur=tr(`rtc`);function dr(e,t=Y){er(`ec`,e,t)}var fr=`components`;function pr(e,t){return gr(fr,e,!0,t)||e}var mr=Symbol.for(`v-ndc`);function hr(e){return g(e)?gr(fr,e,!1)||e:e||mr}function gr(e,t,n=!0,r=!1){let i=z||Y;if(i){let n=i.type;if(e===fr){let e=va(n,!1);if(e&&(e===t||e===T(t)||e===ie(T(t))))return n}let a=_r(i[e]||n[e],t)||_r(i.appContext[e],t);return!a&&r?n:a}}function _r(e,t){return e&&(e[t]||e[T(t)]||e[ie(T(t))])}function vr(e,t,n,r){let i,a=n&&n[r],o=d(e);if(o||g(e)){let n=o&&Lt(e),r=!1,s=!1;n&&(r=!P(e),s=Rt(e),e=tt(e)),i=Array(e.length);for(let n=0,o=e.length;n<o;n++)i[n]=t(r?s?Ht(Vt(e[n])):Vt(e[n]):e[n],n,void 0,a&&a[n])}else if(typeof e==`number`){i=Array(e);for(let n=0;n<e;n++)i[n]=t(n+1,n,void 0,a&&a[n])}else if(v(e)){if(e[Symbol.iterator])i=Array.from(e,(e,n)=>t(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r<o;r++){let o=n[r];i[r]=t(e[o],o,r,a&&a[r])}}}else i=[];return n&&(n[r]=i),i}function yr(e,t,n,r,i,a){if(n??={},z.ce||z.parent&&Jn(z.parent)&&z.parent.ce){let e=a!=null&&n.key==null?s({},n,{key:a}):n,i=Object.keys(e).length>0;return t!=="default"&&(e.name=t),G(),Vi(U,null,[q(`slot`,e,r&&r())],i?-2:64)}let o=e[t];o&&o._c&&(o._d=!1);let c=Fi.length;G();let l;try{let i=o&&br(o(n)),s=n.key||a||i&&i.key;l=Vi(U,{key:(s&&!_(s)?s:`_${t}`)+(!i&&r?`_fb`:``)},i||(r?r():[]),i&&e._===1?64:-2)}catch(e){for(let e=Fi.length;e>c;e--)Ii();throw e}finally{o&&o._c&&(o._d=!0)}return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+`-s`]),l}function br(e){return e.some(e=>!Hi(e)||!(e.type===Ni||e.type===U&&!br(e.children)))?e:null}var xr=e=>e?la(e)?_a(e):xr(e.parent):null,Sr=s(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>xr(e.parent),$root:e=>xr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>jr(e),$forceUpdate:e=>e.f||=()=>{gn(e.update)},$nextTick:e=>e.n||=mn.bind(e.proxy),$watch:e=>Nn.bind(e)}),Cr=(e,n)=>e!==t&&!e.__isScriptSetup&&u(e,n),wr={get({_:e},n){if(n===`__v_skip`)return!0;let{ctx:r,setupState:i,data:a,props:o,accessCache:s,type:c,appContext:l}=e;if(n[0]!==`$`){let e=s[n];if(e!==void 0)switch(e){case 1:return i[n];case 2:return a[n];case 4:return r[n];case 3:return o[n]}else if(Cr(i,n))return s[n]=1,i[n];else if(a!==t&&u(a,n))return s[n]=2,a[n];else if(u(o,n))return s[n]=3,o[n];else if(r!==t&&u(r,n))return s[n]=4,r[n];else Er&&(s[n]=0)}let d=Sr[n],f,p;if(d)return n===`$attrs`&&N(e.attrs,`get`,``),d(e);if((f=c.__cssModules)&&(f=f[n]))return f;if(r!==t&&u(r,n))return s[n]=4,r[n];if(p=l.config.globalProperties,u(p,n))return p[n]},set({_:e},n,r){let{data:i,setupState:a,ctx:o}=e;return Cr(a,n)?(a[n]=r,!0):i!==t&&u(i,n)?(i[n]=r,!0):u(e.props,n)||n[0]===`$`&&n.slice(1)in e?!1:(o[n]=r,!0)},has({_:{data:e,setupState:n,accessCache:r,ctx:i,appContext:a,props:o,type:s}},c){let l;return!!(r[c]||e!==t&&c[0]!==`$`&&u(e,c)||Cr(n,c)||u(o,c)||u(i,c)||u(Sr,c)||u(a.config.globalProperties,c)||(l=s.__cssModules)&&l[c])},defineProperty(e,t,n){return n.get==null?u(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}};function Tr(e){return d(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}var Er=!0;function Dr(e){let t=jr(e),n=e.proxy,i=e.ctx;Er=!1,t.beforeCreate&&kr(t.beforeCreate,e,`bc`);let{data:a,computed:o,methods:s,watch:c,provide:l,inject:u,created:f,beforeMount:p,mounted:m,beforeUpdate:g,updated:_,activated:y,deactivated:b,beforeDestroy:x,beforeUnmount:S,destroyed:C,unmounted:w,render:ee,renderTracked:te,renderTriggered:ne,errorCaptured:T,serverPrefetch:re,expose:E,inheritAttrs:ie,components:ae,directives:D,filters:oe}=t;if(u&&Or(u,i,null),s)for(let e in s){let t=s[e];h(t)&&(i[e]=t.bind(n))}if(a){let t=a.call(n,n);v(t)&&(e.data=Nt(t))}if(Er=!0,o)for(let e in o){let t=o[e],a=ba({get:h(t)?t.bind(n,n):h(t.get)?t.get.bind(n,n):r,set:!h(t)&&h(t.set)?t.set.bind(n):r});Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(c)for(let e in c)Ar(c[e],i,n,e);if(l){let e=h(l)?l.call(n):l;Reflect.ownKeys(e).forEach(t=>{Dn(t,e[t])})}f&&kr(f,e,`c`);function O(e,t){d(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(O(nr,p),O(rr,m),O(ir,g),O(ar,_),O(Xn,y),O(Zn,b),O(dr,T),O(ur,te),O(lr,ne),O(or,S),O(sr,w),O(cr,re),d(E)){if(E.length){let t=e.exposed||={};E.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={}}ee&&e.render===r&&(e.render=ee),ie!=null&&(e.inheritAttrs=ie),ae&&(e.components=ae),D&&(e.directives=D),re&&Hn(e)}function Or(e,t,n=r){d(e)&&(e=Ir(e));for(let n in e){let r=e[n],i;i=v(r)?`default`in r?On(r.from||n,r.default,!0):On(r.from||n):On(r),I(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function kr(e,t,n){an(d(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function Ar(e,t,n,r){let i=r.includes(`.`)?Pn(n,r):()=>n[r];if(g(e)){let n=t[e];h(n)&&jn(i,n)}else if(h(e))jn(i,e.bind(n));else if(v(e)){if(d(e))e.forEach(e=>Ar(e,t,n,r));else{let r=h(e.handler)?e.handler.bind(n):t[e.handler];h(r)&&jn(i,r,e)}}}function jr(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>Mr(c,e,o,!0)),Mr(c,t,o)),v(t)&&a.set(t,c),c}function Mr(e,t,n,r=!1){let{mixins:i,extends:a}=t;a&&Mr(e,a,n,!0),i&&i.forEach(t=>Mr(e,t,n,!0));for(let i in t)if(!(r&&i===`expose`)){let r=Nr[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}var Nr={data:Pr,props:Rr,emits:Rr,methods:Lr,computed:Lr,beforeCreate:V,created:V,beforeMount:V,mounted:V,beforeUpdate:V,updated:V,beforeDestroy:V,beforeUnmount:V,destroyed:V,unmounted:V,activated:V,deactivated:V,errorCaptured:V,serverPrefetch:V,components:Lr,directives:Lr,watch:zr,provide:Pr,inject:Fr};function Pr(e,t){return t?e?function(){return s(h(e)?e.call(this,this):e,h(t)?t.call(this,this):t)}:t:e}function Fr(e,t){return Lr(Ir(e),Ir(t))}function Ir(e){if(d(e)){let t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function V(e,t){return e?[...new Set([].concat(e,t))]:t}function Lr(e,t){return e?s(Object.create(null),e,t):t}function Rr(e,t){return e?d(e)&&d(t)?[...new Set([...e,...t])]:s(Object.create(null),Tr(e),Tr(t??{})):t}function zr(e,t){if(!e)return t;if(!t)return e;let n=s(Object.create(null),e);for(let r in t)n[r]=V(e[r],t[r]);return n}function Br(){return{app:null,config:{isNativeTag:i,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}var Vr=0;function Hr(e,t){return function(n,r=null){h(n)||(n=s({},n)),r!=null&&!v(r)&&(r=null);let i=Br(),a=new WeakSet,o=[],c=!1,l=i.app={_uid:Vr++,_component:n,_props:r,_container:null,_context:i,_instance:null,version:Sa,get config(){return i.config},set config(e){},use(e,...t){return a.has(e)||(e&&h(e.install)?(a.add(e),e.install(l,...t)):h(e)&&(a.add(e),e(l,...t))),l},mixin(e){return i.mixins.includes(e)||i.mixins.push(e),l},component(e,t){return t?(i.components[e]=t,l):i.components[e]},directive(e,t){return t?(i.directives[e]=t,l):i.directives[e]},mount(a,o,s){if(!c){let u=l._ceVNode||q(n,r);return u.appContext=i,s===!0?s=`svg`:s===!1&&(s=void 0),o&&t?t(u,a):e(u,a,s),c=!0,l._container=a,a.__vue_app__=l,_a(u.component)}},onUnmount(e){o.push(e)},unmount(){c&&(an(o,l._instance,16),e(null,l._container),delete l._container.__vue_app__)},provide(e,t){return i.provides[e]=t,l},runWithContext(e){let t=Ur;Ur=l;try{return e()}finally{Ur=t}}};return l}}var Ur=null,Wr=(e,t)=>t===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${T(t)}Modifiers`]||e[`${E(t)}Modifiers`];function Gr(e,n,...r){if(e.isUnmounted)return;let i=e.vnode.props||t,a=r,o=n.startsWith(`update:`),s=o&&Wr(i,n.slice(7));s&&(s.trim&&(a=r.map(e=>g(e)?e.trim():e)),s.number&&(a=r.map(se)));let c,l=i[c=ae(n)]||i[c=ae(T(n))];!l&&o&&(l=i[c=ae(E(n))]),l&&an(l,e,6,a);let u=i[c+`Once`];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,an(u,e,6,a)}}var Kr=new WeakMap;function qr(e,t,n=!1){let r=n?Kr:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},c=!1;if(!h(e)){let r=e=>{let n=qr(e,t,!0);n&&(c=!0,s(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!c?(v(e)&&r.set(e,null),null):(d(a)?a.forEach(e=>o[e]=null):s(o,a),v(e)&&r.set(e,o),o)}function Jr(e,t){return!e||!a(t)?!1:(t=t.slice(2),t=t===`Once`?t:t.replace(/Once$/,``),u(e,t[0].toLowerCase()+t.slice(1))||u(e,E(t))||u(e,t))}function Yr(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:s,attrs:c,emit:l,render:u,renderCache:d,props:f,data:p,setupState:m,ctx:h,inheritAttrs:g}=e,_=wn(e),v,y;try{if(n.shapeFlag&4){let e=i||r,t=e;v=Xi(u.call(t,e,d,f,m,p,h)),y=c}else{let e=t;v=Xi(e.length>1?e(f,{attrs:c,slots:s,emit:l}):e(f,null)),y=t.props?c:Xr(c)}}catch(t){Fi.length=0,on(t,e,1),v=q(Ni)}let b=v;if(y&&g!==!1){let e=Object.keys(y),{shapeFlag:t}=b;e.length&&t&7&&(a&&e.some(o)&&(y=Zr(y,a)),b=Ji(b,y,!1,!0))}return n.dirs&&(b=Ji(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&Bn(In(b.type)&&zn(b)||b,n.transition),v=b,wn(_),v}var Xr=e=>{let t;for(let n in e)(n===`class`||n===`style`||a(n))&&((t||={})[n]=e[n]);return t},Zr=(e,t)=>{let n={};for(let r in e)(!o(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function Qr(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?$r(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;t<e.length;t++){let n=e[t];if(ei(o,r,n)&&!Jr(l,n))return!0}}}else return(i||s)&&(!s||!s.$stable)?!0:r===o?!1:r?!o||$r(r,o,l):!!o;return!1}function $r(e,t,n){let r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let i=0;i<r.length;i++){let a=r[i];if(ei(t,e,a)&&!Jr(n,a))return!0}return!1}function ei(e,t,n){let r=e[n],i=t[n];return n===`style`&&v(r)&&v(i)?!ye(r,i):r!==i}function ti({vnode:e,parent:t,suspense:n},r){for(;t;){let n=t.subTree;if(n.suspense&&n.suspense.activeBranch===e&&(n.suspense.vnode.el=n.el=r,e=n),n===e)(e=t.vnode).el=r,t=t.parent;else break}n&&n.activeBranch===e&&(n.vnode.el=r)}var ni={},ri=()=>Object.create(ni),ii=e=>Object.getPrototypeOf(e)===ni;function ai(e,t,n,r=!1){let i={},a=ri();e.propsDefaults=Object.create(null),si(e,t,i,a);for(let t in e.propsOptions[0])t in i||(i[t]=void 0);e.props=n?r?i:Pt(i):e.type.props?i:a,e.attrs=a}function oi(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=F(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r<n.length;r++){let o=n[r];if(Jr(e.emitsOptions,o))continue;let d=t[o];if(c){if(u(a,o))d!==a[o]&&(a[o]=d,l=!0);else{let t=T(o);i[t]=ci(c,s,t,d,e,!1)}}else d!==a[o]&&(a[o]=d,l=!0)}}}else{si(e,t,i,a)&&(l=!0);let r;for(let a in s)(!t||!u(t,a)&&((r=E(a))===a||!u(t,r)))&&(c?n&&(n[a]!==void 0||n[r]!==void 0)&&(i[a]=ci(c,s,a,void 0,e,!0)):delete i[a]);if(a!==s)for(let e in a)(!t||!u(t,e))&&(delete a[e],l=!0)}l&&$e(e.attrs,`set`,``)}function si(e,n,r,i){let[a,o]=e.propsOptions,s=!1,c;if(n)for(let t in n){if(ee(t))continue;let l=n[t],d;a&&u(a,d=T(t))?!o||!o.includes(d)?r[d]=l:(c||={})[d]=l:Jr(e.emitsOptions,t)||(!(t in i)||l!==i[t])&&(i[t]=l,s=!0)}if(o){let n=F(r),i=c||t;for(let t=0;t<o.length;t++){let s=o[t];r[s]=ci(a,n,s,i[s],e,!u(i,s))}}return s}function ci(e,t,n,r,i,a){let o=e[n];if(o!=null){let e=u(o,`default`);if(e&&r===void 0){let e=o.default;if(o.type!==Function&&!o.skipFactory&&h(e)){let{propsDefaults:a}=i;if(n in a)r=a[n];else{let o=sa(i);r=a[n]=e.call(null,t),o()}}else r=e;i.ce&&i.ce._setProp(n,r)}o[0]&&(a&&!e?r=!1:o[1]&&(r===``||r===E(n))&&(r=!0))}return r}var li=new WeakMap;function ui(e,r,i=!1){let a=i?li:r.propsCache,o=a.get(e);if(o)return o;let c=e.props,l={},f=[],p=!1;if(!h(e)){let t=e=>{p=!0;let[t,n]=ui(e,r,!0);s(l,t),n&&f.push(...n)};!i&&r.mixins.length&&r.mixins.forEach(t),e.extends&&t(e.extends),e.mixins&&e.mixins.forEach(t)}if(!c&&!p)return v(e)&&a.set(e,n),n;if(d(c))for(let e=0;e<c.length;e++){let n=T(c[e]);di(n)&&(l[n]=t)}else if(c)for(let e in c){let t=T(e);if(di(t)){let n=c[e],r=l[t]=d(n)||h(n)?{type:n}:s({},n),i=r.type,a=!1,o=!0;if(d(i))for(let e=0;e<i.length;++e){let t=i[e],n=h(t)&&t.name;if(n===`Boolean`){a=!0;break}n===`String`&&(o=!1)}else a=h(i)&&i.name===`Boolean`;r[0]=a,r[1]=o,(a||u(r,`default`))&&f.push(t)}}let m=[l,f];return v(e)&&a.set(e,m),m}function di(e){return e[0]!==`$`&&!ee(e)}var fi=e=>e===`_`||e===`_ctx`||e===`$stable`,pi=e=>d(e)?e.map(Xi):[Xi(e)],mi=(e,t,n)=>{if(t._n)return t;let r=B((...e)=>pi(t(...e)),n);return r._c=!1,r},hi=(e,t,n)=>{let r=e._ctx;for(let n in e){if(fi(n))continue;let i=e[n];if(h(i))t[n]=mi(n,i,r);else if(i!=null){let e=pi(i);t[n]=()=>e}}},gi=(e,t)=>{let n=pi(t);e.slots.default=()=>n},_i=(e,t,n)=>{for(let r in t)(n||!fi(r))&&(e[r]=t[r])},vi=(e,t,n)=>{let r=e.slots=ri();if(e.vnode.shapeFlag&32){let e=t._;e?(_i(r,t,n),n&&O(r,`_`,e,!0)):hi(t,r)}else t&&gi(e,t)},yi=(e,n,r)=>{let{vnode:i,slots:a}=e,o=!0,s=t;if(i.shapeFlag&32){let e=n._;e?r&&e===1?o=!1:_i(a,n,r):(o=!n.$stable,hi(n,a)),s=n}else n&&(gi(e,n),s={default:1});if(o)for(let e in a)!fi(e)&&s[e]==null&&delete a[e]},H=ji;function bi(e){return xi(e)}function xi(e,i){let a=le();a.__VUE__=!0;let{insert:o,remove:s,patchProp:c,createElement:l,createText:u,createComment:d,setText:f,setElementText:p,parentNode:m,nextSibling:h,setScopeId:g=r,insertStaticContent:_}=e,v=(e,t,n,r=null,i=null,a=null,o=void 0,s=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!Ui(e,t)&&(r=ye(e),k(e,i,a,!0),e=null),t.patchFlag===-2&&(c=!1,t.dynamicChildren=null);let{type:l,ref:u,shapeFlag:d}=t;switch(l){case Mi:y(e,t,n,r);break;case Ni:b(e,t,n,r);break;case Pi:e??x(t,n,r,o);break;case U:ae(e,t,n,r,i,a,o,s,c);break;default:d&1?w(e,t,n,r,i,a,o,s,c):d&6?D(e,t,n,r,i,a,o,s,c):(d&64||d&128)&&l.process(e,t,n,r,i,a,o,s,c,A)}u!=null&&i?Kn(u,e&&e.ref,a,t||e,!t):u==null&&e&&e.ref!=null&&Kn(e.ref,null,a,e,!0)},y=(e,t,n,r)=>{if(e==null)o(t.el=u(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},b=(e,t,n,r)=>{e==null?o(t.el=d(t.children||``),n,r):t.el=e.el},x=(e,t,n,r)=>{[e.el,e.anchor]=_(e.children,t,n,r,e.el,e.anchor)},S=({el:e,anchor:t},n,r)=>{let i;for(;e&&e!==t;)i=h(e),o(e,n,r),e=i;o(t,n,r)},C=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=h(e),s(e),e=n;s(t)},w=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)te(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),re(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},te=(e,t,n,r,i,a,s,u)=>{let d,f,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(d=e.el=l(e.type,a,m&&m.is,m),h&8?p(d,e.children):h&16&&T(e.children,d,null,r,i,Si(e,a),s,u),_&&En(e,null,r,`created`),ne(d,e,e.scopeId,s,r),m){for(let e in m)e!==`value`&&!ee(e)&&c(d,e,null,m[e],a,r);`value`in m&&c(d,`value`,null,m.value,a),(f=m.onVnodeBeforeMount)&&ea(f,r,e)}_&&En(e,null,r,`beforeMount`);let v=wi(i,g);v&&g.beforeEnter(d),o(d,t,n),((f=m&&m.onVnodeMounted)||v||_)&&H(()=>{try{f&&ea(f,r,e),v&&g.enter(d),_&&En(e,null,r,`mounted`)}finally{}},i)},ne=(e,t,n,r,i)=>{if(n&&g(e,n),r)for(let t=0;t<r.length;t++)g(e,r[t]);if(i){let n=i.subTree;if(t===n||Ai(n.type)&&(n.ssContent===t||n.ssFallback===t)){let t=i.vnode;ne(e,t,t.scopeId,t.slotScopeIds,i.parent)}}},T=(e,t,n,r,i,a,o,s,c=0)=>{for(let l=c;l<e.length;l++){let c=e[l]=s?Zi(e[l]):Xi(e[l]);v(null,c,t,n,r,i,a,o,s)}},re=(e,n,r,i,a,o,s)=>{let l=n.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:f}=n;u|=e.patchFlag&16;let m=e.props||t,h=n.props||t,g;if(r&&Ci(r,!1),(g=h.onVnodeBeforeUpdate)&&ea(g,r,n,e),f&&En(n,e,r,`beforeUpdate`),r&&Ci(r,!0),d&&(!e.dynamicChildren||e.dynamicChildren.length!==d.length)&&(u=0,s=!1,d=null),(m.innerHTML&&h.innerHTML==null||m.textContent&&h.textContent==null)&&p(l,``),d?E(e.dynamicChildren,d,l,r,i,Si(n,a),o):s||de(e,n,l,null,r,i,Si(n,a),o,!1),u>0){if(u&16)ie(l,m,h,r,a);else if(u&2&&m.class!==h.class&&c(l,`class`,null,h.class,a),u&4&&c(l,`style`,m.style,h.style,a),u&8){let e=n.dynamicProps;for(let t=0;t<e.length;t++){let n=e[t],i=m[n],o=h[n];(o!==i||n===`value`)&&c(l,n,i,o,a,r)}}u&1&&e.children!==n.children&&p(l,n.children)}else!s&&d==null&&ie(l,m,h,r,a);((g=h.onVnodeUpdated)||f)&&H(()=>{g&&ea(g,r,n,e),f&&En(n,e,r,`updated`)},i)},E=(e,t,n,r,i,a,o)=>{for(let s=0;s<t.length;s++){let c=e[s],l=t[s],u=c.el&&(c.type===U||!Ui(c,l)||c.shapeFlag&198)?m(c.el):n;v(c,l,u,null,r,i,a,o,!0)}},ie=(e,n,r,i,a)=>{if(n!==r){if(n!==t)for(let t in n)!ee(t)&&!(t in r)&&c(e,t,n[t],null,a,i);for(let t in r){if(ee(t))continue;let o=r[t],s=n[t];o!==s&&t!==`value`&&c(e,t,s,o,a,i)}`value`in r&&c(e,`value`,n.value,r.value,a)}},ae=(e,t,n,r,i,a,s,c,l)=>{let d=t.el=e?e.el:u(``),f=t.anchor=e?e.anchor:u(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(c=c?c.concat(h):h),e==null?(o(d,n,r),o(f,n,r),T(t.children||[],n,f,i,a,s,c,l)):p>0&&p&64&&m&&e.dynamicChildren&&e.dynamicChildren.length===m.length?(E(e.dynamicChildren,m,n,i,a,s,c),(t.key!=null||i&&t===i.subTree)&&Ti(e,t,!0)):de(e,t,n,f,i,a,s,c,l)},D=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):O(t,n,r,i,a,o,c):se(e,t,c)},O=(e,t,n,r,i,a,o)=>{let s=e.component=ra(e,r,i);if(Yn(e)&&(s.ctx.renderer=A),da(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,ce,o),!e.el){let r=s.subTree=q(Ni);b(null,r,t,n),e.placeholder=r.el}}else ce(s,e,t,n,i,a,o)},se=(e,t,n)=>{let r=t.component=e.component;if(Qr(e,t,n)){if(r.asyncDep&&!r.asyncResolved){ue(r,t,n);return}r.next=t,r.update()}else t.el=e.el,r.vnode=t},ce=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:s,vnode:c}=e;{let n=Di(e);if(n){t&&(t.el=c.el,ue(e,t,o)),n.asyncDep.then(()=>{H(()=>
vendor: 4,260 bytes, line 2
2{e.isUnmounted||l()},i)});return}}let u=t,d;Ci(e,!1),t?(t.el=c.el,ue(e,t,o)):t=c,n&&oe(n),(d=t.props&&t.props.onVnodeBeforeUpdate)&&ea(d,s,t,c),Ci(e,!0);let f=Yr(e),p=e.subTree;e.subTree=f,v(p,f,m(p.el),ye(p),e,i,a),t.el=f.el,u===null&&ti(e,f.el),r&&H(r,i),(d=t.props&&t.props.onVnodeUpdated)&&H(()=>ea(d,s,t,c),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=Jn(t);if(Ci(e,!1),l&&oe(l),!m&&(o=c&&c.onVnodeBeforeMount)&&ea(o,d,t),Ci(e,!0),s&&Ce){let t=()=>{e.subTree=Yr(e),Ce(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._hasShadowRoot()&&f.ce._injectChildStyle(p,e.parent?e.parent.type:void 0);let o=e.subTree=Yr(e);v(null,o,n,r,e,i,a),t.el=o.el}if(u&&H(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;H(()=>ea(o,d,e),i)}(t.shapeFlag&256||d&&Jn(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&H(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new De(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>gn(u),Ci(e,!0),l()},ue=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,oi(e,t.props,r,n),yi(e,t.children,n),He(),yn(e),Ue()},de=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:m}=t;if(f>0){if(f&128){pe(l,d,n,r,i,a,o,s,c);return}if(f&256){fe(l,d,n,r,i,a,o,s,c);return}}m&8?(u&16&&ve(l,i,a),d!==l&&p(n,d)):u&16?m&16?pe(l,d,n,r,i,a,o,s,c):ve(l,i,a,!0):(u&8&&p(n,``),m&16&&T(d,n,r,i,a,o,s,c))},fe=(e,t,r,i,a,o,s,c,l)=>{e||=n,t||=n;let u=e.length,d=t.length,f=Math.min(u,d),p;for(p=0;p<f;p++){let n=t[p]=l?Zi(t[p]):Xi(t[p]);v(e[p],n,r,null,a,o,s,c,l)}u>d?ve(e,a,o,!0,!1,f):T(t,r,i,a,o,s,c,l,f)},pe=(e,t,r,i,a,o,s,c,l)=>{let u=0,d=t.length,f=e.length-1,p=d-1;for(;u<=f&&u<=p;){let n=e[u],i=t[u]=l?Zi(t[u]):Xi(t[u]);if(Ui(n,i))v(n,i,r,null,a,o,s,c,l);else break;u++}for(;u<=f&&u<=p;){let n=e[f],i=t[p]=l?Zi(t[p]):Xi(t[p]);if(Ui(n,i))v(n,i,r,null,a,o,s,c,l);else break;f--,p--}if(u>f){if(u<=p){let e=p+1,n=e<d?t[e].el:i;for(;u<=p;)v(null,t[u]=l?Zi(t[u]):Xi(t[u]),r,n,a,o,s,c,l),u++}}else if(u>p)for(;u<=f;)k(e[u],a,o,!0),u++;else{let m=u,h=u,g=new Map;for(u=h;u<=p;u++){let e=t[u]=l?Zi(t[u]):Xi(t[u]);e.key!=null&&g.set(e.key,u)}let _,y=0,b=p-h+1,x=!1,S=0,C=Array(b);for(u=0;u<b;u++)C[u]=0;for(u=m;u<=f;u++){let n=e[u];if(y>=b){k(n,a,o,!0);continue}let i;if(n.key!=null)i=g.get(n.key);else for(_=h;_<=p;_++)if(C[_-h]===0&&Ui(n,t[_])){i=_;break}i===void 0?k(n,a,o,!0):(C[i-h]=u+1,i>=S?S=i:x=!0,v(n,t[i],r,null,a,o,s,c,l),y++)}let w=x?Ei(C):n;for(_=w.length-1,u=b-1;u>=0;u--){let e=h+u,n=t[e],f=t[e+1],p=e+1<d?f.el||ki(f):i;C[u]===0?v(null,n,r,p,a,o,s,c,l):x&&(_<0||u!==w[_]?me(n,r,p,2):_--)}}},me=(e,t,n,r,i=null)=>{let{el:a,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){me(e.component.subTree,t,n,r);return}if(d&128){e.suspense.move(t,n,r);return}if(d&64){c.move(e,t,n,A);return}if(c===U){o(a,t,n);for(let e=0;e<u.length;e++)me(u[e],t,n,r);o(e.anchor,t,n);return}if(c===Pi){S(e,t,n);return}if(r!==2&&d&1&&l){if(r===0)l.persisted&&!a[Ln]?o(a,t,n):(l.beforeEnter(a),o(a,t,n),H(()=>l.enter(a),i));else{let{leave:r,delayLeave:i,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?s(a):o(a,t,n)},d=()=>{let e=a._isLeaving||!!a[Ln];a._isLeaving&&a[Ln](!0),l.persisted&&!e?u():r(a,()=>{u(),c&&c()})};i?i(a,u,d):d()}}else o(a,t,n)},k=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p,memo:m}=e;if(d===-2&&(i=!1),s!=null&&(He(),Kn(s,null,n,e,!0),Ue()),p!=null&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let h=u&1&&f,g=!Jn(e),_;if(g&&(_=o&&o.onVnodeBeforeUnmount)&&ea(_,t,e),u&6)_e(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}h&&En(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,A,r):l&&!l.hasOnce&&(a!==U||d>0&&d&64)?ve(l,t,n,!1,!0):(a===U&&d&384||!i&&u&16)&&ve(c,t,n),r&&he(e)}let v=m!=null&&p==null;(g&&(_=o&&o.onVnodeUnmounted)||h||v)&&H(()=>{_&&ea(_,t,e),h&&En(e,null,t,`unmounted`),v&&(e.el=null)},n)},he=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===U){ge(n,r);return}if(t===Pi){C(e);return}let a=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(e.shapeFlag&1&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,o=()=>t(n,a);r?r(e.el,a,o):o()}else a()},ge=(e,t)=>
vendor: 6,422 bytes, line 2
2{let n;for(;e!==t;)n=h(e),s(e),e=n;s(t)},_e=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;Oi(c),Oi(l),r&&oe(r),i.stop(),a&&(a.flags|=8,k(o,e,t,n)),s&&H(s,t),H(()=>{e.isUnmounted=!0},t)},ve=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o<e.length;o++)k(e[o],t,n,r,i)},ye=e=>{if(e.shapeFlag&6)return ye(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=h(e.anchor||e.el),n=t&&t[Fn];return n?h(n):t},be=!1,xe=(e,t,n)=>{let r;e==null?t._vnode&&(k(t._vnode,null,null,!0),r=t._vnode.component):v(t._vnode||null,e,t,null,null,null,n),t._vnode=e,be||=(be=!0,yn(r),bn(),!1)},A={p:v,um:k,m:me,r:he,mt:O,mc:T,pc:de,pbc:E,n:ye,o:e},Se,Ce;return i&&([Se,Ce]=i(A)),{render:xe,hydrate:Se,createApp:Hr(xe,Se)}}function Si({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function Ci({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function wi(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ti(e,t,n=!1){let r=e.children,i=t.children;if(d(r)&&d(i))for(let e=0;e<r.length;e++){let t=r[e],a=i[e];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=i[e]=Zi(i[e]),a.el=t.el),!n&&a.patchFlag!==-2&&Ti(t,a)),a.type===Mi&&(a.patchFlag===-1&&(a=i[e]=Zi(a)),a.el=t.el),a.type===Ni&&!a.el&&(a.el=t.el)}}function Ei(e){let t=e.slice(),n=[0],r,i,a,o,s,c=e.length;for(r=0;r<c;r++){let c=e[r];if(c!==0){if(i=n[n.length-1],e[i]<c){t[r]=i,n.push(r);continue}for(a=0,o=n.length-1;a<o;)s=a+o>>1,e[n[s]]<c?a=s+1:o=s;c<e[n[a]]&&(a>0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-->0;)n[a]=o,o=t[o];return n}function Di(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Di(t)}function Oi(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ki(e){if(e.placeholder)return e.placeholder;let t=e.component;return t?ki(t.subTree):null}var Ai=e=>e.__isSuspense;function ji(e,t){t&&t.pendingBranch?d(e)?t.effects.push(...e):t.effects.push(e):vn(e)}var U=Symbol.for(`v-fgt`),Mi=Symbol.for(`v-txt`),Ni=Symbol.for(`v-cmt`),Pi=Symbol.for(`v-stc`),Fi=[],W=null;function G(e=!1){Fi.push(W=e?null:[])}function Ii(){Fi.pop(),W=Fi[Fi.length-1]||null}var Li=1;function Ri(e,t=!1){Li+=e,e<0&&W&&t&&(W.hasOnce=!0)}function zi(e){return e.dynamicChildren=Li>0?W||n:null,Ii(),Li>0&&W&&W.push(e),e}function Bi(e,t,n,r,i,a){return zi(K(e,t,n,r,i,a,!0))}function Vi(e,t,n,r,i){return zi(q(e,t,n,r,i,!0))}function Hi(e){return e?e.__v_isVNode===!0:!1}function Ui(e,t){return e.type===t.type&&e.key===t.key}var Wi=({key:e})=>e??null,Gi=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:g(e)||I(e)||h(e)?{i:z,r:e,k:t,f:!!n}:e);function K(e,t=null,n=null,r=0,i=null,a=e===U?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Wi(t),ref:t&&Gi(t),scopeId:Cn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:z};return s?(Qi(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=g(n)?8:16),Li>0&&!o&&W&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&W.push(c),c}var q=Ki;function Ki(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===mr)&&(e=Ni),Hi(e)){let r=Ji(e,t,!0);return n&&Qi(r,n),Li>0&&!a&&W&&(r.shapeFlag&6?W[W.indexOf(e)]=r:W.push(r)),r.patchFlag=-2,r}if(ya(e)&&(e=e.__vccOpts),t){t=qi(t);let{class:e,style:n}=t;e&&!g(e)&&(t.class=k(e)),v(n)&&(zt(n)&&!d(n)&&(n=s({},n)),t.style=ue(n))}let o=g(e)?1:Ai(e)?128:In(e)?64:v(e)?4:h(e)?2:0;return K(e,t,n,r,i,o,a,!0)}function qi(e){return e?zt(e)||ii(e)?s({},e):e:null}function Ji(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?$i(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Wi(l),ref:t&&t.ref?n&&a?d(a)?a.concat(Gi(t)):[a,Gi(t)]:Gi(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==U?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ji(e.ssContent),ssFallback:e.ssFallback&&Ji(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&Bn(u,c.clone(u)),u}function J(e=` `,t=0){return q(Mi,null,e,t)}function Yi(e=``,t=!1){return t?(G(),Vi(Ni,null,e)):q(Ni,null,e)}function Xi(e){return e==null||typeof e==`boolean`?q(Ni):d(e)?q(U,null,e.slice()):Hi(e)?Zi(e):q(Mi,null,String(e))}function Zi(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ji(e)}function Qi(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(d(t))n=16;else if(typeof t==`object`){if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),Qi(e,n()),n._c&&(n._d=!0));return}{n=32;let r=t._;!r&&!ii(t)?t._ctx=z:r===3&&z&&(z.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}}else if(h(t)){if(r&65){Qi(e,{default:t});return}t={default:t,_ctx:z},n=32}else t=String(t),r&64?(n=16,t=[J(t)]):n=8;e.children=t,e.shapeFlag|=n}function $i(...e){let t={};for(let n=0;n<e.length;n++){let r=e[n];for(let e in r)if(e===`class`)t.class!==r.class&&(t.class=k([t.class,r.class]));else if(e===`style`)t.style=ue([t.style,r.style]);else if(a(e)){let n=t[e],i=r[e];i&&n!==i&&!(d(n)&&n.includes(i))?t[e]=n?[].concat(n,i):i:i==null&&n==null&&!o(e)&&(t[e]=i)}else e!==``&&(t[e]=r[e])}return t}function ea(e,t,n,r=null){an(e,t,7,[n,r])}var ta=Br(),na=0;function ra(e,n,r){let i=e.type,a=(n?n.appContext:e.appContext)||ta,o={uid:na++,vnode:e,type:i,parent:n,appContext:a,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new we(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:n?n.provides:Object.create(a.provides),ids:n?n.ids:[``,0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ui(i,a),emitsOptions:qr(i,a),emit:null,emitted:null,propsDefaults:t,inheritAttrs:i.inheritAttrs,ctx:t,data:t,props:t,attrs:t,slots:t,refs:t,setupState:t,setupContext:null,suspense:r,suspenseId:r?r.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,
2sp:null};return o.ctx={_:o},o.root=n?n.root:o,o.emit=Gr.bind(null,o),e.ce&&e.ce(o),o}var Y=null,ia=()=>Y||z,aa,oa;{let e=le(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};aa=t(`__VUE_INSTANCE_SETTERS__`,e=>Y=e),oa=t(`__VUE_SSR_SETTERS__`,e=>ua=e)}var sa=e=>{let t=Y;return aa(e),e.scope.on(),()=>{e.scope.off(),aa(t)}},ca=()=>{Y&&Y.scope.off(),aa(null)};function la(e){return e.vnode.shapeFlag&4}var ua=!1;function da(e,t=!1,n=!1){t&&oa(t);let{props:r,children:i}=e.vnode,a=la(e);ai(e,r,a,t),vi(e,i,n||t);let o=a?fa(e,t):void 0;return t&&oa(!1),o}function fa(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,wr);let{setup:r}=n;if(r){He();let n=e.setupContext=r.length>1?ga(e):null,i=sa(e),a=rn(r,e,0,[e.props,n]),o=y(a);if(Ue(),i(),(o||e.sp)&&!Jn(e)&&Hn(e),o){if(a.then(ca,ca),t)return a.then(n=>{oa(!0);try{pa(e,n,t)}finally{oa(!1)}}).catch(t=>{on(t,e,0)});e.asyncDep=a}else pa(e,a,t)}else ma(e,t)}function pa(e,t,n){h(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:v(t)&&(e.setupState=Jt(t)),ma(e,n)}function ma(e,t,n){let i=e.type;e.render||=i.render||r;{let t=sa(e);He();try{Dr(e)}finally{Ue(),t()}}}var ha={get(e,t){return N(e,`get`,``),e[t]}};function ga(e){return{attrs:new Proxy(e.attrs,ha),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function _a(e){return e.exposed?e.exposeProxy||=new Proxy(Jt(Bt(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Sr)return Sr[n](e)},has(e,t){return t in e||t in Sr}}):e.proxy}function va(e,t=!0){return h(e)?e.displayName||e.name:e.name||t&&e.__name}function ya(e){return h(e)&&`__vccOpts`in e}var ba=(e,t)=>Xt(e,t,ua);function xa(e,t,n){try{Ri(-1);let r=arguments.length;return r===2?v(t)&&!d(t)?Hi(t)?q(e,null,[t]):q(e,t):q(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Hi(n)&&(n=[n]),q(e,t,n))}finally{Ri(1)}}var Sa=`3.5.41`,Ca=void 0,wa=typeof window<`u`&&window.trustedTypes;if(wa)try{Ca=wa.createPolicy(`vue`,{createHTML:e=>e})}catch{}var Ta=Ca?e=>Ca.createHTML(e):e=>e,Ea=`http://www.w3.org/2000/svg`,Da=`http://www.w3.org/1998/Math/MathML`,Oa=typeof document<`u`?document:null,ka=Oa&&Oa.createElement(`template`),Aa={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?Oa.createElementNS(Ea,e):t===`mathml`?Oa.createElementNS(Da,e):n?Oa.createElement(e,{is:n}):Oa.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>Oa.createTextNode(e),createComment:e=>Oa.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>
vendor: 4,190 bytes, line 2
2{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Oa.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===a||!(i=i.nextSibling)););else{ka.innerHTML=Ta(r===`svg`?`<svg>${e}</svg>`:r===`mathml`?`<math>${e}</math>`:e);let i=ka.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ja=Symbol(`_vtc`);function Ma(e,t,n){let r=e[ja];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var Na=Symbol(`_vod`),Pa=Symbol(`_vsh`),Fa={name:`show`,beforeMount(e,{value:t},{transition:n}){e[Na]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):Ia(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Ia(e,!0),r.enter(e)):r.leave(e,()=>{Ia(e,!1)}):Ia(e,t))},beforeUnmount(e,{value:t}){Ia(e,t)}};function Ia(e,t){e.style.display=t?e[Na]:`none`,e[Pa]=!t}var La=Symbol(``),Ra=/(?:^|;)\s*display\s*:/;function za(e,t,n){let r=e.style,i=g(n),a=!1;if(n&&!i){if(t){if(g(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??Va(r,t,``)}else for(let e in t)n[e]??Va(r,e,``)}for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?Va(r,i,``):Ga(e,i,!g(t)&&t?t[i]:void 0,o)||Va(r,i,o)}}else if(i){if(t!==n){let e=r[La];e&&(n+=`;`+e),r.cssText=n,a=Ra.test(n)}}else t&&e.removeAttribute(`style`);Na in e&&(e[Na]=a?r.display:``,e[Pa]&&(r.display=`none`))}var Ba=/\s*!important$/;function Va(e,t,n){if(d(n))n.forEach(n=>Va(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=Wa(e,t);Ba.test(n)?e.setProperty(E(r),n.replace(Ba,``),`important`):e[r]=n}}var Ha=[`Webkit`,`Moz`,`ms`],Ua={};function Wa(e,t){let n=Ua[t];if(n)return n;let r=T(t);if(r!==`filter`&&r in e)return Ua[t]=r;r=ie(r);for(let n=0;n<Ha.length;n++){let i=Ha[n]+r;if(i in e)return Ua[t]=i}return t}function Ga(e,t,n,r){return e.tagName===`TEXTAREA`&&(t===`width`||t===`height`)&&g(r)&&n===r}var Ka=`http://www.w3.org/1999/xlink`;function qa(e,t,n,r,i,a=ge(t)){r&&t.startsWith(`xlink:`)?n==null?e.removeAttributeNS(Ka,t.slice(6,t.length)):e.setAttributeNS(Ka,t,n):n==null||a&&!_e(n)?e.removeAttribute(t):e.setAttribute(t,a?``:_(n)?String(n):n)}function Ja(e,t,n,r,i){if(t===`innerHTML`||t===`textContent`){n!=null&&(e[t]=t===`innerHTML`?Ta(n):n);return}let a=e.tagName;if(t===`value`&&a!==`PROGRESS`&&!a.includes(`-`)){let r=a===`OPTION`?e.getAttribute(`value`)||``:e.value,i=n==null?e.type===`checkbox`?`on`:``:String(n);(r!==i||!(`_value`in e))&&(e.value=i),n??e.removeAttribute(t),e._value=n;return}let o=!1;if(n===``||n==null){let r=typeof e[t];r===`boolean`?n=_e(n):n==null&&r===`string`?(n=``,o=!0):r===`number`&&(n=0,o=!0)}try{e[t]=n}catch{}o&&e.removeAttribute(i||t)}function Ya(e,t,n,r){e.addEventListener(t,n,r)}function Xa(e,t,n,r){e.removeEventListener(t,n,r)}var Za=Symbol(`_vei`);function Qa(e,t,n,r,i=null){let a=e[Za]||(e[Za]={}),o=a[t];if(r&&o)o.value=r;else{let[n,s]=to(t);r?Ya(e,n,a[t]=ao(r,i),s):o&&(Xa(e,n,o,s),a[t]=void 0)}}var $a=/(Once|Passive|Capture)$/,eo=/^on:?(?:Once|Passive|Capture)$/;function to(e){let t,n;for(;(n=e.match($a))&&!eo.test(e);)t||={},e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===`:`?e.slice(3):E(e.slice(2)),t]}var no=0,ro=Promise.resolve(),io=()=>no||=(ro.then(()=>no=0),Date.now());function ao(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;let r=n.value;if(d(r)){let n=e.stopImmediatePropagation;e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0};let i=r.slice(),a=[e];for(let n=0;n<i.length&&!e._stopped;n++){let e=i[n];e&&an(e,t,5,a)}}else an(r,t,5,[e])};return n.value=e,n.attached=io(),n}var oo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,so=(e,t,n,r,i,s)=>{let c=i===`svg`;t===`class`?Ma(e,r,c):t===`style`?za(e,n,r):a(t)?o(t)||Qa(e,t,n,r,s
2):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):co(e,t,r,c))?(Ja(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&qa(e,t,r,c,s,t!==`value`)):e._isVueCE&&(lo(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!g(r)))?Ja(e,T(t),r,s,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),qa(e,t,r,c))};function co(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&oo(t)&&h(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return oo(t)&&g(n)?!1:t in e}function lo(e,t){let n=e._def.props;if(!n)return!1;let r=T(t);return Array.isArray(n)?n.some(e=>T(e)===r):Object.keys(n).some(e=>T(e)===r)}var uo=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return d(t)?e=>oe(t,e):t};function fo(e){e.target.composing=!0}function po(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var mo=Symbol(`_assign`),ho=Symbol(`_initialValue`);function go(e,t,n){return t&&(e=e.trim()),n&&(e=se(e)),e}var _o={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e.parentNode&&(e.type===`text`?e[ho]=e.defaultValue.replace(/[\r\n]/g,``):e.type===`textarea`&&(e[ho]=e.defaultValue.replace(/\r\n?/g,`
3`))),e[mo]=uo(i);let a=r||i.props&&i.props.type===`number`;Ya(e,t?`change`:`input`,t=>{t.target.composing||e[mo](go(e.value,n,a))}),(n||a)&&Ya(e,`change`,()=>{e.value=go(e.value,n,a)}),t||(Ya(e,`compositionstart`,fo),Ya(e,`compositionend`,po),Ya(e,`change`,po))},mounted(e,{value:t,modifiers:{trim:n,number:r}}){let i=t??``,a=e[ho];delete e[ho],a!==void 0&&(e.type===`text`||e.type===`textarea`)&&e.value!==a?e[mo](go(e.value,n,r)):e.value=i},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[mo]=uo(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?se(e.value):e.value,c=t??``;if(s===c)return;let l=e.getRootNode();(l instanceof Document||l instanceof ShadowRoot)&&l.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c)}},vo={deep:!0,created(e,{value:t,modifiers:{number:n}},r){e._modelValue=t,Ya(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?se(bo(e)):bo(e));e[mo](e.multiple?p(e._modelValue)?new Set(t):t:t[0]),e._assigning=!0,mn(()=>{e._assigning=!1})}),e[mo]=uo(r)},mounted(e,{value:t}){yo(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[mo]=uo(n)},updated(e,{value:t}){e._assigning||yo(e,t)}};function yo(e,t){let n=e.multiple,r=d(t);if(!(n&&!r&&!p(t))){for(let i=0,a=e.options.length;i<a;i++){let a=e.options[i],o=bo(a);if(n){if(r){let e=typeof o;a.selected=e===`string`||e===`number`?t.some(e=>String(e)===String(o)):be(t,o)>-1}else a.selected=t.has(o)}else if(ye(bo(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function bo(e){return`_value`in e?e._value:e.value}var xo=[`ctrl`,`shift`,`alt`,`meta`],So={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>xo.some(n=>e[`${n}Key`]&&!t.includes(n))},Co=(e,t)=>{if(!e)return e;let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e<t.length;e++){let r=So[t[e]];if(r&&r(n,t))return}return e(n,...r)}))},wo=s({patchProp:so},Aa),To;function Eo(){return To||=bi(wo)}var Do=((...e)=>{let t=Eo().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=ko(e);if(!r)return;let i=t._component;!h(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,Oo(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function Oo(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function ko(e){return g(e)?document.querySelector(e):e}function Ao(e,t){if(typeof t==`function`&&t.key&&e.plugins.has(t.key))return;let n=typeof t==`function`?t(e):t,r=n.key||String(e.plugins.size+1);if(!e.plugins.get(r)){e.plugins.set(r,n);for(let t in n.hooks||{})e.hooks?.hook(t,n.hooks[t])}}function jo(e,t={}){let n=!t.document,r=new Map,i={_entryCount:1,_h:0,plugins:new Map,resolvedOptions:t,ssr:n,entries:r,hooks:void 0,render:()=>e(i),use:e=>Ao(i,e),push(e,t){let a=t?._index??i._entryCount++,o=t?{...t}:{};delete o.head,delete o.onRendered,delete o._index;let s={_i:a,input:e,options:o};return r.set(a,s),{_i:a,dispose(){r.delete(a)},patch(e){n?(s.input=e,delete s._tags):s._pending=e,r.has(a)||r.set(a,s)}}}};
3return t.init?.forEach(e=>e&&i.push(e)),i}var Mo=new Set([`link`,`style`,`script`,`noscript`]),No=new Set([`title`,`titleTemplate`,`script`,`style`,`noscript`]),Po=new Set([`base`,`meta`,`link`,`style`,`script`,`noscript`]),Fo=new Set([`title`,`base`,`htmlAttrs`,`bodyAttrs`,`meta`,`link`,`style`,`script`,`noscript`]),Io=new Set([`base`,`title`,`titleTemplate`,`bodyAttrs`,`htmlAttrs`,`templateParams`]),Lo=new Set([`key`,`tagPosition`,`tagPriority`,`tagDuplicateStrategy`,`innerHTML`,`textContent`,`processTemplateParams`]),Ro=new Set([`templateParams`,`htmlAttrs`,`bodyAttrs`]),zo=new Set([`theme-color`,`google-site-verification`,`author`,`og:locale:alternate`,`og:image`,`og:video`,`og:audio`,`article:author`,`article:tag`,`book:author`,`book:tag`,`twitter:image`]),Bo={critical:-8,high:-1,low:2},Vo=e=>typeof e==`number`?Number.isFinite(e):e;function Ho(e){return e===`__proto__`||e===`constructor`||e===`prototype`}function Uo(e,t,n,r){for(let i=n;i<e.length;i+=1)try{let n=r?r.run(()=>e[i](...t)):e[i](...t);if(n&&typeof n.then==`function`)return Promise.resolve(n).then(()=>Uo(e,t,i+1,r))}catch(e){return Promise.reject(e)}}var Wo=class{_hooks;constructor(){this._hooks={}}hook(e,t){return!e||typeof t!=`function`?()=>{}:(this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(t),()=>{t&&=(this.removeHook(e,t),void 0)})}removeHook(e,t){let n=this._hooks[e];if(n){let r=n.indexOf(t);r!==-1&&n.splice(r,1),n.length===0&&(this._hooks[e]=void 0)}}callHook(e,...t){let n=this._hooks[e];if(!(!n||n.length===0))return Uo(n,t,0)}};function Go(e){let t=new Wo;for(let n in e||{})t.hook(n,e[n]);return t}function Ko(e,t,n){if(e.hooks?._hooks?.[t]?.length)return e.hooks?.callHook(t,n)}function qo(e,t,n){let r=e.push,i=e;i.ssr=!1,i.hooks=t,i.dirty=!!i.dirty,i.use=e=>Ao(i,e),i.render=()=>n(i);function a(){t.callHook(`entries:updated`,i),i._b||i.render()}return i.invalidate=()=>{for(let e of i.entries.values())delete e._tags;i.dirty=!0,a()},i.push=(n,o)=>{let s=o?.onRendered?t.hook(`dom:rendered`,o.onRendered):void 0,c=r(n,o),l=e.entries.get(c._i);return l&&(l._o=n),i.dirty=!0,a(),{_i:c._i,patch(e){c.patch(e),i.dirty=!0,a()},dispose(){s?.(),e.entries.has(c._i)&&(c.dispose(),i.invalidate())}}},i}var Jo=/^(?:viewport|description|keywords|robots)$/,Yo=[`name`,`property`,`http-equiv`];function Xo(e){let t=e.indexOf(`:`);if(t===-1)return!1;let n=e.slice(t+1);return zo.has(n)||n.startsWith(`og:image:`)||n.startsWith(`og:video:`)||n.startsWith(`og:audio:`)||n.startsWith(`twitter:image:`)}function Zo(e){let{props:t,tag:n,key:r}=e;if(Io.has(n))return n;if(n===`link`){if(t.rel===`canonical`)return`canonical`;if(t.rel===`alternate`&&t.hreflang)return`alternate:${t.hreflang}`}if(t.charset)return`charset`;if(n===`meta`)for(let e of Yo){let n=t[e];if(n!==void 0)return`meta:${n}${(typeof n!=`string`||!n.includes(`:`))&&!Jo.test(n)&&r?`:key:${r}`:``}`}return r?`${n}:key:${r}`:t.id?`${n}:id:${t.id}`:n===`link`&&t.rel&&t.href?`link:${t.rel}:${t.href}`:No.has(n)&&(e.textContent||e.innerHTML)?`${n}:content:${e.textContent||e.innerHTML}`:void 0}function Qo(e){let t=e._h||e._d||e.textContent||e.innerHTML;if(t)return t;let n=Object.keys(e.props).sort(),r=`${e.tag}:`,i=``;for(let t of n)r+=`${i}${t}:${String(e.props[t])}`,i=`,`;return r}function $o(e,t,n){if(n===`_resolver`)return e;typeof e==`function`&&(!n||n!==`titleTemplate`&&!n.startsWith(`on`))&&(e=e());let r=t?t(n,e):e;if(Array.isArray(r)){let e;for(let n=0;n<r.length;n++){let i=$o(r[n],t);e?e[n]=i:i!==r[n]&&(e=r.slice(0,n),e[n]=i)}return e||r}if(r?.constructor===Object){let e;for(let n in r){let i=Ho(n),a=i?void 0:$o(r[n],t,n);if(!e&&(i||a!==r[n])){e={};for(let t in r){if(t===n)break;e[t]=r[t]}}e&&!i&&(e[n]=a)}return e||r}return r}var es=/[\s"'<>/=\x00-\x1F\x7F]/;function ts(e,t){let n=e===`style`,r=n?new Map:new Set,i=e=>{if(e){if(n){let t=e.indexOf(`:`);t>0&&r.set(e.slice(0,t).trim(),e.slice(t+1).trim())}else e.split(` `).forEach(e=>e&&r.add(e))}};if(typeof t==`string`)(n?t.split(`;`):[t]).forEach(i);else if(Array.isArray(t))t.forEach(i);else if(t&&typeof t==`object`)for(let e in t){let a=t[e];a&&a!==`false`&&(n?r.set(e.trim(),String(a)):i(e))}return r}function ns(e,t){if(e.props=e.props||{},!t)return e;if(e.tag===`templateParams`)return e.props=t,e;let n=Po.has(e.tag)||e.tag===`htmlAttrs`||e.tag===`bodyAttrs`;for(let r in t){if(Ho(r))continue;let i=r.startsWith(`data-`),a=n&&!Lo.has(r),o=a&&!i?r.toLowerCase():r;if(a&&(!o||es.test(o)))continue;let s=t[r];
3if(s===null)e.props[o]=null;else if(r===`class`||r===`style`)e.props[r]=ts(r,s);else if(Lo.has(r)){if((r===`textContent`||r===`innerHTML`)&&typeof s==`object`){let n=t.type||`application/json`;(n.endsWith(`json`)||n===`speculationrules`||n===`importmap`)&&(e.props.type=n,e[r]=JSON.stringify(s))}else e[r]=s}else if(s!==void 0){let t=String(s),n=e.tag===`meta`&&o===`content`;e.props[o]=t===`true`||t===``?i||n?t:!0:!s&&i&&t===`false`?`false`:s}}return e}function rs(e,t){let n;return t.length&&(n=(e,n)=>{for(let r=0;r<t.length;r++)n=t[r](e,n);return n},e=n(void 0,e)),$o(e,n)}function is(e,t){let n=ns({tag:e,props:{}},typeof t==`object`&&typeof t!=`function`?t:{[e===`script`||e===`noscript`||e===`style`?`innerHTML`:`textContent`]:t});if(n.key&&Mo.has(n.tag)&&(n.props[`data-hid`]=n._h=n.key),n.tag===`script`&&typeof n.innerHTML==`object`&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||`application/json`),Array.isArray(n.props.content)){let e=[];for(let t of n.props.content)e.push({...n,props:{...n.props,content:t}});return e}return n}function as(e,t){if(Array.isArray(t))for(let n of t)e.push(n);else e.push(t)}function os(e,t){if(!e)return[];typeof e==`function`&&(e=e()),e=rs(e,t);let n=[];for(let t in e){let r=e[t];if(r!==void 0){if(Array.isArray(r))for(let e of r)as(n,is(t,e));else as(n,is(t,r))}}return n}var ss=/</g,cs=/<\/script/g,ls=(e,t)=>e._w===t._w?e._p-t._p:e._w-t._w,us=()=>100;function ds(e){for(let t in e)return!1;return!0}var fs=/^tags:|:render/;function ps(e,t){let n=(t[`entries:resolve`]?.length||0)+(t[`entries:normalize`]?.length||0);if(e._h!==n){e._h=n;for(let t of e.entries.values())delete t._tags}}function ms(e){for(let t=0;t<e.length;t++){let n=e[t],r={...n.props};r.class instanceof Set&&(r.class=new Set(r.class)),r.style instanceof Map&&(r.style=new Map(r.style)),e[t]={...n,props:r}}}function hs(e,t){let n=e.tags,r=0;for(let t of e.tagMap.values())if(Array.isArray(t))for(let e of t)n[r++]=e;else n[r++]=t;n.length=r,t&&n.sort(ls)}function gs(e){let t=!1;for(let n of e.tags.sort(ls)){let r=n._d||Qo(n);if(!r)continue;let i=e.tagMap.get(r);if(!i){e.tagMap.set(r,n);continue}if((n.tagDuplicateStrategy||(Ro.has(n.tag)?`merge`:null)||(n.key&&n.key===i.key?`merge`:null))===`merge`){let t={...i.props};for(let e in n.props)t[e]=e===`style`?new Map([...i.props.style||new Map,...n.props[e]]):e===`class`?new Set([...i.props.class||[],...n.props[e]]):n.props[e];e.tagMap.set(r,{...n,props:t})}else n._p>>10==i._p>>10&&n.tag===`meta`&&Xo(r)?(e.tagMap.set(r,Object.assign([...Array.isArray(i)?i:[i],n],n)),t=!0):(n._w===i._w?n._p>i._p:n._w<i._w)&&e.tagMap.set(r,n)}return t}function _s(e,t){let n=e.tagMap.get(`title`),r=e.tagMap.get(`titleTemplate`);if(t._title=n?.textContent,!r)return;let i=r.textContent;if(t._titleTemplate=i,!i)return;let a=typeof i==`function`?i(n?.textContent):i;typeof a==`string`&&!t.plugins.has(`template-params`)&&(a=a.replace(`%s`,n?.textContent||``)),n?a===null?e.tagMap.delete(`title`):e.tagMap.set(`title`,{...n,textContent:a}):e.tagMap.set(`titleTemplate`,{...r,tag:`title`,textContent:a})}function vs(e){let t=0;for(let n of e){let{innerHTML:r,tag:i,props:a}=n;if(!(!Fo.has(i)||ds(a)&&!Vo(r)&&!Vo(n.textContent))&&!(i===`meta`&&!Vo(a.content)&&!a[`http-equiv`]&&!a.charset)){if(i===`script`&&(r||n.textContent)){let e=String(a.type),t=e.endsWith(`json`)||e===`importmap`||e===`speculationrules`,i=e=>t?(typeof e==`string`?e:JSON.stringify(e)).replace(ss,`\\u003C`):typeof e==`string`?e.replace(cs,`<\\/script`):e;n={...n},r&&(n.innerHTML=i(r)),n.textContent&&(n.textContent=i(n.textContent)),n._d=Zo(n)}e[t++]=n}}return e.length=t,e}function ys(e,t){let n=t?.tagWeight??e.resolvedOptions._tagWeight??us,r={tagMap:new Map,tags:[]},i=e.hooks?._hooks||{};ps(e,i);for(let t of e.entries.values())t._pending!==void 0&&(t.input=t._pending,delete t._pending,delete t._tags,delete t._precomputedTags);let a;(i[`entries:resolve`]?.length||i[`entries:normalize`]?.length)&&(a=[...e.entries.values()],i[`entries:resolve`]?.length&&Ko(e,`entries:resolve`,{entries:a,...r})),ps(e,i);for(let t of a||e.entries.values()){let a=t._tags;if(!a){if(t._precomputedTags&&n===e.resolvedOptions._tagWeight&&!i[`entries:normalize`]?.length&&!i[`entries:resolve`]?.length&&(!t.options||ds(t.options)))a=t._precomputedTags;else{if(a=os(t.input,e.resolvedOptions.propResolvers||[]),t.options&&!ds(t.options))for(let e of a)Object.assign(e,t.options);if(i[`entries:normalize`]?.length){let n={tags:a,entry:t};Ko(e,`entries:normalize`,n),a=n.tags}for(let e=0;e<a.length;e++){let r=a[e];r._w=n(r),r._p=(t._i<<10)+e,r._d=Zo(r),r._d||(r._h=Qo(r))}t._tags=a}}r.tags.push(...a)}for(let e in i)if(i[e]?.length&&fs.test(e)){ms(r.tags);break}let o=gs(r);return _s(r,e),hs(r,o),Ko(e,`tags:beforeResolve`,r),Ko(e,`tags:resolve`,r),Ko(e,`tags:afterResolve`,r),vs(r.tags)}var bs=/\s+/;function xs(e={}){return t=>ws(t,e)}function Ss(e){for(let t of e.entries.values())if(t._pending!==void 0)return!0;return!1}function Cs(e,t){let n={_d:t,_t:t.title,_e:new Map([[`htmlAttrs`,t.documentElement],[`bodyAttrs`,t.body]]),_p:{},_s:{},_l:new Map};for(let t of e.entries.values())if(t._o!==void 0){let e=t._o;for(let t of[`bodyAttrs`,`htmlAttrs`]){let r=e[t]?.class;if(typeof r==`string`){let e=n._e.get(t);for(let i of r.split(bs))i&&(n._p[`${t}:attr:class:${i}`]=()=>e.classList.remove(i))}}}return n}function ws(e,t={}){let n=t.document||e.resolvedOptions.document,r=e._dom;if(!n||e._du||r&&r._d===n&&!e.dirty&&!Ss(e))return!1;let i=n.defaultView;e._du=!0;let a=!1;try{let o=function(e,t,n){d._s[e]=!n&&f[e]||t,delete f[e]},s=function(e,t,n,r,i,a){let s=`${e}:event:${t}`,c=d._l.get(s);if(c&&c[0]===a&&c[1]===n&&c[2]===r){o(s,c[4]);return}c?.[4]();let l=`data-${t}`,u=(e=>r.call(i,e)),f=()=>{a.removeEventListener(n,u),i.getAttribute(l)===``&&i.removeAttribute(l),d._l.get(s)?.[3]===u&&d._l.delete(s)};a.addEventListener(n,u),d._l.set(s,[a,n,r,u,f]),i.setAttribute(l,``),o(s,f,!0)},c=function({id:e,$el:t,tag:n}){if(d._e.set(e,t),!n.tag.endsWith(`Attrs`)){let r=n.textContent;r!=null&&r!==``&&(r!==t.textContent&&(t.textContent=r),o(`${e}:text`,()=>{t.textContent===r&&(t.textContent=``)},!0));let i=n.innerHTML;i!=null&&i!==``&&(i!==t.innerHTML&&(t.innerHTML=i),o(`${e}:html`,()=>{t.innerHTML===i&&(t.innerHTML=``)},!0));let a=`${e}:el`;o(a,f[a]||(()=>{t?.remove(),d._e.delete(e)}))}for(let r in n.props){let a=n.props[r];if(r[0]===`o`&&r[1]===`n`&&typeof a==`function`){let o=r.slice(2);t?.dataset?.[`${r}fired`]&&a.call(t,new((i?.Event)||Event)(o)),s(e,r,o,a,t,n.tag===`bodyAttrs`&&i?i:t);continue}let c=`${e}:attr:${r}`;if(r===`class`&&a)for(let e of a){let n=`${c}:${e}`;o(n,f[n]||(()=>t.classList.remove(e))),t.classList.contains(e)||t.classList.add(e)}else if(r===`style`&&a)for(let[e,n]of a){let r=`${c}:${e}`;o(r,f[r]||(()=>t.style.removeProperty(e))),t.style.setProperty(e,n)}else a!==!1&&a!==null&&(t.getAttribute(r)!==a&&t.setAttribute(r,a===!0?``:String(a)),o(c,f[c]||(()=>t.removeAttribute(r))))}},l={shouldRender:!0,tags:[]};if(Ko(e,`dom:beforeRender`,l),!l.shouldRender)return!1;let u=r;if(u?._d!==n){if(u){for(let e in u._s)u._s[e]();for(let e in u._p)u._p[e]();u._s=u._p={},u._e.clear(),u._l.clear()}u=void 0}u?u._p=u._s:u=Cs(e,n),u._s={};let d=u,f=d._p,p=[],m={};e.dirty=!1;let h=ys(e,t.tagWeight?{tagWeight:t.tagWeight}:void 0),g=[],_={};for(let e of h){let t=_[e._d]||0,r=(t?`${e._d}:${t}`:e._d)||e._h,i={tag:e,id:r,shouldRender:!0};if(e.tag===`meta`&&e._d&&Xo(e._d)&&(_[e._d]=t+1),g.push(i),e.tag===`title`){n.title=e.textContent,o(`title:`,()=>n.title=d._t);continue}i.$el=d._e.get(r),i.$el?c(i):Po.has(e.tag)&&p.push(i)}if(p.length){let e=new Set(d._e.values());for(let t of[...n.body.children,...n.head.children]){let n=t.tagName.toLowerCase();if(!Po.has(n)||e.has(t))continue;let r={innerHTML:t.innerHTML};for(let e of t.getAttributeNames())r[e]=t.getAttribute(e);let i=ns({tag:n,props:{}},r);i.key=t.getAttribute(`data-hid`)||void 0;let a=Zo(i)||Qo(i),o=a,s=1;for(;d._e.has(o);)o=`${a}:${s++}
3`;d._e.set(o,t)}}for(let e of p){let t=d._e.get(e.id);e.$el=t||n.createElement(e.tag.tag),c(e),t||(m[e.tag.tagPosition||`head`]??=n.createDocumentFragment()).appendChild(e.$el)}m.head&&n.head.appendChild(m.head),m.bodyOpen&&n.body.insertBefore(m.bodyOpen,n.body.firstChild),m.bodyClose&&n.body.appendChild(m.bodyClose);for(let e in f)f[e]();e._dom=d,a=!0,Ko(e,`dom:rendered`,{renders:g})}catch(t){throw e.dirty=!0,t}finally{e._du=!1}return a&&(e.dirty||Ss(e))&&ws(e,t),a}var Ts=e=>typeof e.tagPriority==`number`?e.tagPriority:100+(Bo[e.tagPriority]||0);function Es(e={}){e.document=e.document||(typeof window<`u`?document:void 0);let t=e.render||xs({document:e.document}),n=qo(jo(t,{document:e.document,propResolvers:e.propResolvers,_tagWeight:Ts,init:[]}),Go(e.hooks),t);return e.plugins?.forEach(e=>n.use(e)),e.init?.forEach(e=>e&&n.push(e)),n}var Ds=`usehead`;function Os(e){return{install(t){t.config.globalProperties.$unhead=e,t.config.globalProperties.$head=e,t.provide(Ds,e)}}.install}function ks(e={}){let t=xs(),n,r=0;return n=Es({render:()=>{let e=++r;setTimeout(()=>{e===r&&t(n)},0)},...e}),n.install=Os(n),n}var As=`/assets/logo-header-NJy_FEsz.png`,js={core:[{path:`/`,lastmod:`2026-08-07`},{path:`/privacy-policy`,lastmod:`2026-07-28`},{path:`/terms-and-conditions`,lastmod:`2026-07-28`},{path:`/contact-sales`,lastmod:`2026-07-29`}],landing:[{path:`/learn`,lastmod:`2026-08-28`},{path:`/tools/ai-trade-checker`,lastmod:`2026-08-28`},{path:`/tools/retirement-calculator`,lastmod:`2026-08-28`},{path:`/learn/ai-investing-assistant`,lastmod:`2026-08-28`},{path:`/learn/portfolio-tracker`,lastmod:`2026-08-31`},{path:`/learn/ai-strategies`,lastmod:`2026-08-28`},{path:`/learn/financial-advisor`,lastmod:`2026-08-28`},{path:`/learn/how-to-analyze-a-stock-before-buying`,lastmod:`2026-08-28`},{path:`/learn/portfolio-risk-and-diversification`,lastmod:`2026-08-28`},{path:`/learn/how-to-rebalance-a-portfolio`,lastmod:`2026-08-28`},{path:`/learn/etf-and-fund-holdings`,lastmod:`2026-08-28`},{path:`/learn/investment-planning`,lastmod:`2026-08-28`}],blog:[{path:`/blog`,lastmod:`2026-09-03`},{path:`/blog/ai-investing-vs-traditional-investing`,lastmod:`2026-09-03`},{path:`/blog/ai-stock-analysis`,lastmod:`2026-09-03`},{path:`/blog/can-ai-pick-stocks`,lastmod:`2026-09-03`},{path:`/blog/etf-vs-individual-stocks`,lastmod:`2026-09-03`},{path:`/blog/how-many-etfs-should-you-own`,lastmod:`2026-09-03`},{path:`/blog/how-many-stocks-should-you-own`,lastmod:`2026-09-03`},{path:`/blog/how-much-money-should-you-invest-in-stocks`,lastmod:`2026-09-03`},{path:`/blog/how-often-should-you-rebalance-your-portfolio`,lastmod:`2026-09-03`},{path:`/blog/how-to-build-a-long-term-stock-portfolio`,lastmod:`2026-09-03`},{path:`/blog/how-to-build-an-etf-portfolio`,lastmod:`2026-09-03`},{path:`/blog/how-to-build-an-investment-portfolio`,lastmod:`2026-09-03`},{path:`/blog/how-to-diversify-your-stock-portfolio`,lastmod:`2026-09-03`},{path:`/blog/how-to-find-good-stocks-to-invest-in`,lastmod:`2026-09-03`},{path:`/blog/how-to-know-if-a-stock-is-overvalued-or-undervalued`,lastmod:`2026-09-03`},{path:`/blog/how-to-research-a-stock-before-buying-it`,lastmod:`2026-09-03`},{path:`/blog/how-to-start-investing-in-stocks`,lastmod:`2026-09-03`},{path:`/blog/how-to-use-ai-to-analyze-your-investment-portfolio`,lastmod:`2026-09-03`},{path:`/blog/how-to-use-ai-to-research-stocks`,lastmod:`2026-09-03`},{path:`/blog/how-to-use-chatgpt-for-stock-research`,lastmod:`2026-09-03`},{path:`/blog/qqq-vs-qqqm`,lastmod:`2026-09-03`},{path:`/blog/should-you-invest-in-individual-stocks-or-index-funds`,lastmod:`2026-09-03`},{path:`/blog/the-best-ai-tools-for-stock-research`,lastmod:`2026-09-03`},{path:`/blog/the-best-etfs-for-long-term-investing`,lastmod:`2026-09-03`},{path:`/blog/the-best-sp-500-etfs`,lastmod:`2026-09-03`},{path:`/blog/voo-vs-qqq`,lastmod:`2026-09-03`},{path:`/blog/voo-vs-spy-vs-ivv`,lastmod:`2026-09-03`},{path:`/blog/what-is-a-good-investment-strategy-for-beginners`,lastmod:`2026-09-03`},{path:`/blog/what-stocks-should-i-buy-right-now`,lastmod:`2026-09-03`},{path:`/blog/when-is-the-best-time-to-buy-stocks`,lastmod:`2026-09-03`}],redirects:[{from:`/learn/what-is-an-ai-investing-assistant`,to:`/learn/ai-investing-assistant`},{from:`/learn/advice-mode`,to:`/learn/ai-investing-assistant`},{from:`/learn/buy-and-sell-recommendations`,to:`/learn/ai-investing-assistant`},{from:`/learn/weekly-performance-reports`,to:`/learn/ai-investing-assistant`},{from:`/learn/ai-trade-checker`,to:`/tools/ai-trade-checker`},{from:`/learn/ai-stock-analysis`,to:`/learn/how-to-analyze-a-stock-before-buying`},{from:`/learn/connect-brokerage`,to:`/learn/portfolio-tracker`},{from:`/learn/multi-brokerage-portfolio-tracking`,to:`/learn/portfolio-tracker`},{from:`/learn/sector-and-geography-exposure`,to:`/learn/portfolio-tracker`},{from:`/learn/mutual-fund-xray`,to:`/learn/etf-and-fund-holdings`},{from:`/learn/growth-projections`,to:`/learn/investment-planning`}]},Ms=`Information on this page is educational and is not personalized investment advice. StockLift provides portfolio tracking, analysis tools, and access to licensed financial advisors. StockLift does not execute transactions — any investment decision happens at your own brokerage, and all investing involves risk of loss.`,Ns=`Guides, calculators, and feature explainers for U.S. investors who want clearer portfolio analysis — including the AI Trade Checker checklist and a retirement calculator.`,Ps=`2026-08-28`,Fs={kind:`hub`,slug:`learn`,path:`/learn`,title:`Learn: Portfolio Analysis Tools & AI Guides | StockLift`,description:Ns,h1:`Learn how StockLift helps you analyze what you own`,navLabel:`Learn hub`,lede:`This section is for U.S. investors who want a clearer read on a portfolio before making a decision. Start with an interactive checklist or calculator, then read the pages that explain what the StockLift app analyzes and how to think about the results.`,sections:[{heading:`Start with an interactive tool`,body:[`Two tools run entirely in your browser. The AI Trade Checker checklist turns a ticker, side, and size into the questions worth answering before you act. The retirement calculator compounds figures you type so you can see what a savings rate implies over time.`,`Neither tool sees your accounts, and neither one is advice. They are here so you can practice a process without signing up for anything.`]},{heading:`Then read the product pages`,body:[`Four pages describe what the app actually does: the AI investing assistant that answers portfolio questions, the portfolio tracker that brings linked accounts into one view, AI Strategies that assemble an informational basket from a questionnaire, and access to licensed financial advisors when you want a person instead of a model.`]},{heading:`Use the guides for the decisions themselves`,body:[`The guides are process pages rather than product tours. Each one covers a decision that comes up repeatedly and can be handled with a repeatable method instead of a hunch.`],bullets:[`How to analyze a stock before buying, as a five-step checklist`,`What risk and diversification actually require beyond a long ticker list`,`How to rebalance using a calendar or drift bands you set in advance`,`How to look through ETF and mutual fund holdings to find real overlap`,`How to plan around the accounts and contribution rate you already have`]},{heading:`How these pages are written`,body:[`Every page carries a last-reviewed date, and the educational pages link the regulator-published references behind their claims — mostly SEC Investor.gov and FINRA material. Where a page shows numbers, it explains the arithmetic that produced them.`,`None of it is personalized advice, and n
3one of it predicts returns. Where a decision depends on your taxes, your job, or a date you cannot move, the honest recommendation is a licensed professional rather than a web page.`]},{heading:`What StockLift is and is not`,body:[`StockLift is a research and portfolio-analysis app. It does not execute transactions, hold your assets, or act as your broker or adviser. Anything you decide to do happens at your own brokerage, on your own initiative.`,`That boundary is the reason these pages focus on how to think about a decision rather than which decision to make. All investing involves the risk of loss, including loss of principal.`]}],faqs:[{question:`Are these pages investment advice?`,answer:`No. They are educational explainers and simple calculators. Personalized recommendations are not provided on this website. If you want advice about your situation, speak with a licensed financial advisor.`},{question:`Do I need an account to use the tools on this site?`,answer:`No. The AI Trade Checker checklist and the retirement calculator run in your browser and require no sign-up. Both are illustrations rather than analysis of your real holdings.`},{question:`What does the StockLift app add that this site cannot?`,answer:`The app can analyze holdings from brokerage accounts you link, so its reports and answers reflect what you actually own. This website has no access to your accounts.`},{question:`Where should I start if I am new to this?`,answer:`Read the AI investing assistant page for what the app does, then the guide on analyzing a stock before buying for a process you can reuse on any idea.`}],relatedPaths:[`/tools/ai-trade-checker`,`/tools/retirement-calculator`,`/learn/ai-investing-assistant`,`/learn/portfolio-tracker`],ctaLabel:`Download the App`,analyticsPlacement:`learn_hub`,reviewed:Ps},X={assetAllocation:{label:`SEC Office of Investor Education: Asset allocation, diversification, and rebalancing`,url:`https://www.investor.gov/introduction-investing/getting-started/asset-allocation`},diversification:{label:`SEC Investor.gov glossary: Diversification`,url:`https://www.investor.gov/introduction-investing/investing-basics/glossary/diversification`},rebalancing:{label:`SEC Investor.gov glossary: Rebalancing`,url:`https://www.investor.gov/introduction-investing/investing-basics/glossary/rebalancing`},mutualFunds:{label:`SEC Investor.gov glossary: Mutual funds`,url:`https://www.investor.gov/introduction-investing/investing-basics/glossary/mutual-funds`},etfs:{label:`SEC Investor.gov glossary: Exchange-traded funds (ETFs)`,url:`https://www.investor.gov/introduction-investing/investing-basics/glossary/exchange-traded-funds-etfs`},stocks:{label:`SEC Investor.gov glossary: Stocks`,url:`https://www.investor.gov/introduction-investing/investing-basics/glossary/stocks`},howMarketsWork:{label:`SEC Investor.gov: How stock markets work`,url:`https://www.investor.gov/introduction-investing/investing-basics/how-stock-markets-work`},saveAndInvest:{label:`SEC Investor.gov: Save and invest`,url:`https://www.investor.gov/introduction-investing/investing-basics/save-and-invest`},compoundCalculator:{label:`SEC Investor.gov: Compound interest calculator`,url:`https://www.investor.gov/financial-tools-calculators/calculators/compound-interest-calculator`},workingWithProfessional:{label:`SEC Investor.gov: Working with an investment professional`,url:`https://www.investor.gov/introduction-investing/getting-started/working-investment-professional`},formCrs:{label:`SEC Investor.gov: Form CRS relationship summaries`,url:`https://www.investor.gov/CRS`},adviserInfo:{label:`SEC Investment Adviser Public Disclosure (IAPD)`,url:`https://adviserinfo.sec.gov/`},brokerCheck:{label:`FINRA BrokerCheck`,url:`https://brokercheck.finra.org/`},finraStocks:{label:`FINRA: Stocks`,url:`https://www.finra.org/investors/investing/investment-products/stocks`},finraAllocation:{label:`FINRA: Asset allocation and diversification`,url:`https://www.finra.org/investors/investing/investing-basics/asset-allocation-diversification`},finraEtfs:{label:`FINRA: Exchange-traded funds and products`,url:`https://www.finra.org/investors/investing/investment-products/exchange-traded-funds-and-products`}},Is=[{kind:`feature`,slug:`ai-investing-assistant`,path:`/learn/ai-investing-assistant`,title:`AI Investing Assistant for Portfolio Research | StockLift`,description:`What an AI investing assistant is, what StockLift analyzes across linked accounts, and the limits worth knowing before you rely on any model output.`,h1:`Your AI investing assistant`,navLabel:`AI investing assistant`,lede:`An AI investing assistant is software that answers questions about your money with the context of what you actually own, instead of recycling headlines. StockLift is one: portfolio-aware analysis, written reports, and a pre-trade checklist in a single iOS app — with decisions and execution left where they belong, at your brokerage.`,sections:[{heading:`Assistant, adviser, and terminal are three different things`,body:[`An assistant retrieves and explains. An adviser has a duty framework and a regulatory relationship with you. A terminal executes orders. StockLift is the first of those three. It is not your broker, it does not hold assets, and it does not carry out transactions.`,`That distinction matters when you read any output: analysis is information you weigh, not an instruction you follow.`]},{heading:`What it analyzes`,body:[`Once you link supported brokerage accounts, the assistant works from your real holdings rather than a hypothetical portfolio. That is 
3what separates a portfolio-aware answer from a generic one.`],bullets:[`Holdings and allocation across the accounts you have linked`,`Concentration and overlap, including exposure held inside funds`,`A structured pre-trade review through the AI Trade Checker`,`Written performance summaries you can read on a weekly rhythm`]},{heading:`Why a weekly rhythm beats a live feed`,body:[`Minute-by-minute data invites overfitting: you notice noise, act on it, and pay for the privilege. A periodic written review is usually enough to catch what actually matters — allocation drift, a thesis that stopped being true, a contribution you skipped.`,`Reports observe. If one makes you want to act, run the specific idea through the Trade Checker questions first.`]},{heading:`How to get a useful answer out of it`,body:[`Specific questions produce specific answers. "How am I doing?" invites a summary; "which of my positions moved my equity weight most this quarter?" produces something you can act on. Naming a ticker, a time frame, or an account narrows the model to the part of your book you care about.`,`It also helps to ask the uncomfortable version of the question. Asking what is most concentrated, most correlated, or most likely to be duplicated inside a fund gets you closer to real risk than asking what is performing well.`]},{heading:`Limits worth taking seriously`,body:[`Language models can be confidently wrong, and portfolio data can be stale or incomplete if an account connection lapses. Treat analysis as a second opinion to verify, not an oracle.`,`Nothing on this website or in the app is a guarantee about future performance. All investing carries the risk of loss, and a well-written explanation of a position is not evidence that the position is a good idea.`]}],faqs:[{question:`Is StockLift a robo-advisor?`,answer:`No. A robo-advisor manages money on your behalf. StockLift analyzes and explains; it does not manage assets, take discretion, or execute transactions.`},{question:`Is every investing chatbot an AI investing assistant?`,answer:`Not usefully. Without access to your holdings, a chatbot can only discuss securities in the abstract, which is closer to search than assistance.`},{question:`Does it work with the broker I already use?`,answer:`StockLift supports a range of U.S. brokerages through its connectivity partners. The current list lives in the app, since it changes as institutions are added.`},{question:`Can I use it without linking anything?`,answer:`Yes, but the analysis will be generic. The value comes from portfolio context, so linking accounts is what makes answers specific to you.`},{question:`Is any of this personalized investment advice?`,answer:`No. Analysis in the app and on this site is educational. For advice about your circumstances, talk to a licensed financial advisor.`}],sources:[X.howMarketsWork,X.workingWithProfessional],relatedPaths:[`/tools/ai-trade-checker`,`/learn/portfolio-tracker`,`/learn/ai-strategies`,`/learn/financial-advisor`,`/learn/how-to-analyze-a-stock-before-buying`],ctaLabel:`Download the AI investing assistant`,analyticsPlacement:`learn_ai_investing_assistant`,reviewed:Ps},{kind:`feature`,slug:`portfolio-tracker`,path:`/learn/portfolio-tracker`,title:`Portfolio Tracker for Multiple Brokerages | StockLift`,description:`Bring holdings from several linked brokerage accounts into one view, then read allocation, sector, and geography exposure that a single-broker screen cannot show.`,h1:`See your whole portfolio in one place`,navLabel:`Portfolio tracker`,lede:`Most people do not have one login. A workplace retirement account, a taxable account, and an old rollover are one portfolio in practice and three screens in reality. StockLift aggregates the accounts you link so allocation, concentration, and exposure are readable in a single view.`,sections:[{heading:`Single-broker views mislead by omission`,body:[`A retirement plan that is mostly U.S. large-cap plus a taxable account holding the same index funds is not two diversified portfolios; it is one concentrated one. Neither broker's app will tell you, because neither can see the other.`,`Aggregation is not a feature for its own sake. It is the precondition for every other question worth asking about risk.`]},{heading:`What the combined view makes visible`,body:[`Once holdings sit on one map, several kinds of hidden exposure stop hiding.`],bullets:[`Position weights measured against the whole portfolio, not one account`,`Sector and industry tilt after fund holdings are counted`,`Geographic concentration, including a home-country bias most U.S. investors have`,`The same issuer arriving through a direct holding and a fund at once`]},{heading:`Sector and geography deserve a second look`,body:[`A sector chart built only from top-level tickers understates technology for anyone who owns a broad market fund alongside a few individual names. Read the chart with fund look-through in mind.`,`Geography is subtler: many U.S. companies earn a large share of revenue abroad, and many international funds concentrate in the same global leaders. Treat the breakdown as a conversation starter rather than a passport stamp.`]},{heading:`What to check first in a combined view`,body:[`Start with the largest single issuer rather than the largest account. People are routinely surprised by how much of their equity sits in one company once direct holdings and fund exposure are added together.`,`Then look at what has drifted. A sleeve that is meaningfully above its intended weight is either a decision you made or a decision the market made for you, and it is worth knowing which. That single question is what turns a dashboard into something you act on.`]},{heading:`Data quality caveats`,body:[`Aggregated data is only as good as the institution feed behind it. Connections can expire, some products report on a lag, and unusual holdings may be classified imprecisely or not at all. Reconnect accounts when prompted, and treat any single number as directional rather than exact.`]}],faqs:[{question:`Does linking give StockLift permission to trade?`,answer:`No. StockLift does not execute transactions. Linking supports the portfolio view and the analysis built on top of it.`},{question:`Does the tracker look inside funds and ETFs?`,answer:`Fund look-through is what makes overlap visible. The guide on ETF and mutual fund holdings explains how to read the result and where coverage is limited.`},{question:`What happens if a connection breaks?`,answer:`Holdings can go stale until the account is reconnected. When a connection needs attention, the app shows a prompt with a Re-link action so you can restore synced data before relying on an allocation chart.`},{question:`How do I unlink a linked brokerage account?`,answer:`In the StockLift app, open Profile, then Settings, then Connected Accounts, and press Unlink for the account you want to remove. If you need help unlinking, email [email protected].`},{question:`What if I can't unlink or reconnect in the app?`,answer:`First try Unlink or Re-link from Profile, then Settings, then Connected Accounts. If that still fails, sign in at https://my.plaid.com, revoke StockLift's access, then start a fresh link from the app.`}
3],sources:[X.assetAllocation,X.finraAllocation],relatedPaths:[`/learn/etf-and-fund-holdings`,`/learn/portfolio-risk-and-diversification`,`/learn/ai-investing-assistant`,`/learn/how-to-rebalance-a-portfolio`],ctaLabel:`Track your portfolio in the app`,analyticsPlacement:`learn_portfolio_tracker`,reviewed:`2026-08-31`},{kind:`feature`,slug:`ai-strategies`,path:`/learn/ai-strategies`,title:`AI Strategies: Informational Stock Baskets | StockLift`,description:`How StockLift AI Strategies turn a short questionnaire into a diversified basket of U.S. stocks and ETFs you can inspect — informational only, never an automatic order.`,h1:`Build a diversified AI Strategy in seconds`,navLabel:`AI Strategies`,lede:`AI Strategies start with a short questionnaire about themes, style, and budget. StockLift AI then assembles a diversified basket of U.S. equities and ETFs for you to read. Strategies are informational, not personalized investment advice, and nothing is bought on your behalf.`,sections:[{heading:`The point is a coherent starting basket`,body:[`Turning a vague interest into a list of names is the tedious part of a thematic idea. A generated basket compresses that step so you can spend your attention on whether the result makes sense.`,`That is also its limitation: a basket assembled from a questionnaire knows your stated preferences, not your taxes, your job, your other accounts, or your obligations.`]},{heading:`Read the holdings before anything else`,body:[`Look at what is in the list and why. A basket can be diversified by count and concentrated by behavior when every name responds to the same driver.`],bullets:[`Check the weights, not just the tickers`,`Note names you already hold directly or inside a fund`,`Ask what would make the theme wrong, and what you would do then`,`Compare the basket against what a broad market fund already gives you`]},{heading:`Community strategies are ideas, not endorsements`,body:[`You can discover strategies other people have shared and publish your own. A shared strategy is someone's idea, not a vetted recommendation, and its presence in the app is not an endorsement by StockLift.`]},{heading:`How a basket interacts with what you already own`,body:[`A generated basket is built without reference to the rest of your portfolio, which means the more interesting question is not whether the basket is diversified but whether it is diversifying for you. A thematic technology basket added to a portfolio already led by large technology companies concentrates risk while appearing to spread it.`,`Read the basket next to your combined holdings, and note which names or sectors it duplicates before you treat it as a new sleeve. If most of the weight is already familiar, the basket is expressing a view you have expressed before rather than adding a new one.`]},{heading:`What a strategy is not`,body:[`It is not a managed account, a fund, or a promise about returns. StockLift does not execute transactions, so a strategy remains a document you have read until you decide to act on your own at your brokerage. Diversification reduces some risks; it does not prevent losses.`]}],faqs:[{question:`Are AI Strategies personalized investment advice?`,answer:`No. They are informational baskets generated from the preferences you enter. For advice about your circumstances, consult a licensed financial advisor.`},{question:`What can a strategy contain?`,answer:`Strategies are assembled as diversified baskets of U.S. equities and ETFs. Read the full holdings list before drawing conclusions.`},{question:`Does StockLift buy the basket for me?`,answer:`No. StockLift does not execute transactions. A strategy is a proposal for you to evaluate.`},{question:`Can I share or follow strategies?`,answer:`Yes. You can publish your own and browse strategies shared by others in the app, treating them as ideas rather than advice.`}],sources:[X.diversification,X.finraAllocation],relatedPaths:[`/learn/portfolio-risk-and-diversification`,`/learn/ai-investing-assistant`,`/learn/how-to-rebalance-a-portfolio`,`/learn/investment-planning`],ctaLabel:`Build your first AI Strategy`,analyticsPlacement:`learn_ai_
3strategies`,reviewed:Ps},{kind:`feature`,slug:`financial-advisor`,path:`/learn/financial-advisor`,title:`Talk to a Licensed Financial Advisor | StockLift`,description:`When to bring a licensed financial advisor into a decision, what to ask before you hire one, and how StockLift connects you with advisors alongside its analysis tools.`,h1:`A licensed advisor when you want a human`,navLabel:`Licensed advisors`,lede:`Software is fast and cheap. Some decisions still deserve a conversation with a person who is accountable to you. StockLift lets you ask a question, book a consultation, or request a financial plan from a licensed financial advisor, using the same portfolio picture the app already shows you.`,sections:[{heading:`When an advisor is the better next step`,body:[`A calculator is a poor place to resolve anything with legal or tax consequences. Concentrated employer stock, equity compensation, trusts and estates, cross-border tax questions, and a retirement date you cannot move all reward a professional's time.`,`Arriving with an aggregated view of what you own makes that conversation shorter and more useful.`]},{heading:`Questions to ask before you hire anyone`,body:[`Advisors differ in how they are paid, what standard applies to their recommendations, and what they are licensed to do. Ask directly, and get answers in writing.`],bullets:[`How are you paid, and by whom besides me?`,`Are you acting as a fiduciary at all times, and in what capacity?`,`What services am I buying — a plan, ongoing management, or both?`,`May I see your Form CRS and disciplinary history?`]},{heading:`Verify credentials yourself`,body:[`Registration and disciplinary records are public. You can look up an investment adviser through the SEC's Investment Adviser Public Disclosure system and a broker through FINRA BrokerCheck before your first meeting. Both links are in the references below.`]},{heading:`How to prepare so the meeting is worth paying for`,body:[`Advisor time is expensive and finite, so arrive with facts rather than questions about facts. A list of accounts and rough balances, your actual contribution rate, any concentrated or restricted holdings, and the two or three outcomes that matter to you will cover most of a first conversation.`,`It also helps to state your constraints plainly: a date, a number, a position you will not sell for personal reasons. Advisors can plan around a constraint they know about and cannot plan around one they discover later. Being direct about what you are unwilling to change saves an entire meeting.`]},{heading:`How this fits with StockLift`,body:[`Advisors you reach through StockLift are licensed professionals you choose to engage. Being available in the app is not an endorsement of any individual or of specific investments, and StockLift does not become your adviser by making the introduction.`]}],faqs:[{question:`What can I request in the app?`,answer:`You can ask a question, book a consultation, or request a financial plan from a licensed financial advisor.`},{question:`Is StockLift acting as my adviser?`,answer:`No. StockLift provides research and portfolio analysis tools and access to independent licensed professionals.`},{question:`Do I need an advisor to use the app?`,answer:`No. Portfolio tracking, analysis, and the pre-trade checklist work without engaging anyone.`},{question:`How do I check an advisor's background?`,answer:`Use the SEC's Investment Adviser Public Disclosure site and FINRA BrokerCheck, and read the Form CRS relationship summary they are required to provide.`}],sources:[X.workingWithProfessional,X.formCrs,X.adviserInfo,X.brokerCheck],relatedPaths:[`/learn/investment-planning`,`/tools/retirement-calculator`,`/learn/ai-investing-assistant`,`/learn/portfolio-risk-and-diversification`],ctaLabel:`Request guidance in the app`,analyticsPlacement:`learn_financial_advisor`,reviewed:Ps}],Ls=[{kind:`guide`,slug:`how-to-analyze-a-stock-before-buying`,path:`/learn/how-to-analyze-a-stock-before-buying`,title:`How to Analyze a Stock Before Buying: 5 Steps | StockLift`,description:`A repeatable pre-purchase process: write the thesis, size the position against your whole portfolio, check overlap, define what would prove you wrong, and decide in advance.`,h1:`How to analyze a stock before you buy`,navLabel:`Analyze a stock before buying`,lede:`A useful pre-purchase review is less about finding a magic score than about running the same five questions every time: why this security, how it changes your mix, what you already own that looks like it, what would prove the idea wrong, and what you will do then.`,sections:[{heading:`1. Write the thesis in one sentence`,body:[`If you cannot state the reason in a sentence, you do not have a thesis yet — you have interest. "Everyone is talking about it" is not a reason; "cash generation is improving and the multiple has not caught up" is, whether or not it turns out to be right.`,`A written thesis is what makes a later review possible. Without one, every price move becomes evidence for whatever you already wanted to do.`]},{heading:`2. Size the position against the whole portfolio`,body:[`A 2% purchase looks small in isolation and is not small if you already hold the same issuer through a broad market fund and a sector fund. Position size only means something relative to everything you own, across every account.`],bullets:[`Compare the current weight with the weight after the purchase`,`Check sector and industry exp
3osure once the trade is included`,`Decide whether cash or a sale is funding it, and what that costs you`]},{heading:`3. Look for overlap you already own`,body:[`Fund tickers hide their contents. Two funds with different names can share the same largest holdings, and adding the underlying stock directly quietly triples an exposure you thought was one position. Look through fund holdings before you conclude a purchase adds diversification.`]},{heading:`4. Define the disconfirming evidence in advance`,body:[`Name the specific development that would mean the thesis failed — a margin trend reversing, a product cycle slipping, a competitor winning the segment. Deciding this before you own the security is much easier than deciding it while you are down.`]},{heading:`5. Run the checklist, then sleep on it`,body:[`The AI Trade Checker on this site turns your ticker, side, and size into these categories so you do not have to remember them. Fill it in, then wait a day on anything that would be a large position. Ideas that survive a night are usually better than ideas that need to be executed immediately.`]}],faqs:[{question:`Is this the same as a brokerage research report?`,answer:`No. This is a process you can run yourself. It produces no rating or price target, and it is educational rather than a recommendation.`},{question:`Do I need a full financial model?`,answer:`Not for a first pass. Thesis, size, overlap, and an exit condition prevent most impulsive purchases. Deeper analysis makes sense as the position gets larger.`},{question:`How does AI help here?`,answer:`It is fastest at the mechanical parts: summarizing what you own, spotting overlap, and structuring the questions. Judgment about whether the thesis is plausible remains yours.`},{question:`Can I run this without linking accounts?`,answer:`You can think through every question, and the checklist on this site works with no account. Portfolio-specific answers need linked holdings in the app.`}],sources:[X.stocks,X.finraStocks,X.assetAllocation],relatedPaths:[`/tools/ai-trade-checker`,`/learn/portfolio-risk-and-diversification`,`/learn/etf-and-fund-holdings`,`/learn/ai-investing-assistant`],ctaLabel:`Open the AI Trade Checker in the app`,analyticsPlacement:`learn_analyze_stock`,reviewed:Ps},{kind:`guide`,slug:`portfolio-risk-and-diversification`,path:`/learn/portfolio-risk-and-diversification`,title:`Portfolio Risk and Diversification 
3Explained | StockLift`,description:`Why a long list of tickers is not diversification, how correlation and concentration actually show up, and how to read risk across every account you own.`,h1:`Portfolio risk and diversification, in one view`,navLabel:`Risk and diversification`,lede:`Diversification fails quietly. It fails when the same theme arrives through several accounts, when a fund holds what you already own directly, and when twenty holdings all respond to one interest-rate story. Counting tickers will not catch any of that.`,sections:[{heading:`Diversification is about behavior, not count`,body:[`Holding thirty securities that move together is closer to one position than to thirty. What matters is whether your holdings respond to different drivers — sector, geography, company size, and asset class — not how many rows appear in the account screen.`,`Regulators describe diversification as spreading money among different investments so that a single loss cannot dominate the outcome. That framing is a better test than any ticker count.`]},{heading:`Where concentration usually hides`,body:[`Most portfolios accumulate concentration through ordinary decisions rather than one bold bet.`],bullets:[`Employer stock alongside a career already exposed to the same firm`,`Several broad funds whose largest holdings are the same handful of companies`,`A sector fund layered on top of individual names from that sector`,`Cash-like holdings counted as diversification when they are really a horizon decision`]},{heading:`Read risk across accounts, not inside one`,body:[`Risk is a property of the whole portfolio. That is 
3why the aggregated view matters: allocation, sector, and geography charts built from every linked account tell you something a single broker screen structurally cannot.`]},{heading:`Three questions that expose real concentration`,body:[`First, what is your largest exposure to a single company once fund holdings are counted? Second, what would a bad year for your largest sector do to the whole portfolio, not just that sleeve? Third, does anything you own depend on the same driver as your income?`,`Those three answers describe more about your actual risk than a list of holdings does. If any of them surprises you, that is the part of the portfolio to look at before adding anything new, and it is usually a more productive conversation than debating whether to add a twenty-first position.`]},{heading:`What diversification cannot do`,body:[`It reduces the impact of any one holding going wrong. It does not eliminate market risk, guarantee a return, or protect you in a broad decline. Concentrated positions may also carry tax and liquidity constraints that make unwinding them costly, which is a question for a tax professional rather than a chart.`]}],faqs:[{question:`Does StockLift produce a single risk score?`,answer:`The app emphasizes readable breakdowns — allocation, sector, geography, and overlap — rather than one proprietary number you would have to trust blindly.`},{question:`How many holdings should I have?`,answer:`There is no universal answer, and the count matters less than whether the holdings behave differently. Adding correlated names does not add diversification.`},{question:`Most of my risk is in my employer's stock. What now?`,answer:`That concentration should be visible once accounts are linked. Because taxes, vesting, and trading windows are personal, discuss the unwinding with a tax professional or licensed advisor.`},{question:`Can I compare risk before and after a trade?`,answer:`Use the pre-trade checklist for the intended change, then re-read allocation and sector exposure afterward once holdings refresh.`}],sources:[X.diversification,X.assetAllocation,X.finraAllocation],relatedPaths:[`/learn/how-to-rebalance-a-portfolio`,`/learn/portfolio-tracker`,`/tools/ai-trade-checker`,`/learn/etf-and-fund-holdings`],ctaLabel:`Review risk 
3in StockLift`,analyticsPlacement:`learn_risk_diversification`,reviewed:Ps},{kind:`guide`,slug:`how-to-rebalance-a-portfolio`,path:`/learn/how-to-rebalance-a-portfolio`,title:`How to Rebalance a Portfolio: Calendar vs Bands | StockLift`,description:`A practical rebalancing process: choose a target mix, measure drift, pick calendar or threshold triggers, and prefer the cheapest correction available.`,h1:`How to rebalance a portfolio without guessing`,navLabel:`How to rebalance`,lede:`Rebalancing is the decision to restore a target mix after markets move it. The mechanics are simple; the discipline is not, because rebalancing means trimming whatever has been working best.`,sections:[{heading:`Start with a target you can defend`,body:[`A target mix with no written reason will not survive the next rally. Write down the stock, bond, and cash split you are aiming for and the reason — horizon, income need, tolerance for a decline — so the number has a purpose beyond feeling balanced.`]},{heading:`Choose a trigger before you need one`,body:[`Two common approaches, both better than acting on how the market feels this week:`],bullets:[`Calendar: review on a fixed schedule, such as quarterly or annually`,`Threshold bands: act when a sleeve drifts past a set percentage from target`,`Hybrid: check on a schedule, but only trade when a band is breached`]},{heading:`Measure drift across every account`,body:[`Drift measured inside one account is not drift. If a retirement plan and a taxable account hold the same funds, only the aggregated weights tell you whether you are actually off target — which is what a multi-account portfolio view is for.`]},{heading:`Prefer the cheapest correction`,body:[`Selling is not the only lever, and it is often the most expensive one in a taxable account. Directing new contributions toward the underweight sleeve, or rebalancing inside a tax-advantaged account, can reach the same target with less friction.`,`Sales in taxable accounts can create taxable gains, and rules such as wash sales depend on your specific facts. Confirm the tax treatment with a tax professional before you act, particularly if the position has a large embedded gain or you are close to a holding-period boundary.`]},{heading:`Review the specific trade before you act`,body:[`Once you know which sleeve needs adjusting, run the individual buy or sell through the pre-trade checklist. Rebalancing at the sleeve level and executing at the security level are different decisions, and the second one still deserves a look.`,`A sleeve-level target says you need less technology exposure; it does not say which position to reduce, in which account, or in what size. Those choices carry their own tax and concentration consequences, so treat them as a separate review rather than an implementation detail you can rush through.`]}],faqs:[{question:`How often should I rebalance?`,answer:`There is no single correct schedule. Many investors use a calendar review, a drift band, or a combination. What matters is choosing the rule before the market tests it.`},{question:`Will StockLift rebalance for me?`,answer:`No. StockLift shows weights and drift and helps you think through a change. It does not execute transactions; you act at your own brokerage.`},{question:`Does rebalancing create a tax bill?`,answer:`It can when you sell in a taxable account. Contribution-based rebalancing and adjustments inside tax-advantaged accounts often avoid that, but the specifics are personal — ask a tax professional.`},{question:`Is rebalancing the same as market timing?`,answer:`No. Rebalancing restores a predetermined mix on a rule you set in advance, rather than predicting what happens next.`}],sources:[X.rebalancing,X.assetAllocation,X.finraAllocation],relatedPaths:[`/learn/portfolio-risk-and-diversification`,`/learn/portfolio-tracker`,`/tools/ai-trade-checker`,`/learn/investment-planning`],ctaLabel:`Review your allocation in the app`,analyticsPlacement:`learn_rebalance`,reviewed:Ps},{kind:`guide`,slug:`etf-and-fund-holdings`,path:`/learn/etf-and-fund-holdings`,title:`ETF and Mutual Fund Holdings: Look-Through Guide | StockLift`,description:`How to look through ETF and mutual fund holdings to find real issuer and sector overlap, why published holdings lag, and what to do once you see duplication.`,h1:`See through ETF and mutual fund holdings`,navLabel:`ETF and fund holdings`,lede:`Funds are wrappers, and wrappers hide concentration. Two funds with different names can share their largest positions, and adding the underlying stock directly can triple an exposure you counted once. Looking through the wrapper is how you find out.`,sections:[{heading:`The look-through problem, concretely`,body:[`Suppose you hold a large individual position, a broad U.S. market fund, and a technology fund. Your true exposure to that one company is the direct holding plus its weight inside both funds. On the account screen it is a single line; in reality it may be your largest risk.`,`This is the arithmetic a look-through view exists to perform, across every account you have linked.`]},{heading:`Two funds, one bet`,body:[`Overlap is easiest to miss when the labels differ but the methodology does not.`],bullets:[`Compare the largest holdings of each fund, not just the strategy name`,`Check whether a "growth" and a "broad market" fund lead with the same companies`,`Watch for the same issuer appearing through several sector funds`,`Remember that cap-weighted indexes are concentrated by construction`]}
3,{heading:`Published holdings arrive on a lag`,body:[`Mutual funds and ETFs disclose holdings on schedules that vary by product, so look-through is directional rather than real-time. It is most misleading right after an index reconstitution or a strategy change. Coverage also thins for unusual or newly launched products.`]},{heading:`What to do once you see the overlap`,body:[`Sometimes the answer is to simplify by dropping a redundant fund. Sometimes it is to add the sleeve you were missing. Often it is to leave the mix alone now that you understand it — the point is to make the exposure a choice rather than an accident.`,`Funds remain an efficient way to own broad exposure. The goal is knowing what you already own before you buy more of the same.`]},{heading:`A quick way to sanity-check any fund`,body:[`Before adding a fund, read its top ten holdings and its sector weights, then compare both against the portfolio you already have. If the top ten look familiar, the fund is adding weight rather than breadth — which may still be what you want, as long as it is a decision.`,`Fee and structure details matter too, and they are published: expense ratio, index methodology, and how concentrated the top holdings are. Those numbers explain more about future behavior than the fund's name does.`]}],faqs:[{question:`Does look-through work for every fund?`,answer:`Coverage depends on available holdings data. Large, widely held funds are well covered; thin or exotic products may show less detail.`},{question:`Are fund holdings current?`,answer:`Usually not to the day. Disclosure schedules vary, so treat look-through as directional, especially around index rebalances.`},{question:`Should I just own individual stocks instead?`,answer:`Not necessarily. Funds give broad exposure at low cost, and single stocks concentrate risk. The point is to measure total exposure rather than to prefer one wrapper.`},{question:`How does this change how I read a sector chart?`,answer:`A chart built only from top-level tickers understates whatever sits inside your funds, so read sector exposure with look-through applied.`}],sources:[X.etfs,X.mutualFunds,X.finraEtfs],relatedPaths:[`/learn/portfolio-tracker`,`/learn/portfolio-risk-and-diversification`,`/learn/how-to-analyze-a-stock-before-buying`,`/learn/how-to-rebalance-a-portfolio`],ctaLabel:`Look through funds in StockLift`,analyticsPlacement:`learn_etf_holdings`,reviewed:Ps},{kind:`guide`,slug:`investment-planning`,path:`/learn/investment-planning`,title:`Investment Planning with the Accounts You Have | StockLift`,description:`A lightweight planning loop for U.S. investors: name the goal, read today's mix, sketch a range with a compound illustration, and know when to bring in a professional.`,h1:`Investment planning that starts with the accounts you already have`,navLabel:`Investment planning`,lede:`Planning does not require a forty-page document. It requires knowing what you own, what you are aiming at, and which of the two needs to change. Everything else is refinement — and the parts with legal or tax consequences belong with a professional.`,sections:[{heading:`A four-step loop you can actually repeat`,body:[`Name the goal in plain language and a rough date. Read the mix you already have across every account. Sketch a range of outcomes rather than a single number. Then decide what to change: the contribution rate, the horizon, or the risk.`]},{heading:`Projections are ranges, not promises`,body:[`Any growth figure is the product of an assumption you cannot control. The honest use of a projection is comparative: run a lower return and see whether the plan still works. If the goal only survives at an optimistic rate, the assumption is doing the work, not the plan.`,`The retirement calculator on this site is deliberately simple so you can see exactly which assumption drives the result.`]},{heading:`Usually the contribution rate is the lever`,body:[`When a goal looks out of reach, the reliable adjustments are the ones you control.`],bullets:[`Increase what you contribute, even modestly and automatically`,`Extend the horizon rather than reaching for a higher assumed return`,`Reduce costs and duplication in what you already own`,`Revisit the goal itself if the arithmetic keeps refusing to work`]},{heading:`Write the goal down in a form you can check`,body:[`"Retire comfortably" cannot be measured, so it cannot be planned. "Replace 70% of current income starting in 2041" can be: it implies a number, a date, and a contribution rate you can compare against what you are actually doing.`,`Keep the written version short and revisit it annually. Most plans fail quietly not because the arithmetic was wrong but because nobody wrote down what the arithmetic was for, so there was never a moment where the plan and reality could be compared.`,`One page is enough: the goal, the date, the current mix, the contribution rate, and the assumption you are relying on.`]},{heading:`When to bring in a professional`,body:[`Equity compensation, concentrated stock, trusts and estates, business ownership, and cross-border tax questions are outside what any calculator should decide. Bring the aggregated portfolio view into a conversation with a licensed financial advisor and, for tax specifics, a tax professional.`]}],faqs:[{question:`Does the retirement calculator use my linked balances?`,answer:`No. It compounds only the figures you type. Portfolio-specific analysis happens in the app after you link accounts.`},{question:`Can StockLift replace a financial plan?`,answer:`No. It is decision-support software. A written plan built around your circumstances comes from a licensed professional.`},{question:`Where do AI Strategies fit in planning?`,answer:`They turn a stated preference into an informational basket you can inspect. Treat that as a candidate to evaluate against your existing mix, not as a plan.`},{question:`How often should I revisit the plan?`,answer:`An annual review plus any life change — a new job, a move, a fam
3ily change — is a reasonable rhythm. More frequent revisions tend to track markets rather than goals.`}],sources:[X.saveAndInvest,X.compoundCalculator,X.workingWithProfessional],relatedPaths:[`/tools/retirement-calculator`,`/learn/financial-advisor`,`/learn/portfolio-tracker`,`/learn/how-to-rebalance-a-portfolio`],ctaLabel:`Start planning in the StockLift app`,analyticsPlacement:`learn_investment_planning`,reviewed:Ps}],Rs=[{kind:`tool`,slug:`ai-trade-checker`,path:`/tools/ai-trade-checker`,title:`AI Trade Checker: Free Pre-Trade Checklist | StockLift`,description:`Turn a ticker, side, and size into a structured pre-trade checklist covering portfolio impact, diversification, sector concentration, risk, and process. Free, no sign-up.`,h1:`AI Trade Checker`,navLabel:`AI Trade Checker`,lede:`Thinking about a buy or a sell? Enter the ticker, the side, and the size, and this page returns the questions worth answering first: portfolio impact, diversification, sector concentration, risk, and process. It runs in your browser, sees none of your accounts, and gives no recommendation.`,widget:`trade-checker`,sections:[{heading:`Why a checklist beats a hunch`,body:[`Most avoidable trading mistakes are process failures rather than analytical ones: a position sized by enthusiasm, an add to something you already own three ways, a sale timed by a headline. A fixed list of questions is boring on purpose — it makes those failures visible before they cost anything.`,`The five prompts below stay the same for every ticker so you can compare ideas against each other instead of against your current mood.`],bullets:[`Portfolio impact: what changes in position size, cash, and overall allocation`,`Diversification: whether the trade concentrates or fills a genuine gap`,`Sector concentration: exposure you may already hold inside funds`,`Risk: fit with your time horizon and tolerance for a drawdown`,`Process: order type, size, and whether you still want it after a second look`]},{heading:`What this page is not`,body:[`It is not a screener, a valuation model, or a signal service. It produces no rating, price target, or buy-or-sell conclusion, because it knows nothing about you, your holdings, your tax situation, or the security you typed in.`,`It also does not place orders. StockLift does not execute transactions; anything you decide to do happens at your own brokerage.`]},{heading:`How to answer the questions honestly`,body:[`The checklist is only useful if you answer with numbers rather than impressions. Portfolio impact means the weight before and the weight after, not "a small amount." Diversification means whether the position moves with something you already own, not whether it has a different ticker.`,`The risk question is the one most people skip. Decide, before you act, how far this position could fall before you would change your mind — and whether you would still hold it at that price. Writing the answer down is what makes the review repeatable next month.`]},{heading:`How the in-app version differs`,body:[`In the StockLift app, the AI Trade Checker can run the same categories against holdings from brokerage accounts you have linked, so the answers reference your actual concentration rather than generic prompts. It can see that a purchase would push one issuer past a fifth of your equity exposure, which no browser checklist can know.`,`That analysis is educational too. It is context for your decision, not a recommendation, and it does not predict how the security will perform.`]}],methodology:[`This page performs no market-data lookup and no model inference. Your inputs are validated in the browser — ticker format, side, and a quantity greater than zero — and then rendered into five fixed question templates.`,`Nothing you type is transmitted, stored, or logged as an analytics event.`],faqs:[{question:`Is this the same analysis the app performs?`,answer:`No. This is a static checklist generated from your inputs. The in-app AI Trade Checker can analyze holdings from accounts you link, so it can speak to your real exposure.`},{question:`Does the checker tell me whether the trade is good?`,answer:`No, and that is deliberate. It surfaces the questions a careful investor asks. The judgment stays with you, and you may want a licensed advisor for a decision that matters.`},{question:`Do you store the ticker I enter?`,answer:`No. The calculation happens in your browser, and the values are not sent to StockLift or included in analytics events.`},{question:`Can I use it for funds and ETFs?`,answer:`Yes — enter the fund ticker. For those, pay particular attention to the sector and look-through questions, since a fund can duplicate stocks you already own directly.`}],sources:[X.assetAllocation,X.finraStocks,X.stocks],relatedPaths:[`/learn/how-to-analyze-a-stock-before-buying`,`/learn/portfolio-risk-and-diversification`,`/learn/ai-investing-assistant`,`/learn/etf-and-fund-holdings`],ctaLabel:`Run the AI Trade Checker in the app`,analyticsPlacement:`tool_ai_trade_checker`,reviewed:Ps},{kind:`tool`,slug:`retirement-calculator`,path:`/tools/retirement-calculator`,title:`Retirement Calculator: Compound Growth Illustration | StockLift`,description:`See how current savings and monthly contributions could compound to a target retirement age, with a year-by-year table. Illustration only — not a forecast or a plan.`,h1:`Simple retirement calculator`,navLabel:`Retirement calculator`,lede:`Enter your age, a target retirement age, current savings, monthly contributions, and an assumed annual return. You get a projected balance, the split between contributions and assumed growth, and a year-by-year table you can inspect. It is arithmetic, not a forecast.`,widget:`retirement-calculator`,sections:[{heading:`Read the split, not just the total`,body:[`The most useful number here is rarely the final balance. It is the comparison between what you contributed and what the assumed return added. If growth dominates, the result is sensitive to an assumption nobody can guarantee. If contributions dominate, the plan rests on something you control.`,`Try the same inputs with a lower return before you rely on any single figure.`]},{heading:`What the model leaves out`,body:[`Real outcomes depend on variables this page does not model, which is why the output is an illustration rather than a projection of your retirement. Treating any of these as negligible is the fastest way to make the final number meaningless.`],bullets:[`Taxes, account types, and contribution limits`,`Inflation and the purchasing power of the final balance`,`Fees, and returns that arrive in an unfavorable order`,`Social Security, pensions, and required minimum distributions`]},{heading:`How to stress-test your own inputs`,body:[`Run the calculation three times rather than once. Use a return you would describe as pessimistic, one you consider reasonable, and one that is frankly optimistic. The spread between the three results is the honest answer, and it is usually wide enough to change how you think about the goal.`,`Then hold the return constant and vary the contribution instead. Most people find that a modest, sustained increase in monthly contributions moves the result more reliably than any assumption they can defend about markets — and unlike the return, it is a decision they control.`]},{heading:`Where to go after a ballpark number`,body:[`A number is a prompt, not a plan. The next questions are usually about what you already own and whether the mix matches the horizon you just typed in, which is what portfolio analysis in the StockLift app is for.`,`For anything with legal or tax consequences — equity compensation, a concentrated position, a retirement date you cannot move — the right next step is a licensed financial advisor rather than a browser calculator.`]}],methodology:[`The model compounds the starting balance once per year at the assumed rate and adds twelve monthly contributions at the end of each year. It does not compound contributions within the year, so the result is slightly conservative compared with monthly compounding.`,`Years are counted as retirement age minus current age. The assumed return is capped at 15% because constant high returns produce misleading curves.`,`All figures are nominal U.S. dollars with no inflation adjustment, and the calculation happens in your browser using only the values you enter.`],faqs:[{question:`Why is the assumed return capped at 15%?`,answer:`A constant double-digit return compounded for decades produces a number that looks precise and is not. The cap keeps the tool in the range where it is useful as an illustration.`},{question:`Does it use my linked accounts?`,answer:`No. This calculator only compounds the figures you type. It has no access to any brokerage account.`},{question:`Is the projected balance in today's dollars?`,answer:`No. The output is nominal and n
3ot inflation-adjusted, so the purchasing power of the final figure will be lower than it appears.`},{question:`Can StockLift invest this money for me?`,answer:`No. StockLift provides research and portfolio analysis and does not execute transactions or take discretion over accounts.`},{question:`How does this compare with the SEC's calculator?`,answer:`Both are compound-interest illustrations. The SEC's version is linked in the references below and is a good cross-check on the arithmetic.`}],sources:[X.compoundCalculator,X.saveAndInvest,X.workingWithProfessional],relatedPaths:[`/learn/investment-planning`,`/learn/financial-advisor`,`/learn/portfolio-tracker`,`/learn/portfolio-risk-and-diversification`],ctaLabel:`Open StockLift to review your holdings`,analyticsPlacement:`tool_retirement_calculator`,reviewed:Ps}],zs=/^\d{4}-\d{2}-\d{2}$/;function Bs(e,t){if(!e||typeof e!=`object`)throw Error(`Landing route catalog ${t} entry must be an object`);let n=e;if(typeof n.path!=`string`||!n.path.startsWith(`/`)||/\s/.test(n.path))throw Error(`Landing route catalog ${t} path is invalid`);if(typeof n.lastmod!=`string`||!zs.test(n.lastmod)||Number.isNaN(Date.parse(n.lastmod)))throw Error(`Landing route catalog lastmod must be an ISO date for ${n.path}`);return{path:n.path,lastmod:n.lastmod}}function Vs(e){if(!e||typeof e!=`object`)throw Error(`Landing route catalog redirect entry must be an object`);let t=e;for(let e of[`from`,`to`]){let n=t[e];if(typeof n!=`string`||!n.startsWith(`/`)||/\s/.test(n))throw Error(`Landing route catalog redirect ${e} is invalid`)}if(t.from===t.to)throw Error(`Landing route catalog redirect cannot point at itself: ${String(t.from)}`);return{from:t.from,to:t.to}}function Hs(e){if(!e||typeof e!=`object`)throw Error(`Landing route catalog is missing`);let t=e;if(!Array.isArray(t.core)||!Array.isArray(t.landing)||!Array.isArray(t.blog)||!Array.isArray(t.redirects))throw Error(`Landing route catalog core, landing, blog, and redirects must be arrays`);return{core:t.core.map(e=>Bs(e,`core`)),landing:t.landing.map(e=>Bs(e,`landing`)),blog:t.blog.map(e=>Bs(e,`blog`)),redirects:t.redirects.map(e=>Vs(e))}}var Us=Hs(js),Ws=[Fs,...Rs,...Is,...Ls],Gs=new Map(Ws.map(e=>[e.path,e]));function Ks(e){return e.length>1&&e.endsWith(`/`)?e.slice(0,-1):e}function qs(){return Ws}function Js(e){return Gs.get(Ks(e))}function Ys(e){return Ws.filter(t=>t.kind===e)}function Xs(){return Us.blog}function Zs(){return Us.redirects}function Qs(e){return e.relatedPaths.map(e=>Gs.get(e)).filter(e=>!!e)}var $s={class:`site-header`},ec={class:`container site-header__inner`},tc=[`src`],nc={class:`site-header__nav`,"aria-label":`Main navigation`},rc=[`aria-expanded`],ic={id:`learn-menu`,class:`site-header__menu`},ac=[`aria-expanded`],oc={id:`legal-menu`,class:`site-header__menu`},sc=Vn({__name:`SiteHeader`,setup(e){let t=[...Ys(`tool`),...Ys(`feature`)],n=Ut(null),r;or(()=>{r&&clearTimeout(r),r=void 0});function i(e){r&&clearTimeout(r),n.value=e}function a(){r&&clearTimeout(r),r=setTimeout(()=>{n.value=null,r=void 0},150)}function o(e){try{return e.matches(`:focus-visible`)}catch{return!1}}function s(e,t){let n=t.target;!n||!o(n)||i(e)}function c(e){let t=e.currentTarget,n=e.relatedTarget;t&&n&&t.contains(n)||a()}function l(){r&&clearTimeout(r),n.value=null}function u(e){r&&clearTimeout(r),n.value=n.value===e?null:e}return(e,r)=>{let o=pr(`router-link`);return G(),Bi(`header`,$s,[K(`div`,ec,[q(o,{to:`/`,class:`site-header__logo-link`,"aria-label":`StockLift home`},{default:B(()=>[K(`img`,{src:L(As),alt:`StockLift`,class:`site-header__logo`,width:`379`,height:`58`},null,8,tc)]),_:1}),K(`nav`,nc,[q(o,{to:`/`,class:`site-header__link`},{default:B(()=>[...r[6]||=[J(`AI Investing Assistant`,-1)]]),_:1}),K(`div`,{class:`site-header__dropdown`,onMouseenter:r[1]||=e=>i(`learn`),onMouseleave:a,onFocusin:r[2]||=e=>s(`learn`,e),onFocusout:c},[K(`button`,{type:`button`,class:`site-header__link site-header__dropdown-toggle`,"aria-expanded":n.value===`learn`,"aria-controls":`learn-menu`,onClick:r[0]||=e=>u(`learn`)},[...r[7]||=[J(` Learn `,-1),K(`svg`,{width:`10`,height:`10`,viewBox:`0 0 16 11`,fill:`currentColor`,"aria-hidden":`true`},[K(`path`,{d:`M8 10.5L16 1.86193L14.7387 0.5L8 7.77613L1.26134 0.5L0 1.86193L8 10.5Z`})],-1)]],8,rc),Tn(K(`div`,ic,[q(o,{to:`/learn`,class:`site-header__menu-item`,onClick:l},{default:B(()=>[...r[8]||=[J(` Learn hub `,-1)]]),_:1}),(G(),Bi(U,null,vr(t,e=>q(o,{key:e.path,to:e.path,class:`site-header__menu-item`,onClick:l},{default:B(()=>[J(A(e.navLabel),1)]),_:2},1032,[`to`])),64))],512),[[Fa,n.value===`learn`]])],32),q(o,{to:`/blog`,class:`site-header__link`},{default:B(()=>[...r[9]||=[J(`Blog`,-1)]]),_:1}),K(`div`,{class:`site-header__dropdown`,onMouseenter:r[4]||=e=>i(`legal`),onMouseleave:a,onFocusin:r[5]||=e=>s(`legal`,e),onFocusout:c},[K(`button`,{type:`button`,class:`site-header__link site-header__dropdown-toggle`,"aria-expanded":n.value===`legal`,"aria-controls":`legal-menu`,onClick:r[3]||=e=>u(`legal`)},[...r[10]||=[J(` Legal `,-1),K(`svg`,{width:`10`,height:`10`,viewBox:`0 0 16 11`,fill:`currentColor`,"aria-hidden":`true`},[K(`path`,{d:`M8 10.5L16 1.86193L14.7387 0.5L8 7.77613L1.26134 0.5L0 1.86193L8 10.5Z`})],-1)]],8,ac),Tn(K(`div`,oc,[q(o,{to:`/privacy-policy`,class:`site-header__menu-item`,onClick:l},{default:B(()=>[...r[11]||=[J(` Privacy Policy `,-1)]]),_:1}),q(o,{to:`/terms-and-conditions`,class:`site-header__menu-item`,onClick:l},{default:B(()=>[...r[12]||=[J(` Terms & Conditions `,-1)]]),_:1})],512),[[Fa,n.value===`legal`]])],32),q(o,{to:`/contact-sales`,class:`site-header__link`},{default:B(()=>[...r[13]||=[J(`Contact Us`,-1)]]),_:1})])])])}}}),cc=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},lc=cc(sc,[[`__scopeId`,`data-v-08f0718a`]]),uc=`/assets/footer-logo-BaomyJDr.png`,dc=[{id:`investing-basics`,label:`Investing Basics`,description:`Beginner and foundational investing topics.`},{id:`stocks`,label:`Stocks`,description:`Stock research, valuation, and individual companies.`},{id:`etfs`,label:`ETFs`,description:`ETF comparisons, index investing, and fund selection.`},{id:`portfolio-management`,label:`Portfolio Management`,description:`Diversification, allocation, rebalancing, and construction.`},{id:`ai-investing`,label:`AI Investing`,description:`AI-assisted research, portfolio analysis, and limits of the tools.`},{id:`investing-strategies`,label:`Investing Strategies`,description:`Long-term approaches, growth and value, and timing questions.`}],fc=dc.map(e=>e.id);function pc(e){return fc.includes(e)}function mc(e){let t=dc.find(t=>
3t.id===e);if(!t)throw Error(`Unknown blog category: ${e}`);return t.label}var hc=`/blog`,Z={path:hc,title:`StockLift Investing Blog | Practical Investing Insights`,description:`Practical insights for smarter investing. Learn how to research stocks, build portfolios, compare ETFs, and use AI to make better-informed decisions.`,h1:`StockLift Investing Blog`,lede:`Practical insights for smarter investing. Learn how to research stocks, build portfolios, compare ETFs, understand markets, and use AI to make better-informed investment decisions.`,updated:`2026-09-03`},gc=`Articles for this section are being written to the same standard as the rest of stocklift.co: substantial, sourced, and useful even if you never open the app. Nothing is published here until it meets that bar. Check back as the first cluster goes live, or browse the Learn hub for tools and guides that are already available.`,_c=`https://apps.apple.com/us/app/stocklift/id1553250387`,vc=`[email protected]`,yc=`+1 (201) 564-0172`,bc=`+12015640172`,xc=[`StockLift Incorporated`,`651 N. Broad St`,`Middletown, DE 19709`],Sc=`https://www.stocklift.co`,Cc=`StockLift`,wc=`${Sc}/og-image.png`,Tc=`${Sc}/favicon.png`,Ec=`#116dff`,Dc=`Your AI Investing Assistant analyzes every idea, flags risk, and surfaces deep portfolio insights — so you can invest with clarity through a new or existing account.`,Oc={class:`site-footer`},kc={class:`container`},Ac={class:`site-footer__top`},jc=[`src`],Mc={class:`site-footer__contact`},Nc=[`href`],Pc=[`href`],Fc={class:`site-footer__learn`,"aria-label":`Learn, tools, guides, and blog`},Ic={class:`site-footer__learn-label`},Lc={class:`site-footer__learn-column`},Rc={class:`site-footer__disclaimer`,"aria-label":`Disclaimer`},zc=[`href`],Bc=[`href`],Vc={class:`site-footer__copyright`},Hc=cc(Vn({__name:`SiteFooter`,setup(e){let t=new Date().getFullYear(),n=[{title:`Learn`,pages:[Fs,...Ys(`tool`)]},{title:`Product`,pages:Ys(`feature`)},{title:`Guides`,pages:Ys(`guide`)}],r=[{path:hc,label:`Investing Blog`},...dc.map(e=>({path:`${hc}#${e.id}`,label:e.label}))];return(e,i)=>{let a=pr(`router-link`);return G(),Bi(`footer`,Oc,[K(`div`,kc,[K(`div`,Ac,[K(`img`,{src:L(uc),alt:`StockLift logo`,class:`site-footer__logo`,width:`145`,height:`98`},null,8,jc),K(`address`,Mc,[K(`a`,{href:`mailto:${L(vc)}`},A(L(vc)),9,Nc),K(`a`,{href:`tel:${L(bc)}`},A(L(yc)),9,Pc),K(`p`,null,[(G(!0),Bi(U,null,vr(L(xc),e=>(G(),Bi(`span`,{key:e,class:`site-footer__address-line`},A(e),1))),128))])])]),K(`nav`,Fc,[(G(),Bi(U,null,vr(n,e=>K(`div`,{key:e.title,class:`site-footer__learn-column`},[K(`p`,Ic,A(e.title),1),K(`ul`,null,[(G(!0),Bi(U,null,vr(e.pages,e=>(G(),Bi(`li`,{key:e.path},[q(a,{to:e.path},{default:B(()=>[J(A(e.navLabel),1)]),_:2},1032,[`to`])]))),128))])])),64)),K(`div`,Lc,[i[0]||=K(`p`,{class:`site-footer__learn-label`},`Blog`,-1),K(`ul`,null,[(G(),Bi(U,null,vr(r,e=>K(`li`,{key:e.path},[q(a,{to:e.path},{default:B(()=>[J(A(e.label),1)]),_:2},1032,[`to`])])),64))])])]),K(`section`,Rc,[i[5]||=K(`h2`,null,`Disclaimer`,-1),K(`p`,null,[i[1]||=J(` If you require any more information or have any questions about our site's disclaimer, please feel free to contact us by email at `,-1),K(`a`,{href:`mailto:${L(vc)}`},A(L(vc)),9,zc),i[2]||=J(`. All the information on this website - stocklift.co - is published in good faith and for general information purpose only. stocklift.co does not make any warranties about the completeness, reliability and accuracy of this information. Any action you take upon the information you find on this website (stocklift.co), is strictly at your own risk. stocklift.co will not be liable for any losses and/or damages in connection with the use of our website. From our website, you can visit other websites `,-1)]),i[6]||=K(`p`,null,` 1. No Financial Advice: StockLift provides access to financial advisors and portfolio tracking and analysis tools. However, the information provided on our platform should not be considered as personalized financial advice. We do not endorse or recommend specific investments, financial strategies, or actions. Users are advised to consult with qualified financial professionals before making any investment decisions. `,-1),i[7]||=K(`p`,null,` 2. Accuracy of Information: While we strive to ensure the accuracy and reliability of the information presented on StockLift, we cannot guarantee the completeness, timeliness, or correctness of the data, analysis, or advice available. Financial markets are dynamic and subject to rapid changes, and our information may not always reflect the most current developments. `,-1),i[8]||=K(`p`,null,` 3. Investment Risks: All investments carry inherent risks, and past performance is not indicative of future results. StockLift does not assume responsibility for any financial losses or unfavorable outcomes that may arise from using the information provided on our platform. Users should conduct their own research and consider their risk tolerance before making investment decisions. `,-1),i[9]||=K(`p`,null,` 4. User Responsibility: Users are solely responsible for their actions and decisions based on the information obtained from StockLift. We do not accept liability for any direct, indirect, incidental, consequential, or special damages arising from the use of our platform or reliance on the information presented. `,-1),i[10]||=K(`p`,null,` 5. Third-Party Links: StockLift may provide links to third-party websites or resources for informational purposes. These links are not endorsements of the content, products, or services offered by those third parties. We do not guarantee the accuracy or safety of external links and disclaim responsibility for any consequences resulting from their use. `,-1),i[11]||=K(`p`,null,` 6. No Investment through StockLift's App: StockLift's platform does not facilitate direct investment transactions. We do not offer investment products, and users cannot invest directly through our app. Any investment decisions made are independent of StockLift's platform. `,-1),i[12]||=K(`p`,null,` 7. Availability of Services: While we strive to maintain the availability of our services, StockLift may experience downtime, technical issues, or interruptions beyond our control. We do not accept liability for any losses or inconveniences arising from service disruptions. `,-1),i[13]||=K(`p`,null,` 8. Changes to Disclaimer: StockLift reserves the right to modify or update this disclaimer at any time without prior notice. It is the user's responsibility to review this disclaimer peri
3odically for any changes that may affect their use of our platform. `,-1),i[14]||=K(`p`,null,` By accessing and using the StockLift website, you acknowledge that you have read, understood, and agreed to the terms and conditions outlined in this disclaimer. If you do not agree with any part of this disclaimer, please refrain from using our platform. `,-1),K(`p`,null,[i[3]||=J(` If you have any questions or concerns about this disclaimer, please contact us at `,-1),K(`a`,{href:`mailto:${L(vc)}`},A(L(vc)),9,Bc),i[4]||=J(`. `,-1)]),i[15]||=K(`p`,null,`Consent: By using our website, you hereby consent to our disclaimer and agree to its terms.`,-1),i[16]||=K(`p`,null,` Last updated: August 29th, 2025. Should we update, amend or make any changes to this document, those changes will be prominently posted here `,-1)]),K(`p`,Vc,`© `+A(L(t))+` by StockLift Incorporated`,1)])])}}}),[[`__scopeId`,`data-v-dd4168af`]]),Uc={class:`app-shell`},Wc={id:`main`},Gc=cc(Vn({__name:`App`,setup(e){return(e,t)=>{let n=pr(`router-view`);return G(),Bi(`div`,Uc,[t[0]||=K(`a`,{class:`skip-link`,href:`#main`},`Skip to content`,-1),q(lc),K(`main`,Wc,[q(n)]),q(Hc)])}}}),[[`__scopeId`,`data-v-51392479`]]),Kc=`G-4XM9GY5K3S`,qc=`AW-10835517931`,Jc=new Set([`stocklift-web-dev.web.app`,`stocklift-web-dev.firebaseapp.com`]),Yc=new Set([...new Set([`stocklift-web-prod.web.app`,`stocklift-web-prod.firebaseapp.com`,`stocklift.co`,`www.stocklift.co`]),...Jc]),Xc=`apps.apple.com`;function Zc(e){return Yc.has(e)}function Qc(){if(typeof navigator<`u`&&navigator.webdriver)return!0;if(typeof window>`u`)return!1;try{return new URLSearchParams(window.location.search).get(`prerender`)===`1`}catch{return!1}}var $c=!1,el=null;function tl(e){return e===`true`||e!==`false`&&null}function nl(e=window.location.hostname){let t=Kc,n=qc,r=tl(void 0),i=tl(void 0),a=Zc(e),o=r??a,s=i??Jc.has(e);return{gaMeasurementId:t,googleAdsId:n,enabled:o&&!0,debugMode:s}}function rl(e,...t){window.gtag&&window.gtag(e,...t)}function il(e){let t=document.createElement(`script`);t.async=!0,t.src=`https://www.googletagmanager.com/gtag/js?id=${encodeURIComponent(e)}`,document.head.appendChild(t)}function al(e){return[e.gaMeasurementId,e.googleAdsId].filter(e=>e!==``)}function ol(e,t=nl()){if(Qc()||$c||!t.enabled||al(t).length===0)return;$c=!0,el=t,window.dataLayer=window.dataLayer??[],window.gtag=window.gtag??function(){window.dataLayer?.push(arguments)},rl(`consent`,`default`,{ad_storage:`granted`,ad_user_data:`granted`,ad_personalization:`granted`,analytics_storage:`granted`,functionality_storage:`granted`,personalization_storage:`granted`,security_storage:`granted`}),rl(`js`,new Date);let n=al(t);for(let e of n)rl(`config`,e,{send_page_view:!1,...t.debugMode?{debug_mode:!0,traffic_type:`dev`}:{}});il(n[0]),e.afterEach(e=>{if(typeof e.meta.robots==`string`&&e.meta.robots.includes(`noindex`))return;let t=typeof e.meta.title==`string`?e.meta.title:document.title;ll(e.fullPath,t)}),document.addEventListener(`click`,ml,{capture:!0})}function sl(){return $c&&el!==null&&el.enabled}function cl(e,t={}){sl()&&rl(`event`,e,t)}function ll(e,t){cl(`page_view`,{page_path:e,page_title:t})}function ul(e){cl(`app_store_click`,{placement:e,link_domain:Xc})}function dl(e){cl(`generate_lead`,{form_location:e})}function fl(e){cl(`outbound_link`,{link_url:e,link_domain:pl(e)})}function pl(e){try{return new URL(e).hostname}catch{return``}}function ml(e){let t=e.target;if(!(t instanceof Element))return;let n=t.closest(`a[href]`);if(!(n instanceof HTMLAnchorElement))return;let r=n.href;if(!/^https?:/i.test(r))return;let i=pl(r);if(i!==``&&i!==window.location.hostname){if(i===Xc){ul(n.dataset.analyticsPlacement??n.closest(`[data-analytics-section]`)?.dataset.analyticsSection??`unknown`);return}fl(r)}}var hl=`${Sc}/#organization`,gl=`${Sc}/#website`;function Q(e){if(e.startsWith(`http://`)||e.startsWith(`https://`))return e;let t=e.startsWith(`/`)?e:`/${e}`;return t===`/`?Sc:`${Sc}${t}`}function _l(e){return e.replace(/\.webp$/i,`-og.webp`)}function vl(e){return e.replace(/\.webp$/i,`-thumb.webp`)}function yl(e){return`${vl(e)} 640w, ${e} 1920w`}
3var bl=`(max-width: 720px) 100vw, min(1120px, 100vw)`;function xl(e){return{title:e.title,description:e.description,canonicalPath:e.canonicalPath,robots:e.robots??`index, follow`,ogType:e.ogType??`website`,ogImage:e.ogImage??wc,ogImageAlt:e.ogImageAlt??`StockLift — AI investing assistant and portfolio analysis`,ogImageWidth:e.ogImageWidth??1200,ogImageHeight:e.ogImageHeight??630,ogImageType:e.ogImageType??`image/png`}}function Sl(){let[,e,t]=xc,[n,r]=(t??``).split(`,`).map(e=>e.trim()),[i,a]=(r??``).split(/\s+/);return{"@context":`https://schema.org`,"@type":`Organization`,"@id":hl,name:Cc,legalName:xc[0],url:Sc,logo:Tc,email:vc,telephone:bc,sameAs:[_c],address:{"@type":`PostalAddress`,streetAddress:e,addressLocality:n,addressRegion:i,postalCode:a,addressCountry:`US`},contactPoint:{"@type":`ContactPoint`,contactType:`customer support`,email:vc,telephone:bc,areaServed:`US`,availableLanguage:`en`}}}function Cl(){return{"@context":`https://schema.org`,"@type":`WebSite`,"@id":gl,name:Cc,url:Sc,description:Dc,inLanguage:`en-US`,publisher:{"@id":hl}}}function wl(){return{"@context":`https://schema.org`,"@type":`SoftwareApplication`,name:Cc,description:Dc,operatingSystem:`iOS`,applicationCategory:`FinanceApplication`,offers:{"@type":`Offer`,price:0,priceCurrency:`USD`},downloadUrl:_c,url:Sc,publisher:{"@id":hl}}}function Tl(e){return{"@context":`https://schema.org`,"@type":`BreadcrumbList`,itemListElement:e.map((e,t)=>({"@type":`ListItem`,position:t+1,name:e.name,item:Q(e.path)}))}}function El(e){return{"@context":`https://schema.org`,"@type":`FAQPage`,mainEntity:e.map(e=>({"@type":`Question`,name:e.question,acceptedAnswer:{"@type":`Answer`,text:e.answer}}))}}function Dl(e){return{"@context":`https://schema.org`,"@type":`WebApplication`,name:e.name,description:e.description,url:Q(e.path),applicationCategory:`FinanceApplication`,operatingSystem:`Web`,browserRequirements:`Requires JavaScript`,isAccessibleForFree:!0,offers:{"@type":`Offer`,price:0,priceCurrency:`USD`},publisher:{"@id":hl}}}function Ol(e){return{"@context":`https://schema.org`,"@type":`Article`,"@id":`${Q(e.path)}#article`,headline:e.h1,description:e.description,url:Q(e.path),inLanguage:`en-US`,dateModified:e.reviewed,author:{"@id":hl},publisher:{"@id":hl},isPartOf:{"@id":gl},mainEntityOfPage:Q(e.path)}}function kl(e){return{...Al({title:e.title,description:e.description,path:e.path}),dateModified:e.reviewed,...e.sources?.length?{citation:e.sources.map(e=>e.url)}:{}}}function Al(e){return{"@context":`https://schema.org`,"@type":e.type??`WebPage`,"@id":`${Q(e.path)}#webpage`,name:e.title,description:e.description,url:Q(e.path),inLanguage:`en-US`,isPartOf:{"@id":gl},publisher:{"@id":hl}}}function jl(){return[{...Al({title:Z.title,description:Z.description,path:Z.path}),dateModified:Z.updated},Tl([{name:`Home`,path:`/`},{name:`Blog`,path:Z.path}]),{"@context":`https://schema.org`,"@type":`Blog`,name:Z.h1,description:Z.description,url:Q(Z.path),inLanguage:`en-US`,publisher:{"@id":hl},isPartOf:{"@id":gl}}]}function Ml(e){let t=[{...Al({title:e.title,description:e.description,path:e.path}),datePublished:e.published,dateModified:e.updated},Tl([{name:`Home`,path:`/`},{name:`Blog`,path:`/blog`},{name:e.h1,path:e.path}]),{"@context":`https://schema.org`,"@type":`BlogPosting`,"@id":`${Q(e.path)}#article`,headline:e.h1,description:e.description,url:Q(e.path),inLanguage:`en-US`,datePublished:e.published,dateModified:e.updated,author:{"@id":hl},publisher:{"@id":hl},isPartOf:{"@id":gl},mainEntityOfPage:Q(e.path),...e.featuredImage?{image:[Q(e.featuredImage),Q(_l(e.featuredImage))]}:{}}];if(e.sources?.length){let[n,...r]=t;return n?[{...n,citation:e.sources.map(e=>e.url)},...r]:t}return t}function Nl(e){let t=[{name:`Home`,path:`/`}];e.path!==`/learn`&&t.push({name:`Learn`,path:`/learn`}),t.push({name:e.h1,path:e.path});let n=[kl(e),Tl(t)];return e.kind===`guide`&&n.push(Ol(e)),e.kind===`tool`&&n.push(Dl({name:e.h1,description:e.description,path:e.path})),e.faqs.length>0&&n.push(El(e.faqs)),n}function Pl(e){return JSON.stringify(e).replace(/</g,`\\u003c`)}function Fl(e,t={}){let n=Q(e.canonicalPath),r=[];t.jsonLd&&r.push(Sl(),Cl(),wl()),t.structuredData?.length&&r.push(...t.structuredData);let i=r.length>0?[{type:`application/ld+json`,innerHTML:Pl(r)}]:[];return{title:e.title,meta:[{name:`description`,content:e.description},{name:`robots`,content:e.robots},{name:`theme-color`,content:Ec}
3,{property:`og:title`,content:e.title},{property:`og:description`,content:e.description},{property:`og:url`,content:n},{property:`og:site_name`,content:Cc},{property:`og:type`,content:e.ogType},{property:`og:image`,content:Q(e.ogImage)},{property:`og:image:width`,content:String(e.ogImageWidth)},{property:`og:image:height`,content:String(e.ogImageHeight)},{property:`og:image:type`,content:e.ogImageType},{property:`og:image:alt`,content:e.ogImageAlt},{property:`og:locale`,content:`en_US`},{name:`twitter:card`,content:`summary_large_image`},{name:`twitter:title`,content:e.title},{name:`twitter:description`,content:e.description},{name:`twitter:image`,content:Q(e.ogImage)},{name:`twitter:image:alt`,content:e.ogImageAlt}],link:[{rel:`canonical`,href:n}],script:i}}function Il(e,t){let n=null;e.afterEach(e=>{let r=xl({title:typeof e.meta.title==`string`?e.meta.title:Cc,description:typeof e.meta.description==`string`?e.meta.description:Dc,canonicalPath:typeof e.meta.canonicalPath==`string`?e.meta.canonicalPath:e.path===`/`?`/`:e.path,robots:typeof e.meta.robots==`string`?e.meta.robots:`index, follow`,ogType:typeof e.meta.ogType==`string`?e.meta.ogType:`website`,ogImage:typeof e.meta.ogImage==`string`?e.meta.ogImage:void 0,ogImageAlt:typeof e.meta.ogImageAlt==`string`?e.meta.ogImageAlt:void 0,ogImageWidth:typeof e.meta.ogImageWidth==`number`?e.meta.ogImageWidth:void 0,ogImageHeight:typeof e.meta.ogImageHeight==`number`?e.meta.ogImageHeight:void 0,ogImageType:typeof e.meta.ogImageType==`string`?e.meta.ogImageType:void 0}),i=Array.isArray(e.meta.structuredData)?e.meta.structuredData:void 0;n?.dispose(),n=t.push(Fl(r,{jsonLd:e.meta.jsonLd===!0,structuredData:i})),document.documentElement.dataset.prerender=`ready`})}var Ll=e=>e.startsWith(`/`);function Rl(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function zl(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&Rl(e.default)}var $=Object.assign;function Bl(e,t){let n={};for(let r in t){let i=t[r];n[r]=Hl(i)?i.map(e):e(i)}return n}var Vl=()=>{},Hl=Array.isArray;function Ul(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var Wl=Symbol(``);function Gl(e,t){return $(Error(),{type:e,[Wl]:!0},t)}function Kl(e,t){return e instanceof Error&&Wl in e&&(t==null||!!(e.type&t))}var ql=Symbol(``),Jl=Symbol(``),Yl=Symbol(``),Xl=Symbol(``),Zl=Symbol(``);function Ql(){return On(Yl)}function $l(e){return On(Xl)}var eu=typeof document<`u`,tu=/#/g,nu=/&/g,ru=/\//g,iu=/=/g,au=/\?/g,ou=/\+/g,su=/%5B/g,cu=/%5D/g,lu=/%5E/g,uu=/%60/g,du=/%7B/g,fu=/%7C/g,pu=/%7D/g,mu=/%20/g;function hu(e){return e==null?``:encodeURI(``+e).replace(fu,`|`).replace(su,`[`).replace(cu,`]`)}function gu(e){return hu(e).replace(du,`{`).replace(pu,`}`).replace(lu,`^`)}function _u(e){return hu(e).replace(ou,`%2B`).replace(mu,`+`).replace(tu,`%23`).replace(nu,`%26`).replace(uu,"`").replace(du,`{`).replace(pu,`}`).replace(lu,`^`)}function vu(e){return _u(e).replace(iu,`%3D`)}function yu(e){return hu(e).replace(tu,`%23`).replace(au,`%3F`)}function bu(e){return yu(e).replace(ru,`%2F`)}function xu(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var Su=/\/$/,Cu=e=>e.replace(Su,``);function wu(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=Mu(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:xu(o)}}function Tu(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function Eu(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function Du(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&Ou(t.matched[r],n.matched[i])&&ku(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Ou(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function ku(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!Au(e[n],t[n]))return!1;return!0}function Au(e,t){return Hl(e)?ju(e,t):Hl(t)?ju(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function ju(e,t){return Hl(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function Mu(e,t){if(Ll(e))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o<r.length;o++)if(s=r[o],s!==`.`){if(s===`..`)a>1&&a--;else break}return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var Nu={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function Pu(e){if(!e){if(eu){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`}return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),Cu(e)}var Fu=/^[^#]+#/;function Iu(e,t){return e.replace(Fu,`#`)+t}function Lu(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var Ru=()=>history.scrollRestoration===`manual`?{left:window.scrollX,top:window.scrollY}:null;function zu(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=Lu(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}
vendor: 5,027 bytes, line 3
3function Bu(e,t){return(history.state?history.state.position-t:-1)+e}var Vu=new Map;function Hu(e){Vu.set(e,Ru())}function Uu(e){let t=Vu.get(e);return Vu.delete(e),t}function Wu(e){return typeof e==`string`||e&&typeof e==`object`}function Gu(e){return typeof e==`string`||typeof e==`symbol`}function Ku(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace(ou,` `),i=r.indexOf(`=`),a=xu(i<0?r:r.slice(0,i)),o=i<0?null:xu(r.slice(i+1));if(a in t){let e=t[a];Hl(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function qu(e){let t=``;for(let n in e){let r=e[n];if(n=vu(n),r==null){r!==void 0&&(t+=(t.length?`&`:``)+n);continue}(Hl(r)?r.map(e=>e&&_u(e)):[r&&_u(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Ju(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=Hl(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function Yu(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Xu(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(Gl(4,{from:n,to:t})):e instanceof Error?c(e):Wu(e)?c(Gl(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Zu(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e])){if(Rl(s)){let c=(s.__vccOpts||s)[t];c&&a.push(Xu(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=zl(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&Xu(c,n,r,o,e,i)()}))}}}return a}function Qu(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>Ou(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>Ou(e,s))||i.push(s))}return[n,r,i]}var $u=()=>location.protocol+`//`+location.host;function ed(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),Eu(n,``)}return Eu(n,e)+r+i}function td(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=ed(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){let{history:e}=window;e.state&&e.replaceState($({},e.state,{scroll:Ru()}),``)}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),{pauseListeners:c,listen:l,destroy:d}}function nd(e,t,n,r=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:null}}function rd(e){let{history:t,location:n}=window,r={value:ed(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:$u()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,$({},t.state,nd(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=$({},i.value,t.state,{forward:e,scroll:Ru()});a(o.current,o,!0),a(e,$({},nd(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function id(e){e=Pu(e);let t=rd(e),n=td(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=$({location:``,base:e,go:r,createHref:Iu.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var ad={type:0,value:``},od=/[a-zA-Z0-9_]/;function sd(e){if(!e)return[[]];if(e===`/`)return[[ad]];if(!Ll(e))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;s<e.length;)switch(c=e[s++],n){case 0:c===`\\`?(r=n,n=4):c===`/`?(l&&d(),o()):c===`:`?(
vendor: 4,377 bytes, line 3
3d(),n=1):f();break;case 4:f(),n=r;break;case 1:c===`(`?n=2:od.test(c)?f():(d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--);break;case 2:c===`)`?u[u.length-1]==`\\`?u=u.slice(0,-1)+c:n=3:u+=c;break;case 3:d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--,u=``;break;default:t(`Unknown state`)}return n===2&&t(`Unfinished custom RegExp for param "${l}"`),d(),o(),i}var cd=`[^/]+?`,ld={sensitive:!1,strict:!1,start:!0,end:!0},ud=/[.+*?^${}()[\]/\\]/g;function dd(e,t){let n=$({},ld,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[90];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=40+(n.sensitive?.25:0);if(o.type===0)r||(i+=`/`),i+=o.value.replace(ud,`\\$&`),s+=40;else if(o.type===1){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||cd;if(u!==cd){s+=10;try{RegExp(`(${u})`)}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=20,c&&(s+=-8),n&&(s+=-20),u===`.*`&&(s+=-50)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=.7000000000000001}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function s(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function c(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===0)n+=e.value;else if(e.type===1){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(Hl(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=Hl(c)?c.join(`/`):c;if(!l){if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`)}n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:s,stringify:c}}function fd(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===80?-1:1:e.length>t.length?t.length===1&&t[0]===80?1:-1:0}function pd(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=fd(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if(md(r))return 1;if(md(i))return-1}return i.length-r.length}function md(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var hd={strict:!1,end:!0,sensitive:!1};function gd(e,t,n){let r=$(dd(sd(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function _d(e,t){let n=[],r=new Map;t=Ul(hd,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=yd(e);s.aliasOf=r&&r.record;let l=Ul(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(yd($({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&!Ll(u)){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=gd(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!xd(d)&&o(e.name)),Td(d)&&c(d),s.children){let e=s.children;for(let t=0;t<e.length;t++)a(e[t],d,r&&r.children[t])}r||=d}return f?()=>{o(f)}:Vl}function o(e){if(Gu(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Cd(e,n);n.splice(t,0,e),e.record.name&&!xd(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw Gl(1,{location:e});s=i.record.name,a=$(vd(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&vd(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw Gl(1,{location:e,currentLocation:t});s=i.record.name,a=$({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:Sd(c)}}
vendor: 5,631 bytes, line 3
3e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function vd(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function yd(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:bd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function bd(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function xd(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Sd(e){return e.reduce((e,t)=>$(e,t.meta),{})}function Cd(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;pd(e,t[i])<0?r=i:n=i+1}let i=wd(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function wd(e){let t=e;for(;t=t.parent;)if(Td(t)&&pd(e,t)===0)return t}function Td({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Ed(e){let t=On(Yl),n=On(Xl),r=ba(()=>{let n=L(e.to);return t.resolve(n)}),i=ba(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(Ou.bind(null,i));if(o>-1)return o;let s=jd(e[t-2]);return t>1&&jd(i)===s&&a[a.length-1].path!==s?a.findIndex(Ou.bind(null,e[t-2])):o}),a=ba(()=>i.value>-1&&Ad(n.params,r.value.params)),o=ba(()=>i.value>-1&&i.value===n.matched.length-1&&ku(n.params,r.value.params));function s(n={}){if(kd(n)){let n=t[L(e.replace)?`replace`:`push`](L(e.to)).catch(Vl);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:ba(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function Dd(e){return e.length===1?e[0]:e}var Od=Vn({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:Ed,setup(e,{slots:t}){let n=Nt(Ed(e)),{options:r}=On(Yl),i=ba(()=>({[Md(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[Md(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&Dd(t.default(n));return e.custom?r:xa(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function kd(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Ad(e,t){for(let n in t){let r=t[n],i=e[n];if(Hl(r)){if(!Hl(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}else if(r!==i)return!1}return!0}function jd(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var Md=(e,t,n)=>e??t??n,Nd=Vn({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){let r=On(Zl),i=ba(()=>e.route||r.value),a=On(Jl,0),o=ba(()=>{let e=L(a),{matched:t}=i.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),s=ba(()=>i.value.matched[o.value]);Dn(Jl,ba(()=>o.value+1)),Dn(ql,s),Dn(Zl,i);let c=Ut();return jn(()=>[c.value,s.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!Ou(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let r=i.value,a=e.name,o=s.value,l=o&&o.components[a];if(!l)return Pd(n.default,{Component:l,route:r});let u=o.props[a],d=xa(l,$({},u?u===!0?r.params:typeof u==`function`?u(r):u:null,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[a]=null)},ref:c}));return Pd(n.default,{Component:d,route:r})||d}}});function Pd(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var Fd=Nd;function Id(e){let t=_d(e.routes,e),n=e.parseQuery||Ku,r=e.stringifyQuery||qu,i=e.history,a=Yu(),o=Yu(),s=Yu(),c=Wt(Nu),l=Wt(0),u=Nu;eu&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=Bl.bind(null,e=>``+e),f=Bl.bind(null,bu),p=Bl.bind(null,xu);function m(e,n){let r,i;Gu(e)?(r=t.getRecordMatcher(e),i=n):i=e;let a=t.addRoute(i,r);return l.value++,()=>{a(),l.value++}}function h(e){let n=t.getRecordMatcher(e);n&&(t.removeRoute(n),l.value++)}function g(){t.clearRoutes(),l.value++}function _(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,a){if(l.value,typeof e==`string`){a||=e.startsWith(`/`)?Nu:c.value;let r=wu(n,e,a.path),o=t.resolve({path:r.path},a),s=i.createHref(r.fullPath);return $(r,o,{params:p(o.params),redirectedFrom:void 0,href:s})}a=$({},a||(e.path!=null&&e.path.startsWith(`/`)&&!(`name`in e&&e.name)?Nu:c.value));let o;if(e.path!=null)o=$({},e,{path:wu(n,e.path,a.path).path});else{let t=$({},e.params);for(let e in t)t[e]??delete t[e];o=$({},e,{params:f(t)}),a.params=f(a.params)}let s=t.resolve(o,a),u=e.hash||``;s.params=d(p(s.params));let m=Tu(r,$({},e,{hash:gu(u),path:s.path})),h=i.createHref(m);return $({fullPath:m,hash:u,query:r===qu?Ju(e.query):e.query||{}},s,{redirectedFrom:void 0,href:h})}function b(e){return typeof e==`string`?wu(n,e,c.value.path):$({},e)}
3function x(e,t){if(u!==e)return Gl(8,{from:t,to:e})}function S(e){return ee(e)}function C(e){return S($(b(e),{replace:!0}))}function w(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),$({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function ee(e,t){let n=u=y(e),i=c.value,a=e.state,o=e.force,s=e.replace===!0,l=w(n,i);if(l)return ee($(b(l),{state:typeof l==`object`?$({},a,l.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&Du(r,i,n)&&(f=Gl(16,{to:d,from:i}),ue(i,i,!0,!1)),(f?Promise.resolve(f):T(d,i)).catch(e=>Kl(e)?Kl(e,2)?e:le(e):se(e,d,i)).then(e=>{if(e){if(Kl(e,2))return ee($({replace:s},b(e.to),{state:typeof e.to==`object`?$({},a,e.to.state):a,force:o}),t||d)}else e=E(d,i,!0,s,a);return re(d,i,e),e})}function te(e,t){let n=x(e,t);return n?Promise.reject(n):Promise.resolve()}function ne(e){let t=pe.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function T(e,t){let n,[r,i,s]=Qu(e,t);n=Zu(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(Xu(r,e,t))});let c=te.bind(null,e,t);return n.push(c),k(n).then(()=>{n=[];for(let r of a.list())n.push(Xu(r,e,t));return n.push(c),k(n)}).then(()=>{n=Zu(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(Xu(r,e,t))});return n.push(c),k(n)}).then(()=>{n=[];for(let r of s)if(r.beforeEnter){if(Hl(r.beforeEnter))for(let i of r.beforeEnter)n.push(Xu(i,e,t));else n.push(Xu(r.beforeEnter,e,t))}return n.push(c),k(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Zu(s,`beforeRouteEnter`,e,t,ne),n.push(c),k(n))).then(()=>{n=[];for(let r of o.list())n.push(Xu(r,e,t));return n.push(c),k(n)}).catch(e=>Kl(e,8)?e:Promise.reject(e))}function re(e,t,n){s.list().forEach(r=>ne(()=>r(e,t,n)))}function E(e,t,n,r,a){let o=x(e,t);if(o)return o;let s=t===Nu,l=eu?history.state:{};n&&(r||s?i.replace(e.fullPath,$({scroll:s&&l&&l.scroll},a)):i.push(e.fullPath,a)),c.value=e,ue(e,t,n,s),le()}let ie;function ae(){ie||=i.listen((e,t,n)=>{if(!me.listening)return;let r=y(e),a=w(r,me.currentRoute.value);if(a){ee($(a,{replace:!0,force:!0}),r).catch(Vl);return}u=r;let o=c.value;eu&&n.delta&&Hu(Bu(o.fullPath,n.delta)),T(r,o).catch(e=>Kl(e,12)?e:Kl(e,2)?(ee($(b(e.to),{force:!0}),r).then(e=>{Kl(e,20)&&!n.delta&&n.type===`pop`&&i.go(-1,!1)}).catch(Vl),Promise.reject()):(n.delta&&i.go(-n.delta,!1),se(e,r,o))).then(e=>{e||=E(r,o,!1),e&&(n.delta&&!Kl(e,8)?i.go(-n.delta,!1):n.type===`pop`&&Kl(e,20)&&i.go(-1,!1)),re(r,o,e)}).catch(Vl)})}let D=Yu(),oe=Yu(),O;function se(e,t,n){le(e);let r=oe.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function ce(){return O&&c.value!==Nu?Promise.resolve():new Promise((e,t)=>{D.add([e,t])})}function le(e){return O||(O=!e,ae(),D.list().forEach(([t,n])=>e?n(e):t()),D.reset()),e}function ue(t,n,r,i){let{scrollBehavior:a}=e;if(!eu||!a)return Promise.resolve();let o=!r&&Uu(Bu(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return mn().then(()=>a(t,n,o)).then(e=>t===c.value&&e&&zu(e)).catch(e=>t===c.value&&se(e,t,n))}let de=e=>i.go(e),fe,pe=new Set,me={currentRoute:c,listening:!0,addRoute:m,removeRoute:h,clearRoutes:g,hasRoute:v,getRoutes:_,resolve:y,options:e,push:S,replace:C,go:de,back:()=>de(-1),forward:()=>de(1),beforeEach:a.add,beforeResolve:o.add,afterEach:s.add,onError:oe.add,isReady:ce,install(e){e.component(`RouterLink`,Od),e.component(`RouterView`,Fd),e.config.globalProperties.$router=me,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>L(c)}),eu&&!fe&&c.value===Nu&&(fe=!0,S(i.location).catch(e=>{}));let t={};for(let e in Nu)Object.defineProperty(t,e,{get:()=>c.value[e],enumerable:!0});e.provide(Yl,me),e.provide(Xl,Pt(t)),e.provide(Zl,c);let n=e.unmount;pe.add(e),e.unmount=function(){pe.delete(e),pe.size<1&&(u=Nu,ie&&ie(),ie=null,c.value=Nu,fe=!1,O=!1),n()}}};function k(e){return e.reduce((e,t)=>e.then(()=>ne(t)),Promise.resolve())}return me}var Ld=`modulepreload`,Rd=function(e){return`/`+e},zd={},Bd=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Rd(t,n),t=s(t),t in zd)return;zd[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:Ld,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n
3)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};function Vd(){return qs().map(e=>{let t=e.kind===`hub`?()=>Bd(()=>import(`./LearnHubView-BC4J0MwL.js`),__vite__mapDeps([0,1,2,3])):e.kind===`tool`?()=>Bd(()=>import(`./ToolPageView-Dh-RQM-4.js`),__vite__mapDeps([4,5,6,7,1,2,8])):()=>Bd(()=>import(`./LandingPageView-DimuR5-x.js`),__vite__mapDeps([9,5,6,7,1,2,10]));return{path:e.path,name:`landing-${e.kind}-${e.slug}`,component:t,meta:{title:e.title,description:e.description,canonicalPath:e.path,ogType:e.kind===`guide`?`article`:`website`,structuredData:Nl(e)}}})}function Hd(e){return{path:e.path,name:e.name,component:e.component,meta:{title:e.title,description:e.description,canonicalPath:e.path,structuredData:[Al({title:e.title,description:e.description,path:e.path,type:e.schemaType})]}}}var Ud=`Page Not Found | StockLift`,Wd=`The page you requested could not be found on stocklift.co.`;async function Gd(e){let t=e.params.slug,n=typeof t==`string`?t:Array.isArray(t)?t[0]??``:``;if(!n)return{name:`catch-all`};let{getBlogArticle:r}=await Bd(async()=>{let{getBlogArticle:e}=await import(`./blog-Dk8znfHo.js`).then(e=>e.r);return{getBlogArticle:e}},__vite__mapDeps([11,6])),i=r(n);return i?(e.meta.title=i.title,e.meta.description=i.description,e.meta.canonicalPath=i.path,e.meta.ogType=`article`,e.meta.robots=`index, follow`,i.featuredImage?(e.meta.ogImage=_l(i.featuredImage),e.meta.ogImageAlt=i.featuredImageAlt||i.h1,e.meta.ogImageWidth=1200,e.meta.ogImageHeight=630,e.meta.ogImageType=`image/webp`):(e.meta.ogImage=void 0,e.meta.ogImageAlt=void 0,e.meta.ogImageWidth=void 0,e.meta.ogImageHeight=void 0,e.meta.ogImageType=void 0),e.meta.structuredData=Ml(i),!0):(e.meta.title=Ud,e.meta.description=Wd,e.meta.canonicalPath=`/404`,e.meta.robots=`noindex, follow`,e.meta.ogType=`website`,e.meta.ogImage=void 0,e.meta.ogImageAlt=void 0,e.meta.ogImageWidth=void 0,e.meta.ogImageHeight=void 0,e.meta.ogImageType=void 0,e.meta.structuredData=void 0,!0)}function Kd(){return[{path:Z.path,name:`blog-hub`,component:()=>Bd(()=>import(`./BlogHubView-bUR0iwvO.js`),__vite__mapDeps([12,11,6,13])),meta:{title:Z.title,description:Z.description,canonicalPath:Z.path,ogType:`website`,structuredData:jl()}},{path:`/blog/:slug`,name:`blog-article`,component:()=>Bd(()=>import(`./BlogArticleView-pqjezoTp.js`),__vite__mapDeps([14,11,6,5,7,15])),props:!0,beforeEnter:Gd,meta:{title:`StockLift Investing Blog`,description:Z.description,canonicalPath:`/blog`,ogType:`article`}}]}function qd(){return Zs().map(e=>({path:e.from,redirect:e.to}))}var Jd=Id({history:id(`/`),routes:[{path:`/`,name:`home`,component:()=>Bd(()=>import(`./HomeView-YLKJOL2O.js`),__vite__mapDeps([16,17,18,19])),meta:{title:`StockLift: AI Investing Assistant for Your Portfolio`,description:Dc,canonicalPath:`/`,jsonLd:!0}},...Vd(),...Kd(),...qd(),Hd({path:`/privacy-policy`,name:`privacy-policy`,title:`Privacy Policy | StockLift`,description:`Read StockLift's Privacy Policy to learn how we 
3collect, use, and protect your personal information.`,component:()=>Bd(()=>import(`./PrivacyPolicyView-B-iEc-9S.js`),__vite__mapDeps([20,21,22]))}),Hd({path:`/terms-and-conditions`,name:`terms-and-conditions`,title:`Terms & Conditions | StockLift`,description:`Review StockLift's Terms & Conditions for using the StockLift app and website.`,component:()=>Bd(()=>import(`./TermsView-Cr0fiUjl.js`),__vite__mapDeps([23,21,22]))}),Hd({path:`/contact-sales`,name:`contact`,title:`Contact Us | StockLift`,description:`Contact StockLift for sales, partnerships, or product questions. Reach us by email, phone, or the contact form.`,component:()=>Bd(()=>import(`./ContactView-CE1J2l6d.js`),__vite__mapDeps([24,17,18,25])),schemaType:`ContactPage`}),{path:`/404`,name:`not-found`,component:()=>Bd(()=>import(`./NotFoundView-DRxn-INe.js`).then(e=>e.n),__vite__mapDeps([5,6,7])),meta:{title:`Page Not Found | StockLift`,description:`The page you requested could not be found on stocklift.co.`,canonicalPath:`/404`,robots:`noindex, follow`}},{path:`/:pathMatch(.*)*`,name:`catch-all`,component:()=>Bd(()=>import(`./NotFoundView-DRxn-INe.js`).then(e=>e.n),__vite__mapDeps([5,6,7])),meta:{title:`Page Not Found | StockLift`,description:`The page you requested could not be found on stocklift.co.`,canonicalPath:`/404`,robots:`noindex, follow`}}],scrollBehavior(e,t,n){return n||(e.hash?{el:e.hash,behavior:`smooth`}:{top:0})}}),Yd=Do(Gc),Xd=ks();Yd.use(Xd),Yd.use(Jd),Il(Jd,Xd),ol(Jd),Yd.mount(`#app`);export{Ut as $,vo as A,q as B,Js as C,X as D,Qs as E,K as F,vr as G,rr as H,Vi as I,Un as J,yr as K,Yi as L,Co as M,U as N,Fs as O,ba as P,Nt as Q,Bi as R,cc as S,Xs as T,sr as U,Vn as V,G as W,B as X,jn as Y,Tn as Z,hc as _,yl as a,mc as b,dl as c,vc as d,L as et,yc as f,gc as g,Cc as h,bl as i,_o as j,Ms as k,_c as l,Dc as m,$l as n,ue as nt,vl as o,bc as p,hr as q,Ql as r,A as rt,Qc as s,Od as t,k as tt,xc as u,Z as v,Ys as w,pc as x,dc as y,J as z};

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.