diff --git a/.obsidian/appearance.json b/.obsidian/appearance.json index 0bcd4fcb..4058aa99 100644 --- a/.obsidian/appearance.json +++ b/.obsidian/appearance.json @@ -1,7 +1,7 @@ { "theme": "system", "cssTheme": "Minimal", - "baseFontSize": 25.5, + "baseFontSize": 26, "enabledCssSnippets": [ "pdf_darkmode", "query_header_title", diff --git a/.obsidian/community-plugins.json b/.obsidian/community-plugins.json index 61b0dfb8..b0629616 100644 --- a/.obsidian/community-plugins.json +++ b/.obsidian/community-plugins.json @@ -37,5 +37,6 @@ "note-aliases", "share-note", "templater-obsidian", - "link-tree" + "link-tree", + "file-tree-alternative" ] \ No newline at end of file diff --git a/.obsidian/plugins/breadcrumbs/main.js b/.obsidian/plugins/breadcrumbs/main.js index 90073607..7472e477 100644 --- a/.obsidian/plugins/breadcrumbs/main.js +++ b/.obsidian/plugins/breadcrumbs/main.js @@ -69,22 +69,22 @@ ${a} `).filter(s=>!s.includes("svelte/src/internal")).join(` `)}}}function fx(t){let e=Op.get(t);e&&(rr(t,"message",{value:e.message}),rr(t,"stack",{value:e.stack}))}var Xy=typeof requestIdleCallback>"u"?t=>setTimeout(t,1):requestIdleCallback,ju=[],xu=[];function dx(){var t=ju;ju=[],as(t)}function cx(){var t=xu;xu=[],as(t)}function to(t){ju.length===0&&queueMicrotask(dx),ju.push(t)}function px(t){xu.length===0&&Xy(cx),xu.push(t)}function mx(){ju.length>0&&dx(),xu.length>0&&cx()}var UC=589952;function vf(){for(var t=Ae.b;t!==null&&!t.has_pending_snippet();)t=t.parent;return t===null&&Hj(),t}var Pa=null;function Rp(t){Pa=t}var ku=new Set;function kn(t){var e=2050,r=je!==null&&(je.f&2)!==0?je:null;Ae===null||r!==null&&(r.f&256)!==0?e|=256:Ae.f|=524288;let o={ctx:Le,deps:null,effects:null,equals:_f,f:e,fn:t,reactions:null,rv:0,v:At,wv:0,parent:r??Ae,ac:null};return N&&na&&(o.created=ia("CreatedAt")),o}function Lp(t,e){let r=Ae;r===null&&Vj();var o=r.b,a=void 0,n=qr(At),s=null,i=!je;return _x(()=>{N&&(Pa=Ae);try{var l=t()}catch(m){l=Promise.reject(m)}N&&(Pa=null);var u=()=>l;a=s?.then(u,u)??Promise.resolve(l),s=a;var A=ze,c=o.pending;i&&(o.update_pending_count(1),c||A.increment());let p=(m,h=void 0)=>{s=null,Pa=null,c||A.activate(),h?h!==Bi&&(n.f|=8388608,Aa(n,h)):((n.f&8388608)!==0&&(n.f^=8388608),Aa(n,m),N&&e!==void 0&&(ku.add(n),setTimeout(()=>{ku.has(n)&&(nx(n.label,e),ku.delete(n))}))),i&&(o.update_pending_count(-1),c||A.decrement()),wf()};if(a.then(p,m=>p(null,m||"unknown")),A)return()=>{queueMicrotask(()=>A.neuter())}}),N&&(n.f|=4194304),new Promise(l=>{function u(A){function c(){A===a?l(n):u(a)}A.then(c,c)}u(a)})}function de(t){let e=kn(t);return yf(e),e}function As(t){let e=kn(t);return e.equals=hf,e}function kf(t){var e=t.effects;if(e!==null){t.effects=null;for(var r=0;rLp(l))).then(l=>{a?.activate(),s();try{r([...t.map(o),...l])}catch(u){(n.f&16384)===0&&Ti(u,n)}a?.deactivate(),wf()}).catch(l=>{i.error(l)})}function tE(){var t=Ae,e=je,r=Le;return function(){Lt(t),Zt(e),xn(r),N&&Rp(null)}}function wf(){Lt(null),Zt(null),xn(null),N&&Rp(null)}var Eu=new Set,ze=null,Iu=null,vn=null,Np=new Set,$f=[];function gx(){let t=$f.shift();$f.length>0&&queueMicrotask(gx),t()}var cs=[],Sf=null,Hp=!1,Ef=!1,Mi,Ni,bn,$u,Du,ds,qi,wn,yn,Pi,Fu,Bu,Wo,jx,If,Vp,Df=class Df{constructor(){zt(this,Wo);Ze(this,"current",new Map);zt(this,Mi,new Map);zt(this,Ni,new Set);zt(this,bn,0);zt(this,$u,null);zt(this,Du,!1);zt(this,ds,[]);zt(this,qi,[]);zt(this,wn,[]);zt(this,yn,[]);zt(this,Pi,[]);zt(this,Fu,[]);zt(this,Bu,[]);Ze(this,"skipped_effects",new Set)}process(e){cs=[],Iu=null;var r=null;if(Eu.size>1){r=new Map,vn=new Map;for(let[n,s]of this.current)r.set(n,{v:n.v,wv:n.wv}),n.v=s;for(let n of Eu)if(n!==this)for(let[s,i]of ye(n,Mi))r.has(s)||(r.set(s,{v:s.v,wv:s.wv}),s.v=i)}for(let n of e)Ia(this,Wo,jx).call(this,n);if(ye(this,ds).length===0&&ye(this,bn)===0){Ia(this,Wo,Vp).call(this);var o=ye(this,wn),a=ye(this,yn);ur(this,wn,[]),ur(this,yn,[]),ur(this,Pi,[]),Iu=ze,ze=null,hx(o),hx(a),ze===null?ze=this:Eu.delete(this),ye(this,$u)?.resolve()}else Ia(this,Wo,If).call(this,ye(this,wn)),Ia(this,Wo,If).call(this,ye(this,yn)),Ia(this,Wo,If).call(this,ye(this,Pi));if(r){for(let[n,{v:s,wv:i}]of r)n.wv<=i&&(n.v=s);vn=null}for(let n of ye(this,ds))La(n);for(let n of ye(this,qi))La(n);ur(this,ds,[]),ur(this,qi,[])}capture(e,r){ye(this,Mi).has(e)||ye(this,Mi).set(e,r),this.current.set(e,e.v)}activate(){ze=this}deactivate(){ze=null,Iu=null;for(let e of Np)if(Np.delete(e),e(),ze!==null)break}neuter(){ur(this,Du,!0)}flush(){cs.length>0?Up():Ia(this,Wo,Vp).call(this),ze===this&&(ye(this,bn)===0&&Eu.delete(this),this.deactivate())}increment(){ur(this,bn,ye(this,bn)+1)}decrement(){if(ur(this,bn,ye(this,bn)-1),ye(this,bn)===0){for(let e of ye(this,Fu))Gt(e,2048),fa(e);for(let e of ye(this,Bu))Gt(e,4096),fa(e);ur(this,wn,[]),ur(this,yn,[]),this.flush()}else this.deactivate()}add_callback(e){ye(this,Ni).add(e)}settled(){return(ye(this,$u)??ur(this,$u,Lj())).promise}static ensure(){if(ze===null){let e=ze=new Df;Eu.add(ze),Ef||Df.enqueue(()=>{ze===e&&e.flush()})}return ze}static enqueue(e){$f.length===0&&queueMicrotask(gx),$f.unshift(e)}};Mi=new WeakMap,Ni=new WeakMap,bn=new WeakMap,$u=new WeakMap,Du=new WeakMap,ds=new WeakMap,qi=new WeakMap,wn=new WeakMap,yn=new WeakMap,Pi=new WeakMap,Fu=new WeakMap,Bu=new WeakMap,Wo=new WeakSet,jx=function(e){e.f^=1024;for(var r=e.first;r!==null;){var o=r.f,a=(o&96)!==0,n=a&&(o&1024)!==0,s=n||(o&8192)!==0||this.skipped_effects.has(r);if(!s&&r.fn!==null){if(a)r.f^=1024;else if((o&1024)===0)if((o&4)!==0)ye(this,yn).push(r);else if(Ho&&(o&8)!==0)ye(this,wn).push(r);else if((o&4194304)!==0){var i=r.b?.pending?ye(this,qi):ye(this,ds);i.push(r)}else En(r)&&((r.f&16)!==0&&ye(this,Pi).push(r),La(r));var l=r.first;if(l!==null){r=l;continue}}var u=r.parent;for(r=r.next;r===null&&u!==null;)r=u.next,u=u.parent}},If=function(e){for(let r of e)((r.f&2048)!==0?ye(this,Fu):ye(this,Bu)).push(r),Gt(r,1024);e.length=0},Vp=function(){if(!ye(this,Du))for(let e of ye(this,Ni))e();ye(this,Ni).clear()};var ua=Df;function Li(t){Ho&&Ae!==null&&Yj();var e=Ef;Ef=!0;try{var r;for(t&&(Up(),r=t());;){if(mx(),cs.length===0&&(ze?.flush(),cs.length===0))return Sf=null,r;Up()}}finally{Ef=e}}function Up(){var t=ps;Hp=!0;try{var e=0;for(zp(!0);cs.length>0;){var r=ua.ensure();if(e++>1e3){if(N){var o=new Map;for(let n of r.current.keys())for(let[s,i]of n.updated??[]){var a=o.get(s);a||(a={error:i.error,count:0},o.set(s,a)),a.count+=i.count}for(let n of o.values())console.error(n.error)}rE()}r.process(cs),Ha.clear()}}finally{Hp=!1,zp(t),Sf=null}}function rE(){try{Zj()}catch(t){N&&rr(t,"stack",{value:""}),Ti(t,Sf)}}function hx(t){var e=t.length;if(e!==0){for(var r=0;ra&&(o.f&1048576)!==0)break}}for(;r0&&!Kp&&Zp()}return e}function Zp(){Kp=!1;let t=Array.from(fs);for(let e of t)(e.f&1024)!==0&&Gt(e,4096),En(e)&&La(e);fs.clear()}function Cf(t,e=1){var r=d(t),o=e===1?r++:r--;return te(t,r),o}function vu(t){te(t,t.v+1)}function vx(t,e){var r=t.reactions;if(r!==null)for(var o=eo(),a=r.length,n=0;n{if($n===s)return A();var c=je,p=$n;Zt(null),Yp(s);var m=A();return Zt(c),Yp(p),m};o&&(r.set("length",We(t.length,n)),N&&(t=nE(t)));var l="";function u(A){l=A,ko(a,`${l} version`);for(let[c,p]of r)ko(p,ms(l,c))}return new Proxy(t,{defineProperty(A,c,p){(!("value"in p)||p.configurable===!1||p.enumerable===!1||p.writable===!1)&&tx();var m=r.get(c);return m===void 0?m=i(()=>{var h=We(p.value,n);return r.set(c,h),N&&typeof c=="string"&&ko(h,ms(l,c)),h}):te(m,p.value,!0),!0},deleteProperty(A,c){var p=r.get(c);if(p===void 0){if(c in A){let m=i(()=>We(At,n));r.set(c,m),vu(a),N&&ko(m,ms(l,c))}}else te(p,At),vu(a);return!0},get(A,c,p){if(c===dr)return t;if(N&&c===df)return u;var m=r.get(c),h=c in A;if(m===void 0&&(!h||jr(A,c)?.writable)&&(m=i(()=>{var I=kt(h?A[c]:At),F=We(I,n);return N&&ko(F,ms(l,c)),F}),r.set(c,m)),m!==void 0){var y=d(m);return y===At?void 0:y}return Reflect.get(A,c,p)},getOwnPropertyDescriptor(A,c){var p=Reflect.getOwnPropertyDescriptor(A,c);if(p&&"value"in p){var m=r.get(c);m&&(p.value=d(m))}else if(p===void 0){var h=r.get(c),y=h?.v;if(h!==void 0&&y!==At)return{enumerable:!0,configurable:!0,value:y,writable:!0}}return p},has(A,c){if(c===dr)return!0;var p=r.get(c),m=p!==void 0&&p.v!==At||Reflect.has(A,c);if(p!==void 0||Ae!==null&&(!m||jr(A,c)?.writable)){p===void 0&&(p=i(()=>{var y=m?kt(A[c]):At,I=We(y,n);return N&&ko(I,ms(l,c)),I}),r.set(c,p));var h=d(p);if(h===At)return!1}return m},set(A,c,p,m){var h=r.get(c),y=c in A;if(o&&c==="length")for(var I=p;IWe(At,n)),r.set(I+"",F),N&&ko(F,ms(l,I)))}if(h===void 0)(!y||jr(A,c)?.writable)&&(h=i(()=>We(void 0,n)),te(h,kt(p)),r.set(c,h),N&&ko(h,ms(l,c)));else{y=h.v!==At;var R=i(()=>kt(p));te(h,R)}var B=Reflect.getOwnPropertyDescriptor(A,c);if(B?.set&&B.set.call(m,p),!y){if(o&&typeof c=="string"){var j=r.get("length"),E=Number(c);Number.isInteger(E)&&E>=j.v&&te(j,E+1)}vu(a)}return!0},ownKeys(A){d(a);var c=Reflect.ownKeys(A).filter(h=>{var y=r.get(h);return y===void 0||y.v!==At});for(var[p,m]of r)m.v!==At&&!(p in A)&&c.push(p);return c},setPrototypeOf(){rx()}})}function ms(t,e){return typeof e=="symbol"?`${t}[Symbol(${e.description??""})]`:oE.test(e)?`${t}.${e}`:/^\d+$/.test(e)?`${t}[${e}]`:`${t}['${e}']`}function Gi(t){try{if(t!==null&&typeof t=="object"&&dr in t)return t[dr]}catch{}return t}function Jp(t,e){return Object.is(Gi(t),Gi(e))}var aE=new Set(["copyWithin","fill","pop","push","reverse","shift","sort","splice","unshift"]);function nE(t){return new Proxy(t,{get(e,r,o){var a=Reflect.get(e,r,o);return aE.has(r)?function(...n){xx();var s=a.apply(this,n);return Zp(),s}:a}})}function bx(){let t=Array.prototype,e=Array.__svelte_cleanup;e&&e();let{indexOf:r,lastIndexOf:o,includes:a}=t;t.indexOf=function(n,s){let i=r.call(this,n,s);if(i===-1){for(let l=s??0;l{t.indexOf=r,t.lastIndexOf=o,t.includes=a}}var Xp,wx,gu,yx,Ex;function Tf(){if(Xp===void 0){Xp=window,wx=document,gu=/Firefox/.test(navigator.userAgent);var t=Element.prototype,e=Node.prototype,r=Text.prototype;yx=jr(e,"firstChild").get,Ex=jr(e,"nextSibling").get,Dp(t)&&(t.__click=void 0,t.__className=void 0,t.__attributes=null,t.__style=void 0,t.__e=void 0),Dp(r)&&(r.__t=void 0),N&&(t.__svelte_meta=null,bx())}}function Yt(t=""){return document.createTextNode(t)}function Ot(t){return yx.call(t)}function cr(t){return Ex.call(t)}function w(t,e){if(!ie)return Ot(t);var r=Ot(be);if(r===null)r=be.appendChild(Yt());else if(e&&r.nodeType!==du){var o=Yt();return r?.before(o),gt(o),o}return gt(r),r}function K(t,e){if(!ie){var r=Ot(t);return r instanceof Comment&&r.data===""?cr(r):r}if(e&&be?.nodeType!==du){var o=Yt();return be?.before(o),gt(o),o}return be}function S(t,e=1,r=!1){let o=ie?be:t;for(var a;e--;)a=o,o=cr(o);if(!ie)return o;if(r&&o?.nodeType!==du){var n=Yt();return o===null?a?.after(n):o.before(n),gt(n),n}return gt(o),o}function Cu(t){t.textContent=""}function _s(){if(!Ho)return!1;var t=Ae.f;return(t&32768)!==0}function em(t){Ae===null&&je===null&&Kj(t),je!==null&&(je.f&256)!==0&&Ae===null&&Wj(),Uo&&zj(t)}function sE(t,e){var r=e.last;r===null?e.last=e.first=t:(r.next=t,t.prev=r,e.last=t)}function Zo(t,e,r,o=!0){var a=Ae;if(N)for(;a!==null&&(a.f&131072)!==0;)a=a.parent;a!==null&&(a.f&8192)!==0&&(t|=8192);var n={ctx:Le,deps:null,nodes_start:null,nodes_end:null,f:t|2048,first:null,fn:e,last:null,next:null,parent:a,b:a&&a.b,prev:null,teardown:null,transitions:null,wv:0,ac:null};if(N&&(n.component_function=Vo),r)try{La(n),n.f|=32768}catch(l){throw $t(n),l}else e!==null&&fa(n);var s=r&&n.deps===null&&n.first===null&&n.nodes_start===null&&n.teardown===null&&(n.f&524288)===0;if(!s&&o&&(a!==null&&sE(n,a),je!==null&&(je.f&2)!==0&&(t&64)===0)){var i=je;(i.effects??(i.effects=[])).push(n)}return n}function kr(t){let e=Zo(8,null,!1);return Gt(e,1024),e.teardown=t,e}function jt(t){em("$effect"),N&&rr(t,"name",{value:"$effect"});var e=Ae.f,r=!je&&(e&32)!==0&&(e&32768)===0;if(r){var o=Le;(o.e??(o.e=[])).push(t)}else return Tp(t)}function Tp(t){return Zo(1048580,t,!1)}function Tu(t){return em("$effect.pre"),N&&rr(t,"name",{value:"$effect.pre"}),Zo(1048584,t,!0)}function Of(t){ua.ensure();let e=Zo(64,t,!0);return()=>{$t(e)}}function $x(t){ua.ensure();let e=Zo(64,t,!0);return(r={})=>new Promise(o=>{r.outro?bo(e,()=>{$t(e),o(void 0)}):($t(e),o(void 0))})}function br(t){return Zo(4,t,!1)}function _x(t){return Zo(4718592,t,!0)}function Wt(t,e=0){return Zo(8|e,t,!0)}function oe(t,e=[],r=[]){yu(e,r,o=>{Zo(8,()=>t(...o.map(d)),!0)})}function Kt(t,e=0){var r=Zo(16|e,t,!0);return N&&(r.dev_stack=la),r}function It(t,e=!0){return Zo(32,t,!0,e)}function tm(t){var e=t.teardown;if(e!==null){let r=Uo,o=je;Qp(!0),Zt(null);try{e.call(null)}finally{Qp(r),Zt(o)}}}function rm(t,e=!1){var r=t.first;for(t.first=t.last=null;r!==null;){r.ac?.abort(Bi);var o=r.next;(r.f&64)!==0?r.parent=null:$t(r,e),r=o}}function Dx(t){for(var e=t.first;e!==null;){var r=e.next;(e.f&32)===0&&$t(e),e=r}}function $t(t,e=!0){var r=!1;(e||(t.f&262144)!==0)&&t.nodes_start!==null&&t.nodes_end!==null&&(Fx(t.nodes_start,t.nodes_end),r=!0),rm(t,e&&!r),Ou(t,0),Gt(t,16384);var o=t.transitions;if(o!==null)for(let n of o)n.stop();tm(t);var a=t.parent;a!==null&&a.first!==null&&Wp(t),N&&(t.component_function=null),t.next=t.prev=t.teardown=t.ctx=t.deps=t.fn=t.nodes_start=t.nodes_end=t.ac=null}function Fx(t,e){for(;t!==null;){var r=t===e?null:cr(t);t.remove(),t=r}}function Wp(t){var e=t.parent,r=t.prev,o=t.next;r!==null&&(r.next=o),o!==null&&(o.prev=r),e!==null&&(e.first===t&&(e.first=o),e.last===t&&(e.last=r))}function bo(t,e){var r=[];Mf(t,r,!0),om(r,()=>{$t(t),e&&e()})}function om(t,e){var r=t.length;if(r>0){var o=()=>--r||e();for(var a of t)a.out(o)}else e()}function Mf(t,e,r){if((t.f&8192)===0){if(t.f^=8192,t.transitions!==null)for(let s of t.transitions)(s.is_global||r)&&e.push(s);for(var o=t.first;o!==null;){var a=o.next,n=(o.f&65536)!==0||(o.f&32)!==0;Mf(o,e,n?r:!1),o=a}}}function Dn(t){Bx(t,!0)}function Bx(t,e){if((t.f&8192)!==0){t.f^=8192,(t.f&1024)===0&&(Gt(t,2048),fa(t));for(var r=t.first;r!==null;){var o=r.next,a=(r.f&65536)!==0||(r.f&32)!==0;Bx(r,a?e:!1),r=o}if(t.transitions!==null)for(let n of t.transitions)(n.is_global||e)&&n.in()}}var Sx=null;var ps=!1;function zp(t){ps=t}var Uo=!1;function Qp(t){Uo=t}var je=null,Pr=!1;function Zt(t){je=t}var Ae=null;function Lt(t){Ae=t}var da=null;function yf(t){je!==null&&(!Ho||(je.f&2)!==0)&&(da===null?da=[t]:da.push(t))}var Fr=null,no=0,ao=null;function kx(t){ao=t}var Cx=1,Mu=0,$n=Mu;function Yp(t){$n=t}var Ra=!1;function wu(){return++Cx}function En(t){var e=t.f;if((e&2048)!==0)return!0;if((e&4096)!==0){var r=t.deps,o=(e&256)!==0;if(r!==null){var a,n,s=(e&512)!==0,i=o&&Ae!==null&&!Ra,l=r.length;if((s||i)&&(Ae===null||(Ae.f&16384)===0)){var u=t,A=u.parent;for(a=0;at.wv)return!0}(!o||Ae!==null&&!Ra)&&Gt(t,1024)}return!1}function Tx(t,e,r=!0){var o=t.reactions;if(o!==null&&!(!Ho&&da?.includes(t)))for(var a=0;a0)for(p.length=no+Fr.length,m=0;m{document.activeElement===r&&t.focus()})}}var Mx=!1;function Rf(){Mx||(Mx=!0,document.addEventListener("reset",t=>{Promise.resolve().then(()=>{if(!t.defaultPrevented)for(let e of t.target.elements)e.__on_r?.()})},{capture:!0}))}function Nu(t){var e=je,r=Ae;Zt(null),Lt(null);try{return t()}finally{Zt(e),Lt(r)}}function qu(t,e,r,o=r){t.addEventListener(e,()=>Nu(r));let a=t.__on_r;a?t.__on_r=()=>{a(),o(!0)}:t.__on_r=()=>o(!0),Rf()}var nm=new Set,Lf=new Set;function sm(t,e,r,o={}){function a(n){if(o.capture||Hi.call(e,n),!n.cancelBubble)return Nu(()=>r?.call(this,n))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?to(()=>{e.addEventListener(t,a,o)}):e.addEventListener(t,a,o),a}function Va(t,e,r,o,a){var n={capture:o,passive:a},s=sm(t,e,r,n);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&kr(()=>{e.removeEventListener(t,s,n)})}function Ke(t){for(var e=0;e{throw R});throw p}}finally{t.__root=e,delete t.currentTarget,Zt(A),Lt(c)}}}var uE;function qx(){uE=void 0}function Pu(t){var e=document.createElement("template");return e.innerHTML=t.replaceAll("",""),e.content}function Rr(t,e){var r=Ae;r.nodes_start===null&&(r.nodes_start=t,r.nodes_end=e)}function q(t,e){var r=(e&1)!==0,o=(e&2)!==0,a,n=!t.startsWith("");return()=>{if(ie)return Rr(be,null),be;a===void 0&&(a=Pu(n?t:""+t),r||(a=Ot(a)));var s=o||gu?document.importNode(a,!0):a.cloneNode(!0);if(r){var i=Ot(s),l=s.lastChild;Rr(i,l)}else Rr(s,s);return s}}function dE(t,e,r="svg"){var o=!t.startsWith(""),a=(e&1)!==0,n=`<${r}>${o?t:""+t}`,s;return()=>{if(ie)return Rr(be,null),be;if(!s){var i=Pu(n),l=Ot(i);if(a)for(s=document.createDocumentFragment();Ot(l);)s.appendChild(Ot(l));else s=Ot(l)}var u=s.cloneNode(!0);if(a){var A=Ot(u),c=u.lastChild;Rr(A,c)}else Rr(u,u);return u}}function im(t,e){return dE(t,e,"svg")}function J(){if(ie)return Rr(be,null),be;var t=document.createDocumentFragment(),e=document.createComment(""),r=Yt();return t.append(e,r),Rr(e,r),t}function v(t,e){if(ie){Ae.nodes_end=be,Rt();return}t!==null&&t.before(e)}function Rx(t){return t.endsWith("capture")&&t!=="gotpointercapture"&&t!=="lostpointercapture"}var cE=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function Lx(t){return cE.includes(t)}var pE=["allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","hidden","indeterminate","inert","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected","webkitdirectory","defer","disablepictureinpicture","disableremoteplayback"];var mE={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function Gx(t){return t=t.toLowerCase(),mE[t]??t}var h1=[...pE,"formNoValidate","isMap","noModule","playsInline","readOnly","value","volume","defaultValue","defaultChecked","srcObject","noValidate","allowFullscreen","disablePictureInPicture","disableRemotePlayback"];var _E=["touchstart","touchmove"];function Hx(t){return _E.includes(t)}var hE=["$state","$state.raw","$derived","$derived.by"],g1=[...hE,"$state.snapshot","$props","$props.id","$bindable","$effect","$effect.pre","$effect.tracking","$effect.root","$effect.pending","$inspect","$inspect().with","$inspect.trace","$host"];var gE=["textarea","script","style","title"];function Vx(t){return gE.includes(t)}var Gf=!0;function Hf(t){Gf=t}function Fe(t,e){var r=e==null?"":typeof e=="object"?e+"":e;r!==(t.__t??(t.__t=t.nodeValue))&&(t.__t=r,t.nodeValue=r+"")}function Be(t,e){return Ux(t,e)}function um(t,e){Tf(),e.intro=e.intro??!1;let r=e.target,o=ie,a=be;try{for(var n=Ot(r);n&&(n.nodeType!==vo||n.data!=="[");)n=cr(n);if(!n)throw Na;Pt(!0),gt(n),Rt();let s=Ux(t,{...e,anchor:n});if(be===null||be.nodeType!==vo||be.data!=="]")throw is(),Na;return Pt(!1),s}catch(s){if(s instanceof Error&&s.message.split(` `).some(i=>i.startsWith("https://svelte.dev/e/")))throw s;return s!==Na&&console.warn("Failed to hydrate: ",s),e.recover===!1&&Jj(),Tf(),Cu(r),Pt(!1),Be(t,e)}finally{Pt(o),gt(a),qx()}}var Vi=new Map;function Ux(t,{target:e,anchor:r,props:o={},events:a,context:n,intro:s=!0}){Tf();var i=new Set,l=c=>{for(var p=0;p{var c=r??e.appendChild(Yt());return It(()=>{if(n){ae({});var p=Le;p.c=n}a&&(o.$$events=a),ie&&Rr(c,null),Gf=s,u=t(c,o)||{},Gf=!0,ie&&(Ae.nodes_end=be),n&&ne()}),()=>{for(var p of i){e.removeEventListener(p,Hi);var m=Vi.get(p);--m===0?(document.removeEventListener(p,Hi),Vi.delete(p)):Vi.set(p,m)}Lf.delete(l),c!==r&&c.parentNode?.removeChild(c)}});return lm.set(u,A),u}var lm=new WeakMap;function Yo(t,e){let r=lm.get(t);return r?(lm.delete(t),r(e)):(N&&ix(),Promise.resolve())}function Am(t,e,...r){var o=t,a=or,n;Kt(()=>{a!==(a=e())&&(n&&($t(n),n=null),N&&a==null&&Xj(),n=It(()=>a(o,...r)))},65536),ie&&(o=be)}if(N){let t=function(e){if(!(e in globalThis)){let r;Object.defineProperty(globalThis,e,{configurable:!0,get:()=>{if(r!==void 0)return r;ex(e)},set:o=>{r=o}})}};t("$state"),t("$effect"),t("$derived"),t("$inspect"),t("$props"),t("$bindable")}function hs(t){Le===null&&cu("onMount"),aa&&Le.l!==null?kE(Le).m.push(t):jt(()=>{let e=Re(t);if(typeof e=="function")return e})}function zx(t){Le===null&&cu("onDestroy"),hs(()=>()=>Re(t))}function kE(t){var e=t.l;return e.u??(e.u={a:[],b:[],m:[]})}var Kx=new Map;function Zx(t,e){var r=Kx.get(t);r||(r=new Set,Kx.set(t,r)),r.add(e)}function se(t,e,r=!1){ie&&Rt();var o=t,a=null,n=null,s=At,i=r?65536:0,l=!1;let u=(m,h=!0)=>{l=!0,p(h,m)};var A=null;function c(){A!==null&&(A.lastChild.remove(),o.before(A),A=null);var m=s?a:n,h=s?n:a;m&&Dn(m),h&&bo(h,()=>{s?n=null:a=null})}let p=(m,h)=>{if(s===(s=m))return;let y=!1;if(ie){let E=mf(o)==="[!";!!s===E&&(o=us(),gt(o),Pt(!1),y=!0)}var I=_s(),F=o;if(I&&(A=document.createDocumentFragment(),A.append(F=Yt())),s?a??(a=h&&It(()=>h(F))):n??(n=h&&It(()=>h(F))),I){var R=ze,B=s?a:n,j=s?n:a;B&&R.skipped_effects.delete(B),j&&R.skipped_effects.add(j),R.add_callback(c)}else c();y&&Pt(!0)};Kt(()=>{l=!1,e(u),l||p(null,null)},i),ie&&(o=be)}function so(t,e,r){ie&&Rt();var o=t,a=At,n,s,i=null,l=eo()?ux:Ci;function u(){n&&bo(n),i!==null&&(i.lastChild.remove(),o.before(i),i=null),n=s}Kt(()=>{if(l(a,a=e())){var A=o,c=_s();c&&(i=document.createDocumentFragment(),i.append(A=Yt())),s=It(()=>r(A)),c?ze.add_callback(u):u()}}),ie&&(o=be)}var Fn=null;function cm(t){Fn=t}function lt(t,e){return e}function yE(t,e,r){for(var o=t.items,a=[],n=e.length,s=0;s0&&a.length===0&&r!==null;if(i){var l=r.parentNode;Cu(l),l.append(r),o.clear(),pa(t,e[0].prev,e[n-1].next)}om(a,()=>{for(var u=0;u{var F=r();return Nr(F)?F:F==null?[]:fu(F)}),h,y;function I(){EE(y,h,i,p,s,a,e,o,r),n!==null&&(h.length===0?A?Dn(A):A=It(()=>n(s)):A!==null&&bo(A,()=>{A=null}))}Kt(()=>{y??(y=Ae),h=d(m);var F=h.length;if(c&&F===0)return;c=F===0;let R=!1;if(ie){var B=mf(s)==="[!";B!==(F===0)&&(s=us(),gt(s),Pt(!1),R=!0)}if(ie){for(var j=null,E,D=0;D0&>(us())}if(ie)F===0&&n&&(A=It(()=>n(s)));else if(_s()){var P=new Set,le=ze;for(D=0;D0){var T=(s&4)!==0&&c===0?a:null;if(u){for(k=0;k{if(F!==void 0)for(D of F)D.a?.apply()}),t.first=r.first&&r.first.e,t.last=I&&I.e;for(var M of o.values())$t(M.e);o.clear()}function Jx(t,e,r,o){(o&1)!==0&&Aa(t.v,e),(o&2)!==0?Aa(t.i,r):t.i=r}function dm(t,e,r,o,a,n,s,i,l,u,A){var c=Fn,p=(l&1)!==0,m=(l&16)===0,h=p?m?In(a,!1,!1):qr(a):a,y=(l&2)===0?s:qr(s);N&&p&&(h.trace=()=>{var R=typeof y=="number"?s:y.v;u()[R]});var I={i:y,v:h,k:n,a:null,e:null,prev:r,next:o};Fn=I;try{if(t===null){var F=document.createDocumentFragment();F.append(t=Yt())}return I.e=It(()=>i(t,h,y,u),ie),I.e.prev=r&&r.e,I.e.next=o&&o.e,r===null?A||(e.first=I):(r.next=I,r.e.next=I.e),o!==null&&(o.prev=I,o.e.prev=I.e),I}finally{Fn=c}}function fm(t,e,r){for(var o=t.next?t.next.e.nodes_start:r,a=e?e.e.nodes_start:r,n=t.e.nodes_start;n!==null&&n!==o;){var s=cr(n);a.before(n),n=s}}function pa(t,e,r){e===null?t.first=r:(e.next=r,e.e.next=r&&r.e),r!==null&&(r.prev=e,r.e.prev=e&&e.e)}function $e(t,e,r,o,a){ie&&Rt();var n=e.$$slots?.[r],s=!1;n===!0&&(n=e[r==="default"?"children":r],s=!0),n===void 0?a!==null&&a(t):n(t,s?()=>o:o)}function pm(t,e,r,o,a,n){let s=ie;ie&&Rt();var i=N&&n&&Le?.function[Xr],l,u,A=null;ie&&be.nodeType===cf&&(A=be,Rt());var c=ie?be:t,p,m=Fn;Kt(()=>{let h=e()||null;var y=a?a():r||h==="svg"?uf:null;if(h!==l){var I=Fn;cm(m),p&&(h===null?bo(p,()=>{p=null,u=null}):h===u?Dn(p):($t(p),Hf(!1))),h&&h!==u&&(p=It(()=>{if(A=ie?A:y?document.createElementNS(y,h):document.createElement(h),N&&n&&(A.__svelte_meta={parent:la,loc:{file:i,line:n[0],column:n[1]}}),Rr(A,A),o){ie&&Vx(h)&&A.append(document.createComment(""));var F=ie?Ot(A):A.appendChild(Yt());ie&&(F===null?Pt(!1):gt(F)),o(A,F)}Ae.nodes_end=A,c.before(A)})),l=h,l&&(u=l),Hf(!0),cm(I)}},65536),s&&(Pt(!0),gt(c))}function Ua(t,e){br(()=>{var r=t.getRootNode(),o=r.host?r:r.head??r.ownerDocument.head;if(!o.querySelector("#"+e.hash)){let a=document.createElement("style");a.id=e.hash,a.textContent=e.code,o.appendChild(a),N&&Zx(e.hash,a)}})}function mm(t,e){var r=void 0,o;Kt(()=>{r!==(r=e())&&(o&&($t(o),o=null),r&&(o=It(()=>{br(()=>r(t))})))})}function Xx(t){var e,r,o="";if(typeof t=="string"||typeof t=="number")o+=t;else if(typeof t=="object")if(Array.isArray(t)){var a=t.length;for(e=0;e=0;){var i=s+n;(s===0||ev.includes(o[s-1]))&&(i===o.length||ev.includes(o[i]))?o=(s===0?"":o.substring(0,s))+o.substring(i+1):s=i}}return o===""?null:o}function tv(t,e=!1){var r=e?" !important;":";",o="";for(var a in t){var n=t[a];n!=null&&n!==""&&(o+=" "+a+": "+n+r)}return o}function _m(t){return t[0]!=="-"||t[1]!=="-"?t.toLowerCase():t}function ov(t,e){if(e){var r="",o,a;if(Array.isArray(e)?(o=e[0],a=e[1]):o=e,t){t=String(t).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var n=!1,s=0,i=!1,l=[];o&&l.push(...Object.keys(o).map(_m)),a&&l.push(...Object.keys(a).map(_m));var u=0,A=-1;let y=t.length;for(var c=0;c{Bn(t,t.__value)});e.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),kr(()=>{e.disconnect()})}function zf(t,e,r=e){var o=!0;qu(t,"change",a=>{var n=a?"[selected]":":checked",s;if(t.multiple)s=[].map.call(t.querySelectorAll(n),Ru);else{var i=t.querySelector(n)??t.querySelector("option:not([disabled])");s=i&&Ru(i)}r(s)}),br(()=>{var a=e();if(Bn(t,a,o),o&&a===void 0){var n=t.querySelector(":checked");n!==null&&(a=Ru(n),r(a))}t.__value=a,o=!1}),zi(t)}function Ru(t){return"__value"in t?t.__value:t.value}var Wi=Symbol("class"),Ki=Symbol("style"),sv=Symbol("is custom element"),iv=Symbol("is html");function io(t){if(ie){var e=!1,r=()=>{if(!e){if(e=!0,t.hasAttribute("value")){var o=t.value;Xe(t,"value",null),t.value=o}if(t.hasAttribute("checked")){var a=t.checked;Xe(t,"checked",null),t.checked=a}}};t.__on_r=r,px(r),Rf()}}function gs(t,e){var r=jm(t);r.value===(r.value=e??void 0)||t.value===e&&(e!==0||t.nodeName!=="PROGRESS")||(t.value=e??"")}function lv(t,e){e?t.hasAttribute("selected")||t.setAttribute("selected",""):t.removeAttribute("selected")}function Xe(t,e,r,o){var a=jm(t);if(ie&&(a[e]=t.getAttribute(e),e==="src"||e==="srcset"||e==="href"&&t.nodeName==="LINK")){o||IE(t,e,r??"");return}a[e]!==(a[e]=r)&&(e==="loading"&&(t[Gj]=r),r==null?t.removeAttribute(e):typeof r!="string"&&Av(t).includes(e)?t[e]=r:t.setAttribute(e,r))}function uv(t,e,r,o,a=!1){var n=jm(t),s=n[sv],i=!n[iv];let l=ie&&s;l&&Pt(!1);var u=e||{},A=t.tagName==="OPTION";for(var c in e)c in r||(r[c]=null);r.class?r.class=mr(r.class):(o||r[Wi])&&(r.class=null),r[Ki]&&(r.style??(r.style=null));var p=Av(t);for(let B in r){let j=r[B];if(A&&B==="value"&&j==null){t.value=t.__value="",u[B]=j;continue}if(B==="class"){var m=t.namespaceURI==="http://www.w3.org/1999/xhtml";ut(t,m,j,o,e?.[Wi],r[Wi]),u[B]=j,u[Wi]=r[Wi];continue}if(B==="style"){Ui(t,j,e?.[Ki],r[Ki]),u[B]=j,u[Ki]=r[Ki];continue}var h=u[B];if(!(j===h&&!(j===void 0&&t.hasAttribute(B)))){u[B]=j;var y=B[0]+B[1];if(y!=="$$")if(y==="on"){let E={},D="$$"+B,k=B.slice(2);var I=Lx(k);if(Rx(k)&&(k=k.slice(0,-7),E.capture=!0),!I&&h){if(j!=null)continue;t.removeEventListener(k,u[D],E),u[D]=null}if(j!=null)if(I)t[`__${k}`]=j,Ke([k]);else{let C=function(P){u[B].call(this,P)};u[D]=sm(k,t,C,E)}else I&&(t[`__${k}`]=void 0)}else if(B==="style")Xe(t,B,j);else if(B==="autofocus")am(t,!!j);else if(!s&&(B==="__value"||B==="value"&&j!=null))t.value=t.__value=j;else if(B==="selected"&&A)lv(t,j);else{var F=B;i||(F=Gx(F));var R=F==="defaultValue"||F==="defaultChecked";if(j==null&&!s&&!R)if(n[B]=null,F==="value"||F==="checked"){let E=t,D=e===void 0;if(F==="value"){let k=E.defaultValue;E.removeAttribute(F),E.defaultValue=k,E.value=E.__value=D?k:null}else{let k=E.defaultChecked;E.removeAttribute(F),E.defaultChecked=k,E.checked=D?k:!1}}else t.removeAttribute(B);else R||p.includes(F)&&(s||typeof j!="string")?(t[F]=j,F in n&&(n[F]=At)):typeof j!="function"&&Xe(t,F,j,a)}}}return l&&Pt(!0),u}function Wf(t,e,r=[],o=[],a,n=!1){yu(r,o,s=>{var i=void 0,l={},u=t.nodeName==="SELECT",A=!1;if(Kt(()=>{var p=e(...s.map(d)),m=uv(t,i,p,a,n);A&&u&&"value"in p&&Bn(t,p.value);for(let y of Object.getOwnPropertySymbols(l))p[y]||$t(l[y]);for(let y of Object.getOwnPropertySymbols(p)){var h=p[y];y.description===Ip&&(!i||h!==i[y])&&(l[y]&&$t(l[y]),l[y]=It(()=>mm(t,()=>h))),m[y]=h}i=m}),u){var c=t;br(()=>{Bn(c,i.value,!0),zi(c)})}A=!0})}function jm(t){return t.__attributes??(t.__attributes={[sv]:t.nodeName.includes("-"),[iv]:t.namespaceURI===Nj})}var av=new Map;function Av(t){var e=av.get(t.nodeName);if(e)return e;av.set(t.nodeName,e=[]);for(var r,o=t,a=Element.prototype;a!==o;){r=Af(o);for(var n in r)r[n].set&&e.push(n);o=hn(o)}return e}function IE(t,e,r){N&&(e==="srcset"&&$E(t,r)||gm(t.getAttribute(e)??"",r)||sx(e,t.outerHTML.replace(t.innerHTML,t.innerHTML&&"..."),String(r)))}function gm(t,e){return t===e?!0:new URL(t,document.baseURI).href===new URL(e,document.baseURI).href}function nv(t){return t.split(",").map(e=>e.trim().split(" ").filter(Boolean))}function $E(t,e){var r=nv(t.srcset),o=nv(e);return o.length===r.length&&o.every(([a,n],s)=>n===r[s][1]&&(gm(r[s][0],a)||gm(a,r[s][0])))}function Sn(t,e,r=e){var o=eo(),a=new WeakSet;qu(t,"input",n=>{N&&t.type==="checkbox"&&Bp();var s=n?t.defaultValue:t.value;if(s=xm(t)?vm(s):s,r(s),ze!==null&&a.add(ze),o&&s!==(s=e())){var i=t.selectionStart,l=t.selectionEnd;t.value=s??"",l!==null&&(t.selectionStart=i,t.selectionEnd=Math.min(l,t.value.length))}}),(ie&&t.defaultValue!==t.value||Re(e)==null&&t.value)&&(r(xm(t)?vm(t.value):t.value),ze!==null&&a.add(ze)),Wt(()=>{N&&t.type==="checkbox"&&Bp();var n=e();if(t===document.activeElement){var s=Iu??ze;if(a.has(s))return}xm(t)&&n===vm(t.value)||t.type==="date"&&!n&&!t.value||n!==t.value&&(t.value=n??"")})}function km(t,e,r=e){qu(t,"change",o=>{var a=o?t.defaultChecked:t.checked;r(a)}),(ie&&t.defaultChecked!==t.checked||Re(e)==null)&&r(t.checked),Wt(()=>{var o=e();t.checked=!!o})}function xm(t){var e=t.type;return e==="number"||e==="range"}function vm(t){return t===""?null:+t}function fv(t,e){return t===e||t?.[dr]===e}function bm(t={},e,r,o){return br(()=>{var a,n;return Wt(()=>{a=n,n=o?.()||[],Re(()=>{t!==r(...n)&&(e(t,...n),a&&fv(r(...a),t)&&e(null,...a))})}),()=>{to(()=>{n&&fv(r(...n),t)&&e(null,...n)})}}),t}function js(t,e,r,o,a){var n=()=>{o(r[t])};r.addEventListener(e,n),a?Wt(()=>{r[t]=a()}):n(),(r===document.body||r===window||r===document)&&kr(()=>{r.removeEventListener(e,n)})}function wm(t=!1){let e=Le,r=e.l.u;if(!r)return;let o=()=>ca(e.s);if(t){let a=0,n={},s=kn(()=>{let i=!1,l=e.s;for(let u in l)l[u]!==n[u]&&(n[u]=l[u],i=!0);return i&&a++,a});o=()=>d(s)}r.b.length&&Tu(()=>{dv(e,o),as(r.b)}),jt(()=>{let a=Re(()=>r.m.map(Rj));return()=>{for(let n of a)typeof n=="function"&&n()}}),r.a.length&&jt(()=>{dv(e,o),as(r.a)})}function dv(t,e){if(t.l.s)for(let r of t.l.s)d(r);e()}function Zf(t,e,r){if(t==null)return e(void 0),r&&r(void 0),or;let o=Re(()=>t.subscribe(e,r));return o.unsubscribe?()=>o.unsubscribe():o}var Zi=[];function Yf(t,e=or){let r=null,o=new Set;function a(i){if(Ci(t,i)&&(t=i,r)){let l=!Zi.length;for(let u of o)u[1](),Zi.push(u,t);if(l){for(let u=0;u{o.delete(u),o.size===0&&r&&(r(),r=null)}}return{set:a,update:n,subscribe:s}}function lo(t){let e;return Zf(t,r=>e=r)(),e}var Jf=!1,ym=Symbol();function Br(t,e,r){let o=r[e]??(r[e]={store:null,source:In(void 0),unsubscribe:or});if(N&&(o.source.label=e),o.store!==t&&!(ym in r))if(o.unsubscribe(),o.store=t??null,t==null)o.source.v=void 0,o.unsubscribe=or;else{var a=!0;o.unsubscribe=Zf(t,n=>{a?o.source.v=n:te(o.source,n)}),a=!1}return t&&ym in r?lo(t):d(o.source)}function Sr(){let t={};function e(){kr(()=>{for(var r in t)t[r].unsubscribe();rr(t,ym,{enumerable:!1,value:!0})})}return[t,e]}function Em(t){var e=Jf;try{return Jf=!1,[t(),Jf]}finally{Jf=e}}var TE={get(t,e){if(!t.exclude.includes(e))return d(t.version),e in t.special?t.special[e]():t.props[e]},set(t,e,r){if(!(e in t.special)){var o=Ae;try{Lt(t.parent_effect),t.special[e]=U({get[e](){return t.props[e]}},e,4)}finally{Lt(o)}}return t.special[e](r),Cf(t.version),!0},getOwnPropertyDescriptor(t,e){if(!t.exclude.includes(e)&&e in t.props)return{enumerable:!0,configurable:!0,value:t.props[e]}},deleteProperty(t,e){return t.exclude.includes(e)||(t.exclude.push(e),Cf(t.version)),!0},has(t,e){return t.exclude.includes(e)?!1:e in t.props},ownKeys(t){return Reflect.ownKeys(t.props).filter(e=>!t.exclude.includes(e))}};function Ee(t,e){return new Proxy({props:t,exclude:e,special:{},version:qr(0),parent_effect:Ae},TE)}var OE={get(t,e){let r=t.props.length;for(;r--;){let o=t.props[r];if(os(o)&&(o=o()),typeof o=="object"&&o!==null&&e in o)return o[e]}},set(t,e,r){let o=t.props.length;for(;o--;){let a=t.props[o];os(a)&&(a=a());let n=jr(a,e);if(n&&n.set)return n.set(r),!0}return!1},getOwnPropertyDescriptor(t,e){let r=t.props.length;for(;r--;){let o=t.props[r];if(os(o)&&(o=o()),typeof o=="object"&&o!==null&&e in o){let a=jr(o,e);return a&&!a.configurable&&(a.configurable=!0),a}}},has(t,e){if(e===dr||e===Fi)return!1;for(let r of t.props)if(os(r)&&(r=r()),r!=null&&e in r)return!0;return!1},ownKeys(t){let e=[];for(let r of t.props)if(os(r)&&(r=r()),!!r){for(let o in r)e.includes(o)||e.push(o);for(let o of Object.getOwnPropertySymbols(r))e.includes(o)||e.push(o)}return e}};function Se(...t){return new Proxy({props:t},OE)}function U(t,e,r,o){var a=!aa||(r&2)!==0,n=(r&8)!==0,s=(r&16)!==0,i=o,l=!0,u=()=>(l&&(l=!1,i=s?Re(o):o),i),A;if(n){var c=dr in t||Fi in t;A=jr(t,e)?.set??(c&&e in t?B=>t[e]=B:void 0)}var p,m=!1;n?[p,m]=Em(()=>t[e]):p=t[e],p===void 0&&o!==void 0&&(p=u(),A&&(a&&Qj(e),A(p)));var h;if(a?h=()=>{var B=t[e];return B===void 0?u():(l=!0,B)}:h=()=>{var B=t[e];return B!==void 0&&(i=void 0),B===void 0?i:B},a&&(r&4)===0)return h;if(A){var y=t.$$legacy;return function(B,j){return arguments.length>0?((!a||!j||y||m)&&A(j?h():B),B):h()}}var I=!1,F=((r&1)!==0?kn:As)(()=>(I=!1,h()));N&&(F.label=e),n&&d(F);var R=Ae;return function(B,j){if(arguments.length>0){let E=j?d(F):a&&n?kt(B):B;return te(F,E),I=!0,i!==void 0&&(i=E),B}return Uo&&I||(R.f&16384)!==0?F.v:d(F)}}function pv(t){return new Im(t)}var za,wo,Im=class{constructor(e){zt(this,za);zt(this,wo);var r=new Map,o=(n,s)=>{var i=In(s,!1,!1);return r.set(n,i),i};let a=new Proxy({...e.props||{},$$events:{}},{get(n,s){return d(r.get(s)??o(s,Reflect.get(n,s)))},has(n,s){return s===Fi?!0:(d(r.get(s)??o(s,Reflect.get(n,s))),Reflect.has(n,s))},set(n,s,i){return te(r.get(s)??o(s,i),i),Reflect.set(n,s,i)}});ur(this,wo,(e.hydrate?um:Be)(e.component,{target:e.target,anchor:e.anchor,props:a,context:e.context,intro:e.intro??!1,recover:e.recover})),!Ho&&(!e?.props?.$$host||e.sync===!1)&&Li(),ur(this,za,a.$$events);for(let n of Object.keys(ye(this,wo)))n==="$set"||n==="$destroy"||n==="$on"||rr(this,n,{get(){return ye(this,wo)[n]},set(s){ye(this,wo)[n]=s},enumerable:!0});ye(this,wo).$set=n=>{Object.assign(a,n)},ye(this,wo).$destroy=()=>{Yo(ye(this,wo))}}$set(e){ye(this,wo).$set(e)}$on(e,r){ye(this,za)[e]=ye(this,za)[e]||[];let o=(...a)=>r.call(this,...a);return ye(this,za)[e].push(o),()=>{ye(this,za)[e]=ye(this,za)[e].filter(a=>a!==o)}}$destroy(){ye(this,wo).$destroy()}};za=new WeakMap,wo=new WeakMap;var GE;typeof HTMLElement=="function"&&(GE=class extends HTMLElement{constructor(e,r,o){super();Ze(this,"$$ctor");Ze(this,"$$s");Ze(this,"$$c");Ze(this,"$$cn",!1);Ze(this,"$$d",{});Ze(this,"$$r",!1);Ze(this,"$$p_d",{});Ze(this,"$$l",{});Ze(this,"$$l_u",new Map);Ze(this,"$$me");this.$$ctor=e,this.$$s=r,o&&this.attachShadow({mode:"open"})}addEventListener(e,r,o){if(this.$$l[e]=this.$$l[e]||[],this.$$l[e].push(r),this.$$c){let a=this.$$c.$on(e,r);this.$$l_u.set(r,a)}super.addEventListener(e,r,o)}removeEventListener(e,r,o){if(super.removeEventListener(e,r,o),this.$$c){let a=this.$$l_u.get(r);a&&(a(),this.$$l_u.delete(r))}}async connectedCallback(){if(this.$$cn=!0,!this.$$c){let e=function(a){return n=>{let s=document.createElement("slot");a!=="default"&&(s.name=a),v(n,s)}};if(await Promise.resolve(),!this.$$cn||this.$$c)return;let r={},o=HE(this);for(let a of this.$$s)a in o&&(a==="default"&&!this.$$d.children?(this.$$d.children=e(a),r.default=!0):r[a]=e(a));for(let a of this.attributes){let n=this.$$g_p(a.name);n in this.$$d||(this.$$d[n]=$m(n,a.value,this.$$p_d,"toProp"))}for(let a in this.$$p_d)!(a in this.$$d)&&this[a]!==void 0&&(this.$$d[a]=this[a],delete this[a]);this.$$c=pv({component:this.$$ctor,target:this.shadowRoot||this,props:{...this.$$d,$$slots:r,$$host:this}}),this.$$me=Of(()=>{Wt(()=>{this.$$r=!0;for(let a of $p(this.$$c)){if(!this.$$p_d[a]?.reflect)continue;this.$$d[a]=this.$$c[a];let n=$m(a,this.$$d[a],this.$$p_d,"toAttribute");n==null?this.removeAttribute(this.$$p_d[a].attribute||a):this.setAttribute(this.$$p_d[a].attribute||a,n)}this.$$r=!1})});for(let a in this.$$l)for(let n of this.$$l[a]){let s=this.$$c.$on(a,n);this.$$l_u.set(n,s)}this.$$l={}}}attributeChangedCallback(e,r,o){this.$$r||(e=this.$$g_p(e),this.$$d[e]=$m(e,o,this.$$p_d,"toProp"),this.$$c?.$set({[e]:this.$$d[e]}))}disconnectedCallback(){this.$$cn=!1,Promise.resolve().then(()=>{!this.$$cn&&this.$$c&&(this.$$c.$destroy(),this.$$me(),this.$$c=void 0)})}$$g_p(e){return $p(this.$$p_d).find(r=>this.$$p_d[r].attribute===e||!this.$$p_d[r].attribute&&r.toLowerCase()===e)||e}});function $m(t,e,r,o){let a=r[t]?.type;if(e=a==="Boolean"&&typeof e!="boolean"?e!=null:e,!o||!r[t])return e;if(o==="toAttribute")switch(a){case"Object":case"Array":return e==null?null:JSON.stringify(e);case"Boolean":return e?"":null;case"Number":return e??null;default:return e}else switch(a){case"Object":case"Array":return e&&JSON.parse(e);case"Boolean":return e;case"Number":return e!=null?+e:e;default:return e}}function HE(t){let e={};return t.childNodes.forEach(r=>{e[r.slot||"default"]=!0}),e}var VE={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"},mv=VE;var UE=im("");function Ce(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]),o=Ee(r,["name","color","size","strokeWidth","absoluteStrokeWidth","iconNode"]);ae(e,!1);let a=U(e,"name",8,void 0),n=U(e,"color",8,"currentColor"),s=U(e,"size",8,24),i=U(e,"strokeWidth",8,2),l=U(e,"absoluteStrokeWidth",8,!1),u=U(e,"iconNode",24,()=>[]),A=(...h)=>h.filter((y,I,F)=>!!y&&F.indexOf(y)===I).join(" ");wm();var c=UE();Wf(c,(h,y)=>({...mv,...o,width:s(),height:s(),stroke:n(),"stroke-width":h,class:y}),[()=>(ca(l()),ca(i()),ca(s()),Re(()=>l()?Number(i())*24/Number(s()):i())),()=>(ca(a()),ca(r),Re(()=>A("lucide-icon","lucide",a()?`lucide-${a()}`:"",r.class)))]);var p=w(c);ot(p,1,u,lt,(h,y)=>{var I=de(()=>Fp(d(y),2));let F=()=>d(I)[0],R=()=>d(I)[1];var B=J(),j=K(B);pm(j,F,!0,(E,D)=>{Wf(E,()=>({...R()}))}),v(h,B)});var m=S(p);$e(m,e,"default",{},null),b(c),v(t,c),ne()}function Xf(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m3 16 4 4 4-4"}],["path",{d:"M7 20V4"}],["path",{d:"M11 4h10"}],["path",{d:"M11 8h7"}],["path",{d:"M11 12h4"}]];Ce(t,Se({name:"arrow-down-wide-narrow"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Cn(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M12 5v14"}],["path",{d:"m19 12-7 7-7-7"}]];Ce(t,Se({name:"arrow-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Qf(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m3 8 4-4 4 4"}],["path",{d:"M7 4v16"}],["path",{d:"M11 12h4"}],["path",{d:"M11 16h7"}],["path",{d:"M11 20h10"}]];Ce(t,Se({name:"arrow-up-narrow-wide"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function ed(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m5 12 7-7 7 7"}],["path",{d:"M12 19V5"}]];Ce(t,Se({name:"arrow-up"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Lu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M20 6 9 17l-5-5"}]];Ce(t,Se({name:"check"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function td(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m6 9 6 6 6-6"}]];Ce(t,Se({name:"chevron-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function rd(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m9 18 6-6-6-6"}]];Ce(t,Se({name:"chevron-right"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function od(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m7 20 5-5 5 5"}],["path",{d:"m7 4 5 5 5-5"}]];Ce(t,Se({name:"chevrons-down-up"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function ad(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m7 15 5 5 5-5"}],["path",{d:"m7 9 5-5 5 5"}]];Ce(t,Se({name:"chevrons-up-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function xs(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"}]];Ce(t,Se({name:"clipboard"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function nd(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1"}]];Ce(t,Se({name:"file-json"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Gu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M3 7V5c0-1.1.9-2 2-2h2"}],["path",{d:"M17 3h2c1.1 0 2 .9 2 2v2"}],["path",{d:"M21 17v2c0 1.1-.9 2-2 2h-2"}],["path",{d:"M7 21H5c-1.1 0-2-.9-2-2v-2"}],["rect",{width:"7",height:"5",x:"7",y:"7",rx:"1"}],["rect",{width:"7",height:"5",x:"10",y:"12",rx:"1"}]];Ce(t,Se({name:"group"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Hu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2"}],["circle",{cx:"9",cy:"9",r:"2"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"}]];Ce(t,Se({name:"image"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Vu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["circle",{cx:"12",cy:"16",r:"1"}],["rect",{width:"18",height:"12",x:"3",y:"10",rx:"2"}],["path",{d:"M7 10V7a5 5 0 0 1 9.33-2.5"}]];Ce(t,Se({name:"lock-keyhole-open"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Uu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["circle",{cx:"12",cy:"16",r:"1"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3"}]];Ce(t,Se({name:"lock-keyhole"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function zu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m8 6 4-4 4 4"}],["path",{d:"M12 2v10.3a4 4 0 0 1-1.172 2.872L4 22"}],["path",{d:"m20 22-5-5"}]];Ce(t,Se({name:"merge"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Wu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];Ce(t,Se({name:"pencil"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Tn(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];Ce(t,Se({name:"plus"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function sd(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}],["path",{d:"M3 3v5h5"}]];Ce(t,Se({name:"rotate-ccw"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function vs(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7"}]];Ce(t,Se({name:"save"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Ku(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M16 3h5v5"}],["path",{d:"M8 3H3v5"}],["path",{d:"M12 22v-8.3a4 4 0 0 0-1.172-2.872L3 3"}],["path",{d:"m15 9 6-6"}]];Ce(t,Se({name:"split"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}var _v=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=t.settings.explicit_edge_sources.date_note;if(o.enabled){if(!t.settings.edge_fields.find(n=>n.label===o.default_field))return r.errors.push({code:"invalid_setting_value",path:"explicit_edge_sources.date_note.default_field",message:`The default Date Note field "${o.default_field}" is not a valid Breadcrumbs Edge field`}),r}else return r;let a=[];return e.obsidian?.forEach(({file:n})=>{let s=Ye.fromFormat(n.basename,o.date_format);s.isValid&&a.push({date:s,path:n.path,ext:n.extension,basename:n.basename,folder:n.parent?.path??""})}),e.dataview?.forEach(({file:n})=>{let s=Ye.fromFormat(n.name,o.date_format);s.isValid&&a.push({date:s,ext:n.ext,path:n.path,folder:n.folder,basename:n.name})}),a.sort((n,s)=>n.date.toMillis()-s.date.toMillis()).forEach((n,s)=>{let i=n.date.plus({days:1}).toFormat(o.date_format),l=n.date.plus({days:1}).toFormat("yyyy"),u=n.date.plus({days:1}).toFormat("MM"),A=n.folder;l!==n.date.toFormat("yyyy")&&(A=A.replace(n.date.toFormat("yyyy"),l)),u!==n.date.toFormat("MM")&&(A=A.replace(n.date.toFormat("MM"),u));let c=a.at(s+1),p=c?.folder,m=c?.basename,h=o.stretch_to_existing?m??i:i;H.debug(`tomorrow_folder: ${A}`);let y=o.stretch_to_existing||h===m?p??A:A,I=mt.build(y,h,n.ext);t.app.vault.getFileByPath(I)||r.nodes.push(new vt(I,[],!1,!1,!1)),r.edges.push(new ct(n.path,I,o.default_field,"date_note"))}),r};function zE(t,e,r){let o=e?.[Ve["dendron-note-field"]]??t.settings.explicit_edge_sources.dendron_note.default_field;if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`dendron-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(a=>a.label===o))return it({path:r,code:"invalid_field_value",message:`dendron-note-field is not a valid field: '${o}'`})}else return ht(void 0);return Xt({field:o})}function Dm(t,e,r,o){let{delimiter:a}=t.settings.explicit_edge_sources.dendron_note,n=mt.basename(r).split(a);if(n.length===1)return;let s=zE(t,o,r);if(!s.ok){s.error&&e.errors.push(s.error);return}let i=mt.build(r.split("/").slice(0,-1).join("/"),n.slice(0,-1).join(a),"md"),{field:l}=s.data;t.app.vault.getFileByPath(i)||(e.nodes.push(new vt(i,[],!1,!1,!1)),Dm(t,e,i,{[Ve["dendron-note-field"]]:l})),e.edges.push(new ct(r,i,l,"dendron_note"))}var hv=(t,e)=>{let r={nodes:[],edges:[],errors:[]};return t.settings.explicit_edge_sources.dendron_note.enabled&&(e.obsidian?.forEach(({file:o,cache:a})=>{Dm(t,r,o.path,a?.frontmatter)}),e.dataview?.forEach(o=>{Dm(t,r,o.file.path,o)})),r};var gv=(t,e,r)=>{if(!e)return ht(void 0);let o=e[Ve["folder-note-field"]];if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`folder-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(n=>n.label===o))return it({path:r,code:"invalid_field_value",message:`folder-note-field is not a valid field: '${o}'`})}else return ht(void 0);let a=!!e[Ve["folder-note-recurse"]];return Xt({field:o,recurse:a})},jv=async(t,e,r,o)=>{let a=await t.app.vault.adapter.list(e);a.files.forEach(n=>r(n)),o&&await Promise.all(a.folders.map(n=>jv(t,n,r,!0)))},xv=async(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[];return e.obsidian?.forEach(({file:a,cache:n})=>{if(!n)return;let s=gv(t,n?.frontmatter,a.path);if(!s.ok){s.error&&r.errors.push(s.error);return}o.push({data:s.data,file:{path:a.path,folder:a.parent?.path??""}})}),e.dataview?.forEach(a=>{let n=gv(t,a,a.file.path);if(!n.ok){n.error&&r.errors.push(n.error);return}o.push({data:n.data,file:{path:a.file.path,folder:a.file.folder}})}),await Promise.all(o.map(({data:a,file:n})=>jv(t,n.folder,s=>{!s.endsWith(".md")||s===n.path||r.edges.push(new ct(n.path,s,a.field,"folder_note"))},a.recurse))),r};var WE=(t,e,r)=>{let o=e?.[Ve["johnny-decimal-note-field"]]??t.settings.explicit_edge_sources.johnny_decimal_note.default_field;if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`johnny-decimal-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(a=>a.label===o))return it({path:r,code:"invalid_field_value",message:`johnny-decimal-note-field is not a valid BC field: '${o}'`})}else return ht(void 0);return Xt({field:o})},KE=(t,e,r,o)=>{let a=WE(t,r.metadata,r.path);if(!a.ok){a.error&&e.errors.push(a.error);return}let{delimiter:n}=t.settings.explicit_edge_sources.johnny_decimal_note,s=r.decimals.split(n).slice(0,-1).join(n);if(s==="")return;let i=o.find(A=>A.decimals===s);if(!i)return;t.app.vault.getFileByPath(i.path)||e.nodes.push(new vt(i.path,[],!1,!1,!1));let{field:u}=a.data;e.edges.push(new ct(r.path,i.path,u,"johnny_decimal_note"))},vv=(t,e)=>{let r={nodes:[],edges:[],errors:[]};if(!t.settings.explicit_edge_sources.johnny_decimal_note.enabled)return r;let{delimiter:o}=t.settings.explicit_edge_sources.johnny_decimal_note,a=new RegExp(`^([\\w\\d\\${o}]+)(\\s|\\${o}$)`),n=[];return e.obsidian?.forEach(({file:s,cache:i})=>{let l=mt.basename(s.path),u=l.match(a)?.[1];u&&n.push({basename:l,path:s.path,metadata:i?.frontmatter,decimals:Qd(u,o)})}),e.dataview?.forEach(s=>{let i=mt.basename(s.file.path),l=i.match(a)?.[1];l&&n.push({basename:i,metadata:s,path:s.file.path,decimals:Qd(l,o)})}),n.forEach(s=>{KE(t,r,s,n)}),r};var kv=require("obsidian");var ks=(t,e,r)=>{let o=mt.ensure_ext(e),a=t.metadataCache.getFirstLinkpathDest(o,r);return[a?.path??nn.resolve_to_absolute_path(t,o,r),a]},bv=async(t,e)=>{let r=Object.assign({notify:!0,log:!0},e);r.log&&H.feat(t),await navigator.clipboard.writeText(t),r.notify&&new kv.Notice("Copied to clipboard and logged to console.")};var wv=(t,e,r)=>{if(!e)return ht(void 0);let o=e[Ve["list-note-field"]];if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`list-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(s=>s.label===o))return it({path:r,code:"invalid_field_value",message:`list-note-field is not a valid BC field: '${o}'`})}else return ht(void 0);let a=e[Ve["list-note-neighbour-field"]]??t.settings.explicit_edge_sources.list_note.default_neighbour_field;if(a){if(typeof a!="string")return it({path:r,code:"invalid_field_value",message:`list-note-neighbour-field is not a string: '${a}'`});if(!t.settings.edge_fields.find(s=>s.label===a))return it({path:r,code:"invalid_field_value",message:`list-note-neighbour-field is not a valid BC field: '${a}'`})}let n=!!e[Ve["list-note-exclude-index"]];return Xt({field:o,exclude_index:n,neighbour_field:a??void 0})},ZE=/^\s*([-\w\s]+)\b/,yv=(t,e,r)=>{let o=ZE.exec(e.text)?.[1];return o?t.settings.edge_fields.find(a=>a.label===o)?Xt({field:o}):it({path:r,code:"invalid_field_value",message:`Field override is not a valid BC field: ${o}. Line: ${e.position.start.line}`}):Xt(void 0)},YE=({plugin:t,results:e,source_id:r,list_note_page:o,list_note_info:a,source_list_item_i:n})=>{if(!a.data.neighbour_field)return;let s=o.file.lists.values[n],i;for(let c=n+1;c{let r={nodes:[],edges:[],errors:[]};return e.obsidian?.forEach(({file:o,cache:a})=>{if(!a)return;let n=wv(t,a?.frontmatter,o.path);if(n.ok){r.errors.push({path:o.path,code:"missing_other_plugin",message:"list-notes are not implemented without Dataview enabled"});return}else{n.error&&r.errors.push(n.error);return}}),e.dataview?.forEach(o=>{let a=wv(t,o,o.file.path);if(!a.ok){a.error&&r.errors.push(a.error);return}o.file.lists.values.forEach((n,s)=>{let i=n.outlinks.at(0);if(!i)return;let[l,u]=ks(t.app,i.path,o.file.path);if(u||r.nodes.push(new vt(l,[],!1,!1,!1)),!a.data.exclude_index&&n.position.start.col===0){let A=yv(t,n,o.file.path);if(!A.ok){A.error&&r.errors.push(A.error);return}r.edges.push(new ct(o.file.path,l,A.data?.field??a.data.field,"list_note"))}a.data.neighbour_field&&YE({plugin:t,results:r,list_note_page:o,list_note_info:a,source_list_item_i:s,source_id:l}),n.children.forEach(A=>{let c=A.outlinks.at(0);if(!c)return;let p=yv(t,A,o.file.path);if(!p.ok){p.error&&r.errors.push(p.error);return}let[m,h]=ks(t.app,c.path,o.file.path);h||r.nodes.push(new vt(m,[],!1,!1,!1)),r.edges.push(new ct(l,m,p.data?.field??a.data.field,"list_note"))})})}),r};function Iv(t,e,r){if(!e)return ht(void 0);let o=e[Ve["regex-note-regex"]];if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-regex"]} is not a string: '${o}'`})}else return ht(void 0);let a=e[Ve["regex-note-flags"]];if(a&&typeof a!="string")return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-flags"]} is not a string: '${a}'`});let n;try{n=new RegExp(o,a||""),H.debug("get_regex_note_info > regex:",n)}catch{return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-regex"]} is not a valid regex: '${o}'`})}let s=e[Ve["regex-note-field"]]??t.settings.explicit_edge_sources.regex_note.default_field;if(s){if(typeof s!="string")return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-field"]} is not a string: '${s}'`});if(!t.settings.edge_fields.find(i=>i.label===s))return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-field"]} is not a valid field: '${s}'`})}else return ht(void 0);return Xt({field:s,regex:n})}var $v=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[];if(e.obsidian?.forEach(({file:n,cache:s})=>{let i=Iv(t,s?.frontmatter,n.path);if(!i.ok){i.error&&r.errors.push(i.error);return}o.push({info:i.data,path:n.path})}),e.dataview?.forEach(n=>{let{file:s}=n,i=Iv(t,n,s.path);if(!i.ok){i.error&&r.errors.push(i.error);return}o.push({info:i.data,path:s.path})}),!o)return r;let a=e.obsidian?.map(n=>n.file.path)??e.dataview?.map(n=>n.file.path)??[];return o.forEach(n=>{a.filter(s=>n.info.regex.test(s)).forEach(s=>{r.edges.push(new ct(n.path,s,n.info.field,"regex_note"))})}),r};var Dv=(t,e,r)=>{if(!e)return ht(void 0);let o=e[Ve["tag-note-tag"]];if(o||(o=e["BC-tag-note"],o&&H.warn(`'BC-tag-note' is deprecated in favor of ${Ve["tag-note-tag"]}`)),o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`tag-note-tag is not a string: '${o}'`})}else return ht(void 0);let a=Xd(o,"#"),n=e[Ve["tag-note-field"]]??t.settings.explicit_edge_sources.tag_note.default_field;if(n){if(typeof n!="string")return it({path:r,code:"invalid_field_value",message:`tag-note-field is not a string: '${n}'`});if(!t.settings.edge_fields.find(i=>i.label===n))return it({path:r,code:"invalid_field_value",message:`tag-note-field is not a valid BC field: '${n}'`})}else return ht(void 0);let s=!!e[Ve["tag-note-exact"]];return Xt({tag:a,field:n,exact:s})},Fv=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[],a=new Map;e.obsidian?.forEach(({file:s,cache:i})=>{if(!i)return;let l=m=>{let h=Xd(m,"#");a.get(h)?.push(s.path)||a.set(h,[s.path])};i?.frontmatter?.tags?.forEach(l),i?.tags?.map(m=>m.tag)?.forEach(l);let u=Dv(t,i?.frontmatter,s.path);if(!u.ok){u.error&&r.errors.push(u.error);return}let{tag:A,field:c,exact:p}=u.data;o.push({tag:A,exact:p,field:c,source_path:s.path})}),e.dataview?.forEach(s=>{let i=s.file;i.etags.values.forEach(p=>{a.get(p)?.push(i.path)||a.set(p,[i.path])});let l=Dv(t,s,i.path);if(!l.ok){l.error&&r.errors.push(l.error);return}let{tag:u,field:A,exact:c}=l.data;o.push({tag:u,exact:c,field:A,source_path:i.path})});let n=[...a.keys()];return o.forEach(s=>{(s.exact?a.get(s.tag):n.filter(l=>l.startsWith(s.tag)).flatMap(l=>a.get(l)))?.forEach(l=>{r.edges.push(new ct(s.source_path,l,s.field,"tag_note"))})}),r};function id(t){return Array.isArray(t)?t:[t]}function Bv(t,e,r){let o=Math.max(...t.map(a=>a.length));return t.map(a=>{let n=o-a.length;return r?Array(n).fill(e).concat(a):a.concat(Array(n).fill(e))})}function Sv(t){let e=[];if(!t.length)return e;for(let r=0;ro){let o={};return t.forEach(a=>{let n=e(a);if(n===void 0)return;let s=o[n],i=r(a);s?s.push(i):o[n]=[i]}),o}function Tv(t,e){let r={};return Object.entries(t).forEach(([o,a])=>{r[o]=e(a)}),r}function ma(t){let e=new Set(t);return Array.from(e)}function Zu(t,e){let r=new Set,o=[];return t.forEach(a=>{let n=e(a);r.has(n)||(r.add(n),o.push(a))}),o}var JE=/\[(.+?)\]\((.+?)\)/,Ov=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=new Set(t.settings.edge_fields.map(a=>a.label));return e.obsidian?.forEach(({file:a,cache:n})=>{n?.frontmatterLinks?.forEach(s=>{let i=s.key.split(".")[0];if(!o.has(i))return;let[l,u]=ks(t.app,s.link,a.path);u||r.nodes.push(new vt(l,[],!1,!1,!1)),r.edges.push(new ct(a.path,l,i,"typed_link"))})}),e.dataview?.forEach(a=>{let n=a.file;Object.keys(a).forEach(s=>{!o.has(s)||["file","aliases"].includes(s)||id(a[s]).flat().forEach(i=>{let l;if(i)typeof i=="string"?l=JE.exec(i)?.[2]:typeof i=="object"&&i?.path?l=i.path:i?.isLuxonDateTime?r.errors.push({path:n.path,code:"invalid_field_value",message:`Invalid value for field '${s}': '${i}'. Dataview DateTime values are not supported, since they don't preserve the original date string.`}):r.errors.push({path:n.path,code:"invalid_field_value",message:`Invalid value for field '${s}': '${i}'. Expected wikilink or markdown link.`});else return;if(!l)return;let[u,A]=ks(t.app,l,n.path);A||r.nodes.push(new vt(u,[],!1,!1,!1)),r.edges.push(new ct(n.path,u,s,"typed_link"))})})}),r};var Mv={tag_note:Fv,list_note:Ev,date_note:_v,typed_link:Ov,regex_note:$v,folder_note:xv,dendron_note:hv,dataview_note:kg,johnny_decimal_note:vv};var Nv=t=>Ba.is_enabled(t)?{obsidian:null,dataview:Ba.get_api()?.pages().values}:{obsidian:t.vault.getMarkdownFiles().map(e=>({file:e,cache:t.metadataCache.getFileCache(e)})),dataview:null};function XE(t){let e=[];return t.obsidian?t.obsidian.forEach(({file:r,cache:o})=>{let a=[],n=!1,s=!1,i=(0,qv.parseFrontMatterAliases)(o?.frontmatter);Array.isArray(i)&&i.length>0&&(a=i),o?.frontmatter?.[Ve["ignore-in-edges"]]&&(n=!0),o?.frontmatter?.[Ve["ignore-out-edges"]]&&(s=!0),e.push(new vt(r.path,a,!0,n,s))}):t.dataview.forEach(r=>{let o=[],a=!1,n=!1,s=r.file.aliases.values;Array.isArray(s)&&s.length>0&&(o=s),r[Ve["ignore-in-edges"]]&&(a=!0),r[Ve["ignore-out-edges"]]&&(n=!0),e.push(new vt(r.file.path,o,!0,a,n))}),e}var Pv=async t=>{let e=new Tr,r=new Tr,o=Nv(t.app),a=XE(o);H.debug(e.elapsedMessage("get_initial_nodes")),e.reset();let n=await Promise.all(L_.map(async l=>{let u=await Mv[l](t,o);return{source:l,results:u}})),s=[];for(let{results:l}of n)a.push(...l.nodes),s.push(...l.edges);H.debug(e.elapsedMessage("Collecting edges and nodes")),e.reset();let i=t.settings.implied_relations.transitive.map(l=>new Un(l.name,l.chain.map(u=>u.field),l.close_field,l.rounds,!1,l.close_reversed));return t.graph.build_graph(a,s,i),H.debug(e.elapsedMessage("WASM call")),H.debug(r.elapsedMessage("Total")),{explicit_edge_results:n}};var gd=require("obsidian");function Yi(t,e,r,o){function a(n){return n instanceof r?n:new r(function(s){s(n)})}return new(r||(r=Promise))(function(n,s){function i(A){try{u(o.next(A))}catch(c){s(c)}}function l(A){try{u(o.throw(A))}catch(c){s(c)}}function u(A){A.done?n(A.value):a(A.value).then(i,l)}u((o=o.apply(t,e||[])).next())})}var Qi=require("obsidian");var QE=q(' '),eI=q(' ');function Ji(t,e){"use strict";let r=U(e,"href",3,void 0),o=U(e,"title",3,void 0),a=U(e,"onclick",3,()=>{}),n=U(e,"oncontextmenu",3,()=>{}),s=U(e,"onkeydown",3,()=>{});var i=J(),l=K(i);{var u=c=>{var p=QE();p.__click=function(...h){a()?.apply(this,h)},p.__contextmenu=function(...h){n()?.apply(this,h)};var m=w(p,!0);b(p),oe(()=>{Xe(p,"href",r()),Xe(p,"title",o()),Fe(m,e.tag)}),v(c,p)},A=c=>{var p=eI();p.__click=function(...h){a()?.apply(this,h)},p.__keydown=function(...h){s()?.apply(this,h)},p.__contextmenu=function(...h){n()?.apply(this,h)};var m=w(p,!0);b(p),oe(()=>{Xe(p,"title",o()),Fe(m,e.tag)}),v(c,p)};se(l,c=>{r()!==void 0?c(u):c(A,!1)})}v(t,i)}Ke(["click","contextmenu","keydown"]);var tI=(t,e,r,o,a)=>{e(r.fields.find(n=>n.label===t.currentTarget.value)),e()&&o()?.(e()),a()&&e(void 0)},rI=q(""),oI=q('');function Xi(t,e){ae(e,!0);let r=U(e,"undefine_on_change",3,!0),o=U(e,"field",15,void 0),a=U(e,"placeholder",3,void 0),n=U(e,"onselect",3,void 0);var s=oI();s.__change=[tI,o,e,n,r];var i=w(s),l=w(i,!0);b(i),i.value=i.__value="";var u=S(i);ot(u,17,()=>e.fields,lt,(c,p)=>{let m=()=>d(p).label;var h=rI(),y=w(h,!0);b(h);var I={};oe(()=>{Fe(y,m()),I!==(I=m())&&(h.value=(h.__value=m())??"")}),v(c,h)}),b(s);var A;zi(s),oe(()=>{Fe(l,a()??"Select Field"),A!==(A=o()?.label??"")&&(s.value=(s.__value=o()?.label??"")??"",Bn(s,o()?.label??""))}),v(t,s),ne()}Ke(["change"]);var aI=q('Unsaved changes'),nI=(t,e)=>e.fields="",sI=(t,e,r)=>e.fields.scroll_to(d(r).edge_fields.last()?.label??""),iI=q(''),lI=(t,e,r)=>e.fields.remove(d(r)),uI=q('
'),AI=q(''),fI=q(""),dI=q('
Groups
'),cI=q('
'),pI=(t,e)=>e.groups="",mI=(t,e,r)=>e.groups.scroll_to(d(r).edge_field_groups.last()?.label??""),_I=q(''),hI=(t,e,r)=>e.groups.remove(d(r)),gI=q('
'),jI=q(''),xI=q('
Fields
'),vI=q('

Fields


Groups

');function Fm(t,e){ae(e,!0);let r=U(e,"plugin",7),o=We(kt(r().settings)),a=kt({fields:"",groups:""}),n={save:()=>Yi(void 0,void 0,void 0,function*(){r().settings=pr(d(o)),yield Promise.all([r().saveSettings(),r().rebuildGraph()]),te(o,r().settings,!0)}),fields:{make_id:T=>`BC-edge-field-${T}`,scroll_to:T=>{let M=document.getElementById(n.fields.make_id(T));M&&(M.scrollIntoView({behavior:"smooth",block:"center"}),M.focus())},add:()=>{let T={label:`Edge Field ${d(o).edge_fields.length+1}`};d(o).edge_fields.push(T),setTimeout(()=>n.fields.scroll_to(T.label),0),d(o).is_dirty=!0},remove:T=>{d(o).edge_fields=d(o).edge_fields.filter(M=>M.label!==T.label),d(o).edge_field_groups.forEach(M=>{M.fields=M.fields.filter(Z=>Z!==T.label)}),d(o).is_dirty=!0},rename:(T,M)=>{if(T.label!==M){{if(M==="")return new Qi.Notice("Field label cannot be empty.");if(d(o).edge_fields.some(Z=>Z.label===M))return new Qi.Notice("Field label must be unique.")}d(o).edge_field_groups.forEach(Z=>{let _e=Z.fields.indexOf(T.label);_e!==-1&&(Z.fields[_e]=M)}),d(o).implied_relations.transitive.forEach(Z=>{Z.chain=Z.chain.map(_e=>_e.field===T.label?Object.assign(Object.assign({},_e),{field:M}):_e),Z.close_field=Z.close_field===T.label?M:Z.close_field}),d(o).explicit_edge_sources.tag_note.default_field=d(o).explicit_edge_sources.tag_note.default_field===T.label?M:d(o).explicit_edge_sources.tag_note.default_field,d(o).explicit_edge_sources.list_note.default_neighbour_field=d(o).explicit_edge_sources.list_note.default_neighbour_field===T.label?M:d(o).explicit_edge_sources.list_note.default_neighbour_field,d(o).explicit_edge_sources.dendron_note.default_field=d(o).explicit_edge_sources.dendron_note.default_field===T.label?M:d(o).explicit_edge_sources.dendron_note.default_field,d(o).explicit_edge_sources.johnny_decimal_note.default_field=d(o).explicit_edge_sources.johnny_decimal_note.default_field===T.label?M:d(o).explicit_edge_sources.johnny_decimal_note.default_field,d(o).explicit_edge_sources.date_note.default_field=d(o).explicit_edge_sources.date_note.default_field===T.label?M:d(o).explicit_edge_sources.date_note.default_field,d(o).explicit_edge_sources.regex_note.default_field=d(o).explicit_edge_sources.regex_note.default_field===T.label?M:d(o).explicit_edge_sources.regex_note.default_field,T.label=M,d(o).is_dirty=!0}}},groups:{make_id:T=>`BC-edge-group-${T}`,scroll_to:T=>{let M=document.getElementById(n.groups.make_id(T));M&&(M.scrollIntoView({behavior:"smooth",block:"center"}),M.focus())},add:()=>{let T={label:`Group ${d(o).edge_field_groups.length+1}`,fields:[]};d(o).edge_field_groups.push(T),setTimeout(()=>n.groups.scroll_to(T.label),0),d(o).is_dirty=!0},remove:T=>{d(o).edge_field_groups=d(o).edge_field_groups.filter(M=>M.label!==T.label),d(o).is_dirty=!0},rename:(T,M)=>{T.label!==M&&(d(o).views.page.trail.field_group_labels=d(o).views.page.trail.field_group_labels.map(Z=>Z===T.label?M:Z),d(o).views.page.prev_next.field_group_labels.prev=d(o).views.page.prev_next.field_group_labels.prev.map(Z=>Z===T.label?M:Z),d(o).views.page.prev_next.field_group_labels.next=d(o).views.page.prev_next.field_group_labels.next.map(Z=>Z===T.label?M:Z),d(o).views.side.matrix.field_group_labels=d(o).views.side.matrix.field_group_labels.map(Z=>Z===T.label?M:Z),d(o).views.side.matrix.field_group_labels=d(o).views.side.matrix.field_group_labels.map(Z=>Z===T.label?M:Z),T.label=M,d(o).is_dirty=!0)},add_field:(T,M)=>{T&&(T.fields.push(M),d(o).is_dirty=!0)},remove_field:(T,M)=>{T&&(T.fields=T.fields.filter(Z=>Z!==M),d(o).is_dirty=!0)}}},s={field_group:(T,M)=>Z=>{let _e=new Qi.Menu;_e.addItem(Ne=>Ne.setTitle("Remove from Group").setIcon("x").onClick(()=>n.groups.remove_field(d(o).edge_field_groups.find(at=>at.label===M),T.label))),_e.showAtMouseEvent(Z)},group_field:(T,M)=>Z=>{let _e=new Qi.Menu;_e.addItem(Ne=>Ne.setTitle("Remove Field").setIcon("x").onClick(()=>n.groups.remove_field(T,M))),_e.showAtMouseEvent(Z)}};var i=vI(),l=w(i),u=w(l);u.__click=function(...T){n.save?.apply(this,T)};var A=w(u);vs(A,{get size(){return 20}}),sa(),b(u);var c=S(u,2);{var p=T=>{var M=aI();v(T,M)};se(c,T=>{d(o).is_dirty&&T(p)})}b(l);var m=S(l,2),h=S(w(m),2),y=w(h);io(y);var I=S(y,2);I.__click=[nI,a],b(h);var F=S(h,2);{var R=T=>{var M=iI();M.__click=[sI,n,o];var Z=w(M);Cn(Z,{get size(){return 20}}),b(M),v(T,M)};se(F,T=>{d(o).edge_fields.length>3&&T(R)})}b(m);var B=S(m,2),j=w(B);ot(j,17,()=>d(o).edge_fields.filter(T=>T.label.includes(a.fields.toLowerCase())),lt,(T,M)=>{let Z=de(()=>d(o).edge_field_groups.filter(Jt=>Jt.fields.includes(d(M).label)).map(Jt=>Jt.label));var _e=cI(),Ne=w(_e),at=w(Ne);io(at);var uo=S(at,2);uo.__click=[lI,n,M],b(Ne);var Do=S(Ne,2);so(Do,()=>d(o).edge_field_groups,Jt=>{var Vr=dI(),va=S(w(Vr),2);ot(va,17,()=>d(Z),lt,(ir,_t)=>{var Mt=uI(),Er=w(Mt);{let Fo=de(()=>s.field_group(d(M),d(_t)));Ji(Er,{get tag(){return d(_t)},title:"Jump to group. Right click for more actions.",onclick:()=>n.groups.scroll_to(d(_t)),get oncontextmenu(){return d(Fo)}})}b(Mt),v(ir,Mt)});var bt=S(va,2);{var Vt=ir=>{var _t=AI();_t.textContent="",v(ir,_t)};se(bt,ir=>{d(Z).length||ir(Vt)})}var Dt=S(bt,2);Dt.__change=ir=>{ir.currentTarget.value&&(n.groups.add_field(d(o).edge_field_groups.find(_t=>_t.label===ir.currentTarget.value),d(M).label),ir.currentTarget.value="")};var Ao=w(Dt);Ao.value=Ao.__value="";var tn=S(Ao);ot(tn,17,()=>d(o).edge_field_groups,lt,(ir,_t)=>{var Mt=J(),Er=K(Mt);{var Fo=Xo=>{var Qo=fI(),rn=w(Qo,!0);b(Qo);var ka={};oe(()=>{Fe(rn,d(_t).label),ka!==(ka=d(_t).label)&&(Qo.value=(Qo.__value=d(_t).label)??"")}),v(Xo,Qo)};se(Er,Xo=>{d(_t).fields.includes(d(M).label)||Xo(Fo)})}v(ir,Mt)}),b(Dt),Dt.value=Dt.__value="",b(Vr),v(Jt,Vr)}),b(_e),oe(Jt=>{Xe(at,"id",Jt),gs(at,d(M).label)},[()=>n.fields.make_id(d(M).label)]),Va("blur",at,Jt=>n.fields.rename(d(M),Jt.currentTarget.value)),v(T,_e)});var E=S(j,2);E.__click=function(...T){n.fields.add?.apply(this,T)};var D=w(E);Tn(D,{get size(){return 20}}),sa(),b(E),b(B);var k=S(B,4),C=S(w(k),2),P=w(C);io(P);var le=S(P,2);le.__click=[pI,a],b(C);var xe=S(C,2);{var fe=T=>{var M=_I();M.__click=[mI,n,o];var Z=w(M);Cn(Z,{get size(){return 20}}),b(M),v(T,M)};se(xe,T=>{d(o).edge_field_groups.length>3&&T(fe)})}b(k);var He=S(k,2),G=w(He);ot(G,17,()=>d(o).edge_field_groups.filter(T=>T.label.includes(a.groups.toLowerCase())),lt,(T,M)=>{var Z=xI(),_e=w(Z),Ne=w(_e);io(Ne);var at=S(Ne,2);at.__click=[hI,n,M],b(_e);var uo=S(_e,2),Do=S(w(uo),2);ot(Do,17,()=>d(M).fields,lt,(bt,Vt)=>{var Dt=gI(),Ao=w(Dt);{let tn=de(()=>s.group_field(d(M),d(Vt)));Ji(Ao,{get tag(){return d(Vt)},title:"Jump to field. Right click for more actions.",onclick:()=>n.fields.scroll_to(d(Vt)),get oncontextmenu(){return d(tn)}})}b(Dt),v(bt,Dt)});var Jt=S(Do,2);{var Vr=bt=>{var Vt=jI();Vt.textContent="",v(bt,Vt)};se(Jt,bt=>{d(M).fields.length||bt(Vr)})}var va=S(Jt,2);{let bt=de(()=>d(o).edge_fields.filter(Vt=>!d(M).fields.includes(Vt.label)));Xi(va,{placeholder:"Add Field",get fields(){return d(bt)},onselect:Vt=>n.groups.add_field(d(M),Vt.label)})}b(uo),b(Z),oe(bt=>{Xe(Ne,"id",bt),gs(Ne,d(M).label)},[()=>n.groups.make_id(d(M).label)]),Va("blur",Ne,bt=>n.groups.rename(d(M),bt.currentTarget.value)),v(T,Z)});var Y=S(G,2);Y.__click=function(...T){n.groups.add?.apply(this,T)};var De=w(Y);Tn(De,{get size(){return 20}}),sa(),b(Y),b(He),b(i),oe(()=>{I.disabled=a.fields==="",le.disabled=a.groups===""}),Sn(y,()=>a.fields,T=>a.fields=T),Sn(P,()=>a.groups,T=>a.groups=T),v(t,i),ne()}Ke(["click","change"]);var Ja=require("obsidian");var kI=["LR","RL","TB","BT"],bI=["dagre","elk"],wI=["basis","bumpX","bumpY","cardinal","catmullRom","linear","monotoneX","monotoneY","natural","step","stepAfter","stepBefore"];function Rv(t){let e=new TextEncoder().encode(t);return btoa(String.fromCharCode(...e))}function yI(t){return`https://mermaid.ink/img/${Rv(t)}`}function EI(t){return`https://mermaid.live/edit#base64:${Rv(JSON.stringify({code:t,autoSync:!1,updateDiagram:!0,mermaid:{theme:"default"}},void 0,2))}`}function II(t){return new Un("",t.chain.map(o=>o.field),t.close_field,1,!1,t.close_reversed).create_example_graph().generate_mermaid_graph(new Nt(["1"],void 0,100,1e3,!1,void 0),new Hn(void 0,"","graph","LR",!1,["field"],void 0,o=>o.path,!1))}var yo={from_transitive_rule:II,to_image_link:yI,to_live_edit_link:EI,RENDERERS:bI,DIRECTIONS:kI,CURVE_STYLES:wI};var Lv=(t,e)=>{let{delimiter:r}=Object.assign({delimiter:" "},e),o="";for(let a in t)o+=`${a}=${t[a]}${r}`;return o=o.slice(0,-1),e?.trim_lone_param&&Object.keys(t).length===1&&(o=o.split("=",2)[1]),o};var Qe={};Qm(Qe,{BRAND:()=>QI,DIRTY:()=>bs,EMPTY_PATH:()=>BI,INVALID:()=>ke,NEVER:()=>N$,OK:()=>wr,ParseStatus:()=>_r,Schema:()=>Me,ZodAny:()=>Nn,ZodArray:()=>Ya,ZodBigInt:()=>ys,ZodBoolean:()=>Es,ZodBranded:()=>Ju,ZodCatch:()=>Ns,ZodDate:()=>Is,ZodDefault:()=>Ms,ZodDiscriminatedUnion:()=>fd,ZodEffects:()=>$o,ZodEnum:()=>Ts,ZodError:()=>Lr,ZodFirstPartyTypeKind:()=>we,ZodFunction:()=>cd,ZodIntersection:()=>Bs,ZodIssueCode:()=>L,ZodLazy:()=>Ss,ZodLiteral:()=>Cs,ZodMap:()=>nl,ZodNaN:()=>il,ZodNativeEnum:()=>Os,ZodNever:()=>Jo,ZodNull:()=>Ds,ZodNullable:()=>ga,ZodNumber:()=>ws,ZodObject:()=>Gr,ZodOptional:()=>Eo,ZodParsedType:()=>re,ZodPipeline:()=>Xu,ZodPromise:()=>qn,ZodReadonly:()=>qs,ZodRecord:()=>dd,ZodSchema:()=>Me,ZodSet:()=>sl,ZodString:()=>Mn,ZodSymbol:()=>ol,ZodTransformer:()=>$o,ZodTuple:()=>ha,ZodType:()=>Me,ZodUndefined:()=>$s,ZodUnion:()=>Fs,ZodUnknown:()=>Za,ZodVoid:()=>al,addIssueToContext:()=>X,any:()=>l$,array:()=>d$,bigint:()=>o$,boolean:()=>Xv,coerce:()=>M$,custom:()=>Zv,date:()=>a$,datetimeRegex:()=>Wv,defaultErrorMap:()=>Wa,discriminatedUnion:()=>_$,effect:()=>$$,enum:()=>y$,function:()=>k$,getErrorMap:()=>el,getParsedType:()=>_a,instanceof:()=>t$,intersection:()=>h$,isAborted:()=>ud,isAsync:()=>tl,isDirty:()=>Ad,isValid:()=>On,late:()=>e$,lazy:()=>b$,literal:()=>w$,makeIssue:()=>Yu,map:()=>x$,nan:()=>r$,nativeEnum:()=>E$,never:()=>A$,null:()=>i$,nullable:()=>F$,number:()=>Jv,object:()=>c$,objectUtil:()=>Bm,oboolean:()=>O$,onumber:()=>T$,optional:()=>D$,ostring:()=>C$,pipeline:()=>S$,preprocess:()=>B$,promise:()=>I$,quotelessJson:()=>$I,record:()=>j$,set:()=>v$,setErrorMap:()=>FI,strictObject:()=>p$,string:()=>Yv,symbol:()=>n$,transformer:()=>$$,tuple:()=>g$,undefined:()=>s$,union:()=>m$,unknown:()=>u$,util:()=>Ge,void:()=>f$});var Ge;(function(t){t.assertEqual=a=>{};function e(a){}t.assertIs=e;function r(a){throw new Error}t.assertNever=r,t.arrayToEnum=a=>{let n={};for(let s of a)n[s]=s;return n},t.getValidEnumValues=a=>{let n=t.objectKeys(a).filter(i=>typeof a[a[i]]!="number"),s={};for(let i of n)s[i]=a[i];return t.objectValues(s)},t.objectValues=a=>t.objectKeys(a).map(function(n){return a[n]}),t.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{let n=[];for(let s in a)Object.prototype.hasOwnProperty.call(a,s)&&n.push(s);return n},t.find=(a,n)=>{for(let s of a)if(n(s))return s},t.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function o(a,n=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(n)}t.joinValues=o,t.jsonStringifyReplacer=(a,n)=>typeof n=="bigint"?n.toString():n})(Ge||(Ge={}));var Bm;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Bm||(Bm={}));var re=Ge.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),_a=t=>{switch(typeof t){case"undefined":return re.undefined;case"string":return re.string;case"number":return Number.isNaN(t)?re.nan:re.number;case"boolean":return re.boolean;case"function":return re.function;case"bigint":return re.bigint;case"symbol":return re.symbol;case"object":return Array.isArray(t)?re.array:t===null?re.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?re.promise:typeof Map<"u"&&t instanceof Map?re.map:typeof Set<"u"&&t instanceof Set?re.set:typeof Date<"u"&&t instanceof Date?re.date:re.object;default:return re.unknown}};var L=Ge.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),$I=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Lr=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=o=>{this.issues=[...this.issues,o]},this.addIssues=(o=[])=>{this.issues=[...this.issues,...o]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(n){return n.message},o={_errors:[]},a=n=>{for(let s of n.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)o._errors.push(r(s));else{let i=o,l=0;for(;lr.message){let r={},o=[];for(let a of this.issues)if(a.path.length>0){let n=a.path[0];r[n]=r[n]||[],r[n].push(e(a))}else o.push(e(a));return{formErrors:o,fieldErrors:r}}get formErrors(){return this.flatten()}};Lr.create=t=>new Lr(t);var DI=(t,e)=>{let r;switch(t.code){case L.invalid_type:t.received===re.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case L.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Ge.jsonStringifyReplacer)}`;break;case L.unrecognized_keys:r=`Unrecognized key(s) in object: ${Ge.joinValues(t.keys,", ")}`;break;case L.invalid_union:r="Invalid input";break;case L.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Ge.joinValues(t.options)}`;break;case L.invalid_enum_value:r=`Invalid enum value. Expected ${Ge.joinValues(t.options)}, received '${t.received}'`;break;case L.invalid_arguments:r="Invalid function arguments";break;case L.invalid_return_type:r="Invalid function return type";break;case L.invalid_date:r="Invalid date";break;case L.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Ge.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case L.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case L.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case L.custom:r="Invalid input";break;case L.invalid_intersection_types:r="Intersection results could not be merged";break;case L.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case L.not_finite:r="Number must be finite";break;default:r=e.defaultError,Ge.assertNever(t)}return{message:r}},Wa=DI;var Gv=Wa;function FI(t){Gv=t}function el(){return Gv}var Yu=t=>{let{data:e,path:r,errorMaps:o,issueData:a}=t,n=[...r,...a.path||[]],s={...a,path:n};if(a.message!==void 0)return{...a,path:n,message:a.message};let i="",l=o.filter(u=>!!u).slice().reverse();for(let u of l)i=u(s,{data:e,defaultError:i}).message;return{...a,path:n,message:i}},BI=[];function X(t,e){let r=el(),o=Yu({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Wa?void 0:Wa].filter(a=>!!a)});t.common.issues.push(o)}var _r=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let o=[];for(let a of r){if(a.status==="aborted")return ke;a.status==="dirty"&&e.dirty(),o.push(a.value)}return{status:e.value,value:o}}static async mergeObjectAsync(e,r){let o=[];for(let a of r){let n=await a.key,s=await a.value;o.push({key:n,value:s})}return t.mergeObjectSync(e,o)}static mergeObjectSync(e,r){let o={};for(let a of r){let{key:n,value:s}=a;if(n.status==="aborted"||s.status==="aborted")return ke;n.status==="dirty"&&e.dirty(),s.status==="dirty"&&e.dirty(),n.value!=="__proto__"&&(typeof s.value<"u"||a.alwaysSet)&&(o[n.value]=s.value)}return{status:e.value,value:o}}},ke=Object.freeze({status:"aborted"}),bs=t=>({status:"dirty",value:t}),wr=t=>({status:"valid",value:t}),ud=t=>t.status==="aborted",Ad=t=>t.status==="dirty",On=t=>t.status==="valid",tl=t=>typeof Promise<"u"&&t instanceof Promise;var ce;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(ce||(ce={}));var Io=class{constructor(e,r,o,a){this._cachedPath=[],this.parent=e,this.data=r,this._path=o,this._key=a}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Hv=(t,e)=>{if(On(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Lr(t.common.issues);return this._error=r,this._error}}};function Te(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:o,description:a}=t;if(e&&(r||o))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(s,i)=>{let{message:l}=t;return s.code==="invalid_enum_value"?{message:l??i.defaultError}:typeof i.data>"u"?{message:l??o??i.defaultError}:s.code!=="invalid_type"?{message:i.defaultError}:{message:l??r??i.defaultError}},description:a}}var Me=class{get description(){return this._def.description}_getType(e){return _a(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:_a(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new _r,ctx:{common:e.parent.common,data:e.data,parsedType:_a(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(tl(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let o=this.safeParse(e,r);if(o.success)return o.data;throw o.error}safeParse(e,r){let o={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_a(e)},a=this._parseSync({data:e,path:o.path,parent:o});return Hv(o,a)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_a(e)};if(!this["~standard"].async)try{let o=this._parseSync({data:e,path:[],parent:r});return On(o)?{value:o.value}:{issues:r.common.issues}}catch(o){o?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(o=>On(o)?{value:o.value}:{issues:r.common.issues})}async parseAsync(e,r){let o=await this.safeParseAsync(e,r);if(o.success)return o.data;throw o.error}async safeParseAsync(e,r){let o={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_a(e)},a=this._parse({data:e,path:o.path,parent:o}),n=await(tl(a)?a:Promise.resolve(a));return Hv(o,n)}refine(e,r){let o=a=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(a):r;return this._refinement((a,n)=>{let s=e(a),i=()=>n.addIssue({code:L.custom,...o(a)});return typeof Promise<"u"&&s instanceof Promise?s.then(l=>l?!0:(i(),!1)):s?!0:(i(),!1)})}refinement(e,r){return this._refinement((o,a)=>e(o)?!0:(a.addIssue(typeof r=="function"?r(o,a):r),!1))}_refinement(e){return new $o({schema:this,typeName:we.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Eo.create(this,this._def)}nullable(){return ga.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ya.create(this)}promise(){return qn.create(this,this._def)}or(e){return Fs.create([this,e],this._def)}and(e){return Bs.create(this,e,this._def)}transform(e){return new $o({...Te(this._def),schema:this,typeName:we.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Ms({...Te(this._def),innerType:this,defaultValue:r,typeName:we.ZodDefault})}brand(){return new Ju({typeName:we.ZodBranded,type:this,...Te(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Ns({...Te(this._def),innerType:this,catchValue:r,typeName:we.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Xu.create(this,e)}readonly(){return qs.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},SI=/^c[^\s-]{8,}$/i,CI=/^[0-9a-z]+$/,TI=/^[0-9A-HJKMNP-TV-Z]{26}$/i,OI=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,MI=/^[a-z0-9_-]{21}$/i,NI=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,qI=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,PI=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,RI="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Sm,LI=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,GI=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,HI=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,VI=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,UI=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,zI=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Uv="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",WI=new RegExp(`^${Uv}$`);function zv(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function KI(t){return new RegExp(`^${zv(t)}$`)}function Wv(t){let e=`${Uv}T${zv(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function ZI(t,e){return!!((e==="v4"||!e)&&LI.test(t)||(e==="v6"||!e)&&HI.test(t))}function YI(t,e){if(!NI.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let o=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),a=JSON.parse(atob(o));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function JI(t,e){return!!((e==="v4"||!e)&&GI.test(t)||(e==="v6"||!e)&&VI.test(t))}var Mn=class t extends Me{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==re.string){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_type,expected:re.string,received:n.parsedType}),ke}let o=new _r,a;for(let n of this._def.checks)if(n.kind==="min")e.data.lengthn.value&&(a=this._getOrReturnCtx(e,a),X(a,{code:L.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),o.dirty());else if(n.kind==="length"){let s=e.data.length>n.value,i=e.data.lengthe.test(a),{validation:r,code:L.invalid_string,...ce.errToObj(o)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...ce.errToObj(e)})}url(e){return this._addCheck({kind:"url",...ce.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...ce.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...ce.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...ce.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...ce.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...ce.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...ce.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...ce.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...ce.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...ce.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...ce.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...ce.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...ce.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...ce.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...ce.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...ce.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...ce.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...ce.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...ce.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...ce.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...ce.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...ce.errToObj(r)})}nonempty(e){return this.min(1,ce.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Mn({checks:[],typeName:we.ZodString,coerce:t?.coerce??!1,...Te(t)});function XI(t,e){let r=(t.toString().split(".")[1]||"").length,o=(e.toString().split(".")[1]||"").length,a=r>o?r:o,n=Number.parseInt(t.toFixed(a).replace(".","")),s=Number.parseInt(e.toFixed(a).replace(".",""));return n%s/10**a}var ws=class t extends Me{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==re.number){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_type,expected:re.number,received:n.parsedType}),ke}let o,a=new _r;for(let n of this._def.checks)n.kind==="int"?Ge.isInteger(e.data)||(o=this._getOrReturnCtx(e,o),X(o,{code:L.invalid_type,expected:"integer",received:"float",message:n.message}),a.dirty()):n.kind==="min"?(n.inclusive?e.datan.value:e.data>=n.value)&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty()):n.kind==="multipleOf"?XI(e.data,n.value)!==0&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):n.kind==="finite"?Number.isFinite(e.data)||(o=this._getOrReturnCtx(e,o),X(o,{code:L.not_finite,message:n.message}),a.dirty()):Ge.assertNever(n);return{status:a.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,ce.toString(r))}gt(e,r){return this.setLimit("min",e,!1,ce.toString(r))}lte(e,r){return this.setLimit("max",e,!0,ce.toString(r))}lt(e,r){return this.setLimit("max",e,!1,ce.toString(r))}setLimit(e,r,o,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:o,message:ce.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:ce.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ce.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:ce.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:ce.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ce.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ce.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&Ge.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let o of this._def.checks){if(o.kind==="finite"||o.kind==="int"||o.kind==="multipleOf")return!0;o.kind==="min"?(r===null||o.value>r)&&(r=o.value):o.kind==="max"&&(e===null||o.valuenew ws({checks:[],typeName:we.ZodNumber,coerce:t?.coerce||!1,...Te(t)});var ys=class t extends Me{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==re.bigint)return this._getInvalidInput(e);let o,a=new _r;for(let n of this._def.checks)n.kind==="min"?(n.inclusive?e.datan.value:e.data>=n.value)&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty()):n.kind==="multipleOf"?e.data%n.value!==BigInt(0)&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):Ge.assertNever(n);return{status:a.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return X(r,{code:L.invalid_type,expected:re.bigint,received:r.parsedType}),ke}gte(e,r){return this.setLimit("min",e,!0,ce.toString(r))}gt(e,r){return this.setLimit("min",e,!1,ce.toString(r))}lte(e,r){return this.setLimit("max",e,!0,ce.toString(r))}lt(e,r){return this.setLimit("max",e,!1,ce.toString(r))}setLimit(e,r,o,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:o,message:ce.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ce.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:ce.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew ys({checks:[],typeName:we.ZodBigInt,coerce:t?.coerce??!1,...Te(t)});var Es=class extends Me{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==re.boolean){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.boolean,received:o.parsedType}),ke}return wr(e.data)}};Es.create=t=>new Es({typeName:we.ZodBoolean,coerce:t?.coerce||!1,...Te(t)});var Is=class t extends Me{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==re.date){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_type,expected:re.date,received:n.parsedType}),ke}if(Number.isNaN(e.data.getTime())){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_date}),ke}let o=new _r,a;for(let n of this._def.checks)n.kind==="min"?e.data.getTime()n.value&&(a=this._getOrReturnCtx(e,a),X(a,{code:L.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),o.dirty()):Ge.assertNever(n);return{status:o.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:ce.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:ce.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Is({checks:[],coerce:t?.coerce||!1,typeName:we.ZodDate,...Te(t)});var ol=class extends Me{_parse(e){if(this._getType(e)!==re.symbol){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.symbol,received:o.parsedType}),ke}return wr(e.data)}};ol.create=t=>new ol({typeName:we.ZodSymbol,...Te(t)});var $s=class extends Me{_parse(e){if(this._getType(e)!==re.undefined){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.undefined,received:o.parsedType}),ke}return wr(e.data)}};$s.create=t=>new $s({typeName:we.ZodUndefined,...Te(t)});var Ds=class extends Me{_parse(e){if(this._getType(e)!==re.null){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.null,received:o.parsedType}),ke}return wr(e.data)}};Ds.create=t=>new Ds({typeName:we.ZodNull,...Te(t)});var Nn=class extends Me{constructor(){super(...arguments),this._any=!0}_parse(e){return wr(e.data)}};Nn.create=t=>new Nn({typeName:we.ZodAny,...Te(t)});var Za=class extends Me{constructor(){super(...arguments),this._unknown=!0}_parse(e){return wr(e.data)}};Za.create=t=>new Za({typeName:we.ZodUnknown,...Te(t)});var Jo=class extends Me{_parse(e){let r=this._getOrReturnCtx(e);return X(r,{code:L.invalid_type,expected:re.never,received:r.parsedType}),ke}};Jo.create=t=>new Jo({typeName:we.ZodNever,...Te(t)});var al=class extends Me{_parse(e){if(this._getType(e)!==re.undefined){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.void,received:o.parsedType}),ke}return wr(e.data)}};al.create=t=>new al({typeName:we.ZodVoid,...Te(t)});var Ya=class t extends Me{_parse(e){let{ctx:r,status:o}=this._processInputParams(e),a=this._def;if(r.parsedType!==re.array)return X(r,{code:L.invalid_type,expected:re.array,received:r.parsedType}),ke;if(a.exactLength!==null){let s=r.data.length>a.exactLength.value,i=r.data.lengtha.maxLength.value&&(X(r,{code:L.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),o.dirty()),r.common.async)return Promise.all([...r.data].map((s,i)=>a.type._parseAsync(new Io(r,s,r.path,i)))).then(s=>_r.mergeArray(o,s));let n=[...r.data].map((s,i)=>a.type._parseSync(new Io(r,s,r.path,i)));return _r.mergeArray(o,n)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:ce.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:ce.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:ce.toString(r)}})}nonempty(e){return this.min(1,e)}};Ya.create=(t,e)=>new Ya({type:t,minLength:null,maxLength:null,exactLength:null,typeName:we.ZodArray,...Te(e)});function rl(t){if(t instanceof Gr){let e={};for(let r in t.shape){let o=t.shape[r];e[r]=Eo.create(rl(o))}return new Gr({...t._def,shape:()=>e})}else return t instanceof Ya?new Ya({...t._def,type:rl(t.element)}):t instanceof Eo?Eo.create(rl(t.unwrap())):t instanceof ga?ga.create(rl(t.unwrap())):t instanceof ha?ha.create(t.items.map(e=>rl(e))):t}var Gr=class t extends Me{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Ge.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==re.object){let u=this._getOrReturnCtx(e);return X(u,{code:L.invalid_type,expected:re.object,received:u.parsedType}),ke}let{status:o,ctx:a}=this._processInputParams(e),{shape:n,keys:s}=this._getCached(),i=[];if(!(this._def.catchall instanceof Jo&&this._def.unknownKeys==="strip"))for(let u in a.data)s.includes(u)||i.push(u);let l=[];for(let u of s){let A=n[u],c=a.data[u];l.push({key:{status:"valid",value:u},value:A._parse(new Io(a,c,a.path,u)),alwaysSet:u in a.data})}if(this._def.catchall instanceof Jo){let u=this._def.unknownKeys;if(u==="passthrough")for(let A of i)l.push({key:{status:"valid",value:A},value:{status:"valid",value:a.data[A]}});else if(u==="strict")i.length>0&&(X(a,{code:L.unrecognized_keys,keys:i}),o.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let A of i){let c=a.data[A];l.push({key:{status:"valid",value:A},value:u._parse(new Io(a,c,a.path,A)),alwaysSet:A in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let u=[];for(let A of l){let c=await A.key,p=await A.value;u.push({key:c,value:p,alwaysSet:A.alwaysSet})}return u}).then(u=>_r.mergeObjectSync(o,u)):_r.mergeObjectSync(o,l)}get shape(){return this._def.shape()}strict(e){return ce.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,o)=>{let a=this._def.errorMap?.(r,o).message??o.defaultError;return r.code==="unrecognized_keys"?{message:ce.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:we.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let o of Ge.objectKeys(e))e[o]&&this.shape[o]&&(r[o]=this.shape[o]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let o of Ge.objectKeys(this.shape))e[o]||(r[o]=this.shape[o]);return new t({...this._def,shape:()=>r})}deepPartial(){return rl(this)}partial(e){let r={};for(let o of Ge.objectKeys(this.shape)){let a=this.shape[o];e&&!e[o]?r[o]=a:r[o]=a.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let o of Ge.objectKeys(this.shape))if(e&&!e[o])r[o]=this.shape[o];else{let n=this.shape[o];for(;n instanceof Eo;)n=n._def.innerType;r[o]=n}return new t({...this._def,shape:()=>r})}keyof(){return Kv(Ge.objectKeys(this.shape))}};Gr.create=(t,e)=>new Gr({shape:()=>t,unknownKeys:"strip",catchall:Jo.create(),typeName:we.ZodObject,...Te(e)});Gr.strictCreate=(t,e)=>new Gr({shape:()=>t,unknownKeys:"strict",catchall:Jo.create(),typeName:we.ZodObject,...Te(e)});Gr.lazycreate=(t,e)=>new Gr({shape:t,unknownKeys:"strip",catchall:Jo.create(),typeName:we.ZodObject,...Te(e)});var Fs=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o=this._def.options;function a(n){for(let i of n)if(i.result.status==="valid")return i.result;for(let i of n)if(i.result.status==="dirty")return r.common.issues.push(...i.ctx.common.issues),i.result;let s=n.map(i=>new Lr(i.ctx.common.issues));return X(r,{code:L.invalid_union,unionErrors:s}),ke}if(r.common.async)return Promise.all(o.map(async n=>{let s={...r,common:{...r.common,issues:[]},parent:null};return{result:await n._parseAsync({data:r.data,path:r.path,parent:s}),ctx:s}})).then(a);{let n,s=[];for(let l of o){let u={...r,common:{...r.common,issues:[]},parent:null},A=l._parseSync({data:r.data,path:r.path,parent:u});if(A.status==="valid")return A;A.status==="dirty"&&!n&&(n={result:A,ctx:u}),u.common.issues.length&&s.push(u.common.issues)}if(n)return r.common.issues.push(...n.ctx.common.issues),n.result;let i=s.map(l=>new Lr(l));return X(r,{code:L.invalid_union,unionErrors:i}),ke}}get options(){return this._def.options}};Fs.create=(t,e)=>new Fs({options:t,typeName:we.ZodUnion,...Te(e)});var Ka=t=>t instanceof Ss?Ka(t.schema):t instanceof $o?Ka(t.innerType()):t instanceof Cs?[t.value]:t instanceof Ts?t.options:t instanceof Os?Ge.objectValues(t.enum):t instanceof Ms?Ka(t._def.innerType):t instanceof $s?[void 0]:t instanceof Ds?[null]:t instanceof Eo?[void 0,...Ka(t.unwrap())]:t instanceof ga?[null,...Ka(t.unwrap())]:t instanceof Ju||t instanceof qs?Ka(t.unwrap()):t instanceof Ns?Ka(t._def.innerType):[],fd=class t extends Me{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==re.object)return X(r,{code:L.invalid_type,expected:re.object,received:r.parsedType}),ke;let o=this.discriminator,a=r.data[o],n=this.optionsMap.get(a);return n?r.common.async?n._parseAsync({data:r.data,path:r.path,parent:r}):n._parseSync({data:r.data,path:r.path,parent:r}):(X(r,{code:L.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[o]}),ke)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,o){let a=new Map;for(let n of r){let s=Ka(n.shape[e]);if(!s.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let i of s){if(a.has(i))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(i)}`);a.set(i,n)}}return new t({typeName:we.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:a,...Te(o)})}};function Cm(t,e){let r=_a(t),o=_a(e);if(t===e)return{valid:!0,data:t};if(r===re.object&&o===re.object){let a=Ge.objectKeys(e),n=Ge.objectKeys(t).filter(i=>a.indexOf(i)!==-1),s={...t,...e};for(let i of n){let l=Cm(t[i],e[i]);if(!l.valid)return{valid:!1};s[i]=l.data}return{valid:!0,data:s}}else if(r===re.array&&o===re.array){if(t.length!==e.length)return{valid:!1};let a=[];for(let n=0;n{if(ud(n)||ud(s))return ke;let i=Cm(n.value,s.value);return i.valid?((Ad(n)||Ad(s))&&r.dirty(),{status:r.value,value:i.data}):(X(o,{code:L.invalid_intersection_types}),ke)};return o.common.async?Promise.all([this._def.left._parseAsync({data:o.data,path:o.path,parent:o}),this._def.right._parseAsync({data:o.data,path:o.path,parent:o})]).then(([n,s])=>a(n,s)):a(this._def.left._parseSync({data:o.data,path:o.path,parent:o}),this._def.right._parseSync({data:o.data,path:o.path,parent:o}))}};Bs.create=(t,e,r)=>new Bs({left:t,right:e,typeName:we.ZodIntersection,...Te(r)});var ha=class t extends Me{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.array)return X(o,{code:L.invalid_type,expected:re.array,received:o.parsedType}),ke;if(o.data.lengththis._def.items.length&&(X(o,{code:L.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let n=[...o.data].map((s,i)=>{let l=this._def.items[i]||this._def.rest;return l?l._parse(new Io(o,s,o.path,i)):null}).filter(s=>!!s);return o.common.async?Promise.all(n).then(s=>_r.mergeArray(r,s)):_r.mergeArray(r,n)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ha.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ha({items:t,typeName:we.ZodTuple,rest:null,...Te(e)})};var dd=class t extends Me{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.object)return X(o,{code:L.invalid_type,expected:re.object,received:o.parsedType}),ke;let a=[],n=this._def.keyType,s=this._def.valueType;for(let i in o.data)a.push({key:n._parse(new Io(o,i,o.path,i)),value:s._parse(new Io(o,o.data[i],o.path,i)),alwaysSet:i in o.data});return o.common.async?_r.mergeObjectAsync(r,a):_r.mergeObjectSync(r,a)}get element(){return this._def.valueType}static create(e,r,o){return r instanceof Me?new t({keyType:e,valueType:r,typeName:we.ZodRecord,...Te(o)}):new t({keyType:Mn.create(),valueType:e,typeName:we.ZodRecord,...Te(r)})}},nl=class extends Me{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.map)return X(o,{code:L.invalid_type,expected:re.map,received:o.parsedType}),ke;let a=this._def.keyType,n=this._def.valueType,s=[...o.data.entries()].map(([i,l],u)=>({key:a._parse(new Io(o,i,o.path,[u,"key"])),value:n._parse(new Io(o,l,o.path,[u,"value"]))}));if(o.common.async){let i=new Map;return Promise.resolve().then(async()=>{for(let l of s){let u=await l.key,A=await l.value;if(u.status==="aborted"||A.status==="aborted")return ke;(u.status==="dirty"||A.status==="dirty")&&r.dirty(),i.set(u.value,A.value)}return{status:r.value,value:i}})}else{let i=new Map;for(let l of s){let u=l.key,A=l.value;if(u.status==="aborted"||A.status==="aborted")return ke;(u.status==="dirty"||A.status==="dirty")&&r.dirty(),i.set(u.value,A.value)}return{status:r.value,value:i}}}};nl.create=(t,e,r)=>new nl({valueType:e,keyType:t,typeName:we.ZodMap,...Te(r)});var sl=class t extends Me{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.set)return X(o,{code:L.invalid_type,expected:re.set,received:o.parsedType}),ke;let a=this._def;a.minSize!==null&&o.data.sizea.maxSize.value&&(X(o,{code:L.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),r.dirty());let n=this._def.valueType;function s(l){let u=new Set;for(let A of l){if(A.status==="aborted")return ke;A.status==="dirty"&&r.dirty(),u.add(A.value)}return{status:r.value,value:u}}let i=[...o.data.values()].map((l,u)=>n._parse(new Io(o,l,o.path,u)));return o.common.async?Promise.all(i).then(l=>s(l)):s(i)}min(e,r){return new t({...this._def,minSize:{value:e,message:ce.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:ce.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};sl.create=(t,e)=>new sl({valueType:t,minSize:null,maxSize:null,typeName:we.ZodSet,...Te(e)});var cd=class t extends Me{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==re.function)return X(r,{code:L.invalid_type,expected:re.function,received:r.parsedType}),ke;function o(i,l){return Yu({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,el(),Wa].filter(u=>!!u),issueData:{code:L.invalid_arguments,argumentsError:l}})}function a(i,l){return Yu({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,el(),Wa].filter(u=>!!u),issueData:{code:L.invalid_return_type,returnTypeError:l}})}let n={errorMap:r.common.contextualErrorMap},s=r.data;if(this._def.returns instanceof qn){let i=this;return wr(async function(...l){let u=new Lr([]),A=await i._def.args.parseAsync(l,n).catch(m=>{throw u.addIssue(o(l,m)),u}),c=await Reflect.apply(s,this,A);return await i._def.returns._def.type.parseAsync(c,n).catch(m=>{throw u.addIssue(a(c,m)),u})})}else{let i=this;return wr(function(...l){let u=i._def.args.safeParse(l,n);if(!u.success)throw new Lr([o(l,u.error)]);let A=Reflect.apply(s,this,u.data),c=i._def.returns.safeParse(A,n);if(!c.success)throw new Lr([a(A,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ha.create(e).rest(Za.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,o){return new t({args:e||ha.create([]).rest(Za.create()),returns:r||Za.create(),typeName:we.ZodFunction,...Te(o)})}},Ss=class extends Me{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Ss.create=(t,e)=>new Ss({getter:t,typeName:we.ZodLazy,...Te(e)});var Cs=class extends Me{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return X(r,{received:r.data,code:L.invalid_literal,expected:this._def.value}),ke}return{status:"valid",value:e.data}}get value(){return this._def.value}};Cs.create=(t,e)=>new Cs({value:t,typeName:we.ZodLiteral,...Te(e)});function Kv(t,e){return new Ts({values:t,typeName:we.ZodEnum,...Te(e)})}var Ts=class t extends Me{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),o=this._def.values;return X(r,{expected:Ge.joinValues(o),received:r.parsedType,code:L.invalid_type}),ke}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),o=this._def.values;return X(r,{received:r.data,code:L.invalid_enum_value,options:o}),ke}return wr(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(o=>!e.includes(o)),{...this._def,...r})}};Ts.create=Kv;var Os=class extends Me{_parse(e){let r=Ge.getValidEnumValues(this._def.values),o=this._getOrReturnCtx(e);if(o.parsedType!==re.string&&o.parsedType!==re.number){let a=Ge.objectValues(r);return X(o,{expected:Ge.joinValues(a),received:o.parsedType,code:L.invalid_type}),ke}if(this._cache||(this._cache=new Set(Ge.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let a=Ge.objectValues(r);return X(o,{received:o.data,code:L.invalid_enum_value,options:a}),ke}return wr(e.data)}get enum(){return this._def.values}};Os.create=(t,e)=>new Os({values:t,typeName:we.ZodNativeEnum,...Te(e)});var qn=class extends Me{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==re.promise&&r.common.async===!1)return X(r,{code:L.invalid_type,expected:re.promise,received:r.parsedType}),ke;let o=r.parsedType===re.promise?r.data:Promise.resolve(r.data);return wr(o.then(a=>this._def.type.parseAsync(a,{path:r.path,errorMap:r.common.contextualErrorMap})))}};qn.create=(t,e)=>new qn({type:t,typeName:we.ZodPromise,...Te(e)});var $o=class extends Me{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===we.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:o}=this._processInputParams(e),a=this._def.effect||null,n={addIssue:s=>{X(o,s),s.fatal?r.abort():r.dirty()},get path(){return o.path}};if(n.addIssue=n.addIssue.bind(n),a.type==="preprocess"){let s=a.transform(o.data,n);if(o.common.async)return Promise.resolve(s).then(async i=>{if(r.value==="aborted")return ke;let l=await this._def.schema._parseAsync({data:i,path:o.path,parent:o});return l.status==="aborted"?ke:l.status==="dirty"?bs(l.value):r.value==="dirty"?bs(l.value):l});{if(r.value==="aborted")return ke;let i=this._def.schema._parseSync({data:s,path:o.path,parent:o});return i.status==="aborted"?ke:i.status==="dirty"?bs(i.value):r.value==="dirty"?bs(i.value):i}}if(a.type==="refinement"){let s=i=>{let l=a.refinement(i,n);if(o.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return i};if(o.common.async===!1){let i=this._def.schema._parseSync({data:o.data,path:o.path,parent:o});return i.status==="aborted"?ke:(i.status==="dirty"&&r.dirty(),s(i.value),{status:r.value,value:i.value})}else return this._def.schema._parseAsync({data:o.data,path:o.path,parent:o}).then(i=>i.status==="aborted"?ke:(i.status==="dirty"&&r.dirty(),s(i.value).then(()=>({status:r.value,value:i.value}))))}if(a.type==="transform")if(o.common.async===!1){let s=this._def.schema._parseSync({data:o.data,path:o.path,parent:o});if(!On(s))return ke;let i=a.transform(s.value,n);if(i instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:i}}else return this._def.schema._parseAsync({data:o.data,path:o.path,parent:o}).then(s=>On(s)?Promise.resolve(a.transform(s.value,n)).then(i=>({status:r.value,value:i})):ke);Ge.assertNever(a)}};$o.create=(t,e,r)=>new $o({schema:t,typeName:we.ZodEffects,effect:e,...Te(r)});$o.createWithPreprocess=(t,e,r)=>new $o({schema:e,effect:{type:"preprocess",transform:t},typeName:we.ZodEffects,...Te(r)});var Eo=class extends Me{_parse(e){return this._getType(e)===re.undefined?wr(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Eo.create=(t,e)=>new Eo({innerType:t,typeName:we.ZodOptional,...Te(e)});var ga=class extends Me{_parse(e){return this._getType(e)===re.null?wr(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ga.create=(t,e)=>new ga({innerType:t,typeName:we.ZodNullable,...Te(e)});var Ms=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o=r.data;return r.parsedType===re.undefined&&(o=this._def.defaultValue()),this._def.innerType._parse({data:o,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Ms.create=(t,e)=>new Ms({innerType:t,typeName:we.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Te(e)});var Ns=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o={...r,common:{...r.common,issues:[]}},a=this._def.innerType._parse({data:o.data,path:o.path,parent:{...o}});return tl(a)?a.then(n=>({status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Lr(o.common.issues)},input:o.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Lr(o.common.issues)},input:o.data})}}removeCatch(){return this._def.innerType}};Ns.create=(t,e)=>new Ns({innerType:t,typeName:we.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Te(e)});var il=class extends Me{_parse(e){if(this._getType(e)!==re.nan){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.nan,received:o.parsedType}),ke}return{status:"valid",value:e.data}}};il.create=t=>new il({typeName:we.ZodNaN,...Te(t)});var QI=Symbol("zod_brand"),Ju=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o=r.data;return this._def.type._parse({data:o,path:r.path,parent:r})}unwrap(){return this._def.type}},Xu=class t extends Me{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.common.async)return(async()=>{let n=await this._def.in._parseAsync({data:o.data,path:o.path,parent:o});return n.status==="aborted"?ke:n.status==="dirty"?(r.dirty(),bs(n.value)):this._def.out._parseAsync({data:n.value,path:o.path,parent:o})})();{let a=this._def.in._parseSync({data:o.data,path:o.path,parent:o});return a.status==="aborted"?ke:a.status==="dirty"?(r.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:o.path,parent:o})}}static create(e,r){return new t({in:e,out:r,typeName:we.ZodPipeline})}},qs=class extends Me{_parse(e){let r=this._def.innerType._parse(e),o=a=>(On(a)&&(a.value=Object.freeze(a.value)),a);return tl(r)?r.then(a=>o(a)):o(r)}unwrap(){return this._def.innerType}};qs.create=(t,e)=>new qs({innerType:t,typeName:we.ZodReadonly,...Te(e)});function Vv(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Zv(t,e={},r){return t?Nn.create().superRefine((o,a)=>{let n=t(o);if(n instanceof Promise)return n.then(s=>{if(!s){let i=Vv(e,o),l=i.fatal??r??!0;a.addIssue({code:"custom",...i,fatal:l})}});if(!n){let s=Vv(e,o),i=s.fatal??r??!0;a.addIssue({code:"custom",...s,fatal:i})}}):Nn.create()}var e$={object:Gr.lazycreate},we;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(we||(we={}));var t$=(t,e={message:`Input not instance of ${t.name}`})=>Zv(r=>r instanceof t,e),Yv=Mn.create,Jv=ws.create,r$=il.create,o$=ys.create,Xv=Es.create,a$=Is.create,n$=ol.create,s$=$s.create,i$=Ds.create,l$=Nn.create,u$=Za.create,A$=Jo.create,f$=al.create,d$=Ya.create,c$=Gr.create,p$=Gr.strictCreate,m$=Fs.create,_$=fd.create,h$=Bs.create,g$=ha.create,j$=dd.create,x$=nl.create,v$=sl.create,k$=cd.create,b$=Ss.create,w$=Cs.create,y$=Ts.create,E$=Os.create,I$=qn.create,$$=$o.create,D$=Eo.create,F$=ga.create,B$=$o.createWithPreprocess,S$=Xu.create,C$=()=>Yv().optional(),T$=()=>Jv().optional(),O$=()=>Xv().optional(),M$={string:t=>Mn.create({...t,coerce:!0}),number:t=>ws.create({...t,coerce:!0}),boolean:t=>Es.create({...t,coerce:!0}),bigint:t=>ys.create({...t,coerce:!0}),date:t=>Is.create({...t,coerce:!0})};var N$=ke;function q$(t,e){return`Expected a string (text), but got: \`${e}\` (${typeof e}). _Try wrapping the value in quotes._ +\r\f\xA0\v\uFEFF`];function rv(t,e,r){var o=t==null?"":""+t;if(e&&(o=o?o+" "+e:e),r){for(var a in r)if(r[a])o=o?o+" "+a:a;else if(o.length)for(var n=a.length,s=0;(s=o.indexOf(a,s))>=0;){var i=s+n;(s===0||ev.includes(o[s-1]))&&(i===o.length||ev.includes(o[i]))?o=(s===0?"":o.substring(0,s))+o.substring(i+1):s=i}}return o===""?null:o}function tv(t,e=!1){var r=e?" !important;":";",o="";for(var a in t){var n=t[a];n!=null&&n!==""&&(o+=" "+a+": "+n+r)}return o}function _m(t){return t[0]!=="-"||t[1]!=="-"?t.toLowerCase():t}function ov(t,e){if(e){var r="",o,a;if(Array.isArray(e)?(o=e[0],a=e[1]):o=e,t){t=String(t).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var n=!1,s=0,i=!1,l=[];o&&l.push(...Object.keys(o).map(_m)),a&&l.push(...Object.keys(a).map(_m));var u=0,A=-1;let y=t.length;for(var c=0;c{Bn(t,t.__value)});e.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),kr(()=>{e.disconnect()})}function zf(t,e,r=e){var o=!0;qu(t,"change",a=>{var n=a?"[selected]":":checked",s;if(t.multiple)s=[].map.call(t.querySelectorAll(n),Ru);else{var i=t.querySelector(n)??t.querySelector("option:not([disabled])");s=i&&Ru(i)}r(s)}),br(()=>{var a=e();if(Bn(t,a,o),o&&a===void 0){var n=t.querySelector(":checked");n!==null&&(a=Ru(n),r(a))}t.__value=a,o=!1}),zi(t)}function Ru(t){return"__value"in t?t.__value:t.value}var Wi=Symbol("class"),Ki=Symbol("style"),sv=Symbol("is custom element"),iv=Symbol("is html");function io(t){if(ie){var e=!1,r=()=>{if(!e){if(e=!0,t.hasAttribute("value")){var o=t.value;Xe(t,"value",null),t.value=o}if(t.hasAttribute("checked")){var a=t.checked;Xe(t,"checked",null),t.checked=a}}};t.__on_r=r,px(r),Rf()}}function gs(t,e){var r=jm(t);r.value===(r.value=e??void 0)||t.value===e&&(e!==0||t.nodeName!=="PROGRESS")||(t.value=e??"")}function lv(t,e){e?t.hasAttribute("selected")||t.setAttribute("selected",""):t.removeAttribute("selected")}function Xe(t,e,r,o){var a=jm(t);if(ie&&(a[e]=t.getAttribute(e),e==="src"||e==="srcset"||e==="href"&&t.nodeName==="LINK")){o||IE(t,e,r??"");return}a[e]!==(a[e]=r)&&(e==="loading"&&(t[Gj]=r),r==null?t.removeAttribute(e):typeof r!="string"&&Av(t).includes(e)?t[e]=r:t.setAttribute(e,r))}function uv(t,e,r,o,a=!1){var n=jm(t),s=n[sv],i=!n[iv];let l=ie&&s;l&&Pt(!1);var u=e||{},A=t.tagName==="OPTION";for(var c in e)c in r||(r[c]=null);r.class?r.class=mr(r.class):(o||r[Wi])&&(r.class=null),r[Ki]&&(r.style??(r.style=null));var p=Av(t);for(let B in r){let j=r[B];if(A&&B==="value"&&j==null){t.value=t.__value="",u[B]=j;continue}if(B==="class"){var m=t.namespaceURI==="http://www.w3.org/1999/xhtml";ut(t,m,j,o,e?.[Wi],r[Wi]),u[B]=j,u[Wi]=r[Wi];continue}if(B==="style"){Ui(t,j,e?.[Ki],r[Ki]),u[B]=j,u[Ki]=r[Ki];continue}var h=u[B];if(!(j===h&&!(j===void 0&&t.hasAttribute(B)))){u[B]=j;var y=B[0]+B[1];if(y!=="$$")if(y==="on"){let E={},D="$$"+B,k=B.slice(2);var I=Lx(k);if(Rx(k)&&(k=k.slice(0,-7),E.capture=!0),!I&&h){if(j!=null)continue;t.removeEventListener(k,u[D],E),u[D]=null}if(j!=null)if(I)t[`__${k}`]=j,Ke([k]);else{let C=function(P){u[B].call(this,P)};u[D]=sm(k,t,C,E)}else I&&(t[`__${k}`]=void 0)}else if(B==="style")Xe(t,B,j);else if(B==="autofocus")am(t,!!j);else if(!s&&(B==="__value"||B==="value"&&j!=null))t.value=t.__value=j;else if(B==="selected"&&A)lv(t,j);else{var F=B;i||(F=Gx(F));var R=F==="defaultValue"||F==="defaultChecked";if(j==null&&!s&&!R)if(n[B]=null,F==="value"||F==="checked"){let E=t,D=e===void 0;if(F==="value"){let k=E.defaultValue;E.removeAttribute(F),E.defaultValue=k,E.value=E.__value=D?k:null}else{let k=E.defaultChecked;E.removeAttribute(F),E.defaultChecked=k,E.checked=D?k:!1}}else t.removeAttribute(B);else R||p.includes(F)&&(s||typeof j!="string")?(t[F]=j,F in n&&(n[F]=At)):typeof j!="function"&&Xe(t,F,j,a)}}}return l&&Pt(!0),u}function Wf(t,e,r=[],o=[],a,n=!1){yu(r,o,s=>{var i=void 0,l={},u=t.nodeName==="SELECT",A=!1;if(Kt(()=>{var p=e(...s.map(d)),m=uv(t,i,p,a,n);A&&u&&"value"in p&&Bn(t,p.value);for(let y of Object.getOwnPropertySymbols(l))p[y]||$t(l[y]);for(let y of Object.getOwnPropertySymbols(p)){var h=p[y];y.description===Ip&&(!i||h!==i[y])&&(l[y]&&$t(l[y]),l[y]=It(()=>mm(t,()=>h))),m[y]=h}i=m}),u){var c=t;br(()=>{Bn(c,i.value,!0),zi(c)})}A=!0})}function jm(t){return t.__attributes??(t.__attributes={[sv]:t.nodeName.includes("-"),[iv]:t.namespaceURI===Nj})}var av=new Map;function Av(t){var e=av.get(t.nodeName);if(e)return e;av.set(t.nodeName,e=[]);for(var r,o=t,a=Element.prototype;a!==o;){r=Af(o);for(var n in r)r[n].set&&e.push(n);o=hn(o)}return e}function IE(t,e,r){N&&(e==="srcset"&&$E(t,r)||gm(t.getAttribute(e)??"",r)||sx(e,t.outerHTML.replace(t.innerHTML,t.innerHTML&&"..."),String(r)))}function gm(t,e){return t===e?!0:new URL(t,document.baseURI).href===new URL(e,document.baseURI).href}function nv(t){return t.split(",").map(e=>e.trim().split(" ").filter(Boolean))}function $E(t,e){var r=nv(t.srcset),o=nv(e);return o.length===r.length&&o.every(([a,n],s)=>n===r[s][1]&&(gm(r[s][0],a)||gm(a,r[s][0])))}function Sn(t,e,r=e){var o=eo(),a=new WeakSet;qu(t,"input",n=>{N&&t.type==="checkbox"&&Bp();var s=n?t.defaultValue:t.value;if(s=xm(t)?vm(s):s,r(s),ze!==null&&a.add(ze),o&&s!==(s=e())){var i=t.selectionStart,l=t.selectionEnd;t.value=s??"",l!==null&&(t.selectionStart=i,t.selectionEnd=Math.min(l,t.value.length))}}),(ie&&t.defaultValue!==t.value||Re(e)==null&&t.value)&&(r(xm(t)?vm(t.value):t.value),ze!==null&&a.add(ze)),Wt(()=>{N&&t.type==="checkbox"&&Bp();var n=e();if(t===document.activeElement){var s=Iu??ze;if(a.has(s))return}xm(t)&&n===vm(t.value)||t.type==="date"&&!n&&!t.value||n!==t.value&&(t.value=n??"")})}function km(t,e,r=e){qu(t,"change",o=>{var a=o?t.defaultChecked:t.checked;r(a)}),(ie&&t.defaultChecked!==t.checked||Re(e)==null)&&r(t.checked),Wt(()=>{var o=e();t.checked=!!o})}function xm(t){var e=t.type;return e==="number"||e==="range"}function vm(t){return t===""?null:+t}function fv(t,e){return t===e||t?.[dr]===e}function bm(t={},e,r,o){return br(()=>{var a,n;return Wt(()=>{a=n,n=o?.()||[],Re(()=>{t!==r(...n)&&(e(t,...n),a&&fv(r(...a),t)&&e(null,...a))})}),()=>{to(()=>{n&&fv(r(...n),t)&&e(null,...n)})}}),t}function js(t,e,r,o,a){var n=()=>{o(r[t])};r.addEventListener(e,n),a?Wt(()=>{r[t]=a()}):n(),(r===document.body||r===window||r===document)&&kr(()=>{r.removeEventListener(e,n)})}function wm(t=!1){let e=Le,r=e.l.u;if(!r)return;let o=()=>ca(e.s);if(t){let a=0,n={},s=kn(()=>{let i=!1,l=e.s;for(let u in l)l[u]!==n[u]&&(n[u]=l[u],i=!0);return i&&a++,a});o=()=>d(s)}r.b.length&&Tu(()=>{dv(e,o),as(r.b)}),jt(()=>{let a=Re(()=>r.m.map(Rj));return()=>{for(let n of a)typeof n=="function"&&n()}}),r.a.length&&jt(()=>{dv(e,o),as(r.a)})}function dv(t,e){if(t.l.s)for(let r of t.l.s)d(r);e()}function Zf(t,e,r){if(t==null)return e(void 0),r&&r(void 0),or;let o=Re(()=>t.subscribe(e,r));return o.unsubscribe?()=>o.unsubscribe():o}var Zi=[];function Yf(t,e=or){let r=null,o=new Set;function a(i){if(Ci(t,i)&&(t=i,r)){let l=!Zi.length;for(let u of o)u[1](),Zi.push(u,t);if(l){for(let u=0;u{o.delete(u),o.size===0&&r&&(r(),r=null)}}return{set:a,update:n,subscribe:s}}function lo(t){let e;return Zf(t,r=>e=r)(),e}var Jf=!1,ym=Symbol();function Br(t,e,r){let o=r[e]??(r[e]={store:null,source:In(void 0),unsubscribe:or});if(N&&(o.source.label=e),o.store!==t&&!(ym in r))if(o.unsubscribe(),o.store=t??null,t==null)o.source.v=void 0,o.unsubscribe=or;else{var a=!0;o.unsubscribe=Zf(t,n=>{a?o.source.v=n:te(o.source,n)}),a=!1}return t&&ym in r?lo(t):d(o.source)}function Sr(){let t={};function e(){kr(()=>{for(var r in t)t[r].unsubscribe();rr(t,ym,{enumerable:!1,value:!0})})}return[t,e]}function Em(t){var e=Jf;try{return Jf=!1,[t(),Jf]}finally{Jf=e}}var TE={get(t,e){if(!t.exclude.includes(e))return d(t.version),e in t.special?t.special[e]():t.props[e]},set(t,e,r){if(!(e in t.special)){var o=Ae;try{Lt(t.parent_effect),t.special[e]=U({get[e](){return t.props[e]}},e,4)}finally{Lt(o)}}return t.special[e](r),Cf(t.version),!0},getOwnPropertyDescriptor(t,e){if(!t.exclude.includes(e)&&e in t.props)return{enumerable:!0,configurable:!0,value:t.props[e]}},deleteProperty(t,e){return t.exclude.includes(e)||(t.exclude.push(e),Cf(t.version)),!0},has(t,e){return t.exclude.includes(e)?!1:e in t.props},ownKeys(t){return Reflect.ownKeys(t.props).filter(e=>!t.exclude.includes(e))}};function Ee(t,e){return new Proxy({props:t,exclude:e,special:{},version:qr(0),parent_effect:Ae},TE)}var OE={get(t,e){let r=t.props.length;for(;r--;){let o=t.props[r];if(os(o)&&(o=o()),typeof o=="object"&&o!==null&&e in o)return o[e]}},set(t,e,r){let o=t.props.length;for(;o--;){let a=t.props[o];os(a)&&(a=a());let n=jr(a,e);if(n&&n.set)return n.set(r),!0}return!1},getOwnPropertyDescriptor(t,e){let r=t.props.length;for(;r--;){let o=t.props[r];if(os(o)&&(o=o()),typeof o=="object"&&o!==null&&e in o){let a=jr(o,e);return a&&!a.configurable&&(a.configurable=!0),a}}},has(t,e){if(e===dr||e===Fi)return!1;for(let r of t.props)if(os(r)&&(r=r()),r!=null&&e in r)return!0;return!1},ownKeys(t){let e=[];for(let r of t.props)if(os(r)&&(r=r()),!!r){for(let o in r)e.includes(o)||e.push(o);for(let o of Object.getOwnPropertySymbols(r))e.includes(o)||e.push(o)}return e}};function Se(...t){return new Proxy({props:t},OE)}function U(t,e,r,o){var a=!aa||(r&2)!==0,n=(r&8)!==0,s=(r&16)!==0,i=o,l=!0,u=()=>(l&&(l=!1,i=s?Re(o):o),i),A;if(n){var c=dr in t||Fi in t;A=jr(t,e)?.set??(c&&e in t?B=>t[e]=B:void 0)}var p,m=!1;n?[p,m]=Em(()=>t[e]):p=t[e],p===void 0&&o!==void 0&&(p=u(),A&&(a&&Qj(e),A(p)));var h;if(a?h=()=>{var B=t[e];return B===void 0?u():(l=!0,B)}:h=()=>{var B=t[e];return B!==void 0&&(i=void 0),B===void 0?i:B},a&&(r&4)===0)return h;if(A){var y=t.$$legacy;return function(B,j){return arguments.length>0?((!a||!j||y||m)&&A(j?h():B),B):h()}}var I=!1,F=((r&1)!==0?kn:As)(()=>(I=!1,h()));N&&(F.label=e),n&&d(F);var R=Ae;return function(B,j){if(arguments.length>0){let E=j?d(F):a&&n?kt(B):B;return te(F,E),I=!0,i!==void 0&&(i=E),B}return Uo&&I||(R.f&16384)!==0?F.v:d(F)}}function pv(t){return new Im(t)}var za,wo,Im=class{constructor(e){zt(this,za);zt(this,wo);var r=new Map,o=(n,s)=>{var i=In(s,!1,!1);return r.set(n,i),i};let a=new Proxy({...e.props||{},$$events:{}},{get(n,s){return d(r.get(s)??o(s,Reflect.get(n,s)))},has(n,s){return s===Fi?!0:(d(r.get(s)??o(s,Reflect.get(n,s))),Reflect.has(n,s))},set(n,s,i){return te(r.get(s)??o(s,i),i),Reflect.set(n,s,i)}});ur(this,wo,(e.hydrate?um:Be)(e.component,{target:e.target,anchor:e.anchor,props:a,context:e.context,intro:e.intro??!1,recover:e.recover})),!Ho&&(!e?.props?.$$host||e.sync===!1)&&Li(),ur(this,za,a.$$events);for(let n of Object.keys(ye(this,wo)))n==="$set"||n==="$destroy"||n==="$on"||rr(this,n,{get(){return ye(this,wo)[n]},set(s){ye(this,wo)[n]=s},enumerable:!0});ye(this,wo).$set=n=>{Object.assign(a,n)},ye(this,wo).$destroy=()=>{Yo(ye(this,wo))}}$set(e){ye(this,wo).$set(e)}$on(e,r){ye(this,za)[e]=ye(this,za)[e]||[];let o=(...a)=>r.call(this,...a);return ye(this,za)[e].push(o),()=>{ye(this,za)[e]=ye(this,za)[e].filter(a=>a!==o)}}$destroy(){ye(this,wo).$destroy()}};za=new WeakMap,wo=new WeakMap;var GE;typeof HTMLElement=="function"&&(GE=class extends HTMLElement{constructor(e,r,o){super();Ze(this,"$$ctor");Ze(this,"$$s");Ze(this,"$$c");Ze(this,"$$cn",!1);Ze(this,"$$d",{});Ze(this,"$$r",!1);Ze(this,"$$p_d",{});Ze(this,"$$l",{});Ze(this,"$$l_u",new Map);Ze(this,"$$me");this.$$ctor=e,this.$$s=r,o&&this.attachShadow({mode:"open"})}addEventListener(e,r,o){if(this.$$l[e]=this.$$l[e]||[],this.$$l[e].push(r),this.$$c){let a=this.$$c.$on(e,r);this.$$l_u.set(r,a)}super.addEventListener(e,r,o)}removeEventListener(e,r,o){if(super.removeEventListener(e,r,o),this.$$c){let a=this.$$l_u.get(r);a&&(a(),this.$$l_u.delete(r))}}async connectedCallback(){if(this.$$cn=!0,!this.$$c){let e=function(a){return n=>{let s=document.createElement("slot");a!=="default"&&(s.name=a),v(n,s)}};if(await Promise.resolve(),!this.$$cn||this.$$c)return;let r={},o=HE(this);for(let a of this.$$s)a in o&&(a==="default"&&!this.$$d.children?(this.$$d.children=e(a),r.default=!0):r[a]=e(a));for(let a of this.attributes){let n=this.$$g_p(a.name);n in this.$$d||(this.$$d[n]=$m(n,a.value,this.$$p_d,"toProp"))}for(let a in this.$$p_d)!(a in this.$$d)&&this[a]!==void 0&&(this.$$d[a]=this[a],delete this[a]);this.$$c=pv({component:this.$$ctor,target:this.shadowRoot||this,props:{...this.$$d,$$slots:r,$$host:this}}),this.$$me=Of(()=>{Wt(()=>{this.$$r=!0;for(let a of $p(this.$$c)){if(!this.$$p_d[a]?.reflect)continue;this.$$d[a]=this.$$c[a];let n=$m(a,this.$$d[a],this.$$p_d,"toAttribute");n==null?this.removeAttribute(this.$$p_d[a].attribute||a):this.setAttribute(this.$$p_d[a].attribute||a,n)}this.$$r=!1})});for(let a in this.$$l)for(let n of this.$$l[a]){let s=this.$$c.$on(a,n);this.$$l_u.set(n,s)}this.$$l={}}}attributeChangedCallback(e,r,o){this.$$r||(e=this.$$g_p(e),this.$$d[e]=$m(e,o,this.$$p_d,"toProp"),this.$$c?.$set({[e]:this.$$d[e]}))}disconnectedCallback(){this.$$cn=!1,Promise.resolve().then(()=>{!this.$$cn&&this.$$c&&(this.$$c.$destroy(),this.$$me(),this.$$c=void 0)})}$$g_p(e){return $p(this.$$p_d).find(r=>this.$$p_d[r].attribute===e||!this.$$p_d[r].attribute&&r.toLowerCase()===e)||e}});function $m(t,e,r,o){let a=r[t]?.type;if(e=a==="Boolean"&&typeof e!="boolean"?e!=null:e,!o||!r[t])return e;if(o==="toAttribute")switch(a){case"Object":case"Array":return e==null?null:JSON.stringify(e);case"Boolean":return e?"":null;case"Number":return e??null;default:return e}else switch(a){case"Object":case"Array":return e&&JSON.parse(e);case"Boolean":return e;case"Number":return e!=null?+e:e;default:return e}}function HE(t){let e={};return t.childNodes.forEach(r=>{e[r.slot||"default"]=!0}),e}var VE={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"},mv=VE;var UE=im("");function Ce(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]),o=Ee(r,["name","color","size","strokeWidth","absoluteStrokeWidth","iconNode"]);ae(e,!1);let a=U(e,"name",8,void 0),n=U(e,"color",8,"currentColor"),s=U(e,"size",8,24),i=U(e,"strokeWidth",8,2),l=U(e,"absoluteStrokeWidth",8,!1),u=U(e,"iconNode",24,()=>[]),A=(...h)=>h.filter((y,I,F)=>!!y&&F.indexOf(y)===I).join(" ");wm();var c=UE();Wf(c,(h,y)=>({...mv,...o,width:s(),height:s(),stroke:n(),"stroke-width":h,class:y}),[()=>(ca(l()),ca(i()),ca(s()),Re(()=>l()?Number(i())*24/Number(s()):i())),()=>(ca(a()),ca(r),Re(()=>A("lucide-icon","lucide",a()?`lucide-${a()}`:"",r.class)))]);var p=w(c);ot(p,1,u,lt,(h,y)=>{var I=de(()=>Fp(d(y),2));let F=()=>d(I)[0],R=()=>d(I)[1];var B=J(),j=K(B);pm(j,F,!0,(E,D)=>{Wf(E,()=>({...R()}))}),v(h,B)});var m=S(p);$e(m,e,"default",{},null),b(c),v(t,c),ne()}function Xf(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m3 16 4 4 4-4"}],["path",{d:"M7 20V4"}],["path",{d:"M11 4h10"}],["path",{d:"M11 8h7"}],["path",{d:"M11 12h4"}]];Ce(t,Se({name:"arrow-down-wide-narrow"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Cn(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M12 5v14"}],["path",{d:"m19 12-7 7-7-7"}]];Ce(t,Se({name:"arrow-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Qf(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m3 8 4-4 4 4"}],["path",{d:"M7 4v16"}],["path",{d:"M11 12h4"}],["path",{d:"M11 16h7"}],["path",{d:"M11 20h10"}]];Ce(t,Se({name:"arrow-up-narrow-wide"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function ed(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m5 12 7-7 7 7"}],["path",{d:"M12 19V5"}]];Ce(t,Se({name:"arrow-up"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Lu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M20 6 9 17l-5-5"}]];Ce(t,Se({name:"check"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function td(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m6 9 6 6 6-6"}]];Ce(t,Se({name:"chevron-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function rd(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m9 18 6-6-6-6"}]];Ce(t,Se({name:"chevron-right"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function od(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m7 20 5-5 5 5"}],["path",{d:"m7 4 5 5 5-5"}]];Ce(t,Se({name:"chevrons-down-up"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function ad(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m7 15 5 5 5-5"}],["path",{d:"m7 9 5-5 5 5"}]];Ce(t,Se({name:"chevrons-up-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function xs(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"}]];Ce(t,Se({name:"clipboard"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function nd(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1"}]];Ce(t,Se({name:"file-json"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Gu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M3 7V5c0-1.1.9-2 2-2h2"}],["path",{d:"M17 3h2c1.1 0 2 .9 2 2v2"}],["path",{d:"M21 17v2c0 1.1-.9 2-2 2h-2"}],["path",{d:"M7 21H5c-1.1 0-2-.9-2-2v-2"}],["rect",{width:"7",height:"5",x:"7",y:"7",rx:"1"}],["rect",{width:"7",height:"5",x:"10",y:"12",rx:"1"}]];Ce(t,Se({name:"group"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Hu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2"}],["circle",{cx:"9",cy:"9",r:"2"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"}]];Ce(t,Se({name:"image"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Vu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["circle",{cx:"12",cy:"16",r:"1"}],["rect",{width:"18",height:"12",x:"3",y:"10",rx:"2"}],["path",{d:"M7 10V7a5 5 0 0 1 9.33-2.5"}]];Ce(t,Se({name:"lock-keyhole-open"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Uu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["circle",{cx:"12",cy:"16",r:"1"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3"}]];Ce(t,Se({name:"lock-keyhole"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function zu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m8 6 4-4 4 4"}],["path",{d:"M12 2v10.3a4 4 0 0 1-1.172 2.872L4 22"}],["path",{d:"m20 22-5-5"}]];Ce(t,Se({name:"merge"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Wu(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];Ce(t,Se({name:"pencil"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Tn(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];Ce(t,Se({name:"plus"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function sd(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}],["path",{d:"M3 3v5h5"}]];Ce(t,Se({name:"rotate-ccw"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function vs(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7"}]];Ce(t,Se({name:"save"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}function Ku(t,e){let r=Ee(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M16 3h5v5"}],["path",{d:"M8 3H3v5"}],["path",{d:"M12 22v-8.3a4 4 0 0 0-1.172-2.872L3 3"}],["path",{d:"m15 9 6-6"}]];Ce(t,Se({name:"split"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=J(),i=K(s);$e(i,e,"default",{},null),v(a,s)},$$slots:{default:!0}}))}var _v=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=t.settings.explicit_edge_sources.date_note;if(o.enabled){if(!t.settings.edge_fields.find(n=>n.label===o.default_field))return r.errors.push({code:"invalid_setting_value",path:"explicit_edge_sources.date_note.default_field",message:`The default Date Note field "${o.default_field}" is not a valid Breadcrumbs Edge field`}),r}else return r;let a=[];return e.obsidian?.forEach(({file:n})=>{let s=Ye.fromFormat(n.basename,o.date_format);s.isValid&&a.push({date:s,path:n.path,ext:n.extension,basename:n.basename,folder:n.parent?.path??""})}),e.dataview?.forEach(({file:n})=>{let s=Ye.fromFormat(n.name,o.date_format);s.isValid&&a.push({date:s,ext:n.ext,path:n.path,folder:n.folder,basename:n.name})}),a.sort((n,s)=>n.date.toMillis()-s.date.toMillis()).forEach((n,s)=>{let i=n.date.plus({days:1}).toFormat(o.date_format),l=n.date.plus({days:1}).toFormat("yyyy"),u=n.date.plus({days:1}).toFormat("MM"),A=n.folder;l!==n.date.toFormat("yyyy")&&(A=A.replace(n.date.toFormat("yyyy"),l)),u!==n.date.toFormat("MM")&&(A=A.replace(n.date.toFormat("MM"),u));let c=a.at(s+1),p=c?.folder,m=c?.basename,h=o.stretch_to_existing?m??i:i;H.debug(`tomorrow_folder: ${A}`);let y=o.stretch_to_existing||h===m?p??A:A,I=mt.build(y,h,n.ext);t.app.vault.getFileByPath(I)||r.nodes.push(new vt(I,[],!1,!1,!1)),r.edges.push(new ct(n.path,I,o.default_field,"date_note"))}),r};function zE(t,e,r){let o=e?.[Ve["dendron-note-field"]]??t.settings.explicit_edge_sources.dendron_note.default_field;if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`dendron-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(a=>a.label===o))return it({path:r,code:"invalid_field_value",message:`dendron-note-field is not a valid field: '${o}'`})}else return ht(void 0);return Xt({field:o})}function Dm(t,e,r,o){let{delimiter:a}=t.settings.explicit_edge_sources.dendron_note,n=mt.basename(r).split(a);if(n.length===1)return;let s=zE(t,o,r);if(!s.ok){s.error&&e.errors.push(s.error);return}let i=mt.build(r.split("/").slice(0,-1).join("/"),n.slice(0,-1).join(a),"md"),{field:l}=s.data;t.app.vault.getFileByPath(i)||(e.nodes.push(new vt(i,[],!1,!1,!1)),Dm(t,e,i,{[Ve["dendron-note-field"]]:l})),e.edges.push(new ct(r,i,l,"dendron_note"))}var hv=(t,e)=>{let r={nodes:[],edges:[],errors:[]};return t.settings.explicit_edge_sources.dendron_note.enabled&&(e.obsidian?.forEach(({file:o,cache:a})=>{Dm(t,r,o.path,a?.frontmatter)}),e.dataview?.forEach(o=>{Dm(t,r,o.file.path,o)})),r};var gv=(t,e,r)=>{if(!e)return ht(void 0);let o=e[Ve["folder-note-field"]];if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`folder-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(n=>n.label===o))return it({path:r,code:"invalid_field_value",message:`folder-note-field is not a valid field: '${o}'`})}else return ht(void 0);let a=!!e[Ve["folder-note-recurse"]];return Xt({field:o,recurse:a})},jv=async(t,e,r,o)=>{let a=await t.app.vault.adapter.list(e);a.files.forEach(n=>r(n)),o&&await Promise.all(a.folders.map(n=>jv(t,n,r,!0)))},xv=async(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[];return e.obsidian?.forEach(({file:a,cache:n})=>{if(!n)return;let s=gv(t,n?.frontmatter,a.path);if(!s.ok){s.error&&r.errors.push(s.error);return}o.push({data:s.data,file:{path:a.path,folder:a.parent?.path??""}})}),e.dataview?.forEach(a=>{let n=gv(t,a,a.file.path);if(!n.ok){n.error&&r.errors.push(n.error);return}o.push({data:n.data,file:{path:a.file.path,folder:a.file.folder}})}),await Promise.all(o.map(({data:a,file:n})=>jv(t,n.folder,s=>{!s.endsWith(".md")||s===n.path||r.edges.push(new ct(n.path,s,a.field,"folder_note"))},a.recurse))),r};var WE=(t,e,r)=>{let o=e?.[Ve["johnny-decimal-note-field"]]??t.settings.explicit_edge_sources.johnny_decimal_note.default_field;if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`johnny-decimal-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(a=>a.label===o))return it({path:r,code:"invalid_field_value",message:`johnny-decimal-note-field is not a valid BC field: '${o}'`})}else return ht(void 0);return Xt({field:o})},KE=(t,e,r,o)=>{let a=WE(t,r.metadata,r.path);if(!a.ok){a.error&&e.errors.push(a.error);return}let{delimiter:n}=t.settings.explicit_edge_sources.johnny_decimal_note,s=r.decimals.split(n).slice(0,-1).join(n);if(s==="")return;let i=o.find(A=>A.decimals===s);if(!i)return;t.app.vault.getFileByPath(i.path)||e.nodes.push(new vt(i.path,[],!1,!1,!1));let{field:u}=a.data;e.edges.push(new ct(r.path,i.path,u,"johnny_decimal_note"))},vv=(t,e)=>{let r={nodes:[],edges:[],errors:[]};if(!t.settings.explicit_edge_sources.johnny_decimal_note.enabled)return r;let{delimiter:o}=t.settings.explicit_edge_sources.johnny_decimal_note,a=new RegExp(`^([\\w\\d\\${o}]+)(\\s|\\${o}$)`),n=[];return e.obsidian?.forEach(({file:s,cache:i})=>{let l=mt.basename(s.path),u=l.match(a)?.[1];u&&n.push({basename:l,path:s.path,metadata:i?.frontmatter,decimals:Qd(u,o)})}),e.dataview?.forEach(s=>{let i=mt.basename(s.file.path),l=i.match(a)?.[1];l&&n.push({basename:i,metadata:s,path:s.file.path,decimals:Qd(l,o)})}),n.forEach(s=>{KE(t,r,s,n)}),r};var kv=require("obsidian");var ks=(t,e,r)=>{let o=mt.ensure_ext(e),a=t.metadataCache.getFirstLinkpathDest(o,r);return[a?.path??nn.resolve_to_absolute_path(t,o,r),a]},bv=async(t,e)=>{let r=Object.assign({notify:!0,log:!0},e);r.log&&H.feat(t),await navigator.clipboard.writeText(t),r.notify&&new kv.Notice("Copied to clipboard and logged to console.")};var wv=(t,e,r)=>{if(!e)return ht(void 0);let o=e[Ve["list-note-field"]];if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`list-note-field is not a string: '${o}'`});if(!t.settings.edge_fields.find(s=>s.label===o))return it({path:r,code:"invalid_field_value",message:`list-note-field is not a valid BC field: '${o}'`})}else return ht(void 0);let a=e[Ve["list-note-neighbour-field"]]??t.settings.explicit_edge_sources.list_note.default_neighbour_field;if(a){if(typeof a!="string")return it({path:r,code:"invalid_field_value",message:`list-note-neighbour-field is not a string: '${a}'`});if(!t.settings.edge_fields.find(s=>s.label===a))return it({path:r,code:"invalid_field_value",message:`list-note-neighbour-field is not a valid BC field: '${a}'`})}let n=!!e[Ve["list-note-exclude-index"]];return Xt({field:o,exclude_index:n,neighbour_field:a??void 0})},ZE=/^\s*([-\w\s]+)\b/,yv=(t,e,r)=>{let o=ZE.exec(e.text)?.[1];return o?t.settings.edge_fields.find(a=>a.label===o)?Xt({field:o}):it({path:r,code:"invalid_field_value",message:`Field override is not a valid BC field: ${o}. Line: ${e.position.start.line}`}):Xt(void 0)},YE=({plugin:t,results:e,source_id:r,list_note_page:o,list_note_info:a,source_list_item_i:n})=>{if(!a.data.neighbour_field)return;let s=o.file.lists.values[n],i;for(let c=n+1;c{let r={nodes:[],edges:[],errors:[]};return e.obsidian?.forEach(({file:o,cache:a})=>{if(!a)return;let n=wv(t,a?.frontmatter,o.path);if(n.ok){r.errors.push({path:o.path,code:"missing_other_plugin",message:"list-notes are not implemented without Dataview enabled"});return}else{n.error&&r.errors.push(n.error);return}}),e.dataview?.forEach(o=>{let a=wv(t,o,o.file.path);if(!a.ok){a.error&&r.errors.push(a.error);return}o.file.lists.values.forEach((n,s)=>{let i=n.outlinks.at(0);if(!i)return;let[l,u]=ks(t.app,i.path,o.file.path);if(u||r.nodes.push(new vt(l,[],!1,!1,!1)),!a.data.exclude_index&&n.position.start.col===0){let A=yv(t,n,o.file.path);if(!A.ok){A.error&&r.errors.push(A.error);return}r.edges.push(new ct(o.file.path,l,A.data?.field??a.data.field,"list_note"))}a.data.neighbour_field&&YE({plugin:t,results:r,list_note_page:o,list_note_info:a,source_list_item_i:s,source_id:l}),n.children.forEach(A=>{let c=A.outlinks.at(0);if(!c)return;let p=yv(t,A,o.file.path);if(!p.ok){p.error&&r.errors.push(p.error);return}let[m,h]=ks(t.app,c.path,o.file.path);h||r.nodes.push(new vt(m,[],!1,!1,!1)),r.edges.push(new ct(l,m,p.data?.field??a.data.field,"list_note"))})})}),r};function Iv(t,e,r){if(!e)return ht(void 0);let o=e[Ve["regex-note-regex"]];if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-regex"]} is not a string: '${o}'`})}else return ht(void 0);let a=e[Ve["regex-note-flags"]];if(a&&typeof a!="string")return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-flags"]} is not a string: '${a}'`});let n;try{n=new RegExp(o,a||""),H.debug("get_regex_note_info > regex:",n)}catch{return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-regex"]} is not a valid regex: '${o}'`})}let s=e[Ve["regex-note-field"]]??t.settings.explicit_edge_sources.regex_note.default_field;if(s){if(typeof s!="string")return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-field"]} is not a string: '${s}'`});if(!t.settings.edge_fields.find(i=>i.label===s))return it({path:r,code:"invalid_field_value",message:`${Ve["regex-note-field"]} is not a valid field: '${s}'`})}else return ht(void 0);return Xt({field:s,regex:n})}var $v=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[];if(e.obsidian?.forEach(({file:n,cache:s})=>{let i=Iv(t,s?.frontmatter,n.path);if(!i.ok){i.error&&r.errors.push(i.error);return}o.push({info:i.data,path:n.path})}),e.dataview?.forEach(n=>{let{file:s}=n,i=Iv(t,n,s.path);if(!i.ok){i.error&&r.errors.push(i.error);return}o.push({info:i.data,path:s.path})}),!o)return r;let a=e.obsidian?.map(n=>n.file.path)??e.dataview?.map(n=>n.file.path)??[];return o.forEach(n=>{a.filter(s=>n.info.regex.test(s)).forEach(s=>{r.edges.push(new ct(n.path,s,n.info.field,"regex_note"))})}),r};var Dv=(t,e,r)=>{if(!e)return ht(void 0);let o=e[Ve["tag-note-tag"]];if(o||(o=e["BC-tag-note"],o&&H.warn(`'BC-tag-note' is deprecated in favor of ${Ve["tag-note-tag"]}`)),o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:`tag-note-tag is not a string: '${o}'`})}else return ht(void 0);let a=Xd(o,"#"),n=e[Ve["tag-note-field"]]??t.settings.explicit_edge_sources.tag_note.default_field;if(n){if(typeof n!="string")return it({path:r,code:"invalid_field_value",message:`tag-note-field is not a string: '${n}'`});if(!t.settings.edge_fields.find(i=>i.label===n))return it({path:r,code:"invalid_field_value",message:`tag-note-field is not a valid BC field: '${n}'`})}else return ht(void 0);let s=!!e[Ve["tag-note-exact"]];return Xt({tag:a,field:n,exact:s})},Fv=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[],a=new Map;e.obsidian?.forEach(({file:s,cache:i})=>{if(!i)return;let l=m=>{let h=Xd(m,"#");a.get(h)?.push(s.path)||a.set(h,[s.path])};i?.frontmatter?.tags?.forEach(l),i?.tags?.map(m=>m.tag)?.forEach(l);let u=Dv(t,i?.frontmatter,s.path);if(!u.ok){u.error&&r.errors.push(u.error);return}let{tag:A,field:c,exact:p}=u.data;o.push({tag:A,exact:p,field:c,source_path:s.path})}),e.dataview?.forEach(s=>{let i=s.file;i.etags.values.forEach(p=>{a.get(p)?.push(i.path)||a.set(p,[i.path])});let l=Dv(t,s,i.path);if(!l.ok){l.error&&r.errors.push(l.error);return}let{tag:u,field:A,exact:c}=l.data;o.push({tag:u,exact:c,field:A,source_path:i.path})});let n=[...a.keys()];return o.forEach(s=>{(s.exact?a.get(s.tag):n.filter(l=>l.startsWith(s.tag)).flatMap(l=>a.get(l)))?.forEach(l=>{r.edges.push(new ct(s.source_path,l,s.field,"tag_note"))})}),r};function id(t){return Array.isArray(t)?t:[t]}function Bv(t,e,r){let o=Math.max(...t.map(a=>a.length));return t.map(a=>{let n=o-a.length;return r?Array(n).fill(e).concat(a):a.concat(Array(n).fill(e))})}function Sv(t){let e=[];if(!t.length)return e;for(let r=0;ro){let o={};return t.forEach(a=>{let n=e(a);if(n===void 0)return;let s=o[n],i=r(a);s?s.push(i):o[n]=[i]}),o}function Tv(t,e){let r={};return Object.entries(t).forEach(([o,a])=>{r[o]=e(a)}),r}function ma(t){let e=new Set(t);return Array.from(e)}function Zu(t,e){let r=new Set,o=[];return t.forEach(a=>{let n=e(a);r.has(n)||(r.add(n),o.push(a))}),o}var JE=/\[(.+?)\]\((.+?)\)/,Ov=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=new Set(t.settings.edge_fields.map(a=>a.label));return e.obsidian?.forEach(({file:a,cache:n})=>{n?.frontmatterLinks?.forEach(s=>{let i=s.key.split(".")[0];if(!o.has(i))return;let[l,u]=ks(t.app,s.link,a.path);u||r.nodes.push(new vt(l,[],!1,!1,!1)),r.edges.push(new ct(a.path,l,i,"typed_link"))})}),e.dataview?.forEach(a=>{let n=a.file;Object.keys(a).forEach(s=>{!o.has(s)||["file","aliases"].includes(s)||id(a[s]).flat().forEach(i=>{let l;if(i)typeof i=="string"?l=JE.exec(i)?.[2]:typeof i=="object"&&i?.path?l=i.path:i?.isLuxonDateTime?r.errors.push({path:n.path,code:"invalid_field_value",message:`Invalid value for field '${s}': '${i}'. Dataview DateTime values are not supported, since they don't preserve the original date string.`}):r.errors.push({path:n.path,code:"invalid_field_value",message:`Invalid value for field '${s}': '${i}'. Expected wikilink or markdown link.`});else return;if(!l)return;let[u,A]=ks(t.app,l,n.path);A||r.nodes.push(new vt(u,[],!1,!1,!1)),r.edges.push(new ct(n.path,u,s,"typed_link"))})})}),r};var Mv={tag_note:Fv,list_note:Ev,date_note:_v,typed_link:Ov,regex_note:$v,folder_note:xv,dendron_note:hv,dataview_note:kg,johnny_decimal_note:vv};var Nv=t=>Ba.is_enabled(t)?{obsidian:null,dataview:Ba.get_api()?.pages().values}:{obsidian:t.vault.getMarkdownFiles().map(e=>({file:e,cache:t.metadataCache.getFileCache(e)})),dataview:null};function XE(t){let e=[];return t.obsidian?t.obsidian.forEach(({file:r,cache:o})=>{let a=[],n=!1,s=!1,i=(0,qv.parseFrontMatterAliases)(o?.frontmatter);Array.isArray(i)&&i.length>0&&(a=i),o?.frontmatter?.[Ve["ignore-in-edges"]]&&(n=!0),o?.frontmatter?.[Ve["ignore-out-edges"]]&&(s=!0),e.push(new vt(r.path,a,!0,n,s))}):t.dataview.forEach(r=>{let o=[],a=!1,n=!1,s=r.file.aliases.values;Array.isArray(s)&&s.length>0&&(o=s),r[Ve["ignore-in-edges"]]&&(a=!0),r[Ve["ignore-out-edges"]]&&(n=!0),e.push(new vt(r.file.path,o,!0,a,n))}),e}var Pv=async t=>{let e=new Tr,r=new Tr,o=Nv(t.app),a=XE(o);H.debug(e.elapsedMessage("get_initial_nodes")),e.reset();let n=await Promise.all(L_.map(async l=>{let u=await Mv[l](t,o);return{source:l,results:u}})),s=[];for(let{results:l}of n)a.push(...l.nodes),s.push(...l.edges);H.debug(e.elapsedMessage("Collecting edges and nodes")),e.reset();let i=t.settings.implied_relations.transitive.map(l=>new Un(l.name,l.chain.map(u=>u.field),l.close_field,l.rounds,!1,l.close_reversed));return t.graph.build_graph(a,s,i),H.debug(e.elapsedMessage("WASM call")),H.debug(r.elapsedMessage("Total")),{explicit_edge_results:n}};var gd=require("obsidian");function Yi(t,e,r,o){function a(n){return n instanceof r?n:new r(function(s){s(n)})}return new(r||(r=Promise))(function(n,s){function i(A){try{u(o.next(A))}catch(c){s(c)}}function l(A){try{u(o.throw(A))}catch(c){s(c)}}function u(A){A.done?n(A.value):a(A.value).then(i,l)}u((o=o.apply(t,e||[])).next())})}var Qi=require("obsidian");var QE=q(' '),eI=q(' ');function Ji(t,e){"use strict";let r=U(e,"href",3,void 0),o=U(e,"title",3,void 0),a=U(e,"onclick",3,()=>{}),n=U(e,"oncontextmenu",3,()=>{}),s=U(e,"onkeydown",3,()=>{});var i=J(),l=K(i);{var u=c=>{var p=QE();p.__click=function(...h){a()?.apply(this,h)},p.__contextmenu=function(...h){n()?.apply(this,h)};var m=w(p,!0);b(p),oe(()=>{Xe(p,"href",r()),Xe(p,"title",o()),Fe(m,e.tag)}),v(c,p)},A=c=>{var p=eI();p.__click=function(...h){a()?.apply(this,h)},p.__keydown=function(...h){s()?.apply(this,h)},p.__contextmenu=function(...h){n()?.apply(this,h)};var m=w(p,!0);b(p),oe(()=>{Xe(p,"title",o()),Fe(m,e.tag)}),v(c,p)};se(l,c=>{r()!==void 0?c(u):c(A,!1)})}v(t,i)}Ke(["click","contextmenu","keydown"]);var tI=(t,e,r,o,a)=>{e(r.fields.find(n=>n.label===t.currentTarget.value)),e()&&o()?.(e()),a()&&e(void 0)},rI=q(""),oI=q('');function Xi(t,e){ae(e,!0);let r=U(e,"undefine_on_change",3,!0),o=U(e,"field",15,void 0),a=U(e,"placeholder",3,void 0),n=U(e,"onselect",3,void 0);var s=oI();s.__change=[tI,o,e,n,r];var i=w(s),l=w(i,!0);b(i),i.value=i.__value="";var u=S(i);ot(u,17,()=>e.fields,lt,(c,p)=>{let m=()=>d(p).label;var h=rI(),y=w(h,!0);b(h);var I={};oe(()=>{Fe(y,m()),I!==(I=m())&&(h.value=(h.__value=m())??"")}),v(c,h)}),b(s);var A;zi(s),oe(()=>{Fe(l,a()??"Select Field"),A!==(A=o()?.label??"")&&(s.value=(s.__value=o()?.label??"")??"",Bn(s,o()?.label??""))}),v(t,s),ne()}Ke(["change"]);var aI=q('Unsaved changes'),nI=(t,e)=>e.fields="",sI=(t,e,r)=>e.fields.scroll_to(d(r).edge_fields.last()?.label??""),iI=q(''),lI=(t,e,r)=>e.fields.remove(d(r)),uI=q('
'),AI=q(''),fI=q(""),dI=q('
Groups
'),cI=q('
'),pI=(t,e)=>e.groups="",mI=(t,e,r)=>e.groups.scroll_to(d(r).edge_field_groups.last()?.label??""),_I=q(''),hI=(t,e,r)=>e.groups.remove(d(r)),gI=q('
'),jI=q(''),xI=q('
Fields
'),vI=q('

Fields


Groups

');function Fm(t,e){ae(e,!0);let r=U(e,"plugin",7),o=We(kt(r().settings)),a=kt({fields:"",groups:""}),n={save:()=>Yi(void 0,void 0,void 0,function*(){r().settings=pr(d(o)),yield Promise.all([r().saveSettings(),r().rebuildGraph()]),te(o,r().settings,!0)}),fields:{make_id:T=>`BC-edge-field-${T}`,scroll_to:T=>{let M=document.getElementById(n.fields.make_id(T));M&&(M.scrollIntoView({behavior:"smooth",block:"center"}),M.focus())},add:()=>{let T={label:`Edge Field ${d(o).edge_fields.length+1}`};d(o).edge_fields.push(T),setTimeout(()=>n.fields.scroll_to(T.label),0),d(o).is_dirty=!0},remove:T=>{d(o).edge_fields=d(o).edge_fields.filter(M=>M.label!==T.label),d(o).edge_field_groups.forEach(M=>{M.fields=M.fields.filter(Z=>Z!==T.label)}),d(o).is_dirty=!0},rename:(T,M)=>{if(T.label!==M){{if(M==="")return new Qi.Notice("Field label cannot be empty.");if(d(o).edge_fields.some(Z=>Z.label===M))return new Qi.Notice("Field label must be unique.")}d(o).edge_field_groups.forEach(Z=>{let _e=Z.fields.indexOf(T.label);_e!==-1&&(Z.fields[_e]=M)}),d(o).implied_relations.transitive.forEach(Z=>{Z.chain=Z.chain.map(_e=>_e.field===T.label?Object.assign(Object.assign({},_e),{field:M}):_e),Z.close_field=Z.close_field===T.label?M:Z.close_field}),d(o).explicit_edge_sources.tag_note.default_field=d(o).explicit_edge_sources.tag_note.default_field===T.label?M:d(o).explicit_edge_sources.tag_note.default_field,d(o).explicit_edge_sources.list_note.default_neighbour_field=d(o).explicit_edge_sources.list_note.default_neighbour_field===T.label?M:d(o).explicit_edge_sources.list_note.default_neighbour_field,d(o).explicit_edge_sources.dendron_note.default_field=d(o).explicit_edge_sources.dendron_note.default_field===T.label?M:d(o).explicit_edge_sources.dendron_note.default_field,d(o).explicit_edge_sources.johnny_decimal_note.default_field=d(o).explicit_edge_sources.johnny_decimal_note.default_field===T.label?M:d(o).explicit_edge_sources.johnny_decimal_note.default_field,d(o).explicit_edge_sources.date_note.default_field=d(o).explicit_edge_sources.date_note.default_field===T.label?M:d(o).explicit_edge_sources.date_note.default_field,d(o).explicit_edge_sources.regex_note.default_field=d(o).explicit_edge_sources.regex_note.default_field===T.label?M:d(o).explicit_edge_sources.regex_note.default_field,T.label=M,d(o).is_dirty=!0}}},groups:{make_id:T=>`BC-edge-group-${T}`,scroll_to:T=>{let M=document.getElementById(n.groups.make_id(T));M&&(M.scrollIntoView({behavior:"smooth",block:"center"}),M.focus())},add:()=>{let T={label:`Group ${d(o).edge_field_groups.length+1}`,fields:[]};d(o).edge_field_groups.push(T),setTimeout(()=>n.groups.scroll_to(T.label),0),d(o).is_dirty=!0},remove:T=>{d(o).edge_field_groups=d(o).edge_field_groups.filter(M=>M.label!==T.label),d(o).is_dirty=!0},rename:(T,M)=>{T.label!==M&&(d(o).views.page.trail.field_group_labels=d(o).views.page.trail.field_group_labels.map(Z=>Z===T.label?M:Z),d(o).views.page.prev_next.field_group_labels.prev=d(o).views.page.prev_next.field_group_labels.prev.map(Z=>Z===T.label?M:Z),d(o).views.page.prev_next.field_group_labels.next=d(o).views.page.prev_next.field_group_labels.next.map(Z=>Z===T.label?M:Z),d(o).views.side.matrix.field_group_labels=d(o).views.side.matrix.field_group_labels.map(Z=>Z===T.label?M:Z),d(o).views.side.matrix.field_group_labels=d(o).views.side.matrix.field_group_labels.map(Z=>Z===T.label?M:Z),T.label=M,d(o).is_dirty=!0)},add_field:(T,M)=>{T&&(T.fields.push(M),d(o).is_dirty=!0)},remove_field:(T,M)=>{T&&(T.fields=T.fields.filter(Z=>Z!==M),d(o).is_dirty=!0)}}},s={field_group:(T,M)=>Z=>{let _e=new Qi.Menu;_e.addItem(Ne=>Ne.setTitle("Remove from Group").setIcon("x").onClick(()=>n.groups.remove_field(d(o).edge_field_groups.find(at=>at.label===M),T.label))),_e.showAtMouseEvent(Z)},group_field:(T,M)=>Z=>{let _e=new Qi.Menu;_e.addItem(Ne=>Ne.setTitle("Remove Field").setIcon("x").onClick(()=>n.groups.remove_field(T,M))),_e.showAtMouseEvent(Z)}};var i=vI(),l=w(i),u=w(l);u.__click=function(...T){n.save?.apply(this,T)};var A=w(u);vs(A,{get size(){return 20}}),sa(),b(u);var c=S(u,2);{var p=T=>{var M=aI();v(T,M)};se(c,T=>{d(o).is_dirty&&T(p)})}b(l);var m=S(l,2),h=S(w(m),2),y=w(h);io(y);var I=S(y,2);I.__click=[nI,a],b(h);var F=S(h,2);{var R=T=>{var M=iI();M.__click=[sI,n,o];var Z=w(M);Cn(Z,{get size(){return 20}}),b(M),v(T,M)};se(F,T=>{d(o).edge_fields.length>3&&T(R)})}b(m);var B=S(m,2),j=w(B);ot(j,17,()=>d(o).edge_fields.filter(T=>T.label.includes(a.fields.toLowerCase())),lt,(T,M)=>{let Z=de(()=>d(o).edge_field_groups.filter(Jt=>Jt.fields.includes(d(M).label)).map(Jt=>Jt.label));var _e=cI(),Ne=w(_e),at=w(Ne);io(at);var uo=S(at,2);uo.__click=[lI,n,M],b(Ne);var Do=S(Ne,2);so(Do,()=>d(o).edge_field_groups,Jt=>{var Vr=dI(),va=S(w(Vr),2);ot(va,17,()=>d(Z),lt,(ir,_t)=>{var Mt=uI(),Er=w(Mt);{let Fo=de(()=>s.field_group(d(M),d(_t)));Ji(Er,{get tag(){return d(_t)},title:"Jump to group. Right click for more actions.",onclick:()=>n.groups.scroll_to(d(_t)),get oncontextmenu(){return d(Fo)}})}b(Mt),v(ir,Mt)});var bt=S(va,2);{var Vt=ir=>{var _t=AI();_t.textContent="",v(ir,_t)};se(bt,ir=>{d(Z).length||ir(Vt)})}var Dt=S(bt,2);Dt.__change=ir=>{ir.currentTarget.value&&(n.groups.add_field(d(o).edge_field_groups.find(_t=>_t.label===ir.currentTarget.value),d(M).label),ir.currentTarget.value="")};var Ao=w(Dt);Ao.value=Ao.__value="";var tn=S(Ao);ot(tn,17,()=>d(o).edge_field_groups,lt,(ir,_t)=>{var Mt=J(),Er=K(Mt);{var Fo=Xo=>{var Qo=fI(),rn=w(Qo,!0);b(Qo);var ka={};oe(()=>{Fe(rn,d(_t).label),ka!==(ka=d(_t).label)&&(Qo.value=(Qo.__value=d(_t).label)??"")}),v(Xo,Qo)};se(Er,Xo=>{d(_t).fields.includes(d(M).label)||Xo(Fo)})}v(ir,Mt)}),b(Dt),Dt.value=Dt.__value="",b(Vr),v(Jt,Vr)}),b(_e),oe(Jt=>{Xe(at,"id",Jt),gs(at,d(M).label)},[()=>n.fields.make_id(d(M).label)]),Va("blur",at,Jt=>n.fields.rename(d(M),Jt.currentTarget.value)),v(T,_e)});var E=S(j,2);E.__click=function(...T){n.fields.add?.apply(this,T)};var D=w(E);Tn(D,{get size(){return 20}}),sa(),b(E),b(B);var k=S(B,4),C=S(w(k),2),P=w(C);io(P);var le=S(P,2);le.__click=[pI,a],b(C);var xe=S(C,2);{var fe=T=>{var M=_I();M.__click=[mI,n,o];var Z=w(M);Cn(Z,{get size(){return 20}}),b(M),v(T,M)};se(xe,T=>{d(o).edge_field_groups.length>3&&T(fe)})}b(k);var He=S(k,2),G=w(He);ot(G,17,()=>d(o).edge_field_groups.filter(T=>T.label.includes(a.groups.toLowerCase())),lt,(T,M)=>{var Z=xI(),_e=w(Z),Ne=w(_e);io(Ne);var at=S(Ne,2);at.__click=[hI,n,M],b(_e);var uo=S(_e,2),Do=S(w(uo),2);ot(Do,17,()=>d(M).fields,lt,(bt,Vt)=>{var Dt=gI(),Ao=w(Dt);{let tn=de(()=>s.group_field(d(M),d(Vt)));Ji(Ao,{get tag(){return d(Vt)},title:"Jump to field. Right click for more actions.",onclick:()=>n.fields.scroll_to(d(Vt)),get oncontextmenu(){return d(tn)}})}b(Dt),v(bt,Dt)});var Jt=S(Do,2);{var Vr=bt=>{var Vt=jI();Vt.textContent="",v(bt,Vt)};se(Jt,bt=>{d(M).fields.length||bt(Vr)})}var va=S(Jt,2);{let bt=de(()=>d(o).edge_fields.filter(Vt=>!d(M).fields.includes(Vt.label)));Xi(va,{placeholder:"Add Field",get fields(){return d(bt)},onselect:Vt=>n.groups.add_field(d(M),Vt.label)})}b(uo),b(Z),oe(bt=>{Xe(Ne,"id",bt),gs(Ne,d(M).label)},[()=>n.groups.make_id(d(M).label)]),Va("blur",Ne,bt=>n.groups.rename(d(M),bt.currentTarget.value)),v(T,Z)});var Y=S(G,2);Y.__click=function(...T){n.groups.add?.apply(this,T)};var De=w(Y);Tn(De,{get size(){return 20}}),sa(),b(Y),b(He),b(i),oe(()=>{I.disabled=a.fields==="",le.disabled=a.groups===""}),Sn(y,()=>a.fields,T=>a.fields=T),Sn(P,()=>a.groups,T=>a.groups=T),v(t,i),ne()}Ke(["click","change"]);var Ja=require("obsidian");var kI=["LR","RL","TB","BT"],bI=["dagre","elk"],wI=["basis","bumpX","bumpY","cardinal","catmullRom","linear","monotoneX","monotoneY","natural","step","stepAfter","stepBefore"];function Rv(t){let e=new TextEncoder().encode(t);return btoa(String.fromCharCode(...e))}function yI(t){return`https://mermaid.ink/img/${Rv(t)}`}function EI(t){return`https://mermaid.live/edit#base64:${Rv(JSON.stringify({code:t,autoSync:!1,updateDiagram:!0,mermaid:{theme:"default"}},void 0,2))}`}function II(t){return new Un("",t.chain.map(o=>o.field),t.close_field,1,!1,t.close_reversed).create_example_graph().generate_mermaid_graph(new Nt(["1"],void 0,100,1e3,!1,void 0),new Hn(void 0,"","graph","LR",!1,["field"],void 0,o=>o.path,!1))}var yo={from_transitive_rule:II,to_image_link:yI,to_live_edit_link:EI,RENDERERS:bI,DIRECTIONS:kI,CURVE_STYLES:wI};var Lv=(t,e)=>{let{delimiter:r}=Object.assign({delimiter:" "},e),o="";for(let a in t)o+=`${a}=${t[a]}${r}`;return o=o.slice(0,-1),e?.trim_lone_param&&Object.keys(t).length===1&&(o=o.split("=",2)[1]),o};var Qe={};Qm(Qe,{BRAND:()=>QI,DIRTY:()=>bs,EMPTY_PATH:()=>BI,INVALID:()=>ke,NEVER:()=>N0,OK:()=>wr,ParseStatus:()=>_r,Schema:()=>Me,ZodAny:()=>Nn,ZodArray:()=>Ya,ZodBigInt:()=>ys,ZodBoolean:()=>Es,ZodBranded:()=>Ju,ZodCatch:()=>Ns,ZodDate:()=>Is,ZodDefault:()=>Ms,ZodDiscriminatedUnion:()=>fd,ZodEffects:()=>$o,ZodEnum:()=>Ts,ZodError:()=>Lr,ZodFirstPartyTypeKind:()=>we,ZodFunction:()=>cd,ZodIntersection:()=>Bs,ZodIssueCode:()=>L,ZodLazy:()=>Ss,ZodLiteral:()=>Cs,ZodMap:()=>nl,ZodNaN:()=>il,ZodNativeEnum:()=>Os,ZodNever:()=>Jo,ZodNull:()=>Ds,ZodNullable:()=>ga,ZodNumber:()=>ws,ZodObject:()=>Gr,ZodOptional:()=>Eo,ZodParsedType:()=>re,ZodPipeline:()=>Xu,ZodPromise:()=>qn,ZodReadonly:()=>qs,ZodRecord:()=>dd,ZodSchema:()=>Me,ZodSet:()=>sl,ZodString:()=>Mn,ZodSymbol:()=>ol,ZodTransformer:()=>$o,ZodTuple:()=>ha,ZodType:()=>Me,ZodUndefined:()=>$s,ZodUnion:()=>Fs,ZodUnknown:()=>Za,ZodVoid:()=>al,addIssueToContext:()=>X,any:()=>l0,array:()=>d0,bigint:()=>o0,boolean:()=>Xv,coerce:()=>M0,custom:()=>Zv,date:()=>a0,datetimeRegex:()=>Wv,defaultErrorMap:()=>Wa,discriminatedUnion:()=>_0,effect:()=>$0,enum:()=>y0,function:()=>k0,getErrorMap:()=>el,getParsedType:()=>_a,instanceof:()=>t0,intersection:()=>h0,isAborted:()=>ud,isAsync:()=>tl,isDirty:()=>Ad,isValid:()=>On,late:()=>e0,lazy:()=>b0,literal:()=>w0,makeIssue:()=>Yu,map:()=>x0,nan:()=>r0,nativeEnum:()=>E0,never:()=>A0,null:()=>i0,nullable:()=>F0,number:()=>Jv,object:()=>c0,objectUtil:()=>Bm,oboolean:()=>O0,onumber:()=>T0,optional:()=>D0,ostring:()=>C0,pipeline:()=>S0,preprocess:()=>B0,promise:()=>I0,quotelessJson:()=>$I,record:()=>j0,set:()=>v0,setErrorMap:()=>FI,strictObject:()=>p0,string:()=>Yv,symbol:()=>n0,transformer:()=>$0,tuple:()=>g0,undefined:()=>s0,union:()=>m0,unknown:()=>u0,util:()=>Ge,void:()=>f0});var Ge;(function(t){t.assertEqual=a=>{};function e(a){}t.assertIs=e;function r(a){throw new Error}t.assertNever=r,t.arrayToEnum=a=>{let n={};for(let s of a)n[s]=s;return n},t.getValidEnumValues=a=>{let n=t.objectKeys(a).filter(i=>typeof a[a[i]]!="number"),s={};for(let i of n)s[i]=a[i];return t.objectValues(s)},t.objectValues=a=>t.objectKeys(a).map(function(n){return a[n]}),t.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{let n=[];for(let s in a)Object.prototype.hasOwnProperty.call(a,s)&&n.push(s);return n},t.find=(a,n)=>{for(let s of a)if(n(s))return s},t.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function o(a,n=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(n)}t.joinValues=o,t.jsonStringifyReplacer=(a,n)=>typeof n=="bigint"?n.toString():n})(Ge||(Ge={}));var Bm;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Bm||(Bm={}));var re=Ge.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),_a=t=>{switch(typeof t){case"undefined":return re.undefined;case"string":return re.string;case"number":return Number.isNaN(t)?re.nan:re.number;case"boolean":return re.boolean;case"function":return re.function;case"bigint":return re.bigint;case"symbol":return re.symbol;case"object":return Array.isArray(t)?re.array:t===null?re.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?re.promise:typeof Map<"u"&&t instanceof Map?re.map:typeof Set<"u"&&t instanceof Set?re.set:typeof Date<"u"&&t instanceof Date?re.date:re.object;default:return re.unknown}};var L=Ge.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),$I=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Lr=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=o=>{this.issues=[...this.issues,o]},this.addIssues=(o=[])=>{this.issues=[...this.issues,...o]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(n){return n.message},o={_errors:[]},a=n=>{for(let s of n.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)o._errors.push(r(s));else{let i=o,l=0;for(;lr.message){let r={},o=[];for(let a of this.issues)if(a.path.length>0){let n=a.path[0];r[n]=r[n]||[],r[n].push(e(a))}else o.push(e(a));return{formErrors:o,fieldErrors:r}}get formErrors(){return this.flatten()}};Lr.create=t=>new Lr(t);var DI=(t,e)=>{let r;switch(t.code){case L.invalid_type:t.received===re.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case L.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Ge.jsonStringifyReplacer)}`;break;case L.unrecognized_keys:r=`Unrecognized key(s) in object: ${Ge.joinValues(t.keys,", ")}`;break;case L.invalid_union:r="Invalid input";break;case L.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Ge.joinValues(t.options)}`;break;case L.invalid_enum_value:r=`Invalid enum value. Expected ${Ge.joinValues(t.options)}, received '${t.received}'`;break;case L.invalid_arguments:r="Invalid function arguments";break;case L.invalid_return_type:r="Invalid function return type";break;case L.invalid_date:r="Invalid date";break;case L.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Ge.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case L.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case L.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case L.custom:r="Invalid input";break;case L.invalid_intersection_types:r="Intersection results could not be merged";break;case L.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case L.not_finite:r="Number must be finite";break;default:r=e.defaultError,Ge.assertNever(t)}return{message:r}},Wa=DI;var Gv=Wa;function FI(t){Gv=t}function el(){return Gv}var Yu=t=>{let{data:e,path:r,errorMaps:o,issueData:a}=t,n=[...r,...a.path||[]],s={...a,path:n};if(a.message!==void 0)return{...a,path:n,message:a.message};let i="",l=o.filter(u=>!!u).slice().reverse();for(let u of l)i=u(s,{data:e,defaultError:i}).message;return{...a,path:n,message:i}},BI=[];function X(t,e){let r=el(),o=Yu({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Wa?void 0:Wa].filter(a=>!!a)});t.common.issues.push(o)}var _r=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let o=[];for(let a of r){if(a.status==="aborted")return ke;a.status==="dirty"&&e.dirty(),o.push(a.value)}return{status:e.value,value:o}}static async mergeObjectAsync(e,r){let o=[];for(let a of r){let n=await a.key,s=await a.value;o.push({key:n,value:s})}return t.mergeObjectSync(e,o)}static mergeObjectSync(e,r){let o={};for(let a of r){let{key:n,value:s}=a;if(n.status==="aborted"||s.status==="aborted")return ke;n.status==="dirty"&&e.dirty(),s.status==="dirty"&&e.dirty(),n.value!=="__proto__"&&(typeof s.value<"u"||a.alwaysSet)&&(o[n.value]=s.value)}return{status:e.value,value:o}}},ke=Object.freeze({status:"aborted"}),bs=t=>({status:"dirty",value:t}),wr=t=>({status:"valid",value:t}),ud=t=>t.status==="aborted",Ad=t=>t.status==="dirty",On=t=>t.status==="valid",tl=t=>typeof Promise<"u"&&t instanceof Promise;var ce;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(ce||(ce={}));var Io=class{constructor(e,r,o,a){this._cachedPath=[],this.parent=e,this.data=r,this._path=o,this._key=a}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Hv=(t,e)=>{if(On(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Lr(t.common.issues);return this._error=r,this._error}}};function Te(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:o,description:a}=t;if(e&&(r||o))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(s,i)=>{let{message:l}=t;return s.code==="invalid_enum_value"?{message:l??i.defaultError}:typeof i.data>"u"?{message:l??o??i.defaultError}:s.code!=="invalid_type"?{message:i.defaultError}:{message:l??r??i.defaultError}},description:a}}var Me=class{get description(){return this._def.description}_getType(e){return _a(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:_a(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new _r,ctx:{common:e.parent.common,data:e.data,parsedType:_a(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(tl(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let o=this.safeParse(e,r);if(o.success)return o.data;throw o.error}safeParse(e,r){let o={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_a(e)},a=this._parseSync({data:e,path:o.path,parent:o});return Hv(o,a)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_a(e)};if(!this["~standard"].async)try{let o=this._parseSync({data:e,path:[],parent:r});return On(o)?{value:o.value}:{issues:r.common.issues}}catch(o){o?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(o=>On(o)?{value:o.value}:{issues:r.common.issues})}async parseAsync(e,r){let o=await this.safeParseAsync(e,r);if(o.success)return o.data;throw o.error}async safeParseAsync(e,r){let o={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_a(e)},a=this._parse({data:e,path:o.path,parent:o}),n=await(tl(a)?a:Promise.resolve(a));return Hv(o,n)}refine(e,r){let o=a=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(a):r;return this._refinement((a,n)=>{let s=e(a),i=()=>n.addIssue({code:L.custom,...o(a)});return typeof Promise<"u"&&s instanceof Promise?s.then(l=>l?!0:(i(),!1)):s?!0:(i(),!1)})}refinement(e,r){return this._refinement((o,a)=>e(o)?!0:(a.addIssue(typeof r=="function"?r(o,a):r),!1))}_refinement(e){return new $o({schema:this,typeName:we.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Eo.create(this,this._def)}nullable(){return ga.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ya.create(this)}promise(){return qn.create(this,this._def)}or(e){return Fs.create([this,e],this._def)}and(e){return Bs.create(this,e,this._def)}transform(e){return new $o({...Te(this._def),schema:this,typeName:we.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Ms({...Te(this._def),innerType:this,defaultValue:r,typeName:we.ZodDefault})}brand(){return new Ju({typeName:we.ZodBranded,type:this,...Te(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Ns({...Te(this._def),innerType:this,catchValue:r,typeName:we.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Xu.create(this,e)}readonly(){return qs.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},SI=/^c[^\s-]{8,}$/i,CI=/^[0-9a-z]+$/,TI=/^[0-9A-HJKMNP-TV-Z]{26}$/i,OI=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,MI=/^[a-z0-9_-]{21}$/i,NI=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,qI=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,PI=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,RI="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Sm,LI=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,GI=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,HI=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,VI=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,UI=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,zI=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Uv="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",WI=new RegExp(`^${Uv}$`);function zv(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function KI(t){return new RegExp(`^${zv(t)}$`)}function Wv(t){let e=`${Uv}T${zv(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function ZI(t,e){return!!((e==="v4"||!e)&&LI.test(t)||(e==="v6"||!e)&&HI.test(t))}function YI(t,e){if(!NI.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let o=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),a=JSON.parse(atob(o));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function JI(t,e){return!!((e==="v4"||!e)&&GI.test(t)||(e==="v6"||!e)&&VI.test(t))}var Mn=class t extends Me{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==re.string){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_type,expected:re.string,received:n.parsedType}),ke}let o=new _r,a;for(let n of this._def.checks)if(n.kind==="min")e.data.lengthn.value&&(a=this._getOrReturnCtx(e,a),X(a,{code:L.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),o.dirty());else if(n.kind==="length"){let s=e.data.length>n.value,i=e.data.lengthe.test(a),{validation:r,code:L.invalid_string,...ce.errToObj(o)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...ce.errToObj(e)})}url(e){return this._addCheck({kind:"url",...ce.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...ce.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...ce.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...ce.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...ce.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...ce.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...ce.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...ce.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...ce.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...ce.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...ce.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...ce.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...ce.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...ce.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...ce.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...ce.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...ce.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...ce.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...ce.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...ce.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...ce.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...ce.errToObj(r)})}nonempty(e){return this.min(1,ce.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Mn({checks:[],typeName:we.ZodString,coerce:t?.coerce??!1,...Te(t)});function XI(t,e){let r=(t.toString().split(".")[1]||"").length,o=(e.toString().split(".")[1]||"").length,a=r>o?r:o,n=Number.parseInt(t.toFixed(a).replace(".","")),s=Number.parseInt(e.toFixed(a).replace(".",""));return n%s/10**a}var ws=class t extends Me{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==re.number){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_type,expected:re.number,received:n.parsedType}),ke}let o,a=new _r;for(let n of this._def.checks)n.kind==="int"?Ge.isInteger(e.data)||(o=this._getOrReturnCtx(e,o),X(o,{code:L.invalid_type,expected:"integer",received:"float",message:n.message}),a.dirty()):n.kind==="min"?(n.inclusive?e.datan.value:e.data>=n.value)&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty()):n.kind==="multipleOf"?XI(e.data,n.value)!==0&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):n.kind==="finite"?Number.isFinite(e.data)||(o=this._getOrReturnCtx(e,o),X(o,{code:L.not_finite,message:n.message}),a.dirty()):Ge.assertNever(n);return{status:a.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,ce.toString(r))}gt(e,r){return this.setLimit("min",e,!1,ce.toString(r))}lte(e,r){return this.setLimit("max",e,!0,ce.toString(r))}lt(e,r){return this.setLimit("max",e,!1,ce.toString(r))}setLimit(e,r,o,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:o,message:ce.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:ce.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ce.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:ce.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:ce.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ce.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ce.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&Ge.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let o of this._def.checks){if(o.kind==="finite"||o.kind==="int"||o.kind==="multipleOf")return!0;o.kind==="min"?(r===null||o.value>r)&&(r=o.value):o.kind==="max"&&(e===null||o.valuenew ws({checks:[],typeName:we.ZodNumber,coerce:t?.coerce||!1,...Te(t)});var ys=class t extends Me{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==re.bigint)return this._getInvalidInput(e);let o,a=new _r;for(let n of this._def.checks)n.kind==="min"?(n.inclusive?e.datan.value:e.data>=n.value)&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty()):n.kind==="multipleOf"?e.data%n.value!==BigInt(0)&&(o=this._getOrReturnCtx(e,o),X(o,{code:L.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):Ge.assertNever(n);return{status:a.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return X(r,{code:L.invalid_type,expected:re.bigint,received:r.parsedType}),ke}gte(e,r){return this.setLimit("min",e,!0,ce.toString(r))}gt(e,r){return this.setLimit("min",e,!1,ce.toString(r))}lte(e,r){return this.setLimit("max",e,!0,ce.toString(r))}lt(e,r){return this.setLimit("max",e,!1,ce.toString(r))}setLimit(e,r,o,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:o,message:ce.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ce.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:ce.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew ys({checks:[],typeName:we.ZodBigInt,coerce:t?.coerce??!1,...Te(t)});var Es=class extends Me{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==re.boolean){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.boolean,received:o.parsedType}),ke}return wr(e.data)}};Es.create=t=>new Es({typeName:we.ZodBoolean,coerce:t?.coerce||!1,...Te(t)});var Is=class t extends Me{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==re.date){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_type,expected:re.date,received:n.parsedType}),ke}if(Number.isNaN(e.data.getTime())){let n=this._getOrReturnCtx(e);return X(n,{code:L.invalid_date}),ke}let o=new _r,a;for(let n of this._def.checks)n.kind==="min"?e.data.getTime()n.value&&(a=this._getOrReturnCtx(e,a),X(a,{code:L.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),o.dirty()):Ge.assertNever(n);return{status:o.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:ce.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:ce.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Is({checks:[],coerce:t?.coerce||!1,typeName:we.ZodDate,...Te(t)});var ol=class extends Me{_parse(e){if(this._getType(e)!==re.symbol){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.symbol,received:o.parsedType}),ke}return wr(e.data)}};ol.create=t=>new ol({typeName:we.ZodSymbol,...Te(t)});var $s=class extends Me{_parse(e){if(this._getType(e)!==re.undefined){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.undefined,received:o.parsedType}),ke}return wr(e.data)}};$s.create=t=>new $s({typeName:we.ZodUndefined,...Te(t)});var Ds=class extends Me{_parse(e){if(this._getType(e)!==re.null){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.null,received:o.parsedType}),ke}return wr(e.data)}};Ds.create=t=>new Ds({typeName:we.ZodNull,...Te(t)});var Nn=class extends Me{constructor(){super(...arguments),this._any=!0}_parse(e){return wr(e.data)}};Nn.create=t=>new Nn({typeName:we.ZodAny,...Te(t)});var Za=class extends Me{constructor(){super(...arguments),this._unknown=!0}_parse(e){return wr(e.data)}};Za.create=t=>new Za({typeName:we.ZodUnknown,...Te(t)});var Jo=class extends Me{_parse(e){let r=this._getOrReturnCtx(e);return X(r,{code:L.invalid_type,expected:re.never,received:r.parsedType}),ke}};Jo.create=t=>new Jo({typeName:we.ZodNever,...Te(t)});var al=class extends Me{_parse(e){if(this._getType(e)!==re.undefined){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.void,received:o.parsedType}),ke}return wr(e.data)}};al.create=t=>new al({typeName:we.ZodVoid,...Te(t)});var Ya=class t extends Me{_parse(e){let{ctx:r,status:o}=this._processInputParams(e),a=this._def;if(r.parsedType!==re.array)return X(r,{code:L.invalid_type,expected:re.array,received:r.parsedType}),ke;if(a.exactLength!==null){let s=r.data.length>a.exactLength.value,i=r.data.lengtha.maxLength.value&&(X(r,{code:L.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),o.dirty()),r.common.async)return Promise.all([...r.data].map((s,i)=>a.type._parseAsync(new Io(r,s,r.path,i)))).then(s=>_r.mergeArray(o,s));let n=[...r.data].map((s,i)=>a.type._parseSync(new Io(r,s,r.path,i)));return _r.mergeArray(o,n)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:ce.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:ce.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:ce.toString(r)}})}nonempty(e){return this.min(1,e)}};Ya.create=(t,e)=>new Ya({type:t,minLength:null,maxLength:null,exactLength:null,typeName:we.ZodArray,...Te(e)});function rl(t){if(t instanceof Gr){let e={};for(let r in t.shape){let o=t.shape[r];e[r]=Eo.create(rl(o))}return new Gr({...t._def,shape:()=>e})}else return t instanceof Ya?new Ya({...t._def,type:rl(t.element)}):t instanceof Eo?Eo.create(rl(t.unwrap())):t instanceof ga?ga.create(rl(t.unwrap())):t instanceof ha?ha.create(t.items.map(e=>rl(e))):t}var Gr=class t extends Me{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Ge.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==re.object){let u=this._getOrReturnCtx(e);return X(u,{code:L.invalid_type,expected:re.object,received:u.parsedType}),ke}let{status:o,ctx:a}=this._processInputParams(e),{shape:n,keys:s}=this._getCached(),i=[];if(!(this._def.catchall instanceof Jo&&this._def.unknownKeys==="strip"))for(let u in a.data)s.includes(u)||i.push(u);let l=[];for(let u of s){let A=n[u],c=a.data[u];l.push({key:{status:"valid",value:u},value:A._parse(new Io(a,c,a.path,u)),alwaysSet:u in a.data})}if(this._def.catchall instanceof Jo){let u=this._def.unknownKeys;if(u==="passthrough")for(let A of i)l.push({key:{status:"valid",value:A},value:{status:"valid",value:a.data[A]}});else if(u==="strict")i.length>0&&(X(a,{code:L.unrecognized_keys,keys:i}),o.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let A of i){let c=a.data[A];l.push({key:{status:"valid",value:A},value:u._parse(new Io(a,c,a.path,A)),alwaysSet:A in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let u=[];for(let A of l){let c=await A.key,p=await A.value;u.push({key:c,value:p,alwaysSet:A.alwaysSet})}return u}).then(u=>_r.mergeObjectSync(o,u)):_r.mergeObjectSync(o,l)}get shape(){return this._def.shape()}strict(e){return ce.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,o)=>{let a=this._def.errorMap?.(r,o).message??o.defaultError;return r.code==="unrecognized_keys"?{message:ce.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:we.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let o of Ge.objectKeys(e))e[o]&&this.shape[o]&&(r[o]=this.shape[o]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let o of Ge.objectKeys(this.shape))e[o]||(r[o]=this.shape[o]);return new t({...this._def,shape:()=>r})}deepPartial(){return rl(this)}partial(e){let r={};for(let o of Ge.objectKeys(this.shape)){let a=this.shape[o];e&&!e[o]?r[o]=a:r[o]=a.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let o of Ge.objectKeys(this.shape))if(e&&!e[o])r[o]=this.shape[o];else{let n=this.shape[o];for(;n instanceof Eo;)n=n._def.innerType;r[o]=n}return new t({...this._def,shape:()=>r})}keyof(){return Kv(Ge.objectKeys(this.shape))}};Gr.create=(t,e)=>new Gr({shape:()=>t,unknownKeys:"strip",catchall:Jo.create(),typeName:we.ZodObject,...Te(e)});Gr.strictCreate=(t,e)=>new Gr({shape:()=>t,unknownKeys:"strict",catchall:Jo.create(),typeName:we.ZodObject,...Te(e)});Gr.lazycreate=(t,e)=>new Gr({shape:t,unknownKeys:"strip",catchall:Jo.create(),typeName:we.ZodObject,...Te(e)});var Fs=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o=this._def.options;function a(n){for(let i of n)if(i.result.status==="valid")return i.result;for(let i of n)if(i.result.status==="dirty")return r.common.issues.push(...i.ctx.common.issues),i.result;let s=n.map(i=>new Lr(i.ctx.common.issues));return X(r,{code:L.invalid_union,unionErrors:s}),ke}if(r.common.async)return Promise.all(o.map(async n=>{let s={...r,common:{...r.common,issues:[]},parent:null};return{result:await n._parseAsync({data:r.data,path:r.path,parent:s}),ctx:s}})).then(a);{let n,s=[];for(let l of o){let u={...r,common:{...r.common,issues:[]},parent:null},A=l._parseSync({data:r.data,path:r.path,parent:u});if(A.status==="valid")return A;A.status==="dirty"&&!n&&(n={result:A,ctx:u}),u.common.issues.length&&s.push(u.common.issues)}if(n)return r.common.issues.push(...n.ctx.common.issues),n.result;let i=s.map(l=>new Lr(l));return X(r,{code:L.invalid_union,unionErrors:i}),ke}}get options(){return this._def.options}};Fs.create=(t,e)=>new Fs({options:t,typeName:we.ZodUnion,...Te(e)});var Ka=t=>t instanceof Ss?Ka(t.schema):t instanceof $o?Ka(t.innerType()):t instanceof Cs?[t.value]:t instanceof Ts?t.options:t instanceof Os?Ge.objectValues(t.enum):t instanceof Ms?Ka(t._def.innerType):t instanceof $s?[void 0]:t instanceof Ds?[null]:t instanceof Eo?[void 0,...Ka(t.unwrap())]:t instanceof ga?[null,...Ka(t.unwrap())]:t instanceof Ju||t instanceof qs?Ka(t.unwrap()):t instanceof Ns?Ka(t._def.innerType):[],fd=class t extends Me{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==re.object)return X(r,{code:L.invalid_type,expected:re.object,received:r.parsedType}),ke;let o=this.discriminator,a=r.data[o],n=this.optionsMap.get(a);return n?r.common.async?n._parseAsync({data:r.data,path:r.path,parent:r}):n._parseSync({data:r.data,path:r.path,parent:r}):(X(r,{code:L.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[o]}),ke)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,o){let a=new Map;for(let n of r){let s=Ka(n.shape[e]);if(!s.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let i of s){if(a.has(i))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(i)}`);a.set(i,n)}}return new t({typeName:we.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:a,...Te(o)})}};function Cm(t,e){let r=_a(t),o=_a(e);if(t===e)return{valid:!0,data:t};if(r===re.object&&o===re.object){let a=Ge.objectKeys(e),n=Ge.objectKeys(t).filter(i=>a.indexOf(i)!==-1),s={...t,...e};for(let i of n){let l=Cm(t[i],e[i]);if(!l.valid)return{valid:!1};s[i]=l.data}return{valid:!0,data:s}}else if(r===re.array&&o===re.array){if(t.length!==e.length)return{valid:!1};let a=[];for(let n=0;n{if(ud(n)||ud(s))return ke;let i=Cm(n.value,s.value);return i.valid?((Ad(n)||Ad(s))&&r.dirty(),{status:r.value,value:i.data}):(X(o,{code:L.invalid_intersection_types}),ke)};return o.common.async?Promise.all([this._def.left._parseAsync({data:o.data,path:o.path,parent:o}),this._def.right._parseAsync({data:o.data,path:o.path,parent:o})]).then(([n,s])=>a(n,s)):a(this._def.left._parseSync({data:o.data,path:o.path,parent:o}),this._def.right._parseSync({data:o.data,path:o.path,parent:o}))}};Bs.create=(t,e,r)=>new Bs({left:t,right:e,typeName:we.ZodIntersection,...Te(r)});var ha=class t extends Me{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.array)return X(o,{code:L.invalid_type,expected:re.array,received:o.parsedType}),ke;if(o.data.lengththis._def.items.length&&(X(o,{code:L.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let n=[...o.data].map((s,i)=>{let l=this._def.items[i]||this._def.rest;return l?l._parse(new Io(o,s,o.path,i)):null}).filter(s=>!!s);return o.common.async?Promise.all(n).then(s=>_r.mergeArray(r,s)):_r.mergeArray(r,n)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ha.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ha({items:t,typeName:we.ZodTuple,rest:null,...Te(e)})};var dd=class t extends Me{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.object)return X(o,{code:L.invalid_type,expected:re.object,received:o.parsedType}),ke;let a=[],n=this._def.keyType,s=this._def.valueType;for(let i in o.data)a.push({key:n._parse(new Io(o,i,o.path,i)),value:s._parse(new Io(o,o.data[i],o.path,i)),alwaysSet:i in o.data});return o.common.async?_r.mergeObjectAsync(r,a):_r.mergeObjectSync(r,a)}get element(){return this._def.valueType}static create(e,r,o){return r instanceof Me?new t({keyType:e,valueType:r,typeName:we.ZodRecord,...Te(o)}):new t({keyType:Mn.create(),valueType:e,typeName:we.ZodRecord,...Te(r)})}},nl=class extends Me{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.map)return X(o,{code:L.invalid_type,expected:re.map,received:o.parsedType}),ke;let a=this._def.keyType,n=this._def.valueType,s=[...o.data.entries()].map(([i,l],u)=>({key:a._parse(new Io(o,i,o.path,[u,"key"])),value:n._parse(new Io(o,l,o.path,[u,"value"]))}));if(o.common.async){let i=new Map;return Promise.resolve().then(async()=>{for(let l of s){let u=await l.key,A=await l.value;if(u.status==="aborted"||A.status==="aborted")return ke;(u.status==="dirty"||A.status==="dirty")&&r.dirty(),i.set(u.value,A.value)}return{status:r.value,value:i}})}else{let i=new Map;for(let l of s){let u=l.key,A=l.value;if(u.status==="aborted"||A.status==="aborted")return ke;(u.status==="dirty"||A.status==="dirty")&&r.dirty(),i.set(u.value,A.value)}return{status:r.value,value:i}}}};nl.create=(t,e,r)=>new nl({valueType:e,keyType:t,typeName:we.ZodMap,...Te(r)});var sl=class t extends Me{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==re.set)return X(o,{code:L.invalid_type,expected:re.set,received:o.parsedType}),ke;let a=this._def;a.minSize!==null&&o.data.sizea.maxSize.value&&(X(o,{code:L.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),r.dirty());let n=this._def.valueType;function s(l){let u=new Set;for(let A of l){if(A.status==="aborted")return ke;A.status==="dirty"&&r.dirty(),u.add(A.value)}return{status:r.value,value:u}}let i=[...o.data.values()].map((l,u)=>n._parse(new Io(o,l,o.path,u)));return o.common.async?Promise.all(i).then(l=>s(l)):s(i)}min(e,r){return new t({...this._def,minSize:{value:e,message:ce.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:ce.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};sl.create=(t,e)=>new sl({valueType:t,minSize:null,maxSize:null,typeName:we.ZodSet,...Te(e)});var cd=class t extends Me{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==re.function)return X(r,{code:L.invalid_type,expected:re.function,received:r.parsedType}),ke;function o(i,l){return Yu({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,el(),Wa].filter(u=>!!u),issueData:{code:L.invalid_arguments,argumentsError:l}})}function a(i,l){return Yu({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,el(),Wa].filter(u=>!!u),issueData:{code:L.invalid_return_type,returnTypeError:l}})}let n={errorMap:r.common.contextualErrorMap},s=r.data;if(this._def.returns instanceof qn){let i=this;return wr(async function(...l){let u=new Lr([]),A=await i._def.args.parseAsync(l,n).catch(m=>{throw u.addIssue(o(l,m)),u}),c=await Reflect.apply(s,this,A);return await i._def.returns._def.type.parseAsync(c,n).catch(m=>{throw u.addIssue(a(c,m)),u})})}else{let i=this;return wr(function(...l){let u=i._def.args.safeParse(l,n);if(!u.success)throw new Lr([o(l,u.error)]);let A=Reflect.apply(s,this,u.data),c=i._def.returns.safeParse(A,n);if(!c.success)throw new Lr([a(A,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ha.create(e).rest(Za.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,o){return new t({args:e||ha.create([]).rest(Za.create()),returns:r||Za.create(),typeName:we.ZodFunction,...Te(o)})}},Ss=class extends Me{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Ss.create=(t,e)=>new Ss({getter:t,typeName:we.ZodLazy,...Te(e)});var Cs=class extends Me{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return X(r,{received:r.data,code:L.invalid_literal,expected:this._def.value}),ke}return{status:"valid",value:e.data}}get value(){return this._def.value}};Cs.create=(t,e)=>new Cs({value:t,typeName:we.ZodLiteral,...Te(e)});function Kv(t,e){return new Ts({values:t,typeName:we.ZodEnum,...Te(e)})}var Ts=class t extends Me{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),o=this._def.values;return X(r,{expected:Ge.joinValues(o),received:r.parsedType,code:L.invalid_type}),ke}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),o=this._def.values;return X(r,{received:r.data,code:L.invalid_enum_value,options:o}),ke}return wr(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(o=>!e.includes(o)),{...this._def,...r})}};Ts.create=Kv;var Os=class extends Me{_parse(e){let r=Ge.getValidEnumValues(this._def.values),o=this._getOrReturnCtx(e);if(o.parsedType!==re.string&&o.parsedType!==re.number){let a=Ge.objectValues(r);return X(o,{expected:Ge.joinValues(a),received:o.parsedType,code:L.invalid_type}),ke}if(this._cache||(this._cache=new Set(Ge.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let a=Ge.objectValues(r);return X(o,{received:o.data,code:L.invalid_enum_value,options:a}),ke}return wr(e.data)}get enum(){return this._def.values}};Os.create=(t,e)=>new Os({values:t,typeName:we.ZodNativeEnum,...Te(e)});var qn=class extends Me{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==re.promise&&r.common.async===!1)return X(r,{code:L.invalid_type,expected:re.promise,received:r.parsedType}),ke;let o=r.parsedType===re.promise?r.data:Promise.resolve(r.data);return wr(o.then(a=>this._def.type.parseAsync(a,{path:r.path,errorMap:r.common.contextualErrorMap})))}};qn.create=(t,e)=>new qn({type:t,typeName:we.ZodPromise,...Te(e)});var $o=class extends Me{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===we.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:o}=this._processInputParams(e),a=this._def.effect||null,n={addIssue:s=>{X(o,s),s.fatal?r.abort():r.dirty()},get path(){return o.path}};if(n.addIssue=n.addIssue.bind(n),a.type==="preprocess"){let s=a.transform(o.data,n);if(o.common.async)return Promise.resolve(s).then(async i=>{if(r.value==="aborted")return ke;let l=await this._def.schema._parseAsync({data:i,path:o.path,parent:o});return l.status==="aborted"?ke:l.status==="dirty"?bs(l.value):r.value==="dirty"?bs(l.value):l});{if(r.value==="aborted")return ke;let i=this._def.schema._parseSync({data:s,path:o.path,parent:o});return i.status==="aborted"?ke:i.status==="dirty"?bs(i.value):r.value==="dirty"?bs(i.value):i}}if(a.type==="refinement"){let s=i=>{let l=a.refinement(i,n);if(o.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return i};if(o.common.async===!1){let i=this._def.schema._parseSync({data:o.data,path:o.path,parent:o});return i.status==="aborted"?ke:(i.status==="dirty"&&r.dirty(),s(i.value),{status:r.value,value:i.value})}else return this._def.schema._parseAsync({data:o.data,path:o.path,parent:o}).then(i=>i.status==="aborted"?ke:(i.status==="dirty"&&r.dirty(),s(i.value).then(()=>({status:r.value,value:i.value}))))}if(a.type==="transform")if(o.common.async===!1){let s=this._def.schema._parseSync({data:o.data,path:o.path,parent:o});if(!On(s))return ke;let i=a.transform(s.value,n);if(i instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:i}}else return this._def.schema._parseAsync({data:o.data,path:o.path,parent:o}).then(s=>On(s)?Promise.resolve(a.transform(s.value,n)).then(i=>({status:r.value,value:i})):ke);Ge.assertNever(a)}};$o.create=(t,e,r)=>new $o({schema:t,typeName:we.ZodEffects,effect:e,...Te(r)});$o.createWithPreprocess=(t,e,r)=>new $o({schema:e,effect:{type:"preprocess",transform:t},typeName:we.ZodEffects,...Te(r)});var Eo=class extends Me{_parse(e){return this._getType(e)===re.undefined?wr(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Eo.create=(t,e)=>new Eo({innerType:t,typeName:we.ZodOptional,...Te(e)});var ga=class extends Me{_parse(e){return this._getType(e)===re.null?wr(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ga.create=(t,e)=>new ga({innerType:t,typeName:we.ZodNullable,...Te(e)});var Ms=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o=r.data;return r.parsedType===re.undefined&&(o=this._def.defaultValue()),this._def.innerType._parse({data:o,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Ms.create=(t,e)=>new Ms({innerType:t,typeName:we.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Te(e)});var Ns=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o={...r,common:{...r.common,issues:[]}},a=this._def.innerType._parse({data:o.data,path:o.path,parent:{...o}});return tl(a)?a.then(n=>({status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Lr(o.common.issues)},input:o.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Lr(o.common.issues)},input:o.data})}}removeCatch(){return this._def.innerType}};Ns.create=(t,e)=>new Ns({innerType:t,typeName:we.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Te(e)});var il=class extends Me{_parse(e){if(this._getType(e)!==re.nan){let o=this._getOrReturnCtx(e);return X(o,{code:L.invalid_type,expected:re.nan,received:o.parsedType}),ke}return{status:"valid",value:e.data}}};il.create=t=>new il({typeName:we.ZodNaN,...Te(t)});var QI=Symbol("zod_brand"),Ju=class extends Me{_parse(e){let{ctx:r}=this._processInputParams(e),o=r.data;return this._def.type._parse({data:o,path:r.path,parent:r})}unwrap(){return this._def.type}},Xu=class t extends Me{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.common.async)return(async()=>{let n=await this._def.in._parseAsync({data:o.data,path:o.path,parent:o});return n.status==="aborted"?ke:n.status==="dirty"?(r.dirty(),bs(n.value)):this._def.out._parseAsync({data:n.value,path:o.path,parent:o})})();{let a=this._def.in._parseSync({data:o.data,path:o.path,parent:o});return a.status==="aborted"?ke:a.status==="dirty"?(r.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:o.path,parent:o})}}static create(e,r){return new t({in:e,out:r,typeName:we.ZodPipeline})}},qs=class extends Me{_parse(e){let r=this._def.innerType._parse(e),o=a=>(On(a)&&(a.value=Object.freeze(a.value)),a);return tl(r)?r.then(a=>o(a)):o(r)}unwrap(){return this._def.innerType}};qs.create=(t,e)=>new qs({innerType:t,typeName:we.ZodReadonly,...Te(e)});function Vv(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Zv(t,e={},r){return t?Nn.create().superRefine((o,a)=>{let n=t(o);if(n instanceof Promise)return n.then(s=>{if(!s){let i=Vv(e,o),l=i.fatal??r??!0;a.addIssue({code:"custom",...i,fatal:l})}});if(!n){let s=Vv(e,o),i=s.fatal??r??!0;a.addIssue({code:"custom",...s,fatal:i})}}):Nn.create()}var e0={object:Gr.lazycreate},we;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(we||(we={}));var t0=(t,e={message:`Input not instance of ${t.name}`})=>Zv(r=>r instanceof t,e),Yv=Mn.create,Jv=ws.create,r0=il.create,o0=ys.create,Xv=Es.create,a0=Is.create,n0=ol.create,s0=$s.create,i0=Ds.create,l0=Nn.create,u0=Za.create,A0=Jo.create,f0=al.create,d0=Ya.create,c0=Gr.create,p0=Gr.strictCreate,m0=Fs.create,_0=fd.create,h0=Bs.create,g0=ha.create,j0=dd.create,x0=nl.create,v0=sl.create,k0=cd.create,b0=Ss.create,w0=Cs.create,y0=Ts.create,E0=Os.create,I0=qn.create,$0=$o.create,D0=Eo.create,F0=ga.create,B0=$o.createWithPreprocess,S0=Xu.create,C0=()=>Yv().optional(),T0=()=>Jv().optional(),O0=()=>Xv().optional(),M0={string:t=>Mn.create({...t,coerce:!0}),number:t=>ws.create({...t,coerce:!0}),boolean:t=>Es.create({...t,coerce:!0}),bigint:t=>ys.create({...t,coerce:!0}),date:t=>Is.create({...t,coerce:!0})};var N0=ke;function q0(t,e){return`Expected a string (text), but got: \`${e}\` (${typeof e}). _Try wrapping the value in quotes._ **Example**: \`${t}: "${e}"\``}function Qv(t,e,r){return`Expected one of the following options: ${jA(e,"`",", or ")}, but got: \`${r}\`. **Example**: \`${t}: ${e[0]}\``}function e6(t,e,r){return`This field is now expected to be a YAML list (array), but got: \`${r}\` (${typeof r}). _Try wrapping it in square brackets._ -**Example**: \`${t}: [${e.slice(0,2).join(", ")}]\`, or possibly: \`${t}: [${r}]\``}function t6(t,e){return Qe.string().superRefine((r,o)=>t.includes(r)?!0:(o.addIssue({options:t,received:r,code:"invalid_enum_value",message:Qv(e??o.path.join("."),t,r)}),!1))}function P$(t,e,r){return Qe.array(t6(e),{invalid_type_error:e6(t,e,r)})}var Ht={error:{not_string:q$,invalid_enum:Qv,not_array:e6},schema:{dynamic_enum:t6,dynamic_enum_array:P$}};var Qu=t=>`[${t.chain.map(e=>Lv(e,{trim_lone_param:!0})).join(", ")}] ${t.close_reversed?"<-":"->"} ${t.close_field}`,R$=/\[(.+)\]\s*(<-|->)\s*(.+)/,Tm=t=>t.name||Qu(t),r6=t=>{let e=R$.exec(t);return e?Xt({close_field:e[3],close_reversed:e[2]==="<-",chain:gA(e[1]).map(r=>({field:r}))}):ht(null)},o6=t=>{let e=t.fields.map(r=>r.label);return Qe.object({chain:Qe.array(Qe.object({field:Ht.schema.dynamic_enum(e)})),close_field:Ht.schema.dynamic_enum(e,"close_field"),close_reversed:Qe.boolean()})};function Ps(t,e){var r=J(),o=K(r);{var a=s=>{td(s,{get size(){return 20}})},n=s=>{rd(s,{get size(){return 20}})};se(o,s=>{e.open?s(a):s(n,!1)})}v(t,r)}var pd=require("obsidian");var a6=Yf(null),xt={...a6,refresh:t=>a6.set(t.workspace.getActiveFile())};var L$=q("
");function eA(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"cls",3,""),s=U(e,"source_path",3,void 0),i=We(void 0),l,u=de(a);function A(p){return Yi(this,void 0,void 0,function*(){var m;if(d(i))return H.debug("rendering markdown"),d(i).empty(),l&&(l.unload(),l=void 0),l=new pd.Component,l.load(),pd.MarkdownRenderer.render(e.plugin.app,p,d(i),(m=s()!==null&&s()!==void 0?s():d(u)===null||d(u)===void 0?void 0:d(u).path)!==null&&m!==void 0?m:"",l)})}jt(()=>{A(e.markdown)}),zx(()=>{l&&(l.unload(),l=void 0)});var c=L$();bm(c,p=>te(i,p),()=>d(i)),oe(()=>ut(c,1,`markdown-rendered ${n()??""}`)),v(t,c),ne(),o()}function Rs(t,e){ae(e,!0);let r=U(e,"source_path",3,void 0);{let o=de(()=>O_(e.code,e.type));eA(t,{get plugin(){return e.plugin},get source_path(){return r()},get markdown(){return d(o)}})}ne()}var G$=(t,e)=>te(e,""),H$=(t,e,r)=>e.scroll_to(d(r).length-1),V$=q(''),U$=q('Unsaved changes'),z$=(t,e,r)=>e.reorder_transitive(r(),r()-1),W$=(t,e,r)=>e.reorder_transitive(r(),r()+1),K$=(t,e,r)=>e.copy_transitive(r()),Z$=(t,e,r)=>e.remove_transitive(r()),Y$=q('
'),J$=q('No fields in the chain.'),X$=(t,e,r)=>e.set_close_reversed(r(),t.currentTarget.checked),Q$=(t,e,r)=>e.rename_transitive(r(),""),e0=q('
Edge Chain:
Closing Field:
Close Reversed:
Rounds:
Name (optional):
'),t0=q('
'),r0=q(`

Transitive implied relations represent chains of your +**Example**: \`${t}: [${e.slice(0,2).join(", ")}]\`, or possibly: \`${t}: [${r}]\``}function t6(t,e){return Qe.string().superRefine((r,o)=>t.includes(r)?!0:(o.addIssue({options:t,received:r,code:"invalid_enum_value",message:Qv(e??o.path.join("."),t,r)}),!1))}function P0(t,e,r){return Qe.array(t6(e),{invalid_type_error:e6(t,e,r)})}var Ht={error:{not_string:q0,invalid_enum:Qv,not_array:e6},schema:{dynamic_enum:t6,dynamic_enum_array:P0}};var Qu=t=>`[${t.chain.map(e=>Lv(e,{trim_lone_param:!0})).join(", ")}] ${t.close_reversed?"<-":"->"} ${t.close_field}`,R0=/\[(.+)\]\s*(<-|->)\s*(.+)/,Tm=t=>t.name||Qu(t),r6=t=>{let e=R0.exec(t);return e?Xt({close_field:e[3],close_reversed:e[2]==="<-",chain:gA(e[1]).map(r=>({field:r}))}):ht(null)},o6=t=>{let e=t.fields.map(r=>r.label);return Qe.object({chain:Qe.array(Qe.object({field:Ht.schema.dynamic_enum(e)})),close_field:Ht.schema.dynamic_enum(e,"close_field"),close_reversed:Qe.boolean()})};function Ps(t,e){var r=J(),o=K(r);{var a=s=>{td(s,{get size(){return 20}})},n=s=>{rd(s,{get size(){return 20}})};se(o,s=>{e.open?s(a):s(n,!1)})}v(t,r)}var pd=require("obsidian");var a6=Yf(null),xt={...a6,refresh:t=>a6.set(t.workspace.getActiveFile())};var L0=q("

");function eA(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"cls",3,""),s=U(e,"source_path",3,void 0),i=We(void 0),l,u=de(a);function A(p){return Yi(this,void 0,void 0,function*(){var m;if(d(i))return H.debug("rendering markdown"),d(i).empty(),l&&(l.unload(),l=void 0),l=new pd.Component,l.load(),pd.MarkdownRenderer.render(e.plugin.app,p,d(i),(m=s()!==null&&s()!==void 0?s():d(u)===null||d(u)===void 0?void 0:d(u).path)!==null&&m!==void 0?m:"",l)})}jt(()=>{A(e.markdown)}),zx(()=>{l&&(l.unload(),l=void 0)});var c=L0();bm(c,p=>te(i,p),()=>d(i)),oe(()=>ut(c,1,`markdown-rendered ${n()??""}`)),v(t,c),ne(),o()}function Rs(t,e){ae(e,!0);let r=U(e,"source_path",3,void 0);{let o=de(()=>O_(e.code,e.type));eA(t,{get plugin(){return e.plugin},get source_path(){return r()},get markdown(){return d(o)}})}ne()}var G0=(t,e)=>te(e,""),H0=(t,e,r)=>e.scroll_to(d(r).length-1),V0=q(''),U0=q('Unsaved changes'),z0=(t,e,r)=>e.reorder_transitive(r(),r()-1),W0=(t,e,r)=>e.reorder_transitive(r(),r()+1),K0=(t,e,r)=>e.copy_transitive(r()),Z0=(t,e,r)=>e.remove_transitive(r()),Y0=q('
'),J0=q('No fields in the chain.'),X0=(t,e,r)=>e.set_close_reversed(r(),t.currentTarget.checked),Q0=(t,e,r)=>e.rename_transitive(r(),""),e$=q('
Edge Chain:
Closing Field:
Close Reversed:
Rounds:
Name (optional):
'),t$=q('
'),r$=q(`

Transitive implied relations represent chains of your Breadcrumbs fields that collapse into a single field. For example, if you have the fields: "spouse", "sibling", and "sibling-in-law", you can - add the transitive chain . In other words, your spouse's sibling is your sibling-in-law.

Bulk Add Rules (Advanced)

Quickly add multiple rules using the shorthand syntax: [field-one, field-two] -> close-field. Each rule should be on a new line.

`),o0={hash:"svelte-91sdw2",code:`.border.svelte-91sdw2 {border-radius:var(--radius-m);border:var(--modal-border-width) solid - var(--background-modifier-border);}`};function Om(t,e){ae(e,!0),Ua(t,o0);let r=U(e,"plugin",7),o=We(kt(r().settings)),a=We(""),n=We(kt([...d(o).implied_relations.transitive])),s=kt(d(n).map(()=>!1)),i={save:()=>Yi(void 0,void 0,void 0,function*(){for(let{close_field:G}of d(n))if(!G)return new Ja.Notice("Closing field cannot be empty.");d(o).implied_relations.transitive=d(n),r().settings=pr(d(o)),yield Promise.all([r().saveSettings(),r().rebuildGraph()]),te(o,r().settings,!0)}),make_id:G=>`BC-transitive-rule-${G}`,scroll_to:G=>{var Y;return(Y=document.getElementById(i.make_id(G)))===null||Y===void 0?void 0:Y.scrollIntoView({behavior:"smooth"})},add_transitive:()=>{let G=d(n).push({name:"",chain:[],rounds:10,close_reversed:!1,close_field:d(o).edge_fields[0].label});s[G-1]=!0,setTimeout(()=>i.scroll_to(G-1),0),te(n,d(n),!0),d(o).is_dirty=!0},add_bulk:()=>{let G=document.getElementById("BC-transitive-bulk-str");if(!G)return new Ja.Notice("Could not find textarea.");let Y=G.value.trim();if(!Y)return new Ja.Notice("No rules to parse.");let De=gA(Y,` -`).filter(Boolean),T=De.map(r6).filter(_e=>_e.ok);if(T.length!==De.length)return new Ja.Notice("Some rules could not be parsed. Ensure you're using the correct syntax of `[field-one, field-two] -> close-field`, with each rule of a new line.");let M=T.map(_e=>o6({fields:r().settings.edge_fields}).safeParse(_e.data)),Z=M.filter(_e=>!_e.success);if(Z.length)return H.error("Bulk-add transitive rule errors >",Z.map(_e=>{var Ne;return _e.success?null:(Ne=_e.error)===null||Ne===void 0?void 0:Ne.issues})),new Ja.Notice("Some rules could not be parsed. Check the logs for more information.");M.forEach(_e=>{_e.success&&d(n).push(Object.assign(Object.assign({},_e.data),{name:"",rounds:10}))}),new Ja.Notice(`Bulk added ${M.length} rules \u2705`),te(n,d(n),!0),d(o).is_dirty=!0},copy_transitive:G=>{let Y=d(n).push(Object.assign(Object.assign({},d(n)[G]),{name:`${Tm(d(n)[G])} (copy)`}));s[Y-1]=!0,setTimeout(()=>i.scroll_to(Y-1),0),te(n,d(n),!0),d(o).is_dirty=!0},remove_transitive:G=>{te(n,d(n).filter((Y,De)=>De!==G),!0),d(o).is_dirty=!0},rename_transitive:(G,Y)=>{d(n)[G].name!==Y&&(d(n)[G].name=Y,te(n,d(n),!0),d(o).is_dirty=!0)},reorder_transitive:(G,Y)=>{let De=d(n)[G];d(n)[G]=d(n)[Y],d(n)[Y]=De,te(n,d(n),!0),d(o).is_dirty=!0},add_chain_field:(G,Y)=>{Y&&(d(n)[G].chain.push({field:Y.label}),te(n,d(n),!0),d(o).is_dirty=!0)},remove_chain_field:(G,Y)=>{d(n)[G].chain=d(n)[G].chain.filter((De,T)=>T!==Y),te(n,d(n),!0),d(o).is_dirty=!0},set_close_field:(G,Y)=>{Y&&(d(n)[G].close_field=Y.label,te(n,d(n),!0),d(o).is_dirty=!0)},set_rounds:(G,Y)=>{isNaN(Y)||Y<0||(d(n)[G].rounds=Y,te(n,d(n),!0),d(o).is_dirty=!0)},set_close_reversed:(G,Y)=>{d(n)[G].close_reversed=Y,te(n,d(n),!0),d(o).is_dirty=!0}},l={chain_field:(G,Y)=>De=>{let T=new Ja.Menu;T.addItem(M=>M.setTitle("Remove Field").setIcon("x").onClick(()=>i.remove_chain_field(G,Y))),T.showAtMouseEvent(De)}};var u=r0(),A=w(u),c=S(w(A),3),p=w(c,!0);b(c),sa(),b(A);var m=S(A,2),h=w(m);h.__click=function(...G){i.save?.apply(this,G)};var y=w(h);vs(y,{get size(){return 20}}),sa(),b(h);var I=S(h,2),F=w(I);io(F);var R=S(F,2);R.__click=[G$,a],b(I);var B=S(I,2);{var j=G=>{var Y=V$();Y.__click=[H$,i,n];var De=w(Y);Cn(De,{get size(){return 20}}),b(Y),v(G,Y)};se(B,G=>{d(n).length>3&&G(j)})}var E=S(B,2);{var D=G=>{var Y=U$();v(G,Y)};se(E,G=>{d(o).is_dirty&&G(D)})}b(m);var k=S(m,2),C=w(k);ot(C,17,()=>d(n).map((G,Y)=>({rule:G,rule_i:Y,name:Tm(G)})).filter(G=>G.name.includes(d(a).toLowerCase())),({rule:G,rule_i:Y,name:De})=>De+Y,(G,Y)=>{let De=()=>d(Y).rule,T=()=>d(Y).rule_i,M=()=>d(Y).name;var Z=t0(),_e=w(Z),Ne=w(_e),at=w(Ne);Ps(at,{get open(){return s[T()]}});var uo=S(at,2),Do=w(uo,!0);b(uo),b(Ne);var Jt=S(Ne,2),Vr=w(Jt);Vr.__click=[z$,i,T];var va=w(Vr);ed(va,{get size(){return 20}}),b(Vr);var bt=S(Vr,2);bt.__click=[W$,i,T];var Vt=w(bt);Cn(Vt,{get size(){return 20}}),b(bt);var Dt=S(bt,2);Dt.__click=[K$,i,T];var Ao=w(Dt);xs(Ao,{get size(){return 20}}),b(Dt);var tn=S(Dt,2);tn.__click=[Z$,i,T],b(Jt),b(_e);var ir=S(_e,2);so(ir,De,_t=>{var Mt=e0(),Er=w(Mt),Fo=S(w(Er),2);{var Xo=wt=>{var fo=Y$();ot(fo,23,()=>De().chain,(Zs,Ys)=>Ys+(Zs.field??""),(Zs,Ys,Td)=>{{let _=de(()=>d(Ys).field??""),x=de(()=>l.chain_field(T(),d(Td)));Ji(Zs,{get tag(){return d(_)},title:"Right click for more actions.",get oncontextmenu(){return d(x)}})}}),b(fo),v(wt,fo)},Qo=wt=>{var fo=J$();v(wt,fo)};se(Fo,wt=>{De().chain.length?wt(Xo):wt(Qo,!1)})}var rn=S(Fo,2);Xi(rn,{get fields(){return d(o).edge_fields},onselect:wt=>i.add_chain_field(T(),wt)}),b(Er);var ka=S(Er,2),Al=S(w(ka),2);{let wt=de(()=>d(o).edge_fields.find(fo=>fo.label===De().close_field));Xi(Al,{undefine_on_change:!1,get fields(){return d(o).edge_fields},get field(){return d(wt)},onselect:fo=>i.set_close_field(T(),fo)})}b(ka);var ba=S(ka,2),fl=S(w(ba),2);io(fl),fl.__click=[X$,i,T],b(ba);var dl=S(ba,2),wa=S(w(dl),2);io(wa),Xe(wa,"min",0),Xe(wa,"max",100),b(dl);var cl=S(dl,2),uA=S(w(cl),2),Ks=w(uA);io(Ks);var Bd=S(Ks,2);Bd.__click=[Q$,i,T],b(uA),b(cl);var Sd=S(cl,2);{var Cd=wt=>{Rs(wt,{get plugin(){return r()},type:"mermaid",get code(){return yo.from_transitive_rule(De()).mermaid}})};se(Sd,wt=>{s[T()]&&wt(Cd)})}b(Mt),oe(()=>{gs(wa,De().rounds),gs(Ks,De().name)}),km(fl,()=>De().close_reversed,wt=>De().close_reversed=wt),Va("blur",wa,wt=>i.set_rounds(T(),+wt.currentTarget.value)),Va("blur",Ks,wt=>i.rename_transitive(T(),wt.currentTarget.value)),v(_t,Mt)}),b(Z),oe(_t=>{Xe(Z,"id",_t),Fe(Do,M()),Vr.disabled=T()===0,bt.disabled=T()===d(n).length-1},[()=>i.make_id(T())]),js("open","toggle",Z,_t=>s[T()]=_t,()=>s[T()]),v(G,Z)});var P=S(C,2);P.__click=function(...G){i.add_transitive?.apply(this,G)};var le=w(P);Tn(le,{get size(){return 20}}),sa(),b(P);var xe=S(P,2),fe=S(w(xe),2),He=S(w(fe),4);He.__click=function(...G){i.add_bulk?.apply(this,G)},b(fe),b(xe),b(k),b(u),oe(G=>{Fe(p,G),R.disabled=d(a)===""},[()=>Qu({close_reversed:!1,close_field:"sibling-in-law",chain:[{field:"spouse"},{field:"sibling"}]})]),Sn(F,()=>d(a),G=>te(a,G)),v(t,u),ne()}Ke(["click"]);var n6=require("obsidian"),Hr=(t,e,r,o)=>{let a=r.get(),n=new n6.Setting(e).setName("Note display options").setDesc("How to display note links");return n.controlEl.addClasses(["flex","flex-wrap","gap-2"]),n.addToggle(s=>{s.toggleEl.before("Folder"),s.setTooltip("Folder path").setValue(a.folder).onChange(async i=>{a.folder=i,r.set(a),o?.save_and_refresh!==!1&&(await Promise.all([t.saveSettings()]),t.refreshViews())})}),n.addToggle(s=>{s.toggleEl.before("Extension"),s.setTooltip("File extension").setValue(a.ext).onChange(async i=>{a.ext=i,r.set(a),o?.save_and_refresh!==!1&&(await Promise.all([t.saveSettings()]),t.refreshViews())})}),n.addToggle(s=>{s.toggleEl.before("Alias"),s.setTooltip("Alias (first alias, if available)").setValue(a.alias).onChange(async i=>{a.alias=i,r.set(a),o?.save_and_refresh!==!1&&(await Promise.all([t.saveSettings()]),t.refreshViews())})}),n};var s6=(t,e)=>{Hr(t,e,{get:()=>t.settings.views.codeblocks.show_node_options,set:r=>t.settings.views.codeblocks.show_node_options=r})};var l6=require("obsidian");var i6=require("obsidian");function pe(t,e){let r=new i6.Setting(t);if(e.name&&r.setName(e.name),e.desc&&r.setDesc(e.desc),e.toggle)r.addToggle(o=>{o.setValue(e.toggle.value).onChange(e.toggle.cb)});else if(e.input)r.addText(o=>{e.input?.placeholder&&o.setPlaceholder(e.input.placeholder),o.setValue(e.input.value),o.inputEl.onblur=()=>{e.input.cb(o.getValue())}});else if(e.select)r.addDropdown(o=>{let a=Array.isArray(e.select.options)?e.select.options.reduce((n,s)=>(n[s]=s,n),{}):e.select.options;o.addOptions(a).setValue(e.select.value).onChange(e.select.cb)});else if(e.checklist){let o=r.controlEl.createEl("div",{attr:{class:"flex flex-wrap gap-3"}}),a={...e.checklist.options};Object.keys(e.checklist.options).forEach(n=>{let s={type:"checkbox"};e.checklist.options[n]&&(s.checked=!0),o.createEl("label",{text:n,cls:"flex items-center gap-1.5 grow"}).createEl("input",{attr:s},i=>{i.classList.add("shrink"),i.onchange=l=>{l.target instanceof HTMLInputElement&&(a[n]=l.target.checked,e.checklist.cb(a))}})})}return r}var u6=(t,e)=>{pe(e,{name:"Enabled",desc:"Look for date notes to use as edge sources",toggle:{value:t.settings.explicit_edge_sources.date_note.enabled,cb:async o=>{t.settings.explicit_edge_sources.date_note.enabled=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Default Field",desc:"Field used to join date notes together. Breadcrumbs takes the current note's date, adds one day, and joins the two notes with this field.",select:{value:t.settings.explicit_edge_sources.date_note.default_field,options:t.settings.edge_fields.map(o=>o.label),cb:async o=>{t.settings.explicit_edge_sources.date_note.default_field=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}});let r=new DocumentFragment;r.createEl("span",{},o=>o.innerHTML='Luxon date format to use'),pe(e,{name:"Date Format",desc:r,input:{value:t.settings.explicit_edge_sources.date_note.date_format,cb:async o=>{o?(t.settings.explicit_edge_sources.date_note.date_format=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])):new l6.Notice("Date format cannot be empty")}}}),pe(e,{name:"Stretch to Existing",desc:"If there is a gap from one day to another, should the next note be the unresolved one in one day or should it 'stretch' to the next resolved (existing) note?",toggle:{value:t.settings.explicit_edge_sources.date_note.stretch_to_existing,cb:async o=>{t.settings.explicit_edge_sources.date_note.stretch_to_existing=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var A6=(t,e)=>{pe(e,{name:"Debug Level",desc:"Set the level of debug logging",select:{options:Nd,value:t.settings.debug.level,cb:async r=>{H.set_level(r),t.settings.debug.level=r,await t.saveSettings()}}})};var f6=require("obsidian");var d6=(t,e)=>{pe(e,{name:"Enabled",desc:"Look for dendron notes to use as edge sources",toggle:{value:t.settings.explicit_edge_sources.dendron_note.enabled,cb:async r=>{t.settings.explicit_edge_sources.dendron_note.enabled=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Delimiter",desc:"Delimiter to use to split the note name",input:{value:t.settings.explicit_edge_sources.dendron_note.delimiter,cb:async r=>{r?(t.settings.explicit_edge_sources.dendron_note.delimiter=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):new f6.Notice("Delimiter cannot be empty")}}}),pe(e,{name:"Default Field",desc:"Field to use if the BC-dendron-note-field is not specified",select:{value:t.settings.explicit_edge_sources.dendron_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.dendron_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Display Trimmed",desc:"Display Dendron note names as the right-most split of the delimiter. e.g. `a.b.c` -> `c`",toggle:{value:t.settings.explicit_edge_sources.dendron_note.display_trimmed,cb:async r=>{t.settings.explicit_edge_sources.dendron_note.display_trimmed=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var Mm=require("obsidian");var c6=(t,e)=>{let{settings:r}=t;pe(e,{name:"Enabled",desc:"Whether to enable the edge field suggestor",toggle:{value:r.suggestors.edge_field.enabled,cb:async o=>{r.suggestors.edge_field.enabled=o,o&&new Mm.Notice("Please restart Obsidian for the changes to take effect"),await t.saveSettings()}}}),pe(e,{name:"Trigger String",desc:"The string that triggers the suggestor (when entered at the start of a line)",input:{value:r.suggestors.edge_field.trigger,cb:async o=>{if(!o){new Mm.Notice("Trigger string cannot be empty");return}r.suggestors.edge_field.trigger=o,await t.saveSettings()}}})};var p6=require("obsidian"),m6=({cb:t,value:e,edge_field_groups:r})=>{let o=new p6.Menu,a=r.map(s=>e.includes(s.label)),n=a.every(s=>s);return o.addItem(s=>s.setTitle(n?"None":"All").onClick(()=>{e=n?[]:r.map(i=>i.label),t(e)})),o.addSeparator(),r.forEach((s,i)=>{let l=a[i];o.addItem(u=>u.setTitle(s.label).setChecked(l).onClick(()=>{l?e=e.filter(A=>A!==s.label):e.push(s.label),t(e)}))}),o};var a0=(t,e,r)=>{m6({edge_field_groups:e.edge_field_groups,value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},n0=q('');function Ls(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"field_group_labels",15);var a=n0();a.__click=[a0,e,o];var n=w(a);Gu(n,{get size(){return 20}}),b(a),oe(()=>ut(a,1,mr(r()))),v(t,a),ne()}Ke(["click"]);var s0=q('
');function Gs(t,e){"use strict";var r=s0(),o=w(r),a=w(o),n=w(a,!0);b(a);var s=S(a,2),i=w(s,!0);b(s),b(o);var l=S(o,2),u=w(l);Am(u,()=>e.children??or),b(l),b(r),oe(()=>{Fe(n,e.name),Fe(i,e.description)}),v(t,r)}function yr(t,e){ae(e,!0);let r=U(e,"name",3,"Field Groups"),o=U(e,"description",3,"Select the field groups to use for this traversal."),a=U(e,"field_group_labels",15),n=U(e,"select_cb",3,()=>{});jt(()=>{a()&&n()(a())}),Gs(t,{get name(){return r()},get description(){return o()},children:(s,i)=>{Ls(s,{get edge_field_groups(){return e.edge_field_groups},get field_group_labels(){return a()},set field_group_labels(l){a(l)}})},$$slots:{default:!0}}),ne()}var _6=(t,e)=>{let{settings:r}=t;pe(e,{name:"Destination",desc:"Where to write the frozen edges to",select:{options:["frontmatter","dataview-inline"],value:r.commands.freeze_implied_edges.default_options.destination,cb:async o=>{r.commands.freeze_implied_edges.default_options.destination=o,await t.saveSettings()}}}),Be(yr,{target:e,props:{name:"Included Field Groups",description:"Field groups to include when freezing edges.",edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.commands.freeze_implied_edges.default_options.included_fields,select_cb:async o=>{t.settings.commands.freeze_implied_edges.default_options.included_fields=o,await t.saveSettings()}}}),pe(e,{name:"Use Alias",desc:"Freeze implied edges using the first alias of the target node.",toggle:{value:r.commands.freeze_implied_edges.default_options.use_alias,cb:async o=>{r.commands.freeze_implied_edges.default_options.use_alias=o,await t.saveSettings()}}})};var Nm=require("obsidian");var h6=(t,e)=>{pe(e,{name:"Enable trail view",desc:"Show the trail view at the top of the page",toggle:{value:t.settings.views.page.trail.enabled,cb:async r=>{t.settings.views.page.trail.enabled=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Format",desc:"Format of the trail view",select:{value:t.settings.views.page.trail.format,options:["grid","path"],cb:async r=>{t.settings.views.page.trail.format=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Path Selection",desc:"How to select the path(s) to display in the trail view",select:{value:t.settings.views.page.trail.selection,options:["all","shortest","longest"],cb:async r=>{t.settings.views.page.trail.selection=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Default depth",desc:"Default depth of the trail view",input:{value:t.settings.views.page.trail.default_depth.toString(),cb:async r=>{let o=parseInt(r);if(isNaN(o)){new Nm.Notice("Depth must be a number");return}else if(o<0){new Nm.Notice("Depth must be a non-negative number");return}t.settings.views.page.trail.default_depth=o,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.page.trail.field_group_labels,select_cb:async r=>{t.settings.views.page.trail.field_group_labels=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Merge Fields",desc:"Merge fields in the traversal, instead of keeping their paths separate",toggle:{value:t.settings.views.page.trail.merge_fields,cb:async r=>{t.settings.views.page.trail.merge_fields=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Show controls",desc:"Show controls to change the depth/format/path-selection of the trail view",toggle:{value:t.settings.views.page.trail.show_controls,cb:async r=>{t.settings.views.page.trail.show_controls=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"No path message",desc:"Message to display when there is no path to display. Leave blank to hide the trail view when there is no path.",input:{value:t.settings.views.page.trail.no_path_message,cb:async r=>{t.settings.views.page.trail.no_path_message=r,t.refreshViews(),await t.saveSettings()}}}),Hr(t,e,{get:()=>t.settings.views.page.trail.show_node_options,set:r=>t.settings.views.page.trail.show_node_options=r})};var g6=require("obsidian");var j6=(t,e)=>{pe(e,{name:"Enabled",desc:"Look for Johnny.Decimal notes to use as edge sources",toggle:{value:t.settings.explicit_edge_sources.johnny_decimal_note.enabled,cb:async r=>{t.settings.explicit_edge_sources.johnny_decimal_note.enabled=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Delimiter",desc:"Delimiter to use to split the note name",input:{value:t.settings.explicit_edge_sources.johnny_decimal_note.delimiter,cb:async r=>{r?(t.settings.explicit_edge_sources.johnny_decimal_note.delimiter=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):new g6.Notice("Delimiter cannot be empty")}}}),pe(e,{name:"Default Field",desc:"Field to use to point to next note in the Johnny.Decimal system",select:{value:t.settings.explicit_edge_sources.johnny_decimal_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.johnny_decimal_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var x6=require("obsidian");var i0=[1,-1],v6=({cb:t,value:e,exclude_fields:r})=>{let o=new x6.Menu;return i0.forEach(a=>{o.addItem(n=>n.setTitle(`Order: ${a===1?"asc":"desc"}`).setChecked(e.order===a).onClick(()=>{e.order=a,t(e)}))}),o.addSeparator(),kA.filter(a=>!r?.includes(a)).forEach(a=>{o.addItem(n=>n.setTitle("Field: "+a).setChecked(e.field===a).onClick(()=>{e.field=a,t(e)}))}),o};var l0=(t,e,r)=>{v6({exclude_fields:e(),value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},u0=q('');function Hs(t,e){ae(e,!0);let r=U(e,"edge_sort_id",15),o=U(e,"exclude_fields",19,()=>[]),a=U(e,"cls",3,"");var n=u0();n.__click=[l0,o,r];var s=w(n);{var i=u=>{Qf(u,{get size(){return 20}})},l=u=>{Xf(u,{get size(){return 20}})};se(s,u=>{r().order===1?u(i):u(l,!1)})}b(n),oe(()=>ut(n,1,`flex gap-1 ${a()??""}`)),v(t,n),ne()}Ke(["click"]);function Xa(t,e){ae(e,!0);let r=U(e,"edge_sort_id",15),o=U(e,"select_cb",3,()=>{});jt(()=>{r()&&o()(r())}),Gs(t,{name:"Edge Sort",description:"Select the sorting method for the edges in the graph.",children:(a,n)=>{Hs(a,{get edge_sort_id(){return r()},set edge_sort_id(s){r(s)}})},$$slots:{default:!0}}),ne()}var k6=require("obsidian");var b6=({cb:t,value:e,exclude_attributes:r})=>{let o=new k6.Menu,a=xl.filter(i=>!r?.includes(i)),n=a.length===e.length;o.addItem(i=>i.setTitle(n?"None":"All").onClick(()=>{t(n?[]:a)})),o.addSeparator();let s=i=>{let l=e.includes(i);o.addItem(u=>u.setTitle(i).setChecked(l).onClick(()=>{t(l?e.filter(A=>A!==i):[...e,i])}))};return["field","explicit"].filter(i=>!r?.includes(i)).forEach(s),o.addSeparator(),["source"].filter(i=>!r?.includes(i)).forEach(s),o.addSeparator(),["implied_kind","round"].filter(i=>!r?.includes(i)).forEach(s),o};var A0=(t,e,r)=>{b6({exclude_attributes:e(),value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},f0=q('');function Vs(t,e){ae(e,!0);let r=U(e,"show_attributes",15),o=U(e,"exclude_attributes",19,()=>[]),a=U(e,"cls",3,"");!(o()===null||o()===void 0)&&o().length&&r(r().filter(i=>!(!(o()===null||o()===void 0)&&o().includes(i))));var n=f0();n.__click=[A0,o,r];var s=w(n);nd(s,{get size(){return 20}}),b(n),oe(()=>ut(n,1,mr(a()))),v(t,n),ne()}Ke(["click"]);function Qa(t,e){ae(e,!0);let r=U(e,"show_attributes",15),o=U(e,"exclude_attributes",19,()=>[]),a=U(e,"select_cb",3,()=>{});jt(()=>{r()&&a()(r())}),Gs(t,{name:"Show Attributes",description:"Select the edge attributes to show.",children:(n,s)=>{Vs(n,{get exclude_attributes(){return o()},get show_attributes(){return r()},set show_attributes(i){r(i)}})},$$slots:{default:!0}}),ne()}var md=["none","wiki","markdown"];var Cr=(t,e)=>ma(t.filter(r=>e.includes(r.label)).flatMap(r=>r.fields));var w6=(t,e)=>{let{settings:r}=t;Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:r.commands.list_index.default_options.field_group_labels,select_cb:async o=>{r.commands.list_index.default_options.field_group_labels=o,r.commands.list_index.default_options.fields=Cr(t.settings.edge_field_groups,r.commands.list_index.default_options.field_group_labels),await t.saveSettings()}}}),pe(e,{name:"Link Kind",desc:"Format to use for links",select:{options:md,value:r.commands.list_index.default_options.link_kind,cb:async o=>{r.commands.list_index.default_options.link_kind=o,await t.saveSettings()}}}),pe(e,{name:"Indent",desc:"Indentation to use for each level",input:{value:r.commands.list_index.default_options.indent,cb:async o=>{r.commands.list_index.default_options.indent=o,await t.saveSettings()}}}),Be(Xa,{target:e,props:{edge_sort_id:r.commands.list_index.default_options.edge_sort_id,select_cb:async o=>{r.commands.list_index.default_options.edge_sort_id=o,await t.saveSettings()}}}),Be(Qa,{target:e,props:{show_attributes:r.commands.list_index.default_options.show_attributes,select_cb:async o=>{r.commands.list_index.default_options.show_attributes=o,await t.saveSettings()}}}),Hr(t,e,{get:()=>r.commands.list_index.default_options.show_node_options,set:o=>r.commands.list_index.default_options.show_node_options=o})};var y6=(t,e)=>{pe(e,{name:"Default Neighbour Field",desc:"Field to use to join neighbouring list items.",select:{value:t.settings.explicit_edge_sources.list_note.default_neighbour_field,options:[""].concat(t.settings.edge_fields.map(r=>r.label)),cb:async r=>{t.settings.explicit_edge_sources.list_note.default_neighbour_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var E6=(t,e)=>{pe(e,{name:"Collapse",desc:"Collapse the matrix by default",toggle:{value:t.settings.views.side.matrix.collapse,cb:async r=>{t.settings.views.side.matrix.collapse=r,t.refreshViews(),await t.saveSettings()}}}),Be(Xa,{target:e,props:{edge_sort_id:t.settings.views.side.matrix.edge_sort_id,select_cb:async r=>{t.settings.views.side.matrix.edge_sort_id=r,t.refreshViews(),await t.saveSettings()}}}),Be(Qa,{target:e,props:{exclude_attributes:["field","explicit"],show_attributes:t.settings.views.side.matrix.show_attributes,select_cb:async r=>{t.settings.views.side.matrix.show_attributes=r,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.side.matrix.field_group_labels,select_cb:async r=>{t.settings.views.side.matrix.field_group_labels=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock View",desc:"Lock the matrix view to the current file",toggle:{value:t.settings.views.side.matrix.lock_view,cb:async r=>{t.settings.views.side.matrix.lock_view=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock Path",desc:"Path to lock the matrix view to (overrides current file)",input:{value:t.settings.views.side.matrix.lock_path,cb:async r=>{r?(t.settings.views.side.matrix.lock_path=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):t.settings.views.side.matrix.lock_path=r}}}),Hr(t,e,{get:()=>t.settings.views.side.matrix.show_node_options,set:r=>t.settings.views.side.matrix.show_node_options=r})};var I6=require("obsidian");var _d=require("obsidian");var d0=(t,e)=>{e.plugin.app.workspace.trigger("hover-link",{event:t,linktext:e.path,source:"breadcrumbs",targetEl:t.currentTarget,hoverParent:t.currentTarget.parentElement})},c0=(t,e)=>{let r=new _d.Menu;e.plugin.app.workspace.handleLinkContextMenu(r,e.display,e.path),r.showAtMouseEvent(t)},p0=(t,e)=>{e.plugin.app.workspace.openLinkText(e.path,"",_d.Keymap.isModEvent(t))},m0=q(' ');function tA(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"cls",3,""),s=mt.drop_ext(e.path),i=de(a);var l=m0();let u;l.__mouseover=[d0,e],l.__contextmenu=[c0,e],l.__click=[p0,e];var A=w(l,!0);b(l),oe(c=>{u=ut(l,1,`internal-link cursor-pointer ${n()??""}`,null,u,c),Xe(l,"data-href",e.path),Xe(l,"aria-label",s===e.display?"":e.path),Fe(A,e.display)},[()=>({"is-unresolved":!e.resolved,"BC-active-note":d(i)?.path===e.path})]),Va("auxclick",l,c=>{H.debug("on:auxclick e.button",c.button),c.button===1&&e.plugin.app.workspace.openLinkText(e.path,"","tab")}),v(t,l),ne(),o()}Ke(["mouseover","contextmenu","click"]);function ja(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=e.edge.stringify_target(e.plugin.graph,e.node_stringify_options);{let a=de(()=>e.edge.target_path(e.plugin.graph)),n=de(()=>e.edge.target_resolved(e.plugin.graph)),s=de(r),i=de(()=>e.edge.explicit(e.plugin.graph)?"BC-edge-explicit":`BC-edge-implied BC-edge-implied-${e.edge.edge_source}`);tA(t,{get plugin(){return e.plugin},get display(){return o},get path(){return d(a)},get resolved(){return d(n)},get cls(){return`${d(s)??""} BC-edge ${d(i)??""}`}})}ne()}var _0=q('
'),h0=q('
'),g0=q('
',1),j0=q('
'),x0={hash:"svelte-1hm32zs",code:".BC-prev-next-view.svelte-1hm32zs > div:where(.svelte-1hm32zs) {border:1px solid var(--background-modifier-border);}.BC-prev-next-view.svelte-1hm32zs .flex-col:where(.svelte-1hm32zs) {background-color:var(--background-primary);}"};function qm(t,e){ae(e,!0),Ua(t,x0);let{field_group_labels:r,show_node_options:o}=e.plugin.settings.views.page.prev_next,a=hr(e.plugin.settings,o),n={prev:Cr(e.plugin.settings.edge_field_groups,r.prev),next:Cr(e.plugin.settings.edge_field_groups,r.next)},s=ma([...n.prev,...n.next]),i=e.plugin.graph.has_node(e.file_path)?ld(e.plugin.graph.get_filtered_outgoing_edges(e.file_path,s).get_edges(),c=>n.prev.includes(c.edge_type)?"prev":"next"):null;var l=j0(),u=w(l);{var A=c=>{var p=g0(),m=K(p);ot(m,21,()=>i?.prev??[],lt,(y,I)=>{var F=_0(),R=w(F),B=w(R,!0);b(R);var j=S(R,2);ja(j,{cls:"grow",get edge(){return d(I)},get plugin(){return e.plugin},get node_stringify_options(){return a}}),b(F),oe(()=>Fe(B,d(I).edge_type)),v(y,F)}),b(m);var h=S(m,2);ot(h,21,()=>i?.next??[],lt,(y,I)=>{var F=h0(),R=w(F);ja(R,{cls:"grow",get edge(){return d(I)},get plugin(){return e.plugin},get node_stringify_options(){return a}});var B=S(R,2),j=w(B,!0);b(B),b(F),oe(()=>Fe(j,d(I).edge_type)),v(y,F)}),b(h),v(c,p)};se(u,c=>{(i?.prev?.length||i?.next?.length)&&c(A)})}b(l),v(t,l),ne()}var v0=(t,e)=>e(!e()),k0=q("");function rA(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"merge_fields",15);var a=k0();a.__click=[v0,o];var n=w(a);{var s=l=>{zu(l,{get size(){return 20}})},i=l=>{Ku(l,{get size(){return 20}})};se(n,l=>{o()?l(s):l(i,!1)})}b(a),oe(()=>{ut(a,1,mr(r())),Xe(a,"aria-label",o()?"Separate Fields":"Merge Fields")}),v(t,a),ne()}Ke(["click"]);var b0=q('
'),w0=q('
'),y0={hash:"svelte-fwuhs",code:` + add the transitive chain . In other words, your spouse's sibling is your sibling-in-law.

Bulk Add Rules (Advanced)

Quickly add multiple rules using the shorthand syntax: [field-one, field-two] -> close-field. Each rule should be on a new line.

`),o$={hash:"svelte-91sdw2",code:`.border.svelte-91sdw2 {border-radius:var(--radius-m);border:var(--modal-border-width) solid + var(--background-modifier-border);}`};function Om(t,e){ae(e,!0),Ua(t,o$);let r=U(e,"plugin",7),o=We(kt(r().settings)),a=We(""),n=We(kt([...d(o).implied_relations.transitive])),s=kt(d(n).map(()=>!1)),i={save:()=>Yi(void 0,void 0,void 0,function*(){for(let{close_field:G}of d(n))if(!G)return new Ja.Notice("Closing field cannot be empty.");d(o).implied_relations.transitive=d(n),r().settings=pr(d(o)),yield Promise.all([r().saveSettings(),r().rebuildGraph()]),te(o,r().settings,!0)}),make_id:G=>`BC-transitive-rule-${G}`,scroll_to:G=>{var Y;return(Y=document.getElementById(i.make_id(G)))===null||Y===void 0?void 0:Y.scrollIntoView({behavior:"smooth"})},add_transitive:()=>{let G=d(n).push({name:"",chain:[],rounds:10,close_reversed:!1,close_field:d(o).edge_fields[0].label});s[G-1]=!0,setTimeout(()=>i.scroll_to(G-1),0),te(n,d(n),!0),d(o).is_dirty=!0},add_bulk:()=>{let G=document.getElementById("BC-transitive-bulk-str");if(!G)return new Ja.Notice("Could not find textarea.");let Y=G.value.trim();if(!Y)return new Ja.Notice("No rules to parse.");let De=gA(Y,` +`).filter(Boolean),T=De.map(r6).filter(_e=>_e.ok);if(T.length!==De.length)return new Ja.Notice("Some rules could not be parsed. Ensure you're using the correct syntax of `[field-one, field-two] -> close-field`, with each rule of a new line.");let M=T.map(_e=>o6({fields:r().settings.edge_fields}).safeParse(_e.data)),Z=M.filter(_e=>!_e.success);if(Z.length)return H.error("Bulk-add transitive rule errors >",Z.map(_e=>{var Ne;return _e.success?null:(Ne=_e.error)===null||Ne===void 0?void 0:Ne.issues})),new Ja.Notice("Some rules could not be parsed. Check the logs for more information.");M.forEach(_e=>{_e.success&&d(n).push(Object.assign(Object.assign({},_e.data),{name:"",rounds:10}))}),new Ja.Notice(`Bulk added ${M.length} rules \u2705`),te(n,d(n),!0),d(o).is_dirty=!0},copy_transitive:G=>{let Y=d(n).push(Object.assign(Object.assign({},d(n)[G]),{name:`${Tm(d(n)[G])} (copy)`}));s[Y-1]=!0,setTimeout(()=>i.scroll_to(Y-1),0),te(n,d(n),!0),d(o).is_dirty=!0},remove_transitive:G=>{te(n,d(n).filter((Y,De)=>De!==G),!0),d(o).is_dirty=!0},rename_transitive:(G,Y)=>{d(n)[G].name!==Y&&(d(n)[G].name=Y,te(n,d(n),!0),d(o).is_dirty=!0)},reorder_transitive:(G,Y)=>{let De=d(n)[G];d(n)[G]=d(n)[Y],d(n)[Y]=De,te(n,d(n),!0),d(o).is_dirty=!0},add_chain_field:(G,Y)=>{Y&&(d(n)[G].chain.push({field:Y.label}),te(n,d(n),!0),d(o).is_dirty=!0)},remove_chain_field:(G,Y)=>{d(n)[G].chain=d(n)[G].chain.filter((De,T)=>T!==Y),te(n,d(n),!0),d(o).is_dirty=!0},set_close_field:(G,Y)=>{Y&&(d(n)[G].close_field=Y.label,te(n,d(n),!0),d(o).is_dirty=!0)},set_rounds:(G,Y)=>{isNaN(Y)||Y<0||(d(n)[G].rounds=Y,te(n,d(n),!0),d(o).is_dirty=!0)},set_close_reversed:(G,Y)=>{d(n)[G].close_reversed=Y,te(n,d(n),!0),d(o).is_dirty=!0}},l={chain_field:(G,Y)=>De=>{let T=new Ja.Menu;T.addItem(M=>M.setTitle("Remove Field").setIcon("x").onClick(()=>i.remove_chain_field(G,Y))),T.showAtMouseEvent(De)}};var u=r$(),A=w(u),c=S(w(A),3),p=w(c,!0);b(c),sa(),b(A);var m=S(A,2),h=w(m);h.__click=function(...G){i.save?.apply(this,G)};var y=w(h);vs(y,{get size(){return 20}}),sa(),b(h);var I=S(h,2),F=w(I);io(F);var R=S(F,2);R.__click=[G0,a],b(I);var B=S(I,2);{var j=G=>{var Y=V0();Y.__click=[H0,i,n];var De=w(Y);Cn(De,{get size(){return 20}}),b(Y),v(G,Y)};se(B,G=>{d(n).length>3&&G(j)})}var E=S(B,2);{var D=G=>{var Y=U0();v(G,Y)};se(E,G=>{d(o).is_dirty&&G(D)})}b(m);var k=S(m,2),C=w(k);ot(C,17,()=>d(n).map((G,Y)=>({rule:G,rule_i:Y,name:Tm(G)})).filter(G=>G.name.includes(d(a).toLowerCase())),({rule:G,rule_i:Y,name:De})=>De+Y,(G,Y)=>{let De=()=>d(Y).rule,T=()=>d(Y).rule_i,M=()=>d(Y).name;var Z=t$(),_e=w(Z),Ne=w(_e),at=w(Ne);Ps(at,{get open(){return s[T()]}});var uo=S(at,2),Do=w(uo,!0);b(uo),b(Ne);var Jt=S(Ne,2),Vr=w(Jt);Vr.__click=[z0,i,T];var va=w(Vr);ed(va,{get size(){return 20}}),b(Vr);var bt=S(Vr,2);bt.__click=[W0,i,T];var Vt=w(bt);Cn(Vt,{get size(){return 20}}),b(bt);var Dt=S(bt,2);Dt.__click=[K0,i,T];var Ao=w(Dt);xs(Ao,{get size(){return 20}}),b(Dt);var tn=S(Dt,2);tn.__click=[Z0,i,T],b(Jt),b(_e);var ir=S(_e,2);so(ir,De,_t=>{var Mt=e$(),Er=w(Mt),Fo=S(w(Er),2);{var Xo=wt=>{var fo=Y0();ot(fo,23,()=>De().chain,(Zs,Ys)=>Ys+(Zs.field??""),(Zs,Ys,Td)=>{{let _=de(()=>d(Ys).field??""),x=de(()=>l.chain_field(T(),d(Td)));Ji(Zs,{get tag(){return d(_)},title:"Right click for more actions.",get oncontextmenu(){return d(x)}})}}),b(fo),v(wt,fo)},Qo=wt=>{var fo=J0();v(wt,fo)};se(Fo,wt=>{De().chain.length?wt(Xo):wt(Qo,!1)})}var rn=S(Fo,2);Xi(rn,{get fields(){return d(o).edge_fields},onselect:wt=>i.add_chain_field(T(),wt)}),b(Er);var ka=S(Er,2),Al=S(w(ka),2);{let wt=de(()=>d(o).edge_fields.find(fo=>fo.label===De().close_field));Xi(Al,{undefine_on_change:!1,get fields(){return d(o).edge_fields},get field(){return d(wt)},onselect:fo=>i.set_close_field(T(),fo)})}b(ka);var ba=S(ka,2),fl=S(w(ba),2);io(fl),fl.__click=[X0,i,T],b(ba);var dl=S(ba,2),wa=S(w(dl),2);io(wa),Xe(wa,"min",0),Xe(wa,"max",100),b(dl);var cl=S(dl,2),uA=S(w(cl),2),Ks=w(uA);io(Ks);var Bd=S(Ks,2);Bd.__click=[Q0,i,T],b(uA),b(cl);var Sd=S(cl,2);{var Cd=wt=>{Rs(wt,{get plugin(){return r()},type:"mermaid",get code(){return yo.from_transitive_rule(De()).mermaid}})};se(Sd,wt=>{s[T()]&&wt(Cd)})}b(Mt),oe(()=>{gs(wa,De().rounds),gs(Ks,De().name)}),km(fl,()=>De().close_reversed,wt=>De().close_reversed=wt),Va("blur",wa,wt=>i.set_rounds(T(),+wt.currentTarget.value)),Va("blur",Ks,wt=>i.rename_transitive(T(),wt.currentTarget.value)),v(_t,Mt)}),b(Z),oe(_t=>{Xe(Z,"id",_t),Fe(Do,M()),Vr.disabled=T()===0,bt.disabled=T()===d(n).length-1},[()=>i.make_id(T())]),js("open","toggle",Z,_t=>s[T()]=_t,()=>s[T()]),v(G,Z)});var P=S(C,2);P.__click=function(...G){i.add_transitive?.apply(this,G)};var le=w(P);Tn(le,{get size(){return 20}}),sa(),b(P);var xe=S(P,2),fe=S(w(xe),2),He=S(w(fe),4);He.__click=function(...G){i.add_bulk?.apply(this,G)},b(fe),b(xe),b(k),b(u),oe(G=>{Fe(p,G),R.disabled=d(a)===""},[()=>Qu({close_reversed:!1,close_field:"sibling-in-law",chain:[{field:"spouse"},{field:"sibling"}]})]),Sn(F,()=>d(a),G=>te(a,G)),v(t,u),ne()}Ke(["click"]);var n6=require("obsidian"),Hr=(t,e,r,o)=>{let a=r.get(),n=new n6.Setting(e).setName("Note display options").setDesc("How to display note links");return n.controlEl.addClasses(["flex","flex-wrap","gap-2"]),n.addToggle(s=>{s.toggleEl.before("Folder"),s.setTooltip("Folder path").setValue(a.folder).onChange(async i=>{a.folder=i,r.set(a),o?.save_and_refresh!==!1&&(await Promise.all([t.saveSettings()]),t.refreshViews())})}),n.addToggle(s=>{s.toggleEl.before("Extension"),s.setTooltip("File extension").setValue(a.ext).onChange(async i=>{a.ext=i,r.set(a),o?.save_and_refresh!==!1&&(await Promise.all([t.saveSettings()]),t.refreshViews())})}),n.addToggle(s=>{s.toggleEl.before("Alias"),s.setTooltip("Alias (first alias, if available)").setValue(a.alias).onChange(async i=>{a.alias=i,r.set(a),o?.save_and_refresh!==!1&&(await Promise.all([t.saveSettings()]),t.refreshViews())})}),n};var s6=(t,e)=>{Hr(t,e,{get:()=>t.settings.views.codeblocks.show_node_options,set:r=>t.settings.views.codeblocks.show_node_options=r})};var l6=require("obsidian");var i6=require("obsidian");function pe(t,e){let r=new i6.Setting(t);if(e.name&&r.setName(e.name),e.desc&&r.setDesc(e.desc),e.toggle)r.addToggle(o=>{o.setValue(e.toggle.value).onChange(e.toggle.cb)});else if(e.input)r.addText(o=>{e.input?.placeholder&&o.setPlaceholder(e.input.placeholder),o.setValue(e.input.value),o.inputEl.onblur=()=>{e.input.cb(o.getValue())}});else if(e.select)r.addDropdown(o=>{let a=Array.isArray(e.select.options)?e.select.options.reduce((n,s)=>(n[s]=s,n),{}):e.select.options;o.addOptions(a).setValue(e.select.value).onChange(e.select.cb)});else if(e.checklist){let o=r.controlEl.createEl("div",{attr:{class:"flex flex-wrap gap-3"}}),a={...e.checklist.options};Object.keys(e.checklist.options).forEach(n=>{let s={type:"checkbox"};e.checklist.options[n]&&(s.checked=!0),o.createEl("label",{text:n,cls:"flex items-center gap-1.5 grow"}).createEl("input",{attr:s},i=>{i.classList.add("shrink"),i.onchange=l=>{l.target instanceof HTMLInputElement&&(a[n]=l.target.checked,e.checklist.cb(a))}})})}return r}var u6=(t,e)=>{pe(e,{name:"Enabled",desc:"Look for date notes to use as edge sources",toggle:{value:t.settings.explicit_edge_sources.date_note.enabled,cb:async o=>{t.settings.explicit_edge_sources.date_note.enabled=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Default Field",desc:"Field used to join date notes together. Breadcrumbs takes the current note's date, adds one day, and joins the two notes with this field.",select:{value:t.settings.explicit_edge_sources.date_note.default_field,options:t.settings.edge_fields.map(o=>o.label),cb:async o=>{t.settings.explicit_edge_sources.date_note.default_field=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}});let r=new DocumentFragment;r.createEl("span",{},o=>o.innerHTML='Luxon date format to use'),pe(e,{name:"Date Format",desc:r,input:{value:t.settings.explicit_edge_sources.date_note.date_format,cb:async o=>{o?(t.settings.explicit_edge_sources.date_note.date_format=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])):new l6.Notice("Date format cannot be empty")}}}),pe(e,{name:"Stretch to Existing",desc:"If there is a gap from one day to another, should the next note be the unresolved one in one day or should it 'stretch' to the next resolved (existing) note?",toggle:{value:t.settings.explicit_edge_sources.date_note.stretch_to_existing,cb:async o=>{t.settings.explicit_edge_sources.date_note.stretch_to_existing=o,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var A6=(t,e)=>{pe(e,{name:"Debug Level",desc:"Set the level of debug logging",select:{options:Nd,value:t.settings.debug.level,cb:async r=>{H.set_level(r),t.settings.debug.level=r,await t.saveSettings()}}})};var f6=require("obsidian");var d6=(t,e)=>{pe(e,{name:"Enabled",desc:"Look for dendron notes to use as edge sources",toggle:{value:t.settings.explicit_edge_sources.dendron_note.enabled,cb:async r=>{t.settings.explicit_edge_sources.dendron_note.enabled=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Delimiter",desc:"Delimiter to use to split the note name",input:{value:t.settings.explicit_edge_sources.dendron_note.delimiter,cb:async r=>{r?(t.settings.explicit_edge_sources.dendron_note.delimiter=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):new f6.Notice("Delimiter cannot be empty")}}}),pe(e,{name:"Default Field",desc:"Field to use if the BC-dendron-note-field is not specified",select:{value:t.settings.explicit_edge_sources.dendron_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.dendron_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Display Trimmed",desc:"Display Dendron note names as the right-most split of the delimiter. e.g. `a.b.c` -> `c`",toggle:{value:t.settings.explicit_edge_sources.dendron_note.display_trimmed,cb:async r=>{t.settings.explicit_edge_sources.dendron_note.display_trimmed=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var Mm=require("obsidian");var c6=(t,e)=>{let{settings:r}=t;pe(e,{name:"Enabled",desc:"Whether to enable the edge field suggestor",toggle:{value:r.suggestors.edge_field.enabled,cb:async o=>{r.suggestors.edge_field.enabled=o,o&&new Mm.Notice("Please restart Obsidian for the changes to take effect"),await t.saveSettings()}}}),pe(e,{name:"Trigger String",desc:"The string that triggers the suggestor (when entered at the start of a line)",input:{value:r.suggestors.edge_field.trigger,cb:async o=>{if(!o){new Mm.Notice("Trigger string cannot be empty");return}r.suggestors.edge_field.trigger=o,await t.saveSettings()}}})};var p6=require("obsidian"),m6=({cb:t,value:e,edge_field_groups:r})=>{let o=new p6.Menu,a=r.map(s=>e.includes(s.label)),n=a.every(s=>s);return o.addItem(s=>s.setTitle(n?"None":"All").onClick(()=>{e=n?[]:r.map(i=>i.label),t(e)})),o.addSeparator(),r.forEach((s,i)=>{let l=a[i];o.addItem(u=>u.setTitle(s.label).setChecked(l).onClick(()=>{l?e=e.filter(A=>A!==s.label):e.push(s.label),t(e)}))}),o};var a$=(t,e,r)=>{m6({edge_field_groups:e.edge_field_groups,value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},n$=q('');function Ls(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"field_group_labels",15);var a=n$();a.__click=[a$,e,o];var n=w(a);Gu(n,{get size(){return 20}}),b(a),oe(()=>ut(a,1,mr(r()))),v(t,a),ne()}Ke(["click"]);var s$=q('
');function Gs(t,e){"use strict";var r=s$(),o=w(r),a=w(o),n=w(a,!0);b(a);var s=S(a,2),i=w(s,!0);b(s),b(o);var l=S(o,2),u=w(l);Am(u,()=>e.children??or),b(l),b(r),oe(()=>{Fe(n,e.name),Fe(i,e.description)}),v(t,r)}function yr(t,e){ae(e,!0);let r=U(e,"name",3,"Field Groups"),o=U(e,"description",3,"Select the field groups to use for this traversal."),a=U(e,"field_group_labels",15),n=U(e,"select_cb",3,()=>{});jt(()=>{a()&&n()(a())}),Gs(t,{get name(){return r()},get description(){return o()},children:(s,i)=>{Ls(s,{get edge_field_groups(){return e.edge_field_groups},get field_group_labels(){return a()},set field_group_labels(l){a(l)}})},$$slots:{default:!0}}),ne()}var _6=(t,e)=>{let{settings:r}=t;pe(e,{name:"Destination",desc:"Where to write the frozen edges to",select:{options:["frontmatter","dataview-inline"],value:r.commands.freeze_implied_edges.default_options.destination,cb:async o=>{r.commands.freeze_implied_edges.default_options.destination=o,await t.saveSettings()}}}),Be(yr,{target:e,props:{name:"Included Field Groups",description:"Field groups to include when freezing edges.",edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.commands.freeze_implied_edges.default_options.included_fields,select_cb:async o=>{t.settings.commands.freeze_implied_edges.default_options.included_fields=o,await t.saveSettings()}}}),pe(e,{name:"Use Alias",desc:"Freeze implied edges using the first alias of the target node.",toggle:{value:r.commands.freeze_implied_edges.default_options.use_alias,cb:async o=>{r.commands.freeze_implied_edges.default_options.use_alias=o,await t.saveSettings()}}})};var Nm=require("obsidian");var h6=(t,e)=>{pe(e,{name:"Enable trail view",desc:"Show the trail view at the top of the page",toggle:{value:t.settings.views.page.trail.enabled,cb:async r=>{t.settings.views.page.trail.enabled=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Format",desc:"Format of the trail view",select:{value:t.settings.views.page.trail.format,options:["grid","path"],cb:async r=>{t.settings.views.page.trail.format=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Path Selection",desc:"How to select the path(s) to display in the trail view",select:{value:t.settings.views.page.trail.selection,options:["all","shortest","longest"],cb:async r=>{t.settings.views.page.trail.selection=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Default depth",desc:"Default depth of the trail view",input:{value:t.settings.views.page.trail.default_depth.toString(),cb:async r=>{let o=parseInt(r);if(isNaN(o)){new Nm.Notice("Depth must be a number");return}else if(o<0){new Nm.Notice("Depth must be a non-negative number");return}t.settings.views.page.trail.default_depth=o,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.page.trail.field_group_labels,select_cb:async r=>{t.settings.views.page.trail.field_group_labels=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Merge Fields",desc:"Merge fields in the traversal, instead of keeping their paths separate",toggle:{value:t.settings.views.page.trail.merge_fields,cb:async r=>{t.settings.views.page.trail.merge_fields=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Show controls",desc:"Show controls to change the depth/format/path-selection of the trail view",toggle:{value:t.settings.views.page.trail.show_controls,cb:async r=>{t.settings.views.page.trail.show_controls=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"No path message",desc:"Message to display when there is no path to display. Leave blank to hide the trail view when there is no path.",input:{value:t.settings.views.page.trail.no_path_message,cb:async r=>{t.settings.views.page.trail.no_path_message=r,t.refreshViews(),await t.saveSettings()}}}),Hr(t,e,{get:()=>t.settings.views.page.trail.show_node_options,set:r=>t.settings.views.page.trail.show_node_options=r})};var g6=require("obsidian");var j6=(t,e)=>{pe(e,{name:"Enabled",desc:"Look for Johnny.Decimal notes to use as edge sources",toggle:{value:t.settings.explicit_edge_sources.johnny_decimal_note.enabled,cb:async r=>{t.settings.explicit_edge_sources.johnny_decimal_note.enabled=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}}),pe(e,{name:"Delimiter",desc:"Delimiter to use to split the note name",input:{value:t.settings.explicit_edge_sources.johnny_decimal_note.delimiter,cb:async r=>{r?(t.settings.explicit_edge_sources.johnny_decimal_note.delimiter=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):new g6.Notice("Delimiter cannot be empty")}}}),pe(e,{name:"Default Field",desc:"Field to use to point to next note in the Johnny.Decimal system",select:{value:t.settings.explicit_edge_sources.johnny_decimal_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.johnny_decimal_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var x6=require("obsidian");var i$=[1,-1],v6=({cb:t,value:e,exclude_fields:r})=>{let o=new x6.Menu;return i$.forEach(a=>{o.addItem(n=>n.setTitle(`Order: ${a===1?"asc":"desc"}`).setChecked(e.order===a).onClick(()=>{e.order=a,t(e)}))}),o.addSeparator(),kA.filter(a=>!r?.includes(a)).forEach(a=>{o.addItem(n=>n.setTitle("Field: "+a).setChecked(e.field===a).onClick(()=>{e.field=a,t(e)}))}),o};var l$=(t,e,r)=>{v6({exclude_fields:e(),value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},u$=q('');function Hs(t,e){ae(e,!0);let r=U(e,"edge_sort_id",15),o=U(e,"exclude_fields",19,()=>[]),a=U(e,"cls",3,"");var n=u$();n.__click=[l$,o,r];var s=w(n);{var i=u=>{Qf(u,{get size(){return 20}})},l=u=>{Xf(u,{get size(){return 20}})};se(s,u=>{r().order===1?u(i):u(l,!1)})}b(n),oe(()=>ut(n,1,`flex gap-1 ${a()??""}`)),v(t,n),ne()}Ke(["click"]);function Xa(t,e){ae(e,!0);let r=U(e,"edge_sort_id",15),o=U(e,"select_cb",3,()=>{});jt(()=>{r()&&o()(r())}),Gs(t,{name:"Edge Sort",description:"Select the sorting method for the edges in the graph.",children:(a,n)=>{Hs(a,{get edge_sort_id(){return r()},set edge_sort_id(s){r(s)}})},$$slots:{default:!0}}),ne()}var k6=require("obsidian");var b6=({cb:t,value:e,exclude_attributes:r})=>{let o=new k6.Menu,a=xl.filter(i=>!r?.includes(i)),n=a.length===e.length;o.addItem(i=>i.setTitle(n?"None":"All").onClick(()=>{t(n?[]:a)})),o.addSeparator();let s=i=>{let l=e.includes(i);o.addItem(u=>u.setTitle(i).setChecked(l).onClick(()=>{t(l?e.filter(A=>A!==i):[...e,i])}))};return["field","explicit"].filter(i=>!r?.includes(i)).forEach(s),o.addSeparator(),["source"].filter(i=>!r?.includes(i)).forEach(s),o.addSeparator(),["implied_kind","round"].filter(i=>!r?.includes(i)).forEach(s),o};var A$=(t,e,r)=>{b6({exclude_attributes:e(),value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},f$=q('');function Vs(t,e){ae(e,!0);let r=U(e,"show_attributes",15),o=U(e,"exclude_attributes",19,()=>[]),a=U(e,"cls",3,"");!(o()===null||o()===void 0)&&o().length&&r(r().filter(i=>!(!(o()===null||o()===void 0)&&o().includes(i))));var n=f$();n.__click=[A$,o,r];var s=w(n);nd(s,{get size(){return 20}}),b(n),oe(()=>ut(n,1,mr(a()))),v(t,n),ne()}Ke(["click"]);function Qa(t,e){ae(e,!0);let r=U(e,"show_attributes",15),o=U(e,"exclude_attributes",19,()=>[]),a=U(e,"select_cb",3,()=>{});jt(()=>{r()&&a()(r())}),Gs(t,{name:"Show Attributes",description:"Select the edge attributes to show.",children:(n,s)=>{Vs(n,{get exclude_attributes(){return o()},get show_attributes(){return r()},set show_attributes(i){r(i)}})},$$slots:{default:!0}}),ne()}var md=["none","wiki","markdown"];var Cr=(t,e)=>ma(t.filter(r=>e.includes(r.label)).flatMap(r=>r.fields));var w6=(t,e)=>{let{settings:r}=t;Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:r.commands.list_index.default_options.field_group_labels,select_cb:async o=>{r.commands.list_index.default_options.field_group_labels=o,r.commands.list_index.default_options.fields=Cr(t.settings.edge_field_groups,r.commands.list_index.default_options.field_group_labels),await t.saveSettings()}}}),pe(e,{name:"Link Kind",desc:"Format to use for links",select:{options:md,value:r.commands.list_index.default_options.link_kind,cb:async o=>{r.commands.list_index.default_options.link_kind=o,await t.saveSettings()}}}),pe(e,{name:"Indent",desc:"Indentation to use for each level",input:{value:r.commands.list_index.default_options.indent,cb:async o=>{r.commands.list_index.default_options.indent=o,await t.saveSettings()}}}),Be(Xa,{target:e,props:{edge_sort_id:r.commands.list_index.default_options.edge_sort_id,select_cb:async o=>{r.commands.list_index.default_options.edge_sort_id=o,await t.saveSettings()}}}),Be(Qa,{target:e,props:{show_attributes:r.commands.list_index.default_options.show_attributes,select_cb:async o=>{r.commands.list_index.default_options.show_attributes=o,await t.saveSettings()}}}),Hr(t,e,{get:()=>r.commands.list_index.default_options.show_node_options,set:o=>r.commands.list_index.default_options.show_node_options=o})};var y6=(t,e)=>{pe(e,{name:"Default Neighbour Field",desc:"Field to use to join neighbouring list items.",select:{value:t.settings.explicit_edge_sources.list_note.default_neighbour_field,options:[""].concat(t.settings.edge_fields.map(r=>r.label)),cb:async r=>{t.settings.explicit_edge_sources.list_note.default_neighbour_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var E6=(t,e)=>{pe(e,{name:"Collapse",desc:"Collapse the matrix by default",toggle:{value:t.settings.views.side.matrix.collapse,cb:async r=>{t.settings.views.side.matrix.collapse=r,t.refreshViews(),await t.saveSettings()}}}),Be(Xa,{target:e,props:{edge_sort_id:t.settings.views.side.matrix.edge_sort_id,select_cb:async r=>{t.settings.views.side.matrix.edge_sort_id=r,t.refreshViews(),await t.saveSettings()}}}),Be(Qa,{target:e,props:{exclude_attributes:["field","explicit"],show_attributes:t.settings.views.side.matrix.show_attributes,select_cb:async r=>{t.settings.views.side.matrix.show_attributes=r,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.side.matrix.field_group_labels,select_cb:async r=>{t.settings.views.side.matrix.field_group_labels=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock View",desc:"Lock the matrix view to the current file",toggle:{value:t.settings.views.side.matrix.lock_view,cb:async r=>{t.settings.views.side.matrix.lock_view=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock Path",desc:"Path to lock the matrix view to (overrides current file)",input:{value:t.settings.views.side.matrix.lock_path,cb:async r=>{r?(t.settings.views.side.matrix.lock_path=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):t.settings.views.side.matrix.lock_path=r}}}),Hr(t,e,{get:()=>t.settings.views.side.matrix.show_node_options,set:r=>t.settings.views.side.matrix.show_node_options=r})};var I6=require("obsidian");var _d=require("obsidian");var d$=(t,e)=>{e.plugin.app.workspace.trigger("hover-link",{event:t,linktext:e.path,source:"breadcrumbs",targetEl:t.currentTarget,hoverParent:t.currentTarget.parentElement})},c$=(t,e)=>{let r=new _d.Menu;e.plugin.app.workspace.handleLinkContextMenu(r,e.display,e.path),r.showAtMouseEvent(t)},p$=(t,e)=>{e.plugin.app.workspace.openLinkText(e.path,"",_d.Keymap.isModEvent(t))},m$=q(' ');function tA(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"cls",3,""),s=mt.drop_ext(e.path),i=de(a);var l=m$();let u;l.__mouseover=[d$,e],l.__contextmenu=[c$,e],l.__click=[p$,e];var A=w(l,!0);b(l),oe(c=>{u=ut(l,1,`internal-link cursor-pointer ${n()??""}`,null,u,c),Xe(l,"data-href",e.path),Xe(l,"aria-label",s===e.display?"":e.path),Fe(A,e.display)},[()=>({"is-unresolved":!e.resolved,"BC-active-note":d(i)?.path===e.path})]),Va("auxclick",l,c=>{H.debug("on:auxclick e.button",c.button),c.button===1&&e.plugin.app.workspace.openLinkText(e.path,"","tab")}),v(t,l),ne(),o()}Ke(["mouseover","contextmenu","click"]);function ja(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=e.edge.stringify_target(e.plugin.graph,e.node_stringify_options);{let a=de(()=>e.edge.target_path(e.plugin.graph)),n=de(()=>e.edge.target_resolved(e.plugin.graph)),s=de(r),i=de(()=>e.edge.explicit(e.plugin.graph)?"BC-edge-explicit":`BC-edge-implied BC-edge-implied-${e.edge.edge_source}`);tA(t,{get plugin(){return e.plugin},get display(){return o},get path(){return d(a)},get resolved(){return d(n)},get cls(){return`${d(s)??""} BC-edge ${d(i)??""}`}})}ne()}var _$=q('
'),h$=q('
'),g$=q('
',1),j$=q('
'),x$={hash:"svelte-1hm32zs",code:".BC-prev-next-view.svelte-1hm32zs > div:where(.svelte-1hm32zs) {border:1px solid var(--background-modifier-border);}.BC-prev-next-view.svelte-1hm32zs .flex-col:where(.svelte-1hm32zs) {background-color:var(--background-primary);}"};function qm(t,e){ae(e,!0),Ua(t,x$);let{field_group_labels:r,show_node_options:o}=e.plugin.settings.views.page.prev_next,a=hr(e.plugin.settings,o),n={prev:Cr(e.plugin.settings.edge_field_groups,r.prev),next:Cr(e.plugin.settings.edge_field_groups,r.next)},s=ma([...n.prev,...n.next]),i=e.plugin.graph.has_node(e.file_path)?ld(e.plugin.graph.get_filtered_outgoing_edges(e.file_path,s).get_edges(),c=>n.prev.includes(c.edge_type)?"prev":"next"):null;var l=j$(),u=w(l);{var A=c=>{var p=g$(),m=K(p);ot(m,21,()=>i?.prev??[],lt,(y,I)=>{var F=_$(),R=w(F),B=w(R,!0);b(R);var j=S(R,2);ja(j,{cls:"grow",get edge(){return d(I)},get plugin(){return e.plugin},get node_stringify_options(){return a}}),b(F),oe(()=>Fe(B,d(I).edge_type)),v(y,F)}),b(m);var h=S(m,2);ot(h,21,()=>i?.next??[],lt,(y,I)=>{var F=h$(),R=w(F);ja(R,{cls:"grow",get edge(){return d(I)},get plugin(){return e.plugin},get node_stringify_options(){return a}});var B=S(R,2),j=w(B,!0);b(B),b(F),oe(()=>Fe(j,d(I).edge_type)),v(y,F)}),b(h),v(c,p)};se(u,c=>{(i?.prev?.length||i?.next?.length)&&c(A)})}b(l),v(t,l),ne()}var v$=(t,e)=>e(!e()),k$=q("");function rA(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"merge_fields",15);var a=k$();a.__click=[v$,o];var n=w(a);{var s=l=>{zu(l,{get size(){return 20}})},i=l=>{Ku(l,{get size(){return 20}})};se(n,l=>{o()?l(s):l(i,!1)})}b(a),oe(()=>{ut(a,1,mr(r())),Xe(a,"aria-label",o()?"Separate Fields":"Merge Fields")}),v(t,a),ne()}Ke(["click"]);var b$=q('
'),w$=q('
'),y$={hash:"svelte-fwuhs",code:` /* Handles the outer border, with some rounding */.BC-trail-view.svelte-fwuhs { /* Don't let the inner cell borders overlow */overflow:hidden;border-radius:var(--radius-m);border:1px solid var(--background-modifier-border);background-color:var(--background-primary);}.BC-trail-view-item.svelte-fwuhs { /* Undo the effect of the double border on the top and right side */margin:-1px -1px 0 0; - /* Only add borders on the top and right sides, to avoid inner duplications, and some outer duplicates */border-right:1px solid var(--background-modifier-border);border-top:1px solid var(--background-modifier-border);}`};function Pm(t,e){ae(e,!0),Ua(t,y0);let r=e.all_paths.map(i=>i.reverse_edges),o=Bv(r,null,!0),a=Sv(o).map(i=>Cv(i,l=>l?l.target_path(e.plugin.graph):null)),n=hr(e.plugin.settings,e.plugin.settings.views.page.trail.show_node_options);var s=w0();ot(s,21,()=>a,lt,(i,l,u)=>{var A=J(),c=K(A);ot(c,17,()=>d(l),lt,(p,m)=>{let h=()=>d(m).first,y=()=>d(m).last,I=de(()=>o[h()][u]);var F=b0(),R=w(F);{var B=j=>{ja(j,{get edge(){return d(I)},get plugin(){return e.plugin},cls:"p-1 grow flex justify-center items-center",get node_stringify_options(){return n}})};se(R,j=>{d(I)&&j(B)})}b(F),oe(()=>Ui(F,` + /* Only add borders on the top and right sides, to avoid inner duplications, and some outer duplicates */border-right:1px solid var(--background-modifier-border);border-top:1px solid var(--background-modifier-border);}`};function Pm(t,e){ae(e,!0),Ua(t,y$);let r=e.all_paths.map(i=>i.reverse_edges),o=Bv(r,null,!0),a=Sv(o).map(i=>Cv(i,l=>l?l.target_path(e.plugin.graph):null)),n=hr(e.plugin.settings,e.plugin.settings.views.page.trail.show_node_options);var s=w$();ot(s,21,()=>a,lt,(i,l,u)=>{var A=J(),c=K(A);ot(c,17,()=>d(l),lt,(p,m)=>{let h=()=>d(m).first,y=()=>d(m).last,I=de(()=>o[h()][u]);var F=b$(),R=w(F);{var B=j=>{ja(j,{get edge(){return d(I)},get plugin(){return e.plugin},cls:"p-1 grow flex justify-center items-center",get node_stringify_options(){return n}})};se(R,j=>{d(I)&&j(B)})}b(F),oe(()=>Ui(F,` grid-area: ${h()+1} / ${u+1} / ${y()+2} / ${u+2};`)),v(p,F)}),v(i,A)}),b(s),oe(i=>Ui(s,`grid-template-rows: min-content; -grid-template-columns: ${i??""};`),[()=>"1fr ".repeat(o.at(0)?.length??0)]),v(t,s),ne()}var E0=q(''),I0=q('
'),$0=q('
'),D0=q('
'),F0={hash:"svelte-13n7zkv",code:'.BC-trail-view.svelte-13n7zkv {overflow:hidden;border-radius:var(--radius-m);border:1px solid var(--background-modifier-border);background-color:var(--background-primary);}.BC-trail-view-item-separator.svelte-13n7zkv::before {content:">";}'};function Rm(t,e){ae(e,!0),Ua(t,F0);let r=hr(e.plugin.settings,e.plugin.settings.views.page.trail.show_node_options),o=e.all_paths.map(n=>n.reverse_edges);var a=D0();ot(a,21,()=>o,lt,(n,s)=>{var i=$0();ot(i,21,()=>d(s),lt,(l,u,A)=>{var c=I0(),p=w(c);{var m=y=>{var I=E0();oe(F=>Xe(I,"aria-label",F),[()=>d(u).get_attribute_label(e.plugin.graph,["source","implied_kind","round"])]),v(y,I)};se(p,y=>{A!==0&&y(m)})}var h=S(p,2);ja(h,{get edge(){return d(u)},get plugin(){return e.plugin},get node_stringify_options(){return r}}),b(c),v(l,c)}),b(i),v(n,i)}),b(a),v(t,a),ne()}var B0=async(t,e)=>await e().saveSettings(),S0=q(""),C0=async(t,e)=>await e().saveSettings(),T0=q(""),O0=(t,e)=>te(e,Math.max(1,d(e)-1),!0),M0=(t,e,r)=>te(e,Math.min(d(r),d(e)+1),!0),N0=q('
',1),q0=q('

'),P0=q("
");function Lm(t,e){ae(e,!0);var r,o,a;let n=U(e,"plugin",15);H.debug("Rendering Trail page view for file:",e.file_path);let s=kt(structuredClone(pr(n().settings.views.page.trail))),i=!0;jt(()=>{if(i){i=!1;return}n(n().settings.views.page.trail=pr(s),!0),Re(()=>void n().saveSettings())});let l=de(()=>{let h=Cr(n().settings.edge_field_groups,n().settings.views.page.trail.field_group_labels),y=new Nt([e.file_path],h,5,100,!s.merge_fields,void 0),I=n().graph.rec_traverse(y);return{selected_paths:I.to_paths().select(s.selection),hit_depth_limit:I.hit_depth_limit}}),u=de(()=>Math.max(0,(o=(r=d(l).selected_paths)===null||r===void 0?void 0:r.max_depth())!==null&&o!==void 0?o:0)),A=We(0);jt(()=>{te(A,Math.min(d(u),n().settings.views.page.trail.default_depth),!0)});let c=de(()=>(a=d(l).selected_paths)===null||a===void 0?void 0:a.process(n().graph,d(A)));var p=P0(),m=w(p);so(m,()=>d(c),h=>{var y=J(),I=K(y);{var F=B=>{var j=N0(),E=K(j);let D;var k=w(E);k.__change=[B0,n],ot(k,20,()=>["grid","path"],lt,(M,Z)=>{var _e=S0(),Ne=w(_e,!0);b(_e);var at={};oe(()=>{Fe(Ne,Z),at!==(at=Z)&&(_e.value=(_e.__value=Z)??"")}),v(M,_e)}),b(k);var C=S(k,2);C.__change=[C0,n],ot(C,20,()=>["all","shortest","longest"],lt,(M,Z)=>{var _e=T0(),Ne=w(_e,!0);b(_e);var at={};oe(()=>{Fe(Ne,Z),at!==(at=Z)&&(_e.value=(_e.__value=Z)??"")}),v(M,_e)}),b(C);var P=S(C,2);rA(P,{get merge_fields(){return s.merge_fields},set merge_fields(M){s.merge_fields=M}});var le=S(P,2),xe=w(le);xe.__click=[O0,A];var fe=S(xe,2),He=w(fe);b(fe);var G=S(fe,2);G.__click=[M0,A,u],b(le),b(E);var Y=S(E,2);{var De=M=>{Pm(M,{get plugin(){return n()},get all_paths(){return d(c)}})},T=M=>{var Z=J(),_e=K(Z);{var Ne=at=>{Rm(at,{get plugin(){return n()},get all_paths(){return d(c)}})};se(_e,at=>{s.format==="path"&&at(Ne)},!0)}v(M,Z)};se(Y,M=>{s.format==="grid"?M(De):M(T,!1)})}oe(M=>{D=ut(E,1,"mb-1 flex flex-wrap justify-between gap-3",null,D,M),xe.disabled=d(A)<=1,Xe(fe,"aria-label",d(l).hit_depth_limit?"Some paths have been truncated":""),Fe(He,`${d(A)??""}/${d(u)??""} - ${d(l).hit_depth_limit?" (truncated)":""}`),G.disabled=d(A)>=d(u)},[()=>({hidden:!n().settings.views.page.trail.show_controls})]),zf(k,()=>s.format,M=>s.format=M),zf(C,()=>s.selection,M=>s.selection=M),v(B,j)},R=B=>{var j=J(),E=K(j);{var D=k=>{var C=q0(),P=w(C,!0);b(C),oe(()=>Fe(P,n().settings.views.page.trail.no_path_message)),v(k,C)};se(E,k=>{n().settings.views.page.trail.no_path_message&&k(D)},!0)}v(B,j)};se(I,B=>{d(c)&&d(c).length?B(F):B(R,!1)})}v(h,y)}),b(p),v(t,p),ne()}Ke(["change","click"]);var R0=q('
');function Gm(t,e){ae(e,!0);let r=e.plugin.settings.views.page.trail.enabled,o=e.plugin.settings.views.page.prev_next.enabled;var a=J(),n=K(a);{var s=i=>{var l=R0(),u=w(l);{var A=m=>{Lm(m,{get plugin(){return e.plugin},get file_path(){return e.file_path}})};se(u,m=>{r&&m(A)})}var c=S(u,2);{var p=m=>{qm(m,{get plugin(){return e.plugin},get file_path(){return e.file_path}})};se(c,m=>{o&&m(p)})}b(l),v(i,l)};se(n,i=>{(r||o)&&i(s)})}v(t,a),ne()}function oA(t){let e=t.app.workspace.getLeavesOfType("markdown");if(!e.length){H.info("redraw_page_views > No markdown views found");return}e.forEach(r=>{if(!(r.view instanceof I6.MarkdownView))return;let o=r.view,a=o.getMode(),n=o.containerEl.querySelector(".BC-page-views")??o.containerEl.createDiv({cls:"BC-page-views w-full mx-auto"}),s=t.settings.views.page.all.readable_line_width?"var(--file-line-width)":"none";if(n.setAttribute("style",`max-width: ${s};`),n.classList.toggle("BC-page-views-sticky",t.settings.views.page.all.sticky),n.empty(),a==="preview"){let i=o.containerEl.querySelector(".markdown-reading-view > .markdown-preview-view");if(!i){H.info("redraw_page_views > No view_parent (mode=preview)");return}i.insertBefore(n,i.firstChild)}else{let i=o.containerEl.querySelector(".cm-scroller");if(!i){H.info("redraw_page_views > No view_parent (mode=source)");return}i.addClass("flex-col"),i.insertBefore(n,i.firstChild)}Be(Gm,{target:n,props:{plugin:t,file_path:o.file?.path??""}})})}var $6=(t,e)=>{pe(e,{name:"Sticky",desc:"Keep the page views pinned to the top of the note as you scroll",toggle:{value:t.settings.views.page.all.sticky,cb:async r=>{t.settings.views.page.all.sticky=r,await t.saveSettings(),oA(t)}}}),pe(e,{name:"Readable line width",desc:"Limit to the width of the text in the editor",toggle:{value:t.settings.views.page.all.readable_line_width,cb:async r=>{t.settings.views.page.all.readable_line_width=r,await t.saveSettings(),oA(t)}}})};var D6=require("obsidian");var F6=(t,e)=>{new D6.Setting(e).setName("Enable Previous/Next view").setDesc("Show the Previous/Next view at the top of the page").addToggle(r=>{r.setValue(t.settings.views.page.prev_next.enabled).onChange(async o=>{t.settings.views.page.prev_next.enabled=o,t.refreshViews(),await t.saveSettings()})}),Be(yr,{target:e,props:{name:"Field Groups for Left",description:"Select the field groups to show in the left side of this view",edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.page.prev_next.field_group_labels.prev,select_cb:async r=>{t.settings.views.page.prev_next.field_group_labels.prev=r,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{name:"Field Groups for Right",description:"Select the field groups to show in the right side of this view",edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.page.prev_next.field_group_labels.next,select_cb:async r=>{t.settings.views.page.prev_next.field_group_labels.next=r,t.refreshViews(),await t.saveSettings()}}}),Hr(t,e,{get:()=>t.settings.views.page.prev_next.show_node_options,set:r=>t.settings.views.page.prev_next.show_node_options=r})};var B6=(t,e)=>{pe(e,{name:"Notify on refresh",desc:"Show a notification when the graph is rebuilt",toggle:{value:t.settings.commands.rebuild_graph.notify,cb:async r=>{t.settings.commands.rebuild_graph.notify=r,await Promise.all([t.saveSettings(),t.rebuildGraph()])}}}),pe(e,{name:"Triggers",desc:"When to rebuild the graph",checklist:{options:{note_save:t.settings.commands.rebuild_graph.trigger.note_save,layout_change:t.settings.commands.rebuild_graph.trigger.layout_change},cb:async r=>{t.settings.commands.rebuild_graph.trigger=r,await Promise.all([t.saveSettings(),t.rebuildGraph()])}}})};var S6=(t,e)=>{pe(e,{name:"Default Field",desc:"Field to use if the BC-regex-note-field is not specified",select:{value:t.settings.explicit_edge_sources.regex_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.regex_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var C6=(t,e)=>{pe(e,{name:"Default Field",desc:"Field to use if the BC-tag-note-field is not specified",select:{value:t.settings.explicit_edge_sources.tag_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.tag_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var T6=(t,e)=>{let{settings:r}=t;pe(e,{name:"Destination",desc:"Where to write the new edge to",select:{options:["frontmatter","dataview-inline","none"],value:r.commands.thread.default_options.destination,cb:async o=>{r.commands.thread.default_options.destination=o,await t.saveSettings()}}}),pe(e,{name:"Target Path Template",desc:"The template to use for the target path. You don't need to add the .md extension.",input:{value:r.commands.thread.default_options.target_path_template,cb:async o=>{r.commands.thread.default_options.target_path_template=o,await t.saveSettings()}}})};var $W=require("obsidian"),O6=(t,e)=>{pe(e,{name:"Collapse",desc:"Collapse the tree by default",toggle:{value:t.settings.views.side.tree.collapse,cb:async r=>{t.settings.views.side.tree.collapse=r,t.refreshViews(),await t.saveSettings()}}}),Be(Xa,{target:e,props:{edge_sort_id:t.settings.views.side.tree.edge_sort_id,select_cb:async r=>{t.settings.views.side.tree.edge_sort_id=r,t.refreshViews(),await t.saveSettings()}}}),Be(Qa,{target:e,props:{show_attributes:t.settings.views.side.tree.show_attributes,select_cb:async r=>{t.settings.views.side.tree.show_attributes=r,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.side.tree.field_group_labels,select_cb:async r=>{t.settings.views.side.tree.field_group_labels=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Merge Fields",desc:"Merge fields in the traversal, instead of keeping their paths separate",toggle:{value:t.settings.views.side.tree.merge_fields,cb:async r=>{t.settings.views.side.tree.merge_fields=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock View",desc:"Lock the tree view to the current file",toggle:{value:t.settings.views.side.tree.lock_view,cb:async r=>{t.settings.views.side.tree.lock_view=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock Path",desc:"Path to lock the tree view to (overrides current file)",input:{value:t.settings.views.side.tree.lock_path,cb:async r=>{r?(t.settings.views.side.tree.lock_path=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):t.settings.views.side.tree.lock_path=r}}}),Hr(t,e,{get:()=>t.settings.views.side.tree.show_node_options,set:r=>t.settings.views.side.tree.show_node_options=r})};function sr(t,e){let r=t.createEl("details",{cls:"tree-item",...e?.d}),o=r.createEl("summary",{cls:"text-xl p-1 tree-item-self is-clickable",...e?.s}),a=r.createEl("div",{cls:"tree-item-children pl-4"});return{details:r,summary:o,children:a}}var hd=class extends gd.PluginSettingTab{constructor(r,o){super(r,o);this.components=[];this.plugin=o}display(){let{containerEl:r,plugin:o}=this;r.empty(),r.addClass("BC-settings-tab"),this.components.push(Be(Fm,{props:{plugin:o},target:sr(r,{s:{text:"> Edge Fields"}}).children})),r.createEl("hr"),r.createEl("h3",{text:"Implied Relations"}),this.components.push(Be(Om,{props:{plugin:o},target:sr(r,{s:{text:"> Transitive"}}).children})),r.createEl("hr"),r.createEl("h3",{text:"Edge Sources"}),C6(o,sr(r,{s:{text:"> Tag Notes"}}).children),y6(o,sr(r,{s:{text:"> List Notes"}}).children),u6(o,sr(r,{s:{text:"> Date Notes"}}).children),S6(o,sr(r,{s:{text:"> Regex Notes"}}).children),d6(o,sr(r,{s:{text:"> Dendron Notes"}}).children),j6(o,sr(r,{s:{text:"> Johnny.Decimal Notes"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Views"}),E6(o,sr(r,{s:{text:"> Matrix"}}).children);let a=sr(r,{s:{text:"> Page"}}).children;a.createEl("h5",{text:"General"}),$6(o,a),a.createEl("h5",{text:"Trail"}),h6(o,a),a.createEl("h5",{text:"Previous/Next"}),F6(o,a),O6(o,sr(r,{s:{text:"> Tree"}}).children),s6(o,sr(r,{s:{text:"> Codeblocks"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Commands"}),B6(o,sr(r,{s:{text:"> Rebuild Graph"}}).children),w6(o,sr(r,{s:{text:"> List Index"}}).children),_6(o,sr(r,{s:{text:"> Freeze Implied Edges"}}).children),T6(o,sr(r,{s:{text:"> Thread"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Suggestors"}),c6(o,sr(r,{s:{text:"> Edge Field Suggestor"}}).children),r.createEl("hr"),A6(o,sr(r,{s:{text:"> Debug"}}).children)}hide(){this.plugin.settings.is_dirty&&new gd.Notice("\u26A0\uFE0F Exited without saving settings. Your changes are still in effect, but were not saved. Go back and click 'Save' if you want them to persist. Otherwise, reload Obsidian to revert to the last saved settings."),this.components.forEach(r=>void Yo(r))}};var M6=require("obsidian");var L0=(t,e)=>e(!e()),G0=q("");function aA(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"collapse",15);var a=G0();a.__click=[L0,o];var n=w(a);{var s=l=>{od(l,{get size(){return 20}})},i=l=>{ad(l,{get size(){return 20}})};se(n,l=>{o()?l(s):l(i,!1)})}b(a),oe(()=>{ut(a,1,mr(r())),Xe(a,"aria-label",o()?"Expand":"Collapse")}),v(t,a),ne()}Ke(["click"]);var H0=(t,e)=>e(!e()),V0=q("");function nA(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"lock_view",15),a=U(e,"lock_path",15);jt(()=>{!o()&&e.active_path&&(a(e.active_path),H.debug("Setting lock_path to active_path:",a()))});var n=V0();n.__click=[H0,o];var s=w(n);{var i=u=>{Uu(u,{get size(){return 20}})},l=u=>{Vu(u,{get size(){return 20}})};se(s,u=>{o()?u(i):u(l,!1)})}b(n),oe(()=>{ut(n,1,mr(r())),Xe(n,"aria-label",o()?"Locked View":"Dynamic View")}),v(t,n),ne()}Ke(["click"]);var U0=(t,e)=>e.plugin.rebuildGraph(),z0=q('');function sA(t,e){ae(e,!0);let r=U(e,"cls",3,"");var o=z0();o.__click=[U0,e];var a=w(o);sd(a,{get size(){return 20}}),b(o),oe(()=>ut(o,1,mr(r()))),v(t,o),ne()}Ke(["click"]);var W0=q('
');function iA(t,e){"use strict";let r=U(e,"cls",3,""),o=U(e,"label",3,""),a=U(e,"aria_label",3,"");var n=W0(),s=w(n),i=w(s,!0);b(s),b(n),oe(()=>{ut(s,1,`${r()??""} tree-item-flair`),Xe(s,"aria-label",a()),Fe(i,o())}),v(t,n)}var K0=q('
'),Z0=q('
');function Hm(t,e){ae(e,!0);let r=U(e,"open",15),{show_node_options:o}=e.plugin.settings.views.side.matrix,a=hr(e.plugin.settings,o);var n=Z0(),s=w(n),i=w(s),l=w(i);Ps(l,{get open(){return r()}}),b(i);var u=S(i,2),A=w(u),c=w(A,!0);b(A),b(u);var p=S(u,2),m=w(p),h=w(m,!0);b(m),b(p),b(s);var y=S(s,2),I=w(y);so(I,()=>e.edges,F=>{var R=J(),B=K(R);ot(B,17,()=>e.edges,lt,(j,E)=>{var D=K0(),k=w(D),C=w(k),P=w(C);ja(P,{get edge(){return d(E)},get plugin(){return e.plugin},get node_stringify_options(){return a},cls:"grow tree-item-inner-text"}),b(C);var le=S(C,2);{let xe=de(()=>d(E).explicit(e.plugin.graph)?"x":"i"),fe=de(()=>d(E).get_attribute_label(e.plugin.graph,e.show_attributes));iA(le,{cls:"font-mono",get label(){return d(xe)},get aria_label(){return d(fe)}})}b(k),b(D),v(j,D)}),v(F,R)}),b(y),b(n),oe(()=>{ut(n,1,`BC-matrix-view-field BC-matrix-view-field-${e.field.label??""} tree-item`),Fe(c,e.field.label),Fe(h,e.edges.length)}),js("open","toggle",n,r,r),v(t,n),ne()}var Y0=q("
"),J0=q('

No outgoings edges

'),X0=q('
');function Vm(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"plugin",7);H.debug("Rendering Matrix side view");let s=kt(structuredClone(pr(n().settings.views.side.matrix))),i=!0;jt(()=>{if(n().settings.views.side.matrix=pr(s),Re(()=>void n().saveSettings()),i){i=!1;return}});let l=de(()=>Cr(n().settings.edge_field_groups,s.field_group_labels)),u=de(a),A=de(()=>d(u)&&n().graph.has_node(d(u).path)?s.lock_view&&n().graph.has_node(s.lock_path)?(H.debug("Using locked path for MatrixView:",s.lock_path),n().graph.get_filtered_grouped_outgoing_edges(s.lock_path,d(l))):n().graph.get_filtered_grouped_outgoing_edges(d(u).path,d(l)):null),c=de(()=>po(s.edge_sort_id.field,s.edge_sort_id.order===-1));var p=X0(),m=w(p),h=w(m),y=w(h);sA(y,{cls:"clickable-icon nav-action-button",get plugin(){return n()}});var I=S(y,2);{let D=de(()=>d(u)?.path);nA(I,{cls:"clickable-icon nav-action-button",get active_path(){return d(D)},get lock_view(){return s.lock_view},set lock_view(k){s.lock_view=k},get lock_path(){return s.lock_path},set lock_path(k){s.lock_path=k}})}var F=S(I,2);Hs(F,{cls:"clickable-icon nav-action-button",exclude_fields:["field","neighbour-field:"],get edge_sort_id(){return s.edge_sort_id},set edge_sort_id(D){s.edge_sort_id=D}});var R=S(F,2);aA(R,{cls:"clickable-icon nav-action-button",get collapse(){return s.collapse},set collapse(D){s.collapse=D}});var B=S(R,2);Vs(B,{cls:"clickable-icon nav-action-button",exclude_attributes:["field","explicit"],get show_attributes(){return s.show_attributes},set show_attributes(D){s.show_attributes=D}});var j=S(B,2);Ls(j,{cls:"clickable-icon nav-action-button",get edge_field_groups(){return n().settings.edge_field_groups},get field_group_labels(){return s.field_group_labels},set field_group_labels(D){s.field_group_labels=D}}),b(h),b(m);var E=S(m,2);so(E,()=>d(A),D=>{var k=J(),C=K(k);{var P=xe=>{var fe=Y0();ot(fe,21,()=>n().settings.edge_fields,lt,(He,G)=>{let Y=de(()=>d(A).get_sorted_edges(d(G).label,n().graph,d(c)));var De=J(),T=K(De);{var M=Z=>{{let _e=de(()=>!s.collapse);Hm(Z,{get edges(){return d(Y)},get field(){return d(G)},get plugin(){return n()},get show_attributes(){return s.show_attributes},get open(){return d(_e)}})}};se(T,Z=>{d(Y)?.length&&Z(M)})}v(He,De)}),b(fe),v(xe,fe)},le=xe=>{var fe=J0();v(xe,fe)};se(C,xe=>{d(A)?xe(P):xe(le,!1)})}v(D,k)}),b(p),v(t,p),ne(),o()}var jd=class extends M6.ItemView{constructor(r,o){super(r);this.icon="blinds";this.plugin=o}getViewType(){return ea.matrix}getDisplayText(){return"Matrix view"}onload(){this.registerEvent(this.plugin.events.on("redraw-side-views",()=>{this.onOpen()}))}async onOpen(){this.containerEl.children[1].empty(),this.component=Be(Vm,{target:this.contentEl,props:{plugin:this.plugin}})}async onClose(){this.component&&await Yo(this.component)}};var N6=t_("AGFzbQEAAAAB1ARIYAJ/fwF/YAN/f38Bf2ACf38AYAACf39gAX8AYAN/f38AYAF/An9/YAF/AX9gAAN/f39gAAR/f39/YAABf2AFf39/f38AYAR/f39/AGAFf39/f38Bf2AAAGAGf39/f39/AGACf38Df39/YAF/AW9gAW8Bf2AHf39/f39/fwBgAn9vAGAEf39/fwF/YAR/f39/BH9/f39gA39/fwR/f39/YAJ/fwR/f39/YANvf38AYAABb2ACf34AYAZ/f39/f38Bf2AHf39/f39/fwF/YAN/f38Df39/YAN/f38Cf39gAn9/An9/YAJ/fwFvYAJ/fwF+YAN/f38BfmAJf39/f39/f39/AX9gAX8BfmABbwFvYAFvAXxgAm9vAW9gA29vbwFvYANvb28Bf2AIf39/f39/f38AYAp/f39/f39/f39/AGAHf39+fn5+fgF+YAJ+fwF/YA5/f39/f39/f39/f39/fwF/YAl/f39/f39+fn4AYAV/f35+fgF+YBd/f39/f39/f39/f39/f39/f39/f39/fwF/YAN/f34Bf2ATf39/f39/f39/f39/f39/f39/fwF/YAt/f39/f39/f39/fwF/YAN/fn4AYAh/f39/f39/fwF/YAABfmAEf35+fwBgAXwBfGAFf39/f38Ef39/f2AGf39/f39/A39/f2AHf39/f39/fwJ/f2AFf39/f38Df39/YAR/f39/A39/f2ABfwN/f39gBX9/fn9/AGAEf35/fwBgBX9/fH9/AGAEf3x/fwBgBX9/fX9/AGAEf31/fwBgAX8BfAKGCiUDd2JnG19fd2JnX2luZm9fMzk4YmY1ZDIxMTQwOTgxNAAZA3diZxJfX3diZ19lZGdlZGF0YV9uZXcAEQN3YmcSX193Ymdfbm9kZWRhdGFfbmV3ABEDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX2dldAAUA3diZxhfX3diZ19ub3RlZ3JhcGhlcnJvcl9uZXcAEQN3YmcOX193YmdfcGF0aF9uZXcAEQN3YmcbX193YmdfZmxhdHRyYXZlcnNhbGRhdGFfbmV3ABEDd2JnF19fd2JnX3RyYXZlcnNhbGRhdGFfbmV3ABEDd2JnFF9fd2JnX2VkZ2VzdHJ1Y3RfbmV3ABEDd2JnF19fd2JnX2djZWRnZWRhdGFfdW53cmFwABIDd2JnF19fd2JnX2djbm9kZWRhdGFfdW53cmFwABIDd2JnGl9fd2JnX3RyYXZlcnNhbGRhdGFfdW53cmFwABIDd2JnHl9fd2JnX2ZsYXR0cmF2ZXJzYWxkYXRhX3Vud3JhcAASA3diZxVfX3diaW5kZ2VuX3N0cmluZ19uZXcAIQN3YmcXX193YmdfZWRnZXN0cnVjdF91bndyYXAAEgN3YmcgX193YmdfdHJhbnNpdGl2ZWdyYXBocnVsZV91bndyYXAAEgN3YmcbX193Ymdfd2Fybl80YTIzODBjNjkwM2IwNDQzABkDd2JnHF9fd2JnX2RlYnVnXzBlMjkyYTBkYmFlZGE3ZjEAGQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0xPR0dFUl84NDlhNzA4MzhlOTA5NGYwABoDd2JnGl9fd2JnX25ld184YTZmMjM4YTZlY2U4NmVhABoDd2JnHF9fd2JnX3N0YWNrXzBlZDc1ZDY4NTc1YjBmM2MAFAN3YmccX193YmdfZXJyb3JfNzUzNGI4ZTlhMzZmMWFiNAACA3diZyJfX3diZ19wZXJmb3JtYW5jZV83YTNmZmQwYjE3ZjY2M2FkACYDd2JnF19fd2JpbmRnZW5faXNfdW5kZWZpbmVkABIDd2JnGl9fd2JnX25vd18yYzk1YzlkZTAxMjkzMTczACcDd2JnGl9fd2JnX25ld180MDVlMjJmMzkwNTc2Y2UyABoDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwACEDd2JnMl9fd2JnX3N0YXRpY19hY2Nlc3Nvcl9HTE9CQUxfVEhJU181NjU3OGJlN2U5ZjgzMmIwAAoDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAAoA3diZytfX3diZ19zdGF0aWNfYWNjZXNzb3JfU0VMRl8zN2M1ZDQxOGU0YmY1ODE5AAoDd2JnLV9fd2JnX3N0YXRpY19hY2Nlc3Nvcl9HTE9CQUxfODhhOTAyZDEzYTU1N2QwNwAKA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAACgN3YmcbX193YmdfY2FsbF83Y2NjZGQ2OWUwNzkxYWUyACkDd2JnGl9fd2JnX3NldF9iYjhjZWNmNmE2MmI5ZjQ2ACoDd2JnEF9fd2JpbmRnZW5fdGhyb3cAAgN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAFAN3YmcfX193YmluZGdlbl9pbml0X2V4dGVybnJlZl90YWJsZQAOA+sE6QQTBwULExMLDxMTDwsPDAsFCysPDywFAgsMCwItAgUAAQwCCwUVAg0KBAUFBQQFBQcBAgIBGwUABQEAFQEFAAoFLgAAAgIFAAQiASMNAgIiAgsEAgICDAAFAgIBAQEFAQECBQAFDQAvAiMwEwICDAcMAgACBwQPAgUFDAQABQcABAICBwICAgELAg0CCwICCgINDAQcBAAEAgIAAAAAAgUBAQEEBwICAiQCAQICHQcNARMCDiQHAgUCAjEFAgIAAQUFBQUCAgIBCwQyBAUzAAQENAEEAgIMAgUBBwUFAgICCwQPNQsEHQQLBAICDw0EDQAEAAAABR0NDQ0EAAAACgwAAgAEDAUFBAQFBQIABAAAAA4EAgAANgAAAAAAAAAAADcNAAACBAQEBA4EBAQEBAQEBAQAAAAAAAAEAAQHAAAcBAQ4OQIAAAALOgcCBQUFBRUHAAUEBAAABwEEAAEBBAQEAAAAAAwHAQEAAAAABAQEAAAAAAAADAQCBQUFAAAAAAAAAAcAAAAABAANAAAEAAAAADsAAAAKFQAWPBYWFgAHPT4XFxcXDgcCGBgYPxgAAB4eHhQUEBAQEBAQEBACAgICAgICAgUfH0AfBwcHJQcHBwcHJQcHBwQgICACAhsCAgIbBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBAQEBBwEC0FDDUUEBAUEBAwAAQ4OBAoAAAQCAgIEBAQEBAUAAAAAAAUBBwcLABQAAAAAFQQAAgAHAQUBAQEAAQQEDgUFBQAAAAAAAAAADgIOAgIAAAABAAIAAgIHRwIKCgQLAnABxgHGAW8AgAEFAwEAEQYPAn8BQYCAwAALfwFBgAELB6Q66QEGbWVtb3J5AgAUX193Ymdfbm90ZWdyYXBoX2ZyZWUAQRZub3RlZ3JhcGhfYXBwbHlfdXBkYXRlAPwDFW5vdGVncmFwaF9idWlsZF9ncmFwaADEAxRub3RlZ3JhcGhfZWRnZV90eXBlcwCGBC1ub3RlZ3JhcGhfZ2V0X2ZpbHRlcmVkX2dyb3VwZWRfb3V0Z29pbmdfZWRnZXMAcCVub3RlZ3JhcGhfZ2V0X2ZpbHRlcmVkX291dGdvaW5nX2VkZ2VzAK4BHG5vdGVncmFwaF9nZXRfaW5jb21pbmdfZWRnZXMAgAESbm90ZWdyYXBoX2dldF9ub2RlAFgcbm90ZWdyYXBoX2dldF9vdXRnb2luZ19lZGdlcwCBARJub3RlZ3JhcGhfaGFzX25vZGUA/QEabm90ZWdyYXBoX2lzX25vZGVfcmVzb2x2ZWQA1AEXbm90ZWdyYXBoX2l0ZXJhdGVfZWRnZXMA1wMXbm90ZWdyYXBoX2l0ZXJhdGVfbm9kZXMA2AMNbm90ZWdyYXBoX2xvZwCNAg1ub3RlZ3JhcGhfbmV3AKICF25vdGVncmFwaF9ub3RpZnlfdXBkYXRlAMcBHW5vdGVncmFwaF9zZXRfdXBkYXRlX2NhbGxiYWNrANsEHV9fd2JnX2FkZGVkZ2VncmFwaHVwZGF0ZV9mcmVlAMIBHV9fd2JnX2FkZG5vdGVncmFwaHVwZGF0ZV9mcmVlALwBFV9fd2JnX2djZWRnZWRhdGFfZnJlZQDCARVfX3diZ19nY25vZGVkYXRhX2ZyZWUAvAEgX193YmdfcmVtb3ZlZWRnZWdyYXBodXBkYXRlX2ZyZWUA1gEgX193YmdfcmVtb3Zlbm90ZWdyYXBodXBkYXRlX2ZyZWUAgQIgX193YmdfcmVuYW1lbm90ZWdyYXBodXBkYXRlX2ZyZWUA6AElX193YmdfdHJhbnNpdGl2ZXJ1bGVzZ3JhcGh1cGRhdGVfZnJlZQDpAR9hZGRlZGdlZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAHcWYWRkZWRnZWdyYXBodXBkYXRlX25ldwCiAR9hZGRub3RlZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAIwBFmFkZG5vdGVncmFwaHVwZGF0ZV9uZXcAyAEOZ2NlZGdlZGF0YV9uZXcAxAITZ2NlZGdlZGF0YV90b1N0cmluZwCHBA5nY25vZGVkYXRhX25ldwCaAhNnY25vZGVkYXRhX3RvU3RyaW5nAIgEInJlbW92ZWVkZ2VncmFwaHVwZGF0ZV9hZGRfdG9fYmF0Y2gAfhlyZW1vdmVlZGdlZ3JhcGh1cGRhdGVfbmV3AOMCInJlbW92ZW5vdGVncmFwaHVwZGF0ZV9hZGRfdG9fYmF0Y2gAqAEZcmVtb3Zlbm90ZWdyYXBodXBkYXRlX25ldwCXAyJyZW5hbWVub3RlZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAJUBGXJlbmFtZW5vdGVncmFwaHVwZGF0ZV9uZXcA9AIndHJhbnNpdGl2ZXJ1bGVzZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAKkBHnRyYW5zaXRpdmVydWxlc2dyYXBodXBkYXRlX25ldwDYAhxfX3diZ19mbGF0dHJhdmVyc2FsZGF0YV9mcmVlALQBHl9fd2JnX2ZsYXR0cmF2ZXJzYWxyZXN1bHRfZnJlZQClASRfX3diZ19nZXRfZmxhdHRyYXZlcnNhbGRhdGFfY2hpbGRyZW4AjQQhX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2RlcHRoAO4DIF9fd2JnX2dldF9mbGF0dHJhdmVyc2FsZGF0YV9lZGdlAP4BL19fd2JnX2dldF9mbGF0dHJhdmVyc2FsZGF0YV9oYXNfY3V0X29mX2NoaWxkcmVuAO8DLl9fd2JnX2dldF9mbGF0dHJhdmVyc2FsZGF0YV9udW1iZXJfb2ZfY2hpbGRyZW4A8AMiX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfZGF0YQCPBClfX3diZ19nZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9lbnRyeV9ub2RlcwCQBC1fX3diZ19nZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9oaXRfZGVwdGhfbGltaXQA7wMoX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfbm9kZV9jb3VudADuAyxfX3diZ19nZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF90cmF2ZXJzYWxfdGltZQDxAyBfX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9jaGlsZHJlbgCOBB5fX3diZ19nZXRfdHJhdmVyc2FscmVzdWx0X2RhdGEAjAQpX193YmdfZ2V0X3RyYXZlcnNhbHJlc3VsdF9oaXRfZGVwdGhfbGltaXQA8gMjX193YmdfZ2V0X3RyYXZlcnNhbHJlc3VsdF9tYXhfZGVwdGgA8wMkX193YmdfZ2V0X3RyYXZlcnNhbHJlc3VsdF9ub2RlX2NvdW50APQDJF9fd2JnX3NldF9mbGF0dHJhdmVyc2FsZGF0YV9jaGlsZHJlbgDwAiFfX3diZ19zZXRfZmxhdHRyYXZlcnNhbGRhdGFfZGVwdGgA/wMgX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2VkZ2UAyQEvX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2hhc19jdXRfb2ZfY2hpbGRyZW4A4QMuX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX251bWJlcl9vZl9jaGlsZHJlbgCABCJfX3diZ19zZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9kYXRhAN8BKV9fd2JnX3NldF9mbGF0dHJhdmVyc2FscmVzdWx0X2VudHJ5X25vZGVzAPECLV9fd2JnX3NldF9mbGF0dHJhdmVyc2FscmVzdWx0X2hpdF9kZXB0aF9saW1pdADhAyhfX3diZ19zZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9ub2RlX2NvdW50AP8DLF9fd2JnX3NldF9mbGF0dHJhdmVyc2FscmVzdWx0X3RyYXZlcnNhbF90aW1lAIEEIF9fd2JnX3NldF90cmF2ZXJzYWxkYXRhX2NoaWxkcmVuAK0CHl9fd2JnX3NldF90cmF2ZXJzYWxyZXN1bHRfZGF0YQCuAilfX3diZ19zZXRfdHJhdmVyc2FscmVzdWx0X2hpdF9kZXB0aF9saW1pdADiAyNfX3diZ19zZXRfdHJhdmVyc2FscmVzdWx0X21heF9kZXB0aACCBCRfX3diZ19zZXRfdHJhdmVyc2FscmVzdWx0X25vZGVfY291bnQAgwQYX193YmdfdHJhdmVyc2FsZGF0YV9mcmVlALIBGl9fd2JnX3RyYXZlcnNhbHJlc3VsdF9mcmVlAJsBJWZsYXR0cmF2ZXJzYWxkYXRhX2dldF9hdHRyaWJ1dGVfbGFiZWwAvQMlZmxhdHRyYXZlcnNhbGRhdGFfdG9fanNfcmVuZGVyaW5nX29iagDFAyVmbGF0dHJhdmVyc2FscmVzdWx0X2NoaWxkcmVuX2F0X2luZGV4AP0DIWZsYXR0cmF2ZXJzYWxyZXN1bHRfZGF0YV9hdF9pbmRleABnHGZsYXR0cmF2ZXJzYWxyZXN1bHRfaXNfZW1wdHkA9QIqZmxhdHRyYXZlcnNhbHJlc3VsdF9yZW5kZXJpbmdfb2JqX2F0X2luZGV4AL4DGGZsYXR0cmF2ZXJzYWxyZXN1bHRfc29ydADrAxxmbGF0dHJhdmVyc2FscmVzdWx0X3RvU3RyaW5nAIsEEXRyYXZlcnNhbGRhdGFfbmV3ALgBH3RyYXZlcnNhbGRhdGFfcmVjX3NvcnRfY2hpbGRyZW4A6gMWdHJhdmVyc2FsZGF0YV90b1N0cmluZwCJBBN0cmF2ZXJzYWxyZXN1bHRfbmV3APEBGHRyYXZlcnNhbHJlc3VsdF90b1N0cmluZwCKBBh0cmF2ZXJzYWxyZXN1bHRfdG9fcGF0aHMA2QEnX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfbWF4X2RlcHRoAIAEHV9fd2JnX3NldF90cmF2ZXJzYWxkYXRhX2RlcHRoAP8DKl9fd2JnX3NldF90cmF2ZXJzYWxkYXRhX251bWJlcl9vZl9jaGlsZHJlbgCABChfX3diZ19zZXRfdHJhdmVyc2FscmVzdWx0X3RyYXZlcnNhbF90aW1lAIEEHF9fd2JnX2dldF90cmF2ZXJzYWxkYXRhX2VkZ2UA/gEYdHJhdmVyc2FscmVzdWx0X2lzX2VtcHR5APUCHF9fd2JnX3NldF90cmF2ZXJzYWxkYXRhX2VkZ2UAyQErX193Ymdfc2V0X3RyYXZlcnNhbGRhdGFfaGFzX2N1dF9vZl9jaGlsZHJlbgDhAytfX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9oYXNfY3V0X29mX2NoaWxkcmVuAO8DJ19fd2JnX2dldF9mbGF0dHJhdmVyc2FscmVzdWx0X21heF9kZXB0aADwAx1fX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9kZXB0aADuAypfX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9udW1iZXJfb2ZfY2hpbGRyZW4A8AMoX193YmdfZ2V0X3RyYXZlcnNhbHJlc3VsdF90cmF2ZXJzYWxfdGltZQDxAxNfX3diZ19lZGdlZGF0YV9mcmVlAMoBFV9fd2JnX2VkZ2VzdHJ1Y3RfZnJlZQDcARtfX3diZ19nZXRfZWRnZWRhdGFfZXhwbGljaXQA9QMYX193YmdfZ2V0X2VkZ2VkYXRhX3JvdW5kAPYDG19fd2JnX3NldF9lZGdlZGF0YV9leHBsaWNpdADjAxhfX3diZ19zZXRfZWRnZWRhdGFfcm91bmQAhAQeX193YmdfdHJhbnNpdGl2ZWdyYXBocnVsZV9mcmVlAJABFGVkZ2VkYXRhX2VkZ2Vfc291cmNlAJQEEmVkZ2VkYXRhX2VkZ2VfdHlwZQCTBBFlZGdlZGF0YV90b1N0cmluZwCVBBRlZGdlc3RydWN0X2VkZ2VfZGF0YQDfAxZlZGdlc3RydWN0X2VkZ2Vfc291cmNlAM0DFGVkZ2VzdHJ1Y3RfZWRnZV90eXBlAJIEE2VkZ2VzdHJ1Y3RfZXhwbGljaXQA3gMeZWRnZXN0cnVjdF9nZXRfYXR0cmlidXRlX2xhYmVsAL8DF2VkZ2VzdHJ1Y3RfaXNfc2VsZl9sb29wAO4CHmVkZ2VzdHJ1Y3RfbWF0Y2hlc19lZGdlX2ZpbHRlcgDQAxBlZGdlc3RydWN0X3JvdW5kAN0DFmVkZ2VzdHJ1Y3Rfc291cmNlX2RhdGEA2QMWZWRnZXN0cnVjdF9zb3VyY2VfcGF0aADOAxplZGdlc3RydWN0X3NvdXJjZV9yZXNvbHZlZADbAxtlZGdlc3RydWN0X3N0cmluZ2lmeV9zb3VyY2UAxgMbZWRnZXN0cnVjdF9zdHJpbmdpZnlfdGFyZ2V0AMcDFmVkZ2VzdHJ1Y3RfdGFyZ2V0X2RhdGEA2gMWZWRnZXN0cnVjdF90YXJnZXRfcGF0aADPAxplZGdlc3RydWN0X3RhcmdldF9yZXNvbHZlZADcAxNlZGdlc3RydWN0X3RvU3RyaW5nAJEEFm5vdGVncmFwaF9yZWNfdHJhdmVyc2UA4AMibm90ZWdyYXBoX3JlY190cmF2ZXJzZV9hbmRfcHJvY2VzcwDUAyh0cmFuc2l0aXZlZ3JhcGhydWxlX2NyZWF0ZV9leGFtcGxlX2dyYXBoAOwDF3RyYW5zaXRpdmVncmFwaHJ1bGVfbmV3AMwBHHRyYW5zaXRpdmVncmFwaHJ1bGVfdG9TdHJpbmcAlgQiX193YmdfZ2V0X21lcm1haWRncmFwaGRhdGFfbWVybWFpZACZBCVfX3diZ19nZXRfbWVybWFpZGdyYXBoZGF0YV90b3RhbF90aW1lAPcDKV9fd2JnX2dldF9tZXJtYWlkZ3JhcGhkYXRhX3RyYXZlcnNhbF90aW1lAPEDG19fd2JnX21lcm1haWRncmFwaGRhdGFfZnJlZQCCAh5fX3diZ19tZXJtYWlkZ3JhcGhvcHRpb25zX2ZyZWUAeCJfX3diZ19zZXRfbWVybWFpZGdyYXBoZGF0YV9tZXJtYWlkAPICJV9fd2JnX3NldF9tZXJtYWlkZ3JhcGhkYXRhX3RvdGFsX3RpbWUAhQQpX193Ymdfc2V0X21lcm1haWRncmFwaGRhdGFfdHJhdmVyc2FsX3RpbWUAgQQZbWVybWFpZGdyYXBoZGF0YV90b1N0cmluZwCXBBdtZXJtYWlkZ3JhcGhvcHRpb25zX25ldwCLARxtZXJtYWlkZ3JhcGhvcHRpb25zX3RvU3RyaW5nAJgEIG5vdGVncmFwaF9nZW5lcmF0ZV9tZXJtYWlkX2dyYXBoANUDGV9fd2JnX25vdGVncmFwaGVycm9yX2ZyZWUAgwIWbm90ZWdyYXBoZXJyb3JfbWVzc2FnZQCbBBJub3RlZ3JhcGhlcnJvcl9uZXcApAIXbm90ZWdyYXBoZXJyb3JfdG9TdHJpbmcAmgQVX193YmdfZWRnZXNvcnRlcl9mcmVlAPgBFF9fd2JnX2dldF9wYXRoX2VkZ2VzAJwELl9fd2JnX2dldF90cmF2ZXJzYWxvcHRpb25zX2RhdGF2aWV3X2Zyb21fcGF0aHMApAQlX193YmdfZ2V0X3RyYXZlcnNhbG9wdGlvbnNfZWRnZV90eXBlcwCjBCZfX3diZ19nZXRfdHJhdmVyc2Fsb3B0aW9uc19lbnRyeV9ub2RlcwCiBCRfX3diZ19nZXRfdHJhdmVyc2Fsb3B0aW9uc19tYXhfZGVwdGgA7gMuX193YmdfZ2V0X3RyYXZlcnNhbG9wdGlvbnNfbWF4X3RyYXZlcnNhbF9jb3VudADwAylfX3diZ19nZXRfdHJhdmVyc2Fsb3B0aW9uc19zZXBhcmF0ZV9lZGdlcwDvAy1fX3diZ19nZXRfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX2ZsYXR0ZW4A9gMsX193YmdfZ2V0X3RyYXZlcnNhbHBvc3Rwcm9jZXNzb3B0aW9uc19zb3J0ZXIA0gEPX193YmdfcGF0aF9mcmVlAM0BE19fd2JnX3BhdGhsaXN0X2ZyZWUApgEUX193Ymdfc2V0X3BhdGhfZWRnZXMA/AEuX193Ymdfc2V0X3RyYXZlcnNhbG9wdGlvbnNfZGF0YXZpZXdfZnJvbV9wYXRocwDlASVfX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19lZGdlX3R5cGVzAOYBJl9fd2JnX3NldF90cmF2ZXJzYWxvcHRpb25zX2VudHJ5X25vZGVzAP8BJF9fd2JnX3NldF90cmF2ZXJzYWxvcHRpb25zX21heF9kZXB0aAD/Ay5fX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19tYXhfdHJhdmVyc2FsX2NvdW50AIAEKV9fd2JnX3NldF90cmF2ZXJzYWxvcHRpb25zX3NlcGFyYXRlX2VkZ2VzAOEDLV9fd2JnX3NldF90cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfZmxhdHRlbgDkAyxfX3diZ19zZXRfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX3NvcnRlcgDaARtfX3diZ190cmF2ZXJzYWxvcHRpb25zX2ZyZWUAcSZfX3diZ190cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfZnJlZQD5ARJjcmVhdGVfZWRnZV9zb3J0ZXIA1gMLcGF0aF9lcXVhbHMAexVwYXRoX2dldF9maXJzdF90YXJnZXQA0QMLcGF0aF9sZW5ndGgA/AIScGF0aF9yZXZlcnNlX2VkZ2VzAJ0EDXBhdGhfdG9TdHJpbmcAngQNcGF0aF90cnVuY2F0ZQBiEnBhdGhsaXN0X21heF9kZXB0aACYARBwYXRobGlzdF9wcm9jZXNzAMgDD3BhdGhsaXN0X3NlbGVjdADOARFwYXRobGlzdF90b1N0cmluZwCfBBFwYXRobGlzdF90b19wYXRocwCgBApzb3J0X2VkZ2VzAMEDE3NvcnRfdHJhdmVyc2FsX2RhdGEAwAMUdHJhdmVyc2Fsb3B0aW9uc19uZXcA2AEZdHJhdmVyc2Fsb3B0aW9uc190b1N0cmluZwChBB90cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfbmV3AKMBJHRyYXZlcnNhbHBvc3Rwcm9jZXNzb3B0aW9uc190b1N0cmluZwClBCp0cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfd2l0aG91dF9zb3J0ZXIApwMbX193YmdfYmF0Y2hncmFwaHVwZGF0ZV9mcmVlAOoBGl9fd2JnX2dldF9ub2RlZGF0YV9hbGlhc2VzAKcEIl9fd2JnX2dldF9ub2RlZGF0YV9pZ25vcmVfaW5fZWRnZXMA+AMjX193YmdfZ2V0X25vZGVkYXRhX2lnbm9yZV9vdXRfZWRnZXMA+QMXX193YmdfZ2V0X25vZGVkYXRhX3BhdGgApgQbX193YmdfZ2V0X25vZGVkYXRhX3Jlc29sdmVkAPoDE19fd2JnX25vZGVkYXRhX2ZyZWUAvQEfX193Ymdfbm9kZXN0cmluZ2lmeW9wdGlvbnNfZnJlZQD7ARpfX3diZ19zZXRfbm9kZWRhdGFfYWxpYXNlcwCAAiJfX3diZ19zZXRfbm9kZWRhdGFfaWdub3JlX2luX2VkZ2VzAOUDI19fd2JnX3NldF9ub2RlZGF0YV9pZ25vcmVfb3V0X2VkZ2VzAOYDF19fd2JnX3NldF9ub2RlZGF0YV9wYXRoAPMCG19fd2JnX3NldF9ub2RlZGF0YV9yZXNvbHZlZADnAxRiYXRjaGdyYXBodXBkYXRlX25ldwC6Awxub2RlZGF0YV9uZXcAmgIRbm9kZWRhdGFfdG9TdHJpbmcAqAQYbm9kZXN0cmluZ2lmeW9wdGlvbnNfbmV3AMUCI25vZGVzdHJpbmdpZnlvcHRpb25zX3N0cmluZ2lmeV9ub2RlAP4DE19fd2JnX2VkZ2VsaXN0X2ZyZWUAzwEaX193YmdfZ3JvdXBlZGVkZ2VsaXN0X2ZyZWUAqgEMY3JlYXRlX2dyYXBoALMBDmVkZ2VsaXN0X2ZpcnN0AKcBEmVkZ2VsaXN0X2dldF9lZGdlcwCsBBllZGdlbGlzdF9nZXRfc29ydGVkX2VkZ2VzAMkDFmVkZ2VsaXN0X2dyb3VwX2J5X3R5cGUAVA1lZGdlbGlzdF9sYXN0AJMBEWVkZ2VsaXN0X3RvU3RyaW5nAKoEEWVkZ2VsaXN0X3RvX2FycmF5AKsEGWdyb3VwZWRlZGdlbGlzdF9nZXRfZWRnZXMA7QMgZ3JvdXBlZGVkZ2VsaXN0X2dldF9zb3J0ZWRfZWRnZXMAtgMYZ3JvdXBlZGVkZ2VsaXN0X3RvU3RyaW5nAKkEFF9fd2JpbmRnZW5fZXhuX3N0b3JlAOEEF19fZXh0ZXJucmVmX3RhYmxlX2FsbG9jAIwFE19fd2JpbmRnZW5fZXhwb3J0XzIBAQ9fX3diaW5kZ2VuX2ZyZWUA1QQR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ADcCkAEgAkGYAWogA0EIaikCADcCACACQaABaiADQRBqKQIANwIAIAJBqAFqIANBGGopAgA3AgAgAkGwAWogA0EgaikCADcCACACQbgBaiADQShqKQIANwIAIAkgACAQQTBsIgpqIgNBMGogAxDrASEIIANBkAFB4AAgCSADQZABaiADQeAAahDrASIFG2ohBCAJIANB4ABBkAEgBRtqIgYgAyAIQQFzQTBsaiIFIAQgCSAEIAMgCEEwbGoiCBDrASILGyAJIAYgBRDrASIMGyINIAggBCAFIAwbIAsbIg4Q6wEhEyACIApqIgNBKGogBCAIIAsbIgRBKGopAgA3AgAgA0EgaiAEQSBqKQIANwIAIANBGGogBEEYaikCADcCACADQRBqIARBEGopAgA3AgAgA0EIaiAEQQhqKQIANwIAIAMgBCkCADcCACADIA0gDiATGyIEKQIANwIwIANBOGogBEEIaikCADcCACADQUBrIARBEGopAgA3AgAgA0HIAGogBEEYaikCADcCACADQdAAaiAEQSBqKQIANwIAIANB2ABqIARBKGopAgA3AgAgA0GIAWogDiANIBMbIgRBKGopAgA3AgAgA0GAAWogBEEgaikCADcCACADQfgAaiAEQRhqKQIANwIAIANB8ABqIARBEGopAgA3AgAgA0HoAGogBEEIaikCADcCACADIAQpAgA3AmAgAyAFIAYgDBsiBCkCADcCkAEgA0GYAWogBEEIaikCADcCACADQaABaiAEQRBqKQIANwIAIANBqAFqIARBGGopAgA3AgAgA0GwAWogBEEgaikCADcCACADQbgBaiAEQShqKQIANwIAQQQhCwwBCyACIAApAgA3AgAgAkEoaiAAQShqKQIANwIAIAJBIGogAEEgaikCADcCACACQRhqIABBGGopAgA3AgAgAkEQaiAAQRBqKQIANwIAIAJBCGogAEEIaikCADcCACACIBBBMGwiBWoiAyAAIAVqIgUpAgA3AgAgA0EIaiAFQQhqKQIANwIAIANBEGogBUEQaikCADcCACADQRhqIAVBGGopAgA3AgAgA0EgaiAFQSBqKQIANwIAIANBKGogBUEoaikCADcCACAEKAIAIQkLIAdBADYCCCALQTBsIRcgByAQNgIMIAEgEGshHSAHQRxqIRQgB0EIaiEeQQAhAwNAIAcgA0EBaiIfNgIAAkAgCyAdIBAgHiADQQJ0aigCACIDGyIgTw0AIAAgA0EwbCIDaiEhQTAhDCACIANqIhMhDSALIQ4CQANAIBMgDkEwbCIDaiIEIAMgIWoiESkCADcCACAEQShqIBFBKGoiGCkCADcCACAEQSBqIBFBIGoiGSkCADcCACAEQRhqIBFBGGoiGikCADcCACAEQRBqIBFBEGoiGykCADcCACAEQQhqIBFBCGoiHCkCADcCACAEQSRrIQMgBEEMaiEFIAkoAgQhCCAJKAIAIQoCfwJAAkACQAJAAkBBBCAJKAIIIgYoAgAiEkGAgICAeHMgEkEAThtBAWsOBAECAwQACyAIIAUgAxDjAQwECyAIIAUgAxB/DAMLIAQoAgxBCGogAygCAEEIaiAEKAIQIgMgBEEgaygCACIFIAMgBUkbEIEDIgggAyAFayAIGyIDQQBKIANBAEhrDAILIAggBSADEG4MAQsgBiAIIAUgAxBJCyEDAkACQAJAIAotAAxBAUYEQCADQf8BcUEBRg0BDAILIANB/wFxQf8BRw0BCyAHQRhqIBwpAgA3AwAgB0E4aiAYKQIANwMAIAdBMGogGSkCADcDACAHQShqIBopAgA3AwAgB0EgaiAbKQIAIiU3AwAgByARKQIANwMQIAcoAhxBCGohIiAlpyEVIAwhBSANIQgCQANAIAggF2oiAyADQTBrIgYpAgA3AgAgA0EoaiAGQShqKQIANwIAIANBIGogBkEgaikCADcCACADQRhqIAZBGGopAgA3AgAgA0EQaiAGQRBqKQIANwIAIANBCGogBkEIaikCADcCACAFIBdGBEAgEyEEDAILIANB1ABrIQogCSgCBCESIAkoAgAhIwJ/AkACQAJAAkACQEEEIAkoAggiDygCACIWQYCAgIB4cyAWQQBOG0EBaw4EAQIDBAALIAdBxABqIiQgFCASEJ0BIAcoAkghAyAHKAJEIg9BgICAgHhHDQggAygCCCEPIAMoAgQgJCAKIBIQnQEgBygCSCEDIAcoAkQiCkGAgICAeEcNCiADKAIEIA8gAygCCCIDIAMgD0sbEIEDIgogDyADayAKGyIDQQBKIANBAEhrDAQLIBIgFCAKEH8MAwsgIiAKKAIAQQhqIBUgA0HQAGsoAgAiAyADIBVLGxCBAyIKIBUgA2sgChsiA0EASiADQQBIawwCCyASIBQgChBuDAELIA8gEiAUIAoQSQshAwJAAkAgIy0ADEEBRwRAIAMhCgwBC0H/ASEKIANB/wFxQQFHDQELIARBMGshBCAFQTBqIQUgCEEwayEIIApB/wFxQf8BRg0BDAILCyAGIQQLIAQgESkCADcCACAEQShqIBgpAgA3AgAgBEEgaiAZKQIANwIAIARBGGogGikCADcCACAEQRBqIBspAgA3AgAgBEEIaiAcKQIANwIACyAMQTBrIQwgDUEwaiENIA5BAWoiDiAgRg0DDAELCyAHIAcoAkw2AkwgByADNgJIIAcgDzYCREGQzsAAQSsgB0HEAGpBgM7AAEHMzsAAEOwCAAsgByAHKAJMNgJMIAcgAzYCSCAHIAo2AkRBkM7AAEErIAdBxABqQYDOwABBvM7AABDsAgALQQEhAyAfQQJHDQALIAAgAUEwbEEwayIEaiEDIAIgBGohCCACIBBBMGxqIgRBMGshBQNAIAAgBCACIAkgBCACEOsBIgsbIgYpAgA3AgAgAEEoaiAGQShqKQIANwIAIABBIGogBkEgaikCADcCACAAQRhqIAZBGGopAgA3AgAgAEEQaiAGQRBqKQIANwIAIABBCGogBkEIaikCADcCACADIAUgCCAJIAggBRDrASIMGyIGKQIANwIAIANBKGogBkEoaikCADcCACADQSBqIAZBIGopAgA3AgAgA0EYaiAGQRhqKQIANwIAIANBEGogBkEQaikCADcCACADQQhqIAZBCGopAgA3AgAgBCALQTBsaiEEIAIgC0EBc0EwbGohAiAFIAxBUGxqIQUgDEEwbCAIakEwayEIIANBMGshAyAAQTBqIQAgEEEBayIQDQALDAELAAsgBUEwaiEDIAFBAXEEfyAAIAIgBCACIANJIgUbIgEpAgA3AgAgAEEoaiABQShqKQIANwIAIABBIGogAUEgaikCADcCACAAQRhqIAFBGGopAgA3AgAgAEEQaiABQRBqKQIANwIAIABBCGogAUEIaikCADcCACAEIAIgA09BMGxqIQQgAiAFQTBsagUgAgsgA0YgBCAIQTBqRnENABDvBAALIAdB0ABqJAALhBQBFH8jAEFAaiILJAACQCABQSFJBEAgACABIAIgAyAGECgMAQsgAkEwayEXAkACQAJAAkACQAJAA0AgBEUEQCAAIAEgAiADQQEgBhAs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IBAgG2ohBSAAIQcDQCAHIAUpAgA3AgAgB0EIaiAFQQhqKAIANgIAIAdBDGogESAKQf7///8Dc0EMbGoiEykCADcCACAHQRRqIBNBCGooAgA2AgAgBUEYayEFIAdBGGohByALIApBAmoiCkcNAAsLBEAgACAKQQxsaiIFIBEgCkF/c0EMbGoiBykCADcCACAFQQhqIAdBCGooAgA2AgALIAEgCUkNAkEAIQULIAgiAUEhTw0ACyAAIAggAiADIAYQMwwECyAJIAEgAUHAy8AAELYBAAsgACABQQxsakEAIAIgAyAGEDMMAgtBpMvAAEETQbDLwAAQngMLAAsgGkEQaiQAC+kRARl/IwBBQGoiByQAAkAgAUECSQ0AAkAgAUEQaiADTQRAQQEhCyABQQF2IRECQCABQQdLBEAgBCgCACIEIABBGGogABD2ASEGIABByABBMCAEIABByABqIABBMGoQ9gEiBRtqIQMgBCAAQTBByAAgBRtqIgggACAGQQFzQRhsaiIFIAMgBCADIAAgBkEYbGoiBhD2ASILGyAEIAggBRD2ASIKGyINIAYgAyAFIAobIAsbIg8Q9gEhDCACQRBqIAMgBiALGyIDQRBqKQIANwIAIAJBCGogA0EIaikCADcCACACIAMpAgA3AgAgAiANIA8gDBsiAykCADcCGCACIA8gDSAMGyIGKQIANwIwIAJBIGogA0EIaikCADcCACACQShqIANBEGopAgA3AgAgAkE4aiAGQQhqKQIANwIAIAJBQGsgBkEQaikCADcCACACQdgAaiAFIAggChsiA0EQaikCADcCACACQdAAaiADQQhqKQIANwIAIAIgAykCADcCSCAEIAAgEUEYbCIJaiIDQRhqIAMQ9gEhCCADQcgAQTAgBCADQcgAaiADQTBqEPYBIgYbaiEFIAQgA0EwQcgAIAYbaiILIAMgCEEBc0EYbGoiBiAFIAQgBSADIAhBGGxqIggQ9gEiChsgBCALIAYQ9gEiDRsiDyAIIAUgBiANGyAKGyIMEPYBIRIgAiAJaiIDQRBqIAUgCCAKGyIFQRBqKQIANwIAIANBCGogBUEIaikCADcCACADIAUpAgA3AgAgAyAPIAwgEhsiBSkCADcCGCADIAwgDyASGyIIKQIANwIwIANBIGogBUEIaikCADcCACADQShqIAVBEGopAgA3AgAg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AggiDCAKKAIARgRAIAoQ0QILIAooAgQgDEEwbGoiAiAKKQMoNwIEIAIgCzYCACACIAopA4ABNwIQIAJBDGogEygCADYCACACQRhqIBQpAwA3AgAgAkEgaiAOKQMANwIAIAJBKGogDykDADcCACAKIAxBAWo2AggMAwtBAUHHABDJBAALIAoQyQIgCigCACIABEAgCigCBCAAQTBsQQQQ5wQLIAMoAgAiACAAKAIAQQFrIgA2AgAgAA0FIAMQkQMMBQsACyANIBBJDQALDAELIA0gEE8NAANAIBUgDUEkbGoiAS0AIUECRg0BIAEoAgAiDSAQSQ0ACwsgCkFAayIBIApBCGooAgA2AgAgCkHMAGogA0EIaikCADcCACAKQdQAaiADQRBqKQIANwIAIAAgCikCACIgNwIAIAogAykCADcCRCAAQQhqIAEpAwA3AgAgAEEQaiAKQcgAaikDADcCACAAQRhqIApB0ABqKQMANwIAIABBIGogCkHYAGooAgA2AgAgCiAgNwM4IAAgGDoALCAAQQA2AiggACAFNgIkCyAKQaABaiQAC9UJAQ1/IAAgAEEUaigCACIEIABBCGooAgAiBklBDGxqIgogAEEkQRggAEEsaigCACAAQSBqKAIASSIFG2oiAyAAIAQgBk9BDGxqIgQgAEEYQSQgBRtqIgZBCGooAgAgBEEIaigCAEkiBRsgA0EIaigCACAKQQhqKAIASSIHGyIIQQhqKAIAIQkgBiAEIAMgBxsgBRsiC0EIaigCACEMIAJBCGoiDSADIAogBxsiA0EIaigCADYCACACIAMpAgA3AgAgAiALIAggCSAMSyIDGyIKKQIANwIMIAJBFGogCkEIaigCADYCACACQSBqIAggCyADGyIDQQhqKAIANgIAIAIgAykCADcCGCACQSxqIgkgBCAGIAUbIgNBCGooAgA2AgAgAkEkaiIKIAMpAgA3AgAgAEEwaiIDQRhBJCAAQdwAaigCACAAQdAAaigCAEkiBBtqIgYgAyAAQcQAaigCACIFIABBOGooAgAiB09BDGxqIgAgA0EkQRggBBtqIgQgBEEIaigCACADIAUgB0lBDGxqIgNBCGooAgBJIgUbIAZBCGooAgAgAEEIaigCAEkiBxsiCEEIaigCACEMIAMgBCAAIAcbIAUbIgtBCGooAgAhDiACQThqIg8gBCAD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AkEAQcznwAAQtgEACyABQQM6AB0gA0EBayECIAMEQCABIAI2AgQgAEEGOgAADAILQQAgAkEAQdznwAAQtgEAC0Hc5MAAQShB/OfAABDPBAALIAdBIGokAAu1BwIDfgR/IAFBwP///wdxBEBBACABQUBxayELIAAhCgNAIApBOGopAAAgBoUiB0IgiCIIIApBGGopAAAgBYUiBUIgiCIJfiAHQv////8PgyIHIAVC/////w+DIgV+hSAHIAl+IAUgCH6FQiCJhSEFIApBMGopAAAgBoUiB0IgiCIIIApBEGopAAAgBIUiBEIgiCIJfiAHQv////8PgyIHIARC/////w+DIgR+hSAHIAl+IAQgCH6FQiCJhSEEIApBKGopAAAgBoUiB0IgiCIIIApBCGopAAAgA4UiA0IgiCIJfiAHQv////8PgyIHIANC/////w+DIgN+hSAHIAl+IAMgCH6FQiCJhSEDIApBIGopAAAgBoUiB0IgiCIIIAopAAAgAoUiAkIgiCIJfiAHQv////8PgyIHIAJC/////w+DIgJ+hSAHIAl+IAIgCH6FQiCJhSECIApBQGshCiALQUBrIgsNAAsLIAMgBYUhAyACIASFIQIgAUE/cSIKRQRAIAIgA4UPCyABQRAgCiAKQRBNGyIKayELIAFBEE8EQCAAIAtqIgAgCkEPcSIBaiILIApBMHEiCkEQayIMaiINKQAIIAaFIgRCIIgiBSAAKQAIIAOFIgNCIIgiB34gBEL/////D4MiBCADQv////8PgyIDfoUgBCAHfiADIAV+hUIgiYUhBQJ+IA0pAAAgBoUiA0IgiCIEIAApAAAgAoUiAkIgiCIHfiADQv////8PgyIDIAJC/////w+DIgJ+hSADIAd+IAIgBH6FQiCJhSIEIAxFIAEgDHJBEUhyDQAaIAsgCkEgayIMaiINKQAIIAaFIgJCIIgiAyAAKQAYIAWFIgVCIIgiB34gAkL/////D4MiAiAFQv////8PgyIFfoUgAiAHfiADIAV+hUIgiYUhBSANKQAAIAaFIgJCIIgiAyAAKQAQIASFIgRCIIgiB34gAkL/////D4MiAiAEQv////8PgyIEfoUgAiAHfiADIAR+hUIgiYUiBCAMRSABIAxyQSFIcg0AGiAKIAtqIgFBKGspAAAgBoUiAkIgiCIDIAApACggBYUiBUIg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AQsgAiADQQJqIgRNBEBCACEJDAULIAEgBGosAABBv39KDQJCACEJIANBA2oiBCACTw0EIAEgBGosAABBQEgNBUKAgICAgOAADAMLQoCAgICAIAwCC0IAIQkgA0ECaiIEIAJPDQIgASAEaiwAAEG/f0wNAwtCgICAgIDAAAshCkKAgICAECEJCyAAIAogA62EIAmENwIEIABBATYCAA8LIARBAWohAwwCCyADQQFqIQMMAQsgAiADTQ0AA0AgASADaiwAAEEASA0BIAIgA0EBaiIDRw0ACwwCCyACIANLDQALCyAAIAI2AgggACABNgIEIABBADYCAAu/BQMOfwF+AW8jAEHgAGsiAyQAIAJBMGwhBAJAAkACQAJAIAJBqtWqFUsNAAJ/IARFBEBBBCEGQQAMAQtBBCEFIARBBBD5BCIGRQ0BIAILIQUgA0EANgIMIAMgBjYCCCADIAU2AgQgAkUNAyACQQJ0IQYgA0FAayEHIANByABqIQggA0HQAGohCSADQdgAaiEKQQAhBQNAIAEgBWooAgAiAiUBIRIgAhCsAwJAIBIQCyICBEAgAkEIayIEKAIAQQFHDQQgByACQRRqKQIANwMAIAggAkEcaikCADcDACAJIAJBJGopAgA3AwAgCiACQSxqKQIANwMAIAIoAgghDCACKAIEIQsgAikCDCERIARBADYCACADIBE3AzgCQCAEQX9GDQAgAkEEayICIAIoAgBBAWsiAjYCACACDQAgBEE8QQQQ5wQLIAtBgICAgHhHDQELQcTUwABBKBD8BAALIANBMGoiDSAKKQMANwMAIANBKGoiDiAJKQMANwMAIANBIGoiDyAIKQMANwMAIANBGGoiECAHKQMANwMAIAMgAykDODcDECADKAIMIgQgAygCBEYEQCADQQRqENECCyADKAIIIARBMGxqIgIgDDYCBCACIAs2AgAgAiADKQMQNwIIIAJBEGogECkDADcCACACQRhqIA8pAwA3AgAgAkEgaiAOKQMANwIAIAJBKGogDSkDADcCACADIARBAWo2AgwgBUEEaiIFIAZHDQALDAILIAUgBBDJBAALQYy0wABBPxD8BAALIAEgBkEEEOcECyADKAIIIQECQAJAIAMoAgQiBSADKAIMIgJNBEAgASEFDAELIAVBMGwhBCACRQRAQQQhBSABIARBBBDnBAwBCyAB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AGopAwA3AwAgASABKQNINwMQIAAgACgCAEEBazYCACADIAMoAgBBAWsiADYCACAARQRAIAFBDGoQqwILIAFB5ABqIAFBKGopAwA3AgAgAUHcAGogAikDADcCACABQdQAaiAEKQMANwIAIAEgASkDEDcCTEEwQQgQ+QQiAEUNAyAAQQA2AgggAEKBgICAEDcDACAAIAEpAkg3AgwgAEEUaiABQdAAaikCADcCACAAQRxqIAFB2ABqKQIANwIAIABBJGogAUHgAGopAgA3AgAgAEEsaiABQegAaigCADYCACABQfAAaiQAIABBCGoPCxD7BAsACxD9BAALQQhBMBD/BAAL2wQBBn8CQAJAIAAoAggiB0GAgIDAAXFFDQACQAJAAkACQCAHQYCAgIABcQRAIAAvAQ4iAw0BQQAhAgwCCyACQRBPBEAgASACEEMhAwwECyACRQRADAQLIAJBA3EhBgJAIAJBBEkEQAwBCyACQQxxIQgDQCADIAEgBWoiBCwAAEG/f0pqIARBAWosAABBv39KaiAEQQJqLAAAQb9/SmogBEEDaiwAAEG/f0pqIQMgCCAFQQRqIgVHDQALCyAGRQ0DIAEgBWohBANAIAMgBCwAAEG/f0pqIQMgBEEBaiEEIAZBAWsiBg0ACwwDCyABIAJqIQhBACECIAEhBCADIQUDQCAEIgYgCEYNAgJ/IAZBAWogBiwAACIEQQBODQAaIAZBAmogBEFgSQ0AGiAGQQNqIARBcEkNABogBkEEagsiBCAGayACaiECIAVBAWsiBQ0ACwtBACEFCyADIAVrIQMLIAMgAC8BDCIETw0AIAQgA2shBkEAIQNBACEFAkACQAJAIAdBHXZBA3FBAWsOAgABAgsgBiEFDAELIAZB/v8DcUEBdiEFCyAHQf///wBxIQggACgCBCEHIAAoAgAhAANAIANB//8DcSAFQf//A3FJBEBBASEEIANBAWohAyAAIAggBygCEBEAAEUNAQwDCwtBASEEIAAgASACIAcoAgwRAQANAUEAIQMgBiAFa0H//wNxIQEDQCADQf//A3EiAiABSSEEIAEgAk0NAiADQQFqIQMgACAIIAcoAhARAABFDQALDAELIAAoAgAgASACIAAoAgQoAgwRAQAhBAsgBAuIBQEUfyMAQSBrIgMkACADQQA2AhAgA0KAgICAwAA3AggCQAJA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7wEgASgCBCIARQ0FIAEoAgggAEEFdEEEEOcEDAULIAEoAgQiAARAIAEoAgggAEEBEOcECyABKAIYIgMEQCABKAIUIQADQCAAKAIAIgYEQCAAQQRqKAIAIAZBARDnBAsgAEEMaiEAIANBAWsiAw0ACwsgASgCECIARQ0EIAEoAhQgAEEMbEEEEOcEDAQLIAEoAgQiAEUNAyABKAIIIABBARDnBAwDCyABKAIEIgAEQCABKAIIIABBARDnBAsgASgCECIARQ0CIAEoAhQgAEEBEOcEDAILIAAEQCABKAIEIABBARDnBAsgASgCDCIABEAgASgCECAAQQEQ5wQLIAEoAhgiAARAIAEoAhwgAEEBEOcECyABKAIkIgBFDQEgASgCKCAAQQEQ5wQMAQsgASgCBCIABEAgASgCCCAAQQEQ5wQLIAEoAhAiAARAIAEoAhQgAEEBEOcECyABKAIcIgBFDQAgASgCICAAQQEQ5wQLIAJBAWoiAiAERw0ACwsLyAMCA38BfiMAQUBqIgIkAAJAAkACQAJAIABFDQAgAEEIayIDKAIAQQFHDQEgAkEoaiAAQSxqKQIANwMAIAJBIGogAEEkaikCADcDACACQRhqIABBHGopAgA3AwAgAkEQaiAAQRRqKQIANwMAIAJBCGogAEEMaikCADcDACAAKQIEIQUgA0EANgIAIAIgBTcDAAJAIANBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACADQTxBBBDnBAsgAUUNACABQQhrIgMgAygCAEEBaiIANgIAIABFDQIgASgCAA0DIAFBfzYCACACIAM2AjwgAiABNgI4IAIgAUEEaiIANgI0IAEoAgwiBCABKAIERgRAIAAQ0QILIAEoAgggBEEwbGoiACACKQMANwIAIABBKGogAkEoaikDADcCACAAQSBqIAJBIGopAwA3AgAgAEEYaiACQRhqKQMANwIAIABBEGogAkEQaikDADcCACAAQQhqIAJBCGopAwA3AgAgASAEQQFqNgIMIAFBADYCACADIAMoAgBBAWsiADYCACAARQRAIAJBPGoQ+AILIAJBQGskAA8LEPsEAAtBlbHAAEE/EPwECwALEP0EAAvFAwEQfyMAQRBrIgMkAAJAAkACQCABRQRAIABFDQEgAEEIayICKAIAQQFHDQIgACgCTCEMIAAoAkghBCAAKAJAIQ0gACgCPCEFIAAoAjghASAAKAI0IQYgACgCMCEHIAAoAighDiAAKAIkIQggACgCHCEPIAAoAhghCSAAKAIQIRAgACgCDCEKIAAoAgghCyAAKAIEIAJBADYCAAJAIAJBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACACQeQAQQQQ5wQLIAVBgICAgHhyQYCAgIB4RwRAIA0gBUEBEOcECyAKBEAgECAKQQEQ5wQLIAkEQCAPIAlBARDnBAsgCARAIA4gCEEBEOcECyABBEAgBiEAA0AgACgCACICBEAgAEEEaigCACACQQEQ5wQLIABBDGohACABQQFrIgENAAsLIAcEQCAGIAdBDGxBBBDnBAsgBEUgBEGFgICAeEhyRQRAIAwgBEEBEOcEC0UgC0GEAUlyDQMgCxCsAwwDCyAARQ0AIAMgAEEIayIANgIMIAAgACgCAEEBayIANgIAIAANAiADQQxqELsBDAILEPsEAAtBt8PAAEE/EPwEAAsgA0EQaiQAC7UDAQd/IwBB4ABrIgIkACAAKAIIIQQgAEEANgIIIAJBADYCQCACIAA2AjggAiAENgI8IAIgACgCBCIDIARBMGwiBWoiBjYCNCACIAQEfwNAIAJBKGogA0EoaikCADcDACACQSBqIANBIGopAgA3AwAgAkEYaiADQRhqKQIANwMAIAJBEGogA0EQaikCADcDACACQQhqIANBCGopAgA3AwAgAiADKQIANwMAIAIgARB5IANBMGohAyAFQTBrIgUNAAsgBgUgAws2AjAgAkEwahC3ASACQdgAaiIGIABBKGopAgA3AwAgAkHQAGoiBCAAQSBqKQIANwMAIAJByABqIgUgAEEYaikCADcDACACQUBrIgcgAEEQaikCADcDACACQThqIgggAEEIaikCADcDACACIAApAgA3AzAgASgCCCIDIAEoAgBGBEAgARDRAgsgASgCBCADQTBsaiIAIAIpAzA3AgAgAEEoaiAGKQMANwIAIABBIGogBCkDADcCACAAQRhqIAUpAwA3AgAgAEEQaiAHKQMANwIAIABBCGogCCkDADcCACABIANBAWo2AgggAkHgAGokAAvVAwIGfwR+IwBBQGoiBCQAAn9BACABKALEAUUNABogASkDyAEhCiAEQgA3AwggBEIANwMAIAQgCjcDECAEQQA6ADgg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AygCCCEEIAggAigCBCABEJ0BIAMoAhghACADKAIUIgFBgICAgHhHDQMgBiAAEO8CIAMoAgwhAiADKAIIIQACQAJAIARBgICAgHhHBEBBASEBIABBgICAgHhGDQIgByACIAUgAygCECIBIAEgBUsbEIEDIgYgBSABayAGGyIBQQBKIAFBAEhrIQEMAQtBf0EAIABBgICAgHhHGyEBIABBgICAgHhGDQILIAAEQCACIABBARDnBAsgBEGAgICAeEYNAQsgBEUNACAHIARBARDnBAsgAUF/RgsgA0EgaiQADwsgAyADKAIcNgIMIAMgADYCCCADIAQ2AgRBhNfAAEErIANBBGpB9NbAAEHA18AAEOwCAAsgAyADKAIcNgIMIAMgADYCCCADIAE2AgRBhNfAAEErIANBBGpB9NbAAEGw18AAEOwCAAvLBQIUfwF+IwBB0ABrIgUkACABKAIEIgggASgCACIDa0EwbiELAkACQCADIAhGBEBBBCEMQQAhCwwBCyALQQJ0IgNBBBD5BCIMRQ0BCyAFQRhqIAFBEGooAgA2AgAgBUEQaiABQQhqKQIANwMAIAUgASkCACIWNwMIIBanIgMgBSgCDCIPRwRAIAEoAhQhASAFQSRqIglBKGohECAJQSBqIREgCUEYaiESIAlBEGohEyAJQQhqIRQgDCEIA0AgAyIGKAIAIgNBgICAgHhHBEAgECAGQSxqKAIANgIAIBEgBkEkaikCADcCACASIAZBHGopAgA3AgAgEyAGQRRqKQIANwIAIBQgBkEMaikCADcCACAJIAZBBGopAgA3AgAgBSADNgIgIwBBQGoiAiQAIAVBIGoiBCgCCCEKIARBADYCCCACQQA2AhQgAiABNgIYIAIgBDYCDCACIAo2AhAgAiAEKAIEIgM2AgQgAiADIApBMGxqNgIIIAJBHGogAkEEahCFASACQThqIARBHGopAgA3AgAgAkEwaiAEQRRqKQIANwIAIAIgBCkCDDcCKCAELQAsIRUgBCgCKCEKIAQoAiQhAyABKAIIIg0gASgCAEYEQCABENECCyABKAIEIA1BMGxqIgcgAikCHDcCACAHIBU6ACwgByAKNgIoIAcgAzYCJCAHQSBqIAJBPGooAgA2AgAgB0EYaiACQTRqKQIANwIAIAdBEGogAkEsaikCADcCACAHQQhqIAJBJGopAgA3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A0EANgIAIAIgBTcDEAJAIANBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACADQRhBBBDnBAsgAUUNACABQQhrIgAgACgCAEEBaiIDNgIAIANFDQIgASgCAA0DIAFBfzYCACACIAA2AgwgAiABNgIIIAIgAUEEaiIENgIEIAEoAgwiAyABKAIERgRAIAQQ0QILIAEoAgggA0EwbGoiBCACKQMQNwIEIARBhYCAgHg2AgAgBEEMaiACQRhqKAIANgIAIAEgA0EBajYCDCABQQA2AgAgACAAKAIAQQFrIgA2AgAgAEUEQCACQQxqEPgCCyACQSBqJAAPCxD7BAALQZWxwABBPxD8BAsACxD9BAALugICBH8BfiMAQdAAayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAJByABqIgMgAEEgaikDADcDACACQUBrIgQgAEEYaikDADcDACACQThqIgUgAEEQaikDADcDACACQTBqIABBCGopAwA3AwAgACkDACEGIAFBADYCACACIAY3AygCQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUEwQQgQ5wQLIAJBIGogAykDADcDACACQRhqIAQpAwA3AwAgAkEQaiAFKQMANwMAIAIgAikDMDcDCCACQQhqEJkBDAMLIABFDQAgAiAAQQhrIgA2AiggACAAKAIAQQFrIgA2AgAgAA0CIAJBKGoQsQMMAgsQ+wQAC0HQ2cAAQT8Q/AQACyACQdAAaiQAC+MCAQV/IwBBIGsiAyQAIANBEGoiByABQQxqIAAQnQEgAygCFCEBAkAgAygCECIEQYCAgIB4RgRAIANBBGoiBSABEO8CIAMoAgwhASADKAIIIQQgAygCBCEGIAcgAkEMaiAAEJ0BIAMoAhQhACADKAIQIgJBgICAgHhHDQEgBSAAEO8CIAMoAgghACADKAIEIQVBACECIAMoAgwgAUYEQCAEIAAgARCBA0UhAgsgBQRAIAAgBUEBEOcECyAGBEAgBCAGQQEQ5wQLIANBIGokACACDwsgAyABNgIIIAMgBDYCBCADIAMoAhgiADYCDCADQRhqIAA2AgAgAyADKQIENwMQQayvwABBKyADQRBqQZyvwABB6K/AABDsAgALIAMgADYCCCADIAI2AgQgAyADKAIYIgA2AgwgA0EYaiAANgIAIAMgAykCBDcDEEGsr8AAQSsgA0EQakGcr8AAQdivwAAQ7AIAC44JARF/IwBBIGsiBiQAAkACQAJAAkACQAJAQQQgASgCACIFQYCAgIB4cyAFQQBOG0EBaw4EAQIDBAALIAZBgICAgHg2AgAMBAsgBkGBgICAeDYCAAwDCyAGQYKAgIB4NgIADAILIAZBg4CAgHg2AgAMAQsgBiABEO8CIAYgAjYCDAsCQAJAIARFDQAgBEEwbCEHQQAhBQNAIAZBEGogAyAFakEMaiACEOQBIAYoAhBBgICAgHhHBEAgACAGKQIQNwIAIABBCGogBkEYaigCADYCAAwDCyAHIAVBMGoiBUcNAAsgBiACNgIUIAYgATYCECAGIAY2AhggBiAGQRBqNgIcIARBAUYNACAEQRVPBEAgBkEcaiEIIwBBgCBrIgEkAAJAAkBBipYKIAQgBEGKlgpPGyICIAQgBEEBdmsiByACIAdLGyICQdYATwRAIAJBMGwhBSAHQarVqhVLDQJBBCEJIAVBBBD5BCIHRQ0CIAFBADYCCCABIAc2AgQgASACNgIAIAMgBCAHIAIgBEHBAEkgCBAsIAEQyQIgByAFQQQQ5wQMAQsgAyAEIAFB1QAgBEHBAEkgCBAsCyABQYAgaiQADAILIAkgBRDJBAALIAZBHGohASMAQTBrIggkAAJAIAQEQCAEQQFHBEAgAyAEQTBsaiENIANBMCIEaiEJIAhBDGohCyABKAIAIQwDQCAMIAkgCUEwaxDrAQRAIAhBKGoiDiAJQShqKQIANwMAIAhBIGoiDyAJQSBqKQIANwMAIAhBGGoiECAJQRhqKQIANwMAIAhBEGoiESAJQRBqKQIANwMAIAhBCGoiEiAJQQhqKQIANwMAIAggCSkCADcDACAEIQIDQAJAIAIgA2oiBSAFQTBrIgEpAgA3AgAgBUEoaiABQShqKQIANwIAIAVBIGogAUEgaikCADcCACAFQRhqIAFBGGopAgA3AgAgBUEQaiABQRBqKQIANwIAIAVBCGogAUEIaikCADcCACACQTBGBEAgAyEBDAELIAVB1ABrIQcgDCgCBCEKIAwoAgAhEwJ/AkACQAJAAkACQEEEIAwoAggiFCgCACIVQYCAgIB4cyAVQQBOG0EBaw4EAQIDBAALIAogCyAHEOMBDAQLIAogCyAHEH8MAwsgCCgCDEEIaiAHKAIAQQhqIAgoAhAiByAFQdAAaygCACIFIAUgB0sbEIEDIgogByAFayAKGyIFQQBKIAVBAEhrDAILIAogCyAHEG4MAQsgFCAKIAsgBxBJCyEFAkAgEy0ADEEBRwRAIAUhBwwBC0H/ASEHIAVB/wFxQQFHDQELIAJBMGshAiAHQf8BcUH/AUYNAQsLIAEgCCkDADcCACABQShqIA4pAwA3AgAgAUEgaiAPKQMANwIAIAFBGGogECkDADcCACABQRBqIBEpAwA3AgAgAUEIaiASKQMANwIACyAEQTBqIQQgCUEwaiIJIA1HDQALCyAIQTBqJAAMAQsACwsgAEGAgICAeDYCAAsgBigCACIAQYSAgIB4SCAARXJFBEAgBigCBCAAQQEQ5wQLIAZBIGokAAvPAgIIfwFvIwBBIGsiBCQAIAEoAgAhBiABKAIIIQcCQAJAIAEoAgQiAiABKAIMIgNGBEAgBiEFDAELIAYhBQNAIARBGGoiCCACQRBqKQIANwMAIARBEGoiCSACQQhqKQIANwMAIAQgAikCADcDCEEkQQQQ+QQiAUUNAiABQQA2AgggAUKBgICAEDcCACABIAQpAwg3AgwgAUEUaiAJKQMANwIAIAFBHGogCCkDADcCACABQQhqEAghChBjIgEgCiYBIAUgATYCACAFQQRqIQUgAkEYaiICIANHDQALCyADIAJrQRhuIQEgAiADRwRAA0AgAigCACIDIAMoAgBBAWsiAzYCACADRQRAIAIQkQMLIAJBGGohAiABQQFrIgENAAsLIAAgBjYCBCAAIAdBBmw2AgAgACAFIAZrQQJ2NgIIIARBIGokAA8LQQRBJBD/BAALxwIBA38jAEFAaiIFJAACQAJAAkAgAARAIABBCGsiBiAGKAIAQQFqIgc2AgAgB0UNASAAKAIAIgdBf0YNAiAAIAdBAWo2AgAgBSAGNgIYIAUgADYCFCAFIAI2AiQgBSABNgIgIAUgAjYCHCAFIABBCGoiATYCEAJAIANFBEBBgICAgHghAgwBCyAFQQhqIAMgBBCIASAFIAUoAgwiAjYCMCAFIAUoAgg2AiwLIAUgAjYCKCAFQTRqIAEgBUEcaiAFQShqEJIBIAAgACgCAEEBazYCACAGIAYoAgBBAWsiADYCACAARQRAIAVBGGoQUQtBGEEEEPkEIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACAFKQI0NwIMIABBFGogBUE8aigCADYCACAFQUBrJAAgAEEIag8LEPsECwALEP0EAAtBBEEYEP8EAAvMAgEGfwJ/AkAgAS0AHEEBSw0AAkAgAS0AHg0AIAEoAgAhAwJAAkAgASgCBA4CAwEACyADLQAAQS5HDQIgAy0AAUEvRg0BDAILIAMtAABBLkcNAQtBASABKAIEIgINARpBASACIAJBrOTAABC2AQALIAEoAgQhAkEACyIDIAEoAgAiBmohBUF/IQQgAyEBAkACQAJAAkACQAJ/A0BBACABIAJGDQEaIARBAWohBCABQQFqIQEgBkEBayIGIAJqIgctAABBL0cNAAsgAiAEayIDIAJLDQEgB0EBaiEFQQELIQZBCiEEIAIgA2siAQ4DBAECAwsgAyACIAJBnOTAABC2AQALIAUtAABBLkYNAgwBCyAFLQAAQS5HDQBBCCEEIAUtAAFBLkYNAQtBCSEECyAAIAE2AgwgACAFNgIIIAAgBDoABCAAIAEgBmo2AgAL6wcBDX8jAEEgayIGJAACQAJAAkACQAJAAkBBBCABKAIAIgVBgICAgHhzIAVBAE4bQQFrDgQBAgMEAAsgBkGAgICAeDYCAAwECyAGQYGAgIB4NgIADAMLIAZBgoCAgHg2AgAMAgsgBkGDgICAeDYCAAwBCyAGIAEQ7wIgBiACNgIMCwJAAkAgBEUNACAEQRhsIQhBACEFA0AgBkEQaiADIAVqIAIQ5AEgBigCEEGAgICAeEcEQCAAIAYpAhA3AgAgAEEIaiAGQRhqKAIANgIADAMLIAggBUEYaiIFRw0ACyAGIAI2AhQgBiABNgIQIAYgBjYCGCAGIAZBEGo2AhwgBEEBRg0AIARBFU8EQCAGQRxqIQJBACEFIwBBgCBrIggkAAJAAkBBlawUIAQgBEGVrBRPGyIBIAQgBEEBdmsiByABIAdLGyIJQasBTwRAIAlBGGwhASAHQdWq1SpLDQJBBCEFIAFBBBD5BCIHRQ0CIAMgBCAHIAkgBEHBAEkgAhAxIAcgAUEEEOcEDAELIAMgBCAIQaoBIARBwQBJIAIQMQsgCEGAIGokAAwCCyAFIAEQyQQACyAGQRxqIQEjAEEgayIHJAACQCAEBEAgBEEBRwRAIAMgBEEYbGohDCADQRgiBGohCSABKAIAIQsDQCALIAkgCUEYaxD2AQRAIAdBGGoiDSAJQRBqKQIANwMAIAdBEGoiDiAJQQhqKQIANwMAIAcgCSkCADcDCCAEIQIDQAJAIAIgA2oiBSAFQRhrIgEpAgA3AgAgBUEQaiABQRBqKQIANwIAIAVBCGogAUEIaikCADcCACACQRhGBEAgAyEBDAELIAVBMGshCCALKAIEIQogCygCACEPAn8CQAJAAkACQAJAQQQgCygCCCIQKAIAIhFBgICAgHhzIBFBAE4bQQFrDgQBAgMEAAsgCiAHQQhqIAgQ4wEMBAsgCiAHQQhqIAgQfwwDCyAHKAIIQQhqIAgoAgBBCGogBygCDCIIIAVBLGsoAgAiBSAFIAhLGxCBAyIKIAggBWsgChsiBUEASiAFQQBIawwCCyAKIAdBCGogCBBuDAELIBAgCiAHQQhqIAgQSQshBQJAIA8tAAxBAUcEQCAFIQgMAQtB/wEhCCAFQf8BcUEBRw0BCyACQRhrIQIgCEH/AXFB/wFGDQELCyABIAcpAwg3AgAgAUEQaiANKQMANwIAIAFBCGogDikDADcCAAsgBEEYaiEEIAlBGGoiCSAMRw0ACwsgB0EgaiQADAELAAsLIABBgICAgHg2AgALIAYoAgAiAEGEgICAeEggAEVyRQRAIAYoAgQgAEEBEOcECyAGQSBqJAALxAIBBH8gAEIANwIQIAACf0EAIAFBgAJJDQAaQR8gAUH///8HSw0AGiABQSYgAUEIdmciA2t2QQFxIANBAXRrQT5qCyICNgIcIAJBAnRBoKDBAGohBEEBIAJ0IgNBvKPBACgCAHFFBEAgBCAANgIAIAAgBDYCGCAAIAA2AgwgACAANgIIQbyjwQBBvKPBACgCACADcjYCAA8LAkACQCABIAQoAgAiAygCBEF4cUYEQCADIQIMAQsgAUEZIAJBAXZrQQAgAkEfRxt0IQUDQCADIAVBHXZBBHFqIgQoAhAiAkUNAiAFQQF0IQUgAiEDIAIoAgRBeHEgAUcNAAsLIAIoAggiASAANgIMIAIgADYCCCAAQQA2AhggACACNgIMIAAgATYCCA8LIARBEGogADYCACAAIAM2AhggACAANgIMIAAgADYCCAu/AgEBfyMAQTBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgAkEoaiAAQSxqKQIANwMAIAJBIGogAEEkaikCADcDACACQRhqIABBHGopAgA3AwAgAkEQaiAAQRRqKQIANwMAIAJBCGogAEEMaikCADcDACACIAApAgQ3AwAgAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBPEEEEOcECyACKAIMIgAgACgCAEEBayIANgIAIABFBEAgAkEMahCRAwsgAhDJAiACKAIAIgBFDQMgAigCBCAAQTBsQQQQ5wQMAwsgAEUNACACIABBCGsiADYCACAAIAAoAgBBAWsiADYCACAADQIgAhDKAgwCCxD7BAALQYy0wABBPxD8BAALIAJBMGokAAufBQIEfwF+IwBBEGsiASQAQdifwQAtAABBA0cEQCABQQE6AAsgASABQQtqNgIMIAFBDGohAAJAAkACQAJAAkBB2J/BAC0AAEEBaw4DAQMEAAtB2J/BAEECOgAAIAAoAgAiAC0AACAAQQA6AABFDQECQAJAAkBBkKTBACgCAEH/////B3EEQEGIpMEAKAIADQELQZSkwQAoAgANAUGcpMEAKAIAIQBBnKTBAEGsvsAANgIAQZikwQAoAgAhAkGYpMEAQQE2AgACQCACRQ0AIAAoAgAiAwRAIAIgAxEEAAsgACgCBCIDRQ0AIAIgAyAAKAIIEOcECwwCC0HU5cAAQekAQYjmwAAQngMLAAtB2J/BAEEDOgAADAMLQcS+wABB1QBBkNrAABCeAwALQai/wAAQ7gQAC0HuvsAAQfEAQZDawAAQngMACwsCQAJAAkACQEH8nsEAKAIAQQFGBEBBgJ/BACgCACEADAELQYSfwQAoAgAhAEGEn8EAQQA2AgAgAEUNASAAEQoAIQBB/J7BACgCAA0CQYCfwQAgADYCAEH8nsEAQQE2AgALIABB3snAAEEREPIEEOYCIQRBmKDBAC0AAEECRwRAENcBC0HwAUEIEPkEIgBFDQIgAEJ/NwPAASAAQgA3A7gBIABCBDcDsAEgAEIANwOoASAAQoCAgIDAADcDoAEgAEIANwKUASAAQQA2AhAgAEEANgIIIABCgYCAgBA3AwAgACAENwPYASAAQoCAgIDAADcD4AEgAEIANwPoASAAQaCrwAApAwA3A8gBIABB0AFqQairwAApAwA3AwAgAUEQaiQAIABBCGoPC0GYzMAAQdUAQcTMwAAQngMACyAAEMYEQdTMwABBHUHkzMAAEJ4DAAtBCEHwARD/BAALugIBAX8jAEEwayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAJBKGogAEEsaikCADcDACACQSBqIABBJGopAgA3AwAgAkEYaiAAQRxqKQIANwMAIAJBEGogAEEUaikCADcDACACQQhqIABBDGopAgA3AwAgAiAAKQIENwMAIAFBADYCAAJAIAFBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACABQTxBBBDnBAsgAigCDCIAIAAoAgBBAWsiADYCACAARQRAIAJBDGoQkQMLIAIoAgAiAEUNAyACKAIEIABBAnRBBBDnBAwDCyAARQ0AIAIgAEEIayIANgIAIAAgACgCAEEBayIANgIAIAANAiACEN8CDAILEPsEAAtBjLTAAEE/EPwEAAsgAkEwaiQAC9ECAQR/IwBBIGsiBSQAQQEhBwJAIAAtAAQNACAALQAFIQggACgCACIGLQAKQYABcUUEQCAGKAIAQYT1wABBqPXAACAIQQFxIggbQQJBAyAIGyAGKAIEKAIMEQEADQEgBigCACABIAIgBigCBCgCDBEBAA0BIAYoAgBBq/XAAEECIAYoAgQoAgwRAQANASADIAYgBCgCDBEAACEHDAELIAhBAXFFBEAgBigCAEGt9cAAQQMgBigCBCgCDBEBAA0BCyAFQQE6AA8gBUGQ9cAANgIUIAUgBikCADcCACAFIAYpAgg3AhggBSAFQQ9qNgIIIAUgBTYCECAFIAEgAhBdDQAgBUGr9cAAQQIQXQ0AIAMgBUEQaiAEKAIMEQAABEAMAQsgBSgCEEGH9cAAQQIgBSgCFCgCDBEBACEHCyAAQQE6AAUgACAHOgAEIAVBIGokACAAC44CAgF/AX4jAEEgayIEJAACQAJAAkAgACACTQRAIAEgAksNAUKAgICAECEFIAAgAU0NAiAEIAA2AgggBCABNgIMIAQgBSAEQQxqrYQ3AxggBCAFIARBCGqthDcDEEGbgsAAIARBEGogAxCeAwALIAQgADYCCCAEIAI2AgwgBEKAgICAECIFIARBDGqthDcDGCAEIAUgBEEIaq2ENwMQQcmDwAAgBEEQaiADEJ4DAAsgBCABNgIIIAQgAjYCDCAEQoCAgIAQIgUgBEEMaq2ENwMYDAELIAQgATYCCCAEIAI2AgwgBCAFIARBDGqthDcDGAsgBCAFIARBCGqthDcDEEGChMAAIARBEGogAxCeAwALrwIBBX8gACgCBCECIAAoAgAhASAAQoSAgIDAADcCACACIAFrQTBuIQQgACgCCCEFAkACQCABIAJGBEAgACgCECIBRQ0BIAAoAgwiAiAFKAIIIgBGDQIgAUEwbCIERQ0CIAUoAgQiAyAAQTBsaiADIAJBMGxqIAT8CgAADAILA0AgAUEMaiICKAIAIgMgAygCAEEBayIDNgIAIANFBEAgAhCRAwsgARDJAiABKAIAIgIEQCABQQRqKAIAIAJBMGxBBBDnBAsgAUEwaiEBIARBAWsiBA0ACyAAKAIQIgFFDQACQCAAKAIMIgIgBSgCCCIARg0AIAFBMGwiBEUNACAFKAIEIgMgAEEwbGogAyACQTBsaiAE/AoAAAsgBSAAIAFqNgIICw8LIAUgACABajYCCAu4AgICfwF+IwBBIGsiBiQAAkACQCAABEAgAEEIayIHKAIAQQFHDQEgBkEYaiAAQRRqKQIANwMAIAZBEGogAEEMaikCADcDACAAKQIEIQggB0EANgIAIAYgCDcDCAJAIAdBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACAHQSRBBBDnBAsgBiADIAQQUCAGKAIEIQMgBigCACEEQTxBBBD5BCIARQ0CIAAgBDYCECAAQQA2AgggAEKBgICAEDcCACAAIAYpAwg3AhggACACNgI0IAAgATYCMCAAIAM2AhQgACADNgIMIAAgBUEARzoAOCAAQSBqIAZBEGopAwA3AgAgAEEoaiAGQRhqKQMANwIAIAZBIGokACAAQQhqDwsQ+wQAC0Gnu8AAQT8Q/AQAC0EEQTwQ/wQAC9gCAgJ/An4jAEEwayIBJAACQAJAAkAgACkDACAAKQMIhFBFBEACQEH8nsEAKAIAQQFGBEBBgJ/BACgCACECDAELQYSfwQAoAgAhAkGEn8EAQQA2AgAgAkUNAyACEQoAIQJB/J7BACgCAA0EQYCfwQAgAjYCAEH8nsEAQQE2AgALIAEgAEEwaq1CgICAgNALhDcDKCABQRhqQZ2nwAAgAUEoahCGASACIAEoAhwiACABKAIgEPEEIAEoAhgiAkUNASAAIAJBARDnBAwBCyABQRhqIABBIGoQ3QEgASABKQMYQsCEPRC6AiABKAIgIQIgAEIANwMIIABCATcDACAAIAEpAwAiAyACQegHbq18IgQ3AxAgACABKQMIIAMgBFatfDcDGCAAEJICCyABQTBqJAAPC0GYzMAAQdUAQcTMwAAQngMACyACEMYEQdTMwABBHUHkzMAAEJ4DAAv5AQEDfyMAQRBrIgMkAAJ/AkAgASgCCCICQYCAgBBxRQRAIAJBgICAIHENASABQQFBACAAKAIAIANBBmoiARBmIgAgAWpBCiAAaxBLDAILIAAoAgAhAEEAIQIDQCACIANqQQ1qIABBD3EtAOL0QDoAACACQQFrIQIgAEEPSyAAQQR2IQANAAsgAUHy9MAAQQIgAiADakEOakEAIAJrEEsMAQsgACgCACEAQQAhAgNAIAIgA2pBDWogAEEPcS0A9PRAOgAAIAJBAWshAiAAQQ9LIABBBHYhAA0ACyABQfL0wABBAiACIANqQQ5qQQAgAmsQSwsgA0EQaiQAC6kCAQN/IAAoAgAiASgCRCIAQYCAgIB4RiAARXJFBEAgASgCSCAAQQEQ5wQLIAEoAhQiAARAIAEoAhggAEEBEOcECyABKAIgIgAEQCABKAIkIABBARDnBAsgASgCLCIABEAgASgCMCAAQQEQ5wQLIAEoAkAiAgRAIAEoAjwhAANAIAAoAgAiAwRAIABBBGooAgAgA0EBEOcECyAAQQxqIQAgAkEBayICDQALCyABKAI4IgAEQCABKAI8IABBDGxBBBDnBAsgASgCUCIAQYWAgIB4SCAARXJFBEAgASgCVCAAQQEQ5wQLAkAgASgCDEUNACABKAIQIgBBhAFJDQAgABCsAwsCQCABQX9GDQAgASABKAIEQQFrIgA2AgQgAA0AIAFB5ABBBBDnBAsLnwIBBn8jAEEQayIDJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiAigCAEEBRw0CIAAoAhghASAAKAIUIQQgACgCECEFIAAoAgghByAAKAIEIQYgAkEANgIAAkAgAkF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAJBKEEEEOcECyAGBEAgByAGQQEQ5wQLIAEEQCAEIQADQCAAKAIAIgIEQCAAQQRqKAIAIAJBARDnBAsgAEEMaiEAIAFBAWsiAQ0ACwsgBUUNAyAEIAVBDGxBBBDnBAwDCyAARQ0AIAMgAEEIayIANgIMIAAgACgCAEEBayIANgIAIAANAiADQQxqEJUCDAILEPsEAAtBlbHAAEE/EPwEAAsgA0EQaiQAC58CAQZ/IwBBEGsiAyQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgIoAgBBAUcNAiAAKAIYIQEgACgCFCEEIAAoAhAhBSAAKAIIIQcgACgCBCEGIAJBADYCAAJAIAJBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACACQShBBBDnBAsgBgRAIAcgBkEBEOcECyABBEAgBCEAA0AgACgCACICBEAgAEEEaigCACACQQEQ5wQLIABBDGohACABQQFrIgENAAsLIAVFDQMgBCAFQQxsQQQQ5wQMAwsgAEUNACADIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgA0EMahCVAgwCCxD7BAALQbDVwABBPxD8BAALIANBEGokAAuNAgEGfyAAKAIIIgQhAgJ/QQEgAUGAAUkNABpBAiABQYAQSQ0AGkEDQQQgAUGAgARJGwsiBiAAKAIAIARrSwR/IAAgBCAGQQFBARCIAiAAKAIIBSACCyAAKAIEaiECAkAgAUGAAU8EQCABQT9xQYB/ciEFIAFBBnYhAyABQYAQSQRAIAIgBToAASACIANBwAFyOgAADAILIAFBDHYhByADQT9xQYB/ciEDIAFB//8DTQRAIAIgBToAAiACIAM6AAEgAiAHQeABcjoAAAwCCyACIAU6AAMgAiADOgACIAIgB0E/cUGAf3I6AAEgAiABQRJ2QXByOgAADAELIAIgAToAAAsgACAEIAZqNgIIQQALiQIBBn8gACgCCCIEIQICf0EBIAFBgAFJDQAaQQIgAUGAEEkNABpBA0EEIAFBgIAESRsLIgYgACgCACAEa0sEfyAAIAQgBhCZAiAAKAIIBSACCyAAKAIEaiECAkAgAUGAAU8EQCABQT9xQYB/ciEFIAFBBnYhAyABQYAQSQRAIAIgBToAASACIANBwAFyOgAADAILIAFBDHYhByADQT9xQYB/ciEDIAFB//8DTQRAIAIgBToAAiACIAM6AAEgAiAHQeABcjoAAAwCCyACIAU6AAMgAiADOgACIAIgB0E/cUGAf3I6AAEgAiABQRJ2QXByOgAADAELIAIgAToAAAsgACAEIAZqNgIIQQALiQIBBn8gACgCCCIEIQICf0EBIAFBgAFJDQAaQQIgAUGAEEkNABpBA0EEIAFBgIAESRsLIgYgACgCACAEa0sEfyAAIAQgBhCpAiAAKAIIBSACCyAAKAIEaiECAkAgAUGAAU8EQCABQT9xQYB/ciEFIAFBBnYhAyABQYAQSQRAIAIgBToAASACIANBwAFyOgAADAILIAFBDHYhByADQT9xQYB/ciEDIAFB//8DTQRAIAIgBToAAiACIAM6AAEgAiAHQeABcjoAAAwCCyACIAU6AAMgAiADOgACIAIgB0E/cUGAf3I6AAEgAiABQRJ2QXByOgAADAELIAIgAToAAAsgACAEIAZqNgIIQQALiQIBBn8gACgCCCIEIQICf0EBIAFBgAFJDQAaQQIgAUGAEEkNABpBA0EEIAFBgIAESRsLIgYgACgCACAEa0sEfyAAIAQgBhCqAiAAKAIIBSACCyAAKAIEaiECAkAgAUGAAU8EQCABQT9xQYB/ciEFIAFBBnYhAyABQYAQSQRAIAIgBToAASACIANBwAFyOgAADAILIAFBDHYhByADQT9xQYB/ciEDIAFB//8DTQRAIAIgBToAAiACIAM6AAEgAiAHQeABcjoAAAwCCyACIAU6AAMgAiADOgACIAIgB0E/cUGAf3I6AAEgAiABQRJ2QXByOgAADAELIAIgAToAAAsgACAEIAZqNgIIQQALlAIBCX8jAEEQayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAAoAiwgACgCKCEDIAAoAiAhCCAAKAIcIQQgACgCFCEJIAAoAhAhBSAAKAIIIQogACgCBCEGIAFBADYCAAJAIAFBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACABQTxBBBDnBAsgBgRAIAogBkEBEOcECyAFBEAgCSAFQQEQ5wQLIAQEQCAIIARBARDnBAsgA0UNAyADQQEQ5wQMAwsgAEUNACACIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgAkEMahCxAgwCCxD7BAALQZWxwABBPxD8BAALIAJBEGokAAuKAgEJfyMAQSBrIgMkACACKAIEIQQgAigCACEJAkAgACABRwRAIAIoAgggBEEDdGohBSABIABrQQxuIQcDQCADQRRqIAAQ7wIgAygCGCEIIANBCGogAygCHCIBEMgCIAMoAgwhBiADKAIIIQogAyABEMgCIAMoAgAhAiADKAIEIgsEQCALIAIQ+QQhAgsgAkUNAiACQoGAgIAQNwIAIAEEQCACQQhqIAggAfwKAAALIAMoAhQiBgRAIAggBkEBEOcECyAFIAI2AgAgBUEEaiABNgIAIABBDGohACAFQQhqIQUgBEEBaiEEIAdBAWsiBw0ACwsgCSAENgIAIANBIGokAA8LIAogBhD/BAALjgIBA38gACgCECIDIAFLBEAgAiADSQRAIAAoAgQhAyAAKAIAIQUgACgCDCIEIAJBGGxqIQIgBCABQRhsaiEBQQACfwJAAkACQAJAAkBBBCAAKAIIIgAoAgAiBEGAgICAeHMgBEEAThtBAWsOBAECAwQACyADIAEgAhDjAQwECyADIAEgAhB/DAMLIAEoAgBBCGogAigCAEEIaiABKAIEIgAgAigCBCIBIAAgAUkbEIEDIgIgACABayACGyIAQQBKIABBAEhrDAILIAMgASACEG4MAQsgACADIAEgAhBJCyIAayAAIAUtAAwbQf8BcUH/AUYPCyACIANBiMTAABD3AgALIAEgA0H4w8AAEPcCAAuOAgEDfyAAKAIQIgMgAUsEQCACIANJBEAgACgCBCEDIAAoAgAhBSAAKAIMIgQgAkEYbGohAiAEIAFBGGxqIQFBAAJ/AkACQAJAAkACQEEEIAAoAggiACgCACIEQYCAgIB4cyAEQQBOG0EBaw4EAQIDBAALIAMgASACEOMBDAQLIAMgASACEH8MAwsgASgCAEEIaiACKAIAQQhqIAEoAgQiACACKAIEIgEgACABSRsQgQMiAiAAIAFrIAIbIgBBAEogAEEASGsMAgsgAyABIAIQbgwBCyAAIAMgASACEEkLIgBrIAAgBS0ADBtB/wFxQf8BRg8LIAIgA0GAysAAEPcCAAsgASADQfDJwAAQ9wIAC44CAQN/IAAoAhAiAyABSwRAIAIgA0kEQCAAKAIEIQMgACgCACEFIAAoAgwiBCACQRhsaiECIAQgAUEYbGohAUEAAn8CQAJAAkACQAJAQQQgACgCCCIAKAIAIgRBgICAgHhzIARBAE4bQQFrDgQBAgMEAAsgAyABIAIQ4wEMBAsgAyABIAIQfwwDCyABKAIAQQhqIAIoAgBBCGogASgCBCIAIAIoAgQiASAAIAFJGxCBAyICIAAgAWsgAhsiAEEASiAAQQBIawwCCyADIAEgAhBuDAELIAAgAyABIAIQSQsiAGsgACAFLQAMG0H/AXFB/wFGDwsgAiADQZDWwAAQ9wIACyABIANBgNbAABD3AgALjwIBBH8jAEEgayIBJAACQAJAIAAEQCAAQQhrIgMgAygCACIEQQFqIgI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgASADNgIUIAEgADYCECABIABBCGo2AgwCQCAAKAKQAUUEQCAAIAI2AgAgAyAENgIADAELIAFBgQE2AhggASAAQZQBaiABQRhqEJ0DIAEoAgQhAgJAAkAgASgCAEEBcQRAIAEgAjYCHCABQRxqEPcBIAJBhAFPDQEMAgsgAkGEAUkNAQsgAhCsAwsgAygCACECIAAgACgCAEEBazYCACADIAJBAWsiADYCACAADQAgAUEUahBRCyABQSBqJAAPCxD7BAsACxD9BAALlQICAn8BfiMAQSBrIgEkAAJAAkAgAARAIABBCGsiAigCAEEBRw0BIAFBGGogAEEcaigCADYCACABQRBqIABBFGopAgA3AwAgAUEIaiAAQQxqKQIANwMAIAApAgQhAyACQQA2AgAgASADNwMAAkAgAkF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAJBKEEEEOcEC0EoQQQQ+QQiAEUNAiAAQQA2AgggAEKBgICAEDcCACAAIAEpAwA3AgwgAEEUaiABQQhqKQMANwIAIABBHGogAUEQaikDADcCACAAQSRqIAFBGGooAgA2AgAgAUEgaiQAIABBCGoPCxD7BAALQZWxwABBPxD8BAALQQRBKBD/BAALjgICAn8BfiMAQSBrIgIkAAJAIABFIAFFckUEQCABQQhrIgMoAgBBAUcNASACQRhqIAFBFGopAgA3AwAgAkEQaiABQQxqKQIANwMAIAEpAgQhBCADQQA2AgAgAiAENwMIAkAgA0F/Rg0AIAFBBGsiASABKAIAQQFrIgE2AgAgAQ0AIANBJEEEEOcECyAAKAIARQRAIABBfzYCACAAKAIQIgEgASgCAEEBayIDNgIAIABBEGohASADRQRAIAEQkQMLIAEgAikDCDcCACABQRBqIAJBGGopAwA3AgAgAUEIaiACQRBqKQMANwIAIABBADYCACACQSBqJAAPCxD9BAALEPsEAAtBp7vAAEE/EPwEAAuUAgEBfyMAQSBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgAkEYaiAAQRRqKAIANgIAIAJBEGogAEEMaikCADcDACACIAApAgQ3AwggAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBIEEEEOcECyACKAIIIgAgACgCAEEBayIANgIAIABFBEAgAkEIahCRAwsgAigCECIAIAAoAgBBAWsiADYCACAADQMgAkEQahCRAwwDCyAARQ0AIAIgAEEIayIANgIIIAAgACgCAEEBayIANgIAIAANAiACQQhqEMwCDAILEPsEAAtBp7vAAEE/EPwEAAsgAkEgaiQAC4ICAQV/IwBBIGsiAiQAAkACQAJAIAFBAE4EQEEKIQZBCkEBEPkEIgNFDQIgAkEANgIcIAIgAzYCGCACQQo2AhQMAQtBASEEQQshBkELQQEQ+QQiA0UNAiADQS06AAAgAiADNgIYIAJBCzYCFCACQQE2AhwLIAIgASABQR91IgVzIAVrIAJBCmoQugQgAigCACEFIAIoAgQiASAGIARrSwRAIAJBFGogBCABQQFBARCIAiACKAIcIQQgAigCGCEDCyABBEAgAyAEaiAFIAH8CgAACyAAQQhqIAEgBGo2AgAgACACKQIUNwIAIAJBIGokAA8LQQFBChDJBAALQQFBCxDJBAALmhABEn8jAEHQAGsiCSQAIAkgATYCECAJIAA2AgwgCSABNgIIIAkgAiADEIgBIAkgBTYCKCAJIAQ2AiQgCSAFNgIgIAkgCSgCBCIANgIcIAkgCSgCADYCGCAJIAA2AhQgCUEwaiEKIAlBFGohCyAJQSBqIQ8gB0EARyEUIAhBAEchEEEAIQNBACEEIwBB8ABrIgckACAHQSBqIQ0gCUEIaiIRKAIEIhUiASARKAIIIgBqIQICQAJAIABFBEAgASEADAELIAEhAANAIAMiBAJ/IAAiAywAACIFQQBOBEAgBUH/AXEhCCAAQQFqDAELIAMtAAFBP3EhCCAFQR9xIQAgBUFfTQRAIABBBnQgCHIhCCADQQJqDAELIAMtAAJBP3EgCEEGdHIhCCAFQXBJBEAgCCAAQQx0ciEIIANBA2oMAQsgAEESdEGAgPAAcSADLQADQT9xIAhBBnRyciEIIANBBGoLIgAgA2tqIQMCQCAIQSBGIAhBCWtBBUlyDQAgCEGAAUkNAgJAAkACQAJAIAhBCHYiBUEWaw4bAQYGBgYGBgYGBgIGBgYGBgYGBgYGBgYGBgYDAAsgBQ0FIAhB/wFxLQDb6kBBAXFFDQUMAwsgCEGALUcNBAwCCyAIQf8BcS0A2+pAQQJxRQ0DDAELIAhBgOAARw0CCyAAIAJHDQALQQAhBEEAIQMMAQsgACACRg0AA0ACQCACIgVBAWsiAiwAACIIQQBIBEAgCEE/cQJ/IAVBAmsiAi0AACIIwCIOQUBOBEAgCEEfcQwBCyAOQT9xAn8gBUEDayICLQAAIgjAIg5BQE4EQCAIQQ9xDAELIA5BP3EgBUEEayICLQAAQQdxQQZ0cgtBBnRyC0EGdHIhCAsCQCAIQSBGIAhBCWtBBUlyDQAgCEGAAUkNAQJAAkACQAJAIAhBCHYiDkEWaw4bAAUFBQUFBQUFBQEFBQUFBQUFBQUFBQUFBQUCAwsgCEGALUYNAwwECyAIQf8BcS0A2+pAQQJxDQIMAwsgCEGA4ABHDQIMAQsgDg0BIAhB/wFxLQDb6kBBAXFFDQELIAAgAkcNAQwCCwsgAyAAayAFaiEDCyANIAMgBGs2AgQgDSABIARqNgIAAkACQAJAAkAgBygCJCIEQQBIDQAgBygCICEBAn8gBARAQQEhDCAEQQEQ+QQiAEUNAiAEBEAgACABIAT8CgAACyALKAIIIQMgCygCBCECIAQMAQsgBARAQQEgASAE/AoAAAsgB0E0aiIAIAsoAgQiAiALKAIIIgNBtLzAAEECEDwgB0ECNgJEIAdBqb7AAEGnvsAAIBAbNgJAIAcgD61CgICAgLAGhDcDWCAHIAdBQGutQoCAgIAwhDcDUCAHIACtQoCAgICwBoQ3A0ggB0EoakHZh8AAIAdByABqEIYBIAcoAjQiAARAIAcoAjggAEEBEOcECyAHKAIwIQQgBygCLCEAIAcoAigLIQEgB0EYaiAEEMgCIAcoAhwhBSAHKAIYIQggB0EQaiAEEMgCIAcoAhAhDCAHKAIUIg0EQCANIAwQ+QQhDAsgDEUNASAMQoGAgIAQNwIAIAQEQCAMQQhqIAAgBPwKAAALIAEEQCAAIAFBARDnBAsgByACNgJkIAcgAjYCYCAHIAsoAgA2AmggByACIANBDGxqNgJsIwBBEGsiDSQAIAdB4ABqIgUoAgghFiANQQhqIQ4gBSgCACIBIQIgBSgCDBojAEEQayIIJAACQAJAIAUoAgQiACAFKAIMIhdHBEADQCAFIABBDGoiAzYCBCAAQQRqKAIAIRIgACgCACETIAhBCGogAEEIaigCACILEMgCIAgoAgwhGCAIKAIIIRkgCCALEMgCIAgoAgAhACAIKAIEIhoEQCAaIAAQ+QQhAAsgAEUNAiAAQoGAgIAQNwIAIAsEQCAAQQhqIBIgC/wKAAALIBMEQCASIBNBARDnBAsgAiAANgIAIAJBBGogCzYCACACQQhqIQIgAyIAIBdHDQALCyAOIAI2AgQgDiABNgIAIAhBEGokAAwBCyAZIBgQ/wQACyAFKAIMIgMgBSgCBCIAa0EMbiECIA0oAgwhBSAAIANHBEADQCAAKAIAIgMEQCAAQQRqKAIAIANBARDnBAsgAEEMaiEAIAJBAWsiAg0ACwsgASEAAkAgFkEMbCICQQRxRQ0AIAJBeHEiA0UEQEEEIQAgASACQQQQ5wQMAQsgASACQQQgAxDgBCIADQBBBCADEP8EAAsgCiAANgIEIAogAkEDdjYCACAKIAUgAWtBA3Y2AgggDUEQaiQAIA8oAgQhAiAHQQhqIA8oAggiARDIAiAHKAIMIQMgBygCCCEFIAcgARDIAiAHKAIAIQAgBygCBCIIBEAgCCAAEPkEIQALIABFDQIgAEKBgICAEDcCACABBEAgAEEIaiACIAH8CgAACyAPKAIAIgMEQCACIANBARDnBAsgCiAGOgAeIAogATYCGCAKIAA2AhQgCiAENgIQIAogDDYCDCAKIBA6AB0gCiAUOgAcIBEoAgAiAARAIBUgAEEBEOcECyAHQfAAaiQADAMLIAwgBBDJBAALIAggBRD/BAALIAUgAxD/BAALIAlBADYCLEEsQQQQ+QQiAEUEQEEEQSwQ/wQACyAAQoGAgIAQNwIAIAAgCSkCLDcCCCAAQRBqIAlBNGopAgA3AgAgAEEYaiAJQTxqKQIANwIAIABBIGogCUHEAGopAgA3AgAgAEEoaiAJQcwAaigCADYCACAJQdAAaiQAIABBCGoLiQIBBH8jAEEQayIDJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiAigCAEEBRw0CIAAoAgwhASAAKAIIIQQgACgCBCEFIAJBADYCAAJAIAJBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACACQRhBBBDnBAsgAQRAIAQhAANAIAAoAgAiAiACKAIAQQFrIgI2AgAgAkUEQCAAEJEDCyAAQRhqIQAgAUEBayIBDQALCyAFRQ0DIAQgBUEYbEEEEOcEDAMLIABFDQAgAyAAQQhrIgA2AgwgACAAKAIAQQFrIgA2AgAgAA0CIANBDGoQqwIMAgsQ+wQAC0HAzcAAQT8Q/AQACyADQRBqJAALlwQBBn8jAEEwayIDJAACQAJAAkAgAARAIABBCGsiBiAGKAIAQQFqIgQ2AgAgBEUNASAAKAIAIgRBf0YNAiAAIARBAWo2AgAgAyAGNgIUIAMgADYCECADIAI2AiAgAyABNgIcIAMgAjYCGCADIABBBGoiATYCDCADQSRqIQIgA0EYaiIHKAIEIQQCQAJAAkACQAJAAkACQCAHKAIIQQdrDgIBAAILIAQpAABC89C9k8eu2bn0AFENAgwBCyAEQaLQwABBBxCBAw0AAkAgAgJ/IAEoAggiBUUEQEEEIQFBAAwBCyABKAIEIQhBDEEEEPkEIgFFDQEgASAIIAVBDGxqQQxrENABQQELIgU2AgggAiABNgIEIAIgBTYCAAwDC0EEQQwQ/wQACyACIAEQfQwBCyACAn8gASgCCEUEQEEEIQFBAAwBCyABKAIEIQVBDEEEEPkEIgFFDQIgASAFENABQQELIgU2AgggAiABNgIEIAIgBTYCAAsgBygCACIBBEAgBCABQQEQ5wQLDAELQQRBDBD/BAALIAAgACgCAEEBazYCACAGIAYoAgBBAWsiADYCACAARQRAIANBFGoQ7QELQRhBBBD5BCIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAykCJDcCDCAAQRRqIANBLGooAgA2AgAgA0EwaiQAIABBCGoPCxD7BAsACxD9BAALQQRBGBD/BAALiQIBBH8jAEEQayIDJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiAigCAEEBRw0CIAAoAgwhASAAKAIIIQQgACgCBCEFIAJBADYCAAJAIAJBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACACQRhBBBDnBAsgAQRAIAQhAANAIAAoAgAiAiACKAIAQQFrIgI2AgAgAkUEQCAAEJEDCyAAQRhqIQAgAUEBayIBDQALCyAFRQ0DIAQgBUEYbEEEEOcEDAMLIABFDQAgAyAAQQhrIgA2AgwgACAAKAIAQQFrIgA2AgAgAA0CIANBDGoQqwIMAgsQ+wQAC0HQ2cAAQT8Q/AQACyADQRBqJAALgAIBCn8gASgCCCICQRhsIQQCQAJAIAJB1arVKksNAAJAIARFBEBBBCEGDAELIAEoAgQhAUEEIQUgBEEEEPkEIgZFDQEgAkUNACACIQUDQCAEIAdGDQEgASgCACIJIAkoAgBBAWoiCDYCACAIRQ0DIAEoAhAhCiABKAIMIQsgASgCCCEIIAYgB2oiAyAJNgIAIANBFGogASgCFDYCACADQRBqIAo2AgAgA0EMaiALNgIAIANBCGogCDYCACADQQRqIAEoAgQ2AgAgB0EYaiEHIAFBGGohASAFQQFrIgUNAAsLIAAgAjYCCCAAIAY2AgQgACACNgIADwsgBSAEEMkECwALugIBAX8jAEEQayIHJAAgByAENgIAIAcgBjYCBCAEIAZGBEAgACgCACABIAIgACgCBCgCDBEBACEGIAdBADoADSAHIAY6AAwgByAANgIIAkAgBEUNAANAIAdBCGogAygCACADQQRqKAIAIAVB0PfAABC1ASEAIAVBCGohBSADQQhqIQMgBEEBayIEDQALIActAA0iASAHLQAMIgJyIQYgAkEBcSABQQFHcg0AIAAoAgAiAC0ACkGAAXFFBEAgACgCAEGx9cAAQQIgACgCBCgCDBEBACEGDAELIAAoAgBBsPXAAEEBIAAoAgQoAgwRAQAhBgsgB0EQaiQAIAZBAXEPCyMAQRBrIgAkACAAIAdBBGo2AgwgACAHNgIIIABBCGpB7J3BACAAQQxqQeydwQBBACADQeD3wAAQ1QEAC6kCAgR/AX4jAEEQayIDJAACQAJAAkAgAARAIAAoAgAiAUF/Rg0BIAAgAUEBajYCAAJAAkACQAJAAkAgACgCBCIEQYSAgIB4RwRAQYCAgIB4IQJBBCAEQYCAgIB4cyAEQQBOG0EBaw4EAQIDBAULIAAgATYCAEEAIQAMCAtBgYCAgHghAgwDC0GCgICAeCECDAILQYOAgIB4IQIMAQsgA0EEaiAAQQRqEO8CIAMpAgghBSADKAIEIQIgACgCAEEBayEBCyAAIAE2AgAgAC0AECEBQRxBBBD5BCIARQ0CIAAgAToAGCAAIAU3AhAgACACNgIMIABBADYCCCAAQoGAgIAQNwIAIABBCGohAAwDCxD7BAALEP0EAAtBBEEcEP8EAAsgA0EQaiQAIAALogIBBH8jAEEgayIFJABBASEGAkAgACgCACIHIAEgAiAAKAIEIggoAgwiAREBAA0AAkAgAC0ACkGAAXFFBEAgB0GJ9cAAQQEgAREBAA0CIAMgACAEKAIMEQAARQ0BDAILIAdBivXAAEECIAERAQANASAFQQE6AA8gBSAINgIEIAUgBzYCACAFQZD1wAA2AhQgBSAAKQIINwIYIAUgBUEPajYCCCAFIAU2AhAgAyAFQRBqIAQoAgwRAAANASAFKAIQQYf1wABBAiAFKAIUKAIMEQEADQELAkAgAg0AIAAtAApBgAFxDQAgACgCAEGN9cAAQQEgACgCBCgCDBEBAA0BCyAAKAIAQYz1wABBASAAKAIEKAIMEQEAIQYLIAVBIGokACAGC/oBAQR/IwBBIGsiAyQAAkACQCAABEAgAEEIayIFIAUoAgBBAWoiBDYCACAERQ0BIAAoAgAiBEF/Rg0CIAAgBEEBajYCACADIAU2AhwgAyAANgIYIAMgAEEIaiIENgIUIANBCGogBCABIAIQekEAIQQCQCADKAIIQQFxRQ0AIAMoAgwiBiAAKAKgAU8NACAAKAKcASAGQSRsaiIGKAIAQYCAgIB4Rg0AIAYtABghBAsgAgRAIAEgAkEBEOcECyAAIAAoAgBBAWs2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCADQRxqEFELIANBIGokACAEDwsQ+wQLAAsQ/QQAC/UBAQF/IwBBQGoiByQAIAcgATYCBCAHIAA2AgAgByADNgIMIAcgAjYCCCAHQfCewQAoAgA2AhQgB0HknsEAKAIANgIQIAQEQCAHIAU2AhwgByAENgIYIAcgB0EIaq1CgICAgMAXhDcDOCAHIAetQoCAgIDAF4Q3AzAgByAHQRhqrUKAgICA0BeENwMoIAcgB0EQaq1CgICAgIAXhDcDIEGChcAAIAdBIGogBhCeAwALIAcgB0EIaq1CgICAgMAXhDcDMCAHIAetQoCAgIDAF4Q3AyggByAHQRBqrUKAgICAgBeENwMgQcuEwAAgB0EgaiAGEJ4DAAvgAgEHfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCICAAKAIcIQMgACgCFCEHIAAoAhAhBCAAKAIIIQggACgCBCEFIAFBADYCAAJAIAFBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACABQTBBBBDnBAsgBQRAIAggBUEBEOcECyAEBEAgByAEQQEQ5wQLIANFDQMgA0EBEOcEDAMLIABFDQAgAiAAQQhrIgA2AgwgACAAKAIAQQFrIgA2AgAgAA0CIAJBDGooAgAiACgCDCIBBEAgACgCECABQQEQ5wQLIAAoAhgiAQRAIAAoAhwgAUEBEOcECyAAKAIkIgEEQCAAKAIoIAFBARDnBAsCQCAAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBMEEEEOcECwwCCxD7BAALQZWxwABBPxD8BAALIAJBEGokAAueAgICfgJ/IwBBMGsiAiQAIAJBCGogAkEoaq0iAEKml8SJDX5CIIkgAEKs6/7GCX6FIgCnQZ4Bc60iAUKs6/7GCX4gAEIgiCIAQqaXxIkNfoUgAUKml8SJDX4gAEKs6/7GCX6FQiCJhSIAp0H4n8EAc60iAUKs6/7GCX4gAEIgiCIAQqaXxIkNfoUgAUKml8SJDX4gAEKs6/7GCX6FQiCJhRBZAkADQAJAQZigwQBBmKDBAC0AACIDQQEgAxs6AAAgA0UNACADQQJHDQEMAgsLQfifwQAgAikDCDcDAEGYoMEAQQI6AABBkKDBACACQSBqKQMANwMAQYigwQAgAkEYaikDADcDAEGAoMEAIAJBEGopAwA3AwALIAJBMGokAAuDAgICfwJ+IwBBIGsiCSQAIAlBGGogACABEIgBQYCAgIB4IQAgCSgCHCEKIAkoAhghAQJAIAJFBEBBgICAgHghAgwBCyAJQRBqIAIgAxCIASAJNQIQIAkoAhQiAq1CIIaEIQwLIAcEQCAJQQhqIAcgCBCIASAJNQIIIAkoAgwiAK1CIIaEIQsLQTxBBBD5BCIDRQRAQQRBPBD/BAALIAMgBTYCNCADIAQ2AjAgAyALNwIoIAMgADYCJCADIAw3AhwgAyACNgIYIAMgATYCECADQQA2AgggA0KBgICAEDcCACADIAZBAEc6ADggAyAKNgIUIAMgCjYCDCAJQSBqJAAgA0EIagvWBgINfwF+IwBBIGsiCCQAAkACQAJAIAAEQCAAQQhrIgsgCygCAEEBaiICNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAggCzYCECAIIAA2AgwgCCAAQQhqIgY2AgggCEEUaiENIwBBIGsiAyQAIANBADYCDCADQoCAgIDAADcCBAJAIAYoAhAiAkUNACACQTBsIQQgBigCDCECQQQhBwNAIANBEGogAhBWIAMoAhgiBUEMbCEJIAMoAhAhCiADKAIUIQYgAygCBCABayAFSQRAIANBBGogASAFQQRBDBCIAiADKAIIIQcgAygCDCEBCyAJBEAgByABQQxsaiAGIAn8CgAACyADIAEgBWoiATYCDCAKBEAgBiAKQQxsQQQQ5wQLIAJBMGohAiAEQTBrIgQNAAsgAyADQR9qNgIQIAFBAkkNACABQRVPBEAgA0EQaiEFQQAhBCMAQYAgayIJJAACQAJAQarYKCABIAFBqtgoTxsiAiABIAFBAXZrIgogAiAKSxsiBkHWAk8EQCAGQQxsIQwgCkGq1arVAEsNAkEEIQQgDEEEEPkEIgJFDQIgByABIAIgBiABQcEASSAFEDcgAiAMQQQQ5wQMAQsgByABIAlB1QIgAUHBAEkgBRA3CyAJQYAgaiQADAILIAQgDBDJBAALAkAgAQRAIAFBAUcEQCAHIAFBDGxqIQogB0EMIgFqIQQDQCAEQQhqKAIAIgkgBEEEaygCAEkEQCAEKQIAIQ4gASECAn8DQCACIAdqIgUgBUEMayIGKQIANwIAIAVBCGogBkEIaigCADYCACAHIAJBDEYNARogAkEMayECIAkgBUEQaygCAEkNAAsgAiAHagsgDjcCACAFQQRrIAk2AgALIAFBDGohASAEQQxqIgQgCkcNAAsLDAELAAsLIA0gAykCBDcCACANQQhqIANBDGooAgA2AgAgA0EgaiQAIAAgACgCAEEBazYCACALIAsoAgBBAWsiADYCACAARQRAIAhBEGoQ+QILQRhBBBD5BCIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgCCkCFDcCDCAAQRRqIAhBHGooAgA2AgAgCEEgaiQAIABBCGoPCxD7BAsACxD9BAALQQRBGBD/BAALggICA38BfiMAQRBrIgIkAAJAIAAEQAJAIAFFBEBBhICAgHghBAwBCyABQQhrIgMoAgBBAUcNAiACQQhqIAFBEGooAgA2AgAgASgCBCEEIAEpAgghBSADQQA2AgAgAiAFNwMAIANBf0YNACABQQRrIgEgASgCAEEBayIBNgIAIAENACADQRxBBBDnBAsgACgCAEUEQCAAQX82AgAgACgCBCIBQYWAgIB4SCABRXJFBEAgACgCCCABQQEQ5wQLIAAgBDYCBCAAIAIpAwA3AgggAEEANgIAIABBEGogAkEIaigCADYCACACQRBqJAAPCxD9BAALEPsEAAtBwM3AAEE/EPwEAAuCAgEEfyMAQSBrIgMkAEEBIQUCQCAALQAEDQAgAC0ABSEGAkAgACgCACIELQAKQYABcUUEQCAGQQFxRQ0BIAQoAgBBhPXAAEECIAQoAgQoAgwRAQBFDQEMAgsgBkEBcUUEQCAEKAIAQYb1wABBASAEKAIEKAIMEQEADQILIANBAToADyADQZD1wAA2AhQgAyAEKQIANwIAIAMgBCkCCDcCGCADIANBD2o2AgggAyADNgIQIAEgA0EQaiACKAIMEQAADQEgAygCEEGH9cAAQQIgAygCFCgCDBEBACEFDAELIAEgBCACKAIMEQAAIQULIABBAToABSAAIAU6AAQgA0EgaiQAC/IBAQF/IwBBIGsiAiQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgEoAgBBAUcNAiACQRhqIABBFGopAgA3AwAgAkEQaiAAQQxqKQIANwMAIAIgACkCBDcDCCABQQA2AgACQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUEkQQQQ5wQLIAIoAggiACAAKAIAQQFrIgA2AgAgAA0DIAJBCGoQkQMMAwsgAEUNACACIABBCGsiADYCCCAAIAAoAgBBAWsiADYCACAADQIgAkEIahD+AgwCCxD7BAALQae7wABBPxD8BAALIAJBIGokAAv8AQMFfgN/AXxB4J/BAC0AAEEBRwRAEM0CCwJAQdyfwQAoAgAQigUiCiAKnSIKoUQAAAAAgIQuQaIQ7QL8ByIFQoCU69wDgCIGIAr8ByIEQugHgCICfCAFIAZCgJTr3AN+facgBCACQugHfn2nQcCEPWxqIglB/5Pr3ANLIgetfCIEIAEpAwAiAlQNACAEIAJ9IQIgCUGAlOvcA2sgCSAHGyIHIAEoAggiAUkEQCACUA0BIAdBgJTr3ANqIQcgAkIBfSECCyAHIAFrIghBgJTr3ANJBEAgAiEDDAELIAhBgJTr3ANrIQggAkIBfCEDCyAAIAg2AgggACADNwMAC94BAgN+An8CQCABQfD///8HcSIIRQ0AIAAgAUEPcWohCQNAIAAgCCAJaiIBTw0BIAFBCGspAAAgBIUiBUIgiCIGIABBCGopAAAgA4UiA0IgiCIHfiAFQv////8PgyIFIANC/////w+DIgN+hSAFIAd+IAMgBn6FQiCJhSEDIAFBEGspAAAgBIUiBUIgiCIGIAApAAAgAoUiAkIgiCIHfiAFQv////8PgyIFIAJC/////w+DIgJ+hSAFIAd+IAIgBn6FQiCJhSECIABBEGohACAIQRBrIggNAAsLIAIgA4ULoAcDEH8BfgFvIwBBEGsiCCQAIAAEQCAIQQhqIQkjAEHgAGsiAyQAIAJBMGwhBgJAAkACQAJAIAJBqtWqFUsNAAJ/IAZFBEBBBCEFQQAMAQtBBCEEIAZBBBD5BCIFRQ0BIAILIQQgA0EANgIMIAMgBTYCCCADIAQ2AgQgAkUNAyACQQJ0IQogA0FAayELIANByABqIQwgA0HQAGohDSADQdgAaiEOQQAhBANAIAEgBGooAgAiAiUBIRQgAhCsAwJAIBQQDCICBEAgAkEIayIFKAIAQQFHDQQgCyACQRRqKQIANwMAIAwgAkEcaikCADcDACANIAJBJGopAgA3AwAgDiACQSxqKQIANwMAIAIoAgghESACKAIEIQ8gAikCDCETIAVBADYCACADIBM3AzgCQCAFQX9GDQAgAkEEayICIAIoAgBBAWsiAjYCACACDQAgBUE8QQQQ5wQLIA9BgICAgHhHDQELQcTUwABBKBD8BAALIANBMGoiEiAOKQMANwMAIANBKGoiBiANKQMANwMAIANBIGoiBSAMKQMANwMAIANBGGoiAiALKQMANwMAIAMgAykDODcDECADKAIMIhAgAygCBEYEQCADQQRqENECCyADKAIIIBBBMGxqIgcgETYCBCAHIA82AgAgByADKQMQNwIIIAdBEGogAikDADcCACAHQRhqIAUpAwA3AgAgB0EgaiAGKQMANwIAIAdBKGogEikDADcCACADIBBBAWo2AgwgBEEEaiIEIApHDQALDAILIAQgBhDJBAALQYy0wABBPxD8BAALIAEgCkEEEOcECyADKAIIIQECQAJAAkAgAygCBCICIAMoAgwiBU0EQCABIQQMAQsgAkEwbCECIAVFBEBBBCEEIAEgAkEEEOcEDAELIAEgAkEEIAVBMGwiARDgBCIERQ0BCyAJIAU2AgQgCSAENgIAIANB4ABqJAAMAQtBBCABEMkEAAsgACgCAEUEQCAIKAIMIQYgCCgCCCEFIABBfzYCACAAKAIYIgEEQCAAKAIUQQxqIQIDQCACKAIAIgQgBCgCAEEBayIENgIAIARFBEAgAhCRAwsgAkEMaygCACIEBEAgAkEIaygCACAEQQJ0QQQQ5wQLIAJBMGohAiABQQFrIgENAAsLIAAoAhAiAQRAIAAoAhQgAUEwbEEEEOcECyAAIAU2AhQgAEEANgIAIAAgBjYCGCAAIAY2AhAgCEEQaiQADwsQ/QQACxD7BAAL/AECA38BfiMAQTBrIgIkACABKAIAQYCAgIB4RgRAIAEoAgwhAyACQSxqIgRBADYCACACQoCAgIAQNwIkIAJBJGpBhOXAACADKAIAIgMoAgAgAygCBBBfGiACQSBqIAQoAgAiAzYCACACIAIpAiQiBTcDGCABQQhqIAM2AgAgASAFNwIACyABKQIAIQUgAUKAgICAEDcCACACQRBqIgMgAUEIaiIBKAIANgIAIAFBADYCACACIAU3AwhBDEEEEPkEIgFFBEBBBEEMEP8EAAsgASACKQMINwIAIAFBCGogAygCADYCACAAQYzowAA2AgQgACABNgIAIAJBMGokAAuJAgEDfyMAQSBrIgIkACAAKAIAIQQgAAJ/QQEgAC0ACA0AGiAAKAIEIgMtAApBgAFxRQRAQQEgAygCAEGE9cAAQYn1wAAgBBtBAkEBIAQbIAMoAgQoAgwRAQANARogASADQYjFwAAoAgARAAAMAQsgBEUEQEEBIAMoAgBBivXAAEECIAMoAgQoAgwRAQANARoLIAJBAToADyACQZD1wAA2AhQgAiADKQIANwIAIAIgAykCCDcCGCACIAJBD2o2AgggAiACNgIQQQEgASACQRBqQYjFwAAoAgARAAANABogAigCEEGH9cAAQQIgAigCFCgCDBEBAAs6AAggACAEQQFqNgIAIAJBIGokAAvuAQIBfgN/IwBBEGsiAyQAIAAoAgAhACADIAEQzAMgACgCDCIEBEAgACgCACIBQQhqIQAgASkDAEJ/hUKAgYKEiJCgwIB/gyECA0AgAlAEQANAIAFBoAFrIQEgACkDACAAQQhqIQBCgIGChIiQoMCAf4MiAkKAgYKEiJCgwIB/UQ0ACyACQoCBgoSIkKDAgH+FIQILIAMgASACeqdBA3ZBbGxqIgVBFGs2AgggAyAFQQxrNgIMIAMgA0EIakHQ28AAIANBDGpB4NvAABDsASACQgF9IAKDIQIgBEEBayIEDQALCyADEIoDIANBEGokAAv8AQEDfyMAQRBrIgMkACADQQRqIgUgASAAEJ0BIAMoAgghAQJAIAMoAgQiBEGAgICAeEYEQCABKAIIIQQgASgCBCAFIAIgABCdASADKAIIIQAgAygCBCICQYCAgIB4Rw0BIAAoAgQgBCAAKAIIIgAgACAESxsQgQMhASADQRBqJAAgASAEIABrIAEbIgBBAEogAEEASGsPCyADIAMoAgw2AgwgAyABNgIIIAMgBDYCBEGQzsAAQSsgA0EEakGAzsAAQczOwAAQ7AIACyADIAMoAgw2AgwgAyAANgIIIAMgAjYCBEGQzsAAQSsgA0EEakGAzsAAQbzOwAAQ7AIAC+gBAQN/IwBBIGsiAyQAAkACQCACKALcASICIAEoAhRHBEAgAyACNgIMIAMgA0EMaq1CgICAgBCENwMYIAMgAUEUaq1CgICAgBCENwMQIANB+oLAACADQRBqEIYBQQAhAiADKAIIIgFBAEgNAiADKAIEIQUCQCABRQRAQQEhBAwBC0EBIQIgAUEBEPkEIgRFDQMLIAEEQCAEIAUgAfwKAAALIAAgATYCCCAAIAQ2AgQgACABNgIAIAMoAgAiAEUNASAFIABBARDnBAwBCyAAQYCAgIB4NgIACyADQSBqJAAPCyACIAEQyQQAC+YBAgN/AX4jAEEQayIDJAAgAARAAkAgAUUEQEGAgICAeCEEDAELIANBCGogASACEIgBIAM1AgggAygCDCIErUIghoQhBgsgACgCAEUEQCAAQX82AgACQCAAKAIcIgFBgICAgHhGDQAgACgCJCICBEAgACgCICEBA0AgASgCACIFBEAgAUEEaigCACAFQQEQ5wQLIAFBDGohASACQQFrIgINAAsgACgCHCEBCyABRQ0AIAAoAiAgAUEMbEEEEOcECyAAIAY3AiAgACAENgIcIABBADYCACADQRBqJAAPCxD9BAALEPsEAAvmAQIDfwF+IwBBEGsiAyQAIAAEQAJAIAFFBEBBgICAgHghBAwBCyADQQhqIAEgAhCIASADNQIIIAMoAgwiBK1CIIaEIQYLIAAoAgBFBEAgAEF/NgIAAkAgACgCECIBQYCAgIB4Rg0AIAAoAhgiAgRAIAAoAhQhAQNAIAEoAgAiBQRAIAFBBGooAgAgBUEBEOcECyABQQxqIQEgAkEBayICDQALIAAoAhAhAQsgAUUNACAAKAIUIAFBDGxBBBDnBAsgACAGNwIUIAAgBDYCECAAQQA2AgAgA0EQaiQADwsQ/QQACxD7BAAL1QoBC38jAEEgayIHJAACQAJAAkAgAS0ADkUNACACKAIURQ0AIAAgAigCEBDvAgwBCyABKAIAQYCAgIB4RwRAIAAgAhDvAgwBCyACKAIIIQMgAigCBCECIAEtAA1FBEAjAEFAaiIEJAAgBCADBH8gAi0AAEEvRgVBAAs6AD4gBEEGOgAoIAQgAzYCJCAEIAI2AiAgBEGBBDsBPCAEQQRqIARBIGoQPyAEKAIIIQIgBC0ABCEDIAcgBCgCDDYCBCAHIAJBACADQQlGGzYCACAEQUBrJAAgBygCACICRQ0CIAcoAgQhAwsgAS0ADEUEQCAHQQhqIQpBACEEIwBBQGoiBiQAIAYgAyIBBH8gAi0AAEEvRgVBAAs6AD4gBkEGOgAoIAYgATYCJCAGIAI2AiAgBkGBBDsBPCAGQQRqIAZBIGoQPwJAAkACQAJ/AkAgBi0ABEEJRw0AIAYoAgghAyAGKAIMIgVBAkYEQCADLwAAQa7cAEYNAQsgAyAFakEBayEDA0AgBCAFakUNASADIARqIARBAWshBC0AAEEuRw0ACyAEIAVqRQ0AIAEgBWoiCCAFayAEakEBaiEDIAVBf3MgBWogBGsgAUsNAiADIQEgCCAFayAEakEBagwBCyABQQFqCyEDQQAhBSADQQBIDQECQCADRQRAQQEhBAwBC0EBIQUgA0EBEPkEIgRFDQILQQAhBSAGQQA2AiggBiAENgIkIAYgAzYCICABIANLBEAgBkEgakEAIAEQmQIgBigCKCEFIAYoAiQhBAsgAQRAIAQgBWogAiAB/AoAAAsgBkEoaiINIAEgBWo2AgAjAEFAaiIFJAAgBUEANgIIIAVBATYCBCAGQSBqIgsoAgQhCCAFIAsoAggiCQR/IAgtAABBL0YFQQALOgA+IAVBBjoAKCAFIAk2AiQgBSAINgIgIAVBgQQ7ATwgBUEEaiAFQSBqED8CQCAFLQAEIgRBCUcNACAFKAIIIQNBAiECAn8CQCAFKAIMIgFBAkcNACADLwAAQa7cAEcNAEEADAELIANBACAEQQlGGyEEIAEhAgNAIAQgAiADakYEQEEAIQMgBAwCCyACQQFrIgIgA2otAABBLkcNAAsgBCEDAn8gAgRAIAJBf3MgAWohASACIANqQQFqDAELIAEhAkEACwshBCADIAQgAxsiBEUNACAEIAIgASADG2oiAiAIayEBAkAgAiAIRiABIAlGcg0AIAEgCUkEQCABIAhqIgJBAWssAABBAE4NASACLAAAQQBODQELIwBBIGsiAiQAIAIgATYCDAJAAkAgASAJTQRAIAJBEGogASAIakEEIAkgAWsiAyADQQRPGxBPAkAgAigCEEEBRw0AIAIoAhQNAEECIQMCQCABQQJJDQBBBCABIAFBBE8bIQQDQCABIANrIQwgASADSQ0EIAJBEGogCCAMaiADEE8gAigCEEUNAiADIARPDQEgAyADIARJaiIDIARNDQALCyACIAJBDGqtQoCAgIAQhDcDEEHkh8AAIAJBEGpBjOTAABCeAwALIAJBIGokAAwCC0GY5sAAQRNBjOTAABCeAwALIAwgASABQYzkwAAQtgEACwsgASAJTQRAIAsgATYCCAsLIAVBQGskACAKQQhqIA0oAgA2AgAgCiAGKQIgNwIAIAZBQGskAAwCC0EAIAMgAUHM5MAAELYBAAsgBSADEMkEAAsgB0EUaiIBIAcoAgwiAiAHKAIQEFwgACABELcCIAcoAggiAEUNASACIABBARDnBAwBCyAHQRRqIgEgAiADEFwgACABELcCCyAHQSBqJAAPC0Gg1sAAEO4EAAuuAgEFfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCFCAAKAIQIQMgACgCCCEGIAAoAgQhBCABQQA2AgACQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUEkQQQQ5wQLIAQEQCAGIARBARDnBAsgA0UNAyADQQEQ5wQMAwsgAEUNACACIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgAkEMaigCACIAKAIMIgEEQCAAKAIQIAFBARDnBAsgACgCGCIBBEAgACgCHCABQQEQ5wQLAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQSRBBBDnBAsMAgsQ+wQAC0GVscAAQT8Q/AQACyACQRBqJAALqgICAX8BfiMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgAkEIaiAAQQxqKAIANgIAIAApAgQhAyABQQA2AgAgAiADNwMAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBGEEEEOcECyACEO8BIAIoAgAiAEUNAyACKAIEIABBBXRBBBDnBAwDCyAARQ0AIAIgAEEIayIANgIAIAAgACgCAEEBayIANgIAIAANAiACKAIAIgBBDGoQ7wEgACgCDCIBBEAgACgCECABQQV0QQQQ5wQLAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQRhBBBDnBAsMAgsQ+wQAC0GVscAAQT8Q/AQACyACQRBqJAAL4gECAX8BfiMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgAkEIaiAAQQxqKAIANgIAIAApAgQhAyABQQA2AgAgAiADNwMAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBGEEEEOcECyACEHYgAigCACIARQ0DIAIoAgQgAEEwbEEEEOcEDAMLIABFDQAgAiAAQQhrIgA2AgAgACAAKAIAQQFrIgA2AgAgAA0CIAIQ+AIMAgsQ+wQAC0Gw1cAAQT8Q/AQACyACQRBqJAAL0wEBBX8gAkEMaiEDIAFBDGohBCAAKAIEIQUgACgCACEGQQACfwJAAkACQAJAAkBBBCAAKAIIIgAoAgAiB0GAgICAeHMgB0EAThtBAWsOBAECAwQACyAFIAQgAxDjAQwECyAFIAQgAxB/DAMLIAEoAgxBCGogAigCDEEIaiABKAIQIgAgAigCECIBIAAgAUkbEIEDIgIgACABayACGyIAQQBKIABBAEhrDAILIAUgBCADEG4MAQsgACAFIAQgAxBJCyIAayAAIAYtAAwbQf8BcUH/AUYLogQBBX8jAEEgayIFJAACfyMAQSBrIgYkAEEBIQgCQCAALQAEDQACQAJAIAAtAAZFBEAgAC0ABSEJIAAoAgAiBy0ACkGAAXFFBEAgCUEBcUUNAiAHKAIAQYT1wABBAiAHKAIEKAIMEQEARQ0CDAQLIAlBAXFFBEAgBygCAEGG9cAAQQEgBygCBCgCDBEBAA0ECyAAQQE6AAcgBiAAQQdqNgIMIAZBkPXAADYCFCAGIAcpAgA3AgQgBiAHKQIINwIYIAYgBkEEajYCECABIAZBEGogAigCDBEAAA0DIAYoAhBBq/XAAEECIAYoAhQoAgwRAQANAwwCC0G09sAAQY0BQfz2wAAQngMACyABIAcgAigCDBEAAA0BIAcoAgBBq/XAAEECIAcoAgQoAgwRAQANAQsgAEEBOgAGQQAhCAsgACAIOgAEIAZBIGokAEEBIAAiAS0ABA0AGgJAAkACQCAALQAGBEAgACgCACIALQAKQYABcUUEQEEBIAMgACAEKAIMEQAADQUaDAQLIAUgAUEHajYCDCAFQZD1wAA2AhQgBSAAKQIANwIEIAUgACkCCDcCGCAFIAVBBGo2AhAgAyAFQRBqIAQoAgwRAABFDQEMAgtBtfXAAEHdAEHk9cAAEJ4DAAsgBSgCEEGH9cAAQQIgBSgCFCgCDBEBAEUNAQtBAQwBCyABQQA6AAZBAAshACABQQE6AAUgASAAOgAEIAVBIGokAAvMAQEHfyAAKAIAIgEoAhQiBgRAIAEoAhAhBwNAIAcgAkEMbGoiAygCCCIFBEAgAygCBCEAA0AgACgCACIEIAQoAgBBAWsiBDYCACAERQRAIAAQkQMLIABBGGohACAFQQFrIgUNAAsLIAMoAgAiAARAIAMoAgQgAEEYbEEEEOcECyACQQFqIgIgBkcNAAsLIAEoAgwiAARAIAEoAhAgAEEMbEEEEOcECwJAIAFBf0YNACABIAEoAgRBAWsiADYCBCAADQAgAUEYQQQQ5wQLC+kBAQF/IwBBEGsiFyQAIAAoAgAgASACIAAoAgQoAgwRAQAhASAXQQA6AA0gFyABOgAMIBcgADYCCCAXQQhqIAMgBCAFIAYQtQEgByAIIAkgChC1ASALIAwgDSAOELUBIA8gECARIBIQtQEgEyAUIBUgFhC1ASEBIBctAA0iAiAXLQAMIgNyIQACQCADQQFxIAJBAUdyDQAgASgCACIALQAKQYABcUUEQCAAKAIAQbH1wABBAiAAKAIEKAIMEQEAIQAMAQsgACgCAEGw9cAAQQEgACgCBCgCDBEBACEACyAXQRBqJAAgAEEBcQvMAQEGfyAAKAIIIgUEQCAAKAIEIQYDQCAGIAJBBXRqIgEoAgwiACAAKAIAQQFrIgA2AgAgAEUEQCABQQxqEJEDCyABKAIIIgQEQCABKAIEIQADQCAAKAIAIgMgAygCAEEBayIDNgIAIANFBEAgABCRAwsgAEEIaiEAIARBAWsiBA0ACwsgASgCACIABEAgASgCBCAAQQN0QQQQ5wQLIAEoAhQiACAAKAIAQQFrIgA2AgAgAEUEQCABQRRqEJEDCyACQQFqIgIgBUcNAAsLC8IBAQd/IAJBDGwhBiABIQMgAgRAIAEgBmohByABIQQDQCAEKAIAIQUgBEEEaigCACIIIARBCGooAgAQ0QQhCSAFBEAgCCAFQQEQ5wQLIAMgCTYCACADQQRqIQMgBEEMaiIEIAdHDQALCwJAIAMgAWsiBEECdiIFIAJBA2xPBEAgASEDDAELIAEgA0YEQEEEIQMgASAGQQQQ5wQMAQsgASAGQQQgBBDgBCIDDQBBBCAEEMkEAAsgACAFNgIEIAAgAzYCAAvLAQEHfyMAQRBrIgMkACADQQhqIAAgARBQIAMoAgwiBEEwbCEAIAMoAggiBSAEEOoCIQYgBSAEEJ8CIQcgBSEBA0AgACIIBEAgAEEwayEAIAFBLGogAUEwaiEBLQAAQQFHDQELC0EwQQgQ+QQiAEUEQEEIQTAQ/wQACyAAIAc2AiggACAGNgIkIAAgBDYCICAAIAU2AhwgACAENgIYIAAgAjcDECAAQQA2AgggAEKBgICAEDcDACAAIAhBAEc6ACwgA0EQaiQAIABBCGoL9gEBAX8jAEHQAGsiAiQAIAAoAgAhACACQbzHwAA2AkggAkGsx8AANgJAIAIgADYCPCACQZzHwAA2AjggAiAAQcQAajYCNCACQYzHwAA2AjAgAiAAQSxqNgIsIAJB/MbAADYCKCACIABB1ABqNgIkIAJBjMbAADYCICACIABBIGo2AhwgAkGMxsAANgIYIAIgAEEUajYCFCACQYzGwAA2AhAgAiAAQQhqNgIMIAJB7MbAADYCCCACIABBOGo2AgQgAiAAQdUAajYCTCACIAJBzABqNgJEIAFBjMnAAEETQcTIwABBCSACQQRqQQkQ0QEgAkHQAGokAAvPAQEDfyAAKAIAIgEoAhgiACAAKAIAQQFrIgA2AgAgAEUEQCABQRhqEJEDCyABKAIUIgMEQCABKAIQIQADQCAAKAIAIgIgAigCAEEBayICNgIAIAJFBEAgABCRAwsgAEEIaiEAIANBAWsiAw0ACwsgASgCDCIABEAgASgCECAAQQN0QQQQ5wQLIAEoAiAiACAAKAIAQQFrIgA2AgAgAEUEQCABQSBqEJEDCwJAIAFBf0YNACABIAEoAgRBAWsiADYCBCAADQAgAUEsQQQQ5wQLC8cBAQN/IAAoAgAiASgCICIDBEAgASgCHEEMaiEAA0AgACgCACICIAIoAgBBAWsiAjYCACACRQRAIAAQkQMLIABBDGsoAgAiAgRAIABBCGsoAgAgAkECdEEEEOcECyAAQTBqIQAgA0EBayIDDQALCyABKAIYIgAEQCABKAIcIABBMGxBBBDnBAsgASgCJCIABEAgASgCKCAAQQJ0QQQQ5wQLAkAgAUF/Rg0AIAEgASgCBEEBayIANgIEIAANACABQcAAQQgQ5wQLC94BAQF/IwBBEGsiEyQAIAAoAgAgASACIAAoAgQoAgwRAQAhASATQQA6AA0gEyABOgAMIBMgADYCCCATQQhqIAMgBCAFIAYQtQEgByAIIAkgChC1ASALIAwgDSAOELUBIA8gECARIBIQtQEhASATLQANIgIgEy0ADCIDciEAAkAgA0EBcSACQQFHcg0AIAEoAgAiAC0ACkGAAXFFBEAgACgCAEGx9cAAQQIgACgCBCgCDBEBACEADAELIAAoAgBBsPXAAEEBIAAoAgQoAgwRAQAhAAsgE0EQaiQAIABBAXELxQEBA38gACgCBCEDIAAoAgAhBEEAAn8CQAJAAkACQAJAQQQgACgCCCIAKAIAIgVBgICAgHhzIAVBAE4bQQFrDgQBAgMEAAsgAyABIAIQ4wEMBAsgAyABIAIQfwwDCyABKAIAQQhqIAIoAgBBCGogASgCBCIAIAIoAgQiASAAIAFJGxCBAyICIAAgAWsgAhsiAEEASiAAQQBIawwCCyADIAEgAhBuDAELIAAgAyABIAIQSQsiAGsgACAELQAMG0H/AXFB/wFGC9oBAQR/IwBBIGsiAiQAAkACQAJAQfTMwAAoAgAiASgCAA0AIAEoAgghAyABQQA2AgggA0UNASABQQRqIQQgAxEKACEDIAEoAgBFBEAgAUEBNgIAIAQgAzYCAAwBCyAEDQILIAEoAgQgAiAArUKAgICA0ACENwMYIAJBDGpBtYbAACACQRhqEIYBIAIoAhAiACACKAIUEPEEIAIoAgwiAQRAIAAgAUEBEOcECyACQSBqJAAPC0GYzMAAQdUAQcTMwAAQngMACyADEMYEQdTMwABBHUHkzMAAEJ4DAAvKAQEDfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCCCAAKAIEIQMgAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBHEEEEOcECyADRSADQYSAgIB4SHINAyADQQEQ5wQMAwsgAEUNACACIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgAkEMahCEAwwCCxD7BAALQcDNwABBPxD8BAALIAJBEGokAAvKAQEDfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCCCAAKAIEIQMgAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBIEEEEOcECyADRSADQYWAgIB4SHINAyADQQEQ5wQMAwsgAEUNACACIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgAkEMahCCAwwCCxD7BAALQcDNwABBPxD8BAALIAJBEGokAAvEAQEEfyMAQRBrIgQkACAEQQRqIAEgAhChASAEKAIIIQECfyAEKAIEIgJBgICAgHhHBEAgACAEKAIMNgIMIAAgATYCCCAAIAI2AgRBAQwBCyAAQQRqIAEgAxBCQQALIQYgAygCBCEFIAMoAggiAQRAIAUhAgNAIAIoAgAiBwRAIAJBBGooAgAgB0EBEOcECyACQQxqIQIgAUEBayIBDQALCyADKAIAIgEEQCAFIAFBDGxBBBDnBAsgACAGNgIAIARBEGokAAvNAQEDfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCCCAAKAIEIQMgAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBHEEEEOcECyADQYCAgIB4ckGAgICAeEYNAyADQQEQ5wQMAwsgAEUNACACIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgAkEMahCDAwwCCxD7BAALQbDVwABBPxD8BAALIAJBEGokAAvDAQEEfyMAQRBrIgMkACAABEAgA0EIaiABIAIQZCAAKAIARQRAIAMoAgwhBSADKAIIIQYgAEF/NgIAIAAoAgwiAQRAIAAoAgghAgNAIAIoAgAiBCAEKAIAQQFrIgQ2AgAgBEUEQCACEJEDCyACQRhqIQIgAUEBayIBDQALCyAAKAIEIgEEQCAAKAIIIAFBGGxBBBDnBAsgACAGNgIIIABBADYCACAAIAU2AgwgACAFNgIEIANBEGokAA8LEP0EAAsQ+wQAC4wFAgR+CX8jAEEgayIIJAACQAJAIAAEQCAAQQhrIgkgCSgCAEEBaiIHNgIAIAdFDQEgACgCACIHQX9GDQIgACAHQQFqNgIAIAggCTYCECAIIAA2AgwgCCACNgIcIAggATYCGCAIIAI2AhQgCCAAQQhqIgE2AggjAEFAaiICJAAgCEEUaiINKAIEIQoCfwJAIAEoAsQBRQ0AIA0oAgghCyABKQPIASEDIAJCADcDCCACQgA3AwAgAiADNwMQIAJBADoAOCACQZCgwQApAwA3AzAgAkGIoMEAKQMANwMoIAJBgKDBACkDADcDICACQfifwQApAwA3AxggAiAKIAsQaiABKAK8ASIOAn4gAi0AOEUEQCACKQMQDAELIAIpAxggAikDCIUiA0IgiCIFIAIpAxAgAikDAIUiBEIgiCIGfiADQv////8PgyIDIARC/////w+DIgR+hSADIAZ+IAQgBX6FQiCIhQsiA6dxIQcgA0IZiEL/AINCgYKEiJCgwIABfiEEIAEoArgBIQEDQCABIAdqKQAAIgUgBIUiA0J/hSADQoGChIiQoMCAAX2DQoCBgoSIkKDAgH+DIgNQRQRAA0ACQCALIAEgA3qnQQN2IAdqIA5xQQR0ayIPQQhrKAIARw0AIAogD0EMaygCACALEIEDDQBBAQwFCyADQgF9IAODIgNQRQ0ACwsgBSAFQgGGg0KAgYKEiJCgwIB/g1BFDQEgByAMQQhqIgxqIA5xIQcMAAsAC0EACyANKAIAIgcEQCAKIAdBARDnBAsgAkFAayQAIAAgACgCAEEBazYCACAJIAkoAgBBAWsiADYCACAARQRAIAhBEGoQUQsgCEEgaiQADwsQ+wQLAAsQ/QQAC88BAQZ/AkACQAJAIAAEQCAAKAIAIgFBf0YNASAAIAFBAWo2AgAgACgCECIBIAEoAgBBAWoiAjYCACACRQ0CIAAoAiAhAiAAKAIcIQMgACgCGCEEIAAgACgCAEEBazYCACAAKAIkIQUgACgCFCEGQSRBBBD5BCIARQ0DIAAgBTYCICAAIAI2AhwgACADNgIYIAAgBDYCFCAAIAY2AhAgACABNgIMIABBADYCCCAAQoGAgIAQNwIAIABBCGoPCxD7BAALEP0ECwALQQRBJBD/BAALvgEBBH8jAEEQayIDJAAgAARAIANBCGogASACEIgBIAAoAgBFBEAgAygCDCEEIAMoAgghBSAAQX82AgAgACgCDCIBBEAgACgCCCECA0AgAigCACIGBEAgAkEEaigCACAGQQEQ5wQLIAJBDGohAiABQQFrIgENAAsLIAAoAgQiAQRAIAAoAgggAUEMbEEEEOcECyAAIAU2AgggAEEANgIAIAAgBDYCDCAAIAQ2AgQgA0EQaiQADwsQ/QQACxD7BAALvgEBBH8jAEEQayIDJAAgAARAIANBCGogASACEIgBIAAoAgBFBEAgAygCDCEEIAMoAgghBSAAQX82AgAgACgCGCIBBEAgACgCFCECA0AgAigCACIGBEAgAkEEaigCACAGQQEQ5wQLIAJBDGohAiABQQFrIgENAAsLIAAoAhAiAQRAIAAoAhQgAUEMbEEEEOcECyAAIAU2AhQgAEEANgIAIAAgBDYCGCAAIAQ2AhAgA0EQaiQADwsQ/QQACxD7BAALwAEBA38jAEEQayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAAoAgggACgCBCEDIAFBADYCAAJAIAFBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACABQRhBBBDnBAsgA0UNAyADQQEQ5wQMAwsgAEUNACACIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgAkEMahCTAwwCCxD7BAALQZWxwABBPxD8BAALIAJBEGokAAvAAQEDfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCHCAAKAIYIQMgAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBMEEIEOcECyADRQ0DIANBARDnBAwDCyAARQ0AIAIgAEEIayIANgIMIAAgACgCAEEBayIANgIAIAANAiACQQxqEJIDDAILEPsEAAtBt8PAAEE/EPwEAAsgAkEQaiQAC8ABAQN/IwBBEGsiAiQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgEoAgBBAUcNAiAAKAIIIAAoAgQhAyABQQA2AgACQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUEYQQQQ5wQLIANFDQMgA0EBEOcEDAMLIABFDQAgAiAAQQhrIgA2AgwgACAAKAIAQQFrIgA2AgAgAA0CIAJBDGoQkwMMAgsQ+wQAC0GfycAAQT8Q/AQACyACQRBqJAALlAIBAn8jAEEgayIFJABBkKTBAEGQpMEAKAIAIgZBAWo2AgACQAJ/QQAgBkEASA0AGkEBQYykwQAtAAANABpBjKTBAEEBOgAAQYikwQBBiKTBACgCAEEBajYCAEECC0H/AXEiBkECRwRAIAZBAXFFDQEgBUEIaiAAIAEoAhgRAgAMAQtBlKTBACgCACIGQQBIDQBBlKTBACAGQQFqNgIAQZikwQAoAgAEQCAFIAAgASgCFBECACAFIAQ6AB0gBSADOgAcIAUgAjYCGCAFIAUpAwA3AhBBmKTBACgCACAFQRBqQZykwQAoAgAoAhQRAgALQZSkwQBBlKTBACgCAEEBazYCAEGMpMEAQQA6AAAgA0UNAAALAAusAQEHfyAAKAIMIgEgACgCBCIFa0EMbiEHIAEgBUcEQANAIAUgAkEMbGoiAygCCCIGBEAgAygCBCEBA0AgASgCACIEIAQoAgBBAWsiBDYCACAERQRAIAEQkQMLIAFBGGohASAGQQFrIgYNAAsLIAMoAgAiAQRAIAMoAgQgAUEYbEEEEOcECyACQQFqIgIgB0cNAAsLIAAoAggiAQRAIAAoAgAgAUEMbEEEEOcECwuqAQICfwF+QQEhB0EEIQYCQCAEIAVqQQFrQQAgBGtxrSADrX4iCEIgiFBFBEBBACEDDAELIAinIgNBgICAgHggBGtLBEBBACEDDAELAkACQAJ/IAEEQCACIAEgBWwgBCADEOAEDAELIANFBEAgBCEGDAILIAMgBBD5BAsiBg0AIAAgBDYCBAwBCyAAIAY2AgRBACEHC0EIIQYLIAAgBmogAzYCACAAIAc2AgALyAEBAX8jAEEQayILJAAgACgCACABIAIgACgCBCgCDBEBACEBIAtBADoADSALIAE6AAwgCyAANgIIIAtBCGogAyAEIAUgBhC1ASAHIAggCSAKELUBIQEgCy0ADSICIAstAAwiA3IhAAJAIANBAXEgAkEBR3INACABKAIAIgAtAApBgAFxRQRAIAAoAgBBsfXAAEECIAAoAgQoAgwRAQAhAAwBCyAAKAIAQbD1wABBASAAKAIEKAIMEQEAIQALIAtBEGokACAAQQFxC6sBAQF/IwBBEGsiBSQAIARFBEBBAEEAEMkEAAsgAiABIAJqIgFLBEBBAEEAEMkEAAsgBUEEaiAAKAIAIgIgACgCBCABIAJBAXQiAiABIAJLGyIBQQhBBEEBIARBgQhJGyAEQQFGGyICIAEgAksbIgEgAyAEEIYCIAUoAgRBAUYEQCAFKAIIIAUoAgwQyQQACyAFKAIIIQIgACABNgIAIAAgAjYCBCAFQRBqJAALpgEBBn8gACgCCCIEBEAgACgCBCEFA0ACQCAFIAJBJGxqIgEoAgAiAEGAgICAeEYNACAABEAgASgCBCAAQQEQ5wQLIAEoAhQiAwRAIAEoAhAhAANAIAAoAgAiBgRAIABBBGooAgAgBkEBEOcECyAAQQxqIQAgA0EBayIDDQALCyABKAIMIgBFDQAgASgCECAAQQxsQQQQ5wQLIAJBAWoiAiAERw0ACwsLvQEBAX8jAEEQayIHJAAgACgCACABIAIgACgCBCgCDBEBACEBIAdBADoADSAHIAE6AAwgByAANgIIIAdBCGogAyAEIAUgBhC1ASEBIActAA0iAiAHLQAMIgNyIQACQCADQQFxIAJBAUdyDQAgASgCACIALQAKQYABcUUEQCAAKAIAQbH1wABBAiAAKAIEKAIMEQEAIQAMAQsgACgCAEGw9cAAQQEgACgCBCgCDBEBACEACyAHQRBqJAAgAEEBcQubAQEFfyAAKAIAIQEgABDWAgJAIAAoAggiBSABIAAoAgwiA2tNDQAgASAFayICIAMgAmsiA0sgACgCACIEIAFrIANPcUUEQCAEIAJrIQEgAkEDdCICBEAgACgCBCIEIAFBA3RqIAQgBUEDdGogAvwKAAALIAAgATYCCA8LIANBA3QiAkUNACAAKAIEIgAgAUEDdGogACAC/AoAAAsLmgECAn8BfkEBIQZBBCEFAkAgBEEDakEcca0gA61+IgdCIIhQRQRAQQAhAwwBCyAHpyIDQfz///8HSwRAQQAhAwwBCwJAAkACfyABBEAgAiABIARsQQQgAxDgBAwBCyADRQ0BIANBBBD5BAsiBQ0AIABBBDYCBAwBCyAAIAU2AgRBACEGC0EIIQULIAAgBWogAzYCACAAIAY2AgAL+AIBB38jAEEQayIEJAACQAJAIAAEQCAAQQhrIgYgBigCAEEBaiICNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAQgBjYCDCAEIAA2AgggBCAAQQhqIgI2AgQjAEEgayIDJAACQAJAAkACQEH0zMAAKAIAIgEoAgANACABKAIIIQUgAUEANgIIIAVFDQEgAUEEaiEHIAURCgAhBSABKAIARQRAIAFBATYCACAHIAU2AgAMAQsgBw0CCyABKAIEIAMgAkGQAWqtQoCAgIDAC4Q3AxggA0EMakGeysAAIANBGGoQhgEgAygCECICIAMoAhQQ8AQgAygCDCIBBEAgAiABQQEQ5wQLIANBIGokAAwCC0GYzMAAQdUAQcTMwAAQngMACyAFEMYEQdTMwABBHUHkzMAAEJ4DAAsgACAAKAIAQQFrNgIAIAYgBigCAEEBayIANgIAIABFBEAgBEEMahBRCyAEQRBqJAAPCxD7BAsACxD9BAALnAYCDn8BbyMAQSBrIgYkACAGQRhqIAFBCGopAgA3AwAgBiABKQIANwMQIAZBBGohCiMAQTBrIgckACAGQRBqIgUoAgAhAyAFKAIIIQsCQAJAAkAgBSgCBCICIAUoAgwiCEYEQCADIQEMAQsgAyEBA0AgB0EoaiIJIAJBKGopAgA3AwAgB0EgaiIMIAJBIGopAgA3AwAgB0EYaiINIAJBGGopAgA3AwAgB0EQaiIOIAJBEGopAgA3AwAgB0EIaiIPIAJBCGopAgA3AwAgByACKQIANwMAQTxBBBD5BCIERQ0CIARBADYCCCAEQoGAgIAQNwIAIAQgBykDADcCDCAEQRRqIA8pAwA3AgAgBEEcaiAOKQMANwIAIARBJGogDSkDADcCACAEQSxqIAwpAwA3AgAgBEE0aiAJKQMANwIAIARBCGoQByEQEGMiBCAQJgEgASAENgIAIAFBBGohASACQTBqIgIgCEcNAAsLIAVChICAgMAANwIAIAVCgICAgMAANwIIIAggAmtBMG4hBCACIAhHBEADQCACQQxqIggoAgAiCSAJKAIAQQFrIgk2AgAgCUUEQCAIEJEDCyACEMkCIAIoAgAiCARAIAJBBGooAgAgCEEwbEEEEOcECyACQTBqIQIgBEEBayIEDQALCyAKIAM2AgQgCiALQQxsNgIAIAogASADa0ECdjYCCCAFKAIMIgIgBSgCBCIDa0EwbiEBIAIgA0cEQANAIANBDGoiAigCACIEIAQoAgBBAWsiBDYCACAERQRAIAIQkQMLIAMQyQIgAygCACICBEAgA0EEaigCACACQTBsQQQQ5wQLIANBMGohAyABQQFrIgENAAsLIAUoAggiAQRAIAUoAgAgAUEwbEEEEOcECyAHQTBqJAAMAQtBBEE8EP8EAAsCQCAGKAIEIgMgBigCDCIBTQRAIAYoAgghAwwBCyADQQJ0IQIgBigCCCEFIAFFBEBBBCEDIAUgAkEEEOcEDAELIAUgAkEEIAFBAnQiAhDgBCIDDQBBBCACEMkEAAsgACABNgIEIAAgAzYCACAGQSBqJAALtwQCDX8BbyMAQSBrIgUkACAFQRhqIAFBCGopAgA3AwAgBSABKQIANwMQIAVBBGohCiMAQRBrIgkkACAFQRBqIgYoAgAhBCAGKAIIIQ0CQAJAAkAgBigCBCIDIAYoAgwiB0YEQCAEIQEMAQsgBCEBA0AgCUEIaiIIIANBCGooAgA2AgAgCSADKQIANwMAQRhBBBD5BCICRQ0CIAJBADYCCCACQoGAgIAQNwIAIAIgCSkDADcCDCACQRRqIAgoAgA2AgAgAkEIahAFIQ8QYyICIA8mASABIAI2AgAgAUEEaiEBIANBDGoiAyAHRw0ACwsgBkKEgICAwAA3AgAgBkKAgICAwAA3AgggAyAHRwRAIAcgA2tBDG4hDkEAIQcDQCADIAdBDGxqIggoAggiDARAIAgoAgQhAgNAIAIoAgAiCyALKAIAQQFrIgs2AgAgC0UEQCACEJEDCyACQRhqIQIgDEEBayIMDQALCyAIKAIAIgIEQCAIKAIEIAJBGGxBBBDnBAsgB0EBaiIHIA5HDQALCyAKIAQ2AgQgCiANQQNsNgIAIAogASAEa0ECdjYCCCAGEIUCIAlBEGokAAwBC0EEQRgQ/wQACwJAIAUoAgQiBCAFKAIMIgFNBEAgBSgCCCEEDAELIARBAnQhAyAFKAIIIQYgAUUEQEEEIQQgBiADQQQQ5wQMAQsgBiADQQQgAUECdCIDEOAEIgQNAEEEIAMQyQQACyAAIAE2AgQgACAENgIAIAVBIGokAAupAQEBfyMAQRBrIgYkAAJAIAEEQCAGQQRqIAEgAyAEIAUgAigCEBELAAJAIAYoAgQiAiAGKAIMIgFNBEAgBigCCCEFDAELIAJBAnQhAiAGKAIIIQMgAUUEQEEEIQUgAyACQQQQ5wQMAQsgAyACQQQgAUECdCICEOAEIgVFDQILIAAgATYCBCAAIAU2AgAgBkEQaiQADwtBkOHAAEEyEPwEAAtBBCACEMkEAAulAQECfyADQfj///8BcQRAIAAgACADQQN2IgNBBHQiBWogACADQRxsIgZqIAMgBBCRAiEAIAEgASAFaiABIAZqIAMgBBCRAiEBIAIgAiAFaiACIAZqIAMgBBCRAiECCyAEKAIAIAAoAgAgASgCABDEASIDIAQoAgAgACgCACACKAIAEMQBRgR/IAIgASAEKAIAIAEoAgAgAigCABDEASADcxsFIAALC6UBAgN/An4jAEEgayIBJAACQCAAKAJEIgJFDQAgACgCQCACQdAAbGoiAkHQAGsiACkDACAAKQMIhFBFDQAgAUEQaiACQTBrEN0BIAEgASkDEELAhD0QugIgASgCGCEDIABCADcDCCAAQgE3AwAgAkFAaiICIAEpAwAiBCADQegHbq18IgU3AwAgAiABKQMIIAQgBVatfDcDCCAAEJICCyABQSBqJAALlAEBAn8gA0H4////AXEEQCAAIAAgA0EDdiIDQTBsIgVqIAAgA0HUAGwiBmogAyAEEJMCIQAgASABIAVqIAEgBmogAyAEEJMCIQEgAiACIAVqIAIgBmogAyAEEJMCIQILIAAgAiABIABBCGooAgAiACABQQhqKAIAIgFJIgMgASACQQhqKAIAIgJJcxsgAyAAIAJJcxsLmQEBA38jAEEQayICJAAgAiABEMwDIAAoAgAiACgCFEEkbCEBIAAoAhAiAEEQaiEDA0ACQCABBEAgAC0AIUECRg0BIAIgBDYCCCACIAM2AgwgAiACQQhqQaDbwAAgAkEMakHw28AAEOwBDAELIAIQigMgAkEQaiQADwsgAEEkaiEAIARBAWohBCABQSRrIQEgA0EkaiEDDAALAAubAQEDfyAAKAIAIgEoAgwiAARAIAEoAhAgAEEBEOcECyABKAIgIgIEQCABKAIcIQADQCAAKAIAIgMEQCAAQQRqKAIAIANBARDnBAsgAEEMaiEAIAJBAWsiAg0ACwsgASgCGCIABEAgASgCHCAAQQxsQQQQ5wQLAkAgAUF/Rg0AIAEgASgCBEEBayIANgIEIAANACABQShBBBDnBAsLtAEBAX8jAEFAaiICJAAgACgCACEAIAJByLrAADYCOCACQbi6wAA2AjAgAiAANgIsIAJBoLnAADYCKCACIABBKGo2AiQgAkHAuMAANgIgIAIgAEEkajYCHCACQcC4wAA2AhggAiAAQSBqNgIUIAJBqLrAADYCECACIABBCGo2AgwgAiAAQRRqNgI8IAIgAkE8ajYCNCABQZS7wABBE0HkusAAQQYgAkEMakEGENEBIAJBQGskAAu0AQEBfyMAQUBqIgIkACAAKAIAIQAgAkHAwsAANgI4IAJBwMDAADYCMCACIABBHGo2AiwgAkGwwsAANgIoIAIgAEEeajYCJCACQbDAwAA2AiAgAiAAQRRqNgIcIAJBoMLAADYCGCACIAA2AhQgAkGwwMAANgIQIAIgAEEMajYCDCACIABBHWo2AjwgAiACQTxqNgI0IAFBpMPAAEETQfTCwABBBiACQQxqQQYQ0QEgAkFAayQAC7QBAQF/IwBBQGoiAiQAIAAoAgAhACACQaDTwAA2AjggAkGQ08AANgIwIAIgAEEsajYCLCACQYDTwAA2AiggAiAAQShqNgIkIAJBgNPAADYCICACIABBJGo2AhwgAkHw0sAANgIYIAIgAEEMajYCFCACQeDSwAA2AhAgAiAANgIMIAIgAEEYajYCPCACIAJBPGo2AjQgAUG01MAAQRBBhNTAAEEGIAJBDGpBBhDRASACQUBrJAALigEBAX8jAEEQayIDJAAgAiABIAJqIgFLBEBBAEEAEMkEAAsgA0EEaiAAKAIAIgIgACgCBEEIIAEgAkEBdCICIAEgAksbIgEgAUEITRsiAUEBQQEQhgIgAygCBEEBRgRAIAMoAgggAygCDBDJBAALIAMoAgghAiAAIAE2AgAgACACNgIEIANBEGokAAuiAQECfyMAQRBrIgckACAHQQhqIAIgAxCIASAHKAIMIQMgBygCCCEIQShBBBD5BCICRQRAQQRBKBD/BAALIAIgCDYCHCACIAE2AhQgAiAANgIQIAIgATYCDCACQQA2AgggAkKBgICAEDcCACACIAZBAEc6ACYgAiAFQQBHOgAlIAIgBEEARzoAJCACIAM2AiAgAiADNgIYIAdBEGokACACQQhqC5UBAQJ/IANB+P///wFxBEAgACAAIANBA3YiA0HAAWwiBWogACADQdACbCIGaiADIAQQmwIhACABIAEgBWogASAGaiADIAQQmwIhASACIAIgBWogAiAGaiADIAQQmwIhAgsgBCgCACAAIAEQ6wEiAyAEKAIAIAAgAhDrAUYEfyACIAEgBCgCACABIAIQ6wEgA3MbBSAACwuVAQECfyADQfj///8BcQRAIAAgACADQQN2IgNB4ABsIgVqIAAgA0GoAWwiBmogAyAEEJwCIQAgASABIAVqIAEgBmogAyAEEJwCIQEgAiACIAVqIAIgBmogAyAEEJwCIQILIAQoAgAgACABEPYBIgMgBCgCACAAIAIQ9gFGBH8gAiABIAQoAgAgASACEPYBIANzGwUgAAsLlAEBAn8gA0H4////AXEEQCAAIAAgA0EDdiIDQTBsIgVqIAAgA0HUAGwiBmogAyAEEJ0CIQAgASABIAVqIAEgBmogAyAEEJ0CIQEgAiACIAVqIAIgBmogAyAEEJ0CIQILIAQoAgAgACABEIMBIgMgBCgCACAAIAIQgwFGBH8gAiABIAQoAgAgASACEIMBIANzGwUgAAsLpgECAn4BfyMAQRBrIgMkACAAIANBCGqtIgFCppfEiQ1+QiCJIAFCrOv+xgl+hSIBp0GeAXOtIgJCrOv+xgl+IAFCIIgiAUKml8SJDX6FIAJCppfEiQ1+IAFCrOv+xgl+hUIgiYUiAadB+J/BAHOtIgJCrOv+xgl+IAFCIIgiAUKml8SJDX6FIAJCppfEiQ1+IAFCrOv+xgl+hUIgiYUQWSADQRBqJAALjwEBA38gAUUEQEEADwsgACgCBCAAKAIIEJ8CIQIgACgCJCIDIAIgAiADSRshAiABQQFHBEAgAEHUAGohACABQTBsQTBrQTBuIQEDQCAAQSBrKAIAIABBHGsoAgAQnwIhAyACIAAoAgAiBCADIAMgBEkbIgMgAiADSxshAiAAQTBqIQAgAUEBayIBDQALCyACC4cBAQN/IwBBEGsiAyQAQQMhAiAALQAAIgAhBCAAQQpPBEAgAyAAIABB5ABuIgRB5ABsa0H/AXFBAXQvAIXzQDsADkEBIQILQQAgACAEG0UEQCACQQFrIgIgA0ENamogBEEBdC0AhvNAOgAACyABQQFBACADQQ1qIAJqQQMgAmsQSyADQRBqJAALkQEBAn8jAEEQayICJAAgAiABEMwDIAAoAgAiASgCCEEkbCEAIAEoAgQhAQNAAkAgAARAIAEoAgBBgICAgHhGDQEgAiADNgIIIAIgATYCDCACIAJBCGpBoNvAACACQQxqQbDbwAAQ7AEMAQsgAhCKAyACQRBqJAAPCyABQSRqIQEgA0EBaiEDIABBJGshAAwACwALwgECAX8BfhDmAiEBQZigwQAtAABBAkcEQBDXAQtB8AFBCBD5BCIARQRAQQhB8AEQ/wQACyAAQn83A8ABIABCADcDuAEgAEIENwOwASAAQgA3A6gBIABCgICAgMAANwOgASAAQgA3ApQBIABBADYCECAAQQA2AgggAEKBgICAEDcDACAAIAE3A9gBIABCgICAgMAANwPgASAAQgA3A+gBIABBoKvAACkDADcDyAEgAEHQAWpBqKvAACkDADcDACAAQQhqC4wBAQR/IwBBEGsiBCQAIAEoAgQhBQJAIAEoAggiBgRAIAZBMGwhByAFIQEDQCAEQQRqIAEgAiADEKMCIAQoAgRBgICAgHhHBEAgACAEKQIENwIAIABBCGogBEEMaigCADYCAAwDCyABQTBqIQEgB0EwayIHDQALCyAAIAMgAiAFIAYQrAELIARBEGokAAuVAQEBfwJAAkACQCABRQRAQQEhAiABRQ0BQQEgACAB/AoAAAwBCyABQQEQ+QQiAkUNASABBEAgAiAAIAH8CgAACyAAIAFBARDnBAtBGEEEEPkEIgBFDQEgACABNgIUIAAgAjYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIag8LQQEgARDJBAALQQRBGBD/BAALnAECA38BfiMAQSBrIgIkACABKAIAQYCAgIB4RgRAIAEoAgwhAyACQRxqIgRBADYCACACQoCAgIAQNwIUIAJBFGpBhOXAACADKAIAIgMoAgAgAygCBBBfGiACQRBqIAQoAgAiAzYCACACIAIpAhQiBTcDCCABQQhqIAM2AgAgASAFNwIACyAAQYzowAA2AgQgACABNgIAIAJBIGokAAuNAQEEfyMAQRBrIgIkAAJ/QQEgASgCACIDQScgASgCBCIFKAIQIgERAAANABogAiAAKAIAQYECEFICQCACLQANIgBBgQFPBEAgAyACKAIAIAERAABFDQFBAQwCCyADIAIgAi0ADCIEaiAAIARrIAUoAgwRAQBFDQBBAQwBCyADQScgAREAAAsgAkEQaiQAC5YBAQJ/IwBBEGsiAiQAAkACQCAAKAKEASIBQRFPBEAgACgCBCIBQX9GDQELQX8gAWd2QQAgARsiAUF/Rg0AIAJBCGogACABQQFqEIIBIAIoAggiAEGBgICAeEcEQCAADQJBqLbAAEERQby2wAAQzwQACyACQRBqJAAPC0GotsAAQRFBzLbAABCfAwALIAAgAigCDBD/BAALjgEBAn8jAEEQayIEJAAgBEEEaiABKAIAIgUgASgCBEEEIAJBAWoiAiAFQQF0IgUgAiAFSxsiAiACQQRNGyICIAMQjAICfyAEKAIEBEAgBCgCDCEBIAQoAggMAQsgBCgCCCEDIAEgAjYCACABIAM2AgRBgYCAgHgLIQIgACABNgIEIAAgAjYCACAEQRBqJAAL8AEBBH8jAEEQayIDJAAgAiABIAJqIgRLBEBBAEEAEMkEAAsgA0EEaiEBIAAoAgAiAiEFIAAoAgQhBgJAQQggBCACQQF0IgIgAiAESRsiAiACQQhNGyICQQBIBEAgAUEANgIEIAFBATYCAAwBCwJ/IAUEQCAGIAVBASACEOAEDAELIAJBARD5BAsiBEUEQCABIAI2AgggAUEBNgIEIAFBATYCAAwBCyABIAI2AgggASAENgIEIAFBADYCAAsgAygCBEEBRgRAIAMoAgggAygCDBDJBAALIAMoAgghASAAIAI2AgAgACABNgIEIANBEGokAAv1AQEEfyMAQRBrIgMkACACIAEgAmoiAUsEQEEAQQAQyQQACyADQQRqIQQgACgCBCEGAn9BCCABIAAoAgAiAkEBdCIFIAEgBUsbIgEgAUEITRsiBSIBQQBIBEBBASECQQAhAUEEDAELAn8CQAJ/IAIEQCAGIAJBASABEOAEDAELIAFFBEBBASECDAILIAFBARD5BAsiAg0AIARBATYCBEEBDAELIAQgAjYCBEEACyECQQgLIARqIAE2AgAgBCACNgIAIAMoAgRBAUYEQCADKAIIIAMoAgwQyQQACyADKAIIIQEgACAFNgIAIAAgATYCBCADQRBqJAALiwEBA38gACgCACIBKAIUIgMEQCABKAIQIQADQCAAKAIAIgIgAigCAEEBayICNgIAIAJFBEAgABCRAwsgAEEYaiEAIANBAWsiAw0ACwsgASgCDCIABEAgASgCECAAQRhsQQQQ5wQLAkAgAUF/Rg0AIAEgASgCBEEBayIANgIEIAANACABQRhBBBDnBAsLgwEBBH8gACgCBCEDIAAoAggiBARAIANBDGohAQNAIAEoAgAiAiACKAIAQQFrIgI2AgAgAkUEQCABEJEDCyABQQxrKAIAIgIEQCABQQhrKAIAIAJBAnRBBBDnBAsgAUEwaiEBIARBAWsiBA0ACwsgACgCACIABEAgAyAAQTBsQQQQ5wQLC4gBAQJ/IwBBEGsiAyQAIAAEQCADQQhqIAEgAhBQIAAoAgBFBEAgAygCDCEBIAMoAgghAiAAQX82AgAgAEEEahDJAiAAKAIEIgQEQCAAKAIIIARBMGxBBBDnBAsgACACNgIIIABBADYCACAAIAE2AgwgACABNgIEIANBEGokAA8LEP0EAAsQ+wQAC4gBAQJ/IwBBEGsiAyQAIAAEQCADQQhqIAEgAhBQIAAoAgBFBEAgAygCDCEBIAMoAgghAiAAQX82AgAgAEEQahDJAiAAKAIQIgQEQCAAKAIUIARBMGxBBBDnBAsgACACNgIUIABBADYCACAAIAE2AhggACABNgIQIANBEGokAA8LEP0EAAsQ+wQAC4kBAQR/IwBBEGsiAiQAIAJBBGogARCtAQJAIAIoAgQiAyACKAIMIgFNBEAgAigCCCEDDAELIANBAnQhBCACKAIIIQUgAUUEQEEEIQMgBSAEQQQQ5wQMAQsgBSAEQQQgAUECdCIEEOAEIgMNAEEEIAQQyQQACyAAIAE2AgQgACADNgIAIAJBEGokAAuIAQECfyMAQSBrIgIkACAAKAIAIQAgAkIANwMYIAJBGGoiAyAAJQEQIyACIAIoAhwiADYCFCACIAIoAhg2AhAgAiAANgIMIAIgAkEMaq1CgICAgNAThDcDGCABKAIAIAEoAgRB3afAACADEF8gAigCDCIBBEAgAigCECABQQEQ5wQLIAJBIGokAAuHAQEBfyAAKAIAIgAoAgwiAQRAIAAoAhAgAUEBEOcECyAAKAIYIgEEQCAAKAIcIAFBARDnBAsgACgCJCIBBEAgACgCKCABQQEQ5wQLIAAoAjAiAQRAIAAoAjQgAUEBEOcECwJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEE8QQQQ5wQLC5sBAQJ/IwBBEGsiAiQAAn8CQAJAAkACQAJAQQQgACgCACIDQYCAgIB4cyADQQBOG0EBaw4EAQIDBAALIAFBgNHAAEEEENYEDAQLIAFBsdHAAEEIENYEDAMLIAFBudHAAEEIENYEDAILIAFBwdHAAEEHENYEDAELIAIgADYCDCABQcjRwABBCSACQQxqQYzRwAAQ0wELIAJBEGokAAt3AQJ/IwBBEGsiAiQAIAAoAgAiA0EEaigCACEAIANBCGooAgAhAyACQQRqIAEQ6AMgAwRAIANBGGwhAQNAIAIgADYCDCACQQRqIAJBDGpBoNzAABDbASAAQRhqIQAgAUEYayIBDQALCyACQQRqEMsDIAJBEGokAAt3AQJ/IwBBEGsiAiQAIAAoAgAiA0EEaigCACEAIANBCGooAgAhAyACQQRqIAEQ6AMgAwRAIANBDGwhAQNAIAIgADYCDCACQQRqIAJBDGpBsNzAABDbASAAQQxqIQAgAUEMayIBDQALCyACQQRqEMsDIAJBEGokAAupAQIDfwJ+IwBBEGsiACQAIwBBEGsiASQAIAFBADoAD0EBQQEQ+QQiAkUEQEEBQQEQ/wQACyAAIAFBD2qtNwMAIAAgAq03AwggAkEBQQEQ5wQgAUEQaiQAIAApAwAhAyAAKQMIIQRB+KPBAC0AAEECRgRAQcDawABB/QBBgNvAABCeAwALQfijwQBBAToAAEHwo8EAIAQ3AwBB6KPBACADNwMAIABBEGokAAuVAQMBfwJ+AnxB4J/BAC0AAEEBRwRAEM0CCyAAQdyfwQAoAgAQigUiBJ0iBfwHIgIgAkLoB4AiAkLoB359p0HAhD1sIAQgBaFEAAAAAICELkGiEO0C/AciAyADQoCU69wDgCIDQoCU69wDfn2naiIBQYCU69wDayABIAFB/5Pr3ANLIgEbNgIIIAAgAa0gAiADfHw3AwALhQEBAn8gASgCAEGAgICAeEcEQCAAIAEpAgA3AgAgAEEIaiABQQhqKAIANgIADwsgASgCBCEDAkACQCABKAIIIgFFBEBBASECDAELIAFBARD5BCICRQ0BCyABBEAgAiADIAH8CgAACyAAIAE2AgggACACNgIEIAAgATYCAA8LQQEgARDJBAALagEDfyMAQRBrIgIkACAALQAAIQNBACEAA0AgACACakEPaiADQQ9xQeL0wABqLQAAOgAAIABBAWshACADIgRBBHYhAyAEQQ9LDQALIAFB8vTAAEECIAAgAmpBEGpBACAAaxBLIAJBEGokAAtqAQN/IwBBEGsiAiQAIAAtAAAhA0EAIQADQCAAIAJqQQ9qIANBD3FB9PTAAGotAAA6AAAgAEEBayEAIAMiBEEEdiEDIARBD0sNAAsgAUHy9MAAQQIgACACakEQakEAIABrEEsgAkEQaiQAC2IBBH4gACACQv////8PgyIDIAFC/////w+DIgR+IgUgBCACQiCIIgJ+IgQgAyABQiCIIgZ+fCIBQiCGfCIDNwMAIAAgAyAFVK0gAiAGfiABIARUrUIghiABQiCIhHx8NwMIC3EBAn8jAEEQayICJAAgACgCACIDKAIEIQAgAygCCCEDIAJBBGogARDoAyADBEAgA0EMbCEBA0AgAiAANgIMIAJBBGogAkEMakHA28AAENsBIABBDGohACABQQxrIgENAAsLIAJBBGoQywMgAkEQaiQAC3EBAn8jAEEQayICJAAgACgCACIDKAIEIQAgAygCCCEDIAJBBGogARDoAyADBEAgA0ECdCEBA0AgAiAANgIMIAJBBGogAkEMakGQ3MAAENsBIABBBGohACABQQRrIgENAAsLIAJBBGoQywMgAkEQaiQAC2ABA38jAEEQayIDJAAgACgCACEAA0AgAiADakEPaiAAQQ9xLQDi9EA6AAAgAkEBayECIABBD0sgAEEEdiEADQALIAFB8vTAAEECIAIgA2pBEGpBACACaxBLIANBEGokAAtgAQN/IwBBEGsiAyQAIAAoAgAhAANAIAIgA2pBD2ogAEEPcS0A9PRAOgAAIAJBAWshAiAAQQ9LIABBBHYhAA0ACyABQfL0wABBAiACIANqQRBqQQAgAmsQSyADQRBqJAALbAECfyMAQRBrIgIkACAAKAIEIQMgACgCCCEAIAJBBGogARDoAyAABEAgAEEMbCEAA0AgAiADNgIMIAJBBGogAkEMakHA28AAENsBIANBDGohAyAAQQxrIgANAAsLIAJBBGoQywMgAkEQaiQAC2wBAn8jAEEQayICJAAgACgCBCEDIAAo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IAM2AgQgAUEQaiQAC2wBA38jAEEQayIBJAAgAUEEaiAAKAIAIgIgACgCBEEEIAJBAXQiAiACQQRNGyICQRBB0AAQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQRgQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQTAQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQSQQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQQQQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQQwQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQRwQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQQgQhgIgASgCBEEBRgRAIAEoAgggASgCDBDJBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAuBAQEBfyMAQRBrIgIkACACIAAoAgAi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2IbBAEEdQfSKwQAQzwQAC0GYhcEAQRxB5IrBABDPBAALQQAgAkEoQaj4wAAQtgEAC0GL+MAAQRpBqPjAABDPBAALQShBKEGo+MAAEPcCAAsLIB8gHiAQGyEDIBAgIHIhAiALIAsoAlAgCygCVCALLwFYQQAgC0EgahCaASALKAIEIQEgCygCAAwCCyALQQM2AiggC0Gk+cAANgIkIAtBAjsBIEEBIQNBACECQQEhASALQSBqDAELIAtBAzYCKCALQaf5wAA2AiQgC0ECOwEgIAtBIGoLIQAgCyABNgJcIAsgADYCWCALIAI2AlQgCyADNgJQIAtB0ABqEFsgC0GAAWokAA8LIAEgA0EARyEXIAEvAQ4hE0EAIQEjAEHwCGsiCiQAIDy9IilC/////////weDIi1CgICAgICAgAiEIClCAYZC/v///////w+DIClCNIinQf8PcSIDGyIoQgGDIStBAiEAAkACQAJAAkACQCAtUCICQQJBAyACG0EEIClCgICAgICAgPj/AIMiLVAbIC1CgICAgICAgPj/AFEbQQFrDgQAAQIDBAtBAyEADAMLQQQhAAwCCyADQbMIayEBICtQIQBCASEqDAELQoCAgICAgIAgIChCAYYgKEKAgICAgICACFEiARshKEICQgEgARshKiArUCEAQct3Qcx3IAEbIANqIQELIAogATsB6AggCiAqNwPgCCAKQgE3A9gIIAogKDcD0AggCiAAOgDqCAJ/AkAgAEEBTQRAQXRBBSABwSIAQQBIGyAAbCIAQcD9AEkNAUGg+sAAQSVByPrAABDPBAALAkACQCAAQQJHBEBBASEBQc30wABB4fTAACApQgBTIgMbQc30wABBASADGyAXGyEDIClCP4inIBdyIQIgAEEERw0BQQIhASAKQQI7AZAIIBMNAkEBIQEgCkEBNgKYCCAKQc70wAA2ApQIIApBkAhqDAQLIApBAzYCmAggCkGk+cAANgKUCCAKQQI7AZAIQQEhA0EAIQJBASEBIApBkAhqDAMLIApBAzYCmAggCkGn+cAANgKUCCAKQQI7AZAIIApBkAhqDAILIAogEzYCoAggCkEAOwGcCCAKQQI2ApgIIApBqvnAADYClAggCkGQCGoMAQtBzfTAAEEBIClCAFMiARshIUHN9MAAQeH0wAAgARsgKUI/iKchIyAKQZAIaiEM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CyACIAVLDQIgAgshACAUIBA7AQggFCAANgIECyAUIAg2AgAgCUHABmokAAwFC0EAIAIgBUGUisEAELYBAAtBACAEQShBqPjAABC2AQALQShBKEGo+MAAEPcCAAtBACABQShBqPjAABC2AQALQYv4wABBGkGo+MAAEM8EAAsLICEgFxshAyAXICNyIQIgGiAKLgHICCIASARAIApBCGogCigCwAggCigCxAggACATIApBkAhqEJoBIAooAgwhASAKKAIIDAELQQIhASAKQQI7AZAIIBNFBEBBASEBIApBATYCmAggCkHO9MAANgKUCCAKQZAIagwBCyAKIBM2AqAIIApBADsBnAggCkECNgKYCCAKQar5wAA2ApQIIApBkAhqCyEAIAogATYCzAggCiAANgLICCAKIAI2AsQIIAogAzYCwAggCkHACGoQWyAKQfAIaiQADwtBACADQShBqPjAABC2AQALQQAgAEEoQaj4wAAQtgEAC0UBAX9BGEEEEPkEIgJFBEBBBEEYEP8EAAsgAiABNgIUIAIgADYCECACIAE2AgwgAkEANgIIIAJCgYCAgBA3AgAgAkEIags6AQF/IwBBEGsiAiQAIAIgAK1CgICAgPALhDcDCCABKAIAIAEoAgRBv6fAACACQQhqEF8gAkEQaiQACzoBAX8jAEEQayICJAAgAiAArUKAgICA8AuENwMIIAEoAgAgASgCBEHOp8AAIAJBCGoQXyACQRBqJAALWwEBbyABKAIAJQEgAigCACUBIAMoAgAlARAgIQQQYyIBIAQmAUHwn8EAKAIAIQJB7J/BACgCACEDQeyfwQBCADcCACAAIAIgASADQQFGIgEbNgIEIAAgATYCAAtBAQF/IwBBEGsiASQAIAFBCGogACAAKAIAQQQQqAIgASgCCCIAQYGAgIB4RwRAIAAgASgCDBDJBAALIAFBEGokAAtGAQJ/IAEoAgQhAiABKAIAIQNBCEEEEPkEIgFFBEBBBEEIEP8EAAsgASACNgIEIAEgAzYCACAAQbzmwAA2AgQgACABNgIAC0kBAX8gASgCACACKAIAEMQEIQFB8J/BACgCACECQeyfwQAoAgAhA0Hsn8EAQgA3AgAgACACIAEgA0EBRiIBGzYCBCAAIAE2AgAL4AECAX8BfiMAQSBrIgMkACADIAE2AhAgAyAANgIMIANBATsB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SCADIBI2ApgBIAMgASACQQxsajYClAEgAyABNgKQASADIANByABqNgKcASADQRBqIQIjAEFAaiIBJAAgAUEQaiADQZABaiIGIAFBP2oiCyAGKAIMEJQBAkACQAJAIAEoAhBBAXEEQCABKAIUIRBBEEEEEPkEIglFDQIgCSAQNgIAIAEgCTYCICABQQQ2AhwgAUEBNgIkIAFBMGogBkEIaikCADcDACABIAYpAgA3AyggAUEIaiABQShqIAsgASgCNBCUASABKAIIQQFxBEAgASgCDCEKQQQhBkEBIQsDQCABKAIcIAtGBEAgAUEcaiALQQFBBEEEEIgCIAEoAiAhCQsgBiAJaiAKNgIAIAEgC0EBaiILNgIkIAEgAUEoaiABQT9qIAEoAjQQlAEgBkEEaiEGIAEoAgQhCiABKAIAQQFxDQALCyACIAEpAhw3AgAgAkEIaiABQSRqKAIANgIADAELIAJBADYCCCACQoCAgIDAADcCAAsgAUFAayQADAELQQRBEBDJBAALAkAgAygCSCIBQYCAgIB4RwRAIAMoAlAhAiADKAJMIQUgAygCECIJBEAgAygCFCAJQQJ0QQQQ5wQLIA4gAjYCDCAOIAU2AgggDiABNgIEIA5BgICAgHg2AgAMAQsgAygCGCELIAMoAhQhECADKAIQIRkCQAJAIA0oAgxBgICAgHhHBEAgDSgCECEFAkAgDSgCFCICRQRAQQQhAQwBCyACQQN0IglBBBD5BCIBRQ0CCyADQQA2AhggAyABNgIUIAMgAjYCECADQQA2ApQBIAMgA0EYajYCkAEgAyABNgKYASAFIAUgAkEMbGogA0GQAWoQwwEgAygCECEIIAMoAhghFSADKAIUIQULAkACQCANKAIYQYCAgIB4RwRAIA0oAiAhAiANKAIcIQkQwwQiAUUNAiABIAEpAwAiOUIBfDcDACABKQMIITogA0GYAWoiBkHA0MAAKQMANwMAIANBuNDAACkDADcDkAEgAyA6NwOoASADIDk3A6ABIAIEQCAJQQhqIQEDQCADQQhqIBIgAUEEaygCACABKAIAEHogAygCCEEBcQRAIANBkAFqIAMoAgwQdAsgAUEMaiEBIAJBAWsiAg0ACwsgA0EoaiADQagBaikDADcDACADQSBqIANBoAFqKQMANwMAIANBGGogBikDADcDACADIAMpA5AB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IABBMGohACAQQRhqIRAgB0EBayIHDQALIAtBCGohAANAIARBBGogEyASIAYgASAAQQRrKAIAIAAoAgAQjwEgBCgCBEGAgICAeEcEQCAKIAQpAgQ3AgAgCkEIaiAEQQxqKAIANgIADAULIABBMGohACAUQTBrIhQNAAsMAgtBBCAAEMkECwALIARBBGogEyASIAYgASANKAIYIA0oAhwQjwEgBCgCBEGAgICAeEcEQCAKIAQpAgQ3AgAgCkEIaiAEQQxqKAIANgIADAELIApBgICAgHg2AgALIAEEQCAGIQAgASELA0AgACgCACIHIAcoAgBBAWsiBzYCACAHRQRAIAAQkQMLIABBGGohACALQQFrIgsNAAsgBiABQRhsQQQQ5wQLIARBEGokACACIAIoAgBBAWs2AgAgDyAPKAIAQQFrIgA2AgAgAEUEQCADQSBqEIQDCyARIBEoAgBBAWs2AgAgDiAOKAIAQQFrIgA2AgAgAEUEQCADQRRqEFELQQAhACAJQQA2AgAgDCAMKAIAQQFrIgE2AgAgAUUEQCADQQhqEPQBCyADKAIkQYCAgIB4RwRAQRhBBBD5BCIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgAykCJDcCDCAAQRRqIANBLGooAgA2AgAgAEEIahDYBCEBQQEhAAsgCCAANgIEIAggAUEAIAAbNgIAIANBMGokAAwECxD7BAsACxD9BAALQQRBGBD/BAALIAgoAgAgCCgCBCAIQRBqJAALkBUCEn8BfiMAQRBrIgokACMAQdADayIGJAACQAJAAkACQAJAIAAiDARAIABBCGsiDyAPKAIAQQFqIgA2AgAgAEUNASAMKAIAIgBBf0YNAiAMIABBAWo2AgAgBiAPNgL0ASAGIAw2AvABIAYgDEEEaiIHNgLsASMAQfACayIBJAAQ5gIhE0GYoMEALQAAQQJHBEAQ1wELIAZBCGohECABQcgBakGoq8AAKQMANwMAIAFCgICAgMAANwPYASABQn83A7gBIAFCADcDsAEgAUIENwOoASABQgA3A6ABIAFCgICAgMAANwOYASABQgA3AowBIAFBADYCCCABIBM3A9ABIAFCADcD4AEgAUGgq8AAKQMANwPAASABQQA2AvABIAFCgICAgMAANwLoASABQQA2AvwBIAFCgICAgMAANwL0ASAHKAIIIgRB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ACACaDYCDCAAIABBDGqtQoCAgIDwF4Q3AxggACAAQQhqrUKAgICAgBiENwMQIAEoAgAgASgCBEHqp8AAIABBEGoQXyAAQSBqJAALGgACfyABQQlPBEAgASAAEIoBDAELIAAQJgsLDgAgAUGk38AAQQUQ1gQLDQBBxOLAAEEbEPwEAAsJACAAIAEQIgALDgBB3+LAAEHPABD8BAALDAAgACABKQIANwMACz4BAX8jAEEQayICJAAgAiABNgIMIAIgADYCCCACQQhqIgAoAgAgACgCBEGEpMEAKAIAIgBBnwEgABsRAgAACw4AIAFByOjAAEEFENYECw4AIAFB0OrAAEELENYECwwAIAAoAgAgARC6AQsKACACIAAgARBVCw0AIAFBxp7BAEEYEFULCgAgACABJQEQAwsJACAAIAEQvgQLDABBgKTBAEEBOgAACwkAIABBADYCAAsIACAAJQEQFwsIACAAJQEQGAuVBgMGfwF+AW8CQCMAQTBrIgIkACACQQA2AhwgAkKAgICAEDcCFCACQbTewAA2AiQgAkKggICABjcCKCACIAJBFGo2AiAjAEEwayIDJABBASEHAkAgAkEgaiIEQaHmwABBDBDWBA0AIAQoAgQhBiAEKAIAIAMgASgCCCIFKQIANwIIIAMgBUEMaq1CgICAgBCENwMgIAMgBUEIaq1CgICAgBCENwMYIAMgA0EIaq1CgICAgKAUhDcDECAGQY2CwAAgA0EQaiIFEF8NACAFIAEoAgAiACABKAIEKAIMIgYRAgAgACEBAkAgAykDEELtuq22zYXU9eMAhSADKQMYQviCmb2V7sbFuX+FhFAEf0EEBSAFIAAgBhECACADKQMQQqOU79Hk9J2+k3+FIAMpAxhCwsal+vrym9mEf4WEQgBSDQEgAEEEaiEBQQgLIABqKAIAIQYgASgCACEAIARBrebAAEECENYEDQEgBCAAIAYQ1gQNAQtBACEHCyADQTBqJAACQCAHRQRAIAJBEGogAkEcaigCACIBNgIAIAIgAikCFCIINwMIIAinIgcgAWtBCU0EQCACQQhqIAFBChCpAiACKAIIIQcgAigCECEBCyACKAIMIgMgAWoiAEGn3sAAKQAANwAAIABBCGpBr97AAC8AADsAACACIAFBCmoiATYCEBATIQkQYyIFIAkmASACQSBqIAUlARAUIAIoAiAhBiACKAIkIgQgByABa0sEQCACQQhqIAEgBBCpAiACKAIIIQcgAigCDCEDIAIoAhAhAQsgBARAIAEgA2ogBiAE/AoAAAsgAiABIARqIgE2AhAgByABa0EBTQRAIAJBCGogAUECEKkCIAIoAgwhAyACKAIQIQELIAEgA2pBihQ7AAAgAiABQQJqIgE2AhAgASACKAIIIgBJBEAgAyAAQQEgARDgBCIDRQ0CCyADIAEQFSAEBEAgBiAEQQEQ5wQLIAVBhAFPBEAgBRCsAwsgAkEwaiQADAILQdzewABBNyACQQhqQczewABBlN/AABDsAgALQQEgARDJBAALCwQAEGMLFAIBbwF/EBIhABBjIgEgACYBIAELC7KdARUAQYCAwAALoythdHRlbXB0ZWQgdG8gdGFrZSBvd25lcnNoaXAgb2YgUnVzdCB2YWx1ZSB3aGlsZSBpdCB3YXMgYm9ycm93ZWRmYWlsZWQgdG8gYWRkIGVkZ2UsIHNvdXJjZSBub2RlIG5vdCBmb3VuZA5iZWdpbiA8PSBlbmQgKMAEIDw9IMAQKSB3aGVuIHNsaWNpbmcgYMABYMAAC2J5dGUgaW5kZXggwBYgaXMgb3V0IG9mIGJvdW5kcyBvZiBgwAFgwAALYnl0ZSBpbmRleCDAJiBpcyBub3QgYSBjaGFyIGJvdW5kYXJ5OyBpdCBpcyBpbnNpZGUgwAggKGJ5dGVzIMAGKSBvZiBgwAFgwADAAT3AAMABOsABOsAAAyB8IMAAFnNsaWNlIGluZGV4IHN0YXJ0cyBhdCDADSBidXQgZW5kcyBhdCDAACBpbmRleCBvdXQgb2YgYm91bmRzOiB0aGUgbGVuIGlzIMASIGJ1dCB0aGUgaW5kZXggaXMgwAAwUmV2aXNpb24gbWlzbWF0Y2guIEVkZ2Ugd2FzIGNyZWF0ZWQgaW4gcmV2aXNpb24gwBosIGJ1dCBjdXJyZW50IHJldmlzaW9uIGlzIMAAEnJhbmdlIHN0YXJ0IGluZGV4IMAiIG91dCBvZiByYW5nZSBmb3Igc2xpY2Ugb2YgbGVuZ3RoIMAAEHJhbmdlIGVuZCBpbmRleCDAIiBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCDAAAZSb3VuZCDAAMAFbXMgPiDAABBhc3NlcnRpb24gYGxlZnQgwBcgcmlnaHRgIGZhaWxlZAogIGxlZnQ6IMAJCiByaWdodDogwAAQYXNzZXJ0aW9uIGBsZWZ0IMAQIHJpZ2h0YCBmYWlsZWQ6IMAJCiAgbGVmdDogwAkKIHJpZ2h0OiDAACpleHRlbnNpb24gY2Fubm90IGNvbnRhaW4gcGF0aCBzZXBhcmF0b3JzOiDAAEhjYW5ub3QgYWNjZXNzIGEgVGhyZWFkIExvY2FsIFN0b3JhZ2UgdmFsdWUgZHVyaW5nIG9yIGFmdGVyIGRlc3RydWN0aW9uOiDAACxFcnJvciBjYWxsaW5nIHVwZGF0ZSBub3RpZmljYXRpb24gZnVuY3Rpb246IMAAGEVycm9yIGNhbGxpbmcgZnVuY3Rpb246IMAAJ0Vycm9yIGNhbGxpbmcgZWRnZSBpdGVyYXRpb24gY2FsbGJhY2s6IMAAJ0Vycm9yIGNhbGxpbmcgbm9kZSBpdGVyYXRpb24gY2FsbGJhY2s6IMAAwAI6IMAAAVvAAl0gwAEgwAALYnl0ZSBpbmRleCDAGSBpcyBub3QgYW4gT3NTdHIgYm91bmRhcnkAL3J1c3RjLzRhNGVmNDkzZTNhMTQ4OGM2ZTMyMTU3MDIzODA4NGIzODk0OGY2ZGIvbGlicmFyeS9jb3JlL3NyYy9zdHIvbG9zc3kucnMAL3J1c3RjLzRhNGVmNDkzZTNhMTQ4OGM2ZTMyMTU3MDIzODA4NGIzODk0OGY2ZGIvbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9ncmlzdS5ycwAvcnVzdGMvNGE0ZWY0OTNlM2ExNDg4YzZlMzIxNTcwMjM4MDg0YjM4OTQ4ZjZkYi9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL3NvcnQvc2hhcmVkL3NtYWxsc29ydC5ycwAvaG9tZS9ydW5uZXIvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtdW5rbm93bi1saW51eC1nbnUvbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9jb3JlL3NyYy9zbGljZS9zb3J0L3N0YWJsZS9xdWlja3NvcnQucnMAL3J1c3RjLzRhNGVmNDkzZTNhMTQ4OGM2ZTMyMTU3MDIzODA4NGIzODk0OGY2ZGIvbGlicmFyeS9hbGxvYy9zcmMvZm10LnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3ZlYy1jb2xsZWN0aW9ucy0wLjQuMy9zcmMvdmVjX3NldC5ycwAvcnVzdGMvNGE0ZWY0OTNlM2ExNDg4YzZlMzIxNTcwMjM4MDg0YjM4OTQ4ZjZkYi9saWJyYXJ5L2NvcmUvc3JjL251bS9kaXlfZmxvYXQucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGV0Z3JhcGgtMC44LjMvc3JjL2l0ZXJfZm9ybWF0LnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvY29yZS9zcmMvZm10L2J1aWxkZXJzLnJzAHNyYy91dGlscy5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93ZWItdGltZS0xLjEuMC9zcmMvdGltZS9qcy5ycwAvaG9tZS9ydW5uZXIvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtdW5rbm93bi1saW51eC1nbnUvbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5cy90aHJlYWRfbG9jYWwvbm9fdGhyZWFkcy5ycwAvcnVzdGMvNGE0ZWY0OTNlM2ExNDg4YzZlMzIxNTcwMjM4MDg0YjM4OTQ4ZjZkYi9saWJyYXJ5L3N0ZC9zcmMvZmZpL29zX3N0ci5ycwAvaG9tZS9ydW5uZXIvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtdW5rbm93bi1saW51eC1nbnUvbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvc3RyLnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvY29yZS9zcmMvc2xpY2UvbWVtY2hyLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2luZGV4bWFwLTIuMTMuMC9zcmMvaW5uZXIucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvc3RyL3BhdHRlcm4ucnMAL3J1c3RjLzRhNGVmNDkzZTNhMTQ4OGM2ZTMyMTU3MDIzODA4NGIzODk0OGY2ZGIvbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9kcmFnb24ucnMAL3J1c3RjLzRhNGVmNDkzZTNhMTQ4OGM2ZTMyMTU3MDIzODA4NGIzODk0OGY2ZGIvbGlicmFyeS9jb3JlL3NyYy9udW0vYmlnbnVtLnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvY29yZS9zcmMvZm10L251bS5ycwBzcmMvZGF0YS90cmF2ZXJzYWwucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy90aHJlYWQvbG9jYWwucnMAc3JjL3RyYXZlcnNhbC9wYXRoLnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvc3RkL3NyYy9wYXRoLnJzAHNyYy91cGRhdGUvZ3JhcGgucnMAc3JjL2dyYXBoLnJzAHNyYy9lZGdlX3NvcnRpbmcucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvcnVzdGMvNGE0ZWY0OTNlM2ExNDg4YzZlMzIxNTcwMjM4MDg0YjM4OTQ4ZjZkYi9saWJyYXJ5L3N0ZC9zcmMvcGFuaWNraW5nLnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvY29yZS9zcmMvdW5pY29kZS9wcmludGFibGUucnMAc3JjL2RhdGEvbm9kZS5ycwAvaG9tZS9ydW5uZXIvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtdW5rbm93bi1saW51eC1nbnUvbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvb25jZS5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9oYXNoYnJvd24tMC4xNS41L3NyYy9yYXcvbW9kLnJzAC9ydXN0L2RlcHMvaGFzaGJyb3duLTAuMTYuMS9zcmMvcmF3L21vZC5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9oYXNoYnJvd24tMC4xNi4xL3NyYy9yYXcvbW9kLnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvY29yZS9zcmMvZm10L21vZC5ycwBzcmMvdHJhdmVyc2FsL21vZC5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wZXRncmFwaC0wLjguMy9zcmMvZ3JhcGhfaW1wbC9zdGFibGVfZ3JhcGgvbW9kLnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMvbW9kLnJzAC9ydXN0Yy80YTRlZjQ5M2UzYTE0ODhjNmUzMjE1NzAyMzgwODRiMzg5NDhmNmRiL2xpYnJhcnkvY29yZS9zcmMvbnVtL2ZsdDJkZWMvbW9kLnJzAHNyYy9kYXRhL21vZC5ycwBzcmMvbWVybWFpZC5ycwAvcnVzdGMvNGE0ZWY0OTNlM2ExNDg4YzZlMzIxNTcwMjM4MDg0YjM4OTQ4ZjZkYi9saWJyYXJ5L2FsbG9jL3NyYy9yYy5ycwAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi4xMS9zcmMvZGxtYWxsb2MucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvY29uc29sZV9lcnJvcl9wYW5pY19ob29rLTAuMS43L3NyYy9saWIucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvZm9sZGhhc2gtMC4xLjUvc3JjL2xpYi5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9vbmNlX2NlbGwtMS4yMS40L3NyYy9saWIucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvc21hbGx2ZWMtMS4xNS4xL3NyYy9saWIucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvaXRlcnRvb2xzLTAuMTQuMC9zcmMvbGliLnJzAAdBZGRpbmcgwAYgRWRnZXMACFJlbW92ZWQgwBAgaW1wbGllZCBlZGdlcywgwBYgZXhwbGljaXQgZWRnZXMgcmVtYWluACJTdGFibGVHcmFwaDo6YWRkX2VkZ2U6IG5vZGUgaW5kZXggwBsgaXMgbm90IGEgbm9kZSBpbiB0aGUgZ3JhcGgAJEF0dGVtcHRlZCB0byByZW1vdmUgdW5yZXNvbHZlZCBub2RlIMAPIGZyb20gdGhlIGdyYXBoAAZOb2RlICLACyIgbm90IGZvdW5kAAZjbGFzcyDADiBpcy11bnJlc29sdmVkAAtQZXJmTG9nZ2VyIMATIGlzIGFscmVhZHkgc3RvcHBlZAAKRWRnZUluZGV4KMABKQAKTm9kZUluZGV4KMABKQAISnNWYWx1ZSjAASkAwAcgKDEgPDwgwAEpAAZjbGFzcyDADyBpbnRlcm5hbC1saW5rCgAGY2xhc3MgwBAgQkMtYWN0aXZlLW5vZGUKAAQgICAgwAIoIsADIikKAAQgICAgwAEgwAJ8IsADInwgwAEKAAQgICAgwAEgwAEgwAEKAAAAAAsMEAATAAAAbgAAABQAAAALDBAAEwAAACsAAAAtAAAAVGhlcmUgYWxyZWFkeSBleGlzdHMgYSByZXNvbHZlZCBub2RlIHdpdGggdGhlIHNhbWUgbmFtZS5mYWlsZWQgdG8gZGVsZXRlIGVkZ2UsIHNvdXJjZSBub2RlIG5vdCBmb3VuZGZhaWxlZCB0byBkZWxldGUgZWRnZSwgdGFyZ2V0IG5vZGUgbm90IGZvdW5kZmFpbGVkIHRvIGRlbGV0ZSBlZGdlLCBlZGdlIG5vdCBmb3VuZGZhaWxlZCB0byByZW1vdmUgbm9kZSwgbm9kZSBub3QgZm91bmRmYWlsZWQgdG8gcmVuYW1lIG5vZGUsIG9sZCBub2RlIG5vdCBmb3VuZAALDBAAEwAAAFsAAAAwAAAAAAAAAP//////////mBUQAEGwq8AAC90EQXBwbHlpbmcgVXBkYXRlUmVtb3ZpbmcgaW1wbGllZCBlZGdlc0FwcGx5aW5nIHVwZGF0ZXNSZWJ1aWxkaW5nIGVkZ2UgdHlwZSB0cmFja2VyVXBkYXRlIG5vdGlmaWNhdGlvbiBjYWxsYmFja2ZhaWxlZCB0byBnZXQgbm9kZSB3ZWlnaHQsIG5vZGUgbm90IGZvdW5kQnVpbGRpbmcgSW1wbGllZCBFZGdlc0FwcGx5aW5nIFJ1bGVzAAAfDBAADAAAAJEBAAAcAAAAHwwQAAwAAADEAQAAPAAAAAsMEAATAAAAkAAAABYAAAAHAAAADAAAAAQAAAAIAAAAY2FsbGVkIGBSZXN1bHQ6OnVud3JhcCgpYCBvbiBhbiBgRXJyYCB2YWx1ZQBQEBAADgAAAFEBAAA/AAAAUBAQAA4AAABZAQAARAAAAFAQEAAOAAAAYwEAADsAAAAtLT4tLi0+LS0tLS4tLCAgfCAsVHJhdmVyc2FsIGV4Y2VlZGVkIGxpbWl0IG9mIDEwLDAwMCBub2Rlcy4gVHJ5IGRlY3JlYXNpbmcgdGhlIG1heCBkZXB0aC4AABIPEAAUAAAAPgEAAFAAAAAAAAAABAAAAAQAAAAJAAAATm90ZUdyYXBoRXJyb3JtZXNzYWdlAAAACgAAAAwAAAAEAAAACwAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUAIgsQABUAAACdAAAATQAAACILEAAVAAAAnQAAACcAAAAKAAAADAAAAAQAAAAMAAAADQAAAA4AQZiwwAALkw4BAAAADwAAAGEgRGlzcGxheSBpbXBsZW1lbnRhdGlvbiByZXR1cm5lZCBhbiBlcnJvciB1bmV4cGVjdGVkbHkAQAwQAHAAAABmCwAADgAAAEVycm9yAAAAAAAAAAQAAAAEAAAACQAAAE5vdGVHcmFwaEVycm9ybWVzc2FnZWF0dGVtcHRlZCB0byB0YWtlIG93bmVyc2hpcCBvZiBSdXN0IHZhbHVlIHdoaWxlIGl0IHdhcyBib3Jyb3dlZMEgAIBgAEVycm9yABMAAAAMAAAABAAAABQAAAAVAAAADgAAABMAAAAMAAAABAAAABYAAAAAAAAABAAAAAQAAAAJAAAAR0NFZGdlRGF0YXNvdXJjZXRhcmdldGVkZ2VfdHlwZWVkZ2Vfc291cmNlAAAXAAAADAAAAAQAAAAYAAAAAAAAAAEAAAABAAAAGQAAAAAAAAAEAAAABAAAABoAAABHQ05vZGVEYXRhcGF0aGFsaWFzZXNyZXNvbHZlZGlnbm9yZV9pbl9lZGdlc2lnbm9yZV9vdXRfZWRnZXMAAAAAAAAAAAEAAAAbAAAAY2FsbGVkIGBSZXN1bHQ6OnVud3JhcCgpYCBvbiBhbiBgRXJyYCB2YWx1ZQBVEhAAXQAAAIIJAAA2AAAAVRIQAF0AAACFCQAANAAAAGF0dGVtcHRlZCB0byB0YWtlIG93bmVyc2hpcCBvZiBSdXN0IHZhbHVlIHdoaWxlIGl0IHdhcyBib3Jyb3dlZMEgAIBgAGxpbmtfZGlzcGxheWxpbmtfcGF0aHRhcmdldF9yZXNvbHZlZGV4cGxpY2l0ZWRnZV9zb3VyY2VhdHRyaWJ1dGVfbGFiZWxoYXNfY3V0X29mX2NoaWxkcmVuQ2FwYWNpdHlPdmVyZmxvdwAAAAAAAAQAAAAEAAAAHwAAAEFsbG9jRXJybGF5b3V0AAAAAAAACAAAAAQAAAAgAAAAY2FsbGVkIGBSZXN1bHQ6OnVud3Jh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");var xd=class{constructor(e){this.plugin=e}get fields(){return this.plugin.settings.edge_fields}get field_groups(){return this.plugin.settings.edge_field_groups}async refresh(){await this.plugin.rebuildGraph()}create_list_index(e,r){if(e??(e=lo(xt)?.path),!e)throw new Error("No active file");return xA(this.plugin.graph,e,this.plugin.settings,Object.assign({...oi},r))}get_neighbours(e){return e??(e=lo(xt)?.path),e&&this.plugin.graph.has_node(e)?this.plugin.graph.get_outgoing_edges(e):void 0}};var P6=require("obsidian");var eD=q('

Breadcrumbs Codeblock Errors

The codeblock YAML has errors in the following keys/properties:


See the codeblock docs for more info

Version:

',1);function en(t,e){ae(e,!0);let r=e.errors.map(s=>`- **\`${s.path}\`**: ${s.message}`).join(` +grid-template-columns: ${i??""};`),[()=>"1fr ".repeat(o.at(0)?.length??0)]),v(t,s),ne()}var E$=q(''),I$=q('
'),$$=q('
'),D$=q('
'),F$={hash:"svelte-13n7zkv",code:'.BC-trail-view.svelte-13n7zkv {overflow:hidden;border-radius:var(--radius-m);border:1px solid var(--background-modifier-border);background-color:var(--background-primary);}.BC-trail-view-item-separator.svelte-13n7zkv::before {content:">";}'};function Rm(t,e){ae(e,!0),Ua(t,F$);let r=hr(e.plugin.settings,e.plugin.settings.views.page.trail.show_node_options),o=e.all_paths.map(n=>n.reverse_edges);var a=D$();ot(a,21,()=>o,lt,(n,s)=>{var i=$$();ot(i,21,()=>d(s),lt,(l,u,A)=>{var c=I$(),p=w(c);{var m=y=>{var I=E$();oe(F=>Xe(I,"aria-label",F),[()=>d(u).get_attribute_label(e.plugin.graph,["source","implied_kind","round"])]),v(y,I)};se(p,y=>{A!==0&&y(m)})}var h=S(p,2);ja(h,{get edge(){return d(u)},get plugin(){return e.plugin},get node_stringify_options(){return r}}),b(c),v(l,c)}),b(i),v(n,i)}),b(a),v(t,a),ne()}var B$=async(t,e)=>await e().saveSettings(),S$=q(""),C$=async(t,e)=>await e().saveSettings(),T$=q(""),O$=(t,e)=>te(e,Math.max(1,d(e)-1),!0),M$=(t,e,r)=>te(e,Math.min(d(r),d(e)+1),!0),N$=q('
',1),q$=q('

'),P$=q("
");function Lm(t,e){ae(e,!0);var r,o,a;let n=U(e,"plugin",15);H.debug("Rendering Trail page view for file:",e.file_path);let s=kt(structuredClone(pr(n().settings.views.page.trail))),i=!0;jt(()=>{if(i){i=!1;return}n(n().settings.views.page.trail=pr(s),!0),Re(()=>void n().saveSettings())});let l=de(()=>{let h=Cr(n().settings.edge_field_groups,n().settings.views.page.trail.field_group_labels),y=new Nt([e.file_path],h,5,100,!s.merge_fields,void 0),I=n().graph.rec_traverse(y);return{selected_paths:I.to_paths().select(s.selection),hit_depth_limit:I.hit_depth_limit}}),u=de(()=>Math.max(0,(o=(r=d(l).selected_paths)===null||r===void 0?void 0:r.max_depth())!==null&&o!==void 0?o:0)),A=We(0);jt(()=>{te(A,Math.min(d(u),n().settings.views.page.trail.default_depth),!0)});let c=de(()=>(a=d(l).selected_paths)===null||a===void 0?void 0:a.process(n().graph,d(A)));var p=P$(),m=w(p);so(m,()=>d(c),h=>{var y=J(),I=K(y);{var F=B=>{var j=N$(),E=K(j);let D;var k=w(E);k.__change=[B$,n],ot(k,20,()=>["grid","path"],lt,(M,Z)=>{var _e=S$(),Ne=w(_e,!0);b(_e);var at={};oe(()=>{Fe(Ne,Z),at!==(at=Z)&&(_e.value=(_e.__value=Z)??"")}),v(M,_e)}),b(k);var C=S(k,2);C.__change=[C$,n],ot(C,20,()=>["all","shortest","longest"],lt,(M,Z)=>{var _e=T$(),Ne=w(_e,!0);b(_e);var at={};oe(()=>{Fe(Ne,Z),at!==(at=Z)&&(_e.value=(_e.__value=Z)??"")}),v(M,_e)}),b(C);var P=S(C,2);rA(P,{get merge_fields(){return s.merge_fields},set merge_fields(M){s.merge_fields=M}});var le=S(P,2),xe=w(le);xe.__click=[O$,A];var fe=S(xe,2),He=w(fe);b(fe);var G=S(fe,2);G.__click=[M$,A,u],b(le),b(E);var Y=S(E,2);{var De=M=>{Pm(M,{get plugin(){return n()},get all_paths(){return d(c)}})},T=M=>{var Z=J(),_e=K(Z);{var Ne=at=>{Rm(at,{get plugin(){return n()},get all_paths(){return d(c)}})};se(_e,at=>{s.format==="path"&&at(Ne)},!0)}v(M,Z)};se(Y,M=>{s.format==="grid"?M(De):M(T,!1)})}oe(M=>{D=ut(E,1,"mb-1 flex flex-wrap justify-between gap-3",null,D,M),xe.disabled=d(A)<=1,Xe(fe,"aria-label",d(l).hit_depth_limit?"Some paths have been truncated":""),Fe(He,`${d(A)??""}/${d(u)??""} + ${d(l).hit_depth_limit?" (truncated)":""}`),G.disabled=d(A)>=d(u)},[()=>({hidden:!n().settings.views.page.trail.show_controls})]),zf(k,()=>s.format,M=>s.format=M),zf(C,()=>s.selection,M=>s.selection=M),v(B,j)},R=B=>{var j=J(),E=K(j);{var D=k=>{var C=q$(),P=w(C,!0);b(C),oe(()=>Fe(P,n().settings.views.page.trail.no_path_message)),v(k,C)};se(E,k=>{n().settings.views.page.trail.no_path_message&&k(D)},!0)}v(B,j)};se(I,B=>{d(c)&&d(c).length?B(F):B(R,!1)})}v(h,y)}),b(p),v(t,p),ne()}Ke(["change","click"]);var R$=q('
');function Gm(t,e){ae(e,!0);let r=e.plugin.settings.views.page.trail.enabled,o=e.plugin.settings.views.page.prev_next.enabled;var a=J(),n=K(a);{var s=i=>{var l=R$(),u=w(l);{var A=m=>{Lm(m,{get plugin(){return e.plugin},get file_path(){return e.file_path}})};se(u,m=>{r&&m(A)})}var c=S(u,2);{var p=m=>{qm(m,{get plugin(){return e.plugin},get file_path(){return e.file_path}})};se(c,m=>{o&&m(p)})}b(l),v(i,l)};se(n,i=>{(r||o)&&i(s)})}v(t,a),ne()}function oA(t){let e=t.app.workspace.getLeavesOfType("markdown");if(!e.length){H.info("redraw_page_views > No markdown views found");return}e.forEach(r=>{if(!(r.view instanceof I6.MarkdownView))return;let o=r.view,a=o.getMode(),n=o.containerEl.querySelector(".BC-page-views")??o.containerEl.createDiv({cls:"BC-page-views w-full mx-auto"}),s=t.settings.views.page.all.readable_line_width?"var(--file-line-width)":"none";if(n.setAttribute("style",`max-width: ${s};`),n.classList.toggle("BC-page-views-sticky",t.settings.views.page.all.sticky),n.empty(),a==="preview"){let i=o.containerEl.querySelector(".markdown-reading-view > .markdown-preview-view");if(!i){H.info("redraw_page_views > No view_parent (mode=preview)");return}i.insertBefore(n,i.firstChild)}else{let i=o.containerEl.querySelector(".cm-scroller");if(!i){H.info("redraw_page_views > No view_parent (mode=source)");return}i.addClass("flex-col"),i.insertBefore(n,i.firstChild)}Be(Gm,{target:n,props:{plugin:t,file_path:o.file?.path??""}})})}var $6=(t,e)=>{pe(e,{name:"Sticky",desc:"Keep the page views pinned to the top of the note as you scroll",toggle:{value:t.settings.views.page.all.sticky,cb:async r=>{t.settings.views.page.all.sticky=r,await t.saveSettings(),oA(t)}}}),pe(e,{name:"Readable line width",desc:"Limit to the width of the text in the editor",toggle:{value:t.settings.views.page.all.readable_line_width,cb:async r=>{t.settings.views.page.all.readable_line_width=r,await t.saveSettings(),oA(t)}}})};var D6=require("obsidian");var F6=(t,e)=>{new D6.Setting(e).setName("Enable Previous/Next view").setDesc("Show the Previous/Next view at the top of the page").addToggle(r=>{r.setValue(t.settings.views.page.prev_next.enabled).onChange(async o=>{t.settings.views.page.prev_next.enabled=o,t.refreshViews(),await t.saveSettings()})}),Be(yr,{target:e,props:{name:"Field Groups for Left",description:"Select the field groups to show in the left side of this view",edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.page.prev_next.field_group_labels.prev,select_cb:async r=>{t.settings.views.page.prev_next.field_group_labels.prev=r,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{name:"Field Groups for Right",description:"Select the field groups to show in the right side of this view",edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.page.prev_next.field_group_labels.next,select_cb:async r=>{t.settings.views.page.prev_next.field_group_labels.next=r,t.refreshViews(),await t.saveSettings()}}}),Hr(t,e,{get:()=>t.settings.views.page.prev_next.show_node_options,set:r=>t.settings.views.page.prev_next.show_node_options=r})};var B6=(t,e)=>{pe(e,{name:"Notify on refresh",desc:"Show a notification when the graph is rebuilt",toggle:{value:t.settings.commands.rebuild_graph.notify,cb:async r=>{t.settings.commands.rebuild_graph.notify=r,await Promise.all([t.saveSettings(),t.rebuildGraph()])}}}),pe(e,{name:"Triggers",desc:"When to rebuild the graph",checklist:{options:{note_save:t.settings.commands.rebuild_graph.trigger.note_save,layout_change:t.settings.commands.rebuild_graph.trigger.layout_change},cb:async r=>{t.settings.commands.rebuild_graph.trigger=r,await Promise.all([t.saveSettings(),t.rebuildGraph()])}}})};var S6=(t,e)=>{pe(e,{name:"Default Field",desc:"Field to use if the BC-regex-note-field is not specified",select:{value:t.settings.explicit_edge_sources.regex_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.regex_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var C6=(t,e)=>{pe(e,{name:"Default Field",desc:"Field to use if the BC-tag-note-field is not specified",select:{value:t.settings.explicit_edge_sources.tag_note.default_field,options:t.settings.edge_fields.map(r=>r.label),cb:async r=>{t.settings.explicit_edge_sources.tag_note.default_field=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])}}})};var T6=(t,e)=>{let{settings:r}=t;pe(e,{name:"Destination",desc:"Where to write the new edge to",select:{options:["frontmatter","dataview-inline","none"],value:r.commands.thread.default_options.destination,cb:async o=>{r.commands.thread.default_options.destination=o,await t.saveSettings()}}}),pe(e,{name:"Target Path Template",desc:"The template to use for the target path. You don't need to add the .md extension.",input:{value:r.commands.thread.default_options.target_path_template,cb:async o=>{r.commands.thread.default_options.target_path_template=o,await t.saveSettings()}}})};var $W=require("obsidian"),O6=(t,e)=>{pe(e,{name:"Collapse",desc:"Collapse the tree by default",toggle:{value:t.settings.views.side.tree.collapse,cb:async r=>{t.settings.views.side.tree.collapse=r,t.refreshViews(),await t.saveSettings()}}}),Be(Xa,{target:e,props:{edge_sort_id:t.settings.views.side.tree.edge_sort_id,select_cb:async r=>{t.settings.views.side.tree.edge_sort_id=r,t.refreshViews(),await t.saveSettings()}}}),Be(Qa,{target:e,props:{show_attributes:t.settings.views.side.tree.show_attributes,select_cb:async r=>{t.settings.views.side.tree.show_attributes=r,t.refreshViews(),await t.saveSettings()}}}),Be(yr,{target:e,props:{edge_field_groups:t.settings.edge_field_groups,field_group_labels:t.settings.views.side.tree.field_group_labels,select_cb:async r=>{t.settings.views.side.tree.field_group_labels=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Merge Fields",desc:"Merge fields in the traversal, instead of keeping their paths separate",toggle:{value:t.settings.views.side.tree.merge_fields,cb:async r=>{t.settings.views.side.tree.merge_fields=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock View",desc:"Lock the tree view to the current file",toggle:{value:t.settings.views.side.tree.lock_view,cb:async r=>{t.settings.views.side.tree.lock_view=r,t.refreshViews(),await t.saveSettings()}}}),pe(e,{name:"Lock Path",desc:"Path to lock the tree view to (overrides current file)",input:{value:t.settings.views.side.tree.lock_path,cb:async r=>{r?(t.settings.views.side.tree.lock_path=r,await Promise.all([t.rebuildGraph(),t.saveSettings()])):t.settings.views.side.tree.lock_path=r}}}),Hr(t,e,{get:()=>t.settings.views.side.tree.show_node_options,set:r=>t.settings.views.side.tree.show_node_options=r})};function sr(t,e){let r=t.createEl("details",{cls:"tree-item",...e?.d}),o=r.createEl("summary",{cls:"text-xl p-1 tree-item-self is-clickable",...e?.s}),a=r.createEl("div",{cls:"tree-item-children pl-4"});return{details:r,summary:o,children:a}}var hd=class extends gd.PluginSettingTab{constructor(r,o){super(r,o);this.components=[];this.plugin=o}display(){let{containerEl:r,plugin:o}=this;r.empty(),r.addClass("BC-settings-tab"),this.components.push(Be(Fm,{props:{plugin:o},target:sr(r,{s:{text:"> Edge Fields"}}).children})),r.createEl("hr"),r.createEl("h3",{text:"Implied Relations"}),this.components.push(Be(Om,{props:{plugin:o},target:sr(r,{s:{text:"> Transitive"}}).children})),r.createEl("hr"),r.createEl("h3",{text:"Edge Sources"}),C6(o,sr(r,{s:{text:"> Tag Notes"}}).children),y6(o,sr(r,{s:{text:"> List Notes"}}).children),u6(o,sr(r,{s:{text:"> Date Notes"}}).children),S6(o,sr(r,{s:{text:"> Regex Notes"}}).children),d6(o,sr(r,{s:{text:"> Dendron Notes"}}).children),j6(o,sr(r,{s:{text:"> Johnny.Decimal Notes"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Views"}),E6(o,sr(r,{s:{text:"> Matrix"}}).children);let a=sr(r,{s:{text:"> Page"}}).children;a.createEl("h5",{text:"General"}),$6(o,a),a.createEl("h5",{text:"Trail"}),h6(o,a),a.createEl("h5",{text:"Previous/Next"}),F6(o,a),O6(o,sr(r,{s:{text:"> Tree"}}).children),s6(o,sr(r,{s:{text:"> Codeblocks"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Commands"}),B6(o,sr(r,{s:{text:"> Rebuild Graph"}}).children),w6(o,sr(r,{s:{text:"> List Index"}}).children),_6(o,sr(r,{s:{text:"> Freeze Implied Edges"}}).children),T6(o,sr(r,{s:{text:"> Thread"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Suggestors"}),c6(o,sr(r,{s:{text:"> Edge Field Suggestor"}}).children),r.createEl("hr"),A6(o,sr(r,{s:{text:"> Debug"}}).children)}hide(){this.plugin.settings.is_dirty&&new gd.Notice("\u26A0\uFE0F Exited without saving settings. Your changes are still in effect, but were not saved. Go back and click 'Save' if you want them to persist. Otherwise, reload Obsidian to revert to the last saved settings."),this.components.forEach(r=>void Yo(r))}};var M6=require("obsidian");var L$=(t,e)=>e(!e()),G$=q("");function aA(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"collapse",15);var a=G$();a.__click=[L$,o];var n=w(a);{var s=l=>{od(l,{get size(){return 20}})},i=l=>{ad(l,{get size(){return 20}})};se(n,l=>{o()?l(s):l(i,!1)})}b(a),oe(()=>{ut(a,1,mr(r())),Xe(a,"aria-label",o()?"Expand":"Collapse")}),v(t,a),ne()}Ke(["click"]);var H$=(t,e)=>e(!e()),V$=q("");function nA(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"lock_view",15),a=U(e,"lock_path",15);jt(()=>{!o()&&e.active_path&&(a(e.active_path),H.debug("Setting lock_path to active_path:",a()))});var n=V$();n.__click=[H$,o];var s=w(n);{var i=u=>{Uu(u,{get size(){return 20}})},l=u=>{Vu(u,{get size(){return 20}})};se(s,u=>{o()?u(i):u(l,!1)})}b(n),oe(()=>{ut(n,1,mr(r())),Xe(n,"aria-label",o()?"Locked View":"Dynamic View")}),v(t,n),ne()}Ke(["click"]);var U$=(t,e)=>e.plugin.rebuildGraph(),z$=q('');function sA(t,e){ae(e,!0);let r=U(e,"cls",3,"");var o=z$();o.__click=[U$,e];var a=w(o);sd(a,{get size(){return 20}}),b(o),oe(()=>ut(o,1,mr(r()))),v(t,o),ne()}Ke(["click"]);var W$=q('
');function iA(t,e){"use strict";let r=U(e,"cls",3,""),o=U(e,"label",3,""),a=U(e,"aria_label",3,"");var n=W$(),s=w(n),i=w(s,!0);b(s),b(n),oe(()=>{ut(s,1,`${r()??""} tree-item-flair`),Xe(s,"aria-label",a()),Fe(i,o())}),v(t,n)}var K$=q('
'),Z$=q('
');function Hm(t,e){ae(e,!0);let r=U(e,"open",15),{show_node_options:o}=e.plugin.settings.views.side.matrix,a=hr(e.plugin.settings,o);var n=Z$(),s=w(n),i=w(s),l=w(i);Ps(l,{get open(){return r()}}),b(i);var u=S(i,2),A=w(u),c=w(A,!0);b(A),b(u);var p=S(u,2),m=w(p),h=w(m,!0);b(m),b(p),b(s);var y=S(s,2),I=w(y);so(I,()=>e.edges,F=>{var R=J(),B=K(R);ot(B,17,()=>e.edges,lt,(j,E)=>{var D=K$(),k=w(D),C=w(k),P=w(C);ja(P,{get edge(){return d(E)},get plugin(){return e.plugin},get node_stringify_options(){return a},cls:"grow tree-item-inner-text"}),b(C);var le=S(C,2);{let xe=de(()=>d(E).explicit(e.plugin.graph)?"x":"i"),fe=de(()=>d(E).get_attribute_label(e.plugin.graph,e.show_attributes));iA(le,{cls:"font-mono",get label(){return d(xe)},get aria_label(){return d(fe)}})}b(k),b(D),v(j,D)}),v(F,R)}),b(y),b(n),oe(()=>{ut(n,1,`BC-matrix-view-field BC-matrix-view-field-${e.field.label??""} tree-item`),Fe(c,e.field.label),Fe(h,e.edges.length)}),js("open","toggle",n,r,r),v(t,n),ne()}var Y$=q("
"),J$=q('

No outgoings edges

'),X$=q('
');function Vm(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"plugin",7);H.debug("Rendering Matrix side view");let s=kt(structuredClone(pr(n().settings.views.side.matrix))),i=!0;jt(()=>{if(n().settings.views.side.matrix=pr(s),Re(()=>void n().saveSettings()),i){i=!1;return}});let l=de(()=>Cr(n().settings.edge_field_groups,s.field_group_labels)),u=de(a),A=de(()=>d(u)&&n().graph.has_node(d(u).path)?s.lock_view&&n().graph.has_node(s.lock_path)?(H.debug("Using locked path for MatrixView:",s.lock_path),n().graph.get_filtered_grouped_outgoing_edges(s.lock_path,d(l))):n().graph.get_filtered_grouped_outgoing_edges(d(u).path,d(l)):null),c=de(()=>po(s.edge_sort_id.field,s.edge_sort_id.order===-1));var p=X$(),m=w(p),h=w(m),y=w(h);sA(y,{cls:"clickable-icon nav-action-button",get plugin(){return n()}});var I=S(y,2);{let D=de(()=>d(u)?.path);nA(I,{cls:"clickable-icon nav-action-button",get active_path(){return d(D)},get lock_view(){return s.lock_view},set lock_view(k){s.lock_view=k},get lock_path(){return s.lock_path},set lock_path(k){s.lock_path=k}})}var F=S(I,2);Hs(F,{cls:"clickable-icon nav-action-button",exclude_fields:["field","neighbour-field:"],get edge_sort_id(){return s.edge_sort_id},set edge_sort_id(D){s.edge_sort_id=D}});var R=S(F,2);aA(R,{cls:"clickable-icon nav-action-button",get collapse(){return s.collapse},set collapse(D){s.collapse=D}});var B=S(R,2);Vs(B,{cls:"clickable-icon nav-action-button",exclude_attributes:["field","explicit"],get show_attributes(){return s.show_attributes},set show_attributes(D){s.show_attributes=D}});var j=S(B,2);Ls(j,{cls:"clickable-icon nav-action-button",get edge_field_groups(){return n().settings.edge_field_groups},get field_group_labels(){return s.field_group_labels},set field_group_labels(D){s.field_group_labels=D}}),b(h),b(m);var E=S(m,2);so(E,()=>d(A),D=>{var k=J(),C=K(k);{var P=xe=>{var fe=Y$();ot(fe,21,()=>n().settings.edge_fields,lt,(He,G)=>{let Y=de(()=>d(A).get_sorted_edges(d(G).label,n().graph,d(c)));var De=J(),T=K(De);{var M=Z=>{{let _e=de(()=>!s.collapse);Hm(Z,{get edges(){return d(Y)},get field(){return d(G)},get plugin(){return n()},get show_attributes(){return s.show_attributes},get open(){return d(_e)}})}};se(T,Z=>{d(Y)?.length&&Z(M)})}v(He,De)}),b(fe),v(xe,fe)},le=xe=>{var fe=J$();v(xe,fe)};se(C,xe=>{d(A)?xe(P):xe(le,!1)})}v(D,k)}),b(p),v(t,p),ne(),o()}var jd=class extends M6.ItemView{constructor(r,o){super(r);this.icon="blinds";this.plugin=o}getViewType(){return ea.matrix}getDisplayText(){return"Matrix view"}onload(){this.registerEvent(this.plugin.events.on("redraw-side-views",()=>{this.onOpen()}))}async onOpen(){this.containerEl.children[1].empty(),this.component=Be(Vm,{target:this.contentEl,props:{plugin:this.plugin}})}async onClose(){this.component&&await Yo(this.component)}};var N6=t_("AGFzbQEAAAAB1ARIYAJ/fwF/YAN/f38Bf2ACf38AYAACf39gAX8AYAN/f38AYAF/An9/YAF/AX9gAAN/f39gAAR/f39/YAABf2AFf39/f38AYAV/f39/fwF/YAR/f39/AGAAAGAGf39/f39/AGACf38Df39/YAF/AW9gAW8Bf2AHf39/f39/fwBgAn9vAGAEf39/fwF/YAR/f39/BH9/f39gA39/fwR/f39/YAJ/fwR/f39/YANvf38AYAABb2ACf34AYAZ/f39/f38Bf2AHf39/f39/fwF/YAN/f38Df39/YAN/f38Cf39gAn9/An9/YAJ/fwFvYAJ/fwF+YAN/f38BfmAJf39/f39/f39/AX9gAX8BfmABbwFvYAFvAXxgAm9vAW9gA29vbwFvYANvb28Bf2AIf39/f39/f38AYAp/f39/f39/f39/AGAHf39+fn5+fgF+YAJ+fwF/YA5/f39/f39/f39/f39/fwF/YAl/f39/f39+fn4AYAV/f35+fgF+YBd/f39/f39/f39/f39/f39/f39/f39/fwF/YAN/f34Bf2ATf39/f39/f39/f39/f39/f39/fwF/YAt/f39/f39/f39/fwF/YAN/fn4AYAh/f39/f39/fwF/YAABfmAEf35+fwBgAXwBfGAFf39/f38Ef39/f2AGf39/f39/A39/f2AHf39/f39/fwJ/f2AFf39/f38Df39/YAR/f39/A39/f2ABfwN/f39gBX9/fn9/AGAEf35/fwBgBX9/fH9/AGAEf3x/fwBgBX9/fX9/AGAEf31/fwBgAX8BfAKGCiUDd2JnG19fd2JnX2luZm9fMzk4YmY1ZDIxMTQwOTgxNAAZA3diZxJfX3diZ19lZGdlZGF0YV9uZXcAEQN3YmcSX193Ymdfbm9kZWRhdGFfbmV3ABEDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX2dldAAUA3diZxhfX3diZ19ub3RlZ3JhcGhlcnJvcl9uZXcAEQN3YmcUX193YmdfZWRnZXN0cnVjdF9uZXcAEQN3YmcOX193YmdfcGF0aF9uZXcAEQN3YmcbX193YmdfZmxhdHRyYXZlcnNhbGRhdGFfbmV3ABEDd2JnF19fd2JnX3RyYXZlcnNhbGRhdGFfbmV3ABEDd2JnF19fd2JnX2djZWRnZWRhdGFfdW53cmFwABIDd2JnF19fd2JnX2djbm9kZWRhdGFfdW53cmFwABIDd2JnGl9fd2JnX3RyYXZlcnNhbGRhdGFfdW53cmFwABIDd2JnHl9fd2JnX2ZsYXR0cmF2ZXJzYWxkYXRhX3Vud3JhcAASA3diZxVfX3diaW5kZ2VuX3N0cmluZ19uZXcAIQN3YmcXX193YmdfZWRnZXN0cnVjdF91bndyYXAAEgN3YmcgX193YmdfdHJhbnNpdGl2ZWdyYXBocnVsZV91bndyYXAAEgN3YmccX193YmdfZGVidWdfMGUyOTJhMGRiYWVkYTdmMQAZA3diZxtfX3diZ193YXJuXzRhMjM4MGM2OTAzYjA0NDMAGQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0xPR0dFUl84NDlhNzA4MzhlOTA5NGYwABoDd2JnGl9fd2JnX25ld184YTZmMjM4YTZlY2U4NmVhABoDd2JnHF9fd2JnX3N0YWNrXzBlZDc1ZDY4NTc1YjBmM2MAFAN3YmccX193YmdfZXJyb3JfNzUzNGI4ZTlhMzZmMWFiNAACA3diZyJfX3diZ19wZXJmb3JtYW5jZV83YTNmZmQwYjE3ZjY2M2FkACYDd2JnF19fd2JpbmRnZW5faXNfdW5kZWZpbmVkABIDd2JnGl9fd2JnX25vd18yYzk1YzlkZTAxMjkzMTczACcDd2JnGl9fd2JnX25ld180MDVlMjJmMzkwNTc2Y2UyABoDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwACEDd2JnMl9fd2JnX3N0YXRpY19hY2Nlc3Nvcl9HTE9CQUxfVEhJU181NjU3OGJlN2U5ZjgzMmIwAAoDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAAoA3diZytfX3diZ19zdGF0aWNfYWNjZXNzb3JfU0VMRl8zN2M1ZDQxOGU0YmY1ODE5AAoDd2JnLV9fd2JnX3N0YXRpY19hY2Nlc3Nvcl9HTE9CQUxfODhhOTAyZDEzYTU1N2QwNwAKA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAACgN3YmcbX193YmdfY2FsbF83Y2NjZGQ2OWUwNzkxYWUyACkDd2JnGl9fd2JnX3NldF9iYjhjZWNmNmE2MmI5ZjQ2ACoDd2JnEF9fd2JpbmRnZW5fdGhyb3cAAgN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAFAN3YmcfX193YmluZGdlbl9pbml0X2V4dGVybnJlZl90YWJsZQAOA+kE5wQTBwULExMLDxMTDwsPDQsFCysPDywFAgsNCwItAgUAAQ0CCwUVAgwKBAUFBQQFBQcBAgIBGwUABQEAFQEFAAoFLgAAAgIFAAQiASMMAgIiAgsEAgICDQAFAgIBAQEFAQECBQAFDAAvAiMwEwICDQcNAgACBwQPAgUFDQQABQcABAICBwICAgELAgwCCwICCgIMDQQcBAAEAgIAAAAAAgUBAQEEBwICAiQCAQICHQcMARMCDiQHAgUCAjEFAgIAAQUFBQUCAgIBCwQyBAUzAAQENAEEAgINAgUBBwUFAgICCwQPNQsEHQQLBAICDwwEDAAEAAAABR0MDAwEAAAACg0AAgAEBQUEBAUFAgAEAAAADgQCAAA2AAAAAAAAAAAANwwAAAIEBAQEDgQEBAQEBAQEBAAAAAAAAAQABAcAABwEBDg5AgAAAAs6BwIFBQUFFQcABQQEAAAHAQQAAQEEBAQAAAAADQcBAQAAAAAEBAQAAAAAAAANAgUFBQAAAAAAAAAHAAAAAAQADAAABAAAAAA7AAAAChUAFjwWFhYABz0+FxcXFw4HAhgYGD8YAAAeHh4UFBAQEBAQEBAQAgICAgICAgIFHx9AHwcHByUHBwcHByUHBwcEICAgAgIbAgICGwYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgQEBAQcBAwLQUNFBAQFBAQNAAEODgQKAAAEAgICBAQEBAQFAAAAAAAFAQcHCwAUAAAAABUEAAIABwEFAQEBAAEEBA4FBQUAAAAAAAAAAA4CDgICAAAAAQACAAICB0cCCgoECwJwAcYBxgFvAIABBQMBABEGDwJ/AUGAgMAAC38BQYABCwekOukBBm1lbW9yeQIAFF9fd2JnX25vdGVncmFwaF9mcmVlAEEWbm90ZWdyYXBoX2FwcGx5X3VwZGF0ZQD6AxVub3RlZ3JhcGhfYnVpbGRfZ3JhcGgAwgMUbm90ZWdyYXBoX2VkZ2VfdHlwZXMAhAQtbm90ZWdyYXBoX2dldF9maWx0ZXJlZF9ncm91cGVkX291dGdvaW5nX2VkZ2VzAHAlbm90ZWdyYXBoX2dldF9maWx0ZXJlZF9vdXRnb2luZ19lZGdlcwCuARxub3RlZ3JhcGhfZ2V0X2luY29taW5nX2VkZ2VzAIABEm5vdGVncmFwaF9nZXRfbm9kZQBYHG5vdGVncmFwaF9nZXRfb3V0Z29pbmdfZWRnZXMAgQESbm90ZWdyYXBoX2hhc19ub2RlAP0BGm5vdGVncmFwaF9pc19ub2RlX3Jlc29sdmVkANQBF25vdGVncmFwaF9pdGVyYXRlX2VkZ2VzANUDF25vdGVncmFwaF9pdGVyYXRlX25vZGVzANYDDW5vdGVncmFwaF9sb2cAjQINbm90ZWdyYXBoX25ldwCiAhdub3RlZ3JhcGhfbm90aWZ5X3VwZGF0ZQDHAR1ub3RlZ3JhcGhfc2V0X3VwZGF0ZV9jYWxsYmFjawDZBB1fX3diZ19hZGRlZGdlZ3JhcGh1cGRhdGVfZnJlZQDCAR1fX3diZ19hZGRub3RlZ3JhcGh1cGRhdGVfZnJlZQC8ARVfX3diZ19nY2VkZ2VkYXRhX2ZyZWUAwgEVX193YmdfZ2Nub2RlZGF0YV9mcmVlALwBIF9fd2JnX3JlbW92ZWVkZ2VncmFwaHVwZGF0ZV9mcmVlANYBIF9fd2JnX3JlbW92ZW5vdGVncmFwaHVwZGF0ZV9mcmVlAIECIF9fd2JnX3JlbmFtZW5vdGVncmFwaHVwZGF0ZV9mcmVlAOgBJV9fd2JnX3RyYW5zaXRpdmVydWxlc2dyYXBodXBkYXRlX2ZyZWUA6QEfYWRkZWRnZWdyYXBodXBkYXRlX2FkZF90b19iYXRjaAB3FmFkZGVkZ2VncmFwaHVwZGF0ZV9uZXcAogEfYWRkbm90ZWdyYXBodXBkYXRlX2FkZF90b19iYXRjaACMARZhZGRub3RlZ3JhcGh1cGRhdGVfbmV3AMgBDmdjZWRnZWRhdGFfbmV3AMMCE2djZWRnZWRhdGFfdG9TdHJpbmcAhQQOZ2Nub2RlZGF0YV9uZXcAmgITZ2Nub2RlZGF0YV90b1N0cmluZwCGBCJyZW1vdmVlZGdlZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAH4ZcmVtb3ZlZWRnZWdyYXBodXBkYXRlX25ldwDiAiJyZW1vdmVub3RlZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAKgBGXJlbW92ZW5vdGVncmFwaHVwZGF0ZV9uZXcAlgMicmVuYW1lbm90ZWdyYXBodXBkYXRlX2FkZF90b19iYXRjaACVARlyZW5hbWVub3RlZ3JhcGh1cGRhdGVfbmV3APMCJ3RyYW5zaXRpdmVydWxlc2dyYXBodXBkYXRlX2FkZF90b19iYXRjaACpAR50cmFuc2l0aXZlcnVsZXNncmFwaHVwZGF0ZV9uZXcA1wIcX193YmdfZmxhdHRyYXZlcnNhbGRhdGFfZnJlZQC0AR5fX3diZ19mbGF0dHJhdmVyc2FscmVzdWx0X2ZyZWUApQEkX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2NoaWxkcmVuAIoEIV9fd2JnX2dldF9mbGF0dHJhdmVyc2FsZGF0YV9kZXB0aADsAyBfX3diZ19nZXRfZmxhdHRyYXZlcnNhbGRhdGFfZWRnZQD+AS9fX3diZ19nZXRfZmxhdHRyYXZlcnNhbGRhdGFfaGFzX2N1dF9vZl9jaGlsZHJlbgDtAy5fX3diZ19nZXRfZmxhdHRyYXZlcnNhbGRhdGFfbnVtYmVyX29mX2NoaWxkcmVuAO4DIl9fd2JnX2dldF9mbGF0dHJhdmVyc2FscmVzdWx0X2RhdGEAjAQpX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfZW50cnlfbm9kZXMAjQQtX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfaGl0X2RlcHRoX2xpbWl0AO0DKF9fd2JnX2dldF9mbGF0dHJhdmVyc2FscmVzdWx0X25vZGVfY291bnQA7AMsX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfdHJhdmVyc2FsX3RpbWUA7wMgX193YmdfZ2V0X3RyYXZlcnNhbGRhdGFfY2hpbGRyZW4AiwQeX193YmdfZ2V0X3RyYXZlcnNhbHJlc3VsdF9kYXRhAI4EKV9fd2JnX2dldF90cmF2ZXJzYWxyZXN1bHRfaGl0X2RlcHRoX2xpbWl0APADI19fd2JnX2dldF90cmF2ZXJzYWxyZXN1bHRfbWF4X2RlcHRoAPEDJF9fd2JnX2dldF90cmF2ZXJzYWxyZXN1bHRfbm9kZV9jb3VudADyAyRfX3diZ19zZXRfZmxhdHRyYXZlcnNhbGRhdGFfY2hpbGRyZW4A7wIhX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2RlcHRoAP0DIF9fd2JnX3NldF9mbGF0dHJhdmVyc2FsZGF0YV9lZGdlAMkBL19fd2JnX3NldF9mbGF0dHJhdmVyc2FsZGF0YV9oYXNfY3V0X29mX2NoaWxkcmVuAN8DLl9fd2JnX3NldF9mbGF0dHJhdmVyc2FsZGF0YV9udW1iZXJfb2ZfY2hpbGRyZW4A/gMiX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfZGF0YQDfASlfX3diZ19zZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9lbnRyeV9ub2RlcwDwAi1fX3diZ19zZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9oaXRfZGVwdGhfbGltaXQA3wMoX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfbm9kZV9jb3VudAD9AyxfX3diZ19zZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF90cmF2ZXJzYWxfdGltZQD/AyBfX3diZ19zZXRfdHJhdmVyc2FsZGF0YV9jaGlsZHJlbgCsAh5fX3diZ19zZXRfdHJhdmVyc2FscmVzdWx0X2RhdGEArQIpX193Ymdfc2V0X3RyYXZlcnNhbHJlc3VsdF9oaXRfZGVwdGhfbGltaXQA4AMjX193Ymdfc2V0X3RyYXZlcnNhbHJlc3VsdF9tYXhfZGVwdGgAgAQkX193Ymdfc2V0X3RyYXZlcnNhbHJlc3VsdF9ub2RlX2NvdW50AIEEGF9fd2JnX3RyYXZlcnNhbGRhdGFfZnJlZQCyARpfX3diZ190cmF2ZXJzYWxyZXN1bHRfZnJlZQCbASVmbGF0dHJhdmVyc2FsZGF0YV9nZXRfYXR0cmlidXRlX2xhYmVsALsDJWZsYXR0cmF2ZXJzYWxkYXRhX3RvX2pzX3JlbmRlcmluZ19vYmoAwwMlZmxhdHRyYXZlcnNhbHJlc3VsdF9jaGlsZHJlbl9hdF9pbmRleAD7AyFmbGF0dHJhdmVyc2FscmVzdWx0X2RhdGFfYXRfaW5kZXgAZxxmbGF0dHJhdmVyc2FscmVzdWx0X2lzX2VtcHR5APQCKmZsYXR0cmF2ZXJzYWxyZXN1bHRfcmVuZGVyaW5nX29ial9hdF9pbmRleAC8AxhmbGF0dHJhdmVyc2FscmVzdWx0X3NvcnQA6QMcZmxhdHRyYXZlcnNhbHJlc3VsdF90b1N0cmluZwCJBBF0cmF2ZXJzYWxkYXRhX25ldwC4AR90cmF2ZXJzYWxkYXRhX3JlY19zb3J0X2NoaWxkcmVuAOgDFnRyYXZlcnNhbGRhdGFfdG9TdHJpbmcAhwQTdHJhdmVyc2FscmVzdWx0X25ldwDxARh0cmF2ZXJzYWxyZXN1bHRfdG9TdHJpbmcAiAQYdHJhdmVyc2FscmVzdWx0X3RvX3BhdGhzANkBJ19fd2JnX3NldF9mbGF0dHJhdmVyc2FscmVzdWx0X21heF9kZXB0aAD+Ax1fX3diZ19zZXRfdHJhdmVyc2FsZGF0YV9kZXB0aAD9AypfX3diZ19zZXRfdHJhdmVyc2FsZGF0YV9udW1iZXJfb2ZfY2hpbGRyZW4A/gMoX193Ymdfc2V0X3RyYXZlcnNhbHJlc3VsdF90cmF2ZXJzYWxfdGltZQD/AxxfX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9lZGdlAP4BGHRyYXZlcnNhbHJlc3VsdF9pc19lbXB0eQD0AhxfX3diZ19zZXRfdHJhdmVyc2FsZGF0YV9lZGdlAMkBK19fd2JnX3NldF90cmF2ZXJzYWxkYXRhX2hhc19jdXRfb2ZfY2hpbGRyZW4A3wMrX193YmdfZ2V0X3RyYXZlcnNhbGRhdGFfaGFzX2N1dF9vZl9jaGlsZHJlbgDtAydfX3diZ19nZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9tYXhfZGVwdGgA7gMdX193YmdfZ2V0X3RyYXZlcnNhbGRhdGFfZGVwdGgA7AMqX193YmdfZ2V0X3RyYXZlcnNhbGRhdGFfbnVtYmVyX29mX2NoaWxkcmVuAO4DKF9fd2JnX2dldF90cmF2ZXJzYWxyZXN1bHRfdHJhdmVyc2FsX3RpbWUA7wMTX193YmdfZWRnZWRhdGFfZnJlZQDKARVfX3diZ19lZGdlc3RydWN0X2ZyZWUA3AEbX193YmdfZ2V0X2VkZ2VkYXRhX2V4cGxpY2l0APMDGF9fd2JnX2dldF9lZGdlZGF0YV9yb3VuZAD0AxtfX3diZ19zZXRfZWRnZWRhdGFfZXhwbGljaXQA4QMYX193Ymdfc2V0X2VkZ2VkYXRhX3JvdW5kAIIEHl9fd2JnX3RyYW5zaXRpdmVncmFwaHJ1bGVfZnJlZQCQARRlZGdlZGF0YV9lZGdlX3NvdXJjZQCSBBJlZGdlZGF0YV9lZGdlX3R5cGUAkQQRZWRnZWRhdGFfdG9TdHJpbmcAkwQUZWRnZXN0cnVjdF9lZGdlX2RhdGEA3QMWZWRnZXN0cnVjdF9lZGdlX3NvdXJjZQDLAxRlZGdlc3RydWN0X2VkZ2VfdHlwZQCQBBNlZGdlc3RydWN0X2V4cGxpY2l0ANwDHmVkZ2VzdHJ1Y3RfZ2V0X2F0dHJpYnV0ZV9sYWJlbAC9AxdlZGdlc3RydWN0X2lzX3NlbGZfbG9vcADtAh5lZGdlc3RydWN0X21hdGNoZXNfZWRnZV9maWx0ZXIAzgMQZWRnZXN0cnVjdF9yb3VuZADbAxZlZGdlc3RydWN0X3NvdXJjZV9kYXRhANcDFmVkZ2VzdHJ1Y3Rfc291cmNlX3BhdGgAzAMaZWRnZXN0cnVjdF9zb3VyY2VfcmVzb2x2ZWQA2QMbZWRnZXN0cnVjdF9zdHJpbmdpZnlfc291cmNlAMQDG2VkZ2VzdHJ1Y3Rfc3RyaW5naWZ5X3RhcmdldADFAxZlZGdlc3RydWN0X3RhcmdldF9kYXRhANgDFmVkZ2VzdHJ1Y3RfdGFyZ2V0X3BhdGgAzQMaZWRnZXN0cnVjdF90YXJnZXRfcmVzb2x2ZWQA2gMTZWRnZXN0cnVjdF90b1N0cmluZwCPBBZub3RlZ3JhcGhfcmVjX3RyYXZlcnNlAN4DIm5vdGVncmFwaF9yZWNfdHJhdmVyc2VfYW5kX3Byb2Nlc3MA0gModHJhbnNpdGl2ZWdyYXBocnVsZV9jcmVhdGVfZXhhbXBsZV9ncmFwaADqAxd0cmFuc2l0aXZlZ3JhcGhydWxlX25ldwDMARx0cmFuc2l0aXZlZ3JhcGhydWxlX3RvU3RyaW5nAJQEIl9fd2JnX2dldF9tZXJtYWlkZ3JhcGhkYXRhX21lcm1haWQAlwQlX193YmdfZ2V0X21lcm1haWRncmFwaGRhdGFfdG90YWxfdGltZQD1AylfX3diZ19nZXRfbWVybWFpZGdyYXBoZGF0YV90cmF2ZXJzYWxfdGltZQDvAxtfX3diZ19tZXJtYWlkZ3JhcGhkYXRhX2ZyZWUAggIeX193YmdfbWVybWFpZGdyYXBob3B0aW9uc19mcmVlAHgiX193Ymdfc2V0X21lcm1haWRncmFwaGRhdGFfbWVybWFpZADxAiVfX3diZ19zZXRfbWVybWFpZGdyYXBoZGF0YV90b3RhbF90aW1lAIMEKV9fd2JnX3NldF9tZXJtYWlkZ3JhcGhkYXRhX3RyYXZlcnNhbF90aW1lAP8DGW1lcm1haWRncmFwaGRhdGFfdG9TdHJpbmcAlQQXbWVybWFpZGdyYXBob3B0aW9uc19uZXcAiwEcbWVybWFpZGdyYXBob3B0aW9uc190b1N0cmluZwCWBCBub3RlZ3JhcGhfZ2VuZXJhdGVfbWVybWFpZF9ncmFwaADTAxlfX3diZ19ub3RlZ3JhcGhlcnJvcl9mcmVlAIMCFm5vdGVncmFwaGVycm9yX21lc3NhZ2UAmQQSbm90ZWdyYXBoZXJyb3JfbmV3AKQCF25vdGVncmFwaGVycm9yX3RvU3RyaW5nAJgEFV9fd2JnX2VkZ2Vzb3J0ZXJfZnJlZQD4ARRfX3diZ19nZXRfcGF0aF9lZGdlcwCaBC5fX3diZ19nZXRfdHJhdmVyc2Fsb3B0aW9uc19kYXRhdmlld19mcm9tX3BhdGhzAKIEJV9fd2JnX2dldF90cmF2ZXJzYWxvcHRpb25zX2VkZ2VfdHlwZXMAoQQmX193YmdfZ2V0X3RyYXZlcnNhbG9wdGlvbnNfZW50cnlfbm9kZXMAoAQkX193YmdfZ2V0X3RyYXZlcnNhbG9wdGlvbnNfbWF4X2RlcHRoAOwDLl9fd2JnX2dldF90cmF2ZXJzYWxvcHRpb25zX21heF90cmF2ZXJzYWxfY291bnQA7gMpX193YmdfZ2V0X3RyYXZlcnNhbG9wdGlvbnNfc2VwYXJhdGVfZWRnZXMA7QMtX193YmdfZ2V0X3RyYXZlcnNhbHBvc3Rwcm9jZXNzb3B0aW9uc19mbGF0dGVuAPQDLF9fd2JnX2dldF90cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfc29ydGVyANIBD19fd2JnX3BhdGhfZnJlZQDNARNfX3diZ19wYXRobGlzdF9mcmVlAKYBFF9fd2JnX3NldF9wYXRoX2VkZ2VzAPwBLl9fd2JnX3NldF90cmF2ZXJzYWxvcHRpb25zX2RhdGF2aWV3X2Zyb21fcGF0aHMA5QElX193Ymdfc2V0X3RyYXZlcnNhbG9wdGlvbnNfZWRnZV90eXBlcwDmASZfX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19lbnRyeV9ub2RlcwD/ASRfX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19tYXhfZGVwdGgA/QMuX193Ymdfc2V0X3RyYXZlcnNhbG9wdGlvbnNfbWF4X3RyYXZlcnNhbF9jb3VudAD+AylfX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19zZXBhcmF0ZV9lZGdlcwDfAy1fX3diZ19zZXRfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX2ZsYXR0ZW4A4gMsX193Ymdfc2V0X3RyYXZlcnNhbHBvc3Rwcm9jZXNzb3B0aW9uc19zb3J0ZXIA2gEbX193YmdfdHJhdmVyc2Fsb3B0aW9uc19mcmVlAHEmX193YmdfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX2ZyZWUA+QESY3JlYXRlX2VkZ2Vfc29ydGVyANQDC3BhdGhfZXF1YWxzAHsVcGF0aF9nZXRfZmlyc3RfdGFyZ2V0AM8DC3BhdGhfbGVuZ3RoAPsCEnBhdGhfcmV2ZXJzZV9lZGdlcwCbBA1wYXRoX3RvU3RyaW5nAJwEDXBhdGhfdHJ1bmNhdGUAYhJwYXRobGlzdF9tYXhfZGVwdGgAmAEQcGF0aGxpc3RfcHJvY2VzcwDGAw9wYXRobGlzdF9zZWxlY3QAzgERcGF0aGxpc3RfdG9TdHJpbmcAnQQRcGF0aGxpc3RfdG9fcGF0aHMAngQKc29ydF9lZGdlcwC/AxNzb3J0X3RyYXZlcnNhbF9kYXRhAL4DFHRyYXZlcnNhbG9wdGlvbnNfbmV3ANgBGXRyYXZlcnNhbG9wdGlvbnNfdG9TdHJpbmcAnwQfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX25ldwCjASR0cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfdG9TdHJpbmcAowQqdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX3dpdGhvdXRfc29ydGVyAKUDG19fd2JnX2JhdGNoZ3JhcGh1cGRhdGVfZnJlZQDqARpfX3diZ19nZXRfbm9kZWRhdGFfYWxpYXNlcwClBCJfX3diZ19nZXRfbm9kZWRhdGFfaWdub3JlX2luX2VkZ2VzAPYDI19fd2JnX2dldF9ub2RlZGF0YV9pZ25vcmVfb3V0X2VkZ2VzAPcDF19fd2JnX2dldF9ub2RlZGF0YV9wYXRoAKQEG19fd2JnX2dldF9ub2RlZGF0YV9yZXNvbHZlZAD4AxNfX3diZ19ub2RlZGF0YV9mcmVlAL0BH19fd2JnX25vZGVzdHJpbmdpZnlvcHRpb25zX2ZyZWUA+wEaX193Ymdfc2V0X25vZGVkYXRhX2FsaWFzZXMAgAIiX193Ymdfc2V0X25vZGVkYXRhX2lnbm9yZV9pbl9lZGdlcwDjAyNfX3diZ19zZXRfbm9kZWRhdGFfaWdub3JlX291dF9lZGdlcwDkAxdfX3diZ19zZXRfbm9kZWRhdGFfcGF0aADyAhtfX3diZ19zZXRfbm9kZWRhdGFfcmVzb2x2ZWQA5QMUYmF0Y2hncmFwaHVwZGF0ZV9uZXcAuAMMbm9kZWRhdGFfbmV3AJoCEW5vZGVkYXRhX3RvU3RyaW5nAKYEGG5vZGVzdHJpbmdpZnlvcHRpb25zX25ldwDEAiNub2Rlc3RyaW5naWZ5b3B0aW9uc19zdHJpbmdpZnlfbm9kZQD8AxNfX3diZ19lZGdlbGlzdF9mcmVlAM8BGl9fd2JnX2dyb3VwZWRlZGdlbGlzdF9mcmVlAKoBDGNyZWF0ZV9ncmFwaACzAQ5lZGdlbGlzdF9maXJzdACnARJlZGdlbGlzdF9nZXRfZWRnZXMAqgQZZWRnZWxpc3RfZ2V0X3NvcnRlZF9lZGdlcwDHAxZlZGdlbGlzdF9ncm91cF9ieV90eXBlAFQNZWRnZWxpc3RfbGFzdACTARFlZGdlbGlzdF90b1N0cmluZwCoBBFlZGdlbGlzdF90b19hcnJheQCpBBlncm91cGVkZWRnZWxpc3RfZ2V0X2VkZ2VzAOsDIGdyb3VwZWRlZGdlbGlzdF9nZXRfc29ydGVkX2VkZ2VzALQDGGdyb3VwZWRlZGdlbGlzdF90b1N0cmluZwCnBBRfX3diaW5kZ2VuX2V4bl9zdG9yZQDfBBdfX2V4dGVybnJlZl90YWJsZV9hbGxvYwCKBRNfX3diaW5kZ2VuX2V4cG9ydF8yAQEPX193YmluZGdlbl9mcmVlANMEEV9f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ApABIAJBmAFqIANBCGopAgA3AgAgAkGgAWogA0EQaikCADcCACACQagBaiADQRhqKQIANwIAIAJBsAFqIANBIGopAgA3AgAgAkG4AWogA0EoaikCADcCACAJIAAgEEEwbCIKaiIDQTBqIAMQ6wEhCCADQZABQeAAIAkgA0GQAWogA0HgAGoQ6wEiBRtqIQQgCSADQeAAQZABIAUbaiIGIAMgCEEBc0EwbGoiBSAEIAkgBCADIAhBMGxqIggQ6wEiCxsgCSAGIAUQ6wEiDBsiDSAIIAQgBSAMGyALGyIOEOsBIRMgAiAKaiIDQShqIAQgCCALGyIEQShqKQIANwIAIANBIGogBEEgaikCADcCACADQRhqIARBGGopAgA3AgAgA0EQaiAEQRBqKQIANwIAIANBCGogBEEIaikCADcCACADIAQpAgA3AgAgAyANIA4gExsiBCkCADcCMCADQThqIARBCGopAgA3AgAgA0FAayAEQRBqKQIANwIAIANByABqIARBGGopAgA3AgAgA0HQAGogBEEgaikCADcCACADQdgAaiAEQShqKQIANwIAIANBiAFqIA4gDSATGyIEQShqKQIANwIAIANBgAFqIARBIGopAgA3AgAgA0H4AGogBEEYaikCADcCACADQfAAaiAEQRBqKQIANwIAIANB6ABqIARBCGopAgA3AgAgAyAEKQIANwJgIAMgBSAGIAwbIgQpAgA3ApABIANBmAFqIARBCGopAgA3AgAgA0GgAWogBEEQaikCADcCACADQagBaiAEQRhqKQIANwIAIANBsAFqIARBIGopAgA3AgAgA0G4AWogBEEoaikCADcCAEEEIQsMAQsgAiAAKQIANwIAIAJBKGogAEEoaikCADcCACACQSBqIABBIGopAgA3AgAgAkEYaiAAQRhqKQIANwIAIAJBEGogAEEQaikCADcCACACQQhqIABBCGopAgA3AgAgAiAQQTBsIgVqIgMgACAFaiIFKQIANwIAIANBCGogBUEIaikCADcCACADQRBqIAVBEGopAgA3AgAgA0EYaiAFQRhqKQIANwIAIANBIGogBUEgaikCADcCACADQShqIAVBKGopAgA3AgAgBCgCACEJCyAHQQA2AgggC0EwbCEXIAcgEDYCDCABIBBrIR0gB0EcaiEUIAdBCGohHkEAIQMDQCAHIANBAWoi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QQAgAygCAEGAgICAeEcbIQsLQSkhCEEpQQEQ9wQiA0UNFSADQShqQcWswAAtAAA6AAAgA0EgakG9rMAAKQAANwAAIANBGGpBtazAACkAADcAACADQRBqQa2swAApAAA3AAAgA0EIakGlrMAAKQAANwAAIANBnazAACkAADcAACALRQ0DIANBKUEBEOUEIAstABgNAkEAIQsgB0UEQCABKAKUASACQSRsaiICQQAgAigCAEGAgICAeEcbIQsLQSlBARD3BCIDRQ0VIANBKGpBxazAAC0AADoAACADQSBqQb2swAApAAA3AAAgA0EYakG1rMAAKQAANwAAIANBEGpBrazAACkAADcAACADQQhqQaWswAApAAA3AAAgA0GdrMAAKQAANwAAIAtFDQMgA0EpQQEQ5QQgBEE4aiAFQRhqKAIANgIAIARBMGogBUEQaikCADcDACAEQShqIAVBCGopAgA3AwAgBCAFKQIANwMgAkACQCALKAIIIgIgBEEgaiIGKAIIRw0AIAsoAgQgBigCBCIIIAIQgAMNACALKAIQIQIgCygCFCIFBEAgAiEDA0AgAygCACIHBEAgA0EEaigCACAHQQEQ5QQLIANBDGohAyAFQQFrIgUNAAsLIAtBDGoiAygCACIFBEAgAiAFQQxsQQQQ5QQLIAMgBkEMaiICKQIANwIAIAsgBi0AGDoAGCALIAYvABk7ABkgA0EIaiACQQhqKAIANgIAIAYoAgAiAgRAIAggAkEBEOUECwwBCyMAQRBrIgAkACAAIAY2AgwgACALNgIIIABBCGpB9NjAACAAQQxqQfTYwABBttbAAEHZAEHk1sAAENUBAAsMAQsgBEEUaiICIAUQ7gIgBEEoaiAFQQhqKAIANgIAIARBNGogBUEUaigCADYCACAEIAUpAgA3AyAgBCAFKQIMNwIsIAQgBS0AGjoAOiAEIAUvARg7ATggAUG4AWogAiABQZABaiAEQSBqEGsQTgsgCkGAgICAeDYCAAwDC0E4IQhBOEEBEPcEIgNFDQEgA0EwakGwqcAAKQAANwAAIANBKGpBqKnAACkAADcAACADQSBqQaCpwAApAAA3AAAgA0EYakGYqcAAKQAANwAAIANBEGpBkKnAACkAADcAACADQQhqQYipwAApAAA3AAAgA0GAqcAAKQAANwAACyAKIAg2AgggCiADNgIE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AEHM58AAELYBAAsgAUEDOgAdIANBAWshAiADBEAgASACNgIEIABBBjoAAAwCC0EAIAJBAEHc58AAELYBAAtB3OTAAEEoQfznwAAQzQQACyAHQSBqJAALtQcCA34EfyABQcD///8HcQRAQQAgAUFAcWshCyAAIQoDQCAKQThqKQAAIAaFIgdCIIgiCCAKQRhqKQAAIAWFIgVCIIgiCX4gB0L/////D4MiByAFQv////8PgyIFfoUgByAJfiAFIAh+hUIgiYUhBSAKQTBqKQAAIAaFIgdCIIgiCCAKQRBqKQAAIASFIgRCIIgiCX4gB0L/////D4MiByAEQv////8PgyIEfoUgByAJfiAEIAh+hUIgiYUhBCAKQShqKQAAIAaFIgdCIIgiCCAKQQhqKQAAIAOFIgNCIIgiCX4gB0L/////D4MiByADQv////8PgyIDfoUgByAJfiADIAh+hUIgiYUhAyAKQSBqKQAAIAaFIgdCIIgiCCAKKQAAIAKFIgJCIIgiCX4gB0L/////D4MiByACQv////8PgyICfoUgByAJfiACIAh+hUIgiYUhAiAKQUBrIQogC0FAayILDQALCyADIAWFIQMgAiAEhSECIAFBP3EiCkUEQCACIAOFDwsgAUEQIAogCkEQTRsiCmshCyABQRBPBEAgACALaiIAIApBD3EiAWoiCyAKQTBxIgpBEGsiDGoiDSkACCAGhSIEQiCIIgUgACkACCADhSIDQiCIIgd+IARC/////w+DIgQgA0L/////D4MiA36FIAQgB34gAyAFfoVCIImFIQUCfiANKQAAIAaFIgNCIIgiBCAAKQAAIAKFIgJCIIgiB34gA0L/////D4MiAyACQv////8PgyICfoUgAyAHfiACIAR+hUIgiYUiBCAMRSABIAxyQRFIcg0AGiALIApBIGsiDGoiDSkACCAGhSICQiCIIgMgACkAGCAFhSIFQiCIIgd+IAJC/////w+DIgIgBUL/////D4MiBX6FIAIgB34gAyAFfoVCIImFIQUgDSkAACAGhSICQiCIIgMgACkAECAEhSIEQiCIIgd+IAJC/////w+DIgIgBEL/////D4MiBH6FIAIgB34gAyAEfoVCIImFIgQgDEUgASAMckEhSHINABogCiALaiIBQShrKQAAIAaFIgJCIIgiAyAAKQAoIAWFIgVCIIgi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IAIgA0ECaiIETQRAQgAhCQwFCyABIARqLAAAQb9/Sg0CQgAhCSADQQNqIgQgAk8NBCABIARqLAAAQUBIDQVCgICAgIDgAAwDC0KAgICAgCAMAgtCACEJIANBAmoiBCACTw0CIAEgBGosAABBv39MDQMLQoCAgICAwAALIQpCgICAgBAhCQsgACAKIAOthCAJhDcCBCAAQQE2AgAPCyAEQQFqIQMMAgsgA0EBaiEDDAELIAIgA00NAANAIAEgA2osAABBAEgNASACIANBAWoiA0cNAAsMAgsgAiADSw0ACwsgACACNgIIIAAgATYCBCAAQQA2AgALvwUDDn8BfgFvIwBB4ABrIgMkACACQTBsIQQCQAJAAkACQCACQarVqhVLDQACfyAERQRAQQQhBkEADAELQQQhBSAEQQQQ9wQiBkUNASACCyEFIANBADYCDCADIAY2AgggAyAFNgIEIAJFDQMgAkECdCEGIANBQGshByADQcgAaiEIIANB0ABqIQkgA0HYAGohCkEAIQUDQCABIAVqKAIAIgIlASESIAIQqgMCQCASEAsiAgRAIAJBCGsiBCgCAEEBRw0EIAcgAkEUaikCADcDACAIIAJBHGopAgA3AwAgCSACQSRqKQIANwMAIAogAkEsaikCADcDACACKAIIIQwgAigCBCELIAIpAgwhESAEQQA2AgAgAyARNwM4AkAgBEF/Rg0AIAJBBGsiAiACKAIAQQFrIgI2AgAgAg0AIARBPEEEEOUECyALQYCAgIB4Rw0BC0HE1MAAQSgQ+gQACyADQTBqIg0gCikDADcDACADQShqIg4gCSkDADcDACADQSBqIg8gCCkDADcDACADQRhqIhAgBykDADcDACADIAMpAzg3AxAgAygCDCIEIAMoAgRGBEAgA0EEahDSAgsgAygCCCAEQTBsaiICIAw2AgQgAiALNgIAIAIgAykDEDcCCCACQRBqIBApAwA3AgAgAkEYaiAPKQMANwIAIAJBIGogDikDADcCACACQShqIA0pAwA3AgAgAyAEQQFqNgIMIAVBBGoiBSAGRw0ACwwCCyAFIAQQxwQAC0GMtMAAQT8Q+gQACyABIAZBBBDlBAsgAygCCCEBAkACQCADKAIEIgUgAygCDCICTQRAIAEhBQwBCyAFQTBsIQQgAkUEQEEEIQUgASAEQQQQ5QQMAQsgASAE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IAEoAgQiAEUNBSABKAIIIABBBXRBBBDlBAwFCyABKAIEIgAEQCABKAIIIABBARDlBAsgASgCGCIDBEAgASgCFCEAA0AgACgCACIGBEAgAEEEaigCACAGQQEQ5QQLIABBDGohACADQQFrIgMNAAsLIAEoAhAiAEUNBCABKAIUIABBDGxBBBDlBAwECyABKAIEIgBFDQMgASgCCCAAQQEQ5QQMAwsgASgCBCIABEAgASgCCCAAQQEQ5QQLIAEoAhAiAEUNAiABKAIUIABBARDlBAwCCyAABEAgASgCBCAAQQEQ5QQLIAEoAgwiAARAIAEoAhAgAEEBEOUECyABKAIYIgAEQCABKAIcIABBARDlBAsgASgCJCIARQ0BIAEoAiggAEEBEOUEDAELIAEoAgQiAARAIAEoAgggAEEBEOUECyABKAIQIgAEQCABKAIUIABBARDlBAsgASgCHCIARQ0AIAEoAiAgAEEBEOUECyACQQFqIgIgBEcNAAsLC8gDAgN/AX4jAEFAaiICJAACQAJAAkACQCAARQ0AIABBCGsiAygCAEEBRw0BIAJBKGogAEEsaikCADcDACACQSBqIABBJGopAgA3AwAgAkEYaiAAQRxqKQIANwMAIAJBEGogAEEUaikCADcDACACQQhqIABBDGopAgA3AwAgACkCBCEFIANBADYCACACIAU3AwACQCADQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgA0E8QQQQ5QQLIAFFDQAgAUEIayIDIAMoAgBBAWoiADYCACAARQ0CIAEoAgANAyABQX82AgAgAiADNgI8IAIgATYCOCACIAFBBGoiADYCNCABKAIMIgQgASgCBEYEQCAAENICCyABKAIIIARBMGxqIgAgAikDADcCACAAQShqIAJBKGopAwA3AgAgAEEgaiACQSBqKQMANwIAIABBGGogAkEYaikDADcCACAAQRBqIAJBEGopAwA3AgAgAEEIaiACQQhqKQMANwIAIAEgBEEBajYCDCABQQA2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCACQTxqEPcCCyACQUBrJAAPCxD5BAALQZWxwABBPxD6BAsACxD7BAALxQMBEH8jAEEQayIDJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiAigCAEEBRw0CIAAoAkwhDCAAKAJIIQQgACgC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NgIAIAIgBTcDGAJAIANBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACADQTBBBBDlBAsgAUUNACABQQhrIgMgAygCAEEBaiIANgIAIABFDQIgASgCAA0DIAFBfzYCACACIAM2AhQgAiABNgIQIAIgAUEEaiIANgIMIAEoAgwiBCABKAIERgRAIAAQ0gILIAEoAgggBEEwbGoiACACKQMYNwIEIABBhICAgHg2AgAgAEEMaiACQSBqKQMANwIAIABBFGogAkEoaikDADcCACAAQRxqIAJBMGopAwA3AgAgAEEkaiACQThqKAIANgIAIAEgBEEBajYCDCABQQA2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCACQRRqEPcCCyACQUBrJAAPCxD5BAALQZWxwABBPxD6BAsACxD7BAAL2gMBBH8jAEFAaiIDJAAgA0EYaiIFIAEgABCdASADKAIcIQECQAJAAkAgAygCGCIEQYCAgIB4RgRAIAEoAgghBCABKAIEIQYgBSACIAAQnQEgAygCHCEAIAMoAhgiAUGAgICAeEcNASAAKAIIIQEgACgCBCECIANBATsBPCADIAQ2AjggA0EANgI0IANBAToAMCADQS82AiwgAyAENgIoIANBADYCJCADIAQ2AiAgAyAGNgIcIANBLzYCGCADQRBqIAUQaCADKAIQIgRFDQIgAygCFCEAIANBATsBPCADIAE2AjggA0EANgI0IANBAToAMCADQS82AiwgAyABNgIoIANBADYCJCADIAE2AiAgAyACNgIcIANBLzYCGCADQQhqIAUQaCADKAIIIgENA0G8z8AAEOwEAAsgAyADKAIgNgIgIAMgATYCHCADIAQ2AhhBkM7AAEErIANBGGpBgM7AAEHcz8AAEOsCAAsgAyADKAIgNgIgIAMgADYCHCADIAE2AhhBkM7AAEErIANBGGpBgM7AAEHMz8AAEOsCAAtBrM/AABDsBAALIAQgASAAIAMoAgwiASAAIAFJGxCAAyECIANBQGskACACIAAgAWsgAhsiAEEASiAAQQBIawuvAwEIfyMAQUBqIgMkAAJAAkACQCAABEAgAEEIayIFIAUoAgBBAWoiBDYCACAERQ0BIAAoAgAiBEF/Rg0CIAAgBEEBajYCACADIAU2AhQgAyAANgIQIAMgAEEIaiIENgIMIAMgBCABIAIQ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BELoB4AiAnwgBSAGQoCU69wDfn2nIAQgAkLoB359p0HAhD1saiIJQf+T69wDSyIHrXwiBCABKQMAIgJUDQAgBCACfSECIAlBgJTr3ANrIAkgBxsiByABKAIIIgFJBEAgAlANASAHQYCU69wDaiEHIAJCAX0hAgsgByABayIIQYCU69wDSQRAIAIhAwwBCyAIQYCU69wDayEIIAJCAXwhAwsgACAINgIIIAAgAzcDAAveAQIDfgJ/AkAgAUHw////B3EiCEUNACAAIAFBD3FqIQkDQCAAIAggCWoiAU8NASABQQhrKQAAIASFIgVCIIgiBiAAQQhqKQAAIAOFIgNCIIgiB34gBUL/////D4MiBSADQv////8PgyIDfoUgBSAHfiADIAZ+hUIgiYUhAyABQRBrKQAAIASFIgVCIIgiBiAAKQAAIAKFIgJCIIgiB34gBUL/////D4MiBSACQv////8PgyICfoUgBSAHfiACIAZ+hUIgiYUhAiAAQRBqIQAgCEEQayIIDQALCyACIAOFC6AHAxB/AX4BbyMAQRBrIggkACAABEAgCEEIaiEJIwBB4ABrIgMkACACQTBsIQYCQAJAAkACQCACQarVqhVLDQACfyAGRQRAQQQhBUEADAELQQQhBCAGQQQQ9wQiBUUNASACCyEEIANBADYCDCADIAU2AgggAyAENgIEIAJFDQMgAkECdCEKIANBQGshCyADQcgAaiEMIANB0ABqIQ0gA0HYAGohDkEAIQQDQCABIARqKAIAIgIlASEUIAIQqgMCQCAUEAwiAgRAIAJBCGsiBSgCAEEBRw0EIAsgAkEUaikCADcDACAMIAJBHGopAgA3AwAgDSACQSRqKQIANwMAIA4gAkEsaikCADcDACACKAIIIREgAigCBCEPIAIpAgwhEyAFQQA2AgAgAyATNwM4AkAgBUF/Rg0AIAJBBGsiAiACKAIAQQFrIgI2AgAgAg0AIAVBPEEEEOUECyAPQYCAgIB4Rw0BC0HE1MAAQSgQ+gQACyADQTBqIhIgDikDADcDACADQShqIgYgDSkDADcDACADQSBqIgUgDCkDADcDACADQRhqIgIgCykDADcDACADIAMpAzg3AxAgAygCDCIQIAMoAgRGBEAgA0EEahDSAgsgAygCCCAQQTBsaiIHIBE2AgQgByAPNgIAIAcgAykDEDcCCCAH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AhQgAkGMxsAANgIQIAIgAEEIajYCDCACQezGwAA2AgggAiAAQThqNgIEIAIgAEHVAGo2AkwgAiACQcwAajYCRCABQYzJwABBE0HEyMAAQQkgAkEEakEJENEBIAJB0ABqJAALxwEBA38gACgCACIBKAIgIgMEQCABKAIcQQxqIQADQCAAKAIAIgIgAigCAEEBayICNgIAIAJFBEAgABCQAwsgAEEMaygCACICBEAgAEEIaygCACACQQJ0QQQQ5QQLIABBMGohACADQQFrIgMNAAsLIAEoAhgiAARAIAEoAhwgAEEwbEEEEOUECyABKAIkIgAEQCABKAIoIABBAnRBBBDlBAsCQCABQX9GDQAgASABKAIEQQFrIgA2AgQgAA0AIAFBwABBCBDlBAsLzwEBA38gACgCACIBKAIYIgAgACgCAEEBayIANgIAIABFBEAgAUEYahCQAwsgASgCFCIDBEAgASgCECEAA0AgACgCACICIAIoAgBBAWsiAjYCACACRQRAIAAQkAMLIABBCGohACADQQFrIgMNAAsLIAEoAgwiAARAIAEoAhAgAEEDdEEEEOUECyABKAIgIgAgACgCAEEBayIANgIAIABFBEAgAUEgahCQAwsCQCABQX9GDQAgASABKAIEQQFrIgA2AgQgAA0AIAFBLEEEEOUECwveAQEBfyMAQRBrIhMkACAAKAIAIAEgAiAAKAIEKAIMEQEAIQEgE0EAOgANIBMgAToADCATIAA2AgggE0EIaiADIAQgBSAGELUBIAcgCCAJIAoQtQEgCyAMIA0gDhC1ASAPIBAgESASELUBIQEgEy0ADSICIBMtAAwiA3IhAAJAIANBAXEgAkEBR3INACABKAIAIgAtAApBgAFxRQRAIAAoAgBBsfXAAEECIAAoAgQoAgwRAQAhAAwBCyAAKAIAQbD1wABBASAAKAIEKAIMEQEAIQALIBNBEGokACAAQQFxC8UBAQN/IAAoAgQhAyAAKAIAIQRBAAJ/AkACQAJAAkACQEEEIAAoAggiACgCACIFQYCAgIB4cyAFQQBOG0EBaw4EAQIDBAALIAMgASACEOMBDAQLIAMgASACEH8MAwsgASgCAEEIaiACKAIAQQhqIAEoAgQiACACKAIEIgEgACABSRsQgAMiAiAAIAFrIAIbIgBBAEogAEEASGsMAgsgAyABIAIQbgwB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KAIQIgBBEGohAwNAAkAgAQRAIAAtACFBAkYNASACIAQ2AgggAiADNgIMIAIgAkEIakGw28AAIAJBDGpBwNvAABDsAQwBCyACEIkDIAJBEGokAA8LIABBJGohACAEQQFqIQQgAUEkayEBIANBJGohAwwACwALmwEBA38gACgCACIBKAIMIgAEQCABKAIQIABBARDlBAsgASgCICICBEAgASgCHCEAA0AgACgCACIDBEAgAEEEaigCACADQQEQ5QQLIABBDGohACACQQFrIgINAAsLIAEoAhgiAARAIAEoAhwgAEEMbEEEEOUECwJAIAFBf0YNACABIAEoAgRBAWsiADYCBCAADQAgAUEoQQQQ5QQLC7QBAQF/IwBBQGoiAiQAIAAoAgAhACACQci6wAA2AjggAkG4usAANgIwIAIgADYCLCACQaC5wAA2AiggAiAAQShqNgIkIAJBwLjAADYCICACIABBJGo2AhwgAkHAuMAANgIYIAIgAEEgajYCFCACQai6wAA2AhAgAiAAQQhqNgIMIAIgAEEUajYCPCACIAJBPGo2AjQgAUGUu8AAQRNB5LrAAEEGIAJBDGpBBhDRASACQUBrJAALtAEBAX8jAEFAaiICJAAgACgCACEAIAJBwMLAADYCOCACQcDAwAA2AjAgAiAAQRxqNgIsIAJBsMLAADYCKCACIABBHmo2AiQgAkGwwMAANgIgIAIgAEEUajYCHCACQaDCwAA2AhggAiAANgIUIAJBsMDAADYCECACIABBDGo2AgwgAiAAQR1qNgI8IAIgAkE8ajYCNCABQaTDwABBE0H0wsAAQQYgAkEMakEGENEBIAJBQGskAAu0AQEBfyMAQUBqIgIkACAAKAIAIQAgAkGg08AANgI4IAJBkNPAADYCMCACIABBLGo2AiwgAkGA08AANgIoIAIgAEEoajYCJCACQYDTwAA2AiAgAiAAQSRqNgIcIAJB8NLAADYCGCACIABBDGo2AhQgAkHg0sAANgIQIAIgADYCDCACIABBGGo2AjwgAiACQTxqNgI0IAFBtNTAAEEQQYTUwABBBiACQQxqQQYQ0QEgAkFAayQAC4oBAQF/IwBBEGsiAyQAIAIgASACaiIBSwRAQQBBABDHBAALIANBBGogACgCACICIAAoAgRBCCABIAJBAXQiAiABIAJLGyIBIAFBCE0bIgFB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AAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQRQQhgIgASgCBEEBRgRAIAEoAgggASgCDBDHBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQQwQhgIgASgCBEEBRgRAIAEoAgggASgCDBDHBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQQQQhgIgASgCBEEBRgRAIAEoAgggASgCDBDHBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQRwQhgIgASgCBEEBRgRAIAEoAgggASgCDBDHBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQTAQhgIgASgCBEEBRgRAIAEoAgggASgCDBDHBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtrAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEEQQgQhgIgASgCBEEBRgRAIAEoAgggASgCDBDHBAALIAEoAgghAyAAIAI2AgAgACADNgIEIAFBEGokAAtsAQN/IwBBEGsiASQAIAFBBGogACgCACICIAAoAgRBBCACQQF0IgIgAkEETRsiAkEQQdAAEIYCIAEoAgRBAUYEQCABKAIIIAEoAgwQxwQACyABKAIIIQMgACACNgIAIAAgAzYCBCABQRBqJAALawEDfyMAQRBrIgEkACABQQRqIAAoAgAiAiAAKAIEQQQgAkEBdCICIAJBBE0bIgJBBEEYEIYCIAEoAgRBAUYEQCABKAIIIAEoAgwQxwQACyABKAIIIQMgACACNgIAIAAgAzYCBCABQRBqJAALgQEBAX8jAEEQayICJAAgAiAAKAIAIgBBGmo2AgwgAUH0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AgQhAiAAKAIAIQMCQCAAKAIIIgAtAABFDQAgA0HensEAQQQgAigCDBEBAEUNAEEBDwsgACABQQpGOgAAIAMgASACKAIQEQAAC04BAX8jAEEQayICJAAgAiAAKAIAIgA2AgwgAUGsxcAAQQZBssXAAEEEIABBBGpBjMXAAEG2xcAAQQUgAkEMakGcxcAAEIcCIAJBEGokAAtOAQF/IwBBEGsiAiQAIAIgACgCACIAQRBqNgIMIAFBmM3AAEEbQbPNwABBBiAAQfjMwABBuc3AAEEHIAJBDGpBiM3AABCHAiACQRBqJAALTgEBfyMAQRBrIgIkACACIAAoAgAiAEEMajYCDCABQeTRwABBCkHu0cAAQQUgAEHU0cAAQfPRwABBByACQQxqQYjNwAAQhwIgAkEQaiQACz8BAn8CQCAAKAIAIgFBf0YNACAAKAIEIAEgASgCBEEBayICNgIEIAINAEELakF8cSIARQ0AIAEgAEEEEOUECwtFAQF/IAAoAgAiACgCICIBBEAgACgCJCABQQEQ5QQLAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQTBBCBDlBAsLRQEBfyAAKAIAIgAoAgwiAQRAIAAoAhAgAUEBEOUECwJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEEYQQQQ5QQLCzQBAX8jAEEQayICJAAgAUEBQQAgACgCACACQQZqIgEQZiIAIAFqQQogAGsQSyACQRBqJAALNAEBfyMAQSBrIgIkACABQQFBACAAKQMAIAJBDGoiARBlIgAgAWpBFCAAaxBLIAJBIGokAAu8bgMmfxR+AXwgASgCCCICQYCAgAFxIQMgACsDACE8AkACQCACQYCAgIABcUUEQCABIANBAEchEEEAIQEjAEGAAWsiCyQAIDy9IjJC/////////weDIitCgICAgICAgAiEIDJCAYZC/v///////w+DIDJCNIinQf8PcSIDGyIpQgGDIShBAiEAAkACQAJAAkACQCArUCICQQJBAyACG0EEIDJCgICAgICAgPj/AIMiK1AbICtCgICAgICAgPj/AFEbQQFrDgQAAQIDBAtBAyEADAMLQQQhAAwCCyADQbMIayEBIChQIQBCASEqDAELQoCAgICAgIAgIClCAYYgKUKAgICAgICACFEiARshKUICQgEgARshKiAoUCEAQct3Qcx3IAEbIANqIQELIAsgATsBeCALICo3A3AgC0IBNwNoIAsgKTcDYCALIAA6AHoCfwJAAkACQAJAIABBAU0EQCALQSBqIQYgC0EPaiEHIwBB0ABrIgAkAAJAAkACQAJAAkACQAJAAkACQAJAIAtB4ABqIgEpAwAiKFBFBEAgASkDCCIpUA0BIAEpAxAiK1ANAiArICggK3wiKlYNAyAoIClUDQQgKkKAgICAgICAgCBaDQUgACABLwEYIgM7AUAgACAoICl9Iis3AzggACArICp5IimGIi0gKYgiLDcDSCArICxSDQkgACADOwFAIAAgKDcDOCAAICggKYYiKyApiCIsNwNIICggLFINCUGgfyADICmnayIDa8FB0ABsQbCnBWpBzhBtIgFB0ABLDQcgAEEgaiABQQR0IgEpA9j6QCIoICogKYYQuQIgAEEQaiAoIC0QuQIgACAoICsQuQJCAUEAIAMgAS8B4PpAamtBP3GtIi+GIixCAX0hMCAAKQMQQj+HITUgACkDAEI/iCE2IAApAwghNyABLwHi+kAhAiAAKQMYITggACkDKCI6IAApAyBCP4giO3wiM0IBfCIuIC+IpyIDQZDOAE8EQCADQcCEPUkNByADQYDC1y9PBEBBCEEJIANBgJTr3ANJIgEbIQxBgMLXL0GAlOvcAyABGyEBDAoLQQZBByADQYCt4gRJIgEbIQxBwIQ9QYCt4gQgARshAQwJCyADQeQATwRAQQJBAyADQegHSSIBGyEMQeQAQegHIAEbIQEMCQtBCkEBIANBCUsiDBshAQwIC0GYhcEAQRxByIbBABDNBAALQdiGwQBBHUH4hsEAEM0EAAtBiIfBAEEcQaSHwQAQzQQAC0H8iMEAQTZBtInBABDNBAALQbSIwQBBN0HsiMEAEM0EAAtBxIfBAEEtQfSHwQAQzQQAC0EEQQUgA0GgjQZJIgEbIQxBkM4AQaCNBiABGyEBDAELIAFB0QBBiIbBABD2AgALIC4gMIMhKiA2IDd8ITEgDCACa0EBaiENIDUgOH0gLnxCAXwiNCAwgyEpQQAhAgJAAkACQAJAAkACQAJAAkACQAJAA0AgAyABbiEOIAJBEUYNAyACIAdqIgkgDkEwaiIEOgAAIDQgAyABIA5sayIDrSAvhiI5ICp8IihWDQIgAiAMRgRAIAJBAWohAkIBISgDQCApIS0gKCErIAJBEU8NBiACIAdqICpCCn4iKiAviKdBMGoiAToAACACQQFqIQIgKEIKfiEoIClCCn4iKSAqIDCDIipYDQALICkgKn0iNCAsVCEDICggLiAxfX4iLiAofCEvICogLiAofSIwWg0IICwgNFgNAgwICyACQQFqIQIgAUEKSSABQQpuIQFFDQALQYSIwQAQ6wQACyACIAdqQQFrIQwgLCAxQgp+IDNCCn59ICt+fCExQgAgKn0hLiAtQgp+ICx9IS0DQCAqICx8IiggMFQgLiAwfCAqIDF8WnJFBEBBACEDDAcLIAwgAUEBayIBOgAAIC0gLnwiMyAsVCEDICggMFoNByAuICx9IS4gKCEqICwgM1gNAAsMBgsgNCAofSIpIAGtIC+GIitUIQEgLiAxfSIsQgF8IS0gKSArVCAoICxCAX0iL1pyDQIgMyAxfSAqIDl8Iil9IS4gMyA1fCA4fSApICt8fUICfCExICogNnwgN3wgO30gOn0gOXwhLEIAISoDQCAoICt8IikgL1QgKiAufCArICx8WnJFBEBBACEBDAQLIAkgBEEBayIEOgAAICogMXwiMCArVCEBICkgL1oNBCArICx8ISwgKiArfSEqICkhKCArIDBYDQALDAMLQRFBEUGUiMEAEPYCAAsgAkERQaSIwQAQ9gIACyAoISkLAkAgKSAtWiABcg0AIC0gKSArfCIoWCAtICl9ICggLX1UcQ0AIAZBADYCAAwECyApIDRCBH1YIClCAlpxRQRAIAZBADYCAAwECyAGIA07AQggBiACQQFqNgIEDAILICohKAsCQCAoIC9aIANyDQAgLyAoICx8IipYIC8gKH0gKiAvfVRxDQAgBkEANgIADAILICggKSArQlh+fFggKCArQhR+WnFFBEAgBkEANgIADAILIAYgDTsBCCAGIAI2AgQLIAYgBzYCAAsgAEHQAGokAAwBCyMAQRBrIgEkACABIABBOGo2AgwgASAAQcgAajYCCCABQQhqQfydwQAgAUEMakH8ncEAQQAgA0G4jcEAENUBAAtBzfTAAEEBIDJCAFMiABshHkHN9MAAQeH0wAAgABshHyAyQj+IpyEgIAsoAiBFDQEgC0HYAGogC0EoaigCADYCACALIAspAiA3A1AMAgsgAEECRg0CQQEhAUHN9MAAQeH0wAAgMkIA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EM0EAAtBmIXBAEEcQeSKwQAQzQQAC0EAIAJBKEGo+MAAELYBAAtBi/jAAEEaQaj4wAAQzQQAC0EoQShBqPjAABD2AgALCyAfIB4gEBshAyAQICByIQIgCyALKAJQIAsoAlQgCy8BWEEAIAtBIGoQmgEgCygCBCEBIAsoAgAMAgsgC0EDNgIoIAtBpPnAADYCJCALQQI7ASBBASEDQQAhAkEBIQEgC0EgagwBCyALQQM2AiggC0Gn+cAANgIkIAtBAjsBICALQSBqCyEAIAsgATYCXCALIAA2AlggCyACNgJUIAsgAzYCUCALQdAAahBbIAtBgAFqJAAPCyABIANBAEchFyABLwEOIRNBACEBIwBB8AhrIgokACA8vSIpQv////////8HgyItQoCAgICAgIAIhCApQgGGQv7///////8PgyApQjSIp0H/D3EiAxsiKEIBgyErQQIhAAJAAkACQAJAAkAgLVAiAkECQQMgAhtBBCApQoCAgICAgID4/wCDIi1QGyAtQoCAgICAgID4/wBRG0EBaw4EAAECAwQLQQMhAAwDC0EEIQAMAgsgA0GzCGshASArUCEAQgEhKgwBC0KAgICAgICAICAoQgGGIChCgICAgICAgAhRIgEbIShCAkIBIAEbISogK1AhAEHLd0HMdyABGyADaiEBCyAKIAE7AegIIAogKjcD4AggCkIBNwPYCCAKICg3A9AIIAogADoA6ggCfwJAIABBAU0EQEF0QQUgAcEiAEEASBsgAGwiAEHA/QBJDQFBoPrAAEElQcj6wAAQzQQACwJAAkAgAEECRwRAQQEhAUHN9MAAQeH0wAAgKUIAUyIDG0HN9MAAQQEgAxsgFxshAyApQj+IpyAXciECIABBBEcNAUECIQEgCkECOwGQCCATDQJBASEBIApBATYCmAggCkHO9MAANgKUCCAKQZAIagwECyAKQQM2ApgIIApBpPnAADYClAggCkECOwGQCEEBIQNBACECQQEhASAKQZAIagwDCyAKQQM2ApgIIApBp/nAADYClAggCkECOwGQCCAKQZAIagwCCyAKIBM2AqAIIApBADsBnAggCkECNgKYCCAKQar5wAA2ApQIIApBkAhqDAELQc30wABBASApQgBTIgEbISFBzfTAAEHh9MAAIAEbIClCP4inISMgCkGQCGohDCAKQRBqIQ8gAEEE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JGopAgA3AwAgBUEYaiABQRxqKQIANwMAIAVBEGogAUEUaikCADcDACAFQQhqIAFBDGopAgA3AwAgASkCBCEZIAhBADYCACAFIBk3AwACQCAIQX9GDQAgAUEEayIAIAAoAgBBAWsiADYCACAADQAgCEE8QQQQ5QQLIAJFDQAgAkEIayIBKAIAQQFHDQQgBUFAayACQRRqKAIANgIAIAVBOGogAkEMaikCADcDACACKQIEIRkgAUEANgIAIAUgGTcDMAJAIAFBf0YNACACQQRrIgAgACgCAEEBayIANgIAIAANACABQSBBBBDlBAsgBUHIAGohCSAFQTBqIQ8jAEHQAGsiAyQAIANBMGogCyAFECcCQAJAAkACQCADKAI4IgBBgICAgHhGBEAgA0EoaiADQcQAaigCACIANgIAIAMgAykCPCIZNwMgIAlBFGogADYCACAJIBk3AgwgCUGAgICAeDYCCAwBCyADQRRqIANBxABqKAIANgIAIAMgAykCPDcCDCADIAMpA0g3AxggAyAANgIIIAMgAykDMDcDAAJAAkAgDy0AEEUNACADQTBqIRIjAEHgAGsiBiQAIAZBADYCFCAGQoCAgIDAADcCDCADKAIQIQIgA0EANgIQIAZBADYCKCAGIANBCGoiEDYCICAGIAI2AiQgBiADKAIMIgAgAkEwbCIHaiIBNgIcIAYgAgR/A0AgBkHYAGogAEEoaikCADcDACAGQdAAaiAAQSBqKQIANwMAIAZByABqIABBGGopAgA3AwAgBkFAayAAQRBqKQIANwMAIAZBOGogAEEIaikCADcDACAGIAApAgA3AzAgAEEwaiEAIAZBMGogBkEMahB5IAdBMGsiBw0ACyABBSAACzYCGCAGQRhqELcBAkAgBigCFCIABEAgAEEwbCEHIAYoAhBBDGohAANAIAZBGGogACALEOQBIAYoAhhBgICAgHhHBEAgEiAGKQIYNwIAIBJBCGogBkEgaigCADYCACAGQQxqEMgCIAYoAgwiAEUNAyAGKAIQIABBMGxBBBDlBAwDCyAAQTBqIQAgB0EwayIHDQALC0EAIQcCQAJAIAZBDGoiCigCCCIMQQJPBEAgDEEBayEBIAooAgQiCEHgAGohAANAIAsgAEEwayAAQeAAaxCrAQ0CIABBMGohACABIAdBAWoiB0cNAAsLDAELIABBJGsiAigCACIBIAEoAgBBAWsiATYCACABRQRAIAIQkAMLIABBMGsiARDIAiABKAIAIgEEQCAAQSxrKAIAIAFBMGxBBBDlBAsgB0EBaiERIAwgB0ECaksEQCAMIAdrQQJrIQwDQAJAIAsgACAIIBFBMGxqIgFBMGsQqwFFBEAgASAAKQIANwIAIAFBKGogAEEoaikCADcCACABQSBqIABBIGopAgA3AgAgAUEYaiAAQRhqKQIANwIAIAFBEGogAEEQaikCADcCACABQQhqIABBCGopAgA3AgAgEUEBaiERDAELIABBDGoiAigCACIBIAEoAgBBAWsiATYCACABRQRAIAIQkAMLIAAQyAIgACgCACIBRQ0AIABBBGooAgAgAUEwbEEEEOUECyAAQTBqIQAgDEEBayIMDQALCyAKIBE2AggLIAZBIGoiASAGQRRqKAIANgIAIAYgBikCDDcDGCAQEMgCIBAoAgAiAARAIAMoAgwgAEEwbEEEEOUECyAQIAYpAxg3AgAgEEEIaiABKAIANgIAIBJBgICAgHg2AgALIAZB4ABqJAAgAygCMEGAgICAeEYNACAJIAMpAjA3AgwgCUEUaiADQThqKAIANgIADAELIA8oAgAiFkGEgICAeEYNAiADKAIMIQECQCADKAIQIggEQCAIQTBsIQIgASEAA0AgA0EwaiAAIAsgDxCjAiADKAIwQYCAgIB4RwRAIANBKGogA0E4aigCADYCACADIAMpAjA3AyAMAwsgAEEwaiEAIAJBMGsiAg0ACwsgA0EgaiAPIAsgASAIEKwBCyADKAIgQYCAgIB4Rg0CIAkgAykDIDcCDCAJQRRqIANBKGooAgA2AgALIAlBgICAgHg2AgggA0EIahDIAiADKAIIIgBFDQAgAygCDCAAQTBsQQQQ5QQLIA8oAgAiFkGFgICAeE4NAQwCCyADQcgAaiADQRhqKQMANwMAIANBQGsgA0EQaikDADcDACADQThqIANBCGopAwA3AwAgAyADKQMANwMwIwBBkAFrIgQkACAEQQA2AhQgBEKAgICAwAA3AgwgBEEANgIgIARCgICAgMAANwIYIANBMGoiEygCDCIBIBMoAhAiAkEwbGohFyATKAIIIQsgASEAAkAgAgRAIARB+ABqIRggBEEwaiEGIARBKGoiFEEoaiEQIBRBIGohESAUQRhqIRIDQCAAKAIAIgJBgICAgHhHBEAgBCACNgIkIBAgAEEsaigCADYCACARIABBJGopAgA3AgAgEiAAQRxqKQIANwIAIBRBEGogAEEUaikCADcCACAUQQhqIABBDGopAgA3AgAgFCAAQQRqKQIANwIAIAQoAiwhCCAEQQA2AiwgBEEANgJkIAQgCDYCYCAEIAQoAigiAjYCVCAEIAIgCEEwbGo2AlggBCAEQQxqIgo2AmggBCAEQSRqNgJcIARB7ABqIARB1ABqEIUBIBhBEGogBkEQaikCADcCACAYQQhqIAZBCGopAgA3AgAgGCAGKQIANwIAIAQtAFAhDCAEKAJMIQggBCgCSCECIAQoAhQiByAEKAIMRgRAIAoQ0gILIAQoAhAgB0EwbGoiCiAEKQJsNwIAIAogDDoALCAKIAg2AiggCiACNgIkIApBCGogBEH0AGopAgA3AgAgCkEQaiAEQfwAaikCADcCACAKQRhqIARBhAFqKQIANwIAIApBIGogBEGMAWooAgA2AgAgBCAHQQFqNgIUIARBJGoQyAIgBCgCJCICBEAgBCgCKCACQTBsQQQQ5QQLIAQoAiAiAiAEKAIYRgRAIARBGGoQ0AILIAQoAhwgAkECdGogBzYCACAEIAJBAWo2AiAgAEEwaiIAIBdHDQEMAwsLIABBMGohAAsgFyAAa0EwbiEHIAAgF0YNAANAIABBDGoiCCgCACICIAIoAgBBAWsiAjYCACACRQRAIAgQkAMLIAAQyAIgACgCACICBEAgAEEEaigCACACQTBsQQQQ5QQLIABBMGohACAHQQFrIgcNAAsLIAsEQCABIAtBMGxBBBDlBAsgCSAEKQIMNwIIIAkgBCkCGDcCFCAJIBMtABw6ACggCSATKQIUNwMgIAkgEykDADcDACAJQRBqIARBFGooAgA2AgAgCUEcaiAEQSBqKAIANgIAIARBkAFqJAAgFkGFgICAeEgNAQsgFkUNACAPKAIEIBZBARDlBAsgA0HQAGokACAOIA4oAgBBAWs2AgAgFSAVKAIAQQFrIgA2AgAgAEUEQCAFQYQBahBRCyANAn8gBSgCUEGAgICAeEYEQEEYQQQQ9wQiAEUNByAAQQA2AgggAEKBgICAEDcCACAAIAUpAlQ3AgwgAEEUaiAFQdwAaigCADYCACAAQQhqENYEIQFBAQwBCyAFQagBaiAFQfAAaikDADcCACAFQaABaiAFQegAaikDADcCACAFQZgBaiAFQeAAaikDADcCACAFQZABaiAFQdgAaikDADcCACAFQYgBaiAFQdAAaikDADcCACAFIAUpA0g3AoABQcAAQQgQ9wQiAEUNByAAQQA2AgggAEKBgICAEDcDACAAIAUpAnw3AgwgAEEUaiAFQYQBaikCADcCACAAQRxqIAVBjAFqKQIANwIAIABBJGogBUGUAWopAgA3AgAgAEEsaiAFQZwBaikCADcCACAAQTRqIAVBpAFqKQIANwIAIABBPGogBUGsAWooAgA2AgAgAEEIaiEBQQALIgA2AgggDSABQQAgABs2AgQgDUEAIAEgABs2AgAgBUGwAWokAAwHCxD5BAsACxD7BAALQcDNwABBPxD6BAALQcDNwABBPxD6BAALQQRBGBD9BAALQQhBwAAQ/QQACyANKAIAIA0oAgQgDSgCCCANQRBqJAAL+YEBAjZ/BX4jAEEQayIkJAAjAEHQAWsiDSQAAkACQAJAAkACQAJAAkACQCAARQ0AIABBCGsiKCAoKAIAQQFqIgU2AgAgBUUNASAAKAIAIgVBf0YNAiAAIAVBAWo2AgAgDSAoNgK0ASANIAA2ArABIA0gAEEIaiISNgKsASABRQ0AIAFBCGsiBSgCAEEBRw0DIA1BKGogAUEsaikCADcDACANQSBqIAFBJGopAgA3AwAgDUEYaiABQRxqKQIANwMAIA1BEGogAUEUaikCADcDACANQQhqIAFBDGopAgA3AwAgASkCBCE5IAVBADYCACANIDk3AwACQCAFQX9GDQAgAUEEayIBIAEoAgBBAWsiATYCACABDQAgBUE8QQQQ5QQLIAJFDQAgAkEIayIBKAIAQQFHDQQgDUEwaiACQQRqQdgA/AoAACABQQA2AgACQCABQX9GDQAgAkEEayICIAIoAgBBAWsiAjYCACACDQAgAUHkAEEEEOUECyANQYgBaiEYIA1BMGohD0EAIQUjAEGwAWsiBCQAIARBEGoQtQIgBEHIAGohDiMAQbABayIDJAAgDSgCBCEBIA0oAgghAkGAgICAeCEIIANBgICAgHg2AkggAyASNgKYASADIAEgAkEMbGo2ApQBIAMgATYCkAEgAyADQcgAajYCnAEgA0EQaiECIwBBQGoiASQAIAFBEGogA0GQAWoiBiABQT9qIgsgBigCDBCUAQJAAkACQCABKAIQQQFxBEAgASgCFCEQQRBBBBD3BCIJRQ0CIAkgEDYCACABIAk2AiAgAUEENgIcIAFBATYCJCABQTBqIAZBCGopAgA3AwAgASAGKQIANwMoIAFBCGogAUEoaiALIAEoAjQQlAEgASgCCEEBcQRAIAEoAgwhCkEEIQZBASELA0AgASgCHCALRgRAIAFBHGogC0EBQQRBBBCIAiABKAIgIQkLIAYgCWogCjYCACABIAtBAWoiCzYCJCABIAFBKGogAUE/aiABKAI0EJQBIAZBBGohBiABKAIEIQogASgCAEEBcQ0ACwsgAiABKQIcNwIAIAJBCGogAUEkaigCADYCAAwBCyACQQA2AgggAkKAgICAwAA3AgALIAFBQGskAAwBC0EEQRAQxwQACwJAIAMoAkgiAUGAgICAeEcEQCADKAJQIQIgAygCTCEFIAMoAhAiCQRAIAMoAhQgCUECdEEEEOUECyAOIAI2AgwgDiAFNgIIIA4gATYCBCAOQYCAgIB4NgIADAELIAMoAhghCyADKAIUIRAgAygCECEZAkACQCANKAIMQYCAgIB4RwRAIA0oAhAhBQJAIA0oAhQiAkUEQEEEIQEMAQsgAkEDdCIJQQQQ9wQiAUUNAgsgA0EANgIYIAMgATYCFCADIAI2AhAgA0EANgKUASADIANBGGo2ApABIAMgATYCmAEgBSAFIAJBDGxqIANBkAFqEMMBIAMoAhAhCCADKAIYIRUgAygCFCEFCwJAAkAgDSgCGEGAgICAeEcEQCANKAIgIQIgDSgCHCEJEMEEIgFFDQIgASABKQMAIjlCAXw3AwAgASkDCCE6IANBmAFqIgZBwNDAACkDADcDACADQbjQwAApAwA3A5ABIAMgOjcDqAEgAyA5NwOgASACBEAgCUEIaiEBA0AgA0EIaiASIAFBBGsoAgAgASgCABB6IAMoAghBAXEEQCADQZABaiADKAIMEHQLIAFBDGohASACQQFrIgINAAsLIANBKGogA0GoAWopAwA3AwAgA0EgaiADQaABaikDADcDACADQRhqIAYpAwA3AwAgAyADKQOQATcDEAwBCyADQQA2AhALIA0tACwNAiANKAIkIRcgA0IANwJsIANCgICAgMAANwJkIANBADYCfCADQoCAgIDAADcCdCADQQA2AogBIANC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AxDLASABKALwASIJIAEoAugBRgRAIAFB6AFqENECCyABKALsASAJQRxsaiICIAEpAoACNwIAIAJBADoAGiACQQE7ARggAkEANgIUIAJCgICAgMAANwIMIAJBCGogAUGIAmoiESgCADYCACABIAlBAWo2AvABIAFBqAJqIAMQywEgAUG0AmogA0EBaiIDEMsBIAFBADYC2AIgAUKAgICAEDcC0AIgAUG4v8AANgLkAiABQqCAgIAGNwLoAiABIAFB0AJqNgLgAiAAKAIAQQhqIABBBGooAgAgAUHgAmoQgQUNAiABQcgCaiICIAFB2AJqKAIANgIAIAEgASkC0AI3A8ACQQhBARD3BCIJRQ0DIAlC5fDB45bt2LT0ADcAACAOIAEpArQCNwIAIAsgASkDwAI3AgAgESABQbACaigCADYCACAOQQhqIAFBvAJqKAIANgIAIAtBCGogAigCADYCACABIAEpAqgCNwOAAiABKAL8ASINIAEoAvQBRgRAIAFB9AFqENICCyABKAL4ASANQTBsaiICIAEpA4ACNwIAIAJBCDYCLCACIAk2AiggAkEINgIkIAJBCGogESkDADcCACACQRBqIAFBkAJqKQMANwIAIAJBGGogCykDADcCACACQSBqIAFBoAJqKAIANgIAIAEgDUEBajYC/AEgAEEIaiIAIBJHDQALCyABQYACaiADEMsBIAEoAvABIgIgASgC6AFGBEAgAUHoAWoQ0QILIAEoAuwBIAJBHGxqIgAgASkCgAI3AgAgAEEAOgAaIABBATsBGCAAQQA2AhQgAEKAgICAwAA3AgwgAEEIaiABQYgCaigCADYCACABQfABaiACQQFqIgA2AgAgAUHYAmogADYCACABIAEpAugBNwPQAiABQegCaiABQfwBaigCADYCACABIAEpAvQBNwPgAkEgQQQQ9wQiA0UNAiAHKAIMIg4gDigCAEEBaiIANgIAIABFDQNBACECIARB/////wFLIAhB/P///wdLcg0EIAcoAhAhEQJAIAhFBEBBBCELDAELQQQhAiAIQQQQ9wQiC0UNBSAERQ0AQQAhAiAEIQADQCACIAhGDQEgBSgCACIJIAkoAgBBAWoiDTYCACANRQ0FIAVBBGooAgAhDSACIAtqIhIgCTYCACASQQRqIA02AgAgAkEIaiECIAVBCGohBSAAQQFrIgAN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AUEBcjYCBEHEo8EAIAE2AgBBzKPBACAFNgIACyAGRQ0AIAAMAwsgAxAmIgFFDQEgA0F8QXggBygCACICQQNxGyACQXhxaiICIAIgA0sbIgIEQCABIAAgAvwKAAALIAEhAgsgABBNCyACCwsWAEHwn8EAIAA2AgBB7J/BAEEBNgIACxEAIAEgACgCACAAKAIEENQECxMAIABBvObAADYCBCAAIAE2AgALEAAgASAAKAIAIAAoAgQQVQsQAQF/EGMiASAAJQEmASABCw8AIABB4LHAACABIAIQXwthAQF/AkACQCAAQQRrKAIAIgJBeHEiA0EEQQggAkEDcSICGyABak8EQCACQQAgAyABQSdqSxsNASAAEE0MAgtBzObAAEEuQfzmwAAQzQQAC0GM58AAQS5BvOfAABDNBAALCw8AIABBtN7AACABIAIQXwsPACAAQYTlwAAgASACEF8LDwAgAEGc6cAAIAEgAhBfC/YBAgF+An8gACgCACkDACECIwBBIGsiAyQAAn8CQCABKAIIIgBBgICAEHFFBEAgAEGAgIAgcQ0BIAFBAUEAIAIgA0EMaiIAEGUiASAAakEUIAFrEEsMAgtBACEAA0AgACADakEbaiACp0EPcS0A4vRAOgAAIABBAWshACACQg9WIAJCBIghAg0ACyABQfL0wABBAiAAIANqQRxqQQAgAGsQSwwBC0EAIQADQCAAIANqQRtqIAKnQQ9xLQD09EA6AAAgAEEBayEAIAJCD1YgAkIEiCECDQALIAFB8vTAAEECIAAgA2pBHGpBACAAaxBLCyADQSBqJAALDwAgAEGQ9cAAIAEgAhBfCw8AQdCdwQBBMyAAEJwDAAsPAEHMkMEAQSsgABDNBAALEwBBzY/BAEGZAUGckMEAEJwDAAsMACAAJQEgASACEAALDAAgACUBIAEgAhAQCwwAIAAlASABIAIQEQsOACABQeiwwABBBRDUBAsOACABQdqxwABBBRDUBAsOACABQajAwABBBRDUBAsMACAAKAIAIAEQvAQLDAAgACgCACABEK8CC2sBAX8gACgCACECIwBBIGsiACQAIAAgAigCACICNgIIIAAgAmg2AgwgACAAQQxqrUKAgICA8BeENwMYIAAgAEEIaq1CgICAgIAYhDcDECABKAIAIAEoAgRB6qfAACAAQRBqEF8gAEEgaiQACxoA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ZnQ6IMAJCiByaWdodDogwAAqZXh0ZW5zaW9uIGNhbm5vdCBjb250YWluIHBhdGggc2VwYXJhdG9yczogwABIY2Fubm90IGFjY2VzcyBhIFRocmVhZCBMb2NhbCBTdG9yYWdlIHZhbHVlIGR1cmluZyBvciBhZnRlciBkZXN0cnVjdGlvbjogwAAsRXJyb3IgY2FsbGluZyB1cGRhdGUgbm90aWZpY2F0aW9uIGZ1bmN0aW9uOiDAABhFcnJvciBjYWxsaW5nIGZ1bmN0aW9uOiDAACdFcnJvciBjYWxsaW5nIGVkZ2UgaXRlcmF0aW9uIGNhbGxiYWNrOiDAACdFcnJvciBjYWxsaW5nIG5vZGUgaXRlcmF0aW9uIGNhbGxiYWNrOiDAAMACOiDAAAFbwAJdIMABIMAAC2J5dGUgaW5kZXggwBkgaXMgbm90IGFuIE9zU3RyIGJvdW5kYXJ5AC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvc3RyL2xvc3N5LnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvbnVtL2ZsdDJkZWMvc3RyYXRlZ3kvZ3Jpc3UucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9jb3JlL3NyYy9zbGljZS9zb3J0L3NoYXJlZC9zbWFsbHNvcnQucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zdGFibGUvcXVpY2tzb3J0LnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi92ZWMtY29sbGVjdGlvbnMtMC40LjMvc3JjL3ZlY19zZXQucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9jb3JlL3NyYy9udW0vZGl5X2Zsb2F0LnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BldGdyYXBoLTAuOC4zL3NyYy9pdGVyX2Zvcm1hdC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9idWlsZGVycy5ycwBzcmMvdXRpbHMucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvd2ViLXRpbWUtMS4xLjAvc3JjL3RpbWUvanMucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvdGhyZWFkX2xvY2FsL25vX3RocmVhZHMucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9zdGQvc3JjL2ZmaS9vc19zdHIucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3N0ci5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21lbWNoci5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9pbmRleG1hcC0yLjEzLjAvc3JjL2lubmVyLnJzAC9ob21lL3J1bm5lci8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLXg4Nl82NC11bmtub3duLWxpbnV4LWdudS9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3N0ci9wYXR0ZXJuLnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvbnVtL2ZsdDJkZWMvc3RyYXRlZ3kvZHJhZ29uLnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvbnVtL2JpZ251bS5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9udW0ucnMAc3JjL2RhdGEvdHJhdmVyc2FsLnJzAC9ob21lL3J1bm5lci8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLXg4Nl82NC11bmtub3duLWxpbnV4LWdudS9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvdGhyZWFkL2xvY2FsLnJzAHNyYy90cmF2ZXJzYWwvcGF0aC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L3N0ZC9zcmMvcGF0aC5ycwBzcmMvdXBkYXRlL2dyYXBoLnJzAHNyYy9ncmFwaC5ycwBzcmMvZWRnZV9zb3J0aW5nLnJzAC9ob21lL3J1bm5lci8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLXg4Nl82NC11bmtub3duLWxpbnV4LWdudS9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9zdHJpbmcucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL3VuaWNvZGUvcHJpbnRhYmxlLnJzAHNyYy9kYXRhL25vZGUucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL29uY2UucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvaGFzaGJyb3duLTAuMTUuNS9zcmMvcmF3L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE2LjEvc3JjL3Jhdy9tb2QucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvaGFzaGJyb3duLTAuMTYuMS9zcmMvcmF3L21vZC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9tb2QucnMAc3JjL3RyYXZlcnNhbC9tb2QucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGV0Z3JhcGgtMC44LjMvc3JjL2dyYXBoX2ltcGwvc3RhYmxlX2dyYXBoL21vZC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwBzcmMvZGF0YS9tb2QucnMAc3JjL21lcm1haWQucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9hbGxvYy9zcmMvcmMucnMAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuMTEvc3JjL2RsbWFsbG9jLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2NvbnNvbGVfZXJyb3JfcGFuaWNfaG9vay0wLjEuNy9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2ZvbGRoYXNoLTAuMS41L3NyYy9saWIucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvb25jZV9jZWxsLTEuMjEuNC9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3NtYWxsdmVjLTEuMTUuMS9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2l0ZXJ0b29scy0wLjE0LjAvc3JjL2xpYi5ycwAHQWRkaW5nIMAGIEVkZ2VzAAhSZW1vdmVkIMAQIGltcGxpZWQgZWRnZXMsIMAWIGV4cGxpY2l0IGVkZ2VzIHJlbWFpbgAiU3RhYmxlR3JhcGg6OmFkZF9lZGdlOiBub2RlIGluZGV4IMAbIGlzIG5vdCBhIG5vZGUgaW4gdGhlIGdyYXBoACRBdHRlbXB0ZWQgdG8gcmVtb3ZlIHVucmVzb2x2ZWQgbm9kZSDADyBmcm9tIHRoZSBncmFwaAAGTm9kZSAiwAsiIG5vdCBmb3VuZAAGY2xhc3MgwA4gaXMtdW5yZXNvbHZlZAALUGVyZkxvZ2dlciDAEyBpcyBhbHJlYWR5IHN0b3BwZWQACkVkZ2VJbmRleCjAASkACk5vZGVJbmRleCjAASkACEpzVmFsdWUowAEpAMAHICgxIDw8IMABKQAGY2xhc3MgwA8gaW50ZXJuYWwtbGluawoABmNsYXNzIMAQIEJDLWFjdGl2ZS1ub2RlCgAEICAgIMACKCLAAyIpCgAEICAgIMABIMACfCLAAyJ8IMABCgAEICAgIMABIMABIMABCgAAAAALDBAAEwAAAG4AAAAUAAAACwwQABMAAAArAAAALQAAAFRoZXJlIGFscmVhZHkgZXhpc3RzIGEgcmVzb2x2ZWQgbm9kZSB3aXRoIHRoZSBzYW1lIG5hbWUuZmFpbGVkIHRvIGRlbGV0ZSBlZGdlLCBzb3VyY2Ugbm9kZSBub3QgZm91bmRmYWlsZWQgdG8gZGVsZXRlIGVkZ2UsIHRhcmdldCBub2RlIG5vdCBmb3VuZGZhaWxlZCB0byBkZWxldGUgZWRnZSwgZWRnZSBub3QgZm91bmRmYWlsZWQgdG8gcmVtb3ZlIG5vZGUsIG5vZGUgbm90IGZvdW5kZmFpbGVkIHRvIHJlbmFtZSBub2RlLCBvbGQgbm9kZSBub3QgZm91bmQACwwQABMAAABbAAAAMAAAAAAAAAD//////////5gVEABBsKvAAAvdBEFwcGx5aW5nIFVwZGF0ZVJlbW92aW5nIGltcGxpZWQgZWRnZXNBcHBseWluZyB1cGRhdGVzUmVidWlsZGluZyBlZGdlIHR5cGUgdHJhY2tlclVwZGF0ZSBub3RpZmljYXRpb24gY2FsbGJhY2tmYWlsZWQgdG8gZ2V0IG5vZGUgd2VpZ2h0LCBub2RlIG5vdCBmb3VuZEJ1aWxkaW5nIEltcGxpZWQgRWRnZXNBcHBseWluZyBSdWxlcwAAHwwQAAwAAACRAQAAHAAAAB8MEAAMAAAAxAEAADwAAAALDBAAEwAAAJAAAAAWAAAABwAAAAwAAAAEAAAACAAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUAUBAQAA4AAABRAQAAPwAAAFAQEAAOAAAAWQEAAEQAAABQEBAADgAAAGMBAAA7AAAALS0+LS4tPi0tLS0uLSwgIHwgLFRyYXZlcnNhbCBleGNlZWRlZCBsaW1pdCBvZiAxMCwwMDAgbm9kZXMuIFRyeSBkZWNyZWFzaW5nIHRoZSBtYXggZGVwdGguAAASDxAAFAAAAD4BAABQAAAAAAAAAAQAAAAEAAAACQAAAE5vdGVHcmFwaEVycm9ybWVzc2FnZQAAAAoAAAAMAAAABAAAAAsAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlACILEAAVAAAAnQAAAE0AAAAiCxAAFQAAAJ0AAAAnAAAACgAAAAwAAAAEAAAADAAAAA0AAAAOAEGYsMAAC5MOAQAAAA8AAABhIERpc3BsYXkgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3IgdW5leHBlY3RlZGx5AEAMEABwAAAAZgsAAA4AAABFcnJvcgAAAAAAAAAEAAAABAAAAAkAAABOb3RlR3JhcGhFcnJvcm1lc3NhZ2VhdHRlbXB0ZWQgdG8gdGFrZSBvd25lcnNoaXAgb2YgUnVzdCB2YWx1ZSB3aGlsZSBpdCB3YXMgYm9ycm93ZWTBIACAYABFcnJvcgATAAAADAAAAAQAAAAUAAAAFQAAAA4AAAATAAAADAAAAAQAAAAWAAAAAAAAAAQAAAAEAAAACQAAAEdDRWRnZURhdGFzb3VyY2V0YXJnZXRlZGdlX3R5cGVlZGdlX3NvdXJjZQAAFwAAAAwAAAAEAAAAGAAAAAAAAAABAAAAAQAAABkAAAAAAAAABAAAAAQAAAAaAAAAR0NOb2RlRGF0YXBhdGhhbGlhc2VzcmVzb2x2ZWRpZ25vcmVfaW5fZWRnZXNpZ25vcmVfb3V0X2VkZ2VzAAAAAAAAAAABAAAAGwAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUAVRIQAF0AAACCCQAANgAAAFUSEABdAAAAhQkAADQAAABhdHRlbXB0ZWQgdG8gdGFrZSBvd25lcnNoaXAgb2YgUnVzdCB2YWx1ZSB3aGlsZSBpdCB3YXMgYm9ycm93ZWTBIACAYABsaW5rX2Rpc3BsYXlsaW5rX3BhdGh0YXJnZXRfcmVzb2x2ZWRleHBsaWNpdGVkZ2Vfc291cmNlYXR0cmlidXRlX2xhYmVsaGFzX2N1dF9vZl9jaGlsZHJlbkNhcGFjaXR5T3ZlcmZsb3cAAAAAAAAEAAAABAAAAB8AAABBbGxvY0VycmxheW91dAAAAAAAAAgAAAAEAAAAIAAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUA+BEQAFwAAABWAQAALgAAAGNhcGFjaXR5IG92ZXJmbG93AAAA+BEQAFwAAABFAQAANgAAAPgREABcAAAA0gQAAA4AAABpbmRleCBleGNlZWRzIGxlbmd0aPgREABcAAAAZAUAABEAAABhc3NlcnRpb24gZmFpbGVkOiBuZXdfY2FwID49IGxlbvgREABcAAAAnQQAAA0AAAAAAAAABAAAAAQAAAAhAAAAAAAAAAQAAAAEAAAAIgAAACMAAAAIAAAABAAAACQAAAAAAAAABAAAAAQAAAAlAAAARWRnZVN0cnVjdHNvdXJjZV9pbmRleHRhcmdldF9pbmRleGVkZ2VfaW5kZXhlZGdlX3R5cGVyZXZpc2lvbgAAACYAAAAYAAAABAAAACcAAAAAAAAABAAAAAQAAAAoAAAAKQAAAAwAAAAEAAAAKgAAAAAAAAAEAAAABAAAABoAAABUcmF2ZXJzYWxEYXRhZWRnZWRlcHRobnVtYmVyX29mX2NoaWxkcmVuY2hpbGRyZW4AAAAAAQAAAAEAAAArAAAAAAAAAAQAAAAEAAAALAAAAFRyYXZlcnNhbFJlc3VsdGRhdGFub2RlX2NvdW50bWF4X2RlcHRoaGl0X2RlcHRoX2xpbWl0dHJhdmVyc2FsX3RpbWUALQAAAAwAAAAEAAAALgAAAEZsYXRUcmF2ZXJzYWxEYXRhAAAALwAAAAwAAAAEAAAAMAAAAAAAAAAIAAAACAAAADEAAAAAAAAABAAAAAQAAAAyAAAAZW50cnlfbm9kZXMAzxwQAAQAAADTHBAACgAAAN0cEAAJAAAA5hwQAA8AAAD1HBAADgAAAFgdEAALAAAARmxhdFRyYXZlcnNhbFJlc3VsdGF0dGVtcHRlZCB0byB0YWtlIG93bmVyc2hpcCBvZiBSdXN0IHZhbHVlIHdoaWxlIGl0IHdhcyBib3Jyb3dlZERpcmVjdGVkU3RhYmxlR3JhcGgAAAAAAAAACAAAAAQAAAA3AAAAVHkAAAAAAAAEAAAABAAAADgAAABub2RlX2NvdW50ZWRnZV9jb3VudCwgAAAAAAAAFAAAAAQAAAA5AAAAZWRnZXMAAAAAAAAABAAAAAQAAAA6AAAAbm9kZSB3ZWlnaHRzAAAAAAQAAAAEAAAAOwAAAGVkZ2Ugd2VpZ2h0cwAAAAAEAAAABAAAACEAAABmcmVlX25vZGUAAAAAAAAABAAAAAQAAAAiAAAAZnJlZV9lZGdlAAAAJw8QAHMAAAB/BwAALQAAAEVkZ2Ugbm90IGZvdW5kU291cmNlIG5vZGUgbm90IGZvdW5kwSAAgGAAZmllbGRleHBsaWNpdHNvdXJjZWltcGxpZWRfa2luZHJvdW5kZmFsc2V0cnVlIC0+PC0AQbS+wAALmQEBAAAAPAAAAD0AAAA+AAAAT25jZSBpbnN0YW5jZSBoYXMgcHJldmlvdXNseSBiZWVuIHBvaXNvbmVkb25lLXRpbWUgaW5pdGlhbGl6YXRpb24gbWF5IG5vdCBiZSBwZXJmb3JtZWQgcmVjdXJzaXZlbHkAAGUNEABxAAAAnwAAADIAAAA/AAAADAAAAAQAAABAAAAAQQAAAA4AQdi/wAAL4xABAAAAQgAAAGEgRGlzcGxheSBpbXBsZW1lbnRhdGlvbiByZXR1cm5lZCBhbiBlcnJvciB1bmV4cGVjdGVkbHkAQAwQAHAAAABmCwAADgAAAEVycm9yAAAAQwAAAAgAAAAEAAAAJAAAAAAAAAABAAAAAQAAAEQAAAAAAAAABAAAAAQAAABFAAAARWRnZURhdGFlZGdlX3R5cGVlZGdlX3NvdXJjZScPEABzAAAAswEAABkAAAAnDxAAcwAAAAgCAAAqAAAAJw8QAHMAAAD5AQAAKQAAACcPEABzAAAAuAUAACoAAAAnDxAAcwAAAL8FAAAZAAAAJw8QAHMAAADCBQAAGQAAAAAAAAAEAAAABAAAACUAAABFZGdlU3RydWN0c291cmNlX2luZGV4dGFyZ2V0X2luZGV4ZWRnZV9pbmRleHJldmlzaW9uRgAAAAwAAAAEAAAARwAAAAAAAAABAAAAAQAAAEgAAAAAAAAABAAAAAQAAAAaAAAAbmFtZXBhdGhyb3VuZHNjYW5fbG9vcGNsb3NlX3JldmVyc2VkUCEQAAQAAABUIRAABAAAAGggEAAJAAAAWCEQAAYAAABeIRAACAAAAGYhEAAOAAAAVHJhbnNpdGl2ZUdyYXBoUnVsZWF0dGVtcHRlZCB0byB0YWtlIG93bmVyc2hpcCBvZiBSdXN0IHZhbHVlIHdoaWxlIGl0IHdhcyBib3Jyb3dlZAAALAwQABMAAAB2AAAASQAAACwMEAATAAAAdgAAAFUAAADBIACAYAAAAEsAAAAMAAAABAAAAEwAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlAK0LEAAVAAAAegAAADkAAACtCxAAFQAAAHkAAAAaAAAAAAAAAAQAAAAEAAAATQAAAAAAAAAEAAAABAAAAE4AAAAAAAAABAAAAAQAAABPAAAATGF5b3V0c2l6ZWFsaWduTm9uZQAAAAAABAAAAAQAAAAJAAAAU29tZQAAAAAEAAAABAAAAFAAAAAAAAAABAAAAAQAAABRAAAATm90ZUdyYXBoRXJyb3JtZXNzYWdlAAAASwAAAAwAAAAEAAAAUgAAAAAAAAAIAAAACAAAAFMAAAAAAAAABAAAAAQAAAAsAAAATWVybWFpZEdyYXBoRGF0YW1lcm1haWR0cmF2ZXJzYWxfdGltZXRvdGFsX3RpbWUAVAAAAAwAAAAEAAAAVQAAAAAAAAABAAAAAQAAAFYAAABXAAAADAAAAAQAAAAYAAAAWAAAABAAAAAEAAAAWQAAAFoAAAAIAAAABAAAAFsAAAAAAAAABAAAAAQAAAAaAAAAYWN0aXZlX25vZGVpbml0X2xpbmVjaGFydF90eXBlZGlyZWN0aW9uY29sbGFwc2Vfb3Bwb3NpbmdfZWRnZXNlZGdlX2xhYmVsX2F0dHJpYnV0ZXNlZGdlX3NvcnRlcm5vZGVfbGFiZWxfZm5saW5rX25vZGVzAAAAzCMQAAsAAADXIxAACQAAAOAjEAAKAAAA6iMQAAkAAADzIxAAFwAAAAokEAAVAAAAHyQQAAsAAAAqJBAADQAAADckEAAKAAAATWVybWFpZEdyYXBoT3B0aW9uc2F0dGVtcHRlZCB0byB0YWtlIG93bmVyc2hpcCBvZiBSdXN0IHZhbHVlIHdoaWxlIGl0IHdhcyBib3Jyb3dlZEhlbGxvLCBmcm9tIFdBU00hACwMEAATAAAAdgAAAEkAAAAsDBAAEwAAAHYAAABVAAAAQnVpbGRpbmcgR3JhcGjBIACAYABVBxAADAAAAEQAAAAgAAAAVQcQAAwAAABjAAAAGgAAAAoAAABiAAAADAAAAAQAAABjAAAAY2FsbGVkIGBSZXN1bHQ6OnVud3JhcCgpYCBvbiBhbiBgRXJyYCB2YWx1ZQCtCxAAFQAAAHoAAAA5AAAArQsQABUAAAB5AAAAGgAAAG1pZCA+IGxlbgAAABkFEACEAAAASgAAAB8AAAAZBRAAhAAAAEQAAAAXAAAAAAAAAAQAAAAEAAAACQAAAE5vdGVHcmFwaEVycm9ybWVzc2FnZQAAAFMJEABeAAAALgAAACMAAABTCRAAXgAAAE8BAAA4AAAATGF6eSBpbnN0YW5jZSBoYXMgcHJldmlvdXNseSBiZWVuIHBvaXNvbmVkAACaERAAXQAAABIDAAAZAAAAcmVlbnRyYW50IGluaXQAAJoREABdAAAAhAIAAA0AAAB8TxAAaAAAABAAAAAEAAAAaQAAAAAAAAAEAAAABAAAABoAAABUcmF2ZXJzYWxQb3N0cHJvY2Vzc09wdGlvbnNzb3J0ZXJmbGF0dGVuYXR0ZW1wdGVkIHRvIHRha2Ugb3duZXJzaGlwIG9mIFJ1c3QgdmFsdWUgd2hpbGUgaXQgd2FzIGJvcnJvd2VkAGoAAAAMAAAABAAAAGsAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlACwMEAATAAAAtQAAACsAAAAsDBAAEwAAALQAAAAOAAAALAwQABMAAADZAAAAJQAAACwMEAATAAAA2AAAAC8AAAAsDBAAEwAAANcAAAASAAAALAwQABMAAADVAAAAPAAAACwMEAATAAAA1QAAAB4AAAAsDBAAEwAAAMAAAAA6AAAALAwQABMAAADBAAAAOgAAACwMEAATAAAAvwAAADEAAAAsDBAAEwAAAL4AAAAxAAAALAwQABMAAAAMAQAALwAAACwMEAATAAAACwEAABIAAAAsDBAAEwAAAHMAAAANAAAAwSAAgGAAbG9uZ2VzdAAAAAAAAAD//////////zAoEABByNDAAAvrCU5vbmUAAAAABAAAAAQAAABRAAAAU29tZQAAAAAEAAAABAAAAGwAAAAAAAAABAAAAAQAAABtAAAAUGF0aGVkZ2VzAAAAAAAAAAQAAAAEAAAACQAAAE5vdGVHcmFwaEVycm9ybWVzc2FnZUJhc2VuYW1lRWRnZVR5cGVJbXBsaWVkTmVpZ2hib3VyAAAAbgAAAAwAAAAEAAAAbwAAAEVkZ2VTb3J0ZXJmaWVsZHJldmVyc2UAAAAAAAAEAAAABAAAAHAAAABQYXRoTGlzdHBhdGhzAAAAsgkQAHQAAAAJAgAANwAAAG5laWdoYm91ci1maWVsZDpJbnZhbGlkIHNvcnQgZmllbGQAACwMEAATAAAAIAAAABIAAABxAAAADAAAAAQAAAAYAAAAcgAAAAwAAAAEAAAAcwAAAAAAAAAEAAAABAAAAHQAAAAAAAAAAQAAAAEAAAB1AAAAAAAAAAQAAAAEAAAAdgAAAGVudHJ5X25vZGVzZWRnZV90eXBlc21heF9kZXB0aG1heF90cmF2ZXJzYWxfY291bnRzZXBhcmF0ZV9lZGdlc2RhdGF2aWV3X2Zyb21fcGF0aHMAALApEAALAAAAuykQAAoAAADFKRAACQAAAM4pEAATAAAA4SkQAA4AAADvKRAAEwAAAFRyYXZlcnNhbE9wdGlvbnNhcnJheSBjb250YWlucyBhIHZhbHVlIG9mIHRoZSB3cm9uZyB0eXBlRm9ybWF0OiB3YXMgYWxyZWFkeSBmb3JtYXR0ZWQgb25jZQAAoAYQAGMAAABGAAAAFQAAAKAGEABjAAAARAAAACkAAABhdHRlbXB0ZWQgdG8gdGFrZSBvd25lcnNoaXAgb2YgUnVzdCB2YWx1ZSB3aGlsZSBpdCB3YXMgYm9ycm93ZWQA5wUQAGYAAAA0AQAAFwAAACwMEAATAAAAdgAAAEkAAAAsDBAAEwAAAHYAAABVAAAAQBAQAA8AAAA8AAAAMwAAAMEgAIBgAENhbiBub3Qgb3ZlcnJpZGUgd2l0aCBkYXRhIGZvciBhbm90aGVyIG5vZGUuAABUDRAAEAAAADYAAAAJAAAAeQAAAAwAAAAEAAAAegAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUArQsQABUAAAB6AAAAOQAAAK0LEAAVAAAAeQAAABoAAAB5AAAADAAAAAQAAAB7AAAAfAAAAAwAAAAEAAAAGAAAAAAAAAABAAAAAQAAAH0AAAAAAAAABAAAAAQAAAAaAAAATm9kZURhdGFwYXRoYWxpYXNlc3Jlc29sdmVkaWdub3JlX2luX2VkZ2VzaWdub3JlX291dF9lZGdlcwAAAAAAAAQAAAAEAAAACQAAAE5vdGVHcmFwaEVycm9ybWVzc2FnZQAAAAAAAAAEAAAABAAAAAkAAABTCRAAXgAAAC4AAAAjAAAAUwkQAF4AAAAmAAAADwAAAEhhc2ggdGFibGUgY2FwYWNpdHkgb3ZlcmZsb3fXDRAAYQAAACUAAAAoAAAAYXR0ZW1wdGVkIHRvIHRha2Ugb3duZXJzaGlwIG9mIFJ1c3QgdmFsdWUgd2hpbGUgaXQgd2FzIGJvcnJvd2VkANIQEABrAAAAlQAAAA4AAADBIACAYAAAAP//////////KC0QAEHA2sAAC4kEQXR0ZW1wdGVkIHRvIGluaXRpYWxpemUgdGhyZWFkLWxvY2FsIHdoaWxlIGl0IGlzIGJlaW5nIGRyb3BwZWQAAMIHEACDAAAAawAAAA0AAAA4CxAAdAAAAN8BAAAZAAAAAAAAAAQAAAAEAAAACQAAAAAAAAAEAAAABAAAAIAAAAAAAAAABAAAAAQAAAA0AAAAAAAAAAQAAAAEAAAAgQAAAAAAAAAEAAAABAAAAH4AAAAAAAAABAAAAAQAAAB4AAAAAAAAAAQAAAAEAAAAZAAAAAAAAAAEAAAABAAAAE0AAAAAAAAABAAAAAQAAACCAAAAAAAAAAQAAAAEAAAAHQAAAAAAAAAEAAAABAAAADUAAABtaWQgPiBsZW4AAAAAAAAABAAAAAQAAACDAAAAT2JqZWN0b2JqAAAAAAAAAAQAAAAEAAAAhAAAAEZ1bmN0aW9ulAgQAG0AAACxAAAAFgAAAGF0dGVtcHQgdG8gam9pbiBpbnRvIGNvbGxlY3Rpb24gd2l0aCBsZW4gPiB1c2l6ZTo6TUFYAAAAlAgQAG0AAACaAAAACgAAAAAAAAAEAAAABAAAAG0AAABFZGdlTGlzdGVkZ2VzAAAAAAAAAAQAAAAEAAAAhQAAAEdyb3VwZWRFZGdlTGlzdAoKU3RhY2s6CgoAAACGAAAADAAAAAQAAACHAAAAiAAAAIkAQdTewAAL+QkBAAAAigAAAGEgRGlzcGxheSBpbXBsZW1lbnRhdGlvbiByZXR1cm5lZCBhbiBlcnJvciB1bmV4cGVjdGVkbHkAQAwQAHAAAABmCwAADgAAAEVycm9yQXR0ZW1wdGVkIHRvIGluaXRpYWxpemUgdGhyZWFkLWxvY2FsIHdoaWxlIGl0IGlzIGJlaW5nIGRyb3BwZWQAwgcQAIMAAABrAAAADQAAAGBQZXJmb3JtYW5jZWAgb2JqZWN0IG5vdCBmb3VuZAAAYgcQAF8AAAAiAAAADQAAAHJldHVybiB0aGlzTGF6eSBpbnN0YW5jZSBoYXMgcHJldmlvdXNseSBiZWVuIHBvaXNvbmVkAAAAmhEQAF0AAAASAwAAGQAAAHJlZW50cmFudCBpbml0AACaERAAXQAAAIQCAAANAAAAY2xvc3VyZSBpbnZva2VkIHJlY3Vyc2l2ZWx5IG9yIGFmdGVyIGJlaW5nIGRyb3BwZWRhcnJheSBjb250YWlucyBhIHZhbHVlIG9mIHRoZSB3cm9uZyB0eXBlTGF6eSBpbnN0YW5jZSBoYXMgcHJldmlvdXNseSBiZWVuIHBvaXNvbmVkmhEQAF0AAAASAwAAGQAAAHJlZW50cmFudCBpbml0AACaERAAXQAAAIQCAAANAAAAbnVsbCBwb2ludGVyIHBhc3NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZWN0ZWQgd2hpY2ggd291bGQgbGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdAAAPhEQAFsAAAAYAQAAIQAAAEhhc2ggdGFibGUgY2FwYWNpdHkgb3ZlcmZsb3dkDhAAYQAAACUAAAAoAAAAbV3L1ixQ62N4QaZXcRuLuZq47pFRFJZYz5YA6NKfEopGCBAATQAAAEkCAAAgAAAAwwsQAEcAAAAFAwAAJgAAAMMLEABHAAAAAwMAACwAAADDCxAARwAAAGgBAAANAAAAwwsQAEcAAAAMDAAAMAAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGWjAAAADAAAAAQAAACkAAAApQAAAKYAAAAAAAAACAAAAAQAAACnAAAAqAAAAKkAAACqAAAAqwAAABAAAAAEAAAArAAAAK0AAACuAAAArwAAAGNhbm5vdCBtb2RpZnkgdGhlIHBhbmljIGhvb2sgZnJvbSBhIHBhbmlja2luZyB0aHJlYWSxDBAATAAAAJAAAAAJAAAAbWlkID4gbGVucGFuaWNrZWQgYXQgOgpBY2Nlc3NFcnJvcgAAAAAAAAgAAAAEAAAAsAAAAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplID49IHNpemUgKyBtaW5fb3ZlcmhlYWQAAKcQEAAqAAAAsQQAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA8PSBzaXplICsgbWF4X292ZXJoZWFkAACnEBAAKgAAALcEAAANAAAAwwsQAEcAAADOAwAALwAAAMMLEABHAAAAxwMAAC8AAADDCxAARwAAALwDAAArAAAAwwsQAEcAAADSAwAAJwAAAKMAAAAMAAAABAAAALEAAABIYXNoIHRhYmxlIGNhcGFjaXR5IG92ZXJmbG93OQ4QACoAAAAlAAAAKAAAAEVycm9yAEHY6MAAC1kBAAAAsgAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUAXxAQAEcAAAApAQAAMQAAALMAAAAMAAAABAAAALQAAAC1AAAAtgBBvOnAAAuqAQEAAAC3AAAAYSBmb3JtYXR0aW5nIHRyYWl0IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yIHdoZW4gdGhlIHVuZGVybHlpbmcgc3RyZWFtIGRpZCBub3QAAJ4FEABIAAAAigIAAA4AAADvv71jYXBhY2l0eSBvdmVyZmxvd5sPEABQAAAAHAAAAAUAAABMYXlvdXRFcnJvcgICAgICAgICAgICAEGD68AACwgCAgAAAAAAAgBBuuvAAAsBAgBB4OvAAAsBAQBB++vAAAsBAQBB3OzAAAvoEnAABwAtAQEBAgECAQFICzAVEAFlBwIGAgIBBCMBHhtbCzoJCQEYBAEJAQMBBSsDOwkqGAEgNwEBAQQIBAEDBwoCHQE6AQEBAgQIAQkBCgIaAQICOQEEAgQCAgMDAR4CAwELAjkBBAUBAgQBFAIWBgEBOgEBAgEECAEHAwoCHgE7AQEBDAEJASgBAwE3AQEDBQMBBAcCCwIdAToBAgIBAQMDAQQHAgsCHAI5AgEBAgQIAQkBCgIdAUgBBAECAwEBCAFRAQIHDAhiAQIJCwdJAhsBAQEBATcOAQUBAgULASQJAWYEAQYBAgICGQIEAxAEDQECAgYBDwEAAwAEHAMdAh4CQAIBBwgBAgsJAS0DAQF1AiIBdgMEAgkBBgPbAgIBOgEBBwEBAQECCAYKAgEwLgIMFAQwCgQDJgkMAiAEAgY4AQECAwEBBTgIAgKYAwENAQcEAQYBAwLGQAABwyEAA40BYCAABmkCAAQBCiACUAIAAQMBBAEZAgUBlwIaEg0BJggZCwEBLAMwAQIEAgICASQBQwYCAgICDAEIAS8BMwEBAwICBQIBASoCCAHuAQIBBAEAAQAQEBAAAgAB4gGVBQADAQIFBCgDBAGlAgAEQQUAAk0GRgsxBHsBNg8pAQICCgMxBAICBwE9AyQFAQg+AQwCNAkBAQgEAgFfAwIEBgECAZ0BAwgVAjkCAQEBAQwBCQEOBwMFQwECBgEBAgEBAwQDAQEOAlUIAgMBARcBUQECBgEBAgEBAgEC6wECBAYCAQIbAlUIAgEBAmoBAQECCGUBAQECBAEFAAkBAvUBCgQEAZAEAgIEASAKKAYCBAgBCQYCAy4NAQLGAQEDAQHJBwEGAQFSFgIHAQIBAnoGAwEBAgEHAQFIAgMBAQEAAgsCNAUFAxcBAAEGDwAMAwMABTsHAAE/BFEBCwIAAgAuAhcABQMGCAgCBx4ElAMANwQyCAEOARYFAQ8ABwERAgcBAgEFZAGgBwABPQQABP4C8wECAQcCBQEAB20HAGCA8AAAAMYOEABLAAAAfgsAACYAAADGDhAASwAAAIcLAAAaAAAAZmFsc2V0cnVlMDAwMTAyMDMwNDA1MDYwNzA4MDkxMDExMTIxMzE0MTUxNjE3MTgxOTIwMjEyMjIzMjQyNTI2MjcyODI5MzAzMTMyMzMzNDM1MzYzNzM4Mzk0MDQxNDI0MzQ0NDU0NjQ3NDg0OTUwNTE1MjUzNTQ1NTU2NTc1ODU5NjA2MTYyNjM2NDY1NjY2NzY4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5Nzk4OTktMADWChAASwAAAFcCAAAFAAAALiswMTIzNDU2Nzg5YWJjZGVmMHgwMTIzNDU2Nzg5QUJDREVGLCAKLAooKAopLAAAAAAAAAwAAAAEAAAAwQAAAMIAAADDAAAAIHsgOiAgewp9IH17W2F0dGVtcHRlZCB0byBmb3JtYXQgYSBtYXAgdmFsdWUgYmVmb3JlIGl0cyBrZXkABAcQAFAAAAAlBAAADQAAAGF0dGVtcHRlZCB0byBmaW5pc2ggYSBtYXAgd2l0aCBhIHBhcnRpYWwgZW50cnkAAAQHEABQAAAAsQQAAA0AAABhdHRlbXB0ZWQgdG8gYmVnaW4gYSBuZXcgbWFwIGVudHJ5IHdpdGhvdXQgY29tcGxldGluZyB0aGUgcHJldmlvdXMgb25lAAAEBxAAUAAAANkDAAANAAAAXTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAACAAAAAQAAAC8AAAAxg4QAEsAAAAFCgAACQAAAGFzc2VydGlvbiBmYWlsZWQ6IG90aGVyID4gMGFzc2VydGlvbiBmYWlsZWQ6IG5vYm9ycm93AAAAhwoQAE4AAACEAQAAAQAAAGFzc2VydGlvbiBmYWlsZWQ6IGRpZ2l0cyA8IDQwYXNzZXJ0aW9uIGZhaWxlZDogcGFydHMubGVuKCkgPj0gNGFzc2VydGlvbiBmYWlsZWQ6IGJ1Zi5sZW4oKSA+PSBNQVhfU0lHX0RJR0lUU05hTmluZjAuYXNzZXJ0aW9uIGZhaWxlZDogIWJ1Zi5pc19lbXB0eSgpAAAA7A8QAFMAAAC3AAAABQAAAGFzc2VydGlvbiBmYWlsZWQ6IGJ1ZlswXSA+IGInMCcA7A8QAFMAAAC4AAAABQAAAOwPEABTAAAAuQAAAAUAAABhc3NlcnRpb24gZmFpbGVkOiBidWYubGVuKCkgPj0gbWF4bGVuAAAA7A8QAFMAAAB6AgAADQAAAN9FGj0DzxrmwfvM/gAAAADKxprHF/5wq9z71P4AAAAAT9y8vvyxd//2+9z+AAAAAAzWa0HvkVa+Efzk/gAAAAA8/H+QrR/QjSz87P4AAAAAg5pVMShcUdNG/PT+AAAAALXJpq2PrHGdYfz8/gAAAADLi+4jdyKc6nv8BP8AAAAAbVN4QJFJzK6W/Az/AAAAAFfOtl15EjyCsfwU/wAAAAA3VvtNNpQQwsv8HP8AAAAAT5hIOG/qlpDm/CT/AAAAAMc6giXLhXTXAP0s/wAAAAD0l7+Xzc+GoBv9NP8AAAAA5awqF5gKNO81/Tz/AAAAAI6yNSr7ZziyUP1E/wAAAAA7P8bS39TIhGv9TP8AAAAAus3TGidE3cWF/VT/AAAAAJbJJbvOn2uToP1c/wAAAACEpWJ9JGys27r9ZP8AAAAA9tpfDVhmq6PV/Wz/AAAAACbxw96T+OLz7/10/wAAAAC4gP+qqK21tQr+fP8AAAAAi0p8bAVfYocl/oT/AAAAAFMwwTRg/7zJP/6M/wAAAABVJrqRjIVOllr+lP8AAAAAvX4pcCR3+d90/pz/AAAAAI+45bifvd+mj/6k/wAAAACUfXSIz1+p+Kn+rP8AAAAAz5uoj5NwRLnE/rT/AAAAAGsVD7/48AiK3/68/wAAAAC2MTFlVSWwzfn+xP8AAAAArH970MbiP5kU/8z/AAAAAAY7KyrEEFzkLv/U/wAAAADTknNpmSQkqkn/3P8AAAAADsoAg/K1h/1j/+T/AAAAAOsaEZJkCOW8fv/s/wAAAADMiFBvCcy8jJn/9P8AAAAALGUZ4lgXt9Gz//z/AEHO/8AACwVAnM7/BABB3P/AAAvsDhCl1Ojo/wwAAAAAAAAAYqzF63itAwAUAAAAAACECZT4eDk/gR4AHAAAAAAAsxUHyXvOl8A4ACQAAAAAAHBc6nvOMn6PUwAsAAAAAABogOmrpDjS1W0ANAAAAAAARSKaFyYnT5+IADwAAAAAACf7xNQxomPtogBEAAAAAACorciMOGXesL0ATAAAAAAA22WrGo4Ix4PYAFQAAAAAAJodcUL5HV3E8gBcAAAAAABY5xumLGlNkg0BZAAAAAAA6o1wGmTuAdonAWwAAAAAAEp375qZo22iQgF0AAAAAACFa320e3gJ8lwBfAAAAAAAdxjdeaHkVLR3AYQAAAAAAMLFm1uShluGkgGMAAAAAAA9XZbIxVM1yKwBlAAAAAAAs6CX+ly0KpXHAZwAAAAAAONfoJm9n0be4QGkAAAAAAAljDnbNMKbpfwBrAAAAAAAXJ+Yo3KaxvYWArQAAAAAAM6+6VRTv9y3MQK8AAAAAADiQSLyF/P8iEwCxAAAAAAApXhc05vOIMxmAswAAAAAAN9TIXvzWhaYgQLUAAAAAAA6MB+X3LWg4psC3AAAAAAAlrPjXFPR2ai2AuQAAAAAADxEp6TZfJv70ALsAAAAAAAQRKSnTEx2u+sC9AAAAAAAGpxAtu+Oq4sGA/wAAAAAACyEV6YQ7x/QIAMEAQAAAAApMZHp5aQQmzsDDAEAAAAAnQycofubEOdVAxQBAAAAACn0O2LZICiscAMcAQAAAACFz6d6XktEgIsDJAEAAAAALd2sA0DkIb+lAywBAAAAAI//RF4vnGeOwAM0AQAAAABBuIycnRcz1NoDPAEAAAAAqRvjtJLbGZ71A0QBAAAAANl337puv5brDwRMAQAAAABaBBAAXgAAAO8CAAAmAAAAWgQQAF4AAADjAgAAJgAAAFoEEABeAAAAzAIAACYAAABhc3NlcnRpb24gZmFpbGVkOiBkLm1hbnQgPiAwWgQQAF4AAADcAQAABQAAAGFzc2VydGlvbiBmYWlsZWQ6IGQubWFudCA8ICgxIDw8IDYxKVoEEABeAAAA3QEAAAUAAABaBBAAXgAAAN4BAAAFAAAAWgQQAF4AAAB9AAAAFQAAAFoEEABeAAAAMwIAABEAAABaBBAAXgAAADYCAAAJAAAAWgQQAF4AAABsAgAACQAAAFoEEABeAAAAqQAAAAUAAABhc3NlcnRpb24gZmFpbGVkOiBkLm1pbnVzID4gMAAAAFoEEABeAAAAqgAAAAUAAABhc3NlcnRpb24gZmFpbGVkOiBkLnBsdXMgPiAwWgQQAF4AAACrAAAABQAAAFoEEABeAAAArgAAAAUAAABhc3NlcnRpb24gZmFpbGVkOiBkLm1hbnQgKyBkLnBsdXMgPCAoMSA8PCA2MSkAAABaBBAAXgAAAK8AAAAFAAAAWgQQAF4AAAAKAQAAEQAAAFoEEABeAAAADQEAAAkAAABaBBAAXgAAAEABAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogZC5tYW50LmNoZWNrZWRfc3ViKGQubWludXMpLmlzX3NvbWUoKQBaBBAAXgAAAK0AAAAFAAAAYXNzZXJ0aW9uIGZhaWxlZDogZC5tYW50LmNoZWNrZWRfYWRkKGQucGx1cykuaXNfc29tZSgpAABaBBAAXgAAAKwAAAAFAAAAJwoQAF8AAAALAQAABQAAACcKEABfAAAADAEAAAUAAAAnChAAXwAAAA0BAAAFAAAAJwoQAF8AAAByAQAAJAAAACcKEABfAAAAdwEAAC8AAAAnChAAXwAAAIQBAAASAAAAJwoQAF8AAABmAQAADQAAACcKEABfAAAATAEAACIAAAAnChAAXwAAAA8BAAAFAAAAJwoQAF8AAAAOAQAABQAAACcKEABfAAAAdgAAAAUAAAAnChAAXwAAAHcAAAAFAAAAJwoQAF8AAAB4AAAABQAAACcKEABfAAAAewAAAAUAAAAnChAAXwAAAMIAAAAJAAAAJwoQAF8AAAD7AAAADQAAACcKEABfAAAAAgEAABIAAAAnChAAXwAAAHoAAAAFAAAAJwoQAF8AAAB5AAAABQAAAAEAAAAKAAAAZAAAAOgDAAAQJwAAoIYBAEBCDwCAlpgAAOH1BQDKmjvBb/KGIwAAAIHvrIVbQW0t7gQAAAEfar9k7Thu7Zen2vT5P+kDTxgAAT6VLgmZ3wP9OBUPL+R0I+z1z9MI3ATE2rDNvBl/M6YDJh/pTgIAAAF8Lphbh9O+cp/Z2IcvFRLGUN5rcG5Kzw/YldVucbImsGbGrSQ2FR1a00I8DlT/Y8BzVcwX7/ll8ii8VffH3IDc7W70zu/cX/dTBQBOBhAAUQAAAC4AAAAJAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYqPwQALMwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMDAwMDAwMDAwMDAwMDAwMEBAQEBABByI/BAAuxD1suLi5ddXNlci1wcm92aWRlZCBjb21wYXJpc29uIGZ1bmN0aW9uIGRvZXMgbm90IGNvcnJlY3RseSBpbXBsZW1lbnQgYSB0b3RhbCBvcmRlcgAAALkEEABfAAAAXAMAAAUAAAACCRAAUAAAAKAAAAAJAAAAAgkQAFAAAACEAAAAHgAAAGNhbGxlZCBgT3B0aW9uOjp1bndyYXAoKWAgb24gYSBgTm9uZWAgdmFsdWUAAAMAAIMEIACRBWAAXROgABIXIB8MIGAf7yxgKyow4CtvpqAsAqggLR77IC4A/mA2nv+gNv0BITcBCmE3JA0hOKsOoTkvGCE68x4hS0A0oVMeYeFU8GphVU9v4VWdvGFWAM9hV2XRoVcA2iFYAOChWa7iIVvs5OFc0OhhXSAA7l7wAX9fAAYBAQMBBAIFBwcCCAgJAgoFCwIOBBABEQISBRMcFAEVAhcCGQ0cBR0IHwEkAWoEawJuAq8DsQK8As8C0QLUDNUJ1gLXAtoB4AXhAuYB5wToAu4g8AT4AvoF+wEMJzs+Tk+Pnp6fe4uTlqKyuoaxBgcJNj0+VvPQ0QQUGDY3Vld/qq6vvTXgEoeJjp4EDQ4REikxNDpFRklKTk9kZYqMjY+2wcPExsvWXLa3GxwHCAoLFBc2OTqoqdjZCTeQkagHCjs+ZmmPkhFvX7/u71piubr0/P9TVJqbLi8nKFWdoKGjpKeorbq8xAYLDBUdOj9FUaanzM2gBxkaIiU+P9/n7O//xcYEICMlJigzODpISkxQU1VWWFpcXmBjZWZrc3h9f4qkqq+wwNCur25vx93ek14iewUDBC0DZgMBLy6Agh0DMQ8cBCQJHgUrBUQEDiqAqgYkBCQEKAg0C04DNAyBNwkWCggYO0U5A2MICTAWBSEDGwUbJjgESwUvBAoHCQdAICcEDAk2AzoFGgcEDAdQSTczDTMHLggKBiYDHQgCgNBSEAYICSEuCCoWGiYcFBcJTgQkCUQNGQcKBkgIJwl1C0I+KgY7BQoGUQYBBRADBQtZCAIdYh5ICAqApl4iRQsKBg0TOgYKBhQcLAQXgLk8ZFMMSAkKRkUbSAhTDUkHClYIWCIOCgZGCh0DR0k3Aw4ICgY5BwoGLAQKgPYZBzsDHVUBDzINg5tmdQuAxIpMYw2EMBAWCo+bBYJHmrk6hsaCOQcqBFwGJgpGCigFE4GwOoDGWwU0LEsEOQcRQAULBwmc1ikgYXOh/YEzDwEdBg4ECIGMiQRrBQ0DCQcQj2CA/QOBtAYXDxEPRwl0PID2CnMIcBVGehQMFAxXCRmAh4FHA4VCDxWEUB8GBoDVKwU+IQFwLQMaBAKBQB8ROgUBgdAqgNYrBAGAwDYIAoDggPcpTAQKBAKDEURMPYDCPAYBBFUFGzQCgQ4sBGQMVgqArjgdDSwECQcCDgaAmoPZAxEDDQOA2gYMBAEPDAQ4CAoGKAgsBAIOCSeBWAgdAwsDOwQeBAoHgPuEBQABAwUFBgYCBwYIBwkRChwLGQwZDRAODA8EEAMSEhMJFgEXBBgBGQMaCRsBHAIfFiADKwItCy4BMAQxAjIBqQKqBKsI+gL7Bf4D/wmteHmLjaIwV1iLjJAc3Q4PS0z7/C4vP1xdX+KEjY6RkqmxurvFxsnK3uTl/wAEERIpMTQ3Ojs9SUpdhI6SqbG0urvGys7P5OUABA0OERIpMTQ6O0VGSUpeZGWEkZudyc7PDREpOjtFSVdbXl9kZY2RqbS6u8XJ3+Tl8A0RRUlkZYCEsry+v9XX8PGDhYukpr6/xcfP2ttImL3Nxs7PSU5PV1leX4mOj7G2t7/BxsfXERYXW1z29/7/gG1x3t8OH25vHB1ffX6ur97fTbu8FhceH0ZHTk9YWlxefn+1xdTV3PDx9XJzj3R1Ji4vp6+3v8fP19+aAECXmDCPH87/Tk9aWwcIDxAnL+7vbm83PT9CRVNndcjJ0NHY2ef+/wAgXyKC3wSCRAgbBAYRgawOgKsFIAeBHAMZCAEELwQ0BAcDAQcGBxEKUA8SB1UHAwQcCgkDCAMHAwIDAwMMBAUDCwYBDhUFTgcbB1cHAgUYDFAEQwMtAwEEEQYPDDoEHSVfIG0EaiWAyAWCsAMaBoL9A1kHFgkYCRQMFAxqBgoGGgZZBysFRgosBAwEAQMxCywEGgYLA4CsBgoGTBSA9Ag8Aw8DPgU4CCsFgv8RGAgvES0DIg4hD4CMBIKaFgsViJQFLwU7BwIOGAmAviJ0DIDWGoEQBYDhCfKeAzcJgVwUgLgIgN0UPAMKBjgIRggMBnQLHgNaBFkJgIMYHAoWCUwEgIoGq6QMFwQxoQSB2iYHDAUFgrMgKgZMBICNBIC+AxsDDw3+DBAAVQAAAAoAAAArAAAA/gwQAFUAAAAaAAAANgAAAGF0dGVtcHQgdG8gZGl2aWRlIGJ5IHplcm8AAAAAAAAABAAAAAQAAADEAAAAAAAAAAQAAAAEAAAAxQAAAD09IT1tYXRjaGVzAAwEEABNAAAAiwAAACMAAAACXHjDIAAAaQIAAAAMBBAATQAAAIQAAAArAAAALi5SZWZDZWxsIGFscmVhZHkgYm9ycm93ZWQgICAgAAAMTxAADk8QABBPEAACAAAAAgAAAAcAQYSfwQALNWEAAAACAAAAAAAAAJcAAAACAAAAAAAAAJgAAAACAAAAAAAAAJkAAAACAAAAAAAAAJoAAACbAEHUn8EACwGcAHwJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJvY2Vzc2VkLWJ5AwVydXN0Yx0xLjk0LjEgKGU0MDg5NDdiZiAyMDI2LTAzLTI1KQZ3YWxydXMGMC4yMy4zDHdhc20tYmluZGdlbhMwLjIuMTAwICgyNDA1ZWMyYjQpAGsPdGFyZ2V0X2ZlYXR1cmVzBisPbXV0YWJsZS1nbG9iYWxzKxNub250cmFwcGluZy1mcHRvaW50KwtidWxrLW1lbW9yeSsIc2lnbi1leHQrD3JlZmVyZW5jZS10eXBlcysKbXVsdGl2YWx1ZQ==");var xd=class{constructor(e){this.plugin=e}get fields(){return this.plugin.settings.edge_fields}get field_groups(){return this.plugin.settings.edge_field_groups}async refresh(){await this.plugin.rebuildGraph()}create_list_index(e,r){if(e??(e=lo(xt)?.path),!e)throw new Error("No active file");return xA(this.plugin.graph,e,this.plugin.settings,Object.assign({...oi},r))}get_neighbours(e){return e??(e=lo(xt)?.path),e&&this.plugin.graph.has_node(e)?this.plugin.graph.get_outgoing_edges(e):void 0}};var P6=require("obsidian");var eD=q('

Breadcrumbs Codeblock Errors

The codeblock YAML has errors in the following keys/properties:


See the codeblock docs for more info

Version:

',1);function en(t,e){ae(e,!0);let r=e.errors.map(s=>`- **\`${s.path}\`**: ${s.message}`).join(` `);var o=J(),a=K(o);{var n=s=>{var i=eD(),l=S(K(i),4),u=w(l);eA(u,{get plugin(){return e.plugin},get markdown(){return r}}),b(l);var A=S(l,6),c=S(w(A)),p=w(c,!0);b(c),b(A),oe(()=>Fe(p,e.plugin.manifest.version)),v(s,i)};se(a,s=>{e.errors.length&&s(n)})}v(t,o),ne()}var tD=(t,e,r,o)=>{te(e,!0),bv(typeof r.text=="string"?r.text:r.text(),o()),setTimeout(()=>te(e,!1),2500)},rD=q("");function Us(t,e){ae(e,!0);let r=U(e,"cls",3,""),o=U(e,"aria_label",3,"Copy to Clipboard"),a=U(e,"options",19,()=>({})),n=We(!1);var s=rD();s.__click=[tD,n,e,a];var i=w(s);{var l=A=>{Lu(A,{get size(){return 20}})},u=A=>{xs(A,{get size(){return 20}})};se(i,A=>{d(n)?A(l):A(u,!1)})}b(s),oe(()=>{ut(s,1,mr(r())),Xe(s,"aria-label",d(n)?"Copied!":o())}),v(t,s),ne()}Ke(["click"]);var oD=q('

'),aD=q('
'),nD=q('

'),sD=q('

No paths found.

'),iD=q('
');function Um(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=po(e.options.sort.field,e.options.sort.order===-1),{show_node_options:s}=e.plugin.settings.views.codeblocks,i=5,l=We(void 0),u=We(void 0),A=de(a);function c(){var E;let D=e.options.depth[1]===1/0?i:(E=e.options.depth[1])!==null&&E!==void 0?E:i,k=e.options["start-note"]||e.file_path||(d(A)===null||d(A)===void 0?void 0:d(A).path)||"";if(!e.plugin.graph.has_node(k)){te(l,void 0),te(u,"The file does not exist in the graph.");return}let C=new Nt([k],e.options.fields,D,100,!e.options["merge-fields"],e.options["dataview-from-paths"]),P=new co(n,e.options.flat);try{te(l,e.plugin.graph.rec_traverse_and_process(C,P),!0),te(u,void 0)}catch(le){H.error("Error updating codeblock tree",le),te(l,void 0),le instanceof $a?te(u,le.message,!0):te(u,"An error occurred while updating the codeblock tree. Check the console for more information (Ctrl + Shift + I).")}}let p=de(()=>{var E;if(d(l)){let D=hr(e.plugin.settings,s),k=e.plugin.graph.get_node(e.file_path);return"# "+nn.ify(e.file_path,D.stringify_node(k),{link_kind:e.plugin.settings.commands.list_index.default_options.link_kind})+` `+vl(e.plugin.graph,d(l),e.plugin.settings,Object.assign(Object.assign({},e.plugin.settings.commands.list_index.default_options),{show_node_options:s,show_attributes:(E=e.options["show-attributes"])!==null&&E!==void 0?E:[]}))}else return""});hs(()=>{c()});var m=iD(),h=w(m);en(h,{get plugin(){return e.plugin},get errors(){return e.errors}});var y=S(h,2);{var I=E=>{var D=oD(),k=w(D,!0);b(D),oe(()=>Fe(k,e.options.title)),v(E,D)};se(y,E=>{e.options.title&&E(I)})}var F=S(y,2);{var R=E=>{var D=aD(),k=w(D),C=w(k);Us(C,{get text(){return d(p)},cls:"clickable-icon nav-action-button"}),b(k);var P=S(k,2);Rs(P,{get code(){return d(p)},get plugin(){return e.plugin},get source_path(){return e.file_path},type:"markmap"}),b(D),v(E,D)},B=E=>{var D=J(),k=K(D);{var C=le=>{var xe=nD(),fe=w(xe,!0);b(xe),oe(()=>Fe(fe,d(u))),v(le,xe)},P=le=>{var xe=sD();v(le,xe)};se(k,le=>{d(u)?le(C):le(P,!1)},!0)}v(E,D)};se(F,E=>{d(p)?E(R):E(B,!1)})}b(m),v(t,m);var j=ne({update:c});return o(),j}var lD=q('

'),uD=(t,e)=>{window.open(yo.to_image_link(d(e)),"_blank")},AD=(t,e)=>{window.open(yo.to_live_edit_link(d(e)),"_blank")},fD=q('
'),dD=q('

'),cD=q('

No paths found.

'),pD=q('
');function zm(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=10,s=We(""),i=We(void 0),l=de(a);function u(){var R,B,j;let E=e.options.depth[1]===1/0?n:(R=e.options.depth[1])!==null&&R!==void 0?R:n,D=e.options["start-note"]||e.file_path||(d(l)===null||d(l)===void 0?void 0:d(l).path)||"";if(!e.plugin.graph.has_node(D)){te(s,""),te(i,"The file does not exist in the graph.");return}let k=new Nt([e.file_path],e.options.fields,E,100,!e.options["merge-fields"],e.options["dataview-from-paths"]),C=S_({curve:e.options["mermaid-curve"],defaultRenderer:e.options["mermaid-renderer"]}),P=po(e.options.sort.field,e.options.sort.order===-1),le=new Hn(e.file_path,`%%{ init: { "flowchart": ${JSON.stringify(C)} } }%%`,"graph",(B=e.options["mermaid-direction"])!==null&&B!==void 0?B:"LR",!0,(j=e.options["show-attributes"])!==null&&j!==void 0?j:[],P,xe=>{let fe=xe.path,He=e.plugin.app.vault.getFileByPath(fe);return He?e.plugin.app.fileManager.generateMarkdownLink(He,e.file_path).slice(2,-2):mt.drop_ext(nn.resolve_to_absolute_path(e.plugin.app,fe,e.file_path))},!0);try{te(s,e.plugin.graph.generate_mermaid_graph(k,le).mermaid,!0),te(i,void 0)}catch(xe){H.error("Error generating mermaid graph",xe),te(s,""),xe instanceof $a?te(i,xe.message,!0):te(i,"An error occurred while updating the codeblock tree. Check the console for more information (Ctrl + Shift + I).")}te(s,d(s),!0)}hs(()=>{u()});var A=pD(),c=w(A);en(c,{get plugin(){return e.plugin},get errors(){return e.errors}});var p=S(c,2);{var m=R=>{var B=lD(),j=w(B,!0);b(B),oe(()=>Fe(j,e.options.title)),v(R,B)};se(p,R=>{e.options.title&&R(m)})}var h=S(p,2);{var y=R=>{var B=fD(),j=w(B),E=w(j);Us(E,{get text(){return d(s)},cls:"clickable-icon nav-action-button"});var D=S(E,2);D.__click=[uD,s];var k=w(D);Hu(k,{get size(){return 20}}),b(D);var C=S(D,2);C.__click=[AD,s];var P=w(C);Wu(P,{get size(){return 20}}),b(C),b(j);var le=S(j,2);Rs(le,{get code(){return d(s)},get plugin(){return e.plugin},get source_path(){return e.file_path},type:"mermaid"}),b(B),v(R,B)},I=R=>{var B=J(),j=K(B);{var E=k=>{var C=dD(),P=w(C,!0);b(C),oe(()=>Fe(P,d(i))),v(k,C)},D=k=>{var C=cD();v(k,C)};se(j,k=>{d(i)?k(E):k(D,!1)},!0)}v(R,B)};se(h,R=>{d(s)?R(y):R(I,!1)})}b(A),v(t,A);var F=ne({update:u});return o(),F}Ke(["click"]);var mD=q('
'),_D=q('
'),hD=q('
Traversal limit reached...
'),gD=q('
');function zs(t,e){ae(e,!0);let r=U(e,"open_signal",15),o=We(kt(Array(e.items.length).fill(!0)));jt(()=>{r()===!0?(te(o,Array(e.items.length).fill(!0),!0),r(null)):r()===!1&&(te(o,Array(e.items.length).fill(!1),!0),r(null))});var a=J(),n=K(a);ot(n,17,()=>e.items,lt,(s,i,l)=>{let u=de(()=>e.data.children_at_index(d(i))),A=de(()=>e.data.rendering_obj_at_index(d(i),e.plugin.graph,e.node_stringify_options,e.show_attributes??[]));var c=J(),p=K(c);{var m=h=>{let y=de(()=>d(A).explicit?"BC-edge BC-edge-explicit":`BC-edge BC-edge-implied BC-edge-implied-${d(A).edge_source}`);var I=gD(),F=w(I),R=w(F);{var B=fe=>{var He=mD(),G=w(He);Ps(G,{get open(){return d(o)[l]}}),b(He),v(fe,He)};se(R,fe=>{(d(u).length||d(A).has_cut_of_children)&&fe(B)})}var j=S(R,2),E=w(j);tA(E,{get plugin(){return e.plugin},get display(){return d(A).link_display},get path(){return d(A).link_path},get resolved(){return d(A).target_resolved},get cls(){return`tree-item-inner-text BC-edge ${d(y)??""}`}}),b(j);var D=S(j,2);{var k=fe=>{iA(fe,{get label(){return d(A).attribute_label}})};se(D,fe=>{e.show_attributes?.length&&fe(k)})}b(F);var C=S(F,2);{var P=fe=>{var He=_D(),G=w(He);zs(G,{get plugin(){return e.plugin},get show_attributes(){return e.show_attributes},get node_stringify_options(){return e.node_stringify_options},get data(){return e.data},get open_signal(){return r()},get items(){return d(u)}}),b(He),v(fe,He)};se(C,fe=>{d(u).length&&d(o)[l]&&fe(P)})}var le=S(C,2);{var xe=fe=>{var He=hD();v(fe,He)};se(le,fe=>{d(A).has_cut_of_children&&d(o)[l]&&fe(xe)})}b(I),js("open","toggle",I,fe=>d(o)[l]=fe,()=>d(o)[l]),v(h,I)};se(p,h=>{d(u)&&d(A)&&h(m)})}v(s,c)}),v(t,a),ne()}var zK=require("console"),jD=q('

'),xD=q('
'),vD=q('

'),kD=q('

No paths found.

'),bD=q('
');function Wm(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=po(e.options.sort.field,e.options.sort.order===-1),s=hr(e.plugin.settings,e.plugin.settings.views.codeblocks.show_node_options),i=5,l=We(void 0),u=We(void 0),A=de(a);function c(){var j;let E=e.options.depth[1]===1/0?i:(j=e.options.depth[1])!==null&&j!==void 0?j:i,D=e.options["start-note"]||e.file_path||(d(A)===null||d(A)===void 0?void 0:d(A).path)||"";if(!e.plugin.graph.has_node(D)){te(l,void 0),te(u,"The file does not exist in the graph.");return}let k=new Nt([D],e.options.fields,E,100,!e.options["merge-fields"],e.options["dataview-from-paths"]),C=new co(n,e.options.flat);try{te(l,e.plugin.graph.rec_traverse_and_process(k,C),!0),te(u,void 0)}catch(P){H.error("Error updating codeblock tree",P),te(l,void 0),P instanceof $a?te(u,P.message,!0):te(u,"An error occurred while updating the codeblock tree. Check the console for more information (Ctrl + Shift + I).")}}hs(()=>{let j=new Tr;c(),H.debug(j.elapsedMessage("CodeblockTree initial traversal"))});var p=bD(),m=w(p);en(m,{get plugin(){return e.plugin},get errors(){return e.errors}});var h=S(m,2);{var y=j=>{var E=jD(),D=w(E,!0);b(E),oe(()=>Fe(D,e.options.title)),v(j,E)};se(h,j=>{e.options.title&&j(y)})}var I=S(h,2);{var F=j=>{var E=xD(),D=w(E),k=w(D);Us(k,{cls:"clickable-icon nav-action-button",text:()=>vl(e.plugin.graph,d(l),e.plugin.settings,{...e.plugin.settings.commands.list_index.default_options,show_attributes:e.options["show-attributes"]??[]})}),b(D);var C=S(D,2),P=w(C);{let le=de(()=>!e.options.collapse);zs(P,{get plugin(){return e.plugin},get node_stringify_options(){return s},get data(){return d(l)},get items(){return d(l).entry_nodes},get open_signal(){return d(le)},get show_attributes(){return e.options["show-attributes"]}})}b(C),b(E),v(j,E)},R=j=>{var E=J(),D=K(E);{var k=P=>{var le=vD(),xe=w(le,!0);b(le),oe(()=>Fe(xe,d(u))),v(P,le)},C=P=>{var le=kD();v(P,le)};se(D,P=>{d(u)?P(k):P(C,!1)},!0)}v(j,E)};se(I,j=>{d(l)&&!d(l).is_empty()?j(F):j(R,!1)})}b(p),v(t,p);var B=ne({update:c});return o(),B}var q6=require("obsidian");var wD=["type","title","start-note","fields","field-groups","depth","flat","collapse","merge-fields","dataview-from","content","sort","field-prefix","show-attributes","mermaid-direction","mermaid-renderer","mermaid-curve"],Km=[!0,!1],yD=(t,e)=>{let r=e.edge_fields.map(a=>a.label),o=e.field_groups.map(a=>a.label);return Qe.object({title:Qe.string({message:Ht.error.not_string("title",t.title)}).optional(),"start-note":Qe.string({message:Ht.error.not_string("start-note",t["start-note"])}).optional(),"dataview-from":Qe.string({message:Ht.error.not_string("dataview-from",t["dataview-from"])}).optional(),flat:Qe.boolean({message:Ht.error.invalid_enum("flat",Km,t.flat)}).default(!1),collapse:Qe.boolean({message:Ht.error.invalid_enum("collapse",Km,t.collapse)}).default(!1),"merge-fields":Qe.boolean({message:Ht.error.invalid_enum("merge-fields",Km,t["merge-fields"])}).default(!0),content:Qe.enum(["open","closed"],{message:Ht.error.invalid_enum("content",["open","closed"],t.content)}).optional(),type:Qe.enum(["tree","mermaid","markmap"],{message:Ht.error.invalid_enum("type",["tree","mermaid","markmap"],t.type)}).default("tree"),"mermaid-renderer":Qe.enum(yo.RENDERERS,{message:Ht.error.invalid_enum("mermaid-renderer",yo.RENDERERS,t["mermaid-renderer"])}).optional(),"mermaid-direction":Qe.enum(yo.DIRECTIONS,{message:Ht.error.invalid_enum("mermaid-direction",yo.DIRECTIONS,t["mermaid-direction"])}).optional(),"mermaid-curve":Qe.enum(yo.CURVE_STYLES,{message:Ht.error.invalid_enum("mermaid-curve",yo.CURVE_STYLES,t["mermaid-curve"])}).optional(),"show-attributes":Qe.array(Qe.enum(xl),{message:Ht.error.not_array("show-attributes",xl,t["show-attributes"])}).optional(),fields:Ht.schema.dynamic_enum_array("fields",r,t.fields).optional(),"field-groups":Ht.schema.dynamic_enum_array("field-groups",o,t["field-groups"]).optional(),depth:Qe.array(Qe.number({invalid_type_error:`Expected a number, but got: \`${t.depth}\` (${typeof t.depth}). _Try using a number (integer)._ **Example**: \`depth: [0]\`, or \`depth: [0, 3]\``}).min(0,`Minimum depth cannot be less than \`0\`, but got: \`${t.depth}\` _Try using a non-negative number (greater than or equal to zero \`0\`)._ @@ -97,9 +97,9 @@ grid-template-columns: ${i??""};`),[()=>"1fr ".repeat(o.at(0)?.length??0)]),v(t, You can use \`app.plugins.plugins.dataview.api.pages("")\` to test your query in the console (press \`Ctrl + Shift + I\` to open the console).`})}return{options:e,file_path:a}}var Zm={parse_source:ED,postprocess_options:ID};var kd=class extends P6.MarkdownRenderChild{constructor(e,r,o,a){super(r),this.plugin=e,this.source=o,this.file_path=a,this.id=window.crypto.randomUUID()}update(){if(H.debug("CodeblockMDRC.update"),this.component)try{this.component.update()}catch(e){H.error("CodeblockMDRC.update error >",e)}}onload(){let e=new Tr;H.debug("CodeblockMDRC.load"),this.containerEl.empty();let r=new Tr,{parsed:o,errors:a}=Zm.parse_source(this.source,{edge_fields:this.plugin.settings.edge_fields,field_groups:this.plugin.settings.edge_field_groups});if(H.debug(r.elapsedMessage("Codeblocks.parse_source",!0)),!o){H.warn("fatal codeblock errors",a),Be(en,{target:this.containerEl,props:{errors:a,plugin:this.plugin}});return}let{options:n,file_path:s}=Zm.postprocess_options(this.file_path,o,a,this.plugin);H.debug("resolved codeblock options",n),H.debug(r.elapsedMessage("Codeblocks.postprocess_options",!0)),a.length&&H.warn("non-fatal codeblock errors",a),n.type==="tree"?this.component=Be(Wm,{target:this.containerEl,props:{errors:a,options:n,file_path:s,plugin:this.plugin}}):n.type==="mermaid"?this.component=Be(zm,{target:this.containerEl,props:{errors:a,options:n,file_path:s,plugin:this.plugin}}):n.type==="markmap"?this.component=Be(Um,{target:this.containerEl,props:{errors:a,options:n,file_path:s,plugin:this.plugin}}):H.error("CodeblockMDRC unknown type",n.type),H.debug(r.elapsedMessage("component creation",!0)),H.debug(e.elapsedMessage("CodeblockMDRC.onload")),this.registerEvent(this.plugin.events.on("graph-update",()=>{this.update()}))}onunload(){H.debug("CodeblockMDRC.unload"),this.component&&Yo(this.component)}};var ul=require("obsidian");var $D=q(''),DD=(t,e,r)=>e()(d(r)),FD=q('
');function Ym(t,e){ae(e,!0);let r=U(e,"label",3,""),o=U(e,"disabled_cb",3,c=>!1),a=U(e,"submit_cb",3,()=>{}),n=We("");var s=FD(),i=w(s);{var l=c=>{var p=$D(),m=w(p,!0);b(p),oe(()=>Fe(m,r())),v(c,p)};se(i,c=>{r()&&c(l)})}var u=S(i,2);io(u);var A=S(u,2);A.__click=[DD,a,n],b(s),oe(c=>A.disabled=c,[()=>o()(d(n))]),Sn(u,()=>d(n),c=>te(n,c)),v(t,s),ne()}Ke(["click"]);var Pn=require("obsidian");var bd=class extends Pn.Modal{constructor(r,o){super(r);this.active_file=lo(xt);this.plugin=o,this.options=o.settings.commands.list_index.default_options}onOpen(){if(!this.active_file){new Pn.Notice("No active file"),this.close();return}let{contentEl:r,plugin:o}=this;r.createEl("h2",{text:"Create List Index"}),Be(yr,{target:r,props:{field_group_labels:this.options.field_group_labels,edge_field_groups:o.settings.edge_field_groups,select_cb:a=>{this.options.field_group_labels=a,this.options.fields=Cr(o.settings.edge_field_groups,this.options.field_group_labels)}}}),pe(r,{name:"Link Kind",desc:"Format to use for links",select:{options:md,value:this.options.link_kind,cb:a=>void(this.options.link_kind=a)}}),pe(r,{name:"Indent",desc:"Indentation to use for each level",input:{value:this.options.indent,cb:a=>void(this.options.indent=a)}}),Be(Xa,{target:r,props:{edge_sort_id:this.options.edge_sort_id,select_cb:a=>{this.options.edge_sort_id=a}}}),Be(Qa,{target:r,props:{show_attributes:this.options.show_attributes,select_cb:a=>{this.options.show_attributes=a}}}),Hr(o,r,{get:()=>this.options.show_node_options,set:a=>this.options.show_node_options=a},{save_and_refresh:!1}),new Pn.Setting(r).addButton(a=>a.setButtonText("Build & Copy to Clipboard").setCta().onClick(async()=>{H.debug("build_list_index options",this.options);let n=xA(o.graph,this.active_file.path,o.settings,this.options);n?(await navigator.clipboard.writeText(n),new Pn.Notice("List index copied to clipboard")):new Pn.Notice("No list items to copy"),this.close()}))}onClose(){this.contentEl.empty()}};var R6=require("obsidian"),wd=class extends R6.Modal{constructor(e,r){super(e),this.cb=r}onOpen(){this.cb(this)}onClose(){this.contentEl.empty()}};var Ws=require("obsidian");function BD(t,e,r){let o=e.target_path(t.graph),a=t.app.vault.getFileByPath(o);return a?t.app.fileManager.generateMarkdownLink(a,e.source_path(t.graph),void 0,r?e.target_data(t.graph).aliases?.at(0):void 0):`[[${mt.drop_ext(o)}]]`}async function yd(t,e,r,o){if(!r.length)return;let a=o.included_fields?.flatMap(s=>t.settings.edge_field_groups.find(i=>i.label===s)?.fields??[])??[],n=Tv(ld(r,s=>s.edge_type),s=>s.map(i=>BD(t,i,o.use_alias??!1)));switch(o.destination){case"frontmatter":{let s=!1,i=t.app.metadataCache.getFileCache(e)?.frontmatter??{};Object.entries(n).forEach(([l,u])=>{if(!u?.length||a.length&&!a.includes(l))return;let A=i[l];if(A){let c=id(A),p=ma(c.concat(u));p.length!==c.length&&(s=!0,i[l]=p)}else s=!0,i[l]=u}),s&&await t.app.fileManager.processFrontMatter(e,l=>{let u=Object.assign(l,i);H.debug("drop_crumbs > processed frontmatter",u)});break}case"dataview-inline":{let s=Object.entries(n).map(([i,l])=>!l?.length||a.length&&!a.includes(i)?"":`${i}:: ${l.join(", ")}`).filter(Boolean);await t.app.vault.process(e,i=>(i+=` `+s.join(` -`),i));break}case"none":break}}async function Ed(t,e,r){let o=t.graph.get_outgoing_edges(e.path).get_edges().filter(a=>!a.is_self_loop()&&!a.explicit(t.graph));await yd(t,e,o,r)}async function L6(t,e){let r=[];new Ws.Notice("Freezing implied edges in the selected folder."),Ws.Vault.recurseChildren(e,o=>{if(o instanceof Ws.TFile){let a=Ed(t,o,t.settings.commands.freeze_implied_edges.default_options);r.push(a)}}),await Promise.all(r),new Ws.Notice("Finished freezing implied edges in folder.")}var G6=require("obsidian");async function H6(t,e){let r=lo(xt);if(!r)return;let o=t.graph.get_filtered_outgoing_edges(r.path,e.fields).get_edges().filter(a=>a.target_path(t.graph)!==r.path);if(o.length)await t.app.workspace.openLinkText(o[0].target_path(t.graph),r.path);else{new G6.Notice(`No matches found with attributes: ${e.fields.join(", ")}`);return}}function V6(t,e){let r={nodes:{resolved:{}},edges:{round:{},field:{},group:{},source:{},explicit:{},implied_kind:{}}};return t.iterate_nodes(o=>{let a=String(o.resolved);r.nodes.resolved[a]=(r.nodes.resolved[a]??0)+1}),t.iterate_edges(o=>{r.edges.field[o.edge_type]=(r.edges.field[o.edge_type]??0)+1,e.groups.forEach(n=>{n.fields.includes(o.edge_type)&&(r.edges.group[n.label]=(r.edges.group[n.label]??0)+1)});let a=String(o.explicit);if(r.edges.explicit[a]=(r.edges.explicit[a]??0)+1,o.explicit)r.edges.source[o.edge_source]=(r.edges.source[o.edge_source]??0)+1;else{r.edges.implied_kind[o.edge_source]=(r.edges.implied_kind[o.edge_source]??0)+1;let n=String(o.round);r.edges.round[n]=(r.edges.round[n]??0)+1}}),r}var ll=require("obsidian");async function U6(t,e,r){let o=t.app.workspace.getActiveViewOfType(ll.MarkdownView);if(!o)return new ll.Notice("No active markdown view");let a=o.file;if(!a)return new ll.Notice("No active file");let n={attr:{field:e},source:{path:a.path,basename:a.basename,folder:a.parent?.path??""}};H.info("thread > template_data",n);let s=mt.normalize(mt.ensure_ext(T_(r.target_path_template,n),"md"));H.debug("thread > target_path",s);let i=null;try{i=await t.app.vault.create(s,"")}catch(A){let c=`Error creating file "${s}". ${A instanceof Error?A.message:A}`;new ll.Notice(c),H.error("thread > create file error",c);return}let l=new zr;new ri(new vt(i.path,[],!0,!1,!1)).add_to_batch(l),new dA(new ct(a.path,i.path,e,"typed-link")).add_to_batch(l),t.graph.apply_update(l);let u=t.graph.get_outgoing_edges(a.path).get_edges().find(A=>A.edge_type===e&&A.target_path(t.graph)===i.path);u&&await Promise.all([yd(t,a,[u],r),o.leaf.openFile(i)])}function z6(t){t.addCommand({id:"breadcrumbs:rebuild-graph",name:"Rebuild graph",callback:async()=>await t.rebuildGraph()}),Object.keys(ea).forEach(e=>{t.addCommand({id:`breadcrumbs:open-${e}-view`,name:`Open ${e} view`,callback:()=>t.activateView(ea[e])})}),t.addCommand({id:"breadcrumbs:create-list-index",name:"Create list index",callback:()=>{new bd(t.app,t).open()}}),t.addCommand({id:"breadcrumbs:graph-stats",name:"Show/Copy graph stats",callback:async()=>{let e=V6(t.graph,{groups:t.settings.edge_field_groups});H.feat("Graph stats >",e),await navigator.clipboard.writeText(JSON.stringify(e,null,2)),new ul.Notice("Graph stats printed to console and copied to clipboard")}}),t.addCommand({id:"breadcrumbs:freeze-implied-edges-to-note",name:"Freeze implied edges to note",callback:async()=>{let e=lo(xt);e&&(await Ed(t,e,t.settings.commands.freeze_implied_edges.default_options),new ul.Notice("Implied edges frozen to note"))}}),t.addCommand({id:"breadcrumbs:freeze-implied-edges-to-vault",name:"Freeze implied edges to all notes in vault",callback:async()=>{if(!confirm("Are you sure you want to freeze implied edges to all notes in vault? This will write to all notes that have outgoing implied edges."))return new ul.Notice("Command cancelled");let e="FREEZE TO VAULT";new wd(t.app,r=>{Be(Ym,{target:r.contentEl,props:{label:`Type '${e}' to confirm`,disabled_cb:o=>o!==e,submit_cb:async o=>{if(o!==e)new ul.Notice("Command cancelled");else{let a=new Tr,n=new ul.Notice("Freezing implied edges to all notes in vault...");await Promise.all(t.app.vault.getMarkdownFiles().map(s=>Ed(t,s,t.settings.commands.freeze_implied_edges.default_options))),H.debug(`freeze-implied-edges-to-vault > took ${a.elapsed_str()}ms`),n.setMessage(`Implied edges frozen to all notes in ${a.elapsed_str()}ms`)}r.close()}}})}).open()}}),t.settings.edge_field_groups.forEach(e=>{t.addCommand({id:`breadcrumbs:jump-to-first-neighbour-group:${e.label}`,name:`Jump to first neighbour by group:${e.label}`,callback:()=>H6(t,{fields:e.fields})})}),t.settings.edge_fields.forEach(({label:e})=>{t.addCommand({id:`breadcrumbs:thread-field:${e}`,name:`Thread by field:${e}`,callback:()=>U6(t,e,t.settings.commands.thread.default_options)})})}var Id=["up","down","same","prev","next"];function SD(t){switch(t){case"up":return"down";case"down":return"up";case"same":return"same";case"next":return"prev";case"prev":return"next"}}function W6(t){let e=t;if(e.userHiers&&e.impliedRelations){let r={opposite_direction:{rounds:1},self_is_sibling:{rounds:Number(e.impliedRelations.siblingIdentity)},cousin_is_sibling:{rounds:Number(e.impliedRelations.cousinsIsSibling)},same_parent_is_sibling:{rounds:Number(e.impliedRelations.sameParentIsSibling)},same_sibling_is_sibling:{rounds:Number(e.impliedRelations.siblingsSiblingIsSibling)},siblings_parent_is_parent:{rounds:Number(e.impliedRelations.siblingsParentIsParent)},parents_sibling_is_parent:{rounds:Number(e.impliedRelations.parentsSiblingsIsParents)}};e.hierarchies=e.userHiers.map(o=>({dirs:Id.reduce((a,n)=>({...a,[n]:o[n]}),{}),implied_relationships:r})),delete e.userHiers,delete e.impliedRelations}if(e.hierarchies&&(Id.forEach(r=>{let o=e.hierarchies.flatMap(s=>s.dirs[r]).filter(Boolean),a=`${r}s`,n=t.edge_field_groups.find(s=>s.label===a);n?(n.fields.push(...o),n.fields=ma(n.fields)):t.edge_field_groups.push({label:a,fields:o})}),e.hierarchies.forEach(r=>{Object.values(r.dirs).flatMap(o=>o).filter(Boolean).forEach(o=>{t.edge_fields.find(a=>a.label===o)||t.edge_fields.push({label:o})}),Object.entries(r.implied_relationships).forEach(([o,{rounds:a}])=>{if(!a)return;let n={up:r.dirs.up[0],same:r.dirs.same[0],down:r.dirs.down[0],next:r.dirs.next[0],prev:r.dirs.prev[0]};switch(o){case"opposite_direction":{Id.forEach(s=>{let i=n[s],l=n[SD(s)];!i||!l||t.implied_relations.transitive.push({rounds:a,name:"",close_field:l,chain:[{field:i}],close_reversed:!0})});break}case"cousin_is_sibling":{if(!n.up||!n.same||!n.down)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.up},{field:n.same},{field:n.down}],close_reversed:!1,close_field:n.same});break}case"same_parent_is_sibling":{if(!n.up||!n.same||!n.down)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.up},{field:n.down}],close_reversed:!1,close_field:n.same});break}case"same_sibling_is_sibling":{if(!n.same)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.same},{field:n.same}],close_reversed:!1,close_field:n.same});break}case"siblings_parent_is_parent":{if(!n.up||!n.same)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.same},{field:n.up}],close_reversed:!1,close_field:n.up});break}case"parents_sibling_is_parent":{if(!n.up||!n.same)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.up},{field:n.same}],close_reversed:!1,close_field:n.up});break}}})}),delete e.hierarchies,t.edge_field_groups=Zu(t.edge_field_groups,r=>r.label)),e.custom_implied_relations&&(e.custom_implied_relations.transitive.forEach(r=>{t.implied_relations.transitive.push({...r,name:"",close_reversed:!1})}),delete e.custom_implied_relations),t.implied_relations.transitive=Zu(t.implied_relations.transitive,Qu),e.tagNoteField!==void 0&&(t.explicit_edge_sources.tag_note.default_field=e.tagNoteField,delete e.tagNoteField),e.hierarchyNotes!==void 0&&e.hierarchyNoteIsParent!==void 0&&e.HNUpField!==void 0){if(e.hierarchyNotes.length>0){let r=`DEPRECATED: The central Hierarchy Notes setting is deprecated in favour of the "${Ve["list-note-field"]}" field in each hierarchy note.`;H.warn(r)}delete e.HNUpField,delete e.hierarchyNotes,delete e.hierarchyNoteIsParent}return e.addDendronNotes!==void 0&&e.dendronNoteField!==void 0&&e.trimDendronNotes!==void 0&&e.dendronNoteDelimiter!==void 0&&(t.explicit_edge_sources.dendron_note={enabled:e.addDendronNotes,default_field:e.dendronNoteField,delimiter:e.dendronNoteDelimiter,display_trimmed:e.trimDendronNotes},delete e.addDendronNotes,delete e.dendronNoteField,delete e.trimDendronNotes,delete e.dendronNoteDelimiter),e.addDateNotes!==void 0&&e.dateNoteField!==void 0&&e.dateNoteFormat!==void 0&&(t.explicit_edge_sources.date_note={...vA.explicit_edge_sources.date_note,enabled:e.addDateNotes,default_field:e.dateNoteField,date_format:e.dateNoteFormat},delete e.addDateNotes,delete e.dateNoteField,delete e.dateNoteFormat),e.respectReadableLineLength!==void 0&&(t.views.page.all.readable_line_width=e.respectReadableLineLength,delete e.respectReadableLineLength),e.showBCs!==void 0&&(t.views.page.trail.enabled=e.showBCs,delete e.showBCs),e.showGrid!==void 0&&(t.views.page.trail.format=e.showGrid?"grid":"path",delete e.showGrid),e.gridDefaultDepth!==void 0&&(t.views.page.trail.default_depth=e.gridDefaultDepth,delete e.gridDefaultDepth),e.noPathMessage!==void 0&&(t.views.page.trail.no_path_message=e.noPathMessage,delete e.noPathMessage),e.showPrevNext!==void 0&&(t.views.page.prev_next.enabled=e.showPrevNext,delete e.showPrevNext),e.views.side.tree.default_dir!==void 0&&delete e.views.side.tree.default_dir,t.codeblocks!==void 0&&(t.views.codeblocks=t.codeblocks,delete t.codeblocks),e.showRefreshNotice!==void 0&&e.refreshOnNoteSave!==void 0&&e.refreshOnNoteChange!==void 0&&(t.commands.rebuild_graph.notify=e.showRefreshNotice,t.commands.rebuild_graph.trigger={note_save:e.refreshOnNoteSave,layout_change:e.refreshOnNoteChange},delete e.showRefreshNotice,delete e.refreshOnNoteSave,delete e.refreshOnNoteChange),e.wikilinkIndex!==void 0&&e.aliasesInIndex!==void 0&&e.createIndexIndent!==void 0&&(t.commands.list_index.default_options={...t.commands.list_index.default_options,indent:e.createIndexIndent,link_kind:e.wikilinkIndex?"wiki":"none",show_node_options:{...oi.show_node_options,alias:e.aliasesInIndex}},delete t.commands.list_index.default_options.dir,delete e.wikilinkIndex,delete e.aliasesInIndex,delete e.createIndexIndent),e.writeBCsInline!==void 0&&(t.commands.freeze_implied_edges.default_options.destination=e.writeBCsInline?"dataview-inline":"frontmatter",delete e.writeBCsInline),e.threadingTemplate!==void 0&&(t.commands.thread.default_options.target_path_template=e.threadingTemplate,delete e.threadingTemplate),e.threadUnderCursor!==void 0&&(t.commands.thread.default_options.destination=e.threadUnderCursor?"dataview-inline":"frontmatter",delete e.threadUnderCursor),e.enableRelationSuggestor!==void 0&&(t.suggestors.edge_field.enabled=e.enableRelationSuggestor,delete e.enableRelationSuggestor),e.relSuggestorTrigger!==void 0&&(t.suggestors.edge_field.trigger=e.relSuggestorTrigger,delete e.relSuggestorTrigger),e.suggestors.hierarchy_field!==void 0&&(t.suggestors.edge_field=e.suggestors.hierarchy_field,delete e.suggestors.hierarchy_field),e.alphaSortAsc!==void 0&&delete e.alphaSortAsc,e.debugMode&&delete e.debugMode,e.dvWaitTime!==void 0&&delete e.dvWaitTime,e.fieldSuggestor!==void 0&&delete e.fieldSuggestor,e.filterImpliedSiblingsOfDifferentTypes!==void 0&&delete e.filterImpliedSiblingsOfDifferentTypes,e.jugglLayout!==void 0&&delete e.jugglLayout,t}var K6=require("obsidian"),$d=class extends K6.EditorSuggest{constructor(r){super(r.app);this.getSuggestions=({query:r})=>this.plugin.settings.edge_fields.map(o=>o.label).filter(o=>o.includes(r));this.plugin=r}onTrigger(r,o,a){let{trigger:n}=this.plugin.settings.suggestors.edge_field,s=o.getLine(r.line).substring(0,r.ch);return s.startsWith(n)?{query:s.slice(n.length),end:r,start:{ch:0,line:r.line}}:null}renderSuggestion(r,o){o.createDiv({text:r})}selectSuggestion(r){if(!this.context)return;let{start:o,end:a,editor:n}=this.context;n.replaceRange(r+":: [[",o,a)}};var Z6=require("obsidian");var CD=q('
No paths found
'),TD=q('
');function Jm(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"plugin",7);H.debug("Rendering Tree side view");let s=kt(structuredClone(pr(n().settings.views.side.tree)));jt(()=>{n().settings.views.side.tree=pr(s),Re(()=>void n().saveSettings())});let i=de(()=>Cr(n().settings.edge_field_groups,s.field_group_labels)),l=de(()=>po(s.edge_sort_id.field,s.edge_sort_id.order===-1)),u=de(a),A=de(()=>{if(d(u)&&n().graph.has_node(d(u).path))return s.lock_view&&n().graph.has_node(s.lock_path)?(H.debug("Using locked path for TreeView:",s.lock_path),n().graph.rec_traverse_and_process(new Nt([s.lock_path],d(i),5,100,!s.merge_fields,void 0),new co(d(l),!1))):n().graph.rec_traverse_and_process(new Nt([d(u).path],d(i),5,100,!s.merge_fields,void 0),new co(d(l),!1))}),c=de(()=>{let P=d(l);return Re(()=>d(A)===null||d(A)===void 0?void 0:d(A).sort(n().graph,P)),{tree:d(A)}}),p=de(()=>hr(n().settings,s.show_node_options));var m=TD(),h=w(m),y=w(h),I=w(y);sA(I,{cls:"clickable-icon nav-action-button",get plugin(){return n()}});var F=S(I,2);{let P=de(()=>d(u)?.path);nA(F,{cls:"clickable-icon nav-action-button",get active_path(){return d(P)},get lock_view(){return s.lock_view},set lock_view(le){s.lock_view=le},get lock_path(){return s.lock_path},set lock_path(le){s.lock_path=le}})}var R=S(F,2);Hs(R,{cls:"clickable-icon nav-action-button",exclude_fields:[],get edge_sort_id(){return s.edge_sort_id},set edge_sort_id(P){s.edge_sort_id=P}});var B=S(R,2);Vs(B,{cls:"clickable-icon nav-action-button",get show_attributes(){return s.show_attributes},set show_attributes(P){s.show_attributes=P}});var j=S(B,2);aA(j,{cls:"clickable-icon nav-action-button",get collapse(){return s.collapse},set collapse(P){s.collapse=P}});var E=S(j,2);rA(E,{cls:"clickable-icon nav-action-button",get merge_fields(){return s.merge_fields},set merge_fields(P){s.merge_fields=P}});var D=S(E,2);Ls(D,{cls:"clickable-icon nav-action-button",get edge_field_groups(){return n().settings.edge_field_groups},get field_group_labels(){return s.field_group_labels},set field_group_labels(P){s.field_group_labels=P}}),b(y),b(h);var k=S(h,2),C=w(k);so(C,()=>d(c),P=>{var le=J(),xe=K(le);{var fe=G=>{{let Y=de(()=>!s.collapse);zs(G,{get plugin(){return n()},get node_stringify_options(){return d(p)},get show_attributes(){return s.show_attributes},get data(){return d(c).tree},get items(){return d(c).tree.entry_nodes},get open_signal(){return d(Y)}})}},He=G=>{var Y=CD();v(G,Y)};se(xe,G=>{d(c).tree&&!d(c).tree.is_empty()?G(fe):G(He,!1)})}v(P,le)}),b(k),b(m),v(t,m),ne(),o()}var Dd=class extends Z6.ItemView{constructor(r,o){super(r);this.icon="tree-pine";this.plugin=o}getViewType(){return ea.tree}getDisplayText(){return"Tree view"}onload(){this.registerEvent(this.plugin.events.on("redraw-side-views",()=>{this.onOpen()}))}async onOpen(){this.containerEl.children[1].empty(),this.component=Be(Jm,{target:this.contentEl,props:{plugin:this.plugin}})}async onClose(){this.component&&await Yo(this.component)}};var lA=(a=>(a.GRAPH_UPDATE="graph-update",a.REDRAW_CODEBLOCKS="redraw-codeblocks",a.REDRAW_PAGE_VIEWS="redraw-page-views",a.REDRAW_SIDE_VIEWS="redraw-side-views",a))(lA||{}),Fd=class extends xa.Plugin{async onload(){await this.loadSettings(),await this.backup_old_settings(),this.settings=W6(this.settings),await this.saveSettings(),H.set_level(this.settings.debug.level),H.info(`loading plugin "${this.manifest.name}" plugin v${this.manifest.version}`),H.debug("settings >",this.settings),this.events=new xa.Events,this.events.on("graph-update",()=>{this.refreshViews()}),this.events.on("redraw-page-views",()=>{oA(this)}),await F_({module_or_path:N6}),this.graph=$_(),this.graph.set_update_callback(()=>{queueMicrotask(()=>this.events.trigger("graph-update"))}),this.addSettingTab(new hd(this.app,this)),this.registerEvent(this.app.workspace.on("file-menu",this.handleFileMenu.bind(this))),this.api=new xd(this),window.BCAPI=this.api,this.register(()=>delete window.BCAPI),this.registerHoverLinkSource("breadcrumbs",{defaultMod:!0,display:"Breadcrumbs"}),this.settings.suggestors.edge_field.enabled&&this.registerEditorSuggest(new $d(this)),this.app.workspace.onLayoutReady(async()=>{H.debug("on:layout-ready");try{let e=this.app.metadataTypeManager.getAllProperties();for(let r of this.settings.edge_fields)e[r.label]?.type||this.app.metadataTypeManager.setType(r.label,"multitext");for(let[r,{property_type:o}]of Object.entries(G_))e[r]?.type!==o&&this.app.metadataTypeManager.setType(r,o)}catch(e){H.error("metadataTypeManager.setType error >",e)}if(await Ba.await_if_enabled(this),this.app.metadataCache.initialized)H.debug("metadataCache:initialized"),await this.rebuildGraph();else{let e=this.app.metadataCache.on("initialized",()=>{H.debug("on:metadatacache-initialized"),this.rebuildGraph(),this.app.metadataCache.offref(e)})}this.registerEvent(this.app.workspace.on("layout-change",()=>{H.debug("on:layout-change"),this.settings.commands.rebuild_graph.trigger.layout_change?this.rebuildGraph():this.events.trigger("redraw-page-views")})),this.registerEvent(this.app.workspace.on("active-leaf-change",e=>{H.debug("on:active-leaf-change"),e?.getViewState().type==="markdown"&&(xt.refresh(this.app),this.events.trigger("redraw-side-views"))})),this.registerEvent(this.app.vault.on("create",e=>{if(H.debug("on:create >",e.path),e instanceof xa.TFile&&e.extension==="md"){let r=new zr;new ri(new vt(e.path,[],!0,!1,!1)).add_to_batch(r),this.graph.apply_update(r)}})),this.registerEvent(this.app.vault.on("rename",(e,r)=>{if(H.debug("on:rename >",r,"->",e.path),e instanceof xa.TFile&&e.extension==="md"){let o=new zr;new _A(r,e.path).add_to_batch(o),this.graph.apply_update(o)}})),this.registerEvent(this.app.vault.on("delete",e=>{if(H.debug("on:delete >",e.path),e instanceof xa.TFile&&e.extension==="md"){let r=new zr;new mA(e.path).add_to_batch(r),this.graph.apply_update(r)}})),this.registerView(ea.matrix,e=>new jd(e,this)),this.registerView(ea.tree,e=>new Dd(e,this))}),this.registerMarkdownCodeBlockProcessor("breadcrumbs",(e,r,o)=>{let a=new kd(this,r,e,o.sourcePath);o.addChild(a)}),z6(this),H.debug("loaded Breadcrumbs plugin")}onunload(){}async loadSettings(){this.settings=Jd(await this.loadData()??{},vA)}handleFileMenu(e,r){r instanceof Y6.TFolder&&e.addItem(o=>{o.setTitle("Freeze implied edges in folder").setIcon("pin").onClick(()=>L6(this,r))})}async saveSettings(){this.settings.is_dirty=!1,await this.saveData(this.settings)}async backup_old_settings(){let e=`${this.app.vault.configDir}/plugins/${this.manifest.id}/data-backup__no-directions-migration.json`;await this.app.vault.adapter.exists(e)||(await this.app.vault.adapter.write(e,JSON.stringify(this.settings,null," ")),H.info(`old settings backed up to ${e}`))}async rebuildGraph(){let e=new Tr,r=this.settings.commands.rebuild_graph.notify?new xa.Notice("Rebuilding graph"):null,a=(await Pv(this)).explicit_edge_results.filter(({results:n})=>n.errors.length).reduce((n,{source:s,results:i})=>(n[s]=i.errors,n),{});Object.keys(a).length&&H.warn("explicit_edge_errors >",a),r?.setMessage([`Rebuilt graph in ${e.elapsed_str()}ms`,Object.keys(a).length?` +`),i));break}case"none":break}}async function Ed(t,e,r){let o=t.graph.get_outgoing_edges(e.path).get_edges().filter(a=>!a.is_self_loop()&&!a.explicit(t.graph));await yd(t,e,o,r)}async function L6(t,e){let r=[];new Ws.Notice("Freezing implied edges in the selected folder."),Ws.Vault.recurseChildren(e,o=>{if(o instanceof Ws.TFile){let a=Ed(t,o,t.settings.commands.freeze_implied_edges.default_options);r.push(a)}}),await Promise.all(r),new Ws.Notice("Finished freezing implied edges in folder.")}var G6=require("obsidian");async function H6(t,e){let r=lo(xt);if(!r)return;let o=t.graph.get_filtered_outgoing_edges(r.path,e.fields).get_edges().filter(a=>a.target_path(t.graph)!==r.path);if(o.length)await t.app.workspace.openLinkText(o[0].target_path(t.graph),r.path);else{new G6.Notice(`No matches found with attributes: ${e.fields.join(", ")}`);return}}function V6(t,e){let r={nodes:{resolved:{}},edges:{round:{},field:{},group:{},source:{},explicit:{},implied_kind:{}}};return t.iterate_nodes(o=>{let a=String(o.resolved);r.nodes.resolved[a]=(r.nodes.resolved[a]??0)+1}),t.iterate_edges(o=>{r.edges.field[o.edge_type]=(r.edges.field[o.edge_type]??0)+1,e.groups.forEach(n=>{n.fields.includes(o.edge_type)&&(r.edges.group[n.label]=(r.edges.group[n.label]??0)+1)});let a=String(o.explicit);if(r.edges.explicit[a]=(r.edges.explicit[a]??0)+1,o.explicit)r.edges.source[o.edge_source]=(r.edges.source[o.edge_source]??0)+1;else{r.edges.implied_kind[o.edge_source]=(r.edges.implied_kind[o.edge_source]??0)+1;let n=String(o.round);r.edges.round[n]=(r.edges.round[n]??0)+1}}),r}var ll=require("obsidian");async function U6(t,e,r){let o=t.app.workspace.getActiveViewOfType(ll.MarkdownView);if(!o)return new ll.Notice("No active markdown view");let a=o.file;if(!a)return new ll.Notice("No active file");let n={attr:{field:e},source:{path:a.path,basename:a.basename,folder:a.parent?.path??""}};H.info("thread > template_data",n);let s=mt.normalize(mt.ensure_ext(T_(r.target_path_template,n),"md"));H.debug("thread > target_path",s);let i=null;try{i=await t.app.vault.create(s,"")}catch(A){let c=`Error creating file "${s}". ${A instanceof Error?A.message:A}`;new ll.Notice(c),H.error("thread > create file error",c);return}let l=new zr;new ri(new vt(i.path,[],!0,!1,!1)).add_to_batch(l),new dA(new ct(a.path,i.path,e,"typed-link")).add_to_batch(l),t.graph.apply_update(l);let u=t.graph.get_outgoing_edges(a.path).get_edges().find(A=>A.edge_type===e&&A.target_path(t.graph)===i.path);u&&await Promise.all([yd(t,a,[u],r),o.leaf.openFile(i)])}function z6(t){t.addCommand({id:"breadcrumbs:rebuild-graph",name:"Rebuild graph",callback:async()=>await t.rebuildGraph()}),Object.keys(ea).forEach(e=>{t.addCommand({id:`breadcrumbs:open-${e}-view`,name:`Open ${e} view`,callback:()=>t.activateView(ea[e])})}),t.addCommand({id:"breadcrumbs:create-list-index",name:"Create list index",callback:()=>{new bd(t.app,t).open()}}),t.addCommand({id:"breadcrumbs:graph-stats",name:"Show/Copy graph stats",callback:async()=>{let e=V6(t.graph,{groups:t.settings.edge_field_groups});H.feat("Graph stats >",e),await navigator.clipboard.writeText(JSON.stringify(e,null,2)),new ul.Notice("Graph stats printed to console and copied to clipboard")}}),t.addCommand({id:"breadcrumbs:freeze-implied-edges-to-note",name:"Freeze implied edges to note",callback:async()=>{let e=lo(xt);e&&(await Ed(t,e,t.settings.commands.freeze_implied_edges.default_options),new ul.Notice("Implied edges frozen to note"))}}),t.addCommand({id:"breadcrumbs:freeze-implied-edges-to-vault",name:"Freeze implied edges to all notes in vault",callback:async()=>{if(!confirm("Are you sure you want to freeze implied edges to all notes in vault? This will write to all notes that have outgoing implied edges."))return new ul.Notice("Command cancelled");let e="FREEZE TO VAULT";new wd(t.app,r=>{Be(Ym,{target:r.contentEl,props:{label:`Type '${e}' to confirm`,disabled_cb:o=>o!==e,submit_cb:async o=>{if(o!==e)new ul.Notice("Command cancelled");else{let a=new Tr,n=new ul.Notice("Freezing implied edges to all notes in vault...");await Promise.all(t.app.vault.getMarkdownFiles().map(s=>Ed(t,s,t.settings.commands.freeze_implied_edges.default_options))),H.debug(`freeze-implied-edges-to-vault > took ${a.elapsed_str()}ms`),n.setMessage(`Implied edges frozen to all notes in ${a.elapsed_str()}ms`)}r.close()}}})}).open()}}),t.settings.edge_field_groups.forEach(e=>{t.addCommand({id:`breadcrumbs:jump-to-first-neighbour-group:${e.label}`,name:`Jump to first neighbour by group:${e.label}`,callback:()=>H6(t,{fields:e.fields})})}),t.settings.edge_fields.forEach(({label:e})=>{t.addCommand({id:`breadcrumbs:thread-field:${e}`,name:`Thread by field:${e}`,callback:()=>U6(t,e,t.settings.commands.thread.default_options)})})}var Id=["up","down","same","prev","next"];function SD(t){switch(t){case"up":return"down";case"down":return"up";case"same":return"same";case"next":return"prev";case"prev":return"next"}}function W6(t){let e=t;if(e.userHiers&&e.impliedRelations){let r={opposite_direction:{rounds:1},self_is_sibling:{rounds:Number(e.impliedRelations.siblingIdentity)},cousin_is_sibling:{rounds:Number(e.impliedRelations.cousinsIsSibling)},same_parent_is_sibling:{rounds:Number(e.impliedRelations.sameParentIsSibling)},same_sibling_is_sibling:{rounds:Number(e.impliedRelations.siblingsSiblingIsSibling)},siblings_parent_is_parent:{rounds:Number(e.impliedRelations.siblingsParentIsParent)},parents_sibling_is_parent:{rounds:Number(e.impliedRelations.parentsSiblingsIsParents)}};e.hierarchies=e.userHiers.map(o=>({dirs:Id.reduce((a,n)=>({...a,[n]:o[n]}),{}),implied_relationships:r})),delete e.userHiers,delete e.impliedRelations}if(e.hierarchies&&(Id.forEach(r=>{let o=e.hierarchies.flatMap(s=>s.dirs[r]).filter(Boolean),a=`${r}s`,n=t.edge_field_groups.find(s=>s.label===a);n?(n.fields.push(...o),n.fields=ma(n.fields)):t.edge_field_groups.push({label:a,fields:o})}),e.hierarchies.forEach(r=>{Object.values(r.dirs).flatMap(o=>o).filter(Boolean).forEach(o=>{t.edge_fields.find(a=>a.label===o)||t.edge_fields.push({label:o})}),Object.entries(r.implied_relationships).forEach(([o,{rounds:a}])=>{if(!a)return;let n={up:r.dirs.up[0],same:r.dirs.same[0],down:r.dirs.down[0],next:r.dirs.next[0],prev:r.dirs.prev[0]};switch(o){case"opposite_direction":{Id.forEach(s=>{let i=n[s],l=n[SD(s)];!i||!l||t.implied_relations.transitive.push({rounds:a,name:"",close_field:l,chain:[{field:i}],close_reversed:!0})});break}case"cousin_is_sibling":{if(!n.up||!n.same||!n.down)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.up},{field:n.same},{field:n.down}],close_reversed:!1,close_field:n.same});break}case"same_parent_is_sibling":{if(!n.up||!n.same||!n.down)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.up},{field:n.down}],close_reversed:!1,close_field:n.same});break}case"same_sibling_is_sibling":{if(!n.same)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.same},{field:n.same}],close_reversed:!1,close_field:n.same});break}case"siblings_parent_is_parent":{if(!n.up||!n.same)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.same},{field:n.up}],close_reversed:!1,close_field:n.up});break}case"parents_sibling_is_parent":{if(!n.up||!n.same)return;t.implied_relations.transitive.push({rounds:a,name:"",chain:[{field:n.up},{field:n.same}],close_reversed:!1,close_field:n.up});break}}})}),delete e.hierarchies,t.edge_field_groups=Zu(t.edge_field_groups,r=>r.label)),e.custom_implied_relations&&(e.custom_implied_relations.transitive.forEach(r=>{t.implied_relations.transitive.push({...r,name:"",close_reversed:!1})}),delete e.custom_implied_relations),t.implied_relations.transitive=Zu(t.implied_relations.transitive,Qu),e.tagNoteField!==void 0&&(t.explicit_edge_sources.tag_note.default_field=e.tagNoteField,delete e.tagNoteField),e.hierarchyNotes!==void 0&&e.hierarchyNoteIsParent!==void 0&&e.HNUpField!==void 0){if(e.hierarchyNotes.length>0){let r=`DEPRECATED: The central Hierarchy Notes setting is deprecated in favour of the "${Ve["list-note-field"]}" field in each hierarchy note.`;H.warn(r)}delete e.HNUpField,delete e.hierarchyNotes,delete e.hierarchyNoteIsParent}return e.addDendronNotes!==void 0&&e.dendronNoteField!==void 0&&e.trimDendronNotes!==void 0&&e.dendronNoteDelimiter!==void 0&&(t.explicit_edge_sources.dendron_note={enabled:e.addDendronNotes,default_field:e.dendronNoteField,delimiter:e.dendronNoteDelimiter,display_trimmed:e.trimDendronNotes},delete e.addDendronNotes,delete e.dendronNoteField,delete e.trimDendronNotes,delete e.dendronNoteDelimiter),e.addDateNotes!==void 0&&e.dateNoteField!==void 0&&e.dateNoteFormat!==void 0&&(t.explicit_edge_sources.date_note={...vA.explicit_edge_sources.date_note,enabled:e.addDateNotes,default_field:e.dateNoteField,date_format:e.dateNoteFormat},delete e.addDateNotes,delete e.dateNoteField,delete e.dateNoteFormat),e.respectReadableLineLength!==void 0&&(t.views.page.all.readable_line_width=e.respectReadableLineLength,delete e.respectReadableLineLength),e.showBCs!==void 0&&(t.views.page.trail.enabled=e.showBCs,delete e.showBCs),e.showGrid!==void 0&&(t.views.page.trail.format=e.showGrid?"grid":"path",delete e.showGrid),e.gridDefaultDepth!==void 0&&(t.views.page.trail.default_depth=e.gridDefaultDepth,delete e.gridDefaultDepth),e.noPathMessage!==void 0&&(t.views.page.trail.no_path_message=e.noPathMessage,delete e.noPathMessage),e.showPrevNext!==void 0&&(t.views.page.prev_next.enabled=e.showPrevNext,delete e.showPrevNext),e.views.side.tree.default_dir!==void 0&&delete e.views.side.tree.default_dir,t.codeblocks!==void 0&&(t.views.codeblocks=t.codeblocks,delete t.codeblocks),e.showRefreshNotice!==void 0&&e.refreshOnNoteSave!==void 0&&e.refreshOnNoteChange!==void 0&&(t.commands.rebuild_graph.notify=e.showRefreshNotice,t.commands.rebuild_graph.trigger={note_save:e.refreshOnNoteSave,layout_change:e.refreshOnNoteChange},delete e.showRefreshNotice,delete e.refreshOnNoteSave,delete e.refreshOnNoteChange),e.wikilinkIndex!==void 0&&e.aliasesInIndex!==void 0&&e.createIndexIndent!==void 0&&(t.commands.list_index.default_options={...t.commands.list_index.default_options,indent:e.createIndexIndent,link_kind:e.wikilinkIndex?"wiki":"none",show_node_options:{...oi.show_node_options,alias:e.aliasesInIndex}},delete t.commands.list_index.default_options.dir,delete e.wikilinkIndex,delete e.aliasesInIndex,delete e.createIndexIndent),e.writeBCsInline!==void 0&&(t.commands.freeze_implied_edges.default_options.destination=e.writeBCsInline?"dataview-inline":"frontmatter",delete e.writeBCsInline),e.threadingTemplate!==void 0&&(t.commands.thread.default_options.target_path_template=e.threadingTemplate,delete e.threadingTemplate),e.threadUnderCursor!==void 0&&(t.commands.thread.default_options.destination=e.threadUnderCursor?"dataview-inline":"frontmatter",delete e.threadUnderCursor),e.enableRelationSuggestor!==void 0&&(t.suggestors.edge_field.enabled=e.enableRelationSuggestor,delete e.enableRelationSuggestor),e.relSuggestorTrigger!==void 0&&(t.suggestors.edge_field.trigger=e.relSuggestorTrigger,delete e.relSuggestorTrigger),e.suggestors.hierarchy_field!==void 0&&(t.suggestors.edge_field=e.suggestors.hierarchy_field,delete e.suggestors.hierarchy_field),e.alphaSortAsc!==void 0&&delete e.alphaSortAsc,e.debugMode&&delete e.debugMode,e.dvWaitTime!==void 0&&delete e.dvWaitTime,e.fieldSuggestor!==void 0&&delete e.fieldSuggestor,e.filterImpliedSiblingsOfDifferentTypes!==void 0&&delete e.filterImpliedSiblingsOfDifferentTypes,e.jugglLayout!==void 0&&delete e.jugglLayout,t}var K6=require("obsidian"),$d=class extends K6.EditorSuggest{constructor(r){super(r.app);this.getSuggestions=({query:r})=>this.plugin.settings.edge_fields.map(o=>o.label).filter(o=>o.includes(r));this.plugin=r}onTrigger(r,o,a){let{trigger:n}=this.plugin.settings.suggestors.edge_field,s=o.getLine(r.line).substring(0,r.ch);return s.startsWith(n)?{query:s.slice(n.length),end:r,start:{ch:0,line:r.line}}:null}renderSuggestion(r,o){o.createDiv({text:r})}selectSuggestion(r){if(!this.context)return;let{start:o,end:a,editor:n}=this.context;n.replaceRange(r+":: [[",o,a)}};var Z6=require("obsidian");var CD=q('
No paths found
'),TD=q('
');function Jm(t,e){ae(e,!0);let[r,o]=Sr(),a=()=>Br(xt,"$active_file_store",r),n=U(e,"plugin",7);H.debug("Rendering Tree side view");let s=kt(structuredClone(pr(n().settings.views.side.tree)));jt(()=>{n().settings.views.side.tree=pr(s),Re(()=>void n().saveSettings())});let i=de(()=>Cr(n().settings.edge_field_groups,s.field_group_labels)),l=de(()=>po(s.edge_sort_id.field,s.edge_sort_id.order===-1)),u=de(a),A=de(()=>{if(d(u)&&n().graph.has_node(d(u).path))return s.lock_view&&n().graph.has_node(s.lock_path)?(H.debug("Using locked path for TreeView:",s.lock_path),n().graph.rec_traverse_and_process(new Nt([s.lock_path],d(i),5,100,!s.merge_fields,void 0),new co(d(l),!1))):n().graph.rec_traverse_and_process(new Nt([d(u).path],d(i),5,100,!s.merge_fields,void 0),new co(d(l),!1))}),c=de(()=>{let P=d(l);return Re(()=>d(A)===null||d(A)===void 0?void 0:d(A).sort(n().graph,P)),{tree:d(A)}}),p=de(()=>hr(n().settings,s.show_node_options));var m=TD(),h=w(m),y=w(h),I=w(y);sA(I,{cls:"clickable-icon nav-action-button",get plugin(){return n()}});var F=S(I,2);{let P=de(()=>d(u)?.path);nA(F,{cls:"clickable-icon nav-action-button",get active_path(){return d(P)},get lock_view(){return s.lock_view},set lock_view(le){s.lock_view=le},get lock_path(){return s.lock_path},set lock_path(le){s.lock_path=le}})}var R=S(F,2);Hs(R,{cls:"clickable-icon nav-action-button",exclude_fields:[],get edge_sort_id(){return s.edge_sort_id},set edge_sort_id(P){s.edge_sort_id=P}});var B=S(R,2);Vs(B,{cls:"clickable-icon nav-action-button",get show_attributes(){return s.show_attributes},set show_attributes(P){s.show_attributes=P}});var j=S(B,2);aA(j,{cls:"clickable-icon nav-action-button",get collapse(){return s.collapse},set collapse(P){s.collapse=P}});var E=S(j,2);rA(E,{cls:"clickable-icon nav-action-button",get merge_fields(){return s.merge_fields},set merge_fields(P){s.merge_fields=P}});var D=S(E,2);Ls(D,{cls:"clickable-icon nav-action-button",get edge_field_groups(){return n().settings.edge_field_groups},get field_group_labels(){return s.field_group_labels},set field_group_labels(P){s.field_group_labels=P}}),b(y),b(h);var k=S(h,2),C=w(k);so(C,()=>d(c),P=>{var le=J(),xe=K(le);{var fe=G=>{{let Y=de(()=>!s.collapse);zs(G,{get plugin(){return n()},get node_stringify_options(){return d(p)},get show_attributes(){return s.show_attributes},get data(){return d(c).tree},get items(){return d(c).tree.entry_nodes},get open_signal(){return d(Y)}})}},He=G=>{var Y=CD();v(G,Y)};se(xe,G=>{d(c).tree&&!d(c).tree.is_empty()?G(fe):G(He,!1)})}v(P,le)}),b(k),b(m),v(t,m),ne(),o()}var Dd=class extends Z6.ItemView{constructor(r,o){super(r);this.icon="tree-pine";this.plugin=o}getViewType(){return ea.tree}getDisplayText(){return"Tree view"}onload(){this.registerEvent(this.plugin.events.on("redraw-side-views",()=>{this.onOpen()}))}async onOpen(){this.containerEl.children[1].empty(),this.component=Be(Jm,{target:this.contentEl,props:{plugin:this.plugin}})}async onClose(){this.component&&await Yo(this.component)}};var lA=(a=>(a.GRAPH_UPDATE="graph-update",a.REDRAW_CODEBLOCKS="redraw-codeblocks",a.REDRAW_PAGE_VIEWS="redraw-page-views",a.REDRAW_SIDE_VIEWS="redraw-side-views",a))(lA||{}),Fd=class extends xa.Plugin{async onload(){await this.loadSettings(),await this.backup_old_settings(),this.settings=W6(this.settings),await this.saveSettings(),H.set_level(this.settings.debug.level),H.info(`loading plugin "${this.manifest.name}" plugin v${this.manifest.version}`),H.debug("settings >",this.settings),this.events=new xa.Events,this.events.on("graph-update",()=>{this.refreshViews()}),this.events.on("redraw-page-views",()=>{oA(this)}),await F_({module_or_path:N6}),this.graph=$_(),this.graph.set_update_callback(()=>{queueMicrotask(()=>this.events.trigger("graph-update"))}),this.addSettingTab(new hd(this.app,this)),this.registerEvent(this.app.workspace.on("file-menu",this.handleFileMenu.bind(this))),this.api=new xd(this),window.BCAPI=this.api,this.register(()=>delete window.BCAPI),this.registerHoverLinkSource("breadcrumbs",{defaultMod:!0,display:"Breadcrumbs"}),this.settings.suggestors.edge_field.enabled&&this.registerEditorSuggest(new $d(this)),this.app.workspace.onLayoutReady(async()=>{H.debug("on:layout-ready");try{for(let e of this.settings.edge_fields){let r=this.getMetdataPropertyType(e.label);r==="multitext"||r==="text"||await this.app.metadataTypeManager.setType(e.label,"multitext")}for(let[e,{property_type:r}]of Object.entries(G_))this.getMetdataPropertyType(e)!==r&&await this.app.metadataTypeManager.setType(e,r)}catch(e){H.error("metadataTypeManager.setType error >",e)}if(await Ba.await_if_enabled(this),this.app.metadataCache.initialized)H.debug("metadataCache:initialized"),await this.rebuildGraph();else{let e=this.app.metadataCache.on("initialized",()=>{H.debug("on:metadatacache-initialized"),this.rebuildGraph(),this.app.metadataCache.offref(e)})}this.registerEvent(this.app.workspace.on("layout-change",()=>{H.debug("on:layout-change"),this.settings.commands.rebuild_graph.trigger.layout_change?this.rebuildGraph():this.events.trigger("redraw-page-views")})),this.registerEvent(this.app.workspace.on("active-leaf-change",e=>{H.debug("on:active-leaf-change"),e?.getViewState().type==="markdown"&&(xt.refresh(this.app),this.events.trigger("redraw-side-views"))})),this.registerEvent(this.app.vault.on("create",e=>{if(H.debug("on:create >",e.path),e instanceof xa.TFile&&e.extension==="md"){let r=new zr;new ri(new vt(e.path,[],!0,!1,!1)).add_to_batch(r),this.graph.apply_update(r)}})),this.registerEvent(this.app.vault.on("rename",(e,r)=>{if(H.debug("on:rename >",r,"->",e.path),e instanceof xa.TFile&&e.extension==="md"){let o=new zr;new _A(r,e.path).add_to_batch(o),this.graph.apply_update(o)}})),this.registerEvent(this.app.vault.on("delete",e=>{if(H.debug("on:delete >",e.path),e instanceof xa.TFile&&e.extension==="md"){let r=new zr;new mA(e.path).add_to_batch(r),this.graph.apply_update(r)}})),this.registerView(ea.matrix,e=>new jd(e,this)),this.registerView(ea.tree,e=>new Dd(e,this))}),this.registerMarkdownCodeBlockProcessor("breadcrumbs",(e,r,o)=>{let a=new kd(this,r,e,o.sourcePath);o.addChild(a)}),z6(this),H.debug("loaded Breadcrumbs plugin")}onunload(){}async loadSettings(){this.settings=Jd(await this.loadData()??{},vA)}handleFileMenu(e,r){r instanceof Y6.TFolder&&e.addItem(o=>{o.setTitle("Freeze implied edges in folder").setIcon("pin").onClick(()=>L6(this,r))})}async saveSettings(){this.settings.is_dirty=!1,await this.saveData(this.settings)}async backup_old_settings(){let e=`${this.app.vault.configDir}/plugins/${this.manifest.id}/data-backup__no-directions-migration.json`;await this.app.vault.adapter.exists(e)||(await this.app.vault.adapter.write(e,JSON.stringify(this.settings,null," ")),H.info(`old settings backed up to ${e}`))}async rebuildGraph(){let e=new Tr,r=this.settings.commands.rebuild_graph.notify?new xa.Notice("Rebuilding graph"):null,a=(await Pv(this)).explicit_edge_results.filter(({results:n})=>n.errors.length).reduce((n,{source:s,results:i})=>(n[s]=i.errors,n),{});Object.keys(a).length&&H.warn("explicit_edge_errors >",a),r?.setMessage([`Rebuilt graph in ${e.elapsed_str()}ms`,Object.keys(a).length?` Explicit edge errors (see console for details):`:null,...Object.entries(a).map(([n,s])=>`- ${n}: ${s.length} errors`)].filter(Boolean).join(` -`))}refreshViews(){this.events.trigger("redraw-page-views"),this.events.trigger("redraw-codeblocks"),this.events.trigger("redraw-side-views")}async activateView(e,r){let{workspace:o}=this.app,a=null,n=o.getLeavesOfType(e);if(n.length>0)a=n[0];else{if(a=r?.side==="left"?o.getLeftLeaf(!1):o.getRightLeaf(!1),!a){H.warn("activate_view > no leaf found");return}await a.setViewState({type:e,active:!0})}await o.revealLeaf(a)}}; +`))}refreshViews(){this.events.trigger("redraw-page-views"),this.events.trigger("redraw-codeblocks"),this.events.trigger("redraw-side-views")}async activateView(e,r){let{workspace:o}=this.app,a=null,n=o.getLeavesOfType(e);if(n.length>0)a=n[0];else{if(a=r?.side==="left"?o.getLeftLeaf(!1):o.getRightLeaf(!1),!a){H.warn("activate_view > no leaf found");return}await a.setViewState({type:e,active:!0})}await o.revealLeaf(a)}getMetdataPropertyType(e){return"getAssignedWidget"in this.app.metadataTypeManager?this.app.metadataTypeManager.getAssignedWidget(e):this.app.metadataTypeManager.getAssignedType(e)}}; /*! Bundled license information: lucide-svelte/dist/defaultAttributes.js: @@ -179,3 +179,5 @@ lucide-svelte/dist/icons/split.svelte: * *) */ + +/* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/breadcrumbs/manifest.json b/.obsidian/plugins/breadcrumbs/manifest.json index 0b5a2e98..7678070d 100644 --- a/.obsidian/plugins/breadcrumbs/manifest.json +++ b/.obsidian/plugins/breadcrumbs/manifest.json @@ -1 +1,12 @@ -{"id":"breadcrumbs","name":"Breadcrumbs","version":"4.4.3","minAppVersion":"1.0.0","description":"Add structured hierarchies to your notes","author":"SkepticMystic","authorUrl":"https://github.com/SkepticMystic/breadcrumbs","fundingUrl":"https://github.com/SkepticMystic/breadcrumbs#donations","helpUrl":"https://publish.obsidian.md/breadcrumbs-docs","isDesktopOnly":false} \ No newline at end of file +{ + "id": "breadcrumbs", + "name": "Breadcrumbs", + "version": "4.4.4", + "minAppVersion": "1.0.0", + "description": "Add structured hierarchies to your notes", + "author": "SkepticMystic", + "authorUrl": "https://github.com/SkepticMystic/breadcrumbs", + "fundingUrl": "https://github.com/SkepticMystic/breadcrumbs#donations", + "helpUrl": "https://publish.obsidian.md/breadcrumbs-docs", + "isDesktopOnly": false +} \ No newline at end of file diff --git a/.obsidian/plugins/cmdr/main.js b/.obsidian/plugins/cmdr/main.js index fb9d02b3..1754350d 100644 --- a/.obsidian/plugins/cmdr/main.js +++ b/.obsidian/plugins/cmdr/main.js @@ -3,7 +3,7 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin (https://github.com/phibr0/obsidian-commander) */ -var Oe=Object.defineProperty,Rn=Object.defineProperties,zn=Object.getOwnPropertyDescriptor,On=Object.getOwnPropertyDescriptors,Fn=Object.getOwnPropertyNames,ze=Object.getOwnPropertySymbols;var vt=Object.prototype.hasOwnProperty,$t=Object.prototype.propertyIsEnumerable;var Yt=(t,o,e)=>o in t?Oe(t,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[o]=e,Fe=(t,o)=>{for(var e in o||(o={}))vt.call(o,e)&&Yt(t,e,o[e]);if(ze)for(var e of ze(o))$t.call(o,e)&&Yt(t,e,o[e]);return t},Gt=(t,o)=>Rn(t,On(o));var Kt=(t,o)=>{var e={};for(var n in t)vt.call(t,n)&&o.indexOf(n)<0&&(e[n]=t[n]);if(t!=null&&ze)for(var n of ze(t))o.indexOf(n)<0&&$t.call(t,n)&&(e[n]=t[n]);return e};var Vn=(t,o)=>{for(var e in o)Oe(t,e,{get:o[e],enumerable:!0})},Wn=(t,o,e,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let a of Fn(o))!vt.call(t,a)&&a!==e&&Oe(t,a,{get:()=>o[a],enumerable:!(n=zn(o,a))||n.enumerable});return t};var jn=t=>Wn(Oe({},"__esModule",{value:!0}),t);var Va={};Vn(Va,{default:()=>lt});module.exports=jn(Va);var Ve=require("obsidian");var Ct=require("obsidian");var Qt={};var eo={"Open Commander Settings":"Otev\u0159\xEDt nastaven\xED Commandera","Open Macro Builder":"Otev\u0159\xEDt tv\u016Frce Maker","Change Icon":"Zm\u011Bnit ikonu",Rename:"P\u0159ejmenovat",Delete:"Smazat","Add command":"P\u0159idat p\u0159\xEDkaz","Add new":"P\u0159idat nov\xFD","This Command seems to have been removed. {{command_name}}":"Tento p\u0159\xEDkaz se zd\xE1 b\xFDt odstran\u011Bn. {{command_name}}","Choose a Command to add":"Vyberte p\u0159\xEDkaz k p\u0159id\xE1n\xED","to navigate":"pro navigaci","to choose an icon":"pro v\xFDb\u011Br ikony","to cancel":"pro zru\u0161en\xED","Use a custom name":"Pou\u017E\xEDt vlastn\xED jm\xE9no","Choose a custom Name for your new Command":"Vyberte vlastn\xED jm\xE9no pro v\xE1\u0161 nov\xFD p\u0159\xEDkaz","to save":"pro ulo\u017Een\xED","Choose a Icon for your new Command":"Vyberte ikonu pro v\xE1\u0161 nov\xFD p\u0159\xEDkaz","to choose a custom icon":"pro v\xFDb\u011Br vlastn\xED ikony","Remove Command":"Odstranit p\u0159\xEDkaz","Double click to rename":"Pro p\u0159ejmenov\xE1n\xED dvakr\xE1t klikn\u011Bte","This device":"Toto za\u0159\xEDzen\xED","Added by {{plugin_name}}.":"P\u0159id\xE1no pomoc\xED {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Varov\xE1n\xED: Tento p\u0159\xEDkaz je kontrolov\xE1n a nemus\xED fungovat ve v\u0161ech p\u0159\xEDpadech.","Move down":"P\u0159esunout dol\u016F","Move up":"P\u0159esunout nahoru","Change Mode (Currently: {{current_mode}})":"Zm\u011Bnit re\u017Eim (Nyn\xED: {{current_mode}})","Are you sure you want to delete the Command?":"Opravdu chcete smazat tento p\u0159\xEDkaz?","Remove and don't ask again":"Odstranit a u\u017E se neptat",Remove:"Odstranit",Cancel:"Zru\u0161it","Always ask before removing?":"V\u017Edy se pt\xE1t p\u0159ed odstran\u011Bn\xEDm?","Always show a Popup to confirm deletion of a Command.":"V\u017Edy zobrazovat vyskakovac\xED okno pro potvrzen\xED odstran\u011Bn\xED p\u0159\xEDkazu.",'Show "Add Command" Button':'Zobrazit tla\u010D\xEDtko "P\u0159idat p\u0159\xEDkaz"','Show the "Add Command" Button in every Menu. Requires restart.':'Zobrazit tla\u010D\xEDtko "P\u0159idat p\u0159\xEDkaz" ve v\u0161ech nab\xEDdk\xE1ch. Vy\u017Eaduje restart.',"Please restart Obsidian for these changes to take effect.":"Pros\xEDm restartujte Obsidian, aby se zm\u011Bny projevily.","Enable debugging":"Povolit lad\u011Bn\xED","Enable console output.":"Povolit v\xFDstup do konzole.",General:"Obecn\xE9","Editor Menu":"Kontextov\xE1 nab\xEDdka v editoru","File Menu":"Nab\xEDdka souboru","Left Ribbon":"Lev\xFD Ribbon","Right Ribbon":"Prav\xFD Ribbon",Titlebar:"Li\u0161ta aplikace",Statusbar:"Stavov\xE1 li\u0161ta","Page Header":"Hlavi\u010Dka str\xE1nky","Support development":"Podpo\u0159te v\xFDvoj","No commands here!":"Nejsou zde \u017E\xE1dn\xE9 p\u0159\xEDkazy!","Would you like to add one now?":"Chcete nyn\xED jeden p\u0159idat?","Hide Commands":"Skr\xFDt p\u0159\xEDkazy","Choose new":"Vyberte nov\xFD","Hide Commands of other Plugins":"Skr\xFDt p\u0159\xEDkazy jin\xFDch roz\u0161\xED\u0159en\xED",Icon:"Ikona",Name:"N\xE1zev","Custom Name":"Vlastn\xED n\xE1zev","Add command to all devices":"P\u0159idat p\u0159\xEDkaz na v\u0161echna za\u0159\xEDzen\xED","Add command only to mobile devices":"P\u0159idat p\u0159\xEDkaz pouze na mobiln\xED za\u0159\xEDzen\xED","Add command only to desktop devices":"P\u0159idat p\u0159\xEDkaz pouze na stoln\xED za\u0159\xEDzen\xED","Add command only to this device":"P\u0159idat p\u0159\xEDkaz pouze na toto za\u0159\xEDzen\xED",Done:"Hotovo","By Johnny\u2728 and phibr0":"Vytvo\u0159il Johnny\u2728 a phibr0","Leave feedback":"Zanechat zp\u011Btnou vazbu",Donate:"P\u0159isp\u011Bt","Share feedback, issues, and ideas with our feedback form.":"Sd\xEDlejte zp\u011Btnou vazbu, probl\xE9my a n\xE1pady pomoc\xED na\u0161eho formul\xE1\u0159e.","Consider donating to support development.":"Zva\u017Ete p\u0159\xEDsp\u011Bvek na podporu v\xFDvoje.",Save:"Ulo\u017Eit","This Command is not available on this device.":"Tento p\u0159\xEDkaz nen\xED dostupn\xFD na tomto za\u0159\xEDzen\xED.",Show:"Zobrazit",Hide:"Skr\xFDt","Hide other Commands":"Skr\xFDt ostatn\xED p\u0159\xEDkazy","Double click to enter custom value":"Dvakr\xE1t klikn\u011Bte pro zad\xE1n\xED vlastn\xED hodnoty","Choose custom spacing for Command Buttons":"Vyberte vlastn\xED odsazen\xED pro tla\u010D\xEDtka p\u0159\xEDkaz\u016F","Change the spacing between commands. You can set different values on mobile and desktop.":"Zm\u011Bna odsazen\xED mezi p\u0159\xEDkazy. M\u016F\u017Eete nastavit r\u016Fzn\xE9 hodnoty na mobiln\xEDch a stoln\xEDch za\u0159\xEDzen\xEDch.",Warning:"Varov\xE1n\xED","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"Od verze Obsidian 0.16.0 je nutn\xE9 explicitn\u011B povolit z\xE1hlav\xED zobrazen\xED. Po povolen\xED je mo\u017En\xE9, \u017Ee budete muset restartovat Obsidian.","Open Appearance Settings":"Otev\u0159\xEDt nastaven\xED vzhledu",Explorer:"Pr\u016Fzkumn\xEDk"};var to={};var oo={"Open Commander Settings":"Commander Einstellungen \xF6ffnen","Open Macro Builder":"Makro Baukasten \xF6ffnen","Change Icon":"Symbol ver\xE4ndern",Rename:"Umbenennen",Delete:"L\xF6schen","Add command":"Befehl hinzuf\xFCgen","Add new":"Neuen Befehl hinzuf\xFCgen","This Command seems to have been removed. {{command_name}}":"Dieser Befehl wurde entfernt. {{command_name}}","Choose a Command to add":"W\xE4hle einen Befehl zum hinzuf\xFCgen","to navigate":"zum navigieren","to choose an icon":"um ein symbol auszuw\xE4hlen","to cancel":"zum abbrechen","Use a custom name":"Nutze einen benutzerdefinierten Namen","Choose a custom Name for your new Command":"W\xE4hle einen benutzerdefinierten Namen f\xFCr deinen neuen Befehl","to save":"zum speichern","Choose a Icon for your new Command":"W\xE4hle ein Symbol f\xFCr deinen neuen Befehl","to choose a custom icon":"um ein benutzerdefiniertes Symbol auszuw\xE4hlen","Remove Command":"Befehl entfernen","Double click to rename":"Zum umbenennen doppelklicken","This device":"Dieses Ger\xE4t","Added by {{plugin_name}}.":"Hinzugef\xFCgt von {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Warnung: Dieser Befehl wird nur unter bestimmten Vorraussetzungen ausgef\xFChrt.","Move down":"Nach unten","Move up":"Nach oben","Change Mode (Currently: {{current_mode}})":"Modus ver\xE4ndern (Momentan: {{current_mode}})","Are you sure you want to delete the Command?":"Bist du dir sicher, dass du diesen Befehl entfernen m\xF6chtest?","Remove and don't ask again":"Entfernen und Auswahl speichern",Remove:"Entfernen",Cancel:"Abbrechen","Always ask before removing?":"Immer fragen, bevor ein Befehl gel\xF6scht wird?","Always show a Popup to confirm deletion of a Command.":"Zeige immer ein Popup um L\xF6schen zu best\xE4tigen.",'Show "Add Command" Button':'Zeige "Befehl hinzuf\xFCgen" Knopf','Show the "Add Command" Button in every Menu. Requires restart.':'Zeige den "Befehl hinzuf\xFCgen" Knopf in jedem Men\xFC. Erfordert neustart.',"Please restart Obsidian for these changes to take effect.":"Bitte starte Obsidian neu, damit diese \xC4nderungen in Kraft treten.","Enable debugging":"Aktiviere debugging","Enable console output.":"Aktiviere Konsolen-Output (F\xFCr Entwickler)",General:"Allgemein","Editor Menu":"Editor-Men\xFC","File Menu":"Datei-Men\xFC","Left Ribbon":"Band","Right Ribbon":"Rechtes Band",Titlebar:"Titelleiste",Statusbar:"Statusleiste","Page Header":"Kopfzeile","Support development":"Entwicklung unterst\xFCtzen","No commands here!":"Keine Befehle da!","Would you like to add one now?":"M\xF6chtest du jetzt einen hinzuf\xFCgen?","Hide Commands":"Befehle verstecken","Choose new":"W\xE4hle neu","Hide Commands of other Plugins":"Hide Commands of other Plugins",Icon:"Symbol",Name:"Name","Custom Name":"Benutzerdefinierter Name","Add command to all devices":"F\xFCge Befehl allen Ger\xE4ten hinzu","Add command only to mobile devices":"F\xFCge Befehl nur Mobilen Ger\xE4ten hinzu","Add command only to desktop devices":"F\xFCge Befehl nur Desktop Ger\xE4ten hinzu","Add command only to this device":"F\xFCge Befehl nur diesem Ger\xE4t hinzu",Done:"Fertig","By Johnny\u2728 and phibr0":"Von Johnny\u2728 und phibr0","Leave feedback":"Feedback geben",Donate:"Spenden","Share feedback, issues, and ideas with our feedback form.":"Teile Feedback, Probleme und Ideen mit unserem Feedback Formular!","Consider donating to support development.":"Spende um die Entwicklung zu unterst\xFCtzen.",Save:"Speichern","This Command is not available on this device.":"Dieser Befehl ist auf diesem Ger\xE4t nicht verf\xFCgbar.",Show:"Anzeigen",Hide:"Verstecken","Hide other Commands":"Andere Befehle verstecken","Double click to enter custom value":"Doppelklicken um eigenen Wert einzutragen","Choose custom spacing for Command Buttons":"W\xE4hle den Abstand zwischen Befehlen","Change the spacing between commands. You can set different values on mobile and desktop.":"Ver\xE4ndert den Abstand zwischen Befehlen.",Warning:"Achtung","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":'Ab Obsidian Version 0.16.0 m\xFCssen Sie den "View Header" explizit aktivieren. Anschlie\xDFend muss Obsidian neugestartet werden.',"Open Appearance Settings":"\xD6ffne Darstellungs-Einstellungen",Explorer:"Explorer"};var gt={"Open Commander Settings":"Open Commander Settings","Open Macro Builder":"Open Macro Builder","Change Icon":"Change Icon",Rename:"Rename",Delete:"Delete","Add command":"Add command","Add new":"Add new command","This Command seems to have been removed. {{command_name}}":"This Command seems to have been removed. {{command_name}}","Choose a Command to add":"Choose a Command to add","to navigate":"to navigate","to choose an icon":"to choose an icon","to cancel":"to cancel","Use a custom name":"Use a custom name","Choose a custom Name for your new Command":"Choose a custom Name for your new Command","to save":"to save","Choose a Icon for your new Command":"Choose a Icon for your new Command","to choose a custom icon":"to choose a custom icon","Remove Command":"Remove Command","Double click to rename":"Double click to rename","This device":"This device","Added by {{plugin_name}}.":"Added by {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Warning: This is a checked Command, meaning it might not run under every circumstance.","Move down":"Move down","Move up":"Move up","Change Mode (Currently: {{current_mode}})":"Change Mode (Currently: {{current_mode}})","Are you sure you want to delete the Command?":"Are you sure you want to delete the Command?","Remove and don't ask again":"Remove and don't ask again",Remove:"Remove",Cancel:"Cancel","Always ask before removing?":"Always ask before removing?","Always show a Popup to confirm deletion of a Command.":"Always show a Popup to confirm deletion of a Command.",'Show "Add Command" Button':'Show "Add Command" Button','Show the "Add Command" Button in every Menu. Requires restart.':'Show the "Add Command" Button in every Menu. Requires restart.',"Please restart Obsidian for these changes to take effect.":"Please restart Obsidian for these changes to take effect.","Enable debugging":"Enable debugging","Enable console output.":"Enable console output.",General:"General","Editor Menu":"Editor Menu","File Menu":"File Menu","Left Ribbon":"Ribbon","Right Ribbon":"Right Ribbon",Titlebar:"Titlebar",Statusbar:"Status Bar","Page Header":"Tab Bar","Support development":"Support development","No commands here!":"No commands here!","Would you like to add one now?":"Would you like to add one now?","Hide Commands":"Hide Commands","Choose new":"Choose new","Hide Commands of other Plugins":"Hide Commands of other Plugins",Icon:"Icon",Name:"Name","Custom Name":"Custom Name","Add command to all devices":"Add command to all devices","Add command only to mobile devices":"Add command only to mobile devices","Add command only to desktop devices":"Add command only to desktop devices","Add command only to this device":"Add command only to this device",Done:"Done","By Johnny\u2728 and phibr0":"By Johnny\u2728 and phibr0","Leave feedback":"Leave feedback",Donate:"Donate","Share feedback, issues, and ideas with our feedback form.":"Share feedback, issues, and ideas with our feedback form.","Consider donating to support development.":"Consider donating to support development.",Save:"Save","This Command is not available on this device.":"This Command is not available on this device.",Show:"Show",Hide:"Hide","Hide other Commands":"Hide other Commands","Double click to enter custom value":"Double click to enter custom value","Choose custom spacing for Command Buttons":"Choose custom spacing for Command Buttons","Change the spacing between commands. You can set different values on mobile and desktop.":"Change the spacing between commands.",Warning:"Warning","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"As of Obsidian 0.16.0 you need to explicitly enable the Tab Title Bar. Once enabled, you might need to restart Obsidian.","Open Appearance Settings":"Open Appearance Settings",Explorer:"Explorer"};var no={};var ao={};var io={"Open Commander Settings":"Ouvrir les param\xE8tres de Commander","Open Macro Builder":"Ouvrir le constructeur de Macro","Change Icon":"Changer l'ic\xF4ne",Rename:"Renommer",Delete:"Supprimer","Add command":"Ajouter une commande","Add new":"Ajouter une nouvelle commande","This Command seems to have been removed. {{command_name}}":"Cette commande semble avoir \xE9t\xE9 supprim\xE9e. {{command_name}}","Choose a Command to add":"Choisissez une commande \xE0 ajouter","to navigate":"pour naviguer","to choose an icon":"pour choisir une ic\xF4ne","to cancel":"pour annuler","Use a custom name":"Utiliser un nom personnalis\xE9","Choose a custom Name for your new Command":"Choisissez un nom personnalis\xE9 pour votre nouvelle commande","to save":"pour enregistrer","Choose a Icon for your new Command":"Choisissez une ic\xF4ne pour votre nouvelle commande","to choose a custom icon":"pour choisir une ic\xF4ne personnalis\xE9e","Remove Command":"Supprimer la commande","Double click to rename":"Double-cliquez pour renommer","This device":"Cet appareil","Added by {{plugin_name}}.":"Ajout\xE9 par {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Attention : Cette commande est coch\xE9e, ce qui signifie qu'elle pourrait ne pas fonctionner dans toutes les situations.","Move down":"Descendre","Move up":"Monter","Change Mode (Currently: {{current_mode}})":"Changer de mode (Actuellement : {{current_mode}})","Are you sure you want to delete the Command?":"\xCAtes-vous s\xFBr de vouloir supprimer la commande ?","Remove and don't ask again":"Supprimer et ne plus demander",Remove:"Supprimer",Cancel:"Annuler","Always ask before removing?":"Toujours demander avant de supprimer ?","Always show a Popup to confirm deletion of a Command.":"Toujours afficher une fen\xEAtre contextuelle pour confirmer la suppression d'une commande.",'Show "Add Command" Button':'Afficher le bouton "Ajouter une commande"','Show the "Add Command" Button in every Menu. Requires restart.':'Afficher le bouton "Ajouter une commande" dans chaque menu. N\xE9cessite un red\xE9marrage.',"Please restart Obsidian for these changes to take effect.":"Veuillez red\xE9marrer Obsidian pour que ces modifications prennent effet.","Enable debugging":"Activer le d\xE9bogage","Enable console output.":"Activer la sortie console.",General:"G\xE9n\xE9ral","Editor Menu":"Menu \xE9diteur","File Menu":"Menu fichier","Left Ribbon":"Ruban gauche","Right Ribbon":"Ruban droit",Titlebar:"Barre de titre",Statusbar:"Barre d'\xE9tat","Page Header":"En-t\xEAte de page","Support development":"Soutenir le d\xE9veloppement","No commands here!":"Aucune commande ici !","Would you like to add one now?":"Voulez-vous en ajouter une maintenant ?","Hide Commands":"Masquer les commandes","Choose new":"Choisir nouveau","Hide Commands of other Plugins":"Masquer les commandes d'autres plugins",Icon:"Ic\xF4ne",Name:"Nom","Custom Name":"Nom personnalis\xE9","Add command to all devices":"Ajouter la commande \xE0 tous les appareils","Add command only to mobile devices":"Ajouter la commande uniquement sur les appareils mobiles","Add command only to desktop devices":"Ajouter la commande uniquement sur les ordinateurs de bureau","Add command only to this device":"Ajouter la commande uniquement sur cet appareil",Done:"Termin\xE9","By Johnny\u2728 and phibr0":"Par Johnny\u2728 et phibr0","Leave feedback":"Laisser un commentaire",Donate:"Faire un don","Share feedback, issues, and ideas with our feedback form.":"Partagez vos commentaires, probl\xE8mes et id\xE9es avec notre formulaire de retour d'information.","Consider donating to support development.":"Envisagez de faire un don pour soutenir le d\xE9veloppement.",Save:"Enregistrer","This Command is not available on this device.":"Cette commande n'est pas disponible sur cet appareil.",Show:"Afficher",Hide:"Masquer","Hide other Commands":"Masquer les autres commandes","Double click to enter custom value":"Double-cliquez pour entrer une valeur personnalis\xE9e","Choose custom spacing for Command Buttons":"Choisissez un espacement personnalis\xE9 pour les boutons de commande","Change the spacing between commands.":"Modifier l'espacement entre les commandes.",Warning:"Avertissement","As of Obsidian 0.16.0 you need to explicitly enable the Tab Title Bar. Once enabled, you might need to restart Obsidian.":"\xC0 partir d'Obsidian 0.16.0, vous devez activer explicitement la barre de titre des onglets. Une fois activ\xE9e, il se peut que vous deviez red\xE9marrer Obsidian.","Open Appearance Settings":"Ouvrir les param\xE8tres d'apparence",Explorer:"Explorateur"};var ro={};var so={};var co={};var mo={};var lo={};var uo={"Open Commander Settings":"Open Commander Instellingen","Open Macro Builder":"Open Macro Bouwer","Change Icon":"Verander Icoon",Rename:"Hernoem",Delete:"Verwijder","Add command":"Voeg commando toe","Add new":"Voeg nieuw commando toe","This Command seems to have been removed. {{command_name}}":"Het lijkt er op dat dit commando is verwijderd. {{command_name}}","Choose a Command to add":"Kies een commando om toe te voegen","to navigate":"naar navigatie","to choose an icon":"naar kies een icoon","to cancel":"naar annuleren","Use a custom name":"Gebruik een aangepaste naam","Choose a custom Name for your new Command":"Kies een aangepaste naam voor je nieuwe commando","to save":"naar opslaan","Choose a Icon for your new Command":"Kies een icoon voor je nieuwe commando","to choose a custom icon":"to choose a custom icon","Remove Command":"Verwijder commando","Double click to rename":"Dubbel klik om te hernoemen","This device":"Dit apparaat","Added by {{plugin_name}}.":"Toegevoegd door {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Waarschuwing: Dit is een aangevinkte opdracht, wat betekent dat deze mogelijk niet onder alle omstandigheden wordt uitgevoerd.","Move down":"Naar beneden","Move up":"Naar boven","Change Mode (Currently: {{current_mode}})":"Verander modus (Currently: {{current_mode}})","Are you sure you want to delete the Command?":"Weet je zeker dat je dit commando wilt verwijderen??","Remove and don't ask again":"Verwijder en vraag niet opnieuw",Remove:"Verwijder",Cancel:"Annuleer","Always ask before removing?":"Altijd vragen voor verwijderen?","Always show a Popup to confirm deletion of a Command.":"Laat altijd een venster zien om het verwijderen van een commando te bevestigen.",'Show "Add Command" Button':'Laat "Voeg Commando toe" knop zien','Show the "Add Command" Button in every Menu. Requires restart.':'Laat de "Voeg Commenado toe" knop zien in elk menu. Vereist herstart.',"Please restart Obsidian for these changes to take effect.":"Start Obsidian a.u.b. opnieuw op om deze wijzigingen toe te passen.","Enable debugging":"Activeer debugging","Enable console output.":"Activeer console output.",General:"Algemeen","Editor Menu":"Editor Menu","File Menu":"Bestand Menu","Left Ribbon":"Linkse Lint","Right Ribbon":"Rechtse Lint",Titlebar:"Titelbalk",Statusbar:"Statusbalk","Page Header":"Pagina Kop","Support development":"Steun ontwikkeling","No commands here!":"Geen commando's hier!","Would you like to add one now?":"Zou je er \xE9\xE9n willen toevoegen?","Hide Commands":"Verberg Commando's","Choose new":"Kies nieuw","Hide Commands of other Plugins":"Verberg Commando's van andere Plugins",Icon:"Icoon",Name:"Naam","Custom Name":"Aangepaste naam","Add command to all devices":"Voeg commando toe aan alle apparaten","Add command only to mobile devices":"Voeg commando toe aan alleen mobiele apparaten","Add command only to desktop devices":"Voeg commando toe aan alleen dekstop apparaten","Add command only to this device":"Voed commando toe aan alleen dit apparaat",Done:"Klaar","By Johnny\u2728 and phibr0":"Door Johnny\u2728 en phibr0","Leave feedback":"Laat feedback achter",Donate:"Doneer","Share feedback, issues, and ideas with our feedback form.":"Deel feedback, problemen en idee\xEBn met ons feedback formulier.","Consider donating to support development.":"Overweeg te doneren om ontwikkeling te steunen.",Save:"Opslaan","This Command is not available on this device.":"Dit Commando is niet beschikbaar op dit apparaat.",Show:"Laat zien",Hide:"Verberg","Hide other Commands":"Verberg andere Commando's","Double click to enter custom value":"Dubbel klik om een aangepaste waarde in te vullen","Choose custom spacing for Command Buttons":"Kies aangepaste regelafstand voor Commando Knoppen","Change the spacing between commands. You can set different values on mobile and desktop.":"Verander regelafstand tussen Commando's. Dit kan verschillen tussen mobiel en dekstop.",Warning:"Waarschuwing","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"Sinds Obsidian 0.16.0 moet je de kop expliciet inschakelen. Wanneer ingeschakeld moet je mogelijk Obsidian herstarten.","Open Appearance Settings":"Open Weergave Instellingen",Explorer:"Verkenner"};var po={};var fo={};var ho={};var vo={};var go={};var bo={"Open Commander Settings":'\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 "Commander"',"Open Macro Builder":"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u043C\u0430\u043A\u0440\u043E\u0441\u043E\u0432","Change Icon":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0437\u043D\u0430\u0447\u043E\u043A",Rename:"\u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C",Delete:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C","Add command":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443","Add new":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u043E\u0432\u0443\u044E \u043A\u043E\u043C\u0430\u043D\u0434\u0443","This Command seems to have been removed. {{command_name}}":"\u042D\u0442\u0430 \u043A\u043E\u043C\u0430\u043D\u0434\u0430, \u043A\u0430\u0436\u0435\u0442\u0441\u044F, \u0431\u044B\u043B\u0430 \u0443\u0434\u0430\u043B\u0435\u043D\u0430. {{command_name}}","Choose a Command to add":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0434\u043B\u044F \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u044F","to navigate":"\u0434\u043B\u044F \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438","to choose an icon":"\u0432\u044B\u0431\u0440\u0430\u0442\u044C \u0437\u043D\u0430\u0447\u043E\u043A","to cancel":"\u043E\u0442\u043C\u0435\u043D\u0438\u0442\u044C","Use a custom name":"\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0435 \u0438\u043C\u044F","Choose a custom Name for your new Command":"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0438\u043C\u044F \u0434\u043B\u044F \u0432\u0430\u0448\u0435\u0439 \u043D\u043E\u0432\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","to save":"\u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C","Choose a Icon for your new Command":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u043E\u043A \u0434\u043B\u044F \u0432\u0430\u0448\u0435\u0439 \u043D\u043E\u0432\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","to choose a custom icon":"\u0432\u044B\u0431\u0440\u0430\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u0437\u043D\u0430\u0447\u043E\u043A","Remove Command":"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443","Double click to rename":"\u0414\u0432\u0430\u0436\u0434\u044B \u0449\u0435\u043B\u043A\u043D\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u043F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C","This device":"\u042D\u0442\u043E \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u043E","Added by {{plugin_name}}.":"\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D \u043F\u043B\u0430\u0433\u0438\u043D\u043E\u043C {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435: \u044D\u0442\u043E \u043F\u0440\u043E\u0432\u0435\u0440\u0435\u043D\u043D\u0430\u044F \u043A\u043E\u043C\u0430\u043D\u0434\u0430, \u0442\u043E \u0435\u0441\u0442\u044C \u043E\u043D\u0430 \u043C\u043E\u0436\u0435\u0442 \u043D\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0442\u044C\u0441\u044F \u043F\u0440\u0438 \u043B\u044E\u0431\u044B\u0445 \u043E\u0431\u0441\u0442\u043E\u044F\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430\u0445.","Move down":"\u0412\u043D\u0438\u0437","Move up":"\u0412\u0432\u0435\u0440\u0445","Change Mode (Currently: {{current_mode}})":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0440\u0435\u0436\u0438\u043C (\u0421\u0435\u0439\u0447\u0430\u0441: {{current_mode}})","Are you sure you want to delete the Command?":"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443?","Remove and don't ask again":"\u0423\u0434\u0430\u043B\u0438\u0442\u0435 \u0438 \u0431\u043E\u043B\u044C\u0448\u0435 \u043D\u0435 \u0441\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0439\u0442\u0435",Remove:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C",Cancel:"\u041E\u0442\u043C\u0435\u043D\u0430","Always ask before removing?":"\u0412\u0441\u0435\u0433\u0434\u0430 \u0441\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044C \u043F\u0435\u0440\u0435\u0434 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435\u043C?","Always show a Popup to confirm deletion of a Command.":"\u0412\u0441\u0435\u0433\u0434\u0430 \u043F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u0432\u0441\u043F\u043B\u044B\u0432\u0430\u044E\u0449\u0435\u0435 \u043E\u043A\u043D\u043E \u0434\u043B\u044F \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u043A\u043E\u043C\u0430\u043D\u0434\u044B.",'Show "Add Command" Button':"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043A\u043D\u043E\u043F\u043A\u0443 \xAB\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443\xBB",'Show the "Add Command" Button in every Menu. Requires restart.':"\u041F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u043A\u043D\u043E\u043F\u043A\u0443 \xAB\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443\xBB \u0432 \u043A\u0430\u0436\u0434\u043E\u043C \u043C\u0435\u043D\u044E. \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F \u043F\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430.","Please restart Obsidian for these changes to take effect.":"\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u0435 Obsidian, \u0447\u0442\u043E\u0431\u044B \u044D\u0442\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0432\u0441\u0442\u0443\u043F\u0438\u043B\u0438 \u0432 \u0441\u0438\u043B\u0443.","Enable debugging":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043E\u0442\u043B\u0430\u0434\u043A\u0443","Enable console output.":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0432\u044B\u0432\u043E\u0434 \u043A\u043E\u043D\u0441\u043E\u043B\u0438.",General:"\u041E\u0431\u0449\u0435\u0435","Editor Menu":"\u041C\u0435\u043D\u044E \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430","File Menu":"\u041C\u0435\u043D\u044E \xAB\u0424\u0430\u0439\u043B\xBB","Left Ribbon":"\u041B\u0435\u0432\u0430\u044F \u041B\u0435\u043D\u0442\u0430","Right Ribbon":"\u041F\u0440\u0430\u0432\u0430\u044F \u041B\u0435\u043D\u0442\u0430",Titlebar:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A",Statusbar:"\u0421\u0442\u0430\u0442\u0443\u0441 \u0431\u0430\u0440","Page Header":"\u041F\u0430\u043D\u0435\u043B\u044C \u0432\u043A\u043B\u0430\u0434\u043E\u043A","Support development":"\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u043A\u0438","No commands here!":"\u0417\u0434\u0435\u0441\u044C \u043D\u0435\u0442 \u043A\u043E\u043C\u0430\u043D\u0434!","Would you like to add one now?":"\u0425\u043E\u0442\u0438\u0442\u0435 \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0435\u0439\u0447\u0430\u0441?","Hide Commands":"\u0421\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u044B","Choose new":"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u043D\u043E\u0432\u0443\u044E","Hide Commands of other Plugins":"\u0421\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u044B \u0434\u0440\u0443\u0433\u0438\u0445 \u043F\u043B\u0430\u0433\u0438\u043D\u043E\u0432",Icon:"\u0418\u043A\u043E\u043D\u043A\u0430",Name:"\u0418\u043C\u044F","Custom Name":"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0438\u043C\u044F","Add command to all devices":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u043D\u0430 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430","Add command only to mobile devices":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F \u043C\u043E\u0431\u0438\u043B\u044C\u043D\u044B\u0445 \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432","Add command only to desktop devices":'\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F "Desktop" \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432',"Add command only to this device":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u043D\u0430 \u044D\u0442\u043E \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u043E",Done:"\u0413\u043E\u0442\u043E\u0432\u043E","By Johnny\u2728 and phibr0":'\u0421\u0434\u0435\u043B\u0430\u043B\u0438: "Johnny\u2728" \u0438 "phibr0"',"Leave feedback":"\u041E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u0437\u044B\u0432",Donate:"\u041F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C","Share feedback, issues, and ideas with our feedback form.":"\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u043E\u0442\u0437\u044B\u0432\u0430\u043C\u0438, \u043F\u0440\u043E\u0431\u043B\u0435\u043C\u0430\u043C\u0438 \u0438 \u0438\u0434\u0435\u044F\u043C\u0438 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u043D\u0430\u0448\u0435\u0439 \u0444\u043E\u0440\u043C\u044B \u043E\u0431\u0440\u0430\u0442\u043D\u043E\u0439 \u0441\u0432\u044F\u0437\u0438.","Consider donating to support development.":"\u041F\u043E\u0434\u0443\u043C\u0430\u0439\u0442\u0435 \u043E \u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u043D\u0438\u0438 \u0434\u043B\u044F \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0438 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044F.",Save:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C","This Command is not available on this device.":"This Command is not available on this device.",Show:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",Hide:"\u0421\u043F\u0440\u044F\u0442\u0430\u0442\u044C","Hide other Commands":"\u0421\u043F\u0440\u044F\u0442\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u0438\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","Double click to enter custom value":"\u0414\u0432\u0430\u0436\u0434\u044B \u0449\u0435\u043B\u043A\u043D\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u0432\u0432\u0435\u0441\u0442\u0438 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435","Choose custom spacing for Command Buttons":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u0438\u043D\u0442\u0435\u0440\u0432\u0430\u043B \u043C\u0435\u0436\u0434\u0443 \u043A\u043E\u043C\u0430\u043D\u0434\u043D\u044B\u043C\u0438 \u043A\u043D\u043E\u043F\u043A\u0430\u043C\u0438","Change the spacing between commands. You can set different values on mobile and desktop.":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u0440\u0430\u0441\u0441\u0442\u043E\u044F\u043D\u0438\u0435 \u043C\u0435\u0436\u0434\u0443 \u043A\u043E\u043C\u0430\u043D\u0434\u0430\u043C\u0438.",Warning:"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"\u041D\u0430\u0447\u0438\u043D\u0430\u044F \u0441 Obsidian 0.16.0 \u0432\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u044F\u0432\u043D\u043E \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 \u0437\u0430\u0433\u043E\u043B\u043E\u0432\u043A\u0430 \u0432\u043A\u043B\u0430\u0434\u043A\u0438. \u041F\u043E\u0441\u043B\u0435 \u0432\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u044F \u0432\u0430\u043C \u043C\u043E\u0436\u0435\u0442 \u043F\u043E\u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C Obsidian.","Open Appearance Settings":"\u041E\u0442\u043A\u0440\u043E\u0439\u0442\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u0432\u0438\u0434\u0430",Explorer:"\u0424\u0430\u0439\u043B\u043E\u0432\u044B\u0439 \u043C\u0435\u043D\u0435\u0434\u0436\u0435\u0440"};var Co={};var _o={"Open Commander Settings":"\u6253\u5F00 Commander \u8BBE\u7F6E","Open Macro Builder":"\u6253\u5F00\u5B8F\u6307\u4EE4\u751F\u6210\u5668","Change Icon":"\u66F4\u6362\u56FE\u6807",Rename:"\u91CD\u547D\u540D",Delete:"\u5220\u9664","Add command":"\u6DFB\u52A0\u547D\u4EE4","Add new":"\u6DFB\u52A0\u65B0\u547D\u4EE4","This Command seems to have been removed. {{command_name}}":"\u8BE5\u547D\u4EE4\u4F3C\u4E4E\u5DF2\u88AB\u79FB\u9664\u3002{{command_name}}","Choose a Command to add":"\u9009\u62E9\u4E00\u4E2A\u547D\u4EE4\u5E76\u6DFB\u52A0","to navigate":"\u5BFC\u822A","to choose an icon":"\u9009\u4E2D\u4E00\u4E2A\u56FE\u6807","to cancel":"\u53D6\u6D88","Use a custom name":"\u4F7F\u7528\u4E00\u4E2A\u81EA\u5B9A\u4E49\u540D\u79F0","Choose a custom Name for your new Command":"\u4E3A\u4F60\u7684\u65B0\u547D\u4EE4\u9009\u62E9\u4E00\u4E2A\u81EA\u5B9A\u4E49\u540D\u79F0","to save":"\u4FDD\u5B58","Choose a Icon for your new Command":"\u4E3A\u4F60\u7684\u65B0\u547D\u4EE4\u9009\u62E9\u4E00\u4E2A\u56FE\u6807","to choose a custom icon":"\u9009\u62E9\u4E00\u4E2A\u81EA\u5B9A\u4E49\u56FE\u6807","Remove Command":"\u79FB\u9664\u547D\u4EE4","Double click to rename":"\u53CC\u51FB\u4EE5\u91CD\u547D\u540D","This device":"\u8BE5\u8BBE\u5907","Added by {{plugin_name}}.":"\u7531{{plugin_name}}\u6DFB\u52A0\u3002","Warning: This is a checked Command, meaning it might not run under every circumstance.":"\u8B66\u544A\uFF1A\u8FD9\u662F\u4E00\u4E2A\u53D7\u68C0\u7684\u547D\u4EE4\uFF0C\u8FD9\u610F\u5473\u7740\u5B83\u672A\u5FC5\u80FD\u5728\u6240\u4EE5\u73AF\u5883\u4E0B\u8FD0\u884C\u3002","Move down":"\u5411\u4E0B\u79FB\u52A8","Move up":"\u5411\u4E0A\u79FB\u52A8","Change Mode (Currently: {{current_mode}})":"\u5207\u6362\u6A21\u5F0F\uFF08\u5F53\u524D\uFF1A{{current_mode}}\uFF09","Are you sure you want to delete the Command?":"\u662F\u5426\u786E\u8BA4\u79FB\u9664\u8BE5\u547D\u4EE4\uFF1F","Remove and don't ask again":"\u79FB\u9664\u4E14\u4E0D\u8981\u518D\u8BE2\u95EE",Remove:"\u79FB\u9664",Cancel:"\u53D6\u6D88","Always ask before removing?":"\u5728\u79FB\u9664\u524D\u603B\u662F\u8BE2\u95EE\uFF1F","Always show a Popup to confirm deletion of a Command.":"\u5728\u786E\u8BA4\u79FB\u9664\u547D\u4EE4\u524D\u603B\u662F\u5F39\u7A97\u3002",'Show "Add Command" Button':"\u663E\u793A\u201C\u6DFB\u52A0\u547D\u4EE4\u201D\u6309\u94AE",'Show the "Add Command" Button in every Menu. Requires restart.':"\u5728\u6BCF\u4E2A\u83DC\u5355\u90FD\u5C55\u793A\u201C\u6DFB\u52A0\u547D\u4EE4\u201D\u6309\u94AE\u3002\u9700\u8981\u91CD\u542F\u3002","Please restart Obsidian for these changes to take effect.":"\u8BF7\u91CD\u542F Obsidian \u4EE5\u4F7F\u8FD9\u4E9B\u66F4\u6539\u751F\u6548\u3002","Enable debugging":"\u542F\u7528\u9664\u9519","Enable console output.":"\u542F\u7528\u63A7\u5236\u53F0\u8F93\u51FA\u3002",General:"\u901A\u7528","Editor Menu":"\u7F16\u8F91\u5668\u83DC\u5355","File Menu":"\u6587\u4EF6\u83DC\u5355","Left Ribbon":"\u5DE6\u4FA7\u8FB9\u680F","Right Ribbon":"\u53F3\u4FA7\u8FB9\u680F",Titlebar:"\u6807\u9898\u680F",Statusbar:"\u72B6\u6001\u680F","Page Header":"\u9875\u9996","Support development":"\u652F\u6301\u5F00\u53D1","No commands here!":"\u8FD9\u91CC\u6CA1\u6709\u547D\u4EE4\uFF01","Would you like to add one now?":"\u4F60\u73B0\u5728\u60F3\u8981\u52A0\u4E00\u4E2A\u5417\uFF1F","Hide Commands":"\u9690\u85CF\u547D\u4EE4","Choose new":"\u9009\u62E9\u65B0\u7684","Hide Commands of other Plugins":"\u9690\u85CF\u5176\u4ED6\u63D2\u4EF6\u7684\u547D\u4EE4",Icon:"\u56FE\u6807",Name:"\u540D\u79F0","Custom Name":"\u81EA\u5B9A\u4E49\u540D\u79F0","Add command to all devices":"\u5411\u6240\u6709\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to mobile devices":"\u53EA\u5411\u79FB\u52A8\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to desktop devices":"\u53EA\u5411\u684C\u9762\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to this device":"\u53EA\u5411\u5F53\u524D\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4",Done:"\u5B8C\u6210","By Johnny\u2728 and phibr0":"\u7531 Johnny\u2728 \u548C phibr0 \u5F00\u53D1","Leave feedback":"\u7559\u4E0B\u53CD\u9988",Donate:"\u6350\u8D60","Share feedback, issues, and ideas with our feedback form.":"\u4EE5\u6211\u4EEC\u7684\u53CD\u9988\u8868\uFF0C\u5206\u4EAB\u53CD\u9988\u3001\u8BAE\u9898\u6216\u8005\u4F60\u7684\u60F3\u6CD5\u3002","Consider donating to support development.":"\u8003\u8651\u6350\u8D60\u4EE5\u652F\u6301\u5F00\u53D1\u3002",Save:"\u4FDD\u5B58","This Command is not available on this device.":"\u8FD9\u4E00\u547D\u4EE4\u5728\u5F53\u524D\u8BBE\u5907\u4E0D\u53EF\u7528\u3002",Show:"\u663E\u793A",Hide:"\u9690\u85CF","Hide other Commands":"\u9690\u85CF\u5176\u4F59\u547D\u4EE4","Double click to enter custom value":"\u53CC\u51FB\u4EE5\u6DFB\u52A0\u81EA\u5B9A\u4E49\u503C","Choose custom spacing for Command Buttons":"\u4E3A\u547D\u4EE4\u6309\u94AE\u9009\u62E9\u81EA\u5B9A\u4E49\u95F4\u8DDD","Change the spacing between commands. You can set different values on mobile and desktop.":"\u6539\u53D8\u547D\u4EE4\u4E4B\u95F4\u7684\u95F4\u8DDD\u3002\u4F60\u53EF\u4EE5\u4E3A\u79FB\u52A8\u548C\u684C\u9762\u8BBE\u5907\u8BBE\u7F6E\u4E0D\u540C\u7684\u503C\u3002"};var yo={};var pa={ar:Qt,cs:eo,da:to,de:oo,en:gt,"en-gb":no,es:ao,fr:io,hi:ro,id:so,it:co,ja:mo,ko:lo,nl:uo,nn:po,pl:fo,pt:ho,"pt-br":vo,ro:go,ru:bo,tr:Co,"zh-cn":_o,"zh-tw":yo},bt=pa[Ct.moment.locale()];function u(t){return bt||console.error("Error: dictionary locale not found",Ct.moment.locale()),bt&&bt[t]||gt[t]}var ne=class extends Ve.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.commands=Object.values(e.app.commands.commands),this.setPlaceholder(u("Choose a Command to add")),this.setInstructions([{command:"\u2191\u2193",purpose:u("to navigate")},{command:"\u21B5",purpose:u("to choose an icon")},{command:"esc",purpose:u("to cancel")}])}async awaitSelection(){return this.open(),new Promise((e,n)=>{this.onChooseItem=a=>e(a),this.onClose=()=>window.setTimeout(()=>n("No Command selected"),0)})}renderSuggestion(e,n){if(n.addClass("mod-complex"),n.createDiv({cls:"suggestion-content"}).createDiv({cls:"suggestion-title"}).setText(e.item.name),e.item.icon){let i=n.createDiv({cls:"suggestion-aux"});(0,Ve.setIcon)(i.createSpan({cls:"suggestion-flair"}),e.item.icon)}}getItems(){return this.commands}getItemText(e){return e.name}onChooseItem(e,n){}};var We=require("obsidian"),wo={confirmDeletion:!0,showAddCommand:!0,debug:!1,editorMenu:[],fileMenu:[],leftRibbon:[],rightRibbon:[],titleBar:[],statusBar:[],pageHeader:[],macros:[],explorer:[],hide:{statusbar:[],leftRibbon:[]},spacing:8,advancedToolbar:{rowHeight:48,rowCount:1,spacing:0,buttonWidth:48,columnLayout:!1,mappedIcons:[],tooltips:!1,heightOffset:0}},ko=(0,We.requireApiVersion)("1.7.3")?(0,We.getIconIds)():["activity","airplay","alarm-check","alarm-clock-off","alarm-clock","alarm-minus","alarm-plus","album","alert-circle","alert-octagon","alert-triangle","align-center-horizontal","align-center-vertical","align-center","align-end-horizontal","align-end-vertical","align-horizontal-distribute-center","align-horizontal-distribute-end","align-horizontal-distribute-start","align-horizontal-justify-center","align-horizontal-justify-end","align-horizontal-justify-start","align-horizontal-space-around","align-horizontal-space-between","align-justify","align-left","align-right","align-start-horizontal","align-start-vertical","align-vertical-distribute-center","align-vertical-distribute-end","align-vertical-distribute-start","align-vertical-justify-center","align-vertical-justify-end","align-vertical-justify-start","align-vertical-space-around","align-vertical-space-between","anchor","aperture","archive","arrow-big-down","arrow-big-left","arrow-big-right","arrow-big-up","arrow-down-circle","arrow-down-left","arrow-down-right","arrow-down","arrow-left-circle","arrow-left-right","arrow-left","arrow-right-circle","arrow-right","arrow-up-circle","arrow-up-left","arrow-up-right","arrow-up","asterisk","at-sign","award","axe","banknote","bar-chart-2","bar-chart","baseline","battery-charging","battery-full","battery-low","battery-medium","battery","beaker","bell-minus","bell-off","bell-plus","bell-ring","bell","bike","binary","bitcoin","bluetooth-connected","bluetooth-off","bluetooth-searching","bluetooth","bold","book-open","book","bookmark-minus","bookmark-plus","bookmark","bot","box-select","box","briefcase","brush","bug","building-2","building","bus","calculator","calendar","camera-off","camera","car","carrot","cast","check-circle-2","check-circle","check-square","check","chevron-down","chevron-first","chevron-last","chevron-left","chevron-right","chevron-up","chevrons-down-up","chevrons-down","chevrons-left","chevrons-right","chevrons-up-down","chevrons-up","chrome","circle-slashed","circle","clipboard-check","clipboard-copy","clipboard-list","clipboard-x","clipboard","clock-1","clock-10","clock-11","clock-12","clock-2","clock-3","clock-4","clock-5","clock-6","clock-7","clock-8","clock-9","lucide-clock","cloud-drizzle","cloud-fog","cloud-hail","cloud-lightning","cloud-moon","cloud-off","cloud-rain-wind","cloud-rain","cloud-snow","cloud-sun","lucide-cloud","cloudy","clover","code-2","code","codepen","codesandbox","coffee","coins","columns","command","compass","contact","contrast","cookie","copy","copyleft","copyright","corner-down-left","corner-down-right","corner-left-down","corner-left-up","corner-right-down","corner-right-up","corner-up-left","corner-up-right","cpu","credit-card","crop","lucide-cross","crosshair","crown","currency","database","delete","dice-1","dice-2","dice-3","dice-4","dice-5","dice-6","disc","divide-circle","divide-square","divide","dollar-sign","download-cloud","download","dribbble","droplet","droplets","drumstick","edit-2","edit-3","edit","egg","equal-not","equal","eraser","euro","expand","external-link","eye-off","eye","facebook","fast-forward","feather","figma","file-check-2","file-check","file-code","file-digit","file-input","file-minus-2","file-minus","file-output","file-plus-2","file-plus","file-search","file-text","file-x-2","file-x","file","files","film","filter","flag-off","flag-triangle-left","flag-triangle-right","flag","flame","flashlight-off","flashlight","flask-conical","flask-round","folder-minus","folder-open","folder-plus","lucide-folder","form-input","forward","frame","framer","frown","function-square","gamepad-2","gamepad","gauge","gavel","gem","ghost","gift","git-branch-plus","git-branch","git-commit","git-fork","git-merge","git-pull-request","github","gitlab","glasses","globe-2","globe","grab","graduation-cap","grid","grip-horizontal","grip-vertical","hammer","hand-metal","hand","hard-drive","hard-hat","hash","haze","headphones","heart","help-circle","hexagon","highlighter","history","home","image-minus","image-off","image-plus","image","import","inbox","indent","indian-rupee","infinity","lucide-info","inspect","instagram","italic","japanese-yen","key","keyboard","landmark","lucide-languages","laptop-2","laptop","lasso-select","lasso","layers","layout-dashboard","layout-grid","layout-list","layout-template","layout","library","life-buoy","lightbulb-off","lightbulb","link-2-off","link-2","lucide-link","linkedin","list-checks","list-minus","list-ordered","list-plus","list-x","list","loader-2","loader","locate-fixed","locate-off","locate","lock","log-in","log-out","mail","map-pin","map","maximize-2","maximize","megaphone","meh","menu","message-circle","message-square","mic-off","mic","minimize-2","minimize","minus-circle","minus-square","minus","monitor-off","monitor-speaker","monitor","moon","more-horizontal","more-vertical","mountain-snow","mountain","mouse-pointer-2","mouse-pointer-click","mouse-pointer","mouse","move-diagonal-2","move-diagonal","move-horizontal","move-vertical","move","music","navigation-2","navigation","network","octagon","option","outdent","package-check","package-minus","package-plus","package-search","package-x","package","palette","palmtree","paperclip","pause-circle","pause-octagon","pause","pen-tool","lucide-pencil","percent","person-standing","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","phone","pie-chart","piggy-bank","lucide-pin","pipette","plane","play-circle","play","plug-zap","plus-circle","plus-square","plus","pocket","podcast","pointer","pound-sterling","power-off","power","printer","qr-code","quote","radio-receiver","radio","redo","refresh-ccw","refresh-cw","regex","repeat-1","repeat","reply-all","reply","rewind","rocket","rocking-chair","rotate-ccw","rotate-cw","rss","ruler","russian-ruble","save","scale","scan-line","scan","scissors","screen-share-off","screen-share","lucide-search","send","separator-horizontal","separator-vertical","server-crash","server-off","server","settings-2","settings","share-2","share","sheet","shield-alert","shield-check","shield-close","shield-off","shield","shirt","shopping-bag","shopping-cart","shovel","shrink","shuffle","sidebar-close","sidebar-open","sidebar","sigma","signal-high","signal-low","signal-medium","signal-zero","signal","skip-back","skip-forward","skull","slack","slash","sliders","smartphone-charging","smartphone","smile","snowflake","sort-asc","sort-desc","speaker","sprout","square","star-half","lucide-star","stop-circle","stretch-horizontal","stretch-vertical","strikethrough","subscript","sun","sunrise","sunset","superscript","swiss-franc","switch-camera","table","tablet","tag","target","tent","terminal-square","terminal","text-cursor-input","text-cursor","thermometer-snowflake","thermometer-sun","thermometer","thumbs-down","thumbs-up","ticket","timer-off","timer-reset","timer","toggle-left","toggle-right","tornado","trash-2","lucide-trash","trello","trending-down","trending-up","triangle","truck","tv-2","tv","twitch","twitter","type","umbrella","underline","undo","unlink-2","unlink","unlock","upload-cloud","upload","user-check","user-minus","user-plus","user-x","user","users","verified","vibrate","video-off","video","view","voicemail","volume-1","volume-2","volume-x","volume","wallet","wand","watch","waves","webcam","wifi-off","wifi","wind","wrap-text","wrench","x-circle","x-octagon","x-square","x","youtube","zap-off","zap","zoom-in","zoom-out","search-large"];var je=require("obsidian");var R=class extends je.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder(u("Choose a Icon for your new Command")),this.setInstructions([{command:"\u2191\u2193",purpose:u("to navigate")},{command:"\u21B5",purpose:u("to choose a custom icon")},{command:"esc",purpose:u("to cancel")}])}async awaitSelection(){return this.open(),new Promise((e,n)=>{this.onChooseItem=a=>e(a),this.onClose=()=>window.setTimeout(()=>n("No Icon selected"),0)})}renderSuggestion(e,n){n.addClass("mod-complex"),n.createDiv({cls:"suggestion-content"}).createDiv({cls:"suggestion-title"}).setText(e.item.replace("lucide-","").replace(/-/g," ").replace(/(^\w{1})|(\s+\w{1})/g,c=>c.toUpperCase()));let i=n.createDiv({cls:"suggestion-aux"});(0,je.setIcon)(i.createSpan({cls:"suggestion-flair"}),e.item)}getItems(){return ko}getItemText(e){return e}onChooseItem(e,n){}};var tt=require("obsidian");var Mo=require("obsidian");var U=class extends Mo.SuggestModal{constructor(e,n){super(n.app);this.defaultName=e;this.plugin=n;this.setPlaceholder(u("Use a custom name")),this.resultContainerEl.style.display="none",this.setInstructions([{command:"",purpose:u("Choose a custom Name for your new Command")},{command:"\u21B5",purpose:u("to save")},{command:"esc",purpose:u("to cancel")}])}onOpen(){var a;super.onOpen(),this.inputEl.value=this.defaultName;let e=createDiv({cls:"cmdr-name-input-wrapper"});(a=this.inputEl.parentNode)==null||a.insertBefore(e,this.inputEl),e.appendChild(this.inputEl),e.parentElement.style.display="block";let n=createEl("button",{text:u("Save"),cls:"mod-cta"});n.onclick=i=>this.selectSuggestion(this.inputEl.value,i),e.appendChild(n)}async awaitSelection(){return this.open(),new Promise((e,n)=>{this.onChooseSuggestion=a=>e(a),this.onClose=()=>window.setTimeout(()=>n("No Name selected"),0)})}getSuggestions(e){return[e]}renderSuggestion(e,n){}onChooseSuggestion(e,n){}};var Xe,_,Io,fa,_e,Eo,Ao,qe={},To=[],ha=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function ae(t,o){for(var e in o)t[e]=o[e];return t}function Lo(t){var o=t.parentNode;o&&o.removeChild(t)}function r(t,o,e){var n,a,i,c={};for(i in o)i=="key"?n=o[i]:i=="ref"?a=o[i]:c[i]=o[i];if(arguments.length>2&&(c.children=arguments.length>3?Xe.call(arguments,2):e),typeof t=="function"&&t.defaultProps!=null)for(i in t.defaultProps)c[i]===void 0&&(c[i]=t.defaultProps[i]);return Ue(t,c,n,a,null)}function Ue(t,o,e,n,a){var i={type:t,props:o,key:e,ref:n,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:a==null?++Io:a};return a==null&&_.vnode!=null&&_.vnode(i),i}function P(t){return t.children}function G(t,o){this.props=t,this.context=o}function ye(t,o){if(o==null)return t.__?ye(t.__,t.__.__k.indexOf(t)+1):null;for(var e;o0?Ue(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f)!=null){if(f.__=e,f.__b=e.__b+1,(b=A[s])===null||b&&f.key==b.key&&f.type===b.type)A[s]=void 0;else for(g=0;g=e.__.length&&e.__.push({__V:$e}),e.__[t]}function D(t){return Ke=1,Xo(Yo,t)}function Xo(t,o,e){var n=Qe(ke++,2);if(n.t=t,!n.__c&&(n.__=[e?e(o):Yo(void 0,o),function(i){var c=n.__N?n.__N[0]:n.__[0],m=n.t(c,i);c!==m&&(n.__N=[m,n.__[1]],n.__c.setState({}))}],n.__c=z,!z.u)){z.u=!0;var a=z.shouldComponentUpdate;z.shouldComponentUpdate=function(i,c,m){if(!n.__c.__H)return!0;var l=n.__c.__H.__.filter(function(s){return s.__c});if(l.every(function(s){return!s.__N}))return!a||a.call(this,i,c,m);var h=!1;return l.forEach(function(s){if(s.__N){var g=s.__[0];s.__=s.__N,s.__N=void 0,g!==s.__[0]&&(h=!0)}}),!(!h&&n.__c.props===i)&&(!a||a.call(this,i,c,m))}}return n.__N||n.__}function O(t,o){var e=Qe(ke++,3);!_.__s&&Et(e.__H,o)&&(e.__=t,e.i=o,z.__H.__h.push(e))}function Mt(t,o){var e=Qe(ke++,4);!_.__s&&Et(e.__H,o)&&(e.__=t,e.i=o,z.__h.push(e))}function K(t){return Ke=5,et(function(){return{current:t}},[])}function et(t,o){var e=Qe(ke++,7);return Et(e.__H,o)?(e.__V=t(),e.i=o,e.__h=t,e.__V):e.__}function Ca(){for(var t;t=Jo.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(Ge),t.__H.__h.forEach(kt),t.__H.__h=[]}catch(o){t.__H.__h=[],_.__e(o,t.__v)}}_.__b=function(t){z=null,Vo&&Vo(t)},_.__r=function(t){Wo&&Wo(t),ke=0;var o=(z=t.__c).__H;o&&(wt===z?(o.__h=[],z.__h=[],o.__.forEach(function(e){e.__N&&(e.__=e.__N),e.__V=$e,e.__N=e.i=void 0})):(o.__h.forEach(Ge),o.__h.forEach(kt),o.__h=[])),wt=z},_.diffed=function(t){jo&&jo(t);var o=t.__c;o&&o.__H&&(o.__H.__h.length&&(Jo.push(o)!==1&&Fo===_.requestAnimationFrame||((Fo=_.requestAnimationFrame)||_a)(Ca)),o.__H.__.forEach(function(e){e.i&&(e.__H=e.i),e.__V!==$e&&(e.__=e.__V),e.i=void 0,e.__V=$e})),wt=z=null},_.__c=function(t,o){o.some(function(e){try{e.__h.forEach(Ge),e.__h=e.__h.filter(function(n){return!n.__||kt(n)})}catch(n){o.some(function(a){a.__h&&(a.__h=[])}),o=[],_.__e(n,e.__v)}}),Uo&&Uo(t,o)},_.unmount=function(t){qo&&qo(t);var o,e=t.__c;e&&e.__H&&(e.__H.__.forEach(function(n){try{Ge(n)}catch(a){o=a}}),e.__H=void 0,o&&_.__e(o,e.__v))};var Zo=typeof requestAnimationFrame=="function";function _a(t){var o,e=function(){clearTimeout(n),Zo&&cancelAnimationFrame(o),setTimeout(t)},n=setTimeout(e,100);Zo&&(o=requestAnimationFrame(e))}function Ge(t){var o=z,e=t.__c;typeof e=="function"&&(t.__c=void 0,e()),z=o}function kt(t){var o=z;t.__c=t.__(),z=o}function Et(t,o){return!t||t.length!==o.length||o.some(function(e,n){return e!==t[n]})}function Yo(t,o){return typeof o=="function"?o(t):o}var xt={};(function t(o,e,n,a){var i=!!(o.Worker&&o.Blob&&o.Promise&&o.OffscreenCanvas&&o.OffscreenCanvasRenderingContext2D&&o.HTMLCanvasElement&&o.HTMLCanvasElement.prototype.transferControlToOffscreen&&o.URL&&o.URL.createObjectURL);function c(){}function m(p){var d=e.exports.Promise,S=d!==void 0?d:o.Promise;return typeof S=="function"?new S(p):(p(c,c),null)}var l=function(){var p=Math.floor(16.666666666666668),d,S,M={},T=0;return typeof requestAnimationFrame=="function"&&typeof cancelAnimationFrame=="function"?(d=function(I){var E=Math.random();return M[E]=requestAnimationFrame(function x(B){T===B||T+p-1o in t?Oe(t,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[o]=e,Fe=(t,o)=>{for(var e in o||(o={}))vt.call(o,e)&&Yt(t,e,o[e]);if(ze)for(var e of ze(o))$t.call(o,e)&&Yt(t,e,o[e]);return t},Gt=(t,o)=>Rn(t,On(o));var Kt=(t,o)=>{var e={};for(var n in t)vt.call(t,n)&&o.indexOf(n)<0&&(e[n]=t[n]);if(t!=null&&ze)for(var n of ze(t))o.indexOf(n)<0&&$t.call(t,n)&&(e[n]=t[n]);return e};var Vn=(t,o)=>{for(var e in o)Oe(t,e,{get:o[e],enumerable:!0})},Wn=(t,o,e,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let a of Fn(o))!vt.call(t,a)&&a!==e&&Oe(t,a,{get:()=>o[a],enumerable:!(n=zn(o,a))||n.enumerable});return t};var jn=t=>Wn(Oe({},"__esModule",{value:!0}),t);var Va={};Vn(Va,{default:()=>lt});module.exports=jn(Va);var Ve=require("obsidian");var Ct=require("obsidian");var Qt={};var eo={"Open Commander Settings":"Otev\u0159\xEDt nastaven\xED Commandera","Open Macro Builder":"Otev\u0159\xEDt tv\u016Frce Maker","Change Icon":"Zm\u011Bnit ikonu",Rename:"P\u0159ejmenovat",Delete:"Smazat","Add command":"P\u0159idat p\u0159\xEDkaz","Add new":"P\u0159idat nov\xFD","This Command seems to have been removed. {{command_name}}":"Tento p\u0159\xEDkaz se zd\xE1 b\xFDt odstran\u011Bn. {{command_name}}","Choose a Command to add":"Vyberte p\u0159\xEDkaz k p\u0159id\xE1n\xED","to navigate":"pro navigaci","to choose an icon":"pro v\xFDb\u011Br ikony","to cancel":"pro zru\u0161en\xED","Use a custom name":"Pou\u017E\xEDt vlastn\xED jm\xE9no","Choose a custom Name for your new Command":"Vyberte vlastn\xED jm\xE9no pro v\xE1\u0161 nov\xFD p\u0159\xEDkaz","to save":"pro ulo\u017Een\xED","Choose a Icon for your new Command":"Vyberte ikonu pro v\xE1\u0161 nov\xFD p\u0159\xEDkaz","to choose a custom icon":"pro v\xFDb\u011Br vlastn\xED ikony","Remove Command":"Odstranit p\u0159\xEDkaz","Double click to rename":"Pro p\u0159ejmenov\xE1n\xED dvakr\xE1t klikn\u011Bte","This device":"Toto za\u0159\xEDzen\xED","Added by {{plugin_name}}.":"P\u0159id\xE1no pomoc\xED {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Varov\xE1n\xED: Tento p\u0159\xEDkaz je kontrolov\xE1n a nemus\xED fungovat ve v\u0161ech p\u0159\xEDpadech.","Move down":"P\u0159esunout dol\u016F","Move up":"P\u0159esunout nahoru","Change Mode (Currently: {{current_mode}})":"Zm\u011Bnit re\u017Eim (Nyn\xED: {{current_mode}})","Are you sure you want to delete the Command?":"Opravdu chcete smazat tento p\u0159\xEDkaz?","Remove and don't ask again":"Odstranit a u\u017E se neptat",Remove:"Odstranit",Cancel:"Zru\u0161it","Always ask before removing?":"V\u017Edy se pt\xE1t p\u0159ed odstran\u011Bn\xEDm?","Always show a Popup to confirm deletion of a Command.":"V\u017Edy zobrazovat vyskakovac\xED okno pro potvrzen\xED odstran\u011Bn\xED p\u0159\xEDkazu.",'Show "Add Command" Button':'Zobrazit tla\u010D\xEDtko "P\u0159idat p\u0159\xEDkaz"','Show the "Add Command" Button in every Menu. Requires restart.':'Zobrazit tla\u010D\xEDtko "P\u0159idat p\u0159\xEDkaz" ve v\u0161ech nab\xEDdk\xE1ch. Vy\u017Eaduje restart.',"Please restart Obsidian for these changes to take effect.":"Pros\xEDm restartujte Obsidian, aby se zm\u011Bny projevily.","Enable debugging":"Povolit lad\u011Bn\xED","Enable console output.":"Povolit v\xFDstup do konzole.",General:"Obecn\xE9","Editor Menu":"Kontextov\xE1 nab\xEDdka v editoru","File Menu":"Nab\xEDdka souboru","Left Ribbon":"Lev\xFD Ribbon","Right Ribbon":"Prav\xFD Ribbon",Titlebar:"Li\u0161ta aplikace",Statusbar:"Stavov\xE1 li\u0161ta","Page Header":"Hlavi\u010Dka str\xE1nky","Support development":"Podpo\u0159te v\xFDvoj","No commands here!":"Nejsou zde \u017E\xE1dn\xE9 p\u0159\xEDkazy!","Would you like to add one now?":"Chcete nyn\xED jeden p\u0159idat?","Hide Commands":"Skr\xFDt p\u0159\xEDkazy","Choose new":"Vyberte nov\xFD","Hide Commands of other Plugins":"Skr\xFDt p\u0159\xEDkazy jin\xFDch roz\u0161\xED\u0159en\xED",Icon:"Ikona",Name:"N\xE1zev","Custom Name":"Vlastn\xED n\xE1zev","Add command to all devices":"P\u0159idat p\u0159\xEDkaz na v\u0161echna za\u0159\xEDzen\xED","Add command only to mobile devices":"P\u0159idat p\u0159\xEDkaz pouze na mobiln\xED za\u0159\xEDzen\xED","Add command only to desktop devices":"P\u0159idat p\u0159\xEDkaz pouze na stoln\xED za\u0159\xEDzen\xED","Add command only to this device":"P\u0159idat p\u0159\xEDkaz pouze na toto za\u0159\xEDzen\xED",Done:"Hotovo","By Johnny\u2728 and phibr0":"Vytvo\u0159il Johnny\u2728 a phibr0","Leave feedback":"Zanechat zp\u011Btnou vazbu",Donate:"P\u0159isp\u011Bt","Share feedback, issues, and ideas with our feedback form.":"Sd\xEDlejte zp\u011Btnou vazbu, probl\xE9my a n\xE1pady pomoc\xED na\u0161eho formul\xE1\u0159e.","Consider donating to support development.":"Zva\u017Ete p\u0159\xEDsp\u011Bvek na podporu v\xFDvoje.",Save:"Ulo\u017Eit","This Command is not available on this device.":"Tento p\u0159\xEDkaz nen\xED dostupn\xFD na tomto za\u0159\xEDzen\xED.",Show:"Zobrazit",Hide:"Skr\xFDt","Hide other Commands":"Skr\xFDt ostatn\xED p\u0159\xEDkazy","Double click to enter custom value":"Dvakr\xE1t klikn\u011Bte pro zad\xE1n\xED vlastn\xED hodnoty","Choose custom spacing for Command Buttons":"Vyberte vlastn\xED odsazen\xED pro tla\u010D\xEDtka p\u0159\xEDkaz\u016F","Change the spacing between commands. You can set different values on mobile and desktop.":"Zm\u011Bna odsazen\xED mezi p\u0159\xEDkazy. M\u016F\u017Eete nastavit r\u016Fzn\xE9 hodnoty na mobiln\xEDch a stoln\xEDch za\u0159\xEDzen\xEDch.",Warning:"Varov\xE1n\xED","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"Od verze Obsidian 0.16.0 je nutn\xE9 explicitn\u011B povolit z\xE1hlav\xED zobrazen\xED. Po povolen\xED je mo\u017En\xE9, \u017Ee budete muset restartovat Obsidian.","Open Appearance Settings":"Otev\u0159\xEDt nastaven\xED vzhledu",Explorer:"Pr\u016Fzkumn\xEDk"};var to={};var oo={"Open Commander Settings":"Commander Einstellungen \xF6ffnen","Open Macro Builder":"Makro Baukasten \xF6ffnen","Change Icon":"Symbol ver\xE4ndern",Rename:"Umbenennen",Delete:"L\xF6schen","Add command":"Befehl hinzuf\xFCgen","Add new":"Neuen Befehl hinzuf\xFCgen","This Command seems to have been removed. {{command_name}}":"Dieser Befehl wurde entfernt. {{command_name}}","Choose a Command to add":"W\xE4hle einen Befehl zum hinzuf\xFCgen","to navigate":"zum navigieren","to choose an icon":"um ein symbol auszuw\xE4hlen","to cancel":"zum abbrechen","Use a custom name":"Nutze einen benutzerdefinierten Namen","Choose a custom Name for your new Command":"W\xE4hle einen benutzerdefinierten Namen f\xFCr deinen neuen Befehl","to save":"zum speichern","Choose a Icon for your new Command":"W\xE4hle ein Symbol f\xFCr deinen neuen Befehl","to choose a custom icon":"um ein benutzerdefiniertes Symbol auszuw\xE4hlen","Remove Command":"Befehl entfernen","Double click to rename":"Zum umbenennen doppelklicken","This device":"Dieses Ger\xE4t","Added by {{plugin_name}}.":"Hinzugef\xFCgt von {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Warnung: Dieser Befehl wird nur unter bestimmten Vorraussetzungen ausgef\xFChrt.","Move down":"Nach unten","Move up":"Nach oben","Change Mode (Currently: {{current_mode}})":"Modus ver\xE4ndern (Momentan: {{current_mode}})","Are you sure you want to delete the Command?":"Bist du dir sicher, dass du diesen Befehl entfernen m\xF6chtest?","Remove and don't ask again":"Entfernen und Auswahl speichern",Remove:"Entfernen",Cancel:"Abbrechen","Always ask before removing?":"Immer fragen, bevor ein Befehl gel\xF6scht wird?","Always show a Popup to confirm deletion of a Command.":"Zeige immer ein Popup um L\xF6schen zu best\xE4tigen.",'Show "Add Command" Button':'Zeige "Befehl hinzuf\xFCgen" Knopf','Show the "Add Command" Button in every Menu. Requires restart.':'Zeige den "Befehl hinzuf\xFCgen" Knopf in jedem Men\xFC. Erfordert neustart.',"Please restart Obsidian for these changes to take effect.":"Bitte starte Obsidian neu, damit diese \xC4nderungen in Kraft treten.","Enable debugging":"Aktiviere debugging","Enable console output.":"Aktiviere Konsolen-Output (F\xFCr Entwickler)",General:"Allgemein","Editor Menu":"Editor-Men\xFC","File Menu":"Datei-Men\xFC","Left Ribbon":"Band","Right Ribbon":"Rechtes Band",Titlebar:"Titelleiste",Statusbar:"Statusleiste","Page Header":"Kopfzeile","Support development":"Entwicklung unterst\xFCtzen","No commands here!":"Keine Befehle da!","Would you like to add one now?":"M\xF6chtest du jetzt einen hinzuf\xFCgen?","Hide Commands":"Befehle verstecken","Choose new":"W\xE4hle neu","Hide Commands of other Plugins":"Hide Commands of other Plugins",Icon:"Symbol",Name:"Name","Custom Name":"Benutzerdefinierter Name","Add command to all devices":"F\xFCge Befehl allen Ger\xE4ten hinzu","Add command only to mobile devices":"F\xFCge Befehl nur Mobilen Ger\xE4ten hinzu","Add command only to desktop devices":"F\xFCge Befehl nur Desktop Ger\xE4ten hinzu","Add command only to this device":"F\xFCge Befehl nur diesem Ger\xE4t hinzu",Done:"Fertig","By Johnny\u2728 and phibr0":"Von Johnny\u2728 und phibr0","Leave feedback":"Feedback geben",Donate:"Spenden","Share feedback, issues, and ideas with our feedback form.":"Teile Feedback, Probleme und Ideen mit unserem Feedback Formular!","Consider donating to support development.":"Spende um die Entwicklung zu unterst\xFCtzen.",Save:"Speichern","This Command is not available on this device.":"Dieser Befehl ist auf diesem Ger\xE4t nicht verf\xFCgbar.",Show:"Anzeigen",Hide:"Verstecken","Hide other Commands":"Andere Befehle verstecken","Double click to enter custom value":"Doppelklicken um eigenen Wert einzutragen","Choose custom spacing for Command Buttons":"W\xE4hle den Abstand zwischen Befehlen","Change the spacing between commands. You can set different values on mobile and desktop.":"Ver\xE4ndert den Abstand zwischen Befehlen.",Warning:"Achtung","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":'Ab Obsidian Version 0.16.0 m\xFCssen Sie den "View Header" explizit aktivieren. Anschlie\xDFend muss Obsidian neugestartet werden.',"Open Appearance Settings":"\xD6ffne Darstellungs-Einstellungen",Explorer:"Explorer"};var gt={"Open Commander Settings":"Open Commander Settings","Open Macro Builder":"Open Macro Builder","Change Icon":"Change Icon",Rename:"Rename",Delete:"Delete","Add command":"Add command","Add new":"Add new command","This Command seems to have been removed. {{command_name}}":"This Command seems to have been removed. {{command_name}}","Choose a Command to add":"Choose a Command to add","to navigate":"to navigate","to choose an icon":"to choose an icon","to cancel":"to cancel","Use a custom name":"Use a custom name","Choose a custom Name for your new Command":"Choose a custom Name for your new Command","to save":"to save","Choose a Icon for your new Command":"Choose a Icon for your new Command","to choose a custom icon":"to choose a custom icon","Remove Command":"Remove Command","Double click to rename":"Double click to rename","This device":"This device","Added by {{plugin_name}}.":"Added by {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Warning: This is a checked Command, meaning it might not run under every circumstance.","Move down":"Move down","Move up":"Move up","Change Mode (Currently: {{current_mode}})":"Change Mode (Currently: {{current_mode}})","Are you sure you want to delete the Command?":"Are you sure you want to delete the Command?","Remove and don't ask again":"Remove and don't ask again",Remove:"Remove",Cancel:"Cancel","Always ask before removing?":"Always ask before removing?","Always show a Popup to confirm deletion of a Command.":"Always show a Popup to confirm deletion of a Command.",'Show "Add Command" Button':'Show "Add Command" Button','Show the "Add Command" Button in every Menu. Requires restart.':'Show the "Add Command" Button in every Menu. Requires restart.',"Please restart Obsidian for these changes to take effect.":"Please restart Obsidian for these changes to take effect.","Enable debugging":"Enable debugging","Enable console output.":"Enable console output.",General:"General","Editor Menu":"Editor Menu","File Menu":"File Menu","Left Ribbon":"Ribbon","Right Ribbon":"Right Ribbon",Titlebar:"Titlebar",Statusbar:"Status Bar","Page Header":"Tab Bar","Support development":"Support development","No commands here!":"No commands here!","Would you like to add one now?":"Would you like to add one now?","Hide Commands":"Hide Commands","Choose new":"Choose new","Hide Commands of other Plugins":"Hide Commands of other Plugins",Icon:"Icon",Name:"Name","Custom Name":"Custom Name","Add command to all devices":"Add command to all devices","Add command only to mobile devices":"Add command only to mobile devices","Add command only to desktop devices":"Add command only to desktop devices","Add command only to this device":"Add command only to this device",Done:"Done","By Johnny\u2728 and phibr0":"By Johnny\u2728 and phibr0","Leave feedback":"Leave feedback",Donate:"Donate","Share feedback, issues, and ideas with our feedback form.":"Share feedback, issues, and ideas with our feedback form.","Consider donating to support development.":"Consider donating to support development.",Save:"Save","This Command is not available on this device.":"This Command is not available on this device.",Show:"Show",Hide:"Hide","Hide other Commands":"Hide other Commands","Double click to enter custom value":"Double click to enter custom value","Choose custom spacing for Command Buttons":"Choose custom spacing for Command Buttons","Change the spacing between commands. You can set different values on mobile and desktop.":"Change the spacing between commands.",Warning:"Warning","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"As of Obsidian 0.16.0 you need to explicitly enable the Tab Title Bar. Once enabled, you might need to restart Obsidian.","Open Appearance Settings":"Open Appearance Settings",Explorer:"Explorer"};var no={};var ao={};var io={"Open Commander Settings":"Ouvrir les param\xE8tres de Commander","Open Macro Builder":"Ouvrir le constructeur de Macro","Change Icon":"Changer l'ic\xF4ne",Rename:"Renommer",Delete:"Supprimer","Add command":"Ajouter une commande","Add new":"Ajouter une nouvelle commande","This Command seems to have been removed. {{command_name}}":"Cette commande semble avoir \xE9t\xE9 supprim\xE9e. {{command_name}}","Choose a Command to add":"Choisissez une commande \xE0 ajouter","to navigate":"pour naviguer","to choose an icon":"pour choisir une ic\xF4ne","to cancel":"pour annuler","Use a custom name":"Utiliser un nom personnalis\xE9","Choose a custom Name for your new Command":"Choisissez un nom personnalis\xE9 pour votre nouvelle commande","to save":"pour enregistrer","Choose a Icon for your new Command":"Choisissez une ic\xF4ne pour votre nouvelle commande","to choose a custom icon":"pour choisir une ic\xF4ne personnalis\xE9e","Remove Command":"Supprimer la commande","Double click to rename":"Double-cliquez pour renommer","This device":"Cet appareil","Added by {{plugin_name}}.":"Ajout\xE9 par {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Attention : Cette commande est coch\xE9e, ce qui signifie qu'elle pourrait ne pas fonctionner dans toutes les situations.","Move down":"Descendre","Move up":"Monter","Change Mode (Currently: {{current_mode}})":"Changer de mode (Actuellement : {{current_mode}})","Are you sure you want to delete the Command?":"\xCAtes-vous s\xFBr de vouloir supprimer la commande ?","Remove and don't ask again":"Supprimer et ne plus demander",Remove:"Supprimer",Cancel:"Annuler","Always ask before removing?":"Toujours demander avant de supprimer ?","Always show a Popup to confirm deletion of a Command.":"Toujours afficher une fen\xEAtre contextuelle pour confirmer la suppression d'une commande.",'Show "Add Command" Button':'Afficher le bouton "Ajouter une commande"','Show the "Add Command" Button in every Menu. Requires restart.':'Afficher le bouton "Ajouter une commande" dans chaque menu. N\xE9cessite un red\xE9marrage.',"Please restart Obsidian for these changes to take effect.":"Veuillez red\xE9marrer Obsidian pour que ces modifications prennent effet.","Enable debugging":"Activer le d\xE9bogage","Enable console output.":"Activer la sortie console.",General:"G\xE9n\xE9ral","Editor Menu":"Menu \xE9diteur","File Menu":"Menu fichier","Left Ribbon":"Ruban gauche","Right Ribbon":"Ruban droit",Titlebar:"Barre de titre",Statusbar:"Barre d'\xE9tat","Page Header":"En-t\xEAte de page","Support development":"Soutenir le d\xE9veloppement","No commands here!":"Aucune commande ici !","Would you like to add one now?":"Voulez-vous en ajouter une maintenant ?","Hide Commands":"Masquer les commandes","Choose new":"Choisir nouveau","Hide Commands of other Plugins":"Masquer les commandes d'autres plugins",Icon:"Ic\xF4ne",Name:"Nom","Custom Name":"Nom personnalis\xE9","Add command to all devices":"Ajouter la commande \xE0 tous les appareils","Add command only to mobile devices":"Ajouter la commande uniquement sur les appareils mobiles","Add command only to desktop devices":"Ajouter la commande uniquement sur les ordinateurs de bureau","Add command only to this device":"Ajouter la commande uniquement sur cet appareil",Done:"Termin\xE9","By Johnny\u2728 and phibr0":"Par Johnny\u2728 et phibr0","Leave feedback":"Laisser un commentaire",Donate:"Faire un don","Share feedback, issues, and ideas with our feedback form.":"Partagez vos commentaires, probl\xE8mes et id\xE9es avec notre formulaire de retour d'information.","Consider donating to support development.":"Envisagez de faire un don pour soutenir le d\xE9veloppement.",Save:"Enregistrer","This Command is not available on this device.":"Cette commande n'est pas disponible sur cet appareil.",Show:"Afficher",Hide:"Masquer","Hide other Commands":"Masquer les autres commandes","Double click to enter custom value":"Double-cliquez pour entrer une valeur personnalis\xE9e","Choose custom spacing for Command Buttons":"Choisissez un espacement personnalis\xE9 pour les boutons de commande","Change the spacing between commands.":"Modifier l'espacement entre les commandes.",Warning:"Avertissement","As of Obsidian 0.16.0 you need to explicitly enable the Tab Title Bar. Once enabled, you might need to restart Obsidian.":"\xC0 partir d'Obsidian 0.16.0, vous devez activer explicitement la barre de titre des onglets. Une fois activ\xE9e, il se peut que vous deviez red\xE9marrer Obsidian.","Open Appearance Settings":"Ouvrir les param\xE8tres d'apparence",Explorer:"Explorateur"};var ro={};var so={};var co={};var mo={};var lo={};var uo={"Open Commander Settings":"Open Commander Instellingen","Open Macro Builder":"Open Macro Bouwer","Change Icon":"Verander Icoon",Rename:"Hernoem",Delete:"Verwijder","Add command":"Voeg commando toe","Add new":"Voeg nieuw commando toe","This Command seems to have been removed. {{command_name}}":"Het lijkt er op dat dit commando is verwijderd. {{command_name}}","Choose a Command to add":"Kies een commando om toe te voegen","to navigate":"naar navigatie","to choose an icon":"naar kies een icoon","to cancel":"naar annuleren","Use a custom name":"Gebruik een aangepaste naam","Choose a custom Name for your new Command":"Kies een aangepaste naam voor je nieuwe commando","to save":"naar opslaan","Choose a Icon for your new Command":"Kies een icoon voor je nieuwe commando","to choose a custom icon":"to choose a custom icon","Remove Command":"Verwijder commando","Double click to rename":"Dubbel klik om te hernoemen","This device":"Dit apparaat","Added by {{plugin_name}}.":"Toegevoegd door {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Waarschuwing: Dit is een aangevinkte opdracht, wat betekent dat deze mogelijk niet onder alle omstandigheden wordt uitgevoerd.","Move down":"Naar beneden","Move up":"Naar boven","Change Mode (Currently: {{current_mode}})":"Verander modus (Currently: {{current_mode}})","Are you sure you want to delete the Command?":"Weet je zeker dat je dit commando wilt verwijderen??","Remove and don't ask again":"Verwijder en vraag niet opnieuw",Remove:"Verwijder",Cancel:"Annuleer","Always ask before removing?":"Altijd vragen voor verwijderen?","Always show a Popup to confirm deletion of a Command.":"Laat altijd een venster zien om het verwijderen van een commando te bevestigen.",'Show "Add Command" Button':'Laat "Voeg Commando toe" knop zien','Show the "Add Command" Button in every Menu. Requires restart.':'Laat de "Voeg Commenado toe" knop zien in elk menu. Vereist herstart.',"Please restart Obsidian for these changes to take effect.":"Start Obsidian a.u.b. opnieuw op om deze wijzigingen toe te passen.","Enable debugging":"Activeer debugging","Enable console output.":"Activeer console output.",General:"Algemeen","Editor Menu":"Editor Menu","File Menu":"Bestand Menu","Left Ribbon":"Linkse Lint","Right Ribbon":"Rechtse Lint",Titlebar:"Titelbalk",Statusbar:"Statusbalk","Page Header":"Pagina Kop","Support development":"Steun ontwikkeling","No commands here!":"Geen commando's hier!","Would you like to add one now?":"Zou je er \xE9\xE9n willen toevoegen?","Hide Commands":"Verberg Commando's","Choose new":"Kies nieuw","Hide Commands of other Plugins":"Verberg Commando's van andere Plugins",Icon:"Icoon",Name:"Naam","Custom Name":"Aangepaste naam","Add command to all devices":"Voeg commando toe aan alle apparaten","Add command only to mobile devices":"Voeg commando toe aan alleen mobiele apparaten","Add command only to desktop devices":"Voeg commando toe aan alleen dekstop apparaten","Add command only to this device":"Voed commando toe aan alleen dit apparaat",Done:"Klaar","By Johnny\u2728 and phibr0":"Door Johnny\u2728 en phibr0","Leave feedback":"Laat feedback achter",Donate:"Doneer","Share feedback, issues, and ideas with our feedback form.":"Deel feedback, problemen en idee\xEBn met ons feedback formulier.","Consider donating to support development.":"Overweeg te doneren om ontwikkeling te steunen.",Save:"Opslaan","This Command is not available on this device.":"Dit Commando is niet beschikbaar op dit apparaat.",Show:"Laat zien",Hide:"Verberg","Hide other Commands":"Verberg andere Commando's","Double click to enter custom value":"Dubbel klik om een aangepaste waarde in te vullen","Choose custom spacing for Command Buttons":"Kies aangepaste regelafstand voor Commando Knoppen","Change the spacing between commands. You can set different values on mobile and desktop.":"Verander regelafstand tussen Commando's. Dit kan verschillen tussen mobiel en dekstop.",Warning:"Waarschuwing","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"Sinds Obsidian 0.16.0 moet je de kop expliciet inschakelen. Wanneer ingeschakeld moet je mogelijk Obsidian herstarten.","Open Appearance Settings":"Open Weergave Instellingen",Explorer:"Verkenner"};var po={};var fo={};var ho={};var vo={};var go={};var bo={"Open Commander Settings":'\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 "Commander"',"Open Macro Builder":"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u043C\u0430\u043A\u0440\u043E\u0441\u043E\u0432","Change Icon":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0437\u043D\u0430\u0447\u043E\u043A",Rename:"\u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C",Delete:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C","Add command":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443","Add new":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u043E\u0432\u0443\u044E \u043A\u043E\u043C\u0430\u043D\u0434\u0443","This Command seems to have been removed. {{command_name}}":"\u042D\u0442\u0430 \u043A\u043E\u043C\u0430\u043D\u0434\u0430, \u043A\u0430\u0436\u0435\u0442\u0441\u044F, \u0431\u044B\u043B\u0430 \u0443\u0434\u0430\u043B\u0435\u043D\u0430. {{command_name}}","Choose a Command to add":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0434\u043B\u044F \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u044F","to navigate":"\u0434\u043B\u044F \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438","to choose an icon":"\u0432\u044B\u0431\u0440\u0430\u0442\u044C \u0437\u043D\u0430\u0447\u043E\u043A","to cancel":"\u043E\u0442\u043C\u0435\u043D\u0438\u0442\u044C","Use a custom name":"\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0435 \u0438\u043C\u044F","Choose a custom Name for your new Command":"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0438\u043C\u044F \u0434\u043B\u044F \u0432\u0430\u0448\u0435\u0439 \u043D\u043E\u0432\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","to save":"\u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C","Choose a Icon for your new Command":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u043E\u043A \u0434\u043B\u044F \u0432\u0430\u0448\u0435\u0439 \u043D\u043E\u0432\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","to choose a custom icon":"\u0432\u044B\u0431\u0440\u0430\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u0437\u043D\u0430\u0447\u043E\u043A","Remove Command":"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443","Double click to rename":"\u0414\u0432\u0430\u0436\u0434\u044B \u0449\u0435\u043B\u043A\u043D\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u043F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C","This device":"\u042D\u0442\u043E \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u043E","Added by {{plugin_name}}.":"\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D \u043F\u043B\u0430\u0433\u0438\u043D\u043E\u043C {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435: \u044D\u0442\u043E \u043F\u0440\u043E\u0432\u0435\u0440\u0435\u043D\u043D\u0430\u044F \u043A\u043E\u043C\u0430\u043D\u0434\u0430, \u0442\u043E \u0435\u0441\u0442\u044C \u043E\u043D\u0430 \u043C\u043E\u0436\u0435\u0442 \u043D\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0442\u044C\u0441\u044F \u043F\u0440\u0438 \u043B\u044E\u0431\u044B\u0445 \u043E\u0431\u0441\u0442\u043E\u044F\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430\u0445.","Move down":"\u0412\u043D\u0438\u0437","Move up":"\u0412\u0432\u0435\u0440\u0445","Change Mode (Currently: {{current_mode}})":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0440\u0435\u0436\u0438\u043C (\u0421\u0435\u0439\u0447\u0430\u0441: {{current_mode}})","Are you sure you want to delete the Command?":"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443?","Remove and don't ask again":"\u0423\u0434\u0430\u043B\u0438\u0442\u0435 \u0438 \u0431\u043E\u043B\u044C\u0448\u0435 \u043D\u0435 \u0441\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0439\u0442\u0435",Remove:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C",Cancel:"\u041E\u0442\u043C\u0435\u043D\u0430","Always ask before removing?":"\u0412\u0441\u0435\u0433\u0434\u0430 \u0441\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044C \u043F\u0435\u0440\u0435\u0434 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435\u043C?","Always show a Popup to confirm deletion of a Command.":"\u0412\u0441\u0435\u0433\u0434\u0430 \u043F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u0432\u0441\u043F\u043B\u044B\u0432\u0430\u044E\u0449\u0435\u0435 \u043E\u043A\u043D\u043E \u0434\u043B\u044F \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u043A\u043E\u043C\u0430\u043D\u0434\u044B.",'Show "Add Command" Button':"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043A\u043D\u043E\u043F\u043A\u0443 \xAB\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443\xBB",'Show the "Add Command" Button in every Menu. Requires restart.':"\u041F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u043A\u043D\u043E\u043F\u043A\u0443 \xAB\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443\xBB \u0432 \u043A\u0430\u0436\u0434\u043E\u043C \u043C\u0435\u043D\u044E. \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F \u043F\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430.","Please restart Obsidian for these changes to take effect.":"\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u0435 Obsidian, \u0447\u0442\u043E\u0431\u044B \u044D\u0442\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0432\u0441\u0442\u0443\u043F\u0438\u043B\u0438 \u0432 \u0441\u0438\u043B\u0443.","Enable debugging":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043E\u0442\u043B\u0430\u0434\u043A\u0443","Enable console output.":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0432\u044B\u0432\u043E\u0434 \u043A\u043E\u043D\u0441\u043E\u043B\u0438.",General:"\u041E\u0431\u0449\u0435\u0435","Editor Menu":"\u041C\u0435\u043D\u044E \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430","File Menu":"\u041C\u0435\u043D\u044E \xAB\u0424\u0430\u0439\u043B\xBB","Left Ribbon":"\u041B\u0435\u0432\u0430\u044F \u041B\u0435\u043D\u0442\u0430","Right Ribbon":"\u041F\u0440\u0430\u0432\u0430\u044F \u041B\u0435\u043D\u0442\u0430",Titlebar:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A",Statusbar:"\u0421\u0442\u0430\u0442\u0443\u0441 \u0431\u0430\u0440","Page Header":"\u041F\u0430\u043D\u0435\u043B\u044C \u0432\u043A\u043B\u0430\u0434\u043E\u043A","Support development":"\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u043A\u0438","No commands here!":"\u0417\u0434\u0435\u0441\u044C \u043D\u0435\u0442 \u043A\u043E\u043C\u0430\u043D\u0434!","Would you like to add one now?":"\u0425\u043E\u0442\u0438\u0442\u0435 \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0435\u0439\u0447\u0430\u0441?","Hide Commands":"\u0421\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u044B","Choose new":"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u043D\u043E\u0432\u0443\u044E","Hide Commands of other Plugins":"\u0421\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u044B \u0434\u0440\u0443\u0433\u0438\u0445 \u043F\u043B\u0430\u0433\u0438\u043D\u043E\u0432",Icon:"\u0418\u043A\u043E\u043D\u043A\u0430",Name:"\u0418\u043C\u044F","Custom Name":"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0438\u043C\u044F","Add command to all devices":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u043D\u0430 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430","Add command only to mobile devices":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F \u043C\u043E\u0431\u0438\u043B\u044C\u043D\u044B\u0445 \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432","Add command only to desktop devices":'\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F "Desktop" \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432',"Add command only to this device":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u043D\u0430 \u044D\u0442\u043E \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u043E",Done:"\u0413\u043E\u0442\u043E\u0432\u043E","By Johnny\u2728 and phibr0":'\u0421\u0434\u0435\u043B\u0430\u043B\u0438: "Johnny\u2728" \u0438 "phibr0"',"Leave feedback":"\u041E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u0437\u044B\u0432",Donate:"\u041F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C","Share feedback, issues, and ideas with our feedback form.":"\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u043E\u0442\u0437\u044B\u0432\u0430\u043C\u0438, \u043F\u0440\u043E\u0431\u043B\u0435\u043C\u0430\u043C\u0438 \u0438 \u0438\u0434\u0435\u044F\u043C\u0438 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u043D\u0430\u0448\u0435\u0439 \u0444\u043E\u0440\u043C\u044B \u043E\u0431\u0440\u0430\u0442\u043D\u043E\u0439 \u0441\u0432\u044F\u0437\u0438.","Consider donating to support development.":"\u041F\u043E\u0434\u0443\u043C\u0430\u0439\u0442\u0435 \u043E \u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u043D\u0438\u0438 \u0434\u043B\u044F \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0438 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044F.",Save:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C","This Command is not available on this device.":"This Command is not available on this device.",Show:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",Hide:"\u0421\u043F\u0440\u044F\u0442\u0430\u0442\u044C","Hide other Commands":"\u0421\u043F\u0440\u044F\u0442\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u0438\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","Double click to enter custom value":"\u0414\u0432\u0430\u0436\u0434\u044B \u0449\u0435\u043B\u043A\u043D\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u0432\u0432\u0435\u0441\u0442\u0438 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435","Choose custom spacing for Command Buttons":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u0438\u043D\u0442\u0435\u0440\u0432\u0430\u043B \u043C\u0435\u0436\u0434\u0443 \u043A\u043E\u043C\u0430\u043D\u0434\u043D\u044B\u043C\u0438 \u043A\u043D\u043E\u043F\u043A\u0430\u043C\u0438","Change the spacing between commands. You can set different values on mobile and desktop.":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u0440\u0430\u0441\u0441\u0442\u043E\u044F\u043D\u0438\u0435 \u043C\u0435\u0436\u0434\u0443 \u043A\u043E\u043C\u0430\u043D\u0434\u0430\u043C\u0438.",Warning:"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"\u041D\u0430\u0447\u0438\u043D\u0430\u044F \u0441 Obsidian 0.16.0 \u0432\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u044F\u0432\u043D\u043E \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 \u0437\u0430\u0433\u043E\u043B\u043E\u0432\u043A\u0430 \u0432\u043A\u043B\u0430\u0434\u043A\u0438. \u041F\u043E\u0441\u043B\u0435 \u0432\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u044F \u0432\u0430\u043C \u043C\u043E\u0436\u0435\u0442 \u043F\u043E\u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C Obsidian.","Open Appearance Settings":"\u041E\u0442\u043A\u0440\u043E\u0439\u0442\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u0432\u0438\u0434\u0430",Explorer:"\u0424\u0430\u0439\u043B\u043E\u0432\u044B\u0439 \u043C\u0435\u043D\u0435\u0434\u0436\u0435\u0440"};var Co={};var _o={"Open Commander Settings":"\u6253\u5F00 Commander \u8BBE\u7F6E","Open Macro Builder":"\u6253\u5F00\u5B8F\u6307\u4EE4\u751F\u6210\u5668","Change Icon":"\u66F4\u6362\u56FE\u6807",Rename:"\u91CD\u547D\u540D",Delete:"\u5220\u9664","Add command":"\u6DFB\u52A0\u547D\u4EE4","Add new":"\u6DFB\u52A0\u65B0\u547D\u4EE4","This Command seems to have been removed. {{command_name}}":"\u8BE5\u547D\u4EE4\u4F3C\u4E4E\u5DF2\u88AB\u79FB\u9664\u3002{{command_name}}","Choose a Command to add":"\u9009\u62E9\u4E00\u4E2A\u547D\u4EE4\u5E76\u6DFB\u52A0","to navigate":"\u5BFC\u822A","to choose an icon":"\u9009\u4E2D\u4E00\u4E2A\u56FE\u6807","to cancel":"\u53D6\u6D88","Use a custom name":"\u4F7F\u7528\u4E00\u4E2A\u81EA\u5B9A\u4E49\u540D\u79F0","Choose a custom Name for your new Command":"\u4E3A\u4F60\u7684\u65B0\u547D\u4EE4\u9009\u62E9\u4E00\u4E2A\u81EA\u5B9A\u4E49\u540D\u79F0","to save":"\u4FDD\u5B58","Choose a Icon for your new Command":"\u4E3A\u4F60\u7684\u65B0\u547D\u4EE4\u9009\u62E9\u4E00\u4E2A\u56FE\u6807","to choose a custom icon":"\u9009\u62E9\u4E00\u4E2A\u81EA\u5B9A\u4E49\u56FE\u6807","Remove Command":"\u79FB\u9664\u547D\u4EE4","Double click to rename":"\u53CC\u51FB\u4EE5\u91CD\u547D\u540D","This device":"\u8BE5\u8BBE\u5907","Added by {{plugin_name}}.":"\u7531{{plugin_name}}\u6DFB\u52A0\u3002","Warning: This is a checked Command, meaning it might not run under every circumstance.":"\u8B66\u544A\uFF1A\u8FD9\u662F\u4E00\u4E2A\u53D7\u68C0\u7684\u547D\u4EE4\uFF0C\u8FD9\u610F\u5473\u7740\u5B83\u672A\u5FC5\u80FD\u5728\u6240\u6709\u73AF\u5883\u4E0B\u8FD0\u884C\u3002","Move down":"\u5411\u4E0B\u79FB\u52A8","Move up":"\u5411\u4E0A\u79FB\u52A8","Change Mode (Currently: {{current_mode}})":"\u5207\u6362\u6A21\u5F0F\uFF08\u5F53\u524D\uFF1A{{current_mode}}\uFF09","Are you sure you want to delete the Command?":"\u662F\u5426\u786E\u8BA4\u79FB\u9664\u8BE5\u547D\u4EE4\uFF1F","Remove and don't ask again":"\u79FB\u9664\u4E14\u4E0D\u8981\u518D\u8BE2\u95EE",Remove:"\u79FB\u9664",Cancel:"\u53D6\u6D88","Always ask before removing?":"\u5728\u79FB\u9664\u524D\u603B\u662F\u8BE2\u95EE\uFF1F","Always show a Popup to confirm deletion of a Command.":"\u5728\u786E\u8BA4\u79FB\u9664\u547D\u4EE4\u524D\u603B\u662F\u5F39\u7A97\u3002",'Show "Add Command" Button':"\u663E\u793A\u201C\u6DFB\u52A0\u547D\u4EE4\u201D\u6309\u94AE",'Show the "Add Command" Button in every Menu. Requires restart.':"\u5728\u6BCF\u4E2A\u83DC\u5355\u90FD\u5C55\u793A\u201C\u6DFB\u52A0\u547D\u4EE4\u201D\u6309\u94AE\u3002\u9700\u8981\u91CD\u542F\u3002","Please restart Obsidian for these changes to take effect.":"\u8BF7\u91CD\u542F Obsidian \u4EE5\u4F7F\u8FD9\u4E9B\u66F4\u6539\u751F\u6548\u3002","Enable debugging":"\u542F\u7528\u9664\u9519","Enable console output.":"\u542F\u7528\u63A7\u5236\u53F0\u8F93\u51FA\u3002",General:"\u901A\u7528","Editor Menu":"\u7F16\u8F91\u5668\u83DC\u5355","File Menu":"\u6587\u4EF6\u83DC\u5355","Left Ribbon":"\u5DE6\u4FA7\u8FB9\u680F","Right Ribbon":"\u53F3\u4FA7\u8FB9\u680F",Titlebar:"\u6807\u9898\u680F",Statusbar:"\u72B6\u6001\u680F","Page Header":"\u9875\u9996","Support development":"\u652F\u6301\u5F00\u53D1","No commands here!":"\u8FD9\u91CC\u6CA1\u6709\u547D\u4EE4\uFF01","Would you like to add one now?":"\u4F60\u73B0\u5728\u60F3\u8981\u52A0\u4E00\u4E2A\u5417\uFF1F","Hide Commands":"\u9690\u85CF\u547D\u4EE4","Choose new":"\u9009\u62E9\u65B0\u7684","Hide Commands of other Plugins":"\u9690\u85CF\u5176\u4ED6\u63D2\u4EF6\u7684\u547D\u4EE4",Icon:"\u56FE\u6807",Name:"\u540D\u79F0","Custom Name":"\u81EA\u5B9A\u4E49\u540D\u79F0","Add command to all devices":"\u5411\u6240\u6709\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to mobile devices":"\u53EA\u5411\u79FB\u52A8\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to desktop devices":"\u53EA\u5411\u684C\u9762\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to this device":"\u53EA\u5411\u5F53\u524D\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4",Done:"\u5B8C\u6210","By Johnny\u2728 and phibr0":"\u7531 Johnny\u2728 \u548C phibr0 \u5F00\u53D1","Leave feedback":"\u7559\u4E0B\u53CD\u9988",Donate:"\u6350\u8D60","Share feedback, issues, and ideas with our feedback form.":"\u4EE5\u6211\u4EEC\u7684\u53CD\u9988\u8868\uFF0C\u5206\u4EAB\u53CD\u9988\u3001\u8BAE\u9898\u6216\u8005\u4F60\u7684\u60F3\u6CD5\u3002","Consider donating to support development.":"\u8003\u8651\u6350\u8D60\u4EE5\u652F\u6301\u5F00\u53D1\u3002",Save:"\u4FDD\u5B58","This Command is not available on this device.":"\u8FD9\u4E00\u547D\u4EE4\u5728\u5F53\u524D\u8BBE\u5907\u4E0D\u53EF\u7528\u3002",Show:"\u663E\u793A",Hide:"\u9690\u85CF","Hide other Commands":"\u9690\u85CF\u5176\u4F59\u547D\u4EE4","Double click to enter custom value":"\u53CC\u51FB\u4EE5\u6DFB\u52A0\u81EA\u5B9A\u4E49\u503C","Choose custom spacing for Command Buttons":"\u4E3A\u547D\u4EE4\u6309\u94AE\u9009\u62E9\u81EA\u5B9A\u4E49\u95F4\u8DDD","Change the spacing between commands. You can set different values on mobile and desktop.":"\u6539\u53D8\u547D\u4EE4\u4E4B\u95F4\u7684\u95F4\u8DDD\u3002\u4F60\u53EF\u4EE5\u4E3A\u79FB\u52A8\u548C\u684C\u9762\u8BBE\u5907\u8BBE\u7F6E\u4E0D\u540C\u7684\u503C\u3002",Warning:"\u8B66\u544A","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"\u4ECE Obsidian 0.16.0 \u5F00\u59CB\uFF0C\u4F60\u9700\u8981\u663E\u5F0F\u542F\u7528\u6807\u7B7E\u9875\u6807\u9898\u680F\u3002\u542F\u7528\u540E\uFF0C\u9700\u8981\u91CD\u542F Obsidian \u624D\u80FD\u751F\u6548\u3002","Open Appearance Settings":"\u6253\u5F00\u5916\u89C2\u8BBE\u7F6E",Explorer:"\u6587\u4EF6\u7BA1\u7406\u5668"};var yo={};var pa={ar:Qt,cs:eo,da:to,de:oo,en:gt,"en-gb":no,es:ao,fr:io,hi:ro,id:so,it:co,ja:mo,ko:lo,nl:uo,nn:po,pl:fo,pt:ho,"pt-br":vo,ro:go,ru:bo,tr:Co,"zh-cn":_o,"zh-tw":yo},bt=pa[Ct.moment.locale()];function u(t){return bt||console.error("Error: dictionary locale not found",Ct.moment.locale()),bt&&bt[t]||gt[t]}var ne=class extends Ve.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.commands=Object.values(e.app.commands.commands),this.setPlaceholder(u("Choose a Command to add")),this.setInstructions([{command:"\u2191\u2193",purpose:u("to navigate")},{command:"\u21B5",purpose:u("to choose an icon")},{command:"esc",purpose:u("to cancel")}])}async awaitSelection(){return this.open(),new Promise((e,n)=>{this.onChooseItem=a=>e(a),this.onClose=()=>window.setTimeout(()=>n("No Command selected"),0)})}renderSuggestion(e,n){if(n.addClass("mod-complex"),n.createDiv({cls:"suggestion-content"}).createDiv({cls:"suggestion-title"}).setText(e.item.name),e.item.icon){let i=n.createDiv({cls:"suggestion-aux"});(0,Ve.setIcon)(i.createSpan({cls:"suggestion-flair"}),e.item.icon)}}getItems(){return this.commands}getItemText(e){return e.name}onChooseItem(e,n){}};var We=require("obsidian"),wo={confirmDeletion:!0,showAddCommand:!0,debug:!1,editorMenu:[],fileMenu:[],leftRibbon:[],rightRibbon:[],titleBar:[],statusBar:[],pageHeader:[],macros:[],explorer:[],hide:{statusbar:[],leftRibbon:[]},spacing:8,advancedToolbar:{rowHeight:48,rowCount:1,spacing:0,buttonWidth:48,columnLayout:!1,mappedIcons:[],tooltips:!1,heightOffset:0}},ko=(0,We.requireApiVersion)("1.7.3")?(0,We.getIconIds)():["activity","airplay","alarm-check","alarm-clock-off","alarm-clock","alarm-minus","alarm-plus","album","alert-circle","alert-octagon","alert-triangle","align-center-horizontal","align-center-vertical","align-center","align-end-horizontal","align-end-vertical","align-horizontal-distribute-center","align-horizontal-distribute-end","align-horizontal-distribute-start","align-horizontal-justify-center","align-horizontal-justify-end","align-horizontal-justify-start","align-horizontal-space-around","align-horizontal-space-between","align-justify","align-left","align-right","align-start-horizontal","align-start-vertical","align-vertical-distribute-center","align-vertical-distribute-end","align-vertical-distribute-start","align-vertical-justify-center","align-vertical-justify-end","align-vertical-justify-start","align-vertical-space-around","align-vertical-space-between","anchor","aperture","archive","arrow-big-down","arrow-big-left","arrow-big-right","arrow-big-up","arrow-down-circle","arrow-down-left","arrow-down-right","arrow-down","arrow-left-circle","arrow-left-right","arrow-left","arrow-right-circle","arrow-right","arrow-up-circle","arrow-up-left","arrow-up-right","arrow-up","asterisk","at-sign","award","axe","banknote","bar-chart-2","bar-chart","baseline","battery-charging","battery-full","battery-low","battery-medium","battery","beaker","bell-minus","bell-off","bell-plus","bell-ring","bell","bike","binary","bitcoin","bluetooth-connected","bluetooth-off","bluetooth-searching","bluetooth","bold","book-open","book","bookmark-minus","bookmark-plus","bookmark","bot","box-select","box","briefcase","brush","bug","building-2","building","bus","calculator","calendar","camera-off","camera","car","carrot","cast","check-circle-2","check-circle","check-square","check","chevron-down","chevron-first","chevron-last","chevron-left","chevron-right","chevron-up","chevrons-down-up","chevrons-down","chevrons-left","chevrons-right","chevrons-up-down","chevrons-up","chrome","circle-slashed","circle","clipboard-check","clipboard-copy","clipboard-list","clipboard-x","clipboard","clock-1","clock-10","clock-11","clock-12","clock-2","clock-3","clock-4","clock-5","clock-6","clock-7","clock-8","clock-9","lucide-clock","cloud-drizzle","cloud-fog","cloud-hail","cloud-lightning","cloud-moon","cloud-off","cloud-rain-wind","cloud-rain","cloud-snow","cloud-sun","lucide-cloud","cloudy","clover","code-2","code","codepen","codesandbox","coffee","coins","columns","command","compass","contact","contrast","cookie","copy","copyleft","copyright","corner-down-left","corner-down-right","corner-left-down","corner-left-up","corner-right-down","corner-right-up","corner-up-left","corner-up-right","cpu","credit-card","crop","lucide-cross","crosshair","crown","currency","database","delete","dice-1","dice-2","dice-3","dice-4","dice-5","dice-6","disc","divide-circle","divide-square","divide","dollar-sign","download-cloud","download","dribbble","droplet","droplets","drumstick","edit-2","edit-3","edit","egg","equal-not","equal","eraser","euro","expand","external-link","eye-off","eye","facebook","fast-forward","feather","figma","file-check-2","file-check","file-code","file-digit","file-input","file-minus-2","file-minus","file-output","file-plus-2","file-plus","file-search","file-text","file-x-2","file-x","file","files","film","filter","flag-off","flag-triangle-left","flag-triangle-right","flag","flame","flashlight-off","flashlight","flask-conical","flask-round","folder-minus","folder-open","folder-plus","lucide-folder","form-input","forward","frame","framer","frown","function-square","gamepad-2","gamepad","gauge","gavel","gem","ghost","gift","git-branch-plus","git-branch","git-commit","git-fork","git-merge","git-pull-request","github","gitlab","glasses","globe-2","globe","grab","graduation-cap","grid","grip-horizontal","grip-vertical","hammer","hand-metal","hand","hard-drive","hard-hat","hash","haze","headphones","heart","help-circle","hexagon","highlighter","history","home","image-minus","image-off","image-plus","image","import","inbox","indent","indian-rupee","infinity","lucide-info","inspect","instagram","italic","japanese-yen","key","keyboard","landmark","lucide-languages","laptop-2","laptop","lasso-select","lasso","layers","layout-dashboard","layout-grid","layout-list","layout-template","layout","library","life-buoy","lightbulb-off","lightbulb","link-2-off","link-2","lucide-link","linkedin","list-checks","list-minus","list-ordered","list-plus","list-x","list","loader-2","loader","locate-fixed","locate-off","locate","lock","log-in","log-out","mail","map-pin","map","maximize-2","maximize","megaphone","meh","menu","message-circle","message-square","mic-off","mic","minimize-2","minimize","minus-circle","minus-square","minus","monitor-off","monitor-speaker","monitor","moon","more-horizontal","more-vertical","mountain-snow","mountain","mouse-pointer-2","mouse-pointer-click","mouse-pointer","mouse","move-diagonal-2","move-diagonal","move-horizontal","move-vertical","move","music","navigation-2","navigation","network","octagon","option","outdent","package-check","package-minus","package-plus","package-search","package-x","package","palette","palmtree","paperclip","pause-circle","pause-octagon","pause","pen-tool","lucide-pencil","percent","person-standing","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","phone","pie-chart","piggy-bank","lucide-pin","pipette","plane","play-circle","play","plug-zap","plus-circle","plus-square","plus","pocket","podcast","pointer","pound-sterling","power-off","power","printer","qr-code","quote","radio-receiver","radio","redo","refresh-ccw","refresh-cw","regex","repeat-1","repeat","reply-all","reply","rewind","rocket","rocking-chair","rotate-ccw","rotate-cw","rss","ruler","russian-ruble","save","scale","scan-line","scan","scissors","screen-share-off","screen-share","lucide-search","send","separator-horizontal","separator-vertical","server-crash","server-off","server","settings-2","settings","share-2","share","sheet","shield-alert","shield-check","shield-close","shield-off","shield","shirt","shopping-bag","shopping-cart","shovel","shrink","shuffle","sidebar-close","sidebar-open","sidebar","sigma","signal-high","signal-low","signal-medium","signal-zero","signal","skip-back","skip-forward","skull","slack","slash","sliders","smartphone-charging","smartphone","smile","snowflake","sort-asc","sort-desc","speaker","sprout","square","star-half","lucide-star","stop-circle","stretch-horizontal","stretch-vertical","strikethrough","subscript","sun","sunrise","sunset","superscript","swiss-franc","switch-camera","table","tablet","tag","target","tent","terminal-square","terminal","text-cursor-input","text-cursor","thermometer-snowflake","thermometer-sun","thermometer","thumbs-down","thumbs-up","ticket","timer-off","timer-reset","timer","toggle-left","toggle-right","tornado","trash-2","lucide-trash","trello","trending-down","trending-up","triangle","truck","tv-2","tv","twitch","twitter","type","umbrella","underline","undo","unlink-2","unlink","unlock","upload-cloud","upload","user-check","user-minus","user-plus","user-x","user","users","verified","vibrate","video-off","video","view","voicemail","volume-1","volume-2","volume-x","volume","wallet","wand","watch","waves","webcam","wifi-off","wifi","wind","wrap-text","wrench","x-circle","x-octagon","x-square","x","youtube","zap-off","zap","zoom-in","zoom-out","search-large"];var je=require("obsidian");var R=class extends je.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder(u("Choose a Icon for your new Command")),this.setInstructions([{command:"\u2191\u2193",purpose:u("to navigate")},{command:"\u21B5",purpose:u("to choose a custom icon")},{command:"esc",purpose:u("to cancel")}])}async awaitSelection(){return this.open(),new Promise((e,n)=>{this.onChooseItem=a=>e(a),this.onClose=()=>window.setTimeout(()=>n("No Icon selected"),0)})}renderSuggestion(e,n){n.addClass("mod-complex"),n.createDiv({cls:"suggestion-content"}).createDiv({cls:"suggestion-title"}).setText(e.item.replace("lucide-","").replace(/-/g," ").replace(/(^\w{1})|(\s+\w{1})/g,c=>c.toUpperCase()));let i=n.createDiv({cls:"suggestion-aux"});(0,je.setIcon)(i.createSpan({cls:"suggestion-flair"}),e.item)}getItems(){return ko}getItemText(e){return e}onChooseItem(e,n){}};var tt=require("obsidian");var Mo=require("obsidian");var U=class extends Mo.SuggestModal{constructor(e,n){super(n.app);this.defaultName=e;this.plugin=n;this.setPlaceholder(u("Use a custom name")),this.resultContainerEl.style.display="none",this.setInstructions([{command:"",purpose:u("Choose a custom Name for your new Command")},{command:"\u21B5",purpose:u("to save")},{command:"esc",purpose:u("to cancel")}])}onOpen(){var a;super.onOpen(),this.inputEl.value=this.defaultName;let e=createDiv({cls:"cmdr-name-input-wrapper"});(a=this.inputEl.parentNode)==null||a.insertBefore(e,this.inputEl),e.appendChild(this.inputEl),e.parentElement.style.display="block";let n=createEl("button",{text:u("Save"),cls:"mod-cta"});n.onclick=i=>this.selectSuggestion(this.inputEl.value,i),e.appendChild(n)}async awaitSelection(){return this.open(),new Promise((e,n)=>{this.onChooseSuggestion=a=>e(a),this.onClose=()=>window.setTimeout(()=>n("No Name selected"),0)})}getSuggestions(e){return[e]}renderSuggestion(e,n){}onChooseSuggestion(e,n){}};var Xe,_,Io,fa,_e,Eo,Ao,qe={},To=[],ha=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function ae(t,o){for(var e in o)t[e]=o[e];return t}function Lo(t){var o=t.parentNode;o&&o.removeChild(t)}function r(t,o,e){var n,a,i,c={};for(i in o)i=="key"?n=o[i]:i=="ref"?a=o[i]:c[i]=o[i];if(arguments.length>2&&(c.children=arguments.length>3?Xe.call(arguments,2):e),typeof t=="function"&&t.defaultProps!=null)for(i in t.defaultProps)c[i]===void 0&&(c[i]=t.defaultProps[i]);return Ue(t,c,n,a,null)}function Ue(t,o,e,n,a){var i={type:t,props:o,key:e,ref:n,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:a==null?++Io:a};return a==null&&_.vnode!=null&&_.vnode(i),i}function P(t){return t.children}function G(t,o){this.props=t,this.context=o}function ye(t,o){if(o==null)return t.__?ye(t.__,t.__.__k.indexOf(t)+1):null;for(var e;o0?Ue(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f)!=null){if(f.__=e,f.__b=e.__b+1,(b=A[s])===null||b&&f.key==b.key&&f.type===b.type)A[s]=void 0;else for(g=0;g=e.__.length&&e.__.push({__V:$e}),e.__[t]}function D(t){return Ke=1,Xo(Yo,t)}function Xo(t,o,e){var n=Qe(ke++,2);if(n.t=t,!n.__c&&(n.__=[e?e(o):Yo(void 0,o),function(i){var c=n.__N?n.__N[0]:n.__[0],m=n.t(c,i);c!==m&&(n.__N=[m,n.__[1]],n.__c.setState({}))}],n.__c=z,!z.u)){z.u=!0;var a=z.shouldComponentUpdate;z.shouldComponentUpdate=function(i,c,m){if(!n.__c.__H)return!0;var l=n.__c.__H.__.filter(function(s){return s.__c});if(l.every(function(s){return!s.__N}))return!a||a.call(this,i,c,m);var h=!1;return l.forEach(function(s){if(s.__N){var g=s.__[0];s.__=s.__N,s.__N=void 0,g!==s.__[0]&&(h=!0)}}),!(!h&&n.__c.props===i)&&(!a||a.call(this,i,c,m))}}return n.__N||n.__}function O(t,o){var e=Qe(ke++,3);!_.__s&&Et(e.__H,o)&&(e.__=t,e.i=o,z.__H.__h.push(e))}function Mt(t,o){var e=Qe(ke++,4);!_.__s&&Et(e.__H,o)&&(e.__=t,e.i=o,z.__h.push(e))}function K(t){return Ke=5,et(function(){return{current:t}},[])}function et(t,o){var e=Qe(ke++,7);return Et(e.__H,o)?(e.__V=t(),e.i=o,e.__h=t,e.__V):e.__}function Ca(){for(var t;t=Jo.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(Ge),t.__H.__h.forEach(kt),t.__H.__h=[]}catch(o){t.__H.__h=[],_.__e(o,t.__v)}}_.__b=function(t){z=null,Vo&&Vo(t)},_.__r=function(t){Wo&&Wo(t),ke=0;var o=(z=t.__c).__H;o&&(wt===z?(o.__h=[],z.__h=[],o.__.forEach(function(e){e.__N&&(e.__=e.__N),e.__V=$e,e.__N=e.i=void 0})):(o.__h.forEach(Ge),o.__h.forEach(kt),o.__h=[])),wt=z},_.diffed=function(t){jo&&jo(t);var o=t.__c;o&&o.__H&&(o.__H.__h.length&&(Jo.push(o)!==1&&Fo===_.requestAnimationFrame||((Fo=_.requestAnimationFrame)||_a)(Ca)),o.__H.__.forEach(function(e){e.i&&(e.__H=e.i),e.__V!==$e&&(e.__=e.__V),e.i=void 0,e.__V=$e})),wt=z=null},_.__c=function(t,o){o.some(function(e){try{e.__h.forEach(Ge),e.__h=e.__h.filter(function(n){return!n.__||kt(n)})}catch(n){o.some(function(a){a.__h&&(a.__h=[])}),o=[],_.__e(n,e.__v)}}),Uo&&Uo(t,o)},_.unmount=function(t){qo&&qo(t);var o,e=t.__c;e&&e.__H&&(e.__H.__.forEach(function(n){try{Ge(n)}catch(a){o=a}}),e.__H=void 0,o&&_.__e(o,e.__v))};var Zo=typeof requestAnimationFrame=="function";function _a(t){var o,e=function(){clearTimeout(n),Zo&&cancelAnimationFrame(o),setTimeout(t)},n=setTimeout(e,100);Zo&&(o=requestAnimationFrame(e))}function Ge(t){var o=z,e=t.__c;typeof e=="function"&&(t.__c=void 0,e()),z=o}function kt(t){var o=z;t.__c=t.__(),z=o}function Et(t,o){return!t||t.length!==o.length||o.some(function(e,n){return e!==t[n]})}function Yo(t,o){return typeof o=="function"?o(t):o}var xt={};(function t(o,e,n,a){var i=!!(o.Worker&&o.Blob&&o.Promise&&o.OffscreenCanvas&&o.OffscreenCanvasRenderingContext2D&&o.HTMLCanvasElement&&o.HTMLCanvasElement.prototype.transferControlToOffscreen&&o.URL&&o.URL.createObjectURL);function c(){}function m(p){var d=e.exports.Promise,S=d!==void 0?d:o.Promise;return typeof S=="function"?new S(p):(p(c,c),null)}var l=function(){var p=Math.floor(16.666666666666668),d,S,M={},T=0;return typeof requestAnimationFrame=="function"&&typeof cancelAnimationFrame=="function"?(d=function(I){var E=Math.random();return M[E]=requestAnimationFrame(function x(B){T===B||T+p-1{(0,tt.setIcon)(i.current,t)},[t,o]),r("div",Fe({ref:i},e))}function X(t,o){let{isMobile:e,appId:n}=o.app;return t==="any"||t===n||t==="mobile"&&e||t==="desktop"&&!e}function Me(t){var e,n;let o="";for(let a of(e=t.hide.leftRibbon)!=null?e:[])o+=`div.side-dock-ribbon-action[aria-label="${a}"] {display: none !important; content-visibility: hidden;}`;for(let a of t.hide.statusbar)o+=`div.status-bar-item.plugin-${a} {display: none !important; content-visibility: hidden;}`;(n=document.head.querySelector("style#cmdr"))==null||n.remove(),o&&document.head.appendChild(createEl("style",{attr:{id:"cmdr"},text:o,type:"text/css"}))}async function St({target:t}){let o=activeDocument.createElement("canvas");activeDocument.body.appendChild(o),o.style.position="fixed",o.style.width="100vw",o.style.height="100vh",o.style.top="0px",o.style.left="0px",o.style["pointer-events"]="none",o.style["z-index"]="100";let e=$o.create(o,{resize:!0,useWorker:!0}),n=t.getBoundingClientRect();await e({particleCount:tt.Platform.isDesktop?160:80,startVelocity:55,spread:75,angle:90,drift:-1,ticks:250,origin:{x:(n.x+n.width/2)/activeWindow.innerWidth,y:(n.y+n.height/2)/activeWindow.innerHeight}}),o.remove()}function ot(t){activeDocument.body.style.setProperty("--cmdr-spacing",`${t}px`)}function Ee(t){let o=Object.keys(t.app.commands.commands).filter(n=>n.startsWith("cmdr:macro-"));for(let n of o)app.commands.removeCommand(n);let e=t.settings.macros;for(let[n,a]of Object.entries(e))t.addCommand({id:`macro-${n}`,name:a.name,callback:()=>{t.executeMacro(parseInt(n))}})}function oe(t){var n,a;let{classList:o,style:e}=document.body;e.setProperty("--at-button-height",((n=t.rowHeight)!=null?n:48)+"px"),e.setProperty("--at-button-width",((a=t.buttonWidth)!=null?a:48)+"px"),e.setProperty("--at-row-count",t.rowCount.toString()),e.setProperty("--at-spacing",t.spacing+"px"),e.setProperty("--at-offset",t.heightOffset+"px"),o.toggle("AT-multirow",t.rowCount>1),o.toggle("AT-row",!t.columnLayout),o.toggle("AT-column",t.columnLayout),o.toggle("AT-no-toolbar",t.rowCount===0)}function Go(){let{classList:t,style:o}=document.body;o.removeProperty("--at-button-height"),o.removeProperty("--at-button-width"),o.removeProperty("--at-row-count"),o.removeProperty("--at-spacing"),o.removeProperty("--at-offset"),t.remove("AT-multirow"),t.remove("AT-row"),t.remove("AT-column"),t.remove("AT-no-toolbar"),t.remove("advanced-toolbar")}function nt(t,o){t.mappedIcons.forEach(e=>{let n=o.app.commands.commands[e.commandID];n?n.icon=e.iconID:t.mappedIcons.remove(e)})}var Pn=require("obsidian");var xe=require("obsidian");var Qo=require("obsidian");function Ko({modal:t}){return r(P,null,r("p",null,u("Are you sure you want to delete the Command?")),r("div",{className:"modal-button-container"},r("button",{className:"mod-warning",onClick:async()=>{t.plugin.settings.confirmDeletion=!1,t.plugin.saveSettings(),t.remove=!0,t.close()}},u("Remove and don't ask again")),r("button",{className:"mod-warning",onClick:()=>{t.remove=!0,t.close()}},u("Remove")),r("button",{onClick:()=>{t.remove=!1,t.close()}},u("Cancel"))))}var F=class extends Qo.Modal{constructor(e){super(e.app);this.plugin=e}async onOpen(){this.titleEl.innerText=u("Remove Command"),this.containerEl.style.zIndex="99",this.reactComponent=r(Ko,{modal:this}),W(this.reactComponent,this.contentEl)}async didChooseRemove(){return this.open(),new Promise(e=>{this.onClose=()=>{var n;return e((n=this.remove)!=null?n:!1)}})}onClose(){W(null,this.contentEl)}};var Z=class{constructor(o,e){this.plugin=o,this.pairs=e}};var ve=class extends Z{constructor(e,n){super(e,n);this.actions=new Map;this.init(),this.plugin.register(()=>this.actions.forEach((a,i)=>this.removeAction(i)))}getFileExplorers(){return this.plugin.app.workspace.getLeavesOfType("file-explorer")}init(){this.plugin.app.workspace.onLayoutReady(()=>{for(let e of this.pairs)X(e.mode,this.plugin)&&(this.plugin.app.workspace.onLayoutReady(()=>{this.getFileExplorers().forEach(a=>{this.addAction(e,a)})}),this.plugin.registerEvent(this.plugin.app.workspace.on("layout-change",()=>{this.getFileExplorers().forEach(a=>{this.addAction(e,a)})})))})}reorder(){this.actions.forEach((e,n)=>this.removeAction(n,!0)),this.init()}async addCommand(e){this.pairs.push(e),this.plugin.app.workspace.onLayoutReady(()=>{this.getFileExplorers().forEach(a=>{this.addAction(e,a)})}),this.plugin.registerEvent(this.plugin.app.workspace.on("layout-change",()=>{this.getFileExplorers().forEach(a=>{this.addAction(e,a)})})),await this.plugin.saveSettings()}async removeCommand(e){this.pairs.remove(e),this.removeAction(e),await this.plugin.saveSettings()}buttonExists(e,n){return[...e.view.containerEl.querySelectorAll("div.nav-buttons-container > .cmdr.clickable-icon")].some(a=>a.getAttribute("data-cmdr")===n.icon+n.name)}addAction(e,n){var l,h,s,g,b;if(this.buttonExists(n,e))return;let a=createDiv({cls:"cmdr clickable-icon",attr:{"aria-label-position":"top","aria-label":e.name,"data-cmdr":e.icon+e.name}});this.actions.set(e,a),a.style.color=e.color==="#000000"||e.color===void 0?"inherit":e.color;let i=!1,c=()=>{a.empty(),(0,xe.setIcon)(a,e.icon),a.onclick=()=>this.plugin.app.commands.executeCommandById(e.id)},m=()=>{a.empty(),(0,xe.setIcon)(a,"trash"),a.onclick=async()=>{(!this.plugin.settings.confirmDeletion||await new F(this.plugin).didChooseRemove())&&this.removeCommand(e)}};a.addEventListener("mouseleave",()=>{c(),i=!1}),a.addEventListener("mousemove",f=>{f.preventDefault(),f.stopImmediatePropagation(),f.shiftKey&&(i||m(),i=!0)}),a.addEventListener("contextmenu",f=>{f.stopImmediatePropagation(),new xe.Menu().addItem(C=>{C.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let w=await q(this.plugin);this.addCommand(w)})}).addSeparator().addItem(C=>{C.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let w=await new R(this.plugin).awaitSelection();w&&w!==e.icon&&(e.icon=w,await this.plugin.saveSettings(),this.reorder())})}).addItem(C=>{C.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let w=await new U(e.name,this.plugin).awaitSelection();w&&w!==e.name&&(e.name=w,await this.plugin.saveSettings(),this.reorder())})}).addItem(C=>{C.dom.addClass("is-warning"),C.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!this.plugin.settings.confirmDeletion||await new F(this.plugin).didChooseRemove())&&this.removeCommand(e)})}).showAtMouseEvent(f)}),c(),(b=(g=(s=(h=(l=n.view)==null?void 0:l.containerEl)==null?void 0:h.querySelector)==null?void 0:s.call(h,"div.nav-buttons-container"))==null?void 0:g.appendChild)==null||b.call(g,a)}removeAction(e,n=!1){let a=this.actions.get(e);if(!!a){if(n){a.remove(),this.actions.delete(e);return}a.addClass("cmdr-ribbon-removing"),a.addEventListener("transitionend",async()=>{a.remove(),this.actions.delete(e)})}}};var se=require("obsidian");var at=class extends Z{async addCommand(o){this.pairs.push(o),await this.plugin.saveSettings()}async removeCommand(o){this.pairs.remove(o),await this.plugin.saveSettings()}reorder(){}addRemovableCommand(o,e,n,a,i){return c=>{var f;c.dom.addClass("cmdr"),c.dom.style.color=e.color==="#000000"||e.color===void 0?"inherit":e.color,c.setSection("cmdr"),c.dom.style.display="flex";let m=createDiv({cls:"cmdr-menu-more-options"}),l=null;m.addEventListener("click",C=>{C.preventDefault(),C.stopImmediatePropagation(),l?(l.hide(),l=null):l=new se.Menu().addItem(w=>{w.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let v=await new R(n).awaitSelection();v&&v!==e.icon&&(e.icon=v,await n.saveSettings())})}).addItem(w=>{w.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let v=await new U(e.name,n).awaitSelection();v&&v!==e.name&&(e.name=v,await n.saveSettings())})}).addItem(w=>{w.dom.addClass("is-warning"),w.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!n.settings.confirmDeletion||await new F(n).didChooseRemove())&&b()})}).showAtMouseEvent(C)}),(0,se.setIcon)(m,"more-vertical"),c.dom.append(m),c.setTitle((f=e.name)!=null?f:o.name).setIcon(e.icon).onClick(()=>n.app.commands.executeCommandById(e.id));let h=!1,s=()=>{m.style.display="none"},g=()=>{m.style.display="block"},b=async()=>{c.dom.addClass("cmdr-removing"),a.registerDomEvent(c.dom,"transitionend",()=>{c.dom.remove()}),i.remove(e),await n.saveSettings()};a.registerDomEvent(c.dom,"mousemove",C=>{C.preventDefault(),C.stopImmediatePropagation(),h||g(),h=!0}),a.registerDomEvent(c.dom,"mouseleave",()=>{s(),h=!1}),s()}}addCommandAddButton(o,e,n){o.settings.showAddCommand&&e.addItem(a=>{a.setTitle(u("Add command")).setIcon("plus-circle").setSection("cmdr").onClick(async()=>{try{let i=await q(o);n.push(i),await o.saveSettings()}catch(i){console.log(i)}})})}},Se=class extends at{applyEditorMenuCommands(o){return async(e,n,a)=>{this.addCommandAddButton(o,e,o.settings.editorMenu);for(let i of o.settings.editorMenu){let c=Q(i.id,o);!c||!X(i.mode,o)||c.checkCallback&&!c.checkCallback(!0)||c.editorCheckCallback&&!c.editorCheckCallback(!0,n,a)||e.addItem(this.addRemovableCommand.call(this,c,i,o,e,o.settings.editorMenu))}}}},Pe=class extends at{applyFileMenuCommands(o){return async(e,n,a,i)=>{this.addCommandAddButton(o,e,o.settings.fileMenu);for(let c of o.settings.fileMenu){let m=Q(c.id,o);if(!!m&&!(m.checkCallback&&!m.checkCallback(!0))){if(m.editorCallback){if(!((i==null?void 0:i.view)instanceof se.MarkdownView))continue}else if(m.editorCheckCallback)if((i==null?void 0:i.view)instanceof se.MarkdownView){if(!m.editorCheckCallback(!0,i.view.editor,i.view))continue}else continue;e.addItem(this.addRemovableCommand.call(this,m,c,o,e,o.settings.fileMenu))}}}}};var ce=require("obsidian");var ge=class extends Z{constructor(e,n){super(e,n);this.buttons=new WeakMap;this.init()}addPageHeaderButton(e,n){let{id:a,icon:i,name:c}=n,{view:m}=e;if(!(m instanceof ce.ItemView))return;let l=this.buttonsFor(e,!0);if(!l||l.has(a))return;let h=m.addAction(i,c,()=>{this.plugin.app.workspace.setActiveLeaf(e,{focus:!0}),this.plugin.app.commands.executeCommandById(a)});l.set(a,h),h.addClasses(["cmdr-page-header",a]),h.style.color=n.color==="#000000"||n.color===void 0?"inherit":n.color,h.addEventListener("contextmenu",s=>{s.stopImmediatePropagation(),new ce.Menu().addItem(g=>{g.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let b=await q(this.plugin);this.addCommand(b)})}).addSeparator().addItem(g=>{g.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let b=await new R(this.plugin).awaitSelection();b&&b!==n.icon&&(n.icon=b,await this.plugin.saveSettings(),this.reorder())})}).addItem(g=>{g.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let b=await new U(n.name,this.plugin).awaitSelection();b&&b!==n.name&&(n.name=b,await this.plugin.saveSettings(),this.reorder())})}).addItem(g=>{g.dom.addClass("is-warning"),g.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!this.plugin.settings.confirmDeletion||await new F(this.plugin).didChooseRemove())&&this.removeCommand(n)})}).showAtMouseEvent(s)})}init(){this.plugin.register(()=>{this.removeButtonsFromAllLeaves()}),this.plugin.registerEvent(this.plugin.app.workspace.on("layout-change",()=>{this.addButtonsToAllLeaves()})),this.plugin.app.workspace.onLayoutReady(()=>setTimeout(()=>this.addButtonsToAllLeaves(),100))}addAdderButton(e){var c;let{view:n}=e,a="cmdr-adder";if(!(n instanceof ce.ItemView)||(c=this.buttons.get(n))!=null&&c.has(a))return;let i=n.addAction("plus",u("Add new"),async()=>{this.addCommand(await q(this.plugin))});i.addClasses(["cmdr",a]),this.buttons.has(n)||this.buttons.set(n,new Map),this.buttons.get(n).set(a,i)}addButtonsToAllLeaves(e=!1){activeWindow.requestAnimationFrame(()=>this.plugin.app.workspace.iterateAllLeaves(n=>this.addButtonsToLeaf(n,e)))}removeButtonsFromAllLeaves(){activeWindow.requestAnimationFrame(()=>this.plugin.app.workspace.iterateAllLeaves(e=>this.removeButtonsFromLeaf(e)))}buttonsFor(e,n=!1){if(e.view instanceof ce.ItemView)return n&&!this.buttons.has(e.view)&&this.buttons.set(e.view,new Map),this.buttons.get(e.view)}addButtonsToLeaf(e,n=!1){var a;if(e.view instanceof ce.ItemView){if(n)this.removeButtonsFromLeaf(e);else if((a=this.buttonsFor(e))!=null&&a.size)return;for(let i=this.pairs.length-1;i>=0;i--){let c=this.pairs[i];X(c.mode,this.plugin)&&this.addPageHeaderButton(e,c)}this.plugin.settings.showAddCommand&&this.addAdderButton(e)}}removeButtonsFromLeaf(e){let n=this.buttonsFor(e);if(n){for(let a of n.values())a.detach();n==null||n.clear()}}reorder(){this.addButtonsToAllLeaves(!0)}async addCommand(e){this.pairs.push(e),this.addButtonsToAllLeaves(!0),await this.plugin.saveSettings()}async removeCommand(e){this.pairs.remove(e),this.addButtonsToAllLeaves(!0),await this.plugin.saveSettings()}};var de=require("obsidian");var be=class extends Z{constructor(e,n){super(e,n);this.actions=new Map;this.addBtn=createDiv({cls:"cmdr status-bar-item cmdr-adder",attr:{"aria-label-position":"top","aria-label":u("Add new")}});this.init(),this.plugin.register(()=>this.actions.forEach((a,i)=>this.removeAction(i)))}init(){this.plugin.app.workspace.onLayoutReady(()=>{this.container=this.plugin.app.statusBar.containerEl;for(let e of this.pairs)Q(e.id,this.plugin)||this.pairs.remove(e),X(e.mode,this.plugin)&&this.addAction(e);this.plugin.saveSettings(),this.plugin.registerDomEvent(this.container,"contextmenu",e=>{e.target===this.container&&new de.Menu().addItem(n=>{n.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let a=await q(this.plugin);this.addCommand(a)})}).showAtMouseEvent(e)}),this.plugin.register(()=>this.addBtn.remove()),(0,de.setIcon)(this.addBtn,"plus"),this.addBtn.onclick=async()=>{let e=await q(this.plugin);this.addCommand(e),this.reorder()},this.plugin.settings.showAddCommand&&this.container.prepend(this.addBtn)})}reorder(){this.addBtn.remove(),this.actions.forEach((e,n)=>this.removeAction(n,!0)),this.init()}async addCommand(e){this.pairs.push(e),this.addAction(e),await this.plugin.saveSettings()}async removeCommand(e){this.pairs.remove(e),this.removeAction(e),await this.plugin.saveSettings()}addAction(e){let n=createDiv({cls:"cmdr status-bar-item clickable-icon",attr:{"aria-label-position":"top","aria-label":e.name}});this.actions.set(e,n),n.style.color=e.color==="#000000"||e.color===void 0?"inherit":e.color;let a=!1,i=()=>{n.empty(),(0,de.setIcon)(n,e.icon),n.onclick=()=>this.plugin.app.commands.executeCommandById(e.id)},c=()=>{n.empty(),(0,de.setIcon)(n,"trash"),n.onclick=async()=>{(!this.plugin.settings.confirmDeletion||await new F(this.plugin).didChooseRemove())&&this.removeCommand(e)}};n.addEventListener("mouseleave",()=>{i(),a=!1}),n.addEventListener("mousemove",m=>{m.preventDefault(),m.stopImmediatePropagation(),m.shiftKey&&(a||c(),a=!0)}),n.addEventListener("contextmenu",m=>{m.stopImmediatePropagation(),new de.Menu().addItem(l=>{l.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let h=await q(this.plugin);this.addCommand(h)})}).addSeparator().addItem(l=>{l.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let h=await new R(this.plugin).awaitSelection();h&&h!==e.icon&&(e.icon=h,await this.plugin.saveSettings(),this.reorder())})}).addItem(l=>{l.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let h=await new U(e.name,this.plugin).awaitSelection();h&&h!==e.name&&(e.name=h,await this.plugin.saveSettings(),this.reorder())})}).addItem(l=>{l.dom.addClass("is-warning"),l.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!this.plugin.settings.confirmDeletion||await new F(this.plugin).didChooseRemove())&&this.removeCommand(e)})}).showAtMouseEvent(m)}),i(),this.container.prepend(n)}removeAction(e,n=!1){let a=this.actions.get(e);if(!!a){if(n){a.remove(),this.actions.delete(e);return}a.addClass("cmdr-ribbon-removing"),a.addEventListener("transitionend",async()=>{a.remove(),this.actions.delete(e)})}}};var en=require("obsidian");var dt=require("obsidian");var J=require("obsidian");var Tt=require("obsidian");var tn=["https://github.com/jsmorabito","https://github.com/phibr0","https://www.youtube.com/watch?v=dQw4w9WgXcQ"];function Pt(){let[t,o]=D(0);return r("div",{className:"cmdr-credits"},r("span",{onClick:()=>{o(e=>e+1),location.replace(tn[t%tn.length])}},u("By Johnny\u2728 and phibr0")))}function wa(t,o){for(var e in o)t[e]=o[e];return t}function At(t,o){for(var e in t)if(e!=="__source"&&!(e in o))return!0;for(var n in o)if(n!=="__source"&&t[n]!==o[n])return!0;return!1}function on(t){this.props=t}function ln(t,o){function e(a){var i=this.props.ref,c=i==a.ref;return!c&&i&&(i.call?i(null):i.current=null),o?!o(this.props,a)||!c:At(this.props,a)}function n(a){return this.shouldComponentUpdate=e,r(t,a)}return n.displayName="Memo("+(t.displayName||t.name)+")",n.prototype.isReactComponent=!0,n.__f=!0,n}(on.prototype=new G).isPureReactComponent=!0,on.prototype.shouldComponentUpdate=function(t,o){return At(this.props,t)||At(this.state,o)};var nn=_.__b;_.__b=function(t){t.type&&t.type.__f&&t.ref&&(t.props.ref=t.ref,t.ref=null),nn&&nn(t)};var Ss=typeof Symbol!="undefined"&&Symbol.for&&Symbol.for("react.forward_ref")||3911;var ka=_.__e;_.__e=function(t,o,e,n){if(t.then){for(var a,i=o;i=i.__;)if((a=i.__c)&&a.__c)return o.__e==null&&(o.__e=e.__e,o.__k=e.__k),a.__c(t,o)}ka(t,o,e,n)};var an=_.unmount;function un(t,o,e){return t&&(t.__c&&t.__c.__H&&(t.__c.__H.__.forEach(function(n){typeof n.__c=="function"&&n.__c()}),t.__c.__H=null),(t=wa({},t)).__c!=null&&(t.__c.__P===e&&(t.__c.__P=o),t.__c=null),t.__k=t.__k&&t.__k.map(function(n){return un(n,o,e)})),t}function pn(t,o,e){return t&&(t.__v=null,t.__k=t.__k&&t.__k.map(function(n){return pn(n,o,e)}),t.__c&&t.__c.__P===o&&(t.__e&&e.insertBefore(t.__e,t.__d),t.__c.__e=!0,t.__c.__P=e)),t}function It(){this.__u=0,this.t=null,this.__b=null}function fn(t){var o=t.__.__c;return o&&o.__a&&o.__a(t)}function it(){this.u=null,this.o=null}_.unmount=function(t){var o=t.__c;o&&o.__R&&o.__R(),o&&t.__h===!0&&(t.type=null),an&&an(t)},(It.prototype=new G).__c=function(t,o){var e=o.__c,n=this;n.t==null&&(n.t=[]),n.t.push(e);var a=fn(n.__v),i=!1,c=function(){i||(i=!0,e.__R=null,a?a(m):m())};e.__R=c;var m=function(){if(!--n.__u){if(n.state.__a){var h=n.state.__a;n.__v.__k[0]=pn(h,h.__c.__P,h.__c.__O)}var s;for(n.setState({__a:n.__b=null});s=n.t.pop();)s.forceUpdate()}},l=o.__h===!0;n.__u++||l||n.setState({__a:n.__b=n.__v.__k[0]}),t.then(c,c)},It.prototype.componentWillUnmount=function(){this.t=[]},It.prototype.render=function(t,o){if(this.__b){if(this.__v.__k){var e=document.createElement("div"),n=this.__v.__k[0].__c;this.__v.__k[0]=un(this.__b,e,n.__O=n.__P)}this.__b=null}var a=o.__a&&r(P,null,t.fallback);return a&&(a.__h=null),[r(P,null,o.__a?null:t.children),a]};var rn=function(t,o,e){if(++e[1]===e[0]&&t.o.delete(o),t.props.revealOrder&&(t.props.revealOrder[0]!=="t"||!t.o.size))for(e=t.u;e;){for(;e.length>3;)e.pop()();if(e[1]{St(n),setTimeout(()=>location.replace("https://forms.gle/hPjn61G9bqqFb3256"),Math.random()*800+500)}},r(k,{icon:"message-square",size:20}),u("Leave feedback")),e=r("button",{className:"mod-cta",onClick:n=>{St(n),setTimeout(()=>location.replace("https://ko-fi.com/phibr0"),Math.random()*800+500)}},r(k,{icon:"coffee",size:20}),u("Support development"));return r("div",{className:"cmdr-about"},Tt.Platform.isMobile&&[r("hr",null),o,e],Tt.Platform.isDesktop&&[r("div",{className:"setting-item mod-toggle",style:{width:"100%",borderTop:"1px solid var(--background-modifier-border)",paddingTop:"18px"}},r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},u("Leave feedback")),r("div",{className:"setting-item-description"},u("Share feedback, issues, and ideas with our feedback form."))),r("div",{className:"setting-item-control"},o)),r("div",{className:"setting-item mod-toggle",style:{width:"100%"}},r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},u("Donate")),r("div",{className:"setting-item-description"},u("Consider donating to support development."))),r("div",{className:"setting-item-control"},e)),r("hr",null)],r(Ce,null),r("b",null,t.name),r(Pt,null),r("a",{className:"cmdr-version",href:"https://github.com/phibr0/obsidian-commander/releases/tag/"+t.version},t.version))}var V=require("obsidian");function Nt(t,o){if(t.empty(),new V.Setting(t).setName("Toolbar Row Count").setDesc("Set how many Rows the Mobile Toolbar should have. Set this to 0 to remove the Toolbar.").addSlider(n=>n.setLimits(0,5,1).setValue(o.settings.advancedToolbar.rowCount).setDynamicTooltip().onChange(async a=>{o.settings.advancedToolbar.rowCount=a,await o.saveSettings(),oe(o.settings.advancedToolbar)})),new V.Setting(t).setName("Column Layout").setDesc("Use a column based layout instead of the default row. This makes it easier to arrange the Commands.").addToggle(n=>n.setValue(o.settings.advancedToolbar.columnLayout).onChange(async a=>{o.settings.advancedToolbar.columnLayout=a,await o.saveSettings(),oe(o.settings.advancedToolbar)})),new V.Setting(t).setName("Bottom Offset").setDesc("Offset the Toolbar from the Bottom of the Screen. This is useful if the toolbar is partially obscured by other UI Elements.").addSlider(n=>n.setLimits(0,32,1).setValue(o.settings.advancedToolbar.heightOffset).setDynamicTooltip().onChange(async a=>{o.settings.advancedToolbar.heightOffset=a,await o.saveSettings(),oe(o.settings.advancedToolbar)})),V.Platform.isMobile){let n=document.createDocumentFragment();n.appendChild(createEl("h3",{text:"Custom Icons"})),t.appendChild(n),o.getCommandsWithoutIcons().forEach(a=>{new V.Setting(t).setName(a.name).setDesc(`ID: ${a.id}`).addButton(i=>{var m;let c=i.buttonEl.createDiv({cls:"AT-settings-icon"});if(a.icon)(0,V.setIcon)(c,a.icon);else{let l=(m=o.settings.advancedToolbar.mappedIcons.find(h=>h.commandID===a.id))==null?void 0:m.iconID;l?(0,V.setIcon)(c,l):i.setButtonText("No Icon")}i.onClick(async()=>{let l=await new R(o).awaitSelection(),h=o.settings.advancedToolbar.mappedIcons.find(s=>s.commandID===a.id);h?h.iconID=l:o.settings.advancedToolbar.mappedIcons.push({commandID:a.id,iconID:l}),await o.saveSettings(),nt(o.settings.advancedToolbar,o),Nt(t,o)})}).addExtraButton(i=>{i.setIcon("reset").setTooltip("Reset to default - Requires a restart").onClick(async()=>{o.settings.advancedToolbar.mappedIcons=o.settings.advancedToolbar.mappedIcons.filter(c=>c.commandID!==a.id),delete a.icon,delete o.app.commands.commands[a.id].icon,await o.saveSettings(),Nt(t,o),new V.Notice("If the default Icon doesn't appear, you might have to restart Obsidian.")})})})}let e=t.appendChild(createEl("div",{cls:"cmdr-sep-con",attr:{style:"margin-top: 64px"}}));e.appendChild(createEl("div",{text:"Advanced Settings",attr:{style:"margin-bottom: 8px; font-weight: bold"}})),new V.Setting(e).setName("Button Height").setDesc("Change the Height of each Button inside the Mobile Toolbar (in px).").addText(n=>{var a,i;return n.setValue((i=(a=o.settings.advancedToolbar.rowHeight)==null?void 0:a.toString())!=null?i:"48").setPlaceholder("48").onChange(async c=>{let m=Number(c),l=isNaN(m);n.inputEl.toggleClass("is-invalid",l),l||(o.settings.advancedToolbar.rowHeight=m,await o.saveSettings(),oe(o.settings.advancedToolbar))})}),new V.Setting(e).setName("Button Width").setDesc("Change the Width of each Button inside the Mobile Toolbar (in px).").addText(n=>{var a,i;return n.setValue((i=(a=o.settings.advancedToolbar.buttonWidth)==null?void 0:a.toString())!=null?i:"48").setPlaceholder("48").onChange(async c=>{let m=Number(c),l=isNaN(m);n.inputEl.toggleClass("is-invalid",l),l||(o.settings.advancedToolbar.buttonWidth=m,await o.saveSettings(),oe(o.settings.advancedToolbar))})}),new V.Setting(e).setName("Toolbar Extra Spacing").setDesc("Some Themes need extra spacing in the toolbar. If your Toolbar doesn't wrap properly, try increasing this value.").addSlider(n=>n.setLimits(0,64,1).setValue(o.settings.advancedToolbar.spacing).setDynamicTooltip().onChange(async a=>{o.settings.advancedToolbar.spacing=a,await o.saveSettings(),oe(o.settings.advancedToolbar)}))}function Dt({plugin:t}){let o=K(null);return O(()=>(o.current&&Nt(o.current,t),()=>o.current&&o.current.empty()),[]),r(P,null,r("div",{className:"cmdr-sep-con callout","data-callout":"info"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-circle"})," ","Info"),r("p",{className:"cmdr-warning-description"},"The Toolbar is only available in Obsidian Mobile. ",V.Platform.isMobile&&r(P,null,"To configure which Commands show up in the Toolbar, open the Mobile Settings.")),V.Platform.isMobile&&r("button",{onClick:()=>{t.app.setting.openTabById("mobile")},className:"mod-cta"},"Open Mobile Settings")),r("div",{ref:o,style:{paddingBottom:"128px"}}))}var le=require("obsidian");var _n=require("obsidian");var Cn=require("obsidian");var rt=({initialColor:t,onChange:o})=>{let e=K(null);return O(()=>(e.current&&new Cn.ColorComponent(e.current).setValue(t).onChange(o),()=>{var n,a;return(a=(n=e.current)==null?void 0:n.empty)==null?void 0:a.call(n)}),[o,t]),r("div",{ref:e,className:"cmdr-flex cmdr-items-center"})};function Bt({plugin:t,modal:o}){var e;return O(()=>{let n=()=>{this.forceUpdate()};return addEventListener("cmdr-icon-changed",n),()=>removeEventListener("cmdr-icon-changed",n)},[]),r("div",{className:"cmdr-mobile-modify-grid"},r("div",{className:"cmdr-mobile-modify-option",onClick:o.handleNewIcon},r("span",null,u("Icon")),r("span",{className:"cmdr-flex cmdr-gap-1"},r(k,{icon:o.pair.icon,size:20,className:"clickable-icon",style:{marginRight:"0px"}}),r(rt,{initialColor:(e=o.pair.color)!=null?e:"#000",onChange:o.handleColorChange}))),r("div",{className:"cmdr-mobile-modify-option"},r("span",null,u("Name")),r("input",{onBlur:({currentTarget:n})=>o.handleRename(n.value),type:"text",placeholder:u("Custom Name"),value:o.pair.name})),r("div",{className:"cmdr-mobile-modify-option"},r("select",{className:"dropdown",value:o.pair.mode,onChange:({currentTarget:n})=>o.handleModeChange(n.value)},r("option",{value:"any"},u("Add command to all devices")),r("option",{value:"mobile"},u("Add command only to mobile devices")),r("option",{value:"desktop"},u("Add command only to desktop devices")),r("option",{value:t.app.appId},u("Add command only to this device")))),r("div",{className:"modal-button-container"},r("button",{className:"mod-cta",onClick:()=>o.close()},u("Done"))))}var me=class extends _n.Modal{constructor(e,n,a,i,c,m){super(e.app);this.plugin=e;this.pair=n;this.handleRename=a;this.handleNewIcon=i;this.handleModeChange=c;this.handleColorChange=m}async onOpen(){this.titleEl.innerText=this.pair.name,this.reactComponent=r(Bt,{plugin:this.plugin,modal:this}),W(this.reactComponent,this.contentEl)}onClose(){W(null,this.contentEl)}};function Ie({value:t,handleChange:o,ariaLabel:e}){let[n,a]=D(!1),i=K(null),[c,m]=D(0);return O(()=>{var l,h;(l=i==null?void 0:i.current)==null||l.select(),(h=i==null?void 0:i.current)==null||h.focus()}),r("div",{class:"cmdr-editable"},n?r("input",{type:"text",value:t,style:{width:c+25+"px"},onKeyDown:l=>{l.key==="Enter"&&l.target.value.length>0&&(a(!1),o(l))},onBlur:()=>a(!1),ref:i}):r("span",{onDblClick:({target:l})=>{m(l==null?void 0:l.offsetWidth),a(!0)},"aria-label":e},t))}function Ht({plugin:t,pair:o,handleRemove:e,handleDown:n,handleUp:a,handleNewIcon:i,handleRename:c,handleModeChange:m,handleColorChange:l,sortable:h=!0}){var A;let s=Q(o.id,t);if(!s)return r(P,null,le.Platform.isDesktop&&r("div",{className:"setting-item mod-toggle"},r(k,{icon:"alert-triangle",size:20,className:"cmdr-icon clickable-icon mod-warning"}),r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},o.name),r("div",{className:"setting-item-description"},u("This Command is not available on this device."))),r("div",{className:"setting-item-control"},r("button",{className:"mod-warning",style:"display: flex",onClick:e,"aria-label":u("Delete")},r(k,{icon:"lucide-trash"})))),le.Platform.isMobile&&r("div",{className:"mobile-option-setting-item",onClick:()=>{new le.Notice(u("This Command is not available on this device."))}},r("span",{className:"mobile-option-setting-item-remove-icon",onClick:e},r(k,{icon:"minus-with-circle",size:22,style:{color:"var(--text-error)"}})),r("span",{className:"mobile-option-setting-item-option-icon mod-warning"},r(k,{icon:"alert-triangle",size:22})),r("span",{className:"mobile-option-setting-item-name"},o.name)));let g=s.id.split(":").first(),b=t.app.plugins.manifests[g],f=!b,C=s.hasOwnProperty("checkCallback")||s.hasOwnProperty("editorCheckCallback"),w=Ra(o.mode),v=o.mode.match(/desktop|mobile|any/)?o.mode[0].toUpperCase()+o.mode.substring(1):u("This device");return r(P,null,le.Platform.isDesktop&&r("div",{className:"setting-item mod-toggle"},r(k,{icon:o.icon,size:20,"aria-label":u("Choose new"),onClick:i,className:"cmdr-icon clickable-icon"}),r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},r(Ie,{ariaLabel:u("Double click to rename"),handleChange:({target:y})=>{c(y==null?void 0:y.value)},value:o.name}),o.name!==s.name&&r("span",{style:"margin-left: .8ex"},"(",s.name,")")),r("div",{className:"setting-item-description"},u("Added by {{plugin_name}}.".replace("{{plugin_name}}",f?"Obsidian":b.name))," ",C?u("Warning: This is a checked Command, meaning it might not run under every circumstance."):"")),r("div",{className:"setting-item-control"},r(rt,{initialColor:(A=o.color)!=null?A:"#000",onChange:l}),h&&r(P,null,r(k,{icon:"arrow-down",className:"setting-editor-extra-setting-button clickable-icon",onClick:n,"aria-label":u("Move down")}),r(k,{icon:"arrow-up",className:"setting-editor-extra-setting-button clickable-icon",onClick:a,"aria-label":u("Move up")})),r(k,{icon:w,className:"setting-editor-extra-setting-button clickable-icon",onClick:()=>m(),"aria-label":u("Change Mode (Currently: {{current_mode}})").replace("{{current_mode}}",v)}),r("button",{className:"mod-warning",style:"display: flex",onClick:e,"aria-label":u("Delete")},r(k,{icon:"lucide-trash"})))),le.Platform.isMobile&&r("div",{className:"mobile-option-setting-item"},r("span",{className:"mobile-option-setting-item-remove-icon",onClick:e},r(k,{icon:"minus-with-circle",size:22,style:{color:"var(--text-error)"}})),r("span",{className:"mobile-option-setting-item-option-icon"},r(k,{icon:o.icon,size:22,onClick:()=>{new me(t,o,c,i,m,l).open()}})),r("span",{className:"mobile-option-setting-item-name",onClick:()=>{new me(t,o,c,i,m,l).open()}},o.name,o.name!==s.name&&r("span",{className:"cmdr-option-setting-name"},"(",s.name,")")),r("span",{className:"mobile-option-setting-item-option-icon"},h&&r(P,null,r(k,{icon:"arrow-down",className:"clickable-icon",onClick:n}),r(k,{icon:"arrow-up",className:"clickable-icon",onClick:a})),r(k,{icon:"three-horizontal-bars",className:"clickable-icon",onClick:()=>{new me(t,o,c,i,m,l).open()}}))))}function Ra(t){return t==="mobile"?"smartphone":t==="desktop"?"monitor":t==="any"?"cmdr-all-devices":"airplay"}function Rt(t,o,e){let n=o<0?t.length+o:o;if(n>=0&&n{if(a.mode.match(/desktop|mobile|any/)||a.mode===o.app.appId)return r(Ht,{plugin:o,sortable:n,key:a.id,pair:a,handleRemove:async()=>{(!o.settings.confirmDeletion||await new F(o).didChooseRemove())&&(await t.removeCommand(a),this.forceUpdate())},handleUp:()=>{Rt(t.pairs,i,i-1),t.reorder(),this.forceUpdate()},handleDown:()=>{Rt(t.pairs,i,i+1),t.reorder(),this.forceUpdate()},handleRename:async c=>{a.name=c,await o.saveSettings(),t.reorder(),this.forceUpdate()},handleNewIcon:async()=>{let c=await new R(o).awaitSelection();c&&c!==a.icon&&(a.icon=c,await o.saveSettings(),t.reorder(),this.forceUpdate()),dispatchEvent(new Event("cmdr-icon-changed"))},handleModeChange:async c=>{let m=["any","desktop","mobile",o.app.appId],l=m.indexOf(a.mode);l===3&&(l=-1),a.mode=c||m[l+1],await o.saveSettings(),t.reorder(),this.forceUpdate()},handleColorChange:async c=>{a.color=c,await o.saveSettings(),t.reorder()}})})),!t.pairs.some(a=>X(a.mode,o)||a.mode.match(/mobile|desktop/))&&r("div",{class:"cmdr-commands-empty"},r(Ce,null),r("h3",null,u("No commands here!")),r("span",null,u("Would you like to add one now?"))),yn.Platform.isMobile&&r("hr",null),r("div",{className:"cmdr-add-new-wrapper"},r("button",{className:"mod-cta",onClick:async()=>{let a=await q(o);await t.addCommand(a),t.reorder(),this.forceUpdate()}},u("Add command")))),e)}function st({title:t,children:o}){let[e,n]=D(!1);return r("div",{className:"cmdr-accordion cmdr-sep-con","aria-expanded":e},r("div",{className:"cmdr-accordion-header cmdr-mb-1",onClick:()=>{n(!e)}},r(k,{className:"cmdr-accordion-chevron clickable-icon",icon:"chevron-down",size:24}),r("span",null,t)),r("div",{className:"cmdr-accordion-content",style:{maxHeight:[o].flat().length*120+"px"}},o))}function zt({name:t,description:o,children:e,className:n}){return r("div",{className:`setting-item ${n}`},r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},t),r("div",{className:"setting-item-description"},o)),r("div",{className:"setting-item-control"},e))}function Ot(t){let[o,e]=D(t.value);return r(zt,{name:t.name,description:t.description,className:"mod-toggle"},r("div",{className:`checkbox-container ${o?"is-enabled":""}`,onClick:()=>{e(!o),t.changeHandler(o)}}))}function Ft({name:t,description:o,changeHandler:e,value:n,hideLabel:a,showLabel:i}){let[c,m]=D(n);return r(zt,{name:t,description:o,className:"mod-toggle"},r(k,{"aria-label":c?i:a,icon:c?"eye-off":"eye",size:20,className:"clickable-icon",onClick:()=>{m(!c),e(c)}}))}function ct(t){var n,a,i;let[o,e]=D(t.value);return r(zt,{description:t.description,name:t.name,className:"cmdr-slider"},r("div",null,r(Ie,{ariaLabel:u("Double click to enter custom value"),value:o.toString(),handleChange:({target:c})=>{let m=Number(c.value);!isNaN(m)&&o!==m&&(e(m),t.changeHandler(m))}}),r("input",{class:"slider",type:"range",min:(n=t.min)!=null?n:"0",max:(a=t.max)!=null?a:"32",step:(i=t.step)!=null?i:"1",value:o,onPointerMove:({target:c})=>{o!==c.value&&(e(c.value),t.changeHandler(c.value))}})))}function wn({plugin:t}){let[o,e]=D([]),n=t.settings.hide.leftRibbon;return O(()=>{e(app.workspace.leftRibbon.items.map(a=>({name:a.title,icon:a.icon})))},[]),r(P,null,r("hr",null),r(st,{title:u("Hide other Commands")},o.map(a=>r(Ft,{name:a.name,description:"",hideLabel:u("Hide"),showLabel:u("Show"),changeHandler:async i=>{i?n.contains(a.name)&&n.remove(a.name):n.push(a.name),Me(t.settings),await t.saveSettings()},value:n.contains(a.name)}))))}function kn({plugin:t}){let o=t.settings.hide.statusbar,[e,n]=D([]);return O(()=>{let i=[...t.app.statusBar.containerEl.getElementsByClassName("status-bar-item")].map(c=>[...c.classList].find(m=>m.startsWith("plugin-"))).filter(c=>c).map(c=>c.substring(7));n(i.map(c=>t.app.plugins.manifests[c]||{id:c,name:c.replace(/-/g," ").replace(/(^\w{1})|(\s+\w{1})/g,m=>m.toUpperCase()),description:"Core Plugin"}))},[]),r(P,null,r("hr",null),r(st,{title:u("Hide other Commands")},e.map(a=>r(Ft,{name:a.name,description:a.description,value:o.contains(a.id),hideLabel:u("Hide"),showLabel:u("Show"),changeHandler:async i=>{i?o.contains(a.id)&&o.remove(a.id):o.push(a.id),Me(t.settings),await t.saveSettings()}}))))}var xn=require("obsidian");var En=require("obsidian");function Mn({plugin:t,macro:o,onSave:e,onCancel:n}){let[a,i]=D(o.name||"Macro Name"),[c,m]=D(o.icon||"star"),[l,h]=D(o.startup||!1),[s,g]=D(JSON.parse(JSON.stringify(o.macro))||[]),b=this.forceUpdate.bind(this),f=async()=>{let w=await new ne(t).awaitSelection();w&&g([...s,{action:0,commandId:w.id}])},C=async()=>{g([...s,{action:1,delay:250}])};return r("div",null,r("div",{class:"setting-item cmdr-mm-item"},r("div",null,r("span",null,"Name"),r("input",{type:"text",placeholder:"Macro Name",value:a,onChange:w=>i(w.currentTarget.value),width:"100%"})),r("div",null,r("span",null,"Icon"),r("button",{onClick:async()=>m(await new R(t).awaitSelection())},r(k,{icon:c})))),s.map((w,v)=>{switch(w.action){case 0:let A=Q(w.commandId,t);return r("div",{class:"setting-item cmdr-mm-item"},r("div",null,r("button",{onClick:async()=>{let y=await new ne(t).awaitSelection();g(s.map((H,ee)=>ee===v?Gt(Fe({},H),{commandId:y.id}):H))}},(A==null?void 0:A.name)||"Cannot find Command")),r("div",null,r("div",{class:"cmdr-mm-action-options"},r(k,{class:"clickable-icon",icon:"arrow-down",onClick:()=>{if(v===s.length-1)return;let y=[...s],H=y[v];y[v]=y[v+1],y[v+1]=H,g(y)}}),r(k,{class:"clickable-icon",icon:"arrow-up",onClick:()=>{if(v===0)return;let y=[...s],H=y[v];y[v]=y[v-1],y[v-1]=H,g(y)}}),r(k,{class:"clickable-icon",icon:"cross",onClick:()=>{g(s.filter((y,H)=>H!==v))}}))));case 1:return r("div",{class:"setting-item cmdr-mm-item"},r("div",null,r(ct,{name:"Delay",min:0,max:1e4,step:50,description:"Delay in milliseconds",value:w.delay,changeHandler:y=>w.delay=y})),r("div",null,r("div",{class:"cmdr-mm-action-options"},r(k,{class:"clickable-icon",icon:"arrow-down",onClick:()=>{if(v===s.length-1)return;let y=[...s],H=y[v];y[v]=y[v+1],y[v+1]=H,g(y)}}),r(k,{class:"clickable-icon",icon:"arrow-up",onClick:()=>{if(v===0)return;let y=[...s],H=y[v];y[v]=y[v-1],y[v-1]=H,g(y)}}),r(k,{class:"clickable-icon",icon:"cross",onClick:()=>{g(s.filter((y,H)=>H!==v))}}))));case 2:return r("div",null,"Editor: ",w.action);case 3:return r("div",null,"Loop: ",w.times)}}),r("div",{className:"setting-item cmdr-mm-actions cmdr-justify-between"},r("div",{className:"cmdr-flex cmdr-items-center cmdr-justify-self-start"},r("input",{type:"checkbox",id:"checkbox",checked:l,onChange:({target:w})=>{var v;h((v=w==null?void 0:w.checked)!=null?v:!1)}}),r("label",{htmlFor:"checkbox"},"Auto-Run on Startup")),r("div",null,r("button",{onClick:f},"Add Command"),r("button",{onClick:C},"Add Delay"))),r("div",{className:"cmdr-mm-control"},r("button",{class:s.length===0?"disabled":"mod-cta",disabled:s.length===0,onClick:()=>s.length&&e({macro:s,name:a,icon:c,startup:l})},"Save"),r("button",{onClick:n},"Cancel")))}var Ae=class extends En.Modal{constructor(e,n,a){super(e.app);this.macro=n,this.plugin=e,this.onSave=a}onOpen(){this.titleEl.setText("Macro Builder"),W(r(Mn,{plugin:this.plugin,macro:this.macro,onSave:this.onSave,onCancel:this.close.bind(this)}),this.contentEl)}onClose(){W(null,this.contentEl)}};function Vt({plugin:t,macros:o}){let e=(a,i)=>{let c=l=>{o.splice(i!==void 0?i:o.length,i!==void 0?1:0,l),t.saveSettings(),this.forceUpdate(),Ee(t),m.close()},m=new Ae(t,a,c);m.open()},n=a=>{o.splice(a,1),t.saveSettings(),this.forceUpdate(),Ee(t)};return r(P,null,r("div",{className:"cmdr-sep-con"},o.map((a,i)=>r("div",{class:"setting-item mod-toggle"},r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},a.name),r("div",{className:"setting-item-description"},a.macro.length," Actions")),r("div",{className:"setting-item-control"},r("button",{"aria-label":"Edit Macro",onClick:()=>e(a,i)},r(k,{icon:"lucide-pencil"})),r("button",{"aria-label":"Delete",class:"mod-warning",onClick:async()=>{(!t.settings.confirmDeletion||await new F(t).didChooseRemove())&&n(i)}},r(k,{icon:"trash"})))))),!o.length&&r("div",{class:"cmdr-commands-empty"},r(Ce,null),r("h3",null,"No Macros yet!"),r("span",null,u("Would you like to add one now?"))),xn.Platform.isMobile&&r("hr",null),r("div",{className:"cmdr-add-new-wrapper"},r("button",{class:"mod-cta",onClick:()=>e({name:"",macro:[],icon:"star"})},"Add Macro")))}function Te({plugin:t,mobileMode:o}){let[e,n]=D(0),[a,i]=D(!0),c=({key:l,shiftKey:h})=>{h&&l==="Tab"?e>0?n((e-1)%m.length):n(m.length-1):l==="Tab"&&n((e+1)%m.length)};O(()=>(addEventListener("keydown",c),()=>removeEventListener("keydown",c)),[e]),J.Platform.isMobile&&O(()=>{let l=document.querySelector(".modal-setting-back-button"),h=l.cloneNode(!0);l.parentNode.replaceChild(h,l),i(!0)},[]),O(()=>{let l=document.querySelector(".modal-setting-back-button");!l||(a?(l.parentElement.lastChild.textContent="Commander",l.onclick=()=>t.app.setting.closeActiveTab()):(l.parentElement.lastChild.textContent=m[e].name,l.onclick=()=>i(!0)))},[a]);let m=et(()=>[{name:u("General"),tab:r(P,null,r(Ot,{name:u("Always ask before removing?"),description:u("Always show a Popup to confirm deletion of a Command."),value:t.settings.confirmDeletion,changeHandler:async l=>{t.settings.confirmDeletion=!l,await t.saveSettings()}}),r(Ot,{value:t.settings.showAddCommand,name:u('Show "Add Command" Button'),description:'Show the "Add Command" Button in every Menu.',changeHandler:async l=>{t.settings.showAddCommand=!l,t.manager.pageHeader.reorder(),await t.saveSettings()}}),r(ct,{value:t.settings.spacing,name:u("Choose custom spacing for Command Buttons"),description:u("Change the spacing between commands. You can set different values on mobile and desktop."),changeHandler:async l=>{ot(l),t.settings.spacing=l,await t.saveSettings()}}))},{name:u("Left Ribbon"),tab:r(ie,{manager:t.manager.leftRibbon,plugin:t,sortable:!1},r(wn,{plugin:t}),r("div",{className:"cmdr-sep-con callout","data-callout":"warning"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-triangle"})," ","Reordering and Sorting"),r("p",{className:"cmdr-warning-description"},"As of Obsidian 1.1.0 you can reorder the Buttons in the left ribbon by dragging. This will replace the old sorting feature.")))},{name:u("Page Header"),tab:r(ie,{manager:t.manager.pageHeader,plugin:t},r("hr",null),r("div",{className:"cmdr-sep-con callout","data-callout":"warning"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-triangle"})," ",u("Warning")),r("p",{className:"cmdr-warning-description"},u("As of Obsidian 0.16.0 you need to explicitly enable the View Header.")),r("button",{onClick:()=>{t.app.setting.openTabById("appearance"),setTimeout(()=>{var l,h,s,g;t.app.setting.activeTab.containerEl.scroll({behavior:"smooth",top:250}),(g=(s=(h=(l=t.app.setting.activeTab.containerEl.querySelectorAll(".setting-item-heading")[1].nextSibling)==null?void 0:l.nextSibling)==null?void 0:h.nextSibling)==null?void 0:s.addClass)==null||g.call(s,"cmdr-cta")},50)},className:"mod-cta"},u("Open Appearance Settings"))))},{name:u("Statusbar"),tab:r(ie,{manager:t.manager.statusBar,plugin:t},r(kn,{plugin:t}))},{name:u("Editor Menu"),tab:r(ie,{manager:t.manager.editorMenu,plugin:t})},{name:u("File Menu"),tab:r(ie,{manager:t.manager.fileMenu,plugin:t})},{name:u("Explorer"),tab:r(ie,{manager:t.manager.explorerManager,plugin:t},r("hr",null),r("div",{className:"cmdr-sep-con callout","data-callout":"warning"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-triangle"})," ",u("Warning")),r("p",{className:"cmdr-warning-description"},"When clicking on a Command in the Explorer, the Explorer view will become focused. This might interfere with Commands that are supposed to be executed on an active File/Explorer.")))},{name:J.Platform.isMobile?"Mobile Toolbar":"Toolbar",tab:r(Dt,{plugin:t})},{name:"Macros",tab:r(Vt,{plugin:t,macros:t.settings.macros})}],[]);return r(P,null,J.Platform.isDesktop&&r("div",{className:"cmdr-setting-title"},r("h1",null,t.manifest.name)),(J.Platform.isDesktop||a)&&r(Fa,{tabs:m,activeTab:e,setActiveTab:n,setOpen:i}),r("div",{class:`cmdr-setting-content ${o?"cmdr-mobile":""}`},(J.Platform.isDesktop||!a)&&m[e].tab,(J.Platform.isMobile&&a||J.Platform.isDesktop&&e===0)&&r(Lt,{manifest:t.manifest})))}function Fa({tabs:t,activeTab:o,setActiveTab:e,setOpen:n}){let a=K(null),i=c=>{var m;c.preventDefault(),(m=a.current)==null||m.scrollBy({left:c.deltaY>0?16:-16})};return O(()=>{let c=a.current;if(!(!c||J.Platform.isMobile))return c.addEventListener("wheel",i),()=>c.removeEventListener("wheel",i)},[]),O(()=>{var c;return(c=document.querySelector(".cmdr-tab-active"))==null?void 0:c.scrollIntoView({behavior:"smooth",block:"nearest"})},[o]),r("nav",{class:`cmdr-setting-header ${J.Platform.isMobile?"cmdr-mobile":""}`,ref:a},r("div",{class:`cmdr-setting-tab-group ${J.Platform.isMobile?"vertical-tab-header-group-items":""}`},t.map((c,m)=>r("div",{className:`cmdr-tab ${o===m?"cmdr-tab-active":""} ${J.Platform.isMobile?"vertical-tab-nav-item":""}`,onClick:()=>{e(m),n(!1)}},c.name,J.Platform.isMobile&&r(k,{className:"vertical-tab-nav-item-chevron cmdr-block",icon:"chevron-right",size:24})))),J.Platform.isDesktop&&r("div",{className:"cmdr-fill"}))}var Le=class extends dt.PluginSettingTab{constructor(e){super(e.app,e);this.plugin=e}display(){W(r(Te,{plugin:this.plugin,mobileMode:dt.Platform.isMobile}),this.containerEl)}hide(){W(null,this.containerEl)}};var mt=require("obsidian");var Ne=class extends mt.Modal{constructor(e){super(e.app);this.plugin=e,this.containerEl.addClass("cmdr-setting-modal")}onOpen(){let e=mt.Platform.isMobile;W(r(Te,{plugin:this.plugin,mobileMode:e}),this.contentEl)}onClose(){W(null,this.contentEl)}};var Sn=require("obsidian");function Wt(){(0,Sn.addIcon)("cmdr-all-devices",'')}var De=class extends Z{constructor(e){super(e,e.settings.leftRibbon);this.plugin=e,this.plugin.settings.leftRibbon.forEach(n=>this.addCommand(n,!1)),this.plugin.app.workspace.onLayoutReady(()=>{})}async addCommand(e,n=!0){if(n&&(this.plugin.settings.leftRibbon.push(e),await this.plugin.saveSettings()),X(e.mode,this.plugin)){this.plugin.addRibbonIcon(e.icon,e.name,()=>this.plugin.app.commands.executeCommandById(e.id));let a=this.plugin.app.workspace.leftRibbon.items.find(i=>i.icon===e.icon&&i.name===i.name);a&&(a.buttonEl.style.color=e.color==="#000000"||e.color===void 0?"inherit":e.color),this.plugin.register(()=>this.removeCommand(e,!1))}}async removeCommand(e,n=!0){n&&(this.plugin.settings.leftRibbon.remove(e),await this.plugin.saveSettings());let a=this.plugin.app.workspace.leftRibbon.items.find(i=>i.icon===e.icon&&i.name===i.name);a&&a.buttonEl.remove(),app.workspace.leftRibbon.items.remove(a)}reorder(){this.plugin.settings.leftRibbon.forEach(e=>{this.removeCommand(e,!1),this.addCommand(e,!1)})}};var lt=class extends Pn.Plugin{async executeStartupMacros(){this.settings.macros.forEach((e,n)=>{e.startup&&this.executeMacro(n)})}async executeMacro(e){let n=this.settings.macros[e];if(!n)throw new Error("Macro not found");for(let a of n.macro)switch(a.action){case 0:{await this.app.commands.executeCommandById(a.commandId);continue}case 1:{await new Promise(i=>setTimeout(i,a.delay));continue}case 2:continue;case 3:{for(let i=0;inew Ne(this).open()}),this.registerEvent(this.app.workspace.on("editor-menu",this.manager.editorMenu.applyEditorMenuCommands(this))),this.registerEvent(this.app.workspace.on("file-menu",this.manager.fileMenu.applyFileMenuCommands(this))),this.app.workspace.onLayoutReady(()=>{Me(this.settings),Ee(this),ot(this.settings.spacing),oe(this.settings.advancedToolbar),nt(this.settings.advancedToolbar,this),this.executeStartupMacros()})}onunload(){var e;(e=document.head.querySelector("style#cmdr"))==null||e.remove(),Go()}async loadSettings(){let e=Object.assign({},wo,await this.loadData());this.settings=e}async saveSettings(){await this.saveData(this.settings)}listActiveToolbarCommands(){return this.app.vault.getConfig("mobileToolbarCommands")}getCommands(){let e=[];return this.listActiveToolbarCommands().forEach(n=>{let a=this.app.commands.commands[n];a&&e.push(a)}),e}getCommandsWithoutIcons(e=!0){let n=[];return this.getCommands().forEach(a=>{a&&!a.icon&&n.push(a)}),e&&this.getCommands().forEach(a=>{this.settings.advancedToolbar.mappedIcons.find(i=>i.commandID===a.id)&&n.push(a)}),n}}; /* by phibr0 */ diff --git a/.obsidian/plugins/cmdr/manifest.json b/.obsidian/plugins/cmdr/manifest.json index d9fc84f8..91ed1f6d 100644 --- a/.obsidian/plugins/cmdr/manifest.json +++ b/.obsidian/plugins/cmdr/manifest.json @@ -1,11 +1,11 @@ { - "id": "cmdr", - "name": "Commander", - "version": "0.5.4", - "minAppVersion": "1.4.0", - "description": "Customize your workspace by adding commands everywhere, create Macros and supercharge your mobile toolbar.", - "author": "jsmorabito & phibr0", - "authorUrl": "https://github.com/phibr0", - "fundingUrl": "https://ko-fi.com/phibr0", - "isDesktopOnly": false + "id": "cmdr", + "name": "Commander", + "version": "0.5.5", + "minAppVersion": "1.4.0", + "description": "Customize your workspace by adding commands everywhere, create Macros and supercharge your mobile toolbar.", + "author": "jsmorabito & phibr0", + "authorUrl": "https://github.com/phibr0", + "fundingUrl": "https://ko-fi.com/phibr0", + "isDesktopOnly": false } diff --git a/.obsidian/plugins/cmdr/styles.css b/.obsidian/plugins/cmdr/styles.css index 02dbd564..91fa7798 100644 --- a/.obsidian/plugins/cmdr/styles.css +++ b/.obsidian/plugins/cmdr/styles.css @@ -1 +1 @@ -.cmdr{transition:transform .4s 0s}.cmdr.status-bar-item{margin:0}.cmdr-removing{transform:translate(100%);z-index:0}.cmdr-ribbon-removing{transform:scale(0)}.cmdr-setting-title{display:flex;align-items:baseline;justify-content:space-between}.cmdr-setting-title h1{font-weight:900;margin-top:6px;margin-bottom:12px}.cmdr-option-setting-name{margin-left:.8ex}.cmdr-base-component{padding:0 20px;margin-bottom:-18px}.cmdr-menu-more-options{color:var(--text-muted);position:absolute;right:6px;padding-top:2px;transform:scale(.9);transition:all .15s ease}.cmdr-menu-more-options:hover{color:var(--text-primary)}.cmdr-mobile .cmdr-credits{place-content:center}.cmdr-fill{border:2px solid #0000;width:100%}.cmdr-icon{height:20px;align-self:center}.cmdr-setting-modal>.modal{height:60vh;width:80vw}.cmdr-editable{display:inline-block}.cmdr-editable input{padding:0;border:none;height:unset;background-color:initial!important;border-bottom:1px solid var(--interactive-accent);border-radius:0}.cmdr-setting-content{height:calc(100% - 10rem)}.cmdr-setting-content .setting-item:first{border-top:none}.cmdr-commands-empty{display:flex;place-items:center;flex-flow:column;margin:2.5rem 0 1.25rem;place-content:center}.cmdr-commands-empty svg{width:100%}.cmdr-commands-empty h3{margin:8px 0;font-weight:900}.cmdr-sep-con:not(:empty){background-color:var(--background-primary);border:1px solid var(--background-modifier-border);padding:12px;border-radius:12px}.cmdr-sep-con:not(:empty) .setting-item:first-of-type{padding-top:0}.cmdr-sep-con:not(:empty) .setting-item:last-of-type{padding-bottom:0}.cmdr-sep-con:not(:empty) .cmdr-callout-warning{padding:var(--callout-title-padding);display:flex;gap:var(--size-4-1);font-size:var(--callout-title-size);color:rgb(var(--callout-color));line-height:var(--line-height-tight);font-weight:700}.cmdr-sep-con:not(:empty) p.cmdr-warning-description{margin:8px 0}.cmdr-accordion{margin-bottom:16px}.cmdr-accordion .cmdr-accordion-chevron{margin-left:0;margin-right:4px;height:24px}.cmdr-accordion .cmdr-accordion-chevron>svg{transition:all .25s ease}.cmdr-accordion .cmdr-accordion-content{max-height:1000px;transition:all .3s ease-in-out;overflow:hidden;margin-left:14px;padding-left:14px}.cmdr-accordion .cmdr-accordion-content .setting-item{padding-top:12px}.cmdr-accordion[aria-expanded=false] .cmdr-accordion-chevron>svg{transform:rotate(-90deg)}.cmdr-accordion[aria-expanded=false] .cmdr-accordion-content{max-height:0!important;transition:max-height .3s cubic-bezier(0,1,0,1)}.cmdr-accordion .cmdr-accordion-header{display:flex;cursor:var(--cursor)}.cmdr-accordion .cmdr-accordion-header span{font-weight:600;margin-top:0;align-self:end}.cmdr-add-new-wrapper{width:100%;margin-top:12px;margin-bottom:2rem;display:flex;justify-content:center;align-items:center}.cmdr-add-new-wrapper button{margin:0 24px}.cmdr-adder{opacity:0;transition:opacity .12s ease}.cmdr-adder:hover{opacity:1}.cmdr-adder.view-action{order:-1001}.cmdr-page-header{order:-1000}.cmdr-macro-builder .modal{height:80vh;width:95vw;padding:0}.cmdr-macro-builder .modal-close-button{z-index:99}.cmdr-macro-builder .modal-content{margin-top:0}.cmdr-macro-builder .cmdr-macro-icon{display:flex;justify-content:center}.cmdr-macro-builder .cmdr-macro-control{position:absolute;z-index:5;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:3em;top:0}.cmdr-macro-builder .cmdr-macro-control .cmdr-macro-button{background-color:var(--background-secondary-alt);aspect-ratio:1;display:flex;justify-content:center;align-items:center;border-radius:2px;outline:1px solid var(--background-modifier-border);padding:2px}.cmdr-setting-header{margin-bottom:24px;overflow-y:hidden;overflow-x:auto}.cmdr-setting-header .cmdr-setting-tab-group{display:flex;align-items:flex-end;border-bottom:2px solid var(--background-modifier-border)}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group{display:flex;flex-direction:column;align-items:flex-start;border:none}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group .cmdr-tab{border-left:none!important;border-right:none!important;border-top:none!important;transform:none;transition:color .2s ease;width:100%;display:flex;font-weight:500;justify-content:space-between}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group .cmdr-tab:first-child{margin-left:0}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group .cmdr-tab.cmdr-tab-active{transform:none}.cmdr-setting-header .cmdr-tab{padding:6px 8px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;border-left:2px solid #0000;border-right:2px solid #0000}.cmdr-setting-header .cmdr-tab:first-child{margin-left:6px}.cmdr-setting-header .cmdr-tab.cmdr-tab-active{transform:translateY(2px);border-radius:2px;border:2px solid var(--background-modifier-border);border-bottom-color:var(--background-primary)}.is-tablet .cmdr-tab{border:none!important;margin-bottom:2px;padding:10px;font-size:1.08em}.is-tablet .cmdr-tab,.is-tablet .cmdr-tab .cmdr-block{display:flex;align-items:center}.cmdr-mobile-modify-grid{padding:22px}.cmdr-mobile-modify-grid .cmdr-mobile-modify-option{display:flex;width:100%;justify-content:space-between;align-items:center;margin-bottom:16px}.cmdr-mobile-modify-grid .cmdr-mobile-modify-option>input{max-width:70%}.cmdr-mobile-modify-grid .cmdr-mobile-modify-option .dropdown{margin:auto}.cmdr-credits{display:flex}.cmdr-credits>span{color:var(--text-muted);font-size:14px}.cmdr-about{display:flex;flex-direction:column;align-items:center;padding-bottom:64px}.cmdr-about hr{width:100%;margin-top:0}.cmdr-about button{display:flex;align-items:center;height:2.6em;font-weight:700;gap:16px;border-radius:6px;margin-bottom:8px}.cmdr-about button:last-of-type{margin-bottom:32px}.cmdr-about .setting-item button{margin:0}.cmdr-about .cmdr-icon-wrapper{display:flex}.cmdr-about .cmdr-icon-wrapper>svg{width:90px;height:90px}.cmdr-about .cmdr-version{text-decoration:none;font-size:12px;color:var(--text-muted)}.cmdr-name-input-wrapper{display:flex;gap:8px;align-items:center}.cmdr-name-input-wrapper button{margin:8px}.cmdr-icon.clickable-icon.mod-warning{cursor:default}.cmdr-hider-title{display:flex;flex-direction:column;align-items:center}.cmdr-hider-title h3{margin-top:0;margin-bottom:8px;font-weight:900}.cmdr-hider-title p{margin-top:0;margin-bottom:26px;width:50%;text-align:center}.setting-item-control .cmdr-editable{width:2em;text-align:center}.setting-item-control .cmdr-editable input,.setting-item-control .cmdr-editable span{width:2em;color:var(--text-normal)}.cmdr-slider .setting-item-control>div{width:100%}.cmdr-slider input.slider{margin-left:4px}.view-action:not(:last-child){margin-right:var(--cmdr-spacing)}.status-bar-item:not(:last-child),.titlebar-button:not(:last-child){margin-right:calc(var(--cmdr-spacing) - 8px)}.side-dock-ribbon-action:not(:last-child){margin-bottom:calc(var(--cmdr-spacing) - 8px)}.cmdr-cta{position:relative}.cmdr-cta:after{content:"";position:absolute;top:-10%;width:104%;left:-2%;height:120%;outline:2px solid var(--color-accent);border-radius:1em;pointer-events:none}.cmdr-mm-item{display:flex;flex-direction:row!important;align-items:center!important;justify-content:space-between;padding:24px 0}.cmdr-mm-item>:first-child{flex-grow:1}.cmdr-mm-item>:last-child{display:flex}.cmdr-mm-item>*{display:flex;flex-direction:column}.cmdr-mm-item>*>span{margin-right:4px;margin-bottom:2px;font-size:12px;color:var(--text-muted);font-weight:700;margin-left:2px}.cmdr-mm-item .cmdr-slider{padding-bottom:0}.cmdr-mm-item .cmdr-slider .cmdr-editable{width:auto;font-size:smaller}.cmdr-mm-item .cmdr-slider .cmdr-editable span{color:var(--text-muted)}.cmdr-mm-actions{width:100%;display:flex;flex-direction:row!important;justify-content:end;gap:8px}.cmdr-mm-actions button{all:unset;cursor:pointer;color:var(--text-accent);padding:6px;border-radius:4px;transition:all .15s ease;text-transform:uppercase;font-weight:700;font-size:small}.cmdr-mm-actions button:hover{color:var(--text-accent-hover);background-color:var(--background-secondary)}.cmdr-mm-actions button:before{content:"+ "}.cmdr-mm-actions button:active{transform:scale(.98)}.cmdr-mm-control{margin-top:24px;width:100%;display:flex;justify-content:center;gap:8px}.cmdr-mm-action-text{opacity:0}.cmdr-mm-action-options{display:flex}.body{--at-button-height:48;--at-row-count:0}.AT-multirow.AT-row .mobile-toolbar-options-list{flex-flow:column wrap}.is-mobile .mobile-toolbar{position:sticky!important;z-index:5;margin-bottom:var(--at-offset);padding-bottom:0!important}.is-mobile .mobile-toolbar-spacer{height:0}.AT-always-shown .is-pinned .workspace-drawer-inner{margin-bottom:calc(var(--at-button-height)*var(--at-row-count) + var(--at-spacing))}.AT-multirow.AT-column .mobile-toolbar-options-list{flex-flow:row wrap;overflow-y:auto}.mobile-toolbar-option{height:var(--at-button-height);min-width:var(--at-button-width)}.AT-multirow .mobile-toolbar,.AT-multirow .mobile-toolbar-options-list{height:calc(var(--at-button-height)*var(--at-row-count) + var(--at-spacing))!important}.AT-no-toolbar .mobile-toolbar{display:none}.cmdr-mb-1{margin-bottom:.25rem}.cmdr-block{display:block}.cmdr-flex{display:flex}.cmdr-items-center{align-items:center}.cmdr-justify-between{justify-content:space-between}.cmdr-gap-1{gap:.25rem}.cmdr-justify-self-start{justify-self:start} \ No newline at end of file +.cmdr{transition:transform .4s 0s}.cmdr.status-bar-item{margin:0}.cmdr-removing{transform:translate(100%);z-index:0}.cmdr-ribbon-removing{transform:scale(0)}.cmdr-setting-title{display:flex;align-items:baseline;justify-content:space-between}.cmdr-setting-title h1{font-weight:900;margin-top:6px;margin-bottom:12px}.cmdr-option-setting-name{margin-left:.8ex}.cmdr-base-component{padding:0 20px;margin-bottom:-18px}.cmdr-menu-more-options{color:var(--text-muted);position:absolute;right:6px;padding-top:2px;transform:scale(.9);transition:all .15s ease}.cmdr-menu-more-options:hover{color:var(--text-primary)}.cmdr-mobile .cmdr-credits{place-content:center}.cmdr-fill{border:2px solid transparent;width:100%}.cmdr-icon{height:20px;align-self:center}.cmdr-setting-modal>.modal{height:60vh;width:80vw}.cmdr-editable{display:inline-block}.cmdr-editable input{padding:0;border:none;height:unset;background-color:transparent!important;border-bottom:1px solid var(--interactive-accent);border-radius:0}.cmdr-setting-content{height:calc(100% - 10rem)}.cmdr-setting-content .setting-item:first{border-top:none}.cmdr-commands-empty{display:flex;place-items:center;flex-flow:column;margin:2.5rem 0 1.25rem;place-content:center}.cmdr-commands-empty svg{width:100%}.cmdr-commands-empty h3{margin:8px 0;font-weight:900}.cmdr-sep-con:not(:empty){background-color:var(--background-primary);border:1px solid var(--background-modifier-border);padding:12px;border-radius:12px}.cmdr-sep-con:not(:empty) .setting-item:first-of-type{padding-top:0}.cmdr-sep-con:not(:empty) .setting-item:last-of-type{padding-bottom:0}.cmdr-sep-con:not(:empty) .cmdr-callout-warning{padding:var(--callout-title-padding);display:flex;gap:var(--size-4-1);font-size:var(--callout-title-size);color:rgb(var(--callout-color));line-height:var(--line-height-tight);font-weight:700}.cmdr-sep-con:not(:empty) p.cmdr-warning-description{margin:8px 0}.cmdr-accordion{margin-bottom:16px}.cmdr-accordion .cmdr-accordion-chevron{margin-left:0;margin-right:4px;height:24px}.cmdr-accordion .cmdr-accordion-chevron>svg{transition:all .25s ease}.cmdr-accordion .cmdr-accordion-content{max-height:1000px;transition:all .3s ease-in-out;overflow:hidden;margin-left:14px;padding-left:14px}.cmdr-accordion .cmdr-accordion-content .setting-item{padding-top:12px}.cmdr-accordion[aria-expanded=false] .cmdr-accordion-chevron>svg{transform:rotate(-90deg)}.cmdr-accordion[aria-expanded=false] .cmdr-accordion-content{max-height:0!important;transition:max-height .3s cubic-bezier(0,1,0,1)}.cmdr-accordion .cmdr-accordion-header{display:flex;cursor:var(--cursor)}.cmdr-accordion .cmdr-accordion-header span{font-weight:600;margin-top:0;align-self:end}.cmdr-add-new-wrapper{width:100%;margin-top:12px;margin-bottom:2rem;display:flex;justify-content:center;align-items:center}.cmdr-add-new-wrapper button{margin:0 24px}.cmdr-adder{opacity:0;transition:opacity .12s ease}.cmdr-adder:hover{opacity:1}.cmdr-adder.view-action{order:-1001}.cmdr-page-header{order:-1000}.cmdr-macro-builder .modal{height:80vh;width:95vw;padding:0}.cmdr-macro-builder .modal-close-button{z-index:99}.cmdr-macro-builder .modal-content{margin-top:0}.cmdr-macro-builder .cmdr-macro-icon{display:flex;justify-content:center}.cmdr-macro-builder .cmdr-macro-control{position:absolute;z-index:5;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:3em;top:0}.cmdr-macro-builder .cmdr-macro-control .cmdr-macro-button{background-color:var(--background-secondary-alt);aspect-ratio:1;display:flex;justify-content:center;align-items:center;border-radius:2px;outline:1px solid var(--background-modifier-border);padding:2px}.cmdr-setting-header{margin-bottom:24px;overflow-y:hidden;overflow-x:auto}.cmdr-setting-header .cmdr-setting-tab-group{display:flex;align-items:flex-end;border-bottom:2px solid var(--background-modifier-border)}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group{display:flex;flex-direction:column;align-items:flex-start;border:none}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group .cmdr-tab{border-left:none!important;border-right:none!important;border-top:none!important;transform:none;transition:color .2s ease;width:100%;display:flex;font-weight:500;justify-content:space-between}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group .cmdr-tab:first-child{margin-left:0}.cmdr-setting-header.cmdr-mobile .cmdr-setting-tab-group .cmdr-tab.cmdr-tab-active{transform:none}.cmdr-setting-header .cmdr-tab{padding:6px 8px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;border-left:2px solid transparent;border-right:2px solid transparent}.cmdr-setting-header .cmdr-tab:first-child{margin-left:6px}.cmdr-setting-header .cmdr-tab.cmdr-tab-active{transform:translateY(2px);border-radius:2px;border:2px solid var(--background-modifier-border);border-bottom-color:var(--background-primary)}.is-tablet .cmdr-tab{border:none!important;margin-bottom:2px;padding:10px;font-size:1.08em}.is-tablet .cmdr-tab,.is-tablet .cmdr-tab .cmdr-block{display:flex;align-items:center}.cmdr-mobile-modify-grid{padding:22px}.cmdr-mobile-modify-grid .cmdr-mobile-modify-option{display:flex;width:100%;justify-content:space-between;align-items:center;margin-bottom:16px}.cmdr-mobile-modify-grid .cmdr-mobile-modify-option>input{max-width:70%}.cmdr-mobile-modify-grid .cmdr-mobile-modify-option .dropdown{margin:auto}.cmdr-credits{display:flex}.cmdr-credits>span{color:var(--text-muted);font-size:14px}.cmdr-about{display:flex;flex-direction:column;align-items:center;padding-bottom:64px}.cmdr-about hr{width:100%;margin-top:0}.cmdr-about button{display:flex;align-items:center;height:2.6em;font-weight:700;gap:16px;border-radius:6px;margin-bottom:8px}.cmdr-about button:last-of-type{margin-bottom:32px}.cmdr-about .setting-item button{margin:0}.cmdr-about .cmdr-icon-wrapper{display:flex}.cmdr-about .cmdr-icon-wrapper>svg{width:90px;height:90px}.cmdr-about .cmdr-version{text-decoration:none;font-size:12px;color:var(--text-muted)}.cmdr-name-input-wrapper{display:flex;gap:8px;align-items:center}.cmdr-name-input-wrapper button{margin:8px}.cmdr-icon.clickable-icon.mod-warning{cursor:default}.cmdr-hider-title{display:flex;flex-direction:column;align-items:center}.cmdr-hider-title h3{margin-top:0;margin-bottom:8px;font-weight:900}.cmdr-hider-title p{margin-top:0;margin-bottom:26px;width:50%;text-align:center}.setting-item-control .cmdr-editable{width:2em;text-align:center}.setting-item-control .cmdr-editable input,.setting-item-control .cmdr-editable span{width:2em;color:var(--text-normal)}.cmdr-slider .setting-item-control>div{width:100%}.cmdr-slider input.slider{margin-left:4px}.view-action:not(:last-child){margin-right:var(--cmdr-spacing)}.status-bar-item:not(:last-child),.titlebar-button:not(:last-child){margin-right:calc(var(--cmdr-spacing) - 8px)}.side-dock-ribbon-action:not(:last-child){margin-bottom:calc(var(--cmdr-spacing) - 8px)}.cmdr-cta{position:relative}.cmdr-cta:after{content:"";position:absolute;top:-10%;width:104%;left:-2%;height:120%;outline:2px solid var(--color-accent);border-radius:1em;pointer-events:none}.cmdr-mm-item{display:flex;flex-direction:row!important;align-items:center!important;justify-content:space-between;padding:24px 0}.cmdr-mm-item>:first-child{flex-grow:1}.cmdr-mm-item>:last-child{display:flex}.cmdr-mm-item>*{display:flex;flex-direction:column}.cmdr-mm-item>*>span{margin-right:4px;margin-bottom:2px;font-size:12px;color:var(--text-muted);font-weight:700;margin-left:2px}.cmdr-mm-item .cmdr-slider{padding-bottom:0}.cmdr-mm-item .cmdr-slider .cmdr-editable{width:auto;font-size:smaller}.cmdr-mm-item .cmdr-slider .cmdr-editable span{color:var(--text-muted)}.cmdr-mm-actions{width:100%;display:flex;flex-direction:row!important;justify-content:end;gap:8px}.cmdr-mm-actions button{all:unset;cursor:pointer;color:var(--text-accent);padding:6px;border-radius:4px;transition:all .15s ease;text-transform:uppercase;font-weight:700;font-size:small}.cmdr-mm-actions button:hover{color:var(--text-accent-hover);background-color:var(--background-secondary)}.cmdr-mm-actions button:before{content:"+ "}.cmdr-mm-actions button:active{transform:scale(.98)}.cmdr-mm-control{margin-top:24px;width:100%;display:flex;justify-content:center;gap:8px}.cmdr-mm-action-text{opacity:0}.cmdr-mm-action-options{display:flex}.body{--at-button-height:48;--at-row-count:0}.AT-multirow.AT-row .mobile-toolbar-options-list{flex-flow:column wrap}.is-mobile .mobile-toolbar{position:sticky!important;z-index:5;margin-bottom:var(--at-offset);padding-bottom:0!important}.is-mobile .mobile-toolbar-spacer{height:0}.AT-always-shown .is-pinned .workspace-drawer-inner{margin-bottom:calc(var(--at-button-height)*var(--at-row-count) + var(--at-spacing))}.AT-multirow.AT-column .mobile-toolbar-options-list{flex-flow:row wrap;overflow-y:auto}.mobile-toolbar-option{height:var(--at-button-height);min-width:var(--at-button-width)}.AT-multirow .mobile-toolbar,.AT-multirow .mobile-toolbar-options-list{height:calc(var(--at-button-height)*var(--at-row-count) + var(--at-spacing))!important}.AT-no-toolbar .mobile-toolbar{display:none}.cmdr-mb-1{margin-bottom:.25rem}.cmdr-block{display:block}.cmdr-flex{display:flex}.cmdr-items-center{align-items:center}.cmdr-justify-between{justify-content:space-between}.cmdr-gap-1{gap:.25rem}.cmdr-justify-self-start{justify-self:start} \ No newline at end of file diff --git a/.obsidian/plugins/editing-toolbar/main.js b/.obsidian/plugins/editing-toolbar/main.js index 5673a57b..8aee7ded 100644 --- a/.obsidian/plugins/editing-toolbar/main.js +++ b/.obsidian/plugins/editing-toolbar/main.js @@ -1,12 +1,12 @@ -"use strict";var e=require("obsidian");const t=["Custom","editingToolbar","editingToolbarSub","editingToolbarAdd","editingToolbarDelete","editingToolbarReload","codeblock-glyph","underline-glyph","superscript-glyph","subscript-glyph","bot-glyph","header-1","header-2","header-3","header-4","header-5","header-6","header-n","obsidian","obsidian-new","accessibility","activity","air-vent","airplay","alarm-check","alarm-clock-off","alarm-clock","alarm-minus","alarm-plus","album","alert-circle","alert-octagon","alert-triangle","align-center-horizontal","align-center-vertical","align-center","align-end-horizontal","align-end-vertical","align-horizontal-distribute-center","align-horizontal-distribute-end","align-horizontal-distribute-start","align-horizontal-justify-center","align-horizontal-justify-end","align-horizontal-justify-start","align-horizontal-space-around","align-horizontal-space-between","align-justify","align-left","align-right","align-start-horizontal","align-start-vertical","align-vertical-distribute-center","align-vertical-distribute-end","align-vertical-distribute-start","align-vertical-justify-center","align-vertical-justify-end","align-vertical-justify-start","align-vertical-space-around","align-vertical-space-between","anchor","angry","annoyed","aperture","apple","archive-restore","archive","armchair","arrow-big-down","arrow-big-left","arrow-big-right","arrow-big-up","arrow-down-circle","arrow-down-left","arrow-down-right","arrow-down","arrow-left-circle","arrow-left-right","arrow-left","arrow-right-circle","arrow-right","arrow-up-circle","arrow-up-left","arrow-up-right","arrow-up","asterisk","at-sign","award","axe","axis-3d","baby","backpack","baggage-claim","banana","banknote","bar-chart-2","bar-chart-3","bar-chart-4","bar-chart-horizontal","bar-chart","baseline","bath","battery-charging","battery-full","battery-low","battery-medium","battery","beaker","bed-double","bed-single","bed","beer","bell-minus","bell-off","bell-plus","bell-ring","bell","bike","binary","bitcoin","bluetooth-connected","bluetooth-off","bluetooth-searching","bluetooth","bold","bomb","bone","book-open","book","bookmark-minus","bookmark-plus","bookmark","bot","box-select","box","boxes","briefcase","brush","bug","building-2","building","bus","cake","calculator","calendar-check-2","calendar-check","calendar-clock","calendar-days","calendar-heart","calendar-minus","calendar-off","calendar-plus","calendar-range","calendar-search","calendar-x2","calendar-x","calendar","camera-off","camera","car","carrot","cast","check-circle-2","check-circle","check-square","check","chef-hat","cherry","chevron-down","chevron-first","chevron-last","chevron-left","chevron-right","chevron-up","chevrons-down-up","chevrons-down","chevrons-left-right","chevrons-left","chevrons-right-left","chevrons-right","chevrons-up-down","chevrons-up","chrome","cigarette-off","cigarette","circle-dot","circle-ellipsis","circle-slashed","circle","citrus","clapperboard","clipboard-check","clipboard-copy","clipboard-edit","clipboard-list","clipboard-signature","clipboard-type","clipboard-x","clipboard","clock-1","clock-10","clock-11","clock-12","clock-2","clock-3","clock-4","clock-5","clock-6","clock-7","clock-8","clock-9","clock","cloud-cog","cloud-drizzle","cloud-fog","cloud-hail","cloud-lightning","cloud-moon-rain","cloud-moon","cloud-off","cloud-rain-wind","cloud-rain","cloud-snow","cloud-sun-rain","cloud-sun","cloud","cloudy","clover","code-2","code","codepen","codesandbox","coffee","cog","coins","columns","command","compass","component","contact","contrast","cookie","copy","copyleft","copyright","corner-down-left","corner-down-right","corner-left-down","corner-left-up","corner-right-down","corner-right-up","corner-up-left","corner-up-right","cpu","credit-card","croissant","crop","cross","crosshair","crown","cup-soda","curly-braces","currency","database","delete","diamond","dice-1","dice-2","dice-3","dice-4","dice-5","dice-6","dices","diff","disc","divide-circle","divide-square","divide","dollar-sign","download-cloud","download","dribbble","droplet","droplets","drumstick","edit-2","edit-3","edit","egg-fried","egg","equal-not","equal","eraser","euro","expand","external-link","eye-off","eye","facebook","factory","fast-forward","feather","figma","file-archive","file-audio-2","file-audio","file-axis-3d","file-badge-2","file-badge","file-bar-chart-2","file-bar-chart","file-box","file-check-2","file-check","file-clock","file-code","file-cog-2","file-cog","file-diff","file-digit","file-down","file-edit","file-heart","file-image","file-input","file-json-2","file-json","file-key-2","file-key","file-line-chart","file-lock-2","file-lock","file-minus-2","file-minus","file-output","file-pie-chart","file-plus-2","file-plus","file-question","file-scan","file-search-2","file-search","file-signature","file-spreadsheet","file-symlink","file-terminal","file-text","file-type-2","file-type","file-up","file-video-2","file-video","file-volume-2","file-volume","file-warning","file-x2","file-x","file","files","film","filter","fingerprint","flag-off","flag-triangle-left","flag-triangle-right","flag","flame","flashlight-off","flashlight","flask-conical","flask-round","flip-horizontal-2","flip-horizontal","flip-vertical-2","flip-vertical","flower-2","flower","focus","folder-archive","folder-check","folder-clock","folder-closed","folder-cog-2","folder-cog","folder-down","folder-edit","folder-heart","folder-input","folder-key","folder-lock","folder-minus","folder-open","folder-output","folder-plus","folder-search-2","folder-search","folder-symlink","folder-tree","folder-up","folder-x","folder","folders","form-input","forward","frame","framer","frown","fuel","function-square","gamepad-2","gamepad","gauge","gavel","gem","ghost","gift","git-branch-plus","git-branch","git-commit","git-compare","git-fork","git-merge","git-pull-request-closed","git-pull-request-draft","git-pull-request","github","gitlab","glass-water","glasses","globe-2","globe","grab","graduation-cap","grape","grid","grip-horizontal","grip-vertical","hammer","hand-metal","hand","hard-drive","hard-hat","hash","haze","headphones","heart-crack","heart-handshake","heart-off","heart-pulse","heart","help-circle","hexagon","highlighter","history","home","hourglass","ice-cream","image-minus","image-off","image-plus","image","import","inbox","indent","indian-rupee","infinity","info","inspect","instagram","italic","japanese-yen","joystick","key","keyboard","lamp-ceiling","lamp-desk","lamp-floor","lamp-wall-down","lamp-wall-up","lamp","landmark","languages","laptop-2","laptop","lasso-select","lasso","laugh","layers","layout-dashboard","layout-grid","layout-list","layout-template","layout","leaf","library","life-buoy","lightbulb-off","lightbulb","line-chart","link-2off","link-2","link","linkedin","list-checks","list-end","list-minus","list-music","list-ordered","list-plus","list-start","list-video","list-x","list","loader-2","loader","locate-fixed","locate-off","locate","lock","log-in","log-out","luggage","magnet","mail-check","mail-minus","mail-open","mail-plus","mail-question","mail-search","mail-warning","mail-x","mail","mails","map-pin-off","map-pin","map","martini","maximize-2","maximize","medal","megaphone-off","megaphone","meh","menu","message-circle","message-square","mic-2","mic-off","mic","microscope","milestone","minimize-2","minimize","minus-circle","minus-square","minus","monitor-off","monitor-speaker","monitor","moon","more-horizontal","more-vertical","mountain-snow","mountain","mouse-pointer-2","mouse-pointer-click","mouse-pointer","mouse","move-3d","move-diagonal-2","move-diagonal","move-horizontal","move-vertical","move","music-2","music-3","music-4","music","navigation-2off","navigation-2","navigation-off","navigation","network","newspaper","octagon","option","outdent","package-2","package-check","package-minus","package-open","package-plus","package-search","package-x","package","paint-bucket","paintbrush-2","paintbrush","palette","palmtree","paperclip","party-popper","pause-circle","pause-octagon","pause","pen-tool","pencil","percent","person-standing","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","phone","pie-chart","piggy-bank","pin-off","pin","pipette","pizza","plane","play-circle","play","plug-zap","plus-circle","plus-square","plus","pocket","podcast","pointer","pound-sterling","power-off","power","printer","puzzle","qr-code","quote","radio-receiver","radio","recycle","redo-2","redo","refresh-ccw","refresh-cw","regex","repeat-1","repeat","reply-all","reply","rewind","rocket","rocking-chair","rotate-3d","rotate-ccw","rotate-cw","rss","ruler","russian-ruble","save","scale-3d","scale","scaling","scan-face","scan-line","scan","scissors","screen-share-off","screen-share","scroll","search","send","separator-horizontal","separator-vertical","server-cog","server-crash","server-off","server","settings-2","settings","share-2","share","sheet","shield-alert","shield-check","shield-close","shield-off","shield","shirt","shopping-bag","shopping-cart","shovel","shrink","shrub","shuffle","sidebar-close","sidebar-open","sidebar","sigma","signal-high","signal-low","signal-medium","signal-zero","signal","siren","skip-back","skip-forward","skull","slack","slash","slice","sliders-horizontal","sliders","smartphone-charging","smartphone","smile-plus","smile","snowflake","sofa","sort-asc","sort-desc","speaker","sprout","square","star-half","star-off","star","stethoscope","sticker","sticky-note","stop-circle","stretch-horizontal","stretch-vertical","strikethrough","subscript","sun-dim","sun-medium","sun-moon","sun-snow","sun","sunrise","sunset","superscript","swiss-franc","switch-camera","sword","swords","syringe","table-2","table","tablet","tag","tags","target","tent","terminal-square","terminal","text-cursor-input","text-cursor","thermometer-snowflake","thermometer-sun","thermometer","thumbs-down","thumbs-up","ticket","timer-off","timer-reset","timer","toggle-left","toggle-right","tornado","toy-brick","train","trash-2","trash","tree-deciduous","tree-pine","trees","trello","trending-down","trending-up","triangle","trophy","truck","tv-2","tv","twitch","twitter","type","umbrella","underline","undo-2","undo","unlink-2","unlink","unlock","upload-cloud","upload","usb","user-check","user-cog","user-minus","user-plus","user-x","user","users","utensils-crossed","utensils","venetian-mask","verified","vibrate-off","vibrate","video-off","video","view","voicemail","volume-1","volume-2","volume-x","volume","wallet","wand-2","wand","watch","waves","webcam","webhook","wifi-off","wifi","wind","wine","wrap-text","wrench","x-circle","x-octagon","x-square","x","youtube","zap-off","zap","zoom-in","zoom-out","create-new","trash","search","right-triangle","document","folder","pencil","left-arrow","right-arrow","three-horizontal-bars","dot-network","audio-file","image-file","pdf-file","gear","documents","blocks","go-to-file","presentation","cross-in-box","microphone","microphone-filled","two-columns","link","popup-open","checkmark","hashtag","left-arrow-with-tail","right-arrow-with-tail","up-arrow-with-tail","down-arrow-with-tail","lines-of-text","vertical-three-dots","pin","magnifying-glass","info","horizontal-split","vertical-split","calendar-with-checkmark","folder-minus","sheets-in-box","up-and-down-arrows","broken-link","cross","any-key","reset","star","crossed-star","dice","filled-pin","enter","help","vault","open-vault","paper-plane","bullet-list","uppercase-lowercase-a","star-list","expand-vertically","languages","switch","pane-layout","install","sync","check-in-circle","sync-small","check-small","paused","forward-arrow","stacked-levels","bracket-glyph","note-glyph","tag-glyph","price-tag-glyph","heading-glyph","bold-glyph","italic-glyph","strikethrough-glyph","highlight-glyph","code-glyph","quote-glyph","link-glyph","bullet-list-glyph","number-list-glyph","checkbox-glyph","undo-glyph","redo-glyph","up-chevron-glyph","down-chevron-glyph","left-chevron-glyph","right-chevron-glyph","percent-sign-glyph","keyboard-glyph","double-up-arrow-glyph","double-down-arrow-glyph","image-glyph","wrench-screwdriver-glyph","clock","plus-with-circle","minus-with-circle","indent-glyph","unindent-glyph","fullscreen","exit-fullscreen","cloud","run-command","compress-glyph","enlarge-glyph","scissors-glyph","up-curly-arrow-glyph","down-curly-arrow-glyph","plus-minus-glyph","links-going-out","links-coming-in","add-note-glyph","duplicate-glyph","clock-glyph","calendar-glyph","command-glyph","dice-glyph","file-explorer-glyph","graph-glyph","import-glyph","navigate-glyph","open-elsewhere-glyph","presentation-glyph","paper-plane-glyph","question-mark-glyph","restore-file-glyph","search-glyph","star-glyph","play-audio-glyph","stop-audio-glyph","tomorrow-glyph","wand-glyph","workspace-glyph","yesterday-glyph","box-glyph","merge-files-glyph","merge-files","two-blank-pages","scissors","paste","paste-text","split","select-all-text","wand","github-glyph","reading-glasses","user-manual-filled","discord-filled","chat-bubbles-filled","experiment-filled","bracket-glyph","box-glyph","check-small","dice-glyph","dice","discord","right-triangle","heading-glyph","help","keyboard-toggle","broken-link","experiment","left-arrow","link","link-glyph","links-coming-in","links-going-out","open-vault","paused","question-mark-glyph","right-arrow","sidebar-left","sidebar-right","sheets-in-box","star-list","sync-small","tabs","uppercase-lowercase-a","vault","stack-horizontal","stack-vertical","stretch-horizontal","stretch-vertical","distribute-space-horizontal","distribute-space-vertical"],i=1024;let o=0;class n{constructor(e,t){this.from=e,this.to=t}}class s{constructor(e={}){this.id=o++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return"function"!=typeof e&&(e=l.match(e)),t=>{let i=e(t);return void 0===i?null:[this,i]}}}s.closedBy=new s({deserialize:e=>e.split(" ")}),s.openedBy=new s({deserialize:e=>e.split(" ")}),s.group=new s({deserialize:e=>e.split(" ")}),s.isolate=new s({deserialize:e=>{if(e&&"rtl"!=e&&"ltr"!=e&&"auto"!=e)throw new RangeError("Invalid value for isolate: "+e);return e||"auto"}}),s.contextHash=new s({perNode:!0}),s.lookAhead=new s({perNode:!0}),s.mounted=new s({perNode:!0});class r{constructor(e,t,i,o=!1){this.tree=e,this.overlay=t,this.parser=i,this.bracketed=o}static get(e){return e&&e.props&&e.props[s.mounted.id]}}const a=Object.create(null);class l{constructor(e,t,i,o=0){this.name=e,this.props=t,this.id=i,this.flags=o}static define(e){let t=e.props&&e.props.length?Object.create(null):a,i=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(null==e.name?8:0),o=new l(e.name||"",t,e.id,i);if(e.props)for(let i of e.props)if(Array.isArray(i)||(i=i(o)),i){if(i[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[i[0].id]=i[1]}return o}prop(e){return this.props[e.id]}get isTop(){return(1&this.flags)>0}get isSkipped(){return(2&this.flags)>0}get isError(){return(4&this.flags)>0}get isAnonymous(){return(8&this.flags)>0}is(e){if("string"==typeof e){if(this.name==e)return!0;let t=this.prop(s.group);return!!t&&t.indexOf(e)>-1}return this.id==e}static match(e){let t=Object.create(null);for(let i in e)for(let o of i.split(" "))t[o]=e[i];return e=>{for(let i=e.prop(s.group),o=-1;o<(i?i.length:0);o++){let n=t[o<0?e.name:i[o]];if(n)return n}}}}l.none=new l("",Object.create(null),0,8);const c=new WeakMap,d=new WeakMap;var h;!function(e){e[e.ExcludeBuffers=1]="ExcludeBuffers",e[e.IncludeAnonymous=2]="IncludeAnonymous",e[e.IgnoreMounts=4]="IgnoreMounts",e[e.IgnoreOverlays=8]="IgnoreOverlays",e[e.EnterBracketed=16]="EnterBracketed"}(h||(h={}));class u{constructor(e,t,i,o,n){if(this.type=e,this.children=t,this.positions=i,this.length=o,this.props=null,n&&n.length){this.props=Object.create(null);for(let[e,t]of n)this.props["number"==typeof e?e:e.id]=t}}toString(){let e=r.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let e of this.children){let i=e.toString();i&&(t&&(t+=","),t+=i)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new T(this.topNode,e)}cursorAt(e,t=0,i=0){let o=c.get(this)||this.topNode,n=new T(o);return n.moveTo(e,t),c.set(this,n._tree),n}get topNode(){return new y(this,0,0,null)}resolve(e,t=0){let i=f(c.get(this)||this.topNode,e,t,!1);return c.set(this,i),i}resolveInner(e,t=0){let i=f(d.get(this)||this.topNode,e,t,!0);return d.set(this,i),i}resolveStack(e,t=0){return function(e,t,i){let o=e.resolveInner(t,i),n=null;for(let e=o instanceof y?o:o.context.parent;e;e=e.parent)if(e.index<0){let s=e.parent;(n||(n=[o])).push(s.resolve(t,i)),e=s}else{let s=r.get(e.tree);if(s&&s.overlay&&s.overlay[0].from<=t&&s.overlay[s.overlay.length-1].to>=t){let r=new y(s.tree,s.overlay[0].from+e.from,-1,e);(n||(n=[o])).push(f(r,t,i,!1))}}return n?k(n):o}(this,e,t)}iterate(e){let{enter:t,leave:i,from:o=0,to:n=this.length}=e,s=e.mode||0,r=(s&h.IncludeAnonymous)>0;for(let e=this.cursor(s|h.IncludeAnonymous);;){let s=!1;if(e.from<=n&&e.to>=o&&(!r&&e.type.isAnonymous||!1!==t(e))){if(e.firstChild())continue;s=!0}for(;s&&i&&(r||!e.type.isAnonymous)&&i(e),!e.nextSibling();){if(!e.parent())return;s=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:I(l.none,this.children,this.positions,0,this.children.length,0,this.length,(e,t,i)=>new u(this.type,e,t,i,this.propValues),e.makeTree||((e,t,i)=>new u(l.none,e,t,i)))}static build(e){return function(e){var t;let{buffer:o,nodeSet:n,maxBufferLength:r=i,reused:a=[],minRepeatType:l=n.types.length}=e,c=Array.isArray(o)?new p(o,o.length):o,d=n.types,h=0,g=0;function f(e,t,i,o,s,u){let{id:p,start:k,end:S,size:T}=c,E=g,M=h;if(T<0){if(c.next(),-1==T){let t=a[p];return i.push(t),void o.push(k-e)}if(-3==T)return void(h=p);if(-4==T)return void(g=p);throw new RangeError(`Unrecognized record size: ${T}`)}let A,D,O=d[p],B=k-e;if(S-k<=r&&(D=C(c.pos-t,s))){let t=new Uint16Array(D.size-D.skip),i=c.pos-D.size,o=t.length;for(;c.pos>i;)o=x(D.start,t,o);A=new m(t,S-D.start,n),B=D.start-e}else{let e=c.pos-T;c.next();let t=[],i=[],o=p>=l?p:-1,n=0,s=S;for(;c.pos>e;)o>=0&&c.id==o&&c.size>=0?(c.end<=s-r&&(w(t,i,k,n,c.end,s,o,E,M),n=t.length,s=c.end),c.next()):u>2500?b(k,e,t,i):f(k,e,t,i,o,u+1);if(o>=0&&n>0&&n-1&&n>0){let e=y(O,M);A=I(O,t,i,0,t.length,0,S-k,e,e)}else A=v(O,t,i,S-k,E-S,M)}i.push(A),o.push(B)}function b(e,t,i,o){let s=[],a=0,l=-1;for(;c.pos>t;){let{id:e,start:t,end:i,size:o}=c;if(o>4)c.next();else{if(l>-1&&t=0;e-=3)t[i++]=s[e],t[i++]=s[e+1]-r,t[i++]=s[e+2]-r,t[i++]=i;i.push(new m(t,s[2]-r,n)),o.push(r-e)}}function y(e,t){return(i,o,n)=>{let r,a,l=0,c=i.length-1;if(c>=0&&(r=i[c])instanceof u){if(!c&&r.type==e&&r.length==n)return r;(a=r.prop(s.lookAhead))&&(l=o[c]+r.length+a)}return v(e,i,o,n,l,t)}}function w(e,t,i,o,s,r,a,l,c){let d=[],h=[];for(;e.length>o;)d.push(e.pop()),h.push(t.pop()+i-s);e.push(v(n.types[a],d,h,r-s,l-r,c)),t.push(s-i)}function v(e,t,i,o,n,r,a){if(r){let e=[s.contextHash,r];a=a?[e].concat(a):[e]}if(n>25){let e=[s.lookAhead,n];a=a?[e].concat(a):[e]}return new u(e,t,i,o,a)}function C(e,t){let i=c.fork(),o=0,n=0,s=0,a=i.end-r,d={size:0,start:0,skip:0};e:for(let r=i.pos-e;i.pos>r;){let e=i.size;if(i.id==t&&e>=0){d.size=o,d.start=n,d.skip=s,s+=4,o+=4,i.next();continue}let c=i.pos-e;if(e<0||c=l?4:0,u=i.start;for(i.next();i.pos>c;){if(i.size<0){if(-3!=i.size&&-4!=i.size)break e;h+=4}else i.id>=l&&(h+=4);i.next()}n=u,o+=e,s+=h}return(t<0||o==e)&&(d.size=o,d.start=n,d.skip=s),d.size>4?d:void 0}function x(e,t,i){let{id:o,start:n,end:s,size:r}=c;if(c.next(),r>=0&&o4){let o=c.pos-(r-4);for(;c.pos>o;)i=x(e,t,i)}t[--i]=a,t[--i]=s-e,t[--i]=n-e,t[--i]=o}else-3==r?h=o:-4==r&&(g=o);return i}let k=[],S=[];for(;c.pos>0;)f(e.start||0,e.bufferStart||0,k,S,-1,0);let T=null!==(t=e.length)&&void 0!==t?t:k.length?S[0]+k[0].length:0;return new u(d[e.topID],k.reverse(),S.reverse(),T)}(e)}}u.empty=new u(l.none,[],[],0);class p{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new p(this.buffer,this.index)}}class m{constructor(e,t,i){this.buffer=e,this.length=t,this.set=i}get type(){return l.none}toString(){let e=[];for(let t=0;t0));a=s[a+3]);return r}slice(e,t,i){let o=this.buffer,n=new Uint16Array(t-e),s=0;for(let r=e,a=0;r=t&&it;case 1:return i<=t&&o>t;case 2:return o>t;case 4:return!0}}function f(e,t,i,o){for(var n;e.from==e.to||(i<1?e.from>=t:e.from>t)||(i>-1?e.to<=t:e.to0?l.length:-1;e!=d;e+=t){let d=l[e],p=c[e]+a.from;if(n&h.EnterBracketed&&d instanceof u&&null===(null===(s=r.get(d))||void 0===s?void 0:s.overlay)&&(p>=i||p+d.length<=i)||g(o,i,p,p+d.length))if(d instanceof m){if(n&h.ExcludeBuffers)continue;let s=d.findChild(0,d.buffer.length,t,i-p,o);if(s>-1)return new x(new C(a,d,e,p),null,s)}else if(n&h.IncludeAnonymous||!d.type.isAnonymous||E(d)){let s;if(!(n&h.IgnoreMounts)&&(s=r.get(d))&&!s.overlay)return new y(s.tree,p,e,a);let l=new y(d,p,e,a);return n&h.IncludeAnonymous||!l.type.isAnonymous?l:l.nextChild(t<0?d.children.length-1:0,t,i,o,n)}}if(n&h.IncludeAnonymous||!a.type.isAnonymous)return null;if(e=a.index>=0?a.index+t:t<0?-1:a._parent._tree.children.length,a=a._parent,!a)return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,t,i=0){let o;if(!(i&h.IgnoreOverlays)&&(o=r.get(this._tree))&&o.overlay){let n=e-this.from,s=i&h.EnterBracketed&&o.bracketed;for(let{from:e,to:i}of o.overlay)if((t>0||s?e<=n:e=n:i>n))return new y(o.tree,o.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,i)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function w(e,t,i,o){let n=e.cursor(),s=[];if(!n.firstChild())return s;if(null!=i)for(let e=!1;!e;)if(e=n.type.is(i),!n.nextSibling())return s;for(;;){if(null!=o&&n.type.is(o))return s;if(n.type.is(t)&&s.push(n.node),!n.nextSibling())return null==o?s:[]}}function v(e,t,i=t.length-1){for(let o=e;i>=0;o=o.parent){if(!o)return!1;if(!o.type.isAnonymous){if(t[i]&&t[i]!=o.name)return!1;i--}}return!0}class C{constructor(e,t,i,o){this.parent=e,this.buffer=t,this.index=i,this.start=o}}class x extends b{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,i){super(),this.context=e,this._parent=t,this.index=i,this.type=e.buffer.set.types[e.buffer.buffer[i]]}child(e,t,i){let{buffer:o}=this.context,n=o.findChild(this.index+4,o.buffer[this.index+3],e,t-this.context.start,i);return n<0?null:new x(this.context,this,n)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,t,i=0){if(i&h.ExcludeBuffers)return null;let{buffer:o}=this.context,n=o.findChild(this.index+4,o.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return n<0?null:new x(this.context,this,n)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new x(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new x(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:i}=this.context,o=this.index+4,n=i.buffer[this.index+3];if(n>o){let s=i.buffer[this.index+1];e.push(i.slice(o,n,s)),t.push(0)}return new u(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function k(e){if(!e.length)return null;let t=0,i=e[0];for(let o=1;oi.from||n.to0){if(this.index-1)for(let o=t+e,n=e<0?-1:i._tree.children.length;o!=n;o+=e){let e=i._tree.children[o];if(this.mode&h.IncludeAnonymous||e instanceof m||!e.type.isAnonymous||E(e))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to=0;){for(let s=e;s;s=s._parent)if(s.index==o){if(o==this.index)return s;t=s,i=n+1;break e}o=this.stack[--n]}for(let e=i;e=0;n--){if(n<0)return v(this._tree,e,o);let s=i[t.buffer[this.stack[n]]];if(!s.isAnonymous){if(e[o]&&e[o]!=s.name)return!1;o--}}return!0}}function E(e){return e.children.some(e=>e instanceof m||!e.type.isAnonymous||E(e))}const M=new WeakMap;function A(e,t){if(!e.isAnonymous||t instanceof m||t.type!=e)return 1;let i=M.get(t);if(null==i){i=1;for(let o of t.children){if(o.type!=e||!(o instanceof u)){i=1;break}i+=A(e,o)}M.set(t,i)}return i}function I(e,t,i,o,n,s,r,a,l){let c=0;for(let i=o;i=d)break;m+=t}if(c==n+1){if(m>d){let e=i[n];t(e.children,e.positions,0,e.children.length,o[n]+a);continue}h.push(i[n])}else{let t=o[c-1]+i[c-1].length-p;h.push(I(e,i,o,n,c,p,t,null,l))}u.push(p+a-s)}}(t,i,o,n,0),(a||l)(h,u,r)}class D{constructor(e,t,i,o,n=!1,s=!1){this.from=e,this.to=t,this.tree=i,this.offset=o,this.open=(n?1:0)|(s?2:0)}get openStart(){return(1&this.open)>0}get openEnd(){return(2&this.open)>0}static addTree(e,t=[],i=!1){let o=[new D(0,e.length,e,0,!1,i)];for(let i of t)i.to>e.length&&o.push(i);return o}static applyChanges(e,t,i=128){if(!t.length)return e;let o=[],n=1,s=e.length?e[0]:null;for(let r=0,a=0,l=0;;r++){let c=r=i)for(;s&&s.from=t.from||d<=t.to||l){let e=Math.max(t.from,a)-l,i=Math.min(t.to,d)-l;t=e>=i?null:new D(e,i,t.tree,t.offset+l,r>0,!!c)}if(t&&o.push(t),s.to>d)break;s=nnew n(e.from,e.to)):[new n(0,0)]:[new n(0,e.length)],this.createParse(e,t||[],i)}parse(e,t,i){let o=this.startParse(e,t,i);for(;;){let e=o.advance();if(e)return e}}}class B{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}new s({perNode:!0});let L=[],P=[];function N(e){if(e<768)return!1;for(let t=0,i=L.length;;){let o=t+i>>1;if(e=P[o]))return!0;t=o+1}if(t==i)return!1}}function R(e){return e>=127462&&e<=127487}(()=>{let e="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let t=0,i=0;t=0&&R(z(e,o));)i++,o-=2;if(i%2==0)break;t+=2}}}return t}function _(e,t,i){for(;t>0;){let o=q(e,t-2,i);if(o=56320&&e<57344}function W(e){return e>=55296&&e<56320}function H(e){return e<65536?1:2}class ${lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=Q(this,e,t);let o=[];return this.decompose(0,e,o,2),i.length&&i.decompose(0,i.length,o,3),this.decompose(t,this.length,o,1),j.from(o,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=Q(this,e,t);let i=[];return this.decompose(e,t,i,0),j.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),o=new Z(this),n=new Z(e);for(let e=t,s=t;;){if(o.next(e),n.next(e),e=0,o.lineBreak!=n.lineBreak||o.done!=n.done||o.value!=n.value)return!1;if(s+=o.value.length,o.done||s>=i)return!0}}iter(e=1){return new Z(this,e)}iterRange(e,t=this.length){return new K(this,e,t)}iterLines(e,t){let i;if(null==e)i=this.iter();else{null==t&&(t=this.lines+1);let o=this.line(e).from;i=this.iterRange(o,Math.max(o,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new J(i)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(0==e.length)throw new RangeError("A document must have at least one line");return 1!=e.length||e[0]?e.length<=32?new U(e):j.from(U.split(e,[])):$.empty}}class U extends ${constructor(e,t=function(e){let t=-1;for(let i of e)t+=i.length+1;return t}(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,o){for(let n=0;;n++){let s=this.text[n],r=o+s.length;if((t?i:r)>=e)return new X(o,r,i,s);o=r+1,i++}}decompose(e,t,i,o){let n=e<=0&&t>=this.length?this:new U(G(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(1&o){let e=i.pop(),t=Y(n.text,e.text.slice(),0,n.length);if(t.length<=32)i.push(new U(t,e.length+n.length));else{let e=t.length>>1;i.push(new U(t.slice(0,e)),new U(t.slice(e)))}}else i.push(n)}replace(e,t,i){if(!(i instanceof U))return super.replace(e,t,i);[e,t]=Q(this,e,t);let o=Y(this.text,Y(i.text,G(this.text,0,e)),t),n=this.length+i.length-(t-e);return o.length<=32?new U(o,n):j.from(U.split(o,[]),n)}sliceString(e,t=this.length,i="\n"){[e,t]=Q(this,e,t);let o="";for(let n=0,s=0;n<=t&&se&&s&&(o+=i),en&&(o+=r.slice(Math.max(0,e-n),t-n)),n=a+1}return o}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let i=[],o=-1;for(let n of e)i.push(n),o+=n.length+1,32==i.length&&(t.push(new U(i,o)),i=[],o=-1);return o>-1&&t.push(new U(i,o)),t}}class j extends ${constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let t of e)this.lines+=t.lines}lineInner(e,t,i,o){for(let n=0;;n++){let s=this.children[n],r=o+s.length,a=i+s.lines-1;if((t?a:r)>=e)return s.lineInner(e,t,i,o);o=r+1,i=a+1}}decompose(e,t,i,o){for(let n=0,s=0;s<=t&&n=s){let n=o&((s<=e?1:0)|(a>=t?2:0));s>=e&&a<=t&&!n?i.push(r):r.decompose(e-s,t-s,i,n)}s=a+1}}replace(e,t,i){if([e,t]=Q(this,e,t),i.lines=n&&t<=r){let a=s.replace(e-n,t-n,i),l=this.lines-s.lines+a.lines;if(a.lines>4&&a.lines>l>>6){let n=this.children.slice();return n[o]=a,new j(n,this.length-(t-e)+i.length)}return super.replace(n,r,a)}n=r+1}return super.replace(e,t,i)}sliceString(e,t=this.length,i="\n"){[e,t]=Q(this,e,t);let o="";for(let n=0,s=0;ne&&n&&(o+=i),es&&(o+=r.sliceString(e-s,t-s,i)),s=a+1}return o}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof j))return 0;let i=0,[o,n,s,r]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;o+=t,n+=t){if(o==s||n==r)return i;let a=this.children[o],l=e.children[n];if(a!=l)return i+a.scanIdentical(l,t);i+=a.length+1}}static from(e,t=e.reduce((e,t)=>e+t.length+1,-1)){let i=0;for(let t of e)i+=t.lines;if(i<32){let i=[];for(let t of e)t.flatten(i);return new U(i,t)}let o=Math.max(32,i>>5),n=o<<1,s=o>>1,r=[],a=0,l=-1,c=[];function d(e){let t;if(e.lines>n&&e instanceof j)for(let t of e.children)d(t);else e.lines>s&&(a>s||!a)?(h(),r.push(e)):e instanceof U&&a&&(t=c[c.length-1])instanceof U&&e.lines+t.lines<=32?(a+=e.lines,l+=e.length+1,c[c.length-1]=new U(t.text.concat(e.text),t.length+1+e.length)):(a+e.lines>o&&h(),a+=e.lines,l+=e.length+1,c.push(e))}function h(){0!=a&&(r.push(1==c.length?c[0]:j.from(c,l)),l=-1,a=c.length=0)}for(let t of e)d(t);return h(),1==r.length?r[0]:new j(r,t)}}function Y(e,t,i=0,o=1e9){for(let n=0,s=0,r=!0;s=i&&(l>o&&(a=a.slice(0,o-n)),n0?1:(e instanceof U?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,o=this.nodes[i],n=this.offsets[i],s=n>>1,r=o instanceof U?o.text.length:o.children.length;if(s==(t>0?r:0)){if(0==i)return this.done=!0,this.value="",this;t>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&n)==(t>0?0:1)){if(this.offsets[i]+=t,0==e)return this.lineBreak=!0,this.value="\n",this;e--}else if(o instanceof U){let n=o.text[s+(t<0?-1:0)];if(this.offsets[i]+=t,n.length>Math.max(0,e))return this.value=0==e?n:t>0?n.slice(e):n.slice(0,n.length-e),this;e-=n.length}else{let n=o.children[s+(t<0?-1:0)];e>n.length?(e-=n.length,this.offsets[i]+=t):(t<0&&this.offsets[i]--,this.nodes.push(n),this.offsets.push(t>0?1:(n instanceof U?n.text.length:n.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class K{constructor(e,t,i){this.value="",this.done=!1,this.cursor=new Z(e,t>i?-1:1),this.pos=t>i?e.length:0,this.from=Math.min(t,i),this.to=Math.max(t,i)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let i=t<0?this.pos-this.from:this.to-this.pos;e>i&&(e=i),i-=e;let{value:o}=this.cursor.next(e);return this.pos+=(o.length+e)*t,this.value=o.length<=i?o:t<0?o.slice(o.length-i):o.slice(0,i),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}}class J{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:i,value:o}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=o,this.afterBreak=!1),this}get lineBreak(){return!1}}"undefined"!=typeof Symbol&&($.prototype[Symbol.iterator]=function(){return this.iter()},Z.prototype[Symbol.iterator]=K.prototype[Symbol.iterator]=J.prototype[Symbol.iterator]=function(){return this});class X{constructor(e,t,i,o){this.from=e,this.to=t,this.number=i,this.text=o}get length(){return this.to-this.from}}function Q(e,t,i){return[t=Math.max(0,Math.min(e.length,t)),Math.max(t,Math.min(e.length,i))]}function ee(e,t,i=!0,o=!0){return F(e,t,i,o)}const te=/\r\n?|\n/;var ie=function(e){return e[e.Simple=0]="Simple",e[e.TrackDel=1]="TrackDel",e[e.TrackBefore=2]="TrackBefore",e[e.TrackAfter=3]="TrackAfter",e}(ie||(ie={}));class oe{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;te)return n+(e-o);n+=r}else{if(i!=ie.Simple&&l>=e&&(i==ie.TrackDel&&oe||i==ie.TrackBefore&&oe))return null;if(l>e||l==e&&t<0&&!r)return e==o||t<0?n:n+a;n+=a}o=l}if(e>o)throw new RangeError(`Position ${e} is out of range for changeset of length ${o}`);return n}touchesRange(e,t=e){for(let i=0,o=0;i=0&&o<=t&&n>=e)return!(ot)||"cover";o=n}return!1}toString(){let e="";for(let t=0;t=0?":"+o:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(e=>"number"!=typeof e))throw new RangeError("Invalid JSON representation of ChangeDesc");return new oe(e)}static create(e){return new oe(e)}}class ne extends oe{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return ae(this,(t,i,o,n,s)=>e=e.replace(o,o+(i-t),s),!1),e}mapDesc(e,t=!1){return le(this,e,t,!0)}invert(e){let t=this.sections.slice(),i=[];for(let o=0,n=0;o=0){t[o]=r,t[o+1]=s;let a=o>>1;for(;i.length0&&re(i,t,n.text),n.forward(e),r+=e}let l=e[s++];for(;r>1].toJSON()))}return e}static of(e,t,i){let o=[],n=[],s=0,r=null;function a(e=!1){if(!e&&!o.length)return;sr||e<0||r>t)throw new RangeError(`Invalid change range ${e} to ${r} (in doc of length ${t})`);let d=c?"string"==typeof c?$.of(c.split(i||te)):c:$.empty,h=d.length;if(e==r&&0==h)return;es&&se(o,e-s,-1),se(o,r-e,h),re(n,o,d),s=r}}(e),a(!r),r}static empty(e){return new ne(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],i=[];for(let o=0;ot&&"string"!=typeof e))throw new RangeError("Invalid JSON representation of ChangeSet");if(1==n.length)t.push(n[0],0);else{for(;i.length=0&&i<=0&&i==e[n+1]?e[n]+=t:n>=0&&0==t&&0==e[n]?e[n+1]+=i:o?(e[n]+=t,e[n+1]+=i):e.push(t,i)}function re(e,t,i){if(0==i.length)return;let o=t.length-2>>1;if(o>1])),!(i||r==e.sections.length||e.sections[r+1]<0);)a=e.sections[r++],l=e.sections[r++];t(n,c,s,d,h),n=c,s=d}}}function le(e,t,i,o=!1){let n=[],s=o?[]:null,r=new de(e),a=new de(t);for(let e=-1;;){if(r.done&&a.len||a.done&&r.len)throw new Error("Mismatched change set lengths");if(-1==r.ins&&-1==a.ins){let e=Math.min(r.len,a.len);se(n,e,-1),r.forward(e),a.forward(e)}else if(a.ins>=0&&(r.ins<0||e==r.i||0==r.off&&(a.len=0&&e=0)){if(r.done&&a.done)return s?ne.createSet(n,s):oe.create(n);throw new Error("Mismatched change set lengths")}{let t=0,i=r.len;for(;i;)if(-1==a.ins){let e=Math.min(i,a.len);t+=e,i-=e,a.forward(e)}else{if(!(0==a.ins&&a.lent||r.ins>=0&&r.len>t)&&(e||o.length>i),s.forward2(t),r.forward(t)}}else se(o,0,r.ins,e),n&&re(n,o,r.text),r.next()}}class de{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return t>=e.length?$.empty:e[t]}textBit(e){let{inserted:t}=this.set,i=this.i-2>>1;return i>=t.length&&!e?$.empty:t[i].slice(this.off,null==e?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){-1==this.ins?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class he{constructor(e,t,i){this.from=e,this.to=t,this.flags=i}get anchor(){return 32&this.flags?this.to:this.from}get head(){return 32&this.flags?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return 8&this.flags?-1:16&this.flags?1:0}get bidiLevel(){let e=7&this.flags;return 7==e?null:e}get goalColumn(){let e=this.flags>>6;return 16777215==e?void 0:e}map(e,t=-1){let i,o;return this.empty?i=o=e.mapPos(this.from,t):(i=e.mapPos(this.from,1),o=e.mapPos(this.to,-1)),i==this.from&&o==this.to?this:new he(i,o,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return ue.range(e,t);let i=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return ue.range(this.anchor,i)}eq(e,t=!1){return!(this.anchor!=e.anchor||this.head!=e.head||this.goalColumn!=e.goalColumn||t&&this.empty&&this.assoc!=e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||"number"!=typeof e.anchor||"number"!=typeof e.head)throw new RangeError("Invalid JSON representation for SelectionRange");return ue.range(e.anchor,e.head)}static create(e,t,i){return new he(e,t,i)}}class ue{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:ue.create(this.ranges.map(i=>i.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let i=0;ie.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||"number"!=typeof e.main||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new ue(e.ranges.map(e=>he.fromJSON(e)),e.main)}static single(e,t=e){return new ue([ue.range(e,t)],0)}static create(e,t=0){if(0==e.length)throw new RangeError("A selection needs at least one range");for(let i=0,o=0;oe?8:0)|n)}static normalized(e,t=0){let i=e[t];e.sort((e,t)=>e.from-t.from),t=e.indexOf(i);for(let i=1;io.head?ue.range(r,s):ue.range(s,r))}}return new ue(e,t)}}function pe(e,t){for(let i of e.ranges)if(i.to>t)throw new RangeError("Selection points outside of document")}let me=0;class ge{constructor(e,t,i,o,n){this.combine=e,this.compareInput=t,this.compare=i,this.isStatic=o,this.id=me++,this.default=e([]),this.extensions="function"==typeof n?n(this):n}get reader(){return this}static define(e={}){return new ge(e.combine||(e=>e),e.compareInput||((e,t)=>e===t),e.compare||(e.combine?(e,t)=>e===t:fe),!!e.static,e.enables)}of(e){return new be([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new be(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new be(e,this,2,t)}from(e,t){return t||(t=e=>e),this.compute([e],i=>t(i.field(e)))}}function fe(e,t){return e==t||e.length==t.length&&e.every((e,i)=>e===t[i])}class be{constructor(e,t,i,o){this.dependencies=e,this.facet=t,this.type=i,this.value=o,this.id=me++}dynamicSlot(e){var t;let i=this.value,o=this.facet.compareInput,n=this.id,s=e[n]>>1,r=2==this.type,a=!1,l=!1,c=[];for(let i of this.dependencies)"doc"==i?a=!0:"selection"==i?l=!0:1&(null!==(t=e[i.id])&&void 0!==t?t:1)||c.push(e[i.id]);return{create:e=>(e.values[s]=i(e),1),update(e,t){if(a&&t.docChanged||l&&(t.docChanged||t.selection)||we(e,c)){let t=i(e);if(r?!ye(t,e.values[s],o):!o(t,e.values[s]))return e.values[s]=t,1}return 0},reconfigure:(e,t)=>{let a,l=t.config.address[n];if(null!=l){let n=Pe(t,l);if(this.dependencies.every(i=>i instanceof ge?t.facet(i)===e.facet(i):!(i instanceof xe)||t.field(i,!1)==e.field(i,!1))||(r?ye(a=i(e),n,o):o(a=i(e),n)))return e.values[s]=n,0}else a=i(e);return e.values[s]=a,1}}}}function ye(e,t,i){if(e.length!=t.length)return!1;for(let o=0;oe[t.id]),n=i.map(e=>e.type),s=o.filter(e=>!(1&e)),r=e[t.id]>>1;function a(e){let i=[];for(let t=0;te===t),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(Ce).find(e=>e.field==this);return((null==t?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:e=>(e.values[t]=this.create(e),1),update:(e,i)=>{let o=e.values[t],n=this.updateF(o,i);return this.compareF(o,n)?0:(e.values[t]=n,1)},reconfigure:(e,i)=>{let o,n=e.facet(Ce),s=i.facet(Ce);return(o=n.find(e=>e.field==this))&&o!=s.find(e=>e.field==this)?(e.values[t]=o.create(e),1):null!=i.config.address[this.id]?(e.values[t]=i.field(this),0):(e.values[t]=this.create(e),1)}}}init(e){return[this,Ce.of({field:this,create:e})]}get extension(){return this}}const ke=4,Se=3,Te=2,Ee=1;function Me(e){return t=>new Ie(t,e)}const Ae={highest:Me(0),high:Me(Ee),default:Me(Te),low:Me(Se),lowest:Me(ke)};class Ie{constructor(e,t){this.inner=e,this.prec=t}}class De{of(e){return new Oe(this,e)}reconfigure(e){return De.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Oe{constructor(e,t){this.compartment=e,this.inner=t}}class Be{constructor(e,t,i,o,n,s){for(this.base=e,this.compartments=t,this.dynamicSlots=i,this.address=o,this.staticValues=n,this.facets=s,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,t,i){let o=[],n=Object.create(null),s=new Map;for(let i of function(e,t,i){let o=[[],[],[],[],[]],n=new Map;function s(e,r){let a=n.get(e);if(null!=a){if(a<=r)return;let t=o[a].indexOf(e);t>-1&&o[a].splice(t,1),e instanceof Oe&&i.delete(e.compartment)}if(n.set(e,r),Array.isArray(e))for(let t of e)s(t,r);else if(e instanceof Oe){if(i.has(e.compartment))throw new RangeError("Duplicate use of compartment in extensions");let o=t.get(e.compartment)||e.inner;i.set(e.compartment,o),s(o,r)}else if(e instanceof Ie)s(e.inner,e.prec);else if(e instanceof xe)o[r].push(e),e.provides&&s(e.provides,r);else if(e instanceof be)o[r].push(e),e.facet.extensions&&s(e.facet.extensions,Te);else{let t=e.extension;if(!t)throw new Error(`Unrecognized extension value in extension set (${e}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);s(t,r)}}return s(e,Te),o.reduce((e,t)=>e.concat(t))}(e,t,s))i instanceof xe?o.push(i):(n[i.facet.id]||(n[i.facet.id]=[])).push(i);let r=Object.create(null),a=[],l=[];for(let e of o)r[e.id]=l.length<<1,l.push(t=>e.slot(t));let c=null==i?void 0:i.config.facets;for(let e in n){let t=n[e],o=t[0].facet,s=c&&c[e]||[];if(t.every(e=>0==e.type))if(r[o.id]=a.length<<1|1,fe(s,t))a.push(i.facet(o));else{let e=o.combine(t.map(e=>e.value));a.push(i&&o.compare(e,i.facet(o))?i.facet(o):e)}else{for(let e of t)0==e.type?(r[e.id]=a.length<<1|1,a.push(e.value)):(r[e.id]=l.length<<1,l.push(t=>e.dynamicSlot(t)));r[o.id]=l.length<<1,l.push(e=>ve(e,o,t))}}let d=l.map(e=>e(r));return new Be(e,s,d,r,a,n)}}function Le(e,t){if(1&t)return 2;let i=t>>1,o=e.status[i];if(4==o)throw new Error("Cyclic dependency between fields and/or facets");if(2&o)return o;e.status[i]=4;let n=e.computeSlot(e,e.config.dynamicSlots[i]);return e.status[i]=2|n}function Pe(e,t){return 1&t?e.config.staticValues[t>>1]:e.values[t>>1]}const Ne=ge.define(),Re=ge.define({combine:e=>e.some(e=>e),static:!0}),Fe=ge.define({combine:e=>e.length?e[0]:void 0,static:!0}),qe=ge.define(),_e=ge.define(),ze=ge.define(),Ve=ge.define({combine:e=>!!e.length&&e[0]});class We{constructor(e,t){this.type=e,this.value=t}static define(){return new He}}class He{of(e){return new We(this,e)}}class $e{constructor(e){this.map=e}of(e){return new Ue(this,e)}}class Ue{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return void 0===t?void 0:t==this.value?this:new Ue(this.type,t)}is(e){return this.type==e}static define(e={}){return new $e(e.map||(e=>e))}static mapEffects(e,t){if(!e.length)return e;let i=[];for(let o of e){let e=o.map(t);e&&i.push(e)}return i}}Ue.reconfigure=Ue.define(),Ue.appendConfig=Ue.define();class je{constructor(e,t,i,o,n,s){this.startState=e,this.changes=t,this.selection=i,this.effects=o,this.annotations=n,this.scrollIntoView=s,this._doc=null,this._state=null,i&&pe(i,t.newLength),n.some(e=>e.type==je.time)||(this.annotations=n.concat(je.time.of(Date.now())))}static create(e,t,i,o,n,s){return new je(e,t,i,o,n,s)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(je.userEvent);return!(!t||!(t==e||t.length>e.length&&t.slice(0,e.length)==e&&"."==t[e.length]))}}function Ye(e,t){let i=[];for(let o=0,n=0;;){let s,r;if(o=e[o]))s=e[o++],r=e[o++];else{if(!(n=0;n--){let s=i[n](e);s&&Object.keys(s).length&&(o=Ge(o,Ze(t,s,e.changes.newLength),!0))}return o==e?e:je.create(t,e.changes,e.selection,o.effects,o.annotations,o.scrollIntoView)}(i?function(e){let t=e.startState,i=!0;for(let o of t.facet(qe)){let t=o(e);if(!1===t){i=!1;break}Array.isArray(t)&&(i=!0===i?t:Ye(i,t))}if(!0!==i){let o,n;if(!1===i)n=e.changes.invertedDesc,o=ne.empty(t.doc.length);else{let t=e.changes.filter(i);o=t.changes,n=t.filtered.mapDesc(t.changes).invertedDesc}e=je.create(t,o,e.selection&&e.selection.map(n),Ue.mapEffects(e.effects,n),e.annotations,e.scrollIntoView)}let o=t.facet(_e);for(let i=o.length-1;i>=0;i--){let n=o[i](e);e=n instanceof je?n:Array.isArray(n)&&1==n.length&&n[0]instanceof je?n[0]:Ke(t,Xe(n),!1)}return e}(n):n)}je.time=We.define(),je.userEvent=We.define(),je.addToHistory=We.define(),je.remote=We.define();const Je=[];function Xe(e){return null==e?Je:Array.isArray(e)?e:[e]}var Qe=function(e){return e[e.Word=0]="Word",e[e.Space=1]="Space",e[e.Other=2]="Other",e}(Qe||(Qe={}));const et=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let tt;try{tt=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(e){}function it(e){return t=>{if(!/\S/.test(t))return Qe.Space;if(function(e){if(tt)return tt.test(e);for(let t=0;t"€"&&(i.toUpperCase()!=i.toLowerCase()||et.test(i)))return!0}return!1}(t))return Qe.Word;for(let i=0;i-1)return Qe.Word;return Qe.Other}}class ot{constructor(e,t,i,o,n,s){this.config=e,this.doc=t,this.selection=i,this.values=o,this.status=e.statusTemplate.slice(),this.computeSlot=n,s&&(s._state=this);for(let e=0;en.set(t,e)),i=null),n.set(t.value.compartment,t.value.extension)):t.is(Ue.reconfigure)?(i=null,o=t.value):t.is(Ue.appendConfig)&&(i=null,o=Xe(o).concat(t.value));if(i)t=e.startState.values.slice();else{i=Be.resolve(o,n,this),t=new ot(i,this.doc,this.selection,i.dynamicSlots.map(()=>null),(e,t)=>t.reconfigure(e,this),null).values}let s=e.startState.facet(Re)?e.newSelection:e.newSelection.asSingle();new ot(i,e.newDoc,s,t,(t,i)=>i.update(t,e),e)}replaceSelection(e){return"string"==typeof e&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:ue.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,i=e(t.ranges[0]),o=this.changes(i.changes),n=[i.range],s=Xe(i.effects);for(let i=1;in.spec.fromJSON(s,e)))}return ot.create({doc:e.doc,selection:ue.fromJSON(e.selection),extensions:t.extensions?o.concat([t.extensions]):o})}static create(e={}){let t=Be.resolve(e.extensions||[],new Map),i=e.doc instanceof $?e.doc:$.of((e.doc||"").split(t.staticFacet(ot.lineSeparator)||te)),o=e.selection?e.selection instanceof ue?e.selection:ue.single(e.selection.anchor,e.selection.head):ue.single(0);return pe(o,i.length),t.staticFacet(Re)||(o=o.asSingle()),new ot(t,i,o,t.dynamicSlots.map(()=>null),(e,t)=>t.create(e),null)}get tabSize(){return this.facet(ot.tabSize)}get lineBreak(){return this.facet(ot.lineSeparator)||"\n"}get readOnly(){return this.facet(Ve)}phrase(e,...t){for(let t of this.facet(ot.phrases))if(Object.prototype.hasOwnProperty.call(t,e)){e=t[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(e,i)=>{if("$"==i)return"$";let o=+(i||1);return!o||o>t.length?e:t[o-1]})),e}languageDataAt(e,t,i=-1){let o=[];for(let n of this.facet(Ne))for(let s of n(this,t,i))Object.prototype.hasOwnProperty.call(s,e)&&o.push(s[e]);return o}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return it(t.length?t[0]:"")}wordAt(e){let{text:t,from:i,length:o}=this.doc.lineAt(e),n=this.charCategorizer(e),s=e-i,r=e-i;for(;s>0;){let e=ee(t,s,!1);if(n(t.slice(e,s))!=Qe.Word)break;s=e}for(;re.length?e[0]:4}),ot.lineSeparator=Fe,ot.readOnly=Ve,ot.phrases=ge.define({compare(e,t){let i=Object.keys(e),o=Object.keys(t);return i.length==o.length&&i.every(i=>e[i]==t[i])}}),ot.languageData=Ne,ot.changeFilter=qe,ot.transactionFilter=_e,ot.transactionExtender=ze,De.reconfigure=Ue.define();class nt{eq(e){return this==e}range(e,t=e){return rt.create(e,t,this)}}function st(e,t){return e==t||e.constructor==t.constructor&&e.eq(t)}nt.prototype.startSide=nt.prototype.endSide=0,nt.prototype.point=!1,nt.prototype.mapMode=ie.TrackDel;class rt{constructor(e,t,i){this.from=e,this.to=t,this.value=i}static create(e,t,i){return new rt(e,t,i)}}function at(e,t){return e.from-t.from||e.value.startSide-t.value.startSide}class lt{constructor(e,t,i,o){this.from=e,this.to=t,this.value=i,this.maxPoint=o}get length(){return this.to[this.to.length-1]}findIndex(e,t,i,o=0){let n=i?this.to:this.from;for(let s=o,r=n.length;;){if(s==r)return s;let o=s+r>>1,a=n[o]-e||(i?this.value[o].endSide:this.value[o].startSide)-t;if(o==s)return a>=0?s:r;a>=0?r=o:s=o+1}}between(e,t,i,o){for(let n=this.findIndex(t,-1e9,!0),s=this.findIndex(i,1e9,!1,n);nc||l==c&&d.startSide>0&&d.endSide<=0)continue;(c-l||d.endSide-d.startSide)<0||(s<0&&(s=l),d.point&&(r=Math.max(r,c-l)),i.push(d),o.push(l-s),n.push(c-s))}return{mapped:i.length?new lt(o,n,i,r):null,pos:s}}}class ct{constructor(e,t,i,o){this.chunkPos=e,this.chunk=t,this.nextLayer=i,this.maxPoint=o}static create(e,t,i,o){return new ct(e,t,i,o)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:i=!1,filterFrom:o=0,filterTo:n=this.length}=e,s=e.filter;if(0==t.length&&!s)return this;if(i&&(t=t.slice().sort(at)),this.isEmpty)return t.length?ct.of(t):this;let r=new ut(this,null,-1).goto(0),a=0,l=[],c=new dt;for(;r.value||a=0){let e=t[a++];c.addInner(e.from,e.to,e.value)||l.push(e)}else 1==r.rangeIndex&&r.chunkIndexthis.chunkEnd(r.chunkIndex)||nr.to||n=n&&e<=n+s.length&&!1===s.between(n,e-n,t-n,i))return}this.nextLayer.between(e,t,i)}}iter(e=0){return pt.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return pt.from(e).goto(t)}static compare(e,t,i,o,n=-1){let s=e.filter(e=>e.maxPoint>0||!e.isEmpty&&e.maxPoint>=n),r=t.filter(e=>e.maxPoint>0||!e.isEmpty&&e.maxPoint>=n),a=ht(s,r,i),l=new gt(s,a,n),c=new gt(r,a,n);i.iterGaps((e,t,i)=>ft(l,e,c,t,i,o)),i.empty&&0==i.length&&ft(l,0,c,0,0,o)}static eq(e,t,i=0,o){null==o&&(o=999999999);let n=e.filter(e=>!e.isEmpty&&t.indexOf(e)<0),s=t.filter(t=>!t.isEmpty&&e.indexOf(t)<0);if(n.length!=s.length)return!1;if(!n.length)return!0;let r=ht(n,s),a=new gt(n,r,0).goto(i),l=new gt(s,r,0).goto(i);for(;;){if(a.to!=l.to||!bt(a.active,l.active)||a.point&&(!l.point||!st(a.point,l.point)))return!1;if(a.to>o)return!0;a.next(),l.next()}}static spans(e,t,i,o,n=-1){let s=new gt(e,null,n).goto(t),r=t,a=s.openStart;for(;;){let e=Math.min(s.to,i);if(s.point){let i=s.activeForPoint(s.to),n=s.pointFromr&&(o.span(r,e,s.active,a),a=s.openEnd(e));if(s.to>i)return a+(s.point&&s.to>i?1:0);r=s.to,s.next()}}static of(e,t=!1){let i=new dt;for(let o of e instanceof rt?[e]:t?function(e){if(e.length>1)for(let t=e[0],i=1;i0)return e.slice().sort(at);t=o}return e}(e):e)i.add(o.from,o.to,o.value);return i.finish()}static join(e){if(!e.length)return ct.empty;let t=e[e.length-1];for(let i=e.length-2;i>=0;i--)for(let o=e[i];o!=ct.empty;o=o.nextLayer)t=new ct(o.chunkPos,o.chunk,t,Math.max(o.maxPoint,t.maxPoint));return t}}ct.empty=new ct([],[],null,-1),ct.empty.nextLayer=ct.empty;class dt{finishChunk(e){this.chunks.push(new lt(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(e,t,i){this.addInner(e,t,i)||(this.nextLayer||(this.nextLayer=new dt)).add(e,t,i)}addInner(e,t,i){let o=e-this.lastTo||i.startSide-this.last.endSide;if(o<=0&&(e-this.lastFrom||i.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return!(o<0)&&(250==this.from.length&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=i,this.lastFrom=e,this.lastTo=t,this.value.push(i),i.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let i=t.value.length-1;return this.last=t.value[i],this.lastFrom=t.from[i]+e,this.lastTo=t.to[i]+e,!0}finish(){return this.finishInner(ct.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return e;let t=ct.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function ht(e,t,i){let o=new Map;for(let t of e)for(let e=0;e=this.minPoint)break}}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=i&&o.push(new ut(s,t,i,n));return 1==o.length?o[0]:new pt(o)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let i of this.heap)i.goto(e,t);for(let e=this.heap.length>>1;e>=0;e--)mt(this.heap,e);return this.next(),this}forward(e,t){for(let i of this.heap)i.forward(e,t);for(let e=this.heap.length>>1;e>=0;e--)mt(this.heap,e);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(0==this.heap.length)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),mt(this.heap,0)}}}function mt(e,t){for(let i=e[t];;){let o=1+(t<<1);if(o>=e.length)break;let n=e[o];if(o+1=0&&(n=e[o+1],o++),i.compare(n)<0)break;e[o]=i,e[t]=n,t=o}}class gt{constructor(e,t,i){this.minPoint=i,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=pt.from(e,t,i)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){yt(this.active,e),yt(this.activeTo,e),yt(this.activeRank,e),this.minActive=vt(this.active,this.activeTo)}addActive(e){let t=0,{value:i,to:o,rank:n}=this.cursor;for(;t0;)t++;wt(this.active,t,i),wt(this.activeTo,t,o),wt(this.activeRank,t,n),e&&wt(e,t,this.cursor.from),this.minActive=vt(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let i=this.openStart<0?[]:null;for(;;){let o=this.minActive;if(o>-1&&(this.activeTo[o]-this.cursor.from||this.active[o].endSide-this.cursor.startSide)<0){if(this.activeTo[o]>e){this.to=this.activeTo[o],this.endSide=this.active[o].endSide;break}this.removeActive(o),i&&yt(i,o)}else{if(!this.cursor.value){this.to=this.endSide=1e9;break}if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}{let e=this.cursor.value;if(e.point){if(!(t&&this.cursor.to==this.to&&this.cursor.from=0&&i[t]=0&&!(this.activeRank[i]e||this.activeTo[i]==e&&this.active[i].endSide>=this.point.endSide)&&t.push(this.active[i]);return t.reverse()}openEnd(e){let t=0;for(let i=this.activeTo.length-1;i>=0&&this.activeTo[i]>e;i--)t++;return t}}function ft(e,t,i,o,n,s){e.goto(t),i.goto(o);let r=o+n,a=o,l=o-t,c=!!s.boundChange;for(let t=!1;;){let o=e.to+l-i.to,n=o||e.endSide-i.endSide,d=n<0?e.to+l:i.to,h=Math.min(d,r);if(e.point||i.point?(e.point&&i.point&&st(e.point,i.point)&&bt(e.activeForPoint(e.to),i.activeForPoint(i.to))||s.comparePoint(a,h,e.point,i.point),t=!1):(t&&s.boundChange(a),h>a&&!bt(e.active,i.active)&&s.compareRange(a,h,e.active,i.active),c&&hr)break;a=d,n<=0&&e.next(),n>=0&&i.next()}}function bt(e,t){if(e.length!=t.length)return!1;for(let i=0;i=t;i--)e[i+1]=e[i];e[t]=i}function vt(e,t){let i=-1,o=1e9;for(let n=0;ne.map(e=>t.replace(/&/,e))).reduce((e,t)=>e.concat(t)),r,s);else if(r&&"object"==typeof r){if(!l)throw new RangeError("The value of a property ("+i+") should be a primitive value.");n(o(i),r,a,c)}else null!=r&&a.push(i.replace(/_.*/,"").replace(/[A-Z]/g,e=>"-"+e.toLowerCase())+": "+r+";")}(a.length||c)&&s.push((!i||l||r?e:e.map(i)).join(", ")+" {"+a.join(" ")+"}")}for(let t in e)n(o(t),e[t],this.rules)}getRules(){return this.rules.join("\n")}static newName(){let e=kt[Ct]||1;return kt[Ct]=e+1,"ͼ"+e.toString(36)}static mount(e,t,i){let o=e[xt],n=i&&i.nonce;o?n&&o.setNonce(n):o=new Et(e,n),o.mount(Array.isArray(t)?t:[t],e)}}let Tt=new Map;class Et{constructor(e,t){let i=e.ownerDocument||e,o=i.defaultView;if(!e.head&&e.adoptedStyleSheets&&o.CSSStyleSheet){let t=Tt.get(i);if(t)return e[xt]=t;this.sheet=new o.CSSStyleSheet,Tt.set(i,this)}else this.styleTag=i.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[xt]=this}mount(e,t){let i=this.sheet,o=0,n=0;for(let t=0;t-1&&(this.modules.splice(r,1),n--,r=-1),-1==r){if(this.modules.splice(n++,0,s),i)for(let e=0;e",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'};"undefined"!=typeof navigator&&/Mac/.test(navigator.platform),"undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var It=0;It<10;It++)Mt[48+It]=Mt[96+It]=String(It);for(It=1;It<=24;It++)Mt[It+111]="F"+It;for(It=65;It<=90;It++)Mt[It]=String.fromCharCode(It+32),At[It]=String.fromCharCode(It);for(var Dt in Mt)At.hasOwnProperty(Dt)||(At[Dt]=Mt[Dt]);let Ot="undefined"!=typeof navigator?navigator:{userAgent:"",vendor:"",platform:""},Bt="undefined"!=typeof document?document:{documentElement:{style:{}}};const Lt=/Edge\/(\d+)/.exec(Ot.userAgent),Pt=/MSIE \d/.test(Ot.userAgent),Nt=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Ot.userAgent),Rt=!!(Pt||Nt||Lt),Ft=!Rt&&/gecko\/(\d+)/i.test(Ot.userAgent),qt=!Rt&&/Chrome\/(\d+)/.exec(Ot.userAgent),_t="webkitFontSmoothing"in Bt.documentElement.style,zt=!Rt&&/Apple Computer/.test(Ot.vendor),Vt=zt&&(/Mobile\/\w+/.test(Ot.userAgent)||Ot.maxTouchPoints>2);var Wt={mac:Vt||/Mac/.test(Ot.platform),windows:/Win/.test(Ot.platform),linux:/Linux|X11/.test(Ot.platform),ie:Rt,ie_version:Pt?Bt.documentMode||6:Nt?+Nt[1]:Lt?+Lt[1]:0,gecko:Ft,gecko_version:Ft?+(/Firefox\/(\d+)/.exec(Ot.userAgent)||[0,0])[1]:0,chrome:!!qt,chrome_version:qt?+qt[1]:0,ios:Vt,android:/Android\b/.test(Ot.userAgent),webkit:_t,webkit_version:_t?+(/\bAppleWebKit\/(\d+)/.exec(Ot.userAgent)||[0,0])[1]:0,safari:zt,safari_version:zt?+(/\bVersion\/(\d+(\.\d+)?)/.exec(Ot.userAgent)||[0,0])[1]:0,tabSize:null!=Bt.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};function Ht(e,t){for(let i in e)"class"==i&&t.class?t.class+=" "+e.class:"style"==i&&t.style?t.style+=";"+e.style:t[i]=e[i];return t}const $t=Object.create(null);function Ut(e,t,i){if(e==t)return!0;e||(e=$t),t||(t=$t);let o=Object.keys(e),n=Object.keys(t);if(o.length-(i&&o.indexOf(i)>-1?1:0)!=n.length-(i&&n.indexOf(i)>-1?1:0))return!1;for(let s of o)if(s!=i&&(-1==n.indexOf(s)||e[s]!==t[s]))return!1;return!0}function jt(e,t,i){let o=!1;if(t)for(let n in t)i&&n in i||(o=!0,"style"==n?e.style.cssText="":e.removeAttribute(n));if(i)for(let n in i)t&&t[n]==i[n]||(o=!0,"style"==n?e.style.cssText=i[n]:e.setAttribute(n,i[n]));return o}function Yt(e){let t=Object.create(null);for(let i=0;i0?3e8:-4e8:t>0?1e8:-1e8,new Qt(e,t,t,i,e.widget||null,!1)}static replace(e){let t,i,o=!!e.block;if(e.isBlockGap)t=-5e8,i=4e8;else{let{start:n,end:s}=ei(e,o);t=(n?o?-3e8:-1:5e8)-1,i=1+(s?o?2e8:1:-6e8)}return new Qt(e,t,i,o,e.widget||null,!0)}static line(e){return new Xt(e)}static set(e,t=!1){return ct.of(e,t)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}}Kt.none=ct.empty;class Jt extends Kt{constructor(e){let{start:t,end:i}=ei(e);super(t?-1:5e8,i?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?Ht(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||$t}eq(e){return this==e||e instanceof Jt&&this.tagName==e.tagName&&Ut(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}Jt.prototype.point=!1;class Xt extends Kt{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof Xt&&this.spec.class==e.spec.class&&Ut(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}Xt.prototype.mapMode=ie.TrackBefore,Xt.prototype.point=!0;class Qt extends Kt{constructor(e,t,i,o,n,s){super(t,i,n,e),this.block=o,this.isReplace=s,this.mapMode=o?t<=0?ie.TrackBefore:ie.TrackAfter:ie.TrackDel}get type(){return this.startSide!=this.endSide?Zt.WidgetRange:this.startSide<=0?Zt.WidgetBefore:Zt.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof Qt&&(t=this.widget,i=e.widget,t==i||!!(t&&i&&t.compare(i)))&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide;var t,i}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}function ei(e,t=!1){let{inclusiveStart:i,inclusiveEnd:o}=e;return null==i&&(i=e.inclusive),null==o&&(o=e.inclusive),{start:null!=i?i:t,end:null!=o?o:t}}function ti(e,t,i,o=0){let n=i.length-1;n>=0&&i[n]+o>=e?i[n]=Math.max(i[n],t):i.push(e,t)}Qt.prototype.point=!0;class ii extends nt{constructor(e,t){super(),this.tagName=e,this.attributes=t}eq(e){return e==this||e instanceof ii&&this.tagName==e.tagName&&Ut(this.attributes,e.attributes)}static create(e){return new ii(e.tagName,e.attributes||$t)}static set(e,t=!1){return ct.of(e,t)}}function oi(e){let t;return t=11==e.nodeType?e.getSelection?e:e.ownerDocument:e,t.getSelection()}function ni(e,t){return!!t&&(e==t||e.contains(1!=t.nodeType?t.parentNode:t))}function si(e,t){if(!t.anchorNode)return!1;try{return ni(e,t.anchorNode)}catch(e){return!1}}function ri(e){return 3==e.nodeType?wi(e,0,e.nodeValue.length).getClientRects():1==e.nodeType?e.getClientRects():[]}function ai(e,t,i,o){return!!i&&(di(e,t,i,o,-1)||di(e,t,i,o,1))}function li(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t}function ci(e){return 1==e.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(e.nodeName)}function di(e,t,i,o,n){for(;;){if(e==i&&t==o)return!0;if(t==(n<0?0:hi(e))){if("DIV"==e.nodeName)return!1;let i=e.parentNode;if(!i||1!=i.nodeType)return!1;t=li(e)+(n<0?0:1),e=i}else{if(1!=e.nodeType)return!1;if(1==(e=e.childNodes[t+(n<0?-1:0)]).nodeType&&"false"==e.contentEditable)return!1;t=n<0?hi(e):0}}}function hi(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function ui(e,t){let i=t?e.left:e.right;return{left:i,right:i,top:e.top,bottom:e.bottom}}function pi(e){let t=e.visualViewport;return t?{left:0,right:t.width,top:0,bottom:t.height}:{left:0,right:e.innerWidth,top:0,bottom:e.innerHeight}}function mi(e,t){let i=t.width/e.offsetWidth,o=t.height/e.offsetHeight;return(i>.995&&i<1.005||!isFinite(i)||Math.abs(t.width-e.offsetWidth)<1)&&(i=1),(o>.995&&o<1.005||!isFinite(o)||Math.abs(t.height-e.offsetHeight)<1)&&(o=1),{scaleX:i,scaleY:o}}ii.prototype.startSide=ii.prototype.endSide=-1;class gi{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:t,focusNode:i}=e;this.set(t,Math.min(e.anchorOffset,t?hi(t):0),i,Math.min(e.focusOffset,i?hi(i):0))}set(e,t,i,o){this.anchorNode=e,this.anchorOffset=t,this.focusNode=i,this.focusOffset=o}}let fi,bi=null;function yi(e){if(e.setActive)return e.setActive();if(bi)return e.focus(bi);let t=[];for(let i=e;i&&(t.push(i,i.scrollTop,i.scrollLeft),i!=i.ownerDocument);i=i.parentNode);if(e.focus(null==bi?{get preventScroll(){return bi={preventScroll:!0},!0}}:void 0),!bi){bi=!1;for(let e=0;eMath.max(1,e.scrollHeight-e.clientHeight-4)}function xi(e,t){for(let i=e,o=t;;){if(3==i.nodeType&&o>0)return{node:i,offset:o};if(1==i.nodeType&&o>0){if("false"==i.contentEditable)return null;i=i.childNodes[o-1],o=hi(i)}else{if(!i.parentNode||ci(i))return null;o=li(i),i=i.parentNode}}}function ki(e,t){for(let i=e,o=t;;){if(3==i.nodeType&&o=26&&(bi=!1);class Si{constructor(e,t,i=!0){this.node=e,this.offset=t,this.precise=i}static before(e,t){return new Si(e.parentNode,li(e),t)}static after(e,t){return new Si(e.parentNode,li(e)+1,t)}}var Ti=function(e){return e[e.LTR=0]="LTR",e[e.RTL=1]="RTL",e}(Ti||(Ti={}));const Ei=Ti.LTR,Mi=Ti.RTL;function Ai(e){let t=[];for(let i=0;i=t){if(r.level==i)return s;(n<0||(0!=o?o<0?r.fromt:e[n].level>r.level))&&(n=s)}}if(n<0)throw new RangeError("Index out of range");return n}}function Ri(e,t){if(e.length!=t.length)return!1;for(let i=0;il&&r.push(new Ni(l,m.from,u)),_i(e,m.direction==Ei!=!(u%2)?o+1:o,n,m.inner,m.from,m.to,r),l=m.to}p=m.to}else{if(p==i||(t?Fi[p]!=a:Fi[p]==a))break;p++}h?qi(e,l,p,o+1,n,h,r):lt;){let i=!0,d=!1;if(!c||l>s[c-1].to){let e=Fi[l-1];e!=a&&(i=!1,d=16==e)}let h=i||1!=a?null:[],u=i?o:o+1,p=l;e:for(;;)if(c&&p==s[c-1].to){if(d)break e;let m=s[--c];if(!i)for(let e=m.from,i=c;;){if(e==t)break e;if(!i||s[i-1].to!=e){if(Fi[e-1]==a)break e;break}e=s[--i].from}if(h)h.push(m);else{m.to=0;e-=3)if(Bi[e+1]==-i){let t=Bi[e+2],i=2&t?n:4&t?1&t?s:n:0;i&&(Fi[r]=Fi[Bi[e]]=i),a=e;break}}else{if(189==Bi.length)break;Bi[a++]=r,Bi[a++]=t,Bi[a++]=l}else if(2==(o=Fi[r])||1==o){let e=o==n;l=e?0:1;for(let t=a-3;t>=0;t-=3){let i=Bi[t+2];if(2&i)break;if(e)Bi[t+2]|=2;else{if(4&i)break;Bi[t+2]|=4}}}}}(e,n,s,o,a),function(e,t,i,o){for(let n=0,s=o;n<=i.length;n++){let r=n?i[n-1].to:e,a=nl;)t==s&&(t=i[--o].from,s=o?i[o-1].to:e),Fi[--t]=d;l=r}else s=r,l++}}}(n,s,o,a),qi(e,n,s,t,i,o,r)}function zi(e){return[new Ni(0,e,0)]}let Vi="";function Wi(e,t,i,o,n){var s;let r=o.head-e.from,a=Ni.find(t,r,null!==(s=o.bidiLevel)&&void 0!==s?s:-1,o.assoc),l=t[a],c=l.side(n,i);if(r==c){let e=a+=n?1:-1;if(e<0||e>=t.length)return null;l=t[a=e],r=l.side(!n,i),c=l.side(n,i)}let d=ee(e.text,r,l.forward(n,i));(dl.to)&&(d=c),Vi=e.text.slice(Math.min(r,d),Math.max(r,d));let h=a==(n?t.length-1:0)?null:t[a+(n?1:-1)];return h&&d==c&&h.level+(n?0:1)e.some(e=>e)}),eo=ge.define({combine:e=>e.some(e=>e)}),to=ge.define();class io{constructor(e,t="nearest",i="nearest",o=5,n=5,s=!1){this.range=e,this.y=t,this.x=i,this.yMargin=o,this.xMargin=n,this.isSnapshot=s}map(e){return e.empty?this:new io(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new io(ue.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const oo=Ue.define({map:(e,t)=>e.map(t)}),no=Ue.define();function so(e,t,i){let o=e.facet(Yi);o.length?o[0](t):window.onerror&&window.onerror(String(t),i,void 0,void 0,t)||(i?console.error(i+":",t):console.error(t))}const ro=ge.define({combine:e=>!e.length||e[0]});let ao=0;const lo=ge.define({combine:e=>e.filter((t,i)=>{for(let o=0;o{let t=[];return s&&t.push(mo.of(t=>{let i=t.plugin(e);return i?s(i):Kt.none})),n&&t.push(n(e)),t})}static fromClass(e,t){return co.define((t,i)=>new e(t,i),t)}}class ho{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let e=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(e)}catch(t){if(so(e.state,t,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(e){}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(t){so(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(null===(t=this.value)||void 0===t?void 0:t.destroy)try{this.value.destroy()}catch(t){so(e.state,t,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const uo=ge.define(),po=ge.define(),mo=ge.define(),go=ge.define(),fo=ge.define(),bo=ge.define(),yo=ge.define();function wo(e,t){let i=e.state.facet(yo);if(!i.length)return i;let o=i.map(t=>t instanceof Function?t(e):t),n=[];return ct.spans(o,t.from,t.to,{point(){},span(e,i,o,s){let r=e-t.from,a=i-t.from,l=n;for(let e=o.length-1;e>=0;e--,s--){let i,n=o[e].spec.bidiIsolate;if(null==n&&(n=Hi(t.text,r,a)),s>0&&l.length&&(i=l[l.length-1]).to==r&&i.direction==n)i.to=a,l=i.inner;else{let e={from:r,to:a,direction:n,inner:[]};l.push(e),l=e.inner}}}}),n}const vo=ge.define();function Co(e){let t=0,i=0,o=0,n=0;for(let s of e.state.facet(vo)){let r=s(e);r&&(null!=r.left&&(t=Math.max(t,r.left)),null!=r.right&&(i=Math.max(i,r.right)),null!=r.top&&(o=Math.max(o,r.top)),null!=r.bottom&&(n=Math.max(n,r.bottom)))}return{left:t,right:i,top:o,bottom:n}}const xo=ge.define();class ko{constructor(e,t,i,o){this.fromA=e,this.toA=t,this.fromB=i,this.toB=o}join(e){return new ko(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,i=this;for(;t>0;t--){let o=e[t-1];if(!(o.fromA>i.toA)){if(o.toAo.push(new ko(e,t,i,n))),this.changedRanges=o}static create(e,t,i){return new So(e,t,i)}get viewportChanged(){return(4&this.flags)>0}get viewportMoved(){return(8&this.flags)>0}get heightChanged(){return(2&this.flags)>0}get geometryChanged(){return this.docChanged||(18&this.flags)>0}get focusChanged(){return(1&this.flags)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return 0==this.flags&&0==this.transactions.length}}const To=[];class Eo{constructor(e,t,i=0){this.dom=e,this.length=t,this.flags=i,this.parent=null,e.cmTile=this}get breakAfter(){return 1&this.flags}get children(){return To}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,4&this.flags){this.flags&=-5;let e=this.domAttrs;e&&function(e,t){for(let i=e.attributes.length-1;i>=0;i--){let o=e.attributes[i].name;null==t[o]&&e.removeAttribute(o)}for(let i in t){let o=t[i];"style"==i?e.style.cssText=o:e.getAttribute(i)!=o&&e.setAttribute(i,o)}}(this.dom,e)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,t=this.posAtStart){let i=t;for(let t of this.children){if(t==e)return i;i+=t.length+t.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,t){return null}domPosFor(e,t){let i=li(this.dom),o=this.length?e>0:t>0;return new Si(this.parent.dom,i+(o?1:0),0==e||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&2&this.parent.flags&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof Io)return e;return null}static get(e){return e.cmTile}}class Mo extends Eo{constructor(e){super(e,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(e){this.children.push(e),e.parent=this}sync(e){if(2&this.flags)return;super.sync(e);let t,i=this.dom,o=null,n=(null==e?void 0:e.node)==i?e:null,s=0;for(let r of this.children){if(r.sync(e),s+=r.length+r.breakAfter,t=o?o.nextSibling:i.firstChild,n&&t!=r.dom&&(n.written=!0),r.dom.parentNode==i)for(;t&&t!=r.dom;)t=Ao(t);else i.insertBefore(r.dom,t);o=r.dom}for(t=o?o.nextSibling:i.firstChild,n&&t&&(n.written=!0);t;)t=Ao(t);this.length=s}}function Ao(e){let t=e.nextSibling;return e.parentNode.removeChild(e),t}class Io extends Mo{constructor(e,t){super(t),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let t=Eo.get(e);if(t&&this.owns(t))return t;e=e.parentNode}}blockTiles(e){for(let t=[],i=this,o=0,n=0;;)if(o==i.children.length){if(!t.length)return;i=i.parent,i.breakAfter&&n++,o=t.pop()}else{let s=i.children[o++];if(s instanceof Do)t.push(o),i=s,o=0;else{let t=n+s.length,i=e(s,n);if(void 0!==i)return i;n=t+s.breakAfter}}}resolveBlock(e,t){let i,o,n=-1,s=-1;if(this.blockTiles((r,a)=>{let l=a+r.length;if(e>=a&&e<=l){if(r.isWidget()&&t>=-1&&t<=1){if(32&r.flags)return!0;16&r.flags&&(i=void 0)}(ae||e==a&&(t>1?r.length:r.covers(-1)))&&(!o||!r.isWidget()&&o.isWidget())&&(o=r,s=e-a)}}),!i&&!o)throw new Error("No tile at position "+e);return i&&t<0||!o?{tile:i,offset:n}:{tile:o,offset:s}}}class Do extends Mo{constructor(e,t){super(e),this.wrapper=t}isBlock(){return!0}covers(e){return!!this.children.length&&(e<0?this.children[0].covers(-1):this.lastChild.covers(1))}get domAttrs(){return this.wrapper.attributes}static of(e,t){let i=new Do(t||document.createElement(e.tagName),e);return t||(i.flags|=4),i}}class Oo extends Mo{constructor(e,t){super(e),this.attrs=t}isLine(){return!0}static start(e,t,i){let o=new Oo(t||document.createElement("div"),e);return t&&i||(o.flags|=4),o}get domAttrs(){return this.attrs}resolveInline(e,t,i){let o=null,n=-1,s=null,r=-1;!function e(a,l){for(let c=0,d=0;c=l&&(h.isComposite()?e(h,l-d):(!s||s.isHidden&&(t>0||i&&Bo(s,h)))&&(u>l||32&h.flags)?(s=h,r=l-d):(di&&(e=i);let o=e,n=e,s=0;0==e&&t<0||e==i&&t>=0?Wt.chrome||Wt.gecko||(e?(o--,s=1):n=0)?0:r.length-1];return Wt.safari&&!s&&0==a.width&&(a=Array.prototype.find.call(r,e=>e.width)||a),s?ui(a,s<0):a||null}static of(e,t){let i=new Po(t||document.createTextNode(e),e);return t||(i.flags|=2),i}}class No extends Eo{constructor(e,t,i,o){super(e,t,o),this.widget=i}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return!(48&this.flags)&&(this.flags&(e<0?64:128))>0}coordsIn(e,t){return this.coordsInWidget(e,t,!1)}coordsInWidget(e,t,i){let o=this.widget.coordsAt(this.dom,e,t);if(o)return o;if(i)return ui(this.dom.getBoundingClientRect(),this.length?0==e:t<=0);{let t=this.dom.getClientRects(),i=null;if(!t.length)return null;let o=!!(16&this.flags)||!(32&this.flags)&&e>0;for(let n=o?t.length-1:0;i=t[n],!(e>0?0==n:n==t.length-1||i.top0;)if(o.isComposite())if(s){if(!e)break;i&&i.break(),e--,s=!1}else if(n==o.children.length){if(!e&&!r.length)break;i&&i.leave(o),s=!!o.breakAfter,({tile:o,index:n}=r.pop()),n++}else{let a=o.children[n],l=a.breakAfter;!(t>0?a.length<=e:a.length=0;e--){let i=t.marks[e],n=o.lastChild;if(n instanceof Lo&&n.mark.eq(i.mark))n.dom!=i.dom&&n.setDOM(jo(i.dom)),o=n;else{if(this.cache.reused.get(i)){let e=Eo.get(i.dom);e&&e.setDOM(jo(i.dom))}let e=Lo.of(i.mark,i.dom);o.append(e),o=e}this.cache.reused.set(i,2)}let n=Eo.get(e.text);n&&this.cache.reused.set(n,2);let s=new Po(e.text,e.text.nodeValue);s.flags|=8,o.append(s)}addInlineWidget(e,t,i){let o=this.afterWidget&&48&e.flags&&(48&this.afterWidget.flags)==(48&e.flags);o||this.flushBuffer();let n=this.ensureMarks(t,i);o||16&e.flags||n.append(this.getBuffer(1)),n.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,t,i){this.flushBuffer(),this.ensureMarks(t,i).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){(this.afterWidget||this.lastBlock).length+=e,this.pos+=e}addLineStart(e,t){var i;e||(e=Uo);let o=Oo.start(e,t||(null===(i=this.cache.find(Oo))||void 0===i?void 0:i.dom),!!t);this.getBlockPos().append(this.lastBlock=this.curLine=o)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,t){var i;let o=this.curLine;for(let n=e.length-1;n>=0;n--){let s,r=e[n];if(t>0&&(s=o.lastChild)&&s instanceof Lo&&s.mark.eq(r))o=s,t--;else{let e=Lo.of(r,null===(i=this.cache.find(Lo,e=>e.mark.eq(r)))||void 0===i?void 0:i.dom);o.append(e),o=e,t=0}}return o}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;e&&$o(this.curLine,!1)&&("BR"==e.dom.nodeName||!e.isWidget()||Wt.ios&&$o(this.curLine,!0))||this.curLine.append(this.cache.findWidget(Go,0,32)||new No(Go.toDOM(),0,Go,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to=this.pos){let t=new qo(e.from,e.to,e.value,e.rank),i=this.wrappers.length;for(;i>0&&(this.wrappers[i-1].rank-t.rank||this.wrappers[i-1].to-t.to)<0;)i--;this.wrappers.splice(i,0,t)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let t=this.root;for(let i of this.wrappers){let o=t.lastChild;if(i.frome.wrapper.eq(i.wrapper)))||void 0===e?void 0:e.dom);t.append(o),t=o}}return t}blockPosCovered(){let e=this.lastBlock;return null!=e&&!e.breakAfter&&(!e.isWidget()||(160&e.flags)>0)}getBuffer(e){let t=2|(e<0?16:32),i=this.cache.find(Ro,void 0,1);return i&&(i.flags=t),i||new Ro(t)}flushBuffer(){!this.afterWidget||32&this.afterWidget.flags||(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}}class zo{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:t,lineBreak:i,done:o}=this.cursor.next(this.skipCount);if(this.skipCount=0,o)throw new Error("Ran out of text content when drawing inline views");this.text=t;let n=this.textOff=Math.min(e,t.length);return i?null:t.slice(0,n)}let t=Math.min(this.text.length,this.textOff+e),i=this.text.slice(this.textOff,t);return this.textOff=t,i}}const Vo=[No,Oo,Po,Lo,Ro,Do,Io];for(let e=0;e[]),this.index=Vo.map(()=>0),this.reused=new Map}add(e){let t=e.constructor.bucket,i=this.buckets[t];i.length<6?i.push(e):i[this.index[t]=(this.index[t]+1)%6]=e}find(e,t,i=2){let o=e.bucket,n=this.buckets[o],s=this.index[o];for(let e=n.length-1;e>=0;e--){let r=(e+s)%n.length,a=n[r];if((!t||t(a))&&!this.reused.has(a))return n.splice(r,1),r{if(this.cache.add(e),e.isComposite())return!1},enter:e=>this.cache.add(e),leave:()=>{},break:()=>{}}}run(e,t){let i=t&&this.getCompositionContext(t.text);for(let o=0,n=0,s=0;;){let r=so){let e=a-o;this.preserve(e,!s,!r),o=a,n+=e}if(!r)break;t&&r.fromA<=t.range.fromA&&r.toA>=t.range.toA?(this.forward(r.fromA,t.range.fromA,t.range.fromA1;i--){let o=i==e.parents.length?e.tile:e.parents[i].tile;o instanceof Lo&&t.push(o.mark)}return t}(this.old),n=this.openMarks;this.old.advance(e,i?1:-1,{skip:(e,t,i)=>{if(e.isWidget())if(this.openWidget)this.builder.continueWidget(i-t);else{let s=i>0||t{e.isLine()?this.builder.addLineStart(e.attrs,this.cache.maybeReuse(e)):(this.cache.add(e),e instanceof Lo&&o.unshift(e.mark)),this.openWidget=!1},leave:e=>{e.isLine()?o.length&&(o.length=n=0):e instanceof Lo&&(o.shift(),n=Math.min(n,o.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,t){let i=null,o=this.builder,n=0,s=ct.spans(this.decorations,e,t,{point:(e,t,s,r,a,l)=>{if(s instanceof Qt){if(this.disallowBlockEffectsFor[l]){if(s.block)throw new RangeError("Block decorations may not be specified via plugins");if(t>this.view.state.doc.lineAt(e).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(n=r.length,a>r.length)o.continueWidget(t-e);else{let n=s.widget||(s.block?Yo.block:Yo.inline),l=function(e){let t=e.isReplace?(e.startSide<0?64:0)|(e.endSide>0?128:0):e.startSide>0?32:16;e.block&&(t|=256);return t}(s),c=this.cache.findWidget(n,t-e,l)||No.of(n,this.view,t-e,l);s.block?(s.startSide>0&&o.addLineStartIfNotCovered(i),o.addBlockWidget(c)):(o.ensureLine(i),o.addInlineWidget(c,r,a))}i=null}else i=function(e,t){let i=t.spec.attributes,o=t.spec.class;if(!i&&!o)return e;e||(e={class:"cm-line"});i&&Ht(i,e);o&&(e.class+=" "+o);return e}(i,s);t>e&&this.text.skip(t-e)},span:(e,t,n,s)=>{for(let r=e;rn,this.openMarks=s}forward(e,t,i=1){t-e<=10?this.old.advance(t-e,i,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(t-e-10,-1),this.old.advance(5,i,this.reuseWalker))}getCompositionContext(e){let t=[],i=null;for(let o=e.parentNode;;o=o.parentNode){let e=Eo.get(o);if(o==this.view.contentDOM)break;e instanceof Lo?t.push(e):(null==e?void 0:e.isLine())?i=e:"DIV"!=o.nodeName||i||o==this.view.contentDOM?t.push(Lo.of(new Jt({tagName:o.nodeName.toLowerCase(),attributes:Yt(o)}),o)):i=new Oo(o,Uo)}return{line:i,marks:t}}}function $o(e,t){let i=e=>{for(let o of e.children)if((t?o.isText():o.length)||i(o))return!0;return!1};return i(e)}const Uo={class:"cm-line"};function jo(e){let t=Eo.get(e);return t&&t.setDOM(e.cloneNode()),e}class Yo extends Gt{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}Yo.inline=new Yo("span"),Yo.block=new Yo("div");const Go=new class extends Gt{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}};class Zo{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=Kt.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new Io(e,e.contentDOM),this.updateInner([new ko(0,0,0,e.state.doc.length)],null)}update(e){var t;let i=e.changedRanges;this.minWidth>0&&i.length&&(i.every(({fromA:e,toA:t})=>tthis.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let o=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&((null===(t=this.domChanged)||void 0===t?void 0:t.newSel)?o=this.domChanged.newSel.head:function(e,t){let i=!1;t&&e.iterChangedRanges((e,o)=>{et.from&&(i=!0)});return i}(e.changes,this.hasComposition)||e.selectionSet||(o=e.state.selection.main.head));let n=o>-1?function(e,t,i){let o=Jo(e,i);if(!o)return null;let{node:n,from:s,to:r}=o,a=n.nodeValue;if(/[\n\r]/.test(a))return null;if(e.state.doc.sliceString(o.from,o.to)!=a)return null;let l=t.invertedDesc;return{range:new ko(l.mapPos(s),l.mapPos(r),s,r),text:n}}(this.view,e.changes,o):null;if(this.domChanged=null,this.hasComposition){let{from:t,to:o}=this.hasComposition;i=new ko(t,o,e.changes.mapPos(t,-1),e.changes.mapPos(o,1)).addToSet(i.slice())}this.hasComposition=n?{from:n.range.fromB,to:n.range.toB}:null,(Wt.ie||Wt.chrome)&&!n&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let s=this.decorations,r=this.blockWrappers;this.updateDeco();let a=function(e,t,i){let o=new Xo;return ct.compare(e,t,i,o),o.changes}(s,this.decorations,e.changes);a.length&&(i=ko.extendWithRanges(i,a));let l=function(e,t,i){let o=new Qo;return ct.compare(e,t,i,o),o.changes}(r,this.blockWrappers,e.changes);return l.length&&(i=ko.extendWithRanges(i,l)),n&&!i.some(e=>e.fromA<=n.range.fromA&&e.toA>=n.range.toA)&&(i=n.range.addToSet(i.slice())),!(2&this.tile.flags&&0==i.length)&&(this.updateInner(i,n),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t){this.view.viewState.mustMeasureContent=!0;let{observer:i}=this.view;i.ignore(()=>{if(t||e.length){let i=this.tile,o=new Ho(this.view,i,this.blockWrappers,this.decorations,this.dynamicDecorationMap);this.tile=o.run(e,t),Ko(i,o.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let o=Wt.chrome||Wt.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(o),!o||!o.written&&i.selectionRange.focusNode==o.node&&this.tile.dom.contains(o.node)||(this.forceSelection=!0),this.tile.dom.style.height=""});let o=[];if(this.view.viewport.from||this.view.viewport.to-1)&&si(i,this.view.observer.selectionRange)&&!(o&&i.contains(o));if(!(n||t||s))return;let r=this.forceSelection;this.forceSelection=!1;let a,l,c=this.view.state.selection.main;if(c.empty?l=a=this.inlineDOMNearPos(c.anchor,c.assoc||1):(l=this.inlineDOMNearPos(c.head,c.head==c.from?1:-1),a=this.inlineDOMNearPos(c.anchor,c.anchor==c.from?1:-1)),Wt.gecko&&c.empty&&!this.hasComposition&&(1==(d=a).node.nodeType&&d.node.firstChild&&(0==d.offset||"false"==d.node.childNodes[d.offset-1].contentEditable)&&(d.offset==d.node.childNodes.length||"false"==d.node.childNodes[d.offset].contentEditable))){let e=document.createTextNode("");this.view.observer.ignore(()=>a.node.insertBefore(e,a.node.childNodes[a.offset]||null)),a=l=new Si(e,0),r=!0}var d;let h=this.view.observer.selectionRange;!r&&h.focusNode&&(ai(a.node,a.offset,h.anchorNode,h.anchorOffset)&&ai(l.node,l.offset,h.focusNode,h.focusOffset)||this.suppressWidgetCursorChange(h,c))||(this.view.observer.ignore(()=>{Wt.android&&Wt.chrome&&i.contains(h.focusNode)&&function(e,t){for(let i=e;i&&i!=t;i=i.assignedSlot||i.parentNode)if(1==i.nodeType&&"false"==i.contentEditable)return!0;return!1}(h.focusNode,i)&&(i.blur(),i.focus({preventScroll:!0}));let e=oi(this.view.root);if(e)if(c.empty){if(Wt.gecko){let e=(t=a.node,n=a.offset,1!=t.nodeType?0:(n&&"false"==t.childNodes[n-1].contentEditable?1:0)|(nc.head&&([a,l]=[l,a]),t.setEnd(l.node,l.offset),t.setStart(a.node,a.offset),e.removeAllRanges(),e.addRange(t)}else;var t,n;s&&this.view.root.activeElement==i&&(i.blur(),o&&o.focus())}),this.view.observer.setSelectionRange(a,l)),this.impreciseAnchor=a.precise?null:new Si(h.anchorNode,h.anchorOffset),this.impreciseHead=l.precise?null:new Si(h.focusNode,h.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&ai(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==t.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,i=oi(e.root),{anchorNode:o,anchorOffset:n}=e.observer.selectionRange;if(!(i&&t.empty&&t.assoc&&i.modify))return;let s=this.lineAt(t.head,t.assoc);if(!s)return;let r=s.posAtStart;if(t.head==r||t.head==r+s.length)return;let a=this.coordsAt(t.head,-1),l=this.coordsAt(t.head,1);if(!a||!l||a.bottom>l.top)return;let c=this.domAtPos(t.head+t.assoc,t.assoc);i.collapse(c.node,c.offset),i.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let d=e.observer.selectionRange;e.docView.posFromDOM(d.anchorNode,d.anchorOffset)!=t.from&&i.collapse(o,n)}posFromDOM(e,t){let i=this.tile.nearest(e);if(!i)return 2&this.tile.dom.compareDocumentPosition(e)?0:this.view.state.doc.length;let o=i.posAtStart;if(!i.isComposite())return i.isText()?e==i.dom?o+t:o+(t?i.length:0):o;{let n;if(e==i.dom)n=i.dom.childNodes[t];else{let o=0==hi(e)?0:0==t?-1:1;for(;;){let t=e.parentNode;if(t==i.dom)break;0==o&&t.firstChild!=t.lastChild&&(o=e==t.firstChild?-1:1),e=t}n=o<0?e:e.nextSibling}if(n==i.dom.firstChild)return o;for(;n&&!Eo.get(n);)n=n.nextSibling;if(!n)return o+i.length;for(let e=0,t=o;;e++){let o=i.children[e];if(o.dom==n)return t;t+=o.length+o.breakAfter}}}domAtPos(e,t){let{tile:i,offset:o}=this.tile.resolveBlock(e,t);return i.isWidget()?i.domPosFor(e,t):i.domIn(o,t)}inlineDOMNearPos(e,t){let i,o,n=-1,s=!1,r=-1,a=!1;return this.tile.blockTiles((t,l)=>{if(t.isWidget()){if(32&t.flags&&l>=e)return!0;16&t.flags&&(s=!0)}else{let c=l+t.length;if(l<=e&&(i=t,n=e-l,s=c=e&&!o&&(o=t,r=e-l,a=l>e),l>e&&o)return!0}}),i||o?(s&&o?i=null:a&&i&&(o=null),i&&t<0||!o?i.domIn(n,t):o.domIn(r,t)):this.domAtPos(e,t)}coordsAt(e,t){let{tile:i,offset:o}=this.tile.resolveBlock(e,t);return i.isWidget()?i.widget instanceof en?null:i.coordsInWidget(o,t,!0):i.coordsIn(o,t)}lineAt(e,t){let{tile:i}=this.tile.resolveBlock(e,t);return i.isLine()?i:null}coordsForChar(e){let{tile:t,offset:i}=this.tile.resolveBlock(e,1);if(!t.isLine())return null;return function e(t,i){if(t.isComposite())for(let o of t.children){if(o.length>=i){let t=e(o,i);if(t)return t}if((i-=o.length)<0)break}else if(t.isText()&&iMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,r=-1,a=this.view.textDirection==Ti.LTR,l=0,c=(e,d,h)=>{for(let u=0;uo);u++){let o=e.children[u],p=d+o.length,m=o.dom.getBoundingClientRect(),{height:g}=m;if(h&&!u&&(l+=m.top-h.top),o instanceof Do)p>i&&c(o,d,m);else if(d>=i&&(l>0&&t.push(-l),t.push(g+l),l=0,s)){let e=o.dom.lastChild,t=e?ri(e):[];if(t.length){let e=t[t.length-1],i=a?e.right-m.left:m.right-e.left;i>r&&(r=i,this.minWidth=n,this.minWidthFrom=d,this.minWidthTo=p)}}h&&u==e.children.length-1&&(l+=h.bottom-m.bottom),d=p+o.breakAfter}};return c(this.tile,0,null),t}textDirectionAt(e){let{tile:t}=this.tile.resolveBlock(e,1);return"rtl"==getComputedStyle(t.dom).direction?Ti.RTL:Ti.LTR}measureTextSize(){let e=this.tile.blockTiles(e=>{if(e.isLine()&&e.children.length&&e.length<=20){let t,i=0;for(let o of e.children){if(!o.isText()||/[^ -~]/.test(o.text))return;let e=ri(o.dom);if(1!=e.length)return;i+=e[0].width,t=e[0].height}if(i)return{lineHeight:e.dom.getBoundingClientRect().height,charWidth:i/e.length,textHeight:t}}});if(e)return e;let t,i,o,n=document.createElement("div");return n.className="cm-line",n.style.width="99999px",n.style.position="absolute",n.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(n);let e=ri(n.firstChild)[0];t=n.getBoundingClientRect().height,i=e&&e.width?e.width/27:7,o=e&&e.height?e.height:t,n.remove()}),{lineHeight:t,charWidth:i,textHeight:o}}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let i=0,o=0;;o++){let n=o==t.viewports.length?null:t.viewports[o],s=n?n.from-1:this.view.state.doc.length;if(s>i){let o=(t.lineBlockAt(s).bottom-t.lineBlockAt(i).top)/this.view.scaleY;e.push(Kt.replace({widget:new en(o),block:!0,inclusive:!0,isBlockGap:!0}).range(i,s))}if(!n)break;i=n.to+1}return Kt.set(e)}updateDeco(){let e=1,t=this.view.state.facet(mo).map(t=>(this.dynamicDecorationMap[e++]="function"==typeof t)?t(this.view):t),i=!1,o=this.view.state.facet(fo).map((e,t)=>{let o="function"==typeof e;return o&&(i=!0),o?e(this.view):e});for(o.length&&(this.dynamicDecorationMap[e++]=i,t.push(ct.join(o))),this.decorations=[this.editContextFormatting,...t,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e"function"==typeof e?e(this.view):e)}scrollIntoView(e){if(e.isSnapshot){let t=this.view.viewState.lineBlockAt(e.range.head);return this.view.scrollDOM.scrollTop=t.top-e.yMargin,void(this.view.scrollDOM.scrollLeft=e.xMargin)}for(let t of this.view.state.facet(to))try{if(t(this.view,e.range,e))return!0}catch(e){so(this.view.state,e,"scroll handler")}let t,{range:i}=e,o=this.coordsAt(i.head,i.empty?i.assoc:i.head>i.anchor?-1:1);if(!o)return;!i.empty&&(t=this.coordsAt(i.anchor,i.anchor>i.head?-1:1))&&(o={left:Math.min(o.left,t.left),top:Math.min(o.top,t.top),right:Math.max(o.right,t.right),bottom:Math.max(o.bottom,t.bottom)});let n=Co(this.view),s={left:o.left-n.left,top:o.top-n.top,right:o.right+n.right,bottom:o.bottom+n.bottom},{offsetWidth:r,offsetHeight:a}=this.view.scrollDOM;!function(e,t,i,o,n,s,r,a){let l=e.ownerDocument,c=l.defaultView||window;for(let d=e,h=!1;d&&!h;)if(1==d.nodeType){let e,u=d==l.body,p=1,m=1;if(u)e=pi(c);else{if(/^(fixed|sticky)$/.test(getComputedStyle(d).position)&&(h=!0),d.scrollHeight<=d.clientHeight&&d.scrollWidth<=d.clientWidth){d=d.assignedSlot||d.parentNode;continue}let t=d.getBoundingClientRect();({scaleX:p,scaleY:m}=mi(d,t)),e={left:t.left,right:t.left+d.clientWidth*p,top:t.top,bottom:t.top+d.clientHeight*m}}let g=0,f=0;if("nearest"==n)t.top0&&t.bottom>e.bottom+f&&(f=t.bottom-e.bottom+r)):t.bottom>e.bottom&&(f=t.bottom-e.bottom+r,i<0&&t.top-f0&&t.right>e.right+g&&(g=t.right-e.right+s)):t.right>e.right&&(g=t.right-e.right+s,i<0&&t.lefte.bottom||t.lefte.right)&&(t={left:Math.max(t.left,e.left),right:Math.min(t.right,e.right),top:Math.max(t.top,e.top),bottom:Math.min(t.bottom,e.bottom)}),d=d.assignedSlot||d.parentNode}else{if(11!=d.nodeType)break;d=d.host}}(this.view.scrollDOM,s,i.heade.isWidget()||e.children.some(t);return t(this.tile.resolveBlock(e,1).tile)}destroy(){Ko(this.tile)}}function Ko(e,t){let i=null==t?void 0:t.get(e);if(1!=i){null==i&&e.destroy();for(let i of e.children)Ko(i,t)}}function Jo(e,t){let i=e.observer.selectionRange;if(!i.focusNode)return null;let o=xi(i.focusNode,i.focusOffset),n=ki(i.focusNode,i.focusOffset),s=o||n;if(n&&o&&n.node!=o.node){let t=Eo.get(n.node);if(!t||t.isText()&&t.text!=n.node.nodeValue)s=n;else if(e.docView.lastCompositionAfterCursor){let e=Eo.get(o.node);!e||e.isText()&&e.text!=o.node.nodeValue||(s=n)}}if(e.docView.lastCompositionAfterCursor=s!=o,!s)return null;let r=t-s.offset;return{from:r,to:r+s.node.nodeValue.length,node:s.node}}let Xo=class{constructor(){this.changes=[]}compareRange(e,t){ti(e,t,this.changes)}comparePoint(e,t){ti(e,t,this.changes)}boundChange(e){ti(e,e,this.changes)}};class Qo{constructor(){this.changes=[]}compareRange(e,t){ti(e,t,this.changes)}comparePoint(){}boundChange(e){ti(e,e,this.changes)}}class en extends Gt{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}function tn(e,t,i,o,n){let s=Math.round((o-t.left)*e.defaultCharacterWidth);if(e.lineWrapping&&i.height>1.5*e.defaultLineHeight){let t=e.viewState.heightOracle.textHeight;s+=Math.floor((n-i.top-.5*(e.defaultLineHeight-t))/t)*e.viewState.heightOracle.lineLength}let r=e.state.sliceDoc(i.from,i.to);return i.from+function(e,t,i,o){for(let o=0,n=0;;){if(n>=t)return o;if(o==e.length)break;n+=9==e.charCodeAt(o)?i-n%i:1,o=ee(e,o)}return!0===o?-1:e.length}(r,s,e.state.tabSize)}function on(e,t,i,o){let n=function(e,t,i){let o=e.lineBlockAt(t);if(Array.isArray(o.type)){let e;for(let n of o.type){if(n.from>t)break;if(!(n.tot)return n;e&&(n.type!=Zt.Text||e.type==n.type&&!(i<0?n.fromt))||(e=n)}}return e||o}return o}(e,t.head,t.assoc||-1),s=o&&n.type==Zt.Text&&(e.lineWrapping||n.widgetLineBreaks)?e.coordsAtPos(t.assoc<0&&t.head>n.from?t.head-1:t.head):null;if(s){let t=e.dom.getBoundingClientRect(),o=e.textDirectionAt(n.from),r=e.posAtCoords({x:i==(o==Ti.LTR)?t.right-1:t.left+1,y:(s.top+s.bottom)/2});if(null!=r)return ue.cursor(r,i?-1:1)}return ue.cursor(i?n.to:n.from,i?-1:1)}function nn(e,t,i,o){let n=e.state.doc.lineAt(t.head),s=e.bidiSpans(n),r=e.textDirectionAt(n.from);for(let a=t,l=null;;){let t=Wi(n,s,r,a,i),c=Vi;if(!t){if(n.number==(i?e.state.doc.lines:1))return a;c="\n",n=e.state.doc.line(n.number+(i?1:-1)),s=e.bidiSpans(n),t=e.visualLineSide(n,!i)}if(l){if(!l(c))return a}else{if(!o)return t;l=o(c)}a=t}}function sn(e,t,i){for(;;){let o=0;for(let n of e)n.between(t-1,t+1,(e,n,s)=>{if(t>e&&tt(e)),i.from,t.head>i.from?-1:1);return o==i.from?i:ue.cursor(o,oe.viewState.docHeight)return new ln(e.state.doc.length,-1);if(n=e.elementAtHeight(c),null==o)break;if(n.type==Zt.Text){let t=e.docView.coordsAt(o<0?n.from:n.to,o);if(t&&(o<0?t.top<=c+r:t.bottom>=c+r))break}let t=e.viewState.heightOracle.textHeight/2;c=o>0?n.bottom+t:n.top-t}if(e.viewport.from>=n.to||e.viewport.to<=n.from){if(i)return null;if(n.type==Zt.Text){let t=tn(e,s,n,a,l);return new ln(t,t==n.from?1:-1)}}if(n.type!=Zt.Text)return c<(n.top+n.bottom)/2?new ln(n.from,1):new ln(n.to,-1);let d=e.docView.lineAt(n.from,2);return d&&d.length==n.length||(d=e.docView.lineAt(n.from,-2)),dn(e,d,n.from,a,l)}function dn(e,t,i,o,n){let s=-1,r=null,a=1e9,l=1e9,c=n,d=n,h=(e,t)=>{for(let i=0;io?h.left-o:h.rightn?h.top-n:h.bottom=c&&(c=Math.min(h.top,c),d=Math.max(h.bottom,d),p=0),(s<0||(p-l||u-a)<0)&&(s>=0&&l&&a=c+2?l=0:(s=t,a=u,l=p,r=h))}};if(t.isText()){for(let e=0;e(r.left+r.right)/2==(hn(e,s+i)==Ti.LTR)?new ln(i+ee(t.text,s),-1):new ln(i+s,1)}{if(!t.length)return new ln(i,1);for(let e=0;e(r.left+r.right)/2==(hn(e,s+i)==Ti.LTR)?new ln(d+c.length,-1):new ln(d,1)}}function hn(e,t){let i=e.state.doc.lineAt(t);return e.bidiSpans(i)[Ni.find(e.bidiSpans(i),t-i.from,-1,1)].dir}const un="￿";class pn{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineSeparator=t.state.facet(ot.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=un}readRange(e,t){if(!e)return this;let i=e.parentNode;for(let o=e;;){this.findPointBefore(i,o);let e=this.text.length;this.readNode(o);let n=Eo.get(o),s=o.nextSibling;if(s==t){(null==n?void 0:n.breakAfter)&&!s&&i!=this.view.contentDOM&&this.lineBreak();break}let r=Eo.get(s);(n&&r?n.breakAfter:(n?n.breakAfter:ci(o))||ci(s)&&("BR"!=o.nodeName||(null==n?void 0:n.isWidget()))&&this.text.length>e)&&!gn(s,t)&&this.lineBreak(),o=s}return this.findPointBefore(i,t),this}readTextNode(e){let t=e.nodeValue;for(let i of this.points)i.node==e&&(i.pos=this.text.length+Math.min(i.offset,t.length));for(let i=0,o=this.lineSeparator?null:/\r\n?|\n/g;;){let n,s=-1,r=1;if(this.lineSeparator?(s=t.indexOf(this.lineSeparator,i),r=this.lineSeparator.length):(n=o.exec(t))&&(s=n.index,r=n[0].length),this.append(t.slice(i,s<0?t.length:s)),s<0)break;if(this.lineBreak(),r>1)for(let t of this.points)t.node==e&&t.pos>this.text.length&&(t.pos-=r-1);i=s+r}}readNode(e){let t=Eo.get(e),i=t&&t.overrideDOMText;if(null!=i){this.findPointInside(e,i.length);for(let e=i.iter();!e.next().done;)e.lineBreak?this.lineBreak():this.append(e.value)}else 3==e.nodeType?this.readTextNode(e):"BR"==e.nodeName?e.nextSibling&&this.lineBreak():1==e.nodeType&&this.readRange(e.firstChild,null)}findPointBefore(e,t){for(let i of this.points)i.node==e&&e.childNodes[i.offset]==t&&(i.pos=this.text.length)}findPointInside(e,t){for(let i of this.points)(3==e.nodeType?i.node==e:e.contains(i.node))&&(i.pos=this.text.length+(mn(e,i.node,i.offset)?t:0))}}function mn(e,t,i){for(;;){if(!t||i-1;let{impreciseHead:n,impreciseAnchor:s}=e.docView;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=yn(e.docView.tile,t,i,0))){let t=n||s?[]:function(e){let t=[];if(e.root.activeElement!=e.contentDOM)return t;let{anchorNode:i,anchorOffset:o,focusNode:n,focusOffset:s}=e.observer.selectionRange;i&&(t.push(new fn(i,o)),n==i&&s==o||t.push(new fn(n,s)));return t}(e),i=new pn(t,e);i.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=i.text,this.newSel=function(e,t){if(0==e.length)return null;let i=e[0].pos,o=2==e.length?e[1].pos:i;return i>-1&&o>-1?ue.single(i+t,o+t):null}(t,this.bounds.from)}else{let t=e.observer.selectionRange,i=n&&n.node==t.focusNode&&n.offset==t.focusOffset||!ni(e.contentDOM,t.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(t.focusNode,t.focusOffset),o=s&&s.node==t.anchorNode&&s.offset==t.anchorOffset||!ni(e.contentDOM,t.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(t.anchorNode,t.anchorOffset),r=e.viewport;if((Wt.ios||Wt.chrome)&&e.state.selection.main.empty&&i!=o&&(r.from>0||r.to-1&&e.state.selection.ranges.length>1?this.newSel=e.state.selection.replaceRange(ue.range(o,i)):this.newSel=ue.single(o,i)}}}function yn(e,t,i,o){if(e.isComposite()){let n=-1,s=-1,r=-1,a=-1;for(let l=0,c=o,d=o;li)return yn(o,t,i,c);if(h>=t&&-1==n&&(n=l,s=c),c>i&&o.dom.parentNode==e.dom){r=l,a=d;break}d=h,c=h+o.breakAfter}return{from:s,to:a<0?o+e.length:a,startDOM:(n?e.children[n-1].dom.nextSibling:null)||e.dom.firstChild,endDOM:r=0?e.children[r].dom:null}}return e.isText()?{from:o,to:o+e.length,startDOM:e.dom,endDOM:e.dom.nextSibling}:null}function wn(e,t){let i,{newSel:o}=t,n=e.state.selection.main,s=e.inputState.lastKeyTime>Date.now()-100?e.inputState.lastKeyCode:-1;if(t.bounds){let{from:o,to:r}=t.bounds,a=n.from,l=null;(8===s||Wt.android&&t.text.length=n.from&&i.to<=n.to&&(i.from!=n.from||i.to!=n.to)&&n.to-n.from-(i.to-i.from)<=4?i={from:n.from,to:n.to,insert:e.state.doc.slice(n.from,i.from).append(i.insert).append(e.state.doc.slice(i.to,n.to))}:e.state.doc.lineAt(n.from).toDate.now()-50?i={from:n.from,to:n.to,insert:e.state.toText(e.inputState.insertingText)}:Wt.chrome&&i&&i.from==i.to&&i.from==n.head&&"\n "==i.insert.toString()&&e.lineWrapping&&(o&&(o=ue.single(o.main.anchor-1,o.main.head-1)),i={from:n.from,to:n.to,insert:$.of([" "])}),i)return vn(e,i,o,s);if(o&&!xn(o,n)){let t=!1,i="select";return e.inputState.lastSelectionTime>Date.now()-50&&("select"==e.inputState.lastSelectionOrigin&&(t=!0),i=e.inputState.lastSelectionOrigin,"select.pointer"==i&&(o=rn(e.state.facet(bo).map(t=>t(e)),o))),e.dispatch({selection:o,scrollIntoView:t,userEvent:i}),!0}return!1}function vn(e,t,i,o=-1){if(Wt.ios&&e.inputState.flushIOSKey(t))return!0;let n=e.state.selection.main;if(Wt.android&&(t.to==n.to&&(t.from==n.from||t.from==n.from-1&&" "==e.state.sliceDoc(t.from,n.from))&&1==t.insert.length&&2==t.insert.lines&&vi(e.contentDOM,"Enter",13)||(t.from==n.from-1&&t.to==n.to&&0==t.insert.length||8==o&&t.insert.lengthn.head)&&vi(e.contentDOM,"Backspace",8)||t.from==n.from&&t.to==n.to+1&&0==t.insert.length&&vi(e.contentDOM,"Delete",46)))return!0;let s,r=t.insert.toString();e.inputState.composing>=0&&e.inputState.composing++;let a=()=>s||(s=function(e,t,i){let o,n=e.state,s=n.selection.main,r=-1;if(t.from==t.to&&t.froms.to){let i=t.fromt(e)),o,i);t.from==a&&(r=a)}if(r>-1)o={changes:t,selection:ue.cursor(t.from+t.insert.length,-1)};else if(t.from>=s.from&&t.to<=s.to&&t.to-t.from>=(s.to-s.from)/3&&(!i||i.main.empty&&i.main.from==t.from+t.insert.length)&&e.inputState.composing<0){let i=s.fromt.to?n.sliceDoc(t.to,s.to):"";o=n.replaceSelection(e.state.toText(i+t.insert.sliceString(0,void 0,e.state.lineBreak)+r))}else{let r=n.changes(t),a=i&&i.main.to<=r.newLength?i.main:void 0;if(n.selection.ranges.length>1&&(e.inputState.composing>=0||e.inputState.compositionPendingChange)&&t.to<=s.to+10&&t.to>=s.to-10){let l,c=e.state.sliceDoc(t.from,t.to),d=i&&Jo(e,i.main.head);if(d){let e=t.insert.length-(t.to-t.from);l={from:d.from,to:d.to-e}}else l=e.state.doc.lineAt(s.head);let h=s.to-t.to;o=n.changeByRange(i=>{if(i.from==s.from&&i.to==s.to)return{changes:r,range:a||i.map(r)};let o=i.to-h,d=o-c.length;if(e.state.sliceDoc(d,o)!=c||o>=l.from&&d<=l.to)return{range:i};let u=n.changes({from:d,to:o,insert:t.insert}),p=i.to-s.to;return{changes:u,range:a?ue.range(Math.max(0,a.anchor+p),Math.max(0,a.head+p)):i.map(u)}})}else o={changes:r,selection:a&&n.selection.replaceRange(a)}}let a="input.type";(e.composing||e.inputState.compositionPendingChange&&e.inputState.compositionEndedAt>Date.now()-50)&&(e.inputState.compositionPendingChange=!1,a+=".compose",e.inputState.compositionFirstChange&&(a+=".start",e.inputState.compositionFirstChange=!1));return n.update(o,{userEvent:a,scrollIntoView:!0})}(e,t,i));return e.state.facet(Zi).some(i=>i(e,t.from,t.to,r,a))||e.dispatch(a()),!0}function Cn(e,t,i,o){let n=Math.min(e.length,t.length),s=0;for(;s0&&a>0&&e.charCodeAt(r-1)==t.charCodeAt(a-1);)r--,a--;if("end"==o){i-=r+Math.max(0,s-Math.min(r,a))-s}if(r=r?s-i:0,a=s+(a-r),r=s}else if(a=a?s-i:0,r=s+(r-a),a=s}return{from:s,toA:r,toB:a}}function xn(e,t){return t.head==e.main.head&&t.anchor==e.main.anchor}class kn{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,Wt.safari&&e.contentDOM.addEventListener("input",()=>null),Wt.gecko&&function(e){Yn.has(e)||(Yn.add(e),e.addEventListener("copy",()=>{}),e.addEventListener("cut",()=>{}))}(e.contentDOM.ownerDocument)}handleEvent(e){(function(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let i,o=t.target;o!=e.contentDOM;o=o.parentNode)if(!o||11==o.nodeType||(i=Eo.get(o))&&i.isWidget()&&!i.isHidden&&i.widget.ignoreEvent(t))return!1;return!0})(this.view,e)&&!this.ignoreDuringComposition(e)&&("keydown"==e.type&&this.keydown(e)||(0!=this.view.updateState?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e)))}runHandlers(e,t){let i=this.handlers[e];if(i){for(let e of i.observers)e(this.view,t);for(let e of i.handlers){if(t.defaultPrevented)break;if(e(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=Tn(e),i=this.handlers,o=this.view.contentDOM;for(let e in t)if("scroll"!=e){let n=!t[e].handlers.length,s=i[e];s&&n!=!s.handlers.length&&(o.removeEventListener(e,this.handleEvent),s=null),s||o.addEventListener(e,this.handleEvent,{passive:n})}for(let e in i)"scroll"==e||t[e]||o.removeEventListener(e,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),9==e.keyCode&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&27!=e.keyCode&&An.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),Wt.android&&Wt.chrome&&!e.synthetic&&(13==e.keyCode||8==e.keyCode))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let t;return!Wt.ios||e.synthetic||e.altKey||e.metaKey||!((t=En.find(t=>t.keyCode==e.keyCode))&&!e.ctrlKey||Mn.indexOf(e.key)>-1&&e.ctrlKey&&!e.shiftKey)?(229!=e.keyCode&&this.view.observer.forceFlush(),!1):(this.pendingIOSKey=t||e,setTimeout(()=>this.flushIOSKey(),250),!0)}flushIOSKey(e){let t=this.pendingIOSKey;return!!t&&(!("Enter"==t.key&&e&&e.from0||!!(Wt.safari&&!Wt.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100)&&(this.compositionPendingKey=!1,!0))}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function Sn(e,t){return(i,o)=>{try{return t.call(e,o,i)}catch(e){so(i.state,e)}}}function Tn(e){let t=Object.create(null);function i(e){return t[e]||(t[e]={observers:[],handlers:[]})}for(let t of e){let e=t.spec,o=e&&e.plugin.domEventHandlers,n=e&&e.plugin.domEventObservers;if(o)for(let e in o){let n=o[e];n&&i(e).handlers.push(Sn(t.value,n))}if(n)for(let e in n){let o=n[e];o&&i(e).observers.push(Sn(t.value,o))}}for(let e in On)i(e).handlers.push(On[e]);for(let e in Bn)i(e).observers.push(Bn[e]);return t}const En=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],Mn="dthko",An=[16,17,18,20,91,92,224,225];function In(e){return.7*Math.max(0,e)+8}class Dn{constructor(e,t,i,o){this.view=e,this.startEvent=t,this.style=i,this.mustSelect=o,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=function(e){let t,i,o=e.ownerDocument;for(let n=e.parentNode;n&&!(n==o.body||t&&i);)if(1==n.nodeType)!i&&n.scrollHeight>n.clientHeight&&(i=n),!t&&n.scrollWidth>n.clientWidth&&(t=n),n=n.assignedSlot||n.parentNode;else{if(11!=n.nodeType)break;n=n.host}return{x:t,y:i}}(e.contentDOM),this.atoms=e.state.facet(bo).map(t=>t(e));let n=e.contentDOM.ownerDocument;n.addEventListener("mousemove",this.move=this.move.bind(this)),n.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(ot.allowMultipleSelections)&&function(e,t){let i=e.state.facet($i);return i.length?i[0](t):Wt.mac?t.metaKey:t.ctrlKey}(e,t),this.dragging=!(!function(e,t){let{main:i}=e.state.selection;if(i.empty)return!1;let o=oi(e.root);if(!o||0==o.rangeCount)return!0;let n=o.getRangeAt(0).getClientRects();for(let e=0;e=t.clientX&&i.top<=t.clientY&&i.bottom>=t.clientY)return!0}return!1}(e,t)||1!=Vn(t))&&null}start(e){!1===this.dragging&&this.select(e)}move(e){if(0==e.buttons)return this.destroy();if(this.dragging||null==this.dragging&&(t=this.startEvent,i=e,Math.max(Math.abs(t.clientX-i.clientX),Math.abs(t.clientY-i.clientY))<10))return;var t,i;this.select(this.lastEvent=e);let o=0,n=0,s=0,r=0,a=this.view.win.innerWidth,l=this.view.win.innerHeight;this.scrollParents.x&&({left:s,right:a}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:r,bottom:l}=this.scrollParents.y.getBoundingClientRect());let c=Co(this.view);e.clientX-c.left<=s+6?o=-In(s-e.clientX):e.clientX+c.right>=a-6&&(o=In(e.clientX-a)),e.clientY-c.top<=r+6?n=-In(r-e.clientY):e.clientY+c.bottom>=l-6&&(n=In(e.clientY-l)),this.setScrollSpeed(o,n)}up(e){null==this.dragging&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:t}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),t&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=t,t=0),(e||t)&&this.view.win.scrollBy(e,t),!1===this.dragging&&this.select(this.lastEvent)}select(e){let{view:t}=this,i=rn(this.atoms,this.style.get(e,this.extend,this.multiple));!this.mustSelect&&i.eq(t.state.selection,!1===this.dragging)||this.view.dispatch({selection:i,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(e=>e.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}const On=Object.create(null),Bn=Object.create(null),Ln=Wt.ie&&Wt.ie_version<15||Wt.ios&&Wt.webkit_version<604;function Pn(e,t,i){for(let o of e.facet(t))i=o(i,e);return i}function Nn(e,t){t=Pn(e.state,Ji,t);let i,{state:o}=e,n=1,s=o.toText(t),r=s.lines==o.selection.ranges.length;if(null!=Hn&&o.selection.ranges.every(e=>e.empty)&&Hn==s.toString()){let e=-1;i=o.changeByRange(i=>{let a=o.doc.lineAt(i.from);if(a.from==e)return{range:i};e=a.from;let l=o.toText((r?s.line(n++).text:t)+o.lineBreak);return{changes:{from:a.from,insert:l},range:ue.cursor(i.from+l.length)}})}else i=r?o.changeByRange(e=>{let t=s.line(n++);return{changes:{from:e.from,to:e.to,insert:t.text},range:ue.cursor(e.from+t.length)}}):o.replaceSelection(s);e.dispatch(i,{userEvent:"input.paste",scrollIntoView:!0})}function Rn(e,t,i,o){if(1==o)return ue.cursor(t,i);if(2==o)return function(e,t,i=1){let o=e.charCategorizer(t),n=e.doc.lineAt(t),s=t-n.from;if(0==n.length)return ue.cursor(t);0==s?i=1:s==n.length&&(i=-1);let r=s,a=s;i<0?r=ee(n.text,s,!1):a=ee(n.text,s);let l=o(n.text.slice(r,a));for(;r>0;){let e=ee(n.text,r,!1);if(o(n.text.slice(e,r))!=l)break;r=e}for(;a{e.inputState.lastScrollTop=e.scrollDOM.scrollTop,e.inputState.lastScrollLeft=e.scrollDOM.scrollLeft},On.keydown=(e,t)=>(e.inputState.setSelectionOrigin("select"),27==t.keyCode&&0!=e.inputState.tabFocusMode&&(e.inputState.tabFocusMode=Date.now()+2e3),!1),Bn.touchstart=(e,t)=>{e.inputState.lastTouchTime=Date.now(),e.inputState.setSelectionOrigin("select.pointer")},Bn.touchmove=e=>{e.inputState.setSelectionOrigin("select.pointer")},On.mousedown=(e,t)=>{if(e.observer.flush(),e.inputState.lastTouchTime>Date.now()-2e3)return!1;let i=null;for(let o of e.state.facet(ji))if(i=o(e,t),i)break;if(i||0!=t.button||(i=function(e,t){let i=e.posAndSideAtCoords({x:t.clientX,y:t.clientY},!1),o=Vn(t),n=e.state.selection;return{update(e){e.docChanged&&(i.pos=e.changes.mapPos(i.pos),n=n.map(e.changes))},get(t,s,r){let a,l=e.posAndSideAtCoords({x:t.clientX,y:t.clientY},!1),c=Rn(e,l.pos,l.assoc,o);if(i.pos!=l.pos&&!s){let t=Rn(e,i.pos,i.assoc,o),n=Math.min(t.from,c.from),s=Math.max(t.to,c.to);c=n1&&(a=function(e,t){for(let i=0;i=t)return ue.create(e.ranges.slice(0,i).concat(e.ranges.slice(i+1)),e.mainIndex==i?0:e.mainIndex-(e.mainIndex>i?1:0))}return null}(n,l.pos))?a:r?n.addRange(c):ue.create([c])}}}(e,t)),i){let o=!e.hasFocus;e.inputState.startMouseSelection(new Dn(e,t,i,o)),o&&e.observer.ignore(()=>{yi(e.contentDOM);let t=e.root.activeElement;t&&!t.contains(e.contentDOM)&&t.blur()});let n=e.inputState.mouseSelection;if(n)return n.start(t),!1===n.dragging}else e.inputState.setSelectionOrigin("select.pointer");return!1};const Fn=Wt.ie&&Wt.ie_version<=11;let qn=null,_n=0,zn=0;function Vn(e){if(!Fn)return e.detail;let t=qn,i=zn;return qn=e,zn=Date.now(),_n=!t||i>Date.now()-400&&Math.abs(t.clientX-e.clientX)<2&&Math.abs(t.clientY-e.clientY)<2?(_n+1)%3:1}function Wn(e,t,i,o){if(!(i=Pn(e.state,Ji,i)))return;let n=e.posAtCoords({x:t.clientX,y:t.clientY},!1),{draggedContent:s}=e.inputState,r=o&&s&&function(e,t){let i=e.state.facet(Ui);return i.length?i[0](t):Wt.mac?!t.altKey:!t.ctrlKey}(e,t)?{from:s.from,to:s.to}:null,a={from:n,insert:i},l=e.state.changes(r?[r,a]:a);e.focus(),e.dispatch({changes:l,selection:{anchor:l.mapPos(n,-1),head:l.mapPos(n,1)},userEvent:r?"move.drop":"input.drop"}),e.inputState.draggedContent=null}On.dragstart=(e,t)=>{let{selection:{main:i}}=e.state;if(t.target.draggable){let o=e.docView.tile.nearest(t.target);if(o&&o.isWidget()){let e=o.posAtStart,t=e+o.length;(e>=i.to||t<=i.from)&&(i=ue.range(e,t))}}let{inputState:o}=e;return o.mouseSelection&&(o.mouseSelection.dragging=!0),o.draggedContent=i,t.dataTransfer&&(t.dataTransfer.setData("Text",Pn(e.state,Xi,e.state.sliceDoc(i.from,i.to))),t.dataTransfer.effectAllowed="copyMove"),!1},On.dragend=e=>(e.inputState.draggedContent=null,!1),On.drop=(e,t)=>{if(!t.dataTransfer)return!1;if(e.state.readOnly)return!0;let i=t.dataTransfer.files;if(i&&i.length){let o=Array(i.length),n=0,s=()=>{++n==i.length&&Wn(e,t,o.filter(e=>null!=e).join(e.state.lineBreak),!1)};for(let e=0;e{/[\x00-\x08\x0e-\x1f]{2}/.test(t.result)||(o[e]=t.result),s()},t.readAsText(i[e])}return!0}{let i=t.dataTransfer.getData("Text");if(i)return Wn(e,t,i,!0),!0}return!1},On.paste=(e,t)=>{if(e.state.readOnly)return!0;e.observer.flush();let i=Ln?null:t.clipboardData;return i?(Nn(e,i.getData("text/plain")||i.getData("text/uri-list")),!0):(function(e){let t=e.dom.parentNode;if(!t)return;let i=t.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.focus(),setTimeout(()=>{e.focus(),i.remove(),Nn(e,i.value)},50)}(e),!1)};let Hn=null;On.copy=On.cut=(e,t)=>{let i=oi(e.root);if(i&&!si(e.contentDOM,i))return!1;let{text:o,ranges:n,linewise:s}=function(e){let t=[],i=[],o=!1;for(let o of e.selection.ranges)o.empty||(t.push(e.sliceDoc(o.from,o.to)),i.push(o));if(!t.length){let n=-1;for(let{from:o}of e.selection.ranges){let s=e.doc.lineAt(o);s.number>n&&(t.push(s.text),i.push({from:s.from,to:Math.min(e.doc.length,s.to+1)})),n=s.number}o=!0}return{text:Pn(e,Xi,t.join(e.lineBreak)),ranges:i,linewise:o}}(e.state);if(!o&&!s)return!1;Hn=s?o:null,"cut"!=t.type||e.state.readOnly||e.dispatch({changes:n,scrollIntoView:!0,userEvent:"delete.cut"});let r=Ln?null:t.clipboardData;return r?(r.clearData(),r.setData("text/plain",o),!0):(function(e,t){let i=e.dom.parentNode;if(!i)return;let o=i.appendChild(document.createElement("textarea"));o.style.cssText="position: fixed; left: -10000px; top: 10px",o.value=t,o.focus(),o.selectionEnd=t.length,o.selectionStart=0,setTimeout(()=>{o.remove(),e.focus()},50)}(e,o),!1)};const $n=We.define();function Un(e,t){let i=[];for(let o of e.facet(Ki)){let n=o(e,t);n&&i.push(n)}return i.length?e.update({effects:i,annotations:$n.of(!0)}):null}function jn(e){setTimeout(()=>{let t=e.hasFocus;if(t!=e.inputState.notifiedFocused){let i=Un(e.state,t);i?e.dispatch(i):e.update([])}},10)}Bn.focus=e=>{e.inputState.lastFocusTime=Date.now(),e.scrollDOM.scrollTop||!e.inputState.lastScrollTop&&!e.inputState.lastScrollLeft||(e.scrollDOM.scrollTop=e.inputState.lastScrollTop,e.scrollDOM.scrollLeft=e.inputState.lastScrollLeft),jn(e)},Bn.blur=e=>{e.observer.clearSelectionRange(),jn(e)},Bn.compositionstart=Bn.compositionupdate=e=>{e.observer.editContext||(null==e.inputState.compositionFirstChange&&(e.inputState.compositionFirstChange=!0),e.inputState.composing<0&&(e.inputState.composing=0))},Bn.compositionend=e=>{e.observer.editContext||(e.inputState.composing=-1,e.inputState.compositionEndedAt=Date.now(),e.inputState.compositionPendingKey=!0,e.inputState.compositionPendingChange=e.observer.pendingRecords().length>0,e.inputState.compositionFirstChange=null,Wt.chrome&&Wt.android?e.observer.flushSoon():e.inputState.compositionPendingChange?Promise.resolve().then(()=>e.observer.flush()):setTimeout(()=>{e.inputState.composing<0&&e.docView.hasComposition&&e.update([])},50))},Bn.contextmenu=e=>{e.inputState.lastContextMenu=Date.now()},On.beforeinput=(e,t)=>{var i,o;if("insertText"!=t.inputType&&"insertCompositionText"!=t.inputType||(e.inputState.insertingText=t.data,e.inputState.insertingTextAt=Date.now()),"insertReplacementText"==t.inputType&&e.observer.editContext){let o=null===(i=t.dataTransfer)||void 0===i?void 0:i.getData("text/plain"),n=t.getTargetRanges();if(o&&n.length){let t=n[0],i=e.posAtDOM(t.startContainer,t.startOffset),s=e.posAtDOM(t.endContainer,t.endOffset);return vn(e,{from:i,to:s,insert:e.state.toText(o)},null),!0}}let n;if(Wt.chrome&&Wt.android&&(n=En.find(e=>e.inputType==t.inputType))&&(e.observer.delayAndroidKey(n.key,n.keyCode),"Backspace"==n.key||"Delete"==n.key)){let t=(null===(o=window.visualViewport)||void 0===o?void 0:o.height)||0;setTimeout(()=>{var i;((null===(i=window.visualViewport)||void 0===i?void 0:i.height)||0)>t+10&&e.hasFocus&&(e.contentDOM.blur(),e.focus())},100)}return Wt.ios&&"deleteContentForward"==t.inputType&&e.observer.flushSoon(),Wt.safari&&"insertText"==t.inputType&&e.inputState.composing>=0&&setTimeout(()=>Bn.compositionend(e,t),20),!1};const Yn=new Set;const Gn=["pre-wrap","normal","pre-line","break-spaces"];let Zn=!1;function Kn(){Zn=!1}class Jn{constructor(e){this.lineWrapping=e,this.doc=$.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let i=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(i+=Math.max(0,Math.ceil((t-e-i*this.lineLength*.5)/this.lineLength))),this.lineHeight*i}heightForLine(e){if(!this.lineWrapping)return this.lineHeight;return(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return Gn.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let i=0;i-1,a=Math.abs(t-this.lineHeight)>.3||this.lineWrapping!=r||Math.abs(i-this.charWidth)>.1;if(this.lineWrapping=r,this.lineHeight=t,this.charWidth=i,this.textHeight=o,this.lineLength=n,a){this.heightSamples={};for(let e=0;e0}set outdated(e){this.flags=(e?2:0)|-3&this.flags}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>ts&&(Zn=!0),this.height=e)}replace(e,t,i){return is.of(i)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,i,o){let n=this,s=i.doc;for(let r=o.length-1;r>=0;r--){let{fromA:a,toA:l,fromB:c,toB:d}=o[r],h=n.lineAt(a,es.ByPosNoHeight,i.setDoc(t),0,0),u=h.to>=l?h:n.lineAt(l,es.ByPosNoHeight,i,0,0);for(d+=u.to-l,l=u.to;r>0&&h.from<=o[r-1].toA;)a=o[r-1].fromA,c=o[r-1].fromB,r--,a2*n){let n=e[t-1];n.break?e.splice(--t,1,n.left,null,n.right):e.splice(--t,1,n.left,n.right),i+=1+n.break,o-=n.size}else{if(!(n>2*o))break;{let t=e[i];t.break?e.splice(i,1,t.left,null,t.right):e.splice(i,1,t.left,t.right),i+=2+t.break,n-=t.size}}else if(o=n&&s(this.lineAt(0,es.ByPos,i,o,n))}setMeasuredHeight(e){let t=e.heights[e.index++];t<0?(this.spaceAbove=-t,t=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(t)}updateHeight(e,t=0,i=!1,o){return o&&o.from<=t&&o.more&&this.setMeasuredHeight(o),this.outdated=!1,this}toString(){return`block(${this.length})`}}class rs extends ss{constructor(e,t,i){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=i}mainBlock(e,t){return new Qn(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,t,i){let o=i[0];return 1==i.length&&(o instanceof rs||o instanceof as&&4&o.flags)&&Math.abs(this.length-o.length)<10?(o instanceof as?o=new rs(o.length,this.height,this.spaceAbove):o.height=this.height,this.outdated||(o.outdated=!1),o):is.of(i)}updateHeight(e,t=0,i=!1,o){return o&&o.from<=t&&o.more?this.setMeasuredHeight(o):(i||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class as extends is{constructor(e){super(e,0)}heightMetrics(e,t){let i,o=e.doc.lineAt(t).number,n=e.doc.lineAt(t+this.length).number,s=n-o+1,r=0;if(e.lineWrapping){let t=Math.min(this.height,e.lineHeight*s);i=t/s,this.length>s+1&&(r=(this.height-t)/(this.length-s-1))}else i=this.height/s;return{firstLine:o,lastLine:n,perLine:i,perChar:r}}blockAt(e,t,i,o){let{firstLine:n,lastLine:s,perLine:r,perChar:a}=this.heightMetrics(t,o);if(t.lineWrapping){let n=o+(e0){let e=i[i.length-1];e instanceof as?i[i.length-1]=new as(e.length+o):i.push(null,new as(o-1))}if(e>0){let t=i[0];t instanceof as?i[0]=new as(e+t.length):i.unshift(new as(e-1),null)}return is.of(i)}decomposeLeft(e,t){t.push(new as(e-1),null)}decomposeRight(e,t){t.push(null,new as(this.length-e-1))}updateHeight(e,t=0,i=!1,o){let n=t+this.length;if(o&&o.from<=t+this.length&&o.more){let i=[],s=Math.max(t,o.from),r=-1;for(o.from>t&&i.push(new as(o.from-t-1).updateHeight(e,t));s<=n&&o.more;){let t=e.doc.lineAt(s).length;i.length&&i.push(null);let n=o.heights[o.index++],a=0;n<0&&(a=-n,n=o.heights[o.index++]),-1==r?r=n:Math.abs(n-r)>=ts&&(r=-2);let l=new rs(t,n,a);l.outdated=!1,i.push(l),s+=t+1}s<=n&&i.push(null,new as(n-s).updateHeight(e,s));let a=is.of(i);return(r<0||Math.abs(a.height-this.height)>=ts||Math.abs(r-this.heightMetrics(e,t).perLine)>=ts)&&(Zn=!0),os(this,a)}return(i||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}}class ls extends is{constructor(e,t,i){super(e.length+t+i.length,e.height+i.height,t|(e.outdated||i.outdated?2:0)),this.left=e,this.right=i,this.size=e.size+i.size}get break(){return 1&this.flags}blockAt(e,t,i,o){let n=i+this.left.height;return er))return l;let c=t==es.ByPosNoHeight?es.ByPosNoHeight:es.ByPos;return a?l.join(this.right.lineAt(r,c,i,s,r)):this.left.lineAt(r,c,i,o,n).join(l)}forEachLine(e,t,i,o,n,s){let r=o+this.left.height,a=n+this.left.length+this.break;if(this.break)e=a&&this.right.forEachLine(e,t,i,r,a,s);else{let l=this.lineAt(a,es.ByPos,i,o,n);e=e&&l.from<=t&&s(l),t>l.to&&this.right.forEachLine(l.to+1,t,i,r,a,s)}}replace(e,t,i){let o=this.left.length+this.break;if(tthis.left.length)return this.balanced(this.left,this.right.replace(e-o,t-o,i));let n=[];e>0&&this.decomposeLeft(e,n);let s=n.length;for(let e of i)n.push(e);if(e>0&&cs(n,s-1),t=i&&t.push(null)),e>i&&this.right.decomposeLeft(e-i,t)}decomposeRight(e,t){let i=this.left.length,o=i+this.break;if(e>=o)return this.right.decomposeRight(e-o,t);e2*t.size||t.size>2*e.size?is.of(this.break?[e,null,t]:[e,t]):(this.left=os(this.left,e),this.right=os(this.right,t),this.setHeight(e.height+t.height),this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,i=!1,o){let{left:n,right:s}=this,r=t+n.length+this.break,a=null;return o&&o.from<=t+n.length&&o.more?a=n=n.updateHeight(e,t,i,o):n.updateHeight(e,t,i),o&&o.from<=r+s.length&&o.more?a=s=s.updateHeight(e,r,i,o):s.updateHeight(e,r,i),a?this.balanced(n,s):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function cs(e,t){let i,o;null==e[t]&&(i=e[t-1])instanceof as&&(o=e[t+1])instanceof as&&e.splice(t-1,3,new as(i.length+1+o.length))}class ds{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let e=Math.min(t,this.lineEnd),i=this.nodes[this.nodes.length-1];i instanceof rs?i.length+=e-this.pos:(e>this.pos||!this.isCovered)&&this.nodes.push(new rs(e-this.pos,-1,0)),this.writtenTo=e,t>e&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,i){if(e=5)&&this.addLineDeco(o,n,s)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenToe&&this.nodes.push(new rs(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,t){let i=new as(t-e);return this.oracle.doc.lineAt(e).to==t&&(i.flags|=4),i}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof rs)return e;let t=new rs(0,-1,0);return this.nodes.push(t),t}addBlock(e){this.enterLine();let t=e.deco;t&&t.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,t&&t.endSide>0&&(this.covering=e)}addLineDeco(e,t,i){let o=this.ensureLine();o.length+=i,o.collapsed+=i,o.widgetHeight=Math.max(o.widgetHeight,e),o.breaks+=t,this.writtenTo=this.pos=this.pos+i}finish(e){let t=0==this.nodes.length?null:this.nodes[this.nodes.length-1];!(this.lineStart>-1)||t instanceof rs||this.isCovered?(this.writtenToi.clientHeight||i.scrollWidth>i.clientWidth)&&"visible"!=o.overflow){let o=i.getBoundingClientRect();s=Math.max(s,o.left),r=Math.min(r,o.right),a=Math.max(a,o.top),l=Math.min(t==e.parentNode?n.innerHeight:l,o.bottom)}t="absolute"==o.position||"fixed"==o.position?i.offsetParent:i.parentNode}else{if(11!=t.nodeType)break;t=t.host}return{left:s-i.left,right:Math.max(s,r)-i.left,top:a-(i.top+t),bottom:Math.max(a,l)-(i.top+t)}}function ps(e,t){let i=e.getBoundingClientRect();return{left:0,right:i.right-i.left,top:t,bottom:i.bottom-(i.top+t)}}class ms{constructor(e,t,i,o){this.from=e,this.to=t,this.size=i,this.displaySize=o}static same(e,t){if(e.length!=t.length)return!1;for(let i=0;i"function"!=typeof e&&"cm-lineWrapping"==e.class);this.heightOracle=new Jn(t),this.stateDeco=Cs(e),this.heightMap=is.empty().applyChanges(this.stateDeco,$.empty,this.heightOracle.setDoc(e.doc),[new ko(0,0,0,e.doc.length)]);for(let e=0;e<2&&(this.viewport=this.getViewport(0,null),this.updateForViewport());e++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Kt.set(this.lineGaps.map(e=>e.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let i=0;i<=1;i++){let o=i?t.head:t.anchor;if(!e.some(({from:e,to:t})=>o>=e&&o<=t)){let{from:t,to:i}=this.lineBlockAt(o);e.push(new bs(t,i))}}return this.viewports=e.sort((e,t)=>e.from-t.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?vs:new xs(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(ks(e,this.scaler))})}update(e,t=null){this.state=e.state;let i=this.stateDeco;this.stateDeco=Cs(this.state);let o=e.changedRanges,n=ko.extendWithRanges(o,function(e,t,i){let o=new hs;return ct.compare(e,t,i,o,0),o.changes}(i,this.stateDeco,e?e.changes:ne.empty(this.state.doc.length))),s=this.heightMap.height,r=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);Kn(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),n),(this.heightMap.height!=s||Zn)&&(e.flags|=2),r?(this.scrollAnchorPos=e.changes.mapPos(r.from,-1),this.scrollAnchorHeight=r.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=s);let a=n.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.heada.to)||!this.viewportIsAppropriate(a))&&(a=this.getViewport(0,t));let l=a.from!=this.viewport.from||a.to!=this.viewport.to;this.viewport=a,e.flags|=this.updateForViewport(),(l||!e.changes.empty||2&e.flags)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(eo)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,i=window.getComputedStyle(t),o=this.heightOracle,n=i.whiteSpace;this.defaultTextDirection="rtl"==i.direction?Ti.RTL:Ti.LTR;let s=this.heightOracle.mustRefreshForWrapping(n)||this.mustMeasureContent,r=t.getBoundingClientRect(),a=s||this.mustMeasureContent||this.contentDOMHeight!=r.height;this.contentDOMHeight=r.height,this.mustMeasureContent=!1;let l=0,c=0;if(r.width&&r.height){let{scaleX:e,scaleY:i}=mi(t,r);(e>.005&&Math.abs(this.scaleX-e)>.005||i>.005&&Math.abs(this.scaleY-i)>.005)&&(this.scaleX=e,this.scaleY=i,l|=16,s=a=!0)}let d=(parseInt(i.paddingTop)||0)*this.scaleY,h=(parseInt(i.paddingBottom)||0)*this.scaleY;this.paddingTop==d&&this.paddingBottom==h||(this.paddingTop=d,this.paddingBottom=h,l|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(o.lineWrapping&&(a=!0),this.editorWidth=e.scrollDOM.clientWidth,l|=16);let u=e.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=u&&(this.scrollAnchorHeight=-1,this.scrollTop=u),this.scrolledToBottom=Ci(e.scrollDOM);let p=(this.printing?ps:us)(t,this.paddingTop),m=p.top-this.pixelViewport.top,g=p.bottom-this.pixelViewport.bottom;this.pixelViewport=p;let f=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(f!=this.inView&&(this.inView=f,f&&(a=!0)),!this.inView&&!this.scrollTarget&&!function(e){let t=e.getBoundingClientRect(),i=e.ownerDocument.defaultView||window;return t.left0&&t.top0}(e.dom))return 0;let b=r.width;if(this.contentDOMWidth==b&&this.editorHeight==e.scrollDOM.clientHeight||(this.contentDOMWidth=r.width,this.editorHeight=e.scrollDOM.clientHeight,l|=16),a){let t=e.docView.measureVisibleLineHeights(this.viewport);if(o.mustRefreshForHeights(t)&&(s=!0),s||o.lineWrapping&&Math.abs(b-this.contentDOMWidth)>o.charWidth){let{lineHeight:i,charWidth:r,textHeight:a}=e.docView.measureTextSize();s=i>0&&o.refresh(n,i,r,a,Math.max(5,b/r),t),s&&(e.docView.minWidth=0,l|=16)}m>0&&g>0?c=Math.max(m,g):m<0&&g<0&&(c=Math.min(m,g)),Kn();for(let i of this.viewports){let n=i.from==this.viewport.from?t:e.docView.measureVisibleLineHeights(i);this.heightMap=(s?is.empty().applyChanges(this.stateDeco,$.empty,this.heightOracle,[new ko(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(o,0,s,new Xn(i.from,n))}Zn&&(l|=2)}let y=!this.viewportIsAppropriate(this.viewport,c)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return y&&(2&l&&(l|=this.updateScaler()),this.viewport=this.getViewport(c,this.scrollTarget),l|=this.updateForViewport()),(2&l||y)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(s?[]:this.lineGaps,e)),l|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),l}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let i=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),o=this.heightMap,n=this.heightOracle,{visibleTop:s,visibleBottom:r}=this,a=new bs(o.lineAt(s-1e3*i,es.ByHeight,n,0,0).from,o.lineAt(r+1e3*(1-i),es.ByHeight,n,0,0).to);if(t){let{head:e}=t.range;if(ea.to){let i,s=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),r=o.lineAt(e,es.ByPos,n,0,0);i="center"==t.y?(r.top+r.bottom)/2-s/2:"start"==t.y||"nearest"==t.y&&e=r+Math.max(10,Math.min(i,250)))&&o>s-2e3&&n>1,s=o<<1;if(this.defaultTextDirection!=Ti.LTR&&!i)return[];let r=[],a=(o,s,l,c)=>{if(s-oo&&ee.from>=l.from&&e.to<=l.to&&Math.abs(e.from-o)e.fromt));if(!u){if(se.from<=s&&e.to>=s)){let e=t.moveToLineBoundary(ue.cursor(s),!1,!0).head;e>o&&(s=e)}let e=this.gapSize(l,o,s,c);u=new ms(o,s,e,i||e<2e6?e:2e6)}r.push(u)},l=t=>{if(t.lengthn&&(o.push({from:n,to:e}),s+=e-n),n=t}},20),n2e6)for(let i of e)i.from>=t.from&&i.fromt.from&&a(t.from,r,t,n),le.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let t=this.stateDeco;this.lineGaps.length&&(t=t.concat(this.lineGapDeco));let i=[];ct.spans(t,this.viewport.from,this.viewport.to,{span(e,t){i.push({from:e,to:t})},point(){}},20);let o=0;if(i.length!=this.visibleRanges.length)o=12;else for(let t=0;t=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||ks(this.heightMap.lineAt(e,es.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(t=>t.top<=e&&t.bottom>=e)||ks(this.heightMap.lineAt(this.scaler.fromDOM(e),es.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return ks(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class bs{constructor(e,t){this.from=e,this.to=t}}function ys({total:e,ranges:t},i){if(i<=0)return t[0].from;if(i>=1)return t[t.length-1].to;let o=Math.floor(e*i);for(let e=0;;e++){let{from:i,to:n}=t[e],s=n-i;if(o<=s)return i+o;o-=s}}function ws(e,t){let i=0;for(let{from:o,to:n}of e.ranges){if(t<=n){i+=t-o;break}i+=n-o}return i/e.total}const vs={toDOM:e=>e,fromDOM:e=>e,scale:1,eq(e){return e==this}};function Cs(e){let t=e.facet(mo).filter(e=>"function"!=typeof e),i=e.facet(fo).filter(e=>"function"!=typeof e);return i.length&&t.push(ct.join(i)),t}class xs{constructor(e,t,i){let o=0,n=0,s=0;this.viewports=i.map(({from:i,to:n})=>{let s=t.lineAt(i,es.ByPos,e,0,0).top,r=t.lineAt(n,es.ByPos,e,0,0).bottom;return o+=r-s,{from:i,to:n,top:s,bottom:r,domTop:0,domBottom:0}}),this.scale=(7e6-o)/(t.height-o);for(let e of this.viewports)e.domTop=s+(e.top-n)*this.scale,s=e.domBottom=e.domTop+(e.bottom-e.top),n=e.bottom}toDOM(e){for(let t=0,i=0,o=0;;t++){let n=tt.from==e.viewports[i].from&&t.to==e.viewports[i].to))}}function ks(e,t){if(1==t.scale)return e;let i=t.toDOM(e.top),o=t.toDOM(e.bottom);return new Qn(e.from,e.length,i,o-i,Array.isArray(e._content)?e._content.map(e=>ks(e,t)):e._content)}const Ss=ge.define({combine:e=>e.join(" ")}),Ts=ge.define({combine:e=>e.indexOf(!0)>-1}),Es=St.newName(),Ms=St.newName(),As=St.newName(),Is={"&light":"."+Ms,"&dark":"."+As};function Ds(e,t,i){return new St(t,{finish:t=>/&/.test(t)?t.replace(/&\w*/,t=>{if("&"==t)return e;if(!i||!i[t])throw new RangeError(`Unsupported selector: ${t}`);return i[t]}):e+" "+t})}const Os=Ds("."+Es,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:'url(\'data:image/svg+xml,\')',backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},Is),Bs={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Ls=Wt.ie&&Wt.ie_version<=11;class Ps{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new gi,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(t=>{for(let e of t)this.queue.push(e);(Wt.ie&&Wt.ie_version<=11||Wt.ios&&e.composing)&&t.some(e=>"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length)?this.flushSoon():this.flush()}),!window.EditContext||!Wt.android||!1===e.constructor.EDIT_CONTEXT||Wt.chrome&&Wt.chrome_version<126||(this.editContext=new Fs(e),e.state.facet(ro)&&(e.contentDOM.editContext=this.editContext.editContext)),Ls&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),"function"==typeof ResizeObserver&&(this.resizeScroll=new ResizeObserver(()=>{var e;(null===(e=this.view.docView)||void 0===e?void 0:e.lastUpdate){this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),e.length>0&&e[e.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(e=>{e.length>0&&e[e.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){("change"!=e.type&&e.type||e.matches)&&(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,i)=>t!=e[i]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:i}=this,o=this.selectionRange;if(i.state.facet(ro)?i.root.activeElement!=this.dom:!si(this.dom,o))return;let n=o.anchorNode&&i.docView.tile.nearest(o.anchorNode);n&&n.isWidget()&&n.widget.ignoreEvent(e)?t||(this.selectionChanged=!1):(Wt.ie&&Wt.ie_version<=11||Wt.android&&Wt.chrome)&&!i.state.selection.main.empty&&o.focusNode&&ai(o.focusNode,o.focusOffset,o.anchorNode,o.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=oi(e.root);if(!t)return!1;let i=Wt.safari&&11==e.root.nodeType&&e.root.activeElement==this.dom&&function(e,t){if(t.getComposedRanges){let i=t.getComposedRanges(e.root)[0];if(i)return Rs(e,i)}let i=null;function o(e){e.preventDefault(),e.stopImmediatePropagation(),i=e.getTargetRanges()[0]}return e.contentDOM.addEventListener("beforeinput",o,!0),e.dom.ownerDocument.execCommand("indent"),e.contentDOM.removeEventListener("beforeinput",o,!0),i?Rs(e,i):null}(this.view,t)||t;if(!i||this.selectionRange.eq(i))return!1;let o=si(this.dom,i);return o&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime{let e=this.delayedAndroidKey;if(e){this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=e.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&e.force&&vi(this.dom,e.key,e.keyCode)}};this.flushingAndroidKey=this.view.win.requestAnimationFrame(e)}this.delayedAndroidKey&&"Enter"!=e||(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,i=-1,o=!1;for(let n of e){let e=this.readMutation(n);e&&(e.typeOver&&(o=!0),-1==t?({from:t,to:i}=e):(t=Math.min(e.from,t),i=Math.max(e.to,i)))}return{from:t,to:i,typeOver:o}}readChange(){let{from:e,to:t,typeOver:i}=this.processRecords(),o=this.selectionChanged&&si(this.dom,this.selectionRange);if(e<0&&!o)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let n=new bn(this.view,e,t,i);return this.view.docView.domChanged={newSel:n.newSel?n.newSel.main:null},n}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return this.view.requestMeasure(),!1;let i=this.view.state,o=wn(this.view,t);return this.view.state==i&&(t.domChanged||t.newSel&&!xn(this.view.state.selection,t.newSel.main))&&this.view.update([]),o}readMutation(e){let t=this.view.docView.tile.nearest(e.target);if(!t||t.isWidget())return null;if(t.markDirty("attributes"==e.type),"childList"==e.type){let i=Ns(t,e.previousSibling||e.target.previousSibling,-1),o=Ns(t,e.nextSibling||e.target.nextSibling,1);return{from:i?t.posAfter(i):t.posAtStart,to:o?t.posBefore(o):t.posAtEnd,typeOver:!1}}return"characterData"==e.type?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(ro)!=e.state.facet(ro)&&(e.view.contentDOM.editContext=e.state.facet(ro)?this.editContext.editContext:null))}destroy(){var e,t,i;this.stop(),null===(e=this.intersection)||void 0===e||e.disconnect(),null===(t=this.gapIntersection)||void 0===t||t.disconnect(),null===(i=this.resizeScroll)||void 0===i||i.disconnect();for(let e of this.scrollTargets)e.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function Ns(e,t,i){for(;t;){let o=Eo.get(t);if(o&&o.parent==e)return o;let n=t.parentNode;t=n!=e.dom?n:i>0?t.nextSibling:t.previousSibling}return null}function Rs(e,t){let i=t.startContainer,o=t.startOffset,n=t.endContainer,s=t.endOffset,r=e.docView.domAtPos(e.state.selection.main.anchor,1);return ai(r.node,r.offset,n,s)&&([i,o,n,s]=[n,s,i,o]),{anchorNode:i,anchorOffset:o,focusNode:n,focusOffset:s}}class Fs{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let t=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=i=>{let o=e.state.selection.main,{anchor:n,head:s}=o,r=this.toEditorPos(i.updateRangeStart),a=this.toEditorPos(i.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:i.updateRangeStart,editorBase:r,drifted:!1});let l=a-r>i.text.length;r==this.from&&nthis.to&&(a=n);let c=Cn(e.state.sliceDoc(r,a),i.text,(l?o.from:o.to)-r,l?"end":null);if(!c){let t=ue.single(this.toEditorPos(i.selectionStart),this.toEditorPos(i.selectionEnd));return void(xn(t,o)||e.dispatch({selection:t,userEvent:"select"}))}let d={from:c.from+r,to:c.toA+r,insert:$.of(i.text.slice(c.from,c.toB).split("\n"))};if((Wt.mac||Wt.android)&&d.from==s-1&&/^\. ?$/.test(i.text)&&"off"==e.contentDOM.getAttribute("autocorrect")&&(d={from:r,to:a,insert:$.of([i.text.replace("."," ")])}),this.pendingContextChange=d,!e.state.readOnly){let t=this.to-this.from+(d.to-d.from+d.insert.length);vn(e,d,ue.single(this.toEditorPos(i.selectionStart,t),this.toEditorPos(i.selectionEnd,t)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),d.from=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,i.updateRangeStart-1),Math.min(t.text.length,i.updateRangeStart+1)))&&this.handlers.compositionend(i)},this.handlers.characterboundsupdate=i=>{let o=[],n=null;for(let t=this.toEditorPos(i.rangeStart),s=this.toEditorPos(i.rangeEnd);t{let i=[];for(let e of t.getTextFormats()){let t=e.underlineStyle,o=e.underlineThickness;if(!/none/i.test(t)&&!/none/i.test(o)){let n=this.toEditorPos(e.rangeStart),s=this.toEditorPos(e.rangeEnd);if(n{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:t}=this.composing;this.composing=null,t&&this.reset(e.state)}};for(let e in this.handlers)t.addEventListener(e,this.handlers[e]);this.measureReq={read:e=>{this.editContext.updateControlBounds(e.contentDOM.getBoundingClientRect());let t=oi(e.root);t&&t.rangeCount&&this.editContext.updateSelectionBounds(t.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,i=!1,o=this.pendingContextChange;return e.changes.iterChanges((n,s,r,a,l)=>{if(i)return;let c=l.length-(s-n);if(o&&s>=o.to){if(o.from==n&&o.to==s&&o.insert.eq(l))return o=this.pendingContextChange=null,t+=c,void(this.to+=c);o=null,this.revertPending(e.state)}if(n+=t,(s+=t)<=this.from)this.from+=c,this.to+=c;else if(nthis.to||this.to-this.from+l.length>3e4)return void(i=!0);this.editContext.updateText(this.toContextPos(n),this.toContextPos(s),l.toString()),this.to+=c}t+=c}),o&&!i&&this.revertPending(e.state),!i}update(e){let t=this.pendingContextChange,i=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(i.from,i.to)&&e.transactions.some(e=>!e.isUserEvent("input.type")&&e.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):this.applyEdits(e)&&this.rangeIsValid(e.state)?(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state):(this.pendingContextChange=null,this.reset(e.state)),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,i=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),o=this.toContextPos(t.head);this.editContext.selectionStart==i&&this.editContext.selectionEnd==o||this.editContext.updateSelection(i,o)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to3e4)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let i=this.composing;return i&&i.drifted?i.editorBase+(e-i.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}}class qs{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),e.parent&&e.parent.appendChild(this.dom);let{dispatch:i}=e;this.dispatchTransactions=e.dispatchTransactions||i&&(e=>e.forEach(e=>i(e,this)))||(e=>this.update(e)),this.dispatch=this.dispatch.bind(this),this._root=e.root||function(e){for(;e;){if(e&&(9==e.nodeType||11==e.nodeType&&e.host))return e;e=e.assignedSlot||e.parentNode}return null}(e.parent)||document,this.viewState=new fs(e.state||ot.create(e)),e.scrollTo&&e.scrollTo.is(oo)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(lo).map(e=>new ho(e));for(let e of this.plugins)e.update(this);this.observer=new Ps(this),this.inputState=new kn(this),this.inputState.ensureHandlers(this.plugins),this.docView=new Zo(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),(null===(t=document.fonts)||void 0===t?void 0:t.ready)&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent=!0,this.requestMeasure()})}dispatch(...e){let t=1==e.length&&e[0]instanceof je?e:1==e.length&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(0!=this.updateState)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t,i=!1,o=!1,n=this.state;for(let t of e){if(t.startState!=n)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");n=t.state}if(this.destroyed)return void(this.viewState.state=n);let s=this.hasFocus,r=0,a=null;e.some(e=>e.annotation($n))?(this.inputState.notifiedFocused=s,r=1):s!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=s,a=Un(n,s),a||(r=1));let l=this.observer.delayedAndroidKey,c=null;if(l?(this.observer.clearDelayedAndroidKey(),c=this.observer.readChange(),(c&&!this.state.doc.eq(n.doc)||!this.state.selection.eq(n.selection))&&(c=null)):this.observer.clear(),n.facet(ot.phrases)!=this.state.facet(ot.phrases))return this.setState(n);t=So.create(this,n,e),t.flags|=r;let d=this.viewState.scrollTarget;try{this.updateState=2;for(let t of e){if(d&&(d=d.map(t.changes)),t.scrollIntoView){let{main:e}=t.state.selection;d=new io(e.empty?e:ue.cursor(e.head,e.head>e.anchor?-1:1))}for(let e of t.effects)e.is(oo)&&(d=e.value.clip(this.state))}this.viewState.update(t,d),this.bidiCache=Vs.update(this.bidiCache,t.changes),t.empty||(this.updatePlugins(t),this.inputState.update(t)),i=this.docView.update(t),this.state.facet(xo)!=this.styleModules&&this.mountStyles(),o=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(i,e.some(e=>e.isUserEvent("select.pointer")))}finally{this.updateState=0}if(t.startState.facet(Ss)!=t.state.facet(Ss)&&(this.viewState.mustMeasureContent=!0),(i||o||d||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),i&&this.docViewUpdate(),!t.empty)for(let e of this.state.facet(Gi))try{e(t)}catch(e){so(this.state,e,"update listener")}(a||c)&&Promise.resolve().then(()=>{a&&this.state==a.startState&&this.dispatch(a),c&&!wn(this,c)&&l.force&&vi(this.contentDOM,l.key,l.keyCode)})}setState(e){if(0!=this.updateState)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed)return void(this.viewState.state=e);this.updateState=2;let t=this.hasFocus;try{for(let e of this.plugins)e.destroy(this);this.viewState=new fs(e),this.plugins=e.facet(lo).map(e=>new ho(e)),this.pluginMap.clear();for(let e of this.plugins)e.update(this);this.docView.destroy(),this.docView=new Zo(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(lo),i=e.state.facet(lo);if(t!=i){let o=[];for(let n of i){let i=t.indexOf(n);if(i<0)o.push(new ho(n));else{let t=this.plugins[i];t.mustUpdate=e,o.push(t)}}for(let t of this.plugins)t.mustUpdate!=e&&t.destroy(this);this.plugins=o,this.pluginMap.clear()}else for(let t of this.plugins)t.mustUpdate=e;for(let e=0;e-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey)return this.measureScheduled=-1,void this.requestMeasure();this.measureScheduled=0,e&&this.observer.forceFlush();let t=null,i=this.scrollDOM,o=i.scrollTop*this.scaleY,{scrollAnchorPos:n,scrollAnchorHeight:s}=this.viewState;Math.abs(o-this.viewState.scrollTop)>1&&(s=-1),this.viewState.scrollAnchorHeight=-1;try{for(let e=0;;e++){if(s<0)if(Ci(i))n=-1,s=this.viewState.heightMap.height;else{let e=this.viewState.scrollAnchorAt(o);n=e.from,s=e.top}this.updateState=1;let r=this.viewState.measure(this);if(!r&&!this.measureRequests.length&&null==this.viewState.scrollTarget)break;if(e>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let a=[];4&r||([this.measureRequests,a]=[a,this.measureRequests]);let l=a.map(e=>{try{return e.read(this)}catch(e){return so(this.state,e),zs}}),c=So.create(this,this.state,[]),d=!1;c.flags|=r,t?t.flags|=r:t=c,this.updateState=2,c.empty||(this.updatePlugins(c),this.inputState.update(c),this.updateAttrs(),d=this.docView.update(c),d&&this.docViewUpdate());for(let e=0;e1||e<-1){o+=e,i.scrollTop=o/this.scaleY,s=-1;continue}}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let e of this.state.facet(Gi))e(t)}get themeClasses(){return Es+" "+(this.state.facet(Ts)?As:Ms)+" "+this.state.facet(Ss)}updateAttrs(){let e=Ws(this,uo,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(ro)?"true":"false",class:"cm-content",style:`${Wt.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),Ws(this,po,t);let i=this.observer.ignore(()=>{let i=jt(this.contentDOM,this.contentAttrs,t),o=jt(this.dom,this.editorAttrs,e);return i||o});return this.editorAttrs=e,this.contentAttrs=t,i}showAnnouncements(e){let t=!0;for(let i of e)for(let e of i.effects)if(e.is(qs.announce)){t&&(this.announceDOM.textContent=""),t=!1,this.announceDOM.appendChild(document.createElement("div")).textContent=e.value}}mountStyles(){this.styleModules=this.state.facet(xo);let e=this.state.facet(qs.cspNonce);St.mount(this.root,this.styleModules.concat(Os).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(2==this.updateState)throw new Error("Reading the editor layout isn't allowed during an update");0==this.updateState&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(null!=e.key)for(let t=0;tt.plugin==e)||null),t&&t.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,i){return an(this,e,nn(this,e,t,i))}moveByGroup(e,t){return an(this,e,nn(this,e,t,t=>function(e,t,i){let o=e.state.charCategorizer(t),n=o(i);return e=>{let t=o(e);return n==Qe.Space&&(n=t),n==t}}(this,e.head,t)))}visualLineSide(e,t){let i=this.bidiSpans(e),o=this.textDirectionAt(e.from),n=i[t?i.length-1:0];return ue.cursor(n.side(t,o)+e.from,n.forward(!t,o)?1:-1)}moveToLineBoundary(e,t,i=!0){return on(this,e,t,i)}moveVertically(e,t,i){return an(this,e,function(e,t,i,o){let n=t.head,s=i?1:-1;if(n==(i?e.state.doc.length:0))return ue.cursor(n,t.assoc);let r,a=t.goalColumn,l=e.contentDOM.getBoundingClientRect(),c=e.coordsAtPos(n,t.assoc||-1),d=e.documentTop;if(c)null==a&&(a=c.left-l.left),r=s<0?c.top:c.bottom;else{let t=e.viewState.lineBlockAt(n);null==a&&(a=Math.min(l.right-l.left,e.defaultCharacterWidth*(n-t.from))),r=(s<0?t.top:t.bottom)+d}let h=cn(e,{x:l.left+a,y:r+(null!=o?o:e.viewState.heightOracle.textHeight>>1)*s},!1,s);return ue.cursor(h.pos,h.assoc,void 0,a)}(this,e,t,i))}domAtPos(e,t=1){return this.docView.domAtPos(e,t)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){this.readMeasured();let i=cn(this,e,t);return i&&i.pos}posAndSideAtCoords(e,t=!0){return this.readMeasured(),cn(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let i=this.docView.coordsAt(e,t);if(!i||i.left==i.right)return i;let o=this.state.doc.lineAt(e),n=this.bidiSpans(o);return ui(i,n[Ni.find(n,e-o.from,-1,t)].dir==Ti.LTR==t>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(Qi)||ethis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>_s)return zi(e.length);let t,i=this.textDirectionAt(e.from);for(let o of this.bidiCache)if(o.from==e.from&&o.dir==i&&(o.fresh||Ri(o.isolates,t=wo(this,e))))return o.order;t||(t=wo(this,e));let o=function(e,t,i){if(!e)return[new Ni(0,0,t==Mi?1:0)];if(t==Ei&&!i.length&&!Pi.test(e))return zi(e.length);if(i.length)for(;e.length>Fi.length;)Fi[Fi.length]=256;let o=[],n=t==Ei?0:1;return _i(e,n,n,i,0,e.length,o),o}(e.text,i,t);return this.bidiCache.push(new Vs(e.from,e.to,i,t,!0,o)),o}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||Wt.safari&&(null===(e=this.inputState)||void 0===e?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{yi(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((9==e.nodeType?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){return oo.of(new io("number"==typeof e?ue.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,i=this.viewState.scrollAnchorAt(e);return oo.of(new io(ue.cursor(i.from),"start","start",i.top-e,t,!0))}setTabFocusMode(e){null==e?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:"boolean"==typeof e?this.inputState.tabFocusMode=e?0:-1:0!=this.inputState.tabFocusMode&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return co.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return co.define(()=>({}),{eventObservers:e})}static theme(e,t){let i=St.newName(),o=[Ss.of(i),xo.of(Ds(`.${i}`,e))];return t&&t.dark&&o.push(Ts.of(!0)),o}static baseTheme(e){return Ae.lowest(xo.of(Ds("."+Es,e,Is)))}static findFromDOM(e){var t;let i=e.querySelector(".cm-content"),o=i&&Eo.get(i)||Eo.get(e);return(null===(t=null==o?void 0:o.root)||void 0===t?void 0:t.view)||null}}qs.styleModule=xo,qs.inputHandler=Zi,qs.clipboardInputFilter=Ji,qs.clipboardOutputFilter=Xi,qs.scrollHandler=to,qs.focusChangeEffect=Ki,qs.perLineTextDirection=Qi,qs.exceptionSink=Yi,qs.updateListener=Gi,qs.editable=ro,qs.mouseSelectionStyle=ji,qs.dragMovesSelection=Ui,qs.clickAddsSelectionRange=$i,qs.decorations=mo,qs.blockWrappers=go,qs.outerDecorations=fo,qs.atomicRanges=bo,qs.bidiIsolatedRanges=yo,qs.scrollMargins=vo,qs.darkTheme=Ts,qs.cspNonce=ge.define({combine:e=>e.length?e[0]:""}),qs.contentAttributes=po,qs.editorAttributes=uo,qs.lineWrapping=qs.contentAttributes.of({class:"cm-lineWrapping"}),qs.announce=Ue.define();const _s=4096,zs={};class Vs{constructor(e,t,i,o,n,s){this.from=e,this.to=t,this.dir=i,this.isolates=o,this.fresh=n,this.order=s}static update(e,t){if(t.empty&&!e.some(e=>e.fresh))return e;let i=[],o=e.length?e[e.length-1].dir:Ti.LTR;for(let n=Math.max(0,e.length-10);n=0;n--){let t=o[n],s="function"==typeof t?t(e):t;s&&Ht(s,i)}return i}class Hs extends nt{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}Hs.prototype.elementClass="",Hs.prototype.toDOM=void 0,Hs.prototype.mapMode=ie.TrackBefore,Hs.prototype.startSide=Hs.prototype.endSide=-1,Hs.prototype.point=!0;let $s=0;class Us{constructor(e,t,i,o){this.name=e,this.set=t,this.base=i,this.modified=o,this.id=$s++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let i="string"==typeof e?e:"?";if(e instanceof Us&&(t=e),null==t?void 0:t.base)throw new Error("Can not derive from a modified tag");let o=new Us(i,[],null,[]);if(o.set.push(o),t)for(let e of t.set)o.set.push(e);return o}static defineModifier(e){let t=new Ys(e);return e=>e.modified.indexOf(t)>-1?e:Ys.get(e.base||e,e.modified.concat(t).sort((e,t)=>e.id-t.id))}}let js=0;class Ys{constructor(e){this.name=e,this.instances=[],this.id=js++}static get(e,t){if(!t.length)return e;let i=t[0].instances.find(i=>{return i.base==e&&(o=t,n=i.modified,o.length==n.length&&o.every((e,t)=>e==n[t]));var o,n});if(i)return i;let o=[],n=new Us(e.name,o,e,t);for(let e of t)e.instances.push(n);let s=function(e){let t=[[]];for(let i=0;it.length-e.length)}(t);for(let t of e.set)if(!t.modified.length)for(let e of s)o.push(Ys.get(t,e));return n}}function Gs(e){let t=Object.create(null);for(let i in e){let o=e[i];Array.isArray(o)||(o=[o]);for(let e of i.split(" "))if(e){let i=[],n=2,s=e;for(let t=0;;){if("..."==s&&t>0&&t+3==e.length){n=1;break}let o=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(s);if(!o)throw new RangeError("Invalid path: "+e);if(i.push("*"==o[0]?"":'"'==o[0][0]?JSON.parse(o[0]):o[0]),t+=o[0].length,t==e.length)break;let r=e[t++];if(t==e.length&&"!"==r){n=0;break}if("/"!=r)throw new RangeError("Invalid path: "+e);s=e.slice(t)}let r=i.length-1,a=i[r];if(!a)throw new RangeError("Invalid path: "+e);let l=new Ks(o,n,r>0?i.slice(0,r):null);t[a]=l.sort(t[a])}}return Zs.add(t)}const Zs=new s({combine(e,t){let i,o,n;for(;e||t;){if(!e||t&&e.depth>=t.depth?(n=t,t=t.next):(n=e,e=e.next),i&&i.mode==n.mode&&!n.context&&!i.context)continue;let s=new Ks(n.tags,n.mode,n.context);i?i.next=s:o=s,i=s}return o}});class Ks{constructor(e,t,i,o){this.tags=e,this.mode=t,this.context=i,this.next=o}get opaque(){return 0==this.mode}get inherit(){return 1==this.mode}sort(e){return!e||e.depth{let t=n;for(let o of e)for(let e of o.set){let o=i[e.id];if(o){t=t?t+" "+o:o;break}}return t},scope:o}}Ks.empty=new Ks([],2,null);const Xs=Us.define,Qs=Xs(),er=Xs(),tr=Xs(er),ir=Xs(er),or=Xs(),nr=Xs(or),sr=Xs(or),rr=Xs(),ar=Xs(rr),lr=Xs(),cr=Xs(),dr=Xs(),hr=Xs(dr),ur=Xs(),pr={comment:Qs,lineComment:Xs(Qs),blockComment:Xs(Qs),docComment:Xs(Qs),name:er,variableName:Xs(er),typeName:tr,tagName:Xs(tr),propertyName:ir,attributeName:Xs(ir),className:Xs(er),labelName:Xs(er),namespace:Xs(er),macroName:Xs(er),literal:or,string:nr,docString:Xs(nr),character:Xs(nr),attributeValue:Xs(nr),number:sr,integer:Xs(sr),float:Xs(sr),bool:Xs(or),regexp:Xs(or),escape:Xs(or),color:Xs(or),url:Xs(or),keyword:lr,self:Xs(lr),null:Xs(lr),atom:Xs(lr),unit:Xs(lr),modifier:Xs(lr),operatorKeyword:Xs(lr),controlKeyword:Xs(lr),definitionKeyword:Xs(lr),moduleKeyword:Xs(lr),operator:cr,derefOperator:Xs(cr),arithmeticOperator:Xs(cr),logicOperator:Xs(cr),bitwiseOperator:Xs(cr),compareOperator:Xs(cr),updateOperator:Xs(cr),definitionOperator:Xs(cr),typeOperator:Xs(cr),controlOperator:Xs(cr),punctuation:dr,separator:Xs(dr),bracket:hr,angleBracket:Xs(hr),squareBracket:Xs(hr),paren:Xs(hr),brace:Xs(hr),content:rr,heading:ar,heading1:Xs(ar),heading2:Xs(ar),heading3:Xs(ar),heading4:Xs(ar),heading5:Xs(ar),heading6:Xs(ar),contentSeparator:Xs(rr),list:Xs(rr),quote:Xs(rr),emphasis:Xs(rr),strong:Xs(rr),link:Xs(rr),monospace:Xs(rr),strikethrough:Xs(rr),inserted:Xs(),deleted:Xs(),changed:Xs(),invalid:Xs(),meta:ur,documentMeta:Xs(ur),annotation:Xs(ur),processingInstruction:Xs(ur),definition:Us.defineModifier("definition"),constant:Us.defineModifier("constant"),function:Us.defineModifier("function"),standard:Us.defineModifier("standard"),local:Us.defineModifier("local"),special:Us.defineModifier("special")};for(let e in pr){let t=pr[e];t instanceof Us&&(t.name=e)}var mr;Js([{tag:pr.link,class:"tok-link"},{tag:pr.heading,class:"tok-heading"},{tag:pr.emphasis,class:"tok-emphasis"},{tag:pr.strong,class:"tok-strong"},{tag:pr.keyword,class:"tok-keyword"},{tag:pr.atom,class:"tok-atom"},{tag:pr.bool,class:"tok-bool"},{tag:pr.url,class:"tok-url"},{tag:pr.labelName,class:"tok-labelName"},{tag:pr.inserted,class:"tok-inserted"},{tag:pr.deleted,class:"tok-deleted"},{tag:pr.literal,class:"tok-literal"},{tag:pr.string,class:"tok-string"},{tag:pr.number,class:"tok-number"},{tag:[pr.regexp,pr.escape,pr.special(pr.string)],class:"tok-string2"},{tag:pr.variableName,class:"tok-variableName"},{tag:pr.local(pr.variableName),class:"tok-variableName tok-local"},{tag:pr.definition(pr.variableName),class:"tok-variableName tok-definition"},{tag:pr.special(pr.variableName),class:"tok-variableName2"},{tag:pr.definition(pr.propertyName),class:"tok-propertyName tok-definition"},{tag:pr.typeName,class:"tok-typeName"},{tag:pr.namespace,class:"tok-namespace"},{tag:pr.className,class:"tok-className"},{tag:pr.macroName,class:"tok-macroName"},{tag:pr.propertyName,class:"tok-propertyName"},{tag:pr.operator,class:"tok-operator"},{tag:pr.comment,class:"tok-comment"},{tag:pr.meta,class:"tok-meta"},{tag:pr.invalid,class:"tok-invalid"},{tag:pr.punctuation,class:"tok-punctuation"}]);const gr=new s,fr=new s;class br{constructor(e,t,i=[],o=""){this.data=e,this.name=o,ot.prototype.hasOwnProperty("tree")||Object.defineProperty(ot.prototype,"tree",{get(){return wr(this)}}),this.parser=t,this.extension=[Ar.of(this),ot.languageData.of((e,t,i)=>{let o=yr(e,t,i),n=o.type.prop(gr);if(!n)return[];let s=e.facet(n),r=o.type.prop(fr);if(r){let n=o.resolve(t-o.from,i);for(let t of r)if(t.test(n,e)){let i=e.facet(t.facet);return"replace"==t.type?i:i.concat(s)}}return s})].concat(i)}isActiveAt(e,t,i=-1){return yr(e,t,i).type.prop(gr)==this.data}findRegions(e){let t=e.facet(Ar);if((null==t?void 0:t.data)==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let i=[],o=(e,t)=>{if(e.prop(gr)==this.data)return void i.push({from:t,to:t+e.length});let n=e.prop(s.mounted);if(n){if(n.tree.prop(gr)==this.data){if(n.overlay)for(let e of n.overlay)i.push({from:e.from+t,to:e.to+t});else i.push({from:t,to:t+e.length});return}if(n.overlay){let e=i.length;if(o(n.tree,n.overlay[0].from+t),i.length>e)return}}for(let i=0;i=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-i,t-i)}}let Cr=null;class xr{constructor(e,t,i=[],o,n,s,r,a){this.parser=e,this.state=t,this.fragments=i,this.tree=o,this.treeLen=n,this.viewport=s,this.skipped=r,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(e,t,i){return new xr(e,t,[],u.empty,0,i,[],null)}startParse(){return this.parser.startParse(new vr(this.state.doc),this.fragments)}work(e,t){return null!=t&&t>=this.state.doc.length&&(t=void 0),this.tree!=u.empty&&this.isDone(null!=t?t:this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var i;if("number"==typeof e){let t=Date.now()+e;e=()=>Date.now()>t}for(this.parse||(this.parse=this.startParse()),null!=t&&(null==this.parse.stoppedAt||this.parse.stoppedAt>t)&&t=this.treeLen&&((null==this.parse.stoppedAt||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(D.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Cr;Cr=this;try{return e()}finally{Cr=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=kr(e,t.from,t.to);return e}changes(e,t){let{fragments:i,tree:o,treeLen:n,viewport:s,skipped:r}=this;if(this.takeTree(),!e.empty){let t=[];if(e.iterChangedRanges((e,i,o,n)=>t.push({fromA:e,toA:i,fromB:o,toB:n})),i=D.applyChanges(i,t),o=u.empty,n=0,s={from:e.mapPos(s.from,-1),to:e.mapPos(s.to,1)},this.skipped.length){r=[];for(let t of this.skipped){let i=e.mapPos(t.from,1),o=e.mapPos(t.to,-1);ie.from&&(this.fragments=kr(this.fragments,i,o),this.skipped.splice(t--,1))}return!(this.skipped.length>=t)&&(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends O{createParse(t,i,o){let n=o[0].from,s=o[o.length-1].to;return{parsedPos:n,advance(){let t=Cr;if(t){for(let e of o)t.tempSkipped.push(e);e&&(t.scheduleOn=t.scheduleOn?Promise.all([t.scheduleOn,e]):e)}return this.parsedPos=s,new u(l.none,[],[],s-n)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&0==t[0].from&&t[0].to>=e}static get(){return Cr}}function kr(e,t,i){return D.applyChanges(e,[{fromA:t,toA:i,fromB:t,toB:i}])}class Sr{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),i=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,i)||t.takeTree(),new Sr(t)}static init(e){let t=Math.min(3e3,e.doc.length),i=xr.create(e.facet(Ar).parser,e,{from:0,to:t});return i.work(20,t)||i.takeTree(),new Sr(i)}}br.state=xe.define({create:Sr.init,update(e,t){for(let e of t.effects)if(e.is(br.setState))return e.value;return t.startState.facet(Ar)!=t.state.facet(Ar)?Sr.init(t.state):e.apply(t)}});let Tr=e=>{let t=setTimeout(()=>e(),500);return()=>clearTimeout(t)};"undefined"!=typeof requestIdleCallback&&(Tr=e=>{let t=-1,i=setTimeout(()=>{t=requestIdleCallback(e,{timeout:400})},100);return()=>t<0?clearTimeout(i):cancelIdleCallback(t)});const Er="undefined"!=typeof navigator&&(null===(mr=navigator.scheduling)||void 0===mr?void 0:mr.isInputPending)?()=>navigator.scheduling.isInputPending():null,Mr=co.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(br.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(br.state);t.tree==t.context.tree&&t.context.isDone(e.doc.length)||(this.working=Tr(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEndo+1e3,a=n.context.work(()=>Er&&Er()||Date.now()>s,o+(r?0:1e5));this.chunkBudget-=Date.now()-t,(a||this.chunkBudget<=0)&&(n.context.takeTree(),this.view.dispatch({effects:br.setState.of(new Sr(n.context))})),this.chunkBudget>0&&(!a||r)&&this.scheduleWork(),this.checkAsyncSchedule(n.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(e=>so(this.view.state,e)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Ar=ge.define({combine:e=>e.length?e[0]:null,enables:e=>[br.state,Mr,qs.contentAttributes.compute([e],t=>{let i=t.facet(e);return i&&i.name?{"data-language":i.name}:{}})]});pr.meta,pr.link,pr.heading,pr.emphasis,pr.strong,pr.strikethrough,pr.keyword,pr.atom,pr.bool,pr.url,pr.contentSeparator,pr.labelName,pr.literal,pr.inserted,pr.string,pr.deleted,pr.regexp,pr.escape,pr.string,pr.variableName,pr.variableName,pr.typeName,pr.namespace,pr.className,pr.variableName,pr.macroName,pr.propertyName,pr.comment,pr.invalid;const Ir=Object.create(null),Dr=[l.none],Or=[],Br=Object.create(null),Lr=Object.create(null);for(let[e,t]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])Lr[e]=Nr(Ir,t);function Pr(e,t){Or.indexOf(e)>-1||(Or.push(e),console.warn(t))}function Nr(e,t){let i=[];for(let o of t.split(" ")){let t=[];for(let i of o.split(".")){let o=e[i]||pr[i];o?"function"==typeof o?t.length?t=t.map(o):Pr(i,`Modifier ${i} used at start of tag`):t.length?Pr(i,`Tag ${i} used as modifier`):t=Array.isArray(o)?o:[o]:Pr(i,`Unknown highlighting tag ${i}`)}for(let e of t)i.push(e)}if(!i.length)return 0;let o=t.replace(/ /g,"_"),n=o+" "+i.map(e=>e.id),s=Br[n];if(s)return s.id;let r=Br[n]=l.define({id:Dr.length,name:o,props:[Gs({[o]:i})]});return Dr.push(r),r.id}function Rr(e){let t=Date.now().toString(36);return t+=Math.random().toString(36).substr(3,e),t}function Fr(e,t,i,o){let n,s={index:-1,subindex:-1},r=o;return i?r.forEach((e,i)=>{if("SubmenuCommands"in e&&(n=e.SubmenuCommands.findIndex(e=>e.id==t.id),n>=0))return s={index:i,subindex:n},s}):(n=r.findIndex(e=>e.id==t.id),s={index:n,subindex:-1}),s}function qr(e,t){let i,o=t.getLine(t.getCursor().line),n="";const s=/^(\>*(\[[!\w]+\])?\s*)#+\s/;let r;const a=o.match(s);a&&(r=a[0].trim()),e==r||""==e?i=o.replace(s,"$1"):(i=o.replace(/^\s*(#*|\>|\-|\d+\.)\s*/m,""),i=e+" "+i),n=""!=i?t.getRange(t.getCursor(),{line:t.getCursor().line,ch:o.length}):t.getRange(t.getCursor(),{line:t.getCursor().line,ch:0}),t.setLine(t.getCursor().line,i),t.setCursor({line:t.getCursor().line,ch:Number(i.length-n.length)})}function _r(e,t){if(!t)return;const i=t.getSelection();if(!i||""===i.trim())return void this.plugin.setLastExecutedCommand("editing-toolbar:change-font-color");const o=/]+["']?>(.*?)<\/font>/gms,n=o.test(i);if(s=i,new RegExp(`^(.+)<\\/font>$`,"ms").test(s.trim()))return;var s;const r=i.replace(o,(t,i)=>i.split("\n").map(t=>t.trim()?`${t}`:t).join("\n")),a=r===i?i.split("\n").map(t=>t.trim()?`${t}`:t).join("\n"):r,l=t.listSelections().map(t=>{const i=n?0:``.length;return t.anchor.line([\s\S]*?)<\/mark>/g.test(i);if(((e,t)=>{const i=t.replace(/([()[{*+.$^\\|?])/g,"\\$1");return new RegExp(`^([sS]+)<\\/mark>$`).test(e.trim())})(i,e))return;let n;n=o?i.replace(/(background:)(?:#[0-9a-fA-F]{3,6}|rgba?\([^)]+\))/gi,`$1${e}`):i.split("\n").map(t=>t.trim()?`${t}`:t).join("\n");const s=t.listSelections().map(t=>{const i=o?0:``.length;return t.anchor.line=0?e.getLine(o).trim():"";if(o<0||!/^\s*\d+\.\s/.test(n)||(n.match(/^\s*/)?.[0].length||0)0;){const t=e.getLine(i-1);if(!/^\s*\d+\.\s/.test(t.trim()))break;i--}for(;o{"OrderedList"===e.name&&(l=e.to)}}),l>=0){const e=o.offsetToPos(l).line+1;e=0?o.getLine(p).trim():"";if(m&&!/^\s*$/.test(m)&&!m.includes("ㅤ")&&(u.push(""),u.push("ㅤ")),c)u.push(...t);else{let e={},i=-1;for(const o of t){const t=o.trim(),n=/^\d+\.\s/.test(t),s=o.match(/^\s*/)?.[0]||"";if(n){const o=s.length;e[o]=o!==i?1:(e[o]||1)+1,u.push(`${s}${e[o]}. ${t.replace(/^\d+\.\s/,"")}`),i=o}else u.push(o),i=-1}}o.replaceRange(u.join("\n"),{line:i,ch:0},{line:i+t.length-1,ch:o.getLine(i+t.length-1).length})}function Hr(e,t,i){const o=[];for(let n=t;n<=i;n++)o.push(e.getLine(n));Wr(o,t,e)}let $r;Ti.RTL,Ti.LTR;const Ur=t=>{$r=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;["top","following","fixed"].forEach(e=>{$r.querySelectorAll(`.editingToolbarModalBar[data-toolbar-style="${e}"]`).forEach(e=>{t?(e.style.display="",e.style.visibility="visible"):e.style.display="none"})});const i=$r.getElementById("editingToolbarModalBar");i&&(t?(i.style.display="",i.style.visibility="visible"):i.style.display="none")},jr=t=>{$r=e.requireApiVersion("0.15.0")?activeWindow.document:window.document,$r.documentElement.style.setProperty("--toolbar-vertical-offset",`${t.verticalPosition}px`)},Yr=t=>{$r=e.requireApiVersion("0.15.0")?activeWindow.document:window.document,$r.documentElement.style.setProperty("--toolbar-horizontal-offset",`${t.horizontalPosition}px`)};var Gr={"Editing Toolbar Append Method":"Editing Toolbar Append Method","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar aesthetic":"Editing Toolbar aesthetic","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar position":"Editing Toolbar position","Choose between fixed position or cursor following mode.":"Choose between fixed position, cursor following or Top mode.","Editing Toolbar Columns":"Editing Toolbar Columns","Choose the number of columns per row to display on Editing Toolbar.":"Choose the number of columns per row to display on Editing Toolbar.","Editing Toolbar refresh":"Editing Toolbar refresh","Editing Toolbar Commands":"Editing Toolbar Commands","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.","Format Brush Off!":"Format Brush Off!","Hide & Show":"Hide & Show","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.","Font-Color formatting brush ON!":"Font-Color formatting brush ON!",More:"More","Font Colors":"Font Colors","Format Brush":"Format Brush","Background Color":"Background color",Refresh:"Refresh",Add:"Add",Delete:"Delete","Change Command Name":"Change Command Name","Change Submenu Name":"Change Submenu Name","Button Submenu":"Button Submenu","Dropdown Menu":"Dropdown Menu","Menu type changed to":"Menu type changed to","Add Submenu":"Add Submenu","Add Separator":"Add Separator","Enter the icon code, it looks like .... format":"Enter the icon code, it looks like .... format","Please enter a new name: ":"Please enter a new name: ","Drag the slider to move the position":"Drag the slider to move the position","Plugin Settings":"Plugin Settings","Background-color formatting brush ON!":"Background-color formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","Clear formatting brush ON!":"Clear formatting brush ON!","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden","Editing Toolbar Auto-hide":"Editing Toolbar Auto-hide","Editing Toolbar Centred Display":"Editing Toolbar Centred Display","Whether the toolbar is centred or full-width, the default is full-width.":"Whether the toolbar is centred or full-width, the default is full-width.","Custom Backgroud Color":"Custom Backgroud Color","Custom Font Color":"Custom Font Color","🎨 Set Custom Background":"🎨 Set Custom Background","🖌️ Set Custom Font Color":"🖌️ Set Custom Font Color","Click on the picker to adjust the color":"Click on the picker to adjust the color","Mobile Enabled or Not":"Mobile Enabled or Not","Whether to enable the plugin for the mobile client, the default is enabled.":"Whether to enable the plugin for the mobile client, the default is enabled.","Whether to enable on mobile devices with device width less than 768px.":"Whether to enable on mobile devices with device width less than 768px, the default is disable.",Reset:"Reset",Fix:"Fix","Fix Editing Toolbar":"Fix Editing Toolbar",General:"General",Appearance:"Appearance",Commands:"Commands","Choose between fixed position or cursor following mode":"Choose between fixed position, cursor following or Top mode.","Add and manage commands":"Add and manage commands","Choose where Editing Toolbar will append upon regeneration.":"Choose where Editing Toolbar will append upon regeneration.","Whether to enable on mobile devices with device width less than 768px":"Whether to enable on mobile devices with device width less than 768px","Choose between a glass morphism, tiny and default style.":"Choose between a glass morphism, tiny and default style.","Refresh Toolbar":"Refresh Toolbar","Add Command":"Add Command",Settings:"Settings","Position Style":"Position Style",Columns:"Columns","Drag to Adjust Position":"Drag to Adjust Position","Vertical Position":"Vertical Position","Horizontal Position":"Horizontal Position","Toolbar Position":"Toolbar Position","Choose an icon":"Choose an icon","Search for an icon...":"Search for an icon...",All:"All",Obsidian:"Obsidian",Glyph:"Glyph",Custom:"Custom","Choose a command":"Choose a command","The command":"The command","already exists":"already exists","Enter the icon code, format as .... ":"Enter the icon code, format as .... ","No matching icons found":"No matching icons found","Custom Commands":"Custom Commands","Toolbar Commands":"Toolbar Commands",ID:"ID",Prefix:"Prefix",Suffix:"Suffix",Pattern:"Pattern","Custom Format Commands":"Custom Format Commands","Add, edit or delete custom format commands.":"Add, edit or delete custom format commands.",Edit:"Edit","Command ID":"Command ID",'Unique identifier, no spaces, e.g.: "my-custom-format"':'Unique identifier, no spaces, e.g.: "my-custom-format"',"Displayed name in toolbar and menu":"Displayed name in toolbar and menu","Add content before selected text":"Add content before selected text","Add content after selected text":"Add content after selected text","Character offset of cursor after formatting":"Character offset of cursor after formatting","Line offset of cursor after formatting":"Line offset of cursor after formatting","Whether to insert at the beginning of the next line":"Whether to insert at the beginning of the next line","Command icon (click to select)":"Command icon (click to select)","Choose Icon":"Choose Icon",Save:"Save",Cancel:"Cancel","Edit Custom Command":"Edit Custom Command","Add Custom Command":"Add Custom Command","Command ID and command name cannot be empty":"Command ID and command name cannot be empty","Command ID cannot contain spaces":"Command ID cannot contain spaces",'Command ID "${this.commandId}" already exists':'Command ID "${this.commandId}" already exists',"Cursor Position Offset":"Cursor Position Offset","Line Offset":"Line Offset","Line Head Format":"Line Head Format",Icon:"Icon","Command Name":"Command Name","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"Are you sure you want to restore all settings to default? This will lose all your custom configurations.","Restore default":"Restore default","Restore default settings":"Restore default settings","🔄Restore default settings":"🔄Restore default settings","🔧Data repair":"🔧Data repair","Command IDs have been successfully repaired!":"Command IDs have been successfully repaired!","No command IDs need to be repaired":"No command IDs need to be repaired","Error repairing command IDs, please check the console for details":"Error repairing command IDs, please check the console for details","Error restoring default settings, please check the console for details":"Error restoring default settings, please check the console for details","Successfully restored default settings!":"Successfully restored default settings!",Close:"Close",Tips:"Tips","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly","Repair command ID":"Repair command ID","This will reset all your custom configurations":"This will reset all your custom configurations","Notice:":"Notice:","This update rebuilds the entire code, reducing resource consumption":"This update rebuilds the entire code, reducing resource consumption","Optimized mobile usage, added canvas support, and added custom commands":"Optimized mobile usage, added canvas support, and added custom commands","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️If you want to restore the default settings, please click [Restore default settings]","Please execute a editingToolbar format command first, then enable the format brush":"Please execute a editingToolbar format command first, then enable the format brush","Format brush ON! Select text to apply【":"Format brush ON! Select text to apply【","】format":"】format\nClick the mouse right key to close the formatting-brush","Add to Toolbar":"Add to Toolbar","This command is already in the toolbar.":"This command is already in the toolbar.","Command added to toolbar":"Command added to toolbar","Add this command to the toolbar.":"Add this command to the toolbar.","Callout Type":"Callout Type",Title:"Title","Optional, leave blank for default title":"Optional, leave blank for default title","Input title":"Input title","Collapse State":"Collapse State",Open:"Open",Closed:"Closed",Content:"Content",Insert:"Insert",Default:"Default","Input content":"Input content","Link Text":"Link Text","Link Alias":"Link Alias","Link URL":"Link URL","Embed Content":"Embed Content","Image Size":"Image Size","Insert New Line":"Insert New Line","Paste and Parse":"Paste and Parse","URL Format Error":"URL Format Error","Image Width":"Image Width","Image Height":"Image Height","If it is an image, turn on":"If it is an image, turn on","Insert a link on the next line":"Insert a link on the next line","Link Title(optional)":"Link Title(optional)",Alias:"Alias",Optional:"Optional","Default 0, format will keep the text selected":"Default 0, format will keep the text selected","to insert":"to insert","Latest Changes":"Latest Changes","📋View full changelog":"📋View full changelog","Open changelog":"Open changelog","Loading changelog...":"Loading changelog...","Open the complete changelog in your browser":"Open the complete changelog in your browser","Enable Multiple Configurations":"Enable Multiple Configurations","Enable different command configurations for each position style (following, top, fixed).":"Enable different command configurations for each position style (following, top, fixed).","Currently editing commands for":"Currently editing commands for","position style":"position style","Current Configuration":"Current Configuration","Switch between different command configurations.":"Switch between different command configurations.","Following Style":"Following Style","Top Style":"Top Style","Fixed Style":"Fixed Style","Mobile Style":"Mobile Style",configuration:"configuration","Deploy command to configurations":"Deploy command to configurations","All Configurations":"All Configurations",Deploy:"Deploy","Command deployed to selected configurations":"Command deployed to selected configurations","No configuration selected for deployment":"No configuration selected for deployment","Command already exists in selected configurations":"Command already exists in selected configurations","Command deployed to: ":"Command deployed to: ","Command Deleted":"Command Deleted","Confirm Delete?":"Confirm Delete?",Confirm:"Confirm","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"Are you sure you want to restore all settings to default? But custom commands will be preserved.","Successfully restored default settings! (Custom commands preserved)":"Successfully restored default settings! (Custom commands preserved)","This will reset all your custom configurations, but custom commands will be preserved":"This will reset all your custom configurations, but custom commands will be preserved","Import/Export":"Import/Export","Export Configuration":"Export Configuration","Export your toolbar configuration to share with others.":"Export your toolbar configuration to share with others.",Export:"Export","Import Configuration":"Import Configuration","Import toolbar configuration from JSON.":"Import toolbar configuration from JSON.",Import:"Import","Usage Instructions":"Usage Instructions","Export: Generate a JSON configuration that you can save or share.":"Export: Generate a JSON configuration that you can save or share.","Import: Paste a previously exported JSON configuration.":"Import: Paste a previously exported JSON configuration.","You can choose to export all settings, only toolbar commands, or only custom commands":"You can choose to export all settings, only toolbar commands, or only custom commands","When importing, the plugin will only update the settings included in the import data":"When importing, the plugin will only update the settings included in the import data","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.","Export Type":"Export Type","Choose what to export":"Choose what to export","All Settings":"All Settings","Toolbar Commands Only":"Toolbar Commands Only","Custom Commands Only":"Custom Commands Only","Export Content":"Export Content","Copy this content to share with others":"Copy this content to share with others","Loading...":"Loading...","Copy to Clipboard":"Copy to Clipboard","Configuration copied to clipboard":"Configuration copied to clipboard","Failed to copy configuration":"Failed to copy configuration","Paste the configuration JSON here":"Paste the configuration JSON here","Paste configuration here...":"Paste configuration here...","Invalid import data":"Invalid import data","Configuration imported successfully":"Configuration imported successfully","No valid configuration found in import data":"No valid configuration found in import data","Failed to import configuration. Invalid format.":"Failed to import configuration. Invalid format.","Import Mode":"Import Mode","Choose how to import the configuration":"Choose how to import the configuration","Update Mode (Add new items and update existing ones)":"Update Mode (Add new items and update existing ones)","Overwrite Mode (Replace all settings with imported ones)":"Overwrite Mode (Replace all settings with imported ones)","Configuration imported successfully (Overwrite mode)":"Configuration imported successfully (Overwrite mode)","Configuration imported successfully (Update mode)":"Configuration imported successfully (Update mode)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"Warning: Update mode will add new items and update existing ones based on the imported configuration.","Add Format Command":"Add Format Command",Regex:"Regex","Prefix/Suffix":"Prefix/Suffix","Insert Special Char":"Insert Special Char","Add Regex Command":"Add Regex Command","Switch Regex Command Window":"Switch Regex Command Window","Please select text first":"Please select text first","Current line is empty, please select text or move to a non-empty line":"Current line is empty, please select text or move to a non-empty line","Use current line for regex commands":"Use current line for regex commands","When no text is selected, regex commands will use the current line instead of clipboard content":"When no text is selected, regex commands will use the current line instead of clipboard content","The selected text does not meet the condition requirements":"The selected text does not meet the condition requirements","Regex command execution error: ":"Regex command execution error: ","Copy code":"Copy code","Copied!":"Copied!","Explain the syntax of JavaScript regular expressions":"Explain the syntax of JavaScript regular expressions","Apply regular expression replacement":"Apply regular expression replacement","Conditional matching":"Conditional matching","Complete regular expression code (copy to AI for explanation)":"Complete regular expression code (copy to AI for explanation)","Error: ":"Error: ","Regex pattern cannot be empty":"Regex pattern cannot be empty","Command already exists":"Command already exists","Choose icon":"Choose icon","URL to Markdown link":"URL to Markdown link","Convert MM/DD/YYYY to YYYY-MM-DD":"Convert MM/DD/YYYY to YYYY-MM-DD","Add bold to keywords":"Add bold to keywords","Format phone number":"Format phone number","Remove extra spaces":"Remove extra spaces","Convert HTML bold tags to Markdown format":"Convert HTML bold tags to Markdown format","Convert quoted text to quote block":"Convert quoted text to quote block","Convert CSV to Markdown table row":"Convert CSV to Markdown table row","Add uniform alias to Markdown links":"Add uniform alias to Markdown links","Delete empty lines (multiline mode)":"Delete empty lines (multiline mode)","Add list symbol to each line (multiline mode)":"Add list symbol to each line (multiline mode)","If the text contains important, set the text highlight (conditional format)":"If the text contains important, set the text highlight (conditional format)","Matching pattern":"Matching pattern","Regex pattern to match":"Regex pattern to match","Replacement pattern (use $1, $2, etc. to reference capture groups)":"Replacement pattern (use $1, $2, etc. to reference capture groups)","Ignore case":"Ignore case","Global replace":"Global replace","Multiline mode":"Multiline mode","Use condition":"Use condition","Condition pattern":"Condition pattern","Only apply custom command when text matches the condition":"Only apply custom command when text matches the condition","Must exist regular expression or text":"Must exist regular expression or text","Replacement pattern":"Replacement pattern","Match case-insensitive":"Match case-insensitive","^ and $ match the start and end of each line":"^ and $ match the start and end of each line","Replace all matches":"Replace all matches",Command:"Command","Input example text to view the formatting effect of the command...":"Input example text to view the formatting effect of the command...",Description:"Description","[Example]":"[Example]","[Requirements]":"[Requirements]","[Output]":"[Output]","AI question template:":"AI question template:","I need to convert the url to a markdown format link":"I need to convert the url to a markdown format link","For example, convert https://example.com to [https://example.com](https://example.com)":"For example, convert https://example.com to [https://example.com](https://example.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)","[Description]":"[Description]","How to use AI to get regular expressions?":"How to use AI to get regular expressions?","Regular expression examples":"Regular expression examples","Edit regular expression command":"Edit regular expression command","Add regular expression command":"Add regular expression command","Result: ":"Result: ","Example text:":"Example text:",Preview:"Preview",Result:"Result","Please select text or copy text to clipboard first":"Please select text or copy text to clipboard first","Overwrite Import":"Overwrite Import","Update Import":"Update Import","Importing configuration...":"Importing configuration...","Following Style Only":"Following Style Only","Top Style Only":"Top Style Only","Fixed Style Only":"Fixed Style Only","Mobile Style Only":"Mobile Style Only","Unknown import type":"Unknown import type","All Toolbar Commands":"All Toolbar Commands","Initialize Commands":"Initialize Commands","Copy commands from the main menu configuration":"Copy commands from the main menu configuration","Initialize commands to default settings":"Initialize commands to default settings","Reset Commands":"Reset Commands","Commands reset successfully":"Commands reset successfully","Following style commands initialized from current menu commands":"Following style commands initialized from current menu commands","Commands initialized successfully":"Commands initialized successfully","Reset to Menu Commands":"Reset to Menu Commands","Are you sure you want to reset the current configuration?":"Are you sure you want to reset the current configuration?","Following style commands successfully initialized":"Following style commands successfully initialized","Top style commands successfully initialized":"Top style commands successfully initialized","Fixed style commands successfully initialized":"Fixed style commands successfully initialized","Mobile style commands successfully initialized":"Mobile style commands successfully initialized","Reset commands to default settings":"Reset commands to default settings",Clear:"Clear","Remove all commands from this configuration.":"Remove all commands from this configuration.","Are you sure you want to clear all commands under the current style?":"Are you sure you want to clear all commands under the current style?","Current style commands have been cleared":"Current style commands have been cleared","Manage Commands":"Manage Commands","Reset or clear all commands in this configuration":"Reset or clear all commands in this configuration","One-click Clear":"One-click Clear","Import Commands from Other Styles":"Import Commands from Other Styles","Copy commands from another style configuration.":"Copy commands from another style configuration.","Main menu only":"Main menu only","This import will update:":"This import will update:","Custom commands":"Custom commands","Toolbar commands":"Toolbar commands","General settings":"General settings","Please paste configuration data first":"Please paste configuration data first","Invalid import data format":"Invalid import data format","Import From":"Import From","This import will:":"This import will:","Update general settings":"Update general settings","Update Main Menu Commands":"Update Main Menu Commands","Update Custom Commands":"Update Custom Commands","Update Following Style Commands":"Update Following Style Commands","Update Top Style Commands":"Update Top Style Commands","Update Fixed Style Commands":"Update Fixed Style Commands","Update Mobile Style Commands":"Update Mobile Style Commands","Clear all Main Menu Commands":"Clear all Main Menu Commands","Clear all Custom Commands":"Clear all Custom Commands","Clear all Following Style Commands":"Clear all Following Style Commands","Clear all Top Style Commands":"Clear all Top Style Commands","Clear all Fixed Style Commands":"Clear all Fixed Style Commands","Clear all Mobile Style Commands":"Clear all Mobile Style Commands","Overwrite Mode (Replace settings with imported ones)":"Overwrite Mode (Replace settings with imported ones)","Warning: Overwrite mode will replace existing settings with imported ones.":"Warning: Overwrite mode will replace existing settings with imported ones.","Warning: Update mode will add new items and update existing ones.":"Warning: Update mode will add new items and update existing ones.","Enable Multiple Config":"Enable Multiple Config","Set Multiple Config to:":"Set Multiple Config to:",Enable:"Enable",Disable:"Disable","Set Position Style to:":"Set Position Style to:",Following:"Following",Top:"Top",Fixed:"Fixed",Mobile:"Mobile","All commands":"All commands","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ Overwrite mode will replace existing settings with imported ones.","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ Update mode will merge imported settings with existing ones.","Do you want to continue?":"Do you want to continue?","Imported settings:":"Imported settings:","Imported commands:":"Imported commands:","Disable toolbar for this view":"Disable toolbar for this view","Enable toolbar for this view":"Enable toolbar for this view","Manage all view types":"Manage all view types","Current View: ":"Current View: ","Appearance Style":"Appearance Style","Position Settings":"Position Settings","All commands have been removed.":"All commands have been removed.","Join the Community":"Join the Community","Share your toolbar settings and styles in our":"Share your toolbar settings and styles in our","Get inspired by what others have created or showcase your own customizations.":"Get inspired by what others have created or showcase your own customizations.","Toolbar Preview (With a hypothetical command configuration.)":"Toolbar Preview (With a hypothetical command configuration.)","Toolbar Theme":"Toolbar Theme","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.","Toolbar Background Color":"Toolbar Background Color","Set the background color of the toolbar.":"Set the background color of the toolbar.","Toolbar Icon Color":"Toolbar Icon Color","Set the color of the toolbar icon.":"Set the color of the toolbar icon.","Toolbar Icon Size":"Toolbar Icon Size","Set the size of the toolbar icon (px); default: 18px":"Set the size of the toolbar icon (px); default: 18px","Custom Theme":"Custom Theme","Fixed Position Offset":"Fixed Position Offset","Choose the offset of the Editing Toolbar in the fixed position.":"Choose the offset of the Editing Toolbar in the fixed position.","Renumber List":"Renumber List","Fetch Remote Title":"Fetch Remote Title","Please enter a URL first":"Please enter a URL first","Failed to fetch title for":"Failed to fetch title for","Link Title (optional)":"Link Title (optional)","Unable to detect editor width":"Unable to detect editor width","Fit Editor Width":"Fit Editor Width","Please execute a format command or select format text first, then enable the format brush":"Please execute a format command or select format text first, then enable the format brush","Use \\n to represent line breaks":"Use \\n to represent line breaks","Use ↵ to represent line breaks":"Use ↵ to represent line breaks","Top Toolbar":"Top Toolbar","Enable the toolbar positioned at the top.":"Enable the toolbar positioned at the top.","Following Toolbar":"Following Toolbar","Enable the toolbar that appears upon text selection.":"Enable the toolbar that appears upon text selection.","Fixed Toolbar":"Fixed Toolbar","Enable the toolbar whose position may be fixed where you please.":"Enable the toolbar whose position may be fixed where you please.","Toolbar Settings":"Toolbar Settings","Choose which toolbar style's appearance you want to edit.":"Choose which toolbar style's appearance you want to edit.","Vertical Split":"Vertical Split","Text Enhancement Tools":"Text Enhancement Tools","Get Plain Text":"Get Plain Text","Full Half Converter":"Full Half Converter","Insert Blank Lines":"Insert Blank Lines","Remove Blank Lines":"Remove Blank Lines","Split Lines":"Split Lines","Dedupe Lines":"Dedupe Lines","Add Prefix/Suffix":"Add Prefix/Suffix","Number Lines (Custom)":"Number Lines (Custom)","Trim Line Ends":"Trim Line Ends","Shrink Extra Spaces":"Shrink Extra Spaces","Remove All Whitespace":"Remove All Whitespace","Extract Between Strings":"Extract Between Strings","Merge Lines":"Merge Lines","List to Table":"List to Table","Table to List":"Table to List","Line Operations":"Line Operations","Text Processing":"Text Processing","Advanced Tools":"Advanced Tools","Enter prefix":"Enter prefix","Enter suffix":"Enter suffix",Delimiter:"Delimiter","Enter delimiter (e.g., comma, tab)":"Enter delimiter (e.g., comma, tab)","Column Number":"Column Number","Enter column number (starting from 1)":"Enter column number (starting from 1)","Start String":"Start String","Enter start string":"Enter start string","End String":"End String","Enter end string":"Enter end string","Number Lines Configuration":"Number Lines Configuration","Start Number":"Start Number",Step:"Step",Separator:"Separator","Merge Lines Settings":"Merge Lines Settings","Separator (leave empty for smart spacing)":"Separator (leave empty for smart spacing)","e.g., comma, pipe, arrow":"e.g., comma, pipe, arrow","Plain text copied to clipboard":"Plain text copied to clipboard","Whitespace cleaning completed":"Whitespace cleaning completed","List pattern detected, auto-split":"List pattern detected, auto-split","No obvious separator or list pattern detected":"No obvious separator or list pattern detected","Paste failed":"Paste failed","Detected Chinese context: converted to full-width symbols":"Detected Chinese context: converted to full-width symbols","Detected code/English context: converted to half-width symbols":"Detected code/English context: converted to half-width symbols","Please select text to dedupe first":"Please select text to dedupe first","Deduplication completed, remaining":"Deduplication completed, remaining",lines:"lines","Prefix/suffix added":"Prefix/suffix added","Please select text to number first":"Please select text to number first","Numbering completed: starting from":"Numbering completed: starting from","Please specify start or end string":"Please specify start or end string",Extracted:"Extracted",matches:"matches","No matches found":"No matches found","Extraction failed":"Extraction failed","Please select lines to merge first":"Please select lines to merge first","Merged with":"Merged with","Merge completed":"Merge completed",Item:"Item","Super conversion completed: context preserved and layout optimized":"Super conversion completed: context preserved and layout optimized","Please select a valid Markdown table":"Please select a valid Markdown table","Table converted to multi-level list":"Table converted to multi-level list"},Zr={"Editing Toolbar Append Method":"工具栏的附加方法。","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"工具栏在Obsidian中的追加的位置,只对固定和跟随模式有效。如果你遇到工具栏显示问题,可以选择body试试。请点击下面或者状态栏菜单中的刷新按钮生效。","Editing Toolbar aesthetic":"工具栏样式","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"样式有毛玻璃,简约和默认风格选择。请点击下面或者状态栏菜单中的刷新按钮生效。","Editing Toolbar position":"工具栏位置","Choose between fixed position or cursor following mode.":"在固定位置,光标跟随模式或者置顶模式之间进行选择。","Editing Toolbar Columns":"工具栏栏目数","Choose the number of columns per row to display on Editing Toolbar.":"选择在Editing Toolbar上显示的每行的列数。","Editing Toolbar refresh":"刷新工具栏","Editing Toolbar Commands":"在工具栏中添加命令","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"从Obsidian的命令库中添加一个命令到工具栏。要重新排列命令,可以拖放命令项。要删除它们,请使用命令项右边的删除按钮。图标选择Custom可以自定义图标","Format Brush Off!":"关闭格式刷!","Hide & Show":"隐藏 & 显示","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"对外观的更改生效需要使用刷新按钮。如果你忘记在设置中刷新,在状态栏菜单中也有一个刷新按钮。","Font-Color formatting brush ON!":"字体颜色格式刷开启\n点击鼠标中键或者右键关闭格式刷",More:"更多","Font Colors":"字体颜色","Format Brush":"格式刷","Background Color":"背景颜色",Refresh:"刷新",Add:"添加",Delete:"删除","Change Command Name":"更改命令名称","Change Submenu Name":"更改子菜单名称","Button Submenu":"按钮子菜单","Dropdown Menu":"下拉菜单","Menu type changed to":"菜单类型已更改为","Add Submenu":"添加子菜单","Add Separator":"添加分割线","Enter the icon code, it looks like .... format":"输入图标代码,类似.... 格式","Please enter a new name: ":"请输入新名称:","Drag the slider to move the position":"拖动滑块来移动位置","Plugin Settings":"插件设置","Background-color formatting brush ON!":"开启背景色格式刷","Clear formatting brush ON!":"清除格式刷已开启","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"清除格式刷已开启\n点击鼠标中键或者右键关闭格式刷","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"当鼠标移到工具栏上方时,工具栏显示,否则自动隐藏","Editing Toolbar Auto-hide":"工具栏是否自动隐藏","Editing Toolbar Centred Display":"工具栏是否居中显示","Whether the toolbar is centred or full-width, the default is full-width.":"工具栏居中还是全宽显示,默认全宽显示","Custom Backgroud Color":"设置自定义背景色","Custom Font Color":"设置自定义字体颜色","🎨 Set Custom Background":"🎨 设置自定义背景","🖌️ Set Custom Font Color":"🖌️ 设置自定义字体颜色","Click on the picker to adjust the color":"点击选取器来调整颜色","Mobile Enabled or Not":"是否在移动端启用","Whether to enable on mobile devices with device width less than 768px.":"是否在设备宽度小于768的移动设备启用。默认不启用",Reset:"重置",Fix:"修复","Fix Editing Toolbar":"修复工具栏",General:"常规",Appearance:"外观",Commands:"命令","Choose between fixed position or cursor following mode":"选择固定位置或者光标跟随模式","Add and manage commands":"添加和管理命令","Choose where Editing Toolbar will append upon regeneration.":"选择工具栏在Obsidian中的追加的位置。","Whether to enable on mobile devices with device width less than 768px":"是否在移动设备中启用。默认不启用","Choose between a glass morphism, tiny and default style":"选择毛玻璃,简约和默认风格","Refresh Toolbar":"刷新工具栏","Add Command":"添加命令",Settings:"设置","Adjust Toolbar Position[Fixed mode]":"调整工具栏位置[固定模式]","Position Style":"位置样式",Columns:"列数","Drag to Adjust Position":"拖动调整位置","Vertical Position":"垂直位置","Horizontal Position":"水平位置","Toolbar Position":"工具栏位置","Choose an icon":"选择一个图标","Search for an icon...":"搜索图标...",All:"全部",Obsidian:"Obsidian",Glyph:"Glyph",Custom:"自定义","Choose a command":"选择一个命令","The command":"命令","already exists":"已存在","Enter the icon code, format as .... ":"输入图标代码,格式为 .... ","No matching icons found":"没有找到匹配的图标","Custom Commands":"自定义命令","Toolbar Commands":"工具栏命令",ID:"ID",Prefix:"前缀",Suffix:"后缀","Custom Format Commands":"自定义格式命令","Add, edit or delete custom format commands.":"添加、编辑或删除自定义格式命令",Edit:"编辑","Command ID":"命令ID",'Unique identifier, no spaces, e.g.: "my-custom-format"':'唯一标识符,不包含空格,例如:"my-custom-format"',"Displayed name in toolbar and menu":"在工具栏和菜单中显示的名称","Add content before selected text":"在选中的文本前添加内容","Add content after selected text":"在选中的文本后添加内容","Character offset of cursor after formatting":"格式化后光标的字符偏移量","Line offset of cursor after formatting":"格式化后光标的行偏移量","Whether to insert at the beginning of the next line":"是否在下一行首插入","Command icon (click to select)":"命令图标(点击选择)","Choose Icon":"选择图标",Save:"保存",Cancel:"取消","Edit Custom Command":"编辑自定义命令","Add Custom Command":"添加自定义命令","Command ID and command name cannot be empty":"命令ID和命令名称不能为空","Command ID cannot contain spaces":"命令ID不能包含空格",'Command ID "${this.commandId}" already exists':'命令ID "${this.commandId}" 已存在',"Command Name":"命令名称","Cursor Position Offset":"光标位置偏移量","Line Offset":"行偏移量","Line Head Format":"行首格式",Icon:"图标","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"确定要恢复所有设置为默认值吗?这将丢失您的所有自定义配置。","Restore default":"恢复默认值","Restore default settings":"恢复默认设置","🔄Restore default settings":"🔄恢复默认设置","🔧Data repair":"🔧数据修复","Command IDs have been successfully repaired!":"命令ID已成功修复!","No command IDs need to be repaired":"没有命令ID需要修复","Error repairing command IDs, please check the console for details":"修复命令ID时出错,请查看控制台了解详情","Error restoring default settings, please check the console for details":"恢复默认设置时出错,请查看控制台了解详情","Successfully restored default settings!":"已成功恢复默认设置!",Close:"关闭",Tips:"提示","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"此次更新更改了部分命令的ID,请点击此按钮修复命令以确保工具栏正常工作","Repair command ID":"修复命令ID","This will reset all your custom configurations":"这将重置您的所有自定义配置","Notice:":"注意","This update rebuilds the entire code, reducing resource consumption":"此次更新重构了全部代码,降低了资源占用","Optimized mobile usage, added canvas support, and added custom commands":"优化了移动端,增加了对canvas支持,增加了自定义命令","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️此次更新不兼容2.x旧版本命令id,请点击【修复命令】进行兼容","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️如果想恢复默认设置,请点击【恢复默认设置】","Please execute a editingToolbar format command first, then enable the format brush":"请先执行一个格式命令,然后再启用格式刷","Format brush ON! Select text to apply【":"格式刷已开启\n选中文本应用【","】format":"】格式\n点击鼠标右键关闭格式刷","Add to Toolbar":"添加到工具栏","This command is already in the toolbar.":"该命令已存在于工具栏中","Command added to toolbar":"命令已添加到工具栏","Add this command to the toolbar.":"添加该命令到工具栏","Callout Type":"Callout 类型",Title:"标题","Optional, leave blank for default title":"可选,留空则使用默认标题","Input title":"输入标题","Collapse State":"折叠状态",Open:"展开",Closed:"折叠",Content:"内容",Insert:"插入",Default:"默认","Input content":"输入内容","Link Text":"链接文本","Link Alias":"链接别名","Link URL":"链接地址","Embed Content":"嵌入内容","Image Size":"图片尺寸","Insert New Line":"插入新行","Paste and Parse":"粘贴并解析","URL Format Error":"URL格式错误","Image Width":"图片宽度","Image Height":"图片高度","Insert a link on the next line":"在下一行插入链接","If it is an image, turn on":"如果是图片,请开启","Link Title(optional)":"链接标题(可选)",Alias:"别名",Optional:"可选","Default 0, format will keep the text selected":"默认0,格式化将保持文本选中","to insert":"插入","Latest Changes":"最新更新","📋View full changelog":"📋查看完整更新日志","Open changelog":"打开更新日志","Loading changelog...":"加载更新日志...","Open the complete changelog in your browser":"在浏览器中打开完整更新日志","Enable Multiple Configurations":"启用多配置","Enable different command configurations for each position style (following, top, fixed).":"启用每个位置样式的不同命令配置(following,top,fixed)","Currently editing commands for":"当前编辑的命令配置为:","position style":"样式","Current Configuration":"当前配置","Switch between different command configurations.":"切换不同的命令配置","Following Style":"跟随样式","Top Style":"顶部样式","Fixed Style":"固定样式","Mobile Style":"移动端样式",configuration:"配置","Deploy command to configurations":"部署命令到配置","All Configurations":"所有配置",Deploy:"部署","Command deployed to selected configurations":"命令已部署到选中的配置","No configuration selected for deployment":"没有选中的配置","Command already exists in selected configurations":"命令已存在于选中的配置","Command deployed to: ":"命令已部署到:","Command Deleted":"命令已删除","Confirm Delete?":"确认删除?","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"您确定要将所有设置恢复为默认值吗?但自定义命令将被保留。","Successfully restored default settings! (Custom commands preserved)":"成功恢复默认设置!(自定义命令已保留)","This will reset all your custom configurations, but custom commands will be preserved":"这将重置您的所有自定义配置,但自定义命令将被保留","Import/Export":"导入/导出","Export Configuration":"导出配置","Export your toolbar configuration to share with others.":"导出您的工具栏配置以与他人共享",Export:"导出","Import Configuration":"导入配置","Import toolbar configuration from JSON.":"从JSON导入工具栏配置",Import:"导入","Usage Instructions":"使用说明","Export: Generate a JSON configuration that you can save or share.":"导出:生成可保存或共享的JSON配置","Import: Paste a previously exported JSON configuration.":"导入:粘贴先前导出的JSON配置","You can choose to export all settings, only toolbar commands, or only custom commands":"您可以选择导出所有设置、仅工具栏命令或仅自定义命令","When importing, the plugin will only update the settings included in the import data":"导入时,插件将仅更新导入数据中包含的设置","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"警告:导入配置将覆盖您当前的设置。建议先导出当前配置作为备份。","Export Type":"导出类型","Choose what to export":"选择要导出的内容","All Settings":"所有设置","Toolbar Commands Only":"仅工具栏命令","Custom Commands Only":"仅自定义命令","Export Content":"导出内容","Copy this content to share with others":"复制此内容以与他人共享","Loading...":"加载中...","Copy to Clipboard":"复制到剪贴板","Configuration copied to clipboard":"配置已复制到剪贴板","Failed to copy configuration":"复制配置失败","Paste the configuration JSON here":"在此处粘贴配置JSON","Paste configuration here...":"在此处粘贴配置...","Invalid import data":"无效的导入数据","Configuration imported successfully":"配置导入成功","No valid configuration found in import data":"导入数据中未找到有效配置","Failed to import configuration. Invalid format.":"导入配置失败。格式无效。","Import Mode":"导入模式","Choose how to import the configuration":"选择如何导入配置","Update Mode (Add new items and update existing ones)":"更新模式(添加新项目并更新现有项目)","Overwrite Mode (Replace all settings with imported ones)":"覆盖模式(用导入的配置替换所有设置)","Configuration imported successfully (Overwrite mode)":"配置导入成功(覆盖模式)","Configuration imported successfully (Update mode)":"配置导入成功(更新模式)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"警告:覆盖模式将完全替换您当前的设置与导入的设置。建议先导出当前配置作为备份。","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"警告:更新模式将根据导入的配置添加新项目并更新现有项目。","Add Format Command":"添加格式命令",Regex:"正则","Prefix/Suffix":"前缀/后缀","Insert Special Char":"增加特殊符号","Add Regex Command":"添加正则表达式命令","Switch Regex Command Window":"切换到正则命令窗口","Please select text first":"请先选中文本","Current line is empty, please select text or move to a non-empty line":"当前行为空,请选中文本或移动到非空行","Use current line for regex commands":"正则命令使用当前行","When no text is selected, regex commands will use the current line instead of clipboard content":"当没有选中文本时,正则命令将使用当前行内容而不是剪贴板内容","The selected text does not meet the condition requirements":"选中的文本不满足条件要求","Regex command execution error: ":"正则表达式命令执行错误:","Copy code":"复制代码","Copied!":"已复制!","Explain the syntax of JavaScript regular expressions":"解释JavaScript正则表达式的语法","Apply regular expression replacement":"应用正则表达式替换","Conditional matching":"条件匹配","Complete regular expression code (copy to AI for explanation)":"完整正则表达式代码(复制到AI解释)","Error: ":"错误:","Regex pattern cannot be empty":"正则表达式不能为空","Command already exists":"命令已存在","Choose icon":"选择图标","URL to Markdown link":"URL转Markdown链接","Convert MM/DD/YYYY to YYYY-MM-DD":"将MM/DD/YYYY日期格式转换为YYYY-MM-DD","Add bold to keywords":"添加粗体到关键词","Format phone number":"格式化电话号码","Remove extra spaces":"删除多余空格","Convert HTML bold tags to Markdown format":"将HTML粗体标签转换为Markdown格式","Convert quoted text to quote block":"将引用的文本转换为引用块","Convert CSV to Markdown table row":"将CSV转换为Markdown表格行","Add uniform alias to Markdown links":"添加统一别名到Markdown链接","Delete empty lines (multiline mode)":"删除空行(多行模式)","Add list symbol to each line (multiline mode)":"添加列表符号到每行(多行模式)","If the text contains important, set the text highlight (conditional format)":"如果文本包含重要内容,设置文本高亮(条件格式)","Matching pattern":"匹配模式","Regex pattern to match":"正则表达式匹配","Replacement pattern (use $1, $2, etc. to reference capture groups)":"替换模式(使用$1, $2等引用捕获组)","Ignore case":"忽略大小写","Global replace":"全局替换","Multiline mode":"多行模式","Use condition":"使用条件","Condition pattern":"条件模式","Only apply custom command when text matches the condition":"仅在文本匹配条件时应用自定义命令","Must exist regular expression or text":"必须存在正则表达式或文本","Replacement pattern":"替换模式","Match case-insensitive":"匹配不区分大小写","^ and $ match the start and end of each line":"^ 和 $ 匹配每行的开始和结束","Replace all matches":"替换所有匹配",Command:"命令","Input example text to view the formatting effect of the command...":"输入示例文本以查看命令的格式化效果...",Description:"描述","[Example]":"[示例]","[Requirements]":"[要求]","[Output]":"[输出]","AI question template:":"AI问题模板:","I need to convert the url to a markdown format link":"我需要将URL转换为Markdown格式链接","For example, convert https://example.com to [https://example.com](https://example.com)":"例如,将https://example.com转换为[https://example.com](https://example.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"使用js正则表达式实现,并输出以下格式的参数(结果不需要用json转义)","[Description]":"[描述]","How to use AI to get regular expressions?":"如何使用AI获取正则表达式?","Regular expression examples":"正则表达式示例","Edit regular expression command":"编辑正则表达式命令","Add regular expression command":"添加正则表达式命令","Result:":"结果:","Example text:":"示例文本:",Preview:"预览",Result:"结果","Update Import":"增量导入","Overwrite Import":"覆盖导入","Importing configuration...":"正在导入配置...","Following Style Only":"仅Following样式","Top Style Only":"仅Top样式","Fixed Style Only":"仅Fixed样式","Mobile Style Only":"仅Mobile样式","Unknown import type":"未知导入类型","All Toolbar Commands":"所有工具栏命令","Following style commands successfully initialized":"Following样式初始化成功","Top style commands successfully initialized":"Top样式初始化成功","Fixed style commands successfully initialized":"Fixed样式初始化成功","Mobile style commands successfully initialized":"Mobile样式初始化成功","Commands initialized successfully":"命令初始化成功","Reset Commands":"重置命令","Are you sure you want to reset the current configuration?":"您确定要将当前配置进行重置吗?","Commands reset successfully":"命令重置成功","Initialize Commands":"初始化命令","Initialize commands to default settings":"初始化命令到默认设置","Reset commands to default settings":"重置命令到默认设置",Clear:"清除","Remove all commands from this configuration.":"清除当前样式下的所有命令","Are you sure you want to clear all commands under the current style?":"您确定要清除当前样式下的所有命令吗?","Current style commands have been cleared":"当前样式下的命令已清除","Manage Commands":"管理命令","Reset or clear all commands in this configuration":"重置或清除当前样式下的所有命令","Import Commands from Other Styles":"从其他样式导入命令","Copy commands from another style configuration.":"从另一个样式配置复制命令","Main menu only":"Main menu only","This import will update:":"此次导入将更新:","Custom commands":"自定义命令","Toolbar commands":"工具栏命令","All settings":"所有设置","Following style only":"跟随样式","Top style only":"顶部样式","Fixed style only":"固定样式","Mobile style only":"移动端样式","Main Menu Commands":"主菜单命令","Following Style Commands":"跟随样式命令","Top Style Commands":"顶部样式命令","Fixed Style Commands":"固定样式命令","Mobile Style Commands":"移动端样式命令","General settings":"常规设置","Please paste configuration data first":"请先粘贴配置数据","Invalid import data format":"无效的导入数据格式","Do you want to continue?":"您确定要继续吗?","Warning: Update mode will add new items and update existing ones.":"警告:更新模式将添加新项目并更新现有项目。","Warning: Overwrite mode will completely replace your current settings with the imported ones.":"警告:覆盖模式将完全替换您当前的设置与导入的设置。","Overwrite Mode (Replace settings with imported ones)":"覆盖模式(用导入的配置替换所有设置)","Warning: Overwrite mode will replace existing settings with imported ones.":"警告:覆盖模式将用导入的配置替换所有设置。","Enable Multiple Config":"启用多配置","One-click Clear":"一键清除","This import will:":"此次导入将:","Update general settings":"更新常规设置","Update Main Menu Commands":"更新主菜单命令","Update Custom Commands":"更新自定义命令","Update Following Style Commands":"更新跟随样式命令","Update Top Style Commands":"更新顶部样式命令","Update Fixed Style Commands":"更新固定样式命令","Clear all Main Menu Commands":"清除所有主菜单命令","Clear all Custom Commands":"清除所有自定义命令","Clear all Following Style Commands":"清除所有跟随样式命令","Clear all Top Style Commands":"清除所有顶部样式命令","Clear all Fixed Style Commands":"清除所有固定样式命令","Clear all Mobile Style Commands":"清除所有移动端样式命令","Set Multiple Config to:":"设置多配置为:",Enable:"启用",Disable:"禁用","Set Position Style to:":"设置位置样式为:",Following:"跟随",Top:"顶部",Fixed:"固定",Mobile:"移动端","All commands":"所有命令","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ 覆盖模式将用导入的配置替换所有设置。","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ 更新模式将合并导入的设置与现有的设置。","Imported settings:":"导入的设置:","Imported commands:":"导入的命令:","Disable toolbar for this view":"禁用此视图的工具栏","Enable toolbar for this view":"启用此视图的工具栏","Manage all view types":"管理所有视图类型","Current View: ":"当前视图:","Appearance Style":"外观样式","Position Settings":"位置设置","Join the Community":"加入社区","Share your toolbar settings and styles in our":"分享您的工具栏设置和样式:","section!":"社区!","Get inspired by what others have created or showcase your own customizations.":"获取灵感或展示您的自定义设置。","Toolbar Preview (With a hypothetical command configuration.)":"工具栏预览(按钮仅供参考)","Toolbar Theme":"工具栏主题","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"选择预设的工具栏主题,自动设置背景颜色、图标颜色和大小","Toolbar Background Color":"工具栏背景颜色","Set the background color of the toolbar.":"设置工具栏的背景颜色","Toolbar Icon Color":"工具栏图标颜色","Set the color of the toolbar icon.":"设置工具栏图标颜色","Toolbar Icon Size":"工具栏图标大小","Set the size of the toolbar icon (px); default: 18px":"设置工具栏图标大小(px)默认18px","Custom theme":"自定义主题","Fixed Position Offset":"固定位置偏移","Choose the offset of the Editing Toolbar in the fixed position.":"选择固定位置工具栏的偏移量。","Renumber List":"列表重新编号","Insert link":"插入链接","Please enter a URL first":"请先输入一个URL","Failed to fetch title for":"获取标题失败","Link Title (optional)":"链接标题(可选)","Unable to detect editor width":"无法检测编辑器宽度","Fit Editor Width":"自适应宽度","Fetch Remote Title":"获取URL标题","Please execute a format command or select format text first, then enable the format brush":"请先执行一个格式命令或选中带格式的文本,然后启用格式刷",Confirm:"确认","Use \\n to represent line breaks":"使用\\n表示换行符","Use ↵ to represent line breaks":"使用↵表示换行符","All commands have been removed.":"所有命令已被清除。","Top Toolbar":"顶部工具栏","Enable the toolbar positioned at the top.":"启用位于顶部的工具栏。","Following Toolbar":"跟随工具栏","Enable the toolbar that appears upon text selection.":"启用在选中文本时出现的工具栏。","Fixed Toolbar":"固定工具栏","Enable the toolbar whose position may be fixed where you please.":"启用可以固定在任意位置的工具栏。","Toolbar Settings":"工具栏设置","Choose which toolbar style's appearance you want to edit.":"选择要编辑外观的工具栏样式。","Vertical Split":"垂直分割","Text Enhancement Tools":"文本增强工具","Get Plain Text":"获取无语法文本","Full Half Converter":"全角半角转换","Insert Blank Lines":"插入空行","Remove Blank Lines":"删除空行","Split Lines":"拆分行","Dedupe Lines":"去除重复行","Add Prefix/Suffix":"添加前后缀","Number Lines (Custom)":"添加行号(自定义)","Trim Line Ends":"去除行首尾空格","Shrink Extra Spaces":"压缩多余空格","Remove All Whitespace":"移除所有空白","Extract Between Strings":"提取字符串之间内容","Merge Lines":"合并行","List to Table":"多级列表转表格","Table to List":"表格转多级列表","Line Operations":"行操作","Text Processing":"文本处理","Advanced Tools":"高级工具","Enter prefix":"输入前缀","Enter suffix":"输入后缀",Delimiter:"分隔符","Enter delimiter (e.g., comma, tab)":"输入分隔符(例如:逗号、制表符)","Column Number":"列号","Enter column number (starting from 1)":"输入列号(从1开始)","Start String":"起始字符串","Enter start string":"输入起始字符串","End String":"结束字符串","Enter end string":"输入结束字符串","Number Lines Configuration":"行号配置","Start Number":"起始数字",Step:"步长",Separator:"分隔符","Merge Lines Settings":"合并行设置","Separator (leave empty for smart spacing)":"分隔符 (留空则开启智能中英间距)","e.g., comma, pipe, arrow":"例如: , 或 | 或 →","Plain text copied to clipboard":"无语法文本已复制到剪贴板","Whitespace cleaning completed":"空白字符清洗完成","List pattern detected, auto-split":"检测到列表模式,已自动拆分","No obvious separator or list pattern detected":"未识别到明显的分隔符或列表模式","Paste failed":"粘贴失败","Detected Chinese context: converted to full-width symbols":"检测为中文语境:已转换为全角符号","Detected code/English context: converted to half-width symbols":"检测为代码/英文语境:已转换为半角符号","Please select text to dedupe first":"请先选择要去重的文本","Deduplication completed, remaining":"去重完成,剩余",lines:"行","Prefix/suffix added":"添加前后缀完成","Please select text to number first":"请先选择要编号的文本","Numbering completed: starting from":"已完成编号:从","Please specify start or end string":"请指定起始或结束字符串",Extracted:"提取了",matches:"个匹配项","No matches found":"未找到匹配项","Extraction failed":"提取失败","Please select lines to merge first":"请先选择要合并的行","Merged with":"已按","Merge completed":"已完成合并",Item:"项目","Super conversion completed: context preserved and layout optimized":"超级转换完成:已保留上下文并优化排版","Please select a valid Markdown table":"请先选择有效的 Markdown 表格","Table converted to multi-level list":"表格已还原为多级列表"},Kr={...Zr};const Jr={ar:{},cs:{},da:{},de:{},en:Gr,"en-gb":{"Editing Toolbar Append Method":"Editing Toolbar Append Method","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar aesthetic":"Editing Toolbar aesthetic","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar position":"Editing Toolbar position","Choose between fixed position or cursor following mode.":"Choose between fixed position, cursor following or Top mode.","Editing Toolbar Columns":"Editing Toolbar Columns","Choose the number of columns per row to display on Editing Toolbar.":"Choose the number of columns per row to display on Editing Toolbar.","Editing Toolbar refresh":"Editing Toolbar refresh","Editing Toolbar Commands":"Editing Toolbar Commands","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.","Format Brush Off!":"Format Brush Off!","Hide & Show":"Hide & Show","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.","Font-Color formatting brush ON!":"Font-Colour formatting brush ON!",More:"More","Font Colors":"Font Colours","Format Brush":"Format Brush","Background color":"Background colour",Refresh:"Refresh",Add:"Add",Delete:"Delete","Change Command Name":"Change Command Name","Add Submenu":"Add Submenu","Add Separator":"Add Separator","Enter the icon code, it looks like .... format":"Enter the icon code, it looks like .... format","Please enter a new name: ":"Please enter a new name: ","Drag the slider to move the position":"Drag the slider to move the position","Plugin Settings":"Plugin Settings","Background-color formatting brush ON!":"Background-colour formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","Clear formatting brush ON!":"Clear formatting brush ON!","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden","Editing Toolbar Auto-hide":"Editing Toolbar Auto-hide","Editing Toolbar Centred Display":"Editing Toolbar Centred Display","Whether the toolbar is centred or full-width, the default is full-width.":"Whether the toolbar is centred or full-width, the default is full-width.","Custom Backgroud Color":"Custom Backgroud Colour","Custom Font Color":"Custom Font Colour","🎨 Set Custom Background":"🎨 Set Custom Background","🖌️ Set Custom Font Color":"🖌️ Set Custom Font Colour","Click on the picker to adjust the color":"Click on the picker to adjust the colour","Mobile Enabled or Not":"Mobile Enabled or Not","Whether to enable the plugin for the mobile client, the default is enabled.":"Whether to enable the plugin for the mobile client, the default is enabled.","Whether to enable on mobile devices with device width less than 768px.":"Whether to enable on mobile devices with device width less than 768px, the default is disable.",Reset:"Reset",Fix:"Fix","Fix Editing Toolbar":"Fix Editing Toolbar",General:"General",Appearance:"Appearance",Commands:"Commands","Choose between fixed position or cursor following mode":"Choose between fixed position, cursor following or Top mode.","Add and manage commands":"Add and manage commands","Choose where Editing Toolbar will append upon regeneration.":"Choose where Editing Toolbar will append upon regeneration.","Whether to enable on mobile devices with device width less than 768px":"Whether to enable on mobile devices with device width less than 768px","Choose between a glass morphism, tiny and default style.":"Choose between a glass morphism, tiny and default style.","Refresh Toolbar":"Refresh Toolbar","Add Command":"Add Command",Settings:"Settings","Position Style":"Position Style",Columns:"Columns","Drag to Adjust Position":"Drag to Adjust Position","Vertical Position":"Vertical Position","Horizontal Position":"Horizontal Position","Toolbar Position":"Toolbar Position","Choose an icon":"Choose an icon","Search for an icon...":"Search for an icon...",All:"All",Obsidian:"Obsidian",Glyph:"Glyph",Custom:"Custom","Choose a command":"Choose a command","The command":"The command","already exists":"already exists","Enter the icon code, format as .... ":"Enter the icon code, format as .... ","No matching icons found":"No matching icons found","Custom Commands":"Custom Commands","Toolbar Commands":"Toolbar Commands",ID:"ID",Prefix:"Prefix",Suffix:"Suffix",Pattern:"Pattern","Custom Format Commands":"Custom Format Commands","Add, edit or delete custom format commands.":"Add, edit or delete custom format commands.",Edit:"Edit","Command ID":"Command ID",'Unique identifier, no spaces, e.g.: "my-custom-format"':'Unique identifier, no spaces, e.g.: "my-custom-format"',"Displayed name in toolbar and menu":"Displayed name in toolbar and menu","Add content before selected text":"Add content before selected text","Add content after selected text":"Add content after selected text","Character offset of cursor after formatting":"Character offset of cursor after formatting","Line offset of cursor after formatting":"Line offset of cursor after formatting","Whether to insert at the beginning of the next line":"Whether to insert at the beginning of the next line","Command icon (click to select)":"Command icon (click to select)","Choose Icon":"Choose Icon",Save:"Save",Cancel:"Cancel","Edit Custom Command":"Edit Custom Command","Add Custom Command":"Add Custom Command","Command ID and command name cannot be empty":"Command ID and command name cannot be empty","Command ID cannot contain spaces":"Command ID cannot contain spaces",'Command ID "${this.commandId}" already exists':'Command ID "${this.commandId}" already exists',"Cursor Position Offset":"Cursor Position Offset","Line Offset":"Line Offset","Line Head Format":"Line Head Format",Icon:"Icon","Command Name":"Command Name","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"Are you sure you want to restore all settings to default? This will lose all your custom configurations.","Restore default":"Restore default","Restore default settings":"Restore default settings","🔄Restore default settings":"🔄Restore default settings","🔧Data repair":"🔧Data repair","Command IDs have been successfully repaired!":"Command IDs have been successfully repaired!","No command IDs need to be repaired":"No command IDs need to be repaired","Error repairing command IDs, please check the console for details":"Error repairing command IDs, please check the console for details","Error restoring default settings, please check the console for details":"Error restoring default settings, please check the console for details","Successfully restored default settings!":"Successfully restored default settings!",Close:"Close",Tips:"Tips","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly","Repair command ID":"Repair command ID","This will reset all your custom configurations":"This will reset all your custom configurations","Notice:":"Notice:","This update rebuilds the entire code, reducing resource consumption":"This update rebuilds the entire code, reducing resource consumption","Optimized mobile usage, added canvas support, and added custom commands":"Optimized mobile usage, added canvas support, and added custom commands","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️If you want to restore the default settings, please click [Restore default settings]","Please execute a editingToolbar format command first, then enable the format brush":"Please execute a editingToolbar format command first, then enable the format brush","Format brush ON! Select text to apply【":"Format brush ON! Select text to apply【","】format":"】format\nClick the mouse middle or right key to close the formatting-brush","Add to Toolbar":"Add to Toolbar","This command is already in the toolbar.":"This command is already in the toolbar.","Command added to toolbar":"Command added to toolbar","Add this command to the toolbar.":"Add this command to the toolbar.","Callout Type":"Callout Type",Title:"Title","Optional, leave blank for default title":"Optional, leave blank for default title","Input title":"Input title","Collapse State":"Collapse State",Open:"Open",Closed:"Closed",Content:"Content",Insert:"Insert",Default:"Default","Input content":"Input content","Link Text":"Link Text","Link Alias":"Link Alias","Link URL":"Link URL","Embed Content":"Embed Content","Image Size":"Image Size","Insert New Line":"Insert New Line","Paste and Parse":"Paste and Parse","URL Format Error":"URL Format Error","Image Width":"Image Width","Image Height":"Image Height","If it is an image, turn on":"If it is an image, turn on","Insert a link on the next line":"Insert a link on the next line","Link Title(optional)":"Link Title(optional)",Alias:"Alias",Optional:"Optional","Default 0, format will keep the text selected":"Default 0, format will keep the text selected","to insert":"to insert","Latest Changes":"Latest Changes","📋View full changelog":"📋View full changelog","Open changelog":"Open changelog","Loading changelog...":"Loading changelog...","Open the complete changelog in your browser":"Open the complete changelog in your browser","Enable Multiple Configurations":"Enable Multiple Configurations","Enable different command configurations for each position style (following, top, fixed).":"Enable different command configurations for each position style (following, top, fixed).","Currently editing commands for":"Currently editing commands for","position style":"position style","Current Configuration":"Current Configuration","Switch between different command configurations.":"Switch between different command configurations.","Following Style":"Following Style","Top Style":"Top Style","Fixed Style":"Fixed Style","Mobile Style":"Mobile Style",configuration:"configuration","Deploy command to configurations":"Deploy command to configurations","All Configurations":"All Configurations",Deploy:"Deploy","Command deployed to selected configurations":"Command deployed to selected configurations","No configuration selected for deployment":"No configuration selected for deployment","Command already exists in selected configurations":"Command already exists in selected configurations","Command deployed to: ":"Command deployed to: ","Command Deleted.":"Command Deleted.","Confirm Delete?":"Confirm Delete?",Confirm:"Confirm","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"Are you sure you want to restore all settings to default? But custom commands will be preserved.","Successfully restored default settings! (Custom commands preserved)":"Successfully restored default settings! (Custom commands preserved)","This will reset all your custom configurations, but custom commands will be preserved":"This will reset all your custom configurations, but custom commands will be preserved","Import/Export":"Import/Export","Export Configuration":"Export Configuration","Export your toolbar configuration to share with others.":"Export your toolbar configuration to share with others.",Export:"Export","Import Configuration":"Import Configuration","Import toolbar configuration from JSON.":"Import toolbar configuration from JSON.",Import:"Import","Usage Instructions":"Usage Instructions","Export: Generate a JSON configuration that you can save or share.":"Export: Generate a JSON configuration that you can save or share.","Import: Paste a previously exported JSON configuration.":"Import: Paste a previously exported JSON configuration.","You can choose to export all settings, only toolbar commands, or only custom commands":"You can choose to export all settings, only toolbar commands, or only custom commands","When importing, the plugin will only update the settings included in the import data":"When importing, the plugin will only update the settings included in the import data","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.","Export Type":"Export Type","Choose what to export":"Choose what to export","All Settings":"All Settings","Toolbar Commands Only":"Toolbar Commands Only","Custom Commands Only":"Custom Commands Only","Export Content":"Export Content","Copy this content to share with others":"Copy this content to share with others","Loading...":"Loading...","Copy to Clipboard":"Copy to Clipboard","Configuration copied to clipboard":"Configuration copied to clipboard","Failed to copy configuration":"Failed to copy configuration","Paste the configuration JSON here":"Paste the configuration JSON here","Paste configuration here...":"Paste configuration here...","Invalid import data":"Invalid import data","Configuration imported successfully":"Configuration imported successfully","No valid configuration found in import data":"No valid configuration found in import data","Failed to import configuration. Invalid format.":"Failed to import configuration. Invalid format.","Import Mode":"Import Mode","Choose how to import the configuration":"Choose how to import the configuration","Update Mode (Add new items and update existing ones)":"Update Mode (Add new items and update existing ones)","Overwrite Mode (Replace all settings with imported ones)":"Overwrite Mode (Replace all settings with imported ones)","Configuration imported successfully (Overwrite mode)":"Configuration imported successfully (Overwrite mode)","Configuration imported successfully (Update mode)":"Configuration imported successfully (Update mode)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"Warning: Update mode will add new items and update existing ones based on the imported configuration.","Add Format Command":"Add Format Command",Regex:"Regex","Prefix/Suffix":"Prefix/Suffix","Insert Special Char":"Insert Special Char","Add Regex Command":"Add Regex Command","Switch Regex Command Window":"Switch Regex Command Window","Please select text first":"Please select text first","The selected text does not meet the condition requirements":"The selected text does not meet the condition requirements","Regex command execution error: ":"Regex command execution error: ","Copy code":"Copy code","Copied!":"Copied!","Explain the syntax of JavaScript regular expressions":"Explain the syntax of JavaScript regular expressions","Apply regular expression replacement":"Apply regular expression replacement","Conditional matching":"Conditional matching","Complete regular expression code (copy to AI for explanation)":"Complete regular expression code (copy to AI for explanation)","Error: ":"Error: ","Regex pattern cannot be empty":"Regex pattern cannot be empty","Command already exists":"Command already exists","Choose icon":"Choose icon","URL to Markdown link":"URL to Markdown link","Convert MM/DD/YYYY to YYYY-MM-DD":"Convert MM/DD/YYYY to YYYY-MM-DD","Add bold to keywords":"Add bold to keywords","Format phone number":"Format phone number","Remove extra spaces":"Remove extra spaces","Convert HTML bold tags to Markdown format":"Convert HTML bold tags to Markdown format","Convert quoted text to quote block":"Convert quoted text to quote block","Convert CSV to Markdown table row":"Convert CSV to Markdown table row","Add uniform alias to Markdown links":"Add uniform alias to Markdown links","Delete empty lines (multiline mode)":"Delete empty lines (multiline mode)","Add list symbol to each line (multiline mode)":"Add list symbol to each line (multiline mode)","If the text contains important, set the text highlight (conditional format)":"If the text contains important, set the text highlight (conditional format)","Matching pattern":"Matching pattern","Regex pattern to match":"Regex pattern to match","Replacement pattern (use $1, $2, etc. to reference capture groups)":"Replacement pattern (use $1, $2, etc. to reference capture groups)","Ignore case":"Ignore case","Global replace":"Global replace","Multiline mode":"Multiline mode","Use condition":"Use condition","Condition pattern":"Condition pattern","Only apply custom command when text matches the condition":"Only apply custom command when text matches the condition","Must exist regular expression or text":"Must exist regular expression or text","Replacement pattern":"Replacement pattern","Match case-insensitive":"Match case-insensitive","^ and $ match the start and end of each line":"^ and $ match the start and end of each line","Replace all matches":"Replace all matches",Command:"Command","Input example text to view the formatting effect of the command...":"Input example text to view the formatting effect of the command...",Description:"Description","[Example]":"[Example]","[Requirements]":"[Requirements]","[Output]":"[Output]","AI question template:":"AI question template:","I need to convert the url to a markdown format link":"I need to convert the url to a markdown format link","For example, convert https://example.com to [https://example.com](https://example.com)":"For example, convert https://example.com to [https://example.com](https://example.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)","[Description]":"[Description]","How to use AI to get regular expressions?":"How to use AI to get regular expressions?","Regular expression examples":"Regular expression examples","Edit regular expression command":"Edit regular expression command","Add regular expression command":"Add regular expression command","Result: ":"Result: ","Example text:":"Example text:",Preview:"Preview",Result:"Result","Please select text or copy text to clipboard first":"Please select text or copy text to clipboard first","Overwrite Import":"Overwrite Import","Update Import":"Update Import","Importing configuration...":"Importing configuration...","Following Style Only":"Following Style Only","Top Style Only":"Top Style Only","Fixed Style Only":"Fixed Style Only","Mobile Style Only":"Mobile Style Only","Unknown import type":"Unknown import type","All Toolbar Commands":"All Toolbar Commands","Initialize Commands":"Initialize Commands","Copy commands from the main menu configuration":"Copy commands from the main menu configuration","Initialize commands to default settings":"Initialize commands to default settings","Reset Commands":"Reset Commands","Commands reset successfully":"Commands reset successfully","Following style commands initialized from current menu commands":"Following style commands initialized from current menu commands","Commands initialized successfully":"Commands initialized successfully","Reset to Menu Commands":"Reset to Menu Commands","Are you sure you want to reset the current configuration?":"Are you sure you want to reset the current configuration?","Following style commands successfully initialized":"Following style commands successfully initialized","Top style commands successfully initialized":"Top style commands successfully initialized","Fixed style commands successfully initialized":"Fixed style commands successfully initialized","Mobile style commands successfully initialized":"Mobile style commands successfully initialized","Reset commands to default settings":"Reset commands to default settings",Clear:"Clear","Remove all commands from this configuration.":"Remove all commands from this configuration.","Are you sure you want to clear all commands under the current style?":"Are you sure you want to clear all commands under the current style?","Current style commands have been cleared":"Current style commands have been cleared","Manage Commands":"Manage Commands","Reset or clear all commands in this configuration":"Reset or clear all commands in this configuration","One-click Clear":"One-click Clear","Import Commands from Other Styles":"Import Commands from Other Styles","Copy commands from another style configuration.":"Copy commands from another style configuration.","Main menu only":"Main menu only","This import will update:":"This import will update:","Custom commands":"Custom commands","Toolbar commands":"Toolbar commands","General settings":"General settings","Please paste configuration data first":"Please paste configuration data first","Invalid import data format":"Invalid import data format","Import From":"Import From","This import will:":"This import will:","Update general settings":"Update general settings","Update Main Menu Commands":"Update Main Menu Commands","Update Custom Commands":"Update Custom Commands","Update Following Style Commands":"Update Following Style Commands","Update Top Style Commands":"Update Top Style Commands","Update Fixed Style Commands":"Update Fixed Style Commands","Update Mobile Style Commands":"Update Mobile Style Commands","Clear all Main Menu Commands":"Clear all Main Menu Commands","Clear all Custom Commands":"Clear all Custom Commands","Clear all Following Style Commands":"Clear all Following Style Commands","Clear all Top Style Commands":"Clear all Top Style Commands","Clear all Fixed Style Commands":"Clear all Fixed Style Commands","Clear all Mobile Style Commands":"Clear all Mobile Style Commands","Overwrite Mode (Replace settings with imported ones)":"Overwrite Mode (Replace settings with imported ones)","Warning: Overwrite mode will replace existing settings with imported ones.":"Warning: Overwrite mode will replace existing settings with imported ones.","Warning: Update mode will add new items and update existing ones.":"Warning: Update mode will add new items and update existing ones.","Enable Multiple Config":"Enable Multiple Config","Set Multiple Config to:":"Set Multiple Config to:",Enable:"Enable",Disable:"Disable","Set Position Style to:":"Set Position Style to:",Following:"Following",Top:"Top",Fixed:"Fixed",Mobile:"Mobile","All commands":"All commands","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ Overwrite mode will replace existing settings with imported ones.","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ Update mode will merge imported settings with existing ones.","Do you want to continue?":"Do you want to continue?","Imported settings:":"Imported settings:","Imported commands:":"Imported commands:","Disable toolbar for this view":"Disable toolbar for this view","Enable toolbar for this view":"Enable toolbar for this view","Manage all view types":"Manage all view types","Current View: ":"Current View: ","Appearance Style":"Appearance Style","Position Settings":"Position Settings","All commands have been removed.":"All commands have been removed.","Join the Community":"Join the Community","Share your toolbar settings and styles in our":"Share your toolbar settings and styles in our","Get inspired by what others have created or showcase your own customizations.":"Get inspired by what others have created or showcase your own customisations.","Toolbar Preview (With a hypothetical command configuration.)":"Toolbar Preview (With a hypothetical command configuration.)","Toolbar Theme":"Toolbar Theme","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"Select a preset toolbar theme, automatically setting the background colour, icon colour, and size for the selected style.","Toolbar Background Color":"Toolbar Background Colour","Set the background color of the toolbar.":"Set the background colour of the toolbar.","Toolbar Icon Color":"Toolbar Icon Colour","Set the color of the toolbar icon.":"Set the colour of the toolbar icon.","Toolbar Icon Size":"Toolbar Icon Size","Set the size of the toolbar icon (px); default: 18px":"Set the size of the toolbar icon (px); default: 18px","Custom Theme":"Custom Theme","Fixed Position Offset":"Fixed Position Offset","Choose the offset of the Editing Toolbar in the fixed position.":"Choose the offset of the Editing Toolbar in the fixed position.","Renumber List":"Renumber List","Fetch Remote Title":"Fetch Remote Title","Please enter a URL first":"Please enter a URL first","Failed to fetch title for":"Failed to fetch title for","Link Title (optional)":"Link Title (optional)","Unable to detect editor width":"Unable to detect editor width","Fit Editor Width":"Fit Editor Width","Please execute a format command or select format text first, then enable the format brush":"Please execute a format command or select format text first, then enable the format brush","Use \\n to represent line breaks":"Use \\n to represent line breaks","Use ↵ to represent line breaks":"Use ↵ to represent line breaks","Top Toolbar":"Top Toolbar","Enable the toolbar positioned at the top.":"Enable the toolbar positioned at the top.","Following Toolbar":"Following Toolbar","Enable the toolbar that appears upon text selection.":"Enable the toolbar that appears upon text selection.","Fixed Toolbar":"Fixed Toolbar","Enable the toolbar whose position may be fixed where you please.":"Enable the toolbar whose position may be fixed where you please.","Toolbar Settings":"Toolbar Settings","Choose which toolbar style's appearance you want to edit.":"Choose which toolbar style's appearance you want to edit.","Vertical Split":"Vertical Split"},es:{},fr:{},hi:{},id:{},it:{},ja:{},ko:{},nl:{},nn:{},pl:{},pt:{},"pt-br":{"Editing Toolbar Append Method":"Método de Inserção da Barra de Ferramentas","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"Escolha onde a Barra de Ferramentas será inserida ao regenerar. Para ver a alteração, clique no botão de atualização abaixo, ou no menu da barra de status.","Editing Toolbar aesthetic":"Estilo da Barra de Ferramentas","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Escolha entre um estilo de vidro, pequeno e padrão para a Barra de Ferramentas. Para ver a alteração, clique no botão de atualização abaixo, ou no menu da barra de status.","Editing Toolbar position":"Posição da Barra de Ferramentas","Choose between fixed position or cursor following mode.":"Escolha entre posição fixa ou modo contextual.","Editing Toolbar Columns":"Colunas da Barra de Ferramentas","Choose the number of columns per row to display on Editing Toolbar.":"Escolha o número de colunas por linha para exibir na Barra de Ferramentas.","Editing Toolbar refresh":"Atualizar Barra de Ferramentas","Editing Toolbar Commands":"Comandos da Barra de Ferramentas","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"Adicione um comando na Barra de Ferramentas a partir da biblioteca de comandos do Obsidian. Para reordenar os comandos, arraste e solte os itens do comando. Para deletar, use o botão de deletar à direita do item do comando. A Barra de Ferramentas não atualizará automaticamente após reordenar os comandos. Use o botão de atualização acima.","Format Brush Off!":"Pincel de formatação desligado!","Hide & Show":"Ocultar & Mostrar","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"A barra de edição só atualizará automaticamente após você ter adicionado ou deletado um comando dela. Para ver as alterações na interface do editingToolbar (alterações acima das configurações) use o botão de atualização. Se você esquecer de atualizar nas configurações, não se preocupe. Também há um botão de atualização na barra de status da Barra de Edição.","Font-Color formatting brush ON!":"Pincel de cor da fonte ativado!",More:"Mais","Font Colors":"Cores de Texto","Format Brush":"Pincel de formatação","Background Color":"Cor de Fundo",Refresh:"Atualizar",Add:"Adicionar",Delete:"Deletar","Change Command Name":"Alterar Nome do Comando","Add Submenu":"Adicionar Submenu","Add Separator":"Adicionar Separador","Enter the icon code, it looks like .... format":"Digite o código do ícone, parece com o formato .... ","Please enter a new name: ":"Por favor, digite um novo nome: ","Drag the slider to move the position":"Arraste o slider para mover a posição","Plugin Settings":"Configurações do Plugin","Background-color formatting brush ON!":"Pincel de cor de fundo ativado!\nClique com o botão do meio ou direito do mouse para sair do modo.","Clear formatting brush ON!":"Pincel de formatação ativado!","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"Pincel de formatação ativado!\nClique com o botão do meio ou direito do mouse para sair do modo de formatação.","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"A barra de ferramentas é exibida quando o mouse passa por cima dela, caso contrário, ela é automaticamente oculta.","Editing Toolbar Auto-hide":"Auto-ocultação da Barra de Ferramentas","Editing Toolbar Centred Display":"Exibição Centralizada da Barra de Ferramentas","Whether the toolbar is centred or full-width, the default is full-width.":"Define se a barra de ferramentas é centralizada ou ocupa toda a largura. O padrão é largura completa.","Custom Backgroud Color":"Cor de Fundo Personalizada","Custom Font Color":"Cor de Texto Personalizada","🎨 Set Custom Background":"🎨 Definir Cor de Fundo Personalizada","🖌️ Set Custom Font Color":"🖌️ Definir Cor de Texto Personalizada","Click on the picker to adjust the color":"Clique no seletor para ajustar a cor","Mobile Enabled or Not":"Habilitar em dispositivos móveis","Whether to enable the plugin for the mobile client, the default is enabled.":"Habilitar o plugin para dispositivos móveis, o padrão é habilitado.","Whether to enable on mobile devices with device width less than 768px.":"Habilitar o plugin para dispositivos móveis com largura de dispositivo menor que 768px, o padrão é desabilitado.",Reset:"Reiniciar",Fix:"Ajustar","Fix Editing Toolbar":"Ajustar Barra de Ferramentas",General:"Geral",Appearance:"Aparência",Commands:"Comandos","Choose between fixed position or cursor following mode":"Escolha entre posição fixa ou modo contextual.","Add and manage commands":"Adicionar e gerenciar comandos","Choose where Editing Toolbar will append upon regeneration.":"Escolha onde a Barra de Ferramentas será inserida ao regenerar.","Whether to enable on mobile devices with device width less than 768px":"Habilitar o plugin para dispositivos móveis com largura de dispositivo menor que 768px","Choose between a glass morphism, tiny and default style.":"Escolha entre um estilo de vidro, pequeno e padrão.","Refresh Toolbar":"Atualizar Barra de Ferramentas","Add Command":"Adicionar Comando",Settings:"Configurações","Position Style":"Estilo de Posição",Columns:"Colunas","Drag to Adjust Position":"Arraste para ajustar a posição","Vertical Position":"Posição Vertical","Horizontal Position":"Posição Horizontal","Toolbar Position":"Posição da Barra de Ferramentas","Choose an icon":"Escolha um ícone","Search for an icon...":"Pesquisar por um ícone...",All:"Todos",Obsidian:"Obsidian",Glyph:"Ícone",Custom:"Personalizado","Choose a command":"Escolha um comando","The command":"O comando","already exists":"já existe","Enter the icon code, format as .... ":"Digite o código do ícone, formato como .... ","No matching icons found":"Nenhum ícone correspondente encontrado","Custom Commands":"Comandos Personalizados","Toolbar Commands":"Comandos da Barra de Ferramentas",ID:"ID",Prefix:"Prefixo",Suffix:"Sufixo",Pattern:"Padrão","Custom Format Commands":"Comandos de Formatação Personalizados","Add, edit or delete custom format commands.":"Adicionar, editar ou deletar comandos de formatação personalizados.",Edit:"Editar","Command ID":"ID do Comando",'Unique identifier, no spaces, e.g.: "my-custom-format"':'Identificador único, sem espaços, exemplo: "meu-comando-personalizado"',"Displayed name in toolbar and menu":"Nome exibido na barra de ferramentas e menu","Add content before selected text":"Adicionar conteúdo antes do texto selecionado","Add content after selected text":"Adicionar conteúdo depois do texto selecionado","Character offset of cursor after formatting":"Deslocamento do cursor após a formatação","Line offset of cursor after formatting":"Deslocamento da linha do cursor após a formatação","Whether to insert at the beginning of the next line":"Inserir no início da próxima linha","Command icon (click to select)":"Ícone do comando (clique para selecionar)","Choose Icon":"Escolha um ícone",Save:"Salvar",Cancel:"Cancelar","Edit Custom Command":"Editar Comando Personalizado","Add Custom Command":"Adicionar Comando Personalizado","Command ID and command name cannot be empty":"ID do Comando e nome do comando não podem ser vazios","Command ID cannot contain spaces":"ID do Comando não pode conter espaços",'Command ID "${this.commandId}" already exists':'ID do Comando "${this.commandId}" já existe',"Cursor Position Offset":"Deslocamento do cursor","Line Offset":"Deslocamento da linha","Line Head Format":"Formatação de linha inicial",Icon:"Ícone","Command Name":"Nome do Comando","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"Tem certeza que deseja restaurar todas as configurações para a configuração padrão? Isso irá apagar todas as suas configurações personalizadas.","Restore default":"Restaurar padrão","Restore default settings":"Restaurar configurações padrão","🔄Restore default settings":"🔄Restaurar configurações padrão","🔧Data repair":"🔧Reparar dados","Command IDs have been successfully repaired!":"IDs de comando foram reparadas com sucesso!","No command IDs need to be repaired":"Nenhuma ID de comando precisa ser reparada","Error repairing command IDs, please check the console for details":"Erro ao reparar IDs de comando, por favor verifique o console para mais detalhes","Error restoring default settings, please check the console for details":"Erro ao restaurar configurações padrão, por favor verifique o console para mais detalhes","Successfully restored default settings!":"Configurações padrão restauradas com sucesso!",Close:"Fechar",Tips:"Dicas","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"Esta atualização alterou o ID de alguns comandos. Clique neste botão para repará-los e garantir que a barra de ferramentas funcione corretamente.","Repair command ID":"Reparar ID do Comando","This will reset all your custom configurations":"Isso irá resetar todas as suas configurações personalizadas","Notice:":"Nota:","This update rebuilds the entire code, reducing resource consumption":"Esta atualização recompila todo o código, reduzindo o consumo de recursos","Optimized mobile usage, added canvas support, and added custom commands":"Otimizado para uso em dispositivos móveis, adicionando suporte para o canvas e adicionado comandos personalizados","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️Esta atualização não é compatível com IDs de comando da versão 2.x. Clique em [Reparar comando] para corrigir a compatibilidade.","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️Se você quiser restaurar as configurações padrão, por favor clique em [Restaurar configurações padrão].","Please execute a editingToolbar format command first, then enable the format brush":"Execute um comando de formatação da barra de edição antes de ativar o pincel de formatação.","Format brush ON! Select text to apply【":"Pincel de formatação ativado! Selecione o texto para aplicar【","】format":"】\nClique com o botão do meio ou direito do mouse para sair do modo de formatação.","Add to Toolbar":"Adicionar à Barra de Edição","This command is already in the toolbar.":"Este comando já está na barra de ferramentas.","Command added to toolbar":"Comando adicionado à barra de ferramentas","Add this command to the toolbar.":"Adicionar este comando à barra de ferramentas.","Callout Type":"Tipo de Callout",Title:"Título","Optional, leave blank for default title":"Opcional, deixe em branco para o título padrão","Input title":"Digite o título","Collapse State":"Estado de Colapso",Open:"Abrir",Closed:"Fechado",Content:"Conteúdo",Insert:"Inserir",Default:"Padrão","Input content":"Digite o conteúdo","Link Text":"Texto do Link","Link Alias":"Alias do Link","Link URL":"URL do Link","Embed Content":"Conteúdo Embutido","Image Size":"Tamanho da Imagem","Insert New Line":"Inserir Nova Linha","Paste and Parse":"Colar e Analisar","URL Format Error":"Erro de Formato de URL","Image Width":"Largura da Imagem","Image Height":"Altura da Imagem","If it is an image, turn on":"Se for uma imagem, ative","Insert a link on the next line":"Inserir um link na próxima linha","Link Title(optional)":"Título do Link(opcional)",Alias:"Alias",Optional:"Opcional","Default 0, format will keep the text selected":"Padrão 0, o formato manterá o texto selecionado","to insert":"para inserir","Latest Changes":"Últimas Alterações","📋View full changelog":"📋Ver o registro de alterações completo","Open changelog":"Abrir registro de alterações","Loading changelog...":"Carregando registro de alterações...","Open the complete changelog in your browser":"Abrir o registro de alterações completo no seu navegador","Enable Multiple Configurations":"Habilitar Múltiplas Configurações","Enable different command configurations for each position style (following, top, fixed).":"Habilitar configurações de comandos diferentes para cada modo de posição (following, top, fixed).","Currently editing commands for":"Atualmente editando comandos para","position style":"estilo de posição","Current Configuration":"Configuração Atual","Switch between different command configurations.":"Trocar entre configurações de comando diferentes.","Following Style":"Estilo Contextual","Top Style":"Estilo de Topo","Fixed Style":"Estilo Fixo","Mobile Style":"Estilo Mobile",configuration:"configuração","Deploy command to configurations":"Implantar comando para configurações","All Configurations":"Todas as Configurações",Deploy:"Implantar","Command deployed to selected configurations":"Comando implantado para configurações selecionadas","No configuration selected for deployment":"Nenhuma configuração selecionada para implantação","Command already exists in selected configurations":"Comando já existe nas configurações selecionadas","Command deployed to: ":"Comando implantado para: ","Command Deleted":"Comando Deletado","Confirm Delete?":"Confirmar Deleção?",Confirm:"Confirmar","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"Tem certeza que deseja restaurar todas as configurações para a configuração padrão? Mas os comandos personalizados serão preservados.","Successfully restored default settings! (Custom commands preserved)":"Configurações padrão restauradas com sucesso! (Comandos personalizados preservados)","This will reset all your custom configurations, but custom commands will be preserved":"Isso redefinirá todas as suas configurações personalizadas, mas os comandos personalizados serão preservados.","Import/Export":"Importar/Exportar","Export Configuration":"Exportar Configuração","Export your toolbar configuration to share with others.":"Exportar sua configuração da barra de ferramentas para compartilhar com outros.",Export:"Exportar","Import Configuration":"Configuração de Importação","Import toolbar configuration from JSON.":"Importar configuração da barra de ferramentas em formato JSON.",Import:"Importar","Usage Instructions":"Instruções de Uso","Export: Generate a JSON configuration that you can save or share.":"Exportar: Gerar uma configuração em formato JSON para salvar ou compartilhar.","Import: Paste a previously exported JSON configuration.":"Importar: Colar uma configuração em formato JSON exportada anteriormente.","You can choose to export all settings, only toolbar commands, or only custom commands":"Você pode escolher exportar todas as configurações, apenas comandos da barra de ferramentas, ou apenas comandos personalizados","When importing, the plugin will only update the settings included in the import data":"Ao importar, o plugin irá atualizar apenas as configurações incluídas nos dados de importação","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"Aviso: A importação de configuração irá sobrescrever suas configurações atuais. Considere exportar sua configuração atual primeiro como backup.","Export Type":"Tipo de Exportação","Choose what to export":"Escolha o que exportar","All Settings":"Todas as Configurações","Toolbar Commands Only":"Apenas Comandos da Barra de Ferramentas","Custom Commands Only":"Apenas Comandos Personalizados","Export Content":"Conteúdo de Exportação","Copy this content to share with others":"Copiar este conteúdo para compartilhar com outros","Loading...":"Carregando...","Copy to Clipboard":"Copiar para a área de transferência","Configuration copied to clipboard":"Configuração copiada para a área de transferência","Failed to copy configuration":"Falha ao copiar configuração","Paste the configuration JSON here":"Colar a configuração JSON aqui","Paste configuration here...":"Colar configuração aqui...","Invalid import data":"Dados de importação inválidos","Configuration imported successfully":"Configuração importada com sucesso","No valid configuration found in import data":"Nenhuma configuração válida encontrada nos dados de importação","Failed to import configuration. Invalid format.":"Falha ao importar configuração. Formato inválido.","Import Mode":"Modo de Importação","Choose how to import the configuration":"Escolha como importar a configuração","Update Mode (Add new items and update existing ones)":"Modo de Atualização (Adicionar novos itens e atualizar os existentes)","Overwrite Mode (Replace all settings with imported ones)":"Modo de Sobrescrever (Substituir todas as configurações com as importadas)","Configuration imported successfully (Overwrite mode)":"Configuração importada com sucesso (Modo de Sobrescrever)","Configuration imported successfully (Update mode)":"Configuração importada com sucesso (Modo de Atualização)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"Aviso: O modo de sobrescrever irá substituir todas as suas configurações atuais com as importadas. Considere exportar sua configuração atual primeiro como backup.","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"Aviso: O modo de atualização irá adicionar novos itens e atualizar os existentes com base na configuração importada.","Add Format Command":"Adicionar formatação",Regex:"Regex","Prefix/Suffix":"Prefixo/Sufixo","Insert Special Char":"Inserir Caractere Especial","Add Regex Command":"Adicionar regex","Switch Regex Command Window":"Trocar para Janela de Comando de Regex","Please select text first":"Por favor selecione o texto primeiro","Current line is empty, please select text or move to a non-empty line":"A linha atual está vazia, por favor selecione o texto ou mova para uma linha não vazia","Use current line for regex commands":"Usar a linha atual para comandos de regex","When no text is selected, regex commands will use the current line instead of clipboard content":"Quando não houver texto selecionado, comandos de regex usarão a linha atual em vez do conteúdo da área de transferência","The selected text does not meet the condition requirements":"O texto selecionado não atende aos requisitos da condição","Regex command execution error: ":"Erro ao executar comando de regex: ","Copy code":"Copiar código","Copied!":"Copiado!","Explain the syntax of JavaScript regular expressions":"Explicar a sintaxe das expressões regulares em JavaScript","Apply regular expression replacement":"Aplicar substituição de expressão regular","Conditional matching":"Ocorrência Condicional","Complete regular expression code (copy to AI for explanation)":"Código de expressão regular completo (copiar para explicação com IA)","Error: ":"Erro: ","Regex pattern cannot be empty":"Padrão de regex não pode estar vazio","Command already exists":"Comando já existe","Choose icon":"Escolha um ícone","URL to Markdown link":"URL para Link Markdown","Convert MM/DD/YYYY to YYYY-MM-DD":"Converter MM/DD/YYYY para YYYY-MM-DD","Add bold to keywords":"Adicionar negrito a palavras-chave","Format phone number":"Formatar número de telefone","Remove extra spaces":"Remover espaços extra","Convert HTML bold tags to Markdown format":"Converter tags HTML de negrito para negrito em Markdown","Convert quoted text to quote block":"Converter texto citado para bloco de citação","Convert CSV to Markdown table row":"Converter CSV para linha de tabela Markdown","Add uniform alias to Markdown links":"Adicionar um alias uniforme aos links Markdown","Delete empty lines (multiline mode)":"Deletar linhas vazias (modo multilinha)","Add list symbol to each line (multiline mode)":"Adicionar símbolo de lista a cada linha (modo multilinha)","If the text contains important, set the text highlight (conditional format)":'Se o texto contiver "importante", aplicar destaque ao texto (formatação condicional)',"Matching pattern":"Padrão de correspondência","Regex pattern to match":"Padrão de regex a ser correspondido","Replacement pattern (use $1, $2, etc. to reference capture groups)":"Padrão de substituição (use $1, $2, etc. para referenciar grupos de captura)","Ignore case":"Ignorar maiúsculas e minúsculas","Global replace":"Substituir globalmente","Multiline mode":"Modo multilinha","Use condition":"Usar condição","Condition pattern":"Padrão de condição","Only apply custom command when text matches the condition":"Aplicar o comando personalizado apenas quando o texto corresponder à condição","Must exist regular expression or text":"Deve existir expressão regular ou texto","Replacement pattern":"Padrão de substituição","Match case-insensitive":"Ignorar maiúsculas e minúsculas","^ and $ match the start and end of each line":"^ e $ correspondem ao início e ao fim de cada linha","Replace all matches":"Substituir todas as ocorrências",Command:"Comando","Input example text to view the formatting effect of the command...":"Digite um texto de exemplo para visualizar o efeito do comando...",Description:"Descrição","[Example]":"[Exemplo]","[Requirements]":"[Requisitos]","[Output]":"[Saída]","AI question template:":"Modelo de pergunta para IA:","I need to convert the url to a markdown format link":"Preciso converter a URL para um link no formato Markdown","For example, convert https://example.com to [https://example.com](https://example.com)":"Por exemplo, converter https://exemplo.com para [https://exemplo.com](https://exemplo.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"Usar expressões regulares em JavaScript para implementar e gerar os parâmetros no formato abaixo (o resultado não precisa ser escapado em JSON).","[Description]":"[Descrição]","How to use AI to get regular expressions?":"Como usar IA para obter expressões regulares?","Regular expression examples":"Exemplos de expressões regulares","Edit regular expression command":"Editar comando de expressão regular","Add regular expression command":"Adicionar comando de expressão regular","Result: ":"Resultado: ","Example text:":"Texto de exemplo:",Preview:"Visualizar",Result:"Resultado","Please select text or copy text to clipboard first":"Por favor selecione o texto ou copie o texto para a área de transferência primeiro","Overwrite Import":"Sobrescrever Importação","Update Import":"Atualizar Importação","Importing configuration...":"Importando configuração...","Following Style Only":"Disponível apenas no modo contextual","Top Style Only":"Disponível apenas no modo de topo","Fixed Style Only":"Disponível apenas no modo fixo","Mobile Style Only":"Disponível apenas no modo mobile","Unknown import type":"Tipo de importação desconhecido","All Toolbar Commands":"Todos os Comandos da Barra de Ferramentas","Initialize Commands":"Inicializar Comandos","Copy commands from the main menu configuration":"Copiar comandos do menu principal","Initialize commands to default settings":"Inicializar comandos para configurações padrão","Reset Commands":"Resetar Comandos","Commands reset successfully":"Comandos resetados com sucesso","Following style commands initialized from current menu commands":"Comandos de estilo contextual inicializados a partir dos comandos do menu principal","Commands initialized successfully":"Comandos inicializados com sucesso","Reset to Menu Commands":"Resetar para Comandos do Menu","Are you sure you want to reset the current configuration?":"Tem certeza que deseja resetar a configuração atual?","Following style commands successfully initialized":"Comandos de estilo contextual inicializados com sucesso","Top style commands successfully initialized":"Comandos de estilo de topo inicializados com sucesso","Fixed style commands successfully initialized":"Comandos de estilo fixo inicializados com sucesso","Mobile style commands successfully initialized":"Comandos de estilo mobile inicializados com sucesso","Reset commands to default settings":"Resetar comandos para configurações padrão",Clear:"Limpar","Remove all commands from this configuration.":"Remover todos os comandos desta configuração.","Are you sure you want to clear all commands under the current style?":"Tem certeza que deseja limpar todos os comandos sob o estilo atual?","Current style commands have been cleared":"Comandos do estilo atual foram limpos","Manage Commands":"Gerenciar Comandos","Reset or clear all commands in this configuration":"Resetar ou limpar todos os comandos nesta configuração","One-click Clear":"Limpar com um clique","Import Commands from Other Styles":"Importar Comandos de Outros Estilos","Copy commands from another style configuration.":"Copiar comandos de outra configuração de estilo.","Main menu only":"Apenas para o menu principal","This import will update:":"Esta importação irá atualizar:","Custom commands":"Comandos Personalizados","Toolbar commands":"Comandos da Barra de Ferramentas","General settings":"Configurações Gerais","Please paste configuration data first":"Por favor coloque os dados da configuração primeiro","Invalid import data format":"Formato de dados de importação inválido","Import From":"Importar de","This import will:":"Esta importação irá:","Update general settings":"Atualizar configurações gerais","Update Main Menu Commands":"Atualizar Comandos do Menu Principal","Update Custom Commands":"Atualizar Comandos Personalizados","Update Following Style Commands":"Atualizar Comandos de Estilo Contextual","Update Top Style Commands":"Atualizar Comandos de Estilo de Topo","Update Fixed Style Commands":"Atualizar Comandos de Estilo Fixo","Update Mobile Style Commands":"Atualizar Comandos de Estilo Mobile","Clear all Main Menu Commands":"Limpar todos os Comandos do Menu Principal","Clear all Custom Commands":"Limpar todos os Comandos Personalizados","Clear all Following Style Commands":"Limpar todos os Comandos de Estilo Contextual","Clear all Top Style Commands":"Limpar todos os Comandos de Estilo de Topo","Clear all Fixed Style Commands":"Limpar todos os Comandos de Estilo Fixo","Clear all Mobile Style Commands":"Limpar todos os Comandos de Estilo Mobile","Overwrite Mode (Replace settings with imported ones)":"Modo de Sobrescrever (Substituir configurações com as importadas)","Warning: Overwrite mode will replace existing settings with imported ones.":"Aviso: O modo de sobrescrever irá substituir todas as suas configurações atuais com as importadas.","Warning: Update mode will add new items and update existing ones.":"Aviso: O modo de atualização irá adicionar novos itens e atualizar os existentes com base na configuração importada.","Enable Multiple Config":"Habilitar Múltiplas Configurações","Set Multiple Config to:":"Definir Múltiplas Configurações para:",Enable:"Habilitar",Disable:"Desabilitar","Set Position Style to:":"Definir Estilo de Posição para:",Following:"Contextual",Top:"Topo",Fixed:"Fixo",Mobile:"Mobile","All commands":"Todos os Comandos","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ O modo de sobrescrever irá substituir todas as suas configurações atuais com as importadas.","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ O modo de atualização irá adicionar novos itens e atualizar os existentes com base na configuração importada.","Do you want to continue?":"Deseja continuar?","Imported settings:":"Configurações importadas:","Imported commands:":"Comandos importados:","Disable toolbar for this view":"Desabilitar barra de ferramentas para esta visualização","Enable toolbar for this view":"Habilitar barra de ferramentas para esta visualização","Manage all view types":"Gerenciar todos os tipos de visualização","Current View: ":"Visualização Atual: ","Appearance Style":"Estilo de Aparência","Position Settings":"Configurações de Posição","All commands have been removed.":"Todos os comandos foram removidos.","Join the Community":"Juntar-se à Comunidade","Share your toolbar settings and styles in our":"Compartilhe suas configurações e estilos da barra de ferramentas em nossa","Get inspired by what others have created or showcase your own customizations.":"Inspire-se com o que outros criaram ou mostre suas próprias personalizações.","Toolbar Preview (With a hypothetical command configuration.)":"Visualização da barra de ferramentas (com uma configuração de comandos hipotética).","Toolbar Theme":"Estilo da Barra de Ferramentas","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"Selecione um estilo de barra de ferramentas pré-definido, automaticamente definindo a cor de fundo, cor do ícone e tamanho para o estilo selecionado.","Toolbar Background Color":"Cor de Fundo da Barra de Ferramentas","Set the background color of the toolbar.":"Definir a cor de fundo da barra de ferramentas.","Toolbar Icon Color":"Cor do Ícone da Barra de Ferramentas","Set the color of the toolbar icon.":"Definir a cor do ícone da barra de ferramentas.","Toolbar Icon Size":"Tamanho do Ícone da Barra de Ferramentas","Set the size of the toolbar icon (px); default: 18px":"Definir o tamanho do ícone da barra de ferramentas (px); padrão: 18px","Custom Theme":"Estilo Personalizado","Fixed Position Offset":"Deslocamento Fixo","Choose the offset of the Editing Toolbar in the fixed position.":"Escolha o deslocamento da Barra de Edição na posição fixa.","Renumber List":"Renumerar Lista","Fetch Remote Title":"Obter Título Remoto","Please enter a URL first":"Por favor digite uma URL primeiro","Failed to fetch title for":"Falha ao obter título para","Link Title (optional)":"Título do Link (opcional)","Unable to detect editor width":"Não foi possível detectar a largura do editor","Fit Editor Width":"Ajustar Largura do Editor","Please execute a format command or select format text first, then enable the format brush":"Execute um comando de formatação ou selecione um texto já formatado antes de ativar o pincel de formatação.","Use \\n to represent line breaks":"Use \\n para representar quebras de linha","Use ↵ to represent line breaks":"Use ↵ para representar quebras de linha","Top Toolbar":"Barra de Ferramentas de Topo","Enable the toolbar positioned at the top.":"Habilitar a barra de ferramentas posicionada no topo.","Following Toolbar":"Barra de Ferramentas Contextual","Enable the toolbar that appears upon text selection.":"Habilitar a barra de ferramentas que aparece ao selecionar texto.","Fixed Toolbar":"Barra de Ferramentas Fixa","Enable the toolbar whose position may be fixed where you please.":"Habilitar a barra de ferramentas cuja posição pode ser fixa onde você preferir.","Toolbar Settings":"Configurações da Barra de Ferramentas","Choose which toolbar style's appearance you want to edit.":"Escolha qual estilo de barra de ferramentas você deseja editar.","Vertical Split":"Divisão Vertical"},ro:{},ru:{},tr:{},"zh-cn":Zr,"zh-tw":Kr}[e.moment.locale()];function Xr(e){return Jr&&Jr[e]||Gr[e]}class Qr extends e.FuzzySuggestModal{constructor(e,t,i=!1,o,n){super(e.app),this.customCallback=null,this.plugin=e,this.command=t,this.issub=i,this.customCallback=o||null,this.setPlaceholder(Xr("Choose an icon")),this.currentEditingConfig=n||""}capitalJoin(e){return e.split(" ").map(e=>e[0].toUpperCase()+e.substring(1)).join(" ")}getItems(){return t}getItemText(e){return this.capitalJoin(e.replace("feather-","").replace("remix-","").replace("bx-","").replace(/([A-Z])/g," $1").trim().replace(/-/gi," "))}renderSuggestion(t,i){const o=createSpan({cls:"editingToolbarIconPick"});i.appendChild(o),e.setIcon(o,t.item),super.renderSuggestion(t,i)}async onChooseItem(e){if("Custom"===e)return this.customCallback?void new ea(this.app,this.plugin,{id:this.command.id,name:this.command.name,icon:""},this.issub,e=>{this.customCallback(e)}).open():void new ea(this.app,this.plugin,this.command,this.issub,null,this.currentEditingConfig).open();if(this.customCallback)return void this.customCallback(e);const t=this.plugin.getCurrentCommands(this.currentEditingConfig);if(this.command.icon){let i=Fr(this.plugin,this.command,this.issub,t);this.issub?t[i.index].SubmenuCommands[i.subindex].icon=e:t[i.index].icon=e,this.plugin.updateCurrentCommands(t,this.currentEditingConfig)}else this.command.icon=e,t.push(this.command),this.plugin.updateCurrentCommands(t,this.currentEditingConfig);await this.plugin.saveSettings(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100),console.log(`%c命令 '${this.command.name}' 已添加到编辑工具栏`,"color: Violet")}}class ea extends e.Modal{constructor(e,t,i,o,n,s){super(e),this.customCallback=null,this.plugin=t,this.item=i,this.issub=o,this.customCallback=n||null,this.currentEditingConfig=s||"",this.containerEl.addClass("editingToolbar-Modal"),this.containerEl.addClass("customicon")}onOpen(){const{contentEl:e}=this;e.createEl("b",{text:Xr("Enter the icon code, format as .... ")});const t=document.createElement("textarea");t.className="wideInputPromptInputEl",t.placeholder="",t.value=this.item.icon||"",t.style.width="100%",t.style.height="200px",e.appendChild(t),t.addEventListener("input",async()=>{const e=t.value;if(this.customCallback)return void(this.item.icon=e);this.item.icon=e;const i=this.plugin.getCurrentCommands(this.currentEditingConfig),o=Fr(this.plugin,this.item,this.issub,i);if(this.issub){let t=o.subindex;-1===t?this.plugin.settings.menuCommands[o.index].SubmenuCommands.push(this.item):this.plugin.settings.menuCommands[o.index].SubmenuCommands[t].icon=e}else{let e=o.index;-1===e?this.plugin.settings.menuCommands.push(this.item):this.plugin.settings.menuCommands[e].icon=this.item.icon}await this.plugin.saveSettings()}),this.submitEnterCallback&&t.addEventListener("keydown",this.submitEnterCallback)}onClose(){const{contentEl:e}=this;e.empty(),this.customCallback?this.customCallback(this.item.icon||""):setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100)}}class ta extends e.FuzzySuggestModal{constructor(e,t){super(e.app),this.plugin=e,this.app,this.setPlaceholder(Xr("Choose a command")),this.currentEditingConfig=t||""}getItems(){return app.commands.listCommands()}getItemText(e){return e.name}async onChooseItem(t){const i=this.plugin.getCurrentCommands(this.currentEditingConfig);i.findIndex(e=>e.id==t.id)>-1?new e.Notice(Xr("The command")+t.name+Xr("already exists"),3e3):t.icon?(i.push(t),this.plugin.updateCurrentCommands(i,this.currentEditingConfig),await this.plugin.saveSettings(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100),console.log(`%c命令 '${t.name}' 已添加到编辑工具栏`,"color: Violet")):new Qr(this.plugin,t,!1,null,this.currentEditingConfig).open()}}class ia extends e.Modal{constructor(e,t,i,o,n){super(t.app),this.plugin=t,this.item=i,this.issub=o,this.currentEditingConfig=n||"",this.containerEl.addClass("editingToolbar-Modal"),this.containerEl.addClass("changename")}onOpen(){const{contentEl:t}=this;t.createEl("b",{text:Xr("Please enter a new name: ")});const i=new e.TextComponent(t);i.inputEl.classList.add("InputPromptInputEl"),i.setPlaceholder("").setValue(this.item.name??"").onChange(e.debounce(async e=>{const t=this.plugin.getCurrentCommands(this.currentEditingConfig);let i=Fr(this.plugin,this.item,this.issub,t);if(this.item.name=e,this.issub){let o=i.subindex;-1===o?t[i.index].SubmenuCommands.push(this.item):t[i.index].SubmenuCommands[o].name=e}else{let e=i.index;-1===e?t.push(this.item):t[e].name=this.item.name}this.plugin.updateCurrentCommands(t),await this.plugin.saveSettings()},100,!0)).inputEl.addEventListener("keydown",this.submitEnterCallback)}onClose(){const{contentEl:e}=this;e.empty(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100)}}class oa extends e.Modal{constructor(e,t){super(t.app),this.needSave=!1,this.plugin=t,this.containerEl.addClass("editingToolbar-Modal")}onOpen(){const{contentEl:t}=this;t.createEl("p",{text:Xr("Drag the slider to move the position")});const i=t.createDiv({cls:"slider-container"}),o=i.createDiv({cls:"vertical-slider-container"});o.createEl("p",{text:Xr("Vertical Position")});const n=i.createDiv({cls:"horizontal-slider-container"});n.createEl("p",{text:Xr("Horizontal Position")});const s=i.createDiv({cls:"columns-slider-container"});s.createEl("p",{text:Xr("Editing Toolbar Columns")});const r=document.body.clientHeight,a=document.body.clientWidth,l=Math.floor(r/3),c=-Math.floor(r),d=Math.floor(a/2),h=-Math.floor(a/2),u=new e.SliderComponent(o).setLimits(c,l,5).setValue(this.plugin.settings.verticalPosition||0).onChange(e.debounce(e=>{this.needSave=!0,this.plugin.settings.verticalPosition=e,jr(this.plugin.settings)},100,!0)).setDynamicTooltip(),p=new e.SliderComponent(n).setLimits(h,d,10).setValue(this.plugin.settings.horizontalPosition||0).onChange(e.debounce(e=>{this.needSave=!0,this.plugin.settings.horizontalPosition=e,Yr(this.plugin.settings)},100,!0)).setDynamicTooltip(),m=new e.SliderComponent(s).setLimits(1,32,1).setValue(this.plugin.settings.cMenuNumRows||12).onChange(e.debounce(async e=>{this.needSave=!0,this.plugin.settings.cMenuNumRows=e,await this.plugin.saveSettings(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100)},100,!0)).setDynamicTooltip();i.createDiv({cls:"reset-container"}).createEl("button",{text:Xr("Reset"),cls:"reset-button"}).addEventListener("click",()=>{this.needSave=!0,u.setValue(0),p.setValue(0),m.setValue(12),this.plugin.settings.verticalPosition=0,this.plugin.settings.horizontalPosition=0,this.plugin.settings.cMenuNumRows=12,jr(this.plugin.settings),Yr(this.plugin.settings)})}async onClose(){const{contentEl:e}=this;e.empty(),this.needSave&&await this.plugin.saveSettings()}}const na=["body","workspace"],sa=["default","tiny","glass","custom"],ra=["following","top","fixed"],aa={lastVersion:"0.0.0",aestheticStyle:"default",positionStyle:"top",menuCommands:[{id:"editing-toolbar:editor-undo",name:"Undo Edit",icon:"undo-glyph"},{id:"editing-toolbar:editor-redo",name:"Redo Edit",icon:"redo-glyph"},{id:"editing-toolbar:toggle-format-brush",name:"Format Brush",icon:"paintbrush"},{id:"editing-toolbar:format-eraser",name:"Clear Text Formatting",icon:"eraser"},{id:"editing-toolbar:header2-text",name:"Header 2",icon:"header-2"},{id:"editing-toolbar:header3-text",name:"Header 3",icon:"header-3"},{id:"SubmenuCommands-header",name:"submenu",icon:"header-n",SubmenuCommands:[{id:"editing-toolbar:header1-text",name:"Header 1",icon:"header-1"},{id:"editing-toolbar:header4-text",name:"Header 4",icon:"header-4"},{id:"editing-toolbar:header5-text",name:"Header 5",icon:"header-5"},{id:"editing-toolbar:header6-text",name:"Header 6",icon:"header-6"}]},{id:"editing-toolbar:toggle-bold",name:"Bold",icon:"bold-glyph"},{id:"editing-toolbar:toggle-italics",name:"Italic",icon:"italic-glyph"},{id:"editing-toolbar:toggle-strikethrough",name:"Strikethrough",icon:"strikethrough-glyph"},{id:"editing-toolbar:underline",name:"Underline",icon:"underline-glyph"},{id:"editing-toolbar:toggle-highlight",name:"Highlight",icon:"highlight-glyph"},{id:"SubmenuCommands-text-tools",name:"Text Tools",icon:"box",menuType:"dropdown",SubmenuCommands:[{id:"editing-toolbar:get-plain-text",name:"Get Plain Text",icon:"lucide-file-text"},{id:"editing-toolbar:smart-symbols",name:"Full Half Converter",icon:"lucide-at-sign"},{id:"editingToolbar-Divider-Line",name:"Line Operations",icon:"vertical-split"},{id:"editing-toolbar:insert-blank-lines",name:"Insert Blank Lines",icon:"lucide-space"},{id:"editing-toolbar:remove-blank-lines",name:"Remove Blank Lines",icon:"lucide-minimize-2"},{id:"editing-toolbar:split-lines",name:"Split Lines",icon:"lucide-split"},{id:"editing-toolbar:merge-lines",name:"Merge Lines",icon:"lucide-merge"},{id:"editing-toolbar:dedupe-lines",name:"Dedupe Lines",icon:"lucide-filter"},{id:"editingToolbar-Divider-Line",name:"Text Processing",icon:"vertical-split"},{id:"editing-toolbar:add-wrap",name:"Add Prefix/Suffix",icon:"lucide-wrap-text"},{id:"editing-toolbar:number-lines",name:"Number Lines (Custom)",icon:"lucide-list-ordered"},{id:"editing-toolbar:remove-whitespace-trim",name:"Trim Line Ends",icon:"lucide-scissors"},{id:"editing-toolbar:remove-whitespace-compress",name:"Shrink Extra Spaces",icon:"lucide-minimize"},{id:"editing-toolbar:remove-whitespace-all",name:"Remove All Whitespace",icon:"lucide-eraser"},{id:"editingToolbar-Divider-Line",name:"Advanced Tools",icon:"vertical-split"},{id:"editing-toolbar:list-to-table",name:"List to Table",icon:"lucide-table"},{id:"editing-toolbar:table-to-list",name:"Table to List",icon:"lucide-list"},{id:"editing-toolbar:extract-between",name:"Extract Between Strings",icon:"lucide-brackets"}]},{id:"SubmenuCommands-lucdf3en5",name:"submenu",icon:"edit",SubmenuCommands:[{id:"editing-toolbar:editor-cut",name:"Cut",icon:"lucide-scissors"},{id:"editing-toolbar:editor-copy",name:"Copy",icon:"lucide-copy"},{id:"editing-toolbar:editor-paste",name:"Paste",icon:"lucide-clipboard-type"},{id:"editing-toolbar:editor:swap-line-down",name:"Swap Line Down",icon:"lucide-corner-right-down"},{id:"editing-toolbar:editor:swap-line-up",name:"Swap Line Up",icon:"lucide-corner-right-up"}]},{id:"editing-toolbar:editor:attach-file",name:"Attach File",icon:"lucide-paperclip"},{id:"editing-toolbar:editor:insert-table",name:"Insert Table",icon:"lucide-table"},{id:"editing-toolbar:editor:cycle-list-checklist",name:"Cycle List and Checklist",icon:"check-circle"},{id:"SubmenuCommands-luc8efull",name:"submenu",icon:"message-square",SubmenuCommands:[{id:"editing-toolbar:editor:toggle-blockquote",name:"Blockquote",icon:"lucide-text-quote"},{id:"editing-toolbar:insert-callout",name:"Callout",icon:"lucide-quote"}]},{id:"SubmenuCommands-mdcmder",name:"submenu",icon:'',SubmenuCommands:[{id:"editing-toolbar:superscript",name:"Superscript",icon:"superscript-glyph"},{id:"editing-toolbar:subscript",name:"Subscript",icon:"subscript-glyph"},{id:"editing-toolbar:editor:toggle-code",name:"Inline Code",icon:"code-glyph"},{id:"editing-toolbar:codeblock",name:"Code Block",icon:"codeblock-glyph"},{id:"editing-toolbar:editor:insert-wikilink",name:"Wikilink",icon:''},{id:"editing-toolbar:editor:insert-embed",name:"Embed",icon:"note-glyph"},{id:"editing-toolbar:insert-link",name:"Link",icon:"link-glyph"},{id:"editing-toolbar:hrline",name:"Horizontal Divider",icon:''},{id:"editing-toolbar:toggle-inline-math",name:"Inline Math",icon:"lucide-sigma"},{id:"editing-toolbar:editor:insert-mathblock",name:"MathBlock",icon:"lucide-sigma-square"}]},{id:"SubmenuCommands-list",name:"submenu-list",icon:"bullet-list-glyph",SubmenuCommands:[{id:"editing-toolbar:editor:toggle-checklist-status",name:"Checklist",icon:"checkbox-glyph"},{id:"editing-toolbar:renumber-ordered-list",name:"Renumber Ordered List",icon:"list-restart"},{id:"editing-toolbar:toggle-numbered-list",name:"Ordered List",icon:''},{id:"editing-toolbar:toggle-bullet-list",name:"Unordered List",icon:''},{id:"editing-toolbar:undent-list",name:"Unindent List",icon:''},{id:"editing-toolbar:indent-list",name:"Indent list",icon:''}]},{id:"SubmenuCommands-aligin",name:"submenu-aligin",icon:'',SubmenuCommands:[{id:"editing-toolbar:justify",name:"Justify Text",icon:''},{id:"editing-toolbar:left",name:"Align Text Left",icon:''},{id:"editing-toolbar:center",name:"Center Text",icon:''},{id:"editing-toolbar:right",name:"Align Text Right",icon:''}]},{id:"editing-toolbar:change-font-color",name:"Change Font Color",icon:''},{id:"editing-toolbar:change-background-color",name:"Change Background Color",icon:''},{id:"editing-toolbar:fullscreen-focus",name:"Fullscreen Focus Mode",icon:"fullscreen"},{id:"editing-toolbar:workplace-fullscreen-focus",name:"Workplace Fullscreen",icon:"exit-fullscreen"}],followingCommands:[],topCommands:[],fixedCommands:[],mobileCommands:[],enableMultipleConfig:!1,enableTopToolbar:!1,enableFollowingToolbar:!1,enableFixedToolbar:!1,appendMethod:"workspace",shouldShowMenuOnSelect:!1,cMenuVisibility:!0,cMenuBottomValue:4.25,cMenuNumRows:12,cMenuWidth:610,cMenuFontColor:"#2DC26B",cMenuBackgroundColor:"#d3f8b6",autohide:!1,Iscentered:!1,custom_bg1:"#FFB78B8C",custom_bg2:"#CDF4698C",custom_bg3:"#A0CCF68C",custom_bg4:"#F0A7D88C",custom_bg5:"#ADEFEF8C",custom_fc1:"#D83931",custom_fc2:"#DE7802",custom_fc3:"#245BDB",custom_fc4:"#6425D0",custom_fc5:"#646A73",isLoadOnMobile:!1,horizontalPosition:0,verticalPosition:0,formatBrushes:{},customCommands:[],viewTypeSettings:{},appearanceByStyle:{top:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"},following:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"},fixed:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"},mobile:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"}},toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,useCurrentLineForRegex:!1};class la{static isAllowedViewType(e,t){if(!e)return!1;const i=e.getViewType(),o=window.app?.plugins?.plugins?.["editing-toolbar"];if(o?.settings?.viewTypeSettings&&void 0!==o.settings.viewTypeSettings[i])return o.settings.viewTypeSettings[i];return(t||["markdown","canvas","thino_view","meld-encrypted-view"]).includes(i)}static isSourceMode(e){return!!e&&"source"===e.getMode?.()}}let ca;const da={markdown:".markdown-source-view",thino_view:".markdown-source-view",canvas:".canvas-wrapper",excalidraw:".view-header",image:".image-container",pdf:".view-content",meld_encrypted_view:".markdown-source-view"};function ha(t){ca=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const i=function(){const t=[];t.push(app.workspace.rootSplit);const i=app.workspace.floatingSplit;return i?.children.forEach(i=>{i instanceof e.WorkspaceWindow&&t.push(i)}),t}(),o=e=>{const t=e.querySelectorAll(".editingToolbarModalBar"),i=e.querySelectorAll(".editingToolbarPopoverBar");t.forEach(e=>{e.firstChild&&e.removeChild(e.firstChild),e.remove()}),i.forEach(e=>{e.firstChild&&e.removeChild(e.firstChild),e.remove()})};o(ca),i&&i.forEach(e=>{e?.containerEl&&o(e.containerEl)}),t&&t.clearToolbarCache()}function ua(t,i,o){ca=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const n=o||i.positionStyle||i.settings.positionStyle||"top";if("top"!==n){const e=i.getCachedToolbar(n);if(e)return e}const s=`.editingToolbarModalBar[data-toolbar-style="${n}"]`;let r=null;return r="top"===n?t.workspace.activeLeaf?.view.containerEl?.querySelector(s)||null:ca.querySelector(s),r&&"top"!==n&&i.setCachedToolbar(n,r),r||null}const pa=(e,t)=>t.reduce((e,t)=>e&&"undefined"!==e[t]?e[t]:void 0,e);function ma(e,t){return e&&void 0!==e[1][0]?t+e.flat(2).join("+").replace("Mod","Ctrl")+t:t+"–"+t}function ga(e,t,i=!0){let o=e.commands.findCommand(t),n=i?"*":"";if(o){let t=o.hotkeys?[[pa(o.hotkeys,[0,"modifiers"])],[pa(o.hotkeys,[0,"key"])]]:void 0,i=e.hotkeyManager.customKeys[o.id];var s=i?[[pa(i,[0,"modifiers"])],[pa(i,[0,"key"])]]:void 0;return s?ma(s,n):ma(t,"")}return"–"}function fa(e){return/<[^>]+>/g.test(e)}function ba(t,i,o){ca=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const n=i.commandsManager.getActiveEditor();let s=ua(t,i),r=s?.querySelector("#"+o);if(r){let e=r.rows,t=e.length;for(let s=1;s{t.style.fill=e})}else if("x-backgroundcolor-picker-table"==o){i.settings.cMenuBackgroundColor=e,zr(e,n),ca.querySelectorAll("#change-background-color-icon").forEach(t=>{t.style.fill=e})}i.saveSettings()}}}}}const ya=function(e){let t=e;if(/^(rgb|RGB)/.test(t)){let e=t.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(","),i="#";for(let t=0;t\s*\[\![\w\s]*\]/m)){let e=i.split("\n"),o=[],n=!1,s=0,r=!1;for(let t=0;t+)\s*\[\!([\w\s]*)\]\s*(.*?)$/);if(!a||r)if(n){let e=i.match(/^(>+)\s*/);if(e&&e[1].length>=s){let e=i.replace(new RegExp(`^>{${s}}\\s*`),"");o.push(e)}else n=!1,o.push(i)}else o.push(i);else s=a[1].length,r=!0,a[3].trim()&&o.push(a[3].trim()),n=!0}return void t.replaceSelection(o.join("\n"))}i=i.replace(/(^#+\s|^#(?=\s)|^\>|^\- \[( |x)\]|^\+ |\<[^\<\>]+?\>|^1\. |^\s*\- |^\-+$|^\*+$)/gm,""),i=i.replace(/^[ ]+|[ ]+$/gm,""),i=i.replace(/\!?\[\[([^\[\]\|]*\|)*([^\(\)\[\]]+)\]\]/g,"$2"),i=i.replace(/\!?\[+([^\[\]\(\)]+)\]+\(([^\(\)]+)\)/g,"$1"),i=i.replace(/`([^`]+)`/g,"$1"),i=i.replace(/_([^_]+)_/g,"$1"),i=i.replace(/==([^=]+)==/g,"$1"),i=i.replace(/\*\*\*([^\*]+)\*\*\*/g,"$1"),i=i.replace(/\*\*?([^\*]+)\*\*?/g,"$1"),i=i.replace(/~~([^~]+)~~/g,"$1"),t.replaceSelection(i)}function Ca(t,i,o,n,s=!1){let r=ua(t,o,"following");const a=t.workspace.getActiveViewOfType(e.ItemView);if(!la.isAllowedViewType(a))return void(r&&(r.style.visibility="hidden"));if(!(o.settings.enableFollowingToolbar||!o.settings.enableTopToolbar&&!o.settings.enableFixedToolbar&&"following"===o.positionStyle))return;const l=a?.getViewType(),c="markdown"===l;let d=30;if(d="tiny"===o.settings.aestheticStyle?30:i+14,c)if(la.isSourceMode(a)){if(r){const e=s||n.somethingSelected();r.style.visibility=e?"visible":"hidden","visible"===r.style.visibility&&(r.style.height=d+"px",r.addClass("editingToolbarFlex"),r.removeClass("editingToolbarGrid"),function(e,t){const i=t.containerEl.getBoundingClientRect(),o=e.offsetWidth,n=e.offsetHeight,s=12,r=window.innerWidth,a=t.getCursor("from");t.getCursor("to");const l=t.coordsAtPos(a),c=ca.getElementsByClassName("mod-left-split")[0]?.clientWidth??0,d=ca.getElementsByClassName("side-dock-ribbon mod-left")[0]?.clientWidth??0,h=c+d;let u=l.left-h-28;u+o>r-h&&(u=r-h-o-s);u=Math.max(0,u);let p=function(e,t,i,o){const n=e.getCursor("from"),s=e.getCursor("to"),r=e.coordsAtPos(s),a=n.line===s.line;let l=t.top-o-10;if(a)l<=i.top&&(l=r.bottom+10);else{if(e.getCursor("head").ch==e.getCursor("from").ch)l=t.top-o-10,l<=i.top&&(l=i.top+2*o);else{const t=(e=>{let t,i=e.getCursor("head");if(e.getCursor("head").ch!==e.getCursor("from").ch&&(i.ch=Math.max(0,i.ch-1)),e.cursorCoords)t=e.cursorCoords(!0,"window");else{if(!e.coordsAtPos)return;{const o=e.posToOffset(i);t=e.cm.coordsAtPos?.(o)??e.coordsAtPos(o)}}return t})(e);l=t.bottom+10,l>=i.bottom-o&&(l=i.bottom-2*o)}}return l}(t,l,i,n);p=Math.max(0,p),e.style.left=`${u}px`,e.style.top=`${p}px`}(r,n))}}else r&&(r.style.visibility="hidden");else r&&(r.style.visibility="visible",r.style.height=d+"px",r.addClass("editingToolbarFlex"),r.removeClass("editingToolbarGrid"))}function xa(t,i,o){const n=i.settings;if(ca=e.requireApiVersion("0.15.0")?activeWindow.document:window.document,!o){const e=[];if(n.enableTopToolbar&&e.push("top"),n.enableFollowingToolbar&&e.push("following"),n.enableFixedToolbar&&e.push("fixed"),0===e.length){const t=i.positionStyle||i.settings.positionStyle||"top";e.push(t)}return void e.forEach(e=>{xa(t,i,e)})}const s=o;if(!n.cMenuVisibility){const e=ua(t,i,s);return void(e&&(e.style.display="none"))}const r=(n.appearanceByStyle||{})[s]||{},a=r.toolbarIconSize??i.toolbarIconSize??18,l=r.aestheticStyle??n.aestheticStyle??"default",c="custom"===l?r.toolbarBackgroundColor??n.toolbarBackgroundColor:void 0,d="custom"===l?r.toolbarIconColor??n.toolbarIconColor:void 0,h={default:"editingToolbarDefaultAesthetic",tiny:"editingToolbarTinyAesthetic",glass:"editingToolbarGlassAesthetic",custom:"editingToolbarCustomAesthetic"};!function(){function o(e,t){Object.values(h).forEach(t=>{e.removeClass(t)});const i=h[t]||h.default;e.addClass(i)}const r=()=>{let r=0,h=0,u=a+8,p=createEl("div");if(p)if(p.addClass("editingToolbarModalBar"),p.setAttribute("data-toolbar-style",s),"top"===s)p.className+=" top",n.autohide&&(p.className+=" autohide"),n.Iscentered&&(p.className+=" centered");else if("following"===s)p.style.visibility="hidden";else if("fixed"===s){const e=a||18,t=`left: calc(50% - calc(${n.cMenuNumRows*(e+10)}px / 2));\n bottom: 4.25em; \n grid-template-columns: repeat(${n.cMenuNumRows}, ${e+10}px);\n gap: ${(e-18)/4}px`;p.setAttribute("style",t)}p.setAttribute("id","editingToolbarModalBar");let m=createEl("div");if(m.addClass("editingToolbarpopover"),m.addClass("editingToolbarTinyAesthetic"),m.addClass("editingToolbarPopoverBar"),m.setAttribute("data-toolbar-style",s),m.setAttribute("id","editingToolbarPopoverBar"),m.style.visibility="hidden",m.style.height="0",o(p,l),o(m,l),c&&(p.style.setProperty("--editing-toolbar-background-color",c),m.style.setProperty("--editing-toolbar-background-color",c)),d&&(p.style.setProperty("--editing-toolbar-icon-color",d),m.style.setProperty("--editing-toolbar-icon-color",d)),a&&(p.style.setProperty("--toolbar-icon-size",`${a}px`),m.style.setProperty("--toolbar-icon-size",`${a}px`)),"top"===s){let e=t.workspace.activeLeaf.view.containerEl,i=null;const o=t.workspace.activeLeaf.view.getViewType(),n=da[o];if(n&&(i=e?.querySelector(n)),!i){const t=e?.querySelector(".view-content");if(t){const e=t.querySelectorAll(":scope > div");i=e.length>0?e[0]:t}}if(!i)return void console.log("Editing Toolbar: Failed to find target DOM element for toolbar insertion");e?.querySelector("#editingToolbarPopoverBar")||("excalidraw"==o?i.insertAdjacentElement("afterend",m):i.insertAdjacentElement("afterbegin",m)),"excalidraw"==o?i.insertAdjacentElement("afterend",p):i.insertAdjacentElement("afterbegin",p),h=i?.offsetWidth}else"body"==n.appendMethod?ca.body.appendChild(p):"workspace"==n.appendMethod&&ca.body?.querySelector(".mod-vertical.mod-root").insertAdjacentElement("afterbegin",p);let g=t.workspace.activeLeaf.view.containerEl?.querySelector("#editingToolbarPopoverBar");i.getCurrentCommands(s).forEach((o,a)=>{let l;if("SubmenuCommands"in o){let c;r>=h-7*u&&h>100?(i.setIS_MORE_Button(!0),c=new e.ButtonComponent(g)):c=new e.ButtonComponent(p),c.setClass("editingToolbarCommandsubItem"+a),a>=n.cMenuNumRows?c.setClass("editingToolbarSecond"):"top"!==s&&c.buttonEl.setAttribute("aria-label-position","top"),fa(o.icon)?c.buttonEl.innerHTML=o.icon:c.setIcon(o.icon),r+=u+2;if("dropdown"===(o.menuType||"submenu")){c.setClass("editingToolbarDropdownButton");let r=ga(t,o.id);l="–"==r?o.name:o.name+"("+r+")",c.setTooltip(l),c.onClick(r=>{const a=new e.Menu;o.SubmenuCommands.forEach(e=>{"editingToolbar-Divider-Line"===e.id?(a.addSeparator(),a.addItem(t=>{t.setTitle(Xr(e.name)).setIcon("").setDisabled(!0)})):a.addItem(o=>{const r=ga(t,e.id,!1),a=Xr(e.name),l="–"!==r?`${a}`:a;if(o.setTitle(l).setIcon(e.icon).onClick(()=>{t.commands.executeCommandById(e.id);const o=i.commandsManager.getActiveEditor(),r=o&&o.somethingSelected();0==n.cMenuVisibility?p.style.visibility="hidden":"following"===s?r||(p.style.visibility="hidden"):p.style.visibility="visible"}),"–"!==r){o.dom.createSpan({cls:"menu-item-hotkey"}).setText(r)}})}),a.dom.addClass("editing-toolbar-dropdown-menu"),a.showAtMouseEvent(r)})}else{let r=function(e){let t=createEl("div");return t.addClass(e),t}("subitem");r&&o.SubmenuCommands.forEach(o=>{let d=ga(t,o.id);l="–"==d?o.name:o.name+"("+d+")";let h=new e.ButtonComponent(r).setTooltip(l).setClass("menu-item").onClick(()=>{t.commands.executeCommandById(o.id);const e=i.commandsManager.getActiveEditor(),r=e&&e.somethingSelected();0==n.cMenuVisibility?p.style.visibility="hidden":"following"===s?r||(p.style.visibility="hidden"):p.style.visibility="visible"});a{t.commands.executeCommandById(o.id);const e=i.commandsManager.getActiveEditor(),r=e&&e.somethingSelected();0==n.cMenuVisibility?p.style.visibility="hidden":"following"===s?r||(p.style.visibility="hidden"):p.style.visibility="visible"}),fa(o.icon)?a.buttonEl.innerHTML=o.icon:a.setIcon(o.icon),r+=u;let l=createEl("div");if(l.addClass("subitem"),l){l.innerHTML=function(e){return`
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Theme Colors
Standard Colors
Custom Font Colors
\n
\n
`}(i),a.buttonEl.insertAdjacentElement("afterbegin",l),ba(t,i,"x-color-picker-table");let o=l.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(o).setIcon("paintbrush").setTooltip(Xr("Format Brush")).onClick(()=>{wa(i),i.setEN_FontColor_Format_Brush(!0),i.Temp_Notice=new e.Notice(Xr("Font-Color formatting brush ON!"),0)}),new e.ButtonComponent(o).setIcon("palette").setTooltip(Xr("Custom Font Color")).onClick(()=>{t.setting.open(),t.setting.openTabById("editing-toolbar"),setTimeout(()=>{const e=t.setting.activeTab.containerEl.querySelector(".editing-toolbar-tabs");if(e){const i=e.children[1];i?.click(),setTimeout(()=>{let e=t.setting.activeTab.containerEl.querySelector(".custom_font");e&&e.addClass?.("toolbar-cta")},100)}},200)})}}else if("editing-toolbar:change-background-color"==o.id){let a=new e.ButtonComponent(p);a.setClass("editingToolbarCommandsubItem-font-color").setTooltip(Xr("Background Color")).onClick(()=>{t.commands.executeCommandById(o.id);const e=i.commandsManager.getActiveEditor(),r=e&&e.somethingSelected();0==n.cMenuVisibility?p.style.visibility="hidden":"following"===s?r||(p.style.visibility="hidden"):p.style.visibility="visible"}),fa(o.icon)?a.buttonEl.innerHTML=o.icon:a.setIcon(o.icon),r+=u;let l=createEl("div");if(l.addClass("subitem"),l){l.innerHTML=function(e){return`
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Translucent Colors
Highlighter Colors
Custom Colors
\n
\n
`}(i),a.buttonEl.insertAdjacentElement("afterbegin",l),ba(t,i,"x-backgroundcolor-picker-table");let o=l.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(o).setIcon("paintbrush").setTooltip(Xr("Format Brush")).onClick(()=>{wa(i),i.setEN_BG_Format_Brush(!0),i.Temp_Notice=new e.Notice(Xr("Font-Color formatting brush ON!"),0)}),new e.ButtonComponent(o).setIcon("palette").setTooltip(Xr("Custom Backgroud Color")).onClick(()=>{t.setting.open(),t.setting.openTabById("editing-toolbar"),setTimeout(()=>{const e=t.setting.activeTab.containerEl.querySelector(".editing-toolbar-tabs");if(e){const i=e.children[1];i?.click(),setTimeout(()=>{let e=t.setting.activeTab.containerEl.querySelector(".custom_bg");e&&e.addClass?.("toolbar-cta")},100)}},200)})}}else{let c;r>=h-7*u&&h>100?(i.setIS_MORE_Button(!0),c=new e.ButtonComponent(g)):c=new e.ButtonComponent(p);let d=ga(t,o.id);l="–"==d?o.name:o.name+"("+d+")",c.setTooltip(l).onClick(()=>{t.commands.executeCommandById(o.id);const e=i.commandsManager.getActiveEditor(),r=e&&e.somethingSelected();0==n.cMenuVisibility?p.style.visibility="hidden":"following"===s?r||(p.style.visibility="hidden"):p.style.visibility="visible"}),c.setClass("editingToolbarCommandItem"),a>=n.cMenuNumRows?c.setClass("editingToolbarSecond"):"top"!==s&&c.buttonEl.setAttribute("aria-label-position","top"),"editingToolbar-Divider-Line"==o.id&&c.setClass("editingToolbar-Divider-Line"),fa(o.icon)?c.buttonEl.innerHTML=o.icon:c.setIcon(o.icon),r+=u}}),function(t,i,o){const n=t.workspace.getActiveViewOfType(e.ItemView);if(!la.isAllowedViewType(n))return;let s=n.containerEl.querySelector("#editingToolbarPopoverBar");if(!i.IS_MORE_Button)return;let r=o.createEl("span");r.addClass("more-menu");let a=new e.ButtonComponent(r);a.setClass("editingToolbarCommandItem").setTooltip(Xr("More")).onClick(()=>{"hidden"==s.style.visibility?(s.style.visibility="visible",s.style.height="32px"):(s.style.visibility="hidden",s.style.height="0")}),a.buttonEl.innerHTML='',i.setIS_MORE_Button(!1)}(t,i,p),Math.abs(i.settings.cMenuWidth-Number(r))>r+4&&(i.settings.cMenuWidth=Number(r),setTimeout(()=>{i.saveSettings()},100))};if(!i.isLoadMobile())return;const u=t.workspace.getActiveViewOfType(e.ItemView);if(la.isAllowedViewType(u)){const o=ua(t,i,s);if(o&&"top"!==s)return n.cMenuVisibility?"following"===s?(o.style.visibility="hidden",o.style.display=""):(o.style.visibility="visible",o.style.display=""):o.style.display="none",c&&o.style.setProperty("--editing-toolbar-background-color",c),d&&o.style.setProperty("--editing-toolbar-icon-color",d),void(a&&o.style.setProperty("--toolbar-icon-size",`${a}px`));if(r(),"top"!==s){const e=ua(t,i,s);e&&i.setCachedToolbar(s,e)}Yr(i.settings),jr(i.settings),function(t,i){ca=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const o=ca.querySelectorAll("#change-font-color-icon"),n=ca.querySelectorAll("#change-background-color-icon");o.length>0&&o.forEach(e=>{e.style.fill=t});n.length>0&&n.forEach(e=>{e.style.fill=i})} +"use strict";var e=require("obsidian"),t=require("@codemirror/language"),o=require("@codemirror/state"),i=require("@codemirror/view");const n=["Custom","editingToolbar","editingToolbarSub","editingToolbarAdd","editingToolbarDelete","editingToolbarReload","codeblock-glyph","underline-glyph","superscript-glyph","subscript-glyph","bot-glyph","header-1","header-2","header-3","header-4","header-5","header-6","header-n","obsidian","obsidian-new","accessibility","activity","air-vent","airplay","alarm-check","alarm-clock-off","alarm-clock","alarm-minus","alarm-plus","album","alert-circle","alert-octagon","alert-triangle","align-center-horizontal","align-center-vertical","align-center","align-end-horizontal","align-end-vertical","align-horizontal-distribute-center","align-horizontal-distribute-end","align-horizontal-distribute-start","align-horizontal-justify-center","align-horizontal-justify-end","align-horizontal-justify-start","align-horizontal-space-around","align-horizontal-space-between","align-justify","align-left","align-right","align-start-horizontal","align-start-vertical","align-vertical-distribute-center","align-vertical-distribute-end","align-vertical-distribute-start","align-vertical-justify-center","align-vertical-justify-end","align-vertical-justify-start","align-vertical-space-around","align-vertical-space-between","anchor","angry","annoyed","aperture","apple","archive-restore","archive","armchair","arrow-big-down","arrow-big-left","arrow-big-right","arrow-big-up","arrow-down-circle","arrow-down-left","arrow-down-right","arrow-down","arrow-left-circle","arrow-left-right","arrow-left","arrow-right-circle","arrow-right","arrow-up-circle","arrow-up-left","arrow-up-right","arrow-up","asterisk","at-sign","award","axe","axis-3d","baby","backpack","baggage-claim","banana","banknote","bar-chart-2","bar-chart-3","bar-chart-4","bar-chart-horizontal","bar-chart","baseline","bath","battery-charging","battery-full","battery-low","battery-medium","battery","beaker","bed-double","bed-single","bed","beer","bell-minus","bell-off","bell-plus","bell-ring","bell","bike","binary","bitcoin","bluetooth-connected","bluetooth-off","bluetooth-searching","bluetooth","bold","bomb","bone","book-open","book","bookmark-minus","bookmark-plus","bookmark","bot","box-select","box","boxes","briefcase","brush","bug","building-2","building","bus","cake","calculator","calendar-check-2","calendar-check","calendar-clock","calendar-days","calendar-heart","calendar-minus","calendar-off","calendar-plus","calendar-range","calendar-search","calendar-x2","calendar-x","calendar","camera-off","camera","car","carrot","cast","check-circle-2","check-circle","check-square","check","chef-hat","cherry","chevron-down","chevron-first","chevron-last","chevron-left","chevron-right","chevron-up","chevrons-down-up","chevrons-down","chevrons-left-right","chevrons-left","chevrons-right-left","chevrons-right","chevrons-up-down","chevrons-up","chrome","cigarette-off","cigarette","circle-dot","circle-ellipsis","circle-slashed","circle","citrus","clapperboard","clipboard-check","clipboard-copy","clipboard-edit","clipboard-list","clipboard-signature","clipboard-type","clipboard-x","clipboard","clock-1","clock-10","clock-11","clock-12","clock-2","clock-3","clock-4","clock-5","clock-6","clock-7","clock-8","clock-9","clock","cloud-cog","cloud-drizzle","cloud-fog","cloud-hail","cloud-lightning","cloud-moon-rain","cloud-moon","cloud-off","cloud-rain-wind","cloud-rain","cloud-snow","cloud-sun-rain","cloud-sun","cloud","cloudy","clover","code-2","code","codepen","codesandbox","coffee","cog","coins","columns","command","compass","component","contact","contrast","cookie","copy","copyleft","copyright","corner-down-left","corner-down-right","corner-left-down","corner-left-up","corner-right-down","corner-right-up","corner-up-left","corner-up-right","cpu","credit-card","croissant","crop","cross","crosshair","crown","cup-soda","curly-braces","currency","database","delete","diamond","dice-1","dice-2","dice-3","dice-4","dice-5","dice-6","dices","diff","disc","divide-circle","divide-square","divide","dollar-sign","download-cloud","download","dribbble","droplet","droplets","drumstick","edit-2","edit-3","edit","egg-fried","egg","equal-not","equal","eraser","euro","expand","external-link","eye-off","eye","facebook","factory","fast-forward","feather","figma","file-archive","file-audio-2","file-audio","file-axis-3d","file-badge-2","file-badge","file-bar-chart-2","file-bar-chart","file-box","file-check-2","file-check","file-clock","file-code","file-cog-2","file-cog","file-diff","file-digit","file-down","file-edit","file-heart","file-image","file-input","file-json-2","file-json","file-key-2","file-key","file-line-chart","file-lock-2","file-lock","file-minus-2","file-minus","file-output","file-pie-chart","file-plus-2","file-plus","file-question","file-scan","file-search-2","file-search","file-signature","file-spreadsheet","file-symlink","file-terminal","file-text","file-type-2","file-type","file-up","file-video-2","file-video","file-volume-2","file-volume","file-warning","file-x2","file-x","file","files","film","filter","fingerprint","flag-off","flag-triangle-left","flag-triangle-right","flag","flame","flashlight-off","flashlight","flask-conical","flask-round","flip-horizontal-2","flip-horizontal","flip-vertical-2","flip-vertical","flower-2","flower","focus","folder-archive","folder-check","folder-clock","folder-closed","folder-cog-2","folder-cog","folder-down","folder-edit","folder-heart","folder-input","folder-key","folder-lock","folder-minus","folder-open","folder-output","folder-plus","folder-search-2","folder-search","folder-symlink","folder-tree","folder-up","folder-x","folder","folders","form-input","forward","frame","framer","frown","fuel","function-square","gamepad-2","gamepad","gauge","gavel","gem","ghost","gift","git-branch-plus","git-branch","git-commit","git-compare","git-fork","git-merge","git-pull-request-closed","git-pull-request-draft","git-pull-request","github","gitlab","glass-water","glasses","globe-2","globe","grab","graduation-cap","grape","grid","grip-horizontal","grip-vertical","hammer","hand-metal","hand","hard-drive","hard-hat","hash","haze","headphones","heart-crack","heart-handshake","heart-off","heart-pulse","heart","help-circle","hexagon","highlighter","history","home","hourglass","ice-cream","image-minus","image-off","image-plus","image","import","inbox","indent","indian-rupee","infinity","info","inspect","instagram","italic","japanese-yen","joystick","key","keyboard","lamp-ceiling","lamp-desk","lamp-floor","lamp-wall-down","lamp-wall-up","lamp","landmark","languages","laptop-2","laptop","lasso-select","lasso","laugh","layers","layout-dashboard","layout-grid","layout-list","layout-template","layout","leaf","library","life-buoy","lightbulb-off","lightbulb","line-chart","link-2off","link-2","link","linkedin","list-checks","list-end","list-minus","list-music","list-ordered","list-plus","list-start","list-video","list-x","list","loader-2","loader","locate-fixed","locate-off","locate","lock","log-in","log-out","luggage","magnet","mail-check","mail-minus","mail-open","mail-plus","mail-question","mail-search","mail-warning","mail-x","mail","mails","map-pin-off","map-pin","map","martini","maximize-2","maximize","medal","megaphone-off","megaphone","meh","menu","message-circle","message-square","mic-2","mic-off","mic","microscope","milestone","minimize-2","minimize","minus-circle","minus-square","minus","monitor-off","monitor-speaker","monitor","moon","more-horizontal","more-vertical","mountain-snow","mountain","mouse-pointer-2","mouse-pointer-click","mouse-pointer","mouse","move-3d","move-diagonal-2","move-diagonal","move-horizontal","move-vertical","move","music-2","music-3","music-4","music","navigation-2off","navigation-2","navigation-off","navigation","network","newspaper","octagon","option","outdent","package-2","package-check","package-minus","package-open","package-plus","package-search","package-x","package","paint-bucket","paintbrush-2","paintbrush","palette","palmtree","paperclip","party-popper","pause-circle","pause-octagon","pause","pen-tool","pencil","percent","person-standing","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","phone","pie-chart","piggy-bank","pin-off","pin","pipette","pizza","plane","play-circle","play","plug-zap","plus-circle","plus-square","plus","pocket","podcast","pointer","pound-sterling","power-off","power","printer","puzzle","qr-code","quote","radio-receiver","radio","recycle","redo-2","redo","refresh-ccw","refresh-cw","regex","repeat-1","repeat","reply-all","reply","rewind","rocket","rocking-chair","rotate-3d","rotate-ccw","rotate-cw","rss","ruler","russian-ruble","save","scale-3d","scale","scaling","scan-face","scan-line","scan","scissors","screen-share-off","screen-share","scroll","search","send","separator-horizontal","separator-vertical","server-cog","server-crash","server-off","server","settings-2","settings","share-2","share","sheet","shield-alert","shield-check","shield-close","shield-off","shield","shirt","shopping-bag","shopping-cart","shovel","shrink","shrub","shuffle","sidebar-close","sidebar-open","sidebar","sigma","signal-high","signal-low","signal-medium","signal-zero","signal","siren","skip-back","skip-forward","skull","slack","slash","slice","sliders-horizontal","sliders","smartphone-charging","smartphone","smile-plus","smile","snowflake","sofa","sort-asc","sort-desc","speaker","sprout","square","star-half","star-off","star","stethoscope","sticker","sticky-note","stop-circle","stretch-horizontal","stretch-vertical","strikethrough","subscript","sun-dim","sun-medium","sun-moon","sun-snow","sun","sunrise","sunset","superscript","swiss-franc","switch-camera","sword","swords","syringe","table-2","table","tablet","tag","tags","target","tent","terminal-square","terminal","text-cursor-input","text-cursor","thermometer-snowflake","thermometer-sun","thermometer","thumbs-down","thumbs-up","ticket","timer-off","timer-reset","timer","toggle-left","toggle-right","tornado","toy-brick","train","trash-2","trash","tree-deciduous","tree-pine","trees","trello","trending-down","trending-up","triangle","trophy","truck","tv-2","tv","twitch","twitter","type","umbrella","underline","undo-2","undo","unlink-2","unlink","unlock","upload-cloud","upload","usb","user-check","user-cog","user-minus","user-plus","user-x","user","users","utensils-crossed","utensils","venetian-mask","verified","vibrate-off","vibrate","video-off","video","view","voicemail","volume-1","volume-2","volume-x","volume","wallet","wand-2","wand","watch","waves","webcam","webhook","wifi-off","wifi","wind","wine","wrap-text","wrench","x-circle","x-octagon","x-square","x","youtube","zap-off","zap","zoom-in","zoom-out","create-new","trash","search","right-triangle","document","folder","pencil","left-arrow","right-arrow","three-horizontal-bars","dot-network","audio-file","image-file","pdf-file","gear","documents","blocks","go-to-file","presentation","cross-in-box","microphone","microphone-filled","two-columns","link","popup-open","checkmark","hashtag","left-arrow-with-tail","right-arrow-with-tail","up-arrow-with-tail","down-arrow-with-tail","lines-of-text","vertical-three-dots","pin","magnifying-glass","info","horizontal-split","vertical-split","calendar-with-checkmark","folder-minus","sheets-in-box","up-and-down-arrows","broken-link","cross","any-key","reset","star","crossed-star","dice","filled-pin","enter","help","vault","open-vault","paper-plane","bullet-list","uppercase-lowercase-a","star-list","expand-vertically","languages","switch","pane-layout","install","sync","check-in-circle","sync-small","check-small","paused","forward-arrow","stacked-levels","bracket-glyph","note-glyph","tag-glyph","price-tag-glyph","heading-glyph","bold-glyph","italic-glyph","strikethrough-glyph","highlight-glyph","code-glyph","quote-glyph","link-glyph","bullet-list-glyph","number-list-glyph","checkbox-glyph","undo-glyph","redo-glyph","up-chevron-glyph","down-chevron-glyph","left-chevron-glyph","right-chevron-glyph","percent-sign-glyph","keyboard-glyph","double-up-arrow-glyph","double-down-arrow-glyph","image-glyph","wrench-screwdriver-glyph","clock","plus-with-circle","minus-with-circle","indent-glyph","unindent-glyph","fullscreen","exit-fullscreen","cloud","run-command","compress-glyph","enlarge-glyph","scissors-glyph","up-curly-arrow-glyph","down-curly-arrow-glyph","plus-minus-glyph","links-going-out","links-coming-in","add-note-glyph","duplicate-glyph","clock-glyph","calendar-glyph","command-glyph","dice-glyph","file-explorer-glyph","graph-glyph","import-glyph","navigate-glyph","open-elsewhere-glyph","presentation-glyph","paper-plane-glyph","question-mark-glyph","restore-file-glyph","search-glyph","star-glyph","play-audio-glyph","stop-audio-glyph","tomorrow-glyph","wand-glyph","workspace-glyph","yesterday-glyph","box-glyph","merge-files-glyph","merge-files","two-blank-pages","scissors","paste","paste-text","split","select-all-text","wand","github-glyph","reading-glasses","user-manual-filled","discord-filled","chat-bubbles-filled","experiment-filled","bracket-glyph","box-glyph","check-small","dice-glyph","dice","discord","right-triangle","heading-glyph","help","keyboard-toggle","broken-link","experiment","left-arrow","link","link-glyph","links-coming-in","links-going-out","open-vault","paused","question-mark-glyph","right-arrow","sidebar-left","sidebar-right","sheets-in-box","star-list","sync-small","tabs","uppercase-lowercase-a","vault","stack-horizontal","stack-vertical","stretch-horizontal","stretch-vertical","distribute-space-horizontal","distribute-space-vertical"];function a(e){let t=Date.now().toString(36);return t+=Math.random().toString(36).substr(3,e),t}function s(e,t,o,i){let n,a={index:-1,subindex:-1},s=i;return o?s.forEach((e,o)=>{if("SubmenuCommands"in e&&(n=e.SubmenuCommands.findIndex(e=>e.id==t.id),n>=0))return a={index:o,subindex:n},a}):(n=s.findIndex(e=>e.id==t.id),a={index:n,subindex:-1}),a}function r(e,t){let o,i=t.getLine(t.getCursor().line),n="";const a=/^(\>*(\[[!\w]+\])?\s*)#+\s/;let s;const r=i.match(a);r&&(s=r[0].trim()),e==s||""==e?o=i.replace(a,"$1"):(o=i.replace(/^\s*(#*|\>|\-|\d+\.)\s*/m,""),o=e+" "+o),n=""!=o?t.getRange(t.getCursor(),{line:t.getCursor().line,ch:i.length}):t.getRange(t.getCursor(),{line:t.getCursor().line,ch:0}),t.setLine(t.getCursor().line,o),t.setCursor({line:t.getCursor().line,ch:Number(o.length-n.length)})}function l(e,t){if(!t)return;const o=t.getSelection();if(!o||""===o.trim())return void this.plugin.setLastExecutedCommand("editing-toolbar:change-font-color");const i=/]+["']?>(.*?)<\/font>/gms,n=i.test(o);if(a=o,new RegExp(`^(.+)<\\/font>$`,"ms").test(a.trim()))return;var a;const s=o.replace(i,(t,o)=>o.split("\n").map(t=>t.trim()?`${t}`:t).join("\n")),r=s===o?o.split("\n").map(t=>t.trim()?`${t}`:t).join("\n"):s,l=t.listSelections().map(t=>{const o=n?0:``.length;return t.anchor.line([\s\S]*?)<\/mark>/g.test(o);if(((e,t)=>{const o=t.replace(/([()[{*+.$^\\|?])/g,"\\$1");return new RegExp(`^([sS]+)<\\/mark>$`).test(e.trim())})(o,e))return;let n;n=i?o.replace(/(background:)(?:#[0-9a-fA-F]{3,6}|rgba?\([^)]+\))/gi,`$1${e}`):o.split("\n").map(t=>t.trim()?`${t}`:t).join("\n");const a=t.listSelections().map(t=>{const o=i?0:``.length;return t.anchor.line{"OrderedList"===e.name&&(d=e.to)}}),d>=0){const e=n.offsetToPos(d).line+1;e=0?n.getLine(g).trim():"";if(f&&!/^\s*$/.test(f)&&!f.includes("ㅤ")&&(h.push(""),h.push("ㅤ")),m)h.push(...o);else{let e={},t=-1;for(const i of o){const o=i.trim(),n=/^\d+\.\s/.test(o),a=i.match(/^\s*/)?.[0]||"";if(n){const i=a.length;e[i]=i!==t?1:(e[i]||1)+1,h.push(`${a}${e[i]}. ${o.replace(/^\d+\.\s/,"")}`),t=i}else h.push(i),t=-1}}n.replaceRange(h.join("\n"),{line:i,ch:0},{line:i+o.length-1,ch:n.getLine(i+o.length-1).length})}function m(e,t,o){const i=[];for(let n=t;n<=o;n++)i.push(e.getLine(n));d(i,t,e)}let u;const p=t=>{u=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;["top","following","fixed"].forEach(e=>{u.querySelectorAll(`.editingToolbarModalBar[data-toolbar-style="${e}"]`).forEach(e=>{t?(e.style.display="",e.style.visibility="visible"):e.style.display="none"})});const o=u.getElementById("editingToolbarModalBar");o&&(t?(o.style.display="",o.style.visibility="visible"):o.style.display="none")},h=t=>{u=e.requireApiVersion("0.15.0")?activeWindow.document:window.document,u.documentElement.style.setProperty("--toolbar-vertical-offset",`${t.verticalPosition}px`)},g=t=>{u=e.requireApiVersion("0.15.0")?activeWindow.document:window.document,u.documentElement.style.setProperty("--toolbar-horizontal-offset",`${t.horizontalPosition}px`)};var f={"Editing Toolbar Append Method":"Editing Toolbar Append Method","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar aesthetic":"Editing Toolbar aesthetic","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar position":"Editing Toolbar position","Choose between fixed position or cursor following mode.":"Choose between fixed position, cursor following or Top mode.","Editing Toolbar Columns":"Editing Toolbar Columns","Choose the number of columns per row to display on Editing Toolbar.":"Choose the number of columns per row to display on Editing Toolbar.","Editing Toolbar refresh":"Editing Toolbar refresh","Editing Toolbar Commands":"Editing Toolbar Commands","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.","Format Brush Off!":"Format Brush Off!","Hide & Show":"Hide & Show","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.","Font-Color formatting brush ON!":"Font-Color formatting brush ON!",More:"More","Copy commands from selected style.":"Copy commands from selected style.","Font Colors":"Font Colors","Format Brush":"Format Brush","Background Color":"Background color",Refresh:"Refresh",Add:"Add",Delete:"Delete","Change Command Name":"Change Command Name","Change Submenu Name":"Change Submenu Name","Button Submenu":"Button Submenu","Dropdown Menu":"Dropdown Menu","Menu type changed to":"Menu type changed to","Add Submenu":"Add Submenu","Add Separator":"Add Separator","Enter the icon code, it looks like .... format":"Enter the icon code, it looks like .... format","Please enter a new name: ":"Please enter a new name: ","Drag the slider to move the position":"Drag the slider to move the position","Plugin Settings":"Plugin Settings","Background-color formatting brush ON!":"Background-color formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","Clear formatting brush ON!":"Clear formatting brush ON!","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden","Editing Toolbar Auto-hide":"Editing Toolbar Auto-hide","Editing Toolbar Centred Display":"Editing Toolbar Centred Display","Whether the toolbar is centred or full-width, the default is full-width.":"Whether the toolbar is centred or full-width, the default is full-width.","Custom Backgroud Color":"Custom Backgroud Color","Custom Font Color":"Custom Font Color","🎨 Set Custom Background":"🎨 Set Custom Background","🖌️ Set Custom Font Color":"🖌️ Set Custom Font Color","Click on the picker to adjust the color":"Click on the picker to adjust the color","Mobile Enabled or Not":"Mobile Enabled or Not","Whether to enable the plugin for the mobile client, the default is enabled.":"Whether to enable the plugin for the mobile client, the default is enabled.","Whether to enable on mobile devices with device width less than 768px.":"Whether to enable on mobile devices with device width less than 768px, the default is disable.",Reset:"Reset",Fix:"Fix","Fix Editing Toolbar":"Fix Editing Toolbar",General:"General",Appearance:"Appearance",Commands:"Commands","Choose between fixed position or cursor following mode":"Choose between fixed position, cursor following or Top mode.","Add and manage commands":"Add and manage commands","Choose where Editing Toolbar will append upon regeneration.":"Choose where Editing Toolbar will append upon regeneration.","Whether to enable on mobile devices with device width less than 768px":"Whether to enable on mobile devices with device width less than 768px","Choose between a glass morphism, tiny and default style.":"Choose between a glass morphism, tiny and default style.","Refresh Toolbar":"Refresh Toolbar","Add Command":"Add Command",Settings:"Settings","Position Style":"Position Style",Columns:"Columns","Drag to Adjust Position":"Drag to Adjust Position","Vertical Position":"Vertical Position","Horizontal Position":"Horizontal Position","Toolbar Position":"Toolbar Position","Choose an icon":"Choose an icon","Search for an icon...":"Search for an icon...",All:"All",Obsidian:"Obsidian",Glyph:"Glyph",Custom:"Custom","Choose a command":"Choose a command","The command":"The command","already exists":"already exists","Enter the icon code, format as .... ":"Enter the icon code, format as .... ","No matching icons found":"No matching icons found","Custom Commands":"Custom Commands","Toolbar Commands":"Toolbar Commands",ID:"ID",Prefix:"Prefix",Suffix:"Suffix",Pattern:"Pattern","Custom Format Commands":"Custom Format Commands","Add, edit or delete custom format commands.":"Add, edit or delete custom format commands.",Edit:"Edit","Command ID":"Command ID",'Unique identifier, no spaces, e.g.: "my-custom-format"':'Unique identifier, no spaces, e.g.: "my-custom-format"',"Displayed name in toolbar and menu":"Displayed name in toolbar and menu","Add content before selected text":"Add content before selected text","Add content after selected text":"Add content after selected text","Character offset of cursor after formatting":"Character offset of cursor after formatting","Line offset of cursor after formatting":"Line offset of cursor after formatting","Whether to insert at the beginning of the next line":"Whether to insert at the beginning of the next line","Command icon (click to select)":"Command icon (click to select)","Choose Icon":"Choose Icon",Save:"Save",Cancel:"Cancel","Edit Custom Command":"Edit Custom Command","Add Custom Command":"Add Custom Command","Command ID and command name cannot be empty":"Command ID and command name cannot be empty","Command ID cannot contain spaces":"Command ID cannot contain spaces",'Command ID "${this.commandId}" already exists':'Command ID "${this.commandId}" already exists',"Cursor Position Offset":"Cursor Position Offset","Line Offset":"Line Offset","Line Head Format":"Line Head Format",Icon:"Icon","Command Name":"Command Name","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"Are you sure you want to restore all settings to default? This will lose all your custom configurations.","Restore default":"Restore default","Restore default settings":"Restore default settings","🔄Restore default settings":"🔄Restore default settings","🔧Data repair":"🔧Data repair","Command IDs have been successfully repaired!":"Command IDs have been successfully repaired!","No command IDs need to be repaired":"No command IDs need to be repaired","Error repairing command IDs, please check the console for details":"Error repairing command IDs, please check the console for details","Error restoring default settings, please check the console for details":"Error restoring default settings, please check the console for details","Successfully restored default settings!":"Successfully restored default settings!",Close:"Close",Tips:"Tips","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly","Repair command ID":"Repair command ID","This will reset all your custom configurations":"This will reset all your custom configurations","Notice:":"Notice:","This update rebuilds the entire code, reducing resource consumption":"This update rebuilds the entire code, reducing resource consumption","Optimized mobile usage, added canvas support, and added custom commands":"Optimized mobile usage, added canvas support, and added custom commands","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️If you want to restore the default settings, please click [Restore default settings]","Please execute a editingToolbar format command first, then enable the format brush":"Please execute a editingToolbar format command first, then enable the format brush","Format brush ON! Select text to apply【":"Format brush ON! Select text to apply【","】format":"】format\nClick the mouse right key to close the formatting-brush","Add to Toolbar":"Add to Toolbar","This command is already in the toolbar.":"This command is already in the toolbar.","Command added to toolbar":"Command added to toolbar","Add this command to the toolbar.":"Add this command to the toolbar.","Callout Type":"Callout Type",Title:"Title","Optional, leave blank for default title":"Optional, leave blank for default title","Input title":"Input title","Collapse State":"Collapse State",Open:"Open",Closed:"Closed",Default:"Default",Content:"Content",Insert:"Insert","Input content":"Input content","Link Text":"Link Text","Link Alias":"Link Alias","Link URL":"Link URL","Embed Content":"Embed Content","Image Size":"Image Size","Insert New Line":"Insert New Line","Paste and Parse":"Paste and Parse","URL Format Error":"URL Format Error","Image Width":"Image Width","Image Height":"Image Height","If it is an image, turn on":"If it is an image, turn on","Insert a link on the next line":"Insert a link on the next line","Link Title(optional)":"Link Title(optional)",Alias:"Alias",Optional:"Optional","Default 0, format will keep the text selected":"Default 0, format will keep the text selected","to insert":"to insert","Latest Changes":"Latest Changes","📋View full changelog":"📋View full changelog","Open changelog":"Open changelog","Loading changelog...":"Loading changelog...","Open the complete changelog in your browser":"Open the complete changelog in your browser","Enable Multiple Configurations":"Enable Multiple Configurations","Enable different command configurations for each position style (following, top, fixed).":"Enable different command configurations for each position style (following, top, fixed).","Currently editing commands for":"Currently editing commands for","position style":"position style","Current Configuration":"Current Configuration","Switch between different command configurations.":"Switch between different command configurations.","Following Style":"Following Style","Top Style":"Top Style","Fixed Style":"Fixed Style","Mobile Style":"Mobile Style",configuration:"configuration","Deploy command to configurations":"Deploy command to configurations","All Configurations":"All Configurations",Deploy:"Deploy","Command deployed to selected configurations":"Command deployed to selected configurations","No configuration selected for deployment":"No configuration selected for deployment","Command already exists in selected configurations":"Command already exists in selected configurations","Command deployed to: ":"Command deployed to: ","Command Deleted":"Command Deleted","Confirm Delete?":"Confirm Delete?",Confirm:"Confirm","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"Are you sure you want to restore all settings to default? But custom commands will be preserved.","Successfully restored default settings! (Custom commands preserved)":"Successfully restored default settings! (Custom commands preserved)","This will reset all your custom configurations, but custom commands will be preserved":"This will reset all your custom configurations, but custom commands will be preserved","Import/Export":"Import/Export","Export Configuration":"Export Configuration","Export your toolbar configuration to share with others.":"Export your toolbar configuration to share with others.",Export:"Export","Import Configuration":"Import Configuration","Import toolbar configuration from JSON.":"Import toolbar configuration from JSON.",Import:"Import","Usage Instructions":"Usage Instructions","Export: Generate a JSON configuration that you can save or share.":"Export: Generate a JSON configuration that you can save or share.","Import: Paste a previously exported JSON configuration.":"Import: Paste a previously exported JSON configuration.","You can choose to export all settings, only toolbar commands, or only custom commands":"You can choose to export all settings, only toolbar commands, or only custom commands","When importing, the plugin will only update the settings included in the import data":"When importing, the plugin will only update the settings included in the import data","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.","Export Type":"Export Type","Choose what to export":"Choose what to export","All Settings":"All Settings","Toolbar Commands Only":"Toolbar Commands Only","Custom Commands Only":"Custom Commands Only","Export Content":"Export Content","Copy this content to share with others":"Copy this content to share with others","Loading...":"Loading...","Copy to Clipboard":"Copy","Configuration copied to clipboard":"Configuration copied to clipboard","Failed to copy configuration":"Failed to copy configuration","Paste the configuration JSON here":"Paste the configuration JSON here","Paste configuration here...":"Paste configuration here...","Invalid import data":"Invalid import data","Configuration imported successfully":"Configuration imported successfully","No valid configuration found in import data":"No valid configuration found in import data","Failed to import configuration. Invalid format.":"Failed to import configuration. Invalid format.","Import Mode":"Import Mode","Choose how to import the configuration":"Choose how to import the configuration","Update Mode (Add new items and update existing ones)":"Update Mode (Add new items and update existing ones)","Overwrite Mode (Replace all settings with imported ones)":"Overwrite Mode (Replace all settings with imported ones)","Configuration imported successfully (Overwrite mode)":"Configuration imported successfully (Overwrite mode)","Configuration imported successfully (Update mode)":"Configuration imported successfully (Update mode)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"Warning: Update mode will add new items and update existing ones based on the imported configuration.","Add Format Command":"Add Format Command",Regex:"Regex","Prefix/Suffix":"Prefix/Suffix","Insert Special Char":"Insert Special Char","Add Regex Command":"Add Regex Command","Switch Regex Command Window":"Switch Regex Command Window","Please select text first":"Please select text first","Place the cursor in a paragraph or select text first.":"Place the cursor in a paragraph or select text first.","Current line is empty, please select text or move to a non-empty line":"Current line is empty, please select text or move to a non-empty line","Use current line for regex commands":"Use current line for regex commands","When no text is selected, regex commands will use the current line instead of clipboard content":"When no text is selected, regex commands will use the current line instead of clipboard content","The selected text does not meet the condition requirements":"The selected text does not meet the condition requirements","Regex command execution error: ":"Regex command execution error: ","Copy code":"Copy code","Copied!":"Copied!","Explain the syntax of JavaScript regular expressions":"Explain the syntax of JavaScript regular expressions","Apply regular expression replacement":"Apply regular expression replacement","Conditional matching":"Conditional matching","Complete regular expression code (copy to AI for explanation)":"Complete regular expression code (copy to AI for explanation)","Error: ":"Error: ","Regex pattern cannot be empty":"Regex pattern cannot be empty","Command already exists":"Command already exists","Choose icon":"Choose icon","URL to Markdown link":"URL to Markdown link","Convert MM/DD/YYYY to YYYY-MM-DD":"Convert MM/DD/YYYY to YYYY-MM-DD","Add bold to keywords":"Add bold to keywords","Format phone number":"Format phone number","Remove extra spaces":"Remove extra spaces","Convert HTML bold tags to Markdown format":"Convert HTML bold tags to Markdown format","Convert quoted text to quote block":"Convert quoted text to quote block","Convert CSV to Markdown table row":"Convert CSV to Markdown table row","Add uniform alias to Markdown links":"Add uniform alias to Markdown links","Delete empty lines (multiline mode)":"Delete empty lines (multiline mode)","Add list symbol to each line (multiline mode)":"Add list symbol to each line (multiline mode)","If the text contains important, set the text highlight (conditional format)":"If the text contains important, set the text highlight (conditional format)","Matching pattern":"Matching pattern","Regex pattern to match":"Regex pattern to match","Replacement pattern (use $1, $2, etc. to reference capture groups)":"Replacement pattern (use $1, $2, etc. to reference capture groups)","Ignore case":"Ignore case","Global replace":"Global replace","Multiline mode":"Multiline mode","Use condition":"Use condition","Condition pattern":"Condition pattern","Only apply custom command when text matches the condition":"Only apply custom command when text matches the condition","Must exist regular expression or text":"Must exist regular expression or text","Replacement pattern":"Replacement pattern","Match case-insensitive":"Match case-insensitive","^ and $ match the start and end of each line":"^ and $ match the start and end of each line","Replace all matches":"Replace all matches",Command:"Command","Input example text to view the formatting effect of the command...":"Input example text to view the formatting effect of the command...",Description:"Description","[Example]":"[Example]","[Requirements]":"[Requirements]","[Output]":"[Output]","AI question template:":"AI question template:","I need to convert the url to a markdown format link":"I need to convert the url to a markdown format link","For example, convert https://example.com to [https://example.com](https://example.com)":"For example, convert https://example.com to [https://example.com](https://example.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)","[Description]":"[Description]","How to use AI to get regular expressions?":"How to use AI to get regular expressions?","Regular expression examples":"Regular expression examples","Edit regular expression command":"Edit regular expression command","Add regular expression command":"Add regular expression command","Result: ":"Result: ","Example text:":"Example text:",Preview:"Preview",Result:"Result","Please select text or copy text to clipboard first":"Please select text or copy text to clipboard first","Overwrite Import":"Overwrite Import","Update Import":"Update Import","Importing configuration...":"Importing configuration...","Following Style Only":"Following Style Only","Top Style Only":"Top Style Only","Fixed Style Only":"Fixed Style Only","Mobile Style Only":"Mobile Style Only","Unknown import type":"Unknown import type","All Toolbar Commands":"All Toolbar Commands","Initialize Commands":"Initialize Commands","Copy commands from the main menu configuration":"Copy commands from the main menu configuration","Initialize commands to default settings":"Initialize commands to default settings","Reset Commands":"Reset Commands","Commands reset successfully":"Commands reset successfully","Following style commands initialized from current menu commands":"Following style commands initialized from current menu commands","Commands initialized successfully":"Commands initialized successfully","Reset to Menu Commands":"Reset to Menu Commands","Are you sure you want to reset the current configuration?":"Are you sure you want to reset the current configuration?","Following style commands successfully initialized":"Following style commands successfully initialized","Top style commands successfully initialized":"Top style commands successfully initialized","Fixed style commands successfully initialized":"Fixed style commands successfully initialized","Mobile style commands successfully initialized":"Mobile style commands successfully initialized","Reset commands to default settings":"Reset commands to default settings",Clear:"Clear","Remove all commands from this configuration.":"Remove all commands from this configuration.","Are you sure you want to clear all commands under the current style?":"Are you sure you want to clear all commands under the current style?","Current style commands have been cleared":"Current style commands have been cleared","Manage Commands":"Manage Commands","Reset or clear all commands in this configuration":"Reset or clear all commands in this configuration","One-click Clear":"One-click Clear","Import Commands from Other Styles":"Import Commands from Other Styles","Copy commands from another style configuration.":"Copy commands from another style configuration.","Main menu only":"Main menu only","This import will update:":"This import will update:","Custom commands":"Custom commands","Toolbar commands":"Toolbar commands","General settings":"General settings","Please paste configuration data first":"Please paste configuration data first","Invalid import data format":"Invalid import data format","Import From":"Import From","This import will:":"This import will:","Update general settings":"Update general settings","Update Main Menu Commands":"Update Main Menu Commands","Update Custom Commands":"Update Custom Commands","Update Following Style Commands":"Update Following Style Commands","Update Top Style Commands":"Update Top Style Commands","Update Fixed Style Commands":"Update Fixed Style Commands","Update Mobile Style Commands":"Update Mobile Style Commands","Clear all Main Menu Commands":"Clear all Main Menu Commands","Clear all Custom Commands":"Clear all Custom Commands","Clear all Following Style Commands":"Clear all Following Style Commands","Clear all Top Style Commands":"Clear all Top Style Commands","Clear all Fixed Style Commands":"Clear all Fixed Style Commands","Clear all Mobile Style Commands":"Clear all Mobile Style Commands","Overwrite Mode (Replace settings with imported ones)":"Overwrite Mode (Replace settings with imported ones)","Warning: Overwrite mode will replace existing settings with imported ones.":"Warning: Overwrite mode will replace existing settings with imported ones.","Warning: Update mode will add new items and update existing ones.":"Warning: Update mode will add new items and update existing ones.","Enable Multiple Config":"Enable Multiple Config","Set Multiple Config to:":"Set Multiple Config to:",Enable:"Enable",Disable:"Disable","Set Position Style to:":"Set Position Style to:",Following:"Following",Top:"Top",Fixed:"Fixed",Mobile:"Mobile","All commands":"All commands","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ Overwrite mode will replace existing settings with imported ones.","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ Update mode will merge imported settings with existing ones.","Do you want to continue?":"Do you want to continue?","Imported settings:":"Imported settings:","Imported commands:":"Imported commands:","Disable toolbar for this view":"Disable toolbar for this view","Enable toolbar for this view":"Enable toolbar for this view","Manage all view types":"Manage all view types","Current View: ":"Current View: ","Appearance Style":"Appearance Style","Position Settings":"Position Settings","All commands have been removed.":"All commands have been removed.","Join the Community":"Join the Community","Share your toolbar settings and styles in our":"Share your toolbar settings and styles in our","Get inspired by what others have created or showcase your own customizations.":"Get inspired by what others have created or showcase your own customizations.","Toolbar Preview (With a hypothetical command configuration.)":"Toolbar Preview (With a hypothetical command configuration.)","Toolbar Theme":"Toolbar Theme","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.","Toolbar Background Color":"Toolbar Background Color","Set the background color of the toolbar.":"Set the background color of the toolbar.","Toolbar Icon Color":"Toolbar Icon Color","Set the color of the toolbar icon.":"Set the color of the toolbar icon.","Toolbar Icon Size":"Toolbar Icon Size","Set the size of the toolbar icon (px); default: 18px":"Set the size of the toolbar icon (px); default: 18px","Custom Theme":"Custom Theme","Fixed Position Offset":"Fixed Position Offset","Choose the offset of the Editing Toolbar in the fixed position.":"Choose the offset of the Editing Toolbar in the fixed position.","Renumber List":"Renumber List","Fetch Remote Title":"Fetch Remote Title","Please enter a URL first":"Please enter a URL first","Failed to fetch title for":"Failed to fetch title for","Link Title (optional)":"Link Title (optional)","Unable to detect editor width":"Unable to detect editor width","Fit Editor Width":"Fit Editor Width","Please execute a format command or select format text first, then enable the format brush":"Please execute a format command or select format text first, then enable the format brush","Use \\n to represent line breaks":"Use \\n to represent line breaks","Use ↵ to represent line breaks":"Use ↵ to represent line breaks","Top Toolbar":"Top Toolbar","Enable the toolbar positioned at the top.":"Enable the toolbar positioned at the top.","Following Toolbar":"Following Toolbar","Enable the toolbar that appears upon text selection.":"Enable the toolbar that appears upon text selection.","Fixed Toolbar":"Fixed Toolbar","Enable the toolbar whose position may be fixed where you please.":"Enable the toolbar whose position may be fixed where you please.","Toolbar Settings":"Toolbar Settings","Choose which toolbar style's appearance you want to edit.":"Choose which toolbar style's appearance you want to edit.","Vertical Split":"Vertical Split","Text Enhancement Tools":"Text Enhancement Tools","Get Plain Text":"Get Plain Text","Full Half Converter":"Full Half Converter","Insert Blank Lines":"Insert Blank Lines","Remove Blank Lines":"Remove Blank Lines","Split Lines":"Split Lines","Dedupe Lines":"Dedupe Lines","Add Prefix/Suffix":"Add Prefix/Suffix","Number Lines (Custom)":"Number Lines (Custom)","Trim Line Ends":"Trim Line Ends","Shrink Extra Spaces":"Shrink Extra Spaces","Remove All Whitespace":"Remove All Whitespace","Extract Between Strings":"Extract Between Strings","Merge Lines":"Merge Lines","List to Table":"List to Table","Table to List":"Table to List","Line Operations":"Line Operations","Text Processing":"Text Processing","Advanced Tools":"Advanced Tools","Align Text Right":"Align Text Right",Bold:"Bold",Checklist:"Checklist","Clear Text Formatting":"Clear Text Formatting",Copy:"Copy",Cut:"Cut",Embed:"Embed","Header 1":"Header 1","Header 2":"Header 2","Header 3":"Header 3","Header 4":"Header 4","Header 5":"Header 5","Header 6":"Header 6",Highlight:"Highlight","Horizontal Divider":"Horizontal Divider","Indent list":"Indent list","Inline Math":"Inline Math",Italic:"Italic",Link:"Link",MathBlock:"MathBlock","Ordered List":"Ordered List",Paste:"Paste","Redo Edit":"Redo Edit",Strikethrough:"Strikethrough",Underline:"Underline","Undo Edit":"Undo Edit","Unindent List":"Unindent List","Unordered List":"Unordered List","Insert Embed":"Insert Embed","Insert Link":"Insert Link","Insert Tag":"Insert Tag","Insert Internal link":"Insert Internal link","Insert Code":"Insert Code","Insert Blockquote":"Insert Blockquote","Insert Comment":"Insert Comment","Insert Callout":"Insert Callout","Insert MathBlock":"Insert MathBlock","Insert Table":"Insert Table","Swap Line Up":"Swap Line Up","Swap Line Down":"Swap Line Down","Attach File":"Attach File","Clear Formatting":"Clear Formatting","Cycle List and Checklist":"Cycle List and Checklist",Blockquote:"Blockquote",Callout:"Callout",Superscript:"Superscript",Subscript:"Subscript","Inline Code":"Inline Code","Code Block":"Code Block",Wikilink:"Wikilink","Justify Text":"Justify Text","Align Text Left":"Align Text Left","Center Text":"Center Text","Change Font Color":"Change Font Color","Change Background Color":"Change Background Color","Fullscreen Focus Mode":"Fullscreen Focus Mode","Workplace Fullscreen":"Workplace Fullscreen","Renumber Ordered List":"Renumber Ordered List","Toggle Format Brush":"Toggle Format Brush","Toggle Fullscreen Focus Mode":"Toggle Fullscreen Focus Mode","Toggle Workplace Fullscreen Focus":"Toggle Workplace Fullscreen Focus","Enter prefix":"Enter prefix","Enter suffix":"Enter suffix",Delimiter:"Delimiter","Enter delimiter (e.g., comma, tab)":"Enter delimiter (e.g., comma, tab)","Column Number":"Column Number","Enter column number (starting from 1)":"Enter column number (starting from 1)","Start String":"Start String","Enter start string":"Enter start string","End String":"End String","Enter end string":"Enter end string","Number Lines Configuration":"Number Lines Configuration","Start Number":"Start Number",Step:"Step",Separator:"Separator","Merge Lines Settings":"Merge Lines Settings","Separator (leave empty for smart spacing)":"Separator (leave empty for smart spacing)","e.g., comma, pipe, arrow":"e.g., comma, pipe, arrow","Plain text copied to clipboard":"Plain text copied to clipboard","Whitespace cleaning completed":"Whitespace cleaning completed","List pattern detected, auto-split":"List pattern detected, auto-split","No obvious separator or list pattern detected":"No obvious separator or list pattern detected","Paste failed":"Paste failed","Detected Chinese context: converted to full-width symbols":"Detected Chinese context: converted to full-width symbols","Detected code/English context: converted to half-width symbols":"Detected code/English context: converted to half-width symbols","Please select text to dedupe first":"Please select text to dedupe first","Deduplication completed, remaining":"Deduplication completed, remaining",lines:"lines","Prefix/suffix added":"Prefix/suffix added","Please select text to number first":"Please select text to number first","Numbering completed: starting from":"Numbering completed: starting from","Please specify start or end string":"Please specify start or end string",Extracted:"Extracted",matches:"matches","No matches found":"No matches found","Extraction failed":"Extraction failed","Please select lines to merge first":"Please select lines to merge first","Merged with":"Merged with","Merge completed":"Merge completed",Item:"Item","Super conversion completed: context preserved and layout optimized":"Super conversion completed: context preserved and layout optimized","Please select a valid Markdown table":"Please select a valid Markdown table","Table converted to multi-level list":"Table converted to multi-level list","AI Editor":"AI Editor","Enable AI Editor":"Enable AI Editor","Enable AI editor features such as inline completion and selection rewrite.":"Enable AI editor features such as inline completion and selection rewrite.","Try AI Editing":"Try AI Editing","Unlock inline completion, rewrite, frontmatter, and canvas generation right inside your toolbar.":"Unlock inline completion, rewrite, frontmatter, and canvas generation right inside your toolbar.","Sign in to PKMer AI for free managed AI, or use your own compatible model.":"Sign in to PKMer AI for free managed AI, or use your own compatible model.","What you get":"What you get","Inline completion while you write":"Inline completion while you write","Rewrite, summarize, and continue text in place":"Rewrite, summarize, and continue text in place","Generate frontmatter, lists, tables, and canvas drafts":"Generate frontmatter, lists, tables, and canvas drafts","Before you enable AI":"Before you enable AI","The plugin itself does not intentionally store your note content.":"The plugin itself does not intentionally store your note content.","AI requests are sent only to the provider you choose, such as PKMer AI or your custom model.":"AI requests are sent only to the provider you choose, such as PKMer AI or your custom model.","Those requests remain subject to the provider privacy policy, terms, and model rules.":"Those requests remain subject to the provider privacy policy, terms, and model rules.","You can turn AI off at any time in settings.":"You can turn AI off at any time in settings.","Agree & Enable AI":"Agree & Enable AI","Not now":"Not now","AI editing is now enabled. The plugin does not intentionally store your note content, and requests follow your chosen provider policies.":"AI editing is now enabled. The plugin does not intentionally store your note content, and requests follow your chosen provider policies.",Enabled:"Enabled",Disabled:"Disabled","Completion Mode":"Completion Mode","Choose whether completion is triggered manually or automatically after a short pause.":"Choose whether completion is triggered manually or automatically after a short pause.","Enable Inline Completion":"Enable Inline Completion","Show ghost text suggestions inside the editor.":"Show ghost text suggestions inside the editor.","Completion Delay (ms)":"Completion Delay (ms)","Delay before auto-triggering inline completion.":"Delay before auto-triggering inline completion.","Completion Max Tokens":"Completion Max Tokens","Upper bound for one inline completion response. Increase it if completions feel cut off.":"Upper bound for one inline completion response. Increase it if completions feel cut off.",Manual:"Manual",Auto:"Auto","Text Tools":"Text Tools","AI Tools":"AI Tools","Inline Completion":"Inline Completion","Select text to see more tools":"Select text to see more tools","AI Assistant":"AI Assistant","AI module is ready":"AI module is ready","Use AI enhancements directly from the toolbar.":"Use AI enhancements directly from the toolbar.","Place the cursor for inline completion, or select text to unlock rewrite actions.":"Place the cursor for inline completion, or select text to unlock rewrite actions.","Selected text detected. Rewrite actions are ready.":"Selected text detected. Rewrite actions are ready.","AI Continue Writing":"AI Continue Writing","AI Summarize Selection":"AI Summarize Selection","AI Explain Selection":"AI Explain Selection","At Cursor":"At Cursor","On Selection":"On Selection","Continue writing at the current cursor.":"Continue writing at the current cursor.","Polish tone, wording, and structure.":"Polish tone, wording, and structure.","Extend from the selected passage.":"Extend from the selected passage.","Turn long text into concise points.":"Turn long text into concise points.","Explain the meaning and key ideas.":"Explain the meaning and key ideas.","Use your own prompt on the selection.":"Use your own prompt on the selection.","Custom Model":"Custom Model",Unavailable:"Unavailable","Checking...":"Checking...",AI:"AI","AI Complete":"AI Complete","AI Rewrite":"AI Rewrite","AI Continue":"AI Continue","AI Summarize":"AI Summarize","AI Explain":"AI Explain","AI Translate":"AI Translate","AI Tone":"AI Tone","AI Fix":"AI Fix","AI Shorten":"AI Shorten","AI Expand":"AI Expand","AI Simplify":"AI Simplify","AI Professional":"AI Professional","AI Casual":"AI Casual","AI Custom":"AI Custom",Tone:"Tone",Translate:"Translate",Generate:"Generate","Improve writing":"Improve writing","Fix spelling & grammar":"Fix spelling & grammar","Make shorter":"Make shorter","Make longer":"Make longer","Simplify language":"Simplify language","Professional tone":"Professional tone","Casual tone":"Casual tone",English:"English",Chinese:"Chinese",Japanese:"Japanese",German:"German",French:"French",Spanish:"Spanish","Explain this":"Explain this",Summarize:"Summarize","Continue writing":"Continue writing","Press Enter to send, Shift+Enter for newline, Esc to close.":"Press Enter to send, Shift+Enter for newline, Esc to close.","Enter inserts a newline. Tap Send to submit.":"Enter inserts a newline. Tap Send to submit.","Open AI Settings":"Open AI Settings","Trigger AI Inline Completion":"Trigger AI Inline Completion","AI Improve Selection":"AI Improve Selection","AI Custom Rewrite":"AI Custom Rewrite",Send:"Send","Login to PKMer AI":"Login to PKMer AI","PKMer AI":"PKMer AI","Sign in to PKMer to use managed AI without manual model setup.":"Sign in to PKMer to use managed AI without manual model setup.","Log in to PKMer AI to get free AI features without manual model setup.":"Log in to PKMer AI to get free AI features without manual model setup.","Log in to PKMer AI and you can start using free AI features right away.":"Log in to PKMer AI and you can start using free AI features right away.","Need a PKMer AI account?":"Need a PKMer AI account?","Open PKMer AI":"Open PKMer AI","PKMer Account":"PKMer Account",Login:"Login",Logout:"Logout","Refresh Quota":"Refresh Quota","Check Quota":"Check Quota","More Quota":"More Quota","PKMer AI is ready. You can use AI now and check your quota here.":"PKMer AI is ready. You can use AI now and check your quota here.","PKMer managed defaults are used automatically after sign-in.":"PKMer managed defaults are used automatically after sign-in.","Checking current AI route...":"Checking current AI route...","Current route: PKMer AI. If unavailable, it falls back to your custom model.":"Current route: PKMer AI. If unavailable, it falls back to your custom model.","Current route: PKMer AI.":"Current route: PKMer AI.","Current route: Custom model.":"Current route: Custom model.","No provider available. Log in to PKMer or complete the custom model settings.":"No provider available. Log in to PKMer or complete the custom model settings.","No provider available. Log in to PKMer to enable AI.":"No provider available. Log in to PKMer to enable AI.","Unable to determine current AI route.":"Unable to determine current AI route.",Account:"Account",Complete:"Complete","Quick Trigger":"Quick Trigger","Improve Selection":"Improve Selection","Custom Rewrite":"Custom Rewrite","Logout from PKMer":"Logout from PKMer","Editor Features":"Editor Features","PKMer Model":"PKMer Model","Choose models by task.":"Choose models by task.",Mode:"Mode","Light tasks use the light model. Complex tasks use the reasoning model.":"Light tasks use the light model. Complex tasks use the reasoning model.",Completion:"Completion",Rewrite:"Rewrite",Reasoning:"Reasoning",Structured:"Structured","Used for inline completion.":"Used for inline completion.","Used for normal rewrite.":"Used for normal rewrite.","Used for explain, summarize, and custom prompts.":"Used for explain, summarize, and custom prompts.","Used for frontmatter and canvas.":"Used for frontmatter and canvas.","PKMer route only.":"PKMer route only.","Light model":"Light model","Reasoning model":"Reasoning model","Inline completion":"Inline completion","Configure inline completion and rewrite after your AI provider is ready.":"Configure inline completion and rewrite after your AI provider is ready.","Custom Model (Optional)":"Custom Model (Optional)","Custom model is used automatically when PKMer AI is unavailable.":"Custom model is used automatically when PKMer AI is unavailable.","Enable Custom Model":"Enable Custom Model","Use your own OpenAI-compatible provider as a fallback.":"Use your own OpenAI-compatible provider as a fallback.","Custom API Format":"Custom API Format","Choose whether the custom model uses an OpenAI-compatible endpoint or the native Ollama API.":"Choose whether the custom model uses an OpenAI-compatible endpoint or the native Ollama API.","OpenAI-compatible":"OpenAI-compatible",Ollama:"Ollama","Custom API Base URL":"Custom API Base URL","OpenAI-compatible endpoint for your own provider.":"OpenAI-compatible endpoint for your own provider.","Native Ollama endpoint. The root URL, /api, /api/chat, or /api/generate are all supported.":"Native Ollama endpoint. The root URL, /api, /api/chat, or /api/generate are all supported.","Custom Model Name":"Custom Model Name","Model identifier used for inline completion and rewrite requests.":"Model identifier used for inline completion and rewrite requests.","Detected Ollama Models":"Detected Ollama Models","Fetch available models from your Ollama service.":"Fetch available models from your Ollama service.","Choose a detected Ollama model to fill the model field.":"Choose a detected Ollama model to fill the model field.","Select a detected model":"Select a detected model","Custom API Key":"Custom API Key","Optional for Ollama. Leave empty unless your gateway requires authentication.":"Optional for Ollama. Leave empty unless your gateway requires authentication.","Stored securely in Obsidian secret storage.":"Stored securely in Obsidian secret storage.","Will be stored securely in Obsidian secret storage.":"Will be stored securely in Obsidian secret storage.","Current Obsidian version does not support secure secret storage.":"Current Obsidian version does not support secure secret storage.","Stored securely":"Stored securely","Enter API key":"Enter API key",Temperature:"Temperature","Lower values are more stable; higher values are more creative.":"Lower values are more stable; higher values are more creative.","Test Connection":"Test Connection","Send a lightweight request to verify your custom model settings.":"Send a lightweight request to verify your custom model settings.","Please fill in the required custom model settings first.":"Please fill in the required custom model settings first.","No Ollama models found at this endpoint.":"No Ollama models found at this endpoint.","Failed to load Ollama models:":"Failed to load Ollama models:","Please fill in Custom API Base URL, Custom Model Name, and Custom API Key first.":"Please fill in Custom API Base URL, Custom Model Name, and Custom API Key first.","Testing...":"Testing...","Testing custom model connection...":"Testing custom model connection...","Custom model connection succeeded.":"Custom model connection succeeded.","Custom model connection failed:":"Custom model connection failed:","Unknown connection error.":"Unknown connection error.","PKMer AI request failed because your quota is insufficient. Please get more quota in PKMer and try again.":"PKMer AI request failed because your quota is insufficient. Please get more quota in PKMer and try again.","Manual Completion Shortcut":"Manual Completion Shortcut","Default shortcut is Ctrl+J. You can customize it in Obsidian Hotkeys.":"Default shortcut is Ctrl+J. You can customize it in Obsidian Hotkeys.","Open Hotkey Settings":"Open Hotkey Settings","More Options":"More Options",Advanced:"Advanced","Advanced AI settings are usually not needed.":"Advanced AI settings are usually not needed.","Not logged in":"Not logged in","Logged in":"Logged in",Quota:"Quota","Unable to refresh PKMer quota.":"Unable to refresh PKMer quota.","PKMer quota refreshed:":"PKMer quota refreshed:","AI features are disabled in settings.":"AI features are disabled in settings.","Inline completion is disabled in settings.":"Inline completion is disabled in settings.","Current editor does not support AI inline completion.":"Current editor does not support AI inline completion.","Current editor does not support AI rewrite.":"Current editor does not support AI rewrite.","AI Custom Instruction":"AI Custom Instruction",Instruction:"Instruction","Please enter your custom AI instruction":"Please enter your custom AI instruction","Current Obsidian version does not support secure token storage.":"Current Obsidian version does not support secure token storage.","Login cancelled or timed out.":"Login cancelled or timed out.","PKMer login is already in progress. Please continue in the opened browser window.":"PKMer login is already in progress. Please continue in the opened browser window.","Successfully logged in to PKMer!":"Successfully logged in to PKMer!","Failed to complete login. Please try again.":"Failed to complete login. Please try again.","Login failed. Please try again.":"Login failed. Please try again.","OAuth state mismatch. Please try logging in again.":"OAuth state mismatch. Another Obsidian window may have intercepted the callback. Please close other vaults and try again.","Logged out from PKMer.":"Logged out from PKMer.","AI thinking":"AI thinking","AI generating":"AI generating","Ask AI to edit or generate...":"Ask AI to edit or generate...","Submit custom instruction":"Submit custom instruction","AI is writing...":"AI is writing...","AI is generating":"AI is generating","AI suggestion":"AI suggestion",Replace:"Replace","Insert below":"Insert below","Try again":"Try again",Discard:"Discard","AI List":"AI List","AI Table":"AI Table","AI Base":"AI Base","AI Canvas":"AI Canvas","AI Frontmatter":"AI Frontmatter",Toolbox:"Toolbox","AI Toolbox":"AI Toolbox","Convert to list":"Convert to list","Convert to table":"Convert to table","Convert to base":"Convert to base","Convert to canvas":"Convert to canvas","Generate frontmatter":"Generate frontmatter","Insert at cursor":"Insert at cursor","If nothing is selected, AI will use the current block or cursor context.":"If nothing is selected, AI will use the current block or cursor context.",Create:"Create","Create & Embed":"Create & Embed","AI file suggestion":"AI file suggestion","AI frontmatter suggestion":"AI frontmatter suggestion","AI Base File":"AI Base","AI Canvas File":"AI Canvas","Insert frontmatter":"Insert frontmatter","Replace frontmatter":"Replace frontmatter","Failed to apply frontmatter.":"Failed to apply frontmatter.","Created AI file:":"Created AI file:","Failed to create AI file.":"Failed to create AI file.","AI file creation is unavailable.":"AI file creation is unavailable.","AI generated content is empty.":"AI generated content is empty.","AI returned invalid Canvas JSON.":"AI returned invalid Canvas JSON.","Unable to allocate a file name for the generated artifact.":"Unable to allocate a file name for the generated artifact.",Untitled:"Untitled"},b={"Editing Toolbar Append Method":"工具栏的附加方法。","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"工具栏在Obsidian中的追加的位置,只对固定和跟随模式有效。如果你遇到工具栏显示问题,可以选择body试试。请点击下面或者状态栏菜单中的刷新按钮生效。","Editing Toolbar aesthetic":"工具栏样式","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"样式有毛玻璃,简约和默认风格选择。请点击下面或者状态栏菜单中的刷新按钮生效。","Editing Toolbar position":"工具栏位置","Choose between fixed position or cursor following mode.":"在固定位置,光标跟随模式或者置顶模式之间进行选择。","Editing Toolbar Columns":"工具栏栏目数","Choose the number of columns per row to display on Editing Toolbar.":"选择在Editing Toolbar上显示的每行的列数。","Editing Toolbar refresh":"刷新工具栏","Editing Toolbar Commands":"在工具栏中添加命令","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"从Obsidian的命令库中添加一个命令到工具栏。要重新排列命令,可以拖放命令项。要删除它们,请使用命令项右边的删除按钮。图标选择Custom可以自定义图标","Format Brush Off!":"关闭格式刷!","Hide & Show":"隐藏 & 显示","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"对外观的更改生效需要使用刷新按钮。如果你忘记在设置中刷新,在状态栏菜单中也有一个刷新按钮。","Font-Color formatting brush ON!":"字体颜色格式刷开启\n点击鼠标中键或者右键关闭格式刷",More:"更多","Copy commands from selected style.":"从所选样式复制命令。","Font Colors":"字体颜色","Format Brush":"格式刷","Background Color":"背景颜色",Refresh:"刷新",Add:"添加",Delete:"删除","Change Command Name":"更改命令名称","Change Submenu Name":"更改子菜单名称","Button Submenu":"按钮子菜单","Dropdown Menu":"下拉菜单","Menu type changed to":"菜单类型已更改为","Add Submenu":"添加子菜单","Add Separator":"添加分割线","Enter the icon code, it looks like .... format":"输入图标代码,类似.... 格式","Please enter a new name: ":"请输入新名称:","Drag the slider to move the position":"拖动滑块来移动位置","Plugin Settings":"插件设置","Background-color formatting brush ON!":"开启背景色格式刷","Clear formatting brush ON!":"清除格式刷已开启","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"清除格式刷已开启\n点击鼠标中键或者右键关闭格式刷","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"当鼠标移到工具栏上方时,工具栏显示,否则自动隐藏","Editing Toolbar Auto-hide":"工具栏是否自动隐藏","Editing Toolbar Centred Display":"工具栏是否居中显示","Whether the toolbar is centred or full-width, the default is full-width.":"工具栏居中还是全宽显示,默认全宽显示","Custom Backgroud Color":"设置自定义背景色","Custom Font Color":"设置自定义字体颜色","🎨 Set Custom Background":"🎨 设置自定义背景","🖌️ Set Custom Font Color":"🖌️ 设置自定义字体颜色","Click on the picker to adjust the color":"点击选取器来调整颜色","Mobile Enabled or Not":"是否在移动端启用","Whether to enable on mobile devices with device width less than 768px.":"是否在设备宽度小于768的移动设备启用。默认不启用",Reset:"重置",Fix:"修复","Fix Editing Toolbar":"修复工具栏",General:"常规",Appearance:"外观",Commands:"命令","Choose between fixed position or cursor following mode":"选择固定位置或者光标跟随模式","Add and manage commands":"添加和管理命令","Choose where Editing Toolbar will append upon regeneration.":"选择工具栏在Obsidian中的追加的位置。","Whether to enable on mobile devices with device width less than 768px":"是否在移动设备中启用。默认不启用","Choose between a glass morphism, tiny and default style":"选择毛玻璃,简约和默认风格","Refresh Toolbar":"刷新工具栏","Add Command":"添加命令",Settings:"设置","Adjust Toolbar Position[Fixed mode]":"调整工具栏位置[固定模式]","Position Style":"位置样式",Columns:"列数","Drag to Adjust Position":"拖动调整位置","Vertical Position":"垂直位置","Horizontal Position":"水平位置","Toolbar Position":"工具栏位置","Choose an icon":"选择一个图标","Search for an icon...":"搜索图标...",All:"全部",Obsidian:"Obsidian",Glyph:"Glyph","Choose a command":"选择一个命令","The command":"命令","already exists":"已存在","Enter the icon code, format as .... ":"输入图标代码,格式为 .... ","No matching icons found":"没有找到匹配的图标","Custom Commands":"自定义命令","Toolbar Commands":"工具栏命令",ID:"ID",Prefix:"前缀",Suffix:"后缀","Custom Format Commands":"自定义格式命令","Add, edit or delete custom format commands.":"添加、编辑或删除自定义格式命令","Command ID":"命令ID",'Unique identifier, no spaces, e.g.: "my-custom-format"':'唯一标识符,不包含空格,例如:"my-custom-format"',"Displayed name in toolbar and menu":"在工具栏和菜单中显示的名称","Add content before selected text":"在选中的文本前添加内容","Add content after selected text":"在选中的文本后添加内容","Character offset of cursor after formatting":"格式化后光标的字符偏移量","Line offset of cursor after formatting":"格式化后光标的行偏移量","Whether to insert at the beginning of the next line":"是否在下一行首插入","Command icon (click to select)":"命令图标(点击选择)","Choose Icon":"选择图标",Save:"保存",Cancel:"取消","Edit Custom Command":"编辑自定义命令","Add Custom Command":"添加自定义命令","Command ID and command name cannot be empty":"命令ID和命令名称不能为空","Command ID cannot contain spaces":"命令ID不能包含空格",'Command ID "${this.commandId}" already exists':'命令ID "${this.commandId}" 已存在',"Command Name":"命令名称","Cursor Position Offset":"光标位置偏移量","Line Offset":"行偏移量","Line Head Format":"行首格式",Icon:"图标","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"确定要恢复所有设置为默认值吗?这将丢失您的所有自定义配置。","Restore default":"恢复默认值","Restore default settings":"恢复默认设置","🔄Restore default settings":"🔄恢复默认设置","🔧Data repair":"🔧数据修复","Command IDs have been successfully repaired!":"命令ID已成功修复!","No command IDs need to be repaired":"没有命令ID需要修复","Error repairing command IDs, please check the console for details":"修复命令ID时出错,请查看控制台了解详情","Error restoring default settings, please check the console for details":"恢复默认设置时出错,请查看控制台了解详情","Successfully restored default settings!":"已成功恢复默认设置!",Close:"关闭",Tips:"提示","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"此次更新更改了部分命令的ID,请点击此按钮修复命令以确保工具栏正常工作","Repair command ID":"修复命令ID","This will reset all your custom configurations":"这将重置您的所有自定义配置","Notice:":"注意","This update rebuilds the entire code, reducing resource consumption":"此次更新重构了全部代码,降低了资源占用","Optimized mobile usage, added canvas support, and added custom commands":"优化了移动端,增加了对canvas支持,增加了自定义命令","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️此次更新不兼容2.x旧版本命令id,请点击【修复命令】进行兼容","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️如果想恢复默认设置,请点击【恢复默认设置】","Please execute a editingToolbar format command first, then enable the format brush":"请先执行一个格式命令,然后再启用格式刷","Format brush ON! Select text to apply【":"格式刷已开启\n选中文本应用【","】format":"】格式\n点击鼠标右键关闭格式刷","Add to Toolbar":"添加到工具栏","This command is already in the toolbar.":"该命令已存在于工具栏中","Command added to toolbar":"命令已添加到工具栏","Add this command to the toolbar.":"添加该命令到工具栏","Callout Type":"Callout 类型",Title:"标题","Optional, leave blank for default title":"可选,留空则使用默认标题","Input title":"输入标题","Collapse State":"折叠状态",Open:"展开",Closed:"折叠",Content:"内容",Insert:"插入","Input content":"输入内容","Link Text":"链接文本","Link Alias":"链接别名","Link URL":"链接地址","Embed Content":"嵌入内容","Image Size":"图片尺寸","Insert New Line":"插入新行","Paste and Parse":"粘贴并解析","URL Format Error":"URL格式错误","Image Width":"图片宽度","Image Height":"图片高度","Insert a link on the next line":"在下一行插入链接","If it is an image, turn on":"如果是图片,请开启","Link Title(optional)":"链接标题(可选)",Alias:"别名",Optional:"可选","Default 0, format will keep the text selected":"默认0,格式化将保持文本选中","to insert":"插入","Latest Changes":"最新更新","📋View full changelog":"📋查看完整更新日志","Open changelog":"打开更新日志","Loading changelog...":"加载更新日志...","Open the complete changelog in your browser":"在浏览器中打开完整更新日志","Enable Multiple Configurations":"启用多配置","Enable different command configurations for each position style (following, top, fixed).":"启用每个位置样式的不同命令配置(following,top,fixed)","Currently editing commands for":"当前编辑的命令配置为:","position style":"样式","Current Configuration":"当前配置","Switch between different command configurations.":"切换不同的命令配置","Following Style":"跟随样式","Top Style":"顶部样式","Fixed Style":"固定样式","Mobile Style":"移动端样式",configuration:"配置","Deploy command to configurations":"部署命令到配置","All Configurations":"所有配置",Deploy:"部署","Command deployed to selected configurations":"命令已部署到选中的配置","No configuration selected for deployment":"没有选中的配置","Command already exists in selected configurations":"命令已存在于选中的配置","Command deployed to: ":"命令已部署到:","Command Deleted":"命令已删除","Confirm Delete?":"确认删除?","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"您确定要将所有设置恢复为默认值吗?但自定义命令将被保留。","Successfully restored default settings! (Custom commands preserved)":"成功恢复默认设置!(自定义命令已保留)","This will reset all your custom configurations, but custom commands will be preserved":"这将重置您的所有自定义配置,但自定义命令将被保留","Import/Export":"导入/导出","Export Configuration":"导出配置","Export your toolbar configuration to share with others.":"导出您的工具栏配置以与他人共享",Export:"导出","Import Configuration":"导入配置","Import toolbar configuration from JSON.":"从JSON导入工具栏配置",Import:"导入","Usage Instructions":"使用说明","Export: Generate a JSON configuration that you can save or share.":"导出:生成可保存或共享的JSON配置","Import: Paste a previously exported JSON configuration.":"导入:粘贴先前导出的JSON配置","You can choose to export all settings, only toolbar commands, or only custom commands":"您可以选择导出所有设置、仅工具栏命令或仅自定义命令","When importing, the plugin will only update the settings included in the import data":"导入时,插件将仅更新导入数据中包含的设置","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"警告:导入配置将覆盖您当前的设置。建议先导出当前配置作为备份。","Export Type":"导出类型","Choose what to export":"选择要导出的内容","All Settings":"所有设置","Toolbar Commands Only":"仅工具栏命令","Custom Commands Only":"仅自定义命令","Export Content":"导出内容","Copy this content to share with others":"复制此内容以与他人共享","Loading...":"加载中...","Copy to Clipboard":"复制","Configuration copied to clipboard":"配置已复制到剪贴板","Failed to copy configuration":"复制配置失败","Paste the configuration JSON here":"在此处粘贴配置JSON","Paste configuration here...":"在此处粘贴配置...","Invalid import data":"无效的导入数据","Configuration imported successfully":"配置导入成功","No valid configuration found in import data":"导入数据中未找到有效配置","Failed to import configuration. Invalid format.":"导入配置失败。格式无效。","Import Mode":"导入模式","Choose how to import the configuration":"选择如何导入配置","Update Mode (Add new items and update existing ones)":"更新模式(添加新项目并更新现有项目)","Overwrite Mode (Replace all settings with imported ones)":"覆盖模式(用导入的配置替换所有设置)","Configuration imported successfully (Overwrite mode)":"配置导入成功(覆盖模式)","Configuration imported successfully (Update mode)":"配置导入成功(更新模式)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"警告:覆盖模式将完全替换您当前的设置与导入的设置。建议先导出当前配置作为备份。","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"警告:更新模式将根据导入的配置添加新项目并更新现有项目。","Add Format Command":"添加格式命令",Regex:"正则","Prefix/Suffix":"前缀/后缀","Insert Special Char":"增加特殊符号","Add Regex Command":"添加正则表达式命令","Switch Regex Command Window":"切换到正则命令窗口","Please select text first":"请先选中文本","Place the cursor in a paragraph or select text first.":"请将光标放在当前段落内,或先选中文本。","Current line is empty, please select text or move to a non-empty line":"当前行为空,请选中文本或移动到非空行","Use current line for regex commands":"正则命令使用当前行","When no text is selected, regex commands will use the current line instead of clipboard content":"当没有选中文本时,正则命令将使用当前行内容而不是剪贴板内容","The selected text does not meet the condition requirements":"选中的文本不满足条件要求","Regex command execution error: ":"正则表达式命令执行错误:","Copy code":"复制代码","Copied!":"已复制!","Explain the syntax of JavaScript regular expressions":"解释JavaScript正则表达式的语法","Apply regular expression replacement":"应用正则表达式替换","Conditional matching":"条件匹配","Complete regular expression code (copy to AI for explanation)":"完整正则表达式代码(复制到AI解释)","Error: ":"错误:","Regex pattern cannot be empty":"正则表达式不能为空","Command already exists":"命令已存在","Choose icon":"选择图标","URL to Markdown link":"URL转Markdown链接","Convert MM/DD/YYYY to YYYY-MM-DD":"将MM/DD/YYYY日期格式转换为YYYY-MM-DD","Add bold to keywords":"添加粗体到关键词","Format phone number":"格式化电话号码","Remove extra spaces":"删除多余空格","Convert HTML bold tags to Markdown format":"将HTML粗体标签转换为Markdown格式","Convert quoted text to quote block":"将引用的文本转换为引用块","Convert CSV to Markdown table row":"将CSV转换为Markdown表格行","Add uniform alias to Markdown links":"添加统一别名到Markdown链接","Delete empty lines (multiline mode)":"删除空行(多行模式)","Add list symbol to each line (multiline mode)":"添加列表符号到每行(多行模式)","If the text contains important, set the text highlight (conditional format)":"如果文本包含重要内容,设置文本高亮(条件格式)","Matching pattern":"匹配模式","Regex pattern to match":"正则表达式匹配","Replacement pattern (use $1, $2, etc. to reference capture groups)":"替换模式(使用$1, $2等引用捕获组)","Ignore case":"忽略大小写","Global replace":"全局替换","Multiline mode":"多行模式","Use condition":"使用条件","Condition pattern":"条件模式","Only apply custom command when text matches the condition":"仅在文本匹配条件时应用自定义命令","Must exist regular expression or text":"必须存在正则表达式或文本","Replacement pattern":"替换模式","Match case-insensitive":"匹配不区分大小写","^ and $ match the start and end of each line":"^ 和 $ 匹配每行的开始和结束","Replace all matches":"替换所有匹配",Command:"命令","Input example text to view the formatting effect of the command...":"输入示例文本以查看命令的格式化效果...",Description:"描述","[Example]":"[示例]","[Requirements]":"[要求]","[Output]":"[输出]","AI question template:":"AI问题模板:","I need to convert the url to a markdown format link":"我需要将URL转换为Markdown格式链接","For example, convert https://example.com to [https://example.com](https://example.com)":"例如,将https://example.com转换为[https://example.com](https://example.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"使用js正则表达式实现,并输出以下格式的参数(结果不需要用json转义)","[Description]":"[描述]","How to use AI to get regular expressions?":"如何使用AI获取正则表达式?","Regular expression examples":"正则表达式示例","Edit regular expression command":"编辑正则表达式命令","Add regular expression command":"添加正则表达式命令","Result:":"结果:","Example text:":"示例文本:",Preview:"预览",Result:"结果","Update Import":"增量导入","Overwrite Import":"覆盖导入","Importing configuration...":"正在导入配置...","Following Style Only":"仅Following样式","Top Style Only":"仅Top样式","Fixed Style Only":"仅Fixed样式","Mobile Style Only":"仅Mobile样式","Unknown import type":"未知导入类型","All Toolbar Commands":"所有工具栏命令","Following style commands successfully initialized":"Following样式初始化成功","Top style commands successfully initialized":"Top样式初始化成功","Fixed style commands successfully initialized":"Fixed样式初始化成功","Mobile style commands successfully initialized":"Mobile样式初始化成功","Commands initialized successfully":"命令初始化成功","Reset Commands":"重置命令","Are you sure you want to reset the current configuration?":"您确定要将当前配置进行重置吗?","Commands reset successfully":"命令重置成功","Initialize Commands":"初始化命令","Initialize commands to default settings":"初始化命令到默认设置","Reset commands to default settings":"重置命令到默认设置",Clear:"清除","Remove all commands from this configuration.":"清除当前样式下的所有命令","Are you sure you want to clear all commands under the current style?":"您确定要清除当前样式下的所有命令吗?","Current style commands have been cleared":"当前样式下的命令已清除","Manage Commands":"管理命令","Reset or clear all commands in this configuration":"重置或清除当前样式下的所有命令","Import Commands from Other Styles":"从其他样式导入命令","Copy commands from another style configuration.":"从另一个样式配置复制命令","Main menu only":"Main menu only","This import will update:":"此次导入将更新:","Custom commands":"自定义命令","Toolbar commands":"工具栏命令","All settings":"所有设置","Following style only":"跟随样式","Top style only":"顶部样式","Fixed style only":"固定样式","Mobile style only":"移动端样式","Main Menu Commands":"主菜单命令","Following Style Commands":"跟随样式命令","Top Style Commands":"顶部样式命令","Fixed Style Commands":"固定样式命令","Mobile Style Commands":"移动端样式命令","General settings":"常规设置","Please paste configuration data first":"请先粘贴配置数据","Invalid import data format":"无效的导入数据格式","Do you want to continue?":"您确定要继续吗?","Warning: Update mode will add new items and update existing ones.":"警告:更新模式将添加新项目并更新现有项目。","Warning: Overwrite mode will completely replace your current settings with the imported ones.":"警告:覆盖模式将完全替换您当前的设置与导入的设置。","Overwrite Mode (Replace settings with imported ones)":"覆盖模式(用导入的配置替换所有设置)","Warning: Overwrite mode will replace existing settings with imported ones.":"警告:覆盖模式将用导入的配置替换所有设置。","Enable Multiple Config":"启用多配置","One-click Clear":"一键清除","This import will:":"此次导入将:","Update general settings":"更新常规设置","Update Main Menu Commands":"更新主菜单命令","Update Custom Commands":"更新自定义命令","Update Following Style Commands":"更新跟随样式命令","Update Top Style Commands":"更新顶部样式命令","Update Fixed Style Commands":"更新固定样式命令","Clear all Main Menu Commands":"清除所有主菜单命令","Clear all Custom Commands":"清除所有自定义命令","Clear all Following Style Commands":"清除所有跟随样式命令","Clear all Top Style Commands":"清除所有顶部样式命令","Clear all Fixed Style Commands":"清除所有固定样式命令","Clear all Mobile Style Commands":"清除所有移动端样式命令","Set Multiple Config to:":"设置多配置为:",Enable:"启用",Disable:"禁用","Set Position Style to:":"设置位置样式为:",Following:"跟随",Top:"顶部",Fixed:"固定",Mobile:"移动端","All commands":"所有命令","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ 覆盖模式将用导入的配置替换所有设置。","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ 更新模式将合并导入的设置与现有的设置。","Imported settings:":"导入的设置:","Imported commands:":"导入的命令:","Disable toolbar for this view":"禁用此视图的工具栏","Enable toolbar for this view":"启用此视图的工具栏","Manage all view types":"管理所有视图类型","Current View: ":"当前视图:","Appearance Style":"外观样式","Position Settings":"位置设置","Join the Community":"加入社区","Share your toolbar settings and styles in our":"分享您的工具栏设置和样式:","section!":"社区!","Get inspired by what others have created or showcase your own customizations.":"获取灵感或展示您的自定义设置。","Toolbar Preview (With a hypothetical command configuration.)":"工具栏预览(按钮仅供参考)","Toolbar Theme":"工具栏主题","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"选择预设的工具栏主题,自动设置背景颜色、图标颜色和大小","Toolbar Background Color":"工具栏背景颜色","Set the background color of the toolbar.":"设置工具栏的背景颜色","Toolbar Icon Color":"工具栏图标颜色","Set the color of the toolbar icon.":"设置工具栏图标颜色","Toolbar Icon Size":"工具栏图标大小","Set the size of the toolbar icon (px); default: 18px":"设置工具栏图标大小(px)默认18px","Custom theme":"自定义主题","Fixed Position Offset":"固定位置偏移","Choose the offset of the Editing Toolbar in the fixed position.":"选择固定位置工具栏的偏移量。","Renumber List":"列表重新编号","Insert link":"插入链接","Please enter a URL first":"请先输入一个URL","Failed to fetch title for":"获取标题失败","Link Title (optional)":"链接标题(可选)","Unable to detect editor width":"无法检测编辑器宽度","Fit Editor Width":"自适应宽度","Fetch Remote Title":"获取URL标题","Please execute a format command or select format text first, then enable the format brush":"请先执行一个格式命令或选中带格式的文本,然后启用格式刷",Confirm:"确认","Use \\n to represent line breaks":"使用\\n表示换行符","Use ↵ to represent line breaks":"使用↵表示换行符","All commands have been removed.":"所有命令已被清除。","Top Toolbar":"顶部工具栏","Enable the toolbar positioned at the top.":"启用位于顶部的工具栏。","Following Toolbar":"跟随工具栏","Enable the toolbar that appears upon text selection.":"启用在选中文本时出现的工具栏。","Fixed Toolbar":"固定工具栏","Enable the toolbar whose position may be fixed where you please.":"启用可以固定在任意位置的工具栏。","Toolbar Settings":"工具栏设置","Choose which toolbar style's appearance you want to edit.":"选择要编辑外观的工具栏样式。","Vertical Split":"垂直分割","Text Enhancement Tools":"文本增强工具","Get Plain Text":"获取无语法文本","Full Half Converter":"全角半角转换","Insert Blank Lines":"插入空行","Remove Blank Lines":"删除空行","Split Lines":"拆分行","Dedupe Lines":"去除重复行","Add Prefix/Suffix":"添加前后缀","Number Lines (Custom)":"添加行号(自定义)","Trim Line Ends":"去除行首尾空格","Shrink Extra Spaces":"压缩多余空格","Remove All Whitespace":"移除所有空白","Extract Between Strings":"提取字符串之间内容","Merge Lines":"合并行","List to Table":"多级列表转表格","Table to List":"表格转多级列表","Line Operations":"行操作","Text Processing":"文本处理","Advanced Tools":"高级工具","Align Text Right":"右对齐",Bold:"加粗",Checklist:"清单","Clear Text Formatting":"清除文本格式",Copy:"复制",Cut:"剪切",Embed:"嵌入","Header 1":"标题 1","Header 2":"标题 2","Header 3":"标题 3","Header 4":"标题 4","Header 5":"标题 5","Header 6":"标题 6",Highlight:"高亮","Horizontal Divider":"水平分隔线","Indent list":"增加列表缩进","Inline Math":"行内公式",Italic:"斜体",Link:"链接",MathBlock:"数学公式块","Ordered List":"有序列表",Paste:"粘贴","Redo Edit":"重做编辑",Strikethrough:"删除线",Underline:"下划线","Undo Edit":"撤销编辑","Unindent List":"减少列表缩进","Unordered List":"无序列表","Insert Embed":"插入嵌入","Insert Link":"插入链接","Insert Tag":"插入标签","Insert Internal link":"插入内部链接","Insert Code":"插入代码","Insert Blockquote":"插入引用块","Insert Comment":"插入注释","Insert Callout":"插入 Callout","Insert MathBlock":"插入数学公式块","Insert Table":"插入表格","Swap Line Up":"上移当前行","Swap Line Down":"下移当前行","Attach File":"附加文件","Clear Formatting":"清除格式","Cycle List and Checklist":"循环切换列表与清单",Blockquote:"引用块",Callout:"Callout",Superscript:"上标",Subscript:"下标","Inline Code":"行内代码","Code Block":"代码块",Wikilink:"内部链接","Justify Text":"两端对齐","Align Text Left":"左对齐","Center Text":"居中对齐","Change Font Color":"更改字体颜色","Change Background Color":"更改背景颜色","Fullscreen Focus Mode":"全屏专注模式","Workplace Fullscreen":"工作区全屏","Renumber Ordered List":"重新编号有序列表","Toggle Format Brush":"切换格式刷","Toggle Fullscreen Focus Mode":"切换全屏专注模式","Toggle Workplace Fullscreen Focus":"切换工作区全屏","Enter prefix":"输入前缀","Enter suffix":"输入后缀",Delimiter:"分隔符","Enter delimiter (e.g., comma, tab)":"输入分隔符(例如:逗号、制表符)","Column Number":"列号","Enter column number (starting from 1)":"输入列号(从1开始)","Start String":"起始字符串","Enter start string":"输入起始字符串","End String":"结束字符串","Enter end string":"输入结束字符串","Number Lines Configuration":"行号配置","Start Number":"起始数字",Step:"步长",Separator:"分隔符","Merge Lines Settings":"合并行设置","Separator (leave empty for smart spacing)":"分隔符 (留空则开启智能中英间距)","e.g., comma, pipe, arrow":"例如: , 或 | 或 →","Plain text copied to clipboard":"无语法文本已复制到剪贴板","Whitespace cleaning completed":"空白字符清洗完成","List pattern detected, auto-split":"检测到列表模式,已自动拆分","No obvious separator or list pattern detected":"未识别到明显的分隔符或列表模式","Paste failed":"粘贴失败","Detected Chinese context: converted to full-width symbols":"检测为中文语境:已转换为全角符号","Detected code/English context: converted to half-width symbols":"检测为代码/英文语境:已转换为半角符号","Please select text to dedupe first":"请先选择要去重的文本","Deduplication completed, remaining":"去重完成,剩余",lines:"行","Prefix/suffix added":"添加前后缀完成","Please select text to number first":"请先选择要编号的文本","Numbering completed: starting from":"已完成编号:从","Please specify start or end string":"请指定起始或结束字符串",Extracted:"提取了",matches:"个匹配项","No matches found":"未找到匹配项","Extraction failed":"提取失败","Please select lines to merge first":"请先选择要合并的行","Merged with":"已按","Merge completed":"已完成合并",Item:"项目","Super conversion completed: context preserved and layout optimized":"超级转换完成:已保留上下文并优化排版","Please select a valid Markdown table":"请先选择有效的 Markdown 表格","Table converted to multi-level list":"表格已还原为多级列表","AI Editor":"AI 编辑","Enable AI Editor":"启用 AI 编辑","Enable AI editor features such as inline completion and selection rewrite.":"启用行内补全和选区改写等 AI 编辑能力。","Try AI Editing":"试试 AI 编辑","Unlock inline completion, rewrite, frontmatter, and canvas generation right inside your toolbar.":"在当前工具栏中直接解锁行内补全、改写、Frontmatter 生成和 Canvas 草稿等能力。","Sign in to PKMer AI for free managed AI, or use your own compatible model.":"登录 PKMer AI 即可优先使用免费托管 AI,也可以改用你自己的兼容模型。","What you get":"你将获得","Inline completion while you write":"写作过程中直接获得行内补全","Rewrite, summarize, and continue text in place":"原地改写、总结、续写当前内容","Generate frontmatter, lists, tables, and canvas drafts":"生成 Frontmatter、列表、表格与 Canvas 草稿","Before you enable AI":"启用前请知悉","The plugin itself does not intentionally store your note content.":"插件本身不会主动存储你的笔记内容。","AI requests are sent only to the provider you choose, such as PKMer AI or your custom model.":"AI 请求只会发送到你选择的服务提供方,例如 PKMer AI 或你的自定义模型。","Those requests remain subject to the provider privacy policy, terms, and model rules.":"这些请求仍然受到对应服务提供方的隐私政策、服务条款和模型规则约束。","You can turn AI off at any time in settings.":"你可以随时在设置中关闭 AI。","Agree & Enable AI":"同意并启用 AI","Not now":"暂不开启","AI editing is now enabled. The plugin does not intentionally store your note content, and requests follow your chosen provider policies.":"AI 编辑已启用。插件不会主动存储你的笔记内容,但请求仍会遵循你所选 AI 服务方的策略。",Enabled:"已启用",Disabled:"已停用","Completion Mode":"补全模式","Choose whether completion is triggered manually or automatically after a short pause.":"选择手动触发,或在短暂停顿后自动触发补全。","Enable Inline Completion":"启用行内补全","Show ghost text suggestions inside the editor.":"在编辑器中显示幽灵文字补全建议。","Completion Delay (ms)":"补全延迟(毫秒)","Delay before auto-triggering inline completion.":"自动触发补全前的等待时长。","Completion Max Tokens":"补全最大 Tokens","Upper bound for one inline completion response. Increase it if completions feel cut off.":"单次行内补全的长度上限。如果经常感觉补全被截断,可以适当调高。",Manual:"手动",Auto:"自动","Text Tools":"文本工具","AI Tools":"AI 工具","Inline Completion":"行内补全","Select text to see more tools":"选中文本后显示更多工具","AI Assistant":"AI 助手","AI module is ready":"AI 已就绪","Use AI enhancements directly from the toolbar.":"直接在工具栏中使用 AI 编辑增强。","Place the cursor for inline completion, or select text to unlock rewrite actions.":"将光标放在编辑位置可触发行内补全;选中文本后可使用改写类能力。","Selected text detected. Rewrite actions are ready.":"已检测到选中文本,可直接使用改写、续写、总结与解释功能。","AI Continue Writing":"AI 继续写作","AI Summarize Selection":"AI 总结选中文本","AI Explain Selection":"AI 解释选中文本","At Cursor":"光标位置","On Selection":"选中文本","Continue writing at the current cursor.":"基于当前光标位置继续写作。","Polish tone, wording, and structure.":"润色语气、措辞与结构。","Extend from the selected passage.":"基于选中内容继续往下写。","Turn long text into concise points.":"将较长内容提炼成精简要点。","Explain the meaning and key ideas.":"解释这段内容的含义与重点。","Use your own prompt on the selection.":"对选中内容使用你的自定义指令。","Custom Model":"自定义模型",Unavailable:"不可用","Checking...":"检查中...",AI:"AI","AI Complete":"AI补全","AI Rewrite":"AI改写","AI Continue":"AI续写","AI Summarize":"AI总结","AI Explain":"AI解释","AI Translate":"AI翻译","AI Tone":"AI语气","AI Fix":"AI纠错","AI Shorten":"AI缩写","AI Expand":"AI扩写","AI Simplify":"AI简化","AI Professional":"AI专业化","AI Casual":"AI口语化","AI Custom":"AI自定义",Custom:"自定义",Edit:"编辑",Tone:"语气",Translate:"翻译",Generate:"生成","Improve writing":"优化写作","Fix spelling & grammar":"修复拼写与语法","Make shorter":"缩短内容","Make longer":"扩展内容","Simplify language":"简化表达","Professional tone":"专业语气","Casual tone":"口语语气",English:"英文",Chinese:"中文",Japanese:"日文",German:"德语",French:"法语",Spanish:"西班牙语","Explain this":"解释这段内容",Summarize:"总结内容","Continue writing":"继续写作","Press Enter to send, Shift+Enter for newline, Esc to close.":"回车发送,Shift+Enter 换行,Esc 关闭。","Enter inserts a newline. Tap Send to submit.":"回车换行,点击发送提交。","Open AI Settings":"打开 AI 设置","Trigger AI Inline Completion":"触发 AI 行内补全","AI Improve Selection":"AI 优化选中文本","AI Custom Rewrite":"AI 自定义改写",Send:"发送","Login to PKMer AI":"登录 PKMer AI","PKMer AI":"PKMer AI","Sign in to PKMer to use managed AI without manual model setup.":"登录 PKMer 后即可使用托管 AI,无需手动配置模型参数。","Log in to PKMer AI to get free AI features without manual model setup.":"登录 PKMer AI 后即可免费使用 AI 能力,无需手动配置模型参数。","Log in to PKMer AI and you can start using free AI features right away.":"登录 PKMer AI 后即可立即开始免费使用 AI 能力。","Need a PKMer AI account?":"还没有 PKMer AI 账号?","Open PKMer AI":"前往 PKMer AI","PKMer Account":"PKMer 账号",Login:"登录",Logout:"退出登录","Refresh Quota":"刷新额度","Check Quota":"查询额度","More Quota":"更多额度","PKMer AI is ready. You can use AI now and check your quota here.":"PKMer AI 已就绪。你现在可以直接使用 AI,并在这里查询额度。","PKMer managed defaults are used automatically after sign-in.":"登录后会自动使用 PKMer 的托管默认配置。","Checking current AI route...":"正在检查当前 AI 链路...","Current route: PKMer AI. If unavailable, it falls back to your custom model.":"当前链路:优先使用 PKMer AI;如果不可用,则回退到自定义模型。","Current route: PKMer AI.":"当前链路:PKMer AI。","Current route: Custom model.":"当前链路:自定义模型。","No provider available. Log in to PKMer or complete the custom model settings.":"当前没有可用 provider。请登录 PKMer,或完成自定义模型配置。","No provider available. Log in to PKMer to enable AI.":"当前没有可用 provider。请登录 PKMer 以启用 AI。","Unable to determine current AI route.":"无法判断当前 AI 链路。",Account:"账户",Complete:"补全","Quick Trigger":"快速触发","Improve Selection":"优化选中文本","Custom Rewrite":"自定义改写","Logout from PKMer":"退出 PKMer","Editor Features":"编辑增强功能","PKMer Model":"PKMer 模型","Choose models by task.":"按场景选择模型。",Mode:"模式","Light tasks use the light model. Complex tasks use the reasoning model.":"轻量任务用轻量模型,复杂任务用推理模型。",Completion:"补全",Rewrite:"改写",Reasoning:"推理",Structured:"结构化","Used for inline completion.":"用于行内补全。","Used for normal rewrite.":"用于普通改写。","Used for explain, summarize, and custom prompts.":"用于解释、总结和自定义指令。","Used for frontmatter and canvas.":"用于 Frontmatter 和 Canvas。","PKMer route only.":"仅对 PKMer 生效。","Light model":"轻量模型","Reasoning model":"推理模型","Inline completion":"行内补全","Configure inline completion and rewrite after your AI provider is ready.":"在 AI provider 准备就绪后,再配置行内补全和改写能力。","Custom Model (Optional)":"自定义模型(可选)","Custom model is used automatically when PKMer AI is unavailable.":"当 PKMer AI 不可用时,会自动使用你的自定义模型。","Enable Custom Model":"启用自定义模型","Use your own OpenAI-compatible provider as a fallback.":"将你自己的 OpenAI 兼容服务作为备用链路。","Custom API Format":"自定义接口格式","Choose whether the custom model uses an OpenAI-compatible endpoint or the native Ollama API.":"选择自定义模型使用 OpenAI 兼容接口,还是原生 Ollama API。","OpenAI-compatible":"OpenAI 兼容",Ollama:"Ollama","Custom API Base URL":"自定义 API 地址","OpenAI-compatible endpoint for your own provider.":"填写你自己的 OpenAI 兼容接口地址。","Native Ollama endpoint. The root URL, /api, /api/chat, or /api/generate are all supported.":"填写原生 Ollama 接口地址。支持根地址、/api、/api/chat 或 /api/generate。","Custom Model Name":"自定义模型名称","Model identifier used for inline completion and rewrite requests.":"用于行内补全和改写请求的模型标识。","Detected Ollama Models":"检测到的 Ollama 模型","Fetch available models from your Ollama service.":"从你的 Ollama 服务读取可用模型。","Choose a detected Ollama model to fill the model field.":"选择一个检测到的 Ollama 模型,自动填入模型名称。","Select a detected model":"选择一个检测到的模型","Custom API Key":"自定义 API Key","Optional for Ollama. Leave empty unless your gateway requires authentication.":"Ollama 模式下此项可选;除非你的网关要求鉴权,否则可以留空。","Stored securely in Obsidian secret storage.":"已安全存储在 Obsidian 的秘密存储区。","Will be stored securely in Obsidian secret storage.":"将安全存储在 Obsidian 的秘密存储区。","Current Obsidian version does not support secure secret storage.":"当前 Obsidian 版本不支持安全秘密存储。","Stored securely":"已安全存储","Enter API key":"输入 API Key",Temperature:"温度","Lower values are more stable; higher values are more creative.":"更低的值更稳定,更高的值更具创造性。","Test Connection":"测试连接","Send a lightweight request to verify your custom model settings.":"发送一次轻量请求,验证你的自定义模型配置是否可用。","Please fill in the required custom model settings first.":"请先填写必需的自定义模型配置。","No Ollama models found at this endpoint.":"这个 Ollama 地址下没有读取到任何模型。","Failed to load Ollama models:":"读取 Ollama 模型列表失败:","Please fill in Custom API Base URL, Custom Model Name, and Custom API Key first.":"请先填写自定义 API 地址、自定义模型名称和自定义 API Key。","Testing...":"测试中...","Testing custom model connection...":"正在测试自定义模型连接...","Custom model connection succeeded.":"自定义模型连接成功。","Custom model connection failed:":"自定义模型连接失败:","Unknown connection error.":"未知连接错误。","PKMer AI request failed because your quota is insufficient. Please get more quota in PKMer and try again.":"PKMer AI 请求失败:当前账号额度不足。请前往 PKMer 获取更多额度后重试。","Manual Completion Shortcut":"手动补全快捷键","Default shortcut is Ctrl+J. You can customize it in Obsidian Hotkeys.":"默认快捷键是 Ctrl+J,你也可以在 Obsidian 快捷键设置中自定义。","Open Hotkey Settings":"打开快捷键设置","More Options":"更多选项",Advanced:"高级","Advanced AI settings are usually not needed.":"大多数情况下不需要调整这些高级 AI 设置。","Not logged in":"未登录","Logged in":"已登录",Quota:"额度","Unable to refresh PKMer quota.":"无法刷新 PKMer 额度。","PKMer quota refreshed:":"PKMer 额度已刷新:","AI features are disabled in settings.":"AI 功能已在设置中关闭。","Inline completion is disabled in settings.":"行内补全已在设置中关闭。","Current editor does not support AI inline completion.":"当前编辑器不支持 AI 行内补全。","Current editor does not support AI rewrite.":"当前编辑器不支持 AI 改写。","AI Custom Instruction":"AI 自定义指令",Instruction:"指令","Please enter your custom AI instruction":"请输入你的自定义 AI 指令","Current Obsidian version does not support secure token storage.":"当前 Obsidian 版本不支持安全令牌存储。","Login cancelled or timed out.":"登录已取消或已超时。","PKMer login is already in progress. Please continue in the opened browser window.":"PKMer 登录已在进行中,请在已打开的浏览器窗口中继续完成授权。","Successfully logged in to PKMer!":"已成功登录 PKMer!","Failed to complete login. Please try again.":"登录流程未完成,请重试。","Login failed. Please try again.":"登录失败,请重试。","OAuth state mismatch. Please try logging in again.":"OAuth 状态校验失败:可能是另一个 Obsidian 窗口或库拦截了本次回调。请关闭多余库后重试。","Logged out from PKMer.":"已退出 PKMer 登录。","AI thinking":"AI 思考中","AI generating":"AI 正在生成","Ask AI to edit or generate...":"告诉 AI 你想编辑或生成什么…","Submit custom instruction":"提交自定义指令","AI is writing...":"AI 正在生成…","AI is generating":"AI 正在生成","AI suggestion":"AI 建议",Replace:"替换","Insert below":"插入到下方","Try again":"重试",Discard:"丢弃","AI List":"AI 列表","AI Table":"AI 表格","AI Base":"AI Base","AI Canvas":"AI Canvas","AI Frontmatter":"AI 属性",Toolbox:"百宝箱","AI Toolbox":"AI 百宝箱","Convert to list":"转为列表","Convert to table":"转为表格","Convert to base":"转为 Base","Convert to canvas":"转为 Canvas","Generate frontmatter":"生成 Frontmatter","Insert at cursor":"插入到光标处","If nothing is selected, AI will use the current block or cursor context.":"如果未选中文本,AI 会自动使用当前段落或光标上下文。",Create:"创建","Create & Embed":"创建并嵌入","AI file suggestion":"AI 文件建议","AI frontmatter suggestion":"AI 属性建议","AI Base File":"AI Base","AI Canvas File":"AI Canvas","Insert frontmatter":"插入 Frontmatter","Replace frontmatter":"替换 Frontmatter","Failed to apply frontmatter.":"应用 Frontmatter 失败。","Created AI file:":"已创建 AI 文件:","Failed to create AI file.":"创建 AI 文件失败。","AI file creation is unavailable.":"当前无法创建 AI 文件。","AI generated content is empty.":"AI 生成的内容为空。","AI returned invalid Canvas JSON.":"AI 返回的 Canvas JSON 无效。","Unable to allocate a file name for the generated artifact.":"无法为生成结果分配可用文件名。",Untitled:"未命名"},y={...b};const C={ar:{},cs:{},da:{},de:{},en:f,"en-gb":{"Editing Toolbar Append Method":"Editing Toolbar Append Method","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar aesthetic":"Editing Toolbar aesthetic","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar position":"Editing Toolbar position","Choose between fixed position or cursor following mode.":"Choose between fixed position, cursor following or Top mode.","Editing Toolbar Columns":"Editing Toolbar Columns","Choose the number of columns per row to display on Editing Toolbar.":"Choose the number of columns per row to display on Editing Toolbar.","Editing Toolbar refresh":"Editing Toolbar refresh","Editing Toolbar Commands":"Editing Toolbar Commands","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.","Format Brush Off!":"Format Brush Off!","Hide & Show":"Hide & Show","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.","Font-Color formatting brush ON!":"Font-Colour formatting brush ON!",More:"More","Font Colors":"Font Colours","Format Brush":"Format Brush","Background color":"Background colour",Refresh:"Refresh",Add:"Add",Delete:"Delete","Change Command Name":"Change Command Name","Add Submenu":"Add Submenu","Add Separator":"Add Separator","Enter the icon code, it looks like .... format":"Enter the icon code, it looks like .... format","Please enter a new name: ":"Please enter a new name: ","Drag the slider to move the position":"Drag the slider to move the position","Plugin Settings":"Plugin Settings","Background-color formatting brush ON!":"Background-colour formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","Clear formatting brush ON!":"Clear formatting brush ON!","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden","Editing Toolbar Auto-hide":"Editing Toolbar Auto-hide","Editing Toolbar Centred Display":"Editing Toolbar Centred Display","Whether the toolbar is centred or full-width, the default is full-width.":"Whether the toolbar is centred or full-width, the default is full-width.","Custom Backgroud Color":"Custom Backgroud Colour","Custom Font Color":"Custom Font Colour","🎨 Set Custom Background":"🎨 Set Custom Background","🖌️ Set Custom Font Color":"🖌️ Set Custom Font Colour","Click on the picker to adjust the color":"Click on the picker to adjust the colour","Mobile Enabled or Not":"Mobile Enabled or Not","Whether to enable the plugin for the mobile client, the default is enabled.":"Whether to enable the plugin for the mobile client, the default is enabled.","Whether to enable on mobile devices with device width less than 768px.":"Whether to enable on mobile devices with device width less than 768px, the default is disable.",Reset:"Reset",Fix:"Fix","Fix Editing Toolbar":"Fix Editing Toolbar",General:"General",Appearance:"Appearance",Commands:"Commands","Choose between fixed position or cursor following mode":"Choose between fixed position, cursor following or Top mode.","Add and manage commands":"Add and manage commands","Choose where Editing Toolbar will append upon regeneration.":"Choose where Editing Toolbar will append upon regeneration.","Whether to enable on mobile devices with device width less than 768px":"Whether to enable on mobile devices with device width less than 768px","Choose between a glass morphism, tiny and default style.":"Choose between a glass morphism, tiny and default style.","Refresh Toolbar":"Refresh Toolbar","Add Command":"Add Command",Settings:"Settings","Position Style":"Position Style",Columns:"Columns","Drag to Adjust Position":"Drag to Adjust Position","Vertical Position":"Vertical Position","Horizontal Position":"Horizontal Position","Toolbar Position":"Toolbar Position","Choose an icon":"Choose an icon","Search for an icon...":"Search for an icon...",All:"All",Obsidian:"Obsidian",Glyph:"Glyph",Custom:"Custom","Choose a command":"Choose a command","The command":"The command","already exists":"already exists","Enter the icon code, format as .... ":"Enter the icon code, format as .... ","No matching icons found":"No matching icons found","Custom Commands":"Custom Commands","Toolbar Commands":"Toolbar Commands",ID:"ID",Prefix:"Prefix",Suffix:"Suffix",Pattern:"Pattern","Custom Format Commands":"Custom Format Commands","Add, edit or delete custom format commands.":"Add, edit or delete custom format commands.",Edit:"Edit","Command ID":"Command ID",'Unique identifier, no spaces, e.g.: "my-custom-format"':'Unique identifier, no spaces, e.g.: "my-custom-format"',"Displayed name in toolbar and menu":"Displayed name in toolbar and menu","Add content before selected text":"Add content before selected text","Add content after selected text":"Add content after selected text","Character offset of cursor after formatting":"Character offset of cursor after formatting","Line offset of cursor after formatting":"Line offset of cursor after formatting","Whether to insert at the beginning of the next line":"Whether to insert at the beginning of the next line","Command icon (click to select)":"Command icon (click to select)","Choose Icon":"Choose Icon",Save:"Save",Cancel:"Cancel","Edit Custom Command":"Edit Custom Command","Add Custom Command":"Add Custom Command","Command ID and command name cannot be empty":"Command ID and command name cannot be empty","Command ID cannot contain spaces":"Command ID cannot contain spaces",'Command ID "${this.commandId}" already exists':'Command ID "${this.commandId}" already exists',"Cursor Position Offset":"Cursor Position Offset","Line Offset":"Line Offset","Line Head Format":"Line Head Format",Icon:"Icon","Command Name":"Command Name","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"Are you sure you want to restore all settings to default? This will lose all your custom configurations.","Restore default":"Restore default","Restore default settings":"Restore default settings","🔄Restore default settings":"🔄Restore default settings","🔧Data repair":"🔧Data repair","Command IDs have been successfully repaired!":"Command IDs have been successfully repaired!","No command IDs need to be repaired":"No command IDs need to be repaired","Error repairing command IDs, please check the console for details":"Error repairing command IDs, please check the console for details","Error restoring default settings, please check the console for details":"Error restoring default settings, please check the console for details","Successfully restored default settings!":"Successfully restored default settings!",Close:"Close",Tips:"Tips","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly","Repair command ID":"Repair command ID","This will reset all your custom configurations":"This will reset all your custom configurations","Notice:":"Notice:","This update rebuilds the entire code, reducing resource consumption":"This update rebuilds the entire code, reducing resource consumption","Optimized mobile usage, added canvas support, and added custom commands":"Optimized mobile usage, added canvas support, and added custom commands","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️If you want to restore the default settings, please click [Restore default settings]","Please execute a editingToolbar format command first, then enable the format brush":"Please execute a editingToolbar format command first, then enable the format brush","Format brush ON! Select text to apply【":"Format brush ON! Select text to apply【","】format":"】format\nClick the mouse middle or right key to close the formatting-brush","Add to Toolbar":"Add to Toolbar","This command is already in the toolbar.":"This command is already in the toolbar.","Command added to toolbar":"Command added to toolbar","Add this command to the toolbar.":"Add this command to the toolbar.","Callout Type":"Callout Type",Title:"Title","Optional, leave blank for default title":"Optional, leave blank for default title","Input title":"Input title","Collapse State":"Collapse State",Open:"Open",Closed:"Closed",Content:"Content",Insert:"Insert",Default:"Default","Input content":"Input content","Link Text":"Link Text","Link Alias":"Link Alias","Link URL":"Link URL","Embed Content":"Embed Content","Image Size":"Image Size","Insert New Line":"Insert New Line","Paste and Parse":"Paste and Parse","URL Format Error":"URL Format Error","Image Width":"Image Width","Image Height":"Image Height","If it is an image, turn on":"If it is an image, turn on","Insert a link on the next line":"Insert a link on the next line","Link Title(optional)":"Link Title(optional)",Alias:"Alias",Optional:"Optional","Default 0, format will keep the text selected":"Default 0, format will keep the text selected","to insert":"to insert","Latest Changes":"Latest Changes","📋View full changelog":"📋View full changelog","Open changelog":"Open changelog","Loading changelog...":"Loading changelog...","Open the complete changelog in your browser":"Open the complete changelog in your browser","Enable Multiple Configurations":"Enable Multiple Configurations","Enable different command configurations for each position style (following, top, fixed).":"Enable different command configurations for each position style (following, top, fixed).","Currently editing commands for":"Currently editing commands for","position style":"position style","Current Configuration":"Current Configuration","Switch between different command configurations.":"Switch between different command configurations.","Following Style":"Following Style","Top Style":"Top Style","Fixed Style":"Fixed Style","Mobile Style":"Mobile Style",configuration:"configuration","Deploy command to configurations":"Deploy command to configurations","All Configurations":"All Configurations",Deploy:"Deploy","Command deployed to selected configurations":"Command deployed to selected configurations","No configuration selected for deployment":"No configuration selected for deployment","Command already exists in selected configurations":"Command already exists in selected configurations","Command deployed to: ":"Command deployed to: ","Command Deleted.":"Command Deleted.","Confirm Delete?":"Confirm Delete?",Confirm:"Confirm","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"Are you sure you want to restore all settings to default? But custom commands will be preserved.","Successfully restored default settings! (Custom commands preserved)":"Successfully restored default settings! (Custom commands preserved)","This will reset all your custom configurations, but custom commands will be preserved":"This will reset all your custom configurations, but custom commands will be preserved","Import/Export":"Import/Export","Export Configuration":"Export Configuration","Export your toolbar configuration to share with others.":"Export your toolbar configuration to share with others.",Export:"Export","Import Configuration":"Import Configuration","Import toolbar configuration from JSON.":"Import toolbar configuration from JSON.",Import:"Import","Usage Instructions":"Usage Instructions","Export: Generate a JSON configuration that you can save or share.":"Export: Generate a JSON configuration that you can save or share.","Import: Paste a previously exported JSON configuration.":"Import: Paste a previously exported JSON configuration.","You can choose to export all settings, only toolbar commands, or only custom commands":"You can choose to export all settings, only toolbar commands, or only custom commands","When importing, the plugin will only update the settings included in the import data":"When importing, the plugin will only update the settings included in the import data","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.","Export Type":"Export Type","Choose what to export":"Choose what to export","All Settings":"All Settings","Toolbar Commands Only":"Toolbar Commands Only","Custom Commands Only":"Custom Commands Only","Export Content":"Export Content","Copy this content to share with others":"Copy this content to share with others","Loading...":"Loading...","Copy to Clipboard":"Copy","Configuration copied to clipboard":"Configuration copied to clipboard","Failed to copy configuration":"Failed to copy configuration","Paste the configuration JSON here":"Paste the configuration JSON here","Paste configuration here...":"Paste configuration here...","Invalid import data":"Invalid import data","Configuration imported successfully":"Configuration imported successfully","No valid configuration found in import data":"No valid configuration found in import data","Failed to import configuration. Invalid format.":"Failed to import configuration. Invalid format.","Import Mode":"Import Mode","Choose how to import the configuration":"Choose how to import the configuration","Update Mode (Add new items and update existing ones)":"Update Mode (Add new items and update existing ones)","Overwrite Mode (Replace all settings with imported ones)":"Overwrite Mode (Replace all settings with imported ones)","Configuration imported successfully (Overwrite mode)":"Configuration imported successfully (Overwrite mode)","Configuration imported successfully (Update mode)":"Configuration imported successfully (Update mode)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"Warning: Update mode will add new items and update existing ones based on the imported configuration.","Add Format Command":"Add Format Command",Regex:"Regex","Prefix/Suffix":"Prefix/Suffix","Insert Special Char":"Insert Special Char","Add Regex Command":"Add Regex Command","Switch Regex Command Window":"Switch Regex Command Window","Please select text first":"Please select text first","The selected text does not meet the condition requirements":"The selected text does not meet the condition requirements","Regex command execution error: ":"Regex command execution error: ","Copy code":"Copy code","Copied!":"Copied!","Explain the syntax of JavaScript regular expressions":"Explain the syntax of JavaScript regular expressions","Apply regular expression replacement":"Apply regular expression replacement","Conditional matching":"Conditional matching","Complete regular expression code (copy to AI for explanation)":"Complete regular expression code (copy to AI for explanation)","Error: ":"Error: ","Regex pattern cannot be empty":"Regex pattern cannot be empty","Command already exists":"Command already exists","Choose icon":"Choose icon","URL to Markdown link":"URL to Markdown link","Convert MM/DD/YYYY to YYYY-MM-DD":"Convert MM/DD/YYYY to YYYY-MM-DD","Add bold to keywords":"Add bold to keywords","Format phone number":"Format phone number","Remove extra spaces":"Remove extra spaces","Convert HTML bold tags to Markdown format":"Convert HTML bold tags to Markdown format","Convert quoted text to quote block":"Convert quoted text to quote block","Convert CSV to Markdown table row":"Convert CSV to Markdown table row","Add uniform alias to Markdown links":"Add uniform alias to Markdown links","Delete empty lines (multiline mode)":"Delete empty lines (multiline mode)","Add list symbol to each line (multiline mode)":"Add list symbol to each line (multiline mode)","If the text contains important, set the text highlight (conditional format)":"If the text contains important, set the text highlight (conditional format)","Matching pattern":"Matching pattern","Regex pattern to match":"Regex pattern to match","Replacement pattern (use $1, $2, etc. to reference capture groups)":"Replacement pattern (use $1, $2, etc. to reference capture groups)","Ignore case":"Ignore case","Global replace":"Global replace","Multiline mode":"Multiline mode","Use condition":"Use condition","Condition pattern":"Condition pattern","Only apply custom command when text matches the condition":"Only apply custom command when text matches the condition","Must exist regular expression or text":"Must exist regular expression or text","Replacement pattern":"Replacement pattern","Match case-insensitive":"Match case-insensitive","^ and $ match the start and end of each line":"^ and $ match the start and end of each line","Replace all matches":"Replace all matches",Command:"Command","Input example text to view the formatting effect of the command...":"Input example text to view the formatting effect of the command...",Description:"Description","[Example]":"[Example]","[Requirements]":"[Requirements]","[Output]":"[Output]","AI question template:":"AI question template:","I need to convert the url to a markdown format link":"I need to convert the url to a markdown format link","For example, convert https://example.com to [https://example.com](https://example.com)":"For example, convert https://example.com to [https://example.com](https://example.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)","[Description]":"[Description]","How to use AI to get regular expressions?":"How to use AI to get regular expressions?","Regular expression examples":"Regular expression examples","Edit regular expression command":"Edit regular expression command","Add regular expression command":"Add regular expression command","Result: ":"Result: ","Example text:":"Example text:",Preview:"Preview",Result:"Result","Please select text or copy text to clipboard first":"Please select text or copy text to clipboard first","Overwrite Import":"Overwrite Import","Update Import":"Update Import","Importing configuration...":"Importing configuration...","Following Style Only":"Following Style Only","Top Style Only":"Top Style Only","Fixed Style Only":"Fixed Style Only","Mobile Style Only":"Mobile Style Only","Unknown import type":"Unknown import type","All Toolbar Commands":"All Toolbar Commands","Initialize Commands":"Initialize Commands","Copy commands from the main menu configuration":"Copy commands from the main menu configuration","Initialize commands to default settings":"Initialize commands to default settings","Reset Commands":"Reset Commands","Commands reset successfully":"Commands reset successfully","Following style commands initialized from current menu commands":"Following style commands initialized from current menu commands","Commands initialized successfully":"Commands initialized successfully","Reset to Menu Commands":"Reset to Menu Commands","Are you sure you want to reset the current configuration?":"Are you sure you want to reset the current configuration?","Following style commands successfully initialized":"Following style commands successfully initialized","Top style commands successfully initialized":"Top style commands successfully initialized","Fixed style commands successfully initialized":"Fixed style commands successfully initialized","Mobile style commands successfully initialized":"Mobile style commands successfully initialized","Reset commands to default settings":"Reset commands to default settings",Clear:"Clear","Remove all commands from this configuration.":"Remove all commands from this configuration.","Are you sure you want to clear all commands under the current style?":"Are you sure you want to clear all commands under the current style?","Current style commands have been cleared":"Current style commands have been cleared","Manage Commands":"Manage Commands","Reset or clear all commands in this configuration":"Reset or clear all commands in this configuration","One-click Clear":"One-click Clear","Import Commands from Other Styles":"Import Commands from Other Styles","Copy commands from another style configuration.":"Copy commands from another style configuration.","Main menu only":"Main menu only","This import will update:":"This import will update:","Custom commands":"Custom commands","Toolbar commands":"Toolbar commands","General settings":"General settings","Please paste configuration data first":"Please paste configuration data first","Invalid import data format":"Invalid import data format","Import From":"Import From","This import will:":"This import will:","Update general settings":"Update general settings","Update Main Menu Commands":"Update Main Menu Commands","Update Custom Commands":"Update Custom Commands","Update Following Style Commands":"Update Following Style Commands","Update Top Style Commands":"Update Top Style Commands","Update Fixed Style Commands":"Update Fixed Style Commands","Update Mobile Style Commands":"Update Mobile Style Commands","Clear all Main Menu Commands":"Clear all Main Menu Commands","Clear all Custom Commands":"Clear all Custom Commands","Clear all Following Style Commands":"Clear all Following Style Commands","Clear all Top Style Commands":"Clear all Top Style Commands","Clear all Fixed Style Commands":"Clear all Fixed Style Commands","Clear all Mobile Style Commands":"Clear all Mobile Style Commands","Overwrite Mode (Replace settings with imported ones)":"Overwrite Mode (Replace settings with imported ones)","Warning: Overwrite mode will replace existing settings with imported ones.":"Warning: Overwrite mode will replace existing settings with imported ones.","Warning: Update mode will add new items and update existing ones.":"Warning: Update mode will add new items and update existing ones.","Enable Multiple Config":"Enable Multiple Config","Set Multiple Config to:":"Set Multiple Config to:",Enable:"Enable",Disable:"Disable","Set Position Style to:":"Set Position Style to:",Following:"Following",Top:"Top",Fixed:"Fixed",Mobile:"Mobile","All commands":"All commands","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ Overwrite mode will replace existing settings with imported ones.","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ Update mode will merge imported settings with existing ones.","Do you want to continue?":"Do you want to continue?","Imported settings:":"Imported settings:","Imported commands:":"Imported commands:","Disable toolbar for this view":"Disable toolbar for this view","Enable toolbar for this view":"Enable toolbar for this view","Manage all view types":"Manage all view types","Current View: ":"Current View: ","Appearance Style":"Appearance Style","Position Settings":"Position Settings","All commands have been removed.":"All commands have been removed.","Join the Community":"Join the Community","Share your toolbar settings and styles in our":"Share your toolbar settings and styles in our","Get inspired by what others have created or showcase your own customizations.":"Get inspired by what others have created or showcase your own customisations.","Toolbar Preview (With a hypothetical command configuration.)":"Toolbar Preview (With a hypothetical command configuration.)","Toolbar Theme":"Toolbar Theme","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"Select a preset toolbar theme, automatically setting the background colour, icon colour, and size for the selected style.","Toolbar Background Color":"Toolbar Background Colour","Set the background color of the toolbar.":"Set the background colour of the toolbar.","Toolbar Icon Color":"Toolbar Icon Colour","Set the color of the toolbar icon.":"Set the colour of the toolbar icon.","Toolbar Icon Size":"Toolbar Icon Size","Set the size of the toolbar icon (px); default: 18px":"Set the size of the toolbar icon (px); default: 18px","Custom Theme":"Custom Theme","Fixed Position Offset":"Fixed Position Offset","Choose the offset of the Editing Toolbar in the fixed position.":"Choose the offset of the Editing Toolbar in the fixed position.","Renumber List":"Renumber List","Fetch Remote Title":"Fetch Remote Title","Please enter a URL first":"Please enter a URL first","Failed to fetch title for":"Failed to fetch title for","Link Title (optional)":"Link Title (optional)","Unable to detect editor width":"Unable to detect editor width","Fit Editor Width":"Fit Editor Width","Please execute a format command or select format text first, then enable the format brush":"Please execute a format command or select format text first, then enable the format brush","Use \\n to represent line breaks":"Use \\n to represent line breaks","Use ↵ to represent line breaks":"Use ↵ to represent line breaks","Top Toolbar":"Top Toolbar","Enable the toolbar positioned at the top.":"Enable the toolbar positioned at the top.","Following Toolbar":"Following Toolbar","Enable the toolbar that appears upon text selection.":"Enable the toolbar that appears upon text selection.","Fixed Toolbar":"Fixed Toolbar","Enable the toolbar whose position may be fixed where you please.":"Enable the toolbar whose position may be fixed where you please.","Toolbar Settings":"Toolbar Settings","Choose which toolbar style's appearance you want to edit.":"Choose which toolbar style's appearance you want to edit.","Vertical Split":"Vertical Split"},es:{},fr:{},hi:{},id:{},it:{},ja:{},ko:{},nl:{},nn:{},pl:{},pt:{},"pt-br":{"Editing Toolbar Append Method":"Método de Inserção da Barra de Ferramentas","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"Escolha onde a Barra de Ferramentas será inserida ao regenerar. Para ver a alteração, clique no botão de atualização abaixo, ou no menu da barra de status.","Editing Toolbar aesthetic":"Estilo da Barra de Ferramentas","Choose between a glass morphism, tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Escolha entre um estilo de vidro, pequeno e padrão para a Barra de Ferramentas. Para ver a alteração, clique no botão de atualização abaixo, ou no menu da barra de status.","Editing Toolbar position":"Posição da Barra de Ferramentas","Choose between fixed position or cursor following mode.":"Escolha entre posição fixa ou modo contextual.","Editing Toolbar Columns":"Colunas da Barra de Ferramentas","Choose the number of columns per row to display on Editing Toolbar.":"Escolha o número de colunas por linha para exibir na Barra de Ferramentas.","Editing Toolbar refresh":"Atualizar Barra de Ferramentas","Editing Toolbar Commands":"Comandos da Barra de Ferramentas","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"Adicione um comando na Barra de Ferramentas a partir da biblioteca de comandos do Obsidian. Para reordenar os comandos, arraste e solte os itens do comando. Para deletar, use o botão de deletar à direita do item do comando. A Barra de Ferramentas não atualizará automaticamente após reordenar os comandos. Use o botão de atualização acima.","Format Brush Off!":"Pincel de formatação desligado!","Hide & Show":"Ocultar & Mostrar","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to editingToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the editingToolbar status bar menu.":"A barra de edição só atualizará automaticamente após você ter adicionado ou deletado um comando dela. Para ver as alterações na interface do editingToolbar (alterações acima das configurações) use o botão de atualização. Se você esquecer de atualizar nas configurações, não se preocupe. Também há um botão de atualização na barra de status da Barra de Edição.","Font-Color formatting brush ON!":"Pincel de cor da fonte ativado!",More:"Mais","Font Colors":"Cores de Texto","Format Brush":"Pincel de formatação","Background Color":"Cor de Fundo",Refresh:"Atualizar",Add:"Adicionar",Delete:"Deletar","Change Command Name":"Alterar Nome do Comando","Add Submenu":"Adicionar Submenu","Add Separator":"Adicionar Separador","Enter the icon code, it looks like .... format":"Digite o código do ícone, parece com o formato .... ","Please enter a new name: ":"Por favor, digite um novo nome: ","Drag the slider to move the position":"Arraste o slider para mover a posição","Plugin Settings":"Configurações do Plugin","Background-color formatting brush ON!":"Pincel de cor de fundo ativado!\nClique com o botão do meio ou direito do mouse para sair do modo.","Clear formatting brush ON!":"Pincel de formatação ativado!","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"Pincel de formatação ativado!\nClique com o botão do meio ou direito do mouse para sair do modo de formatação.","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"A barra de ferramentas é exibida quando o mouse passa por cima dela, caso contrário, ela é automaticamente oculta.","Editing Toolbar Auto-hide":"Auto-ocultação da Barra de Ferramentas","Editing Toolbar Centred Display":"Exibição Centralizada da Barra de Ferramentas","Whether the toolbar is centred or full-width, the default is full-width.":"Define se a barra de ferramentas é centralizada ou ocupa toda a largura. O padrão é largura completa.","Custom Backgroud Color":"Cor de Fundo Personalizada","Custom Font Color":"Cor de Texto Personalizada","🎨 Set Custom Background":"🎨 Definir Cor de Fundo Personalizada","🖌️ Set Custom Font Color":"🖌️ Definir Cor de Texto Personalizada","Click on the picker to adjust the color":"Clique no seletor para ajustar a cor","Mobile Enabled or Not":"Habilitar em dispositivos móveis","Whether to enable the plugin for the mobile client, the default is enabled.":"Habilitar o plugin para dispositivos móveis, o padrão é habilitado.","Whether to enable on mobile devices with device width less than 768px.":"Habilitar o plugin para dispositivos móveis com largura de dispositivo menor que 768px, o padrão é desabilitado.",Reset:"Reiniciar",Fix:"Ajustar","Fix Editing Toolbar":"Ajustar Barra de Ferramentas",General:"Geral",Appearance:"Aparência",Commands:"Comandos","Choose between fixed position or cursor following mode":"Escolha entre posição fixa ou modo contextual.","Add and manage commands":"Adicionar e gerenciar comandos","Choose where Editing Toolbar will append upon regeneration.":"Escolha onde a Barra de Ferramentas será inserida ao regenerar.","Whether to enable on mobile devices with device width less than 768px":"Habilitar o plugin para dispositivos móveis com largura de dispositivo menor que 768px","Choose between a glass morphism, tiny and default style.":"Escolha entre um estilo de vidro, pequeno e padrão.","Refresh Toolbar":"Atualizar Barra de Ferramentas","Add Command":"Adicionar Comando",Settings:"Configurações","Position Style":"Estilo de Posição",Columns:"Colunas","Drag to Adjust Position":"Arraste para ajustar a posição","Vertical Position":"Posição Vertical","Horizontal Position":"Posição Horizontal","Toolbar Position":"Posição da Barra de Ferramentas","Choose an icon":"Escolha um ícone","Search for an icon...":"Pesquisar por um ícone...",All:"Todos",Obsidian:"Obsidian",Glyph:"Ícone",Custom:"Personalizado","Choose a command":"Escolha um comando","The command":"O comando","already exists":"já existe","Enter the icon code, format as .... ":"Digite o código do ícone, formato como .... ","No matching icons found":"Nenhum ícone correspondente encontrado","Custom Commands":"Comandos Personalizados","Toolbar Commands":"Comandos da Barra de Ferramentas",ID:"ID",Prefix:"Prefixo",Suffix:"Sufixo",Pattern:"Padrão","Custom Format Commands":"Comandos de Formatação Personalizados","Add, edit or delete custom format commands.":"Adicionar, editar ou deletar comandos de formatação personalizados.",Edit:"Editar","Command ID":"ID do Comando",'Unique identifier, no spaces, e.g.: "my-custom-format"':'Identificador único, sem espaços, exemplo: "meu-comando-personalizado"',"Displayed name in toolbar and menu":"Nome exibido na barra de ferramentas e menu","Add content before selected text":"Adicionar conteúdo antes do texto selecionado","Add content after selected text":"Adicionar conteúdo depois do texto selecionado","Character offset of cursor after formatting":"Deslocamento do cursor após a formatação","Line offset of cursor after formatting":"Deslocamento da linha do cursor após a formatação","Whether to insert at the beginning of the next line":"Inserir no início da próxima linha","Command icon (click to select)":"Ícone do comando (clique para selecionar)","Choose Icon":"Escolha um ícone",Save:"Salvar",Cancel:"Cancelar","Edit Custom Command":"Editar Comando Personalizado","Add Custom Command":"Adicionar Comando Personalizado","Command ID and command name cannot be empty":"ID do Comando e nome do comando não podem ser vazios","Command ID cannot contain spaces":"ID do Comando não pode conter espaços",'Command ID "${this.commandId}" already exists':'ID do Comando "${this.commandId}" já existe',"Cursor Position Offset":"Deslocamento do cursor","Line Offset":"Deslocamento da linha","Line Head Format":"Formatação de linha inicial",Icon:"Ícone","Command Name":"Nome do Comando","Are you sure you want to restore all settings to default? This will lose all your custom configurations.":"Tem certeza que deseja restaurar todas as configurações para a configuração padrão? Isso irá apagar todas as suas configurações personalizadas.","Restore default":"Restaurar padrão","Restore default settings":"Restaurar configurações padrão","🔄Restore default settings":"🔄Restaurar configurações padrão","🔧Data repair":"🔧Reparar dados","Command IDs have been successfully repaired!":"IDs de comando foram reparadas com sucesso!","No command IDs need to be repaired":"Nenhuma ID de comando precisa ser reparada","Error repairing command IDs, please check the console for details":"Erro ao reparar IDs de comando, por favor verifique o console para mais detalhes","Error restoring default settings, please check the console for details":"Erro ao restaurar configurações padrão, por favor verifique o console para mais detalhes","Successfully restored default settings!":"Configurações padrão restauradas com sucesso!",Close:"Fechar",Tips:"Dicas","This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly":"Esta atualização alterou o ID de alguns comandos. Clique neste botão para repará-los e garantir que a barra de ferramentas funcione corretamente.","Repair command ID":"Reparar ID do Comando","This will reset all your custom configurations":"Isso irá resetar todas as suas configurações personalizadas","Notice:":"Nota:","This update rebuilds the entire code, reducing resource consumption":"Esta atualização recompila todo o código, reduzindo o consumo de recursos","Optimized mobile usage, added canvas support, and added custom commands":"Otimizado para uso em dispositivos móveis, adicionando suporte para o canvas e adicionado comandos personalizados","⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible":"⚠️Esta atualização não é compatível com IDs de comando da versão 2.x. Clique em [Reparar comando] para corrigir a compatibilidade.","⚠️If you want to restore the default settings, please click [Restore default settings]":"⚠️Se você quiser restaurar as configurações padrão, por favor clique em [Restaurar configurações padrão].","Please execute a editingToolbar format command first, then enable the format brush":"Execute um comando de formatação da barra de edição antes de ativar o pincel de formatação.","Format brush ON! Select text to apply【":"Pincel de formatação ativado! Selecione o texto para aplicar【","】format":"】\nClique com o botão do meio ou direito do mouse para sair do modo de formatação.","Add to Toolbar":"Adicionar à Barra de Edição","This command is already in the toolbar.":"Este comando já está na barra de ferramentas.","Command added to toolbar":"Comando adicionado à barra de ferramentas","Add this command to the toolbar.":"Adicionar este comando à barra de ferramentas.","Callout Type":"Tipo de Callout",Title:"Título","Optional, leave blank for default title":"Opcional, deixe em branco para o título padrão","Input title":"Digite o título","Collapse State":"Estado de Colapso",Open:"Abrir",Closed:"Fechado",Content:"Conteúdo",Insert:"Inserir",Default:"Padrão","Input content":"Digite o conteúdo","Link Text":"Texto do Link","Link Alias":"Alias do Link","Link URL":"URL do Link","Embed Content":"Conteúdo Embutido","Image Size":"Tamanho da Imagem","Insert New Line":"Inserir Nova Linha","Paste and Parse":"Colar e Analisar","URL Format Error":"Erro de Formato de URL","Image Width":"Largura da Imagem","Image Height":"Altura da Imagem","If it is an image, turn on":"Se for uma imagem, ative","Insert a link on the next line":"Inserir um link na próxima linha","Link Title(optional)":"Título do Link(opcional)",Alias:"Alias",Optional:"Opcional","Default 0, format will keep the text selected":"Padrão 0, o formato manterá o texto selecionado","to insert":"para inserir","Latest Changes":"Últimas Alterações","📋View full changelog":"📋Ver o registro de alterações completo","Open changelog":"Abrir registro de alterações","Loading changelog...":"Carregando registro de alterações...","Open the complete changelog in your browser":"Abrir o registro de alterações completo no seu navegador","Enable Multiple Configurations":"Habilitar Múltiplas Configurações","Enable different command configurations for each position style (following, top, fixed).":"Habilitar configurações de comandos diferentes para cada modo de posição (following, top, fixed).","Currently editing commands for":"Atualmente editando comandos para","position style":"estilo de posição","Current Configuration":"Configuração Atual","Switch between different command configurations.":"Trocar entre configurações de comando diferentes.","Following Style":"Estilo Contextual","Top Style":"Estilo de Topo","Fixed Style":"Estilo Fixo","Mobile Style":"Estilo Mobile",configuration:"configuração","Deploy command to configurations":"Implantar comando para configurações","All Configurations":"Todas as Configurações",Deploy:"Implantar","Command deployed to selected configurations":"Comando implantado para configurações selecionadas","No configuration selected for deployment":"Nenhuma configuração selecionada para implantação","Command already exists in selected configurations":"Comando já existe nas configurações selecionadas","Command deployed to: ":"Comando implantado para: ","Command Deleted":"Comando Deletado","Confirm Delete?":"Confirmar Deleção?",Confirm:"Confirmar","Are you sure you want to restore all settings to default? But custom commands will be preserved.":"Tem certeza que deseja restaurar todas as configurações para a configuração padrão? Mas os comandos personalizados serão preservados.","Successfully restored default settings! (Custom commands preserved)":"Configurações padrão restauradas com sucesso! (Comandos personalizados preservados)","This will reset all your custom configurations, but custom commands will be preserved":"Isso redefinirá todas as suas configurações personalizadas, mas os comandos personalizados serão preservados.","Import/Export":"Importar/Exportar","Export Configuration":"Exportar Configuração","Export your toolbar configuration to share with others.":"Exportar sua configuração da barra de ferramentas para compartilhar com outros.",Export:"Exportar","Import Configuration":"Configuração de Importação","Import toolbar configuration from JSON.":"Importar configuração da barra de ferramentas em formato JSON.",Import:"Importar","Usage Instructions":"Instruções de Uso","Export: Generate a JSON configuration that you can save or share.":"Exportar: Gerar uma configuração em formato JSON para salvar ou compartilhar.","Import: Paste a previously exported JSON configuration.":"Importar: Colar uma configuração em formato JSON exportada anteriormente.","You can choose to export all settings, only toolbar commands, or only custom commands":"Você pode escolher exportar todas as configurações, apenas comandos da barra de ferramentas, ou apenas comandos personalizados","When importing, the plugin will only update the settings included in the import data":"Ao importar, o plugin irá atualizar apenas as configurações incluídas nos dados de importação","Warning: Importing configuration will overwrite your current settings. Consider exporting your current configuration first as a backup.":"Aviso: A importação de configuração irá sobrescrever suas configurações atuais. Considere exportar sua configuração atual primeiro como backup.","Export Type":"Tipo de Exportação","Choose what to export":"Escolha o que exportar","All Settings":"Todas as Configurações","Toolbar Commands Only":"Apenas Comandos da Barra de Ferramentas","Custom Commands Only":"Apenas Comandos Personalizados","Export Content":"Conteúdo de Exportação","Copy this content to share with others":"Copiar este conteúdo para compartilhar com outros","Loading...":"Carregando...","Copy to Clipboard":"Copiar para a área de transferência","Configuration copied to clipboard":"Configuração copiada para a área de transferência","Failed to copy configuration":"Falha ao copiar configuração","Paste the configuration JSON here":"Colar a configuração JSON aqui","Paste configuration here...":"Colar configuração aqui...","Invalid import data":"Dados de importação inválidos","Configuration imported successfully":"Configuração importada com sucesso","No valid configuration found in import data":"Nenhuma configuração válida encontrada nos dados de importação","Failed to import configuration. Invalid format.":"Falha ao importar configuração. Formato inválido.","Import Mode":"Modo de Importação","Choose how to import the configuration":"Escolha como importar a configuração","Update Mode (Add new items and update existing ones)":"Modo de Atualização (Adicionar novos itens e atualizar os existentes)","Overwrite Mode (Replace all settings with imported ones)":"Modo de Sobrescrever (Substituir todas as configurações com as importadas)","Configuration imported successfully (Overwrite mode)":"Configuração importada com sucesso (Modo de Sobrescrever)","Configuration imported successfully (Update mode)":"Configuração importada com sucesso (Modo de Atualização)","Warning: Overwrite mode will completely replace your current settings with the imported ones. Consider exporting your current configuration first as a backup.":"Aviso: O modo de sobrescrever irá substituir todas as suas configurações atuais com as importadas. Considere exportar sua configuração atual primeiro como backup.","Warning: Update mode will add new items and update existing ones based on the imported configuration.":"Aviso: O modo de atualização irá adicionar novos itens e atualizar os existentes com base na configuração importada.","Add Format Command":"Adicionar formatação",Regex:"Regex","Prefix/Suffix":"Prefixo/Sufixo","Insert Special Char":"Inserir Caractere Especial","Add Regex Command":"Adicionar regex","Switch Regex Command Window":"Trocar para Janela de Comando de Regex","Please select text first":"Por favor selecione o texto primeiro","Current line is empty, please select text or move to a non-empty line":"A linha atual está vazia, por favor selecione o texto ou mova para uma linha não vazia","Use current line for regex commands":"Usar a linha atual para comandos de regex","When no text is selected, regex commands will use the current line instead of clipboard content":"Quando não houver texto selecionado, comandos de regex usarão a linha atual em vez do conteúdo da área de transferência","The selected text does not meet the condition requirements":"O texto selecionado não atende aos requisitos da condição","Regex command execution error: ":"Erro ao executar comando de regex: ","Copy code":"Copiar código","Copied!":"Copiado!","Explain the syntax of JavaScript regular expressions":"Explicar a sintaxe das expressões regulares em JavaScript","Apply regular expression replacement":"Aplicar substituição de expressão regular","Conditional matching":"Ocorrência Condicional","Complete regular expression code (copy to AI for explanation)":"Código de expressão regular completo (copiar para explicação com IA)","Error: ":"Erro: ","Regex pattern cannot be empty":"Padrão de regex não pode estar vazio","Command already exists":"Comando já existe","Choose icon":"Escolha um ícone","URL to Markdown link":"URL para Link Markdown","Convert MM/DD/YYYY to YYYY-MM-DD":"Converter MM/DD/YYYY para YYYY-MM-DD","Add bold to keywords":"Adicionar negrito a palavras-chave","Format phone number":"Formatar número de telefone","Remove extra spaces":"Remover espaços extra","Convert HTML bold tags to Markdown format":"Converter tags HTML de negrito para negrito em Markdown","Convert quoted text to quote block":"Converter texto citado para bloco de citação","Convert CSV to Markdown table row":"Converter CSV para linha de tabela Markdown","Add uniform alias to Markdown links":"Adicionar um alias uniforme aos links Markdown","Delete empty lines (multiline mode)":"Deletar linhas vazias (modo multilinha)","Add list symbol to each line (multiline mode)":"Adicionar símbolo de lista a cada linha (modo multilinha)","If the text contains important, set the text highlight (conditional format)":'Se o texto contiver "importante", aplicar destaque ao texto (formatação condicional)',"Matching pattern":"Padrão de correspondência","Regex pattern to match":"Padrão de regex a ser correspondido","Replacement pattern (use $1, $2, etc. to reference capture groups)":"Padrão de substituição (use $1, $2, etc. para referenciar grupos de captura)","Ignore case":"Ignorar maiúsculas e minúsculas","Global replace":"Substituir globalmente","Multiline mode":"Modo multilinha","Use condition":"Usar condição","Condition pattern":"Padrão de condição","Only apply custom command when text matches the condition":"Aplicar o comando personalizado apenas quando o texto corresponder à condição","Must exist regular expression or text":"Deve existir expressão regular ou texto","Replacement pattern":"Padrão de substituição","Match case-insensitive":"Ignorar maiúsculas e minúsculas","^ and $ match the start and end of each line":"^ e $ correspondem ao início e ao fim de cada linha","Replace all matches":"Substituir todas as ocorrências",Command:"Comando","Input example text to view the formatting effect of the command...":"Digite um texto de exemplo para visualizar o efeito do comando...",Description:"Descrição","[Example]":"[Exemplo]","[Requirements]":"[Requisitos]","[Output]":"[Saída]","AI question template:":"Modelo de pergunta para IA:","I need to convert the url to a markdown format link":"Preciso converter a URL para um link no formato Markdown","For example, convert https://example.com to [https://example.com](https://example.com)":"Por exemplo, converter https://exemplo.com para [https://exemplo.com](https://exemplo.com)","Use js regular expression to implement, and output the parameters in the following format (the result does not need to be escaped with json)":"Usar expressões regulares em JavaScript para implementar e gerar os parâmetros no formato abaixo (o resultado não precisa ser escapado em JSON).","[Description]":"[Descrição]","How to use AI to get regular expressions?":"Como usar IA para obter expressões regulares?","Regular expression examples":"Exemplos de expressões regulares","Edit regular expression command":"Editar comando de expressão regular","Add regular expression command":"Adicionar comando de expressão regular","Result: ":"Resultado: ","Example text:":"Texto de exemplo:",Preview:"Visualizar",Result:"Resultado","Please select text or copy text to clipboard first":"Por favor selecione o texto ou copie o texto para a área de transferência primeiro","Overwrite Import":"Sobrescrever Importação","Update Import":"Atualizar Importação","Importing configuration...":"Importando configuração...","Following Style Only":"Disponível apenas no modo contextual","Top Style Only":"Disponível apenas no modo de topo","Fixed Style Only":"Disponível apenas no modo fixo","Mobile Style Only":"Disponível apenas no modo mobile","Unknown import type":"Tipo de importação desconhecido","All Toolbar Commands":"Todos os Comandos da Barra de Ferramentas","Initialize Commands":"Inicializar Comandos","Copy commands from the main menu configuration":"Copiar comandos do menu principal","Initialize commands to default settings":"Inicializar comandos para configurações padrão","Reset Commands":"Resetar Comandos","Commands reset successfully":"Comandos resetados com sucesso","Following style commands initialized from current menu commands":"Comandos de estilo contextual inicializados a partir dos comandos do menu principal","Commands initialized successfully":"Comandos inicializados com sucesso","Reset to Menu Commands":"Resetar para Comandos do Menu","Are you sure you want to reset the current configuration?":"Tem certeza que deseja resetar a configuração atual?","Following style commands successfully initialized":"Comandos de estilo contextual inicializados com sucesso","Top style commands successfully initialized":"Comandos de estilo de topo inicializados com sucesso","Fixed style commands successfully initialized":"Comandos de estilo fixo inicializados com sucesso","Mobile style commands successfully initialized":"Comandos de estilo mobile inicializados com sucesso","Reset commands to default settings":"Resetar comandos para configurações padrão",Clear:"Limpar","Remove all commands from this configuration.":"Remover todos os comandos desta configuração.","Are you sure you want to clear all commands under the current style?":"Tem certeza que deseja limpar todos os comandos sob o estilo atual?","Current style commands have been cleared":"Comandos do estilo atual foram limpos","Manage Commands":"Gerenciar Comandos","Reset or clear all commands in this configuration":"Resetar ou limpar todos os comandos nesta configuração","One-click Clear":"Limpar com um clique","Import Commands from Other Styles":"Importar Comandos de Outros Estilos","Copy commands from another style configuration.":"Copiar comandos de outra configuração de estilo.","Main menu only":"Apenas para o menu principal","This import will update:":"Esta importação irá atualizar:","Custom commands":"Comandos Personalizados","Toolbar commands":"Comandos da Barra de Ferramentas","General settings":"Configurações Gerais","Please paste configuration data first":"Por favor coloque os dados da configuração primeiro","Invalid import data format":"Formato de dados de importação inválido","Import From":"Importar de","This import will:":"Esta importação irá:","Update general settings":"Atualizar configurações gerais","Update Main Menu Commands":"Atualizar Comandos do Menu Principal","Update Custom Commands":"Atualizar Comandos Personalizados","Update Following Style Commands":"Atualizar Comandos de Estilo Contextual","Update Top Style Commands":"Atualizar Comandos de Estilo de Topo","Update Fixed Style Commands":"Atualizar Comandos de Estilo Fixo","Update Mobile Style Commands":"Atualizar Comandos de Estilo Mobile","Clear all Main Menu Commands":"Limpar todos os Comandos do Menu Principal","Clear all Custom Commands":"Limpar todos os Comandos Personalizados","Clear all Following Style Commands":"Limpar todos os Comandos de Estilo Contextual","Clear all Top Style Commands":"Limpar todos os Comandos de Estilo de Topo","Clear all Fixed Style Commands":"Limpar todos os Comandos de Estilo Fixo","Clear all Mobile Style Commands":"Limpar todos os Comandos de Estilo Mobile","Overwrite Mode (Replace settings with imported ones)":"Modo de Sobrescrever (Substituir configurações com as importadas)","Warning: Overwrite mode will replace existing settings with imported ones.":"Aviso: O modo de sobrescrever irá substituir todas as suas configurações atuais com as importadas.","Warning: Update mode will add new items and update existing ones.":"Aviso: O modo de atualização irá adicionar novos itens e atualizar os existentes com base na configuração importada.","Enable Multiple Config":"Habilitar Múltiplas Configurações","Set Multiple Config to:":"Definir Múltiplas Configurações para:",Enable:"Habilitar",Disable:"Desabilitar","Set Position Style to:":"Definir Estilo de Posição para:",Following:"Contextual",Top:"Topo",Fixed:"Fixo",Mobile:"Mobile","All commands":"Todos os Comandos","⚠️ Overwrite mode will replace existing settings with imported ones.":"⚠️ O modo de sobrescrever irá substituir todas as suas configurações atuais com as importadas.","ℹ️ Update mode will merge imported settings with existing ones.":"ℹ️ O modo de atualização irá adicionar novos itens e atualizar os existentes com base na configuração importada.","Do you want to continue?":"Deseja continuar?","Imported settings:":"Configurações importadas:","Imported commands:":"Comandos importados:","Disable toolbar for this view":"Desabilitar barra de ferramentas para esta visualização","Enable toolbar for this view":"Habilitar barra de ferramentas para esta visualização","Manage all view types":"Gerenciar todos os tipos de visualização","Current View: ":"Visualização Atual: ","Appearance Style":"Estilo de Aparência","Position Settings":"Configurações de Posição","All commands have been removed.":"Todos os comandos foram removidos.","Join the Community":"Juntar-se à Comunidade","Share your toolbar settings and styles in our":"Compartilhe suas configurações e estilos da barra de ferramentas em nossa","Get inspired by what others have created or showcase your own customizations.":"Inspire-se com o que outros criaram ou mostre suas próprias personalizações.","Toolbar Preview (With a hypothetical command configuration.)":"Visualização da barra de ferramentas (com uma configuração de comandos hipotética).","Toolbar Theme":"Estilo da Barra de Ferramentas","Select a preset toolbar theme, automatically setting the background color, icon color, and size for the selected style.":"Selecione um estilo de barra de ferramentas pré-definido, automaticamente definindo a cor de fundo, cor do ícone e tamanho para o estilo selecionado.","Toolbar Background Color":"Cor de Fundo da Barra de Ferramentas","Set the background color of the toolbar.":"Definir a cor de fundo da barra de ferramentas.","Toolbar Icon Color":"Cor do Ícone da Barra de Ferramentas","Set the color of the toolbar icon.":"Definir a cor do ícone da barra de ferramentas.","Toolbar Icon Size":"Tamanho do Ícone da Barra de Ferramentas","Set the size of the toolbar icon (px); default: 18px":"Definir o tamanho do ícone da barra de ferramentas (px); padrão: 18px","Custom Theme":"Estilo Personalizado","Fixed Position Offset":"Deslocamento Fixo","Choose the offset of the Editing Toolbar in the fixed position.":"Escolha o deslocamento da Barra de Edição na posição fixa.","Renumber List":"Renumerar Lista","Fetch Remote Title":"Obter Título Remoto","Please enter a URL first":"Por favor digite uma URL primeiro","Failed to fetch title for":"Falha ao obter título para","Link Title (optional)":"Título do Link (opcional)","Unable to detect editor width":"Não foi possível detectar a largura do editor","Fit Editor Width":"Ajustar Largura do Editor","Please execute a format command or select format text first, then enable the format brush":"Execute um comando de formatação ou selecione um texto já formatado antes de ativar o pincel de formatação.","Use \\n to represent line breaks":"Use \\n para representar quebras de linha","Use ↵ to represent line breaks":"Use ↵ para representar quebras de linha","Top Toolbar":"Barra de Ferramentas de Topo","Enable the toolbar positioned at the top.":"Habilitar a barra de ferramentas posicionada no topo.","Following Toolbar":"Barra de Ferramentas Contextual","Enable the toolbar that appears upon text selection.":"Habilitar a barra de ferramentas que aparece ao selecionar texto.","Fixed Toolbar":"Barra de Ferramentas Fixa","Enable the toolbar whose position may be fixed where you please.":"Habilitar a barra de ferramentas cuja posição pode ser fixa onde você preferir.","Toolbar Settings":"Configurações da Barra de Ferramentas","Choose which toolbar style's appearance you want to edit.":"Escolha qual estilo de barra de ferramentas você deseja editar.","Vertical Split":"Divisão Vertical"},ro:{},ru:{},tr:{},"zh-cn":b,"zh-tw":y}[e.moment.locale()];function w(e){return"string"!=typeof e||0===e.length?"":C&&C[e]||f[e]||e}class v extends e.FuzzySuggestModal{constructor(e,t,o=!1,i,n){super(e.app),this.customCallback=null,this.plugin=e,this.command=t,this.issub=o,this.customCallback=i||null,this.setPlaceholder(w("Choose an icon")),this.currentEditingConfig=n||""}capitalJoin(e){return e.split(" ").map(e=>e[0].toUpperCase()+e.substring(1)).join(" ")}getItems(){return n}getItemText(e){return this.capitalJoin(e.replace("feather-","").replace("remix-","").replace("bx-","").replace(/([A-Z])/g," $1").trim().replace(/-/gi," "))}renderSuggestion(t,o){const i=createSpan({cls:"editingToolbarIconPick"});o.appendChild(i),e.setIcon(i,t.item),super.renderSuggestion(t,o)}async onChooseItem(e){if("Custom"===e)return this.customCallback?void new x(this.app,this.plugin,{id:this.command.id,name:this.command.name,icon:""},this.issub,e=>{this.customCallback(e)}).open():void new x(this.app,this.plugin,this.command,this.issub,null,this.currentEditingConfig).open();if(this.customCallback)return void this.customCallback(e);const t=this.plugin.getCurrentCommands(this.currentEditingConfig);if(this.command.icon){let o=s(this.plugin,this.command,this.issub,t);this.issub?t[o.index].SubmenuCommands[o.subindex].icon=e:t[o.index].icon=e,this.plugin.updateCurrentCommands(t,this.currentEditingConfig)}else this.command.icon=e,t.push(this.command),this.plugin.updateCurrentCommands(t,this.currentEditingConfig);await this.plugin.saveSettings(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100),console.log(`%c命令 '${this.command.name}' 已添加到编辑工具栏`,"color: Violet")}}class x extends e.Modal{constructor(e,t,o,i,n,a){super(e),this.customCallback=null,this.plugin=t,this.item=o,this.issub=i,this.customCallback=n||null,this.currentEditingConfig=a||"",this.containerEl.addClass("editingToolbar-Modal"),this.containerEl.addClass("customicon")}onOpen(){const{contentEl:e}=this;e.createEl("b",{text:w("Enter the icon code, format as .... ")});const t=document.createElement("textarea");t.className="wideInputPromptInputEl",t.placeholder="",t.value=this.item.icon||"",t.style.width="100%",t.style.height="200px",e.appendChild(t),t.addEventListener("input",async()=>{const e=t.value;if(this.customCallback)return void(this.item.icon=e);this.item.icon=e;const o=this.plugin.getCurrentCommands(this.currentEditingConfig),i=s(this.plugin,this.item,this.issub,o);if(this.issub){let t=i.subindex;-1===t?this.plugin.settings.menuCommands[i.index].SubmenuCommands.push(this.item):this.plugin.settings.menuCommands[i.index].SubmenuCommands[t].icon=e}else{let e=i.index;-1===e?this.plugin.settings.menuCommands.push(this.item):this.plugin.settings.menuCommands[e].icon=this.item.icon}await this.plugin.saveSettings()}),this.submitEnterCallback&&t.addEventListener("keydown",this.submitEnterCallback)}onClose(){const{contentEl:e}=this;e.empty(),this.customCallback?this.customCallback(this.item.icon||""):setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100)}}class k extends e.FuzzySuggestModal{constructor(e,t){super(e.app),this.plugin=e,this.app,this.setPlaceholder(w("Choose a command")),this.currentEditingConfig=t||""}getItems(){return app.commands.listCommands()}getItemText(e){return w(e.name)}async onChooseItem(t){const o=this.plugin.getCurrentCommands(this.currentEditingConfig);o.findIndex(e=>e.id==t.id)>-1?new e.Notice(w("The command")+w(t.name)+w("already exists"),3e3):t.icon?(o.push(t),this.plugin.updateCurrentCommands(o,this.currentEditingConfig),await this.plugin.saveSettings(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100),console.log(`%c命令 '${t.name}' 已添加到编辑工具栏`,"color: Violet")):new v(this.plugin,t,!1,null,this.currentEditingConfig).open()}}class T extends e.Modal{constructor(e,t,o,i,n){super(t.app),this.plugin=t,this.item=o,this.issub=i,this.currentEditingConfig=n||"",this.containerEl.addClass("editingToolbar-Modal"),this.containerEl.addClass("changename")}onOpen(){const{contentEl:t}=this;t.createEl("b",{text:w("Please enter a new name: ")});const o=new e.TextComponent(t);o.inputEl.classList.add("InputPromptInputEl"),o.setPlaceholder("").setValue(this.item.name??"").onChange(e.debounce(async e=>{const t=this.plugin.getCurrentCommands(this.currentEditingConfig);let o=s(this.plugin,this.item,this.issub,t);if(this.item.name=e,this.issub){let i=o.subindex;-1===i?t[o.index].SubmenuCommands.push(this.item):t[o.index].SubmenuCommands[i].name=e}else{let e=o.index;-1===e?t.push(this.item):t[e].name=this.item.name}this.plugin.updateCurrentCommands(t),await this.plugin.saveSettings()},100,!0)).inputEl.addEventListener("keydown",this.submitEnterCallback)}onClose(){const{contentEl:e}=this;e.empty(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100)}}class S extends e.Modal{constructor(e,t){super(t.app),this.needSave=!1,this.plugin=t,this.containerEl.addClass("editingToolbar-Modal")}onOpen(){const{contentEl:t}=this;t.createEl("p",{text:w("Drag the slider to move the position")});const o=t.createDiv({cls:"slider-container"}),i=o.createDiv({cls:"vertical-slider-container"});i.createEl("p",{text:w("Vertical Position")});const n=o.createDiv({cls:"horizontal-slider-container"});n.createEl("p",{text:w("Horizontal Position")});const a=o.createDiv({cls:"columns-slider-container"});a.createEl("p",{text:w("Editing Toolbar Columns")});const s=document.body.clientHeight,r=document.body.clientWidth,l=Math.floor(s/3),c=-Math.floor(s),d=Math.floor(r/2),m=-Math.floor(r/2),u=new e.SliderComponent(i).setLimits(c,l,5).setValue(this.plugin.settings.verticalPosition||0).onChange(e.debounce(e=>{this.needSave=!0,this.plugin.settings.verticalPosition=e,h(this.plugin.settings)},100,!0)).setDynamicTooltip(),p=new e.SliderComponent(n).setLimits(m,d,10).setValue(this.plugin.settings.horizontalPosition||0).onChange(e.debounce(e=>{this.needSave=!0,this.plugin.settings.horizontalPosition=e,g(this.plugin.settings)},100,!0)).setDynamicTooltip(),f=new e.SliderComponent(a).setLimits(1,32,1).setValue(this.plugin.settings.cMenuNumRows||12).onChange(e.debounce(async e=>{this.needSave=!0,this.plugin.settings.cMenuNumRows=e,await this.plugin.saveSettings(),setTimeout(()=>{dispatchEvent(new Event("editingToolbar-NewCommand"))},100)},100,!0)).setDynamicTooltip();o.createDiv({cls:"reset-container"}).createEl("button",{text:w("Reset"),cls:"reset-button"}).addEventListener("click",()=>{this.needSave=!0,u.setValue(0),p.setValue(0),f.setValue(12),this.plugin.settings.verticalPosition=0,this.plugin.settings.horizontalPosition=0,this.plugin.settings.cMenuNumRows=12,h(this.plugin.settings),g(this.plugin.settings)})}async onClose(){const{contentEl:e}=this;e.empty(),this.needSave&&await this.plugin.saveSettings()}}const E=[{value:"04-fast",label:"04-fast"},{value:"03-agent",label:"03-agent"}],I={mode:"smart",completion:"04-fast",rewrite:"04-fast",reasoning:"03-agent",artifact:"03-agent"};function A(e,t){const o=e.pkmerModelRouting??I;if("smart"===o.mode)return I[t];const i=o[t]?.trim();return i||I[t]}const M=[{instruction:"improve",label:"Improve writing",group:"Edit"},{instruction:"fix-grammar",label:"Fix spelling & grammar",group:"Edit"},{instruction:"make-shorter",label:"Make shorter",group:"Edit"},{instruction:"make-longer",label:"Make longer",group:"Edit"},{instruction:"simplify",label:"Simplify language",group:"Edit"},{instruction:"professional",label:"Professional tone",group:"Tone"},{instruction:"casual",label:"Casual tone",group:"Tone"},{instruction:"translate-en",label:"English",group:"Translate"},{instruction:"translate-zh",label:"Chinese",group:"Translate"},{instruction:"translate-ja",label:"Japanese",group:"Translate"},{instruction:"translate-de",label:"German",group:"Translate"},{instruction:"translate-fr",label:"French",group:"Translate"},{instruction:"translate-es",label:"Spanish",group:"Translate"},{instruction:"explain",label:"Explain this",group:"Generate"},{instruction:"summarize",label:"Summarize",group:"Generate"},{instruction:"continue",label:"Continue writing",group:"Generate"}],P="editing-toolbar-pkmer-access-token",D="editing-toolbar-pkmer-refresh-token",O="editing-toolbar-pkmer-ai-token",F="editing-toolbar-custom-model-api-key",q="https://api.pkmer.cn/api/v1/oauth/authorize",L="https://api.pkmer.cn/api/v1/oauth/token",N="https://api.pkmer.cn/api/v1/oauth/userinfo",R="pkmer_dd2a562c8653ca0112a050150d974ccd",B="openid profile email ai:token",_="http://localhost:10891/editing-toolbar/callback",$="obsidian://editing-toolbar-pkmer-auth",z=10891,U=["body","workspace"],V=["default","tiny","glass","custom"],H=["following","top","fixed"],W={lastVersion:"0.0.0",aestheticStyle:"default",positionStyle:"top",menuCommands:[{id:"editing-toolbar:editor-undo",name:"Undo Edit",icon:"undo-glyph"},{id:"editing-toolbar:editor-redo",name:"Redo Edit",icon:"redo-glyph"},{id:"editing-toolbar:toggle-format-brush",name:"Format Brush",icon:"paintbrush"},{id:"editing-toolbar:format-eraser",name:"Clear Text Formatting",icon:"eraser"},{id:"editing-toolbar:header2-text",name:"Header 2",icon:"header-2"},{id:"editing-toolbar:header3-text",name:"Header 3",icon:"header-3"},{id:"SubmenuCommands-header",name:"submenu",icon:"header-n",SubmenuCommands:[{id:"editing-toolbar:header1-text",name:"Header 1",icon:"header-1"},{id:"editing-toolbar:header4-text",name:"Header 4",icon:"header-4"},{id:"editing-toolbar:header5-text",name:"Header 5",icon:"header-5"},{id:"editing-toolbar:header6-text",name:"Header 6",icon:"header-6"}]},{id:"editing-toolbar:toggle-bold",name:"Bold",icon:"bold-glyph"},{id:"editing-toolbar:toggle-italics",name:"Italic",icon:"italic-glyph"},{id:"editing-toolbar:toggle-strikethrough",name:"Strikethrough",icon:"strikethrough-glyph"},{id:"editing-toolbar:underline",name:"Underline",icon:"underline-glyph"},{id:"editing-toolbar:toggle-highlight",name:"Highlight",icon:"highlight-glyph"},{id:"SubmenuCommands-text-tools",name:"Text Tools",icon:"box",menuType:"dropdown",SubmenuCommands:[{id:"editing-toolbar:get-plain-text",name:"Get Plain Text",icon:"lucide-file-text"},{id:"editing-toolbar:smart-symbols",name:"Full Half Converter",icon:"lucide-at-sign"},{id:"editingToolbar-Divider-Line",name:"Line Operations",icon:"vertical-split"},{id:"editing-toolbar:insert-blank-lines",name:"Insert Blank Lines",icon:"lucide-space"},{id:"editing-toolbar:remove-blank-lines",name:"Remove Blank Lines",icon:"lucide-minimize-2"},{id:"editing-toolbar:split-lines",name:"Split Lines",icon:"lucide-split"},{id:"editing-toolbar:merge-lines",name:"Merge Lines",icon:"lucide-merge"},{id:"editing-toolbar:dedupe-lines",name:"Dedupe Lines",icon:"lucide-filter"},{id:"editingToolbar-Divider-Line",name:"Text Processing",icon:"vertical-split"},{id:"editing-toolbar:add-wrap",name:"Add Prefix/Suffix",icon:"lucide-wrap-text"},{id:"editing-toolbar:number-lines",name:"Number Lines (Custom)",icon:"lucide-list-ordered"},{id:"editing-toolbar:remove-whitespace-trim",name:"Trim Line Ends",icon:"lucide-scissors"},{id:"editing-toolbar:remove-whitespace-compress",name:"Shrink Extra Spaces",icon:"lucide-minimize"},{id:"editing-toolbar:remove-whitespace-all",name:"Remove All Whitespace",icon:"lucide-eraser"},{id:"editingToolbar-Divider-Line",name:"Advanced Tools",icon:"vertical-split"},{id:"editing-toolbar:list-to-table",name:"List to Table",icon:"lucide-table"},{id:"editing-toolbar:table-to-list",name:"Table to List",icon:"lucide-list"},{id:"editing-toolbar:extract-between",name:"Extract Between Strings",icon:"lucide-brackets"}]},{id:"SubmenuCommands-lucdf3en5",name:"submenu",icon:"edit",SubmenuCommands:[{id:"editing-toolbar:editor-cut",name:"Cut",icon:"lucide-scissors"},{id:"editing-toolbar:editor-copy",name:"Copy",icon:"lucide-copy"},{id:"editing-toolbar:editor-paste",name:"Paste",icon:"lucide-clipboard-type"},{id:"editing-toolbar:editor:swap-line-down",name:"Swap Line Down",icon:"lucide-corner-right-down"},{id:"editing-toolbar:editor:swap-line-up",name:"Swap Line Up",icon:"lucide-corner-right-up"}]},{id:"editing-toolbar:editor:attach-file",name:"Attach File",icon:"lucide-paperclip"},{id:"editing-toolbar:editor:insert-table",name:"Insert Table",icon:"lucide-table"},{id:"editing-toolbar:editor:cycle-list-checklist",name:"Cycle List and Checklist",icon:"check-circle"},{id:"SubmenuCommands-luc8efull",name:"submenu",icon:"message-square",SubmenuCommands:[{id:"editing-toolbar:editor:toggle-blockquote",name:"Blockquote",icon:"lucide-text-quote"},{id:"editing-toolbar:insert-callout",name:"Callout",icon:"lucide-quote"}]},{id:"SubmenuCommands-mdcmder",name:"submenu",icon:'',SubmenuCommands:[{id:"editing-toolbar:superscript",name:"Superscript",icon:"superscript-glyph"},{id:"editing-toolbar:subscript",name:"Subscript",icon:"subscript-glyph"},{id:"editing-toolbar:editor:toggle-code",name:"Inline Code",icon:"code-glyph"},{id:"editing-toolbar:codeblock",name:"Code Block",icon:"codeblock-glyph"},{id:"editing-toolbar:editor:insert-wikilink",name:"Wikilink",icon:''},{id:"editing-toolbar:editor:insert-embed",name:"Embed",icon:"note-glyph"},{id:"editing-toolbar:insert-link",name:"Link",icon:"link-glyph"},{id:"editing-toolbar:hrline",name:"Horizontal Divider",icon:''},{id:"editing-toolbar:toggle-inline-math",name:"Inline Math",icon:"lucide-sigma"},{id:"editing-toolbar:editor:insert-mathblock",name:"MathBlock",icon:"lucide-sigma-square"}]},{id:"SubmenuCommands-list",name:"submenu-list",icon:"bullet-list-glyph",SubmenuCommands:[{id:"editing-toolbar:editor:toggle-checklist-status",name:"Checklist",icon:"checkbox-glyph"},{id:"editing-toolbar:renumber-ordered-list",name:"Renumber Ordered List",icon:"list-restart"},{id:"editing-toolbar:toggle-numbered-list",name:"Ordered List",icon:''},{id:"editing-toolbar:toggle-bullet-list",name:"Unordered List",icon:''},{id:"editing-toolbar:undent-list",name:"Unindent List",icon:''},{id:"editing-toolbar:indent-list",name:"Indent list",icon:''}]},{id:"SubmenuCommands-aligin",name:"submenu-aligin",icon:'',SubmenuCommands:[{id:"editing-toolbar:justify",name:"Justify Text",icon:''},{id:"editing-toolbar:left",name:"Align Text Left",icon:''},{id:"editing-toolbar:center",name:"Center Text",icon:''},{id:"editing-toolbar:right",name:"Align Text Right",icon:''}]},{id:"editing-toolbar:change-font-color",name:"Change Font Color",icon:''},{id:"editing-toolbar:change-background-color",name:"Change Background Color",icon:''},{id:"editing-toolbar:fullscreen-focus",name:"Fullscreen Focus Mode",icon:"fullscreen"},{id:"editing-toolbar:workplace-fullscreen-focus",name:"Workplace Fullscreen",icon:"exit-fullscreen"}],followingCommands:[],topCommands:[],fixedCommands:[],mobileCommands:[],enableMultipleConfig:!1,enableTopToolbar:!1,enableFollowingToolbar:!1,enableFixedToolbar:!1,appendMethod:"workspace",shouldShowMenuOnSelect:!1,cMenuVisibility:!0,cMenuBottomValue:4.25,cMenuNumRows:12,cMenuWidth:610,cMenuFontColor:"#2DC26B",cMenuBackgroundColor:"#d3f8b6",autohide:!1,Iscentered:!1,custom_bg1:"#FFB78B8C",custom_bg2:"#CDF4698C",custom_bg3:"#A0CCF68C",custom_bg4:"#F0A7D88C",custom_bg5:"#ADEFEF8C",custom_fc1:"#D83931",custom_fc2:"#DE7802",custom_fc3:"#245BDB",custom_fc4:"#6425D0",custom_fc5:"#646A73",isLoadOnMobile:!1,horizontalPosition:0,verticalPosition:0,formatBrushes:{},customCommands:[],viewTypeSettings:{},appearanceByStyle:{top:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"},following:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"},fixed:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"},mobile:{toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,aestheticStyle:"default"}},toolbarBackgroundColor:"rgba(var(--background-secondary-rgb), 0.7)",toolbarIconColor:"var(--text-normal)",toolbarIconSize:18,useCurrentLineForRegex:!1,ai:{enabled:!1,consentAccepted:!1,onboardingShown:!1,providerMode:"pkmer-first",enableInlineCompletion:!0,completionTrigger:"manual",completionDelay:500,enableRewrite:!0,showRewriteToolbarOnSelection:!1,rewriteMinSelectionLength:1,pkmerApiBaseUrl:"https://newapi.pkmer.cn",pkmerModel:"04-fast",pkmerModelRouting:I,pkmer:{tokenExpiresAt:0,userInfo:null},enableCustomModel:!1,customModel:{apiFormat:"openai-compatible",baseUrl:"",apiKey:"",model:"",temperature:.2}}};class j{static isAllowedViewType(e,t){if(!e)return!1;const o=e.getViewType(),i=window.app?.plugins?.plugins?.["editing-toolbar"];if(i?.settings?.viewTypeSettings&&void 0!==i.settings.viewTypeSettings[o])return i.settings.viewTypeSettings[o];return(t||["markdown","canvas","thino_view","meld-encrypted-view"]).includes(o)}static isSourceMode(e){return!!e&&"source"===e.getMode?.()}}const K="editing-toolbar:ai-tools";const Y=[{id:"list",label:"Convert to list",icon:"lucide-list-tree"},{id:"table",label:"Convert to table",icon:"lucide-table-properties"},{id:"frontmatter",label:"Generate frontmatter",icon:"lucide-file-badge-2"},{id:"canvas",label:"Convert to canvas",icon:"lucide-waypoints"}],G=["Obsidian Markdown rules:","- Preserve valid Obsidian flavored Markdown whenever relevant.","- Preserve wikilinks like [[Note]], embeds like ![[Note]], tags, task lists, callouts, tables, and inline formatting if they appear in the source.","- For internal links use [[wikilinks]] rather than Markdown links whenever the target looks like a vault note.","- Use standard Markdown headings, lists, blockquotes, tables, and code fences only when they fit the content naturally."].join("\n"),Z=["Obsidian Bases skill requirements:","- Output a valid .base file body in YAML only. No explanations. No code fences.","- A base file may contain top-level filters, formulas, properties, summaries, and views.","- filters can be a single filter string or nested and/or/not filter objects.","- formulas is a mapping from formula name to expression string.","- properties config can include displayName for note, file, and formula properties.","- views must be an array. Each view should have a useful type such as table, cards, list, or map, plus a name and order.","- Use practical property names inferred from the source content, and use formula.* when referencing formula properties in views.","- Common file properties include file.name, file.basename, file.path, file.folder, file.ext, file.ctime, file.mtime, file.tags, file.links, file.backlinks, file.embeds, file.properties.","- Keep YAML valid: quote strings when needed, keep indentation consistent, and do not reference undefined formulas.","- Prefer concise but actually usable output over placeholders.","- If the source describes tabular entities, create at least one table view.","- If the source suggests browsing or grouping, consider cards or list views too.","- If filtering logic is unclear, you may omit filters rather than inventing weak ones.","- If there are date-like fields, formulas may use date(), now(), today(), and duration .days accessors.","- Return one complete semantic .base file ready to save and open in Obsidian.","Suggested schema pattern:","filters:"," and: []","formulas:"," formula_name: 'expression'","properties:"," property_name:",' displayName: "Display Name"',"views:"," - type: table",' name: "Overview"'," order:"," - file.name"," - property_name"].join("\n"),J=["Obsidian JSON Canvas skill requirements:","- Output valid JSON only. No explanations. No code fences.","- The top-level object must contain arrays named nodes and edges.","- Every node needs id, type, x, y, width, and height.","- Every edge must reference existing node ids using fromNode and toNode.","- Use unique 16-character lowercase hexadecimal ids for all nodes and edges.","- Valid node types are text, file, link, and group.","- Prefer text nodes unless a file node or link node is clearly required by the source.","- Text nodes should contain concise, structured Markdown-friendly text.","- Use \\n inside JSON strings for line breaks. Never emit literal \\\\n.","- If useful, use one group node to organize the canvas, but do not overuse groups.","- Layout should be readable: align to a loose grid, leave about 50-100px spacing between nodes, and avoid overlaps.","- Coordinates can be negative, but prefer a clean left-to-right or center-out layout.","- A good canvas usually has a clear central node and connected supporting nodes rather than isolated fragments.","- Unless the source is tiny, create a meaningful structure with several nodes instead of only one or two.","- Use edge labels only when they add real meaning.","- Return a canvas that is ready to save as a .canvas file and open directly in Obsidian.","Reference shape:","{",' "nodes": [',' { "id": "6f0ad84f44ce9c17", "type": "text", "x": 0, "y": 0, "width": 360, "height": 180, "text": "# Topic\\n\\n- point" }'," ],",' "edges": [',' { "id": "0123456789abcdef", "fromNode": "6f0ad84f44ce9c17", "toNode": "a1b2c3d4e5f67890", "toEnd": "arrow" }'," ]","}"].join("\n");let X;const Q={markdown:".markdown-source-view",thino_view:".markdown-source-view",canvas:".canvas-wrapper",excalidraw:".view-header",image:".image-container",pdf:".view-content",meld_encrypted_view:".markdown-source-view"};function ee(t){X=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const o=function(){const t=[];t.push(app.workspace.rootSplit);const o=app.workspace.floatingSplit;return o?.children.forEach(o=>{o instanceof e.WorkspaceWindow&&t.push(o)}),t}(),i=e=>{const t=e.querySelectorAll(".editingToolbarModalBar"),o=e.querySelectorAll(".editingToolbarPopoverBar");t.forEach(e=>{e.firstChild&&e.removeChild(e.firstChild),e.remove()}),o.forEach(e=>{e.firstChild&&e.removeChild(e.firstChild),e.remove()})};i(X),o&&o.forEach(e=>{e?.containerEl&&i(e.containerEl)}),t&&t.clearToolbarCache()}function te(t,o,i,n){const a=n||t.workspace.activeLeaf?.view?.containerEl?.ownerDocument||(e.requireApiVersion("0.15.0")?activeWindow.document:window.document);X=a;const s=i||o.positionStyle||o.settings.positionStyle||"top";if("top"!==s){const e=o.getCachedToolbar(s);if(e&&e.ownerDocument===a)return e}const r=`.editingToolbarModalBar[data-toolbar-style="${s}"]`;let l=null;return l="top"===s?t.workspace.activeLeaf?.view.containerEl?.querySelector(r)||null:a.querySelector(r),l&&"top"!==s&&o.setCachedToolbar(s,l),l||null}const oe=(e,t)=>t.reduce((e,t)=>e&&"undefined"!==e[t]?e[t]:void 0,e);function ie(e,t){return e&&void 0!==e[1][0]?t+e.flat(2).join("+").replace("Mod","Ctrl")+t:t+"–"+t}function ne(e,t,o=!0){let i=e.commands.findCommand(t),n=o?"*":"";if(i){let t=i.hotkeys?[[oe(i.hotkeys,[0,"modifiers"])],[oe(i.hotkeys,[0,"key"])]]:void 0,o=e.hotkeyManager.customKeys[i.id];var a=o?[[oe(o,[0,"modifiers"])],[oe(o,[0,"key"])]]:void 0;return a?ie(a,n):ie(t,"")}return"–"}function ae(e){return/<[^>]+>/g.test(e)}function se(t,o){return o?ae(o)?(t.setIcon("lucide-square"),void(t.iconEl&&(t.iconEl.empty(),t.iconEl.innerHTML=o))):(t.setIcon(o),void(t.iconEl&&0===t.iconEl.childElementCount&&e.setIcon(t.iconEl,o))):(t.setIcon(""),void(t.iconEl&&t.iconEl.empty()))}function re(e,t,o,i){const n=i.commandsManager.getActiveEditor(),a=n&&n.somethingSelected();0==t.cMenuVisibility?e.style.visibility="hidden":"following"===o?a||(e.style.visibility="hidden"):e.style.visibility="visible"}const le={improve:"lucide-wand-2","fix-grammar":"lucide-spell-check-2","make-shorter":"lucide-minimize-2","make-longer":"lucide-maximize-2",simplify:"lucide-align-left",professional:"lucide-briefcase",casual:"lucide-message-circle-more","translate-en":"lucide-languages","translate-zh":"lucide-languages","translate-ja":"lucide-languages","translate-de":"lucide-languages","translate-fr":"lucide-languages","translate-es":"lucide-languages",explain:"lucide-info",summarize:"lucide-file-text",continue:"lucide-pencil-line",custom:"lucide-message-square"},ce={"editing-toolbar:ai-inline-completion":"AI Complete","editing-toolbar:ai-rewrite-improve":"AI Rewrite","editing-toolbar:ai-rewrite-continue":"AI Continue","editing-toolbar:ai-rewrite-custom":"AI Custom","editing-toolbar:ai-tools:improve":"AI Rewrite","editing-toolbar:ai-tools:fix-grammar":"AI Fix","editing-toolbar:ai-tools:make-shorter":"AI Shorten","editing-toolbar:ai-tools:make-longer":"AI Expand","editing-toolbar:ai-tools:simplify":"AI Simplify","editing-toolbar:ai-tools:professional":"AI Professional","editing-toolbar:ai-tools:casual":"AI Casual","editing-toolbar:ai-tools:translate-en":"AI Translate","editing-toolbar:ai-tools:translate-zh":"AI Translate","editing-toolbar:ai-tools:translate-ja":"AI Translate","editing-toolbar:ai-tools:translate-de":"AI Translate","editing-toolbar:ai-tools:translate-fr":"AI Translate","editing-toolbar:ai-tools:translate-es":"AI Translate","editing-toolbar:ai-tools:explain":"AI Explain","editing-toolbar:ai-tools:summarize":"AI Summarize","editing-toolbar:ai-tools:continue":"AI Continue","editing-toolbar:ai-tools:custom":"AI Custom","editing-toolbar:ai-toolbox:list":"AI List","editing-toolbar:ai-toolbox:table":"AI Table","editing-toolbar:ai-toolbox:frontmatter":"AI Frontmatter","editing-toolbar:ai-toolbox:canvas":"AI Canvas"};function de(e,t){e.lastExecutedCommand=t,e.lastExecutedCommandName=w(ce[t]?ce[t]:"AI")}function me(e){const t=e.lastExecutedCommand;return t&&ce[t]?w(ce[t]):t?.startsWith("editing-toolbar:ai")&&e.lastExecutedCommandName?e.lastExecutedCommandName:w("AI")}function ue(t,o,i,n,a){if(i<=100)return!1;return t+o+6*Math.max(1,Math.round(t/Math.max(n,1)))+(n+12)+("following"===a?n+10:0)+(e.Platform.isMobileApp||"mobile"===a?14:0)>=Math.max(i-16,2*n)}function pe(t,o,i){X=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const n=o.commandsManager.getActiveEditor();let a=te(t,o),s=a?.querySelector("#"+i);if(s){let e=s.rows,t=e.length;for(let a=1;a{t.style.fill=e})}else if("x-backgroundcolor-picker-table"==i){o.settings.cMenuBackgroundColor=e,c(e,n),X.querySelectorAll("#change-background-color-icon").forEach(t=>{t.style.fill=e})}o.saveSettings()}}}}}const he=function(e){let t=e;if(/^(rgb|RGB)/.test(t)){let e=t.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(","),o="#";for(let t=0;t{"hidden"==s.style.visibility?(s.style.visibility="visible",s.style.height="32px",((e,t,o)=>{if("following"!==o)return void(e=>{e.style.removeProperty("left"),e.style.removeProperty("top"),e.style.removeProperty("right"),e.style.removeProperty("bottom"),e.style.removeProperty("transform"),e.style.removeProperty("margin"),e.style.removeProperty("position")})(t);const i=t.ownerDocument.defaultView??window,n=e.getBoundingClientRect(),a=Math.max(t.offsetWidth,t.scrollWidth),s=Math.max(t.offsetHeight,t.scrollHeight),r=Math.max(12,i.innerWidth-a-12);let l=n.right-a;a<=0&&(l=n.left),l=Math.min(Math.max(l,12),r);let c=n.bottom+8;s>0&&c+s>i.innerHeight-12&&(c=Math.max(12,n.top-s-8)),t.style.position="fixed",t.style.left=`${l}px`,t.style.top=`${c}px`,t.style.right="auto",t.style.bottom="auto",t.style.transform="none",t.style.margin="0"})(l.buttonEl,s,a)):(s.style.visibility="hidden",s.style.height="0")}),l.buttonEl.innerHTML='',o.setIS_MORE_Button(!1),r}function fe(e){e.quiteAllFormatBrushes()}function be(e,t){let o=t.getSelection();if(!o||""===o.trim())return;if(o.match(/^>\s*\[\![\w\s]*\]/m)){let e=o.split("\n"),i=[],n=!1,a=0,s=!1;for(let t=0;t+)\s*\[\!([\w\s]*)\]\s*(.*?)$/);if(!r||s)if(n){let e=o.match(/^(>+)\s*/);if(e&&e[1].length>=a){let e=o.replace(new RegExp(`^>{${a}}\\s*`),"");i.push(e)}else n=!1,i.push(o)}else i.push(o);else a=r[1].length,s=!0,r[3].trim()&&i.push(r[3].trim()),n=!0}return void t.replaceSelection(i.join("\n"))}o=o.replace(/(^#+\s|^#(?=\s)|^\>|^\- \[( |x)\]|^\+ |\<[^\<\>]+?\>|^1\. |^\s*\- |^\-+$|^\*+$)/gm,""),o=o.replace(/^[ ]+|[ ]+$/gm,""),o=o.replace(/\!?\[\[([^\[\]\|]*\|)*([^\(\)\[\]]+)\]\]/g,"$2"),o=o.replace(/\!?\[+([^\[\]\(\)]+)\]+\(([^\(\)]+)\)/g,"$1"),o=o.replace(/`([^`]+)`/g,"$1"),o=o.replace(/_([^_]+)_/g,"$1"),o=o.replace(/==([^=]+)==/g,"$1"),o=o.replace(/\*\*\*([^\*]+)\*\*\*/g,"$1"),o=o.replace(/\*\*?([^\*]+)\*\*?/g,"$1"),o=o.replace(/~~([^~]+)~~/g,"$1"),t.replaceSelection(o)}function ye(t,o,i,n,a=!1,s){const r=s||n?.cm?.dom?.ownerDocument||n?.cm?.contentDOM?.ownerDocument||t.workspace.activeLeaf?.view?.containerEl?.ownerDocument||(e.requireApiVersion("0.15.0")?activeWindow.document:window.document);let l=te(t,i,"following",r);const c=t.workspace.getActiveViewOfType(e.ItemView);if(!j.isAllowedViewType(c))return void(l&&(l.style.visibility="hidden"));if(!(i.settings.enableFollowingToolbar||!i.settings.enableTopToolbar&&!i.settings.enableFixedToolbar&&"following"===i.positionStyle))return;l||(Ce(t,i,"following",r),l=te(t,i,"following",r));const d=c?.getViewType(),m="markdown"===d;let u=30;if(u="tiny"===i.settings.aestheticStyle?30:o+14,m)if(j.isSourceMode(c)){if(l){const e=a||n.somethingSelected();l.style.visibility=e?"visible":"hidden","visible"===l.style.visibility&&(l.style.height=u+"px",l.addClass("editingToolbarFlex"),l.removeClass("editingToolbarGrid"),function(e,t){const o=t.containerEl.getBoundingClientRect(),i=e.offsetWidth,n=e.offsetHeight,a=12,s=e.ownerDocument.defaultView?.innerWidth??window.innerWidth,r=t.getCursor("from");t.getCursor("to");const l=t.coordsAtPos(r),c=X.getElementsByClassName("mod-left-split")[0]?.clientWidth??0,d=X.getElementsByClassName("side-dock-ribbon mod-left")[0]?.clientWidth??0,m=c+d;let u=l.left-m-28;u+i>s-m&&(u=s-m-i-a);u=Math.max(0,u);let p=function(e,t,o,i){const n=e.getCursor("from"),a=e.getCursor("to"),s=e.coordsAtPos(a),r=n.line===a.line;let l=t.top-i-10;if(r)l<=o.top&&(l=s.bottom+10);else{if(e.getCursor("head").ch==e.getCursor("from").ch)l=t.top-i-10,l<=o.top&&(l=o.top+2*i);else{const t=(e=>{let t,o=e.getCursor("head");if(e.getCursor("head").ch!==e.getCursor("from").ch&&(o.ch=Math.max(0,o.ch-1)),e.cursorCoords)t=e.cursorCoords(!0,"window");else{if(!e.coordsAtPos)return;{const i=e.posToOffset(o);t=e.cm.coordsAtPos?.(i)??e.coordsAtPos(i)}}return t})(e);l=t.bottom+10,l>=o.bottom-i&&(l=o.bottom-2*i)}}return l}(t,l,o,n);p=Math.max(0,p),e.style.left=`${u}px`,e.style.top=`${p}px`}(l,n))}}else l&&(l.style.visibility="hidden");else l&&(l.style.visibility="visible",l.style.height=u+"px",l.addClass("editingToolbarFlex"),l.removeClass("editingToolbarGrid"))}function Ce(t,o,i,n){const a=o.settings,s=n||t.workspace.activeLeaf?.view?.containerEl?.ownerDocument||(e.requireApiVersion("0.15.0")?activeWindow.document:window.document);if(X=s,!i){const e=[];if(a.enableTopToolbar&&e.push("top"),a.enableFollowingToolbar&&e.push("following"),a.enableFixedToolbar&&e.push("fixed"),0===e.length){const t=o.positionStyle||o.settings.positionStyle||"top";e.push(t)}return void e.forEach(e=>{Ce(t,o,e,s)})}const r=i;if(!a.cMenuVisibility){const e=te(t,o,r,s);return void(e&&(e.style.display="none"))}const l=(a.appearanceByStyle||{})[r]||{},c=l.toolbarIconSize??o.toolbarIconSize??18,d=l.aestheticStyle??a.aestheticStyle??"default",m="custom"===d?l.toolbarBackgroundColor??a.toolbarBackgroundColor:void 0,u="custom"===d?l.toolbarIconColor??a.toolbarIconColor:void 0,p={default:"editingToolbarDefaultAesthetic",tiny:"editingToolbarTinyAesthetic",glass:"editingToolbarGlassAesthetic",custom:"editingToolbarCustomAesthetic"};!function(){function i(e,t){Object.values(p).forEach(t=>{e.removeClass(t)});const o=p[t]||p.default;e.addClass(o)}const n=()=>{let n=0,l=0,p=c+8,h=createEl("div");if(h)if(h.addClass("editingToolbarModalBar"),h.setAttribute("data-toolbar-style",r),"top"===r)h.className+=" top",a.autohide&&(h.className+=" autohide"),a.Iscentered&&(h.className+=" centered");else if("following"===r)h.style.visibility="hidden";else if("fixed"===r){const e=c||18,t=`left: calc(50% - calc(${a.cMenuNumRows*(e+10)}px / 2));\n bottom: 4.25em; \n grid-template-columns: repeat(${a.cMenuNumRows}, ${e+10}px);\n gap: ${(e-18)/4}px`;h.setAttribute("style",t)}h.setAttribute("id","editingToolbarModalBar");let g=createEl("div");if(g.addClass("editingToolbarpopover"),g.addClass("editingToolbarTinyAesthetic"),g.addClass("editingToolbarPopoverBar"),g.setAttribute("data-toolbar-style",r),g.setAttribute("id","editingToolbarPopoverBar"),g.style.visibility="hidden",g.style.height="0",i(h,d),i(g,d),m&&(h.style.setProperty("--editing-toolbar-background-color",m),g.style.setProperty("--editing-toolbar-background-color",m)),u&&(h.style.setProperty("--editing-toolbar-icon-color",u),g.style.setProperty("--editing-toolbar-icon-color",u)),c&&(h.style.setProperty("--toolbar-icon-size",`${c}px`),g.style.setProperty("--toolbar-icon-size",`${c}px`)),"top"===r){let e=t.workspace.activeLeaf.view.containerEl,o=null;const i=t.workspace.activeLeaf.view.getViewType(),n=Q[i];if(n&&(o=e?.querySelector(n)),!o){const t=e?.querySelector(".view-content");if(t){const e=t.querySelectorAll(":scope > div");o=e.length>0?e[0]:t}}if(!o)return void console.log("Editing Toolbar: Failed to find target DOM element for toolbar insertion");const a="canvas"===i?e?.querySelector(".view-content"):null;"canvas"===i&&a?(a.insertAdjacentElement("beforebegin",h),e?.querySelector("#editingToolbarPopoverBar")||a.insertAdjacentElement("beforebegin",g)):(e?.querySelector("#editingToolbarPopoverBar")||("excalidraw"==i?o.insertAdjacentElement("afterend",g):o.insertAdjacentElement("afterbegin",g)),"excalidraw"==i?o.insertAdjacentElement("afterend",h):o.insertAdjacentElement("afterbegin",h));const r=[o?.clientWidth||o?.offsetWidth||0,e?.clientWidth||e?.getBoundingClientRect().width||0,s.defaultView?.innerWidth||0].filter(e=>e>0);l=r.length>0?Math.min(...r):0}else if("body"==a.appendMethod){s.querySelector(`.editingToolbarPopoverBar[data-toolbar-style="${r}"]`)||s.body.appendChild(g),s.body.appendChild(h),l=s.defaultView?.innerWidth||s.body?.clientWidth||0}else if("workspace"==a.appendMethod){const e=s.body?.querySelector(".mod-vertical.mod-root");if(!e)return;e.querySelector(`.editingToolbarPopoverBar[data-toolbar-style="${r}"]`)||e.insertAdjacentElement("afterbegin",g),e.insertAdjacentElement("afterbegin",h);const t=[s.body?.clientWidth||0,s.defaultView?.innerWidth||0].filter(e=>e>0);l=t.length>0?Math.min(...t):0}let f="top"===r?t.workspace.activeLeaf.view.containerEl?.querySelector("#editingToolbarPopoverBar"):s.querySelector(`.editingToolbarPopoverBar[data-toolbar-style="${r}"]`);const b=e=>e?f||(console.warn(`Editing Toolbar: missing popover host for style "${r}", falling back to toolbar host.`),h):h,y=o.getCurrentCommands(r),C=e=>w(e),v=(e,t)=>{const o=C(e);return"–"===t?o:`${o}(${t})`};y.forEach((i,s)=>{let c;if("SubmenuCommands"in i){let d;ue(n,p,l,p,r)?(o.setIS_MORE_Button(!0),d=new e.ButtonComponent(b(!0))):d=new e.ButtonComponent(h),d.setClass("editingToolbarCommandsubItem"+s),s>=a.cMenuNumRows?d.setClass("editingToolbarSecond"):"top"!==r&&d.buttonEl.setAttribute("aria-label-position","top"),ae(i.icon)?d.buttonEl.innerHTML=i.icon:d.setIcon(i.icon),n+=p+2;if("dropdown"===(i.menuType||"submenu")){d.setClass("editingToolbarDropdownButton");let n=ne(t,i.id);c=v(i.name,n),d.setTooltip(c),d.onClick(n=>{const s=new e.Menu;i.SubmenuCommands.forEach(e=>{"editingToolbar-Divider-Line"===e.id?(s.addSeparator(),s.addItem(t=>{t.setTitle(w(e.name)).setDisabled(!0),se(t,"")})):s.addItem(i=>{const n=ne(t,e.id,!1),s=w(e.name),l="–"!==n?`${s}`:s;if(i.setTitle(l).onClick(()=>{t.commands.executeCommandById(e.id);const i=o.commandsManager.getActiveEditor(),n=i&&i.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?n||(h.style.visibility="hidden"):h.style.visibility="visible"}),se(i,e.icon),"—"!==n){i.dom.createSpan({cls:"menu-item-hotkey"}).setText(n)}})}),s.dom.addClass("editing-toolbar-dropdown-menu"),s.showAtMouseEvent(n)})}else{let n=function(e){let t=createEl("div");return t.addClass(e),t}("subitem");n&&i.SubmenuCommands.forEach(i=>{let l=ne(t,i.id);c=v(i.name,l);let m=new e.ButtonComponent(n).setTooltip(c).setClass("menu-item").onClick(()=>{t.commands.executeCommandById(i.id);const e=o.commandsManager.getActiveEditor(),n=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?n||(h.style.visibility="hidden"):h.style.visibility="visible"});s=a.cMenuNumRows?u.setClass("editingToolbarSecond"):"top"!==r&&u.buttonEl.setAttribute("aria-label-position","top"),ae(i.icon)?u.buttonEl.innerHTML=i.icon:u.setIcon(i.icon);const g="fixed"===r;u.setClass(g?"editing-toolbar-ai-button-fixed":"editing-toolbar-ai-button-inline");let f=null;if(!g){const e=document.createElement("span");e.className="editing-toolbar-ai-button-main",f=document.createElement("span"),f.className="editing-toolbar-ai-button-label",f.textContent=me(o),e.appendChild(f),u.buttonEl.appendChild(e)}const y=document.createElement("span");y.className="editing-toolbar-ai-button-arrow",y.setAttribute("aria-hidden","true"),y.textContent=String.fromCharCode(9662),u.buttonEl.appendChild(y),n+=c;const C=async i=>{v=Date.now()+240;const n="unavailable"!==await o.aiManager.getToolbarRouteState(),s=o.commandsManager.getActiveEditor(),l=ne(t,"editing-toolbar:ai-inline-completion",!1),c=l.includes("+")?l:"",d=new e.Menu,m=()=>{d.hide()},u=t=>{const i=async()=>{if(!n)return void new e.Notice(await o.aiManager.getProviderRouteStatusText());!1!==await t.action()&&(m(),t.commandIdForLabel&&(de(o,t.commandIdForLabel),f&&(f.textContent=me(o))),re(h,a,r,o))};d.addItem(e=>{if(e.setTitle(w(t.title)).setIcon(t.icon).onClick(i),t.hotkey){e.dom.createSpan({cls:"menu-item-hotkey"}).setText(t.hotkey)}})},p=(t,i,s)=>{d.addItem(l=>{l.setTitle(w(t)).setIcon(i);const c=l.setSubmenu();s.forEach(t=>{c.addItem(i=>{if(i.setTitle(w(t.title)).setIcon(t.icon).onClick(async()=>{if(!n)return void new e.Notice(await o.aiManager.getProviderRouteStatusText());!1!==await t.action()&&(m(),t.commandIdForLabel&&(de(o,t.commandIdForLabel),f&&(f.textContent=me(o))),re(h,a,r,o))}),t.hotkey){i.dom.createSpan({cls:"menu-item-hotkey"}).setText(t.hotkey)}})})})};u({title:"Trigger AI Inline Completion",icon:"lucide-sparkles",hotkey:c||void 0,commandIdForLabel:"editing-toolbar:ai-inline-completion",action:()=>o.aiManager.triggerInlineCompletion(s)});const g=new Map;M.forEach(e=>{const t=g.get(e.group)??[];t.push(e),g.set(e.group,t)});const b={Edit:"lucide-wand-sparkles",Tone:"lucide-messages-square",Translate:"lucide-languages",Generate:"lucide-bot"};g.forEach((e,t)=>{p(t,b[t]??"lucide-sparkles",e.map(e=>({title:e.label,icon:le[e.instruction],commandIdForLabel:`editing-toolbar:ai-tools:${e.instruction}`,action:async()=>{await o.aiManager.startRewrite(s,e.instruction)}})))}),u({title:"AI Custom Rewrite",icon:le.custom,commandIdForLabel:"editing-toolbar:ai-tools:custom",action:()=>o.aiManager.openCustomRewrite(s)}),p("AI Toolbox","lucide-boxes",Y.map(e=>({title:e.label,icon:e.icon,commandIdForLabel:`editing-toolbar:ai-toolbox:${e.id}`,action:async()=>o.aiManager.runToolboxAction(s,e.id)}))),d.dom.addClass("editing-toolbar-dropdown-menu"),d.dom.addClass("editing-toolbar-ai-dropdown-menu"),d.showAtMouseEvent(i)};let v=0;y.addEventListener("click",async e=>{e.preventDefault(),e.stopPropagation(),await C(e)}),u.buttonEl.addEventListener("click",async t=>{if(t.preventDefault(),t.stopPropagation(),Date.now(){t.commands.executeCommandById(i.id);const e=o.commandsManager.getActiveEditor(),n=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?n||(h.style.visibility="hidden"):h.style.visibility="visible"}),ae(i.icon)?s.buttonEl.innerHTML=i.icon:s.setIcon(i.icon),n+=p;let l=createEl("div");if(l.addClass("subitem"),l){l.innerHTML=function(e){return`
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Theme Colors
Standard Colors
Custom Font Colors
\n
\n
`}(o),s.buttonEl.insertAdjacentElement("afterbegin",l),pe(t,o,"x-color-picker-table");let i=l.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(i).setIcon("paintbrush").setTooltip(w("Format Brush")).onClick(()=>{fe(o),o.setEN_FontColor_Format_Brush(!0),o.Temp_Notice=new e.Notice(w("Font-Color formatting brush ON!"),0)}),new e.ButtonComponent(i).setIcon("palette").setTooltip(w("Custom Font Color")).onClick(()=>{t.setting.open(),t.setting.openTabById("editing-toolbar"),setTimeout(()=>{const e=t.setting.activeTab.containerEl.querySelector(".editing-toolbar-tabs");if(e){const o=e.children[1];o?.click(),setTimeout(()=>{let e=t.setting.activeTab.containerEl.querySelector(".custom_font");e&&e.addClass?.("toolbar-cta")},100)}},200)})}}else if("editing-toolbar:change-background-color"==i.id){let s=new e.ButtonComponent(h);s.setClass("editingToolbarCommandsubItem-font-color").setTooltip(w("Background Color")).onClick(()=>{t.commands.executeCommandById(i.id);const e=o.commandsManager.getActiveEditor(),n=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?n||(h.style.visibility="hidden"):h.style.visibility="visible"}),ae(i.icon)?s.buttonEl.innerHTML=i.icon:s.setIcon(i.icon),n+=p;let l=createEl("div");if(l.addClass("subitem"),l){l.innerHTML=function(e){return`
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Translucent Colors
Highlighter Colors
Custom Colors
\n
\n
`}(o),s.buttonEl.insertAdjacentElement("afterbegin",l),pe(t,o,"x-backgroundcolor-picker-table");let i=l.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(i).setIcon("paintbrush").setTooltip(w("Format Brush")).onClick(()=>{fe(o),o.setEN_BG_Format_Brush(!0),o.Temp_Notice=new e.Notice(w("Font-Color formatting brush ON!"),0)}),new e.ButtonComponent(i).setIcon("palette").setTooltip(w("Custom Backgroud Color")).onClick(()=>{t.setting.open(),t.setting.openTabById("editing-toolbar"),setTimeout(()=>{const e=t.setting.activeTab.containerEl.querySelector(".editing-toolbar-tabs");if(e){const o=e.children[1];o?.click(),setTimeout(()=>{let e=t.setting.activeTab.containerEl.querySelector(".custom_bg");e&&e.addClass?.("toolbar-cta")},100)}},200)})}}else{let d;ue(n,p,l,p,r)?(o.setIS_MORE_Button(!0),d=new e.ButtonComponent(b(!0))):d=new e.ButtonComponent(h);let m=ne(t,i.id);c=v(i.name,m),d.setTooltip(c).onClick(()=>{t.commands.executeCommandById(i.id);const e=o.commandsManager.getActiveEditor(),n=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?n||(h.style.visibility="hidden"):h.style.visibility="visible"}),d.setClass("editingToolbarCommandItem"),s>=a.cMenuNumRows?d.setClass("editingToolbarSecond"):"top"!==r&&d.buttonEl.setAttribute("aria-label-position","top"),"editingToolbar-Divider-Line"==i.id&&d.setClass("editingToolbar-Divider-Line"),ae(i.icon)?d.buttonEl.innerHTML=i.icon:d.setIcon(i.icon),n+=p}}),ge(t,o,h),Math.abs(o.settings.cMenuWidth-Number(n))>n+4&&(o.settings.cMenuWidth=Number(n),setTimeout(()=>{o.saveSettings()},100))};if(!o.isLoadMobile())return;const l=t.workspace.getActiveViewOfType(e.ItemView);if(j.isAllowedViewType(l)){const i=te(t,o,r,s);if(i&&"top"!==r)return a.cMenuVisibility?"following"===r?(i.style.visibility="hidden",i.style.display=""):(i.style.visibility="visible",i.style.display=""):i.style.display="none",m&&i.style.setProperty("--editing-toolbar-background-color",m),u&&i.style.setProperty("--editing-toolbar-icon-color",u),void(c&&i.style.setProperty("--toolbar-icon-size",`${c}px`));if(n(),"top"!==r){const e=te(t,o,r,s);e&&o.setCachedToolbar(r,e)}g(o.settings),h(o.settings),function(t,o){X=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const i=X.querySelectorAll("#change-font-color-icon"),n=X.querySelectorAll("#change-background-color-icon");i.length>0&&i.forEach(e=>{e.style.fill=t});n.length>0&&n.forEach(e=>{e.style.fill=o})} /**! - * Sortable 1.15.6 + * Sortable 1.15.7 * @author RubaXa * @author owenm * @license MIT - */(n.cMenuFontColor,n.cMenuBackgroundColor)}}()}function ka(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,o)}return i}function Sa(e){for(var t=1;t=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function Ia(e){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(e)}var Da=Ia(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Oa=Ia(/Edge/i),Ba=Ia(/firefox/i),La=Ia(/safari/i)&&!Ia(/chrome/i)&&!Ia(/android/i),Pa=Ia(/iP(ad|od|hone)/i),Na=Ia(/chrome/i)&&Ia(/android/i),Ra={capture:!1,passive:!1};function Fa(e,t,i){e.addEventListener(t,i,!Da&&Ra)}function qa(e,t,i){e.removeEventListener(t,i,!Da&&Ra)}function _a(e,t){if(t){if(">"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(e){return!1}return!1}}function za(e){return e.host&&e!==document&&e.host.nodeType?e.host:e.parentNode}function Va(e,t,i,o){if(e){i=i||document;do{if(null!=t&&(">"===t[0]?e.parentNode===i&&_a(e,t):_a(e,t))||o&&e===i)return e;if(e===i)break}while(e=za(e))}return null}var Wa,Ha=/\s+/g;function $a(e,t,i){if(e&&t)if(e.classList)e.classList[i?"add":"remove"](t);else{var o=(" "+e.className+" ").replace(Ha," ").replace(" "+t+" "," ");e.className=(o+(i?" "+t:"")).replace(Ha," ")}}function Ua(e,t,i){var o=e&&e.style;if(o){if(void 0===i)return document.defaultView&&document.defaultView.getComputedStyle?i=document.defaultView.getComputedStyle(e,""):e.currentStyle&&(i=e.currentStyle),void 0===t?i:i[t];t in o||-1!==t.indexOf("webkit")||(t="-webkit-"+t),o[t]=i+("string"==typeof i?"":"px")}}function ja(e,t){var i="";if("string"==typeof e)i=e;else do{var o=Ua(e,"transform");o&&"none"!==o&&(i=o+" "+i)}while(!t&&(e=e.parentNode));var n=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return n&&new n(i)}function Ya(e,t,i){if(e){var o=e.getElementsByTagName(t),n=0,s=o.length;if(i)for(;n=s:n<=s))return o;if(o===Ga())break;o=tl(o,!1)}return!1}function Ja(e,t,i,o){for(var n=0,s=0,r=e.children;s2&&void 0!==arguments[2]?arguments[2]:{},o=i.evt,n=Aa(i,ul);hl.pluginEvent.bind(sc)(e,t,Sa({dragEl:gl,parentEl:fl,ghostEl:bl,rootEl:yl,nextEl:wl,lastDownEl:vl,cloneEl:Cl,cloneHidden:xl,dragStarted:Nl,putSortable:Al,activeSortable:sc.active,originalEvent:o,oldIndex:kl,oldDraggableIndex:Tl,newIndex:Sl,newDraggableIndex:El,hideGhostForTarget:tc,unhideGhostForTarget:ic,cloneNowHidden:function(){xl=!0},cloneNowShown:function(){xl=!1},dispatchSortableEvent:function(e){ml({sortable:t,name:e,originalEvent:o})}},n))};function ml(e){!function(e){var t=e.sortable,i=e.rootEl,o=e.name,n=e.targetEl,s=e.cloneEl,r=e.toEl,a=e.fromEl,l=e.oldIndex,c=e.newIndex,d=e.oldDraggableIndex,h=e.newDraggableIndex,u=e.originalEvent,p=e.putSortable,m=e.extraEventProperties;if(t=t||i&&i[al]){var g,f=t.options,b="on"+o.charAt(0).toUpperCase()+o.substr(1);!window.CustomEvent||Da||Oa?(g=document.createEvent("Event")).initEvent(o,!0,!0):g=new CustomEvent(o,{bubbles:!0,cancelable:!0}),g.to=r||i,g.from=a||i,g.item=n||i,g.clone=s,g.oldIndex=l,g.newIndex=c,g.oldDraggableIndex=d,g.newDraggableIndex=h,g.originalEvent=u,g.pullMode=p?p.lastPutMode:void 0;var y=Sa(Sa({},m),hl.getEventProperties(o,t));for(var w in y)g[w]=y[w];i&&i.dispatchEvent(g),f[b]&&f[b].call(t,g)}}(Sa({putSortable:Al,cloneEl:Cl,targetEl:gl,rootEl:yl,oldIndex:kl,oldDraggableIndex:Tl,newIndex:Sl,newDraggableIndex:El},e))}var gl,fl,bl,yl,wl,vl,Cl,xl,kl,Sl,Tl,El,Ml,Al,Il,Dl,Ol,Bl,Ll,Pl,Nl,Rl,Fl,ql,_l,zl=!1,Vl=!1,Wl=[],Hl=!1,$l=!1,Ul=[],jl=!1,Yl=[],Gl="undefined"!=typeof document,Zl=Pa,Kl=Oa||Da?"cssFloat":"float",Jl=Gl&&!Na&&!Pa&&"draggable"in document.createElement("div"),Xl=function(){if(Gl){if(Da)return!1;var e=document.createElement("x");return e.style.cssText="pointer-events:auto","auto"===e.style.pointerEvents}}(),Ql=function(e,t){var i=Ua(e),o=parseInt(i.width)-parseInt(i.paddingLeft)-parseInt(i.paddingRight)-parseInt(i.borderLeftWidth)-parseInt(i.borderRightWidth),n=Ja(e,0,t),s=Ja(e,1,t),r=n&&Ua(n),a=s&&Ua(s),l=r&&parseInt(r.marginLeft)+parseInt(r.marginRight)+Za(n).width,c=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+Za(s).width;if("flex"===i.display)return"column"===i.flexDirection||"column-reverse"===i.flexDirection?"vertical":"horizontal";if("grid"===i.display)return i.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(n&&r.float&&"none"!==r.float){var d="left"===r.float?"left":"right";return!s||"both"!==a.clear&&a.clear!==d?"horizontal":"vertical"}return n&&("block"===r.display||"flex"===r.display||"table"===r.display||"grid"===r.display||l>=o&&"none"===i[Kl]||s&&"none"===i[Kl]&&l+c>o)?"vertical":"horizontal"},ec=function(e){function t(e,i){return function(o,n,s,r){var a=o.options.group.name&&n.options.group.name&&o.options.group.name===n.options.group.name;if(null==e&&(i||a))return!0;if(null==e||!1===e)return!1;if(i&&"clone"===e)return e;if("function"==typeof e)return t(e(o,n,s,r),i)(o,n,s,r);var l=(i?o:n).options.group.name;return!0===e||"string"==typeof e&&e===l||e.join&&e.indexOf(l)>-1}}var i={},o=e.group;o&&"object"==Ta(o)||(o={name:o}),i.name=o.name,i.checkPull=t(o.pull,!0),i.checkPut=t(o.put),i.revertClone=o.revertClone,e.group=i},tc=function(){!Xl&&bl&&Ua(bl,"display","none")},ic=function(){!Xl&&bl&&Ua(bl,"display","")};Gl&&!Na&&document.addEventListener("click",function(e){if(Vl)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),Vl=!1,!1},!0);var oc=function(e){if(gl){e=e.touches?e.touches[0]:e;var t=(n=e.clientX,s=e.clientY,Wl.some(function(e){var t=e[al].options.emptyInsertThreshold;if(t&&!Xa(e)){var i=Za(e),o=n>=i.left-t&&n<=i.right+t,a=s>=i.top-t&&s<=i.bottom+t;return o&&a?r=e:void 0}}),r);if(t){var i={};for(var o in e)e.hasOwnProperty(o)&&(i[o]=e[o]);i.target=i.rootEl=t,i.preventDefault=void 0,i.stopPropagation=void 0,t[al]._onDragOver(i)}}var n,s,r},nc=function(e){gl&&gl.parentNode[al]._isOutsideThisEl(e.target)};function sc(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));this.el=e,this.options=t=Ma({},t),e[al]=this;var i={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Ql(e,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData("Text",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==sc.supportPointer&&"PointerEvent"in window&&(!La||Pa),emptyInsertThreshold:5};for(var o in hl.initializePlugins(this,e,i),i)!(o in t)&&(t[o]=i[o]);for(var n in ec(t),this)"_"===n.charAt(0)&&"function"==typeof this[n]&&(this[n]=this[n].bind(this));this.nativeDraggable=!t.forceFallback&&Jl,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?Fa(e,"pointerdown",this._onTapStart):(Fa(e,"mousedown",this._onTapStart),Fa(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(Fa(e,"dragover",this),Fa(e,"dragenter",this)),Wl.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),Ma(this,ll())}function rc(e,t,i,o,n,s,r,a){var l,c,d=e[al],h=d.options.onMove;return!window.CustomEvent||Da||Oa?(l=document.createEvent("Event")).initEvent("move",!0,!0):l=new CustomEvent("move",{bubbles:!0,cancelable:!0}),l.to=t,l.from=e,l.dragged=i,l.draggedRect=o,l.related=n||t,l.relatedRect=s||Za(t),l.willInsertAfter=a,l.originalEvent=r,e.dispatchEvent(l),h&&(c=h.call(d,l,r)),c}function ac(e){e.draggable=!1}function lc(){jl=!1}function cc(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,i=t.length,o=0;i--;)o+=t.charCodeAt(i);return o.toString(36)}function dc(e){return setTimeout(e,0)}function hc(e){return clearTimeout(e)}sc.prototype={constructor:sc,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(Rl=null)},_getDirection:function(e,t){return"function"==typeof this.options.direction?this.options.direction.call(this,e,t,gl):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,i=this.el,o=this.options,n=o.preventOnFilter,s=e.type,r=e.touches&&e.touches[0]||e.pointerType&&"touch"===e.pointerType&&e,a=(r||e).target,l=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||a,c=o.filter;if(function(e){Yl.length=0;var t=e.getElementsByTagName("input"),i=t.length;for(;i--;){var o=t[i];o.checked&&Yl.push(o)}}(i),!gl&&!(/mousedown|pointerdown/.test(s)&&0!==e.button||o.disabled)&&!l.isContentEditable&&(this.nativeDraggable||!La||!a||"SELECT"!==a.tagName.toUpperCase())&&!((a=Va(a,o.draggable,i,!1))&&a.animated||vl===a)){if(kl=Qa(a),Tl=Qa(a,o.draggable),"function"==typeof c){if(c.call(this,e,a,this))return ml({sortable:t,rootEl:l,name:"filter",targetEl:a,toEl:i,fromEl:i}),pl("filter",t,{evt:e}),void(n&&e.preventDefault())}else if(c&&(c=c.split(",").some(function(o){if(o=Va(l,o.trim(),i,!1))return ml({sortable:t,rootEl:o,name:"filter",targetEl:a,fromEl:i,toEl:i}),pl("filter",t,{evt:e}),!0})))return void(n&&e.preventDefault());o.handle&&!Va(l,o.handle,i,!1)||this._prepareDragStart(e,r,a)}}},_prepareDragStart:function(e,t,i){var o,n=this,s=n.el,r=n.options,a=s.ownerDocument;if(i&&!gl&&i.parentNode===s){var l=Za(i);if(yl=s,fl=(gl=i).parentNode,wl=gl.nextSibling,vl=i,Ml=r.group,sc.dragged=gl,Il={target:gl,clientX:(t||e).clientX,clientY:(t||e).clientY},Ll=Il.clientX-l.left,Pl=Il.clientY-l.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,gl.style["will-change"]="all",o=function(){pl("delayEnded",n,{evt:e}),sc.eventCanceled?n._onDrop():(n._disableDelayedDragEvents(),!Ba&&n.nativeDraggable&&(gl.draggable=!0),n._triggerDragStart(e,t),ml({sortable:n,name:"choose",originalEvent:e}),$a(gl,r.chosenClass,!0))},r.ignore.split(",").forEach(function(e){Ya(gl,e.trim(),ac)}),Fa(a,"dragover",oc),Fa(a,"mousemove",oc),Fa(a,"touchmove",oc),r.supportPointer?(Fa(a,"pointerup",n._onDrop),!this.nativeDraggable&&Fa(a,"pointercancel",n._onDrop)):(Fa(a,"mouseup",n._onDrop),Fa(a,"touchend",n._onDrop),Fa(a,"touchcancel",n._onDrop)),Ba&&this.nativeDraggable&&(this.options.touchStartThreshold=4,gl.draggable=!0),pl("delayStart",this,{evt:e}),!r.delay||r.delayOnTouchOnly&&!t||this.nativeDraggable&&(Oa||Da))o();else{if(sc.eventCanceled)return void this._onDrop();r.supportPointer?(Fa(a,"pointerup",n._disableDelayedDrag),Fa(a,"pointercancel",n._disableDelayedDrag)):(Fa(a,"mouseup",n._disableDelayedDrag),Fa(a,"touchend",n._disableDelayedDrag),Fa(a,"touchcancel",n._disableDelayedDrag)),Fa(a,"mousemove",n._delayedDragTouchMoveHandler),Fa(a,"touchmove",n._delayedDragTouchMoveHandler),r.supportPointer&&Fa(a,"pointermove",n._delayedDragTouchMoveHandler),n._dragStartTimer=setTimeout(o,r.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){gl&&ac(gl),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;qa(e,"mouseup",this._disableDelayedDrag),qa(e,"touchend",this._disableDelayedDrag),qa(e,"touchcancel",this._disableDelayedDrag),qa(e,"pointerup",this._disableDelayedDrag),qa(e,"pointercancel",this._disableDelayedDrag),qa(e,"mousemove",this._delayedDragTouchMoveHandler),qa(e,"touchmove",this._delayedDragTouchMoveHandler),qa(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?Fa(document,"pointermove",this._onTouchMove):Fa(document,t?"touchmove":"mousemove",this._onTouchMove):(Fa(gl,"dragend",this),Fa(yl,"dragstart",this._onDragStart));try{document.selection?dc(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch(e){}},_dragStarted:function(e,t){if(zl=!1,yl&&gl){pl("dragStarted",this,{evt:t}),this.nativeDraggable&&Fa(document,"dragover",nc);var i=this.options;!e&&$a(gl,i.dragClass,!1),$a(gl,i.ghostClass,!0),sc.active=this,e&&this._appendGhost(),ml({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(Dl){this._lastX=Dl.clientX,this._lastY=Dl.clientY,tc();for(var e=document.elementFromPoint(Dl.clientX,Dl.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(Dl.clientX,Dl.clientY))!==t;)t=e;if(gl.parentNode[al]._isOutsideThisEl(e),t)do{if(t[al]){if(t[al]._onDragOver({clientX:Dl.clientX,clientY:Dl.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break}e=t}while(t=za(t));ic()}},_onTouchMove:function(e){if(Il){var t=this.options,i=t.fallbackTolerance,o=t.fallbackOffset,n=e.touches?e.touches[0]:e,s=bl&&ja(bl,!0),r=bl&&s&&s.a,a=bl&&s&&s.d,l=Zl&&_l&&el(_l),c=(n.clientX-Il.clientX+o.x)/(r||1)+(l?l[0]-Ul[0]:0)/(r||1),d=(n.clientY-Il.clientY+o.y)/(a||1)+(l?l[1]-Ul[1]:0)/(a||1);if(!sc.active&&!zl){if(i&&Math.max(Math.abs(n.clientX-this._lastX),Math.abs(n.clientY-this._lastY))n.right+s||e.clientY>o.bottom&&e.clientX>o.left:e.clientY>n.bottom+s||e.clientX>o.right&&e.clientY>o.top}(e,n,this)&&!g.animated){if(g===gl)return O(!1);if(g&&s===e.target&&(r=g),r&&(i=Za(r)),!1!==rc(yl,s,gl,t,r,i,e,!!r))return D(),g&&g.nextSibling?s.insertBefore(gl,g.nextSibling):s.appendChild(gl),fl=s,B(),O(!0)}else if(g&&function(e,t,i){var o=Za(Ja(i.el,0,i.options,!0)),n=rl(i.el,i.options,bl),s=10;return t?e.clientXd+c*s/2:lh-ql)return-Fl}else if(l>d+c*(1-n)/2&&lh-c*s/2))return l>d+c/2?1:-1;return 0}(e,r,i,n,C?1:a.swapThreshold,null==a.invertedSwapThreshold?a.swapThreshold:a.invertedSwapThreshold,$l,Rl===r),0!==b){var T=Qa(gl);do{T-=b,w=fl.children[T]}while(w&&("none"===Ua(w,"display")||w===bl))}if(0===b||w===r)return O(!1);Rl=r,Fl=b;var E=r.nextElementSibling,M=!1,A=rc(yl,s,gl,t,r,i,e,M=1===b);if(!1!==A)return 1!==A&&-1!==A||(M=1===A),jl=!0,setTimeout(lc,30),D(),M&&!E?s.appendChild(gl):r.parentNode.insertBefore(gl,M?E:r),k&&nl(k,0,S-k.scrollTop),fl=gl.parentNode,void 0===y||$l||(ql=Math.abs(y-Za(r)[x])),B(),O(!0)}if(s.contains(gl))return O(!1)}return!1}function I(a,l){pl(a,p,Sa({evt:e,isOwner:d,axis:n?"vertical":"horizontal",revert:o,dragRect:t,targetRect:i,canSort:h,fromSortable:u,target:r,completed:O,onMove:function(i,o){return rc(yl,s,gl,t,i,Za(i),e,o)},changed:B},l))}function D(){I("dragOverAnimationCapture"),p.captureAnimationState(),p!==u&&u.captureAnimationState()}function O(t){return I("dragOverCompleted",{insertion:t}),t&&(d?c._hideClone():c._showClone(p),p!==u&&($a(gl,Al?Al.options.ghostClass:c.options.ghostClass,!1),$a(gl,a.ghostClass,!0)),Al!==p&&p!==sc.active?Al=p:p===sc.active&&Al&&(Al=null),u===p&&(p._ignoreWhileAnimating=r),p.animateAll(function(){I("dragOverAnimationComplete"),p._ignoreWhileAnimating=null}),p!==u&&(u.animateAll(),u._ignoreWhileAnimating=null)),(r===gl&&!gl.animated||r===s&&!r.animated)&&(Rl=null),a.dragoverBubble||e.rootEl||r===document||(gl.parentNode[al]._isOutsideThisEl(e.target),!t&&oc(e)),!a.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),m=!0}function B(){Sl=Qa(gl),El=Qa(gl,a.draggable),ml({sortable:p,name:"change",toEl:s,newIndex:Sl,newDraggableIndex:El,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){qa(document,"mousemove",this._onTouchMove),qa(document,"touchmove",this._onTouchMove),qa(document,"pointermove",this._onTouchMove),qa(document,"dragover",oc),qa(document,"mousemove",oc),qa(document,"touchmove",oc)},_offUpEvents:function(){var e=this.el.ownerDocument;qa(e,"mouseup",this._onDrop),qa(e,"touchend",this._onDrop),qa(e,"pointerup",this._onDrop),qa(e,"pointercancel",this._onDrop),qa(e,"touchcancel",this._onDrop),qa(document,"selectstart",this)},_onDrop:function(e){var t=this.el,i=this.options;Sl=Qa(gl),El=Qa(gl,i.draggable),pl("drop",this,{evt:e}),fl=gl&&gl.parentNode,Sl=Qa(gl),El=Qa(gl,i.draggable),sc.eventCanceled||(zl=!1,$l=!1,Hl=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),hc(this.cloneId),hc(this._dragStartId),this.nativeDraggable&&(qa(document,"drop",this),qa(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),La&&Ua(document.body,"user-select",""),Ua(gl,"transform",""),e&&(Nl&&(e.cancelable&&e.preventDefault(),!i.dropBubble&&e.stopPropagation()),bl&&bl.parentNode&&bl.parentNode.removeChild(bl),(yl===fl||Al&&"clone"!==Al.lastPutMode)&&Cl&&Cl.parentNode&&Cl.parentNode.removeChild(Cl),gl&&(this.nativeDraggable&&qa(gl,"dragend",this),ac(gl),gl.style["will-change"]="",Nl&&!zl&&$a(gl,Al?Al.options.ghostClass:this.options.ghostClass,!1),$a(gl,this.options.chosenClass,!1),ml({sortable:this,name:"unchoose",toEl:fl,newIndex:null,newDraggableIndex:null,originalEvent:e}),yl!==fl?(Sl>=0&&(ml({rootEl:fl,name:"add",toEl:fl,fromEl:yl,originalEvent:e}),ml({sortable:this,name:"remove",toEl:fl,originalEvent:e}),ml({rootEl:fl,name:"sort",toEl:fl,fromEl:yl,originalEvent:e}),ml({sortable:this,name:"sort",toEl:fl,originalEvent:e})),Al&&Al.save()):Sl!==kl&&Sl>=0&&(ml({sortable:this,name:"update",toEl:fl,originalEvent:e}),ml({sortable:this,name:"sort",toEl:fl,originalEvent:e})),sc.active&&(null!=Sl&&-1!==Sl||(Sl=kl,El=Tl),ml({sortable:this,name:"end",toEl:fl,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){pl("nulling",this),yl=gl=fl=bl=wl=Cl=vl=xl=Il=Dl=Nl=Sl=El=kl=Tl=Rl=Fl=Al=Ml=sc.dragged=sc.ghost=sc.clone=sc.active=null,Yl.forEach(function(e){e.checked=!0}),Yl.length=Ol=Bl=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":gl&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect="move");e.cancelable&&e.preventDefault()}(e));break;case"selectstart":e.preventDefault()}},toArray:function(){for(var e,t=[],i=this.el.children,o=0,n=i.length,s=this.options;o{t.createEl("p",{text:e})});const i=t.createDiv("confirm-modal-buttons");new e.ButtonComponent(i).setButtonText(this.options.cancelText).onClick(()=>this.close()),new e.ButtonComponent(i).setButtonText(this.options.confirmText).setCta().onClick(async()=>{await this.options.onConfirm(),this.close()})}onClose(){const{contentEl:e}=this;e.empty()}static show(e,t){new Ec(e,t).open()}}class Mc extends e.Modal{constructor(e,t){super(e),this.changelogContent="",this.changelogLoaded=!1,this.plugin=t}async loadChangelog(){try{const t=await e.request({url:"https://raw.githubusercontent.com/PKM-er/obsidian-editing-toolbar/master/CHANGELOG.md",method:"GET"});if(!t)throw new Error("无法获取 Changelog 内容");{const e=t.split("\n");let i="",o=[],n=!1;for(const t of e)if(t.startsWith("## ")&&!i)i=t.substring(3).trim(),n=!0,o.push(t);else{if(t.startsWith("## ")&&n)break;n&&o.push(t)}this.changelogContent=o.join("\n")}}catch(e){console.error("加载 Changelog 时出错:",e),this.changelogContent="### 无法加载更新说明\n\n请[点击此处查看最新更新说明](https://github.com/PKM-er/obsidian-editing-toolbar/blob/master/CHANGELOG.md)"}this.changelogLoaded=!0,this.updateChangelogDisplay()}updateChangelogDisplay(){this.changelogContainer&&this.changelogContentEl&&this.changelogLoaded&&(this.changelogContentEl.empty(),e.MarkdownRenderer.renderMarkdown(this.changelogContent,this.changelogContentEl,"",this.plugin))}async fixCommandIds(){try{const t={"editor:toggle-numbered-list":"editing-toolbar:toggle-numbered-list","editor:toggle-bullet-list":"editing-toolbar:toggle-bullet-list","editor:toggle-highlight":"editing-toolbar:toggle-highlight","toggle-highlight":"editing-toolbar:toggle-highlight","editing-toolbar:editor:toggle-bold":"editing-toolbar:toggle-bold","editing-toolbar:editor:toggle-italics":"editing-toolbar:toggle-italics","editing-toolbar:editor:toggle-strikethrough":"editing-toolbar:toggle-strikethrough","editing-toolbar:editor:toggle-inline-math":"editing-toolbar:toggle-inline-math","editing-toolbar:editor:insert-callout":"editing-toolbar:insert-callout","editing-toolbar:editor:insert-link":"editing-toolbar:insert-link","cMenuToolbar-Divider-Line":"editingToolbar-Divider-Line"};let i=!1;const o=this.plugin.settings,n=e=>{e&&Array.isArray(e)&&e.forEach(e=>{e.id&&t[e.id]&&(e.id=t[e.id],i=!0),"editing-toolbar:format-eraser"===e.id&&(e.icon="eraser",i=!0),"editing-toolbar:change-font-color"===e.id&&(e.icon='',i=!0),e.SubmenuCommands&&n(e.SubmenuCommands)})},s=e=>{if(!e||!Array.isArray(e))return!1;for(const t of e){if("editing-toolbar:toggle-format-brush"===t.id)return!0;if(t.SubmenuCommands){if(s(t.SubmenuCommands))return!0}}return!1},r=e=>{if(!e||!Array.isArray(e))return!1;if(!s(e)&&e.length>=2){const t={id:"editing-toolbar:toggle-format-brush",name:"Format Brush",icon:"paintbrush"};return e.splice(2,0,t),!0}return!1},a=e=>{if(!e||!Array.isArray(e))return!1;for(const t of e)if("SubmenuCommands-text-tools"===t.id)return!0;return!1},l=e=>{if(!e||!Array.isArray(e))return!1;if(!a(e)){const t=aa.menuCommands.find(e=>"SubmenuCommands-text-tools"===e.id);if(t){const i=11;return e.length>=i?e.splice(i,0,t):e.push(t),!0}}return!1};o.menuCommands&&(n(o.menuCommands),r(o.menuCommands)&&(i=!0),l(o.menuCommands)&&(i=!0)),o.enableMultipleConfig&&(o.followingCommands&&(n(o.followingCommands),r(o.followingCommands)&&(i=!0)),o.topCommands&&(n(o.topCommands),r(o.topCommands)&&(i=!0),l(o.topCommands)&&(i=!0)),o.fixedCommands&&(n(o.fixedCommands),r(o.fixedCommands)&&(i=!0)),o.mobileCommands&&(n(o.mobileCommands),r(o.mobileCommands)&&(i=!0))),i?(await this.plugin.saveSettings(),new e.Notice(Xr("Command IDs have been successfully repaired!")),dispatchEvent(new Event("editingToolbar-NewCommand"))):new e.Notice(Xr("No command IDs need to be repaired"))}catch(t){console.error("修复命令ID时出错:",t),new e.Notice(Xr("Error repairing command IDs, please check the console for details"))}}async reloadPlugin(e){const{plugins:t}=this.app;try{await t.disablePlugin(e),await t.enablePlugin(e)}catch(e){console.error(e)}}async restoreDefaultSettings(){try{const t=this.plugin.settings.lastVersion,i=this.plugin.settings.customCommands;this.plugin.settings={...aa,lastVersion:t,customCommands:i},await this.plugin.saveSettings(),new e.Notice(Xr("Successfully restored default settings! (Custom commands preserved)")),this.reloadPlugin(this.plugin.manifest.id),this.close()}catch(t){console.error("恢复默认设置时出错:",t),new e.Notice(Xr("Error restoring default settings, please check the console for details"))}}onOpen(){const{contentEl:t}=this;t.createEl("h2",{text:this.plugin.manifest.version+"⚡Tips"}),t.createEl("p",{text:Xr("Notice:")});const i=t.createEl("ul");i.createEl("li",{text:Xr("⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible")}),i.createEl("li",{text:Xr("⚠️If you want to restore the default settings, please click [Restore default settings]")}),this.changelogContainer=t.createDiv({cls:"changelog-container"}),this.changelogContainer.createEl("h3",{text:Xr("Latest Changes")}),this.changelogContentEl=this.changelogContainer.createDiv({cls:"changelog-content"}),this.changelogContentEl.setText(Xr("Loading changelog...")),setTimeout(()=>{this.loadChangelog()},100),new e.Setting(t).setName(Xr("🔧Data repair")).setDesc(Xr("This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly")).addButton(e=>e.setButtonText(Xr("Repair command ID")).onClick(async()=>{await this.fixCommandIds()})),new e.Setting(t).setName(Xr("🔄Restore default settings")).setDesc(Xr("This will reset all your custom configurations, but custom commands will be preserved")).addButton(e=>e.setButtonText(Xr("Restore default")).onClick(async()=>{Ec.show(this.app,{message:Xr("Are you sure you want to restore all settings to default? But custom commands will be preserved."),onConfirm:async()=>{await this.restoreDefaultSettings()}})})),new e.Setting(t).setName(Xr("📋View full changelog")).setDesc(Xr("Open the complete changelog in your browser")).addButton(e=>e.setButtonText(Xr("Open changelog")).onClick(()=>{window.open("https://github.com/PKM-er/obsidian-editing-toolbar/blob/master/CHANGELOG.md","_blank")})),new e.Setting(t).addButton(e=>e.setButtonText(Xr("Close")).onClick(()=>{this.close()})),t.createEl("style",{text:"\n .changelog-container {\n margin-top: 20px;\n margin-bottom: 20px;\n padding: 10px;\n border: 1px solid var(--background-modifier-border);\n border-radius: 5px;\n max-height: 200px;\n overflow-y: auto;\n }\n .changelog-content {\n padding: 0 10px;\n }\n .changelog-content a {\n text-decoration: underline;\n }\n "})}onClose(){const{contentEl:e}=this;e.empty()}}function Ac(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e} + */(a.cMenuFontColor,a.cMenuBackgroundColor)}}()}function we(e,t,o){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var o=e[Symbol.toPrimitive];if(void 0!==o){var i=o.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function ve(){return ve=Object.assign?Object.assign.bind():function(e){for(var t=1;t"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(e){return!1}return!1}}function Ne(e){return e.host&&e!==document&&e.host.nodeType&&e.host!==e?e.host:e.parentNode}function Re(e,t,o,i){if(e){o=o||document;do{if(null!=t&&(">"===t[0]?e.parentNode===o&&Le(e,t):Le(e,t))||i&&e===o)return e;if(e===o)break}while(e=Ne(e))}return null}var Be,_e=/\s+/g;function $e(e,t,o){if(e&&t)if(e.classList)e.classList[o?"add":"remove"](t);else{var i=(" "+e.className+" ").replace(_e," ").replace(" "+t+" "," ");e.className=(i+(o?" "+t:"")).replace(_e," ")}}function ze(e,t,o){var i=e&&e.style;if(i){if(void 0===o)return document.defaultView&&document.defaultView.getComputedStyle?o=document.defaultView.getComputedStyle(e,""):e.currentStyle&&(o=e.currentStyle),void 0===t?o:o[t];t in i||-1!==t.indexOf("webkit")||(t="-webkit-"+t),i[t]=o+("string"==typeof o?"":"px")}}function Ue(e,t){var o="";if("string"==typeof e)o=e;else do{var i=ze(e,"transform");i&&"none"!==i&&(o=i+" "+o)}while(!t&&(e=e.parentNode));var n=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return n&&new n(o)}function Ve(e,t,o){if(e){var i=e.getElementsByTagName(t),n=0,a=i.length;if(o)for(;n=a:n<=a))return i;if(i===He())break;i=Je(i,!1)}return!1}function Ke(e,t,o,i){for(var n=0,a=0,s=e.children;a2&&void 0!==arguments[2]?arguments[2]:{},i=o.evt,n=function(e,t){if(null==e)return{};var o,i,n=function(e,t){if(null==e)return{};var o={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(-1!==t.indexOf(i))continue;o[i]=e[i]}return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=i&&"none"===o[jt]||a&&"none"===o[jt]&&l+c>i)?"vertical":"horizontal"},Zt=function(e){function t(e,o){return function(i,n,a,s){var r=i.options.group.name&&n.options.group.name&&i.options.group.name===n.options.group.name;if(null==e&&(o||r))return!0;if(null==e||!1===e)return!1;if(o&&"clone"===e)return e;if("function"==typeof e)return t(e(i,n,a,s),o)(i,n,a,s);var l=(o?i:n).options.group.name;return!0===e||"string"==typeof e&&e===l||e.join&&e.indexOf(l)>-1}}var o={},i=e.group;i&&"object"==Te(i)||(i={name:i}),o.name=i.name,o.checkPull=t(i.pull,!0),o.checkPut=t(i.put),o.revertClone=i.revertClone,e.group=o},Jt=function(){!Yt&&pt&&ze(pt,"display","none")},Xt=function(){!Yt&&pt&&ze(pt,"display","")};Ht&&!De&&document.addEventListener("click",function(e){if(Rt)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),Rt=!1,!1},!0);var Qt=function(e){if(mt){e=e.touches?e.touches[0]:e;var t=(n=e.clientX,a=e.clientY,Bt.some(function(e){var t=e[it].options.emptyInsertThreshold;if(t&&!Ye(e)){var o=We(e),i=n>=o.left-t&&n<=o.right+t,r=a>=o.top-t&&a<=o.bottom+t;return i&&r?s=e:void 0}}),s);if(t){var o={};for(var i in e)e.hasOwnProperty(i)&&(o[i]=e[i]);o.target=o.rootEl=t,o.preventDefault=void 0,o.stopPropagation=void 0,t[it]._onDragOver(o)}}var n,a,s},eo=function(e){mt&&mt.parentNode[it]._isOutsideThisEl(e.target)};function to(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));this.el=e,this.options=t=ve({},t),e[it]=this;var o={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Gt(e,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData("Text",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==to.supportPointer&&"PointerEvent"in window&&(!Me||Pe),emptyInsertThreshold:5};for(var i in rt.initializePlugins(this,e,o),o)!(i in t)&&(t[i]=o[i]);for(var n in Zt(t),this)"_"===n.charAt(0)&&"function"==typeof this[n]&&(this[n]=this[n].bind(this));this.nativeDraggable=!t.forceFallback&&Kt,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?Fe(e,"pointerdown",this._onTapStart):(Fe(e,"mousedown",this._onTapStart),Fe(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(Fe(e,"dragover",this),Fe(e,"dragenter",this)),Bt.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),ve(this,nt())}function oo(e,t,o,i,n,a,s,r){var l,c,d=e[it],m=d.options.onMove;return!window.CustomEvent||Ee||Ie?(l=document.createEvent("Event")).initEvent("move",!0,!0):l=new CustomEvent("move",{bubbles:!0,cancelable:!0}),l.to=t,l.from=e,l.dragged=o,l.draggedRect=i,l.related=n||t,l.relatedRect=a||We(t),l.willInsertAfter=r,l.originalEvent=s,e.dispatchEvent(l),m&&(c=m.call(d,l,s)),c}function io(e){e.draggable=!1}function no(){Ut=!1}function ao(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,o=t.length,i=0;o--;)i+=t.charCodeAt(o);return i.toString(36)}function so(e){return setTimeout(e,0)}function ro(e){return clearTimeout(e)}to.prototype={constructor:to,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(Ot=null)},_getDirection:function(e,t){return"function"==typeof this.options.direction?this.options.direction.call(this,e,t,mt):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,o=this.el,i=this.options,n=i.preventOnFilter,a=e.type,s=e.touches&&e.touches[0]||e.pointerType&&"touch"===e.pointerType&&e,r=(s||e).target,l=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||r,c=i.filter;if(function(e){Vt.length=0;var t=e.getElementsByTagName("input"),o=t.length;for(;o--;){var i=t[o];i.checked&&Vt.push(i)}}(o),!mt&&!(/mousedown|pointerdown/.test(a)&&0!==e.button||i.disabled)&&!l.isContentEditable&&(this.nativeDraggable||!Me||!r||"SELECT"!==r.tagName.toUpperCase())&&!((r=Re(r,i.draggable,o,!1))&&r.animated||ft===r)){if(Ct=Ge(r),vt=Ge(r,i.draggable),"function"==typeof c){if(c.call(this,e,r,this))return dt({sortable:t,rootEl:l,name:"filter",targetEl:r,toEl:o,fromEl:o}),ct("filter",t,{evt:e}),void(n&&e.preventDefault())}else if(c&&(c=c.split(",").some(function(i){if(i=Re(l,i.trim(),o,!1))return dt({sortable:t,rootEl:i,name:"filter",targetEl:r,fromEl:o,toEl:o}),ct("filter",t,{evt:e}),!0})))return void(n&&e.preventDefault());i.handle&&!Re(l,i.handle,o,!1)||this._prepareDragStart(e,s,r)}}},_prepareDragStart:function(e,t,o){var i,n=this,a=n.el,s=n.options,r=a.ownerDocument;if(o&&!mt&&o.parentNode===a){var l=We(o);if(ht=a,ut=(mt=o).parentNode,gt=mt.nextSibling,ft=o,kt=s.group,to.dragged=mt,St={target:mt,clientX:(t||e).clientX,clientY:(t||e).clientY},Mt=St.clientX-l.left,Pt=St.clientY-l.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,mt.style["will-change"]="all",i=function(){ct("delayEnded",n,{evt:e}),to.eventCanceled?n._onDrop():(n._disableDelayedDragEvents(),!Ae&&n.nativeDraggable&&(mt.draggable=!0),n._triggerDragStart(e,t),dt({sortable:n,name:"choose",originalEvent:e}),$e(mt,s.chosenClass,!0))},s.ignore.split(",").forEach(function(e){Ve(mt,e.trim(),io)}),Fe(r,"dragover",Qt),Fe(r,"mousemove",Qt),Fe(r,"touchmove",Qt),s.supportPointer?(Fe(r,"pointerup",n._onDrop),!this.nativeDraggable&&Fe(r,"pointercancel",n._onDrop)):(Fe(r,"mouseup",n._onDrop),Fe(r,"touchend",n._onDrop),Fe(r,"touchcancel",n._onDrop)),Ae&&this.nativeDraggable&&(this.options.touchStartThreshold=4,mt.draggable=!0),ct("delayStart",this,{evt:e}),!s.delay||s.delayOnTouchOnly&&!t||this.nativeDraggable&&(Ie||Ee))i();else{if(to.eventCanceled)return void this._onDrop();s.supportPointer?(Fe(r,"pointerup",n._disableDelayedDrag),Fe(r,"pointercancel",n._disableDelayedDrag)):(Fe(r,"mouseup",n._disableDelayedDrag),Fe(r,"touchend",n._disableDelayedDrag),Fe(r,"touchcancel",n._disableDelayedDrag)),Fe(r,"mousemove",n._delayedDragTouchMoveHandler),Fe(r,"touchmove",n._delayedDragTouchMoveHandler),s.supportPointer&&Fe(r,"pointermove",n._delayedDragTouchMoveHandler),n._dragStartTimer=setTimeout(i,s.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){mt&&io(mt),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;qe(e,"mouseup",this._disableDelayedDrag),qe(e,"touchend",this._disableDelayedDrag),qe(e,"touchcancel",this._disableDelayedDrag),qe(e,"pointerup",this._disableDelayedDrag),qe(e,"pointercancel",this._disableDelayedDrag),qe(e,"mousemove",this._delayedDragTouchMoveHandler),qe(e,"touchmove",this._delayedDragTouchMoveHandler),qe(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?Fe(document,"pointermove",this._onTouchMove):Fe(document,t?"touchmove":"mousemove",this._onTouchMove):(Fe(mt,"dragend",this),Fe(ht,"dragstart",this._onDragStart));try{document.selection?so(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch(e){}},_dragStarted:function(e,t){if(Nt=!1,ht&&mt){ct("dragStarted",this,{evt:t}),this.nativeDraggable&&Fe(document,"dragover",eo);var o=this.options;!e&&$e(mt,o.dragClass,!1),$e(mt,o.ghostClass,!0),to.active=this,e&&this._appendGhost(),dt({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(Et){this._lastX=Et.clientX,this._lastY=Et.clientY,Jt();for(var e=document.elementFromPoint(Et.clientX,Et.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(Et.clientX,Et.clientY))!==t;)t=e;if(mt.parentNode[it]._isOutsideThisEl(e),t)do{if(t[it]){if(t[it]._onDragOver({clientX:Et.clientX,clientY:Et.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break}e=t}while(t=Ne(t));Xt()}},_onTouchMove:function(e){if(St){var t=this.options,o=t.fallbackTolerance,i=t.fallbackOffset,n=e.touches?e.touches[0]:e,a=pt&&Ue(pt,!0),s=pt&&a&&a.a,r=pt&&a&&a.d,l=Wt&&Lt&&Ze(Lt),c=(n.clientX-St.clientX+i.x)/(s||1)+(l?l[0]-zt[0]:0)/(s||1),d=(n.clientY-St.clientY+i.y)/(r||1)+(l?l[1]-zt[1]:0)/(r||1);if(!to.active&&!Nt){if(o&&Math.max(Math.abs(n.clientX-this._lastX),Math.abs(n.clientY-this._lastY))n.right+a||e.clientY>i.bottom&&e.clientX>i.left:e.clientY>n.bottom+a||e.clientX>i.right&&e.clientY>i.top}(e,n,this)&&!g.animated){if(g===mt)return D(!1);if(g&&a===e.target&&(s=g),s&&(o=We(s)),!1!==oo(ht,a,mt,t,s,o,e,!!s))return P(),g&&g.nextSibling?a.insertBefore(mt,g.nextSibling):a.appendChild(mt),ut=a,O(),D(!0)}else if(g&&function(e,t,o){var i=We(Ke(o.el,0,o.options,!0)),n=ot(o.el,o.options,pt),a=10;return t?e.clientXd+c*a/2:lm-qt)return-Ft}else if(l>d+c*(1-n)/2&&lm-c*a/2))return l>d+c/2?1:-1;return 0}(e,s,o,n,v?1:r.swapThreshold,null==r.invertedSwapThreshold?r.swapThreshold:r.invertedSwapThreshold,$t,Ot===s),0!==b){var S=Ge(mt);do{S-=b,C=ut.children[S]}while(C&&("none"===ze(C,"display")||C===pt))}if(0===b||C===s)return D(!1);Ot=s,Ft=b;var E=s.nextElementSibling,I=!1,A=oo(ht,a,mt,t,s,o,e,I=1===b);if(!1!==A)return 1!==A&&-1!==A||(I=1===A),Ut=!0,setTimeout(no,30),P(),I&&!E?a.appendChild(mt):s.parentNode.insertBefore(mt,I?E:s),k&&et(k,0,T-k.scrollTop),ut=mt.parentNode,void 0===y||$t||(qt=Math.abs(y-We(s)[x])),O(),D(!0)}if(a.contains(mt))return D(!1)}return!1}function M(r,l){ct(r,p,ke({evt:e,isOwner:d,axis:n?"vertical":"horizontal",revert:i,dragRect:t,targetRect:o,canSort:m,fromSortable:u,target:s,completed:D,onMove:function(o,i){return oo(ht,a,mt,t,o,We(o),e,i)},changed:O},l))}function P(){M("dragOverAnimationCapture"),p.captureAnimationState(),p!==u&&u.captureAnimationState()}function D(t){return M("dragOverCompleted",{insertion:t}),t&&(d?c._hideClone():c._showClone(p),p!==u&&($e(mt,Tt?Tt.options.ghostClass:c.options.ghostClass,!1),$e(mt,r.ghostClass,!0)),Tt!==p&&p!==to.active?Tt=p:p===to.active&&Tt&&(Tt=null),u===p&&(p._ignoreWhileAnimating=s),p.animateAll(function(){M("dragOverAnimationComplete"),p._ignoreWhileAnimating=null}),p!==u&&(u.animateAll(),u._ignoreWhileAnimating=null)),(s===mt&&!mt.animated||s===a&&!s.animated)&&(Ot=null),r.dragoverBubble||e.rootEl||s===document||(mt.parentNode[it]._isOutsideThisEl(e.target),!t&&Qt(e)),!r.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),h=!0}function O(){wt=Ge(mt),xt=Ge(mt,r.draggable),dt({sortable:p,name:"change",toEl:a,newIndex:wt,newDraggableIndex:xt,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){qe(document,"mousemove",this._onTouchMove),qe(document,"touchmove",this._onTouchMove),qe(document,"pointermove",this._onTouchMove),qe(document,"dragover",Qt),qe(document,"mousemove",Qt),qe(document,"touchmove",Qt)},_offUpEvents:function(){var e=this.el.ownerDocument;qe(e,"mouseup",this._onDrop),qe(e,"touchend",this._onDrop),qe(e,"pointerup",this._onDrop),qe(e,"pointercancel",this._onDrop),qe(e,"touchcancel",this._onDrop),qe(document,"selectstart",this)},_onDrop:function(e){var t=this.el,o=this.options;wt=Ge(mt),xt=Ge(mt,o.draggable),ct("drop",this,{evt:e}),ut=mt&&mt.parentNode,wt=Ge(mt),xt=Ge(mt,o.draggable),to.eventCanceled||(Nt=!1,$t=!1,_t=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),ro(this.cloneId),ro(this._dragStartId),this.nativeDraggable&&(qe(document,"drop",this),qe(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Me&&ze(document.body,"user-select",""),ze(mt,"transform",""),e&&(Dt&&(e.cancelable&&e.preventDefault(),!o.dropBubble&&e.stopPropagation()),pt&&pt.parentNode&&pt.parentNode.removeChild(pt),(ht===ut||Tt&&"clone"!==Tt.lastPutMode)&&bt&&bt.parentNode&&bt.parentNode.removeChild(bt),mt&&(this.nativeDraggable&&qe(mt,"dragend",this),io(mt),mt.style["will-change"]="",Dt&&!Nt&&$e(mt,Tt?Tt.options.ghostClass:this.options.ghostClass,!1),$e(mt,this.options.chosenClass,!1),dt({sortable:this,name:"unchoose",toEl:ut,newIndex:null,newDraggableIndex:null,originalEvent:e}),ht!==ut?(wt>=0&&(dt({rootEl:ut,name:"add",toEl:ut,fromEl:ht,originalEvent:e}),dt({sortable:this,name:"remove",toEl:ut,originalEvent:e}),dt({rootEl:ut,name:"sort",toEl:ut,fromEl:ht,originalEvent:e}),dt({sortable:this,name:"sort",toEl:ut,originalEvent:e})),Tt&&Tt.save()):wt!==Ct&&wt>=0&&(dt({sortable:this,name:"update",toEl:ut,originalEvent:e}),dt({sortable:this,name:"sort",toEl:ut,originalEvent:e})),to.active&&(null!=wt&&-1!==wt||(wt=Ct,xt=vt),dt({sortable:this,name:"end",toEl:ut,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){ct("nulling",this),ht=mt=ut=pt=gt=bt=ft=yt=St=Et=Dt=wt=xt=Ct=vt=Ot=Ft=Tt=kt=to.dragged=to.ghost=to.clone=to.active=null;var e=this.el;Vt.forEach(function(t){e.contains(t)&&(t.checked=!0)}),Vt.length=It=At=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":mt&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect="move");e.cancelable&&e.preventDefault()}(e));break;case"selectstart":e.preventDefault()}},toArray:function(){for(var e,t=[],o=this.el.children,i=0,n=o.length,a=this.options;i{t.createEl("p",{text:e})});const o=t.createDiv("confirm-modal-buttons");new e.ButtonComponent(o).setButtonText(this.options.cancelText).onClick(()=>this.close()),new e.ButtonComponent(o).setButtonText(this.options.confirmText).setCta().onClick(async()=>{await this.options.onConfirm(),this.close()})}onClose(){const{contentEl:e}=this;e.empty()}static show(e,t){new ko(e,t).open()}}class To extends e.Modal{constructor(e,t){super(e),this.changelogContent="",this.changelogLoaded=!1,this.plugin=t}async loadChangelog(){try{const t=await e.request({url:"https://raw.githubusercontent.com/PKM-er/obsidian-editing-toolbar/master/CHANGELOG.md",method:"GET"});if(!t)throw new Error("无法获取 Changelog 内容");{const e=t.split("\n");let o="",i=[],n=!1;for(const t of e)if(t.startsWith("## ")&&!o)o=t.substring(3).trim(),n=!0,i.push(t);else{if(t.startsWith("## ")&&n)break;n&&i.push(t)}this.changelogContent=i.join("\n")}}catch(e){console.error("加载 Changelog 时出错:",e),this.changelogContent="### 无法加载更新说明\n\n请[点击此处查看最新更新说明](https://github.com/PKM-er/obsidian-editing-toolbar/blob/master/CHANGELOG.md)"}this.changelogLoaded=!0,this.updateChangelogDisplay()}updateChangelogDisplay(){this.changelogContainer&&this.changelogContentEl&&this.changelogLoaded&&(this.changelogContentEl.empty(),e.MarkdownRenderer.renderMarkdown(this.changelogContent,this.changelogContentEl,"",this.plugin))}async fixCommandIds(){try{const t={"editor:toggle-numbered-list":"editing-toolbar:toggle-numbered-list","editor:toggle-bullet-list":"editing-toolbar:toggle-bullet-list","editor:toggle-highlight":"editing-toolbar:toggle-highlight","toggle-highlight":"editing-toolbar:toggle-highlight","editing-toolbar:editor:toggle-bold":"editing-toolbar:toggle-bold","editing-toolbar:editor:toggle-italics":"editing-toolbar:toggle-italics","editing-toolbar:editor:toggle-strikethrough":"editing-toolbar:toggle-strikethrough","editing-toolbar:editor:toggle-inline-math":"editing-toolbar:toggle-inline-math","editing-toolbar:editor:insert-callout":"editing-toolbar:insert-callout","editing-toolbar:editor:insert-link":"editing-toolbar:insert-link","cMenuToolbar-Divider-Line":"editingToolbar-Divider-Line"};let o=!1;const i=this.plugin.settings,n=e=>{e&&Array.isArray(e)&&e.forEach(e=>{e.id&&t[e.id]&&(e.id=t[e.id],o=!0),"editing-toolbar:format-eraser"===e.id&&(e.icon="eraser",o=!0),"editing-toolbar:change-font-color"===e.id&&(e.icon='',o=!0),e.SubmenuCommands&&n(e.SubmenuCommands)})},a=e=>{if(!e||!Array.isArray(e))return!1;for(const t of e){if("editing-toolbar:toggle-format-brush"===t.id)return!0;if(t.SubmenuCommands){if(a(t.SubmenuCommands))return!0}}return!1},s=e=>{if(!e||!Array.isArray(e))return!1;if(!a(e)&&e.length>=2){const t={id:"editing-toolbar:toggle-format-brush",name:"Format Brush",icon:"paintbrush"};return e.splice(2,0,t),!0}return!1},r=e=>{if(!e||!Array.isArray(e))return!1;for(const t of e)if("SubmenuCommands-text-tools"===t.id)return!0;return!1},l=e=>{if(!e||!Array.isArray(e))return!1;if(!r(e)){const t=W.menuCommands.find(e=>"SubmenuCommands-text-tools"===e.id);if(t){const o=11;return e.length>=o?e.splice(o,0,t):e.push(t),!0}}return!1};i.menuCommands&&(n(i.menuCommands),s(i.menuCommands)&&(o=!0),l(i.menuCommands)&&(o=!0)),i.enableMultipleConfig&&(i.followingCommands&&(n(i.followingCommands),s(i.followingCommands)&&(o=!0)),i.topCommands&&(n(i.topCommands),s(i.topCommands)&&(o=!0),l(i.topCommands)&&(o=!0)),i.fixedCommands&&(n(i.fixedCommands),s(i.fixedCommands)&&(o=!0)),i.mobileCommands&&(n(i.mobileCommands),s(i.mobileCommands)&&(o=!0))),o?(await this.plugin.saveSettings(),new e.Notice(w("Command IDs have been successfully repaired!")),dispatchEvent(new Event("editingToolbar-NewCommand"))):new e.Notice(w("No command IDs need to be repaired"))}catch(t){console.error("修复命令ID时出错:",t),new e.Notice(w("Error repairing command IDs, please check the console for details"))}}async reloadPlugin(e){const{plugins:t}=this.app;try{await t.disablePlugin(e),await t.enablePlugin(e)}catch(e){console.error(e)}}async restoreDefaultSettings(){try{const t=this.plugin.settings.lastVersion,o=this.plugin.settings.customCommands;this.plugin.settings={...W,lastVersion:t,customCommands:o},await this.plugin.saveSettings(),new e.Notice(w("Successfully restored default settings! (Custom commands preserved)")),this.reloadPlugin(this.plugin.manifest.id),this.close()}catch(t){console.error("恢复默认设置时出错:",t),new e.Notice(w("Error restoring default settings, please check the console for details"))}}onOpen(){const{contentEl:t}=this;t.createEl("h2",{text:`${this.plugin.manifest.name} v${this.plugin.manifest.version} · ${w("Tips")}`}),t.createEl("p",{text:w("Notice:")});const o=t.createEl("ul");o.createEl("li",{text:w("⚠️This update is not compatible with 2.x version command ids, please click [Repair command] to be compatible")}),o.createEl("li",{text:w("⚠️If you want to restore the default settings, please click [Restore default settings]")}),this.changelogContainer=t.createDiv({cls:"changelog-container"}),this.changelogContainer.createEl("h3",{text:w("Latest Changes")}),this.changelogContentEl=this.changelogContainer.createDiv({cls:"changelog-content"}),this.changelogContentEl.setText(w("Loading changelog...")),setTimeout(()=>{this.loadChangelog()},100),new e.Setting(t).setName(w("🔧Data repair")).setDesc(w("This update changed the ID of some commands, please click this button to repair the commands to ensure the toolbar works properly")).addButton(e=>e.setButtonText(w("Repair command ID")).onClick(async()=>{await this.fixCommandIds()})),new e.Setting(t).setName(w("🔄Restore default settings")).setDesc(w("This will reset all your custom configurations, but custom commands will be preserved")).addButton(e=>e.setButtonText(w("Restore default")).onClick(async()=>{ko.show(this.app,{message:w("Are you sure you want to restore all settings to default? But custom commands will be preserved."),onConfirm:async()=>{await this.restoreDefaultSettings()}})})),new e.Setting(t).setName(w("📋View full changelog")).setDesc(w("Open the complete changelog in your browser")).addButton(e=>e.setButtonText(w("Open changelog")).onClick(()=>{window.open("https://github.com/PKM-er/obsidian-editing-toolbar/blob/master/CHANGELOG.md","_blank")})),new e.Setting(t).addButton(e=>e.setButtonText(w("Close")).onClick(()=>{this.close()})),t.createEl("style",{text:"\n .changelog-container {\n margin-top: 20px;\n margin-bottom: 20px;\n padding: 10px;\n border: 1px solid var(--background-modifier-border);\n border-radius: 5px;\n max-height: 200px;\n overflow-y: auto;\n }\n .changelog-content {\n padding: 0 10px;\n }\n .changelog-content a {\n text-decoration: underline;\n }\n "})}onClose(){const{contentEl:e}=this;e.empty()}}function So(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e} /*! Pickr 1.8.4 MIT | https://github.com/Simonwep/pickr */ -var Ic=function(e){var t={exports:{}};return e(t,t.exports),t.exports}(function(e,t){self,e.exports=(()=>{var e={d:(t,i)=>{for(var o in i)e.o(i,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:i[o]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.d(t,{default:()=>O});var i={};function o(e,t,i,o){let n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};t instanceof HTMLCollection||t instanceof NodeList?t=Array.from(t):Array.isArray(t)||(t=[t]),Array.isArray(i)||(i=[i]);for(const s of t)for(const t of i)s[e](t,o,{capture:!1,...n});return Array.prototype.slice.call(arguments,1)}e.r(i),e.d(i,{adjustableInputNumbers:()=>d,createElementFromString:()=>r,createFromTemplate:()=>a,eventPath:()=>l,off:()=>s,on:()=>n,resolveElement:()=>c});const n=o.bind(null,"addEventListener"),s=o.bind(null,"removeEventListener");function r(e){const t=document.createElement("div");return t.innerHTML=e.trim(),t.firstElementChild}function a(e){const t=(e,t)=>{const i=e.getAttribute(t);return e.removeAttribute(t),i},i=function(e){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t(e,":obj"),s=t(e,":ref"),r=n?o[n]={}:o;s&&(o[s]=e);for(const o of Array.from(e.children)){const e=t(o,":arr"),n=i(o,e?{}:r);e&&(r[e]||(r[e]=[])).push(Object.keys(n).length?n:o)}return o};return i(r(e))}function l(e){let t=e.path||e.composedPath&&e.composedPath();if(t)return t;let i=e.target.parentElement;for(t=[e.target,i];i=i.parentElement;)t.push(i);return t.push(document,window),t}function c(e){return e instanceof Element?e:"string"==typeof e?e.split(/>>/g).reduce((e,t,i,o)=>(e=e.querySelector(t),i1&&void 0!==arguments[1]?arguments[1]:e=>e;function i(i){const o=[.001,.01,.1][Number(i.shiftKey||2*i.ctrlKey)]*(i.deltaY<0?1:-1);let n=0,s=e.selectionStart;e.value=e.value.replace(/[\d.]+/g,(e,i)=>i<=s&&i+e.length>=s?(s=i,t(Number(e),o,n)):(n++,e)),e.focus(),e.setSelectionRange(s,s),i.preventDefault(),e.dispatchEvent(new Event("input"))}n(e,"focus",()=>n(window,"wheel",i,{passive:!1})),n(e,"blur",()=>s(window,"wheel",i))}const{min:h,max:u,floor:p,round:m}=Math;function g(e,t,i){t/=100,i/=100;const o=p(e=e/360*6),n=e-o,s=i*(1-t),r=i*(1-n*t),a=i*(1-(1-n)*t),l=o%6;return[255*[i,r,s,s,a,i][l],255*[a,i,i,r,s,s][l],255*[s,s,a,i,i,r][l]]}function f(e,t,i){return g(e,t,i).map(e=>m(e).toString(16).padStart(2,"0"))}function b(e,t,i){const o=g(e,t,i),n=o[0]/255,s=o[1]/255,r=o[2]/255,a=h(1-n,1-s,1-r);return[100*(1===a?0:(1-n-a)/(1-a)),100*(1===a?0:(1-s-a)/(1-a)),100*(1===a?0:(1-r-a)/(1-a)),100*a]}function y(e,t,i){const o=(2-(t/=100))*(i/=100)/2;return 0!==o&&(t=1===o?0:o<.5?t*i/(2*o):t*i/(2-2*o)),[e,100*t,100*o]}function w(e,t,i){const o=h(e/=255,t/=255,i/=255),n=u(e,t,i),s=n-o;let r,a;if(0===s)r=a=0;else{a=s/n;const o=((n-e)/6+s/2)/s,l=((n-t)/6+s/2)/s,c=((n-i)/6+s/2)/s;e===n?r=c-l:t===n?r=1/3+o-c:i===n&&(r=2/3+l-o),r<0?r+=1:r>1&&(r-=1)}return[360*r,100*a,100*n]}function v(e,t,i,o){return t/=100,i/=100,[...w(255*(1-h(1,(e/=100)*(1-(o/=100))+o)),255*(1-h(1,t*(1-o)+o)),255*(1-h(1,i*(1-o)+o)))]}function C(e,t,i){t/=100;const o=2*(t*=(i/=100)<.5?i:1-i)/(i+t)*100,n=100*(i+t);return[e,isNaN(o)?0:o,n]}function x(e){return w(...e.match(/.{2}/g).map(e=>parseInt(e,16)))}function k(e){e=e.match(/^[a-zA-Z]+$/)?function(e){if("black"===e.toLowerCase())return"#000";const t=document.createElement("canvas").getContext("2d");return t.fillStyle=e,"#000"===t.fillStyle?null:t.fillStyle}(e):e;const t={cmyk:/^cmyk[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)/i,rgba:/^((rgba)|rgb)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]*?([\d.]+|$)/i,hsla:/^((hsla)|hsl)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]*?([\d.]+|$)/i,hsva:/^((hsva)|hsv)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]*?([\d.]+|$)/i,hexa:/^#?(([\dA-Fa-f]{3,4})|([\dA-Fa-f]{6})|([\dA-Fa-f]{8}))$/i},i=e=>e.map(e=>/^(|\d+)\.\d+|\d+$/.test(e)?Number(e):void 0);let o;e:for(const n in t){if(!(o=t[n].exec(e)))continue;const s=e=>!!o[2]==("number"==typeof e);switch(n){case"cmyk":{const[,e,t,s,r]=i(o);if(e>100||t>100||s>100||r>100)break e;return{values:v(e,t,s,r),type:n}}case"rgba":{const[,,,e,t,r,a]=i(o);if(e>255||t>255||r>255||a<0||a>1||!s(a))break e;return{values:[...w(e,t,r),a],a:a,type:n}}case"hexa":{let[,e]=o;4!==e.length&&3!==e.length||(e=e.split("").map(e=>e+e).join(""));const t=e.substring(0,6);let i=e.substring(6);return i=i?parseInt(i,16)/255:void 0,{values:[...x(t),i],a:i,type:n}}case"hsla":{const[,,,e,t,r,a]=i(o);if(e>360||t>100||r>100||a<0||a>1||!s(a))break e;return{values:[...C(e,t,r),a],a:a,type:n}}case"hsva":{const[,,,e,t,r,a]=i(o);if(e>360||t>100||r>100||a<0||a>1||!s(a))break e;return{values:[e,t,r,a],a:a,type:n}}}}return{values:null,type:null}}function S(){const e=(e,t)=>function(){let i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;return t(~i?e.map(e=>Number(e.toFixed(i))):e)},t={h:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,s:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,v:arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a:arguments.length>3&&void 0!==arguments[3]?arguments[3]:1,toHSVA(){const i=[t.h,t.s,t.v,t.a];return i.toString=e(i,e=>`hsva(${e[0]}, ${e[1]}%, ${e[2]}%, ${t.a})`),i},toHSLA(){const i=[...y(t.h,t.s,t.v),t.a];return i.toString=e(i,e=>`hsla(${e[0]}, ${e[1]}%, ${e[2]}%, ${t.a})`),i},toRGBA(){const i=[...g(t.h,t.s,t.v),t.a];return i.toString=e(i,e=>`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${t.a})`),i},toCMYK(){const i=b(t.h,t.s,t.v);return i.toString=e(i,e=>`cmyk(${e[0]}%, ${e[1]}%, ${e[2]}%, ${e[3]}%)`),i},toHEXA(){const e=f(t.h,t.s,t.v),i=t.a>=1?"":Number((255*t.a).toFixed(0)).toString(16).toUpperCase().padStart(2,"0");return i&&e.push(i),e.toString=()=>`#${e.join("").toUpperCase()}`,e},clone:()=>S(t.h,t.s,t.v,t.a)};return t}const T=e=>Math.max(Math.min(e,1),0);function E(e){const t={options:Object.assign({lock:null,onchange:()=>0,onstop:()=>0},e),_keyboard(e){const{options:i}=t,{type:o,key:n}=e;if(document.activeElement===i.wrapper){const{lock:i}=t.options,s="ArrowUp"===n,r="ArrowRight"===n,a="ArrowDown"===n,l="ArrowLeft"===n;if("keydown"===o&&(s||r||a||l)){let o=0,n=0;"v"===i?o=s||r?1:-1:"h"===i?o=s||r?-1:1:(n=s?-1:a?1:0,o=l?-1:r?1:0),t.update(T(t.cache.x+.01*o),T(t.cache.y+.01*n)),e.preventDefault()}else n.startsWith("Arrow")&&(t.options.onstop(),e.preventDefault())}},_tapstart(e){n(document,["mouseup","touchend","touchcancel"],t._tapstop),n(document,["mousemove","touchmove"],t._tapmove),e.cancelable&&e.preventDefault(),t._tapmove(e)},_tapmove(e){const{options:i,cache:o}=t,{lock:n,element:s,wrapper:r}=i,a=r.getBoundingClientRect();let l=0,c=0;if(e){const t=e&&e.touches&&e.touches[0];l=e?(t||e).clientX:0,c=e?(t||e).clientY:0,la.left+a.width&&(l=a.left+a.width),ca.top+a.height&&(c=a.top+a.height),l-=a.left,c-=a.top}else o&&(l=o.x*a.width,c=o.y*a.height);"h"!==n&&(s.style.left=`calc(${l/a.width*100}% - ${s.offsetWidth/2}px)`),"v"!==n&&(s.style.top=`calc(${c/a.height*100}% - ${s.offsetHeight/2}px)`),t.cache={x:l/a.width,y:c/a.height};const d=T(l/a.width),h=T(c/a.height);switch(n){case"v":return i.onchange(d);case"h":return i.onchange(h);default:return i.onchange(d,h)}},_tapstop(){t.options.onstop(),s(document,["mouseup","touchend","touchcancel"],t._tapstop),s(document,["mousemove","touchmove"],t._tapmove)},trigger(){t._tapmove()},update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const{left:o,top:n,width:s,height:r}=t.options.wrapper.getBoundingClientRect();"h"===t.options.lock&&(i=e),t._tapmove({clientX:o+s*e,clientY:n+r*i})},destroy(){const{options:e,_tapstart:i,_keyboard:o}=t;s(document,["keydown","keyup"],o),s([e.wrapper,e.element],"mousedown",i),s([e.wrapper,e.element],"touchstart",i,{passive:!1})}},{options:i,_tapstart:o,_keyboard:r}=t;return n([i.wrapper,i.element],"mousedown",o),n([i.wrapper,i.element],"touchstart",o,{passive:!1}),n(document,["keydown","keyup"],r),t}function M(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e=Object.assign({onchange:()=>0,className:"",elements:[]},e);const t=n(e.elements,"click",t=>{e.elements.forEach(i=>i.classList[t.target===i?"add":"remove"](e.className)),e.onchange(t),t.stopPropagation()});return{destroy:()=>s(...t)}}const A={variantFlipOrder:{start:"sme",middle:"mse",end:"ems"},positionFlipOrder:{top:"tbrl",right:"rltb",bottom:"btrl",left:"lrbt"},position:"bottom",margin:8},I=(e,t,i)=>{const{container:o,margin:n,position:s,variantFlipOrder:r,positionFlipOrder:a}={container:document.documentElement.getBoundingClientRect(),...A,...i},{left:l,top:c}=t.style;t.style.left="0",t.style.top="0";const d=e.getBoundingClientRect(),h=t.getBoundingClientRect(),u={t:d.top-h.height-n,b:d.bottom+n,r:d.right+n,l:d.left-h.width-n},p={vs:d.left,vm:d.left+d.width/2+-h.width/2,ve:d.left+d.width-h.width,hs:d.top,hm:d.bottom-d.height/2-h.height/2,he:d.bottom-h.height},[m,g="middle"]=s.split("-"),f=a[m],b=r[g],{top:y,left:w,bottom:v,right:C}=o;for(const e of f){const i="t"===e||"b"===e,o=u[e],[n,s]=i?["top","left"]:["left","top"],[r,a]=i?[h.height,h.width]:[h.width,h.height],[l,c]=i?[v,C]:[C,v],[d,m]=i?[y,w]:[w,y];if(!(ol))for(const r of b){const l=p[(i?"v":"h")+r];if(!(lc))return t.style[s]=l-h[s]+"px",t.style[n]=o-h[n]+"px",e+r}}return t.style.left=l,t.style.top=c,null};function D(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class O{constructor(e){D(this,"_initializingActive",!0),D(this,"_recalc",!0),D(this,"_nanopop",null),D(this,"_root",null),D(this,"_color",S()),D(this,"_lastColor",S()),D(this,"_swatchColors",[]),D(this,"_setupAnimationFrame",null),D(this,"_eventListener",{init:[],save:[],hide:[],show:[],clear:[],change:[],changestop:[],cancel:[],swatchselect:[]}),this.options=e=Object.assign({...O.DEFAULT_OPTIONS},e);const{swatches:t,components:i,theme:o,sliders:n,lockOpacity:s,padding:r}=e;["nano","monolith"].includes(o)&&!n&&(e.sliders="h"),i.interaction||(i.interaction={});const{preview:a,opacity:l,hue:c,palette:d}=i;i.opacity=!s&&l,i.palette=d||a||l||c,this._preBuild(),this._buildComponents(),this._bindEvents(),this._finalBuild(),t&&t.length&&t.forEach(e=>this.addSwatch(e));const{button:h,app:u}=this._root;this._nanopop=((e,t,i)=>{const o="object"!=typeof e||e instanceof HTMLElement?{reference:e,popper:t,...i}:e;return{update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o;const{reference:t,popper:i}=Object.assign(o,e);if(!i||!t)throw new Error("Popper- or reference-element missing.");return I(t,i,o)}}})(h,u,{margin:r}),h.setAttribute("role","button"),h.setAttribute("aria-label",this._t("btn:toggle"));const p=this;this._setupAnimationFrame=requestAnimationFrame(function t(){if(!u.offsetWidth)return p._setupAnimationFrame=requestAnimationFrame(t);p.setColor(e.default),p._rePositioningPicker(),e.defaultRepresentation&&(p._representation=e.defaultRepresentation,p.setColorRepresentation(p._representation)),e.showAlways&&p.show(),p._initializingActive=!1,p._emit("init")})}_preBuild(){const{options:e}=this;for(const t of["el","container"])e[t]=c(e[t]);this._root=(e=>{const{components:t,useAsButton:i,inline:o,appClass:n,theme:s,lockOpacity:r}=e.options,l=e=>e?"":'style="display:none" hidden',c=t=>e._t(t),d=a(`\n
\n\n ${i?"":''}\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n \n\n \n \n \n \n \n\n \n \n \n
\n
\n
\n `),h=d.interaction;return h.options.find(e=>!e.hidden&&!e.classList.add("active")),h.type=()=>h.options.find(e=>e.classList.contains("active")),d})(this),e.useAsButton&&(this._root.button=e.el),e.container.appendChild(this._root.root)}_finalBuild(){const e=this.options,t=this._root;if(e.container.removeChild(t.root),e.inline){const i=e.el.parentElement;e.el.nextSibling?i.insertBefore(t.app,e.el.nextSibling):i.appendChild(t.app)}else e.container.appendChild(t.app);e.useAsButton?e.inline&&e.el.remove():e.el.parentNode.replaceChild(t.root,e.el),e.disabled&&this.disable(),e.comparison||(t.button.style.transition="none",e.useAsButton||(t.preview.lastColor.style.transition="none")),this.hide()}_buildComponents(){const e=this,t=this.options.components,i=(e.options.sliders||"v").repeat(2),[o,n]=i.match(/^[vh]+$/g)?i:[],s=()=>this._color||(this._color=this._lastColor.clone()),r={palette:E({element:e._root.palette.picker,wrapper:e._root.palette.palette,onstop:()=>e._emit("changestop","slider",e),onchange(i,o){if(!t.palette)return;const n=s(),{_root:r,options:a}=e,{lastColor:l,currentColor:c}=r.preview;e._recalc&&(n.s=100*i,n.v=100-100*o,n.v<0&&(n.v=0),e._updateOutput("slider"));const d=n.toRGBA().toString(0);this.element.style.background=d,this.wrapper.style.background=`\n linear-gradient(to top, rgba(0, 0, 0, ${n.a}), transparent),\n linear-gradient(to left, hsla(${n.h}, 100%, 50%, ${n.a}), rgba(255, 255, 255, ${n.a}))\n `,a.comparison?a.useAsButton||e._lastColor||l.style.setProperty("--pcr-color",d):(r.button.style.setProperty("--pcr-color",d),r.button.classList.remove("clear"));const h=n.toHEXA().toString();for(const{el:t,color:i}of e._swatchColors)t.classList[h===i.toHEXA().toString()?"add":"remove"]("pcr-active");c.style.setProperty("--pcr-color",d)}}),hue:E({lock:"v"===n?"h":"v",element:e._root.hue.picker,wrapper:e._root.hue.slider,onstop:()=>e._emit("changestop","slider",e),onchange(i){if(!t.hue||!t.palette)return;const o=s();e._recalc&&(o.h=360*i),this.element.style.backgroundColor=`hsl(${o.h}, 100%, 50%)`,r.palette.trigger()}}),opacity:E({lock:"v"===o?"h":"v",element:e._root.opacity.picker,wrapper:e._root.opacity.slider,onstop:()=>e._emit("changestop","slider",e),onchange(i){if(!t.opacity||!t.palette)return;const o=s();e._recalc&&(o.a=Math.round(100*i)/100),this.element.style.background=`rgba(0, 0, 0, ${o.a})`,r.palette.trigger()}}),selectable:M({elements:e._root.interaction.options,className:"active",onchange(t){e._representation=t.target.getAttribute("data-type").toUpperCase(),e._recalc&&e._updateOutput("swatch")}})};this._components=r}_bindEvents(){const{_root:e,options:t}=this,i=[n(e.interaction.clear,"click",()=>this._clearColor()),n([e.interaction.cancel,e.preview.lastColor],"click",()=>{this.setHSVA(...(this._lastColor||this._color).toHSVA(),!0),this._emit("cancel")}),n(e.interaction.save,"click",()=>{!this.applyColor()&&!t.showAlways&&this.hide()}),n(e.interaction.result,["keyup","input"],e=>{this.setColor(e.target.value,!0)&&!this._initializingActive&&(this._emit("change",this._color,"input",this),this._emit("changestop","input",this)),e.stopImmediatePropagation()}),n(e.interaction.result,["focus","blur"],e=>{this._recalc="blur"===e.type,this._recalc&&this._updateOutput(null)}),n([e.palette.palette,e.palette.picker,e.hue.slider,e.hue.picker,e.opacity.slider,e.opacity.picker],["mousedown","touchstart"],()=>this._recalc=!0,{passive:!0})];if(!t.showAlways){const o=t.closeWithKey;i.push(n(e.button,"click",()=>this.isOpen()?this.hide():this.show()),n(document,"keyup",e=>this.isOpen()&&(e.key===o||e.code===o)&&this.hide()),n(document,["touchstart","mousedown"],t=>{this.isOpen()&&!l(t).some(t=>t===e.app||t===e.button)&&this.hide()},{capture:!0}))}if(t.adjustableNumbers){const t={rgba:[255,255,255,1],hsva:[360,100,100,1],hsla:[360,100,100,1],cmyk:[100,100,100,100]};d(e.interaction.result,(e,i,o)=>{const n=t[this.getColorRepresentation().toLowerCase()];if(n){const t=n[o],s=e+(t>=100?1e3*i:i);return s<=0?0:Number((s{o.isOpen()&&(t.closeOnScroll&&o.hide(),null===e?(e=setTimeout(()=>e=null,100),requestAnimationFrame(function t(){o._rePositioningPicker(),null!==e&&requestAnimationFrame(t)})):(clearTimeout(e),e=setTimeout(()=>e=null,100)))},{capture:!0}))}this._eventBindings=i}_rePositioningPicker(){const{options:e}=this;if(!e.inline&&!this._nanopop.update({container:document.body.getBoundingClientRect(),position:e.position})){const e=this._root.app,t=e.getBoundingClientRect();e.style.top=(window.innerHeight-t.height)/2+"px",e.style.left=(window.innerWidth-t.width)/2+"px"}}_updateOutput(e){const{_root:t,_color:i,options:o}=this;if(t.interaction.type()){const e=`to${t.interaction.type().getAttribute("data-type")}`;t.interaction.result.value="function"==typeof i[e]?i[e]().toString(o.outputPrecision):""}!this._initializingActive&&this._recalc&&this._emit("change",i,e,this)}_clearColor(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const{_root:t,options:i}=this;i.useAsButton||t.button.style.setProperty("--pcr-color","rgba(0, 0, 0, 0.15)"),t.button.classList.add("clear"),i.showAlways||this.hide(),this._lastColor=null,this._initializingActive||e||(this._emit("save",null),this._emit("clear"))}_parseLocalColor(e){const{values:t,type:i,a:o}=k(e),{lockOpacity:n}=this.options,s=void 0!==o&&1!==o;return t&&3===t.length&&(t[3]=void 0),{values:!t||n&&s?null:t,type:i}}_t(e){return this.options.i18n[e]||O.I18N_DEFAULTS[e]}_emit(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),o=1;oe(...i,this))}on(e,t){return this._eventListener[e].push(t),this}off(e,t){const i=this._eventListener[e]||[],o=i.indexOf(t);return~o&&i.splice(o,1),this}addSwatch(e){const{values:t}=this._parseLocalColor(e);if(t){const{_swatchColors:e,_root:i}=this,o=S(...t),s=r(`