diff --git a/dist/404.html b/dist/404.html index deccdee..6728013 100644 --- a/dist/404.html +++ b/dist/404.html @@ -32,12 +32,12 @@ } Дмитрий Плешевский - - - + + + -
- +

404

Мы потеряли страницу...
Вернуться на главную
+ diff --git a/dist/assets/404.html-Bb8vIwe-.js b/dist/assets/404.html-DhSV0iSI.js similarity index 91% rename from dist/assets/404.html-Bb8vIwe-.js rename to dist/assets/404.html-DhSV0iSI.js index 2805688..23f1b72 100644 --- a/dist/assets/404.html-Bb8vIwe-.js +++ b/dist/assets/404.html-DhSV0iSI.js @@ -1 +1 @@ -import{_ as t,c as e,o,a}from"./app-Dg9P_Zls.js";const n={},r=a("p",null,"404 Not Found",-1),c=[r];function s(l,p){return o(),e("div",null,c)}const i=t(n,[["render",s],["__file","404.html.vue"]]),m=JSON.parse('{"path":"/404.html","title":"","lang":"ru-RU","frontmatter":{"layout":"NotFound","head":[["meta",{"property":"og:url","content":"https://pleshevski.ru/404.html"}],["meta",{"property":"og:site_name","content":"Дмитрий Плешевский"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"ru-RU"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"\\"}"]]},"headers":[],"git":{},"filePathRelative":null}');export{i as comp,m as data}; +import{_ as t,c as e,o,a}from"./app-OMtl6IVo.js";const n={},r=a("p",null,"404 Not Found",-1),c=[r];function s(l,p){return o(),e("div",null,c)}const i=t(n,[["render",s],["__file","404.html.vue"]]),m=JSON.parse('{"path":"/404.html","title":"","lang":"ru-RU","frontmatter":{"layout":"NotFound","head":[["meta",{"property":"og:url","content":"https://pleshevski.ru/404.html"}],["meta",{"property":"og:site_name","content":"Дмитрий Плешевский"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"ru-RU"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"\\"}"]]},"headers":[],"git":{},"filePathRelative":null}');export{i as comp,m as data}; diff --git a/dist/assets/app-Dg9P_Zls.js b/dist/assets/app-Dg9P_Zls.js deleted file mode 100644 index c3501aa..0000000 --- a/dist/assets/app-Dg9P_Zls.js +++ /dev/null @@ -1,30 +0,0 @@ -/** -* @vue/shared v3.4.33 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function Do(e,t){const n=new Set(e.split(","));return r=>n.has(r)}const Ce={},an=[],tt=()=>{},_a=()=>!1,Jn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Oo=e=>e.startsWith("onUpdate:"),Me=Object.assign,Io=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},ba=Object.prototype.hasOwnProperty,ce=(e,t)=>ba.call(e,t),X=Array.isArray,cn=e=>Ir(e)==="[object Map]",Ei=e=>Ir(e)==="[object Set]",ne=e=>typeof e=="function",Te=e=>typeof e=="string",Nt=e=>typeof e=="symbol",ye=e=>e!==null&&typeof e=="object",Ai=e=>(ye(e)||ne(e))&&ne(e.then)&&ne(e.catch),Ti=Object.prototype.toString,Ir=e=>Ti.call(e),ya=e=>Ir(e).slice(8,-1),Ri=e=>Ir(e)==="[object Object]",Mo=e=>Te(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,un=Do(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Mr=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},wa=/-(\w)/g,Qe=Mr(e=>e.replace(wa,(t,n)=>n?n.toUpperCase():"")),Sa=/\B([A-Z])/g,Ht=Mr(e=>e.replace(Sa,"-$1").toLowerCase()),Qn=Mr(e=>e.charAt(0).toUpperCase()+e.slice(1)),Yr=Mr(e=>e?`on${Qn(e)}`:""),It=(e,t)=>!Object.is(e,t),Xr=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},Pa=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Ca=e=>{const t=Te(e)?Number(e):NaN;return isNaN(t)?e:t};let ms;const Oi=()=>ms||(ms=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Yn(e){if(X(e)){const t={};for(let n=0;n{if(n){const r=n.split(La);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function Fe(e){let t="";if(Te(e))t=e;else if(X(e))for(let n=0;n!!(e&&e.__v_isRef===!0),le=e=>Te(e)?e:e==null?"":X(e)||ye(e)&&(e.toString===Ti||!ne(e.toString))?Mi(e)?le(e.value):JSON.stringify(e,$i,2):String(e),$i=(e,t)=>Mi(t)?$i(e,t.value):cn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o],s)=>(n[Zr(r,s)+" =>"]=o,n),{})}:Ei(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Zr(n))}:Nt(t)?Zr(t):ye(t)&&!X(t)&&!Ri(t)?String(t):t,Zr=(e,t="")=>{var n;return Nt(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** -* @vue/reactivity v3.4.33 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let ze;class Ra{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ze,!t&&ze&&(this.index=(ze.scopes||(ze.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=ze;try{return ze=this,t()}finally{ze=n}}}on(){ze=this}off(){ze=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),jt()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Dt,n=Jt;try{return Dt=!0,Jt=this,this._runnings++,vs(this),this.fn()}finally{_s(this),this._runnings--,Jt=n,Dt=t}}stop(){this.active&&(vs(this),_s(this),this.onStop&&this.onStop(),this.active=!1)}}function Ia(e){return e.value}function vs(e){e._trackId++,e._depsLength=0}function _s(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},Pr=new WeakMap,Qt=Symbol(""),_o=Symbol("");function Ke(e,t,n){if(Dt&&Jt){let r=Pr.get(e);r||Pr.set(e,r=new Map);let o=r.get(n);o||r.set(n,o=Bi(()=>r.delete(n))),ji(Jt,o)}}function _t(e,t,n,r,o,s){const i=Pr.get(e);if(!i)return;let l=[];if(t==="clear")l=[...i.values()];else if(n==="length"&&X(e)){const a=Number(r);i.forEach((c,f)=>{(f==="length"||!Nt(f)&&f>=a)&&l.push(c)})}else switch(n!==void 0&&l.push(i.get(n)),t){case"add":X(e)?Mo(n)&&l.push(i.get("length")):(l.push(i.get(Qt)),cn(e)&&l.push(i.get(_o)));break;case"delete":X(e)||(l.push(i.get(Qt)),cn(e)&&l.push(i.get(_o)));break;case"set":cn(e)&&l.push(i.get(Qt));break}No();for(const a of l)a&&Fi(a,4);Ho()}function Ma(e,t){const n=Pr.get(e);return n&&n.get(t)}const $a=Do("__proto__,__v_isRef,__isVue"),Wi=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Nt)),bs=Na();function Na(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=fe(this);for(let s=0,i=this.length;s{e[t]=function(...n){Vt(),No();const r=fe(this)[t].apply(this,n);return Ho(),jt(),r}}),e}function Ha(e){Nt(e)||(e=String(e));const t=fe(this);return Ke(t,"has",e),t.hasOwnProperty(e)}class Ui{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){const o=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return s;if(n==="__v_raw")return r===(o?s?Ya:zi:s?qi:Gi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const i=X(t);if(!o){if(i&&ce(bs,n))return Reflect.get(bs,n,r);if(n==="hasOwnProperty")return Ha}const l=Reflect.get(t,n,r);return(Nt(n)?Wi.has(n):$a(n))||(o||Ke(t,"get",n),s)?l:Ne(l)?i&&Mo(n)?l:l.value:ye(l)?o?Nr(l):Xn(l):l}}class Ki extends Ui{constructor(t=!1){super(!1,t)}set(t,n,r,o){let s=t[n];if(!this._isShallow){const a=en(s);if(!mn(r)&&!en(r)&&(s=fe(s),r=fe(r)),!X(t)&&Ne(s)&&!Ne(r))return a?!1:(s.value=r,!0)}const i=X(t)&&Mo(n)?Number(n)e,$r=e=>Reflect.getPrototypeOf(e);function lr(e,t,n=!1,r=!1){e=e.__v_raw;const o=fe(e),s=fe(t);n||(It(t,s)&&Ke(o,"get",t),Ke(o,"get",s));const{has:i}=$r(o),l=r?Vo:n?Bo:jn;if(i.call(o,t))return l(e.get(t));if(i.call(o,s))return l(e.get(s));e!==o&&e.get(t)}function ar(e,t=!1){const n=this.__v_raw,r=fe(n),o=fe(e);return t||(It(e,o)&&Ke(r,"has",e),Ke(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function cr(e,t=!1){return e=e.__v_raw,!t&&Ke(fe(e),"iterate",Qt),Reflect.get(e,"size",e)}function ys(e,t=!1){!t&&!mn(e)&&!en(e)&&(e=fe(e));const n=fe(this);return $r(n).has.call(n,e)||(n.add(e),_t(n,"add",e,e)),this}function ws(e,t,n=!1){!n&&!mn(t)&&!en(t)&&(t=fe(t));const r=fe(this),{has:o,get:s}=$r(r);let i=o.call(r,e);i||(e=fe(e),i=o.call(r,e));const l=s.call(r,e);return r.set(e,t),i?It(t,l)&&_t(r,"set",e,t):_t(r,"add",e,t),this}function Ss(e){const t=fe(this),{has:n,get:r}=$r(t);let o=n.call(t,e);o||(e=fe(e),o=n.call(t,e)),r&&r.call(t,e);const s=t.delete(e);return o&&_t(t,"delete",e,void 0),s}function Ps(){const e=fe(this),t=e.size!==0,n=e.clear();return t&&_t(e,"clear",void 0,void 0),n}function ur(e,t){return function(r,o){const s=this,i=s.__v_raw,l=fe(i),a=t?Vo:e?Bo:jn;return!e&&Ke(l,"iterate",Qt),i.forEach((c,f)=>r.call(o,a(c),a(f),s))}}function fr(e,t,n){return function(...r){const o=this.__v_raw,s=fe(o),i=cn(s),l=e==="entries"||e===Symbol.iterator&&i,a=e==="keys"&&i,c=o[e](...r),f=n?Vo:t?Bo:jn;return!t&&Ke(s,"iterate",a?_o:Qt),{next(){const{value:u,done:p}=c.next();return p?{value:u,done:p}:{value:l?[f(u[0]),f(u[1])]:f(u),done:p}},[Symbol.iterator](){return this}}}}function Ct(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Wa(){const e={get(s){return lr(this,s)},get size(){return cr(this)},has:ar,add:ys,set:ws,delete:Ss,clear:Ps,forEach:ur(!1,!1)},t={get(s){return lr(this,s,!1,!0)},get size(){return cr(this)},has:ar,add(s){return ys.call(this,s,!0)},set(s,i){return ws.call(this,s,i,!0)},delete:Ss,clear:Ps,forEach:ur(!1,!0)},n={get(s){return lr(this,s,!0)},get size(){return cr(this,!0)},has(s){return ar.call(this,s,!0)},add:Ct("add"),set:Ct("set"),delete:Ct("delete"),clear:Ct("clear"),forEach:ur(!0,!1)},r={get(s){return lr(this,s,!0,!0)},get size(){return cr(this,!0)},has(s){return ar.call(this,s,!0)},add:Ct("add"),set:Ct("set"),delete:Ct("delete"),clear:Ct("clear"),forEach:ur(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(s=>{e[s]=fr(s,!1,!1),n[s]=fr(s,!0,!1),t[s]=fr(s,!1,!0),r[s]=fr(s,!0,!0)}),[e,n,t,r]}const[Ua,Ka,Ga,qa]=Wa();function jo(e,t){const n=t?e?qa:Ga:e?Ka:Ua;return(r,o,s)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(ce(n,o)&&o in r?n:r,o,s)}const za={get:jo(!1,!1)},Ja={get:jo(!1,!0)},Qa={get:jo(!0,!1)};const Gi=new WeakMap,qi=new WeakMap,zi=new WeakMap,Ya=new WeakMap;function Xa(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Za(e){return e.__v_skip||!Object.isExtensible(e)?0:Xa(ya(e))}function Xn(e){return en(e)?e:Fo(e,!1,ja,za,Gi)}function Ji(e){return Fo(e,!1,Ba,Ja,qi)}function Nr(e){return Fo(e,!0,Fa,Qa,zi)}function Fo(e,t,n,r,o){if(!ye(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=o.get(e);if(s)return s;const i=Za(e);if(i===0)return e;const l=new Proxy(e,i===2?r:n);return o.set(e,l),l}function fn(e){return en(e)?fn(e.__v_raw):!!(e&&e.__v_isReactive)}function en(e){return!!(e&&e.__v_isReadonly)}function mn(e){return!!(e&&e.__v_isShallow)}function Qi(e){return e?!!e.__v_raw:!1}function fe(e){const t=e&&e.__v_raw;return t?fe(t):e}function ec(e){return Object.isExtensible(e)&&Di(e,"__v_skip",!0),e}const jn=e=>ye(e)?Xn(e):e,Bo=e=>ye(e)?Nr(e):e;class Yi{constructor(t,n,r,o){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new $o(()=>t(this._value),()=>On(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=r}get value(){const t=fe(this);return(!t._cacheable||t.effect.dirty)&&It(t._value,t._value=t.effect.run())&&On(t,4),Wo(t),t.effect._dirtyLevel>=2&&On(t,2),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function tc(e,t,n=!1){let r,o;const s=ne(e);return s?(r=e,o=tt):(r=e.get,o=e.set),new Yi(r,o,s||!o,n)}function Wo(e){var t;Dt&&Jt&&(e=fe(e),ji(Jt,(t=e.dep)!=null?t:e.dep=Bi(()=>e.dep=void 0,e instanceof Yi?e:void 0)))}function On(e,t=4,n,r){e=fe(e);const o=e.dep;o&&Fi(o,t)}function Ne(e){return!!(e&&e.__v_isRef===!0)}function ue(e){return Xi(e,!1)}function yn(e){return Xi(e,!0)}function Xi(e,t){return Ne(e)?e:new nc(e,t)}class nc{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:fe(t),this._value=n?t:jn(t)}get value(){return Wo(this),this._value}set value(t){const n=this.__v_isShallow||mn(t)||en(t);t=n?t:fe(t),It(t,this._rawValue)&&(this._rawValue,this._rawValue=t,this._value=n?t:jn(t),On(this,4))}}function Yt(e){return Ne(e)?e.value:e}const rc={get:(e,t,n)=>Yt(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Ne(o)&&!Ne(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function Zi(e){return fn(e)?e:new Proxy(e,rc)}class oc{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>Wo(this),()=>On(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function sc(e){return new oc(e)}function el(e){const t=X(e)?new Array(e.length):{};for(const n in e)t[n]=tl(e,n);return t}class ic{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Ma(fe(this._object),this._key)}}class lc{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function ac(e,t,n){return Ne(e)?e:ne(e)?new lc(e):ye(e)&&arguments.length>1?tl(e,t,n):ue(e)}function tl(e,t,n){const r=e[t];return Ne(r)?r:new ic(e,t,n)}/** -* @vue/runtime-core v3.4.33 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function Ot(e,t,n,r){try{return r?e(...r):e()}catch(o){Zn(o,t,n)}}function nt(e,t,n,r){if(ne(e)){const o=Ot(e,t,n,r);return o&&Ai(o)&&o.catch(s=>{Zn(s,t,n)}),o}if(X(e)){const o=[];for(let s=0;s>>1,o=He[r],s=Bn(o);sdt&&He.splice(t,1)}function dc(e){X(e)?dn.push(...e):(!xt||!xt.includes(e,e.allowRecurse?Gt+1:Gt))&&dn.push(e),rl()}function Cs(e,t,n=Fn?dt+1:0){for(;nBn(n)-Bn(r));if(dn.length=0,xt){xt.push(...t);return}for(xt=t,Gt=0;Gte.id==null?1/0:e.id,hc=(e,t)=>{const n=Bn(e)-Bn(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function ol(e){bo=!1,Fn=!0,He.sort(hc);try{for(dt=0;dt{r._d&&Hs(-1);const s=kr(t);let i;try{i=e(...o)}finally{kr(s),r._d&&Hs(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function Lr(e,t){if(Ie===null)return e;const n=Ur(Ie),r=e.dirs||(e.dirs=[]);for(let o=0;o{e.isMounted=!0}),Ko(()=>{e.isUnmounting=!0}),e}const Xe=[Function,Array],sl={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Xe,onEnter:Xe,onAfterEnter:Xe,onEnterCancelled:Xe,onBeforeLeave:Xe,onLeave:Xe,onAfterLeave:Xe,onLeaveCancelled:Xe,onBeforeAppear:Xe,onAppear:Xe,onAfterAppear:Xe,onAppearCancelled:Xe},il=e=>{const t=e.subTree;return t.component?il(t.component):t},vc={name:"BaseTransition",props:sl,setup(e,{slots:t}){const n=Wr(),r=mc();return()=>{const o=t.default&&al(t.default(),!0);if(!o||!o.length)return;let s=o[0];if(o.length>1){for(const p of o)if(p.type!==je){s=p;break}}const i=fe(e),{mode:l}=i;if(r.isLeaving)return eo(s);const a=ks(s);if(!a)return eo(s);let c=yo(a,i,r,n,p=>c=p);xr(a,c);const f=n.subTree,u=f&&ks(f);if(u&&u.type!==je&&!qt(a,u)&&il(n).type!==je){const p=yo(u,i,r,n);if(xr(u,p),l==="out-in"&&a.type!==je)return r.isLeaving=!0,p.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},eo(s);l==="in-out"&&a.type!==je&&(p.delayLeave=(g,_,S)=>{const k=ll(r,u);k[String(u.key)]=u,g[Et]=()=>{_(),g[Et]=void 0,delete c.delayedLeave},c.delayedLeave=S})}return s}}},_c=vc;function ll(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function yo(e,t,n,r,o){const{appear:s,mode:i,persisted:l=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:f,onEnterCancelled:u,onBeforeLeave:p,onLeave:g,onAfterLeave:_,onLeaveCancelled:S,onBeforeAppear:k,onAppear:R,onAfterAppear:b,onAppearCancelled:m}=t,w=String(e.key),V=ll(n,e),O=(j,L)=>{j&&nt(j,r,9,L)},G=(j,L)=>{const U=L[1];O(j,L),X(j)?j.every(T=>T.length<=1)&&U():j.length<=1&&U()},Z={mode:i,persisted:l,beforeEnter(j){let L=a;if(!n.isMounted)if(s)L=k||a;else return;j[Et]&&j[Et](!0);const U=V[w];U&&qt(e,U)&&U.el[Et]&&U.el[Et](),O(L,[j])},enter(j){let L=c,U=f,T=u;if(!n.isMounted)if(s)L=R||c,U=b||f,T=m||u;else return;let ee=!1;const ve=j[dr]=_e=>{ee||(ee=!0,_e?O(T,[j]):O(U,[j]),Z.delayedLeave&&Z.delayedLeave(),j[dr]=void 0)};L?G(L,[j,ve]):ve()},leave(j,L){const U=String(e.key);if(j[dr]&&j[dr](!0),n.isUnmounting)return L();O(p,[j]);let T=!1;const ee=j[Et]=ve=>{T||(T=!0,L(),ve?O(S,[j]):O(_,[j]),j[Et]=void 0,V[U]===e&&delete V[U])};V[U]=e,g?G(g,[j,ee]):ee()},clone(j){const L=yo(j,t,n,r,o);return o&&o(L),L}};return Z}function eo(e){if(er(e))return e=Mt(e),e.children=null,e}function ks(e){if(!er(e))return e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&ne(n.default))return n.default()}}function xr(e,t){e.shapeFlag&6&&e.component?xr(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function al(e,t=!1,n){let r=[],o=0;for(let s=0;s1)for(let s=0;s!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function bc(e){ne(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:s,suspensible:i=!0,onError:l}=e;let a=null,c,f=0;const u=()=>(f++,a=null,p()),p=()=>{let g;return a||(g=a=t().catch(_=>{if(_=_ instanceof Error?_:new Error(String(_)),l)return new Promise((S,k)=>{l(_,()=>S(u()),()=>k(_),f+1)});throw _}).then(_=>g!==a&&a?a:(_&&(_.__esModule||_[Symbol.toStringTag]==="Module")&&(_=_.default),c=_,_)))};return he({name:"AsyncComponentWrapper",__asyncLoader:p,get __asyncResolved(){return c},setup(){const g=Oe;if(c)return()=>to(c,g);const _=b=>{a=null,Zn(b,g,13,!r)};if(i&&g.suspense||nr)return p().then(b=>()=>to(b,g)).catch(b=>(_(b),()=>r?te(r,{error:b}):null));const S=ue(!1),k=ue(),R=ue(!!o);return o&&setTimeout(()=>{R.value=!1},o),s!=null&&setTimeout(()=>{if(!S.value&&!k.value){const b=new Error(`Async component timed out after ${s}ms.`);_(b),k.value=b}},s),p().then(()=>{S.value=!0,g.parent&&er(g.parent.vnode)&&(g.parent.effect.dirty=!0,Hr(g.parent.update))}).catch(b=>{_(b),k.value=b}),()=>{if(S.value&&c)return to(c,g);if(k.value&&r)return te(r,{error:k.value});if(n&&!R.value)return te(n)}}})}function to(e,t){const{ref:n,props:r,children:o,ce:s}=t.vnode,i=te(e,r,o);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const er=e=>e.type.__isKeepAlive;function yc(e,t){cl(e,"a",t)}function wc(e,t){cl(e,"da",t)}function cl(e,t,n=Oe){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(jr(t,r,n),n){let o=n.parent;for(;o&&o.parent;)er(o.parent.vnode)&&Sc(r,t,n,o),o=o.parent}}function Sc(e,t,n,r){const o=jr(t,e,r,!0);Fr(()=>{Io(r[t],o)},n)}function jr(e,t,n=Oe,r=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{Vt();const l=tr(n),a=nt(t,n,e,i);return l(),jt(),a});return r?o.unshift(s):o.push(s),s}}const wt=e=>(t,n=Oe)=>{(!nr||e==="sp")&&jr(e,(...r)=>t(...r),n)},Pc=wt("bm"),Ge=wt("m"),Cc=wt("bu"),kc=wt("u"),Ko=wt("bum"),Fr=wt("um"),Lc=wt("sp"),xc=wt("rtg"),Ec=wt("rtc");function Ac(e,t=Oe){jr("ec",e,t)}const Tc="components";function Go(e,t){return Dc(Tc,e,!0,t)||e}const Rc=Symbol.for("v-ndc");function Dc(e,t,n=!0,r=!1){const o=Ie||Oe;if(o){const s=o.type;{const l=Cu(s,!1);if(l&&(l===t||l===Qe(t)||l===Qn(Qe(t))))return s}const i=Ls(o[e]||s[e],t)||Ls(o.appContext[e],t);return!i&&r?s:i}}function Ls(e,t){return e&&(e[t]||e[Qe(t)]||e[Qn(Qe(t))])}function bt(e,t,n,r){let o;const s=n;if(X(e)||Te(e)){o=new Array(e.length);for(let i=0,l=e.length;it(i,l,void 0,s));else{const i=Object.keys(e);o=new Array(i.length);for(let l=0,a=i.length;lTr(t)?!(t.type===je||t.type===be&&!ul(t.children)):!0)?e:null}const wo=e=>e?Tl(e)?Ur(e):wo(e.parent):null,In=Me(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=>wo(e.parent),$root:e=>wo(e.root),$emit:e=>e.emit,$options:e=>qo(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Hr(e.update)}),$nextTick:e=>e.n||(e.n=wn.bind(e.proxy)),$watch:e=>ou.bind(e)}),no=(e,t)=>e!==Ce&&!e.__isScriptSetup&&ce(e,t),Oc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:r,data:o,props:s,accessCache:i,type:l,appContext:a}=e;let c;if(t[0]!=="$"){const g=i[t];if(g!==void 0)switch(g){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return s[t]}else{if(no(r,t))return i[t]=1,r[t];if(o!==Ce&&ce(o,t))return i[t]=2,o[t];if((c=e.propsOptions[0])&&ce(c,t))return i[t]=3,s[t];if(n!==Ce&&ce(n,t))return i[t]=4,n[t];So&&(i[t]=0)}}const f=In[t];let u,p;if(f)return t==="$attrs"&&Ke(e.attrs,"get",""),f(e);if((u=l.__cssModules)&&(u=u[t]))return u;if(n!==Ce&&ce(n,t))return i[t]=4,n[t];if(p=a.config.globalProperties,ce(p,t))return p[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:s}=e;return no(o,t)?(o[t]=n,!0):r!==Ce&&ce(r,t)?(r[t]=n,!0):ce(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:s}},i){let l;return!!n[i]||e!==Ce&&ce(e,i)||no(t,i)||(l=s[0])&&ce(l,i)||ce(r,i)||ce(In,i)||ce(o.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:ce(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function xs(e){return X(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let So=!0;function Ic(e){const t=qo(e),n=e.proxy,r=e.ctx;So=!1,t.beforeCreate&&Es(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:i,watch:l,provide:a,inject:c,created:f,beforeMount:u,mounted:p,beforeUpdate:g,updated:_,activated:S,deactivated:k,beforeDestroy:R,beforeUnmount:b,destroyed:m,unmounted:w,render:V,renderTracked:O,renderTriggered:G,errorCaptured:Z,serverPrefetch:j,expose:L,inheritAttrs:U,components:T,directives:ee,filters:ve}=t;if(c&&Mc(c,r,null),i)for(const oe in i){const K=i[oe];ne(K)&&(r[oe]=K.bind(n))}if(o){const oe=o.call(n,n);ye(oe)&&(e.data=Xn(oe))}if(So=!0,s)for(const oe in s){const K=s[oe],rt=ne(K)?K.bind(n,n):ne(K.get)?K.get.bind(n,n):tt,Pt=!ne(K)&&ne(K.set)?K.set.bind(n):tt,ct=A({get:rt,set:Pt});Object.defineProperty(r,oe,{enumerable:!0,configurable:!0,get:()=>ct.value,set:We=>ct.value=We})}if(l)for(const oe in l)fl(l[oe],r,n,oe);if(a){const oe=ne(a)?a.call(n):a;Reflect.ownKeys(oe).forEach(K=>{Xt(K,oe[K])})}f&&Es(f,e,"c");function J(oe,K){X(K)?K.forEach(rt=>oe(rt.bind(n))):K&&oe(K.bind(n))}if(J(Pc,u),J(Ge,p),J(Cc,g),J(kc,_),J(yc,S),J(wc,k),J(Ac,Z),J(Ec,O),J(xc,G),J(Ko,b),J(Fr,w),J(Lc,j),X(L))if(L.length){const oe=e.exposed||(e.exposed={});L.forEach(K=>{Object.defineProperty(oe,K,{get:()=>n[K],set:rt=>n[K]=rt})})}else e.exposed||(e.exposed={});V&&e.render===tt&&(e.render=V),U!=null&&(e.inheritAttrs=U),T&&(e.components=T),ee&&(e.directives=ee)}function Mc(e,t,n=tt){X(e)&&(e=Po(e));for(const r in e){const o=e[r];let s;ye(o)?"default"in o?s=Be(o.from||r,o.default,!0):s=Be(o.from||r):s=Be(o),Ne(s)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[r]=s}}function Es(e,t,n){nt(X(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function fl(e,t,n,r){const o=r.includes(".")?kl(n,r):()=>n[r];if(Te(e)){const s=t[e];ne(s)&&$e(o,s)}else if(ne(e))$e(o,e.bind(n));else if(ye(e))if(X(e))e.forEach(s=>fl(s,t,n,r));else{const s=ne(e.handler)?e.handler.bind(n):t[e.handler];ne(s)&&$e(o,s,e)}}function qo(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,l=s.get(t);let a;return l?a=l:!o.length&&!n&&!r?a=t:(a={},o.length&&o.forEach(c=>Er(a,c,i,!0)),Er(a,t,i)),ye(t)&&s.set(t,a),a}function Er(e,t,n,r=!1){const{mixins:o,extends:s}=t;s&&Er(e,s,n,!0),o&&o.forEach(i=>Er(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const l=$c[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const $c={data:As,props:Ts,emits:Ts,methods:Rn,computed:Rn,beforeCreate:Ve,created:Ve,beforeMount:Ve,mounted:Ve,beforeUpdate:Ve,updated:Ve,beforeDestroy:Ve,beforeUnmount:Ve,destroyed:Ve,unmounted:Ve,activated:Ve,deactivated:Ve,errorCaptured:Ve,serverPrefetch:Ve,components:Rn,directives:Rn,watch:Hc,provide:As,inject:Nc};function As(e,t){return t?e?function(){return Me(ne(e)?e.call(this,this):e,ne(t)?t.call(this,this):t)}:t:e}function Nc(e,t){return Rn(Po(e),Po(t))}function Po(e){if(X(e)){const t={};for(let n=0;n1)return n&&ne(t)?t.call(r&&r.proxy):t}}const hl={},pl=()=>Object.create(hl),gl=e=>Object.getPrototypeOf(e)===hl;function Fc(e,t,n,r=!1){const o={},s=pl();e.propsDefaults=Object.create(null),ml(e,t,o,s);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);n?e.props=r?o:Ji(o):e.type.props?e.props=o:e.props=s,e.attrs=s}function Bc(e,t,n,r){const{props:o,attrs:s,vnode:{patchFlag:i}}=e,l=fe(o),[a]=e.propsOptions;let c=!1;if((r||i>0)&&!(i&16)){if(i&8){const f=e.vnode.dynamicProps;for(let u=0;u{a=!0;const[p,g]=vl(u,t,!0);Me(i,p),g&&l.push(...g)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!s&&!a)return ye(e)&&r.set(e,an),an;if(X(s))for(let f=0;f-1,g[1]=S<0||_-1||ce(g,"default"))&&l.push(u)}}}const c=[i,l];return ye(e)&&r.set(e,c),c}function Rs(e){return e[0]!=="$"&&!un(e)}function Ds(e){return e===null?"null":typeof e=="function"?e.name||"":typeof e=="object"&&e.constructor&&e.constructor.name||""}function Os(e,t){return Ds(e)===Ds(t)}function Is(e,t){return X(t)?t.findIndex(n=>Os(n,e)):ne(t)&&Os(t,e)?0:-1}const _l=e=>e[0]==="_"||e==="$stable",zo=e=>X(e)?e.map(et):[et(e)],Uc=(e,t,n)=>{if(t._n)return t;const r=Ee((...o)=>zo(t(...o)),n);return r._c=!1,r},bl=(e,t,n)=>{const r=e._ctx;for(const o in e){if(_l(o))continue;const s=e[o];if(ne(s))t[o]=Uc(o,s,r);else if(s!=null){const i=zo(s);t[o]=()=>i}}},yl=(e,t)=>{const n=zo(t);e.slots.default=()=>n},wl=(e,t,n)=>{for(const r in t)(n||r!=="_")&&(e[r]=t[r])},Kc=(e,t,n)=>{const r=e.slots=pl();if(e.vnode.shapeFlag&32){const o=t._;o?(wl(r,t,n),n&&Di(r,"_",o,!0)):bl(t,r)}else t&&yl(e,t)},Gc=(e,t,n)=>{const{vnode:r,slots:o}=e;let s=!0,i=Ce;if(r.shapeFlag&32){const l=t._;l?n&&l===1?s=!1:wl(o,t,n):(s=!t.$stable,bl(t,o)),i=t}else t&&(yl(e,t),i={default:1});if(s)for(const l in o)!_l(l)&&i[l]==null&&delete o[l]};function Ar(e,t,n,r,o=!1){if(X(e)){e.forEach((p,g)=>Ar(p,t&&(X(t)?t[g]:t),n,r,o));return}if(hn(r)&&!o)return;const s=r.shapeFlag&4?Ur(r.component):r.el,i=o?null:s,{i:l,r:a}=e,c=t&&t.r,f=l.refs===Ce?l.refs={}:l.refs,u=l.setupState;if(c!=null&&c!==a&&(Te(c)?(f[c]=null,ce(u,c)&&(u[c]=null)):Ne(c)&&(c.value=null)),ne(a))Ot(a,l,12,[i,f]);else{const p=Te(a),g=Ne(a);if(p||g){const _=()=>{if(e.f){const S=p?ce(u,a)?u[a]:f[a]:a.value;o?X(S)&&Io(S,s):X(S)?S.includes(s)||S.push(s):p?(f[a]=[s],ce(u,a)&&(u[a]=f[a])):(a.value=[s],e.k&&(f[e.k]=a.value))}else p?(f[a]=i,ce(u,a)&&(u[a]=i)):g&&(a.value=i,e.k&&(f[e.k]=i))};i?(_.id=-1,Ue(_,n)):_()}}}const qc=Symbol("_vte"),zc=e=>e.__isTeleport;let Ms=!1;const sn=()=>{Ms||(console.error("Hydration completed but contains mismatches."),Ms=!0)},Jc=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",Qc=e=>e.namespaceURI.includes("MathML"),hr=e=>{if(Jc(e))return"svg";if(Qc(e))return"mathml"},pr=e=>e.nodeType===8;function Yc(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:s,parentNode:i,remove:l,insert:a,createComment:c}}=e,f=(m,w)=>{if(!w.hasChildNodes()){n(null,m,w),Cr(),w._vnode=m;return}u(w.firstChild,m,null,null,null),Cr(),w._vnode=m},u=(m,w,V,O,G,Z=!1)=>{Z=Z||!!w.dynamicChildren;const j=pr(m)&&m.data==="[",L=()=>S(m,w,V,O,G,j),{type:U,ref:T,shapeFlag:ee,patchFlag:ve}=w;let _e=m.nodeType;w.el=m,ve===-2&&(Z=!1,w.dynamicChildren=null);let J=null;switch(U){case Zt:_e!==3?w.children===""?(a(w.el=o(""),i(m),m),J=m):J=L():(m.data!==w.children&&(sn(),m.data=w.children),J=s(m));break;case je:b(m)?(J=s(m),R(w.el=m.content.firstChild,m,V)):_e!==8||j?J=L():J=s(m);break;case $n:if(j&&(m=s(m),_e=m.nodeType),_e===1||_e===3){J=m;const oe=!w.children.length;for(let K=0;K{Z=Z||!!w.dynamicChildren;const{type:j,props:L,patchFlag:U,shapeFlag:T,dirs:ee,transition:ve}=w,_e=j==="input"||j==="option";if(_e||U!==-1){ee&&ft(w,null,V,"created");let J=!1;if(b(m)){J=Sl(O,ve)&&V&&V.vnode.props&&V.vnode.props.appear;const K=m.content.firstChild;J&&ve.beforeEnter(K),R(K,m,V),w.el=m=K}if(T&16&&!(L&&(L.innerHTML||L.textContent))){let K=g(m.firstChild,w,m,V,O,G,Z);for(;K;){sn();const rt=K;K=K.nextSibling,l(rt)}}else T&8&&m.textContent!==w.children&&(sn(),m.textContent=w.children);if(L){if(_e||!Z||U&48)for(const K in L)(_e&&(K.endsWith("value")||K==="indeterminate")||Jn(K)&&!un(K)||K[0]===".")&&r(m,K,null,L[K],void 0,V);else if(L.onClick)r(m,"onClick",null,L.onClick,void 0,V);else if(U&4&&fn(L.style))for(const K in L.style)L.style[K]}let oe;(oe=L&&L.onVnodeBeforeMount)&&Ze(oe,V,w),ee&&ft(w,null,V,"beforeMount"),((oe=L&&L.onVnodeMounted)||ee||J)&&xl(()=>{oe&&Ze(oe,V,w),J&&ve.enter(m),ee&&ft(w,null,V,"mounted")},O)}return m.nextSibling},g=(m,w,V,O,G,Z,j)=>{j=j||!!w.dynamicChildren;const L=w.children,U=L.length;for(let T=0;T{const{slotScopeIds:j}=w;j&&(G=G?G.concat(j):j);const L=i(m),U=g(s(m),w,L,V,O,G,Z);return U&&pr(U)&&U.data==="]"?s(w.anchor=U):(sn(),a(w.anchor=c("]"),L,U),U)},S=(m,w,V,O,G,Z)=>{if(sn(),w.el=null,Z){const U=k(m);for(;;){const T=s(m);if(T&&T!==U)l(T);else break}}const j=s(m),L=i(m);return l(m),n(null,w,L,j,V,O,hr(L),G),j},k=(m,w="[",V="]")=>{let O=0;for(;m;)if(m=s(m),m&&pr(m)&&(m.data===w&&O++,m.data===V)){if(O===0)return s(m);O--}return m},R=(m,w,V)=>{const O=w.parentNode;O&&O.replaceChild(m,w);let G=V;for(;G;)G.vnode.el===w&&(G.vnode.el=G.subTree.el=m),G=G.parent},b=m=>m.nodeType===1&&m.tagName.toLowerCase()==="template";return[f,u]}const Ue=xl;function Xc(e){return Zc(e,Yc)}function Zc(e,t){const n=Oi();n.__VUE__=!0;const{insert:r,remove:o,patchProp:s,createElement:i,createText:l,createComment:a,setText:c,setElementText:f,parentNode:u,nextSibling:p,setScopeId:g=tt,insertStaticContent:_}=e,S=(d,h,v,C=null,y=null,E=null,N=void 0,I=null,M=!!h.dynamicChildren)=>{if(d===h)return;d&&!qt(d,h)&&(C=P(d),We(d,y,E,!0),d=null),h.patchFlag===-2&&(M=!1,h.dynamicChildren=null);const{type:x,ref:B,shapeFlag:Q}=h;switch(x){case Zt:k(d,h,v,C);break;case je:R(d,h,v,C);break;case $n:d==null&&b(h,v,C,N);break;case be:T(d,h,v,C,y,E,N,I,M);break;default:Q&1?V(d,h,v,C,y,E,N,I,M):Q&6?ee(d,h,v,C,y,E,N,I,M):(Q&64||Q&128)&&x.process(d,h,v,C,y,E,N,I,M,q)}B!=null&&y&&Ar(B,d&&d.ref,E,h||d,!h)},k=(d,h,v,C)=>{if(d==null)r(h.el=l(h.children),v,C);else{const y=h.el=d.el;h.children!==d.children&&c(y,h.children)}},R=(d,h,v,C)=>{d==null?r(h.el=a(h.children||""),v,C):h.el=d.el},b=(d,h,v,C)=>{[d.el,d.anchor]=_(d.children,h,v,C,d.el,d.anchor)},m=({el:d,anchor:h},v,C)=>{let y;for(;d&&d!==h;)y=p(d),r(d,v,C),d=y;r(h,v,C)},w=({el:d,anchor:h})=>{let v;for(;d&&d!==h;)v=p(d),o(d),d=v;o(h)},V=(d,h,v,C,y,E,N,I,M)=>{h.type==="svg"?N="svg":h.type==="math"&&(N="mathml"),d==null?O(h,v,C,y,E,N,I,M):j(d,h,y,E,N,I,M)},O=(d,h,v,C,y,E,N,I)=>{let M,x;const{props:B,shapeFlag:Q,transition:z,dirs:re}=d;if(M=d.el=i(d.type,E,B&&B.is,B),Q&8?f(M,d.children):Q&16&&Z(d.children,M,null,C,y,ro(d,E),N,I),re&&ft(d,null,C,"created"),G(M,d,d.scopeId,N,C),B){for(const Se in B)Se!=="value"&&!un(Se)&&s(M,Se,null,B[Se],E,C);"value"in B&&s(M,"value",null,B.value,E),(x=B.onVnodeBeforeMount)&&Ze(x,C,d)}re&&ft(d,null,C,"beforeMount");const se=Sl(y,z);se&&z.beforeEnter(M),r(M,h,v),((x=B&&B.onVnodeMounted)||se||re)&&Ue(()=>{x&&Ze(x,C,d),se&&z.enter(M),re&&ft(d,null,C,"mounted")},y)},G=(d,h,v,C,y)=>{if(v&&g(d,v),C)for(let E=0;E{for(let x=M;x{const I=h.el=d.el;let{patchFlag:M,dynamicChildren:x,dirs:B}=h;M|=d.patchFlag&16;const Q=d.props||Ce,z=h.props||Ce;let re;if(v&&Bt(v,!1),(re=z.onVnodeBeforeUpdate)&&Ze(re,v,h,d),B&&ft(h,d,v,"beforeUpdate"),v&&Bt(v,!0),(Q.innerHTML&&z.innerHTML==null||Q.textContent&&z.textContent==null)&&f(I,""),x?L(d.dynamicChildren,x,I,v,C,ro(h,y),E):N||K(d,h,I,null,v,C,ro(h,y),E,!1),M>0){if(M&16)U(I,Q,z,v,y);else if(M&2&&Q.class!==z.class&&s(I,"class",null,z.class,y),M&4&&s(I,"style",Q.style,z.style,y),M&8){const se=h.dynamicProps;for(let Se=0;Se{re&&Ze(re,v,h,d),B&&ft(h,d,v,"updated")},C)},L=(d,h,v,C,y,E,N)=>{for(let I=0;I{if(h!==v){if(h!==Ce)for(const E in h)!un(E)&&!(E in v)&&s(d,E,h[E],null,y,C);for(const E in v){if(un(E))continue;const N=v[E],I=h[E];N!==I&&E!=="value"&&s(d,E,I,N,y,C)}"value"in v&&s(d,"value",h.value,v.value,y)}},T=(d,h,v,C,y,E,N,I,M)=>{const x=h.el=d?d.el:l(""),B=h.anchor=d?d.anchor:l("");let{patchFlag:Q,dynamicChildren:z,slotScopeIds:re}=h;re&&(I=I?I.concat(re):re),d==null?(r(x,v,C),r(B,v,C),Z(h.children||[],v,B,y,E,N,I,M)):Q>0&&Q&64&&z&&d.dynamicChildren?(L(d.dynamicChildren,z,v,y,E,N,I),(h.key!=null||y&&h===y.subTree)&&Pl(d,h,!0)):K(d,h,v,B,y,E,N,I,M)},ee=(d,h,v,C,y,E,N,I,M)=>{h.slotScopeIds=I,d==null?h.shapeFlag&512?y.ctx.activate(h,v,C,N,M):ve(h,v,C,y,E,N,M):_e(d,h,M)},ve=(d,h,v,C,y,E,N)=>{const I=d.component=bu(d,C,y);if(er(d)&&(I.ctx.renderer=q),yu(I,!1,N),I.asyncDep){if(y&&y.registerDep(I,J,N),!d.el){const M=I.subTree=te(je);R(null,M,h,v)}}else J(I,d,h,v,y,E,N)},_e=(d,h,v)=>{const C=h.component=d.component;if(cu(d,h,v))if(C.asyncDep&&!C.asyncResolved){oe(C,h,v);return}else C.next=h,fc(C.update),C.effect.dirty=!0,C.update();else h.el=d.el,C.vnode=h},J=(d,h,v,C,y,E,N)=>{const I=()=>{if(d.isMounted){let{next:B,bu:Q,u:z,parent:re,vnode:se}=d;{const on=Cl(d);if(on){B&&(B.el=se.el,oe(d,B,N)),on.asyncDep.then(()=>{d.isUnmounted||I()});return}}let Se=B,ge;Bt(d,!1),B?(B.el=se.el,oe(d,B,N)):B=se,Q&&Xr(Q),(ge=B.props&&B.props.onVnodeBeforeUpdate)&&Ze(ge,re,B,se),Bt(d,!0);const De=oo(d),ot=d.subTree;d.subTree=De,S(ot,De,u(ot.el),P(ot),d,y,E),B.el=De.el,Se===null&&uu(d,De.el),z&&Ue(z,y),(ge=B.props&&B.props.onVnodeUpdated)&&Ue(()=>Ze(ge,re,B,se),y)}else{let B;const{el:Q,props:z}=h,{bm:re,m:se,parent:Se}=d,ge=hn(h);if(Bt(d,!1),re&&Xr(re),!ge&&(B=z&&z.onVnodeBeforeMount)&&Ze(B,Se,h),Bt(d,!0),Q&&Pe){const De=()=>{d.subTree=oo(d),Pe(Q,d.subTree,d,y,null)};ge?h.type.__asyncLoader().then(()=>!d.isUnmounted&&De()):De()}else{const De=d.subTree=oo(d);S(null,De,v,C,d,y,E),h.el=De.el}if(se&&Ue(se,y),!ge&&(B=z&&z.onVnodeMounted)){const De=h;Ue(()=>Ze(B,Se,De),y)}(h.shapeFlag&256||Se&&hn(Se.vnode)&&Se.vnode.shapeFlag&256)&&d.a&&Ue(d.a,y),d.isMounted=!0,h=v=C=null}},M=d.effect=new $o(I,tt,()=>Hr(x),d.scope),x=d.update=()=>{M.dirty&&M.run()};x.i=d,x.id=d.uid,Bt(d,!0),x()},oe=(d,h,v)=>{h.component=d;const C=d.vnode.props;d.vnode=h,d.next=null,Bc(d,h.props,C,v),Gc(d,h.children,v),Vt(),Cs(d),jt()},K=(d,h,v,C,y,E,N,I,M=!1)=>{const x=d&&d.children,B=d?d.shapeFlag:0,Q=h.children,{patchFlag:z,shapeFlag:re}=h;if(z>0){if(z&128){Pt(x,Q,v,C,y,E,N,I,M);return}else if(z&256){rt(x,Q,v,C,y,E,N,I,M);return}}re&8?(B&16&&Ye(x,y,E),Q!==x&&f(v,Q)):B&16?re&16?Pt(x,Q,v,C,y,E,N,I,M):Ye(x,y,E,!0):(B&8&&f(v,""),re&16&&Z(Q,v,C,y,E,N,I,M))},rt=(d,h,v,C,y,E,N,I,M)=>{d=d||an,h=h||an;const x=d.length,B=h.length,Q=Math.min(x,B);let z;for(z=0;zB?Ye(d,y,E,!0,!1,Q):Z(h,v,C,y,E,N,I,M,Q)},Pt=(d,h,v,C,y,E,N,I,M)=>{let x=0;const B=h.length;let Q=d.length-1,z=B-1;for(;x<=Q&&x<=z;){const re=d[x],se=h[x]=M?At(h[x]):et(h[x]);if(qt(re,se))S(re,se,v,null,y,E,N,I,M);else break;x++}for(;x<=Q&&x<=z;){const re=d[Q],se=h[z]=M?At(h[z]):et(h[z]);if(qt(re,se))S(re,se,v,null,y,E,N,I,M);else break;Q--,z--}if(x>Q){if(x<=z){const re=z+1,se=rez)for(;x<=Q;)We(d[x],y,E,!0),x++;else{const re=x,se=x,Se=new Map;for(x=se;x<=z;x++){const qe=h[x]=M?At(h[x]):et(h[x]);qe.key!=null&&Se.set(qe.key,x)}let ge,De=0;const ot=z-se+1;let on=!1,hs=0;const Cn=new Array(ot);for(x=0;x=ot){We(qe,y,E,!0);continue}let ut;if(qe.key!=null)ut=Se.get(qe.key);else for(ge=se;ge<=z;ge++)if(Cn[ge-se]===0&&qt(qe,h[ge])){ut=ge;break}ut===void 0?We(qe,y,E,!0):(Cn[ut-se]=x+1,ut>=hs?hs=ut:on=!0,S(qe,h[ut],v,null,y,E,N,I,M),De++)}const ps=on?eu(Cn):an;for(ge=ps.length-1,x=ot-1;x>=0;x--){const qe=se+x,ut=h[qe],gs=qe+1{const{el:E,type:N,transition:I,children:M,shapeFlag:x}=d;if(x&6){ct(d.component.subTree,h,v,C);return}if(x&128){d.suspense.move(h,v,C);return}if(x&64){N.move(d,h,v,q);return}if(N===be){r(E,h,v);for(let Q=0;QI.enter(E),y);else{const{leave:Q,delayLeave:z,afterLeave:re}=I,se=()=>r(E,h,v),Se=()=>{Q(E,()=>{se(),re&&re()})};z?z(E,se,Se):Se()}else r(E,h,v)},We=(d,h,v,C=!1,y=!1)=>{const{type:E,props:N,ref:I,children:M,dynamicChildren:x,shapeFlag:B,patchFlag:Q,dirs:z,cacheIndex:re}=d;if(Q===-2&&(y=!1),I!=null&&Ar(I,null,v,d,!0),re!=null&&(h.renderCache[re]=void 0),B&256){h.ctx.deactivate(d);return}const se=B&1&&z,Se=!hn(d);let ge;if(Se&&(ge=N&&N.onVnodeBeforeUnmount)&&Ze(ge,h,d),B&6)ir(d.component,v,C);else{if(B&128){d.suspense.unmount(v,C);return}se&&ft(d,null,h,"beforeUnmount"),B&64?d.type.remove(d,h,v,q,C):x&&!x.hasOnce&&(E!==be||Q>0&&Q&64)?Ye(x,h,v,!1,!0):(E===be&&Q&384||!y&&B&16)&&Ye(M,h,v),C&&nn(d)}(Se&&(ge=N&&N.onVnodeUnmounted)||se)&&Ue(()=>{ge&&Ze(ge,h,d),se&&ft(d,null,h,"unmounted")},v)},nn=d=>{const{type:h,el:v,anchor:C,transition:y}=d;if(h===be){rn(v,C);return}if(h===$n){w(d);return}const E=()=>{o(v),y&&!y.persisted&&y.afterLeave&&y.afterLeave()};if(d.shapeFlag&1&&y&&!y.persisted){const{leave:N,delayLeave:I}=y,M=()=>N(v,E);I?I(d.el,E,M):M()}else E()},rn=(d,h)=>{let v;for(;d!==h;)v=p(d),o(d),d=v;o(h)},ir=(d,h,v)=>{const{bum:C,scope:y,update:E,subTree:N,um:I,m:M,a:x}=d;$s(M),$s(x),C&&Xr(C),y.stop(),E&&(E.active=!1,We(N,d,h,v)),I&&Ue(I,h),Ue(()=>{d.isUnmounted=!0},h),h&&h.pendingBranch&&!h.isUnmounted&&d.asyncDep&&!d.asyncResolved&&d.suspenseId===h.pendingId&&(h.deps--,h.deps===0&&h.resolve())},Ye=(d,h,v,C=!1,y=!1,E=0)=>{for(let N=E;N{if(d.shapeFlag&6)return P(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const h=p(d.anchor||d.el),v=h&&h[qc];return v?p(v):h};let F=!1;const H=(d,h,v)=>{d==null?h._vnode&&We(h._vnode,null,null,!0):S(h._vnode||null,d,h,null,null,null,v),F||(F=!0,Cs(),Cr(),F=!1),h._vnode=d},q={p:S,um:We,m:ct,r:nn,mt:ve,mc:Z,pc:K,pbc:L,n:P,o:e};let pe,Pe;return t&&([pe,Pe]=t(q)),{render:H,hydrate:pe,createApp:jc(H,pe)}}function ro({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 Bt({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Sl(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Pl(e,t,n=!1){const r=e.children,o=t.children;if(X(r)&&X(o))for(let s=0;s>1,e[n[l]]0&&(t[r]=n[s-1]),n[s]=r)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function Cl(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Cl(t)}function $s(e){if(e)for(let t=0;tBe(tu);function ru(e,t){return Jo(e,null,t)}const gr={};function $e(e,t,n){return Jo(e,t,n)}function Jo(e,t,{immediate:n,deep:r,flush:o,once:s,onTrack:i,onTrigger:l}=Ce){if(t&&s){const O=t;t=(...G)=>{O(...G),V()}}const a=Oe,c=O=>r===!0?O:Rt(O,r===!1?1:void 0);let f,u=!1,p=!1;if(Ne(e)?(f=()=>e.value,u=mn(e)):fn(e)?(f=()=>c(e),u=!0):X(e)?(p=!0,u=e.some(O=>fn(O)||mn(O)),f=()=>e.map(O=>{if(Ne(O))return O.value;if(fn(O))return c(O);if(ne(O))return Ot(O,a,2)})):ne(e)?t?f=()=>Ot(e,a,2):f=()=>(g&&g(),nt(e,a,3,[_])):f=tt,t&&r){const O=f;f=()=>Rt(O())}let g,_=O=>{g=m.onStop=()=>{Ot(O,a,4),g=m.onStop=void 0}},S;if(nr)if(_=tt,t?n&&nt(t,a,3,[f(),p?[]:void 0,_]):f(),o==="sync"){const O=nu();S=O.__watcherHandles||(O.__watcherHandles=[])}else return tt;let k=p?new Array(e.length).fill(gr):gr;const R=()=>{if(!(!m.active||!m.dirty))if(t){const O=m.run();(r||u||(p?O.some((G,Z)=>It(G,k[Z])):It(O,k)))&&(g&&g(),nt(t,a,3,[O,k===gr?void 0:p&&k[0]===gr?[]:k,_]),k=O)}else m.run()};R.allowRecurse=!!t;let b;o==="sync"?b=R:o==="post"?b=()=>Ue(R,a&&a.suspense):(R.pre=!0,a&&(R.id=a.uid),b=()=>Hr(R));const m=new $o(f,tt,b),w=Ni(),V=()=>{m.stop(),w&&Io(w.effects,m)};return t?n?R():k=m.run():o==="post"?Ue(m.run.bind(m),a&&a.suspense):m.run(),S&&S.push(V),V}function ou(e,t,n){const r=this.proxy,o=Te(e)?e.includes(".")?kl(r,e):()=>r[e]:e.bind(r,r);let s;ne(t)?s=t:(s=t.handler,n=t);const i=tr(this),l=Jo(o,s.bind(r),n);return i(),l}function kl(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o{Rt(r,t,n)});else if(Ri(e)){for(const r in e)Rt(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Rt(e[r],t,n)}return e}const su=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Qe(t)}Modifiers`]||e[`${Ht(t)}Modifiers`];function iu(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||Ce;let o=n;const s=t.startsWith("update:"),i=s&&su(r,t.slice(7));i&&(i.trim&&(o=n.map(f=>Te(f)?f.trim():f)),i.number&&(o=n.map(Pa)));let l,a=r[l=Yr(t)]||r[l=Yr(Qe(t))];!a&&s&&(a=r[l=Yr(Ht(t))]),a&&nt(a,e,6,o);const c=r[l+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,nt(c,e,6,o)}}function Ll(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const s=e.emits;let i={},l=!1;if(!ne(e)){const a=c=>{const f=Ll(c,t,!0);f&&(l=!0,Me(i,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!s&&!l?(ye(e)&&r.set(e,null),null):(X(s)?s.forEach(a=>i[a]=null):Me(i,s),ye(e)&&r.set(e,i),i)}function Br(e,t){return!e||!Jn(t)?!1:(t=t.slice(2).replace(/Once$/,""),ce(e,t[0].toLowerCase()+t.slice(1))||ce(e,Ht(t))||ce(e,t))}function oo(e){const{type:t,vnode:n,proxy:r,withProxy:o,propsOptions:[s],slots:i,attrs:l,emit:a,render:c,renderCache:f,props:u,data:p,setupState:g,ctx:_,inheritAttrs:S}=e,k=kr(e);let R,b;try{if(n.shapeFlag&4){const w=o||r,V=w;R=et(c.call(V,w,f,u,g,p,_)),b=l}else{const w=t;R=et(w.length>1?w(u,{attrs:l,slots:i,emit:a}):w(u,null)),b=t.props?l:lu(l)}}catch(w){Nn.length=0,Zn(w,e,1),R=te(je)}let m=R;if(b&&S!==!1){const w=Object.keys(b),{shapeFlag:V}=m;w.length&&V&7&&(s&&w.some(Oo)&&(b=au(b,s)),m=Mt(m,b,!1,!0))}return n.dirs&&(m=Mt(m,null,!1,!0),m.dirs=m.dirs?m.dirs.concat(n.dirs):n.dirs),n.transition&&(m.transition=n.transition),R=m,kr(k),R}const lu=e=>{let t;for(const n in e)(n==="class"||n==="style"||Jn(n))&&((t||(t={}))[n]=e[n]);return t},au=(e,t)=>{const n={};for(const r in e)(!Oo(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function cu(e,t,n){const{props:r,children:o,component:s}=e,{props:i,children:l,patchFlag:a}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return r?Ns(r,i,c):!!i;if(a&8){const f=t.dynamicProps;for(let u=0;ue.__isSuspense;function xl(e,t){t&&t.pendingBranch?X(e)?t.effects.push(...e):t.effects.push(e):dc(e)}const be=Symbol.for("v-fgt"),Zt=Symbol.for("v-txt"),je=Symbol.for("v-cmt"),$n=Symbol.for("v-stc"),Nn=[];let Je=null;function $(e=!1){Nn.push(Je=e?null:[])}function du(){Nn.pop(),Je=Nn[Nn.length-1]||null}let Wn=1;function Hs(e){Wn+=e,e<0&&Je&&(Je.hasOnce=!0)}function El(e){return e.dynamicChildren=Wn>0?Je||an:null,du(),Wn>0&&Je&&Je.push(e),e}function Y(e,t,n,r,o,s){return El(W(e,t,n,r,o,s,!0))}function xe(e,t,n,r,o){return El(te(e,t,n,r,o,!0))}function Tr(e){return e?e.__v_isVNode===!0:!1}function qt(e,t){return e.type===t.type&&e.key===t.key}const Al=({key:e})=>e??null,yr=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Te(e)||Ne(e)||ne(e)?{i:Ie,r:e,k:t,f:!!n}:e:null);function W(e,t=null,n=null,r=0,o=null,s=e===be?0:1,i=!1,l=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Al(t),ref:t&&yr(t),scopeId:Vr,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:s,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Ie};return l?(Qo(a,n),s&128&&e.normalize(a)):n&&(a.shapeFlag|=Te(n)?8:16),Wn>0&&!i&&Je&&(a.patchFlag>0||s&6)&&a.patchFlag!==32&&Je.push(a),a}const te=hu;function hu(e,t=null,n=null,r=0,o=null,s=!1){if((!e||e===Rc)&&(e=je),Tr(e)){const l=Mt(e,t,!0);return n&&Qo(l,n),Wn>0&&!s&&Je&&(l.shapeFlag&6?Je[Je.indexOf(e)]=l:Je.push(l)),l.patchFlag=-2,l}if(ku(e)&&(e=e.__vccOpts),t){t=pu(t);let{class:l,style:a}=t;l&&!Te(l)&&(t.class=Fe(l)),ye(a)&&(Qi(a)&&!X(a)&&(a=Me({},a)),t.style=Yn(a))}const i=Te(e)?1:fu(e)?128:zc(e)?64:ye(e)?4:ne(e)?2:0;return W(e,t,n,r,o,i,s,!0)}function pu(e){return e?Qi(e)||gl(e)?Me({},e):e:null}function Mt(e,t,n=!1,r=!1){const{props:o,ref:s,patchFlag:i,children:l,transition:a}=e,c=t?mu(o||{},t):o,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&Al(c),ref:t&&t.ref?n&&s?X(s)?s.concat(yr(t)):[s,yr(t)]:yr(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==be?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Mt(e.ssContent),ssFallback:e.ssFallback&&Mt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&r&&xr(f,a.clone(f)),f}function $t(e=" ",t=0){return te(Zt,null,e,t)}function gu(e,t){const n=te($n,null,e);return n.staticCount=t,n}function Ae(e="",t=!1){return t?($(),xe(je,null,e)):te(je,null,e)}function et(e){return e==null||typeof e=="boolean"?te(je):X(e)?te(be,null,e.slice()):typeof e=="object"?At(e):te(Zt,null,String(e))}function At(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Mt(e)}function Qo(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(X(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),Qo(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!gl(t)?t._ctx=Ie:o===3&&Ie&&(Ie.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else ne(t)?(t={default:t,_ctx:Ie},n=32):(t=String(t),r&64?(n=16,t=[$t(t)]):n=8);e.children=t,e.shapeFlag|=n}function mu(...e){const t={};for(let n=0;nOe||Ie;let Rr,ko;{const e=Oi(),t=(n,r)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(r),s=>{o.length>1?o.forEach(i=>i(s)):o[0](s)}};Rr=t("__VUE_INSTANCE_SETTERS__",n=>Oe=n),ko=t("__VUE_SSR_SETTERS__",n=>nr=n)}const tr=e=>{const t=Oe;return Rr(e),e.scope.on(),()=>{e.scope.off(),Rr(t)}},Vs=()=>{Oe&&Oe.scope.off(),Rr(null)};function Tl(e){return e.vnode.shapeFlag&4}let nr=!1;function yu(e,t=!1,n=!1){t&&ko(t);const{props:r,children:o}=e.vnode,s=Tl(e);Fc(e,r,s,t),Kc(e,o,n);const i=s?wu(e,t):void 0;return t&&ko(!1),i}function wu(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Oc);const{setup:r}=n;if(r){const o=e.setupContext=r.length>1?Pu(e):null,s=tr(e);Vt();const i=Ot(r,e,0,[e.props,o]);if(jt(),s(),Ai(i)){if(i.then(Vs,Vs),t)return i.then(l=>{js(e,l,t)}).catch(l=>{Zn(l,e,0)});e.asyncDep=i}else js(e,i,t)}else Rl(e,t)}function js(e,t,n){ne(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ye(t)&&(e.setupState=Zi(t)),Rl(e,n)}let Fs;function Rl(e,t,n){const r=e.type;if(!e.render){if(!t&&Fs&&!r.render){const o=r.template||qo(e).template;if(o){const{isCustomElement:s,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:a}=r,c=Me(Me({isCustomElement:s,delimiters:l},i),a);r.render=Fs(o,c)}}e.render=r.render||tt}{const o=tr(e);Vt();try{Ic(e)}finally{jt(),o()}}}const Su={get(e,t){return Ke(e,"get",""),e[t]}};function Pu(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Su),slots:e.slots,emit:e.emit,expose:t}}function Ur(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Zi(ec(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in In)return In[n](e)},has(t,n){return n in t||n in In}})):e.proxy}function Cu(e,t=!0){return ne(e)?e.displayName||e.name:e.name||t&&e.__name}function ku(e){return ne(e)&&"__vccOpts"in e}const A=(e,t)=>tc(e,t,nr);function ke(e,t,n){const r=arguments.length;return r===2?ye(t)&&!X(t)?Tr(t)?te(e,null,[t]):te(e,t):te(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Tr(n)&&(n=[n]),te(e,t,n))}const Lu="3.4.33";/** -* @vue/runtime-dom v3.4.33 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/const xu="http://www.w3.org/2000/svg",Eu="http://www.w3.org/1998/Math/MathML",vt=typeof document<"u"?document:null,Bs=vt&&vt.createElement("template"),Au={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t==="svg"?vt.createElementNS(xu,e):t==="mathml"?vt.createElementNS(Eu,e):n?vt.createElement(e,{is:n}):vt.createElement(e);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>vt.createTextNode(e),createComment:e=>vt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>vt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const i=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{Bs.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const l=Bs.content;if(r==="svg"||r==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},kt="transition",kn="animation",Un=Symbol("_vtc"),rr=(e,{slots:t})=>ke(_c,Tu(e),t);rr.displayName="Transition";const Dl={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};rr.props=Me({},sl,Dl);const Wt=(e,t=[])=>{X(e)?e.forEach(n=>n(...t)):e&&e(...t)},Ws=e=>e?X(e)?e.some(t=>t.length>1):e.length>1:!1;function Tu(e){const t={};for(const T in e)T in Dl||(t[T]=e[T]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:a=s,appearActiveClass:c=i,appearToClass:f=l,leaveFromClass:u=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:g=`${n}-leave-to`}=e,_=Ru(o),S=_&&_[0],k=_&&_[1],{onBeforeEnter:R,onEnter:b,onEnterCancelled:m,onLeave:w,onLeaveCancelled:V,onBeforeAppear:O=R,onAppear:G=b,onAppearCancelled:Z=m}=t,j=(T,ee,ve)=>{Ut(T,ee?f:l),Ut(T,ee?c:i),ve&&ve()},L=(T,ee)=>{T._isLeaving=!1,Ut(T,u),Ut(T,g),Ut(T,p),ee&&ee()},U=T=>(ee,ve)=>{const _e=T?G:b,J=()=>j(ee,T,ve);Wt(_e,[ee,J]),Us(()=>{Ut(ee,T?a:s),Lt(ee,T?f:l),Ws(_e)||Ks(ee,r,S,J)})};return Me(t,{onBeforeEnter(T){Wt(R,[T]),Lt(T,s),Lt(T,i)},onBeforeAppear(T){Wt(O,[T]),Lt(T,a),Lt(T,c)},onEnter:U(!1),onAppear:U(!0),onLeave(T,ee){T._isLeaving=!0;const ve=()=>L(T,ee);Lt(T,u),Lt(T,p),Iu(),Us(()=>{T._isLeaving&&(Ut(T,u),Lt(T,g),Ws(w)||Ks(T,r,k,ve))}),Wt(w,[T,ve])},onEnterCancelled(T){j(T,!1),Wt(m,[T])},onAppearCancelled(T){j(T,!0),Wt(Z,[T])},onLeaveCancelled(T){L(T),Wt(V,[T])}})}function Ru(e){if(e==null)return null;if(ye(e))return[so(e.enter),so(e.leave)];{const t=so(e);return[t,t]}}function so(e){return Ca(e)}function Lt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Un]||(e[Un]=new Set)).add(t)}function Ut(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[Un];n&&(n.delete(t),n.size||(e[Un]=void 0))}function Us(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Du=0;function Ks(e,t,n,r){const o=e._endId=++Du,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:i,timeout:l,propCount:a}=Ou(e,t);if(!i)return r();const c=i+"end";let f=0;const u=()=>{e.removeEventListener(c,p),s()},p=g=>{g.target===e&&++f>=a&&u()};setTimeout(()=>{f(n[_]||"").split(", "),o=r(`${kt}Delay`),s=r(`${kt}Duration`),i=Gs(o,s),l=r(`${kn}Delay`),a=r(`${kn}Duration`),c=Gs(l,a);let f=null,u=0,p=0;t===kt?i>0&&(f=kt,u=i,p=s.length):t===kn?c>0&&(f=kn,u=c,p=a.length):(u=Math.max(i,c),f=u>0?i>c?kt:kn:null,p=f?f===kt?s.length:a.length:0);const g=f===kt&&/\b(transform|all)(,|$)/.test(r(`${kt}Property`).toString());return{type:f,timeout:u,propCount:p,hasTransform:g}}function Gs(e,t){for(;e.lengthqs(n)+qs(e[r])))}function qs(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Iu(){return document.body.offsetHeight}function Mu(e,t,n){const r=e[Un];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Dr=Symbol("_vod"),Ol=Symbol("_vsh"),Or={beforeMount(e,{value:t},{transition:n}){e[Dr]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Ln(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),Ln(e,!0),r.enter(e)):r.leave(e,()=>{Ln(e,!1)}):Ln(e,t))},beforeUnmount(e,{value:t}){Ln(e,t)}};function Ln(e,t){e.style.display=t?e[Dr]:"none",e[Ol]=!t}const $u=Symbol(""),Nu=/(^|;)\s*display\s*:/;function Hu(e,t,n){const r=e.style,o=Te(n);let s=!1;if(n&&!o){if(t)if(Te(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&wr(r,l,"")}else for(const i in t)n[i]==null&&wr(r,i,"");for(const i in n)i==="display"&&(s=!0),wr(r,i,n[i])}else if(o){if(t!==n){const i=r[$u];i&&(n+=";"+i),r.cssText=n,s=Nu.test(n)}}else t&&e.removeAttribute("style");Dr in e&&(e[Dr]=s?r.display:"",e[Ol]&&(r.display="none"))}const zs=/\s*!important$/;function wr(e,t,n){if(X(n))n.forEach(r=>wr(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=Vu(e,t);zs.test(n)?e.setProperty(Ht(r),n.replace(zs,""),"important"):e[r]=n}}const Js=["Webkit","Moz","ms"],io={};function Vu(e,t){const n=io[t];if(n)return n;let r=Qe(t);if(r!=="filter"&&r in e)return io[t]=r;r=Qn(r);for(let o=0;olo||(Ku.then(()=>lo=0),lo=Date.now());function qu(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;nt(zu(r,n.value),t,5,[r])};return n.value=e,n.attached=Gu(),n}function zu(e,t){if(X(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const ei=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Ju=(e,t,n,r,o,s)=>{const i=o==="svg";t==="class"?Mu(e,r,i):t==="style"?Hu(e,n,r):Jn(t)?Oo(t)||Wu(e,t,n,r,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Qu(e,t,r,i))?(ju(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ys(e,t,r,i,s,t!=="value")):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),Ys(e,t,r,i))};function Qu(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&ei(t)&&ne(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return ei(t)&&Te(n)?!1:t in e}const Yu={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Xu=(e,t)=>{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=o=>{if(!("key"in o))return;const s=Ht(o.key);if(t.some(i=>i===s||Yu[i]===s))return e(o)})},Zu=Me({patchProp:Ju},Au);let ao,ti=!1;function ef(){return ao=ti?ao:Xc(Zu),ti=!0,ao}const tf=(...e)=>{const t=ef().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=rf(r);if(o)return n(o,!0,nf(o))},t};function nf(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function rf(e){return Te(e)?document.querySelector(e):e}var or=e=>/^[a-z][a-z0-9+.-]*:/.test(e)||e.startsWith("//"),of=/.md((\?|#).*)?$/,sf=(e,t="/")=>or(e)||e.startsWith("/")&&!e.startsWith(t)&&!of.test(e),Kr=e=>/^(https?:)?\/\//.test(e),ni=e=>{if(!e||e.endsWith("/"))return e;let t=e.replace(/(^|\/)README.md$/i,"$1index.html");return t.endsWith(".md")?t=t.substring(0,t.length-3)+".html":t.endsWith(".html")||(t=t+".html"),t.endsWith("/index.html")&&(t=t.substring(0,t.length-10)),t},lf="http://.",af=(e,t)=>{if(!e.startsWith("/")&&t){const n=t.slice(0,t.lastIndexOf("/"));return ni(new URL(`${n}/${e}`,lf).pathname)}return ni(e)},cf=(e,t)=>{const n=Object.keys(e).sort((r,o)=>{const s=o.split("/").length-r.split("/").length;return s!==0?s:o.length-r.length});for(const r of n)if(t.startsWith(r))return r;return"/"},uf=/(#|\?)/,Il=e=>{const[t,...n]=e.split(uf);return{pathname:t,hashAndQueries:n.join("")}},ff=["link","meta","script","style","noscript","template"],df=["title","base"],hf=([e,t,n])=>df.includes(e)?e:ff.includes(e)?e==="meta"&&t.name?`${e}.${t.name}`:e==="template"&&t.id?`${e}.${t.id}`:JSON.stringify([e,Object.entries(t).map(([r,o])=>typeof o=="boolean"?o?[r,""]:null:[r,o]).filter(r=>r!=null).sort(([r],[o])=>r.localeCompare(o)),n]):null,pf=e=>{const t=new Set,n=[];return e.forEach(r=>{const o=hf(r);o&&!t.has(o)&&(t.add(o),n.push(r))}),n},gf=e=>e[e.length-1]==="/"||e.endsWith(".html")?e:`${e}/`,Ml=e=>e[e.length-1]==="/"?e.slice(0,-1):e,$l=e=>e[0]==="/"?e.slice(1):e,Yo=e=>Object.prototype.toString.call(e)==="[object Object]",st=e=>typeof e=="string";const mf="modulepreload",vf=function(e){return"/"+e},ri={},xn=function(t,n,r){let o=Promise.resolve();return n&&n.length>0&&(document.getElementsByTagName("link"),o=Promise.all(n.map(s=>{if(s=vf(s),s in ri)return;ri[s]=!0;const i=s.endsWith(".css"),l=i?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${s}"]${l}`))return;const a=document.createElement("link");if(a.rel=i?"stylesheet":mf,i||(a.as="script",a.crossOrigin=""),a.href=s,document.head.appendChild(a),i)return new Promise((c,f)=>{a.addEventListener("load",c),a.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${s}`)))})}))),o.then(()=>t()).catch(s=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s})},_f=JSON.parse("{}"),bf=Object.fromEntries([["/",{loader:()=>xn(()=>import("./index.html-DLgZGocO.js"),__vite__mapDeps([])),meta:{title:"Резюме"}}],["/works.html",{loader:()=>xn(()=>import("./works.html-D3oTJVPS.js"),__vite__mapDeps([])),meta:{title:"Работы"}}],["/eng/",{loader:()=>xn(()=>import("./index.html-zZCC-31N.js"),__vite__mapDeps([])),meta:{title:"Resume"}}],["/eng/works.html",{loader:()=>xn(()=>import("./works.html-BrLYBvQK.js"),__vite__mapDeps([])),meta:{title:"Works"}}],["/404.html",{loader:()=>xn(()=>import("./404.html-Bb8vIwe-.js"),__vite__mapDeps([])),meta:{title:""}}]]);/*! - * vue-router v4.4.0 - * (c) 2024 Eduardo San Martin Morote - * @license MIT - */const ln=typeof document<"u";function yf(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const me=Object.assign;function co(e,t){const n={};for(const r in t){const o=t[r];n[r]=it(o)?o.map(e):e(o)}return n}const Hn=()=>{},it=Array.isArray,Nl=/#/g,wf=/&/g,Sf=/\//g,Pf=/=/g,Cf=/\?/g,Hl=/\+/g,kf=/%5B/g,Lf=/%5D/g,Vl=/%5E/g,xf=/%60/g,jl=/%7B/g,Ef=/%7C/g,Fl=/%7D/g,Af=/%20/g;function Xo(e){return encodeURI(""+e).replace(Ef,"|").replace(kf,"[").replace(Lf,"]")}function Tf(e){return Xo(e).replace(jl,"{").replace(Fl,"}").replace(Vl,"^")}function Lo(e){return Xo(e).replace(Hl,"%2B").replace(Af,"+").replace(Nl,"%23").replace(wf,"%26").replace(xf,"`").replace(jl,"{").replace(Fl,"}").replace(Vl,"^")}function Rf(e){return Lo(e).replace(Pf,"%3D")}function Df(e){return Xo(e).replace(Nl,"%23").replace(Cf,"%3F")}function Of(e){return e==null?"":Df(e).replace(Sf,"%2F")}function Kn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const If=/\/$/,Mf=e=>e.replace(If,"");function uo(e,t,n="/"){let r,o={},s="",i="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(r=t.slice(0,a),s=t.slice(a+1,l>-1?l:t.length),o=e(s)),l>-1&&(r=r||t.slice(0,l),i=t.slice(l,t.length)),r=Vf(r??t,n),{fullPath:r+(s&&"?")+s+i,path:r,query:o,hash:Kn(i)}}function $f(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function oi(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function Nf(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&vn(t.matched[r],n.matched[o])&&Bl(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function vn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Bl(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!Hf(e[n],t[n]))return!1;return!0}function Hf(e,t){return it(e)?si(e,t):it(t)?si(t,e):e===t}function si(e,t){return it(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function Vf(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];(o===".."||o===".")&&r.push("");let s=n.length-1,i,l;for(i=0;i1&&s--;else break;return n.slice(0,s).join("/")+"/"+r.slice(i).join("/")}const mt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Gn;(function(e){e.pop="pop",e.push="push"})(Gn||(Gn={}));var Vn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Vn||(Vn={}));function jf(e){if(!e)if(ln){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),Mf(e)}const Ff=/^[^#]+#/;function Bf(e,t){return e.replace(Ff,"#")+t}function Wf(e,t){const 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)}}const Gr=()=>({left:window.scrollX,top:window.scrollY});function Uf(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=Wf(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function ii(e,t){return(history.state?history.state.position-t:-1)+e}const xo=new Map;function Kf(e,t){xo.set(e,t)}function Gf(e){const t=xo.get(e);return xo.delete(e),t}let qf=()=>location.protocol+"//"+location.host;function Wl(e,t){const{pathname:n,search:r,hash:o}=t,s=e.indexOf("#");if(s>-1){let l=o.includes(e.slice(s))?e.slice(s).length:1,a=o.slice(l);return a[0]!=="/"&&(a="/"+a),oi(a,"")}return oi(n,e)+r+o}function zf(e,t,n,r){let o=[],s=[],i=null;const l=({state:p})=>{const g=Wl(e,location),_=n.value,S=t.value;let k=0;if(p){if(n.value=g,t.value=p,i&&i===_){i=null;return}k=S?p.position-S.position:0}else r(g);o.forEach(R=>{R(n.value,_,{delta:k,type:Gn.pop,direction:k?k>0?Vn.forward:Vn.back:Vn.unknown})})};function a(){i=n.value}function c(p){o.push(p);const g=()=>{const _=o.indexOf(p);_>-1&&o.splice(_,1)};return s.push(g),g}function f(){const{history:p}=window;p.state&&p.replaceState(me({},p.state,{scroll:Gr()}),"")}function u(){for(const p of s)p();s=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",f)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",f,{passive:!0}),{pauseListeners:a,listen:c,destroy:u}}function li(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?Gr():null}}function Jf(e){const{history:t,location:n}=window,r={value:Wl(e,n)},o={value:t.state};o.value||s(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function s(a,c,f){const u=e.indexOf("#"),p=u>-1?(n.host&&document.querySelector("base")?e:e.slice(u))+a:qf()+e+a;try{t[f?"replaceState":"pushState"](c,"",p),o.value=c}catch(g){console.error(g),n[f?"replace":"assign"](p)}}function i(a,c){const f=me({},t.state,li(o.value.back,a,o.value.forward,!0),c,{position:o.value.position});s(a,f,!0),r.value=a}function l(a,c){const f=me({},o.value,t.state,{forward:a,scroll:Gr()});s(f.current,f,!0);const u=me({},li(r.value,a,null),{position:f.position+1},c);s(a,u,!1),r.value=a}return{location:r,state:o,push:l,replace:i}}function Qf(e){e=jf(e);const t=Jf(e),n=zf(e,t.state,t.location,t.replace);function r(s,i=!0){i||n.pauseListeners(),history.go(s)}const o=me({location:"",base:e,go:r,createHref:Bf.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function Yf(e){return typeof e=="string"||e&&typeof e=="object"}function Ul(e){return typeof e=="string"||typeof e=="symbol"}const Kl=Symbol("");var ai;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(ai||(ai={}));function _n(e,t){return me(new Error,{type:e,[Kl]:!0},t)}function gt(e,t){return e instanceof Error&&Kl in e&&(t==null||!!(e.type&t))}const ci="[^/]+?",Xf={sensitive:!1,strict:!1,start:!0,end:!0},Zf=/[.+*?^${}()[\]/\\]/g;function ed(e,t){const n=me({},Xf,t),r=[];let o=n.start?"^":"";const s=[];for(const c of e){const f=c.length?[]:[90];n.strict&&!c.length&&(o+="/");for(let u=0;ut.length?t.length===1&&t[0]===80?1:-1:0}function Gl(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const nd={type:0,value:""},rd=/[a-zA-Z0-9_]/;function od(e){if(!e)return[[]];if(e==="/")return[[nd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(g){throw new Error(`ERR (${n})/"${c}": ${g}`)}let n=0,r=n;const o=[];let s;function i(){s&&o.push(s),s=[]}let l=0,a,c="",f="";function u(){c&&(n===0?s.push({type:0,value:c}):n===1||n===2||n===3?(s.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:c,regexp:f,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function p(){c+=a}for(;l{i(m)}:Hn}function i(u){if(Ul(u)){const p=r.get(u);p&&(r.delete(u),n.splice(n.indexOf(p),1),p.children.forEach(i),p.alias.forEach(i))}else{const p=n.indexOf(u);p>-1&&(n.splice(p,1),u.record.name&&r.delete(u.record.name),u.children.forEach(i),u.alias.forEach(i))}}function l(){return n}function a(u){const p=ud(u,n);n.splice(p,0,u),u.record.name&&!di(u)&&r.set(u.record.name,u)}function c(u,p){let g,_={},S,k;if("name"in u&&u.name){if(g=r.get(u.name),!g)throw _n(1,{location:u});k=g.record.name,_=me(fi(p.params,g.keys.filter(m=>!m.optional).concat(g.parent?g.parent.keys.filter(m=>m.optional):[]).map(m=>m.name)),u.params&&fi(u.params,g.keys.map(m=>m.name))),S=g.stringify(_)}else if(u.path!=null)S=u.path,g=n.find(m=>m.re.test(S)),g&&(_=g.parse(S),k=g.record.name);else{if(g=p.name?r.get(p.name):n.find(m=>m.re.test(p.path)),!g)throw _n(1,{location:u,currentLocation:p});k=g.record.name,_=me({},p.params,u.params),S=g.stringify(_)}const R=[];let b=g;for(;b;)R.unshift(b.record),b=b.parent;return{name:k,path:S,params:_,matched:R,meta:cd(R)}}e.forEach(u=>s(u));function f(){n.length=0,r.clear()}return{addRoute:s,resolve:c,removeRoute:i,clearRoutes:f,getRoutes:l,getRecordMatcher:o}}function fi(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function ld(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:ad(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function ad(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function di(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function cd(e){return e.reduce((t,n)=>me(t,n.meta),{})}function hi(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function ud(e,t){let n=0,r=t.length;for(;n!==r;){const s=n+r>>1;Gl(e,t[s])<0?r=s:n=s+1}const o=fd(e);return o&&(r=t.lastIndexOf(o,r-1)),r}function fd(e){let t=e;for(;t=t.parent;)if(ql(t)&&Gl(e,t)===0)return t}function ql({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function dd(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;os&&Lo(s)):[r&&Lo(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function hd(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=it(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const pd=Symbol(""),gi=Symbol(""),qr=Symbol(""),Zo=Symbol(""),Eo=Symbol("");function En(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Tt(e,t,n,r,o,s=i=>i()){const i=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((l,a)=>{const c=p=>{p===!1?a(_n(4,{from:n,to:t})):p instanceof Error?a(p):Yf(p)?a(_n(2,{from:t,to:p})):(i&&r.enterCallbacks[o]===i&&typeof p=="function"&&i.push(p),l())},f=s(()=>e.call(r&&r.instances[o],t,n,c));let u=Promise.resolve(f);e.length<3&&(u=u.then(c)),u.catch(p=>a(p))})}function fo(e,t,n,r,o=s=>s()){const s=[];for(const i of e)for(const l in i.components){let a=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(gd(a)){const f=(a.__vccOpts||a)[t];f&&s.push(Tt(f,n,r,i,l,o))}else{let c=a();s.push(()=>c.then(f=>{if(!f)return Promise.reject(new Error(`Couldn't resolve component "${l}" at "${i.path}"`));const u=yf(f)?f.default:f;i.components[l]=u;const g=(u.__vccOpts||u)[t];return g&&Tt(g,n,r,i,l,o)()}))}}return s}function gd(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function mi(e){const t=Be(qr),n=Be(Zo),r=A(()=>{const a=Yt(e.to);return t.resolve(a)}),o=A(()=>{const{matched:a}=r.value,{length:c}=a,f=a[c-1],u=n.matched;if(!f||!u.length)return-1;const p=u.findIndex(vn.bind(null,f));if(p>-1)return p;const g=vi(a[c-2]);return c>1&&vi(f)===g&&u[u.length-1].path!==g?u.findIndex(vn.bind(null,a[c-2])):p}),s=A(()=>o.value>-1&&bd(n.params,r.value.params)),i=A(()=>o.value>-1&&o.value===n.matched.length-1&&Bl(n.params,r.value.params));function l(a={}){return _d(a)?t[Yt(e.replace)?"replace":"push"](Yt(e.to)).catch(Hn):Promise.resolve()}return{route:r,href:A(()=>r.value.href),isActive:s,isExactActive:i,navigate:l}}const md=he({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"}},useLink:mi,setup(e,{slots:t}){const n=Xn(mi(e)),{options:r}=Be(qr),o=A(()=>({[_i(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[_i(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const s=t.default&&t.default(n);return e.custom?s:ke("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},s)}}}),vd=md;function _d(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){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function bd(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!it(o)||o.length!==r.length||r.some((s,i)=>s!==o[i]))return!1}return!0}function vi(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const _i=(e,t,n)=>e??t??n,yd=he({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=Be(Eo),o=A(()=>e.route||r.value),s=Be(gi,0),i=A(()=>{let c=Yt(s);const{matched:f}=o.value;let u;for(;(u=f[c])&&!u.components;)c++;return c}),l=A(()=>o.value.matched[i.value]);Xt(gi,A(()=>i.value+1)),Xt(pd,l),Xt(Eo,o);const a=ue();return $e(()=>[a.value,l.value,e.name],([c,f,u],[p,g,_])=>{f&&(f.instances[u]=c,g&&g!==f&&c&&c===p&&(f.leaveGuards.size||(f.leaveGuards=g.leaveGuards),f.updateGuards.size||(f.updateGuards=g.updateGuards))),c&&f&&(!g||!vn(f,g)||!p)&&(f.enterCallbacks[u]||[]).forEach(S=>S(c))},{flush:"post"}),()=>{const c=o.value,f=e.name,u=l.value,p=u&&u.components[f];if(!p)return bi(n.default,{Component:p,route:c});const g=u.props[f],_=g?g===!0?c.params:typeof g=="function"?g(c):g:null,k=ke(p,me({},_,t,{onVnodeUnmounted:R=>{R.component.isUnmounted&&(u.instances[f]=null)},ref:a}));return bi(n.default,{Component:k,route:c})||k}}});function bi(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const wd=yd;function Sd(e){const t=id(e.routes,e),n=e.parseQuery||dd,r=e.stringifyQuery||pi,o=e.history,s=En(),i=En(),l=En(),a=yn(mt);let c=mt;ln&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const f=co.bind(null,P=>""+P),u=co.bind(null,Of),p=co.bind(null,Kn);function g(P,F){let H,q;return Ul(P)?(H=t.getRecordMatcher(P),q=F):q=P,t.addRoute(q,H)}function _(P){const F=t.getRecordMatcher(P);F&&t.removeRoute(F)}function S(){return t.getRoutes().map(P=>P.record)}function k(P){return!!t.getRecordMatcher(P)}function R(P,F){if(F=me({},F||a.value),typeof P=="string"){const h=uo(n,P,F.path),v=t.resolve({path:h.path},F),C=o.createHref(h.fullPath);return me(h,v,{params:p(v.params),hash:Kn(h.hash),redirectedFrom:void 0,href:C})}let H;if(P.path!=null)H=me({},P,{path:uo(n,P.path,F.path).path});else{const h=me({},P.params);for(const v in h)h[v]==null&&delete h[v];H=me({},P,{params:u(h)}),F.params=u(F.params)}const q=t.resolve(H,F),pe=P.hash||"";q.params=f(p(q.params));const Pe=$f(r,me({},P,{hash:Tf(pe),path:q.path})),d=o.createHref(Pe);return me({fullPath:Pe,hash:pe,query:r===pi?hd(P.query):P.query||{}},q,{redirectedFrom:void 0,href:d})}function b(P){return typeof P=="string"?uo(n,P,a.value.path):me({},P)}function m(P,F){if(c!==P)return _n(8,{from:F,to:P})}function w(P){return G(P)}function V(P){return w(me(b(P),{replace:!0}))}function O(P){const F=P.matched[P.matched.length-1];if(F&&F.redirect){const{redirect:H}=F;let q=typeof H=="function"?H(P):H;return typeof q=="string"&&(q=q.includes("?")||q.includes("#")?q=b(q):{path:q},q.params={}),me({query:P.query,hash:P.hash,params:q.path!=null?{}:P.params},q)}}function G(P,F){const H=c=R(P),q=a.value,pe=P.state,Pe=P.force,d=P.replace===!0,h=O(H);if(h)return G(me(b(h),{state:typeof h=="object"?me({},pe,h.state):pe,force:Pe,replace:d}),F||H);const v=H;v.redirectedFrom=F;let C;return!Pe&&Nf(r,q,H)&&(C=_n(16,{to:v,from:q}),ct(q,q,!0,!1)),(C?Promise.resolve(C):L(v,q)).catch(y=>gt(y)?gt(y,2)?y:Pt(y):K(y,v,q)).then(y=>{if(y){if(gt(y,2))return G(me({replace:d},b(y.to),{state:typeof y.to=="object"?me({},pe,y.to.state):pe,force:Pe}),F||v)}else y=T(v,q,!0,d,pe);return U(v,q,y),y})}function Z(P,F){const H=m(P,F);return H?Promise.reject(H):Promise.resolve()}function j(P){const F=rn.values().next().value;return F&&typeof F.runWithContext=="function"?F.runWithContext(P):P()}function L(P,F){let H;const[q,pe,Pe]=Pd(P,F);H=fo(q.reverse(),"beforeRouteLeave",P,F);for(const h of q)h.leaveGuards.forEach(v=>{H.push(Tt(v,P,F))});const d=Z.bind(null,P,F);return H.push(d),Ye(H).then(()=>{H=[];for(const h of s.list())H.push(Tt(h,P,F));return H.push(d),Ye(H)}).then(()=>{H=fo(pe,"beforeRouteUpdate",P,F);for(const h of pe)h.updateGuards.forEach(v=>{H.push(Tt(v,P,F))});return H.push(d),Ye(H)}).then(()=>{H=[];for(const h of Pe)if(h.beforeEnter)if(it(h.beforeEnter))for(const v of h.beforeEnter)H.push(Tt(v,P,F));else H.push(Tt(h.beforeEnter,P,F));return H.push(d),Ye(H)}).then(()=>(P.matched.forEach(h=>h.enterCallbacks={}),H=fo(Pe,"beforeRouteEnter",P,F,j),H.push(d),Ye(H))).then(()=>{H=[];for(const h of i.list())H.push(Tt(h,P,F));return H.push(d),Ye(H)}).catch(h=>gt(h,8)?h:Promise.reject(h))}function U(P,F,H){l.list().forEach(q=>j(()=>q(P,F,H)))}function T(P,F,H,q,pe){const Pe=m(P,F);if(Pe)return Pe;const d=F===mt,h=ln?history.state:{};H&&(q||d?o.replace(P.fullPath,me({scroll:d&&h&&h.scroll},pe)):o.push(P.fullPath,pe)),a.value=P,ct(P,F,H,d),Pt()}let ee;function ve(){ee||(ee=o.listen((P,F,H)=>{if(!ir.listening)return;const q=R(P),pe=O(q);if(pe){G(me(pe,{replace:!0}),q).catch(Hn);return}c=q;const Pe=a.value;ln&&Kf(ii(Pe.fullPath,H.delta),Gr()),L(q,Pe).catch(d=>gt(d,12)?d:gt(d,2)?(G(d.to,q).then(h=>{gt(h,20)&&!H.delta&&H.type===Gn.pop&&o.go(-1,!1)}).catch(Hn),Promise.reject()):(H.delta&&o.go(-H.delta,!1),K(d,q,Pe))).then(d=>{d=d||T(q,Pe,!1),d&&(H.delta&&!gt(d,8)?o.go(-H.delta,!1):H.type===Gn.pop&>(d,20)&&o.go(-1,!1)),U(q,Pe,d)}).catch(Hn)}))}let _e=En(),J=En(),oe;function K(P,F,H){Pt(P);const q=J.list();return q.length?q.forEach(pe=>pe(P,F,H)):console.error(P),Promise.reject(P)}function rt(){return oe&&a.value!==mt?Promise.resolve():new Promise((P,F)=>{_e.add([P,F])})}function Pt(P){return oe||(oe=!P,ve(),_e.list().forEach(([F,H])=>P?H(P):F()),_e.reset()),P}function ct(P,F,H,q){const{scrollBehavior:pe}=e;if(!ln||!pe)return Promise.resolve();const Pe=!H&&Gf(ii(P.fullPath,0))||(q||!H)&&history.state&&history.state.scroll||null;return wn().then(()=>pe(P,F,Pe)).then(d=>d&&Uf(d)).catch(d=>K(d,P,F))}const We=P=>o.go(P);let nn;const rn=new Set,ir={currentRoute:a,listening:!0,addRoute:g,removeRoute:_,clearRoutes:t.clearRoutes,hasRoute:k,getRoutes:S,resolve:R,options:e,push:w,replace:V,go:We,back:()=>We(-1),forward:()=>We(1),beforeEach:s.add,beforeResolve:i.add,afterEach:l.add,onError:J.add,isReady:rt,install(P){const F=this;P.component("RouterLink",vd),P.component("RouterView",wd),P.config.globalProperties.$router=F,Object.defineProperty(P.config.globalProperties,"$route",{enumerable:!0,get:()=>Yt(a)}),ln&&!nn&&a.value===mt&&(nn=!0,w(o.location).catch(pe=>{}));const H={};for(const pe in mt)Object.defineProperty(H,pe,{get:()=>a.value[pe],enumerable:!0});P.provide(qr,F),P.provide(Zo,Ji(H)),P.provide(Eo,a);const q=P.unmount;rn.add(P),P.unmount=function(){rn.delete(P),rn.size<1&&(c=mt,ee&&ee(),ee=null,a.value=mt,nn=!1,oe=!1),q()}}};function Ye(P){return P.reduce((F,H)=>F.then(()=>j(H)),Promise.resolve())}return ir}function Pd(e,t){const n=[],r=[],o=[],s=Math.max(t.matched.length,e.matched.length);for(let i=0;ivn(c,l))?r.push(l):n.push(l));const a=e.matched[i];a&&(t.matched.find(c=>vn(c,a))||o.push(a))}return[n,r,o]}function tn(){return Be(qr)}function St(e){return Be(Zo)}var es=Symbol(""),pt=()=>{const e=Be(es);if(!e)throw new Error("useClientData() is called without provider.");return e},Cd=()=>pt().pageComponent,Sn=()=>pt().pageData,at=()=>pt().pageFrontmatter,kd=()=>pt().pageHead,Ld=()=>pt().pageLang,xd=()=>pt().pageLayout,sr=()=>pt().routeLocale,Ed=()=>pt().routes,zl=()=>pt().siteData,ts=()=>pt().siteLocaleData,Ad=Symbol(""),Ao=yn(_f),pn=yn(bf),Jl=(e,t)=>{const n=af(e,t);if(pn.value[n])return n;const r=encodeURI(n);if(pn.value[r])return r;const o=Ao.value[n]||Ao.value[r];return o||n},qn=(e,t)=>{const{pathname:n,hashAndQueries:r}=Il(e),o=Jl(n,t),s=o+r;return pn.value[o]?{...pn.value[o],path:s,notFound:!1}:{...pn.value["/404.html"],path:s,notFound:!0}},Td=(e,t)=>{const{pathname:n,hashAndQueries:r}=Il(e);return Jl(n,t)+r},Rd=e=>{if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget){const t=e.currentTarget.getAttribute("target");if(t!=null&&t.match(/\b_blank\b/i))return}return e.preventDefault(),!0}},zr=he({name:"RouteLink",props:{to:{type:String,required:!0},active:Boolean,activeClass:{type:String,default:"route-link-active"}},slots:Object,setup(e,{slots:t}){const n=tn(),r=St(),o=A(()=>e.to.startsWith("#")||e.to.startsWith("?")?e.to:`/${Td(e.to,r.path).substring(1)}`);return()=>{var s;return ke("a",{class:["route-link",{[e.activeClass]:e.active}],href:o.value,onClick:(i={})=>{Rd(i)&&n.push(e.to).catch()}},(s=t.default)==null?void 0:s.call(t))}}}),Pn=he({name:"AutoLink",props:{config:{type:Object,required:!0}},slots:Object,setup(e,{slots:t}){const n=ac(e,"config"),r=St(),o=zl(),s=A(()=>or(n.value.link)),i=A(()=>n.value.target||(s.value?"_blank":void 0)),l=A(()=>i.value==="_blank"),a=A(()=>!s.value&&!l.value),c=A(()=>n.value.rel||(l.value?"noopener noreferrer":null)),f=A(()=>n.value.ariaLabel??n.value.text),u=A(()=>{if(n.value.exact)return!1;const g=Object.keys(o.value.locales);return g.length?g.every(_=>_!==n.value.link):n.value.link!=="/"}),p=A(()=>a.value?n.value.activeMatch?(n.value.activeMatch instanceof RegExp?n.value.activeMatch:new RegExp(n.value.activeMatch,"u")).test(r.path):u.value?r.path.startsWith(n.value.link):r.path===n.value.link:!1);return()=>{const{before:g,after:_,default:S}=t,k=(S==null?void 0:S(n.value))||[g==null?void 0:g(n.value),n.value.text,_==null?void 0:_(n.value)];return a.value?ke(zr,{class:"auto-link",to:n.value.link,active:p.value,"aria-label":f.value},()=>k):ke("a",{class:"auto-link external-link",href:n.value.link,"aria-label":f.value,rel:c.value,target:i.value},k)}}}),ns=he({name:"ClientOnly",setup(e,t){const n=ue(!1);return Ge(()=>{n.value=!0}),()=>{var r,o;return n.value?(o=(r=t.slots).default)==null?void 0:o.call(r):null}}}),rs=he({name:"Content",props:{path:{type:String,required:!1,default:""}},setup(e){const t=Cd(),n=A(()=>{if(!e.path)return t.value;const r=qn(e.path);return bc(()=>r.loader().then(({comp:o})=>o))});return()=>ke(n.value)}}),Dd="Layout",Od="en-US",Kt=Xn({resolveLayouts:e=>e.reduce((t,n)=>({...t,...n.layouts}),{}),resolvePageHead:(e,t,n)=>{const r=st(t.description)?t.description:n.description,o=[...Array.isArray(t.head)?t.head:[],...n.head,["title",{},e],["meta",{name:"description",content:r}]];return pf(o)},resolvePageHeadTitle:(e,t)=>[e.title,t.title].filter(n=>!!n).join(" | "),resolvePageLang:(e,t)=>e.lang||t.lang||Od,resolvePageLayout:(e,t)=>{const n=st(e.frontmatter.layout)?e.frontmatter.layout:Dd;if(!t[n])throw new Error(`[vuepress] Cannot resolve layout: ${n}`);return t[n]},resolveRouteLocale:(e,t)=>cf(e,decodeURI(t)),resolveSiteLocaleData:({base:e,locales:t,...n},r)=>{var o;return{...n,...t[r],head:[...((o=t[r])==null?void 0:o.head)??[],...n.head??[]]}}}),Ft=(e={})=>e,os=e=>Kr(e)?e:`/${$l(e)}`;function Jr(e){return Ni()?(Oa(e),!0):!1}function ht(e){return typeof e=="function"?e():Yt(e)}const ss=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Id=Object.prototype.toString,Md=e=>Id.call(e)==="[object Object]",To=()=>{};function Ql(e,t){function n(...r){return new Promise((o,s)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(o).catch(s)})}return n}const Yl=e=>e();function $d(e,t={}){let n,r,o=To;const s=l=>{clearTimeout(l),o(),o=To};return l=>{const a=ht(e),c=ht(t.maxWait);return n&&s(n),a<=0||c!==void 0&&c<=0?(r&&(s(r),r=null),Promise.resolve(l())):new Promise((f,u)=>{o=t.rejectOnCancel?u:f,c&&!r&&(r=setTimeout(()=>{n&&s(n),r=null,f(l())},c)),n=setTimeout(()=>{r&&s(r),r=null,f(l())},a)})}}function Nd(e=Yl){const t=ue(!0);function n(){t.value=!1}function r(){t.value=!0}const o=(...s)=>{t.value&&e(...s)};return{isActive:Nr(t),pause:n,resume:r,eventFilter:o}}function Hd(e){let t;function n(){return t||(t=e()),t}return n.reset=async()=>{const r=t;t=void 0,r&&await r},n}function Vd(e){return Wr()}function jd(e,t=200,n={}){return Ql($d(t,n),e)}function Fd(e,t,n={}){const{eventFilter:r=Yl,...o}=n;return $e(e,Ql(r,t),o)}function Bd(e,t,n={}){const{eventFilter:r,...o}=n,{eventFilter:s,pause:i,resume:l,isActive:a}=Nd(r);return{stop:Fd(e,t,{...o,eventFilter:s}),pause:i,resume:l,isActive:a}}function is(e,t=!0,n){Vd()?Ge(e,n):t?e():wn(e)}function Wd(e,t,n={}){const{immediate:r=!0}=n,o=ue(!1);let s=null;function i(){s&&(clearTimeout(s),s=null)}function l(){o.value=!1,i()}function a(...c){i(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=null,e(...c)},ht(t))}return r&&(o.value=!0,ss&&a()),Jr(l),{isPending:Nr(o),start:a,stop:l}}function Ud(e=!1,t={}){const{truthyValue:n=!0,falsyValue:r=!1}=t,o=Ne(e),s=ue(e);function i(l){if(arguments.length)return s.value=l,s.value;{const a=ht(n);return s.value=s.value===a?ht(r):a,s.value}}return o?i:[s,i]}function zt(e){var t;const n=ht(e);return(t=n==null?void 0:n.$el)!=null?t:n}const yt=ss?window:void 0,Xl=ss?window.navigator:void 0;function lt(...e){let t,n,r,o;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,o]=e,t=yt):[t,n,r,o]=e,!t)return To;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const s=[],i=()=>{s.forEach(f=>f()),s.length=0},l=(f,u,p,g)=>(f.addEventListener(u,p,g),()=>f.removeEventListener(u,p,g)),a=$e(()=>[zt(t),ht(o)],([f,u])=>{if(i(),!f)return;const p=Md(u)?{...u}:u;s.push(...n.flatMap(g=>r.map(_=>l(f,g,_,p))))},{immediate:!0,flush:"post"}),c=()=>{a(),i()};return Jr(c),c}function Kd(){const e=ue(!1),t=Wr();return t&&Ge(()=>{e.value=!0},t),e}function Qr(e){const t=Kd();return A(()=>(t.value,!!e()))}function ls(e,t={}){const{window:n=yt}=t,r=Qr(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const s=ue(!1),i=c=>{s.value=c.matches},l=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",i):o.removeListener(i))},a=ru(()=>{r.value&&(l(),o=n.matchMedia(ht(e)),"addEventListener"in o?o.addEventListener("change",i):o.addListener(i),s.value=o.matches)});return Jr(()=>{a(),l(),o=void 0}),s}function yi(e,t={}){const{controls:n=!1,navigator:r=Xl}=t,o=Qr(()=>r&&"permissions"in r);let s;const i=typeof e=="string"?{name:e}:e,l=ue(),a=()=>{s&&(l.value=s.state)},c=Hd(async()=>{if(o.value){if(!s)try{s=await r.permissions.query(i),lt(s,"change",a),a()}catch{l.value="prompt"}return s}});return c(),n?{state:l,isSupported:o,query:c}:l}function Gd(e={}){const{navigator:t=Xl,read:n=!1,source:r,copiedDuring:o=1500,legacy:s=!1}=e,i=Qr(()=>t&&"clipboard"in t),l=yi("clipboard-read"),a=yi("clipboard-write"),c=A(()=>i.value||s),f=ue(""),u=ue(!1),p=Wd(()=>u.value=!1,o);function g(){i.value&&R(l.value)?t.clipboard.readText().then(b=>{f.value=b}):f.value=k()}c.value&&n&<(["copy","cut"],g);async function _(b=ht(r)){c.value&&b!=null&&(i.value&&R(a.value)?await t.clipboard.writeText(b):S(b),f.value=b,u.value=!0,p.start())}function S(b){const m=document.createElement("textarea");m.value=b??"",m.style.position="absolute",m.style.opacity="0",document.body.appendChild(m),m.select(),document.execCommand("copy"),m.remove()}function k(){var b,m,w;return(w=(m=(b=document==null?void 0:document.getSelection)==null?void 0:b.call(document))==null?void 0:m.toString())!=null?w:""}function R(b){return b==="granted"||b==="prompt"}return{isSupported:c,text:f,copied:u,copy:_}}const mr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},vr="__vueuse_ssr_handlers__",qd=zd();function zd(){return vr in mr||(mr[vr]=mr[vr]||{}),mr[vr]}function Jd(e,t){return qd[e]||t}function Qd(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const Yd={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},wi="vueuse-storage";function as(e,t,n,r={}){var o;const{flush:s="pre",deep:i=!0,listenToStorageChanges:l=!0,writeDefaults:a=!0,mergeDefaults:c=!1,shallow:f,window:u=yt,eventFilter:p,onError:g=L=>{console.error(L)},initOnMounted:_}=r,S=(f?yn:ue)(typeof t=="function"?t():t);if(!n)try{n=Jd("getDefaultStorage",()=>{var L;return(L=yt)==null?void 0:L.localStorage})()}catch(L){g(L)}if(!n)return S;const k=ht(t),R=Qd(k),b=(o=r.serializer)!=null?o:Yd[R],{pause:m,resume:w}=Bd(S,()=>O(S.value),{flush:s,deep:i,eventFilter:p});u&&l&&is(()=>{lt(u,"storage",Z),lt(u,wi,j),_&&Z()}),_||Z();function V(L,U){u&&u.dispatchEvent(new CustomEvent(wi,{detail:{key:e,oldValue:L,newValue:U,storageArea:n}}))}function O(L){try{const U=n.getItem(e);if(L==null)V(U,null),n.removeItem(e);else{const T=b.write(L);U!==T&&(n.setItem(e,T),V(U,T))}}catch(U){g(U)}}function G(L){const U=L?L.newValue:n.getItem(e);if(U==null)return a&&k!=null&&n.setItem(e,b.write(k)),k;if(!L&&c){const T=b.read(U);return typeof c=="function"?c(T,k):R==="object"&&!Array.isArray(T)?{...k,...T}:T}else return typeof U!="string"?U:b.read(U)}function Z(L){if(!(L&&L.storageArea!==n)){if(L&&L.key==null){S.value=k;return}if(!(L&&L.key!==e)){m();try{(L==null?void 0:L.newValue)!==b.write(S.value)&&(S.value=G(L))}catch(U){g(U)}finally{L?wn(w):w()}}}}function j(L){Z(L.detail)}return S}function Xd(e){return ls("(prefers-color-scheme: dark)",e)}function Zd(e,t,n={}){const{window:r=yt,...o}=n;let s;const i=Qr(()=>r&&"ResizeObserver"in r),l=()=>{s&&(s.disconnect(),s=void 0)},a=A(()=>Array.isArray(e)?e.map(u=>zt(u)):[zt(e)]),c=$e(a,u=>{if(l(),i.value&&r){s=new ResizeObserver(t);for(const p of u)p&&s.observe(p,o)}},{immediate:!0,flush:"post"}),f=()=>{l(),c()};return Jr(f),{isSupported:i,stop:f}}function eh(e,t={width:0,height:0},n={}){const{window:r=yt,box:o="content-box"}=n,s=A(()=>{var u,p;return(p=(u=zt(e))==null?void 0:u.namespaceURI)==null?void 0:p.includes("svg")}),i=ue(t.width),l=ue(t.height),{stop:a}=Zd(e,([u])=>{const p=o==="border-box"?u.borderBoxSize:o==="content-box"?u.contentBoxSize:u.devicePixelContentBoxSize;if(r&&s.value){const g=zt(e);if(g){const _=g.getBoundingClientRect();i.value=_.width,l.value=_.height}}else if(p){const g=Array.isArray(p)?p:[p];i.value=g.reduce((_,{inlineSize:S})=>_+S,0),l.value=g.reduce((_,{blockSize:S})=>_+S,0)}else i.value=u.contentRect.width,l.value=u.contentRect.height},n);is(()=>{const u=zt(e);u&&(i.value="offsetWidth"in u?u.offsetWidth:t.width,l.value="offsetHeight"in u?u.offsetHeight:t.height)});const c=$e(()=>zt(e),u=>{i.value=u?t.width:0,l.value=u?t.height:0});function f(){a(),c()}return{width:i,height:l,stop:f}}function th(e,t,n={}){const{window:r=yt}=n;return as(e,t,r==null?void 0:r.sessionStorage,n)}function nh(e={}){const{window:t=yt,behavior:n="auto"}=e;if(!t)return{x:ue(0),y:ue(0)};const r=ue(t.scrollX),o=ue(t.scrollY),s=A({get(){return r.value},set(l){scrollTo({left:l,behavior:n})}}),i=A({get(){return o.value},set(l){scrollTo({top:l,behavior:n})}});return lt(t,"scroll",()=>{r.value=t.scrollX,o.value=t.scrollY},{capture:!1,passive:!0}),{x:s,y:i}}function rh(e={}){const{window:t=yt,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:r=Number.POSITIVE_INFINITY,listenOrientation:o=!0,includeScrollbar:s=!0}=e,i=ue(n),l=ue(r),a=()=>{t&&(s?(i.value=t.innerWidth,l.value=t.innerHeight):(i.value=t.document.documentElement.clientWidth,l.value=t.document.documentElement.clientHeight))};if(a(),is(a),lt("resize",a,{passive:!0}),o){const c=ls("(orientation: portrait)");$e(c,()=>a())}return{width:i,height:l}}const Si=async(e,t)=>{const{path:n,query:r}=e.currentRoute.value,{scrollBehavior:o}=e.options;e.options.scrollBehavior=void 0,await e.replace({path:n,query:r,hash:t}),e.options.scrollBehavior=o},oh=({headerLinkSelector:e,headerAnchorSelector:t,delay:n,offset:r=5})=>{const o=tn();lt("scroll",jd(()=>{var _,S;const i=Math.max(window.scrollY,document.documentElement.scrollTop,document.body.scrollTop);if(Math.abs(i-0)u.some(R=>R.hash===k.hash));for(let k=0;k=(((_=R.parentElement)==null?void 0:_.offsetTop)??0)-r,w=!b||i<(((S=b.parentElement)==null?void 0:S.offsetTop)??0)-r;if(!(m&&w))continue;const O=decodeURIComponent(o.currentRoute.value.hash),G=decodeURIComponent(R.hash);if(O===G)return;if(f){for(let Z=k+1;Z{const t=sr();return A(()=>e[t.value]??{})},fh=()=>{const e=Ed();return A(()=>Object.keys(e.value))},ho=(e,t)=>{var r;const n=(r=Wr())==null?void 0:r.appContext.components;return n?e in n||Qe(e)in n||Qn(Qe(e))in n:!1},dh=e=>new Promise(t=>setTimeout(t,e)),hh=({selector:e=[...new Array(6)].map((r,o)=>`#vp-content h${o+1}`).join(","),levels:t=2,ignore:n=[]}={})=>{const r=Array.from(document.querySelectorAll(e)).filter(o=>o.id&&o.hasChildNodes()).map(o=>{const s=Number(o.tagName[1]);return{element:o,title:ph(o,n),link:"#"+o.id,slug:o.id,level:s}});return gh(r,t)},ph=(e,t=[])=>{let n="";if(t.length){const r=e.cloneNode(!0);r.querySelectorAll(t.join(",")).forEach(o=>o.remove()),n=r.textContent||""}else n=e.textContent||"";return n.trim()},gh=(e,t=2)=>{if(t===!1)return[];const[n,r]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;e=e.filter(s=>s.level>=n&&s.level<=r);const o=[];e:for(let s=0;s=0;l--){const a=e[l];if(a.levelst(e)&&e.startsWith(t),mh=Object.keys,ta=e=>ea(e,"/");var vh={"/eng/":{backToTop:"Back to top"},"/":{backToTop:"Вернуться к началу"}};const _h=he({name:"BackToTop",setup(){const e=at(),t=Zl(vh),n=yn(),{height:r}=eh(n),{height:o}=rh(),{y:s}=nh(),i=A(()=>e.value.backToTop!==!1&&s.value>100),l=A(()=>s.value/(r.value-o.value)*100);return Ge(()=>{n.value=document.body}),()=>ke(rr,{name:"back-to-top"},()=>i.value?ke("button",{type:"button",class:"vp-back-to-top-button","aria-label":t.value.backToTop,onClick:()=>{window.scrollTo({top:0,behavior:"smooth"})}},[ke("span",{class:"vp-scroll-progress",role:"progressbar","aria-labelledby":"loadinglabel","aria-valuenow":l.value},ke("svg",ke("circle",{cx:"26",cy:"26",r:"24",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-dasharray":`${Math.PI*l.value*.48} ${Math.PI*(100-l.value)*.48}`}))),ke("div",{class:"back-to-top-icon"})]):null)}}),bh=Ft({rootComponents:[_h]}),yh=Object.freeze(Object.defineProperty({__proto__:null,default:bh},Symbol.toStringTag,{value:"Module"})),wh=/language-(shellscript|shell|bash|sh|zsh)/,Sh=({delay:e=500,duration:t=2e3,locales:n,selector:r,showInMobile:o,ignoreSelector:s=[],transform:i})=>{const l=ls("(max-width: 419px)"),a=A(()=>!l.value||o),c=Zl(n),f=Sn(),u=k=>{var b;if(k.hasAttribute("copy-code-registered"))return;const R=document.createElement("button");R.type="button",R.classList.add("vp-copy-code-button"),R.setAttribute("aria-label",c.value.copy),R.setAttribute("data-copied",c.value.copied),(b=k.parentElement)==null||b.insertBefore(R,k),k.setAttribute("copy-code-registered","")};$e(()=>[f.value.path,a.value],async()=>{document.body.classList.toggle("copy-code-disabled",!a.value),a.value&&(await wn(),await dh(e),document.querySelectorAll(r.join(",")).forEach(u))},{immediate:!0});const{copy:g}=Gd({legacy:!0}),_=new WeakMap,S=(k,R,b)=>{const m=R.cloneNode(!0);s.length&&m.querySelectorAll(s.join(",")).forEach(V=>V.remove()),i&&i(m);let w=m.textContent||"";wh.test(k.className)&&(w=w.replace(/^ *(\$|>) /gm,"")),g(w).then(()=>{if(t<=0)return;b.classList.add("copied"),clearTimeout(_.get(b));const V=setTimeout(()=>{b.classList.remove("copied"),b.blur(),_.delete(b)},t);_.set(b,V)})};lt("click",k=>{const R=k.target;if(a.value&&R.matches('div[class*="language-"] > button.vp-copy-code-button')){const b=R.parentElement,m=R.nextElementSibling;if(!b||!m)return;S(b,m,R)}})};var Ph={"/eng/":{copy:"Copy code",copied:"Copied"},"/":{copy:"Скопировать код",copied:"Скопировано"}},Ch=['.theme-default-content div[class*="language-"] pre'];const kh=Ft({setup:()=>{Sh({selector:Ch,locales:Ph,duration:2e3,delay:500,showInMobile:!1})}}),Lh=Object.freeze(Object.defineProperty({__proto__:null,default:kh},Symbol.toStringTag,{value:"Module"}));/** - * NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress - * @license MIT - */const ae={settings:{minimum:.08,easing:"ease",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,barSelector:'[role="bar"]',parent:"body",template:'
'},status:null,set:e=>{const t=ae.isStarted();e=po(e,ae.settings.minimum,1),ae.status=e===1?null:e;const n=ae.render(!t),r=n.querySelector(ae.settings.barSelector),o=ae.settings.speed,s=ae.settings.easing;return n.offsetWidth,xh(i=>{_r(r,{transform:"translate3d("+Pi(e)+"%,0,0)",transition:"all "+o+"ms "+s}),e===1?(_r(n,{transition:"none",opacity:"1"}),n.offsetWidth,setTimeout(()=>{_r(n,{transition:"all "+o+"ms linear",opacity:"0"}),setTimeout(()=>{ae.remove(),i()},o)},o)):setTimeout(()=>i(),o)}),ae},isStarted:()=>typeof ae.status=="number",start:()=>{ae.status||ae.set(0);const e=()=>{setTimeout(()=>{ae.status&&(ae.trickle(),e())},ae.settings.trickleSpeed)};return ae.settings.trickle&&e(),ae},done:e=>!e&&!ae.status?ae:ae.inc(.3+.5*Math.random()).set(1),inc:e=>{let t=ae.status;return t?(typeof e!="number"&&(e=(1-t)*po(Math.random()*t,.1,.95)),t=po(t+e,0,.994),ae.set(t)):ae.start()},trickle:()=>ae.inc(Math.random()*ae.settings.trickleRate),render:e=>{if(ae.isRendered())return document.getElementById("nprogress");Ci(document.documentElement,"nprogress-busy");const t=document.createElement("div");t.id="nprogress",t.innerHTML=ae.settings.template;const n=t.querySelector(ae.settings.barSelector),r=e?"-100":Pi(ae.status||0),o=document.querySelector(ae.settings.parent);return _r(n,{transition:"all 0 linear",transform:"translate3d("+r+"%,0,0)"}),o!==document.body&&Ci(o,"nprogress-custom-parent"),o==null||o.appendChild(t),t},remove:()=>{ki(document.documentElement,"nprogress-busy"),ki(document.querySelector(ae.settings.parent),"nprogress-custom-parent");const e=document.getElementById("nprogress");e&&Eh(e)},isRendered:()=>!!document.getElementById("nprogress")},po=(e,t,n)=>en?n:e,Pi=e=>(-1+e)*100,xh=function(){const e=[];function t(){const n=e.shift();n&&n(t)}return function(n){e.push(n),e.length===1&&t()}}(),_r=function(){const e=["Webkit","O","Moz","ms"],t={};function n(i){return i.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(l,a){return a.toUpperCase()})}function r(i){const l=document.body.style;if(i in l)return i;let a=e.length;const c=i.charAt(0).toUpperCase()+i.slice(1);let f;for(;a--;)if(f=e[a]+c,f in l)return f;return i}function o(i){return i=n(i),t[i]??(t[i]=r(i))}function s(i,l,a){l=o(l),i.style[l]=a}return function(i,l){for(const a in l){const c=l[a];c!==void 0&&Object.prototype.hasOwnProperty.call(l,a)&&s(i,a,c)}}}(),na=(e,t)=>(typeof e=="string"?e:cs(e)).indexOf(" "+t+" ")>=0,Ci=(e,t)=>{const n=cs(e),r=n+t;na(n,t)||(e.className=r.substring(1))},ki=(e,t)=>{const n=cs(e);if(!na(e,t))return;const r=n.replace(" "+t+" "," ");e.className=r.substring(1,r.length-1)},cs=e=>(" "+(e.className||"")+" ").replace(/\s+/gi," "),Eh=e=>{e&&e.parentNode&&e.parentNode.removeChild(e)},Ah=()=>{Ge(()=>{const e=tn(),t=new Set;t.add(e.currentRoute.value.path),e.beforeEach(n=>{t.has(n.path)||ae.start()}),e.afterEach(n=>{t.add(n.path),ae.done()})})},Th=Ft({setup(){Ah()}}),Rh=Object.freeze(Object.defineProperty({__proto__:null,default:Th},Symbol.toStringTag,{value:"Module"})),Dh=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),Oh=JSON.parse(`{"repo":"https://git.pleshevski.ru/pleshevskiy/pleshevski.ru","locales":{"/":{"selectLanguageName":"Русский","navbar":["/","/works"],"notFound":["Верните страницу!","Мы потеряли страницу...","Вы заблокированы в лабиринте.","Искали кота?","Страница украдена.","Ошиблись в параллельной вселенной."],"backToHome":"Вернуться на главную","worksTable":{"name":"Название","description":"Описание","role":"Роль","technologies":"Технологии","status":"Статус","dates":"Даты"}},"/eng/":{"selectLanguageName":"English","navbar":["/eng/","/eng/works"],"notFound":["Return the page!","We lost a page...","You're blocked in a labyrinth.","Looking for a cat?","The page has been stolen.","Wrong turn in parallel universe."],"backToHome":"Back to home","worksTable":{"name":"Name","description":"Description","role":"Role","technologies":"Technologies","status":"Status","dates":"Dates"}}},"colorMode":"auto","colorModeSwitch":true,"navbar":[],"logo":null,"selectLanguageText":"Languages","selectLanguageAriaLabel":"Select language","sidebar":"heading","sidebarDepth":2,"editLink":true,"editLinkText":"Edit this page","lastUpdated":true,"lastUpdatedText":"Last Updated","contributors":true,"contributorsText":"Contributors","notFound":["There's nothing here.","How did we get here?","That's a Four-Oh-Four.","Looks like we've got some broken links."],"backToHome":"Take me home","openInNewWindow":"open in new window","toggleColorMode":"toggle color mode","toggleSidebar":"toggle sidebar"}`),Ih=ue(Oh),ra=()=>Ih,oa=Symbol(""),Mh=()=>{const e=Be(oa);if(!e)throw new Error("useThemeLocaleData() is called without provider.");return e},$h=(e,t)=>{const{locales:n,...r}=e;return{...r,...n==null?void 0:n[t]}},Nh=Ft({enhance({app:e}){const t=ra(),n=e._context.provides[es],r=A(()=>$h(t.value,n.routeLocale.value));e.provide(oa,r),Object.defineProperties(e.config.globalProperties,{$theme:{get(){return t.value}},$themeLocale:{get(){return r.value}}})}}),Hh=Object.freeze(Object.defineProperty({__proto__:null,default:Nh},Symbol.toStringTag,{value:"Module"})),Vh=()=>ra(),Re=()=>Mh(),sa=Symbol(""),jh=e=>{const t=(n=e.value)=>{const r=window.document.documentElement;r.classList.toggle("dark",n),r.dataset.theme=n?"dark":"light"};Ge(()=>{$e(e,t,{immediate:!0})}),Fr(()=>t())},us=()=>{const e=Be(sa);if(!e)throw new Error("useDarkMode() is called without provider.");return e},Fh=()=>{const e=Re(),t=Xd(),n=as("vuepress-color-scheme",e.value.colorMode),r=A({get(){return e.value.colorModeSwitch?n.value==="auto"?t.value:n.value==="dark":e.value.colorMode==="dark"},set(o){o===t.value?n.value="auto":n.value=o?"dark":"light"}});Xt(sa,r),jh(r)};let go=null,An=null;const Bh={wait:()=>go,pending:()=>{go=new Promise(e=>An=e)},resolve:()=>{An==null||An(),go=null,An=null}},ia=()=>Bh,bn=(e,t)=>{const{notFound:n,meta:r,path:o}=qn(e,t);return n?{text:o,link:o}:{text:r.title||o,link:o}},Li=e=>decodeURI(e).replace(/#.*$/,"").replace(/(index)?\.(md|html)$/,""),Wh=(e,t)=>{if(t.hash===e)return!0;const n=Li(t.path),r=Li(e);return n===r},la=(e,t)=>e.link&&Wh(e.link,t)?!0:"children"in e?e.children.some(n=>la(n,t)):!1,aa=e=>!sf(e)&&!or(e),ca=e=>!Kr(e)||/github\.com/.test(e)?"GitHub":/bitbucket\.org/.test(e)?"Bitbucket":/gitlab\.com/.test(e)?"GitLab":/gitee\.com/.test(e)?"Gitee":null,Uh={GitHub:":repo/edit/:branch/:path",GitLab:":repo/-/edit/:branch/:path",Gitee:":repo/edit/:branch/:path",Bitbucket:":repo/src/:branch/:path?mode=edit&spa=0&at=:branch&fileviewer=file-view-default"},Kh=({docsRepo:e,editLinkPattern:t})=>{if(t)return t;const n=ca(e);return n!==null?Uh[n]:null},Gh=({docsRepo:e,docsBranch:t,docsDir:n,filePathRelative:r,editLinkPattern:o})=>{if(!r)return null;const s=Kh({docsRepo:e,editLinkPattern:o});return s?s.replace(/:repo/,Kr(e)?e:`https://github.com/${e}`).replace(/:branch/,t).replace(/:path/,$l(`${Ml(n)}/${r}`)):null},gn=(e="",t="")=>ta(t)||or(t)?t:`${gf(e)}${t}`,Sr=ue([]),qh=()=>{const e=tn(),t=Re(),n=at(),r=A(()=>n.value.sidebarDepth??t.value.sidebarDepth??2);e.beforeEach((s,i)=>{s.path!==i.path&&(Sr.value=[])});const o=()=>{if(r.value<=0){Sr.value=[];return}Sr.value=hh({selector:[...new Array(6)].map((s,i)=>`.theme-default-content h${i+1}`).join(","),levels:[2,r.value+1],ignore:[".vp-badge"]})};$e(r,o),Ge(o)},zh=()=>Sr,ua=Symbol("sidebarItems"),fs=()=>{const e=Be(ua);if(!e)throw new Error("useSidebarItems() is called without provider.");return e},Jh=()=>{const e=Re(),t=at(),n=Sn(),r=St(),o=sr(),s=zh(),i=A(()=>t.value.home?!1:t.value.sidebar??e.value.sidebar??"heading"),l=A(()=>Qh(i.value,n.value,r.path,o.value,s.value));Xt(ua,l)},Qh=(e,t,n,r,o)=>e===!1?[]:e==="heading"?fa(t,o):Array.isArray(e)?da(e,o,n,r):Yo(e)?Xh(e,t,o,n):[],Yh=e=>({text:e.title,link:e.link,children:ds(e.children)}),ds=e=>e?e.map(t=>Yh(t)):[],fa=(e,t)=>[{text:e.title,children:ds(t)}],da=(e,t,n,r="")=>{const o=(s,i)=>{var a;const l=st(s)?bn(gn(i,s)):st(s.link)?{...s,link:aa(s.link)?bn(gn(i,s.link)).link:s.link}:s;if("children"in l)return{...l,children:l.children.map(c=>o(c,gn(i,l.prefix)))};if(l.link===n){const c=((a=t[0])==null?void 0:a.level)===1?t[0].children:t;return{...l,children:ds(c)}}return l};return e.map(s=>o(s,r))},Xh=(e,t,n,r)=>{const o=mh(e).sort((s,i)=>i.length-s.length);for(const s of o)if(ea(decodeURI(r),s)){const i=e[s];return i?i==="heading"?fa(t,n):da(i,n,r,s):[]}return console.warn(`${decodeURI(r)} is missing sidebar config.`),[]},Zh=he({__name:"Badge",props:{type:{default:"tip"},text:{default:""},vertical:{default:void 0}},setup(e,{expose:t}){t();const n={};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),we=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n};function ep(e,t,n,r,o,s){return $(),Y("span",{class:Fe(["vp-badge",n.type]),style:Yn({verticalAlign:n.vertical})},[Le(e.$slots,"default",{},()=>[$t(le(n.text),1)])],6)}const tp=we(Zh,[["render",ep],["__file","Badge.vue"]]),np=he({name:"CodeGroup",slots:Object,setup(e,{slots:t}){const n=ue([]),r=ue(-1),o=as("vuepress-code-group",{}),s=A(()=>n.value.map(c=>c.innerText).join(","));Ge(()=>{$e(()=>o.value[s.value],(c=-1)=>{r.value!==c&&(r.value=c)},{immediate:!0}),$e(r,c=>{o.value[s.value]!==c&&(o.value[s.value]=c)})});const i=(c=r.value)=>{c{c>0?r.value=c-1:r.value=n.value.length-1,n.value[r.value].focus()},a=(c,f)=>{c.key===" "||c.key==="Enter"?(c.preventDefault(),r.value=f):c.key==="ArrowRight"?(c.preventDefault(),i(f)):c.key==="ArrowLeft"&&(c.preventDefault(),l(f))};return()=>{var f;const c=(((f=t.default)==null?void 0:f.call(t))||[]).filter(u=>u.type.name==="CodeGroupItem").map(u=>(u.props===null&&(u.props={}),u));return c.length===0?null:(r.value<0||r.value>c.length-1?(r.value=c.findIndex(u=>u.props.active===""||u.props.active===!0),r.value===-1&&(r.value=0)):c.forEach((u,p)=>{u.props.active=p===r.value}),ke("div",{class:"code-group"},[ke("div",{class:"code-group-nav",role:"tablist"},c.map((u,p)=>{const g=p===r.value;return ke("button",{ref:_=>{_&&(n.value[p]=_)},class:{"code-group-nav-tab":!0,active:g},role:"tab",ariaSelected:g,onClick:()=>r.value=p,onKeydown:_=>a(_,p)},u.props.title)})),c]))}}}),rp=he({name:"CodeGroupItem",__name:"CodeGroupItem",props:{title:{},active:{type:Boolean}},setup(e,{expose:t}){t();const n={};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}});function op(e,t,n,r,o,s){return $(),Y("div",{class:Fe(["code-group-item",{active:n.active}]),role:"tabpanel"},[Le(e.$slots,"default")],2)}const sp=we(rp,[["render",op],["__file","CodeGroupItem.vue"]]),ip=he({__name:"VPHomeFeatures",setup(e,{expose:t}){t();const n=at(),r=A(()=>n.value.features??[]),o={frontmatter:n,features:r};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}}),lp={key:0,class:"vp-features"};function ap(e,t,n,r,o,s){return r.features.length?($(),Y("div",lp,[($(!0),Y(be,null,bt(r.features,i=>($(),Y("div",{key:i.title,class:"vp-feature"},[W("h2",null,le(i.title),1),W("p",null,le(i.details),1)]))),128))])):Ae("",!0)}const cp=we(ip,[["render",ap],["__file","VPHomeFeatures.vue"]]),up=he({__name:"VPHomeFooter",setup(e,{expose:t}){t();const n=at(),r=A(()=>n.value.footer),o=A(()=>n.value.footerHtml),s={frontmatter:n,footer:r,footerHtml:o};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}}),fp=["innerHTML"],dp=["textContent"];function hp(e,t,n,r,o,s){return r.footer?($(),Y(be,{key:0},[r.footerHtml?($(),Y("div",{key:0,class:"vp-footer",innerHTML:r.footer},null,8,fp)):($(),Y("div",{key:1,class:"vp-footer",textContent:le(r.footer)},null,8,dp))],64)):Ae("",!0)}const pp=we(up,[["render",hp],["__file","VPHomeFooter.vue"]]),gp=he({__name:"VPHomeHero",setup(e,{expose:t}){t();const n=at(),r=ts(),o=us(),s=A(()=>o.value&&n.value.heroImageDark!==void 0?n.value.heroImageDark:n.value.heroImage),i=A(()=>n.value.heroAlt||a.value||"hero"),l=A(()=>n.value.heroHeight||280),a=A(()=>n.value.heroText===null?null:n.value.heroText||r.value.title||"Hello"),c=A(()=>n.value.tagline===null?null:n.value.tagline||r.value.description||"Welcome to your VuePress site"),f=A(()=>Array.isArray(n.value.actions)?n.value.actions.map(({text:g,link:_,type:S="primary"})=>({text:g,link:_,type:S})):[]),p={frontmatter:n,siteLocale:r,isDarkMode:o,heroImage:s,heroAlt:i,heroHeight:l,heroText:a,tagline:c,actions:f,HomeHeroImage:()=>{if(!s.value)return null;const g=ke("img",{class:"vp-hero-image",src:os(s.value),alt:i.value,height:l.value});return n.value.heroImageDark===void 0?g:ke(ns,()=>g)},get AutoLink(){return Pn}};return Object.defineProperty(p,"__isScriptSetup",{enumerable:!1,value:!0}),p}}),mp={class:"vp-hero"},vp={key:0,id:"main-title"},_p={key:1,class:"vp-hero-description"},bp={key:2,class:"vp-hero-actions"};function yp(e,t,n,r,o,s){return $(),Y("header",mp,[te(r.HomeHeroImage),r.heroText?($(),Y("h1",vp,le(r.heroText),1)):Ae("",!0),r.tagline?($(),Y("p",_p,le(r.tagline),1)):Ae("",!0),r.actions.length?($(),Y("p",bp,[($(!0),Y(be,null,bt(r.actions,i=>($(),xe(r.AutoLink,{key:i.text,class:Fe(["vp-hero-action-button",[i.type]]),config:i},null,8,["class","config"]))),128))])):Ae("",!0)])}const wp=we(gp,[["render",yp],["__file","VPHomeHero.vue"]]),Sp=he({__name:"VPHome",setup(e,{expose:t}){t();const n={VPHomeFeatures:cp,VPHomeFooter:pp,VPHomeHero:wp,get Content(){return rs}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),Pp={class:"vp-home"},Cp={class:"theme-default-content"};function kp(e,t,n,r,o,s){return $(),Y("main",Pp,[te(r.VPHomeHero),te(r.VPHomeFeatures),W("div",Cp,[te(r.Content)]),te(r.VPHomeFooter)])}const Lp=we(Sp,[["render",kp],["__file","VPHome.vue"]]),xp="719px",Ep={mobile:xp};var zn;(function(e){e.MOBILE="mobile"})(zn||(zn={}));const Ap={[zn.MOBILE]:Number.parseInt(Ep.mobile.replace("px",""),10)},ha=(e,t)=>{const n=Ap[e];Number.isInteger(n)&&(lt("orientationchange",()=>t(n),!1),lt("resize",()=>t(n),!1),Ge(()=>{t(n)}))},Tp=he({__name:"VPNavbarBrand",setup(e,{expose:t}){t();const n=sr(),r=ts(),o=Re(),s=us(),i=A(()=>o.value.home||n.value),l=A(()=>r.value.title),a=A(()=>s.value&&o.value.logoDark!==void 0?o.value.logoDark:o.value.logo),c=A(()=>o.value.logoAlt??l.value),f=A(()=>l.value.toLocaleUpperCase().trim()===c.value.toLocaleUpperCase().trim()),p={routeLocale:n,siteLocale:r,themeLocale:o,isDarkMode:s,navbarBrandLink:i,navbarBrandTitle:l,navbarBrandLogo:a,navbarBrandLogoAlt:c,navBarLogoAltMatchesTitle:f,NavbarBrandLogo:()=>{if(!a.value)return null;const g=ke("img",{class:"vp-site-logo",src:os(a.value),alt:c.value});return o.value.logoDark===void 0?g:ke(ns,()=>g)},get RouteLink(){return zr}};return Object.defineProperty(p,"__isScriptSetup",{enumerable:!1,value:!0}),p}}),Rp=["aria-hidden"];function Dp(e,t,n,r,o,s){return $(),xe(r.RouteLink,{to:r.navbarBrandLink},{default:Ee(()=>[te(r.NavbarBrandLogo),r.navbarBrandTitle?($(),Y("span",{key:0,class:Fe(["vp-site-name",{"vp-hide-mobile":r.navbarBrandLogo}]),"aria-hidden":r.navBarLogoAltMatchesTitle},le(r.navbarBrandTitle),11,Rp)):Ae("",!0)]),_:1},8,["to"])}const Op=we(Tp,[["render",Dp],["__file","VPNavbarBrand.vue"]]),pa=(e,t="")=>st(e)?bn(gn(t,e)):"children"in e?{...e,children:e.children.map(n=>pa(n,gn(t,e.prefix)))}:{...e,link:aa(e.link)?bn(gn(t,e.link)).link:e.link},Ip=()=>{const e=Re();return A(()=>(e.value.navbar||[]).map(t=>pa(t)))},Mp=()=>{const e=Re(),t=A(()=>e.value.repo),n=A(()=>t.value?ca(t.value):null),r=A(()=>t.value&&!Kr(t.value)?`https://github.com/${t.value}`:t.value),o=A(()=>r.value?e.value.repoLabel?e.value.repoLabel:n.value===null?"Source":n.value:null);return A(()=>!r.value||!o.value?[]:[{text:o.value,link:r.value}])},$p=()=>{const e=St(),t=fh(),n=sr(),r=zl(),o=ts(),s=Vh(),i=Re();return A(()=>{const l=Object.keys(r.value.locales);if(l.length<2)return[];const a=e.path,c=e.fullPath;return[{text:`${i.value.selectLanguageText}`,ariaLabel:`${i.value.selectLanguageAriaLabel??i.value.selectLanguageText}`,children:l.map(u=>{var R,b;const p=((R=r.value.locales)==null?void 0:R[u])??{},g=((b=s.value.locales)==null?void 0:b[u])??{},_=`${p.lang}`,S=g.selectLanguageName??_;if(_===o.value.lang)return{text:S,activeMatch:".",link:e.fullPath};const k=a.replace(n.value,u);return{text:S,link:t.value.some(m=>m===k)?c.replace(a,k):g.home??u}})}]})},Np=he({__name:"VPDropdownTransition",setup(e,{expose:t}){t();const o={setHeight:s=>{s.style.height=s.scrollHeight+"px"},unsetHeight:s=>{s.style.height=""}};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}});function Hp(e,t,n,r,o,s){return $(),xe(rr,{name:"vp-dropdown",onEnter:r.setHeight,onAfterEnter:r.unsetHeight,onBeforeLeave:r.setHeight},{default:Ee(()=>[Le(e.$slots,"default")]),_:3})}const ga=we(Np,[["render",Hp],["__file","VPDropdownTransition.vue"]]),Vp=he({__name:"VPNavbarDropdown",props:{item:{}},setup(e,{expose:t}){t();const n=e,{item:r}=el(n),o=St(),s=ue(!1),i=A(()=>r.value.ariaLabel||r.value.text),l=(f,u)=>u[u.length-1]===f,a=f=>{const u=f.detail===0;s.value=u?!s.value:!1};$e(()=>o.path,()=>{s.value=!1});const c={props:n,item:r,route:o,open:s,dropdownAriaLabel:i,isLastItemOfArray:l,handleDropdown:a,VPDropdownTransition:ga,get AutoLink(){return Pn}};return Object.defineProperty(c,"__isScriptSetup",{enumerable:!1,value:!0}),c}}),jp=["aria-label"],Fp={class:"title"},Bp=W("span",{class:"arrow down"},null,-1),Wp=["aria-label"],Up={class:"title"},Kp={class:"vp-navbar-dropdown"},Gp={class:"vp-navbar-dropdown-subtitle"},qp={key:1},zp={class:"vp-navbar-dropdown-subitem-wrapper"};function Jp(e,t,n,r,o,s){return $(),Y("div",{class:Fe(["vp-navbar-dropdown-wrapper",{open:r.open}])},[W("button",{class:"vp-navbar-dropdown-title",type:"button","aria-label":r.dropdownAriaLabel,onClick:r.handleDropdown},[W("span",Fp,le(r.item.text),1),Bp],8,jp),W("button",{class:"vp-navbar-dropdown-title-mobile",type:"button","aria-label":r.dropdownAriaLabel,onClick:t[0]||(t[0]=i=>r.open=!r.open)},[W("span",Up,le(r.item.text),1),W("span",{class:Fe(["arrow",r.open?"down":"right"])},null,2)],8,Wp),te(r.VPDropdownTransition,null,{default:Ee(()=>[Lr(W("ul",Kp,[($(!0),Y(be,null,bt(r.item.children,i=>($(),Y("li",{key:i.text,class:"vp-navbar-dropdown-item"},["children"in i?($(),Y(be,{key:0},[W("h4",Gp,[i.link?($(),xe(r.AutoLink,{key:0,config:i,onFocusout:l=>r.isLastItemOfArray(i,r.item.children)&&i.children.length===0&&(r.open=!1)},null,8,["config","onFocusout"])):($(),Y("span",qp,le(i.text),1))]),W("ul",zp,[($(!0),Y(be,null,bt(i.children,l=>($(),Y("li",{key:l.link,class:"vp-navbar-dropdown-subitem"},[te(r.AutoLink,{config:l,onFocusout:a=>r.isLastItemOfArray(l,i.children)&&r.isLastItemOfArray(i,r.item.children)&&(r.open=!1)},null,8,["config","onFocusout"])]))),128))])],64)):($(),xe(r.AutoLink,{key:1,config:i,onFocusout:l=>r.isLastItemOfArray(i,r.item.children)&&(r.open=!1)},null,8,["config","onFocusout"]))]))),128))],512),[[Or,r.open]])]),_:1})],2)}const Qp=we(Vp,[["render",Jp],["__file","VPNavbarDropdown.vue"]]),Yp=he({__name:"VPNavbarItems",setup(e,{expose:t}){t();const n=Ip(),r=$p(),o=Mp(),s=ue(!1),i=A(()=>Re().value.navbarLabel??"site navigation"),l=A(()=>[...n.value,...r.value,...o.value]);ha(zn.MOBILE,c=>{s.value=window.innerWidth($(),Y("div",{key:i.text,class:"vp-navbar-item"},["children"in i?($(),xe(r.VPNavbarDropdown,{key:0,class:Fe({mobile:r.isMobile}),item:i},null,8,["class","item"])):($(),xe(r.AutoLink,{key:1,config:i},null,8,["config"]))]))),128))],8,Xp)):Ae("",!0)}const ma=we(Yp,[["render",Zp],["__file","VPNavbarItems.vue"]]),eg={},tg={class:"dark-icon",viewBox:"0 0 32 32"},ng=W("path",{d:"M13.502 5.414a15.075 15.075 0 0 0 11.594 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3z",fill:"currentColor"},null,-1),rg=[ng];function og(e,t){return $(),Y("svg",tg,rg)}const sg=we(eg,[["render",og],["__file","VPDarkIcon.vue"]]),ig={},lg={class:"light-icon",viewBox:"0 0 32 32"},ag=gu('',9),cg=[ag];function ug(e,t){return $(),Y("svg",lg,cg)}const fg=we(ig,[["render",ug],["__file","VPLightIcon.vue"]]),dg=he({__name:"VPToggleColorModeButton",setup(e,{expose:t}){t();const n=Re(),r=us(),s={themeLocale:n,isDarkMode:r,toggleColorMode:()=>{r.value=!r.value},VPDarkIcon:sg,VPLightIcon:fg};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}}),hg=["title"];function pg(e,t,n,r,o,s){return $(),Y("button",{class:"vp-toggle-color-mode-button",title:r.themeLocale.toggleColorMode,onClick:r.toggleColorMode},[Lr(te(r.VPLightIcon,null,null,512),[[Or,!r.isDarkMode]]),Lr(te(r.VPDarkIcon,null,null,512),[[Or,r.isDarkMode]])],8,hg)}const gg=we(dg,[["render",pg],["__file","VPToggleColorModeButton.vue"]]),mg=he({__name:"VPToggleSidebarButton",emits:["toggle"],setup(e,{expose:t}){t();const r={themeLocale:Re()};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),vg=["title"],_g=W("div",{class:"icon","aria-hidden":"true"},[W("span"),W("span"),W("span")],-1),bg=[_g];function yg(e,t,n,r,o,s){return $(),Y("div",{class:"vp-toggle-sidebar-button",title:r.themeLocale.toggleSidebar,"aria-expanded":"false",role:"button",tabindex:"0",onClick:t[0]||(t[0]=i=>e.$emit("toggle"))},bg,8,vg)}const wg=we(mg,[["render",yg],["__file","VPToggleSidebarButton.vue"]]),Sg=he({__name:"VPNavbar",emits:["toggle-sidebar"],setup(e,{expose:t}){t();const n=Re(),r=ue(null),o=ue(null),s=ue(0),i=A(()=>s.value?{maxWidth:s.value+"px"}:{}),l=(c,f)=>{var g,_,S;const u=(S=(_=(g=c==null?void 0:c.ownerDocument)==null?void 0:g.defaultView)==null?void 0:_.getComputedStyle(c,null))==null?void 0:S[f],p=Number.parseInt(u,10);return Number.isNaN(p)?0:p};ha(zn.MOBILE,c=>{var u;const f=l(r.value,"paddingLeft")+l(r.value,"paddingRight");window.innerWidthe.$emit("toggle-sidebar"))}),W("span",Cg,[te(r.VPNavbarBrand)],512),W("div",{class:"vp-navbar-items-wrapper",style:Yn(r.linksWrapperStyle)},[Le(e.$slots,"before"),te(r.VPNavbarItems,{class:"vp-hide-mobile"}),Le(e.$slots,"after"),r.themeLocale.colorModeSwitch?($(),xe(r.VPToggleColorModeButton,{key:0})):Ae("",!0),te(i)],4)],512)}const Lg=we(Sg,[["render",kg],["__file","VPNavbar.vue"]]),xg=()=>{const e=Re(),t=Sn(),n=at();return A(()=>{var o;return n.value.contributors??e.value.contributors??!0?((o=t.value.git)==null?void 0:o.contributors)??null:null})},Eg=()=>{const e=Re(),t=Sn(),n=at();return A(()=>{if(!(n.value.editLink??e.value.editLink??!0))return null;const{repo:o,docsRepo:s=o,docsBranch:i="main",docsDir:l="",editLinkText:a}=e.value;if(!s)return null;const c=Gh({docsRepo:s,docsBranch:i,docsDir:l,filePathRelative:t.value.filePathRelative,editLinkPattern:n.value.editLinkPattern??e.value.editLinkPattern});return c?{text:a??"Edit this page",link:c}:null})},Ag=()=>{const e=Re(),t=Sn(),n=at();return A(()=>{var s,i;return!(n.value.lastUpdated??e.value.lastUpdated??!0)||!((s=t.value.git)!=null&&s.updatedTime)?null:new Date((i=t.value.git)==null?void 0:i.updatedTime).toLocaleString()})},Tg={},Rg={class:"edit-icon",viewBox:"0 0 1024 1024"},Dg=W("g",{fill:"currentColor"},[W("path",{d:"M430.818 653.65a60.46 60.46 0 0 1-50.96-93.281l71.69-114.012 7.773-10.365L816.038 80.138A60.46 60.46 0 0 1 859.225 62a60.46 60.46 0 0 1 43.186 18.138l43.186 43.186a60.46 60.46 0 0 1 0 86.373L588.879 565.55l-8.637 8.637-117.466 68.234a60.46 60.46 0 0 1-31.958 11.229z"}),W("path",{d:"M728.802 962H252.891A190.883 190.883 0 0 1 62.008 771.98V296.934a190.883 190.883 0 0 1 190.883-192.61h267.754a60.46 60.46 0 0 1 0 120.92H252.891a69.962 69.962 0 0 0-69.098 69.099V771.98a69.962 69.962 0 0 0 69.098 69.098h475.911A69.962 69.962 0 0 0 797.9 771.98V503.363a60.46 60.46 0 1 1 120.922 0V771.98A190.883 190.883 0 0 1 728.802 962z"})],-1),Og=[Dg];function Ig(e,t){return $(),Y("svg",Rg,Og)}const Mg=we(Tg,[["render",Ig],["__file","VPEditIcon.vue"]]),$g=he({__name:"VPPageMeta",setup(e,{expose:t}){t();const n=Re(),r=Eg(),o=Ag(),s=xg(),i={themeLocale:n,editLink:r,lastUpdated:o,contributors:s,VPEditIcon:Mg,get AutoLink(){return Pn}};return Object.defineProperty(i,"__isScriptSetup",{enumerable:!1,value:!0}),i}}),Ng={class:"vp-page-meta"},Hg={key:0,class:"vp-meta-item edit-link"},Vg={class:"vp-meta-item git-info"},jg={key:0,class:"vp-meta-item last-updated"},Fg={class:"meta-item-label"},Bg={class:"meta-item-info"},Wg={key:1,class:"vp-meta-item contributors"},Ug={class:"meta-item-label"},Kg={class:"meta-item-info"},Gg=["title"];function qg(e,t,n,r,o,s){const i=Go("ClientOnly");return $(),Y("footer",Ng,[r.editLink?($(),Y("div",Hg,[te(r.AutoLink,{class:"label",config:r.editLink},{before:Ee(()=>[te(r.VPEditIcon)]),_:1},8,["config"])])):Ae("",!0),W("div",Vg,[r.lastUpdated?($(),Y("div",jg,[W("span",Fg,le(r.themeLocale.lastUpdatedText)+": ",1),te(i,null,{default:Ee(()=>[W("span",Bg,le(r.lastUpdated),1)]),_:1})])):Ae("",!0),r.contributors&&r.contributors.length?($(),Y("div",Wg,[W("span",Ug,le(r.themeLocale.contributorsText)+": ",1),W("span",Kg,[($(!0),Y(be,null,bt(r.contributors,(l,a)=>($(),Y(be,{key:a},[W("span",{class:"contributor",title:`email: ${l.email}`},le(l.name),9,Gg),a!==r.contributors.length-1?($(),Y(be,{key:0},[$t(", ")],64)):Ae("",!0)],64))),128))])])):Ae("",!0)])])}const zg=we($g,[["render",qg],["__file","VPPageMeta.vue"]]),Jg=()=>{const e=tn(),t=St();return n=>{n&&(ta(n)?t.path!==n&&e.push(n):or(n)?window==null||window.open(n):e.push(encodeURI(n)))}},xi=(e,t)=>e===!1?!1:st(e)?bn(e,t):Yo(e)?{...e,link:bn(e.link,t).link}:null,Ro=(e,t,n)=>{const r=e.findIndex(s=>s.link===t);if(r!==-1){const s=e[r+n];return s?s.link?s:"prefix"in s&&!qn(s.prefix).notFound?{...s,link:s.prefix}:null:null}for(const s of e)if("children"in s){const i=Ro(s.children,t,n);if(i)return i}const o=e.findIndex(s=>"prefix"in s&&s.prefix===t);if(o!==-1){const s=e[o+n];return s?s.link?s:"prefix"in s&&!qn(s.prefix).notFound?{...s,link:s.prefix}:null:null}return null},Qg=()=>{const e=at(),t=Re(),n=fs(),r=St(),o=A(()=>{const i=xi(e.value.prev,r.path);return i===!1?null:i??(t.value.prev===!1?null:Ro(n.value,r.path,-1))}),s=A(()=>{const i=xi(e.value.next,r.path);return i===!1?null:i??(t.value.next===!1?null:Ro(n.value,r.path,1))});return{prevLink:o,nextLink:s}},Yg=he({__name:"VPPageNav",setup(e,{expose:t}){t();const n=Re(),r=Jg(),{prevLink:o,nextLink:s}=Qg(),i=A(()=>Re().value.pageNavbarLabel??"page navigation");lt("keydown",a=>{a.altKey&&(a.key==="ArrowRight"?s.value&&(r(s.value.link),a.preventDefault()):a.key==="ArrowLeft"&&o.value&&(r(o.value.link),a.preventDefault()))});const l={themeLocale:n,navigate:r,prevLink:o,nextLink:s,navbarLabel:i,get AutoLink(){return Pn}};return Object.defineProperty(l,"__isScriptSetup",{enumerable:!1,value:!0}),l}}),Xg=["aria-label"],Zg={class:"hint"},em=W("span",{class:"arrow left"},null,-1),tm={class:"link"},nm={class:"hint"},rm=W("span",{class:"arrow right"},null,-1),om={class:"link"};function sm(e,t,n,r,o,s){return r.prevLink||r.nextLink?($(),Y("nav",{key:0,class:"vp-page-nav","aria-label":r.navbarLabel},[r.prevLink?($(),xe(r.AutoLink,{key:0,class:"prev",config:r.prevLink},{default:Ee(()=>[W("div",Zg,[em,$t(" "+le(r.themeLocale.prev??"Prev"),1)]),W("div",tm,[W("span",null,le(r.prevLink.text),1)])]),_:1},8,["config"])):Ae("",!0),r.nextLink?($(),xe(r.AutoLink,{key:1,class:"next",config:r.nextLink},{default:Ee(()=>[W("div",nm,[$t(le(r.themeLocale.next??"Next")+" ",1),rm]),W("div",om,[W("span",null,le(r.nextLink.text),1)])]),_:1},8,["config"])):Ae("",!0)],8,Xg)):Ae("",!0)}const im=we(Yg,[["render",sm],["__file","VPPageNav.vue"]]),lm=he({__name:"VPPage",setup(e,{expose:t}){t(),qh();const n={VPPageMeta:zg,VPPageNav:im,get Content(){return rs}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),am={class:"vp-page"},cm={class:"theme-default-content"};function um(e,t,n,r,o,s){return $(),Y("main",am,[Le(e.$slots,"top"),W("div",cm,[Le(e.$slots,"content-top"),te(r.Content),Le(e.$slots,"content-bottom")]),te(r.VPPageMeta),te(r.VPPageNav),Le(e.$slots,"bottom")])}const fm=we(lm,[["render",um],["__file","VPPage.vue"]]),dm=he({__name:"VPSidebarItem",props:{item:{},depth:{default:0}},setup(e,{expose:t}){t();const n=e,{item:r,depth:o}=el(n),s=St(),i=tn(),l=A(()=>"collapsible"in r.value&&r.value.collapsible),a=A(()=>la(r.value,s)),c=A(()=>({"vp-sidebar-item":!0,"vp-sidebar-heading":o.value===0,active:a.value,collapsible:l.value})),f=A(()=>l.value?a.value:!0),[u,p]=Ud(f.value),g=k=>{l.value&&(k.preventDefault(),p())},_=i.afterEach(k=>{wn(()=>{u.value=f.value})});Ko(()=>{_()});const S={props:n,item:r,depth:o,route:s,router:i,collapsible:l,isActive:a,itemClass:c,isOpenDefault:f,isOpen:u,toggleIsOpen:p,onClick:g,unregisterRouterHook:_,VPDropdownTransition:ga,get AutoLink(){return Pn}};return Object.defineProperty(S,"__isScriptSetup",{enumerable:!1,value:!0}),S}}),hm={class:"vp-sidebar-children"};function pm(e,t,n,r,o,s){const i=Go("VPSidebarItem",!0);return $(),Y("li",null,[r.item.link?($(),xe(r.AutoLink,{key:0,class:Fe(r.itemClass),config:r.item},null,8,["class","config"])):($(),Y("p",{key:1,tabindex:"0",class:Fe(r.itemClass),onClick:r.onClick,onKeydown:Xu(r.onClick,["enter"])},[$t(le(r.item.text)+" ",1),r.collapsible?($(),Y("span",{key:0,class:Fe(["arrow",r.isOpen?"down":"right"])},null,2)):Ae("",!0)],34)),"children"in r.item&&r.item.children.length?($(),xe(r.VPDropdownTransition,{key:2},{default:Ee(()=>[Lr(W("ul",hm,[($(!0),Y(be,null,bt(r.item.children,l=>($(),xe(i,{key:`${r.depth}${l.text}${l.link}`,item:l,depth:r.depth+1},null,8,["item","depth"]))),128))],512),[[Or,r.isOpen]])]),_:1})):Ae("",!0)])}const gm=we(dm,[["render",pm],["__file","VPSidebarItem.vue"]]),mm=he({__name:"VPSidebarItems",setup(e,{expose:t}){t();const n=St(),r=fs();Ge(()=>{$e(()=>n.hash,s=>{const i=document.querySelector(".vp-sidebar");if(!i)return;const l=document.querySelector(`.vp-sidebar a.vp-sidebar-item[href="${n.path}${s}"]`);if(!l)return;const{top:a,height:c}=i.getBoundingClientRect(),{top:f,height:u}=l.getBoundingClientRect();fa+c&&l.scrollIntoView(!1)})});const o={route:n,sidebarItems:r,VPSidebarItem:gm};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}}),vm={key:0,class:"vp-sidebar-items"};function _m(e,t,n,r,o,s){return r.sidebarItems.length?($(),Y("ul",vm,[($(!0),Y(be,null,bt(r.sidebarItems,i=>($(),xe(r.VPSidebarItem,{key:`${i.text}${i.link}`,item:i},null,8,["item"]))),128))])):Ae("",!0)}const bm=we(mm,[["render",_m],["__file","VPSidebarItems.vue"]]),ym=he({__name:"VPSidebar",setup(e,{expose:t}){t();const n={VPNavbarItems:ma,VPSidebarItems:bm};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),wm={class:"vp-sidebar"};function Sm(e,t,n,r,o,s){return $(),Y("aside",wm,[te(r.VPNavbarItems),Le(e.$slots,"top"),te(r.VPSidebarItems),Le(e.$slots,"bottom")])}const Pm=we(ym,[["render",Sm],["__file","VPSidebar.vue"]]),Cm=he({__name:"Layout",setup(e,{expose:t}){t();const n=Sn(),r=at(),o=Re(),s=A(()=>r.value.navbar!==!1&&o.value.navbar!==!1),i=fs(),l=ue(!1),a=m=>{l.value=typeof m=="boolean"?m:!l.value},c={x:0,y:0},f=m=>{c.x=m.changedTouches[0].clientX,c.y=m.changedTouches[0].clientY},u=m=>{const w=m.changedTouches[0].clientX-c.x,V=m.changedTouches[0].clientY-c.y;Math.abs(w)>Math.abs(V)&&Math.abs(w)>40&&(w>0&&c.x<=80?a(!0):a(!1))},p=A(()=>r.value.externalLinkIcon??o.value.externalLinkIcon??!0),g=A(()=>[{"no-navbar":!s.value,"no-sidebar":!i.value.length,"sidebar-open":l.value,"external-link-icon":p.value},r.value.pageClass]);let _;Ge(()=>{_=tn().afterEach(()=>{a(!1)})}),Fr(()=>{_()});const S=ia(),k=S.resolve,R=S.pending,b={page:n,frontmatter:r,themeLocale:o,shouldShowNavbar:s,sidebarItems:i,isSidebarOpen:l,toggleSidebar:a,touchStart:c,onTouchStart:f,onTouchEnd:u,enableExternalLinkIcon:p,containerClass:g,get unregisterRouterHook(){return _},set unregisterRouterHook(m){_=m},scrollPromise:S,onBeforeEnter:k,onBeforeLeave:R,VPHome:Lp,VPNavbar:Lg,VPPage:fm,VPSidebar:Pm};return Object.defineProperty(b,"__isScriptSetup",{enumerable:!1,value:!0}),b}});function km(e,t,n,r,o,s){return $(),Y("div",{class:Fe(["vp-theme-container",r.containerClass]),onTouchstart:r.onTouchStart,onTouchend:r.onTouchEnd},[Le(e.$slots,"navbar",{},()=>[r.shouldShowNavbar?($(),xe(r.VPNavbar,{key:0,onToggleSidebar:r.toggleSidebar},{before:Ee(()=>[Le(e.$slots,"navbar-before")]),after:Ee(()=>[Le(e.$slots,"navbar-after")]),_:3})):Ae("",!0)]),W("div",{class:"vp-sidebar-mask",onClick:t[0]||(t[0]=i=>r.toggleSidebar(!1))}),Le(e.$slots,"sidebar",{},()=>[te(r.VPSidebar,null,{top:Ee(()=>[Le(e.$slots,"sidebar-top")]),bottom:Ee(()=>[Le(e.$slots,"sidebar-bottom")]),_:3})]),Le(e.$slots,"page",{},()=>[r.frontmatter.home?($(),xe(r.VPHome,{key:0})):($(),xe(rr,{key:1,name:"fade-slide-y",mode:"out-in",onBeforeEnter:r.onBeforeEnter,onBeforeLeave:r.onBeforeLeave},{default:Ee(()=>[($(),xe(r.VPPage,{key:r.page.path},{top:Ee(()=>[Le(e.$slots,"page-top")]),"content-top":Ee(()=>[Le(e.$slots,"page-content-top")]),"content-bottom":Ee(()=>[Le(e.$slots,"page-content-bottom")]),bottom:Ee(()=>[Le(e.$slots,"page-bottom")]),_:3}))]),_:3},8,["onBeforeEnter","onBeforeLeave"]))])],34)}const va=we(Cm,[["render",km],["__file","Layout.vue"]]),Lm=he({__name:"NotFound",setup(e,{expose:t}){t();const n=sr(),r=Re(),o=r.value.notFound??["Not Found"],s=()=>o[Math.floor(Math.random()*o.length)],i=r.value.home??n.value,l=r.value.backToHome??"Back to home",a={routeLocale:n,themeLocale:r,messages:o,getMsg:s,homeLink:i,homeText:l,get RouteLink(){return zr}};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}}),xm=e=>(pc("data-v-99131a8e"),e=e(),gc(),e),Em={class:"vp-theme-container"},Am={class:"page"},Tm={class:"theme-default-content"},Rm=xm(()=>W("h1",null,"404",-1));function Dm(e,t,n,r,o,s){return $(),Y("div",Em,[W("main",Am,[W("div",Tm,[Rm,W("blockquote",null,le(r.getMsg()),1),te(r.RouteLink,{to:r.homeLink},{default:Ee(()=>[$t(le(r.homeText),1)]),_:1},8,["to"])])])])}const Om=we(Lm,[["render",Dm],["__scopeId","data-v-99131a8e"],["__file","NotFound.vue"]]),Im=Ft({enhance({app:e,router:t}){ho("Badge")||e.component("Badge",tp),ho("CodeGroup")||e.component("CodeGroup",np),ho("CodeGroupItem")||e.component("CodeGroupItem",sp),e.component("VPSearch",()=>{const r=e.component("Docsearch")||e.component("SearchBox");return r?ke(r):null});const n=t.options.scrollBehavior;t.options.scrollBehavior=async(...r)=>(await ia().wait(),n(...r))},setup(){Fh(),Jh()},layouts:{Layout:va,NotFound:Om}}),Mm=Object.freeze(Object.defineProperty({__proto__:null,default:Im},Symbol.toStringTag,{value:"Module"})),$m=Object.entries;var Nm={autoLocale:!1,switchLocale:!1,localeConfig:{"/eng/":["en-US"]},defaultLocale:"/eng/",localeFallback:!0,defaultBehavior:"defaultLocale"};const Hm=Nm;$m(Hm.localeConfig);th("VUEPRESS_REDIRECT_LOCALES",{});const Vm=Ft({setup(){},rootComponents:[]}),jm=Object.freeze(Object.defineProperty({__proto__:null,default:Vm},Symbol.toStringTag,{value:"Module"}));var ie=(e=>(e.Collaborator="collaborator",e.Author="author",e.TechLead="tech lead",e.TeamLead="team lead",e.Developer="developer",e))(ie||{}),de=(e=>(e.ActiveDeveloped="actively-developed",e.PassivelyMaintained="passively-maintained",e.AsIs="as-is",e.Experimental="experimental",e.LookingForMaintainer="looking-for-maintainer",e.Deprecated="deprecated",e))(de||{}),D=(e=>(e.C="C",e.Go="Go",e.JavaScript="JS",e.TypeScript="TS",e.Rust="Rust",e.Python="Python",e.Php="PHP",e.Deno="Deno",e.NodeJS="NodeJS",e.Flask="Flask",e.React="React",e.Antd="Antd",e.Postgresql="PostgreSQL",e.Docker="Docker",e.Drone="Drone CI",e.Woodpecker="Woodpecker CI",e.Bash="Bash",e.TreeSitter="TreeSitter",e.Nix="Nix",e.Lua="Lua",e.Sqlite="Sqlite",e.Vue="Vue",e.Vuepress="Vuepress",e.Godot="Godot",e.Haskell="Haskell",e))(D||{});const Fm=[{name:"picsg",url:"/pleshevskiy/picsg",description:"A tool for steganographing information in a picture encoded using the Vernam cipher.",roles:[ie.Author],technologies:[D.Haskell],startDate:new Date("2024-04-13"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"Mindustry tools",url:"/pleshevskiy/mindustry-tools",description:"Tools for the Mindustry game",roles:[ie.Author],technologies:[D.Nix,D.Godot],startDate:new Date("2024-01-07"),status:de.PassivelyMaintained},{name:"Master Progress Rosmintrud tools",url:"https://rosmintrud.masterprogress.ru",description:"Internal service to prepare documents for the rosmintrud (SPA)",roles:[ie.TechLead],technologies:[D.Deno,D.Sqlite,D.TypeScript,D.Vue,D.Docker,D.Woodpecker,D.Nix],startDate:new Date("2023-07-03"),status:de.PassivelyMaintained},{name:"yandexgpt_tg_bot",url:"/pleshevskiy/yandexgpt_tg_bot",description:"The Telegram bot to describe article with link by YandexGPT.",roles:[ie.Author],technologies:[D.JavaScript,D.NodeJS,D.Nix],startDate:new Date("2023-06-27"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"tree-sitter-plpgsql",url:"/pleshevskiy/tree-sitter-plpgsql",description:"plpgsql grammar for tree-sitter",roles:[ie.Author],technologies:[D.C,D.JavaScript,D.TreeSitter,D.Nix],startDate:new Date("2023-01-05"),status:de.PassivelyMaintained},{name:"wd2",url:"/pleshevskiy/wd2",description:"A wrapper over d2 which allows to use additional configs from d2 file",roles:[ie.Author],technologies:[D.Bash,D.Nix],startDate:new Date("2022-12-12"),endDate:new Date("2023-07-31"),status:de.AsIs},{name:"tree-sitter-d2",url:"/pleshevskiy/tree-sitter-d2",description:"d2 grammar for tree-sitter",roles:[ie.Author],technologies:[D.C,D.JavaScript,D.TreeSitter,D.Nix],startDate:new Date("2022-12-04"),status:de.ActiveDeveloped},{name:"nix2lua",url:"/mynix/nix2lua",description:"This is a small but functional library that converts your nix configurations into lua format.",roles:[ie.Author],technologies:[D.Nix,D.Lua],startDate:new Date("2022-11-22"),status:de.PassivelyMaintained},{name:"vnetod",url:"/pleshevskiy/vnetod",description:"Dotenv section switcher",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-07-29"),status:de.PassivelyMaintained},{name:"estring",url:"/pleshevskiy/estring",description:"A simple way to parse a string using type annotations.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-07-23"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"enve",url:"/pleshevskiy/enve",description:"It helps you work with environment variables and convert it to any type using only type annotations",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-07-18"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"docker stack drone plugin",url:"/pleshevskiy/docker_stack",description:"Deploy to production using `docker stack deploy`",roles:[ie.Author],technologies:[D.Docker,D.Drone,D.Woodpecker],startDate:new Date("2022-06-06"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"dexios",url:"/github/dexios",description:"Dexios is a fast, secure, and open source command-line encryption tool.",roles:[ie.Collaborator],technologies:[D.Rust],startDate:new Date("2022-06-01"),endDate:new Date("2023-02-28")},{name:"recipes",url:"/pleshevskiy/recipes",description:"Site with recipes which cares about privacy",roles:[ie.Author],technologies:[D.TypeScript,D.Deno,D.Rust],startDate:new Date("2022-05-04"),status:de.PassivelyMaintained},{name:"pleshevski.ru",url:"/pleshevskiy/pleshevski.ru",description:"Source code of my personal site",roles:[ie.Author],technologies:[D.TypeScript,D.Vue,D.Vuepress,D.Nix],startDate:new Date("2022-03-16"),status:de.PassivelyMaintained},{name:"paren",url:"/pleshevskiy/paren",description:"Library for parsing and rendering information.",roles:[ie.Author],technologies:[D.TypeScript,D.Deno],startDate:new Date("2022-03-14"),endDate:new Date("2024-07-25"),status:de.Experimental},{name:"hwt",url:"/pleshevskiy/hwt",description:"healthy workaholic timer – A tool that keeps you from breaking your health by working all day.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-02-04"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"ood_persistence",url:"/pleshevskiy/ood_persistence",description:"Asynchronous and synchronous interfaces and persistence implementations for your OOD architecture ",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2021-10-12"),endDate:new Date("2021-10-21"),status:de.Deprecated},{name:"migra",url:"/pleshevskiy/migra",description:"Simple SQL migration manager for your project.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2021-01-31"),endDate:new Date("2022-03-17"),status:de.AsIs},{name:"espruino-starter",url:"/pleshevskiy/espruino-starter",description:"Quickly start creating your new project on the espruino board or a board based on it.",roles:[ie.Author],technologies:[D.JavaScript],startDate:new Date("2021-08-23"),status:de.AsIs},{name:"react-rest-request",url:"/pleshevskiy/react-rest-request",description:"Minimalistic REST API client for React inspired by Apollo.",roles:[ie.Author],technologies:[D.TypeScript,D.React],startDate:new Date("2020-10-04"),endDate:new Date("2023-03-02"),status:de.Deprecated},{name:"sonic-channel",url:"/pleshevskiy/sonic-channel",description:"Rust client for sonic search backend.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2020-07-18"),status:de.PassivelyMaintained},{name:"itconfig",url:"/pleshevskiy/itconfig",description:"Easy build a configs from environment variables and use it in globally.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2019-12-22"),endDate:new Date("2022-07-24"),status:de.Deprecated},{name:"it-fsm",url:"/pleshevskiy/it-fsm",description:"Simple full-featured finite state machine for your project",roles:[ie.Author],technologies:[D.TypeScript,D.NodeJS,D.Deno],startDate:new Date("2019-10-11"),status:de.PassivelyMaintained},{name:"Cabinet Master Progress",url:"https://cabinet.masterprogress.ru",description:"Student's cabinet of the educational center Master Progress (SSR + SPA)",roles:[ie.TechLead],technologies:[D.Python,D.Flask,D.Postgresql,D.TypeScript,D.React,D.Docker,D.Woodpecker,D.Nix],startDate:new Date("2019-09-22"),status:de.PassivelyMaintained},{name:"genrss",url:"/pleshevskiy/genrss",description:"RSS generator for python",roles:[ie.Author],technologies:[D.Python],startDate:new Date("2019-07-23"),status:de.AsIs},{name:"marshmallow_pageinfo",url:"/pleshevskiy/marshmallow_pageinfo",description:"Page info marshmallow schema for api",roles:[ie.Author],technologies:[D.Python],startDate:new Date("2019-10-05"),endDate:new Date("2023-03-02"),status:de.AsIs},{name:"Binary Management",url:"https://www.binarymanagement.com",description:"Project management tool for interior designers",roles:[ie.Developer,ie.TechLead,ie.TeamLead],technologies:[D.TypeScript,D.NodeJS,D.React,D.Antd,D.Docker,D.Drone,D.Rust,D.Nix],startDate:new Date("2018-09-15"),status:de.ActiveDeveloped},{name:"Core Spirit",url:"https://corespirit.com",description:"Social platform focusing on human and planetary enhancement",roles:[ie.Developer],technologies:[D.TypeScript,D.NodeJS,D.Go,D.Python,D.React,D.Docker,D.Drone],startDate:new Date("2018-09-05"),endDate:new Date("2019-12-31")},{name:"Master Progress",url:"https://masterprogress.ru",description:"Main website of the educational center Master Progress (SSR + Forms)",roles:[ie.TechLead],technologies:[D.Python,D.Flask,D.JavaScript,D.Nix],startDate:new Date("2018-04-10"),status:de.PassivelyMaintained},{name:"ictmpl",url:"/pleshevskiy/ictmpl",description:"Generate projects from templates",roles:[ie.Author],technologies:[D.Python],startDate:new Date("2018-06-30"),endDate:new Date("2023-03-02"),status:de.AsIs},{name:"jjcrypto",url:"/pleshevskiy/jjcrypto",description:"Javascript encoder and decoder",roles:[ie.Author],technologies:[D.Php],startDate:new Date("2015-11-01"),endDate:new Date("2015-11-01"),status:de.AsIs}];function Bm(e){return e.toLocaleDateString(void 0,{year:"numeric",month:"2-digit",day:"2-digit"})}const Wm=e=>e.url.startsWith("https://")?e.url:new URL(e.url,"https://git.pleshevski.ru").toString(),Um=Object.freeze(Object.defineProperty({__proto__:null,getExternalLink:Wm},Symbol.toStringTag,{value:"Module"}));function Tn(e){return(e==null?void 0:e.valueOf())??1/0}const Km={name:"WorksPage",computed:{tableTheme(){return this.$themeLocale.worksTable??{}}}},Gm=he({...Km,setup(e,{expose:t}){t();const n=A(()=>Fm.concat().sort((o,s)=>Tn(s.endDate)-Tn(o.endDate)||Tn(s.startDate)-Tn(o.startDate))),r={date2num:Tn,works:n,get renderDate(){return Bm},get w(){return Um}};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),qm=["href"],zm=["innerHTML"],Jm={key:0};function Qm(e,t,n,r,o,s){return $(),Y("table",null,[W("thead",null,[W("tr",null,[W("th",null,le(s.tableTheme.name),1),W("th",null,le(s.tableTheme.description),1),W("th",null,le(s.tableTheme.role),1),W("th",null,le(s.tableTheme.technologies),1),W("th",null,le(s.tableTheme.status),1),W("th",null,le(s.tableTheme.dates),1)])]),W("tbody",null,[($(!0),Y(be,null,bt(r.works,i=>($(),Y("tr",null,[W("td",null,[W("a",{rel:"nofollow noopener",href:r.w.getExternalLink(i)},le(i.name),9,qm)]),W("td",null,le(i.description),1),W("td",{innerHTML:i.roles.join(", ")},null,8,zm),W("td",null,le(i.technologies.join(", ")),1),W("td",null,le(i.status),1),W("td",null,[W("div",null,[W("small",{class:Fe({grey:i.endDate})},le(r.renderDate(i.startDate)),3)]),i.endDate?($(),Y("div",Jm,[W("small",null,le(r.renderDate(i.endDate)),1)])):Ae("",!0)])]))),256))])])}const Ym=we(Gm,[["render",Qm],["__file","ChronologicalWorksTable.vue"]]),Xm={__name:"WorksPage",setup(e,{expose:t}){t();const n={ParentLayout:va,get ChronologicalWorksTable(){return Ym}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}},Zm={class:"works-table-wrapper"};function ev(e,t,n,r,o,s){return $(),xe(r.ParentLayout,null,{"page-bottom":Ee(()=>[W("div",Zm,[te(r.ChronologicalWorksTable)])]),_:1})}const tv=we(Xm,[["render",ev],["__scopeId","data-v-765855fb"],["__file","WorksPage.vue"]]),nv=Ft({layouts:{WorksPage:tv}}),rv=Object.freeze(Object.defineProperty({__proto__:null,default:nv},Symbol.toStringTag,{value:"Module"})),br=[uh,yh,Lh,Rh,Dh,Hh,Mm,jm,rv].map(e=>e.default).filter(Boolean),ov=JSON.parse('{"base":"/","lang":"ru-RU","title":"Дмитрий Плешевский","description":" ","head":[],"locales":{"/":{"lang":"ru-RU","title":"Дмитрий Плешевский"},"/eng/":{"lang":"en-US","title":"Dmitriy Pleshevskiy"}}}');var Dn=yn(ov),sv=Qf,iv=()=>{const e=Sd({history:sv(Ml("/")),routes:[{name:"vuepress-route",path:"/:catchAll(.*)",components:{}}],scrollBehavior:(t,n,r)=>r||(t.hash?{el:t.hash}:{top:0})});return e.beforeResolve(async(t,n)=>{if(t.path!==n.path||n===mt){const r=qn(t.fullPath);if(r.path!==t.fullPath)return r.path;const o=await r.loader();t.meta={...r.meta,_pageChunk:o}}else t.path===n.path&&(t.meta=n.meta)}),e},lv=e=>{e.component("ClientOnly",ns),e.component("Content",rs),e.component("RouteLink",zr)},av=(e,t,n)=>{const r=A(()=>t.currentRoute.value.path),o=sc((k,R)=>({get(){return k(),t.currentRoute.value.meta._pageChunk},set(b){t.currentRoute.value.meta._pageChunk=b,R()}})),s=A(()=>Kt.resolveLayouts(n)),i=A(()=>Kt.resolveRouteLocale(Dn.value.locales,r.value)),l=A(()=>Kt.resolveSiteLocaleData(Dn.value,i.value)),a=A(()=>o.value.comp),c=A(()=>o.value.data),f=A(()=>c.value.frontmatter),u=A(()=>Kt.resolvePageHeadTitle(c.value,l.value)),p=A(()=>Kt.resolvePageHead(u.value,f.value,l.value)),g=A(()=>Kt.resolvePageLang(c.value,l.value)),_=A(()=>Kt.resolvePageLayout(c.value,s.value)),S={layouts:s,pageData:c,pageComponent:a,pageFrontmatter:f,pageHead:p,pageHeadTitle:u,pageLang:g,pageLayout:_,redirects:Ao,routeLocale:i,routePath:r,routes:pn,siteData:Dn,siteLocaleData:l};return e.provide(es,S),Object.defineProperties(e.config.globalProperties,{$frontmatter:{get:()=>f.value},$head:{get:()=>p.value},$headTitle:{get:()=>u.value},$lang:{get:()=>g.value},$page:{get:()=>c.value},$routeLocale:{get:()=>i.value},$site:{get:()=>Dn.value},$siteLocale:{get:()=>l.value},$withBase:{get:()=>os}}),S},cv=()=>{const e=kd(),t=Ld();let n=[];const r=()=>{e.value.forEach(i=>{const l=uv(i);l&&n.push(l)})},o=()=>{const i=[];return e.value.forEach(l=>{const a=fv(l);a&&i.push(a)}),i},s=()=>{document.documentElement.lang=t.value;const i=o();n.forEach((l,a)=>{const c=i.findIndex(f=>l.isEqualNode(f));c===-1?(l.remove(),delete n[a]):i.splice(c,1)}),i.forEach(l=>document.head.appendChild(l)),n=[...n.filter(l=>!!l),...i]};Xt(Ad,s),Ge(()=>{r(),$e(e,s,{immediate:!1})})},uv=([e,t,n=""])=>{const r=Object.entries(t).map(([l,a])=>st(a)?`[${l}=${JSON.stringify(a)}]`:a===!0?`[${l}]`:"").join(""),o=`head > ${e}${r}`;return Array.from(document.querySelectorAll(o)).find(l=>l.innerText===n)||null},fv=([e,t,n])=>{if(!st(e))return null;const r=document.createElement(e);return Yo(t)&&Object.entries(t).forEach(([o,s])=>{st(s)?r.setAttribute(o,s):s===!0&&r.setAttribute(o,"")}),st(n)&&r.appendChild(document.createTextNode(n)),r},dv=tf,hv=async()=>{var n;const e=dv({name:"Vuepress",setup(){var s;cv();for(const i of br)(s=i.setup)==null||s.call(i);const r=br.flatMap(({rootComponents:i=[]})=>i.map(l=>ke(l))),o=xd();return()=>[ke(o.value),r]}}),t=iv();lv(e),av(e,t,br);for(const r of br)await((n=r.enhance)==null?void 0:n.call(r,{app:e,router:t,siteData:Dn}));return e.use(t),{app:e,router:t}};hv().then(({app:e,router:t})=>{t.isReady().then(()=>{e.mount("#app")})});export{we as _,W as a,$t as b,Y as c,hv as createVueApp,te as d,gu as e,$ as o,Go as r,Ee as w}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = [] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/dist/assets/app-OMtl6IVo.js b/dist/assets/app-OMtl6IVo.js new file mode 100644 index 0000000..424dc52 --- /dev/null +++ b/dist/assets/app-OMtl6IVo.js @@ -0,0 +1,30 @@ +/** +* @vue/shared v3.4.36 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Do(e,t){const n=new Set(e.split(","));return r=>n.has(r)}const Pe={},an=[],nt=()=>{},ga=()=>!1,Jn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Oo=e=>e.startsWith("onUpdate:"),$e=Object.assign,Io=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},ma=Object.prototype.hasOwnProperty,ce=(e,t)=>ma.call(e,t),X=Array.isArray,cn=e=>Ir(e)==="[object Map]",ki=e=>Ir(e)==="[object Set]",ne=e=>typeof e=="function",Te=e=>typeof e=="string",Nt=e=>typeof e=="symbol",ye=e=>e!==null&&typeof e=="object",Li=e=>(ye(e)||ne(e))&&ne(e.then)&&ne(e.catch),Ei=Object.prototype.toString,Ir=e=>Ei.call(e),va=e=>Ir(e).slice(8,-1),xi=e=>Ir(e)==="[object Object]",Mo=e=>Te(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,un=Do(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Mr=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},_a=/-(\w)/g,Ye=Mr(e=>e.replace(_a,(t,n)=>n?n.toUpperCase():"")),ba=/\B([A-Z])/g,Ht=Mr(e=>e.replace(ba,"-$1").toLowerCase()),Qn=Mr(e=>e.charAt(0).toUpperCase()+e.slice(1)),Yr=Mr(e=>e?`on${Qn(e)}`:""),It=(e,t)=>!Object.is(e,t),Xr=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},ya=e=>{const t=parseFloat(e);return isNaN(t)?e:t},wa=e=>{const t=Te(e)?Number(e):NaN;return isNaN(t)?e:t};let ms;const Ti=()=>ms||(ms=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Yn(e){if(X(e)){const t={};for(let n=0;n{if(n){const r=n.split(Ca);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function Be(e){let t="";if(Te(e))t=e;else if(X(e))for(let n=0;n!!(e&&e.__v_isRef===!0),le=e=>Te(e)?e:e==null?"":X(e)||ye(e)&&(e.toString===Ei||!ne(e.toString))?Di(e)?le(e.value):JSON.stringify(e,Oi,2):String(e),Oi=(e,t)=>Di(t)?Oi(e,t.value):cn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o],s)=>(n[Zr(r,s)+" =>"]=o,n),{})}:ki(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Zr(n))}:Nt(t)?Zr(t):ye(t)&&!X(t)&&!xi(t)?String(t):t,Zr=(e,t="")=>{var n;return Nt(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.4.36 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Je;class xa{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Je,!t&&Je&&(this.index=(Je.scopes||(Je.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Je;try{return Je=this,t()}finally{Je=n}}}on(){Je=this}off(){Je=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),jt()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Dt,n=Jt;try{return Dt=!0,Jt=this,this._runnings++,vs(this),this.fn()}finally{_s(this),this._runnings--,Jt=n,Dt=t}}stop(){this.active&&(vs(this),_s(this),this.onStop&&this.onStop(),this.active=!1)}}function Ra(e){return e.value}function vs(e){e._trackId++,e._depsLength=0}function _s(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},Cr=new WeakMap,Qt=Symbol(""),_o=Symbol("");function Ge(e,t,n){if(Dt&&Jt){let r=Cr.get(e);r||Cr.set(e,r=new Map);let o=r.get(n);o||r.set(n,o=Vi(()=>r.delete(n))),Ni(Jt,o)}}function _t(e,t,n,r,o,s){const i=Cr.get(e);if(!i)return;let l=[];if(t==="clear")l=[...i.values()];else if(n==="length"&&X(e)){const a=Number(r);i.forEach((c,f)=>{(f==="length"||!Nt(f)&&f>=a)&&l.push(c)})}else switch(n!==void 0&&l.push(i.get(n)),t){case"add":X(e)?Mo(n)&&l.push(i.get("length")):(l.push(i.get(Qt)),cn(e)&&l.push(i.get(_o)));break;case"delete":X(e)||(l.push(i.get(Qt)),cn(e)&&l.push(i.get(_o)));break;case"set":cn(e)&&l.push(i.get(Qt));break}No();for(const a of l)a&&Hi(a,4);Ho()}function Da(e,t){const n=Cr.get(e);return n&&n.get(t)}const Oa=Do("__proto__,__v_isRef,__isVue"),ji=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Nt)),bs=Ia();function Ia(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=fe(this);for(let s=0,i=this.length;s{e[t]=function(...n){Vt(),No();const r=fe(this)[t].apply(this,n);return Ho(),jt(),r}}),e}function Ma(e){Nt(e)||(e=String(e));const t=fe(this);return Ge(t,"has",e),t.hasOwnProperty(e)}class Fi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){const o=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return s;if(n==="__v_raw")return r===(o?s?za:Ki:s?Ui:Wi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const i=X(t);if(!o){if(i&&ce(bs,n))return Reflect.get(bs,n,r);if(n==="hasOwnProperty")return Ma}const l=Reflect.get(t,n,r);return(Nt(n)?ji.has(n):Oa(n))||(o||Ge(t,"get",n),s)?l:He(l)?i&&Mo(n)?l:l.value:ye(l)?o?Nr(l):Xn(l):l}}class Bi extends Fi{constructor(t=!1){super(!1,t)}set(t,n,r,o){let s=t[n];if(!this._isShallow){const a=en(s);if(!mn(r)&&!en(r)&&(s=fe(s),r=fe(r)),!X(t)&&He(s)&&!He(r))return a?!1:(s.value=r,!0)}const i=X(t)&&Mo(n)?Number(n)e,$r=e=>Reflect.getPrototypeOf(e);function lr(e,t,n=!1,r=!1){e=e.__v_raw;const o=fe(e),s=fe(t);n||(It(t,s)&&Ge(o,"get",t),Ge(o,"get",s));const{has:i}=$r(o),l=r?Vo:n?Bo:jn;if(i.call(o,t))return l(e.get(t));if(i.call(o,s))return l(e.get(s));e!==o&&e.get(t)}function ar(e,t=!1){const n=this.__v_raw,r=fe(n),o=fe(e);return t||(It(e,o)&&Ge(r,"has",e),Ge(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function cr(e,t=!1){return e=e.__v_raw,!t&&Ge(fe(e),"iterate",Qt),Reflect.get(e,"size",e)}function ys(e,t=!1){!t&&!mn(e)&&!en(e)&&(e=fe(e));const n=fe(this);return $r(n).has.call(n,e)||(n.add(e),_t(n,"add",e,e)),this}function ws(e,t,n=!1){!n&&!mn(t)&&!en(t)&&(t=fe(t));const r=fe(this),{has:o,get:s}=$r(r);let i=o.call(r,e);i||(e=fe(e),i=o.call(r,e));const l=s.call(r,e);return r.set(e,t),i?It(t,l)&&_t(r,"set",e,t):_t(r,"add",e,t),this}function Ss(e){const t=fe(this),{has:n,get:r}=$r(t);let o=n.call(t,e);o||(e=fe(e),o=n.call(t,e)),r&&r.call(t,e);const s=t.delete(e);return o&&_t(t,"delete",e,void 0),s}function Cs(){const e=fe(this),t=e.size!==0,n=e.clear();return t&&_t(e,"clear",void 0,void 0),n}function ur(e,t){return function(r,o){const s=this,i=s.__v_raw,l=fe(i),a=t?Vo:e?Bo:jn;return!e&&Ge(l,"iterate",Qt),i.forEach((c,f)=>r.call(o,a(c),a(f),s))}}function fr(e,t,n){return function(...r){const o=this.__v_raw,s=fe(o),i=cn(s),l=e==="entries"||e===Symbol.iterator&&i,a=e==="keys"&&i,c=o[e](...r),f=n?Vo:t?Bo:jn;return!t&&Ge(s,"iterate",a?_o:Qt),{next(){const{value:u,done:p}=c.next();return p?{value:u,done:p}:{value:l?[f(u[0]),f(u[1])]:f(u),done:p}},[Symbol.iterator](){return this}}}}function Pt(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function ja(){const e={get(s){return lr(this,s)},get size(){return cr(this)},has:ar,add:ys,set:ws,delete:Ss,clear:Cs,forEach:ur(!1,!1)},t={get(s){return lr(this,s,!1,!0)},get size(){return cr(this)},has:ar,add(s){return ys.call(this,s,!0)},set(s,i){return ws.call(this,s,i,!0)},delete:Ss,clear:Cs,forEach:ur(!1,!0)},n={get(s){return lr(this,s,!0)},get size(){return cr(this,!0)},has(s){return ar.call(this,s,!0)},add:Pt("add"),set:Pt("set"),delete:Pt("delete"),clear:Pt("clear"),forEach:ur(!0,!1)},r={get(s){return lr(this,s,!0,!0)},get size(){return cr(this,!0)},has(s){return ar.call(this,s,!0)},add:Pt("add"),set:Pt("set"),delete:Pt("delete"),clear:Pt("clear"),forEach:ur(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(s=>{e[s]=fr(s,!1,!1),n[s]=fr(s,!0,!1),t[s]=fr(s,!1,!0),r[s]=fr(s,!0,!0)}),[e,n,t,r]}const[Fa,Ba,Wa,Ua]=ja();function jo(e,t){const n=t?e?Ua:Wa:e?Ba:Fa;return(r,o,s)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(ce(n,o)&&o in r?n:r,o,s)}const Ka={get:jo(!1,!1)},Ga={get:jo(!1,!0)},qa={get:jo(!0,!1)};const Wi=new WeakMap,Ui=new WeakMap,Ki=new WeakMap,za=new WeakMap;function Ja(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Qa(e){return e.__v_skip||!Object.isExtensible(e)?0:Ja(va(e))}function Xn(e){return en(e)?e:Fo(e,!1,Na,Ka,Wi)}function Gi(e){return Fo(e,!1,Va,Ga,Ui)}function Nr(e){return Fo(e,!0,Ha,qa,Ki)}function Fo(e,t,n,r,o){if(!ye(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=o.get(e);if(s)return s;const i=Qa(e);if(i===0)return e;const l=new Proxy(e,i===2?r:n);return o.set(e,l),l}function fn(e){return en(e)?fn(e.__v_raw):!!(e&&e.__v_isReactive)}function en(e){return!!(e&&e.__v_isReadonly)}function mn(e){return!!(e&&e.__v_isShallow)}function qi(e){return e?!!e.__v_raw:!1}function fe(e){const t=e&&e.__v_raw;return t?fe(t):e}function Ya(e){return Object.isExtensible(e)&&Ai(e,"__v_skip",!0),e}const jn=e=>ye(e)?Xn(e):e,Bo=e=>ye(e)?Nr(e):e;class zi{constructor(t,n,r,o){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new $o(()=>t(this._value),()=>On(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=r}get value(){const t=fe(this);return(!t._cacheable||t.effect.dirty)&&It(t._value,t._value=t.effect.run())&&On(t,4),Wo(t),t.effect._dirtyLevel>=2&&On(t,2),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function Xa(e,t,n=!1){let r,o;const s=ne(e);return s?(r=e,o=nt):(r=e.get,o=e.set),new zi(r,o,s||!o,n)}function Wo(e){var t;Dt&&Jt&&(e=fe(e),Ni(Jt,(t=e.dep)!=null?t:e.dep=Vi(()=>e.dep=void 0,e instanceof zi?e:void 0)))}function On(e,t=4,n,r){e=fe(e);const o=e.dep;o&&Hi(o,t)}function He(e){return!!(e&&e.__v_isRef===!0)}function ue(e){return Ji(e,!1)}function yn(e){return Ji(e,!0)}function Ji(e,t){return He(e)?e:new Za(e,t)}class Za{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:fe(t),this._value=n?t:jn(t)}get value(){return Wo(this),this._value}set value(t){const n=this.__v_isShallow||mn(t)||en(t);t=n?t:fe(t),It(t,this._rawValue)&&(this._rawValue,this._rawValue=t,this._value=n?t:jn(t),On(this,4))}}function Yt(e){return He(e)?e.value:e}const ec={get:(e,t,n)=>Yt(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return He(o)&&!He(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function Qi(e){return fn(e)?e:new Proxy(e,ec)}class tc{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>Wo(this),()=>On(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function nc(e){return new tc(e)}function Yi(e){const t=X(e)?new Array(e.length):{};for(const n in e)t[n]=Xi(e,n);return t}class rc{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Da(fe(this._object),this._key)}}class oc{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function sc(e,t,n){return He(e)?e:ne(e)?new oc(e):ye(e)&&arguments.length>1?Xi(e,t,n):ue(e)}function Xi(e,t,n){const r=e[t];return He(r)?r:new rc(e,t,n)}/** +* @vue/runtime-core v3.4.36 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function Ot(e,t,n,r){try{return r?e(...r):e()}catch(o){Zn(o,t,n)}}function rt(e,t,n,r){if(ne(e)){const o=Ot(e,t,n,r);return o&&Li(o)&&o.catch(s=>{Zn(s,t,n)}),o}if(X(e)){const o=[];for(let s=0;s>>1,o=Ve[r],s=Bn(o);sdt&&Ve.splice(t,1)}function cc(e){X(e)?dn.push(...e):(!Et||!Et.includes(e,e.allowRecurse?Gt+1:Gt))&&dn.push(e),el()}function Ps(e,t,n=Fn?dt+1:0){for(;nBn(n)-Bn(r));if(dn.length=0,Et){Et.push(...t);return}for(Et=t,Gt=0;Gte.id==null?1/0:e.id,uc=(e,t)=>{const n=Bn(e)-Bn(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function tl(e){bo=!1,Fn=!0,Ve.sort(uc);try{for(dt=0;dt{r._d&&Ms(-1);const s=kr(t);let i;try{i=e(...o)}finally{kr(s),r._d&&Ms(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function Lr(e,t){if(Me===null)return e;const n=Ur(Me),r=e.dirs||(e.dirs=[]);for(let o=0;o{e.isMounted=!0}),Ko(()=>{e.isUnmounting=!0}),e}const Ze=[Function,Array],nl={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ze,onEnter:Ze,onAfterEnter:Ze,onEnterCancelled:Ze,onBeforeLeave:Ze,onLeave:Ze,onAfterLeave:Ze,onLeaveCancelled:Ze,onBeforeAppear:Ze,onAppear:Ze,onAfterAppear:Ze,onAppearCancelled:Ze},rl=e=>{const t=e.subTree;return t.component?rl(t.component):t},pc={name:"BaseTransition",props:nl,setup(e,{slots:t}){const n=Wr(),r=hc();return()=>{const o=t.default&&sl(t.default(),!0);if(!o||!o.length)return;let s=o[0];if(o.length>1){for(const p of o)if(p.type!==Fe){s=p;break}}const i=fe(e),{mode:l}=i;if(r.isLeaving)return eo(s);const a=ks(s);if(!a)return eo(s);let c=yo(a,i,r,n,p=>c=p);Er(a,c);const f=n.subTree,u=f&&ks(f);if(u&&u.type!==Fe&&!qt(a,u)&&rl(n).type!==Fe){const p=yo(u,i,r,n);if(Er(u,p),l==="out-in"&&a.type!==Fe)return r.isLeaving=!0,p.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},eo(s);l==="in-out"&&a.type!==Fe&&(p.delayLeave=(g,_,y)=>{const k=ol(r,u);k[String(u.key)]=u,g[xt]=()=>{_(),g[xt]=void 0,delete c.delayedLeave},c.delayedLeave=y})}return s}}},gc=pc;function ol(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function yo(e,t,n,r,o){const{appear:s,mode:i,persisted:l=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:f,onEnterCancelled:u,onBeforeLeave:p,onLeave:g,onAfterLeave:_,onLeaveCancelled:y,onBeforeAppear:k,onAppear:A,onAfterAppear:b,onAppearCancelled:m}=t,S=String(e.key),V=ol(n,e),O=(j,L)=>{j&&rt(j,r,9,L)},K=(j,L)=>{const U=L[1];O(j,L),X(j)?j.every(R=>R.length<=1)&&U():j.length<=1&&U()},Z={mode:i,persisted:l,beforeEnter(j){let L=a;if(!n.isMounted)if(s)L=k||a;else return;j[xt]&&j[xt](!0);const U=V[S];U&&qt(e,U)&&U.el[xt]&&U.el[xt](),O(L,[j])},enter(j){let L=c,U=f,R=u;if(!n.isMounted)if(s)L=A||c,U=b||f,R=m||u;else return;let ee=!1;const ve=j[dr]=_e=>{ee||(ee=!0,_e?O(R,[j]):O(U,[j]),Z.delayedLeave&&Z.delayedLeave(),j[dr]=void 0)};L?K(L,[j,ve]):ve()},leave(j,L){const U=String(e.key);if(j[dr]&&j[dr](!0),n.isUnmounting)return L();O(p,[j]);let R=!1;const ee=j[xt]=ve=>{R||(R=!0,L(),ve?O(y,[j]):O(_,[j]),j[xt]=void 0,V[U]===e&&delete V[U])};V[U]=e,g?K(g,[j,ee]):ee()},clone(j){const L=yo(j,t,n,r,o);return o&&o(L),L}};return Z}function eo(e){if(er(e))return e=Mt(e),e.children=null,e}function ks(e){if(!er(e))return e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&ne(n.default))return n.default()}}function Er(e,t){e.shapeFlag&6&&e.component?Er(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function sl(e,t=!1,n){let r=[],o=0;for(let s=0;s1)for(let s=0;s!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function mc(e){ne(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:s,suspensible:i=!0,onError:l}=e;let a=null,c,f=0;const u=()=>(f++,a=null,p()),p=()=>{let g;return a||(g=a=t().catch(_=>{if(_=_ instanceof Error?_:new Error(String(_)),l)return new Promise((y,k)=>{l(_,()=>y(u()),()=>k(_),f+1)});throw _}).then(_=>g!==a&&a?a:(_&&(_.__esModule||_[Symbol.toStringTag]==="Module")&&(_=_.default),c=_,_)))};return he({name:"AsyncComponentWrapper",__asyncLoader:p,get __asyncResolved(){return c},setup(){const g=Ie;if(c)return()=>to(c,g);const _=b=>{a=null,Zn(b,g,13,!r)};if(i&&g.suspense||nr)return p().then(b=>()=>to(b,g)).catch(b=>(_(b),()=>r?te(r,{error:b}):null));const y=ue(!1),k=ue(),A=ue(!!o);return o&&setTimeout(()=>{A.value=!1},o),s!=null&&setTimeout(()=>{if(!y.value&&!k.value){const b=new Error(`Async component timed out after ${s}ms.`);_(b),k.value=b}},s),p().then(()=>{y.value=!0,g.parent&&er(g.parent.vnode)&&(g.parent.effect.dirty=!0,Hr(g.parent.update))}).catch(b=>{_(b),k.value=b}),()=>{if(y.value&&c)return to(c,g);if(k.value&&r)return te(r,{error:k.value});if(n&&!A.value)return te(n)}}})}function to(e,t){const{ref:n,props:r,children:o,ce:s}=t.vnode,i=te(e,r,o);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const er=e=>e.type.__isKeepAlive;function vc(e,t){il(e,"a",t)}function _c(e,t){il(e,"da",t)}function il(e,t,n=Ie){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(jr(t,r,n),n){let o=n.parent;for(;o&&o.parent;)er(o.parent.vnode)&&bc(r,t,n,o),o=o.parent}}function bc(e,t,n,r){const o=jr(t,e,r,!0);Fr(()=>{Io(r[t],o)},n)}function jr(e,t,n=Ie,r=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{Vt();const l=tr(n),a=rt(t,n,e,i);return l(),jt(),a});return r?o.unshift(s):o.push(s),s}}const wt=e=>(t,n=Ie)=>{(!nr||e==="sp")&&jr(e,(...r)=>t(...r),n)},yc=wt("bm"),qe=wt("m"),wc=wt("bu"),Sc=wt("u"),Ko=wt("bum"),Fr=wt("um"),Cc=wt("sp"),Pc=wt("rtg"),kc=wt("rtc");function Lc(e,t=Ie){jr("ec",e,t)}const Ec="components";function Go(e,t){return Ac(Ec,e,!0,t)||e}const xc=Symbol.for("v-ndc");function Ac(e,t,n=!0,r=!1){const o=Me||Ie;if(o){const s=o.type;{const l=wu(s,!1);if(l&&(l===t||l===Ye(t)||l===Qn(Ye(t))))return s}const i=Ls(o[e]||s[e],t)||Ls(o.appContext[e],t);return!i&&r?s:i}}function Ls(e,t){return e&&(e[t]||e[Ye(t)]||e[Qn(Ye(t))])}function bt(e,t,n,r){let o;const s=n;if(X(e)||Te(e)){o=new Array(e.length);for(let i=0,l=e.length;it(i,l,void 0,s));else{const i=Object.keys(e);o=new Array(i.length);for(let l=0,a=i.length;lTr(t)?!(t.type===Fe||t.type===be&&!ll(t.children)):!0)?e:null}const wo=e=>e?El(e)?Ur(e):wo(e.parent):null,In=$e(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=>wo(e.parent),$root:e=>wo(e.root),$emit:e=>e.emit,$options:e=>qo(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Hr(e.update)}),$nextTick:e=>e.n||(e.n=wn.bind(e.proxy)),$watch:e=>tu.bind(e)}),no=(e,t)=>e!==Pe&&!e.__isScriptSetup&&ce(e,t),Tc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:r,data:o,props:s,accessCache:i,type:l,appContext:a}=e;let c;if(t[0]!=="$"){const g=i[t];if(g!==void 0)switch(g){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return s[t]}else{if(no(r,t))return i[t]=1,r[t];if(o!==Pe&&ce(o,t))return i[t]=2,o[t];if((c=e.propsOptions[0])&&ce(c,t))return i[t]=3,s[t];if(n!==Pe&&ce(n,t))return i[t]=4,n[t];So&&(i[t]=0)}}const f=In[t];let u,p;if(f)return t==="$attrs"&&Ge(e.attrs,"get",""),f(e);if((u=l.__cssModules)&&(u=u[t]))return u;if(n!==Pe&&ce(n,t))return i[t]=4,n[t];if(p=a.config.globalProperties,ce(p,t))return p[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:s}=e;return no(o,t)?(o[t]=n,!0):r!==Pe&&ce(r,t)?(r[t]=n,!0):ce(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:s}},i){let l;return!!n[i]||e!==Pe&&ce(e,i)||no(t,i)||(l=s[0])&&ce(l,i)||ce(r,i)||ce(In,i)||ce(o.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:ce(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Es(e){return X(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let So=!0;function Rc(e){const t=qo(e),n=e.proxy,r=e.ctx;So=!1,t.beforeCreate&&xs(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:i,watch:l,provide:a,inject:c,created:f,beforeMount:u,mounted:p,beforeUpdate:g,updated:_,activated:y,deactivated:k,beforeDestroy:A,beforeUnmount:b,destroyed:m,unmounted:S,render:V,renderTracked:O,renderTriggered:K,errorCaptured:Z,serverPrefetch:j,expose:L,inheritAttrs:U,components:R,directives:ee,filters:ve}=t;if(c&&Dc(c,r,null),i)for(const oe in i){const Q=i[oe];ne(Q)&&(r[oe]=Q.bind(n))}if(o){const oe=o.call(n,n);ye(oe)&&(e.data=Xn(oe))}if(So=!0,s)for(const oe in s){const Q=s[oe],De=ne(Q)?Q.bind(n,n):ne(Q.get)?Q.get.bind(n,n):nt,Ct=!ne(Q)&&ne(Q.set)?Q.set.bind(n):nt,ct=T({get:De,set:Ct});Object.defineProperty(r,oe,{enumerable:!0,configurable:!0,get:()=>ct.value,set:Ue=>ct.value=Ue})}if(l)for(const oe in l)al(l[oe],r,n,oe);if(a){const oe=ne(a)?a.call(n):a;Reflect.ownKeys(oe).forEach(Q=>{Xt(Q,oe[Q])})}f&&xs(f,e,"c");function z(oe,Q){X(Q)?Q.forEach(De=>oe(De.bind(n))):Q&&oe(Q.bind(n))}if(z(yc,u),z(qe,p),z(wc,g),z(Sc,_),z(vc,y),z(_c,k),z(Lc,Z),z(kc,O),z(Pc,K),z(Ko,b),z(Fr,S),z(Cc,j),X(L))if(L.length){const oe=e.exposed||(e.exposed={});L.forEach(Q=>{Object.defineProperty(oe,Q,{get:()=>n[Q],set:De=>n[Q]=De})})}else e.exposed||(e.exposed={});V&&e.render===nt&&(e.render=V),U!=null&&(e.inheritAttrs=U),R&&(e.components=R),ee&&(e.directives=ee)}function Dc(e,t,n=nt){X(e)&&(e=Co(e));for(const r in e){const o=e[r];let s;ye(o)?"default"in o?s=We(o.from||r,o.default,!0):s=We(o.from||r):s=We(o),He(s)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[r]=s}}function xs(e,t,n){rt(X(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function al(e,t,n,r){const o=r.includes(".")?Sl(n,r):()=>n[r];if(Te(e)){const s=t[e];ne(s)&&Ne(o,s)}else if(ne(e))Ne(o,e.bind(n));else if(ye(e))if(X(e))e.forEach(s=>al(s,t,n,r));else{const s=ne(e.handler)?e.handler.bind(n):t[e.handler];ne(s)&&Ne(o,s,e)}}function qo(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,l=s.get(t);let a;return l?a=l:!o.length&&!n&&!r?a=t:(a={},o.length&&o.forEach(c=>xr(a,c,i,!0)),xr(a,t,i)),ye(t)&&s.set(t,a),a}function xr(e,t,n,r=!1){const{mixins:o,extends:s}=t;s&&xr(e,s,n,!0),o&&o.forEach(i=>xr(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const l=Oc[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const Oc={data:As,props:Ts,emits:Ts,methods:Rn,computed:Rn,beforeCreate:je,created:je,beforeMount:je,mounted:je,beforeUpdate:je,updated:je,beforeDestroy:je,beforeUnmount:je,destroyed:je,unmounted:je,activated:je,deactivated:je,errorCaptured:je,serverPrefetch:je,components:Rn,directives:Rn,watch:Mc,provide:As,inject:Ic};function As(e,t){return t?e?function(){return $e(ne(e)?e.call(this,this):e,ne(t)?t.call(this,this):t)}:t:e}function Ic(e,t){return Rn(Co(e),Co(t))}function Co(e){if(X(e)){const t={};for(let n=0;n1)return n&&ne(t)?t.call(r&&r.proxy):t}}const ul={},fl=()=>Object.create(ul),dl=e=>Object.getPrototypeOf(e)===ul;function Hc(e,t,n,r=!1){const o={},s=fl();e.propsDefaults=Object.create(null),hl(e,t,o,s);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);n?e.props=r?o:Gi(o):e.type.props?e.props=o:e.props=s,e.attrs=s}function Vc(e,t,n,r){const{props:o,attrs:s,vnode:{patchFlag:i}}=e,l=fe(o),[a]=e.propsOptions;let c=!1;if((r||i>0)&&!(i&16)){if(i&8){const f=e.vnode.dynamicProps;for(let u=0;u{a=!0;const[p,g]=pl(u,t,!0);$e(i,p),g&&l.push(...g)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!s&&!a)return ye(e)&&r.set(e,an),an;if(X(s))for(let f=0;fe[0]==="_"||e==="$stable",zo=e=>X(e)?e.map(tt):[tt(e)],Fc=(e,t,n)=>{if(t._n)return t;const r=xe((...o)=>zo(t(...o)),n);return r._c=!1,r},ml=(e,t,n)=>{const r=e._ctx;for(const o in e){if(gl(o))continue;const s=e[o];if(ne(s))t[o]=Fc(o,s,r);else if(s!=null){const i=zo(s);t[o]=()=>i}}},vl=(e,t)=>{const n=zo(t);e.slots.default=()=>n},_l=(e,t,n)=>{for(const r in t)(n||r!=="_")&&(e[r]=t[r])},Bc=(e,t,n)=>{const r=e.slots=fl();if(e.vnode.shapeFlag&32){const o=t._;o?(_l(r,t,n),n&&Ai(r,"_",o,!0)):ml(t,r)}else t&&vl(e,t)},Wc=(e,t,n)=>{const{vnode:r,slots:o}=e;let s=!0,i=Pe;if(r.shapeFlag&32){const l=t._;l?n&&l===1?s=!1:_l(o,t,n):(s=!t.$stable,ml(t,o)),i=t}else t&&(vl(e,t),i={default:1});if(s)for(const l in o)!gl(l)&&i[l]==null&&delete o[l]};function Ar(e,t,n,r,o=!1){if(X(e)){e.forEach((p,g)=>Ar(p,t&&(X(t)?t[g]:t),n,r,o));return}if(hn(r)&&!o)return;const s=r.shapeFlag&4?Ur(r.component):r.el,i=o?null:s,{i:l,r:a}=e,c=t&&t.r,f=l.refs===Pe?l.refs={}:l.refs,u=l.setupState;if(c!=null&&c!==a&&(Te(c)?(f[c]=null,ce(u,c)&&(u[c]=null)):He(c)&&(c.value=null)),ne(a))Ot(a,l,12,[i,f]);else{const p=Te(a),g=He(a);if(p||g){const _=()=>{if(e.f){const y=p?ce(u,a)?u[a]:f[a]:a.value;o?X(y)&&Io(y,s):X(y)?y.includes(s)||y.push(s):p?(f[a]=[s],ce(u,a)&&(u[a]=f[a])):(a.value=[s],e.k&&(f[e.k]=a.value))}else p?(f[a]=i,ce(u,a)&&(u[a]=i)):g&&(a.value=i,e.k&&(f[e.k]=i))};i?(_.id=-1,Ke(_,n)):_()}}}const Uc=Symbol("_vte"),Kc=e=>e.__isTeleport;let Ds=!1;const sn=()=>{Ds||(console.error("Hydration completed but contains mismatches."),Ds=!0)},Gc=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",qc=e=>e.namespaceURI.includes("MathML"),hr=e=>{if(Gc(e))return"svg";if(qc(e))return"mathml"},pr=e=>e.nodeType===8;function zc(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:s,parentNode:i,remove:l,insert:a,createComment:c}}=e,f=(m,S)=>{if(!S.hasChildNodes()){n(null,m,S),Pr(),S._vnode=m;return}u(S.firstChild,m,null,null,null),Pr(),S._vnode=m},u=(m,S,V,O,K,Z=!1)=>{Z=Z||!!S.dynamicChildren;const j=pr(m)&&m.data==="[",L=()=>y(m,S,V,O,K,j),{type:U,ref:R,shapeFlag:ee,patchFlag:ve}=S;let _e=m.nodeType;S.el=m,ve===-2&&(Z=!1,S.dynamicChildren=null);let z=null;switch(U){case Zt:_e!==3?S.children===""?(a(S.el=o(""),i(m),m),z=m):z=L():(m.data!==S.children&&(sn(),m.data=S.children),z=s(m));break;case Fe:b(m)?(z=s(m),A(S.el=m.content.firstChild,m,V)):_e!==8||j?z=L():z=s(m);break;case $n:if(j&&(m=s(m),_e=m.nodeType),_e===1||_e===3){z=m;const oe=!S.children.length;for(let Q=0;Q{Z=Z||!!S.dynamicChildren;const{type:j,props:L,patchFlag:U,shapeFlag:R,dirs:ee,transition:ve}=S,_e=j==="input"||j==="option";if(_e||U!==-1){ee&&ft(S,null,V,"created");let z=!1;if(b(m)){z=bl(O,ve)&&V&&V.vnode.props&&V.vnode.props.appear;const Q=m.content.firstChild;z&&ve.beforeEnter(Q),A(Q,m,V),S.el=m=Q}if(R&16&&!(L&&(L.innerHTML||L.textContent))){let Q=g(m.firstChild,S,m,V,O,K,Z);for(;Q;){sn();const De=Q;Q=Q.nextSibling,l(De)}}else R&8&&m.textContent!==S.children&&(sn(),m.textContent=S.children);if(L){if(_e||!Z||U&48){const Q=m.tagName.includes("-");for(const De in L)(_e&&(De.endsWith("value")||De==="indeterminate")||Jn(De)&&!un(De)||De[0]==="."||Q)&&r(m,De,null,L[De],void 0,V)}else if(L.onClick)r(m,"onClick",null,L.onClick,void 0,V);else if(U&4&&fn(L.style))for(const Q in L.style)L.style[Q]}let oe;(oe=L&&L.onVnodeBeforeMount)&&et(oe,V,S),ee&&ft(S,null,V,"beforeMount"),((oe=L&&L.onVnodeMounted)||ee||z)&&Pl(()=>{oe&&et(oe,V,S),z&&ve.enter(m),ee&&ft(S,null,V,"mounted")},O)}return m.nextSibling},g=(m,S,V,O,K,Z,j)=>{j=j||!!S.dynamicChildren;const L=S.children,U=L.length;for(let R=0;R{const{slotScopeIds:j}=S;j&&(K=K?K.concat(j):j);const L=i(m),U=g(s(m),S,L,V,O,K,Z);return U&&pr(U)&&U.data==="]"?s(S.anchor=U):(sn(),a(S.anchor=c("]"),L,U),U)},y=(m,S,V,O,K,Z)=>{if(sn(),S.el=null,Z){const U=k(m);for(;;){const R=s(m);if(R&&R!==U)l(R);else break}}const j=s(m),L=i(m);return l(m),n(null,S,L,j,V,O,hr(L),K),j},k=(m,S="[",V="]")=>{let O=0;for(;m;)if(m=s(m),m&&pr(m)&&(m.data===S&&O++,m.data===V)){if(O===0)return s(m);O--}return m},A=(m,S,V)=>{const O=S.parentNode;O&&O.replaceChild(m,S);let K=V;for(;K;)K.vnode.el===S&&(K.vnode.el=K.subTree.el=m),K=K.parent},b=m=>m.nodeType===1&&m.tagName.toLowerCase()==="template";return[f,u]}const Ke=Pl;function Jc(e){return Qc(e,zc)}function Qc(e,t){const n=Ti();n.__VUE__=!0;const{insert:r,remove:o,patchProp:s,createElement:i,createText:l,createComment:a,setText:c,setElementText:f,parentNode:u,nextSibling:p,setScopeId:g=nt,insertStaticContent:_}=e,y=(d,h,v,P=null,w=null,x=null,N=void 0,I=null,M=!!h.dynamicChildren)=>{if(d===h)return;d&&!qt(d,h)&&(P=C(d),Ue(d,w,x,!0),d=null),h.patchFlag===-2&&(M=!1,h.dynamicChildren=null);const{type:E,ref:B,shapeFlag:J}=h;switch(E){case Zt:k(d,h,v,P);break;case Fe:A(d,h,v,P);break;case $n:d==null&&b(h,v,P,N);break;case be:R(d,h,v,P,w,x,N,I,M);break;default:J&1?V(d,h,v,P,w,x,N,I,M):J&6?ee(d,h,v,P,w,x,N,I,M):(J&64||J&128)&&E.process(d,h,v,P,w,x,N,I,M,G)}B!=null&&w&&Ar(B,d&&d.ref,x,h||d,!h)},k=(d,h,v,P)=>{if(d==null)r(h.el=l(h.children),v,P);else{const w=h.el=d.el;h.children!==d.children&&c(w,h.children)}},A=(d,h,v,P)=>{d==null?r(h.el=a(h.children||""),v,P):h.el=d.el},b=(d,h,v,P)=>{[d.el,d.anchor]=_(d.children,h,v,P,d.el,d.anchor)},m=({el:d,anchor:h},v,P)=>{let w;for(;d&&d!==h;)w=p(d),r(d,v,P),d=w;r(h,v,P)},S=({el:d,anchor:h})=>{let v;for(;d&&d!==h;)v=p(d),o(d),d=v;o(h)},V=(d,h,v,P,w,x,N,I,M)=>{h.type==="svg"?N="svg":h.type==="math"&&(N="mathml"),d==null?O(h,v,P,w,x,N,I,M):j(d,h,w,x,N,I,M)},O=(d,h,v,P,w,x,N,I)=>{let M,E;const{props:B,shapeFlag:J,transition:q,dirs:re}=d;if(M=d.el=i(d.type,x,B&&B.is,B),J&8?f(M,d.children):J&16&&Z(d.children,M,null,P,w,ro(d,x),N,I),re&&ft(d,null,P,"created"),K(M,d,d.scopeId,N,P),B){for(const Se in B)Se!=="value"&&!un(Se)&&s(M,Se,null,B[Se],x,P);"value"in B&&s(M,"value",null,B.value,x),(E=B.onVnodeBeforeMount)&&et(E,P,d)}re&&ft(d,null,P,"beforeMount");const se=bl(w,q);se&&q.beforeEnter(M),r(M,h,v),((E=B&&B.onVnodeMounted)||se||re)&&Ke(()=>{E&&et(E,P,d),se&&q.enter(M),re&&ft(d,null,P,"mounted")},w)},K=(d,h,v,P,w)=>{if(v&&g(d,v),P)for(let x=0;x{for(let E=M;E{const I=h.el=d.el;let{patchFlag:M,dynamicChildren:E,dirs:B}=h;M|=d.patchFlag&16;const J=d.props||Pe,q=h.props||Pe;let re;if(v&&Bt(v,!1),(re=q.onVnodeBeforeUpdate)&&et(re,v,h,d),B&&ft(h,d,v,"beforeUpdate"),v&&Bt(v,!0),(J.innerHTML&&q.innerHTML==null||J.textContent&&q.textContent==null)&&f(I,""),E?L(d.dynamicChildren,E,I,v,P,ro(h,w),x):N||Q(d,h,I,null,v,P,ro(h,w),x,!1),M>0){if(M&16)U(I,J,q,v,w);else if(M&2&&J.class!==q.class&&s(I,"class",null,q.class,w),M&4&&s(I,"style",J.style,q.style,w),M&8){const se=h.dynamicProps;for(let Se=0;Se{re&&et(re,v,h,d),B&&ft(h,d,v,"updated")},P)},L=(d,h,v,P,w,x,N)=>{for(let I=0;I{if(h!==v){if(h!==Pe)for(const x in h)!un(x)&&!(x in v)&&s(d,x,h[x],null,w,P);for(const x in v){if(un(x))continue;const N=v[x],I=h[x];N!==I&&x!=="value"&&s(d,x,I,N,w,P)}"value"in v&&s(d,"value",h.value,v.value,w)}},R=(d,h,v,P,w,x,N,I,M)=>{const E=h.el=d?d.el:l(""),B=h.anchor=d?d.anchor:l("");let{patchFlag:J,dynamicChildren:q,slotScopeIds:re}=h;re&&(I=I?I.concat(re):re),d==null?(r(E,v,P),r(B,v,P),Z(h.children||[],v,B,w,x,N,I,M)):J>0&&J&64&&q&&d.dynamicChildren?(L(d.dynamicChildren,q,v,w,x,N,I),(h.key!=null||w&&h===w.subTree)&&yl(d,h,!0)):Q(d,h,v,B,w,x,N,I,M)},ee=(d,h,v,P,w,x,N,I,M)=>{h.slotScopeIds=I,d==null?h.shapeFlag&512?w.ctx.activate(h,v,P,N,M):ve(h,v,P,w,x,N,M):_e(d,h,M)},ve=(d,h,v,P,w,x,N)=>{const I=d.component=mu(d,P,w);if(er(d)&&(I.ctx.renderer=G),vu(I,!1,N),I.asyncDep){if(w&&w.registerDep(I,z,N),!d.el){const M=I.subTree=te(Fe);A(null,M,h,v)}}else z(I,d,h,v,w,x,N)},_e=(d,h,v)=>{const P=h.component=d.component;if(iu(d,h,v))if(P.asyncDep&&!P.asyncResolved){oe(P,h,v);return}else P.next=h,ac(P.update),P.effect.dirty=!0,P.update();else h.el=d.el,P.vnode=h},z=(d,h,v,P,w,x,N)=>{const I=()=>{if(d.isMounted){let{next:B,bu:J,u:q,parent:re,vnode:se}=d;{const on=wl(d);if(on){B&&(B.el=se.el,oe(d,B,N)),on.asyncDep.then(()=>{d.isUnmounted||I()});return}}let Se=B,ge;Bt(d,!1),B?(B.el=se.el,oe(d,B,N)):B=se,J&&Xr(J),(ge=B.props&&B.props.onVnodeBeforeUpdate)&&et(ge,re,B,se),Bt(d,!0);const Oe=oo(d),ot=d.subTree;d.subTree=Oe,y(ot,Oe,u(ot.el),C(ot),d,w,x),B.el=Oe.el,Se===null&&lu(d,Oe.el),q&&Ke(q,w),(ge=B.props&&B.props.onVnodeUpdated)&&Ke(()=>et(ge,re,B,se),w)}else{let B;const{el:J,props:q}=h,{bm:re,m:se,parent:Se}=d,ge=hn(h);if(Bt(d,!1),re&&Xr(re),!ge&&(B=q&&q.onVnodeBeforeMount)&&et(B,Se,h),Bt(d,!0),J&&Ce){const Oe=()=>{d.subTree=oo(d),Ce(J,d.subTree,d,w,null)};ge?h.type.__asyncLoader().then(()=>!d.isUnmounted&&Oe()):Oe()}else{const Oe=d.subTree=oo(d);y(null,Oe,v,P,d,w,x),h.el=Oe.el}if(se&&Ke(se,w),!ge&&(B=q&&q.onVnodeMounted)){const Oe=h;Ke(()=>et(B,Se,Oe),w)}(h.shapeFlag&256||Se&&hn(Se.vnode)&&Se.vnode.shapeFlag&256)&&d.a&&Ke(d.a,w),d.isMounted=!0,h=v=P=null}},M=d.effect=new $o(I,nt,()=>Hr(E),d.scope),E=d.update=()=>{M.dirty&&M.run()};E.i=d,E.id=d.uid,Bt(d,!0),E()},oe=(d,h,v)=>{h.component=d;const P=d.vnode.props;d.vnode=h,d.next=null,Vc(d,h.props,P,v),Wc(d,h.children,v),Vt(),Ps(d),jt()},Q=(d,h,v,P,w,x,N,I,M=!1)=>{const E=d&&d.children,B=d?d.shapeFlag:0,J=h.children,{patchFlag:q,shapeFlag:re}=h;if(q>0){if(q&128){Ct(E,J,v,P,w,x,N,I,M);return}else if(q&256){De(E,J,v,P,w,x,N,I,M);return}}re&8?(B&16&&Xe(E,w,x),J!==E&&f(v,J)):B&16?re&16?Ct(E,J,v,P,w,x,N,I,M):Xe(E,w,x,!0):(B&8&&f(v,""),re&16&&Z(J,v,P,w,x,N,I,M))},De=(d,h,v,P,w,x,N,I,M)=>{d=d||an,h=h||an;const E=d.length,B=h.length,J=Math.min(E,B);let q;for(q=0;qB?Xe(d,w,x,!0,!1,J):Z(h,v,P,w,x,N,I,M,J)},Ct=(d,h,v,P,w,x,N,I,M)=>{let E=0;const B=h.length;let J=d.length-1,q=B-1;for(;E<=J&&E<=q;){const re=d[E],se=h[E]=M?At(h[E]):tt(h[E]);if(qt(re,se))y(re,se,v,null,w,x,N,I,M);else break;E++}for(;E<=J&&E<=q;){const re=d[J],se=h[q]=M?At(h[q]):tt(h[q]);if(qt(re,se))y(re,se,v,null,w,x,N,I,M);else break;J--,q--}if(E>J){if(E<=q){const re=q+1,se=req)for(;E<=J;)Ue(d[E],w,x,!0),E++;else{const re=E,se=E,Se=new Map;for(E=se;E<=q;E++){const ze=h[E]=M?At(h[E]):tt(h[E]);ze.key!=null&&Se.set(ze.key,E)}let ge,Oe=0;const ot=q-se+1;let on=!1,hs=0;const Pn=new Array(ot);for(E=0;E=ot){Ue(ze,w,x,!0);continue}let ut;if(ze.key!=null)ut=Se.get(ze.key);else for(ge=se;ge<=q;ge++)if(Pn[ge-se]===0&&qt(ze,h[ge])){ut=ge;break}ut===void 0?Ue(ze,w,x,!0):(Pn[ut-se]=E+1,ut>=hs?hs=ut:on=!0,y(ze,h[ut],v,null,w,x,N,I,M),Oe++)}const ps=on?Yc(Pn):an;for(ge=ps.length-1,E=ot-1;E>=0;E--){const ze=se+E,ut=h[ze],gs=ze+1{const{el:x,type:N,transition:I,children:M,shapeFlag:E}=d;if(E&6){ct(d.component.subTree,h,v,P);return}if(E&128){d.suspense.move(h,v,P);return}if(E&64){N.move(d,h,v,G);return}if(N===be){r(x,h,v);for(let J=0;JI.enter(x),w);else{const{leave:J,delayLeave:q,afterLeave:re}=I,se=()=>r(x,h,v),Se=()=>{J(x,()=>{se(),re&&re()})};q?q(x,se,Se):Se()}else r(x,h,v)},Ue=(d,h,v,P=!1,w=!1)=>{const{type:x,props:N,ref:I,children:M,dynamicChildren:E,shapeFlag:B,patchFlag:J,dirs:q,cacheIndex:re}=d;if(J===-2&&(w=!1),I!=null&&Ar(I,null,v,d,!0),re!=null&&(h.renderCache[re]=void 0),B&256){h.ctx.deactivate(d);return}const se=B&1&&q,Se=!hn(d);let ge;if(Se&&(ge=N&&N.onVnodeBeforeUnmount)&&et(ge,h,d),B&6)ir(d.component,v,P);else{if(B&128){d.suspense.unmount(v,P);return}se&&ft(d,null,h,"beforeUnmount"),B&64?d.type.remove(d,h,v,G,P):E&&!E.hasOnce&&(x!==be||J>0&&J&64)?Xe(E,h,v,!1,!0):(x===be&&J&384||!w&&B&16)&&Xe(M,h,v),P&&nn(d)}(Se&&(ge=N&&N.onVnodeUnmounted)||se)&&Ke(()=>{ge&&et(ge,h,d),se&&ft(d,null,h,"unmounted")},v)},nn=d=>{const{type:h,el:v,anchor:P,transition:w}=d;if(h===be){rn(v,P);return}if(h===$n){S(d);return}const x=()=>{o(v),w&&!w.persisted&&w.afterLeave&&w.afterLeave()};if(d.shapeFlag&1&&w&&!w.persisted){const{leave:N,delayLeave:I}=w,M=()=>N(v,x);I?I(d.el,x,M):M()}else x()},rn=(d,h)=>{let v;for(;d!==h;)v=p(d),o(d),d=v;o(h)},ir=(d,h,v)=>{const{bum:P,scope:w,update:x,subTree:N,um:I,m:M,a:E}=d;Os(M),Os(E),P&&Xr(P),w.stop(),x&&(x.active=!1,Ue(N,d,h,v)),I&&Ke(I,h),Ke(()=>{d.isUnmounted=!0},h),h&&h.pendingBranch&&!h.isUnmounted&&d.asyncDep&&!d.asyncResolved&&d.suspenseId===h.pendingId&&(h.deps--,h.deps===0&&h.resolve())},Xe=(d,h,v,P=!1,w=!1,x=0)=>{for(let N=x;N{if(d.shapeFlag&6)return C(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const h=p(d.anchor||d.el),v=h&&h[Uc];return v?p(v):h};let F=!1;const H=(d,h,v)=>{d==null?h._vnode&&Ue(h._vnode,null,null,!0):y(h._vnode||null,d,h,null,null,null,v),F||(F=!0,Ps(),Pr(),F=!1),h._vnode=d},G={p:y,um:Ue,m:ct,r:nn,mt:ve,mc:Z,pc:Q,pbc:L,n:C,o:e};let pe,Ce;return t&&([pe,Ce]=t(G)),{render:H,hydrate:pe,createApp:Nc(H,pe)}}function ro({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 Bt({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function bl(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function yl(e,t,n=!1){const r=e.children,o=t.children;if(X(r)&&X(o))for(let s=0;s>1,e[n[l]]0&&(t[r]=n[s-1]),n[s]=r)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function wl(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:wl(t)}function Os(e){if(e)for(let t=0;tWe(Xc);function eu(e,t){return Jo(e,null,t)}const gr={};function Ne(e,t,n){return Jo(e,t,n)}function Jo(e,t,{immediate:n,deep:r,flush:o,once:s,onTrack:i,onTrigger:l}=Pe){if(t&&s){const O=t;t=(...K)=>{O(...K),V()}}const a=Ie,c=O=>r===!0?O:Rt(O,r===!1?1:void 0);let f,u=!1,p=!1;if(He(e)?(f=()=>e.value,u=mn(e)):fn(e)?(f=()=>c(e),u=!0):X(e)?(p=!0,u=e.some(O=>fn(O)||mn(O)),f=()=>e.map(O=>{if(He(O))return O.value;if(fn(O))return c(O);if(ne(O))return Ot(O,a,2)})):ne(e)?t?f=()=>Ot(e,a,2):f=()=>(g&&g(),rt(e,a,3,[_])):f=nt,t&&r){const O=f;f=()=>Rt(O())}let g,_=O=>{g=m.onStop=()=>{Ot(O,a,4),g=m.onStop=void 0}},y;if(nr)if(_=nt,t?n&&rt(t,a,3,[f(),p?[]:void 0,_]):f(),o==="sync"){const O=Zc();y=O.__watcherHandles||(O.__watcherHandles=[])}else return nt;let k=p?new Array(e.length).fill(gr):gr;const A=()=>{if(!(!m.active||!m.dirty))if(t){const O=m.run();(r||u||(p?O.some((K,Z)=>It(K,k[Z])):It(O,k)))&&(g&&g(),rt(t,a,3,[O,k===gr?void 0:p&&k[0]===gr?[]:k,_]),k=O)}else m.run()};A.allowRecurse=!!t;let b;o==="sync"?b=A:o==="post"?b=()=>Ke(A,a&&a.suspense):(A.pre=!0,a&&(A.id=a.uid),b=()=>Hr(A));const m=new $o(f,nt,b),S=Ii(),V=()=>{m.stop(),S&&Io(S.effects,m)};return t?n?A():k=m.run():o==="post"?Ke(m.run.bind(m),a&&a.suspense):m.run(),y&&y.push(V),V}function tu(e,t,n){const r=this.proxy,o=Te(e)?e.includes(".")?Sl(r,e):()=>r[e]:e.bind(r,r);let s;ne(t)?s=t:(s=t.handler,n=t);const i=tr(this),l=Jo(o,s.bind(r),n);return i(),l}function Sl(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o{Rt(r,t,n)});else if(xi(e)){for(const r in e)Rt(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Rt(e[r],t,n)}return e}const nu=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ye(t)}Modifiers`]||e[`${Ht(t)}Modifiers`];function ru(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||Pe;let o=n;const s=t.startsWith("update:"),i=s&&nu(r,t.slice(7));i&&(i.trim&&(o=n.map(f=>Te(f)?f.trim():f)),i.number&&(o=n.map(ya)));let l,a=r[l=Yr(t)]||r[l=Yr(Ye(t))];!a&&s&&(a=r[l=Yr(Ht(t))]),a&&rt(a,e,6,o);const c=r[l+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,rt(c,e,6,o)}}function Cl(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const s=e.emits;let i={},l=!1;if(!ne(e)){const a=c=>{const f=Cl(c,t,!0);f&&(l=!0,$e(i,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!s&&!l?(ye(e)&&r.set(e,null),null):(X(s)?s.forEach(a=>i[a]=null):$e(i,s),ye(e)&&r.set(e,i),i)}function Br(e,t){return!e||!Jn(t)?!1:(t=t.slice(2).replace(/Once$/,""),ce(e,t[0].toLowerCase()+t.slice(1))||ce(e,Ht(t))||ce(e,t))}function oo(e){const{type:t,vnode:n,proxy:r,withProxy:o,propsOptions:[s],slots:i,attrs:l,emit:a,render:c,renderCache:f,props:u,data:p,setupState:g,ctx:_,inheritAttrs:y}=e,k=kr(e);let A,b;try{if(n.shapeFlag&4){const S=o||r,V=S;A=tt(c.call(V,S,f,u,g,p,_)),b=l}else{const S=t;A=tt(S.length>1?S(u,{attrs:l,slots:i,emit:a}):S(u,null)),b=t.props?l:ou(l)}}catch(S){Nn.length=0,Zn(S,e,1),A=te(Fe)}let m=A;if(b&&y!==!1){const S=Object.keys(b),{shapeFlag:V}=m;S.length&&V&7&&(s&&S.some(Oo)&&(b=su(b,s)),m=Mt(m,b,!1,!0))}return n.dirs&&(m=Mt(m,null,!1,!0),m.dirs=m.dirs?m.dirs.concat(n.dirs):n.dirs),n.transition&&(m.transition=n.transition),A=m,kr(k),A}const ou=e=>{let t;for(const n in e)(n==="class"||n==="style"||Jn(n))&&((t||(t={}))[n]=e[n]);return t},su=(e,t)=>{const n={};for(const r in e)(!Oo(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function iu(e,t,n){const{props:r,children:o,component:s}=e,{props:i,children:l,patchFlag:a}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return r?Is(r,i,c):!!i;if(a&8){const f=t.dynamicProps;for(let u=0;ue.__isSuspense;function Pl(e,t){t&&t.pendingBranch?X(e)?t.effects.push(...e):t.effects.push(e):cc(e)}const be=Symbol.for("v-fgt"),Zt=Symbol.for("v-txt"),Fe=Symbol.for("v-cmt"),$n=Symbol.for("v-stc"),Nn=[];let Qe=null;function $(e=!1){Nn.push(Qe=e?null:[])}function cu(){Nn.pop(),Qe=Nn[Nn.length-1]||null}let Wn=1;function Ms(e){Wn+=e,e<0&&Qe&&(Qe.hasOnce=!0)}function kl(e){return e.dynamicChildren=Wn>0?Qe||an:null,cu(),Wn>0&&Qe&&Qe.push(e),e}function Y(e,t,n,r,o,s){return kl(W(e,t,n,r,o,s,!0))}function Ee(e,t,n,r,o){return kl(te(e,t,n,r,o,!0))}function Tr(e){return e?e.__v_isVNode===!0:!1}function qt(e,t){return e.type===t.type&&e.key===t.key}const Ll=({key:e})=>e??null,yr=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Te(e)||He(e)||ne(e)?{i:Me,r:e,k:t,f:!!n}:e:null);function W(e,t=null,n=null,r=0,o=null,s=e===be?0:1,i=!1,l=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Ll(t),ref:t&&yr(t),scopeId:Vr,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:s,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Me};return l?(Qo(a,n),s&128&&e.normalize(a)):n&&(a.shapeFlag|=Te(n)?8:16),Wn>0&&!i&&Qe&&(a.patchFlag>0||s&6)&&a.patchFlag!==32&&Qe.push(a),a}const te=uu;function uu(e,t=null,n=null,r=0,o=null,s=!1){if((!e||e===xc)&&(e=Fe),Tr(e)){const l=Mt(e,t,!0);return n&&Qo(l,n),Wn>0&&!s&&Qe&&(l.shapeFlag&6?Qe[Qe.indexOf(e)]=l:Qe.push(l)),l.patchFlag=-2,l}if(Su(e)&&(e=e.__vccOpts),t){t=fu(t);let{class:l,style:a}=t;l&&!Te(l)&&(t.class=Be(l)),ye(a)&&(qi(a)&&!X(a)&&(a=$e({},a)),t.style=Yn(a))}const i=Te(e)?1:au(e)?128:Kc(e)?64:ye(e)?4:ne(e)?2:0;return W(e,t,n,r,o,i,s,!0)}function fu(e){return e?qi(e)||dl(e)?$e({},e):e:null}function Mt(e,t,n=!1,r=!1){const{props:o,ref:s,patchFlag:i,children:l,transition:a}=e,c=t?hu(o||{},t):o,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&Ll(c),ref:t&&t.ref?n&&s?X(s)?s.concat(yr(t)):[s,yr(t)]:yr(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==be?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Mt(e.ssContent),ssFallback:e.ssFallback&&Mt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&r&&Er(f,a.clone(f)),f}function $t(e=" ",t=0){return te(Zt,null,e,t)}function du(e,t){const n=te($n,null,e);return n.staticCount=t,n}function Ae(e="",t=!1){return t?($(),Ee(Fe,null,e)):te(Fe,null,e)}function tt(e){return e==null||typeof e=="boolean"?te(Fe):X(e)?te(be,null,e.slice()):typeof e=="object"?At(e):te(Zt,null,String(e))}function At(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Mt(e)}function Qo(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(X(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),Qo(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!dl(t)?t._ctx=Me:o===3&&Me&&(Me.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else ne(t)?(t={default:t,_ctx:Me},n=32):(t=String(t),r&64?(n=16,t=[$t(t)]):n=8);e.children=t,e.shapeFlag|=n}function hu(...e){const t={};for(let n=0;nIe||Me;let Rr,ko;{const e=Ti(),t=(n,r)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(r),s=>{o.length>1?o.forEach(i=>i(s)):o[0](s)}};Rr=t("__VUE_INSTANCE_SETTERS__",n=>Ie=n),ko=t("__VUE_SSR_SETTERS__",n=>nr=n)}const tr=e=>{const t=Ie;return Rr(e),e.scope.on(),()=>{e.scope.off(),Rr(t)}},$s=()=>{Ie&&Ie.scope.off(),Rr(null)};function El(e){return e.vnode.shapeFlag&4}let nr=!1;function vu(e,t=!1,n=!1){t&&ko(t);const{props:r,children:o}=e.vnode,s=El(e);Hc(e,r,s,t),Bc(e,o,n);const i=s?_u(e,t):void 0;return t&&ko(!1),i}function _u(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Tc);const{setup:r}=n;if(r){const o=e.setupContext=r.length>1?yu(e):null,s=tr(e);Vt();const i=Ot(r,e,0,[e.props,o]);if(jt(),s(),Li(i)){if(i.then($s,$s),t)return i.then(l=>{Ns(e,l,t)}).catch(l=>{Zn(l,e,0)});e.asyncDep=i}else Ns(e,i,t)}else xl(e,t)}function Ns(e,t,n){ne(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ye(t)&&(e.setupState=Qi(t)),xl(e,n)}let Hs;function xl(e,t,n){const r=e.type;if(!e.render){if(!t&&Hs&&!r.render){const o=r.template||qo(e).template;if(o){const{isCustomElement:s,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:a}=r,c=$e($e({isCustomElement:s,delimiters:l},i),a);r.render=Hs(o,c)}}e.render=r.render||nt}{const o=tr(e);Vt();try{Rc(e)}finally{jt(),o()}}}const bu={get(e,t){return Ge(e,"get",""),e[t]}};function yu(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,bu),slots:e.slots,emit:e.emit,expose:t}}function Ur(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Qi(Ya(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in In)return In[n](e)},has(t,n){return n in t||n in In}})):e.proxy}function wu(e,t=!0){return ne(e)?e.displayName||e.name:e.name||t&&e.__name}function Su(e){return ne(e)&&"__vccOpts"in e}const T=(e,t)=>Xa(e,t,nr);function ke(e,t,n){const r=arguments.length;return r===2?ye(t)&&!X(t)?Tr(t)?te(e,null,[t]):te(e,t):te(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Tr(n)&&(n=[n]),te(e,t,n))}const Cu="3.4.36";/** +* @vue/runtime-dom v3.4.36 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const Pu="http://www.w3.org/2000/svg",ku="http://www.w3.org/1998/Math/MathML",vt=typeof document<"u"?document:null,Vs=vt&&vt.createElement("template"),Lu={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t==="svg"?vt.createElementNS(Pu,e):t==="mathml"?vt.createElementNS(ku,e):n?vt.createElement(e,{is:n}):vt.createElement(e);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>vt.createTextNode(e),createComment:e=>vt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>vt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const i=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{Vs.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const l=Vs.content;if(r==="svg"||r==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},kt="transition",kn="animation",Un=Symbol("_vtc"),rr=(e,{slots:t})=>ke(gc,Eu(e),t);rr.displayName="Transition";const Al={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};rr.props=$e({},nl,Al);const Wt=(e,t=[])=>{X(e)?e.forEach(n=>n(...t)):e&&e(...t)},js=e=>e?X(e)?e.some(t=>t.length>1):e.length>1:!1;function Eu(e){const t={};for(const R in e)R in Al||(t[R]=e[R]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:a=s,appearActiveClass:c=i,appearToClass:f=l,leaveFromClass:u=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:g=`${n}-leave-to`}=e,_=xu(o),y=_&&_[0],k=_&&_[1],{onBeforeEnter:A,onEnter:b,onEnterCancelled:m,onLeave:S,onLeaveCancelled:V,onBeforeAppear:O=A,onAppear:K=b,onAppearCancelled:Z=m}=t,j=(R,ee,ve)=>{Ut(R,ee?f:l),Ut(R,ee?c:i),ve&&ve()},L=(R,ee)=>{R._isLeaving=!1,Ut(R,u),Ut(R,g),Ut(R,p),ee&&ee()},U=R=>(ee,ve)=>{const _e=R?K:b,z=()=>j(ee,R,ve);Wt(_e,[ee,z]),Fs(()=>{Ut(ee,R?a:s),Lt(ee,R?f:l),js(_e)||Bs(ee,r,y,z)})};return $e(t,{onBeforeEnter(R){Wt(A,[R]),Lt(R,s),Lt(R,i)},onBeforeAppear(R){Wt(O,[R]),Lt(R,a),Lt(R,c)},onEnter:U(!1),onAppear:U(!0),onLeave(R,ee){R._isLeaving=!0;const ve=()=>L(R,ee);Lt(R,u),Lt(R,p),Ru(),Fs(()=>{R._isLeaving&&(Ut(R,u),Lt(R,g),js(S)||Bs(R,r,k,ve))}),Wt(S,[R,ve])},onEnterCancelled(R){j(R,!1),Wt(m,[R])},onAppearCancelled(R){j(R,!0),Wt(Z,[R])},onLeaveCancelled(R){L(R),Wt(V,[R])}})}function xu(e){if(e==null)return null;if(ye(e))return[so(e.enter),so(e.leave)];{const t=so(e);return[t,t]}}function so(e){return wa(e)}function Lt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Un]||(e[Un]=new Set)).add(t)}function Ut(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[Un];n&&(n.delete(t),n.size||(e[Un]=void 0))}function Fs(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Au=0;function Bs(e,t,n,r){const o=e._endId=++Au,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:i,timeout:l,propCount:a}=Tu(e,t);if(!i)return r();const c=i+"end";let f=0;const u=()=>{e.removeEventListener(c,p),s()},p=g=>{g.target===e&&++f>=a&&u()};setTimeout(()=>{f(n[_]||"").split(", "),o=r(`${kt}Delay`),s=r(`${kt}Duration`),i=Ws(o,s),l=r(`${kn}Delay`),a=r(`${kn}Duration`),c=Ws(l,a);let f=null,u=0,p=0;t===kt?i>0&&(f=kt,u=i,p=s.length):t===kn?c>0&&(f=kn,u=c,p=a.length):(u=Math.max(i,c),f=u>0?i>c?kt:kn:null,p=f?f===kt?s.length:a.length:0);const g=f===kt&&/\b(transform|all)(,|$)/.test(r(`${kt}Property`).toString());return{type:f,timeout:u,propCount:p,hasTransform:g}}function Ws(e,t){for(;e.lengthUs(n)+Us(e[r])))}function Us(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Ru(){return document.body.offsetHeight}function Du(e,t,n){const r=e[Un];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Dr=Symbol("_vod"),Tl=Symbol("_vsh"),Or={beforeMount(e,{value:t},{transition:n}){e[Dr]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Ln(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),Ln(e,!0),r.enter(e)):r.leave(e,()=>{Ln(e,!1)}):Ln(e,t))},beforeUnmount(e,{value:t}){Ln(e,t)}};function Ln(e,t){e.style.display=t?e[Dr]:"none",e[Tl]=!t}const Ou=Symbol(""),Iu=/(^|;)\s*display\s*:/;function Mu(e,t,n){const r=e.style,o=Te(n);let s=!1;if(n&&!o){if(t)if(Te(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&wr(r,l,"")}else for(const i in t)n[i]==null&&wr(r,i,"");for(const i in n)i==="display"&&(s=!0),wr(r,i,n[i])}else if(o){if(t!==n){const i=r[Ou];i&&(n+=";"+i),r.cssText=n,s=Iu.test(n)}}else t&&e.removeAttribute("style");Dr in e&&(e[Dr]=s?r.display:"",e[Tl]&&(r.display="none"))}const Ks=/\s*!important$/;function wr(e,t,n){if(X(n))n.forEach(r=>wr(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=$u(e,t);Ks.test(n)?e.setProperty(Ht(r),n.replace(Ks,""),"important"):e[r]=n}}const Gs=["Webkit","Moz","ms"],io={};function $u(e,t){const n=io[t];if(n)return n;let r=Ye(t);if(r!=="filter"&&r in e)return io[t]=r;r=Qn(r);for(let o=0;olo||(Bu.then(()=>lo=0),lo=Date.now());function Uu(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;rt(Ku(r,n.value),t,5,[r])};return n.value=e,n.attached=Wu(),n}function Ku(e,t){if(X(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const Ys=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Gu=(e,t,n,r,o,s)=>{const i=o==="svg";t==="class"?Du(e,r,i):t==="style"?Mu(e,n,r):Jn(t)?Oo(t)||ju(e,t,n,r,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):qu(e,t,r,i))?(Nu(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&zs(e,t,r,i,s,t!=="value")):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),zs(e,t,r,i))};function qu(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ys(t)&&ne(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return Ys(t)&&Te(n)?!1:t in e}const zu={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Ju=(e,t)=>{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=o=>{if(!("key"in o))return;const s=Ht(o.key);if(t.some(i=>i===s||zu[i]===s))return e(o)})},Qu=$e({patchProp:Gu},Lu);let ao,Xs=!1;function Yu(){return ao=Xs?ao:Jc(Qu),Xs=!0,ao}const Xu=(...e)=>{const t=Yu().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=ef(r);if(o)return n(o,!0,Zu(o))},t};function Zu(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ef(e){return Te(e)?document.querySelector(e):e}var or=e=>/^[a-z][a-z0-9+.-]*:/.test(e)||e.startsWith("//"),tf=/.md((\?|#).*)?$/,nf=(e,t="/")=>or(e)||e.startsWith("/")&&!e.startsWith(t)&&!tf.test(e),Kr=e=>/^(https?:)?\/\//.test(e),Zs=e=>{if(!e||e.endsWith("/"))return e;let t=e.replace(/(^|\/)README.md$/i,"$1index.html");return t.endsWith(".md")?t=t.substring(0,t.length-3)+".html":t.endsWith(".html")||(t=t+".html"),t.endsWith("/index.html")&&(t=t.substring(0,t.length-10)),t},rf="http://.",of=(e,t)=>{if(!e.startsWith("/")&&t){const n=t.slice(0,t.lastIndexOf("/"));return Zs(new URL(`${n}/${e}`,rf).pathname)}return Zs(e)},sf=(e,t)=>{const n=Object.keys(e).sort((r,o)=>{const s=o.split("/").length-r.split("/").length;return s!==0?s:o.length-r.length});for(const r of n)if(t.startsWith(r))return r;return"/"},lf=/(#|\?)/,Rl=e=>{const[t,...n]=e.split(lf);return{pathname:t,hashAndQueries:n.join("")}},af=["link","meta","script","style","noscript","template"],cf=["title","base"],uf=([e,t,n])=>cf.includes(e)?e:af.includes(e)?e==="meta"&&t.name?`${e}.${t.name}`:e==="template"&&t.id?`${e}.${t.id}`:JSON.stringify([e,Object.entries(t).map(([r,o])=>typeof o=="boolean"?o?[r,""]:null:[r,o]).filter(r=>r!=null).sort(([r],[o])=>r.localeCompare(o)),n]):null,ff=e=>{const t=new Set,n=[];return e.forEach(r=>{const o=uf(r);o&&!t.has(o)&&(t.add(o),n.push(r))}),n},df=e=>e[e.length-1]==="/"||e.endsWith(".html")?e:`${e}/`,Dl=e=>e[e.length-1]==="/"?e.slice(0,-1):e,Ol=e=>e[0]==="/"?e.slice(1):e,Yo=e=>Object.prototype.toString.call(e)==="[object Object]",st=e=>typeof e=="string";const hf="modulepreload",pf=function(e){return"/"+e},ei={},En=function(t,n,r){let o=Promise.resolve();return n&&n.length>0&&(document.getElementsByTagName("link"),o=Promise.all(n.map(s=>{if(s=pf(s),s in ei)return;ei[s]=!0;const i=s.endsWith(".css"),l=i?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${s}"]${l}`))return;const a=document.createElement("link");if(a.rel=i?"stylesheet":hf,i||(a.as="script",a.crossOrigin=""),a.href=s,document.head.appendChild(a),i)return new Promise((c,f)=>{a.addEventListener("load",c),a.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${s}`)))})}))),o.then(()=>t()).catch(s=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s})},gf=JSON.parse("{}"),mf=Object.fromEntries([["/",{loader:()=>En(()=>import("./index.html-DdOSz3i9.js"),__vite__mapDeps([])),meta:{title:"Резюме"}}],["/works.html",{loader:()=>En(()=>import("./works.html-B-M3ZurS.js"),__vite__mapDeps([])),meta:{title:"Работы"}}],["/eng/",{loader:()=>En(()=>import("./index.html-DhiGfEXH.js"),__vite__mapDeps([])),meta:{title:"Resume"}}],["/eng/works.html",{loader:()=>En(()=>import("./works.html-B4GC5YDW.js"),__vite__mapDeps([])),meta:{title:"Works"}}],["/404.html",{loader:()=>En(()=>import("./404.html-DhSV0iSI.js"),__vite__mapDeps([])),meta:{title:""}}]]);/*! + * vue-router v4.4.2 + * (c) 2024 Eduardo San Martin Morote + * @license MIT + */const ln=typeof document<"u";function vf(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const me=Object.assign;function co(e,t){const n={};for(const r in t){const o=t[r];n[r]=it(o)?o.map(e):e(o)}return n}const Hn=()=>{},it=Array.isArray,Il=/#/g,_f=/&/g,bf=/\//g,yf=/=/g,wf=/\?/g,Ml=/\+/g,Sf=/%5B/g,Cf=/%5D/g,$l=/%5E/g,Pf=/%60/g,Nl=/%7B/g,kf=/%7C/g,Hl=/%7D/g,Lf=/%20/g;function Xo(e){return encodeURI(""+e).replace(kf,"|").replace(Sf,"[").replace(Cf,"]")}function Ef(e){return Xo(e).replace(Nl,"{").replace(Hl,"}").replace($l,"^")}function Lo(e){return Xo(e).replace(Ml,"%2B").replace(Lf,"+").replace(Il,"%23").replace(_f,"%26").replace(Pf,"`").replace(Nl,"{").replace(Hl,"}").replace($l,"^")}function xf(e){return Lo(e).replace(yf,"%3D")}function Af(e){return Xo(e).replace(Il,"%23").replace(wf,"%3F")}function Tf(e){return e==null?"":Af(e).replace(bf,"%2F")}function Kn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const Rf=/\/$/,Df=e=>e.replace(Rf,"");function uo(e,t,n="/"){let r,o={},s="",i="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(r=t.slice(0,a),s=t.slice(a+1,l>-1?l:t.length),o=e(s)),l>-1&&(r=r||t.slice(0,l),i=t.slice(l,t.length)),r=$f(r??t,n),{fullPath:r+(s&&"?")+s+i,path:r,query:o,hash:Kn(i)}}function Of(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function ti(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function If(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&vn(t.matched[r],n.matched[o])&&Vl(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function vn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Vl(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!Mf(e[n],t[n]))return!1;return!0}function Mf(e,t){return it(e)?ni(e,t):it(t)?ni(t,e):e===t}function ni(e,t){return it(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function $f(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];(o===".."||o===".")&&r.push("");let s=n.length-1,i,l;for(i=0;i1&&s--;else break;return n.slice(0,s).join("/")+"/"+r.slice(i).join("/")}const mt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Gn;(function(e){e.pop="pop",e.push="push"})(Gn||(Gn={}));var Vn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Vn||(Vn={}));function Nf(e){if(!e)if(ln){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),Df(e)}const Hf=/^[^#]+#/;function Vf(e,t){return e.replace(Hf,"#")+t}function jf(e,t){const 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)}}const Gr=()=>({left:window.scrollX,top:window.scrollY});function Ff(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=jf(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function ri(e,t){return(history.state?history.state.position-t:-1)+e}const Eo=new Map;function Bf(e,t){Eo.set(e,t)}function Wf(e){const t=Eo.get(e);return Eo.delete(e),t}let Uf=()=>location.protocol+"//"+location.host;function jl(e,t){const{pathname:n,search:r,hash:o}=t,s=e.indexOf("#");if(s>-1){let l=o.includes(e.slice(s))?e.slice(s).length:1,a=o.slice(l);return a[0]!=="/"&&(a="/"+a),ti(a,"")}return ti(n,e)+r+o}function Kf(e,t,n,r){let o=[],s=[],i=null;const l=({state:p})=>{const g=jl(e,location),_=n.value,y=t.value;let k=0;if(p){if(n.value=g,t.value=p,i&&i===_){i=null;return}k=y?p.position-y.position:0}else r(g);o.forEach(A=>{A(n.value,_,{delta:k,type:Gn.pop,direction:k?k>0?Vn.forward:Vn.back:Vn.unknown})})};function a(){i=n.value}function c(p){o.push(p);const g=()=>{const _=o.indexOf(p);_>-1&&o.splice(_,1)};return s.push(g),g}function f(){const{history:p}=window;p.state&&p.replaceState(me({},p.state,{scroll:Gr()}),"")}function u(){for(const p of s)p();s=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",f)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",f,{passive:!0}),{pauseListeners:a,listen:c,destroy:u}}function oi(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?Gr():null}}function Gf(e){const{history:t,location:n}=window,r={value:jl(e,n)},o={value:t.state};o.value||s(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function s(a,c,f){const u=e.indexOf("#"),p=u>-1?(n.host&&document.querySelector("base")?e:e.slice(u))+a:Uf()+e+a;try{t[f?"replaceState":"pushState"](c,"",p),o.value=c}catch(g){console.error(g),n[f?"replace":"assign"](p)}}function i(a,c){const f=me({},t.state,oi(o.value.back,a,o.value.forward,!0),c,{position:o.value.position});s(a,f,!0),r.value=a}function l(a,c){const f=me({},o.value,t.state,{forward:a,scroll:Gr()});s(f.current,f,!0);const u=me({},oi(r.value,a,null),{position:f.position+1},c);s(a,u,!1),r.value=a}return{location:r,state:o,push:l,replace:i}}function qf(e){e=Nf(e);const t=Gf(e),n=Kf(e,t.state,t.location,t.replace);function r(s,i=!0){i||n.pauseListeners(),history.go(s)}const o=me({location:"",base:e,go:r,createHref:Vf.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function zf(e){return typeof e=="string"||e&&typeof e=="object"}function Fl(e){return typeof e=="string"||typeof e=="symbol"}const Bl=Symbol("");var si;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(si||(si={}));function _n(e,t){return me(new Error,{type:e,[Bl]:!0},t)}function gt(e,t){return e instanceof Error&&Bl in e&&(t==null||!!(e.type&t))}const ii="[^/]+?",Jf={sensitive:!1,strict:!1,start:!0,end:!0},Qf=/[.+*?^${}()[\]/\\]/g;function Yf(e,t){const n=me({},Jf,t),r=[];let o=n.start?"^":"";const s=[];for(const c of e){const f=c.length?[]:[90];n.strict&&!c.length&&(o+="/");for(let u=0;ut.length?t.length===1&&t[0]===80?1:-1:0}function Wl(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const Zf={type:0,value:""},ed=/[a-zA-Z0-9_]/;function td(e){if(!e)return[[]];if(e==="/")return[[Zf]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(g){throw new Error(`ERR (${n})/"${c}": ${g}`)}let n=0,r=n;const o=[];let s;function i(){s&&o.push(s),s=[]}let l=0,a,c="",f="";function u(){c&&(n===0?s.push({type:0,value:c}):n===1||n===2||n===3?(s.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:c,regexp:f,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function p(){c+=a}for(;l{i(m)}:Hn}function i(u){if(Fl(u)){const p=r.get(u);p&&(r.delete(u),n.splice(n.indexOf(p),1),p.children.forEach(i),p.alias.forEach(i))}else{const p=n.indexOf(u);p>-1&&(n.splice(p,1),u.record.name&&r.delete(u.record.name),u.children.forEach(i),u.alias.forEach(i))}}function l(){return n}function a(u){const p=ld(u,n);n.splice(p,0,u),u.record.name&&!ci(u)&&r.set(u.record.name,u)}function c(u,p){let g,_={},y,k;if("name"in u&&u.name){if(g=r.get(u.name),!g)throw _n(1,{location:u});k=g.record.name,_=me(ai(p.params,g.keys.filter(m=>!m.optional).concat(g.parent?g.parent.keys.filter(m=>m.optional):[]).map(m=>m.name)),u.params&&ai(u.params,g.keys.map(m=>m.name))),y=g.stringify(_)}else if(u.path!=null)y=u.path,g=n.find(m=>m.re.test(y)),g&&(_=g.parse(y),k=g.record.name);else{if(g=p.name?r.get(p.name):n.find(m=>m.re.test(p.path)),!g)throw _n(1,{location:u,currentLocation:p});k=g.record.name,_=me({},p.params,u.params),y=g.stringify(_)}const A=[];let b=g;for(;b;)A.unshift(b.record),b=b.parent;return{name:k,path:y,params:_,matched:A,meta:id(A)}}e.forEach(u=>s(u));function f(){n.length=0,r.clear()}return{addRoute:s,resolve:c,removeRoute:i,clearRoutes:f,getRoutes:l,getRecordMatcher:o}}function ai(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function od(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:sd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function sd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function ci(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function id(e){return e.reduce((t,n)=>me(t,n.meta),{})}function ui(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function ld(e,t){let n=0,r=t.length;for(;n!==r;){const s=n+r>>1;Wl(e,t[s])<0?r=s:n=s+1}const o=ad(e);return o&&(r=t.lastIndexOf(o,r-1)),r}function ad(e){let t=e;for(;t=t.parent;)if(Ul(t)&&Wl(e,t)===0)return t}function Ul({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function cd(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;os&&Lo(s)):[r&&Lo(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function ud(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=it(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const fd=Symbol(""),di=Symbol(""),qr=Symbol(""),Zo=Symbol(""),xo=Symbol("");function xn(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Tt(e,t,n,r,o,s=i=>i()){const i=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((l,a)=>{const c=p=>{p===!1?a(_n(4,{from:n,to:t})):p instanceof Error?a(p):zf(p)?a(_n(2,{from:t,to:p})):(i&&r.enterCallbacks[o]===i&&typeof p=="function"&&i.push(p),l())},f=s(()=>e.call(r&&r.instances[o],t,n,c));let u=Promise.resolve(f);e.length<3&&(u=u.then(c)),u.catch(p=>a(p))})}function fo(e,t,n,r,o=s=>s()){const s=[];for(const i of e)for(const l in i.components){let a=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(dd(a)){const f=(a.__vccOpts||a)[t];f&&s.push(Tt(f,n,r,i,l,o))}else{let c=a();s.push(()=>c.then(f=>{if(!f)return Promise.reject(new Error(`Couldn't resolve component "${l}" at "${i.path}"`));const u=vf(f)?f.default:f;i.components[l]=u;const g=(u.__vccOpts||u)[t];return g&&Tt(g,n,r,i,l,o)()}))}}return s}function dd(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function hi(e){const t=We(qr),n=We(Zo),r=T(()=>{const a=Yt(e.to);return t.resolve(a)}),o=T(()=>{const{matched:a}=r.value,{length:c}=a,f=a[c-1],u=n.matched;if(!f||!u.length)return-1;const p=u.findIndex(vn.bind(null,f));if(p>-1)return p;const g=pi(a[c-2]);return c>1&&pi(f)===g&&u[u.length-1].path!==g?u.findIndex(vn.bind(null,a[c-2])):p}),s=T(()=>o.value>-1&&md(n.params,r.value.params)),i=T(()=>o.value>-1&&o.value===n.matched.length-1&&Vl(n.params,r.value.params));function l(a={}){return gd(a)?t[Yt(e.replace)?"replace":"push"](Yt(e.to)).catch(Hn):Promise.resolve()}return{route:r,href:T(()=>r.value.href),isActive:s,isExactActive:i,navigate:l}}const hd=he({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"}},useLink:hi,setup(e,{slots:t}){const n=Xn(hi(e)),{options:r}=We(qr),o=T(()=>({[gi(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[gi(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const s=t.default&&t.default(n);return e.custom?s:ke("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},s)}}}),pd=hd;function gd(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){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function md(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!it(o)||o.length!==r.length||r.some((s,i)=>s!==o[i]))return!1}return!0}function pi(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const gi=(e,t,n)=>e??t??n,vd=he({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=We(xo),o=T(()=>e.route||r.value),s=We(di,0),i=T(()=>{let c=Yt(s);const{matched:f}=o.value;let u;for(;(u=f[c])&&!u.components;)c++;return c}),l=T(()=>o.value.matched[i.value]);Xt(di,T(()=>i.value+1)),Xt(fd,l),Xt(xo,o);const a=ue();return Ne(()=>[a.value,l.value,e.name],([c,f,u],[p,g,_])=>{f&&(f.instances[u]=c,g&&g!==f&&c&&c===p&&(f.leaveGuards.size||(f.leaveGuards=g.leaveGuards),f.updateGuards.size||(f.updateGuards=g.updateGuards))),c&&f&&(!g||!vn(f,g)||!p)&&(f.enterCallbacks[u]||[]).forEach(y=>y(c))},{flush:"post"}),()=>{const c=o.value,f=e.name,u=l.value,p=u&&u.components[f];if(!p)return mi(n.default,{Component:p,route:c});const g=u.props[f],_=g?g===!0?c.params:typeof g=="function"?g(c):g:null,k=ke(p,me({},_,t,{onVnodeUnmounted:A=>{A.component.isUnmounted&&(u.instances[f]=null)},ref:a}));return mi(n.default,{Component:k,route:c})||k}}});function mi(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const _d=vd;function bd(e){const t=rd(e.routes,e),n=e.parseQuery||cd,r=e.stringifyQuery||fi,o=e.history,s=xn(),i=xn(),l=xn(),a=yn(mt);let c=mt;ln&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const f=co.bind(null,C=>""+C),u=co.bind(null,Tf),p=co.bind(null,Kn);function g(C,F){let H,G;return Fl(C)?(H=t.getRecordMatcher(C),G=F):G=C,t.addRoute(G,H)}function _(C){const F=t.getRecordMatcher(C);F&&t.removeRoute(F)}function y(){return t.getRoutes().map(C=>C.record)}function k(C){return!!t.getRecordMatcher(C)}function A(C,F){if(F=me({},F||a.value),typeof C=="string"){const h=uo(n,C,F.path),v=t.resolve({path:h.path},F),P=o.createHref(h.fullPath);return me(h,v,{params:p(v.params),hash:Kn(h.hash),redirectedFrom:void 0,href:P})}let H;if(C.path!=null)H=me({},C,{path:uo(n,C.path,F.path).path});else{const h=me({},C.params);for(const v in h)h[v]==null&&delete h[v];H=me({},C,{params:u(h)}),F.params=u(F.params)}const G=t.resolve(H,F),pe=C.hash||"";G.params=f(p(G.params));const Ce=Of(r,me({},C,{hash:Ef(pe),path:G.path})),d=o.createHref(Ce);return me({fullPath:Ce,hash:pe,query:r===fi?ud(C.query):C.query||{}},G,{redirectedFrom:void 0,href:d})}function b(C){return typeof C=="string"?uo(n,C,a.value.path):me({},C)}function m(C,F){if(c!==C)return _n(8,{from:F,to:C})}function S(C){return K(C)}function V(C){return S(me(b(C),{replace:!0}))}function O(C){const F=C.matched[C.matched.length-1];if(F&&F.redirect){const{redirect:H}=F;let G=typeof H=="function"?H(C):H;return typeof G=="string"&&(G=G.includes("?")||G.includes("#")?G=b(G):{path:G},G.params={}),me({query:C.query,hash:C.hash,params:G.path!=null?{}:C.params},G)}}function K(C,F){const H=c=A(C),G=a.value,pe=C.state,Ce=C.force,d=C.replace===!0,h=O(H);if(h)return K(me(b(h),{state:typeof h=="object"?me({},pe,h.state):pe,force:Ce,replace:d}),F||H);const v=H;v.redirectedFrom=F;let P;return!Ce&&If(r,G,H)&&(P=_n(16,{to:v,from:G}),ct(G,G,!0,!1)),(P?Promise.resolve(P):L(v,G)).catch(w=>gt(w)?gt(w,2)?w:Ct(w):Q(w,v,G)).then(w=>{if(w){if(gt(w,2))return K(me({replace:d},b(w.to),{state:typeof w.to=="object"?me({},pe,w.to.state):pe,force:Ce}),F||v)}else w=R(v,G,!0,d,pe);return U(v,G,w),w})}function Z(C,F){const H=m(C,F);return H?Promise.reject(H):Promise.resolve()}function j(C){const F=rn.values().next().value;return F&&typeof F.runWithContext=="function"?F.runWithContext(C):C()}function L(C,F){let H;const[G,pe,Ce]=yd(C,F);H=fo(G.reverse(),"beforeRouteLeave",C,F);for(const h of G)h.leaveGuards.forEach(v=>{H.push(Tt(v,C,F))});const d=Z.bind(null,C,F);return H.push(d),Xe(H).then(()=>{H=[];for(const h of s.list())H.push(Tt(h,C,F));return H.push(d),Xe(H)}).then(()=>{H=fo(pe,"beforeRouteUpdate",C,F);for(const h of pe)h.updateGuards.forEach(v=>{H.push(Tt(v,C,F))});return H.push(d),Xe(H)}).then(()=>{H=[];for(const h of Ce)if(h.beforeEnter)if(it(h.beforeEnter))for(const v of h.beforeEnter)H.push(Tt(v,C,F));else H.push(Tt(h.beforeEnter,C,F));return H.push(d),Xe(H)}).then(()=>(C.matched.forEach(h=>h.enterCallbacks={}),H=fo(Ce,"beforeRouteEnter",C,F,j),H.push(d),Xe(H))).then(()=>{H=[];for(const h of i.list())H.push(Tt(h,C,F));return H.push(d),Xe(H)}).catch(h=>gt(h,8)?h:Promise.reject(h))}function U(C,F,H){l.list().forEach(G=>j(()=>G(C,F,H)))}function R(C,F,H,G,pe){const Ce=m(C,F);if(Ce)return Ce;const d=F===mt,h=ln?history.state:{};H&&(G||d?o.replace(C.fullPath,me({scroll:d&&h&&h.scroll},pe)):o.push(C.fullPath,pe)),a.value=C,ct(C,F,H,d),Ct()}let ee;function ve(){ee||(ee=o.listen((C,F,H)=>{if(!ir.listening)return;const G=A(C),pe=O(G);if(pe){K(me(pe,{replace:!0}),G).catch(Hn);return}c=G;const Ce=a.value;ln&&Bf(ri(Ce.fullPath,H.delta),Gr()),L(G,Ce).catch(d=>gt(d,12)?d:gt(d,2)?(K(d.to,G).then(h=>{gt(h,20)&&!H.delta&&H.type===Gn.pop&&o.go(-1,!1)}).catch(Hn),Promise.reject()):(H.delta&&o.go(-H.delta,!1),Q(d,G,Ce))).then(d=>{d=d||R(G,Ce,!1),d&&(H.delta&&!gt(d,8)?o.go(-H.delta,!1):H.type===Gn.pop&>(d,20)&&o.go(-1,!1)),U(G,Ce,d)}).catch(Hn)}))}let _e=xn(),z=xn(),oe;function Q(C,F,H){Ct(C);const G=z.list();return G.length?G.forEach(pe=>pe(C,F,H)):console.error(C),Promise.reject(C)}function De(){return oe&&a.value!==mt?Promise.resolve():new Promise((C,F)=>{_e.add([C,F])})}function Ct(C){return oe||(oe=!C,ve(),_e.list().forEach(([F,H])=>C?H(C):F()),_e.reset()),C}function ct(C,F,H,G){const{scrollBehavior:pe}=e;if(!ln||!pe)return Promise.resolve();const Ce=!H&&Wf(ri(C.fullPath,0))||(G||!H)&&history.state&&history.state.scroll||null;return wn().then(()=>pe(C,F,Ce)).then(d=>d&&Ff(d)).catch(d=>Q(d,C,F))}const Ue=C=>o.go(C);let nn;const rn=new Set,ir={currentRoute:a,listening:!0,addRoute:g,removeRoute:_,clearRoutes:t.clearRoutes,hasRoute:k,getRoutes:y,resolve:A,options:e,push:S,replace:V,go:Ue,back:()=>Ue(-1),forward:()=>Ue(1),beforeEach:s.add,beforeResolve:i.add,afterEach:l.add,onError:z.add,isReady:De,install(C){const F=this;C.component("RouterLink",pd),C.component("RouterView",_d),C.config.globalProperties.$router=F,Object.defineProperty(C.config.globalProperties,"$route",{enumerable:!0,get:()=>Yt(a)}),ln&&!nn&&a.value===mt&&(nn=!0,S(o.location).catch(pe=>{}));const H={};for(const pe in mt)Object.defineProperty(H,pe,{get:()=>a.value[pe],enumerable:!0});C.provide(qr,F),C.provide(Zo,Gi(H)),C.provide(xo,a);const G=C.unmount;rn.add(C),C.unmount=function(){rn.delete(C),rn.size<1&&(c=mt,ee&&ee(),ee=null,a.value=mt,nn=!1,oe=!1),G()}}};function Xe(C){return C.reduce((F,H)=>F.then(()=>j(H)),Promise.resolve())}return ir}function yd(e,t){const n=[],r=[],o=[],s=Math.max(t.matched.length,e.matched.length);for(let i=0;ivn(c,l))?r.push(l):n.push(l));const a=e.matched[i];a&&(t.matched.find(c=>vn(c,a))||o.push(a))}return[n,r,o]}function tn(){return We(qr)}function St(e){return We(Zo)}var es=Symbol(""),pt=()=>{const e=We(es);if(!e)throw new Error("useClientData() is called without provider.");return e},wd=()=>pt().pageComponent,Sn=()=>pt().pageData,at=()=>pt().pageFrontmatter,Sd=()=>pt().pageHead,Cd=()=>pt().pageLang,Pd=()=>pt().pageLayout,sr=()=>pt().routeLocale,kd=()=>pt().routes,Kl=()=>pt().siteData,ts=()=>pt().siteLocaleData,Ld=Symbol(""),Ao=yn(gf),pn=yn(mf),Gl=(e,t)=>{const n=of(e,t);if(pn.value[n])return n;const r=encodeURI(n);if(pn.value[r])return r;const o=Ao.value[n]||Ao.value[r];return o||n},qn=(e,t)=>{const{pathname:n,hashAndQueries:r}=Rl(e),o=Gl(n,t),s=o+r;return pn.value[o]?{...pn.value[o],path:s,notFound:!1}:{...pn.value["/404.html"],path:s,notFound:!0}},Ed=(e,t)=>{const{pathname:n,hashAndQueries:r}=Rl(e);return Gl(n,t)+r},xd=e=>{if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget){const t=e.currentTarget.getAttribute("target");if(t!=null&&t.match(/\b_blank\b/i))return}return e.preventDefault(),!0}},zr=he({name:"RouteLink",props:{to:{type:String,required:!0},active:Boolean,activeClass:{type:String,default:"route-link-active"}},slots:Object,setup(e,{slots:t}){const n=tn(),r=St(),o=T(()=>e.to.startsWith("#")||e.to.startsWith("?")?e.to:`/${Ed(e.to,r.path).substring(1)}`);return()=>{var s;return ke("a",{class:["route-link",{[e.activeClass]:e.active}],href:o.value,onClick:(i={})=>{xd(i)&&n.push(e.to).catch()}},(s=t.default)==null?void 0:s.call(t))}}}),Cn=he({name:"AutoLink",props:{config:{type:Object,required:!0}},slots:Object,setup(e,{slots:t}){const n=sc(e,"config"),r=St(),o=Kl(),s=T(()=>or(n.value.link)),i=T(()=>n.value.target||(s.value?"_blank":void 0)),l=T(()=>i.value==="_blank"),a=T(()=>!s.value&&!l.value),c=T(()=>n.value.rel||(l.value?"noopener noreferrer":null)),f=T(()=>n.value.ariaLabel??n.value.text),u=T(()=>{if(n.value.exact)return!1;const g=Object.keys(o.value.locales);return g.length?g.every(_=>_!==n.value.link):n.value.link!=="/"}),p=T(()=>a.value?n.value.activeMatch?(n.value.activeMatch instanceof RegExp?n.value.activeMatch:new RegExp(n.value.activeMatch,"u")).test(r.path):u.value?r.path.startsWith(n.value.link):r.path===n.value.link:!1);return()=>{const{before:g,after:_,default:y}=t,k=(y==null?void 0:y(n.value))||[g==null?void 0:g(n.value),n.value.text,_==null?void 0:_(n.value)];return a.value?ke(zr,{class:"auto-link",to:n.value.link,active:p.value,"aria-label":f.value},()=>k):ke("a",{class:"auto-link external-link",href:n.value.link,"aria-label":f.value,rel:c.value,target:i.value},k)}}}),ns=he({name:"ClientOnly",setup(e,t){const n=ue(!1);return qe(()=>{n.value=!0}),()=>{var r,o;return n.value?(o=(r=t.slots).default)==null?void 0:o.call(r):null}}}),rs=he({name:"Content",props:{path:{type:String,required:!1,default:""}},setup(e){const t=wd(),n=T(()=>{if(!e.path)return t.value;const r=qn(e.path);return mc(()=>r.loader().then(({comp:o})=>o))});return()=>ke(n.value)}}),Ad="Layout",Td="en-US",Kt=Xn({resolveLayouts:e=>e.reduce((t,n)=>({...t,...n.layouts}),{}),resolvePageHead:(e,t,n)=>{const r=st(t.description)?t.description:n.description,o=[...Array.isArray(t.head)?t.head:[],...n.head,["title",{},e],["meta",{name:"description",content:r}]];return ff(o)},resolvePageHeadTitle:(e,t)=>[e.title,t.title].filter(n=>!!n).join(" | "),resolvePageLang:(e,t)=>e.lang||t.lang||Td,resolvePageLayout:(e,t)=>{const n=st(e.frontmatter.layout)?e.frontmatter.layout:Ad;if(!t[n])throw new Error(`[vuepress] Cannot resolve layout: ${n}`);return t[n]},resolveRouteLocale:(e,t)=>sf(e,decodeURI(t)),resolveSiteLocaleData:({base:e,locales:t,...n},r)=>{var o;return{...n,...t[r],head:[...((o=t[r])==null?void 0:o.head)??[],...n.head??[]]}}}),Ft=(e={})=>e,os=e=>Kr(e)?e:`/${Ol(e)}`;function Jr(e){return Ii()?(Ta(e),!0):!1}function ht(e){return typeof e=="function"?e():Yt(e)}const ss=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Rd=Object.prototype.toString,Dd=e=>Rd.call(e)==="[object Object]",To=()=>{};function ql(e,t){function n(...r){return new Promise((o,s)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(o).catch(s)})}return n}const zl=e=>e();function Od(e,t={}){let n,r,o=To;const s=l=>{clearTimeout(l),o(),o=To};return l=>{const a=ht(e),c=ht(t.maxWait);return n&&s(n),a<=0||c!==void 0&&c<=0?(r&&(s(r),r=null),Promise.resolve(l())):new Promise((f,u)=>{o=t.rejectOnCancel?u:f,c&&!r&&(r=setTimeout(()=>{n&&s(n),r=null,f(l())},c)),n=setTimeout(()=>{r&&s(r),r=null,f(l())},a)})}}function Id(e=zl){const t=ue(!0);function n(){t.value=!1}function r(){t.value=!0}const o=(...s)=>{t.value&&e(...s)};return{isActive:Nr(t),pause:n,resume:r,eventFilter:o}}function Md(e){let t;function n(){return t||(t=e()),t}return n.reset=async()=>{const r=t;t=void 0,r&&await r},n}function $d(e){return Wr()}function Nd(e,t=200,n={}){return ql(Od(t,n),e)}function Hd(e,t,n={}){const{eventFilter:r=zl,...o}=n;return Ne(e,ql(r,t),o)}function Vd(e,t,n={}){const{eventFilter:r,...o}=n,{eventFilter:s,pause:i,resume:l,isActive:a}=Id(r);return{stop:Hd(e,t,{...o,eventFilter:s}),pause:i,resume:l,isActive:a}}function is(e,t=!0,n){$d()?qe(e,n):t?e():wn(e)}function jd(e,t,n={}){const{immediate:r=!0}=n,o=ue(!1);let s=null;function i(){s&&(clearTimeout(s),s=null)}function l(){o.value=!1,i()}function a(...c){i(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=null,e(...c)},ht(t))}return r&&(o.value=!0,ss&&a()),Jr(l),{isPending:Nr(o),start:a,stop:l}}function Fd(e=!1,t={}){const{truthyValue:n=!0,falsyValue:r=!1}=t,o=He(e),s=ue(e);function i(l){if(arguments.length)return s.value=l,s.value;{const a=ht(n);return s.value=s.value===a?ht(r):a,s.value}}return o?i:[s,i]}function zt(e){var t;const n=ht(e);return(t=n==null?void 0:n.$el)!=null?t:n}const yt=ss?window:void 0,Jl=ss?window.navigator:void 0;function lt(...e){let t,n,r,o;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,o]=e,t=yt):[t,n,r,o]=e,!t)return To;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const s=[],i=()=>{s.forEach(f=>f()),s.length=0},l=(f,u,p,g)=>(f.addEventListener(u,p,g),()=>f.removeEventListener(u,p,g)),a=Ne(()=>[zt(t),ht(o)],([f,u])=>{if(i(),!f)return;const p=Dd(u)?{...u}:u;s.push(...n.flatMap(g=>r.map(_=>l(f,g,_,p))))},{immediate:!0,flush:"post"}),c=()=>{a(),i()};return Jr(c),c}function Bd(){const e=ue(!1),t=Wr();return t&&qe(()=>{e.value=!0},t),e}function Qr(e){const t=Bd();return T(()=>(t.value,!!e()))}function ls(e,t={}){const{window:n=yt}=t,r=Qr(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const s=ue(!1),i=c=>{s.value=c.matches},l=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",i):o.removeListener(i))},a=eu(()=>{r.value&&(l(),o=n.matchMedia(ht(e)),"addEventListener"in o?o.addEventListener("change",i):o.addListener(i),s.value=o.matches)});return Jr(()=>{a(),l(),o=void 0}),s}function vi(e,t={}){const{controls:n=!1,navigator:r=Jl}=t,o=Qr(()=>r&&"permissions"in r);let s;const i=typeof e=="string"?{name:e}:e,l=ue(),a=()=>{s&&(l.value=s.state)},c=Md(async()=>{if(o.value){if(!s)try{s=await r.permissions.query(i),lt(s,"change",a),a()}catch{l.value="prompt"}return s}});return c(),n?{state:l,isSupported:o,query:c}:l}function Wd(e={}){const{navigator:t=Jl,read:n=!1,source:r,copiedDuring:o=1500,legacy:s=!1}=e,i=Qr(()=>t&&"clipboard"in t),l=vi("clipboard-read"),a=vi("clipboard-write"),c=T(()=>i.value||s),f=ue(""),u=ue(!1),p=jd(()=>u.value=!1,o);function g(){i.value&&A(l.value)?t.clipboard.readText().then(b=>{f.value=b}):f.value=k()}c.value&&n&<(["copy","cut"],g);async function _(b=ht(r)){c.value&&b!=null&&(i.value&&A(a.value)?await t.clipboard.writeText(b):y(b),f.value=b,u.value=!0,p.start())}function y(b){const m=document.createElement("textarea");m.value=b??"",m.style.position="absolute",m.style.opacity="0",document.body.appendChild(m),m.select(),document.execCommand("copy"),m.remove()}function k(){var b,m,S;return(S=(m=(b=document==null?void 0:document.getSelection)==null?void 0:b.call(document))==null?void 0:m.toString())!=null?S:""}function A(b){return b==="granted"||b==="prompt"}return{isSupported:c,text:f,copied:u,copy:_}}const mr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},vr="__vueuse_ssr_handlers__",Ud=Kd();function Kd(){return vr in mr||(mr[vr]=mr[vr]||{}),mr[vr]}function Gd(e,t){return Ud[e]||t}function qd(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const zd={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},_i="vueuse-storage";function as(e,t,n,r={}){var o;const{flush:s="pre",deep:i=!0,listenToStorageChanges:l=!0,writeDefaults:a=!0,mergeDefaults:c=!1,shallow:f,window:u=yt,eventFilter:p,onError:g=L=>{console.error(L)},initOnMounted:_}=r,y=(f?yn:ue)(typeof t=="function"?t():t);if(!n)try{n=Gd("getDefaultStorage",()=>{var L;return(L=yt)==null?void 0:L.localStorage})()}catch(L){g(L)}if(!n)return y;const k=ht(t),A=qd(k),b=(o=r.serializer)!=null?o:zd[A],{pause:m,resume:S}=Vd(y,()=>O(y.value),{flush:s,deep:i,eventFilter:p});u&&l&&is(()=>{lt(u,"storage",Z),lt(u,_i,j),_&&Z()}),_||Z();function V(L,U){u&&u.dispatchEvent(new CustomEvent(_i,{detail:{key:e,oldValue:L,newValue:U,storageArea:n}}))}function O(L){try{const U=n.getItem(e);if(L==null)V(U,null),n.removeItem(e);else{const R=b.write(L);U!==R&&(n.setItem(e,R),V(U,R))}}catch(U){g(U)}}function K(L){const U=L?L.newValue:n.getItem(e);if(U==null)return a&&k!=null&&n.setItem(e,b.write(k)),k;if(!L&&c){const R=b.read(U);return typeof c=="function"?c(R,k):A==="object"&&!Array.isArray(R)?{...k,...R}:R}else return typeof U!="string"?U:b.read(U)}function Z(L){if(!(L&&L.storageArea!==n)){if(L&&L.key==null){y.value=k;return}if(!(L&&L.key!==e)){m();try{(L==null?void 0:L.newValue)!==b.write(y.value)&&(y.value=K(L))}catch(U){g(U)}finally{L?wn(S):S()}}}}function j(L){Z(L.detail)}return y}function Jd(e){return ls("(prefers-color-scheme: dark)",e)}function Qd(e,t,n={}){const{window:r=yt,...o}=n;let s;const i=Qr(()=>r&&"ResizeObserver"in r),l=()=>{s&&(s.disconnect(),s=void 0)},a=T(()=>Array.isArray(e)?e.map(u=>zt(u)):[zt(e)]),c=Ne(a,u=>{if(l(),i.value&&r){s=new ResizeObserver(t);for(const p of u)p&&s.observe(p,o)}},{immediate:!0,flush:"post"}),f=()=>{l(),c()};return Jr(f),{isSupported:i,stop:f}}function Yd(e,t={width:0,height:0},n={}){const{window:r=yt,box:o="content-box"}=n,s=T(()=>{var u,p;return(p=(u=zt(e))==null?void 0:u.namespaceURI)==null?void 0:p.includes("svg")}),i=ue(t.width),l=ue(t.height),{stop:a}=Qd(e,([u])=>{const p=o==="border-box"?u.borderBoxSize:o==="content-box"?u.contentBoxSize:u.devicePixelContentBoxSize;if(r&&s.value){const g=zt(e);if(g){const _=g.getBoundingClientRect();i.value=_.width,l.value=_.height}}else if(p){const g=Array.isArray(p)?p:[p];i.value=g.reduce((_,{inlineSize:y})=>_+y,0),l.value=g.reduce((_,{blockSize:y})=>_+y,0)}else i.value=u.contentRect.width,l.value=u.contentRect.height},n);is(()=>{const u=zt(e);u&&(i.value="offsetWidth"in u?u.offsetWidth:t.width,l.value="offsetHeight"in u?u.offsetHeight:t.height)});const c=Ne(()=>zt(e),u=>{i.value=u?t.width:0,l.value=u?t.height:0});function f(){a(),c()}return{width:i,height:l,stop:f}}function Xd(e,t,n={}){const{window:r=yt}=n;return as(e,t,r==null?void 0:r.sessionStorage,n)}function Zd(e={}){const{window:t=yt,behavior:n="auto"}=e;if(!t)return{x:ue(0),y:ue(0)};const r=ue(t.scrollX),o=ue(t.scrollY),s=T({get(){return r.value},set(l){scrollTo({left:l,behavior:n})}}),i=T({get(){return o.value},set(l){scrollTo({top:l,behavior:n})}});return lt(t,"scroll",()=>{r.value=t.scrollX,o.value=t.scrollY},{capture:!1,passive:!0}),{x:s,y:i}}function eh(e={}){const{window:t=yt,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:r=Number.POSITIVE_INFINITY,listenOrientation:o=!0,includeScrollbar:s=!0}=e,i=ue(n),l=ue(r),a=()=>{t&&(s?(i.value=t.innerWidth,l.value=t.innerHeight):(i.value=t.document.documentElement.clientWidth,l.value=t.document.documentElement.clientHeight))};if(a(),is(a),lt("resize",a,{passive:!0}),o){const c=ls("(orientation: portrait)");Ne(c,()=>a())}return{width:i,height:l}}const bi=async(e,t)=>{const{path:n,query:r}=e.currentRoute.value,{scrollBehavior:o}=e.options;e.options.scrollBehavior=void 0,await e.replace({path:n,query:r,hash:t}),e.options.scrollBehavior=o},th=({headerLinkSelector:e,headerAnchorSelector:t,delay:n,offset:r=5})=>{const o=tn();lt("scroll",Nd(()=>{var _,y;const i=Math.max(window.scrollY,document.documentElement.scrollTop,document.body.scrollTop);if(Math.abs(i-0)u.some(A=>A.hash===k.hash));for(let k=0;k=(((_=A.parentElement)==null?void 0:_.offsetTop)??0)-r,S=!b||i<(((y=b.parentElement)==null?void 0:y.offsetTop)??0)-r;if(!(m&&S))continue;const O=decodeURIComponent(o.currentRoute.value.hash),K=decodeURIComponent(A.hash);if(O===K)return;if(f){for(let Z=k+1;Z{const t=sr();return T(()=>e[t.value]??{})},ah=()=>{const e=kd();return T(()=>Object.keys(e.value))},ho=(e,t)=>{var r;const n=(r=Wr())==null?void 0:r.appContext.components;return n?e in n||Ye(e)in n||Qn(Ye(e))in n:!1},ch=e=>new Promise(t=>setTimeout(t,e)),uh=({selector:e=[...new Array(6)].map((r,o)=>`#vp-content h${o+1}`).join(","),levels:t=2,ignore:n=[]}={})=>{const r=Array.from(document.querySelectorAll(e)).filter(o=>o.id&&o.hasChildNodes()).map(o=>{const s=Number(o.tagName[1]);return{element:o,title:fh(o,n),link:"#"+o.id,slug:o.id,level:s}});return dh(r,t)},fh=(e,t=[])=>{let n="";if(t.length){const r=e.cloneNode(!0);r.querySelectorAll(t.join(",")).forEach(o=>o.remove()),n=r.textContent||""}else n=e.textContent||"";return n.trim()},dh=(e,t=2)=>{if(t===!1)return[];const[n,r]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;e=e.filter(s=>s.level>=n&&s.level<=r);const o=[];e:for(let s=0;s=0;l--){const a=e[l];if(a.levelst(e)&&e.startsWith(t),hh=Object.keys,Xl=e=>Yl(e,"/");var ph={"/eng/":{backToTop:"Back to top"},"/":{backToTop:"Вернуться к началу"}};const gh=he({name:"BackToTop",setup(){const e=at(),t=Ql(ph),n=yn(),{height:r}=Yd(n),{height:o}=eh(),{y:s}=Zd(),i=T(()=>e.value.backToTop!==!1&&s.value>100),l=T(()=>s.value/(r.value-o.value)*100);return qe(()=>{n.value=document.body}),()=>ke(rr,{name:"back-to-top"},()=>i.value?ke("button",{type:"button",class:"vp-back-to-top-button","aria-label":t.value.backToTop,onClick:()=>{window.scrollTo({top:0,behavior:"smooth"})}},[ke("span",{class:"vp-scroll-progress",role:"progressbar","aria-labelledby":"loadinglabel","aria-valuenow":l.value},ke("svg",ke("circle",{cx:"26",cy:"26",r:"24",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-dasharray":`${Math.PI*l.value*.48} ${Math.PI*(100-l.value)*.48}`}))),ke("div",{class:"back-to-top-icon"})]):null)}}),mh=Ft({rootComponents:[gh]}),vh=Object.freeze(Object.defineProperty({__proto__:null,default:mh},Symbol.toStringTag,{value:"Module"})),_h=/language-(shellscript|shell|bash|sh|zsh)/,bh=({delay:e=500,duration:t=2e3,locales:n,selector:r,showInMobile:o,ignoreSelector:s=[],transform:i})=>{const l=ls("(max-width: 419px)"),a=T(()=>!l.value||o),c=Ql(n),f=Sn(),u=k=>{var b;if(k.hasAttribute("copy-code-registered"))return;const A=document.createElement("button");A.type="button",A.classList.add("vp-copy-code-button"),A.setAttribute("aria-label",c.value.copy),A.setAttribute("data-copied",c.value.copied),(b=k.parentElement)==null||b.insertBefore(A,k),k.setAttribute("copy-code-registered","")};Ne(()=>[f.value.path,a.value],async()=>{document.body.classList.toggle("copy-code-disabled",!a.value),a.value&&(await wn(),await ch(e),document.querySelectorAll(r.join(",")).forEach(u))},{immediate:!0});const{copy:g}=Wd({legacy:!0}),_=new WeakMap,y=(k,A,b)=>{const m=A.cloneNode(!0);s.length&&m.querySelectorAll(s.join(",")).forEach(V=>V.remove()),i&&i(m);let S=m.textContent||"";_h.test(k.className)&&(S=S.replace(/^ *(\$|>) /gm,"")),g(S).then(()=>{if(t<=0)return;b.classList.add("copied"),clearTimeout(_.get(b));const V=setTimeout(()=>{b.classList.remove("copied"),b.blur(),_.delete(b)},t);_.set(b,V)})};lt("click",k=>{const A=k.target;if(a.value&&A.matches('div[class*="language-"] > button.vp-copy-code-button')){const b=A.parentElement,m=A.nextElementSibling;if(!b||!m)return;y(b,m,A)}})};var yh={"/eng/":{copy:"Copy code",copied:"Copied"},"/":{copy:"Скопировать код",copied:"Скопировано"}},wh=['.theme-default-content div[class*="language-"] pre'];const Sh=Ft({setup:()=>{bh({selector:wh,locales:yh,duration:2e3,delay:500,showInMobile:!1})}}),Ch=Object.freeze(Object.defineProperty({__proto__:null,default:Sh},Symbol.toStringTag,{value:"Module"}));/** + * NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress + * @license MIT + */const ae={settings:{minimum:.08,easing:"ease",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,barSelector:'[role="bar"]',parent:"body",template:'
'},status:null,set:e=>{const t=ae.isStarted();e=po(e,ae.settings.minimum,1),ae.status=e===1?null:e;const n=ae.render(!t),r=n.querySelector(ae.settings.barSelector),o=ae.settings.speed,s=ae.settings.easing;return n.offsetWidth,Ph(i=>{_r(r,{transform:"translate3d("+yi(e)+"%,0,0)",transition:"all "+o+"ms "+s}),e===1?(_r(n,{transition:"none",opacity:"1"}),n.offsetWidth,setTimeout(()=>{_r(n,{transition:"all "+o+"ms linear",opacity:"0"}),setTimeout(()=>{ae.remove(),i()},o)},o)):setTimeout(()=>i(),o)}),ae},isStarted:()=>typeof ae.status=="number",start:()=>{ae.status||ae.set(0);const e=()=>{setTimeout(()=>{ae.status&&(ae.trickle(),e())},ae.settings.trickleSpeed)};return ae.settings.trickle&&e(),ae},done:e=>!e&&!ae.status?ae:ae.inc(.3+.5*Math.random()).set(1),inc:e=>{let t=ae.status;return t?(typeof e!="number"&&(e=(1-t)*po(Math.random()*t,.1,.95)),t=po(t+e,0,.994),ae.set(t)):ae.start()},trickle:()=>ae.inc(Math.random()*ae.settings.trickleRate),render:e=>{if(ae.isRendered())return document.getElementById("nprogress");wi(document.documentElement,"nprogress-busy");const t=document.createElement("div");t.id="nprogress",t.innerHTML=ae.settings.template;const n=t.querySelector(ae.settings.barSelector),r=e?"-100":yi(ae.status||0),o=document.querySelector(ae.settings.parent);return _r(n,{transition:"all 0 linear",transform:"translate3d("+r+"%,0,0)"}),o!==document.body&&wi(o,"nprogress-custom-parent"),o==null||o.appendChild(t),t},remove:()=>{Si(document.documentElement,"nprogress-busy"),Si(document.querySelector(ae.settings.parent),"nprogress-custom-parent");const e=document.getElementById("nprogress");e&&kh(e)},isRendered:()=>!!document.getElementById("nprogress")},po=(e,t,n)=>en?n:e,yi=e=>(-1+e)*100,Ph=function(){const e=[];function t(){const n=e.shift();n&&n(t)}return function(n){e.push(n),e.length===1&&t()}}(),_r=function(){const e=["Webkit","O","Moz","ms"],t={};function n(i){return i.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(l,a){return a.toUpperCase()})}function r(i){const l=document.body.style;if(i in l)return i;let a=e.length;const c=i.charAt(0).toUpperCase()+i.slice(1);let f;for(;a--;)if(f=e[a]+c,f in l)return f;return i}function o(i){return i=n(i),t[i]??(t[i]=r(i))}function s(i,l,a){l=o(l),i.style[l]=a}return function(i,l){for(const a in l){const c=l[a];c!==void 0&&Object.prototype.hasOwnProperty.call(l,a)&&s(i,a,c)}}}(),Zl=(e,t)=>(typeof e=="string"?e:cs(e)).indexOf(" "+t+" ")>=0,wi=(e,t)=>{const n=cs(e),r=n+t;Zl(n,t)||(e.className=r.substring(1))},Si=(e,t)=>{const n=cs(e);if(!Zl(e,t))return;const r=n.replace(" "+t+" "," ");e.className=r.substring(1,r.length-1)},cs=e=>(" "+(e.className||"")+" ").replace(/\s+/gi," "),kh=e=>{e&&e.parentNode&&e.parentNode.removeChild(e)},Lh=()=>{qe(()=>{const e=tn(),t=new Set;t.add(e.currentRoute.value.path),e.beforeEach(n=>{t.has(n.path)||ae.start()}),e.afterEach(n=>{t.add(n.path),ae.done()})})},Eh=Ft({setup(){Lh()}}),xh=Object.freeze(Object.defineProperty({__proto__:null,default:Eh},Symbol.toStringTag,{value:"Module"})),Ah=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),Th=JSON.parse(`{"repo":"https://git.pleshevski.ru/pleshevskiy/pleshevski.ru","locales":{"/":{"selectLanguageName":"Русский","navbar":["/","/works"],"notFound":["Верните страницу!","Мы потеряли страницу...","Вы заблокированы в лабиринте.","Искали кота?","Страница украдена.","Ошиблись в параллельной вселенной."],"backToHome":"Вернуться на главную","worksTable":{"name":"Название","description":"Описание","role":"Роль","technologies":"Технологии","status":"Статус","dates":"Даты"}},"/eng/":{"selectLanguageName":"English","navbar":["/eng/","/eng/works"],"notFound":["Return the page!","We lost a page...","You're blocked in a labyrinth.","Looking for a cat?","The page has been stolen.","Wrong turn in parallel universe."],"backToHome":"Back to home","worksTable":{"name":"Name","description":"Description","role":"Role","technologies":"Technologies","status":"Status","dates":"Dates"}}},"colorMode":"auto","colorModeSwitch":true,"navbar":[],"logo":null,"selectLanguageText":"Languages","selectLanguageAriaLabel":"Select language","sidebar":"heading","sidebarDepth":2,"editLink":true,"editLinkText":"Edit this page","lastUpdated":true,"lastUpdatedText":"Last Updated","contributors":true,"contributorsText":"Contributors","notFound":["There's nothing here.","How did we get here?","That's a Four-Oh-Four.","Looks like we've got some broken links."],"backToHome":"Take me home","openInNewWindow":"open in new window","toggleColorMode":"toggle color mode","toggleSidebar":"toggle sidebar"}`),Rh=ue(Th),ea=()=>Rh,ta=Symbol(""),Dh=()=>{const e=We(ta);if(!e)throw new Error("useThemeLocaleData() is called without provider.");return e},Oh=(e,t)=>{const{locales:n,...r}=e;return{...r,...n==null?void 0:n[t]}},Ih=Ft({enhance({app:e}){const t=ea(),n=e._context.provides[es],r=T(()=>Oh(t.value,n.routeLocale.value));e.provide(ta,r),Object.defineProperties(e.config.globalProperties,{$theme:{get(){return t.value}},$themeLocale:{get(){return r.value}}})}}),Mh=Object.freeze(Object.defineProperty({__proto__:null,default:Ih},Symbol.toStringTag,{value:"Module"})),$h=()=>ea(),Re=()=>Dh(),na=Symbol(""),Nh=e=>{const t=(n=e.value)=>{const r=window.document.documentElement;r.classList.toggle("dark",n),r.dataset.theme=n?"dark":"light"};qe(()=>{Ne(e,t,{immediate:!0})}),Fr(()=>t())},us=()=>{const e=We(na);if(!e)throw new Error("useDarkMode() is called without provider.");return e},Hh=()=>{const e=Re(),t=Jd(),n=as("vuepress-color-scheme",e.value.colorMode),r=T({get(){return e.value.colorModeSwitch?n.value==="auto"?t.value:n.value==="dark":e.value.colorMode==="dark"},set(o){o===t.value?n.value="auto":n.value=o?"dark":"light"}});Xt(na,r),Nh(r)};let go=null,An=null;const Vh={wait:()=>go,pending:()=>{go=new Promise(e=>An=e)},resolve:()=>{An==null||An(),go=null,An=null}},ra=()=>Vh,bn=(e,t)=>{const{notFound:n,meta:r,path:o}=qn(e,t);return n?{text:o,link:o}:{text:r.title||o,link:o}},Ci=e=>decodeURI(e).replace(/#.*$/,"").replace(/(index)?\.(md|html)$/,""),jh=(e,t)=>{if(t.hash===e)return!0;const n=Ci(t.path),r=Ci(e);return n===r},oa=(e,t)=>e.link&&jh(e.link,t)?!0:"children"in e?e.children.some(n=>oa(n,t)):!1,sa=e=>!nf(e)&&!or(e),ia=e=>!Kr(e)||/github\.com/.test(e)?"GitHub":/bitbucket\.org/.test(e)?"Bitbucket":/gitlab\.com/.test(e)?"GitLab":/gitee\.com/.test(e)?"Gitee":null,Fh={GitHub:":repo/edit/:branch/:path",GitLab:":repo/-/edit/:branch/:path",Gitee:":repo/edit/:branch/:path",Bitbucket:":repo/src/:branch/:path?mode=edit&spa=0&at=:branch&fileviewer=file-view-default"},Bh=({docsRepo:e,editLinkPattern:t})=>{if(t)return t;const n=ia(e);return n!==null?Fh[n]:null},Wh=({docsRepo:e,docsBranch:t,docsDir:n,filePathRelative:r,editLinkPattern:o})=>{if(!r)return null;const s=Bh({docsRepo:e,editLinkPattern:o});return s?s.replace(/:repo/,Kr(e)?e:`https://github.com/${e}`).replace(/:branch/,t).replace(/:path/,Ol(`${Dl(n)}/${r}`)):null},gn=(e="",t="")=>Xl(t)||or(t)?t:`${df(e)}${t}`,Sr=ue([]),Uh=()=>{const e=tn(),t=Re(),n=at(),r=T(()=>n.value.sidebarDepth??t.value.sidebarDepth??2);e.beforeEach((s,i)=>{s.path!==i.path&&(Sr.value=[])});const o=()=>{if(r.value<=0){Sr.value=[];return}Sr.value=uh({selector:[...new Array(6)].map((s,i)=>`.theme-default-content h${i+1}`).join(","),levels:[2,r.value+1],ignore:[".vp-badge"]})};Ne(r,o),qe(o)},Kh=()=>Sr,la=Symbol("sidebarItems"),fs=()=>{const e=We(la);if(!e)throw new Error("useSidebarItems() is called without provider.");return e},Gh=()=>{const e=Re(),t=at(),n=Sn(),r=St(),o=sr(),s=Kh(),i=T(()=>t.value.home?!1:t.value.sidebar??e.value.sidebar??"heading"),l=T(()=>qh(i.value,n.value,r.path,o.value,s.value));Xt(la,l)},qh=(e,t,n,r,o)=>e===!1?[]:e==="heading"?aa(t,o):Array.isArray(e)?ca(e,o,n,r):Yo(e)?Jh(e,t,o,n):[],zh=e=>({text:e.title,link:e.link,children:ds(e.children)}),ds=e=>e?e.map(t=>zh(t)):[],aa=(e,t)=>[{text:e.title,children:ds(t)}],ca=(e,t,n,r="")=>{const o=(s,i)=>{var a;const l=st(s)?bn(gn(i,s)):st(s.link)?{...s,link:sa(s.link)?bn(gn(i,s.link)).link:s.link}:s;if("children"in l)return{...l,children:l.children.map(c=>o(c,gn(i,l.prefix)))};if(l.link===n){const c=((a=t[0])==null?void 0:a.level)===1?t[0].children:t;return{...l,children:ds(c)}}return l};return e.map(s=>o(s,r))},Jh=(e,t,n,r)=>{const o=hh(e).sort((s,i)=>i.length-s.length);for(const s of o)if(Yl(decodeURI(r),s)){const i=e[s];return i?i==="heading"?aa(t,n):ca(i,n,r,s):[]}return console.warn(`${decodeURI(r)} is missing sidebar config.`),[]},Qh=he({__name:"Badge",props:{type:{default:"tip"},text:{default:""},vertical:{default:void 0}},setup(e,{expose:t}){t();const n={};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),we=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n};function Yh(e,t,n,r,o,s){return $(),Y("span",{class:Be(["vp-badge",n.type]),style:Yn({verticalAlign:n.vertical})},[Le(e.$slots,"default",{},()=>[$t(le(n.text),1)])],6)}const Xh=we(Qh,[["render",Yh],["__file","Badge.vue"]]),Zh=he({name:"CodeGroup",slots:Object,setup(e,{slots:t}){const n=ue([]),r=ue(-1),o=as("vuepress-code-group",{}),s=T(()=>n.value.map(c=>c.innerText).join(","));qe(()=>{Ne(()=>o.value[s.value],(c=-1)=>{r.value!==c&&(r.value=c)},{immediate:!0}),Ne(r,c=>{o.value[s.value]!==c&&(o.value[s.value]=c)})});const i=(c=r.value)=>{c{c>0?r.value=c-1:r.value=n.value.length-1,n.value[r.value].focus()},a=(c,f)=>{c.key===" "||c.key==="Enter"?(c.preventDefault(),r.value=f):c.key==="ArrowRight"?(c.preventDefault(),i(f)):c.key==="ArrowLeft"&&(c.preventDefault(),l(f))};return()=>{var f;const c=(((f=t.default)==null?void 0:f.call(t))||[]).filter(u=>u.type.name==="CodeGroupItem").map(u=>(u.props===null&&(u.props={}),u));return c.length===0?null:(r.value<0||r.value>c.length-1?(r.value=c.findIndex(u=>u.props.active===""||u.props.active===!0),r.value===-1&&(r.value=0)):c.forEach((u,p)=>{u.props.active=p===r.value}),ke("div",{class:"code-group"},[ke("div",{class:"code-group-nav",role:"tablist"},c.map((u,p)=>{const g=p===r.value;return ke("button",{ref:_=>{_&&(n.value[p]=_)},class:{"code-group-nav-tab":!0,active:g},role:"tab",ariaSelected:g,onClick:()=>r.value=p,onKeydown:_=>a(_,p)},u.props.title)})),c]))}}}),ep=he({name:"CodeGroupItem",__name:"CodeGroupItem",props:{title:{},active:{type:Boolean}},setup(e,{expose:t}){t();const n={};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}});function tp(e,t,n,r,o,s){return $(),Y("div",{class:Be(["code-group-item",{active:n.active}]),role:"tabpanel"},[Le(e.$slots,"default")],2)}const np=we(ep,[["render",tp],["__file","CodeGroupItem.vue"]]),rp=he({__name:"VPHomeFeatures",setup(e,{expose:t}){t();const n=at(),r=T(()=>n.value.features??[]),o={frontmatter:n,features:r};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}}),op={key:0,class:"vp-features"};function sp(e,t,n,r,o,s){return r.features.length?($(),Y("div",op,[($(!0),Y(be,null,bt(r.features,i=>($(),Y("div",{key:i.title,class:"vp-feature"},[W("h2",null,le(i.title),1),W("p",null,le(i.details),1)]))),128))])):Ae("",!0)}const ip=we(rp,[["render",sp],["__file","VPHomeFeatures.vue"]]),lp=he({__name:"VPHomeFooter",setup(e,{expose:t}){t();const n=at(),r=T(()=>n.value.footer),o=T(()=>n.value.footerHtml),s={frontmatter:n,footer:r,footerHtml:o};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}}),ap=["innerHTML"],cp=["textContent"];function up(e,t,n,r,o,s){return r.footer?($(),Y(be,{key:0},[r.footerHtml?($(),Y("div",{key:0,class:"vp-footer",innerHTML:r.footer},null,8,ap)):($(),Y("div",{key:1,class:"vp-footer",textContent:le(r.footer)},null,8,cp))],64)):Ae("",!0)}const fp=we(lp,[["render",up],["__file","VPHomeFooter.vue"]]),dp=he({__name:"VPHomeHero",setup(e,{expose:t}){t();const n=at(),r=ts(),o=us(),s=T(()=>o.value&&n.value.heroImageDark!==void 0?n.value.heroImageDark:n.value.heroImage),i=T(()=>n.value.heroAlt||a.value||"hero"),l=T(()=>n.value.heroHeight||280),a=T(()=>n.value.heroText===null?null:n.value.heroText||r.value.title||"Hello"),c=T(()=>n.value.tagline===null?null:n.value.tagline||r.value.description||"Welcome to your VuePress site"),f=T(()=>Array.isArray(n.value.actions)?n.value.actions.map(({text:g,link:_,type:y="primary"})=>({text:g,link:_,type:y})):[]),p={frontmatter:n,siteLocale:r,isDarkMode:o,heroImage:s,heroAlt:i,heroHeight:l,heroText:a,tagline:c,actions:f,HomeHeroImage:()=>{if(!s.value)return null;const g=ke("img",{class:"vp-hero-image",src:os(s.value),alt:i.value,height:l.value});return n.value.heroImageDark===void 0?g:ke(ns,()=>g)},get AutoLink(){return Cn}};return Object.defineProperty(p,"__isScriptSetup",{enumerable:!1,value:!0}),p}}),hp={class:"vp-hero"},pp={key:0,id:"main-title"},gp={key:1,class:"vp-hero-description"},mp={key:2,class:"vp-hero-actions"};function vp(e,t,n,r,o,s){return $(),Y("header",hp,[te(r.HomeHeroImage),r.heroText?($(),Y("h1",pp,le(r.heroText),1)):Ae("",!0),r.tagline?($(),Y("p",gp,le(r.tagline),1)):Ae("",!0),r.actions.length?($(),Y("p",mp,[($(!0),Y(be,null,bt(r.actions,i=>($(),Ee(r.AutoLink,{key:i.text,class:Be(["vp-hero-action-button",[i.type]]),config:i},null,8,["class","config"]))),128))])):Ae("",!0)])}const _p=we(dp,[["render",vp],["__file","VPHomeHero.vue"]]),bp=he({__name:"VPHome",setup(e,{expose:t}){t();const n={VPHomeFeatures:ip,VPHomeFooter:fp,VPHomeHero:_p,get Content(){return rs}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),yp={class:"vp-home"},wp={class:"theme-default-content"};function Sp(e,t,n,r,o,s){return $(),Y("main",yp,[te(r.VPHomeHero),te(r.VPHomeFeatures),W("div",wp,[te(r.Content)]),te(r.VPHomeFooter)])}const Cp=we(bp,[["render",Sp],["__file","VPHome.vue"]]),Pp="719px",kp={mobile:Pp};var zn;(function(e){e.MOBILE="mobile"})(zn||(zn={}));const Lp={[zn.MOBILE]:Number.parseInt(kp.mobile.replace("px",""),10)},ua=(e,t)=>{const n=Lp[e];Number.isInteger(n)&&(lt("orientationchange",()=>t(n),!1),lt("resize",()=>t(n),!1),qe(()=>{t(n)}))},Ep=he({__name:"VPNavbarBrand",setup(e,{expose:t}){t();const n=sr(),r=ts(),o=Re(),s=us(),i=T(()=>o.value.home||n.value),l=T(()=>r.value.title),a=T(()=>s.value&&o.value.logoDark!==void 0?o.value.logoDark:o.value.logo),c=T(()=>o.value.logoAlt??l.value),f=T(()=>l.value.toLocaleUpperCase().trim()===c.value.toLocaleUpperCase().trim()),p={routeLocale:n,siteLocale:r,themeLocale:o,isDarkMode:s,navbarBrandLink:i,navbarBrandTitle:l,navbarBrandLogo:a,navbarBrandLogoAlt:c,navBarLogoAltMatchesTitle:f,NavbarBrandLogo:()=>{if(!a.value)return null;const g=ke("img",{class:"vp-site-logo",src:os(a.value),alt:c.value});return o.value.logoDark===void 0?g:ke(ns,()=>g)},get RouteLink(){return zr}};return Object.defineProperty(p,"__isScriptSetup",{enumerable:!1,value:!0}),p}}),xp=["aria-hidden"];function Ap(e,t,n,r,o,s){return $(),Ee(r.RouteLink,{to:r.navbarBrandLink},{default:xe(()=>[te(r.NavbarBrandLogo),r.navbarBrandTitle?($(),Y("span",{key:0,class:Be(["vp-site-name",{"vp-hide-mobile":r.navbarBrandLogo}]),"aria-hidden":r.navBarLogoAltMatchesTitle},le(r.navbarBrandTitle),11,xp)):Ae("",!0)]),_:1},8,["to"])}const Tp=we(Ep,[["render",Ap],["__file","VPNavbarBrand.vue"]]),fa=(e,t="")=>st(e)?bn(gn(t,e)):"children"in e?{...e,children:e.children.map(n=>fa(n,gn(t,e.prefix)))}:{...e,link:sa(e.link)?bn(gn(t,e.link)).link:e.link},Rp=()=>{const e=Re();return T(()=>(e.value.navbar||[]).map(t=>fa(t)))},Dp=()=>{const e=Re(),t=T(()=>e.value.repo),n=T(()=>t.value?ia(t.value):null),r=T(()=>t.value&&!Kr(t.value)?`https://github.com/${t.value}`:t.value),o=T(()=>r.value?e.value.repoLabel?e.value.repoLabel:n.value===null?"Source":n.value:null);return T(()=>!r.value||!o.value?[]:[{text:o.value,link:r.value}])},Op=()=>{const e=St(),t=ah(),n=sr(),r=Kl(),o=ts(),s=$h(),i=Re();return T(()=>{const l=Object.keys(r.value.locales);if(l.length<2)return[];const a=e.path,c=e.fullPath;return[{text:`${i.value.selectLanguageText}`,ariaLabel:`${i.value.selectLanguageAriaLabel??i.value.selectLanguageText}`,children:l.map(u=>{var A,b;const p=((A=r.value.locales)==null?void 0:A[u])??{},g=((b=s.value.locales)==null?void 0:b[u])??{},_=`${p.lang}`,y=g.selectLanguageName??_;if(_===o.value.lang)return{text:y,activeMatch:".",link:e.fullPath};const k=a.replace(n.value,u);return{text:y,link:t.value.some(m=>m===k)?c.replace(a,k):g.home??u}})}]})},Ip=he({__name:"VPDropdownTransition",setup(e,{expose:t}){t();const o={setHeight:s=>{s.style.height=s.scrollHeight+"px"},unsetHeight:s=>{s.style.height=""}};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}});function Mp(e,t,n,r,o,s){return $(),Ee(rr,{name:"vp-dropdown",onEnter:r.setHeight,onAfterEnter:r.unsetHeight,onBeforeLeave:r.setHeight},{default:xe(()=>[Le(e.$slots,"default")]),_:3})}const da=we(Ip,[["render",Mp],["__file","VPDropdownTransition.vue"]]),$p=he({__name:"VPNavbarDropdown",props:{item:{}},setup(e,{expose:t}){t();const n=e,{item:r}=Yi(n),o=St(),s=ue(!1),i=T(()=>r.value.ariaLabel||r.value.text),l=(f,u)=>u[u.length-1]===f,a=f=>{const u=f.detail===0;s.value=u?!s.value:!1};Ne(()=>o.path,()=>{s.value=!1});const c={props:n,item:r,route:o,open:s,dropdownAriaLabel:i,isLastItemOfArray:l,handleDropdown:a,VPDropdownTransition:da,get AutoLink(){return Cn}};return Object.defineProperty(c,"__isScriptSetup",{enumerable:!1,value:!0}),c}}),Np=["aria-label"],Hp={class:"title"},Vp=W("span",{class:"arrow down"},null,-1),jp=["aria-label"],Fp={class:"title"},Bp={class:"vp-navbar-dropdown"},Wp={class:"vp-navbar-dropdown-subtitle"},Up={key:1},Kp={class:"vp-navbar-dropdown-subitem-wrapper"};function Gp(e,t,n,r,o,s){return $(),Y("div",{class:Be(["vp-navbar-dropdown-wrapper",{open:r.open}])},[W("button",{class:"vp-navbar-dropdown-title",type:"button","aria-label":r.dropdownAriaLabel,onClick:r.handleDropdown},[W("span",Hp,le(r.item.text),1),Vp],8,Np),W("button",{class:"vp-navbar-dropdown-title-mobile",type:"button","aria-label":r.dropdownAriaLabel,onClick:t[0]||(t[0]=i=>r.open=!r.open)},[W("span",Fp,le(r.item.text),1),W("span",{class:Be(["arrow",r.open?"down":"right"])},null,2)],8,jp),te(r.VPDropdownTransition,null,{default:xe(()=>[Lr(W("ul",Bp,[($(!0),Y(be,null,bt(r.item.children,i=>($(),Y("li",{key:i.text,class:"vp-navbar-dropdown-item"},["children"in i?($(),Y(be,{key:0},[W("h4",Wp,[i.link?($(),Ee(r.AutoLink,{key:0,config:i,onFocusout:l=>r.isLastItemOfArray(i,r.item.children)&&i.children.length===0&&(r.open=!1)},null,8,["config","onFocusout"])):($(),Y("span",Up,le(i.text),1))]),W("ul",Kp,[($(!0),Y(be,null,bt(i.children,l=>($(),Y("li",{key:l.link,class:"vp-navbar-dropdown-subitem"},[te(r.AutoLink,{config:l,onFocusout:a=>r.isLastItemOfArray(l,i.children)&&r.isLastItemOfArray(i,r.item.children)&&(r.open=!1)},null,8,["config","onFocusout"])]))),128))])],64)):($(),Ee(r.AutoLink,{key:1,config:i,onFocusout:l=>r.isLastItemOfArray(i,r.item.children)&&(r.open=!1)},null,8,["config","onFocusout"]))]))),128))],512),[[Or,r.open]])]),_:1})],2)}const qp=we($p,[["render",Gp],["__file","VPNavbarDropdown.vue"]]),zp=he({__name:"VPNavbarItems",setup(e,{expose:t}){t();const n=Rp(),r=Op(),o=Dp(),s=ue(!1),i=T(()=>Re().value.navbarLabel??"site navigation"),l=T(()=>[...n.value,...r.value,...o.value]);ua(zn.MOBILE,c=>{s.value=window.innerWidth($(),Y("div",{key:i.text,class:"vp-navbar-item"},["children"in i?($(),Ee(r.VPNavbarDropdown,{key:0,class:Be({mobile:r.isMobile}),item:i},null,8,["class","item"])):($(),Ee(r.AutoLink,{key:1,config:i},null,8,["config"]))]))),128))],8,Jp)):Ae("",!0)}const ha=we(zp,[["render",Qp],["__file","VPNavbarItems.vue"]]),Yp={},Xp={class:"dark-icon",viewBox:"0 0 32 32"},Zp=W("path",{d:"M13.502 5.414a15.075 15.075 0 0 0 11.594 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3z",fill:"currentColor"},null,-1),eg=[Zp];function tg(e,t){return $(),Y("svg",Xp,eg)}const ng=we(Yp,[["render",tg],["__file","VPDarkIcon.vue"]]),rg={},og={class:"light-icon",viewBox:"0 0 32 32"},sg=du('',9),ig=[sg];function lg(e,t){return $(),Y("svg",og,ig)}const ag=we(rg,[["render",lg],["__file","VPLightIcon.vue"]]),cg=he({__name:"VPToggleColorModeButton",setup(e,{expose:t}){t();const n=Re(),r=us(),s={themeLocale:n,isDarkMode:r,toggleColorMode:()=>{r.value=!r.value},VPDarkIcon:ng,VPLightIcon:ag};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}}),ug=["title"];function fg(e,t,n,r,o,s){return $(),Y("button",{class:"vp-toggle-color-mode-button",title:r.themeLocale.toggleColorMode,onClick:r.toggleColorMode},[Lr(te(r.VPLightIcon,null,null,512),[[Or,!r.isDarkMode]]),Lr(te(r.VPDarkIcon,null,null,512),[[Or,r.isDarkMode]])],8,ug)}const dg=we(cg,[["render",fg],["__file","VPToggleColorModeButton.vue"]]),hg=he({__name:"VPToggleSidebarButton",emits:["toggle"],setup(e,{expose:t}){t();const r={themeLocale:Re()};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),pg=["title"],gg=W("div",{class:"icon","aria-hidden":"true"},[W("span"),W("span"),W("span")],-1),mg=[gg];function vg(e,t,n,r,o,s){return $(),Y("div",{class:"vp-toggle-sidebar-button",title:r.themeLocale.toggleSidebar,"aria-expanded":"false",role:"button",tabindex:"0",onClick:t[0]||(t[0]=i=>e.$emit("toggle"))},mg,8,pg)}const _g=we(hg,[["render",vg],["__file","VPToggleSidebarButton.vue"]]),bg=he({__name:"VPNavbar",emits:["toggle-sidebar"],setup(e,{expose:t}){t();const n=Re(),r=ue(null),o=ue(null),s=ue(0),i=T(()=>s.value?{maxWidth:s.value+"px"}:{}),l=(c,f)=>{var g,_,y;const u=(y=(_=(g=c==null?void 0:c.ownerDocument)==null?void 0:g.defaultView)==null?void 0:_.getComputedStyle(c,null))==null?void 0:y[f],p=Number.parseInt(u,10);return Number.isNaN(p)?0:p};ua(zn.MOBILE,c=>{var u;const f=l(r.value,"paddingLeft")+l(r.value,"paddingRight");window.innerWidthe.$emit("toggle-sidebar"))}),W("span",wg,[te(r.VPNavbarBrand)],512),W("div",{class:"vp-navbar-items-wrapper",style:Yn(r.linksWrapperStyle)},[Le(e.$slots,"before"),te(r.VPNavbarItems,{class:"vp-hide-mobile"}),Le(e.$slots,"after"),r.themeLocale.colorModeSwitch?($(),Ee(r.VPToggleColorModeButton,{key:0})):Ae("",!0),te(i)],4)],512)}const Cg=we(bg,[["render",Sg],["__file","VPNavbar.vue"]]),Pg=()=>{const e=Re(),t=Sn(),n=at();return T(()=>{var o;return n.value.contributors??e.value.contributors??!0?((o=t.value.git)==null?void 0:o.contributors)??null:null})},kg=()=>{const e=Re(),t=Sn(),n=at();return T(()=>{if(!(n.value.editLink??e.value.editLink??!0))return null;const{repo:o,docsRepo:s=o,docsBranch:i="main",docsDir:l="",editLinkText:a}=e.value;if(!s)return null;const c=Wh({docsRepo:s,docsBranch:i,docsDir:l,filePathRelative:t.value.filePathRelative,editLinkPattern:n.value.editLinkPattern??e.value.editLinkPattern});return c?{text:a??"Edit this page",link:c}:null})},Lg=()=>{const e=Re(),t=Sn(),n=at();return T(()=>{var s,i;return!(n.value.lastUpdated??e.value.lastUpdated??!0)||!((s=t.value.git)!=null&&s.updatedTime)?null:new Date((i=t.value.git)==null?void 0:i.updatedTime).toLocaleString()})},Eg={},xg={class:"edit-icon",viewBox:"0 0 1024 1024"},Ag=W("g",{fill:"currentColor"},[W("path",{d:"M430.818 653.65a60.46 60.46 0 0 1-50.96-93.281l71.69-114.012 7.773-10.365L816.038 80.138A60.46 60.46 0 0 1 859.225 62a60.46 60.46 0 0 1 43.186 18.138l43.186 43.186a60.46 60.46 0 0 1 0 86.373L588.879 565.55l-8.637 8.637-117.466 68.234a60.46 60.46 0 0 1-31.958 11.229z"}),W("path",{d:"M728.802 962H252.891A190.883 190.883 0 0 1 62.008 771.98V296.934a190.883 190.883 0 0 1 190.883-192.61h267.754a60.46 60.46 0 0 1 0 120.92H252.891a69.962 69.962 0 0 0-69.098 69.099V771.98a69.962 69.962 0 0 0 69.098 69.098h475.911A69.962 69.962 0 0 0 797.9 771.98V503.363a60.46 60.46 0 1 1 120.922 0V771.98A190.883 190.883 0 0 1 728.802 962z"})],-1),Tg=[Ag];function Rg(e,t){return $(),Y("svg",xg,Tg)}const Dg=we(Eg,[["render",Rg],["__file","VPEditIcon.vue"]]),Og=he({__name:"VPPageMeta",setup(e,{expose:t}){t();const n=Re(),r=kg(),o=Lg(),s=Pg(),i={themeLocale:n,editLink:r,lastUpdated:o,contributors:s,VPEditIcon:Dg,get AutoLink(){return Cn}};return Object.defineProperty(i,"__isScriptSetup",{enumerable:!1,value:!0}),i}}),Ig={class:"vp-page-meta"},Mg={key:0,class:"vp-meta-item edit-link"},$g={class:"vp-meta-item git-info"},Ng={key:0,class:"vp-meta-item last-updated"},Hg={class:"meta-item-label"},Vg={class:"meta-item-info"},jg={key:1,class:"vp-meta-item contributors"},Fg={class:"meta-item-label"},Bg={class:"meta-item-info"},Wg=["title"];function Ug(e,t,n,r,o,s){const i=Go("ClientOnly");return $(),Y("footer",Ig,[r.editLink?($(),Y("div",Mg,[te(r.AutoLink,{class:"label",config:r.editLink},{before:xe(()=>[te(r.VPEditIcon)]),_:1},8,["config"])])):Ae("",!0),W("div",$g,[r.lastUpdated?($(),Y("div",Ng,[W("span",Hg,le(r.themeLocale.lastUpdatedText)+": ",1),te(i,null,{default:xe(()=>[W("span",Vg,le(r.lastUpdated),1)]),_:1})])):Ae("",!0),r.contributors&&r.contributors.length?($(),Y("div",jg,[W("span",Fg,le(r.themeLocale.contributorsText)+": ",1),W("span",Bg,[($(!0),Y(be,null,bt(r.contributors,(l,a)=>($(),Y(be,{key:a},[W("span",{class:"contributor",title:`email: ${l.email}`},le(l.name),9,Wg),a!==r.contributors.length-1?($(),Y(be,{key:0},[$t(", ")],64)):Ae("",!0)],64))),128))])])):Ae("",!0)])])}const Kg=we(Og,[["render",Ug],["__file","VPPageMeta.vue"]]),Gg=()=>{const e=tn(),t=St();return n=>{n&&(Xl(n)?t.path!==n&&e.push(n):or(n)?window==null||window.open(n):e.push(encodeURI(n)))}},Pi=(e,t)=>e===!1?!1:st(e)?bn(e,t):Yo(e)?{...e,link:bn(e.link,t).link}:null,Ro=(e,t,n)=>{const r=e.findIndex(s=>s.link===t);if(r!==-1){const s=e[r+n];return s?s.link?s:"prefix"in s&&!qn(s.prefix).notFound?{...s,link:s.prefix}:null:null}for(const s of e)if("children"in s){const i=Ro(s.children,t,n);if(i)return i}const o=e.findIndex(s=>"prefix"in s&&s.prefix===t);if(o!==-1){const s=e[o+n];return s?s.link?s:"prefix"in s&&!qn(s.prefix).notFound?{...s,link:s.prefix}:null:null}return null},qg=()=>{const e=at(),t=Re(),n=fs(),r=St(),o=T(()=>{const i=Pi(e.value.prev,r.path);return i===!1?null:i??(t.value.prev===!1?null:Ro(n.value,r.path,-1))}),s=T(()=>{const i=Pi(e.value.next,r.path);return i===!1?null:i??(t.value.next===!1?null:Ro(n.value,r.path,1))});return{prevLink:o,nextLink:s}},zg=he({__name:"VPPageNav",setup(e,{expose:t}){t();const n=Re(),r=Gg(),{prevLink:o,nextLink:s}=qg(),i=T(()=>Re().value.pageNavbarLabel??"page navigation");lt("keydown",a=>{a.altKey&&(a.key==="ArrowRight"?s.value&&(r(s.value.link),a.preventDefault()):a.key==="ArrowLeft"&&o.value&&(r(o.value.link),a.preventDefault()))});const l={themeLocale:n,navigate:r,prevLink:o,nextLink:s,navbarLabel:i,get AutoLink(){return Cn}};return Object.defineProperty(l,"__isScriptSetup",{enumerable:!1,value:!0}),l}}),Jg=["aria-label"],Qg={class:"hint"},Yg=W("span",{class:"arrow left"},null,-1),Xg={class:"link"},Zg={class:"hint"},em=W("span",{class:"arrow right"},null,-1),tm={class:"link"};function nm(e,t,n,r,o,s){return r.prevLink||r.nextLink?($(),Y("nav",{key:0,class:"vp-page-nav","aria-label":r.navbarLabel},[r.prevLink?($(),Ee(r.AutoLink,{key:0,class:"prev",config:r.prevLink},{default:xe(()=>[W("div",Qg,[Yg,$t(" "+le(r.themeLocale.prev??"Prev"),1)]),W("div",Xg,[W("span",null,le(r.prevLink.text),1)])]),_:1},8,["config"])):Ae("",!0),r.nextLink?($(),Ee(r.AutoLink,{key:1,class:"next",config:r.nextLink},{default:xe(()=>[W("div",Zg,[$t(le(r.themeLocale.next??"Next")+" ",1),em]),W("div",tm,[W("span",null,le(r.nextLink.text),1)])]),_:1},8,["config"])):Ae("",!0)],8,Jg)):Ae("",!0)}const rm=we(zg,[["render",nm],["__file","VPPageNav.vue"]]),om=he({__name:"VPPage",setup(e,{expose:t}){t(),Uh();const n={VPPageMeta:Kg,VPPageNav:rm,get Content(){return rs}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),sm={class:"vp-page"},im={class:"theme-default-content"};function lm(e,t,n,r,o,s){return $(),Y("main",sm,[Le(e.$slots,"top"),W("div",im,[Le(e.$slots,"content-top"),te(r.Content),Le(e.$slots,"content-bottom")]),te(r.VPPageMeta),te(r.VPPageNav),Le(e.$slots,"bottom")])}const am=we(om,[["render",lm],["__file","VPPage.vue"]]),cm=he({__name:"VPSidebarItem",props:{item:{},depth:{default:0}},setup(e,{expose:t}){t();const n=e,{item:r,depth:o}=Yi(n),s=St(),i=tn(),l=T(()=>"collapsible"in r.value&&r.value.collapsible),a=T(()=>oa(r.value,s)),c=T(()=>({"vp-sidebar-item":!0,"vp-sidebar-heading":o.value===0,active:a.value,collapsible:l.value})),f=T(()=>l.value?a.value:!0),[u,p]=Fd(f.value),g=k=>{l.value&&(k.preventDefault(),p())},_=i.afterEach(k=>{wn(()=>{u.value=f.value})});Ko(()=>{_()});const y={props:n,item:r,depth:o,route:s,router:i,collapsible:l,isActive:a,itemClass:c,isOpenDefault:f,isOpen:u,toggleIsOpen:p,onClick:g,unregisterRouterHook:_,VPDropdownTransition:da,get AutoLink(){return Cn}};return Object.defineProperty(y,"__isScriptSetup",{enumerable:!1,value:!0}),y}}),um={class:"vp-sidebar-children"};function fm(e,t,n,r,o,s){const i=Go("VPSidebarItem",!0);return $(),Y("li",null,[r.item.link?($(),Ee(r.AutoLink,{key:0,class:Be(r.itemClass),config:r.item},null,8,["class","config"])):($(),Y("p",{key:1,tabindex:"0",class:Be(r.itemClass),onClick:r.onClick,onKeydown:Ju(r.onClick,["enter"])},[$t(le(r.item.text)+" ",1),r.collapsible?($(),Y("span",{key:0,class:Be(["arrow",r.isOpen?"down":"right"])},null,2)):Ae("",!0)],34)),"children"in r.item&&r.item.children.length?($(),Ee(r.VPDropdownTransition,{key:2},{default:xe(()=>[Lr(W("ul",um,[($(!0),Y(be,null,bt(r.item.children,l=>($(),Ee(i,{key:`${r.depth}${l.text}${l.link}`,item:l,depth:r.depth+1},null,8,["item","depth"]))),128))],512),[[Or,r.isOpen]])]),_:1})):Ae("",!0)])}const dm=we(cm,[["render",fm],["__file","VPSidebarItem.vue"]]),hm=he({__name:"VPSidebarItems",setup(e,{expose:t}){t();const n=St(),r=fs();qe(()=>{Ne(()=>n.hash,s=>{const i=document.querySelector(".vp-sidebar");if(!i)return;const l=document.querySelector(`.vp-sidebar a.vp-sidebar-item[href="${n.path}${s}"]`);if(!l)return;const{top:a,height:c}=i.getBoundingClientRect(),{top:f,height:u}=l.getBoundingClientRect();fa+c&&l.scrollIntoView(!1)})});const o={route:n,sidebarItems:r,VPSidebarItem:dm};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}}),pm={key:0,class:"vp-sidebar-items"};function gm(e,t,n,r,o,s){return r.sidebarItems.length?($(),Y("ul",pm,[($(!0),Y(be,null,bt(r.sidebarItems,i=>($(),Ee(r.VPSidebarItem,{key:`${i.text}${i.link}`,item:i},null,8,["item"]))),128))])):Ae("",!0)}const mm=we(hm,[["render",gm],["__file","VPSidebarItems.vue"]]),vm=he({__name:"VPSidebar",setup(e,{expose:t}){t();const n={VPNavbarItems:ha,VPSidebarItems:mm};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}}),_m={class:"vp-sidebar"};function bm(e,t,n,r,o,s){return $(),Y("aside",_m,[te(r.VPNavbarItems),Le(e.$slots,"top"),te(r.VPSidebarItems),Le(e.$slots,"bottom")])}const ym=we(vm,[["render",bm],["__file","VPSidebar.vue"]]),wm=he({__name:"Layout",setup(e,{expose:t}){t();const n=Sn(),r=at(),o=Re(),s=T(()=>r.value.navbar!==!1&&o.value.navbar!==!1),i=fs(),l=ue(!1),a=m=>{l.value=typeof m=="boolean"?m:!l.value},c={x:0,y:0},f=m=>{c.x=m.changedTouches[0].clientX,c.y=m.changedTouches[0].clientY},u=m=>{const S=m.changedTouches[0].clientX-c.x,V=m.changedTouches[0].clientY-c.y;Math.abs(S)>Math.abs(V)&&Math.abs(S)>40&&(S>0&&c.x<=80?a(!0):a(!1))},p=T(()=>r.value.externalLinkIcon??o.value.externalLinkIcon??!0),g=T(()=>[{"no-navbar":!s.value,"no-sidebar":!i.value.length,"sidebar-open":l.value,"external-link-icon":p.value},r.value.pageClass]);let _;qe(()=>{_=tn().afterEach(()=>{a(!1)})}),Fr(()=>{_()});const y=ra(),k=y.resolve,A=y.pending,b={page:n,frontmatter:r,themeLocale:o,shouldShowNavbar:s,sidebarItems:i,isSidebarOpen:l,toggleSidebar:a,touchStart:c,onTouchStart:f,onTouchEnd:u,enableExternalLinkIcon:p,containerClass:g,get unregisterRouterHook(){return _},set unregisterRouterHook(m){_=m},scrollPromise:y,onBeforeEnter:k,onBeforeLeave:A,VPHome:Cp,VPNavbar:Cg,VPPage:am,VPSidebar:ym};return Object.defineProperty(b,"__isScriptSetup",{enumerable:!1,value:!0}),b}});function Sm(e,t,n,r,o,s){return $(),Y("div",{class:Be(["vp-theme-container",r.containerClass]),onTouchstart:r.onTouchStart,onTouchend:r.onTouchEnd},[Le(e.$slots,"navbar",{},()=>[r.shouldShowNavbar?($(),Ee(r.VPNavbar,{key:0,onToggleSidebar:r.toggleSidebar},{before:xe(()=>[Le(e.$slots,"navbar-before")]),after:xe(()=>[Le(e.$slots,"navbar-after")]),_:3})):Ae("",!0)]),W("div",{class:"vp-sidebar-mask",onClick:t[0]||(t[0]=i=>r.toggleSidebar(!1))}),Le(e.$slots,"sidebar",{},()=>[te(r.VPSidebar,null,{top:xe(()=>[Le(e.$slots,"sidebar-top")]),bottom:xe(()=>[Le(e.$slots,"sidebar-bottom")]),_:3})]),Le(e.$slots,"page",{},()=>[r.frontmatter.home?($(),Ee(r.VPHome,{key:0})):($(),Ee(rr,{key:1,name:"fade-slide-y",mode:"out-in",onBeforeEnter:r.onBeforeEnter,onBeforeLeave:r.onBeforeLeave},{default:xe(()=>[($(),Ee(r.VPPage,{key:r.page.path},{top:xe(()=>[Le(e.$slots,"page-top")]),"content-top":xe(()=>[Le(e.$slots,"page-content-top")]),"content-bottom":xe(()=>[Le(e.$slots,"page-content-bottom")]),bottom:xe(()=>[Le(e.$slots,"page-bottom")]),_:3}))]),_:3},8,["onBeforeEnter","onBeforeLeave"]))])],34)}const pa=we(wm,[["render",Sm],["__file","Layout.vue"]]),Cm=he({__name:"NotFound",setup(e,{expose:t}){t();const n=sr(),r=Re(),o=r.value.notFound??["Not Found"],s=()=>o[Math.floor(Math.random()*o.length)],i=r.value.home??n.value,l=r.value.backToHome??"Back to home",a={routeLocale:n,themeLocale:r,messages:o,getMsg:s,homeLink:i,homeText:l,get RouteLink(){return zr}};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}}),Pm=e=>(fc("data-v-056523ff"),e=e(),dc(),e),km={class:"vp-theme-container"},Lm={class:"page"},Em={class:"theme-default-content"},xm=Pm(()=>W("h1",null,"404",-1));function Am(e,t,n,r,o,s){return $(),Y("div",km,[W("main",Lm,[W("div",Em,[xm,W("blockquote",null,le(r.getMsg()),1),te(r.RouteLink,{to:r.homeLink},{default:xe(()=>[$t(le(r.homeText),1)]),_:1},8,["to"])])])])}const Tm=we(Cm,[["render",Am],["__scopeId","data-v-056523ff"],["__file","NotFound.vue"]]),Rm=Ft({enhance({app:e,router:t}){ho("Badge")||e.component("Badge",Xh),ho("CodeGroup")||e.component("CodeGroup",Zh),ho("CodeGroupItem")||e.component("CodeGroupItem",np),e.component("VPSearch",()=>{const r=e.component("Docsearch")||e.component("SearchBox");return r?ke(r):null});const n=t.options.scrollBehavior;t.options.scrollBehavior=async(...r)=>(await ra().wait(),n(...r))},setup(){Hh(),Gh()},layouts:{Layout:pa,NotFound:Tm}}),Dm=Object.freeze(Object.defineProperty({__proto__:null,default:Rm},Symbol.toStringTag,{value:"Module"})),Om=Object.entries;var Im={autoLocale:!1,switchLocale:!1,localeConfig:{"/eng/":["en-US"]},defaultLocale:"/eng/",localeFallback:!0,defaultBehavior:"defaultLocale"};const Mm=Im;Om(Mm.localeConfig);Xd("VUEPRESS_REDIRECT_LOCALES",{});const $m=Ft({setup(){},rootComponents:[]}),Nm=Object.freeze(Object.defineProperty({__proto__:null,default:$m},Symbol.toStringTag,{value:"Module"}));var ie=(e=>(e.Collaborator="collaborator",e.Author="author",e.TechLead="tech lead",e.TeamLead="team lead",e.Developer="developer",e))(ie||{}),de=(e=>(e.ActiveDeveloped="actively-developed",e.PassivelyMaintained="passively-maintained",e.AsIs="as-is",e.Experimental="experimental",e.LookingForMaintainer="looking-for-maintainer",e.Deprecated="deprecated",e))(de||{}),D=(e=>(e.C="C",e.Go="Go",e.JavaScript="JS",e.TypeScript="TS",e.Rust="Rust",e.Python="Python",e.Php="PHP",e.Deno="Deno",e.NodeJS="NodeJS",e.Flask="Flask",e.React="React",e.Antd="Antd",e.Postgresql="PostgreSQL",e.Docker="Docker",e.Drone="Drone CI",e.Woodpecker="Woodpecker CI",e.Bash="Bash",e.TreeSitter="TreeSitter",e.Nix="Nix",e.Lua="Lua",e.Sqlite="Sqlite",e.Vue="Vue",e.Vuepress="Vuepress",e.Godot="Godot",e.Haskell="Haskell",e))(D||{});const Hm=[{name:"picsg",url:"/pleshevskiy/picsg",description:"A tool for steganographing information in a picture encoded using the Vernam cipher.",roles:[ie.Author],technologies:[D.Haskell],startDate:new Date("2024-04-13"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"Mindustry tools",url:"/pleshevskiy/mindustry-tools",description:"Tools for the Mindustry game",roles:[ie.Author],technologies:[D.Nix,D.Godot],startDate:new Date("2024-01-07"),status:de.PassivelyMaintained},{name:"Master Progress Rosmintrud tools",url:"https://rosmintrud.masterprogress.ru",description:"Internal service to prepare documents for the rosmintrud (SPA)",roles:[ie.TechLead],technologies:[D.Deno,D.Sqlite,D.TypeScript,D.Vue,D.Docker,D.Woodpecker,D.Nix],startDate:new Date("2023-07-03"),status:de.PassivelyMaintained},{name:"yandexgpt_tg_bot",url:"/pleshevskiy/yandexgpt_tg_bot",description:"The Telegram bot to describe article with link by YandexGPT.",roles:[ie.Author],technologies:[D.JavaScript,D.NodeJS,D.Nix],startDate:new Date("2023-06-27"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"tree-sitter-plpgsql",url:"/pleshevskiy/tree-sitter-plpgsql",description:"plpgsql grammar for tree-sitter",roles:[ie.Author],technologies:[D.C,D.JavaScript,D.TreeSitter,D.Nix],startDate:new Date("2023-01-05"),status:de.PassivelyMaintained},{name:"wd2",url:"/pleshevskiy/wd2",description:"A wrapper over d2 which allows to use additional configs from d2 file",roles:[ie.Author],technologies:[D.Bash,D.Nix],startDate:new Date("2022-12-12"),endDate:new Date("2023-07-31"),status:de.AsIs},{name:"tree-sitter-d2",url:"/pleshevskiy/tree-sitter-d2",description:"d2 grammar for tree-sitter",roles:[ie.Author],technologies:[D.C,D.JavaScript,D.TreeSitter,D.Nix],startDate:new Date("2022-12-04"),status:de.ActiveDeveloped},{name:"nix2lua",url:"/mynix/nix2lua",description:"This is a small but functional library that converts your nix configurations into lua format.",roles:[ie.Author],technologies:[D.Nix,D.Lua],startDate:new Date("2022-11-22"),status:de.PassivelyMaintained},{name:"vnetod",url:"/pleshevskiy/vnetod",description:"Dotenv section switcher",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-07-29"),status:de.PassivelyMaintained},{name:"estring",url:"/pleshevskiy/estring",description:"A simple way to parse a string using type annotations.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-07-23"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"enve",url:"/pleshevskiy/enve",description:"It helps you work with environment variables and convert it to any type using only type annotations",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-07-18"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"docker stack drone plugin",url:"/pleshevskiy/docker_stack",description:"Deploy to production using `docker stack deploy`",roles:[ie.Author],technologies:[D.Docker,D.Drone,D.Woodpecker],startDate:new Date("2022-06-06"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"dexios",url:"/github/dexios",description:"Dexios is a fast, secure, and open source command-line encryption tool.",roles:[ie.Collaborator],technologies:[D.Rust],startDate:new Date("2022-06-01"),endDate:new Date("2023-02-28")},{name:"recipes",url:"/pleshevskiy/recipes",description:"Site with recipes which cares about privacy",roles:[ie.Author],technologies:[D.TypeScript,D.Deno,D.Rust],startDate:new Date("2022-05-04"),status:de.PassivelyMaintained},{name:"pleshevski.ru",url:"/pleshevskiy/pleshevski.ru",description:"Source code of my personal site",roles:[ie.Author],technologies:[D.TypeScript,D.Vue,D.Vuepress,D.Nix],startDate:new Date("2022-03-16"),status:de.PassivelyMaintained},{name:"paren",url:"/pleshevskiy/paren",description:"Library for parsing and rendering information.",roles:[ie.Author],technologies:[D.TypeScript,D.Deno],startDate:new Date("2022-03-14"),endDate:new Date("2024-07-25"),status:de.Experimental},{name:"hwt",url:"/pleshevskiy/hwt",description:"healthy workaholic timer – A tool that keeps you from breaking your health by working all day.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2022-02-04"),endDate:new Date("2024-07-25"),status:de.AsIs},{name:"ood_persistence",url:"/pleshevskiy/ood_persistence",description:"Asynchronous and synchronous interfaces and persistence implementations for your OOD architecture ",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2021-10-12"),endDate:new Date("2021-10-21"),status:de.Deprecated},{name:"migra",url:"/pleshevskiy/migra",description:"Simple SQL migration manager for your project.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2021-01-31"),endDate:new Date("2022-03-17"),status:de.AsIs},{name:"espruino-starter",url:"/pleshevskiy/espruino-starter",description:"Quickly start creating your new project on the espruino board or a board based on it.",roles:[ie.Author],technologies:[D.JavaScript],startDate:new Date("2021-08-23"),status:de.AsIs},{name:"react-rest-request",url:"/pleshevskiy/react-rest-request",description:"Minimalistic REST API client for React inspired by Apollo.",roles:[ie.Author],technologies:[D.TypeScript,D.React],startDate:new Date("2020-10-04"),endDate:new Date("2023-03-02"),status:de.Deprecated},{name:"sonic-channel",url:"/pleshevskiy/sonic-channel",description:"Rust client for sonic search backend.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2020-07-18"),status:de.PassivelyMaintained},{name:"itconfig",url:"/pleshevskiy/itconfig",description:"Easy build a configs from environment variables and use it in globally.",roles:[ie.Author],technologies:[D.Rust],startDate:new Date("2019-12-22"),endDate:new Date("2022-07-24"),status:de.Deprecated},{name:"it-fsm",url:"/pleshevskiy/it-fsm",description:"Simple full-featured finite state machine for your project",roles:[ie.Author],technologies:[D.TypeScript,D.NodeJS,D.Deno],startDate:new Date("2019-10-11"),status:de.PassivelyMaintained},{name:"Cabinet Master Progress",url:"https://cabinet.masterprogress.ru",description:"Student's cabinet of the educational center Master Progress (SSR + SPA)",roles:[ie.TechLead],technologies:[D.Python,D.Flask,D.Postgresql,D.TypeScript,D.React,D.Docker,D.Woodpecker,D.Nix],startDate:new Date("2019-09-22"),status:de.PassivelyMaintained},{name:"genrss",url:"/pleshevskiy/genrss",description:"RSS generator for python",roles:[ie.Author],technologies:[D.Python],startDate:new Date("2019-07-23"),status:de.AsIs},{name:"marshmallow_pageinfo",url:"/pleshevskiy/marshmallow_pageinfo",description:"Page info marshmallow schema for api",roles:[ie.Author],technologies:[D.Python],startDate:new Date("2019-10-05"),endDate:new Date("2023-03-02"),status:de.AsIs},{name:"Binary Management",url:"https://www.binarymanagement.com",description:"Project management tool for interior designers",roles:[ie.Developer,ie.TechLead,ie.TeamLead],technologies:[D.TypeScript,D.NodeJS,D.React,D.Antd,D.Docker,D.Drone,D.Rust,D.Nix],startDate:new Date("2018-09-15"),status:de.ActiveDeveloped},{name:"Core Spirit",url:"https://corespirit.com",description:"Social platform focusing on human and planetary enhancement",roles:[ie.Developer],technologies:[D.TypeScript,D.NodeJS,D.Go,D.Python,D.React,D.Docker,D.Drone],startDate:new Date("2018-09-05"),endDate:new Date("2019-12-31")},{name:"Master Progress",url:"https://masterprogress.ru",description:"Main website of the educational center Master Progress (SSR + Forms)",roles:[ie.TechLead],technologies:[D.Python,D.Flask,D.JavaScript,D.Nix],startDate:new Date("2018-04-10"),status:de.PassivelyMaintained},{name:"ictmpl",url:"/pleshevskiy/ictmpl",description:"Generate projects from templates",roles:[ie.Author],technologies:[D.Python],startDate:new Date("2018-06-30"),endDate:new Date("2023-03-02"),status:de.AsIs},{name:"jjcrypto",url:"/pleshevskiy/jjcrypto",description:"Javascript encoder and decoder",roles:[ie.Author],technologies:[D.Php],startDate:new Date("2015-11-01"),endDate:new Date("2015-11-01"),status:de.AsIs}];function Vm(e){return e.toLocaleDateString(void 0,{year:"numeric",month:"2-digit",day:"2-digit"})}const jm=e=>e.url.startsWith("https://")?e.url:new URL(e.url,"https://git.pleshevski.ru").toString(),Fm=Object.freeze(Object.defineProperty({__proto__:null,getExternalLink:jm},Symbol.toStringTag,{value:"Module"}));function Tn(e){return(e==null?void 0:e.valueOf())??1/0}const Bm={name:"WorksPage",computed:{tableTheme(){return this.$themeLocale.worksTable??{}}}},Wm=he({...Bm,setup(e,{expose:t}){t();const n=T(()=>Hm.concat().sort((o,s)=>Tn(s.endDate)-Tn(o.endDate)||Tn(s.startDate)-Tn(o.startDate))),r={date2num:Tn,works:n,get renderDate(){return Vm},get w(){return Fm}};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),Um=["href"],Km=["innerHTML"],Gm={key:0};function qm(e,t,n,r,o,s){return $(),Y("table",null,[W("thead",null,[W("tr",null,[W("th",null,le(s.tableTheme.name),1),W("th",null,le(s.tableTheme.description),1),W("th",null,le(s.tableTheme.role),1),W("th",null,le(s.tableTheme.technologies),1),W("th",null,le(s.tableTheme.status),1),W("th",null,le(s.tableTheme.dates),1)])]),W("tbody",null,[($(!0),Y(be,null,bt(r.works,i=>($(),Y("tr",null,[W("td",null,[W("a",{rel:"nofollow noopener",href:r.w.getExternalLink(i)},le(i.name),9,Um)]),W("td",null,le(i.description),1),W("td",{innerHTML:i.roles.join(", ")},null,8,Km),W("td",null,le(i.technologies.join(", ")),1),W("td",null,le(i.status),1),W("td",null,[W("div",null,[W("small",{class:Be({grey:i.endDate})},le(r.renderDate(i.startDate)),3)]),i.endDate?($(),Y("div",Gm,[W("small",null,le(r.renderDate(i.endDate)),1)])):Ae("",!0)])]))),256))])])}const zm=we(Wm,[["render",qm],["__file","ChronologicalWorksTable.vue"]]),Jm={__name:"WorksPage",setup(e,{expose:t}){t();const n={ParentLayout:pa,get ChronologicalWorksTable(){return zm}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}},Qm={class:"works-table-wrapper"};function Ym(e,t,n,r,o,s){return $(),Ee(r.ParentLayout,null,{"page-bottom":xe(()=>[W("div",Qm,[te(r.ChronologicalWorksTable)])]),_:1})}const Xm=we(Jm,[["render",Ym],["__scopeId","data-v-765855fb"],["__file","WorksPage.vue"]]),Zm=Ft({layouts:{WorksPage:Xm}}),ev=Object.freeze(Object.defineProperty({__proto__:null,default:Zm},Symbol.toStringTag,{value:"Module"})),br=[lh,vh,Ch,xh,Ah,Mh,Dm,Nm,ev].map(e=>e.default).filter(Boolean),tv=JSON.parse('{"base":"/","lang":"ru-RU","title":"Дмитрий Плешевский","description":" ","head":[],"locales":{"/":{"lang":"ru-RU","title":"Дмитрий Плешевский"},"/eng/":{"lang":"en-US","title":"Dmitriy Pleshevskiy"}}}');var Dn=yn(tv),nv=qf,rv=()=>{const e=bd({history:nv(Dl("/")),routes:[{name:"vuepress-route",path:"/:catchAll(.*)",components:{}}],scrollBehavior:(t,n,r)=>r||(t.hash?{el:t.hash}:{top:0})});return e.beforeResolve(async(t,n)=>{if(t.path!==n.path||n===mt){const r=qn(t.fullPath);if(r.path!==t.fullPath)return r.path;const o=await r.loader();t.meta={...r.meta,_pageChunk:o}}else t.path===n.path&&(t.meta=n.meta)}),e},ov=e=>{e.component("ClientOnly",ns),e.component("Content",rs),e.component("RouteLink",zr)},sv=(e,t,n)=>{const r=T(()=>t.currentRoute.value.path),o=nc((k,A)=>({get(){return k(),t.currentRoute.value.meta._pageChunk},set(b){t.currentRoute.value.meta._pageChunk=b,A()}})),s=T(()=>Kt.resolveLayouts(n)),i=T(()=>Kt.resolveRouteLocale(Dn.value.locales,r.value)),l=T(()=>Kt.resolveSiteLocaleData(Dn.value,i.value)),a=T(()=>o.value.comp),c=T(()=>o.value.data),f=T(()=>c.value.frontmatter),u=T(()=>Kt.resolvePageHeadTitle(c.value,l.value)),p=T(()=>Kt.resolvePageHead(u.value,f.value,l.value)),g=T(()=>Kt.resolvePageLang(c.value,l.value)),_=T(()=>Kt.resolvePageLayout(c.value,s.value)),y={layouts:s,pageData:c,pageComponent:a,pageFrontmatter:f,pageHead:p,pageHeadTitle:u,pageLang:g,pageLayout:_,redirects:Ao,routeLocale:i,routePath:r,routes:pn,siteData:Dn,siteLocaleData:l};return e.provide(es,y),Object.defineProperties(e.config.globalProperties,{$frontmatter:{get:()=>f.value},$head:{get:()=>p.value},$headTitle:{get:()=>u.value},$lang:{get:()=>g.value},$page:{get:()=>c.value},$routeLocale:{get:()=>i.value},$site:{get:()=>Dn.value},$siteLocale:{get:()=>l.value},$withBase:{get:()=>os}}),y},iv=()=>{const e=Sd(),t=Cd();let n=[];const r=()=>{e.value.forEach(i=>{const l=lv(i);l&&n.push(l)})},o=()=>{const i=[];return e.value.forEach(l=>{const a=av(l);a&&i.push(a)}),i},s=()=>{document.documentElement.lang=t.value;const i=o();n.forEach((l,a)=>{const c=i.findIndex(f=>l.isEqualNode(f));c===-1?(l.remove(),delete n[a]):i.splice(c,1)}),i.forEach(l=>document.head.appendChild(l)),n=[...n.filter(l=>!!l),...i]};Xt(Ld,s),qe(()=>{r(),Ne(e,s,{immediate:!1})})},lv=([e,t,n=""])=>{const r=Object.entries(t).map(([l,a])=>st(a)?`[${l}=${JSON.stringify(a)}]`:a===!0?`[${l}]`:"").join(""),o=`head > ${e}${r}`;return Array.from(document.querySelectorAll(o)).find(l=>l.innerText===n)||null},av=([e,t,n])=>{if(!st(e))return null;const r=document.createElement(e);return Yo(t)&&Object.entries(t).forEach(([o,s])=>{st(s)?r.setAttribute(o,s):s===!0&&r.setAttribute(o,"")}),st(n)&&r.appendChild(document.createTextNode(n)),r},cv=Xu,uv=async()=>{var n;const e=cv({name:"Vuepress",setup(){var s;iv();for(const i of br)(s=i.setup)==null||s.call(i);const r=br.flatMap(({rootComponents:i=[]})=>i.map(l=>ke(l))),o=Pd();return()=>[ke(o.value),r]}}),t=rv();ov(e),sv(e,t,br);for(const r of br)await((n=r.enhance)==null?void 0:n.call(r,{app:e,router:t,siteData:Dn}));return e.use(t),{app:e,router:t}};uv().then(({app:e,router:t})=>{t.isReady().then(()=>{e.mount("#app")})});export{we as _,W as a,$t as b,Y as c,uv as createVueApp,te as d,du as e,$ as o,Go as r,xe as w}; +function __vite__mapDeps(indexes) { + if (!__vite__mapDeps.viteFileDeps) { + __vite__mapDeps.viteFileDeps = [] + } + return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) +} diff --git a/dist/assets/index.html-DLgZGocO.js b/dist/assets/index.html-DLgZGocO.js deleted file mode 100644 index 3bad4ea..0000000 --- a/dist/assets/index.html-DLgZGocO.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as i,c as a,a as t,b as e,d as o,w as c,e as n,r as d,o as r}from"./app-Dg9P_Zls.js";const s={},h=n('

Общие сведения

Меня зовут Дмитрий Плешевский.

Я энтузиаст программного обеспечения с открытым исходным кодом, ведущий разработчик програмного обеспечения, архитектор, руководитель команды, а так же ментор.

Умения

Языки программирования:

  • TypeScript (предпочитаю, твёрдый 9-летний опыт)
  • SQL (предпочитаю, твёрдый 8-летний опыт)
  • Rust (предпочитаю, 5-летний опыт)
  • Python (твёрдый 9-летний опыт)
  • Haskell
  • Bash (8-летний опыт)
  • Java
  • C#
  • C++

Хранилища данных:

  • PostgreSQL (предпочитаю, твёрдый 8-летний опыт)
  • MySQL
  • Sqlite
  • MsSQL
  • MongoDB
  • Reddis
  • Minio (предпочитаю, твердый 5-летний опыт)

Я так же имею большой опыт в создании следующих типов приложений:

  • Традиционные (SSR + Forms)
  • API (REST/GraphQL/WebSocket/EventSource)
  • Динамическое (SPA)
  • Гибридное (SSR + SPA)
  • Консольные
  • Кроссплатформенные

Stack

Backend (Rust)

  • axum (предпочитаю, твёрдый 2-летний опыт)
  • async-graphql (предпочитаю, твёрдый 2-летний опыт)
  • shaku (предпочитаю, твёрдый 2-летний опыт)
  • bb8 + postgres-types (предпочитаю, твёрдый 5-летний опыт)
  • diesel (2-летний опыт)

Backend (Node.JS)

  • Apollo (твёрдый 5-летний опыт)
  • Express (твёрдый 9-летний опыт)
  • Nest.JS
  • Knex.js / Objection.js (твёрдый 5-летний опыт)
  • Sequelize

Frontend

  • React (твёрдый 8-летний опыт)
  • VueJS (предпочитаю, твёрдый 4-летний опыт)
  • Cypress (предпочитаю, твёрдый 3-летний опыт)
  • JQuery
  • Antd / Antdv
  • PostCSS (предпочитаю, твёрдый 5-летний опыт)
  • Sass (предпочитаю, твёрдый 8-летний опыт)
  • Less (слабый 4-летний опыт)

DevOps

  • NixOS / NixOps / Nix dev shell (предпочитаю, твёрдый 3-летний опыт)
  • Docker Swarm (твёрдый 6-летний опыт)
  • Kubernetes (слабый 5-летний опыт)
  • Woodpecker CI (твёрдый 4-летний опыт)
  • Drone CI (твёрдый 3-летний опыт)
  • Gitlab CI (твёрдый 7-летний опыт)
  • GitHub Actions (4-летний опыт)

Интересы

Open-source проекты - моя страсть! Разрабатываю, поддерживаю и улучшаю проекты в своё свободное время.

Помимо программирования я люблю готовить и проводить время со своей любимой семьей!

Контакты

Telegram: Dmitriy Pleshevskiy

Matrix: @pleshevskiy:matrix.org

Email: dmitriy[at]pleshevski[dot]ru

Ссылки

',29);function p(u,m){const l=d("RouteLink");return r(),a("div",null,[t("p",null,[e("Всегда актуальная ссылка на "),o(l,{to:"/"},{default:c(()=>[e("резюме")]),_:1}),e(".")]),h])}const b=i(s,[["render",p],["__file","index.html.vue"]]),f=JSON.parse('{"path":"/","title":"Резюме","lang":"ru-RU","frontmatter":{"home":true,"title":"Резюме","heroText":null,"head":[["link",{"rel":"alternate","hreflang":"en-us","href":"https://pleshevski.ru/eng/"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/"}],["meta",{"property":"og:site_name","content":"Дмитрий Плешевский"}],["meta",{"property":"og:title","content":"Резюме"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"ru-RU"}],["meta",{"property":"og:locale:alternate","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-07-25T12:12:09.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T12:12:09.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Резюме\\"}"]]},"headers":[{"level":2,"title":"Общие сведения","slug":"общие-сведения","link":"#общие-сведения","children":[]},{"level":2,"title":"Умения","slug":"умения","link":"#умения","children":[]},{"level":2,"title":"Stack","slug":"stack","link":"#stack","children":[]},{"level":2,"title":"Интересы","slug":"интересы","link":"#интересы","children":[]},{"level":2,"title":"Контакты","slug":"контакты","link":"#контакты","children":[]},{"level":2,"title":"Ссылки","slug":"ссылки","link":"#ссылки","children":[]}],"git":{"updatedTime":1721909529000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":3}]},"filePathRelative":"index.md"}');export{b as comp,f as data}; diff --git a/dist/assets/index.html-DdOSz3i9.js b/dist/assets/index.html-DdOSz3i9.js new file mode 100644 index 0000000..ffe3e25 --- /dev/null +++ b/dist/assets/index.html-DdOSz3i9.js @@ -0,0 +1 @@ +import{_ as i,c as a,a as t,b as e,d as o,w as c,e as n,r,o as d}from"./app-OMtl6IVo.js";const s={},h=n('

Общие сведения

Меня зовут Дмитрий Плешевский.

Я энтузиаст программного обеспечения с открытым исходным кодом, ведущий разработчик програмного обеспечения, архитектор, руководитель команды, а так же ментор.

Умения

Языки программирования:

  • TypeScript (предпочитаю, твёрдый 9-летний опыт)
  • SQL (предпочитаю, твёрдый 8-летний опыт)
  • Rust (предпочитаю, 5-летний опыт)
  • Python (твёрдый 9-летний опыт)
  • Haskell
  • Bash (8-летний опыт)
  • Java
  • C#
  • C++

Хранилища данных:

  • PostgreSQL (предпочитаю, твёрдый 8-летний опыт)
  • MySQL
  • Sqlite
  • MsSQL
  • MongoDB
  • Reddis
  • Minio (предпочитаю, твердый 5-летний опыт)

Я так же имею большой опыт в создании следующих типов приложений:

  • Традиционные (SSR + Forms)
  • API (REST/GraphQL/WebSocket/EventSource)
  • Динамическое (SPA)
  • Гибридное (SSR + SPA)
  • Консольные
  • Кроссплатформенные

Stack

Backend (Rust)

  • axum (предпочитаю, твёрдый 2-летний опыт)
  • async-graphql (предпочитаю, твёрдый 2-летний опыт)
  • shaku (предпочитаю, твёрдый 2-летний опыт)
  • bb8 + postgres-types (предпочитаю, твёрдый 5-летний опыт)
  • diesel (2-летний опыт)

Backend (Node.JS)

  • Apollo (твёрдый 5-летний опыт)
  • Express (твёрдый 9-летний опыт)
  • Nest.JS
  • Knex.js / Objection.js (твёрдый 5-летний опыт)
  • Sequelize

Frontend

  • React (твёрдый 8-летний опыт)
  • VueJS (предпочитаю, твёрдый 4-летний опыт)
  • Cypress (предпочитаю, твёрдый 3-летний опыт)
  • JQuery
  • Antd / Antdv
  • PostCSS (предпочитаю, твёрдый 5-летний опыт)
  • Sass (предпочитаю, твёрдый 8-летний опыт)
  • Less (слабый 4-летний опыт)

DevOps

  • NixOS / NixOps / Nix dev shell (предпочитаю, твёрдый 3-летний опыт)
  • Docker Swarm (твёрдый 6-летний опыт)
  • Kubernetes (слабый 5-летний опыт)
  • Woodpecker CI (твёрдый 4-летний опыт)
  • Drone CI (твёрдый 3-летний опыт)
  • Gitlab CI (твёрдый 7-летний опыт)
  • GitHub Actions (4-летний опыт)

Интересы

Open-source проекты - моя страсть! Разрабатываю, поддерживаю и улучшаю проекты в своё свободное время.

Помимо программирования я люблю готовить и проводить время со своей любимой семьей!

Контакты

Telegram: Dmitriy Pleshevskiy

Matrix: @pleshevskiy:matrix.org

Email: dmitriy[at]pleshevski[dot]ru

Ссылки

',29);function p(u,m){const l=r("RouteLink");return d(),a("div",null,[t("p",null,[e("Всегда актуальная ссылка на "),o(l,{to:"/"},{default:c(()=>[e("резюме")]),_:1}),e(".")]),h])}const b=i(s,[["render",p],["__file","index.html.vue"]]),f=JSON.parse('{"path":"/","title":"Резюме","lang":"ru-RU","frontmatter":{"home":true,"title":"Резюме","heroText":null,"head":[["link",{"rel":"alternate","hreflang":"en-us","href":"https://pleshevski.ru/eng/"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/"}],["meta",{"property":"og:site_name","content":"Дмитрий Плешевский"}],["meta",{"property":"og:title","content":"Резюме"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"ru-RU"}],["meta",{"property":"og:locale:alternate","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-07-25T12:12:09.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T12:12:09.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Резюме\\"}"]]},"headers":[{"level":2,"title":"Общие сведения","slug":"общие-сведения","link":"#общие-сведения","children":[]},{"level":2,"title":"Умения","slug":"умения","link":"#умения","children":[]},{"level":2,"title":"Stack","slug":"stack","link":"#stack","children":[]},{"level":2,"title":"Интересы","slug":"интересы","link":"#интересы","children":[]},{"level":2,"title":"Контакты","slug":"контакты","link":"#контакты","children":[]},{"level":2,"title":"Ссылки","slug":"ссылки","link":"#ссылки","children":[]}],"git":{"updatedTime":1721909529000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":3}]},"filePathRelative":"index.md"}');export{b as comp,f as data}; diff --git a/dist/assets/index.html-zZCC-31N.js b/dist/assets/index.html-DhiGfEXH.js similarity index 66% rename from dist/assets/index.html-zZCC-31N.js rename to dist/assets/index.html-DhiGfEXH.js index 416827b..61dcd5b 100644 --- a/dist/assets/index.html-zZCC-31N.js +++ b/dist/assets/index.html-DhiGfEXH.js @@ -1 +1 @@ -import{_ as l,c as a,a as r,b as e,d as o,w as s,e as t,r as n,o as d}from"./app-Dg9P_Zls.js";const c={},p=t('

Overview

My name is Dmitriy Pleshevskiy.

I'm an open source software enthusiast, a lead software developer, architect, team leader and also mentor.

Skills

Programming Languages:

  • TypeScript (prefer, solid 9-year exp)
  • SQL (prefer, solid 8-year exp)
  • Rust (prefer, solid 5-year exp)
  • Python (solid 9-year exp)
  • Haskell
  • Bash (8-year exp)
  • Java
  • C#
  • C++

Repositories:

  • PostgreSQL (prefer, solid 8-year exp)
  • MySQL
  • Sqlite
  • MsSQL
  • MongoDB
  • Reddis
  • Minio (prefer, solid 5-year exp)

I also have extensive experience in creating the following applications:

  • Traditional (SSR + Forms)
  • API (REST/GraphQL/WebSocket/EventSource)
  • Dynamic (SPA)
  • Hybrid (SSR + SPA)
  • Console
  • Cross-platform

Stack

Backend (Rust)

  • axum (prefer, solid 2-year exp)
  • async-graphql (prefer, solid 2-year exp)
  • shaku (prefer, solid 2-year exp)
  • bb8 + postgres-types (prefer, solid 5-year exp)
  • diesel (2-year exp)

Backend (Node.JS)

  • Apollo (solid 5-year exp)
  • Express (solid 9-year exp)
  • Nest.JS
  • Knex.js / Objection.js (solid 5-year exp)
  • Sequelize

Frontend

  • React (solid 8-year exp)
  • VueJS (prefer, solid 3-year exp)
  • Cypress (prefer, solid 3-year exp)
  • JQuery
  • Antd / Antdv
  • PostCSS (prefer, solid 5-year exp)
  • Sass (prefer, solid 8-year exp)
  • Less (weak 4-year exp)

DevOps

  • NixOS / NixOps / Nix dev shell (prefer, solid 3-year exp)
  • Docker Swarm (solid 6-year exp)
  • Kubernetes (weak 5-year exp)
  • Woodpecker CI (prefer, solid 4-year exp)
  • Drone CI (solid 3-year exp)
  • Gitlab CI (solid 7-year exp)
  • GitHub Actions (4-year exp)

Interests

Open-source projects are my passion! I develop, maintain and improve projects in my spare time.

Besides programming, I love to cook and spend time with my beloved family!

Contacts

Telegram: Dmitriy Pleshevskiy

Matrix: @pleshevskiy:matrix.org

Email: dmitriy[at]pleshevski[dot]ru

',29);function h(m,u){const i=n("RouteLink");return d(),a("div",null,[r("p",null,[e("Always up-to-date link to "),o(i,{to:"/eng/"},{default:s(()=>[e("resume")]),_:1}),e(".")]),p])}const x=l(c,[["render",h],["__file","index.html.vue"]]),k=JSON.parse('{"path":"/eng/","title":"Resume","lang":"en-US","frontmatter":{"home":true,"title":"Resume","heroText":null,"head":[["link",{"rel":"alternate","hreflang":"ru-ru","href":"https://pleshevski.ru/"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/eng/"}],["meta",{"property":"og:site_name","content":"Dmitriy Pleshevskiy"}],["meta",{"property":"og:title","content":"Resume"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:locale:alternate","content":"ru-RU"}],["meta",{"property":"og:updated_time","content":"2024-07-25T12:12:09.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T12:12:09.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Resume\\"}"]]},"headers":[{"level":2,"title":"Overview","slug":"overview","link":"#overview","children":[]},{"level":2,"title":"Skills","slug":"skills","link":"#skills","children":[]},{"level":2,"title":"Stack","slug":"stack","link":"#stack","children":[]},{"level":2,"title":"Interests","slug":"interests","link":"#interests","children":[]},{"level":2,"title":"Contacts","slug":"contacts","link":"#contacts","children":[]},{"level":2,"title":"Links","slug":"links","link":"#links","children":[]}],"git":{"updatedTime":1721909529000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":3}]},"filePathRelative":"eng/index.md"}');export{x as comp,k as data}; +import{_ as l,c as a,a as r,b as e,d as o,w as s,e as t,r as n,o as d}from"./app-OMtl6IVo.js";const c={},p=t('

Overview

My name is Dmitriy Pleshevskiy.

I'm an open source software enthusiast, a lead software developer, architect, team leader and also mentor.

Skills

Programming Languages:

  • TypeScript (prefer, solid 9-year exp)
  • SQL (prefer, solid 8-year exp)
  • Rust (prefer, solid 5-year exp)
  • Python (solid 9-year exp)
  • Haskell
  • Bash (8-year exp)
  • Java
  • C#
  • C++

Repositories:

  • PostgreSQL (prefer, solid 8-year exp)
  • MySQL
  • Sqlite
  • MsSQL
  • MongoDB
  • Reddis
  • Minio (prefer, solid 5-year exp)

I also have extensive experience in creating the following applications:

  • Traditional (SSR + Forms)
  • API (REST/GraphQL/WebSocket/EventSource)
  • Dynamic (SPA)
  • Hybrid (SSR + SPA)
  • Console
  • Cross-platform

Stack

Backend (Rust)

  • axum (prefer, solid 2-year exp)
  • async-graphql (prefer, solid 2-year exp)
  • shaku (prefer, solid 2-year exp)
  • bb8 + postgres-types (prefer, solid 5-year exp)
  • diesel (2-year exp)

Backend (Node.JS)

  • Apollo (solid 5-year exp)
  • Express (solid 9-year exp)
  • Nest.JS
  • Knex.js / Objection.js (solid 5-year exp)
  • Sequelize

Frontend

  • React (solid 8-year exp)
  • VueJS (prefer, solid 3-year exp)
  • Cypress (prefer, solid 3-year exp)
  • JQuery
  • Antd / Antdv
  • PostCSS (prefer, solid 5-year exp)
  • Sass (prefer, solid 8-year exp)
  • Less (weak 4-year exp)

DevOps

  • NixOS / NixOps / Nix dev shell (prefer, solid 3-year exp)
  • Docker Swarm (solid 6-year exp)
  • Kubernetes (weak 5-year exp)
  • Woodpecker CI (prefer, solid 4-year exp)
  • Drone CI (solid 3-year exp)
  • Gitlab CI (solid 7-year exp)
  • GitHub Actions (4-year exp)

Interests

Open-source projects are my passion! I develop, maintain and improve projects in my spare time.

Besides programming, I love to cook and spend time with my beloved family!

Contacts

Telegram: Dmitriy Pleshevskiy

Matrix: @pleshevskiy:matrix.org

Email: dmitriy[at]pleshevski[dot]ru

',29);function h(m,u){const i=n("RouteLink");return d(),a("div",null,[r("p",null,[e("Always up-to-date link to "),o(i,{to:"/eng/"},{default:s(()=>[e("resume")]),_:1}),e(".")]),p])}const x=l(c,[["render",h],["__file","index.html.vue"]]),k=JSON.parse('{"path":"/eng/","title":"Resume","lang":"en-US","frontmatter":{"home":true,"title":"Resume","heroText":null,"head":[["link",{"rel":"alternate","hreflang":"ru-ru","href":"https://pleshevski.ru/"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/eng/"}],["meta",{"property":"og:site_name","content":"Dmitriy Pleshevskiy"}],["meta",{"property":"og:title","content":"Resume"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:locale:alternate","content":"ru-RU"}],["meta",{"property":"og:updated_time","content":"2024-07-25T12:12:09.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T12:12:09.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Resume\\"}"]]},"headers":[{"level":2,"title":"Overview","slug":"overview","link":"#overview","children":[]},{"level":2,"title":"Skills","slug":"skills","link":"#skills","children":[]},{"level":2,"title":"Stack","slug":"stack","link":"#stack","children":[]},{"level":2,"title":"Interests","slug":"interests","link":"#interests","children":[]},{"level":2,"title":"Contacts","slug":"contacts","link":"#contacts","children":[]},{"level":2,"title":"Links","slug":"links","link":"#links","children":[]}],"git":{"updatedTime":1721909529000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":3}]},"filePathRelative":"eng/index.md"}');export{x as comp,k as data}; diff --git a/dist/assets/style-BACGJ9Qw.css b/dist/assets/style-BACGJ9Qw.css new file mode 100644 index 0000000..d20b49c --- /dev/null +++ b/dist/assets/style-BACGJ9Qw.css @@ -0,0 +1 @@ +@charset "UTF-8";.vp-back-to-top-button{position:fixed!important;inset-inline-end:1rem;bottom:4rem;z-index:100;width:48px;height:48px;padding:12px;border-width:0;border-radius:50%;background:var(--back-to-top-bg-color);color:var(--back-to-top-color);box-shadow:2px 2px 10px 4px var(--back-to-top-shadow);cursor:pointer}@media (max-width: 959px){.vp-back-to-top-button{transform:scale(.8);transform-origin:100% 100%}}@media print{.vp-back-to-top-button{display:none}}.vp-back-to-top-button:hover{color:var(--back-to-top-color-hover)}.vp-back-to-top-button .back-to-top-icon{overflow:hidden;width:24px;height:24px;margin:0 auto;background:var(--back-to-top-icon-color);-webkit-mask-image:var(--back-to-top-icon);mask-image:var(--back-to-top-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover}.vp-scroll-progress{position:absolute;right:-2px;bottom:-2px;width:52px;height:52px}.vp-scroll-progress svg{width:100%;height:100%}.vp-scroll-progress circle{opacity:.9;transform:rotate(-90deg);transform-origin:50% 50%}.back-to-top-enter-active,.back-to-top-leave-active{transition:opacity .3s}.back-to-top-enter-from,.back-to-top-leave-to{opacity:0}:root{--back-to-top-z-index: 5;--back-to-top-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2048%2048'%3e%3cpath%20fill='none'%20stroke='currentColor'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='4'%20d='M24.008%2014.1V42M12%2026l12-12l12%2012M12%206h24'%20/%3e%3c/svg%3e");--back-to-top-bg-color: #fff;--back-to-top-color: #3eaf7c;--back-to-top-icon-color: currentcolor;--back-to-top-color-hover: #71cda3;--back-to-top-shadow: rgb(0 0 0 / 20%)}:root{--code-copy-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2' /%3e%3c/svg%3e");--code-copied-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4' /%3e%3c/svg%3e");--copy-code-color: var(--code-c-line-number, #9e9e9e);--copy-code-hover: var(--code-highlight-bg-color, rgb(0 0 0 / 50%))}.vp-copy-code-button{position:absolute;top:.5em;right:.5em;z-index:5;width:2.5rem;height:2.5rem;padding:0;border-width:0;border-radius:.5rem;background:transparent;outline:none;opacity:0;cursor:pointer;transition:opacity .4s}@media print{.vp-copy-code-button{display:none}}.vp-copy-code-button:before{content:"";display:inline-block;width:1.25rem;height:1.25rem;padding:.625rem;background:currentcolor;color:var(--copy-code-color);font-size:1.25rem;-webkit-mask-image:var(--code-copy-icon);mask-image:var(--code-copy-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:1em;mask-size:1em;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.vp-copy-code-button:focus,.vp-copy-code-button.copied{opacity:1}.vp-copy-code-button:hover,.vp-copy-code-button.copied{background:var(--copy-code-hover)}.vp-copy-code-button.copied:before{-webkit-mask-image:var(--code-copied-icon);mask-image:var(--code-copied-icon)}.vp-copy-code-button.copied:after{content:attr(data-copied);position:absolute;top:0;right:calc(100% + .25rem);display:block;height:1.25rem;padding:.625rem;border-radius:.5rem;background:var(--copy-code-hover);color:var(--copy-code-color);font-weight:500;line-height:1.25rem;white-space:nowrap}.copy-code-disabled .vp-copy-code-button{display:none}body:not(.copy-code-disabled) div[class*=language-]:hover:before{display:none}body:not(.copy-code-disabled) div[class*=language-]:hover .vp-copy-code-button{opacity:1}:root{--nprogress-color: #29d;--nprogress-z-index: 1031}#nprogress{pointer-events:none}#nprogress .bar{position:fixed;top:0;left:0;z-index:var(--nprogress-z-index);width:100%;height:2px;background:var(--nprogress-color)}:root{--code-padding-x: 1.25rem;--code-padding-y: 1rem;--code-border-radius: 6px;--code-line-height: 1.6;--code-font-family: consolas, monaco, "Andale Mono", "Ubuntu Mono", monospace}div[class*=language-]{position:relative;border-radius:var(--code-border-radius);background-color:var(--code-c-bg)}div[class*=language-]:before{content:attr(data-title);position:absolute;top:.8em;right:1em;z-index:3;color:var(--code-c-text);font-size:.75rem}div[class*=language-] pre{position:relative;z-index:1;overflow-x:auto;margin:.75rem 0;border-radius:var(--code-border-radius);font-size:14px;font-family:var(--code-font-family);line-height:var(--code-line-height)}div[class*=language-] pre code{display:block;box-sizing:border-box;width:-moz-fit-content;width:fit-content;min-width:100%;padding:var(--code-padding-y) var(--code-padding-x);background-color:transparent!important;overflow-wrap:unset;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}:root{--code-c-text: #f8f8f2;--code-c-bg: #2e3440;--code-c-highlight-bg: #343d4e;--code-c-line-number: rgba(248, 248, 242, .67)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#636f88}.token.punctuation{color:#81a1c1}.namespace{opacity:.7}.token.property,.token.tag,.token.constant,.token.symbol,.token.deleted{color:#81a1c1}.token.number{color:#b48ead}.token.boolean{color:#81a1c1}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a3be8c}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string,.token.variable{color:#81a1c1}.token.atrule,.token.attr-value,.token.function,.token.class-name{color:#88c0d0}.token.keyword{color:#81a1c1}.token.regex,.token.important{color:#ebcb8b}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}:root{--code-line-number-width: 3.5rem}div[class*=language-]:not(.line-numbers-mode) .line-numbers{display:none}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;top:0;left:0;width:var(--code-line-number-width);height:100%;border-right:1px solid var(--code-highlight-bg-color);border-radius:var(--code-border-radius) 0 0 var(--code-border-radius)}div[class*=language-].line-numbers-mode pre{vertical-align:middle;margin-left:var(--code-line-number-width)}div[class*=language-].line-numbers-mode code{padding-left:1rem}div[class*=language-].line-numbers-mode .line-numbers{counter-reset:line-number;position:absolute;top:0;width:var(--code-line-number-width);padding-top:var(--code-padding-y);color:var(--code-c-line-number, --code-c-text);font-size:.875em;line-height:var(--code-line-height);text-align:center}div[class*=language-].line-numbers-mode .line-number{position:relative;z-index:3;font-family:var(--code-font-family);-webkit-user-select:none;-moz-user-select:none;user-select:none}div[class*=language-].line-numbers-mode .line-number:before{content:counter(line-number);counter-increment:line-number}.vp-badge{display:inline-block;vertical-align:top;height:18px;padding:0 6px;border-radius:3px;color:var(--c-bg);font-weight:600;font-size:14px;line-height:18px;transition:color var(--t-color),background-color var(--t-color)}.vp-badge.tip{background-color:var(--c-badge-tip)}.vp-badge.warning{background-color:var(--c-badge-warning);color:var(--c-badge-warning-text)}.vp-badge.danger{background-color:var(--c-badge-danger);color:var(--c-badge-danger-text)}.vp-badge+.vp-badge{margin-left:5px}.code-group-nav{margin-top:.85rem;margin-bottom:calc(-1.7rem - 6px);padding-top:10px;padding-bottom:calc(1.7rem - 6px);padding-left:10px;border-top-left-radius:6px;border-top-right-radius:6px;background-color:var(--c-code-group-tab-bg)}@media (max-width: 419px){.code-group-nav{margin-right:-1.5rem;margin-left:-1.5rem;border-radius:0}}.code-group-nav-tab{padding:5px;border:0;background-color:transparent;color:var(--c-code-group-tab-title);font-weight:600;font-size:.85em;line-height:1.4;cursor:pointer}.code-group-nav-tab:focus{outline:none}.code-group-nav-tab:focus-visible{outline:1px solid var(--c-code-group-tab-outline)}.code-group-nav-tab.active{border-bottom:var(--c-code-group-tab-active-border) 1px solid}.code-group-item{display:none}.code-group-item.active{display:block}.code-group-item>pre{background-color:orange}.vp-features{display:flex;flex-wrap:wrap;place-content:stretch space-between;align-items:flex-start;margin-top:2.5rem;padding:1.2rem 0;border-top:1px solid var(--c-border);transition:border-color var(--t-color)}@media (max-width: 719px){.vp-features{flex-direction:column}}.vp-feature{flex-grow:1;flex-basis:30%;max-width:30%}@media (max-width: 719px){.vp-feature{max-width:100%;padding:0 2.5rem}}.vp-feature h2{padding-bottom:0;border-bottom:none;color:var(--c-text-light);font-weight:500;font-size:1.4rem}@media (max-width: 419px){.vp-feature h2{font-size:1.25rem}}.vp-feature p{color:var(--c-text-lighter)}.vp-footer{padding:2.5rem;border-top:1px solid var(--c-border);color:var(--c-text-lighter);text-align:center;transition:border-color var(--t-color)}.vp-hero{text-align:center}.vp-hero-image{display:block;max-width:100%;max-height:280px;margin:3rem auto 1.5rem}@media (max-width: 419px){.vp-hero-image{max-height:210px;margin:2rem auto 1.2rem}}#main-title{font-size:3rem}@media (max-width: 419px){#main-title{font-size:2rem}}#main-title,.vp-hero-description,.vp-hero-actions{margin:1.8rem auto}@media (max-width: 419px){#main-title,.vp-hero-description,.vp-hero-actions{margin:1.2rem auto}}.vp-hero-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.vp-hero-description{max-width:35rem;color:var(--c-text-lightest);font-size:1.6rem;line-height:1.3}@media (max-width: 419px){.vp-hero-description{font-size:1.2rem}}.vp-hero-action-button{display:inline-block;box-sizing:border-box;padding:.8rem 1.6rem;border-width:2px;border-style:solid;border-radius:4px;font-size:1.2rem;transition:background-color var(--t-color)}@media (max-width: 419px){.vp-hero-action-button{padding:.6rem 1.2rem;font-size:1rem}}.vp-hero-action-button.primary{border-color:var(--c-brand);background-color:var(--c-brand);color:var(--c-bg)}.vp-hero-action-button.primary:hover{background-color:var(--c-brand-light)}.vp-hero-action-button.secondary{border-color:var(--c-brand);background-color:var(--c-bg);color:var(--c-brand)}.vp-hero-action-button.secondary:hover{background-color:var(--c-brand-light);color:var(--c-bg)}.vp-home{display:block;max-width:var(--homepage-width);margin:0 auto;padding:var(--navbar-height) 2rem 0}@media (max-width: 419px){.vp-home{padding-right:1.5rem;padding-left:1.5rem}}.vp-home .theme-default-content{margin:0;padding:0}.vp-site-logo{vertical-align:top;height:var(--navbar-line-height);margin-right:var(--navbar-padding-v)}.vp-site-name{position:relative;color:var(--c-text);font-weight:600;font-size:1.3rem}@media screen and (max-width: 719px){.vp-site-name{display:block;overflow:hidden;width:calc(100vw - 11rem);text-overflow:ellipsis;white-space:nowrap}}.vp-dropdown-enter-from,.vp-dropdown-leave-to{height:0!important}.vp-navbar-dropdown-wrapper{cursor:pointer}.vp-navbar-dropdown-wrapper:not(.mobile){height:1.8rem}.vp-navbar-dropdown-wrapper:not(.mobile):hover .vp-navbar-dropdown,.vp-navbar-dropdown-wrapper:not(.mobile).open .vp-navbar-dropdown{display:block!important}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown{overflow:hidden;transition:height .1s ease-out;padding-top:.5rem}.vp-navbar-dropdown-wrapper:not(.mobile) .vp-navbar-dropdown{position:absolute;top:100%;right:0;display:none;overflow-y:auto;box-sizing:border-box;height:auto!important;max-height:calc(100vh - 2.7rem);margin:0;padding:.6rem 0;border:1px solid var(--c-border);border-bottom-color:var(--c-border-dark);border-radius:.25rem;background-color:var(--c-bg-navbar);text-align:left;white-space:nowrap}.vp-navbar-dropdown-title{display:block;padding:inherit;border:none;background:transparent;color:var(--c-text);font-weight:500;font-size:.9rem;font-family:inherit;line-height:1.4rem;cursor:inherit}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-title{display:none}.vp-navbar-dropdown-title:hover{border-color:transparent}.vp-navbar-dropdown-title-mobile{display:none;padding:inherit;border:none;background:transparent;color:var(--c-text);font-weight:600;font-size:inherit;font-family:inherit;line-height:1.4rem;cursor:inherit}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-title-mobile{display:block}.vp-navbar-dropdown-title-mobile:hover{color:var(--c-text-accent)}.vp-navbar-dropdown-item{color:inherit;line-height:1.7rem}.vp-navbar-dropdown-item a{position:relative;display:block;margin-bottom:0;padding:0 1.5rem 0 1.25rem;border-bottom:none;font-weight:400;line-height:1.7rem}.vp-navbar-dropdown-item a:hover,.vp-navbar-dropdown-item a.route-link-active{color:var(--c-text-accent)}.vp-navbar-dropdown-item a.route-link-active:after{content:"";position:absolute;top:calc(50% - 2px);left:9px;width:0;height:0;border-top:3px solid transparent;border-bottom:3px solid transparent;border-left:5px solid var(--c-text-accent)}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-item>a{font-size:15px;line-height:2rem}.vp-navbar-dropdown-subtitle{margin:.45rem 0 0;padding:1rem 0 .45rem;border-top:1px solid var(--c-border);font-size:.9rem}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-subtitle{margin-top:0;padding-top:0;padding-bottom:0;border-top:0;font-size:15px;line-height:2rem}.vp-navbar-dropdown-item:first-child .vp-navbar-dropdown-subtitle{margin-top:0;padding-top:0;border-top:0}.vp-navbar-dropdown-subtitle>span{padding:0 1.5rem 0 1.25rem}.vp-navbar-dropdown-subtitle>a{font-weight:inherit}.vp-navbar-dropdown-subtitle>a.route-link-active:after{display:none}.vp-navbar-dropdown-subitem-wrapper{padding:0;list-style:none}.vp-navbar-dropdown-subitem{font-size:.9em}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-subitem{padding-left:1rem;font-size:14px}.vp-navbar-items{display:inline-block}@media print{.vp-navbar-items{display:none}}.vp-navbar-items a{display:inline-block;color:inherit;line-height:1.4rem}.vp-navbar-items a:hover,.vp-navbar-items a.route-link-active{color:var(--c-text)}.vp-navbar-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:var(--navbar-line-height)}@media (max-width: 719px){.vp-navbar-item{margin-left:0}}.vp-navbar-item:first-child{margin-left:0}.vp-navbar-item a:hover,.vp-navbar-item a.route-link-active{color:var(--c-text-accent)}.vp-navbar-item>a:hover,.vp-navbar-item>a.route-link-active{margin-bottom:-2px;border-bottom:2px solid var(--c-text-accent)}@media (max-width: 719px){.vp-navbar-item>a:hover,.vp-navbar-item>a.route-link-active{margin-bottom:0;border-bottom:none}}.vp-toggle-color-mode-button{display:flex;margin:auto;margin-left:1rem;border:0;background:none;color:var(--c-text);opacity:.8;cursor:pointer}@media print{.vp-toggle-color-mode-button{display:none}}.vp-toggle-color-mode-button:hover{opacity:1}.vp-toggle-color-mode-button .light-icon,.vp-toggle-color-mode-button .dark-icon{width:1.25rem;height:1.25rem}.vp-toggle-sidebar-button{position:absolute;top:.6rem;left:1rem;display:none;padding:.6rem;cursor:pointer}@media screen and (max-width: 719px){.vp-toggle-sidebar-button{display:block}}.vp-toggle-sidebar-button .icon{display:flex;flex-direction:column;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;cursor:inherit}.vp-toggle-sidebar-button .icon span{display:inline-block;width:100%;height:2px;border-radius:2px;background-color:var(--c-text);transition:transform var(--t-transform)}.vp-toggle-sidebar-button .icon span:nth-child(2){margin:6px 0}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(1){transform:rotate(45deg) translate3d(5.5px,5.5px,0)}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(2){transform:scale3d(0,1,1)}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(3){transform:rotate(-45deg) translate3d(6px,-6px,0)}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(1),.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(3){transform-origin:center}.vp-navbar{--navbar-line-height: calc( var(--navbar-height) - 2 * var(--navbar-padding-v) );position:fixed;top:0;right:0;left:0;z-index:20;box-sizing:border-box;height:var(--navbar-height);padding:var(--navbar-padding-v) var(--navbar-padding-h);border-bottom:1px solid var(--c-border);background-color:var(--c-bg-navbar);line-height:var(--navbar-line-height);transition:background-color var(--t-color),border-color var(--t-color)}@media screen and (max-width: 719px){.vp-navbar{padding-left:4rem}}.vp-navbar-items-wrapper{position:absolute;top:var(--navbar-padding-v);right:var(--navbar-padding-h);display:flex;box-sizing:border-box;height:var(--navbar-line-height);padding-left:var(--navbar-padding-h);font-size:.9rem;white-space:nowrap}.vp-page-meta{max-width:var(--content-width);margin:0 auto;padding:.75rem 2.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;overflow:auto}@media (max-width: 959px){.vp-page-meta{padding:2rem}}@media (max-width: 419px){.vp-page-meta{padding:1.5rem}}@media print{.vp-page-meta{margin:0!important;padding-right:0!important;padding-left:0!important}}@media (max-width: 719px){.vp-page-meta{display:block}}.vp-page-meta .vp-meta-item{flex-grow:1}.vp-page-meta .vp-meta-item .vp-meta-label{font-weight:500}.vp-page-meta .vp-meta-item .vp-meta-label:not(a){color:var(--c-text-lighter)}.vp-page-meta .vp-meta-item .vp-meta-info{color:var(--c-text-quote);font-weight:400}.vp-page-meta .git-info{text-align:end}.vp-page-meta .edit-link{margin-top:.25rem;margin-right:.5rem;margin-bottom:.25rem;font-size:14px}@media print{.vp-page-meta .edit-link{display:none}}.vp-page-meta .edit-link .edit-icon{position:relative;bottom:-.125em;width:1em;height:1em;margin-right:.25em}.vp-page-meta .last-updated,.vp-page-meta .contributors{margin-top:.25rem;margin-bottom:.25rem;font-size:14px}@media (max-width: 719px){.vp-page-meta .last-updated,.vp-page-meta .contributors{font-size:13px;text-align:start}}.vp-page-nav{display:flex;flex-wrap:wrap;max-width:var(--content-width, 740px);min-height:2rem;margin-top:0;margin-right:auto;margin-left:auto;padding:1rem 2rem 0;border-top:1px solid var(--c-border);transition:border-top var(--t-color)}@media (max-width: 959px){.vp-page-nav{padding-right:1rem;padding-left:1rem}}@media print{.vp-page-nav{display:none}}.vp-page-nav .route-link{display:inline-block;flex-grow:1;margin:.25rem;padding:.25rem .5rem;border:1px solid var(--c-border);border-radius:.25rem}.vp-page-nav .route-link:hover{background:var(--c-bg-light)}.vp-page-nav .route-link .hint{color:var(--c-text-quote);font-size:.875rem;line-height:2}.vp-page-nav .prev{text-align:start}.vp-page-nav .next{text-align:end}.vp-page{display:block;padding-top:var(--navbar-height);padding-bottom:2rem;padding-left:var(--sidebar-width)}@media (max-width: 959px){.vp-page{padding-left:var(--sidebar-width-mobile)}}@media (max-width: 719px){.vp-page{padding-left:0}}.vp-page .theme-default-content{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem;padding-top:0}@media (max-width: 959px){.vp-page .theme-default-content{padding:2rem}}@media (max-width: 419px){.vp-page .theme-default-content{padding:1.5rem}}.vp-sidebar-item{border-left:.25rem solid transparent;color:var(--c-text);cursor:default}.vp-sidebar-item:focus-visible{outline-width:1px;outline-offset:-1px}.vp-sidebar-item.vp-sidebar-heading{box-sizing:border-box;width:100%;margin:0;padding:.35rem 1.5rem .35rem 1.25rem;font-weight:700;font-size:1.1em;transition:color .15s ease}.vp-sidebar-item.vp-sidebar-heading+.vp-sidebar-children{overflow:hidden;transition:height .1s ease-out;margin-bottom:.75rem}.vp-sidebar-item.collapsible{cursor:pointer}.vp-sidebar-item:not(.vp-sidebar-heading){display:inline-block;box-sizing:border-box;width:100%;margin:0;padding:.35rem 1rem .35rem 2rem;font-weight:400;font-size:1em;line-height:1.4}.vp-sidebar-item:not(.vp-sidebar-heading)+.vp-sidebar-children{padding-left:1rem;font-size:.95em}.vp-sidebar-children .vp-sidebar-children .vp-sidebar-item:not(.vp-sidebar-heading){padding:.25rem 1rem .25rem 1.75rem}.vp-sidebar-children .vp-sidebar-children .vp-sidebar-item:not(.vp-sidebar-heading).active{border-left-color:transparent;font-weight:500}a.vp-sidebar-heading+.vp-sidebar-children .vp-sidebar-item:not(.vp-sidebar-heading).active{border-left-color:transparent}.vp-sidebar-item.active:not(p.vp-sidebar-heading){border-left-color:var(--c-text-accent);color:var(--c-text-accent);font-weight:600}a.vp-sidebar-item{cursor:pointer}a.vp-sidebar-item:hover{color:var(--c-text-accent)}.vp-sidebar-items{margin:0;padding:1.5rem 0;list-style-type:none}@media (max-width: 719px){.vp-sidebar-items{padding:1rem 0}}.vp-sidebar-items ul{margin:0;padding:0;list-style-type:none}.vp-sidebar-items a{display:inline-block}.vp-sidebar{position:fixed;top:var(--navbar-height);bottom:0;left:0;z-index:10;overflow-y:auto;box-sizing:border-box;width:var(--sidebar-width);margin:0;border-right:1px solid var(--c-border);background-color:var(--c-bg-sidebar);font-size:16px;transition:transform var(--t-transform),background-color var(--t-color),border-color var(--t-color);scrollbar-color:var(--c-brand) var(--c-border);scrollbar-width:thin}@media (max-width: 959px){.vp-sidebar{width:var(--sidebar-width-mobile);font-size:15px}}@media (max-width: 719px){.vp-sidebar{top:0;padding-top:var(--navbar-height);transform:translate(-100%)}}.vp-sidebar::-webkit-scrollbar{width:7px}.vp-sidebar::-webkit-scrollbar-track{background-color:var(--c-border)}.vp-sidebar::-webkit-scrollbar-thumb{background-color:var(--c-brand)}.vp-sidebar .vp-navbar-items{display:none;padding:.5rem 0 .75rem;border-bottom:1px solid var(--c-border);transition:border-color var(--t-color)}@media (max-width: 719px){.vp-sidebar .vp-navbar-items{display:block}.vp-sidebar .vp-navbar-items .vp-navbar-dropdown-item a.route-link-active:after{top:calc(1rem - 2px)}}.vp-sidebar .vp-navbar-items ul{margin:0;padding:0;list-style-type:none}.vp-sidebar .vp-navbar-items a{font-weight:600}.vp-sidebar .vp-navbar-item{display:block;padding:.5rem 0 .5rem 1.5rem;font-size:1.1em;line-height:1.25rem}.vp-sidebar-mask{position:fixed;top:0;left:0;z-index:9;display:none;width:100vw;height:100vh}.vp-theme-container.no-navbar .vp-sidebar{top:0}@media (max-width: 719px){.vp-theme-container.no-navbar .vp-sidebar{padding-top:0}}.vp-theme-container.no-navbar .vp-page{padding-top:0}.vp-theme-container.no-navbar .theme-default-content h1,.vp-theme-container.no-navbar .theme-default-content h2,.vp-theme-container.no-navbar .theme-default-content h3,.vp-theme-container.no-navbar .theme-default-content h4,.vp-theme-container.no-navbar .theme-default-content h5,.vp-theme-container.no-navbar .theme-default-content h6{margin-top:1.5rem;padding-top:0}.vp-theme-container.no-sidebar .vp-sidebar{display:none}@media (max-width: 719px){.vp-theme-container.no-sidebar .vp-sidebar{display:block}}.vp-theme-container.no-sidebar .vp-page{padding-left:0}@media (max-width: 719px){.vp-theme-container.sidebar-open .vp-sidebar{transform:translate(0)}.vp-theme-container.sidebar-open .vp-sidebar-mask{display:block}}.fade-slide-y-enter-active{transition:all .2s ease}.fade-slide-y-leave-active{transition:all .2s cubic-bezier(1,.5,.8,1)}.fade-slide-y-enter-from,.fade-slide-y-leave-to{opacity:0;transform:translateY(10px)}.vp-theme-container[data-v-056523ff]{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width: 959px){.vp-theme-container[data-v-056523ff]{padding:2rem}}html,body{background:#fff}html{font-size:16px;font-display:optional;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}@media print{html{font-size:12pt}}body{min-height:100vh;margin:0;padding:0;color:#2c3e50;font-synthesis:style}a{color:#3eaf7c;font-weight:500;text-decoration:none;overflow-wrap:break-word}kbd{display:inline-block;min-width:1em;margin-inline:.125rem;padding:.25em;border:1px solid #eee;border-radius:.25em;box-shadow:1px 1px 4px #00000026;line-height:1;letter-spacing:-.1em;text-align:center}:not(pre)>code{margin:0;padding:3px 6px;border-radius:4px;background:#7f7f7f1f;font-size:.875em;overflow-wrap:break-word}table code{padding:.1rem .4rem}p a code{color:#3eaf7c;font-weight:400}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;overflow-wrap:break-word}h1:focus-visible,h2:focus-visible,h3:focus-visible,h4:focus-visible,h5:focus-visible,h6:focus-visible{outline:none}h1{font-size:2rem}h2{padding-bottom:.3rem;border-bottom:1px solid #eaecef;font-size:1.65rem}h3{font-size:1.35rem}h4{font-size:1.15rem}h5{font-size:1.05rem}h6{font-size:1rem}a.header-anchor{position:relative;color:inherit;text-decoration:none}a.header-anchor:hover:before{content:"¶";position:absolute;top:.4167em;left:-.75em;color:var(--c-brand);font-size:.75em}a.header-anchor:focus-visible{outline:none}a.header-anchor:focus-visible:before{content:"¶";position:absolute;left:-.75em;color:var(--c-brand);outline:auto}p,ul,ol{line-height:1.6;overflow-wrap:break-word}@media print{p,ul,ol{line-height:1.5}}ul,ol{padding-inline-start:1.2em}blockquote{margin:1rem 0;padding:.25rem 0 .25rem 1rem;border-inline-start:.2rem solid #ddd;color:#666;font-size:1rem;overflow-wrap:break-word}blockquote>p{margin:0}hr{border:0;border-top:1px solid #eaecef}table{display:block;overflow-x:auto;margin:1rem 0;border-collapse:collapse}tr:nth-child(odd){background:#f6f8fa}th,td{padding:.6em 1em;border:1px solid #dfe2e5}pre{text-align:left;direction:ltr;white-space:pre;word-spacing:normal;word-wrap:normal;word-break:normal;overflow-wrap:unset;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}@media print{pre{white-space:pre-wrap}}pre code{padding:0;border-radius:0}@page{margin:2cm;font-size:12pt;size:a4}@media print{*,:after,:before{box-shadow:none!important;text-shadow:none!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}a{color:inherit;font-weight:inherit!important;font-size:inherit!important;text-decoration:underline}a.header-anchor{text-decoration:none}abbr[title]:after{content:" (" attr(title) ")"}pre{border:1px solid #eee;white-space:pre-wrap!important}pre>code{white-space:pre-wrap!important}blockquote{border-inline-start:.2rem solid #ddd;color:inherit}blockquote,pre{orphans:5;widows:5}img,tr,canvas{page-break-inside:avoid}}@media (prefers-reduced-motion: reduce){*,:before,:after{background-attachment:initial!important;scroll-behavior:auto!important;transition-delay:0s!important;transition-duration:0s!important;animation-duration:1ms!important;animation-delay:-1ms!important;animation-iteration-count:1!important}}:root{--c-brand: #3eaf7c;--c-brand-light: #4abf8a;--c-bg: #fff;--c-bg-light: #f3f4f5;--c-bg-lighter: #eee;--c-bg-dark: #ebebec;--c-bg-darker: #e6e6e6;--c-bg-navbar: var(--c-bg);--c-bg-sidebar: var(--c-bg);--c-bg-arrow: #ccc;--c-text: #2c3e50;--c-text-accent: var(--c-brand);--c-text-light: #3a5169;--c-text-lighter: #4e6e8e;--c-text-lightest: #6a8bad;--c-text-quote: #999;--c-border: #eaecef;--c-border-dark: #dfe2e5;--c-tip: #42b983;--c-tip-bg: var(--c-bg-light);--c-tip-title: var(--c-text);--c-tip-text: var(--c-text);--c-tip-text-accent: var(--c-text-accent);--c-warning: #ffc310;--c-warning-bg: #fffae3;--c-warning-bg-light: #fff3ba;--c-warning-bg-lighter: #fff0b0;--c-warning-border-dark: #f7dc91;--c-warning-details-bg: #fff5ca;--c-warning-title: #f1b300;--c-warning-text: #746000;--c-warning-text-accent: #edb100;--c-warning-text-light: #c1971c;--c-warning-text-quote: #ccab49;--c-danger: #f11e37;--c-danger-bg: #ffe0e0;--c-danger-bg-light: #ffcfde;--c-danger-bg-lighter: #ffc9c9;--c-danger-border-dark: #f1abab;--c-danger-details-bg: #ffd4d4;--c-danger-title: #ed1e2c;--c-danger-text: #600;--c-danger-text-accent: #bd1a1a;--c-danger-text-light: #b5474d;--c-danger-text-quote: #c15b5b;--c-details-bg: #eee;--c-badge-tip: var(--c-tip);--c-badge-warning: #ecc808;--c-badge-warning-text: var(--c-bg);--c-badge-danger: #dc2626;--c-badge-danger-text: var(--c-bg);--c-code-group-tab-title: rgb(255 255 255 / 90%);--c-code-group-tab-bg: var(--code-bg-color);--c-code-group-tab-outline: var(var(--c-code-group-tab-title));--c-code-group-tab-active-border: var(--c-brand);--t-color: .3s ease;--t-transform: .3s ease;--font-family: -apple-system, "BlinkMacSystemFont", "Segoe UI", roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--navbar-height: 3.6rem;--navbar-padding-v: .7rem;--navbar-padding-h: 1.5rem;--sidebar-width: 20rem;--sidebar-width-mobile: calc(var(--sidebar-width) * .82);--content-width: 740px;--homepage-width: 960px;--external-link-icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");--external-link-icon-color: var(--c-text-quote)}.vp-back-to-top-button{--back-to-top-color: var(--c-brand);--back-to-top-color-hover: var(--c-brand-light);--back-to-top-bg-color: var(--c-bg)}.vp-catalog-wrapper{--catalog-bg-color: var(--c-bg);--catalog-bg-secondary-color: var(--c-bg-dark);--catalog-border-color: var(--c-border);--catalog-active-color: var(--c-brand);--catalog-hover-color: var(--c-brand-light)}.waline-wrapper{--waline-bg-color: var(--c-bg);--waline-bg-color-light: var(--c-bg-light);--waline-text-color: var(--c-color);--waline-border: 1px solid var(--c-border);--waline-border-color: var(--c-border);--waline-theme-color: var(--c-brand);--waline-active-color: var(--c-brand-light)}.DocSearch{--docsearch-primary-color: var(--c-brand);--docsearch-text-color: var(--c-text);--docsearch-highlight-color: var(--c-brand);--docsearch-muted-color: var(--c-text-quote);--docsearch-container-background: rgb(9 10 17 / 80%);--docsearch-modal-background: var(--c-bg-light);--docsearch-searchbox-background: var(--c-bg-lighter);--docsearch-searchbox-focus-background: var(--c-bg);--docsearch-searchbox-shadow: inset 0 0 0 2px var(--c-brand);--docsearch-hit-color: var(--c-text-light);--docsearch-hit-active-color: var(--c-bg);--docsearch-hit-background: var(--c-bg);--docsearch-hit-shadow: 0 1px 3px 0 var(--c-border-dark);--docsearch-footer-background: var(--c-bg)}.medium-zoom-overlay{--medium-zoom-bg-color: var(--c-bg)}.vp-notice-wrapper{--notice-color: var(--c-text);--notice-bg-color: var(--c-bg);--notice-primary-color: var(--c-brand);--notice-primary-text-color: var(--c-bg);--notice-primary-hover-color: var(--c-brand-light);--notice-button-color: var(--c-bg-light);--notice-button-hover-color: var(--c-bg-lighter)}#nprogress{--nprogress-color: var(--c-brand)}body{--photo-swipe-bullet: var(--c-bg);--photo-swipe-bullet-active: var(--c-brand);--pwa-text-color: var(--c-text);--pwa-bg-color: var(--c-bg);--pwa-border-color: var(--c-brand);--pwa-btn-text-color: var(--c-bg);--pwa-btn-bg-color: var(--c-brand);--pwa-btn-hover-bg-color: var(--c-brand-light)}.redirect-modal-mask{--redirect-bg-color: var(--c-bg);--redirect-bg-color-light: var(--c-bg-light);--redirect-bg-color-lighter: var(--c-bg-lighter);--redirect-text-color: var(--c-text);--redirect-primary-color: var(--c-brand);--redirect-primary-hover-color: var(--c-brand-light);--redirect-primary-text-color: var(--c-bg)}.search-box{--search-bg-color: var(--c-bg);--search-accent-color: var(--c-brand);--search-text-color: var(--c-text);--search-border-color: var(--c-border);--search-item-text-color: var(--c-text-lighter);--search-item-focus-bg-color: var(--c-bg-light)}html.dark{--c-brand: #3aa675;--c-brand-light: #349469;--c-bg: #22272e;--c-bg-light: #2b313a;--c-bg-lighter: #262c34;--c-bg-dark: #343b44;--c-bg-darker: #37404c;--c-text: #adbac7;--c-text-light: #96a7b7;--c-text-lighter: #8b9eb0;--c-text-lightest: #8094a8;--c-border: #3e4c5a;--c-border-dark: #34404c;--c-tip: #318a62;--c-warning: #e0ad15;--c-warning-bg: #2d2f2d;--c-warning-bg-light: #423e2a;--c-warning-bg-lighter: #44442f;--c-warning-border-dark: #957c35;--c-warning-details-bg: #39392d;--c-warning-title: #fdca31;--c-warning-text: #d8d96d;--c-warning-text-accent: #ffbf00;--c-warning-text-light: #ddb84b;--c-warning-text-quote: #ccab49;--c-danger: #fc1e38;--c-danger-bg: #39232c;--c-danger-bg-light: #4b2b35;--c-danger-bg-lighter: #553040;--c-danger-border-dark: #a25151;--c-danger-details-bg: #482936;--c-danger-title: #fc2d3b;--c-danger-text: #ea9ca0;--c-danger-text-accent: #fd3636;--c-danger-text-light: #d9777c;--c-danger-text-quote: #d56b6b;--c-details-bg: #323843;--c-badge-warning: var(--c-warning);--c-badge-warning-text: #3c2e05;--c-badge-danger: var(--c-danger);--c-badge-danger-text: #401416}html.dark .DocSearch{--docsearch-logo-color: var(--c-text);--docsearch-modal-shadow: inset 1px 1px 0 0 #2c2e40, 0 3px 8px 0 #000309;--docsearch-key-shadow: inset 0 -2px 0 0 #282d55, inset 0 0 1px 1px #51577d, 0 2px 2px 0 rgb(3 4 9 / 30%);--docsearch-key-gradient: linear-gradient(-225deg, #444950, #1c1e21);--docsearch-footer-shadow: inset 0 1px 0 0 rgb(73 76 106 / 50%), 0 -4px 8px 0 rgb(0 0 0 / 20%)}html.dark body{--pwa-shadow-color: rgb(0 0 0 / 30%);--pwa-content-color: #ccc;--pwa-content-light-color: #999}html,body{background-color:var(--c-bg);transition:background-color var(--t-color)}html.dark{color-scheme:dark}body{color:var(--c-text);font-size:1rem;font-family:var(--font-family)}h2{border-color:var(--c-border);transition:border-color var(--t-color)}a{color:var(--c-text-accent)}code{background-color:var(--c-bg-light);color:var(--c-text-lighter);font-family:var(--code-font-family);transition:background-color var(--t-color)}p a code{color:var(--c-text-accent)}kbd{border-color:var(--c-border-dark);transition:border-color var(--t-color)}blockquote{border-color:var(--c-border-dark);color:var(--c-text-quote);transition:border-color var(--t-color)}hr{border-color:var(--c-border);transition:border-color var(--t-color)}table{transition:border-color var(--t-color)}tr:nth-child(odd){background-color:var(--c-bg-light);transition:background-color var(--t-color)}tr:nth-child(odd) code{background-color:var(--c-bg-dark)}th,td{border-color:var(--c-border-dark);transition:border-color var(--t-color)}.theme-default-content h1,.theme-default-content h2,.theme-default-content h3,.theme-default-content h4,.theme-default-content h5,.theme-default-content h6{margin-top:calc(.5rem - var(--navbar-height));margin-bottom:0;padding-top:calc(1rem + var(--navbar-height))}.theme-default-content h1:first-child,.theme-default-content h2:first-child,.theme-default-content h3:first-child,.theme-default-content h4:first-child,.theme-default-content h5:first-child,.theme-default-content h6:first-child{margin-bottom:1rem}.theme-default-content h1:first-child+p,.theme-default-content h1:first-child+pre,.theme-default-content h1:first-child+.custom-container,.theme-default-content h2:first-child+p,.theme-default-content h2:first-child+pre,.theme-default-content h2:first-child+.custom-container,.theme-default-content h3:first-child+p,.theme-default-content h3:first-child+pre,.theme-default-content h3:first-child+.custom-container,.theme-default-content h4:first-child+p,.theme-default-content h4:first-child+pre,.theme-default-content h4:first-child+.custom-container,.theme-default-content h5:first-child+p,.theme-default-content h5:first-child+pre,.theme-default-content h5:first-child+.custom-container,.theme-default-content h6:first-child+p,.theme-default-content h6:first-child+pre,.theme-default-content h6:first-child+.custom-container{margin-top:2rem}@media (max-width: 419px){.theme-default-content h1{font-size:1.9rem}}.theme-default-content a:not(.header-anchor){text-decoration:underline}.theme-default-content img{max-width:100%}div[class*=language-]{margin:.75rem 0;transition:background-color var(--t-color),color var(--t-color)}@media (max-width: 419px){div[class*=language-]{--code-border-radius: 0;margin:.75rem -1.5rem}}div[class*=language-] .line.diff,div[class*=language-] .line.highlighted{transition:background-color var(--t-color)}.custom-container{transition:color var(--t-color),border-color var(--t-color),background-color var(--t-color)}.custom-container .custom-container-title{font-weight:600}.custom-container .custom-container-title:not(:only-child){margin-bottom:-.4rem}.custom-container.tip,.custom-container.warning,.custom-container.danger{margin:1rem 0;padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid}.custom-container.tip{border-color:var(--c-tip);background-color:var(--c-tip-bg);color:var(--c-tip-text)}.custom-container.tip .custom-container-title{color:var(--c-tip-title)}.custom-container.tip a{color:var(--c-tip-text-accent)}.custom-container.tip code{background-color:var(--c-bg-dark)}.custom-container.warning{--external-link-icon-color: var(--c-warning-text-quote);border-color:var(--c-warning);background-color:var(--c-warning-bg);color:var(--c-warning-text)}.custom-container.warning .custom-container-title{color:var(--c-warning-title)}.custom-container.warning a{color:var(--c-warning-text-accent)}.custom-container.warning blockquote{border-left-color:var(--c-warning-border-dark);color:var(--c-warning-text-quote)}.custom-container.warning code{background-color:var(--c-warning-bg-light);color:var(--c-warning-text-light)}.custom-container.warning details{background-color:var(--c-warning-details-bg)}.custom-container.warning details code{background-color:var(--c-warning-bg-lighter)}.custom-container.danger{--external-link-icon-color: var(--c-danger-text-quote);border-color:var(--c-danger);background-color:var(--c-danger-bg);color:var(--c-danger-text)}.custom-container.danger .custom-container-title{color:var(--c-danger-title)}.custom-container.danger a{color:var(--c-danger-text-accent)}.custom-container.danger blockquote{border-left-color:var(--c-danger-border-dark);color:var(--c-danger-text-quote)}.custom-container.danger code{background-color:var(--c-danger-bg-light);color:var(--c-danger-text-light)}.custom-container.danger details{background-color:var(--c-danger-details-bg)}.custom-container.danger details code{background-color:var(--c-danger-bg-lighter)}.custom-container.details{position:relative;display:block;margin:1.6em 0;padding:1.6em;border-radius:2px;background-color:var(--c-details-bg)}.custom-container.details code{background-color:var(--c-bg-darker)}.custom-container.details h4{margin-top:0}.custom-container.details figure:last-child,.custom-container.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-container.details summary{outline:none;cursor:pointer}.table-of-contents .vp-badge{vertical-align:middle}.arrow{display:inline-block;vertical-align:middle;width:1em;height:1em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;line-height:normal;transition:all .3s}html.dark .arrow{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")}.arrow.down{transform:rotate(180deg)}.arrow.right{transform:rotate(90deg)}.arrow.left{transform:rotate(-90deg)}.vp-external-link-icon:after{content:"";display:inline-block;flex-shrink:0;width:11px;height:11px;margin-top:-1px;margin-left:4px;background:var(--external-link-icon-color);-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .external-link:after{content:"";display:inline-block;flex-shrink:0;width:11px;height:11px;margin-top:-1px;margin-left:4px;background:var(--external-link-icon-color);-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .theme-default-content a[href*="://"]:not(.no-external-link-icon):after,.external-link-icon .theme-default-content a[target=_blank]:not(.no-external-link-icon):after{content:"";display:inline-block;flex-shrink:0;width:11px;height:11px;margin-top:-1px;margin-left:4px;background:var(--external-link-icon-color);-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}@media screen and (max-width: 719px){.vp-hide-mobile{display:none}}#vp-comment{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem}@media (max-width: 959px){#vp-comment{padding:2rem}}@media (max-width: 419px){#vp-comment{padding:1.5rem}}.vp-navbar .DocSearch{transition:background-color var(--t-color)}.vp-navbar .search-box{vertical-align:top;flex:0 0 auto}.lang-modal-fade-enter-active,.lang-modal-fade-leave-active{transition:opacity .5s}.lang-modal-fade-enter,.lang-modal-fade-leave-to{opacity:0}.lang-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1499;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media print{.lang-modal-mask{display:none}}.lang-modal-wrapper{position:relative;z-index:1500;overflow:hidden;max-width:80vw;padding:1rem 2rem;border-radius:8px;background:var(--vp-bg);box-shadow:0 2px 6px 0 var(--card-shadow)}.lang-modal-action{display:block;width:100%;margin:1rem 0;padding:.5rem .75rem;border:none;border-radius:8px;background-color:var(--vp-bglt);color:var(--vp-c);cursor:pointer}.lang-modal-action:hover{background-color:var(--vp-bgl)}.lang-modal-action.primary{background-color:var(--vp-tc);color:var(--white)}.lang-modal-action.primary:hover{background-color:var(--vp-tcl)}.grey{color:#0006}.works-table-wrapper[data-v-765855fb]{margin:0 auto;padding:0 2rem;max-width:1224px;box-sizing:border-box}.works-table-wrapper[data-v-765855fb] table{width:100%}:root{--content-width: 960px}.vp-page .theme-default-content{padding-bottom:0!important}.vp-page-meta{display:none} diff --git a/dist/assets/style-LjaJbYtv.css b/dist/assets/style-LjaJbYtv.css deleted file mode 100644 index 9d03e48..0000000 --- a/dist/assets/style-LjaJbYtv.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";.vp-back-to-top-button{position:fixed!important;inset-inline-end:1rem;bottom:4rem;z-index:100;width:48px;height:48px;padding:12px;border-width:0;border-radius:50%;background:var(--back-to-top-bg-color);color:var(--back-to-top-color);box-shadow:2px 2px 10px 4px var(--back-to-top-shadow);cursor:pointer}@media (max-width: 959px){.vp-back-to-top-button{transform:scale(.8);transform-origin:100% 100%}}@media print{.vp-back-to-top-button{display:none}}.vp-back-to-top-button:hover{color:var(--back-to-top-color-hover)}.vp-back-to-top-button .back-to-top-icon{overflow:hidden;width:24px;height:24px;margin:0 auto;background:var(--back-to-top-icon-color);-webkit-mask-image:var(--back-to-top-icon);mask-image:var(--back-to-top-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover}.vp-scroll-progress{position:absolute;right:-2px;bottom:-2px;width:52px;height:52px}.vp-scroll-progress svg{width:100%;height:100%}.vp-scroll-progress circle{opacity:.9;transform:rotate(-90deg);transform-origin:50% 50%}.back-to-top-enter-active,.back-to-top-leave-active{transition:opacity .3s}.back-to-top-enter-from,.back-to-top-leave-to{opacity:0}:root{--back-to-top-z-index: 5;--back-to-top-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2048%2048'%3e%3cpath%20fill='none'%20stroke='currentColor'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='4'%20d='M24.008%2014.1V42M12%2026l12-12l12%2012M12%206h24'%20/%3e%3c/svg%3e");--back-to-top-bg-color: #fff;--back-to-top-color: #3eaf7c;--back-to-top-icon-color: currentcolor;--back-to-top-color-hover: #71cda3;--back-to-top-shadow: rgb(0 0 0 / 20%)}:root{--code-copy-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2' /%3e%3c/svg%3e");--code-copied-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4' /%3e%3c/svg%3e");--copy-code-color: var(--code-line-number-color, #9e9e9e);--copy-code-hover: var(--code-highlight-bg-color, rgb(0 0 0 / 50%))}.vp-copy-code-button{position:absolute;top:.5em;right:.5em;z-index:5;width:2.5rem;height:2.5rem;padding:0;border-width:0;border-radius:.5rem;background:transparent;outline:none;opacity:0;cursor:pointer;transition:opacity .4s}@media print{.vp-copy-code-button{display:none}}.vp-copy-code-button:before{content:"";display:inline-block;width:1.25rem;height:1.25rem;padding:.625rem;background:currentcolor;color:var(--copy-code-color);font-size:1.25rem;-webkit-mask-image:var(--code-copy-icon);mask-image:var(--code-copy-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:1em;mask-size:1em;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.vp-copy-code-button:focus,.vp-copy-code-button.copied{opacity:1}.vp-copy-code-button:hover,.vp-copy-code-button.copied{background:var(--copy-code-hover)}.vp-copy-code-button.copied:before{-webkit-mask-image:var(--code-copied-icon);mask-image:var(--code-copied-icon)}.vp-copy-code-button.copied:after{content:attr(data-copied);position:absolute;top:0;right:calc(100% + .25rem);display:block;height:1.25rem;padding:.625rem;border-radius:.5rem;background:var(--copy-code-hover);color:var(--copy-code-color);font-weight:500;line-height:1.25rem;white-space:nowrap}.copy-code-disabled .vp-copy-code-button{display:none}body:not(.copy-code-disabled) div[class*=language-]:hover:before{display:none}body:not(.copy-code-disabled) div[class*=language-]:hover .vp-copy-code-button{opacity:1}:root{--nprogress-color: #29d;--nprogress-z-index: 1031}#nprogress{pointer-events:none}#nprogress .bar{position:fixed;top:0;left:0;z-index:var(--nprogress-z-index);width:100%;height:2px;background:var(--nprogress-color)}:root{--code-padding-x: 1.25rem;--code-padding-y: 1rem;--code-border-radius: 6px;--code-line-height: 1.6;--code-font-family: consolas, monaco, "Andale Mono", "Ubuntu Mono", monospace}div[class*=language-]{position:relative;border-radius:var(--code-border-radius);background-color:var(--code-c-bg)}div[class*=language-]:before{content:attr(data-title);position:absolute;top:.8em;right:1em;z-index:3;color:var(--code-c-text);font-size:.75rem}div[class*=language-] pre{position:relative;z-index:1;overflow-x:auto;margin:.75rem 0;border-radius:var(--code-border-radius);font-size:14px;font-family:var(--code-font-family);line-height:var(--code-line-height)}div[class*=language-] pre code{display:block;box-sizing:border-box;width:-moz-fit-content;width:fit-content;min-width:100%;padding:var(--code-padding-y) var(--code-padding-x);background-color:transparent!important;overflow-wrap:unset;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}:root{--code-c-text: #f8f8f2;--code-c-bg: #2e3440;--code-highlight-bg-color: #343d4e;--code-line-number-color: rgba(248, 248, 242, .67)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#636f88}.token.punctuation{color:#81a1c1}.namespace{opacity:.7}.token.property,.token.tag,.token.constant,.token.symbol,.token.deleted{color:#81a1c1}.token.number{color:#b48ead}.token.boolean{color:#81a1c1}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a3be8c}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string,.token.variable{color:#81a1c1}.token.atrule,.token.attr-value,.token.function,.token.class-name{color:#88c0d0}.token.keyword{color:#81a1c1}.token.regex,.token.important{color:#ebcb8b}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.vp-badge{display:inline-block;vertical-align:top;height:18px;padding:0 6px;border-radius:3px;color:var(--c-bg);font-weight:600;font-size:14px;line-height:18px;transition:color var(--t-color),background-color var(--t-color)}.vp-badge.tip{background-color:var(--c-badge-tip)}.vp-badge.warning{background-color:var(--c-badge-warning);color:var(--c-badge-warning-text)}.vp-badge.danger{background-color:var(--c-badge-danger);color:var(--c-badge-danger-text)}.vp-badge+.vp-badge{margin-left:5px}.code-group-nav{margin-top:.85rem;margin-bottom:calc(-1.7rem - 6px);padding-top:10px;padding-bottom:calc(1.7rem - 6px);padding-left:10px;border-top-left-radius:6px;border-top-right-radius:6px;background-color:var(--c-code-group-tab-bg)}@media (max-width: 419px){.code-group-nav{margin-right:-1.5rem;margin-left:-1.5rem;border-radius:0}}.code-group-nav-tab{padding:5px;border:0;background-color:transparent;color:var(--c-code-group-tab-title);font-weight:600;font-size:.85em;line-height:1.4;cursor:pointer}.code-group-nav-tab:focus{outline:none}.code-group-nav-tab:focus-visible{outline:1px solid var(--c-code-group-tab-outline)}.code-group-nav-tab.active{border-bottom:var(--c-code-group-tab-active-border) 1px solid}.code-group-item{display:none}.code-group-item.active{display:block}.code-group-item>pre{background-color:orange}.vp-features{display:flex;flex-wrap:wrap;place-content:stretch space-between;align-items:flex-start;margin-top:2.5rem;padding:1.2rem 0;border-top:1px solid var(--c-border);transition:border-color var(--t-color)}@media (max-width: 719px){.vp-features{flex-direction:column}}.vp-feature{flex-grow:1;flex-basis:30%;max-width:30%}@media (max-width: 719px){.vp-feature{max-width:100%;padding:0 2.5rem}}.vp-feature h2{padding-bottom:0;border-bottom:none;color:var(--c-text-light);font-weight:500;font-size:1.4rem}@media (max-width: 419px){.vp-feature h2{font-size:1.25rem}}.vp-feature p{color:var(--c-text-lighter)}.vp-footer{padding:2.5rem;border-top:1px solid var(--c-border);color:var(--c-text-lighter);text-align:center;transition:border-color var(--t-color)}.vp-hero{text-align:center}.vp-hero-image{display:block;max-width:100%;max-height:280px;margin:3rem auto 1.5rem}@media (max-width: 419px){.vp-hero-image{max-height:210px;margin:2rem auto 1.2rem}}#main-title{font-size:3rem}@media (max-width: 419px){#main-title{font-size:2rem}}#main-title,.vp-hero-description,.vp-hero-actions{margin:1.8rem auto}@media (max-width: 419px){#main-title,.vp-hero-description,.vp-hero-actions{margin:1.2rem auto}}.vp-hero-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.vp-hero-description{max-width:35rem;color:var(--c-text-lightest);font-size:1.6rem;line-height:1.3}@media (max-width: 419px){.vp-hero-description{font-size:1.2rem}}.vp-hero-action-button{display:inline-block;box-sizing:border-box;padding:.8rem 1.6rem;border-width:2px;border-style:solid;border-radius:4px;font-size:1.2rem;transition:background-color var(--t-color)}@media (max-width: 419px){.vp-hero-action-button{padding:.6rem 1.2rem;font-size:1rem}}.vp-hero-action-button.primary{border-color:var(--c-brand);background-color:var(--c-brand);color:var(--c-bg)}.vp-hero-action-button.primary:hover{background-color:var(--c-brand-light)}.vp-hero-action-button.secondary{border-color:var(--c-brand);background-color:var(--c-bg);color:var(--c-brand)}.vp-hero-action-button.secondary:hover{background-color:var(--c-brand-light);color:var(--c-bg)}.vp-home{display:block;max-width:var(--homepage-width);margin:0 auto;padding:var(--navbar-height) 2rem 0}@media (max-width: 419px){.vp-home{padding-right:1.5rem;padding-left:1.5rem}}.vp-home .theme-default-content{margin:0;padding:0}.vp-site-logo{vertical-align:top;height:var(--navbar-line-height);margin-right:var(--navbar-padding-v)}.vp-site-name{position:relative;color:var(--c-text);font-weight:600;font-size:1.3rem}@media screen and (max-width: 719px){.vp-site-name{display:block;overflow:hidden;width:calc(100vw - 11rem);text-overflow:ellipsis;white-space:nowrap}}.vp-dropdown-enter-from,.vp-dropdown-leave-to{height:0!important}.vp-navbar-dropdown-wrapper{cursor:pointer}.vp-navbar-dropdown-wrapper:not(.mobile){height:1.8rem}.vp-navbar-dropdown-wrapper:not(.mobile):hover .vp-navbar-dropdown,.vp-navbar-dropdown-wrapper:not(.mobile).open .vp-navbar-dropdown{display:block!important}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown{overflow:hidden;transition:height .1s ease-out;padding-top:.5rem}.vp-navbar-dropdown-wrapper:not(.mobile) .vp-navbar-dropdown{position:absolute;top:100%;right:0;display:none;overflow-y:auto;box-sizing:border-box;height:auto!important;max-height:calc(100vh - 2.7rem);margin:0;padding:.6rem 0;border:1px solid var(--c-border);border-bottom-color:var(--c-border-dark);border-radius:.25rem;background-color:var(--c-bg-navbar);text-align:left;white-space:nowrap}.vp-navbar-dropdown-title{display:block;padding:inherit;border:none;background:transparent;color:var(--c-text);font-weight:500;font-size:.9rem;font-family:inherit;line-height:1.4rem;cursor:inherit}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-title{display:none}.vp-navbar-dropdown-title:hover{border-color:transparent}.vp-navbar-dropdown-title-mobile{display:none;padding:inherit;border:none;background:transparent;color:var(--c-text);font-weight:600;font-size:inherit;font-family:inherit;line-height:1.4rem;cursor:inherit}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-title-mobile{display:block}.vp-navbar-dropdown-title-mobile:hover{color:var(--c-text-accent)}.vp-navbar-dropdown-item{color:inherit;line-height:1.7rem}.vp-navbar-dropdown-item a{position:relative;display:block;margin-bottom:0;padding:0 1.5rem 0 1.25rem;border-bottom:none;font-weight:400;line-height:1.7rem}.vp-navbar-dropdown-item a:hover,.vp-navbar-dropdown-item a.route-link-active{color:var(--c-text-accent)}.vp-navbar-dropdown-item a.route-link-active:after{content:"";position:absolute;top:calc(50% - 2px);left:9px;width:0;height:0;border-top:3px solid transparent;border-bottom:3px solid transparent;border-left:5px solid var(--c-text-accent)}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-item>a{font-size:15px;line-height:2rem}.vp-navbar-dropdown-subtitle{margin:.45rem 0 0;padding:1rem 0 .45rem;border-top:1px solid var(--c-border);font-size:.9rem}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-subtitle{margin-top:0;padding-top:0;padding-bottom:0;border-top:0;font-size:15px;line-height:2rem}.vp-navbar-dropdown-item:first-child .vp-navbar-dropdown-subtitle{margin-top:0;padding-top:0;border-top:0}.vp-navbar-dropdown-subtitle>span{padding:0 1.5rem 0 1.25rem}.vp-navbar-dropdown-subtitle>a{font-weight:inherit}.vp-navbar-dropdown-subtitle>a.route-link-active:after{display:none}.vp-navbar-dropdown-subitem-wrapper{padding:0;list-style:none}.vp-navbar-dropdown-subitem{font-size:.9em}.vp-navbar-dropdown-wrapper.mobile .vp-navbar-dropdown-subitem{padding-left:1rem;font-size:14px}.vp-navbar-items{display:inline-block}@media print{.vp-navbar-items{display:none}}.vp-navbar-items a{display:inline-block;color:inherit;line-height:1.4rem}.vp-navbar-items a:hover,.vp-navbar-items a.route-link-active{color:var(--c-text)}.vp-navbar-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:var(--navbar-line-height)}@media (max-width: 719px){.vp-navbar-item{margin-left:0}}.vp-navbar-item:first-child{margin-left:0}.vp-navbar-item a:hover,.vp-navbar-item a.route-link-active{color:var(--c-text-accent)}.vp-navbar-item>a:hover,.vp-navbar-item>a.route-link-active{margin-bottom:-2px;border-bottom:2px solid var(--c-text-accent)}@media (max-width: 719px){.vp-navbar-item>a:hover,.vp-navbar-item>a.route-link-active{margin-bottom:0;border-bottom:none}}.vp-toggle-color-mode-button{display:flex;margin:auto;margin-left:1rem;border:0;background:none;color:var(--c-text);opacity:.8;cursor:pointer}@media print{.vp-toggle-color-mode-button{display:none}}.vp-toggle-color-mode-button:hover{opacity:1}.vp-toggle-color-mode-button .light-icon,.vp-toggle-color-mode-button .dark-icon{width:1.25rem;height:1.25rem}.vp-toggle-sidebar-button{position:absolute;top:.6rem;left:1rem;display:none;padding:.6rem;cursor:pointer}@media screen and (max-width: 719px){.vp-toggle-sidebar-button{display:block}}.vp-toggle-sidebar-button .icon{display:flex;flex-direction:column;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;cursor:inherit}.vp-toggle-sidebar-button .icon span{display:inline-block;width:100%;height:2px;border-radius:2px;background-color:var(--c-text);transition:transform var(--t-transform)}.vp-toggle-sidebar-button .icon span:nth-child(2){margin:6px 0}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(1){transform:rotate(45deg) translate3d(5.5px,5.5px,0)}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(2){transform:scale3d(0,1,1)}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(3){transform:rotate(-45deg) translate3d(6px,-6px,0)}.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(1),.vp-theme-container.sidebar-open .vp-toggle-sidebar-button .icon span:nth-child(3){transform-origin:center}.vp-navbar{--navbar-line-height: calc( var(--navbar-height) - 2 * var(--navbar-padding-v) );position:fixed;top:0;right:0;left:0;z-index:20;box-sizing:border-box;height:var(--navbar-height);padding:var(--navbar-padding-v) var(--navbar-padding-h);border-bottom:1px solid var(--c-border);background-color:var(--c-bg-navbar);line-height:var(--navbar-line-height);transition:background-color var(--t-color),border-color var(--t-color)}@media screen and (max-width: 719px){.vp-navbar{padding-left:4rem}}.vp-navbar-items-wrapper{position:absolute;top:var(--navbar-padding-v);right:var(--navbar-padding-h);display:flex;box-sizing:border-box;height:var(--navbar-line-height);padding-left:var(--navbar-padding-h);font-size:.9rem;white-space:nowrap}.vp-page-meta{max-width:var(--content-width);margin:0 auto;padding:.75rem 2.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;overflow:auto}@media (max-width: 959px){.vp-page-meta{padding:2rem}}@media (max-width: 419px){.vp-page-meta{padding:1.5rem}}@media print{.vp-page-meta{margin:0!important;padding-right:0!important;padding-left:0!important}}@media (max-width: 719px){.vp-page-meta{display:block}}.vp-page-meta .vp-meta-item{flex-grow:1}.vp-page-meta .vp-meta-item .vp-meta-label{font-weight:500}.vp-page-meta .vp-meta-item .vp-meta-label:not(a){color:var(--c-text-lighter)}.vp-page-meta .vp-meta-item .vp-meta-info{color:var(--c-text-quote);font-weight:400}.vp-page-meta .git-info{text-align:end}.vp-page-meta .edit-link{margin-top:.25rem;margin-right:.5rem;margin-bottom:.25rem;font-size:14px}@media print{.vp-page-meta .edit-link{display:none}}.vp-page-meta .edit-link .edit-icon{position:relative;bottom:-.125em;width:1em;height:1em;margin-right:.25em}.vp-page-meta .last-updated,.vp-page-meta .contributors{margin-top:.25rem;margin-bottom:.25rem;font-size:14px}@media (max-width: 719px){.vp-page-meta .last-updated,.vp-page-meta .contributors{font-size:13px;text-align:start}}.vp-page-nav{display:flex;flex-wrap:wrap;max-width:var(--content-width, 740px);min-height:2rem;margin-top:0;margin-right:auto;margin-left:auto;padding:1rem 2rem 0;border-top:1px solid var(--c-border);transition:border-top var(--t-color)}@media (max-width: 959px){.vp-page-nav{padding-right:1rem;padding-left:1rem}}@media print{.vp-page-nav{display:none}}.vp-page-nav .route-link{display:inline-block;flex-grow:1;margin:.25rem;padding:.25rem .5rem;border:1px solid var(--c-border);border-radius:.25rem}.vp-page-nav .route-link:hover{background:var(--c-bg-light)}.vp-page-nav .route-link .hint{color:var(--c-text-quote);font-size:.875rem;line-height:2}.vp-page-nav .prev{text-align:start}.vp-page-nav .next{text-align:end}.vp-page{display:block;padding-top:var(--navbar-height);padding-bottom:2rem;padding-left:var(--sidebar-width)}@media (max-width: 959px){.vp-page{padding-left:var(--sidebar-width-mobile)}}@media (max-width: 719px){.vp-page{padding-left:0}}.vp-page .theme-default-content{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem;padding-top:0}@media (max-width: 959px){.vp-page .theme-default-content{padding:2rem}}@media (max-width: 419px){.vp-page .theme-default-content{padding:1.5rem}}.vp-sidebar-item{border-left:.25rem solid transparent;color:var(--c-text);cursor:default}.vp-sidebar-item:focus-visible{outline-width:1px;outline-offset:-1px}.vp-sidebar-item.vp-sidebar-heading{box-sizing:border-box;width:100%;margin:0;padding:.35rem 1.5rem .35rem 1.25rem;font-weight:700;font-size:1.1em;transition:color .15s ease}.vp-sidebar-item.vp-sidebar-heading+.vp-sidebar-children{overflow:hidden;transition:height .1s ease-out;margin-bottom:.75rem}.vp-sidebar-item.collapsible{cursor:pointer}.vp-sidebar-item:not(.vp-sidebar-heading){display:inline-block;box-sizing:border-box;width:100%;margin:0;padding:.35rem 1rem .35rem 2rem;font-weight:400;font-size:1em;line-height:1.4}.vp-sidebar-item:not(.vp-sidebar-heading)+.vp-sidebar-children{padding-left:1rem;font-size:.95em}.vp-sidebar-children .vp-sidebar-children .vp-sidebar-item:not(.vp-sidebar-heading){padding:.25rem 1rem .25rem 1.75rem}.vp-sidebar-children .vp-sidebar-children .vp-sidebar-item:not(.vp-sidebar-heading).active{border-left-color:transparent;font-weight:500}a.vp-sidebar-heading+.vp-sidebar-children .vp-sidebar-item:not(.vp-sidebar-heading).active{border-left-color:transparent}.vp-sidebar-item.active:not(p.vp-sidebar-heading){border-left-color:var(--c-text-accent);color:var(--c-text-accent);font-weight:600}a.vp-sidebar-item{cursor:pointer}a.vp-sidebar-item:hover{color:var(--c-text-accent)}.vp-sidebar-items{margin:0;padding:1.5rem 0;list-style-type:none}@media (max-width: 719px){.vp-sidebar-items{padding:1rem 0}}.vp-sidebar-items ul{margin:0;padding:0;list-style-type:none}.vp-sidebar-items a{display:inline-block}.vp-sidebar{position:fixed;top:var(--navbar-height);bottom:0;left:0;z-index:10;overflow-y:auto;box-sizing:border-box;width:var(--sidebar-width);margin:0;border-right:1px solid var(--c-border);background-color:var(--c-bg-sidebar);font-size:16px;transition:transform var(--t-transform),background-color var(--t-color),border-color var(--t-color);scrollbar-color:var(--c-brand) var(--c-border);scrollbar-width:thin}@media (max-width: 959px){.vp-sidebar{width:var(--sidebar-width-mobile);font-size:15px}}@media (max-width: 719px){.vp-sidebar{top:0;padding-top:var(--navbar-height);transform:translate(-100%)}}.vp-sidebar::-webkit-scrollbar{width:7px}.vp-sidebar::-webkit-scrollbar-track{background-color:var(--c-border)}.vp-sidebar::-webkit-scrollbar-thumb{background-color:var(--c-brand)}.vp-sidebar .vp-navbar-items{display:none;padding:.5rem 0 .75rem;border-bottom:1px solid var(--c-border);transition:border-color var(--t-color)}@media (max-width: 719px){.vp-sidebar .vp-navbar-items{display:block}.vp-sidebar .vp-navbar-items .vp-navbar-dropdown-item a.route-link-active:after{top:calc(1rem - 2px)}}.vp-sidebar .vp-navbar-items ul{margin:0;padding:0;list-style-type:none}.vp-sidebar .vp-navbar-items a{font-weight:600}.vp-sidebar .vp-navbar-item{display:block;padding:.5rem 0 .5rem 1.5rem;font-size:1.1em;line-height:1.25rem}.vp-sidebar-mask{position:fixed;top:0;left:0;z-index:9;display:none;width:100vw;height:100vh}.vp-theme-container.no-navbar .vp-sidebar{top:0}@media (max-width: 719px){.vp-theme-container.no-navbar .vp-sidebar{padding-top:0}}.vp-theme-container.no-navbar .vp-page{padding-top:0}.vp-theme-container.no-navbar .theme-default-content h1,.vp-theme-container.no-navbar .theme-default-content h2,.vp-theme-container.no-navbar .theme-default-content h3,.vp-theme-container.no-navbar .theme-default-content h4,.vp-theme-container.no-navbar .theme-default-content h5,.vp-theme-container.no-navbar .theme-default-content h6{margin-top:1.5rem;padding-top:0}.vp-theme-container.no-sidebar .vp-sidebar{display:none}@media (max-width: 719px){.vp-theme-container.no-sidebar .vp-sidebar{display:block}}.vp-theme-container.no-sidebar .vp-page{padding-left:0}@media (max-width: 719px){.vp-theme-container.sidebar-open .vp-sidebar{transform:translate(0)}.vp-theme-container.sidebar-open .vp-sidebar-mask{display:block}}.fade-slide-y-enter-active{transition:all .2s ease}.fade-slide-y-leave-active{transition:all .2s cubic-bezier(1,.5,.8,1)}.fade-slide-y-enter-from,.fade-slide-y-leave-to{opacity:0;transform:translateY(10px)}.vp-theme-container[data-v-99131a8e]{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width: 959px){.vp-theme-container[data-v-99131a8e]{padding:2rem}}html,body{background:#fff}html{font-size:16px;font-display:optional;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}@media print{html{font-size:12pt}}body{min-height:100vh;margin:0;padding:0;color:#2c3e50;font-synthesis:style}a{color:#3eaf7c;font-weight:500;text-decoration:none;overflow-wrap:break-word}kbd{display:inline-block;min-width:1em;margin-inline:.125rem;padding:.25em;border:1px solid #eee;border-radius:.25em;box-shadow:1px 1px 4px #00000026;line-height:1;letter-spacing:-.1em;text-align:center}:not(pre)>code{margin:0;padding:3px 6px;border-radius:4px;background:#7f7f7f1f;font-size:.875em;overflow-wrap:break-word}table code{padding:.1rem .4rem}p a code{color:#3eaf7c;font-weight:400}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;overflow-wrap:break-word}h1:focus-visible,h2:focus-visible,h3:focus-visible,h4:focus-visible,h5:focus-visible,h6:focus-visible{outline:none}h1{font-size:2rem}h2{padding-bottom:.3rem;border-bottom:1px solid #eaecef;font-size:1.65rem}h3{font-size:1.35rem}h4{font-size:1.15rem}h5{font-size:1.05rem}h6{font-size:1rem}a.header-anchor{position:relative;color:inherit;text-decoration:none}a.header-anchor:hover:before{content:"¶";position:absolute;top:.4167em;left:-.75em;color:var(--c-brand);font-size:.75em}a.header-anchor:focus-visible{outline:none}a.header-anchor:focus-visible:before{content:"¶";position:absolute;left:-.75em;color:var(--c-brand);outline:auto}p,ul,ol{line-height:1.6;overflow-wrap:break-word}@media print{p,ul,ol{line-height:1.5}}ul,ol{padding-inline-start:1.2em}blockquote{margin:1rem 0;padding:.25rem 0 .25rem 1rem;border-inline-start:.2rem solid #ddd;color:#666;font-size:1rem;overflow-wrap:break-word}blockquote>p{margin:0}hr{border:0;border-top:1px solid #eaecef}table{display:block;overflow-x:auto;margin:1rem 0;border-collapse:collapse}tr:nth-child(odd){background:#f6f8fa}th,td{padding:.6em 1em;border:1px solid #dfe2e5}pre{text-align:left;direction:ltr;white-space:pre;word-spacing:normal;word-wrap:normal;word-break:normal;overflow-wrap:unset;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}@media print{pre{white-space:pre-wrap}}pre code{padding:0;border-radius:0}@page{margin:2cm;font-size:12pt;size:a4}@media print{*,:after,:before{box-shadow:none!important;text-shadow:none!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}a{color:inherit;font-weight:inherit!important;font-size:inherit!important;text-decoration:underline}a.header-anchor{text-decoration:none}abbr[title]:after{content:" (" attr(title) ")"}pre{border:1px solid #eee;white-space:pre-wrap!important}pre>code{white-space:pre-wrap!important}blockquote{border-inline-start:.2rem solid #ddd;color:inherit}blockquote,pre{orphans:5;widows:5}img,tr,canvas{page-break-inside:avoid}}@media (prefers-reduced-motion: reduce){*,:before,:after{background-attachment:initial!important;scroll-behavior:auto!important;transition-delay:0s!important;transition-duration:0s!important;animation-duration:1ms!important;animation-delay:-1ms!important;animation-iteration-count:1!important}}:root{--c-brand: #3eaf7c;--c-brand-light: #4abf8a;--c-bg: #fff;--c-bg-light: #f3f4f5;--c-bg-lighter: #eee;--c-bg-dark: #ebebec;--c-bg-darker: #e6e6e6;--c-bg-navbar: var(--c-bg);--c-bg-sidebar: var(--c-bg);--c-bg-arrow: #ccc;--c-text: #2c3e50;--c-text-accent: var(--c-brand);--c-text-light: #3a5169;--c-text-lighter: #4e6e8e;--c-text-lightest: #6a8bad;--c-text-quote: #999;--c-border: #eaecef;--c-border-dark: #dfe2e5;--c-tip: #42b983;--c-tip-bg: var(--c-bg-light);--c-tip-title: var(--c-text);--c-tip-text: var(--c-text);--c-tip-text-accent: var(--c-text-accent);--c-warning: #ffc310;--c-warning-bg: #fffae3;--c-warning-bg-light: #fff3ba;--c-warning-bg-lighter: #fff0b0;--c-warning-border-dark: #f7dc91;--c-warning-details-bg: #fff5ca;--c-warning-title: #f1b300;--c-warning-text: #746000;--c-warning-text-accent: #edb100;--c-warning-text-light: #c1971c;--c-warning-text-quote: #ccab49;--c-danger: #f11e37;--c-danger-bg: #ffe0e0;--c-danger-bg-light: #ffcfde;--c-danger-bg-lighter: #ffc9c9;--c-danger-border-dark: #f1abab;--c-danger-details-bg: #ffd4d4;--c-danger-title: #ed1e2c;--c-danger-text: #600;--c-danger-text-accent: #bd1a1a;--c-danger-text-light: #b5474d;--c-danger-text-quote: #c15b5b;--c-details-bg: #eee;--c-badge-tip: var(--c-tip);--c-badge-warning: #ecc808;--c-badge-warning-text: var(--c-bg);--c-badge-danger: #dc2626;--c-badge-danger-text: var(--c-bg);--c-code-group-tab-title: rgb(255 255 255 / 90%);--c-code-group-tab-bg: var(--code-bg-color);--c-code-group-tab-outline: var(var(--c-code-group-tab-title));--c-code-group-tab-active-border: var(--c-brand);--t-color: .3s ease;--t-transform: .3s ease;--font-family: -apple-system, "BlinkMacSystemFont", "Segoe UI", roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--navbar-height: 3.6rem;--navbar-padding-v: .7rem;--navbar-padding-h: 1.5rem;--sidebar-width: 20rem;--sidebar-width-mobile: calc(var(--sidebar-width) * .82);--content-width: 740px;--homepage-width: 960px;--external-link-icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");--external-link-icon-color: var(--c-text-quote)}.vp-back-to-top-button{--back-to-top-color: var(--c-brand);--back-to-top-color-hover: var(--c-brand-light);--back-to-top-bg-color: var(--c-bg)}.vp-catalog-wrapper{--catalog-bg-color: var(--c-bg);--catalog-bg-secondary-color: var(--c-bg-dark);--catalog-border-color: var(--c-border);--catalog-active-color: var(--c-brand);--catalog-hover-color: var(--c-brand-light)}.waline-wrapper{--waline-bg-color: var(--c-bg);--waline-bg-color-light: var(--c-bg-light);--waline-text-color: var(--c-color);--waline-border: 1px solid var(--c-border);--waline-border-color: var(--c-border);--waline-theme-color: var(--c-brand);--waline-active-color: var(--c-brand-light)}.DocSearch{--docsearch-primary-color: var(--c-brand);--docsearch-text-color: var(--c-text);--docsearch-highlight-color: var(--c-brand);--docsearch-muted-color: var(--c-text-quote);--docsearch-container-background: rgb(9 10 17 / 80%);--docsearch-modal-background: var(--c-bg-light);--docsearch-searchbox-background: var(--c-bg-lighter);--docsearch-searchbox-focus-background: var(--c-bg);--docsearch-searchbox-shadow: inset 0 0 0 2px var(--c-brand);--docsearch-hit-color: var(--c-text-light);--docsearch-hit-active-color: var(--c-bg);--docsearch-hit-background: var(--c-bg);--docsearch-hit-shadow: 0 1px 3px 0 var(--c-border-dark);--docsearch-footer-background: var(--c-bg)}.medium-zoom-overlay{--medium-zoom-bg-color: var(--c-bg)}.vp-notice-wrapper{--notice-color: var(--c-text);--notice-bg-color: var(--c-bg);--notice-primary-color: var(--c-brand);--notice-primary-text-color: var(--c-bg);--notice-primary-hover-color: var(--c-brand-light);--notice-button-color: var(--c-bg-light);--notice-button-hover-color: var(--c-bg-lighter)}#nprogress{--nprogress-color: var(--c-brand)}body{--photo-swipe-bullet: var(--c-bg);--photo-swipe-bullet-active: var(--c-brand);--pwa-text-color: var(--c-text);--pwa-bg-color: var(--c-bg);--pwa-border-color: var(--c-brand);--pwa-btn-text-color: var(--c-bg);--pwa-btn-bg-color: var(--c-brand);--pwa-btn-hover-bg-color: var(--c-brand-light)}.redirect-modal-mask{--redirect-bg-color: var(--c-bg);--redirect-bg-color-light: var(--c-bg-light);--redirect-bg-color-lighter: var(--c-bg-lighter);--redirect-text-color: var(--c-text);--redirect-primary-color: var(--c-brand);--redirect-primary-hover-color: var(--c-brand-light);--redirect-primary-text-color: var(--c-bg)}.search-box{--search-bg-color: var(--c-bg);--search-accent-color: var(--c-brand);--search-text-color: var(--c-text);--search-border-color: var(--c-border);--search-item-text-color: var(--c-text-lighter);--search-item-focus-bg-color: var(--c-bg-light)}html.dark{--c-brand: #3aa675;--c-brand-light: #349469;--c-bg: #22272e;--c-bg-light: #2b313a;--c-bg-lighter: #262c34;--c-bg-dark: #343b44;--c-bg-darker: #37404c;--c-text: #adbac7;--c-text-light: #96a7b7;--c-text-lighter: #8b9eb0;--c-text-lightest: #8094a8;--c-border: #3e4c5a;--c-border-dark: #34404c;--c-tip: #318a62;--c-warning: #e0ad15;--c-warning-bg: #2d2f2d;--c-warning-bg-light: #423e2a;--c-warning-bg-lighter: #44442f;--c-warning-border-dark: #957c35;--c-warning-details-bg: #39392d;--c-warning-title: #fdca31;--c-warning-text: #d8d96d;--c-warning-text-accent: #ffbf00;--c-warning-text-light: #ddb84b;--c-warning-text-quote: #ccab49;--c-danger: #fc1e38;--c-danger-bg: #39232c;--c-danger-bg-light: #4b2b35;--c-danger-bg-lighter: #553040;--c-danger-border-dark: #a25151;--c-danger-details-bg: #482936;--c-danger-title: #fc2d3b;--c-danger-text: #ea9ca0;--c-danger-text-accent: #fd3636;--c-danger-text-light: #d9777c;--c-danger-text-quote: #d56b6b;--c-details-bg: #323843;--c-badge-warning: var(--c-warning);--c-badge-warning-text: #3c2e05;--c-badge-danger: var(--c-danger);--c-badge-danger-text: #401416}html.dark .DocSearch{--docsearch-logo-color: var(--c-text);--docsearch-modal-shadow: inset 1px 1px 0 0 #2c2e40, 0 3px 8px 0 #000309;--docsearch-key-shadow: inset 0 -2px 0 0 #282d55, inset 0 0 1px 1px #51577d, 0 2px 2px 0 rgb(3 4 9 / 30%);--docsearch-key-gradient: linear-gradient(-225deg, #444950, #1c1e21);--docsearch-footer-shadow: inset 0 1px 0 0 rgb(73 76 106 / 50%), 0 -4px 8px 0 rgb(0 0 0 / 20%)}html.dark body{--pwa-shadow-color: rgb(0 0 0 / 30%);--pwa-content-color: #ccc;--pwa-content-light-color: #999}html,body{background-color:var(--c-bg);transition:background-color var(--t-color)}html.dark{color-scheme:dark}body{color:var(--c-text);font-size:1rem;font-family:var(--font-family)}h2{border-color:var(--c-border);transition:border-color var(--t-color)}a{color:var(--c-text-accent)}code{background-color:var(--c-bg-light);color:var(--c-text-lighter);font-family:var(--code-font-family);transition:background-color var(--t-color)}p a code{color:var(--c-text-accent)}kbd{border-color:var(--c-border-dark);transition:border-color var(--t-color)}blockquote{border-color:var(--c-border-dark);color:var(--c-text-quote);transition:border-color var(--t-color)}hr{border-color:var(--c-border);transition:border-color var(--t-color)}table{transition:border-color var(--t-color)}tr:nth-child(odd){background-color:var(--c-bg-light);transition:background-color var(--t-color)}tr:nth-child(odd) code{background-color:var(--c-bg-dark)}th,td{border-color:var(--c-border-dark);transition:border-color var(--t-color)}.theme-default-content h1,.theme-default-content h2,.theme-default-content h3,.theme-default-content h4,.theme-default-content h5,.theme-default-content h6{margin-top:calc(.5rem - var(--navbar-height));margin-bottom:0;padding-top:calc(1rem + var(--navbar-height))}.theme-default-content h1:first-child,.theme-default-content h2:first-child,.theme-default-content h3:first-child,.theme-default-content h4:first-child,.theme-default-content h5:first-child,.theme-default-content h6:first-child{margin-bottom:1rem}.theme-default-content h1:first-child+p,.theme-default-content h1:first-child+pre,.theme-default-content h1:first-child+.custom-container,.theme-default-content h2:first-child+p,.theme-default-content h2:first-child+pre,.theme-default-content h2:first-child+.custom-container,.theme-default-content h3:first-child+p,.theme-default-content h3:first-child+pre,.theme-default-content h3:first-child+.custom-container,.theme-default-content h4:first-child+p,.theme-default-content h4:first-child+pre,.theme-default-content h4:first-child+.custom-container,.theme-default-content h5:first-child+p,.theme-default-content h5:first-child+pre,.theme-default-content h5:first-child+.custom-container,.theme-default-content h6:first-child+p,.theme-default-content h6:first-child+pre,.theme-default-content h6:first-child+.custom-container{margin-top:2rem}@media (max-width: 419px){.theme-default-content h1{font-size:1.9rem}}.theme-default-content a:not(.header-anchor){text-decoration:underline}.theme-default-content img{max-width:100%}div[class*=language-]{margin:.75rem 0;transition:background-color var(--t-color),color var(--t-color)}@media (max-width: 419px){div[class*=language-]{--code-border-radius: 0;margin:.75rem -1.5rem}}div[class*=language-] .line.diff,div[class*=language-] .line.highlighted{transition:background-color var(--t-color)}.custom-container{transition:color var(--t-color),border-color var(--t-color),background-color var(--t-color)}.custom-container .custom-container-title{font-weight:600}.custom-container .custom-container-title:not(:only-child){margin-bottom:-.4rem}.custom-container.tip,.custom-container.warning,.custom-container.danger{margin:1rem 0;padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid}.custom-container.tip{border-color:var(--c-tip);background-color:var(--c-tip-bg);color:var(--c-tip-text)}.custom-container.tip .custom-container-title{color:var(--c-tip-title)}.custom-container.tip a{color:var(--c-tip-text-accent)}.custom-container.tip code{background-color:var(--c-bg-dark)}.custom-container.warning{--external-link-icon-color: var(--c-warning-text-quote);border-color:var(--c-warning);background-color:var(--c-warning-bg);color:var(--c-warning-text)}.custom-container.warning .custom-container-title{color:var(--c-warning-title)}.custom-container.warning a{color:var(--c-warning-text-accent)}.custom-container.warning blockquote{border-left-color:var(--c-warning-border-dark);color:var(--c-warning-text-quote)}.custom-container.warning code{background-color:var(--c-warning-bg-light);color:var(--c-warning-text-light)}.custom-container.warning details{background-color:var(--c-warning-details-bg)}.custom-container.warning details code{background-color:var(--c-warning-bg-lighter)}.custom-container.danger{--external-link-icon-color: var(--c-danger-text-quote);border-color:var(--c-danger);background-color:var(--c-danger-bg);color:var(--c-danger-text)}.custom-container.danger .custom-container-title{color:var(--c-danger-title)}.custom-container.danger a{color:var(--c-danger-text-accent)}.custom-container.danger blockquote{border-left-color:var(--c-danger-border-dark);color:var(--c-danger-text-quote)}.custom-container.danger code{background-color:var(--c-danger-bg-light);color:var(--c-danger-text-light)}.custom-container.danger details{background-color:var(--c-danger-details-bg)}.custom-container.danger details code{background-color:var(--c-danger-bg-lighter)}.custom-container.details{position:relative;display:block;margin:1.6em 0;padding:1.6em;border-radius:2px;background-color:var(--c-details-bg)}.custom-container.details code{background-color:var(--c-bg-darker)}.custom-container.details h4{margin-top:0}.custom-container.details figure:last-child,.custom-container.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-container.details summary{outline:none;cursor:pointer}.table-of-contents .vp-badge{vertical-align:middle}.arrow{display:inline-block;vertical-align:middle;width:1em;height:1em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;line-height:normal;transition:all .3s}html.dark .arrow{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")}.arrow.down{transform:rotate(180deg)}.arrow.right{transform:rotate(90deg)}.arrow.left{transform:rotate(-90deg)}.vp-external-link-icon:after{content:"";display:inline-block;flex-shrink:0;width:11px;height:11px;margin-top:-1px;margin-left:4px;background:var(--external-link-icon-color);-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .external-link:after{content:"";display:inline-block;flex-shrink:0;width:11px;height:11px;margin-top:-1px;margin-left:4px;background:var(--external-link-icon-color);-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .theme-default-content a[href*="://"]:not(.no-external-link-icon):after,.external-link-icon .theme-default-content a[target=_blank]:not(.no-external-link-icon):after{content:"";display:inline-block;flex-shrink:0;width:11px;height:11px;margin-top:-1px;margin-left:4px;background:var(--external-link-icon-color);-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}@media screen and (max-width: 719px){.vp-hide-mobile{display:none}}#vp-comment{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem}@media (max-width: 959px){#vp-comment{padding:2rem}}@media (max-width: 419px){#vp-comment{padding:1.5rem}}.vp-navbar .DocSearch{transition:background-color var(--t-color)}.vp-navbar .search-box{vertical-align:top;flex:0 0 auto}.lang-modal-fade-enter-active,.lang-modal-fade-leave-active{transition:opacity .5s}.lang-modal-fade-enter,.lang-modal-fade-leave-to{opacity:0}.lang-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1499;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media print{.lang-modal-mask{display:none}}.lang-modal-wrapper{position:relative;z-index:1500;overflow:hidden;max-width:80vw;padding:1rem 2rem;border-radius:8px;background:var(--vp-bg);box-shadow:0 2px 6px 0 var(--card-shadow)}.lang-modal-action{display:block;width:100%;margin:1rem 0;padding:.5rem .75rem;border:none;border-radius:8px;background-color:var(--vp-bglt);color:var(--vp-c);cursor:pointer}.lang-modal-action:hover{background-color:var(--vp-bgl)}.lang-modal-action.primary{background-color:var(--vp-tc);color:var(--white)}.lang-modal-action.primary:hover{background-color:var(--vp-tcl)}.grey{color:#0006}.works-table-wrapper[data-v-765855fb]{margin:0 auto;padding:0 2rem;max-width:1224px;box-sizing:border-box}.works-table-wrapper[data-v-765855fb] table{width:100%}:root{--content-width: 960px}.vp-page .theme-default-content{padding-bottom:0!important}.vp-page-meta{display:none} diff --git a/dist/assets/works.html-D3oTJVPS.js b/dist/assets/works.html-B-M3ZurS.js similarity index 99% rename from dist/assets/works.html-D3oTJVPS.js rename to dist/assets/works.html-B-M3ZurS.js index 5c814b2..86b1c29 100644 --- a/dist/assets/works.html-D3oTJVPS.js +++ b/dist/assets/works.html-B-M3ZurS.js @@ -1 +1 @@ -import{_ as e,c as r,o as t,e as a}from"./app-Dg9P_Zls.js";const l={},i=a('

Выделенный опыт работы

Binary Management

  • Даты: Август 2018 – по настоящее время
  • Роли: Lead Fullstack Developer, Team Lead, Architect

Разработка инструмента управления проектами для дизайнеров интерьера

  • Разработка GraphQL API (Node.JS, Apollo, PostgreSQL, Redis, BullMQ). Перенес триггеры базы данных в бизнес-логику. Написал интеграционные тесты на 70% api.
  • Разработка фронтенда (React, Antd). Сформировал uikit и общие компоненты, оптимизировал сложные и нагруженные компоненты. Полностью изменил работу с API на фронтенде. Внедрил практику написания интеграционных тестов с помощью cypress.
  • Полностью перенес проект на TypeScript. Сформировал изолированные модули системы.
  • Как руководитель команды, я привнес в проект метод критической цепи, метод буфера и метод планирования с конца. Помог команде войти в ритм, чтобы выпускать релизы каждую неделю небольшими партиями. Я также несколько раз составлял индивидуальный план развития для членов команды.

Master Progress

  • Даты: Май 2018 - по настоящее время (Пассивная поддержка)
  • Роль: Tech Lead

Разработка веб-инфраструктуры образовательного центра Мастер Прогресс

Core Spirit

  • Даты: Август 2018 - May 2020
  • Роль: Lead Fullstack Developer

Разработка социальной платформы, сфокусированной на улучшении человека и планеты.

  • REST API (Node.JS, Express, PostgreSQL) для основного сайта и бэк-офиса.
  • Автопостер в различные социальные сети и мессенджеры (Facebook, LinkedIn, Twitter, Telegram).
  • Создал нейронную сеть для автоматической категоризации статей.

MERLION

  • Dates: March 2016 – May 2018
  • Role: Senior Fullstack developer

В этой компании было 6 значительных проектов, которые я успешно завершил:

  • Оптимизация создания рекламных страниц (PHP, JavaScript)
  • Поддержка основного традиционного сайта https://citilink.ru (PHP, JavaScript)
  • Разработка парсинга для мониторинга товаров на предмет изменения цены, количества/наличия на складе, рейтинга и других полей на основе данных с 55+ сайтов (Node.js, Express)
  • Работа с нейронными сетями для подбора товаров
  • Разработка приложений для распознавания лиц для Android (Java)

Хронология

В списке перечислены только публичные проекты.

',19),s=[i];function n(o,p){return t(),r("div",null,s)}const h=e(l,[["render",n],["__file","works.html.vue"]]),d=JSON.parse('{"path":"/works.html","title":"Работы","lang":"ru-RU","frontmatter":{"title":"Работы","layout":"WorksPage","sidebar":false,"head":[["link",{"rel":"alternate","hreflang":"en-us","href":"https://pleshevski.ru/eng/works.html"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/works.html"}],["meta",{"property":"og:site_name","content":"Дмитрий Плешевский"}],["meta",{"property":"og:title","content":"Работы"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"ru-RU"}],["meta",{"property":"og:locale:alternate","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-07-25T13:59:34.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T13:59:34.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Работы\\"}"]]},"headers":[{"level":2,"title":"Выделенный опыт работы","slug":"выделенныи-опыт-работы","link":"#выделенныи-опыт-работы","children":[]},{"level":2,"title":"Хронология","slug":"хронология","link":"#хронология","children":[]}],"git":{"updatedTime":1721915974000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":3}]},"filePathRelative":"works.md"}');export{h as comp,d as data}; +import{_ as e,c as r,o as t,e as a}from"./app-OMtl6IVo.js";const l={},i=a('

Выделенный опыт работы

Binary Management

  • Даты: Август 2018 – по настоящее время
  • Роли: Lead Fullstack Developer, Team Lead, Architect

Разработка инструмента управления проектами для дизайнеров интерьера

  • Разработка GraphQL API (Node.JS, Apollo, PostgreSQL, Redis, BullMQ). Перенес триггеры базы данных в бизнес-логику. Написал интеграционные тесты на 70% api.
  • Разработка фронтенда (React, Antd). Сформировал uikit и общие компоненты, оптимизировал сложные и нагруженные компоненты. Полностью изменил работу с API на фронтенде. Внедрил практику написания интеграционных тестов с помощью cypress.
  • Полностью перенес проект на TypeScript. Сформировал изолированные модули системы.
  • Как руководитель команды, я привнес в проект метод критической цепи, метод буфера и метод планирования с конца. Помог команде войти в ритм, чтобы выпускать релизы каждую неделю небольшими партиями. Я также несколько раз составлял индивидуальный план развития для членов команды.

Master Progress

  • Даты: Май 2018 - по настоящее время (Пассивная поддержка)
  • Роль: Tech Lead

Разработка веб-инфраструктуры образовательного центра Мастер Прогресс

Core Spirit

  • Даты: Август 2018 - May 2020
  • Роль: Lead Fullstack Developer

Разработка социальной платформы, сфокусированной на улучшении человека и планеты.

  • REST API (Node.JS, Express, PostgreSQL) для основного сайта и бэк-офиса.
  • Автопостер в различные социальные сети и мессенджеры (Facebook, LinkedIn, Twitter, Telegram).
  • Создал нейронную сеть для автоматической категоризации статей.

MERLION

  • Dates: March 2016 – May 2018
  • Role: Senior Fullstack developer

В этой компании было 6 значительных проектов, которые я успешно завершил:

  • Оптимизация создания рекламных страниц (PHP, JavaScript)
  • Поддержка основного традиционного сайта https://citilink.ru (PHP, JavaScript)
  • Разработка парсинга для мониторинга товаров на предмет изменения цены, количества/наличия на складе, рейтинга и других полей на основе данных с 55+ сайтов (Node.js, Express)
  • Работа с нейронными сетями для подбора товаров
  • Разработка приложений для распознавания лиц для Android (Java)

Хронология

В списке перечислены только публичные проекты.

',19),s=[i];function n(o,p){return t(),r("div",null,s)}const h=e(l,[["render",n],["__file","works.html.vue"]]),d=JSON.parse('{"path":"/works.html","title":"Работы","lang":"ru-RU","frontmatter":{"title":"Работы","layout":"WorksPage","sidebar":false,"head":[["link",{"rel":"alternate","hreflang":"en-us","href":"https://pleshevski.ru/eng/works.html"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/works.html"}],["meta",{"property":"og:site_name","content":"Дмитрий Плешевский"}],["meta",{"property":"og:title","content":"Работы"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"ru-RU"}],["meta",{"property":"og:locale:alternate","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-07-25T13:59:34.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T13:59:34.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Работы\\"}"]]},"headers":[{"level":2,"title":"Выделенный опыт работы","slug":"выделенныи-опыт-работы","link":"#выделенныи-опыт-работы","children":[]},{"level":2,"title":"Хронология","slug":"хронология","link":"#хронология","children":[]}],"git":{"updatedTime":1721915974000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":3}]},"filePathRelative":"works.md"}');export{h as comp,d as data}; diff --git a/dist/assets/works.html-BrLYBvQK.js b/dist/assets/works.html-B4GC5YDW.js similarity index 98% rename from dist/assets/works.html-BrLYBvQK.js rename to dist/assets/works.html-B4GC5YDW.js index 2fb2c51..17019d3 100644 --- a/dist/assets/works.html-BrLYBvQK.js +++ b/dist/assets/works.html-B4GC5YDW.js @@ -1 +1 @@ -import{_ as e,c as t,o as r,e as o}from"./app-Dg9P_Zls.js";const a={},i=o('

Highlighted working experience

Binary Management

  • Dates: August 2018 – currently
  • Roles: Lead Fullstack Developer, Team Lead, Architect

Development of a project management tool for interior designers

  • Development of the GraphQL API (Node.JS, Apollo, PostgreSQL, Redis, BullMQ). Moved database triggers to business logic. Wrote integration tests on 70% api.
  • Development of the frontend (React, Antd). Formed uikit, shared components, redesigned the page generation gathering. Completely changed work with API on the frontend. Introduced the practice of writing integration tests using cypress
  • Completely ported the project to TypeScript. I have formed isolated modules of the system.
  • As a team leader, I brought the critical chain method, the buffer method, and the planning method to the project from the end. Helped the team get into a rhythm to make releases each week in small batches. A couple of times I also prepared an individual development plan for team members.

Master Progress

  • Dates: May 2018 - currently (Passively maintained)
  • Role: Tech Lead

Development web infrastructure of the educational center Master Progress

Core Spirit

  • Dates: August 2018 - May 2020
  • Role: Lead Fullstack Developer

Development of Social platform focusing on human and planetary enhancement.

  • REST API (Node.JS, Express, PostgreSQL) for main site and backoffice.
  • Auto poster to various social networks and messengers (Facebook, LinkedIn, Twitter, Telegram).
  • Neural network for automatic categorization of articles.

MERLION

  • Dates: March 2016 – May 2018
  • Role: Senior Fullstack developer

In this company there were 6 considerable projects I have successfully completed:

  • optimize the creation of promotional pages (PHP, JavaScript)
  • support main traditional site https://citilink.ru (PHP, JavaScript)
  • development of parsing to monitor products for changes in price, quantity/availability in stock, rating and other fields based on data from 55 websites (Node.JS, Express)
  • work with neural networks for matching of goods
  • development face recognition apps for Android (Java)

Chronology

Public projects only.

',19),n=[i];function l(s,p){return r(),t("div",null,n)}const h=e(a,[["render",l],["__file","works.html.vue"]]),d=JSON.parse('{"path":"/eng/works.html","title":"Works","lang":"en-US","frontmatter":{"title":"Works","layout":"WorksPage","sidebar":false,"head":[["link",{"rel":"alternate","hreflang":"ru-ru","href":"https://pleshevski.ru/works.html"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/eng/works.html"}],["meta",{"property":"og:site_name","content":"Dmitriy Pleshevskiy"}],["meta",{"property":"og:title","content":"Works"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:locale:alternate","content":"ru-RU"}],["meta",{"property":"og:updated_time","content":"2024-07-25T12:12:09.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T12:12:09.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Works\\"}"]]},"headers":[{"level":2,"title":"Highlighted working experience","slug":"highlighted-working-experience","link":"#highlighted-working-experience","children":[]},{"level":2,"title":"Chronology","slug":"chronology","link":"#chronology","children":[]}],"git":{"updatedTime":1721909529000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":2}]},"filePathRelative":"eng/works.md"}');export{h as comp,d as data}; +import{_ as e,c as t,o as r,e as o}from"./app-OMtl6IVo.js";const a={},i=o('

Highlighted working experience

Binary Management

  • Dates: August 2018 – currently
  • Roles: Lead Fullstack Developer, Team Lead, Architect

Development of a project management tool for interior designers

  • Development of the GraphQL API (Node.JS, Apollo, PostgreSQL, Redis, BullMQ). Moved database triggers to business logic. Wrote integration tests on 70% api.
  • Development of the frontend (React, Antd). Formed uikit, shared components, redesigned the page generation gathering. Completely changed work with API on the frontend. Introduced the practice of writing integration tests using cypress
  • Completely ported the project to TypeScript. I have formed isolated modules of the system.
  • As a team leader, I brought the critical chain method, the buffer method, and the planning method to the project from the end. Helped the team get into a rhythm to make releases each week in small batches. A couple of times I also prepared an individual development plan for team members.

Master Progress

  • Dates: May 2018 - currently (Passively maintained)
  • Role: Tech Lead

Development web infrastructure of the educational center Master Progress

Core Spirit

  • Dates: August 2018 - May 2020
  • Role: Lead Fullstack Developer

Development of Social platform focusing on human and planetary enhancement.

  • REST API (Node.JS, Express, PostgreSQL) for main site and backoffice.
  • Auto poster to various social networks and messengers (Facebook, LinkedIn, Twitter, Telegram).
  • Neural network for automatic categorization of articles.

MERLION

  • Dates: March 2016 – May 2018
  • Role: Senior Fullstack developer

In this company there were 6 considerable projects I have successfully completed:

  • optimize the creation of promotional pages (PHP, JavaScript)
  • support main traditional site https://citilink.ru (PHP, JavaScript)
  • development of parsing to monitor products for changes in price, quantity/availability in stock, rating and other fields based on data from 55 websites (Node.JS, Express)
  • work with neural networks for matching of goods
  • development face recognition apps for Android (Java)

Chronology

Public projects only.

',19),n=[i];function l(s,p){return r(),t("div",null,n)}const h=e(a,[["render",l],["__file","works.html.vue"]]),d=JSON.parse('{"path":"/eng/works.html","title":"Works","lang":"en-US","frontmatter":{"title":"Works","layout":"WorksPage","sidebar":false,"head":[["link",{"rel":"alternate","hreflang":"ru-ru","href":"https://pleshevski.ru/works.html"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/eng/works.html"}],["meta",{"property":"og:site_name","content":"Dmitriy Pleshevskiy"}],["meta",{"property":"og:title","content":"Works"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:locale:alternate","content":"ru-RU"}],["meta",{"property":"og:updated_time","content":"2024-07-25T12:12:09.000Z"}],["meta",{"property":"article:modified_time","content":"2024-07-25T12:12:09.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Works\\"}"]]},"headers":[{"level":2,"title":"Highlighted working experience","slug":"highlighted-working-experience","link":"#highlighted-working-experience","children":[]},{"level":2,"title":"Chronology","slug":"chronology","link":"#chronology","children":[]}],"git":{"updatedTime":1721909529000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":2}]},"filePathRelative":"eng/works.md"}');export{h as comp,d as data}; diff --git a/dist/eng/index.html b/dist/eng/index.html index 56999dd..e925af0 100644 --- a/dist/eng/index.html +++ b/dist/eng/index.html @@ -32,12 +32,12 @@ } Resume | Dmitriy Pleshevskiy - - - + + + -
- +
+ diff --git a/dist/eng/works.html b/dist/eng/works.html index 972238c..521db4c 100644 --- a/dist/eng/works.html +++ b/dist/eng/works.html @@ -32,12 +32,12 @@ } Works | Dmitriy Pleshevskiy - - - + + +
- + diff --git a/dist/index.html b/dist/index.html index f2a36da..e27a53a 100644 --- a/dist/index.html +++ b/dist/index.html @@ -32,12 +32,12 @@ } Резюме | Дмитрий Плешевский - - - + + + -
- +
+ diff --git a/dist/works.html b/dist/works.html index 6899476..fb83256 100644 --- a/dist/works.html +++ b/dist/works.html @@ -32,12 +32,12 @@ } Работы | Дмитрий Плешевский - - - + + +
- + diff --git a/docs/eng/index.md b/docs/eng/index.md index 344bc72..423ac29 100644 --- a/docs/eng/index.md +++ b/docs/eng/index.md @@ -104,5 +104,5 @@ Email: `dmitriy[at]pleshevski[dot]ru` ## Links -- [Gitea](https://git.pleshevski.ru/) +- [Forgejo](https://git.pleshevski.ru/) - [Github (Suspended due to sanctions)](https://github.com/pleshevskiy) diff --git a/docs/index.md b/docs/index.md index 7141ac7..664dbe1 100644 --- a/docs/index.md +++ b/docs/index.md @@ -106,5 +106,5 @@ Email: `dmitriy[at]pleshevski[dot]ru` ## Ссылки -- [Gitea](https://git.pleshevski.ru/) +- [Forgejo](https://git.pleshevski.ru/) - [Github (Приостановлен из-за санкций)](https://github.com/pleshevskiy)