diff --git a/.obsidian/plugins/breadcrumbs/data.json b/.obsidian/plugins/breadcrumbs/data.json index af6cad84..a166a9ea 100644 --- a/.obsidian/plugins/breadcrumbs/data.json +++ b/.obsidian/plugins/breadcrumbs/data.json @@ -240,7 +240,9 @@ "prevs" ], "lock_view": false, - "lock_path": "désintégration audioactive.md" + "lock_path": "désintégration audioactive.md", + "custom_sort_fields": false, + "custom_sort_field_labels": [] }, "tree": { "collapse": false, diff --git a/.obsidian/plugins/breadcrumbs/main.js b/.obsidian/plugins/breadcrumbs/main.js index 7472e477..4451fe44 100644 --- a/.obsidian/plugins/breadcrumbs/main.js +++ b/.obsidian/plugins/breadcrumbs/main.js @@ -3,101 +3,101 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin */ -"use strict";var X6=Object.create;var pl=Object.defineProperty;var Q6=Object.getOwnPropertyDescriptor;var ek=Object.getOwnPropertyNames;var tk=Object.getPrototypeOf,rk=Object.prototype.hasOwnProperty;var Xm=t=>{throw TypeError(t)};var ok=(t,e,r)=>e in t?pl(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var ak=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Qm=(t,e)=>{for(var r in e)pl(t,r,{get:e[r],enumerable:!0})},e_=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of ek(e))!rk.call(t,a)&&a!==r&&pl(t,a,{get:()=>e[a],enumerable:!(o=Q6(e,a))||o.enumerable});return t};var nk=(t,e,r)=>(r=t!=null?X6(tk(t)):{},e_(e||!t||!t.__esModule?pl(r,"default",{value:t,enumerable:!0}):r,t)),sk=t=>e_(pl({},"__esModule",{value:!0}),t);var Ze=(t,e,r)=>ok(t,typeof e!="symbol"?e+"":e,r),Od=(t,e,r)=>e.has(t)||Xm("Cannot "+r);var ye=(t,e,r)=>(Od(t,e,"read from private field"),r?r.call(t):e.get(t)),zt=(t,e,r)=>e.has(t)?Xm("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),ur=(t,e,r,o)=>(Od(t,e,"write to private field"),o?o.call(t,r):e.set(t,r),r),Ia=(t,e,r)=>(Od(t,e,"access private method"),r);var t_=(()=>{for(var t=new Uint8Array(128),e=0;e<64;e++)t[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return r=>{for(var o=r.length,a=new Uint8Array((o-(r[o-1]=="=")-(r[o-2]=="="))*3/4|0),n=0,s=0;n>4,a[s++]=l<<4|u>>2,a[s++]=u<<6|A}return a}})();var xg=ak(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});require("obsidian");var Fa=class extends Error{},uc=class extends Fa{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}},Ac=class extends Fa{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}},fc=class extends Fa{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}},Kn=class extends Fa{},BA=class extends Fa{constructor(e){super(`Invalid unit ${e}`)}},Or=class extends Fa{},ta=class extends Fa{constructor(){super("Zone is an abstract class")}},Q="numeric",Mo="short",Zr="long",SA={year:Q,month:Q,day:Q},xh={year:Q,month:Mo,day:Q},xk={year:Q,month:Mo,day:Q,weekday:Mo},vh={year:Q,month:Zr,day:Q},kh={year:Q,month:Zr,day:Q,weekday:Zr},bh={hour:Q,minute:Q},wh={hour:Q,minute:Q,second:Q},yh={hour:Q,minute:Q,second:Q,timeZoneName:Mo},Eh={hour:Q,minute:Q,second:Q,timeZoneName:Zr},Ih={hour:Q,minute:Q,hourCycle:"h23"},$h={hour:Q,minute:Q,second:Q,hourCycle:"h23"},Dh={hour:Q,minute:Q,second:Q,hourCycle:"h23",timeZoneName:Mo},Fh={hour:Q,minute:Q,second:Q,hourCycle:"h23",timeZoneName:Zr},Bh={year:Q,month:Q,day:Q,hour:Q,minute:Q},Sh={year:Q,month:Q,day:Q,hour:Q,minute:Q,second:Q},Ch={year:Q,month:Mo,day:Q,hour:Q,minute:Q},Th={year:Q,month:Mo,day:Q,hour:Q,minute:Q,second:Q},vk={year:Q,month:Mo,day:Q,weekday:Mo,hour:Q,minute:Q},Oh={year:Q,month:Zr,day:Q,hour:Q,minute:Q,timeZoneName:Mo},Mh={year:Q,month:Zr,day:Q,hour:Q,minute:Q,second:Q,timeZoneName:Mo},Nh={year:Q,month:Zr,day:Q,weekday:Zr,hour:Q,minute:Q,timeZoneName:Zr},qh={year:Q,month:Zr,day:Q,weekday:Zr,hour:Q,minute:Q,second:Q,timeZoneName:Zr},Jn=class{get type(){throw new ta}get name(){throw new ta}get ianaName(){return this.name}get isUniversal(){throw new ta}offsetName(e,r){throw new ta}formatOffset(e,r){throw new ta}offset(e){throw new ta}equals(e){throw new ta}get isValid(){throw new ta}},tc=null,CA=class t extends Jn{static get instance(){return tc===null&&(tc=new t),tc}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:r,locale:o}){return Rh(e,r,o)}formatOffset(e,r){return $l(this.offset(e),r)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}},DA={};function kk(t){return DA[t]||(DA[t]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"})),DA[t]}var bk={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function wk(t,e){let r=t.format(e).replace(/\u200E/g,""),o=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(r),[,a,n,s,i,l,u,A]=o;return[s,a,n,i,l,u,A]}function yk(t,e){let r=t.formatToParts(e),o=[];for(let a=0;a=0?h:1e3+h,(p-m)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}},H_={};function Ek(t,e={}){let r=JSON.stringify([t,e]),o=H_[r];return o||(o=new Intl.ListFormat(t,e),H_[r]=o),o}var dc={};function cc(t,e={}){let r=JSON.stringify([t,e]),o=dc[r];return o||(o=new Intl.DateTimeFormat(t,e),dc[r]=o),o}var pc={};function Ik(t,e={}){let r=JSON.stringify([t,e]),o=pc[r];return o||(o=new Intl.NumberFormat(t,e),pc[r]=o),o}var mc={};function $k(t,e={}){let{base:r,...o}=e,a=JSON.stringify([t,o]),n=mc[a];return n||(n=new Intl.RelativeTimeFormat(t,e),mc[a]=n),n}var El=null;function Dk(){return El||(El=new Intl.DateTimeFormat().resolvedOptions().locale,El)}function Fk(t){let e=t.indexOf("-x-");e!==-1&&(t=t.substring(0,e));let r=t.indexOf("-u-");if(r===-1)return[t];{let o,a;try{o=cc(t).resolvedOptions(),a=t}catch{let l=t.substring(0,r);o=cc(l).resolvedOptions(),a=l}let{numberingSystem:n,calendar:s}=o;return[a,n,s]}}function Bk(t,e,r){return(r||e)&&(t.includes("-u-")||(t+="-u"),r&&(t+=`-ca-${r}`),e&&(t+=`-nu-${e}`)),t}function Sk(t){let e=[];for(let r=1;r<=12;r++){let o=qe.utc(2009,r,1);e.push(t(o))}return e}function Ck(t){let e=[];for(let r=1;r<=7;r++){let o=qe.utc(2016,11,13+r);e.push(t(o))}return e}function wA(t,e,r,o){let a=t.listingMode();return a==="error"?null:a==="en"?r(e):o(e)}function Tk(t){return t.numberingSystem&&t.numberingSystem!=="latn"?!1:t.numberingSystem==="latn"||!t.locale||t.locale.startsWith("en")||new Intl.DateTimeFormat(t.intl).resolvedOptions().numberingSystem==="latn"}var _c=class{constructor(e,r,o){this.padTo=o.padTo||0,this.floor=o.floor||!1;let{padTo:a,floor:n,...s}=o;if(!r||Object.keys(s).length>0){let i={useGrouping:!1,...o};o.padTo>0&&(i.minimumIntegerDigits=o.padTo),this.inf=Ik(e,i)}}format(e){if(this.inf){let r=this.floor?Math.floor(e):e;return this.inf.format(r)}else{let r=this.floor?Math.floor(e):Fc(e,3);return qt(r,this.padTo)}}},hc=class{constructor(e,r,o){this.opts=o,this.originalZone=void 0;let a;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){let s=-1*(e.offset/60),i=s>=0?`Etc/GMT+${s}`:`Etc/GMT${s}`;e.offset!==0&&An.create(i).valid?(a=i,this.dt=e):(a="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,a=e.zone.name):(a="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);let n={...this.opts};n.timeZone=n.timeZone||a,this.dtf=cc(r,n)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){let e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(r=>{if(r.type==="timeZoneName"){let o=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...r,value:o}}else return r}):e}resolvedOptions(){return this.dtf.resolvedOptions()}},gc=class{constructor(e,r,o){this.opts={style:"long",...o},!r&&Ph()&&(this.rtf=$k(e,o))}format(e,r){return this.rtf?this.rtf.format(e,r):Yk(r,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,r){return this.rtf?this.rtf.formatToParts(e,r):[]}},St=class t{static fromOpts(e){return t.create(e.locale,e.numberingSystem,e.outputCalendar,e.defaultToEN)}static create(e,r,o,a=!1){let n=e||Bt.defaultLocale,s=n||(a?"en-US":Dk()),i=r||Bt.defaultNumberingSystem,l=o||Bt.defaultOutputCalendar;return new t(s,i,l,n)}static resetCache(){El=null,dc={},pc={},mc={}}static fromObject({locale:e,numberingSystem:r,outputCalendar:o}={}){return t.create(e,r,o)}constructor(e,r,o,a){let[n,s,i]=Fk(e);this.locale=n,this.numberingSystem=r||s||null,this.outputCalendar=o||i||null,this.intl=Bk(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=a,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=Tk(this)),this.fastNumbersCached}listingMode(){let e=this.isEnglish(),r=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&r?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:t.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,r=!1){return wA(this,e,Hh,()=>{let o=r?{month:e,day:"numeric"}:{month:e},a=r?"format":"standalone";return this.monthsCache[a][e]||(this.monthsCache[a][e]=Sk(n=>this.extract(n,o,"month"))),this.monthsCache[a][e]})}weekdays(e,r=!1){return wA(this,e,zh,()=>{let o=r?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},a=r?"format":"standalone";return this.weekdaysCache[a][e]||(this.weekdaysCache[a][e]=Ck(n=>this.extract(n,o,"weekday"))),this.weekdaysCache[a][e]})}meridiems(){return wA(this,void 0,()=>Wh,()=>{if(!this.meridiemCache){let e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[qe.utc(2016,11,13,9),qe.utc(2016,11,13,19)].map(r=>this.extract(r,e,"dayperiod"))}return this.meridiemCache})}eras(e){return wA(this,e,Kh,()=>{let r={era:e};return this.eraCache[e]||(this.eraCache[e]=[qe.utc(-40,1,1),qe.utc(2017,1,1)].map(o=>this.extract(o,r,"era"))),this.eraCache[e]})}extract(e,r,o){let a=this.dtFormatter(e,r),n=a.formatToParts(),s=n.find(i=>i.type.toLowerCase()===o);return s?s.value:null}numberFormatter(e={}){return new _c(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,r={}){return new hc(e,this.intl,r)}relFormatter(e={}){return new gc(this.intl,this.isEnglish(),e)}listFormatter(e={}){return Ek(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}},rc=null,ho=class t extends Jn{static get utcInstance(){return rc===null&&(rc=new t(0)),rc}static instance(e){return e===0?t.utcInstance:new t(e)}static parseSpecifier(e){if(e){let r=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(r)return new t(HA(r[1],r[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${$l(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${$l(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,r){return $l(this.fixed,r)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}},jc=class extends Jn{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}};function un(t,e){if(Ue(t)||t===null)return e;if(t instanceof Jn)return t;if(Ok(t)){let r=t.toLowerCase();return r==="default"?e:r==="local"||r==="system"?CA.instance:r==="utc"||r==="gmt"?ho.utcInstance:ho.parseSpecifier(r)||An.create(t)}else return Yn(t)?ho.instance(t):typeof t=="object"&&"offset"in t&&typeof t.offset=="function"?t:new jc(t)}var V_=()=>Date.now(),U_="system",z_=null,W_=null,K_=null,Z_=60,Y_,Bt=class{static get now(){return V_}static set now(e){V_=e}static set defaultZone(e){U_=e}static get defaultZone(){return un(U_,CA.instance)}static get defaultLocale(){return z_}static set defaultLocale(e){z_=e}static get defaultNumberingSystem(){return W_}static set defaultNumberingSystem(e){W_=e}static get defaultOutputCalendar(){return K_}static set defaultOutputCalendar(e){K_=e}static get twoDigitCutoffYear(){return Z_}static set twoDigitCutoffYear(e){Z_=e%100}static get throwOnInvalid(){return Y_}static set throwOnInvalid(e){Y_=e}static resetCaches(){St.resetCache(),An.resetCache()}};function Ue(t){return typeof t>"u"}function Yn(t){return typeof t=="number"}function LA(t){return typeof t=="number"&&t%1===0}function Ok(t){return typeof t=="string"}function Mk(t){return Object.prototype.toString.call(t)==="[object Date]"}function Ph(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function Nk(t){return Array.isArray(t)?t:[t]}function J_(t,e,r){if(t.length!==0)return t.reduce((o,a)=>{let n=[e(a),a];return o&&r(o[0],n[0])===o[0]?o:n},null)[1]}function qk(t,e){return e.reduce((r,o)=>(r[o]=t[o],r),{})}function ui(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function Da(t,e,r){return LA(t)&&t>=e&&t<=r}function Pk(t,e){return t-e*Math.floor(t/e)}function qt(t,e=2){let r=t<0,o;return r?o="-"+(""+-t).padStart(e,"0"):o=(""+t).padStart(e,"0"),o}function ln(t){if(!(Ue(t)||t===null||t===""))return parseInt(t,10)}function zn(t){if(!(Ue(t)||t===null||t===""))return parseFloat(t)}function Dc(t){if(!(Ue(t)||t===null||t==="")){let e=parseFloat("0."+t)*1e3;return Math.floor(e)}}function Fc(t,e,r=!1){let o=10**e;return(r?Math.trunc:Math.round)(t*o)/o}function Bl(t){return t%4===0&&(t%100!==0||t%400===0)}function Il(t){return Bl(t)?366:365}function TA(t,e){let r=Pk(e-1,12)+1,o=t+(e-r)/12;return r===2?Bl(o)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][r-1]}function GA(t){let e=Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond);return t.year<100&&t.year>=0&&(e=new Date(e),e.setUTCFullYear(t.year,t.month-1,t.day)),+e}function OA(t){let e=(t+Math.floor(t/4)-Math.floor(t/100)+Math.floor(t/400))%7,r=t-1,o=(r+Math.floor(r/4)-Math.floor(r/100)+Math.floor(r/400))%7;return e===4||o===3?53:52}function xc(t){return t>99?t:t>Bt.twoDigitCutoffYear?1900+t:2e3+t}function Rh(t,e,r,o=null){let a=new Date(t),n={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};o&&(n.timeZone=o);let s={timeZoneName:e,...n},i=new Intl.DateTimeFormat(r,s).formatToParts(a).find(l=>l.type.toLowerCase()==="timezonename");return i?i.value:null}function HA(t,e){let r=parseInt(t,10);Number.isNaN(r)&&(r=0);let o=parseInt(e,10)||0,a=r<0||Object.is(r,-0)?-o:o;return r*60+a}function Lh(t){let e=Number(t);if(typeof t=="boolean"||t===""||Number.isNaN(e))throw new Or(`Invalid unit value ${t}`);return e}function MA(t,e){let r={};for(let o in t)if(ui(t,o)){let a=t[o];if(a==null)continue;r[e(o)]=Lh(a)}return r}function $l(t,e){let r=Math.trunc(Math.abs(t/60)),o=Math.trunc(Math.abs(t%60)),a=t>=0?"+":"-";switch(e){case"short":return`${a}${qt(r,2)}:${qt(o,2)}`;case"narrow":return`${a}${r}${o>0?`:${o}`:""}`;case"techie":return`${a}${qt(r,2)}${qt(o,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function VA(t){return qk(t,["hour","minute","second","millisecond"])}var Rk=["January","February","March","April","May","June","July","August","September","October","November","December"],Gh=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Lk=["J","F","M","A","M","J","J","A","S","O","N","D"];function Hh(t){switch(t){case"narrow":return[...Lk];case"short":return[...Gh];case"long":return[...Rk];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var Vh=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Uh=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Gk=["M","T","W","T","F","S","S"];function zh(t){switch(t){case"narrow":return[...Gk];case"short":return[...Uh];case"long":return[...Vh];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var Wh=["AM","PM"],Hk=["Before Christ","Anno Domini"],Vk=["BC","AD"],Uk=["B","A"];function Kh(t){switch(t){case"narrow":return[...Uk];case"short":return[...Vk];case"long":return[...Hk];default:return null}}function zk(t){return Wh[t.hour<12?0:1]}function Wk(t,e){return zh(e)[t.weekday-1]}function Kk(t,e){return Hh(e)[t.month-1]}function Zk(t,e){return Kh(e)[t.year<0?0:1]}function Yk(t,e,r="always",o=!1){let a={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},n=["hours","minutes","seconds"].indexOf(t)===-1;if(r==="auto"&&n){let c=t==="days";switch(e){case 1:return c?"tomorrow":`next ${a[t][0]}`;case-1:return c?"yesterday":`last ${a[t][0]}`;case 0:return c?"today":`this ${a[t][0]}`}}let s=Object.is(e,-0)||e<0,i=Math.abs(e),l=i===1,u=a[t],A=o?l?u[1]:u[2]||u[1]:l?a[t][0]:t;return s?`${i} ${A} ago`:`in ${i} ${A}`}function X_(t,e){let r="";for(let o of t)o.literal?r+=o.val:r+=e(o.val);return r}var Jk={D:SA,DD:xh,DDD:vh,DDDD:kh,t:bh,tt:wh,ttt:yh,tttt:Eh,T:Ih,TT:$h,TTT:Dh,TTTT:Fh,f:Bh,ff:Ch,fff:Oh,ffff:Nh,F:Sh,FF:Th,FFF:Mh,FFFF:qh},Wr=class t{static create(e,r={}){return new t(e,r)}static parseFormat(e){let r=null,o="",a=!1,n=[];for(let s=0;s0&&n.push({literal:a||/^\s+$/.test(o),val:o}),r=null,o="",a=!a):a||i===r?o+=i:(o.length>0&&n.push({literal:/^\s+$/.test(o),val:o}),o=i,r=i)}return o.length>0&&n.push({literal:a||/^\s+$/.test(o),val:o}),n}static macroTokenToFormatOpts(e){return Jk[e]}constructor(e,r){this.opts=r,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,r){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...r}).format()}dtFormatter(e,r={}){return this.loc.dtFormatter(e,{...this.opts,...r})}formatDateTime(e,r){return this.dtFormatter(e,r).format()}formatDateTimeParts(e,r){return this.dtFormatter(e,r).formatToParts()}formatInterval(e,r){return this.dtFormatter(e.start,r).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,r){return this.dtFormatter(e,r).resolvedOptions()}num(e,r=0){if(this.opts.forceSimple)return qt(e,r);let o={...this.opts};return r>0&&(o.padTo=r),this.loc.numberFormatter(o).format(e)}formatDateTimeFromString(e,r){let o=this.loc.listingMode()==="en",a=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",n=(m,h)=>this.loc.extract(e,m,h),s=m=>e.isOffsetFixed&&e.offset===0&&m.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,m.format):"",i=()=>o?zk(e):n({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(m,h)=>o?Kk(e,m):n(h?{month:m}:{month:m,day:"numeric"},"month"),u=(m,h)=>o?Wk(e,m):n(h?{weekday:m}:{weekday:m,month:"long",day:"numeric"},"weekday"),A=m=>{let h=t.macroTokenToFormatOpts(m);return h?this.formatWithSystemDefault(e,h):m},c=m=>o?Zk(e,m):n({era:m},"era"),p=m=>{switch(m){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return s({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return s({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return s({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return i();case"d":return a?n({day:"numeric"},"day"):this.num(e.day);case"dd":return a?n({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return a?n({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return a?n({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return a?n({month:"numeric"},"month"):this.num(e.month);case"MM":return a?n({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return a?n({year:"numeric"},"year"):this.num(e.year);case"yy":return a?n({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return a?n({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return a?n({year:"numeric"},"year"):this.num(e.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return A(m)}};return X_(t.parseFormat(r),p)}formatDurationFromString(e,r){let o=l=>{switch(l[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},a=l=>u=>{let A=o(u);return A?this.num(l.get(A),u.length):u},n=t.parseFormat(r),s=n.reduce((l,{literal:u,val:A})=>u?l:l.concat(A),[]),i=e.shiftTo(...s.map(o).filter(l=>l));return X_(n,a(i))}},Kr=class{constructor(e,r){this.reason=e,this.explanation=r}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}},Zh=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function Ai(...t){let e=t.reduce((r,o)=>r+o.source,"");return RegExp(`^${e}$`)}function fi(...t){return e=>t.reduce(([r,o,a],n)=>{let[s,i,l]=n(e,a);return[{...r,...s},i||o,l]},[{},null,1]).slice(0,2)}function di(t,...e){if(t==null)return[null,null];for(let[r,o]of e){let a=r.exec(t);if(a)return o(a)}return[null,null]}function Yh(...t){return(e,r)=>{let o={},a;for(a=0;am!==void 0&&(h||m&&A)?-m:m;return[{years:p(zn(r)),months:p(zn(o)),weeks:p(zn(a)),days:p(zn(n)),hours:p(zn(s)),minutes:p(zn(i)),seconds:p(zn(l),l==="-0"),milliseconds:p(Dc(u),c)}]}var Ab={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Cc(t,e,r,o,a,n,s){let i={year:e.length===2?xc(ln(e)):ln(e),month:Gh.indexOf(r)+1,day:ln(o),hour:ln(a),minute:ln(n)};return s&&(i.second=ln(s)),t&&(i.weekday=t.length>3?Vh.indexOf(t)+1:Uh.indexOf(t)+1),i}var fb=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function db(t){let[,e,r,o,a,n,s,i,l,u,A,c]=t,p=Cc(e,a,o,r,n,s,i),m;return l?m=Ab[l]:u?m=0:m=HA(A,c),[p,new ho(m)]}function cb(t){return t.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}var pb=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,mb=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,_b=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Q_(t){let[,e,r,o,a,n,s,i]=t;return[Cc(e,a,o,r,n,s,i),ho.utcInstance]}function hb(t){let[,e,r,o,a,n,s,i]=t;return[Cc(e,i,r,o,a,n,s),ho.utcInstance]}var gb=Ai(Qk,Sc),jb=Ai(eb,Sc),xb=Ai(tb,Sc),vb=Ai(Xh),eg=fi(sb,ci,Sl,Cl),kb=fi(rb,ci,Sl,Cl),bb=fi(ob,ci,Sl,Cl),wb=fi(ci,Sl,Cl);function yb(t){return di(t,[gb,eg],[jb,kb],[xb,bb],[vb,wb])}function Eb(t){return di(cb(t),[fb,db])}function Ib(t){return di(t,[pb,Q_],[mb,Q_],[_b,hb])}function $b(t){return di(t,[lb,ub])}var Db=fi(ci);function Fb(t){return di(t,[ib,Db])}var Bb=Ai(ab,nb),Sb=Ai(Qh),Cb=fi(ci,Sl,Cl);function Tb(t){return di(t,[Bb,eg],[Sb,Cb])}var eh="Invalid Duration",tg={weeks:{days:7,hours:168,minutes:10080,seconds:10080*60,milliseconds:10080*60*1e3},days:{hours:24,minutes:1440,seconds:1440*60,milliseconds:1440*60*1e3},hours:{minutes:60,seconds:3600,milliseconds:3600*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},Ob={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:2184*60,seconds:2184*60*60,milliseconds:2184*60*60*1e3},months:{weeks:4,days:30,hours:720,minutes:720*60,seconds:720*60*60,milliseconds:720*60*60*1e3},...tg},mo=146097/400,ai=146097/4800,Mb={years:{quarters:4,months:12,weeks:mo/7,days:mo,hours:mo*24,minutes:mo*24*60,seconds:mo*24*60*60,milliseconds:mo*24*60*60*1e3},quarters:{months:3,weeks:mo/28,days:mo/4,hours:mo*24/4,minutes:mo*24*60/4,seconds:mo*24*60*60/4,milliseconds:mo*24*60*60*1e3/4},months:{weeks:ai/7,days:ai,hours:ai*24,minutes:ai*24*60,seconds:ai*24*60*60,milliseconds:ai*24*60*60*1e3},...tg},Zn=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],Nb=Zn.slice(0).reverse();function sn(t,e,r=!1){let o={values:r?e.values:{...t.values,...e.values||{}},loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy,matrix:e.matrix||t.matrix};return new ge(o)}function rg(t,e){let r=e.milliseconds??0;for(let o of Nb.slice(1))e[o]&&(r+=e[o]*t[o].milliseconds);return r}function th(t,e){let r=rg(t,e)<0?-1:1;Zn.reduceRight((o,a)=>{if(Ue(e[a]))return o;if(o){let n=e[o]*r,s=t[a][o],i=Math.floor(n/s);e[a]+=i*r,e[o]-=i*s*r}return a},null),Zn.reduce((o,a)=>{if(Ue(e[a]))return o;if(o){let n=e[o]%1;e[o]-=n,e[a]+=n*t[o][a]}return a},null)}function qb(t){let e={};for(let[r,o]of Object.entries(t))o!==0&&(e[r]=o);return e}var ge=class t{constructor(e){let r=e.conversionAccuracy==="longterm"||!1,o=r?Mb:Ob;e.matrix&&(o=e.matrix),this.values=e.values,this.loc=e.loc||St.create(),this.conversionAccuracy=r?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=o,this.isLuxonDuration=!0}static fromMillis(e,r){return t.fromObject({milliseconds:e},r)}static fromObject(e,r={}){if(e==null||typeof e!="object")throw new Or(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new t({values:MA(e,t.normalizeUnit),loc:St.fromObject(r),conversionAccuracy:r.conversionAccuracy,matrix:r.matrix})}static fromDurationLike(e){if(Yn(e))return t.fromMillis(e);if(t.isDuration(e))return e;if(typeof e=="object")return t.fromObject(e);throw new Or(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,r){let[o]=$b(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,r){let[o]=Fb(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,r=null){if(!e)throw new Or("need to specify a reason the Duration is invalid");let o=e instanceof Kr?e:new Kr(e,r);if(Bt.throwOnInvalid)throw new fc(o);return new t({invalid:o})}static normalizeUnit(e){let r={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!r)throw new BA(e);return r}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,r={}){let o={...r,floor:r.round!==!1&&r.floor!==!1};return this.isValid?Wr.create(this.loc,o).formatDurationFromString(this,e):eh}toHuman(e={}){if(!this.isValid)return eh;let r=Zn.map(o=>{let a=this.values[o];return Ue(a)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:o.slice(0,-1)}).format(a)}).filter(o=>o);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(r)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=Fc(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;let r=this.toMillis();return r<0||r>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},qe.fromMillis(r,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}toMillis(){return this.isValid?rg(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e),o={};for(let a of Zn)(ui(r.values,a)||ui(this.values,a))&&(o[a]=r.get(a)+this.get(a));return sn(this,{values:o},!0)}minus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e);return this.plus(r.negate())}mapUnits(e){if(!this.isValid)return this;let r={};for(let o of Object.keys(this.values))r[o]=Lh(e(this.values[o],o));return sn(this,{values:r},!0)}get(e){return this[t.normalizeUnit(e)]}set(e){if(!this.isValid)return this;let r={...this.values,...MA(e,t.normalizeUnit)};return sn(this,{values:r})}reconfigure({locale:e,numberingSystem:r,conversionAccuracy:o,matrix:a}={}){let s={loc:this.loc.clone({locale:e,numberingSystem:r}),matrix:a,conversionAccuracy:o};return sn(this,s)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;let e=this.toObject();return th(this.matrix,e),sn(this,{values:e},!0)}rescale(){if(!this.isValid)return this;let e=qb(this.normalize().shiftToAll().toObject());return sn(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(s=>t.normalizeUnit(s));let r={},o={},a=this.toObject(),n;for(let s of Zn)if(e.indexOf(s)>=0){n=s;let i=0;for(let u in o)i+=this.matrix[u][s]*o[u],o[u]=0;Yn(a[s])&&(i+=a[s]);let l=Math.trunc(i);r[s]=l,o[s]=(i*1e3-l*1e3)/1e3}else Yn(a[s])&&(o[s]=a[s]);for(let s in o)o[s]!==0&&(r[n]+=s===n?o[s]:o[s]/this.matrix[n][s]);return th(this.matrix,r),sn(this,{values:r},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;let e={};for(let r of Object.keys(this.values))e[r]=this.values[r]===0?0:-this.values[r];return sn(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function r(o,a){return o===void 0||o===0?a===void 0||a===0:o===a}for(let o of Zn)if(!r(this.values[o],e.values[o]))return!1;return!0}},ni="Invalid Interval";function Pb(t,e){return!t||!t.isValid?li.invalid("missing or invalid start"):!e||!e.isValid?li.invalid("missing or invalid end"):ee:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:r}={}){return this.isValid?t.fromDateTimes(e||this.s,r||this.e):this}splitAt(...e){if(!this.isValid)return[];let r=e.map(wl).filter(s=>this.contains(s)).sort(),o=[],{s:a}=this,n=0;for(;a+this.e?this.e:s;o.push(t.fromDateTimes(a,i)),a=i,n+=1}return o}splitBy(e){let r=ge.fromDurationLike(e);if(!this.isValid||!r.isValid||r.as("milliseconds")===0)return[];let{s:o}=this,a=1,n,s=[];for(;ol*a));n=+i>+this.e?this.e:i,s.push(t.fromDateTimes(o,n)),o=n,a+=1}return s}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;let r=this.s>e.s?this.s:e.s,o=this.e=o?null:t.fromDateTimes(r,o)}union(e){if(!this.isValid)return this;let r=this.se.e?this.e:e.e;return t.fromDateTimes(r,o)}static merge(e){let[r,o]=e.sort((a,n)=>a.s-n.s).reduce(([a,n],s)=>n?n.overlaps(s)||n.abutsStart(s)?[a,n.union(s)]:[a.concat([n]),s]:[a,s],[[],null]);return o&&r.push(o),r}static xor(e){let r=null,o=0,a=[],n=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),s=Array.prototype.concat(...n),i=s.sort((l,u)=>l.time-u.time);for(let l of i)o+=l.type==="s"?1:-1,o===1?r=l.time:(r&&+r!=+l.time&&a.push(t.fromDateTimes(r,l.time)),r=null);return t.merge(a)}difference(...e){return t.xor([this].concat(e)).map(r=>this.intersection(r)).filter(r=>r&&!r.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:ni}toLocaleString(e=SA,r={}){return this.isValid?Wr.create(this.s.loc.clone(r),e).formatInterval(this):ni}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:ni}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:ni}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:ni}toFormat(e,{separator:r=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${r}${this.e.toFormat(e)}`:ni}toDuration(e,r){return this.isValid?this.e.diff(this.s,e,r):ge.invalid(this.invalidReason)}mapEndpoints(e){return t.fromDateTimes(e(this.s),e(this.e))}},si=class{static hasDST(e=Bt.defaultZone){let r=qe.now().setZone(e).set({month:12});return!e.isUniversal&&r.offset!==r.set({month:6}).offset}static isValidIANAZone(e){return An.isValidZone(e)}static normalizeZone(e){return un(e,Bt.defaultZone)}static months(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||St.create(r,o,n)).months(e)}static monthsFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||St.create(r,o,n)).months(e,!0)}static weekdays(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||St.create(r,o,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||St.create(r,o,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return St.create(e).meridiems()}static eras(e="short",{locale:r=null}={}){return St.create(r,null,"gregory").eras(e)}static features(){return{relative:Ph()}}};function rh(t,e){let r=a=>a.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),o=r(e)-r(t);return Math.floor(ge.fromMillis(o).as("days"))}function Rb(t,e,r){let o=[["years",(l,u)=>u.year-l.year],["quarters",(l,u)=>u.quarter-l.quarter+(u.year-l.year)*4],["months",(l,u)=>u.month-l.month+(u.year-l.year)*12],["weeks",(l,u)=>{let A=rh(l,u);return(A-A%7)/7}],["days",rh]],a={},n=t,s,i;for(let[l,u]of o)r.indexOf(l)>=0&&(s=l,a[l]=u(t,e),i=n.plus(a),i>e?(a[l]--,t=n.plus(a),t>e&&(i=t,a[l]--,t=n.plus(a))):t=i);return[t,a,i,s]}function Lb(t,e,r,o){let[a,n,s,i]=Rb(t,e,r),l=e-a,u=r.filter(c=>["hours","minutes","seconds","milliseconds"].indexOf(c)>=0);u.length===0&&(s0?ge.fromMillis(l,o).shiftTo(...u).plus(A):A}var Tc={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},oh={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Gb=Tc.hanidec.replace(/[\[|\]]/g,"").split("");function Hb(t){let e=parseInt(t,10);if(isNaN(e)){e="";for(let r=0;r=n&&o<=s&&(e+=o-n)}}return parseInt(e,10)}else return e}function Co({numberingSystem:t},e=""){return new RegExp(`${Tc[t||"latn"]}${e}`)}var Vb="missing Intl.DateTimeFormat.formatToParts support";function nt(t,e=r=>r){return{regex:t,deser:([r])=>e(Hb(r))}}var Ub="\xA0",og=`[ ${Ub}]`,ag=new RegExp(og,"g");function zb(t){return t.replace(/\./g,"\\.?").replace(ag,og)}function ah(t){return t.replace(/\./g,"").replace(ag," ").toLowerCase()}function To(t,e){return t===null?null:{regex:RegExp(t.map(zb).join("|")),deser:([r])=>t.findIndex(o=>ah(r)===ah(o))+e}}function nh(t,e){return{regex:t,deser:([,r,o])=>HA(r,o),groups:e}}function yA(t){return{regex:t,deser:([e])=>e}}function Wb(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Kb(t,e){let r=Co(e),o=Co(e,"{2}"),a=Co(e,"{3}"),n=Co(e,"{4}"),s=Co(e,"{6}"),i=Co(e,"{1,2}"),l=Co(e,"{1,3}"),u=Co(e,"{1,6}"),A=Co(e,"{1,9}"),c=Co(e,"{2,4}"),p=Co(e,"{4,6}"),m=I=>({regex:RegExp(Wb(I.val)),deser:([F])=>F,literal:!0}),y=(I=>{if(t.literal)return m(I);switch(I.val){case"G":return To(e.eras("short"),0);case"GG":return To(e.eras("long"),0);case"y":return nt(u);case"yy":return nt(c,xc);case"yyyy":return nt(n);case"yyyyy":return nt(p);case"yyyyyy":return nt(s);case"M":return nt(i);case"MM":return nt(o);case"MMM":return To(e.months("short",!0),1);case"MMMM":return To(e.months("long",!0),1);case"L":return nt(i);case"LL":return nt(o);case"LLL":return To(e.months("short",!1),1);case"LLLL":return To(e.months("long",!1),1);case"d":return nt(i);case"dd":return nt(o);case"o":return nt(l);case"ooo":return nt(a);case"HH":return nt(o);case"H":return nt(i);case"hh":return nt(o);case"h":return nt(i);case"mm":return nt(o);case"m":return nt(i);case"q":return nt(i);case"qq":return nt(o);case"s":return nt(i);case"ss":return nt(o);case"S":return nt(l);case"SSS":return nt(a);case"u":return yA(A);case"uu":return yA(i);case"uuu":return nt(r);case"a":return To(e.meridiems(),0);case"kkkk":return nt(n);case"kk":return nt(c,xc);case"W":return nt(i);case"WW":return nt(o);case"E":case"c":return nt(r);case"EEE":return To(e.weekdays("short",!1),1);case"EEEE":return To(e.weekdays("long",!1),1);case"ccc":return To(e.weekdays("short",!0),1);case"cccc":return To(e.weekdays("long",!0),1);case"Z":case"ZZ":return nh(new RegExp(`([+-]${i.source})(?::(${o.source}))?`),2);case"ZZZ":return nh(new RegExp(`([+-]${i.source})(${o.source})?`),2);case"z":return yA(/[a-z_+-/]{1,256}?/i);case" ":return yA(/[^\S\n\r]/);default:return m(I)}})(t)||{invalidReason:Vb};return y.token=t,y}var Zb={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Yb(t,e,r){let{type:o,value:a}=t;if(o==="literal"){let l=/^\s+$/.test(a);return{literal:!l,val:l?" ":a}}let n=e[o],s=o;o==="hour"&&(e.hour12!=null?s=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?s="hour12":s="hour24":s=r.hour12?"hour12":"hour24");let i=Zb[s];if(typeof i=="object"&&(i=i[n]),i)return{literal:!1,val:i}}function Jb(t){return[`^${t.map(r=>r.regex).reduce((r,o)=>`${r}(${o.source})`,"")}$`,t]}function Xb(t,e,r){let o=t.match(e);if(o){let a={},n=1;for(let s in r)if(ui(r,s)){let i=r[s],l=i.groups?i.groups+1:1;!i.literal&&i.token&&(a[i.token.val[0]]=i.deser(o.slice(n,n+l))),n+=l}return[o,a]}else return[o,{}]}function Qb(t){let e=n=>{switch(n){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}},r=null,o;return Ue(t.z)||(r=An.create(t.z)),Ue(t.Z)||(r||(r=new ho(t.Z)),o=t.Z),Ue(t.q)||(t.M=(t.q-1)*3+1),Ue(t.h)||(t.h<12&&t.a===1?t.h+=12:t.h===12&&t.a===0&&(t.h=0)),t.G===0&&t.y&&(t.y=-t.y),Ue(t.u)||(t.S=Dc(t.u)),[Object.keys(t).reduce((n,s)=>{let i=e(s);return i&&(n[i]=t[s]),n},{}),r,o]}var oc=null;function ew(){return oc||(oc=qe.fromMillis(1555555555555)),oc}function tw(t,e){if(t.literal)return t;let r=Wr.macroTokenToFormatOpts(t.val),o=ig(r,e);return o==null||o.includes(void 0)?t:o}function ng(t,e){return Array.prototype.concat(...t.map(r=>tw(r,e)))}function sg(t,e,r){let o=ng(Wr.parseFormat(r),t),a=o.map(s=>Kb(s,t)),n=a.find(s=>s.invalidReason);if(n)return{input:e,tokens:o,invalidReason:n.invalidReason};{let[s,i]=Jb(a),l=RegExp(s,"i"),[u,A]=Xb(e,l,i),[c,p,m]=A?Qb(A):[null,null,void 0];if(ui(A,"a")&&ui(A,"H"))throw new Kn("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:o,regex:l,rawMatches:u,matches:A,result:c,zone:p,specificOffset:m}}}function rw(t,e,r){let{result:o,zone:a,specificOffset:n,invalidReason:s}=sg(t,e,r);return[o,a,n,s]}function ig(t,e){if(!t)return null;let o=Wr.create(e,t).dtFormatter(ew()),a=o.formatToParts(),n=o.resolvedOptions();return a.map(s=>Yb(s,t,n))}var lg=[0,31,59,90,120,151,181,212,243,273,304,334],ug=[0,31,60,91,121,152,182,213,244,274,305,335];function _o(t,e){return new Kr("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${t}, which is invalid`)}function Ag(t,e,r){let o=new Date(Date.UTC(t,e-1,r));t<100&&t>=0&&o.setUTCFullYear(o.getUTCFullYear()-1900);let a=o.getUTCDay();return a===0?7:a}function fg(t,e,r){return r+(Bl(t)?ug:lg)[e-1]}function dg(t,e){let r=Bl(t)?ug:lg,o=r.findIndex(n=>nOA(e)?(i=e+1,s=1):i=e,{weekYear:i,weekNumber:s,weekday:n,...VA(t)}}function sh(t){let{weekYear:e,weekNumber:r,weekday:o}=t,a=Ag(e,1,4),n=Il(e),s=r*7+o-a-3,i;s<1?(i=e-1,s+=Il(i)):s>n?(i=e+1,s-=Il(e)):i=e;let{month:l,day:u}=dg(i,s);return{year:i,month:l,day:u,...VA(t)}}function ac(t){let{year:e,month:r,day:o}=t,a=fg(e,r,o);return{year:e,ordinal:a,...VA(t)}}function ih(t){let{year:e,ordinal:r}=t,{month:o,day:a}=dg(e,r);return{year:e,month:o,day:a,...VA(t)}}function ow(t){let e=LA(t.weekYear),r=Da(t.weekNumber,1,OA(t.weekYear)),o=Da(t.weekday,1,7);return e?r?o?!1:_o("weekday",t.weekday):_o("week",t.week):_o("weekYear",t.weekYear)}function aw(t){let e=LA(t.year),r=Da(t.ordinal,1,Il(t.year));return e?r?!1:_o("ordinal",t.ordinal):_o("year",t.year)}function cg(t){let e=LA(t.year),r=Da(t.month,1,12),o=Da(t.day,1,TA(t.year,t.month));return e?r?o?!1:_o("day",t.day):_o("month",t.month):_o("year",t.year)}function pg(t){let{hour:e,minute:r,second:o,millisecond:a}=t,n=Da(e,0,23)||e===24&&r===0&&o===0&&a===0,s=Da(r,0,59),i=Da(o,0,59),l=Da(a,0,999);return n?s?i?l?!1:_o("millisecond",a):_o("second",o):_o("minute",r):_o("hour",e)}var nc="Invalid DateTime",lh=864e13;function EA(t){return new Kr("unsupported zone",`the zone "${t.name}" is not supported`)}function sc(t){return t.weekData===null&&(t.weekData=vc(t.c)),t.weekData}function Wn(t,e){let r={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new qe({...r,...e,old:r})}function mg(t,e,r){let o=t-e*60*1e3,a=r.offset(o);if(e===a)return[o,e];o-=(a-e)*60*1e3;let n=r.offset(o);return a===n?[o,a]:[t-Math.min(a,n)*60*1e3,Math.max(a,n)]}function IA(t,e){t+=e*60*1e3;let r=new Date(t);return{year:r.getUTCFullYear(),month:r.getUTCMonth()+1,day:r.getUTCDate(),hour:r.getUTCHours(),minute:r.getUTCMinutes(),second:r.getUTCSeconds(),millisecond:r.getUTCMilliseconds()}}function FA(t,e,r){return mg(GA(t),e,r)}function uh(t,e){let r=t.o,o=t.c.year+Math.trunc(e.years),a=t.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,n={...t.c,year:o,month:a,day:Math.min(t.c.day,TA(o,a))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},s=ge.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),i=GA(n),[l,u]=mg(i,r,t.zone);return s!==0&&(l+=s,u=t.zone.offset(l)),{ts:l,o:u}}function bl(t,e,r,o,a,n){let{setZone:s,zone:i}=r;if(t&&Object.keys(t).length!==0||e){let l=e||i,u=qe.fromObject(t,{...r,zone:l,specificOffset:n});return s?u:u.setZone(i)}else return qe.invalid(new Kr("unparsable",`the input "${a}" can't be parsed as ${o}`))}function $A(t,e,r=!0){return t.isValid?Wr.create(St.create("en-US"),{allowZ:r,forceSimple:!0}).formatDateTimeFromString(t,e):null}function ic(t,e){let r=t.c.year>9999||t.c.year<0,o="";return r&&t.c.year>=0&&(o+="+"),o+=qt(t.c.year,r?6:4),e?(o+="-",o+=qt(t.c.month),o+="-",o+=qt(t.c.day)):(o+=qt(t.c.month),o+=qt(t.c.day)),o}function Ah(t,e,r,o,a,n){let s=qt(t.c.hour);return e?(s+=":",s+=qt(t.c.minute),(t.c.millisecond!==0||t.c.second!==0||!r)&&(s+=":")):s+=qt(t.c.minute),(t.c.millisecond!==0||t.c.second!==0||!r)&&(s+=qt(t.c.second),(t.c.millisecond!==0||!o)&&(s+=".",s+=qt(t.c.millisecond,3))),a&&(t.isOffsetFixed&&t.offset===0&&!n?s+="Z":t.o<0?(s+="-",s+=qt(Math.trunc(-t.o/60)),s+=":",s+=qt(Math.trunc(-t.o%60))):(s+="+",s+=qt(Math.trunc(t.o/60)),s+=":",s+=qt(Math.trunc(t.o%60)))),n&&(s+="["+t.zone.ianaName+"]"),s}var _g={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},nw={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},sw={ordinal:1,hour:0,minute:0,second:0,millisecond:0},hg=["year","month","day","hour","minute","second","millisecond"],iw=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],lw=["year","ordinal","hour","minute","second","millisecond"];function fh(t){let e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new BA(t);return e}function dh(t,e){let r=un(e.zone,Bt.defaultZone),o=St.fromObject(e),a=Bt.now(),n,s;if(Ue(t.year))n=a;else{for(let u of hg)Ue(t[u])&&(t[u]=_g[u]);let i=cg(t)||pg(t);if(i)return qe.invalid(i);let l=r.offset(a);[n,s]=FA(t,l,r)}return new qe({ts:n,zone:r,loc:o,o:s})}function ch(t,e,r){let o=Ue(r.round)?!0:r.round,a=(s,i)=>(s=Fc(s,o||r.calendary?0:2,!0),e.loc.clone(r).relFormatter(r).format(s,i)),n=s=>r.calendary?e.hasSame(t,s)?0:e.startOf(s).diff(t.startOf(s),s).get(s):e.diff(t,s).get(s);if(r.unit)return a(n(r.unit),r.unit);for(let s of r.units){let i=n(s);if(Math.abs(i)>=1)return a(i,s)}return a(t>e?-0:0,r.units[r.units.length-1])}function ph(t){let e={},r;return t.length>0&&typeof t[t.length-1]=="object"?(e=t[t.length-1],r=Array.from(t).slice(0,t.length-1)):r=Array.from(t),[e,r]}var qe=class t{constructor(e){let r=e.zone||Bt.defaultZone,o=e.invalid||(Number.isNaN(e.ts)?new Kr("invalid input"):null)||(r.isValid?null:EA(r));this.ts=Ue(e.ts)?Bt.now():e.ts;let a=null,n=null;if(!o)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(r))[a,n]=[e.old.c,e.old.o];else{let i=r.offset(this.ts);a=IA(this.ts,i),o=Number.isNaN(a.year)?new Kr("invalid input"):null,a=o?null:a,n=o?null:i}this._zone=r,this.loc=e.loc||St.create(),this.invalid=o,this.weekData=null,this.c=a,this.o=n,this.isLuxonDateTime=!0}static now(){return new t({})}static local(){let[e,r]=ph(arguments),[o,a,n,s,i,l,u]=r;return dh({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static utc(){let[e,r]=ph(arguments),[o,a,n,s,i,l,u]=r;return e.zone=ho.utcInstance,dh({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static fromJSDate(e,r={}){let o=Mk(e)?e.valueOf():NaN;if(Number.isNaN(o))return t.invalid("invalid input");let a=un(r.zone,Bt.defaultZone);return a.isValid?new t({ts:o,zone:a,loc:St.fromObject(r)}):t.invalid(EA(a))}static fromMillis(e,r={}){if(Yn(e))return e<-lh||e>lh?t.invalid("Timestamp out of range"):new t({ts:e,zone:un(r.zone,Bt.defaultZone),loc:St.fromObject(r)});throw new Or(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,r={}){if(Yn(e))return new t({ts:e*1e3,zone:un(r.zone,Bt.defaultZone),loc:St.fromObject(r)});throw new Or("fromSeconds requires a numerical input")}static fromObject(e,r={}){e=e||{};let o=un(r.zone,Bt.defaultZone);if(!o.isValid)return t.invalid(EA(o));let a=Bt.now(),n=Ue(r.specificOffset)?o.offset(a):r.specificOffset,s=MA(e,fh),i=!Ue(s.ordinal),l=!Ue(s.year),u=!Ue(s.month)||!Ue(s.day),A=l||u,c=s.weekYear||s.weekNumber,p=St.fromObject(r);if((A||i)&&c)throw new Kn("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(u&&i)throw new Kn("Can't mix ordinal dates with month/day");let m=c||s.weekday&&!A,h,y,I=IA(a,n);m?(h=iw,y=nw,I=vc(I)):i?(h=lw,y=sw,I=ac(I)):(h=hg,y=_g);let F=!1;for(let C of h){let P=s[C];Ue(P)?F?s[C]=y[C]:s[C]=I[C]:F=!0}let R=m?ow(s):i?aw(s):cg(s),B=R||pg(s);if(B)return t.invalid(B);let j=m?sh(s):i?ih(s):s,[E,D]=FA(j,n,o),k=new t({ts:E,zone:o,o:D,loc:p});return s.weekday&&A&&e.weekday!==k.weekday?t.invalid("mismatched weekday",`you can't specify both a weekday of ${s.weekday} and a date of ${k.toISO()}`):k}static fromISO(e,r={}){let[o,a]=yb(e);return bl(o,a,r,"ISO 8601",e)}static fromRFC2822(e,r={}){let[o,a]=Eb(e);return bl(o,a,r,"RFC 2822",e)}static fromHTTP(e,r={}){let[o,a]=Ib(e);return bl(o,a,r,"HTTP",r)}static fromFormat(e,r,o={}){if(Ue(e)||Ue(r))throw new Or("fromFormat requires an input string and a format");let{locale:a=null,numberingSystem:n=null}=o,s=St.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0}),[i,l,u,A]=rw(s,e,r);return A?t.invalid(A):bl(i,l,o,`format ${r}`,e,u)}static fromString(e,r,o={}){return t.fromFormat(e,r,o)}static fromSQL(e,r={}){let[o,a]=Tb(e);return bl(o,a,r,"SQL",e)}static invalid(e,r=null){if(!e)throw new Or("need to specify a reason the DateTime is invalid");let o=e instanceof Kr?e:new Kr(e,r);if(Bt.throwOnInvalid)throw new uc(o);return new t({invalid:o})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,r={}){let o=ig(e,St.fromObject(r));return o?o.map(a=>a?a.val:null).join(""):null}static expandFormat(e,r={}){return ng(Wr.parseFormat(e),St.fromObject(r)).map(a=>a.val).join("")}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?sc(this).weekYear:NaN}get weekNumber(){return this.isValid?sc(this).weekNumber:NaN}get weekday(){return this.isValid?sc(this).weekday:NaN}get ordinal(){return this.isValid?ac(this.c).ordinal:NaN}get monthShort(){return this.isValid?si.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?si.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?si.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?si.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let e=864e5,r=6e4,o=GA(this.c),a=this.zone.offset(o-e),n=this.zone.offset(o+e),s=this.zone.offset(o-a*r),i=this.zone.offset(o-n*r);if(s===i)return[this];let l=o-s*r,u=o-i*r,A=IA(l,s),c=IA(u,i);return A.hour===c.hour&&A.minute===c.minute&&A.second===c.second&&A.millisecond===c.millisecond?[Wn(this,{ts:l}),Wn(this,{ts:u})]:[this]}get isInLeapYear(){return Bl(this.year)}get daysInMonth(){return TA(this.year,this.month)}get daysInYear(){return this.isValid?Il(this.year):NaN}get weeksInWeekYear(){return this.isValid?OA(this.weekYear):NaN}resolvedLocaleOptions(e={}){let{locale:r,numberingSystem:o,calendar:a}=Wr.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:r,numberingSystem:o,outputCalendar:a}}toUTC(e=0,r={}){return this.setZone(ho.instance(e),r)}toLocal(){return this.setZone(Bt.defaultZone)}setZone(e,{keepLocalTime:r=!1,keepCalendarTime:o=!1}={}){if(e=un(e,Bt.defaultZone),e.equals(this.zone))return this;if(e.isValid){let a=this.ts;if(r||o){let n=e.offset(this.ts),s=this.toObject();[a]=FA(s,n,e)}return Wn(this,{ts:a,zone:e})}else return t.invalid(EA(e))}reconfigure({locale:e,numberingSystem:r,outputCalendar:o}={}){let a=this.loc.clone({locale:e,numberingSystem:r,outputCalendar:o});return Wn(this,{loc:a})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;let r=MA(e,fh),o=!Ue(r.weekYear)||!Ue(r.weekNumber)||!Ue(r.weekday),a=!Ue(r.ordinal),n=!Ue(r.year),s=!Ue(r.month)||!Ue(r.day),i=n||s,l=r.weekYear||r.weekNumber;if((i||a)&&l)throw new Kn("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(s&&a)throw new Kn("Can't mix ordinal dates with month/day");let u;o?u=sh({...vc(this.c),...r}):Ue(r.ordinal)?(u={...this.toObject(),...r},Ue(r.day)&&(u.day=Math.min(TA(u.year,u.month),u.day))):u=ih({...ac(this.c),...r});let[A,c]=FA(u,this.o,this.zone);return Wn(this,{ts:A,o:c})}plus(e){if(!this.isValid)return this;let r=ge.fromDurationLike(e);return Wn(this,uh(this,r))}minus(e){if(!this.isValid)return this;let r=ge.fromDurationLike(e).negate();return Wn(this,uh(this,r))}startOf(e){if(!this.isValid)return this;let r={},o=ge.normalizeUnit(e);switch(o){case"years":r.month=1;case"quarters":case"months":r.day=1;case"weeks":case"days":r.hour=0;case"hours":r.minute=0;case"minutes":r.second=0;case"seconds":r.millisecond=0;break}if(o==="weeks"&&(r.weekday=1),o==="quarters"){let a=Math.ceil(this.month/3);r.month=(a-1)*3+1}return this.set(r)}endOf(e){return this.isValid?this.plus({[e]:1}).startOf(e).minus(1):this}toFormat(e,r={}){return this.isValid?Wr.create(this.loc.redefaultToEN(r)).formatDateTimeFromString(this,e):nc}toLocaleString(e=SA,r={}){return this.isValid?Wr.create(this.loc.clone(r),e).formatDateTime(this):nc}toLocaleParts(e={}){return this.isValid?Wr.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:r=!1,suppressMilliseconds:o=!1,includeOffset:a=!0,extendedZone:n=!1}={}){if(!this.isValid)return null;let s=e==="extended",i=ic(this,s);return i+="T",i+=Ah(this,s,r,o,a,n),i}toISODate({format:e="extended"}={}){return this.isValid?ic(this,e==="extended"):null}toISOWeekDate(){return $A(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:r=!1,includeOffset:o=!0,includePrefix:a=!1,extendedZone:n=!1,format:s="extended"}={}){return this.isValid?(a?"T":"")+Ah(this,s==="extended",r,e,o,n):null}toRFC2822(){return $A(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return $A(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?ic(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:r=!1,includeOffsetSpace:o=!0}={}){let a="HH:mm:ss.SSS";return(r||e)&&(o&&(a+=" "),r?a+="z":e&&(a+="ZZ")),$A(this,a,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():nc}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};let r={...this.c};return e.includeConfig&&(r.outputCalendar=this.outputCalendar,r.numberingSystem=this.loc.numberingSystem,r.locale=this.loc.locale),r}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,r="milliseconds",o={}){if(!this.isValid||!e.isValid)return ge.invalid("created by diffing an invalid DateTime");let a={locale:this.locale,numberingSystem:this.numberingSystem,...o},n=Nk(r).map(ge.normalizeUnit),s=e.valueOf()>this.valueOf(),i=s?this:e,l=s?e:this,u=Lb(i,l,n,a);return s?u.negate():u}diffNow(e="milliseconds",r={}){return this.diff(t.now(),e,r)}until(e){return this.isValid?li.fromDateTimes(this,e):this}hasSame(e,r){if(!this.isValid)return!1;let o=e.valueOf(),a=this.setZone(e.zone,{keepLocalTime:!0});return a.startOf(r)<=o&&o<=a.endOf(r)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;let r=e.base||t.fromObject({},{zone:this.zone}),o=e.padding?thisr.valueOf(),Math.min)}static max(...e){if(!e.every(t.isDateTime))throw new Or("max requires all arguments be DateTimes");return J_(e,r=>r.valueOf(),Math.max)}static fromFormatExplain(e,r,o={}){let{locale:a=null,numberingSystem:n=null}=o,s=St.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0});return sg(s,e,r)}static fromStringExplain(e,r,o={}){return t.fromFormatExplain(e,r,o)}static get DATE_SHORT(){return SA}static get DATE_MED(){return xh}static get DATE_MED_WITH_WEEKDAY(){return xk}static get DATE_FULL(){return vh}static get DATE_HUGE(){return kh}static get TIME_SIMPLE(){return bh}static get TIME_WITH_SECONDS(){return wh}static get TIME_WITH_SHORT_OFFSET(){return yh}static get TIME_WITH_LONG_OFFSET(){return Eh}static get TIME_24_SIMPLE(){return Ih}static get TIME_24_WITH_SECONDS(){return $h}static get TIME_24_WITH_SHORT_OFFSET(){return Dh}static get TIME_24_WITH_LONG_OFFSET(){return Fh}static get DATETIME_SHORT(){return Bh}static get DATETIME_SHORT_WITH_SECONDS(){return Sh}static get DATETIME_MED(){return Ch}static get DATETIME_MED_WITH_SECONDS(){return Th}static get DATETIME_MED_WITH_WEEKDAY(){return vk}static get DATETIME_FULL(){return Oh}static get DATETIME_FULL_WITH_SECONDS(){return Mh}static get DATETIME_HUGE(){return Nh}static get DATETIME_HUGE_WITH_SECONDS(){return qh}};function wl(t){if(qe.isDateTime(t))return t;if(t&&t.valueOf&&Yn(t.valueOf()))return qe.fromJSDate(t);if(t&&typeof t=="object")return qe.fromObject(t);throw new Or(`Unknown datetime argument: ${t}, of type ${typeof t}`)}var Oc={renderNullAs:"\\-",taskCompletionTracking:!1,taskCompletionUseEmojiShorthand:!1,taskCompletionText:"completion",taskCompletionDateFormat:"yyyy-MM-dd",recursiveSubTaskCompletion:!1,warnOnEmptyResult:!0,refreshEnabled:!0,refreshInterval:2500,defaultDateFormat:"MMMM dd, yyyy",defaultDateTimeFormat:"h:mm a - MMMM dd, yyyy",maxRecursiveRenderDepth:4,tableIdColumnName:"File",tableGroupColumnName:"Group",showResultCount:!0},uw={allowHtml:!0};({...Oc,...uw});var kc=class t{constructor(e){Ze(this,"value");Ze(this,"successful");this.value=e,this.successful=!0}map(e){return new t(e(this.value))}flatMap(e){return e(this.value)}mapErr(e){return this}bimap(e,r){return this.map(e)}orElse(e){return this.value}cast(){return this}orElseThrow(e){return this.value}},bc=class t{constructor(e){Ze(this,"error");Ze(this,"successful");this.error=e,this.successful=!1}map(e){return this}flatMap(e){return this}mapErr(e){return new t(e(this.error))}bimap(e,r){return this.mapErr(r)}orElse(e){return e}cast(){return this}orElseThrow(e){throw e?new Error(e(this.error)):new Error(""+this.error)}},NA;(function(t){function e(n){return new kc(n)}t.success=e;function r(n){return new bc(n)}t.failure=r;function o(n,s,i){return n.successful?s.successful?i(n.value,s.value):r(s.error):r(n.error)}t.flatMap2=o;function a(n,s,i){return o(n,s,(l,u)=>e(i(l,u)))}t.map2=a})(NA||(NA={}));var Aw=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},qA={exports:{}};qA.exports;(function(t,e){(function(r,o){t.exports=o()})(typeof self<"u"?self:Aw,function(){return function(r){var o={};function a(n){if(o[n])return o[n].exports;var s=o[n]={i:n,l:!1,exports:{}};return r[n].call(s.exports,s,s.exports,a),s.l=!0,s.exports}return a.m=r,a.c=o,a.d=function(n,s,i){a.o(n,s)||Object.defineProperty(n,s,{configurable:!1,enumerable:!0,get:i})},a.r=function(n){Object.defineProperty(n,"__esModule",{value:!0})},a.n=function(n){var s=n&&n.__esModule?function(){return n.default}:function(){return n};return a.d(s,"a",s),s},a.o=function(n,s){return Object.prototype.hasOwnProperty.call(n,s)},a.p="",a(a.s=0)}([function(r,o,a){function n(_){if(!(this instanceof n))return new n(_);this._=_}var s=n.prototype;function i(_,x){for(var $=0;$<_;$++)x($)}function l(_,x,$){return function(O,V){i(V.length,function(z){O(V[z],z,V)})}(function(O,V,z){x=_(x,O,V,z)},$),x}function u(_,x){return l(function($,O,V,z){return $.concat([_(O,V,z)])},[],x)}function A(_,x){var $={v:0,buf:x};return i(_,function(){var O;$={v:$.v<<1|(O=$.buf,O[0]>>7),buf:function(V){var z=l(function(W,Ie,pt,Ir){return W.concat(pt===Ir.length-1?Buffer.from([Ie,0]).readUInt16BE(0):Ir.readUInt16BE(pt))},[],V);return Buffer.from(u(function(W){return(W<<1&65535)>>8},z))}($.buf)}}),$}function c(){return typeof Buffer<"u"}function p(){if(!c())throw new Error("Buffer global does not exist; please use webpack if you need to parse Buffers in the browser.")}function m(_){p();var x=l(function(z,W){return z+W},0,_);if(x%8!=0)throw new Error("The bits ["+_.join(", ")+"] add up to "+x+" which is not an even number of bytes; the total should be divisible by 8");var $,O=x/8,V=($=function(z){return z>48},l(function(z,W){return z||($(W)?W:z)},null,_));if(V)throw new Error(V+" bit range requested exceeds 48 bit (6 byte) Number max.");return new n(function(z,W){var Ie=O+W;return Ie>z.length?C(W,O.toString()+" bytes"):k(Ie,l(function(pt,Ir){var lr=A(Ir,pt.buf);return{coll:pt.coll.concat(lr.v),buf:lr.buf}},{coll:[],buf:z.slice(W,Ie)},_).coll)})}function h(_,x){return new n(function($,O){return p(),O+x>$.length?C(O,x+" bytes for "+_):k(O+x,$.slice(O,O+x))})}function y(_,x){if(typeof($=x)!="number"||Math.floor($)!==$||x<0||x>6)throw new Error(_+" requires integer length in range [0, 6].");var $}function I(_){return y("uintBE",_),h("uintBE("+_+")",_).map(function(x){return x.readUIntBE(0,_)})}function F(_){return y("uintLE",_),h("uintLE("+_+")",_).map(function(x){return x.readUIntLE(0,_)})}function R(_){return y("intBE",_),h("intBE("+_+")",_).map(function(x){return x.readIntBE(0,_)})}function B(_){return y("intLE",_),h("intLE("+_+")",_).map(function(x){return x.readIntLE(0,_)})}function j(_){return _ instanceof n}function E(_){return{}.toString.call(_)==="[object Array]"}function D(_){return c()&&Buffer.isBuffer(_)}function k(_,x){return{status:!0,index:_,value:x,furthest:-1,expected:[]}}function C(_,x){return E(x)||(x=[x]),{status:!1,index:-1,value:null,furthest:_,expected:x}}function P(_,x){if(!x||_.furthest>x.furthest)return _;var $=_.furthest===x.furthest?function(O,V){if(function(){if(n._supportsSet!==void 0)return n._supportsSet;var Ea=typeof Set<"u";return n._supportsSet=Ea,Ea}()&&Array.from){for(var z=new Set(O),W=0;W=0;){if(W in $){O=$[W].line,z===0&&(z=$[W].lineStart);break}(_.charAt(W)===` +"use strict";var ek=Object.create;var pl=Object.defineProperty;var tk=Object.getOwnPropertyDescriptor;var rk=Object.getOwnPropertyNames;var ok=Object.getPrototypeOf,ak=Object.prototype.hasOwnProperty;var e_=t=>{throw TypeError(t)};var nk=(t,e,r)=>e in t?pl(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var sk=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),t_=(t,e)=>{for(var r in e)pl(t,r,{get:e[r],enumerable:!0})},r_=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of rk(e))!ak.call(t,a)&&a!==r&&pl(t,a,{get:()=>e[a],enumerable:!(o=tk(e,a))||o.enumerable});return t};var ik=(t,e,r)=>(r=t!=null?ek(ok(t)):{},r_(e||!t||!t.__esModule?pl(r,"default",{value:t,enumerable:!0}):r,t)),lk=t=>r_(pl({},"__esModule",{value:!0}),t);var Ye=(t,e,r)=>nk(t,typeof e!="symbol"?e+"":e,r),MA=(t,e,r)=>e.has(t)||e_("Cannot "+r);var ye=(t,e,r)=>(MA(t,e,"read from private field"),r?r.call(t):e.get(t)),zt=(t,e,r)=>e.has(t)?e_("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),ur=(t,e,r,o)=>(MA(t,e,"write to private field"),o?o.call(t,r):e.set(t,r),r),Da=(t,e,r)=>(MA(t,e,"access private method"),r);var o_=(()=>{for(var t=new Uint8Array(128),e=0;e<64;e++)t[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return r=>{for(var o=r.length,a=new Uint8Array((o-(r[o-1]=="=")-(r[o-2]=="="))*3/4|0),n=0,s=0;n>4,a[s++]=l<<4|u>>2,a[s++]=u<<6|f}return a}})();var kg=sk(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});require("obsidian");var Sa=class extends Error{},fc=class extends Sa{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}},dc=class extends Sa{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}},Ac=class extends Sa{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}},Zn=class extends Sa{},Sf=class extends Sa{constructor(e){super(`Invalid unit ${e}`)}},Mr=class extends Sa{},oa=class extends Sa{constructor(){super("Zone is an abstract class")}},ee="numeric",No="short",Jr="long",Cf={year:ee,month:ee,day:ee},kh={year:ee,month:No,day:ee},kk={year:ee,month:No,day:ee,weekday:No},bh={year:ee,month:Jr,day:ee},wh={year:ee,month:Jr,day:ee,weekday:Jr},yh={hour:ee,minute:ee},Eh={hour:ee,minute:ee,second:ee},$h={hour:ee,minute:ee,second:ee,timeZoneName:No},Ih={hour:ee,minute:ee,second:ee,timeZoneName:Jr},Dh={hour:ee,minute:ee,hourCycle:"h23"},Fh={hour:ee,minute:ee,second:ee,hourCycle:"h23"},Bh={hour:ee,minute:ee,second:ee,hourCycle:"h23",timeZoneName:No},Sh={hour:ee,minute:ee,second:ee,hourCycle:"h23",timeZoneName:Jr},Ch={year:ee,month:ee,day:ee,hour:ee,minute:ee},Th={year:ee,month:ee,day:ee,hour:ee,minute:ee,second:ee},Oh={year:ee,month:No,day:ee,hour:ee,minute:ee},Mh={year:ee,month:No,day:ee,hour:ee,minute:ee,second:ee},bk={year:ee,month:No,day:ee,weekday:No,hour:ee,minute:ee},Nh={year:ee,month:Jr,day:ee,hour:ee,minute:ee,timeZoneName:No},Ph={year:ee,month:Jr,day:ee,hour:ee,minute:ee,second:ee,timeZoneName:No},qh={year:ee,month:Jr,day:ee,weekday:Jr,hour:ee,minute:ee,timeZoneName:Jr},Lh={year:ee,month:Jr,day:ee,weekday:Jr,hour:ee,minute:ee,second:ee,timeZoneName:Jr},Xn=class{get type(){throw new oa}get name(){throw new oa}get ianaName(){return this.name}get isUniversal(){throw new oa}offsetName(e,r){throw new oa}formatOffset(e,r){throw new oa}offset(e){throw new oa}equals(e){throw new oa}get isValid(){throw new oa}},rc=null,Tf=class t extends Xn{static get instance(){return rc===null&&(rc=new t),rc}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:r,locale:o}){return Gh(e,r,o)}formatOffset(e,r){return Il(this.offset(e),r)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}},Ff={};function wk(t){return Ff[t]||(Ff[t]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"})),Ff[t]}var yk={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function Ek(t,e){let r=t.format(e).replace(/\u200E/g,""),o=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(r),[,a,n,s,i,l,u,f]=o;return[s,a,n,i,l,u,f]}function $k(t,e){let r=t.formatToParts(e),o=[];for(let a=0;a=0?h:1e3+h,(p-m)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}},U_={};function Ik(t,e={}){let r=JSON.stringify([t,e]),o=U_[r];return o||(o=new Intl.ListFormat(t,e),U_[r]=o),o}var cc={};function pc(t,e={}){let r=JSON.stringify([t,e]),o=cc[r];return o||(o=new Intl.DateTimeFormat(t,e),cc[r]=o),o}var mc={};function Dk(t,e={}){let r=JSON.stringify([t,e]),o=mc[r];return o||(o=new Intl.NumberFormat(t,e),mc[r]=o),o}var _c={};function Fk(t,e={}){let{base:r,...o}=e,a=JSON.stringify([t,o]),n=_c[a];return n||(n=new Intl.RelativeTimeFormat(t,e),_c[a]=n),n}var El=null;function Bk(){return El||(El=new Intl.DateTimeFormat().resolvedOptions().locale,El)}function Sk(t){let e=t.indexOf("-x-");e!==-1&&(t=t.substring(0,e));let r=t.indexOf("-u-");if(r===-1)return[t];{let o,a;try{o=pc(t).resolvedOptions(),a=t}catch{let l=t.substring(0,r);o=pc(l).resolvedOptions(),a=l}let{numberingSystem:n,calendar:s}=o;return[a,n,s]}}function Ck(t,e,r){return(r||e)&&(t.includes("-u-")||(t+="-u"),r&&(t+=`-ca-${r}`),e&&(t+=`-nu-${e}`)),t}function Tk(t){let e=[];for(let r=1;r<=12;r++){let o=qe.utc(2009,r,1);e.push(t(o))}return e}function Ok(t){let e=[];for(let r=1;r<=7;r++){let o=qe.utc(2016,11,13+r);e.push(t(o))}return e}function yf(t,e,r,o){let a=t.listingMode();return a==="error"?null:a==="en"?r(e):o(e)}function Mk(t){return t.numberingSystem&&t.numberingSystem!=="latn"?!1:t.numberingSystem==="latn"||!t.locale||t.locale.startsWith("en")||new Intl.DateTimeFormat(t.intl).resolvedOptions().numberingSystem==="latn"}var hc=class{constructor(e,r,o){this.padTo=o.padTo||0,this.floor=o.floor||!1;let{padTo:a,floor:n,...s}=o;if(!r||Object.keys(s).length>0){let i={useGrouping:!1,...o};o.padTo>0&&(i.minimumIntegerDigits=o.padTo),this.inf=Dk(e,i)}}format(e){if(this.inf){let r=this.floor?Math.floor(e):e;return this.inf.format(r)}else{let r=this.floor?Math.floor(e):Bc(e,3);return Pt(r,this.padTo)}}},gc=class{constructor(e,r,o){this.opts=o,this.originalZone=void 0;let a;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){let s=-1*(e.offset/60),i=s>=0?`Etc/GMT+${s}`:`Etc/GMT${s}`;e.offset!==0&&dn.create(i).valid?(a=i,this.dt=e):(a="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,a=e.zone.name):(a="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);let n={...this.opts};n.timeZone=n.timeZone||a,this.dtf=pc(r,n)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){let e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(r=>{if(r.type==="timeZoneName"){let o=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...r,value:o}}else return r}):e}resolvedOptions(){return this.dtf.resolvedOptions()}},xc=class{constructor(e,r,o){this.opts={style:"long",...o},!r&&Rh()&&(this.rtf=Fk(e,o))}format(e,r){return this.rtf?this.rtf.format(e,r):Xk(r,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,r){return this.rtf?this.rtf.formatToParts(e,r):[]}},St=class t{static fromOpts(e){return t.create(e.locale,e.numberingSystem,e.outputCalendar,e.defaultToEN)}static create(e,r,o,a=!1){let n=e||Bt.defaultLocale,s=n||(a?"en-US":Bk()),i=r||Bt.defaultNumberingSystem,l=o||Bt.defaultOutputCalendar;return new t(s,i,l,n)}static resetCache(){El=null,cc={},mc={},_c={}}static fromObject({locale:e,numberingSystem:r,outputCalendar:o}={}){return t.create(e,r,o)}constructor(e,r,o,a){let[n,s,i]=Sk(e);this.locale=n,this.numberingSystem=r||s||null,this.outputCalendar=o||i||null,this.intl=Ck(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=a,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=Mk(this)),this.fastNumbersCached}listingMode(){let e=this.isEnglish(),r=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&r?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:t.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,r=!1){return yf(this,e,Uh,()=>{let o=r?{month:e,day:"numeric"}:{month:e},a=r?"format":"standalone";return this.monthsCache[a][e]||(this.monthsCache[a][e]=Tk(n=>this.extract(n,o,"month"))),this.monthsCache[a][e]})}weekdays(e,r=!1){return yf(this,e,Kh,()=>{let o=r?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},a=r?"format":"standalone";return this.weekdaysCache[a][e]||(this.weekdaysCache[a][e]=Ok(n=>this.extract(n,o,"weekday"))),this.weekdaysCache[a][e]})}meridiems(){return yf(this,void 0,()=>Zh,()=>{if(!this.meridiemCache){let e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[qe.utc(2016,11,13,9),qe.utc(2016,11,13,19)].map(r=>this.extract(r,e,"dayperiod"))}return this.meridiemCache})}eras(e){return yf(this,e,Yh,()=>{let r={era:e};return this.eraCache[e]||(this.eraCache[e]=[qe.utc(-40,1,1),qe.utc(2017,1,1)].map(o=>this.extract(o,r,"era"))),this.eraCache[e]})}extract(e,r,o){let a=this.dtFormatter(e,r),n=a.formatToParts(),s=n.find(i=>i.type.toLowerCase()===o);return s?s.value:null}numberFormatter(e={}){return new hc(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,r={}){return new gc(e,this.intl,r)}relFormatter(e={}){return new xc(this.intl,this.isEnglish(),e)}listFormatter(e={}){return Ik(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}},oc=null,go=class t extends Xn{static get utcInstance(){return oc===null&&(oc=new t(0)),oc}static instance(e){return e===0?t.utcInstance:new t(e)}static parseSpecifier(e){if(e){let r=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(r)return new t(Vf(r[1],r[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${Il(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${Il(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,r){return Il(this.fixed,r)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}},jc=class extends Xn{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}};function fn(t,e){if(Ke(t)||t===null)return e;if(t instanceof Xn)return t;if(Nk(t)){let r=t.toLowerCase();return r==="default"?e:r==="local"||r==="system"?Tf.instance:r==="utc"||r==="gmt"?go.utcInstance:go.parseSpecifier(r)||dn.create(t)}else return Jn(t)?go.instance(t):typeof t=="object"&&"offset"in t&&typeof t.offset=="function"?t:new jc(t)}var z_=()=>Date.now(),W_="system",K_=null,Z_=null,Y_=null,J_=60,X_,Bt=class{static get now(){return z_}static set now(e){z_=e}static set defaultZone(e){W_=e}static get defaultZone(){return fn(W_,Tf.instance)}static get defaultLocale(){return K_}static set defaultLocale(e){K_=e}static get defaultNumberingSystem(){return Z_}static set defaultNumberingSystem(e){Z_=e}static get defaultOutputCalendar(){return Y_}static set defaultOutputCalendar(e){Y_=e}static get twoDigitCutoffYear(){return J_}static set twoDigitCutoffYear(e){J_=e%100}static get throwOnInvalid(){return X_}static set throwOnInvalid(e){X_=e}static resetCaches(){St.resetCache(),dn.resetCache()}};function Ke(t){return typeof t>"u"}function Jn(t){return typeof t=="number"}function Gf(t){return typeof t=="number"&&t%1===0}function Nk(t){return typeof t=="string"}function Pk(t){return Object.prototype.toString.call(t)==="[object Date]"}function Rh(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function qk(t){return Array.isArray(t)?t:[t]}function Q_(t,e,r){if(t.length!==0)return t.reduce((o,a)=>{let n=[e(a),a];return o&&r(o[0],n[0])===o[0]?o:n},null)[1]}function Lk(t,e){return e.reduce((r,o)=>(r[o]=t[o],r),{})}function ui(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function Ba(t,e,r){return Gf(t)&&t>=e&&t<=r}function Rk(t,e){return t-e*Math.floor(t/e)}function Pt(t,e=2){let r=t<0,o;return r?o="-"+(""+-t).padStart(e,"0"):o=(""+t).padStart(e,"0"),o}function un(t){if(!(Ke(t)||t===null||t===""))return parseInt(t,10)}function Wn(t){if(!(Ke(t)||t===null||t===""))return parseFloat(t)}function Fc(t){if(!(Ke(t)||t===null||t==="")){let e=parseFloat("0."+t)*1e3;return Math.floor(e)}}function Bc(t,e,r=!1){let o=10**e;return(r?Math.trunc:Math.round)(t*o)/o}function Bl(t){return t%4===0&&(t%100!==0||t%400===0)}function $l(t){return Bl(t)?366:365}function Of(t,e){let r=Rk(e-1,12)+1,o=t+(e-r)/12;return r===2?Bl(o)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][r-1]}function Hf(t){let e=Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond);return t.year<100&&t.year>=0&&(e=new Date(e),e.setUTCFullYear(t.year,t.month-1,t.day)),+e}function Mf(t){let e=(t+Math.floor(t/4)-Math.floor(t/100)+Math.floor(t/400))%7,r=t-1,o=(r+Math.floor(r/4)-Math.floor(r/100)+Math.floor(r/400))%7;return e===4||o===3?53:52}function vc(t){return t>99?t:t>Bt.twoDigitCutoffYear?1900+t:2e3+t}function Gh(t,e,r,o=null){let a=new Date(t),n={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};o&&(n.timeZone=o);let s={timeZoneName:e,...n},i=new Intl.DateTimeFormat(r,s).formatToParts(a).find(l=>l.type.toLowerCase()==="timezonename");return i?i.value:null}function Vf(t,e){let r=parseInt(t,10);Number.isNaN(r)&&(r=0);let o=parseInt(e,10)||0,a=r<0||Object.is(r,-0)?-o:o;return r*60+a}function Hh(t){let e=Number(t);if(typeof t=="boolean"||t===""||Number.isNaN(e))throw new Mr(`Invalid unit value ${t}`);return e}function Nf(t,e){let r={};for(let o in t)if(ui(t,o)){let a=t[o];if(a==null)continue;r[e(o)]=Hh(a)}return r}function Il(t,e){let r=Math.trunc(Math.abs(t/60)),o=Math.trunc(Math.abs(t%60)),a=t>=0?"+":"-";switch(e){case"short":return`${a}${Pt(r,2)}:${Pt(o,2)}`;case"narrow":return`${a}${r}${o>0?`:${o}`:""}`;case"techie":return`${a}${Pt(r,2)}${Pt(o,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function Uf(t){return Lk(t,["hour","minute","second","millisecond"])}var Gk=["January","February","March","April","May","June","July","August","September","October","November","December"],Vh=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Hk=["J","F","M","A","M","J","J","A","S","O","N","D"];function Uh(t){switch(t){case"narrow":return[...Hk];case"short":return[...Vh];case"long":return[...Gk];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var zh=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Wh=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Vk=["M","T","W","T","F","S","S"];function Kh(t){switch(t){case"narrow":return[...Vk];case"short":return[...Wh];case"long":return[...zh];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var Zh=["AM","PM"],Uk=["Before Christ","Anno Domini"],zk=["BC","AD"],Wk=["B","A"];function Yh(t){switch(t){case"narrow":return[...Wk];case"short":return[...zk];case"long":return[...Uk];default:return null}}function Kk(t){return Zh[t.hour<12?0:1]}function Zk(t,e){return Kh(e)[t.weekday-1]}function Yk(t,e){return Uh(e)[t.month-1]}function Jk(t,e){return Yh(e)[t.year<0?0:1]}function Xk(t,e,r="always",o=!1){let a={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},n=["hours","minutes","seconds"].indexOf(t)===-1;if(r==="auto"&&n){let c=t==="days";switch(e){case 1:return c?"tomorrow":`next ${a[t][0]}`;case-1:return c?"yesterday":`last ${a[t][0]}`;case 0:return c?"today":`this ${a[t][0]}`}}let s=Object.is(e,-0)||e<0,i=Math.abs(e),l=i===1,u=a[t],f=o?l?u[1]:u[2]||u[1]:l?a[t][0]:t;return s?`${i} ${f} ago`:`in ${i} ${f}`}function eh(t,e){let r="";for(let o of t)o.literal?r+=o.val:r+=e(o.val);return r}var Qk={D:Cf,DD:kh,DDD:bh,DDDD:wh,t:yh,tt:Eh,ttt:$h,tttt:Ih,T:Dh,TT:Fh,TTT:Bh,TTTT:Sh,f:Ch,ff:Oh,fff:Nh,ffff:qh,F:Th,FF:Mh,FFF:Ph,FFFF:Lh},Zr=class t{static create(e,r={}){return new t(e,r)}static parseFormat(e){let r=null,o="",a=!1,n=[];for(let s=0;s0&&n.push({literal:a||/^\s+$/.test(o),val:o}),r=null,o="",a=!a):a||i===r?o+=i:(o.length>0&&n.push({literal:/^\s+$/.test(o),val:o}),o=i,r=i)}return o.length>0&&n.push({literal:a||/^\s+$/.test(o),val:o}),n}static macroTokenToFormatOpts(e){return Qk[e]}constructor(e,r){this.opts=r,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,r){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...r}).format()}dtFormatter(e,r={}){return this.loc.dtFormatter(e,{...this.opts,...r})}formatDateTime(e,r){return this.dtFormatter(e,r).format()}formatDateTimeParts(e,r){return this.dtFormatter(e,r).formatToParts()}formatInterval(e,r){return this.dtFormatter(e.start,r).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,r){return this.dtFormatter(e,r).resolvedOptions()}num(e,r=0){if(this.opts.forceSimple)return Pt(e,r);let o={...this.opts};return r>0&&(o.padTo=r),this.loc.numberFormatter(o).format(e)}formatDateTimeFromString(e,r){let o=this.loc.listingMode()==="en",a=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",n=(m,h)=>this.loc.extract(e,m,h),s=m=>e.isOffsetFixed&&e.offset===0&&m.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,m.format):"",i=()=>o?Kk(e):n({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(m,h)=>o?Yk(e,m):n(h?{month:m}:{month:m,day:"numeric"},"month"),u=(m,h)=>o?Zk(e,m):n(h?{weekday:m}:{weekday:m,month:"long",day:"numeric"},"weekday"),f=m=>{let h=t.macroTokenToFormatOpts(m);return h?this.formatWithSystemDefault(e,h):m},c=m=>o?Jk(e,m):n({era:m},"era"),p=m=>{switch(m){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return s({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return s({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return s({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return i();case"d":return a?n({day:"numeric"},"day"):this.num(e.day);case"dd":return a?n({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return a?n({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return a?n({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return a?n({month:"numeric"},"month"):this.num(e.month);case"MM":return a?n({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return a?n({year:"numeric"},"year"):this.num(e.year);case"yy":return a?n({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return a?n({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return a?n({year:"numeric"},"year"):this.num(e.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return f(m)}};return eh(t.parseFormat(r),p)}formatDurationFromString(e,r){let o=l=>{switch(l[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},a=l=>u=>{let f=o(u);return f?this.num(l.get(f),u.length):u},n=t.parseFormat(r),s=n.reduce((l,{literal:u,val:f})=>u?l:l.concat(f),[]),i=e.shiftTo(...s.map(o).filter(l=>l));return eh(n,a(i))}},Yr=class{constructor(e,r){this.reason=e,this.explanation=r}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}},Jh=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function fi(...t){let e=t.reduce((r,o)=>r+o.source,"");return RegExp(`^${e}$`)}function di(...t){return e=>t.reduce(([r,o,a],n)=>{let[s,i,l]=n(e,a);return[{...r,...s},i||o,l]},[{},null,1]).slice(0,2)}function Ai(t,...e){if(t==null)return[null,null];for(let[r,o]of e){let a=r.exec(t);if(a)return o(a)}return[null,null]}function Xh(...t){return(e,r)=>{let o={},a;for(a=0;am!==void 0&&(h||m&&f)?-m:m;return[{years:p(Wn(r)),months:p(Wn(o)),weeks:p(Wn(a)),days:p(Wn(n)),hours:p(Wn(s)),minutes:p(Wn(i)),seconds:p(Wn(l),l==="-0"),milliseconds:p(Fc(u),c)}]}var Ab={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Tc(t,e,r,o,a,n,s){let i={year:e.length===2?vc(un(e)):un(e),month:Vh.indexOf(r)+1,day:un(o),hour:un(a),minute:un(n)};return s&&(i.second=un(s)),t&&(i.weekday=t.length>3?zh.indexOf(t)+1:Wh.indexOf(t)+1),i}var cb=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function pb(t){let[,e,r,o,a,n,s,i,l,u,f,c]=t,p=Tc(e,a,o,r,n,s,i),m;return l?m=Ab[l]:u?m=0:m=Vf(f,c),[p,new go(m)]}function mb(t){return t.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}var _b=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,hb=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,gb=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function th(t){let[,e,r,o,a,n,s,i]=t;return[Tc(e,a,o,r,n,s,i),go.utcInstance]}function xb(t){let[,e,r,o,a,n,s,i]=t;return[Tc(e,i,r,o,a,n,s),go.utcInstance]}var jb=fi(tb,Cc),vb=fi(rb,Cc),kb=fi(ob,Cc),bb=fi(eg),rg=di(lb,ci,Sl,Cl),wb=di(ab,ci,Sl,Cl),yb=di(nb,ci,Sl,Cl),Eb=di(ci,Sl,Cl);function $b(t){return Ai(t,[jb,rg],[vb,wb],[kb,yb],[bb,Eb])}function Ib(t){return Ai(mb(t),[cb,pb])}function Db(t){return Ai(t,[_b,th],[hb,th],[gb,xb])}function Fb(t){return Ai(t,[fb,db])}var Bb=di(ci);function Sb(t){return Ai(t,[ub,Bb])}var Cb=fi(sb,ib),Tb=fi(tg),Ob=di(ci,Sl,Cl);function Mb(t){return Ai(t,[Cb,rg],[Tb,Ob])}var rh="Invalid Duration",og={weeks:{days:7,hours:168,minutes:10080,seconds:10080*60,milliseconds:10080*60*1e3},days:{hours:24,minutes:1440,seconds:1440*60,milliseconds:1440*60*1e3},hours:{minutes:60,seconds:3600,milliseconds:3600*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},Nb={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:2184*60,seconds:2184*60*60,milliseconds:2184*60*60*1e3},months:{weeks:4,days:30,hours:720,minutes:720*60,seconds:720*60*60,milliseconds:720*60*60*1e3},...og},_o=146097/400,ai=146097/4800,Pb={years:{quarters:4,months:12,weeks:_o/7,days:_o,hours:_o*24,minutes:_o*24*60,seconds:_o*24*60*60,milliseconds:_o*24*60*60*1e3},quarters:{months:3,weeks:_o/28,days:_o/4,hours:_o*24/4,minutes:_o*24*60/4,seconds:_o*24*60*60/4,milliseconds:_o*24*60*60*1e3/4},months:{weeks:ai/7,days:ai,hours:ai*24,minutes:ai*24*60,seconds:ai*24*60*60,milliseconds:ai*24*60*60*1e3},...og},Yn=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],qb=Yn.slice(0).reverse();function ln(t,e,r=!1){let o={values:r?e.values:{...t.values,...e.values||{}},loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy,matrix:e.matrix||t.matrix};return new xe(o)}function ag(t,e){let r=e.milliseconds??0;for(let o of qb.slice(1))e[o]&&(r+=e[o]*t[o].milliseconds);return r}function oh(t,e){let r=ag(t,e)<0?-1:1;Yn.reduceRight((o,a)=>{if(Ke(e[a]))return o;if(o){let n=e[o]*r,s=t[a][o],i=Math.floor(n/s);e[a]+=i*r,e[o]-=i*s*r}return a},null),Yn.reduce((o,a)=>{if(Ke(e[a]))return o;if(o){let n=e[o]%1;e[o]-=n,e[a]+=n*t[o][a]}return a},null)}function Lb(t){let e={};for(let[r,o]of Object.entries(t))o!==0&&(e[r]=o);return e}var xe=class t{constructor(e){let r=e.conversionAccuracy==="longterm"||!1,o=r?Pb:Nb;e.matrix&&(o=e.matrix),this.values=e.values,this.loc=e.loc||St.create(),this.conversionAccuracy=r?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=o,this.isLuxonDuration=!0}static fromMillis(e,r){return t.fromObject({milliseconds:e},r)}static fromObject(e,r={}){if(e==null||typeof e!="object")throw new Mr(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new t({values:Nf(e,t.normalizeUnit),loc:St.fromObject(r),conversionAccuracy:r.conversionAccuracy,matrix:r.matrix})}static fromDurationLike(e){if(Jn(e))return t.fromMillis(e);if(t.isDuration(e))return e;if(typeof e=="object")return t.fromObject(e);throw new Mr(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,r){let[o]=Fb(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,r){let[o]=Sb(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,r=null){if(!e)throw new Mr("need to specify a reason the Duration is invalid");let o=e instanceof Yr?e:new Yr(e,r);if(Bt.throwOnInvalid)throw new Ac(o);return new t({invalid:o})}static normalizeUnit(e){let r={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!r)throw new Sf(e);return r}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,r={}){let o={...r,floor:r.round!==!1&&r.floor!==!1};return this.isValid?Zr.create(this.loc,o).formatDurationFromString(this,e):rh}toHuman(e={}){if(!this.isValid)return rh;let r=Yn.map(o=>{let a=this.values[o];return Ke(a)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:o.slice(0,-1)}).format(a)}).filter(o=>o);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(r)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=Bc(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;let r=this.toMillis();return r<0||r>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},qe.fromMillis(r,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}toMillis(){return this.isValid?ag(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e),o={};for(let a of Yn)(ui(r.values,a)||ui(this.values,a))&&(o[a]=r.get(a)+this.get(a));return ln(this,{values:o},!0)}minus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e);return this.plus(r.negate())}mapUnits(e){if(!this.isValid)return this;let r={};for(let o of Object.keys(this.values))r[o]=Hh(e(this.values[o],o));return ln(this,{values:r},!0)}get(e){return this[t.normalizeUnit(e)]}set(e){if(!this.isValid)return this;let r={...this.values,...Nf(e,t.normalizeUnit)};return ln(this,{values:r})}reconfigure({locale:e,numberingSystem:r,conversionAccuracy:o,matrix:a}={}){let s={loc:this.loc.clone({locale:e,numberingSystem:r}),matrix:a,conversionAccuracy:o};return ln(this,s)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;let e=this.toObject();return oh(this.matrix,e),ln(this,{values:e},!0)}rescale(){if(!this.isValid)return this;let e=Lb(this.normalize().shiftToAll().toObject());return ln(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(s=>t.normalizeUnit(s));let r={},o={},a=this.toObject(),n;for(let s of Yn)if(e.indexOf(s)>=0){n=s;let i=0;for(let u in o)i+=this.matrix[u][s]*o[u],o[u]=0;Jn(a[s])&&(i+=a[s]);let l=Math.trunc(i);r[s]=l,o[s]=(i*1e3-l*1e3)/1e3}else Jn(a[s])&&(o[s]=a[s]);for(let s in o)o[s]!==0&&(r[n]+=s===n?o[s]:o[s]/this.matrix[n][s]);return oh(this.matrix,r),ln(this,{values:r},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;let e={};for(let r of Object.keys(this.values))e[r]=this.values[r]===0?0:-this.values[r];return ln(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function r(o,a){return o===void 0||o===0?a===void 0||a===0:o===a}for(let o of Yn)if(!r(this.values[o],e.values[o]))return!1;return!0}},ni="Invalid Interval";function Rb(t,e){return!t||!t.isValid?li.invalid("missing or invalid start"):!e||!e.isValid?li.invalid("missing or invalid end"):ee:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:r}={}){return this.isValid?t.fromDateTimes(e||this.s,r||this.e):this}splitAt(...e){if(!this.isValid)return[];let r=e.map(wl).filter(s=>this.contains(s)).sort(),o=[],{s:a}=this,n=0;for(;a+this.e?this.e:s;o.push(t.fromDateTimes(a,i)),a=i,n+=1}return o}splitBy(e){let r=xe.fromDurationLike(e);if(!this.isValid||!r.isValid||r.as("milliseconds")===0)return[];let{s:o}=this,a=1,n,s=[];for(;ol*a));n=+i>+this.e?this.e:i,s.push(t.fromDateTimes(o,n)),o=n,a+=1}return s}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;let r=this.s>e.s?this.s:e.s,o=this.e=o?null:t.fromDateTimes(r,o)}union(e){if(!this.isValid)return this;let r=this.se.e?this.e:e.e;return t.fromDateTimes(r,o)}static merge(e){let[r,o]=e.sort((a,n)=>a.s-n.s).reduce(([a,n],s)=>n?n.overlaps(s)||n.abutsStart(s)?[a,n.union(s)]:[a.concat([n]),s]:[a,s],[[],null]);return o&&r.push(o),r}static xor(e){let r=null,o=0,a=[],n=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),s=Array.prototype.concat(...n),i=s.sort((l,u)=>l.time-u.time);for(let l of i)o+=l.type==="s"?1:-1,o===1?r=l.time:(r&&+r!=+l.time&&a.push(t.fromDateTimes(r,l.time)),r=null);return t.merge(a)}difference(...e){return t.xor([this].concat(e)).map(r=>this.intersection(r)).filter(r=>r&&!r.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:ni}toLocaleString(e=Cf,r={}){return this.isValid?Zr.create(this.s.loc.clone(r),e).formatInterval(this):ni}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:ni}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:ni}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:ni}toFormat(e,{separator:r=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${r}${this.e.toFormat(e)}`:ni}toDuration(e,r){return this.isValid?this.e.diff(this.s,e,r):xe.invalid(this.invalidReason)}mapEndpoints(e){return t.fromDateTimes(e(this.s),e(this.e))}},si=class{static hasDST(e=Bt.defaultZone){let r=qe.now().setZone(e).set({month:12});return!e.isUniversal&&r.offset!==r.set({month:6}).offset}static isValidIANAZone(e){return dn.isValidZone(e)}static normalizeZone(e){return fn(e,Bt.defaultZone)}static months(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||St.create(r,o,n)).months(e)}static monthsFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||St.create(r,o,n)).months(e,!0)}static weekdays(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||St.create(r,o,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||St.create(r,o,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return St.create(e).meridiems()}static eras(e="short",{locale:r=null}={}){return St.create(r,null,"gregory").eras(e)}static features(){return{relative:Rh()}}};function ah(t,e){let r=a=>a.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),o=r(e)-r(t);return Math.floor(xe.fromMillis(o).as("days"))}function Gb(t,e,r){let o=[["years",(l,u)=>u.year-l.year],["quarters",(l,u)=>u.quarter-l.quarter+(u.year-l.year)*4],["months",(l,u)=>u.month-l.month+(u.year-l.year)*12],["weeks",(l,u)=>{let f=ah(l,u);return(f-f%7)/7}],["days",ah]],a={},n=t,s,i;for(let[l,u]of o)r.indexOf(l)>=0&&(s=l,a[l]=u(t,e),i=n.plus(a),i>e?(a[l]--,t=n.plus(a),t>e&&(i=t,a[l]--,t=n.plus(a))):t=i);return[t,a,i,s]}function Hb(t,e,r,o){let[a,n,s,i]=Gb(t,e,r),l=e-a,u=r.filter(c=>["hours","minutes","seconds","milliseconds"].indexOf(c)>=0);u.length===0&&(s0?xe.fromMillis(l,o).shiftTo(...u).plus(f):f}var Oc={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},nh={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Vb=Oc.hanidec.replace(/[\[|\]]/g,"").split("");function Ub(t){let e=parseInt(t,10);if(isNaN(e)){e="";for(let r=0;r=n&&o<=s&&(e+=o-n)}}return parseInt(e,10)}else return e}function To({numberingSystem:t},e=""){return new RegExp(`${Oc[t||"latn"]}${e}`)}var zb="missing Intl.DateTimeFormat.formatToParts support";function nt(t,e=r=>r){return{regex:t,deser:([r])=>e(Ub(r))}}var Wb="\xA0",ng=`[ ${Wb}]`,sg=new RegExp(ng,"g");function Kb(t){return t.replace(/\./g,"\\.?").replace(sg,ng)}function sh(t){return t.replace(/\./g,"").replace(sg," ").toLowerCase()}function Oo(t,e){return t===null?null:{regex:RegExp(t.map(Kb).join("|")),deser:([r])=>t.findIndex(o=>sh(r)===sh(o))+e}}function ih(t,e){return{regex:t,deser:([,r,o])=>Vf(r,o),groups:e}}function Ef(t){return{regex:t,deser:([e])=>e}}function Zb(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Yb(t,e){let r=To(e),o=To(e,"{2}"),a=To(e,"{3}"),n=To(e,"{4}"),s=To(e,"{6}"),i=To(e,"{1,2}"),l=To(e,"{1,3}"),u=To(e,"{1,6}"),f=To(e,"{1,9}"),c=To(e,"{2,4}"),p=To(e,"{4,6}"),m=E=>({regex:RegExp(Zb(E.val)),deser:([D])=>D,literal:!0}),y=(E=>{if(t.literal)return m(E);switch(E.val){case"G":return Oo(e.eras("short"),0);case"GG":return Oo(e.eras("long"),0);case"y":return nt(u);case"yy":return nt(c,vc);case"yyyy":return nt(n);case"yyyyy":return nt(p);case"yyyyyy":return nt(s);case"M":return nt(i);case"MM":return nt(o);case"MMM":return Oo(e.months("short",!0),1);case"MMMM":return Oo(e.months("long",!0),1);case"L":return nt(i);case"LL":return nt(o);case"LLL":return Oo(e.months("short",!1),1);case"LLLL":return Oo(e.months("long",!1),1);case"d":return nt(i);case"dd":return nt(o);case"o":return nt(l);case"ooo":return nt(a);case"HH":return nt(o);case"H":return nt(i);case"hh":return nt(o);case"h":return nt(i);case"mm":return nt(o);case"m":return nt(i);case"q":return nt(i);case"qq":return nt(o);case"s":return nt(i);case"ss":return nt(o);case"S":return nt(l);case"SSS":return nt(a);case"u":return Ef(f);case"uu":return Ef(i);case"uuu":return nt(r);case"a":return Oo(e.meridiems(),0);case"kkkk":return nt(n);case"kk":return nt(c,vc);case"W":return nt(i);case"WW":return nt(o);case"E":case"c":return nt(r);case"EEE":return Oo(e.weekdays("short",!1),1);case"EEEE":return Oo(e.weekdays("long",!1),1);case"ccc":return Oo(e.weekdays("short",!0),1);case"cccc":return Oo(e.weekdays("long",!0),1);case"Z":case"ZZ":return ih(new RegExp(`([+-]${i.source})(?::(${o.source}))?`),2);case"ZZZ":return ih(new RegExp(`([+-]${i.source})(${o.source})?`),2);case"z":return Ef(/[a-z_+-/]{1,256}?/i);case" ":return Ef(/[^\S\n\r]/);default:return m(E)}})(t)||{invalidReason:zb};return y.token=t,y}var Jb={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Xb(t,e,r){let{type:o,value:a}=t;if(o==="literal"){let l=/^\s+$/.test(a);return{literal:!l,val:l?" ":a}}let n=e[o],s=o;o==="hour"&&(e.hour12!=null?s=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?s="hour12":s="hour24":s=r.hour12?"hour12":"hour24");let i=Jb[s];if(typeof i=="object"&&(i=i[n]),i)return{literal:!1,val:i}}function Qb(t){return[`^${t.map(r=>r.regex).reduce((r,o)=>`${r}(${o.source})`,"")}$`,t]}function ew(t,e,r){let o=t.match(e);if(o){let a={},n=1;for(let s in r)if(ui(r,s)){let i=r[s],l=i.groups?i.groups+1:1;!i.literal&&i.token&&(a[i.token.val[0]]=i.deser(o.slice(n,n+l))),n+=l}return[o,a]}else return[o,{}]}function tw(t){let e=n=>{switch(n){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}},r=null,o;return Ke(t.z)||(r=dn.create(t.z)),Ke(t.Z)||(r||(r=new go(t.Z)),o=t.Z),Ke(t.q)||(t.M=(t.q-1)*3+1),Ke(t.h)||(t.h<12&&t.a===1?t.h+=12:t.h===12&&t.a===0&&(t.h=0)),t.G===0&&t.y&&(t.y=-t.y),Ke(t.u)||(t.S=Fc(t.u)),[Object.keys(t).reduce((n,s)=>{let i=e(s);return i&&(n[i]=t[s]),n},{}),r,o]}var ac=null;function rw(){return ac||(ac=qe.fromMillis(1555555555555)),ac}function ow(t,e){if(t.literal)return t;let r=Zr.macroTokenToFormatOpts(t.val),o=ug(r,e);return o==null||o.includes(void 0)?t:o}function ig(t,e){return Array.prototype.concat(...t.map(r=>ow(r,e)))}function lg(t,e,r){let o=ig(Zr.parseFormat(r),t),a=o.map(s=>Yb(s,t)),n=a.find(s=>s.invalidReason);if(n)return{input:e,tokens:o,invalidReason:n.invalidReason};{let[s,i]=Qb(a),l=RegExp(s,"i"),[u,f]=ew(e,l,i),[c,p,m]=f?tw(f):[null,null,void 0];if(ui(f,"a")&&ui(f,"H"))throw new Zn("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:o,regex:l,rawMatches:u,matches:f,result:c,zone:p,specificOffset:m}}}function aw(t,e,r){let{result:o,zone:a,specificOffset:n,invalidReason:s}=lg(t,e,r);return[o,a,n,s]}function ug(t,e){if(!t)return null;let o=Zr.create(e,t).dtFormatter(rw()),a=o.formatToParts(),n=o.resolvedOptions();return a.map(s=>Xb(s,t,n))}var fg=[0,31,59,90,120,151,181,212,243,273,304,334],dg=[0,31,60,91,121,152,182,213,244,274,305,335];function ho(t,e){return new Yr("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${t}, which is invalid`)}function Ag(t,e,r){let o=new Date(Date.UTC(t,e-1,r));t<100&&t>=0&&o.setUTCFullYear(o.getUTCFullYear()-1900);let a=o.getUTCDay();return a===0?7:a}function cg(t,e,r){return r+(Bl(t)?dg:fg)[e-1]}function pg(t,e){let r=Bl(t)?dg:fg,o=r.findIndex(n=>nMf(e)?(i=e+1,s=1):i=e,{weekYear:i,weekNumber:s,weekday:n,...Uf(t)}}function lh(t){let{weekYear:e,weekNumber:r,weekday:o}=t,a=Ag(e,1,4),n=$l(e),s=r*7+o-a-3,i;s<1?(i=e-1,s+=$l(i)):s>n?(i=e+1,s-=$l(e)):i=e;let{month:l,day:u}=pg(i,s);return{year:i,month:l,day:u,...Uf(t)}}function nc(t){let{year:e,month:r,day:o}=t,a=cg(e,r,o);return{year:e,ordinal:a,...Uf(t)}}function uh(t){let{year:e,ordinal:r}=t,{month:o,day:a}=pg(e,r);return{year:e,month:o,day:a,...Uf(t)}}function nw(t){let e=Gf(t.weekYear),r=Ba(t.weekNumber,1,Mf(t.weekYear)),o=Ba(t.weekday,1,7);return e?r?o?!1:ho("weekday",t.weekday):ho("week",t.week):ho("weekYear",t.weekYear)}function sw(t){let e=Gf(t.year),r=Ba(t.ordinal,1,$l(t.year));return e?r?!1:ho("ordinal",t.ordinal):ho("year",t.year)}function mg(t){let e=Gf(t.year),r=Ba(t.month,1,12),o=Ba(t.day,1,Of(t.year,t.month));return e?r?o?!1:ho("day",t.day):ho("month",t.month):ho("year",t.year)}function _g(t){let{hour:e,minute:r,second:o,millisecond:a}=t,n=Ba(e,0,23)||e===24&&r===0&&o===0&&a===0,s=Ba(r,0,59),i=Ba(o,0,59),l=Ba(a,0,999);return n?s?i?l?!1:ho("millisecond",a):ho("second",o):ho("minute",r):ho("hour",e)}var sc="Invalid DateTime",fh=864e13;function $f(t){return new Yr("unsupported zone",`the zone "${t.name}" is not supported`)}function ic(t){return t.weekData===null&&(t.weekData=kc(t.c)),t.weekData}function Kn(t,e){let r={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new qe({...r,...e,old:r})}function hg(t,e,r){let o=t-e*60*1e3,a=r.offset(o);if(e===a)return[o,e];o-=(a-e)*60*1e3;let n=r.offset(o);return a===n?[o,a]:[t-Math.min(a,n)*60*1e3,Math.max(a,n)]}function If(t,e){t+=e*60*1e3;let r=new Date(t);return{year:r.getUTCFullYear(),month:r.getUTCMonth()+1,day:r.getUTCDate(),hour:r.getUTCHours(),minute:r.getUTCMinutes(),second:r.getUTCSeconds(),millisecond:r.getUTCMilliseconds()}}function Bf(t,e,r){return hg(Hf(t),e,r)}function dh(t,e){let r=t.o,o=t.c.year+Math.trunc(e.years),a=t.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,n={...t.c,year:o,month:a,day:Math.min(t.c.day,Of(o,a))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},s=xe.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),i=Hf(n),[l,u]=hg(i,r,t.zone);return s!==0&&(l+=s,u=t.zone.offset(l)),{ts:l,o:u}}function bl(t,e,r,o,a,n){let{setZone:s,zone:i}=r;if(t&&Object.keys(t).length!==0||e){let l=e||i,u=qe.fromObject(t,{...r,zone:l,specificOffset:n});return s?u:u.setZone(i)}else return qe.invalid(new Yr("unparsable",`the input "${a}" can't be parsed as ${o}`))}function Df(t,e,r=!0){return t.isValid?Zr.create(St.create("en-US"),{allowZ:r,forceSimple:!0}).formatDateTimeFromString(t,e):null}function lc(t,e){let r=t.c.year>9999||t.c.year<0,o="";return r&&t.c.year>=0&&(o+="+"),o+=Pt(t.c.year,r?6:4),e?(o+="-",o+=Pt(t.c.month),o+="-",o+=Pt(t.c.day)):(o+=Pt(t.c.month),o+=Pt(t.c.day)),o}function Ah(t,e,r,o,a,n){let s=Pt(t.c.hour);return e?(s+=":",s+=Pt(t.c.minute),(t.c.millisecond!==0||t.c.second!==0||!r)&&(s+=":")):s+=Pt(t.c.minute),(t.c.millisecond!==0||t.c.second!==0||!r)&&(s+=Pt(t.c.second),(t.c.millisecond!==0||!o)&&(s+=".",s+=Pt(t.c.millisecond,3))),a&&(t.isOffsetFixed&&t.offset===0&&!n?s+="Z":t.o<0?(s+="-",s+=Pt(Math.trunc(-t.o/60)),s+=":",s+=Pt(Math.trunc(-t.o%60))):(s+="+",s+=Pt(Math.trunc(t.o/60)),s+=":",s+=Pt(Math.trunc(t.o%60)))),n&&(s+="["+t.zone.ianaName+"]"),s}var gg={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},iw={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},lw={ordinal:1,hour:0,minute:0,second:0,millisecond:0},xg=["year","month","day","hour","minute","second","millisecond"],uw=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],fw=["year","ordinal","hour","minute","second","millisecond"];function ch(t){let e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new Sf(t);return e}function ph(t,e){let r=fn(e.zone,Bt.defaultZone),o=St.fromObject(e),a=Bt.now(),n,s;if(Ke(t.year))n=a;else{for(let u of xg)Ke(t[u])&&(t[u]=gg[u]);let i=mg(t)||_g(t);if(i)return qe.invalid(i);let l=r.offset(a);[n,s]=Bf(t,l,r)}return new qe({ts:n,zone:r,loc:o,o:s})}function mh(t,e,r){let o=Ke(r.round)?!0:r.round,a=(s,i)=>(s=Bc(s,o||r.calendary?0:2,!0),e.loc.clone(r).relFormatter(r).format(s,i)),n=s=>r.calendary?e.hasSame(t,s)?0:e.startOf(s).diff(t.startOf(s),s).get(s):e.diff(t,s).get(s);if(r.unit)return a(n(r.unit),r.unit);for(let s of r.units){let i=n(s);if(Math.abs(i)>=1)return a(i,s)}return a(t>e?-0:0,r.units[r.units.length-1])}function _h(t){let e={},r;return t.length>0&&typeof t[t.length-1]=="object"?(e=t[t.length-1],r=Array.from(t).slice(0,t.length-1)):r=Array.from(t),[e,r]}var qe=class t{constructor(e){let r=e.zone||Bt.defaultZone,o=e.invalid||(Number.isNaN(e.ts)?new Yr("invalid input"):null)||(r.isValid?null:$f(r));this.ts=Ke(e.ts)?Bt.now():e.ts;let a=null,n=null;if(!o)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(r))[a,n]=[e.old.c,e.old.o];else{let i=r.offset(this.ts);a=If(this.ts,i),o=Number.isNaN(a.year)?new Yr("invalid input"):null,a=o?null:a,n=o?null:i}this._zone=r,this.loc=e.loc||St.create(),this.invalid=o,this.weekData=null,this.c=a,this.o=n,this.isLuxonDateTime=!0}static now(){return new t({})}static local(){let[e,r]=_h(arguments),[o,a,n,s,i,l,u]=r;return ph({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static utc(){let[e,r]=_h(arguments),[o,a,n,s,i,l,u]=r;return e.zone=go.utcInstance,ph({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static fromJSDate(e,r={}){let o=Pk(e)?e.valueOf():NaN;if(Number.isNaN(o))return t.invalid("invalid input");let a=fn(r.zone,Bt.defaultZone);return a.isValid?new t({ts:o,zone:a,loc:St.fromObject(r)}):t.invalid($f(a))}static fromMillis(e,r={}){if(Jn(e))return e<-fh||e>fh?t.invalid("Timestamp out of range"):new t({ts:e,zone:fn(r.zone,Bt.defaultZone),loc:St.fromObject(r)});throw new Mr(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,r={}){if(Jn(e))return new t({ts:e*1e3,zone:fn(r.zone,Bt.defaultZone),loc:St.fromObject(r)});throw new Mr("fromSeconds requires a numerical input")}static fromObject(e,r={}){e=e||{};let o=fn(r.zone,Bt.defaultZone);if(!o.isValid)return t.invalid($f(o));let a=Bt.now(),n=Ke(r.specificOffset)?o.offset(a):r.specificOffset,s=Nf(e,ch),i=!Ke(s.ordinal),l=!Ke(s.year),u=!Ke(s.month)||!Ke(s.day),f=l||u,c=s.weekYear||s.weekNumber,p=St.fromObject(r);if((f||i)&&c)throw new Zn("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(u&&i)throw new Zn("Can't mix ordinal dates with month/day");let m=c||s.weekday&&!f,h,y,E=If(a,n);m?(h=uw,y=iw,E=kc(E)):i?(h=fw,y=lw,E=nc(E)):(h=xg,y=gg);let D=!1;for(let B of h){let q=s[B];Ke(q)?D?s[B]=y[B]:s[B]=E[B]:D=!0}let L=m?nw(s):i?sw(s):mg(s),F=L||_g(s);if(F)return t.invalid(F);let x=m?lh(s):i?uh(s):s,[$,C]=Bf(x,n,o),v=new t({ts:$,zone:o,o:C,loc:p});return s.weekday&&f&&e.weekday!==v.weekday?t.invalid("mismatched weekday",`you can't specify both a weekday of ${s.weekday} and a date of ${v.toISO()}`):v}static fromISO(e,r={}){let[o,a]=$b(e);return bl(o,a,r,"ISO 8601",e)}static fromRFC2822(e,r={}){let[o,a]=Ib(e);return bl(o,a,r,"RFC 2822",e)}static fromHTTP(e,r={}){let[o,a]=Db(e);return bl(o,a,r,"HTTP",r)}static fromFormat(e,r,o={}){if(Ke(e)||Ke(r))throw new Mr("fromFormat requires an input string and a format");let{locale:a=null,numberingSystem:n=null}=o,s=St.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0}),[i,l,u,f]=aw(s,e,r);return f?t.invalid(f):bl(i,l,o,`format ${r}`,e,u)}static fromString(e,r,o={}){return t.fromFormat(e,r,o)}static fromSQL(e,r={}){let[o,a]=Mb(e);return bl(o,a,r,"SQL",e)}static invalid(e,r=null){if(!e)throw new Mr("need to specify a reason the DateTime is invalid");let o=e instanceof Yr?e:new Yr(e,r);if(Bt.throwOnInvalid)throw new fc(o);return new t({invalid:o})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,r={}){let o=ug(e,St.fromObject(r));return o?o.map(a=>a?a.val:null).join(""):null}static expandFormat(e,r={}){return ig(Zr.parseFormat(e),St.fromObject(r)).map(a=>a.val).join("")}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?ic(this).weekYear:NaN}get weekNumber(){return this.isValid?ic(this).weekNumber:NaN}get weekday(){return this.isValid?ic(this).weekday:NaN}get ordinal(){return this.isValid?nc(this.c).ordinal:NaN}get monthShort(){return this.isValid?si.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?si.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?si.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?si.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let e=864e5,r=6e4,o=Hf(this.c),a=this.zone.offset(o-e),n=this.zone.offset(o+e),s=this.zone.offset(o-a*r),i=this.zone.offset(o-n*r);if(s===i)return[this];let l=o-s*r,u=o-i*r,f=If(l,s),c=If(u,i);return f.hour===c.hour&&f.minute===c.minute&&f.second===c.second&&f.millisecond===c.millisecond?[Kn(this,{ts:l}),Kn(this,{ts:u})]:[this]}get isInLeapYear(){return Bl(this.year)}get daysInMonth(){return Of(this.year,this.month)}get daysInYear(){return this.isValid?$l(this.year):NaN}get weeksInWeekYear(){return this.isValid?Mf(this.weekYear):NaN}resolvedLocaleOptions(e={}){let{locale:r,numberingSystem:o,calendar:a}=Zr.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:r,numberingSystem:o,outputCalendar:a}}toUTC(e=0,r={}){return this.setZone(go.instance(e),r)}toLocal(){return this.setZone(Bt.defaultZone)}setZone(e,{keepLocalTime:r=!1,keepCalendarTime:o=!1}={}){if(e=fn(e,Bt.defaultZone),e.equals(this.zone))return this;if(e.isValid){let a=this.ts;if(r||o){let n=e.offset(this.ts),s=this.toObject();[a]=Bf(s,n,e)}return Kn(this,{ts:a,zone:e})}else return t.invalid($f(e))}reconfigure({locale:e,numberingSystem:r,outputCalendar:o}={}){let a=this.loc.clone({locale:e,numberingSystem:r,outputCalendar:o});return Kn(this,{loc:a})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;let r=Nf(e,ch),o=!Ke(r.weekYear)||!Ke(r.weekNumber)||!Ke(r.weekday),a=!Ke(r.ordinal),n=!Ke(r.year),s=!Ke(r.month)||!Ke(r.day),i=n||s,l=r.weekYear||r.weekNumber;if((i||a)&&l)throw new Zn("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(s&&a)throw new Zn("Can't mix ordinal dates with month/day");let u;o?u=lh({...kc(this.c),...r}):Ke(r.ordinal)?(u={...this.toObject(),...r},Ke(r.day)&&(u.day=Math.min(Of(u.year,u.month),u.day))):u=uh({...nc(this.c),...r});let[f,c]=Bf(u,this.o,this.zone);return Kn(this,{ts:f,o:c})}plus(e){if(!this.isValid)return this;let r=xe.fromDurationLike(e);return Kn(this,dh(this,r))}minus(e){if(!this.isValid)return this;let r=xe.fromDurationLike(e).negate();return Kn(this,dh(this,r))}startOf(e){if(!this.isValid)return this;let r={},o=xe.normalizeUnit(e);switch(o){case"years":r.month=1;case"quarters":case"months":r.day=1;case"weeks":case"days":r.hour=0;case"hours":r.minute=0;case"minutes":r.second=0;case"seconds":r.millisecond=0;break}if(o==="weeks"&&(r.weekday=1),o==="quarters"){let a=Math.ceil(this.month/3);r.month=(a-1)*3+1}return this.set(r)}endOf(e){return this.isValid?this.plus({[e]:1}).startOf(e).minus(1):this}toFormat(e,r={}){return this.isValid?Zr.create(this.loc.redefaultToEN(r)).formatDateTimeFromString(this,e):sc}toLocaleString(e=Cf,r={}){return this.isValid?Zr.create(this.loc.clone(r),e).formatDateTime(this):sc}toLocaleParts(e={}){return this.isValid?Zr.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:r=!1,suppressMilliseconds:o=!1,includeOffset:a=!0,extendedZone:n=!1}={}){if(!this.isValid)return null;let s=e==="extended",i=lc(this,s);return i+="T",i+=Ah(this,s,r,o,a,n),i}toISODate({format:e="extended"}={}){return this.isValid?lc(this,e==="extended"):null}toISOWeekDate(){return Df(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:r=!1,includeOffset:o=!0,includePrefix:a=!1,extendedZone:n=!1,format:s="extended"}={}){return this.isValid?(a?"T":"")+Ah(this,s==="extended",r,e,o,n):null}toRFC2822(){return Df(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return Df(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?lc(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:r=!1,includeOffsetSpace:o=!0}={}){let a="HH:mm:ss.SSS";return(r||e)&&(o&&(a+=" "),r?a+="z":e&&(a+="ZZ")),Df(this,a,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():sc}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};let r={...this.c};return e.includeConfig&&(r.outputCalendar=this.outputCalendar,r.numberingSystem=this.loc.numberingSystem,r.locale=this.loc.locale),r}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,r="milliseconds",o={}){if(!this.isValid||!e.isValid)return xe.invalid("created by diffing an invalid DateTime");let a={locale:this.locale,numberingSystem:this.numberingSystem,...o},n=qk(r).map(xe.normalizeUnit),s=e.valueOf()>this.valueOf(),i=s?this:e,l=s?e:this,u=Hb(i,l,n,a);return s?u.negate():u}diffNow(e="milliseconds",r={}){return this.diff(t.now(),e,r)}until(e){return this.isValid?li.fromDateTimes(this,e):this}hasSame(e,r){if(!this.isValid)return!1;let o=e.valueOf(),a=this.setZone(e.zone,{keepLocalTime:!0});return a.startOf(r)<=o&&o<=a.endOf(r)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;let r=e.base||t.fromObject({},{zone:this.zone}),o=e.padding?thisr.valueOf(),Math.min)}static max(...e){if(!e.every(t.isDateTime))throw new Mr("max requires all arguments be DateTimes");return Q_(e,r=>r.valueOf(),Math.max)}static fromFormatExplain(e,r,o={}){let{locale:a=null,numberingSystem:n=null}=o,s=St.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0});return lg(s,e,r)}static fromStringExplain(e,r,o={}){return t.fromFormatExplain(e,r,o)}static get DATE_SHORT(){return Cf}static get DATE_MED(){return kh}static get DATE_MED_WITH_WEEKDAY(){return kk}static get DATE_FULL(){return bh}static get DATE_HUGE(){return wh}static get TIME_SIMPLE(){return yh}static get TIME_WITH_SECONDS(){return Eh}static get TIME_WITH_SHORT_OFFSET(){return $h}static get TIME_WITH_LONG_OFFSET(){return Ih}static get TIME_24_SIMPLE(){return Dh}static get TIME_24_WITH_SECONDS(){return Fh}static get TIME_24_WITH_SHORT_OFFSET(){return Bh}static get TIME_24_WITH_LONG_OFFSET(){return Sh}static get DATETIME_SHORT(){return Ch}static get DATETIME_SHORT_WITH_SECONDS(){return Th}static get DATETIME_MED(){return Oh}static get DATETIME_MED_WITH_SECONDS(){return Mh}static get DATETIME_MED_WITH_WEEKDAY(){return bk}static get DATETIME_FULL(){return Nh}static get DATETIME_FULL_WITH_SECONDS(){return Ph}static get DATETIME_HUGE(){return qh}static get DATETIME_HUGE_WITH_SECONDS(){return Lh}};function wl(t){if(qe.isDateTime(t))return t;if(t&&t.valueOf&&Jn(t.valueOf()))return qe.fromJSDate(t);if(t&&typeof t=="object")return qe.fromObject(t);throw new Mr(`Unknown datetime argument: ${t}, of type ${typeof t}`)}var Mc={renderNullAs:"\\-",taskCompletionTracking:!1,taskCompletionUseEmojiShorthand:!1,taskCompletionText:"completion",taskCompletionDateFormat:"yyyy-MM-dd",recursiveSubTaskCompletion:!1,warnOnEmptyResult:!0,refreshEnabled:!0,refreshInterval:2500,defaultDateFormat:"MMMM dd, yyyy",defaultDateTimeFormat:"h:mm a - MMMM dd, yyyy",maxRecursiveRenderDepth:4,tableIdColumnName:"File",tableGroupColumnName:"Group",showResultCount:!0},dw={allowHtml:!0};({...Mc,...dw});var bc=class t{constructor(e){Ye(this,"value");Ye(this,"successful");this.value=e,this.successful=!0}map(e){return new t(e(this.value))}flatMap(e){return e(this.value)}mapErr(e){return this}bimap(e,r){return this.map(e)}orElse(e){return this.value}cast(){return this}orElseThrow(e){return this.value}},wc=class t{constructor(e){Ye(this,"error");Ye(this,"successful");this.error=e,this.successful=!1}map(e){return this}flatMap(e){return this}mapErr(e){return new t(e(this.error))}bimap(e,r){return this.mapErr(r)}orElse(e){return e}cast(){return this}orElseThrow(e){throw e?new Error(e(this.error)):new Error(""+this.error)}},Pf;(function(t){function e(n){return new bc(n)}t.success=e;function r(n){return new wc(n)}t.failure=r;function o(n,s,i){return n.successful?s.successful?i(n.value,s.value):r(s.error):r(n.error)}t.flatMap2=o;function a(n,s,i){return o(n,s,(l,u)=>e(i(l,u)))}t.map2=a})(Pf||(Pf={}));var Aw=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},qf={exports:{}};qf.exports;(function(t,e){(function(r,o){t.exports=o()})(typeof self<"u"?self:Aw,function(){return function(r){var o={};function a(n){if(o[n])return o[n].exports;var s=o[n]={i:n,l:!1,exports:{}};return r[n].call(s.exports,s,s.exports,a),s.l=!0,s.exports}return a.m=r,a.c=o,a.d=function(n,s,i){a.o(n,s)||Object.defineProperty(n,s,{configurable:!1,enumerable:!0,get:i})},a.r=function(n){Object.defineProperty(n,"__esModule",{value:!0})},a.n=function(n){var s=n&&n.__esModule?function(){return n.default}:function(){return n};return a.d(s,"a",s),s},a.o=function(n,s){return Object.prototype.hasOwnProperty.call(n,s)},a.p="",a(a.s=0)}([function(r,o,a){function n(_){if(!(this instanceof n))return new n(_);this._=_}var s=n.prototype;function i(_,j){for(var I=0;I<_;I++)j(I)}function l(_,j,I){return function(N,U){i(U.length,function(z){N(U[z],z,U)})}(function(N,U,z){j=_(j,N,U,z)},I),j}function u(_,j){return l(function(I,N,U,z){return I.concat([_(N,U,z)])},[],j)}function f(_,j){var I={v:0,buf:j};return i(_,function(){var N;I={v:I.v<<1|(N=I.buf,N[0]>>7),buf:function(U){var z=l(function(W,Ie,_t,$r){return W.concat(_t===$r.length-1?Buffer.from([Ie,0]).readUInt16BE(0):$r.readUInt16BE(_t))},[],U);return Buffer.from(u(function(W){return(W<<1&65535)>>8},z))}(I.buf)}}),I}function c(){return typeof Buffer<"u"}function p(){if(!c())throw new Error("Buffer global does not exist; please use webpack if you need to parse Buffers in the browser.")}function m(_){p();var j=l(function(z,W){return z+W},0,_);if(j%8!=0)throw new Error("The bits ["+_.join(", ")+"] add up to "+j+" which is not an even number of bytes; the total should be divisible by 8");var I,N=j/8,U=(I=function(z){return z>48},l(function(z,W){return z||(I(W)?W:z)},null,_));if(U)throw new Error(U+" bit range requested exceeds 48 bit (6 byte) Number max.");return new n(function(z,W){var Ie=N+W;return Ie>z.length?B(W,N.toString()+" bytes"):v(Ie,l(function(_t,$r){var lr=f($r,_t.buf);return{coll:_t.coll.concat(lr.v),buf:lr.buf}},{coll:[],buf:z.slice(W,Ie)},_).coll)})}function h(_,j){return new n(function(I,N){return p(),N+j>I.length?B(N,j+" bytes for "+_):v(N+j,I.slice(N,N+j))})}function y(_,j){if(typeof(I=j)!="number"||Math.floor(I)!==I||j<0||j>6)throw new Error(_+" requires integer length in range [0, 6].");var I}function E(_){return y("uintBE",_),h("uintBE("+_+")",_).map(function(j){return j.readUIntBE(0,_)})}function D(_){return y("uintLE",_),h("uintLE("+_+")",_).map(function(j){return j.readUIntLE(0,_)})}function L(_){return y("intBE",_),h("intBE("+_+")",_).map(function(j){return j.readIntBE(0,_)})}function F(_){return y("intLE",_),h("intLE("+_+")",_).map(function(j){return j.readIntLE(0,_)})}function x(_){return _ instanceof n}function $(_){return{}.toString.call(_)==="[object Array]"}function C(_){return c()&&Buffer.isBuffer(_)}function v(_,j){return{status:!0,index:_,value:j,furthest:-1,expected:[]}}function B(_,j){return $(j)||(j=[j]),{status:!1,index:-1,value:null,furthest:_,expected:j}}function q(_,j){if(!j||_.furthest>j.furthest)return _;var I=_.furthest===j.furthest?function(N,U){if(function(){if(n._supportsSet!==void 0)return n._supportsSet;var Ia=typeof Set<"u";return n._supportsSet=Ia,Ia}()&&Array.from){for(var z=new Set(N),W=0;W=0;){if(W in I){N=I[W].line,z===0&&(z=I[W].lineStart);break}(_.charAt(W)===` `||_.charAt(W)==="\r"&&_.charAt(W+1)!==` -`)&&(V++,z===0&&(z=W+1)),W--}var Ie=O+V,pt=x-z;return $[x]={line:Ie,lineStart:z},{offset:x,line:Ie+1,column:pt+1}}function fe(_){if(!j(_))throw new Error("not a parser: "+_)}function He(_,x){return typeof _=="string"?_.charAt(x):_[x]}function G(_){if(typeof _!="number")throw new Error("not a number: "+_)}function Y(_){if(typeof _!="function")throw new Error("not a function: "+_)}function De(_){if(typeof _!="string")throw new Error("not a string: "+_)}var T=2,M=3,Z=8,_e=5*Z,Ne=4*Z,at=" ";function uo(_,x){return new Array(x+1).join(_)}function Do(_,x,$){var O=x-_.length;return O<=0?_:uo($,O)+_}function Jt(_,x,$,O){return{from:_-x>0?_-x:0,to:_+$>O?O:_+$}}function Vr(_,x){var $,O,V,z,W,Ie=x.index,pt=Ie.offset,Ir=1;if(pt===_.length)return"Got the end of the input";if(D(_)){var lr=pt-pt%Z,ya=pt-lr,Ur=Jt(lr,_e,Ne+Z,_.length),Ea=u(function(Ut){return u(function(Xs){return Do(Xs.toString(16),2,"0")},Ut)},function(Ut,Xs){var Qs=Ut.length,Rn=[],ei=0;if(Qs<=Xs)return[Ut.slice()];for(var ti=0;ti=4&&($+=1),Ir=2,V=u(function(Ut){return Ut.length<=4?Ut.join(" "):Ut.slice(0,4).join(" ")+" "+Ut.slice(4).join(" ")},Ea),(W=(8*(z.to>0?z.to-1:z.to)).toString(16).length)<2&&(W=2)}else{var Js=_.split(/\r\n|[\n\r\u2028\u2029]/);$=Ie.column-1,O=Ie.line-1,z=Jt(O,T,M,Js.length),V=Js.slice(z.from,z.to),W=z.to.toString().length}var J6=O-z.from;return D(_)&&(W=(8*(z.to>0?z.to-1:z.to)).toString(16).length)<2&&(W=2),l(function(Ut,Xs,Qs){var Rn,ei=Qs===J6,ti=ei?"> ":at;return Rn=D(_)?Do((8*(z.from+Qs)).toString(16),W,"0"):Do((z.from+Qs+1).toString(),W," "),[].concat(Ut,[ti+Rn+" | "+Xs],ei?[at+uo(" ",W)+" | "+Do("",$," ")+uo("^",Ir)]:[])},[],V).join(` -`)}function va(_,x){return[` -`,"-- PARSING FAILED "+uo("-",50),` +`)&&(U++,z===0&&(z=W+1)),W--}var Ie=N+U,_t=j-z;return I[j]={line:Ie,lineStart:z},{offset:j,line:Ie+1,column:_t+1}}function le(_){if(!x(_))throw new Error("not a parser: "+_)}function Be(_,j){return typeof _=="string"?_.charAt(j):_[j]}function R(_){if(typeof _!="number")throw new Error("not a number: "+_)}function K(_){if(typeof _!="function")throw new Error("not a function: "+_)}function Ee(_){if(typeof _!="string")throw new Error("not a string: "+_)}var T=2,O=3,Z=8,me=5*Z,Me=4*Z,at=" ";function fo(_,j){return new Array(j+1).join(_)}function Fo(_,j,I){var N=j-_.length;return N<=0?_:fo(I,N)+_}function Jt(_,j,I,N){return{from:_-j>0?_-j:0,to:_+I>N?N:_+I}}function zr(_,j){var I,N,U,z,W,Ie=j.index,_t=Ie.offset,$r=1;if(_t===_.length)return"Got the end of the input";if(C(_)){var lr=_t-_t%Z,$a=_t-lr,Wr=Jt(lr,me,Me+Z,_.length),Ia=u(function(Ut){return u(function(Xs){return Fo(Xs.toString(16),2,"0")},Ut)},function(Ut,Xs){var Qs=Ut.length,Rn=[],ei=0;if(Qs<=Xs)return[Ut.slice()];for(var ti=0;ti=4&&(I+=1),$r=2,U=u(function(Ut){return Ut.length<=4?Ut.join(" "):Ut.slice(0,4).join(" ")+" "+Ut.slice(4).join(" ")},Ia),(W=(8*(z.to>0?z.to-1:z.to)).toString(16).length)<2&&(W=2)}else{var Js=_.split(/\r\n|[\n\r\u2028\u2029]/);I=Ie.column-1,N=Ie.line-1,z=Jt(N,T,O,Js.length),U=Js.slice(z.from,z.to),W=z.to.toString().length}var Q6=N-z.from;return C(_)&&(W=(8*(z.to>0?z.to-1:z.to)).toString(16).length)<2&&(W=2),l(function(Ut,Xs,Qs){var Rn,ei=Qs===Q6,ti=ei?"> ":at;return Rn=C(_)?Fo((8*(z.from+Qs)).toString(16),W,"0"):Fo((z.from+Qs+1).toString(),W," "),[].concat(Ut,[ti+Rn+" | "+Xs],ei?[at+fo(" ",W)+" | "+Fo("",I," ")+fo("^",$r)]:[])},[],U).join(` +`)}function ba(_,j){return[` +`,"-- PARSING FAILED "+fo("-",50),` -`,Vr(_,x),` +`,zr(_,j),` -`,($=x.expected,$.length===1?`Expected: +`,(I=j.expected,I.length===1?`Expected: -`+$[0]:`Expected one of the following: +`+I[0]:`Expected one of the following: -`+$.join(", ")),` -`].join("");var $}function bt(_){return _.flags!==void 0?_.flags:[_.global?"g":"",_.ignoreCase?"i":"",_.multiline?"m":"",_.unicode?"u":"",_.sticky?"y":""].join("")}function Vt(){for(var _=[].slice.call(arguments),x=_.length,$=0;$=2?G(x):x=0;var $=function(V){return RegExp("^(?:"+V.source+")",bt(V))}(_),O=""+_;return n(function(V,z){var W=$.exec(V.slice(z));if(W){if(0<=x&&x<=W.length){var Ie=W[0],pt=W[x];return k(z+Ie.length,pt)}return C(z,"valid match group (0 to "+W.length+") in "+O)}return C(z,O)})}function Er(_){return n(function(x,$){return k($,_)})}function Fo(_){return n(function(x,$){return C($,_)})}function Xo(_){if(j(_))return n(function(x,$){var O=_._(x,$);return O.index=$,O.value="",O});if(typeof _=="string")return Xo(_t(_));if(_ instanceof RegExp)return Xo(Mt(_));throw new Error("not a string, regexp, or parser: "+_)}function Qo(_){return fe(_),n(function(x,$){var O=_._(x,$),V=x.slice($,O.index);return O.status?C($,'not "'+V+'"'):k($,null)})}function rn(_){return Y(_),n(function(x,$){var O=He(x,$);return $=_.length?C(x,"any character/byte"):k(x+1,He(_,x))}),dl=n(function(_,x){return k(_.length,_.slice(x))}),wa=n(function(_,x){return x<_.length?C(x,"EOF"):k(x,null)}),cl=Mt(/[0-9]/).desc("a digit"),uA=Mt(/[0-9]*/).desc("optional digits"),Ks=Mt(/[a-z]/i).desc("a letter"),Bd=Mt(/[a-z]*/i).desc("optional letters"),Sd=Mt(/\s*/).desc("optional whitespace"),Cd=Mt(/\s+/).desc("whitespace"),wt=_t("\r"),fo=_t(` -`),Zs=_t(`\r -`),Ys=Ao(Zs,fo,wt).desc("newline"),Td=Ao(Ys,wa);n.all=dl,n.alt=Ao,n.any=fl,n.cr=wt,n.createLanguage=function(_){var x={};for(var $ in _)({}).hasOwnProperty.call(_,$)&&function(O){x[O]=ka(function(){return _[O](x)})}($);return x},n.crlf=Zs,n.custom=function(_){return n(_(k,C))},n.digit=cl,n.digits=uA,n.empty=Al,n.end=Td,n.eof=wa,n.fail=Fo,n.formatError=va,n.index=ba,n.isParser=j,n.lazy=ka,n.letter=Ks,n.letters=Bd,n.lf=fo,n.lookahead=Xo,n.makeFailure=C,n.makeSuccess=k,n.newline=Ys,n.noneOf=function(_){return rn(function(x){return _.indexOf(x)<0}).desc("none of '"+_+"'")},n.notFollowedBy=Qo,n.of=Er,n.oneOf=function(_){for(var x=_.split(""),$=0;$=0}).desc(x)},n.optWhitespace=Sd,n.Parser=n,n.range=function(_,x){return rn(function($){return _<=$&&$<=x}).desc(_+"-"+x)},n.regex=Mt,n.regexp=Mt,n.sepBy=tn,n.sepBy1=ir,n.seq=Vt,n.seqMap=Dt,n.seqObj=function(){for(var _,x={},$=0,O=(_=arguments,Array.prototype.slice.call(_)),V=O.length,z=0;z255)throw new Error("Value specified to byte constructor ("+_+"=0x"+_.toString(16)+") is larger in value than a single byte.");var x=(_>15?"0x":"0x0")+_.toString(16);return n(function($,O){var V=He($,O);return V===_?k(O+1,V):C(O,x)})},buffer:function(_){return h("buffer",_).map(function(x){return Buffer.from(x)})},encodedString:function(_,x){return h("string",x).map(function($){return $.toString(_)})},uintBE:I,uint8BE:I(1),uint16BE:I(2),uint32BE:I(4),uintLE:F,uint8LE:F(1),uint16LE:F(2),uint32LE:F(4),intBE:R,int8BE:R(1),int16BE:R(2),int32BE:R(4),intLE:B,int8LE:B(1),int16LE:B(2),int32LE:B(4),floatBE:h("floatBE",4).map(function(_){return _.readFloatBE(0)}),floatLE:h("floatLE",4).map(function(_){return _.readFloatLE(0)}),doubleBE:h("doubleBE",8).map(function(_){return _.readDoubleBE(0)}),doubleLE:h("doubleLE",8).map(function(_){return _.readDoubleLE(0)})},r.exports=n}])})})(qA,qA.exports);var g=qA.exports,Mc=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC3\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC08\uDC26](?:\u200D\u2B1B)?|[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function gg(t){return t==null?t:t.shiftToAll().normalize()}function mh(t){return t.includes("/")&&(t=t.substring(t.lastIndexOf("/")+1)),t.endsWith(".md")&&(t=t.substring(0,t.length-3)),t}g.alt(g.regex(new RegExp(Mc(),"")),g.regex(/[0-9\p{Letter}_-]+/u).map(t=>t.toLocaleLowerCase()),g.whitespace.map(t=>"-"),g.any.map(t=>"")).many().map(t=>t.join(""));var fw=g.alt(g.regex(new RegExp(Mc(),"")),g.regex(/[0-9\p{Letter}_-]+/u),g.whitespace.map(t=>" "),g.any.map(t=>" ")).many().map(t=>t.join("").split(/\s+/).join(" ").trim());function dw(t){return fw.tryParse(t)}function cw(t){return t=gg(t),t=ge.fromObject(Object.fromEntries(Object.entries(t.toObject()).filter(([,e])=>e!=0))),t.toHuman()}var Dl;(function(t){function e(j,E=Oc,D=!1){let k=r(j);if(!k)return E.renderNullAs;switch(k.type){case"null":return E.renderNullAs;case"string":return k.value;case"number":case"boolean":return""+k.value;case"html":return k.value.outerHTML;case"widget":return k.value.markdown();case"link":return k.value.markdown();case"function":return"";case"array":let C="";return D&&(C+="["),C+=k.value.map(P=>e(P,E,!0)).join(", "),D&&(C+="]"),C;case"object":return"{ "+Object.entries(k.value).map(P=>P[0]+": "+e(P[1],E,!0)).join(", ")+" }";case"date":return k.value.second==0&&k.value.hour==0&&k.value.minute==0?k.value.toFormat(E.defaultDateFormat):k.value.toFormat(E.defaultDateTimeFormat);case"duration":return cw(k.value)}}t.toString=e;function r(j){return p(j)?{type:"null",value:j}:u(j)?{type:"number",value:j}:l(j)?{type:"string",value:j}:h(j)?{type:"boolean",value:j}:c(j)?{type:"duration",value:j}:A(j)?{type:"date",value:j}:I(j)?{type:"widget",value:j}:m(j)?{type:"array",value:j}:y(j)?{type:"link",value:j}:B(j)?{type:"function",value:j}:F(j)?{type:"html",value:j}:R(j)?{type:"object",value:j}:void 0}t.wrapValue=r;function o(j,E){if(R(j)){let D={};for(let[k,C]of Object.entries(j))D[k]=o(C,E);return D}else if(m(j)){let D=[];for(let k of j)D.push(o(k,E));return D}else return E(j)}t.mapLeaves=o;function a(j,E,D){if(j===void 0&&(j=null),E===void 0&&(E=null),j===null&&E===null)return 0;if(j===null)return-1;if(E===null)return 1;let k=r(j),C=r(E);if(k===void 0&&C===void 0)return 0;if(k===void 0)return-1;if(C===void 0)return 1;if(k.type!=C.type)return k.type.localeCompare(C.type);if(k.value===C.value)return 0;switch(k.type){case"string":return k.value.localeCompare(C.value);case"number":return k.valueNe),fe=xe(P.path).localeCompare(xe(le.path));if(fe!=0)return fe;let He=P.type.localeCompare(le.type);return He!=0?He:P.subpath&&!le.subpath?1:!P.subpath&&le.subpath?-1:!P.subpath&&!le.subpath?0:(P.subpath??"").localeCompare(le.subpath??"");case"date":return k.value0;case"boolean":return E.value;case"link":return!!E.value.path;case"date":return E.value.toMillis()!=0;case"duration":return E.value.as("seconds")!=0;case"object":return Object.keys(E.value).length>0;case"array":return E.value.length>0;case"null":return!1;case"html":case"widget":case"function":return!0}}t.isTruthy=s;function i(j){if(j==null)return j;if(t.isArray(j))return[].concat(j.map(E=>i(E)));if(t.isObject(j)){let E={};for(let[D,k]of Object.entries(j))E[D]=i(k);return E}else return j}t.deepCopy=i;function l(j){return typeof j=="string"}t.isString=l;function u(j){return typeof j=="number"}t.isNumber=u;function A(j){return j instanceof qe}t.isDate=A;function c(j){return j instanceof ge}t.isDuration=c;function p(j){return j==null}t.isNull=p;function m(j){return Array.isArray(j)}t.isArray=m;function h(j){return typeof j=="boolean"}t.isBoolean=h;function y(j){return j instanceof PA}t.isLink=y;function I(j){return j instanceof Fl}t.isWidget=I;function F(j){return typeof HTMLElement<"u"?j instanceof HTMLElement:!1}t.isHtml=F;function R(j){return typeof j=="object"&&!F(j)&&!I(j)&&!m(j)&&!c(j)&&!A(j)&&!y(j)&&j!==void 0&&!p(j)}t.isObject=R;function B(j){return typeof j=="function"}t.isFunction=B})(Dl||(Dl={}));var _h;(function(t){function e(a){return Dl.isObject(a)&&Object.keys(a).length==2&&"key"in a&&"rows"in a}t.isElementGroup=e;function r(a){for(let n of a)if(!e(n))return!1;return!0}t.isGrouping=r;function o(a){if(r(a)){let n=0;for(let s of a)n+=o(s.rows);return n}else return a.length}t.count=o})(_h||(_h={}));var PA=class t{constructor(e){Ze(this,"path");Ze(this,"display");Ze(this,"subpath");Ze(this,"embed");Ze(this,"type");Object.assign(this,e)}static file(e,r=!1,o){return new t({path:e,embed:r,display:o,subpath:void 0,type:"file"})}static infer(e,r=!1,o){if(e.includes("#^")){let a=e.split("#^");return t.block(a[0],a[1],r,o)}else if(e.includes("#")){let a=e.split("#");return t.header(a[0],a[1],r,o)}else return t.file(e,r,o)}static header(e,r,o,a){return new t({path:e,embed:o,display:a,subpath:dw(r),type:"header"})}static block(e,r,o,a){return new t({path:e,embed:o,display:a,subpath:r,type:"block"})}static fromObject(e){return new t(e)}equals(e){return e==null||e==null?!1:this.path==e.path&&this.type==e.type&&this.subpath==e.subpath}toString(){return this.markdown()}toObject(){return{path:this.path,type:this.type,subpath:this.subpath,display:this.display,embed:this.embed}}withPath(e){return new t(Object.assign({},this,{path:e}))}withDisplay(e){return new t(Object.assign({},this,{display:e}))}withHeader(e){return t.header(this.path,e,this.embed,this.display)}toFile(){return t.file(this.path,this.embed,this.display)}toEmbed(){if(this.embed)return this;{let e=new t(this);return e.embed=!0,e}}fromEmbed(){if(this.embed){let e=new t(this);return e.embed=!1,e}else return this}markdown(){let e=(this.embed?"!":"")+"[["+this.obsidianLink();return this.display?e+="|"+this.display:(e+="|"+mh(this.path),(this.type=="header"||this.type=="block")&&(e+=" > "+this.subpath)),e+="]]",e}obsidianLink(){let e=this.path.replaceAll("|","\\|");return this.type=="header"?e+"#"+this.subpath?.replaceAll("|","\\|"):this.type=="block"?e+"#^"+this.subpath?.replaceAll("|","\\|"):e}fileName(){return mh(this.path).replace(".md","")}},Fl=class{constructor(e){Ze(this,"$widget");this.$widget=e}},wc=class extends Fl{constructor(r,o){super("dataview:list-pair");Ze(this,"key");Ze(this,"value");this.key=r,this.value=o}markdown(){return`${Dl.toString(this.key)}: ${Dl.toString(this.value)}`}},yc=class extends Fl{constructor(r,o){super("dataview:external-link");Ze(this,"url");Ze(this,"display");this.url=r,this.display=o}markdown(){return`[${this.display??this.url}](${this.url})`}},hh;(function(t){function e(s,i){return new wc(s,i)}t.listPair=e;function r(s,i){return new yc(s,i)}t.externalLink=r;function o(s){return s.$widget==="dataview:list-pair"}t.isListPair=o;function a(s){return s.$widget==="dataview:external-link"}t.isExternalLink=a;function n(s){return o(s)||a(s)}t.isBuiltin=n})(hh||(hh={}));var Ft;(function(t){function e(p){return{type:"variable",name:p}}t.variable=e;function r(p){return{type:"literal",value:p}}t.literal=r;function o(p,m,h){return{type:"binaryop",left:p,op:m,right:h}}t.binaryOp=o;function a(p,m){return{type:"index",object:p,index:m}}t.index=a;function n(p){let m=p.split("."),h=t.variable(m[0]);for(let y=1;y"||p==">="||p=="!="||p=="="}t.isCompareOp=c,t.NULL=t.literal(null)})(Ft||(Ft={}));var ra;(function(t){function e(A){return{type:"tag",tag:A}}t.tag=e;function r(A){return{type:"csv",path:A}}t.csv=r;function o(A){return{type:"folder",folder:A}}t.folder=o;function a(A,c){return{type:"link",file:A,direction:c?"incoming":"outgoing"}}t.link=a;function n(A,c,p){return{type:"binaryop",left:A,op:c,right:p}}t.binaryOp=n;function s(A,c){return{type:"binaryop",left:A,op:"&",right:c}}t.and=s;function i(A,c){return{type:"binaryop",left:A,op:"|",right:c}}t.or=i;function l(A){return{type:"negate",child:A}}t.negate=l;function u(){return{type:"empty"}}t.empty=u})(ra||(ra={}));var gh=new RegExp(Mc(),""),Ec={year:ge.fromObject({years:1}),years:ge.fromObject({years:1}),yr:ge.fromObject({years:1}),yrs:ge.fromObject({years:1}),month:ge.fromObject({months:1}),months:ge.fromObject({months:1}),mo:ge.fromObject({months:1}),mos:ge.fromObject({months:1}),week:ge.fromObject({weeks:1}),weeks:ge.fromObject({weeks:1}),wk:ge.fromObject({weeks:1}),wks:ge.fromObject({weeks:1}),w:ge.fromObject({weeks:1}),day:ge.fromObject({days:1}),days:ge.fromObject({days:1}),d:ge.fromObject({days:1}),hour:ge.fromObject({hours:1}),hours:ge.fromObject({hours:1}),hr:ge.fromObject({hours:1}),hrs:ge.fromObject({hours:1}),h:ge.fromObject({hours:1}),minute:ge.fromObject({minutes:1}),minutes:ge.fromObject({minutes:1}),min:ge.fromObject({minutes:1}),mins:ge.fromObject({minutes:1}),m:ge.fromObject({minutes:1}),second:ge.fromObject({seconds:1}),seconds:ge.fromObject({seconds:1}),sec:ge.fromObject({seconds:1}),secs:ge.fromObject({seconds:1}),s:ge.fromObject({seconds:1})},Ic={now:()=>qe.local(),today:()=>qe.local().startOf("day"),yesterday:()=>qe.local().startOf("day").minus(ge.fromObject({days:1})),tomorrow:()=>qe.local().startOf("day").plus(ge.fromObject({days:1})),sow:()=>qe.local().startOf("week"),"start-of-week":()=>qe.local().startOf("week"),eow:()=>qe.local().endOf("week"),"end-of-week":()=>qe.local().endOf("week"),soy:()=>qe.local().startOf("year"),"start-of-year":()=>qe.local().startOf("year"),eoy:()=>qe.local().endOf("year"),"end-of-year":()=>qe.local().endOf("year"),som:()=>qe.local().startOf("month"),"start-of-month":()=>qe.local().startOf("month"),eom:()=>qe.local().endOf("month"),"end-of-month":()=>qe.local().endOf("month")},$c=["FROM","WHERE","LIMIT","GROUP","FLATTEN"];function pw(t){let e=-1;for(;(e=t.indexOf("|",e+1))>=0;)if(!(e>0&&t[e-1]=="\\"))return[t.substring(0,e).replace(/\\\|/g,"|"),t.substring(e+1)];return[t.replace(/\\\|/g,"|"),void 0]}function mw(t){let[e,r]=pw(t);return PA.infer(e,!1,r)}function yl(t,e,r){return g.seqMap(t,g.seq(g.optWhitespace,e,g.optWhitespace,t).many(),(o,a)=>{if(a.length==0)return o;let n=r(o,a[0][1],a[0][3]);for(let s=1;s(a,n)=>{let s=t._(a,n);if(!s.status)return s;for(let i of e){let l=i(s.value)._(a,s.index);if(!l.status)return s;s=l}return s})}var Oo=g.createLanguage({number:t=>g.regexp(/-?[0-9]+(\.[0-9]+)?/).map(e=>Number.parseFloat(e)).desc("number"),string:t=>g.string('"').then(g.alt(t.escapeCharacter,g.noneOf('"\\')).atLeast(0).map(e=>e.join(""))).skip(g.string('"')).desc("string"),escapeCharacter:t=>g.string("\\").then(g.any).map(e=>e==='"'?'"':e==="\\"?"\\":"\\"+e),bool:t=>g.regexp(/true|false|True|False/).map(e=>e.toLowerCase()=="true").desc("boolean ('true' or 'false')"),tag:t=>g.seqMap(g.string("#"),g.alt(g.regexp(/[^\u2000-\u206F\u2E00-\u2E7F'!"#$%&()*+,.:;<=>?@^`{|}~\[\]\\\s]/).desc("text")).many(),(e,r)=>e+r.join("")).desc("tag ('#hello/stuff')"),identifier:t=>g.seqMap(g.alt(g.regexp(/\p{Letter}/u),g.regexp(gh).desc("text")),g.alt(g.regexp(/[0-9\p{Letter}_-]/u),g.regexp(gh).desc("text")).many(),(e,r)=>e+r.join("")).desc("variable identifier"),link:t=>g.regexp(/\[\[([^\[\]]*?)\]\]/u,1).map(e=>mw(e)).desc("file link"),embedLink:t=>g.seqMap(g.string("!").atMost(1),t.link,(e,r)=>(e.length>0&&(r.embed=!0),r)).desc("file link"),binaryPlusMinus:t=>g.regexp(/\+|-/).map(e=>e).desc("'+' or '-'"),binaryMulDiv:t=>g.regexp(/\*|\/|%/).map(e=>e).desc("'*' or '/' or '%'"),binaryCompareOp:t=>g.regexp(/>=|<=|!=|>|<|=/).map(e=>e).desc("'>=' or '<=' or '!=' or '=' or '>' or '<'"),binaryBooleanOp:t=>g.regexp(/and|or|&|\|/i).map(e=>e.toLowerCase()=="and"?"&":e.toLowerCase()=="or"?"|":e).desc("'and' or 'or'"),rootDate:t=>g.seqMap(g.regexp(/\d{4}/),g.string("-"),g.regexp(/\d{2}/),(e,r,o)=>qe.fromObject({year:Number.parseInt(e),month:Number.parseInt(o)})).desc("date in format YYYY-MM[-DDTHH-MM-SS.MS]"),dateShorthand:t=>g.alt(...Object.keys(Ic).sort((e,r)=>r.length-e.length).map(g.string)),date:t=>_w(t.rootDate,e=>g.seqMap(g.string("-"),g.regexp(/\d{2}/),(r,o)=>e.set({day:Number.parseInt(o)})),e=>g.seqMap(g.string("T"),g.regexp(/\d{2}/),(r,o)=>e.set({hour:Number.parseInt(o)})),e=>g.seqMap(g.string(":"),g.regexp(/\d{2}/),(r,o)=>e.set({minute:Number.parseInt(o)})),e=>g.seqMap(g.string(":"),g.regexp(/\d{2}/),(r,o)=>e.set({second:Number.parseInt(o)})),e=>g.alt(g.seqMap(g.string("."),g.regexp(/\d{3}/),(r,o)=>e.set({millisecond:Number.parseInt(o)})),g.succeed(e)),e=>g.alt(g.seqMap(g.string("+").or(g.string("-")),g.regexp(/\d{1,2}(:\d{2})?/),(r,o)=>e.setZone("UTC"+r+o,{keepLocalTime:!0})),g.seqMap(g.string("Z"),()=>e.setZone("utc",{keepLocalTime:!0})),g.seqMap(g.string("["),g.regexp(/[0-9A-Za-z+-\/]+/u),g.string("]"),(r,o,a)=>e.setZone(o,{keepLocalTime:!0})))).assert(e=>e.isValid,"valid date").desc("date in format YYYY-MM[-DDTHH-MM-SS.MS]"),datePlus:t=>g.alt(t.dateShorthand.map(e=>Ic[e]()),t.date).desc("date in format YYYY-MM[-DDTHH-MM-SS.MS] or in shorthand"),durationType:t=>g.alt(...Object.keys(Ec).sort((e,r)=>r.length-e.length).map(g.string)),duration:t=>g.seqMap(t.number,g.optWhitespace,t.durationType,(e,r,o)=>Ec[o].mapUnits(a=>a*e)).sepBy1(g.string(",").trim(g.optWhitespace).or(g.optWhitespace)).map(e=>e.reduce((r,o)=>r.plus(o))).desc("duration like 4hr2min"),rawNull:t=>g.string("null"),tagSource:t=>t.tag.map(e=>ra.tag(e)),csvSource:t=>g.seqMap(g.string("csv(").skip(g.optWhitespace),t.string,g.string(")"),(e,r,o)=>ra.csv(r)),linkIncomingSource:t=>t.link.map(e=>ra.link(e.path,!0)),linkOutgoingSource:t=>g.seqMap(g.string("outgoing(").skip(g.optWhitespace),t.link,g.string(")"),(e,r,o)=>ra.link(r.path,!1)),folderSource:t=>t.string.map(e=>ra.folder(e)),parensSource:t=>g.seqMap(g.string("("),g.optWhitespace,t.source,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>o),negateSource:t=>g.seqMap(g.alt(g.string("-"),g.string("!")),t.atomSource,(e,r)=>ra.negate(r)),atomSource:t=>g.alt(t.parensSource,t.negateSource,t.linkOutgoingSource,t.linkIncomingSource,t.folderSource,t.tagSource,t.csvSource),binaryOpSource:t=>yl(t.atomSource,t.binaryBooleanOp.map(e=>e),ra.binaryOp),source:t=>t.binaryOpSource,variableField:t=>t.identifier.chain(e=>$c.includes(e.toUpperCase())?g.fail("Variable fields cannot be a keyword ("+$c.join(" or ")+")"):g.succeed(Ft.variable(e))).desc("variable"),numberField:t=>t.number.map(e=>Ft.literal(e)).desc("number"),stringField:t=>t.string.map(e=>Ft.literal(e)).desc("string"),boolField:t=>t.bool.map(e=>Ft.literal(e)).desc("boolean"),dateField:t=>g.seqMap(g.string("date("),g.optWhitespace,t.datePlus,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>Ft.literal(o)).desc("date"),durationField:t=>g.seqMap(g.string("dur("),g.optWhitespace,t.duration,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>Ft.literal(o)).desc("duration"),nullField:t=>t.rawNull.map(e=>Ft.NULL),linkField:t=>t.link.map(e=>Ft.literal(e)),listField:t=>t.field.sepBy(g.string(",").trim(g.optWhitespace)).wrap(g.string("[").skip(g.optWhitespace),g.optWhitespace.then(g.string("]"))).map(e=>Ft.list(e)).desc("list ('[1, 2, 3]')"),objectField:t=>g.seqMap(t.identifier.or(t.string),g.string(":").trim(g.optWhitespace),t.field,(e,r,o)=>({name:e,value:o})).sepBy(g.string(",").trim(g.optWhitespace)).wrap(g.string("{").skip(g.optWhitespace),g.optWhitespace.then(g.string("}"))).map(e=>{let r={};for(let o of e)r[o.name]=o.value;return Ft.object(r)}).desc("object ('{ a: 1, b: 2 }')"),atomInlineField:t=>g.alt(t.date,t.duration.map(e=>gg(e)),t.string,t.tag,t.embedLink,t.bool,t.number,t.rawNull),inlineFieldList:t=>t.atomInlineField.sepBy(g.string(",").trim(g.optWhitespace).lookahead(t.atomInlineField)),inlineField:t=>g.alt(g.seqMap(t.atomInlineField,g.string(",").trim(g.optWhitespace),t.inlineFieldList,(e,r,o)=>[e].concat(o)),t.atomInlineField),atomField:t=>g.alt(t.embedLink.map(e=>Ft.literal(e)),t.negatedField,t.linkField,t.listField,t.objectField,t.lambdaField,t.parensField,t.boolField,t.numberField,t.stringField,t.dateField,t.durationField,t.nullField,t.variableField),indexField:t=>g.seqMap(t.atomField,g.alt(t.dotPostfix,t.indexPostfix,t.functionPostfix).many(),(e,r)=>{let o=e;for(let a of r)switch(a.type){case"dot":o=Ft.index(o,Ft.literal(a.field));break;case"index":o=Ft.index(o,a.field);break;case"function":o=Ft.func(o,a.fields);break}return o}),negatedField:t=>g.seqMap(g.string("!"),t.indexField,(e,r)=>Ft.negate(r)).desc("negated field"),parensField:t=>g.seqMap(g.string("("),g.optWhitespace,t.field,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>o),lambdaField:t=>g.seqMap(t.identifier.sepBy(g.string(",").trim(g.optWhitespace)).wrap(g.string("(").trim(g.optWhitespace),g.string(")").trim(g.optWhitespace)),g.string("=>").trim(g.optWhitespace),t.field,(e,r,o)=>({type:"lambda",arguments:e,value:o})),dotPostfix:t=>g.seqMap(g.string("."),t.identifier,(e,r)=>({type:"dot",field:r})),indexPostfix:t=>g.seqMap(g.string("["),g.optWhitespace,t.field,g.optWhitespace,g.string("]"),(e,r,o,a,n)=>({type:"index",field:o})),functionPostfix:t=>g.seqMap(g.string("("),g.optWhitespace,t.field.sepBy(g.string(",").trim(g.optWhitespace)),g.optWhitespace,g.string(")"),(e,r,o,a,n)=>({type:"function",fields:o})),binaryMulDivField:t=>yl(t.indexField,t.binaryMulDiv,Ft.binaryOp),binaryPlusMinusField:t=>yl(t.binaryMulDivField,t.binaryPlusMinus,Ft.binaryOp),binaryCompareField:t=>yl(t.binaryPlusMinusField,t.binaryCompareOp,Ft.binaryOp),binaryBooleanField:t=>yl(t.binaryCompareField,t.binaryBooleanOp,Ft.binaryOp),binaryOpField:t=>t.binaryBooleanField,field:t=>t.binaryOpField});function hw(t){try{return NA.success(Oo.field.tryParse(t))}catch(e){return NA.failure(""+e)}}var RA;(function(t){function e(o,a){return{name:o,field:a}}t.named=e;function r(o,a){return{field:o,direction:a}}t.sortBy=r})(RA||(RA={}));function gw(t){return g.custom((e,r)=>(o,a)=>{let n=t._(o,a);return n.status?Object.assign({},n,{value:[n.value,o.substring(a,n.index)]}):n})}function jw(t){return t.split(/[\r\n]+/).map(e=>e.trim()).join("")}function jh(t,e){return g.eof.map(t).or(g.whitespace.then(e))}var jg=g.createLanguage({queryType:t=>g.alt(g.regexp(/TABLE|LIST|TASK|CALENDAR/i)).map(e=>e.toLowerCase()).desc("query type ('TABLE', 'LIST', 'TASK', or 'CALENDAR')"),explicitNamedField:t=>g.seqMap(Oo.field.skip(g.whitespace),g.regexp(/AS/i).skip(g.whitespace),Oo.identifier.or(Oo.string),(e,r,o)=>RA.named(o,e)),comment:()=>g.Parser((t,e)=>{let r=t.substring(e);if(!r.startsWith("//"))return g.makeFailure(e,"Not a comment");r=r.split(` -`)[0];let o=r.substring(2).trim();return g.makeSuccess(e+r.length,o)}),namedField:t=>g.alt(t.explicitNamedField,gw(Oo.field).map(([e,r])=>RA.named(jw(r),e))),sortField:t=>g.seqMap(Oo.field.skip(g.optWhitespace),g.regexp(/ASCENDING|DESCENDING|ASC|DESC/i).atMost(1),(e,r)=>{let o=r.length==0?"ascending":r[0].toLowerCase();return o=="desc"&&(o="descending"),o=="asc"&&(o="ascending"),{field:e,direction:o}}),headerClause:t=>t.queryType.chain(e=>{switch(e){case"table":return jh(()=>({type:e,fields:[],showId:!0}),g.seqMap(g.regexp(/WITHOUT\s+ID/i).skip(g.optWhitespace).atMost(1),g.sepBy(t.namedField,g.string(",").trim(g.optWhitespace)),(r,o)=>({type:e,fields:o,showId:r.length==0})));case"list":return jh(()=>({type:e,format:void 0,showId:!0}),g.seqMap(g.regexp(/WITHOUT\s+ID/i).skip(g.optWhitespace).atMost(1),Oo.field.atMost(1),(r,o)=>({type:e,format:o.length==1?o[0]:void 0,showId:r.length==0})));case"task":return g.succeed({type:e});case"calendar":return g.whitespace.then(g.seqMap(t.namedField,r=>({type:e,showId:!0,field:r})));default:return g.fail(`Unrecognized query type '${e}'`)}}).desc("TABLE or LIST or TASK or CALENDAR"),fromClause:t=>g.seqMap(g.regexp(/FROM/i),g.whitespace,Oo.source,(e,r,o)=>o),whereClause:t=>g.seqMap(g.regexp(/WHERE/i),g.whitespace,Oo.field,(e,r,o)=>({type:"where",clause:o})).desc("WHERE "),sortByClause:t=>g.seqMap(g.regexp(/SORT/i),g.whitespace,t.sortField.sepBy1(g.string(",").trim(g.optWhitespace)),(e,r,o)=>({type:"sort",fields:o})).desc("SORT field [ASC/DESC]"),limitClause:t=>g.seqMap(g.regexp(/LIMIT/i),g.whitespace,Oo.field,(e,r,o)=>({type:"limit",amount:o})).desc("LIMIT "),flattenClause:t=>g.seqMap(g.regexp(/FLATTEN/i).skip(g.whitespace),t.namedField,(e,r)=>({type:"flatten",field:r})).desc("FLATTEN [AS ]"),groupByClause:t=>g.seqMap(g.regexp(/GROUP BY/i).skip(g.whitespace),t.namedField,(e,r)=>({type:"group",field:r})).desc("GROUP BY [AS ]"),clause:t=>g.alt(t.fromClause,t.whereClause,t.sortByClause,t.limitClause,t.groupByClause,t.flattenClause),query:t=>g.seqMap(t.headerClause.trim(lc),t.fromClause.trim(lc).atMost(1),t.clause.trim(lc).many(),(e,r,o)=>({header:e,source:r.length==0?ra.folder(""):r[0],operations:o,settings:Oc}))}),lc=g.alt(g.whitespace,jg.comment).many().map(t=>t.join("")),xw=t=>t?t.plugins.plugins.dataview?.api:window.DataviewAPI,vw=t=>t.plugins.enabledPlugins.has("dataview");oa.DATE_SHORTHANDS=Ic;oa.DURATION_TYPES=Ec;oa.EXPRESSION=Oo;oa.KEYWORDS=$c;oa.QUERY_LANGUAGE=jg;oa.getAPI=xw;oa.isPluginEnabled=vw;oa.parseField=hw});var OD={};Qm(OD,{BCEvent:()=>lA,default:()=>Fd});module.exports=sk(OD);var Y6=require("obsidian"),xa=require("obsidian");var Nd=["DEBUG","INFO","WARN","ERROR","FEAT"],r_={DEBUG:"#999",INFO:null,WARN:"#f90",ERROR:"#f00",FEAT:"#0f0"},ml=t=>{let e=r_[t],r=`[BC:${t}][${new Date().toISOString().split("T")[1]}]`;return[e?`%c${r}`:r,e?`color: ${r_[t]};`:"",` -`]},Md=class{constructor(e){this.set_level(e)}debug(...e){this.level_i<=0&&console.log(...ml("DEBUG"),...e)}info(...e){this.level_i<=1&&console.log(...ml("INFO"),...e)}warn(...e){this.level_i<=2&&console.log(...ml("WARN"),...e)}error(...e){this.level_i<=3&&console.log(...ml("ERROR"),...e)}feat(...e){this.level_i<=4&&console.log(...ml("FEAT"),...e)}set_level(e){this.level_i=Nd.findIndex(r=>r===e)}},H=new Md("INFO");var fk={},f;function Gn(t){let e=f.__externref_table_alloc();return f.__wbindgen_export_2.set(e,t),e}function qd(t,e){try{return t.apply(this,e)}catch(r){let o=Gn(r);f.__wbindgen_exn_store(o)}}var y_=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&y_.decode();var _l=null;function AA(){return(_l===null||_l.byteLength===0)&&(_l=new Uint8Array(f.memory.buffer)),_l}function Oe(t,e){return t=t>>>0,y_.decode(AA().subarray(t,t+e))}var ue=0,fA=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},ik=typeof fA.encodeInto=="function"?function(t,e){return fA.encodeInto(t,e)}:function(t,e){let r=fA.encode(t);return e.set(r),{read:t.length,written:r.length}};function Je(t,e,r){if(r===void 0){let i=fA.encode(t),l=e(i.length,1)>>>0;return AA().subarray(l,l+i.length).set(i),ue=i.length,l}let o=t.length,a=e(o,1)>>>0,n=AA(),s=0;for(;s127)break;n[a+s]=i}if(s!==o){s!==0&&(t=t.slice(s)),a=r(a,o,o=s+t.length*3,1)>>>0;let i=AA().subarray(a+s,a+o),l=ik(t,i);s+=l.written,a=r(a,o,s,1)>>>0}return ue=s,a}var Ln=null;function on(){return(Ln===null||Ln.buffer.detached===!0||Ln.buffer.detached===void 0&&Ln.buffer!==f.memory.buffer)&&(Ln=new DataView(f.memory.buffer)),Ln}function Ar(t){return t==null}function Vd(t){let e=typeof t;if(e=="number"||e=="boolean"||t==null)return`${t}`;if(e=="string")return`"${t}"`;if(e=="symbol"){let a=t.description;return a==null?"Symbol":`Symbol(${a})`}if(e=="function"){let a=t.name;return typeof a=="string"&&a.length>0?`Function(${a})`:"Function"}if(Array.isArray(t)){let a=t.length,n="[";a>0&&(n+=Vd(t[0]));for(let s=1;s1)o=r[1];else return toString.call(t);if(o=="Object")try{return"Object("+JSON.stringify(t)+")"}catch{return"Object"}return t instanceof Error?`${t.name}: ${t.message} -${t.stack}`:o}function fr(t,e){t=t>>>0;let r=on(),o=[];for(let a=t;a>>0;for(let o=0;o>>0,E_().subarray(t/4,t/4+e)}function I_(t,e){let r=e(t.length*4,4)>>>0;return E_().set(t,r/4),ue=t.length,r}function po(t,e){let r=Je(t,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.create_edge_sorter(r,o,e);if(a[2])throw et(a[1]);return Bo.__wrap(a[0])}function $_(){let t=f.create_graph();return ft.__wrap(t)}var o_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_addedgegraphupdate_free(t>>>0,1)),dA=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,o_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_addedgegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,zr),f.addedgegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e){ve(e,ct);var r=e.__destroy_into_raw();let o=f.addedgegraphupdate_new(r);return this.__wbg_ptr=o>>>0,o_.register(this,this.__wbg_ptr,this),this}},a_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_addnotegraphupdate_free(t>>>0,1)),ri=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,a_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_addnotegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,zr),f.addnotegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e){ve(e,vt);var r=e.__destroy_into_raw();let o=f.addnotegraphupdate_new(r);return this.__wbg_ptr=o>>>0,a_.register(this,this.__wbg_ptr,this),this}},n_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_batchgraphupdate_free(t>>>0,1)),zr=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,n_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_batchgraphupdate_free(e,0)}constructor(){let e=f.batchgraphupdate_new();return this.__wbg_ptr=e>>>0,n_.register(this,this.__wbg_ptr,this),this}},s_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_edgedata_free(t>>>0,1)),cA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,s_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,s_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_edgedata_free(e,0)}get explicit(){return f.__wbg_get_edgedata_explicit(this.__wbg_ptr)!==0}set explicit(e){f.__wbg_set_edgedata_explicit(this.__wbg_ptr,e)}get round(){return f.__wbg_get_edgedata_round(this.__wbg_ptr)}set round(e){f.__wbg_set_edgedata_round(this.__wbg_ptr,e)}get edge_type(){let e,r;try{let o=f.edgedata_edge_type(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}get edge_source(){let e,r;try{let o=f.edgedata_edge_source(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}toString(){let e,r;try{let o=f.edgedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}},i_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_edgelist_free(t>>>0,1)),gl=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,i_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,i_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_edgelist_free(e,0)}group_by_type(){let e=f.edgelist_group_by_type(this.__wbg_ptr);return pA.__wrap(e)}toString(){let e,r;try{let o=f.edgelist_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}get_sorted_edges(e,r){ve(e,ft),ve(r,Bo);let o=f.edgelist_get_sorted_edges(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);if(o[3])throw et(o[2]);var a=fr(o[0],o[1]).slice();return f.__wbindgen_free(o[0],o[1]*4,4),a}last(){let e=f.edgelist_last(this.__wbg_ptr);return e===0?void 0:So.__wrap(e)}first(){let e=f.edgelist_first(this.__wbg_ptr);return e===0?void 0:So.__wrap(e)}to_array(){let e=this.__destroy_into_raw(),r=f.edgelist_to_array(e);var o=fr(r[0],r[1]).slice();return f.__wbindgen_free(r[0],r[1]*4,4),o}get_edges(){let e=f.edgelist_get_edges(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}},l_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_edgesorter_free(t>>>0,1)),Bo=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,l_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,l_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_edgesorter_free(e,0)}},u_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_edgestruct_free(t>>>0,1)),So=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,u_.register(r,r.__wbg_ptr,r),r}static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,u_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_edgestruct_free(e,0)}edge_source(e){let r,o;try{ve(e,ft);let s=f.edgestruct_edge_source(this.__wbg_ptr,e.__wbg_ptr);var a=s[0],n=s[1];if(s[3])throw a=0,n=0,et(s[2]);return r=a,o=n,Oe(a,n)}finally{f.__wbindgen_free(r,o,1)}}source_data(e){ve(e,ft);let r=f.edgestruct_source_data(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw et(r[1]);return Vn.__wrap(r[0])}source_path(e){let r,o;try{ve(e,ft);let s=f.edgestruct_source_path(this.__wbg_ptr,e.__wbg_ptr);var a=s[0],n=s[1];if(s[3])throw a=0,n=0,et(s[2]);return r=a,o=n,Oe(a,n)}finally{f.__wbindgen_free(r,o,1)}}target_data(e){ve(e,ft);let r=f.edgestruct_target_data(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw et(r[1]);return Vn.__wrap(r[0])}target_path(e){let r,o;try{ve(e,ft);let s=f.edgestruct_target_path(this.__wbg_ptr,e.__wbg_ptr);var a=s[0],n=s[1];if(s[3])throw a=0,n=0,et(s[2]);return r=a,o=n,Oe(a,n)}finally{f.__wbindgen_free(r,o,1)}}is_self_loop(){return f.edgestruct_is_self_loop(this.__wbg_ptr)!==0}source_resolved(e){ve(e,ft);let r=f.edgestruct_source_resolved(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw et(r[1]);return r[0]!==0}target_resolved(e){ve(e,ft);let r=f.edgestruct_target_resolved(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw et(r[1]);return r[0]!==0}toString(){let e,r;try{let o=f.edgestruct_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}stringify_source(e,r){let o,a;try{ve(e,ft),ve(r,an);let i=f.edgestruct_stringify_source(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);var n=i[0],s=i[1];if(i[3])throw n=0,s=0,et(i[2]);return o=n,a=s,Oe(n,s)}finally{f.__wbindgen_free(o,a,1)}}stringify_target(e,r){let o,a;try{ve(e,ft),ve(r,an);let i=f.edgestruct_stringify_target(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);var n=i[0],s=i[1];if(i[3])throw n=0,s=0,et(i[2]);return o=n,a=s,Oe(n,s)}finally{f.__wbindgen_free(o,a,1)}}get_attribute_label(e,r){let o,a;try{ve(e,ft);let i=dt(r,f.__wbindgen_malloc),l=ue,u=f.edgestruct_get_attribute_label(this.__wbg_ptr,e.__wbg_ptr,i,l);var n=u[0],s=u[1];if(u[3])throw n=0,s=0,et(u[2]);return o=n,a=s,Oe(n,s)}finally{f.__wbindgen_free(o,a,1)}}matches_edge_filter(e,r){ve(e,ft);var o=Ar(r)?0:dt(r,f.__wbindgen_malloc),a=ue;let n=f.edgestruct_matches_edge_filter(this.__wbg_ptr,e.__wbg_ptr,o,a);if(n[2])throw et(n[1]);return n[0]!==0}round(e){ve(e,ft);let r=f.edgestruct_round(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw et(r[1]);return r[0]}explicit(e){ve(e,ft);let r=f.edgestruct_explicit(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw et(r[1]);return r[0]!==0}edge_data(e){ve(e,ft);let r=f.edgestruct_edge_data(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw et(r[1]);return cA.__wrap(r[0])}get edge_type(){let e,r;try{let o=f.edgestruct_edge_type(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}},A_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_flattraversaldata_free(t>>>0,1)),jl=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,A_.register(r,r.__wbg_ptr,r),r}static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,A_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_flattraversaldata_free(e,0)}get_attribute_label(e,r){let o,a;try{ve(e,ft);let i=dt(r,f.__wbindgen_malloc),l=ue,u=f.flattraversaldata_get_attribute_label(this.__wbg_ptr,e.__wbg_ptr,i,l);var n=u[0],s=u[1];if(u[3])throw n=0,s=0,et(u[2]);return o=n,a=s,Oe(n,s)}finally{f.__wbindgen_free(o,a,1)}}to_js_rendering_obj(e,r,o){ve(e,ft),ve(r,an);let a=dt(o,f.__wbindgen_malloc),n=ue,s=f.flattraversaldata_to_js_rendering_obj(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr,a,n);if(s[2])throw et(s[1]);return et(s[0])}get edge(){let e=f.__wbg_get_flattraversaldata_edge(this.__wbg_ptr);return So.__wrap(e)}set edge(e){ve(e,So);var r=e.__destroy_into_raw();f.__wbg_set_flattraversaldata_edge(this.__wbg_ptr,r)}get depth(){return f.__wbg_get_flattraversaldata_depth(this.__wbg_ptr)>>>0}set depth(e){f.__wbg_set_flattraversaldata_depth(this.__wbg_ptr,e)}get number_of_children(){return f.__wbg_get_flattraversaldata_number_of_children(this.__wbg_ptr)>>>0}set number_of_children(e){f.__wbg_set_flattraversaldata_number_of_children(this.__wbg_ptr,e)}get children(){let e=f.__wbg_get_flattraversaldata_children(this.__wbg_ptr);var r=Ud(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set children(e){let r=I_(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_flattraversaldata_children(this.__wbg_ptr,r,o)}get has_cut_of_children(){return f.__wbg_get_flattraversaldata_has_cut_of_children(this.__wbg_ptr)!==0}set has_cut_of_children(e){f.__wbg_set_flattraversaldata_has_cut_of_children(this.__wbg_ptr,e)}},f_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_flattraversalresult_free(t>>>0,1)),zd=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,f_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,f_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_flattraversalresult_free(e,0)}data_at_index(e){let r=f.flattraversalresult_data_at_index(this.__wbg_ptr,e);return r===0?void 0:jl.__wrap(r)}toString(){let e,r;try{let o=f.flattraversalresult_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}children_at_index(e){let r=f.flattraversalresult_children_at_index(this.__wbg_ptr,e),o;return r[0]!==0&&(o=Ud(r[0],r[1]).slice(),f.__wbindgen_free(r[0],r[1]*4,4)),o}rendering_obj_at_index(e,r,o,a){ve(r,ft),ve(o,an);let n=dt(a,f.__wbindgen_malloc),s=ue,i=f.flattraversalresult_rendering_obj_at_index(this.__wbg_ptr,e,r.__wbg_ptr,o.__wbg_ptr,n,s);if(i[2])throw et(i[1]);return et(i[0])}sort(e,r){ve(e,ft),ve(r,Bo);let o=f.flattraversalresult_sort(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);if(o[1])throw et(o[0])}is_empty(){return f.flattraversalresult_is_empty(this.__wbg_ptr)!==0}get data(){let e=f.__wbg_get_flattraversalresult_data(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set data(e){let r=dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_flattraversalresult_data(this.__wbg_ptr,r,o)}get node_count(){return f.__wbg_get_flattraversalresult_node_count(this.__wbg_ptr)>>>0}set node_count(e){f.__wbg_set_flattraversalresult_node_count(this.__wbg_ptr,e)}get max_depth(){return f.__wbg_get_flattraversaldata_number_of_children(this.__wbg_ptr)>>>0}set max_depth(e){f.__wbg_set_flattraversaldata_number_of_children(this.__wbg_ptr,e)}get hit_depth_limit(){return f.__wbg_get_flattraversalresult_hit_depth_limit(this.__wbg_ptr)!==0}set hit_depth_limit(e){f.__wbg_set_flattraversalresult_hit_depth_limit(this.__wbg_ptr,e)}get traversal_time(){let e=f.__wbg_get_flattraversalresult_traversal_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set traversal_time(e){f.__wbg_set_flattraversalresult_traversal_time(this.__wbg_ptr,e)}get entry_nodes(){let e=f.__wbg_get_flattraversalresult_entry_nodes(this.__wbg_ptr);var r=Ud(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set entry_nodes(e){let r=I_(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_flattraversalresult_entry_nodes(this.__wbg_ptr,r,o)}},d_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_gcedgedata_free(t>>>0,1)),ct=class t{static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,d_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_gcedgedata_free(e,0)}toString(){let e,r;try{let o=f.gcedgedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e,r,o,a){let n=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),s=ue,i=Je(r,f.__wbindgen_malloc,f.__wbindgen_realloc),l=ue,u=Je(o,f.__wbindgen_malloc,f.__wbindgen_realloc),A=ue,c=Je(a,f.__wbindgen_malloc,f.__wbindgen_realloc),p=ue,m=f.gcedgedata_new(n,s,i,l,u,A,c,p);return this.__wbg_ptr=m>>>0,d_.register(this,this.__wbg_ptr,this),this}},c_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_gcnodedata_free(t>>>0,1)),vt=class t{static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,c_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_gcnodedata_free(e,0)}toString(){let e,r;try{let o=f.gcnodedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n){let s=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),i=ue,l=dt(r,f.__wbindgen_malloc),u=ue,A=f.gcnodedata_new(s,i,l,u,o,a,n);return this.__wbg_ptr=A>>>0,c_.register(this,this.__wbg_ptr,this),this}},p_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_groupededgelist_free(t>>>0,1)),pA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,p_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,p_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_groupededgelist_free(e,0)}toString(){let e,r;try{let o=f.groupededgelist_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}get_sorted_edges(e,r,o){let a=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),n=ue;ve(r,ft),ve(o,Bo);let s=f.groupededgelist_get_sorted_edges(this.__wbg_ptr,a,n,r.__wbg_ptr,o.__wbg_ptr);if(s[3])throw et(s[2]);let i;return s[0]!==0&&(i=fr(s[0],s[1]).slice(),f.__wbindgen_free(s[0],s[1]*4,4)),i}get_edges(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.groupededgelist_get_edges(this.__wbg_ptr,r,o),n;return a[0]!==0&&(n=fr(a[0],a[1]).slice(),f.__wbindgen_free(a[0],a[1]*4,4)),n}},m_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_mermaidgraphdata_free(t>>>0,1)),Wd=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,m_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,m_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_mermaidgraphdata_free(e,0)}toString(){let e,r;try{let o=f.mermaidgraphdata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}get mermaid(){let e,r;try{let o=f.__wbg_get_mermaidgraphdata_mermaid(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}set mermaid(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue;f.__wbg_set_mermaidgraphdata_mermaid(this.__wbg_ptr,r,o)}get traversal_time(){let e=f.__wbg_get_mermaidgraphdata_traversal_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set traversal_time(e){f.__wbg_set_mermaidgraphdata_traversal_time(this.__wbg_ptr,e)}get total_time(){let e=f.__wbg_get_mermaidgraphdata_total_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set total_time(e){f.__wbg_set_mermaidgraphdata_total_time(this.__wbg_ptr,e)}},__=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_mermaidgraphoptions_free(t>>>0,1)),Hn=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,__.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_mermaidgraphoptions_free(e,0)}toString(){let e,r;try{let o=f.mermaidgraphoptions_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n,s,i,l,u){var A=Ar(e)?0:Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),c=ue;let p=Je(r,f.__wbindgen_malloc,f.__wbindgen_realloc),m=ue,h=Je(o,f.__wbindgen_malloc,f.__wbindgen_realloc),y=ue,I=Je(a,f.__wbindgen_malloc,f.__wbindgen_realloc),F=ue,R=dt(s,f.__wbindgen_malloc),B=ue,j=0;Ar(i)||(ve(i,Bo),j=i.__destroy_into_raw());let E=f.mermaidgraphoptions_new(A,c,p,m,h,y,I,F,n,R,B,j,Ar(l)?0:Gn(l),u);return this.__wbg_ptr=E>>>0,__.register(this,this.__wbg_ptr,this),this}},Pd=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_nodedata_free(t>>>0,1)),Vn=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,Pd.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,Pd.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_nodedata_free(e,0)}get path(){let e,r;try{let o=f.__wbg_get_nodedata_path(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}set path(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue;f.__wbg_set_nodedata_path(this.__wbg_ptr,r,o)}get aliases(){let e=f.__wbg_get_nodedata_aliases(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set aliases(e){let r=dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_nodedata_aliases(this.__wbg_ptr,r,o)}get resolved(){return f.__wbg_get_nodedata_resolved(this.__wbg_ptr)!==0}set resolved(e){f.__wbg_set_nodedata_resolved(this.__wbg_ptr,e)}get ignore_in_edges(){return f.__wbg_get_nodedata_ignore_in_edges(this.__wbg_ptr)!==0}set ignore_in_edges(e){f.__wbg_set_nodedata_ignore_in_edges(this.__wbg_ptr,e)}get ignore_out_edges(){return f.__wbg_get_nodedata_ignore_out_edges(this.__wbg_ptr)!==0}set ignore_out_edges(e){f.__wbg_set_nodedata_ignore_out_edges(this.__wbg_ptr,e)}toString(){let e,r;try{let o=f.nodedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n){let s=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),i=ue,l=dt(r,f.__wbindgen_malloc),u=ue,A=f.nodedata_new(s,i,l,u,o,a,n);return this.__wbg_ptr=A>>>0,Pd.register(this,this.__wbg_ptr,this),this}},h_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_nodestringifyoptions_free(t>>>0,1)),an=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,h_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_nodestringifyoptions_free(e,0)}stringify_node(e){let r,o;try{ve(e,Vn);let a=f.nodestringifyoptions_stringify_node(this.__wbg_ptr,e.__wbg_ptr);return r=a[0],o=a[1],Oe(a[0],a[1])}finally{f.__wbindgen_free(r,o,1)}}constructor(e,r,o,a){var n=Ar(a)?0:Je(a,f.__wbindgen_malloc,f.__wbindgen_realloc),s=ue;let i=f.nodestringifyoptions_new(e,r,o,n,s);return this.__wbg_ptr=i>>>0,h_.register(this,this.__wbg_ptr,this),this}},g_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_notegraph_free(t>>>0,1)),ft=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,g_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,g_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_notegraph_free(e,0)}edge_types(){let e=f.notegraph_edge_types(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}build_graph(e,r,o){let a=dt(e,f.__wbindgen_malloc),n=ue,s=dt(r,f.__wbindgen_malloc),i=ue,l=dt(o,f.__wbindgen_malloc),u=ue,A=f.notegraph_build_graph(this.__wbg_ptr,a,n,s,i,l,u);if(A[1])throw et(A[0])}apply_update(e){ve(e,zr);var r=e.__destroy_into_raw();let o=f.notegraph_apply_update(this.__wbg_ptr,r);if(o[1])throw et(o[0])}iterate_edges(e){f.notegraph_iterate_edges(this.__wbg_ptr,e)}iterate_nodes(e){f.notegraph_iterate_nodes(this.__wbg_ptr,e)}notify_update(){f.notegraph_notify_update(this.__wbg_ptr)}is_node_resolved(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue;return f.notegraph_is_node_resolved(this.__wbg_ptr,r,o)!==0}get_incoming_edges(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.notegraph_get_incoming_edges(this.__wbg_ptr,r,o);return gl.__wrap(a)}get_outgoing_edges(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.notegraph_get_outgoing_edges(this.__wbg_ptr,r,o);return gl.__wrap(a)}set_update_callback(e){f.notegraph_set_update_callback(this.__wbg_ptr,e)}get_filtered_outgoing_edges(e,r){let o=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),a=ue;var n=Ar(r)?0:dt(r,f.__wbindgen_malloc),s=ue;let i=f.notegraph_get_filtered_outgoing_edges(this.__wbg_ptr,o,a,n,s);return gl.__wrap(i)}get_filtered_grouped_outgoing_edges(e,r){let o=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),a=ue;var n=Ar(r)?0:dt(r,f.__wbindgen_malloc),s=ue;let i=f.notegraph_get_filtered_grouped_outgoing_edges(this.__wbg_ptr,o,a,n,s);return pA.__wrap(i)}log(){f.notegraph_log(this.__wbg_ptr)}static new(){let e=f.notegraph_new();return t.__wrap(e)}get_node(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.notegraph_get_node(this.__wbg_ptr,r,o);return a===0?void 0:Vn.__wrap(a)}has_node(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue;return f.notegraph_has_node(this.__wbg_ptr,r,o)!==0}rec_traverse(e){ve(e,Nt);var r=e.__destroy_into_raw();let o=f.notegraph_rec_traverse(this.__wbg_ptr,r);if(o[2])throw et(o[1]);return Yd.__wrap(o[0])}rec_traverse_and_process(e,r){ve(e,Nt);var o=e.__destroy_into_raw();ve(r,co);var a=r.__destroy_into_raw();let n=f.notegraph_rec_traverse_and_process(this.__wbg_ptr,o,a);if(n[2])throw et(n[1]);return zd.__wrap(n[0])}generate_mermaid_graph(e,r){ve(e,Nt);var o=e.__destroy_into_raw();ve(r,Hn);var a=r.__destroy_into_raw();let n=f.notegraph_generate_mermaid_graph(this.__wbg_ptr,o,a);if(n[2])throw et(n[1]);return Wd.__wrap(n[0])}},Rd=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_notegrapherror_free(t>>>0,1)),$a=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,Rd.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,Rd.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_notegrapherror_free(e,0)}toString(){let e,r;try{let o=f.notegrapherror_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.notegrapherror_new(r,o);return this.__wbg_ptr=a>>>0,Rd.register(this,this.__wbg_ptr,this),this}get message(){let e,r;try{let o=f.notegrapherror_message(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}},j_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_path_free(t>>>0,1)),Kd=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,j_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,j_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_path_free(e,0)}get edges(){let e=f.__wbg_get_path_edges(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set edges(e){let r=dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_path_edges(this.__wbg_ptr,r,o)}get reverse_edges(){let e=f.path_reverse_edges(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}toString(){let e,r;try{let o=f.path_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}get_first_target(e){ve(e,ft);let r=f.path_get_first_target(this.__wbg_ptr,e.__wbg_ptr);if(r[3])throw et(r[2]);let o;return r[0]!==0&&(o=Oe(r[0],r[1]).slice(),f.__wbindgen_free(r[0],r[1]*1,1)),o}equals(e){return ve(e,t),f.path_equals(this.__wbg_ptr,e.__wbg_ptr)!==0}length(){return f.path_length(this.__wbg_ptr)>>>0}truncate(e){let r=f.path_truncate(this.__wbg_ptr,e);return t.__wrap(r)}},x_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_pathlist_free(t>>>0,1)),Zd=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,x_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,x_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_pathlist_free(e,0)}toString(){let e,r;try{let o=f.pathlist_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}select(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.pathlist_select(this.__wbg_ptr,r,o);return t.__wrap(a)}process(e,r){ve(e,ft);let o=f.pathlist_process(this.__wbg_ptr,e.__wbg_ptr,r);if(o[3])throw et(o[2]);var a=fr(o[0],o[1]).slice();return f.__wbindgen_free(o[0],o[1]*4,4),a}to_paths(){let e=f.pathlist_to_paths(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}max_depth(){return f.pathlist_max_depth(this.__wbg_ptr)>>>0}},PD=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_removeedgegraphupdate_free(t>>>0,1));var v_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_removenotegraphupdate_free(t>>>0,1)),mA=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,v_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_removenotegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,zr),f.removenotegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e){let r=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),o=ue,a=f.removenotegraphupdate_new(r,o);return this.__wbg_ptr=a>>>0,v_.register(this,this.__wbg_ptr,this),this}},k_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_renamenotegraphupdate_free(t>>>0,1)),_A=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,k_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_renamenotegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,zr),f.renamenotegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e,r){let o=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),a=ue,n=Je(r,f.__wbindgen_malloc,f.__wbindgen_realloc),s=ue,i=f.renamenotegraphupdate_new(o,a,n,s);return this.__wbg_ptr=i>>>0,k_.register(this,this.__wbg_ptr,this),this}},b_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_transitivegraphrule_free(t>>>0,1)),Un=class t{static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,b_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_transitivegraphrule_free(e,0)}toString(){let e,r;try{let o=f.transitivegraphrule_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}create_example_graph(){let e=f.transitivegraphrule_create_example_graph(this.__wbg_ptr);if(e[2])throw et(e[1]);return ft.__wrap(e[0])}constructor(e,r,o,a,n,s){let i=Je(e,f.__wbindgen_malloc,f.__wbindgen_realloc),l=ue,u=dt(r,f.__wbindgen_malloc),A=ue,c=Je(o,f.__wbindgen_malloc,f.__wbindgen_realloc),p=ue,m=f.transitivegraphrule_new(i,l,u,A,c,p,a,n,s);return this.__wbg_ptr=m>>>0,b_.register(this,this.__wbg_ptr,this),this}},RD=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_transitiverulesgraphupdate_free(t>>>0,1));var Ld=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_traversaldata_free(t>>>0,1)),hA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,Ld.register(r,r.__wbg_ptr,r),r}static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,Ld.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_traversaldata_free(e,0)}toString(){let e,r;try{let o=f.traversaldata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}rec_sort_children(e,r){ve(e,ft),ve(r,Bo);let o=f.traversaldata_rec_sort_children(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);if(o[1])throw et(o[0])}constructor(e,r,o,a,n){ve(e,So);var s=e.__destroy_into_raw();let i=dt(a,f.__wbindgen_malloc),l=ue,u=f.traversaldata_new(s,r,o,i,l,n);return this.__wbg_ptr=u>>>0,Ld.register(this,this.__wbg_ptr,this),this}get edge(){let e=f.__wbg_get_flattraversaldata_edge(this.__wbg_ptr);return So.__wrap(e)}set edge(e){ve(e,So);var r=e.__destroy_into_raw();f.__wbg_set_flattraversaldata_edge(this.__wbg_ptr,r)}get depth(){return f.__wbg_get_flattraversaldata_depth(this.__wbg_ptr)>>>0}set depth(e){f.__wbg_set_flattraversaldata_depth(this.__wbg_ptr,e)}get number_of_children(){return f.__wbg_get_flattraversaldata_number_of_children(this.__wbg_ptr)>>>0}set number_of_children(e){f.__wbg_set_flattraversaldata_number_of_children(this.__wbg_ptr,e)}get children(){let e=f.__wbg_get_traversaldata_children(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set children(e){let r=dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_traversaldata_children(this.__wbg_ptr,r,o)}get has_cut_of_children(){return f.__wbg_get_flattraversaldata_has_cut_of_children(this.__wbg_ptr)!==0}set has_cut_of_children(e){f.__wbg_set_flattraversaldata_has_cut_of_children(this.__wbg_ptr,e)}},w_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_traversaloptions_free(t>>>0,1)),Nt=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,w_.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_traversaloptions_free(e,0)}toString(){let e,r;try{let o=f.traversaloptions_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n,s){let i=dt(e,f.__wbindgen_malloc),l=ue;var u=Ar(r)?0:dt(r,f.__wbindgen_malloc),A=ue,c=Ar(s)?0:dt(s,f.__wbindgen_malloc),p=ue;let m=f.traversaloptions_new(i,l,u,A,o,a,n,c,p);return this.__wbg_ptr=m>>>0,w_.register(this,this.__wbg_ptr,this),this}get entry_nodes(){let e=f.__wbg_get_traversaloptions_entry_nodes(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set entry_nodes(e){let r=dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_traversaloptions_entry_nodes(this.__wbg_ptr,r,o)}get edge_types(){let e=f.__wbg_get_traversaloptions_edge_types(this.__wbg_ptr),r;return e[0]!==0&&(r=fr(e[0],e[1]).slice(),f.__wbindgen_free(e[0],e[1]*4,4)),r}set edge_types(e){var r=Ar(e)?0:dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_traversaloptions_edge_types(this.__wbg_ptr,r,o)}get max_depth(){return f.__wbg_get_traversaloptions_max_depth(this.__wbg_ptr)>>>0}set max_depth(e){f.__wbg_set_traversaloptions_max_depth(this.__wbg_ptr,e)}get max_traversal_count(){return f.__wbg_get_traversaloptions_max_traversal_count(this.__wbg_ptr)>>>0}set max_traversal_count(e){f.__wbg_set_traversaloptions_max_traversal_count(this.__wbg_ptr,e)}get separate_edges(){return f.__wbg_get_traversaloptions_separate_edges(this.__wbg_ptr)!==0}set separate_edges(e){f.__wbg_set_traversaloptions_separate_edges(this.__wbg_ptr,e)}get dataview_from_paths(){let e=f.__wbg_get_traversaloptions_dataview_from_paths(this.__wbg_ptr),r;return e[0]!==0&&(r=fr(e[0],e[1]).slice(),f.__wbindgen_free(e[0],e[1]*4,4)),r}set dataview_from_paths(e){var r=Ar(e)?0:dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_traversaloptions_dataview_from_paths(this.__wbg_ptr,r,o)}},Gd=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_traversalpostprocessoptions_free(t>>>0,1)),co=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,Gd.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,Gd.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_traversalpostprocessoptions_free(e,0)}get sorter(){let e=f.__wbg_get_traversalpostprocessoptions_sorter(this.__wbg_ptr);return e===0?void 0:Bo.__wrap(e)}set sorter(e){let r=0;Ar(e)||(ve(e,Bo),r=e.__destroy_into_raw()),f.__wbg_set_traversalpostprocessoptions_sorter(this.__wbg_ptr,r)}get flatten(){return f.__wbg_get_traversalpostprocessoptions_flatten(this.__wbg_ptr)!==0}set flatten(e){f.__wbg_set_traversalpostprocessoptions_flatten(this.__wbg_ptr,e)}static without_sorter(e){let r=f.traversalpostprocessoptions_without_sorter(e);return t.__wrap(r)}toString(){let e,r;try{let o=f.traversalpostprocessoptions_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e,r){ve(e,Bo);let o=f.traversalpostprocessoptions_new(e.__wbg_ptr,r);return this.__wbg_ptr=o>>>0,Gd.register(this,this.__wbg_ptr,this),this}},Hd=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>f.__wbg_traversalresult_free(t>>>0,1)),Yd=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,Hd.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,Hd.unregister(this),e}free(){let e=this.__destroy_into_raw();f.__wbg_traversalresult_free(e,0)}toString(){let e,r;try{let o=f.traversalresult_toString(this.__wbg_ptr);return e=o[0],r=o[1],Oe(o[0],o[1])}finally{f.__wbindgen_free(e,r,1)}}constructor(e,r){let o=dt(e,f.__wbindgen_malloc),a=ue,n=f.traversalresult_new(o,a,r);return this.__wbg_ptr=n>>>0,Hd.register(this,this.__wbg_ptr,this),this}is_empty(){return f.flattraversalresult_is_empty(this.__wbg_ptr)!==0}to_paths(){let e=f.traversalresult_to_paths(this.__wbg_ptr);return Zd.__wrap(e)}get data(){let e=f.__wbg_get_traversalresult_data(this.__wbg_ptr);var r=fr(e[0],e[1]).slice();return f.__wbindgen_free(e[0],e[1]*4,4),r}set data(e){let r=dt(e,f.__wbindgen_malloc),o=ue;f.__wbg_set_traversalresult_data(this.__wbg_ptr,r,o)}get node_count(){return f.__wbg_get_traversalresult_node_count(this.__wbg_ptr)>>>0}set node_count(e){f.__wbg_set_traversalresult_node_count(this.__wbg_ptr,e)}get max_depth(){return f.__wbg_get_traversalresult_max_depth(this.__wbg_ptr)>>>0}set max_depth(e){f.__wbg_set_traversalresult_max_depth(this.__wbg_ptr,e)}get hit_depth_limit(){return f.__wbg_get_traversalresult_hit_depth_limit(this.__wbg_ptr)!==0}set hit_depth_limit(e){f.__wbg_set_traversalresult_hit_depth_limit(this.__wbg_ptr,e)}get traversal_time(){let e=f.__wbg_get_flattraversalresult_traversal_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set traversal_time(e){f.__wbg_set_flattraversalresult_traversal_time(this.__wbg_ptr,e)}};async function lk(t,e){if(typeof Response=="function"&&t instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(t,e)}catch(o){if(t.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",o);else throw o}let r=await t.arrayBuffer();return await WebAssembly.instantiate(r,e)}else{let r=await WebAssembly.instantiate(t,e);return r instanceof WebAssembly.Instance?{instance:r,module:t}:r}}function uk(){let t={};return t.wbg={},t.wbg.__wbg_call_672a4d21634d4a24=function(){return qd(function(e,r){return e.call(r)},arguments)},t.wbg.__wbg_call_7cccdd69e0791ae2=function(){return qd(function(e,r,o){return e.call(r,o)},arguments)},t.wbg.__wbg_debug_0e292a0dbaeda7f1=function(e,r,o){e.debug(Oe(r,o))},t.wbg.__wbg_edgedata_new=function(e){return cA.__wrap(e)},t.wbg.__wbg_edgestruct_new=function(e){return So.__wrap(e)},t.wbg.__wbg_edgestruct_unwrap=function(e){return So.__unwrap(e)},t.wbg.__wbg_error_7534b8e9a36f1ab4=function(e,r){let o,a;try{o=e,a=r,console.error(Oe(e,r))}finally{f.__wbindgen_free(o,a,1)}},t.wbg.__wbg_flattraversaldata_new=function(e){return jl.__wrap(e)},t.wbg.__wbg_flattraversaldata_unwrap=function(e){return jl.__unwrap(e)},t.wbg.__wbg_gcedgedata_unwrap=function(e){return ct.__unwrap(e)},t.wbg.__wbg_gcnodedata_unwrap=function(e){return vt.__unwrap(e)},t.wbg.__wbg_info_398bf5d211409814=function(e,r,o){e.info(Oe(r,o))},t.wbg.__wbg_new_405e22f390576ce2=function(){return new Object},t.wbg.__wbg_new_8a6f238a6ece86ea=function(){return new Error},t.wbg.__wbg_newnoargs_105ed471475aaf50=function(e,r){return new Function(Oe(e,r))},t.wbg.__wbg_nodedata_new=function(e){return Vn.__wrap(e)},t.wbg.__wbg_notegrapherror_new=function(e){return $a.__wrap(e)},t.wbg.__wbg_now_2c95c9de01293173=function(e){return e.now()},t.wbg.__wbg_path_new=function(e){return Kd.__wrap(e)},t.wbg.__wbg_performance_7a3ffd0b17f663ad=function(e){return e.performance},t.wbg.__wbg_set_bb8cecf6a62b9f46=function(){return qd(function(e,r,o){return Reflect.set(e,r,o)},arguments)},t.wbg.__wbg_stack_0ed75d68575b0f3c=function(e,r){let o=r.stack,a=Je(o,f.__wbindgen_malloc,f.__wbindgen_realloc),n=ue;on().setInt32(e+4,n,!0),on().setInt32(e+0,a,!0)},t.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let e=typeof global>"u"?null:global;return Ar(e)?0:Gn(e)},t.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let e=typeof globalThis>"u"?null:globalThis;return Ar(e)?0:Gn(e)},t.wbg.__wbg_static_accessor_LOGGER_849a70838e9094f0=function(){return H},t.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let e=typeof self>"u"?null:self;return Ar(e)?0:Gn(e)},t.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let e=typeof window>"u"?null:window;return Ar(e)?0:Gn(e)},t.wbg.__wbg_transitivegraphrule_unwrap=function(e){return Un.__unwrap(e)},t.wbg.__wbg_traversaldata_new=function(e){return hA.__wrap(e)},t.wbg.__wbg_traversaldata_unwrap=function(e){return hA.__unwrap(e)},t.wbg.__wbg_warn_4a2380c6903b0443=function(e,r,o){e.warn(Oe(r,o))},t.wbg.__wbindgen_debug_string=function(e,r){let o=Vd(r),a=Je(o,f.__wbindgen_malloc,f.__wbindgen_realloc),n=ue;on().setInt32(e+4,n,!0),on().setInt32(e+0,a,!0)},t.wbg.__wbindgen_init_externref_table=function(){let e=f.__wbindgen_export_2,r=e.grow(4);e.set(0,void 0),e.set(r+0,void 0),e.set(r+1,null),e.set(r+2,!0),e.set(r+3,!1)},t.wbg.__wbindgen_is_undefined=function(e){return e===void 0},t.wbg.__wbindgen_string_get=function(e,r){let o=r,a=typeof o=="string"?o:void 0;var n=Ar(a)?0:Je(a,f.__wbindgen_malloc,f.__wbindgen_realloc),s=ue;on().setInt32(e+4,s,!0),on().setInt32(e+0,n,!0)},t.wbg.__wbindgen_string_new=function(e,r){return Oe(e,r)},t.wbg.__wbindgen_throw=function(e,r){throw new Error(Oe(e,r))},t}function Ak(t,e){return f=t.exports,D_.__wbindgen_wasm_module=e,Ln=null,hl=null,_l=null,f.__wbindgen_start(),f}async function D_(t){if(f!==void 0)return f;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module_or_path:t}=t:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),typeof t>"u"&&(t=new URL("breadcrumbs_graph_wasm_bg.wasm",fk.url));let e=uk();(typeof t=="string"||typeof Request=="function"&&t instanceof Request||typeof URL=="function"&&t instanceof URL)&&(t=fetch(t));let{instance:r,module:o}=await lk(await t,e);return Ak(r,o)}var F_=D_;function hr(t,e){let r=t?.explicit_edge_sources?.dendron_note??{enabled:!1};return new an(e.ext,e.folder,e.alias,r.enabled&&r.display_trimmed?r.delimiter:void 0)}var xl=["field","explicit","source","implied_kind","round"];function Jd(t,e){let r={...t};for(let o in e){let a=t[o],n=e[o];typeof a=="object"&&typeof n=="object"&&!Array.isArray(a)&&!Array.isArray(n)?r[o]=Jd(a,n):a===void 0&&(r[o]=n)}return r}var B_=(t,e)=>{let r=t;for(let o of e){if(r[o]===void 0)return;r=r[o]}return r};var S_=t=>Object.fromEntries(Object.entries(t).filter(([e,r])=>r!=null));function gA(t,e=","){return!t||t===""?[]:t.split(e).map(r=>r.trim())}function jA(t,e='"',r=", "){return t.map(o=>e+o+e).join(r)}function Xd(t,e){return t.startsWith(e)?t:e+t}function C_(t,e){return t.endsWith(e)?t:t+e}function Qd(t,e){return t.endsWith(e)?t.slice(0,-e.length):t}var dk=/{{(.*?)}}/g;function T_(t,e){let r=t.slice();return r.match(dk)?.forEach(o=>{let a=o.slice(2,-2),n=B_(e,a.split("."));if(n!==void 0){let s=String(n);r=r.replace(o,s)}}),r}function O_(t,e=""){return"```"+e+` -`+t+"\n```"}function M_(t,e="md"){return C_(t,"."+e)}function ec(t){return t.replace(/\.[^.]+$/,"")}function ck(t){return t.split(".").pop()}function N_(t){return t.split("/").pop()}function pk(t){return t.split("/").slice(0,-1).join("/")}function mk(t){return ec(t.split("/").pop())}function q_(t){return t.replace(/\/+/g,"/").replace(/^\//,"")}function _k(t,e,r){return M_(q_(t+"/"+e),r)}function hk(t,e){let r=t.slice();return e?.folder||(r=N_(r)),e?.ext||(r=ec(r)),r}var mt={ensure_ext:M_,extname:ck,basename:mk,dirname:pk,drop_ext:ec,drop_folder:N_,build:_k,normalize:q_,show:hk};var gk=(t,e,r)=>{let o=t.fileManager.getNewFileParent(r,e);return mt.build(o.path,mt.basename(e),"md")},jk=(t,e,r)=>{switch(r.link_kind){case"none":return e;case"wiki":{let o=mt.drop_ext(t);return e===t?`[[${o}]]`:`[[${o}|${e}]]`}case"markdown":return e===t?`[${t}](${t})`:`[${e}](${t})`}},nn={ify:jk,resolve_to_absolute_path:gk};var oi={fields:[],indent:"\\t",link_kind:"wiki",show_attributes:[],field_group_labels:[],edge_sort_id:{order:1,field:"basename"},show_node_options:{ext:!1,alias:!0,folder:!1}};function vl(t,e,r,o){if(!e)return"";let a=e.data,n=Array.from(e.entry_nodes).map(s=>a[s]);return P_(t,a,n,r,o)}function P_(t,e,r,o,a){let n="",s=a.indent.replace(/\\t/g," ");return r.forEach(i=>{let{edge:l,children:u,depth:A}=i,c=l.stringify_target(t,hr(o,a.show_node_options)),p=nn.ify(l.target_path(t),c,{link_kind:a.link_kind}),m=l.get_attribute_label(t,a.show_attributes);n+=s.repeat(A-1)+(m?`- ${p} (${m}) +`+I.join(", ")),` +`].join("");var I}function bt(_){return _.flags!==void 0?_.flags:[_.global?"g":"",_.ignoreCase?"i":"",_.multiline?"m":"",_.unicode?"u":"",_.sticky?"y":""].join("")}function Vt(){for(var _=[].slice.call(arguments),j=_.length,I=0;I=2?R(j):j=0;var I=function(U){return RegExp("^(?:"+U.source+")",bt(U))}(_),N=""+_;return n(function(U,z){var W=I.exec(U.slice(z));if(W){if(0<=j&&j<=W.length){var Ie=W[0],_t=W[j];return v(z+Ie.length,_t)}return B(z,"valid match group (0 to "+W.length+") in "+N)}return B(z,N)})}function Er(_){return n(function(j,I){return v(I,_)})}function Bo(_){return n(function(j,I){return B(I,_)})}function ea(_){if(x(_))return n(function(j,I){var N=_._(j,I);return N.index=I,N.value="",N});if(typeof _=="string")return ea(gt(_));if(_ instanceof RegExp)return ea(Mt(_));throw new Error("not a string, regexp, or parser: "+_)}function ta(_){return le(_),n(function(j,I){var N=_._(j,I),U=j.slice(I,N.index);return N.status?B(I,'not "'+U+'"'):v(I,null)})}function on(_){return K(_),n(function(j,I){var N=Be(j,I);return I=_.length?B(j,"any character/byte"):v(j+1,Be(_,j))}),Al=n(function(_,j){return v(_.length,_.slice(j))}),Ea=n(function(_,j){return j<_.length?B(j,"EOF"):v(j,null)}),cl=Mt(/[0-9]/).desc("a digit"),ff=Mt(/[0-9]*/).desc("optional digits"),Ks=Mt(/[a-z]/i).desc("a letter"),SA=Mt(/[a-z]*/i).desc("optional letters"),CA=Mt(/\s*/).desc("optional whitespace"),TA=Mt(/\s+/).desc("whitespace"),wt=gt("\r"),co=gt(` +`),Zs=gt(`\r +`),Ys=Ao(Zs,co,wt).desc("newline"),OA=Ao(Ys,Ea);n.all=Al,n.alt=Ao,n.any=dl,n.cr=wt,n.createLanguage=function(_){var j={};for(var I in _)({}).hasOwnProperty.call(_,I)&&function(N){j[N]=wa(function(){return _[N](j)})}(I);return j},n.crlf=Zs,n.custom=function(_){return n(_(v,B))},n.digit=cl,n.digits=ff,n.empty=fl,n.end=OA,n.eof=Ea,n.fail=Bo,n.formatError=ba,n.index=ya,n.isParser=x,n.lazy=wa,n.letter=Ks,n.letters=SA,n.lf=co,n.lookahead=ea,n.makeFailure=B,n.makeSuccess=v,n.newline=Ys,n.noneOf=function(_){return on(function(j){return _.indexOf(j)<0}).desc("none of '"+_+"'")},n.notFollowedBy=ta,n.of=Er,n.oneOf=function(_){for(var j=_.split(""),I=0;I=0}).desc(j)},n.optWhitespace=CA,n.Parser=n,n.range=function(_,j){return on(function(I){return _<=I&&I<=j}).desc(_+"-"+j)},n.regex=Mt,n.regexp=Mt,n.sepBy=rn,n.sepBy1=ir,n.seq=Vt,n.seqMap=Dt,n.seqObj=function(){for(var _,j={},I=0,N=(_=arguments,Array.prototype.slice.call(_)),U=N.length,z=0;z255)throw new Error("Value specified to byte constructor ("+_+"=0x"+_.toString(16)+") is larger in value than a single byte.");var j=(_>15?"0x":"0x0")+_.toString(16);return n(function(I,N){var U=Be(I,N);return U===_?v(N+1,U):B(N,j)})},buffer:function(_){return h("buffer",_).map(function(j){return Buffer.from(j)})},encodedString:function(_,j){return h("string",j).map(function(I){return I.toString(_)})},uintBE:E,uint8BE:E(1),uint16BE:E(2),uint32BE:E(4),uintLE:D,uint8LE:D(1),uint16LE:D(2),uint32LE:D(4),intBE:L,int8BE:L(1),int16BE:L(2),int32BE:L(4),intLE:F,int8LE:F(1),int16LE:F(2),int32LE:F(4),floatBE:h("floatBE",4).map(function(_){return _.readFloatBE(0)}),floatLE:h("floatLE",4).map(function(_){return _.readFloatLE(0)}),doubleBE:h("doubleBE",8).map(function(_){return _.readDoubleBE(0)}),doubleLE:h("doubleLE",8).map(function(_){return _.readDoubleLE(0)})},r.exports=n}])})})(qf,qf.exports);var g=qf.exports,Nc=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC3\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC08\uDC26](?:\u200D\u2B1B)?|[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function jg(t){return t==null?t:t.shiftToAll().normalize()}function hh(t){return t.includes("/")&&(t=t.substring(t.lastIndexOf("/")+1)),t.endsWith(".md")&&(t=t.substring(0,t.length-3)),t}g.alt(g.regex(new RegExp(Nc(),"")),g.regex(/[0-9\p{Letter}_-]+/u).map(t=>t.toLocaleLowerCase()),g.whitespace.map(t=>"-"),g.any.map(t=>"")).many().map(t=>t.join(""));var cw=g.alt(g.regex(new RegExp(Nc(),"")),g.regex(/[0-9\p{Letter}_-]+/u),g.whitespace.map(t=>" "),g.any.map(t=>" ")).many().map(t=>t.join("").split(/\s+/).join(" ").trim());function pw(t){return cw.tryParse(t)}function mw(t){return t=jg(t),t=xe.fromObject(Object.fromEntries(Object.entries(t.toObject()).filter(([,e])=>e!=0))),t.toHuman()}var Dl;(function(t){function e(x,$=Mc,C=!1){let v=r(x);if(!v)return $.renderNullAs;switch(v.type){case"null":return $.renderNullAs;case"string":return v.value;case"number":case"boolean":return""+v.value;case"html":return v.value.outerHTML;case"widget":return v.value.markdown();case"link":return v.value.markdown();case"function":return"";case"array":let B="";return C&&(B+="["),B+=v.value.map(q=>e(q,$,!0)).join(", "),C&&(B+="]"),B;case"object":return"{ "+Object.entries(v.value).map(q=>q[0]+": "+e(q[1],$,!0)).join(", ")+" }";case"date":return v.value.second==0&&v.value.hour==0&&v.value.minute==0?v.value.toFormat($.defaultDateFormat):v.value.toFormat($.defaultDateTimeFormat);case"duration":return mw(v.value)}}t.toString=e;function r(x){return p(x)?{type:"null",value:x}:u(x)?{type:"number",value:x}:l(x)?{type:"string",value:x}:h(x)?{type:"boolean",value:x}:c(x)?{type:"duration",value:x}:f(x)?{type:"date",value:x}:E(x)?{type:"widget",value:x}:m(x)?{type:"array",value:x}:y(x)?{type:"link",value:x}:F(x)?{type:"function",value:x}:D(x)?{type:"html",value:x}:L(x)?{type:"object",value:x}:void 0}t.wrapValue=r;function o(x,$){if(L(x)){let C={};for(let[v,B]of Object.entries(x))C[v]=o(B,$);return C}else if(m(x)){let C=[];for(let v of x)C.push(o(v,$));return C}else return $(x)}t.mapLeaves=o;function a(x,$,C){if(x===void 0&&(x=null),$===void 0&&($=null),x===null&&$===null)return 0;if(x===null)return-1;if($===null)return 1;let v=r(x),B=r($);if(v===void 0&&B===void 0)return 0;if(v===void 0)return-1;if(B===void 0)return 1;if(v.type!=B.type)return v.type.localeCompare(B.type);if(v.value===B.value)return 0;switch(v.type){case"string":return v.value.localeCompare(B.value);case"number":return v.valueMe),le=ge(q.path).localeCompare(ge(re.path));if(le!=0)return le;let Be=q.type.localeCompare(re.type);return Be!=0?Be:q.subpath&&!re.subpath?1:!q.subpath&&re.subpath?-1:!q.subpath&&!re.subpath?0:(q.subpath??"").localeCompare(re.subpath??"");case"date":return v.value0;case"boolean":return $.value;case"link":return!!$.value.path;case"date":return $.value.toMillis()!=0;case"duration":return $.value.as("seconds")!=0;case"object":return Object.keys($.value).length>0;case"array":return $.value.length>0;case"null":return!1;case"html":case"widget":case"function":return!0}}t.isTruthy=s;function i(x){if(x==null)return x;if(t.isArray(x))return[].concat(x.map($=>i($)));if(t.isObject(x)){let $={};for(let[C,v]of Object.entries(x))$[C]=i(v);return $}else return x}t.deepCopy=i;function l(x){return typeof x=="string"}t.isString=l;function u(x){return typeof x=="number"}t.isNumber=u;function f(x){return x instanceof qe}t.isDate=f;function c(x){return x instanceof xe}t.isDuration=c;function p(x){return x==null}t.isNull=p;function m(x){return Array.isArray(x)}t.isArray=m;function h(x){return typeof x=="boolean"}t.isBoolean=h;function y(x){return x instanceof Lf}t.isLink=y;function E(x){return x instanceof Fl}t.isWidget=E;function D(x){return typeof HTMLElement<"u"?x instanceof HTMLElement:!1}t.isHtml=D;function L(x){return typeof x=="object"&&!D(x)&&!E(x)&&!m(x)&&!c(x)&&!f(x)&&!y(x)&&x!==void 0&&!p(x)}t.isObject=L;function F(x){return typeof x=="function"}t.isFunction=F})(Dl||(Dl={}));var gh;(function(t){function e(a){return Dl.isObject(a)&&Object.keys(a).length==2&&"key"in a&&"rows"in a}t.isElementGroup=e;function r(a){for(let n of a)if(!e(n))return!1;return!0}t.isGrouping=r;function o(a){if(r(a)){let n=0;for(let s of a)n+=o(s.rows);return n}else return a.length}t.count=o})(gh||(gh={}));var Lf=class t{constructor(e){Ye(this,"path");Ye(this,"display");Ye(this,"subpath");Ye(this,"embed");Ye(this,"type");Object.assign(this,e)}static file(e,r=!1,o){return new t({path:e,embed:r,display:o,subpath:void 0,type:"file"})}static infer(e,r=!1,o){if(e.includes("#^")){let a=e.split("#^");return t.block(a[0],a[1],r,o)}else if(e.includes("#")){let a=e.split("#");return t.header(a[0],a[1],r,o)}else return t.file(e,r,o)}static header(e,r,o,a){return new t({path:e,embed:o,display:a,subpath:pw(r),type:"header"})}static block(e,r,o,a){return new t({path:e,embed:o,display:a,subpath:r,type:"block"})}static fromObject(e){return new t(e)}equals(e){return e==null||e==null?!1:this.path==e.path&&this.type==e.type&&this.subpath==e.subpath}toString(){return this.markdown()}toObject(){return{path:this.path,type:this.type,subpath:this.subpath,display:this.display,embed:this.embed}}withPath(e){return new t(Object.assign({},this,{path:e}))}withDisplay(e){return new t(Object.assign({},this,{display:e}))}withHeader(e){return t.header(this.path,e,this.embed,this.display)}toFile(){return t.file(this.path,this.embed,this.display)}toEmbed(){if(this.embed)return this;{let e=new t(this);return e.embed=!0,e}}fromEmbed(){if(this.embed){let e=new t(this);return e.embed=!1,e}else return this}markdown(){let e=(this.embed?"!":"")+"[["+this.obsidianLink();return this.display?e+="|"+this.display:(e+="|"+hh(this.path),(this.type=="header"||this.type=="block")&&(e+=" > "+this.subpath)),e+="]]",e}obsidianLink(){let e=this.path.replaceAll("|","\\|");return this.type=="header"?e+"#"+this.subpath?.replaceAll("|","\\|"):this.type=="block"?e+"#^"+this.subpath?.replaceAll("|","\\|"):e}fileName(){return hh(this.path).replace(".md","")}},Fl=class{constructor(e){Ye(this,"$widget");this.$widget=e}},yc=class extends Fl{constructor(r,o){super("dataview:list-pair");Ye(this,"key");Ye(this,"value");this.key=r,this.value=o}markdown(){return`${Dl.toString(this.key)}: ${Dl.toString(this.value)}`}},Ec=class extends Fl{constructor(r,o){super("dataview:external-link");Ye(this,"url");Ye(this,"display");this.url=r,this.display=o}markdown(){return`[${this.display??this.url}](${this.url})`}},xh;(function(t){function e(s,i){return new yc(s,i)}t.listPair=e;function r(s,i){return new Ec(s,i)}t.externalLink=r;function o(s){return s.$widget==="dataview:list-pair"}t.isListPair=o;function a(s){return s.$widget==="dataview:external-link"}t.isExternalLink=a;function n(s){return o(s)||a(s)}t.isBuiltin=n})(xh||(xh={}));var Ft;(function(t){function e(p){return{type:"variable",name:p}}t.variable=e;function r(p){return{type:"literal",value:p}}t.literal=r;function o(p,m,h){return{type:"binaryop",left:p,op:m,right:h}}t.binaryOp=o;function a(p,m){return{type:"index",object:p,index:m}}t.index=a;function n(p){let m=p.split("."),h=t.variable(m[0]);for(let y=1;y"||p==">="||p=="!="||p=="="}t.isCompareOp=c,t.NULL=t.literal(null)})(Ft||(Ft={}));var aa;(function(t){function e(f){return{type:"tag",tag:f}}t.tag=e;function r(f){return{type:"csv",path:f}}t.csv=r;function o(f){return{type:"folder",folder:f}}t.folder=o;function a(f,c){return{type:"link",file:f,direction:c?"incoming":"outgoing"}}t.link=a;function n(f,c,p){return{type:"binaryop",left:f,op:c,right:p}}t.binaryOp=n;function s(f,c){return{type:"binaryop",left:f,op:"&",right:c}}t.and=s;function i(f,c){return{type:"binaryop",left:f,op:"|",right:c}}t.or=i;function l(f){return{type:"negate",child:f}}t.negate=l;function u(){return{type:"empty"}}t.empty=u})(aa||(aa={}));var jh=new RegExp(Nc(),""),$c={year:xe.fromObject({years:1}),years:xe.fromObject({years:1}),yr:xe.fromObject({years:1}),yrs:xe.fromObject({years:1}),month:xe.fromObject({months:1}),months:xe.fromObject({months:1}),mo:xe.fromObject({months:1}),mos:xe.fromObject({months:1}),week:xe.fromObject({weeks:1}),weeks:xe.fromObject({weeks:1}),wk:xe.fromObject({weeks:1}),wks:xe.fromObject({weeks:1}),w:xe.fromObject({weeks:1}),day:xe.fromObject({days:1}),days:xe.fromObject({days:1}),d:xe.fromObject({days:1}),hour:xe.fromObject({hours:1}),hours:xe.fromObject({hours:1}),hr:xe.fromObject({hours:1}),hrs:xe.fromObject({hours:1}),h:xe.fromObject({hours:1}),minute:xe.fromObject({minutes:1}),minutes:xe.fromObject({minutes:1}),min:xe.fromObject({minutes:1}),mins:xe.fromObject({minutes:1}),m:xe.fromObject({minutes:1}),second:xe.fromObject({seconds:1}),seconds:xe.fromObject({seconds:1}),sec:xe.fromObject({seconds:1}),secs:xe.fromObject({seconds:1}),s:xe.fromObject({seconds:1})},Ic={now:()=>qe.local(),today:()=>qe.local().startOf("day"),yesterday:()=>qe.local().startOf("day").minus(xe.fromObject({days:1})),tomorrow:()=>qe.local().startOf("day").plus(xe.fromObject({days:1})),sow:()=>qe.local().startOf("week"),"start-of-week":()=>qe.local().startOf("week"),eow:()=>qe.local().endOf("week"),"end-of-week":()=>qe.local().endOf("week"),soy:()=>qe.local().startOf("year"),"start-of-year":()=>qe.local().startOf("year"),eoy:()=>qe.local().endOf("year"),"end-of-year":()=>qe.local().endOf("year"),som:()=>qe.local().startOf("month"),"start-of-month":()=>qe.local().startOf("month"),eom:()=>qe.local().endOf("month"),"end-of-month":()=>qe.local().endOf("month")},Dc=["FROM","WHERE","LIMIT","GROUP","FLATTEN"];function _w(t){let e=-1;for(;(e=t.indexOf("|",e+1))>=0;)if(!(e>0&&t[e-1]=="\\"))return[t.substring(0,e).replace(/\\\|/g,"|"),t.substring(e+1)];return[t.replace(/\\\|/g,"|"),void 0]}function hw(t){let[e,r]=_w(t);return Lf.infer(e,!1,r)}function yl(t,e,r){return g.seqMap(t,g.seq(g.optWhitespace,e,g.optWhitespace,t).many(),(o,a)=>{if(a.length==0)return o;let n=r(o,a[0][1],a[0][3]);for(let s=1;s(a,n)=>{let s=t._(a,n);if(!s.status)return s;for(let i of e){let l=i(s.value)._(a,s.index);if(!l.status)return s;s=l}return s})}var Mo=g.createLanguage({number:t=>g.regexp(/-?[0-9]+(\.[0-9]+)?/).map(e=>Number.parseFloat(e)).desc("number"),string:t=>g.string('"').then(g.alt(t.escapeCharacter,g.noneOf('"\\')).atLeast(0).map(e=>e.join(""))).skip(g.string('"')).desc("string"),escapeCharacter:t=>g.string("\\").then(g.any).map(e=>e==='"'?'"':e==="\\"?"\\":"\\"+e),bool:t=>g.regexp(/true|false|True|False/).map(e=>e.toLowerCase()=="true").desc("boolean ('true' or 'false')"),tag:t=>g.seqMap(g.string("#"),g.alt(g.regexp(/[^\u2000-\u206F\u2E00-\u2E7F'!"#$%&()*+,.:;<=>?@^`{|}~\[\]\\\s]/).desc("text")).many(),(e,r)=>e+r.join("")).desc("tag ('#hello/stuff')"),identifier:t=>g.seqMap(g.alt(g.regexp(/\p{Letter}/u),g.regexp(jh).desc("text")),g.alt(g.regexp(/[0-9\p{Letter}_-]/u),g.regexp(jh).desc("text")).many(),(e,r)=>e+r.join("")).desc("variable identifier"),link:t=>g.regexp(/\[\[([^\[\]]*?)\]\]/u,1).map(e=>hw(e)).desc("file link"),embedLink:t=>g.seqMap(g.string("!").atMost(1),t.link,(e,r)=>(e.length>0&&(r.embed=!0),r)).desc("file link"),binaryPlusMinus:t=>g.regexp(/\+|-/).map(e=>e).desc("'+' or '-'"),binaryMulDiv:t=>g.regexp(/\*|\/|%/).map(e=>e).desc("'*' or '/' or '%'"),binaryCompareOp:t=>g.regexp(/>=|<=|!=|>|<|=/).map(e=>e).desc("'>=' or '<=' or '!=' or '=' or '>' or '<'"),binaryBooleanOp:t=>g.regexp(/and|or|&|\|/i).map(e=>e.toLowerCase()=="and"?"&":e.toLowerCase()=="or"?"|":e).desc("'and' or 'or'"),rootDate:t=>g.seqMap(g.regexp(/\d{4}/),g.string("-"),g.regexp(/\d{2}/),(e,r,o)=>qe.fromObject({year:Number.parseInt(e),month:Number.parseInt(o)})).desc("date in format YYYY-MM[-DDTHH-MM-SS.MS]"),dateShorthand:t=>g.alt(...Object.keys(Ic).sort((e,r)=>r.length-e.length).map(g.string)),date:t=>gw(t.rootDate,e=>g.seqMap(g.string("-"),g.regexp(/\d{2}/),(r,o)=>e.set({day:Number.parseInt(o)})),e=>g.seqMap(g.string("T"),g.regexp(/\d{2}/),(r,o)=>e.set({hour:Number.parseInt(o)})),e=>g.seqMap(g.string(":"),g.regexp(/\d{2}/),(r,o)=>e.set({minute:Number.parseInt(o)})),e=>g.seqMap(g.string(":"),g.regexp(/\d{2}/),(r,o)=>e.set({second:Number.parseInt(o)})),e=>g.alt(g.seqMap(g.string("."),g.regexp(/\d{3}/),(r,o)=>e.set({millisecond:Number.parseInt(o)})),g.succeed(e)),e=>g.alt(g.seqMap(g.string("+").or(g.string("-")),g.regexp(/\d{1,2}(:\d{2})?/),(r,o)=>e.setZone("UTC"+r+o,{keepLocalTime:!0})),g.seqMap(g.string("Z"),()=>e.setZone("utc",{keepLocalTime:!0})),g.seqMap(g.string("["),g.regexp(/[0-9A-Za-z+-\/]+/u),g.string("]"),(r,o,a)=>e.setZone(o,{keepLocalTime:!0})))).assert(e=>e.isValid,"valid date").desc("date in format YYYY-MM[-DDTHH-MM-SS.MS]"),datePlus:t=>g.alt(t.dateShorthand.map(e=>Ic[e]()),t.date).desc("date in format YYYY-MM[-DDTHH-MM-SS.MS] or in shorthand"),durationType:t=>g.alt(...Object.keys($c).sort((e,r)=>r.length-e.length).map(g.string)),duration:t=>g.seqMap(t.number,g.optWhitespace,t.durationType,(e,r,o)=>$c[o].mapUnits(a=>a*e)).sepBy1(g.string(",").trim(g.optWhitespace).or(g.optWhitespace)).map(e=>e.reduce((r,o)=>r.plus(o))).desc("duration like 4hr2min"),rawNull:t=>g.string("null"),tagSource:t=>t.tag.map(e=>aa.tag(e)),csvSource:t=>g.seqMap(g.string("csv(").skip(g.optWhitespace),t.string,g.string(")"),(e,r,o)=>aa.csv(r)),linkIncomingSource:t=>t.link.map(e=>aa.link(e.path,!0)),linkOutgoingSource:t=>g.seqMap(g.string("outgoing(").skip(g.optWhitespace),t.link,g.string(")"),(e,r,o)=>aa.link(r.path,!1)),folderSource:t=>t.string.map(e=>aa.folder(e)),parensSource:t=>g.seqMap(g.string("("),g.optWhitespace,t.source,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>o),negateSource:t=>g.seqMap(g.alt(g.string("-"),g.string("!")),t.atomSource,(e,r)=>aa.negate(r)),atomSource:t=>g.alt(t.parensSource,t.negateSource,t.linkOutgoingSource,t.linkIncomingSource,t.folderSource,t.tagSource,t.csvSource),binaryOpSource:t=>yl(t.atomSource,t.binaryBooleanOp.map(e=>e),aa.binaryOp),source:t=>t.binaryOpSource,variableField:t=>t.identifier.chain(e=>Dc.includes(e.toUpperCase())?g.fail("Variable fields cannot be a keyword ("+Dc.join(" or ")+")"):g.succeed(Ft.variable(e))).desc("variable"),numberField:t=>t.number.map(e=>Ft.literal(e)).desc("number"),stringField:t=>t.string.map(e=>Ft.literal(e)).desc("string"),boolField:t=>t.bool.map(e=>Ft.literal(e)).desc("boolean"),dateField:t=>g.seqMap(g.string("date("),g.optWhitespace,t.datePlus,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>Ft.literal(o)).desc("date"),durationField:t=>g.seqMap(g.string("dur("),g.optWhitespace,t.duration,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>Ft.literal(o)).desc("duration"),nullField:t=>t.rawNull.map(e=>Ft.NULL),linkField:t=>t.link.map(e=>Ft.literal(e)),listField:t=>t.field.sepBy(g.string(",").trim(g.optWhitespace)).wrap(g.string("[").skip(g.optWhitespace),g.optWhitespace.then(g.string("]"))).map(e=>Ft.list(e)).desc("list ('[1, 2, 3]')"),objectField:t=>g.seqMap(t.identifier.or(t.string),g.string(":").trim(g.optWhitespace),t.field,(e,r,o)=>({name:e,value:o})).sepBy(g.string(",").trim(g.optWhitespace)).wrap(g.string("{").skip(g.optWhitespace),g.optWhitespace.then(g.string("}"))).map(e=>{let r={};for(let o of e)r[o.name]=o.value;return Ft.object(r)}).desc("object ('{ a: 1, b: 2 }')"),atomInlineField:t=>g.alt(t.date,t.duration.map(e=>jg(e)),t.string,t.tag,t.embedLink,t.bool,t.number,t.rawNull),inlineFieldList:t=>t.atomInlineField.sepBy(g.string(",").trim(g.optWhitespace).lookahead(t.atomInlineField)),inlineField:t=>g.alt(g.seqMap(t.atomInlineField,g.string(",").trim(g.optWhitespace),t.inlineFieldList,(e,r,o)=>[e].concat(o)),t.atomInlineField),atomField:t=>g.alt(t.embedLink.map(e=>Ft.literal(e)),t.negatedField,t.linkField,t.listField,t.objectField,t.lambdaField,t.parensField,t.boolField,t.numberField,t.stringField,t.dateField,t.durationField,t.nullField,t.variableField),indexField:t=>g.seqMap(t.atomField,g.alt(t.dotPostfix,t.indexPostfix,t.functionPostfix).many(),(e,r)=>{let o=e;for(let a of r)switch(a.type){case"dot":o=Ft.index(o,Ft.literal(a.field));break;case"index":o=Ft.index(o,a.field);break;case"function":o=Ft.func(o,a.fields);break}return o}),negatedField:t=>g.seqMap(g.string("!"),t.indexField,(e,r)=>Ft.negate(r)).desc("negated field"),parensField:t=>g.seqMap(g.string("("),g.optWhitespace,t.field,g.optWhitespace,g.string(")"),(e,r,o,a,n)=>o),lambdaField:t=>g.seqMap(t.identifier.sepBy(g.string(",").trim(g.optWhitespace)).wrap(g.string("(").trim(g.optWhitespace),g.string(")").trim(g.optWhitespace)),g.string("=>").trim(g.optWhitespace),t.field,(e,r,o)=>({type:"lambda",arguments:e,value:o})),dotPostfix:t=>g.seqMap(g.string("."),t.identifier,(e,r)=>({type:"dot",field:r})),indexPostfix:t=>g.seqMap(g.string("["),g.optWhitespace,t.field,g.optWhitespace,g.string("]"),(e,r,o,a,n)=>({type:"index",field:o})),functionPostfix:t=>g.seqMap(g.string("("),g.optWhitespace,t.field.sepBy(g.string(",").trim(g.optWhitespace)),g.optWhitespace,g.string(")"),(e,r,o,a,n)=>({type:"function",fields:o})),binaryMulDivField:t=>yl(t.indexField,t.binaryMulDiv,Ft.binaryOp),binaryPlusMinusField:t=>yl(t.binaryMulDivField,t.binaryPlusMinus,Ft.binaryOp),binaryCompareField:t=>yl(t.binaryPlusMinusField,t.binaryCompareOp,Ft.binaryOp),binaryBooleanField:t=>yl(t.binaryCompareField,t.binaryBooleanOp,Ft.binaryOp),binaryOpField:t=>t.binaryBooleanField,field:t=>t.binaryOpField});function xw(t){try{return Pf.success(Mo.field.tryParse(t))}catch(e){return Pf.failure(""+e)}}var Rf;(function(t){function e(o,a){return{name:o,field:a}}t.named=e;function r(o,a){return{field:o,direction:a}}t.sortBy=r})(Rf||(Rf={}));function jw(t){return g.custom((e,r)=>(o,a)=>{let n=t._(o,a);return n.status?Object.assign({},n,{value:[n.value,o.substring(a,n.index)]}):n})}function vw(t){return t.split(/[\r\n]+/).map(e=>e.trim()).join("")}function vh(t,e){return g.eof.map(t).or(g.whitespace.then(e))}var vg=g.createLanguage({queryType:t=>g.alt(g.regexp(/TABLE|LIST|TASK|CALENDAR/i)).map(e=>e.toLowerCase()).desc("query type ('TABLE', 'LIST', 'TASK', or 'CALENDAR')"),explicitNamedField:t=>g.seqMap(Mo.field.skip(g.whitespace),g.regexp(/AS/i).skip(g.whitespace),Mo.identifier.or(Mo.string),(e,r,o)=>Rf.named(o,e)),comment:()=>g.Parser((t,e)=>{let r=t.substring(e);if(!r.startsWith("//"))return g.makeFailure(e,"Not a comment");r=r.split(` +`)[0];let o=r.substring(2).trim();return g.makeSuccess(e+r.length,o)}),namedField:t=>g.alt(t.explicitNamedField,jw(Mo.field).map(([e,r])=>Rf.named(vw(r),e))),sortField:t=>g.seqMap(Mo.field.skip(g.optWhitespace),g.regexp(/ASCENDING|DESCENDING|ASC|DESC/i).atMost(1),(e,r)=>{let o=r.length==0?"ascending":r[0].toLowerCase();return o=="desc"&&(o="descending"),o=="asc"&&(o="ascending"),{field:e,direction:o}}),headerClause:t=>t.queryType.chain(e=>{switch(e){case"table":return vh(()=>({type:e,fields:[],showId:!0}),g.seqMap(g.regexp(/WITHOUT\s+ID/i).skip(g.optWhitespace).atMost(1),g.sepBy(t.namedField,g.string(",").trim(g.optWhitespace)),(r,o)=>({type:e,fields:o,showId:r.length==0})));case"list":return vh(()=>({type:e,format:void 0,showId:!0}),g.seqMap(g.regexp(/WITHOUT\s+ID/i).skip(g.optWhitespace).atMost(1),Mo.field.atMost(1),(r,o)=>({type:e,format:o.length==1?o[0]:void 0,showId:r.length==0})));case"task":return g.succeed({type:e});case"calendar":return g.whitespace.then(g.seqMap(t.namedField,r=>({type:e,showId:!0,field:r})));default:return g.fail(`Unrecognized query type '${e}'`)}}).desc("TABLE or LIST or TASK or CALENDAR"),fromClause:t=>g.seqMap(g.regexp(/FROM/i),g.whitespace,Mo.source,(e,r,o)=>o),whereClause:t=>g.seqMap(g.regexp(/WHERE/i),g.whitespace,Mo.field,(e,r,o)=>({type:"where",clause:o})).desc("WHERE "),sortByClause:t=>g.seqMap(g.regexp(/SORT/i),g.whitespace,t.sortField.sepBy1(g.string(",").trim(g.optWhitespace)),(e,r,o)=>({type:"sort",fields:o})).desc("SORT field [ASC/DESC]"),limitClause:t=>g.seqMap(g.regexp(/LIMIT/i),g.whitespace,Mo.field,(e,r,o)=>({type:"limit",amount:o})).desc("LIMIT "),flattenClause:t=>g.seqMap(g.regexp(/FLATTEN/i).skip(g.whitespace),t.namedField,(e,r)=>({type:"flatten",field:r})).desc("FLATTEN [AS ]"),groupByClause:t=>g.seqMap(g.regexp(/GROUP BY/i).skip(g.whitespace),t.namedField,(e,r)=>({type:"group",field:r})).desc("GROUP BY [AS ]"),clause:t=>g.alt(t.fromClause,t.whereClause,t.sortByClause,t.limitClause,t.groupByClause,t.flattenClause),query:t=>g.seqMap(t.headerClause.trim(uc),t.fromClause.trim(uc).atMost(1),t.clause.trim(uc).many(),(e,r,o)=>({header:e,source:r.length==0?aa.folder(""):r[0],operations:o,settings:Mc}))}),uc=g.alt(g.whitespace,vg.comment).many().map(t=>t.join("")),kw=t=>t?t.plugins.plugins.dataview?.api:window.DataviewAPI,bw=t=>t.plugins.enabledPlugins.has("dataview");na.DATE_SHORTHANDS=Ic;na.DURATION_TYPES=$c;na.EXPRESSION=Mo;na.KEYWORDS=Dc;na.QUERY_LANGUAGE=vg;na.getAPI=kw;na.isPluginEnabled=bw;na.parseField=xw});var RD={};t_(RD,{BCEvent:()=>uf,default:()=>BA});module.exports=lk(RD);var X6=require("obsidian"),ka=require("obsidian");var PA=["DEBUG","INFO","WARN","ERROR","FEAT"],a_={DEBUG:"#999",INFO:null,WARN:"#f90",ERROR:"#f00",FEAT:"#0f0"},ml=t=>{let e=a_[t],r=`[BC:${t}][${new Date().toISOString().split("T")[1]}]`;return[e?`%c${r}`:r,e?`color: ${a_[t]};`:"",` +`]},NA=class{constructor(e){this.set_level(e)}debug(...e){this.level_i<=0&&console.log(...ml("DEBUG"),...e)}info(...e){this.level_i<=1&&console.log(...ml("INFO"),...e)}warn(...e){this.level_i<=2&&console.log(...ml("WARN"),...e)}error(...e){this.level_i<=3&&console.log(...ml("ERROR"),...e)}feat(...e){this.level_i<=4&&console.log(...ml("FEAT"),...e)}set_level(e){this.level_i=PA.findIndex(r=>r===e)}},H=new NA("INFO");var ck={},d;function Hn(t){let e=d.__externref_table_alloc();return d.__wbindgen_export_2.set(e,t),e}function qA(t,e){try{return t.apply(this,e)}catch(r){let o=Hn(r);d.__wbindgen_exn_store(o)}}var $_=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&$_.decode();var _l=null;function df(){return(_l===null||_l.byteLength===0)&&(_l=new Uint8Array(d.memory.buffer)),_l}function Ne(t,e){return t=t>>>0,$_.decode(df().subarray(t,t+e))}var fe=0,Af=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},uk=typeof Af.encodeInto=="function"?function(t,e){return Af.encodeInto(t,e)}:function(t,e){let r=Af.encode(t);return e.set(r),{read:t.length,written:r.length}};function Qe(t,e,r){if(r===void 0){let i=Af.encode(t),l=e(i.length,1)>>>0;return df().subarray(l,l+i.length).set(i),fe=i.length,l}let o=t.length,a=e(o,1)>>>0,n=df(),s=0;for(;s127)break;n[a+s]=i}if(s!==o){s!==0&&(t=t.slice(s)),a=r(a,o,o=s+t.length*3,1)>>>0;let i=df().subarray(a+s,a+o),l=uk(t,i);s+=l.written,a=r(a,o,s,1)>>>0}return fe=s,a}var Gn=null;function an(){return(Gn===null||Gn.buffer.detached===!0||Gn.buffer.detached===void 0&&Gn.buffer!==d.memory.buffer)&&(Gn=new DataView(d.memory.buffer)),Gn}function fr(t){return t==null}function UA(t){let e=typeof t;if(e=="number"||e=="boolean"||t==null)return`${t}`;if(e=="string")return`"${t}"`;if(e=="symbol"){let a=t.description;return a==null?"Symbol":`Symbol(${a})`}if(e=="function"){let a=t.name;return typeof a=="string"&&a.length>0?`Function(${a})`:"Function"}if(Array.isArray(t)){let a=t.length,n="[";a>0&&(n+=UA(t[0]));for(let s=1;s1)o=r[1];else return toString.call(t);if(o=="Object")try{return"Object("+JSON.stringify(t)+")"}catch{return"Object"}return t instanceof Error?`${t.name}: ${t.message} +${t.stack}`:o}function dr(t,e){t=t>>>0;let r=an(),o=[];for(let a=t;a>>0;for(let o=0;o>>0,I_().subarray(t/4,t/4+e)}function D_(t,e){let r=e(t.length*4,4)>>>0;return I_().set(t,r/4),fe=t.length,r}function mo(t,e){let r=Qe(t,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.create_edge_sorter(r,o,e);if(a[2])throw tt(a[1]);return So.__wrap(a[0])}function F_(){let t=d.create_graph();return dt.__wrap(t)}var n_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_addedgegraphupdate_free(t>>>0,1)),cf=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,n_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_addedgegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,Kr),d.addedgegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e){ve(e,ct);var r=e.__destroy_into_raw();let o=d.addedgegraphupdate_new(r);return this.__wbg_ptr=o>>>0,n_.register(this,this.__wbg_ptr,this),this}},s_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_addnotegraphupdate_free(t>>>0,1)),ri=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,s_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_addnotegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,Kr),d.addnotegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e){ve(e,kt);var r=e.__destroy_into_raw();let o=d.addnotegraphupdate_new(r);return this.__wbg_ptr=o>>>0,s_.register(this,this.__wbg_ptr,this),this}},i_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_batchgraphupdate_free(t>>>0,1)),Kr=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,i_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_batchgraphupdate_free(e,0)}constructor(){let e=d.batchgraphupdate_new();return this.__wbg_ptr=e>>>0,i_.register(this,this.__wbg_ptr,this),this}},l_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_edgedata_free(t>>>0,1)),pf=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,l_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,l_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_edgedata_free(e,0)}get explicit(){return d.__wbg_get_edgedata_explicit(this.__wbg_ptr)!==0}set explicit(e){d.__wbg_set_edgedata_explicit(this.__wbg_ptr,e)}get round(){return d.__wbg_get_edgedata_round(this.__wbg_ptr)}set round(e){d.__wbg_set_edgedata_round(this.__wbg_ptr,e)}get edge_type(){let e,r;try{let o=d.edgedata_edge_type(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}get edge_source(){let e,r;try{let o=d.edgedata_edge_source(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}toString(){let e,r;try{let o=d.edgedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}},u_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_edgelist_free(t>>>0,1)),gl=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,u_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,u_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_edgelist_free(e,0)}group_by_type(){let e=d.edgelist_group_by_type(this.__wbg_ptr);return mf.__wrap(e)}toString(){let e,r;try{let o=d.edgelist_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}get_sorted_edges(e,r){ve(e,dt),ve(r,So);let o=d.edgelist_get_sorted_edges(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);if(o[3])throw tt(o[2]);var a=dr(o[0],o[1]).slice();return d.__wbindgen_free(o[0],o[1]*4,4),a}last(){let e=d.edgelist_last(this.__wbg_ptr);return e===0?void 0:Co.__wrap(e)}first(){let e=d.edgelist_first(this.__wbg_ptr);return e===0?void 0:Co.__wrap(e)}to_array(){let e=this.__destroy_into_raw(),r=d.edgelist_to_array(e);var o=dr(r[0],r[1]).slice();return d.__wbindgen_free(r[0],r[1]*4,4),o}get_edges(){let e=d.edgelist_get_edges(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}},f_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_edgesorter_free(t>>>0,1)),So=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,f_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,f_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_edgesorter_free(e,0)}},d_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_edgestruct_free(t>>>0,1)),Co=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,d_.register(r,r.__wbg_ptr,r),r}static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,d_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_edgestruct_free(e,0)}edge_source(e){let r,o;try{ve(e,dt);let s=d.edgestruct_edge_source(this.__wbg_ptr,e.__wbg_ptr);var a=s[0],n=s[1];if(s[3])throw a=0,n=0,tt(s[2]);return r=a,o=n,Ne(a,n)}finally{d.__wbindgen_free(r,o,1)}}source_data(e){ve(e,dt);let r=d.edgestruct_source_data(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw tt(r[1]);return Un.__wrap(r[0])}source_path(e){let r,o;try{ve(e,dt);let s=d.edgestruct_source_path(this.__wbg_ptr,e.__wbg_ptr);var a=s[0],n=s[1];if(s[3])throw a=0,n=0,tt(s[2]);return r=a,o=n,Ne(a,n)}finally{d.__wbindgen_free(r,o,1)}}target_data(e){ve(e,dt);let r=d.edgestruct_target_data(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw tt(r[1]);return Un.__wrap(r[0])}target_path(e){let r,o;try{ve(e,dt);let s=d.edgestruct_target_path(this.__wbg_ptr,e.__wbg_ptr);var a=s[0],n=s[1];if(s[3])throw a=0,n=0,tt(s[2]);return r=a,o=n,Ne(a,n)}finally{d.__wbindgen_free(r,o,1)}}is_self_loop(){return d.edgestruct_is_self_loop(this.__wbg_ptr)!==0}source_resolved(e){ve(e,dt);let r=d.edgestruct_source_resolved(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw tt(r[1]);return r[0]!==0}target_resolved(e){ve(e,dt);let r=d.edgestruct_target_resolved(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw tt(r[1]);return r[0]!==0}toString(){let e,r;try{let o=d.edgestruct_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}stringify_source(e,r){let o,a;try{ve(e,dt),ve(r,nn);let i=d.edgestruct_stringify_source(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);var n=i[0],s=i[1];if(i[3])throw n=0,s=0,tt(i[2]);return o=n,a=s,Ne(n,s)}finally{d.__wbindgen_free(o,a,1)}}stringify_target(e,r){let o,a;try{ve(e,dt),ve(r,nn);let i=d.edgestruct_stringify_target(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);var n=i[0],s=i[1];if(i[3])throw n=0,s=0,tt(i[2]);return o=n,a=s,Ne(n,s)}finally{d.__wbindgen_free(o,a,1)}}get_attribute_label(e,r){let o,a;try{ve(e,dt);let i=At(r,d.__wbindgen_malloc),l=fe,u=d.edgestruct_get_attribute_label(this.__wbg_ptr,e.__wbg_ptr,i,l);var n=u[0],s=u[1];if(u[3])throw n=0,s=0,tt(u[2]);return o=n,a=s,Ne(n,s)}finally{d.__wbindgen_free(o,a,1)}}matches_edge_filter(e,r){ve(e,dt);var o=fr(r)?0:At(r,d.__wbindgen_malloc),a=fe;let n=d.edgestruct_matches_edge_filter(this.__wbg_ptr,e.__wbg_ptr,o,a);if(n[2])throw tt(n[1]);return n[0]!==0}round(e){ve(e,dt);let r=d.edgestruct_round(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw tt(r[1]);return r[0]}explicit(e){ve(e,dt);let r=d.edgestruct_explicit(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw tt(r[1]);return r[0]!==0}edge_data(e){ve(e,dt);let r=d.edgestruct_edge_data(this.__wbg_ptr,e.__wbg_ptr);if(r[2])throw tt(r[1]);return pf.__wrap(r[0])}get edge_type(){let e,r;try{let o=d.edgestruct_edge_type(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}},A_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_flattraversaldata_free(t>>>0,1)),xl=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,A_.register(r,r.__wbg_ptr,r),r}static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,A_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_flattraversaldata_free(e,0)}get_attribute_label(e,r){let o,a;try{ve(e,dt);let i=At(r,d.__wbindgen_malloc),l=fe,u=d.flattraversaldata_get_attribute_label(this.__wbg_ptr,e.__wbg_ptr,i,l);var n=u[0],s=u[1];if(u[3])throw n=0,s=0,tt(u[2]);return o=n,a=s,Ne(n,s)}finally{d.__wbindgen_free(o,a,1)}}to_js_rendering_obj(e,r,o){ve(e,dt),ve(r,nn);let a=At(o,d.__wbindgen_malloc),n=fe,s=d.flattraversaldata_to_js_rendering_obj(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr,a,n);if(s[2])throw tt(s[1]);return tt(s[0])}get edge(){let e=d.__wbg_get_flattraversaldata_edge(this.__wbg_ptr);return Co.__wrap(e)}set edge(e){ve(e,Co);var r=e.__destroy_into_raw();d.__wbg_set_flattraversaldata_edge(this.__wbg_ptr,r)}get depth(){return d.__wbg_get_flattraversaldata_depth(this.__wbg_ptr)>>>0}set depth(e){d.__wbg_set_flattraversaldata_depth(this.__wbg_ptr,e)}get number_of_children(){return d.__wbg_get_flattraversaldata_number_of_children(this.__wbg_ptr)>>>0}set number_of_children(e){d.__wbg_set_flattraversaldata_number_of_children(this.__wbg_ptr,e)}get children(){let e=d.__wbg_get_flattraversaldata_children(this.__wbg_ptr);var r=zA(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set children(e){let r=D_(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_flattraversaldata_children(this.__wbg_ptr,r,o)}get has_cut_of_children(){return d.__wbg_get_flattraversaldata_has_cut_of_children(this.__wbg_ptr)!==0}set has_cut_of_children(e){d.__wbg_set_flattraversaldata_has_cut_of_children(this.__wbg_ptr,e)}},c_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_flattraversalresult_free(t>>>0,1)),WA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,c_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,c_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_flattraversalresult_free(e,0)}data_at_index(e){let r=d.flattraversalresult_data_at_index(this.__wbg_ptr,e);return r===0?void 0:xl.__wrap(r)}toString(){let e,r;try{let o=d.flattraversalresult_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}children_at_index(e){let r=d.flattraversalresult_children_at_index(this.__wbg_ptr,e),o;return r[0]!==0&&(o=zA(r[0],r[1]).slice(),d.__wbindgen_free(r[0],r[1]*4,4)),o}rendering_obj_at_index(e,r,o,a){ve(r,dt),ve(o,nn);let n=At(a,d.__wbindgen_malloc),s=fe,i=d.flattraversalresult_rendering_obj_at_index(this.__wbg_ptr,e,r.__wbg_ptr,o.__wbg_ptr,n,s);if(i[2])throw tt(i[1]);return tt(i[0])}sort(e,r){ve(e,dt),ve(r,So);let o=d.flattraversalresult_sort(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);if(o[1])throw tt(o[0])}is_empty(){return d.flattraversalresult_is_empty(this.__wbg_ptr)!==0}get data(){let e=d.__wbg_get_flattraversalresult_data(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set data(e){let r=At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_flattraversalresult_data(this.__wbg_ptr,r,o)}get node_count(){return d.__wbg_get_flattraversalresult_node_count(this.__wbg_ptr)>>>0}set node_count(e){d.__wbg_set_flattraversalresult_node_count(this.__wbg_ptr,e)}get max_depth(){return d.__wbg_get_flattraversaldata_number_of_children(this.__wbg_ptr)>>>0}set max_depth(e){d.__wbg_set_flattraversaldata_number_of_children(this.__wbg_ptr,e)}get hit_depth_limit(){return d.__wbg_get_flattraversalresult_hit_depth_limit(this.__wbg_ptr)!==0}set hit_depth_limit(e){d.__wbg_set_flattraversalresult_hit_depth_limit(this.__wbg_ptr,e)}get traversal_time(){let e=d.__wbg_get_flattraversalresult_traversal_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set traversal_time(e){d.__wbg_set_flattraversalresult_traversal_time(this.__wbg_ptr,e)}get entry_nodes(){let e=d.__wbg_get_flattraversalresult_entry_nodes(this.__wbg_ptr);var r=zA(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set entry_nodes(e){let r=D_(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_flattraversalresult_entry_nodes(this.__wbg_ptr,r,o)}},p_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_gcedgedata_free(t>>>0,1)),ct=class t{static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,p_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_gcedgedata_free(e,0)}toString(){let e,r;try{let o=d.gcedgedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e,r,o,a){let n=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),s=fe,i=Qe(r,d.__wbindgen_malloc,d.__wbindgen_realloc),l=fe,u=Qe(o,d.__wbindgen_malloc,d.__wbindgen_realloc),f=fe,c=Qe(a,d.__wbindgen_malloc,d.__wbindgen_realloc),p=fe,m=d.gcedgedata_new(n,s,i,l,u,f,c,p);return this.__wbg_ptr=m>>>0,p_.register(this,this.__wbg_ptr,this),this}},m_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_gcnodedata_free(t>>>0,1)),kt=class t{static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,m_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_gcnodedata_free(e,0)}toString(){let e,r;try{let o=d.gcnodedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n){let s=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),i=fe,l=At(r,d.__wbindgen_malloc),u=fe,f=d.gcnodedata_new(s,i,l,u,o,a,n);return this.__wbg_ptr=f>>>0,m_.register(this,this.__wbg_ptr,this),this}},__=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_groupededgelist_free(t>>>0,1)),mf=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,__.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,__.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_groupededgelist_free(e,0)}toString(){let e,r;try{let o=d.groupededgelist_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}get_sorted_edges(e,r,o){let a=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),n=fe;ve(r,dt),ve(o,So);let s=d.groupededgelist_get_sorted_edges(this.__wbg_ptr,a,n,r.__wbg_ptr,o.__wbg_ptr);if(s[3])throw tt(s[2]);let i;return s[0]!==0&&(i=dr(s[0],s[1]).slice(),d.__wbindgen_free(s[0],s[1]*4,4)),i}get_edges(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.groupededgelist_get_edges(this.__wbg_ptr,r,o),n;return a[0]!==0&&(n=dr(a[0],a[1]).slice(),d.__wbindgen_free(a[0],a[1]*4,4)),n}},h_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_mermaidgraphdata_free(t>>>0,1)),KA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,h_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,h_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_mermaidgraphdata_free(e,0)}toString(){let e,r;try{let o=d.mermaidgraphdata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}get mermaid(){let e,r;try{let o=d.__wbg_get_mermaidgraphdata_mermaid(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}set mermaid(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe;d.__wbg_set_mermaidgraphdata_mermaid(this.__wbg_ptr,r,o)}get traversal_time(){let e=d.__wbg_get_mermaidgraphdata_traversal_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set traversal_time(e){d.__wbg_set_mermaidgraphdata_traversal_time(this.__wbg_ptr,e)}get total_time(){let e=d.__wbg_get_mermaidgraphdata_total_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set total_time(e){d.__wbg_set_mermaidgraphdata_total_time(this.__wbg_ptr,e)}},g_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_mermaidgraphoptions_free(t>>>0,1)),Vn=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,g_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_mermaidgraphoptions_free(e,0)}toString(){let e,r;try{let o=d.mermaidgraphoptions_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n,s,i,l,u){var f=fr(e)?0:Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),c=fe;let p=Qe(r,d.__wbindgen_malloc,d.__wbindgen_realloc),m=fe,h=Qe(o,d.__wbindgen_malloc,d.__wbindgen_realloc),y=fe,E=Qe(a,d.__wbindgen_malloc,d.__wbindgen_realloc),D=fe,L=At(s,d.__wbindgen_malloc),F=fe,x=0;fr(i)||(ve(i,So),x=i.__destroy_into_raw());let $=d.mermaidgraphoptions_new(f,c,p,m,h,y,E,D,n,L,F,x,fr(l)?0:Hn(l),u);return this.__wbg_ptr=$>>>0,g_.register(this,this.__wbg_ptr,this),this}},LA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_nodedata_free(t>>>0,1)),Un=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,LA.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,LA.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_nodedata_free(e,0)}get path(){let e,r;try{let o=d.__wbg_get_nodedata_path(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}set path(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe;d.__wbg_set_nodedata_path(this.__wbg_ptr,r,o)}get aliases(){let e=d.__wbg_get_nodedata_aliases(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set aliases(e){let r=At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_nodedata_aliases(this.__wbg_ptr,r,o)}get resolved(){return d.__wbg_get_nodedata_resolved(this.__wbg_ptr)!==0}set resolved(e){d.__wbg_set_nodedata_resolved(this.__wbg_ptr,e)}get ignore_in_edges(){return d.__wbg_get_nodedata_ignore_in_edges(this.__wbg_ptr)!==0}set ignore_in_edges(e){d.__wbg_set_nodedata_ignore_in_edges(this.__wbg_ptr,e)}get ignore_out_edges(){return d.__wbg_get_nodedata_ignore_out_edges(this.__wbg_ptr)!==0}set ignore_out_edges(e){d.__wbg_set_nodedata_ignore_out_edges(this.__wbg_ptr,e)}toString(){let e,r;try{let o=d.nodedata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n){let s=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),i=fe,l=At(r,d.__wbindgen_malloc),u=fe,f=d.gcnodedata_new(s,i,l,u,o,a,n);return this.__wbg_ptr=f>>>0,LA.register(this,this.__wbg_ptr,this),this}},x_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_nodestringifyoptions_free(t>>>0,1)),nn=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,x_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_nodestringifyoptions_free(e,0)}stringify_node(e){let r,o;try{ve(e,Un);let a=d.nodestringifyoptions_stringify_node(this.__wbg_ptr,e.__wbg_ptr);return r=a[0],o=a[1],Ne(a[0],a[1])}finally{d.__wbindgen_free(r,o,1)}}constructor(e,r,o,a){var n=fr(a)?0:Qe(a,d.__wbindgen_malloc,d.__wbindgen_realloc),s=fe;let i=d.nodestringifyoptions_new(e,r,o,n,s);return this.__wbg_ptr=i>>>0,x_.register(this,this.__wbg_ptr,this),this}},j_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_notegraph_free(t>>>0,1)),dt=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,j_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,j_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_notegraph_free(e,0)}edge_types(){let e=d.notegraph_edge_types(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}build_graph(e,r,o){let a=At(e,d.__wbindgen_malloc),n=fe,s=At(r,d.__wbindgen_malloc),i=fe,l=At(o,d.__wbindgen_malloc),u=fe,f=d.notegraph_build_graph(this.__wbg_ptr,a,n,s,i,l,u);if(f[1])throw tt(f[0])}apply_update(e){ve(e,Kr);var r=e.__destroy_into_raw();let o=d.notegraph_apply_update(this.__wbg_ptr,r);if(o[1])throw tt(o[0])}iterate_edges(e){d.notegraph_iterate_edges(this.__wbg_ptr,e)}iterate_nodes(e){d.notegraph_iterate_nodes(this.__wbg_ptr,e)}notify_update(){d.notegraph_notify_update(this.__wbg_ptr)}is_node_resolved(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe;return d.notegraph_is_node_resolved(this.__wbg_ptr,r,o)!==0}get_incoming_edges(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.notegraph_get_incoming_edges(this.__wbg_ptr,r,o);return gl.__wrap(a)}get_outgoing_edges(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.notegraph_get_outgoing_edges(this.__wbg_ptr,r,o);return gl.__wrap(a)}set_update_callback(e){d.notegraph_set_update_callback(this.__wbg_ptr,e)}get_filtered_outgoing_edges(e,r){let o=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),a=fe;var n=fr(r)?0:At(r,d.__wbindgen_malloc),s=fe;let i=d.notegraph_get_filtered_outgoing_edges(this.__wbg_ptr,o,a,n,s);return gl.__wrap(i)}get_filtered_grouped_outgoing_edges(e,r){let o=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),a=fe;var n=fr(r)?0:At(r,d.__wbindgen_malloc),s=fe;let i=d.notegraph_get_filtered_grouped_outgoing_edges(this.__wbg_ptr,o,a,n,s);return mf.__wrap(i)}log(){d.notegraph_log(this.__wbg_ptr)}static new(){let e=d.notegraph_new();return t.__wrap(e)}get_node(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.notegraph_get_node(this.__wbg_ptr,r,o);return a===0?void 0:Un.__wrap(a)}has_node(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe;return d.notegraph_has_node(this.__wbg_ptr,r,o)!==0}generate_mermaid_graph(e,r){ve(e,Nt);var o=e.__destroy_into_raw();ve(r,Vn);var a=r.__destroy_into_raw();let n=d.notegraph_generate_mermaid_graph(this.__wbg_ptr,o,a);if(n[2])throw tt(n[1]);return KA.__wrap(n[0])}rec_traverse(e){ve(e,Nt);var r=e.__destroy_into_raw();let o=d.notegraph_rec_traverse(this.__wbg_ptr,r);if(o[2])throw tt(o[1]);return JA.__wrap(o[0])}rec_traverse_and_process(e,r){ve(e,Nt);var o=e.__destroy_into_raw();ve(r,po);var a=r.__destroy_into_raw();let n=d.notegraph_rec_traverse_and_process(this.__wbg_ptr,o,a);if(n[2])throw tt(n[1]);return WA.__wrap(n[0])}},RA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_notegrapherror_free(t>>>0,1)),Fa=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,RA.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,RA.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_notegrapherror_free(e,0)}toString(){let e,r;try{let o=d.notegrapherror_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.notegrapherror_new(r,o);return this.__wbg_ptr=a>>>0,RA.register(this,this.__wbg_ptr,this),this}get message(){let e,r;try{let o=d.notegrapherror_message(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}},v_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_path_free(t>>>0,1)),ZA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,v_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,v_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_path_free(e,0)}get edges(){let e=d.__wbg_get_path_edges(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set edges(e){let r=At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_path_edges(this.__wbg_ptr,r,o)}get reverse_edges(){let e=d.path_reverse_edges(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}toString(){let e,r;try{let o=d.path_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}get_first_target(e){ve(e,dt);let r=d.path_get_first_target(this.__wbg_ptr,e.__wbg_ptr);if(r[3])throw tt(r[2]);let o;return r[0]!==0&&(o=Ne(r[0],r[1]).slice(),d.__wbindgen_free(r[0],r[1]*1,1)),o}equals(e){return ve(e,t),d.path_equals(this.__wbg_ptr,e.__wbg_ptr)!==0}length(){return d.path_length(this.__wbg_ptr)>>>0}truncate(e){let r=d.path_truncate(this.__wbg_ptr,e);return t.__wrap(r)}},k_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_pathlist_free(t>>>0,1)),YA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,k_.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,k_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_pathlist_free(e,0)}toString(){let e,r;try{let o=d.pathlist_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}select(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.pathlist_select(this.__wbg_ptr,r,o);return t.__wrap(a)}process(e,r){ve(e,dt);let o=d.pathlist_process(this.__wbg_ptr,e.__wbg_ptr,r);if(o[3])throw tt(o[2]);var a=dr(o[0],o[1]).slice();return d.__wbindgen_free(o[0],o[1]*4,4),a}to_paths(){let e=d.pathlist_to_paths(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}max_depth(){return d.pathlist_max_depth(this.__wbg_ptr)>>>0}},UD=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_removeedgegraphupdate_free(t>>>0,1));var b_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_removenotegraphupdate_free(t>>>0,1)),_f=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,b_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_removenotegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,Kr),d.removenotegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e){let r=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),o=fe,a=d.removenotegraphupdate_new(r,o);return this.__wbg_ptr=a>>>0,b_.register(this,this.__wbg_ptr,this),this}},w_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_renamenotegraphupdate_free(t>>>0,1)),hf=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,w_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_renamenotegraphupdate_free(e,0)}add_to_batch(e){let r=this.__destroy_into_raw();ve(e,Kr),d.renamenotegraphupdate_add_to_batch(r,e.__wbg_ptr)}constructor(e,r){let o=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),a=fe,n=Qe(r,d.__wbindgen_malloc,d.__wbindgen_realloc),s=fe,i=d.renamenotegraphupdate_new(o,a,n,s);return this.__wbg_ptr=i>>>0,w_.register(this,this.__wbg_ptr,this),this}},y_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_transitivegraphrule_free(t>>>0,1)),zn=class t{static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,y_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_transitivegraphrule_free(e,0)}toString(){let e,r;try{let o=d.transitivegraphrule_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}create_example_graph(){let e=d.transitivegraphrule_create_example_graph(this.__wbg_ptr);if(e[2])throw tt(e[1]);return dt.__wrap(e[0])}constructor(e,r,o,a,n,s){let i=Qe(e,d.__wbindgen_malloc,d.__wbindgen_realloc),l=fe,u=At(r,d.__wbindgen_malloc),f=fe,c=Qe(o,d.__wbindgen_malloc,d.__wbindgen_realloc),p=fe,m=d.transitivegraphrule_new(i,l,u,f,c,p,a,n,s);return this.__wbg_ptr=m>>>0,y_.register(this,this.__wbg_ptr,this),this}},zD=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_transitiverulesgraphupdate_free(t>>>0,1));var GA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_traversaldata_free(t>>>0,1)),gf=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,GA.register(r,r.__wbg_ptr,r),r}static __unwrap(e){return e instanceof t?e.__destroy_into_raw():0}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,GA.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_traversaldata_free(e,0)}toString(){let e,r;try{let o=d.traversaldata_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}rec_sort_children(e,r){ve(e,dt),ve(r,So);let o=d.traversaldata_rec_sort_children(this.__wbg_ptr,e.__wbg_ptr,r.__wbg_ptr);if(o[1])throw tt(o[0])}constructor(e,r,o,a,n){ve(e,Co);var s=e.__destroy_into_raw();let i=At(a,d.__wbindgen_malloc),l=fe,u=d.traversaldata_new(s,r,o,i,l,n);return this.__wbg_ptr=u>>>0,GA.register(this,this.__wbg_ptr,this),this}get edge(){let e=d.__wbg_get_flattraversaldata_edge(this.__wbg_ptr);return Co.__wrap(e)}set edge(e){ve(e,Co);var r=e.__destroy_into_raw();d.__wbg_set_flattraversaldata_edge(this.__wbg_ptr,r)}get depth(){return d.__wbg_get_flattraversaldata_depth(this.__wbg_ptr)>>>0}set depth(e){d.__wbg_set_flattraversaldata_depth(this.__wbg_ptr,e)}get number_of_children(){return d.__wbg_get_flattraversaldata_number_of_children(this.__wbg_ptr)>>>0}set number_of_children(e){d.__wbg_set_flattraversaldata_number_of_children(this.__wbg_ptr,e)}get children(){let e=d.__wbg_get_traversaldata_children(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set children(e){let r=At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_traversaldata_children(this.__wbg_ptr,r,o)}get has_cut_of_children(){return d.__wbg_get_flattraversaldata_has_cut_of_children(this.__wbg_ptr)!==0}set has_cut_of_children(e){d.__wbg_set_flattraversaldata_has_cut_of_children(this.__wbg_ptr,e)}},E_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_traversaloptions_free(t>>>0,1)),Nt=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,E_.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_traversaloptions_free(e,0)}toString(){let e,r;try{let o=d.traversaloptions_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e,r,o,a,n,s){let i=At(e,d.__wbindgen_malloc),l=fe;var u=fr(r)?0:At(r,d.__wbindgen_malloc),f=fe,c=fr(s)?0:At(s,d.__wbindgen_malloc),p=fe;let m=d.traversaloptions_new(i,l,u,f,o,a,n,c,p);return this.__wbg_ptr=m>>>0,E_.register(this,this.__wbg_ptr,this),this}get entry_nodes(){let e=d.__wbg_get_traversaloptions_entry_nodes(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set entry_nodes(e){let r=At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_traversaloptions_entry_nodes(this.__wbg_ptr,r,o)}get edge_types(){let e=d.__wbg_get_traversaloptions_edge_types(this.__wbg_ptr),r;return e[0]!==0&&(r=dr(e[0],e[1]).slice(),d.__wbindgen_free(e[0],e[1]*4,4)),r}set edge_types(e){var r=fr(e)?0:At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_traversaloptions_edge_types(this.__wbg_ptr,r,o)}get max_depth(){return d.__wbg_get_traversaloptions_max_depth(this.__wbg_ptr)>>>0}set max_depth(e){d.__wbg_set_traversaloptions_max_depth(this.__wbg_ptr,e)}get max_traversal_count(){return d.__wbg_get_traversaloptions_max_traversal_count(this.__wbg_ptr)>>>0}set max_traversal_count(e){d.__wbg_set_traversaloptions_max_traversal_count(this.__wbg_ptr,e)}get separate_edges(){return d.__wbg_get_traversaloptions_separate_edges(this.__wbg_ptr)!==0}set separate_edges(e){d.__wbg_set_traversaloptions_separate_edges(this.__wbg_ptr,e)}get dataview_from_paths(){let e=d.__wbg_get_traversaloptions_dataview_from_paths(this.__wbg_ptr),r;return e[0]!==0&&(r=dr(e[0],e[1]).slice(),d.__wbindgen_free(e[0],e[1]*4,4)),r}set dataview_from_paths(e){var r=fr(e)?0:At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_traversaloptions_dataview_from_paths(this.__wbg_ptr,r,o)}},HA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_traversalpostprocessoptions_free(t>>>0,1)),po=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,HA.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,HA.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_traversalpostprocessoptions_free(e,0)}get sorter(){let e=d.__wbg_get_traversalpostprocessoptions_sorter(this.__wbg_ptr);return e===0?void 0:So.__wrap(e)}set sorter(e){let r=0;fr(e)||(ve(e,So),r=e.__destroy_into_raw()),d.__wbg_set_traversalpostprocessoptions_sorter(this.__wbg_ptr,r)}get flatten(){return d.__wbg_get_traversalpostprocessoptions_flatten(this.__wbg_ptr)!==0}set flatten(e){d.__wbg_set_traversalpostprocessoptions_flatten(this.__wbg_ptr,e)}static without_sorter(e){let r=d.traversalpostprocessoptions_without_sorter(e);return t.__wrap(r)}toString(){let e,r;try{let o=d.traversalpostprocessoptions_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e,r){ve(e,So);let o=d.traversalpostprocessoptions_new(e.__wbg_ptr,r);return this.__wbg_ptr=o>>>0,HA.register(this,this.__wbg_ptr,this),this}},VA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>d.__wbg_traversalresult_free(t>>>0,1)),JA=class t{static __wrap(e){e=e>>>0;let r=Object.create(t.prototype);return r.__wbg_ptr=e,VA.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,VA.unregister(this),e}free(){let e=this.__destroy_into_raw();d.__wbg_traversalresult_free(e,0)}toString(){let e,r;try{let o=d.traversalresult_toString(this.__wbg_ptr);return e=o[0],r=o[1],Ne(o[0],o[1])}finally{d.__wbindgen_free(e,r,1)}}constructor(e,r){let o=At(e,d.__wbindgen_malloc),a=fe,n=d.traversalresult_new(o,a,r);return this.__wbg_ptr=n>>>0,VA.register(this,this.__wbg_ptr,this),this}is_empty(){return d.flattraversalresult_is_empty(this.__wbg_ptr)!==0}to_paths(){let e=d.traversalresult_to_paths(this.__wbg_ptr);return YA.__wrap(e)}get data(){let e=d.__wbg_get_traversalresult_data(this.__wbg_ptr);var r=dr(e[0],e[1]).slice();return d.__wbindgen_free(e[0],e[1]*4,4),r}set data(e){let r=At(e,d.__wbindgen_malloc),o=fe;d.__wbg_set_traversalresult_data(this.__wbg_ptr,r,o)}get node_count(){return d.__wbg_get_traversalresult_node_count(this.__wbg_ptr)>>>0}set node_count(e){d.__wbg_set_traversalresult_node_count(this.__wbg_ptr,e)}get max_depth(){return d.__wbg_get_traversalresult_max_depth(this.__wbg_ptr)>>>0}set max_depth(e){d.__wbg_set_traversalresult_max_depth(this.__wbg_ptr,e)}get hit_depth_limit(){return d.__wbg_get_traversalresult_hit_depth_limit(this.__wbg_ptr)!==0}set hit_depth_limit(e){d.__wbg_set_traversalresult_hit_depth_limit(this.__wbg_ptr,e)}get traversal_time(){let e=d.__wbg_get_flattraversalresult_traversal_time(this.__wbg_ptr);return BigInt.asUintN(64,e)}set traversal_time(e){d.__wbg_set_flattraversalresult_traversal_time(this.__wbg_ptr,e)}};async function fk(t,e){if(typeof Response=="function"&&t instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(t,e)}catch(o){if(t.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",o);else throw o}let r=await t.arrayBuffer();return await WebAssembly.instantiate(r,e)}else{let r=await WebAssembly.instantiate(t,e);return r instanceof WebAssembly.Instance?{instance:r,module:t}:r}}function dk(){let t={};return t.wbg={},t.wbg.__wbg_call_672a4d21634d4a24=function(){return qA(function(e,r){return e.call(r)},arguments)},t.wbg.__wbg_call_7cccdd69e0791ae2=function(){return qA(function(e,r,o){return e.call(r,o)},arguments)},t.wbg.__wbg_debug_0e292a0dbaeda7f1=function(e,r,o){e.debug(Ne(r,o))},t.wbg.__wbg_edgedata_new=function(e){return pf.__wrap(e)},t.wbg.__wbg_edgestruct_new=function(e){return Co.__wrap(e)},t.wbg.__wbg_edgestruct_unwrap=function(e){return Co.__unwrap(e)},t.wbg.__wbg_error_7534b8e9a36f1ab4=function(e,r){let o,a;try{o=e,a=r,console.error(Ne(e,r))}finally{d.__wbindgen_free(o,a,1)}},t.wbg.__wbg_flattraversaldata_new=function(e){return xl.__wrap(e)},t.wbg.__wbg_flattraversaldata_unwrap=function(e){return xl.__unwrap(e)},t.wbg.__wbg_gcedgedata_unwrap=function(e){return ct.__unwrap(e)},t.wbg.__wbg_gcnodedata_unwrap=function(e){return kt.__unwrap(e)},t.wbg.__wbg_info_398bf5d211409814=function(e,r,o){e.info(Ne(r,o))},t.wbg.__wbg_new_405e22f390576ce2=function(){return new Object},t.wbg.__wbg_new_8a6f238a6ece86ea=function(){return new Error},t.wbg.__wbg_newnoargs_105ed471475aaf50=function(e,r){return new Function(Ne(e,r))},t.wbg.__wbg_nodedata_new=function(e){return Un.__wrap(e)},t.wbg.__wbg_notegrapherror_new=function(e){return Fa.__wrap(e)},t.wbg.__wbg_now_2c95c9de01293173=function(e){return e.now()},t.wbg.__wbg_path_new=function(e){return ZA.__wrap(e)},t.wbg.__wbg_performance_7a3ffd0b17f663ad=function(e){return e.performance},t.wbg.__wbg_set_bb8cecf6a62b9f46=function(){return qA(function(e,r,o){return Reflect.set(e,r,o)},arguments)},t.wbg.__wbg_stack_0ed75d68575b0f3c=function(e,r){let o=r.stack,a=Qe(o,d.__wbindgen_malloc,d.__wbindgen_realloc),n=fe;an().setInt32(e+4,n,!0),an().setInt32(e+0,a,!0)},t.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let e=typeof global>"u"?null:global;return fr(e)?0:Hn(e)},t.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let e=typeof globalThis>"u"?null:globalThis;return fr(e)?0:Hn(e)},t.wbg.__wbg_static_accessor_LOGGER_849a70838e9094f0=function(){return H},t.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let e=typeof self>"u"?null:self;return fr(e)?0:Hn(e)},t.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let e=typeof window>"u"?null:window;return fr(e)?0:Hn(e)},t.wbg.__wbg_transitivegraphrule_unwrap=function(e){return zn.__unwrap(e)},t.wbg.__wbg_traversaldata_new=function(e){return gf.__wrap(e)},t.wbg.__wbg_traversaldata_unwrap=function(e){return gf.__unwrap(e)},t.wbg.__wbg_warn_4a2380c6903b0443=function(e,r,o){e.warn(Ne(r,o))},t.wbg.__wbindgen_debug_string=function(e,r){let o=UA(r),a=Qe(o,d.__wbindgen_malloc,d.__wbindgen_realloc),n=fe;an().setInt32(e+4,n,!0),an().setInt32(e+0,a,!0)},t.wbg.__wbindgen_init_externref_table=function(){let e=d.__wbindgen_export_2,r=e.grow(4);e.set(0,void 0),e.set(r+0,void 0),e.set(r+1,null),e.set(r+2,!0),e.set(r+3,!1)},t.wbg.__wbindgen_is_undefined=function(e){return e===void 0},t.wbg.__wbindgen_string_get=function(e,r){let o=r,a=typeof o=="string"?o:void 0;var n=fr(a)?0:Qe(a,d.__wbindgen_malloc,d.__wbindgen_realloc),s=fe;an().setInt32(e+4,s,!0),an().setInt32(e+0,n,!0)},t.wbg.__wbindgen_string_new=function(e,r){return Ne(e,r)},t.wbg.__wbindgen_throw=function(e,r){throw new Error(Ne(e,r))},t}function Ak(t,e){return d=t.exports,B_.__wbindgen_wasm_module=e,Gn=null,hl=null,_l=null,d.__wbindgen_start(),d}async function B_(t){if(d!==void 0)return d;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module_or_path:t}=t:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),typeof t>"u"&&(t=new URL("breadcrumbs_graph_wasm_bg.wasm",ck.url));let e=dk();(typeof t=="string"||typeof Request=="function"&&t instanceof Request||typeof URL=="function"&&t instanceof URL)&&(t=fetch(t));let{instance:r,module:o}=await fk(await t,e);return Ak(r,o)}var S_=B_;function hr(t,e){let r=t?.explicit_edge_sources?.dendron_note??{enabled:!1};return new nn(e.ext,e.folder,e.alias,r.enabled&&r.display_trimmed?r.delimiter:void 0)}var jl=["field","explicit","source","implied_kind","round"];function XA(t,e){let r={...t};for(let o in e){let a=t[o],n=e[o];typeof a=="object"&&typeof n=="object"&&!Array.isArray(a)&&!Array.isArray(n)?r[o]=XA(a,n):a===void 0&&(r[o]=n)}return r}var C_=(t,e)=>{let r=t;for(let o of e){if(r[o]===void 0)return;r=r[o]}return r};var T_=t=>Object.fromEntries(Object.entries(t).filter(([e,r])=>r!=null));function xf(t,e=","){return!t||t===""?[]:t.split(e).map(r=>r.trim())}function jf(t,e='"',r=", "){return t.map(o=>e+o+e).join(r)}function QA(t,e){return t.startsWith(e)?t:e+t}function O_(t,e){return t.endsWith(e)?t:t+e}function ec(t,e){return t.endsWith(e)?t.slice(0,-e.length):t}var pk=/{{(.*?)}}/g;function M_(t,e){let r=t.slice();return r.match(pk)?.forEach(o=>{let a=o.slice(2,-2),n=C_(e,a.split("."));if(n!==void 0){let s=String(n);r=r.replace(o,s)}}),r}function N_(t,e=""){return"```"+e+` +`+t+"\n```"}function P_(t,e="md"){return O_(t,"."+e)}function tc(t){return t.replace(/\.[^.]+$/,"")}function mk(t){return t.split(".").pop()}function q_(t){return t.split("/").pop()}function _k(t){return t.split("/").slice(0,-1).join("/")}function hk(t){return tc(t.split("/").pop())}function L_(t){return t.replace(/\/+/g,"/").replace(/^\//,"")}function gk(t,e,r){return P_(L_(t+"/"+e),r)}function xk(t,e){let r=t.slice();return e?.folder||(r=q_(r)),e?.ext||(r=tc(r)),r}var ht={ensure_ext:P_,extname:mk,basename:hk,dirname:_k,drop_ext:tc,drop_folder:q_,build:gk,normalize:L_,show:xk};var jk=(t,e,r)=>{let o=t.fileManager.getNewFileParent(r,e);return ht.build(o.path,ht.basename(e),"md")},vk=(t,e,r)=>{switch(r.link_kind){case"none":return e;case"wiki":{let o=ht.drop_ext(t);return e===t?`[[${o}]]`:`[[${o}|${e}]]`}case"markdown":return e===t?`[${t}](${t})`:`[${e}](${t})`}},sn={ify:vk,resolve_to_absolute_path:jk};var oi={fields:[],indent:"\\t",link_kind:"wiki",show_attributes:[],field_group_labels:[],edge_sort_id:{order:1,field:"basename"},show_node_options:{ext:!1,alias:!0,folder:!1}};function vl(t,e,r,o){if(!e)return"";let a=e.data,n=Array.from(e.entry_nodes).map(s=>a[s]);return R_(t,a,n,r,o)}function R_(t,e,r,o,a){let n="",s=a.indent.replace(/\\t/g," ");return r.forEach(i=>{let{edge:l,children:u,depth:f}=i,c=l.stringify_target(t,hr(o,a.show_node_options)),p=sn.ify(l.target_path(t),c,{link_kind:a.link_kind}),m=l.get_attribute_label(t,a.show_attributes);n+=s.repeat(f-1)+(m?`- ${p} (${m}) `:`- ${p} -`);let h=Array.from(u).map(y=>e[y]);n+=P_(t,e,h,o,a)}),n}function xA(t,e,r,o){let a=new Nt([e],o.fields,o.max_depth??100,o.max_count??1e3,!1,void 0),n=new co(po(o.edge_sort_id.field,o.edge_sort_id.order===-1),!1),s=t.rec_traverse_and_process(a,n);return vl(t,s,r,o)}var R_={field:"basename",order:1},kl={ext:!1,folder:!1,alias:!1},vA={is_dirty:!1,edge_fields:[{label:"up"},{label:"down"},{label:"same"},{label:"next"},{label:"prev"}],edge_field_groups:[{label:"ups",fields:["up"]},{label:"downs",fields:["down"]},{label:"sames",fields:["same"]},{label:"nexts",fields:["next"]},{label:"prevs",fields:["prev"]}],implied_relations:{transitive:[{name:"",rounds:1,chain:[{field:"up"}],close_field:"down",close_reversed:!0},{name:"",rounds:1,chain:[{field:"down"}],close_field:"up",close_reversed:!0},{name:"",rounds:1,chain:[{field:"same"}],close_field:"same",close_reversed:!0},{name:"",rounds:1,chain:[{field:"next"}],close_field:"prev",close_reversed:!0},{name:"",rounds:1,chain:[{field:"prev"}],close_field:"next",close_reversed:!0}]},explicit_edge_sources:{typed_link:{},list_note:{default_neighbour_field:""},tag_note:{default_field:"up"},regex_note:{default_field:"up"},dendron_note:{enabled:!1,delimiter:".",default_field:"up",display_trimmed:!1},johnny_decimal_note:{enabled:!1,delimiter:".",default_field:"up"},date_note:{enabled:!1,date_format:"yyyy-MM-dd",default_field:"next",stretch_to_existing:!1}},views:{page:{all:{sticky:!1,readable_line_width:!0},trail:{enabled:!0,format:"grid",selection:"all",default_depth:999,no_path_message:"",show_controls:!0,merge_fields:!1,field_group_labels:["ups"],show_node_options:{...kl}},prev_next:{enabled:!0,show_node_options:{...kl},field_group_labels:{prev:["prevs"],next:["nexts"]}}},side:{matrix:{collapse:!1,edge_sort_id:{...R_},show_node_options:{...kl},show_attributes:["source","implied_kind","round"],field_group_labels:["ups","downs","sames","nexts","prevs"],lock_view:!1,lock_path:""},tree:{collapse:!1,show_attributes:[],merge_fields:!1,lock_view:!1,lock_path:"",field_group_labels:["downs"],edge_sort_id:{...R_},show_node_options:{...kl}}},codeblocks:{show_node_options:{...kl}}},commands:{rebuild_graph:{notify:!0,trigger:{note_save:!1,layout_change:!1}},list_index:{default_options:oi},freeze_implied_edges:{default_options:{destination:"frontmatter",included_fields:[],use_alias:!0}},thread:{default_options:{destination:"frontmatter",target_path_template:"{{source.folder}}/{{attr.field}} {{source.basename}}"}}},suggestors:{edge_field:{enabled:!1,trigger:"."}},debug:{level:"INFO"}};var ea={matrix:"bc-matrix-view",tree:"bc-tree-view"};var qv=require("obsidian");var L_=["typed_link","tag_note","list_note","dendron_note","johnny_decimal_note","dataview_note","date_note","folder_note","regex_note"],kA=["basename","path","field","explicit"];var G_={"BC-tag-note-tag":{property_type:"text"},"BC-tag-note-field":{property_type:"text"},"BC-tag-note-exact":{property_type:"checkbox"},"BC-regex-note-regex":{property_type:"text"},"BC-regex-note-flags":{property_type:"text"},"BC-regex-note-field":{property_type:"text"},"BC-folder-note-field":{property_type:"text"},"BC-folder-note-recurse":{property_type:"checkbox"},"BC-list-note-field":{property_type:"text"},"BC-list-note-neighbour-field":{property_type:"text"},"BC-list-note-exclude-index":{property_type:"checkbox"},"BC-dendron-note-field":{property_type:"text"},"BC-johnny-decimal-note-field":{property_type:"text"},"BC-dataview-note-query":{property_type:"text"},"BC-dataview-note-field":{property_type:"text"},"BC-ignore-in-edges":{property_type:"checkbox"},"BC-ignore-out-edges":{property_type:"checkbox"}},Ve={"tag-note-tag":"BC-tag-note-tag","tag-note-field":"BC-tag-note-field","tag-note-exact":"BC-tag-note-exact","regex-note-regex":"BC-regex-note-regex","regex-note-flags":"BC-regex-note-flags","regex-note-field":"BC-regex-note-field","folder-note-field":"BC-folder-note-field","folder-note-recurse":"BC-folder-note-recurse","list-note-field":"BC-list-note-field","list-note-neighbour-field":"BC-list-note-neighbour-field","list-note-exclude-index":"BC-list-note-exclude-index","dendron-note-field":"BC-dendron-note-field","johnny-decimal-note-field":"BC-johnny-decimal-note-field","dataview-note-query":"BC-dataview-note-query","dataview-note-field":"BC-dataview-note-field","ignore-in-edges":"BC-ignore-in-edges","ignore-out-edges":"BC-ignore-out-edges"};var Tr=class{constructor(){this.start=performance.now()}elapsed(){return performance.now()-this.start}elapsed_str(e=0){return this.elapsed().toFixed(e)}reset(){this.start=performance.now()}elapsedMessage(e,r=!1){let o=`${e} took ${this.elapsed_str(2)}ms`;return r&&this.reset(),o}};var pi=nk(xg());function kw(t){return new Promise(e=>{(0,pi.isPluginEnabled)(t.app)?((0,pi.getAPI)(t.app)?.index.initialized&&(H.debug("dataview > already initialized"),e()),t.registerEvent(t.app.metadataCache.on("dataview:index-ready",()=>{H.debug("dataview > ready"),e()}))):(H.debug("dataview > not enabled"),e())})}var Ba={get_api:pi.getAPI,is_enabled:pi.isPluginEnabled,await_if_enabled:kw};var Xt=t=>({ok:!0,data:t}),ht=t=>({ok:!1,error:t}),it=t=>ht(t);function vg(t,e,r){if(!e)return ht(void 0);let o=e[Ve["dataview-note-query"]];if(o){if(typeof o!="string")return it({path:r,code:"invalid_field_value",message:"dataview-note-query is not a string"})}else return ht(void 0);let a=e[Ve["dataview-note-field"]];if(a){if(typeof a!="string")return it({path:r,code:"invalid_field_value",message:"dataview-note-field is not a string"});if(!t.settings.edge_fields.find(n=>n.label===a))return it({path:r,code:"invalid_field_value",message:`dataview-note-field is not a valid field: '${a}'`})}else return ht(void 0);return Xt({field:a,query:o})}var kg=(t,e)=>{let r={nodes:[],edges:[],errors:[]};return e.obsidian?.forEach(({file:o,cache:a})=>{if(!a)return;let n=vg(t,a?.frontmatter,o.path);if(n.ok){r.errors.push({code:"missing_other_plugin",path:o.path,message:"dataview-notes are not implemented without Dataview enabled"});return}else{n.error&&r.errors.push(n.error);return}}),e.dataview?.forEach(o=>{let a=o.file.path,n=vg(t,o,a);if(!n.ok){n.error&&r.errors.push(n.error);return}let{field:s,query:i}=n.data,l=[];try{l=Ba.get_api().pages(i,a).values}catch(u){return H.warn("dataview-note > DV API error:",u instanceof Error?u.message:u),r.errors.push({code:"invalid_field_value",path:a,message:`dataview-note-query is not a valid dataview query: '${i}'`})}l.forEach(u=>{r.edges.push(new ct(o.file.path,u.file.path,s,"dataview_note"))})}),r};var Sa=class extends Error{},UA=class extends Sa{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}},zA=class extends Sa{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}},WA=class extends Sa{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}},No=class extends Sa{},mi=class extends Sa{constructor(e){super(`Invalid unit ${e}`)}},Ct=class extends Sa{},qo=class extends Sa{constructor(){super("Zone is an abstract class")}};var ee="numeric",Po="short",Yr="long",fn={year:ee,month:ee,day:ee},Tl={year:ee,month:Po,day:ee},Nc={year:ee,month:Po,day:ee,weekday:Po},Ol={year:ee,month:Yr,day:ee},Ml={year:ee,month:Yr,day:ee,weekday:Yr},Nl={hour:ee,minute:ee},ql={hour:ee,minute:ee,second:ee},Pl={hour:ee,minute:ee,second:ee,timeZoneName:Po},Rl={hour:ee,minute:ee,second:ee,timeZoneName:Yr},Ll={hour:ee,minute:ee,hourCycle:"h23"},Gl={hour:ee,minute:ee,second:ee,hourCycle:"h23"},Hl={hour:ee,minute:ee,second:ee,hourCycle:"h23",timeZoneName:Po},Vl={hour:ee,minute:ee,second:ee,hourCycle:"h23",timeZoneName:Yr},Ul={year:ee,month:ee,day:ee,hour:ee,minute:ee},zl={year:ee,month:ee,day:ee,hour:ee,minute:ee,second:ee},Wl={year:ee,month:Po,day:ee,hour:ee,minute:ee},Kl={year:ee,month:Po,day:ee,hour:ee,minute:ee,second:ee},qc={year:ee,month:Po,day:ee,weekday:Po,hour:ee,minute:ee},Zl={year:ee,month:Yr,day:ee,hour:ee,minute:ee,timeZoneName:Po},Yl={year:ee,month:Yr,day:ee,hour:ee,minute:ee,second:ee,timeZoneName:Po},Jl={year:ee,month:Yr,day:ee,weekday:Yr,hour:ee,minute:ee,timeZoneName:Yr},Xl={year:ee,month:Yr,day:ee,weekday:Yr,hour:ee,minute:ee,second:ee,timeZoneName:Yr};var Mr=class{get type(){throw new qo}get name(){throw new qo}get ianaName(){return this.name}get isUniversal(){throw new qo}offsetName(e,r){throw new qo}formatOffset(e,r){throw new qo}offset(e){throw new qo}equals(e){throw new qo}get isValid(){throw new qo}};var Pc=null,dn=class t extends Mr{static get instance(){return Pc===null&&(Pc=new t),Pc}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:r,locale:o}){return ZA(e,r,o)}formatOffset(e,r){return cn(this.offset(e),r)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}};var Lc=new Map;function bw(t){let e=Lc.get(t);return e===void 0&&(e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),Lc.set(t,e)),e}var ww={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function yw(t,e){let r=t.format(e).replace(/\u200E/g,""),o=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(r),[,a,n,s,i,l,u,A]=o;return[s,a,n,i,l,u,A]}function Ew(t,e){let r=t.formatToParts(e),o=[];for(let a=0;a=0?h:1e3+h,(p-m)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}};var bg={};function Iw(t,e={}){let r=JSON.stringify([t,e]),o=bg[r];return o||(o=new Intl.ListFormat(t,e),bg[r]=o),o}var Gc=new Map;function Hc(t,e={}){let r=JSON.stringify([t,e]),o=Gc.get(r);return o===void 0&&(o=new Intl.DateTimeFormat(t,e),Gc.set(r,o)),o}var Vc=new Map;function $w(t,e={}){let r=JSON.stringify([t,e]),o=Vc.get(r);return o===void 0&&(o=new Intl.NumberFormat(t,e),Vc.set(r,o)),o}var Uc=new Map;function Dw(t,e={}){let{base:r,...o}=e,a=JSON.stringify([t,o]),n=Uc.get(a);return n===void 0&&(n=new Intl.RelativeTimeFormat(t,e),Uc.set(a,n)),n}var Ql=null;function Fw(){return Ql||(Ql=new Intl.DateTimeFormat().resolvedOptions().locale,Ql)}var zc=new Map;function wg(t){let e=zc.get(t);return e===void 0&&(e=new Intl.DateTimeFormat(t).resolvedOptions(),zc.set(t,e)),e}var Wc=new Map;function Bw(t){let e=Wc.get(t);if(!e){let r=new Intl.Locale(t);e="getWeekInfo"in r?r.getWeekInfo():r.weekInfo,"minimalDays"in e||(e={...yg,...e}),Wc.set(t,e)}return e}function Sw(t){let e=t.indexOf("-x-");e!==-1&&(t=t.substring(0,e));let r=t.indexOf("-u-");if(r===-1)return[t];{let o,a;try{o=Hc(t).resolvedOptions(),a=t}catch{let l=t.substring(0,r);o=Hc(l).resolvedOptions(),a=l}let{numberingSystem:n,calendar:s}=o;return[a,n,s]}}function Cw(t,e,r){return(r||e)&&(t.includes("-u-")||(t+="-u"),r&&(t+=`-ca-${r}`),e&&(t+=`-nu-${e}`)),t}function Tw(t){let e=[];for(let r=1;r<=12;r++){let o=Ye.utc(2009,r,1);e.push(t(o))}return e}function Ow(t){let e=[];for(let r=1;r<=7;r++){let o=Ye.utc(2016,11,13+r);e.push(t(o))}return e}function YA(t,e,r,o){let a=t.listingMode();return a==="error"?null:a==="en"?r(e):o(e)}function Mw(t){return t.numberingSystem&&t.numberingSystem!=="latn"?!1:t.numberingSystem==="latn"||!t.locale||t.locale.startsWith("en")||wg(t.locale).numberingSystem==="latn"}var Kc=class{constructor(e,r,o){this.padTo=o.padTo||0,this.floor=o.floor||!1;let{padTo:a,floor:n,...s}=o;if(!r||Object.keys(s).length>0){let i={useGrouping:!1,...o};o.padTo>0&&(i.minimumIntegerDigits=o.padTo),this.inf=$w(e,i)}}format(e){if(this.inf){let r=this.floor?Math.floor(e):e;return this.inf.format(r)}else{let r=this.floor?Math.floor(e):hi(e,3);return yt(r,this.padTo)}}},Zc=class{constructor(e,r,o){this.opts=o,this.originalZone=void 0;let a;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){let s=-1*(e.offset/60),i=s>=0?`Etc/GMT+${s}`:`Etc/GMT${s}`;e.offset!==0&&gr.create(i).valid?(a=i,this.dt=e):(a="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,a=e.zone.name):(a="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);let n={...this.opts};n.timeZone=n.timeZone||a,this.dtf=Hc(r,n)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){let e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(r=>{if(r.type==="timeZoneName"){let o=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...r,value:o}}else return r}):e}resolvedOptions(){return this.dtf.resolvedOptions()}},Yc=class{constructor(e,r,o){this.opts={style:"long",...o},!r&&JA()&&(this.rtf=Dw(e,o))}format(e,r){return this.rtf?this.rtf.format(e,r):Eg(r,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,r){return this.rtf?this.rtf.formatToParts(e,r):[]}},yg={firstDay:1,minimalDays:4,weekend:[6,7]},rt=class t{static fromOpts(e){return t.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,r,o,a,n=!1){let s=e||tt.defaultLocale,i=s||(n?"en-US":Fw()),l=r||tt.defaultNumberingSystem,u=o||tt.defaultOutputCalendar,A=eu(a)||tt.defaultWeekSettings;return new t(i,l,u,A,s)}static resetCache(){Ql=null,Gc.clear(),Vc.clear(),Uc.clear(),zc.clear(),Wc.clear()}static fromObject({locale:e,numberingSystem:r,outputCalendar:o,weekSettings:a}={}){return t.create(e,r,o,a)}constructor(e,r,o,a,n){let[s,i,l]=Sw(e);this.locale=s,this.numberingSystem=r||i||null,this.outputCalendar=o||l||null,this.weekSettings=a,this.intl=Cw(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=n,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=Mw(this)),this.fastNumbersCached}listingMode(){let e=this.isEnglish(),r=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&r?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:t.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,eu(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,r=!1){return YA(this,e,Jc,()=>{let o=this.intl==="ja"||this.intl.startsWith("ja-");r&=!o;let a=r?{month:e,day:"numeric"}:{month:e},n=r?"format":"standalone";if(!this.monthsCache[n][e]){let s=o?i=>this.dtFormatter(i,a).format():i=>this.extract(i,a,"month");this.monthsCache[n][e]=Tw(s)}return this.monthsCache[n][e]})}weekdays(e,r=!1){return YA(this,e,Xc,()=>{let o=r?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},a=r?"format":"standalone";return this.weekdaysCache[a][e]||(this.weekdaysCache[a][e]=Ow(n=>this.extract(n,o,"weekday"))),this.weekdaysCache[a][e]})}meridiems(){return YA(this,void 0,()=>Qc,()=>{if(!this.meridiemCache){let e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[Ye.utc(2016,11,13,9),Ye.utc(2016,11,13,19)].map(r=>this.extract(r,e,"dayperiod"))}return this.meridiemCache})}eras(e){return YA(this,e,ep,()=>{let r={era:e};return this.eraCache[e]||(this.eraCache[e]=[Ye.utc(-40,1,1),Ye.utc(2017,1,1)].map(o=>this.extract(o,r,"era"))),this.eraCache[e]})}extract(e,r,o){let a=this.dtFormatter(e,r),n=a.formatToParts(),s=n.find(i=>i.type.toLowerCase()===o);return s?s.value:null}numberFormatter(e={}){return new Kc(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,r={}){return new Zc(e,this.intl,r)}relFormatter(e={}){return new Yc(this.intl,this.isEnglish(),e)}listFormatter(e={}){return Iw(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||wg(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:XA()?Bw(this.locale):yg}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}};var rp=null,Qt=class t extends Mr{static get utcInstance(){return rp===null&&(rp=new t(0)),rp}static instance(e){return e===0?t.utcInstance:new t(e)}static parseSpecifier(e){if(e){let r=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(r)return new t(Xn(r[1],r[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${cn(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${cn(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,r){return cn(this.fixed,r)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}};var gi=class extends Mr{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}};function Ro(t,e){let r;if(he(t)||t===null)return e;if(t instanceof Mr)return t;if(Ig(t)){let o=t.toLowerCase();return o==="default"?e:o==="local"||o==="system"?dn.instance:o==="utc"||o==="gmt"?Qt.utcInstance:Qt.parseSpecifier(o)||gr.create(t)}else return Lo(t)?Qt.instance(t):typeof t=="object"&&"offset"in t&&typeof t.offset=="function"?t:new gi(t)}var ap={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},$g={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Nw=ap.hanidec.replace(/[\[|\]]/g,"").split("");function Dg(t){let e=parseInt(t,10);if(isNaN(e)){e="";for(let r=0;r=n&&o<=s&&(e+=o-n)}}return parseInt(e,10)}else return e}var op=new Map;function Fg(){op.clear()}function go({numberingSystem:t},e=""){let r=t||"latn",o=op.get(r);o===void 0&&(o=new Map,op.set(r,o));let a=o.get(e);return a===void 0&&(a=new RegExp(`${ap[r]}${e}`),o.set(e,a)),a}var Bg=()=>Date.now(),Sg="system",Cg=null,Tg=null,Og=null,Mg=60,Ng,qg=null,tt=class{static get now(){return Bg}static set now(e){Bg=e}static set defaultZone(e){Sg=e}static get defaultZone(){return Ro(Sg,dn.instance)}static get defaultLocale(){return Cg}static set defaultLocale(e){Cg=e}static get defaultNumberingSystem(){return Tg}static set defaultNumberingSystem(e){Tg=e}static get defaultOutputCalendar(){return Og}static set defaultOutputCalendar(e){Og=e}static get defaultWeekSettings(){return qg}static set defaultWeekSettings(e){qg=eu(e)}static get twoDigitCutoffYear(){return Mg}static set twoDigitCutoffYear(e){Mg=e%100}static get throwOnInvalid(){return Ng}static set throwOnInvalid(e){Ng=e}static resetCaches(){rt.resetCache(),gr.resetCache(),Ye.resetCache(),Fg()}};var er=class{constructor(e,r){this.reason=e,this.explanation=r}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}};var Pg=[0,31,59,90,120,151,181,212,243,273,304,334],Rg=[0,31,60,91,121,152,182,213,244,274,305,335];function jo(t,e){return new er("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${t}, which is invalid`)}function QA(t,e,r){let o=new Date(Date.UTC(t,e-1,r));t<100&&t>=0&&o.setUTCFullYear(o.getUTCFullYear()-1900);let a=o.getUTCDay();return a===0?7:a}function Lg(t,e,r){return r+(es(t)?Rg:Pg)[e-1]}function Gg(t,e){let r=es(t)?Rg:Pg,o=r.findIndex(n=>nQn(o,e,r)?(u=o+1,l=1):u=o,{weekYear:u,weekNumber:l,weekday:i,...ou(t)}}function np(t,e=4,r=1){let{weekYear:o,weekNumber:a,weekday:n}=t,s=ef(QA(o,1,e),r),i=pn(o),l=a*7+n-s-7+e,u;l<1?(u=o-1,l+=pn(u)):l>i?(u=o+1,l-=pn(o)):u=o;let{month:A,day:c}=Gg(u,l);return{year:u,month:A,day:c,...ou(t)}}function tf(t){let{year:e,month:r,day:o}=t,a=Lg(e,r,o);return{year:e,ordinal:a,...ou(t)}}function sp(t){let{year:e,ordinal:r}=t,{month:o,day:a}=Gg(e,r);return{year:e,month:o,day:a,...ou(t)}}function ip(t,e){if(!he(t.localWeekday)||!he(t.localWeekNumber)||!he(t.localWeekYear)){if(!he(t.weekday)||!he(t.weekNumber)||!he(t.weekYear))throw new No("Cannot mix locale-based week fields with ISO-based week fields");return he(t.localWeekday)||(t.weekday=t.localWeekday),he(t.localWeekNumber)||(t.weekNumber=t.localWeekNumber),he(t.localWeekYear)||(t.weekYear=t.localWeekYear),delete t.localWeekday,delete t.localWeekNumber,delete t.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function Hg(t,e=4,r=1){let o=ru(t.weekYear),a=Jr(t.weekNumber,1,Qn(t.weekYear,e,r)),n=Jr(t.weekday,1,7);return o?a?n?!1:jo("weekday",t.weekday):jo("week",t.weekNumber):jo("weekYear",t.weekYear)}function Vg(t){let e=ru(t.year),r=Jr(t.ordinal,1,pn(t.year));return e?r?!1:jo("ordinal",t.ordinal):jo("year",t.year)}function lp(t){let e=ru(t.year),r=Jr(t.month,1,12),o=Jr(t.day,1,ji(t.year,t.month));return e?r?o?!1:jo("day",t.day):jo("month",t.month):jo("year",t.year)}function up(t){let{hour:e,minute:r,second:o,millisecond:a}=t,n=Jr(e,0,23)||e===24&&r===0&&o===0&&a===0,s=Jr(r,0,59),i=Jr(o,0,59),l=Jr(a,0,999);return n?s?i?l?!1:jo("millisecond",a):jo("second",o):jo("minute",r):jo("hour",e)}function he(t){return typeof t>"u"}function Lo(t){return typeof t=="number"}function ru(t){return typeof t=="number"&&t%1===0}function Ig(t){return typeof t=="string"}function zg(t){return Object.prototype.toString.call(t)==="[object Date]"}function JA(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function XA(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function Wg(t){return Array.isArray(t)?t:[t]}function Ap(t,e,r){if(t.length!==0)return t.reduce((o,a)=>{let n=[e(a),a];return o&&r(o[0],n[0])===o[0]?o:n},null)[1]}function Kg(t,e){return e.reduce((r,o)=>(r[o]=t[o],r),{})}function mn(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function eu(t){if(t==null)return null;if(typeof t!="object")throw new Ct("Week settings must be an object");if(!Jr(t.firstDay,1,7)||!Jr(t.minimalDays,1,7)||!Array.isArray(t.weekend)||t.weekend.some(e=>!Jr(e,1,7)))throw new Ct("Invalid week settings");return{firstDay:t.firstDay,minimalDays:t.minimalDays,weekend:Array.from(t.weekend)}}function Jr(t,e,r){return ru(t)&&t>=e&&t<=r}function qw(t,e){return t-e*Math.floor(t/e)}function yt(t,e=2){let r=t<0,o;return r?o="-"+(""+-t).padStart(e,"0"):o=(""+t).padStart(e,"0"),o}function Ca(t){if(!(he(t)||t===null||t===""))return parseInt(t,10)}function _n(t){if(!(he(t)||t===null||t===""))return parseFloat(t)}function au(t){if(!(he(t)||t===null||t==="")){let e=parseFloat("0."+t)*1e3;return Math.floor(e)}}function hi(t,e,r="round"){let o=10**e;switch(r){case"expand":return t>0?Math.ceil(t*o)/o:Math.floor(t*o)/o;case"trunc":return Math.trunc(t*o)/o;case"round":return Math.round(t*o)/o;case"floor":return Math.floor(t*o)/o;case"ceil":return Math.ceil(t*o)/o;default:throw new RangeError(`Value rounding ${r} is out of range`)}}function es(t){return t%4===0&&(t%100!==0||t%400===0)}function pn(t){return es(t)?366:365}function ji(t,e){let r=qw(e-1,12)+1,o=t+(e-r)/12;return r===2?es(o)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][r-1]}function _i(t){let e=Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond);return t.year<100&&t.year>=0&&(e=new Date(e),e.setUTCFullYear(t.year,t.month-1,t.day)),+e}function Ug(t,e,r){return-ef(QA(t,1,e),r)+e-1}function Qn(t,e=4,r=1){let o=Ug(t,e,r),a=Ug(t+1,e,r);return(pn(t)-o+a)/7}function nu(t){return t>99?t:t>tt.twoDigitCutoffYear?1900+t:2e3+t}function ZA(t,e,r,o=null){let a=new Date(t),n={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};o&&(n.timeZone=o);let s={timeZoneName:e,...n},i=new Intl.DateTimeFormat(r,s).formatToParts(a).find(l=>l.type.toLowerCase()==="timezonename");return i?i.value:null}function Xn(t,e){let r=parseInt(t,10);Number.isNaN(r)&&(r=0);let o=parseInt(e,10)||0,a=r<0||Object.is(r,-0)?-o:o;return r*60+a}function fp(t){let e=Number(t);if(typeof t=="boolean"||t===""||!Number.isFinite(e))throw new Ct(`Invalid unit value ${t}`);return e}function xi(t,e){let r={};for(let o in t)if(mn(t,o)){let a=t[o];if(a==null)continue;r[e(o)]=fp(a)}return r}function cn(t,e){let r=Math.trunc(Math.abs(t/60)),o=Math.trunc(Math.abs(t%60)),a=t>=0?"+":"-";switch(e){case"short":return`${a}${yt(r,2)}:${yt(o,2)}`;case"narrow":return`${a}${r}${o>0?`:${o}`:""}`;case"techie":return`${a}${yt(r,2)}${yt(o,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function ou(t){return Kg(t,["hour","minute","second","millisecond"])}var Pw=["January","February","March","April","May","June","July","August","September","October","November","December"],dp=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Rw=["J","F","M","A","M","J","J","A","S","O","N","D"];function Jc(t){switch(t){case"narrow":return[...Rw];case"short":return[...dp];case"long":return[...Pw];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var cp=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],pp=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Lw=["M","T","W","T","F","S","S"];function Xc(t){switch(t){case"narrow":return[...Lw];case"short":return[...pp];case"long":return[...cp];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var Qc=["AM","PM"],Gw=["Before Christ","Anno Domini"],Hw=["BC","AD"],Vw=["B","A"];function ep(t){switch(t){case"narrow":return[...Vw];case"short":return[...Hw];case"long":return[...Gw];default:return null}}function Zg(t){return Qc[t.hour<12?0:1]}function Yg(t,e){return Xc(e)[t.weekday-1]}function Jg(t,e){return Jc(e)[t.month-1]}function Xg(t,e){return ep(e)[t.year<0?0:1]}function Eg(t,e,r="always",o=!1){let a={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},n=["hours","minutes","seconds"].indexOf(t)===-1;if(r==="auto"&&n){let c=t==="days";switch(e){case 1:return c?"tomorrow":`next ${a[t][0]}`;case-1:return c?"yesterday":`last ${a[t][0]}`;case 0:return c?"today":`this ${a[t][0]}`;default:}}let s=Object.is(e,-0)||e<0,i=Math.abs(e),l=i===1,u=a[t],A=o?l?u[1]:u[2]||u[1]:l?a[t][0]:t;return s?`${i} ${A} ago`:`in ${i} ${A}`}function Qg(t,e){let r="";for(let o of t)o.literal?r+=o.val:r+=e(o.val);return r}var Uw={D:fn,DD:Tl,DDD:Ol,DDDD:Ml,t:Nl,tt:ql,ttt:Pl,tttt:Rl,T:Ll,TT:Gl,TTT:Hl,TTTT:Vl,f:Ul,ff:Wl,fff:Zl,ffff:Jl,F:zl,FF:Kl,FFF:Yl,FFFF:Xl},tr=class t{static create(e,r={}){return new t(e,r)}static parseFormat(e){let r=null,o="",a=!1,n=[];for(let s=0;s0||a)&&n.push({literal:a||/^\s+$/.test(o),val:o===""?"'":o}),r=null,o="",a=!a):a||i===r?o+=i:(o.length>0&&n.push({literal:/^\s+$/.test(o),val:o}),o=i,r=i)}return o.length>0&&n.push({literal:a||/^\s+$/.test(o),val:o}),n}static macroTokenToFormatOpts(e){return Uw[e]}constructor(e,r){this.opts=r,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,r){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...r}).format()}dtFormatter(e,r={}){return this.loc.dtFormatter(e,{...this.opts,...r})}formatDateTime(e,r){return this.dtFormatter(e,r).format()}formatDateTimeParts(e,r){return this.dtFormatter(e,r).formatToParts()}formatInterval(e,r){return this.dtFormatter(e.start,r).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,r){return this.dtFormatter(e,r).resolvedOptions()}num(e,r=0,o=void 0){if(this.opts.forceSimple)return yt(e,r);let a={...this.opts};return r>0&&(a.padTo=r),o&&(a.signDisplay=o),this.loc.numberFormatter(a).format(e)}formatDateTimeFromString(e,r){let o=this.loc.listingMode()==="en",a=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",n=(m,h)=>this.loc.extract(e,m,h),s=m=>e.isOffsetFixed&&e.offset===0&&m.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,m.format):"",i=()=>o?Zg(e):n({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(m,h)=>o?Jg(e,m):n(h?{month:m}:{month:m,day:"numeric"},"month"),u=(m,h)=>o?Yg(e,m):n(h?{weekday:m}:{weekday:m,month:"long",day:"numeric"},"weekday"),A=m=>{let h=t.macroTokenToFormatOpts(m);return h?this.formatWithSystemDefault(e,h):m},c=m=>o?Xg(e,m):n({era:m},"era"),p=m=>{switch(m){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return s({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return s({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return s({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return i();case"d":return a?n({day:"numeric"},"day"):this.num(e.day);case"dd":return a?n({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return a?n({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return a?n({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return a?n({month:"numeric"},"month"):this.num(e.month);case"MM":return a?n({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return a?n({year:"numeric"},"year"):this.num(e.year);case"yy":return a?n({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return a?n({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return a?n({year:"numeric"},"year"):this.num(e.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return A(m)}};return Qg(t.parseFormat(r),p)}formatDurationFromString(e,r){let o=this.opts.signMode==="negativeLargestOnly"?-1:1,a=A=>{switch(A[0]){case"S":return"milliseconds";case"s":return"seconds";case"m":return"minutes";case"h":return"hours";case"d":return"days";case"w":return"weeks";case"M":return"months";case"y":return"years";default:return null}},n=(A,c)=>p=>{let m=a(p);if(m){let h=c.isNegativeDuration&&m!==c.largestUnit?o:1,y;return this.opts.signMode==="negativeLargestOnly"&&m!==c.largestUnit?y="never":this.opts.signMode==="all"?y="always":y="auto",this.num(A.get(m)*h,p.length,y)}else return p},s=t.parseFormat(r),i=s.reduce((A,{literal:c,val:p})=>c?A:A.concat(p),[]),l=e.shiftTo(...i.map(a).filter(A=>A)),u={isNegativeDuration:l<0,largestUnit:Object.keys(l.values)[0]};return Qg(s,n(l,u))}};var tj=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function ki(...t){let e=t.reduce((r,o)=>r+o.source,"");return RegExp(`^${e}$`)}function bi(...t){return e=>t.reduce(([r,o,a],n)=>{let[s,i,l]=n(e,a);return[{...r,...s},i||o,l]},[{},null,1]).slice(0,2)}function wi(t,...e){if(t==null)return[null,null];for(let[r,o]of e){let a=r.exec(t);if(a)return o(a)}return[null,null]}function rj(...t){return(e,r)=>{let o={},a;for(a=0;am!==void 0&&(h||m&&A)?-m:m;return[{years:p(_n(r)),months:p(_n(o)),weeks:p(_n(a)),days:p(_n(n)),hours:p(_n(s)),minutes:p(_n(i)),seconds:p(_n(l),l==="-0"),milliseconds:p(au(u),c)}]}var ay={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function hp(t,e,r,o,a,n,s){let i={year:e.length===2?nu(Ca(e)):Ca(e),month:dp.indexOf(r)+1,day:Ca(o),hour:Ca(a),minute:Ca(n)};return s&&(i.second=Ca(s)),t&&(i.weekday=t.length>3?cp.indexOf(t)+1:pp.indexOf(t)+1),i}var ny=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function sy(t){let[,e,r,o,a,n,s,i,l,u,A,c]=t,p=hp(e,a,o,r,n,s,i),m;return l?m=ay[l]:u?m=0:m=Xn(A,c),[p,new Qt(m)]}function iy(t){return t.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}var ly=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,uy=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Ay=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function ej(t){let[,e,r,o,a,n,s,i]=t;return[hp(e,a,o,r,n,s,i),Qt.utcInstance]}function fy(t){let[,e,r,o,a,n,s,i]=t;return[hp(e,i,r,o,a,n,s),Qt.utcInstance]}var dy=ki(Ww,_p),cy=ki(Kw,_p),py=ki(Zw,_p),my=ki(aj),sj=bi(ey,yi,su,iu),_y=bi(Yw,yi,su,iu),hy=bi(Jw,yi,su,iu),gy=bi(yi,su,iu);function ij(t){return wi(t,[dy,sj],[cy,_y],[py,hy],[my,gy])}function lj(t){return wi(iy(t),[ny,sy])}function uj(t){return wi(t,[ly,ej],[uy,ej],[Ay,fy])}function Aj(t){return wi(t,[ry,oy])}var jy=bi(yi);function fj(t){return wi(t,[ty,jy])}var xy=ki(Xw,Qw),vy=ki(nj),ky=bi(yi,su,iu);function dj(t){return wi(t,[xy,sj],[vy,ky])}var cj="Invalid Duration",_j={weeks:{days:7,hours:168,minutes:10080,seconds:10080*60,milliseconds:10080*60*1e3},days:{hours:24,minutes:1440,seconds:1440*60,milliseconds:1440*60*1e3},hours:{minutes:60,seconds:3600,milliseconds:3600*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},by={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:2184*60,seconds:2184*60*60,milliseconds:2184*60*60*1e3},months:{weeks:4,days:30,hours:720,minutes:720*60,seconds:720*60*60,milliseconds:720*60*60*1e3},..._j},xo=146097/400,Ei=146097/4800,wy={years:{quarters:4,months:12,weeks:xo/7,days:xo,hours:xo*24,minutes:xo*24*60,seconds:xo*24*60*60,milliseconds:xo*24*60*60*1e3},quarters:{months:3,weeks:xo/28,days:xo/4,hours:xo*24/4,minutes:xo*24*60/4,seconds:xo*24*60*60/4,milliseconds:xo*24*60*60*1e3/4},months:{weeks:Ei/7,days:Ei,hours:Ei*24,minutes:Ei*24*60,seconds:Ei*24*60*60,milliseconds:Ei*24*60*60*1e3},..._j},ts=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],yy=ts.slice(0).reverse();function Ta(t,e,r=!1){let o={values:r?e.values:{...t.values,...e.values||{}},loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy,matrix:e.matrix||t.matrix};return new Et(o)}function hj(t,e){let r=e.milliseconds??0;for(let o of yy.slice(1))e[o]&&(r+=e[o]*t[o].milliseconds);return r}function pj(t,e){let r=hj(t,e)<0?-1:1;ts.reduceRight((o,a)=>{if(he(e[a]))return o;if(o){let n=e[o]*r,s=t[a][o],i=Math.floor(n/s);e[a]+=i*r,e[o]-=i*s*r}return a},null),ts.reduce((o,a)=>{if(he(e[a]))return o;if(o){let n=e[o]%1;e[o]-=n,e[a]+=n*t[o][a]}return a},null)}function mj(t){let e={};for(let[r,o]of Object.entries(t))o!==0&&(e[r]=o);return e}var Et=class t{constructor(e){let r=e.conversionAccuracy==="longterm"||!1,o=r?wy:by;e.matrix&&(o=e.matrix),this.values=e.values,this.loc=e.loc||rt.create(),this.conversionAccuracy=r?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=o,this.isLuxonDuration=!0}static fromMillis(e,r){return t.fromObject({milliseconds:e},r)}static fromObject(e,r={}){if(e==null||typeof e!="object")throw new Ct(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new t({values:xi(e,t.normalizeUnit),loc:rt.fromObject(r),conversionAccuracy:r.conversionAccuracy,matrix:r.matrix})}static fromDurationLike(e){if(Lo(e))return t.fromMillis(e);if(t.isDuration(e))return e;if(typeof e=="object")return t.fromObject(e);throw new Ct(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,r){let[o]=Aj(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,r){let[o]=fj(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,r=null){if(!e)throw new Ct("need to specify a reason the Duration is invalid");let o=e instanceof er?e:new er(e,r);if(tt.throwOnInvalid)throw new WA(o);return new t({invalid:o})}static normalizeUnit(e){let r={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!r)throw new mi(e);return r}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,r={}){let o={...r,floor:r.round!==!1&&r.floor!==!1};return this.isValid?tr.create(this.loc,o).formatDurationFromString(this,e):cj}toHuman(e={}){if(!this.isValid)return cj;let r=e.showZeros!==!1,o=ts.map(a=>{let n=this.values[a];return he(n)||n===0&&!r?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:a.slice(0,-1)}).format(n)}).filter(a=>a);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(o)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=hi(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;let r=this.toMillis();return r<0||r>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},Ye.fromMillis(r,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?hj(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e),o={};for(let a of ts)(mn(r.values,a)||mn(this.values,a))&&(o[a]=r.get(a)+this.get(a));return Ta(this,{values:o},!0)}minus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e);return this.plus(r.negate())}mapUnits(e){if(!this.isValid)return this;let r={};for(let o of Object.keys(this.values))r[o]=fp(e(this.values[o],o));return Ta(this,{values:r},!0)}get(e){return this[t.normalizeUnit(e)]}set(e){if(!this.isValid)return this;let r={...this.values,...xi(e,t.normalizeUnit)};return Ta(this,{values:r})}reconfigure({locale:e,numberingSystem:r,conversionAccuracy:o,matrix:a}={}){let s={loc:this.loc.clone({locale:e,numberingSystem:r}),matrix:a,conversionAccuracy:o};return Ta(this,s)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;let e=this.toObject();return pj(this.matrix,e),Ta(this,{values:e},!0)}rescale(){if(!this.isValid)return this;let e=mj(this.normalize().shiftToAll().toObject());return Ta(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(s=>t.normalizeUnit(s));let r={},o={},a=this.toObject(),n;for(let s of ts)if(e.indexOf(s)>=0){n=s;let i=0;for(let u in o)i+=this.matrix[u][s]*o[u],o[u]=0;Lo(a[s])&&(i+=a[s]);let l=Math.trunc(i);r[s]=l,o[s]=(i*1e3-l*1e3)/1e3}else Lo(a[s])&&(o[s]=a[s]);for(let s in o)o[s]!==0&&(r[n]+=s===n?o[s]:o[s]/this.matrix[n][s]);return pj(this.matrix,r),Ta(this,{values:r},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;let e={};for(let r of Object.keys(this.values))e[r]=this.values[r]===0?0:-this.values[r];return Ta(this,{values:e},!0)}removeZeros(){if(!this.isValid)return this;let e=mj(this.values);return Ta(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function r(o,a){return o===void 0||o===0?a===void 0||a===0:o===a}for(let o of ts)if(!r(this.values[o],e.values[o]))return!1;return!0}};var Ii="Invalid Interval";function Ey(t,e){return!t||!t.isValid?Oa.invalid("missing or invalid start"):!e||!e.isValid?Oa.invalid("missing or invalid end"):ee:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:r}={}){return this.isValid?t.fromDateTimes(e||this.s,r||this.e):this}splitAt(...e){if(!this.isValid)return[];let r=e.map($i).filter(s=>this.contains(s)).sort((s,i)=>s.toMillis()-i.toMillis()),o=[],{s:a}=this,n=0;for(;a+this.e?this.e:s;o.push(t.fromDateTimes(a,i)),a=i,n+=1}return o}splitBy(e){let r=Et.fromDurationLike(e);if(!this.isValid||!r.isValid||r.as("milliseconds")===0)return[];let{s:o}=this,a=1,n,s=[];for(;ol*a));n=+i>+this.e?this.e:i,s.push(t.fromDateTimes(o,n)),o=n,a+=1}return s}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;let r=this.s>e.s?this.s:e.s,o=this.e=o?null:t.fromDateTimes(r,o)}union(e){if(!this.isValid)return this;let r=this.se.e?this.e:e.e;return t.fromDateTimes(r,o)}static merge(e){let[r,o]=e.sort((a,n)=>a.s-n.s).reduce(([a,n],s)=>n?n.overlaps(s)||n.abutsStart(s)?[a,n.union(s)]:[a.concat([n]),s]:[a,s],[[],null]);return o&&r.push(o),r}static xor(e){let r=null,o=0,a=[],n=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),s=Array.prototype.concat(...n),i=s.sort((l,u)=>l.time-u.time);for(let l of i)o+=l.type==="s"?1:-1,o===1?r=l.time:(r&&+r!=+l.time&&a.push(t.fromDateTimes(r,l.time)),r=null);return t.merge(a)}difference(...e){return t.xor([this].concat(e)).map(r=>this.intersection(r)).filter(r=>r&&!r.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:Ii}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=fn,r={}){return this.isValid?tr.create(this.s.loc.clone(r),e).formatInterval(this):Ii}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:Ii}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:Ii}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:Ii}toFormat(e,{separator:r=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${r}${this.e.toFormat(e)}`:Ii}toDuration(e,r){return this.isValid?this.e.diff(this.s,e,r):Et.invalid(this.invalidReason)}mapEndpoints(e){return t.fromDateTimes(e(this.s),e(this.e))}};var Ma=class{static hasDST(e=tt.defaultZone){let r=Ye.now().setZone(e).set({month:12});return!e.isUniversal&&r.offset!==r.set({month:6}).offset}static isValidIANAZone(e){return gr.isValidZone(e)}static normalizeZone(e){return Ro(e,tt.defaultZone)}static getStartOfWeek({locale:e=null,locObj:r=null}={}){return(r||rt.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:r=null}={}){return(r||rt.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:r=null}={}){return(r||rt.create(e)).getWeekendDays().slice()}static months(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||rt.create(r,o,n)).months(e)}static monthsFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||rt.create(r,o,n)).months(e,!0)}static weekdays(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||rt.create(r,o,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||rt.create(r,o,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return rt.create(e).meridiems()}static eras(e="short",{locale:r=null}={}){return rt.create(r,null,"gregory").eras(e)}static features(){return{relative:JA(),localeWeek:XA()}}};function gj(t,e){let r=a=>a.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),o=r(e)-r(t);return Math.floor(Et.fromMillis(o).as("days"))}function Iy(t,e,r){let o=[["years",(l,u)=>u.year-l.year],["quarters",(l,u)=>u.quarter-l.quarter+(u.year-l.year)*4],["months",(l,u)=>u.month-l.month+(u.year-l.year)*12],["weeks",(l,u)=>{let A=gj(l,u);return(A-A%7)/7}],["days",gj]],a={},n=t,s,i;for(let[l,u]of o)r.indexOf(l)>=0&&(s=l,a[l]=u(t,e),i=n.plus(a),i>e?(a[l]--,t=n.plus(a),t>e&&(i=t,a[l]--,t=n.plus(a))):t=i);return[t,a,i,s]}function jj(t,e,r,o){let[a,n,s,i]=Iy(t,e,r),l=e-a,u=r.filter(c=>["hours","minutes","seconds","milliseconds"].indexOf(c)>=0);u.length===0&&(s0?Et.fromMillis(l,o).shiftTo(...u).plus(A):A}var $y="missing Intl.DateTimeFormat.formatToParts support";function st(t,e=r=>r){return{regex:t,deser:([r])=>e(Dg(r))}}var Dy="\xA0",kj=`[ ${Dy}]`,bj=new RegExp(kj,"g");function Fy(t){return t.replace(/\./g,"\\.?").replace(bj,kj)}function xj(t){return t.replace(/\./g,"").replace(bj," ").toLowerCase()}function Go(t,e){return t===null?null:{regex:RegExp(t.map(Fy).join("|")),deser:([r])=>t.findIndex(o=>xj(r)===xj(o))+e}}function vj(t,e){return{regex:t,deser:([,r,o])=>Xn(r,o),groups:e}}function rf(t){return{regex:t,deser:([e])=>e}}function By(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Sy(t,e){let r=go(e),o=go(e,"{2}"),a=go(e,"{3}"),n=go(e,"{4}"),s=go(e,"{6}"),i=go(e,"{1,2}"),l=go(e,"{1,3}"),u=go(e,"{1,6}"),A=go(e,"{1,9}"),c=go(e,"{2,4}"),p=go(e,"{4,6}"),m=I=>({regex:RegExp(By(I.val)),deser:([F])=>F,literal:!0}),y=(I=>{if(t.literal)return m(I);switch(I.val){case"G":return Go(e.eras("short"),0);case"GG":return Go(e.eras("long"),0);case"y":return st(u);case"yy":return st(c,nu);case"yyyy":return st(n);case"yyyyy":return st(p);case"yyyyyy":return st(s);case"M":return st(i);case"MM":return st(o);case"MMM":return Go(e.months("short",!0),1);case"MMMM":return Go(e.months("long",!0),1);case"L":return st(i);case"LL":return st(o);case"LLL":return Go(e.months("short",!1),1);case"LLLL":return Go(e.months("long",!1),1);case"d":return st(i);case"dd":return st(o);case"o":return st(l);case"ooo":return st(a);case"HH":return st(o);case"H":return st(i);case"hh":return st(o);case"h":return st(i);case"mm":return st(o);case"m":return st(i);case"q":return st(i);case"qq":return st(o);case"s":return st(i);case"ss":return st(o);case"S":return st(l);case"SSS":return st(a);case"u":return rf(A);case"uu":return rf(i);case"uuu":return st(r);case"a":return Go(e.meridiems(),0);case"kkkk":return st(n);case"kk":return st(c,nu);case"W":return st(i);case"WW":return st(o);case"E":case"c":return st(r);case"EEE":return Go(e.weekdays("short",!1),1);case"EEEE":return Go(e.weekdays("long",!1),1);case"ccc":return Go(e.weekdays("short",!0),1);case"cccc":return Go(e.weekdays("long",!0),1);case"Z":case"ZZ":return vj(new RegExp(`([+-]${i.source})(?::(${o.source}))?`),2);case"ZZZ":return vj(new RegExp(`([+-]${i.source})(${o.source})?`),2);case"z":return rf(/[a-z_+-/]{1,256}?/i);case" ":return rf(/[^\S\n\r]/);default:return m(I)}})(t)||{invalidReason:$y};return y.token=t,y}var Cy={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Ty(t,e,r){let{type:o,value:a}=t;if(o==="literal"){let l=/^\s+$/.test(a);return{literal:!l,val:l?" ":a}}let n=e[o],s=o;o==="hour"&&(e.hour12!=null?s=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?s="hour12":s="hour24":s=r.hour12?"hour12":"hour24");let i=Cy[s];if(typeof i=="object"&&(i=i[n]),i)return{literal:!1,val:i}}function Oy(t){return[`^${t.map(r=>r.regex).reduce((r,o)=>`${r}(${o.source})`,"")}$`,t]}function My(t,e,r){let o=t.match(e);if(o){let a={},n=1;for(let s in r)if(mn(r,s)){let i=r[s],l=i.groups?i.groups+1:1;!i.literal&&i.token&&(a[i.token.val[0]]=i.deser(o.slice(n,n+l))),n+=l}return[o,a]}else return[o,{}]}function Ny(t){let e=n=>{switch(n){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}},r=null,o;return he(t.z)||(r=gr.create(t.z)),he(t.Z)||(r||(r=new Qt(t.Z)),o=t.Z),he(t.q)||(t.M=(t.q-1)*3+1),he(t.h)||(t.h<12&&t.a===1?t.h+=12:t.h===12&&t.a===0&&(t.h=0)),t.G===0&&t.y&&(t.y=-t.y),he(t.u)||(t.S=au(t.u)),[Object.keys(t).reduce((n,s)=>{let i=e(s);return i&&(n[i]=t[s]),n},{}),r,o]}var gp=null;function qy(){return gp||(gp=Ye.fromMillis(1555555555555)),gp}function Py(t,e){if(t.literal)return t;let r=tr.macroTokenToFormatOpts(t.val),o=vp(r,e);return o==null||o.includes(void 0)?t:o}function jp(t,e){return Array.prototype.concat(...t.map(r=>Py(r,e)))}var lu=class{constructor(e,r){if(this.locale=e,this.format=r,this.tokens=jp(tr.parseFormat(r),e),this.units=this.tokens.map(o=>Sy(o,e)),this.disqualifyingUnit=this.units.find(o=>o.invalidReason),!this.disqualifyingUnit){let[o,a]=Oy(this.units);this.regex=RegExp(o,"i"),this.handlers=a}}explainFromTokens(e){if(this.isValid){let[r,o]=My(e,this.regex,this.handlers),[a,n,s]=o?Ny(o):[null,null,void 0];if(mn(o,"a")&&mn(o,"H"))throw new No("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:r,matches:o,result:a,zone:n,specificOffset:s}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}};function xp(t,e,r){return new lu(t,r).explainFromTokens(e)}function wj(t,e,r){let{result:o,zone:a,specificOffset:n,invalidReason:s}=xp(t,e,r);return[o,a,n,s]}function vp(t,e){if(!t)return null;let o=tr.create(e,t).dtFormatter(qy()),a=o.formatToParts(),n=o.resolvedOptions();return a.map(s=>Ty(s,t,n))}var kp="Invalid DateTime",yj=864e13;function uu(t){return new er("unsupported zone",`the zone "${t.name}" is not supported`)}function bp(t){return t.weekData===null&&(t.weekData=tu(t.c)),t.weekData}function wp(t){return t.localWeekData===null&&(t.localWeekData=tu(t.c,t.loc.getMinDaysInFirstWeek(),t.loc.getStartOfWeek())),t.localWeekData}function rs(t,e){let r={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new Ye({...r,...e,old:r})}function Sj(t,e,r){let o=t-e*60*1e3,a=r.offset(o);if(e===a)return[o,e];o-=(a-e)*60*1e3;let n=r.offset(o);return a===n?[o,a]:[t-Math.min(a,n)*60*1e3,Math.max(a,n)]}function of(t,e){t+=e*60*1e3;let r=new Date(t);return{year:r.getUTCFullYear(),month:r.getUTCMonth()+1,day:r.getUTCDate(),hour:r.getUTCHours(),minute:r.getUTCMinutes(),second:r.getUTCSeconds(),millisecond:r.getUTCMilliseconds()}}function nf(t,e,r){return Sj(_i(t),e,r)}function Ej(t,e){let r=t.o,o=t.c.year+Math.trunc(e.years),a=t.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,n={...t.c,year:o,month:a,day:Math.min(t.c.day,ji(o,a))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},s=Et.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),i=_i(n),[l,u]=Sj(i,r,t.zone);return s!==0&&(l+=s,u=t.zone.offset(l)),{ts:l,o:u}}function Di(t,e,r,o,a,n){let{setZone:s,zone:i}=r;if(t&&Object.keys(t).length!==0||e){let l=e||i,u=Ye.fromObject(t,{...r,zone:l,specificOffset:n});return s?u:u.setZone(i)}else return Ye.invalid(new er("unparsable",`the input "${a}" can't be parsed as ${o}`))}function af(t,e,r=!0){return t.isValid?tr.create(rt.create("en-US"),{allowZ:r,forceSimple:!0}).formatDateTimeFromString(t,e):null}function yp(t,e,r){let o=t.c.year>9999||t.c.year<0,a="";if(o&&t.c.year>=0&&(a+="+"),a+=yt(t.c.year,o?6:4),r==="year")return a;if(e){if(a+="-",a+=yt(t.c.month),r==="month")return a;a+="-"}else if(a+=yt(t.c.month),r==="month")return a;return a+=yt(t.c.day),a}function Ij(t,e,r,o,a,n,s){let i=!r||t.c.millisecond!==0||t.c.second!==0,l="";switch(s){case"day":case"month":case"year":break;default:if(l+=yt(t.c.hour),s==="hour")break;if(e){if(l+=":",l+=yt(t.c.minute),s==="minute")break;i&&(l+=":",l+=yt(t.c.second))}else{if(l+=yt(t.c.minute),s==="minute")break;i&&(l+=yt(t.c.second))}if(s==="second")break;i&&(!o||t.c.millisecond!==0)&&(l+=".",l+=yt(t.c.millisecond,3))}return a&&(t.isOffsetFixed&&t.offset===0&&!n?l+="Z":t.o<0?(l+="-",l+=yt(Math.trunc(-t.o/60)),l+=":",l+=yt(Math.trunc(-t.o%60))):(l+="+",l+=yt(Math.trunc(t.o/60)),l+=":",l+=yt(Math.trunc(t.o%60)))),n&&(l+="["+t.zone.ianaName+"]"),l}var Cj={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Ry={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Ly={ordinal:1,hour:0,minute:0,second:0,millisecond:0},sf=["year","month","day","hour","minute","second","millisecond"],Gy=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Hy=["year","ordinal","hour","minute","second","millisecond"];function lf(t){let e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new mi(t);return e}function $j(t){switch(t.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return lf(t)}}function Vy(t){if(Au===void 0&&(Au=tt.now()),t.type!=="iana")return t.offset(Au);let e=t.name,r=Ep.get(e);return r===void 0&&(r=t.offset(Au),Ep.set(e,r)),r}function Dj(t,e){let r=Ro(e.zone,tt.defaultZone);if(!r.isValid)return Ye.invalid(uu(r));let o=rt.fromObject(e),a,n;if(he(t.year))a=tt.now();else{for(let l of sf)he(t[l])&&(t[l]=Cj[l]);let s=lp(t)||up(t);if(s)return Ye.invalid(s);let i=Vy(r);[a,n]=nf(t,i,r)}return new Ye({ts:a,zone:r,loc:o,o:n})}function Fj(t,e,r){let o=he(r.round)?!0:r.round,a=he(r.rounding)?"trunc":r.rounding,n=(i,l)=>(i=hi(i,o||r.calendary?0:2,r.calendary?"round":a),e.loc.clone(r).relFormatter(r).format(i,l)),s=i=>r.calendary?e.hasSame(t,i)?0:e.startOf(i).diff(t.startOf(i),i).get(i):e.diff(t,i).get(i);if(r.unit)return n(s(r.unit),r.unit);for(let i of r.units){let l=s(i);if(Math.abs(l)>=1)return n(l,i)}return n(t>e?-0:0,r.units[r.units.length-1])}function Bj(t){let e={},r;return t.length>0&&typeof t[t.length-1]=="object"?(e=t[t.length-1],r=Array.from(t).slice(0,t.length-1)):r=Array.from(t),[e,r]}var Au,Ep=new Map,Ye=class t{constructor(e){let r=e.zone||tt.defaultZone,o=e.invalid||(Number.isNaN(e.ts)?new er("invalid input"):null)||(r.isValid?null:uu(r));this.ts=he(e.ts)?tt.now():e.ts;let a=null,n=null;if(!o)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(r))[a,n]=[e.old.c,e.old.o];else{let i=Lo(e.o)&&!e.old?e.o:r.offset(this.ts);a=of(this.ts,i),o=Number.isNaN(a.year)?new er("invalid input"):null,a=o?null:a,n=o?null:i}this._zone=r,this.loc=e.loc||rt.create(),this.invalid=o,this.weekData=null,this.localWeekData=null,this.c=a,this.o=n,this.isLuxonDateTime=!0}static now(){return new t({})}static local(){let[e,r]=Bj(arguments),[o,a,n,s,i,l,u]=r;return Dj({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static utc(){let[e,r]=Bj(arguments),[o,a,n,s,i,l,u]=r;return e.zone=Qt.utcInstance,Dj({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static fromJSDate(e,r={}){let o=zg(e)?e.valueOf():NaN;if(Number.isNaN(o))return t.invalid("invalid input");let a=Ro(r.zone,tt.defaultZone);return a.isValid?new t({ts:o,zone:a,loc:rt.fromObject(r)}):t.invalid(uu(a))}static fromMillis(e,r={}){if(Lo(e))return e<-yj||e>yj?t.invalid("Timestamp out of range"):new t({ts:e,zone:Ro(r.zone,tt.defaultZone),loc:rt.fromObject(r)});throw new Ct(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,r={}){if(Lo(e))return new t({ts:e*1e3,zone:Ro(r.zone,tt.defaultZone),loc:rt.fromObject(r)});throw new Ct("fromSeconds requires a numerical input")}static fromObject(e,r={}){e=e||{};let o=Ro(r.zone,tt.defaultZone);if(!o.isValid)return t.invalid(uu(o));let a=rt.fromObject(r),n=xi(e,$j),{minDaysInFirstWeek:s,startOfWeek:i}=ip(n,a),l=tt.now(),u=he(r.specificOffset)?o.offset(l):r.specificOffset,A=!he(n.ordinal),c=!he(n.year),p=!he(n.month)||!he(n.day),m=c||p,h=n.weekYear||n.weekNumber;if((m||A)&&h)throw new No("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(p&&A)throw new No("Can't mix ordinal dates with month/day");let y=h||n.weekday&&!m,I,F,R=of(l,u);y?(I=Gy,F=Ry,R=tu(R,s,i)):A?(I=Hy,F=Ly,R=tf(R)):(I=sf,F=Cj);let B=!1;for(let le of I){let xe=n[le];he(xe)?B?n[le]=F[le]:n[le]=R[le]:B=!0}let j=y?Hg(n,s,i):A?Vg(n):lp(n),E=j||up(n);if(E)return t.invalid(E);let D=y?np(n,s,i):A?sp(n):n,[k,C]=nf(D,u,o),P=new t({ts:k,zone:o,o:C,loc:a});return n.weekday&&m&&e.weekday!==P.weekday?t.invalid("mismatched weekday",`you can't specify both a weekday of ${n.weekday} and a date of ${P.toISO()}`):P.isValid?P:t.invalid(P.invalid)}static fromISO(e,r={}){let[o,a]=ij(e);return Di(o,a,r,"ISO 8601",e)}static fromRFC2822(e,r={}){let[o,a]=lj(e);return Di(o,a,r,"RFC 2822",e)}static fromHTTP(e,r={}){let[o,a]=uj(e);return Di(o,a,r,"HTTP",r)}static fromFormat(e,r,o={}){if(he(e)||he(r))throw new Ct("fromFormat requires an input string and a format");let{locale:a=null,numberingSystem:n=null}=o,s=rt.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0}),[i,l,u,A]=wj(s,e,r);return A?t.invalid(A):Di(i,l,o,`format ${r}`,e,u)}static fromString(e,r,o={}){return t.fromFormat(e,r,o)}static fromSQL(e,r={}){let[o,a]=dj(e);return Di(o,a,r,"SQL",e)}static invalid(e,r=null){if(!e)throw new Ct("need to specify a reason the DateTime is invalid");let o=e instanceof er?e:new er(e,r);if(tt.throwOnInvalid)throw new UA(o);return new t({invalid:o})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,r={}){let o=vp(e,rt.fromObject(r));return o?o.map(a=>a?a.val:null).join(""):null}static expandFormat(e,r={}){return jp(tr.parseFormat(e),rt.fromObject(r)).map(a=>a.val).join("")}static resetCache(){Au=void 0,Ep.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?bp(this).weekYear:NaN}get weekNumber(){return this.isValid?bp(this).weekNumber:NaN}get weekday(){return this.isValid?bp(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?wp(this).weekday:NaN}get localWeekNumber(){return this.isValid?wp(this).weekNumber:NaN}get localWeekYear(){return this.isValid?wp(this).weekYear:NaN}get ordinal(){return this.isValid?tf(this.c).ordinal:NaN}get monthShort(){return this.isValid?Ma.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?Ma.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?Ma.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?Ma.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let e=864e5,r=6e4,o=_i(this.c),a=this.zone.offset(o-e),n=this.zone.offset(o+e),s=this.zone.offset(o-a*r),i=this.zone.offset(o-n*r);if(s===i)return[this];let l=o-s*r,u=o-i*r,A=of(l,s),c=of(u,i);return A.hour===c.hour&&A.minute===c.minute&&A.second===c.second&&A.millisecond===c.millisecond?[rs(this,{ts:l}),rs(this,{ts:u})]:[this]}get isInLeapYear(){return es(this.year)}get daysInMonth(){return ji(this.year,this.month)}get daysInYear(){return this.isValid?pn(this.year):NaN}get weeksInWeekYear(){return this.isValid?Qn(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?Qn(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){let{locale:r,numberingSystem:o,calendar:a}=tr.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:r,numberingSystem:o,outputCalendar:a}}toUTC(e=0,r={}){return this.setZone(Qt.instance(e),r)}toLocal(){return this.setZone(tt.defaultZone)}setZone(e,{keepLocalTime:r=!1,keepCalendarTime:o=!1}={}){if(e=Ro(e,tt.defaultZone),e.equals(this.zone))return this;if(e.isValid){let a=this.ts;if(r||o){let n=e.offset(this.ts),s=this.toObject();[a]=nf(s,n,e)}return rs(this,{ts:a,zone:e})}else return t.invalid(uu(e))}reconfigure({locale:e,numberingSystem:r,outputCalendar:o}={}){let a=this.loc.clone({locale:e,numberingSystem:r,outputCalendar:o});return rs(this,{loc:a})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;let r=xi(e,$j),{minDaysInFirstWeek:o,startOfWeek:a}=ip(r,this.loc),n=!he(r.weekYear)||!he(r.weekNumber)||!he(r.weekday),s=!he(r.ordinal),i=!he(r.year),l=!he(r.month)||!he(r.day),u=i||l,A=r.weekYear||r.weekNumber;if((u||s)&&A)throw new No("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(l&&s)throw new No("Can't mix ordinal dates with month/day");let c;n?c=np({...tu(this.c,o,a),...r},o,a):he(r.ordinal)?(c={...this.toObject(),...r},he(r.day)&&(c.day=Math.min(ji(c.year,c.month),c.day))):c=sp({...tf(this.c),...r});let[p,m]=nf(c,this.o,this.zone);return rs(this,{ts:p,o:m})}plus(e){if(!this.isValid)return this;let r=Et.fromDurationLike(e);return rs(this,Ej(this,r))}minus(e){if(!this.isValid)return this;let r=Et.fromDurationLike(e).negate();return rs(this,Ej(this,r))}startOf(e,{useLocaleWeeks:r=!1}={}){if(!this.isValid)return this;let o={},a=Et.normalizeUnit(e);switch(a){case"years":o.month=1;case"quarters":case"months":o.day=1;case"weeks":case"days":o.hour=0;case"hours":o.minute=0;case"minutes":o.second=0;case"seconds":o.millisecond=0;break;case"milliseconds":break}if(a==="weeks")if(r){let n=this.loc.getStartOfWeek(),{weekday:s}=this;s=3&&(l+="T"),l+=Ij(this,i,r,o,a,n,s),l}toISODate({format:e="extended",precision:r="day"}={}){return this.isValid?yp(this,e==="extended",lf(r)):null}toISOWeekDate(){return af(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:r=!1,includeOffset:o=!0,includePrefix:a=!1,extendedZone:n=!1,format:s="extended",precision:i="milliseconds"}={}){return this.isValid?(i=lf(i),(a&&sf.indexOf(i)>=3?"T":"")+Ij(this,s==="extended",r,e,o,n,i)):null}toRFC2822(){return af(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return af(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?yp(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:r=!1,includeOffsetSpace:o=!0}={}){let a="HH:mm:ss.SSS";return(r||e)&&(o&&(a+=" "),r?a+="z":e&&(a+="ZZ")),af(this,a,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():kp}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};let r={...this.c};return e.includeConfig&&(r.outputCalendar=this.outputCalendar,r.numberingSystem=this.loc.numberingSystem,r.locale=this.loc.locale),r}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,r="milliseconds",o={}){if(!this.isValid||!e.isValid)return Et.invalid("created by diffing an invalid DateTime");let a={locale:this.locale,numberingSystem:this.numberingSystem,...o},n=Wg(r).map(Et.normalizeUnit),s=e.valueOf()>this.valueOf(),i=s?this:e,l=s?e:this,u=jj(i,l,n,a);return s?u.negate():u}diffNow(e="milliseconds",r={}){return this.diff(t.now(),e,r)}until(e){return this.isValid?Oa.fromDateTimes(this,e):this}hasSame(e,r,o){if(!this.isValid)return!1;let a=e.valueOf(),n=this.setZone(e.zone,{keepLocalTime:!0});return n.startOf(r,o)<=a&&a<=n.endOf(r,o)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;let r=e.base||t.fromObject({},{zone:this.zone}),o=e.padding?thisr.valueOf(),Math.min)}static max(...e){if(!e.every(t.isDateTime))throw new Ct("max requires all arguments be DateTimes");return Ap(e,r=>r.valueOf(),Math.max)}static fromFormatExplain(e,r,o={}){let{locale:a=null,numberingSystem:n=null}=o,s=rt.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0});return xp(s,e,r)}static fromStringExplain(e,r,o={}){return t.fromFormatExplain(e,r,o)}static buildFormatParser(e,r={}){let{locale:o=null,numberingSystem:a=null}=r,n=rt.fromOpts({locale:o,numberingSystem:a,defaultToEN:!0});return new lu(n,e)}static fromFormatParser(e,r,o={}){if(he(e)||he(r))throw new Ct("fromFormatParser requires an input string and a format parser");let{locale:a=null,numberingSystem:n=null}=o,s=rt.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0});if(!s.equals(r.locale))throw new Ct(`fromFormatParser called with a locale of ${s}, but the format parser was created for ${r.locale}`);let{result:i,zone:l,specificOffset:u,invalidReason:A}=r.explainFromTokens(e);return A?t.invalid(A):Di(i,l,o,`format ${r.format}`,e,u)}static get DATE_SHORT(){return fn}static get DATE_MED(){return Tl}static get DATE_MED_WITH_WEEKDAY(){return Nc}static get DATE_FULL(){return Ol}static get DATE_HUGE(){return Ml}static get TIME_SIMPLE(){return Nl}static get TIME_WITH_SECONDS(){return ql}static get TIME_WITH_SHORT_OFFSET(){return Pl}static get TIME_WITH_LONG_OFFSET(){return Rl}static get TIME_24_SIMPLE(){return Ll}static get TIME_24_WITH_SECONDS(){return Gl}static get TIME_24_WITH_SHORT_OFFSET(){return Hl}static get TIME_24_WITH_LONG_OFFSET(){return Vl}static get DATETIME_SHORT(){return Ul}static get DATETIME_SHORT_WITH_SECONDS(){return zl}static get DATETIME_MED(){return Wl}static get DATETIME_MED_WITH_SECONDS(){return Kl}static get DATETIME_MED_WITH_WEEKDAY(){return qc}static get DATETIME_FULL(){return Zl}static get DATETIME_FULL_WITH_SECONDS(){return Yl}static get DATETIME_HUGE(){return Jl}static get DATETIME_HUGE_WITH_SECONDS(){return Xl}};function $i(t){if(Ye.isDateTime(t))return t;if(t&&t.valueOf&&Lo(t.valueOf()))return Ye.fromJSDate(t);if(t&&typeof t=="object")return Ye.fromObject(t);throw new Ct(`Unknown datetime argument: ${t}, of type ${typeof t}`)}var Tj;typeof window<"u"&&((Tj=window.__svelte??(window.__svelte={})).v??(Tj.v=new Set)).add("5");var Ho=!1,aa=!1,na=!1;function Oj(){aa=!0}Oj();var Na={};var At=Symbol(),Xr=Symbol("filename"),Mj=Symbol("hmr"),Nj="http://www.w3.org/1999/xhtml",uf="http://www.w3.org/2000/svg";var Ip="@attach";var N=!1;var Nr=Array.isArray,qj=Array.prototype.indexOf,fu=Array.from,$p=Object.keys,rr=Object.defineProperty,jr=Object.getOwnPropertyDescriptor,Af=Object.getOwnPropertyDescriptors,ff=Object.prototype,Pj=Array.prototype,hn=Object.getPrototypeOf,Dp=Object.isExtensible;function os(t){return typeof t=="function"}var or=()=>{};function Rj(t){return t()}function as(t){for(var e=0;e{t=o,e=a});return{promise:r,resolve:t,reject:e}}function Fp(t,e){if(Array.isArray(t))return t;if(e===void 0||!(Symbol.iterator in t))return Array.from(t);let r=[];for(let o of t)if(r.push(o),r.length===e)break;return r}var dr=Symbol("$state"),Fi=Symbol("legacy props"),Gj=Symbol(""),df=Symbol("proxy path"),Bi=new class extends Error{constructor(){super(...arguments);Ze(this,"name","StaleReactionError");Ze(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}},cf=1,du=3,vo=8;function Hj(){if(N){let t=new Error("await_outside_boundary\nCannot await outside a `` with a `pending` snippet\nhttps://svelte.dev/e/await_outside_boundary");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/await_outside_boundary")}function cu(t){if(N){let e=new Error(`lifecycle_outside_component +`);let h=Array.from(u).map(y=>e[y]);n+=R_(t,e,h,o,a)}),n}function vf(t,e,r,o){let a=new Nt([e],o.fields,o.max_depth??100,o.max_count??1e3,!1,void 0),n=new po(mo(o.edge_sort_id.field,o.edge_sort_id.order===-1),!1),s=t.rec_traverse_and_process(a,n);return vl(t,s,r,o)}var G_={field:"basename",order:1},kl={ext:!1,folder:!1,alias:!1},kf={is_dirty:!1,edge_fields:[{label:"up"},{label:"down"},{label:"same"},{label:"next"},{label:"prev"}],edge_field_groups:[{label:"ups",fields:["up"]},{label:"downs",fields:["down"]},{label:"sames",fields:["same"]},{label:"nexts",fields:["next"]},{label:"prevs",fields:["prev"]}],implied_relations:{transitive:[{name:"",rounds:1,chain:[{field:"up"}],close_field:"down",close_reversed:!0},{name:"",rounds:1,chain:[{field:"down"}],close_field:"up",close_reversed:!0},{name:"",rounds:1,chain:[{field:"same"}],close_field:"same",close_reversed:!0},{name:"",rounds:1,chain:[{field:"next"}],close_field:"prev",close_reversed:!0},{name:"",rounds:1,chain:[{field:"prev"}],close_field:"next",close_reversed:!0}]},explicit_edge_sources:{typed_link:{},list_note:{default_neighbour_field:""},tag_note:{default_field:"up"},regex_note:{default_field:"up"},dendron_note:{enabled:!1,delimiter:".",default_field:"up",display_trimmed:!1},johnny_decimal_note:{enabled:!1,delimiter:".",default_field:"up"},date_note:{enabled:!1,date_format:"yyyy-MM-dd",default_field:"next",stretch_to_existing:!1}},views:{page:{all:{sticky:!1,readable_line_width:!0},trail:{enabled:!0,format:"grid",selection:"all",default_depth:999,no_path_message:"",show_controls:!0,merge_fields:!1,field_group_labels:["ups"],show_node_options:{...kl}},prev_next:{enabled:!0,show_node_options:{...kl},field_group_labels:{prev:["prevs"],next:["nexts"]}}},side:{matrix:{collapse:!1,edge_sort_id:{...G_},custom_sort_fields:!1,custom_sort_field_labels:[],show_node_options:{...kl},show_attributes:["source","implied_kind","round"],field_group_labels:["ups","downs","sames","nexts","prevs"],lock_view:!1,lock_path:""},tree:{collapse:!1,show_attributes:[],merge_fields:!1,lock_view:!1,lock_path:"",field_group_labels:["downs"],edge_sort_id:{...G_},show_node_options:{...kl}}},codeblocks:{show_node_options:{...kl}}},commands:{rebuild_graph:{notify:!0,trigger:{note_save:!1,layout_change:!1}},list_index:{default_options:oi},freeze_implied_edges:{default_options:{destination:"frontmatter",included_fields:[],use_alias:!0}},thread:{default_options:{destination:"frontmatter",target_path_template:"{{source.folder}}/{{attr.field}} {{source.basename}}"}}},suggestors:{edge_field:{enabled:!1,trigger:"."}},debug:{level:"INFO"}};var ra={matrix:"bc-matrix-view",tree:"bc-tree-view"};var Lv=require("obsidian");var H_=["typed_link","tag_note","list_note","dendron_note","johnny_decimal_note","dataview_note","date_note","folder_note","regex_note"],bf=["basename","path","field","explicit"];var V_={"BC-tag-note-tag":{property_type:"text"},"BC-tag-note-field":{property_type:"text"},"BC-tag-note-exact":{property_type:"checkbox"},"BC-regex-note-regex":{property_type:"text"},"BC-regex-note-flags":{property_type:"text"},"BC-regex-note-field":{property_type:"text"},"BC-folder-note-field":{property_type:"text"},"BC-folder-note-recurse":{property_type:"checkbox"},"BC-list-note-field":{property_type:"text"},"BC-list-note-neighbour-field":{property_type:"text"},"BC-list-note-exclude-index":{property_type:"checkbox"},"BC-dendron-note-field":{property_type:"text"},"BC-johnny-decimal-note-field":{property_type:"text"},"BC-dataview-note-query":{property_type:"text"},"BC-dataview-note-field":{property_type:"text"},"BC-ignore-in-edges":{property_type:"checkbox"},"BC-ignore-out-edges":{property_type:"checkbox"}},ze={"tag-note-tag":"BC-tag-note-tag","tag-note-field":"BC-tag-note-field","tag-note-exact":"BC-tag-note-exact","regex-note-regex":"BC-regex-note-regex","regex-note-flags":"BC-regex-note-flags","regex-note-field":"BC-regex-note-field","folder-note-field":"BC-folder-note-field","folder-note-recurse":"BC-folder-note-recurse","list-note-field":"BC-list-note-field","list-note-neighbour-field":"BC-list-note-neighbour-field","list-note-exclude-index":"BC-list-note-exclude-index","dendron-note-field":"BC-dendron-note-field","johnny-decimal-note-field":"BC-johnny-decimal-note-field","dataview-note-query":"BC-dataview-note-query","dataview-note-field":"BC-dataview-note-field","ignore-in-edges":"BC-ignore-in-edges","ignore-out-edges":"BC-ignore-out-edges"};var Or=class{constructor(){this.start=performance.now()}elapsed(){return performance.now()-this.start}elapsed_str(e=0){return this.elapsed().toFixed(e)}reset(){this.start=performance.now()}elapsedMessage(e,r=!1){let o=`${e} took ${this.elapsed_str(2)}ms`;return r&&this.reset(),o}};var pi=ik(kg());function ww(t){return new Promise(e=>{(0,pi.isPluginEnabled)(t.app)?((0,pi.getAPI)(t.app)?.index.initialized&&(H.debug("dataview > already initialized"),e()),t.registerEvent(t.app.metadataCache.on("dataview:index-ready",()=>{H.debug("dataview > ready"),e()}))):(H.debug("dataview > not enabled"),e())})}var Ca={get_api:pi.getAPI,is_enabled:pi.isPluginEnabled,await_if_enabled:ww};var Xt=t=>({ok:!0,data:t}),xt=t=>({ok:!1,error:t}),lt=t=>xt(t);function bg(t,e,r){if(!e)return xt(void 0);let o=e[ze["dataview-note-query"]];if(o){if(typeof o!="string")return lt({path:r,code:"invalid_field_value",message:"dataview-note-query is not a string"})}else return xt(void 0);let a=e[ze["dataview-note-field"]];if(a){if(typeof a!="string")return lt({path:r,code:"invalid_field_value",message:"dataview-note-field is not a string"});if(!t.settings.edge_fields.find(n=>n.label===a))return lt({path:r,code:"invalid_field_value",message:`dataview-note-field is not a valid field: '${a}'`})}else return xt(void 0);return Xt({field:a,query:o})}var wg=(t,e)=>{let r={nodes:[],edges:[],errors:[]};return e.obsidian?.forEach(({file:o,cache:a})=>{if(!a)return;let n=bg(t,a?.frontmatter,o.path);if(n.ok){r.errors.push({code:"missing_other_plugin",path:o.path,message:"dataview-notes are not implemented without Dataview enabled"});return}else{n.error&&r.errors.push(n.error);return}}),e.dataview?.forEach(o=>{let a=o.file.path,n=bg(t,o,a);if(!n.ok){n.error&&r.errors.push(n.error);return}let{field:s,query:i}=n.data,l=[];try{l=Ca.get_api().pages(i,a).values}catch(u){return H.warn("dataview-note > DV API error:",u instanceof Error?u.message:u),r.errors.push({code:"invalid_field_value",path:a,message:`dataview-note-query is not a valid dataview query: '${i}'`})}l.forEach(u=>{r.edges.push(new ct(o.file.path,u.file.path,s,"dataview_note"))})}),r};var Ta=class extends Error{},zf=class extends Ta{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}},Wf=class extends Ta{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}},Kf=class extends Ta{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}},Po=class extends Ta{},mi=class extends Ta{constructor(e){super(`Invalid unit ${e}`)}},Ct=class extends Ta{},qo=class extends Ta{constructor(){super("Zone is an abstract class")}};var te="numeric",Lo="short",Xr="long",An={year:te,month:te,day:te},Tl={year:te,month:Lo,day:te},Pc={year:te,month:Lo,day:te,weekday:Lo},Ol={year:te,month:Xr,day:te},Ml={year:te,month:Xr,day:te,weekday:Xr},Nl={hour:te,minute:te},Pl={hour:te,minute:te,second:te},ql={hour:te,minute:te,second:te,timeZoneName:Lo},Ll={hour:te,minute:te,second:te,timeZoneName:Xr},Rl={hour:te,minute:te,hourCycle:"h23"},Gl={hour:te,minute:te,second:te,hourCycle:"h23"},Hl={hour:te,minute:te,second:te,hourCycle:"h23",timeZoneName:Lo},Vl={hour:te,minute:te,second:te,hourCycle:"h23",timeZoneName:Xr},Ul={year:te,month:te,day:te,hour:te,minute:te},zl={year:te,month:te,day:te,hour:te,minute:te,second:te},Wl={year:te,month:Lo,day:te,hour:te,minute:te},Kl={year:te,month:Lo,day:te,hour:te,minute:te,second:te},qc={year:te,month:Lo,day:te,weekday:Lo,hour:te,minute:te},Zl={year:te,month:Xr,day:te,hour:te,minute:te,timeZoneName:Lo},Yl={year:te,month:Xr,day:te,hour:te,minute:te,second:te,timeZoneName:Lo},Jl={year:te,month:Xr,day:te,weekday:Xr,hour:te,minute:te,timeZoneName:Xr},Xl={year:te,month:Xr,day:te,weekday:Xr,hour:te,minute:te,second:te,timeZoneName:Xr};var Nr=class{get type(){throw new qo}get name(){throw new qo}get ianaName(){return this.name}get isUniversal(){throw new qo}offsetName(e,r){throw new qo}formatOffset(e,r){throw new qo}offset(e){throw new qo}equals(e){throw new qo}get isValid(){throw new qo}};var Lc=null,cn=class t extends Nr{static get instance(){return Lc===null&&(Lc=new t),Lc}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:r,locale:o}){return Yf(e,r,o)}formatOffset(e,r){return pn(this.offset(e),r)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}};var Gc=new Map;function yw(t){let e=Gc.get(t);return e===void 0&&(e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),Gc.set(t,e)),e}var Ew={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function $w(t,e){let r=t.format(e).replace(/\u200E/g,""),o=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(r),[,a,n,s,i,l,u,f]=o;return[s,a,n,i,l,u,f]}function Iw(t,e){let r=t.formatToParts(e),o=[];for(let a=0;a=0?h:1e3+h,(p-m)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}};var yg={};function Dw(t,e={}){let r=JSON.stringify([t,e]),o=yg[r];return o||(o=new Intl.ListFormat(t,e),yg[r]=o),o}var Hc=new Map;function Vc(t,e={}){let r=JSON.stringify([t,e]),o=Hc.get(r);return o===void 0&&(o=new Intl.DateTimeFormat(t,e),Hc.set(r,o)),o}var Uc=new Map;function Fw(t,e={}){let r=JSON.stringify([t,e]),o=Uc.get(r);return o===void 0&&(o=new Intl.NumberFormat(t,e),Uc.set(r,o)),o}var zc=new Map;function Bw(t,e={}){let{base:r,...o}=e,a=JSON.stringify([t,o]),n=zc.get(a);return n===void 0&&(n=new Intl.RelativeTimeFormat(t,e),zc.set(a,n)),n}var Ql=null;function Sw(){return Ql||(Ql=new Intl.DateTimeFormat().resolvedOptions().locale,Ql)}var Wc=new Map;function Eg(t){let e=Wc.get(t);return e===void 0&&(e=new Intl.DateTimeFormat(t).resolvedOptions(),Wc.set(t,e)),e}var Kc=new Map;function Cw(t){let e=Kc.get(t);if(!e){let r=new Intl.Locale(t);e="getWeekInfo"in r?r.getWeekInfo():r.weekInfo,"minimalDays"in e||(e={...$g,...e}),Kc.set(t,e)}return e}function Tw(t){let e=t.indexOf("-x-");e!==-1&&(t=t.substring(0,e));let r=t.indexOf("-u-");if(r===-1)return[t];{let o,a;try{o=Vc(t).resolvedOptions(),a=t}catch{let l=t.substring(0,r);o=Vc(l).resolvedOptions(),a=l}let{numberingSystem:n,calendar:s}=o;return[a,n,s]}}function Ow(t,e,r){return(r||e)&&(t.includes("-u-")||(t+="-u"),r&&(t+=`-ca-${r}`),e&&(t+=`-nu-${e}`)),t}function Mw(t){let e=[];for(let r=1;r<=12;r++){let o=Je.utc(2009,r,1);e.push(t(o))}return e}function Nw(t){let e=[];for(let r=1;r<=7;r++){let o=Je.utc(2016,11,13+r);e.push(t(o))}return e}function Jf(t,e,r,o){let a=t.listingMode();return a==="error"?null:a==="en"?r(e):o(e)}function Pw(t){return t.numberingSystem&&t.numberingSystem!=="latn"?!1:t.numberingSystem==="latn"||!t.locale||t.locale.startsWith("en")||Eg(t.locale).numberingSystem==="latn"}var Zc=class{constructor(e,r,o){this.padTo=o.padTo||0,this.floor=o.floor||!1;let{padTo:a,floor:n,...s}=o;if(!r||Object.keys(s).length>0){let i={useGrouping:!1,...o};o.padTo>0&&(i.minimumIntegerDigits=o.padTo),this.inf=Fw(e,i)}}format(e){if(this.inf){let r=this.floor?Math.floor(e):e;return this.inf.format(r)}else{let r=this.floor?Math.floor(e):hi(e,3);return yt(r,this.padTo)}}},Yc=class{constructor(e,r,o){this.opts=o,this.originalZone=void 0;let a;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){let s=-1*(e.offset/60),i=s>=0?`Etc/GMT+${s}`:`Etc/GMT${s}`;e.offset!==0&&gr.create(i).valid?(a=i,this.dt=e):(a="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,a=e.zone.name):(a="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);let n={...this.opts};n.timeZone=n.timeZone||a,this.dtf=Vc(r,n)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){let e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(r=>{if(r.type==="timeZoneName"){let o=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...r,value:o}}else return r}):e}resolvedOptions(){return this.dtf.resolvedOptions()}},Jc=class{constructor(e,r,o){this.opts={style:"long",...o},!r&&Xf()&&(this.rtf=Bw(e,o))}format(e,r){return this.rtf?this.rtf.format(e,r):Ig(r,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,r){return this.rtf?this.rtf.formatToParts(e,r):[]}},$g={firstDay:1,minimalDays:4,weekend:[6,7]},ot=class t{static fromOpts(e){return t.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,r,o,a,n=!1){let s=e||rt.defaultLocale,i=s||(n?"en-US":Sw()),l=r||rt.defaultNumberingSystem,u=o||rt.defaultOutputCalendar,f=eu(a)||rt.defaultWeekSettings;return new t(i,l,u,f,s)}static resetCache(){Ql=null,Hc.clear(),Uc.clear(),zc.clear(),Wc.clear(),Kc.clear()}static fromObject({locale:e,numberingSystem:r,outputCalendar:o,weekSettings:a}={}){return t.create(e,r,o,a)}constructor(e,r,o,a,n){let[s,i,l]=Tw(e);this.locale=s,this.numberingSystem=r||i||null,this.outputCalendar=o||l||null,this.weekSettings=a,this.intl=Ow(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=n,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=Pw(this)),this.fastNumbersCached}listingMode(){let e=this.isEnglish(),r=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&r?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:t.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,eu(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,r=!1){return Jf(this,e,Xc,()=>{let o=this.intl==="ja"||this.intl.startsWith("ja-");r&=!o;let a=r?{month:e,day:"numeric"}:{month:e},n=r?"format":"standalone";if(!this.monthsCache[n][e]){let s=o?i=>this.dtFormatter(i,a).format():i=>this.extract(i,a,"month");this.monthsCache[n][e]=Mw(s)}return this.monthsCache[n][e]})}weekdays(e,r=!1){return Jf(this,e,Qc,()=>{let o=r?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},a=r?"format":"standalone";return this.weekdaysCache[a][e]||(this.weekdaysCache[a][e]=Nw(n=>this.extract(n,o,"weekday"))),this.weekdaysCache[a][e]})}meridiems(){return Jf(this,void 0,()=>ep,()=>{if(!this.meridiemCache){let e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[Je.utc(2016,11,13,9),Je.utc(2016,11,13,19)].map(r=>this.extract(r,e,"dayperiod"))}return this.meridiemCache})}eras(e){return Jf(this,e,tp,()=>{let r={era:e};return this.eraCache[e]||(this.eraCache[e]=[Je.utc(-40,1,1),Je.utc(2017,1,1)].map(o=>this.extract(o,r,"era"))),this.eraCache[e]})}extract(e,r,o){let a=this.dtFormatter(e,r),n=a.formatToParts(),s=n.find(i=>i.type.toLowerCase()===o);return s?s.value:null}numberFormatter(e={}){return new Zc(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,r={}){return new Yc(e,this.intl,r)}relFormatter(e={}){return new Jc(this.intl,this.isEnglish(),e)}listFormatter(e={}){return Dw(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||Eg(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Qf()?Cw(this.locale):$g}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}};var op=null,Qt=class t extends Nr{static get utcInstance(){return op===null&&(op=new t(0)),op}static instance(e){return e===0?t.utcInstance:new t(e)}static parseSpecifier(e){if(e){let r=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(r)return new t(Qn(r[1],r[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${pn(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${pn(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,r){return pn(this.fixed,r)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}};var gi=class extends Nr{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}};function Ro(t,e){let r;if(he(t)||t===null)return e;if(t instanceof Nr)return t;if(Dg(t)){let o=t.toLowerCase();return o==="default"?e:o==="local"||o==="system"?cn.instance:o==="utc"||o==="gmt"?Qt.utcInstance:Qt.parseSpecifier(o)||gr.create(t)}else return Go(t)?Qt.instance(t):typeof t=="object"&&"offset"in t&&typeof t.offset=="function"?t:new gi(t)}var np={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},Fg={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},qw=np.hanidec.replace(/[\[|\]]/g,"").split("");function Bg(t){let e=parseInt(t,10);if(isNaN(e)){e="";for(let r=0;r=n&&o<=s&&(e+=o-n)}}return parseInt(e,10)}else return e}var ap=new Map;function Sg(){ap.clear()}function xo({numberingSystem:t},e=""){let r=t||"latn",o=ap.get(r);o===void 0&&(o=new Map,ap.set(r,o));let a=o.get(e);return a===void 0&&(a=new RegExp(`${np[r]}${e}`),o.set(e,a)),a}var Cg=()=>Date.now(),Tg="system",Og=null,Mg=null,Ng=null,Pg=60,qg,Lg=null,rt=class{static get now(){return Cg}static set now(e){Cg=e}static set defaultZone(e){Tg=e}static get defaultZone(){return Ro(Tg,cn.instance)}static get defaultLocale(){return Og}static set defaultLocale(e){Og=e}static get defaultNumberingSystem(){return Mg}static set defaultNumberingSystem(e){Mg=e}static get defaultOutputCalendar(){return Ng}static set defaultOutputCalendar(e){Ng=e}static get defaultWeekSettings(){return Lg}static set defaultWeekSettings(e){Lg=eu(e)}static get twoDigitCutoffYear(){return Pg}static set twoDigitCutoffYear(e){Pg=e%100}static get throwOnInvalid(){return qg}static set throwOnInvalid(e){qg=e}static resetCaches(){ot.resetCache(),gr.resetCache(),Je.resetCache(),Sg()}};var er=class{constructor(e,r){this.reason=e,this.explanation=r}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}};var Rg=[0,31,59,90,120,151,181,212,243,273,304,334],Gg=[0,31,60,91,121,152,182,213,244,274,305,335];function jo(t,e){return new er("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${t}, which is invalid`)}function ed(t,e,r){let o=new Date(Date.UTC(t,e-1,r));t<100&&t>=0&&o.setUTCFullYear(o.getUTCFullYear()-1900);let a=o.getUTCDay();return a===0?7:a}function Hg(t,e,r){return r+(ts(t)?Gg:Rg)[e-1]}function Vg(t,e){let r=ts(t)?Gg:Rg,o=r.findIndex(n=>nes(o,e,r)?(u=o+1,l=1):u=o,{weekYear:u,weekNumber:l,weekday:i,...ou(t)}}function sp(t,e=4,r=1){let{weekYear:o,weekNumber:a,weekday:n}=t,s=td(ed(o,1,e),r),i=mn(o),l=a*7+n-s-7+e,u;l<1?(u=o-1,l+=mn(u)):l>i?(u=o+1,l-=mn(o)):u=o;let{month:f,day:c}=Vg(u,l);return{year:u,month:f,day:c,...ou(t)}}function rd(t){let{year:e,month:r,day:o}=t,a=Hg(e,r,o);return{year:e,ordinal:a,...ou(t)}}function ip(t){let{year:e,ordinal:r}=t,{month:o,day:a}=Vg(e,r);return{year:e,month:o,day:a,...ou(t)}}function lp(t,e){if(!he(t.localWeekday)||!he(t.localWeekNumber)||!he(t.localWeekYear)){if(!he(t.weekday)||!he(t.weekNumber)||!he(t.weekYear))throw new Po("Cannot mix locale-based week fields with ISO-based week fields");return he(t.localWeekday)||(t.weekday=t.localWeekday),he(t.localWeekNumber)||(t.weekNumber=t.localWeekNumber),he(t.localWeekYear)||(t.weekYear=t.localWeekYear),delete t.localWeekday,delete t.localWeekNumber,delete t.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function Ug(t,e=4,r=1){let o=ru(t.weekYear),a=Qr(t.weekNumber,1,es(t.weekYear,e,r)),n=Qr(t.weekday,1,7);return o?a?n?!1:jo("weekday",t.weekday):jo("week",t.weekNumber):jo("weekYear",t.weekYear)}function zg(t){let e=ru(t.year),r=Qr(t.ordinal,1,mn(t.year));return e?r?!1:jo("ordinal",t.ordinal):jo("year",t.year)}function up(t){let e=ru(t.year),r=Qr(t.month,1,12),o=Qr(t.day,1,xi(t.year,t.month));return e?r?o?!1:jo("day",t.day):jo("month",t.month):jo("year",t.year)}function fp(t){let{hour:e,minute:r,second:o,millisecond:a}=t,n=Qr(e,0,23)||e===24&&r===0&&o===0&&a===0,s=Qr(r,0,59),i=Qr(o,0,59),l=Qr(a,0,999);return n?s?i?l?!1:jo("millisecond",a):jo("second",o):jo("minute",r):jo("hour",e)}function he(t){return typeof t>"u"}function Go(t){return typeof t=="number"}function ru(t){return typeof t=="number"&&t%1===0}function Dg(t){return typeof t=="string"}function Kg(t){return Object.prototype.toString.call(t)==="[object Date]"}function Xf(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function Qf(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function Zg(t){return Array.isArray(t)?t:[t]}function dp(t,e,r){if(t.length!==0)return t.reduce((o,a)=>{let n=[e(a),a];return o&&r(o[0],n[0])===o[0]?o:n},null)[1]}function Yg(t,e){return e.reduce((r,o)=>(r[o]=t[o],r),{})}function _n(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function eu(t){if(t==null)return null;if(typeof t!="object")throw new Ct("Week settings must be an object");if(!Qr(t.firstDay,1,7)||!Qr(t.minimalDays,1,7)||!Array.isArray(t.weekend)||t.weekend.some(e=>!Qr(e,1,7)))throw new Ct("Invalid week settings");return{firstDay:t.firstDay,minimalDays:t.minimalDays,weekend:Array.from(t.weekend)}}function Qr(t,e,r){return ru(t)&&t>=e&&t<=r}function Lw(t,e){return t-e*Math.floor(t/e)}function yt(t,e=2){let r=t<0,o;return r?o="-"+(""+-t).padStart(e,"0"):o=(""+t).padStart(e,"0"),o}function Oa(t){if(!(he(t)||t===null||t===""))return parseInt(t,10)}function hn(t){if(!(he(t)||t===null||t===""))return parseFloat(t)}function au(t){if(!(he(t)||t===null||t==="")){let e=parseFloat("0."+t)*1e3;return Math.floor(e)}}function hi(t,e,r="round"){let o=10**e;switch(r){case"expand":return t>0?Math.ceil(t*o)/o:Math.floor(t*o)/o;case"trunc":return Math.trunc(t*o)/o;case"round":return Math.round(t*o)/o;case"floor":return Math.floor(t*o)/o;case"ceil":return Math.ceil(t*o)/o;default:throw new RangeError(`Value rounding ${r} is out of range`)}}function ts(t){return t%4===0&&(t%100!==0||t%400===0)}function mn(t){return ts(t)?366:365}function xi(t,e){let r=Lw(e-1,12)+1,o=t+(e-r)/12;return r===2?ts(o)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][r-1]}function _i(t){let e=Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond);return t.year<100&&t.year>=0&&(e=new Date(e),e.setUTCFullYear(t.year,t.month-1,t.day)),+e}function Wg(t,e,r){return-td(ed(t,1,e),r)+e-1}function es(t,e=4,r=1){let o=Wg(t,e,r),a=Wg(t+1,e,r);return(mn(t)-o+a)/7}function nu(t){return t>99?t:t>rt.twoDigitCutoffYear?1900+t:2e3+t}function Yf(t,e,r,o=null){let a=new Date(t),n={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};o&&(n.timeZone=o);let s={timeZoneName:e,...n},i=new Intl.DateTimeFormat(r,s).formatToParts(a).find(l=>l.type.toLowerCase()==="timezonename");return i?i.value:null}function Qn(t,e){let r=parseInt(t,10);Number.isNaN(r)&&(r=0);let o=parseInt(e,10)||0,a=r<0||Object.is(r,-0)?-o:o;return r*60+a}function Ap(t){let e=Number(t);if(typeof t=="boolean"||t===""||!Number.isFinite(e))throw new Ct(`Invalid unit value ${t}`);return e}function ji(t,e){let r={};for(let o in t)if(_n(t,o)){let a=t[o];if(a==null)continue;r[e(o)]=Ap(a)}return r}function pn(t,e){let r=Math.trunc(Math.abs(t/60)),o=Math.trunc(Math.abs(t%60)),a=t>=0?"+":"-";switch(e){case"short":return`${a}${yt(r,2)}:${yt(o,2)}`;case"narrow":return`${a}${r}${o>0?`:${o}`:""}`;case"techie":return`${a}${yt(r,2)}${yt(o,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function ou(t){return Yg(t,["hour","minute","second","millisecond"])}var Rw=["January","February","March","April","May","June","July","August","September","October","November","December"],cp=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Gw=["J","F","M","A","M","J","J","A","S","O","N","D"];function Xc(t){switch(t){case"narrow":return[...Gw];case"short":return[...cp];case"long":return[...Rw];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var pp=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],mp=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Hw=["M","T","W","T","F","S","S"];function Qc(t){switch(t){case"narrow":return[...Hw];case"short":return[...mp];case"long":return[...pp];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var ep=["AM","PM"],Vw=["Before Christ","Anno Domini"],Uw=["BC","AD"],zw=["B","A"];function tp(t){switch(t){case"narrow":return[...zw];case"short":return[...Uw];case"long":return[...Vw];default:return null}}function Jg(t){return ep[t.hour<12?0:1]}function Xg(t,e){return Qc(e)[t.weekday-1]}function Qg(t,e){return Xc(e)[t.month-1]}function ex(t,e){return tp(e)[t.year<0?0:1]}function Ig(t,e,r="always",o=!1){let a={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},n=["hours","minutes","seconds"].indexOf(t)===-1;if(r==="auto"&&n){let c=t==="days";switch(e){case 1:return c?"tomorrow":`next ${a[t][0]}`;case-1:return c?"yesterday":`last ${a[t][0]}`;case 0:return c?"today":`this ${a[t][0]}`;default:}}let s=Object.is(e,-0)||e<0,i=Math.abs(e),l=i===1,u=a[t],f=o?l?u[1]:u[2]||u[1]:l?a[t][0]:t;return s?`${i} ${f} ago`:`in ${i} ${f}`}function tx(t,e){let r="";for(let o of t)o.literal?r+=o.val:r+=e(o.val);return r}var Ww={D:An,DD:Tl,DDD:Ol,DDDD:Ml,t:Nl,tt:Pl,ttt:ql,tttt:Ll,T:Rl,TT:Gl,TTT:Hl,TTTT:Vl,f:Ul,ff:Wl,fff:Zl,ffff:Jl,F:zl,FF:Kl,FFF:Yl,FFFF:Xl},tr=class t{static create(e,r={}){return new t(e,r)}static parseFormat(e){let r=null,o="",a=!1,n=[];for(let s=0;s0||a)&&n.push({literal:a||/^\s+$/.test(o),val:o===""?"'":o}),r=null,o="",a=!a):a||i===r?o+=i:(o.length>0&&n.push({literal:/^\s+$/.test(o),val:o}),o=i,r=i)}return o.length>0&&n.push({literal:a||/^\s+$/.test(o),val:o}),n}static macroTokenToFormatOpts(e){return Ww[e]}constructor(e,r){this.opts=r,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,r){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...r}).format()}dtFormatter(e,r={}){return this.loc.dtFormatter(e,{...this.opts,...r})}formatDateTime(e,r){return this.dtFormatter(e,r).format()}formatDateTimeParts(e,r){return this.dtFormatter(e,r).formatToParts()}formatInterval(e,r){return this.dtFormatter(e.start,r).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,r){return this.dtFormatter(e,r).resolvedOptions()}num(e,r=0,o=void 0){if(this.opts.forceSimple)return yt(e,r);let a={...this.opts};return r>0&&(a.padTo=r),o&&(a.signDisplay=o),this.loc.numberFormatter(a).format(e)}formatDateTimeFromString(e,r){let o=this.loc.listingMode()==="en",a=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",n=(m,h)=>this.loc.extract(e,m,h),s=m=>e.isOffsetFixed&&e.offset===0&&m.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,m.format):"",i=()=>o?Jg(e):n({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(m,h)=>o?Qg(e,m):n(h?{month:m}:{month:m,day:"numeric"},"month"),u=(m,h)=>o?Xg(e,m):n(h?{weekday:m}:{weekday:m,month:"long",day:"numeric"},"weekday"),f=m=>{let h=t.macroTokenToFormatOpts(m);return h?this.formatWithSystemDefault(e,h):m},c=m=>o?ex(e,m):n({era:m},"era"),p=m=>{switch(m){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return s({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return s({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return s({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return i();case"d":return a?n({day:"numeric"},"day"):this.num(e.day);case"dd":return a?n({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return a?n({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return a?n({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return a?n({month:"numeric"},"month"):this.num(e.month);case"MM":return a?n({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return a?n({year:"numeric"},"year"):this.num(e.year);case"yy":return a?n({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return a?n({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return a?n({year:"numeric"},"year"):this.num(e.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return f(m)}};return tx(t.parseFormat(r),p)}formatDurationFromString(e,r){let o=this.opts.signMode==="negativeLargestOnly"?-1:1,a=f=>{switch(f[0]){case"S":return"milliseconds";case"s":return"seconds";case"m":return"minutes";case"h":return"hours";case"d":return"days";case"w":return"weeks";case"M":return"months";case"y":return"years";default:return null}},n=(f,c)=>p=>{let m=a(p);if(m){let h=c.isNegativeDuration&&m!==c.largestUnit?o:1,y;return this.opts.signMode==="negativeLargestOnly"&&m!==c.largestUnit?y="never":this.opts.signMode==="all"?y="always":y="auto",this.num(f.get(m)*h,p.length,y)}else return p},s=t.parseFormat(r),i=s.reduce((f,{literal:c,val:p})=>c?f:f.concat(p),[]),l=e.shiftTo(...i.map(a).filter(f=>f)),u={isNegativeDuration:l<0,largestUnit:Object.keys(l.values)[0]};return tx(s,n(l,u))}};var ox=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function ki(...t){let e=t.reduce((r,o)=>r+o.source,"");return RegExp(`^${e}$`)}function bi(...t){return e=>t.reduce(([r,o,a],n)=>{let[s,i,l]=n(e,a);return[{...r,...s},i||o,l]},[{},null,1]).slice(0,2)}function wi(t,...e){if(t==null)return[null,null];for(let[r,o]of e){let a=r.exec(t);if(a)return o(a)}return[null,null]}function ax(...t){return(e,r)=>{let o={},a;for(a=0;am!==void 0&&(h||m&&f)?-m:m;return[{years:p(hn(r)),months:p(hn(o)),weeks:p(hn(a)),days:p(hn(n)),hours:p(hn(s)),minutes:p(hn(i)),seconds:p(hn(l),l==="-0"),milliseconds:p(au(u),c)}]}var sy={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function gp(t,e,r,o,a,n,s){let i={year:e.length===2?nu(Oa(e)):Oa(e),month:cp.indexOf(r)+1,day:Oa(o),hour:Oa(a),minute:Oa(n)};return s&&(i.second=Oa(s)),t&&(i.weekday=t.length>3?pp.indexOf(t)+1:mp.indexOf(t)+1),i}var iy=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function ly(t){let[,e,r,o,a,n,s,i,l,u,f,c]=t,p=gp(e,a,o,r,n,s,i),m;return l?m=sy[l]:u?m=0:m=Qn(f,c),[p,new Qt(m)]}function uy(t){return t.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}var fy=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,dy=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Ay=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function rx(t){let[,e,r,o,a,n,s,i]=t;return[gp(e,a,o,r,n,s,i),Qt.utcInstance]}function cy(t){let[,e,r,o,a,n,s,i]=t;return[gp(e,i,r,o,a,n,s),Qt.utcInstance]}var py=ki(Zw,hp),my=ki(Yw,hp),_y=ki(Jw,hp),hy=ki(sx),lx=bi(ry,yi,su,iu),gy=bi(Xw,yi,su,iu),xy=bi(Qw,yi,su,iu),jy=bi(yi,su,iu);function ux(t){return wi(t,[py,lx],[my,gy],[_y,xy],[hy,jy])}function fx(t){return wi(uy(t),[iy,ly])}function dx(t){return wi(t,[fy,rx],[dy,rx],[Ay,cy])}function Ax(t){return wi(t,[ay,ny])}var vy=bi(yi);function cx(t){return wi(t,[oy,vy])}var ky=ki(ey,ty),by=ki(ix),wy=bi(yi,su,iu);function px(t){return wi(t,[ky,lx],[by,wy])}var mx="Invalid Duration",gx={weeks:{days:7,hours:168,minutes:10080,seconds:10080*60,milliseconds:10080*60*1e3},days:{hours:24,minutes:1440,seconds:1440*60,milliseconds:1440*60*1e3},hours:{minutes:60,seconds:3600,milliseconds:3600*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},yy={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:2184*60,seconds:2184*60*60,milliseconds:2184*60*60*1e3},months:{weeks:4,days:30,hours:720,minutes:720*60,seconds:720*60*60,milliseconds:720*60*60*1e3},...gx},vo=146097/400,Ei=146097/4800,Ey={years:{quarters:4,months:12,weeks:vo/7,days:vo,hours:vo*24,minutes:vo*24*60,seconds:vo*24*60*60,milliseconds:vo*24*60*60*1e3},quarters:{months:3,weeks:vo/28,days:vo/4,hours:vo*24/4,minutes:vo*24*60/4,seconds:vo*24*60*60/4,milliseconds:vo*24*60*60*1e3/4},months:{weeks:Ei/7,days:Ei,hours:Ei*24,minutes:Ei*24*60,seconds:Ei*24*60*60,milliseconds:Ei*24*60*60*1e3},...gx},rs=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],$y=rs.slice(0).reverse();function Ma(t,e,r=!1){let o={values:r?e.values:{...t.values,...e.values||{}},loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy,matrix:e.matrix||t.matrix};return new Et(o)}function xx(t,e){let r=e.milliseconds??0;for(let o of $y.slice(1))e[o]&&(r+=e[o]*t[o].milliseconds);return r}function _x(t,e){let r=xx(t,e)<0?-1:1;rs.reduceRight((o,a)=>{if(he(e[a]))return o;if(o){let n=e[o]*r,s=t[a][o],i=Math.floor(n/s);e[a]+=i*r,e[o]-=i*s*r}return a},null),rs.reduce((o,a)=>{if(he(e[a]))return o;if(o){let n=e[o]%1;e[o]-=n,e[a]+=n*t[o][a]}return a},null)}function hx(t){let e={};for(let[r,o]of Object.entries(t))o!==0&&(e[r]=o);return e}var Et=class t{constructor(e){let r=e.conversionAccuracy==="longterm"||!1,o=r?Ey:yy;e.matrix&&(o=e.matrix),this.values=e.values,this.loc=e.loc||ot.create(),this.conversionAccuracy=r?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=o,this.isLuxonDuration=!0}static fromMillis(e,r){return t.fromObject({milliseconds:e},r)}static fromObject(e,r={}){if(e==null||typeof e!="object")throw new Ct(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new t({values:ji(e,t.normalizeUnit),loc:ot.fromObject(r),conversionAccuracy:r.conversionAccuracy,matrix:r.matrix})}static fromDurationLike(e){if(Go(e))return t.fromMillis(e);if(t.isDuration(e))return e;if(typeof e=="object")return t.fromObject(e);throw new Ct(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,r){let[o]=Ax(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,r){let[o]=cx(e);return o?t.fromObject(o,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,r=null){if(!e)throw new Ct("need to specify a reason the Duration is invalid");let o=e instanceof er?e:new er(e,r);if(rt.throwOnInvalid)throw new Kf(o);return new t({invalid:o})}static normalizeUnit(e){let r={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!r)throw new mi(e);return r}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,r={}){let o={...r,floor:r.round!==!1&&r.floor!==!1};return this.isValid?tr.create(this.loc,o).formatDurationFromString(this,e):mx}toHuman(e={}){if(!this.isValid)return mx;let r=e.showZeros!==!1,o=rs.map(a=>{let n=this.values[a];return he(n)||n===0&&!r?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:a.slice(0,-1)}).format(n)}).filter(a=>a);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(o)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=hi(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;let r=this.toMillis();return r<0||r>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},Je.fromMillis(r,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?xx(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e),o={};for(let a of rs)(_n(r.values,a)||_n(this.values,a))&&(o[a]=r.get(a)+this.get(a));return Ma(this,{values:o},!0)}minus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e);return this.plus(r.negate())}mapUnits(e){if(!this.isValid)return this;let r={};for(let o of Object.keys(this.values))r[o]=Ap(e(this.values[o],o));return Ma(this,{values:r},!0)}get(e){return this[t.normalizeUnit(e)]}set(e){if(!this.isValid)return this;let r={...this.values,...ji(e,t.normalizeUnit)};return Ma(this,{values:r})}reconfigure({locale:e,numberingSystem:r,conversionAccuracy:o,matrix:a}={}){let s={loc:this.loc.clone({locale:e,numberingSystem:r}),matrix:a,conversionAccuracy:o};return Ma(this,s)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;let e=this.toObject();return _x(this.matrix,e),Ma(this,{values:e},!0)}rescale(){if(!this.isValid)return this;let e=hx(this.normalize().shiftToAll().toObject());return Ma(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(s=>t.normalizeUnit(s));let r={},o={},a=this.toObject(),n;for(let s of rs)if(e.indexOf(s)>=0){n=s;let i=0;for(let u in o)i+=this.matrix[u][s]*o[u],o[u]=0;Go(a[s])&&(i+=a[s]);let l=Math.trunc(i);r[s]=l,o[s]=(i*1e3-l*1e3)/1e3}else Go(a[s])&&(o[s]=a[s]);for(let s in o)o[s]!==0&&(r[n]+=s===n?o[s]:o[s]/this.matrix[n][s]);return _x(this.matrix,r),Ma(this,{values:r},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;let e={};for(let r of Object.keys(this.values))e[r]=this.values[r]===0?0:-this.values[r];return Ma(this,{values:e},!0)}removeZeros(){if(!this.isValid)return this;let e=hx(this.values);return Ma(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function r(o,a){return o===void 0||o===0?a===void 0||a===0:o===a}for(let o of rs)if(!r(this.values[o],e.values[o]))return!1;return!0}};var $i="Invalid Interval";function Iy(t,e){return!t||!t.isValid?Na.invalid("missing or invalid start"):!e||!e.isValid?Na.invalid("missing or invalid end"):ee:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:r}={}){return this.isValid?t.fromDateTimes(e||this.s,r||this.e):this}splitAt(...e){if(!this.isValid)return[];let r=e.map(Ii).filter(s=>this.contains(s)).sort((s,i)=>s.toMillis()-i.toMillis()),o=[],{s:a}=this,n=0;for(;a+this.e?this.e:s;o.push(t.fromDateTimes(a,i)),a=i,n+=1}return o}splitBy(e){let r=Et.fromDurationLike(e);if(!this.isValid||!r.isValid||r.as("milliseconds")===0)return[];let{s:o}=this,a=1,n,s=[];for(;ol*a));n=+i>+this.e?this.e:i,s.push(t.fromDateTimes(o,n)),o=n,a+=1}return s}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;let r=this.s>e.s?this.s:e.s,o=this.e=o?null:t.fromDateTimes(r,o)}union(e){if(!this.isValid)return this;let r=this.se.e?this.e:e.e;return t.fromDateTimes(r,o)}static merge(e){let[r,o]=e.sort((a,n)=>a.s-n.s).reduce(([a,n],s)=>n?n.overlaps(s)||n.abutsStart(s)?[a,n.union(s)]:[a.concat([n]),s]:[a,s],[[],null]);return o&&r.push(o),r}static xor(e){let r=null,o=0,a=[],n=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),s=Array.prototype.concat(...n),i=s.sort((l,u)=>l.time-u.time);for(let l of i)o+=l.type==="s"?1:-1,o===1?r=l.time:(r&&+r!=+l.time&&a.push(t.fromDateTimes(r,l.time)),r=null);return t.merge(a)}difference(...e){return t.xor([this].concat(e)).map(r=>this.intersection(r)).filter(r=>r&&!r.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:$i}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=An,r={}){return this.isValid?tr.create(this.s.loc.clone(r),e).formatInterval(this):$i}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:$i}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:$i}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:$i}toFormat(e,{separator:r=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${r}${this.e.toFormat(e)}`:$i}toDuration(e,r){return this.isValid?this.e.diff(this.s,e,r):Et.invalid(this.invalidReason)}mapEndpoints(e){return t.fromDateTimes(e(this.s),e(this.e))}};var Pa=class{static hasDST(e=rt.defaultZone){let r=Je.now().setZone(e).set({month:12});return!e.isUniversal&&r.offset!==r.set({month:6}).offset}static isValidIANAZone(e){return gr.isValidZone(e)}static normalizeZone(e){return Ro(e,rt.defaultZone)}static getStartOfWeek({locale:e=null,locObj:r=null}={}){return(r||ot.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:r=null}={}){return(r||ot.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:r=null}={}){return(r||ot.create(e)).getWeekendDays().slice()}static months(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||ot.create(r,o,n)).months(e)}static monthsFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null,outputCalendar:n="gregory"}={}){return(a||ot.create(r,o,n)).months(e,!0)}static weekdays(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||ot.create(r,o,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:r=null,numberingSystem:o=null,locObj:a=null}={}){return(a||ot.create(r,o,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return ot.create(e).meridiems()}static eras(e="short",{locale:r=null}={}){return ot.create(r,null,"gregory").eras(e)}static features(){return{relative:Xf(),localeWeek:Qf()}}};function jx(t,e){let r=a=>a.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),o=r(e)-r(t);return Math.floor(Et.fromMillis(o).as("days"))}function Dy(t,e,r){let o=[["years",(l,u)=>u.year-l.year],["quarters",(l,u)=>u.quarter-l.quarter+(u.year-l.year)*4],["months",(l,u)=>u.month-l.month+(u.year-l.year)*12],["weeks",(l,u)=>{let f=jx(l,u);return(f-f%7)/7}],["days",jx]],a={},n=t,s,i;for(let[l,u]of o)r.indexOf(l)>=0&&(s=l,a[l]=u(t,e),i=n.plus(a),i>e?(a[l]--,t=n.plus(a),t>e&&(i=t,a[l]--,t=n.plus(a))):t=i);return[t,a,i,s]}function vx(t,e,r,o){let[a,n,s,i]=Dy(t,e,r),l=e-a,u=r.filter(c=>["hours","minutes","seconds","milliseconds"].indexOf(c)>=0);u.length===0&&(s0?Et.fromMillis(l,o).shiftTo(...u).plus(f):f}var Fy="missing Intl.DateTimeFormat.formatToParts support";function st(t,e=r=>r){return{regex:t,deser:([r])=>e(Bg(r))}}var By="\xA0",wx=`[ ${By}]`,yx=new RegExp(wx,"g");function Sy(t){return t.replace(/\./g,"\\.?").replace(yx,wx)}function kx(t){return t.replace(/\./g,"").replace(yx," ").toLowerCase()}function Ho(t,e){return t===null?null:{regex:RegExp(t.map(Sy).join("|")),deser:([r])=>t.findIndex(o=>kx(r)===kx(o))+e}}function bx(t,e){return{regex:t,deser:([,r,o])=>Qn(r,o),groups:e}}function od(t){return{regex:t,deser:([e])=>e}}function Cy(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Ty(t,e){let r=xo(e),o=xo(e,"{2}"),a=xo(e,"{3}"),n=xo(e,"{4}"),s=xo(e,"{6}"),i=xo(e,"{1,2}"),l=xo(e,"{1,3}"),u=xo(e,"{1,6}"),f=xo(e,"{1,9}"),c=xo(e,"{2,4}"),p=xo(e,"{4,6}"),m=E=>({regex:RegExp(Cy(E.val)),deser:([D])=>D,literal:!0}),y=(E=>{if(t.literal)return m(E);switch(E.val){case"G":return Ho(e.eras("short"),0);case"GG":return Ho(e.eras("long"),0);case"y":return st(u);case"yy":return st(c,nu);case"yyyy":return st(n);case"yyyyy":return st(p);case"yyyyyy":return st(s);case"M":return st(i);case"MM":return st(o);case"MMM":return Ho(e.months("short",!0),1);case"MMMM":return Ho(e.months("long",!0),1);case"L":return st(i);case"LL":return st(o);case"LLL":return Ho(e.months("short",!1),1);case"LLLL":return Ho(e.months("long",!1),1);case"d":return st(i);case"dd":return st(o);case"o":return st(l);case"ooo":return st(a);case"HH":return st(o);case"H":return st(i);case"hh":return st(o);case"h":return st(i);case"mm":return st(o);case"m":return st(i);case"q":return st(i);case"qq":return st(o);case"s":return st(i);case"ss":return st(o);case"S":return st(l);case"SSS":return st(a);case"u":return od(f);case"uu":return od(i);case"uuu":return st(r);case"a":return Ho(e.meridiems(),0);case"kkkk":return st(n);case"kk":return st(c,nu);case"W":return st(i);case"WW":return st(o);case"E":case"c":return st(r);case"EEE":return Ho(e.weekdays("short",!1),1);case"EEEE":return Ho(e.weekdays("long",!1),1);case"ccc":return Ho(e.weekdays("short",!0),1);case"cccc":return Ho(e.weekdays("long",!0),1);case"Z":case"ZZ":return bx(new RegExp(`([+-]${i.source})(?::(${o.source}))?`),2);case"ZZZ":return bx(new RegExp(`([+-]${i.source})(${o.source})?`),2);case"z":return od(/[a-z_+-/]{1,256}?/i);case" ":return od(/[^\S\n\r]/);default:return m(E)}})(t)||{invalidReason:Fy};return y.token=t,y}var Oy={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function My(t,e,r){let{type:o,value:a}=t;if(o==="literal"){let l=/^\s+$/.test(a);return{literal:!l,val:l?" ":a}}let n=e[o],s=o;o==="hour"&&(e.hour12!=null?s=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?s="hour12":s="hour24":s=r.hour12?"hour12":"hour24");let i=Oy[s];if(typeof i=="object"&&(i=i[n]),i)return{literal:!1,val:i}}function Ny(t){return[`^${t.map(r=>r.regex).reduce((r,o)=>`${r}(${o.source})`,"")}$`,t]}function Py(t,e,r){let o=t.match(e);if(o){let a={},n=1;for(let s in r)if(_n(r,s)){let i=r[s],l=i.groups?i.groups+1:1;!i.literal&&i.token&&(a[i.token.val[0]]=i.deser(o.slice(n,n+l))),n+=l}return[o,a]}else return[o,{}]}function qy(t){let e=n=>{switch(n){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}},r=null,o;return he(t.z)||(r=gr.create(t.z)),he(t.Z)||(r||(r=new Qt(t.Z)),o=t.Z),he(t.q)||(t.M=(t.q-1)*3+1),he(t.h)||(t.h<12&&t.a===1?t.h+=12:t.h===12&&t.a===0&&(t.h=0)),t.G===0&&t.y&&(t.y=-t.y),he(t.u)||(t.S=au(t.u)),[Object.keys(t).reduce((n,s)=>{let i=e(s);return i&&(n[i]=t[s]),n},{}),r,o]}var xp=null;function Ly(){return xp||(xp=Je.fromMillis(1555555555555)),xp}function Ry(t,e){if(t.literal)return t;let r=tr.macroTokenToFormatOpts(t.val),o=kp(r,e);return o==null||o.includes(void 0)?t:o}function jp(t,e){return Array.prototype.concat(...t.map(r=>Ry(r,e)))}var lu=class{constructor(e,r){if(this.locale=e,this.format=r,this.tokens=jp(tr.parseFormat(r),e),this.units=this.tokens.map(o=>Ty(o,e)),this.disqualifyingUnit=this.units.find(o=>o.invalidReason),!this.disqualifyingUnit){let[o,a]=Ny(this.units);this.regex=RegExp(o,"i"),this.handlers=a}}explainFromTokens(e){if(this.isValid){let[r,o]=Py(e,this.regex,this.handlers),[a,n,s]=o?qy(o):[null,null,void 0];if(_n(o,"a")&&_n(o,"H"))throw new Po("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:r,matches:o,result:a,zone:n,specificOffset:s}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}};function vp(t,e,r){return new lu(t,r).explainFromTokens(e)}function Ex(t,e,r){let{result:o,zone:a,specificOffset:n,invalidReason:s}=vp(t,e,r);return[o,a,n,s]}function kp(t,e){if(!t)return null;let o=tr.create(e,t).dtFormatter(Ly()),a=o.formatToParts(),n=o.resolvedOptions();return a.map(s=>My(s,t,n))}var bp="Invalid DateTime",$x=864e13;function uu(t){return new er("unsupported zone",`the zone "${t.name}" is not supported`)}function wp(t){return t.weekData===null&&(t.weekData=tu(t.c)),t.weekData}function yp(t){return t.localWeekData===null&&(t.localWeekData=tu(t.c,t.loc.getMinDaysInFirstWeek(),t.loc.getStartOfWeek())),t.localWeekData}function os(t,e){let r={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new Je({...r,...e,old:r})}function Tx(t,e,r){let o=t-e*60*1e3,a=r.offset(o);if(e===a)return[o,e];o-=(a-e)*60*1e3;let n=r.offset(o);return a===n?[o,a]:[t-Math.min(a,n)*60*1e3,Math.max(a,n)]}function ad(t,e){t+=e*60*1e3;let r=new Date(t);return{year:r.getUTCFullYear(),month:r.getUTCMonth()+1,day:r.getUTCDate(),hour:r.getUTCHours(),minute:r.getUTCMinutes(),second:r.getUTCSeconds(),millisecond:r.getUTCMilliseconds()}}function sd(t,e,r){return Tx(_i(t),e,r)}function Ix(t,e){let r=t.o,o=t.c.year+Math.trunc(e.years),a=t.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,n={...t.c,year:o,month:a,day:Math.min(t.c.day,xi(o,a))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},s=Et.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),i=_i(n),[l,u]=Tx(i,r,t.zone);return s!==0&&(l+=s,u=t.zone.offset(l)),{ts:l,o:u}}function Di(t,e,r,o,a,n){let{setZone:s,zone:i}=r;if(t&&Object.keys(t).length!==0||e){let l=e||i,u=Je.fromObject(t,{...r,zone:l,specificOffset:n});return s?u:u.setZone(i)}else return Je.invalid(new er("unparsable",`the input "${a}" can't be parsed as ${o}`))}function nd(t,e,r=!0){return t.isValid?tr.create(ot.create("en-US"),{allowZ:r,forceSimple:!0}).formatDateTimeFromString(t,e):null}function Ep(t,e,r){let o=t.c.year>9999||t.c.year<0,a="";if(o&&t.c.year>=0&&(a+="+"),a+=yt(t.c.year,o?6:4),r==="year")return a;if(e){if(a+="-",a+=yt(t.c.month),r==="month")return a;a+="-"}else if(a+=yt(t.c.month),r==="month")return a;return a+=yt(t.c.day),a}function Dx(t,e,r,o,a,n,s){let i=!r||t.c.millisecond!==0||t.c.second!==0,l="";switch(s){case"day":case"month":case"year":break;default:if(l+=yt(t.c.hour),s==="hour")break;if(e){if(l+=":",l+=yt(t.c.minute),s==="minute")break;i&&(l+=":",l+=yt(t.c.second))}else{if(l+=yt(t.c.minute),s==="minute")break;i&&(l+=yt(t.c.second))}if(s==="second")break;i&&(!o||t.c.millisecond!==0)&&(l+=".",l+=yt(t.c.millisecond,3))}return a&&(t.isOffsetFixed&&t.offset===0&&!n?l+="Z":t.o<0?(l+="-",l+=yt(Math.trunc(-t.o/60)),l+=":",l+=yt(Math.trunc(-t.o%60))):(l+="+",l+=yt(Math.trunc(t.o/60)),l+=":",l+=yt(Math.trunc(t.o%60)))),n&&(l+="["+t.zone.ianaName+"]"),l}var Ox={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Gy={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Hy={ordinal:1,hour:0,minute:0,second:0,millisecond:0},id=["year","month","day","hour","minute","second","millisecond"],Vy=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Uy=["year","ordinal","hour","minute","second","millisecond"];function ld(t){let e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new mi(t);return e}function Fx(t){switch(t.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return ld(t)}}function zy(t){if(fu===void 0&&(fu=rt.now()),t.type!=="iana")return t.offset(fu);let e=t.name,r=$p.get(e);return r===void 0&&(r=t.offset(fu),$p.set(e,r)),r}function Bx(t,e){let r=Ro(e.zone,rt.defaultZone);if(!r.isValid)return Je.invalid(uu(r));let o=ot.fromObject(e),a,n;if(he(t.year))a=rt.now();else{for(let l of id)he(t[l])&&(t[l]=Ox[l]);let s=up(t)||fp(t);if(s)return Je.invalid(s);let i=zy(r);[a,n]=sd(t,i,r)}return new Je({ts:a,zone:r,loc:o,o:n})}function Sx(t,e,r){let o=he(r.round)?!0:r.round,a=he(r.rounding)?"trunc":r.rounding,n=(i,l)=>(i=hi(i,o||r.calendary?0:2,r.calendary?"round":a),e.loc.clone(r).relFormatter(r).format(i,l)),s=i=>r.calendary?e.hasSame(t,i)?0:e.startOf(i).diff(t.startOf(i),i).get(i):e.diff(t,i).get(i);if(r.unit)return n(s(r.unit),r.unit);for(let i of r.units){let l=s(i);if(Math.abs(l)>=1)return n(l,i)}return n(t>e?-0:0,r.units[r.units.length-1])}function Cx(t){let e={},r;return t.length>0&&typeof t[t.length-1]=="object"?(e=t[t.length-1],r=Array.from(t).slice(0,t.length-1)):r=Array.from(t),[e,r]}var fu,$p=new Map,Je=class t{constructor(e){let r=e.zone||rt.defaultZone,o=e.invalid||(Number.isNaN(e.ts)?new er("invalid input"):null)||(r.isValid?null:uu(r));this.ts=he(e.ts)?rt.now():e.ts;let a=null,n=null;if(!o)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(r))[a,n]=[e.old.c,e.old.o];else{let i=Go(e.o)&&!e.old?e.o:r.offset(this.ts);a=ad(this.ts,i),o=Number.isNaN(a.year)?new er("invalid input"):null,a=o?null:a,n=o?null:i}this._zone=r,this.loc=e.loc||ot.create(),this.invalid=o,this.weekData=null,this.localWeekData=null,this.c=a,this.o=n,this.isLuxonDateTime=!0}static now(){return new t({})}static local(){let[e,r]=Cx(arguments),[o,a,n,s,i,l,u]=r;return Bx({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static utc(){let[e,r]=Cx(arguments),[o,a,n,s,i,l,u]=r;return e.zone=Qt.utcInstance,Bx({year:o,month:a,day:n,hour:s,minute:i,second:l,millisecond:u},e)}static fromJSDate(e,r={}){let o=Kg(e)?e.valueOf():NaN;if(Number.isNaN(o))return t.invalid("invalid input");let a=Ro(r.zone,rt.defaultZone);return a.isValid?new t({ts:o,zone:a,loc:ot.fromObject(r)}):t.invalid(uu(a))}static fromMillis(e,r={}){if(Go(e))return e<-$x||e>$x?t.invalid("Timestamp out of range"):new t({ts:e,zone:Ro(r.zone,rt.defaultZone),loc:ot.fromObject(r)});throw new Ct(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,r={}){if(Go(e))return new t({ts:e*1e3,zone:Ro(r.zone,rt.defaultZone),loc:ot.fromObject(r)});throw new Ct("fromSeconds requires a numerical input")}static fromObject(e,r={}){e=e||{};let o=Ro(r.zone,rt.defaultZone);if(!o.isValid)return t.invalid(uu(o));let a=ot.fromObject(r),n=ji(e,Fx),{minDaysInFirstWeek:s,startOfWeek:i}=lp(n,a),l=rt.now(),u=he(r.specificOffset)?o.offset(l):r.specificOffset,f=!he(n.ordinal),c=!he(n.year),p=!he(n.month)||!he(n.day),m=c||p,h=n.weekYear||n.weekNumber;if((m||f)&&h)throw new Po("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(p&&f)throw new Po("Can't mix ordinal dates with month/day");let y=h||n.weekday&&!m,E,D,L=ad(l,u);y?(E=Vy,D=Gy,L=tu(L,s,i)):f?(E=Uy,D=Hy,L=rd(L)):(E=id,D=Ox);let F=!1;for(let re of E){let ge=n[re];he(ge)?F?n[re]=D[re]:n[re]=L[re]:F=!0}let x=y?Ug(n,s,i):f?zg(n):up(n),$=x||fp(n);if($)return t.invalid($);let C=y?sp(n,s,i):f?ip(n):n,[v,B]=sd(C,u,o),q=new t({ts:v,zone:o,o:B,loc:a});return n.weekday&&m&&e.weekday!==q.weekday?t.invalid("mismatched weekday",`you can't specify both a weekday of ${n.weekday} and a date of ${q.toISO()}`):q.isValid?q:t.invalid(q.invalid)}static fromISO(e,r={}){let[o,a]=ux(e);return Di(o,a,r,"ISO 8601",e)}static fromRFC2822(e,r={}){let[o,a]=fx(e);return Di(o,a,r,"RFC 2822",e)}static fromHTTP(e,r={}){let[o,a]=dx(e);return Di(o,a,r,"HTTP",r)}static fromFormat(e,r,o={}){if(he(e)||he(r))throw new Ct("fromFormat requires an input string and a format");let{locale:a=null,numberingSystem:n=null}=o,s=ot.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0}),[i,l,u,f]=Ex(s,e,r);return f?t.invalid(f):Di(i,l,o,`format ${r}`,e,u)}static fromString(e,r,o={}){return t.fromFormat(e,r,o)}static fromSQL(e,r={}){let[o,a]=px(e);return Di(o,a,r,"SQL",e)}static invalid(e,r=null){if(!e)throw new Ct("need to specify a reason the DateTime is invalid");let o=e instanceof er?e:new er(e,r);if(rt.throwOnInvalid)throw new zf(o);return new t({invalid:o})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,r={}){let o=kp(e,ot.fromObject(r));return o?o.map(a=>a?a.val:null).join(""):null}static expandFormat(e,r={}){return jp(tr.parseFormat(e),ot.fromObject(r)).map(a=>a.val).join("")}static resetCache(){fu=void 0,$p.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?wp(this).weekYear:NaN}get weekNumber(){return this.isValid?wp(this).weekNumber:NaN}get weekday(){return this.isValid?wp(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?yp(this).weekday:NaN}get localWeekNumber(){return this.isValid?yp(this).weekNumber:NaN}get localWeekYear(){return this.isValid?yp(this).weekYear:NaN}get ordinal(){return this.isValid?rd(this.c).ordinal:NaN}get monthShort(){return this.isValid?Pa.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?Pa.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?Pa.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?Pa.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let e=864e5,r=6e4,o=_i(this.c),a=this.zone.offset(o-e),n=this.zone.offset(o+e),s=this.zone.offset(o-a*r),i=this.zone.offset(o-n*r);if(s===i)return[this];let l=o-s*r,u=o-i*r,f=ad(l,s),c=ad(u,i);return f.hour===c.hour&&f.minute===c.minute&&f.second===c.second&&f.millisecond===c.millisecond?[os(this,{ts:l}),os(this,{ts:u})]:[this]}get isInLeapYear(){return ts(this.year)}get daysInMonth(){return xi(this.year,this.month)}get daysInYear(){return this.isValid?mn(this.year):NaN}get weeksInWeekYear(){return this.isValid?es(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?es(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){let{locale:r,numberingSystem:o,calendar:a}=tr.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:r,numberingSystem:o,outputCalendar:a}}toUTC(e=0,r={}){return this.setZone(Qt.instance(e),r)}toLocal(){return this.setZone(rt.defaultZone)}setZone(e,{keepLocalTime:r=!1,keepCalendarTime:o=!1}={}){if(e=Ro(e,rt.defaultZone),e.equals(this.zone))return this;if(e.isValid){let a=this.ts;if(r||o){let n=e.offset(this.ts),s=this.toObject();[a]=sd(s,n,e)}return os(this,{ts:a,zone:e})}else return t.invalid(uu(e))}reconfigure({locale:e,numberingSystem:r,outputCalendar:o}={}){let a=this.loc.clone({locale:e,numberingSystem:r,outputCalendar:o});return os(this,{loc:a})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;let r=ji(e,Fx),{minDaysInFirstWeek:o,startOfWeek:a}=lp(r,this.loc),n=!he(r.weekYear)||!he(r.weekNumber)||!he(r.weekday),s=!he(r.ordinal),i=!he(r.year),l=!he(r.month)||!he(r.day),u=i||l,f=r.weekYear||r.weekNumber;if((u||s)&&f)throw new Po("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(l&&s)throw new Po("Can't mix ordinal dates with month/day");let c;n?c=sp({...tu(this.c,o,a),...r},o,a):he(r.ordinal)?(c={...this.toObject(),...r},he(r.day)&&(c.day=Math.min(xi(c.year,c.month),c.day))):c=ip({...rd(this.c),...r});let[p,m]=sd(c,this.o,this.zone);return os(this,{ts:p,o:m})}plus(e){if(!this.isValid)return this;let r=Et.fromDurationLike(e);return os(this,Ix(this,r))}minus(e){if(!this.isValid)return this;let r=Et.fromDurationLike(e).negate();return os(this,Ix(this,r))}startOf(e,{useLocaleWeeks:r=!1}={}){if(!this.isValid)return this;let o={},a=Et.normalizeUnit(e);switch(a){case"years":o.month=1;case"quarters":case"months":o.day=1;case"weeks":case"days":o.hour=0;case"hours":o.minute=0;case"minutes":o.second=0;case"seconds":o.millisecond=0;break;case"milliseconds":break}if(a==="weeks")if(r){let n=this.loc.getStartOfWeek(),{weekday:s}=this;s=3&&(l+="T"),l+=Dx(this,i,r,o,a,n,s),l}toISODate({format:e="extended",precision:r="day"}={}){return this.isValid?Ep(this,e==="extended",ld(r)):null}toISOWeekDate(){return nd(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:r=!1,includeOffset:o=!0,includePrefix:a=!1,extendedZone:n=!1,format:s="extended",precision:i="milliseconds"}={}){return this.isValid?(i=ld(i),(a&&id.indexOf(i)>=3?"T":"")+Dx(this,s==="extended",r,e,o,n,i)):null}toRFC2822(){return nd(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return nd(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?Ep(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:r=!1,includeOffsetSpace:o=!0}={}){let a="HH:mm:ss.SSS";return(r||e)&&(o&&(a+=" "),r?a+="z":e&&(a+="ZZ")),nd(this,a,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():bp}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};let r={...this.c};return e.includeConfig&&(r.outputCalendar=this.outputCalendar,r.numberingSystem=this.loc.numberingSystem,r.locale=this.loc.locale),r}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,r="milliseconds",o={}){if(!this.isValid||!e.isValid)return Et.invalid("created by diffing an invalid DateTime");let a={locale:this.locale,numberingSystem:this.numberingSystem,...o},n=Zg(r).map(Et.normalizeUnit),s=e.valueOf()>this.valueOf(),i=s?this:e,l=s?e:this,u=vx(i,l,n,a);return s?u.negate():u}diffNow(e="milliseconds",r={}){return this.diff(t.now(),e,r)}until(e){return this.isValid?Na.fromDateTimes(this,e):this}hasSame(e,r,o){if(!this.isValid)return!1;let a=e.valueOf(),n=this.setZone(e.zone,{keepLocalTime:!0});return n.startOf(r,o)<=a&&a<=n.endOf(r,o)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;let r=e.base||t.fromObject({},{zone:this.zone}),o=e.padding?thisr.valueOf(),Math.min)}static max(...e){if(!e.every(t.isDateTime))throw new Ct("max requires all arguments be DateTimes");return dp(e,r=>r.valueOf(),Math.max)}static fromFormatExplain(e,r,o={}){let{locale:a=null,numberingSystem:n=null}=o,s=ot.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0});return vp(s,e,r)}static fromStringExplain(e,r,o={}){return t.fromFormatExplain(e,r,o)}static buildFormatParser(e,r={}){let{locale:o=null,numberingSystem:a=null}=r,n=ot.fromOpts({locale:o,numberingSystem:a,defaultToEN:!0});return new lu(n,e)}static fromFormatParser(e,r,o={}){if(he(e)||he(r))throw new Ct("fromFormatParser requires an input string and a format parser");let{locale:a=null,numberingSystem:n=null}=o,s=ot.fromOpts({locale:a,numberingSystem:n,defaultToEN:!0});if(!s.equals(r.locale))throw new Ct(`fromFormatParser called with a locale of ${s}, but the format parser was created for ${r.locale}`);let{result:i,zone:l,specificOffset:u,invalidReason:f}=r.explainFromTokens(e);return f?t.invalid(f):Di(i,l,o,`format ${r.format}`,e,u)}static get DATE_SHORT(){return An}static get DATE_MED(){return Tl}static get DATE_MED_WITH_WEEKDAY(){return Pc}static get DATE_FULL(){return Ol}static get DATE_HUGE(){return Ml}static get TIME_SIMPLE(){return Nl}static get TIME_WITH_SECONDS(){return Pl}static get TIME_WITH_SHORT_OFFSET(){return ql}static get TIME_WITH_LONG_OFFSET(){return Ll}static get TIME_24_SIMPLE(){return Rl}static get TIME_24_WITH_SECONDS(){return Gl}static get TIME_24_WITH_SHORT_OFFSET(){return Hl}static get TIME_24_WITH_LONG_OFFSET(){return Vl}static get DATETIME_SHORT(){return Ul}static get DATETIME_SHORT_WITH_SECONDS(){return zl}static get DATETIME_MED(){return Wl}static get DATETIME_MED_WITH_SECONDS(){return Kl}static get DATETIME_MED_WITH_WEEKDAY(){return qc}static get DATETIME_FULL(){return Zl}static get DATETIME_FULL_WITH_SECONDS(){return Yl}static get DATETIME_HUGE(){return Jl}static get DATETIME_HUGE_WITH_SECONDS(){return Xl}};function Ii(t){if(Je.isDateTime(t))return t;if(t&&t.valueOf&&Go(t.valueOf()))return Je.fromJSDate(t);if(t&&typeof t=="object")return Je.fromObject(t);throw new Ct(`Unknown datetime argument: ${t}, of type ${typeof t}`)}var Mx;typeof window<"u"&&((Mx=window.__svelte??(window.__svelte={})).v??(Mx.v=new Set)).add("5");var Vo=!1,sa=!1,ia=!1;function Nx(){sa=!0}Nx();var qa={};var ft=Symbol(),eo=Symbol("filename"),Px=Symbol("hmr"),qx="http://www.w3.org/1999/xhtml",ud="http://www.w3.org/2000/svg";var Ip="@attach";var P=!1;var Pr=Array.isArray,Lx=Array.prototype.indexOf,du=Array.from,Dp=Object.keys,rr=Object.defineProperty,xr=Object.getOwnPropertyDescriptor,fd=Object.getOwnPropertyDescriptors,dd=Object.prototype,Rx=Array.prototype,gn=Object.getPrototypeOf,Fp=Object.isExtensible;function as(t){return typeof t=="function"}var or=()=>{};function Gx(t){return t()}function ns(t){for(var e=0;e{t=o,e=a});return{promise:r,resolve:t,reject:e}}function Bp(t,e){if(Array.isArray(t))return t;if(e===void 0||!(Symbol.iterator in t))return Array.from(t);let r=[];for(let o of t)if(r.push(o),r.length===e)break;return r}var Ar=Symbol("$state"),Fi=Symbol("legacy props"),Vx=Symbol(""),Ad=Symbol("proxy path"),Bi=new class extends Error{constructor(){super(...arguments);Ye(this,"name","StaleReactionError");Ye(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}},cd=1,Au=3,ko=8;function Ux(){if(P){let t=new Error("await_outside_boundary\nCannot await outside a `` with a `pending` snippet\nhttps://svelte.dev/e/await_outside_boundary");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/await_outside_boundary")}function cu(t){if(P){let e=new Error(`lifecycle_outside_component \`${t}(...)\` can only be used during component initialisation -https://svelte.dev/e/lifecycle_outside_component`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function Vj(){if(N){let t=new Error("async_derived_orphan\nCannot create a `$derived(...)` with an `await` expression outside of an effect tree\nhttps://svelte.dev/e/async_derived_orphan");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/async_derived_orphan")}function Bp(){if(N){let t=new Error("bind_invalid_checkbox_value\nUsing `bind:value` together with a checkbox input is not allowed. Use `bind:checked` instead\nhttps://svelte.dev/e/bind_invalid_checkbox_value");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/bind_invalid_checkbox_value")}function Uj(){if(N){let t=new Error(`derived_references_self +https://svelte.dev/e/lifecycle_outside_component`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function zx(){if(P){let t=new Error("async_derived_orphan\nCannot create a `$derived(...)` with an `await` expression outside of an effect tree\nhttps://svelte.dev/e/async_derived_orphan");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/async_derived_orphan")}function Sp(){if(P){let t=new Error("bind_invalid_checkbox_value\nUsing `bind:value` together with a checkbox input is not allowed. Use `bind:checked` instead\nhttps://svelte.dev/e/bind_invalid_checkbox_value");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/bind_invalid_checkbox_value")}function Wx(){if(P){let t=new Error(`derived_references_self A derived value cannot reference itself recursively -https://svelte.dev/e/derived_references_self`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/derived_references_self")}function zj(t){if(N){let e=new Error(`effect_in_teardown +https://svelte.dev/e/derived_references_self`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/derived_references_self")}function Kx(t){if(P){let e=new Error(`effect_in_teardown \`${t}\` cannot be used inside an effect cleanup function -https://svelte.dev/e/effect_in_teardown`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_in_teardown")}function Wj(){if(N){let t=new Error("effect_in_unowned_derived\nEffect cannot be created inside a `$derived` value that was not itself created inside an effect\nhttps://svelte.dev/e/effect_in_unowned_derived");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Kj(t){if(N){let e=new Error(`effect_orphan +https://svelte.dev/e/effect_in_teardown`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_in_teardown")}function Zx(){if(P){let t=new Error("effect_in_unowned_derived\nEffect cannot be created inside a `$derived` value that was not itself created inside an effect\nhttps://svelte.dev/e/effect_in_unowned_derived");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Yx(t){if(P){let e=new Error(`effect_orphan \`${t}\` can only be used inside an effect (e.g. during component initialisation) -https://svelte.dev/e/effect_orphan`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_orphan")}function Zj(){if(N){let t=new Error(`effect_update_depth_exceeded +https://svelte.dev/e/effect_orphan`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_orphan")}function Jx(){if(P){let t=new Error(`effect_update_depth_exceeded Maximum update depth exceeded. This typically indicates that an effect reads and writes the same piece of state -https://svelte.dev/e/effect_update_depth_exceeded`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Yj(){if(N){let t=new Error("flush_sync_in_effect\nCannot use `flushSync` inside an effect\nhttps://svelte.dev/e/flush_sync_in_effect");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/flush_sync_in_effect")}function Jj(){if(N){let t=new Error(`hydration_failed +https://svelte.dev/e/effect_update_depth_exceeded`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Xx(){if(P){let t=new Error("flush_sync_in_effect\nCannot use `flushSync` inside an effect\nhttps://svelte.dev/e/flush_sync_in_effect");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/flush_sync_in_effect")}function Qx(){if(P){let t=new Error(`hydration_failed Failed to hydrate the application -https://svelte.dev/e/hydration_failed`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/hydration_failed")}function Xj(){if(N){let t=new Error("invalid_snippet\nCould not `{@render}` snippet due to the expression being `null` or `undefined`. Consider using optional chaining `{@render snippet?.()}`\nhttps://svelte.dev/e/invalid_snippet");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/invalid_snippet")}function Qj(t){if(N){let e=new Error(`props_invalid_value +https://svelte.dev/e/hydration_failed`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/hydration_failed")}function ej(){if(P){let t=new Error("invalid_snippet\nCould not `{@render}` snippet due to the expression being `null` or `undefined`. Consider using optional chaining `{@render snippet?.()}`\nhttps://svelte.dev/e/invalid_snippet");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/invalid_snippet")}function tj(t){if(P){let e=new Error(`props_invalid_value Cannot do \`bind:${t}={undefined}\` when \`${t}\` has a fallback value -https://svelte.dev/e/props_invalid_value`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/props_invalid_value")}function ex(t){if(N){let e=new Error(`rune_outside_svelte +https://svelte.dev/e/props_invalid_value`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/props_invalid_value")}function rj(t){if(P){let e=new Error(`rune_outside_svelte The \`${t}\` rune is only available inside \`.svelte\` and \`.svelte.js/ts\` files -https://svelte.dev/e/rune_outside_svelte`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/rune_outside_svelte")}function tx(){if(N){let t=new Error("state_descriptors_fixed\nProperty descriptors defined on `$state` objects must contain `value` and always be `enumerable`, `configurable` and `writable`.\nhttps://svelte.dev/e/state_descriptors_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function rx(){if(N){let t=new Error("state_prototype_fixed\nCannot set prototype of `$state` object\nhttps://svelte.dev/e/state_prototype_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_prototype_fixed")}function ox(){if(N){let t=new Error("state_unsafe_mutation\nUpdating state inside `$derived(...)`, `$inspect(...)` or a template expression is forbidden. If the value should not be reactive, declare it without `$state`\nhttps://svelte.dev/e/state_unsafe_mutation");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_unsafe_mutation")}var ns="font-weight: bold",ss="font-weight: normal";function ax(t){N?console.warn(`%c[svelte] await_reactivity_loss +https://svelte.dev/e/rune_outside_svelte`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/rune_outside_svelte")}function oj(){if(P){let t=new Error("state_descriptors_fixed\nProperty descriptors defined on `$state` objects must contain `value` and always be `enumerable`, `configurable` and `writable`.\nhttps://svelte.dev/e/state_descriptors_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function aj(){if(P){let t=new Error("state_prototype_fixed\nCannot set prototype of `$state` object\nhttps://svelte.dev/e/state_prototype_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_prototype_fixed")}function nj(){if(P){let t=new Error("state_unsafe_mutation\nUpdating state inside `$derived(...)`, `$inspect(...)` or a template expression is forbidden. If the value should not be reactive, declare it without `$state`\nhttps://svelte.dev/e/state_unsafe_mutation");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_unsafe_mutation")}var ss="font-weight: bold",is="font-weight: normal";function sj(t){P?console.warn(`%c[svelte] await_reactivity_loss %cDetected reactivity loss when reading \`${t}\`. This happens when state is read in an async function after an earlier \`await\` -https://svelte.dev/e/await_reactivity_loss`,ns,ss):console.warn("https://svelte.dev/e/await_reactivity_loss")}function nx(t,e){N?console.warn(`%c[svelte] await_waterfall +https://svelte.dev/e/await_reactivity_loss`,ss,is):console.warn("https://svelte.dev/e/await_reactivity_loss")}function ij(t,e){P?console.warn(`%c[svelte] await_waterfall %cAn async derived, \`${t}\` (${e}) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app -https://svelte.dev/e/await_waterfall`,ns,ss):console.warn("https://svelte.dev/e/await_waterfall")}function sx(t,e,r){N?console.warn(`%c[svelte] hydration_attribute_changed +https://svelte.dev/e/await_waterfall`,ss,is):console.warn("https://svelte.dev/e/await_waterfall")}function lj(t,e,r){P?console.warn(`%c[svelte] hydration_attribute_changed %cThe \`${t}\` attribute on \`${e}\` changed its value between server and client renders. The client value, \`${r}\`, will be ignored in favour of the server value -https://svelte.dev/e/hydration_attribute_changed`,ns,ss):console.warn("https://svelte.dev/e/hydration_attribute_changed")}function is(t){N?console.warn(`%c[svelte] hydration_mismatch +https://svelte.dev/e/hydration_attribute_changed`,ss,is):console.warn("https://svelte.dev/e/hydration_attribute_changed")}function ls(t){P?console.warn(`%c[svelte] hydration_mismatch %c${t?`Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near ${t}`:"Hydration failed because the initial UI does not match what was rendered on the server"} -https://svelte.dev/e/hydration_mismatch`,ns,ss):console.warn("https://svelte.dev/e/hydration_mismatch")}function ix(){N?console.warn(`%c[svelte] lifecycle_double_unmount +https://svelte.dev/e/hydration_mismatch`,ss,is):console.warn("https://svelte.dev/e/hydration_mismatch")}function uj(){P?console.warn(`%c[svelte] lifecycle_double_unmount %cTried to unmount a component that was not mounted -https://svelte.dev/e/lifecycle_double_unmount`,ns,ss):console.warn("https://svelte.dev/e/lifecycle_double_unmount")}function lx(){N?console.warn("%c[svelte] select_multiple_invalid_value\n%cThe `value` property of a `` element should be an array, but it received a non-array value. The selection will be kept as is.\nhttps://svelte.dev/e/select_multiple_invalid_value",ss,is):console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function pd(t){P?console.warn(`%c[svelte] state_proxy_equality_mismatch %cReactive \`$state(...)\` proxies and the values they proxy have different identities. Because of this, comparisons with \`${t}\` will produce unexpected results -https://svelte.dev/e/state_proxy_equality_mismatch`,ns,ss):console.warn("https://svelte.dev/e/state_proxy_equality_mismatch")}var ie=!1;function Pt(t){ie=t}var be;function gt(t){if(t===null)throw is(),Na;return be=t}function Rt(){return gt(cr(be))}function b(t){if(ie){if(cr(be)!==null)throw is(),Na;be=t}}function sa(t=1){if(ie){for(var e=t,r=be;e--;)r=cr(r);be=r}}function us(){for(var t=0,e=be;;){if(e.nodeType===vo){var r=e.data;if(r==="]"){if(t===0)return e;t-=1}else(r==="["||r==="[!")&&(t+=1)}var o=cr(e);e.remove(),e=o}}function mf(t){if(!t||t.nodeType!==vo)throw is(),Na;return t.data}function _f(t){return t===this.v}function Ci(t,e){return t!=t?e==e:t!==e||t!==null&&typeof t=="object"||typeof t=="function"}function ux(t,e){return t!==e}function hf(t){return!Ci(t,this.v)}var Ky="font-weight: bold",Zy="font-weight: normal";function Sp(t){N?console.warn(`%c[svelte] state_snapshot_uncloneable +https://svelte.dev/e/state_proxy_equality_mismatch`,ss,is):console.warn("https://svelte.dev/e/state_proxy_equality_mismatch")}var ue=!1;function qt(t){ue=t}var be;function jt(t){if(t===null)throw ls(),qa;return be=t}function Lt(){return jt(cr(be))}function b(t){if(ue){if(cr(be)!==null)throw ls(),qa;be=t}}function la(t=1){if(ue){for(var e=t,r=be;e--;)r=cr(r);be=r}}function fs(){for(var t=0,e=be;;){if(e.nodeType===ko){var r=e.data;if(r==="]"){if(t===0)return e;t-=1}else(r==="["||r==="[!")&&(t+=1)}var o=cr(e);e.remove(),e=o}}function md(t){if(!t||t.nodeType!==ko)throw ls(),qa;return t.data}function _d(t){return t===this.v}function Ci(t,e){return t!=t?e==e:t!==e||t!==null&&typeof t=="object"||typeof t=="function"}function dj(t,e){return t!==e}function hd(t){return!Ci(t,this.v)}var Yy="font-weight: bold",Jy="font-weight: normal";function Cp(t){P?console.warn(`%c[svelte] state_snapshot_uncloneable %c${t?`The following properties cannot be cloned with \`$state.snapshot\` \u2014 the return value contains the originals: ${t}`:"Value cannot be cloned with `$state.snapshot` \u2014 the original value was returned"} -https://svelte.dev/e/state_snapshot_uncloneable`,Ky,Zy):console.warn("https://svelte.dev/e/state_snapshot_uncloneable")}var Yy=[];function pr(t,e=!1){if(N&&!e){let r=[],o=mu(t,new Map,"",r);if(r.length===1&&r[0]==="")Sp();else if(r.length>0){let a=r.length>10?r.slice(0,7):r.slice(0,10),n=r.length-a.length,s=a.map(i=>`- ${i}`).join(` +https://svelte.dev/e/state_snapshot_uncloneable`,Yy,Jy):console.warn("https://svelte.dev/e/state_snapshot_uncloneable")}var Xy=[];function pr(t,e=!1){if(P&&!e){let r=[],o=mu(t,new Map,"",r);if(r.length===1&&r[0]==="")Cp();else if(r.length>0){let a=r.length>10?r.slice(0,7):r.slice(0,10),n=r.length-a.length,s=a.map(i=>`- ${i}`).join(` `);n>0&&(s+=` -- ...and ${n} more`),Sp(s)}return o}return mu(t,new Map,"",Yy)}function mu(t,e,r,o,a=null){if(typeof t=="object"&&t!==null){var n=e.get(t);if(n!==void 0)return n;if(t instanceof Map)return new Map(t);if(t instanceof Set)return new Set(t);if(Nr(t)){var s=Array(t.length);e.set(t,s),a!==null&&e.set(a,s);for(var i=0;i"}`,n=e.ctx;n!==null;)a+=` -${o}in ${n.function?.[Xr].split("/").pop()}`,n=n.p;return{message:t.message+` +${o}in ${n.function?.[eo].split("/").pop()}`,n=n.p;return{message:t.message+` ${a} `,stack:t.stack?.split(` `).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:()=>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 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 +`)}}}function cj(t){let e=Mp.get(t);e&&(rr(t,"message",{value:e.message}),rr(t,"stack",{value:e.stack}))}var eE=typeof requestIdleCallback>"u"?t=>setTimeout(t,1):requestIdleCallback,xu=[],ju=[];function pj(){var t=xu;xu=[],ns(t)}function mj(){var t=ju;ju=[],ns(t)}function oo(t){xu.length===0&&queueMicrotask(pj),xu.push(t)}function _j(t){ju.length===0&&eE(mj),ju.push(t)}function hj(){xu.length>0&&pj(),ju.length>0&&mj()}var JC=589952;function vd(){for(var t=de.b;t!==null&&!t.has_pending_snippet();)t=t.parent;return t===null&&Ux(),t}var Ra=null;function Rp(t){Ra=t}var ku=new Set;function bn(t){var e=2050,r=je!==null&&(je.f&2)!==0?je:null;de===null||r!==null&&(r.f&256)!==0?e|=256:de.f|=524288;let o={ctx:He,deps:null,effects:null,equals:_d,f:e,fn:t,reactions:null,rv:0,v:ft,wv:0,parent:r??de,ac:null};return P&&ia&&(o.created=ua("CreatedAt")),o}function Gp(t,e){let r=de;r===null&&zx();var o=r.b,a=void 0,n=qr(ft),s=null,i=!je;return gj(()=>{P&&(Ra=de);try{var l=t()}catch(m){l=Promise.reject(m)}P&&(Ra=null);var u=()=>l;a=s?.then(u,u)??Promise.resolve(l),s=a;var f=Ze,c=o.pending;i&&(o.update_pending_count(1),c||f.increment());let p=(m,h=void 0)=>{s=null,Ra=null,c||f.activate(),h?h!==Bi&&(n.f|=8388608,Aa(n,h)):((n.f&8388608)!==0&&(n.f^=8388608),Aa(n,m),P&&e!==void 0&&(ku.add(n),setTimeout(()=>{ku.has(n)&&(ij(n.label,e),ku.delete(n))}))),i&&(o.update_pending_count(-1),c||f.decrement()),wd()};if(a.then(p,m=>p(null,m||"unknown")),f)return()=>{queueMicrotask(()=>f.neuter())}}),P&&(n.f|=4194304),new Promise(l=>{function u(f){function c(){f===a?l(n):u(a)}f.then(c,c)}u(a)})}function Ae(t){let e=bn(t);return yd(e),e}function ds(t){let e=bn(t);return e.equals=hd,e}function kd(t){var e=t.effects;if(e!==null){t.effects=null;for(var r=0;rGp(l))).then(l=>{a?.activate(),s();try{r([...t.map(o),...l])}catch(u){(n.f&16384)===0&&Ti(u,n)}a?.deactivate(),wd()}).catch(l=>{i.error(l)})}function oE(){var t=de,e=je,r=He;return function(){Rt(t),Zt(e),vn(r),P&&Rp(null)}}function wd(){Rt(null),Zt(null),vn(null),P&&Rp(null)}var Eu=new Set,Ze=null,$u=null,kn=null,Pp=new Set,Id=[];function jj(){let t=Id.shift();Id.length>0&&queueMicrotask(jj),t()}var ps=[],Sd=null,Vp=!1,Ed=!1,Mi,Ni,wn,Iu,Du,cs,Pi,yn,En,qi,Fu,Bu,Ko,vj,$d,Up,Dd=class Dd{constructor(){zt(this,Ko);Ye(this,"current",new Map);zt(this,Mi,new Map);zt(this,Ni,new Set);zt(this,wn,0);zt(this,Iu,null);zt(this,Du,!1);zt(this,cs,[]);zt(this,Pi,[]);zt(this,yn,[]);zt(this,En,[]);zt(this,qi,[]);zt(this,Fu,[]);zt(this,Bu,[]);Ye(this,"skipped_effects",new Set)}process(e){ps=[],$u=null;var r=null;if(Eu.size>1){r=new Map,kn=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)Da(this,Ko,vj).call(this,n);if(ye(this,cs).length===0&&ye(this,wn)===0){Da(this,Ko,Up).call(this);var o=ye(this,yn),a=ye(this,En);ur(this,yn,[]),ur(this,En,[]),ur(this,qi,[]),$u=Ze,Ze=null,xj(o),xj(a),Ze===null?Ze=this:Eu.delete(this),ye(this,Iu)?.resolve()}else Da(this,Ko,$d).call(this,ye(this,yn)),Da(this,Ko,$d).call(this,ye(this,En)),Da(this,Ko,$d).call(this,ye(this,qi));if(r){for(let[n,{v:s,wv:i}]of r)n.wv<=i&&(n.v=s);kn=null}for(let n of ye(this,cs))Ha(n);for(let n of ye(this,Pi))Ha(n);ur(this,cs,[]),ur(this,Pi,[])}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,$u=null;for(let e of Pp)if(Pp.delete(e),e(),Ze!==null)break}neuter(){ur(this,Du,!0)}flush(){ps.length>0?zp():Da(this,Ko,Up).call(this),Ze===this&&(ye(this,wn)===0&&Eu.delete(this),this.deactivate())}increment(){ur(this,wn,ye(this,wn)+1)}decrement(){if(ur(this,wn,ye(this,wn)-1),ye(this,wn)===0){for(let e of ye(this,Fu))Gt(e,2048),ca(e);for(let e of ye(this,Bu))Gt(e,4096),ca(e);ur(this,yn,[]),ur(this,En,[]),this.flush()}else this.deactivate()}add_callback(e){ye(this,Ni).add(e)}settled(){return(ye(this,Iu)??ur(this,Iu,Hx())).promise}static ensure(){if(Ze===null){let e=Ze=new Dd;Eu.add(Ze),Ed||Dd.enqueue(()=>{Ze===e&&e.flush()})}return Ze}static enqueue(e){Id.length===0&&queueMicrotask(jj),Id.unshift(e)}};Mi=new WeakMap,Ni=new WeakMap,wn=new WeakMap,Iu=new WeakMap,Du=new WeakMap,cs=new WeakMap,Pi=new WeakMap,yn=new WeakMap,En=new WeakMap,qi=new WeakMap,Fu=new WeakMap,Bu=new WeakMap,Ko=new WeakSet,vj=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,En).push(r);else if(Vo&&(o&8)!==0)ye(this,yn).push(r);else if((o&4194304)!==0){var i=r.b?.pending?ye(this,Pi):ye(this,cs);i.push(r)}else $n(r)&&((r.f&16)!==0&&ye(this,qi).push(r),Ha(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}},$d=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},Up=function(){if(!ye(this,Du))for(let e of ye(this,Ni))e();ye(this,Ni).clear()};var da=Dd;function Ri(t){Vo&&de!==null&&Xx();var e=Ed;Ed=!0;try{var r;for(t&&(zp(),r=t());;){if(hj(),ps.length===0&&(Ze?.flush(),ps.length===0))return Sd=null,r;zp()}}finally{Ed=e}}function zp(){var t=ms;Vp=!0;try{var e=0;for(Wp(!0);ps.length>0;){var r=da.ensure();if(e++>1e3){if(P){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)}aE()}r.process(ps),Ua.clear()}}finally{Vp=!1,Wp(t),Sd=null}}function aE(){try{Jx()}catch(t){P&&rr(t,"stack",{value:""}),Ti(t,Sd)}}function xj(t){var e=t.length;if(e!==0){for(var r=0;ra&&(o.f&1048576)!==0)break}}for(;r0&&!Zp&&Yp()}return e}function Yp(){Zp=!1;let t=Array.from(As);for(let e of t)(e.f&1024)!==0&&Gt(e,4096),$n(e)&&Ha(e);As.clear()}function Cd(t,e=1){var r=A(t),o=e===1?r++:r--;return Y(t,r),o}function vu(t){Y(t,t.v+1)}function bj(t,e){var r=t.reactions;if(r!==null)for(var o=ro(),a=r.length,n=0;n{if(Dn===s)return f();var c=je,p=Dn;Zt(null),Jp(s);var m=f();return Zt(c),Jp(p),m};o&&(r.set("length",Le(t.length,n)),P&&(t=iE(t)));var l="";function u(f){l=f,bo(a,`${l} version`);for(let[c,p]of r)bo(p,_s(l,c))}return new Proxy(t,{defineProperty(f,c,p){(!("value"in p)||p.configurable===!1||p.enumerable===!1||p.writable===!1)&&oj();var m=r.get(c);return m===void 0?m=i(()=>{var h=Le(p.value,n);return r.set(c,h),P&&typeof c=="string"&&bo(h,_s(l,c)),h}):Y(m,p.value,!0),!0},deleteProperty(f,c){var p=r.get(c);if(p===void 0){if(c in f){let m=i(()=>Le(ft,n));r.set(c,m),vu(a),P&&bo(m,_s(l,c))}}else Y(p,ft),vu(a);return!0},get(f,c,p){if(c===Ar)return t;if(P&&c===Ad)return u;var m=r.get(c),h=c in f;if(m===void 0&&(!h||xr(f,c)?.writable)&&(m=i(()=>{var E=pt(h?f[c]:ft),D=Le(E,n);return P&&bo(D,_s(l,c)),D}),r.set(c,m)),m!==void 0){var y=A(m);return y===ft?void 0:y}return Reflect.get(f,c,p)},getOwnPropertyDescriptor(f,c){var p=Reflect.getOwnPropertyDescriptor(f,c);if(p&&"value"in p){var m=r.get(c);m&&(p.value=A(m))}else if(p===void 0){var h=r.get(c),y=h?.v;if(h!==void 0&&y!==ft)return{enumerable:!0,configurable:!0,value:y,writable:!0}}return p},has(f,c){if(c===Ar)return!0;var p=r.get(c),m=p!==void 0&&p.v!==ft||Reflect.has(f,c);if(p!==void 0||de!==null&&(!m||xr(f,c)?.writable)){p===void 0&&(p=i(()=>{var y=m?pt(f[c]):ft,E=Le(y,n);return P&&bo(E,_s(l,c)),E}),r.set(c,p));var h=A(p);if(h===ft)return!1}return m},set(f,c,p,m){var h=r.get(c),y=c in f;if(o&&c==="length")for(var E=p;ELe(ft,n)),r.set(E+"",D),P&&bo(D,_s(l,E)))}if(h===void 0)(!y||xr(f,c)?.writable)&&(h=i(()=>Le(void 0,n)),Y(h,pt(p)),r.set(c,h),P&&bo(h,_s(l,c)));else{y=h.v!==ft;var L=i(()=>pt(p));Y(h,L)}var F=Reflect.getOwnPropertyDescriptor(f,c);if(F?.set&&F.set.call(m,p),!y){if(o&&typeof c=="string"){var x=r.get("length"),$=Number(c);Number.isInteger($)&&$>=x.v&&Y(x,$+1)}vu(a)}return!0},ownKeys(f){A(a);var c=Reflect.ownKeys(f).filter(h=>{var y=r.get(h);return y===void 0||y.v!==ft});for(var[p,m]of r)m.v!==ft&&!(p in f)&&c.push(p);return c},setPrototypeOf(){aj()}})}function _s(t,e){return typeof e=="symbol"?`${t}[Symbol(${e.description??""})]`:nE.test(e)?`${t}.${e}`:/^\d+$/.test(e)?`${t}[${e}]`:`${t}['${e}']`}function Gi(t){try{if(t!==null&&typeof t=="object"&&Ar in t)return t[Ar]}catch{}return t}function Xp(t,e){return Object.is(Gi(t),Gi(e))}var sE=new Set(["copyWithin","fill","pop","push","reverse","shift","sort","splice","unshift"]);function iE(t){return new Proxy(t,{get(e,r,o){var a=Reflect.get(e,r,o);return sE.has(r)?function(...n){kj();var s=a.apply(this,n);return Yp(),s}:a}})}function yj(){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 Qp,Ej,gu,$j,Ij;function Td(){if(Qp===void 0){Qp=window,Ej=document,gu=/Firefox/.test(navigator.userAgent);var t=Element.prototype,e=Node.prototype,r=Text.prototype;$j=xr(e,"firstChild").get,Ij=xr(e,"nextSibling").get,Fp(t)&&(t.__click=void 0,t.__className=void 0,t.__attributes=null,t.__style=void 0,t.__e=void 0),Fp(r)&&(r.__t=void 0),P&&(t.__svelte_meta=null,yj())}}function Yt(t=""){return document.createTextNode(t)}function Ot(t){return $j.call(t)}function cr(t){return Ij.call(t)}function w(t,e){if(!ue)return Ot(t);var r=Ot(be);if(r===null)r=be.appendChild(Yt());else if(e&&r.nodeType!==Au){var o=Yt();return r?.before(o),jt(o),o}return jt(r),r}function J(t,e){if(!ue){var r=Ot(t);return r instanceof Comment&&r.data===""?cr(r):r}if(e&&be?.nodeType!==Au){var o=Yt();return be?.before(o),jt(o),o}return be}function S(t,e=1,r=!1){let o=ue?be:t;for(var a;e--;)a=o,o=cr(o);if(!ue)return o;if(r&&o?.nodeType!==Au){var n=Yt();return o===null?a?.after(n):o.before(n),jt(n),n}return jt(o),o}function Cu(t){t.textContent=""}function hs(){if(!Vo)return!1;var t=de.f;return(t&32768)!==0}function tm(t){de===null&&je===null&&Yx(t),je!==null&&(je.f&256)!==0&&de===null&&Zx(),zo&&Kx(t)}function lE(t,e){var r=e.last;r===null?e.last=e.first=t:(r.next=t,t.prev=r,e.last=t)}function Yo(t,e,r,o=!0){var a=de;if(P)for(;a!==null&&(a.f&131072)!==0;)a=a.parent;a!==null&&(a.f&8192)!==0&&(t|=8192);var n={ctx:He,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(P&&(n.component_function=Uo),r)try{Ha(n),n.f|=32768}catch(l){throw It(n),l}else e!==null&&ca(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&&lE(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=Yo(8,null,!1);return Gt(e,1024),e.teardown=t,e}function mt(t){tm("$effect"),P&&rr(t,"name",{value:"$effect"});var e=de.f,r=!je&&(e&32)!==0&&(e&32768)===0;if(r){var o=He;(o.e??(o.e=[])).push(t)}else return Op(t)}function Op(t){return Yo(1048580,t,!1)}function Tu(t){return tm("$effect.pre"),P&&rr(t,"name",{value:"$effect.pre"}),Yo(1048584,t,!0)}function Od(t){da.ensure();let e=Yo(64,t,!0);return()=>{It(e)}}function Fj(t){da.ensure();let e=Yo(64,t,!0);return(r={})=>new Promise(o=>{r.outro?wo(e,()=>{It(e),o(void 0)}):(It(e),o(void 0))})}function br(t){return Yo(4,t,!1)}function gj(t){return Yo(4718592,t,!0)}function Wt(t,e=0){return Yo(8|e,t,!0)}function oe(t,e=[],r=[]){yu(e,r,o=>{Yo(8,()=>t(...o.map(A)),!0)})}function Kt(t,e=0){var r=Yo(16|e,t,!0);return P&&(r.dev_stack=fa),r}function $t(t,e=!0){return Yo(32,t,!0,e)}function rm(t){var e=t.teardown;if(e!==null){let r=zo,o=je;em(!0),Zt(null);try{e.call(null)}finally{em(r),Zt(o)}}}function om(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:It(r,e),r=o}}function Bj(t){for(var e=t.first;e!==null;){var r=e.next;(e.f&32)===0&&It(e),e=r}}function It(t,e=!0){var r=!1;(e||(t.f&262144)!==0)&&t.nodes_start!==null&&t.nodes_end!==null&&(Sj(t.nodes_start,t.nodes_end),r=!0),om(t,e&&!r),Ou(t,0),Gt(t,16384);var o=t.transitions;if(o!==null)for(let n of o)n.stop();rm(t);var a=t.parent;a!==null&&a.first!==null&&Kp(t),P&&(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 Sj(t,e){for(;t!==null;){var r=t===e?null:cr(t);t.remove(),t=r}}function Kp(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 wo(t,e){var r=[];Md(t,r,!0),am(r,()=>{It(t),e&&e()})}function am(t,e){var r=t.length;if(r>0){var o=()=>--r||e();for(var a of t)a.out(o)}else e()}function Md(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;Md(o,e,n?r:!1),o=a}}}function Fn(t){Cj(t,!0)}function Cj(t,e){if((t.f&8192)!==0){t.f^=8192,(t.f&1024)===0&&(Gt(t,2048),ca(t));for(var r=t.first;r!==null;){var o=r.next,a=(r.f&65536)!==0||(r.f&32)!==0;Cj(r,a?e:!1),r=o}if(t.transitions!==null)for(let n of t.transitions)(n.is_global||e)&&n.in()}}var Tj=null;var ms=!1;function Wp(t){ms=t}var zo=!1;function em(t){zo=t}var je=null,Lr=!1;function Zt(t){je=t}var de=null;function Rt(t){de=t}var pa=null;function yd(t){je!==null&&(!Vo||(je.f&2)!==0)&&(pa===null?pa=[t]:pa.push(t))}var Fr=null,io=0,so=null;function wj(t){so=t}var Oj=1,Mu=0,Dn=Mu;function Jp(t){Dn=t}var Ga=!1;function wu(){return++Oj}function $n(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&&de!==null&&!Ga,l=r.length;if((s||i)&&(de===null||(de.f&16384)===0)){var u=t,f=u.parent;for(a=0;at.wv)return!0}(!o||de!==null&&!Ga)&&Gt(t,1024)}return!1}function Mj(t,e,r=!0){var o=t.reactions;if(o!==null&&!(!Vo&&pa?.includes(t)))for(var a=0;a0)for(p.length=io+Fr.length,m=0;m{document.activeElement===r&&t.focus()})}}var Pj=!1;function Ld(){Pj||(Pj=!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=de;Zt(null),Rt(null);try{return t()}finally{Zt(e),Rt(r)}}function Pu(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),Ld()}var sm=new Set,Rd=new Set;function im(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"?oo(()=>{e.addEventListener(t,a,o)}):e.addEventListener(t,a,o),a}function Rr(t,e,r,o,a){var n={capture:o,passive:a},s=im(t,e,r,n);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&kr(()=>{e.removeEventListener(t,s,n)})}function Ve(t){for(var e=0;e{throw L});throw p}}finally{t.__root=e,delete t.currentTarget,Zt(f),Rt(c)}}}var dE;function Lj(){dE=void 0}function qu(t){var e=document.createElement("template");return e.innerHTML=t.replaceAll("",""),e.content}function Gr(t,e){var r=de;r.nodes_start===null&&(r.nodes_start=t,r.nodes_end=e)}function M(t,e){var r=(e&1)!==0,o=(e&2)!==0,a,n=!t.startsWith("");return()=>{if(ue)return Gr(be,null),be;a===void 0&&(a=qu(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;Gr(i,l)}else Gr(s,s);return s}}function pE(t,e,r="svg"){var o=!t.startsWith(""),a=(e&1)!==0,n=`<${r}>${o?t:""+t}`,s;return()=>{if(ue)return Gr(be,null),be;if(!s){var i=qu(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 f=Ot(u),c=u.lastChild;Gr(f,c)}else Gr(u,u);return u}}function lm(t,e){return pE(t,e,"svg")}function X(){if(ue)return Gr(be,null),be;var t=document.createDocumentFragment(),e=document.createComment(""),r=Yt();return t.append(e,r),Gr(e,r),t}function k(t,e){if(ue){de.nodes_end=be,Lt();return}t!==null&&t.before(e)}function Gj(t){return t.endsWith("capture")&&t!=="gotpointercapture"&&t!=="lostpointercapture"}var mE=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function Hj(t){return mE.includes(t)}var _E=["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 hE={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 Vj(t){return t=t.toLowerCase(),hE[t]??t}var b1=[..._E,"formNoValidate","isMap","noModule","playsInline","readOnly","value","volume","defaultValue","defaultChecked","srcObject","noValidate","allowFullscreen","disablePictureInPicture","disableRemotePlayback"];var gE=["touchstart","touchmove"];function Uj(t){return gE.includes(t)}var xE=["$state","$state.raw","$derived","$derived.by"],w1=[...xE,"$state.snapshot","$props","$props.id","$bindable","$effect","$effect.pre","$effect.tracking","$effect.root","$effect.pending","$inspect","$inspect().with","$inspect.trace","$host"];var jE=["textarea","script","style","title"];function zj(t){return jE.includes(t)}var Gd=!0;function Hd(t){Gd=t}function De(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 Se(t,e){return Wj(t,e)}function fm(t,e){Td(),e.intro=e.intro??!1;let r=e.target,o=ue,a=be;try{for(var n=Ot(r);n&&(n.nodeType!==ko||n.data!=="[");)n=cr(n);if(!n)throw qa;qt(!0),jt(n),Lt();let s=Wj(t,{...e,anchor:n});if(be===null||be.nodeType!==ko||be.data!=="]")throw ls(),qa;return qt(!1),s}catch(s){if(s instanceof Error&&s.message.split(` +`).some(i=>i.startsWith("https://svelte.dev/e/")))throw s;return s!==qa&&console.warn("Failed to hydrate: ",s),e.recover===!1&&Qx(),Td(),Cu(r),qt(!1),Se(t,e)}finally{qt(o),jt(a),Lj()}}var Vi=new Map;function Wj(t,{target:e,anchor:r,props:o={},events:a,context:n,intro:s=!0}){Td();var i=new Set,l=c=>{for(var p=0;p{var c=r??e.appendChild(Yt());return $t(()=>{if(n){ae({});var p=He;p.c=n}a&&(o.$$events=a),ue&&Gr(c,null),Gd=s,u=t(c,o)||{},Gd=!0,ue&&(de.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)}Rd.delete(l),c!==r&&c.parentNode?.removeChild(c)}});return um.set(u,f),u}var um=new WeakMap;function Jo(t,e){let r=um.get(t);return r?(um.delete(t),r(e)):(P&&uj(),Promise.resolve())}function dm(t,e,...r){var o=t,a=or,n;Kt(()=>{a!==(a=e())&&(n&&(It(n),n=null),P&&a==null&&ej(),n=$t(()=>a(o,...r)))},65536),ue&&(o=be)}if(P){let t=function(e){if(!(e in globalThis)){let r;Object.defineProperty(globalThis,e,{configurable:!0,get:()=>{if(r!==void 0)return r;rj(e)},set:o=>{r=o}})}};t("$state"),t("$effect"),t("$derived"),t("$inspect"),t("$props"),t("$bindable")}function gs(t){He===null&&cu("onMount"),sa&&He.l!==null?wE(He).m.push(t):mt(()=>{let e=Ge(t);if(typeof e=="function")return e})}function Kj(t){He===null&&cu("onDestroy"),gs(()=>()=>Ge(t))}function wE(t){var e=t.l;return e.u??(e.u={a:[],b:[],m:[]})}var Yj=new Map;function Jj(t,e){var r=Yj.get(t);r||(r=new Set,Yj.set(t,r)),r.add(e)}function ie(t,e,r=!1){ue&&Lt();var o=t,a=null,n=null,s=ft,i=r?65536:0,l=!1;let u=(m,h=!0)=>{l=!0,p(h,m)};var f=null;function c(){f!==null&&(f.lastChild.remove(),o.before(f),f=null);var m=s?a:n,h=s?n:a;m&&Fn(m),h&&wo(h,()=>{s?n=null:a=null})}let p=(m,h)=>{if(s===(s=m))return;let y=!1;if(ue){let $=md(o)==="[!";!!s===$&&(o=fs(),jt(o),qt(!1),y=!0)}var E=hs(),D=o;if(E&&(f=document.createDocumentFragment(),f.append(D=Yt())),s?a??(a=h&&$t(()=>h(D))):n??(n=h&&$t(()=>h(D))),E){var L=Ze,F=s?a:n,x=s?n:a;F&&L.skipped_effects.delete(F),x&&L.skipped_effects.add(x),L.add_callback(c)}else c();y&&qt(!0)};Kt(()=>{l=!1,e(u),l||p(null,null)},i),ue&&(o=be)}function lo(t,e,r){ue&&Lt();var o=t,a=ft,n,s,i=null,l=ro()?dj:Ci;function u(){n&&wo(n),i!==null&&(i.lastChild.remove(),o.before(i),i=null),n=s}Kt(()=>{if(l(a,a=e())){var f=o,c=hs();c&&(i=document.createDocumentFragment(),i.append(f=Yt())),s=$t(()=>r(f)),c?Ze.add_callback(u):u()}}),ue&&(o=be)}var Bn=null;function pm(t){Bn=t}function it(t,e){return e}function $E(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(),_a(t,e[0].prev,e[n-1].next)}am(a,()=>{for(var u=0;u{var D=r();return Pr(D)?D:D==null?[]:du(D)}),h,y;function E(){IE(y,h,i,p,s,a,e,o,r),n!==null&&(h.length===0?f?Fn(f):f=$t(()=>n(s)):f!==null&&wo(f,()=>{f=null}))}Kt(()=>{y??(y=de),h=A(m);var D=h.length;if(c&&D===0)return;c=D===0;let L=!1;if(ue){var F=md(s)==="[!";F!==(D===0)&&(s=fs(),jt(s),qt(!1),L=!0)}if(ue){for(var x=null,$,C=0;C0&&jt(fs())}if(ue)D===0&&n&&(f=$t(()=>n(s)));else if(hs()){var q=new Set,re=Ze;for(C=0;C0){var T=(s&4)!==0&&c===0?a:null;if(u){for(v=0;v{if(D!==void 0)for(C of D)C.a?.apply()}),t.first=r.first&&r.first.e,t.last=E&&E.e;for(var O of o.values())It(O.e);o.clear()}function Qj(t,e,r,o){(o&1)!==0&&Aa(t.v,e),(o&2)!==0?Aa(t.i,r):t.i=r}function cm(t,e,r,o,a,n,s,i,l,u,f){var c=Bn,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);P&&p&&(h.trace=()=>{var L=typeof y=="number"?s:y.v;u()[L]});var E={i:y,v:h,k:n,a:null,e:null,prev:r,next:o};Bn=E;try{if(t===null){var D=document.createDocumentFragment();D.append(t=Yt())}return E.e=$t(()=>i(t,h,y,u),ue),E.e.prev=r&&r.e,E.e.next=o&&o.e,r===null?f||(e.first=E):(r.next=E,r.e.next=E.e),o!==null&&(o.prev=E,o.e.prev=E.e),E}finally{Bn=c}}function Am(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 _a(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 Fe(t,e,r,o,a){ue&&Lt();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 mm(t,e,r,o,a,n){let s=ue;ue&&Lt();var i=P&&n&&He?.function[eo],l,u,f=null;ue&&be.nodeType===cd&&(f=be,Lt());var c=ue?be:t,p,m=Bn;Kt(()=>{let h=e()||null;var y=a?a():r||h==="svg"?ud:null;if(h!==l){var E=Bn;pm(m),p&&(h===null?wo(p,()=>{p=null,u=null}):h===u?Fn(p):(It(p),Hd(!1))),h&&h!==u&&(p=$t(()=>{if(f=ue?f:y?document.createElementNS(y,h):document.createElement(h),P&&n&&(f.__svelte_meta={parent:fa,loc:{file:i,line:n[0],column:n[1]}}),Gr(f,f),o){ue&&zj(h)&&f.append(document.createComment(""));var D=ue?Ot(f):f.appendChild(Yt());ue&&(D===null?qt(!1):jt(D)),o(f,D)}de.nodes_end=f,c.before(f)})),l=h,l&&(u=l),Hd(!0),pm(E)}},65536),s&&(qt(!0),jt(c))}function Xo(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),P&&Jj(e.hash,a)}})}function _m(t,e){var r=void 0,o;Kt(()=>{r!==(r=e())&&(o&&(It(o),o=null),r&&(o=$t(()=>{br(()=>r(t))})))})}function ev(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||rv.includes(o[s-1]))&&(i===o.length||rv.includes(o[i]))?o=(s===0?"":o.substring(0,s))+o.substring(i+1):s=i}}return o===""?null:o}function ov(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 hm(t){return t[0]!=="-"||t[1]!=="-"?t.toLowerCase():t}function nv(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(hm)),a&&l.push(...Object.keys(a).map(hm));var u=0,f=-1;let y=t.length;for(var c=0;c{Sn(t,t.__value)});e.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),kr(()=>{e.disconnect()})}function zd(t,e,r=e){var o=!0;Pu(t,"change",a=>{var n=a?"[selected]":":checked",s;if(t.multiple)s=[].map.call(t.querySelectorAll(n),Lu);else{var i=t.querySelector(n)??t.querySelector("option:not([disabled])");s=i&&Lu(i)}r(s)}),br(()=>{var a=e();if(Sn(t,a,o),o&&a===void 0){var n=t.querySelector(":checked");n!==null&&(a=Lu(n),r(a))}t.__value=a,o=!1}),zi(t)}function Lu(t){return"__value"in t?t.__value:t.value}var Wi=Symbol("class"),Ki=Symbol("style"),lv=Symbol("is custom element"),uv=Symbol("is html");function Br(t){if(ue){var e=!1,r=()=>{if(!e){if(e=!0,t.hasAttribute("value")){var o=t.value;We(t,"value",null),t.value=o}if(t.hasAttribute("checked")){var a=t.checked;We(t,"checked",null),t.checked=a}}};t.__on_r=r,_j(r),Ld()}}function xs(t,e){var r=Kd(t);r.value===(r.value=e??void 0)||t.value===e&&(e!==0||t.nodeName!=="PROGRESS")||(t.value=e??"")}function jm(t,e){var r=Kd(t);r.checked!==(r.checked=e??void 0)&&(t.checked=e)}function fv(t,e){e?t.hasAttribute("selected")||t.setAttribute("selected",""):t.removeAttribute("selected")}function We(t,e,r,o){var a=Kd(t);if(ue&&(a[e]=t.getAttribute(e),e==="src"||e==="srcset"||e==="href"&&t.nodeName==="LINK")){o||DE(t,e,r??"");return}a[e]!==(a[e]=r)&&(e==="loading"&&(t[Vx]=r),r==null?t.removeAttribute(e):typeof r!="string"&&Av(t).includes(e)?t[e]=r:t.setAttribute(e,r))}function dv(t,e,r,o,a=!1){var n=Kd(t),s=n[lv],i=!n[uv];let l=ue&&s;l&&qt(!1);var u=e||{},f=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 F in r){let x=r[F];if(f&&F==="value"&&x==null){t.value=t.__value="",u[F]=x;continue}if(F==="class"){var m=t.namespaceURI==="http://www.w3.org/1999/xhtml";ut(t,m,x,o,e?.[Wi],r[Wi]),u[F]=x,u[Wi]=r[Wi];continue}if(F==="style"){Ui(t,x,e?.[Ki],r[Ki]),u[F]=x,u[Ki]=r[Ki];continue}var h=u[F];if(!(x===h&&!(x===void 0&&t.hasAttribute(F)))){u[F]=x;var y=F[0]+F[1];if(y!=="$$")if(y==="on"){let $={},C="$$"+F,v=F.slice(2);var E=Hj(v);if(Gj(v)&&(v=v.slice(0,-7),$.capture=!0),!E&&h){if(x!=null)continue;t.removeEventListener(v,u[C],$),u[C]=null}if(x!=null)if(E)t[`__${v}`]=x,Ve([v]);else{let B=function(q){u[F].call(this,q)};u[C]=im(v,t,B,$)}else E&&(t[`__${v}`]=void 0)}else if(F==="style")We(t,F,x);else if(F==="autofocus")nm(t,!!x);else if(!s&&(F==="__value"||F==="value"&&x!=null))t.value=t.__value=x;else if(F==="selected"&&f)fv(t,x);else{var D=F;i||(D=Vj(D));var L=D==="defaultValue"||D==="defaultChecked";if(x==null&&!s&&!L)if(n[F]=null,D==="value"||D==="checked"){let $=t,C=e===void 0;if(D==="value"){let v=$.defaultValue;$.removeAttribute(D),$.defaultValue=v,$.value=$.__value=C?v:null}else{let v=$.defaultChecked;$.removeAttribute(D),$.defaultChecked=v,$.checked=C?v:!1}}else t.removeAttribute(F);else L||p.includes(D)&&(s||typeof x!="string")?(t[D]=x,D in n&&(n[D]=ft)):typeof x!="function"&&We(t,D,x,a)}}}return l&&qt(!0),u}function Wd(t,e,r=[],o=[],a,n=!1){yu(r,o,s=>{var i=void 0,l={},u=t.nodeName==="SELECT",f=!1;if(Kt(()=>{var p=e(...s.map(A)),m=dv(t,i,p,a,n);f&&u&&"value"in p&&Sn(t,p.value);for(let y of Object.getOwnPropertySymbols(l))p[y]||It(l[y]);for(let y of Object.getOwnPropertySymbols(p)){var h=p[y];y.description===Ip&&(!i||h!==i[y])&&(l[y]&&It(l[y]),l[y]=$t(()=>_m(t,()=>h))),m[y]=h}i=m}),u){var c=t;br(()=>{Sn(c,i.value,!0),zi(c)})}f=!0})}function Kd(t){return t.__attributes??(t.__attributes={[lv]:t.nodeName.includes("-"),[uv]:t.namespaceURI===qx})}var sv=new Map;function Av(t){var e=sv.get(t.nodeName);if(e)return e;sv.set(t.nodeName,e=[]);for(var r,o=t,a=Element.prototype;a!==o;){r=fd(o);for(var n in r)r[n].set&&e.push(n);o=gn(o)}return e}function DE(t,e,r){P&&(e==="srcset"&&FE(t,r)||xm(t.getAttribute(e)??"",r)||lj(e,t.outerHTML.replace(t.innerHTML,t.innerHTML&&"..."),String(r)))}function xm(t,e){return t===e?!0:new URL(t,document.baseURI).href===new URL(e,document.baseURI).href}function iv(t){return t.split(",").map(e=>e.trim().split(" ").filter(Boolean))}function FE(t,e){var r=iv(t.srcset),o=iv(e);return o.length===r.length&&o.every(([a,n],s)=>n===r[s][1]&&(xm(r[s][0],a)||xm(a,r[s][0])))}function Cn(t,e,r=e){var o=ro(),a=new WeakSet;Pu(t,"input",n=>{P&&t.type==="checkbox"&&Sp();var s=n?t.defaultValue:t.value;if(s=vm(t)?km(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))}}),(ue&&t.defaultValue!==t.value||Ge(e)==null&&t.value)&&(r(vm(t)?km(t.value):t.value),Ze!==null&&a.add(Ze)),Wt(()=>{P&&t.type==="checkbox"&&Sp();var n=e();if(t===document.activeElement){var s=$u??Ze;if(a.has(s))return}vm(t)&&n===km(t.value)||t.type==="date"&&!n&&!t.value||n!==t.value&&(t.value=n??"")})}function bm(t,e,r=e){Pu(t,"change",o=>{var a=o?t.defaultChecked:t.checked;r(a)}),(ue&&t.defaultChecked!==t.checked||Ge(e)==null)&&r(t.checked),Wt(()=>{var o=e();t.checked=!!o})}function vm(t){var e=t.type;return e==="number"||e==="range"}function km(t){return t===""?null:+t}function cv(t,e){return t===e||t?.[Ar]===e}function wm(t={},e,r,o){return br(()=>{var a,n;return Wt(()=>{a=n,n=o?.()||[],Ge(()=>{t!==r(...n)&&(e(t,...n),a&&cv(r(...a),t)&&e(null,...a))})}),()=>{oo(()=>{n&&cv(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 ym(t=!1){let e=He,r=e.l.u;if(!r)return;let o=()=>ma(e.s);if(t){let a=0,n={},s=bn(()=>{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=()=>A(s)}r.b.length&&Tu(()=>{pv(e,o),ns(r.b)}),mt(()=>{let a=Ge(()=>r.m.map(Gx));return()=>{for(let n of a)typeof n=="function"&&n()}}),r.a.length&&mt(()=>{pv(e,o),ns(r.a)})}function pv(t,e){if(t.l.s)for(let r of t.l.s)A(r);e()}function Yd(t,e,r){if(t==null)return e(void 0),r&&r(void 0),or;let o=Ge(()=>t.subscribe(e,r));return o.unsubscribe?()=>o.unsubscribe():o}var Zi=[];function Jd(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 uo(t){let e;return Yd(t,r=>e=r)(),e}var Xd=!1,Em=Symbol();function Sr(t,e,r){let o=r[e]??(r[e]={store:null,source:In(void 0),unsubscribe:or});if(P&&(o.source.label=e),o.store!==t&&!(Em 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=Yd(t,n=>{a?o.source.v=n:Y(o.source,n)}),a=!1}return t&&Em in r?uo(t):A(o.source)}function Cr(){let t={};function e(){kr(()=>{for(var r in t)t[r].unsubscribe();rr(t,Em,{enumerable:!1,value:!0})})}return[t,e]}function $m(t){var e=Xd;try{return Xd=!1,[t(),Xd]}finally{Xd=e}}var ME={get(t,e){if(!t.exclude.includes(e))return A(t.version),e in t.special?t.special[e]():t.props[e]},set(t,e,r){if(!(e in t.special)){var o=de;try{Rt(t.parent_effect),t.special[e]=V({get[e](){return t.props[e]}},e,4)}finally{Rt(o)}}return t.special[e](r),Cd(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),Cd(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 $e(t,e){return new Proxy({props:t,exclude:e,special:{},version:qr(0),parent_effect:de},ME)}var NE={get(t,e){let r=t.props.length;for(;r--;){let o=t.props[r];if(as(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];as(a)&&(a=a());let n=xr(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(as(o)&&(o=o()),typeof o=="object"&&o!==null&&e in o){let a=xr(o,e);return a&&!a.configurable&&(a.configurable=!0),a}}},has(t,e){if(e===Ar||e===Fi)return!1;for(let r of t.props)if(as(r)&&(r=r()),r!=null&&e in r)return!0;return!1},ownKeys(t){let e=[];for(let r of t.props)if(as(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 Ce(...t){return new Proxy({props:t},NE)}function V(t,e,r,o){var a=!sa||(r&2)!==0,n=(r&8)!==0,s=(r&16)!==0,i=o,l=!0,u=()=>(l&&(l=!1,i=s?Ge(o):o),i),f;if(n){var c=Ar in t||Fi in t;f=xr(t,e)?.set??(c&&e in t?F=>t[e]=F:void 0)}var p,m=!1;n?[p,m]=$m(()=>t[e]):p=t[e],p===void 0&&o!==void 0&&(p=u(),f&&(a&&tj(e),f(p)));var h;if(a?h=()=>{var F=t[e];return F===void 0?u():(l=!0,F)}:h=()=>{var F=t[e];return F!==void 0&&(i=void 0),F===void 0?i:F},a&&(r&4)===0)return h;if(f){var y=t.$$legacy;return function(F,x){return arguments.length>0?((!a||!x||y||m)&&f(x?h():F),F):h()}}var E=!1,D=((r&1)!==0?bn:ds)(()=>(E=!1,h()));P&&(D.label=e),n&&A(D);var L=de;return function(F,x){if(arguments.length>0){let $=x?A(D):a&&n?pt(F):F;return Y(D,$),E=!0,i!==void 0&&(i=$),F}return zo&&E||(L.f&16384)!==0?D.v:A(D)}}function _v(t){return new Im(t)}var za,yo,Im=class{constructor(e){zt(this,za);zt(this,yo);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 A(r.get(s)??o(s,Reflect.get(n,s)))},has(n,s){return s===Fi?!0:(A(r.get(s)??o(s,Reflect.get(n,s))),Reflect.has(n,s))},set(n,s,i){return Y(r.get(s)??o(s,i),i),Reflect.set(n,s,i)}});ur(this,yo,(e.hydrate?fm:Se)(e.component,{target:e.target,anchor:e.anchor,props:a,context:e.context,intro:e.intro??!1,recover:e.recover})),!Vo&&(!e?.props?.$$host||e.sync===!1)&&Ri(),ur(this,za,a.$$events);for(let n of Object.keys(ye(this,yo)))n==="$set"||n==="$destroy"||n==="$on"||rr(this,n,{get(){return ye(this,yo)[n]},set(s){ye(this,yo)[n]=s},enumerable:!0});ye(this,yo).$set=n=>{Object.assign(a,n)},ye(this,yo).$destroy=()=>{Jo(ye(this,yo))}}$set(e){ye(this,yo).$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,yo).$destroy()}};za=new WeakMap,yo=new WeakMap;var VE;typeof HTMLElement=="function"&&(VE=class extends HTMLElement{constructor(e,r,o){super();Ye(this,"$$ctor");Ye(this,"$$s");Ye(this,"$$c");Ye(this,"$$cn",!1);Ye(this,"$$d",{});Ye(this,"$$r",!1);Ye(this,"$$p_d",{});Ye(this,"$$l",{});Ye(this,"$$l_u",new Map);Ye(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),k(n,s)}};if(await Promise.resolve(),!this.$$cn||this.$$c)return;let r={},o=UE(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]=Dm(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=_v({component:this.$$ctor,target:this.shadowRoot||this,props:{...this.$$d,$$slots:r,$$host:this}}),this.$$me=Od(()=>{Wt(()=>{this.$$r=!0;for(let a of Dp(this.$$c)){if(!this.$$p_d[a]?.reflect)continue;this.$$d[a]=this.$$c[a];let n=Dm(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]=Dm(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 Dp(this.$$p_d).find(r=>this.$$p_d[r].attribute===e||!this.$$p_d[r].attribute&&r.toLowerCase()===e)||e}});function Dm(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 UE(t){let e={};return t.childNodes.forEach(r=>{e[r.slot||"default"]=!0}),e}var zE={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"},hv=zE;var WE=lm("");function Te(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]),o=$e(r,["name","color","size","strokeWidth","absoluteStrokeWidth","iconNode"]);ae(e,!1);let a=V(e,"name",8,void 0),n=V(e,"color",8,"currentColor"),s=V(e,"size",8,24),i=V(e,"strokeWidth",8,2),l=V(e,"absoluteStrokeWidth",8,!1),u=V(e,"iconNode",24,()=>[]),f=(...h)=>h.filter((y,E,D)=>!!y&&D.indexOf(y)===E).join(" ");ym();var c=WE();Wd(c,(h,y)=>({...hv,...o,width:s(),height:s(),stroke:n(),"stroke-width":h,class:y}),[()=>(ma(l()),ma(i()),ma(s()),Ge(()=>l()?Number(i())*24/Number(s()):i())),()=>(ma(a()),ma(r),Ge(()=>f("lucide-icon","lucide",a()?`lucide-${a()}`:"",r.class)))]);var p=w(c);Xe(p,1,u,it,(h,y)=>{var E=Ae(()=>Bp(A(y),2));let D=()=>A(E)[0],L=()=>A(E)[1];var F=X(),x=J(F);mm(x,D,!0,($,C)=>{Wd($,()=>({...L()}))}),k(h,F)});var m=S(p);Fe(m,e,"default",{},null),b(c),k(t,c),ne()}function Qd(t,e){let r=$e(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"}]];Te(t,Ce({name:"arrow-down-wide-narrow"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Tn(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M12 5v14"}],["path",{d:"m19 12-7 7-7-7"}]];Te(t,Ce({name:"arrow-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function eA(t,e){let r=$e(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"}]];Te(t,Ce({name:"arrow-up-narrow-wide"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function tA(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m5 12 7-7 7 7"}],["path",{d:"M12 19V5"}]];Te(t,Ce({name:"arrow-up"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Ru(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M20 6 9 17l-5-5"}]];Te(t,Ce({name:"check"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function rA(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m6 9 6 6 6-6"}]];Te(t,Ce({name:"chevron-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function oA(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m9 18 6-6-6-6"}]];Te(t,Ce({name:"chevron-right"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function aA(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m7 20 5-5 5 5"}],["path",{d:"m7 4 5 5 5-5"}]];Te(t,Ce({name:"chevrons-down-up"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function nA(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"m7 15 5 5 5-5"}],["path",{d:"m7 9 5-5 5 5"}]];Te(t,Ce({name:"chevrons-up-down"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function vs(t,e){let r=$e(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"}]];Te(t,Ce({name:"clipboard"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function sA(t,e){let r=$e(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"}]];Te(t,Ce({name:"file-json"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Gu(t,e){let r=$e(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"}]];Te(t,Ce({name:"group"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Hu(t,e){let r=$e(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"}]];Te(t,Ce({name:"image"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Vu(t,e){let r=$e(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"}]];Te(t,Ce({name:"lock-keyhole-open"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Uu(t,e){let r=$e(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"}]];Te(t,Ce({name:"lock-keyhole"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function zu(t,e){let r=$e(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"}]];Te(t,Ce({name:"merge"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Wu(t,e){let r=$e(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"}]];Te(t,Ce({name:"pencil"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function On(t,e){let r=$e(e,["children","$$slots","$$events","$$legacy"]);let o=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];Te(t,Ce({name:"plus"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function iA(t,e){let r=$e(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"}]];Te(t,Ce({name:"rotate-ccw"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function ks(t,e){let r=$e(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"}]];Te(t,Ce({name:"save"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}function Ku(t,e){let r=$e(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"}]];Te(t,Ce({name:"split"},()=>r,{get iconNode(){return o},children:(a,n)=>{var s=X(),i=J(s);Fe(i,e,"default",{},null),k(a,s)},$$slots:{default:!0}}))}var gv=(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=Je.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=Je.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"),f=n.folder;l!==n.date.toFormat("yyyy")&&(f=f.replace(n.date.toFormat("yyyy"),l)),u!==n.date.toFormat("MM")&&(f=f.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: ${f}`);let y=o.stretch_to_existing||h===m?p??f:f,E=ht.build(y,h,n.ext);t.app.vault.getFileByPath(E)||r.nodes.push(new kt(E,[],!1,!1,!1)),r.edges.push(new ct(n.path,E,o.default_field,"date_note"))}),r};function KE(t,e,r){let o=e?.[ze["dendron-note-field"]]??t.settings.explicit_edge_sources.dendron_note.default_field;if(o){if(typeof o!="string")return lt({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 lt({path:r,code:"invalid_field_value",message:`dendron-note-field is not a valid field: '${o}'`})}else return xt(void 0);return Xt({field:o})}function Fm(t,e,r,o){let{delimiter:a}=t.settings.explicit_edge_sources.dendron_note,n=ht.basename(r).split(a);if(n.length===1)return;let s=KE(t,o,r);if(!s.ok){s.error&&e.errors.push(s.error);return}let i=ht.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 kt(i,[],!1,!1,!1)),Fm(t,e,i,{[ze["dendron-note-field"]]:l})),e.edges.push(new ct(r,i,l,"dendron_note"))}var xv=(t,e)=>{let r={nodes:[],edges:[],errors:[]};return t.settings.explicit_edge_sources.dendron_note.enabled&&(e.obsidian?.forEach(({file:o,cache:a})=>{Fm(t,r,o.path,a?.frontmatter)}),e.dataview?.forEach(o=>{Fm(t,r,o.file.path,o)})),r};var jv=(t,e,r)=>{if(!e)return xt(void 0);let o=e[ze["folder-note-field"]];if(o){if(typeof o!="string")return lt({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 lt({path:r,code:"invalid_field_value",message:`folder-note-field is not a valid field: '${o}'`})}else return xt(void 0);let a=!!e[ze["folder-note-recurse"]];return Xt({field:o,recurse:a})},vv=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=>vv(t,n,r,!0)))},kv=async(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[];return e.obsidian?.forEach(({file:a,cache:n})=>{if(!n)return;let s=jv(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=jv(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})=>vv(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 ZE=(t,e,r)=>{let o=e?.[ze["johnny-decimal-note-field"]]??t.settings.explicit_edge_sources.johnny_decimal_note.default_field;if(o){if(typeof o!="string")return lt({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 lt({path:r,code:"invalid_field_value",message:`johnny-decimal-note-field is not a valid BC field: '${o}'`})}else return xt(void 0);return Xt({field:o})},YE=(t,e,r,o)=>{let a=ZE(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(f=>f.decimals===s);if(!i)return;t.app.vault.getFileByPath(i.path)||e.nodes.push(new kt(i.path,[],!1,!1,!1));let{field:u}=a.data;e.edges.push(new ct(r.path,i.path,u,"johnny_decimal_note"))},bv=(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=ht.basename(s.path),u=l.match(a)?.[1];u&&n.push({basename:l,path:s.path,metadata:i?.frontmatter,decimals:ec(u,o)})}),e.dataview?.forEach(s=>{let i=ht.basename(s.file.path),l=i.match(a)?.[1];l&&n.push({basename:i,metadata:s,path:s.file.path,decimals:ec(l,o)})}),n.forEach(s=>{YE(t,r,s,n)}),r};var wv=require("obsidian");var bs=(t,e,r)=>{let o=ht.ensure_ext(e),a=t.metadataCache.getFirstLinkpathDest(o,r);return[a?.path??sn.resolve_to_absolute_path(t,o,r),a]},yv=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 wv.Notice("Copied to clipboard and logged to console.")};var Ev=(t,e,r)=>{if(!e)return xt(void 0);let o=e[ze["list-note-field"]];if(o){if(typeof o!="string")return lt({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 lt({path:r,code:"invalid_field_value",message:`list-note-field is not a valid BC field: '${o}'`})}else return xt(void 0);let a=e[ze["list-note-neighbour-field"]]??t.settings.explicit_edge_sources.list_note.default_neighbour_field;if(a){if(typeof a!="string")return lt({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 lt({path:r,code:"invalid_field_value",message:`list-note-neighbour-field is not a valid BC field: '${a}'`})}let n=!!e[ze["list-note-exclude-index"]];return Xt({field:o,exclude_index:n,neighbour_field:a??void 0})},JE=/^\s*([-\w\s]+)\b/,$v=(t,e,r)=>{let o=JE.exec(e.text)?.[1];return o?t.settings.edge_fields.find(a=>a.label===o)?Xt({field:o}):lt({path:r,code:"invalid_field_value",message:`Field override is not a valid BC field: ${o}. Line: ${e.position.start.line}`}):Xt(void 0)},XE=({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=Ev(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=Ev(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]=bs(t.app,i.path,o.file.path);if(u||r.nodes.push(new kt(l,[],!1,!1,!1)),!a.data.exclude_index&&n.position.start.col===0){let f=$v(t,n,o.file.path);if(!f.ok){f.error&&r.errors.push(f.error);return}r.edges.push(new ct(o.file.path,l,f.data?.field??a.data.field,"list_note"))}a.data.neighbour_field&&XE({plugin:t,results:r,list_note_page:o,list_note_info:a,source_list_item_i:s,source_id:l}),n.children.forEach(f=>{let c=f.outlinks.at(0);if(!c)return;let p=$v(t,f,o.file.path);if(!p.ok){p.error&&r.errors.push(p.error);return}let[m,h]=bs(t.app,c.path,o.file.path);h||r.nodes.push(new kt(m,[],!1,!1,!1)),r.edges.push(new ct(l,m,p.data?.field??a.data.field,"list_note"))})})}),r};function Dv(t,e,r){if(!e)return xt(void 0);let o=e[ze["regex-note-regex"]];if(o){if(typeof o!="string")return lt({path:r,code:"invalid_field_value",message:`${ze["regex-note-regex"]} is not a string: '${o}'`})}else return xt(void 0);let a=e[ze["regex-note-flags"]];if(a&&typeof a!="string")return lt({path:r,code:"invalid_field_value",message:`${ze["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 lt({path:r,code:"invalid_field_value",message:`${ze["regex-note-regex"]} is not a valid regex: '${o}'`})}let s=e[ze["regex-note-field"]]??t.settings.explicit_edge_sources.regex_note.default_field;if(s){if(typeof s!="string")return lt({path:r,code:"invalid_field_value",message:`${ze["regex-note-field"]} is not a string: '${s}'`});if(!t.settings.edge_fields.find(i=>i.label===s))return lt({path:r,code:"invalid_field_value",message:`${ze["regex-note-field"]} is not a valid field: '${s}'`})}else return xt(void 0);return Xt({field:s,regex:n})}var Fv=(t,e)=>{let r={nodes:[],edges:[],errors:[]},o=[];if(e.obsidian?.forEach(({file:n,cache:s})=>{let i=Dv(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=Dv(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 Bv=(t,e,r)=>{if(!e)return xt(void 0);let o=e[ze["tag-note-tag"]];if(o||(o=e["BC-tag-note"],o&&H.warn(`'BC-tag-note' is deprecated in favor of ${ze["tag-note-tag"]}`)),o){if(typeof o!="string")return lt({path:r,code:"invalid_field_value",message:`tag-note-tag is not a string: '${o}'`})}else return xt(void 0);let a=QA(o,"#"),n=e[ze["tag-note-field"]]??t.settings.explicit_edge_sources.tag_note.default_field;if(n){if(typeof n!="string")return lt({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 lt({path:r,code:"invalid_field_value",message:`tag-note-field is not a valid BC field: '${n}'`})}else return xt(void 0);let s=!!e[ze["tag-note-exact"]];return Xt({tag:a,field:n,exact:s})},Sv=(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=QA(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=Bv(t,i?.frontmatter,s.path);if(!u.ok){u.error&&r.errors.push(u.error);return}let{tag:f,field:c,exact:p}=u.data;o.push({tag:f,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=Bv(t,s,i.path);if(!l.ok){l.error&&r.errors.push(l.error);return}let{tag:u,field:f,exact:c}=l.data;o.push({tag:u,exact:c,field:f,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 lA(t){return Array.isArray(t)?t:[t]}function Cv(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 Tv(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 Mv(t,e){let r={};return Object.entries(t).forEach(([o,a])=>{r[o]=e(a)}),r}function ha(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 QE=/\[(.+?)\]\((.+?)\)/,Nv=(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]=bs(t.app,s.link,a.path);u||r.nodes.push(new kt(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)||lA(a[s]).flat().forEach(i=>{let l;if(i)typeof i=="string"?l=QE.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,f]=bs(t.app,l,n.path);f||r.nodes.push(new kt(u,[],!1,!1,!1)),r.edges.push(new ct(n.path,u,s,"typed_link"))})})}),r};var Pv={tag_note:Sv,list_note:Iv,date_note:gv,typed_link:Nv,regex_note:Fv,folder_note:kv,dendron_note:xv,dataview_note:wg,johnny_decimal_note:bv};var qv=t=>Ca.is_enabled(t)?{obsidian:null,dataview:Ca.get_api()?.pages().values}:{obsidian:t.vault.getMarkdownFiles().map(e=>({file:e,cache:t.metadataCache.getFileCache(e)})),dataview:null};function e$(t){let e=[];return t.obsidian?t.obsidian.forEach(({file:r,cache:o})=>{let a=[],n=!1,s=!1,i=(0,Lv.parseFrontMatterAliases)(o?.frontmatter);Array.isArray(i)&&i.length>0&&(a=i),o?.frontmatter?.[ze["ignore-in-edges"]]&&(n=!0),o?.frontmatter?.[ze["ignore-out-edges"]]&&(s=!0),e.push(new kt(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[ze["ignore-in-edges"]]&&(a=!0),r[ze["ignore-out-edges"]]&&(n=!0),e.push(new kt(r.file.path,o,!0,a,n))}),e}var Rv=async t=>{let e=new Or,r=new Or,o=qv(t.app),a=e$(o);H.debug(e.elapsedMessage("get_initial_nodes")),e.reset();let n=await Promise.all(H_.map(async l=>{let u=await Pv[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 zn(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 xA=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(f){try{u(o.next(f))}catch(c){s(c)}}function l(f){try{u(o.throw(f))}catch(c){s(c)}}function u(f){f.done?n(f.value):a(f.value).then(i,l)}u((o=o.apply(t,e||[])).next())})}var Qi=require("obsidian");var t$=M(' '),r$=M(' ');function Ji(t,e){"use strict";let r=V(e,"href",3,void 0),o=V(e,"title",3,void 0),a=V(e,"onclick",3,()=>{}),n=V(e,"oncontextmenu",3,()=>{}),s=V(e,"onkeydown",3,()=>{});var i=X(),l=J(i);{var u=c=>{var p=t$();p.__click=function(...h){a()?.apply(this,h)},p.__contextmenu=function(...h){n()?.apply(this,h)};var m=w(p,!0);b(p),oe(()=>{We(p,"href",r()),We(p,"title",o()),De(m,e.tag)}),k(c,p)},f=c=>{var p=r$();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(()=>{We(p,"title",o()),De(m,e.tag)}),k(c,p)};ie(l,c=>{r()!==void 0?c(u):c(f,!1)})}k(t,i)}Ve(["click","contextmenu","keydown"]);var o$=(t,e,r,o,a)=>{e(r.fields.find(n=>n.label===t.currentTarget.value)),e()&&o()?.(e()),a()&&e(void 0)},a$=M(""),n$=M('');function Xi(t,e){ae(e,!0);let r=V(e,"undefine_on_change",3,!0),o=V(e,"field",15,void 0),a=V(e,"placeholder",3,void 0),n=V(e,"onselect",3,void 0);var s=n$();s.__change=[o$,o,e,n,r];var i=w(s),l=w(i,!0);b(i),i.value=i.__value="";var u=S(i);Xe(u,17,()=>e.fields,it,(c,p)=>{let m=()=>A(p).label;var h=a$(),y=w(h,!0);b(h);var E={};oe(()=>{De(y,m()),E!==(E=m())&&(h.value=(h.__value=m())??"")}),k(c,h)}),b(s);var f;zi(s),oe(()=>{De(l,a()??"Select Field"),f!==(f=o()?.label??"")&&(s.value=(s.__value=o()?.label??"")??"",Sn(s,o()?.label??""))}),k(t,s),ne()}Ve(["change"]);var s$=M('Unsaved changes'),i$=(t,e)=>e.fields="",l$=(t,e,r)=>e.fields.scroll_to(A(r).edge_fields.last()?.label??""),u$=M(''),f$=(t,e,r)=>e.fields.remove(A(r)),d$=M('

'),A$=M(''),c$=M(""),p$=M('
Groups
'),m$=M('
'),_$=(t,e)=>e.groups="",h$=(t,e,r)=>e.groups.scroll_to(A(r).edge_field_groups.last()?.label??""),g$=M(''),x$=(t,e,r)=>e.groups.remove(A(r)),j$=M('
'),v$=M(''),k$=M('
Fields
'),b$=M('

Fields


Groups

');function Bm(t,e){ae(e,!0);let r=V(e,"plugin",7),o=Le(pt(r().settings)),a=pt({fields:"",groups:""}),n={save:()=>Yi(void 0,void 0,void 0,function*(){r().settings=pr(A(o)),yield Promise.all([r().saveSettings(),r().rebuildGraph()]),Y(o,r().settings,!0)}),fields:{make_id:T=>`BC-edge-field-${T}`,scroll_to:T=>{let O=document.getElementById(n.fields.make_id(T));O&&(O.scrollIntoView({behavior:"smooth",block:"center"}),O.focus())},add:()=>{let T={label:`Edge Field ${A(o).edge_fields.length+1}`};A(o).edge_fields.push(T),setTimeout(()=>n.fields.scroll_to(T.label),0),A(o).is_dirty=!0},remove:T=>{A(o).edge_fields=A(o).edge_fields.filter(O=>O.label!==T.label),A(o).views.side.matrix.custom_sort_field_labels=A(o).views.side.matrix.custom_sort_field_labels.filter(O=>O!==T.label),A(o).edge_field_groups.forEach(O=>{O.fields=O.fields.filter(Z=>Z!==T.label)}),A(o).is_dirty=!0},rename:(T,O)=>{if(T.label!==O){{if(O==="")return new Qi.Notice("Field label cannot be empty.");if(A(o).edge_fields.some(Z=>Z.label===O))return new Qi.Notice("Field label must be unique.")}A(o).edge_field_groups.forEach(Z=>{let me=Z.fields.indexOf(T.label);me!==-1&&(Z.fields[me]=O)}),A(o).implied_relations.transitive.forEach(Z=>{Z.chain=Z.chain.map(me=>me.field===T.label?Object.assign(Object.assign({},me),{field:O}):me),Z.close_field=Z.close_field===T.label?O:Z.close_field}),A(o).explicit_edge_sources.tag_note.default_field=A(o).explicit_edge_sources.tag_note.default_field===T.label?O:A(o).explicit_edge_sources.tag_note.default_field,A(o).explicit_edge_sources.list_note.default_neighbour_field=A(o).explicit_edge_sources.list_note.default_neighbour_field===T.label?O:A(o).explicit_edge_sources.list_note.default_neighbour_field,A(o).explicit_edge_sources.dendron_note.default_field=A(o).explicit_edge_sources.dendron_note.default_field===T.label?O:A(o).explicit_edge_sources.dendron_note.default_field,A(o).explicit_edge_sources.johnny_decimal_note.default_field=A(o).explicit_edge_sources.johnny_decimal_note.default_field===T.label?O:A(o).explicit_edge_sources.johnny_decimal_note.default_field,A(o).explicit_edge_sources.date_note.default_field=A(o).explicit_edge_sources.date_note.default_field===T.label?O:A(o).explicit_edge_sources.date_note.default_field,A(o).explicit_edge_sources.regex_note.default_field=A(o).explicit_edge_sources.regex_note.default_field===T.label?O:A(o).explicit_edge_sources.regex_note.default_field,A(o).views.side.matrix.custom_sort_field_labels=A(o).views.side.matrix.custom_sort_field_labels.map(Z=>Z===T.label?O:Z),T.label=O,A(o).is_dirty=!0}}},groups:{make_id:T=>`BC-edge-group-${T}`,scroll_to:T=>{let O=document.getElementById(n.groups.make_id(T));O&&(O.scrollIntoView({behavior:"smooth",block:"center"}),O.focus())},add:()=>{let T={label:`Group ${A(o).edge_field_groups.length+1}`,fields:[]};A(o).edge_field_groups.push(T),setTimeout(()=>n.groups.scroll_to(T.label),0),A(o).is_dirty=!0},remove:T=>{A(o).edge_field_groups=A(o).edge_field_groups.filter(O=>O.label!==T.label),A(o).is_dirty=!0},rename:(T,O)=>{T.label!==O&&(A(o).views.page.trail.field_group_labels=A(o).views.page.trail.field_group_labels.map(Z=>Z===T.label?O:Z),A(o).views.page.prev_next.field_group_labels.prev=A(o).views.page.prev_next.field_group_labels.prev.map(Z=>Z===T.label?O:Z),A(o).views.page.prev_next.field_group_labels.next=A(o).views.page.prev_next.field_group_labels.next.map(Z=>Z===T.label?O:Z),A(o).views.side.matrix.field_group_labels=A(o).views.side.matrix.field_group_labels.map(Z=>Z===T.label?O:Z),A(o).views.side.matrix.field_group_labels=A(o).views.side.matrix.field_group_labels.map(Z=>Z===T.label?O:Z),T.label=O,A(o).is_dirty=!0)},add_field:(T,O)=>{T&&(T.fields.push(O),A(o).is_dirty=!0)},remove_field:(T,O)=>{T&&(T.fields=T.fields.filter(Z=>Z!==O),A(o).is_dirty=!0)}}},s={field_group:(T,O)=>Z=>{let me=new Qi.Menu;me.addItem(Me=>Me.setTitle("Remove from Group").setIcon("x").onClick(()=>n.groups.remove_field(A(o).edge_field_groups.find(at=>at.label===O),T.label))),me.showAtMouseEvent(Z)},group_field:(T,O)=>Z=>{let me=new Qi.Menu;me.addItem(Me=>Me.setTitle("Remove Field").setIcon("x").onClick(()=>n.groups.remove_field(T,O))),me.showAtMouseEvent(Z)}};var i=b$(),l=w(i),u=w(l);u.__click=function(...T){n.save?.apply(this,T)};var f=w(u);ks(f,{get size(){return 20}}),la(),b(u);var c=S(u,2);{var p=T=>{var O=s$();k(T,O)};ie(c,T=>{A(o).is_dirty&&T(p)})}b(l);var m=S(l,2),h=S(w(m),2),y=w(h);Br(y);var E=S(y,2);E.__click=[i$,a],b(h);var D=S(h,2);{var L=T=>{var O=u$();O.__click=[l$,n,o];var Z=w(O);Tn(Z,{get size(){return 20}}),b(O),k(T,O)};ie(D,T=>{A(o).edge_fields.length>3&&T(L)})}b(m);var F=S(m,2),x=w(F);Xe(x,17,()=>A(o).edge_fields.filter(T=>T.label.includes(a.fields.toLowerCase())),it,(T,O)=>{let Z=Ae(()=>A(o).edge_field_groups.filter(Jt=>Jt.fields.includes(A(O).label)).map(Jt=>Jt.label));var me=m$(),Me=w(me),at=w(Me);Br(at);var fo=S(at,2);fo.__click=[f$,n,O],b(Me);var Fo=S(Me,2);lo(Fo,()=>A(o).edge_field_groups,Jt=>{var zr=p$(),ba=S(w(zr),2);Xe(ba,17,()=>A(Z),it,(ir,gt)=>{var Mt=d$(),Er=w(Mt);{let Bo=Ae(()=>s.field_group(A(O),A(gt)));Ji(Er,{get tag(){return A(gt)},title:"Jump to group. Right click for more actions.",onclick:()=>n.groups.scroll_to(A(gt)),get oncontextmenu(){return A(Bo)}})}b(Mt),k(ir,Mt)});var bt=S(ba,2);{var Vt=ir=>{var gt=A$();gt.textContent="",k(ir,gt)};ie(bt,ir=>{A(Z).length||ir(Vt)})}var Dt=S(bt,2);Dt.__change=ir=>{ir.currentTarget.value&&(n.groups.add_field(A(o).edge_field_groups.find(gt=>gt.label===ir.currentTarget.value),A(O).label),ir.currentTarget.value="")};var Ao=w(Dt);Ao.value=Ao.__value="";var rn=S(Ao);Xe(rn,17,()=>A(o).edge_field_groups,it,(ir,gt)=>{var Mt=X(),Er=J(Mt);{var Bo=ea=>{var ta=c$(),on=w(ta,!0);b(ta);var wa={};oe(()=>{De(on,A(gt).label),wa!==(wa=A(gt).label)&&(ta.value=(ta.__value=A(gt).label)??"")}),k(ea,ta)};ie(Er,ea=>{A(gt).fields.includes(A(O).label)||ea(Bo)})}k(ir,Mt)}),b(Dt),Dt.value=Dt.__value="",b(zr),k(Jt,zr)}),b(me),oe(Jt=>{We(at,"id",Jt),xs(at,A(O).label)},[()=>n.fields.make_id(A(O).label)]),Rr("blur",at,Jt=>n.fields.rename(A(O),Jt.currentTarget.value)),k(T,me)});var $=S(x,2);$.__click=function(...T){n.fields.add?.apply(this,T)};var C=w($);On(C,{get size(){return 20}}),la(),b($),b(F);var v=S(F,4),B=S(w(v),2),q=w(B);Br(q);var re=S(q,2);re.__click=[_$,a],b(B);var ge=S(B,2);{var le=T=>{var O=g$();O.__click=[h$,n,o];var Z=w(O);Tn(Z,{get size(){return 20}}),b(O),k(T,O)};ie(ge,T=>{A(o).edge_field_groups.length>3&&T(le)})}b(v);var Be=S(v,2),R=w(Be);Xe(R,17,()=>A(o).edge_field_groups.filter(T=>T.label.includes(a.groups.toLowerCase())),it,(T,O)=>{var Z=k$(),me=w(Z),Me=w(me);Br(Me);var at=S(Me,2);at.__click=[x$,n,O],b(me);var fo=S(me,2),Fo=S(w(fo),2);Xe(Fo,17,()=>A(O).fields,it,(bt,Vt)=>{var Dt=j$(),Ao=w(Dt);{let rn=Ae(()=>s.group_field(A(O),A(Vt)));Ji(Ao,{get tag(){return A(Vt)},title:"Jump to field. Right click for more actions.",onclick:()=>n.fields.scroll_to(A(Vt)),get oncontextmenu(){return A(rn)}})}b(Dt),k(bt,Dt)});var Jt=S(Fo,2);{var zr=bt=>{var Vt=v$();Vt.textContent="",k(bt,Vt)};ie(Jt,bt=>{A(O).fields.length||bt(zr)})}var ba=S(Jt,2);{let bt=Ae(()=>A(o).edge_fields.filter(Vt=>!A(O).fields.includes(Vt.label)));Xi(ba,{placeholder:"Add Field",get fields(){return A(bt)},onselect:Vt=>n.groups.add_field(A(O),Vt.label)})}b(fo),b(Z),oe(bt=>{We(Me,"id",bt),xs(Me,A(O).label)},[()=>n.groups.make_id(A(O).label)]),Rr("blur",Me,bt=>n.groups.rename(A(O),bt.currentTarget.value)),k(T,Z)});var K=S(R,2);K.__click=function(...T){n.groups.add?.apply(this,T)};var Ee=w(K);On(Ee,{get size(){return 20}}),la(),b(K),b(Be),b(i),oe(()=>{E.disabled=a.fields==="",re.disabled=a.groups===""}),Cn(y,()=>a.fields,T=>a.fields=T),Cn(q,()=>a.groups,T=>a.groups=T),k(t,i),ne()}Ve(["click","change"]);var Ja=require("obsidian");var w$=["LR","RL","TB","BT"],y$=["dagre","elk"],E$=["basis","bumpX","bumpY","cardinal","catmullRom","linear","monotoneX","monotoneY","natural","step","stepAfter","stepBefore"];function Gv(t){let e=new TextEncoder().encode(t);return btoa(String.fromCharCode(...e))}function $$(t){return`https://mermaid.ink/img/${Gv(t)}`}function I$(t){return`https://mermaid.live/edit#base64:${Gv(JSON.stringify({code:t,autoSync:!1,updateDiagram:!0,mermaid:{theme:"default"}},void 0,2))}`}function D$(t){return new zn("",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 Vn(void 0,"","graph","LR",!1,["field"],void 0,o=>o.path,!1))}var Eo={from_transitive_rule:D$,to_image_link:$$,to_live_edit_link:I$,RENDERERS:y$,DIRECTIONS:w$,CURVE_STYLES:E$};var Hv=(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 et={};t_(et,{BRAND:()=>t0,DIRTY:()=>ws,EMPTY_PATH:()=>C$,INVALID:()=>ke,NEVER:()=>q0,OK:()=>wr,ParseStatus:()=>_r,Schema:()=>Pe,ZodAny:()=>Pn,ZodArray:()=>Ya,ZodBigInt:()=>Es,ZodBoolean:()=>$s,ZodBranded:()=>Ju,ZodCatch:()=>Ps,ZodDate:()=>Is,ZodDefault:()=>Ns,ZodDiscriminatedUnion:()=>AA,ZodEffects:()=>Do,ZodEnum:()=>Os,ZodError:()=>Hr,ZodFirstPartyTypeKind:()=>we,ZodFunction:()=>pA,ZodIntersection:()=>Ss,ZodIssueCode:()=>G,ZodLazy:()=>Cs,ZodLiteral:()=>Ts,ZodMap:()=>nl,ZodNaN:()=>il,ZodNativeEnum:()=>Ms,ZodNever:()=>Qo,ZodNull:()=>Fs,ZodNullable:()=>ja,ZodNumber:()=>ys,ZodObject:()=>Vr,ZodOptional:()=>$o,ZodParsedType:()=>se,ZodPipeline:()=>Xu,ZodPromise:()=>qn,ZodReadonly:()=>qs,ZodRecord:()=>cA,ZodSchema:()=>Pe,ZodSet:()=>sl,ZodString:()=>Nn,ZodSymbol:()=>ol,ZodTransformer:()=>Do,ZodTuple:()=>xa,ZodType:()=>Pe,ZodUndefined:()=>Ds,ZodUnion:()=>Bs,ZodUnknown:()=>Za,ZodVoid:()=>al,addIssueToContext:()=>Q,any:()=>f0,array:()=>p0,bigint:()=>n0,boolean:()=>e6,coerce:()=>P0,custom:()=>Jv,date:()=>s0,datetimeRegex:()=>Zv,defaultErrorMap:()=>Wa,discriminatedUnion:()=>g0,effect:()=>F0,enum:()=>$0,function:()=>w0,getErrorMap:()=>el,getParsedType:()=>ga,instanceof:()=>o0,intersection:()=>x0,isAborted:()=>fA,isAsync:()=>tl,isDirty:()=>dA,isValid:()=>Mn,late:()=>r0,lazy:()=>y0,literal:()=>E0,makeIssue:()=>Yu,map:()=>k0,nan:()=>a0,nativeEnum:()=>I0,never:()=>A0,null:()=>u0,nullable:()=>S0,number:()=>Qv,object:()=>m0,objectUtil:()=>Sm,oboolean:()=>N0,onumber:()=>M0,optional:()=>B0,ostring:()=>O0,pipeline:()=>T0,preprocess:()=>C0,promise:()=>D0,quotelessJson:()=>F$,record:()=>v0,set:()=>b0,setErrorMap:()=>S$,strictObject:()=>_0,string:()=>Xv,symbol:()=>i0,transformer:()=>F0,tuple:()=>j0,undefined:()=>l0,union:()=>h0,unknown:()=>d0,util:()=>Ue,void:()=>c0});var Ue;(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})(Ue||(Ue={}));var Sm;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Sm||(Sm={}));var se=Ue.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ga=t=>{switch(typeof t){case"undefined":return se.undefined;case"string":return se.string;case"number":return Number.isNaN(t)?se.nan:se.number;case"boolean":return se.boolean;case"function":return se.function;case"bigint":return se.bigint;case"symbol":return se.symbol;case"object":return Array.isArray(t)?se.array:t===null?se.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?se.promise:typeof Map<"u"&&t instanceof Map?se.map:typeof Set<"u"&&t instanceof Set?se.set:typeof Date<"u"&&t instanceof Date?se.date:se.object;default:return se.unknown}};var G=Ue.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"]),F$=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Hr=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()}};Hr.create=t=>new Hr(t);var B$=(t,e)=>{let r;switch(t.code){case G.invalid_type:t.received===se.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case G.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Ue.jsonStringifyReplacer)}`;break;case G.unrecognized_keys:r=`Unrecognized key(s) in object: ${Ue.joinValues(t.keys,", ")}`;break;case G.invalid_union:r="Invalid input";break;case G.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Ue.joinValues(t.options)}`;break;case G.invalid_enum_value:r=`Invalid enum value. Expected ${Ue.joinValues(t.options)}, received '${t.received}'`;break;case G.invalid_arguments:r="Invalid function arguments";break;case G.invalid_return_type:r="Invalid function return type";break;case G.invalid_date:r="Invalid date";break;case G.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}"`:Ue.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case G.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 G.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 G.custom:r="Invalid input";break;case G.invalid_intersection_types:r="Intersection results could not be merged";break;case G.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case G.not_finite:r="Number must be finite";break;default:r=e.defaultError,Ue.assertNever(t)}return{message:r}},Wa=B$;var Vv=Wa;function S$(t){Vv=t}function el(){return Vv}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}},C$=[];function Q(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"}),ws=t=>({status:"dirty",value:t}),wr=t=>({status:"valid",value:t}),fA=t=>t.status==="aborted",dA=t=>t.status==="dirty",Mn=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}},Uv=(t,e)=>{if(Mn(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 Hr(t.common.issues);return this._error=r,this._error}}};function Oe(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 Pe=class{get description(){return this._def.description}_getType(e){return ga(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:ga(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:ga(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:ga(e)},a=this._parseSync({data:e,path:o.path,parent:o});return Uv(o,a)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ga(e)};if(!this["~standard"].async)try{let o=this._parseSync({data:e,path:[],parent:r});return Mn(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=>Mn(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:ga(e)},a=this._parse({data:e,path:o.path,parent:o}),n=await(tl(a)?a:Promise.resolve(a));return Uv(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:G.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 Do({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 $o.create(this,this._def)}nullable(){return ja.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ya.create(this)}promise(){return qn.create(this,this._def)}or(e){return Bs.create([this,e],this._def)}and(e){return Ss.create(this,e,this._def)}transform(e){return new Do({...Oe(this._def),schema:this,typeName:we.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Ns({...Oe(this._def),innerType:this,defaultValue:r,typeName:we.ZodDefault})}brand(){return new Ju({typeName:we.ZodBranded,type:this,...Oe(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Ps({...Oe(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}},T$=/^c[^\s-]{8,}$/i,O$=/^[0-9a-z]+$/,M$=/^[0-9A-HJKMNP-TV-Z]{26}$/i,N$=/^[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,P$=/^[a-z0-9_-]{21}$/i,q$=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,L$=/^[-+]?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)?)??$/,R$=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,G$="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Cm,H$=/^(?:(?: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])$/,V$=/^(?:(?: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])$/,U$=/^(([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]))$/,z$=/^(([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])$/,W$=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,K$=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Wv="((\\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])))",Z$=new RegExp(`^${Wv}$`);function Kv(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 Y$(t){return new RegExp(`^${Kv(t)}$`)}function Zv(t){let e=`${Wv}T${Kv(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 J$(t,e){return!!((e==="v4"||!e)&&H$.test(t)||(e==="v6"||!e)&&U$.test(t))}function X$(t,e){if(!q$.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 Q$(t,e){return!!((e==="v4"||!e)&&V$.test(t)||(e==="v6"||!e)&&z$.test(t))}var Nn=class t extends Pe{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==se.string){let n=this._getOrReturnCtx(e);return Q(n,{code:G.invalid_type,expected:se.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),Q(a,{code:G.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:G.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 Nn({checks:[],typeName:we.ZodString,coerce:t?.coerce??!1,...Oe(t)});function e0(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 ys=class t extends Pe{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)!==se.number){let n=this._getOrReturnCtx(e);return Q(n,{code:G.invalid_type,expected:se.number,received:n.parsedType}),ke}let o,a=new _r;for(let n of this._def.checks)n.kind==="int"?Ue.isInteger(e.data)||(o=this._getOrReturnCtx(e,o),Q(o,{code:G.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),Q(o,{code:G.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty()):n.kind==="multipleOf"?e0(e.data,n.value)!==0&&(o=this._getOrReturnCtx(e,o),Q(o,{code:G.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):n.kind==="finite"?Number.isFinite(e.data)||(o=this._getOrReturnCtx(e,o),Q(o,{code:G.not_finite,message:n.message}),a.dirty()):Ue.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"&&Ue.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 ys({checks:[],typeName:we.ZodNumber,coerce:t?.coerce||!1,...Oe(t)});var Es=class t extends Pe{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)!==se.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),Q(o,{code:G.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),Q(o,{code:G.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):Ue.assertNever(n);return{status:a.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return Q(r,{code:G.invalid_type,expected:se.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 Es({checks:[],typeName:we.ZodBigInt,coerce:t?.coerce??!1,...Oe(t)});var $s=class extends Pe{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==se.boolean){let o=this._getOrReturnCtx(e);return Q(o,{code:G.invalid_type,expected:se.boolean,received:o.parsedType}),ke}return wr(e.data)}};$s.create=t=>new $s({typeName:we.ZodBoolean,coerce:t?.coerce||!1,...Oe(t)});var Is=class t extends Pe{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==se.date){let n=this._getOrReturnCtx(e);return Q(n,{code:G.invalid_type,expected:se.date,received:n.parsedType}),ke}if(Number.isNaN(e.data.getTime())){let n=this._getOrReturnCtx(e);return Q(n,{code:G.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),Q(a,{code:G.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),o.dirty()):Ue.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,...Oe(t)});var ol=class extends Pe{_parse(e){if(this._getType(e)!==se.symbol){let o=this._getOrReturnCtx(e);return Q(o,{code:G.invalid_type,expected:se.symbol,received:o.parsedType}),ke}return wr(e.data)}};ol.create=t=>new ol({typeName:we.ZodSymbol,...Oe(t)});var Ds=class extends Pe{_parse(e){if(this._getType(e)!==se.undefined){let o=this._getOrReturnCtx(e);return Q(o,{code:G.invalid_type,expected:se.undefined,received:o.parsedType}),ke}return wr(e.data)}};Ds.create=t=>new Ds({typeName:we.ZodUndefined,...Oe(t)});var Fs=class extends Pe{_parse(e){if(this._getType(e)!==se.null){let o=this._getOrReturnCtx(e);return Q(o,{code:G.invalid_type,expected:se.null,received:o.parsedType}),ke}return wr(e.data)}};Fs.create=t=>new Fs({typeName:we.ZodNull,...Oe(t)});var Pn=class extends Pe{constructor(){super(...arguments),this._any=!0}_parse(e){return wr(e.data)}};Pn.create=t=>new Pn({typeName:we.ZodAny,...Oe(t)});var Za=class extends Pe{constructor(){super(...arguments),this._unknown=!0}_parse(e){return wr(e.data)}};Za.create=t=>new Za({typeName:we.ZodUnknown,...Oe(t)});var Qo=class extends Pe{_parse(e){let r=this._getOrReturnCtx(e);return Q(r,{code:G.invalid_type,expected:se.never,received:r.parsedType}),ke}};Qo.create=t=>new Qo({typeName:we.ZodNever,...Oe(t)});var al=class extends Pe{_parse(e){if(this._getType(e)!==se.undefined){let o=this._getOrReturnCtx(e);return Q(o,{code:G.invalid_type,expected:se.void,received:o.parsedType}),ke}return wr(e.data)}};al.create=t=>new al({typeName:we.ZodVoid,...Oe(t)});var Ya=class t extends Pe{_parse(e){let{ctx:r,status:o}=this._processInputParams(e),a=this._def;if(r.parsedType!==se.array)return Q(r,{code:G.invalid_type,expected:se.array,received:r.parsedType}),ke;if(a.exactLength!==null){let s=r.data.length>a.exactLength.value,i=r.data.lengtha.maxLength.value&&(Q(r,{code:G.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,...Oe(e)});function rl(t){if(t instanceof Vr){let e={};for(let r in t.shape){let o=t.shape[r];e[r]=$o.create(rl(o))}return new Vr({...t._def,shape:()=>e})}else return t instanceof Ya?new Ya({...t._def,type:rl(t.element)}):t instanceof $o?$o.create(rl(t.unwrap())):t instanceof ja?ja.create(rl(t.unwrap())):t instanceof xa?xa.create(t.items.map(e=>rl(e))):t}var Vr=class t extends Pe{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=Ue.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==se.object){let u=this._getOrReturnCtx(e);return Q(u,{code:G.invalid_type,expected:se.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 Qo&&this._def.unknownKeys==="strip"))for(let u in a.data)s.includes(u)||i.push(u);let l=[];for(let u of s){let f=n[u],c=a.data[u];l.push({key:{status:"valid",value:u},value:f._parse(new Io(a,c,a.path,u)),alwaysSet:u in a.data})}if(this._def.catchall instanceof Qo){let u=this._def.unknownKeys;if(u==="passthrough")for(let f of i)l.push({key:{status:"valid",value:f},value:{status:"valid",value:a.data[f]}});else if(u==="strict")i.length>0&&(Q(a,{code:G.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 f of i){let c=a.data[f];l.push({key:{status:"valid",value:f},value:u._parse(new Io(a,c,a.path,f)),alwaysSet:f in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let u=[];for(let f of l){let c=await f.key,p=await f.value;u.push({key:c,value:p,alwaysSet:f.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 Ue.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 Ue.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 Ue.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 Ue.objectKeys(this.shape))if(e&&!e[o])r[o]=this.shape[o];else{let n=this.shape[o];for(;n instanceof $o;)n=n._def.innerType;r[o]=n}return new t({...this._def,shape:()=>r})}keyof(){return Yv(Ue.objectKeys(this.shape))}};Vr.create=(t,e)=>new Vr({shape:()=>t,unknownKeys:"strip",catchall:Qo.create(),typeName:we.ZodObject,...Oe(e)});Vr.strictCreate=(t,e)=>new Vr({shape:()=>t,unknownKeys:"strict",catchall:Qo.create(),typeName:we.ZodObject,...Oe(e)});Vr.lazycreate=(t,e)=>new Vr({shape:t,unknownKeys:"strip",catchall:Qo.create(),typeName:we.ZodObject,...Oe(e)});var Bs=class extends Pe{_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 Hr(i.ctx.common.issues));return Q(r,{code:G.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},f=l._parseSync({data:r.data,path:r.path,parent:u});if(f.status==="valid")return f;f.status==="dirty"&&!n&&(n={result:f,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 Hr(l));return Q(r,{code:G.invalid_union,unionErrors:i}),ke}}get options(){return this._def.options}};Bs.create=(t,e)=>new Bs({options:t,typeName:we.ZodUnion,...Oe(e)});var Ka=t=>t instanceof Cs?Ka(t.schema):t instanceof Do?Ka(t.innerType()):t instanceof Ts?[t.value]:t instanceof Os?t.options:t instanceof Ms?Ue.objectValues(t.enum):t instanceof Ns?Ka(t._def.innerType):t instanceof Ds?[void 0]:t instanceof Fs?[null]:t instanceof $o?[void 0,...Ka(t.unwrap())]:t instanceof ja?[null,...Ka(t.unwrap())]:t instanceof Ju||t instanceof qs?Ka(t.unwrap()):t instanceof Ps?Ka(t._def.innerType):[],AA=class t extends Pe{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==se.object)return Q(r,{code:G.invalid_type,expected:se.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}):(Q(r,{code:G.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,...Oe(o)})}};function Tm(t,e){let r=ga(t),o=ga(e);if(t===e)return{valid:!0,data:t};if(r===se.object&&o===se.object){let a=Ue.objectKeys(e),n=Ue.objectKeys(t).filter(i=>a.indexOf(i)!==-1),s={...t,...e};for(let i of n){let l=Tm(t[i],e[i]);if(!l.valid)return{valid:!1};s[i]=l.data}return{valid:!0,data:s}}else if(r===se.array&&o===se.array){if(t.length!==e.length)return{valid:!1};let a=[];for(let n=0;n{if(fA(n)||fA(s))return ke;let i=Tm(n.value,s.value);return i.valid?((dA(n)||dA(s))&&r.dirty(),{status:r.value,value:i.data}):(Q(o,{code:G.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}))}};Ss.create=(t,e,r)=>new Ss({left:t,right:e,typeName:we.ZodIntersection,...Oe(r)});var xa=class t extends Pe{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==se.array)return Q(o,{code:G.invalid_type,expected:se.array,received:o.parsedType}),ke;if(o.data.lengththis._def.items.length&&(Q(o,{code:G.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})}};xa.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new xa({items:t,typeName:we.ZodTuple,rest:null,...Oe(e)})};var cA=class t extends Pe{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!==se.object)return Q(o,{code:G.invalid_type,expected:se.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 Pe?new t({keyType:e,valueType:r,typeName:we.ZodRecord,...Oe(o)}):new t({keyType:Nn.create(),valueType:e,typeName:we.ZodRecord,...Oe(r)})}},nl=class extends Pe{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!==se.map)return Q(o,{code:G.invalid_type,expected:se.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,f=await l.value;if(u.status==="aborted"||f.status==="aborted")return ke;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),i.set(u.value,f.value)}return{status:r.value,value:i}})}else{let i=new Map;for(let l of s){let u=l.key,f=l.value;if(u.status==="aborted"||f.status==="aborted")return ke;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),i.set(u.value,f.value)}return{status:r.value,value:i}}}};nl.create=(t,e,r)=>new nl({valueType:e,keyType:t,typeName:we.ZodMap,...Oe(r)});var sl=class t extends Pe{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==se.set)return Q(o,{code:G.invalid_type,expected:se.set,received:o.parsedType}),ke;let a=this._def;a.minSize!==null&&o.data.sizea.maxSize.value&&(Q(o,{code:G.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 f of l){if(f.status==="aborted")return ke;f.status==="dirty"&&r.dirty(),u.add(f.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,...Oe(e)});var pA=class t extends Pe{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==se.function)return Q(r,{code:G.invalid_type,expected:se.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:G.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:G.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 Hr([]),f=await i._def.args.parseAsync(l,n).catch(m=>{throw u.addIssue(o(l,m)),u}),c=await Reflect.apply(s,this,f);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 Hr([o(l,u.error)]);let f=Reflect.apply(s,this,u.data),c=i._def.returns.safeParse(f,n);if(!c.success)throw new Hr([a(f,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:xa.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||xa.create([]).rest(Za.create()),returns:r||Za.create(),typeName:we.ZodFunction,...Oe(o)})}},Cs=class extends Pe{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})}};Cs.create=(t,e)=>new Cs({getter:t,typeName:we.ZodLazy,...Oe(e)});var Ts=class extends Pe{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return Q(r,{received:r.data,code:G.invalid_literal,expected:this._def.value}),ke}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ts.create=(t,e)=>new Ts({value:t,typeName:we.ZodLiteral,...Oe(e)});function Yv(t,e){return new Os({values:t,typeName:we.ZodEnum,...Oe(e)})}var Os=class t extends Pe{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),o=this._def.values;return Q(r,{expected:Ue.joinValues(o),received:r.parsedType,code:G.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 Q(r,{received:r.data,code:G.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})}};Os.create=Yv;var Ms=class extends Pe{_parse(e){let r=Ue.getValidEnumValues(this._def.values),o=this._getOrReturnCtx(e);if(o.parsedType!==se.string&&o.parsedType!==se.number){let a=Ue.objectValues(r);return Q(o,{expected:Ue.joinValues(a),received:o.parsedType,code:G.invalid_type}),ke}if(this._cache||(this._cache=new Set(Ue.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let a=Ue.objectValues(r);return Q(o,{received:o.data,code:G.invalid_enum_value,options:a}),ke}return wr(e.data)}get enum(){return this._def.values}};Ms.create=(t,e)=>new Ms({values:t,typeName:we.ZodNativeEnum,...Oe(e)});var qn=class extends Pe{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==se.promise&&r.common.async===!1)return Q(r,{code:G.invalid_type,expected:se.promise,received:r.parsedType}),ke;let o=r.parsedType===se.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,...Oe(e)});var Do=class extends Pe{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=>{Q(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"?ws(l.value):r.value==="dirty"?ws(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"?ws(i.value):r.value==="dirty"?ws(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(!Mn(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=>Mn(s)?Promise.resolve(a.transform(s.value,n)).then(i=>({status:r.value,value:i})):ke);Ue.assertNever(a)}};Do.create=(t,e,r)=>new Do({schema:t,typeName:we.ZodEffects,effect:e,...Oe(r)});Do.createWithPreprocess=(t,e,r)=>new Do({schema:e,effect:{type:"preprocess",transform:t},typeName:we.ZodEffects,...Oe(r)});var $o=class extends Pe{_parse(e){return this._getType(e)===se.undefined?wr(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};$o.create=(t,e)=>new $o({innerType:t,typeName:we.ZodOptional,...Oe(e)});var ja=class extends Pe{_parse(e){return this._getType(e)===se.null?wr(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ja.create=(t,e)=>new ja({innerType:t,typeName:we.ZodNullable,...Oe(e)});var Ns=class extends Pe{_parse(e){let{ctx:r}=this._processInputParams(e),o=r.data;return r.parsedType===se.undefined&&(o=this._def.defaultValue()),this._def.innerType._parse({data:o,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Ns.create=(t,e)=>new Ns({innerType:t,typeName:we.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Oe(e)});var Ps=class extends Pe{_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 Hr(o.common.issues)},input:o.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Hr(o.common.issues)},input:o.data})}}removeCatch(){return this._def.innerType}};Ps.create=(t,e)=>new Ps({innerType:t,typeName:we.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Oe(e)});var il=class extends Pe{_parse(e){if(this._getType(e)!==se.nan){let o=this._getOrReturnCtx(e);return Q(o,{code:G.invalid_type,expected:se.nan,received:o.parsedType}),ke}return{status:"valid",value:e.data}}};il.create=t=>new il({typeName:we.ZodNaN,...Oe(t)});var t0=Symbol("zod_brand"),Ju=class extends Pe{_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 Pe{_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(),ws(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 Pe{_parse(e){let r=this._def.innerType._parse(e),o=a=>(Mn(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,...Oe(e)});function zv(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Jv(t,e={},r){return t?Pn.create().superRefine((o,a)=>{let n=t(o);if(n instanceof Promise)return n.then(s=>{if(!s){let i=zv(e,o),l=i.fatal??r??!0;a.addIssue({code:"custom",...i,fatal:l})}});if(!n){let s=zv(e,o),i=s.fatal??r??!0;a.addIssue({code:"custom",...s,fatal:i})}}):Pn.create()}var r0={object:Vr.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 o0=(t,e={message:`Input not instance of ${t.name}`})=>Jv(r=>r instanceof t,e),Xv=Nn.create,Qv=ys.create,a0=il.create,n0=Es.create,e6=$s.create,s0=Is.create,i0=ol.create,l0=Ds.create,u0=Fs.create,f0=Pn.create,d0=Za.create,A0=Qo.create,c0=al.create,p0=Ya.create,m0=Vr.create,_0=Vr.strictCreate,h0=Bs.create,g0=AA.create,x0=Ss.create,j0=xa.create,v0=cA.create,k0=nl.create,b0=sl.create,w0=pA.create,y0=Cs.create,E0=Ts.create,$0=Os.create,I0=Ms.create,D0=qn.create,F0=Do.create,B0=$o.create,S0=ja.create,C0=Do.createWithPreprocess,T0=Xu.create,O0=()=>Xv().optional(),M0=()=>Qv().optional(),N0=()=>e6().optional(),P0={string:t=>Nn.create({...t,coerce:!0}),number:t=>ys.create({...t,coerce:!0}),boolean:t=>$s.create({...t,coerce:!0}),bigint:t=>Es.create({...t,coerce:!0}),date:t=>Is.create({...t,coerce:!0})};var q0=ke;function L0(t,e){return`Expected a string (text), but got: \`${e}\` (${typeof e}). _Try wrapping the value in quotes._ +**Example**: \`${t}: "${e}"\``}function t6(t,e,r){return`Expected one of the following options: ${jf(e,"`",", or ")}, but got: \`${r}\`. +**Example**: \`${t}: ${e[0]}\``}function r6(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 o6(t,e){return et.string().superRefine((r,o)=>t.includes(r)?!0:(o.addIssue({options:t,received:r,code:"invalid_enum_value",message:t6(e??o.path.join("."),t,r)}),!1))}function R0(t,e,r){return et.array(o6(e),{invalid_type_error:r6(t,e,r)})}var Ht={error:{not_string:L0,invalid_enum:t6,not_array:r6},schema:{dynamic_enum:o6,dynamic_enum_array:R0}};var Qu=t=>`[${t.chain.map(e=>Hv(e,{trim_lone_param:!0})).join(", ")}] ${t.close_reversed?"<-":"->"} ${t.close_field}`,G0=/\[(.+)\]\s*(<-|->)\s*(.+)/,Om=t=>t.name||Qu(t),a6=t=>{let e=G0.exec(t);return e?Xt({close_field:e[3],close_reversed:e[2]==="<-",chain:xf(e[1]).map(r=>({field:r}))}):xt(null)},n6=t=>{let e=t.fields.map(r=>r.label);return et.object({chain:et.array(et.object({field:Ht.schema.dynamic_enum(e)})),close_field:Ht.schema.dynamic_enum(e,"close_field"),close_reversed:et.boolean()})};function Ls(t,e){var r=X(),o=J(r);{var a=s=>{rA(s,{get size(){return 20}})},n=s=>{oA(s,{get size(){return 20}})};ie(o,s=>{e.open?s(a):s(n,!1)})}k(t,r)}var mA=require("obsidian");var s6=Jd(null),vt={...s6,refresh:t=>s6.set(t.workspace.getActiveFile())};var H0=M("
");function ef(t,e){ae(e,!0);let[r,o]=Cr(),a=()=>Sr(vt,"$active_file_store",r),n=V(e,"cls",3,""),s=V(e,"source_path",3,void 0),i=Le(void 0),l,u=Ae(a);function f(p){return Yi(this,void 0,void 0,function*(){var m;if(A(i))return H.debug("rendering markdown"),A(i).empty(),l&&(l.unload(),l=void 0),l=new mA.Component,l.load(),mA.MarkdownRenderer.render(e.plugin.app,p,A(i),(m=s()!==null&&s()!==void 0?s():A(u)===null||A(u)===void 0?void 0:A(u).path)!==null&&m!==void 0?m:"",l)})}mt(()=>{f(e.markdown)}),Kj(()=>{l&&(l.unload(),l=void 0)});var c=H0();wm(c,p=>Y(i,p),()=>A(i)),oe(()=>ut(c,1,`markdown-rendered ${n()??""}`)),k(t,c),ne(),o()}function Rs(t,e){ae(e,!0);let r=V(e,"source_path",3,void 0);{let o=Ae(()=>N_(e.code,e.type));ef(t,{get plugin(){return e.plugin},get source_path(){return r()},get markdown(){return A(o)}})}ne()}var V0=(t,e)=>Y(e,""),U0=(t,e,r)=>e.scroll_to(A(r).length-1),z0=M(''),W0=M('Unsaved changes'),K0=(t,e,r)=>e.reorder_transitive(r(),r()-1),Z0=(t,e,r)=>e.reorder_transitive(r(),r()+1),Y0=(t,e,r)=>e.copy_transitive(r()),J0=(t,e,r)=>e.remove_transitive(r()),X0=M('
'),Q0=M('No fields in the chain.'),eI=(t,e,r)=>e.set_close_reversed(r(),t.currentTarget.checked),tI=(t,e,r)=>e.rename_transitive(r(),""),rI=M('
Edge Chain:
Closing Field:
Close Reversed:
Rounds:
Name (optional):
'),oI=M('
'),aI=M(`

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.

`),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:` + 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.

`),nI={hash:"svelte-91sdw2",code:`.border.svelte-91sdw2 {border-radius:var(--radius-m);border:var(--modal-border-width) solid + var(--background-modifier-border);}`};function Mm(t,e){ae(e,!0),Xo(t,nI);let r=V(e,"plugin",7),o=Le(pt(r().settings)),a=Le(""),n=Le(pt([...A(o).implied_relations.transitive])),s=pt(A(n).map(()=>!1)),i={save:()=>Yi(void 0,void 0,void 0,function*(){for(let{close_field:R}of A(n))if(!R)return new Ja.Notice("Closing field cannot be empty.");A(o).implied_relations.transitive=A(n),r().settings=pr(A(o)),yield Promise.all([r().saveSettings(),r().rebuildGraph()]),Y(o,r().settings,!0)}),make_id:R=>`BC-transitive-rule-${R}`,scroll_to:R=>{var K;return(K=document.getElementById(i.make_id(R)))===null||K===void 0?void 0:K.scrollIntoView({behavior:"smooth"})},add_transitive:()=>{let R=A(n).push({name:"",chain:[],rounds:10,close_reversed:!1,close_field:A(o).edge_fields[0].label});s[R-1]=!0,setTimeout(()=>i.scroll_to(R-1),0),Y(n,A(n),!0),A(o).is_dirty=!0},add_bulk:()=>{let R=document.getElementById("BC-transitive-bulk-str");if(!R)return new Ja.Notice("Could not find textarea.");let K=R.value.trim();if(!K)return new Ja.Notice("No rules to parse.");let Ee=xf(K,` +`).filter(Boolean),T=Ee.map(a6).filter(me=>me.ok);if(T.length!==Ee.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 O=T.map(me=>n6({fields:r().settings.edge_fields}).safeParse(me.data)),Z=O.filter(me=>!me.success);if(Z.length)return H.error("Bulk-add transitive rule errors >",Z.map(me=>{var Me;return me.success?null:(Me=me.error)===null||Me===void 0?void 0:Me.issues})),new Ja.Notice("Some rules could not be parsed. Check the logs for more information.");O.forEach(me=>{me.success&&A(n).push(Object.assign(Object.assign({},me.data),{name:"",rounds:10}))}),new Ja.Notice(`Bulk added ${O.length} rules \u2705`),Y(n,A(n),!0),A(o).is_dirty=!0},copy_transitive:R=>{let K=A(n).push(Object.assign(Object.assign({},A(n)[R]),{name:`${Om(A(n)[R])} (copy)`}));s[K-1]=!0,setTimeout(()=>i.scroll_to(K-1),0),Y(n,A(n),!0),A(o).is_dirty=!0},remove_transitive:R=>{Y(n,A(n).filter((K,Ee)=>Ee!==R),!0),A(o).is_dirty=!0},rename_transitive:(R,K)=>{A(n)[R].name!==K&&(A(n)[R].name=K,Y(n,A(n),!0),A(o).is_dirty=!0)},reorder_transitive:(R,K)=>{let Ee=A(n)[R];A(n)[R]=A(n)[K],A(n)[K]=Ee,Y(n,A(n),!0),A(o).is_dirty=!0},add_chain_field:(R,K)=>{K&&(A(n)[R].chain.push({field:K.label}),Y(n,A(n),!0),A(o).is_dirty=!0)},remove_chain_field:(R,K)=>{A(n)[R].chain=A(n)[R].chain.filter((Ee,T)=>T!==K),Y(n,A(n),!0),A(o).is_dirty=!0},set_close_field:(R,K)=>{K&&(A(n)[R].close_field=K.label,Y(n,A(n),!0),A(o).is_dirty=!0)},set_rounds:(R,K)=>{isNaN(K)||K<0||(A(n)[R].rounds=K,Y(n,A(n),!0),A(o).is_dirty=!0)},set_close_reversed:(R,K)=>{A(n)[R].close_reversed=K,Y(n,A(n),!0),A(o).is_dirty=!0}},l={chain_field:(R,K)=>Ee=>{let T=new Ja.Menu;T.addItem(O=>O.setTitle("Remove Field").setIcon("x").onClick(()=>i.remove_chain_field(R,K))),T.showAtMouseEvent(Ee)}};var u=aI(),f=w(u),c=S(w(f),3),p=w(c,!0);b(c),la(),b(f);var m=S(f,2),h=w(m);h.__click=function(...R){i.save?.apply(this,R)};var y=w(h);ks(y,{get size(){return 20}}),la(),b(h);var E=S(h,2),D=w(E);Br(D);var L=S(D,2);L.__click=[V0,a],b(E);var F=S(E,2);{var x=R=>{var K=z0();K.__click=[U0,i,n];var Ee=w(K);Tn(Ee,{get size(){return 20}}),b(K),k(R,K)};ie(F,R=>{A(n).length>3&&R(x)})}var $=S(F,2);{var C=R=>{var K=W0();k(R,K)};ie($,R=>{A(o).is_dirty&&R(C)})}b(m);var v=S(m,2),B=w(v);Xe(B,17,()=>A(n).map((R,K)=>({rule:R,rule_i:K,name:Om(R)})).filter(R=>R.name.includes(A(a).toLowerCase())),({rule:R,rule_i:K,name:Ee})=>Ee+K,(R,K)=>{let Ee=()=>A(K).rule,T=()=>A(K).rule_i,O=()=>A(K).name;var Z=oI(),me=w(Z),Me=w(me),at=w(Me);Ls(at,{get open(){return s[T()]}});var fo=S(at,2),Fo=w(fo,!0);b(fo),b(Me);var Jt=S(Me,2),zr=w(Jt);zr.__click=[K0,i,T];var ba=w(zr);tA(ba,{get size(){return 20}}),b(zr);var bt=S(zr,2);bt.__click=[Z0,i,T];var Vt=w(bt);Tn(Vt,{get size(){return 20}}),b(bt);var Dt=S(bt,2);Dt.__click=[Y0,i,T];var Ao=w(Dt);vs(Ao,{get size(){return 20}}),b(Dt);var rn=S(Dt,2);rn.__click=[J0,i,T],b(Jt),b(me);var ir=S(me,2);lo(ir,Ee,gt=>{var Mt=rI(),Er=w(Mt),Bo=S(w(Er),2);{var ea=wt=>{var co=X0();Xe(co,23,()=>Ee().chain,(Zs,Ys)=>Ys+(Zs.field??""),(Zs,Ys,OA)=>{{let _=Ae(()=>A(Ys).field??""),j=Ae(()=>l.chain_field(T(),A(OA)));Ji(Zs,{get tag(){return A(_)},title:"Right click for more actions.",get oncontextmenu(){return A(j)}})}}),b(co),k(wt,co)},ta=wt=>{var co=Q0();k(wt,co)};ie(Bo,wt=>{Ee().chain.length?wt(ea):wt(ta,!1)})}var on=S(Bo,2);Xi(on,{get fields(){return A(o).edge_fields},onselect:wt=>i.add_chain_field(T(),wt)}),b(Er);var wa=S(Er,2),fl=S(w(wa),2);{let wt=Ae(()=>A(o).edge_fields.find(co=>co.label===Ee().close_field));Xi(fl,{undefine_on_change:!1,get fields(){return A(o).edge_fields},get field(){return A(wt)},onselect:co=>i.set_close_field(T(),co)})}b(wa);var ya=S(wa,2),dl=S(w(ya),2);Br(dl),dl.__click=[eI,i,T],b(ya);var Al=S(ya,2),Ea=S(w(Al),2);Br(Ea),We(Ea,"min",0),We(Ea,"max",100),b(Al);var cl=S(Al,2),ff=S(w(cl),2),Ks=w(ff);Br(Ks);var SA=S(Ks,2);SA.__click=[tI,i,T],b(ff),b(cl);var CA=S(cl,2);{var TA=wt=>{Rs(wt,{get plugin(){return r()},type:"mermaid",get code(){return Eo.from_transitive_rule(Ee()).mermaid}})};ie(CA,wt=>{s[T()]&&wt(TA)})}b(Mt),oe(()=>{xs(Ea,Ee().rounds),xs(Ks,Ee().name)}),bm(dl,()=>Ee().close_reversed,wt=>Ee().close_reversed=wt),Rr("blur",Ea,wt=>i.set_rounds(T(),+wt.currentTarget.value)),Rr("blur",Ks,wt=>i.rename_transitive(T(),wt.currentTarget.value)),k(gt,Mt)}),b(Z),oe(gt=>{We(Z,"id",gt),De(Fo,O()),zr.disabled=T()===0,bt.disabled=T()===A(n).length-1},[()=>i.make_id(T())]),js("open","toggle",Z,gt=>s[T()]=gt,()=>s[T()]),k(R,Z)});var q=S(B,2);q.__click=function(...R){i.add_transitive?.apply(this,R)};var re=w(q);On(re,{get size(){return 20}}),la(),b(q);var ge=S(q,2),le=S(w(ge),2),Be=S(w(le),4);Be.__click=function(...R){i.add_bulk?.apply(this,R)},b(le),b(ge),b(v),b(u),oe(R=>{De(p,R),L.disabled=A(a)===""},[()=>Qu({close_reversed:!1,close_field:"sibling-in-law",chain:[{field:"spouse"},{field:"sibling"}]})]),Cn(D,()=>A(a),R=>Y(a,R)),k(t,u),ne()}Ve(["click"]);var i6=require("obsidian"),Ur=(t,e,r,o)=>{let a=r.get(),n=new i6.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 l6=(t,e)=>{Ur(t,e,{get:()=>t.settings.views.codeblocks.show_node_options,set:r=>t.settings.views.codeblocks.show_node_options=r})};var f6=require("obsidian");var u6=require("obsidian");function pe(t,e){let r=new u6.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 d6=(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 f6.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:PA,value:t.settings.debug.level,cb:async r=>{H.set_level(r),t.settings.debug.level=r,await t.saveSettings()}}})};var c6=require("obsidian");var p6=(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 c6.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 Nm=require("obsidian");var m6=(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 Nm.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 Nm.Notice("Trigger string cannot be empty");return}r.suggestors.edge_field.trigger=o,await t.saveSettings()}}})};var _6=require("obsidian"),h6=({cb:t,value:e,edge_field_groups:r})=>{let o=new _6.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(f=>f!==s.label):e.push(s.label),t(e)}))}),o};var sI=(t,e,r)=>{h6({edge_field_groups:e.edge_field_groups,value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},iI=M('');function Gs(t,e){ae(e,!0);let r=V(e,"cls",3,""),o=V(e,"field_group_labels",15);var a=iI();a.__click=[sI,e,o];var n=w(a);Gu(n,{get size(){return 20}}),b(a),oe(()=>ut(a,1,mr(r()))),k(t,a),ne()}Ve(["click"]);var lI=M('
');function Xa(t,e){"use strict";var r=lI(),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);dm(u,()=>e.children??or),b(l),b(r),oe(()=>{De(n,e.name),De(i,e.description)}),k(t,r)}function yr(t,e){ae(e,!0);let r=V(e,"name",3,"Field Groups"),o=V(e,"description",3,"Select the field groups to use for this traversal."),a=V(e,"field_group_labels",15),n=V(e,"select_cb",3,()=>{});mt(()=>{a()&&n()(a())}),Xa(t,{get name(){return r()},get description(){return o()},children:(s,i)=>{Gs(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 g6=(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()}}}),Se(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 Pm=require("obsidian");var x6=(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 Pm.Notice("Depth must be a number");return}else if(o<0){new Pm.Notice("Depth must be a non-negative number");return}t.settings.views.page.trail.default_depth=o,t.refreshViews(),await t.saveSettings()}}}),Se(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()}}}),Ur(t,e,{get:()=>t.settings.views.page.trail.show_node_options,set:r=>t.settings.views.page.trail.show_node_options=r})};var j6=require("obsidian");var v6=(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 j6.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 k6=require("obsidian");var uI=[1,-1],b6=({cb:t,value:e,exclude_fields:r})=>{let o=new k6.Menu;return uI.forEach(a=>{o.addItem(n=>n.setTitle(`Order: ${a===1?"asc":"desc"}`).setChecked(e.order===a).onClick(()=>{e.order=a,t(e)}))}),o.addSeparator(),bf.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 fI=(t,e,r)=>{b6({exclude_fields:e(),value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},dI=M('');function Hs(t,e){ae(e,!0);let r=V(e,"edge_sort_id",15),o=V(e,"exclude_fields",19,()=>[]),a=V(e,"cls",3,"");var n=dI();n.__click=[fI,o,r];var s=w(n);{var i=u=>{eA(u,{get size(){return 20}})},l=u=>{Qd(u,{get size(){return 20}})};ie(s,u=>{r().order===1?u(i):u(l,!1)})}b(n),oe(()=>ut(n,1,`flex gap-1 ${a()??""}`)),k(t,n),ne()}Ve(["click"]);function Qa(t,e){ae(e,!0);let r=V(e,"edge_sort_id",15),o=V(e,"select_cb",3,()=>{});mt(()=>{r()&&o()(r())}),Xa(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 w6=require("obsidian");var y6=({cb:t,value:e,exclude_attributes:r})=>{let o=new w6.Menu,a=jl.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(f=>f!==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 AI=(t,e,r)=>{y6({exclude_attributes:e(),value:r(),cb:o=>r(o)}).showAtMouseEvent(t)},cI=M('');function Vs(t,e){ae(e,!0);let r=V(e,"show_attributes",15),o=V(e,"exclude_attributes",19,()=>[]),a=V(e,"cls",3,"");!(o()===null||o()===void 0)&&o().length&&r(r().filter(i=>!(!(o()===null||o()===void 0)&&o().includes(i))));var n=cI();n.__click=[AI,o,r];var s=w(n);sA(s,{get size(){return 20}}),b(n),oe(()=>ut(n,1,mr(a()))),k(t,n),ne()}Ve(["click"]);function en(t,e){ae(e,!0);let r=V(e,"show_attributes",15),o=V(e,"exclude_attributes",19,()=>[]),a=V(e,"select_cb",3,()=>{});mt(()=>{r()&&a()(r())}),Xa(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 _A=["none","wiki","markdown"];var Tr=(t,e)=>ha(t.filter(r=>e.includes(r.label)).flatMap(r=>r.fields));var E6=(t,e)=>{let{settings:r}=t;Se(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=Tr(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:_A,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()}}}),Se(Qa,{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()}}}),Se(en,{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()}}}),Ur(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 $6=(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 pI=(t,e,r)=>e(A(r),t.currentTarget.checked),mI=M('
'),_I=M('
'),hI={hash:"svelte-1jsh826",code:".BC-matrix-field-order.svelte-1jsh826 {display:flex;flex-direction:column;gap:6px;min-width:280px;}.BC-matrix-field-order-row.svelte-1jsh826 {display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border:1px solid var(--background-modifier-border);border-radius:var(--radius-s);background:var(--background-primary);}.BC-matrix-field-order-label.svelte-1jsh826 {display:flex;align-items:center;gap:8px;min-width:0;}.BC-matrix-field-order-label.svelte-1jsh826 span:where(.svelte-1jsh826) {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.BC-matrix-field-order-buttons.svelte-1jsh826 {display:flex;gap:4px;}.BC-matrix-field-order-buttons.svelte-1jsh826 button:where(.svelte-1jsh826) {width:26px;height:24px;line-height:1;padding:0;}"};function qm(t,e){ae(e,!0),Xo(t,hI);let r=V(e,"custom_sort_field_labels",15),o=V(e,"select_cb",3,()=>{});function a(){let c=e.edge_fields.map(y=>y.label),p=r().filter(y=>c.includes(y)),m=new Set(p),h=c.filter(y=>!m.has(y));return[...p,...h]}let n=Le(pt(a())),s=Le(pt(new Set(r()))),i=Le(null);mt(()=>{Y(n,a(),!0),Y(s,new Set(r().filter(c=>e.edge_fields.some(p=>p.label===c))),!0)});function l(){let c=A(n).filter(p=>A(s).has(p));r(c),o()(c)}function u(c,p){if(c===p||c<0||p<0||c>=A(n).length||p>=A(n).length)return;let m=[...A(n)],[h]=m.splice(c,1);m.splice(p,0,h),Y(n,m,!0),l()}function f(c,p){let m=new Set(A(s));p?m.add(c):m.delete(c),Y(s,m,!0),l()}Xa(t,{name:"Custom Field Order",description:"Use defined edge fields, then reorder with arrows or drag-and-drop.",children:(c,p)=>{var m=_I();Xe(m,21,()=>A(n),it,(h,y,E)=>{var D=mI(),L=w(D),F=w(L);Br(F),F.__change=[pI,f,y];var x=S(F,2),$=w(x,!0);b(x),b(L);var C=S(L,2),v=w(C);v.disabled=E===0,v.__click=()=>u(E,E-1);var B=S(v,2);B.__click=()=>u(E,E+1),b(C),b(D),oe(q=>{jm(F,q),De($,A(y)),We(v,"aria-label",`Move ${A(y)} up`),We(B,"aria-label",`Move ${A(y)} down`),B.disabled=E===A(n).length-1},[()=>A(s).has(A(y))]),Rr("dragstart",D,()=>Y(i,E,!0)),Rr("dragover",D,q=>q.preventDefault()),Rr("drop",D,()=>{A(i)!==null&&(u(A(i),E),Y(i,null))}),Rr("dragend",D,()=>Y(i,null)),k(h,D)}),b(m),k(c,m)},$$slots:{default:!0}}),ne()}Ve(["change","click"]);var I6=(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()}}}),pe(e,{name:"Custom Field Sorting",desc:"Sort matrix edge fields by a custom label order.",toggle:{value:t.settings.views.side.matrix.custom_sort_fields,cb:async r=>{t.settings.views.side.matrix.custom_sort_fields=r,t.refreshViews(),await t.saveSettings()}}}),Se(qm,{target:e,props:{edge_fields:t.settings.edge_fields,custom_sort_field_labels:t.settings.views.side.matrix.custom_sort_field_labels,select_cb:async r=>{t.settings.views.side.matrix.custom_sort_field_labels=r,t.refreshViews(),await t.saveSettings()}}}),Se(Qa,{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()}}}),Se(en,{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()}}}),Se(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}}}),Ur(t,e,{get:()=>t.settings.views.side.matrix.show_node_options,set:r=>t.settings.views.side.matrix.show_node_options=r})};var D6=require("obsidian");var hA=require("obsidian");var gI=(t,e)=>{e.plugin.app.workspace.trigger("hover-link",{event:t,linktext:e.path,source:"breadcrumbs",targetEl:t.currentTarget,hoverParent:t.currentTarget.parentElement})},xI=(t,e)=>{let r=new hA.Menu;e.plugin.app.workspace.handleLinkContextMenu(r,e.display,e.path),r.showAtMouseEvent(t)},jI=(t,e)=>{e.plugin.app.workspace.openLinkText(e.path,"",hA.Keymap.isModEvent(t))},vI=M(' ');function tf(t,e){ae(e,!0);let[r,o]=Cr(),a=()=>Sr(vt,"$active_file_store",r),n=V(e,"cls",3,""),s=ht.drop_ext(e.path),i=Ae(a);var l=vI();let u;l.__mouseover=[gI,e],l.__contextmenu=[xI,e],l.__click=[jI,e];var f=w(l,!0);b(l),oe(c=>{u=ut(l,1,`internal-link cursor-pointer ${n()??""}`,null,u,c),We(l,"data-href",e.path),We(l,"aria-label",s===e.display?"":e.path),De(f,e.display)},[()=>({"is-unresolved":!e.resolved,"BC-active-note":A(i)?.path===e.path})]),Rr("auxclick",l,c=>{H.debug("on:auxclick e.button",c.button),c.button===1&&e.plugin.app.workspace.openLinkText(e.path,"","tab")}),k(t,l),ne(),o()}Ve(["mouseover","contextmenu","click"]);function va(t,e){ae(e,!0);let r=V(e,"cls",3,""),o=e.edge.stringify_target(e.plugin.graph,e.node_stringify_options);{let a=Ae(()=>e.edge.target_path(e.plugin.graph)),n=Ae(()=>e.edge.target_resolved(e.plugin.graph)),s=Ae(r),i=Ae(()=>e.edge.explicit(e.plugin.graph)?"BC-edge-explicit":`BC-edge-implied BC-edge-implied-${e.edge.edge_source}`);tf(t,{get plugin(){return e.plugin},get display(){return o},get path(){return A(a)},get resolved(){return A(n)},get cls(){return`${A(s)??""} BC-edge ${A(i)??""}`}})}ne()}var kI=M('
'),bI=M('
'),wI=M('
',1),yI=M('
'),EI={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 Lm(t,e){ae(e,!0),Xo(t,EI);let{field_group_labels:r,show_node_options:o}=e.plugin.settings.views.page.prev_next,a=hr(e.plugin.settings,o),n={prev:Tr(e.plugin.settings.edge_field_groups,r.prev),next:Tr(e.plugin.settings.edge_field_groups,r.next)},s=ha([...n.prev,...n.next]),i=e.plugin.graph.has_node(e.file_path)?uA(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=yI(),u=w(l);{var f=c=>{var p=wI(),m=J(p);Xe(m,21,()=>i?.prev??[],it,(y,E)=>{var D=kI(),L=w(D),F=w(L,!0);b(L);var x=S(L,2);va(x,{cls:"grow",get edge(){return A(E)},get plugin(){return e.plugin},get node_stringify_options(){return a}}),b(D),oe(()=>De(F,A(E).edge_type)),k(y,D)}),b(m);var h=S(m,2);Xe(h,21,()=>i?.next??[],it,(y,E)=>{var D=bI(),L=w(D);va(L,{cls:"grow",get edge(){return A(E)},get plugin(){return e.plugin},get node_stringify_options(){return a}});var F=S(L,2),x=w(F,!0);b(F),b(D),oe(()=>De(x,A(E).edge_type)),k(y,D)}),b(h),k(c,p)};ie(u,c=>{(i?.prev?.length||i?.next?.length)&&c(f)})}b(l),k(t,l),ne()}var $I=(t,e)=>e(!e()),II=M("");function rf(t,e){ae(e,!0);let r=V(e,"cls",3,""),o=V(e,"merge_fields",15);var a=II();a.__click=[$I,o];var n=w(a);{var s=l=>{zu(l,{get size(){return 20}})},i=l=>{Ku(l,{get size(){return 20}})};ie(n,l=>{o()?l(s):l(i,!1)})}b(a),oe(()=>{ut(a,1,mr(r())),We(a,"aria-label",o()?"Separate Fields":"Merge Fields")}),k(t,a),ne()}Ve(["click"]);var DI=M('
'),FI=M('
'),BI={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,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 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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QQAgAygCAEGAgICAeEcbIQsLQSkhCEEpQQEQ9wQiA0UNFSADQShqQcWswAAtAAA6AAAgA0EgakG9rMAAKQAANwAAIANBGGpBtazAACkAADcAACADQRBqQa2swAApAAA3AAAgA0EIakGlrMAAKQAANwAAIANBnazAACkAADcAACALRQ0DIANBKUEBEOUEIAstABgNAkEAIQsgB0UEQCABKAKUASACQSRsaiICQQAgAigCAEGAgICAeEcbIQsLQSlBARD3BCIDRQ0VIANBKGpBxazAAC0AADoAACADQSBqQb2swAApAAA3AAAgA0EYakG1rMAAKQAANwAAIANBEGpBrazAACkAADcAACADQQhqQaWswAApAAA3AAAgA0GdrMAAKQAANwAAIAtFDQMgA0EpQQEQ5QQgBEE4aiAFQRhqKAIANgIAIARBMGogBUEQaikCADcDACAEQShqIAVBCGopAgA3AwAgBCAFKQIANwMgAkACQCALKAIIIgIgBEEgaiIGKAIIRw0AIAsoAgQgBigCBCIIIAIQgAMNACALKAIQIQIgCygCFCIFBEAgAiEDA0AgAygCACIHBEAgA0EEaigCACAHQQEQ5QQLIANBDGohAyAFQQFrIgUNAAsLIAtBDGoiAygCACIFBEAgAiAFQQxsQQQQ5QQLIAMgBkEMaiICKQIANwIAIAsgBi0AGDoAGCALIAYvABk7ABkgA0EIaiACQQhqKAIANgIAIAYoAgAiAgRAIAggAkEBEOUECwwBCyMAQRBrIgAkACAAIAY2AgwgACALNgIIIABBCGpB9NjAACAAQQxqQfTYwABBttbAAEHZAEHk1sAAENUBAAsMAQsgBEEUaiICIAUQ7gIgBEEoaiAFQQhqKAIANgIAIARBNGogBUEUaigCADYCACAEIAUpAgA3AyAgBCAFKQIMNwIsIAQgBS0AGjoAOiAEIAUvARg7ATggAUG4AWogAiABQZABaiAEQSBqEGsQTgsgCkGAgICAeDYCAAwDC0E4IQhBOEEBEPcEIgNFDQEgA0EwakGwqcAAKQAANwAAIANBKGpBqKnAACkAADcAACADQSBqQaCpwAApAAA3AAAgA0EYakGYqcAAKQAANwAAIANBEGpBkKnAACkAADcAACADQQhqQYipwAApAAA3AAAgA0GAqcAAKQAANwAACyAKIAg2AgggCiADNgIEIAogCDYCACAFKAIAIgIEQCAGIAJBARDlBAsgBSgCECECIAUoAhQiBgRAIAIhAwNAIAMoAgAiCARAIANBBGooAgAgCEEBEOUECyADQQxqIQMgBkEBayIGDQALCyAFKAIMIgNFDQEgAiADQQxsQQQQ5QQMAQtBAUE4EMcEAAsgBEFAayQACyAJKAJEQYCAgIB4Rg0BIBggCSkCRDcCACAYQQhqIAlBzABqKAIANgIAIAkgDkEwajYCDCAJQQhqEGwMBQsgDkEwaiEeDAELIBogGUEwaiIZRw0BCwsgCSAeNgIMCyAJQQhqEGwgGEGAgICAeDYCAAsgCUGAAWokACAMKAJwQYCAgIB4RwRAIAAgDCkCcDcCACAAQQhqIAxB+ABqKAIANgIADAYLQRxBARD3BCIDBEAgA0EYakH9q8AAKAAANgAAIANBEGpB9avAACkAADcAACADQQhqQe2rwAApAAA3AAAgA0Hlq8AAKQAANwAAIAxBEGoQkgIgDEHwAGoQtQIgDCgCeCEGIAwpA3AhIyAMKAJUIgQgDCgCTEYEQCAiENQCCyAMKAJQIARB0ABsaiICQgA3AwggAkIANwMAIAJCEDcDQCACQhw3AjggAiADNgI0IAJBHDYCMCACIAY2AiggAiAjNwMgIAwgBEEBaiICNgJUAkAgAgRAQQAhAkEAIQgjAEHQAGsiCSQAIAlBADYCDCAJQoCAgIDAADcCBCABQZABaiEKIAEoApQBIgYgASgCmAFBJGxqIQ0gCUEYaiEPA0ACQCABKAKkASEOIAEoAqABIQcgASgClAEhEyABKAKYASEVA0AgBiEFQQAhAyACIQQCQAJAAkADQCADIAVqIgYgDUYNASADQSRqIQMgBEEBaiEEIAYoAgBBgICAgHhGDQALIARBAWsiESAVTw0BIBMgAkEkbGogA2oiC0EkayISKAIAQYCAgIB4Rg0BIAMgBWohBiAEIQIgC0EMay0AAA0DIAtBBGsoAgAiECAOTw0CIAcgEEEkbGotACFBAkcNA0HAvcAAEOwEAAsgCSgCCCIGIAhBBHRqIREgCSgCBCEeIAYhAgJAAkAgCEUNACACIQMDQCADQRBqIQIgAygCBCIZQYCAgIB4Rg0BIAMoAgAhFSADKAIIIR0gAykCCCEjIAEpA8gBISQgCUIANwMYIAlCADcDECAJICQ3AyAgCUEAOgBIIAlBkKDBACkDADcDQCAJQYigwQApAwA3AzggCUGAoMEAKQMANwMwIAlB+J/BACkDADcDKCAJQRBqICOnIg0gI0IgiKciCxBqIAEoArwBIgUCfiAJLQBIRQRAIAkpAyAMAQsgCSkDKCAJKQMYhSIjQiCIIiQgCSkDICAJKQMQhSIlQiCIIiZ+ICNC/////w+DIiMgJUL/////D4MiJX6FICMgJn4gJCAlfoVCIIiFCyIjp3EhBCAjQhmIQv8Ag0KBgoSIkKDAgAF+ISUgASgCuAEhA0EAIQgCQANAAkAgAyAEaikAACIkICWFIiNCf4UgI0KBgoSIkKDAgAF9g0KAgYKEiJCgwIB/gyIjUEUEQANAIAsgAyAjeqdBA3YgBGogBXEiDkEEdGsiB0EIaygCAEYEQCANIAdBDGsiDygCACALEIADRQ0DCyAjQgF9ICODIiNQRQ0ACwsgJCAkQgGGg0KAgYKEiJCgwIB/g1BFDQIgBCAIQQhqIghqIAVxIQQMAQsLQYABIQQgAyAOaiIIKQAAIiMgI0IBhoNCgIGChIiQoMCAf4N6p0EDdiADIA5BCGsgBXFqIgMpAAAiIyAjQgGGg0KAgYKEiJCgwIB/g3mnQQN2akEHTQRAIAEgASgCwAFBAWo2AsABQf8BIQQLIAggBDoAACADQQhqIAQ6AAAgASABKALEAUEBazYCxAEgB0EQaygCACIDQYCAgIB4ckGAgICAeEYNACAPKAIAIANBARDlBAsgCUEQaiEOIwBBMGsiBSQAAkACQAJAIAooAggiDSAVTQRAIA5BgICAgHg2AgAMAQsgDkGAgICAeDYCACAKKAIEIg8gFUEkbGoiAygCACEbIAMpAgQhIyADIA4pAgA3AgAgA0EMaikCACEkIANBCGogDkEIaikCADcCACADQRRqKQIAISUgA0EQaiAOQRBqKQIANwIAIAVBCGoiEiAkNwMAIANBGGogDkEYaigCADYCACAFQRBqIhciBCAlNwMAIAUgIzcDACAbQYCAgIB4Rg0AIAVBKGogBCkDADcDACAFQSBqIBIpAwA3AwAgBSAFKQMANwMYIANBHGohEyADKAIcIgNBf0cEQCAKKAIQIRAgCigCFCEYIAooAiQhCCAKKAIcIQQDQAJAIAMgGE8NACAQIANBJGxqIgctACFBAkYNAAJAIA0gBykCCCIjpyILTQ0AIAcpAgAiJKchFCAjQiCIpyEWAkAgAyAPIAtBJGxqIhooAhwiC0cEQANAIAsgGE8NAiAQIAtBJGxqIhooAgAiCyADRw0ACyAaIBQ2AgAMAQsgGkEcaiAUNgIACyANIBZNDQAgJEIgiKchFCADIA8gFkEkbGoiFigCICILRwRAA0AgCyAYTw0CIBAgC0EkbGoiFigCBCILIANHDQALIBZBBGogFDYCAAwBCyAWQSBqIBQ2AgALIAdBfzYCDCAHQn83AgQgByAINgIAIBIgB0EYaikCADcDACAXIAdBIGooAgA2AgAgBSAHKQIQNwMAIAdBAjoAISAKIAM2AiQgCiAEQQFrIgQ2AhwCQCAFLQARQQJGDQAgBSgCACIIIAgoAgBBAWsiCDYCACAIRQRAIAUQkAMLIAUoAggiCCAIKAIAQQFrIgg2AgAgCA0AIBIQkAMLIAMhCAsgEygCACIDQX9HDQALCyATKAIEIgNBf0cEQCAKKAIcIQggCigCJCEEIAooAhAhECAKKAIUIRggBUEIaiEXIAVBEGohGgNAAkAgAyAYTw0AIBAgA0EkbGoiBy0AIUECRg0AAkAgDSAHKQIIIiOnIgtNDQAgBykCACIkpyEUICNCIIinIRYCQCADIA8gC0EkbGoiHCgCHCILRwRAA0AgCyAYTw0CIBAgC0EkbGoiHCgCACILIANHDQALIBwgFDYCAAwBCyAcQRxqIBQ2AgALIA0gFk0NACAkQiCIpyEUIAMgDyAWQSRsaiIWKAIgIgtHBEADQCALIBhPDQIgECALQSRsaiIWKAIEIgsgA0cNAAsgFkEEaiAUNgIADAELIBZBIGogFDYCAAsgB0F/NgIMIAdCfzcCBCAHIAQ2AgAgFyAHQRhqKQIANwMAIBogB0EgaigCADYCACAFIAcpAhA3AwAgB0ECOgAhIAogAzYCJCAKIAhBAWsiCDYCHAJAIAUtABFBAkYNACAFKAIAIgQgBCgCAEEBayIENgIAIARFBEAgBRCQAwsgBSgCCCIEIAQoAgBBAWsiBDYCACAEDQAgEhCQAwsgAyEECyATKAIEIgNBf0cNAAsLIBNBfzYCBCATIAooAiAiAzYCACADQX9HBEAgAyANTw0CIA8gA0EkbGogFTYCIAsgCiAVNgIgIA4gGzYCACAOIAUpAxg3AgQgCiAKKAIYQQFrNgIYIA5BDGogBUEgaikDADcCACAOQRRqIAVBKGopAwA3AgALIAVBMGokAAwBCyADIA1B/MDAABD2AgALAkAgCSgCECIDQYCAgIB4Rg0AIAMEQCAJKAIUIANBARDlBAsgCSgCICEFIAkoAiQiBARAIAUhAwNAIAMoAgAiCARAIANBBGooAgAgCEEBEOUECyADQQxqIQMgBEEBayIEDQALCyAJKAIcIgNFDQAgBSADQQxsQQQQ5QQLIBkEQCAdIBlBARDlBAsgESACIgNHDQALDAELIAIgEUYNACARIAJrQQR2IQQgAkEIaiEDA0AgA0EEaygCACICBEAgAygCACACQQEQ5QQLIANBEGohAyAEQQFrIgQNAAsLIB4EQCAGIB5BBHRBBBDlBAsgCUHQAGokAAwDC0H8rMAAEOwEAAsgDiALQQhrKAIAIgtLBEAgByALQSRsai0AIUECRw0BCwsgCUEQaiASEO4CIAkoAgwiCCAJKAIERgRAIwBBEGsiAiQAIAJBBGogCUEEaiIGKAIAIgsgBigCBEEEIAtBAXQiCyALQQRNGyILQQRBEBCGAiACKAIEQQFGBEAgAigCCCACKAIMEMcEAAsgAigCCCEOIAYgCzYCACAGIA42AgQgAkEQaiQACyADIAVqIQYgCSgCCCAIQQR0aiICIAkpAhA3AgQgAiARNgIAIAJBDGogDygCADYCACAJIAhBAWoiCDYCDCAEIQIMAQsLAkAgASgChAEiA0EQTQRAIANFDQEgAUEEaiECA0AgAigCACIEIAQoAgBBAWsiBDYCACAERQRAIAIQkAMLIAJBCGohAiADQQFrIgMNAAsMAQsgASgCCCEEIAEoAgQiBgRAIAQhAgNAIAIoAgAiBSAFKAIAQQFrIgU2AgAgBUUEQCACEJADCyACQQhqIQIgBkEBayIGDQALCyAEIANBA3RBBBDlBAsgAUEANgKEASABQQA2AgAgASgCpAFBJGwhAiABKAKgASIDQRRqIQYDQAJAIAIEQCADLQAhQQJGDQEgBkEEayIEKAIAIgUgBSgCAEEBaiIFNgIAIAVFDQQgASAEKAIAIAYoAgAQYQwBCyAMQRBqIhshBEEAIQ0jAEHQAmsiByQAAkACQEEWQQEQ9wQiAwRAIANBDmpB1KzAACkAADcAACADQQhqQc6swAApAAA3AAAgA0HGrMAAKQAANwAAIAQQkgIgB0G4AWoQtQIgBygCwAEhBSAHKQO4ASEjIAQoAkQiBiAEKAI8RgRAIARBPGoQ1AILIAZB0ABsIhMgBCgCQGoiAkIANwMIIAJCADcDACACQhA3A0AgAkIWNwI4IAIgAzYCNCACQRY2AjAgAiAFNgIoIAIgIzcDICAEIAZBAWoiAjYCRCACBEACQCABKALYASICRQRAQQAhBQwBCyABKALUASIGLQAeIQUgAkEBRg0AIAJB////P2oiCEEDcSEDIAhB////P3FBAWtBA08EQCAGQZ4BaiECIAhB/P//P3EhCANAIAVB/wFxIgUgAkHgAGstAAAiCSAFIAlLGyIFIAJBQGotAAAiCSAFIAlLGyIFIAJBIGstAAAiCSAFIAlLGyIFIAItAAAiCSAFIAlLGyEFIAJBgAFqIQIgCCANQQRqIg1HDQALCyADRQ0AIA1BBXQgBmpBPmohAgNAIAVB/wFxIgYgAi0AACIFIAUgBkkbIQUgAkEgaiECIANBAWsiAw0ACwsgASgChAEiA0EQTQR/IAFBBGoFIAEoAgQhAyABKAIICyEKIAQoAkAhFSAHQQA2ArgBIAdBADYCvAIjAEEQayILJAAgB0G4AWoiCSgChAEiBiEEIAlBhAFqIQ4CQAJAAkACQAJAIAogA0EDdGoiDSAKa0EDdiICIAZBEU8EfyAJKAIEIQQgBgVBEAsgBGtLBEACQAJAIAIgBGoiAiAESQ0AQX8gAkEBa2d2QQAgAkECTxsiAkF/Rg0AIAtBCGogCSACQQFqEIIBIAsoAggiAkGBgICAeEYNASACDQMLQai2wABBEUG8tsAAEM0EAAsgDigCACEGCyAJQQRqIQMCfyAGQRFJBEAgBiECIAMhBEEQIQYgDgwBCyAJKAIEIQIgCSgCCCEEIAMLIQggAiAGTwRAIAIhBgwCCyAEIAJBA3RqIQQDQCAKIA1HBEAgCkEEaigCACERIAooAgAiDyAPKAIAQQFqIhI2AgAgEkUNBSAEIA82AgAgBEEEaiARNgIAIApBCGohCiAEQQhqIQQgAkEBaiICIAZHDQEMAwsLIAggAjYCAAwCCyACIAsoAgwQ/QQACyAIIAY2AgAgCiANRg0AA0AgCkEEaigCACERIAooAgAiDyAPKAIAQQFqIgI2AgAgAkUNAgJ/IA4oAgAiCEERSQRAIAghBCADIQZBECEIIA4MAQsgCSgCBCEEIAkoAgghBiADCyECIAQgCEYEQCAJEKcCIAkoAgQhBCAJKAIIIQYgAyECCyAGIARBA3RqIgQgETYCBCAEIA82AgAgAiACKAIAQQFqNgIAIApBCGoiCiANRw0ACwsgC0EQaiQADAELAAsgB0EEaiAJQYgB/AoAACATIBVqIRMgB0EANgKUASAHQoCAgIDAADcCjAEgB0EANgKgASAHQoCAgIDAADcCmAEgB0EANgKsASAHQoCAgIDAADcCpAEgBUH/AXEiEUUNAyABQQRqIRQgE0E8aiEWIAFBkAFqIR0gB0G0AWqtQoCAgIAQhCEjIAdBswFqrUKAgICAIIQhJCAHQcQCaiESIAdBCGohCyAHQYgBaiEOIAdByAJqIRBBASEVA0AgByAVOgCzASAHICQ3A7gBIBJBuYTAACAHQbgBaiICEIYBIBMQkgIgAhC1AiAHKALAASEEIAcpA7gBISUgEygCRCIDIBMoAjxGBEAgFhDUAgsgA0HQAGwiBiATKAJAaiICQgA3AwggAkIANwMAIAIgBDYCKCACICU3AyAgAiAHKQLAAjcCLCACQQA2AkQgAkKAgICAgAI3AjwgAkE0aiAQKQIANwIAIBMgA0EBaiICNgJEAkAgAgRAIAcoAogBIgJBEU8EfyAHKAIIBSACC0UNBiATKAJAIQJBDkEBEPcEIgMEQCADQQZqQeKswAApAAA3AAAgA0HcrMAAKQAANwAAIAIgBmoiDxCSAiAPQTxqIRggB0G4AWoQtQIgBygCwAEhBiAHKQO4ASElIA8oAkQiBCAPKAI8RgRAIBgQ1AILIA8oAkAgBEHQAGxqIgJCADcDCCACQgA3AwAgAkIQNwNAIAJCDjcCOCACIAM2AjQgAkEONgIwIAIgBjYCKCACICU3AyAgDyAEQQFqIgI2AkQgAgRAIAEoAtgBIgIEQCABKALUASIIIAJBBXRqIRcDQCABKAIEIAEoAoQBIgIgAkEQSyICGyEGIAEoAgggFCACGyENIAgiCUEgaiEIIAkoAgQiBCAJKAIIIhpBA3RqIR4gBCECAkADQAJAIAIgHkYEQCAaRQ0DIAcoAgggBygCiAEiAiACQRBLIgMbIQIgBygCDCALIAMbIQoDQAJAIAJFDQAgBCgCBCEGIAQoAgAhDUEAIQUgAkEBRwRAIA1BCGohGSACIQMDQCAFIANBAXYiGiAFaiIFIAogBUEDdGoiBSgCAEEIaiAZIAVBBGooAgAiBSAGIAUgBkkbEIADIhwgBSAGayAcG0EAShshBSADIBprIgNBAUsNAAsLIAogBUEDdGoiAygCAEEIaiANQQhqIANBBGooAgAiAyAGIAMgBkkbEIADDQAgAyAGRg0DCyAEQQhqIgQgHkcNAAsMAwsgBkUNAiACKAIEIQogAigCACEZQQAhBSAGQQFHBEAgGUEIaiEcIAYhAwNAIAUgA0EBdiIfIAVqIgUgDSAFQQN0aiIFKAIAQQhqIBwgBUEEaigCACIFIAogBSAKSRsQgAMiICAFIAprICAbQQBKGyEFIAMgH2siA0EBSw0ACwsgDSAFQQN0aiIDKAIAQQhqIBlBCGogA0EEaigCACIDIAogAyAKSRsQgAMNAiACQQhqIQIgAyAKRg0BDAILCyABKAKUASICIAEoApgBQSRsaiEeQQAhBANAIAIgHkYNASAEIgpBAWohBCACKAIAIAJBJGoiBiECQYCAgIB4Rg0AIAdBADYCrAEgB0EANgKgASAHKAKYAUUEQCAHQZgBahDQAgsgBygCnAEgCjYCACAHQQE2AqABIAcoApwBIQICfyAJKAIIIgMEQCAJKAIEIg0gA0EDdGohGUEBIQUgAiEDA0AgBQRAIAMgBUECdGohGgNAAkAgAygCACICIAEoApgBTw0AIAEoApQBIAJBJGxqIgIoAgBBgICAgHhGDQAgAigCHCIFIAEoAqQBIhxPDQAgASgCoAEhHwNAIB8gBUEkbGoiAi0AIUECRg0BIAIoAgAhBQJAIAIoAhQiICANKAIERw0AIAIoAgwhISACKAIQQQhqIA0oAgBBCGogIBCAAw0AIAcoAqwBIgIgBygCpAFGBEAgB0GkAWoQ0AILIAcoAqgBIAJBAnRqICE2AgAgByACQQFqNgKsAQsgBSAcSQ0ACwsgA0EEaiIDIBpHDQALIAcoApwBIQILIAcoApgBIQMgByAHKAKkATYCmAEgByADNgKkASAHKAKoASEDIAcgAjYCqAEgByADNgKcASAHKAKsASEFIAdBADYCrAEgByAFNgKgASADIQIgDUEIaiINIBlHDQALIAYhAiAFRQ0CIAMiAiAFQQJ0agwBCyACQQRqCyEZA0AgCS0AHEUgAigCACIDIApGcUUEQCAKIAMgCS0AHSIaGyEcIAcoApQBIgUgBygCjAFGBEAgB0GMAWoQzwILIAcoApABIAVBDGxqIg0gCTYCCCANIBw2AgQgDSADIAogGhs2AgAgByAFQQFqNgKUAQsgAkEEaiICIBlHDQALIAYhAgwACwALIAggF0cNAAsLIAcoApQBIgNFDQgCQAJ/IAcoAogBIgJBEU8EQEEAIQ0gBygCCCECIAshBSAHKAIMDAELIAJFDQEgAiACIAJBAWsiBCACIARJG0F/c2ohDSAOIQUgCwshBCACIA1NDQADQCAFIAJBAWsiAjYCACAEIAJBA3RqIgIoAgAiAyADKAIAQQFrIgM2AgAgA0UEQCACEJADCyANIAUoAgAiAkkNAAsgBygClAEhAwsgByADNgK0ASAHICM3A7gBIBJBs6XAACAHQbgBaiICEIYBIA8QkgIgAhC1AiAHKALAASEEIAcpA7gBISUgDygCRCIDIA8oAjxGBEAgGBDUAgsgDygCQCADQdAAbGoiAkIANwMIIAJCADcDACACIAQ2AiggAiAlNwMgIAIgBykCwAI3AiwgAkEANgJEIAJCgICAgIACNwI8IAJBNGogECkCADcCACAPIANBAWoiAjYCRCACBEAgBygClAEhAiAHQQA2ApQBIAJFDQQgBygCkAEiDSACQQxsaiEKA0AgDSgCCCICKAIUIQYgDSgCBCEFAkACQCANKAIAIgggASgCmAFPDQAgASgClAEgCEEkbGoiAygCAEGAgICAeEYNACADKAIcIgMgASgCpAEiGE8NACAGQQhqIR4gASgCoAEhGSACKAIYIQkDQCAZIANBJGxqIgQtACFBAkYNASAEKAIAIQMCQCAFIAQoAgxHDQAgBCgCFCAJRw0AIAQoAhBBCGogHiAJEIADRQ0DCyADIBhJDQALCyAGIAYoAgBBAWoiAzYCACADRQ0KIAEgAigCFCACKAIYEGEgAigCFCIDIAMoAgBBAWoiAzYCACADRQ0KIAdBBGogAigCFCACKAIYEGEgAigCFCIDIAMoAgBBAWoiAzYCACADRQ0KIAIoAhghAyACKAIUIQQgAigCDCIGIAYoAgBBAWoiBjYCACAGRQ0KIAdBADoAyQEgByADNgK8ASAHIAQ2ArgBIAcgBy0AswE6AMgBIAcgAikCDDcCwAEgHSAIIAUgB0G4AWpB7KzAABBHCyANQQxqIg0gCkcNAAsMBAsMFwsMFgtBAUEOEMcEAAsMFAsgDxC5ASAVQf8BcSICIBFPDQQgFSACIBFJaiIVQf8BcSARTQ0ACwwDCwwRC0EBQRYQxwQACwALIBMQuQEgBygCpAEiAgRAIAcoAqgBIAJBAnRBBBDlBAsgBygCmAEiAgRAIAcoApwBIAJBAnRBBBDlBAsgBygCjAEiAgRAIAcoApABIAJBDGxBBBDlBAsCQCAHKAKIASIFQRBNBEAgBUUNASAHQQhqIQIDQCACKAIAIgMgAygCAEEBayIDNgIAIANFBEAgAhCQAwsgAkEIaiECIAVBAWsiBQ0ACwwBCyAHKAIMIQQgBygCCCIDBEAgBCECA0AgAigCACIGIAYoAgBBAWsiBjYCACAGRQRAIAIQkAMLIAJBCGohAiADQQFrIgMNAAsLIAQgBUEDdEEEEOUECyAHQdACaiQAIAEgASgC3AFBAWo2AtwBAkBBHEEBEPcEIgMEQCADQRhqQZmswAAoAAA2AAAgA0EQakGRrMAAKQAANwAAIANBCGpBiazAACkAADcAACADQYGswAApAAA3AAAgGxCSAiAMQfAAahC1AiAMKAJ4IQYgDCkDcCEjIAwoAlQiBCAMKAJMRgRAICIQ1AILIAwoAlAgBEHQAGxqIgJCADcDCCACQgA3AwAgAkIQNwNAIAJCHDcCOCACIAM2AjQgAkEcNgIwIAIgBjYCKCACICM3AyAgDCAEQQFqIgI2AlQgAkUNAQJAIAEoAogBQQFHDQAgDEGBATYCbCAMQQhqIAFBjAFqIAxB7ABqEJsDIAwoAgwhAQJAIAwoAghBAXEEQCAMIAE2AnAgDEHwAGoQ9wEgAUGEAU8NAQwCCyABQYQBSQ0BCyABEKoDCyAMQRBqIQIjAEEgayIEJAACQAJAAkBB/J7BACgCAEEBRgRAQYCfwQAoAgAhAQwBC0GEn8EAKAIAIQFBhJ/BAEEANgIAIAFFDRAgAREKACEBQfyewQAoAgANAUGAn8EAIAE2AgBB/J7BAEEBNgIACyAEQRRqIAIQVyAEQQhqIAQoAhgiAiAEKAIcIgNBxMrAAEEBEDwgASAEKAIMIgEgBCgCEBDvBCAEKAIIIgYEQCABIAZBARDlBAsgAwRAIAIhAQNAIAEoAgAiBgRAIAFBBGooAgAgBkEBEOUECyABQQxqIQEgA0EBayIDDQALCyAEKAIUIgEEQCACIAFBDGxBBBDlBAsgBEEgaiQADAELIAEQxAQMDwsgAEGAgICAeDYCAAwMC0EBQRwQxwQACwwOCyADQSRqIQMgAkEkayECIAZBJGohBgwACwALQaTKwAAQ7AQLAAtBAUEcEMcEAAsMCAtBAUEQEMcEAAsMBgtBAUEWEMcEAAtBAUEPEMcEAAsgDCgCQCIABEAgDCgCRCAAQQEQ5QQLIAwoAlQiAwRAIAwoAlBBPGohAgNAIAJBDGsoAgAiAARAIAJBCGsoAgAgAEEBEOUECyACEMoCIAJB0ABqIQIgA0EBayIDDQALCyAMKAJMIgAEQCAMKAJQIABB0ABsQRAQ5QQLIAxBgAFqJAAPC0GYzMAAQdUAQcTMwAAQnAMAC0HUzMAAQR1B5MzAABCcAwALQQFBKRDHBAALQaTKwAAQ7AQAC9YPAgh/An4jAEHQAGsiByQAAkACQAJAQfyewQAoAgBBAUYEQEGAn8EAKAIAIQUMAQtBhJ/BACgCACEGQYSfwQBBADYCACAGRQ0BIAYRCgAhBUH8nsEAKAIADQJBgJ/BACAFNgIAQfyewQBBATYCAAsgBUGQysAAQQ4Q7gQgAUGQAWoQiQIgASgCkAEiBgRAIAEoApQBIAZBJGxBBBDlBAsgASgCpAEiCARAIAEoAqABQRBqIQUDQAJAIAVBEWotAABBAkYNACAFKAIAIgYgBigCAEEBayIGNgIAIAZFBEAgBRCQAwsgBUEIaiIKKAIAIgYgBigCAEEBayIGNgIAIAYNACAKEJADCyAFQSRqIQUgCEEBayIIDQALCyABKAKcASIGBEAgASgCoAEgBkEkbEEEEOUECyABQn83A7ABIAFCADcDqAEgAUIENwOgASABQgA3A5gBIAFCgICAgMAANwOQAQJAIAEoAoQBIghBEE0EQCAIRQ0BIAFBBGohBQNAIAUoAgAiBiAGKAIAQQFrIgY2AgAgBkUEQCAFEJADCyAFQQhqIQUgCEEBayIIDQALDAELIAEoAgghBiABKAIEIgkEQCAGIQUDQCAFKAIAIgogCigCAEEBayIKNgIAIApFBEAgBRCQAwsgBUEIaiEFIAlBAWsiCQ0ACwsgBiAIQQN0QQQQ5QQLIAFBADYChAEgAUEANgIAEOUCIQ5BmKDBAC0AAEECRwRAENcBCyABQbgBaiEJAkAgASgCvAEiDEUNACABKALEASILBEAgCSgCACIIQQhqIQUgCCkDAEJ/hUKAgYKEiJCgwIB/gyENA0AgDVAEQANAIAhBgAFrIQggBSkDACAFQQhqIQVCgIGChIiQoMCAf4MiDUKAgYKEiJCgwIB/UQ0ACyANQoCBgoSIkKDAgH+FIQ0LIAggDXqnQQF0QfABcWsiCkEQaygCACIGBEAgCkEMaygCACAGQQEQ5QQLIA1CAX0gDYMhDSALQQFrIgsNAAsLIAwgDEEEdEEXakFwcSIFakEJaiIGRQ0AIAkoAgAgBWsgBkEIEOUECyABIA43A8gBIAlBCGpBqKvAACkDADcDACAJQaCrwAApAwA3AwAgAUHQAWoiBRDvASABKALQASIGBEAgASgC1AEgBkEFdEEEEOUECyAFIAQpAgA3AgAgBUEIaiAEQQhqKAIANgIAIAdBADYCDCAHQoCAgIDAADcCBCACKAIIIQYgAigCBCEFIAcgAigCADYCGCAHIAU2AhQgByAFNgIQIAcgBSAGQRxsaiIENgIcIAYEQEEAIQkgB0EwaiEKQQghCwJAA0AgBSgCACIGQYCAgIB4RwRAIAogBUEUaikCADcDACAHQShqIgIgBUEMaikCADcDACAHIAVBBGopAgA3AyAgBygCBCAJRgRAIAdBBGoQ0gILIAcoAgggC2oiDCAHKQMgNwIAIAxBBGsgBjYCACAMQQhrQYCAgIB4NgIAIAxBCGogAikDADcCACAMQRBqIAopAwA3AgAgByAJQQFqIgk2AgwgC0EwaiELIAVBHGoiBSAERw0BDAILCyAFQRxqIQQLIAcgBDYCFAtBACEMIAdBEGoiCigCDCICIAooAgQiBWtBHG4hBCACIAVHBEADQCAFIAxBHGxqIgsoAgAiAgRAIAsoAgQgAkEBEOUECyALKAIUIgYEQCALKAIQIQkDQCAJKAIAIgIEQCAJQQRqKAIAIAJBARDlBAsgCUEMaiEJIAZBAWsiBg0ACwsgCygCDCICBEAgCygCECACQQxsQQQQ5QQLIAxBAWoiDCAERw0ACwsgCigCCCICBEAgCigCACACQRxsQQQQ5QQLIAMoAgghAiADKAIEIQUgByADKAIANgIYIAcgBTYCFCAHIAU2AhAgByAFIAJBMGxqIgM2AhwgAgRAIAdByABqIQsgB0FAayEJIAdBOGohDCAHQTBqIQogB0EoaiEGAkADQCAFKAIAIgJBgICAgHhHBEAgCyAFQSxqKAIANgIAIAkgBUEkaikCADcDACAMIAVBHGopAgA3AwAgCiAFQRRqKQIANwMAIAYgBUEMaikCADcDACAHIAVBBGopAgA3AyAgBygCDCIEIAcoAgRGBEAgB0EEahDSAgsgBygCCCAEQTBsaiIIIAcpAyA3AgQgCCACNgIAIAhBDGogBikDADcCACAIQRRqIAopAwA3AgAgCEEcaiAMKQMANwIAIAhBJGogCSkDADcCACAIQSxqIAsoAgA2AgAgByAEQQFqNgIMIAVBMGoiBSADRw0BDAILCyAFQTBqIQMLIAcgAzYCFAsgB0EQaiIEKAIMIgIgBCgCBCIGa0EwbiEDIAIgBkcEQANAIAYoAgAiAgRAIAZBBGooAgAgAkEBEOUECyAGQQxqKAIAIgIEQCAGQRBqKAIAIAJBARDlBAsgBkEYaigCACICBEAgBkEcaigCACACQQEQ5QQLIAZBJGooAgAiAgRAIAZBKGooAgAgAkEBEOUECyAGQTBqIQYgA0EBayIDDQALCyAEKAIIIgIEQCAEKAIAIAJBMGxBBBDlBAsgB0EoaiAHQQxqKAIANgIAIAcgBykCBDcDICAAIAEgB0EgahA0IAdB0ABqJAAPC0GYzMAAQdUAQcTMwAAQnAMACyAFEMQEQdTMwABBHUHkzMAAEJwDAAv9CgEKfyMAQUBqIggkACAIQQA2AgwgCEKAgICAEDcCBCAGQQJ0IQsgBEECdCEMAkAgBiAEIAQgBksbIg9FDQAgAyEJIAUhCgNAIAkoAgAiDSgCBCIOIAooAgAiESgCBEcNASANKAIAQQhqIBEoAgBBCGogDhCAAw0BIAlBBGohCSAKQQRqIQogDyAQQQFqIhBHDQALIA8hEAsgBSALaiENIAMgDGohDCAFIQkgAyEKAn8CQAJAA0ACQAJAAn8gCiAMRwRAIApBBGohCyAJIA1HDQIgCiEJIA0MAQsgCSANRg0EIAwhCyAJQQRqCyAJKAIAIQ4hCSALIQogDi0AEUEBRw0CDAELIAooAgAtABENACAJKAIAIAlBBGohCSALIQotABFFDQELCyAGRQRAIAhBAzYCFCAIQYiuwAA2AhAMAgsgCEEDNgIUIAhBj67AADYCEEEADAILIAYEQCAIQQM2AhQgCEGSrsAANgIQQQAMAgsgCEEENgIUIAhBi67AADYCEAtBAQshDiAEQQxsIQlBACEKAkACQCAEQarVqtUASw0AAn8gCUUEQEEEIQxBAAwBC0EEIQogCUEEEPcEIgxFDQEgBAshDSAEBEAgB0EsaiELIAwhCSAEIQoDQCAIQSBqIAMoAgAgCxBCIAlBCGogCEEoaigCADYCACAJIAgpAiA3AgAgA0EEaiEDIAlBDGohCSAKQQFrIgoNAAsLIAhBIGogDCAEQZWuwABBAhA8IAgoAiQhCQJ/IAgoAigiA0UEQEEAIQtBAQwBCyAIQQRqQQAgA0EBQQEQiAIgCCgCDCELIAgoAggLIQogAwRAIAogC2ogCSAD/AoAAAsgCCAIKAIMIANqIgs2AgwgCCgCICIDBEAgCSADQQEQ5QQLIAQEQCAMIQkDQCAJKAIAIgMEQCAJQQRqKAIAIANBARDlBAsgCUEMaiEJIARBAWsiBA0ACwsgDQRAIAwgDUEMbEEEEOUECyAPIBBNIA5yRQRAQQAhCiAIKAIEIAtrQQJNBEAgCEEEaiALQQNBAUEBEIgCIAgoAgwhCwsgCCgCCCIMIAtqIgNBl67AAC8AADsAACADQQJqQZmuwAAtAAA6AAAgCCALQQNqIgQ2AgwgBkEMbCEJIAZBqtWq1QBLDQICfyAJRQRAQQQhA0EADAELQQQhCiAJQQQQ9wQiA0UNAyAGCyEPIAdBLGohByADIQkgBiEKA0AgCEEgaiILIAUoAgAgBxBCIAlBCGogCEEoaigCADYCACAJIAgpAiA3AgAgBUEEaiEFIAlBDGohCSAKQQFrIgoNAAsgCyADIAZBla7AAEECEDwgCCgCJCEHIAgoAigiBSAIKAIEIARrSwRAIAhBBGogBCAFQQFBARCIAiAIKAIIIQwgCCgCDCEECyAFBEAgBCAMaiAHIAX8CgAACyAIIAQgBWoiCzYCDCAIKAIgIgQEQCAHIARBARDlBAsgAyEJA0AgCSgCACIEBEAgCUEEaigCACAEQQEQ5QQLIAlBDGohCSAGQQFrIgYNAAsgAyAPQQxsQQQQ5QQLAkAgC0UEQCAIIAE2AhggCCACNgIcIAggCEEcaq1CgICAgBCENwMwIAggCEEQaq1CgICAgDCENwMoIAggCEEYaq1CgICAgBCENwMgIABBzqjAACAIQSBqEIYBDAELIAggATYCGCAIIAI2AhwgCCAIQRxqrUKAgICAEIQ3AzggCCAIQQRqrUKAgICAwACENwMwIAggCEEQaq1CgICAgDCENwMoIAggCEEYaq1CgICAgBCENwMgIABBuajAACAIQSBqEIYBCyAIKAIEIgAEQCAIKAIIIABBARDlBAsgCEFAayQADwsgCiAJEMcEAAsgCiAJEMcEAAvdCQIUfwJ+IwBB0AJrIhAkAAJAIAFBAkkNAEKAgICAgICAgMAAIAGtIhqAIhsgGn5CgICAgICAgIDAAFKtAn8gAUGBIE8EQCABEMEDDAELQcAAIAEgAUEBdmsiBiAGQcAATxsLIREgG3whGiAAQQxrIRYgAEEgaiEXQQEhCANAQQAhD0EBIQkgASAOSyIYBEAgACAOQQxsIg9qIQcCfwJAIAEgDmsiBiARSQ0AAkAgBkECSQRAIAYhCQwBCwJ/AkACQCAHQRRqKAIAIgsgB0EIaigCAEkiDEUEQEECIQkgBkECRg0EIA8gF2ohDQNAIAsgDSgCACILSw0DIA1BDGohDSAGIAlBAWoiCUcNAAsMAQtBAiEJQQEgBkECRg0CGiAPIBdqIQ0DQCALIA0oAgAiC00NAiANQQxqIQ0gBiAJQQFqIglHDQALCyAGIQkLIAkgEUkNAiAMRQ0BIAlBAkkEQEEBIQkMAgsgCUEBdgshDSAWIAlBDGwgD2pqIQYDQCAHKAIAIQsgByAGKAIANgIAIAYgCzYCACAHQQRqIgspAgAhGyALIAZBBGoiCykCADcCACALIBs3AgAgBkEMayEGIAdBDGohByANQQFrIg0NAAsLIAlBAXRBAXIMAQsgBiARIAYgEUkbQQF0IARFDQAaIAdBICAGIAZBIE8bIgYgAiADQQBBACAFEC4gBkEBdEEBcgshCSAOrSIbIAlBAXYgDmqtfCAafiAOIAhBAXZrrSAbfCAafoV5pyEPCwJAAkAgCkECSQ0AIBYgDkEMbCIGaiENIAAgBmohGQNAIApBAWsiCyAQQY4CamotAAAgD0kNAQJ/AkACQCADIBBBBGogC0ECdGooAgAiDEEBdiIGIAhBAXYiB2oiEk8gCCAMckEBcUVxRQRAIAAgDiASa0EMbGohCiAMQQFxRQ0BDAILIBJBAXQMAgsgCiAGIAIgAyAGQQFyZ0EBdEE+c0EAIAUQLgsgCEEBcUUEQCAKIAZBDGxqIAcgAiADIAdBAXJnQQF0QT5zQQAgBRAuCwJAIAhBAkkgDEECSXINACADIAcgBiAGIAdLIgwbIgdJDQAgCiAGQQxsaiEIIAdBDGwiBgRAIAIgCCAKIAwbIAb8CgAACyACIAZqIQcCQCAMRQRAIAIhBgNAIAogCCAGIAhBCGooAgAiDCAGQQhqKAIAIhNJIhQbIhUpAgA3AgAgCkEIaiAVQQhqKAIANgIAIApBDGohCiAGIAwgE09BDGxqIgYgB0YNAiAIIBRBDGxqIgggGUcNAAsMAQsgDSEGA0ACQCAGIAhBDGsiDCAHQQxrIhMgB0EEaygCACIUIAhBBGsoAgAiCEkiBxsiFSkCADcCACAGQQhqIBVBCGooAgA2AgAgEyAHQQxsaiEHIAwgCCAUTUEMbGoiCCAKRg0AIAZBDGshBiACIAdHDQELCyAIIQogAiEGCyAHIAZrIghFDQAgCiAGIAj8CgAACyASQQF0QQFyCyEIQQEhByALIgpBAUsNAAsMAQsgCiEHCyAQQY4CaiAHaiAPOgAAIBBBBGogB0ECdGogCDYCACAYBEAgB0EBaiEKIAlBAXYgDmohDiAJIQgMAQsLIAhBAXENACAAIAEgAiADIAFBAXJnQQF0QT5zQQAgBRAuCyAQQdACaiQAC80JAhN/An4jAEHQAmsiECQAAkAgAUECSQ0AQoCAgICAgICAwAAgAa0iGYAiGiAZfkKAgICAgICAgMAAUq0CfyABQYEgTwRAIAEQwQMMAQtBwAAgASABQQF2ayIGIAZBwABPGwshEiAafCEZIABBDGshFCAAQQxqIRVBASEIA0BBACEPQQEhCSABIA5LIhcEQCAAIA5BDGwiD2ohBgJ/AkAgASAOayIKIBJJDQACQCAKQQJJBEAgCiEJDAELAn8CQAJAIAUoAgAiDCAGQQxqIAYQgwEiEUUEQEECIQkgCkECRg0EIA8gFWohDQNAIAwgDUEMaiIHIA0QgwENAyAHIQ0gCiAJQQFqIglHDQALDAELQQIhCUEBIApBAkYNAhogDyAVaiENA0AgDCANQQxqIgcgDRCDAUUNAiAHIQ0gCiAJQQFqIglHDQALCyAKIQkLIAkgEkkNAiARRQ0BIAlBAkkEQEEBIQkMAgsgCUEBdgshDSAUIAlBDGwgD2pqIQcDQCAGKAIAIQogBiAHKAIANgIAIAcgCjYCACAGQQRqIgopAgAhGiAKIAdBBGoiCikCADcCACAKIBo3AgAgB0EMayEHIAZBDGohBiANQQFrIg0NAAsLIAlBAXRBAXIMAQsgCiASIAogEkkbQQF0IARFDQAaIAZBICAKIApBIE8bIgYgAiADQQBBACAFECogBkEBdEEBcgshCSAOrSIaIAlBAXYgDmqtfCAZfiAOIAhBAXZrrSAafCAZfoV5pyEPCwJAAkAgC0ECSQ0AIBQgDkEMbCIGaiENIAAgBmohGANAIAtBAWsiCiAQQY4CamotAAAgD0kNAQJ/AkACQCADIBBBBGogCkECdGooAgAiDEEBdiIGIAhBAXYiB2oiEU8gCCAMckEBcUVxRQRAIAAgDiARa0EMbGohCyAMQQFxRQ0BDAILIBFBAXQMAgsgCyAGIAIgAyAGQQFyZ0EBdEE+c0EAIAUQKgsgCEEBcUUEQCALIAZBDGxqIAcgAiADIAdBAXJnQQF0QT5zQQAgBRAqCwJAIAhBAkkgDEECSXINACADIAcgBiAGIAdLIgwbIgdJDQAgCyAGQQxsaiEIIAdBDGwiBgRAIAIgCCALIAwbIAb8CgAACyACIAZqIQcgBSgCACEWAkAgDEUEQCACIQYDQCALIAggBiAWIAggBhCEASIMGyITKQIANwIAIAtBCGogE0EIaigCADYCACALQQxqIQsgBiAMQQFzQQxsaiIGIAdGDQIgCCAMQQxsaiIIIBhHDQALDAELIA0hBgNAAkAgBiAIQQxrIgggB0EMayIHIBYgByAIEIQBIgwbIhMpAgA3AgAgBkEIaiATQQhqKAIANgIAIAcgDEEMbGohByAIIAxBAXNBDGxqIgggC0YNACAGQQxrIQYgAiAHRw0BCwsgCCELIAIhBgsgByAGayIIRQ0AIAsgBiAI/AoAAAsgEUEBdEEBcgshCEEBIQYgCiILQQFLDQALDAELIAshBgsgEEGOAmogBmogDzoAACAQQQRqIAZBAnRqIAg2AgAgFwRAIAZBAWohCyAJQQF2IA5qIQ4gCSEIDAELCyAIQQFxDQAgACABIAIgAyABQQFyZ0EBdEE+c0EAIAUQKgsgEEHQAmokAAvuCgIWfwN+IwBBoAFrIgokACAKQQA2AgggCkKAgICAwAA3AgACQAJAIAcoAgAgCE8gBSAGT3IiGA0AQX8hDQJAIAIgASgCmAFPDQAgASgClAEgAkEkbGoiAigCAEGAgICAeEYNACACKAIcIQ0LIAEoAqQBIRAgASgCoAEhFSAEKAIIIgIEQCANIBBPDQEgBUEBaiEZIAJBA3QhGiAKQcgAaiERIApBPGohFiABKALcASEbIAQoAgQhHCAJKAIAIhdBBGshHSAJQRBqIR4gCSgCBCESIAkoAgwhHwNAIBUgDSITQSRsaiILLQAhQQJGDQIgCygCEEEIaiEUIAsoAhQhDiALKAIMIQ8gCygCACENIBohDCAcIQICQANAAkAgDiACQQRqKAIARgRAIAIoAgBBCGogFCAOEIADRQ0BCyACQQhqIQIgDEEIayIMDQEMAgsLIAogDzYCDAJAIBdFDQAgH0UNASASIB4gCkEMahBzIiCncSECICBCGYhC/wCDQoGChIiQoMCAAX4hIkEAIQwDQCACIBdqKQAAIiEgIoUiIEJ/hSAgQoGChIiQoMCAAX2DQoCBgoSIkKDAgH+DIiBQRQRAA0AgHSAgeqdBA3YgAmogEnFBAnRrKAIAIA9GDQMgIEIBfSAggyIgUEUNAAsLICEgIUIBhoNCgIGChIiQoMCAf4NQRQ0CIAIgDEEIaiIMaiAScSECDAALAAsgAygCDCEMIAsoAhAiAiACKAIAQQFqIgI2AgAgAgRAIAcgBygCAEEBaiIONgIAIAsoAhAhAiALKAIUIQsgCiATNgIgIAogDzYCHCAKIAw2AhggCiAbNgIkIAogCzYCFCAKIAI2AhACQAJAAkAgDkGQzgBNBEAgCkH4AGogCkEgaikCADcDACAKQfAAaiAKQRhqKQIANwMAIAogCikCEDcDaCAKQThqIAEgDyAKQegAaiAEIBkgBiAHIAggCRA5IApBMGoiAiITIBZBCGooAgA2AgAgCiAWKQIANwMoIAooAjgiC0GAgICAeEcNASAAIAopAyg3AgQgAEGAgICAeDYCACAAQQxqIAIoAgA2AgAMAwtBxwBBARD3BCIBRQ0BIAFBm67AAEHHAPwKAAAgAEHHADYCDCAAIAE2AgggAEKAgICA+Ag3AgAgAiACKAIAQQFrIgA2AgAgAA0CIApBEGoQkAMMAgsgCkGYAWoiDyARQRhqKQIANwMAIApBkAFqIg4gEUEQaikCADcDACAKQYgBaiIUIBFBCGopAgA3AwAgCiARKQIANwOAASAKKAIIIgwgCigCAEYEQCAKENICCyAKKAIEIAxBMGxqIgIgCikDKDcCBCACIAs2AgAgAiAKKQOAATcCECACQQxqIBMoAgA2AgAgAkEYaiAUKQMANwIAIAJBIGogDikDADcCACACQShqIA8pAwA3AgAgCiAMQQFqNgIIDAMLQQFBxwAQxwQACyAKEMgCIAooAgAiAARAIAooAgQgAEEwbEEEEOUECyADKAIAIgAgACgCAEEBayIANgIAIAANBSADEJADDAULAAsgDSAQSQ0ACwwBCyANIBBPDQADQCAVIA1BJGxqIgEtACFBAkYNASABKAIAIg0gEEkNAAsLIApBQGsiASAKQQhqKAIANgIAIApBzABqIANBCGopAgA3AgAgCkHUAGogA0EQaikCADcCACAAIAopAgAiIDcCACAKIAMpAgA3AkQgAEEIaiABKQMANwIAIABBEGogCkHIAGopAwA3AgAgAEEYaiAKQdAAaikDADcCACAAQSBqIApB2ABqKAIANgIAIAogIDcDOCAAIBg6ACwgAEEANgIoIAAgBTYCJAsgCkGgAWokAAvVCQENfyAAIABBFGooAgAiBCAAQQhqKAIAIgZJQQxsaiIKIABBJEEYIABBLGooAgAgAEEgaigCAEkiBRtqIgMgACAEIAZPQQxsaiIEIABBGEEkIAUbaiIGQQhqKAIAIARBCGooAgBJIgUbIANBCGooAgAgCkEIaigCAEkiBxsiCEEIaigCACEJIAYgBCADIAcbIAUbIgtBCGooAgAhDCACQQhqIg0gAyAKIAcbIgNBCGooAgA2AgAgAiADKQIANwIAIAIgCyAIIAkgDEsiAxsiCikCADcCDCACQRRqIApBCGooAgA2AgAgAkEgaiAIIAsgAxsiA0EIaigCADYCACACIAMpAgA3AhggAkEsaiIJIAQgBiAFGyIDQQhqKAIANgIAIAJBJGoiCiADKQIANwIAIABBMGoiA0EYQSQgAEHcAGooAgAgAEHQAGooAgBJIgQbaiIGIAMgAEHEAGooAgAiBSAAQThqKAIAIgdPQQxsaiIAIANBJEEYIAQbaiIEIARBCGooAgAgAyAFIAdJQQxsaiIDQQhqKAIASSIFGyAGQQhqKAIAIABBCGooAgBJIgcbIghBCGooAgAhDCADIAQgACAHGyAFGyILQQhqKAIAIQ4gAkE4aiIPIAQgAyAFGyIEQQhqKAIANgIAIAJBMGoiAyAEKQIANwIAIAJBPGogCCALIAwgDkkiBBsiBSkCADcCACACQcQAaiAFQQhqKAIANgIAIAJByABqIAsgCCAEGyIEKQIANwIAIAJB0ABqIARBCGooAgA2AgAgAkHUAGoiBCAAIAYgBxsiACkCADcCACACQdwAaiIGIABBCGooAgA2AgAgASADIAIgDygCACIFIA0oAgAiB0kiABsiCCkCADcCACABQQhqIAhBCGooAgA2AgAgASAKIAQgBigCACIGIAkoAgAiCEkiCxsiCSkCADcCVCABQdwAaiAJQQhqKAIANgIAIAEgAyAAQQxsaiIAIAIgBSAHT0EMbGoiAiAAQQhqKAIAIgUgAkEIaigCACIHSSIJGyIDKQIANwIMIAFBFGogA0EIaigCADYCACABIApBdEEAIAsbaiIDIARBdEEAIAYgCE8baiIEIARBCGooAgAiCiADQQhqKAIAIgZJIggbIgspAgA3AkggAUHQAGogC0EIaigCADYCACABIAAgCUEMbGoiACACIAUgB09BDGxqIgIgAEEIaigCACIFIAJBCGooAgAiB0kiCxsiCSkCADcCGCABQSBqIAlBCGooAgA2AgAgASADQXRBACAIG2oiAyAEQXRBACAGIApNG2oiBCAEQQhqKAIAIgogA0EIaigCACIGSSIIGyIJKQIANwI8IAFBxABqIAlBCGooAgA2AgAgASAAIAtBDGxqIgAgAiAFIAdPQQxsaiICIABBCGooAgAiBSACQQhqKAIAIgdJIgsbIgkpAgA3AiQgAUEsaiAJQQhqKAIANgIAIAEgA0F0QQAgCBtqIgMgBEF0QQAgBiAKTRtqIgQgBEEIaigCACIKIANBCGooAgAiBkkiCBsiCSkCADcCMCABQThqIAlBCGooAgA2AgACQCACIAUgB09BDGxqIANBdEEAIAgbakEMakYEQCAAIAtBDGxqIARBdEEAIAYgCk0bakEMakYNAQsQ7QQACwv8CAIGfwN+AkACQAJAIAFBCE8EQCABQQdxIgJFDQEgACgCoAEiBEEpTw0CIARFBEAgAEEANgKgAQwCCyAEQQJ0IgZBBGsiA0ECdkEBaiIFQQNxIQcgAkECdCgC9ItBIAJ2rSEKAkAgA0EMSQRAIAAhAgwBCyAFQfz///8HcSEDIAAhAgNAIAIgAjUCACAKfiAJfCIIPgIAIAJBBGoiBSAFNQIAIAp+IAhCIIh8Igg+AgAgAkEIaiIFIAU1AgAgCn4gCEIgiHwiCD4CACACQQxqIgUgBTUCACAKfiAIQiCIfCIIPgIAIAhCIIghCSACQRBqIQIgA0EEayIDDQALCyAHBEAgB0ECdCEDA0AgAiACNQIAIAp+IAl8Igg+AgAgAkEEaiECIAhCIIghCSADQQRrIgMNAAsLIAAgCEKAgICAEFoEfyAEQShGDQQgACAGaiAJPgIAIARBAWoFIAQLNgKgAQwBCyAAKAKgASIEQSlPDQEgBEUEQCAAQQA2AqABDwsgAUECdDUC9ItBIQogBEECdCIHQQRrIgJBAnZBAWoiA0EDcSEBAkAgAkEMSQRAIAAhAgwBCyADQfz///8HcSEDIAAhAgNAIAIgAjUCACAKfiAJfCIIPgIAIAJBBGoiBiAGNQIAIAp+IAhCIIh8Igg+AgAgAkEIaiIGIAY1AgAgCn4gCEIgiHwiCD4CACACQQxqIgYgBjUCACAKfiAIQiCIfCIIPgIAIAhCIIghCSACQRBqIQIgA0EEayIDDQALCyABBEAgAUECdCEDA0AgAiACNQIAIAp+IAl8Igg+AgAgAkEEaiECIAhCIIghCSADQQRrIgMNAAsLIAAgCEKAgICAEFoEfyAEQShGDQMgACAHaiAJPgIAIARBAWoFIAQLNgKgAQ8LAkAgAUEIcQRAIAAoAqABIgRBKU8NAgJAIARFBEBBACEEDAELIARBAnQiBkEEayICQQJ2QQFqIgNBA3EhBwJAIAJBDEkEQEIAIQggACECDAELIANB/P///wdxIQNCACEIIAAhAgNAIAIgAjUCAELh6xd+IAh8Igg+AgAgAkEEaiIFIAU1AgBC4esXfiAIQiCIfCIIPgIAIAJBCGoiBSAFNQIAQuHrF34gCEIgiHwiCD4CACACQQxqIgUgBTUCAELh6xd+IAhCIIh8Igk+AgAgCUIgiCEIIAJBEGohAiADQQRrIgMNAAsLIAcEQCAHQQJ0IQMDQCACIAI1AgBC4esXfiAIfCIJPgIAIAJBBGohAiAJQiCIIQggA0EEayIDDQALCyAJQoCAgIAQVA0AIARBKEYNAiAAIAZqIAg+AgAgBEEBaiEECyAAIAQ2AqABCyABQRBxBEAgAEGcjMEAQQIQSAsgAUEgcQRAIABBpIzBAEEDEEgLIAFBwABxBEAgAEGwjMEAQQUQSAsgAUGAAXEEQCAAQcSMwQBBChBICyABQYACcQRAIABB7IzBAEETEEgLIAAgARBeGg8LDAELQQAgBEEoQaj4wAAQtgEAC0EoQShBqPjAABD2AgALuggCB38BfiMAQRBrIgokAAJAAkACQAJAIAIEQAJAIAStIAJBDGwiBUEMayIIQQxurX4iDEIgiFAEQCAMpyEJIAEhBgNAIAVFDQIgBkEIaiAFQQxrIQUgBkEMaiEGKAIAIgcgCWoiCSAHTw0ACwtBoN3AAEE1QdjdwAAQnQMAC0EAIQUgCUEASA0BAkAgCUUEQEEBIQYMAQtBASEFIAlBARD3BCIGRQ0CC0EAIQcgCkEANgIMIAogBjYCCCABQQhqKAIAIQUgCiAJNgIEIAFBBGooAgAhCyAFIAlLBEAgCkEEakEAIAVBAUEBEIgCIAooAgwhByAKKAIIIQYLIAUEQCAGIAdqIAsgBfwKAAALIAkgBSAHaiIHayEFIAYgB2ohBgJAAkACQAJAAkACQCAEDgUEAwIBAAULIAJBAUYNByABQRRqIQQDQCAFQQNNDQogBEEEaygCACEHIAQoAgAhASAGIAMoAAA2AAAgBUEEayIFIAFJDQogBkEEaiECIAEEQCACIAcgAfwKAAALIARBDGohBCAFIAFrIQUgASACaiEGIAhBDGsiCA0ACwwHCyACQQFGDQYgAUEUaiEEA0AgBUECTQ0JIARBBGsoAgAhByAEKAIAIQEgBiADLwAAOwAAIAZBAmogA0ECai0AADoAACAFQQNrIgUgAUkNCSAGQQNqIQIgAQRAIAIgByAB/AoAAAsgBEEMaiEEIAUgAWshBSABIAJqIQYgCEEMayIIDQALDAYLIAJBAUYNBSABQRRqIQQDQCAFQQFNDQggBEEEaygCACEHIAQoAgAhASAGIAMvAAA7AAAgBUECayIFIAFJDQggBkECaiECIAEEQCACIAcgAfwKAAALIARBDGohBCAFIAFrIQUgASACaiEGIAhBDGsiCA0ACwwFCyACQQFGDQQgAUEUaiEEA0AgBUUNByAEQQRrKAIAIQcgBCgCACEBIAYgAy0AADoAACAFQQFrIgUgAUkNByAGQQFqIQIgAQRAIAIgByAB/AoAAAsgBEEMaiEEIAUgAWshBSABIAJqIQYgCEEMayIIDQALDAQLIAJBAUYNAyABQRRqIQMDQCAFIAMoAgAiAUkNBiABBEAgBiADQQRrKAIAIAH8CgAACyADQQxqIQMgBSABayEFIAEgBmohBiAIQQxrIggNAAsMAwsgAkEBRg0CIAFBFGohAgNAIAQgBUsNBSACQQRrKAIAIQcgAigCACEBIAQEQCAGIAMgBPwKAAALIAUgBGsiBSABSQ0FIAQgBmohBiABBEAgBiAHIAH8CgAACyACQQxqIQIgBSABayEFIAEgBmohBiAIQQxrIggNAAsMAgsgAEEANgIIIABCgICAgBA3AgAMAgsgBSAJEMcEAAsgACAKKQIENwIAIABBCGogCSAFazYCAAsgCkEQaiQADwtB0NzAAEETQZDdwAAQnAMAC5wIAQl/IAMgAEEMaiAAEIQBIQcgAEEkQRggAyAAQSRqIABBGGoQhAEiBRtqIQQgAyAAQRhBJCAFG2oiBiAAIAdBAXNBDGxqIgUgBCADIAQgACAHQQxsaiIHEIQBIggbIAMgBiAFEIQBIgkbIgogByAEIAUgCRsgCBsiCxCEASEMIAJBCGogBCAHIAgbIgRBCGooAgA2AgAgAiAEKQIANwIAIAJBFGogCiALIAwbIgRBCGooAgA2AgAgAiAEKQIANwIMIAJBIGogCyAKIAwbIgRBCGooAgA2AgAgAiAEKQIANwIYIAJBJGoiByAFIAYgCRsiBCkCADcCACACQSxqIARBCGooAgA2AgAgAyAAQTxqIABBMGoiBBCEASEGIARBJEEYIAMgAEHUAGogAEHIAGoQhAEiBRtqIQAgAyAEQRhBJCAFG2oiCCAEIAZBAXNBDGxqIgUgACADIAAgBCAGQQxsaiIEEIQBIgYbIAMgCCAFEIQBIgkbIgogBCAAIAUgCRsgBhsiCxCEASEMIAJBOGogACAEIAYbIgRBCGooAgA2AgAgAkEwaiIAIAQpAgA3AgAgAkHEAGogCiALIAwbIgRBCGooAgA2AgAgAkE8aiAEKQIANwIAIAJB0ABqIAsgCiAMGyIEQQhqKAIANgIAIAJByABqIAQpAgA3AgAgAkHUAGoiBCAFIAggCRsiBSkCADcCACACQdwAaiAFQQhqKAIANgIAIAEgACACIAMgACACEIQBIgUbIgYpAgA3AgAgAUEIaiAGQQhqKAIANgIAIAEgByAEIAMgBCAHEIQBIgYbIggpAgA3AlQgAUHcAGogCEEIaigCADYCACABIAAgBUEMbGoiACACIAVBAXNBDGxqIgIgAyAAIAIQhAEiBRsiCCkCADcCDCABQRRqIAhBCGooAgA2AgAgASAHIAZBdGxqIgcgBkEMbCAEakEMayIEIAMgBCAHEIQBIgYbIggpAgA3AkggAUHQAGogCEEIaigCADYCACABIAAgBUEMbGoiACACIAVBAXNBDGxqIgIgAyAAIAIQhAEiBRsiCCkCADcCGCABQSBqIAhBCGooAgA2AgAgASAHIAZBdGxqIgcgBkEMbCAEakEMayIEIAMgBCAHEIQBIgYbIggpAgA3AjwgAUHEAGogCEEIaigCADYCACABIAAgBUEMbGoiACACIAVBAXNBDGxqIgIgAyAAIAIQhAEiBRsiCCkCADcCJCABQSxqIAhBCGooAgA2AgAgASAHIAZBdGxqIgcgBkEMbCAEakEMayIEIAMgBCAHEIQBIgMbIgYpAgA3AjAgAUE4aiAGQQhqKAIANgIAAkAgAiAFQQFzQQxsaiAHIANBdGxqQQxqRgRAIAAgBUEMbGogA0EMbCAEakYNAQsQ7QQACwu7CQIIfwFvIwBBQGoiBSQAIAVBIGogAUEMaiILIAIQnQEgBSgCJCEGAkACQCAFKAIgIghBgICAgHhHBEAgBSgCKCECDAELIAVBIGogCyACEKEBIAUoAiQhByAFKAIgIghBgICAgHhHBEAgBSgCKCECIAchBgwBCxAZIQ0QYyIIIA0mASAFIAg2AgwgBUHRtMAAQQwQzwQiCTYCHCAFQSBqIAMgBhDnASAFIAUoAiQiCiAFKAIoEM8EIgM2AhAgBUEwaiAFQQxqIAVBHGogBUEQahCIAwJAIAUtADBFDQAgBSgCNCIMQYQBSQ0AIAwQqgMLIANBhAFPBEAgAxCqAwsgBSgCICIDBEAgCiADQQEQ5QQLIAlBhAFPBEAgCRCqAwsgBUHdtMAAQQkQzwQiAzYCECAFIAYoAgQgBigCCBDPBCIJNgIwIAVBIGogBUEMaiAFQRBqIAVBMGoQiAMCQCAFLQAgRQ0AIAUoAiQiCkGEAUkNACAKEKoDCyAJQYQBTwRAIAkQqgMLIANBhAFPBEAgAxCqAwsgBUHmtMAAQQ8QzwQiAzYCECAFQYIBQYMBIAYtABgbNgIwIAVBIGogBUEMaiAFQRBqIAVBMGoQiAMCQCAFLQAgRQ0AIAUoAiQiBkGEAUkNACAGEKoDCyADQYQBTwRAIAMQqgMLIAVB9bTAAEEIEM8EIgM2AhAgBUGCAUGDASAHLQARGzYCMCAFQSBqIAVBDGogBUEQaiAFQTBqEIgDAkAgBS0AIEUNACAFKAIkIgZBhAFJDQAgBhCqAwsgA0GEAU8EQCADEKoDCyAFQf20wABBCxDPBCIDNgIQIAUgBygCCEEIaiAHKAIMEM8EIgY2AjAgBUEgaiAFQQxqIAVBEGogBUEwahCIAwJAIAUtACBFDQAgBSgCJCIHQYQBSQ0AIAcQqgMLIAZBhAFPBEAgBhCqAwsgA0GEAU8EQCADEKoDCyAFQYi1wABBDxDPBCIDNgIYIAVBOGogBEEIaigCADYCACAFIAQpAgA3AzAgBUEgaiALIAIgBUEwahD6ASAFKAIkIQIgBSgCKCEEIAUoAiwhBiAFKAIgQQFGBEAgACAGNgIIIAAgBDYCBCAAIAI2AgAgA0GEAU8EQCADEKoDCyAIQYQBSQ0CIAgQqgMMAgsgBSAEIAYQzwQiBjYCHCAFQRBqIAVBDGogBUEYaiAFQRxqEIgDAkAgBS0AEEUNACAFKAIUIgdBhAFJDQAgBxCqAwsgBkGEAU8EQCAGEKoDCyACBEAgBCACQQEQ5QQLIANBhAFPBEAgAxCqAwsgBUGXtcAAQRMQzwQiAjYCECAFQYIBQYMBIAEtACwbNgIwIAVBIGogBUEMaiAFQRBqIAVBMGoQiAMCQCAFLQAgRQ0AIAUoAiQiAUGEAUkNACABEKoDCyACQYQBTwRAIAIQqgMLIABBgICAgHg2AgAgACAINgIEDAELIAAgAjYCCCAAIAY2AgQgACAINgIAIAQoAgQhASAEKAIIIgYEQCABIQADQCAAKAIAIgIEQCAAQQRqKAIAIAJBARDlBAsgAEEMaiEAIAZBAWsiBg0ACwsgBCgCACIARQ0AIAEgAEEMbEEEEOUECyAFQUBrJAAL4wgBCX8jAEEgayIHJABBCiEEAkACQAJAAkACQAJAIAEtABwiCUEDRg0AIAEtAB0iBSICQQNGIAIgCUlyIQIgASgCBCEDIAdBBGohBiABKAIAIQggAS0AHiEKIAlBAU0EQCAKQQFxBEAgAg0CIAMhAgNAAkAgBUEBaw4CBwAICwJAIAJBAU0EQEEBIQUgAUEBOgAdDAELIAcgARCvASAAIAYpAgA3AgAgAEEIaiAGQQhqKQIANwIAIABBEGogBkEQaikCADcCACAAQRhqIAZBGGooAgA2AgAgAiAHKAIAIgRrIQMgAiAESQ0FIAEgAzYCBEECIQUgAyECIAAtAABBCkcNCQtBCiEEIAUgCU8NAAsMAgsgAg0BIAMhAgNAAkACQAJAIAVBAWsOAgEACQsgAiEEAkACQAJAAkAgAg4CAwABC0EAIQQgCC0AAEEuRg0BDAILQQAhBCAILQAAQS5HDQEgCC0AAUEvRw0BC0EBIQQLIAIgBE0EQEEBIQUgAUEBOgAdDAILIAcgARCvASAAIAYpAgA3AgAgAEEIaiAGQQhqKQIANwIAIABBEGogBkEQaikCADcCACAAQRhqIAZBGGooAgA2AgAgAiAHKAIAIgRrIQMgAiAESQ0FIAEgAzYCBEECIQUgAyECIAAtAABBCkYNAQwJCyABQQM6AB0CQAJAIAIOAgUBAAsgCC0AAEEuRw0EIAgtAAFBL0YNBgwECyAILQAAQS5HDQMMBQtBCiEEIAUgCU8NAAsMAQsgCkEBcQRAIAINASADIQIDQAJAIAVBAWsOAgYABwsCQCACRQRAQQEhBSABQQE6AB1BACECDAELIAcgARCvASAAIAYpAgA3AgAgAEEIaiAGQQhqKQIANwIAIABBEGogBkEQaikCADcCACAAQRhqIAZBGGooAgA2AgAgAiAHKAIAIgRrIQMgAiAESQ0EIAEgAzYCBEECIQUgAyECIAAtAABBCkcNCAtBCiEEIAUgCU8NAAsMAQsgAg0AIAMhAgNAAkACQCAFQQFrDgIAAQcLIAFBAzoAHQJAAkAgAg4CBAABCyAILQAAQS5GDQUMAwsgCC0AAEEuRw0CIAgtAAFBL0YNBAwCCwJAIAIEQCAHIAEQrwEgACAGKQIANwIAIABBCGogBkEIaikCADcCACAAQRBqIAZBEGopAgA3AgAgAEEYaiAGQRhqKAIANgIAIAIgBygCACIEayEDIAIgBEkNBCABIAM2AgRBAiEFIAMhAiAALQAAQQpHDQgMAQtBASEFIAFBAToAHUEAIQILQQohBCAFIAlPDQALCyAAIAQ6AAAMBAtBACADIAJB7OfAABC2AQALIANBAWshAiADBEAgASACNgIEIABBBzoAAAwDC0EAIAJBAEHM58AAELYBAAsgAUEDOgAdIANBAWshAiADBEAgASACNgIEIABBBjoAAAwCC0EAIAJBAEHc58AAELYBAAtB3OTAAEEoQfznwAAQzQQACyAHQSBqJAALtQcCA34EfyABQcD///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/Rg0CIAAgBEEBajYCACADIAU2AhQgAyAANgIQIAMgAEEIaiIENgIMIAMgBCABIAIQegJAIAMoAgBBAXEEQCAAKAKsASEJIAAoAqgBIQpBfyEHAn9BfyADKAIEIgggACgCoAFPDQAaQX8gACgCnAEgCEEkbGoiBigCAEGAgICAeEYNABogBigCICEHIAYoAhwLIQYgAyAHNgI4IAMgBjYCNCADIAk2AiwgAyAKNgIoIAMgCDYCMCADIAQ2AjwgA0EBNgIkIANBGGogA0EkahBGDAELIANBADYCICADQoCAgIDAADcCGAsgAgRAIAEgAkEBEOUECyAAIAAoAgBBAWs2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCADQRRqEFELQRhBBBD3BCIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAykCGDcCDCAAQRRqIANBIGooAgA2AgAgA0FAayQAIABBCGoPCxD5BAsACxD7BAALQQRBGBD9BAALrwMBCH8jAEFAaiIDJAACQAJAAkAgAARAIABBCGsiBSAFKAIAQQFqIgQ2AgAgBEUNASAAKAIAIgRBf0YNAiAAIARBAWo2AgAgAyAFNgIUIAMgADYCECADIABBCGoiBDYCDCADIAQgASACEHoCQCADKAIAQQFxBEAgACgCrAEhCSAAKAKoASEKQX8hBwJ/QX8gAygCBCIIIAAoAqABTw0AGkF/IAAoApwBIAhBJGxqIgYoAgBBgICAgHhGDQAaIAYoAiAhByAGKAIcCyEGIAMgBzYCOCADIAY2AjQgAyAJNgIsIAMgCjYCKCADIAg2AjAgAyAENgI8IANBADYCJCADQRhqIANBJGoQRgwBCyADQQA2AiAgA0KAgICAwAA3AhgLIAIEQCABIAJBARDlBAsgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EUahBRC0EYQQQQ9wQiAEUNAyAAQQA2AgggAEKBgICAEDcCACAAIAMpAhg3AgwgAEEUaiADQSBqKAIANgIAIANBQGskACAAQQhqDwsQ+QQLAAsQ+wQAC0EEQRgQ/QQAC8ADAQd/IwBBEGsiCSQAQRAhAyABKAKEASIEIQYgAUEEaiIFIQggBEERTwRAIAEoAgQhBiABKAIIIQggBCEDCwJAAkAgAiAGTwRAAkACQAJAIAJBEU8EQEGBgICAeCEHIAIgA0YNBkEAIQcgAkH/////AUsgAkEDdCIFQfz///8HS3INBiAEQRFJDQIgA0EDdCEEIANB/////wFNDQEgBCEFDAYLQYGAgIB4IQcgBEERSQ0FIAFBADYCACAGQQN0IgIEQCAFIAggAvwKAAALIAEgBjYChAEgA0EDdCIBQf3///8HSSADQf////8BTXENAiAJIAE2AgwgCUEANgIIQey1wABBKyAJQQhqQdy1wABBmLbAABDrAgALIARB/P///wdLBEAgBCEFDAULQQQhByAIIARBBCAFEN4EIgNFDQQMAwtBBCEHIAVBBBD3BCIDRQ0DIAZBA3QiBEUNAiADIAggBPwKAAAMAgsgCCABQQQQ5QQMAgtBgLfAAEEgQaC3wAAQzQQACyABIAI2AoQBIAEgAzYCCCABIAY2AgQgAUEBNgIAQYGAgIB4IQcLIAAgBTYCBCAAIAc2AgAgCUEQaiQAC8cDAQZ/IwBBIGsiAyQAAkACQAJ/IAEoAggiBCACKAIIIgVHBEAgBCAFSQwBCwJAIARFBEBBACEBDAELIANBFGoiCCABKAIEIAAoAgAiARCdASADKAIYIQAgAygCFCIEQYCAgIB4Rw0CIANBCGoiBiAAEO4CIAMoAhAhBSADKAIMIQcgAygCCCEEIAggAigCBCABEJ0BIAMoAhghACADKAIUIgFBgICAgHhHDQMgBiAAEO4CIAMoAgwhAiADKAIIIQACQAJAIARBgICAgHhHBEBBASEBIABBgICAgHhGDQIgByACIAUgAygCECIBIAEgBUsbEIADIgYgBSABayAGGyIBQQBKIAFBAEhrIQEMAQtBf0EAIABBgICAgHhHGyEBIABBgICAgHhGDQILIAAEQCACIABBARDlBAsgBEGAgICAeEYNAQsgBEUNACAHIARBARDlBAsgAUF/RgsgA0EgaiQADwsgAyADKAIcNgIMIAMgADYCCCADIAQ2AgRBsMTAAEErIANBBGpBoMTAAEHsxMAAEOsCAAsgAyADKAIcNgIMIAMgADYCCCADIAE2AgRBsMTAAEErIANBBGpBoMTAAEHcxMAAEOsCAAvHAwEGfyMAQSBrIgMkAAJAAkACfyABKAIIIgQgAigCCCIFRwRAIAQgBUkMAQsCQCAERQRAQQAhAQwBCyADQRRqIgggASgCBCAAKAIAIgEQnQEgAygCGCEAIAMoAhQiBEGAgICAeEcNAiADQQhqIgYgABDuAiADKAIQIQUgAygCDCEHIAMoAgghBCAIIAIoAgQgARCdASADKAIYIQAgAygCFCIBQYCAgIB4Rw0DIAYgABDuAiADKAIMIQIgAygCCCEAAkACQCAEQYCAgIB4RwRAQQEhASAAQYCAgIB4Rg0CIAcgAiAFIAMoAhAiASABIAVLGxCAAyIGIAUgAWsgBhsiAUEASiABQQBIayEBDAELQX9BACAAQYCAgIB4RxshASAAQYCAgIB4Rg0CCyAABEAgAiAAQQEQ5QQLIARBgICAgHhGDQELIARFDQAgByAEQQEQ5QQLIAFBf0YLIANBIGokAA8LIAMgAygCHDYCDCADIAA2AgggAyAENgIEQYTXwABBKyADQQRqQfTWwABBwNfAABDrAgALIAMgAygCHDYCDCADIAA2AgggAyABNgIEQYTXwABBKyADQQRqQfTWwABBsNfAABDrAgALywUCFH8BfiMAQdAAayIFJAAgASgCBCIIIAEoAgAiA2tBMG4hCwJAAkAgAyAIRgRAQQQhDEEAIQsMAQsgC0ECdCIDQQQQ9wQiDEUNAQsgBUEYaiABQRBqKAIANgIAIAVBEGogAUEIaikCADcDACAFIAEpAgAiFjcDCCAWpyIDIAUoAgwiD0cEQCABKAIUIQEgBUEkaiIJQShqIRAgCUEgaiERIAlBGGohEiAJQRBqIRMgCUEIaiEUIAwhCANAIAMiBigCACIDQYCAgIB4RwRAIBAgBkEsaigCADYCACARIAZBJGopAgA3AgAgEiAGQRxqKQIANwIAIBMgBkEUaikCADcCACAUIAZBDGopAgA3AgAgCSAGQQRqKQIANwIAIAUgAzYCICMAQUBqIgIkACAFQSBqIgQoAgghCiAEQQA2AgggAkEANgIUIAIgATYCGCACIAQ2AgwgAiAKNgIQIAIgBCgCBCIDNgIEIAIgAyAKQTBsajYCCCACQRxqIAJBBGoQhQEgAkE4aiAEQRxqKQIANwIAIAJBMGogBEEUaikCADcCACACIAQpAgw3AiggBC0ALCEVIAQoAighCiAEKAIkIQMgASgCCCINIAEoAgBGBEAgARDSAgsgASgCBCANQTBsaiIHIAIpAhw3AgAgByAVOgAsIAcgCjYCKCAHIAM2AiQgB0EgaiACQTxqKAIANgIAIAdBGGogAkE0aikCADcCACAHQRBqIAJBLGopAgA3AgAgB0EIaiACQSRqKQIANwIAIAEgDUEBajYCCCAEEMgCIAQoAgAiAwRAIAQoAgQgA0EwbEEEEOUECyACQUBrJAAgCCANNgIAIAhBBGohCCAOQQFqIQ4gBkEwaiIDIA9HDQELCyAFIAZBMGo2AggLIAVBCGoQtwEgACAONgIIIAAgDDYCBCAAIAs2AgAgBUHQAGokAA8LQQQgAxDHBAALiQMBBn8jAEEQayIFJAACQAJAAkACQAJAAkAgAkEBcQRAIAJBAXYhAwwBCyABLQAAIgNFDQEgASEEA0AgBEEBaiEEAkAgA8BBAEgEQCADQf8BcUGAAUYEQCAGIAQvAAAiA2ohBiADIARqQQJqIQQMAgsgBCADQQNxQRh3IghBBXRBgICAgARxIAhBgICAgAJxIAhBgICACHFBB3RyckEddmogA0EBdkECcWogA0ECdkECcWohBCAGRSAHciEHDAELIAQgA0H/AXEiA2ohBCADIAZqIQYLIAQtAAAiAw0AC0EAIQMgByAGQRBJcQ0AQQAhByAGQQF0IgNBAEgNBAsgAw0BC0EBIQRBACEDDAELQQEhByADQQEQ9wQiBEUNAQsgBUEANgIIIAUgBDYCBCAFIAM2AgAgBUGc6cAAIAEgAhBfRQ0BQcTpwABB1gAgBUEPakG06cAAQZzqwAAQ6wIACyAHIAMQxwQACyAAIAUpAgA3AgAgAEEIaiAFQQhqKAIANgIAIAVBEGokAAuaAwIFfgl/AkACQAJAAkACQCAAKAIQIggOAgMBAAsgACgCGCIKIAEpAgAiAiAAKQMAhSIDQiCIIgVB+J/BACkDACIEQiCIIgZ+IAMgBH6FIAUgBEL/////D4N+IANC/////w+DIAZ+hUIgiIUiA6dxIQEgA0IZiEL/AINCgYKEiJCgwIABfiEEIAAoAhQiC0EEayEMIAJCIIinIQ0gACgCDCEAIAKnIQ4DQCABIAtqKQAAIgMgBIUiAkJ/hSACQoGChIiQoMCAAX2DQoCBgoSIkKDAgH+DIgJQRQRAA0AgDCACeqdBA3YgAWogCnFBAnRrKAIAIgcgCE8NBiAOIAAgB0EsbGoiDygCJEYEQCAPQShqKAIAIA1GDQULIAJCAX0gAoMiAlBFDQALCyADIANCAYaDQoCBgoSIkKDAgH+DUARAIAEgCUEIaiIJaiAKcSEBDAEFQQAPCwALAAsgASgCACAAKAIMIgAoAiRHDQEgASgCBCAAQShqKAIARw0BCyAAIAdBLGxqIQcLIAcPCyAHIAhB+MvAABD2AgALyQQBDH8jAEEgayIFJAAgAkEMbCEGAkACQCACQarVqtUASw0AAn8gBkUEQEEEIQNBAAwBC0EEIQQgBkEEEPcEIgNFDQEgAgshBiAFQQA2AhQgBSADNgIQIAUgBjYCDAJAIAIEQCACQQJ0IQtBCCEGQQAhAgNAIAVBGGogASACaigCACIEEIMFIAUoAhgiDkUNAiAFKAIcIQwgBEGEAU8EQCAEEKoDCyAFKAIMIAhGBEAjAEEQayIKJAAgCkEIaiENIAVBDGoiAygCACEHIwBBEGsiBCQAIARBBGogAygCACIJIAMoAgRBBCAHQQFqIgcgCUEBdCIJIAcgCUsbIgcgB0EETRsiB0EMEIwCAn8gBCgCBARAIAQoAgwhAyAEKAIIDAELIAQoAgghCSADIAc2AgAgAyAJNgIEQYGAgIB4CyEHIA0gAzYCBCANIAc2AgAgBEEQaiQAIAooAggiA0GBgICAeEcEQCADIAooAgwQxwQACyAKQRBqJAAgBSgCECEDCyADIAZqIgQgDDYCACAEQQRrIA42AgAgBEEIayAMNgIAIAUgCEEBaiIINgIUIAZBDGohBiALIAJBBGoiAkcNAAsgBSgCECEDIAUoAgwhBiABIAtBBBDlBAsgBiAITQRAIAMhAgwDCyAGQQxsIQEgCEUEQEEEIQIgAyABQQQQ5QQMAwsgAyABQQQgCEEMbCIBEN4EIgINAkEEIAEQxwQAC0HC4cAAQSgQ+gQACyAEIAYQxwQACyAAIAg2AgQgACACNgIAIAVBIGokAAuuAwEDfyMAQSBrIgUkAAJAAkAgAiAERwR/IAIgBEkFAkAgAkUEQEEAIQIMAQsgBUEUaiIGIAEgABCdASAFKAIYIQEgBSgCFCICQYCAgIB4Rw0CIAVBCGoiAiABEO4CIAUoAhAhBCAFKAIMIQcgBSgCCCEBIAYgAyAAEJ0BIAUoAhghACAFKAIUIgNBgICAgHhHDQMgAiAAEO4CIAUoAgwhAyAFKAIIIQACQAJAIAFBgICAgHhHBEBBASECIABBgICAgHhGDQIgByADIAQgBSgCECICIAIgBEsbEIADIgYgBCACayAGGyICQQBKIAJBAEhrIQIMAQtBf0EAIABBgICAgHhHGyECIABBgICAgHhGDQILIAAEQCADIABBARDlBAsgAUGAgICAeEYNAQsgAUUNACAHIAFBARDlBAsgAkF/RgsgBUEgaiQADwsgBSAFKAIcNgIMIAUgATYCCCAFIAI2AgRB2MrAAEErIAVBBGpByMrAAEGUy8AAEOsCAAsgBSAFKAIcNgIMIAUgADYCCCAFIAM2AgRB2MrAAEErIAVBBGpByMrAAEGEy8AAEOsCAAvnAgEFfwJAIAFBzf97QRAgACAAQRBNGyIAa08NACAAQRAgAUELakF4cSABQQtJGyIEakEMahAmIgJFDQAgAkEIayEBAkAgAEEBayIDIAJxRQRAIAEhAAwBCyACQQRrIgUoAgAiBkF4cSACIANqQQAgAGtxQQhrIgIgAEEAIAIgAWtBEE0baiIAIAFrIgJrIQMgBkEDcQRAIAAgAyAAKAIEQQFxckECcjYCBCAAIANqIgMgAygCBEEBcjYCBCAFIAIgBSgCAEEBcXJBAnI2AgAgASACaiIDIAMoAgRBAXI2AgQgASACEHIMAQsgASgCACEBIAAgAzYCBCAAIAEgAmo2AgALAkAgACgCBCIBQQNxRQ0AIAFBeHEiAiAEQRBqTQ0AIAAgBCABQQFxckECcjYCBCAAIARqIgEgAiAEayIEQQNyNgIEIAAgAmoiAiACKAIEQQFyNgIEIAEgBBByCyAAQQhqIQMLIAMLrQMCAn8CfiMAQSBrIg4kAAJAIABFBEBBgICAgHghAQwBCyAArSABrUIghoQhEAsgDkEIaiAJIAoQiAEgDigCDCEJIA4oAgghDwJAAkACQCALRQRAQYSAgIB4IQoMAQsgC0EIayIAKAIAQQFHDQEgDkEYaiALQRBqKAIANgIAIAsoAgQhCiALKQIIIREgAEEANgIAIA4gETcDECAAQX9GDQAgC0EEayILIAsoAgBBAWsiCzYCACALDQAgAEEcQQQQ5QQLQeQAQQQQ9wQiAEUNASAAIAo2AlAgACAQNwJIIAAgATYCRCAAIA82AjwgACAHNgI0IAAgBjYCMCAAIAc2AiwgACAFNgIoIAAgBDYCJCAAIAU2AiAgACADNgIcIAAgAjYCGCAAIAM2AhQgACAMNgIQIABBADYCCCAAQoGAgIAQNwIAIAAgCTYCQCAAIAk2AjggACAMQQBHNgIMIAAgDUEARzoAYSAAIAhBAEc6AGAgAEHcAGogDkEYaigCADYCACAAIA4pAxA3AlQgDkEgaiQAIABBCGoPC0HAzcAAQT8Q+gQAC0EEQeQAEP0EAAuTAwIDfwF+IwBBMGsiAiQAAkACQAJAAkAgAEUNACAAQQhrIgMoAgBBAUcNASACQShqIABBHGooAgA2AgAgAkEgaiAAQRRqKQIANwMAIAJBGGogAEEMaikCADcDACAAKQIEIQUgA0EANgIAIAIgBTcDEAJAIANBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACADQShBBBDlBAsgAUUNACABQQhrIgAgACgCAEEBaiIDNgIAIANFDQIgASgCAA0DIAFBfzYCACACIAA2AgwgAiABNgIIIAIgAUEEaiIDNgIEIAEoAgwiBCABKAIERgRAIAMQ0gILIAEoAgggBEEwbGoiAyACKQMQNwIEIANBgICAgHg2AgAgA0EMaiACQRhqKQMANwIAIANBFGogAkEgaikDADcCACADQRxqIAJBKGooAgA2AgAgASAEQQFqNgIMIAFBADYCACAAIAAoAgBBAWsiADYCACAARQRAIAJBDGoQ9wILIAJBMGokAA8LEPkEAAtBlbHAAEE/EPoECwALEPsEAAv5AgEFfiAAKAIAKQMAIAEgAkEEdGsiAUEIaygCACIArYohAyABQQxrKAIAIQFBgKDBACkDACEEQfifwQApAwAhBQJ+IABBEU8EQCADIAR8IQQgAEGAAk8EQCABIAAgAyAEQYigwQApAwAgA3xBkKDBACkDACADfCAFEEAMAgsgASAAIAMgBCAFEN4BDAELAkACQCAAQQdNBEAgAEEDSw0BIABFDQIgASAAQQF2ajEAACAAIAFqQQFrMQAAQgiGhCAEhSEEIAMgATEAAIUhAwwCCyABKQAAIAOFIQMgACABakEIaykAACAEhSEEDAELIAMgATUAAIUhAyAEIAAgAWpBBGs1AACFIQQLIANCIIgiBiAEQiCIIgd+IANC/////w+DIgMgBEL/////D4MiBH6FIAQgBn4gAyAHfoVCIImFCyIDQv////8Pg0L/AYUiBCAFQv////8PgyIGfiADQiCIIgMgBUIgiCIFfoUgBCAFfiADIAZ+hUIgiYUL9QIBBH8CQAJAAkACQAJAAkAgByAIVgRAIAcgCH0gCFgNAyAGIAcgBn1UIAcgBkIBhn0gCEIBhlpxDQIgBiAIWA0GIAcgBiAIfSIGfSAGVg0GIAIgA08NAUEAIAMgAkH4hMEAELYBAAsgAEEANgIADwsgASADaiEMIAEhCgJAAkADQCADIAlGDQEgCUEBaiEJIApBAWsiCiADaiILLQAAQTlGDQALIAsgCy0AAEEBajoAACAJQQFrIgVFDQEgC0EBakEwIAX8CwAMAQsCQCADRQRAQTEhCQwBCyABQTE6AABBMCEJIANBAWsiCkUNACABQQFqQTAgCvwLAAsgBEEBasEiBCAFwUwgAiADTXINACAMIAk6AAAgA0EBaiEDCyACIANJDQIMAwsgAiADTw0CQQAgAyACQYiFwQAQtgEACyAAQQA2AgAPC0EAIAMgAkHohMEAELYBAAsgACAEOwEIIAAgAzYCBCAAIAE2AgAPCyAAQQA2AgALiggBCX8jAEEwayIHJAACQAJAAkACQAJAAkBBBCABKAIAIghBgICAgHhzIAhBAE4bQQFrDgQBAgMEAAsgB0GAgICAeDYCCAwECyAHQYGAgIB4NgIIDAMLIAdBgoCAgHg2AggMAgsgB0GDgICAeDYCCAwBCyAHQQhqIAEQ7gIgByACNgIUCwJAAkACQCAGBEAgBkECdCEJIAUhCANAIAgoAgAiCiAETw0CIAdBGGogAyAKQRhsaiACEOQBIAcoAhhBgICAgHhHBEAgACAHKQIYNwIAIABBCGogB0EgaigCADYCACAHKAIIIghBhICAgHhIDQUMBAsgCEEEaiEIIAlBBGsiCQ0ACwsgByAENgIoIAcgAzYCJCAHIAI2AhwgByABNgIYIAcgB0EIajYCICAHIAdBGGo2AiwCQCAGQQJJDQAgBkEVTwRAIAdBLGohAkEAIQMjAEGAIGsiBCQAAkACQEGAifoAIAYgBkGAifoATxsiCCAGIAZBAXZrIgEgASAISRsiCEGBCE8EQCABQf////8DSyAIQQJ0IgFB/P///wdLcg0CQQQhAyABQQQQ9wQiCUUNAiAFIAYgCSAIIAZBwQBJIAIQLyAJIAFBBBDlBAwBCyAFIAYgBEGACCAGQcEASSACEC8LIARBgCBqJAAMAgsgAyABEMcEAAsgB0EsaiEBAkACQCAGBEAgBkEBRwRAIAUgBkECdGohDSAFQQQiAmohCSABKAIAIQgDQCAIIAkoAgAgCUEEaygCABDGAQRAIAkoAgAhCiACIQEDQAJAIAEgBWoiBiAGQQRrIgMoAgA2AgAgAUEERgRAIAUhAwwBCyAKIAgoAhAiBE8NBgJAAkAgBCAGQQhrKAIAIgZLBEAgCCgCBCELIAgoAgAgCCgCDCIMIAZBGGxqIQQgDCAKQRhsaiEGAn8CQAJAAkACQAJAQQQgCCgCCCIMKAIAIg9BgICAgHhzIA9BAE4bQQFrDgQBAgMEAAsgCyAGIAQQ4wEMBAsgCyAGIAQQfwwDCyAGKAIAQQhqIAQoAgBBCGogBigCBCIGIAQoAgQiBCAEIAZLGxCAAyILIAYgBGsgCxsiBEEASiAEQQBIawwCCyALIAYgBBBuDAELIAwgCyAGIAQQSQshBC0ADA0BIAQhBgwCCyAGIARBkNbAABD2AgALQf8BIQYgBEH/AXFBAUcNAQsgAUEEayEBIAZB/wFxQf8BRg0BCwsgAyAKNgIACyACQQRqIQIgCUEEaiIJIA1HDQALCwwCCwALIAogBEGA1sAAEPYCAAsLIABBgICAgHg2AgAgBygCCCIIQYSAgIB4Tg0BDAILIAogBEGM0MAAEPYCAAsgCEUNACAHKAIMIAhBARDlBAsgB0EwaiQAC/0CAQJ/IwBBIGsiAiQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgEoAgBBAUcNAiACQRhqIABBHGopAgA3AwAgAkEQaiAAQRRqKQIANwMAIAJBCGogAEEMaikCADcDACACIAApAgQ3AwAgAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBLEEEEOUECyACKAIMIgAgACgCAEEBayIANgIAIABFBEAgAkEMahCQAwsgAigCCCIBBEAgAigCBCEAA0AgACgCACIDIAMoAgBBAWsiAzYCACADRQRAIAAQkAMLIABBCGohACABQQFrIgENAAsLIAIoAgAiAARAIAIoAgQgAEEDdEEEEOUECyACKAIUIgAgACgCAEEBayIANgIAIAANAyACQRRqEJADDAMLIABFDQAgAiAAQQhrIgA2AgAgACAAKAIAQQFrIgA2AgAgAA0CIAIQ9AEMAgsQ+QQAC0Gnu8AAQT8Q+gQACyACQSBqJAALggMBBH8gACgCDCECAkACQAJAIAFBgAJPBEAgACgCGCEDAkACQCAAIAJGBEAgAEEUQRAgACgCFCICG2ooAgAiAQ0BQQAhAgwCCyAAKAIIIgEgAjYCDCACIAE2AggMAQsgAEEUaiAAQRBqIAIbIQQDQCAEIQUgASICQRRqIAJBEGogAigCFCIBGyEEIAJBFEEQIAEbaigCACIBDQALIAVBADYCAAsgA0UNAgJAIAAoAhxBAnRBoKDBAGoiASgCACAARwRAIAMoAhAgAEYNASADIAI2AhQgAg0DDAQLIAEgAjYCACACRQ0EDAILIAMgAjYCECACDQEMAgsgACgCCCIAIAJHBEAgACACNgIMIAIgADYCCA8LQbijwQBBuKPBACgCAEF+IAFBA3Z3cTYCAA8LIAIgAzYCGCAAKAIQIgEEQCACIAE2AhAgASACNgIYCyAAKAIUIgBFDQAgAiAANgIUIAAgAjYCGA8LDwtBvKPBAEG8o8EAKAIAQX4gACgCHHdxNgIAC74NAhJ/AX4jAEFAaiIKJAAgCkEIaiABIAIoAgQiFSACKAIIEHoCQCAKKAIIQQFxBEAgASgCpAEhCyABKAKgASEMQX8hBwJ/QX8gCigCDCIEIAEoApgBTw0AGkF/IAEoApQBIARBJGxqIgUoAgBBgICAgHhGDQAaIAUoAiAhByAFKAIcCyEFIAogBzYCNCAKIAU2AjAgCiALNgIoIAogDDYCJCAKIAQ2AiwgCiABNgI8IAogAzYCOCAKQQA2AiAgCkEUaiERIwBBEGsiCyQAIApBIGoiBigCGCENIAYoAgQhEiAGKAIIIQ4CQAJAAkACQAJAAkACQAJAAkACQCAGKAIAIg9FBEAgBigCECIBIA5PDQEDQCASIAFBJGxqIgQtACFBAkYNAiAGIAQoAgAiBzYCECAEQRBqIQwgDSgCAEGAgICAeEYNBCANKAIIIgUEQCAFQQxsIQggDSgCBEEEaiEFIAQoAhBBCGohECAEKAIUIQkDQCAJIAVBBGooAgBGBEAgBSgCACAQIAkQgANFDQcLIAVBDGohBSAIQQxrIggNAAsLIAciASAOSQ0ACwwBCyAGKAIUIgEgDk8NAANAIBIgAUEkbGoiBC0AIUECRg0EIAQoAgQhByAEQRBqIQwgDSgCAEGAgICAeEYNAiANKAIIIgUEQCAFQQxsIQggDSgCBEEEaiEFIAQoAhBBCGohECAEKAIUIQkDQCAJIAVBBGooAgBGBEAgBSgCACAQIAkQgANFDQULIAVBDGohBSAIQQxrIggNAAsLIAciASAOSQ0ACwsgEUEANgIIIBFCgICAgMAANwIADAULIAYgBzYCFAsgBCkCCCEWIAYoAhwiBUHcAWooAgAhByAEKAIQIgggCCgCAEEBaiIINgIAIAhFDQQgBCgCFCEEIAwoAgAhCEHgAEEEEPcEIgwEQCAMIAc2AhQgDCABNgIQIAwgFkIgiD4CDCAMIBY+AgggDCAENgIEIAwgCDYCACALQQE2AgwgCyAMNgIIIAtBBDYCBCAPDQIgBigCECIHIA5PDQMgBUHcAWohE0EBIQYDQCAHIQEDQCASIAFBJGxqIg8tACFBAkYNBSAPQRBqIQkgDygCACEHAkAgDSgCAEGAgICAeEYEQCAJKAIAIQQMAQsgDSgCCCIEBEAgBEEMbCEIIA0oAgRBBGohBSAJKAIAIgRBCGohFCAJKAIEIRADQCAQIAVBBGooAgBGBEAgBSgCACAUIBAQgANFDQMLIAVBDGohBSAIQQxrIggNAAsLIA4gByIBSw0BDAYLCyATKAIAIQUgDykCCCEWIAQgBCgCAEEBaiIENgIAIARFDQYgCSgCBCEIIAkoAgAhCSALKAIEIAZGBEAgC0EEaiAGQQFBBEEYEIgCIAsoAgghDAsgDCAGQRhsaiIEIAU2AhQgBCABNgIQIAQgFkIgiD4CDCAEIBY+AgggBCAINgIEIAQgCTYCACALIAZBAWoiBjYCDCAHIA5JDQALDAMLQQRB4AAQxwQAC0HAvcAAEOwEDAMLIAYoAhQiByAOTw0AIAVB3AFqIRNBASEGA0AgByEBAkADQCASIAFBJGxqIg8tACFBAkYNBiAPQRBqIQkgDygCBCEHIA0oAgBBgICAgHhHBEAgDSgCCCIEBEAgBEEMbCEIIA0oAgRBBGohBSAJKAIAIgRBCGohFCAJKAIEIRADQCAQIAVBBGooAgBGBEAgBSgCACAUIBAQgANFDQULIAVBDGohBSAIQQxrIggNAAsLIA4gByIBSw0BDAQLCyAJKAIAIQQLIBMoAgAhBSAPKQIIIRYgBCAEKAIAQQFqIgQ2AgAgBEUNAyAJKAIEIQggCSgCACEJIAsoAgQgBkYEQCALQQRqIAZBAUEEQRgQiAIgCygCCCEMCyAMIAZBGGxqIgQgBTYCFCAEIAE2AhAgBCAWQiCIPgIMIAQgFj4CCCAEIAg2AgQgBCAJNgIAIAsgBkEBaiIGNgIMIAcgDkkNAAsLIBEgCykCBDcCACARQQhqIAtBDGooAgA2AgALIAtBEGokAAwCCwALQcC9wAAQ7AQACwwBCyAKQQA2AhwgCkKAgICAwAA3AhQLIAAgCikCFDcCACAAQQhqIApBHGooAgA2AgACQCADKAIAIgFBgICAgHhGDQAgAygCCCIABEAgAygCBCEBA0AgASgCACIHBEAgAUEEaigCACAHQQEQ5QQLIAFBDGohASAAQQFrIgANAAsgAygCACEBCyABRQ0AIAMoAgQgAUEMbEEEEOUECyACKAIAIgAEQCAVIABBARDlBAsgCkFAayQAC/kCAQl/IwBBEGsiAiQAAkACQAJAAkACQCAABEAgAEEIayIDIAMoAgAiBUEBaiIBNgIAIAFFDQEgACgCACIBQX9GDQIgACABQQFqNgIAIAIgAzYCDCACIAA2AgggAiAAQQRqNgIEIAAoAgwiBEUNAyAAKAIIIARBGGxqIgFBGGsoAgAiBSAFKAIAQQFqIgQ2AgAgBEUNASABQQhrKAIAIQQgAUEMaygCACEGIAFBEGsoAgAhByABQQRrKAIAIQggAUEUaygCACEBIAMoAgAhCSAAIAAoAgBBAWs2AgAgAyAJQQFrIgA2AgAgAEUEQCACQQxqEKoCC0EkQQQQ9wQiAEUNBCAAIAg2AiAgACAENgIcIAAgBjYCGCAAIAc2AhQgACABNgIQIAAgBTYCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqIQAMBQsQ+QQLAAsQ+wQACyAAIAE2AgAgAyAFNgIAQQAhAAwBC0EEQSQQ/QQACyACQRBqJAAgAAvpAgEFfyMAQSBrIgQkAAJ/QQIgASgCACICIAEoAgRGDQAaIAEgAkEMajYCACABKAIIIQEgBCACNgIIIAQgASACKAIEIAIoAggQeiAEKAIEIQEgBCgCACEFIAQgBEEIaq1CgICAgOAAhDcDGCAEQQxqQfCmwAAgBEEYahCGAQJ/AkACQCAEKAIUIgZBAE4EQCAEKAIQIQcgBkUNAUEBIQggBkEBEPcEIgINAgsgCCAGEMcEAAsgAUEBIAVBAXEbIQIgBUEfdAwBCyAGBEAgAiAHIAb8CgAACyAGIAVBAXFFDQAaIAIgBkEBEOUEIAEhAkGAgICAeAshASAEKAIMIgUEQCAHIAVBARDlBAtBASABQYCAgIB4Rg0AGiADKAIAIgVBgICAgHhGIAVFckUEQCADKAIEIAVBARDlBAsgAyAGNgIIIAMgAjYCBCADIAE2AgBBAAshASAAIAI2AgQgACABNgIAIARBIGokAAvzAgIDfwF+IwBBMGsiAiQAAkACQAJAAkAgAEUNACAAQQhrIgMoAgBBAUcNASACQShqIABBFGopAgA3AwAgAkEgaiAAQQxqKQIANwMAIAApAgQhBSADQQA2AgAgAiAFNwMYAkAgA0F/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIANBJEEEEOUECyABRQ0AIAFBCGsiACAAKAIAQQFqIgM2AgAgA0UNAiABKAIADQMgAUF/NgIAIAIgADYCFCACIAE2AhAgAiABQQRqIgM2AgwgASgCDCIEIAEoAgRGBEAgAxDSAgsgASgCCCAEQTBsaiIDIAIpAxg3AgQgA0GCgICAeDYCACADQQxqIAJBIGopAwA3AgAgA0EUaiACQShqKQMANwIAIAEgBEEBajYCDCABQQA2AgAgACAAKAIAQQFrIgA2AgAgAEUEQCACQRRqEPcCCyACQTBqJAAPCxD5BAALQZWxwABBPxD6BAsACxD7BAAL/gICBn8BfiMAQSBrIgMkAAJAIAAoAghFBEAgACgCDCECIABC/////w83AgggAkUNASAAKAIQIQUgAEEANgIIAkAgAiAFRg0AA0AgAkEhai0AAEECRgRAIAUgAkEkaiICRw0BDAILCyADIAJBCGopAgA3AgggASgCACABKAIEIAMgA0EIaq1CgICAgPAOhDcDGEEBIQdB4ofAACADQRhqEF8NAAJAIAJBJGogBUYNACACQSxqIQIgA0EQaq1CgICAgPAOhCEIA0AgAkEZai0AAEECRwRAIAMgAikCADcCECAAKAIEIgQEQCABIAAoAgAgBBDUBA0ECyABKAIEIQQgASgCACADIAg3AxggBEHih8AAIANBGGoQXw0DCyACQRxqIAVGDQEgAkEkaiECDAALAAtBACEHCyADQSBqJAAgBw8LIwBBEGsiACQAIAAgAEEPaq1CgICAgLAXhDcDAEHih8AAIABBoNXAABCcAwALQezUwABBxQBBkNXAABCcAwAL4wICDn8BfiMAQRBrIgQkACABKAIIIgNBMGwhBQJAAkAgA0Gq1aoVSw0AAkAgBUUEQEEEIQcMAQsgASgCBCEBQQQhBiAFQQQQ9wQiB0UNASADRQ0AIAMhBgNAIAUgCEYNASABKAIMIgkgCSgCAEEBaiICNgIAIAJFDQMgASgCHCEKIAEoAhghCyABKAIUIQwgASgCECENIAEpAiAhECABKAIoIQ4gBEEEaiABEJcBIAEtACwhDyAHIAhqIgJBCGogBEEMaigCADYCACACIAQpAgQ3AgAgAkEsaiAPOgAAIAJBKGogDjYCACACQSBqIBA3AgAgAkEcaiAKNgIAIAJBGGogCzYCACACQRRqIAw2AgAgAkEQaiANNgIAIAJBDGogCTYCACAIQTBqIQggAUEwaiEBIAZBAWsiBg0ACwsgACADNgIIIAAgBzYCBCAAIAM2AgAgBEEQaiQADwsgBiAFEMcECwALywIBCn8CQAJAIAAEQCAAQQhrIgYgBigCACIJQQFqIgE2AgAgAUUNASAAKAIAIgdBf0YNAiAAIAdBAWo2AgACQCAAKAIMIgFFBEAMAQsgACgCCCIIKAIIIQIgAUEBRg0AIAFBDGxBDGtBDG4iA0EDcSEFAkAgA0EBa0EDSQRAQQAhAwwBCyAIQThqIQEgA0H8////AXEhCkEAIQMDQCACIAFBJGsoAgAiBCACIARLGyICIAFBGGsoAgAiBCACIARLGyICIAFBDGsoAgAiBCACIARLGyICIAEoAgAiBCACIARLGyECIAFBMGohASAKIANBBGoiA0cNAAsLIAVFDQAgA0EMbCAIakEUaiEBA0AgAiABKAIAIgMgAiADSxshAiABQQxqIQEgBUEBayIFDQALCyAAIAc2AgAgBiAJNgIAIAIPCxD5BAsACxD7BAAL3wICAX4JfwJAIAAoAgQiCEUNACAAKAIMIgkEQCAAKAIAIgNBCGohBSADKQMAQn+FQoCBgoSIkKDAgH+DIQEDQCABUARAA0AgA0GgAWshAyAFKQMAIAVBCGohBUKAgYKEiJCgwIB/gyIBQoCBgoSIkKDAgH9RDQALIAFCgIGChIiQoMCAf4UhAQsgAyABeqdBA3ZBbGxqIgZBFGsiAigCACIEIAQoAgBBAWsiBDYCACAERQRAIAIQkAMLIAZBCGshBCAGQQRrKAIAIgoEQCAEKAIAIQIDQCACKAIAIgcgBygCAEEBayIHNgIAIAdFBEAgAhCQAwsgAkEYaiECIApBAWsiCg0ACwsgBkEMaygCACICBEAgBCgCACACQRhsQQQQ5QQLIAFCAX0gAYMhASAJQQFrIgkNAAsLIAggCEEUbEEbakF4cSIFakEJaiIDRQ0AIAAoAgAgBWsgA0EIEOUECwvwAgEBfwJAIAIEQCABLQAAQTBNDQEgBUECOwEAAkACQAJAAkAgA8EiBkEASgRAIAUgATYCBCACIANB//8DcSIDSw0CIAVBADsBDCAFIAI2AgggBSADIAJrNgIQIAQNAUECIQEMBAsgBSACNgIgIAUgATYCHCAFQQI7ARggBUEAOwEMIAVBAjYCCCAFQar5wAA2AgQgBUEAIAZrIgM2AhBBAyEBIAIgBE8NAyAEIAJrIgIgA00NAyACIAZqIQQMAgsgBUEBNgIgIAVB4PTAADYCHCAFQQI7ARgMAQsgBUECOwEYIAVBATYCFCAFQeD0wAA2AhAgBUECOwEMIAUgAzYCCCAFIAIgA2siAjYCICAFIAEgA2o2AhwgAiAETwRAQQMhAQwCCyAEIAJrIQQLIAUgBDYCKCAFQQA7ASRBBCEBCyAAIAE2AgQgACAFNgIADwtBrPnAAEEhQdD5wAAQzQQAC0Hg+cAAQR9BgPrAABDNBAAL0gICBH8BfiMAQdAAayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAJByABqIgMgAEEgaikDADcDACACQUBrIgQgAEEYaikDADcDACACQThqIgUgAEEQaikDADcDACACQTBqIABBCGopAwA3AwAgACkDACEGIAFBADYCACACIAY3AygCQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUEwQQgQ5QQLIAJBIGogAykDADcDACACQRhqIAQpAwA3AwAgAkEQaiIAIAUpAwA3AwAgAiACKQMwNwMIIAAQyAIgACgCACIARQ0DIAIoAhQgAEEwbEEEEOUEDAMLIABFDQAgAiAAQQhrIgA2AiggACAAKAIAQQFrIgA2AgAgAA0CIAJBKGoQ+AIMAgsQ+QQAC0GMtMAAQT8Q+gQACyACQdAAaiQAC/cCAQN/IwBBIGsiAyQAAkACQAJAIAIoAtwBIgQgASgCFEcEQCADIAQ2AgwgAyADQQxqrUKAgICAEIQ3AxggAyABQRRqrUKAgICAEIQ3AxAgA0H6gsAAIANBEGoQhgFBACECIAMoAggiAUEASA0CIAMoAgQhBQJAIAFFBEBBASEEDAELQQEhAiABQQEQ9wQiBEUNAwsgAQRAIAQgBSAB/AoAAAsgAygCACICBEAgBSACQQEQ5QQLIAAgATYCCCAAIAQ2AgQgACABNgIADAELAkAgASgCCCIBIAIoApgBTw0AIAIoApQBIAFBJGxqIgEoAgBBgICAgHhGDQAgAEGAgICAeDYCACAAIAE2AgQMAQtBFUEBEPcEIgFFDQIgAEEVNgIIIAAgATYCBCAAQRU2AgAgAUENakHrvcAAKQAANwAAIAFBCGpB5r3AACkAADcAACABQd69wAApAAA3AAALIANBIGokAA8LIAIgARDHBAALQQFBFRDHBAAL9wIBA38jAEEgayIDJAACQAJAAkAgAigC3AEiBCABKAIURwRAIAMgBDYCDCADIANBDGqtQoCAgIAQhDcDGCADIAFBFGqtQoCAgIAQhDcDECADQfqCwAAgA0EQahCGAUEAIQIgAygCCCIBQQBIDQIgAygCBCEFAkAgAUUEQEEBIQQMAQtBASECIAFBARD3BCIERQ0DCyABBEAgBCAFIAH8CgAACyADKAIAIgIEQCAFIAJBARDlBAsgACABNgIIIAAgBDYCBCAAIAE2AgAMAQsCQCABKAIMIgEgAigCmAFPDQAgAigClAEgAUEkbGoiASgCAEGAgICAeEYNACAAQYCAgIB4NgIAIAAgATYCBAwBC0EVQQEQ9wQiAUUNAiAAQRU2AgggACABNgIEIABBFTYCACABQQ1qQeu9wAApAAA3AAAgAUEIakHmvcAAKQAANwAAIAFB3r3AACkAADcAAAsgA0EgaiQADwsgAiABEMcEAAtBAUEVEMcEAAvNAgEHfyADIQUgAyEGAkACfwJAAkACQCACQQNqQXxxIAJrIgQgA00EQCADIAMgBGtBB3EiBmshBSADIAZJDQEgBCEGC0EAIAVrIQggAkEBayEHIAFB/wFxIQkgAyEEA0AgBCAIakUNAiAEIAdqIARBAWshBC0AACAJRw0ACwwCCyAFIAMgA0G8kMEAELYBAAsgAUH/AXFBgYKECGwhCANAIAYgBSIESQRAIARBCGshBUGAgoQIIAIgBGoiB0EIaygCACAIcyIJayAJckGAgoQIIAdBBGsoAgAgCHMiB2sgB3JxQYCBgoR4cUGAgYKEeEYNAQsLIAMgBEkNAiACQQFrIQIgAUH/AXEhAQNAQQAgBEUNAhogAiAEaiAEQQFrIQQtAAAgAUcNAAsLQQELIQEgACAENgIEIAAgATYCAA8LQQAgBCADQayQwQAQtgEAC9sCAQN/IAAoAgAiASgCFCICBEAgASgCECEAA0AgACgCACIDBEAgAEEEaigCACADQQEQ5QQLIABBDGohACACQQFrIgINAAsLIAEoAgwiAARAIAEoAhAgAEEMbEEEEOUECwJAIAEoAhgiAEGAgICAeEYNACABKAIgIgIEQCABKAIcIQADQCAAKAIAIgMEQCAAQQRqKAIAIANBARDlBAsgAEEMaiEAIAJBAWsiAg0ACyABKAIYIQALIABFDQAgASgCHCAAQQxsQQQQ5QQLAkAgASgCJCIAQYCAgIB4Rg0AIAEoAiwiAgRAIAEoAighAANAIAAoAgAiAwRAIABBBGooAgAgA0EBEOUECyAAQQxqIQAgAkEBayICDQALIAEoAiQhAAsgAEUNACABKAIoIABBDGxBBBDlBAsCQCABQX9GDQAgASABKAIEQQFrIgA2AgQgAA0AIAFBPEEEEOUECwvlAgEFfyMAQTBrIgIkACACQQg2AhAgAkHmu8AANgIMIAJBFGoiAyABQe67wAAQ5wMgA0GMvMAAQQIgAkEMakH8u8AAELUBGiADQaC8wABBCiAAQRhqQZC8wAAQtQEaIANBqrzAAEEKIABBHGpBkLzAABC1ARogACgCECIEIAAoAhRBJGwiAWohBSAEIQMCQANAIAFFDQEgAUEkayEBIANBIWogA0EkaiEDLQAAQQJGDQALIAIgBTYCLCACIAQ2AiggAkICNwIgIAJBtLzAADYCHCACQRRqQci8wABBBSACQRxqQbi8wAAQtQEaCyACIAA2AhwgAkEUaiIBQeC8wABBDCACQRxqIgNB0LzAABC1ARogAiAANgIcIAFB/LzAAEEMIANB7LzAABC1ARogAUGYvcAAQQkgAEEgakGIvcAAELUBGiABQbS9wABBCSAAQSRqQaS9wAAQtQEaIAEQ3wIgAkEwaiQAC+YCAQN/IwBBIGsiAyQAAkACQAJAIAIoAtwBIgQgASgCFEcEQCADIAQ2AgwgAyADQQxqrUKAgICAEIQ3AxggAyABQRRqrUKAgICAEIQ3AxAgA0H6gsAAIANBEGoQhgFBACECIAMoAggiAUEASA0CIAMoAgQhBQJAIAFFBEBBASEEDAELQQEhAiABQQEQ9wQiBEUNAwsgAQRAIAQgBSAB/AoAAAsgAygCACICBEAgBSACQQEQ5QQLIAAgATYCCCAAIAQ2AgQgACABNgIADAELAkAgASgCECIBIAIoAqQBTw0AIAIoAqABIAFBJGxqIgEtACFBAkYNACAAQYCAgIB4NgIAIAAgAUEQajYCBAwBC0EOQQEQ9wQiAUUNAiAAQQ42AgggACABNgIEIABBDjYCACABQQZqQda9wAApAAA3AAAgAUHQvcAAKQAANwAACyADQSBqJAAPCyACIAEQxwQAC0EBQQ4QxwQAC9UCAgJ/AX4jAEEwayIBJAACQAJAIAAEQCAAQQhrIgIoAgBBAUcNASABQShqIABBLGopAgA3AwAgAUEgaiAAQSRqKQIANwMAIAFBGGogAEEcaikCADcDACABQRBqIABBFGopAgA3AwAgAUEIaiAAQQxqKQIANwMAIAApAgQhAyACQQA2AgAgASADNwMAAkAgAkF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAJBPEEEEOUEC0E8QQQQ9wQiAEUNAiAAQQA2AgggAEKBgICAEDcCACAAIAEpAwA3AgwgAEEUaiABQQhqKQMANwIAIABBHGogAUEQaikDADcCACAAQSRqIAFBGGopAwA3AgAgAEEsaiABQSBqKQMANwIAIABBNGogAUEoaikDADcCACABQTBqJAAgAEEIag8LEPkEAAtBlbHAAEE/EPoEAAtBBEE8EP0EAAv6AgIHfwF+IwBBIGsiAiQAAkACQAJAIAAEQCAAQQhrIgQgBCgCACIGQQFqIgM2AgAgA0UNASAAKAIAIgVBf0YNAiAAIAVBAWo2AgAgAiAENgIQIAIgADYCDCACIABBBGoiBzYCCEGAgICAeCEDAkACQAJAAkACQAJAQQQgACgCBCIIQYCAgIB4cyAIQQBOG0EBaw4EAAECBAMLQYGAgIB4IQMMAgtBgoCAgHghAwwBC0GDgICAeCEDCyAAIAU2AgAgAC0AECEFIAQgBjYCAAwBCyACQRRqIAcQ7gIgAikCGCEJIAIoAhQhAyAEKAIAIQYgACAAKAIAQQFrNgIAIAAtABAhBSAEIAZBAWsiADYCACAADQAgAkEQahCDAwtBIEEEEPcEIgBFDQMgACAFOgAYIAAgCTcCECAAIAM2AgwgAEEANgIIIABCgYCAgBA3AgAgACABQQBHOgAcIAJBIGokACAAQQhqDwsQ+QQLAAsQ+wQAC0EEQSAQ/QQAC6sDAQV/IwBBMGsiASQAAkACQAJAAkBBvJ/BACgCAEEBRgRAQcCfwQAoAgAhAgwBC0HUn8EAKAIAIQJB1J/BAEEANgIAIAJFDQEgAUEYaiACEQQAIAFBEGoiBCABQSRqKQIANwMAIAEgASkCHDcDCCABKAIYIQJBvJ/BACgCAEEBRg0CQbyfwQBBATYCAEHEn8EAIAEpAwg3AgBBzJ/BACAEKQMANwIAC0HEn8EAKAIAIQRBwJ/BAEKAgICAwAA3AgAgACgCACIDQdCfwQAoAgAiAEkNAiADIABrIgNByJ/BACgCACIFTw0CIAQgA0ECdGpBzJ/BACgCADYCAEHQn8EAIAA2AgBBzJ/BACADNgIAQcifwQAgBTYCAEHEn8EAKAIAIQNBxJ/BACAENgIAQcCfwQAoAgAhAEHAn8EAIAI2AgAgAARAIAMgAEECdEEEEOUECyABQTBqJAAPC0Hq4cAAQdUAQZTiwAAQnAMACyABQShqIAQpAwA3AgAgASABKQMINwIgIAEgAjYCHCABQQE2AhggAUEYahD5A0Gk4sAAQR1BtOLAABCcAwsAC8cCAQZ/IwBBEGsiAyQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgIoAgBBAUcNAiAAKAIgIAAoAhwhBCAAKAIYIQEgACgCFCEFIAAoAhAhBiACQQA2AgACQCACQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAkHAAEEIEOUECyABBEAgBUEMaiEAA0AgACgCACICIAIoAgBBAWsiAjYCACACRQRAIAAQkAMLIABBDGsoAgAiAgRAIABBCGsoAgAgAkECdEEEEOUECyAAQTBqIQAgAUEBayIBDQALCyAGBEAgBSAGQTBsQQQQ5QQLIARFDQMgBEECdEEEEOUEDAMLIABFDQAgAyAAQQhrIgA2AgwgACAAKAIAQQFrIgA2AgAgAA0CIANBDGoQ8wEMAgsQ+QQAC0GMtMAAQT8Q+gQACyADQRBqJAALxgIBB38jAEEQayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAAoAgwhBiAAKAIIIQcgACgCBCEIIAFBADYCAAJAIAFBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACABQRhBBBDlBAsgBgRAA0AgByADQQxsaiIEKAIIIgEEQCAEKAIEIQADQCAAKAIAIgUgBSgCAEEBayIFNgIAIAVFBEAgABCQAwsgAEEYaiEAIAFBAWsiAQ0ACwsgBCgCACIABEAgBCgCBCAAQRhsQQQQ5QQLIANBAWoiAyAGRw0ACwsgCEUNAyAHIAhBDGxBBBDlBAwDCyAARQ0AIAIgAEEIayIANgIMIAAgACgCAEEBayIANgIAIAANAiACQQxqEO0BDAILEPkEAAtBwM3AAEE/EPoEAAsgAkEQaiQAC98CAQl/IwBBEGsiAiQAAkACQAJAAkACQCAABEAgAEEIayIDIAMoAgAiBEEBaiIBNgIAIAFFDQEgACgCACIBQX9GDQIgACABQQFqNgIAIAIgAzYCDCACIAA2AgggAiAAQQRqNgIEIAAoAgxFDQMgACgCCCIBKAIAIgQgBCgCAEEBaiIFNgIAIAVFDQEgASgCECEFIAEoAgwhBiABKAIIIQcgASgCFCEIIAEoAgQhASADKAIAIQkgACAAKAIAQQFrNgIAIAMgCUEBayIANgIAIABFBEAgAkEMahCqAgtBJEEEEPcEIgBFDQQgACAINgIgIAAgBTYCHCAAIAY2AhggACAHNgIUIAAgATYCECAAIAQ2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIaiEADAULEPkECwALEPsEAAsgACABNgIAIAMgBDYCAEEAIQAMAQtBBEEkEP0EAAsgAkEQaiQAIAAL0wICA38BfiMAQSBrIgIkAAJAAkACQAJAIABFDQAgAEEIayIDKAIAQQFHDQEgAkEYaiAAQQxqKAIANgIAIAApAgQhBSADQQA2AgAgAiAFNwMQAkAgA0F/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIANBGEEEEOUECyABRQ0AIAFBCGsiACAAKAIAQQFqIgM2AgAgA0UNAiABKAIADQMgAUF/NgIAIAIgADYCDCACIAE2AgggAiABQQRqIgQ2AgQgASgCDCIDIAEoAgRGBEAgBBDSAgsgASgCCCADQTBsaiIEIAIpAxA3AgQgBEGBgICAeDYCACAEQQxqIAJBGGooAgA2AgAgASADQQFqNgIMIAFBADYCACAAIAAoAgBBAWsiADYCACAARQRAIAJBDGoQ9wILIAJBIGokAA8LEPkEAAtBlbHAAEE/EPoECwALEPsEAAvTAgIDfwF+IwBBIGsiAiQAAkACQAJAAkAgAEUNACAAQQhrIgMoAgBBAUcNASACQRhqIABBDGooAgA2AgAgACkCBCEFIANBADYCACACIAU3AxACQCADQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgA0EYQQQQ5QQLIAFFDQAgAUEIayIAIAAoAgBBAWoiAzYCACADRQ0CIAEoAgANAyABQX82AgAgAiAANgIMIAIgATYCCCACIAFBBGoiBDYCBCABKAIMIgMgASgCBEYEQCAEENICCyABKAIIIANBMGxqIgQgAikDEDcCBCAEQYWAgIB4NgIAIARBDGogAkEYaigCADYCACABIANBAWo2AgwgAUEANgIAIAAgACgCAEEBayIANgIAIABFBEAgAkEMahD3AgsgAkEgaiQADwsQ+QQAC0GVscAAQT8Q+gQLAAsQ+wQAC7oCAgR/AX4jAEHQAGsiAiQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgEoAgBBAUcNAiACQcgAaiIDIABBIGopAwA3AwAgAkFAayIEIABBGGopAwA3AwAgAkE4aiIFIABBEGopAwA3AwAgAkEwaiAAQQhqKQMANwMAIAApAwAhBiABQQA2AgAgAiAGNwMoAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBMEEIEOUECyACQSBqIAMpAwA3AwAgAkEYaiAEKQMANwMAIAJBEGogBSkDADcDACACIAIpAzA3AwggAkEIahCZAQwDCyAARQ0AIAIgAEEIayIANgIoIAAgACgCAEEBayIANgIAIAANAiACQShqEK8DDAILEPkEAAtB0NnAAEE/EPoEAAsgAkHQAGokAAvjAgEFfyMAQSBrIgMkACADQRBqIgcgAUEMaiAAEJ0BIAMoAhQhAQJAIAMoAhAiBEGAgICAeEYEQCADQQRqIgUgARDuAiADKAIMIQEgAygCCCEEIAMoAgQhBiAHIAJBDGogABCdASADKAIUIQAgAygCECICQYCAgIB4Rw0BIAUgABDuAiADKAIIIQAgAygCBCEFQQAhAiADKAIMIAFGBEAgBCAAIAEQgANFIQILIAUEQCAAIAVBARDlBAsgBgRAIAQgBkEBEOUECyADQSBqJAAgAg8LIAMgATYCCCADIAQ2AgQgAyADKAIYIgA2AgwgA0EYaiAANgIAIAMgAykCBDcDEEGsr8AAQSsgA0EQakGcr8AAQeivwAAQ6wIACyADIAA2AgggAyACNgIEIAMgAygCGCIANgIMIANBGGogADYCACADIAMpAgQ3AxBBrK/AAEErIANBEGpBnK/AAEHYr8AAEOsCAAuOCQERfyMAQSBrIgYkAAJAAkACQAJAAkACQEEEIAEoAgAiBUGAgICAeHMgBUEAThtBAWsOBAECAwQACyAGQYCAgIB4NgIADAQLIAZBgYCAgHg2AgAMAwsgBkGCgICAeDYCAAwCCyAGQYOAgIB4NgIADAELIAYgARDuAiAGIAI2AgwLAkACQCAERQ0AIARBMGwhB0EAIQUDQCAGQRBqIAMgBWpBDGogAhDkASAGKAIQQYCAgIB4RwRAIAAgBikCEDcCACAAQQhqIAZBGGooAgA2AgAMAwsgByAFQTBqIgVHDQALIAYgAjYCFCAGIAE2AhAgBiAGNgIYIAYgBkEQajYCHCAEQQFGDQAgBEEVTwRAIAZBHGohCCMAQYAgayIBJAACQAJAQYqWCiAEIARBipYKTxsiAiAEIARBAXZrIgcgAiAHSxsiAkHWAE8EQCACQTBsIQUgB0Gq1aoVSw0CQQQhCSAFQQQQ9wQiB0UNAiABQQA2AgggASAHNgIEIAEgAjYCACADIAQgByACIARBwQBJIAgQLCABEMgCIAcgBUEEEOUEDAELIAMgBCABQdUAIARBwQBJIAgQLAsgAUGAIGokAAwCCyAJIAUQxwQACyAGQRxqIQEjAEEwayIIJAACQCAEBEAgBEEBRwRAIAMgBEEwbGohDSADQTAiBGohCSAIQQxqIQsgASgCACEMA0AgDCAJIAlBMGsQ6wEEQCAIQShqIg4gCUEoaikCADcDACAIQSBqIg8gCUEgaikCADcDACAIQRhqIhAgCUEYaikCADcDACAIQRBqIhEgCUEQaikCADcDACAIQQhqIhIgCUEIaikCADcDACAIIAkpAgA3AwAgBCECA0ACQCACIANqIgUgBUEwayIBKQIANwIAIAVBKGogAUEoaikCADcCACAFQSBqIAFBIGopAgA3AgAgBUEYaiABQRhqKQIANwIAIAVBEGogAUEQaikCADcCACAFQQhqIAFBCGopAgA3AgAgAkEwRgRAIAMhAQwBCyAFQdQAayEHIAwoAgQhCiAMKAIAIRMCfwJAAkACQAJAAkBBBCAMKAIIIhQoAgAiFUGAgICAeHMgFUEAThtBAWsOBAECAwQACyAKIAsgBxDjAQwECyAKIAsgBxB/DAMLIAgoAgxBCGogBygCAEEIaiAIKAIQIgcgBUHQAGsoAgAiBSAFIAdLGxCAAyIKIAcgBWsgChsiBUEASiAFQQBIawwCCyAKIAsgBxBuDAELIBQgCiALIAcQSQshBQJAIBMtAAxBAUcEQCAFIQcMAQtB/wEhByAFQf8BcUEBRw0BCyACQTBrIQIgB0H/AXFB/wFGDQELCyABIAgpAwA3AgAgAUEoaiAOKQMANwIAIAFBIGogDykDADcCACABQRhqIBApAwA3AgAgAUEQaiARKQMANwIAIAFBCGogEikDADcCAAsgBEEwaiEEIAlBMGoiCSANRw0ACwsgCEEwaiQADAELAAsLIABBgICAgHg2AgALIAYoAgAiAEGEgICAeEggAEVyRQRAIAYoAgQgAEEBEOUECyAGQSBqJAALzwICCH8BbyMAQSBrIgQkACABKAIAIQYgASgCCCEHAkACQCABKAIEIgIgASgCDCIDRgRAIAYhBQwBCyAGIQUDQCAEQRhqIgggAkEQaikCADcDACAEQRBqIgkgAkEIaikCADcDACAEIAIpAgA3AwhBJEEEEPcEIgFFDQIgAUEANgIIIAFCgYCAgBA3AgAgASAEKQMINwIMIAFBFGogCSkDADcCACABQRxqIAgpAwA3AgAgAUEIahAFIQoQYyIBIAomASAFIAE2AgAgBUEEaiEFIAJBGGoiAiADRw0ACwsgAyACa0EYbiEBIAIgA0cEQANAIAIoAgAiAyADKAIAQQFrIgM2AgAgA0UEQCACEJADCyACQRhqIQIgAUEBayIBDQALCyAAIAY2AgQgACAHQQZsNgIAIAAgBSAGa0ECdjYCCCAEQSBqJAAPC0EEQSQQ/QQAC8cCAQN/IwBBQGoiBSQAAkACQAJAIAAEQCAAQQhrIgYgBigCAEEBaiIHNgIAIAdFDQEgACgCACIHQX9GDQIgACAHQQFqNgIAIAUgBjYCGCAFIAA2AhQgBSACNgIkIAUgATYCICAFIAI2AhwgBSAAQQhqIgE2AhACQCADRQRAQYCAgIB4IQIMAQsgBUEIaiADIAQQiAEgBSAFKAIMIgI2AjAgBSAFKAIINgIsCyAFIAI2AiggBUE0aiABIAVBHGogBUEoahCSASAAIAAoAgBBAWs2AgAgBiAGKAIAQQFrIgA2AgAgAEUEQCAFQRhqEFELQRhBBBD3BCIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgBSkCNDcCDCAAQRRqIAVBPGooAgA2AgAgBUFAayQAIABBCGoPCxD5BAsACxD7BAALQQRBGBD9BAALzAIBBn8CfwJAIAEtABxBAUsNAAJAIAEtAB4NACABKAIAIQMCQAJAIAEoAgQOAgMBAAsgAy0AAEEuRw0CIAMtAAFBL0YNAQwCCyADLQAAQS5HDQELQQEgASgCBCICDQEaQQEgAiACQazkwAAQtgEACyABKAIEIQJBAAsiAyABKAIAIgZqIQVBfyEEIAMhAQJAAkACQAJAAkACfwNAQQAgASACRg0BGiAEQQFqIQQgAUEBaiEBIAZBAWsiBiACaiIHLQAAQS9HDQALIAIgBGsiAyACSw0BIAdBAWohBUEBCyEGQQohBCACIANrIgEOAwQBAgMLIAMgAiACQZzkwAAQtgEACyAFLQAAQS5GDQIMAQsgBS0AAEEuRw0AQQghBCAFLQABQS5GDQELQQkhBAsgACABNgIMIAAgBTYCCCAAIAQ6AAQgACABIAZqNgIAC+sHAQ1/IwBBIGsiBiQAAkACQAJAAkACQAJAQQQgASgCACIFQYCAgIB4cyAFQQBOG0EBaw4EAQIDBAALIAZBgICAgHg2AgAMBAsgBkGBgICAeDYCAAwDCyAGQYKAgIB4NgIADAILIAZBg4CAgHg2AgAMAQsgBiABEO4CIAYgAjYCDAsCQAJAIARFDQAgBEEYbCEIQQAhBQNAIAZBEGogAyAFaiACEOQBIAYoAhBBgICAgHhHBEAgACAGKQIQNwIAIABBCGogBkEYaigCADYCAAwDCyAIIAVBGGoiBUcNAAsgBiACNgIUIAYgATYCECAGIAY2AhggBiAGQRBqNgIcIARBAUYNACAEQRVPBEAgBkEcaiECQQAhBSMAQYAgayIIJAACQAJAQZWsFCAEIARBlawUTxsiASAEIARBAXZrIgcgASAHSxsiCUGrAU8EQCAJQRhsIQEgB0HVqtUqSw0CQQQhBSABQQQQ9wQiB0UNAiADIAQgByAJIARBwQBJIAIQMSAHIAFBBBDlBAwBCyADIAQgCEGqASAEQcEASSACEDELIAhBgCBqJAAMAgsgBSABEMcEAAsgBkEcaiEBIwBBIGsiByQAAkAgBARAIARBAUcEQCADIARBGGxqIQwgA0EYIgRqIQkgASgCACELA0AgCyAJIAlBGGsQ9gEEQCAHQRhqIg0gCUEQaikCADcDACAHQRBqIg4gCUEIaikCADcDACAHIAkpAgA3AwggBCECA0ACQCACIANqIgUgBUEYayIBKQIANwIAIAVBEGogAUEQaikCADcCACAFQQhqIAFBCGopAgA3AgAgAkEYRgRAIAMhAQwBCyAFQTBrIQggCygCBCEKIAsoAgAhDwJ/AkACQAJAAkACQEEEIAsoAggiECgCACIRQYCAgIB4cyARQQBOG0EBaw4EAQIDBAALIAogB0EIaiAIEOMBDAQLIAogB0EIaiAIEH8MAwsgBygCCEEIaiAIKAIAQQhqIAcoAgwiCCAFQSxrKAIAIgUgBSAISxsQgAMiCiAIIAVrIAobIgVBAEogBUEASGsMAgsgCiAHQQhqIAgQbgwBCyAQIAogB0EIaiAIEEkLIQUCQCAPLQAMQQFHBEAgBSEIDAELQf8BIQggBUH/AXFBAUcNAQsgAkEYayECIAhB/wFxQf8BRg0BCwsgASAHKQMINwIAIAFBEGogDSkDADcCACABQQhqIA4pAwA3AgALIARBGGohBCAJQRhqIgkgDEcNAAsLIAdBIGokAAwBCwALCyAAQYCAgIB4NgIACyAGKAIAIgBBhICAgHhIIABFckUEQCAGKAIEIABBARDlBAsgBkEgaiQAC8QCAQR/IABCADcCECAAAn9BACABQYACSQ0AGkEfIAFB////B0sNABogAUEmIAFBCHZnIgNrdkEBcSADQQF0a0E+agsiAjYCHCACQQJ0QaCgwQBqIQRBASACdCIDQbyjwQAoAgBxRQRAIAQgADYCACAAIAQ2AhggACAANgIMIAAgADYCCEG8o8EAQbyjwQAoAgAgA3I2AgAPCwJAAkAgASAEKAIAIgMoAgRBeHFGBEAgAyECDAELIAFBGSACQQF2a0EAIAJBH0cbdCEFA0AgAyAFQR12QQRxaiIEKAIQIgJFDQIgBUEBdCEFIAIhAyACKAIEQXhxIAFHDQALCyACKAIIIgEgADYCDCACIAA2AgggAEEANgIYIAAgAjYCDCAAIAE2AggPCyAEQRBqIAA2AgAgACADNgIYIAAgADYCDCAAIAA2AggLvwIBAX8jAEEwayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAJBKGogAEEsaikCADcDACACQSBqIABBJGopAgA3AwAgAkEYaiAAQRxqKQIANwMAIAJBEGogAEEUaikCADcDACACQQhqIABBDGopAgA3AwAgAiAAKQIENwMAIAFBADYCAAJAIAFBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACABQTxBBBDlBAsgAigCDCIAIAAoAgBBAWsiADYCACAARQRAIAJBDGoQkAMLIAIQyAIgAigCACIARQ0DIAIoAgQgAEEwbEEEEOUEDAMLIABFDQAgAiAAQQhrIgA2AgAgACAAKAIAQQFrIgA2AgAgAA0CIAIQyQIMAgsQ+QQAC0GMtMAAQT8Q+gQACyACQTBqJAALnwUCBH8BfiMAQRBrIgEkAEHYn8EALQAAQQNHBEAgAUEBOgALIAEgAUELajYCDCABQQxqIQACQAJAAkACQAJAQdifwQAtAABBAWsOAwEDBAALQdifwQBBAjoAACAAKAIAIgAtAAAgAEEAOgAARQ0BAkACQAJAQZCkwQAoAgBB/////wdxBEBBiKTBACgCAA0BC0GUpMEAKAIADQFBnKTBACgCACEAQZykwQBBrL7AADYCAEGYpMEAKAIAIQJBmKTBAEEBNgIAAkAgAkUNACAAKAIAIgMEQCACIAMRBAALIAAoAgQiA0UNACACIAMgACgCCBDlBAsMAgtB1OXAAEHpAEGI5sAAEJwDCwALQdifwQBBAzoAAAwDC0HEvsAAQdUAQZDawAAQnAMAC0Gov8AAEOwEAAtB7r7AAEHxAEGQ2sAAEJwDAAsLAkACQAJAAkBB/J7BACgCAEEBRgRAQYCfwQAoAgAhAAwBC0GEn8EAKAIAIQBBhJ/BAEEANgIAIABFDQEgABEKACEAQfyewQAoAgANAkGAn8EAIAA2AgBB/J7BAEEBNgIACyAAQd7JwABBERDvBBDlAiEEQZigwQAtAABBAkcEQBDXAQtB8AFBCBD3BCIARQ0CIABCfzcDwAEgAEIANwO4ASAAQgQ3A7ABIABCADcDqAEgAEKAgICAwAA3A6ABIABCADcClAEgAEEANgIQIABBADYCCCAAQoGAgIAQNwMAIAAgBDcD2AEgAEKAgICAwAA3A+ABIABCADcD6AEgAEGgq8AAKQMANwPIASAAQdABakGoq8AAKQMANwMAIAFBEGokACAAQQhqDwtBmMzAAEHVAEHEzMAAEJwDAAsgABDEBEHUzMAAQR1B5MzAABCcAwALQQhB8AEQ/QQAC7oCAQF/IwBBMGsiAiQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgEoAgBBAUcNAiACQShqIABBLGopAgA3AwAgAkEgaiAAQSRqKQIANwMAIAJBGGogAEEcaikCADcDACACQRBqIABBFGopAgA3AwAgAkEIaiAAQQxqKQIANwMAIAIgACkCBDcDACABQQA2AgACQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUE8QQQQ5QQLIAIoAgwiACAAKAIAQQFrIgA2AgAgAEUEQCACQQxqEJADCyACKAIAIgBFDQMgAigCBCAAQQJ0QQQQ5QQMAwsgAEUNACACIABBCGsiADYCACAAIAAoAgBBAWsiADYCACAADQIgAhDeAgwCCxD5BAALQYy0wABBPxD6BAALIAJBMGokAAvRAgEEfyMAQSBrIgUkAEEBIQcCQCAALQAEDQAgAC0ABSEIIAAoAgAiBi0ACkGAAXFFBEAgBigCAEGE9cAAQaj1wAAgCEEBcSIIG0ECQQMgCBsgBigCBCgCDBEBAA0BIAYoAgAgASACIAYoAgQoAgwRAQANASAGKAIAQav1wABBAiAGKAIEKAIMEQEADQEgAyAGIAQoAgwRAAAhBwwBCyAIQQFxRQRAIAYoAgBBrfXAAEEDIAYoAgQoAgwRAQANAQsgBUEBOgAPIAVBkPXAADYCFCAFIAYpAgA3AgAgBSAGKQIINwIYIAUgBUEPajYCCCAFIAU2AhAgBSABIAIQXQ0AIAVBq/XAAEECEF0NACADIAVBEGogBCgCDBEAAARADAELIAUoAhBBh/XAAEECIAUoAhQoAgwRAQAhBwsgAEEBOgAFIAAgBzoABCAFQSBqJAAgAAuOAgIBfwF+IwBBIGsiBCQAAkACQAJAIAAgAk0EQCABIAJLDQFCgICAgBAhBSAAIAFNDQIgBCAANgIIIAQgATYCDCAEIAUgBEEMaq2ENwMYIAQgBSAEQQhqrYQ3AxBBm4LAACAEQRBqIAMQnAMACyAEIAA2AgggBCACNgIMIARCgICAgBAiBSAEQQxqrYQ3AxggBCAFIARBCGqthDcDEEHJg8AAIARBEGogAxCcAwALIAQgATYCCCAEIAI2AgwgBEKAgICAECIFIARBDGqthDcDGAwBCyAEIAE2AgggBCACNgIMIAQgBSAEQQxqrYQ3AxgLIAQgBSAEQQhqrYQ3AxBBgoTAACAEQRBqIAMQnAMAC68CAQV/IAAoAgQhAiAAKAIAIQEgAEKEgICAwAA3AgAgAiABa0EwbiEEIAAoAgghBQJAAkAgASACRgRAIAAoAhAiAUUNASAAKAIMIgIgBSgCCCIARg0CIAFBMGwiBEUNAiAFKAIEIgMgAEEwbGogAyACQTBsaiAE/AoAAAwCCwNAIAFBDGoiAigCACIDIAMoAgBBAWsiAzYCACADRQRAIAIQkAMLIAEQyAIgASgCACICBEAgAUEEaigCACACQTBsQQQQ5QQLIAFBMGohASAEQQFrIgQNAAsgACgCECIBRQ0AAkAgACgCDCICIAUoAggiAEYNACABQTBsIgRFDQAgBSgCBCIDIABBMGxqIAMgAkEwbGogBPwKAAALIAUgACABajYCCAsPCyAFIAAgAWo2AggLuAICAn8BfiMAQSBrIgYkAAJAAkAgAARAIABBCGsiBygCAEEBRw0BIAZBGGogAEEUaikCADcDACAGQRBqIABBDGopAgA3AwAgACkCBCEIIAdBADYCACAGIAg3AwgCQCAHQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgB0EkQQQQ5QQLIAYgAyAEEFAgBigCBCEDIAYoAgAhBEE8QQQQ9wQiAEUNAiAAIAQ2AhAgAEEANgIIIABCgYCAgBA3AgAgACAGKQMINwIYIAAgAjYCNCAAIAE2AjAgACADNgIUIAAgAzYCDCAAIAVBAEc6ADggAEEgaiAGQRBqKQMANwIAIABBKGogBkEYaikDADcCACAGQSBqJAAgAEEIag8LEPkEAAtBp7vAAEE/EPoEAAtBBEE8EP0EAAvYAgICfwJ+IwBBMGsiASQAAkACQAJAIAApAwAgACkDCIRQRQRAAkBB/J7BACgCAEEBRgRAQYCfwQAoAgAhAgwBC0GEn8EAKAIAIQJBhJ/BAEEANgIAIAJFDQMgAhEKACECQfyewQAoAgANBEGAn8EAIAI2AgBB/J7BAEEBNgIACyABIABBMGqtQoCAgIDQC4Q3AyggAUEYakGdp8AAIAFBKGoQhgEgAiABKAIcIgAgASgCIBDwBCABKAIYIgJFDQEgACACQQEQ5QQMAQsgAUEYaiAAQSBqEN0BIAEgASkDGELAhD0QuQIgASgCICECIABCADcDCCAAQgE3AwAgACABKQMAIgMgAkHoB26tfCIENwMQIAAgASkDCCADIARWrXw3AxggABCSAgsgAUEwaiQADwtBmMzAAEHVAEHEzMAAEJwDAAsgAhDEBEHUzMAAQR1B5MzAABCcAwAL+QEBA38jAEEQayIDJAACfwJAIAEoAggiAkGAgIAQcUUEQCACQYCAgCBxDQEgAUEBQQAgACgCACADQQZqIgEQZiIAIAFqQQogAGsQSwwCCyAAKAIAIQBBACECA0AgAiADakENaiAAQQ9xLQDi9EA6AAAgAkEBayECIABBD0sgAEEEdiEADQALIAFB8vTAAEECIAIgA2pBDmpBACACaxBLDAELIAAoAgAhAEEAIQIDQCACIANqQQ1qIABBD3EtAPT0QDoAACACQQFrIQIgAEEPSyAAQQR2IQANAAsgAUHy9MAAQQIgAiADakEOakEAIAJrEEsLIANBEGokAAupAgEDfyAAKAIAIgEoAkQiAEGAgICAeEYgAEVyRQRAIAEoAkggAEEBEOUECyABKAIUIgAEQCABKAIYIABBARDlBAsgASgCICIABEAgASgCJCAAQQEQ5QQLIAEoAiwiAARAIAEoAjAgAEEBEOUECyABKAJAIgIEQCABKAI8IQADQCAAKAIAIgMEQCAAQQRqKAIAIANBARDlBAsgAEEMaiEAIAJBAWsiAg0ACwsgASgCOCIABEAgASgCPCAAQQxsQQQQ5QQLIAEoAlAiAEGFgICAeEggAEVyRQRAIAEoAlQgAEEBEOUECwJAIAEoAgxFDQAgASgCECIAQYQBSQ0AIAAQqgMLAkAgAUF/Rg0AIAEgASgCBEEBayIANgIEIAANACABQeQAQQQQ5QQLC58CAQZ/IwBBEGsiAyQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgIoAgBBAUcNAiAAKAIYIQEgACgCFCEEIAAoAhAhBSAAKAIIIQcgACgCBCEGIAJBADYCAAJAIAJBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACACQShBBBDlBAsgBgRAIAcgBkEBEOUECyABBEAgBCEAA0AgACgCACICBEAgAEEEaigCACACQQEQ5QQLIABBDGohACABQQFrIgENAAsLIAVFDQMgBCAFQQxsQQQQ5QQMAwsgAEUNACADIABBCGsiADYCDCAAIAAoAgBBAWsiADYCACAADQIgA0EMahCVAgwCCxD5BAALQZWxwABBPxD6BAALIANBEGokAAufAgEGfyMAQRBrIgMkAAJAAkACQCABRQRAIABFDQEgAEEIayICKAIAQQFHDQIgACgCGCEBIAAoAhQhBCAAKAIQIQUgACgCCCEHIAAoAgQhBiACQQA2AgACQCACQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAkEoQQQQ5QQLIAYEQCAHIAZBARDlBAsgAQRAIAQhAANAIAAoAgAiAgRAIABBBGooAgAgAkEBEOUECyAAQQxqIQAgAUEBayIBDQALCyAFRQ0DIAQgBUEMbEEEEOUEDAMLIABFDQAgAyAAQQhrIgA2AgwgACAAKAIAQQFrIgA2AgAgAA0CIANBDGoQlQIMAgsQ+QQAC0Gw1cAAQT8Q+gQACyADQRBqJAALjQIBBn8gACgCCCIEIQICf0EBIAFBgAFJDQAaQQIgAUGAEEkNABpBA0EEIAFBgIAESRsLIgYgACgCACAEa0sEfyAAIAQgBkEBQQEQiAIgACgCCAUgAgsgACgCBGohAgJAIAFBgAFPBEAgAUE/cUGAf3IhBSABQQZ2IQMgAUGAEEkEQCACIAU6AAEgAiADQcABcjoAAAwCCyABQQx2IQcgA0E/cUGAf3IhAyABQf//A00EQCACIAU6AAIgAiADOgABIAIgB0HgAXI6AAAMAgsgAiAFOgADIAIgAzoAAiACIAdBP3FBgH9yOgABIAIgAUESdkFwcjoAAAwBCyACIAE6AAALIAAgBCAGajYCCEEAC4kCAQZ/IAAoAggiBCECAn9BASABQYABSQ0AGkECIAFBgBBJDQAaQQNBBCABQYCABEkbCyIGIAAoAgAgBGtLBH8gACAEIAYQmQIgACgCCAUgAgsgACgCBGohAgJAIAFBgAFPBEAgAUE/cUGAf3IhBSABQQZ2IQMgAUGAEEkEQCACIAU6AAEgAiADQcABcjoAAAwCCyABQQx2IQcgA0E/cUGAf3IhAyABQf//A00EQCACIAU6AAIgAiADOgABIAIgB0HgAXI6AAAMAgsgAiAFOgADIAIgAzoAAiACIAdBP3FBgH9yOgABIAIgAUESdkFwcjoAAAwBCyACIAE6AAALIAAgBCAGajYCCEEAC4kCAQZ/IAAoAggiBCECAn9BASABQYABSQ0AGkECIAFBgBBJDQAaQQNBBCABQYCABEkbCyIGIAAoAgAgBGtLBH8gACAEIAYQqAIgACgCCAUgAgsgACgCBGohAgJAIAFBgAFPBEAgAUE/cUGAf3IhBSABQQZ2IQMgAUGAEEkEQCACIAU6AAEgAiADQcABcjoAAAwCCyABQQx2IQcgA0E/cUGAf3IhAyABQf//A00EQCACIAU6AAIgAiADOgABIAIgB0HgAXI6AAAMAgsgAiAFOgADIAIgAzoAAiACIAdBP3FBgH9yOgABIAIgAUESdkFwcjoAAAwBCyACIAE6AAALIAAgBCAGajYCCEEAC4kCAQZ/IAAoAggiBCECAn9BASABQYABSQ0AGkECIAFBgBBJDQAaQQNBBCABQYCABEkbCyIGIAAoAgAgBGtLBH8gACAEIAYQqQIgACgCCAUgAgsgACgCBGohAgJAIAFBgAFPBEAgAUE/cUGAf3IhBSABQQZ2IQMgAUGAEEkEQCACIAU6AAEgAiADQcABcjoAAAwCCyABQQx2IQcgA0E/cUGAf3IhAyABQf//A00EQCACIAU6AAIgAiADOgABIAIgB0HgAXI6AAAMAgsgAiAFOgADIAIgAzoAAiACIAdBP3FBgH9yOgABIAIgAUESdkFwcjoAAAwBCyACIAE6AAALIAAgBCAGajYCCEEAC5QCAQl/IwBBEGsiAiQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgEoAgBBAUcNAiAAKAIsIAAoAighAyAAKAIgIQggACgCHCEEIAAoAhQhCSAAKAIQIQUgACgCCCEKIAAoAgQhBiABQQA2AgACQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUE8QQQQ5QQLIAYEQCAKIAZBARDlBAsgBQRAIAkgBUEBEOUECyAEBEAgCCAEQQEQ5QQLIANFDQMgA0EBEOUEDAMLIABFDQAgAiAAQQhrIgA2AgwgACAAKAIAQQFrIgA2AgAgAA0CIAJBDGoQsAIMAgsQ+QQAC0GVscAAQT8Q+gQACyACQRBqJAALigIBCX8jAEEgayIDJAAgAigCBCEEIAIoAgAhCQJAIAAgAUcEQCACKAIIIARBA3RqIQUgASAAa0EMbiEHA0AgA0EUaiAAEO4CIAMoAhghCCADQQhqIAMoAhwiARDHAiADKAIMIQYgAygCCCEKIAMgARDHAiADKAIAIQIgAygCBCILBEAgCyACEPcEIQILIAJFDQIgAkKBgICAEDcCACABBEAgAkEIaiAIIAH8CgAACyADKAIUIgYEQCAIIAZBARDlBAsgBSACNgIAIAVBBGogATYCACAAQQxqIQAgBUEIaiEFIARBAWohBCAHQQFrIgcNAAsLIAkgBDYCACADQSBqJAAPCyAKIAYQ/QQAC44CAQN/IAAoAhAiAyABSwRAIAIgA0kEQCAAKAIEIQMgACgCACEFIAAoAgwiBCACQRhsaiECIAQgAUEYbGohAUEAAn8CQAJAAkACQAJAQQQgACgCCCIAKAIAIgRBgICAgHhzIARBAE4bQQFrDgQBAgMEAAsgAyABIAIQ4wEMBAsgAyABIAIQfwwDCyABKAIAQQhqIAIoAgBBCGogASgCBCIAIAIoAgQiASAAIAFJGxCAAyICIAAgAWsgAhsiAEEASiAAQQBIawwCCyADIAEgAhBuDAELIAAgAyABIAIQSQsiAGsgACAFLQAMG0H/AXFB/wFGDwsgAiADQYjEwAAQ9gIACyABIANB+MPAABD2AgALjgIBA38gACgCECIDIAFLBEAgAiADSQRAIAAoAgQhAyAAKAIAIQUgACgCDCIEIAJBGGxqIQIgBCABQRhsaiEBQQACfwJAAkACQAJAAkBBBCAAKAIIIgAoAgAiBEGAgICAeHMgBEEAThtBAWsOBAECAwQACyADIAEgAhDjAQwECyADIAEgAhB/DAMLIAEoAgBBCGogAigCAEEIaiABKAIEIgAgAigCBCIBIAAgAUkbEIADIgIgACABayACGyIAQQBKIABBAEhrDAILIAMgASACEG4MAQsgACADIAEgAhBJCyIAayAAIAUtAAwbQf8BcUH/AUYPCyACIANBgMrAABD2AgALIAEgA0HwycAAEPYCAAuOAgEDfyAAKAIQIgMgAUsEQCACIANJBEAgACgCBCEDIAAoAgAhBSAAKAIMIgQgAkEYbGohAiAEIAFBGGxqIQFBAAJ/AkACQAJAAkACQEEEIAAoAggiACgCACIEQYCAgIB4cyAEQQBOG0EBaw4EAQIDBAALIAMgASACEOMBDAQLIAMgASACEH8MAwsgASgCAEEIaiACKAIAQQhqIAEoAgQiACACKAIEIgEgACABSRsQgAMiAiAAIAFrIAIbIgBBAEogAEEASGsMAgsgAyABIAIQbgwBCyAAIAMgASACEEkLIgBrIAAgBS0ADBtB/wFxQf8BRg8LIAIgA0GQ1sAAEPYCAAsgASADQYDWwAAQ9gIAC48CAQR/IwBBIGsiASQAAkACQCAABEAgAEEIayIDIAMoAgAiBEEBaiICNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAEgAzYCFCABIAA2AhAgASAAQQhqNgIMAkAgACgCkAFFBEAgACACNgIAIAMgBDYCAAwBCyABQYEBNgIYIAEgAEGUAWogAUEYahCbAyABKAIEIQICQAJAIAEoAgBBAXEEQCABIAI2AhwgAUEcahD3ASACQYQBTw0BDAILIAJBhAFJDQELIAIQqgMLIAMoAgAhAiAAIAAoAgBBAWs2AgAgAyACQQFrIgA2AgAgAA0AIAFBFGoQUQsgAUEgaiQADwsQ+QQLAAsQ+wQAC5UCAgJ/AX4jAEEgayIBJAACQAJAIAAEQCAAQQhrIgIoAgBBAUcNASABQRhqIABBHGooAgA2AgAgAUEQaiAAQRRqKQIANwMAIAFBCGogAEEMaikCADcDACAAKQIEIQMgAkEANgIAIAEgAzcDAAJAIAJBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACACQShBBBDlBAtBKEEEEPcEIgBFDQIgAEEANgIIIABCgYCAgBA3AgAgACABKQMANwIMIABBFGogAUEIaikDADcCACAAQRxqIAFBEGopAwA3AgAgAEEkaiABQRhqKAIANgIAIAFBIGokACAAQQhqDwsQ+QQAC0GVscAAQT8Q+gQAC0EEQSgQ/QQAC44CAgJ/AX4jAEEgayICJAACQCAARSABRXJFBEAgAUEIayIDKAIAQQFHDQEgAkEYaiABQRRqKQIANwMAIAJBEGogAUEMaikCADcDACABKQIEIQQgA0EANgIAIAIgBDcDCAJAIANBf0YNACABQQRrIgEgASgCAEEBayIBNgIAIAENACADQSRBBBDlBAsgACgCAEUEQCAAQX82AgAgACgCECIBIAEoAgBBAWsiAzYCACAAQRBqIQEgA0UEQCABEJADCyABIAIpAwg3AgAgAUEQaiACQRhqKQMANwIAIAFBCGogAkEQaikDADcCACAAQQA2AgAgAkEgaiQADwsQ+wQACxD5BAALQae7wABBPxD6BAALlAIBAX8jAEEgayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAJBGGogAEEUaigCADYCACACQRBqIABBDGopAgA3AwAgAiAAKQIENwMIIAFBADYCAAJAIAFBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACABQSBBBBDlBAsgAigCCCIAIAAoAgBBAWsiADYCACAARQRAIAJBCGoQkAMLIAIoAhAiACAAKAIAQQFrIgA2AgAgAA0DIAJBEGoQkAMMAwsgAEUNACACIABBCGsiADYCCCAAIAAoAgBBAWsiADYCACAADQIgAkEIahDLAgwCCxD5BAALQae7wABBPxD6BAALIAJBIGokAAuCAgEFfyMAQSBrIgIkAAJAAkACQCABQQBOBEBBCiEGQQpBARD3BCIDRQ0CIAJBADYCHCACIAM2AhggAkEKNgIUDAELQQEhBEELIQZBC0EBEPcEIgNFDQIgA0EtOgAAIAIgAzYCGCACQQs2AhQgAkEBNgIcCyACIAEgAUEfdSIFcyAFayACQQpqELgEIAIoAgAhBSACKAIEIgEgBiAEa0sEQCACQRRqIAQgAUEBQQEQiAIgAigCHCEEIAIoAhghAwsgAQRAIAMgBGogBSAB/AoAAAsgAEEIaiABIARqNgIAIAAgAikCFDcCACACQSBqJAAPC0EBQQoQxwQAC0EBQQsQxwQAC5oQARJ/IwBB0ABrIgkkACAJIAE2AhAgCSAANgIMIAkgATYCCCAJIAIgAxCIASAJIAU2AiggCSAENgIkIAkgBTYCICAJIAkoAgQiADYCHCAJIAkoAgA2AhggCSAANgIUIAlBMGohCiAJQRRqIQsgCUEgaiEPIAdBAEchFCAIQQBHIRBBACEDQQAhBCMAQfAAayIHJAAgB0EgaiENIAlBCGoiESgCBCIVIgEgESgCCCIAaiECAkACQCAARQRAIAEhAAwBCyABIQADQCADIgQCfyAAIgMsAAAiBUEATgRAIAVB/wFxIQggAEEBagwBCyADLQABQT9xIQggBUEfcSEAIAVBX00EQCAAQQZ0IAhyIQggA0ECagwBCyADLQACQT9xIAhBBnRyIQggBUFwSQRAIAggAEEMdHIhCCADQQNqDAELIABBEnRBgIDwAHEgAy0AA0E/cSAIQQZ0cnIhCCADQQRqCyIAIANraiEDAkAgCEEgRiAIQQlrQQVJcg0AIAhBgAFJDQICQAJAAkACQCAIQQh2IgVBFmsOGwEGBgYGBgYGBgYCBgYGBgYGBgYGBgYGBgYGAwALIAUNBSAIQf8BcS0A2+pAQQFxRQ0FDAMLIAhBgC1HDQQMAgsgCEH/AXEtANvqQEECcUUNAwwBCyAIQYDgAEcNAgsgACACRw0AC0EAIQRBACEDDAELIAAgAkYNAANAAkAgAiIFQQFrIgIsAAAiCEEASARAIAhBP3ECfyAFQQJrIgItAAAiCMAiDkFATgRAIAhBH3EMAQsgDkE/cQJ/IAVBA2siAi0AACIIwCIOQUBOBEAgCEEPcQwBCyAOQT9xIAVBBGsiAi0AAEEHcUEGdHILQQZ0cgtBBnRyIQgLAkAgCEEgRiAIQQlrQQVJcg0AIAhBgAFJDQECQAJAAkACQCAIQQh2Ig5BFmsOGwAFBQUFBQUFBQUBBQUFBQUFBQUFBQUFBQUFAgMLIAhBgC1GDQMMBAsgCEH/AXEtANvqQEECcQ0CDAMLIAhBgOAARw0CDAELIA4NASAIQf8BcS0A2+pAQQFxRQ0BCyAAIAJHDQEMAgsLIAMgAGsgBWohAwsgDSADIARrNgIEIA0gASAEajYCAAJAAkACQAJAIAcoAiQiBEEASA0AIAcoAiAhAQJ/IAQEQEEBIQwgBEEBEPcEIgBFDQIgBARAIAAgASAE/AoAAAsgCygCCCEDIAsoAgQhAiAEDAELIAQEQEEBIAEgBPwKAAALIAdBNGoiACALKAIEIgIgCygCCCIDQbS8wABBAhA8IAdBAjYCRCAHQam+wABBp77AACAQGzYCQCAHIA+tQoCAgICwBoQ3A1ggByAHQUBrrUKAgICAMIQ3A1AgByAArUKAgICAsAaENwNIIAdBKGpB2YfAACAHQcgAahCGASAHKAI0IgAEQCAHKAI4IABBARDlBAsgBygCMCEEIAcoAiwhACAHKAIoCyEBIAdBGGogBBDHAiAHKAIcIQUgBygCGCEIIAdBEGogBBDHAiAHKAIQIQwgBygCFCINBEAgDSAMEPcEIQwLIAxFDQEgDEKBgICAEDcCACAEBEAgDEEIaiAAIAT8CgAACyABBEAgACABQQEQ5QQLIAcgAjYCZCAHIAI2AmAgByALKAIANgJoIAcgAiADQQxsajYCbCMAQRBrIg0kACAHQeAAaiIFKAIIIRYgDUEIaiEOIAUoAgAiASECIAUoAgwaIwBBEGsiCCQAAkACQCAFKAIEIgAgBSgCDCIXRwRAA0AgBSAAQQxqIgM2AgQgAEEEaigCACESIAAoAgAhEyAIQQhqIABBCGooAgAiCxDHAiAIKAIMIRggCCgCCCEZIAggCxDHAiAIKAIAIQAgCCgCBCIaBEAgGiAAEPcEIQALIABFDQIgAEKBgICAEDcCACALBEAgAEEIaiASIAv8CgAACyATBEAgEiATQQEQ5QQLIAIgADYCACACQQRqIAs2AgAgAkEIaiECIAMiACAXRw0ACwsgDiACNgIEIA4gATYCACAIQRBqJAAMAQsgGSAYEP0EAAsgBSgCDCIDIAUoAgQiAGtBDG4hAiANKAIMIQUgACADRwRAA0AgACgCACIDBEAgAEEEaigCACADQQEQ5QQLIABBDGohACACQQFrIgINAAsLIAEhAAJAIBZBDGwiAkEEcUUNACACQXhxIgNFBEBBBCEAIAEgAkEEEOUEDAELIAEgAkEEIAMQ3gQiAA0AQQQgAxD9BAALIAogADYCBCAKIAJBA3Y2AgAgCiAFIAFrQQN2NgIIIA1BEGokACAPKAIEIQIgB0EIaiAPKAIIIgEQxwIgBygCDCEDIAcoAgghBSAHIAEQxwIgBygCACEAIAcoAgQiCARAIAggABD3BCEACyAARQ0CIABCgYCAgBA3AgAgAQRAIABBCGogAiAB/AoAAAsgDygCACIDBEAgAiADQQEQ5QQLIAogBjoAHiAKIAE2AhggCiAANgIUIAogBDYCECAKIAw2AgwgCiAQOgAdIAogFDoAHCARKAIAIgAEQCAVIABBARDlBAsgB0HwAGokAAwDCyAMIAQQxwQACyAIIAUQ/QQACyAFIAMQ/QQACyAJQQA2AixBLEEEEPcEIgBFBEBBBEEsEP0EAAsgAEKBgICAEDcCACAAIAkpAiw3AgggAEEQaiAJQTRqKQIANwIAIABBGGogCUE8aikCADcCACAAQSBqIAlBxABqKQIANwIAIABBKGogCUHMAGooAgA2AgAgCUHQAGokACAAQQhqC4kCAQR/IwBBEGsiAyQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgIoAgBBAUcNAiAAKAIMIQEgACgCCCEEIAAoAgQhBSACQQA2AgACQCACQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAkEYQQQQ5QQLIAEEQCAEIQADQCAAKAIAIgIgAigCAEEBayICNgIAIAJFBEAgABCQAwsgAEEYaiEAIAFBAWsiAQ0ACwsgBUUNAyAEIAVBGGxBBBDlBAwDCyAARQ0AIAMgAEEIayIANgIMIAAgACgCAEEBayIANgIAIAANAiADQQxqEKoCDAILEPkEAAtBwM3AAEE/EPoEAAsgA0EQaiQAC5cEAQZ/IwBBMGsiAyQAAkACQAJAIAAEQCAAQQhrIgYgBigCAEEBaiIENgIAIARFDQEgACgCACIEQX9GDQIgACAEQQFqNgIAIAMgBjYCFCADIAA2AhAgAyACNgIgIAMgATYCHCADIAI2AhggAyAAQQRqIgE2AgwgA0EkaiECIANBGGoiBygCBCEEAkACQAJAAkACQAJAAkAgBygCCEEHaw4CAQACCyAEKQAAQvPQvZPHrtm59ABRDQIMAQsgBEGi0MAAQQcQgAMNAAJAIAICfyABKAIIIgVFBEBBBCEBQQAMAQsgASgCBCEIQQxBBBD3BCIBRQ0BIAEgCCAFQQxsakEMaxDQAUEBCyIFNgIIIAIgATYCBCACIAU2AgAMAwtBBEEMEP0EAAsgAiABEH0MAQsgAgJ/IAEoAghFBEBBBCEBQQAMAQsgASgCBCEFQQxBBBD3BCIBRQ0CIAEgBRDQAUEBCyIFNgIIIAIgATYCBCACIAU2AgALIAcoAgAiAQRAIAQgAUEBEOUECwwBC0EEQQwQ/QQACyAAIAAoAgBBAWs2AgAgBiAGKAIAQQFrIgA2AgAgAEUEQCADQRRqEO0BC0EYQQQQ9wQiAEUNAyAAQQA2AgggAEKBgICAEDcCACAAIAMpAiQ3AgwgAEEUaiADQSxqKAIANgIAIANBMGokACAAQQhqDwsQ+QQLAAsQ+wQAC0EEQRgQ/QQAC4kCAQR/IwBBEGsiAyQAAkACQAJAIAFFBEAgAEUNASAAQQhrIgIoAgBBAUcNAiAAKAIMIQEgACgCCCEEIAAoAgQhBSACQQA2AgACQCACQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAkEYQQQQ5QQLIAEEQCAEIQADQCAAKAIAIgIgAigCAEEBayICNgIAIAJFBEAgABCQAwsgAEEYaiEAIAFBAWsiAQ0ACwsgBUUNAyAEIAVBGGxBBBDlBAwDCyAARQ0AIAMgAEEIayIANgIMIAAgACgCAEEBayIANgIAIAANAiADQQxqEKoCDAILEPkEAAtB0NnAAEE/EPoEAAsgA0EQaiQAC4ACAQp/IAEoAggiAkEYbCEEAkACQCACQdWq1SpLDQACQCAERQRAQQQhBgwBCyABKAIEIQFBBCEFIARBBBD3BCIGRQ0BIAJFDQAgAiEFA0AgBCAHRg0BIAEoAgAiCSAJKAIAQQFqIgg2AgAgCEUNAyABKAIQIQogASgCDCELIAEoAgghCCAGIAdqIgMgCTYCACADQRRqIAEoAhQ2AgAgA0EQaiAKNgIAIANBDGogCzYCACADQQhqIAg2AgAgA0EEaiABKAIENgIAIAdBGGohByABQRhqIQEgBUEBayIFDQALCyAAIAI2AgggACAGNgIEIAAgAjYCAA8LIAUgBBDHBAsAC7oCAQF/IwBBEGsiByQAIAcgBDYCACAHIAY2AgQgBCAGRgRAIAAoAgAgASACIAAoAgQoAgwRAQAhBiAHQQA6AA0gByAGOgAMIAcgADYCCAJAIARFDQADQCAHQQhqIAMoAgAgA0EEaigCACAFQdD3wAAQtQEhACAFQQhqIQUgA0EIaiEDIARBAWsiBA0ACyAHLQANIgEgBy0ADCICciEGIAJBAXEgAUEBR3INACAAKAIAIgAtAApBgAFxRQRAIAAoAgBBsfXAAEECIAAoAgQoAgwRAQAhBgwBCyAAKAIAQbD1wABBASAAKAIEKAIMEQEAIQYLIAdBEGokACAGQQFxDwsjAEEQayIAJAAgACAHQQRqNgIMIAAgBzYCCCAAQQhqQeydwQAgAEEMakHsncEAQQAgA0Hg98AAENUBAAupAgIEfwF+IwBBEGsiAyQAAkACQAJAIAAEQCAAKAIAIgFBf0YNASAAIAFBAWo2AgACQAJAAkACQAJAIAAoAgQiBEGEgICAeEcEQEGAgICAeCECQQQgBEGAgICAeHMgBEEAThtBAWsOBAECAwQFCyAAIAE2AgBBACEADAgLQYGAgIB4IQIMAwtBgoCAgHghAgwCC0GDgICAeCECDAELIANBBGogAEEEahDuAiADKQIIIQUgAygCBCECIAAoAgBBAWshAQsgACABNgIAIAAtABAhAUEcQQQQ9wQiAEUNAiAAIAE6ABggACAFNwIQIAAgAjYCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqIQAMAwsQ+QQACxD7BAALQQRBHBD9BAALIANBEGokACAAC6ICAQR/IwBBIGsiBSQAQQEhBgJAIAAoAgAiByABIAIgACgCBCIIKAIMIgERAQANAAJAIAAtAApBgAFxRQRAIAdBifXAAEEBIAERAQANAiADIAAgBCgCDBEAAEUNAQwCCyAHQYr1wABBAiABEQEADQEgBUEBOgAPIAUgCDYCBCAFIAc2AgAgBUGQ9cAANgIUIAUgACkCCDcCGCAFIAVBD2o2AgggBSAFNgIQIAMgBUEQaiAEKAIMEQAADQEgBSgCEEGH9cAAQQIgBSgCFCgCDBEBAA0BCwJAIAINACAALQAKQYABcQ0AIAAoAgBBjfXAAEEBIAAoAgQoAgwRAQANAQsgACgCAEGM9cAAQQEgACgCBCgCDBEBACEGCyAFQSBqJAAgBgv6AQEEfyMAQSBrIgMkAAJAAkAgAARAIABBCGsiBSAFKAIAQQFqIgQ2AgAgBEUNASAAKAIAIgRBf0YNAiAAIARBAWo2AgAgAyAFNgIcIAMgADYCGCADIABBCGoiBDYCFCADQQhqIAQgASACEHpBACEEAkAgAygCCEEBcUUNACADKAIMIgYgACgCoAFPDQAgACgCnAEgBkEkbGoiBigCAEGAgICAeEYNACAGLQAYIQQLIAIEQCABIAJBARDlBAsgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EcahBRCyADQSBqJAAgBA8LEPkECwALEPsEAAv1AQEBfyMAQUBqIgckACAHIAE2AgQgByAANgIAIAcgAzYCDCAHIAI2AgggB0HwnsEAKAIANgIUIAdB5J7BACgCADYCECAEBEAgByAFNgIcIAcgBDYCGCAHIAdBCGqtQoCAgIDAF4Q3AzggByAHrUKAgICAwBeENwMwIAcgB0EYaq1CgICAgNAXhDcDKCAHIAdBEGqtQoCAgICAF4Q3AyBBgoXAACAHQSBqIAYQnAMACyAHIAdBCGqtQoCAgIDAF4Q3AzAgByAHrUKAgICAwBeENwMoIAcgB0EQaq1CgICAgIAXhDcDIEHLhMAAIAdBIGogBhCcAwAL4AIBB38jAEEQayICJAACQAJAAkAgAUUEQCAARQ0BIABBCGsiASgCAEEBRw0CIAAoAiAgACgCHCEDIAAoAhQhByAAKAIQIQQgACgCCCEIIAAoAgQhBSABQQA2AgACQCABQX9GDQAgAEEEayIAIAAoAgBBAWsiADYCACAADQAgAUEwQQQQ5QQLIAUEQCAIIAVBARDlBAsgBARAIAcgBEEBEOUECyADRQ0DIANBARDlBAwDCyAARQ0AIAIgAEEIayIANgIMIAAgACgCAEEBayIANgIAIAANAiACQQxqKAIAIgAoAgwiAQRAIAAoAhAgAUEBEOUECyAAKAIYIgEEQCAAKAIcIAFBARDlBAsgACgCJCIBBEAgACgCKCABQQEQ5QQLAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQTBBBBDlBAsMAgsQ+QQAC0GVscAAQT8Q+gQACyACQRBqJAALngICAn4CfyMAQTBrIgIkACACQQhqIAJBKGqtIgBCppfEiQ1+QiCJIABCrOv+xgl+hSIAp0GeAXOtIgFCrOv+xgl+IABCIIgiAEKml8SJDX6FIAFCppfEiQ1+IABCrOv+xgl+hUIgiYUiAKdB+J/BAHOtIgFCrOv+xgl+IABCIIgiAEKml8SJDX6FIAFCppfEiQ1+IABCrOv+xgl+hUIgiYUQWQJAA0ACQEGYoMEAQZigwQAtAAAiA0EBIAMbOgAAIANFDQAgA0ECRw0BDAILC0H4n8EAIAIpAwg3AwBBmKDBAEECOgAAQZCgwQAgAkEgaikDADcDAEGIoMEAIAJBGGopAwA3AwBBgKDBACACQRBqKQMANwMACyACQTBqJAALgwICAn8CfiMAQSBrIgkkACAJQRhqIAAgARCIAUGAgICAeCEAIAkoAhwhCiAJKAIYIQECQCACRQRAQYCAgIB4IQIMAQsgCUEQaiACIAMQiAEgCTUCECAJKAIUIgKtQiCGhCEMCyAHBEAgCUEIaiAHIAgQiAEgCTUCCCAJKAIMIgCtQiCGhCELC0E8QQQQ9wQiA0UEQEEEQTwQ/QQACyADIAU2AjQgAyAENgIwIAMgCzcCKCADIAA2AiQgAyAMNwIcIAMgAjYCGCADIAE2AhAgA0EANgIIIANCgYCAgBA3AgAgAyAGQQBHOgA4IAMgCjYCFCADIAo2AgwgCUEgaiQAIANBCGoL1gYCDX8BfiMAQSBrIggkAAJAAkACQCAABEAgAEEIayILIAsoAgBBAWoiAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAIIAs2AhAgCCAANgIMIAggAEEIaiIGNgIIIAhBFGohDSMAQSBrIgMkACADQQA2AgwgA0KAgICAwAA3AgQCQCAGKAIQIgJFDQAgAkEwbCEEIAYoAgwhAkEEIQcDQCADQRBqIAIQViADKAIYIgVBDGwhCSADKAIQIQogAygCFCEGIAMoAgQgAWsgBUkEQCADQQRqIAEgBUEEQQwQiAIgAygCCCEHIAMoAgwhAQsgCQRAIAcgAUEMbGogBiAJ/AoAAAsgAyABIAVqIgE2AgwgCgRAIAYgCkEMbEEEEOUECyACQTBqIQIgBEEwayIEDQALIAMgA0EfajYCECABQQJJDQAgAUEVTwRAIANBEGohBUEAIQQjAEGAIGsiCSQAAkACQEGq2CggASABQarYKE8bIgIgASABQQF2ayIKIAIgCksbIgZB1gJPBEAgBkEMbCEMIApBqtWq1QBLDQJBBCEEIAxBBBD3BCICRQ0CIAcgASACIAYgAUHBAEkgBRA3IAIgDEEEEOUEDAELIAcgASAJQdUCIAFBwQBJIAUQNwsgCUGAIGokAAwCCyAEIAwQxwQACwJAIAEEQCABQQFHBEAgByABQQxsaiEKIAdBDCIBaiEEA0AgBEEIaigCACIJIARBBGsoAgBJBEAgBCkCACEOIAEhAgJ/A0AgAiAHaiIFIAVBDGsiBikCADcCACAFQQhqIAZBCGooAgA2AgAgByACQQxGDQEaIAJBDGshAiAJIAVBEGsoAgBJDQALIAIgB2oLIA43AgAgBUEEayAJNgIACyABQQxqIQEgBEEMaiIEIApHDQALCwwBCwALCyANIAMpAgQ3AgAgDUEIaiADQQxqKAIANgIAIANBIGokACAAIAAoAgBBAWs2AgAgCyALKAIAQQFrIgA2AgAgAEUEQCAIQRBqEPgCC0EYQQQQ9wQiAEUNAyAAQQA2AgggAEKBgICAEDcCACAAIAgpAhQ3AgwgAEEUaiAIQRxqKAIANgIAIAhBIGokACAAQQhqDwsQ+QQLAAsQ+wQAC0EEQRgQ/QQAC4ICAgN/AX4jAEEQayICJAACQCAABEACQCABRQRAQYSAgIB4IQQMAQsgAUEIayIDKAIAQQFHDQIgAkEIaiABQRBqKAIANgIAIAEoAgQhBCABKQIIIQUgA0EANgIAIAIgBTcDACADQX9GDQAgAUEEayIBIAEoAgBBAWsiATYCACABDQAgA0EcQQQQ5QQLIAAoAgBFBEAgAEF/NgIAIAAoAgQiAUGFgICAeEggAUVyRQRAIAAoAgggAUEBEOUECyAAIAQ2AgQgACACKQMANwIIIABBADYCACAAQRBqIAJBCGooAgA2AgAgAkEQaiQADwsQ+wQACxD5BAALQcDNwABBPxD6BAALggIBBH8jAEEgayIDJABBASEFAkAgAC0ABA0AIAAtAAUhBgJAIAAoAgAiBC0ACkGAAXFFBEAgBkEBcUUNASAEKAIAQYT1wABBAiAEKAIEKAIMEQEARQ0BDAILIAZBAXFFBEAgBCgCAEGG9cAAQQEgBCgCBCgCDBEBAA0CCyADQQE6AA8gA0GQ9cAANgIUIAMgBCkCADcCACADIAQpAgg3AhggAyADQQ9qNgIIIAMgAzYCECABIANBEGogAigCDBEAAA0BIAMoAhBBh/XAAEECIAMoAhQoAgwRAQAhBQwBCyABIAQgAigCDBEAACEFCyAAQQE6AAUgACAFOgAEIANBIGokAAvyAQEBfyMAQSBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgAkEYaiAAQRRqKQIANwMAIAJBEGogAEEMaikCADcDACACIAApAgQ3AwggAUEANgIAAkAgAUF/Rg0AIABBBGsiACAAKAIAQQFrIgA2AgAgAA0AIAFBJEEEEOUECyACKAIIIgAgACgCAEEBayIANgIAIAANAyACQQhqEJADDAMLIABFDQAgAiAAQQhrIgA2AgggACAAKAIAQQFrIgA2AgAgAA0CIAJBCGoQ/QIMAgsQ+QQAC0Gnu8AAQT8Q+gQACyACQSBqJAAL/AEDBX4DfwF8QeCfwQAtAABBAUcEQBDMAgsCQEHcn8EAKAIAEIgFIgogCp0iCqFEAAAAAICELkGiEOwC/AciBUKAlOvcA4AiBiAK/AciBELoB4AiAnwgBSAGQoCU69wDfn2nIAQgAkLoB359p0HAhD1saiIJQf+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///wdLcg0EIAcoAhAhEQJAIAhFBEBBBCELDAELQQQhAiAIQQQQ9wQiC0UNBSAERQ0AQQAhAiAEIQADQCACIAhGDQEgBSgCACIJIAkoAgBBAWoiDTYCACANRQ0FIAVBBGooAgAhDSACIAtqIhIgCTYCACASQQRqIA02AgAgAkEIaiECIAVBCGohBSAAQQFrIgANAAsLIAcoAhQiACAAKAIAQQFqIgI2AgAgAkUNAyADIAA2AhQgAyARNgIQIAMgDjYCDCADIAQ2AgggAyALNgIEIAMgBDYCACADIActAB46AB4gAyAHLwEcOwEcIAMgBygCGDYCGCABQQE2AogCIAEgAzYChAIgAUEBNgKAAiABQcACaiABQQhqIAFB0AJqIAFB4AJqIAFBgAJqEDUCQCABKALAAkGAgICAeEcEQCAQIAEpAsACNwIEIBBBDGogAUHIAmooAgA2AgAgEEECNgIAIAEoAqABIgUEQCABKAKcASEHQQAhAANAAkAgByAAQSRsaiIEKAIAIgJBgICAgHhGDQAgAgRAIAQoAgQgAkEBEOUECyAEKAIUIgMEQCAEKAIQIQIDQCACKAIAIggEQCACQQRqKAIAIAhBARDlBAsgAkEMaiECIANBAWsiAw0ACwsgBCgCDCICRQ0AIAQoAhAgAkEMbEEEEOUECyAAQQFqIgAgBUcNAAsLIAEoApgBIgAEQCABKAKcASAAQSRsQQQQ5QQLIAEoAqwBIgMEQCABKAKoAUEQaiECA0ACQCACQRFqLQAAQQJGDQAgAigCACIAIAAoAgBBAWsiADYCACAARQRAIAIQkAMLIAJBCGoiACgCACIEIAQoAgBBAWsiBDYCACAEDQAgABCQAwsgAkEkaiECIANBAWsiAw0ACwsgASgCpAEiAARAIAEoAqgBIABBJGxBBBDlBAsgAUHYAWoQ7wEgASgC2AEiAARAIAEoAtwBIABBBXRBBBDlBAsCQCABKAKMASIDQRBNBEAgA0UNASABQQhqQQRyIQIDQCACKAIAIgAgACgCAEEBayIANgIAIABFBEAgAhCQAwsgAkEIaiECIANBAWsiAw0ACwwBCyABKAIQIQQgASgCDCIABEAgBCECA0AgAigCACIFIAUoAgBBAWsiBTYCACAFRQRAIAIQkAMLIAJBCGohAiAAQQFrIgANAAsLIAQgA0EDdEEEEOUECwJAIAEoAsQBIgRFDQAgASgCzAEiAARAIAEoAsABIgNBCGohAiADKQMAQn+FQoCBgoSIkKDAgH+DIRMDQCATUARAA0AgA0GAAWshAyACKQMAIAJBCGohAkKAgYKEiJCgwIB/gyITQoCBgoSIkKDAgH9RDQALIBNCgIGChIiQoMCAf4UhEwsgAyATeqdBAXRB8AFxayIFQRBrKAIAIgcEQCAFQQxrKAIAIAdBARDlBAsgE0IBfSATgyETIABBAWsiAA0ACwsgBCAEQQR0QRdqQXBxIgBqQQlqIgJFDQAgASgCwAEgAGsgAkEIEOUECyABKAKQAUUNASABKAKUASIAQYQBSQ0BIAAQqgMMAQsgECABQQhqQeAB/AoAAAsgAUHwAmokAAwFC0Hgv8AAQTcgAUHAAmpB0L/AAEGYwMAAEOsCAAtBAUEIEMcEAAtBBEEgEP0ECwALIAIgCBDHBAALIAwgDCgCAEEBazYCACAPIA8oAgBBAWsiADYCACAARQRAIAZB9AFqEPQBCyAKAn8gBigCCEECRgRAQRhBBBD3BCIARQ0FIABBADYCCCAAQoGAgIAQNwIAIAAgBikCDDcCDCAAQRRqIAZBFGooAgA2AgAgAEEIahDWBCEAQQEMAQsgBkHwAWogBkEIakHgAfwKAABB8AFBCBD3BCIARQ0FIABBADYCCCAAQoGAgIAQNwMAIABBDGogBkHsAWpB5AH8CgAAIABBCGohAEEACyICNgIIIAogAEEAIAIbNgIEIApBACAAIAIbNgIAIAZB0ANqJAAMBQsQ+QQLAAsQ+wQAC0EEQRgQ/QQAC0EIQfABEP0EAAsgCigCACAKKAIEIAooAgggCkEQaiQAC+4FAgt/A34jAEEQayIGJAAjAEEwayIDJAACQAJAAkACQAJAIAAEQCAAQQhrIgQgBCgCAEEBaiIFNgIAIAVFDQEgACgCACIFQX9GDQIgACAFQQFqNgIAIAMgBDYCKCADIAA2AiQgAyAAQQhqIgU2AiAgA0EIaiEIAkACQCAFKAIMRQ0AIAVBEGogASACEG8hDiAFKAIAIglBFGshCyAFKAIEIgogDqdxIQUgDkIZiEL/AINCgYKEiJCgwIABfiEQA0ACQCAFIAlqKQAAIg8gEIUiDkJ/hSAOQoGChIiQoMCAAX2DQoCBgoSIkKDAgH+DIg5QRQRAA0AgC0EAIA56p0EDdiAFaiAKcWsiDEEUbGoiDSgCBCACRgRAIAEgDSgCAEEIaiACEIADRQ0DCyAOQgF9IA6DIg5QRQ0ACwsgDyAPQgGGg0KAgYKEiJCgwIB/g1BFDQIgBSAHQQhqIgdqIApxIQUMAQsLIAggCSAMQRRsakEMaxDQAQwBCyAIQYCAgIB4NgIACyACBEAgASACQQEQ5QQLIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBKGoQrwMLQQAhAEEAIQECQCADKAIIIgRBgICAgHhGDQAgAygCDCEBAkAgAygCECICIARPBEAgASEADAELIARBGGwhBCACRQRAQQQhACABIARBBBDlBAwBCyABIARBBCACQRhsIgEQ3gQiAEUNBQsgAyAANgIkIAMgADYCICADIAI2AiggAyAAIAJBGGxqNgIsIANBFGogA0EgahCtASADKAIUIgEgAygCHCIATQRAIAMoAhghAQwBCyABQQJ0IQIgAygCGCEEIABFBEBBBCEBIAQgAkEEEOUEDAELIAQgAkEEIABBAnQiAhDeBCIBRQ0FCyAGIAA2AgQgBiABNgIAIANBMGokAAwFCxD5BAsACxD7BAALQQQgARDHBAALQQQgAhDHBAALIAYoAgAgBigCBCAGQRBqJAALIgACQCAABEAgACgCAEF/Rg0BIAAoAigPCxD5BAALEPsEAAsiAAJAIAAEQCAAKAIAQX9GDQEgAC0AMA8LEPkEAAsQ+wQACyIAAkAgAARAIAAoAgBBf0YNASAAKAIsDwsQ+QQACxD7BAALIgACQCAABEAgACgCAEF/Rg0BIAApAwgPCxD5BAALEPsEAAsiAAJAIAAEQCAAKAIAQX9GDQEgAC0AJA8LEPkEAAsQ+wQACyIAAkAgAARAIAAoAgBBf0YNASAAKAIgDwsQ+QQACxD7BAALIgACQCAABEAgACgCAEF/Rg0BIAAoAhwPCxD5BAALEPsEAAsiAAJAIAAEQCAAKAIAQX9GDQEgAC0AFQ8LEPkEAAsQ+wQACyIAAkAgAARAIAAoAgBBf0YNASAALQAUDwsQ+QQACxD7BAALIgACQCAABEAgACgCAEF/Rg0BIAApAxAPCxD5BAALEPsEAAsiAAJAIAAEQCAAKAIAQX9GDQEgAC0AHQ8LEPkEAAsQ+wQACyIAAkAgAARAIAAoAgBBf0YNASAALQAeDwsQ+QQACxD7BAALIgACQCAABEAgACgCAEF/Rg0BIAAtABwPCxD5BAALEPsEAAsoAQF/AkAgACgCAEUNACAAKAIEIgFFDQAgACgCCCABQQJ0QQQQ5QQLC6YDAgV/AX4jAEEQayIDJAAjAEEwayICJAACQAJAAkACQAJAAkAgAEUNACAAQQhrIgUgBSgCAEEBaiIENgIAIARFDQEgACgCAA0CIABBfzYCACACIAU2AhQgAiAANgIQIAIgAEEIaiIGNgIMIAFFDQAgAUEIayIEKAIAQQFHDQMgAkEgaiABQQxqKAIANgIAIAEpAgQhByAEQQA2AgAgAiAHNwMYAkAgBEF/Rg0AIAFBBGsiASABKAIAQQFrIgE2AgAgAQ0AIARBGEEEEOUECyACQSRqIAYgAkEYahA0IABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIAJBFGoQUQtBACEAIAIoAiRBgICAgHhHBEBBGEEEEPcEIgBFDQUgAEEANgIIIABCgYCAgBA3AgAgACACKQIkNwIMIABBFGogAkEsaigCADYCACAAQQhqENYEIQFBASEACyADIAA2AgQgAyABQQAgABs2AgAgAkEwaiQADAULEPkECwALEPsEAAtBsNXAAEE/EPoEAAtBBEEYEP0EAAsgAygCACADKAIEIANBEGokAAvYAgEHfyMAQRBrIgMkACMAQRBrIgQkAAJAAkACQAJAAkAgAARAIABBCGsiBSAFKAIAIgZBAWoiAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAEIAU2AgwgBCAANgIIIAQgAEEIajYCBCABIAAoAhhPDQQgACgCFCABQTBsaiICKAIIIgZBAnQhASAGQf////8DSyABQfz///8HS3INAyACKAIEIQgCQCABRQRAQQQhAgwBC0EEIQcgAUEEEPcEIgJFDQQLIAEEQCACIAggAfwKAAALIAUoAgAhASAAIAAoAgBBAWs2AgAgBSABQQFrIgA2AgAgAA0FIARBDGoQ8wEMBQsQ+QQLAAsQ+wQACyAHIAEQxwQACyAAIAI2AgAgBSAGNgIAQQAhBkEAIQILIAMgBjYCBCADIAI2AgAgBEEQaiQAIAMoAgAgAygCBCADQRBqJAALowMBBn8jAEEQayIFJAAjAEEwayICJAACQAJAAkACQAJAIABFDQAgAEEIayIEIAQoAgBBAWoiAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACACIAQ2AhQgAiAANgIQIAIgAEEEaiIHNgIMIAFFDQAgAUEIayIDIAMoAgBBAWoiBjYCACAGRQ0BIAEoAgAiBkF/Rg0CIAEgBkEBajYCACACIAM2AiAgAiABNgIcIAIgAUEEaiIGNgIYIAJBJGogByAGEOcBIAEgASgCAEEBazYCACADIAMoAgBBAWsiATYCACABRQRAIAJBIGoQlQILIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIAJBFGoQggMLAkAgAigCJCIEIAIoAiwiAE0EQCACKAIoIQEMAQsgAigCKCEDIABFBEBBASEBIAMgBEEBEOUEDAELIAMgBEEBIAAQ3gQiAUUNBAsgBSAANgIEIAUgATYCACACQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAFKAIAIAUoAgQgBUEQaiQACyEAAkAgAARAIAAoAgBFDQEQ+wQACxD5BAALIAAgATYCKAshAAJAIAAEQCAAKAIARQ0BEPsEAAsQ+QQACyAAIAE2AiwLIQACQCAABEAgACgCAEUNARD7BAALEPkEAAsgACABNwMICyEAAkAgAARAIAAoAgBFDQEQ+wQACxD5BAALIAAgATYCIAshAAJAIAAEQCAAKAIARQ0BEPsEAAsQ+QQACyAAIAE2AhwLIQACQCAABEAgACgCAEUNARD7BAALEPkEAAsgACABOgAUCyEAAkAgAARAIAAoAgBFDQEQ+wQACxD5BAALIAAgATcDEAuSBwINfwF+IwBBEGsiCiQAIwBBIGsiAyQAAkACQAJAAkAgAARAIABBCGsiCyALKAIAQQFqIgE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgAyALNgIQIAMgADYCDCADIABBCGo2AgggA0EUaiEMIAAoAowBIgJBEE0EfyAAQQxqBSAAKAIMIQIgACgCEAsiBiEEIwBBMGsiASQAAkACQAJAAkACQCAEIAYgAkEDdGoiDUYNACABQQA2AhggAUKAgICAEDcCECABQfivwAA2AiAgAUKggICABjcCJCAEKAIAIAEgAUEQajYCHEEIaiAEKAIEIAFBHGoQgQUNAyABKAIQIghBgICAgHhGDQAgDSAEQQhqIglrIgJByKrVqgVLDQIgASkCFCEOAkBBAyACQQN2IgIgAkEDTRtBAWoiB0EMbCICRQRAQQQhBkEAIQcMAQtBBCEFIAJBBBD3BCIGRQ0DCyAGIA43AgQgBiAINgIAIAFBATYCDCABIAY2AgggASAHNgIEAkAgCSANRg0AIA0gBGtBEGshAkEQIQVBASEEA0AgAUEANgIYIAFCgICAgBA3AhAgAUH4r8AANgIgIAFCoICAgAY3AiQgCSgCACAJQQRqKAIAIQggASABQRBqNgIcQQhqIAggAUEcahCBBQ0FIAEoAhAiB0GAgICAeEYNASABKQIUIQ4gASgCBCAERgRAIAFBBGogBCACQQN2QQFqQQRBDBCIAiABKAIIIQYLIAUgBmoiCCAONwIAIAhBBGsgBzYCACABIARBAWoiBDYCDCACQQhrIQIgBUEMaiEFIAlBCGoiCSANRw0ACwsgDCABKQIENwIAIAxBCGogAUEMaigCADYCAAwBCyAMQQA2AgggDEKAgICAwAA3AgALIAFBMGokAAwCCyAFIAIQxwQAC0GgsMAAQTcgAUEvakGQsMAAQdiwwAAQ6wIACyAAIAAoAgBBAWs2AgAgCyALKAIAQQFrIgA2AgAgAEUEQCADQRBqEFELAkAgAygCFCIBIAMoAhwiAE0EQCADKAIYIQEMAQsgAUEMbCECIAMoAhghBSAARQRAQQQhASAFIAJBBBDlBAwBCyAFIAJBBCAAQQxsIgIQ3gQiAUUNBAsgAyABIAAQ8AEgCiADKQMANwIAIANBIGokAAwECxD5BAsACxD7BAALQQQgAhDHBAALIAooAgAgCigCBCAKQRBqJAALyAIBBX8jAEEQayIEJAAjAEEwayIBJAACQAJAAkACQCAABEAgAEEIayICIAIoAgBBAWoiAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACABIAI2AhQgASAANgIQIAEgAEEEaiIDNgIMIAEgAzYCJCABIAFBJGqtQoCAgICQAoQ3AyggAUEYakHUscAAIAFBKGoQhgEgACAAKAIAQQFrNgIAIAIgAigCAEEBayIANgIAIABFBEAgAUEUahCwAgsCQCABKAIYIgMgASgCICIATQRAIAEoAhwhAgwBCyABKAIcIQUgAEUEQEEBIQIgBSADQQEQ5QQMAQsgBSADQQEgABDeBCICRQ0ECyAEIAA2AgQgBCACNgIAIAFBMGokAAwECxD5BAsACxD7BAALQQEgABDHBAALIAQoAgAgBCgCBCAEQRBqJAALyAIBBX8jAEEQayIEJAAjAEEwayIBJAACQAJAAkACQCAABEAgAEEIayICIAIoAgBBAWoiAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACABIAI2AhQgASAANgIQIAEgAEEEaiIDNgIMIAEgAzYCJCABIAFBJGqtQoCAgICgAoQ3AyggAUEYakHUscAAIAFBKGoQhgEgACAAKAIAQQFrNgIAIAIgAigCAEEBayIANgIAIABFBEAgAUEUahCVAgsCQCABKAIYIgMgASgCICIATQRAIAEoAhwhAgwBCyABKAIcIQUgAEUEQEEBIQIgBSADQQEQ5QQMAQsgBSADQQEgABDeBCICRQ0ECyAEIAA2AgQgBCACNgIAIAFBMGokAAwECxD5BAsACxD7BAALQQEgABDHBAALIAQoAgAgBCgCBCAEQRBqJAALyAIBBX8jAEEQayIEJAAjAEEwayIBJAACQAJAAkACQCAABEAgAEEIayICIAIoAgBBAWoiAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACABIAI2AhQgASAANgIQIAEgAEEEaiIDNgIMIAEgAzYCJCABIAFBJGqtQoCAgIDQA4Q3AyggAUEYakHLtMAAIAFBKGoQhgEgACAAKAIAQQFrNgIAIAIgAigCAEEBayIANgIAIABFBEAgAUEUahDJAgsCQCABKAIYIgMgASgCICIATQRAIAEoAhwhAgwBCyABKAIcIQUgAEUEQEEBIQIgBSADQQEQ5QQMAQsgBSADQQEgABDeBCICRQ0ECyAEIAA2AgQgBCACNgIAIAFBMGokAAwECxD5BAsACxD7BAALQQEgABDHBAALIAQoAgAgBCgCBCAEQRBqJAALyAIBBX8jAEEQayIEJAAjAEEwayIBJAACQAJAAkACQCAABEAgAEEIayICIAIoAgBBAWoiAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACABIAI2AhQgASAANgIQIAEgAEEIaiIDNgIMIAEgAzYCJCABIAFBJGqtQoCAgIDgA4Q3AyggAUEYakHLtMAAIAFBKGoQhgEgACAAKAIAQQFrNgIAIAIgAigCAEEBayIANgIAIABFBEAgAUEUahD4AgsCQCABKAIYIgMgASgCICIATQRAIAEoAhwhAgwBCyABKAIcIQUgAEUEQEEBIQIgBSADQQEQ5QQMAQsgBSADQQEgABDeBCICRQ0ECyAEIAA2AgQgBCACNgIAIAFBMGokAAwECxD5BAsACxD7BAALQQEgABDHBAALIAQoAgAgBCgCBCAEQRBqJAALyAIBBX8jAEEQayIEJAAjAEEwayIBJAACQAJAAkACQCAABEAgAEEIayICIAIoAgBBAWoiAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACABIAI2AhQgASAANgIQIAEgAEEIaiIDNgIMIAEgAzYCJCABIAFBJGqtQoCAgIDAA4Q3AyggAUEYakHLtMAAIAFBKGoQhgEgACAAKAIAQQFrNgIAIAIgAigCAEEBayIANgIAIABFBEAgAUEUahDzAQsCQCABKAIYIgMgASgCICIATQRAIAEoAhwhAgwBCyABKAIcIQUgAEUEQEEBIQIgBSADQQEQ5QQMAQsgBSADQQEgABDeBCICRQ0ECyAEIAA2AgQgBCACNgIAIAFBMGokAAwECxD5BAsACxD7BAALQQEgABDHBAALIAQoAgAgBCgCBCAEQRBqJAALxQEBBn8jAEEQayICJAACQAJAAkAgAARAIAAoAgAiAUF/Rg0BIAAgAUEBajYCACAAKAIMIgVBAnQhASAFQf////8DSyABQfz///8HS3INAiAAKAIIIQYCQCABRQRAQQQhAwwBC0EEIQQgAUEEEPcEIgNFDQMLIAEEQCADIAYgAfwKAAALIAIgBTYCBCACIAM2AgAgACAAKAIAQQFrNgIADAMLEPkEAAsQ+wQACyAEIAEQxwQACyACKAIAIAIoAgQgAkEQaiQAC40CAQV/IwBBEGsiAyQAIwBBMGsiASQAAkACQAJAIAAEQCAAKAIAIgJBf0YNASAAIAJBAWo2AgAgAUEUaiAAQQRqEJcBIAAgACgCAEEBazYCAAJAIAEoAhQiACABKAIcIgJNBEAgASgCGCEADAELIABBMGwhBCABKAIYIQUgAkUEQEEEIQAgBSAEQQQQ5QQMAQsgBSAEQQQgAkEwbCIEEN4EIgBFDQMLIAEgADYCJCABIAA2AiAgASACNgIoIAEgACACQTBsajYCLCABQQhqIAFBIGoQjwIgAyABKQMINwIAIAFBMGokAAwDCxD5BAALEPsEAAtBBCAEEMcEAAsgAygCACADKAIEIANBEGokAAuLCgIWfwFvIwBBEGsiCSQAIwBBMGsiBSQAAkACQAJAAkAgAARAIAAoAgAiA0F/Rg0BIAAgA0EBajYCACAFQQhqIQpBACEDIABBEGoiASgCCCICQTBsIQYCQAJAAkAgAkGq1aoVSw0AAkAgBkUEQEEEIQsMAQsgASgCBCEEQQQhCCAGQQQQ9wQiC0UNASACRQ0AIAIhBwNAIAYgDEYNASAEKAIMIg4gDigCAEEBaiIBNgIAIAFFDQNBACEIAn8CQAJAIAQoAggiDUH/////A0sNACANQQJ0IgFB/P///wdLDQAgBCgCHCEPIAQoAhghECAEKAIUIREgBCgCBCESIAQoAighEyAEKAIkIRQgBCgCICEVIAQoAhAhFiABRQRAQQQhA0EADAMLQQQhCCABQQQQ9wQiAw0BIAEhAwsgCCADEMcEAAsgDQshCCABBEAgAyASIAH8CgAACyALIAxqIgEgCDYCACABQSxqIAQtACw6AAAgAUEoaiATNgIAIAFBJGogFDYCACABQSBqIBU2AgAgAUEcaiAPNgIAIAFBGGogEDYCACABQRRqIBE2AgAgAUEQaiAWNgIAIAFBDGogDjYCACABQQhqIA02AgAgAUEEaiADNgIAIAxBMGohDCAEQTBqIQQgB0EBayIHDQALCyAKIAI2AgggCiALNgIEIAogAjYCAAwCCyAIIAYQxwQLAAsgACAAKAIAQQFrNgIAAkAgBSgCCCIAIAUoAhAiA00EQCAFKAIMIQAMAQsgAEEwbCECIAUoAgwhASADRQRAQQQhACABIAJBBBDlBAwBCyABIAJBBCADQTBsIgIQ3gQiAEUNAwsgBSAANgIkIAUgADYCICAFIAM2AiggBSAAIANBMGxqNgIsIAVBFGohBCMAQTBrIgckACAFQSBqIgAoAgAhAyAAKAIIIQgCQAJAAkAgACgCBCICIAAoAgwiBkYEQCADIQAMAQsgAyEAA0AgB0EoaiIKIAJBKGopAgA3AwAgB0EgaiILIAJBIGopAgA3AwAgB0EYaiIMIAJBGGopAgA3AwAgB0EQaiINIAJBEGopAgA3AwAgB0EIaiIOIAJBCGopAgA3AwAgByACKQIANwMAQTxBBBD3BCIBRQ0CIAFBADYCCCABQoGAgIAQNwIAIAEgBykDADcCDCABQRRqIA4pAwA3AgAgAUEcaiANKQMANwIAIAFBJGogDCkDADcCACABQSxqIAspAwA3AgAgAUE0aiAKKQMANwIAIAFBCGoQByEXEGMiASAXJgEgACABNgIAIABBBGohACACQTBqIgIgBkcNAAsLIAYgAmtBMG4hASACIAZHBEAgAkEMaiECA0AgAigCACIGIAYoAgBBAWsiBjYCACAGRQRAIAIQkAMLIAJBDGsoAgAiBgRAIAJBCGsoAgAgBkECdEEEEOUECyACQTBqIQIgAUEBayIBDQALCyAEIAM2AgQgBCAIQQxsNgIAIAQgACADa0ECdjYCCCAHQTBqJAAMAQtBBEE8EP0EAAsCQCAFKAIUIgMgBSgCHCIATQRAIAUoAhghAwwBCyADQQJ0IQIgBSgCGCEBIABFBEBBBCEDIAEgAkEEEOUEDAELIAEgAkEEIABBAnQiAhDeBCIDRQ0ECyAJIAA2AgQgCSADNgIAIAVBMGokAAwECxD5BAALEPsEAAtBBCACEMcEAAtBBCACEMcEAAsgCSgCACAJKAIEIAlBEGokAAvFAQEGfyMAQRBrIgIkAAJAAkACQCAABEAgACgCACIBQX9GDQEgACABQQFqNgIAIAAoAiQiBUECdCEBIAVB/////wNLIAFB/P///wdLcg0CIAAoAiAhBgJAIAFFBEBBBCEDDAELQQQhBCABQQQQ9wQiA0UNAwsgAQRAIAMgBiAB/AoAAAsgAiAFNgIEIAIgAzYCACAAIAAoAgBBAWs2AgAMAwsQ+QQACxD7BAALIAQgARDHBAALIAIoAgAgAigCBCACQRBqJAALjQIBBX8jAEEQayIDJAAjAEEwayIBJAACQAJAAkAgAARAIAAoAgAiAkF/Rg0BIAAgAkEBajYCACABQRRqIABBEGoQlwEgACAAKAIAQQFrNgIAAkAgASgCFCIAIAEoAhwiAk0EQCABKAIYIQAMAQsgAEEwbCEEIAEoAhghBSACRQRAQQQhACAFIARBBBDlBAwBCyAFIARBBCACQTBsIgQQ3gQiAEUNAwsgASAANgIkIAEgADYCICABIAI2AiggASAAIAJBMGxqNgIsIAFBCGogAUEgahCPAiADIAEpAwg3AgAgAUEwaiQADAMLEPkEAAsQ+wQAC0EEIAQQxwQACyADKAIAIAMoAgQgA0EQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICA0AaENwMoIAFBGGpB873AACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQ/QILAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC4ADAQZ/IwBBEGsiAyQAIwBBMGsiASQAAkACQAJAAkACQCAABEAgAEEIayIFIAUoAgBBAWoiAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACABIAU2AgwgASAANgIIIAEgAEEEajYCBCABQQA2AhggAUKAgICAEDcCECABQbi/wAA2AiAgAUKggICABjcCJCAAKAIEIAEgAUEQajYCHEEIaiAAKAIIIAFBHGoQgQUNAyABKAIYIQQgASgCFCECIAEoAhAhBiAAIAAoAgBBAWs2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCABQQxqEP0CCwJAIAQgBk8EQCACIQAMAQsgBEUEQEEBIQAgAiAGQQEQ5QQMAQsgAiAGQQEgBBDeBCIARQ0FCyADIAQ2AgQgAyAANgIAIAFBMGokAAwFCxD5BAsACxD7BAALQeC/wABBNyABQS9qQdC/wABBmMDAABDrAgALQQEgBBDHBAALIAMoAgAgAygCBCADQRBqJAALgAMBBn8jAEEQayIDJAAjAEEwayIBJAACQAJAAkACQAJAIAAEQCAAQQhrIgUgBSgCAEEBaiICNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAEgBTYCDCABIAA2AgggASAAQQRqNgIEIAFBADYCGCABQoCAgIAQNwIQIAFBuL/AADYCICABQqCAgIAGNwIkIAAoAgQgASABQRBqNgIcQQhqIAAoAgggAUEcahCBBQ0DIAEoAhghBCABKAIUIQIgASgCECEGIAAgACgCAEEBazYCACAFIAUoAgBBAWsiADYCACAARQRAIAFBDGoQywILAkAgBCAGTwRAIAIhAAwBCyAERQRAQQEhACACIAZBARDlBAwBCyACIAZBASAEEN4EIgBFDQULIAMgBDYCBCADIAA2AgAgAUEwaiQADAULEPkECwALEPsEAAtB4L/AAEE3IAFBL2pB0L/AAEGYwMAAEOsCAAtBASAEEMcEAAsgAygCACADKAIEIANBEGokAAuAAwEGfyMAQRBrIgMkACMAQTBrIgEkAAJAAkACQAJAAkAgAARAIABBCGsiBSAFKAIAQQFqIgI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgASAFNgIMIAEgADYCCCABIABBBGo2AgQgAUEANgIYIAFCgICAgBA3AhAgAUKggICABjcCJCABQbi/wAA2AiAgACgCDCABIAFBEGo2AhxBCGogACgCECABQRxqEIEFDQMgASgCGCEEIAEoAhQhAiABKAIQIQYgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgAUEMahDLAgsCQCAEIAZPBEAgAiEADAELIARFBEBBASEAIAIgBkEBEOUEDAELIAIgBkEBIAQQ3gQiAEUNBQsgAyAENgIEIAMgADYCACABQTBqJAAMBQsQ+QQLAAsQ+wQAC0Hgv8AAQTcgAUEvakHQv8AAQZjAwAAQ6wIAC0EBIAQQxwQACyADKAIAIAMoAgQgA0EQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICAwAaENwMoIAFBGGpB873AACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQywILAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICA4AaENwMoIAFBGGpB873AACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQ9AELAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBCGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICAkAmENwMoIAFBGGpBmMTAACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQkQMLAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICAoAmENwMoIAFBGGpBmMTAACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQuwELAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC9YBAQV/IwBBEGsiAiQAIwBBEGsiASQAAkACQAJAIAAEQCAAKAIAIgNBf0YNASAAIANBAWo2AgAgAUEEaiAAQRhqEO4CIAAgACgCAEEBazYCAAJAIAEoAgQiBCABKAIMIgBNBEAgASgCCCEDDAELIAEoAgghBSAARQRAQQEhAyAFIARBARDlBAwBCyAFIARBASAAEN4EIgNFDQMLIAIgADYCBCACIAM2AgAgAUEQaiQADAMLEPkEAAsQ+wQAC0EBIAAQxwQACyACKAIAIAIoAgQgAkEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICAgAyENwMoIAFBGGpBnsrAACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQkgMLAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC6YCAQV/IwBBEGsiBCQAIwBBIGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIQIAEgADYCDCABIABBBGoiAzYCCCABQRRqIAMQ7gIgACAAKAIAQQFrNgIAIAIgAigCAEEBayIANgIAIABFBEAgAUEQahCSAwsCQCABKAIUIgMgASgCHCIATQRAIAEoAhghAgwBCyABKAIYIQUgAEUEQEEBIQIgBSADQQEQ5QQMAQsgBSADQQEgABDeBCICRQ0ECyAEIAA2AgQgBCACNgIAIAFBIGokAAwECxD5BAsACxD7BAALQQEgABDHBAALIAQoAgAgBCgCBCAEQRBqJAALjQIBBX8jAEEQayIDJAAjAEEwayIBJAACQAJAAkAgAARAIAAoAgAiAkF/Rg0BIAAgAkEBajYCACABQRRqIABBBGoQ0AEgACAAKAIAQQFrNgIAAkAgASgCFCIAIAEoAhwiAk0EQCABKAIYIQAMAQsgAEEYbCEEIAEoAhghBSACRQRAQQQhACAFIARBBBDlBAwBCyAFIARBBCACQRhsIgQQ3gQiAEUNAwsgASAANgIkIAEgADYCICABIAI2AiggASAAIAJBGGxqNgIsIAFBCGogAUEgahCuAiADIAEpAwg3AgAgAUEwaiQADAMLEPkEAAsQ+wQAC0EEIAQQxwQACyADKAIAIAMoAgQgA0EQaiQAC5YFAQx/IwBBEGsiBiQAIwBBMGsiAiQAAkACQAJAAkACQCAABEAgAEEIayIFIAUoAgBBAWoiATYCACABRQ0BIAAoAgAiAUF/Rg0CIAAgAUEBajYCACACIAU2AhAgAiAANgIMQQQhASACIABBBGo2AgggACgCDCIEQRhsIQMgACgCCCEJIAQEQCADQQQQ9wQiAUUNBAsgAkEANgIcIAIgATYCGCACIAQ2AhQgAiABNgIoIAJBADYCJCACIAJBHGo2AiAgAkEgaiEEAkACQAJAIAMgCWoiASAJRgRAIAQoAgQhBwwBCyABQRhrIQEgBCgCCCAEKAIEIgdBGGxqIQMDQCABKAIAIgggCCgCAEEBaiIKNgIAIApFDQIgAUEQaigCACEKIAFBDGooAgAhCyABQQhqKAIAIQwgAyAINgIAIANBEGogCjYCACADQQxqIAs2AgAgA0EIaiAMNgIAIANBFGogAUEUaigCADYCACADQQRqIAFBBGooAgA2AgAgA0EYaiEDIAdBAWohByABIAlHIAFBGGshAQ0ACwsgBCgCACAHNgIADAELAAsgAigCFCEEIAIoAhghASACKAIcIQMgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgAkEQahCqAgsCQCADIARPBEAgASEADAELIARBGGwhBSADRQRAQQQhACABIAVBBBDlBAwBCyABIAVBBCADQRhsIgEQ3gQiAEUNBQsgAiAANgIkIAIgADYCICACIAM2AiggAiAAIANBGGxqNgIsIAIgAkEgahCuAiAGIAIpAwA3AgAgAkEwaiQADAULEPkECwALEPsEAAtBBCADEMcEAAtBBCABEMcEAAsgBigCACAGKAIEIAZBEGokAAvIAgEFfyMAQRBrIgQkACMAQTBrIgEkAAJAAkACQAJAIAAEQCAAQQhrIgIgAigCAEEBaiIDNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAEgAjYCFCABIAA2AhAgASAAQQRqIgM2AgwgASADNgIkIAEgAUEkaq1CgICAgMAMhDcDKCABQRhqQZzQwAAgAUEoahCGASAAIAAoAgBBAWs2AgAgAiACKAIAQQFrIgA2AgAgAEUEQCABQRRqEKoCCwJAIAEoAhgiAyABKAIgIgBNBEAgASgCHCECDAELIAEoAhwhBSAARQRAQQEhAiAFIANBARDlBAwBCyAFIANBASAAEN4EIgJFDQQLIAQgADYCBCAEIAI2AgAgAUEwaiQADAQLEPkECwALEPsEAAtBASAAEMcEAAsgBCgCACAEKAIEIARBEGokAAvIAgEFfyMAQRBrIgQkACMAQTBrIgEkAAJAAkACQAJAIAAEQCAAQQhrIgIgAigCAEEBaiIDNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAEgAjYCFCABIAA2AhAgASAAQQRqIgM2AgwgASADNgIkIAEgAUEkaq1CgICAgNAMhDcDKCABQRhqQZzQwAAgAUEoahCGASAAIAAoAgBBAWs2AgAgAiACKAIAQQFrIgA2AgAgAEUEQCABQRRqEO0BCwJAIAEoAhgiAyABKAIgIgBNBEAgASgCHCECDAELIAEoAhwhBSAARQRAQQEhAiAFIANBARDlBAwBCyAFIANBASAAEN4EIgJFDQQLIAQgADYCBCAEIAI2AgAgAUEwaiQADAQLEPkECwALEPsEAAtBASAAEMcEAAsgBCgCACAEKAIEIARBEGokAAvcAgEFfyMAQRBrIgQkACMAQTBrIgEkAAJAAkACQAJAIAAEQCAAQQhrIgMgAygCAEEBaiICNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAEgAzYCKCABIAA2AiQgASAAQQRqIgI2AiAgAUEUaiACEH0gACAAKAIAQQFrNgIAIAMgAygCAEEBayIANgIAIABFBEAgAUEoahDtAQsCQCABKAIUIgAgASgCHCIDTQRAIAEoAhghAAwBCyAAQQxsIQIgASgCGCEFIANFBEBBBCEAIAUgAkEEEOUEDAELIAUgAkEEIANBDGwiAhDeBCIARQ0ECyABIAA2AiQgASAANgIgIAEgAzYCKCABIAAgA0EMbGo2AiwgAUEIaiABQSBqEI4CIAQgASkDCDcCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EEIAIQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICA4AyENwMoIAFBGGpBnNDAACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQnwELAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC5cCAQl/IwBBEGsiBCQAIwBBIGsiAiQAAkACQAJAIAAEQCAAKAIAIgNBf0YNASAAIANBAWo2AgAgACgCDCIDQQxsIQUgA0Gq1arVAEsNAgJAIAVFBEBBBCEGDAELIAAoAgghCEEEIQEgBUEEEPcEIgZFDQMgA0UNAEEAIQEgAyEHA0AgASAFRg0BIAJBFGogASAIahDuAiABIAZqIglBCGogAkEcaigCADYCACAJIAIpAhQ3AgAgAUEMaiEBIAdBAWsiBw0ACwsgACAAKAIAQQFrNgIAIAJBCGogBiADEPABIAQgAikDCDcCACACQSBqJAAMAwsQ+QQACxD7BAALIAEgBRDHBAALIAQoAgAgBCgCBCAEQRBqJAALxgIBCX8jAEEQayIEJAAjAEEgayICJAACQAJAAkAgAARAIAAoAgAiA0F/Rg0BIAAgA0EBajYCAAJ/IAAoAhBBgICAgHhHBEAgACgCGCIDQQxsIQUgA0Gq1arVAEsNBAJAIAVFBEBBBCEGDAELIAAoAhQhCEEEIQEgBUEEEPcEIgZFDQUgA0UNAEEAIQEgAyEHA0AgASAFRg0BIAJBFGogASAIahDuAiABIAZqIglBCGogAkEcaigCADYCACAJIAIpAhQ3AgAgAUEMaiEBIAdBAWsiBw0ACwsgACAAKAIAQQFrNgIAIAJBCGogBiADEPABIAIoAgwhASACKAIIDAELIAAgAzYCAEEACyEAIAQgATYCBCAEIAA2AgAgAkEgaiQADAMLEPkEAAsQ+wQACyABIAUQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8YCAQl/IwBBEGsiBCQAIwBBIGsiAiQAAkACQAJAIAAEQCAAKAIAIgNBf0YNASAAIANBAWo2AgACfyAAKAIcQYCAgIB4RwRAIAAoAiQiA0EMbCEFIANBqtWq1QBLDQQCQCAFRQRAQQQhBgwBCyAAKAIgIQhBBCEBIAVBBBD3BCIGRQ0FIANFDQBBACEBIAMhBwNAIAEgBUYNASACQRRqIAEgCGoQ7gIgASAGaiIJQQhqIAJBHGooAgA2AgAgCSACKQIUNwIAIAFBDGohASAHQQFrIgcNAAsLIAAgACgCAEEBazYCACACQQhqIAYgAxDwASACKAIMIQEgAigCCAwBCyAAIAM2AgBBAAshACAEIAE2AgQgBCAANgIAIAJBIGokAAwDCxD5BAALEPsEAAsgASAFEMcEAAsgBCgCACAEKAIEIARBEGokAAvIAgEFfyMAQRBrIgQkACMAQTBrIgEkAAJAAkACQAJAIAAEQCAAQQhrIgIgAigCAEEBaiIDNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAEgAjYCFCABIAA2AhAgASAAQQRqIgM2AgwgASADNgIkIAEgAUEkaq1CgICAgPAMhDcDKCABQRhqQZzQwAAgAUEoahCGASAAIAAoAgBBAWs2AgAgAiACKAIAQQFrIgA2AgAgAEUEQCABQRRqEIEDCwJAIAEoAhgiAyABKAIgIgBNBEAgASgCHCECDAELIAEoAhwhBSAARQRAQQEhAiAFIANBARDlBAwBCyAFIANBASAAEN4EIgJFDQQLIAQgADYCBCAEIAI2AgAgAUEwaiQADAQLEPkECwALEPsEAAtBASAAEMcEAAsgBCgCACAEKAIEIARBEGokAAvWAQEFfyMAQRBrIgIkACMAQRBrIgEkAAJAAkACQCAABEAgACgCACIDQX9GDQEgACADQQFqNgIAIAFBBGogAEEEahDuAiAAIAAoAgBBAWs2AgACQCABKAIEIgQgASgCDCIATQRAIAEoAgghAwwBCyABKAIIIQUgAEUEQEEBIQMgBSAEQQEQ5QQMAQsgBSAEQQEgABDeBCIDRQ0DCyACIAA2AgQgAiADNgIAIAFBEGokAAwDCxD5BAALEPsEAAtBASAAEMcEAAsgAigCACACKAIEIAJBEGokAAuXAgEJfyMAQRBrIgQkACMAQSBrIgIkAAJAAkACQCAABEAgACgCACIDQX9GDQEgACADQQFqNgIAIAAoAhgiA0EMbCEFIANBqtWq1QBLDQICQCAFRQRAQQQhBgwBCyAAKAIUIQhBBCEBIAVBBBD3BCIGRQ0DIANFDQBBACEBIAMhBwNAIAEgBUYNASACQRRqIAEgCGoQ7gIgASAGaiIJQQhqIAJBHGooAgA2AgAgCSACKQIUNwIAIAFBDGohASAHQQFrIgcNAAsLIAAgACgCAEEBazYCACACQQhqIAYgAxDwASAEIAIpAwg3AgAgAkEgaiQADAMLEPkEAAsQ+wQACyABIAUQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICAgA+ENwMoIAFBGGpBsNbAACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQlQILAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBCGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICA8A+ENwMoIAFBGGpBoNrAACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQrwMLAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC8gCAQV/IwBBEGsiBCQAIwBBMGsiASQAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIUIAEgADYCECABIABBBGoiAzYCDCABIAM2AiQgASABQSRqrUKAgICA4A+ENwMoIAFBGGpBoNrAACABQShqEIYBIAAgACgCAEEBazYCACACIAIoAgBBAWsiADYCACAARQRAIAFBFGoQqgILAkAgASgCGCIDIAEoAiAiAE0EQCABKAIcIQIMAQsgASgCHCEFIABFBEBBASECIAUgA0EBEOUEDAELIAUgA0EBIAAQ3gQiAkUNBAsgBCAANgIEIAQgAjYCACABQTBqJAAMBAsQ+QQLAAsQ+wQAC0EBIAAQxwQACyAEKAIAIAQoAgQgBEEQaiQAC4sDAQZ/IwBBEGsiBSQAIwBBIGsiASQAAkACQAJAAkAgAARAIABBCGsiBCgCAEEBRw0BIAAoAgwhAyAAKAIIIQIgACgCBCEGIARBADYCAAJAIARBf0YNACAAQQRrIgAgACgCAEEBayIANgIAIAANACAEQRhBBBDlBAsCQCADIAZPBEAgAiEADAELIAZBGGwhBCADRQRAQQQhACACIARBBBDlBAwBCyACIARBBCADQRhsIgIQ3gQiAEUNAwsgASAANgIUIAEgADYCECABIAM2AhggASAAIANBGGxqNgIcIAFBBGogAUEQahCtAQJAIAEoAgQiAiABKAIMIgBNBEAgASgCCCECDAELIAJBAnQhAyABKAIIIQQgAEUEQEEEIQIgBCADQQQQ5QQMAQsgBCADQQQgAEECdCIDEN4EIgJFDQQLIAUgADYCBCAFIAI2AgAgAUEgaiQADAQLEPkEAAtB0NnAAEE/EPoEAAtBBCACEMcEAAtBBCADEMcEAAsgBSgCACAFKAIEIAVBEGokAAvCAwEFfyMAQRBrIgQkACMAQTBrIgEkAAJAAkACQAJAAkAgAARAIABBCGsiAiACKAIAQQFqIgM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgASACNgIoIAEgADYCJCABIABBBGoiAzYCICABQQhqIAMQ0AEgACAAKAIAQQFrNgIAIAIgAigCAEEBayIANgIAIABFBEAgAUEoahCqAgsCQCABKAIIIgAgASgCECICTQRAIAEoAgwhAAwBCyAAQRhsIQMgASgCDCEFIAJFBEBBBCEAIAUgA0EEEOUEDAELIAUgA0EEIAJBGGwiAxDeBCIARQ0ECyABIAA2AiQgASAANgIgIAEgAjYCKCABIAAgAkEYbGo2AiwgAUEUaiABQSBqEK0BAkAgASgCFCICIAEoAhwiAE0EQCABKAIYIQIMAQsgAkECdCEDIAEoAhghBSAARQRAQQQhAiAFIANBBBDlBAwBCyAFIANBBCAAQQJ0IgMQ3gQiAkUNBQsgBCAANgIEIAQgAjYCACABQTBqJAAMBQsQ+QQLAAsQ+wQAC0EEIAMQxwQAC0EEIAMQxwQACyAEKAIAIAQoAgQgBEEQaiQACyIBAX8gABDIAiAAKAIAIgEEQCAAKAIEIAFBMGxBBBDlBAsLJgEBfyAAKAIAIgFBgICAgHhGIAFFckUEQCAAKAIEIAFBARDlBAsLJgEBfyAAKAIAIgFBhICAgHhMIAFFckUEQCAAKAIEIAFBARDlBAsLJgEBfyAAKAIAIgFBhICAgHhIIAFFckUEQCAAKAIEIAFBARDlBAsLJQAgAEUEQEGQ4cAAQTIQ+gQACyAAIAIgAyAEIAUgASgCEBEMAAsjAQF/IAAoAgAiASABKAIAQQFrIgE2AgAgAUUEQCAAEJADCwsjACAARQRAQZDhwABBMhD6BAALIAAgAiADIAQgASgCEBEVAAsjACAARQRAQZDhwABBMhD6BAALIAAgAiADIAQgASgCEBENAAsjACAARQRAQZDhwABBMhD6BAALIAAgAiADIAQgASgCEBFCAAsjACAARQRAQZDhwABBMhD6BAALIAAgAiADIAQgASgCEBFEAAsjACAARQRAQZDhwABBMhD6BAALIAAgAiADIAQgASgCEBFGAAsKAEEIIAAQ/QQACygBAX8gACgCACIBQYCAgIB4ckGAgICAeEcEQCAAKAIEIAFBARDlBAsLHAAgAEEKIAEgAhBmIgFrNgIEIAAgASACajYCAAsdAQF/IAAoAgAiAQRAIAAoAgQgAUECdEEEEOUECwsfAAJAIAAoAgBFDQAgACgCBCIAQYQBSQ0AIAAQqgMLCyEAIABFBEBBkOHAAEEyEPoEAAsgACACIAMgASgCEBEFAAsiACAALQAARQRAIAFB/PLAAEEFEFUPCyABQYHzwABBBBBVCx8AIABFBEBBkOHAAEEyEPoEAAsgACACIAEoAhARAAALEgBBwOPAAEE5QdzjwAAQnAMACxIAQZzowABBOUG46MAAEJwDAAsaAQF/IAAoAgAiAQRAIAAoAgQgAUEBEOUECwsYAEH4o8EALQAAQQFHBEAQtAILQeijwQALGgEBbyAAJQEgASUBEBwhAhBjIgAgAiYBIAALGAAgACgCACIAKAIAQQhqIAAoAgQgARBECxAAIABBgwFLBEAgABCqAwsLHwAgAEEIakH048AAKQIANwIAIABB7OPAACkCADcCAAsfACAAQQhqQYTkwAApAgA3AgAgAEH848AAKQIANwIACx8AIAAEQCAAIAEQ/QQAC0Gv6sAAQSNBwOrAABCcAwALFwEBfyAAEBsiATYCBCAAIAFBAEc2AgALFwEBfyAAEB0iATYCBCAAIAFBAEc2AgALFwEBfyAAEB4iATYCBCAAIAFBAEc2AgALFwEBfyAAEB8iATYCBCAAIAFBAEc2AgALHAAgAEEANgIQIABCADcCCCAAQoCAgIDAADcCAAsSACAAIAFBAXRBAXIgAhCcAwALGAAgASgCACABKAIEIAAoAgAgACgCBBBfCxYBAW8gACABEA0hAhBjIgAgAiYBIAALEwAgACgCAEEIaiAAKAIEIAEQRAsWACAAKAIAIgAoAgQgACgCCCABEIEFCxUAIAAoAgAiACgCBCAAKAIIIAEQRAsQACABBEAgACABIAIQ5QQLCxYAIAAoAgAgASACIAAoAgQoAgwRAQALFAEBbyAAEAIhARBjIgAgASYBIAALFAEBbyAAEAQhARBjIgAgASYBIAALzwYBA38jAEHQAGsiBSQAIAUgAzYCBCAFIAI2AgACfwJAAkAgAUGBAk8EQEH9ASEGA0ACQCAAIAZqIgdBA2osAABBv39MBEAgB0ECaiwAAEG/f0wNASAGQQJqIQYMBQsgBkEDaiEGDAQLIAdBAWosAABBv39KDQIgBywAAEG/f0oNAyAGQQRrIgZBfUcNAAtBACEGDAILIAUgATYCDCAFIAA2AghBAQwCCyAGQQFqIQYLIAUgADYCCCAFIAY2AgxBBUEAIAEgBksiBhshB0HIj8EAQQEgBhsLIQYgBSAHNgIUIAUgBjYCEAJAIAUgASACTwR/IAEgA08NASADBSACCzYCICAFIAVBEGqtQoCAgICAF4Q3AzggBSAFQQhqrUKAgICAgBeENwMwIAUgBUEgaq1CgICAgBCENwMoQZSBwAAgBUEoaiAEEJwDAAsCfwJAAkACQCACIANNBEAgAkUgASACTXJFBEAgBUEEaiAFIAAgAmosAABBv39KGygCACEDCyAFIAM2AhggASADTQ0CQQAhByADRQ0BA0AgACADaiwAAEG/f0oEQCADIQcMAwsgA0EBayIDDQALDAELIAUgBUEQaq1CgICAgIAXhDcDQCAFIAVBCGqtQoCAgICAF4Q3AzggBSAFQQRqrUKAgICAEIQ3AzAgBSAFrUKAgICAEIQ3AyhB6IDAACAFQShqIAQQnAMACyABIAdGDQAgBQJ/AkAgACAHaiICLAAAIgNBAEgEQCACLQABQT9xIQAgA0EfcSEBIANBX0sNASABQQZ0IAByDAILIAUgA0H/AXE2AhxBAQwECyACLQACQT9xIABBBnRyIgAgAUEMdHIgA0FwSQ0AGiABQRJ0QYCA8ABxIAItAANBP3EgAEEGdHJyCyIANgIcIABBgAFPDQFBAQwCCyAEEOwEAAtBAiAAQYAQSQ0AGkEDQQQgAEGAgARJGwshACAFIAc2AiAgBSAAIAdqNgIkIAUgBUEQaq1CgICAgIAXhDcDSCAFIAVBCGqtQoCAgICAF4Q3A0AgBSAFQSBqrUKAgICAkBeENwM4IAUgBUEcaq1CgICAgKAXhDcDMCAFIAVBGGqtQoCAgIAQhDcDKEG9gcAAIAVBKGogBBCcAwALFAAgACgCACABIAAoAgQoAgwRAAAL7AEBBX8QYyIGIAEmASMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDIAMoAgAiBEEBaiIFNgIAIAVFDQEgACgCAA0CIABBfzYCACACIAM2AgwgAiAANgIIIAIgAEEIajYCBAJAAkAgACgCkAEEQCAAKAKUASIFQYMBSw0BCyAAIAY2ApQBIABBATYCkAEgAEEANgIAIAMgBDYCAAwBCyAFEKoDIAMoAgAhBCAAIAY2ApQBIABBATYCkAEgAEEANgIAIAMgBEEBayIANgIAIAANACACQQxqEFELIAJBEGokAAwDCxD5BAsACxD7BAALCxEAIAAoAgQgACgCCCABEIEFCxAAIAAoAgQgACgCCCABEEQLEAAgACgCACAAKAIEIAEQRAsRACAAKAIAIAAoAgQgARCBBQvtBgEFfwJ/AkACQAJAAkACQAJAAkAgAEEEayIHKAIAIghBeHEiBEEEQQggCEEDcSIFGyABak8EQCAFQQAgAUEnaiIGIARJGw0BAkAgAkEJTwRAIAIgAxCKASICDQFBAAwKC0EAIQIgA0HM/3tLDQhBECADQQtqQXhxIANBC0kbIQEgAEEIayEGIAVFBEAgBkUgAUGAAklyIAQgAWtBgIAISyABIARPcnINByAADAoLIAQgBmohBQJAIAEgBEsEQCAFQcyjwQAoAgBGDQFByKPBACgCACAFRwRAIAUoAgQiCEECcQ0JIAhBeHEiCCAEaiIEIAFJDQkgBSAIEJEBIAQgAWsiBUEQTwRAIAcgASAHKAIAQQFxckECcjYCACABIAZqIgEgBUEDcjYCBCAEIAZqIgQgBCgCBEEBcjYCBCABIAUQcgwJCyAHIAQgBygCAEEBcXJBAnI2AgAgBCAGaiIBIAEoAgRBAXI2AgQMCAtBwKPBACgCACAEaiIEIAFJDQgCQCAEIAFrIgVBD00EQCAHIAhBAXEgBHJBAnI2AgAgBCAGaiIBIAEoAgRBAXI2AgRBACEFQQAhAQwBCyAHIAEgCEEBcXJBAnI2AgAgASAGaiIBIAVBAXI2AgQgBCAGaiIEIAU2AgAgBCAEKAIEQX5xNgIEC0HIo8EAIAE2AgBBwKPBACAFNgIADAcLIAQgAWsiBEEPTQ0GIAcgASAIQQFxckECcjYCACABIAZqIgEgBEEDcjYCBCAFIAUoAgRBAXI2AgQgASAEEHIMBgtBxKPBACgCACAEaiIEIAFLDQQMBgsgAyABIAEgA0sbIgMEQCACIAAgA/wKAAALIAcoAgAiA0F4cSIHIAFBBEEIIANBA3EiAxtqSQ0CIANFIAYgB09yDQZBjOfAAEEuQbznwAAQzQQAC0HM5sAAQS5B/ObAABDNBAALQYznwABBLkG858AAEM0EAAtBzObAAEEuQfzmwAAQzQQACyAHIAEgCEEBcXJBAnI2AgAgASAGaiIFIAQgAWsiAUEBcjYCBEHEo8EAIAE2AgBBzKPBACAFNgIACyAGRQ0AIAAMAwsgAxAmIgFFDQEgA0F8QXggBygCACICQQNxGyACQXhxaiICIAIgA0sbIgIEQCABIAAgAvwKAAALIAEhAgsgABBNCyACCwsWAEHwn8EAIAA2AgBB7J/BAEEBNgIACxEAIAEgACgCACAAKAIEENQECxMAIABBvObAADYCBCAAIAE2AgALEAAgASAAKAIAIAAoAgQQVQsQAQF/EGMiASAAJQEmASABCw8AIABB4LHAACABIAIQXwthAQF/AkACQCAAQQRrKAIAIgJBeHEiA0EEQQggAkEDcSICGyABak8EQCACQQAgAyABQSdqSxsNASAAEE0MAgtBzObAAEEuQfzmwAAQzQQAC0GM58AAQS5BvOfAABDNBAALCw8AIABBtN7AACABIAIQXwsPACAAQYTlwAAgASACEF8LDwAgAEGc6cAAIAEgAhBfC/YBAgF+An8gACgCACkDACECIwBBIGsiAyQAAn8CQCABKAIIIgBBgICAEHFFBEAgAEGAgIAgcQ0BIAFBAUEAIAIgA0EMaiIAEGUiASAAakEUIAFrEEsMAgtBACEAA0AgACADakEbaiACp0EPcS0A4vRAOgAAIABBAWshACACQg9WIAJCBIghAg0ACyABQfL0wABBAiAAIANqQRxqQQAgAGsQSwwBC0EAIQADQCAAIANqQRtqIAKnQQ9xLQD09EA6AAAgAEEBayEAIAJCD1YgAkIEiCECDQALIAFB8vTAAEECIAAgA2pBHGpBACAAaxBLCyADQSBqJAALDwAgAEGQ9cAAIAEgAhBfCw8AQdCdwQBBMyAAEJwDAAsPAEHMkMEAQSsgABDNBAALEwBBzY/BAEGZAUGckMEAEJwDAAsMACAAJQEgASACEAALDAAgACUBIAEgAhAQCwwAIAAlASABIAIQEQsOACABQeiwwABBBRDUBAsOACABQdqxwABBBRDUBAsOACABQajAwABBBRDUBAsMACAAKAIAIAEQvAQLDAAgACgCACABEK8CC2sBAX8gACgCACECIwBBIGsiACQAIAAgAigCACICNgIIIAAgAmg2AgwgACAAQQxqrUKAgICA8BeENwMYIAAgAEEIaq1CgICAgIAYhDcDECABKAIAIAEoAgRB6qfAACAAQRBqEF8gAEEgaiQACxoA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ZnQ6IMAJCiByaWdodDogwAAqZXh0ZW5zaW9uIGNhbm5vdCBjb250YWluIHBhdGggc2VwYXJhdG9yczogwABIY2Fubm90IGFjY2VzcyBhIFRocmVhZCBMb2NhbCBTdG9yYWdlIHZhbHVlIGR1cmluZyBvciBhZnRlciBkZXN0cnVjdGlvbjogwAAsRXJyb3IgY2FsbGluZyB1cGRhdGUgbm90aWZpY2F0aW9uIGZ1bmN0aW9uOiDAABhFcnJvciBjYWxsaW5nIGZ1bmN0aW9uOiDAACdFcnJvciBjYWxsaW5nIGVkZ2UgaXRlcmF0aW9uIGNhbGxiYWNrOiDAACdFcnJvciBjYWxsaW5nIG5vZGUgaXRlcmF0aW9uIGNhbGxiYWNrOiDAAMACOiDAAAFbwAJdIMABIMAAC2J5dGUgaW5kZXggwBkgaXMgbm90IGFuIE9zU3RyIGJvdW5kYXJ5AC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvc3RyL2xvc3N5LnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvbnVtL2ZsdDJkZWMvc3RyYXRlZ3kvZ3Jpc3UucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9jb3JlL3NyYy9zbGljZS9zb3J0L3NoYXJlZC9zbWFsbHNvcnQucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zdGFibGUvcXVpY2tzb3J0LnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi92ZWMtY29sbGVjdGlvbnMtMC40LjMvc3JjL3ZlY19zZXQucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9jb3JlL3NyYy9udW0vZGl5X2Zsb2F0LnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BldGdyYXBoLTAuOC4zL3NyYy9pdGVyX2Zvcm1hdC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9idWlsZGVycy5ycwBzcmMvdXRpbHMucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvd2ViLXRpbWUtMS4xLjAvc3JjL3RpbWUvanMucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvdGhyZWFkX2xvY2FsL25vX3RocmVhZHMucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9zdGQvc3JjL2ZmaS9vc19zdHIucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3N0ci5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21lbWNoci5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9pbmRleG1hcC0yLjEzLjAvc3JjL2lubmVyLnJzAC9ob21lL3J1bm5lci8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLXg4Nl82NC11bmtub3duLWxpbnV4LWdudS9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3N0ci9wYXR0ZXJuLnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvbnVtL2ZsdDJkZWMvc3RyYXRlZ3kvZHJhZ29uLnJzAC9ydXN0Yy9lNDA4OTQ3YmZkMjAwYWY0MmRiMzIyZGFmMGZhZGZlN2UyNmQzYmQxL2xpYnJhcnkvY29yZS9zcmMvbnVtL2JpZ251bS5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9udW0ucnMAc3JjL2RhdGEvdHJhdmVyc2FsLnJzAC9ob21lL3J1bm5lci8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLXg4Nl82NC11bmtub3duLWxpbnV4LWdudS9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvdGhyZWFkL2xvY2FsLnJzAHNyYy90cmF2ZXJzYWwvcGF0aC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L3N0ZC9zcmMvcGF0aC5ycwBzcmMvdXBkYXRlL2dyYXBoLnJzAHNyYy9ncmFwaC5ycwBzcmMvZWRnZV9zb3J0aW5nLnJzAC9ob21lL3J1bm5lci8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLXg4Nl82NC11bmtub3duLWxpbnV4LWdudS9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9zdHJpbmcucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL3VuaWNvZGUvcHJpbnRhYmxlLnJzAHNyYy9kYXRhL25vZGUucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL29uY2UucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvaGFzaGJyb3duLTAuMTUuNS9zcmMvcmF3L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE2LjEvc3JjL3Jhdy9tb2QucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvaGFzaGJyb3duLTAuMTYuMS9zcmMvcmF3L21vZC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9tb2QucnMAc3JjL3RyYXZlcnNhbC9tb2QucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGV0Z3JhcGgtMC44LjMvc3JjL2dyYXBoX2ltcGwvc3RhYmxlX2dyYXBoL21vZC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvZTQwODk0N2JmZDIwMGFmNDJkYjMyMmRhZjBmYWRmZTdlMjZkM2JkMS9saWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwBzcmMvZGF0YS9tb2QucnMAc3JjL21lcm1haWQucnMAL3J1c3RjL2U0MDg5NDdiZmQyMDBhZjQyZGIzMjJkYWYwZmFkZmU3ZTI2ZDNiZDEvbGlicmFyeS9hbGxvYy9zcmMvcmMucnMAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuMTEvc3JjL2RsbWFsbG9jLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2NvbnNvbGVfZXJyb3JfcGFuaWNfaG9vay0wLjEuNy9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2ZvbGRoYXNoLTAuMS41L3NyYy9saWIucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvb25jZV9jZWxsLTEuMjEuNC9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3NtYWxsdmVjLTEuMTUuMS9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2l0ZXJ0b29scy0wLjE0LjAvc3JjL2xpYi5ycwAHQWRkaW5nIMAGIEVkZ2VzAAhSZW1vdmVkIMAQIGltcGxpZWQgZWRnZXMsIMAWIGV4cGxpY2l0IGVkZ2VzIHJlbWFpbgAiU3RhYmxlR3JhcGg6OmFkZF9lZGdlOiBub2RlIGluZGV4IMAbIGlzIG5vdCBhIG5vZGUgaW4gdGhlIGdyYXBoACRBdHRlbXB0ZWQgdG8gcmVtb3ZlIHVucmVzb2x2ZWQgbm9kZSDADyBmcm9tIHRoZSBncmFwaAAGTm9kZSAiwAsiIG5vdCBmb3VuZAAGY2xhc3MgwA4gaXMtdW5yZXNvbHZlZAALUGVyZkxvZ2dlciDAEyBpcyBhbHJlYWR5IHN0b3BwZWQACkVkZ2VJbmRleCjAASkACk5vZGVJbmRleCjAASkACEpzVmFsdWUowAEpAMAHICgxIDw8IMABKQAGY2xhc3MgwA8gaW50ZXJuYWwtbGluawoABmNsYXNzIMAQIEJDLWFjdGl2ZS1ub2RlCgAEICAgIMACKCLAAyIpCgAEICAgIMABIMACfCLAAyJ8IMABCgAEICAgIMABIMABIMABCgAAAAALDBAAEwAAAG4AAAAUAAAACwwQABMAAAArAAAALQAAAFRoZXJlIGFscmVhZHkgZXhpc3RzIGEgcmVzb2x2ZWQgbm9kZSB3aXRoIHRoZSBzYW1lIG5hbWUuZmFpbGVkIHRvIGRlbGV0ZSBlZGdlLCBzb3VyY2Ugbm9kZSBub3QgZm91bmRmYWlsZWQgdG8gZGVsZXRlIGVkZ2UsIHRhcmdldCBub2RlIG5vdCBmb3VuZGZhaWxlZCB0byBkZWxldGUgZWRnZSwgZWRnZSBub3QgZm91bmRmYWlsZWQgdG8gcmVtb3ZlIG5vZGUsIG5vZGUgbm90IGZvdW5kZmFpbGVkIHRvIHJlbmFtZSBub2RlLCBvbGQgbm9kZSBub3QgZm91bmQACwwQABMAAABbAAAAMAAAAAAAAAD//////////5gVEABBsKvAAAvdBEFwcGx5aW5nIFVwZGF0ZVJlbW92aW5nIGltcGxpZWQgZWRnZXNBcHBseWluZyB1cGRhdGVzUmVidWlsZGluZyBlZGdlIHR5cGUgdHJhY2tlclVwZGF0ZSBub3RpZmljYXRpb24gY2FsbGJhY2tmYWlsZWQgdG8gZ2V0IG5vZGUgd2VpZ2h0LCBub2RlIG5vdCBmb3VuZEJ1aWxkaW5nIEltcGxpZWQgRWRnZXNBcHBseWluZyBSdWxlcwAAHwwQAAwAAACRAQAAHAAAAB8MEAAMAAAAxAEAADwAAAALDBAAEwAAAJAAAAAWAAAABwAAAAwAAAAEAAAACAAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUAUBAQAA4AAABRAQAAPwAAAFAQEAAOAAAAWQEAAEQAAABQEBAADgAAAGMBAAA7AAAALS0+LS4tPi0tLS0uLSwgIHwgLFRyYXZlcnNhbCBleGNlZWRlZCBsaW1pdCBvZiAxMCwwMDAgbm9kZXMuIFRyeSBkZWNyZWFzaW5nIHRoZSBtYXggZGVwdGguAAASDxAAFAAAAD4BAABQAAAAAAAAAAQAAAAEAAAACQAAAE5vdGVHcmFwaEVycm9ybWVzc2FnZQAAAAoAAAAMAAAABAAAAAsAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlACILEAAVAAAAnQAAAE0AAAAiCxAAFQAAAJ0AAAAnAAAACgAAAAwAAAAEAAAADAAAAA0AAAAOAEGYsMAAC5MOAQAAAA8AAABhIERpc3BsYXkgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3IgdW5leHBlY3RlZGx5AEAMEABwAAAAZgsAAA4AAABFcnJvcgAAAAAAAAAEAAAABAAAAAkAAABOb3RlR3JhcGhFcnJvcm1lc3NhZ2VhdHRlbXB0ZWQgdG8gdGFrZSBvd25lcnNoaXAgb2YgUnVzdCB2YWx1ZSB3aGlsZSBpdCB3YXMgYm9ycm93ZWTBIACAYABFcnJvcgATAAAADAAAAAQAAAAUAAAAFQAAAA4AAAATAAAADAAAAAQAAAAWAAAAAAAAAAQAAAAEAAAACQAAAEdDRWRnZURhdGFzb3VyY2V0YXJnZXRlZGdlX3R5cGVlZGdlX3NvdXJjZQAAFwAAAAwAAAAEAAAAGAAAAAAAAAABAAAAAQAAABkAAAAAAAAABAAAAAQAAAAaAAAAR0NOb2RlRGF0YXBhdGhhbGlhc2VzcmVzb2x2ZWRpZ25vcmVfaW5fZWRnZXNpZ25vcmVfb3V0X2VkZ2VzAAAAAAAAAAABAAAAGwAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUAVRIQAF0AAACCCQAANgAAAFUSEABdAAAAhQkAADQAAABhdHRlbXB0ZWQgdG8gdGFrZSBvd25lcnNoaXAgb2YgUnVzdCB2YWx1ZSB3aGlsZSBpdCB3YXMgYm9ycm93ZWTBIACAYABsaW5rX2Rpc3BsYXlsaW5rX3BhdGh0YXJnZXRfcmVzb2x2ZWRleHBsaWNpdGVkZ2Vfc291cmNlYXR0cmlidXRlX2xhYmVsaGFzX2N1dF9vZl9jaGlsZHJlbkNhcGFjaXR5T3ZlcmZsb3cAAAAAAAAEAAAABAAAAB8AAABBbGxvY0VycmxheW91dAAAAAAAAAgAAAAEAAAAIAAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUA+BEQAFwAAABWAQAALgAAAGNhcGFjaXR5IG92ZXJmbG93AAAA+BEQAFwAAABFAQAANgAAAPgR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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(` -`);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)._ + /* 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 Rm(t,e){ae(e,!0),Xo(t,BI);let r=e.all_paths.map(i=>i.reverse_edges),o=Cv(r,null,!0),a=Tv(o).map(i=>Ov(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=FI();Xe(s,21,()=>a,it,(i,l,u)=>{var f=X(),c=J(f);Xe(c,17,()=>A(l),it,(p,m)=>{let h=()=>A(m).first,y=()=>A(m).last,E=Ae(()=>o[h()][u]);var D=DI(),L=w(D);{var F=x=>{va(x,{get edge(){return A(E)},get plugin(){return e.plugin},cls:"p-1 grow flex justify-center items-center",get node_stringify_options(){return n}})};ie(L,x=>{A(E)&&x(F)})}b(D),oe(()=>Ui(D,` + grid-area: ${h()+1} / ${u+1} / ${y()+2} / ${u+2};`)),k(p,D)}),k(i,f)}),b(s),oe(i=>Ui(s,`grid-template-rows: min-content; +grid-template-columns: ${i??""};`),[()=>"1fr ".repeat(o.at(0)?.length??0)]),k(t,s),ne()}var SI=M(''),CI=M('
'),TI=M('
'),OI=M('
'),MI={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 Gm(t,e){ae(e,!0),Xo(t,MI);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=OI();Xe(a,21,()=>o,it,(n,s)=>{var i=TI();Xe(i,21,()=>A(s),it,(l,u,f)=>{var c=CI(),p=w(c);{var m=y=>{var E=SI();oe(D=>We(E,"aria-label",D),[()=>A(u).get_attribute_label(e.plugin.graph,["source","implied_kind","round"])]),k(y,E)};ie(p,y=>{f!==0&&y(m)})}var h=S(p,2);va(h,{get edge(){return A(u)},get plugin(){return e.plugin},get node_stringify_options(){return r}}),b(c),k(l,c)}),b(i),k(n,i)}),b(a),k(t,a),ne()}var NI=async(t,e)=>await e().saveSettings(),PI=M(""),qI=async(t,e)=>await e().saveSettings(),LI=M(""),RI=(t,e)=>Y(e,Math.max(1,A(e)-1),!0),GI=(t,e,r)=>Y(e,Math.min(A(r),A(e)+1),!0),HI=M('
',1),VI=M('

'),UI=M("
");function Hm(t,e){ae(e,!0);var r,o,a;let n=V(e,"plugin",15);H.debug("Rendering Trail page view for file:",e.file_path);let s=pt(structuredClone(pr(n().settings.views.page.trail))),i=!0;mt(()=>{if(i){i=!1;return}n(n().settings.views.page.trail=pr(s),!0),Ge(()=>void n().saveSettings())});let l=Ae(()=>{let h=Tr(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),E=n().graph.rec_traverse(y);return{selected_paths:E.to_paths().select(s.selection),hit_depth_limit:E.hit_depth_limit}}),u=Ae(()=>Math.max(0,(o=(r=A(l).selected_paths)===null||r===void 0?void 0:r.max_depth())!==null&&o!==void 0?o:0)),f=Le(0);mt(()=>{Y(f,Math.min(A(u),n().settings.views.page.trail.default_depth),!0)});let c=Ae(()=>(a=A(l).selected_paths)===null||a===void 0?void 0:a.process(n().graph,A(f)));var p=UI(),m=w(p);lo(m,()=>A(c),h=>{var y=X(),E=J(y);{var D=F=>{var x=HI(),$=J(x);let C;var v=w($);v.__change=[NI,n],Xe(v,20,()=>["grid","path"],it,(O,Z)=>{var me=PI(),Me=w(me,!0);b(me);var at={};oe(()=>{De(Me,Z),at!==(at=Z)&&(me.value=(me.__value=Z)??"")}),k(O,me)}),b(v);var B=S(v,2);B.__change=[qI,n],Xe(B,20,()=>["all","shortest","longest"],it,(O,Z)=>{var me=LI(),Me=w(me,!0);b(me);var at={};oe(()=>{De(Me,Z),at!==(at=Z)&&(me.value=(me.__value=Z)??"")}),k(O,me)}),b(B);var q=S(B,2);rf(q,{get merge_fields(){return s.merge_fields},set merge_fields(O){s.merge_fields=O}});var re=S(q,2),ge=w(re);ge.__click=[RI,f];var le=S(ge,2),Be=w(le);b(le);var R=S(le,2);R.__click=[GI,f,u],b(re),b($);var K=S($,2);{var Ee=O=>{Rm(O,{get plugin(){return n()},get all_paths(){return A(c)}})},T=O=>{var Z=X(),me=J(Z);{var Me=at=>{Gm(at,{get plugin(){return n()},get all_paths(){return A(c)}})};ie(me,at=>{s.format==="path"&&at(Me)},!0)}k(O,Z)};ie(K,O=>{s.format==="grid"?O(Ee):O(T,!1)})}oe(O=>{C=ut($,1,"mb-1 flex flex-wrap justify-between gap-3",null,C,O),ge.disabled=A(f)<=1,We(le,"aria-label",A(l).hit_depth_limit?"Some paths have been truncated":""),De(Be,`${A(f)??""}/${A(u)??""} + ${A(l).hit_depth_limit?" (truncated)":""}`),R.disabled=A(f)>=A(u)},[()=>({hidden:!n().settings.views.page.trail.show_controls})]),zd(v,()=>s.format,O=>s.format=O),zd(B,()=>s.selection,O=>s.selection=O),k(F,x)},L=F=>{var x=X(),$=J(x);{var C=v=>{var B=VI(),q=w(B,!0);b(B),oe(()=>De(q,n().settings.views.page.trail.no_path_message)),k(v,B)};ie($,v=>{n().settings.views.page.trail.no_path_message&&v(C)},!0)}k(F,x)};ie(E,F=>{A(c)&&A(c).length?F(D):F(L,!1)})}k(h,y)}),b(p),k(t,p),ne()}Ve(["change","click"]);var zI=M('
');function Vm(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=X(),n=J(a);{var s=i=>{var l=zI(),u=w(l);{var f=m=>{Hm(m,{get plugin(){return e.plugin},get file_path(){return e.file_path}})};ie(u,m=>{r&&m(f)})}var c=S(u,2);{var p=m=>{Lm(m,{get plugin(){return e.plugin},get file_path(){return e.file_path}})};ie(c,m=>{o&&m(p)})}b(l),k(i,l)};ie(n,i=>{(r||o)&&i(s)})}k(t,a),ne()}function of(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 D6.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)}Se(Vm,{target:n,props:{plugin:t,file_path:o.file?.path??""}})})}var F6=(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(),of(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(),of(t)}}})};var B6=require("obsidian");var S6=(t,e)=>{new B6.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()})}),Se(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()}}}),Se(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()}}}),Ur(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 C6=(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 T6=(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 O6=(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 M6=(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 N5=require("obsidian"),N6=(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()}}}),Se(Qa,{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()}}}),Se(en,{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()}}}),Se(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}}}),Ur(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 gA=class extends xA.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(Se(Bm,{props:{plugin:o},target:sr(r,{s:{text:"> Edge Fields"}}).children})),r.createEl("hr"),r.createEl("h3",{text:"Implied Relations"}),this.components.push(Se(Mm,{props:{plugin:o},target:sr(r,{s:{text:"> Transitive"}}).children})),r.createEl("hr"),r.createEl("h3",{text:"Edge Sources"}),O6(o,sr(r,{s:{text:"> Tag Notes"}}).children),$6(o,sr(r,{s:{text:"> List Notes"}}).children),d6(o,sr(r,{s:{text:"> Date Notes"}}).children),T6(o,sr(r,{s:{text:"> Regex Notes"}}).children),p6(o,sr(r,{s:{text:"> Dendron Notes"}}).children),v6(o,sr(r,{s:{text:"> Johnny.Decimal Notes"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Views"}),I6(o,sr(r,{s:{text:"> Matrix"}}).children);let a=sr(r,{s:{text:"> Page"}}).children;a.createEl("h5",{text:"General"}),F6(o,a),a.createEl("h5",{text:"Trail"}),x6(o,a),a.createEl("h5",{text:"Previous/Next"}),S6(o,a),N6(o,sr(r,{s:{text:"> Tree"}}).children),l6(o,sr(r,{s:{text:"> Codeblocks"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Commands"}),C6(o,sr(r,{s:{text:"> Rebuild Graph"}}).children),E6(o,sr(r,{s:{text:"> List Index"}}).children),g6(o,sr(r,{s:{text:"> Freeze Implied Edges"}}).children),M6(o,sr(r,{s:{text:"> Thread"}}).children),r.createEl("hr"),r.createEl("h3",{text:"Suggestors"}),m6(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 xA.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 Jo(r))}};var P6=require("obsidian");var WI=(t,e)=>e(!e()),KI=M("");function af(t,e){ae(e,!0);let r=V(e,"cls",3,""),o=V(e,"collapse",15);var a=KI();a.__click=[WI,o];var n=w(a);{var s=l=>{aA(l,{get size(){return 20}})},i=l=>{nA(l,{get size(){return 20}})};ie(n,l=>{o()?l(s):l(i,!1)})}b(a),oe(()=>{ut(a,1,mr(r())),We(a,"aria-label",o()?"Expand":"Collapse")}),k(t,a),ne()}Ve(["click"]);var ZI=(t,e)=>e(!e()),YI=M("");function nf(t,e){ae(e,!0);let r=V(e,"cls",3,""),o=V(e,"lock_view",15),a=V(e,"lock_path",15);mt(()=>{!o()&&e.active_path&&(a(e.active_path),H.debug("Setting lock_path to active_path:",a()))});var n=YI();n.__click=[ZI,o];var s=w(n);{var i=u=>{Uu(u,{get size(){return 20}})},l=u=>{Vu(u,{get size(){return 20}})};ie(s,u=>{o()?u(i):u(l,!1)})}b(n),oe(()=>{ut(n,1,mr(r())),We(n,"aria-label",o()?"Locked View":"Dynamic View")}),k(t,n),ne()}Ve(["click"]);var JI=(t,e)=>e.plugin.rebuildGraph(),XI=M('');function sf(t,e){ae(e,!0);let r=V(e,"cls",3,"");var o=XI();o.__click=[JI,e];var a=w(o);iA(a,{get size(){return 20}}),b(o),oe(()=>ut(o,1,mr(r()))),k(t,o),ne()}Ve(["click"]);var QI=M('
');function lf(t,e){"use strict";let r=V(e,"cls",3,""),o=V(e,"label",3,""),a=V(e,"aria_label",3,"");var n=QI(),s=w(n),i=w(s,!0);b(s),b(n),oe(()=>{ut(s,1,`${r()??""} tree-item-flair`),We(s,"aria-label",a()),De(i,o())}),k(t,n)}var eD=M('
'),tD=M('
');function Um(t,e){ae(e,!0);let r=V(e,"open",15),{show_node_options:o}=e.plugin.settings.views.side.matrix,a=hr(e.plugin.settings,o);var n=tD(),s=w(n),i=w(s),l=w(i);Ls(l,{get open(){return r()}}),b(i);var u=S(i,2),f=w(u),c=w(f,!0);b(f),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),E=w(y);lo(E,()=>e.edges,D=>{var L=X(),F=J(L);Xe(F,17,()=>e.edges,it,(x,$)=>{var C=eD(),v=w(C),B=w(v),q=w(B);va(q,{get edge(){return A($)},get plugin(){return e.plugin},get node_stringify_options(){return a},cls:"grow tree-item-inner-text"}),b(B);var re=S(B,2);{let ge=Ae(()=>A($).explicit(e.plugin.graph)?"x":"i"),le=Ae(()=>A($).get_attribute_label(e.plugin.graph,e.show_attributes));lf(re,{cls:"font-mono",get label(){return A(ge)},get aria_label(){return A(le)}})}b(v),b(C),k(x,C)}),k(D,L)}),b(y),b(n),oe(()=>{ut(n,1,`BC-matrix-view-field BC-matrix-view-field-${e.field.label??""} tree-item`),De(c,e.field.label),De(h,e.edges.length)}),js("open","toggle",n,r,r),k(t,n),ne()}var rD=M("
"),oD=M('

No outgoings edges

'),aD=M('
');function zm(t,e){ae(e,!0);let[r,o]=Cr(),a=()=>Sr(vt,"$active_file_store",r),n=V(e,"plugin",7);H.debug("Rendering Matrix side view");let s=pt(structuredClone(pr(n().settings.views.side.matrix))),i=!0;mt(()=>{if(n().settings.views.side.matrix=pr(s),Ge(()=>void n().saveSettings()),i){i=!1;return}});let l=Ae(()=>Tr(n().settings.edge_field_groups,s.field_group_labels)),u=Ae(a),f=Ae(()=>A(u)&&n().graph.has_node(A(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,A(l))):n().graph.get_filtered_grouped_outgoing_edges(A(u).path,A(l)):null),c=Ae(()=>mo(s.edge_sort_id.field,s.edge_sort_id.order===-1)),p=Ae(()=>{let v=n().settings.edge_fields;if(!s.custom_sort_fields)return v;let B=s.custom_sort_field_labels.filter(re=>v.some(ge=>ge.label===re));if(!B.length)return v;let q=new Map(B.map((re,ge)=>[re,ge]));return[...v].sort((re,ge)=>{var le,Be;let R=(le=q.get(re.label))!==null&&le!==void 0?le:Number.MAX_SAFE_INTEGER,K=(Be=q.get(ge.label))!==null&&Be!==void 0?Be:Number.MAX_SAFE_INTEGER;return R!==K?R-K:v.findIndex(Ee=>Ee.label===re.label)-v.findIndex(Ee=>Ee.label===ge.label)})});var m=aD(),h=w(m),y=w(h),E=w(y);sf(E,{cls:"clickable-icon nav-action-button",get plugin(){return n()}});var D=S(E,2);{let v=Ae(()=>A(u)?.path);nf(D,{cls:"clickable-icon nav-action-button",get active_path(){return A(v)},get lock_view(){return s.lock_view},set lock_view(B){s.lock_view=B},get lock_path(){return s.lock_path},set lock_path(B){s.lock_path=B}})}var L=S(D,2);Hs(L,{cls:"clickable-icon nav-action-button",exclude_fields:["field","neighbour-field:"],get edge_sort_id(){return s.edge_sort_id},set edge_sort_id(v){s.edge_sort_id=v}});var F=S(L,2);af(F,{cls:"clickable-icon nav-action-button",get collapse(){return s.collapse},set collapse(v){s.collapse=v}});var x=S(F,2);Vs(x,{cls:"clickable-icon nav-action-button",exclude_attributes:["field","explicit"],get show_attributes(){return s.show_attributes},set show_attributes(v){s.show_attributes=v}});var $=S(x,2);Gs($,{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(v){s.field_group_labels=v}}),b(y),b(h);var C=S(h,2);lo(C,()=>A(f),v=>{var B=X(),q=J(B);{var re=le=>{var Be=rD();Xe(Be,21,()=>A(p),it,(R,K)=>{let Ee=Ae(()=>A(f).get_sorted_edges(A(K).label,n().graph,A(c)));var T=X(),O=J(T);{var Z=me=>{{let Me=Ae(()=>!s.collapse);Um(me,{get edges(){return A(Ee)},get field(){return A(K)},get plugin(){return n()},get show_attributes(){return s.show_attributes},get open(){return A(Me)}})}};ie(O,me=>{A(Ee)?.length&&me(Z)})}k(R,T)}),b(Be),k(le,Be)},ge=le=>{var Be=oD();k(le,Be)};ie(q,le=>{A(f)?le(re):le(ge,!1)})}k(v,B)}),b(m),k(t,m),ne(),o()}var jA=class extends P6.ItemView{constructor(r,o){super(r);this.icon="blinds";this.plugin=o}getViewType(){return ra.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=Se(zm,{target:this.contentEl,props:{plugin:this.plugin}})}async onClose(){this.component&&await Jo(this.component)}};var q6=o_("AGFzbQEAAAABzgRHYAJ/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+YAl/f39/f39+fn4AYA5/f39/f39/f39/f39/fwF/YAV/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/YAABfmABfAF8YAR/fn5/AGAFf39/f38Ef39/f2AGf39/f39/A39/f2AHf39/f39/fwJ/f2AFf39/f38Df39/YAR/f39/A39/f2ABfwN/f39gBX9/fX9/AGAEf31/fwBgBX9/fn9/AGAEf35/fwBgBX9/fH9/AGAEf3x/fwBgAX8BfAKGCiUDd2JnG19fd2JnX2luZm9fMzk4YmY1ZDIxMTQwOTgxNAAZA3diZxJfX3diZ19lZGdlZGF0YV9uZXcAEQN3YmcSX193Ymdfbm9kZWRhdGFfbmV3ABEDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX2dldAAUA3diZxhfX3diZ19ub3RlZ3JhcGhlcnJvcl9uZXcAEQN3YmcXX193YmdfdHJhdmVyc2FsZGF0YV9uZXcAEQN3YmcUX193YmdfZWRnZXN0cnVjdF9uZXcAEQN3YmcOX193YmdfcGF0aF9uZXcAEQN3YmcbX193YmdfZmxhdHRyYXZlcnNhbGRhdGFfbmV3ABEDd2JnGl9fd2JnX3RyYXZlcnNhbGRhdGFfdW53cmFwABIDd2JnHl9fd2JnX2ZsYXR0cmF2ZXJzYWxkYXRhX3Vud3JhcAASA3diZxVfX3diaW5kZ2VuX3N0cmluZ19uZXcAIQN3YmcXX193YmdfZ2NlZGdlZGF0YV91bndyYXAAEgN3YmcXX193YmdfZ2Nub2RlZGF0YV91bndyYXAAEgN3YmcbX193Ymdfd2Fybl80YTIzODBjNjkwM2IwNDQzABkDd2JnHF9fd2JnX2RlYnVnXzBlMjkyYTBkYmFlZGE3ZjEAGQN3YmcXX193YmdfZWRnZXN0cnVjdF91bndyYXAAEgN3YmcgX193YmdfdHJhbnNpdGl2ZWdyYXBocnVsZV91bndyYXAAEgN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0xPR0dFUl84NDlhNzA4MzhlOTA5NGYwABoDd2JnGl9fd2JnX25ld184YTZmMjM4YTZlY2U4NmVhABoDd2JnHF9fd2JnX3N0YWNrXzBlZDc1ZDY4NTc1YjBmM2MAFAN3YmccX193YmdfZXJyb3JfNzUzNGI4ZTlhMzZmMWFiNAACA3diZyJfX3diZ19wZXJmb3JtYW5jZV83YTNmZmQwYjE3ZjY2M2FkACYDd2JnF19fd2JpbmRnZW5faXNfdW5kZWZpbmVkABIDd2JnGl9fd2JnX25vd18yYzk1YzlkZTAxMjkzMTczACcDd2JnGl9fd2JnX25ld180MDVlMjJmMzkwNTc2Y2UyABoDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwACEDd2JnMl9fd2JnX3N0YXRpY19hY2Nlc3Nvcl9HTE9CQUxfVEhJU181NjU3OGJlN2U5ZjgzMmIwAAoDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAAoA3diZytfX3diZ19zdGF0aWNfYWNjZXNzb3JfU0VMRl8zN2M1ZDQxOGU0YmY1ODE5AAoDd2JnLV9fd2JnX3N0YXRpY19hY2Nlc3Nvcl9HTE9CQUxfODhhOTAyZDEzYTU1N2QwNwAKA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAACgN3YmcbX193YmdfY2FsbF83Y2NjZGQ2OWUwNzkxYWUyACkDd2JnGl9fd2JnX3NldF9iYjhjZWNmNmE2MmI5ZjQ2ACoDd2JnEF9fd2JpbmRnZW5fdGhyb3cAAgN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAFAN3YmcfX193YmluZGdlbl9pbml0X2V4dGVybnJlZl90YWJsZQAOA+YE5AQTBwULExMPCxMPEwsPDAULKwsPDwsCBSwLBS0MAgIAAQwFFQILBAoNAgUEBQUCBQEbBQEAAAUBFQEFBQoABQACBQIABAEiAgIjIgIEAgAMAAIBBQEBBQEBAA0AIy4FAgsMDS8HAgITBQUADAUPBwwEAgICDAIEBwAAAgICAgIBBAILDQICCwoNDAQAAAICBAIHAAAAAAIcAQcBBQEEAgICAgICHQcNAQITBQECJAACBQAAAjAABQcOAgcBAgUFAAUFAgIBCwICBDEEMgAkBAQzAQQEAgICDAUCAQcFBQICAgQ0CwsEAB0EBA8PDQAEDQsEAAICAAAFAA0NDR0EAAAEDAoFBQQEBQUABAwAAAAADgQ1AAACAAAAAAAAADYNAgIEBAAABAQOAAAEBAQEBAQEBAQAAAAAAAAEAAQHAAAcBAQ3AgAAAAs4BwEFBQECOQUFAQEHABUFBAQABwAEAAUBBAQEAAAAAAwHAAAAAAQEBAAAAAAMBAIFBQUAAAAAAAAAAAAAAAcEBQANAAAEAAAAADoAAAoAFRY7FhYWAAc8PRcXFxcOBwIYGBgYPgAeHh4UFBAQEBAQEBAQAgICAgICAgIFHx8fPwcHByUHBwclBwcHBwcEICAgAgIbAgIbAgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgQEBAQcBAsNQEJEBAQEDAAAAQ4EDgQKAAAEAgQEBAQEBQAAAAAFAgIBBwcLABQAAAAAFQQCAAAHAQUBAQEEBA4BBQUFAAAAAAAAAAAOAg4CAgAAAAECAAICB0YCCgoECwJwAcMBwwFvAIABBQMBABEGDwJ/AUGAgMAAC38BQYABCwemOukBBm1lbW9yeQIAFF9fd2JnX25vdGVncmFwaF9mcmVlAEIWbm90ZWdyYXBoX2FwcGx5X3VwZGF0ZQD6AxVub3RlZ3JhcGhfYnVpbGRfZ3JhcGgAwwMUbm90ZWdyYXBoX2VkZ2VfdHlwZXMAhAQtbm90ZWdyYXBoX2dldF9maWx0ZXJlZF9ncm91cGVkX291dGdvaW5nX2VkZ2VzAIYBJW5vdGVncmFwaF9nZXRfZmlsdGVyZWRfb3V0Z29pbmdfZWRnZXMApwEcbm90ZWdyYXBoX2dldF9pbmNvbWluZ19lZGdlcwB7Em5vdGVncmFwaF9nZXRfbm9kZQBXHG5vdGVncmFwaF9nZXRfb3V0Z29pbmdfZWRnZXMAfBJub3RlZ3JhcGhfaGFzX25vZGUA/gEabm90ZWdyYXBoX2lzX25vZGVfcmVzb2x2ZWQAywEXbm90ZWdyYXBoX2l0ZXJhdGVfZWRnZXMA1QMXbm90ZWdyYXBoX2l0ZXJhdGVfbm9kZXMA1gMNbm90ZWdyYXBoX2xvZwCNAg1ub3RlZ3JhcGhfbmV3AKYCF25vdGVncmFwaF9ub3RpZnlfdXBkYXRlAMEBHW5vdGVncmFwaF9zZXRfdXBkYXRlX2NhbGxiYWNrANgEHF9fd2JnX2ZsYXR0cmF2ZXJzYWxkYXRhX2ZyZWUAwwEeX193YmdfZmxhdHRyYXZlcnNhbHJlc3VsdF9mcmVlAJ4BJF9fd2JnX2dldF9mbGF0dHJhdmVyc2FsZGF0YV9jaGlsZHJlbgCIBCFfX3diZ19nZXRfZmxhdHRyYXZlcnNhbGRhdGFfZGVwdGgA7AMgX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2VkZ2UA/wEvX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2hhc19jdXRfb2ZfY2hpbGRyZW4A7QMuX193YmdfZ2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX251bWJlcl9vZl9jaGlsZHJlbgDuAyJfX3diZ19nZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9kYXRhAIsEKV9fd2JnX2dldF9mbGF0dHJhdmVyc2FscmVzdWx0X2VudHJ5X25vZGVzAIwELV9fd2JnX2dldF9mbGF0dHJhdmVyc2FscmVzdWx0X2hpdF9kZXB0aF9saW1pdADtAyhfX3diZ19nZXRfZmxhdHRyYXZlcnNhbHJlc3VsdF9ub2RlX2NvdW50AOwDLF9fd2JnX2dldF9mbGF0dHJhdmVyc2FscmVzdWx0X3RyYXZlcnNhbF90aW1lAO8DIF9fd2JnX2dldF90cmF2ZXJzYWxkYXRhX2NoaWxkcmVuAIoEHl9fd2JnX2dldF90cmF2ZXJzYWxyZXN1bHRfZGF0YQCJBClfX3diZ19nZXRfdHJhdmVyc2FscmVzdWx0X2hpdF9kZXB0aF9saW1pdADwAyNfX3diZ19nZXRfdHJhdmVyc2FscmVzdWx0X21heF9kZXB0aADxAyRfX3diZ19nZXRfdHJhdmVyc2FscmVzdWx0X25vZGVfY291bnQA8gMkX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxkYXRhX2NoaWxkcmVuAO8CIV9fd2JnX3NldF9mbGF0dHJhdmVyc2FsZGF0YV9kZXB0aAD9AyBfX3diZ19zZXRfZmxhdHRyYXZlcnNhbGRhdGFfZWRnZQDTAS9fX3diZ19zZXRfZmxhdHRyYXZlcnNhbGRhdGFfaGFzX2N1dF9vZl9jaGlsZHJlbgDfAy5fX3diZ19zZXRfZmxhdHRyYXZlcnNhbGRhdGFfbnVtYmVyX29mX2NoaWxkcmVuAP4DIl9fd2JnX3NldF9mbGF0dHJhdmVyc2FscmVzdWx0X2RhdGEA2gEpX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfZW50cnlfbm9kZXMA8AItX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfaGl0X2RlcHRoX2xpbWl0AN8DKF9fd2JnX3NldF9mbGF0dHJhdmVyc2FscmVzdWx0X25vZGVfY291bnQA/QMsX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfdHJhdmVyc2FsX3RpbWUA/wMgX193Ymdfc2V0X3RyYXZlcnNhbGRhdGFfY2hpbGRyZW4AqwIeX193Ymdfc2V0X3RyYXZlcnNhbHJlc3VsdF9kYXRhAKwCKV9fd2JnX3NldF90cmF2ZXJzYWxyZXN1bHRfaGl0X2RlcHRoX2xpbWl0AOADI19fd2JnX3NldF90cmF2ZXJzYWxyZXN1bHRfbWF4X2RlcHRoAIAEJF9fd2JnX3NldF90cmF2ZXJzYWxyZXN1bHRfbm9kZV9jb3VudACBBBhfX3diZ190cmF2ZXJzYWxkYXRhX2ZyZWUAwgEaX193YmdfdHJhdmVyc2FscmVzdWx0X2ZyZWUAsQElZmxhdHRyYXZlcnNhbGRhdGFfZ2V0X2F0dHJpYnV0ZV9sYWJlbAC8AyVmbGF0dHJhdmVyc2FsZGF0YV90b19qc19yZW5kZXJpbmdfb2JqAMQDJWZsYXR0cmF2ZXJzYWxyZXN1bHRfY2hpbGRyZW5fYXRfaW5kZXgA+wMhZmxhdHRyYXZlcnNhbHJlc3VsdF9kYXRhX2F0X2luZGV4AGEcZmxhdHRyYXZlcnNhbHJlc3VsdF9pc19lbXB0eQD4AipmbGF0dHJhdmVyc2FscmVzdWx0X3JlbmRlcmluZ19vYmpfYXRfaW5kZXgAvQMYZmxhdHRyYXZlcnNhbHJlc3VsdF9zb3J0AOkDHGZsYXR0cmF2ZXJzYWxyZXN1bHRfdG9TdHJpbmcAhwQRdHJhdmVyc2FsZGF0YV9uZXcAuwEfdHJhdmVyc2FsZGF0YV9yZWNfc29ydF9jaGlsZHJlbgDoAxZ0cmF2ZXJzYWxkYXRhX3RvU3RyaW5nAIUEE3RyYXZlcnNhbHJlc3VsdF9uZXcA7wEYdHJhdmVyc2FscmVzdWx0X3RvU3RyaW5nAIYEGHRyYXZlcnNhbHJlc3VsdF90b19wYXRocwDeAStfX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9oYXNfY3V0X29mX2NoaWxkcmVuAO0DHF9fd2JnX2dldF90cmF2ZXJzYWxkYXRhX2VkZ2UA/wErX193Ymdfc2V0X3RyYXZlcnNhbGRhdGFfaGFzX2N1dF9vZl9jaGlsZHJlbgDfAxh0cmF2ZXJzYWxyZXN1bHRfaXNfZW1wdHkA+AInX193Ymdfc2V0X2ZsYXR0cmF2ZXJzYWxyZXN1bHRfbWF4X2RlcHRoAP4DHV9fd2JnX3NldF90cmF2ZXJzYWxkYXRhX2RlcHRoAP0DKl9fd2JnX3NldF90cmF2ZXJzYWxkYXRhX251bWJlcl9vZl9jaGlsZHJlbgD+AyhfX3diZ19zZXRfdHJhdmVyc2FscmVzdWx0X3RyYXZlcnNhbF90aW1lAP8DJ19fd2JnX2dldF9mbGF0dHJhdmVyc2FscmVzdWx0X21heF9kZXB0aADuAx1fX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9kZXB0aADsAypfX3diZ19nZXRfdHJhdmVyc2FsZGF0YV9udW1iZXJfb2ZfY2hpbGRyZW4A7gMoX193YmdfZ2V0X3RyYXZlcnNhbHJlc3VsdF90cmF2ZXJzYWxfdGltZQDvAxxfX3diZ19zZXRfdHJhdmVyc2FsZGF0YV9lZGdlANMBIl9fd2JnX2dldF9tZXJtYWlkZ3JhcGhkYXRhX21lcm1haWQAjwQlX193YmdfZ2V0X21lcm1haWRncmFwaGRhdGFfdG90YWxfdGltZQDzAylfX3diZ19nZXRfbWVybWFpZGdyYXBoZGF0YV90cmF2ZXJzYWxfdGltZQDvAxtfX3diZ19tZXJtYWlkZ3JhcGhkYXRhX2ZyZWUAggIeX193YmdfbWVybWFpZGdyYXBob3B0aW9uc19mcmVlAHEiX193Ymdfc2V0X21lcm1haWRncmFwaGRhdGFfbWVybWFpZAD0AiVfX3diZ19zZXRfbWVybWFpZGdyYXBoZGF0YV90b3RhbF90aW1lAIIEKV9fd2JnX3NldF9tZXJtYWlkZ3JhcGhkYXRhX3RyYXZlcnNhbF90aW1lAP8DGW1lcm1haWRncmFwaGRhdGFfdG9TdHJpbmcAjQQXbWVybWFpZGdyYXBob3B0aW9uc19uZXcAhwEcbWVybWFpZGdyYXBob3B0aW9uc190b1N0cmluZwCOBCBub3RlZ3JhcGhfZ2VuZXJhdGVfbWVybWFpZF9ncmFwaADSAx1fX3diZ19hZGRlZGdlZ3JhcGh1cGRhdGVfZnJlZQC6AR1fX3diZ19hZGRub3RlZ3JhcGh1cGRhdGVfZnJlZQC0ARtfX3diZ19iYXRjaGdyYXBodXBkYXRlX2ZyZWUA6gEVX193YmdfZ2NlZGdlZGF0YV9mcmVlALoBFV9fd2JnX2djbm9kZWRhdGFfZnJlZQC0ARpfX3diZ19nZXRfbm9kZWRhdGFfYWxpYXNlcwCTBCJfX3diZ19nZXRfbm9kZWRhdGFfaWdub3JlX2luX2VkZ2VzAPQDI19fd2JnX2dldF9ub2RlZGF0YV9pZ25vcmVfb3V0X2VkZ2VzAPUDF19fd2JnX2dldF9ub2RlZGF0YV9wYXRoAJIEG19fd2JnX2dldF9ub2RlZGF0YV9yZXNvbHZlZAD2AxNfX3diZ19ub2RlZGF0YV9mcmVlALQBIF9fd2JnX3JlbW92ZWVkZ2VncmFwaHVwZGF0ZV9mcmVlANABIF9fd2JnX3JlbW92ZW5vdGVncmFwaHVwZGF0ZV9mcmVlAIMCIF9fd2JnX3JlbmFtZW5vdGVncmFwaHVwZGF0ZV9mcmVlAOYBGl9fd2JnX3NldF9ub2RlZGF0YV9hbGlhc2VzAIACIl9fd2JnX3NldF9ub2RlZGF0YV9pZ25vcmVfaW5fZWRnZXMA4QMjX193Ymdfc2V0X25vZGVkYXRhX2lnbm9yZV9vdXRfZWRnZXMA4gMXX193Ymdfc2V0X25vZGVkYXRhX3BhdGgA9QIbX193Ymdfc2V0X25vZGVkYXRhX3Jlc29sdmVkAOMDJV9fd2JnX3RyYW5zaXRpdmVydWxlc2dyYXBodXBkYXRlX2ZyZWUA6wEfYWRkZWRnZWdyYXBodXBkYXRlX2FkZF90b19iYXRjaACDARZhZGRlZGdlZ3JhcGh1cGRhdGVfbmV3AL0BH2FkZG5vdGVncmFwaHVwZGF0ZV9hZGRfdG9fYmF0Y2gAlQEWYWRkbm90ZWdyYXBodXBkYXRlX25ldwDbARRiYXRjaGdyYXBodXBkYXRlX25ldwC5Aw5nY2VkZ2VkYXRhX25ldwDBAhNnY2VkZ2VkYXRhX3RvU3RyaW5nAJAEDmdjbm9kZWRhdGFfbmV3AKACE2djbm9kZWRhdGFfdG9TdHJpbmcAkQQRbm9kZWRhdGFfdG9TdHJpbmcAlAQicmVtb3ZlZWRnZWdyYXBodXBkYXRlX2FkZF90b19iYXRjaACJARlyZW1vdmVlZGdlZ3JhcGh1cGRhdGVfbmV3AOMCInJlbW92ZW5vdGVncmFwaHVwZGF0ZV9hZGRfdG9fYmF0Y2gAqAEZcmVtb3Zlbm90ZWdyYXBodXBkYXRlX25ldwCYAyJyZW5hbWVub3RlZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAKABGXJlbmFtZW5vdGVncmFwaHVwZGF0ZV9uZXcA+gIndHJhbnNpdGl2ZXJ1bGVzZ3JhcGh1cGRhdGVfYWRkX3RvX2JhdGNoAKkBHnRyYW5zaXRpdmVydWxlc2dyYXBodXBkYXRlX25ldwDcAgxub2RlZGF0YV9uZXcAoAIfX193Ymdfbm9kZXN0cmluZ2lmeW9wdGlvbnNfZnJlZQD6ARhub2Rlc3RyaW5naWZ5b3B0aW9uc19uZXcAwgIjbm9kZXN0cmluZ2lmeW9wdGlvbnNfc3RyaW5naWZ5X25vZGUA/AMTX193YmdfZWRnZWxpc3RfZnJlZQDHARVfX3diZ19lZGdlc29ydGVyX2ZyZWUA+AEUX193YmdfZ2V0X3BhdGhfZWRnZXMAmQQaX193YmdfZ3JvdXBlZGVkZ2VsaXN0X2ZyZWUAxAEPX193YmdfcGF0aF9mcmVlAMcBE19fd2JnX3BhdGhsaXN0X2ZyZWUAnwEUX193Ymdfc2V0X3BhdGhfZWRnZXMA/AESY3JlYXRlX2VkZ2Vfc29ydGVyANMDDGNyZWF0ZV9ncmFwaACrAQ5lZGdlbGlzdF9maXJzdACbARJlZGdlbGlzdF9nZXRfZWRnZXMAmAQZZWRnZWxpc3RfZ2V0X3NvcnRlZF9lZGdlcwDFAxZlZGdlbGlzdF9ncm91cF9ieV90eXBlALUBDWVkZ2VsaXN0X2xhc3QAiAERZWRnZWxpc3RfdG9TdHJpbmcAlgQRZWRnZWxpc3RfdG9fYXJyYXkAlwQZZ3JvdXBlZGVkZ2VsaXN0X2dldF9lZGdlcwDqAyBncm91cGVkZWRnZWxpc3RfZ2V0X3NvcnRlZF9lZGdlcwC2Axhncm91cGVkZWRnZWxpc3RfdG9TdHJpbmcAlQQLcGF0aF9lcXVhbHMAdBVwYXRoX2dldF9maXJzdF90YXJnZXQAzAMLcGF0aF9sZW5ndGgA/wIScGF0aF9yZXZlcnNlX2VkZ2VzAJoEDXBhdGhfdG9TdHJpbmcAmwQNcGF0aF90cnVuY2F0ZQBnEnBhdGhsaXN0X21heF9kZXB0aACSARBwYXRobGlzdF9wcm9jZXNzAMYDD3BhdGhsaXN0X3NlbGVjdADPARFwYXRobGlzdF90b1N0cmluZwCcBBFwYXRobGlzdF90b19wYXRocwCdBApzb3J0X2VkZ2VzAL8DE3NvcnRfdHJhdmVyc2FsX2RhdGEAvgMuX193YmdfZ2V0X3RyYXZlcnNhbG9wdGlvbnNfZGF0YXZpZXdfZnJvbV9wYXRocwCjBCVfX3diZ19nZXRfdHJhdmVyc2Fsb3B0aW9uc19lZGdlX3R5cGVzAKIEJl9fd2JnX2dldF90cmF2ZXJzYWxvcHRpb25zX2VudHJ5X25vZGVzAKEEJF9fd2JnX2dldF90cmF2ZXJzYWxvcHRpb25zX21heF9kZXB0aADsAy5fX3diZ19nZXRfdHJhdmVyc2Fsb3B0aW9uc19tYXhfdHJhdmVyc2FsX2NvdW50AO4DKV9fd2JnX2dldF90cmF2ZXJzYWxvcHRpb25zX3NlcGFyYXRlX2VkZ2VzAO0DLV9fd2JnX2dldF90cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfZmxhdHRlbgD3AyxfX3diZ19nZXRfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX3NvcnRlcgDJARlfX3diZ19ub3RlZ3JhcGhlcnJvcl9mcmVlAIQCLl9fd2JnX3NldF90cmF2ZXJzYWxvcHRpb25zX2RhdGF2aWV3X2Zyb21fcGF0aHMA4QElX193Ymdfc2V0X3RyYXZlcnNhbG9wdGlvbnNfZWRnZV90eXBlcwDiASZfX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19lbnRyeV9ub2RlcwCBAiRfX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19tYXhfZGVwdGgA/QMuX193Ymdfc2V0X3RyYXZlcnNhbG9wdGlvbnNfbWF4X3RyYXZlcnNhbF9jb3VudAD+AylfX3diZ19zZXRfdHJhdmVyc2Fsb3B0aW9uc19zZXBhcmF0ZV9lZGdlcwDfAy1fX3diZ19zZXRfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX2ZsYXR0ZW4A5AMsX193Ymdfc2V0X3RyYXZlcnNhbHBvc3Rwcm9jZXNzb3B0aW9uc19zb3J0ZXIA4AEbX193YmdfdHJhdmVyc2Fsb3B0aW9uc19mcmVlAGsmX193YmdfdHJhdmVyc2FscG9zdHByb2Nlc3NvcHRpb25zX2ZyZWUA+QEWbm90ZWdyYXBoZXJyb3JfbWVzc2FnZQCfBBJub3RlZ3JhcGhlcnJvcl9uZXcAswIXbm90ZWdyYXBoZXJyb3JfdG9TdHJpbmcAngQUdHJhdmVyc2Fsb3B0aW9uc19uZXcA0QEZdHJhdmVyc2Fsb3B0aW9uc190b1N0cmluZwCgBB90cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfbmV3AJ0BJHRyYXZlcnNhbHBvc3Rwcm9jZXNzb3B0aW9uc190b1N0cmluZwCkBCp0cmF2ZXJzYWxwb3N0cHJvY2Vzc29wdGlvbnNfd2l0aG91dF9zb3J0ZXIAqgMTX193YmdfZWRnZWRhdGFfZnJlZQDMARVfX3diZ19lZGdlc3RydWN0X2ZyZWUA5wEbX193YmdfZ2V0X2VkZ2VkYXRhX2V4cGxpY2l0APgDGF9fd2JnX2dldF9lZGdlZGF0YV9yb3VuZAD3AxtfX3diZ19zZXRfZWRnZWRhdGFfZXhwbGljaXQA5QMYX193Ymdfc2V0X2VkZ2VkYXRhX3JvdW5kAIMEHl9fd2JnX3RyYW5zaXRpdmVncmFwaHJ1bGVfZnJlZQCXARRlZGdlZGF0YV9lZGdlX3NvdXJjZQCoBBJlZGdlZGF0YV9lZGdlX3R5cGUApwQRZWRnZWRhdGFfdG9TdHJpbmcAqQQUZWRnZXN0cnVjdF9lZGdlX2RhdGEA3QMWZWRnZXN0cnVjdF9lZGdlX3NvdXJjZQDNAxRlZGdlc3RydWN0X2VkZ2VfdHlwZQCmBBNlZGdlc3RydWN0X2V4cGxpY2l0ANwDHmVkZ2VzdHJ1Y3RfZ2V0X2F0dHJpYnV0ZV9sYWJlbADAAxdlZGdlc3RydWN0X2lzX3NlbGZfbG9vcADtAh5lZGdlc3RydWN0X21hdGNoZXNfZWRnZV9maWx0ZXIA0AMQZWRnZXN0cnVjdF9yb3VuZADbAxZlZGdlc3RydWN0X3NvdXJjZV9kYXRhANcDFmVkZ2VzdHJ1Y3Rfc291cmNlX3BhdGgAzgMaZWRnZXN0cnVjdF9zb3VyY2VfcmVzb2x2ZWQA2QMbZWRnZXN0cnVjdF9zdHJpbmdpZnlfc291cmNlAMcDG2VkZ2VzdHJ1Y3Rfc3RyaW5naWZ5X3RhcmdldADIAxZlZGdlc3RydWN0X3RhcmdldF9kYXRhANgDFmVkZ2VzdHJ1Y3RfdGFyZ2V0X3BhdGgAzwMaZWRnZXN0cnVjdF90YXJnZXRfcmVzb2x2ZWQA2gMTZWRnZXN0cnVjdF90b1N0cmluZwClBBZub3RlZ3JhcGhfcmVjX3RyYXZlcnNlAN4DIm5vdGVncmFwaF9yZWNfdHJhdmVyc2VfYW5kX3Byb2Nlc3MA1AModHJhbnNpdGl2ZWdyYXBocnVsZV9jcmVhdGVfZXhhbXBsZV9ncmFwaADrAxd0cmFuc2l0aXZlZ3JhcGhydWxlX25ldwDxARx0cmFuc2l0aXZlZ3JhcGhydWxlX3RvU3RyaW5nAKoEFF9fd2JpbmRnZW5fZXhuX3N0b3JlAN4EF19fZXh0ZXJucmVmX3RhYmxlX2FsbG9jAIcFE19fd2JpbmRnZW5fZXhwb3J0XzIBAQ9fX3diaW5kZ2VuX2ZyZWUA0AQRX193YmluZGdl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AiAJRg0BIAFBQGutQoCAgICgCYQhEiAEQRxqIQQgAq1CgICAgDB8IREDQCAHIAJBFGoiAjYCACABIAStQoCAgICgCYQ3AzggASARNwMwIAFBQGtBjoPAACABQTBqEIIBIAEoAiwiBSABKAIkRgR/IAFBJGogBUEBQQFBARCHAiABKAIsBSAFCyABKAIoakHu1sAALQAAOgAAIAEgASgCLEEBajYCLCABIBI3AzAgAUEkakHAyMAAQeiIwAAgAUEwahBcDQQgASgCQCIFBEAgASgCRCAFQQEQ5AQLIARBFGohBCARQhR8IREgAiAJRw0ACwwBC0GsycAAQSsgAUHPAGpBnMnAAEHYycAAEOsCAAsgACABKAIsNgIIIAAgASkCJDcCACABKAIYIgBFDQAgASgCHCAAQQEQ5AQLIAFB0ABqJAAMAQtBrMnAAEErIAFBzwBqQZzJwABB6MnAABDrAgALDAILIABBADYCCCAAQoCAgIAQNwIADAELIAAgAygCGEEIahDyAgsgAygCHCIBBEAgAygCGEEMaiECA0AgAkEEaygCACIABEAgAigCACAAQQEQ5AQLIAJBFGohAiABQQFrIgENAAsLIAMoAhQiAARAIAMoAhggAEEUbEEEEOQECyADQUBrJAAPC0Hs18AAQTcgA0E/akHc18AAQaTYwAAQ6wIAC7UHAgN+BH8gAUHA////B3EEQEEAIAFBQHFrIQsgACEKA0AgCkE4aikAACAGhSIHQiCIIgggCkEYaikAACAFhSIFQiCIIgl+IAdC/////w+DIgcgBUL/////D4MiBX6FIAcgCX4gBSAIfoVCIImFIQUgCkEwaikAACAGhSIHQiCIIgggCkEQaikAACAEhSIEQiCIIgl+IAdC/////w+DIgcgBEL/////D4MiBH6FIAcgCX4gBCAIfoVCIImFIQQgCkEoaikAACAGhSIHQiCIIgggCkEIaikAACADhSIDQiCIIgl+IAdC/////w+DIgcgA0L/////D4MiA36FIAcgCX4gAyAIfoVCIImFIQMgCkEgaikAACAGhSIHQiCIIgggCikAACAChSICQiCIIgl+IAdC/////w+DIgcgAkL/////D4MiAn6FIAcgCX4gAiAIfoVCIImFIQIgCkFAayEKIAtBQGsiCw0ACwsgAyAFhSEDIAIgBIUhAiABQT9xIgpFBEAgAiADhQ8LIAFBECAKIApBEE0bIgprIQsgAUEQTwRAIAAgC2oiACAKQQ9xIgFqIgsgCkEwcSIKQRBrIgxqIg0pAAggBoUiBEIgiCIFIAApAAggA4UiA0IgiCIHfiAEQv////8PgyIEIANC/////w+DIgN+hSAEIAd+IAMgBX6FQiCJhSEFAn4gDSkAACAGhSIDQiCIIgQgACkAACAChSICQiCIIgd+IANC/////w+DIgMgAkL/////D4MiAn6FIAMgB34gAiAEfoVCIImFIgQgDEUgASAMckERSXINABogCyAKQSBrIgxqIg0pAAggBoUiAkIgiCIDIAApABggBYUiBUIgiCIHfiACQv////8PgyICIAVC/////w+DIgV+hSACIAd+IAMgBX6FQiCJhSEFIA0pAAAgBoUiAkIgiCIDIAApABAgBIUiBEIgiCIHfiACQv////8PgyICIARC/////w+DIgR+hSACIAd+IAMgBH6FQiCJhSIEIAxFIAEgDHJBIUlyDQAaIAogC2oiAUEoaykAACAGhSICQiCIIgMgACkAKCAFhSIFQiCIIgd+IAJC/////w+DIgIgBUL/////D4MiBX6FIAIgB34gAyAFfoVCIImFIQUgAUEwaykAACAGhSICQiCIIgMgACkAICAEhSIEQiCIIgZ+IAJC/////w+DIgIgBEL/////D4MiBH6FIAIgBn4gAyAEfoVCIImFCyAFhQ8LIAsgASABQYTiwAAQrQEAC7YHAQl/IAMgAEEMaiAAEHkhByAAQSRBGCADIABBJGogAEEYahB5IgUbaiEEIAMgAEEYQSQgBRtqIgYgACAHQQFzQQxsaiIFIAQgAyAEIAAgB0EMbGoiBxB5IggbIAMgBiAFEHkiCRsiCiAHIAQgBSAJGyAIGyILEHkhDCACIAQgByAIGyIEKAIINgIIIAIgBCkCADcCACACIAogCyAMGyIEKAIINgIUIAIgBCkCADcCDCACIAsgCiAMGyIEKAIINgIgIAIgBCkCADcCGCACQSRqIgcgBSAGIAkbIgQpAgA3AgAgAkEsaiAEKAIINgIAIAMgAEE8aiAAQTBqIgQQeSEGIARBJEEYIAMgAEHUAGogAEHIAGoQeSIFG2ohACADIARBGEEkIAUbaiIIIAQgBkEBc0EMbGoiBSAAIAMgACAEIAZBDGxqIgQQeSIG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aiEIIAFBMGohASAGQQFrIgYNAAsLIAAgAzYCCCAAIAc2AgQgACADNgIAIARBEGokAA8LIAYgBRDFBAsAC9sCAQN/IAAoAgAiASgCFCICBEAgASgCECEAA0AgACgCACIDBEAgAEEEaigCACADQQEQ5AQLIABBDGohACACQQFrIgINAAsLIAEoAgwiAARAIAEoAhAgAEEMbEEEEOQECwJAIAEoAhgiAEGAgICAeEYNACABKAIgIgIEQCABKAIcIQADQCAAKAIAIgMEQCAAQQRqKAIAIANBARDkBAsgAEEMaiEAIAJBAWsiAg0ACyABKAIYIQALIABFDQAgASgCHCAAQQxsQQQQ5AQLAkAgASgCJCIAQYCAgIB4Rg0AIAEoAiwiAgRAIAEoAighAANAIAAoAgAiAwRAIABBBGooAgAgA0EBEOQECyAAQQxqIQAgAkEBayICDQALIAEoAiQhAAsgAEUNACABKAIoIABBDGxBBBDkBAsCQCABQX9GDQAgASABKAIEQQFrIgA2AgQgAA0AIAFBPEEEEOQECwvlAgEJfyMAQRBrIgIkAAJAAkACQAJAAkAgAARAIABBCGsiAyADKAIAIgRBAWoiATYCACABRQ0BIAAoAgAiAUF/Rg0CIAAgAUEBajYCACACIAM2AgwgAiAANgIIIAIgAEEEajYCBCAAQQxqKAIARQ0DIABBCGooAgAiASgCBCEGIAEoAhAhByABKAIMIQggASgCCCEJIAEoAgAiBCAEKAIAQQFqIgU2AgAgBUUNASABKAIUIQEgAygCACEFIAAgACgCAEEBazYCACADIAVBAWsiADYCACAARQRAIAJBDGoQqQILQSRBBBD1BCIARQ0EIAAgATYCICAAIAc2AhwgACAINgIYIAAgCTYCFCAAIAY2AhAgACAENgIMIABBADYCCCAAQoGAgIAQNwIAIABBCGohAAwFCxD3BAsACxD5BAALIAAgATYCACADIAQ2AgBBACEADAELQQRBJBD7BAALIAJBEGokACAAC+UCAQV/IwBBMGsiAiQAIAJBCDYCECACQYDBwAA2AgwgAkEUaiIDIAFBiMHAABDnAyADQaTBwABBAiACQQxqQZTBwAAQrAEaIANBuMHAAEEKIABBGGpBqMHAABCsARogA0HCwcAAQQogAEEcakGowcAAEKwBGiAAKAIQIgQgACgCFEEk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ELABDAILQQAhAgNAIAIgA2pBD2ogAEEPcS0Ar/FAOgAAIAJBAWshAiAAQQR2IgANAAsgAUHInMEAQQIgAiADakEQakEAIAJrEEwMAQtBACECA0AgAiADakEPaiAAQQ9xLQDKnEE6AAAgAkEBayECIABBBHYiAA0ACyABQcicwQBBAiACIANqQRBqQQAgAmsQTAsgA0EQaiQAC/wBAwV+A38BfEGYnsEALQAAQQFHBEAQywILAkBBlJ7BACgCABCFBSIKIAqdIgqhRAAAAACAhC5BohDsAvwHIgVCgJTr3AOAIgYgCvwHIgRC6AeAIgJ8IAUgBkKAlOvcA359pyAEIAJC6Ad+fadBwIQ9bGoiCUH/k+vcA0siB618IgQgASkDACICVA0AIAQgAn0hAiAJQYCU69wDayAJIAcbIgcgASgCCCIBSQRAIAJQDQEgB0GAlOvcA2ohByACQgF9IQILIAcgAWsiCEGAlOvcA0kEQCACIQMMAQsgCEGAlOvcA2shCCACQgF8IQMLIAAgCDYCCCAAIAM3AwAL3gECA34CfwJAIAFB8P///wdxIghFDQAgACABQQ9xaiEJA0AgACAIIAlqIgFPDQEgAUEIaykAACAEhSIFQiCIIgYgAEEIaikAACADhSIDQiCIIgd+IAVC/////w+DIgUgA0L/////D4MiA36FIAUgB34gAyAGfoVCIImFIQMgAUEQaykAACAEhSIFQiCIIgYgACkAACAChSICQiCIIgd+IAVC/////w+DIgUgAkL/////D4MiAn6FIAUgB34gAiAGfoVCIImFIQIgAEEQaiEAIAhBEGsiCA0ACwsgAiADhQvWAQECfyMAQRBrIgMkAAJ/AkAgASgCCCICQYCAgBBxRQRAIAJBgICAIHENASAAIAEQsAEMAgsgACgCACECQQAhAANAIAAgA2pBD2ogAkEPcS0Ar/FAOgAAIABBAWshACACQQR2IgINAAsgAUHInMEAQQIgACADakEQakEAIABrEEwMAQsgACgCACECQQAhAANAIAAgA2pBD2ogAkEPcS0AypxBOgAAIABBAWshACACQQR2IgINAAsgAUHInMEAQQIgACADakEQakEAIABrEEwLIANBEGokAAvlBgMIfwV+AW8jAEEQayIIJAAgAARAIAhBCGohCSMAQeAAayIDJAAgAkEwbCEHAkACQAJA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AEErIANBBGpBxMvAAEGAzMAAEOsCAAv6AQIEfwF+IwBBEGsiAiQAAkAgAARAAkAgAUUEQEGEgICAeCEEDAELIAFBCGsiAygCAEEBRw0CIAEoAgQhBCABKAIQIQUgASkCCCEGIANBADYCACACIAY3AwAgAiAFNgIIIANBf0YNACABQQRrIgEgASgCAEEBayIBNgIAIAENACADQRxBBBDkBAsgACgCAEUEQCAAQX82AgAgACgCBCIBQYWAgIB4SCABRXJFBEAgACgCCCABQQEQ5AQLIAAgBDYCBCAAIAIpAwA3AgggACACKAIINgIQIABBADYCACACQRBqJAAPCxD5BAALEPcEAAtBhMvAAEE/EPgEAAvoAQIDfwF+IwBBEGsiAyQAIAAEQAJ+IAFFBEBBgICAgHghBEIADAELIANBCGogASACEKwDIAM1AgggAygCDCIErUIghoQLIQYgACgCAEUEQCAAQX82AgACQCAAKAIcIgFBgICAgHhGDQAgACgCJCICBEAgACgCICEBA0AgASgCACIFBEAgAUEEaigCACAFQQEQ5AQLIAFBDGohASACQQFrIgINAAsgACgCHCEBCyABRQ0AIAAoAiAgAUEMbEEEEOQECyAAIAY3AiAgACAENgIcIABBADYCACADQRBqJAAPCxD5BAALEPcEAAvoAQIDfwF+IwBBEGsiAyQAIAAEQAJ+IAFFBEBBgICAgHghBEIADAELIANBCGogASACEKwDIAM1AgggAygCDCIErUIghoQLIQYgACgCAEUEQCAAQX82AgACQCAAKAIQIgFBgICAgHhGDQAgACgCGCICBEAgACgCFCEBA0AgASgCACIFBEAgAUEEaigCACAFQQEQ5AQLIAFBDGohASACQQFrIgINAAsgACgCECEBCyABRQ0AIAAoAhQgAUEMbEEEEOQECyAAIAY3AhQgACAENgIQIABBADYCACADQRBqJAAPCxD5BAALEPcEAAvwAQIDfwF+IwBBEGsiAiQAIAAoAgAhACACIAEQywMgACgCDCIEBEAgACgCACIAQQhqIQEgACkDAEJ/hUKAgYKEiJCgwIB/gyEFA0AgBVAEQANAIAEiA0EIaiEBIABBoAFrIQAgAykDAEKAgYKEiJCgwIB/gyIFQoCBgoSIkKDAgH9RDQALIAVCgIGChIiQoMCAf4UhBQsgAiAAIAV6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AEUNASABQSRqIQEgA0EBaiEDIABBJGshAAwACwALIAIQjQMgAkEQaiQAC6UBAgN/An4jAEEgayIBJAACQCAAKAJEIgJFDQAgACgCQCACQdAAbGoiAkHQAGsiACkDACAAKQMIhFBFDQAgAUEQaiACQTBrENcBIAEgASkDEELAhD0QtgIgASgCGCEDIABCADcDCCAAQgE3AwAgAkFAaiICIAEpAwAiBCADQegHbq18IgU3AwAgAiABKQMIIAQgBVatfDcDCCAAEJICCyABQSBqJAALlAEBAn8gA0H4////AXEEQCAAIAAgA0EDdiIDQTBsIgVqIAAgA0HUAGwiBmogAyAEEJMCIQAgASABIAVqIAEgBmogAyAEEJMCIQEgAiACIAVqIAIgBmogAyAEEJMCIQILIAAgAiABIABBCGooAgAiACABQQhqKAIAIgFJIgMgASACQQhqKAIAIgJJcxsgAyAAIAJJcxsLlAECAn8BfkEBIQZBBCEFAkAgBK0gA61+IgdCIIhQRQRAQQAhAwwBCyAHpyIDQfz///8HSwRAQQAhAwwBCwJAAkACfyABBEAgAiABIARsQQQgAxDdBAwBCyADRQ0BIANBBBD1BAsiBQ0AIABBBDYCBAwBCyAAIAU2AgRBACEGC0EIIQULIAAgBWogAzYCACAAIAY2AgALmwEBA38gACgCACIBKAIMIgAEQCABKAIQIABBARDkBAsgASgCICICBEAgASgCHCEAA0AgACgCACIDBEAgAEEEaigCACADQQEQ5AQLIABBDGohACACQQFrIgINAAsLIAEoAhgiAARAIAEoAhwgAEEMbEEEEOQECwJAIAFBf0YNACABIAEoAgRBAWsiADYCBCAADQAgAUEoQQQQ5AQLC7QBAQF/IwBBQGoiAiQAIAAoAgAhACACQZi2wAA2AjggAkGItsAANgIwIAIgADYCLCACQfC0wAA2AiggAiAAQShqNgIkIAJBkLTAADYCICACIABBJGo2AhwgAkGQtMAANgIYIAIgAEEgajYCFCACQfi1wAA2AhAgAiAAQQhqNgIMIAIgAEEUajYCPCACIAJBPGo2AjQgAUHktsAAQRNBtLbAAEEGIAJBDGpBBhDIASACQUBrJAAL3wUCCn8BbyMAQSBrIgYkACAGIAEpAgg3AxggBiABKQIANwMQIAZBBGohCSMAQTBrIgUk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AgQLQbSiwQAgATYCAEGsosEAIAU2AgAMBwsgBCABayIEQQ9NDQYgByABIAhBAXFyQQJyNgIAIAEgBmoiASAEQQNyNgIEIAUgBSgCBEEBcjYCBCABIAQQbAwGC0GwosEAKAIAIARqIgQgAUsNBAwGCyADIAEgASADSxsiAwRAIAIgACAD/AoAAAsgBygCACIDQXhxIgcgAUEEQQggA0EDcSIDG2pJDQIgA0UgBiAHT3INBkH448AAQS5BqOTAABDLBAALQbnjwABBLkHo48AAEMsEAAtB+OPAAEEuQajkwAAQywQAC0G548AAQS5B6OPAABDLBAALIAcgASAIQQFxckECcjYCACABIAZqIgUgBCABayIBQQFyNgIEQbCiwQAgATYCAEG4osEAIAU2AgALIAZFDQAgAAwDCyADECYiAUUNASADQXxBeCAHKAIAIgJBA3EbIAJBeHFqIgIgAiADSxsiAgRAIAEgACAC/AoAAAsgASECCyAAEEoLIAILCxYAQaiewQAgADYCAEGknsEAQQE2AgALEwAgAEH05cAANgIEIAAgATYCAAsRACABIAAoAgAgACgCBBDTBAsQACABIAAoAgAgACgCBBBUCxABAX8QYCIBIAAlASYBIAELDwAgAEHAyMAAIAEgAhBcC2EBAX8CQAJAIABBBGsoAgAiAkF4cSIDQQRBCCACQQNxIgIbIAFqTwRAIAJBACADIAFBJ2pLGw0BIAAQSgwCC0G548AAQS5B6OPAABDLBAALQfjjwABBLkGo5MAAEMsEAAsLDwAgAEGQ3cAAIAEgAhBcCw8AIABBwOLAACABIAIQXAsPACAAQZDowAAgASACEFwLDwBB0fbAAEErIAAQywQACw8AQbiHwQBBMyAAEJ0DAAsTAEGIm8EAQZkBQdSbwQAQnQMACw8AIABB1PXAACABIAIQXAsMACAAJQEgASACEAALDAAgACUBIAEgAhAOCwwAIAAlASABIAIQDwsOACABQcmvwABBBRDTBAsMACAAKAIAIAEQugQLDgAgAUHzxsAAQQUQ0wQLDAAgACgCACABEK0CC2sBAX8gACgCACECIwBBIGsiACQAIAAgAigCACICNgIIIAAgAmg2AgwgACAAQQxqrUKAgICAwBeENwMYIAAgAEEIaq1CgICAgNAXhDcDECABKAIAIAEoAgRBoKjAACAAQRBq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Z2UgZm9yIHNsaWNlIG9mIGxlbmd0aCDAAAZSb3VuZCDAAMAFbXMgPiDAABBhc3NlcnRpb24gYGxlZnQgwBcgcmlnaHRgIGZhaWxlZAogIGxlZnQ6IMAJCiByaWdodDogwAAQYXNzZXJ0aW9uIGBsZWZ0IMAQIHJpZ2h0YCBmYWlsZWQ6IMAJCiAgbGVmdDogwAkKIHJpZ2h0OiDAACpleHRlbnNpb24gY2Fubm90IGNvbnRhaW4gcGF0aCBzZXBhcmF0b3JzOiDAAEhjYW5ub3QgYWNjZXNzIGEgVGhyZWFkIExvY2FsIFN0b3JhZ2UgdmFsdWUgZHVyaW5nIG9yIGFmdGVyIGRlc3RydWN0aW9uOiDAACxFcnJvciBjYWxsaW5nIHVwZGF0ZSBub3RpZmljYXRpb24gZnVuY3Rpb246IMAAGEVycm9yIGNhbGxpbmcgZnVuY3Rpb246IMAAJ0Vycm9yIGNhbGxpbmcgZWRnZSBpdGVyYXRpb24gY2FsbGJhY2s6IMAAJ0Vycm9yIGNhbGxpbmcgbm9kZSBpdGVyYXRpb24gY2FsbGJhY2s6IMAAwAI6IMAAAVvAAl0gwAEgwAALYnl0ZSBpbmRleCDAGSBpcyBub3QgYW4gT3NTdHIgYm91bmRhcnkAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9jb3JlL3NyYy9zdHIvbG9zc3kucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvaGFzaGJyb3duLTAuMTcuMC9zcmMvcmF3LnJzAC9ydXN0Yy81OTgwNzYxNmUxZmEyNTQwNzI0YmZiYWMxNGQ3OTc2ZDdlNGEzODYwL2xpYnJhcnkvY29yZS9zcmMvbnVtL2ZsdDJkZWMvc3RyYXRlZ3kvZ3Jpc3UucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9jb3JlL3NyYy9zbGljZS9zb3J0L3NoYXJlZC9zbWFsbHNvcnQucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zdGFibGUvcXVpY2tzb3J0LnJzAC9ydXN0Yy81OTgwNzYxNmUxZmEyNTQwNzI0YmZiYWMxNGQ3OTc2ZDdlNGEzODYwL2xpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi92ZWMtY29sbGVjdGlvbnMtMC40LjMvc3JjL3ZlY19zZXQucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9jb3JlL3NyYy9udW0vZGl5X2Zsb2F0LnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BldGdyYXBoLTAuOC4zL3NyYy9pdGVyX2Zvcm1hdC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9idWlsZGVycy5ycwBzcmMvdXRpbHMucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvd2ViLXRpbWUtMS4xLjAvc3JjL3RpbWUvanMucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvdGhyZWFkX2xvY2FsL25vX3RocmVhZHMucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9zdGQvc3JjL2ZmaS9vc19zdHIucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3N0ci5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21lbWNoci5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9pbmRleG1hcC0yLjE0LjAvc3JjL2lubmVyLnJzAC9ob21lL3J1bm5lci8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLXg4Nl82NC11bmtub3duLWxpbnV4LWdudS9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3N0ci9wYXR0ZXJuLnJzAC9ydXN0Yy81OTgwNzYxNmUxZmEyNTQwNzI0YmZiYWMxNGQ3OTc2ZDdlNGEzODYwL2xpYnJhcnkvY29yZS9zcmMvbnVtL2ZsdDJkZWMvc3RyYXRlZ3kvZHJhZ29uLnJzAC9ydXN0Yy81OTgwNzYxNmUxZmEyNTQwNzI0YmZiYWMxNGQ3OTc2ZDdlNGEzODYwL2xpYnJhcnkvY29yZS9zcmMvbnVtL2JpZ251bS5ycwBzcmMvZGF0YS90cmF2ZXJzYWwucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy90aHJlYWQvbG9jYWwucnMAc3JjL3RyYXZlcnNhbC9wYXRoLnJzAC9ydXN0Yy81OTgwNzYxNmUxZmEyNTQwNzI0YmZiYWMxNGQ3OTc2ZDdlNGEzODYwL2xpYnJhcnkvc3RkL3NyYy9wYXRoLnJzAHNyYy91cGRhdGUvZ3JhcGgucnMAc3JjL2dyYXBoLnJzAHNyYy9lZGdlX3NvcnRpbmcucnMAL2hvbWUvcnVubmVyLy5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUteDg2XzY0LXVua25vd24tbGludXgtZ251L2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L3N0ZC9zcmMvcGFuaWNraW5nLnJzAC9ydXN0Yy81OTgwNzYxNmUxZmEyNTQwNzI0YmZiYWMxNGQ3OTc2ZDdlNGEzODYwL2xpYnJhcnkvY29yZS9zcmMvdW5pY29kZS9wcmludGFibGUucnMAc3JjL2RhdGEvbm9kZS5ycwAvaG9tZS9ydW5uZXIvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtdW5rbm93bi1saW51eC1nbnUvbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvb25jZS5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9oYXNoYnJvd24tMC4xNS41L3NyYy9yYXcvbW9kLnJzAC9ydXN0L2RlcHMvaGFzaGJyb3duLTAuMTYuMS9zcmMvcmF3L21vZC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL2ZtdC9tb2QucnMAc3JjL3RyYXZlcnNhbC9tb2QucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGV0Z3JhcGgtMC44LjMvc3JjL2dyYXBoX2ltcGwvc3RhYmxlX2dyYXBoL21vZC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwBzcmMvZGF0YS9tb2QucnMAc3JjL21lcm1haWQucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9hbGxvYy9zcmMvcmMucnMAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuMTEvc3JjL2RsbWFsbG9jLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2NvbnNvbGVfZXJyb3JfcGFuaWNfaG9vay0wLjEuNy9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2ZvbGRoYXNoLTAuMS41L3NyYy9saWIucnMAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvb25jZV9jZWxsLTEuMjEuNC9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3NtYWxsdmVjLTEuMTUuMS9zcmMvbGliLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2l0ZXJ0b29scy0wLjE0LjAvc3JjL2xpYi5ycwAHQWRkaW5nIMAGIEVkZ2VzAAhSZW1vdmVkIMAQIGltcGxpZWQgZWRnZXMsIMAWIGV4cGxpY2l0IGVkZ2VzIHJlbWFpbgAiU3RhYmxlR3JhcGg6OmFkZF9lZGdlOiBub2RlIGluZGV4IMAbIGlzIG5vdCBhIG5vZGUgaW4gdGhlIGdyYXBoACRBdHRlbXB0ZWQgdG8gcmVtb3ZlIHVucmVzb2x2ZWQgbm9kZSDADyBmcm9tIHRoZSBncmFwaAAGTm9kZSAiwAsiIG5vdCBmb3VuZAAGY2xhc3MgwA4gaXMtdW5yZXNvbHZlZAALUGVyZkxvZ2dlciDAEyBpcyBhbHJlYWR5IHN0b3BwZWQACkVkZ2VJbmRleCjAASkACk5vZGVJbmRleCjAASkACEpzVmFsdWUowAEpAMAHICgxIDw8IMABKQAGY2xhc3MgwA8gaW50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EABcAAAAVgEAAC4AAABjYXBhY2l0eSBvdmVyZmxvdwAAAC4SEABcAAAARQEAADYAAAAuEhAAXAAAANIEAAAOAAAAaW5kZXggZXhjZWVkcyBsZW5ndGguEhAAXAAAAGQFAAARAAAAYXNzZXJ0aW9uIGZhaWxlZDogbmV3X2NhcCA+PSBsZW4uEhAAXAAAAJ0EAAANAAAAAAAAAAQAAAAEAAAAEwAAAAAAAAAEAAAABAAAABQAAAAAAAAABAAAAAQAAAAXAAAARWRnZVN0cnVjdHNvdXJjZV9pbmRleHRhcmdldF9pbmRleGVkZ2VfaW5kZXhyZXZpc2lvboAAAAAMAAAABAAAAIEAAAAAAAAAAQAAAAEAAACCAAAAAAAAAAQAAAAEAAAAHQAAAG5hbWVwYXRocm91bmRzY2FuX2xvb3BjbG9zZV9yZXZlcnNlZBguEAAEAAAAHC4QAAQAAACcLBAACQAAACAuEAAGAAAAJi4QAAgAAAAuLhAADgAAAFRyYW5zaXRpdmVHcmFwaFJ1bGVFcnJvcgoKU3RhY2s6CgoAAIMAAAAMAAAABAAAAIQAAACFAAAAhgBBsN3AAAvvCQEAAACHAAAAYSBEaXNwbGF5IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yIHVuZXhwZWN0ZWRseQDYDBAAcAAAAGQLAAAOAAAAQXR0ZW1wdGVkIHRvIGluaXRpYWxpemUgdGhyZWFkLWxvY2FsIHdoaWxlIGl0IGlzIGJlaW5nIGRyb3BwZWQAAKYIEACDAAAAawAAAA0AAABgUGVyZm9ybWFuY2VgIG9iamVjdCBub3QgZm91bmQAAEYIEABfAAAAIgAAAA0AAAByZXR1cm4gdGhpc2Nsb3N1cmUgaW52b2tlZCByZWN1cnNpdmVseSBvciBhZnRlciBiZWluZyBkcm9wcGVkTGF6eSBpbnN0YW5jZSBoYXMgcHJldmlvdXNseSBiZWVuIHBvaXNvbmVkANAREABdAAAAEgMAABkAAAByZWVudHJhbnQgaW5pdAAA0BEQAF0AAACEAgAADQAAAGFycmF5IGNvbnRhaW5zIGEgdmFsdWUgb2YgdGhlIHdyb25nIHR5cGVudWxsIHBvaW50ZXIgcGFzc2VkIHRvIHJ1c3RyZWN1cnNpdmUgdXNlIG9mIGFuIG9iamVj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");var vA=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=uo(vt)?.path),!e)throw new Error("No active file");return vf(this.plugin.graph,e,this.plugin.settings,Object.assign({...oi},r))}get_neighbours(e){return e??(e=uo(vt)?.path),e&&this.plugin.graph.has_node(e)?this.plugin.graph.get_outgoing_edges(e):void 0}};var R6=require("obsidian");var sD=M('

Breadcrumbs Codeblock Errors

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


See the codeblock docs for more info

Version:

',1);function tn(t,e){ae(e,!0);let r=e.errors.map(s=>`- **\`${s.path}\`**: ${s.message}`).join(` +`);var o=X(),a=J(o);{var n=s=>{var i=sD(),l=S(J(i),4),u=w(l);ef(u,{get plugin(){return e.plugin},get markdown(){return r}}),b(l);var f=S(l,6),c=S(w(f)),p=w(c,!0);b(c),b(f),oe(()=>De(p,e.plugin.manifest.version)),k(s,i)};ie(a,s=>{e.errors.length&&s(n)})}k(t,o),ne()}var iD=(t,e,r,o)=>{Y(e,!0),yv(typeof r.text=="string"?r.text:r.text(),o()),setTimeout(()=>Y(e,!1),2500)},lD=M("");function Us(t,e){ae(e,!0);let r=V(e,"cls",3,""),o=V(e,"aria_label",3,"Copy to Clipboard"),a=V(e,"options",19,()=>({})),n=Le(!1);var s=lD();s.__click=[iD,n,e,a];var i=w(s);{var l=f=>{Ru(f,{get size(){return 20}})},u=f=>{vs(f,{get size(){return 20}})};ie(i,f=>{A(n)?f(l):f(u,!1)})}b(s),oe(()=>{ut(s,1,mr(r())),We(s,"aria-label",A(n)?"Copied!":o())}),k(t,s),ne()}Ve(["click"]);var uD=M('

'),fD=M('
'),dD=M('

'),AD=M('

No paths found.

'),cD=M('
');function Wm(t,e){ae(e,!0);let[r,o]=Cr(),a=()=>Sr(vt,"$active_file_store",r),n=mo(e.options.sort.field,e.options.sort.order===-1),{show_node_options:s}=e.plugin.settings.views.codeblocks,i=5,l=Le(void 0),u=Le(void 0),f=Ae(a);function c(){var $;let C=e.options.depth[1]===1/0?i:($=e.options.depth[1])!==null&&$!==void 0?$:i,v=e.options["start-note"]||e.file_path||(A(f)===null||A(f)===void 0?void 0:A(f).path)||"";if(!e.plugin.graph.has_node(v)){Y(l,void 0),Y(u,"The file does not exist in the graph.");return}let B=new Nt([v],e.options.fields,C,100,!e.options["merge-fields"],e.options["dataview-from-paths"]),q=new po(n,e.options.flat);try{Y(l,e.plugin.graph.rec_traverse_and_process(B,q),!0),Y(u,void 0)}catch(re){H.error("Error updating codeblock tree",re),Y(l,void 0),re instanceof Fa?Y(u,re.message,!0):Y(u,"An error occurred while updating the codeblock tree. Check the console for more information (Ctrl + Shift + I).")}}let p=Ae(()=>{var $;if(A(l)){let C=hr(e.plugin.settings,s),v=e.plugin.graph.get_node(e.file_path);return"# "+sn.ify(e.file_path,C.stringify_node(v),{link_kind:e.plugin.settings.commands.list_index.default_options.link_kind})+` +`+vl(e.plugin.graph,A(l),e.plugin.settings,Object.assign(Object.assign({},e.plugin.settings.commands.list_index.default_options),{show_node_options:s,show_attributes:($=e.options["show-attributes"])!==null&&$!==void 0?$:[]}))}else return""});gs(()=>{c()});var m=cD(),h=w(m);tn(h,{get plugin(){return e.plugin},get errors(){return e.errors}});var y=S(h,2);{var E=$=>{var C=uD(),v=w(C,!0);b(C),oe(()=>De(v,e.options.title)),k($,C)};ie(y,$=>{e.options.title&&$(E)})}var D=S(y,2);{var L=$=>{var C=fD(),v=w(C),B=w(v);Us(B,{get text(){return A(p)},cls:"clickable-icon nav-action-button"}),b(v);var q=S(v,2);Rs(q,{get code(){return A(p)},get plugin(){return e.plugin},get source_path(){return e.file_path},type:"markmap"}),b(C),k($,C)},F=$=>{var C=X(),v=J(C);{var B=re=>{var ge=dD(),le=w(ge,!0);b(ge),oe(()=>De(le,A(u))),k(re,ge)},q=re=>{var ge=AD();k(re,ge)};ie(v,re=>{A(u)?re(B):re(q,!1)},!0)}k($,C)};ie(D,$=>{A(p)?$(L):$(F,!1)})}b(m),k(t,m);var x=ne({update:c});return o(),x}var pD=M('

'),mD=(t,e)=>{window.open(Eo.to_image_link(A(e)),"_blank")},_D=(t,e)=>{window.open(Eo.to_live_edit_link(A(e)),"_blank")},hD=M('
'),gD=M('

'),xD=M('

No paths found.

'),jD=M('
');function Km(t,e){ae(e,!0);let[r,o]=Cr(),a=()=>Sr(vt,"$active_file_store",r),n=10,s=Le(""),i=Le(void 0),l=Ae(a);function u(){var L,F,x;let $=e.options.depth[1]===1/0?n:(L=e.options.depth[1])!==null&&L!==void 0?L:n,C=e.options["start-note"]||e.file_path||(A(l)===null||A(l)===void 0?void 0:A(l).path)||"";if(!e.plugin.graph.has_node(C)){Y(s,""),Y(i,"The file does not exist in the graph.");return}let v=new Nt([e.file_path],e.options.fields,$,100,!e.options["merge-fields"],e.options["dataview-from-paths"]),B=T_({curve:e.options["mermaid-curve"],defaultRenderer:e.options["mermaid-renderer"]}),q=mo(e.options.sort.field,e.options.sort.order===-1),re=new Vn(e.file_path,`%%{ init: { "flowchart": ${JSON.stringify(B)} } }%%`,"graph",(F=e.options["mermaid-direction"])!==null&&F!==void 0?F:"LR",!0,(x=e.options["show-attributes"])!==null&&x!==void 0?x:[],q,ge=>{let le=ge.path,Be=e.plugin.app.vault.getFileByPath(le);return Be?e.plugin.app.fileManager.generateMarkdownLink(Be,e.file_path).slice(2,-2):ht.drop_ext(sn.resolve_to_absolute_path(e.plugin.app,le,e.file_path))},!0);try{Y(s,e.plugin.graph.generate_mermaid_graph(v,re).mermaid,!0),Y(i,void 0)}catch(ge){H.error("Error generating mermaid graph",ge),Y(s,""),ge instanceof Fa?Y(i,ge.message,!0):Y(i,"An error occurred while updating the codeblock tree. Check the console for more information (Ctrl + Shift + I).")}Y(s,A(s),!0)}gs(()=>{u()});var f=jD(),c=w(f);tn(c,{get plugin(){return e.plugin},get errors(){return e.errors}});var p=S(c,2);{var m=L=>{var F=pD(),x=w(F,!0);b(F),oe(()=>De(x,e.options.title)),k(L,F)};ie(p,L=>{e.options.title&&L(m)})}var h=S(p,2);{var y=L=>{var F=hD(),x=w(F),$=w(x);Us($,{get text(){return A(s)},cls:"clickable-icon nav-action-button"});var C=S($,2);C.__click=[mD,s];var v=w(C);Hu(v,{get size(){return 20}}),b(C);var B=S(C,2);B.__click=[_D,s];var q=w(B);Wu(q,{get size(){return 20}}),b(B),b(x);var re=S(x,2);Rs(re,{get code(){return A(s)},get plugin(){return e.plugin},get source_path(){return e.file_path},type:"mermaid"}),b(F),k(L,F)},E=L=>{var F=X(),x=J(F);{var $=v=>{var B=gD(),q=w(B,!0);b(B),oe(()=>De(q,A(i))),k(v,B)},C=v=>{var B=xD();k(v,B)};ie(x,v=>{A(i)?v($):v(C,!1)},!0)}k(L,F)};ie(h,L=>{A(s)?L(y):L(E,!1)})}b(f),k(t,f);var D=ne({update:u});return o(),D}Ve(["click"]);var vD=M('
'),kD=M('
'),bD=M('
Traversal limit reached...
'),wD=M('
');function zs(t,e){ae(e,!0);let r=V(e,"open_signal",15),o=Le(pt(Array(e.items.length).fill(!0)));mt(()=>{r()===!0?(Y(o,Array(e.items.length).fill(!0),!0),r(null)):r()===!1&&(Y(o,Array(e.items.length).fill(!1),!0),r(null))});var a=X(),n=J(a);Xe(n,17,()=>e.items,it,(s,i,l)=>{let u=Ae(()=>e.data.children_at_index(A(i))),f=Ae(()=>e.data.rendering_obj_at_index(A(i),e.plugin.graph,e.node_stringify_options,e.show_attributes??[]));var c=X(),p=J(c);{var m=h=>{let y=Ae(()=>A(f).explicit?"BC-edge BC-edge-explicit":`BC-edge BC-edge-implied BC-edge-implied-${A(f).edge_source}`);var E=wD(),D=w(E),L=w(D);{var F=le=>{var Be=vD(),R=w(Be);Ls(R,{get open(){return A(o)[l]}}),b(Be),k(le,Be)};ie(L,le=>{(A(u).length||A(f).has_cut_of_children)&&le(F)})}var x=S(L,2),$=w(x);tf($,{get plugin(){return e.plugin},get display(){return A(f).link_display},get path(){return A(f).link_path},get resolved(){return A(f).target_resolved},get cls(){return`tree-item-inner-text BC-edge ${A(y)??""}`}}),b(x);var C=S(x,2);{var v=le=>{lf(le,{get label(){return A(f).attribute_label}})};ie(C,le=>{e.show_attributes?.length&&le(v)})}b(D);var B=S(D,2);{var q=le=>{var Be=kD(),R=w(Be);zs(R,{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 A(u)}}),b(Be),k(le,Be)};ie(B,le=>{A(u).length&&A(o)[l]&&le(q)})}var re=S(B,2);{var ge=le=>{var Be=bD();k(le,Be)};ie(re,le=>{A(f).has_cut_of_children&&A(o)[l]&&le(ge)})}b(E),js("open","toggle",E,le=>A(o)[l]=le,()=>A(o)[l]),k(h,E)};ie(p,h=>{A(u)&&A(f)&&h(m)})}k(s,c)}),k(t,a),ne()}var tZ=require("console"),yD=M('

'),ED=M('
'),$D=M('

'),ID=M('

No paths found.

'),DD=M('
');function Zm(t,e){ae(e,!0);let[r,o]=Cr(),a=()=>Sr(vt,"$active_file_store",r),n=mo(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=Le(void 0),u=Le(void 0),f=Ae(a);function c(){var x;let $=e.options.depth[1]===1/0?i:(x=e.options.depth[1])!==null&&x!==void 0?x:i,C=e.options["start-note"]||e.file_path||(A(f)===null||A(f)===void 0?void 0:A(f).path)||"";if(!e.plugin.graph.has_node(C)){Y(l,void 0),Y(u,"The file does not exist in the graph.");return}let v=new Nt([C],e.options.fields,$,100,!e.options["merge-fields"],e.options["dataview-from-paths"]),B=new po(n,e.options.flat);try{Y(l,e.plugin.graph.rec_traverse_and_process(v,B),!0),Y(u,void 0)}catch(q){H.error("Error updating codeblock tree",q),Y(l,void 0),q instanceof Fa?Y(u,q.message,!0):Y(u,"An error occurred while updating the codeblock tree. Check the console for more information (Ctrl + Shift + I).")}}gs(()=>{let x=new Or;c(),H.debug(x.elapsedMessage("CodeblockTree initial traversal"))});var p=DD(),m=w(p);tn(m,{get plugin(){return e.plugin},get errors(){return e.errors}});var h=S(m,2);{var y=x=>{var $=yD(),C=w($,!0);b($),oe(()=>De(C,e.options.title)),k(x,$)};ie(h,x=>{e.options.title&&x(y)})}var E=S(h,2);{var D=x=>{var $=ED(),C=w($),v=w(C);Us(v,{cls:"clickable-icon nav-action-button",text:()=>vl(e.plugin.graph,A(l),e.plugin.settings,{...e.plugin.settings.commands.list_index.default_options,show_attributes:e.options["show-attributes"]??[]})}),b(C);var B=S(C,2),q=w(B);{let re=Ae(()=>!e.options.collapse);zs(q,{get plugin(){return e.plugin},get node_stringify_options(){return s},get data(){return A(l)},get items(){return A(l).entry_nodes},get open_signal(){return A(re)},get show_attributes(){return e.options["show-attributes"]}})}b(B),b($),k(x,$)},L=x=>{var $=X(),C=J($);{var v=q=>{var re=$D(),ge=w(re,!0);b(re),oe(()=>De(ge,A(u))),k(q,re)},B=q=>{var re=ID();k(q,re)};ie(C,q=>{A(u)?q(v):q(B,!1)},!0)}k(x,$)};ie(E,x=>{A(l)&&!A(l).is_empty()?x(D):x(L,!1)})}b(p),k(t,p);var F=ne({update:c});return o(),F}var L6=require("obsidian");var FD=["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"],Ym=[!0,!1],BD=(t,e)=>{let r=e.edge_fields.map(a=>a.label),o=e.field_groups.map(a=>a.label);return et.object({title:et.string({message:Ht.error.not_string("title",t.title)}).optional(),"start-note":et.string({message:Ht.error.not_string("start-note",t["start-note"])}).optional(),"dataview-from":et.string({message:Ht.error.not_string("dataview-from",t["dataview-from"])}).optional(),flat:et.boolean({message:Ht.error.invalid_enum("flat",Ym,t.flat)}).default(!1),collapse:et.boolean({message:Ht.error.invalid_enum("collapse",Ym,t.collapse)}).default(!1),"merge-fields":et.boolean({message:Ht.error.invalid_enum("merge-fields",Ym,t["merge-fields"])}).default(!0),content:et.enum(["open","closed"],{message:Ht.error.invalid_enum("content",["open","closed"],t.content)}).optional(),type:et.enum(["tree","mermaid","markmap"],{message:Ht.error.invalid_enum("type",["tree","mermaid","markmap"],t.type)}).default("tree"),"mermaid-renderer":et.enum(Eo.RENDERERS,{message:Ht.error.invalid_enum("mermaid-renderer",Eo.RENDERERS,t["mermaid-renderer"])}).optional(),"mermaid-direction":et.enum(Eo.DIRECTIONS,{message:Ht.error.invalid_enum("mermaid-direction",Eo.DIRECTIONS,t["mermaid-direction"])}).optional(),"mermaid-curve":et.enum(Eo.CURVE_STYLES,{message:Ht.error.invalid_enum("mermaid-curve",Eo.CURVE_STYLES,t["mermaid-curve"])}).optional(),"show-attributes":et.array(et.enum(jl),{message:Ht.error.not_array("show-attributes",jl,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:et.array(et.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\`)._ **Example**: \`depth: [0]\`, or possibly: \`depth: [${typeof t.depth=="number"?-1*t.depth:t.depth}\`]`),{invalid_type_error:`Expected a YAML list (array) of one or two numbers, but got: \`${t.depth}\` (${typeof t.depth}). _Try wrapping it in square brackets._ **Example**: \`depth: [0]\`, or \`depth: [0, 3]\`, or possibly: \`depth: [${t.depth}]\``}).min(1,`At least one item is required, but got: \`[${t.depth}]\`. _Try adding a number to the list._ **Example**: \`depth: [0]\`, or \`depth: [0, 3]\``).max(2,`Maximum of two items allowed, but got: \`[${t.depth}]\`. _Try removing one of the numbers._ **Example**: \`depth: [${t.depth?.[0]??0}]\`, or possibly \`depth: [${t.depth?.[0]??0}, 3]\``).transform(a=>a.length===1?[a[0],1/0]:a).refine(a=>a[0]<=a[1],{message:`Minimum depth cannot be greater than maximum depth. _Try swapping the numbers._ -**Example**: \`depth: [0, 3]\`, or possibly: \`depth: [${t.depth?.[1]??0}, ${t.depth?.[0]??3}]\``}).default([0,1/0]),sort:Qe.preprocess(a=>{if(typeof a=="string"){let[n,s]=a.split(" ");return{field:n,order:s??"asc"}}else return a},Qe.object({field:Ht.schema.dynamic_enum([...kA,...e.edge_fields.map(a=>`neighbour-field:${a.label}`)],"sort"),order:Qe.union([Qe.enum(["asc","desc"]),Qe.literal(1),Qe.literal(-1)],{errorMap:(a,n)=>({message:Ht.error.invalid_enum("sort.order",["asc","desc"],n.data)})}).transform(a=>a==="asc"?1:a==="desc"?-1:a)})).default({order:1,field:"basename"})}).passthrough().default({}).transform(a=>{if(a["field-groups"]){let n=Cr(e.field_groups,a["field-groups"]);a.fields?a.fields=ma(a.fields.concat(n)):a.fields=n}return a}).superRefine((a,n)=>a["mermaid-curve"]&&a["mermaid-renderer"]?(n.addIssue({code:"custom",path:["mermaid-curve"],message:`Cannot specify both a mermaid curve and a renderer. _Try removing one of the fields._ -**Example**: \`mermaid-curve: ${a["mermaid-curve"]}\`, or \`mermaid-renderer: ${a["mermaid-renderer"]}\``}),!1):!0)},vd={FIELDS:wD,build:yD};function ED(t,e){let r=[],o;try{o=(0,q6.parseYaml)(t)??{},H.debug("Codeblock > parsed_yaml >",o)}catch(s){return H.error("Codeblock > parse_source > ",s),r.push({path:"yaml",code:"invalid_yaml",message:"Invalid codeblock YAML. Check the console for more information (press `Ctrl + Shift + I` to open the console)."}),{parsed:null,errors:r}}let a=vd.build(o,e).safeParse(o);if(!a.success)return r.push(...Zu(a.error.issues,s=>s.path.join(".")).map(s=>({message:s.message,code:"invalid_field_value",path:s.path.map(i=>typeof i=="number"?i+1:i).join(" > ")}))),{errors:r,parsed:null};let n=Object.keys(a.data).filter(s=>!vd.FIELDS.includes(s));return n.length&&r.push({path:"yaml",code:"invalid_yaml",message:`The following is not a valid codeblock field: \`${n[0]}\`. Valid options are: ${jA(vd.FIELDS,"`",", or ")}`}),{parsed:a.data,errors:r}}function ID(t,e,r,o){let a=t;if(e["start-note"]){let n=mt.normalize(mt.ensure_ext(e["start-note"],"md")),s=o.app.metadataCache.getFirstLinkpathDest(n,a);s?a=s.path:r.push({path:"start-note",code:"invalid_field_value",message:`Could not find note \`${n}\` in your vault. Try a different path.`})}if(e["dataview-from"])try{let n=Ba.get_api(o.app)?.pages(e["dataview-from"],t);e["dataview-from-paths"]=n?.map(s=>s.file.path)}catch{r.push({path:"dataview-from",code:"invalid_field_value",message:`Input \`${e["dataview-from"]}\` is not a valid Dataview query. -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+=` +**Example**: \`depth: [0, 3]\`, or possibly: \`depth: [${t.depth?.[1]??0}, ${t.depth?.[0]??3}]\``}).default([0,1/0]),sort:et.preprocess(a=>{if(typeof a=="string"){let[n,s]=a.split(" ");return{field:n,order:s??"asc"}}else return a},et.object({field:Ht.schema.dynamic_enum([...bf,...e.edge_fields.map(a=>`neighbour-field:${a.label}`)],"sort"),order:et.union([et.enum(["asc","desc"]),et.literal(1),et.literal(-1)],{errorMap:(a,n)=>({message:Ht.error.invalid_enum("sort.order",["asc","desc"],n.data)})}).transform(a=>a==="asc"?1:a==="desc"?-1:a)})).default({order:1,field:"basename"})}).passthrough().default({}).transform(a=>{if(a["field-groups"]){let n=Tr(e.field_groups,a["field-groups"]);a.fields?a.fields=ha(a.fields.concat(n)):a.fields=n}return a}).superRefine((a,n)=>a["mermaid-curve"]&&a["mermaid-renderer"]?(n.addIssue({code:"custom",path:["mermaid-curve"],message:`Cannot specify both a mermaid curve and a renderer. _Try removing one of the fields._ +**Example**: \`mermaid-curve: ${a["mermaid-curve"]}\`, or \`mermaid-renderer: ${a["mermaid-renderer"]}\``}),!1):!0)},kA={FIELDS:FD,build:BD};function SD(t,e){let r=[],o;try{o=(0,L6.parseYaml)(t)??{},H.debug("Codeblock > parsed_yaml >",o)}catch(s){return H.error("Codeblock > parse_source > ",s),r.push({path:"yaml",code:"invalid_yaml",message:"Invalid codeblock YAML. Check the console for more information (press `Ctrl + Shift + I` to open the console)."}),{parsed:null,errors:r}}let a=kA.build(o,e).safeParse(o);if(!a.success)return r.push(...Zu(a.error.issues,s=>s.path.join(".")).map(s=>({message:s.message,code:"invalid_field_value",path:s.path.map(i=>typeof i=="number"?i+1:i).join(" > ")}))),{errors:r,parsed:null};let n=Object.keys(a.data).filter(s=>!kA.FIELDS.includes(s));return n.length&&r.push({path:"yaml",code:"invalid_yaml",message:`The following is not a valid codeblock field: \`${n[0]}\`. Valid options are: ${jf(kA.FIELDS,"`",", or ")}`}),{parsed:a.data,errors:r}}function CD(t,e,r,o){let a=t;if(e["start-note"]){let n=ht.normalize(ht.ensure_ext(e["start-note"],"md")),s=o.app.metadataCache.getFirstLinkpathDest(n,a);s?a=s.path:r.push({path:"start-note",code:"invalid_field_value",message:`Could not find note \`${n}\` in your vault. Try a different path.`})}if(e["dataview-from"])try{let n=Ca.get_api(o.app)?.pages(e["dataview-from"],t);e["dataview-from-paths"]=n?.map(s=>s.file.path)}catch{r.push({path:"dataview-from",code:"invalid_field_value",message:`Input \`${e["dataview-from"]}\` is not a valid Dataview query. +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 Jm={parse_source:SD,postprocess_options:CD};var bA=class extends R6.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 Or;H.debug("CodeblockMDRC.load"),this.containerEl.empty();let r=new Or,{parsed:o,errors:a}=Jm.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),Se(tn,{target:this.containerEl,props:{errors:a,plugin:this.plugin}});return}let{options:n,file_path:s}=Jm.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=Se(Zm,{target:this.containerEl,props:{errors:a,options:n,file_path:s,plugin:this.plugin}}):n.type==="mermaid"?this.component=Se(Km,{target:this.containerEl,props:{errors:a,options:n,file_path:s,plugin:this.plugin}}):n.type==="markmap"?this.component=Se(Wm,{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&&Jo(this.component)}};var ul=require("obsidian");var TD=M(''),OD=(t,e,r)=>e()(A(r)),MD=M('
');function Xm(t,e){ae(e,!0);let r=V(e,"label",3,""),o=V(e,"disabled_cb",3,c=>!1),a=V(e,"submit_cb",3,()=>{}),n=Le("");var s=MD(),i=w(s);{var l=c=>{var p=TD(),m=w(p,!0);b(p),oe(()=>De(m,r())),k(c,p)};ie(i,c=>{r()&&c(l)})}var u=S(i,2);Br(u);var f=S(u,2);f.__click=[OD,a,n],b(s),oe(c=>f.disabled=c,[()=>o()(A(n))]),Cn(u,()=>A(n),c=>Y(n,c)),k(t,s),ne()}Ve(["click"]);var Ln=require("obsidian");var wA=class extends Ln.Modal{constructor(r,o){super(r);this.active_file=uo(vt);this.plugin=o,this.options=o.settings.commands.list_index.default_options}onOpen(){if(!this.active_file){new Ln.Notice("No active file"),this.close();return}let{contentEl:r,plugin:o}=this;r.createEl("h2",{text:"Create List Index"}),Se(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=Tr(o.settings.edge_field_groups,this.options.field_group_labels)}}}),pe(r,{name:"Link Kind",desc:"Format to use for links",select:{options:_A,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)}}),Se(Qa,{target:r,props:{edge_sort_id:this.options.edge_sort_id,select_cb:a=>{this.options.edge_sort_id=a}}}),Se(en,{target:r,props:{show_attributes:this.options.show_attributes,select_cb:a=>{this.options.show_attributes=a}}}),Ur(o,r,{get:()=>this.options.show_node_options,set:a=>this.options.show_node_options=a},{save_and_refresh:!1}),new Ln.Setting(r).addButton(a=>a.setButtonText("Build & Copy to Clipboard").setCta().onClick(async()=>{H.debug("build_list_index options",this.options);let n=vf(o.graph,this.active_file.path,o.settings,this.options);n?(await navigator.clipboard.writeText(n),new Ln.Notice("List index copied to clipboard")):new Ln.Notice("No list items to copy"),this.close()}))}onClose(){this.contentEl.empty()}};var G6=require("obsidian"),yA=class extends G6.Modal{constructor(e,r){super(e),this.cb=r}onOpen(){this.cb(this)}onClose(){this.contentEl.empty()}};var Ws=require("obsidian");function ND(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):`[[${ht.drop_ext(o)}]]`}async function EA(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=Mv(uA(r,s=>s.edge_type),s=>s.map(i=>ND(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 f=i[l];if(f){let c=lA(f),p=ha(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{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?` +`),i));break}case"none":break}}async function $A(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 EA(t,e,o,r)}async function H6(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=$A(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 V6=require("obsidian");async function U6(t,e){let r=uo(vt);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 V6.Notice(`No matches found with attributes: ${e.fields.join(", ")}`);return}}function z6(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 W6(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=ht.normalize(ht.ensure_ext(M_(r.target_path_template,n),"md"));H.debug("thread > target_path",s);let i=null;try{i=await t.app.vault.create(s,"")}catch(f){let c=`Error creating file "${s}". ${f instanceof Error?f.message:f}`;new ll.Notice(c),H.error("thread > create file error",c);return}let l=new Kr;new ri(new kt(i.path,[],!0,!1,!1)).add_to_batch(l),new cf(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(f=>f.edge_type===e&&f.target_path(t.graph)===i.path);u&&await Promise.all([EA(t,a,[u],r),o.leaf.openFile(i)])}function K6(t){t.addCommand({id:"breadcrumbs:rebuild-graph",name:"Rebuild graph",callback:async()=>await t.rebuildGraph()}),Object.keys(ra).forEach(e=>{t.addCommand({id:`breadcrumbs:open-${e}-view`,name:`Open ${e} view`,callback:()=>t.activateView(ra[e])})}),t.addCommand({id:"breadcrumbs:create-list-index",name:"Create list index",callback:()=>{new wA(t.app,t).open()}}),t.addCommand({id:"breadcrumbs:graph-stats",name:"Show/Copy graph stats",callback:async()=>{let e=z6(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=uo(vt);e&&(await $A(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 yA(t.app,r=>{Se(Xm,{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 Or,n=new ul.Notice("Freezing implied edges to all notes in vault...");await Promise.all(t.app.vault.getMarkdownFiles().map(s=>$A(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:()=>U6(t,{fields:e.fields})})}),t.settings.edge_fields.forEach(({label:e})=>{t.addCommand({id:`breadcrumbs:thread-field:${e}`,name:`Thread by field:${e}`,callback:()=>W6(t,e,t.settings.commands.thread.default_options)})})}var IA=["up","down","same","prev","next"];function PD(t){switch(t){case"up":return"down";case"down":return"up";case"same":return"same";case"next":return"prev";case"prev":return"next"}}function Z6(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:IA.reduce((a,n)=>({...a,[n]:o[n]}),{}),implied_relationships:r})),delete e.userHiers,delete e.impliedRelations}if(e.hierarchies&&(IA.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=ha(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":{IA.forEach(s=>{let i=n[s],l=n[PD(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 "${ze["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={...kf.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 Y6=require("obsidian"),DA=class extends Y6.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 J6=require("obsidian");var qD=M('
No paths found
'),LD=M('
');function Qm(t,e){ae(e,!0);let[r,o]=Cr(),a=()=>Sr(vt,"$active_file_store",r),n=V(e,"plugin",7);H.debug("Rendering Tree side view");let s=pt(structuredClone(pr(n().settings.views.side.tree)));mt(()=>{n().settings.views.side.tree=pr(s),Ge(()=>void n().saveSettings())});let i=Ae(()=>Tr(n().settings.edge_field_groups,s.field_group_labels)),l=Ae(()=>mo(s.edge_sort_id.field,s.edge_sort_id.order===-1)),u=Ae(a),f=Ae(()=>{if(A(u)&&n().graph.has_node(A(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],A(i),5,100,!s.merge_fields,void 0),new po(A(l),!1))):n().graph.rec_traverse_and_process(new Nt([A(u).path],A(i),5,100,!s.merge_fields,void 0),new po(A(l),!1))}),c=Ae(()=>{let q=A(l);return Ge(()=>A(f)===null||A(f)===void 0?void 0:A(f).sort(n().graph,q)),{tree:A(f)}}),p=Ae(()=>hr(n().settings,s.show_node_options));var m=LD(),h=w(m),y=w(h),E=w(y);sf(E,{cls:"clickable-icon nav-action-button",get plugin(){return n()}});var D=S(E,2);{let q=Ae(()=>A(u)?.path);nf(D,{cls:"clickable-icon nav-action-button",get active_path(){return A(q)},get lock_view(){return s.lock_view},set lock_view(re){s.lock_view=re},get lock_path(){return s.lock_path},set lock_path(re){s.lock_path=re}})}var L=S(D,2);Hs(L,{cls:"clickable-icon nav-action-button",exclude_fields:[],get edge_sort_id(){return s.edge_sort_id},set edge_sort_id(q){s.edge_sort_id=q}});var F=S(L,2);Vs(F,{cls:"clickable-icon nav-action-button",get show_attributes(){return s.show_attributes},set show_attributes(q){s.show_attributes=q}});var x=S(F,2);af(x,{cls:"clickable-icon nav-action-button",get collapse(){return s.collapse},set collapse(q){s.collapse=q}});var $=S(x,2);rf($,{cls:"clickable-icon nav-action-button",get merge_fields(){return s.merge_fields},set merge_fields(q){s.merge_fields=q}});var C=S($,2);Gs(C,{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(q){s.field_group_labels=q}}),b(y),b(h);var v=S(h,2),B=w(v);lo(B,()=>A(c),q=>{var re=X(),ge=J(re);{var le=R=>{{let K=Ae(()=>!s.collapse);zs(R,{get plugin(){return n()},get node_stringify_options(){return A(p)},get show_attributes(){return s.show_attributes},get data(){return A(c).tree},get items(){return A(c).tree.entry_nodes},get open_signal(){return A(K)}})}},Be=R=>{var K=qD();k(R,K)};ie(ge,R=>{A(c).tree&&!A(c).tree.is_empty()?R(le):R(Be,!1)})}k(q,re)}),b(v),b(m),k(t,m),ne(),o()}var FA=class extends J6.ItemView{constructor(r,o){super(r);this.icon="tree-pine";this.plugin=o}getViewType(){return ra.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=Se(Qm,{target:this.contentEl,props:{plugin:this.plugin}})}async onClose(){this.component&&await Jo(this.component)}};var uf=(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))(uf||{}),BA=class extends ka.Plugin{async onload(){await this.loadSettings(),await this.backup_old_settings(),this.settings=Z6(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 ka.Events,this.events.on("graph-update",()=>{this.refreshViews()}),this.events.on("redraw-page-views",()=>{of(this)}),await S_({module_or_path:q6}),this.graph=F_(),this.graph.set_update_callback(()=>{queueMicrotask(()=>this.events.trigger("graph-update"))}),this.addSettingTab(new gA(this.app,this)),this.registerEvent(this.app.workspace.on("file-menu",this.handleFileMenu.bind(this))),this.api=new vA(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 DA(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(V_))this.getMetdataPropertyType(e)!==r&&await this.app.metadataTypeManager.setType(e,r)}catch(e){H.error("metadataTypeManager.setType error >",e)}if(await Ca.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"&&(vt.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 ka.TFile&&e.extension==="md"){let r=new Kr;new ri(new kt(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 ka.TFile&&e.extension==="md"){let o=new Kr;new hf(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 ka.TFile&&e.extension==="md"){let r=new Kr;new _f(e.path).add_to_batch(r),this.graph.apply_update(r)}})),this.registerView(ra.matrix,e=>new jA(e,this)),this.registerView(ra.tree,e=>new FA(e,this))}),this.registerMarkdownCodeBlockProcessor("breadcrumbs",(e,r,o)=>{let a=new bA(this,r,e,o.sourcePath);o.addChild(a)}),K6(this),H.debug("loaded Breadcrumbs plugin")}onunload(){}async loadSettings(){this.settings=XA(await this.loadData()??{},kf)}handleFileMenu(e,r){r instanceof X6.TFolder&&e.addItem(o=>{o.setTitle("Freeze implied edges in folder").setIcon("pin").onClick(()=>H6(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 Or,r=this.settings.commands.rebuild_graph.notify?new ka.Notice("Rebuilding graph"):null,a=(await Rv(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)}getMetdataPropertyType(e){return"getAssignedWidget"in this.app.metadataTypeManager?this.app.metadataTypeManager.getAssignedWidget(e):this.app.metadataTypeManager.getAssignedType(e)}}; /*! Bundled license information: diff --git a/.obsidian/plugins/breadcrumbs/manifest.json b/.obsidian/plugins/breadcrumbs/manifest.json index 7678070d..2f02b171 100644 --- a/.obsidian/plugins/breadcrumbs/manifest.json +++ b/.obsidian/plugins/breadcrumbs/manifest.json @@ -1,7 +1,7 @@ { "id": "breadcrumbs", "name": "Breadcrumbs", - "version": "4.4.4", + "version": "4.5.0", "minAppVersion": "1.0.0", "description": "Add structured hierarchies to your notes", "author": "SkepticMystic", diff --git a/.obsidian/plugins/editing-toolbar/main.js b/.obsidian/plugins/editing-toolbar/main.js index 8aee7ded..1d0025c8 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"),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})} +"use strict";var e=require("obsidian"),t=require("@codemirror/language"),o=require("@codemirror/state"),n=require("@codemirror/view");const i=["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,n){let i,a={index:-1,subindex:-1},s=n;return o?s.forEach((e,o)=>{if("SubmenuCommands"in e&&(i=e.SubmenuCommands.findIndex(e=>e.id==t.id),i>=0))return a={index:o,subindex:i},a}):(i=s.findIndex(e=>e.id==t.id),a={index:i,subindex:-1}),a}function r(e,t){const o=t.getLine(t.getCursor().line);let n,i="";const a=/^(\s*(?:>\s*)*(?:\[[!\w]+\]\s*)?)#{1,6}\s+/,s=/^(?:\s*(?:>\s*)*(?:\[[!\w]+\]\s*)?)?(?:(?:#{1,6}\s+)|(?:[-+*]\s+)|(?:\d+\.\s+)|(?:\[[ xX]\]\s+))+/,r=o.match(a),l=r?.[0]?.trim();e===l||""===e?n=o.replace(a,"$1"):(n=o.replace(s,"").trimStart(),n=`${e} ${n}`),i=""!==n?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,n),t.setCursor({line:t.getCursor().line,ch:Number(n.length-i.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 n=/]+["']?>(.*?)<\/font>/gms,i=n.test(o);if(a=o,new RegExp(`^(.+)<\\/font>$`,"ms").test(a.trim()))return;var a;const s=o.replace(n,(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=i?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 i;i=n?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=n?0:``.length;return t.anchor.line{"OrderedList"===e.name&&(d=e.to)}}),d>=0){const e=i.offsetToPos(d).line+1;e=0?i.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 n of o){const o=n.trim(),i=/^\d+\.\s/.test(o),a=n.match(/^\s*/)?.[0]||"";if(i){const n=a.length;e[n]=n!==t?1:(e[n]||1)+1,h.push(`${a}${e[n]}. ${o.replace(/^\d+\.\s/,"")}`),t=n}else h.push(n),t=-1}}i.replaceRange(h.join("\n"),{line:n,ch:0},{line:n+o.length-1,ch:i.getLine(n+o.length-1).length})}function m(e,t,o){const n=[];for(let i=t;i<=o;i++)n.push(e.getLine(i));d(n,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.Type [[]] to reference document content.","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",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 自定义改写",History:"历史记录","No history":"暂无历史记录",Send:"发送","Custom Prompt Templates":"自定义提示词模板","Manage quick-access templates for custom AI prompts":"管理快速访问的自定义 AI 提示词模板","Edit Template":"编辑模板","Add Template":"添加模板","Template Name":"模板名称","Prompt Content":"提示词内容","Enter template name":"输入模板名称","Enter prompt content":"输入提示词内容","Template name and content cannot be empty":"模板名称和内容不能为空","Describe what you want AI to do...":"描述你想让 AI 做什么...","Manage Templates":"管理模板","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":"插入到光标处",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,n,i){super(e.app),this.customCallback=null,this.plugin=e,this.command=t,this.issub=o,this.customCallback=n||null,this.setPlaceholder(w("Choose an icon")),this.currentEditingConfig=i||""}capitalJoin(e){return e.split(" ").map(e=>e[0].toUpperCase()+e.substring(1)).join(" ")}getItems(){return i}getItemText(e){return this.capitalJoin(e.replace("feather-","").replace("remix-","").replace("bx-","").replace(/([A-Z])/g," $1").trim().replace(/-/gi," "))}renderSuggestion(t,o){const n=createSpan({cls:"editingToolbarIconPick"});o.appendChild(n),e.setIcon(n,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,n,i,a){super(e),this.customCallback=null,this.plugin=t,this.item=o,this.issub=n,this.customCallback=i||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),n=s(this.plugin,this.item,this.issub,o);if(this.issub){let t=n.subindex;-1===t?this.plugin.settings.menuCommands[n.index].SubmenuCommands.push(this.item):this.plugin.settings.menuCommands[n.index].SubmenuCommands[t].icon=e}else{let e=n.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,n,i){super(t.app),this.plugin=t,this.item=o,this.issub=n,this.currentEditingConfig=i||"",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 n=o.subindex;-1===n?t[o.index].SubmenuCommands.push(this.item):t[o.index].SubmenuCommands[n].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"}),n=o.createDiv({cls:"vertical-slider-container"});n.createEl("p",{text:w("Vertical Position")});const i=o.createDiv({cls:"horizontal-slider-container"});i.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(n).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(i).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"}],A={mode:"smart",completion:"04-fast",rewrite:"04-fast",reasoning:"03-agent",artifact:"03-agent"};function I(e,t){const o=e.pkmerModelRouting??A;if("smart"===o.mode)return A[t];const n=o[t]?.trim();return n||A[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",L="editing-toolbar-pkmer-ai-token",O="editing-toolbar-custom-model-api-key",F="https://api.pkmer.cn/api/v1/oauth/authorize",q="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:A,pkmer:{tokenExpiresAt:0,userInfo:null},enableCustomModel:!1,customModel:{apiFormat:"openai-compatible",baseUrl:"",apiKey:"",model:"",temperature:.2},customPromptHistory:[],customPromptTemplates:[{id:"template-demo-variables",name:"📝 总结要点",prompt:"分析 {{file:content}} 的内容结构,重点关注:\n{{selection}}\n\n请提供:\n1. 内容概要\n2. 关键要点\n3. 改进建议",icon:"lucide-sparkles"},{id:"template-task-variables",name:"提炼任务",prompt:'当前日期{{date}},从 {{file:content}} 中提取所有待办事项,重点关注:\n{{selection}}\n\n请严格按 Obsidian Tasks 插件格式输出,每条任务单独一行:\n\n- [ ] 任务描述 ⏫/🔼/🔽/⏬ 优先级\n- [ ] 任务描述 📅 YYYY-MM-DD 截止日期\n- [ ] 任务描述 ⏰ YYYY-MM-DD HH:mm 提醒时间\n- [ ] 任务描述 🛫 YYYY-MM-DD 开始日期\n- [ ] 任务描述 🔁 every day/week/month 重复周期\n- [ ] 任务描述 #标签 #项目名\n\n提取规则:\n1. 如果原文提到"紧急/马上/立即/今天",添加 ⏫(最高优先级)\n2. 如果提到"明天/本周/尽快",添加 🔼(高优先级)\n3. 如果提到具体日期,转换为 📅 YYYY-MM-DD 格式\n4. 如果提到时间,转换为 ⏰ YYYY-MM-DD HH:mm 格式\n5. 如果提到周期性工作,添加 🔁 every week/month\n6. 为每个任务添加合适的标签(如 #工作 #会议 #跟进)\n\n示例输出:\n- [ ] 完成项目报告 ⏫ 📅 2026-04-25 #工作\n- [ ] 每周团队例会 🔁 every week on Monday ⏰ 09:00 #会议\n- [ ] 跟进客户需求 🔼 📅 2026-04-23 #跟进',icon:"lucide-sparkles"},{id:"template-dataview",name:"生成 Dataview",prompt:"根据我的需求,帮我生成一个 Obsidian Dataview 查询代码块。要求:\n1. 使用 DataviewJS 或 DQL 语法\n2. 包含必要的字段筛选和排序\n3. 添加注释说明每个部分的作用\n4. 如果需要复杂逻辑,使用 DataviewJS\n\n我的需求:",icon:"lucide-database"},{id:"template-templater",name:"设计 Templater 模板",prompt:"帮我设计一个 Obsidian Templater 模板。要求:\n1. 使用 Templater 语法 (<% %>)\n2. 包含动态日期、时间等变量\n3. 支持用户输入提示\n4. 添加必要的条件判断和循环\n5. 注释说明每个部分的用途\n\n模板用途:",icon:"lucide-file-code"},{id:"template-mermaid",name:"绘制 Mermaid 图表",prompt:"根据我选中的文本内容 {{selection}},生成 Mermaid 图表代码。要求:\n1. 选择合适的图表类型(流程图/时序图/类图/甘特图等)\n2. 使用清晰的节点命名\n3. 添加必要的样式和注释\n4. 确保语法正确可渲染\n",icon:"lucide-workflow"},{id:"template-metadata",name:"设计 YAML",prompt:"根据当前笔记内容 {{file:content}},帮我设计一个适合当前笔记的 YAML Frontmatter 元数据结构。要求:\n1. 根据笔记内容推荐合适的字段\n2. 包含常用字段(tags, aliases, date等)\n3. 添加自定义字段建议\n4. 注释说明每个字段的用途\n\n笔记类型:",icon:"lucide-file-json"},{id:"template-callout",name:"使用Callout包装",prompt:"根据我选中的文本内容 {{selection}},帮我使用 Obsidian Callout 块进行包装。要求:\n1. 选择合适的 callout 类型(note/tip/warning/danger等)\n2. 支持嵌套和折叠\n3. 包含标题和内容\n4. 可以包含代码块或列表\n\n内容需求:",icon:"lucide-message-square"}]}};class j{static isAllowedViewType(e,t){if(!e)return!1;const o=e.getViewType(),n=window.app?.plugins?.plugins?.["editing-toolbar"];if(n?.settings?.viewTypeSettings&&void 0!==n.settings.viewTypeSettings[o])return n.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}(),n=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()})};n(X),o&&o.forEach(e=>{e?.containerEl&&n(e.containerEl)}),t&&t.clearToolbarCache()}function te(t,o,n,i){const a=i||t.workspace.activeLeaf?.view?.containerEl?.ownerDocument||(e.requireApiVersion("0.15.0")?activeWindow.document:window.document);X=a;const s=n||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 ne(e,t){return e&&void 0!==e[1][0]?t+e.flat(2).join("+").replace("Mod","Ctrl")+t:t+"–"+t}function ie(e,t,o=!0){let n=e.commands.findCommand(t),i=o?"*":"";if(n){let t=n.hotkeys?[[oe(n.hotkeys,[0,"modifiers"])],[oe(n.hotkeys,[0,"key"])]]:void 0,o=e.hotkeyManager.customKeys[n.id];var a=o?[[oe(o,[0,"modifiers"])],[oe(o,[0,"key"])]]:void 0;return a?ne(a,i):ne(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,n){const i=n.commandsManager.getActiveEditor(),a=i&&i.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,n,i,a){if(n<=100)return!1;return t+o+6*Math.max(1,Math.round(t/Math.max(i,1)))+(i+12)+("following"===a?i+10:0)+(e.Platform.isMobileApp||"mobile"===a?14:0)>=Math.max(n-16,2*i)}function pe(t,o,n){X=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const i=o.commandsManager.getActiveEditor();let a=te(t,o),s=a?.querySelector("#"+n);if(s){let e=s.rows,t=e.length;for(let a=1;a{t.style.fill=e})}else if("x-backgroundcolor-picker-table"==n){o.settings.cMenuBackgroundColor=e,c(e,i),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 n=t.ownerDocument.defaultView??window,i=e.getBoundingClientRect(),a=Math.max(t.offsetWidth,t.scrollWidth),s=Math.max(t.offsetHeight,t.scrollHeight),r=Math.max(12,n.innerWidth-a-12);let l=i.right-a;a<=0&&(l=i.left),l=Math.min(Math.max(l,12),r);let c=i.bottom+8;s>0&&c+s>n.innerHeight-12&&(c=Math.max(12,i.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"),n=[],i=!1,a=0,s=!1;for(let t=0;t+)\s*\[\!([\w\s]*)\]\s*(.*?)$/);if(!r||s)if(i){let e=o.match(/^(>+)\s*/);if(e&&e[1].length>=a){let e=o.replace(new RegExp(`^>{${a}}\\s*`),"");n.push(e)}else i=!1,n.push(o)}else n.push(o);else a=r[1].length,s=!0,r[3].trim()&&n.push(r[3].trim()),i=!0}return void t.replaceSelection(n.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,n,i,a=!1,s){const r=s||i?.cm?.dom?.ownerDocument||i?.cm?.contentDOM?.ownerDocument||t.workspace.activeLeaf?.view?.containerEl?.ownerDocument||(e.requireApiVersion("0.15.0")?activeWindow.document:window.document);let l=te(t,n,"following",r);const c=t.workspace.getActiveViewOfType(e.ItemView);if(!j.isAllowedViewType(c))return void(l&&(l.style.visibility="hidden"));if(!(n.settings.enableFollowingToolbar||!n.settings.enableTopToolbar&&!n.settings.enableFixedToolbar&&"following"===n.positionStyle))return;l||(Ce(t,n,"following",r),l=te(t,n,"following",r));const d=c?.getViewType(),m="markdown"===d;let u=30;if(u="tiny"===n.settings.aestheticStyle?30:o+14,m)if(j.isSourceMode(c)){if(l){const e=a||i.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(),n=e.offsetWidth,i=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+n>s-m&&(u=s-m-n-a);u=Math.max(0,u);let p=function(e,t,o,n){const i=e.getCursor("from"),a=e.getCursor("to"),s=e.coordsAtPos(a),r=i.line===a.line;let l=t.top-n-10;if(r)l<=o.top&&(l=s.bottom+10);else{if(e.getCursor("head").ch==e.getCursor("from").ch)l=t.top-n-10,l<=o.top&&(l=o.top+2*n);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 n=e.posToOffset(o);t=e.cm.coordsAtPos?.(n)??e.coordsAtPos(n)}}return t})(e);l=t.bottom+10,l>=o.bottom-n&&(l=o.bottom-2*n)}}return l}(t,l,o,i);p=Math.max(0,p),e.style.left=`${u}px`,e.style.top=`${p}px`}(l,i))}}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,n,i){const a=o.settings,s=i||t.workspace.activeLeaf?.view?.containerEl?.ownerDocument||(e.requireApiVersion("0.15.0")?activeWindow.document:window.document);if(X=s,!n){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=n;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 n(e,t){Object.values(p).forEach(t=>{e.removeClass(t)});const o=p[t]||p.default;e.addClass(o)}const i=()=>{let i=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",n(h,d),n(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 n=t.workspace.activeLeaf.view.getViewType(),i=Q[n];if(i&&(o=e?.querySelector(i)),!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"===n?e?.querySelector(".view-content"):null;"canvas"===n&&a?(a.insertAdjacentElement("beforebegin",h),e?.querySelector("#editingToolbarPopoverBar")||a.insertAdjacentElement("beforebegin",g)):(e?.querySelector("#editingToolbarPopoverBar")||("excalidraw"==n?o.insertAdjacentElement("afterend",g):o.insertAdjacentElement("afterbegin",g)),"excalidraw"==n?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((n,s)=>{let c;if("SubmenuCommands"in n){let d;ue(i,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(n.icon)?d.buttonEl.innerHTML=n.icon:d.setIcon(n.icon),i+=p+2;if("dropdown"===(n.menuType||"submenu")){d.setClass("editingToolbarDropdownButton");let i=ie(t,n.id);c=v(n.name,i),d.setTooltip(c),d.onClick(i=>{const s=new e.Menu;n.SubmenuCommands.forEach(e=>{"editingToolbar-Divider-Line"===e.id?(s.addSeparator(),s.addItem(t=>{t.setTitle(w(e.name)).setDisabled(!0),se(t,"")})):s.addItem(n=>{const i=ie(t,e.id,!1),s=w(e.name),l="–"!==i?`${s}`:s;if(n.setTitle(l).onClick(()=>{t.commands.executeCommandById(e.id);const n=o.commandsManager.getActiveEditor(),i=n&&n.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?i||(h.style.visibility="hidden"):h.style.visibility="visible"}),se(n,e.icon),"—"!==i){n.dom.createSpan({cls:"menu-item-hotkey"}).setText(i)}})}),s.dom.addClass("editing-toolbar-dropdown-menu"),s.showAtMouseEvent(i)})}else{let i=function(e){let t=createEl("div");return t.addClass(e),t}("subitem");i&&n.SubmenuCommands.forEach(n=>{let l=ie(t,n.id);c=v(n.name,l);let m=new e.ButtonComponent(i).setTooltip(c).setClass("menu-item").onClick(()=>{t.commands.executeCommandById(n.id);const e=o.commandsManager.getActiveEditor(),i=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?i||(h.style.visibility="hidden"):h.style.visibility="visible"});s=a.cMenuNumRows?u.setClass("editingToolbarSecond"):"top"!==r&&u.buttonEl.setAttribute("aria-label-position","top"),ae(n.icon)?u.buttonEl.innerHTML=n.icon:u.setIcon(n.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),i+=c;const C=async n=>{v=Date.now()+240;const i="unavailable"!==await o.aiManager.getToolbarRouteState(),s=o.commandsManager.getActiveEditor(),l=ie(t,"editing-toolbar:ai-inline-completion",!1),c=l.includes("+")?l:"",d=new e.Menu,m=()=>{d.hide()},u=t=>{const n=async()=>{if(!i)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(n),t.hotkey){e.dom.createSpan({cls:"menu-item-hotkey"}).setText(t.hotkey)}})},p=(t,n,s)=>{d.addItem(l=>{l.setTitle(w(t)).setIcon(n);const c=l.setSubmenu();s.forEach(t=>{c.addItem(n=>{if(n.setTitle(w(t.title)).setIcon(t.icon).onClick(async()=>{if(!i)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){n.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(n)};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(n.id);const e=o.commandsManager.getActiveEditor(),i=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?i||(h.style.visibility="hidden"):h.style.visibility="visible"}),ae(n.icon)?s.buttonEl.innerHTML=n.icon:s.setIcon(n.icon),i+=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 n=l.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(n).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(n).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[0];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"==n.id){let s=new e.ButtonComponent(h);s.setClass("editingToolbarCommandsubItem-font-color").setTooltip(w("Background Color")).onClick(()=>{t.commands.executeCommandById(n.id);const e=o.commandsManager.getActiveEditor(),i=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?i||(h.style.visibility="hidden"):h.style.visibility="visible"}),ae(n.icon)?s.buttonEl.innerHTML=n.icon:s.setIcon(n.icon),i+=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 n=l.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(n).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(n).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[0];o?.click(),setTimeout(()=>{let e=t.setting.activeTab.containerEl.querySelector(".custom_bg");e&&e.addClass?.("toolbar-cta")},100)}},200)})}}else{let d;ue(i,p,l,p,r)?(o.setIS_MORE_Button(!0),d=new e.ButtonComponent(b(!0))):d=new e.ButtonComponent(h);let m=ie(t,n.id);c=v(n.name,m),d.setTooltip(c).onClick(()=>{t.commands.executeCommandById(n.id);const e=o.commandsManager.getActiveEditor(),i=e&&e.somethingSelected();0==a.cMenuVisibility?h.style.visibility="hidden":"following"===r?i||(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"==n.id&&d.setClass("editingToolbar-Divider-Line"),ae(n.icon)?d.buttonEl.innerHTML=n.icon:d.setIcon(n.icon),i+=p}}),ge(t,o,h),Math.abs(o.settings.cMenuWidth-Number(i))>i+4&&(o.settings.cMenuWidth=Number(i),setTimeout(()=>{o.saveSettings()},100))};if(!o.isLoadMobile())return;const l=t.workspace.getActiveViewOfType(e.ItemView);if(j.isAllowedViewType(l)){const n=te(t,o,r,s);if(n&&"top"!==r)return a.cMenuVisibility?"following"===r?(n.style.visibility="hidden",n.style.display=""):(n.style.visibility="visible",n.style.display=""):n.style.display="none",m&&n.style.setProperty("--editing-toolbar-background-color",m),u&&n.style.setProperty("--editing-toolbar-icon-color",u),void(c&&n.style.setProperty("--toolbar-icon-size",`${c}px`));if(i(),"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 n=X.querySelectorAll("#change-font-color-icon"),i=X.querySelectorAll("#change-background-color-icon");n.length>0&&n.forEach(e=>{e.style.fill=t});i.length>0&&i.forEach(e=>{e.style.fill=o})} /**! * Sortable 1.15.7 * @author RubaXa * @author owenm * @license MIT - */(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} + */(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 n=o.call(e,t||"default");if("object"!=typeof n)return n;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,n){if(e){o=o||document;do{if(null!=t&&(">"===t[0]?e.parentNode===o&&qe(e,t):qe(e,t))||n&&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 n=(" "+e.className+" ").replace(_e," ").replace(" "+t+" "," ");e.className=(n+(o?" "+t:"")).replace(_e," ")}}function ze(e,t,o){var n=e&&e.style;if(n){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 n||-1!==t.indexOf("webkit")||(t="-webkit-"+t),n[t]=o+("string"==typeof o?"":"px")}}function Ue(e,t){var o="";if("string"==typeof e)o=e;else do{var n=ze(e,"transform");n&&"none"!==n&&(o=n+" "+o)}while(!t&&(e=e.parentNode));var i=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return i&&new i(o)}function Ve(e,t,o){if(e){var n=e.getElementsByTagName(t),i=0,a=n.length;if(o)for(;i=a:i<=a))return n;if(n===He())break;n=Je(n,!1)}return!1}function Ke(e,t,o,n){for(var i=0,a=0,s=e.children;a2&&void 0!==arguments[2]?arguments[2]:{},n=o.evt,i=function(e,t){if(null==e)return{};var o,n,i=function(e,t){if(null==e)return{};var o={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;o[n]=e[n]}return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=n&&"none"===o[jt]||a&&"none"===o[jt]&&l+c>n)?"vertical":"horizontal"},Zt=function(e){function t(e,o){return function(n,i,a,s){var r=n.options.group.name&&i.options.group.name&&n.options.group.name===i.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(n,i,a,s),o)(n,i,a,s);var l=(o?n:i).options.group.name;return!0===e||"string"==typeof e&&e===l||e.join&&e.indexOf(l)>-1}}var o={},n=e.group;n&&"object"==Te(n)||(n={name:n}),o.name=n.name,o.checkPull=t(n.pull,!0),o.checkPut=t(n.put),o.revertClone=n.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=(i=e.clientX,a=e.clientY,Bt.some(function(e){var t=e[nt].options.emptyInsertThreshold;if(t&&!Ye(e)){var o=We(e),n=i>=o.left-t&&i<=o.right+t,r=a>=o.top-t&&a<=o.bottom+t;return n&&r?s=e:void 0}}),s);if(t){var o={};for(var n in e)e.hasOwnProperty(n)&&(o[n]=e[n]);o.target=o.rootEl=t,o.preventDefault=void 0,o.stopPropagation=void 0,t[nt]._onDragOver(o)}}var i,a,s},eo=function(e){mt&&mt.parentNode[nt]._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[nt]=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 n in rt.initializePlugins(this,e,o),o)!(n in t)&&(t[n]=o[n]);for(var i in Zt(t),this)"_"===i.charAt(0)&&"function"==typeof this[i]&&(this[i]=this[i].bind(this));this.nativeDraggable=!t.forceFallback&&Kt,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?Oe(e,"pointerdown",this._onTapStart):(Oe(e,"mousedown",this._onTapStart),Oe(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(Oe(e,"dragover",this),Oe(e,"dragenter",this)),Bt.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),ve(this,it())}function oo(e,t,o,n,i,a,s,r){var l,c,d=e[nt],m=d.options.onMove;return!window.CustomEvent||Ee||Ae?(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=n,l.related=i||t,l.relatedRect=a||We(t),l.willInsertAfter=r,l.originalEvent=s,e.dispatchEvent(l),m&&(c=m.call(d,l,s)),c}function no(e){e.draggable=!1}function io(){Ut=!1}function ao(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,o=t.length,n=0;o--;)n+=t.charCodeAt(o);return n.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||(Lt=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,n=this.options,i=n.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=n.filter;if(function(e){Vt.length=0;var t=e.getElementsByTagName("input"),o=t.length;for(;o--;){var n=t[o];n.checked&&Vt.push(n)}}(o),!mt&&!(/mousedown|pointerdown/.test(a)&&0!==e.button||n.disabled)&&!l.isContentEditable&&(this.nativeDraggable||!Me||!r||"SELECT"!==r.tagName.toUpperCase())&&!((r=Re(r,n.draggable,o,!1))&&r.animated||ft===r)){if(Ct=Ge(r),vt=Ge(r,n.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(i&&e.preventDefault())}else if(c&&(c=c.split(",").some(function(n){if(n=Re(l,n.trim(),o,!1))return dt({sortable:t,rootEl:n,name:"filter",targetEl:r,fromEl:o,toEl:o}),ct("filter",t,{evt:e}),!0})))return void(i&&e.preventDefault());n.handle&&!Re(l,n.handle,o,!1)||this._prepareDragStart(e,s,r)}}},_prepareDragStart:function(e,t,o){var n,i=this,a=i.el,s=i.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",n=function(){ct("delayEnded",i,{evt:e}),to.eventCanceled?i._onDrop():(i._disableDelayedDragEvents(),!Ie&&i.nativeDraggable&&(mt.draggable=!0),i._triggerDragStart(e,t),dt({sortable:i,name:"choose",originalEvent:e}),$e(mt,s.chosenClass,!0))},s.ignore.split(",").forEach(function(e){Ve(mt,e.trim(),no)}),Oe(r,"dragover",Qt),Oe(r,"mousemove",Qt),Oe(r,"touchmove",Qt),s.supportPointer?(Oe(r,"pointerup",i._onDrop),!this.nativeDraggable&&Oe(r,"pointercancel",i._onDrop)):(Oe(r,"mouseup",i._onDrop),Oe(r,"touchend",i._onDrop),Oe(r,"touchcancel",i._onDrop)),Ie&&this.nativeDraggable&&(this.options.touchStartThreshold=4,mt.draggable=!0),ct("delayStart",this,{evt:e}),!s.delay||s.delayOnTouchOnly&&!t||this.nativeDraggable&&(Ae||Ee))n();else{if(to.eventCanceled)return void this._onDrop();s.supportPointer?(Oe(r,"pointerup",i._disableDelayedDrag),Oe(r,"pointercancel",i._disableDelayedDrag)):(Oe(r,"mouseup",i._disableDelayedDrag),Oe(r,"touchend",i._disableDelayedDrag),Oe(r,"touchcancel",i._disableDelayedDrag)),Oe(r,"mousemove",i._delayedDragTouchMoveHandler),Oe(r,"touchmove",i._delayedDragTouchMoveHandler),s.supportPointer&&Oe(r,"pointermove",i._delayedDragTouchMoveHandler),i._dragStartTimer=setTimeout(n,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&&no(mt),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;Fe(e,"mouseup",this._disableDelayedDrag),Fe(e,"touchend",this._disableDelayedDrag),Fe(e,"touchcancel",this._disableDelayedDrag),Fe(e,"pointerup",this._disableDelayedDrag),Fe(e,"pointercancel",this._disableDelayedDrag),Fe(e,"mousemove",this._delayedDragTouchMoveHandler),Fe(e,"touchmove",this._delayedDragTouchMoveHandler),Fe(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?Oe(document,"pointermove",this._onTouchMove):Oe(document,t?"touchmove":"mousemove",this._onTouchMove):(Oe(mt,"dragend",this),Oe(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&&Oe(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[nt]._isOutsideThisEl(e),t)do{if(t[nt]){if(t[nt]._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,n=t.fallbackOffset,i=e.touches?e.touches[0]:e,a=pt&&Ue(pt,!0),s=pt&&a&&a.a,r=pt&&a&&a.d,l=Wt&&qt&&Ze(qt),c=(i.clientX-St.clientX+n.x)/(s||1)+(l?l[0]-zt[0]:0)/(s||1),d=(i.clientY-St.clientY+n.y)/(r||1)+(l?l[1]-zt[1]:0)/(r||1);if(!to.active&&!Nt){if(o&&Math.max(Math.abs(i.clientX-this._lastX),Math.abs(i.clientY-this._lastY))i.right+a||e.clientY>n.bottom&&e.clientX>n.left:e.clientY>i.bottom+a||e.clientX>n.right&&e.clientY>n.top}(e,i,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,L(),D(!0)}else if(g&&function(e,t,o){var n=We(Ke(o.el,0,o.options,!0)),i=ot(o.el,o.options,pt),a=10;return t?e.clientXd+c*a/2:lm-Ft)return-Ot}else if(l>d+c*(1-i)/2&&lm-c*a/2))return l>d+c/2?1:-1;return 0}(e,s,o,i,v?1:r.swapThreshold,null==r.invertedSwapThreshold?r.swapThreshold:r.invertedSwapThreshold,$t,Lt===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);Lt=s,Ot=b;var E=s.nextElementSibling,A=!1,I=oo(ht,a,mt,t,s,o,e,A=1===b);if(!1!==I)return 1!==I&&-1!==I||(A=1===I),Ut=!0,setTimeout(io,30),P(),A&&!E?a.appendChild(mt):s.parentNode.insertBefore(mt,A?E:s),k&&et(k,0,T-k.scrollTop),ut=mt.parentNode,void 0===y||$t||(Ft=Math.abs(y-We(s)[x])),L(),D(!0)}if(a.contains(mt))return D(!1)}return!1}function M(r,l){ct(r,p,ke({evt:e,isOwner:d,axis:i?"vertical":"horizontal",revert:n,dragRect:t,targetRect:o,canSort:m,fromSortable:u,target:s,completed:D,onMove:function(o,n){return oo(ht,a,mt,t,o,We(o),e,n)},changed:L},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)&&(Lt=null),r.dragoverBubble||e.rootEl||s===document||(mt.parentNode[nt]._isOutsideThisEl(e.target),!t&&Qt(e)),!r.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),h=!0}function L(){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(){Fe(document,"mousemove",this._onTouchMove),Fe(document,"touchmove",this._onTouchMove),Fe(document,"pointermove",this._onTouchMove),Fe(document,"dragover",Qt),Fe(document,"mousemove",Qt),Fe(document,"touchmove",Qt)},_offUpEvents:function(){var e=this.el.ownerDocument;Fe(e,"mouseup",this._onDrop),Fe(e,"touchend",this._onDrop),Fe(e,"pointerup",this._onDrop),Fe(e,"pointercancel",this._onDrop),Fe(e,"touchcancel",this._onDrop),Fe(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&&(Fe(document,"drop",this),Fe(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&&Fe(mt,"dragend",this),no(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=Lt=Ot=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=At=It=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,n=0,i=o.length,a=this.options;n{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="",n=[],i=!1;for(const t of e)if(t.startsWith("## ")&&!o)o=t.substring(3).trim(),i=!0,n.push(t);else{if(t.startsWith("## ")&&i)break;i&&n.push(t)}this.changelogContent=n.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 n=this.plugin.settings,i=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&&i(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};n.menuCommands&&(i(n.menuCommands),s(n.menuCommands)&&(o=!0),l(n.menuCommands)&&(o=!0)),n.enableMultipleConfig&&(n.followingCommands&&(i(n.followingCommands),s(n.followingCommands)&&(o=!0)),n.topCommands&&(i(n.topCommands),s(n.topCommands)&&(o=!0),l(n.topCommands)&&(o=!0)),n.fixedCommands&&(i(n.fixedCommands),s(n.fixedCommands)&&(o=!0)),n.mobileCommands&&(i(n.mobileCommands),s(n.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 Eo=function(e){var t={exports:{}};return e(t,t.exports),t.exports}(function(e,t){self,e.exports=(()=>{var e={d:(t,o)=>{for(var i in o)e.o(o,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:o[i]})},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:()=>D});var o={};function i(e,t,o,i){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(o)||(o=[o]);for(const a of t)for(const t of o)a[e](t,i,{capture:!1,...n});return Array.prototype.slice.call(arguments,1)}e.r(o),e.d(o,{adjustableInputNumbers:()=>d,createElementFromString:()=>s,createFromTemplate:()=>r,eventPath:()=>l,off:()=>a,on:()=>n,resolveElement:()=>c});const n=i.bind(null,"addEventListener"),a=i.bind(null,"removeEventListener");function s(e){const t=document.createElement("div");return t.innerHTML=e.trim(),t.firstElementChild}function r(e){const t=(e,t)=>{const o=e.getAttribute(t);return e.removeAttribute(t),o},o=function(e){let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t(e,":obj"),a=t(e,":ref"),s=n?i[n]={}:i;a&&(i[a]=e);for(const i of Array.from(e.children)){const e=t(i,":arr"),n=o(i,e?{}:s);e&&(s[e]||(s[e]=[])).push(Object.keys(n).length?n:i)}return i};return o(s(e))}function l(e){let t=e.path||e.composedPath&&e.composedPath();if(t)return t;let o=e.target.parentElement;for(t=[e.target,o];o=o.parentElement;)t.push(o);return t.push(document,window),t}function c(e){return e instanceof Element?e:"string"==typeof e?e.split(/>>/g).reduce((e,t,o,i)=>(e=e.querySelector(t),o1&&void 0!==arguments[1]?arguments[1]:e=>e;function o(o){const i=[.001,.01,.1][Number(o.shiftKey||2*o.ctrlKey)]*(o.deltaY<0?1:-1);let n=0,a=e.selectionStart;e.value=e.value.replace(/[\d.]+/g,(e,o)=>o<=a&&o+e.length>=a?(a=o,t(Number(e),i,n)):(n++,e)),e.focus(),e.setSelectionRange(a,a),o.preventDefault(),e.dispatchEvent(new Event("input"))}n(e,"focus",()=>n(window,"wheel",o,{passive:!1})),n(e,"blur",()=>a(window,"wheel",o))}const{min:m,max:u,floor:p,round:h}=Math;function g(e,t,o){t/=100,o/=100;const i=p(e=e/360*6),n=e-i,a=o*(1-t),s=o*(1-n*t),r=o*(1-(1-n)*t),l=i%6;return[255*[o,s,a,a,r,o][l],255*[r,o,o,s,a,a][l],255*[a,a,r,o,o,s][l]]}function f(e,t,o){return g(e,t,o).map(e=>h(e).toString(16).padStart(2,"0"))}function b(e,t,o){const i=g(e,t,o),n=i[0]/255,a=i[1]/255,s=i[2]/255,r=m(1-n,1-a,1-s);return[100*(1===r?0:(1-n-r)/(1-r)),100*(1===r?0:(1-a-r)/(1-r)),100*(1===r?0:(1-s-r)/(1-r)),100*r]}function y(e,t,o){const i=(2-(t/=100))*(o/=100)/2;return 0!==i&&(t=1===i?0:i<.5?t*o/(2*i):t*o/(2-2*i)),[e,100*t,100*i]}function C(e,t,o){const i=m(e/=255,t/=255,o/=255),n=u(e,t,o),a=n-i;let s,r;if(0===a)s=r=0;else{r=a/n;const i=((n-e)/6+a/2)/a,l=((n-t)/6+a/2)/a,c=((n-o)/6+a/2)/a;e===n?s=c-l:t===n?s=1/3+i-c:o===n&&(s=2/3+l-i),s<0?s+=1:s>1&&(s-=1)}return[360*s,100*r,100*n]}function w(e,t,o,i){return t/=100,o/=100,[...C(255*(1-m(1,(e/=100)*(1-(i/=100))+i)),255*(1-m(1,t*(1-i)+i)),255*(1-m(1,o*(1-i)+i)))]}function v(e,t,o){t/=100;const i=2*(t*=(o/=100)<.5?o:1-o)/(o+t)*100,n=100*(o+t);return[e,isNaN(i)?0:i,n]}function x(e){return C(...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},o=e=>e.map(e=>/^(|\d+)\.\d+|\d+$/.test(e)?Number(e):void 0);let i;e:for(const n in t){if(!(i=t[n].exec(e)))continue;const a=e=>!!i[2]==("number"==typeof e);switch(n){case"cmyk":{const[,e,t,a,s]=o(i);if(e>100||t>100||a>100||s>100)break e;return{values:w(e,t,a,s),type:n}}case"rgba":{const[,,,e,t,s,r]=o(i);if(e>255||t>255||s>255||r<0||r>1||!a(r))break e;return{values:[...C(e,t,s),r],a:r,type:n}}case"hexa":{let[,e]=i;4!==e.length&&3!==e.length||(e=e.split("").map(e=>e+e).join(""));const t=e.substring(0,6);let o=e.substring(6);return o=o?parseInt(o,16)/255:void 0,{values:[...x(t),o],a:o,type:n}}case"hsla":{const[,,,e,t,s,r]=o(i);if(e>360||t>100||s>100||r<0||r>1||!a(r))break e;return{values:[...v(e,t,s),r],a:r,type:n}}case"hsva":{const[,,,e,t,s,r]=o(i);if(e>360||t>100||s>100||r<0||r>1||!a(r))break e;return{values:[e,t,s,r],a:r,type:n}}}}return{values:null,type:null}}function T(){const e=(e,t)=>function(){let o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;return t(~o?e.map(e=>Number(e.toFixed(o))):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 o=[t.h,t.s,t.v,t.a];return o.toString=e(o,e=>`hsva(${e[0]}, ${e[1]}%, ${e[2]}%, ${t.a})`),o},toHSLA(){const o=[...y(t.h,t.s,t.v),t.a];return o.toString=e(o,e=>`hsla(${e[0]}, ${e[1]}%, ${e[2]}%, ${t.a})`),o},toRGBA(){const o=[...g(t.h,t.s,t.v),t.a];return o.toString=e(o,e=>`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${t.a})`),o},toCMYK(){const o=b(t.h,t.s,t.v);return o.toString=e(o,e=>`cmyk(${e[0]}%, ${e[1]}%, ${e[2]}%, ${e[3]}%)`),o},toHEXA(){const e=f(t.h,t.s,t.v),o=t.a>=1?"":Number((255*t.a).toFixed(0)).toString(16).toUpperCase().padStart(2,"0");return o&&e.push(o),e.toString=()=>`#${e.join("").toUpperCase()}`,e},clone:()=>T(t.h,t.s,t.v,t.a)};return t}const S=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:o}=t,{type:i,key:n}=e;if(document.activeElement===o.wrapper){const{lock:o}=t.options,a="ArrowUp"===n,s="ArrowRight"===n,r="ArrowDown"===n,l="ArrowLeft"===n;if("keydown"===i&&(a||s||r||l)){let i=0,n=0;"v"===o?i=a||s?1:-1:"h"===o?i=a||s?-1:1:(n=a?-1:r?1:0,i=l?-1:s?1:0),t.update(S(t.cache.x+.01*i),S(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:o,cache:i}=t,{lock:n,element:a,wrapper:s}=o,r=s.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,lr.left+r.width&&(l=r.left+r.width),cr.top+r.height&&(c=r.top+r.height),l-=r.left,c-=r.top}else i&&(l=i.x*r.width,c=i.y*r.height);"h"!==n&&(a.style.left=`calc(${l/r.width*100}% - ${a.offsetWidth/2}px)`),"v"!==n&&(a.style.top=`calc(${c/r.height*100}% - ${a.offsetHeight/2}px)`),t.cache={x:l/r.width,y:c/r.height};const d=S(l/r.width),m=S(c/r.height);switch(n){case"v":return o.onchange(d);case"h":return o.onchange(m);default:return o.onchange(d,m)}},_tapstop(){t.options.onstop(),a(document,["mouseup","touchend","touchcancel"],t._tapstop),a(document,["mousemove","touchmove"],t._tapmove)},trigger(){t._tapmove()},update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const{left:i,top:n,width:a,height:s}=t.options.wrapper.getBoundingClientRect();"h"===t.options.lock&&(o=e),t._tapmove({clientX:i+a*e,clientY:n+s*o})},destroy(){const{options:e,_tapstart:o,_keyboard:i}=t;a(document,["keydown","keyup"],i),a([e.wrapper,e.element],"mousedown",o),a([e.wrapper,e.element],"touchstart",o,{passive:!1})}},{options:o,_tapstart:i,_keyboard:s}=t;return n([o.wrapper,o.element],"mousedown",i),n([o.wrapper,o.element],"touchstart",i,{passive:!1}),n(document,["keydown","keyup"],s),t}function I(){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(o=>o.classList[t.target===o?"add":"remove"](e.className)),e.onchange(t),t.stopPropagation()});return{destroy:()=>a(...t)}}const A={variantFlipOrder:{start:"sme",middle:"mse",end:"ems"},positionFlipOrder:{top:"tbrl",right:"rltb",bottom:"btrl",left:"lrbt"},position:"bottom",margin:8},M=(e,t,o)=>{const{container:i,margin:n,position:a,variantFlipOrder:s,positionFlipOrder:r}={container:document.documentElement.getBoundingClientRect(),...A,...o},{left:l,top:c}=t.style;t.style.left="0",t.style.top="0";const d=e.getBoundingClientRect(),m=t.getBoundingClientRect(),u={t:d.top-m.height-n,b:d.bottom+n,r:d.right+n,l:d.left-m.width-n},p={vs:d.left,vm:d.left+d.width/2+-m.width/2,ve:d.left+d.width-m.width,hs:d.top,hm:d.bottom-d.height/2-m.height/2,he:d.bottom-m.height},[h,g="middle"]=a.split("-"),f=r[h],b=s[g],{top:y,left:C,bottom:w,right:v}=i;for(const e of f){const o="t"===e||"b"===e,i=u[e],[n,a]=o?["top","left"]:["left","top"],[s,r]=o?[m.height,m.width]:[m.width,m.height],[l,c]=o?[w,v]:[v,w],[d,h]=o?[y,C]:[C,y];if(!(il))for(const s of b){const l=p[(o?"v":"h")+s];if(!(lc))return t.style[a]=l-m[a]+"px",t.style[n]=i-m[n]+"px",e+s}}return t.style.left=l,t.style.top=c,null};function P(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}class D{constructor(e){P(this,"_initializingActive",!0),P(this,"_recalc",!0),P(this,"_nanopop",null),P(this,"_root",null),P(this,"_color",T()),P(this,"_lastColor",T()),P(this,"_swatchColors",[]),P(this,"_setupAnimationFrame",null),P(this,"_eventListener",{init:[],save:[],hide:[],show:[],clear:[],change:[],changestop:[],cancel:[],swatchselect:[]}),this.options=e=Object.assign({...D.DEFAULT_OPTIONS},e);const{swatches:t,components:o,theme:i,sliders:n,lockOpacity:a,padding:s}=e;["nano","monolith"].includes(i)&&!n&&(e.sliders="h"),o.interaction||(o.interaction={});const{preview:r,opacity:l,hue:c,palette:d}=o;o.opacity=!a&&l,o.palette=d||r||l||c,this._preBuild(),this._buildComponents(),this._bindEvents(),this._finalBuild(),t&&t.length&&t.forEach(e=>this.addSwatch(e));const{button:m,app:u}=this._root;this._nanopop=((e,t,o)=>{const i="object"!=typeof e||e instanceof HTMLElement?{reference:e,popper:t,...o}:e;return{update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i;const{reference:t,popper:o}=Object.assign(i,e);if(!o||!t)throw new Error("Popper- or reference-element missing.");return M(t,o,i)}}})(m,u,{margin:s}),m.setAttribute("role","button"),m.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:o,inline:i,appClass:n,theme:a,lockOpacity:s}=e.options,l=e=>e?"":'style="display:none" hidden',c=t=>e._t(t),d=r(`\n
\n\n ${o?"":''}\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 `),m=d.interaction;return m.options.find(e=>!e.hidden&&!e.classList.add("active")),m.type=()=>m.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 o=e.el.parentElement;e.el.nextSibling?o.insertBefore(t.app,e.el.nextSibling):o.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,o=(e.options.sliders||"v").repeat(2),[i,n]=o.match(/^[vh]+$/g)?o:[],a=()=>this._color||(this._color=this._lastColor.clone()),s={palette:E({element:e._root.palette.picker,wrapper:e._root.palette.palette,onstop:()=>e._emit("changestop","slider",e),onchange(o,i){if(!t.palette)return;const n=a(),{_root:s,options:r}=e,{lastColor:l,currentColor:c}=s.preview;e._recalc&&(n.s=100*o,n.v=100-100*i,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 `,r.comparison?r.useAsButton||e._lastColor||l.style.setProperty("--pcr-color",d):(s.button.style.setProperty("--pcr-color",d),s.button.classList.remove("clear"));const m=n.toHEXA().toString();for(const{el:t,color:o}of e._swatchColors)t.classList[m===o.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(o){if(!t.hue||!t.palette)return;const i=a();e._recalc&&(i.h=360*o),this.element.style.backgroundColor=`hsl(${i.h}, 100%, 50%)`,s.palette.trigger()}}),opacity:E({lock:"v"===i?"h":"v",element:e._root.opacity.picker,wrapper:e._root.opacity.slider,onstop:()=>e._emit("changestop","slider",e),onchange(o){if(!t.opacity||!t.palette)return;const i=a();e._recalc&&(i.a=Math.round(100*o)/100),this.element.style.background=`rgba(0, 0, 0, ${i.a})`,s.palette.trigger()}}),selectable:I({elements:e._root.interaction.options,className:"active",onchange(t){e._representation=t.target.getAttribute("data-type").toUpperCase(),e._recalc&&e._updateOutput("swatch")}})};this._components=s}_bindEvents(){const{_root:e,options:t}=this,o=[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 i=t.closeWithKey;o.push(n(e.button,"click",()=>this.isOpen()?this.hide():this.show()),n(document,"keyup",e=>this.isOpen()&&(e.key===i||e.code===i)&&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,o,i)=>{const n=t[this.getColorRepresentation().toLowerCase()];if(n){const t=n[i],a=e+(t>=100?1e3*o:o);return a<=0?0:Number((a{i.isOpen()&&(t.closeOnScroll&&i.hide(),null===e?(e=setTimeout(()=>e=null,100),requestAnimationFrame(function t(){i._rePositioningPicker(),null!==e&&requestAnimationFrame(t)})):(clearTimeout(e),e=setTimeout(()=>e=null,100)))},{capture:!0}))}this._eventBindings=o}_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:o,options:i}=this;if(t.interaction.type()){const e=`to${t.interaction.type().getAttribute("data-type")}`;t.interaction.result.value="function"==typeof o[e]?o[e]().toString(i.outputPrecision):""}!this._initializingActive&&this._recalc&&this._emit("change",o,e,this)}_clearColor(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const{_root:t,options:o}=this;o.useAsButton||t.button.style.setProperty("--pcr-color","rgba(0, 0, 0, 0.15)"),t.button.classList.add("clear"),o.showAlways||this.hide(),this._lastColor=null,this._initializingActive||e||(this._emit("save",null),this._emit("clear"))}_parseLocalColor(e){const{values:t,type:o,a:i}=k(e),{lockOpacity:n}=this.options,a=void 0!==i&&1!==i;return t&&3===t.length&&(t[3]=void 0),{values:!t||n&&a?null:t,type:o}}_t(e){return this.options.i18n[e]||D.I18N_DEFAULTS[e]}_emit(e){for(var t=arguments.length,o=new Array(t>1?t-1:0),i=1;ie(...o,this))}on(e,t){return this._eventListener[e].push(t),this}off(e,t){const o=this._eventListener[e]||[],i=o.indexOf(t);return~i&&o.splice(i,1),this}addSwatch(e){const{values:t}=this._parseLocalColor(e);if(t){const{_swatchColors:e,_root:o}=this,i=T(...t),a=s(`\n \n \n `,e.appendChild(i)}))}dragDropTouch(){d.Platform.isMobileApp&&!this.dragDrop&&(this.dragDrop=new MC(this.contentEl))}_activeSoft(t){1==t.plan?(new Date).getTime()>new Date(t.endDate).getTime()?(this.period=!0,new d.Notice(`${b("The probation period has ended")}`)):(this.period=!1,this.firstActive||(new d.Notice(`${b("Active success")}`),this.firstActive=1,this.plugin.settings.firstActive=1,this.plugin.saveData(this.plugin.settings))):2==t.plan||6==t.plan||10==t.plan?this.period=!1:this.period=!0}getData(){return this.mindmap?JSON.stringify(this.mindmap.getData()):""}exportToPng(){this.mindmap&&(this.plugin.statusBarItemEl&&(this.plugin.statusBarItemEl.innerText=b("Saving image")),this.mindmap.toDiv(),setTimeout((()=>{var t=!1,e=this.mindmap.el||this.mindmap.contentEL;e&&(e.style.background||e.style.backgroundColor||(t=!0,e.closest(".theme-dark")?e.style.background="#222":e.style.background="white")),zC.toPng(this.mindmap.el||this.mindmap.contentEL,{}).then((i=>{var n=new Image;n.src=i;var s=n.outerHTML,o=this.mindmap.path.substr(0,this.mindmap.path.length-2);try{new d.Notice(o+"html"),this.app.vault.adapter.write(o+"html",s),this.setViewData(this.data),this.plugin.statusBarItemEl&&(this.plugin.statusBarItemEl.innerText=b("Saved"),setTimeout((()=>{this.plugin.statusBarItemEl.innerText=""}),1e3))}catch(r){this.setViewData(this.data),new d.Notice(r)}t&&(e.style.background="")})).catch((i=>{this.setViewData(this.data),new d.Notice("image error"),console.log(i),t&&(e.style.background="")}))}),500))}exportToPdf(t){if(this.period)new d.Notice(`${b("The probation period has ended")}`);else if(this.mindmap){this.mindmap.toDiv(),this.mindmap.el||(this.mindmap.el=this.mindmap.contentEL);var e=this.mindmap.el.clientWidth,i=this.mindmap.el.clientHeight;if(this.mindmap.doc){let o=this.mindmap.doc||this.mindmap.el.doc||document;var n=o.querySelector("base");if(o.querySelector("html").style.setProperty("width",e+"px","important"),o.querySelector("html").style.setProperty("height",i+"px","important"),o.querySelector("body").style.setProperty("width",e+"px","important"),o.querySelector("body").style.setProperty("height",i+"px","important"),n.getAttribute("href")){o.querySelector(".app-container").setAttribute("style","display:flex!important"),o.querySelector(".workspace-tab-header-container").style.display="none",o.querySelector(".titlebar").setAttribute("style","display:none!important"),o.querySelector(".view-header").style.display="none",o.querySelector(".workspace-leaf-content .view-content").style.padding="0",o.querySelector(".workspace-leaf-content .view-content").style.overflow="visible",o.querySelector(".mm-app-container").style.overflow="visible",o.querySelector(".mm-app-container").style.position="none",o.querySelector(".mm-app-container").style.width=e+"px",o.querySelector(".mm-app-container").style.height=i+"px",o.querySelector(".cm-mindmap").style.width=e+"px",o.querySelector(".cm-mindmap").style.height=i+"px",o.querySelector(".cm-mindmap").style.overflow="visible",o.querySelector(".cm-mindmap-navigator")&&(o.querySelector(".cm-mindmap-navigator").style.display="none"),o.querySelector(".cm-float-side")&&(o.querySelector(".cm-float-side").style.display="none"),o.querySelector(".cm-float-settings")&&(o.querySelector(".cm-float-settings").style.display="none");var s=this.getDpi()[0]||96;setTimeout((()=>{if(TM){var n,r=TM.remote,a=r.webContents.getFocusedWebContents(),h=r.dialog;n=t?{marginsType:2,printBackground:!0,pageSize:{width:25400*(Math.ceil(e/s)+1),height:25400*(Math.ceil(i/s)+2)},pageRanges:{from:0,to:0}}:{printBackground:!0,pageSize:{width:Math.ceil(e/s)+1,height:Math.ceil(i/s)+2},margins:{top:0,bottom:0,left:0,right:0},pageRanges:"1"},a.printToPDF(n).then((t=>{h.showSaveDialog({filters:[{name:"pdf",extensions:["pdf"]}]}).then((e=>{o.querySelector(".titlebar").setAttribute("style",""),o.querySelector("html").style.setProperty("width","100%"),o.querySelector("html").style.setProperty("height","100%"),o.querySelector("body").style.setProperty("width","100%"),o.querySelector("body").style.setProperty("height","100%"),e.canceled||(zM.writeFileSync(e.filePath,t),new d.Notice(b("PDF save success")))}))})).catch((t=>{console.log(t),o.querySelector(".titlebar").setAttribute("style",""),o.querySelector("html").style.setProperty("width","100%"),o.querySelector("html").style.setProperty("height","100%"),o.querySelector("body").style.setProperty("width","100%"),o.querySelector("body").style.setProperty("height","100%")}))}}),1e3)}else new d.Notice(b("Please do this in a separate window"))}}}exportToPdf1(t){if(this.period)new d.Notice(`${b("The probation period has ended")}`);else{if("table"==this.mindmap._mode){this.mindmap.containerEL.scrollLeft,this.mindmap.containerEL.scrollTop;var e={x:this.mindmap.tableDom.style.left,y:this.mindmap.tableDom.style.top},i=this.mindmap.tableDom.clientWidth+200,n=this.mindmap.tableDom.clientHeight+200;this.mindmap.tableDom.style.left="100px",this.mindmap.tableDom.style.top="100px"}else{var s=[];this.mindmap.traverseDF((t=>{t.isShow()&&s.push(t)})),this.mindmap.freeNodes.forEach((t=>{this.mindmap.traverseDF((t=>{t.isShow()&&s.push(t)}),t)})),this.mindmap.induces.forEach((t=>{this.mindmap.traverseDF((t=>{t.isShow()&&s.push(t)}),t.root)})),this.mindmap.relateLinks.forEach((t=>{t.textNode&&t.textNode.isShow()&&s.push(t.textNode)})),this.mindmap.containerEL.scrollLeft,this.mindmap.containerEL.scrollTop;var o=this.mindmap.getBoundingRect(s),r=this.mindmap.root.getPosition();(e={})[this.mindmap.root.getId()]=r,this.mindmap.freeNodes.forEach((t=>{e[t.getId()]=t.getPosition()}));var a=0,h=0;o.x>100&&(a=o.x-100),o.y>100&&(h=o.y-100),this.mindmap.root.setPosition(r.x-a,r.y-h),this.mindmap.freeNodes.forEach((t=>{var e=t.getPosition();t.setPosition(e.x-a,e.y-h),t.layout.refresh()})),this.mindmap.refresh(),this.mindmap.updateAssist(),this.mindmap.refresh(),this.mindmap.updateRelateLink(),i=o.width+200,n=o.height+200}if(this.mindmap.contentEL.style.width=i+"px",this.mindmap.contentEL.style.height=n+"px",this.mindmap.containerEL.scrollLeft=0,this.mindmap.containerEL.scrollTop=0,this.mindmap.doc){let e=this.mindmap.doc;var l=e.querySelector("base");if(e.querySelector("html").style.setProperty("width",i+"px","important"),e.querySelector("html").style.setProperty("height",n+"px","important"),e.querySelector("body").style.setProperty("width",i+"px","important"),e.querySelector("body").style.setProperty("height",n+"px","important"),l.getAttribute("href")){e.querySelector(".app-container").setAttribute("style","display:flex!important"),e.querySelector(".workspace-tab-header-container").style.display="none",e.querySelector(".titlebar").setAttribute("style","display:none!important"),e.querySelector(".view-header").style.display="none",e.querySelector(".workspace-leaf-content .view-content").style.padding="0",e.querySelector(".workspace-leaf-content .view-content").style.overflow="visible",e.querySelector(".cm-mindmap-container").style.overflow="visible",e.querySelector(".cm-mindmap-container").style.position="none",e.querySelector(".cm-mindmap-container").style.width=i+"px",e.querySelector(".cm-mindmap-container").style.height=n+"px",e.querySelector(".mm-mindmap").style.width=i+"px",e.querySelector(".mm-mindmap").style.height=n+"px",e.querySelector(".mm-mindmap").style.overflow="visible",e.querySelector(".cm-mindmap-navigator")&&(e.querySelector(".cm-mindmap-navigator").style.display="none"),e.querySelector(".cm-float-side")&&(e.querySelector(".cm-float-side").style.display="none"),e.querySelector(".cm-float-settings")&&(e.querySelector(".cm-float-settings").style.display="none");var c=this.getDpi()[0]||96;setTimeout((()=>{if(TM){var s,o=TM.remote,r=o.webContents.getFocusedWebContents(),a=o.dialog;s=t?{marginsType:2,printBackground:!0,pageSize:{width:25400*(Math.ceil(i/c)+1),height:25400*(Math.ceil(n/c)+2)},pageRanges:{from:0,to:0}}:{printBackground:!0,pageSize:{width:Math.ceil(i/c)+1,height:Math.ceil(n/c)+2},margins:{top:0,bottom:0,left:0,right:0},pageRanges:"1"},r.printToPDF(s).then((t=>{a.showSaveDialog({filters:[{name:"pdf",extensions:["pdf"]}]}).then((i=>{e.querySelector(".titlebar").setAttribute("style",""),e.querySelector("html").style.setProperty("width","100%"),e.querySelector("html").style.setProperty("height","100%"),e.querySelector("body").style.setProperty("width","100%"),e.querySelector("body").style.setProperty("height","100%"),i.canceled||(zM.writeFileSync(i.filePath,t),new d.Notice(b("PDF save success")))}))})).catch((t=>{e.querySelector(".titlebar").setAttribute("style",""),e.querySelector("html").style.setProperty("width","100%"),e.querySelector("html").style.setProperty("height","100%"),e.querySelector("body").style.setProperty("width","100%"),e.querySelector("body").style.setProperty("height","100%")}))}}),1e3)}else new d.Notice(b("Please do this in a separate window"))}}}getDpi(){var t=new Array;if(null!=window.screen.deviceXDPI)t[0]=window.screen.deviceXDPI,t[1]=window.screen.deviceYDPI;else{var e=document.createElement("DIV");e.style.cssText="width:1in;height:1in;position:absolute;left:0px;top:0px;z-index:99;visibility:hidden",document.body.appendChild(e),t[0]=parseInt(e.offsetWidth),t[1]=parseInt(e.offsetHeight),e.parentNode.removeChild(e)}return t}restoreMindmap(t,e,i){var n=this.plugin.settings.canvasSize;if(this.mindmap.contentEL.style.width=n+"px",this.mindmap.contentEL.style.height=n+"px",this.mindmap.containerEL.scrollTop=i,this.mindmap.containerEL.scrollLeft=e,"table"==this.mindmap._mode)this.mindmap.tableDom.style.left=t.x+"px",this.mindmap.tableDom.style.top=t.y+"px",this.mindmap.center();else{var s=this.mindmap.root.getId();this.mindmap.root.setPosition(t[s].x,t[s].y),this.mindmap.freeNodes.forEach((e=>{var i=e.getId();e.setPosition(t[i].x,t[i].y)})),this.mindmap.refresh(),this.mindmap.updateAssist(),this.mindmap.refresh(),this.mindmap.updateRelateLink()}}checkActive(){var t=this.activeCode.trim();if(d.Platform.isMobileApp){if(this.plugin.settings.mobileActiveCode)try{var e=YM(this.plugin.settings.mobileActiveCode),i=JSON.parse(e.trim());i&&this._activeSoft(i)}catch(l){console.log(l),new d.Notice(`${b("Active error")}`),this.period=!0}}else if(t){var n="";if(ZM){try{var s="1qaz2wsxZX!@3edc4rfvCV#$@qwerasdf12qw3@1234009wse";if(ZM.createCipher){let e=ZM.createDecipher("aes-192-ctr",s),i=e.update(t,"hex","utf-8");i+=e.final("utf-8"),n=i;var o=JSON.parse(i.trim())}else{var r=QM(t,s);o=JSON.parse(r.trim()),n=r}o&&this._activeSoft(o)}catch(c){n="";try{var a="whoisyourdaddy!@qwerasdf";if(ZM.createDecipher){let e=ZM.createDecipher("aes-192-ctr",a),i=e.update(t,"hex","utf-8");i+=e.final("utf-8"),n=i,o=JSON.parse(i.trim())}else r=QM(t,a),o=JSON.parse(r.trim()),n=r;o&&this._activeSoft(o)}catch(u){n="";try{var h="1qaz2wsxZX!@3edc4rfvCV#$@qwerasdf12qw3@1234091wse";if(ZM.createDecipher){let e=ZM.createDecipher("aes-192-ctr",h),i=e.update(t,"hex","utf-8");i+=e.final("utf-8"),n=i,o=JSON.parse(i.trim())}else r=QM(t,h),o=JSON.parse(r.trim()),n=r;o&&this._activeSoft(o)}catch(l){n="",this.period=!0,new d.Notice(`${b("Active error")}`),console.log(l)}}}!this.plugin.settings.mobileActiveCode&&n&&(this.plugin.settings.mobileActiveCode=qM(n.trim()),this.plugin.saveData(this.plugin.settings))}}}setOnlyPdf(){this.onlyPdf?(this.mindmapContainer.style.display="none",this.translateContainer.style.display="none",this.pdfContainer.style.width="100%"):(this.mindmapContainer.style.display="",this.mindmapContainer.style.width="100%",this.pdfContainer.style.display="none",this.translateContainer.style.display="none")}_judgeTime(){this.plugin.settings.uid?(new Date).getTime()>216e7+parseInt(YM(this.plugin.settings.uid))&&(d.Platform.isDesktopApp&&!this.plugin.settings.activeCode&&new d.Notice(b("The probation period has ended")),d.Platform.isMobileApp&&!this.plugin.settings.mobileActiveCode&&new d.Notice(b("The probation period has ended")),this.period=!0):(this.plugin.settings.uid=qM((new Date).getTime()+""),this.plugin.saveData(this.plugin.settings))}_close(){this.pdf_path&&(this.pdf_path=null,this.pdf_real_path=""),this.localPdfAnnotations=[],this.pdfContainer.innerHTML=""}async onClose(){this.mindmap&&(this.mindmap.clear(),this.contentEl.innerHTML="",this.mindmap=null),d.Platform.isMobileApp&&this.dragDrop&&(this.dragDrop._removeEvent(),this.dragDrop=null)}clear(){}getViewData(){return this.data}setViewData(t){if(this.mindmap&&(this.mindmap.clear(),this.mindmap.useHandMode&&(this._useHandDraw=!1),this.mindmap=null),this.vueapp)try{this.vueapp.$destroy(),this.appContainer.contains(this.vueapp.$el)&&(this.appContainer.removeChild(this.vueapp.$el),this.vueapp.$el.innerHTML=""),this.vueapp=null}catch(Cn){console.log(Cn),this.vueapp=null}this.mindmapContainer.innerHTML="",this.appContainer.contains(this.mindmapContainer)||this.appContainer.appendChild(this.mindmapContainer),this.list&&(this.list.clear(),this.mindmapContainer.innerHTML="",this.list=null),this.translateView&&(this.translateView.clear(),this.translateContainer.innerHTML="",this.translateView=null),this.mindmapContainer.style.visibility="hidden",this.data=t,this.appContainer._view=this;var e={};if(this.plugin.settings&&(e=this.plugin.settings),this.firstInit)setTimeout((()=>{var t=this.leaf;if(t){var i=t.view;if(i.file){this.fileCache=this.app.metadataCache.getFileCache(i.file),this.frontmatter=this.getFrontMatter();var n=this.fileCache.frontmatter["translate-target"];if(n)return this.isTranslate=!0,this.onlyPdf=!1,this._haveOpenPdf=!1,this.showTranslate(n),this.translateContainer.style.display="block",this.pdfContainer.style.display="none",void(this.mindmapContainer.style.display="none");var s=this.fileCache.frontmatter["annotate-target"];if(s&&(s.toLowerCase().endsWith(".pdf")||s.toLowerCase().startsWith("http")))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setPdfFrame(s);if(s&&s.toLowerCase().endsWith(".epub"))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setEpub(s);if(this.onlyPdf=!1,this._haveOpenPdf=!1,this.pdfContainer.innerHTML="",this.iframe=null,this.pdf_path=null,this.pdf_real_path="",this.setOnlyPdf(),this.fileCache.frontmatter){if(this._mode=this.fileCache.frontmatter["mindmap-plugin"],this.fileCache.frontmatter["mindmap-theme"]){this.fileCache.frontmatter["mindmap-theme"];var o=$M[this.fileCache.frontmatter["mindmap-theme"]]}"outline"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!0,this.isShowTable=!1):"table"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!1,this.isShowTable=!0):(this.isShowOutline=!1,this.isShowTable=!1)}if("basic"==this._mode){if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(),this.firstInit=!1,void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));if(this.isShowTable&&!this.forceMindMapMode)return this.showTableMode(),this.firstInit=!1,void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));var r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],h=this.getMdText(this.data||"");(m=this.mdToData(h)).useHandMode=this._useHandDraw,m.isRoot=!0,m.useScale=!0;var l=this,c={data:function(){return{path:null==i?void 0:i.file.path,colors:l.colors.slice(),_mode:"basic",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:l.plugin.settings.useCustomShortcut,xmindImageTarget:l.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:l.plugin.settings.autoCenter,addCollapseNodeMark:l.plugin.settings.addCollapseNodeMark,mindData:m,layout:r,layoutDirect:a,settings:e}}};try{var u="svg"==this.plugin.settings.mindmapRenderType?tA:eA;this.vueapp=new Bn({mixins:[c],i18n:YA,render:t=>t(u)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}catch(Cn){console.log(Cn)}}else if("rich"==this._mode){h=this.getMdText(this.data),(m=JSON.parse(h)).useScale=!0,l=this;var p=this.getNodeElements();if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(p),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));c={data:function(){return{path:null==i?void 0:i.file.path,colors:l.colors.slice(),_mode:"rich",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:l.plugin.settings.useCustomShortcut,xmindImageTarget:l.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:l.plugin.settings.autoCenter,addCollapseNodeMark:l.plugin.settings.addCollapseNodeMark,mindData:m,settings:e,nodeElements:p}}},u="svg"==this.plugin.settings.mindmapRenderType?tA:eA,this.vueapp=new Bn({mixins:[c],i18n:YA,render:t=>t(u)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}else if("markdown"==this._mode){var m,f="";if(this.fileCache.frontmatter&&(this.fileCache.frontmatter.title||this.fileCache.frontmatter.name)&&(f=this.fileCache.frontmatter.title||this.fileCache.frontmatter.name),r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],this.fileCache.frontmatterPosition){var g=this.fileCache.frontmatterPosition.end;if(g)var v=g.offset,A=this.data.substr(v,this.data.length)}else A=this.data;if(!(m=Tv(A.trim(),f,this.colors.slice(),!0,this.plugin.settings.canvasSize||16e4)))return;r&&m.mindData[0]&&m.mindData[0][0]&&(m.mindData[0][0].layout={layoutName:r,direct:a||""}),m.useScale=!0,m.mode="markdown",l=this,c={data:function(){return{path:null==i?void 0:i.file.path,colors:l.colors.slice(),_mode:"markdown",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:l.plugin.settings.useCustomShortcut,xmindImageTarget:l.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:l.plugin.settings.autoCenter,addCollapseNodeMark:l.plugin.settings.addCollapseNodeMark,mindData:m,settings:e,nodeElements:p}}},u=eA,this.vueapp=new Bn({mixins:[c],i18n:YA,render:t=>t(u)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}}}setTimeout((()=>{if(this.mindmap){this.mindmap.updateAllAssist(),this.mindmap.refresh();var t=this.fileCache.frontmatter.read;t&&"true"==t&&setTimeout((()=>{this.mindmap.setReadMode(),OM&&new d.Notice(OM)}),8e3)}if(this.mindmapContainer.style.visibility="visible",window["show-mindmap-node"]){var e=window["show-mindmap-node"],i=this.mindmap.getNodeById(e);i&&setTimeout((()=>{this.mindmap.showNode(i),this.mindmap.clearSelectNode()}),200),window["show-mindmap-node"]=""}else this._checkSearch()}),50),this.firstInit=!1}),200);else{var i=this.leaf.view;this.fileCache=this.app.metadataCache.getFileCache(i.file),this.frontmatter=this.getFrontMatter();var n=this.fileCache.frontmatter["translate-target"];if(n)return this.isTranslate=!0,this.onlyPdf=!1,this._haveOpenPdf=!1,this.showTranslate(n),this.translateContainer.style.display="block",this.pdfContainer.style.display="none",void(this.mindmapContainer.style.display="none");var s=this.fileCache.frontmatter["annotate-target"];if(s&&(s.toLowerCase().endsWith(".pdf")||s.toLowerCase().startsWith("http")))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setPdfFrame(s);if(s&&s.toLowerCase().endsWith(".epub"))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setEpub(s);if(this.onlyPdf=!1,this._haveOpenPdf=!1,this.pdfContainer.innerHTML="",this.iframe=null,this.pdf_path=null,this.pdf_real_path="",this.setOnlyPdf(),this.fileCache.frontmatter){if(this._mode=this.fileCache.frontmatter["mindmap-plugin"],this.fileCache.frontmatter["mindmap-theme"]){var o=$M[this.fileCache.frontmatter["mindmap-theme"]];this.fileCache.frontmatter["mindmap-theme"]}"outline"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!0,this.isShowTable=!1):"table"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!1,this.isShowTable=!0):(this.isShowOutline=!1,this.isShowTable=!1)}if("basic"==this._mode){if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));if(this.isShowTable&&!this.forceMindMapMode)return this.showTableMode(),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));var r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],h=this.getMdText(this.data),l=this.mdToData(h),c=this,u={data:function(){return{path:null==i?void 0:i.file.path,colors:c.colors.slice(),_mode:"basic",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:c.plugin.settings.useCustomShortcut,xmindImageTarget:c.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:c.plugin.settings.autoCenter,addCollapseNodeMark:c.plugin.settings.addCollapseNodeMark,mindData:l,layout:r,layoutDirect:a,settings:e}}},p="svg"==this.plugin.settings.mindmapRenderType?tA:eA;this.vueapp=new Bn({mixins:[u],i18n:YA,render:t=>t(p)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}else if("rich"==this._mode){h=this.getMdText(this.data),l=JSON.parse(h);var m=this.getNodeElements();if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(m),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));c=this,u={data:function(){return{path:null==i?void 0:i.file.path,colors:c.colors.slice(),_mode:"rich",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:c.plugin.settings.useCustomShortcut,xmindImageTarget:c.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:c.plugin.settings.autoCenter,addCollapseNodeMark:c.plugin.settings.addCollapseNodeMark,mindData:l,layout:r,layoutDirect:a,settings:e,nodeElements:m}}},p="svg"==this.plugin.settings.mindmapRenderType?tA:eA,this.vueapp=new Bn({mixins:[u],i18n:YA,render:t=>t(p)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}else if("markdown"==this._mode){var f="";if(this.fileCache.frontmatter&&(this.fileCache.frontmatter.title||this.fileCache.frontmatter.name)&&(f=this.fileCache.frontmatter.title||this.fileCache.frontmatter.name),r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],this.fileCache.frontmatterPosition){var g=this.fileCache.frontmatterPosition.end;if(g)var v=g.offset,A=this.data.substr(v,this.data.length)}else A=this.data;if(!(l=Tv(A.trim(),f,this.colors.slice(),!0)))return;r&&l.mindData[0]&&l.mindData[0][0]&&(l.mindData[0][0].layout={layoutName:r,direct:a||""}),l.useScale=!0,l.mode="markdown",c=this,u={data:function(){return{path:null==i?void 0:i.file.path,colors:c.colors.slice(),_mode:"markdown",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:c.plugin.settings.useCustomShortcut,xmindImageTarget:c.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:c.plugin.settings.autoCenter,addCollapseNodeMark:c.plugin.settings.addCollapseNodeMark,mindData:l,settings:e,nodeElements:m}}},p=eA,this.vueapp=new Bn({mixins:[u],i18n:YA,render:t=>t(p)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}setTimeout((()=>{if(this.mindmap){this.mindmap.updateAllAssist(),this.mindmap.refresh();var t=this.fileCache.frontmatter.read;t&&"true"==t&&setTimeout((()=>{this.mindmap.setReadMode(),OM&&new d.Notice(OM)}),8e3)}if(this.mindmapContainer.style.visibility="visible",window["show-mindmap-node"]){var e=window["show-mindmap-node"],i=this.mindmap.getNodeById(e);i&&setTimeout((()=>{this.mindmap.showNode(i),i.select()}),200),window["show-mindmap-node"]=""}else this._checkSearch()}),100)}}_checkSearch(){var t;const e=this.plugin.app.workspace.getLeavesOfType("search");if(0!=e.length&&this.plugin.settings.autoOpenSearch){var i=null==(t=e[0].view.searchQuery)?void 0:t.query;i&&this.mindmap&&(this.mindmap._searchDom&&this.mindmap.closeSearch(),this.mindmap.createSearchDom(i))}}basicToRich(){if("basic"==this._mode||"markdown"==this._mode){var t=this.file,e=t.path;if(e=t.path.substring(0,e.length-3),e+="-rich.md",this.mindmap){var i=JSON.parse(JSON.stringify(this.mindmap.getData()));i.mindData.forEach(((t,e)=>{0==e&&t.forEach(((t,e)=>{0==e&&(t.layout&&t.layout.layoutName||(t.layout={layoutName:"mindmap2",direct:"mindmap"}),t.main=!0),t.children&&delete t.children}))}));var n=this.mindmap.root.getData().text.trim()||"";if("basic"==this._mode)var s=this.frontmatter.replace("basic","rich");else s=xl;var o=s+`# ${n}\n\`\`\` json\n`+JSON.stringify(i)+"\n```\n";this.app.vault.adapter.write(e,o)}}}richToBasic(){if("rich"==this._mode){var t=this.file,e=t.path;if(e=t.path.substring(0,e.length-3),e+="-basic.md",this.mindmap){var i=this.mindmap.getMarkdown(this.mindmap.root,!0),n=this.frontmatter.replace("rich","basic");this.app.vault.adapter.write(e,n+"\n"+i)}}}getPDFxml(t,e){var i=this;let n=new FormData;var s=new window.Uint8Array(t);const o=new window.Blob([s],{type:"application/pdf"});n.append("consolidateHeader","1"),n.append("segmentSentences","1"),n.append("teiCoordinates","s"),n.append("teiCoordinates","formula"),n.append("teiCoordinates","head"),n.append("input",o),new d.Notice(b("Parsing PDF structure"));var r=new XMLHttpRequest;r.open("post","https://kermitt2-grobid.hf.space/api/processFulltextDocument",!0),r.send(n),r.onreadystatechange=function(){if(4==r.readyState)if(200==r.status){var t=r.responseText;i.parsePDFXml(t,e)}else new d.Notice(b("Parsing PDF structure error"))},r.onerror=function(t){new d.Notice(b("Parsing PDF structure error"))}}async parsePDFXml(t,e){var i=function(t){var e=(new DOMParser).parseFromString(t,"text/xml"),i=[];e.querySelector("abstract div")&&PM(e.querySelector("abstract div"),i,e);var n=e.querySelectorAll("text>body>div");if(n.length)for(let s of n){const t=s.querySelector("head");t&&i.push(FM(t,e)),PM(s,i,e)}return i}(t),n=e.substr(0,e.length-3)+"translation",s={pdf:e,translations:i};this.transLations(i,s,n),this.app.vault.adapter.write(n,JSON.stringify(s))}async transLations(t,e,i){var n=this,s=t.slice(),o=e.pdf,r=s.shift(),a=t.length,h=s.length,l=this.plugin.settings.translateAppId,c=this.plugin.settings.translateKey;new d.Notice(`${b("Translate spend time")}`+s.length),function r(u){var p=u.text,m=(new Date).getTime(),f=function(t){function e(t,e){return t<>>32-e}function i(t,e){var i,n,s,o,r;return s=2147483648&t,o=2147483648&e,r=(1073741823&t)+(1073741823&e),(i=1073741824&t)&(n=1073741824&e)?2147483648^r^s^o:i|n?1073741824&r?3221225472^r^s^o:1073741824^r^s^o:r^s^o}function n(t,n,s,o,r,a,h){return t=i(t,i(i((l=n)&s|~l&o,r),h)),i(e(t,a),n);var l}function s(t,n,s,o,r,a,h){return t=i(t,i(i(n&(l=o)|s&~l,r),h)),i(e(t,a),n);var l}function o(t,n,s,o,r,a,h){return t=i(t,i(i(n^s^o,r),h)),i(e(t,a),n)}function r(t,n,s,o,r,a,h){return t=i(t,i(i(s^(n|~o),r),h)),i(e(t,a),n)}function a(t){var e,i="",n="";for(e=0;e<=3;e++)i+=(n="0"+(t>>>8*e&255).toString(16)).substr(n.length-2,2);return i}var h,l,d,c,u,p,m,f,g,v=Array();for(v=function(t){for(var e,i=t.length,n=i+8,s=16*((n-n%64)/64+1),o=Array(s-1),r=0,a=0;a>>29,o}(t=function(t){t=t.replace(/\r\n/g,"\n");for(var e="",i=0;i127&&n<2048?(e+=String.fromCharCode(n>>6|192),e+=String.fromCharCode(63&n|128)):(e+=String.fromCharCode(n>>12|224),e+=String.fromCharCode(n>>6&63|128),e+=String.fromCharCode(63&n|128))}return e}(t)),p=1732584193,m=4023233417,f=2562383102,g=271733878,h=0;h{var a=s.shift();a?(h=s.length,r(a)):(e.translations=t,n.app.vault.adapter.write(i,JSON.stringify(e)),n.openFullText(o),new d.Notice(b("Translate success")),n.plugin.statusBarItemEl&&(n.plugin.statusBarItemEl.innerText=""))}),300)},error:function(){u.translate="fail",setTimeout((()=>{var t=s.shift();t?(r(t),n.plugin.statusBarItemEl&&(n.plugin.statusBarItemEl.innerText=b("Completed translation")+`${a-h}/${a}`)):(n.app.vault.adapter.write(i,JSON.stringify(e)),n.openFullText(o),new d.Notice(b("Translate success")),n.plugin.statusBarItemEl&&(n.plugin.statusBarItemEl.innerText=""))}),300)}})}(r)}async openFullText(t){if(!t.startsWith("file")&&!t.startsWith("http")){var e=await this.getTranslateMd(t);if(e)await this.app.workspace.openLinkText(e.path,"","split");else{var i=`---\nid: ${KM()}\ntranslate-target: ${t}\n---\n`,n=t.replace(/.pdf/gi,`-translate-${(new Date).getTime()}.md`);await this.app.vault.adapter.write(n,i),setTimeout((()=>{this.app.workspace.openLinkText(n,"","split")}),200)}}}async showTranslate(t){var e=t.substr(0,t.length-3)+"translation";if(await this.app.vault.adapter.exists(e)){var i=await this.app.vault.adapter.read(e);if(i.trim()){var n=JSON.parse(i.trim());await this.renderTranslate(n,t)}}else new d.Notice(b("Not have translations of pdf full text"))}async renderTranslate(t,e){this.translateView=new vk(t.translations),this.translateContainer.appendChild(this.translateView.dom),this.translateView.view=this,this.translateView.pdfPath=e}async setPdfFrame(t,e){var i=this;if(this.period)new d.Notice(b("The probation period has ended"));else{var n=this.leaf.view;if(this.plugin.settings.isDecodeURl)var s=decodeURI(t);else s=t;if(s.startsWith("file:/")){if(d.Platform.isMobileApp)return void new d.Notice(b("Mobile app not support"));if(!s.endsWith(".pdf"))return void new d.Notice(b("Not support file type"));if(zM){var o=s.replace("file://","");if(!zM.existsSync(o))return void new d.Notice(b("File Is Not Exist")+":"+s);var r={},a=WM.basename(s);r.path=s,r.basename=a,r.absolutePath=o;var h=s;if(this.pdf_real_path&&this.pdf_real_path==h)return}}else if(s.startsWith("http:/")||t.startsWith("https:/")){if((r={}).path=s,r.basename=s,r.absolutePath=s,h=s,this.pdf_real_path&&this.pdf_real_path==h)return}else{if(!(r=this.app.metadataCache.getFirstLinkpathDest(s,null==n?void 0:n.file.path))){var l=d.normalizePath(this.app.vault.adapter.basePath)+"/"+s;return void new d.Notice(b("File Is Not Exist")+":"+s)}if(h=this.app.vault.getResourcePath(r),this.pdf_real_path&&this.pdf_real_path==h)return}this.pdf_real_path=h,this.pdf_path=r;try{if(l=d.normalizePath(r.path),this.useMarkdown||r.path.startsWith("file:/")||r.path.startsWith("http"))var c=this.getAnnotations(this.data);else{var u=l.substr(0,l.length-3)+"annos";if(this.annotate_path=u,await this.app.vault.adapter.exists(u)){var p=await this.app.vault.adapter.read(u);p.trim()&&(c=JSON.parse(p.trim()))}else this.localPdfAnnotations=[],this.app.vault.adapter.write(u,JSON.stringify(this.localPdfAnnotations)),c=[]}}catch(Cn){return void this.leaf.detach()}if(c.forEach((t=>{if(t&&t.type&&("rect"==t.type||"image"==t.type||"ink"==t.type))try{var e=JSON.parse(t.text),n=e.path;if(o=this.app.metadataCache.getFirstLinkpathDest(n,this.file.path))var s=i.app.vault.getResourcePath(o);t.text=JSON.stringify(e),e.imageAbsolutePath=s||""}catch(r){var o;(o=this.app.metadataCache.getFirstLinkpathDest(t.path,this.file.path))&&(s=i.app.vault.getResourcePath(o),t.imageAbsolutePath=s||"")}})),r.path.startsWith("file:/"))var m=zM.readFileSync(r.absolutePath);else if(r.path.startsWith("http")){var f=this.plugin.settings.cacheFolder,g=!1,v=d.normalizePath(r.path),A=v.lastIndexOf("/"),y=v.substr(A);if(f&&await this.app.vault.adapter.exists(f+y)&&(g=!0,m=await this.app.vault.adapter.readBinary(f+y)),!g){var x=await d.requestUrl({url:r.path});if(!x||200!=x.status||!x.arrayBuffer)return void new d.Notice(b("File Is Not Exist")+":"+r.path);m=x.arrayBuffer,f&&this.app.vault.adapter.writeBinary(f+y,m)}}else m=await this.app.vault.adapter.readBinary(l);if(this._haveOpenEpub&&(this._haveOpenPdf=!1,this._haveOpenEpub=!1,this.iframe&&this.pdfContainer.removeChild(this.iframe)),this._haveOpenPdf)E=r.path.startsWith("file://")||r.path.startsWith("http")?r.path:d.normalizePath(r.path),this.iframe.contentWindow.postMessage({annotations:c||[],data:m,type:"openPDF",pdfName:E,id:e||window.waitPdfId||"",basename:r.basename,_viewMark:this._viewMark,isMobile:d.Platform.isMobileApp,imageFolder:i.plugin.settings.imageFolder||"",mdPath:i.file.path,language:d.moment.locale(),top:k,bottom:I,mdId:B||"",useTranslate:this.plugin.settings.useTranslate,translateAppId:this.plugin.settings.translateAppId,translateKey:this.plugin.settings.translateKey,translateType:this.plugin.settings.translateType,translateTo:this.plugin.settings.translateTo},"*"),Object.assign(window,{waitPdfId:""});else{this._haveOpenPdf=!0,this.iframe=document.createElement("iframe"),this.pdfContainer.appendChild(this.iframe),this.iframe.style.width="100%",this.iframe.style.height="100%",this.iframe.style.borderWidth="0",this.plugin.settings.viewerTheme;var w=this.app.vault.adapter.getResourcePath(".obsidian/pdfjs/web/viewer.html");if(w=decodeURIComponent(w),d.Platform.isDesktopApp?this.iframe.src=w:d.Platform.isAndroidApp?this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=w:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("andriod/pdfjs/web/viewer.html")):d.Platform.isIosApp&&(this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=w:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("ios/pdfjs/web/viewer.html"))),r.path.startsWith("file://"))var E=r.path;else E=r.path.startsWith("http")?r.path:d.normalizePath(r.path);var C=i.plugin.settings.imageFolder||"";this.fileCache&&this.fileCache.frontmatter&&this.fileCache.frontmatter["annotate-image-target"]&&(C=this.fileCache.frontmatter["annotate-image-target"]);var k=0;this.plugin.settings.annotateTop&&this.plugin.settings.annotateTop&&(k=this.plugin.settings.annotateTop);var I=0;if(this.plugin.settings.annotateBottom&&this.plugin.settings.annotateBottom&&(I=this.plugin.settings.annotateBottom),this.fileCache&&this.fileCache.frontmatter&&this.fileCache.frontmatter.id)var B=this.fileCache.frontmatter.id;this.iframe.onload=function(){i.iframe.contentWindow.postMessage({annotations:c||[],data:m,type:"openPDF",pdfName:E,id:e||window.waitPdfId||"",basename:r.basename,_viewMark:i._viewMark,isMobile:d.Platform.isMobileApp,imageFolder:C,mdPath:i.file.path,language:d.moment.locale(),top:k,bottom:I,mdId:B||"",useTranslate:i.plugin.settings.useTranslate,translateAppId:i.plugin.settings.translateAppId,translateKey:i.plugin.settings.translateKey,translateType:i.plugin.settings.translateType,translateTo:i.plugin.settings.translateTo},"*"),Object.assign(window,{waitPdfId:""})},this.pdfContainer.style.display="block"}this.addMessageEvent()}}async setEpub(t,e){var i=this.leaf.view,n=this;if(t){var s={};try{if(t.startsWith("file://")){if(d.Platform.isMobileApp)return void new d.Notice(b("Mobile app not support"));if(d.Platform.isDesktopApp){var o=t.replace("file://","");if(!zM.existsSync(o))return void new d.Notice(b("File Is Not Exist")+":"+t);var r=WM.basename(t);s.path=t,s.basename=r,s.absolutePath=o;var a=t;if(this.pdf_real_path&&this.pdf_real_path==a)return;this.pdf_real_path=a,this.pdf_path=s}}else{if(!(s=this.app.metadataCache.getFirstLinkpathDest(t,null==i?void 0:i.file.path))){var h=d.normalizePath(this.app.vault.adapter.basePath)+"/"+t;return void new d.Notice(b("File Is Not Exist")+":"+t)}if(a=this.app.vault.getResourcePath(s),this.pdf_real_path&&this.pdf_real_path==a)return}if(this.pdf_real_path=a,this.pdf_path=s,h=d.normalizePath(s.path),s.path.startsWith("file:/"))var l=zM.readFileSync(s.absolutePath);else l=await this.app.vault.adapter.readBinary(h);this._haveOpenEpub=!0,this._haveOpenPdf=!0,this.iframe&&this.pdfContainer.removeChild(this.iframe),this.addEpubMessageEvent(),this.iframe=document.createElement("iframe"),this.pdfContainer.appendChild(this.iframe),this.iframe.style.width="100%",this.iframe.style.height="100%",this.iframe.style.borderWidth="0";var c=this.app.vault.adapter.getResourcePath(".obsidian/pdfjs/epub/viewer.html");c=decodeURIComponent(c),d.Platform.isDesktopApp?this.iframe.src=c:d.Platform.isAndroidApp?this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=c:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("andriod/pdfjs/epub/viewer.html")):d.Platform.isIosApp&&(this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=c:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("ios/pdfjs/epub/viewer.html")));var u=this.getAnnotations(this.data);this.iframe.onload=function(){setTimeout((()=>{n.iframe.contentWindow.postMessage({annotations:u||[],data:l,type:"openEpub",pdfName:s.path,id:e||window.waitPdfId||"",basename:s.basename,_viewMark:n._viewMark,isMobile:d.Platform.isMobileApp,language:d.moment.locale()},"*"),Object.assign(window,{waitPdfId:""})}),800)},this.pdfContainer.style.display="block"}catch(p){new d.Notice("Open epub file error")}}}setPdfjsVersion(t){if(this.iframe){var e="useOldVersion";t&&(e="useNewVersion"),this.iframe.contentWindow.postMessage({type:e},"*")}}addEpubMessageEvent(){var t=this;this.removeMessageEvent(),this.messageEvent=function(e){if(e.data._viewMark==t._viewMark)switch(e.data.type){case"saveAnnotations":var i=e.data.annotations;t.saveEpubAnnotations(i);break;case"showMindmapAnnotate":var n=t.app.workspace.getLeavesOfType(_M),s=e.data.id;n.length&&n.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((e=>{if(e){if(e.getData().text.indexOf(s)>-1){if(!e.isShow())for(var i=!0,n=e;n;)n.isExpand||n.expand(),n=n.parent||n.belongInduce&&n.belongInduce.node;return i&&t.view.mindmap.refresh(),void t.view.mindmap.showNode(e)}e.getAnnotateId()==s&&t.view.mindmap.showNode(e)}}))}));var o=e.data,r=e.data.annotateType;if(t.plugin.settings.openProtocol&&t.plugin.settings.protocol){if("epub-rect"==r){var a=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(o.id)}`;t.win.navigator.clipboard.writeText(`![[${o.path}]] [📌](${a})`)}else if("epub-highlight"==r){if(a=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(o.id)}`,t.plugin.settings.removeSpace)var h=(o.text||"").replace(/\s/g,"");else h=o.text||"";t.win.navigator.clipboard.writeText(`${h} [📌](${a})`)}}else t.win.navigator.clipboard.writeText(JSON.stringify(o))}}.bind(this),this.win.addEventListener("message",this.messageEvent,!1)}async _exportHighlights(){var t=[];if(this.useMarkdown||this.pdf_path.path.startsWith("file:/")||this.pdf_path.path.startsWith("http"))t=this.getAnnotations(this.data);else{var e=this.annotate_path;if(await this.app.vault.adapter.exists(e)){var i=await this.app.vault.adapter.read(e);i.trim()&&(t=JSON.parse(i.trim()))}}var n=this.plugin.settings.highlightFormat,s=this;if(n&&t&&t.length){var o=[],r="";t.forEach(((t,e)=>{var i;try{var a=JSON.parse(t.text)}catch(v){a=t}0==e&&(r=t.pdfName);var h="",l="",d=new RegExp("{{highlightText}}","ig");if("highlight"==t.type||"underline"==t.type||"strokout"==t.type){var c=n.replace(d,t.selectText||t.text);a.color&&a.color.r?h=`${a.color.r},${a.color.g},${a.color.b}`:a.color&&(h=null==(i=a.color)?void 0:i.trim().substring(4,a.color.length-1)),l=`obsidian://${s.plugin.settings.protocol}?pdf=${encodeURIComponent(a.pdfName)}&annotate=${encodeURIComponent(t.id)}`}else c=n.replace(d,"![["+a.path+"]]"),l=`obsidian://${s.plugin.settings.protocol}?pdf=${encodeURIComponent(a.pdfName)}&annotate=${encodeURIComponent(t.id)}`;var u=new RegExp("{{page}}","ig"),p=new RegExp("{{comment}}","ig"),m=new RegExp("{{id}}","ig"),f=new RegExp("{{color}}","ig"),g=new RegExp("{{link}}","ig");c=(c=(c=(c=(c=c.replace(u,(t.page||t.position.pageIndex)+1)).replace(p,a.contents||a.comments||"")).replace(m,t.id)).replace(f,h)).replace(g,l),o.push(c)}));var a="[["+r+"]]\n\n"+o.join("\n"),h=this.file.path;h=h.substring(0,h.length-3),h+="-exportHighlight.md",this.app.vault.adapter.write(h,a)}}async _ectractHighlightOfPdf(){var t=this;if(d.Platform.isDesktopApp){if(this._extractHighlight=!0,this._openIframeSrc=this.iframe.getAttribute("src"),this.iframe.src=this.app.vault.adapter.getResourcePath(".obsidian/pdfjs/pdfextract/extract.html"),this.pdf_path.path.startsWith("file:/"))var e=zM.readFileSync(this.pdf_path.absolutePath);else e=await this.app.vault.adapter.readBinary(this.pdf_path.path);setTimeout((()=>{t.iframe.contentWindow.postMessage({data:e,type:"openPDF",_viewMark:t._viewMark,language:d.moment.locale()},"*")}),800)}}addMessageEvent(){var t=this;this.removeMessageEvent(),this.messageEvent=async function(e){if(e.data._viewMark==t._viewMark)switch(e.data.type){case"translate":if(p=e.data.url){var i=await d.requestUrl({url:p});if(i&&200==i.status&&i.arrayBuffer)var n=String.fromCharCode.apply(null,new Uint8Array(i.arrayBuffer))}break;case"touchstart":new d.Notice("touchstart");break;case"showMindmapAnnotate":var s=t.app.workspace.getLeavesOfType(_M),o=e.data.id;s.length&&s.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((e=>{if(e){if(e.getData().text.indexOf(o)>-1){if(!e.isShow())for(var i=!0,n=e;n;)n.isExpand||n.expand(),n=n.parent||n.belongInduce&&n.belongInduce.node;return i&&t.view.mindmap.refresh(),void t.view.mindmap.showNode(e)}e.getAnnotateId()==o&&t.view.mindmap.showNode(e)}}))}));var r=e.data.data,a=e.data.annotateType,h=e.data.mdId;if(t.plugin.settings.openProtocol&&t.plugin.settings.protocol){var l=JSON.parse(r.text);if("rect"==a){var c=(z=l.path.replace(/\\/g,"/")).lastIndexOf("/"),u=z.substr(c+1);if(h)var p=`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`;else p=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(l.pdfName)}&annotate=${encodeURIComponent(r.id)}`;if(this.plugin.settings.annotateFormat){var m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig");return m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`![[${u||l.path}]]`)).replace(g,r.page+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m)}t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${p})`):t.win.navigator.clipboard.writeText(`![[${u||l.path}]] [📌](${p})`)}else{if(p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(l.pdfName)}&annotate=${encodeURIComponent(r.id)}`,T=t.plugin.settings.removeSpace)var y=(r.selectText||"").replace(/\s/g,"");else y=r.selectText||"";if(this.plugin.settings.annotateFormat)return m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${y}`)).replace(g,r.page+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m);t.plugin.settings.onlyCopyLink?(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`[📌](${p})`)):(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`${y} [📌](${p})`))}}else t.win.navigator.clipboard.writeText(JSON.stringify(r));break;case"createHighlight":case"updateHighlight":case"deleteAnnotate":var x=e.data.annotations,w=e.data.newAnnotate;t.saveAnnotations(x);break;case"create rect annotate":new d.Notice(b("Creating Rect Annotate"));break;case"cancel create rect annotate":new d.Notice(b("Cancel Create Rect Annotate"));break;case"delete mindmap annotate":s=t.app.workspace.getLeavesOfType(_M),o=e.data.id,s.length&&s.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((t=>{t&&t.getAnnotateId()==o&&t.deleteAnnotate()}))}));break;case"createRect":var E=e.data.isNew,C=e.data.imagePath,k=e.data.dataBuffer,I=(r=e.data.data,e.data.relateRect),B=e.data.imageOptions;x=e.data.annotations,h=e.data.mdId,t.app.vault.adapter.writeBinary(C,k).then((()=>{r.relateRect=I||[],r.pdfName=t.pdf_path.path,r.path=C;var e=r.path.replace(/\\/g,"/"),i=e.lastIndexOf("/"),n=e.substr(i+1);if(t.plugin.settings.openProtocol){if(h)var s=`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`;else s=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`;t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${s})`):t.win.navigator.clipboard.writeText(`![[${n||r.path}]] [📌](${s})`)}else t.win.navigator.clipboard.writeText(JSON.stringify({id:r.id,type:"rect",action:"create pdf annotate",path:C,width:B.width,height:B.height,page:r.page,text:JSON.stringify(r),pdfName:t.pdf_path.path}));var o=this.app.metadataCache.getFirstLinkpathDest(C,this.file.path);if(t.iframe.contentWindow.postMessage({type:"saveImagePath",_viewMark:t._viewMark,id:r.id,imagePath:t.app.vault.getResourcePath(o)},"*"),t.saveAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate){var a=t.app.workspace.getLeavesOfType(_M);if(a&&a.length){var l=a.filter((t=>t&&t.view&&t.view.mindmap));if(l&&l.length&&E){var d=l[0].view.mindmap,c=d.selectNode||d.root;if(s=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`,this.plugin.settings.annotateFormat){var u="",p=new RegExp("{{highlightText}}","ig"),m=new RegExp("{{page}}","ig"),f=new RegExp("{{id}}","ig"),g=new RegExp("{{link}}","ig");u=(u=(u=(u=this.plugin.settings.annotateFormat.replace(p,`![[${n||r.path}]]`)).replace(m,r.page+1)).replace(f,r.id)).replace(g,s)}d.execute("addChildNode",{parent:c,data:{text:u||`![[${n||r.path}]] [📌](${s})`,note:r.contents||""}}),d._hideMenu()}}}})).catch((t=>{new d.Notice(b("Save Image error,Please try again"))}));break;case"comment":x=e.data.annotations,t.saveAnnotations(x);break;case"exportAnnotatePDF":var D=e.data.pdfData;setTimeout((async()=>{var e=t.pdf_path.path,i=e.substr(0,e.length-4);i+="-annotate.pdf";var n=d.normalizePath(i);await t.app.vault.adapter.writeBinary(n,D),new d.Notice(`${b("Export annotate pdf success")}`)}),200);break;case"extractHighlight":x=e.data.annotations;var M=e.data.width,N=e.data.height,L=[];x.length&&x.forEach((t=>{var e=KM(),i={id:e,page:t.page-1,type:"highlight",selectText:t.markup,pdfName:this.pdf_path.path,text:{id:e,page:t.page-1,rect:t.rect,contents:t.content,author:"",color:{r:t.color[0],g:t.color[1],b:t.color[2]},opacity:1,quadPoints:null,selectText:t.markup,relateRect:null,pdfName:this.pdf_path.path}};t.quadPoints&&(i.text.relateRect=[],t.quadPoints.forEach((t=>{i.text.relateRect.push({x:t.x/M,y:(N-t.y-t.height)/M,width:t.width/M,height:t.height/M})}))),i.text=JSON.stringify(i.text),L.push(i)})),t.saveAnnotations(L),new d.Notice(b("extract highlight success")),this.plugin.mindmapFileModes[this.id||this.file.path]="markdown",this.plugin.setMarkdownView(this.leaf),this._extractHighlight=!1;break;case"saveAnnotations":if(x=e.data.annotations,t.saveAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate&&(w=e.data.newAnnotate,h=e.data.mdId,w&&(s=t.app.workspace.getLeavesOfType(_M))&&s.length&&(P=s.filter((t=>t&&t.view&&t.view.mindmap)))&&P.length)){var S=(F=P[0].view.mindmap).selectNode||F.root;l=JSON.parse(w.text),p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(w.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(l.pdfName)}&annotate=${encodeURIComponent(w.id)}`,this.plugin.settings.annotateFormat&&(m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${w.selectText}`)).replace(g,w.page+1)).replace(v,w.id)).replace(A,p)),F.execute("addChildNode",{parent:S,data:{text:m||`${w.selectText} [📌](${p})`,note:w.contents||""}}),F._hideMenu()}break;case"copyText":n=e.data.text,t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(n);break;case"saveNewAnnotations":var P;if(x=e.data.annotations,t.saveNewAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate)if(w=e.data.newAnnotate,h=e.data.mdId,w&&(s=t.app.workspace.getLeavesOfType(_M))&&s.length&&(P=s.filter((t=>t&&t.view&&t.view.mindmap)))&&P.length){var F;S=(F=P[0].view.mindmap).selectNode||F.root,p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(w.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(w.pdfName)}&annotate=${encodeURIComponent(w.id)}`;var T=this.plugin.settings.removeSpace;this.plugin.settings.annotateFormat&&(m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${w.text}`)).replace(g,w.position.pageIndex+1)).replace(v,w.id)).replace(A,p),T&&(m=m.replace(/\s/g,""))),T&&!m&&(w.text=w.text.replace(/\s/g,"")),F.execute("addChildNode",{parent:S,data:{text:m||`${w.text} [📌](${p})`,note:w.comments||""}}),F._hideMenu()}break;case"showNewMindmapAnnotate":if(s=t.app.workspace.getLeavesOfType(_M),o=e.data.id,s.length&&s.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((e=>{if(e){if(e.getData().text.indexOf(o)>-1){if(!e.isShow())for(var i=!0,n=e;n;)n.isExpand||n.expand(),n=n.parent||n.belongInduce&&n.belongInduce.node;return i&&t.view.mindmap.refresh(),void t.view.mindmap.showNode(e)}e.getAnnotateId()==o&&t.view.mindmap.showNode(e)}}))})),r=e.data.data,a=e.data.annotateType,h=e.data.mdId,t.plugin.settings.openProtocol&&t.plugin.settings.protocol)if("image"==a||"ink"==a){var z;if(c=(z=r.path.replace(/\\/g,"/")).lastIndexOf("/"),u=z.substr(c+1),p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(r.pdfName)}&annotate=${encodeURIComponent(r.id)}`,this.plugin.settings.annotateFormat)return m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`![[${u||r.path}]]`)).replace(g,r.position.pageIndex+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m);t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${p})`):t.win.navigator.clipboard.writeText(`![[${u||r.path}]] [📌](${p})`)}else{if(p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(r.pdfName)}&annotate=${encodeURIComponent(r.id)}`,y=(T=t.plugin.settings.removeSpace)?(r.text||"").replace(/\s/g,""):r.text||"",this.plugin.settings.annotateFormat)return m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${y}`)).replace(g,r.position.pageIndex+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m);t.plugin.settings.onlyCopyLink?(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`[📌](${p})`)):(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`${y} [📌](${p})`))}else t.win.navigator.clipboard.writeText(JSON.stringify(r));break;case"createNewRect":E=e.data.isNew,C=e.data.imagePath,k=e.data.dataBuffer,r=e.data.data,B=e.data.imageOptions,x=e.data.annotations,h=e.data.mdId,t.app.vault.adapter.writeBinary(C,k).then((()=>{r.pdfName=t.pdf_path.path,r.path=C;var e=r.path.replace(/\\/g,"/"),i=e.lastIndexOf("/"),n=e.substr(i+1);if(t.plugin.settings.openProtocol){if(h)var s=`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`;else s=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`;t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${s})`):t.win.navigator.clipboard.writeText(`![[${n||r.path}]] [📌](${s})`)}else t.win.navigator.clipboard.writeText(JSON.stringify({id:r.id,type:"rect",action:"create pdf annotate",path:C,width:B.width,height:B.height,page:r.page,text:JSON.stringify(r),pdfName:t.pdf_path.path}));var o=this.app.metadataCache.getFirstLinkpathDest(C,this.file.path);if(t.iframe.contentWindow.postMessage({type:"saveImagePath",_viewMark:t._viewMark,id:r.id,imagePath:t.app.vault.getResourcePath(o)},"*"),t.saveNewAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate){var a=t.app.workspace.getLeavesOfType(_M);if(a&&a.length){var l=a.filter((t=>t&&t.view&&t.view.mindmap));if(l&&l.length&&E){var d=l[0].view.mindmap,c=d.selectNode||d.root;if(s=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`,this.plugin.settings.annotateFormat){var u="",p=new RegExp("{{highlightText}}","ig"),m=new RegExp("{{page}}","ig"),f=new RegExp("{{id}}","ig"),g=new RegExp("{{link}}","ig");u=(u=(u=(u=this.plugin.settings.annotateFormat.replace(p,`![[${n||r.path}]]`)).replace(m,r.position.pageIndex+1)).replace(f,r.id)).replace(g,s)}d.execute("addChildNode",{parent:c,data:{text:u||`![[${n||r.path}]] [📌](${s})`,note:r.comments||""}}),d._hideMenu()}}}})).catch((t=>{console.log(t),new d.Notice(b("Save Image error,Please try again"))}))}}.bind(this),this.win.addEventListener("message",this.messageEvent,!1)}removeMessageEvent(){this.messageEvent&&this.win.removeEventListener("message",this.messageEvent,!1)}saveAnnotations(t){if(this.useMarkdown||this.pdf_path.path.startsWith("file:")||this.pdf_path.path.startsWith("http")){var e=this.getAnnotateMarkdown(t);this.data=e,this.requestSave()}else this.app.vault.adapter.write(this.annotate_path,JSON.stringify(t))}saveNewAnnotations(t){if(this.useMarkdown||this.pdf_path.path.startsWith("file:")||this.pdf_path.path.startsWith("http")){var e=this.getNewAnnotateMarkdown(t);this.data=e,this.requestSave()}else this.app.vault.adapter.write(this.annotate_path,JSON.stringify(t))}saveEpubAnnotations(t){if(this.useMarkdown||this.pdf_path.path.startsWith("file:")){var e=this.getEpubAnnotationsMarkdown(t);this.data=e,this.requestSave()}else this.app.vault.adapter.write(this.annotate_path,JSON.stringify(t))}showOutline(t){var e=this.leaf.view;this.isShowOutline=!0;var i=document.createElement("div");i.classList.add("mm-router"),this.list&&(this.list.clear(),this.mindmapContainer.innerHTML=""),this.appContainer.contains(this.mindmapContainer)||this.appContainer.appendChild(this.mindmapContainer),this.mindmapContainer.appendChild(i);var n=document.createElement("div");n.classList.add("mm-link-board"),this.mindmapContainer.appendChild(n),n.style.display="none";var s,o,r=document.createElement("ul");if(r.classList.add("mm-list"),this.mindmapContainer.appendChild(r),"basic"==this._mode){var a=this.getMdText(this.data);(h=this.mdToData(a)).isRoot=!0,h.main=!0,this.list=new BC(r,h),this.list.path=null==e?void 0:e.file.path,this.list.colors=this.colors,this.list._mode="basic",this.list.view=this,this.list.setting=this.plugin.settings,this.list.nodeElements=t,this.list.init()}else{a=this.getMdText(this.data);var h,l=(h=JSON.parse(a)).mindData[0];if(!l)return;var d=(s=null,o={},l.forEach((t=>{o[t.id]=t,t.children||(t.children=[]),t.pid||(s=t),t.pid&&o[t.pid]&&o[t.pid].children.push(t)})),s);this.list=new BC(r,d),this.list.oldRichData=h,this.list.path=null==e?void 0:e.file.path,this.list.colors=this.colors,this.list.view=this,this.list.setting=this.plugin.settings,this.list.nodeElements=t,this.list.init(d,{},"rich"),this.list._mode="rich"}this.mindmapContainer.style.visibility="visible",this.mindmapContainer.scrollTop=0}showTableMode(){var t=this.leaf.view;if(this.isShowTable=!0,"basic"==this._mode){var e=this.getMdText(this.data),i=this.mdToData(e);i.isRoot=!0,i.main=!0;var n=this.plugin.settings||{},s=this,o={data:function(){return{path:null==t?void 0:t.file.path,colors:s.colors.slice(),_mode:"table",isMobile:d.Platform.isMobileApp,useCustomShortcut:s.plugin.settings.useCustomShortcut,xmindImageTarget:s.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:s.plugin.settings.autoCenter,addCollapseNodeMark:s.plugin.settings.addCollapseNodeMark,mindData:i,settings:n}}};try{this.vueapp=new Bn({mixins:[o],i18n:YA,render:t=>t(tA)}),this.vueapp.$mount(this.mindmapContainer)}catch(Cn){console.log(Cn)}}}showTable(t){this.mindmap&&(this.mindmap.initTable(t),this.mindmap.view=this)}onunload(){this.app.workspace.offref("quick-preview"),this.app.workspace.offref("resize"),this.mindmap&&(this.mindmap.clear(),this.contentEl.innerHTML="",this.mindmap=null),this.list&&(this.list.clear(),this.contentEl.innerHTML="",this.list=null),this.translateView&&(this.translateView.clear(),this.contentEl.innerHTML="",this.translateView=null),this.historyDom&&(this.historyDom.querySelector("input").onchange=null,this.historyDom.querySelector("input").oninput=null,this.historyDom.querySelector(".mm-history-container").onclick=null,this.historyDom.querySelector(".mm-history-close").onclick=null,this.historyDom.innerHTML=""),this._haveOpenPdf&&this._closePDF(),Object.assign(window,{onlyPdf:!1}),this.plugin.setMarkdownView(this.leaf)}onload(){super.onload(),this.registerEvent(this.app.workspace.on("quick-preview",(()=>this.onQuickPreview),this)),this.registerEvent(this.app.workspace.on("resize",(()=>{this.mindmap&&d.Platform.isDesktopApp&&(this.mindmap.selectNode||this.mindmap.root)}),this))}onQuickPreview(t,e){}updateMindMap(){this.mindmap&&this.mindmap.center()}onFileRename(t,e){this.mindmap&&this.mindmap.path&&this.mindmap.path==e&&(this.mindmap.path=t.path)}async onFileMetadataChange(t){t.path,this.fileCache=this.app.metadataCache.getFileCache(t)}getNodeElements(){var t="",e=[],i=[],n={};this.haveNodeElement=!1;var s=this.data.match(/### node element start([\s\S]*?)### node element end/);if(s&&(this.haveNodeElement=!0,t=s[1])){e=t.split("\n");var o=[];e.length&&e.forEach((t=>{var e=/^.+ \^([a-z0-9\-]+)$/gim.exec(t);if(e){var s=e[1];o.push(t);var r=o.join("\n");r=r.replace(` ^${s}`,""),i.push({id:s,text:r.trim()}),n[s]=r.trim(),o=[]}else o.push(t)}))}return n}getMdText(t){if("basic"==this._mode)return t.trim().replace(vl,"").trim();var e=t.match(/^(\`\`\` json)$.+?^(\`\`\`)$.+?/ims),i=!1;if(this.richFlag=!1,e||(e=t.match(/^(\`\`\`json)$.+?^(\`\`\`)$.+?/ims),i=!0,this.richFlag=!0),e&&e.length>0){if(this.richFirstSave=!1,i){var n=e[0].substring(7,e[0].length-4).trim();(o=document.createElement("div")).innerText=n;var s=[];for(let t=0;t{o.removeChild(t)})),o.textContent}var o;n=e[0].substring(8,e[0].length-4).trim(),(o=document.createElement("div")).innerText=n,s=[];for(let t=0;t{o.removeChild(t)})),o.textContent}return this.richFirstSave=!0,JSON.stringify({mindData:[[{id:KM(),text:"Root",isRoot:!0,main:!0,x:this.plugin.settings.canvasSize/2,y:this.plugin.settings.canvasSize/2,isExpand:!0,layout:{layoutName:"mindmap2",direct:""}}]]})}mdToData(t){var e;if(t){const{root:e}=VM.transform(t);return XM(e,"",this.colors)}return{id:KM(),text:(null==(e=this.app.workspace.getActiveFile())?void 0:e.basename)||`${b("Untitled mindmap")}`}}onMoreOptionsMenu(t){this.translateView&&t.addItem((t=>{t.setTitle(`${b("Copy full text translations")}`).setIcon("document").onClick((()=>{if(this.translateView){var t=this.translateView.getTranslation();this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(t)}}))})),this._haveOpenPdf?(t.addItem((t=>{t.setTitle(`${b("Open as markdown")}`).setIcon("document").onClick((()=>{this.plugin.mindmapFileModes[this.id||this.file.path]="markdown",this.plugin.setMarkdownView(this.leaf)}))})),t.addItem((t=>{t.setTitle(`${b("Full text translate")}`).setIcon("document").onClick((async()=>{var t=this.pdf_path.path||"";if(t.startsWith("http")||t.startsWith("file"))new d.Notice(b("Pdf in vault"));else{var e=t.substr(0,t.length-3)+"translation";if(await this.app.vault.adapter.exists(e))this.openFullText(t);else{var i=await this.app.vault.adapter.readBinary(d.normalizePath(t));this.getPDFxml(i,d.normalizePath(t))}}}))})),d.Platform.isDesktopApp&&(t.addItem((t=>{t.setTitle(`${b("Export annotate pdf")}`).setIcon("document").onClick((async()=>{new d.Notice(`${b("Export annotate pdf tip")}`),this.iframe.contentWindow.postMessage({type:"exportAnnotatePDF"},"*")}))})),t.addItem((t=>{t.setTitle(`${b("Export pdf annotations")}`).setIcon("document").onClick((async()=>{await this._exportHighlights()}))})),t.addItem((t=>{t.setTitle(`${b("Get pdf annotations")}`).setIcon("document").onClick((async()=>{new d.Notice(`${b("Export annotate pdf tip")}`),await this._ectractHighlightOfPdf()}))})),this.plugin.settings.activeCode)):(t.addItem((t=>{t.setTitle(`${b("Open as markdown")}`).setIcon("document").onClick((()=>{this.plugin.mindmapFileModes[this.id||this.file.path]="markdown",this.plugin.setMarkdownView(this.leaf)}))})),t.addItem((t=>{t.setTitle(`${b("Open as outline")}`).setIcon("document").onClick((()=>{if(this.mindmap&&(this.mindmap.clear(),this.mindmap.useHandMode&&(this._useHandDraw=!1),this.mindmap=null),this.vueapp)try{this.vueapp.$destroy(),this.appContainer.contains(this.vueapp.$el)&&(this.appContainer.removeChild(this.vueapp.$el),this.vueapp.$el.innerHTML=""),this.vueapp=null}catch(e){console.log(e),this.vueapp=null}this.mindmapContainer.innerHTML="",this.appContainer.contains(this.mindmapContainer)||this.appContainer.appendChild(this.mindmapContainer),this.forceMindMapMode=!1;var t=this.getNodeElements();this.showOutline(t)}))})),this.mindmap&&"basic"==this._mode&&(t.addItem((t=>{t.setTitle(`${b("Open as table")}`).setIcon("document").onClick((()=>{this.forceMindMapMode=!1,this.isShowOutline=!1,this.isShowTable=!0,this.showTable(this.mindmap.data)}))})),t.addItem((t=>{t.setTitle(`${b("Create hand drawn mindmap")}`).setIcon("document").onClick((()=>{this.mindmap&&(this.mindmap.useHandMode&&(this.mindmap.useHandMode=!1),this._useHandDraw=!0,this.setViewData(this.data),setTimeout((()=>{this.mindmap&&this.mindmap.refresh(),this.mindmap&&this.mindmap.clearSelectNode()}),1200))}))})),this.isShowTable&&(t.addItem((t=>{t.setTitle(`${b("Open as mindmap board")}`).setIcon("document").onClick((async()=>{this.mindmapContainer.innerHTML="",this.isShowOutline=!1,this.isShowTable=!1,this.forceMindMapMode=!0,this.mindmap&&this.mindmap.clear(),this.vueapp&&(this.vueapp.$destroy(),this.appContainer.contains(this.vueapp.$el)&&(this.appContainer.removeChild(this.vueapp.$el),this.vueapp.$el.innerHTML=""),this.vueapp=null),this.setViewData(this.data)}))})),t.addItem((t=>{t.setTitle(`${b("get table markdown")}`).setIcon("document").onClick((async()=>{if(this.isShowTable&&this.mindmap){var t=JSON.parse(JSON.stringify(this.mindmap.data)),e=this.mindmap.getMarkdownOfTable(t);this.win.navigator.clipboard.writeText("");try{this.win.navigator.clipboard.writeText(RM.turndown(e))}catch(i){console.log(i)}this.mindmap.initTable()}}))})))),this.mindmap&&(t.addItem((t=>{t.setTitle(`${b("Toggle search box")}`).setIcon("document").onClick((()=>{this.mindmap._searchDom?this.mindmap.closeSearch():this.mindmap.createSearchDom()}))})),t.addItem((t=>{t.setTitle(`${b("Set mindmap to center")}`).setIcon("document").onClick((()=>{this.mindmap&&this.mindmap.center()}))})),t.addItem((t=>{t.setTitle(`${b("Copy as markdown")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t)var e=t.getLevel(),i=this.mindmap.getMarkdown(t,!0,e);else i=this.mindmap.getMarkdown();i&&(this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(i))}))})),t.addItem((t=>{t.setTitle(`${b("Copy node text")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t){var e=t.getData().text;e&&(this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(e))}}))}))),this.mindmap&&"rich"==this._mode&&(t.addItem((t=>{t.setTitle(`${b("Copy node link")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t){const{text:i,id:n}=t.getData();var e=`${i} [🔖](obsidian://jump-to-pdf?md=${encodeURIComponent(this.file.path)}&node=${encodeURIComponent(n)})`;this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(e)}}))})),t.addItem((t=>{t.setTitle(`${b("Copy node id")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t){const{text:e,id:i}=t.getData();this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(i)}}))}))),this.list&&t.addItem((t=>{t.setTitle(`${b("Open as mindmap board")}`).setIcon("document").onClick((async()=>{this.list.clear(),this.mindmapContainer.innerHTML="",this.isShowOutline=!1,this.isShowTable=!1,this.list=null,this.forceMindMapMode=!0,this.setViewData(this.data)}))}))),super.onMoreOptionsMenu(t)}async openPDF(t){if(this.plugin.settings.pdfjsPath){if(this.period)new d.Notice(b("The probation period has ended"));else if(this.setTime&&clearTimeout(this.setTime),!this.pdf_path){if(document.querySelector(".pdfViewer"))return void new d.Notice(b("PDF Cannot Open More Instances"));new d.Notice(b("Open PDF File"))}}else new d.Notice(b("Miss PDF Reader Path"))}getAnnotations(t){var e=[],i=t.match(/(\n>\`\`\`annotate-json\n)(.+?)(\n>\`\`\`\n)/gm),n=!1;return i||(i=t.match(/(\n> \`\`\`annotate-json\n)(.+?)(\n> \`\`\`\n)/gm),n=!0),i&&i.length&&i.forEach((t=>{try{t=n?t.substring(21,t.length-6):t.substring(20,t.length-5);var i=JSON.parse(t.trim());e.push(i)}catch(s){console.log(s)}})),e}getEpubAnnotationsMarkdown(t){var e=this,i="",n=this.plugin.settings.removeSpace;return t.forEach((t=>{var s=">%%\n>```annotate-json\n>";s+=JSON.stringify(t),s+="\n>```\n>%%\n",e.pdf_path.path,"epub-highlight"==t.type?s+=n?`>*${t.text.replace(/\s/g,"")}*\n`:`>*${t.text}*\n`:s+=`>![[${e.pdf_path.path}]]\n`,s+=`>[[#^${t.id}|${b("Show Annotate")}]]\n>\n^${t.id}\n\n`,i+=s})),`---\n\nannotate-type: epub\nannotate-target: ${this.pdf_path.path}\n\n---\n\n`+i}getAnnotateMarkdown(t){var e="",i=this.plugin.settings.removeSpace;t.forEach((t=>{var n=">%%\n>```annotate-json\n>";n+=JSON.stringify(t),n+="\n>```\n>%%\n";var s=JSON.parse(t.text);s.pdfName,"highlight"==t.type?n+=i?`>*${t.selectText.replace(/\s/g,"")}*\n`:`>*${t.selectText}*\n`:n+=`>![[${s.path}]]\n`,n+=`>[[#^${t.id}|${b("Show Annotate")}]]\n>\n^${t.id}\n\n`,e+=n}));var n=`---\n\nannotate-type: pdf\nannotate-target: ${this.pdf_path.path}\n\n---\n\n`;return this.frontmatter&&(n=this.frontmatter),n+e}getNewAnnotateMarkdown(t){var e="",i=this.plugin.settings.removeSpace;t.forEach((t=>{var n=">%%\n>```annotate-json\n>";n+=JSON.stringify(t),n+="\n>```\n>%%\n","highlight"==t.type||"underline"==t.type||"strokeout"==t.type?n+=i?`>*${t.text.replace(/\s/g,"")}*\n`:`>*${t.text}*\n`:n+=`>![[${t.path}]]\n`,n+=`>[[#^${t.id}|${b("Show Annotate")}]]\n>\n^${t.id}\n\n`,e+=n}));var n=`---\n\nannotate-type: pdf\nannotate-target: ${this.pdf_path.path}\n\n---\n\n`;return this.frontmatter&&(n=this.frontmatter),n+e}_closePDF(){this._close(),this.mindmapContainer.style.width="100%",this.pdfContainer.style.display="none",this.mindmap&&this.mindmap.center(),this.removeMessageEvent()}async openMindView(t,e){var i=this.app.metadataCache.getFirstLinkpathDest(e,null==this?void 0:this.file.path);const n=this.app.workspace.getLeavesOfType(_M);if(n.length){var s=null;if(n.forEach((t=>{t.view&&t.view.mindmap&&d.View.mindmap.path==i.path&&(s=t.view)})),s){var o=s.mindmap,r=o.getNodeById(t);r&&o.showNode(r)}else Object.assign(window,{"show-mindmap-node":t}),this.app.workspace.openLinkText(e,"","split")}else Object.assign(window,{"show-mindmap-node":t}),this.app.workspace.openLinkText(e,"","split")}async getAnnoateById(t){var e,i=null,n=this.app.vault.getMarkdownFiles();for(let o of n){var s=null==(e=this.app.metadataCache.getFileCache(o))?void 0:e.frontmatter;if(s&&s.id&&s.id==t){i=o;break}}return i}async showAnnotateByJson(t,e){const i=this.app.workspace.getLeavesOfType(_M);!!this.plugin.settings.isDecodeURl&&(e=decodeURI(e)),i.forEach((i=>{i.view&&i.view._haveOpenPdf&&i.view.pdf_path&&i.view.pdf_path.path.indexOf(e)>-1&&i.view.iframe.contentWindow.postMessage({type:"showAnnotateByJson",json:t},"*")}))}async showAnnotateById(t,e){var i,n=await this.getAnnoateById(e);if(n){var s=null==(i=this.app.metadataCache.getFileCache(n))?void 0:i.frontmatter,o=s&&s["annotate-target"];o&&this.showAnnotate(t,o)}else new d.Notice(b("Not find md file")+", Yaml id is:"+e)}async showAnnotate(t,e){if(!this.plugin.settings.supportPDF){try{this.app.workspace.openLinkText(e,"","split")}catch(Cn){console.log(Cn)}return}var i={};if(!!this.plugin.settings.isDecodeURl&&(e=decodeURI(e)),e.startsWith("file:/")){i.path=e,i.basename=WM.basename(e),i.absolutePath=e.replace("file://","");var n=e}else e.startsWith("http://")||e.startsWith("https://")?(i.path=e,i.basename=e,i.absolutePath=e,n=e):(i=this.app.metadataCache.getFirstLinkpathDest(e,null==this?void 0:this.file.path),n=this.app.vault.getResourcePath(i));const s=this.app.workspace.getLeavesOfType(_M);if(s.length){var o=null;if(s.forEach((t=>{t.view&&t.view._haveOpenPdf&&t.view.pdf_real_path==n&&(o=t.view)})),o)o.iframe.contentWindow.postMessage({id:t,type:"showAnnotate"},"*");else{if(e.startsWith("file:/")||e.startsWith("http"));else if((l=d.normalizePath(i.path)).endsWith(".pdf"))var r=l.substr(0,l.length-4)+"-annotate.md";else l.endsWith(".epub")&&(r=l.substr(0,l.length-5)+"-annotate.md");var a=await this.getAnnoate(i.path);if(Object.assign(window,{waitPdfId:t}),a)await this.app.workspace.openLinkText(a.path,"","split");else{if(e.startsWith("file:/")||e.startsWith("http"))return void new d.Notice(b("Not find md file"));var h=`---\nid: ${KM()}\nannotate-target: ${i.path}\n---\n`;await this.app.vault.adapter.write(r,h),setTimeout((()=>{this.app.workspace.openLinkText(r,"","split")}),200)}}}else{var l;if(r=(l=d.normalizePath(i.path)).substr(0,l.length-4)+"-annotate.md",await this.app.vault.adapter.exists(r))await this.app.workspace.openLinkText(r,"","split");else{if(a=await this.getAnnoate(i.path))return void(await this.app.workspace.openLinkText(a.path,"","split"));h=`---\nid: ${KM()}\nannotate-target: ${e}\n---\n`,await this.app.vault.adapter.write(r,h),setTimeout((()=>{this.app.workspace.openLinkText(r,"","split")}),100)}}}async getAnnoate(t){var e,i=null,n=this.app.vault.getMarkdownFiles(),s=encodeURI(t),o=encodeURIComponent(t);for(let a of n){var r=null==(e=this.app.metadataCache.getFileCache(a))?void 0:e.frontmatter;if(r&&r["annotate-target"]&&(r["annotate-target"]==t||r["annotate-target"]==s||r["annotate-target"]==o)){i=a;break}}return i}async getTranslateMd(t){var e,i=null,n=this.app.vault.getMarkdownFiles(),s=encodeURI(t),o=encodeURIComponent(t);for(let a of n){var r=null==(e=this.app.metadataCache.getFileCache(a))?void 0:e.frontmatter;if(r&&r["translate-target"]&&(r["translate-target"]==t||r["translate-target"]==s||r["translate-target"]==o)){i=a;break}}return i}async exportXmind(){if(this.period)new d.Notice(`${b("The probation period has ended")}`);else if(this.mindmap){var t=this.mindmap.exportXmind(),e=new Wd;this.mindmap.relateLinks&&this.mindmap.relateLinks.length&&(t[0].relationships=[],this.mindmap.relateLinks.forEach((e=>{var i=e.getData(),n={end1Id:i.startNodeId,end2Id:i.endNodeId,id:KM(),style:{id:KM(),properties:{}}};i.nodeData&&(n.title=i.nodeData.text),n.style.properties["line-color"]=i.color,t[0].relationships.push(n)}))),e.file("content.json",JSON.stringify(t)),e.folder("resources"),e.folder("Thumbnails"),e.file("metadata.json",'{"dataStructureVersion":"2","layoutEngineVersion":"3","creator":{"name":"Vana","version":"23.11.04336"}}'),e.file("manifest.json",'{"file-entries":{"content.json":{},"metadata.json":{},"Thumbnails/thumbnail.png":{}}}'),e.file("content.xml",'Warning\n警告\nAttention\nWarnung\n경고This file can not be opened normally, please do not modify and save, otherwise the contents will be permanently lost!You can try using XMind 8 Update 3 or later version to open该文件无法正常打开,请勿修改并保存,否则文件内容将会永久性丢失!你可以尝试使用 XMind 8 Update 3 或更新版本打开該文件無法正常打開,請勿修改並保存,否則文件內容將會永久性丟失!你可以嘗試使用 XMind 8 Update 3 或更新版本打開この文書は正常に開かないので、修正して保存しないようにしてください。そうでないと、書類の内容が永久に失われます。!XMind 8 Update 3 や更新版を使って開くこともできますDatei kann nicht richtig geöffnet werden. Bitte ändern Sie diese Datei nicht und speichern Sie sie, sonst wird die Datei endgültig gelöscht werden.Bitte versuchen Sie, diese Datei mit XMind 8 Update 3 oder später zu öffnen.Ce fichier ne peut pas ouvert normalement, veuillez le rédiger et sauvegarder, sinon le fichier sera perdu en permanence. Vous pouvez essayer d\'ouvrir avec XMind 8 Update 3 ou avec une version plus récente.파일을 정상적으로 열 수 없으며, 수정 및 저장하지 마십시오. 그렇지 않으면 파일의 내용이 영구적으로 손실됩니다!XMind 8 Update 3 또는 이후 버전을 사용하여-1Sheet 1\n');var i=this.file,n=i.path;if(n=i.path.substring(0,n.length-3),n+="-export.xmind",this.mindmap._exportImages.length){var s=JSON.parse('{"file-entries":{"content.json":{},"metadata.json":{},"Thumbnails/thumbnail.png":{}}}');this.mindmap._exportImages.forEach((t=>{e.folder("resources").file(`${t.name}.png`,t.image.substring(t.image.indexOf(",")+1),{base64:!0}),s["file-entries"][t.link]={}})),e.file("manifest.json",JSON.stringify(s)),this.mindmap._exportImages=[]}e.generateAsync({type:"arraybuffer"}).then((t=>{this.app.vault.adapter.writeBinary(n,t),new d.Notice(b("Export xmind success")+" : "+n)}))}}async onOpen(){}}class eN extends d.PluginSettingTab{constructor(t,e){super(t,e),this.plugin=e}display(){const{containerEl:t}=this;this.plugin.settings.setup||(this.plugin.settings.setup=(new Date).getTime()),this.plugin.settings.firstActive&&(this.plugin.settings.firstActive=0,this.plugin.saveData(this.plugin.settings)),t.empty(),new d.Setting(t).setName(`${b("Mindmap Render Type")}`).setDesc(`${b("Mindmap Render Type desc")}`).addDropdown((t=>t.addOption("svg","svg").addOption("html","html").setValue(this.plugin.settings.mindmapRenderType||"svg").onChange((t=>{this.plugin.settings.mindmapRenderType=t,this.plugin.saveData(this.plugin.settings)})))),new d.Setting(t).setName(`${b("Canvas size")}`).setDesc(`${b("Canvas size desc")}`).addDropdown((t=>t.addOption("4000","4000").addOption("6000","6000").addOption("8000","8000").addOption("10000","10000").addOption("12000","12000").addOption("16000","16000").addOption("20000","20000").addOption("24000","24000").addOption("30000","30000").addOption("36000","36000").addOption("40000","40000").addOption("50000","50000").addOption("60000","60000").addOption("70000","70000").addOption("80000","80000").addOption("90000","90000").addOption("100000","100000").addOption("110000","110000").addOption("120000","120000").addOption("160000","160000").addOption("200000","200000").addOption("240000","240000").addOption("300000","300000").addOption("400000","400000").addOption("500000","500000").addOption("600000","600000").addOption("700000","700000").addOption("800000","800000").addOption("1000000","1000000").setValue(this.plugin.settings.canvasSize.toString()||"80000").onChange((t=>{var e=Number.parseInt(t);this.plugin.settings.canvasSize=e,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var i=t.view;i&&i.mindmap&&i.mindmap.setting&&(i.mindmap.setting.canvasSize=e),i.mindmap.setAppSetting();var n=i.mindmap.root.getBox();i.mindmap.root.setPosition(e/2-n.width/2,e/2-n.height/2),i.mindmap.refresh(),i.mindmap.center()}))})))),new d.Setting(t).setName(`${b("Canvas background")}`).setDesc(`${b("Canvas background desc")}`).addText((t=>t.setValue(this.plugin.settings.background||"transparent").setPlaceholder("Example: black|white|#ccc").onChange((t=>{this.plugin.settings.background=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.background=this.plugin.settings.background,e.mindmap.setAppSetting()}))})))),new d.Setting(t).setName(`${b("Max level of node to markdown head")}`).setDesc(`${b("Max level of node to markdown head desc")}`).addDropdown((t=>t.addOption("0","0").addOption("1","1").addOption("2","2").addOption("3","3").addOption("4","4").addOption("5","5").addOption("6","6").setValue(this.plugin.settings.headLevel.toString()||"2").onChange((t=>{this.plugin.settings.headLevel=Number.parseInt(t),this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{t.view.mindmap.setting.headLevel=this.plugin.settings.headLevel}))})))),new d.Setting(t).setName(`${b("Font size")}`).setDesc(`${b("Font size desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.fontSize)?void 0:e.toString())||"16").setPlaceholder("Example: 16").onChange((t=>{this.plugin.settings.fontSize=Number.parseInt(t),this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.fontSize=this.plugin.settings.fontSize,e.mindmap.setAppSetting(),e.mindmap.traverseBF((t=>{t.boundingRect=null,t.refreshBox()})),e.mindmap.refresh()}))}))})),new d.Setting(t).setName(`${b("Mind map layout direct")}`).setDesc(`${b("Mind map layout direct desc")}`).addDropdown((t=>t.addOption("mind map",b("Centered")).addOption("right",b("Right")).addOption("left",b("Left")).setValue(this.plugin.settings.layoutDirect.toString()||"mind map").onChange((t=>{this.plugin.settings.layoutDirect=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.layoutDirect=this.plugin.settings.layoutDirect,e.mindmap.refresh()}))})))),new d.Setting(t).setName(`${b("Show node setup board")}`).setDesc(`${b("Show node setup board desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.showNodeBoard).onChange((t=>{this.plugin.settings.showNodeBoard=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Allow dblclick to create free node")}`).setDesc(`${b("Allow dblclick to create free node desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.allowDblickCreateNode).onChange((t=>{this.plugin.settings.allowDblickCreateNode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Allow lang touch to create free node")}`).setDesc(`${b("Allow lang touch to create free node desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.allowLangTouchCreateNode).onChange((t=>{this.plugin.settings.allowLangTouchCreateNode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Stroke Array")}`).setDesc(`${b("Stroke Array Desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.strokeArray)?void 0:e.toString())||"").setPlaceholder("Example: red,oragne,blue ...").onChange((t=>{this.plugin.settings.strokeArray=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.strokeArray=this.plugin.settings.strokeArray.split(","),e.mindmap.traverseBF((t=>{t.boundingRect=null,t.refreshBox()})),e.mindmap.refresh()}))}))})),new d.Setting(t).setName(`${b("Support PDF annotation")}`).setDesc(`${b("Support PDF annotation desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.supportPDF).onChange((t=>{this.plugin.settings.supportPDF=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Open Protocol")}`).setDesc(`${b("Open Protocol Desc")}`).addDropdown((t=>t.addOption("0",b("Close")).addOption("1",b("Open")).setValue(this.plugin.settings.openProtocol||"0").onChange((t=>{this.plugin.settings.openProtocol=Number.parseInt(t),this.plugin.saveData(this.plugin.settings),this.plugin.settings.openProtocol&&this.plugin.settings.protocol&&this.plugin.registerObsidianProtocol()})))),new d.Setting(t).setName(`${b("Annotation save type")}`).setDesc(`${b("Annotation save type desc")}`).addDropdown((t=>t.addOption("annos","annos").addOption("md","markdown").setValue(this.plugin.settings.useMarkdownSaveAnnotation).onChange((t=>{this.plugin.settings.useMarkdownSaveAnnotation=t,this.plugin.saveData(this.plugin.settings);const e=this.app.workspace.getLeavesOfType(_M);"md"==this.plugin.settings.useMarkdownSaveAnnotation?e.forEach((t=>{t.view.useMarkdown=!0})):e.forEach((t=>{t.view.useMarkdown=!1}))})))),new d.Setting(t).setName(`${b("Active Code")}`).setDesc(`${b("Active Code Desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.activeCode)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.activeCode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Mobile Active Code")}`).setDesc(`${b("Mobile Active Code Desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.mobileActiveCode)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.mobileActiveCode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("PDF Viewer Theme")}`).setDesc(`${b("PDF Viewer Theme desc")}`).addDropdown((t=>t.addOption("1","Light").addOption("2","Dark").setValue(this.plugin.settings.viewerTheme.toString()||"2").onChange((t=>{this.plugin.settings.viewerTheme=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)})))),new d.Setting(t).setName(`${b("Mindmap mode")}`).setDesc(`${b("Mindmap mode desc")}`).addDropdown((t=>t.addOption("basic","Basic").addOption("rich","Rich").setValue(this.plugin.settings.mindmapmode.toString()||"basic").onChange((t=>{this.plugin.settings.mindmapmode=t,this.plugin.saveData(this.plugin.settings)})))),new d.Setting(t).setName(`${b("Layout for basic mode")}`).setDesc(`${b("Layout for basic mode desc")}`).addDropdown((t=>{var e;return t.addOption("","").addOption("mindmap6","mindmap6").addOption("mindmap2","mindmap2").addOption("fish","fish").addOption("tree","tree").setValue((null==(e=this.plugin.settings.basicLayoutName)?void 0:e.toString())||"").onChange((t=>{this.plugin.settings.basicLayoutName=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Pdf screen short")}`).setDesc(`${b("Pdf screen short desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.imageFolder)?void 0:e.toString())||"").setPlaceholder("assets").onChange((t=>{this.plugin.settings.imageFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Remove annotate space")}`).setDesc(`${b("Remove annotate space desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.removeSpace).onChange((t=>{this.plugin.settings.removeSpace=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Smooth movement")}`).setDesc(`${b("Smooth movement desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.removeSpace).onChange((t=>{this.plugin.settings.useAnimate=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap.setting.useAnimate=t)}))}))})),new d.Setting(t).setName(`${b("Support code block")}`).setDesc(`${b("Support code block desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.openCodeBlock).onChange((t=>{this.plugin.settings.openCodeBlock=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("nodeColor")}`).setDesc(`${b("nodeColorDesc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.nodeColorArray)?void 0:e.toString())||"").setPlaceholder("Example: red,orange,#ccc").onChange((t=>{this.plugin.settings.nodeColorArray=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Format of pdf highlight")}`).setDesc(`${b("Format of pdf highlight desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.highlightFormat)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.highlightFormat=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Fine tune height of annotate")}`).setDesc(`${b("Fine tune height of annotate desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.annotateTop)?void 0:e.toString())||"0").setPlaceholder("Example: 0").onChange((t=>{this.plugin.settings.annotateTop=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Fine tune height of annotate")}`).setDesc(`${b("Fine tune height of annotate desc one")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.annotateBottom)?void 0:e.toString())||"0").setPlaceholder("Example: 0").onChange((t=>{this.plugin.settings.annotateBottom=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Decode URI pdf link")}`).setDesc(`${b("Decode URI pdf link desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.isDecodeURl).onChange((t=>{this.plugin.settings.isDecodeURl=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Auto create node when annotate")}`).setDesc(`${b("Auto create node when annotate desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.autoCreateNodeWhenAnnotate).onChange((t=>{this.plugin.settings.autoCreateNodeWhenAnnotate=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use custom short cut")}`).setDesc(`${b("Use custom short cut desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useCustomShortcut).onChange((t=>{this.plugin.settings.useCustomShortcut=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap.useCustomShortcut=t)}))}))})),new d.Setting(t).setName(`${b("PDF cache folder")}`).setDesc(`${b("PDF cache folder desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.cacheFolder)?void 0:e.toString())||"").setPlaceholder("cache").onChange((t=>{this.plugin.settings.cacheFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Folder of paste image")}`).setDesc(`${b("Folder of paste image desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.pasteFolder)?void 0:e.toString())||"").setPlaceholder("asset").onChange((t=>{this.plugin.settings.pasteFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Only copy annotate link")}`).setDesc(`${b("Only copy annotate link desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.onlyCopyLink).onChange((t=>{this.plugin.settings.onlyCopyLink=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Auto set node to center when tab node of mindmap")}`).setDesc(`${b("Auto set node to center when tab node of mindmap desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.autoCenter).onChange((t=>{this.plugin.settings.autoCenter=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap._autoCenter=t)}))}))})),new d.Setting(t).setName(`${b("Auto open search box")}`).setDesc(`${b("Auto open search box desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.autoOpenSearch).onChange((t=>{this.plugin.settings.autoOpenSearch=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Add collapse node mark")}`).setDesc(`${b("Add collapse node mark desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.addCollapseNodeMark).onChange((t=>{this.plugin.settings.addCollapseNodeMark=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap.addCollapseNodeMark=t)}))}))})),new d.Setting(t).setName(`${b("Only use obsidian folder for pdfjs plugin")}`).setDesc(`${b("Only use obsidian folder for pdfjs plugin desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.onlyUseObsidianFolder).onChange((t=>{this.plugin.settings.onlyUseObsidianFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("ChatGTP appkey")}`).setDesc(`${b("ChatGTP appkey desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.chatGTPKey)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.chatGTPKey=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("ChatGTP model")}`).setDesc(`${b("ChatGTP model desc")}`).addDropdown((t=>{var e;return t.addOption("gpt-3.5-turbo","gpt-3.5-turbo").addOption("gpt-3.5-turbo-1106","gpt-3.5-turbo-1106").addOption("gpt-4","gpt-4").addOption("gpt-4o","gpt-4o").addOption("gpt-4-0125-preview","gpt-4-0125-preview").addOption("gpt-4-1106-preview","gpt-4-1106-preview").addOption("gpt-4-turbo-preview","gpt-4-turbo-preview").setValue((null==(e=this.plugin.settings.chatGTPModel)?void 0:e.toString())||"gpt-3.5-turbo").onChange((t=>{this.plugin.settings.chatGTPModel=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("ProxyServer")}`).setDesc(`${b("ProxyServer desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.proxyServer)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.proxyServer=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use custom ai")}`).setDesc(`${b("Use custom ai")}`).addToggle((t=>{t.setValue(this.plugin.settings.customAi).onChange((t=>{this.plugin.settings.customAi=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("URL for custom ai")}`).setDesc(`${b("URL for custom ai")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.customAiUrl)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.customAiUrl=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Model for custom ai")}`).setDesc(`${b("Model for custom ai")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.customAiModel)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.customAiModel=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Appkey for custom ai")}`).setDesc(`${b("Appkey for custom ai")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.customAiAppKey)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.customAiAppKey=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Annotate template")}`).setDesc(`${b("Annotate template desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.annotateFormat)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.annotateFormat=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Support translate")}`).setDesc(`${b("Support translate desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useTranslate).onChange((t=>{this.plugin.settings.useTranslate=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Translation engine")}`).setDesc(`${b("Translation engine")}`).addDropdown((t=>{var e;return t.addOption("baidu",b("baidu")).setValue((null==(e=this.plugin.settings.translateType)?void 0:e.toString())||"baidu").onChange((t=>{this.plugin.settings.translateType=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Translate appid")}`).setDesc(`${b("Translate appid desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.translateAppId)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.translateAppId=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Translate secret")}`).setDesc(`${b("Translate secret desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.translateKey)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.translateKey=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Scale speed of mobile version")}`).setDesc(`${b("Scale speed of mobile version desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.scaleSpeed)?void 0:e.toString())||"5").setPlaceholder("Example: 5").onChange((t=>{this.plugin.settings.scaleSpeed=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use File recovery")}`).setDesc(`${b("Use File recovery desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useHistory).onChange((t=>{this.plugin.settings.useHistory=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use mobile mode")}`).setDesc(`${b("Use mobile mode desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useMobileMode).onChange((t=>{this.plugin.settings.useMobileMode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Close enter key")}`).setDesc(`${b("Close enter key desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.closeEnterKey).onChange((t=>{this.plugin.settings.closeEnterKey=t,this.plugin.saveData(this.plugin.settings)}))}))}}class iN extends d.Plugin{constructor(){super(...arguments),this.mindmapFileModes={},this._loaded=!1,this.timeOut=null,this.colors=[],this.statusBarItemEl=null,this.window=null}async onload(){await this.loadSettings();const t=this.addStatusBarItem();this.statusBarItemEl=t;for(var e=0;e<150;e++)this.colors.push(Cl());this.appKeyup=this.appKeyup.bind(this),this.appKeydown=this.appKeydown.bind(this),this.addCommand({id:"Create New MindMap",name:`${b("Create new mindmap")}`,callback:()=>{var t;if(this.app.workspace.activeLeaf){const e=this.app.fileManager.getNewFileParent((null==(t=this.app.workspace.getActiveFile())?void 0:t.path)||"");e&&this.newMindMap(e)}}}),this.addCommand({id:"Create New outline",name:`${b("Create new outline")}`,callback:()=>{var t;if(this.app.workspace.activeLeaf){const e=this.app.fileManager.getNewFileParent((null==(t=this.app.workspace.getActiveFile())?void 0:t.path)||"");e&&this.newOutline(e)}}}),this.addCommand({id:"Toggle show node image",name:`${b("Show node image")}`,mobileOnly:!1,callback:()=>{var t=this.app.workspace.getActiveViewOfType(tN).mindmap,e=t.selectNode||t.getSelectNodes[0];if(e){var i=e.editDom||e.textDom;if(i){var n=i.querySelector("img");if(n){var s=n.getAttribute("src");s&&t.emit("showImage",{image:s})}}}}}),this.addCommand({id:"Close show node image",name:`${b("Close node image")}`,mobileOnly:!1,callback:()=>{var t=document.querySelectorAll(".owl-preview-close");t&&t.length&&t.forEach((t=>{t.click()}))}}),this.addCommand({id:"Auto adapt screen",name:`${b("Auto adapt screen")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.autoadaptScreen()}}),this.addCommand({id:"Set node resize box",name:`${b("Set node resize box")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;if("rich"==e._mode){var i=e.selectNode||e.getSelectNodes()[0];i&&i.setResizeFrame()}}}}),this.addCommand({id:"reset node size",name:`${b("Reset node size")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap,i=e.selectNode||e.getSelectNodes()[0];i&&i.data.size&&i.data.size.w&&e.execute("changeNodeSize",{node:i,removeSize:!0,data:{nodeWidth:100,nodeHeight:100}})}}}),this.addCommand({id:"Enter to read mode",name:`${b("Enter read mode")}`,callback:()=>{console.log(`${b("Enter read mode")}`);const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.setReadMode()}}),this.addCommand({id:"Enter demonstration mode",name:`${b("Enter demonstration mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.setPPTMode()}}),this.addCommand({id:"Auto scale demonstration page",name:`${b("Auto scale demonstration page")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;e.autoScalePpt&&e.autoScalePpt()}}}),this.addCommand({id:"Close demonstration mode",name:`${b("Exit demonstration mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.closePPTMode()}}),this.addCommand({id:"Generate mind maps by chatGTP",name:`${b("Generate mind maps by chatGTP")}`,mobileOnly:!1,callback:async()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;if(e){var i=e.selectNode||e.root;if("callout"==i.nodeType||"relateLink"==i.nodeType)return;if(i){var n=i.getData().text,s=d.moment.locale();if(n){if("zh-cn"==s)var o=`请使用中文,以"${n}"为主题返回格式化为 OPML 2.0 大纲示例`;else o=`Please use english, provide me with an hierarchical outline example in XML based OPML 2.0 format on the topic of "${n}"`;new d.Notice(b("ChatGTPLoading"));try{if(this.settings.customAi){var r=this.settings.customAiUrl,a=this.settings.customAiAppKey,h=this.settings.customAiModel;if(!r||!a||!h)return}else r="",a=this.settings.chatGTPKey,h=this.settings.chatGTPModel;var l=(await Hd(a,{model:h||this.settings.chatGTPModel||"gpt-3.5-turbo",messages:[{role:"user",content:`${o}`}]},r)).choices[0];if(l&&l.message&&l.message.content){var c=Jd(l.message.content);if(!c.length)return;c.forEach((t=>{e.build_with_json(i,t)})),e.refresh(),setTimeout((()=>{var t;null==(t=e.view)||t.mindMapChange()}),200)}else new d.Notice(b("ChatGTPError"))}catch(u){new d.Notice(b("ChatGTPError"))}}}}}}}),this.addCommand({id:"Generate mind maps by Q&A of chatGTP ",name:`${b("Generate mind maps by Q&A of chatGTP")}`,mobileOnly:!1,callback:async()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;if(e){var i=e.selectNode||e.root;if("callout"==i.nodeType||"relateLink"==i.nodeType||"wireFrame"==i.nodeType)return;if(i){var n=i.getData().text,s=d.moment.locale();if(n){if("zh-cn"==s)var o=`请使用中文,以"${n}"为主题返回格式化为 markdown 格式的文本`;else o=`Please use english, provide me with an answer in markdown format on the topic of "${n}"`;new d.Notice(b("ChatGTPLoading"));try{if(this.settings.customAi){var r=this.settings.customAiUrl,a=this.settings.customAiAppKey,h=this.settings.customAiModel;if(!r||!a||!h)return}else if(r="",a=this.settings.chatGTPKey,h=this.settings.chatGTPModel,!a)return;var l=(await Hd(a,{model:h||this.settings.chatGTPModel||"gpt-3.5-turbo",messages:[{role:"user",content:`${o}`}]},r)).choices[0];if(l&&l.message&&l.message.content){var c=function(t){t=t.trim();var e=[],i={id:KM(),text:t.trim()};return e.push(i),e}(l.message.content);if(!c.length)return;c.forEach((t=>{e.build_with_json(i,t)})),e.refresh(),setTimeout((()=>{var t;null==(t=e.view)||t.mindMapChange()}),200)}else new d.Notice(b("ChatGTPError"))}catch(u){new d.Notice(b("ChatGTPError"))}}}}}}}),this.addCommand({id:"Toggle to markdown or mindmap",name:`${b("Toggle mardkown/mindmap")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN),e=this.app.workspace.getActiveViewOfType(d.MarkdownView);null!=t?(this.mindmapFileModes[t.leaf.id||t.file.path]="markdown",this.setMarkdownView(t.leaf)):null!=e&&(this.mindmapFileModes[e.leaf.id||e.file.path]=_M,this.setMindMapView(e.leaf))}}),this.addCommand({id:"Change basic to table mode",name:`${b("Change basic to table mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e&&"basic"==t._mode){t.forceMindMapMode=!1,t.isShowOutline=!1,t.isShowTable=!0;var i=e.getMarkdown(),n=t.mdToData(i);t.showTable(n)}}}}),this.addCommand({id:"Change basic to outline mode",name:`${b("Change basic to outline mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;e&&"basic"==t._mode&&(e.clear(),t.mindmapContainer.innerHTML="",e=null,t.forceMindMapMode=!1,t.showOutline())}}}),this.addCommand({id:"Copy Node",name:`${b("Copy node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;navigator.clipboard.writeText("");var i=e.selectNode;if(i){var n=e.copyNode(i);navigator.clipboard.writeText(n)}}}}),this.addCommand({id:"Paste Node",name:`${b("Paste node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;navigator.clipboard.readText().then((t=>{e.pasteNode(t)}))}}}),this.addCommand({id:"Cover Node",name:`${b("Cover node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.getSelectNodes();i&&i.length&&e.execute("setTextCover",{nodes:i,flag:!0})}}}}),this.addCommand({id:"Cancel Cover Node",name:`${b("Cancel cover node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.getSelectNodes();i&&i.length&&e.execute("setTextCover",{nodes:i,flag:!1})}}}}),this.addCommand({id:"Toggle search box",name:`${b("Toggle search box")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;e&&(e._searchDom?e.closeSearch():e.createSearchDom())}}}),this.addCommand({id:"Reset to default theme",name:`${b("Reset to default theme")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;e&&e.removeTheme()}}}),this.addCommand({id:"Change layout to mindmap",name:`${b("Change layout to mindmap")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"mindmap"})}}}),this.addCommand({id:"Change layout to right",name:`${b("Change layout to right")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"right"})}}}),this.addCommand({id:"Change layout to left",name:`${b("Change layout to left")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"left"})}}}),this.addCommand({id:"Change layout to tree",name:`${b("Change layout to tree")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"down"})}}}),this.addCommand({id:"Change layout to fishRight",name:`${b("Change layout to fishRight")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"fishRight"})}}}),this.addCommand({id:"Change layout to fishLeft",name:`${b("Change layout to fishLeft")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"fishLeft"})}}}),this.addCommand({id:"Get vault path",name:`${b("Get path of vault")}`,mobileOnly:!1,callback:()=>{var t=this.app.vault.adapter.basePath;new d.Notice(t),navigator.clipboard.writeText(""),navigator.clipboard.writeText(t)}}),this.addCommand({id:"Set pdf js plugin folder path",name:`${b("Set pdf js path")}`,mobileOnly:!1,callback:()=>{var t=this.app.vault.getMarkdownFiles();if(t.length){var e=t[0],i=this.app.vault.getResourcePath(e);i=decodeURIComponent(i);var n=(i=d.normalizePath(i)).split("?")[0];if(n&&n.length){var s=n.lastIndexOf(e.path);if(s>-1){if(n=n.substring(0,s),d.Platform.isDesktop)var o="app:/local/";else o="_capacitor_file_";var r=n.indexOf(o);n=n.substring(r+o.length),d.Platform.isAndroidApp?this.settings.pdfjsAndriodPath=n+"andriod/pdfjs":d.Platform.isIosApp?this.settings.pdfjsIosPath=n+"ios/pdfjs":d.Platform.isDesktop&&(d.Platform.isMacOS?this.settings.pdfjsMacPath=n+".obsidian/pdfjs":this.settings.pdfjsPath=n+".obsidian/pdfjs"),this.saveData(this.settings),new d.Notice(b("Set up pdf js path success"))}}else new d.Notice("Please create a md file,then try it again")}}}),this.addCommand({id:"Change basic mode to rich mode",name:`${b("Change basic mode to rich mode")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.basicToRich()}}),this.addCommand({id:"Change rich mode to basic mode",name:`${b("Change rich mode to basic mode")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.richToBasic()}}),this.addCommand({id:"Export to html",name:`${b("Export to html")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.exportToPng()}}),this.addCommand({id:"Export mindmap to pdf",name:`${b("Export to pdf")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap&&("svg"==this.settings.mindmapRenderType?t.exportToPdf():t.exportToPdf1())}}),this.addCommand({id:"Export mindmap to pdf (old version)",name:`${b("Export to pdf (old version)")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap&&("svg"==this.settings.mindmapRenderType?t.exportToPdf(!0):t.exportToPdf1(!0))}}),this.addCommand({id:"Export mindmap to xmind zen",name:`${b("Export to xmind zen")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap&&t.exportXmind()}}),this.addCommand({id:"Use new version of pdfjs",name:`${b("Use new version of pdfjs")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t._haveOpenPdf&&t.setPdfjsVersion(!0)}}),this.addCommand({id:"Use old version of pdfjs",name:`${b("Use old version of pdfjs")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t._haveOpenPdf&&t.setPdfjsVersion(!1)}}),this.addCommand({id:"Collapse to root",name:`${b("Expand to first root level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.collapse(),t.clearCacheData()}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 1",name:`${b("Expand to first node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>0?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 2",name:`${b("Expand to second node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>1?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 3",name:`${b("Expand to third node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>2?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 4",name:`${b("Expand to fourth node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>3?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 5",name:`${b("Expand to fifth node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>4?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level all",name:`${b("Expand to all node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&e.traverseBF((t=>{t.expand(),t.clearCacheData()}),n),e.refresh(),t.mindMapChange()}}}}),this.addCommand({id:"Copy node link",name:`${b("Copy node link")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.selectNode;if(i){const{text:s,id:o}=i.getData();var n=`${s} [🔖](obsidian://jump-to-pdf?md=${encodeURIComponent(e.path)}&node=${encodeURIComponent(o)})`;t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(n)}}}}}),this.addCommand({id:"Copy node link only",name:`${b("Copy node link only")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.selectNode;if(i){const{id:s}=i.getData();var n=`obsidian://jump-to-pdf?md=${encodeURIComponent(e.path)}&node=${encodeURIComponent(s)}`;t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(n)}}}}}),this.addCommand({id:"Add child node",name:`${b("Add child node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;i&&(i.isExpand||i.expand(),i.mindmap.clearSelectNode(),e.execute("addChildNode",{parent:i}),e._hideMenu())}}}),this.addCommand({id:"Add brother node",name:`${b("Add brother node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;if(i){if(i.isExpand||i.expand(),!i.parent)return;e.execute("addSiblingNode",{parent:i.parent}),e._hideMenu()}}}}),this.addCommand({id:"Add Parent Node",name:`${b("Add Parent Node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;i&&i.parent&&(e.execute("addParentNode",{selectNode:i}),e._hideMenu())}}}),this.addCommand({id:"Edit node",name:`${b("Edit node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap.selectNode;e&&(e.isEdit||e.edit())}}}),this.addCommand({id:"Cancel edit node",name:`${b("Cancel edit node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap.selectNode;e&&e.isEdit&&e.cancelEdit()}}}),this.addCommand({id:"Delete node",name:`${b("Delete node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;i&&(e.execute("deleteNodeAndChild",{node:i}),e._hideMenu())}}}),this.addCommand({id:"Undo",name:`${b("Undo")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap.undo()}}),this.addCommand({id:"Redo",name:`${b("Redo")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap.redo()}}),this.addCommand({id:"File recovery",name:`${b("Toggle History")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.showHistory()}}),this.registerView(_M,(t=>new tN(t,this))),this.registerEvents(),this.addMarkdownPostProcessor(),this.registerMonkeyAround(),this.addSettingTab(new eN(this.app,this)),this.settings.openCodeBlock&&(this.registerMarkdownCodeBlockProcessor("mindmap",this.codeBlockProcessor.bind(this)),this.registerMarkdownCodeBlockProcessor("markmind",this.markmindBlockProcessor.bind(this))),this.settings.openProtocol&&this.settings.openProtocol>0&&this.settings.protocol&&this.registerObsidianProtocol()}buildHead(){this.head=createEl("head"),this.head.createEl("meta",{attr:{charset:"utf-8"}}),this.head.createEl("meta",{attr:{name:"viewport",content:"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"}}),this.head.createEl("link",{href:"app://obsidian.md/app.css",type:"text/css",attr:{rel:"stylesheet"}}),this.head.createEl("script",{attr:{src:"app://obsidian.md/app.js"}});for(const t of this.app.customCss.enabledSnippets)this.head.createEl("link",{href:this.app.vault.adapter.getResourcePath(`${this.app.customCss.getSnippetsFolder()}/${t}.css`),type:"text/css",attr:{rel:"stylesheet"}});for(const t of Object.keys(this.app.plugins.plugins))this.app.plugins.plugins[t]._loaded&&(this.head.createEl("link",{href:this.app.vault.adapter.getResourcePath(`${this.app.plugins.getPluginFolder()}/${t}/styles.css`),type:"text/css",attr:{rel:"stylesheet"}}),"obsidian-markmind"==t&&this.head.createEl("script",{attr:{src:this.app.vault.adapter.getResourcePath(`${this.app.plugins.getPluginFolder()}/${t}/main.js`)}}));return this.head}get theme(){return this.app.vault.adapter.getResourcePath(`${this.app.customCss.getThemeFolder()}/${this.app.customCss.theme}.css`)}get mode(){var t,e;return"obsidian"==(null!=(e=null==(t=this.app.vault.config)?void 0:t.theme)?e:"obsidian")?"theme-dark":"theme-light"}async loadFile(t,e){if(!(this.app.vault.adapter instanceof d.FileSystemAdapter))return;let i;"md"==t.extension&&(i=await this.loadNote(t,e),this.window||(this.window=new remote.BrowserWindow({webPreferences:{nodeIntegration:!0,webSecurity:!1,contextIsolation:!1}}),this.window.menuBarVisible=!1,this.window.on("close",(()=>{this.openFile=null,this.window=null}))),this.window.setTitle(t.name),await this.window.loadURL(i),this.window.moveTop())}async loadNote(t,e){this.openFile=t.path;const i=createEl("html");return this.head.createEl("script",{attr:{id:"mindmapData","data-json":e}}),i.append(this.head),i.createEl("body",{cls:this.mode}).createDiv("app-container").createDiv("horizontal-main-container").createDiv("workspace").createDiv("workspace-split mod-vertical mod-root").createDiv("workspace-leaf mod-active").createDiv("workspace-leaf-content").createDiv("view-content").createDiv("print-to-pdf"),await this.app.vault.adapter.write(`${this.app.plugins.getPluginFolder()}/file.html`,i.outerHTML),i.detach(),this.app.vault.adapter.getResourcePath(`${this.app.plugins.getPluginFolder()}/file.html`)}async markmindBlockProcessor(t,e,i){try{var n=JSON.parse(t.trim());if(n.path){const t=d.parseLinktext(n.path);if(!t)return;const a=t.subpath.startsWith("#^")?t.subpath.substr(2):null,h=this.app.metadataCache.getFirstLinkpathDest(t.path,i.sourcePath);if(h&&"md"==h.extension){var s=this.app.metadataCache.getFileCache(h);if(this.isMindmap(s)&&this.isMindmapRichMode(s))sp({plugin:this,app:this.app},this.app,h,e,null,this.colors,this.settings,(t=>{if(t&&a){var e=t.getNodeById(a);e&&(t.clearSelectNode(),t.showNode(e))}}));else{var o=s&&s.frontmatter;if(o)var r=!!o["display-mode"]&&"table"==o["display-mode"];np({plugin:this,app:this.app},this.app,h,e,null,this.colors,this.settings,(t=>{if(t&&a){var e=t.getNodeById(a);e&&(t.clearSelectNode(),t.showNode(e))}}),0,r)}}}}catch(Cn){var a=document.createElement("pre");a.innerText=t,e.appendChild(a)}}async codeBlockProcessor(t,e,i){try{var n=t.trim();if(!n)throw Error("empty text");const{root:r}=VM.transform(n),a=XM(r);a.isRoot=!0,a.useScale=!1;var s=document.createElement("div");s.classList.add("mm-mindmap-container"),s.style.visibility="hidden",e.appendChild(s);var o=new lp(a,s,this.settings,!1);o.path=i.sourcePath,o._mode="basic",o.colors=this.colors,o.init(),setTimeout((()=>{o.refresh(),o.center(),s.style.visibility="visible"}),1200)}catch(a){var r=document.createElement("pre");r.innerText=t,e.appendChild(r)}}async _openPDFAnnotation(t){if(!this.settings.supportPDF)return;const e=this.app.workspace.getLeavesOfType(_M);if(e.length){var i=null;if(e.forEach((t=>{t.view&&t.view._haveOpenPdf&&(i=t.view)})),i)await i.showAnnotate(t.annotate,t.pdf);else{if(t.pdf.startsWith("file://"))var n=t.pdf;else n=t.pdf.startsWith("http")?t.pdf:d.normalizePath(t.pdf);await this.openPDfView(n,t.annotate)}}else n=t.pdf.startsWith("file://")||t.pdf.startsWith("http")?t.pdf:d.normalizePath(t.pdf),await this.openPDfView(n,t.annotate)}registerObsidianProtocol(){this.registerObsidianProtocolHandler(`${this.settings.protocol}`,(async t=>{var e,i;const n=t;for(const d in n)n[d]=decodeURIComponent(n[d]);if(n.id&&n.annotate){var s=this.getAnnoateById(n.id);if(s){var o=null==(e=this.app.metadataCache.getFileCache(s))?void 0:e.frontmatter;if(o&&o["annotate-target"])return n.pdf=o["annotate-target"],void(await this._openPDFAnnotation(n))}else new d.Notice(b("Not find md file"))}if(n.pdf&&n.annotate)await this._openPDFAnnotation(n);else if(n.pdf)n.pdf.endsWith(".pdf")&&this.app.workspace.openLinkText(n.pdf,"");else if(n.md&&n.node){var r=decodeURIComponent(n.md),a=decodeURIComponent(n.node);Object.assign(window,{"show-mindmap-node":a});const t=this.app.workspace.getLeavesOfType(_M);if(t.length){var h=null;if(t.forEach((t=>{t.view&&t.view.file&&t.view.file.path==r&&(h=t.view)})),h)if(h.mindmap){var l=h.mindmap.getNodeById(a);h.mindmap.showNode(l),Object.assign(window,{"show-mindmap-node":""})}else h.app.workspace.openLinkText(r,(null==(i=h.file)?void 0:i.path)||"",!0);else(h=t[0].view).app.workspace.openLinkText(r,"",!0)}else this.app.workspace.openLinkText(r,"",!0)}else n.md&&this.app.workspace.openLinkText(decodeURIComponent(n.md),"",!0)}))}getAnnoateById(t){var e,i=null,n=this.app.vault.getMarkdownFiles();for(let o of n){var s=null==(e=this.app.metadataCache.getFileCache(o))?void 0:e.frontmatter;if(s&&s.id&&s.id==t){i=o;break}}return i}async getAnnoate(t){var e,i=null,n=this.app.vault.getMarkdownFiles(),s=encodeURI(t),o=encodeURIComponent(t);for(let a of n){var r=null==(e=this.app.metadataCache.getFileCache(a))?void 0:e.frontmatter;if(r&&r["annotate-target"]&&(r["annotate-target"]==t||r["annotate-target"]==s||r["annotate-target"]==o)){i=a;break}}return i}async openPDfView(t,e){var i=t.substr(0,t.length-4)+"-annotate.md",n=await this.getAnnoate(t);if(Object.assign(window,{waitPdfId:e||""}),n)await this.app.workspace.openLinkText(n.path,"","split");else{var s=`---\nid: ${KM()}\nannotate-target: ${t}\n---\n`;Object.assign(window,{waitPdfId:""}),await this.app.vault.adapter.write(i,s),setTimeout((()=>{this.app.workspace.openLinkText(i,"","split")}),200)}}async openMindmapView(t,e){Object.assign(window,{onlyPdf:!0}),t?(await this.app.workspace.openLinkText(t.basename,"","split"),await this.setCursor(e)):(await this.newMindMap(),await this.setCursor(e))}async setCursor(t){const e=this.app.workspace.getActiveViewOfType(tN);e&&setTimeout((()=>{e.onlyPdf=!0,e.setOnlyPdf(),e.showAnnotate(t.annotate,t.pdf)}),800)}_getMindmapMd(){var t,e=null,i=this.app.vault.getMarkdownFiles();for(let s of i)if("md"==s.extension){var n=null==(t=this.app.metadataCache.getFileCache(s))?void 0:t.frontmatter;n&&n[Al]&&(e=s)}return e}onunload(){this.window&&this.window.close(),this.app.workspace.detachLeavesOfType(_M)}async newOutline(t){var e;const i=t||this.app.fileManager.getNewFileParent((null==(e=this.app.workspace.getActiveFile())?void 0:e.path)||"");try{const t=await this.app.fileManager.createNewMarkdownFile(i,`${b("Untitled mindmap")}`);await this.app.vault.modify(t,wl);var n={type:_M,state:{file:t.path}};setTimeout((async()=>{await this.app.workspace.getLeaf().setViewState(n)}),100)}catch(s){console.error("Error creating outline board:",s)}}async newMindMap(t,e=""){var i;const n=t||this.app.fileManager.getNewFileParent((null==(i=this.app.workspace.getActiveFile())?void 0:i.path)||"");try{const t=await this.app.fileManager.createNewMarkdownFile(n,`${b("Untitled mindmap")}`);"basic"!=e&&"markdown"!=e||await this.app.vault.modify(t,((t="markdown",e="")=>{let i=["---","",`${Al}: ${t}`,""];return e&&i.push(`mindmap-layout: ${e}`),i=i.concat(["---","",""]),"basic"==t||"markdown"==t?i.join("\n")+"# MainTopic":i.join("\n")})(e,this.settings.basicLayoutName||"")),"basic"!=this.settings.mindmapmode||e?e&&"rich"!=e||await this.app.vault.modify(t,xl):await this.app.vault.modify(t,yl);var s={type:_M,state:{file:t.path}};setTimeout((async()=>{await this.app.workspace.getLeaf().setViewState(s)}),100)}catch(o){console.error("Error creating mindmap board:",o)}}async loadSettings(){this.settings=Object.assign({canvasSize:8e3,headLevel:2,fontSize:16,background:"transparent",layout:"mindmap",layoutDirect:"mindmap",protocol:"jump-to-pdf",registerPdfEvent:!0,viewerTheme:2,mindmapmode:"basic",parseMindMap:!0,annotateTop:0,annotateBottom:0,showNodeBoard:!0,useCustomShortcut:!1,highlightFormat:'\nPage:{{page}}\n:{{highlightText}}\nComment:{{comment}}\n[📌]({{link}})\n^{{id}}\n'},await this.loadData()),this.settings.pdfjsPath&&(d.Platform.isDesktopApp?Object.assign(window,{pdf_plugin_path:this.settings.pdfjsPath}):d.Platform.isAndroidApp?Object.assign(window,{pdf_plugin_path:this.settings.pdfjsAndriodPath||this.settings.pdfjsPath}):d.Platform.isIosApp&&Object.assign(window,{pdf_plugin_path:this.settings.pdfjsIosPath||this.settings.pdfjsPath}))}async saveSettings(){await this.saveData(this.settings)}async setMarkdownView(t){await t.setViewState({type:"markdown",state:t.view.getState(),popstate:!0},{focus:!0})}async setMindMapView(t){await t.setViewState({type:_M,state:t.view.getState(),popstate:!0})}registerEvents(){this.registerEvent(this.app.workspace.on("file-menu",((t,e,i,n)=>{if(e instanceof d.TFolder)return t.addItem((t=>{t.setTitle(`${b("New mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e)))})),t.addItem((t=>{t.setTitle(`${b("New basic mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e,"basic")))})),t.addItem((t=>{t.setTitle(`${b("New markdown mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e,"markdown")))})),void t.addItem((t=>{t.setTitle(`${b("New rich mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e,"rich")))}));if(n&&"markdown"==this.mindmapFileModes[n.id||e.path]){const i=this.app.metadataCache.getFileCache(e);if((null==i?void 0:i.frontmatter)&&i.frontmatter["annotate-target"]){var s=i.frontmatter["annotate-target"];s=s.toLowerCase();var o;o=s.endsWith(".epub")?`${b("Annotate EPUB")}`:`${b("Annotate PDF")}`,t.addItem((t=>{t.setTitle(o).setIcon("document").onClick((()=>{this.mindmapFileModes[n.id||e.path]=_M,this.setMindMapView(n)}))})).addSeparator()}(null==i?void 0:i.frontmatter)&&i.frontmatter[Al]&&t.addItem((t=>{t.setTitle(`${b("Open as mindmap board")}`).setIcon("document").onClick((()=>{this.mindmapFileModes[n.id||e.path]=_M,this.setMindMapView(n)}))})).addSeparator()}if(e.path&&e.path.toLowerCase().endsWith(".md")){const i=this.app.metadataCache.getFileCache(e);if((null==i?void 0:i.frontmatter)&&i.frontmatter["mindmap-plugin"])return;if((null==i?void 0:i.frontmatter)&&i.frontmatter["annotate-target"])return;t.addItem((t=>{t.setTitle(`${b("Create Mindmap From md")}`).setIcon("document").onClick((async()=>{var t=await this.app.vault.adapter.read(e.path),n=e.path.substr(0,e.path.length-3)+"-mindmap.md";if(i&&i.frontmatterPosition){var s=i.frontmatterPosition.end;if(s)var o=s.offset,r=t.substr(o,t.length)}else r=t;if(r&&r.trim()){var a=["---","","mindmap-plugin: markdown","","---"].join("\n")+"\n"+r;await this.app.vault.adapter.write(n,a),setTimeout((()=>{this.app.workspace.openLinkText(n,"","split")}),1e3)}}))}))}}))),this.registerEvent(this.app.metadataCache.on("changed",(t=>{this.app.workspace.getLeavesOfType(_M).forEach((e=>{const i=e.view;i instanceof tN&&i.onFileMetadataChange(t)}))}))),this.registerEvent(this.app.vault.on("rename",((t,e)=>{this.app.workspace.getLeavesOfType(_M).forEach((i=>{const n=i.view;n instanceof tN&&n.onFileRename(t,e)}))}))),this.registerDomEvent(document,"keyup",this.appKeyup),this.registerDomEvent(document,"keydown",this.appKeydown)}appKeyup(t){var e,i,n,s,o,r;if(t.target&&t.target instanceof HTMLElement&&(t.target.closest("input")||t.target.closest("textarea")))return;"Tab"==t.key&&t.preventDefault();const a=this.app.workspace.getActiveViewOfType(tN);if(a){var h=a.mindmap;if(h){var l=t.keyCode||t.which||t.charCode,d=t.ctrlKey||t.metaKey,c=t.shiftKey;if(!h.useHoverEdit){if(!d&&!c){if(38==l||"ArrowUp"==t.key){var u=h.selectNode;if(h.isEditNote)return;if(h.showFilter){if(t.preventDefault(),m=h._linkboard.querySelector(".mm-file-name.active")){var p=m.previousSibling;p&&(p.classList.add("active"),m.classList.remove("active"),(f=p.getAttribute("data-path"))&&h._completeBlock(f))}return}if(u&&!u.isEdit){if(d)return;return void h._selectNode(u,"up")}}if(40==l||"ArrowDown"==t.key){if(h.isEditNote)return;if(h.showFilter){var m;if(t.preventDefault(),m=h._linkboard.querySelector(".mm-file-name.active")){var f,g=m.nextSibling;g&&(g.classList.add("active"),m.classList.remove("active"),(f=g.getAttribute("data-path"))&&h._completeBlock(f))}return}if((u=h.selectNode)&&!u.isEdit){if(d)return;return void h._selectNode(u,"down")}}if(39==l||"ArrowRight"==t.key){if(h.isEditNote)return;if(h.isPlayPpt)return void h.nextPpt();if((u=h.selectNode)&&!u.isEdit)return void h._selectNode(u,"right")}if(37==l||"ArrowLeft"==t.key){if(h.isEditNote)return;if(h.isPlayPpt)return void h.prevPpt();if((u=h.selectNode)&&!u.isEdit)return void h._selectNode(u,"left")}if("["==t.key&&(t.preventDefault(),h.selectNode)){if(h._doubleMark<1)h._doubleMark++;else{h._doubleMark=0;var v=((null==(e=h.el)?void 0:e.win)||(null==(i=h.contentEL)?void 0:i.win)||window).getSelection(),A=v.anchorNode;A.closest||(A=A.parentElement);var y=A.closest(".cm-mindmap-node")||A.closest(".mm-node");if(!y)return;if(y!=(h.selectNode.containEl||h.selectNode.iNode.containEl))return;var x=v.getRangeAt(0),w=(null==(n=h.el)?void 0:n.doc)||(null==(s=h.contentEL)?void 0:s.doc)||document;x.insertNode(w.createTextNode("]]")),v.collapseToStart()}return}if(h.selectNode&&h.selectNode.isEdit){u=h.selectNode;var b=h.selectNode.textDom||(null==(o=h.selectNode.iNode)?void 0:o.textDom);b||(b=h.selectNode.editDom||(null==(r=h.selectNode.iNode)?void 0:r.editDom));var E=function(t){var e,i=0,n=t.ownerDocument||t.document,s=n.defaultView||n.parentWindow;if(void 0!==s.getSelection){if((e=s.getSelection()).rangeCount>0){var o=s.getSelection().getRangeAt(0),r=o.cloneRange();r.selectNodeContents(t),r.setEnd(o.endContainer,o.endOffset),i=r.toString().length}}else if((e=n.selection)&&"Control"!=e.type){var a=e.createRange(),h=n.body.createTextRange();h.moveToElementText(t),h.setEndPoint("EndToEnd",a),i=h.text.length}return i}(b),C=b.textContent;u.shouldRender=!0;var k=!1;h._linkboard.style.display="none",h.showFilter=!1;for(var I,B=/\[\[(.+?)\]\]/g,D=0;I=B.exec(C);)if(I.index+2<=E&&I.index+I[1].length+2>=E){k=!0,D=I.index,u.shouldRender=!1,h.showFilter=!0,h._linkboard.style.display="block";break}if(k){h.selectionObj={num:E,index:D,text:I[1]},h._searchFiles(I[1]);var M=h.selectNode.getBoundingRect();if(h._completeNode=h.selectNode,"svg"==h._renderMode)var{x:N,y:L}=h.toPos(M.x,M.y);else var N=M.x,L=M.y;h._linkboard&&(h._linkboard.style.left=N+"px",h._linkboard.style.top=L+M.height+5+"px")}else h._searchFiles("")}if(32!=l){if(h.isEditNote)return;if(17==l||13==l||"Controll"==t.key)return;if("CapsLock"==t.key)return;if("Meta"==t.key)return;if("Escape"==t.key)return;if(9==l||45==l||"Tab"==t.key)return;if(t.code&&"Tab"==t.code)return;if(46==l||"Delete"==t.key||"Backspace"==t.key)return;if("ArrowUp"==t.key||"ArrowRight"==t.key||"ArrowLeft"==t.key||"ArrowDown"==t.key)return;!(u=h.selectNode||h.getSelectNodes()[0])||u.isEdit||this.useCustomShortcut||(t.preventDefault(),u.edit(),u.selectText())}}d&&!c&&(191!=l&&"/"!=t.key||(u=h.selectNode)&&!u.isEdit&&(u.isExpand?u.mindmap.execute("collapseNode",{node:u}):u.mindmap.execute("expandNode",{node:u})),"f"!=t.key&&70!=l||(h._searchDom?h.closeSearch():h.createSearchDom()),69!=l&&"e"!=t.key||h.center(),"r"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"right"}),"l"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"left"}),"u"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"up"}),"d"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"down"}),"m"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"mindmap"}),"j"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"lTree"}),"q"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"fishRight"}),"t"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"fishLeft"}))}}}}appKeydown(t){var e,i;if(t.target&&t.target instanceof HTMLElement&&(t.target.closest("input")||t.target.closest("textarea")))return;"Tab"==t.key&&t.preventDefault();const n=this.app.workspace.getActiveViewOfType(tN);if(n){var s=n.mindmap;if(s){var o=t.keyCode||t.which||t.charCode,r=t.ctrlKey||t.metaKey,a=t.shiftKey;if(!s.useHoverEdit){if(r&&!a){if(86==o||"v"==t.key){if(s.isEditNote)return;if(s._isPasting)return;navigator.clipboard.read().then((t=>{var e=!1;for(let i=0;i{t.text().then((t=>{e=!0,s._pasteText(t),s._isPasting=!0,s._isPastingTime&&clearTimeout(s._isPastingTime),s._isPastingTime=setTimeout((()=>{s._isPasting=!1}),300)}))})).catch((()=>{try{if(!t[i])return;if(!t[i].getType)return;t[i].getType("text/plain").then((t=>{t.text().then((t=>{s.selectNode.isEdit||(e=!0,s.build_with_indent(s.selectNode,t),s._isPasting=!0,s._isPastingTime&&clearTimeout(s._isPastingTime),s._isPastingTime=setTimeout((()=>{s._isPasting=!1}),300))}))})).catch((t=>{console.log(t)}))}catch(n){console.log(n)}}))}}))}if((67==o||"c"==t.key)&&(c=s.selectNode)&&!c.isEdit){var h=c.getData().text;h&&navigator.clipboard.writeText(h)}if("ArrowUp"==t.key&&(c=s.selectNode||s.getSelectNodes()[0])){if(!c.parent)return;(f=(l=c.parent.children).indexOf(c))>0&&((s.event?s.event:s).moveNode(c,l[f-1],"top"),s._hideMenu())}if("ArrowDown"==t.key&&(c=s.selectNode||s.getSelectNodes()[0])){if(!c.parent)return;var l;(f=(l=c.parent.children).indexOf(c))1)return t.preventDefault(),t.stopPropagation(),g[0].mindmap.execute("deleteNodes",{nodes:g}),s._menuDom&&(s._menuDom.style.display="none"),void c.mindmap.emit("hideNodeMenu");if((c=s.selectNode||s.getSelectNodes()[0])&&!c.isEdit)return t.preventDefault(),t.stopPropagation(),c.mindmap.execute("deleteNodeAndChild",{node:c}),s._menuDom&&(s._menuDom.style.display="none"),void c.mindmap.emit("hideNodeMenu")}}if(!r&&!a){if(13==o||"Enter"==t.key){if(s.isEditNote)return;var c=s.selectNode||s.getSelectNodes()[0];if(s.showFilter&&c){t.preventDefault(),t.stopPropagation();var u=s._linkboard.querySelector(".mm-file-name.active");if(u){if("md"==u.querySelector(".mm-file-ext").innerText)var p=u.getAttribute("data-name");else p=u.getAttribute("data-path");s._completeFile(c,p)}return}if(c&&c.isEdit&&!s.useCustomShortcut){if(s.setting&&s.setting.closeEnterKey)return;t.preventDefault(),c.isExpand||c.expand();var m=c.textDom||(null==(e=c.iNode)?void 0:e.textDom);if(m||(m=c.editDom||(null==(i=c.iNode)?void 0:i.editDom)),m.innerText!=b("Sub title"))return void c.cancelEdit()}if(c&&!s.useCustomShortcut){if(s.setting&&s.setting.closeEnterKey)return;if(t.preventDefault(),t.stopPropagation(),c.isExpand||c.expand(),!c.parent)return;var f=c.parent.children.indexOf(c);c.mindmap.clearSelectNode(),c.mindmap.execute("addSiblingNode",{parent:c.parent,index:f+1})}}if((46==o||"Delete"==t.key||"Backspace"==t.key)&&!s.useCustomShortcut){if(s.isEditNote)return;if(s._changeAssistItem){if("induce"==s._changeAssistItem.name){if(s.editNode)return;s.execute("deleteInduce",{summary:s._changeAssistItem})}else"wireFrame"==s._changeAssistItem.name?s.execute("deleteWireFrame",{wireFrame:s._changeAssistItem}):s.execute("deleteRelateLink",{link:s._changeAssistItem});return void(s._changeAssistItem=null)}var g;if((g=s.getSelectNodes()).length>1)return t.preventDefault(),void g[0].mindmap.execute("deleteNodes",{nodes:g});if((c=s.selectNode||s.getSelectNodes()[0])&&!c.isEdit)return t.preventDefault(),t.stopPropagation(),c.mindmap.execute("deleteNodeAndChild",{node:c}),s._menuDom&&(s._menuDom.style.display="none"),void c.mindmap.emit("hideNodeMenu")}if("Escape"==t.key&&!s.useCustomShortcut){if(s.isEditNote)return;return void((c=s.selectNode||s.getSelectNodes()[0])&&c.isEdit&&(c.cancelEdit(),setTimeout((()=>{c.select(),c.mindmap.selectNode=c,c.mindmap.editNode=null}),10)))}if((9==o||45==o||"Tab"==t.key)&&!s.useCustomShortcut){if(t.preventDefault(),s.isEditNote)return;return(c=s.selectNode||s.getSelectNodes()[0])&&!c.isEdit?(c.isExpand||c.expand(),c.mindmap.clearSelectNode(),void c.mindmap.execute("addChildNode",{parent:c})):void(c&&c.isEdit&&(c.cancelEdit(),c.select(),c.mindmap.selectNode=c,c.mindmap.editNode=null))}if(32==o){if(s.isEditNote)return;!(c=s.selectNode||s.getSelectNodes()[0])||c.isEdit||s.useCustomShortcut||(t.preventDefault(),c.edit())}38!=o&&"ArrowUp"!=t.key||s.showFilter&&t.preventDefault(),40!=o&&"ArrowDown"!=t.key||s.showFilter&&t.preventDefault()}r&&!a&&(89!=o||s.useCustomShortcut||(t.preventDefault(),s.redo()),90!=o||s.useCustomShortcut||(t.preventDefault(),s.undo()))}}}}isAnnotationFile(t){return!!(t&&t.frontmatter&&t.frontmatter["annotate-target"])}isMindmap(t){if(t&&t.frontmatter){var e=t.frontmatter["mindmap-plugin"];return"rich"==e||"basic"==e||"markdown"==e}return!1}isMindmapRichMode(t){return!!(t&&t.frontmatter&&t.frontmatter["mindmap-plugin"]&&"rich"==t.frontmatter["mindmap-plugin"])}addMarkdownPostProcessor(){var t=this;this.registerMarkdownPostProcessor((async(e,i)=>{if(i&&i.frontmatter&&i.frontmatter["mindmap-plugin"]&&i.containerEl){const t=this.app.vault.getAbstractFileByPath(i.sourcePath);if(!(t instanceof d.TFile))return;var n=i.containerEl.closest(".internal-embed");if(!n)return;var s=document.createElement("div");if(s.style.position="absolute",s.style.zIndex="-100",s.style.width="1000000px",s.style.height="10000000px",s.style.left="-1000000px",s.style.visibility="hidden",document.body.appendChild(s),"rich"==i.frontmatter["mindmap-plugin"])sp({plugin:this,app:this.app},this.app,t,s||i.containerEl.parentElement,null,this.colors,this.settings,(t=>{setTimeout((()=>{t.toDiv(),s.style.position="",s.style.minWidth="",s.style.width="100%",t.el.style.position="";var e=n.querySelector(".markdown-embed-content");e?e.innerHTML=s.innerHTML:n.innerHTML=s.innerHTML,document.body.removeChild(s)}),500)}));else{if(i.frontmatter)var o=!!i.frontmatter["display-mode"]&&"table"==i.frontmatter["display-mode"];np({plugin:this,app:this.app},this.app,t,s||i.containerEl.parentElement,null,this.colors,this.settings,(t=>{setTimeout((()=>{t.toDiv(),s.style.position="",s.style.minWidth="",s.style.width="100%",t.el.style.position="";var e=n.querySelector(".markdown-embed-content");e?e.innerHTML=s.innerHTML:n.innerHTML=s.innerHTML,document.body.removeChild(s)}),500)}),0,o)}}for(let a of e.querySelectorAll("a.internal-link")){const e=a.getAttribute("href"),n=d.parseLinktext(e);if(!n)return;const s=n.subpath.startsWith("#^")?n.subpath.substr(2):null,o=this.app.metadataCache.getFirstLinkpathDest(n.path,i.sourcePath);if(!o)return;var r=this.app.metadataCache.getFileCache(o);if(this.isMindmap(r)&&(a._file=o,a._metaCache=r,a.onClickEvent((function(e){const i=t.app.workspace.getLeavesOfType(_M);if(i.length){var n=null;if(i.forEach((t=>{t.view&&t.view.mindmap&&t.view.file.path==a._file.path&&(n=t.view)})),n){var o=n.mindmap.getNodeById(s);o&&n.mindmap.showNode(o)}else Object.assign(window,{"show-mindmap-node":s})}}))),this.isAnnotationFile(r)||n.path.endsWith(".pdf")&&this.settings.registerPdfEvent){if(!this.settings.supportPDF)return;a._file=o,a._metaCache=r,a.onClickEvent((function(e){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation();const i=t.app.workspace.getLeavesOfType(_M);var n=t.isAnnotationFile(this._metaCache)?this._metaCache.frontmatter["annotate-target"]:this._file.path;if(i.length){var o=null;if(i.forEach((t=>{t.view&&t.view._haveOpenPdf&&(o=t.view)})),o)o.showAnnotate(s,n);else{if(n.startsWith("file://")||n.startsWith("http"))var r=n;else r=d.normalizePath(n);t.openPDfView(r,s)}}else r=n.startsWith("file://")||n.startsWith("http")?n:d.normalizePath(n),t.openPDfView(r,s)}))}}}))}registerMonkeyAround(){const t=this;this.register(function(t,e){const i=Object.keys(e).map((i=>function(t,e,i){const n=t[e],s=t.hasOwnProperty(e),o=s?n:function(){return Object.getPrototypeOf(t)[e].apply(this,arguments)};let r=i(o);return n&&Object.setPrototypeOf(r,n),Object.setPrototypeOf(a,r),t[e]=a,h;function a(...i){return r===o&&t[e]===a&&h(),r.apply(this,i)}function h(){t[e]===a&&(s?t[e]=o:delete t[e]),r!==o&&(r=o,Object.setPrototypeOf(a,n||Function))}}(t,i,e[i])));return 1===i.length?i[0]:function(){i.forEach((t=>t()))}}(d.WorkspaceLeaf.prototype,{detach:e=>function(){var i;const n=null==(i=this.view)?void 0:i.getState();return(null==n?void 0:n.file)&&t.mindmapFileModes[this.id||n.file]&&delete t.mindmapFileModes[this.id||n.file],e.apply(this)},setViewState:e=>function(i,...n){var s;if(t._loaded&&"markdown"===i.type&&(null==(s=i.state)?void 0:s.file)&&"markdown"!==t.mindmapFileModes[this.id||i.state.file]){const s=t.app.metadataCache.getCache(i.state.file);if((null==s?void 0:s.frontmatter)&&(s.frontmatter[Al]||s.frontmatter["annotate-target"]||s.frontmatter["translate-target"])){const s=l(h({},i),{type:_M});return t.mindmapFileModes[i.state.file]=_M,e.apply(this,[s,...n])}}return e.apply(this,[i,...n])}}))}}module.exports=iN; +***************************************************************************** */var Ak=function(t,e){return(Ak=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},yk=function(){return(yk=Object.assign||function(t){for(var e,i=1,n=arguments.length;i=0&&t.splice(i,1),i>=0}var iI={};function nI(t){var e,i,n,s;if(1===arguments.length){if(Ek(t))return t.slice();if(this===iI&&"string"==typeof t)return[t];if(s=tI(t)){for(i=[];!(n=s.next()).done;)i.push(n.value);return i}if(null==t)return[t];if("number"==typeof(e=t.length)){for(i=new Array(e);e--;)i[e]=t[e];return i}return[t]}for(e=arguments.length,i=new Array(e);e--;)i[e]=arguments[e];return i}var sI="undefined"!=typeof Symbol?function(t){return"AsyncFunction"===t[Symbol.toStringTag]}:function(){return!1},oI=["Unknown","Constraint","Data","TransactionInactive","ReadOnly","Version","NotFound","InvalidState","InvalidAccess","Abort","Timeout","QuotaExceeded","Syntax","DataClone"],rI=["Modify","Bulk","OpenFailed","VersionChange","Schema","Upgrade","InvalidTable","MissingAPI","NoSuchDatabase","InvalidArgument","SubTransaction","Unsupported","Internal","DatabaseClosed","PrematureCommit","ForeignAwait"].concat(oI),aI={VersionChanged:"Database version changed by other database connection",DatabaseClosed:"Database has been closed",Abort:"Transaction aborted",TransactionInactive:"Transaction has already completed or failed",MissingAPI:"IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"};function hI(t,e){this.name=t,this.message=e}function lI(t,e){return t+". Errors: "+Object.keys(e).map((function(t){return e[t].toString()})).filter((function(t,e,i){return i.indexOf(t)===e})).join("\n")}function dI(t,e,i,n){this.failures=e,this.failedKeys=n,this.successCount=i,this.message=lI(t,e)}function cI(t,e){this.name="BulkError",this.failures=Object.keys(e).map((function(t){return e[t]})),this.failuresByPos=e,this.message=lI(t,this.failures)}Lk(hI).from(Error).extend({toString:function(){return this.name+": "+this.message}}),Lk(dI).from(hI),Lk(cI).from(hI);var uI=rI.reduce((function(t,e){return t[e]=e+"Error",t}),{}),pI=hI,mI=rI.reduce((function(t,e){var i=e+"Error";function n(t,n){this.name=i,t?"string"==typeof t?(this.message="".concat(t).concat(n?"\n "+n:""),this.inner=n||null):"object"==typeof t&&(this.message="".concat(t.name," ").concat(t.message),this.inner=t):(this.message=aI[e]||i,this.inner=null)}return Lk(n).from(pI),t[e]=n,t}),{});mI.Syntax=SyntaxError,mI.Type=TypeError,mI.Range=RangeError;var fI=oI.reduce((function(t,e){return t[e+"Error"]=mI[e],t}),{}),gI=rI.reduce((function(t,e){return-1===["Syntax","Type","Range"].indexOf(e)&&(t[e+"Error"]=mI[e]),t}),{});function vI(){}function AI(t){return t}function yI(t,e){return null==t||t===AI?e:function(i){return e(t(i))}}function xI(t,e){return function(){t.apply(this,arguments),e.apply(this,arguments)}}function wI(t,e){return t===vI?e:function(){var i=t.apply(this,arguments);void 0!==i&&(arguments[0]=i);var n=this.onsuccess,s=this.onerror;this.onsuccess=null,this.onerror=null;var o=e.apply(this,arguments);return n&&(this.onsuccess=this.onsuccess?xI(n,this.onsuccess):n),s&&(this.onerror=this.onerror?xI(s,this.onerror):s),void 0!==o?o:i}}function bI(t,e){return t===vI?e:function(){t.apply(this,arguments);var i=this.onsuccess,n=this.onerror;this.onsuccess=this.onerror=null,e.apply(this,arguments),i&&(this.onsuccess=this.onsuccess?xI(i,this.onsuccess):i),n&&(this.onerror=this.onerror?xI(n,this.onerror):n)}}function EI(t,e){return t===vI?e:function(i){var n=t.apply(this,arguments);Ck(i,n);var s=this.onsuccess,o=this.onerror;this.onsuccess=null,this.onerror=null;var r=e.apply(this,arguments);return s&&(this.onsuccess=this.onsuccess?xI(s,this.onsuccess):s),o&&(this.onerror=this.onerror?xI(o,this.onerror):o),void 0===n?void 0===r?void 0:r:Ck(n,r)}}function CI(t,e){return t===vI?e:function(){return!1!==e.apply(this,arguments)&&t.apply(this,arguments)}}function kI(t,e){return t===vI?e:function(){var i=t.apply(this,arguments);if(i&&"function"==typeof i.then){for(var n=this,s=arguments.length,o=new Array(s);s--;)o[s]=arguments[s];return i.then((function(){return e.apply(n,o)}))}return e.apply(this,arguments)}}gI.ModifyError=dI,gI.DexieError=hI,gI.BulkError=cI;var II="undefined"!=typeof location&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function BI(t,e){II=t}var DI={},MI="undefined"==typeof Promise?[]:function(){var t=Promise.resolve();if("undefined"==typeof crypto||!crypto.subtle)return[t,kk(t),t];var e=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[e,kk(e),t]}(),NI=MI[0],LI=MI[1],SI=MI[2],PI=LI&&LI.then,FI=NI&&NI.constructor,TI=!!SI,zI=function(t,e){JI.push([t,e]),RI&&(queueMicrotask(eB),RI=!1)},QI=!0,RI=!0,OI=[],UI=[],jI=AI,HI={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:vI,pgp:!1,env:{},finalize:vI},GI=HI,JI=[],ZI=0,WI=[];function KI(t){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");this._listeners=[],this._lib=!1;var e=this._PSD=GI;if("function"!=typeof t){if(t!==DI)throw new TypeError("Not a function");return this._state=arguments[1],this._value=arguments[2],void(!1===this._state&&VI(this,this._value))}this._state=null,this._value=null,++e.ref,XI(this,t)}var qI={get:function(){var t=GI,e=cB;function i(i,n){var s=this,o=!t.global&&(t!==GI||e!==cB),r=o&&!fB(),a=new KI((function(e,a){$I(s,new YI(bB(i,t,o,r),bB(n,t,o,r),e,a,t))}));return this._consoleTask&&(a._consoleTask=this._consoleTask),a}return i.prototype=DI,i},set:function(t){Nk(this,"then",t&&t.prototype===DI?qI:{get:function(){return t},set:qI.set})}};function YI(t,e,i,n,s){this.onFulfilled="function"==typeof t?t:null,this.onRejected="function"==typeof e?e:null,this.resolve=i,this.reject=n,this.psd=s}function XI(t,e){try{e((function(e){if(null===t._state){if(e===t)throw new TypeError("A promise cannot be resolved with itself.");var i=t._lib&&iB();e&&"function"==typeof e.then?XI(t,(function(t,i){e instanceof KI?e._then(t,i):e.then(t,i)})):(t._state=!0,t._value=e,_I(t)),i&&nB()}}),VI.bind(null,t))}catch(i){VI(t,i)}}function VI(t,e){if(UI.push(e),null===t._state){var i=t._lib&&iB();e=jI(e),t._state=!1,t._value=e,n=t,OI.some((function(t){return t._value===n._value}))||OI.push(n),_I(t),i&&nB()}var n}function _I(t){var e=t._listeners;t._listeners=[];for(var i=0,n=e.length;i0;)for(t=JI,JI=[],i=t.length,e=0;e0);QI=!0,RI=!0}function sB(){var t=OI;OI=[],t.forEach((function(t){t._PSD.onunhandled.call(null,t._value,t)}));for(var e=WI.slice(0),i=e.length;i;)e[--i]()}function oB(t){return new KI(DI,!1,t)}function rB(t,e){var i=GI;return function(){var n=iB(),s=GI;try{return yB(i,!0),t.apply(this,arguments)}catch(o){e&&e(o)}finally{yB(s,!1),n&&nB()}}}Dk(KI.prototype,{then:qI,_then:function(t,e){$I(this,new YI(null,null,t,e,GI))},catch:function(t){if(1===arguments.length)return this.then(null,t);var e=arguments[0],i=arguments[1];return"function"==typeof e?this.then(null,(function(t){return t instanceof e?i(t):oB(t)})):this.then(null,(function(t){return t&&t.name===e?i(t):oB(t)}))},finally:function(t){return this.then((function(e){return KI.resolve(t()).then((function(){return e}))}),(function(e){return KI.resolve(t()).then((function(){return oB(e)}))}))},timeout:function(t,e){var i=this;return t<1/0?new KI((function(n,s){var o=setTimeout((function(){return s(new mI.Timeout(e))}),t);i.then(n,s).finally(clearTimeout.bind(null,o))})):this}}),"undefined"!=typeof Symbol&&Symbol.toStringTag&&Nk(KI.prototype,Symbol.toStringTag,"Dexie.Promise"),HI.env=xB(),Dk(KI,{all:function(){var t=nI.apply(null,arguments).map(gB);return new KI((function(e,i){0===t.length&&e([]);var n=t.length;t.forEach((function(s,o){return KI.resolve(s).then((function(i){t[o]=i,--n||e(t)}),i)}))}))},resolve:function(t){return t instanceof KI?t:t&&"function"==typeof t.then?new KI((function(e,i){t.then(e,i)})):new KI(DI,!0,t)},reject:oB,race:function(){var t=nI.apply(null,arguments).map(gB);return new KI((function(e,i){t.map((function(t){return KI.resolve(t).then(e,i)}))}))},PSD:{get:function(){return GI},set:function(t){return GI=t}},totalEchoes:{get:function(){return cB}},newPSD:pB,usePSD:wB,scheduler:{get:function(){return zI},set:function(t){zI=t}},rejectionMapper:{get:function(){return jI},set:function(t){jI=t}},follow:function(t,e){return new KI((function(i,n){return pB((function(e,i){var n=GI;n.unhandleds=[],n.onunhandled=i,n.finalize=xI((function(){var t=this;WI.push((function n(){0===t.unhandleds.length?e():i(t.unhandleds[0]),WI.splice(WI.indexOf(n),1)})),++ZI,zI((function(){0==--ZI&&sB()}),[])}),n.finalize),t()}),e,i,n)}))}}),FI&&(FI.allSettled&&Nk(KI,"allSettled",(function(){var t=nI.apply(null,arguments).map(gB);return new KI((function(e){0===t.length&&e([]);var i=t.length,n=new Array(i);t.forEach((function(t,s){return KI.resolve(t).then((function(t){return n[s]={status:"fulfilled",value:t}}),(function(t){return n[s]={status:"rejected",reason:t}})).then((function(){return--i||e(n)}))}))}))})),FI.any&&"undefined"!=typeof AggregateError&&Nk(KI,"any",(function(){var t=nI.apply(null,arguments).map(gB);return new KI((function(e,i){0===t.length&&i(new AggregateError([]));var n=t.length,s=new Array(n);t.forEach((function(t,o){return KI.resolve(t).then((function(t){return e(t)}),(function(t){s[o]=t,--n||i(new AggregateError(s))}))}))}))})));var aB={awaits:0,echoes:0,id:0},hB=0,lB=[],dB=0,cB=0,uB=0;function pB(t,e,i,n){var s=GI,o=Object.create(s);o.parent=s,o.ref=0,o.global=!1,o.id=++uB,HI.env,o.env=TI?{Promise:KI,PromiseProp:{value:KI,configurable:!0,writable:!0},all:KI.all,race:KI.race,allSettled:KI.allSettled,any:KI.any,resolve:KI.resolve,reject:KI.reject}:{},e&&Ck(o,e),++s.ref,o.finalize=function(){--this.parent.ref||this.parent.finalize()};var r=wB(o,t,i,n);return 0===o.ref&&o.finalize(),r}function mB(){return aB.id||(aB.id=++hB),++aB.awaits,aB.echoes+=100,aB.id}function fB(){return!!aB.awaits&&(0==--aB.awaits&&(aB.id=0),aB.echoes=100*aB.awaits,!0)}function gB(t){return aB.echoes&&t&&t.constructor===FI?(mB(),t.then((function(t){return fB(),t}),(function(t){return fB(),CB(t)}))):t}function vB(t){++cB,aB.echoes&&0!=--aB.echoes||(aB.echoes=aB.awaits=aB.id=0),lB.push(GI),yB(t,!0)}function AB(){var t=lB[lB.length-1];lB.pop(),yB(t,!1)}function yB(t,e){var i=GI;if((e?!aB.echoes||dB++&&t===GI:!dB||--dB&&t===GI)||queueMicrotask(e?vB.bind(null,t):AB),t!==GI&&(GI=t,i===HI&&(HI.env=xB()),TI)){var n=HI.env.Promise,s=t.env;(i.global||t.global)&&(Object.defineProperty(wk,"Promise",s.PromiseProp),n.all=s.all,n.race=s.race,n.resolve=s.resolve,n.reject=s.reject,s.allSettled&&(n.allSettled=s.allSettled),s.any&&(n.any=s.any))}}function xB(){var t=wk.Promise;return TI?{Promise:t,PromiseProp:Object.getOwnPropertyDescriptor(wk,"Promise"),all:t.all,race:t.race,allSettled:t.allSettled,any:t.any,resolve:t.resolve,reject:t.reject}:{}}function wB(t,e,i,n,s){var o=GI;try{return yB(t,!0),e(i,n,s)}finally{yB(o,!1)}}function bB(t,e,i,n){return"function"!=typeof t?t:function(){var s=GI;i&&mB(),yB(e,!0);try{return t.apply(this,arguments)}finally{yB(s,!1),n&&queueMicrotask(fB)}}}function EB(t){Promise===FI&&0===aB.echoes?0===dB?t():enqueueNativeMicroTask(t):setTimeout(t,0)}-1===(""+PI).indexOf("[native code]")&&(mB=fB=vI);var CB=KI.reject;function kB(t,e,i,n){if(t.idbdb&&(t._state.openComplete||GI.letThrough||t._vip)){var s=t._createTransaction(e,i,t._dbSchema);try{s.create(),t._state.PR1398_maxLoop=3}catch(o){return o.name===uI.InvalidState&&t.isOpen()&&--t._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),t.close({disableAutoOpen:!1}),t.open().then((function(){return kB(t,e,i,n)}))):CB(o)}return s._promise(e,(function(t,e){return pB((function(){return GI.trans=s,n(t,e,s)}))})).then((function(t){if("readwrite"===e)try{s.idbtrans.commit()}catch(i){}return"readonly"===e?t:s._completion.then((function(){return t}))}))}if(t._state.openComplete)return CB(new mI.DatabaseClosed(t._state.dbOpenError));if(!t._state.isBeingOpened){if(!t._state.autoOpen)return CB(new mI.DatabaseClosed);t.open().catch(vI)}return t._state.dbReadyPromise.then((function(){return kB(t,e,i,n)}))}var IB=String.fromCharCode(65535),BB=-1/0,DB="Invalid key provided. Keys must be of type string, number, Date or Array.",MB="String expected.",NB=[],LB="__dbnames",SB="readonly",PB="readwrite";function FB(t,e){return t?e?function(){return t.apply(this,arguments)&&e.apply(this,arguments)}:t:e}var TB={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function zB(t){return"string"!=typeof t||/\./.test(t)?function(t){return t}:function(e){return void 0===e[t]&&t in e&&delete(e=Yk(e))[t],e}}function QB(){throw mI.Type()}function RB(t,e){try{var i=OB(t),n=OB(e);if(i!==n)return"Array"===i?1:"Array"===n?-1:"binary"===i?1:"binary"===n?-1:"string"===i?1:"string"===n?-1:"Date"===i?1:"Date"!==n?NaN:-1;switch(i){case"number":case"Date":case"string":return t>e?1:t=0}))){for(var i=0;in?r:0}return this.toArray((function(t){return t.sort(a)})).then(e)},t.prototype.toArray=function(t){var e=this;return this._read((function(t){var i=e._ctx;if("next"===i.dir&&JB(i,!0)&&i.limit>0){var n=i.valueMapper,s=KB(i,i.table.core.schema);return i.table.core.query({trans:t,limit:i.limit,values:!0,query:{index:s,range:i.range}}).then((function(t){var e=t.result;return n?e.map(n):e}))}var o=[];return YB(i,(function(t){return o.push(t)}),t,i.table.core).then((function(){return o}))}),t)},t.prototype.offset=function(t){var e=this._ctx;return t<=0||(e.offset+=t,JB(e)?WB(e,(function(){var e=t;return function(t,i){return 0===e||(1===e?(--e,!1):(i((function(){t.advance(e),e=0})),!1))}})):WB(e,(function(){var e=t;return function(){return--e<0}}))),this},t.prototype.limit=function(t){return this._ctx.limit=Math.min(this._ctx.limit,t),WB(this._ctx,(function(){var e=t;return function(t,i,n){return--e<=0&&i(n),e>=0}}),!0),this},t.prototype.until=function(t,e){return ZB(this._ctx,(function(i,n,s){return!t(i.value)||(n(s),e)})),this},t.prototype.first=function(t){return this.limit(1).toArray((function(t){return t[0]})).then(t)},t.prototype.last=function(t){return this.reverse().first(t)},t.prototype.filter=function(t){return ZB(this._ctx,(function(e){return t(e.value)})),function(t,e){t.isMatch=FB(t.isMatch,e)}(this._ctx,t),this},t.prototype.and=function(t){return this.filter(t)},t.prototype.or=function(t){return new this.db.WhereClause(this._ctx.table,t,this)},t.prototype.reverse=function(){return this._ctx.dir="prev"===this._ctx.dir?"next":"prev",this._ondirectionchange&&this._ondirectionchange(this._ctx.dir),this},t.prototype.desc=function(){return this.reverse()},t.prototype.eachKey=function(t){var e=this._ctx;return e.keysOnly=!e.isMatch,this.each((function(e,i){t(i.key,i)}))},t.prototype.eachUniqueKey=function(t){return this._ctx.unique="unique",this.eachKey(t)},t.prototype.eachPrimaryKey=function(t){var e=this._ctx;return e.keysOnly=!e.isMatch,this.each((function(e,i){t(i.primaryKey,i)}))},t.prototype.keys=function(t){var e=this._ctx;e.keysOnly=!e.isMatch;var i=[];return this.each((function(t,e){i.push(e.key)})).then((function(){return i})).then(t)},t.prototype.primaryKeys=function(t){var e=this._ctx;if("next"===e.dir&&JB(e,!0)&&e.limit>0)return this._read((function(t){var i=KB(e,e.table.core.schema);return e.table.core.query({trans:t,values:!1,limit:e.limit,query:{index:i,range:e.range}})})).then((function(t){return t.result})).then(t);e.keysOnly=!e.isMatch;var i=[];return this.each((function(t,e){i.push(e.primaryKey)})).then((function(){return i})).then(t)},t.prototype.uniqueKeys=function(t){return this._ctx.unique="unique",this.keys(t)},t.prototype.firstKey=function(t){return this.limit(1).keys((function(t){return t[0]})).then(t)},t.prototype.lastKey=function(t){return this.reverse().firstKey(t)},t.prototype.distinct=function(){var t=this._ctx,e=t.index&&t.table.schema.idxByName[t.index];if(!e||!e.multi)return this;var i={};return ZB(this._ctx,(function(t){var e=t.primaryKey.toString(),n=Bk(i,e);return i[e]=!0,!n})),this},t.prototype.modify=function(t){var e=this,i=this._ctx;return this._write((function(n){var s;if("function"==typeof t)s=t;else{var o=bk(t),r=o.length;s=function(e){for(var i=!1,n=0;n0&&a.mutate({trans:n,type:"add",values:p}).then((function(t){for(var e in t.failures)v.splice(parseInt(e),1);f(p.length,t)}))).then((function(){return(m.length>0||o&&"object"==typeof t)&&a.mutate({trans:n,type:"put",keys:g,values:m,criteria:o,changeSpec:"function"!=typeof t&&t,isAdditionalChunk:i>0}).then((function(t){return f(m.length,t)}))})).then((function(){return(v.length>0||o&&t===$B)&&a.mutate({trans:n,type:"delete",keys:v,criteria:o,isAdditionalChunk:i>0}).then((function(t){return f(v.length,t)}))})).then((function(){return e.length>i+h&&r(i+c)}))}))};return r(0).then((function(){if(u.length>0)throw new dI("Error modifying one or more objects",u,p,m);return e.length}))}))}))},t.prototype.delete=function(){var t=this._ctx,e=t.range;return JB(t)&&(t.isPrimKey||3===e.type)?this._write((function(i){var n=t.table.core.schema.primaryKey,s=e;return t.table.core.count({trans:i,query:{index:n,range:s}}).then((function(e){return t.table.core.mutate({trans:i,type:"deleteRange",range:s}).then((function(t){var i=t.failures;t.lastResult,t.results;var n=t.numFailures;if(n)throw new dI("Could not delete some values",Object.keys(i).map((function(t){return i[t]})),e-n);return e-n}))}))})):this.modify($B)},t}(),$B=function(t,e){return e.value=null};function tD(t,e){return te?-1:t===e?0:1}function iD(t,e,i){var n=t instanceof hD?new t.Collection(t):t;return n._ctx.error=i?new i(e):new TypeError(e),n}function nD(t){return new t.Collection(t,(function(){return aD("")})).limit(0)}function sD(t,e,i,n,s,o){for(var r=Math.min(t.length,n.length),a=-1,h=0;h=0?t.substr(0,a)+e[a]+i.substr(a+1):null;s(t[h],l)<0&&(a=h)}return r0)&&(p=g)}return i(null!==p?function(){t.continue(p+d)}:n),!1})),p}function rD(t,e,i,n){return{type:2,lower:t,upper:e,lowerOpen:i,upperOpen:n}}function aD(t){return{type:1,lower:t,upper:t}}var hD=function(){function t(){}return Object.defineProperty(t.prototype,"Collection",{get:function(){return this._ctx.table.db.Collection},enumerable:!1,configurable:!0}),t.prototype.between=function(t,e,i,n){i=!1!==i,n=!0===n;try{return this._cmp(t,e)>0||0===this._cmp(t,e)&&(i||n)&&(!i||!n)?nD(this):new this.Collection(this,(function(){return rD(t,e,!i,!n)}))}catch(s){return iD(this,DB)}},t.prototype.equals=function(t){return null==t?iD(this,DB):new this.Collection(this,(function(){return aD(t)}))},t.prototype.above=function(t){return null==t?iD(this,DB):new this.Collection(this,(function(){return rD(t,void 0,!0)}))},t.prototype.aboveOrEqual=function(t){return null==t?iD(this,DB):new this.Collection(this,(function(){return rD(t,void 0,!1)}))},t.prototype.below=function(t){return null==t?iD(this,DB):new this.Collection(this,(function(){return rD(void 0,t,!1,!0)}))},t.prototype.belowOrEqual=function(t){return null==t?iD(this,DB):new this.Collection(this,(function(){return rD(void 0,t)}))},t.prototype.startsWith=function(t){return"string"!=typeof t?iD(this,MB):this.between(t,t+IB,!0,!0)},t.prototype.startsWithIgnoreCase=function(t){return""===t?this.startsWith(t):oD(this,(function(t,e){return 0===t.indexOf(e[0])}),[t],IB)},t.prototype.equalsIgnoreCase=function(t){return oD(this,(function(t,e){return t===e[0]}),[t],"")},t.prototype.anyOfIgnoreCase=function(){var t=nI.apply(iI,arguments);return 0===t.length?nD(this):oD(this,(function(t,e){return-1!==e.indexOf(t)}),t,"")},t.prototype.startsWithAnyOfIgnoreCase=function(){var t=nI.apply(iI,arguments);return 0===t.length?nD(this):oD(this,(function(t,e){return e.some((function(e){return 0===t.indexOf(e)}))}),t,IB)},t.prototype.anyOf=function(){var t=this,e=nI.apply(iI,arguments),i=this._cmp;try{e.sort(i)}catch(o){return iD(this,DB)}if(0===e.length)return nD(this);var n=new this.Collection(this,(function(){return rD(e[0],e[e.length-1])}));n._ondirectionchange=function(n){i="next"===n?t._ascending:t._descending,e.sort(i)};var s=0;return n._addAlgorithm((function(t,n,o){for(var r=t.key;i(r,e[s])>0;)if(++s===e.length)return n(o),!1;return 0===i(r,e[s])||(n((function(){t.continue(e[s])})),!1)})),n},t.prototype.notEqual=function(t){return this.inAnyRange([[BB,t],[t,this.db._maxKey]],{includeLowers:!1,includeUppers:!1})},t.prototype.noneOf=function(){var t=nI.apply(iI,arguments);if(0===t.length)return new this.Collection(this);try{t.sort(this._ascending)}catch(i){return iD(this,DB)}var e=t.reduce((function(t,e){return t?t.concat([[t[t.length-1][1],e]]):[[BB,e]]}),null);return e.push([t[t.length-1],this.db._maxKey]),this.inAnyRange(e,{includeLowers:!1,includeUppers:!1})},t.prototype.inAnyRange=function(t,e){var i=this,n=this._cmp,s=this._ascending,o=this._descending,r=this._min,a=this._max;if(0===t.length)return nD(this);if(!t.every((function(t){return void 0!==t[0]&&void 0!==t[1]&&s(t[0],t[1])<=0})))return iD(this,"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower",mI.InvalidArgument);var h,l=!e||!1!==e.includeLowers,d=e&&!0===e.includeUppers,c=s;function u(t,e){return c(t[0],e[0])}try{(h=t.reduce((function(t,e){for(var i=0,s=t.length;i0){o[0]=r(o[0],e[0]),o[1]=a(o[1],e[1]);break}}return i===s&&t.push(e),t}),[])).sort(u)}catch(A){return iD(this,DB)}var p=0,m=d?function(t){return s(t,h[p][1])>0}:function(t){return s(t,h[p][1])>=0},f=l?function(t){return o(t,h[p][0])>0}:function(t){return o(t,h[p][0])>=0},g=m,v=new this.Collection(this,(function(){return rD(h[0][0],h[h.length-1][1],!l,!d)}));return v._ondirectionchange=function(t){"next"===t?(g=m,c=s):(g=f,c=o),h.sort(u)},v._addAlgorithm((function(t,e,n){for(var o=t.key;g(o);)if(++p===h.length)return e(n),!1;return!(r=o,(m(r)||f(r))&&(0===i._cmp(o,h[p][1])||0===i._cmp(o,h[p][0])||e((function(){c===s?t.continue(h[p][0]):t.continue(h[p][1])})),1));var r})),v},t.prototype.startsWithAnyOf=function(){var t=nI.apply(iI,arguments);return t.every((function(t){return"string"==typeof t}))?0===t.length?nD(this):this.inAnyRange(t.map((function(t){return[t,t+IB]}))):iD(this,"startsWithAnyOf() only works with strings")},t}();function lD(t){return rB((function(e){return dD(e),t(e.target.error),!1}))}function dD(t){t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault()}var cD="storagemutated",uD="x-storagemutated-1",pD=HB(null,cD),mD=function(){function t(){}return t.prototype._lock=function(){return Qk(!GI.global),++this._reculock,1!==this._reculock||GI.global||(GI.lockOwnerFor=this),this},t.prototype._unlock=function(){if(Qk(!GI.global),0==--this._reculock)for(GI.global||(GI.lockOwnerFor=null);this._blockedFuncs.length>0&&!this._locked();){var t=this._blockedFuncs.shift();try{wB(t[1],t[0])}catch(e){}}return this},t.prototype._locked=function(){return this._reculock&&GI.lockOwnerFor!==this},t.prototype.create=function(t){var e=this;if(!this.mode)return this;var i=this.db.idbdb,n=this.db._state.dbOpenError;if(Qk(!this.idbtrans),!t&&!i)switch(n&&n.name){case"DatabaseClosedError":throw new mI.DatabaseClosed(n);case"MissingAPIError":throw new mI.MissingAPI(n.message,n);default:throw new mI.OpenFailed(n)}if(!this.active)throw new mI.TransactionInactive;return Qk(null===this._completion._state),(t=this.idbtrans=t||(this.db.core?this.db.core.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}):i.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}))).onerror=rB((function(i){dD(i),e._reject(t.error)})),t.onabort=rB((function(i){dD(i),e.active&&e._reject(new mI.Abort(t.error)),e.active=!1,e.on("abort").fire(i)})),t.oncomplete=rB((function(){e.active=!1,e._resolve(),"mutatedParts"in t&&pD.storagemutated.fire(t.mutatedParts)})),this},t.prototype._promise=function(t,e,i){var n=this;if("readwrite"===t&&"readwrite"!==this.mode)return CB(new mI.ReadOnly("Transaction is readonly"));if(!this.active)return CB(new mI.TransactionInactive);if(this._locked())return new KI((function(s,o){n._blockedFuncs.push([function(){n._promise(t,e,i).then(s,o)},GI])}));if(i)return pB((function(){var t=new KI((function(t,i){n._lock();var s=e(t,i,n);s&&s.then&&s.then(t,i)}));return t.finally((function(){return n._unlock()})),t._lib=!0,t}));var s=new KI((function(t,i){var s=e(t,i,n);s&&s.then&&s.then(t,i)}));return s._lib=!0,s},t.prototype._root=function(){return this.parent?this.parent._root():this},t.prototype.waitFor=function(t){var e=this._root(),i=KI.resolve(t);if(e._waitingFor)e._waitingFor=e._waitingFor.then((function(){return i}));else{e._waitingFor=i,e._waitingQueue=[];var n=e.idbtrans.objectStore(e.storeNames[0]);!function t(){for(++e._spinCount;e._waitingQueue.length;)e._waitingQueue.shift()();e._waitingFor&&(n.get(-1/0).onsuccess=t)}()}var s=e._waitingFor;return new KI((function(t,n){i.then((function(i){return e._waitingQueue.push(rB(t.bind(null,i)))}),(function(t){return e._waitingQueue.push(rB(n.bind(null,t)))})).finally((function(){e._waitingFor===s&&(e._waitingFor=null)}))}))},t.prototype.abort=function(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new mI.Abort))},t.prototype.table=function(t){var e=this._memoizedTables||(this._memoizedTables={});if(Bk(e,t))return e[t];var i=this.schema[t];if(!i)throw new mI.NotFound("Table "+t+" not part of transaction");var n=new this.db.Table(t,i,this);return n.core=this.db.core.table(t),e[t]=n,n},t}();function fD(t,e,i,n,s,o,r){return{name:t,keyPath:e,unique:i,multi:n,auto:s,compound:o,src:(i&&!r?"&":"")+(n?"*":"")+(s?"++":"")+gD(e)}}function gD(t){return"string"==typeof t?t:t?"["+[].join.call(t,"+")+"]":""}function vD(t,e,i){return{name:t,primKey:e,indexes:i,mappedClass:null,idxByName:Ok(i,(function(t){return[t.name,t]}))}}var AD=function(t){try{return t.only([[]]),AD=function(){return[[]]},[[]]}catch(e){return AD=function(){return IB},IB}};function yD(t){return null==t?function(){}:"string"==typeof t?1===(e=t).split(".").length?function(t){return t[e]}:function(t){return Uk(t,e)}:function(e){return Uk(e,t)};var e}function xD(t){return[].slice.call(t)}var wD=0;function bD(t){return null==t?":id":"string"==typeof t?t:"[".concat(t.join("+"),"]")}function ED(t,e,i,n){var s,o=i.IDBKeyRange;return i.indexedDB,{dbcore:(s=function(t,e,i){function n(t){if(3===t.type)return null;if(4===t.type)throw new Error("Cannot convert never type to IDBKeyRange");var i=t.lower,n=t.upper,s=t.lowerOpen,o=t.upperOpen;return void 0===i?void 0===n?null:e.upperBound(n,!!o):void 0===n?e.lowerBound(i,!!s):e.bound(i,n,!!s,!!o)}var s,o,r,a=(o=i,r=xD((s=t).objectStoreNames),{schema:{name:s.name,tables:r.map((function(t){return o.objectStore(t)})).map((function(t){var e=t.keyPath,i=t.autoIncrement,n=Ek(e),s=null==e,o={},r={name:t.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:s,compound:n,keyPath:e,autoIncrement:i,unique:!0,extractKey:yD(e)},indexes:xD(t.indexNames).map((function(e){return t.index(e)})).map((function(t){var e=t.name,i=t.unique,n=t.multiEntry,s=t.keyPath,r={name:e,compound:Ek(s),keyPath:s,unique:i,multiEntry:n,extractKey:yD(s)};return o[bD(s)]=r,r})),getIndexByKeyPath:function(t){return o[bD(t)]}};return o[":id"]=r.primaryKey,null!=e&&(o[bD(e)]=r.primaryKey),r}))},hasGetAll:r.length>0&&"getAll"in o.objectStore(r[0])&&!("undefined"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604)}),h=a.schema,l=a.hasGetAll,d=h.tables.map((function(t){return function(t){var e,i=t.name;return{name:i,schema:t,mutate:function(t){var e=t.trans,s=t.type,o=t.keys,r=t.values,a=t.range;return new Promise((function(t,h){t=rB(t);var l=e.objectStore(i),d=null==l.keyPath,c="put"===s||"add"===s;if(!c&&"delete"!==s&&"deleteRange"!==s)throw new Error("Invalid operation type: "+s);var u,p=(o||r||{length:1}).length;if(o&&r&&o.length!==r.length)throw new Error("Given keys array must have same length as given values array.");if(0===p)return t({numFailures:0,failures:{},results:[],lastResult:void 0});var m=[],f=[],g=0,v=function(t){++g,dD(t)};if("deleteRange"===s){if(4===a.type)return t({numFailures:g,failures:f,results:[],lastResult:void 0});3===a.type?m.push(u=l.clear()):m.push(u=l.delete(n(a)))}else{var A=c?d?[r,o]:[r,null]:[o,null],y=A[0],x=A[1];if(c)for(var w=0;w0||r.add.length>0||r.change.length>0)&&n.change.push(r)}}else n.add.push([i,o])}return n}function MD(t,e,i,n){var s=t.db.createObjectStore(e,i.keyPath?{keyPath:i.keyPath,autoIncrement:i.auto}:{autoIncrement:i.auto});return n.forEach((function(t){return LD(s,t)})),s}function ND(t,e){bk(t).forEach((function(i){e.db.objectStoreNames.contains(i)||(II&&console.debug("Dexie: Creating missing table",i),MD(e,i,t[i].primKey,t[i].indexes))}))}function LD(t,e){t.createIndex(e.name,e.keyPath,{unique:e.unique,multiEntry:e.multi})}function SD(t,e,i){var n={};return Tk(e.objectStoreNames,0).forEach((function(t){for(var e=i.objectStore(t),s=e.keyPath,o=fD(gD(s),s||"",!0,!1,!!e.autoIncrement,s&&"string"!=typeof s,!0),r=[],a=0;a1?e:t}:{d:0})};function GD(t,e,i){var n=RB(e,i);if(!isNaN(n)){if(n>0)throw RangeError();if(jD(t))return Ck(t,{from:e,to:i,d:1});var s=t.l,o=t.r;if(RB(i,t.from)<0)return s?GD(s,e,i):t.l={from:e,to:i,d:1,l:null,r:null},WD(t);if(RB(e,t.to)>0)return o?GD(o,e,i):t.r={from:e,to:i,d:1,l:null,r:null},WD(t);RB(e,t.from)<0&&(t.from=e,t.l=null,t.d=o?o.d+1:1),RB(i,t.to)>0&&(t.to=i,t.r=null,t.d=t.l?t.l.d+1:1);var r=!t.r;s&&!t.l&&JD(t,s),o&&r&&JD(t,o)}}function JD(t,e){jD(e)||function t(e,i){var n=i.from,s=i.to,o=i.l,r=i.r;GD(e,n,s),o&&t(e,o),r&&t(e,r)}(t,e)}function ZD(t){var e=jD(t)?null:{s:0,n:t};return{next:function(t){for(var i=arguments.length>0;e;)switch(e.s){case 0:if(e.s=1,i)for(;e.n.l&&RB(t,e.n.from)<0;)e={up:e,n:e.n.l,s:1};else for(;e.n.l;)e={up:e,n:e.n.l,s:1};case 1:if(e.s=2,!i||RB(t,e.n.to)<=0)return{value:e.n,done:!1};case 2:if(e.n.r){e.s=3,e={up:e,n:e.n.r,s:0};continue}case 3:e=e.up}return{done:!0}}}}function WD(t){var e,i,n=((null===(e=t.r)||void 0===e?void 0:e.d)||0)-((null===(i=t.l)||void 0===i?void 0:i.d)||0),s=n>1?"r":n<-1?"l":"";if(s){var o="r"===s?"l":"r",r=yk({},t),a=t[s];t.from=a.from,t.to=a.to,t[s]=a[s],r[s]=a[o],t[o]=r,r.d=KD(r)}t.d=KD(t)}function KD(t){var e=t.r,i=t.l;return(e?i?Math.max(e.d,i.d):e.d:i?i.d:0)+1}function qD(t,e){return bk(e).forEach((function(i){t[i]?JD(t[i],e[i]):t[i]=Kk(e[i])})),t}function YD(t,e){return t.all||e.all||Object.keys(t).some((function(i){return e[i]&&function(t,e){var i=ZD(e),n=i.next();if(n.done)return!1;for(var s=n.value,o=ZD(t),r=o.next(s.from),a=r.value;!n.done&&!r.done;){if(RB(a.from,s.to)<=0&&RB(a.to,s.from)>=0)return!0;RB(s.from,a.from)<0?s=(n=i.next(a.from)).value:a=(r=o.next(s.from)).value}return!1}(e[i],t[i])}))}Dk(HD.prototype,((TD={add:function(t){return JD(this,t),this},addKey:function(t){return GD(this,t,t),this},addKeys:function(t){var e=this;return t.forEach((function(t){return GD(e,t,t)})),this},hasKey:function(t){var e=ZD(this).next(t).value;return e&&RB(e.from,t)<=0&&RB(e.to,t)>=0}})[$k]=function(){return ZD(this)},TD));var XD={},VD={},_D=!1;function $D(t,e){qD(VD,t),_D||(_D=!0,setTimeout((function(){_D=!1;var t=VD;VD={},tM(t,!1)}),0))}function tM(t,e){void 0===e&&(e=!1);var i=new Set;if(t.all)for(var n=0,s=Object.values(XD);nMath.pow(2,62)?0:n.oldVersion;l=r<1,t.idbdb=u.result,o&&function(t,e){ND(t._dbSchema,e),e.db.version%10!=0||e.objectStoreNames.contains("$meta")||e.db.createObjectStore("$meta").add(Math.ceil(e.db.version/10-1),"version");var i=SD(0,t.idbdb,e);PD(t,t._dbSchema,e);for(var n=function(t){if(t.change.length||t.recreate)return console.warn("Unable to patch indexes of table ".concat(t.name," because it has changes on the type of index or primary key.")),{value:void 0};var i=e.objectStore(t.name);t.add.forEach((function(e){II&&console.debug("Dexie upgrade patch: Creating missing index ".concat(t.name,".").concat(e.src)),LD(i,e)}))},s=0,o=DD(i,t._dbSchema).change;s=e}));return 0===a.length?KI.resolve():(a.forEach((function(o){s.push((function(){var s=r,a=o._cfg.dbschema;PD(t,s,n),PD(t,a,n),r=t._dbSchema=a;var h=DD(s,a);h.add.forEach((function(t){MD(n,t[0],t[1].primKey,t[1].indexes)})),h.change.forEach((function(t){if(t.recreate)throw new mI.Upgrade("Not yet support for changing primary key");var e=n.objectStore(t.name);t.add.forEach((function(t){return LD(e,t)})),t.change.forEach((function(t){e.deleteIndex(t.name),LD(e,t)})),t.del.forEach((function(t){return e.deleteIndex(t)}))}));var l=o._cfg.contentUpgrade;if(l&&o._cfg.version>e){CD(t,n),i._memoizedTables={};var d=Hk(a);h.del.forEach((function(t){d[t]=s[t]})),ID(t,[t.Transaction.prototype]),kD(t,[t.Transaction.prototype],bk(d),d),i.schema=d;var c,u=sI(l);u&&mB();var p=KI.follow((function(){if((c=l(i))&&u){var t=fB.bind(null,null);c.then(t,t)}}));return c&&"function"==typeof c.then?KI.resolve(c):p.then((function(){return c}))}})),s.push((function(e){var n,s;n=o._cfg.dbschema,s=e,[].slice.call(s.db.objectStoreNames).forEach((function(t){return null==n[t]&&s.db.deleteObjectStore(t)})),ID(t,[t.Transaction.prototype]),kD(t,[t.Transaction.prototype],t._storeNames,t._dbSchema),i.schema=t._dbSchema})),s.push((function(e){t.idbdb.objectStoreNames.contains("$meta")&&(Math.ceil(t.idbdb.version/10)===o._cfg.version?(t.idbdb.deleteObjectStore("$meta"),delete t._dbSchema.$meta,t._storeNames=t._storeNames.filter((function(t){return"$meta"!==t}))):e.objectStore("$meta").put(o._cfg.version,"version"))}))})),function t(){return s.length?KI.resolve(s.shift()(i.idbtrans)).then(t):KI.resolve()}().then((function(){ND(r,n)})))}(t,e,o,i)})).catch(r);var n,h;bk(s).forEach((function(t){MD(i,t,s[t].primKey,s[t].indexes)})),CD(t,i),KI.follow((function(){return t.on.populate.fire(o)})).catch(r)}))}(t,r/10,h,a)}}),a),u.onsuccess=rB((function(){h=null;var i,r,a,p,m=t.idbdb=u.result,f=Tk(m.objectStoreNames);if(f.length>0)try{var g=m.transaction(1===(i=f).length?i[0]:i,"readonly");if(e.autoSchema)!function(t,e,i){t.verno=e.version/10;var n=t._dbSchema=SD(0,e,i);t._storeNames=Tk(e.objectStoreNames,0),kD(t,[t._allTables],bk(n),n)}(t,m,g);else if(PD(t,t._dbSchema,g),a=g,((p=DD(SD(0,(r=t).idbdb,a),r._dbSchema)).add.length||p.change.some((function(t){return t.add.length||t.change.length})))&&!o)return console.warn("Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Dexie will add missing parts and increment native version number to workaround this."),m.close(),s=m.version+1,o=!0,n(d());CD(t,g)}catch(r){}NB.push(t),m.onversionchange=rB((function(i){e.vcFired=!0,t.on("versionchange").fire(i)})),m.onclose=rB((function(e){t.on("close").fire(e)})),l&&function(t,e){var i=t.indexedDB,n=t.IDBKeyRange;!RD(i)&&e!==LB&&QD(i,n).put({name:e}).catch(vI)}(t._deps,c),n()}),a)})).catch((function(t){switch(null==t?void 0:t.name){case"UnknownError":if(e.PR1398_maxLoop>0)return e.PR1398_maxLoop--,console.warn("Dexie: Workaround for Chrome UnknownError on open()"),d();break;case"VersionError":if(s>0)return s=0,d()}return KI.reject(t)}))};return KI.race([n,("undefined"==typeof navigator?KI.resolve():UD()).then(d)]).then((function(){return r(),e.onReadyBeingFired=[],KI.resolve(OD((function(){return t.on.ready.fire(t.vip)}))).then((function i(){if(e.onReadyBeingFired.length>0){var n=e.onReadyBeingFired.reduce(kI,vI);return e.onReadyBeingFired=[],KI.resolve(OD((function(){return n(t.vip)}))).then(i)}}))})).finally((function(){e.openCanceller===n&&(e.onReadyBeingFired=null,e.isBeingOpened=!1)})).catch((function(i){e.dbOpenError=i;try{h&&h.abort()}catch(s){}return n===e.openCanceller&&t._close(),CB(i)})).finally((function(){e.openComplete=!0,a()})).then((function(){if(l){var e={};t.tables.forEach((function(i){i.schema.indexes.forEach((function(n){n.name&&(e["idb://".concat(t.name,"/").concat(i.name,"/").concat(n.name)]=new HD(-1/0,[[[]]]))})),e["idb://".concat(t.name,"/").concat(i.name,"/")]=e["idb://".concat(t.name,"/").concat(i.name,"/:dels")]=new HD(-1/0,[[[]]])})),pD(cD).fire(e),tM(e,!0)}return t}))}function nM(t){var e=function(e){return t.next(e)},i=s(e),n=s((function(e){return t.throw(e)}));function s(t){return function(e){var s=t(e),o=s.value;return s.done?o:o&&"function"==typeof o.then?o.then(i,n):Ek(o)?Promise.all(o).then(i,n):i(o)}}return s(e)()}function sM(t,e,i){var n=arguments.length;if(n<2)throw new mI.InvalidArgument("Too few arguments");for(var s=new Array(n-1);--n;)s[n-1]=arguments[n];return i=s.pop(),[t,Jk(s),i]}function oM(t,e,i,n,s){return KI.resolve().then((function(){var o=GI.transless||GI,r=t._createTransaction(e,i,t._dbSchema,n);r.explicit=!0;var a={trans:r,transless:o};if(n)r.idbtrans=n.idbtrans;else try{r.create(),r.idbtrans._explicit=!0,t._state.PR1398_maxLoop=3}catch(c){return c.name===uI.InvalidState&&t.isOpen()&&--t._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),t.close({disableAutoOpen:!1}),t.open().then((function(){return oM(t,e,i,null,s)}))):CB(c)}var h,l=sI(s);l&&mB();var d=KI.follow((function(){if(h=s.call(r,r))if(l){var t=fB.bind(null,null);h.then(t,t)}else"function"==typeof h.next&&"function"==typeof h.throw&&(h=nM(h))}),a);return(h&&"function"==typeof h.then?KI.resolve(h).then((function(t){return r.active?t:CB(new mI.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn"))})):d.then((function(){return h}))).then((function(t){return n&&r._resolve(),r._completion.then((function(){return t}))})).catch((function(t){return r._reject(t),CB(t)}))}))}function rM(t,e,i){for(var n=Ek(t)?t.slice():[t],s=0;s0,d=yk(yk({},i),{name:l?"".concat(n,"(virtual-from:").concat(i.name,")"):i.name,lowLevelIndex:i,isVirtual:l,keyTail:e,keyLength:h,extractKey:yD(t),unique:!l&&i.unique});return a.push(d),d.isPrimaryKey||o.push(d),h>1&&r(2===h?t[0]:t.slice(0,h-1),e+1,i),a.sort((function(t,e){return t.keyTail-e.keyTail})),d}var a=r(n.primaryKey.keyPath,0,n.primaryKey);s[":id"]=[a];for(var h=0,l=n.indexes;h0?Promise.reject(i.failures[0]):n.length0:RB(i,n.lower)>=0))&&function(t,e){return void 0===e.upper||(e.upperOpen?RB(t,e.upper)<0:RB(t,e.upper)<=0)}(t,e);var i,n}function AM(t,e,i,n,s,o){if(!i||0===i.length)return t;var r=e.query.index,a=r.multiEntry,h=e.query.range,l=n.schema.primaryKey.extractKey,d=r.extractKey,c=(r.lowLevelIndex||r).extractKey,u=i.reduce((function(t,i){var n=t,s=[];if("add"===i.type||"put"===i.type)for(var o=new HD,r=i.values.length-1;r>=0;--r){var c=i.values[r],u=l(c);if(!o.hasKey(u)){var p=d(c);(a&&Ek(p)?p.some((function(t){return vM(t,h)})):vM(p,h))&&(o.addKey(u),s.push(c))}}switch(i.type){case"add":n=t.concat(e.values?s:s.map((function(t){return l(t)})));break;case"put":var m=(new HD).addKeys(i.values.map((function(t){return l(t)})));n=t.filter((function(t){return!m.hasKey(e.values?l(t):t)})).concat(e.values?s:s.map((function(t){return l(t)})));break;case"delete":var f=(new HD).addKeys(i.keys);n=t.filter((function(t){return!f.hasKey(e.values?l(t):t)}));break;case"deleteRange":var g=i.range;n=t.filter((function(t){return!vM(l(t),g)}))}return n}),t);return u===t?t:(u.sort((function(t,e){return RB(c(t),c(e))||RB(l(t),l(e))})),e.limit&&e.limit<1/0&&(u.length>e.limit?u.length=e.limit:t.length===e.limit&&u.length0){c.optimisticOps=c.optimisticOps.filter((function(t){return t.trans!==o}));for(var A=0,y=Object.values(c.queries.query);A=50||lM(s,t).some((function(t){return null==t})))?(r.optimisticOps.push(t),t.mutatedParts&&$D(t.mutatedParts),a.then((function(e){if(e.numFailures>0){eI(r.optimisticOps,t);var i=gM(0,t,e);i&&r.optimisticOps.push(i),t.mutatedParts&&$D(t.mutatedParts)}})),a.catch((function(){eI(r.optimisticOps,t),t.mutatedParts&&$D(t.mutatedParts)}))):a.then((function(e){var i=gM(0,yk(yk({},t),{values:t.values.map((function(t,i){var n,o=(null===(n=s.keyPath)||void 0===n?void 0:n.includes("."))?Yk(t):yk({},t);return jk(o,s.keyPath,e.results[i]),o}))}),e);r.optimisticOps.push(i),queueMicrotask((function(){return t.mutatedParts&&$D(t.mutatedParts)}))})),a},query:function(t){var s;if(!pM(GI,n)||!mM("query",t))return n.query(t);var o="immutable"===(null===(s=GI.trans)||void 0===s?void 0:s.db._options.cache),r=GI,a=r.requery,h=r.signal,l=function(t,e,i,n){var s=XD["idb://".concat(t,"/").concat(e)];if(!s)return[];var o=s.queries[i];if(!o)return[null,!1,s,null];var r=o[(n.query?n.query.index.name:null)||""];if(!r)return[null,!1,s,null];var a=r.find((function(t){return t.req.limit===n.limit&&t.req.values===n.values&&yM(t.req.query.range,n.query.range)}));return a?[a,!0,s,r]:[r.find((function(t){return("limit"in t.req?t.req.limit:1/0)>=n.limit&&(!n.values||t.req.values)&&function(t,e){return function(t,e,i,n){if(void 0===t)return void 0!==e?-1:0;if(void 0===e)return 1;var s=RB(t,e);if(0===s){if(i&&n)return 0;if(i)return 1;if(n)return-1}return s}(t.lower,e.lower,t.lowerOpen,e.lowerOpen)<=0&&function(t,e,i,n){if(void 0===t)return void 0!==e?1:0;if(void 0===e)return-1;var s=RB(t,e);if(0===s){if(i&&n)return 0;if(i)return-1;if(n)return 1}return s}(t.upper,e.upper,t.upperOpen,e.upperOpen)>=0}(t.req.query.range,n.query.range)})),!1,s,r]}(e,i,"query",t),d=l[0],c=l[1],u=l[2],p=l[3];if(d&&c)d.obsSet=t.obsSet;else{var m=n.query(t).then((function(t){var e=t.result;if(d&&(d.res=e),o){for(var i=0,n=e.length;i0?t:e},this._min=function(t,e){return RB(t,e)<0?t:e},this._IDBKeyRange=t._deps.IDBKeyRange,!this._IDBKeyRange)throw new mI.MissingAPI}))}(this),this.on("versionchange",(function(t){t.newVersion>0?console.warn("Another connection wants to upgrade database '".concat(n.name,"'. Closing db now to resume the upgrade.")):console.warn("Another connection wants to delete database '".concat(n.name,"'. Closing db now to resume the delete request.")),n.close({disableAutoOpen:!1})})),this.on("blocked",(function(t){!t.newVersion||t.newVersion=0&&NB.splice(e,1),this.idbdb){try{this.idbdb.close()}catch(i){}this.idbdb=null}t.isBeingOpened||(t.dbReadyPromise=new KI((function(e){t.dbReadyResolve=e})),t.openCanceller=new KI((function(e,i){t.cancelOpen=i})))},t.prototype.close=function(t){var e=(void 0===t?{disableAutoOpen:!0}:t).disableAutoOpen,i=this._state;e?(i.isBeingOpened&&i.cancelOpen(new mI.DatabaseClosed),this._close(),i.autoOpen=!1,i.dbOpenError=new mI.DatabaseClosed):(this._close(),i.autoOpen=this._options.autoOpen||i.isBeingOpened,i.openComplete=!1,i.dbOpenError=null)},t.prototype.delete=function(t){var e=this;void 0===t&&(t={disableAutoOpen:!0});var i=arguments.length>0&&"object"!=typeof arguments[0],n=this._state;return new KI((function(s,o){var r=function(){e.close(t);var i=e._deps.indexedDB.deleteDatabase(e.name);i.onsuccess=rB((function(){var t,i,n,o;t=e._deps,i=e.name,n=t.indexedDB,o=t.IDBKeyRange,!RD(n)&&i!==LB&&QD(n,o).delete(i).catch(vI),s()})),i.onerror=lD(o),i.onblocked=e._fireOnBlocked};if(i)throw new mI.InvalidArgument("Invalid closeOptions argument to db.delete()");n.isBeingOpened?n.dbReadyPromise.then(r):r()}))},t.prototype.backendDB=function(){return this.idbdb},t.prototype.isOpen=function(){return null!==this.idbdb},t.prototype.hasBeenClosed=function(){var t=this._state.dbOpenError;return t&&"DatabaseClosed"===t.name},t.prototype.hasFailed=function(){return null!==this._state.dbOpenError},t.prototype.dynamicallyOpened=function(){return this._state.autoSchema},Object.defineProperty(t.prototype,"tables",{get:function(){var t=this;return bk(this._allTables).map((function(e){return t._allTables[e]}))},enumerable:!1,configurable:!0}),t.prototype.transaction=function(){var t=sM.apply(this,arguments);return this._transaction.apply(this,t)},t.prototype._transaction=function(t,e,i){var n=this,s=GI.trans;s&&s.db===this&&-1===t.indexOf("!")||(s=null);var o,r,a=-1!==t.indexOf("?");t=t.replace("!","").replace("?","");try{if(r=e.map((function(t){var e=t instanceof n.Table?t.name:t;if("string"!=typeof e)throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");return e})),"r"==t||t===SB)o=SB;else{if("rw"!=t&&t!=PB)throw new mI.InvalidArgument("Invalid transaction mode: "+t);o=PB}if(s){if(s.mode===SB&&o===PB){if(!a)throw new mI.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");s=null}s&&r.forEach((function(t){if(s&&-1===s.storeNames.indexOf(t)){if(!a)throw new mI.SubTransaction("Table "+t+" not included in parent transaction.");s=null}})),a&&s&&!s.active&&(s=null)}}catch(l){return s?s._promise(null,(function(t,e){e(l)})):CB(l)}var h=oM.bind(null,this,o,r,s,i);return s?s._promise(o,h,"lock"):GI.trans?wB(GI.transless,(function(){return n._whenReady(h)})):this._whenReady(h)},t.prototype.table=function(t){if(!Bk(this._allTables,t))throw new mI.InvalidTable("Table ".concat(t," does not exist"));return this._allTables[t]},t}(),CM="undefined"!=typeof Symbol&&"observable"in Symbol?Symbol.observable:"@@observable",kM=function(){function t(t){this._subscribe=t}return t.prototype.subscribe=function(t,e,i){return this._subscribe(t&&"function"!=typeof t?t:{next:t,error:e,complete:i})},t.prototype[CM]=function(){return this},t}();try{bM={indexedDB:wk.indexedDB||wk.mozIndexedDB||wk.webkitIndexedDB||wk.msIndexedDB,IDBKeyRange:wk.IDBKeyRange||wk.webkitIDBKeyRange}}catch(Cn){bM={indexedDB:null,IDBKeyRange:null}}var IM=EM;function BM(t){var e=MM;try{MM=!0,pD.storagemutated.fire(t),tM(t,!0)}finally{MM=e}}Dk(IM,yk(yk({},gI),{delete:function(t){return new IM(t,{addons:[]}).delete()},exists:function(t){return new IM(t,{addons:[]}).open().then((function(t){return t.close(),!0})).catch("NoSuchDatabaseError",(function(){return!1}))},getDatabaseNames:function(t){try{return function(t){var e=t.indexedDB,i=t.IDBKeyRange;return RD(e)?Promise.resolve(e.databases()).then((function(t){return t.map((function(t){return t.name})).filter((function(t){return t!==LB}))})):QD(e,i).toCollection().primaryKeys()}(IM.dependencies).then(t)}catch(e){return CB(new mI.MissingAPI)}},defineClass:function(){return function(t){Ck(this,t)}},ignoreTransaction:function(t){return GI.trans?wB(GI.transless,t):t()},vip:OD,async:function(t){return function(){try{var e=nM(t.apply(this,arguments));return e&&"function"==typeof e.then?e:KI.resolve(e)}catch(i){return CB(i)}}},spawn:function(t,e,i){try{var n=nM(t.apply(i,e||[]));return n&&"function"==typeof n.then?n:KI.resolve(n)}catch(s){return CB(s)}},currentTransaction:{get:function(){return GI.trans||null}},waitFor:function(t,e){var i=KI.resolve("function"==typeof t?IM.ignoreTransaction(t):t).timeout(e||6e4);return GI.trans?GI.trans.waitFor(i):i},Promise:KI,debug:{get:function(){return II},set:function(t){BI(t)}},derive:Lk,extend:Ck,props:Dk,override:zk,Events:HB,on:pD,liveQuery:function(t){var e,i=!1,n=new kM((function(n){var s,o=sI(t),r=!1,a={},h={},l={get closed(){return r},unsubscribe:function(){r||(r=!0,s&&s.abort(),d&&pD.storagemutated.unsubscribe(u))}};n.start&&n.start(l);var d=!1,c=function(){return EB(p)},u=function(t){qD(a,t),YD(h,a)&&c()},p=function(){if(!r&&bM.indexedDB){a={};var l={};s&&s.abort(),s=new AbortController;var p={subscr:l,signal:s.signal,requery:c,querier:t,trans:null},m=function(e){var i=iB();try{o&&mB();var n=pB(t,e);return o&&(n=n.finally(fB)),n}finally{i&&nB()}}(p);Promise.resolve(m).then((function(t){i=!0,e=t,r||p.signal.aborted||(a={},function(t){for(var e in t)if(Bk(t,e))return!1;return!0}(h=l)||d||(pD(cD,u),d=!0),EB((function(){return!r&&n.next&&n.next(t)})))}),(function(t){i=!1,["DatabaseClosedError","AbortError"].includes(null==t?void 0:t.name)||r||EB((function(){r||n.error&&n.error(t)}))}))}};return setTimeout(c,0),l}));return n.hasValue=function(){return i},n.getValue=function(){return e},n},extendObservabilitySet:qD,getByKeyPath:Uk,setByKeyPath:jk,delByKeyPath:function(t,e){"string"==typeof e?jk(t,e,void 0):"length"in e&&[].map.call(e,(function(e){jk(t,e,void 0)}))},shallowClone:Hk,deepClone:Yk,getObjectDiff:hM,cmp:RB,asap:Rk,minKey:BB,addons:[],connections:NB,errnames:uI,dependencies:bM,cache:XD,semVer:"4.0.8",version:"4.0.8".split(".").map((function(t){return parseInt(t)})).reduce((function(t,e,i){return t+e/Math.pow(10,2*i)}))})),IM.maxKey=AD(IM.dependencies.IDBKeyRange),"undefined"!=typeof dispatchEvent&&"undefined"!=typeof addEventListener&&(pD(cD,(function(t){var e;MM||(e=new CustomEvent(uD,{detail:t}),MM=!0,dispatchEvent(e),MM=!1)})),addEventListener(uD,(function(t){var e=t.detail;MM||BM(e)})));var DM,MM=!1,NM=function(){};let LM;"undefined"!=typeof BroadcastChannel&&((NM=function(){(DM=new BroadcastChannel(uD)).onmessage=function(t){return t.data&&BM(t.data)}})(),"function"==typeof DM.unref&&DM.unref(),pD(cD,(function(t){MM||DM.postMessage(t)}))),"undefined"!=typeof addEventListener&&(addEventListener("pagehide",(function(t){if(!EM.disableBfCache&&t.persisted){II&&console.debug("Dexie: handling persisted pagehide"),null==DM||DM.close();for(var e=0,i=NB;et.split(",").map(Number))),n=i[0][0];i=i.filter((t=>t[0]==n));const s=e.querySelector(`facsimile surface[n='${n}']`),o=Number(s.getAttribute("lrx")),r=Number(s.getAttribute("lry"));let a=i.map((t=>[(t=t.slice(1))[0],r-t[1]-t[3],t[0]+t[2],r-t[1]]));return{id:KM(),text:t.textContent,type:"highlight",position:{pageIndex:n-1,rects:a},translate:"",pageWidth:o}}if(d.Platform.isDesktop)var TM=g.default||g,zM=v.default||v;function QM(t,e){if(ZM&&ZM.createDecipheriv){const i=24,n=16,s=function(t,e,i){const n=Buffer.alloc(e+i);let s=Buffer.alloc(0),o=0;for(;o{var s=e||i[n];r.children.push(XM(t,s,i))})),r}const VM=new WE,_M="mindmapview";var $M=$u;class tN extends d.TextFileView{constructor(t,e){super(t),this.id=this.leaf.id,this.colors=[],this.timeOut=null,this.firstInit=!0,this.pdf_head=[],this.pdfFactory=null,this.pdfViewer=null,this.localPdfAnnotations=[],this.interval=null,this.annotate_path="",this._haveOpenPdf=!1,this._haveOpenEpub=!1,this._hasAddEpubEvent=!1,this._mode="rich",this.frontmatter="",this.period=!1,this.onlyPdf=!1,this.isShowOutline=!1,this.useMarkdown=null,this.firstExport=1,this.activeCode="",this.firstActive=0,this.iframe=null,this.win=null,this.richFirstSave=!1,this.forceMindMapMode=!1,this.dragDrop=null,this.book=null,this.isShowTable=!1,this._openIframeSrc="",this._extractHighlight=!1,this._useHandDraw=!1,this._saveTime=null,this.isTranslate=!1,this.translateView=null,this.translateContainer=null,this.richFlag=!1,this.haveNodeElement=!1,this.bodyStyle="",this.plugin=e,this._viewMark=KM(),this.setColors(),this.plugin.settings.strokeArray&&(this.colors=this.plugin.settings.strokeArray.split(","),this.setColors()),"md"==this.plugin.settings.useMarkdownSaveAnnotation&&(this.useMarkdown=!0),this.firstActive=this.plugin.settings.firstActive,this.appContainer=document.createElement("div"),this.appContainer.style.width="100%",this.appContainer.style.height="100%",this.appContainer.style.overflow="hidden",this.appContainer.classList.add("mm-app-container"),d.Platform.isMobileApp&&this.appContainer.classList.add("mm-mobile-app"),this.contentEl.appendChild(this.appContainer),this.pdfContainer=document.createElement("div"),this.pdfContainer.classList.add("mm-pdf-container"),this.mindmapContainer=document.createElement("div"),this.mindmapContainer.classList.add("mm-mindmap-container"),this.translateContainer=document.createElement("div"),this.translateContainer.classList.add("mm-translate-container"),this.appContainer.appendChild(this.mindmapContainer),this.appContainer.appendChild(this.pdfContainer),this.appContainer.appendChild(this.translateContainer);var i=this.createHistoryDom();this.appContainer.appendChild(i),this.plugin.settings.useHistory&&d.Platform.isDesktopApp&&SM&&SM.files.count().then((t=>{t>200&&new d.Notice(b("File History too big"))})),window.onlyPdf&&(this.onlyPdf=window.onlyPdf,window.onlyPdf=!1),this.win=this.appContainer.win||window,this.appContainer.onWindowMigrated&&this.appContainer.onWindowMigrated((t=>{this.mindmap&&this.list&&((this.mindmap||this.list).clear(),this.mindmap=null,this.list=null),this._haveOpenPdf=!1,this._haveOpenEpub=!1,this._closePDF(),this.removeMessageEvent(),setTimeout((()=>{var e=this.data;this.win=t,this.setViewData(e)}),200)})),this.setOnlyPdf(),this._judgeTime(),(this.plugin.settings.activeCode||this.plugin.settings.mobileActiveCode)&&(this.activeCode=this.plugin.settings.activeCode||this.plugin.settings.mobileActiveCode||"",this.checkActive()),this.dragDropTouch(),this.fileCache={frontmatter:{"mindmap-plugin":"basic"}};var n=this.appContainer.doc||document;this.bodyStyle=n.querySelector("body").getAttribute("style")}getViewType(){return _M}getIcon(){return"blocks"}getDisplayText(){var t;return(null==(t=this.file)?void 0:t.basename)||"mindmap"}setColors(){for(var t=0;t<100;t++)this.colors.push(Cl())}showNeedNotice(){this.period&&new d.Notice(b("The probation period has ended"))}mindMapChange(t){if(this.mindmap){this.plugin.statusBarItemEl&&(this.plugin.statusBarItemEl.innerText=b("Saving data")),this._saveTime&&clearTimeout(this._saveTime);var e=this.frontmatter,i=this.mindmap.getMarkdown();if("basic"==this.mindmap._mode||"table"==this.mindmap._mode||"markdown"==this.mindmap._mode)this.data=e+i;else{var n=this.mindmap.root.getData().text.trim();if(this.richFirstSave)this.data=e+`# ${n}\n\`\`\` json\n`+i+"\n```\n";else{var s=/^(\`\`\` json)$.+?^(\`\`\`)$.+?/ims;if(this.richFlag&&(s=/^(\`\`\`json)$.+?^(\`\`\`)$.+?/ims),this.data=this.data.replace(s,(()=>this.richFlag?"```json\n"+i+"\n```\n":"``` json\n"+i+"\n```\n")),this.haveNodeElement){const t=/### node element start([\s\S]*?)### node element end/;(o=this.mindmap.getTextElement())?this.data=this.data.replace(t,`### node element start\n\n${o}\n\n### node element end`):(this.data=this.data.replace(t,""),this.haveNodeElement=!1)}else{var o;(o=this.mindmap.getTextElement())&&(this.data=this.data+`\n\n### node element start\n\n${o}\n\n### node element end`,this.haveNodeElement=!0)}}}this.plugin.settings.useHistory&&d.Platform.isDesktopApp&&SM&&setTimeout((()=>{var t=(new Date).getTime();SM.files.where({fileName:this.mindmap.path||""}).first().then((e=>{e?SM.files.update(e.id,{content:this.data,time:t}).then((()=>{})).catch((t=>{console.log("update to indexedDB error:"+t)})):SM.files.add({fileName:this.mindmap.path,content:this.data,time:t}).then((()=>{})).catch((t=>{console.log("save to indexedDB error:"+t)}))}))}),10);try{this.requestSave(),this._saveTime=setTimeout((()=>{this.plugin.statusBarItemEl&&(this._saveTime=setTimeout((()=>{this.plugin.statusBarItemEl.innerText=b("Saved"),this._saveTime=setTimeout((()=>{this.plugin.statusBarItemEl.innerText=""}),1e3),t&&t(this.data)}),2e3))}),1500)}catch(Cn){console.log(Cn)}}}showChangelayoutMessage(){new d.Notice(b("Can not change layout"))}outlineChange(){if(this.list){if("basic"==this.list.mode){var t=this.list.getMarkdown(),e=this.frontmatter;this.data=e+t}else{var i=this.list.getData(),n=this.list.oldRichData,s=(h=[],function t(e){h.push(e),e.children.forEach((e=>{t(e)})),delete e.children}(a=i),delete a.children,h);n.mindData[0]=s,e=this.frontmatter;var o=/^(\`\`\` json)$.+?^(\`\`\`)$.+?/ims;if(this.richFlag&&(o=/^(\`\`\`json)$.+?^(\`\`\`)$.+?/ims),t=JSON.stringify(n),this.richFirstSave)this.data=e+"#\n``` json\n"+t+"\n```\n";else if(this.data=this.data.replace(o,(()=>this.richFlag?"```json\n"+t+"\n```\n":"``` json\n"+t+"\n```\n")),this.haveNodeElement){const t=/### node element start([\s\S]*?)### node element end/;(r=this.list.getTextElement())?this.data=this.data.replace(t,`### node element start\n\n${r}\n\n### node element end`):(this.data=this.data.replace(t,""),this.haveNodeElement=!1)}else{var r;(r=this.list.getTextElement())&&(this.data=this.data+`\n\n### node element start\n\n${r}\n\n### node element end`,this.haveNodeElement=!0)}}this.requestSave()}var a,h}getFrontMatter(){var t="";return this.fileCache.frontmatter&&(t=/---(.*?)---/gs.exec(this.data)[0]||""),t+"\n\n"}createHistoryDom(){var t=document.createElement("div");t.classList.add("mm-history-list");var e=document.createElement("div");e.classList.add("mm-history-header");var i=document.createElement("div");i.classList.add("mm-history-content"),t.appendChild(e),t.appendChild(i),this.historyDom=t,t.style.display="none";var n=document.createElement("span");n.classList.add("mm-history-close"),n.innerHTML=' ',n.onclick=()=>{t.style.display="none"};var s=document.createElement("span");s.classList.add("mm-history-text"),s.innerText=b("History"),e.appendChild(s),e.appendChild(n);var o=document.createElement("input");o.classList.add("mm-history-search"),o.setAttribute("placeholder",b("Search placeholder"));var r=document.createElement("button");r.classList.add("mm-history-clear-btn"),r.innerText=b("Clear all"),r.onclick=()=>{d.Platform.isDesktopApp&&SM&&(SM.files.clear(),setTimeout((()=>{this.refreshSearch("",a)}),50))};var a=document.createElement("div");return a.classList.add("mm-history-container"),i.appendChild(o),i.appendChild(r),i.appendChild(a),o.oninput=t=>{var e=o.value||"";this.refreshSearch(e,a)},o.onchange=t=>{var e=o.value||"";this.refreshSearch(e,a)},a.onclick=t=>{var e=t.target;if(e.closest(".mm-history-btn")){var i=e.closest(".mm-history-item").getAttribute("data-id");SM.files.get(parseInt(i)).then((t=>{t&&this.win.navigator.clipboard.writeText(t.content)}))}e.closest(".mm-history-clear")&&(i=e.closest(".mm-history-item").getAttribute("data-id"),SM.files.delete(parseInt(i)),this.refreshSearch(o.value,a))},t}showHistory(){d.Platform.isDesktopApp&&("none"==this.historyDom.style.display?this.historyDom.style.display="block":this.historyDom.style.display="none")}refreshSearch(t,e){var i=this;SM&&d.Platform.isDesktopApp&&(SM.files.filter((e=>e.fileName.indexOf(t)>-1)).toArray((t=>{t.length&&(t.sort(((t,e)=>e.time-t.time)),i.createFileDom(t,e))})),e.innerHTML="")}createFileDom(t,e){t.forEach((t=>{var i=document.createElement("div");i.classList.add("mm-history-item"),i.setAttribute("data-id",t.id),i.innerHTML=`\n
${t.fileName}
\n
${function(t){function e(t){return t<10?"0"+t:t}return`${t.getFullYear()}-${e(t.getMonth()+1)}-${e(t.getDate())} ${e(t.getHours())}:${e(t.getMinutes())}:${e(t.getSeconds())}`}(new Date(t.time))}
\n
\n \n \n
\n `,e.appendChild(i)}))}dragDropTouch(){d.Platform.isMobileApp&&!this.dragDrop&&(this.dragDrop=new MC(this.contentEl))}_activeSoft(t){1==t.plan?(new Date).getTime()>new Date(t.endDate).getTime()?(this.period=!0,new d.Notice(`${b("The probation period has ended")}`)):(this.period=!1,this.firstActive||(new d.Notice(`${b("Active success")}`),this.firstActive=1,this.plugin.settings.firstActive=1,this.plugin.saveData(this.plugin.settings))):2==t.plan||6==t.plan||10==t.plan?this.period=!1:this.period=!0}getData(){return this.mindmap?JSON.stringify(this.mindmap.getData()):""}exportToPng(){this.mindmap&&(this.plugin.statusBarItemEl&&(this.plugin.statusBarItemEl.innerText=b("Saving image")),this.mindmap.toDiv(),setTimeout((()=>{var t=!1,e=this.mindmap.el||this.mindmap.contentEL;e&&(e.style.background||e.style.backgroundColor||(t=!0,e.closest(".theme-dark")?e.style.background="#222":e.style.background="white")),zC.toPng(this.mindmap.el||this.mindmap.contentEL,{}).then((i=>{var n=new Image;n.src=i;var s=n.outerHTML,o=this.mindmap.path.substr(0,this.mindmap.path.length-2);try{new d.Notice(o+"html"),this.app.vault.adapter.write(o+"html",s),this.setViewData(this.data),this.plugin.statusBarItemEl&&(this.plugin.statusBarItemEl.innerText=b("Saved"),setTimeout((()=>{this.plugin.statusBarItemEl.innerText=""}),1e3))}catch(r){this.setViewData(this.data),new d.Notice(r)}t&&(e.style.background="")})).catch((i=>{this.setViewData(this.data),new d.Notice("image error"),console.log(i),t&&(e.style.background="")}))}),500))}exportToPdf(t){if(this.period)new d.Notice(`${b("The probation period has ended")}`);else if(this.mindmap){this.mindmap.toDiv(),this.mindmap.el||(this.mindmap.el=this.mindmap.contentEL);var e=this.mindmap.el.clientWidth,i=this.mindmap.el.clientHeight;if(this.mindmap.doc){let o=this.mindmap.doc||this.mindmap.el.doc||document;var n=o.querySelector("base");if(o.querySelector("html").style.setProperty("width",e+"px","important"),o.querySelector("html").style.setProperty("height",i+"px","important"),o.querySelector("body").style.setProperty("width",e+"px","important"),o.querySelector("body").style.setProperty("height",i+"px","important"),n.getAttribute("href")){o.querySelector(".app-container").setAttribute("style","display:flex!important"),o.querySelector(".workspace-tab-header-container").style.display="none",o.querySelector(".titlebar")&&o.querySelector(".titlebar").setAttribute("style","display:none!important"),o.querySelector(".view-header").style.display="none",o.querySelector(".workspace-leaf-content .view-content").style.padding="0",o.querySelector(".workspace-leaf-content .view-content").style.overflow="visible",o.querySelector(".mm-app-container").style.overflow="visible",o.querySelector(".mm-app-container").style.position="none",o.querySelector(".mm-app-container").style.width=e+"px",o.querySelector(".mm-app-container").style.height=i+"px",o.querySelector(".cm-mindmap").style.width=e+"px",o.querySelector(".cm-mindmap").style.height=i+"px",o.querySelector(".cm-mindmap").style.overflow="visible",o.querySelector(".cm-mindmap-navigator")&&(o.querySelector(".cm-mindmap-navigator").style.display="none"),o.querySelector(".cm-float-side")&&(o.querySelector(".cm-float-side").style.display="none"),o.querySelector(".cm-float-settings")&&(o.querySelector(".cm-float-settings").style.display="none");var s=this.getDpi()[0]||96;setTimeout((()=>{if(TM){var n,r=TM.remote,a=r.webContents.getFocusedWebContents(),h=r.dialog;n=t?{marginsType:2,printBackground:!0,pageSize:{width:25400*(Math.ceil(e/s)+1),height:25400*(Math.ceil(i/s)+2)},pageRanges:{from:0,to:0}}:{printBackground:!0,pageSize:{width:Math.ceil(e/s)+1,height:Math.ceil(i/s)+2},margins:{top:0,bottom:0,left:0,right:0},pageRanges:"1"},a.printToPDF(n).then((t=>{h.showSaveDialog({filters:[{name:"pdf",extensions:["pdf"]}]}).then((e=>{o.querySelector(".titlebar")&&o.querySelector(".titlebar").setAttribute("style",""),o.querySelector("html").style.setProperty("width","100%"),o.querySelector("html").style.setProperty("height","100%"),o.querySelector("body").style.setProperty("width","100%"),o.querySelector("body").style.setProperty("height","100%"),e.canceled||(zM.writeFileSync(e.filePath,t),new d.Notice(b("PDF save success")))}))})).catch((t=>{console.log(t),o.querySelector(".titlebar")&&o.querySelector(".titlebar").setAttribute("style",""),o.querySelector("html").style.setProperty("width","100%"),o.querySelector("html").style.setProperty("height","100%"),o.querySelector("body").style.setProperty("width","100%"),o.querySelector("body").style.setProperty("height","100%")}))}}),1e3)}else new d.Notice(b("Please do this in a separate window"))}}}exportToPdf1(t){if(this.period)new d.Notice(`${b("The probation period has ended")}`);else{if("table"==this.mindmap._mode){this.mindmap.containerEL.scrollLeft,this.mindmap.containerEL.scrollTop;var e={x:this.mindmap.tableDom.style.left,y:this.mindmap.tableDom.style.top},i=this.mindmap.tableDom.clientWidth+200,n=this.mindmap.tableDom.clientHeight+200;this.mindmap.tableDom.style.left="100px",this.mindmap.tableDom.style.top="100px"}else{var s=[];this.mindmap.traverseDF((t=>{t.isShow()&&s.push(t)})),this.mindmap.freeNodes.forEach((t=>{this.mindmap.traverseDF((t=>{t.isShow()&&s.push(t)}),t)})),this.mindmap.induces.forEach((t=>{this.mindmap.traverseDF((t=>{t.isShow()&&s.push(t)}),t.root)})),this.mindmap.relateLinks.forEach((t=>{t.textNode&&t.textNode.isShow()&&s.push(t.textNode)})),this.mindmap.containerEL.scrollLeft,this.mindmap.containerEL.scrollTop;var o=this.mindmap.getBoundingRect(s),r=this.mindmap.root.getPosition();(e={})[this.mindmap.root.getId()]=r,this.mindmap.freeNodes.forEach((t=>{e[t.getId()]=t.getPosition()}));var a=0,h=0;o.x>100&&(a=o.x-100),o.y>100&&(h=o.y-100),this.mindmap.root.setPosition(r.x-a,r.y-h),this.mindmap.freeNodes.forEach((t=>{var e=t.getPosition();t.setPosition(e.x-a,e.y-h),t.layout.refresh()})),this.mindmap.refresh(),this.mindmap.updateAssist(),this.mindmap.refresh(),this.mindmap.updateRelateLink(),i=o.width+200,n=o.height+200}if(this.mindmap.contentEL.style.width=i+"px",this.mindmap.contentEL.style.height=n+"px",this.mindmap.containerEL.scrollLeft=0,this.mindmap.containerEL.scrollTop=0,this.mindmap.doc){let e=this.mindmap.doc;var l=e.querySelector("base");if(e.querySelector("html").style.setProperty("width",i+"px","important"),e.querySelector("html").style.setProperty("height",n+"px","important"),e.querySelector("body").style.setProperty("width",i+"px","important"),e.querySelector("body").style.setProperty("height",n+"px","important"),l.getAttribute("href")){e.querySelector(".app-container").setAttribute("style","display:flex!important"),e.querySelector(".workspace-tab-header-container").style.display="none",e.querySelector(".titlebar")&&e.querySelector(".titlebar").setAttribute("style","display:none!important"),e.querySelector(".view-header").style.display="none",e.querySelector(".workspace-leaf-content .view-content").style.padding="0",e.querySelector(".workspace-leaf-content .view-content").style.overflow="visible",e.querySelector(".cm-mindmap-container").style.overflow="visible",e.querySelector(".cm-mindmap-container").style.position="none",e.querySelector(".cm-mindmap-container").style.width=i+"px",e.querySelector(".cm-mindmap-container").style.height=n+"px",e.querySelector(".mm-mindmap").style.width=i+"px",e.querySelector(".mm-mindmap").style.height=n+"px",e.querySelector(".mm-mindmap").style.overflow="visible",e.querySelector(".cm-mindmap-navigator")&&(e.querySelector(".cm-mindmap-navigator").style.display="none"),e.querySelector(".cm-float-side")&&(e.querySelector(".cm-float-side").style.display="none"),e.querySelector(".cm-float-settings")&&(e.querySelector(".cm-float-settings").style.display="none");var c=this.getDpi()[0]||96;setTimeout((()=>{if(TM){var s,o=TM.remote,r=o.webContents.getFocusedWebContents(),a=o.dialog;s=t?{marginsType:2,printBackground:!0,pageSize:{width:25400*(Math.ceil(i/c)+1),height:25400*(Math.ceil(n/c)+2)},pageRanges:{from:0,to:0}}:{printBackground:!0,pageSize:{width:Math.ceil(i/c)+1,height:Math.ceil(n/c)+2},margins:{top:0,bottom:0,left:0,right:0},pageRanges:"1"},r.printToPDF(s).then((t=>{a.showSaveDialog({filters:[{name:"pdf",extensions:["pdf"]}]}).then((i=>{e.querySelector(".titlebar")&&e.querySelector(".titlebar").setAttribute("style",""),e.querySelector("html").style.setProperty("width","100%"),e.querySelector("html").style.setProperty("height","100%"),e.querySelector("body").style.setProperty("width","100%"),e.querySelector("body").style.setProperty("height","100%"),i.canceled||(zM.writeFileSync(i.filePath,t),new d.Notice(b("PDF save success")))}))})).catch((t=>{e.querySelector(".titlebar")&&e.querySelector(".titlebar").setAttribute("style",""),e.querySelector("html").style.setProperty("width","100%"),e.querySelector("html").style.setProperty("height","100%"),e.querySelector("body").style.setProperty("width","100%"),e.querySelector("body").style.setProperty("height","100%")}))}}),1e3)}else new d.Notice(b("Please do this in a separate window"))}}}getDpi(){var t=new Array;if(null!=window.screen.deviceXDPI)t[0]=window.screen.deviceXDPI,t[1]=window.screen.deviceYDPI;else{var e=document.createElement("DIV");e.style.cssText="width:1in;height:1in;position:absolute;left:0px;top:0px;z-index:99;visibility:hidden",document.body.appendChild(e),t[0]=parseInt(e.offsetWidth),t[1]=parseInt(e.offsetHeight),e.parentNode.removeChild(e)}return t}restoreMindmap(t,e,i){var n=this.plugin.settings.canvasSize;if(this.mindmap.contentEL.style.width=n+"px",this.mindmap.contentEL.style.height=n+"px",this.mindmap.containerEL.scrollTop=i,this.mindmap.containerEL.scrollLeft=e,"table"==this.mindmap._mode)this.mindmap.tableDom.style.left=t.x+"px",this.mindmap.tableDom.style.top=t.y+"px",this.mindmap.center();else{var s=this.mindmap.root.getId();this.mindmap.root.setPosition(t[s].x,t[s].y),this.mindmap.freeNodes.forEach((e=>{var i=e.getId();e.setPosition(t[i].x,t[i].y)})),this.mindmap.refresh(),this.mindmap.updateAssist(),this.mindmap.refresh(),this.mindmap.updateRelateLink()}}checkActive(){var t=this.activeCode.trim();if(d.Platform.isMobileApp){if(this.plugin.settings.mobileActiveCode)try{var e=YM(this.plugin.settings.mobileActiveCode),i=JSON.parse(e.trim());i&&this._activeSoft(i)}catch(l){console.log(l),new d.Notice(`${b("Active error")}`),this.period=!0}}else if(t){var n="";if(ZM){try{var s="1qaz2wsxZX!@3edc4rfvCV#$@qwerasdf12qw3@1234009wse";if(ZM.createCipher){let e=ZM.createDecipher("aes-192-ctr",s),i=e.update(t,"hex","utf-8");i+=e.final("utf-8"),n=i;var o=JSON.parse(i.trim())}else{var r=QM(t,s);o=JSON.parse(r.trim()),n=r}o&&this._activeSoft(o)}catch(c){n="";try{var a="whoisyourdaddy!@qwerasdf";if(ZM.createDecipher){let e=ZM.createDecipher("aes-192-ctr",a),i=e.update(t,"hex","utf-8");i+=e.final("utf-8"),n=i,o=JSON.parse(i.trim())}else r=QM(t,a),o=JSON.parse(r.trim()),n=r;o&&this._activeSoft(o)}catch(u){n="";try{var h="1qaz2wsxZX!@3edc4rfvCV#$@qwerasdf12qw3@1234091wse";if(ZM.createDecipher){let e=ZM.createDecipher("aes-192-ctr",h),i=e.update(t,"hex","utf-8");i+=e.final("utf-8"),n=i,o=JSON.parse(i.trim())}else r=QM(t,h),o=JSON.parse(r.trim()),n=r;o&&this._activeSoft(o)}catch(l){n="",this.period=!0,new d.Notice(`${b("Active error")}`),console.log(l)}}}!this.plugin.settings.mobileActiveCode&&n&&(this.plugin.settings.mobileActiveCode=qM(n.trim()),this.plugin.saveData(this.plugin.settings))}}}setOnlyPdf(){this.onlyPdf?(this.mindmapContainer.style.display="none",this.translateContainer.style.display="none",this.pdfContainer.style.width="100%"):(this.mindmapContainer.style.display="",this.mindmapContainer.style.width="100%",this.pdfContainer.style.display="none",this.translateContainer.style.display="none")}_judgeTime(){this.plugin.settings.uid?(new Date).getTime()>216e7+parseInt(YM(this.plugin.settings.uid))&&(d.Platform.isDesktopApp&&!this.plugin.settings.activeCode&&new d.Notice(b("The probation period has ended")),d.Platform.isMobileApp&&!this.plugin.settings.mobileActiveCode&&new d.Notice(b("The probation period has ended")),this.period=!0):(this.plugin.settings.uid=qM((new Date).getTime()+""),this.plugin.saveData(this.plugin.settings))}_close(){this.pdf_path&&(this.pdf_path=null,this.pdf_real_path=""),this.localPdfAnnotations=[],this.pdfContainer.innerHTML=""}async onClose(){this.mindmap&&(this.mindmap.clear(),this.contentEl.innerHTML="",this.mindmap=null),d.Platform.isMobileApp&&this.dragDrop&&(this.dragDrop._removeEvent(),this.dragDrop=null)}clear(){}getViewData(){return this.data}setViewData(t){if(this.mindmap&&(this.mindmap.clear(),this.mindmap.useHandMode&&(this._useHandDraw=!1),this.mindmap=null),this.vueapp)try{this.vueapp.$destroy(),this.appContainer.contains(this.vueapp.$el)&&(this.appContainer.removeChild(this.vueapp.$el),this.vueapp.$el.innerHTML=""),this.vueapp=null}catch(Cn){console.log(Cn),this.vueapp=null}this.mindmapContainer.innerHTML="",this.appContainer.contains(this.mindmapContainer)||this.appContainer.appendChild(this.mindmapContainer),this.list&&(this.list.clear(),this.mindmapContainer.innerHTML="",this.list=null),this.translateView&&(this.translateView.clear(),this.translateContainer.innerHTML="",this.translateView=null),this.mindmapContainer.style.visibility="hidden",this.data=t,this.appContainer._view=this;var e={};if(this.plugin.settings&&(e=this.plugin.settings),this.firstInit)setTimeout((()=>{var t=this.leaf;if(t){var i=t.view;if(i.file){this.fileCache=this.app.metadataCache.getFileCache(i.file),this.frontmatter=this.getFrontMatter();var n=this.fileCache.frontmatter["translate-target"];if(n)return this.isTranslate=!0,this.onlyPdf=!1,this._haveOpenPdf=!1,this.showTranslate(n),this.translateContainer.style.display="block",this.pdfContainer.style.display="none",void(this.mindmapContainer.style.display="none");var s=this.fileCache.frontmatter["annotate-target"];if(s&&(s.toLowerCase().endsWith(".pdf")||s.toLowerCase().startsWith("http")))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setPdfFrame(s);if(s&&s.toLowerCase().endsWith(".epub"))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setEpub(s);if(this.onlyPdf=!1,this._haveOpenPdf=!1,this.pdfContainer.innerHTML="",this.iframe=null,this.pdf_path=null,this.pdf_real_path="",this.setOnlyPdf(),this.fileCache.frontmatter){if(this._mode=this.fileCache.frontmatter["mindmap-plugin"],this.fileCache.frontmatter["mindmap-theme"]){this.fileCache.frontmatter["mindmap-theme"];var o=$M[this.fileCache.frontmatter["mindmap-theme"]]}"outline"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!0,this.isShowTable=!1):"table"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!1,this.isShowTable=!0):(this.isShowOutline=!1,this.isShowTable=!1)}if("basic"==this._mode){if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(),this.firstInit=!1,void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));if(this.isShowTable&&!this.forceMindMapMode)return this.showTableMode(),this.firstInit=!1,void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));var r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],h=this.getMdText(this.data||"");(m=this.mdToData(h)).useHandMode=this._useHandDraw,m.isRoot=!0,m.useScale=!0;var l=this,c={data:function(){return{path:null==i?void 0:i.file.path,colors:l.colors.slice(),_mode:"basic",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:l.plugin.settings.useCustomShortcut,xmindImageTarget:l.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:l.plugin.settings.autoCenter,addCollapseNodeMark:l.plugin.settings.addCollapseNodeMark,mindData:m,layout:r,layoutDirect:a,settings:e}}};try{var u="svg"==this.plugin.settings.mindmapRenderType?tA:eA;this.vueapp=new Bn({mixins:[c],i18n:YA,render:t=>t(u)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}catch(Cn){console.log(Cn)}}else if("rich"==this._mode){h=this.getMdText(this.data),(m=JSON.parse(h)).useScale=!0,l=this;var p=this.getNodeElements();if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(p),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));c={data:function(){return{path:null==i?void 0:i.file.path,colors:l.colors.slice(),_mode:"rich",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:l.plugin.settings.useCustomShortcut,xmindImageTarget:l.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:l.plugin.settings.autoCenter,addCollapseNodeMark:l.plugin.settings.addCollapseNodeMark,mindData:m,settings:e,nodeElements:p}}},u="svg"==this.plugin.settings.mindmapRenderType?tA:eA,this.vueapp=new Bn({mixins:[c],i18n:YA,render:t=>t(u)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}else if("markdown"==this._mode){var m,f="";if(this.fileCache.frontmatter&&(this.fileCache.frontmatter.title||this.fileCache.frontmatter.name)&&(f=this.fileCache.frontmatter.title||this.fileCache.frontmatter.name),r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],this.fileCache.frontmatterPosition){var g=this.fileCache.frontmatterPosition.end;if(g)var v=g.offset,A=this.data.substr(v,this.data.length)}else A=this.data;if(!(m=Tv(A.trim(),f,this.colors.slice(),!0,this.plugin.settings.canvasSize||16e4)))return;r&&m.mindData[0]&&m.mindData[0][0]&&(m.mindData[0][0].layout={layoutName:r,direct:a||""}),m.useScale=!0,m.mode="markdown",l=this,c={data:function(){return{path:null==i?void 0:i.file.path,colors:l.colors.slice(),_mode:"markdown",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:l.plugin.settings.useCustomShortcut,xmindImageTarget:l.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:l.plugin.settings.autoCenter,addCollapseNodeMark:l.plugin.settings.addCollapseNodeMark,mindData:m,settings:e,nodeElements:p}}},u=eA,this.vueapp=new Bn({mixins:[c],i18n:YA,render:t=>t(u)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}}}setTimeout((()=>{if(this.mindmap){this.mindmap.updateAllAssist(),this.mindmap.refresh();var t=this.fileCache.frontmatter.read;t&&"true"==t&&setTimeout((()=>{this.mindmap.setReadMode(),OM&&new d.Notice(OM)}),8e3)}if(this.mindmapContainer.style.visibility="visible",window["show-mindmap-node"]){var e=window["show-mindmap-node"],i=this.mindmap.getNodeById(e);i&&setTimeout((()=>{this.mindmap.showNode(i),this.mindmap.clearSelectNode()}),200),window["show-mindmap-node"]=""}else this._checkSearch()}),50),this.firstInit=!1}),200);else{var i=this.leaf.view;this.fileCache=this.app.metadataCache.getFileCache(i.file),this.frontmatter=this.getFrontMatter();var n=this.fileCache.frontmatter["translate-target"];if(n)return this.isTranslate=!0,this.onlyPdf=!1,this._haveOpenPdf=!1,this.showTranslate(n),this.translateContainer.style.display="block",this.pdfContainer.style.display="none",void(this.mindmapContainer.style.display="none");var s=this.fileCache.frontmatter["annotate-target"];if(s&&(s.toLowerCase().endsWith(".pdf")||s.toLowerCase().startsWith("http")))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setPdfFrame(s);if(s&&s.toLowerCase().endsWith(".epub"))return this.onlyPdf=!0,this.setOnlyPdf(),void this.setEpub(s);if(this.onlyPdf=!1,this._haveOpenPdf=!1,this.pdfContainer.innerHTML="",this.iframe=null,this.pdf_path=null,this.pdf_real_path="",this.setOnlyPdf(),this.fileCache.frontmatter){if(this._mode=this.fileCache.frontmatter["mindmap-plugin"],this.fileCache.frontmatter["mindmap-theme"]){var o=$M[this.fileCache.frontmatter["mindmap-theme"]];this.fileCache.frontmatter["mindmap-theme"]}"outline"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!0,this.isShowTable=!1):"table"==this.fileCache.frontmatter["display-mode"]?(this.isShowOutline=!1,this.isShowTable=!0):(this.isShowOutline=!1,this.isShowTable=!1)}if("basic"==this._mode){if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));if(this.isShowTable&&!this.forceMindMapMode)return this.showTableMode(),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));var r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],h=this.getMdText(this.data),l=this.mdToData(h),c=this,u={data:function(){return{path:null==i?void 0:i.file.path,colors:c.colors.slice(),_mode:"basic",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:c.plugin.settings.useCustomShortcut,xmindImageTarget:c.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:c.plugin.settings.autoCenter,addCollapseNodeMark:c.plugin.settings.addCollapseNodeMark,mindData:l,layout:r,layoutDirect:a,settings:e}}},p="svg"==this.plugin.settings.mindmapRenderType?tA:eA;this.vueapp=new Bn({mixins:[u],i18n:YA,render:t=>t(p)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}else if("rich"==this._mode){h=this.getMdText(this.data),l=JSON.parse(h);var m=this.getNodeElements();if(this.isShowOutline&&!this.forceMindMapMode)return this.showOutline(m),void(this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle));c=this,u={data:function(){return{path:null==i?void 0:i.file.path,colors:c.colors.slice(),_mode:"rich",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:c.plugin.settings.useCustomShortcut,xmindImageTarget:c.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:c.plugin.settings.autoCenter,addCollapseNodeMark:c.plugin.settings.addCollapseNodeMark,mindData:l,layout:r,layoutDirect:a,settings:e,nodeElements:m}}},p="svg"==this.plugin.settings.mindmapRenderType?tA:eA,this.vueapp=new Bn({mixins:[u],i18n:YA,render:t=>t(p)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}else if("markdown"==this._mode){var f="";if(this.fileCache.frontmatter&&(this.fileCache.frontmatter.title||this.fileCache.frontmatter.name)&&(f=this.fileCache.frontmatter.title||this.fileCache.frontmatter.name),r=this.fileCache.frontmatter["mindmap-layout"],a=this.fileCache.frontmatter["mindmap-layout-direct"],this.fileCache.frontmatterPosition){var g=this.fileCache.frontmatterPosition.end;if(g)var v=g.offset,A=this.data.substr(v,this.data.length)}else A=this.data;if(!(l=Tv(A.trim(),f,this.colors.slice(),!0)))return;r&&l.mindData[0]&&l.mindData[0][0]&&(l.mindData[0][0].layout={layoutName:r,direct:a||""}),l.useScale=!0,l.mode="markdown",c=this,u={data:function(){return{path:null==i?void 0:i.file.path,colors:c.colors.slice(),_mode:"markdown",isMobile:d.Platform.isMobileApp,themeConfig:o,useCustomShortcut:c.plugin.settings.useCustomShortcut,xmindImageTarget:c.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:c.plugin.settings.autoCenter,addCollapseNodeMark:c.plugin.settings.addCollapseNodeMark,mindData:l,settings:e,nodeElements:m}}},p=eA,this.vueapp=new Bn({mixins:[u],i18n:YA,render:t=>t(p)}),this.vueapp.$mount(this.mindmapContainer),this.bodyStyle&&(this.appContainer.doc||document).querySelector("body").setAttribute("style",this.bodyStyle)}setTimeout((()=>{if(this.mindmap){this.mindmap.updateAllAssist(),this.mindmap.refresh();var t=this.fileCache.frontmatter.read;t&&"true"==t&&setTimeout((()=>{this.mindmap.setReadMode(),OM&&new d.Notice(OM)}),8e3)}if(this.mindmapContainer.style.visibility="visible",window["show-mindmap-node"]){var e=window["show-mindmap-node"],i=this.mindmap.getNodeById(e);i&&setTimeout((()=>{this.mindmap.showNode(i),i.select()}),200),window["show-mindmap-node"]=""}else this._checkSearch()}),100)}}_checkSearch(){var t;const e=this.plugin.app.workspace.getLeavesOfType("search");if(0!=e.length&&this.plugin.settings.autoOpenSearch){var i=null==(t=e[0].view.searchQuery)?void 0:t.query;i&&this.mindmap&&(this.mindmap._searchDom&&this.mindmap.closeSearch(),this.mindmap.createSearchDom(i))}}basicToRich(){if("basic"==this._mode||"markdown"==this._mode){var t=this.file,e=t.path;if(e=t.path.substring(0,e.length-3),e+="-rich.md",this.mindmap){var i=JSON.parse(JSON.stringify(this.mindmap.getData()));i.mindData.forEach(((t,e)=>{0==e&&t.forEach(((t,e)=>{0==e&&(t.layout&&t.layout.layoutName||(t.layout={layoutName:"mindmap2",direct:"mindmap"}),t.main=!0),t.children&&delete t.children}))}));var n=this.mindmap.root.getData().text.trim()||"";if("basic"==this._mode)var s=this.frontmatter.replace("basic","rich");else s=xl;var o=s+`# ${n}\n\`\`\` json\n`+JSON.stringify(i)+"\n```\n";this.app.vault.adapter.write(e,o)}}}richToBasic(){if("rich"==this._mode){var t=this.file,e=t.path;if(e=t.path.substring(0,e.length-3),e+="-basic.md",this.mindmap){var i=this.mindmap.getMarkdown(this.mindmap.root,!0),n=this.frontmatter.replace("rich","basic");this.app.vault.adapter.write(e,n+"\n"+i)}}}getPDFxml(t,e){var i=this;let n=new FormData;var s=new window.Uint8Array(t);const o=new window.Blob([s],{type:"application/pdf"});n.append("consolidateHeader","1"),n.append("segmentSentences","1"),n.append("teiCoordinates","s"),n.append("teiCoordinates","formula"),n.append("teiCoordinates","head"),n.append("input",o),new d.Notice(b("Parsing PDF structure"));var r=new XMLHttpRequest;r.open("post","https://kermitt2-grobid.hf.space/api/processFulltextDocument",!0),r.send(n),r.onreadystatechange=function(){if(4==r.readyState)if(200==r.status){var t=r.responseText;i.parsePDFXml(t,e)}else new d.Notice(b("Parsing PDF structure error"))},r.onerror=function(t){new d.Notice(b("Parsing PDF structure error"))}}async parsePDFXml(t,e){var i=function(t){var e=(new DOMParser).parseFromString(t,"text/xml"),i=[];e.querySelector("abstract div")&&PM(e.querySelector("abstract div"),i,e);var n=e.querySelectorAll("text>body>div");if(n.length)for(let s of n){const t=s.querySelector("head");t&&i.push(FM(t,e)),PM(s,i,e)}return i}(t),n=e.substr(0,e.length-3)+"translation",s={pdf:e,translations:i};this.transLations(i,s,n),this.app.vault.adapter.write(n,JSON.stringify(s))}async transLations(t,e,i){var n=this,s=t.slice(),o=e.pdf,r=s.shift(),a=t.length,h=s.length,l=this.plugin.settings.translateAppId,c=this.plugin.settings.translateKey;new d.Notice(`${b("Translate spend time")}`+s.length),function r(u){var p=u.text,m=(new Date).getTime(),f=function(t){function e(t,e){return t<>>32-e}function i(t,e){var i,n,s,o,r;return s=2147483648&t,o=2147483648&e,r=(1073741823&t)+(1073741823&e),(i=1073741824&t)&(n=1073741824&e)?2147483648^r^s^o:i|n?1073741824&r?3221225472^r^s^o:1073741824^r^s^o:r^s^o}function n(t,n,s,o,r,a,h){return t=i(t,i(i((l=n)&s|~l&o,r),h)),i(e(t,a),n);var l}function s(t,n,s,o,r,a,h){return t=i(t,i(i(n&(l=o)|s&~l,r),h)),i(e(t,a),n);var l}function o(t,n,s,o,r,a,h){return t=i(t,i(i(n^s^o,r),h)),i(e(t,a),n)}function r(t,n,s,o,r,a,h){return t=i(t,i(i(s^(n|~o),r),h)),i(e(t,a),n)}function a(t){var e,i="",n="";for(e=0;e<=3;e++)i+=(n="0"+(t>>>8*e&255).toString(16)).substr(n.length-2,2);return i}var h,l,d,c,u,p,m,f,g,v=Array();for(v=function(t){for(var e,i=t.length,n=i+8,s=16*((n-n%64)/64+1),o=Array(s-1),r=0,a=0;a>>29,o}(t=function(t){t=t.replace(/\r\n/g,"\n");for(var e="",i=0;i127&&n<2048?(e+=String.fromCharCode(n>>6|192),e+=String.fromCharCode(63&n|128)):(e+=String.fromCharCode(n>>12|224),e+=String.fromCharCode(n>>6&63|128),e+=String.fromCharCode(63&n|128))}return e}(t)),p=1732584193,m=4023233417,f=2562383102,g=271733878,h=0;h{var a=s.shift();a?(h=s.length,r(a)):(e.translations=t,n.app.vault.adapter.write(i,JSON.stringify(e)),n.openFullText(o),new d.Notice(b("Translate success")),n.plugin.statusBarItemEl&&(n.plugin.statusBarItemEl.innerText=""))}),300)},error:function(){u.translate="fail",setTimeout((()=>{var t=s.shift();t?(r(t),n.plugin.statusBarItemEl&&(n.plugin.statusBarItemEl.innerText=b("Completed translation")+`${a-h}/${a}`)):(n.app.vault.adapter.write(i,JSON.stringify(e)),n.openFullText(o),new d.Notice(b("Translate success")),n.plugin.statusBarItemEl&&(n.plugin.statusBarItemEl.innerText=""))}),300)}})}(r)}async openFullText(t){if(!t.startsWith("file")&&!t.startsWith("http")){var e=await this.getTranslateMd(t);if(e)await this.app.workspace.openLinkText(e.path,"","split");else{var i=`---\nid: ${KM()}\ntranslate-target: ${t}\n---\n`,n=t.replace(/.pdf/gi,`-translate-${(new Date).getTime()}.md`);await this.app.vault.adapter.write(n,i),setTimeout((()=>{this.app.workspace.openLinkText(n,"","split")}),200)}}}async showTranslate(t){var e=t.substr(0,t.length-3)+"translation";if(await this.app.vault.adapter.exists(e)){var i=await this.app.vault.adapter.read(e);if(i.trim()){var n=JSON.parse(i.trim());await this.renderTranslate(n,t)}}else new d.Notice(b("Not have translations of pdf full text"))}async renderTranslate(t,e){this.translateView=new vk(t.translations),this.translateContainer.appendChild(this.translateView.dom),this.translateView.view=this,this.translateView.pdfPath=e}async setPdfFrame(t,e){var i=this;if(this.period)new d.Notice(b("The probation period has ended"));else{var n=this.leaf.view;if(this.plugin.settings.isDecodeURl)var s=decodeURI(t);else s=t;if(s.startsWith("file:/")){if(d.Platform.isMobileApp)return void new d.Notice(b("Mobile app not support"));if(!s.endsWith(".pdf"))return void new d.Notice(b("Not support file type"));if(zM){var o=s.replace("file://","");if(!zM.existsSync(o))return void new d.Notice(b("File Is Not Exist")+":"+s);var r={},a=WM.basename(s);r.path=s,r.basename=a,r.absolutePath=o;var h=s;if(this.pdf_real_path&&this.pdf_real_path==h)return}}else if(s.startsWith("http:/")||t.startsWith("https:/")){if((r={}).path=s,r.basename=s,r.absolutePath=s,h=s,this.pdf_real_path&&this.pdf_real_path==h)return}else{if(!(r=this.app.metadataCache.getFirstLinkpathDest(s,null==n?void 0:n.file.path))){var l=d.normalizePath(this.app.vault.adapter.basePath)+"/"+s;return void new d.Notice(b("File Is Not Exist")+":"+s)}if(h=this.app.vault.getResourcePath(r),this.pdf_real_path&&this.pdf_real_path==h)return}this.pdf_real_path=h,this.pdf_path=r;try{if(l=d.normalizePath(r.path),this.useMarkdown||r.path.startsWith("file:/")||r.path.startsWith("http"))var c=this.getAnnotations(this.data);else{var u=l.substr(0,l.length-3)+"annos";if(this.annotate_path=u,await this.app.vault.adapter.exists(u)){var p=await this.app.vault.adapter.read(u);p.trim()&&(c=JSON.parse(p.trim()))}else this.localPdfAnnotations=[],this.app.vault.adapter.write(u,JSON.stringify(this.localPdfAnnotations)),c=[]}}catch(Cn){return void this.leaf.detach()}if(c.forEach((t=>{if(t&&t.type&&("rect"==t.type||"image"==t.type||"ink"==t.type))try{var e=JSON.parse(t.text),n=e.path;if(o=this.app.metadataCache.getFirstLinkpathDest(n,this.file.path))var s=i.app.vault.getResourcePath(o);t.text=JSON.stringify(e),e.imageAbsolutePath=s||""}catch(r){var o;(o=this.app.metadataCache.getFirstLinkpathDest(t.path,this.file.path))&&(s=i.app.vault.getResourcePath(o),t.imageAbsolutePath=s||"")}})),r.path.startsWith("file:/"))var m=zM.readFileSync(r.absolutePath);else if(r.path.startsWith("http")){var f=this.plugin.settings.cacheFolder,g=!1,v=d.normalizePath(r.path),A=v.lastIndexOf("/"),y=v.substr(A);if(f&&await this.app.vault.adapter.exists(f+y)&&(g=!0,m=await this.app.vault.adapter.readBinary(f+y)),!g){var x=await d.requestUrl({url:r.path});if(!x||200!=x.status||!x.arrayBuffer)return void new d.Notice(b("File Is Not Exist")+":"+r.path);m=x.arrayBuffer,f&&this.app.vault.adapter.writeBinary(f+y,m)}}else m=await this.app.vault.adapter.readBinary(l);if(this._haveOpenEpub&&(this._haveOpenPdf=!1,this._haveOpenEpub=!1,this.iframe&&this.pdfContainer.removeChild(this.iframe)),this._haveOpenPdf)E=r.path.startsWith("file://")||r.path.startsWith("http")?r.path:d.normalizePath(r.path),this.iframe.contentWindow.postMessage({annotations:c||[],data:m,type:"openPDF",pdfName:E,id:e||window.waitPdfId||"",basename:r.basename,_viewMark:this._viewMark,isMobile:d.Platform.isMobileApp,imageFolder:i.plugin.settings.imageFolder||"",mdPath:i.file.path,language:d.moment.locale(),top:k,bottom:I,mdId:B||"",useTranslate:this.plugin.settings.useTranslate,translateAppId:this.plugin.settings.translateAppId,translateKey:this.plugin.settings.translateKey,translateType:this.plugin.settings.translateType,translateTo:this.plugin.settings.translateTo},"*"),Object.assign(window,{waitPdfId:""});else{this._haveOpenPdf=!0,this.iframe=document.createElement("iframe"),this.pdfContainer.appendChild(this.iframe),this.iframe.style.width="100%",this.iframe.style.height="100%",this.iframe.style.borderWidth="0",this.plugin.settings.viewerTheme;var w=this.app.vault.adapter.getResourcePath(".obsidian/pdfjs/web/viewer.html");if(w=decodeURIComponent(w),d.Platform.isDesktopApp?this.iframe.src=w:d.Platform.isAndroidApp?this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=w:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("andriod/pdfjs/web/viewer.html")):d.Platform.isIosApp&&(this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=w:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("ios/pdfjs/web/viewer.html"))),r.path.startsWith("file://"))var E=r.path;else E=r.path.startsWith("http")?r.path:d.normalizePath(r.path);var C=i.plugin.settings.imageFolder||"";this.fileCache&&this.fileCache.frontmatter&&this.fileCache.frontmatter["annotate-image-target"]&&(C=this.fileCache.frontmatter["annotate-image-target"]);var k=0;this.plugin.settings.annotateTop&&this.plugin.settings.annotateTop&&(k=this.plugin.settings.annotateTop);var I=0;if(this.plugin.settings.annotateBottom&&this.plugin.settings.annotateBottom&&(I=this.plugin.settings.annotateBottom),this.fileCache&&this.fileCache.frontmatter&&this.fileCache.frontmatter.id)var B=this.fileCache.frontmatter.id;this.iframe.onload=function(){i.iframe.contentWindow.postMessage({annotations:c||[],data:m,type:"openPDF",pdfName:E,id:e||window.waitPdfId||"",basename:r.basename,_viewMark:i._viewMark,isMobile:d.Platform.isMobileApp,imageFolder:C,mdPath:i.file.path,language:d.moment.locale(),top:k,bottom:I,mdId:B||"",useTranslate:i.plugin.settings.useTranslate,translateAppId:i.plugin.settings.translateAppId,translateKey:i.plugin.settings.translateKey,translateType:i.plugin.settings.translateType,translateTo:i.plugin.settings.translateTo},"*"),Object.assign(window,{waitPdfId:""})},this.pdfContainer.style.display="block"}this.addMessageEvent()}}async setEpub(t,e){var i=this.leaf.view,n=this;if(t){var s={};try{if(t.startsWith("file://")){if(d.Platform.isMobileApp)return void new d.Notice(b("Mobile app not support"));if(d.Platform.isDesktopApp){var o=t.replace("file://","");if(!zM.existsSync(o))return void new d.Notice(b("File Is Not Exist")+":"+t);var r=WM.basename(t);s.path=t,s.basename=r,s.absolutePath=o;var a=t;if(this.pdf_real_path&&this.pdf_real_path==a)return;this.pdf_real_path=a,this.pdf_path=s}}else{if(!(s=this.app.metadataCache.getFirstLinkpathDest(t,null==i?void 0:i.file.path))){var h=d.normalizePath(this.app.vault.adapter.basePath)+"/"+t;return void new d.Notice(b("File Is Not Exist")+":"+t)}if(a=this.app.vault.getResourcePath(s),this.pdf_real_path&&this.pdf_real_path==a)return}if(this.pdf_real_path=a,this.pdf_path=s,h=d.normalizePath(s.path),s.path.startsWith("file:/"))var l=zM.readFileSync(s.absolutePath);else l=await this.app.vault.adapter.readBinary(h);this._haveOpenEpub=!0,this._haveOpenPdf=!0,this.iframe&&this.pdfContainer.removeChild(this.iframe),this.addEpubMessageEvent(),this.iframe=document.createElement("iframe"),this.pdfContainer.appendChild(this.iframe),this.iframe.style.width="100%",this.iframe.style.height="100%",this.iframe.style.borderWidth="0";var c=this.app.vault.adapter.getResourcePath(".obsidian/pdfjs/epub/viewer.html");c=decodeURIComponent(c),d.Platform.isDesktopApp?this.iframe.src=c:d.Platform.isAndroidApp?this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=c:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("andriod/pdfjs/epub/viewer.html")):d.Platform.isIosApp&&(this.plugin.settings.onlyUseObsidianFolder?this.iframe.src=c:this.iframe.src=decodeURIComponent(this.app.vault.adapter.getResourcePath("ios/pdfjs/epub/viewer.html")));var u=this.getAnnotations(this.data);this.iframe.onload=function(){setTimeout((()=>{n.iframe.contentWindow.postMessage({annotations:u||[],data:l,type:"openEpub",pdfName:s.path,id:e||window.waitPdfId||"",basename:s.basename,_viewMark:n._viewMark,isMobile:d.Platform.isMobileApp,language:d.moment.locale()},"*"),Object.assign(window,{waitPdfId:""})}),800)},this.pdfContainer.style.display="block"}catch(p){new d.Notice("Open epub file error")}}}setPdfjsVersion(t){if(this.iframe){var e="useOldVersion";t&&(e="useNewVersion"),this.iframe.contentWindow.postMessage({type:e},"*")}}addEpubMessageEvent(){var t=this;this.removeMessageEvent(),this.messageEvent=function(e){if(e.data._viewMark==t._viewMark)switch(e.data.type){case"saveAnnotations":var i=e.data.annotations;t.saveEpubAnnotations(i);break;case"showMindmapAnnotate":var n=t.app.workspace.getLeavesOfType(_M),s=e.data.id;n.length&&n.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((e=>{if(e){if(e.getData().text.indexOf(s)>-1){if(!e.isShow())for(var i=!0,n=e;n;)n.isExpand||n.expand(),n=n.parent||n.belongInduce&&n.belongInduce.node;return i&&t.view.mindmap.refresh(),void t.view.mindmap.showNode(e)}e.getAnnotateId()==s&&t.view.mindmap.showNode(e)}}))}));var o=e.data,r=e.data.annotateType;if(t.plugin.settings.openProtocol&&t.plugin.settings.protocol){if("epub-rect"==r){var a=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(o.id)}`;t.win.navigator.clipboard.writeText(`![[${o.path}]] [📌](${a})`)}else if("epub-highlight"==r){if(a=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(o.id)}`,t.plugin.settings.removeSpace)var h=(o.text||"").replace(/\s/g,"");else h=o.text||"";t.win.navigator.clipboard.writeText(`${h} [📌](${a})`)}}else t.win.navigator.clipboard.writeText(JSON.stringify(o))}}.bind(this),this.win.addEventListener("message",this.messageEvent,!1)}async _exportHighlights(){var t=[];if(this.useMarkdown||this.pdf_path.path.startsWith("file:/")||this.pdf_path.path.startsWith("http"))t=this.getAnnotations(this.data);else{var e=this.annotate_path;if(await this.app.vault.adapter.exists(e)){var i=await this.app.vault.adapter.read(e);i.trim()&&(t=JSON.parse(i.trim()))}}var n=this.plugin.settings.highlightFormat,s=this;if(n&&t&&t.length){var o=[],r="";t.forEach(((t,e)=>{var i;try{var a=JSON.parse(t.text)}catch(v){a=t}0==e&&(r=t.pdfName);var h="",l="",d=new RegExp("{{highlightText}}","ig");if("highlight"==t.type||"underline"==t.type||"strokout"==t.type){var c=n.replace(d,t.selectText||t.text);a.color&&a.color.r?h=`${a.color.r},${a.color.g},${a.color.b}`:a.color&&(h=null==(i=a.color)?void 0:i.trim().substring(4,a.color.length-1)),l=`obsidian://${s.plugin.settings.protocol}?pdf=${encodeURIComponent(a.pdfName)}&annotate=${encodeURIComponent(t.id)}`}else c=n.replace(d,"![["+a.path+"]]"),l=`obsidian://${s.plugin.settings.protocol}?pdf=${encodeURIComponent(a.pdfName)}&annotate=${encodeURIComponent(t.id)}`;var u=new RegExp("{{page}}","ig"),p=new RegExp("{{comment}}","ig"),m=new RegExp("{{id}}","ig"),f=new RegExp("{{color}}","ig"),g=new RegExp("{{link}}","ig");c=(c=(c=(c=(c=c.replace(u,(t.page||t.position.pageIndex)+1)).replace(p,a.contents||a.comments||"")).replace(m,t.id)).replace(f,h)).replace(g,l),o.push(c)}));var a="[["+r+"]]\n\n"+o.join("\n"),h=this.file.path;h=h.substring(0,h.length-3),h+="-exportHighlight.md",this.app.vault.adapter.write(h,a)}}async _ectractHighlightOfPdf(){var t=this;if(d.Platform.isDesktopApp){if(this._extractHighlight=!0,this._openIframeSrc=this.iframe.getAttribute("src"),this.iframe.src=this.app.vault.adapter.getResourcePath(".obsidian/pdfjs/pdfextract/extract.html"),this.pdf_path.path.startsWith("file:/"))var e=zM.readFileSync(this.pdf_path.absolutePath);else e=await this.app.vault.adapter.readBinary(this.pdf_path.path);setTimeout((()=>{t.iframe.contentWindow.postMessage({data:e,type:"openPDF",_viewMark:t._viewMark,language:d.moment.locale()},"*")}),800)}}addMessageEvent(){var t=this;this.removeMessageEvent(),this.messageEvent=async function(e){if(e.data._viewMark==t._viewMark)switch(e.data.type){case"translate":if(p=e.data.url){var i=await d.requestUrl({url:p});if(i&&200==i.status&&i.arrayBuffer)var n=String.fromCharCode.apply(null,new Uint8Array(i.arrayBuffer))}break;case"touchstart":new d.Notice("touchstart");break;case"showMindmapAnnotate":var s=t.app.workspace.getLeavesOfType(_M),o=e.data.id;s.length&&s.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((e=>{if(e){if(e.getData().text.indexOf(o)>-1){if(!e.isShow())for(var i=!0,n=e;n;)n.isExpand||n.expand(),n=n.parent||n.belongInduce&&n.belongInduce.node;return i&&t.view.mindmap.refresh(),void t.view.mindmap.showNode(e)}e.getAnnotateId()==o&&t.view.mindmap.showNode(e)}}))}));var r=e.data.data,a=e.data.annotateType,h=e.data.mdId;if(t.plugin.settings.openProtocol&&t.plugin.settings.protocol){var l=JSON.parse(r.text);if("rect"==a){var c=(z=l.path.replace(/\\/g,"/")).lastIndexOf("/"),u=z.substr(c+1);if(h)var p=`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`;else p=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(l.pdfName)}&annotate=${encodeURIComponent(r.id)}`;if(this.plugin.settings.annotateFormat){var m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig");return m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`![[${u||l.path}]]`)).replace(g,r.page+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m)}t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${p})`):t.win.navigator.clipboard.writeText(`![[${u||l.path}]] [📌](${p})`)}else{if(p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(l.pdfName)}&annotate=${encodeURIComponent(r.id)}`,T=t.plugin.settings.removeSpace)var y=(r.selectText||"").replace(/\s/g,"");else y=r.selectText||"";if(this.plugin.settings.annotateFormat)return m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${y}`)).replace(g,r.page+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m);t.plugin.settings.onlyCopyLink?(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`[📌](${p})`)):(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`${y} [📌](${p})`))}}else t.win.navigator.clipboard.writeText(JSON.stringify(r));break;case"createHighlight":case"updateHighlight":case"deleteAnnotate":var x=e.data.annotations,w=e.data.newAnnotate;t.saveAnnotations(x);break;case"create rect annotate":new d.Notice(b("Creating Rect Annotate"));break;case"cancel create rect annotate":new d.Notice(b("Cancel Create Rect Annotate"));break;case"delete mindmap annotate":s=t.app.workspace.getLeavesOfType(_M),o=e.data.id,s.length&&s.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((t=>{t&&t.getAnnotateId()==o&&t.deleteAnnotate()}))}));break;case"createRect":var E=e.data.isNew,C=e.data.imagePath,k=e.data.dataBuffer,I=(r=e.data.data,e.data.relateRect),B=e.data.imageOptions;x=e.data.annotations,h=e.data.mdId,t.app.vault.adapter.writeBinary(C,k).then((()=>{r.relateRect=I||[],r.pdfName=t.pdf_path.path,r.path=C;var e=r.path.replace(/\\/g,"/"),i=e.lastIndexOf("/"),n=e.substr(i+1);if(t.plugin.settings.openProtocol){if(h)var s=`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`;else s=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`;t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${s})`):t.win.navigator.clipboard.writeText(`![[${n||r.path}]] [📌](${s})`)}else t.win.navigator.clipboard.writeText(JSON.stringify({id:r.id,type:"rect",action:"create pdf annotate",path:C,width:B.width,height:B.height,page:r.page,text:JSON.stringify(r),pdfName:t.pdf_path.path}));var o=this.app.metadataCache.getFirstLinkpathDest(C,this.file.path);if(t.iframe.contentWindow.postMessage({type:"saveImagePath",_viewMark:t._viewMark,id:r.id,imagePath:t.app.vault.getResourcePath(o)},"*"),t.saveAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate){var a=t.app.workspace.getLeavesOfType(_M);if(a&&a.length){var l=a.filter((t=>t&&t.view&&t.view.mindmap));if(l&&l.length&&E){var d=l[0].view.mindmap,c=d.selectNode||d.root;if(s=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`,this.plugin.settings.annotateFormat){var u="",p=new RegExp("{{highlightText}}","ig"),m=new RegExp("{{page}}","ig"),f=new RegExp("{{id}}","ig"),g=new RegExp("{{link}}","ig");u=(u=(u=(u=this.plugin.settings.annotateFormat.replace(p,`![[${n||r.path}]]`)).replace(m,r.page+1)).replace(f,r.id)).replace(g,s)}d.execute("addChildNode",{parent:c,data:{text:u||`![[${n||r.path}]] [📌](${s})`,note:r.contents||""}}),d._hideMenu()}}}})).catch((t=>{new d.Notice(b("Save Image error,Please try again"))}));break;case"comment":x=e.data.annotations,t.saveAnnotations(x);break;case"exportAnnotatePDF":var D=e.data.pdfData;setTimeout((async()=>{var e=t.pdf_path.path,i=e.substr(0,e.length-4);i+="-annotate.pdf";var n=d.normalizePath(i);await t.app.vault.adapter.writeBinary(n,D),new d.Notice(`${b("Export annotate pdf success")}`)}),200);break;case"extractHighlight":x=e.data.annotations;var M=e.data.width,N=e.data.height,L=[];x.length&&x.forEach((t=>{var e=KM(),i={id:e,page:t.page-1,type:"highlight",selectText:t.markup,pdfName:this.pdf_path.path,text:{id:e,page:t.page-1,rect:t.rect,contents:t.content,author:"",color:{r:t.color[0],g:t.color[1],b:t.color[2]},opacity:1,quadPoints:null,selectText:t.markup,relateRect:null,pdfName:this.pdf_path.path}};t.quadPoints&&(i.text.relateRect=[],t.quadPoints.forEach((t=>{i.text.relateRect.push({x:t.x/M,y:(N-t.y-t.height)/M,width:t.width/M,height:t.height/M})}))),i.text=JSON.stringify(i.text),L.push(i)})),t.saveAnnotations(L),new d.Notice(b("extract highlight success")),this.plugin.mindmapFileModes[this.id||this.file.path]="markdown",this.plugin.setMarkdownView(this.leaf),this._extractHighlight=!1;break;case"saveAnnotations":if(x=e.data.annotations,t.saveAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate&&(w=e.data.newAnnotate,h=e.data.mdId,w&&(s=t.app.workspace.getLeavesOfType(_M))&&s.length&&(P=s.filter((t=>t&&t.view&&t.view.mindmap)))&&P.length)){var S=(F=P[0].view.mindmap).selectNode||F.root;l=JSON.parse(w.text),p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(w.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(l.pdfName)}&annotate=${encodeURIComponent(w.id)}`,this.plugin.settings.annotateFormat&&(m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${w.selectText}`)).replace(g,w.page+1)).replace(v,w.id)).replace(A,p)),F.execute("addChildNode",{parent:S,data:{text:m||`${w.selectText} [📌](${p})`,note:w.contents||""}}),F._hideMenu()}break;case"copyText":n=e.data.text,t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(n);break;case"saveNewAnnotations":var P;if(x=e.data.annotations,t.saveNewAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate)if(w=e.data.newAnnotate,h=e.data.mdId,w&&(s=t.app.workspace.getLeavesOfType(_M))&&s.length&&(P=s.filter((t=>t&&t.view&&t.view.mindmap)))&&P.length){var F;S=(F=P[0].view.mindmap).selectNode||F.root,p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(w.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(w.pdfName)}&annotate=${encodeURIComponent(w.id)}`;var T=this.plugin.settings.removeSpace;this.plugin.settings.annotateFormat&&(m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${w.text}`)).replace(g,w.position.pageIndex+1)).replace(v,w.id)).replace(A,p),T&&(m=m.replace(/\s/g,""))),T&&!m&&(w.text=w.text.replace(/\s/g,"")),F.execute("addChildNode",{parent:S,data:{text:m||`${w.text} [📌](${p})`,note:w.comments||""}}),F._hideMenu()}break;case"showNewMindmapAnnotate":if(s=t.app.workspace.getLeavesOfType(_M),o=e.data.id,s.length&&s.forEach((t=>{t&&t.view&&t.view.mindmap&&t.view.mindmap.traverseDF((e=>{if(e){if(e.getData().text.indexOf(o)>-1){if(!e.isShow())for(var i=!0,n=e;n;)n.isExpand||n.expand(),n=n.parent||n.belongInduce&&n.belongInduce.node;return i&&t.view.mindmap.refresh(),void t.view.mindmap.showNode(e)}e.getAnnotateId()==o&&t.view.mindmap.showNode(e)}}))})),r=e.data.data,a=e.data.annotateType,h=e.data.mdId,t.plugin.settings.openProtocol&&t.plugin.settings.protocol)if("image"==a||"ink"==a){var z;if(c=(z=r.path.replace(/\\/g,"/")).lastIndexOf("/"),u=z.substr(c+1),p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(r.pdfName)}&annotate=${encodeURIComponent(r.id)}`,this.plugin.settings.annotateFormat)return m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`![[${u||r.path}]]`)).replace(g,r.position.pageIndex+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m);t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${p})`):t.win.navigator.clipboard.writeText(`![[${u||r.path}]] [📌](${p})`)}else{if(p=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(r.pdfName)}&annotate=${encodeURIComponent(r.id)}`,y=(T=t.plugin.settings.removeSpace)?(r.text||"").replace(/\s/g,""):r.text||"",this.plugin.settings.annotateFormat)return m="",f=new RegExp("{{highlightText}}","ig"),g=new RegExp("{{page}}","ig"),v=new RegExp("{{id}}","ig"),A=new RegExp("{{link}}","ig"),m=(m=(m=(m=this.plugin.settings.annotateFormat.replace(f,`${y}`)).replace(g,r.position.pageIndex+1)).replace(v,r.id)).replace(A,p),void t.win.navigator.clipboard.writeText(m);t.plugin.settings.onlyCopyLink?(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`[📌](${p})`)):(t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(`${y} [📌](${p})`))}else t.win.navigator.clipboard.writeText(JSON.stringify(r));break;case"createNewRect":E=e.data.isNew,C=e.data.imagePath,k=e.data.dataBuffer,r=e.data.data,B=e.data.imageOptions,x=e.data.annotations,h=e.data.mdId,t.app.vault.adapter.writeBinary(C,k).then((()=>{r.pdfName=t.pdf_path.path,r.path=C;var e=r.path.replace(/\\/g,"/"),i=e.lastIndexOf("/"),n=e.substr(i+1);if(t.plugin.settings.openProtocol){if(h)var s=`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`;else s=`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`;t.plugin.settings.onlyCopyLink?t.win.navigator.clipboard.writeText(`[📌](${s})`):t.win.navigator.clipboard.writeText(`![[${n||r.path}]] [📌](${s})`)}else t.win.navigator.clipboard.writeText(JSON.stringify({id:r.id,type:"rect",action:"create pdf annotate",path:C,width:B.width,height:B.height,page:r.page,text:JSON.stringify(r),pdfName:t.pdf_path.path}));var o=this.app.metadataCache.getFirstLinkpathDest(C,this.file.path);if(t.iframe.contentWindow.postMessage({type:"saveImagePath",_viewMark:t._viewMark,id:r.id,imagePath:t.app.vault.getResourcePath(o)},"*"),t.saveNewAnnotations(x),this.plugin.settings.autoCreateNodeWhenAnnotate){var a=t.app.workspace.getLeavesOfType(_M);if(a&&a.length){var l=a.filter((t=>t&&t.view&&t.view.mindmap));if(l&&l.length&&E){var d=l[0].view.mindmap,c=d.selectNode||d.root;if(s=h?`obsidian://${t.plugin.settings.protocol}?id=${h}&annotate=${encodeURIComponent(r.id)}`:`obsidian://${t.plugin.settings.protocol}?pdf=${encodeURIComponent(t.pdf_path.path)}&annotate=${encodeURIComponent(r.id)}`,this.plugin.settings.annotateFormat){var u="",p=new RegExp("{{highlightText}}","ig"),m=new RegExp("{{page}}","ig"),f=new RegExp("{{id}}","ig"),g=new RegExp("{{link}}","ig");u=(u=(u=(u=this.plugin.settings.annotateFormat.replace(p,`![[${n||r.path}]]`)).replace(m,r.position.pageIndex+1)).replace(f,r.id)).replace(g,s)}d.execute("addChildNode",{parent:c,data:{text:u||`![[${n||r.path}]] [📌](${s})`,note:r.comments||""}}),d._hideMenu()}}}})).catch((t=>{console.log(t),new d.Notice(b("Save Image error,Please try again"))}))}}.bind(this),this.win.addEventListener("message",this.messageEvent,!1)}removeMessageEvent(){this.messageEvent&&this.win.removeEventListener("message",this.messageEvent,!1)}saveAnnotations(t){if(this.useMarkdown||this.pdf_path.path.startsWith("file:")||this.pdf_path.path.startsWith("http")){var e=this.getAnnotateMarkdown(t);this.data=e,this.requestSave()}else this.app.vault.adapter.write(this.annotate_path,JSON.stringify(t))}saveNewAnnotations(t){if(this.useMarkdown||this.pdf_path.path.startsWith("file:")||this.pdf_path.path.startsWith("http")){var e=this.getNewAnnotateMarkdown(t);this.data=e,this.requestSave()}else this.app.vault.adapter.write(this.annotate_path,JSON.stringify(t))}saveEpubAnnotations(t){if(this.useMarkdown||this.pdf_path.path.startsWith("file:")){var e=this.getEpubAnnotationsMarkdown(t);this.data=e,this.requestSave()}else this.app.vault.adapter.write(this.annotate_path,JSON.stringify(t))}showOutline(t){var e=this.leaf.view;this.isShowOutline=!0;var i=document.createElement("div");i.classList.add("mm-router"),this.list&&(this.list.clear(),this.mindmapContainer.innerHTML=""),this.appContainer.contains(this.mindmapContainer)||this.appContainer.appendChild(this.mindmapContainer),this.mindmapContainer.appendChild(i);var n=document.createElement("div");n.classList.add("mm-link-board"),this.mindmapContainer.appendChild(n),n.style.display="none";var s,o,r=document.createElement("ul");if(r.classList.add("mm-list"),this.mindmapContainer.appendChild(r),"basic"==this._mode){var a=this.getMdText(this.data);(h=this.mdToData(a)).isRoot=!0,h.main=!0,this.list=new BC(r,h),this.list.path=null==e?void 0:e.file.path,this.list.colors=this.colors,this.list._mode="basic",this.list.view=this,this.list.setting=this.plugin.settings,this.list.nodeElements=t,this.list.init()}else{a=this.getMdText(this.data);var h,l=(h=JSON.parse(a)).mindData[0];if(!l)return;var d=(s=null,o={},l.forEach((t=>{o[t.id]=t,t.children||(t.children=[]),t.pid||(s=t),t.pid&&o[t.pid]&&o[t.pid].children.push(t)})),s);this.list=new BC(r,d),this.list.oldRichData=h,this.list.path=null==e?void 0:e.file.path,this.list.colors=this.colors,this.list.view=this,this.list.setting=this.plugin.settings,this.list.nodeElements=t,this.list.init(d,{},"rich"),this.list._mode="rich"}this.mindmapContainer.style.visibility="visible",this.mindmapContainer.scrollTop=0}showTableMode(){var t=this.leaf.view;if(this.isShowTable=!0,"basic"==this._mode){var e=this.getMdText(this.data),i=this.mdToData(e);i.isRoot=!0,i.main=!0;var n=this.plugin.settings||{},s=this,o={data:function(){return{path:null==t?void 0:t.file.path,colors:s.colors.slice(),_mode:"table",isMobile:d.Platform.isMobileApp,useCustomShortcut:s.plugin.settings.useCustomShortcut,xmindImageTarget:s.fileCache.frontmatter["xmind-image-target"]||"",_autoCenter:s.plugin.settings.autoCenter,addCollapseNodeMark:s.plugin.settings.addCollapseNodeMark,mindData:i,settings:n}}};try{this.vueapp=new Bn({mixins:[o],i18n:YA,render:t=>t(tA)}),this.vueapp.$mount(this.mindmapContainer)}catch(Cn){console.log(Cn)}}}showTable(t){this.mindmap&&(this.mindmap.initTable(t),this.mindmap.view=this)}onunload(){this.app.workspace.offref("quick-preview"),this.app.workspace.offref("resize"),this.mindmap&&(this.mindmap.clear(),this.contentEl.innerHTML="",this.mindmap=null),this.list&&(this.list.clear(),this.contentEl.innerHTML="",this.list=null),this.translateView&&(this.translateView.clear(),this.contentEl.innerHTML="",this.translateView=null),this.historyDom&&(this.historyDom.querySelector("input").onchange=null,this.historyDom.querySelector("input").oninput=null,this.historyDom.querySelector(".mm-history-container").onclick=null,this.historyDom.querySelector(".mm-history-close").onclick=null,this.historyDom.innerHTML=""),this._haveOpenPdf&&this._closePDF(),Object.assign(window,{onlyPdf:!1}),this.plugin.setMarkdownView(this.leaf)}onload(){super.onload(),this.registerEvent(this.app.workspace.on("quick-preview",(()=>this.onQuickPreview),this)),this.registerEvent(this.app.workspace.on("resize",(()=>{this.mindmap&&d.Platform.isDesktopApp&&(this.mindmap.selectNode||this.mindmap.root)}),this))}onQuickPreview(t,e){}updateMindMap(){this.mindmap&&this.mindmap.center()}onFileRename(t,e){this.mindmap&&this.mindmap.path&&this.mindmap.path==e&&(this.mindmap.path=t.path)}async onFileMetadataChange(t){t.path,this.fileCache=this.app.metadataCache.getFileCache(t)}getNodeElements(){var t="",e=[],i=[],n={};this.haveNodeElement=!1;var s=this.data.match(/### node element start([\s\S]*?)### node element end/);if(s&&(this.haveNodeElement=!0,t=s[1])){e=t.split("\n");var o=[];e.length&&e.forEach((t=>{var e=/^.+ \^([a-z0-9\-]+)$/gim.exec(t);if(e){var s=e[1];o.push(t);var r=o.join("\n");r=r.replace(` ^${s}`,""),i.push({id:s,text:r.trim()}),n[s]=r.trim(),o=[]}else o.push(t)}))}return n}getMdText(t){if("basic"==this._mode)return t.trim().replace(vl,"").trim();var e=t.match(/^(\`\`\` json)$.+?^(\`\`\`)$.+?/ims),i=!1;if(this.richFlag=!1,e||(e=t.match(/^(\`\`\`json)$.+?^(\`\`\`)$.+?/ims),i=!0,this.richFlag=!0),e&&e.length>0){if(this.richFirstSave=!1,i){var n=e[0].substring(7,e[0].length-4).trim();(o=document.createElement("div")).innerText=n;var s=[];for(let t=0;t{o.removeChild(t)})),o.textContent}var o;n=e[0].substring(8,e[0].length-4).trim(),(o=document.createElement("div")).innerText=n,s=[];for(let t=0;t{o.removeChild(t)})),o.textContent}return this.richFirstSave=!0,JSON.stringify({mindData:[[{id:KM(),text:"Root",isRoot:!0,main:!0,x:this.plugin.settings.canvasSize/2,y:this.plugin.settings.canvasSize/2,isExpand:!0,layout:{layoutName:"mindmap2",direct:""}}]]})}mdToData(t){var e;if(t){const{root:e}=VM.transform(t);return XM(e,"",this.colors)}return{id:KM(),text:(null==(e=this.app.workspace.getActiveFile())?void 0:e.basename)||`${b("Untitled mindmap")}`}}onMoreOptionsMenu(t){this.translateView&&t.addItem((t=>{t.setTitle(`${b("Copy full text translations")}`).setIcon("document").onClick((()=>{if(this.translateView){var t=this.translateView.getTranslation();this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(t)}}))})),this._haveOpenPdf?(t.addItem((t=>{t.setTitle(`${b("Open as markdown")}`).setIcon("document").onClick((()=>{this.plugin.mindmapFileModes[this.id||this.file.path]="markdown",this.plugin.setMarkdownView(this.leaf)}))})),t.addItem((t=>{t.setTitle(`${b("Full text translate")}`).setIcon("document").onClick((async()=>{var t=this.pdf_path.path||"";if(t.startsWith("http")||t.startsWith("file"))new d.Notice(b("Pdf in vault"));else{var e=t.substr(0,t.length-3)+"translation";if(await this.app.vault.adapter.exists(e))this.openFullText(t);else{var i=await this.app.vault.adapter.readBinary(d.normalizePath(t));this.getPDFxml(i,d.normalizePath(t))}}}))})),d.Platform.isDesktopApp&&(t.addItem((t=>{t.setTitle(`${b("Export annotate pdf")}`).setIcon("document").onClick((async()=>{new d.Notice(`${b("Export annotate pdf tip")}`),this.iframe.contentWindow.postMessage({type:"exportAnnotatePDF"},"*")}))})),t.addItem((t=>{t.setTitle(`${b("Export pdf annotations")}`).setIcon("document").onClick((async()=>{await this._exportHighlights()}))})),t.addItem((t=>{t.setTitle(`${b("Get pdf annotations")}`).setIcon("document").onClick((async()=>{new d.Notice(`${b("Export annotate pdf tip")}`),await this._ectractHighlightOfPdf()}))})),this.plugin.settings.activeCode)):(t.addItem((t=>{t.setTitle(`${b("Open as markdown")}`).setIcon("document").onClick((()=>{this.plugin.mindmapFileModes[this.id||this.file.path]="markdown",this.plugin.setMarkdownView(this.leaf)}))})),t.addItem((t=>{t.setTitle(`${b("Open as outline")}`).setIcon("document").onClick((()=>{if(this.mindmap&&(this.mindmap.clear(),this.mindmap.useHandMode&&(this._useHandDraw=!1),this.mindmap=null),this.vueapp)try{this.vueapp.$destroy(),this.appContainer.contains(this.vueapp.$el)&&(this.appContainer.removeChild(this.vueapp.$el),this.vueapp.$el.innerHTML=""),this.vueapp=null}catch(e){console.log(e),this.vueapp=null}this.mindmapContainer.innerHTML="",this.appContainer.contains(this.mindmapContainer)||this.appContainer.appendChild(this.mindmapContainer),this.forceMindMapMode=!1;var t=this.getNodeElements();this.showOutline(t)}))})),this.mindmap&&"basic"==this._mode&&(t.addItem((t=>{t.setTitle(`${b("Open as table")}`).setIcon("document").onClick((()=>{this.forceMindMapMode=!1,this.isShowOutline=!1,this.isShowTable=!0,this.showTable(this.mindmap.data)}))})),t.addItem((t=>{t.setTitle(`${b("Create hand drawn mindmap")}`).setIcon("document").onClick((()=>{this.mindmap&&(this.mindmap.useHandMode&&(this.mindmap.useHandMode=!1),this._useHandDraw=!0,this.setViewData(this.data),setTimeout((()=>{this.mindmap&&this.mindmap.refresh(),this.mindmap&&this.mindmap.clearSelectNode()}),1200))}))})),this.isShowTable&&(t.addItem((t=>{t.setTitle(`${b("Open as mindmap board")}`).setIcon("document").onClick((async()=>{this.mindmapContainer.innerHTML="",this.isShowOutline=!1,this.isShowTable=!1,this.forceMindMapMode=!0,this.mindmap&&this.mindmap.clear(),this.vueapp&&(this.vueapp.$destroy(),this.appContainer.contains(this.vueapp.$el)&&(this.appContainer.removeChild(this.vueapp.$el),this.vueapp.$el.innerHTML=""),this.vueapp=null),this.setViewData(this.data)}))})),t.addItem((t=>{t.setTitle(`${b("get table markdown")}`).setIcon("document").onClick((async()=>{if(this.isShowTable&&this.mindmap){var t=JSON.parse(JSON.stringify(this.mindmap.data)),e=this.mindmap.getMarkdownOfTable(t);this.win.navigator.clipboard.writeText("");try{this.win.navigator.clipboard.writeText(RM.turndown(e))}catch(i){console.log(i)}this.mindmap.initTable()}}))})))),this.mindmap&&(t.addItem((t=>{t.setTitle(`${b("Toggle search box")}`).setIcon("document").onClick((()=>{this.mindmap._searchDom?this.mindmap.closeSearch():this.mindmap.createSearchDom()}))})),t.addItem((t=>{t.setTitle(`${b("Set mindmap to center")}`).setIcon("document").onClick((()=>{this.mindmap&&this.mindmap.center()}))})),t.addItem((t=>{t.setTitle(`${b("Copy as markdown")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t)var e=t.getLevel(),i=this.mindmap.getMarkdown(t,!0,e);else i=this.mindmap.getMarkdown();i&&(this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(i))}))})),t.addItem((t=>{t.setTitle(`${b("Copy node text")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t){var e=t.getData().text;e&&(this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(e))}}))}))),this.mindmap&&"rich"==this._mode&&(t.addItem((t=>{t.setTitle(`${b("Copy node link")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t){const{text:i,id:n}=t.getData();var e=`${i} [🔖](obsidian://jump-to-pdf?md=${encodeURIComponent(this.file.path)}&node=${encodeURIComponent(n)})`;this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(e)}}))})),t.addItem((t=>{t.setTitle(`${b("Copy node id")}`).setIcon("document").onClick((()=>{var t=this.mindmap.selectNode;if(t){const{text:e,id:i}=t.getData();this.win.navigator.clipboard.writeText(""),this.win.navigator.clipboard.writeText(i)}}))}))),this.list&&t.addItem((t=>{t.setTitle(`${b("Open as mindmap board")}`).setIcon("document").onClick((async()=>{this.list.clear(),this.mindmapContainer.innerHTML="",this.isShowOutline=!1,this.isShowTable=!1,this.list=null,this.forceMindMapMode=!0,this.setViewData(this.data)}))}))),super.onMoreOptionsMenu(t)}async openPDF(t){if(this.plugin.settings.pdfjsPath){if(this.period)new d.Notice(b("The probation period has ended"));else if(this.setTime&&clearTimeout(this.setTime),!this.pdf_path){if(document.querySelector(".pdfViewer"))return void new d.Notice(b("PDF Cannot Open More Instances"));new d.Notice(b("Open PDF File"))}}else new d.Notice(b("Miss PDF Reader Path"))}getAnnotations(t){var e=[],i=t.match(/(\n>\`\`\`annotate-json\n)(.+?)(\n>\`\`\`\n)/gm),n=!1;return i||(i=t.match(/(\n> \`\`\`annotate-json\n)(.+?)(\n> \`\`\`\n)/gm),n=!0),i&&i.length&&i.forEach((t=>{try{t=n?t.substring(21,t.length-6):t.substring(20,t.length-5);var i=JSON.parse(t.trim());e.push(i)}catch(s){console.log(s)}})),e}getEpubAnnotationsMarkdown(t){var e=this,i="",n=this.plugin.settings.removeSpace;return t.forEach((t=>{var s=">%%\n>```annotate-json\n>";s+=JSON.stringify(t),s+="\n>```\n>%%\n",e.pdf_path.path,"epub-highlight"==t.type?s+=n?`>*${t.text.replace(/\s/g,"")}*\n`:`>*${t.text}*\n`:s+=`>![[${e.pdf_path.path}]]\n`,s+=`>[[#^${t.id}|${b("Show Annotate")}]]\n>\n^${t.id}\n\n`,i+=s})),`---\n\nannotate-type: epub\nannotate-target: ${this.pdf_path.path}\n\n---\n\n`+i}getAnnotateMarkdown(t){var e="",i=this.plugin.settings.removeSpace;t.forEach((t=>{var n=">%%\n>```annotate-json\n>";n+=JSON.stringify(t),n+="\n>```\n>%%\n";var s=JSON.parse(t.text);s.pdfName,"highlight"==t.type?n+=i?`>*${t.selectText.replace(/\s/g,"")}*\n`:`>*${t.selectText}*\n`:n+=`>![[${s.path}]]\n`,n+=`>[[#^${t.id}|${b("Show Annotate")}]]\n>\n^${t.id}\n\n`,e+=n}));var n=`---\n\nannotate-type: pdf\nannotate-target: ${this.pdf_path.path}\n\n---\n\n`;return this.frontmatter&&(n=this.frontmatter),n+e}getNewAnnotateMarkdown(t){var e="",i=this.plugin.settings.removeSpace;t.forEach((t=>{var n=">%%\n>```annotate-json\n>";n+=JSON.stringify(t),n+="\n>```\n>%%\n","highlight"==t.type||"underline"==t.type||"strokeout"==t.type?n+=i?`>*${t.text.replace(/\s/g,"")}*\n`:`>*${t.text}*\n`:n+=`>![[${t.path}]]\n`,n+=`>[[#^${t.id}|${b("Show Annotate")}]]\n>\n^${t.id}\n\n`,e+=n}));var n=`---\n\nannotate-type: pdf\nannotate-target: ${this.pdf_path.path}\n\n---\n\n`;return this.frontmatter&&(n=this.frontmatter),n+e}_closePDF(){this._close(),this.mindmapContainer.style.width="100%",this.pdfContainer.style.display="none",this.mindmap&&this.mindmap.center(),this.removeMessageEvent()}async openMindView(t,e){var i=this.app.metadataCache.getFirstLinkpathDest(e,null==this?void 0:this.file.path);const n=this.app.workspace.getLeavesOfType(_M);if(n.length){var s=null;if(n.forEach((t=>{t.view&&t.view.mindmap&&d.View.mindmap.path==i.path&&(s=t.view)})),s){var o=s.mindmap,r=o.getNodeById(t);r&&o.showNode(r)}else Object.assign(window,{"show-mindmap-node":t}),this.app.workspace.openLinkText(e,"","split")}else Object.assign(window,{"show-mindmap-node":t}),this.app.workspace.openLinkText(e,"","split")}async getAnnoateById(t){var e,i=null,n=this.app.vault.getMarkdownFiles();for(let o of n){var s=null==(e=this.app.metadataCache.getFileCache(o))?void 0:e.frontmatter;if(s&&s.id&&s.id==t){i=o;break}}return i}async showAnnotateByJson(t,e){const i=this.app.workspace.getLeavesOfType(_M);!!this.plugin.settings.isDecodeURl&&(e=decodeURI(e)),i.forEach((i=>{i.view&&i.view._haveOpenPdf&&i.view.pdf_path&&i.view.pdf_path.path.indexOf(e)>-1&&i.view.iframe.contentWindow.postMessage({type:"showAnnotateByJson",json:t},"*")}))}async showAnnotateById(t,e){var i,n=await this.getAnnoateById(e);if(n){var s=null==(i=this.app.metadataCache.getFileCache(n))?void 0:i.frontmatter,o=s&&s["annotate-target"];o&&this.showAnnotate(t,o)}else new d.Notice(b("Not find md file")+", Yaml id is:"+e)}async showAnnotate(t,e){if(!this.plugin.settings.supportPDF){try{this.app.workspace.openLinkText(e,"","split")}catch(Cn){console.log(Cn)}return}var i={};if(!!this.plugin.settings.isDecodeURl&&(e=decodeURI(e)),e.startsWith("file:/")){i.path=e,i.basename=WM.basename(e),i.absolutePath=e.replace("file://","");var n=e}else e.startsWith("http://")||e.startsWith("https://")?(i.path=e,i.basename=e,i.absolutePath=e,n=e):(i=this.app.metadataCache.getFirstLinkpathDest(e,null==this?void 0:this.file.path),n=this.app.vault.getResourcePath(i));const s=this.app.workspace.getLeavesOfType(_M);if(s.length){var o=null;if(s.forEach((t=>{t.view&&t.view._haveOpenPdf&&t.view.pdf_real_path==n&&(o=t.view)})),o)o.iframe.contentWindow.postMessage({id:t,type:"showAnnotate"},"*");else{if(e.startsWith("file:/")||e.startsWith("http"));else if((l=d.normalizePath(i.path)).endsWith(".pdf"))var r=l.substr(0,l.length-4)+"-annotate.md";else l.endsWith(".epub")&&(r=l.substr(0,l.length-5)+"-annotate.md");var a=await this.getAnnoate(i.path);if(Object.assign(window,{waitPdfId:t}),a)await this.app.workspace.openLinkText(a.path,"","split");else{if(e.startsWith("file:/")||e.startsWith("http"))return void new d.Notice(b("Not find md file"));var h=`---\nid: ${KM()}\nannotate-target: ${i.path}\n---\n`;await this.app.vault.adapter.write(r,h),setTimeout((()=>{this.app.workspace.openLinkText(r,"","split")}),200)}}}else{var l;if(r=(l=d.normalizePath(i.path)).substr(0,l.length-4)+"-annotate.md",await this.app.vault.adapter.exists(r))await this.app.workspace.openLinkText(r,"","split");else{if(a=await this.getAnnoate(i.path))return void(await this.app.workspace.openLinkText(a.path,"","split"));h=`---\nid: ${KM()}\nannotate-target: ${e}\n---\n`,await this.app.vault.adapter.write(r,h),setTimeout((()=>{this.app.workspace.openLinkText(r,"","split")}),100)}}}async getAnnoate(t){var e,i=null,n=this.app.vault.getMarkdownFiles(),s=encodeURI(t),o=encodeURIComponent(t);for(let a of n){var r=null==(e=this.app.metadataCache.getFileCache(a))?void 0:e.frontmatter;if(r&&r["annotate-target"]&&(r["annotate-target"]==t||r["annotate-target"]==s||r["annotate-target"]==o)){i=a;break}}return i}async getTranslateMd(t){var e,i=null,n=this.app.vault.getMarkdownFiles(),s=encodeURI(t),o=encodeURIComponent(t);for(let a of n){var r=null==(e=this.app.metadataCache.getFileCache(a))?void 0:e.frontmatter;if(r&&r["translate-target"]&&(r["translate-target"]==t||r["translate-target"]==s||r["translate-target"]==o)){i=a;break}}return i}async exportXmind(){if(this.period)new d.Notice(`${b("The probation period has ended")}`);else if(this.mindmap){var t=this.mindmap.exportXmind(),e=new Wd;this.mindmap.relateLinks&&this.mindmap.relateLinks.length&&(t[0].relationships=[],this.mindmap.relateLinks.forEach((e=>{var i=e.getData(),n={end1Id:i.startNodeId,end2Id:i.endNodeId,id:KM(),style:{id:KM(),properties:{}}};i.nodeData&&(n.title=i.nodeData.text),n.style.properties["line-color"]=i.color,t[0].relationships.push(n)}))),e.file("content.json",JSON.stringify(t)),e.folder("resources"),e.folder("Thumbnails"),e.file("metadata.json",'{"dataStructureVersion":"2","layoutEngineVersion":"3","creator":{"name":"Vana","version":"23.11.04336"}}'),e.file("manifest.json",'{"file-entries":{"content.json":{},"metadata.json":{},"Thumbnails/thumbnail.png":{}}}'),e.file("content.xml",'Warning\n警告\nAttention\nWarnung\n경고This file can not be opened normally, please do not modify and save, otherwise the contents will be permanently lost!You can try using XMind 8 Update 3 or later version to open该文件无法正常打开,请勿修改并保存,否则文件内容将会永久性丢失!你可以尝试使用 XMind 8 Update 3 或更新版本打开該文件無法正常打開,請勿修改並保存,否則文件內容將會永久性丟失!你可以嘗試使用 XMind 8 Update 3 或更新版本打開この文書は正常に開かないので、修正して保存しないようにしてください。そうでないと、書類の内容が永久に失われます。!XMind 8 Update 3 や更新版を使って開くこともできますDatei kann nicht richtig geöffnet werden. Bitte ändern Sie diese Datei nicht und speichern Sie sie, sonst wird die Datei endgültig gelöscht werden.Bitte versuchen Sie, diese Datei mit XMind 8 Update 3 oder später zu öffnen.Ce fichier ne peut pas ouvert normalement, veuillez le rédiger et sauvegarder, sinon le fichier sera perdu en permanence. Vous pouvez essayer d\'ouvrir avec XMind 8 Update 3 ou avec une version plus récente.파일을 정상적으로 열 수 없으며, 수정 및 저장하지 마십시오. 그렇지 않으면 파일의 내용이 영구적으로 손실됩니다!XMind 8 Update 3 또는 이후 버전을 사용하여-1Sheet 1\n');var i=this.file,n=i.path;if(n=i.path.substring(0,n.length-3),n+="-export.xmind",this.mindmap._exportImages.length){var s=JSON.parse('{"file-entries":{"content.json":{},"metadata.json":{},"Thumbnails/thumbnail.png":{}}}');this.mindmap._exportImages.forEach((t=>{e.folder("resources").file(`${t.name}.png`,t.image.substring(t.image.indexOf(",")+1),{base64:!0}),s["file-entries"][t.link]={}})),e.file("manifest.json",JSON.stringify(s)),this.mindmap._exportImages=[]}e.generateAsync({type:"arraybuffer"}).then((t=>{this.app.vault.adapter.writeBinary(n,t),new d.Notice(b("Export xmind success")+" : "+n)}))}}async onOpen(){}}class eN extends d.PluginSettingTab{constructor(t,e){super(t,e),this.plugin=e}display(){const{containerEl:t}=this;this.plugin.settings.setup||(this.plugin.settings.setup=(new Date).getTime()),this.plugin.settings.firstActive&&(this.plugin.settings.firstActive=0,this.plugin.saveData(this.plugin.settings)),t.empty(),new d.Setting(t).setName(`${b("Mindmap Render Type")}`).setDesc(`${b("Mindmap Render Type desc")}`).addDropdown((t=>t.addOption("svg","svg").addOption("html","html").setValue(this.plugin.settings.mindmapRenderType||"svg").onChange((t=>{this.plugin.settings.mindmapRenderType=t,this.plugin.saveData(this.plugin.settings)})))),new d.Setting(t).setName(`${b("Canvas size")}`).setDesc(`${b("Canvas size desc")}`).addDropdown((t=>t.addOption("4000","4000").addOption("6000","6000").addOption("8000","8000").addOption("10000","10000").addOption("12000","12000").addOption("16000","16000").addOption("20000","20000").addOption("24000","24000").addOption("30000","30000").addOption("36000","36000").addOption("40000","40000").addOption("50000","50000").addOption("60000","60000").addOption("70000","70000").addOption("80000","80000").addOption("90000","90000").addOption("100000","100000").addOption("110000","110000").addOption("120000","120000").addOption("160000","160000").addOption("200000","200000").addOption("240000","240000").addOption("300000","300000").addOption("400000","400000").addOption("500000","500000").addOption("600000","600000").addOption("700000","700000").addOption("800000","800000").addOption("1000000","1000000").setValue(this.plugin.settings.canvasSize.toString()||"80000").onChange((t=>{var e=Number.parseInt(t);this.plugin.settings.canvasSize=e,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var i=t.view;i&&i.mindmap&&i.mindmap.setting&&(i.mindmap.setting.canvasSize=e),i.mindmap.setAppSetting();var n=i.mindmap.root.getBox();i.mindmap.root.setPosition(e/2-n.width/2,e/2-n.height/2),i.mindmap.refresh(),i.mindmap.center()}))})))),new d.Setting(t).setName(`${b("Canvas background")}`).setDesc(`${b("Canvas background desc")}`).addText((t=>t.setValue(this.plugin.settings.background||"transparent").setPlaceholder("Example: black|white|#ccc").onChange((t=>{this.plugin.settings.background=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.background=this.plugin.settings.background,e.mindmap.setAppSetting()}))})))),new d.Setting(t).setName(`${b("Max level of node to markdown head")}`).setDesc(`${b("Max level of node to markdown head desc")}`).addDropdown((t=>t.addOption("0","0").addOption("1","1").addOption("2","2").addOption("3","3").addOption("4","4").addOption("5","5").addOption("6","6").setValue(this.plugin.settings.headLevel.toString()||"2").onChange((t=>{this.plugin.settings.headLevel=Number.parseInt(t),this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{t.view.mindmap.setting.headLevel=this.plugin.settings.headLevel}))})))),new d.Setting(t).setName(`${b("Font size")}`).setDesc(`${b("Font size desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.fontSize)?void 0:e.toString())||"16").setPlaceholder("Example: 16").onChange((t=>{this.plugin.settings.fontSize=Number.parseInt(t),this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.fontSize=this.plugin.settings.fontSize,e.mindmap.setAppSetting(),e.mindmap.traverseBF((t=>{t.boundingRect=null,t.refreshBox()})),e.mindmap.refresh()}))}))})),new d.Setting(t).setName(`${b("Mind map layout direct")}`).setDesc(`${b("Mind map layout direct desc")}`).addDropdown((t=>t.addOption("mind map",b("Centered")).addOption("right",b("Right")).addOption("left",b("Left")).setValue(this.plugin.settings.layoutDirect.toString()||"mind map").onChange((t=>{this.plugin.settings.layoutDirect=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.layoutDirect=this.plugin.settings.layoutDirect,e.mindmap.refresh()}))})))),new d.Setting(t).setName(`${b("Show node setup board")}`).setDesc(`${b("Show node setup board desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.showNodeBoard).onChange((t=>{this.plugin.settings.showNodeBoard=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Allow dblclick to create free node")}`).setDesc(`${b("Allow dblclick to create free node desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.allowDblickCreateNode).onChange((t=>{this.plugin.settings.allowDblickCreateNode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Allow lang touch to create free node")}`).setDesc(`${b("Allow lang touch to create free node desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.allowLangTouchCreateNode).onChange((t=>{this.plugin.settings.allowLangTouchCreateNode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Stroke Array")}`).setDesc(`${b("Stroke Array Desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.strokeArray)?void 0:e.toString())||"").setPlaceholder("Example: red,oragne,blue ...").onChange((t=>{this.plugin.settings.strokeArray=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((t=>{var e=t.view;e.mindmap.setting.strokeArray=this.plugin.settings.strokeArray.split(","),e.mindmap.traverseBF((t=>{t.boundingRect=null,t.refreshBox()})),e.mindmap.refresh()}))}))})),new d.Setting(t).setName(`${b("Support PDF annotation")}`).setDesc(`${b("Support PDF annotation desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.supportPDF).onChange((t=>{this.plugin.settings.supportPDF=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Open Protocol")}`).setDesc(`${b("Open Protocol Desc")}`).addDropdown((t=>t.addOption("0",b("Close")).addOption("1",b("Open")).setValue(this.plugin.settings.openProtocol||"0").onChange((t=>{this.plugin.settings.openProtocol=Number.parseInt(t),this.plugin.saveData(this.plugin.settings),this.plugin.settings.openProtocol&&this.plugin.settings.protocol&&this.plugin.registerObsidianProtocol()})))),new d.Setting(t).setName(`${b("Annotation save type")}`).setDesc(`${b("Annotation save type desc")}`).addDropdown((t=>t.addOption("annos","annos").addOption("md","markdown").setValue(this.plugin.settings.useMarkdownSaveAnnotation).onChange((t=>{this.plugin.settings.useMarkdownSaveAnnotation=t,this.plugin.saveData(this.plugin.settings);const e=this.app.workspace.getLeavesOfType(_M);"md"==this.plugin.settings.useMarkdownSaveAnnotation?e.forEach((t=>{t.view.useMarkdown=!0})):e.forEach((t=>{t.view.useMarkdown=!1}))})))),new d.Setting(t).setName(`${b("Active Code")}`).setDesc(`${b("Active Code Desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.activeCode)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.activeCode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Mobile Active Code")}`).setDesc(`${b("Mobile Active Code Desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.mobileActiveCode)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.mobileActiveCode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("PDF Viewer Theme")}`).setDesc(`${b("PDF Viewer Theme desc")}`).addDropdown((t=>t.addOption("1","Light").addOption("2","Dark").setValue(this.plugin.settings.viewerTheme.toString()||"2").onChange((t=>{this.plugin.settings.viewerTheme=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)})))),new d.Setting(t).setName(`${b("Mindmap mode")}`).setDesc(`${b("Mindmap mode desc")}`).addDropdown((t=>t.addOption("basic","Basic").addOption("rich","Rich").setValue(this.plugin.settings.mindmapmode.toString()||"basic").onChange((t=>{this.plugin.settings.mindmapmode=t,this.plugin.saveData(this.plugin.settings)})))),new d.Setting(t).setName(`${b("Layout for basic mode")}`).setDesc(`${b("Layout for basic mode desc")}`).addDropdown((t=>{var e;return t.addOption("","").addOption("mindmap6","mindmap6").addOption("mindmap2","mindmap2").addOption("fish","fish").addOption("tree","tree").setValue((null==(e=this.plugin.settings.basicLayoutName)?void 0:e.toString())||"").onChange((t=>{this.plugin.settings.basicLayoutName=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Pdf screen short")}`).setDesc(`${b("Pdf screen short desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.imageFolder)?void 0:e.toString())||"").setPlaceholder("assets").onChange((t=>{this.plugin.settings.imageFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Remove annotate space")}`).setDesc(`${b("Remove annotate space desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.removeSpace).onChange((t=>{this.plugin.settings.removeSpace=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Smooth movement")}`).setDesc(`${b("Smooth movement desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.removeSpace).onChange((t=>{this.plugin.settings.useAnimate=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap.setting.useAnimate=t)}))}))})),new d.Setting(t).setName(`${b("Support code block")}`).setDesc(`${b("Support code block desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.openCodeBlock).onChange((t=>{this.plugin.settings.openCodeBlock=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("nodeColor")}`).setDesc(`${b("nodeColorDesc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.nodeColorArray)?void 0:e.toString())||"").setPlaceholder("Example: red,orange,#ccc").onChange((t=>{this.plugin.settings.nodeColorArray=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Format of pdf highlight")}`).setDesc(`${b("Format of pdf highlight desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.highlightFormat)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.highlightFormat=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Fine tune height of annotate")}`).setDesc(`${b("Fine tune height of annotate desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.annotateTop)?void 0:e.toString())||"0").setPlaceholder("Example: 0").onChange((t=>{this.plugin.settings.annotateTop=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Fine tune height of annotate")}`).setDesc(`${b("Fine tune height of annotate desc one")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.annotateBottom)?void 0:e.toString())||"0").setPlaceholder("Example: 0").onChange((t=>{this.plugin.settings.annotateBottom=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Decode URI pdf link")}`).setDesc(`${b("Decode URI pdf link desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.isDecodeURl).onChange((t=>{this.plugin.settings.isDecodeURl=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Auto create node when annotate")}`).setDesc(`${b("Auto create node when annotate desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.autoCreateNodeWhenAnnotate).onChange((t=>{this.plugin.settings.autoCreateNodeWhenAnnotate=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use custom short cut")}`).setDesc(`${b("Use custom short cut desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useCustomShortcut).onChange((t=>{this.plugin.settings.useCustomShortcut=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap.useCustomShortcut=t)}))}))})),new d.Setting(t).setName(`${b("PDF cache folder")}`).setDesc(`${b("PDF cache folder desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.cacheFolder)?void 0:e.toString())||"").setPlaceholder("cache").onChange((t=>{this.plugin.settings.cacheFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Folder of paste image")}`).setDesc(`${b("Folder of paste image desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.pasteFolder)?void 0:e.toString())||"").setPlaceholder("asset").onChange((t=>{this.plugin.settings.pasteFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Only copy annotate link")}`).setDesc(`${b("Only copy annotate link desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.onlyCopyLink).onChange((t=>{this.plugin.settings.onlyCopyLink=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Auto set node to center when tab node of mindmap")}`).setDesc(`${b("Auto set node to center when tab node of mindmap desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.autoCenter).onChange((t=>{this.plugin.settings.autoCenter=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap._autoCenter=t)}))}))})),new d.Setting(t).setName(`${b("Auto open search box")}`).setDesc(`${b("Auto open search box desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.autoOpenSearch).onChange((t=>{this.plugin.settings.autoOpenSearch=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Add collapse node mark")}`).setDesc(`${b("Add collapse node mark desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.addCollapseNodeMark).onChange((t=>{this.plugin.settings.addCollapseNodeMark=t,this.plugin.saveData(this.plugin.settings),this.app.workspace.getLeavesOfType(_M).forEach((e=>{var i=e.view;i&&i.mindmap&&(i.mindmap.addCollapseNodeMark=t)}))}))})),new d.Setting(t).setName(`${b("Only use obsidian folder for pdfjs plugin")}`).setDesc(`${b("Only use obsidian folder for pdfjs plugin desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.onlyUseObsidianFolder).onChange((t=>{this.plugin.settings.onlyUseObsidianFolder=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("ChatGTP appkey")}`).setDesc(`${b("ChatGTP appkey desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.chatGTPKey)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.chatGTPKey=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("ChatGTP model")}`).setDesc(`${b("ChatGTP model desc")}`).addDropdown((t=>{var e;return t.addOption("gpt-3.5-turbo","gpt-3.5-turbo").addOption("gpt-3.5-turbo-1106","gpt-3.5-turbo-1106").addOption("gpt-4","gpt-4").addOption("gpt-4o","gpt-4o").addOption("gpt-4-0125-preview","gpt-4-0125-preview").addOption("gpt-4-1106-preview","gpt-4-1106-preview").addOption("gpt-4-turbo-preview","gpt-4-turbo-preview").setValue((null==(e=this.plugin.settings.chatGTPModel)?void 0:e.toString())||"gpt-3.5-turbo").onChange((t=>{this.plugin.settings.chatGTPModel=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("ProxyServer")}`).setDesc(`${b("ProxyServer desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.proxyServer)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.proxyServer=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use custom ai")}`).setDesc(`${b("Use custom ai")}`).addToggle((t=>{t.setValue(this.plugin.settings.customAi).onChange((t=>{this.plugin.settings.customAi=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("URL for custom ai")}`).setDesc(`${b("URL for custom ai")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.customAiUrl)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.customAiUrl=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Model for custom ai")}`).setDesc(`${b("Model for custom ai")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.customAiModel)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.customAiModel=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Appkey for custom ai")}`).setDesc(`${b("Appkey for custom ai")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.customAiAppKey)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.customAiAppKey=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Annotate template")}`).setDesc(`${b("Annotate template desc")}`).addTextArea((t=>{var e;return t.setValue((null==(e=this.plugin.settings.annotateFormat)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.annotateFormat=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Support translate")}`).setDesc(`${b("Support translate desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useTranslate).onChange((t=>{this.plugin.settings.useTranslate=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Translation engine")}`).setDesc(`${b("Translation engine")}`).addDropdown((t=>{var e;return t.addOption("baidu",b("baidu")).setValue((null==(e=this.plugin.settings.translateType)?void 0:e.toString())||"baidu").onChange((t=>{this.plugin.settings.translateType=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Translate appid")}`).setDesc(`${b("Translate appid desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.translateAppId)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.translateAppId=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Translate secret")}`).setDesc(`${b("Translate secret desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.translateKey)?void 0:e.toString())||"").setPlaceholder("").onChange((t=>{this.plugin.settings.translateKey=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Scale speed of mobile version")}`).setDesc(`${b("Scale speed of mobile version desc")}`).addText((t=>{var e;return t.setValue((null==(e=this.plugin.settings.scaleSpeed)?void 0:e.toString())||"5").setPlaceholder("Example: 5").onChange((t=>{this.plugin.settings.scaleSpeed=Number.parseInt(t),this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use File recovery")}`).setDesc(`${b("Use File recovery desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useHistory).onChange((t=>{this.plugin.settings.useHistory=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Use mobile mode")}`).setDesc(`${b("Use mobile mode desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.useMobileMode).onChange((t=>{this.plugin.settings.useMobileMode=t,this.plugin.saveData(this.plugin.settings)}))})),new d.Setting(t).setName(`${b("Close enter key")}`).setDesc(`${b("Close enter key desc")}`).addToggle((t=>{t.setValue(this.plugin.settings.closeEnterKey).onChange((t=>{this.plugin.settings.closeEnterKey=t,this.plugin.saveData(this.plugin.settings)}))}))}}class iN extends d.Plugin{constructor(){super(...arguments),this.mindmapFileModes={},this._loaded=!1,this.timeOut=null,this.colors=[],this.statusBarItemEl=null,this.window=null}async onload(){await this.loadSettings();const t=this.addStatusBarItem();this.statusBarItemEl=t;for(var e=0;e<150;e++)this.colors.push(Cl());this.appKeyup=this.appKeyup.bind(this),this.appKeydown=this.appKeydown.bind(this),this.addCommand({id:"Create New MindMap",name:`${b("Create new mindmap")}`,callback:()=>{var t;if(this.app.workspace.activeLeaf){const e=this.app.fileManager.getNewFileParent((null==(t=this.app.workspace.getActiveFile())?void 0:t.path)||"");e&&this.newMindMap(e)}}}),this.addCommand({id:"Create New outline",name:`${b("Create new outline")}`,callback:()=>{var t;if(this.app.workspace.activeLeaf){const e=this.app.fileManager.getNewFileParent((null==(t=this.app.workspace.getActiveFile())?void 0:t.path)||"");e&&this.newOutline(e)}}}),this.addCommand({id:"Toggle show node image",name:`${b("Show node image")}`,mobileOnly:!1,callback:()=>{var t=this.app.workspace.getActiveViewOfType(tN).mindmap,e=t.selectNode||t.getSelectNodes[0];if(e){var i=e.editDom||e.textDom;if(i){var n=i.querySelector("img");if(n){var s=n.getAttribute("src");s&&t.emit("showImage",{image:s})}}}}}),this.addCommand({id:"Close show node image",name:`${b("Close node image")}`,mobileOnly:!1,callback:()=>{var t=document.querySelectorAll(".owl-preview-close");t&&t.length&&t.forEach((t=>{t.click()}))}}),this.addCommand({id:"Auto adapt screen",name:`${b("Auto adapt screen")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.autoadaptScreen()}}),this.addCommand({id:"Set node resize box",name:`${b("Set node resize box")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;if("rich"==e._mode){var i=e.selectNode||e.getSelectNodes()[0];i&&i.setResizeFrame()}}}}),this.addCommand({id:"reset node size",name:`${b("Reset node size")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap,i=e.selectNode||e.getSelectNodes()[0];i&&i.data.size&&i.data.size.w&&e.execute("changeNodeSize",{node:i,removeSize:!0,data:{nodeWidth:100,nodeHeight:100}})}}}),this.addCommand({id:"Enter to read mode",name:`${b("Enter read mode")}`,callback:()=>{console.log(`${b("Enter read mode")}`);const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.setReadMode()}}),this.addCommand({id:"Enter demonstration mode",name:`${b("Enter demonstration mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.setPPTMode()}}),this.addCommand({id:"Auto scale demonstration page",name:`${b("Auto scale demonstration page")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;e.autoScalePpt&&e.autoScalePpt()}}}),this.addCommand({id:"Close demonstration mode",name:`${b("Exit demonstration mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);null!=t&&t.mindmap.closePPTMode()}}),this.addCommand({id:"Generate mind maps by chatGTP",name:`${b("Generate mind maps by chatGTP")}`,mobileOnly:!1,callback:async()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;if(e){var i=e.selectNode||e.root;if("callout"==i.nodeType||"relateLink"==i.nodeType)return;if(i){var n=i.getData().text,s=d.moment.locale();if(n){if("zh-cn"==s)var o=`请使用中文,以"${n}"为主题返回格式化为 OPML 2.0 大纲示例`;else o=`Please use english, provide me with an hierarchical outline example in XML based OPML 2.0 format on the topic of "${n}"`;new d.Notice(b("ChatGTPLoading"));try{if(this.settings.customAi){var r=this.settings.customAiUrl,a=this.settings.customAiAppKey,h=this.settings.customAiModel;if(!r||!a||!h)return}else r="",a=this.settings.chatGTPKey,h=this.settings.chatGTPModel;var l=(await Hd(a,{model:h||this.settings.chatGTPModel||"gpt-3.5-turbo",messages:[{role:"user",content:`${o}`}]},r)).choices[0];if(l&&l.message&&l.message.content){var c=Jd(l.message.content);if(!c.length)return;c.forEach((t=>{e.build_with_json(i,t)})),e.refresh(),setTimeout((()=>{var t;null==(t=e.view)||t.mindMapChange()}),200)}else new d.Notice(b("ChatGTPError"))}catch(u){new d.Notice(b("ChatGTPError"))}}}}}}}),this.addCommand({id:"Generate mind maps by Q&A of chatGTP ",name:`${b("Generate mind maps by Q&A of chatGTP")}`,mobileOnly:!1,callback:async()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(null!=t){var e=t.mindmap;if(e){var i=e.selectNode||e.root;if("callout"==i.nodeType||"relateLink"==i.nodeType||"wireFrame"==i.nodeType)return;if(i){var n=i.getData().text,s=d.moment.locale();if(n){if("zh-cn"==s)var o=`请使用中文,以"${n}"为主题返回格式化为 markdown 格式的文本`;else o=`Please use english, provide me with an answer in markdown format on the topic of "${n}"`;new d.Notice(b("ChatGTPLoading"));try{if(this.settings.customAi){var r=this.settings.customAiUrl,a=this.settings.customAiAppKey,h=this.settings.customAiModel;if(!r||!a||!h)return}else if(r="",a=this.settings.chatGTPKey,h=this.settings.chatGTPModel,!a)return;var l=(await Hd(a,{model:h||this.settings.chatGTPModel||"gpt-3.5-turbo",messages:[{role:"user",content:`${o}`}]},r)).choices[0];if(l&&l.message&&l.message.content){var c=function(t){t=t.trim();var e=[],i={id:KM(),text:t.trim()};return e.push(i),e}(l.message.content);if(!c.length)return;c.forEach((t=>{e.build_with_json(i,t)})),e.refresh(),setTimeout((()=>{var t;null==(t=e.view)||t.mindMapChange()}),200)}else new d.Notice(b("ChatGTPError"))}catch(u){new d.Notice(b("ChatGTPError"))}}}}}}}),this.addCommand({id:"Toggle to markdown or mindmap",name:`${b("Toggle mardkown/mindmap")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN),e=this.app.workspace.getActiveViewOfType(d.MarkdownView);null!=t?(this.mindmapFileModes[t.leaf.id||t.file.path]="markdown",this.setMarkdownView(t.leaf)):null!=e&&(this.mindmapFileModes[e.leaf.id||e.file.path]=_M,this.setMindMapView(e.leaf))}}),this.addCommand({id:"Change basic to table mode",name:`${b("Change basic to table mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e&&"basic"==t._mode){t.forceMindMapMode=!1,t.isShowOutline=!1,t.isShowTable=!0;var i=e.getMarkdown(),n=t.mdToData(i);t.showTable(n)}}}}),this.addCommand({id:"Change basic to outline mode",name:`${b("Change basic to outline mode")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;e&&"basic"==t._mode&&(e.clear(),t.mindmapContainer.innerHTML="",e=null,t.forceMindMapMode=!1,t.showOutline())}}}),this.addCommand({id:"Copy Node",name:`${b("Copy node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;navigator.clipboard.writeText("");var i=e.selectNode;if(i){var n=e.copyNode(i);navigator.clipboard.writeText(n)}}}}),this.addCommand({id:"Paste Node",name:`${b("Paste node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;navigator.clipboard.readText().then((t=>{e.pasteNode(t)}))}}}),this.addCommand({id:"Cover Node",name:`${b("Cover node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.getSelectNodes();i&&i.length&&e.execute("setTextCover",{nodes:i,flag:!0})}}}}),this.addCommand({id:"Cancel Cover Node",name:`${b("Cancel cover node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.getSelectNodes();i&&i.length&&e.execute("setTextCover",{nodes:i,flag:!1})}}}}),this.addCommand({id:"Toggle search box",name:`${b("Toggle search box")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;e&&(e._searchDom?e.closeSearch():e.createSearchDom())}}}),this.addCommand({id:"Reset to default theme",name:`${b("Reset to default theme")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;e&&e.removeTheme()}}}),this.addCommand({id:"Change layout to mindmap",name:`${b("Change layout to mindmap")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"mindmap"})}}}),this.addCommand({id:"Change layout to right",name:`${b("Change layout to right")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"right"})}}}),this.addCommand({id:"Change layout to left",name:`${b("Change layout to left")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"left"})}}}),this.addCommand({id:"Change layout to tree",name:`${b("Change layout to tree")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"down"})}}}),this.addCommand({id:"Change layout to fishRight",name:`${b("Change layout to fishRight")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"fishRight"})}}}),this.addCommand({id:"Change layout to fishLeft",name:`${b("Change layout to fishLeft")}`,callback:()=>{let t=this.app.workspace.activeLeaf;if(t.view.getViewType()==_M&&t.view.mindmap){var e=t.view.mindmap.selectNode;e&&"rich"==e.mindmap._mode&&t.view.mindmap.execute("changeLayout",{node:e,direct:"fishLeft"})}}}),this.addCommand({id:"Get vault path",name:`${b("Get path of vault")}`,mobileOnly:!1,callback:()=>{var t=this.app.vault.adapter.basePath;new d.Notice(t),navigator.clipboard.writeText(""),navigator.clipboard.writeText(t)}}),this.addCommand({id:"Set pdf js plugin folder path",name:`${b("Set pdf js path")}`,mobileOnly:!1,callback:()=>{var t=this.app.vault.getMarkdownFiles();if(t.length){var e=t[0],i=this.app.vault.getResourcePath(e);i=decodeURIComponent(i);var n=(i=d.normalizePath(i)).split("?")[0];if(n&&n.length){var s=n.lastIndexOf(e.path);if(s>-1){if(n=n.substring(0,s),d.Platform.isDesktop)var o="app:/local/";else o="_capacitor_file_";var r=n.indexOf(o);n=n.substring(r+o.length),d.Platform.isAndroidApp?this.settings.pdfjsAndriodPath=n+"andriod/pdfjs":d.Platform.isIosApp?this.settings.pdfjsIosPath=n+"ios/pdfjs":d.Platform.isDesktop&&(d.Platform.isMacOS?this.settings.pdfjsMacPath=n+".obsidian/pdfjs":this.settings.pdfjsPath=n+".obsidian/pdfjs"),this.saveData(this.settings),new d.Notice(b("Set up pdf js path success"))}}else new d.Notice("Please create a md file,then try it again")}}}),this.addCommand({id:"Change basic mode to rich mode",name:`${b("Change basic mode to rich mode")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.basicToRich()}}),this.addCommand({id:"Change rich mode to basic mode",name:`${b("Change rich mode to basic mode")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.richToBasic()}}),this.addCommand({id:"Export to html",name:`${b("Export to html")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.exportToPng()}}),this.addCommand({id:"Export mindmap to pdf",name:`${b("Export to pdf")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap&&("svg"==this.settings.mindmapRenderType?t.exportToPdf():t.exportToPdf1())}}),this.addCommand({id:"Export mindmap to pdf (old version)",name:`${b("Export to pdf (old version)")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap&&("svg"==this.settings.mindmapRenderType?t.exportToPdf(!0):t.exportToPdf1(!0))}}),this.addCommand({id:"Export mindmap to xmind zen",name:`${b("Export to xmind zen")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap&&t.exportXmind()}}),this.addCommand({id:"Use new version of pdfjs",name:`${b("Use new version of pdfjs")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t._haveOpenPdf&&t.setPdfjsVersion(!0)}}),this.addCommand({id:"Use old version of pdfjs",name:`${b("Use old version of pdfjs")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t._haveOpenPdf&&t.setPdfjsVersion(!1)}}),this.addCommand({id:"Collapse to root",name:`${b("Expand to first root level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.collapse(),t.clearCacheData()}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 1",name:`${b("Expand to first node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>0?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 2",name:`${b("Expand to second node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>1?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 3",name:`${b("Expand to third node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>2?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 4",name:`${b("Expand to fourth node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>3?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level 5",name:`${b("Expand to fifth node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&(e.traverseBF((t=>{t.getLevel()>4?t.isExpand&&!t.isHide&&(t.collapse(),t.clearCacheData()):t.isExpand||(t.expand(),t.clearCacheData())}),n),e.refresh(),t.mindMapChange())}}}}),this.addCommand({id:"Expand to node level all",name:`${b("Expand to all node level")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode||e.root;if(i){if("basic"==e._mode)var n=i;else n=e.getRootByNode(i);n&&e.traverseBF((t=>{t.expand(),t.clearCacheData()}),n),e.refresh(),t.mindMapChange()}}}}),this.addCommand({id:"Copy node link",name:`${b("Copy node link")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.selectNode;if(i){const{text:s,id:o}=i.getData();var n=`${s} [🔖](obsidian://jump-to-pdf?md=${encodeURIComponent(e.path)}&node=${encodeURIComponent(o)})`;t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(n)}}}}}),this.addCommand({id:"Copy node link only",name:`${b("Copy node link only")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap;if(e){var i=e.selectNode;if(i){const{id:s}=i.getData();var n=`obsidian://jump-to-pdf?md=${encodeURIComponent(e.path)}&node=${encodeURIComponent(s)}`;t.win.navigator.clipboard.writeText(""),t.win.navigator.clipboard.writeText(n)}}}}}),this.addCommand({id:"Add child node",name:`${b("Add child node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;i&&(i.isExpand||i.expand(),i.mindmap.clearSelectNode(),e.execute("addChildNode",{parent:i}),e._hideMenu())}}}),this.addCommand({id:"Add brother node",name:`${b("Add brother node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;if(i){if(i.isExpand||i.expand(),!i.parent)return;e.execute("addSiblingNode",{parent:i.parent}),e._hideMenu()}}}}),this.addCommand({id:"Add Parent Node",name:`${b("Add Parent Node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;i&&i.parent&&(e.execute("addParentNode",{selectNode:i}),e._hideMenu())}}}),this.addCommand({id:"Edit node",name:`${b("Edit node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap.selectNode;e&&(e.isEdit||e.edit())}}}),this.addCommand({id:"Cancel edit node",name:`${b("Cancel edit node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap.selectNode;e&&e.isEdit&&e.cancelEdit()}}}),this.addCommand({id:"Delete node",name:`${b("Delete node")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);if(t){var e=t.mindmap,i=e.selectNode;i&&(e.execute("deleteNodeAndChild",{node:i}),e._hideMenu())}}}),this.addCommand({id:"Undo",name:`${b("Undo")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap.undo()}}),this.addCommand({id:"Redo",name:`${b("Redo")}`,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.mindmap.redo()}}),this.addCommand({id:"File recovery",name:`${b("Toggle History")}`,mobileOnly:!1,callback:()=>{const t=this.app.workspace.getActiveViewOfType(tN);t&&t.showHistory()}}),this.registerView(_M,(t=>new tN(t,this))),this.registerEvents(),this.addMarkdownPostProcessor(),this.registerMonkeyAround(),this.addSettingTab(new eN(this.app,this)),this.settings.openCodeBlock&&(this.registerMarkdownCodeBlockProcessor("mindmap",this.codeBlockProcessor.bind(this)),this.registerMarkdownCodeBlockProcessor("markmind",this.markmindBlockProcessor.bind(this))),this.settings.openProtocol&&this.settings.openProtocol>0&&this.settings.protocol&&this.registerObsidianProtocol()}buildHead(){this.head=createEl("head"),this.head.createEl("meta",{attr:{charset:"utf-8"}}),this.head.createEl("meta",{attr:{name:"viewport",content:"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"}}),this.head.createEl("link",{href:"app://obsidian.md/app.css",type:"text/css",attr:{rel:"stylesheet"}}),this.head.createEl("script",{attr:{src:"app://obsidian.md/app.js"}});for(const t of this.app.customCss.enabledSnippets)this.head.createEl("link",{href:this.app.vault.adapter.getResourcePath(`${this.app.customCss.getSnippetsFolder()}/${t}.css`),type:"text/css",attr:{rel:"stylesheet"}});for(const t of Object.keys(this.app.plugins.plugins))this.app.plugins.plugins[t]._loaded&&(this.head.createEl("link",{href:this.app.vault.adapter.getResourcePath(`${this.app.plugins.getPluginFolder()}/${t}/styles.css`),type:"text/css",attr:{rel:"stylesheet"}}),"obsidian-markmind"==t&&this.head.createEl("script",{attr:{src:this.app.vault.adapter.getResourcePath(`${this.app.plugins.getPluginFolder()}/${t}/main.js`)}}));return this.head}get theme(){return this.app.vault.adapter.getResourcePath(`${this.app.customCss.getThemeFolder()}/${this.app.customCss.theme}.css`)}get mode(){var t,e;return"obsidian"==(null!=(e=null==(t=this.app.vault.config)?void 0:t.theme)?e:"obsidian")?"theme-dark":"theme-light"}async loadFile(t,e){if(!(this.app.vault.adapter instanceof d.FileSystemAdapter))return;let i;"md"==t.extension&&(i=await this.loadNote(t,e),this.window||(this.window=new remote.BrowserWindow({webPreferences:{nodeIntegration:!0,webSecurity:!1,contextIsolation:!1}}),this.window.menuBarVisible=!1,this.window.on("close",(()=>{this.openFile=null,this.window=null}))),this.window.setTitle(t.name),await this.window.loadURL(i),this.window.moveTop())}async loadNote(t,e){this.openFile=t.path;const i=createEl("html");return this.head.createEl("script",{attr:{id:"mindmapData","data-json":e}}),i.append(this.head),i.createEl("body",{cls:this.mode}).createDiv("app-container").createDiv("horizontal-main-container").createDiv("workspace").createDiv("workspace-split mod-vertical mod-root").createDiv("workspace-leaf mod-active").createDiv("workspace-leaf-content").createDiv("view-content").createDiv("print-to-pdf"),await this.app.vault.adapter.write(`${this.app.plugins.getPluginFolder()}/file.html`,i.outerHTML),i.detach(),this.app.vault.adapter.getResourcePath(`${this.app.plugins.getPluginFolder()}/file.html`)}async markmindBlockProcessor(t,e,i){try{var n=JSON.parse(t.trim());if(n.path){const t=d.parseLinktext(n.path);if(!t)return;const a=t.subpath.startsWith("#^")?t.subpath.substr(2):null,h=this.app.metadataCache.getFirstLinkpathDest(t.path,i.sourcePath);if(h&&"md"==h.extension){var s=this.app.metadataCache.getFileCache(h);if(this.isMindmap(s)&&this.isMindmapRichMode(s))sp({plugin:this,app:this.app},this.app,h,e,null,this.colors,this.settings,(t=>{if(t&&a){var e=t.getNodeById(a);e&&(t.clearSelectNode(),t.showNode(e))}}));else{var o=s&&s.frontmatter;if(o)var r=!!o["display-mode"]&&"table"==o["display-mode"];np({plugin:this,app:this.app},this.app,h,e,null,this.colors,this.settings,(t=>{if(t&&a){var e=t.getNodeById(a);e&&(t.clearSelectNode(),t.showNode(e))}}),0,r)}}}}catch(Cn){var a=document.createElement("pre");a.innerText=t,e.appendChild(a)}}async codeBlockProcessor(t,e,i){try{var n=t.trim();if(!n)throw Error("empty text");const{root:r}=VM.transform(n),a=XM(r);a.isRoot=!0,a.useScale=!1;var s=document.createElement("div");s.classList.add("mm-mindmap-container"),s.style.visibility="hidden",e.appendChild(s);var o=new lp(a,s,this.settings,!1);o.path=i.sourcePath,o._mode="basic",o.colors=this.colors,o.init(),setTimeout((()=>{o.refresh(),o.center(),s.style.visibility="visible"}),1200)}catch(a){var r=document.createElement("pre");r.innerText=t,e.appendChild(r)}}async _openPDFAnnotation(t){if(!this.settings.supportPDF)return;const e=this.app.workspace.getLeavesOfType(_M);if(e.length){var i=null;if(e.forEach((t=>{t.view&&t.view._haveOpenPdf&&(i=t.view)})),i)await i.showAnnotate(t.annotate,t.pdf);else{if(t.pdf.startsWith("file://"))var n=t.pdf;else n=t.pdf.startsWith("http")?t.pdf:d.normalizePath(t.pdf);await this.openPDfView(n,t.annotate)}}else n=t.pdf.startsWith("file://")||t.pdf.startsWith("http")?t.pdf:d.normalizePath(t.pdf),await this.openPDfView(n,t.annotate)}registerObsidianProtocol(){this.registerObsidianProtocolHandler(`${this.settings.protocol}`,(async t=>{var e,i;const n=t;for(const d in n)n[d]=decodeURIComponent(n[d]);if(n.id&&n.annotate){var s=this.getAnnoateById(n.id);if(s){var o=null==(e=this.app.metadataCache.getFileCache(s))?void 0:e.frontmatter;if(o&&o["annotate-target"])return n.pdf=o["annotate-target"],void(await this._openPDFAnnotation(n))}else new d.Notice(b("Not find md file"))}if(n.pdf&&n.annotate)await this._openPDFAnnotation(n);else if(n.pdf)n.pdf.endsWith(".pdf")&&this.app.workspace.openLinkText(n.pdf,"");else if(n.md&&n.node){var r=decodeURIComponent(n.md),a=decodeURIComponent(n.node);Object.assign(window,{"show-mindmap-node":a});const t=this.app.workspace.getLeavesOfType(_M);if(t.length){var h=null;if(t.forEach((t=>{t.view&&t.view.file&&t.view.file.path==r&&(h=t.view)})),h)if(h.mindmap){var l=h.mindmap.getNodeById(a);h.mindmap.showNode(l),Object.assign(window,{"show-mindmap-node":""})}else h.app.workspace.openLinkText(r,(null==(i=h.file)?void 0:i.path)||"",!0);else(h=t[0].view).app.workspace.openLinkText(r,"",!0)}else this.app.workspace.openLinkText(r,"",!0)}else n.md&&this.app.workspace.openLinkText(decodeURIComponent(n.md),"",!0)}))}getAnnoateById(t){var e,i=null,n=this.app.vault.getMarkdownFiles();for(let o of n){var s=null==(e=this.app.metadataCache.getFileCache(o))?void 0:e.frontmatter;if(s&&s.id&&s.id==t){i=o;break}}return i}async getAnnoate(t){var e,i=null,n=this.app.vault.getMarkdownFiles(),s=encodeURI(t),o=encodeURIComponent(t);for(let a of n){var r=null==(e=this.app.metadataCache.getFileCache(a))?void 0:e.frontmatter;if(r&&r["annotate-target"]&&(r["annotate-target"]==t||r["annotate-target"]==s||r["annotate-target"]==o)){i=a;break}}return i}async openPDfView(t,e){var i=t.substr(0,t.length-4)+"-annotate.md",n=await this.getAnnoate(t);if(Object.assign(window,{waitPdfId:e||""}),n)await this.app.workspace.openLinkText(n.path,"","split");else{var s=`---\nid: ${KM()}\nannotate-target: ${t}\n---\n`;Object.assign(window,{waitPdfId:""}),await this.app.vault.adapter.write(i,s),setTimeout((()=>{this.app.workspace.openLinkText(i,"","split")}),200)}}async openMindmapView(t,e){Object.assign(window,{onlyPdf:!0}),t?(await this.app.workspace.openLinkText(t.basename,"","split"),await this.setCursor(e)):(await this.newMindMap(),await this.setCursor(e))}async setCursor(t){const e=this.app.workspace.getActiveViewOfType(tN);e&&setTimeout((()=>{e.onlyPdf=!0,e.setOnlyPdf(),e.showAnnotate(t.annotate,t.pdf)}),800)}_getMindmapMd(){var t,e=null,i=this.app.vault.getMarkdownFiles();for(let s of i)if("md"==s.extension){var n=null==(t=this.app.metadataCache.getFileCache(s))?void 0:t.frontmatter;n&&n[Al]&&(e=s)}return e}onunload(){this.window&&this.window.close(),this.app.workspace.detachLeavesOfType(_M)}async newOutline(t){var e;const i=t||this.app.fileManager.getNewFileParent((null==(e=this.app.workspace.getActiveFile())?void 0:e.path)||"");try{const t=await this.app.fileManager.createNewMarkdownFile(i,`${b("Untitled mindmap")}`);await this.app.vault.modify(t,wl);var n={type:_M,state:{file:t.path}};setTimeout((async()=>{await this.app.workspace.getLeaf().setViewState(n)}),100)}catch(s){console.error("Error creating outline board:",s)}}async newMindMap(t,e=""){var i;const n=t||this.app.fileManager.getNewFileParent((null==(i=this.app.workspace.getActiveFile())?void 0:i.path)||"");try{const t=await this.app.fileManager.createNewMarkdownFile(n,`${b("Untitled mindmap")}`);"basic"!=e&&"markdown"!=e||await this.app.vault.modify(t,((t="markdown",e="")=>{let i=["---","",`${Al}: ${t}`,""];return e&&i.push(`mindmap-layout: ${e}`),i=i.concat(["---","",""]),"basic"==t||"markdown"==t?i.join("\n")+"# MainTopic":i.join("\n")})(e,this.settings.basicLayoutName||"")),"basic"!=this.settings.mindmapmode||e?e&&"rich"!=e||await this.app.vault.modify(t,xl):await this.app.vault.modify(t,yl);var s={type:_M,state:{file:t.path}};setTimeout((async()=>{await this.app.workspace.getLeaf().setViewState(s)}),100)}catch(o){console.error("Error creating mindmap board:",o)}}async loadSettings(){this.settings=Object.assign({canvasSize:8e3,headLevel:2,fontSize:16,background:"transparent",layout:"mindmap",layoutDirect:"mindmap",protocol:"jump-to-pdf",registerPdfEvent:!0,viewerTheme:2,mindmapmode:"basic",parseMindMap:!0,annotateTop:0,annotateBottom:0,showNodeBoard:!0,useCustomShortcut:!1,highlightFormat:'\nPage:{{page}}\n:{{highlightText}}\nComment:{{comment}}\n[📌]({{link}})\n^{{id}}\n'},await this.loadData()),this.settings.pdfjsPath&&(d.Platform.isDesktopApp?Object.assign(window,{pdf_plugin_path:this.settings.pdfjsPath}):d.Platform.isAndroidApp?Object.assign(window,{pdf_plugin_path:this.settings.pdfjsAndriodPath||this.settings.pdfjsPath}):d.Platform.isIosApp&&Object.assign(window,{pdf_plugin_path:this.settings.pdfjsIosPath||this.settings.pdfjsPath}))}async saveSettings(){await this.saveData(this.settings)}async setMarkdownView(t){await t.setViewState({type:"markdown",state:t.view.getState(),popstate:!0},{focus:!0})}async setMindMapView(t){await t.setViewState({type:_M,state:t.view.getState(),popstate:!0})}registerEvents(){this.registerEvent(this.app.workspace.on("file-menu",((t,e,i,n)=>{if(e instanceof d.TFolder)return t.addItem((t=>{t.setTitle(`${b("New mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e)))})),t.addItem((t=>{t.setTitle(`${b("New basic mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e,"basic")))})),t.addItem((t=>{t.setTitle(`${b("New markdown mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e,"markdown")))})),void t.addItem((t=>{t.setTitle(`${b("New rich mindmap board")}`).setIcon("document").onClick((()=>this.newMindMap(e,"rich")))}));if(n&&"markdown"==this.mindmapFileModes[n.id||e.path]){const i=this.app.metadataCache.getFileCache(e);if((null==i?void 0:i.frontmatter)&&i.frontmatter["annotate-target"]){var s=i.frontmatter["annotate-target"];s=s.toLowerCase();var o;o=s.endsWith(".epub")?`${b("Annotate EPUB")}`:`${b("Annotate PDF")}`,t.addItem((t=>{t.setTitle(o).setIcon("document").onClick((()=>{this.mindmapFileModes[n.id||e.path]=_M,this.setMindMapView(n)}))})).addSeparator()}(null==i?void 0:i.frontmatter)&&i.frontmatter[Al]&&t.addItem((t=>{t.setTitle(`${b("Open as mindmap board")}`).setIcon("document").onClick((()=>{this.mindmapFileModes[n.id||e.path]=_M,this.setMindMapView(n)}))})).addSeparator()}if(e.path&&e.path.toLowerCase().endsWith(".md")){const i=this.app.metadataCache.getFileCache(e);if((null==i?void 0:i.frontmatter)&&i.frontmatter["mindmap-plugin"])return;if((null==i?void 0:i.frontmatter)&&i.frontmatter["annotate-target"])return;t.addItem((t=>{t.setTitle(`${b("Create Mindmap From md")}`).setIcon("document").onClick((async()=>{var t=await this.app.vault.adapter.read(e.path),n=e.path.substr(0,e.path.length-3)+"-mindmap.md";if(i&&i.frontmatterPosition){var s=i.frontmatterPosition.end;if(s)var o=s.offset,r=t.substr(o,t.length)}else r=t;if(r&&r.trim()){var a=["---","","mindmap-plugin: markdown","","---"].join("\n")+"\n"+r;await this.app.vault.adapter.write(n,a),setTimeout((()=>{this.app.workspace.openLinkText(n,"","split")}),1e3)}}))}))}}))),this.registerEvent(this.app.metadataCache.on("changed",(t=>{this.app.workspace.getLeavesOfType(_M).forEach((e=>{const i=e.view;i instanceof tN&&i.onFileMetadataChange(t)}))}))),this.registerEvent(this.app.vault.on("rename",((t,e)=>{this.app.workspace.getLeavesOfType(_M).forEach((i=>{const n=i.view;n instanceof tN&&n.onFileRename(t,e)}))}))),this.registerDomEvent(document,"keyup",this.appKeyup),this.registerDomEvent(document,"keydown",this.appKeydown)}appKeyup(t){var e,i,n,s,o,r;if(t.target&&t.target instanceof HTMLElement&&(t.target.closest("input")||t.target.closest("textarea")))return;"Tab"==t.key&&t.preventDefault();const a=this.app.workspace.getActiveViewOfType(tN);if(a){var h=a.mindmap;if(h){var l=t.keyCode||t.which||t.charCode,d=t.ctrlKey||t.metaKey,c=t.shiftKey;if(!h.useHoverEdit){if(!d&&!c){if(38==l||"ArrowUp"==t.key){var u=h.selectNode;if(h.isEditNote)return;if(h.showFilter){if(t.preventDefault(),m=h._linkboard.querySelector(".mm-file-name.active")){var p=m.previousSibling;p&&(p.classList.add("active"),m.classList.remove("active"),(f=p.getAttribute("data-path"))&&h._completeBlock(f))}return}if(u&&!u.isEdit){if(d)return;return void h._selectNode(u,"up")}}if(40==l||"ArrowDown"==t.key){if(h.isEditNote)return;if(h.showFilter){var m;if(t.preventDefault(),m=h._linkboard.querySelector(".mm-file-name.active")){var f,g=m.nextSibling;g&&(g.classList.add("active"),m.classList.remove("active"),(f=g.getAttribute("data-path"))&&h._completeBlock(f))}return}if((u=h.selectNode)&&!u.isEdit){if(d)return;return void h._selectNode(u,"down")}}if(39==l||"ArrowRight"==t.key){if(h.isEditNote)return;if(h.isPlayPpt)return void h.nextPpt();if((u=h.selectNode)&&!u.isEdit)return void h._selectNode(u,"right")}if(37==l||"ArrowLeft"==t.key){if(h.isEditNote)return;if(h.isPlayPpt)return void h.prevPpt();if((u=h.selectNode)&&!u.isEdit)return void h._selectNode(u,"left")}if("["==t.key&&(t.preventDefault(),h.selectNode)){if(h._doubleMark<1)h._doubleMark++;else{h._doubleMark=0;var v=((null==(e=h.el)?void 0:e.win)||(null==(i=h.contentEL)?void 0:i.win)||window).getSelection(),A=v.anchorNode;A.closest||(A=A.parentElement);var y=A.closest(".cm-mindmap-node")||A.closest(".mm-node");if(!y)return;if(y!=(h.selectNode.containEl||h.selectNode.iNode.containEl))return;var x=v.getRangeAt(0),w=(null==(n=h.el)?void 0:n.doc)||(null==(s=h.contentEL)?void 0:s.doc)||document;x.insertNode(w.createTextNode("]]")),v.collapseToStart()}return}if(h.selectNode&&h.selectNode.isEdit){u=h.selectNode;var b=h.selectNode.textDom||(null==(o=h.selectNode.iNode)?void 0:o.textDom);b||(b=h.selectNode.editDom||(null==(r=h.selectNode.iNode)?void 0:r.editDom));var E=function(t){var e,i=0,n=t.ownerDocument||t.document,s=n.defaultView||n.parentWindow;if(void 0!==s.getSelection){if((e=s.getSelection()).rangeCount>0){var o=s.getSelection().getRangeAt(0),r=o.cloneRange();r.selectNodeContents(t),r.setEnd(o.endContainer,o.endOffset),i=r.toString().length}}else if((e=n.selection)&&"Control"!=e.type){var a=e.createRange(),h=n.body.createTextRange();h.moveToElementText(t),h.setEndPoint("EndToEnd",a),i=h.text.length}return i}(b),C=b.textContent;u.shouldRender=!0;var k=!1;h._linkboard.style.display="none",h.showFilter=!1;for(var I,B=/\[\[(.+?)\]\]/g,D=0;I=B.exec(C);)if(I.index+2<=E&&I.index+I[1].length+2>=E){k=!0,D=I.index,u.shouldRender=!1,h.showFilter=!0,h._linkboard.style.display="block";break}if(k){h.selectionObj={num:E,index:D,text:I[1]},h._searchFiles(I[1]);var M=h.selectNode.getBoundingRect();if(h._completeNode=h.selectNode,"svg"==h._renderMode)var{x:N,y:L}=h.toPos(M.x,M.y);else var N=M.x,L=M.y;h._linkboard&&(h._linkboard.style.left=N+"px",h._linkboard.style.top=L+M.height+5+"px")}else h._searchFiles("")}if(32!=l){if(h.isEditNote)return;if(17==l||13==l||"Controll"==t.key)return;if("CapsLock"==t.key)return;if("Meta"==t.key)return;if("Escape"==t.key)return;if(9==l||45==l||"Tab"==t.key)return;if(t.code&&"Tab"==t.code)return;if(46==l||"Delete"==t.key||"Backspace"==t.key)return;if("ArrowUp"==t.key||"ArrowRight"==t.key||"ArrowLeft"==t.key||"ArrowDown"==t.key)return;!(u=h.selectNode||h.getSelectNodes()[0])||u.isEdit||this.useCustomShortcut||(t.preventDefault(),u.edit(),u.selectText())}}d&&!c&&(191!=l&&"/"!=t.key||(u=h.selectNode)&&!u.isEdit&&(u.isExpand?u.mindmap.execute("collapseNode",{node:u}):u.mindmap.execute("expandNode",{node:u})),"f"!=t.key&&70!=l||(h._searchDom?h.closeSearch():h.createSearchDom()),69!=l&&"e"!=t.key||h.center(),"r"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"right"}),"l"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"left"}),"u"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"up"}),"d"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"down"}),"m"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"mindmap"}),"j"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"lTree"}),"q"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"fishRight"}),"t"==t.key&&(u=h.selectNode)&&h.execute("changeLayout",{node:u,direct:"fishLeft"}))}}}}appKeydown(t){var e,i;if(t.target&&t.target instanceof HTMLElement&&(t.target.closest("input")||t.target.closest("textarea")))return;"Tab"==t.key&&t.preventDefault();const n=this.app.workspace.getActiveViewOfType(tN);if(n){var s=n.mindmap;if(s){var o=t.keyCode||t.which||t.charCode,r=t.ctrlKey||t.metaKey,a=t.shiftKey;if(!s.useHoverEdit){if(r&&!a){if(86==o||"v"==t.key){if(s.isEditNote)return;if(s._isPasting)return;navigator.clipboard.read().then((t=>{var e=!1;for(let i=0;i{t.text().then((t=>{e=!0,s._pasteText(t),s._isPasting=!0,s._isPastingTime&&clearTimeout(s._isPastingTime),s._isPastingTime=setTimeout((()=>{s._isPasting=!1}),300)}))})).catch((()=>{try{if(!t[i])return;if(!t[i].getType)return;t[i].getType("text/plain").then((t=>{t.text().then((t=>{s.selectNode.isEdit||(e=!0,s.build_with_indent(s.selectNode,t),s._isPasting=!0,s._isPastingTime&&clearTimeout(s._isPastingTime),s._isPastingTime=setTimeout((()=>{s._isPasting=!1}),300))}))})).catch((t=>{console.log(t)}))}catch(n){console.log(n)}}))}}))}if((67==o||"c"==t.key)&&(c=s.selectNode)&&!c.isEdit){var h=c.getData().text;h&&navigator.clipboard.writeText(h)}if("ArrowUp"==t.key&&(c=s.selectNode||s.getSelectNodes()[0])){if(!c.parent)return;(f=(l=c.parent.children).indexOf(c))>0&&((s.event?s.event:s).moveNode(c,l[f-1],"top"),s._hideMenu())}if("ArrowDown"==t.key&&(c=s.selectNode||s.getSelectNodes()[0])){if(!c.parent)return;var l;(f=(l=c.parent.children).indexOf(c))1)return t.preventDefault(),t.stopPropagation(),g[0].mindmap.execute("deleteNodes",{nodes:g}),s._menuDom&&(s._menuDom.style.display="none"),void c.mindmap.emit("hideNodeMenu");if((c=s.selectNode||s.getSelectNodes()[0])&&!c.isEdit)return t.preventDefault(),t.stopPropagation(),c.mindmap.execute("deleteNodeAndChild",{node:c}),s._menuDom&&(s._menuDom.style.display="none"),void c.mindmap.emit("hideNodeMenu")}}if(!r&&!a){if(13==o||"Enter"==t.key){if(s.isEditNote)return;var c=s.selectNode||s.getSelectNodes()[0];if(s.showFilter&&c){t.preventDefault(),t.stopPropagation();var u=s._linkboard.querySelector(".mm-file-name.active");if(u){if("md"==u.querySelector(".mm-file-ext").innerText)var p=u.getAttribute("data-name");else p=u.getAttribute("data-path");s._completeFile(c,p)}return}if(c&&c.isEdit&&!s.useCustomShortcut){if(s.setting&&s.setting.closeEnterKey)return;t.preventDefault(),c.isExpand||c.expand();var m=c.textDom||(null==(e=c.iNode)?void 0:e.textDom);if(m||(m=c.editDom||(null==(i=c.iNode)?void 0:i.editDom)),m.innerText!=b("Sub title"))return void c.cancelEdit()}if(c&&!s.useCustomShortcut){if(s.setting&&s.setting.closeEnterKey)return;if(t.preventDefault(),t.stopPropagation(),c.isExpand||c.expand(),!c.parent)return;var f=c.parent.children.indexOf(c);c.mindmap.clearSelectNode(),c.mindmap.execute("addSiblingNode",{parent:c.parent,index:f+1})}}if((46==o||"Delete"==t.key||"Backspace"==t.key)&&!s.useCustomShortcut){if(s.isEditNote)return;if(s._changeAssistItem){if("induce"==s._changeAssistItem.name){if(s.editNode)return;s.execute("deleteInduce",{summary:s._changeAssistItem})}else"wireFrame"==s._changeAssistItem.name?s.execute("deleteWireFrame",{wireFrame:s._changeAssistItem}):s.execute("deleteRelateLink",{link:s._changeAssistItem});return void(s._changeAssistItem=null)}var g;if((g=s.getSelectNodes()).length>1)return t.preventDefault(),void g[0].mindmap.execute("deleteNodes",{nodes:g});if((c=s.selectNode||s.getSelectNodes()[0])&&!c.isEdit)return t.preventDefault(),t.stopPropagation(),c.mindmap.execute("deleteNodeAndChild",{node:c}),s._menuDom&&(s._menuDom.style.display="none"),void c.mindmap.emit("hideNodeMenu")}if("Escape"==t.key&&!s.useCustomShortcut){if(s.isEditNote)return;return void((c=s.selectNode||s.getSelectNodes()[0])&&c.isEdit&&(c.cancelEdit(),setTimeout((()=>{c.select(),c.mindmap.selectNode=c,c.mindmap.editNode=null}),10)))}if((9==o||45==o||"Tab"==t.key)&&!s.useCustomShortcut){if(t.preventDefault(),s.isEditNote)return;return(c=s.selectNode||s.getSelectNodes()[0])&&!c.isEdit?(c.isExpand||c.expand(),c.mindmap.clearSelectNode(),void c.mindmap.execute("addChildNode",{parent:c})):void(c&&c.isEdit&&(c.cancelEdit(),c.select(),c.mindmap.selectNode=c,c.mindmap.editNode=null))}if(32==o){if(s.isEditNote)return;!(c=s.selectNode||s.getSelectNodes()[0])||c.isEdit||s.useCustomShortcut||(t.preventDefault(),c.edit())}38!=o&&"ArrowUp"!=t.key||s.showFilter&&t.preventDefault(),40!=o&&"ArrowDown"!=t.key||s.showFilter&&t.preventDefault()}r&&!a&&(89!=o||s.useCustomShortcut||(t.preventDefault(),s.redo()),90!=o||s.useCustomShortcut||(t.preventDefault(),s.undo()))}}}}isAnnotationFile(t){return!!(t&&t.frontmatter&&t.frontmatter["annotate-target"])}isMindmap(t){if(t&&t.frontmatter){var e=t.frontmatter["mindmap-plugin"];return"rich"==e||"basic"==e||"markdown"==e}return!1}isMindmapRichMode(t){return!!(t&&t.frontmatter&&t.frontmatter["mindmap-plugin"]&&"rich"==t.frontmatter["mindmap-plugin"])}addMarkdownPostProcessor(){var t=this;this.registerMarkdownPostProcessor((async(e,i)=>{if(i&&i.frontmatter&&i.frontmatter["mindmap-plugin"]&&i.containerEl){const t=this.app.vault.getAbstractFileByPath(i.sourcePath);if(!(t instanceof d.TFile))return;var n=i.containerEl.closest(".internal-embed");if(!n)return;var s=document.createElement("div");if(s.style.position="absolute",s.style.zIndex="-100",s.style.width="1000000px",s.style.height="10000000px",s.style.left="-1000000px",s.style.visibility="hidden",document.body.appendChild(s),"rich"==i.frontmatter["mindmap-plugin"])sp({plugin:this,app:this.app},this.app,t,s||i.containerEl.parentElement,null,this.colors,this.settings,(t=>{setTimeout((()=>{t.toDiv(),s.style.position="",s.style.minWidth="",s.style.width="100%",t.el.style.position="";var e=n.querySelector(".markdown-embed-content");e?e.innerHTML=s.innerHTML:n.innerHTML=s.innerHTML,document.body.removeChild(s)}),500)}));else{if(i.frontmatter)var o=!!i.frontmatter["display-mode"]&&"table"==i.frontmatter["display-mode"];np({plugin:this,app:this.app},this.app,t,s||i.containerEl.parentElement,null,this.colors,this.settings,(t=>{setTimeout((()=>{t.toDiv(),s.style.position="",s.style.minWidth="",s.style.width="100%",t.el.style.position="";var e=n.querySelector(".markdown-embed-content");e?e.innerHTML=s.innerHTML:n.innerHTML=s.innerHTML,document.body.removeChild(s)}),500)}),0,o)}}for(let a of e.querySelectorAll("a.internal-link")){const e=a.getAttribute("href"),n=d.parseLinktext(e);if(!n)return;const s=n.subpath.startsWith("#^")?n.subpath.substr(2):null,o=this.app.metadataCache.getFirstLinkpathDest(n.path,i.sourcePath);if(!o)return;var r=this.app.metadataCache.getFileCache(o);if(this.isMindmap(r)&&(a._file=o,a._metaCache=r,a.onClickEvent((function(e){const i=t.app.workspace.getLeavesOfType(_M);if(i.length){var n=null;if(i.forEach((t=>{t.view&&t.view.mindmap&&t.view.file.path==a._file.path&&(n=t.view)})),n){var o=n.mindmap.getNodeById(s);o&&n.mindmap.showNode(o)}else Object.assign(window,{"show-mindmap-node":s})}}))),this.isAnnotationFile(r)||n.path.endsWith(".pdf")&&this.settings.registerPdfEvent){if(!this.settings.supportPDF)return;a._file=o,a._metaCache=r,a.onClickEvent((function(e){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation();const i=t.app.workspace.getLeavesOfType(_M);var n=t.isAnnotationFile(this._metaCache)?this._metaCache.frontmatter["annotate-target"]:this._file.path;if(i.length){var o=null;if(i.forEach((t=>{t.view&&t.view._haveOpenPdf&&(o=t.view)})),o)o.showAnnotate(s,n);else{if(n.startsWith("file://")||n.startsWith("http"))var r=n;else r=d.normalizePath(n);t.openPDfView(r,s)}}else r=n.startsWith("file://")||n.startsWith("http")?n:d.normalizePath(n),t.openPDfView(r,s)}))}}}))}registerMonkeyAround(){const t=this;this.register(function(t,e){const i=Object.keys(e).map((i=>function(t,e,i){const n=t[e],s=t.hasOwnProperty(e),o=s?n:function(){return Object.getPrototypeOf(t)[e].apply(this,arguments)};let r=i(o);return n&&Object.setPrototypeOf(r,n),Object.setPrototypeOf(a,r),t[e]=a,h;function a(...i){return r===o&&t[e]===a&&h(),r.apply(this,i)}function h(){t[e]===a&&(s?t[e]=o:delete t[e]),r!==o&&(r=o,Object.setPrototypeOf(a,n||Function))}}(t,i,e[i])));return 1===i.length?i[0]:function(){i.forEach((t=>t()))}}(d.WorkspaceLeaf.prototype,{detach:e=>function(){var i;const n=null==(i=this.view)?void 0:i.getState();return(null==n?void 0:n.file)&&t.mindmapFileModes[this.id||n.file]&&delete t.mindmapFileModes[this.id||n.file],e.apply(this)},setViewState:e=>function(i,...n){var s;if(t._loaded&&"markdown"===i.type&&(null==(s=i.state)?void 0:s.file)&&"markdown"!==t.mindmapFileModes[this.id||i.state.file]){const s=t.app.metadataCache.getCache(i.state.file);if((null==s?void 0:s.frontmatter)&&(s.frontmatter[Al]||s.frontmatter["annotate-target"]||s.frontmatter["translate-target"])){const s=l(h({},i),{type:_M});return t.mindmapFileModes[i.state.file]=_M,e.apply(this,[s,...n])}}return e.apply(this,[i,...n])}}))}}module.exports=iN; /* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/obsidian-markmind/manifest.json b/.obsidian/plugins/obsidian-markmind/manifest.json index 9017c9e7..787ef1f8 100644 --- a/.obsidian/plugins/obsidian-markmind/manifest.json +++ b/.obsidian/plugins/obsidian-markmind/manifest.json @@ -1,7 +1,7 @@ { "id": "obsidian-markmind", "name": "Markmind", - "version": "3.4.7", + "version": "3.4.8", "minAppVersion": "0.9.12", "description": "This is a mindmap , outline tool for obsidian.", "author": "Mark", diff --git a/.obsidian/plugins/obsidian-meta-bind-plugin/main.js b/.obsidian/plugins/obsidian-meta-bind-plugin/main.js index b940386a..2864aad1 100644 --- a/.obsidian/plugins/obsidian-meta-bind-plugin/main.js +++ b/.obsidian/plugins/obsidian-meta-bind-plugin/main.js @@ -3,13 +3,12 @@ Meta Bind - Release Build ------------------------------------------- By: Moritz Jung (https://www.moritzjung.dev/) -Time: Sun, 07 Sep 2025 12:47:53 GMT -Version: 1.4.6 +Version: 1.4.8 ------------------------------------------- THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin ------------------------------------------- -Copyright (C) 2025 Moritz Jung +Copyright (C) 2026 Moritz Jung ------------------------------------------- This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. @@ -18,187 +17,125 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY You should have received a copy of the GNU General Public License along with this program. If not, see . */ -"use strict";var cG=Object.create;var km=Object.defineProperty;var fG=Object.getOwnPropertyDescriptor;var pG=Object.getOwnPropertyNames;var mG=Object.getPrototypeOf,dG=Object.prototype.hasOwnProperty;var jn=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),hs=(t,e)=>{for(var r in e)km(t,r,{get:e[r],enumerable:!0})},NT=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of pG(e))!dG.call(t,n)&&n!==r&&km(t,n,{get:()=>e[n],enumerable:!(i=fG(e,n))||i.enumerable});return t};var Ar=(t,e,r)=>(r=t!=null?cG(mG(t)):{},NT(e||!t||!t.__esModule?km(r,"default",{value:t,enumerable:!0}):r,t)),hG=t=>NT(km({},"__esModule",{value:!0}),t);var Bm=jn(Yi=>{"use strict";Object.defineProperty(Yi,"__esModule",{value:!0});Yi.P_HELPERS=Yi.ParserHelpers=Yi.validateRegexFlags=Yi.validateRange=Yi.getIndex=Yi.arrayUnion=void 0;var Cx=Om();function gG(t,e){if(t===void 0&&e===void 0)return;if(t===void 0)return e;if(e===void 0)return t;let r=[...t];for(let i of e)r.includes(i)||r.push(i);return r}Yi.arrayUnion=gG;function vG(t){return t===void 0?-1:t.index}Yi.getIndex=vG;function yG(t,e){if(e{"use strict";Object.defineProperty(Rm,"__esModule",{value:!0});Rm.ParserContext=void 0;var $x=Bm(),Ix=class t{constructor(e,r){this.input=e,this.position=r}moveToPosition(e){return this.position=e,this}copy(){return new t(this.input,{index:this.position.index,column:this.position.column,line:this.position.line})}getPosition(){return{index:this.position.index,column:this.position.column,line:this.position.line}}atEOF(){return this.position.index>=this.input.length}advanceTo(e){if(ei)return r;let o=n===i?(0,$x.arrayUnion)(e.expected,r.expected):e.expected;return r.furthest=e.furthest,r.expected=o,r}};Rm.ParserContext=Ix});var Ji=jn(Um=>{"use strict";Object.defineProperty(Um,"__esModule",{value:!0});Um.P=void 0;var vo=Om(),Lm=Bm(),Fx=class t{static sequence(...e){if(e.length===0)throw new Error("sequence must have at least one parser argument");return new vo.Parser(function(i){let n,o=new Array(e.length);for(let a=0;ae[o](r,n)),Object.defineProperty(i,o,{get:()=>{if(r[o]!==void 0)return r[o];throw new Error(`Can not access rule '${o}' in language. Rule is not yet defined. Try to access it via 'ref'.`)}});for(let o in e)r[o]=e[o](i,n);return r}static or(...e){if(e.length===0)throw new Error("or must have at least one alternative");return new vo.Parser(function(i){let n;for(let o of e){let a=o,s=i.copy(),l=a.p(s);if(n=i.merge(n,l),n.success)return i.moveToPosition(s.position),n}return n})}static separateBy(e,r){return this.separateByNotEmpty(e,r).or(t.succeed([]))}static separateByNotEmpty(e,r){return this.sequenceMap(function(n,o){return o.unshift(n),o},e,r.then(e).many())}static string(e){let r="'"+e+"'";return new vo.Parser(function(n){for(let o=0;o=0&&l<=s.length){let c=s[0],f=s[l];return o.succeedOffset(c.length,f)}let u="expected valid match group (0 to "+s.length+") in "+i;return o.fail(u)}else return o.fail(i)}):new vo.Parser(function(o){let a=o.input.slice(o.position.index),s=e.exec(a);if(s!==null){let l=s[0];return o.succeedOffset(l.length,l)}else return o.fail(i)})}static succeed(e){return new vo.Parser(function(i){return i.succeed(e)})}static fail(e){return new vo.Parser(function(i){return i.fail(e)})}static oneOf(e){return Lm.P_HELPERS.test(function(i){return e.includes(i)}).describe(`one character of '${e}'`)}static noneOf(e){return Lm.P_HELPERS.test(function(i){return!e.includes(i)}).describe(`no character of '${e}'`)}static oneStringOf(e){return this.or(...e.map(r=>this.string(r))).describe(e.map(r=>`'${r}'`).join(" or "))}static manyOf(e){return new vo.Parser(function(i){let n=i.position.index;for(;n{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});Vl.ParsingError=Vl.createParsingErrorMessage=void 0;function CT(t,e,r){let i=`Expected ${e.expected.sort().join(" or ")}`,n=`Parse Failure: ${i} at index ${e.furthest.index}, line ${e.furthest.line}, column ${e.furthest.column}.`;if(r){let a=t.split(` -`)[e.furthest.line-1],s=`${e.furthest.line} | `;n+=` - -${s}${a}`,n+=` -${" ".repeat(e.furthest.column-1+s.length)}^ (${i})`}return n}Vl.createParsingErrorMessage=CT;var kx=class extends Error{constructor(e,r){super(CT(e,r,!0))}};Vl.ParsingError=kx});var Om=jn(zm=>{"use strict";Object.defineProperty(zm,"__esModule",{value:!0});zm.Parser=void 0;var xG=MT(),qo=Ji(),Px=Bm(),ql=yo(),_G=$T(),Bx=class t{constructor(e){this.p=e}tryParse(e){return this.p(new xG.ParserContext(e,{index:0,line:1,column:1}))}parse(e){let r=this.tryParse(e);if(r.success)return r.value;throw new _G.ParsingError(e,r)}or(e){return qo.P.or(this,e)}trim(e){return this.wrap(e,e)}trimString(e){return this.trim(qo.P.string(e))}wrap(e,r){let i=this;return new t(function(o){let a=e.p(o);if(!a.success)return a;let s=o.merge(a,i.p(o));if(!s.success)return s;let l=o.merge(s,r.p(o));return l.success?o.merge(l,o.succeed(s.value)):l})}wrapString(e,r){return this.wrap(qo.P.string(e),qo.P.string(r))}then(e){let r=this;return new t(function(n){let o=r.p(n);if(!o.success)return o;let a=n.merge(o,e.p(n));return a.success,a})}skip(e){let r=this;return new t(function(n){let o=r.p(n);if(!o.success)return o;let a=n.merge(o,e.p(n));return a.success?n.merge(a,n.succeed(o.value)):a})}and(e){return qo.P.sequence(this,e)}many(){let e=this;return new t(function(i){let n,o=i.position.index,a=[];for(;;){let s=i.copy(),l=e.p(s);if(n=i.merge(n,l),n.success){if(s.position.index===o)throw new Error("infinite loop in many() parser detected");i.moveToPosition(s.position),a.push(n.value)}else return i.merge(n,i.succeed(a))}})}repeat(e,r){(0,Px.validateRange)(e,r);let i=this;return new t(function(o){let a,s,l=[],u=0;for(;ur.concat(i),this.repeat(e,e),this.many())}separateBy(e){return qo.P.separateBy(this,e)}separateByNotEmpty(e){return qo.P.separateByNotEmpty(this,e)}result(e){return this.map(()=>e)}map(e){let r=this;return new t(function(n){let o=r.p(n);return o.success&&(o.value=e(o.value)),o})}marker(){return qo.P.sequenceMap(function(r,i,n){return{value:i,range:{from:r,to:n}}},ql.P_UTILS.position(),this,ql.P_UTILS.position())}namedMarker(e){return qo.P.sequenceMap(function(i,n,o){return{value:n,name:e,range:{from:i,to:o}}},ql.P_UTILS.position(),this,ql.P_UTILS.position())}node(e){return qo.P.sequenceMap(function(i,n,o){return e(n,{from:i,to:o})},ql.P_UTILS.position(),this,ql.P_UTILS.position())}followedBy(e){return this.skip(Px.P_HELPERS.followedBy(e))}notFollowedBy(e){return this.skip(Px.P_HELPERS.notFollowedBy(e))}describe(e){typeof e=="string"&&(e=[e]);let r=this;return new t(function(n){let o=r.p(n);return o.expected!==void 0&&o.expected.length!==0&&(o.expected=e),o})}box(e){let r=this;return new t(function(n){var o;let a=r.p(n);return a.expected!==void 0&&a.expected.length!==0&&(a.expected=[`(${(o=a.expected)===null||o===void 0?void 0:o.join(" or ")} as part of ${e})`]),a})}optional(e){return this.or(qo.P.succeed(e))}chain(e){let r=this;return new t(function(n){let o=r.p(n);if(!o.success)return o;let s=e(o.value).p(n);return n.merge(o,s)})}thenEof(){let e=this;return new t(function(i){let n=e.p(i);return n.success?i.atEOF()?n:i.merge(n,i.fail("eof")):n})}memorize(){let e=this,r="",i=new Map,n=new Map;return new t(function(a){let s=a.position.index;if(a.input!==r)r=a.input,i.clear(),n.clear();else{let u=i.get(s),c=n.get(s);if(u!==void 0&&c!==void 0)return a.moveToPosition(Object.assign({},c)),Object.assign({},u)}let l=e.p(a);return i.set(s,Object.assign({},l)),n.set(s,a.getPosition()),l})}};zm.Parser=Bx});var yo=jn(qm=>{"use strict";Object.defineProperty(qm,"__esModule",{value:!0});qm.P_UTILS=void 0;var Vm=Om(),Zr=Ji(),Ox=class t{static position(){return new Vm.Parser(e=>e.succeed(e.getPosition()))}static any(){return new Vm.Parser(e=>e.atEOF()?e.fail("any character"):e.succeedOffset(1,e.input[e.position.index]))}static remaining(){return new Vm.Parser(e=>e.succeedAt(e.input.length,e.input.slice(e.position.index)))}static eof(){return new Vm.Parser(e=>e.atEOF()?e.succeed(void 0):e.fail("eof"))}static digit(){return Zr.P.regexp(/^[0-9]/).describe("a digit")}static digits(){return Zr.P.regexp(/^[0-9]+/).describe("multiple digits")}static letter(){return Zr.P.regexp(/^[a-z]/i).describe("a letter")}static letters(){return Zr.P.regexp(/^[a-z]+/i).describe("multiple letters")}static unicodeLetter(){return Zr.P.regexp(/^\p{L}/iu).describe("a unicode letter")}static unicodeLetters(){return Zr.P.regexp(/^\p{L}+/iu).describe("multiple unicode letters")}static unicodeAlphanumeric(){return Zr.P.regexp(/^[\p{L}\p{N}]/iu).describe("a unicode alphanumeric character")}static unicodeAlphanumerics(){return Zr.P.regexp(/^[\p{L}\p{N}]+/iu).describe("multiple unicode alphanumeric characters")}static optionalWhitespace(){return Zr.P.regexp(/^\s*/).describe("optional whitespace")}static whitespace(){return Zr.P.regexp(/^\s+/).describe("whitespace")}static cr(){return Zr.P.string("\r")}static lf(){return Zr.P.string(` -`)}static crlf(){return Zr.P.string(`\r -`)}static newline(){return Zr.P.or(this.crlf(),this.lf(),this.cr()).describe("newline")}static prefix(e,r,i){return Zr.P.sequenceMap((n,o)=>n.reduce((a,s)=>i(s,a),o),e.many(),r)}static postfix(e,r,i){return Zr.P.sequenceMap((n,o)=>o.reduce((a,s)=>i(s,a),n),r,e.many())}static binaryRight(e,r,i){return Zr.P.sequenceMap((n,o)=>n.reverse().reduce((a,s)=>{let[l,u]=s;return i(l,u,a)},o),Zr.P.sequence(r,e.trim(this.optionalWhitespace())).many(),r)}static binaryLeft(e,r,i){return Zr.P.sequenceMap((n,o)=>o.reduce((a,s)=>{let[l,u]=s;return i(a,l,u)},n),r,Zr.P.sequence(e.trim(this.optionalWhitespace()),r).many())}static binaryRightRange(e,r,i){return Zr.P.sequenceMap((n,o,a)=>n.reverse().reduce((s,l)=>{let[u,c,f]=l;return i({from:u,to:a},c,f,s)},o),Zr.P.sequence(t.position(),r,e.trim(this.optionalWhitespace())).many(),r,t.position())}static binaryLeftRange(e,r,i){return Zr.P.sequenceMap((n,o,a)=>a.reduce((s,l)=>{let[u,c,f]=l;return i({from:n,to:f},s,u,c)},o),t.position(),r,Zr.P.sequence(e.trim(this.optionalWhitespace()),r,t.position()).many())}static func(e,r,i){let n=typeof e=="string"?Zr.P.string(e):e;return Zr.P.sequenceMap((o,a,s,l,u,c)=>i(o,l),n,Zr.P.string("("),this.optionalWhitespace(),r,this.optionalWhitespace(),Zr.P.string(")"))}};qm.P_UTILS=Ox});var ip=jn((G_,gc)=>{(function(t,e){typeof G_=="object"&&typeof gc<"u"?gc.exports=e():typeof define=="function"&&define.amd?define(e):t.moment=e()})(G_,function(){"use strict";var t;function e(){return t.apply(null,arguments)}function r(g){t=g}function i(g){return g instanceof Array||Object.prototype.toString.call(g)==="[object Array]"}function n(g){return g!=null&&Object.prototype.toString.call(g)==="[object Object]"}function o(g,A){return Object.prototype.hasOwnProperty.call(g,A)}function a(g){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(g).length===0;var A;for(A in g)if(o(g,A))return!1;return!0}function s(g){return g===void 0}function l(g){return typeof g=="number"||Object.prototype.toString.call(g)==="[object Number]"}function u(g){return g instanceof Date||Object.prototype.toString.call(g)==="[object Date]"}function c(g,A){var F=[],P,j=g.length;for(P=0;P>>0,P;for(P=0;P0)for(F=0;F=0;return(se?F?"+":"":"-")+Math.pow(10,Math.max(0,j)).toString().substr(1)+P}var W=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Q=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,ie={},B={};function Z(g,A,F,P){var j=P;typeof P=="string"&&(j=function(){return this[P]()}),g&&(B[g]=j),A&&(B[A[0]]=function(){return J(j.apply(this,arguments),A[1],A[2])}),F&&(B[F]=function(){return this.localeData().ordinal(j.apply(this,arguments),g)})}function q(g){return g.match(/\[[\s\S]/)?g.replace(/^\[|\]$/g,""):g.replace(/\\/g,"")}function xe(g){var A=g.match(W),F,P;for(F=0,P=A.length;F=0&&Q.test(g);)g=g.replace(Q,P),Q.lastIndex=0,F-=1;return g}var G={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function K(g){var A=this._longDateFormat[g],F=this._longDateFormat[g.toUpperCase()];return A||!F?A:(this._longDateFormat[g]=F.match(W).map(function(P){return P==="MMMM"||P==="MM"||P==="DD"||P==="dddd"?P.slice(1):P}).join(""),this._longDateFormat[g])}var re="Invalid date";function ae(){return this._invalidDate}var le="%d",Se=/\d{1,2}/;function _e(g){return this._ordinal.replace("%d",g)}var Oe={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function st(g,A,F,P){var j=this._relativeTime[F];return C(j)?j(g,A,F,P):j.replace(/%d/i,g)}function yt(g,A){var F=this._relativeTime[g>0?"future":"past"];return C(F)?F(A):F.replace(/%s/i,A)}var Qe={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function ut(g){return typeof g=="string"?Qe[g]||Qe[g.toLowerCase()]:void 0}function H(g){var A={},F,P;for(P in g)o(g,P)&&(F=ut(P),F&&(A[F]=g[P]));return A}var oe={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function ve(g){var A=[],F;for(F in g)o(g,F)&&A.push({unit:F,priority:oe[F]});return A.sort(function(P,j){return P.priority-j.priority}),A}var De=/\d/,Ee=/\d\d/,Ue=/\d{3}/,He=/\d{4}/,nt=/[+-]?\d{6}/,ke=/\d\d?/,Y=/\d\d\d\d?/,me=/\d\d\d\d\d\d?/,ce=/\d{1,3}/,Ce=/\d{1,4}/,Pe=/[+-]?\d{1,6}/,we=/\d+/,We=/[+-]?\d+/,I=/Z|[+-]\d\d:?\d\d/gi,X=/Z|[+-]\d\d(?::?\d\d)?/gi,ne=/[+-]?\d+(\.\d{1,3})?/,Ne=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Xe=/^[1-9]\d?/,gt=/^([1-9]\d|\d)/,lr;lr={};function Ve(g,A,F){lr[g]=C(A)?A:function(P,j){return P&&F?F:A}}function yi(g,A){return o(lr,g)?lr[g](A._strict,A._locale):new RegExp(ki(g))}function ki(g){return en(g.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(A,F,P,j,se){return F||P||j||se}))}function en(g){return g.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Vn(g){return g<0?Math.ceil(g)||0:Math.floor(g)}function cr(g){var A=+g,F=0;return A!==0&&isFinite(A)&&(F=Vn(A)),F}var tu={};function Cr(g,A){var F,P=A,j;for(typeof g=="string"&&(g=[g]),l(A)&&(P=function(se,Me){Me[A]=cr(se)}),j=g.length,F=0;F68?1900:2e3)};var ss=Ma("FullYear",!0);function kl(){return go(this.year())}function Ma(g,A){return function(F){return F!=null?(Pl(this,g,F),e.updateOffset(this,A),this):fa(this,g)}}function fa(g,A){if(!g.isValid())return NaN;var F=g._d,P=g._isUTC;switch(A){case"Milliseconds":return P?F.getUTCMilliseconds():F.getMilliseconds();case"Seconds":return P?F.getUTCSeconds():F.getSeconds();case"Minutes":return P?F.getUTCMinutes():F.getMinutes();case"Hours":return P?F.getUTCHours():F.getHours();case"Date":return P?F.getUTCDate():F.getDate();case"Day":return P?F.getUTCDay():F.getDay();case"Month":return P?F.getUTCMonth():F.getMonth();case"FullYear":return P?F.getUTCFullYear():F.getFullYear();default:return NaN}}function Pl(g,A,F){var P,j,se,Me,xt;if(!(!g.isValid()||isNaN(F))){switch(P=g._d,j=g._isUTC,A){case"Milliseconds":return void(j?P.setUTCMilliseconds(F):P.setMilliseconds(F));case"Seconds":return void(j?P.setUTCSeconds(F):P.setSeconds(F));case"Minutes":return void(j?P.setUTCMinutes(F):P.setMinutes(F));case"Hours":return void(j?P.setUTCHours(F):P.setHours(F));case"Date":return void(j?P.setUTCDate(F):P.setDate(F));case"FullYear":break;default:return}se=F,Me=g.month(),xt=g.date(),xt=xt===29&&Me===1&&!go(se)?28:xt,j?P.setUTCFullYear(se,Me,xt):P.setFullYear(se,Me,xt)}}function Bl(g){return g=ut(g),C(this[g])?this[g]():this}function yf(g,A){if(typeof g=="object"){g=H(g);var F=ve(g),P,j=F.length;for(P=0;P=0?(xt=new Date(g+400,A,F,P,j,se,Me),isFinite(xt.getFullYear())&&xt.setFullYear(g)):xt=new Date(g,A,F,P,j,se,Me),xt}function xf(g){var A,F;return g<100&&g>=0?(F=Array.prototype.slice.call(arguments),F[0]=g+400,A=new Date(Date.UTC.apply(null,F)),isFinite(A.getUTCFullYear())&&A.setUTCFullYear(g)):A=new Date(Date.UTC.apply(null,arguments)),A}function Sm(g,A,F){var P=7+A-F,j=(7+xf(g,0,P).getUTCDay()-A)%7;return-j+P-1}function JA(g,A,F,P,j){var se=(7+F-P)%7,Me=Sm(g,P,j),xt=1+7*(A-1)+se+Me,er,yr;return xt<=0?(er=g-1,yr=as(er)+xt):xt>as(g)?(er=g+1,yr=xt-as(g)):(er=g,yr=xt),{year:er,dayOfYear:yr}}function _f(g,A,F){var P=Sm(g.year(),A,F),j=Math.floor((g.dayOfYear()-P-1)/7)+1,se,Me;return j<1?(Me=g.year()-1,se=j+ls(Me,A,F)):j>ls(g.year(),A,F)?(se=j-ls(g.year(),A,F),Me=g.year()+1):(Me=g.year(),se=j),{week:se,year:Me}}function ls(g,A,F){var P=Sm(g,A,F),j=Sm(g+1,A,F);return(as(g)-P+j)/7}Z("w",["ww",2],"wo","week"),Z("W",["WW",2],"Wo","isoWeek"),Ve("w",ke,Xe),Ve("ww",ke,Ee),Ve("W",ke,Xe),Ve("WW",ke,Ee),Gi(["w","ww","W","WW"],function(g,A,F,P){A[P.substr(0,1)]=cr(g)});function Xq(g){return _f(g,this._week.dow,this._week.doy).week}var Kq={dow:0,doy:6};function Qq(){return this._week.dow}function e7(){return this._week.doy}function t7(g){var A=this.localeData().week(this);return g==null?A:this.add((g-A)*7,"d")}function r7(g){var A=_f(this,1,4).week;return g==null?A:this.add((g-A)*7,"d")}Z("d",0,"do","day"),Z("dd",0,0,function(g){return this.localeData().weekdaysMin(this,g)}),Z("ddd",0,0,function(g){return this.localeData().weekdaysShort(this,g)}),Z("dddd",0,0,function(g){return this.localeData().weekdays(this,g)}),Z("e",0,0,"weekday"),Z("E",0,0,"isoWeekday"),Ve("d",ke),Ve("e",ke),Ve("E",ke),Ve("dd",function(g,A){return A.weekdaysMinRegex(g)}),Ve("ddd",function(g,A){return A.weekdaysShortRegex(g)}),Ve("dddd",function(g,A){return A.weekdaysRegex(g)}),Gi(["dd","ddd","dddd"],function(g,A,F,P){var j=F._locale.weekdaysParse(g,P,F._strict);j!=null?A.d=j:d(F).invalidWeekday=g}),Gi(["d","e","E"],function(g,A,F,P){A[P]=cr(g)});function n7(g,A){return typeof g!="string"?g:isNaN(g)?(g=A.weekdaysParse(g),typeof g=="number"?g:null):parseInt(g,10)}function i7(g,A){return typeof g=="string"?A.weekdaysParse(g)%7||7:isNaN(g)?null:g}function mx(g,A){return g.slice(A,7).concat(g.slice(0,A))}var o7="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),XA="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),a7="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),s7=Ne,u7=Ne,l7=Ne;function c7(g,A){var F=i(this._weekdays)?this._weekdays:this._weekdays[g&&g!==!0&&this._weekdays.isFormat.test(A)?"format":"standalone"];return g===!0?mx(F,this._week.dow):g?F[g.day()]:F}function f7(g){return g===!0?mx(this._weekdaysShort,this._week.dow):g?this._weekdaysShort[g.day()]:this._weekdaysShort}function p7(g){return g===!0?mx(this._weekdaysMin,this._week.dow):g?this._weekdaysMin[g.day()]:this._weekdaysMin}function m7(g,A,F){var P,j,se,Me=g.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],P=0;P<7;++P)se=m([2e3,1]).day(P),this._minWeekdaysParse[P]=this.weekdaysMin(se,"").toLocaleLowerCase(),this._shortWeekdaysParse[P]=this.weekdaysShort(se,"").toLocaleLowerCase(),this._weekdaysParse[P]=this.weekdays(se,"").toLocaleLowerCase();return F?A==="dddd"?(j=tn.call(this._weekdaysParse,Me),j!==-1?j:null):A==="ddd"?(j=tn.call(this._shortWeekdaysParse,Me),j!==-1?j:null):(j=tn.call(this._minWeekdaysParse,Me),j!==-1?j:null):A==="dddd"?(j=tn.call(this._weekdaysParse,Me),j!==-1||(j=tn.call(this._shortWeekdaysParse,Me),j!==-1)?j:(j=tn.call(this._minWeekdaysParse,Me),j!==-1?j:null)):A==="ddd"?(j=tn.call(this._shortWeekdaysParse,Me),j!==-1||(j=tn.call(this._weekdaysParse,Me),j!==-1)?j:(j=tn.call(this._minWeekdaysParse,Me),j!==-1?j:null)):(j=tn.call(this._minWeekdaysParse,Me),j!==-1||(j=tn.call(this._weekdaysParse,Me),j!==-1)?j:(j=tn.call(this._shortWeekdaysParse,Me),j!==-1?j:null))}function d7(g,A,F){var P,j,se;if(this._weekdaysParseExact)return m7.call(this,g,A,F);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),P=0;P<7;P++){if(j=m([2e3,1]).day(P),F&&!this._fullWeekdaysParse[P]&&(this._fullWeekdaysParse[P]=new RegExp("^"+this.weekdays(j,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[P]=new RegExp("^"+this.weekdaysShort(j,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[P]=new RegExp("^"+this.weekdaysMin(j,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[P]||(se="^"+this.weekdays(j,"")+"|^"+this.weekdaysShort(j,"")+"|^"+this.weekdaysMin(j,""),this._weekdaysParse[P]=new RegExp(se.replace(".",""),"i")),F&&A==="dddd"&&this._fullWeekdaysParse[P].test(g))return P;if(F&&A==="ddd"&&this._shortWeekdaysParse[P].test(g))return P;if(F&&A==="dd"&&this._minWeekdaysParse[P].test(g))return P;if(!F&&this._weekdaysParse[P].test(g))return P}}function h7(g){if(!this.isValid())return g!=null?this:NaN;var A=fa(this,"Day");return g!=null?(g=n7(g,this.localeData()),this.add(g-A,"d")):A}function g7(g){if(!this.isValid())return g!=null?this:NaN;var A=(this.day()+7-this.localeData()._week.dow)%7;return g==null?A:this.add(g-A,"d")}function v7(g){if(!this.isValid())return g!=null?this:NaN;if(g!=null){var A=i7(g,this.localeData());return this.day(this.day()%7?A:A-7)}else return this.day()||7}function y7(g){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||dx.call(this),g?this._weekdaysStrictRegex:this._weekdaysRegex):(o(this,"_weekdaysRegex")||(this._weekdaysRegex=s7),this._weekdaysStrictRegex&&g?this._weekdaysStrictRegex:this._weekdaysRegex)}function b7(g){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||dx.call(this),g?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(o(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=u7),this._weekdaysShortStrictRegex&&g?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function x7(g){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||dx.call(this),g?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(o(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=l7),this._weekdaysMinStrictRegex&&g?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function dx(){function g(Pi,ds){return ds.length-Pi.length}var A=[],F=[],P=[],j=[],se,Me,xt,er,yr;for(se=0;se<7;se++)Me=m([2e3,1]).day(se),xt=en(this.weekdaysMin(Me,"")),er=en(this.weekdaysShort(Me,"")),yr=en(this.weekdays(Me,"")),A.push(xt),F.push(er),P.push(yr),j.push(xt),j.push(er),j.push(yr);A.sort(g),F.sort(g),P.sort(g),j.sort(g),this._weekdaysRegex=new RegExp("^("+j.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+P.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+F.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+A.join("|")+")","i")}function hx(){return this.hours()%12||12}function _7(){return this.hours()||24}Z("H",["HH",2],0,"hour"),Z("h",["hh",2],0,hx),Z("k",["kk",2],0,_7),Z("hmm",0,0,function(){return""+hx.apply(this)+J(this.minutes(),2)}),Z("hmmss",0,0,function(){return""+hx.apply(this)+J(this.minutes(),2)+J(this.seconds(),2)}),Z("Hmm",0,0,function(){return""+this.hours()+J(this.minutes(),2)}),Z("Hmmss",0,0,function(){return""+this.hours()+J(this.minutes(),2)+J(this.seconds(),2)});function KA(g,A){Z(g,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),A)})}KA("a",!0),KA("A",!1);function QA(g,A){return A._meridiemParse}Ve("a",QA),Ve("A",QA),Ve("H",ke,gt),Ve("h",ke,Xe),Ve("k",ke,Xe),Ve("HH",ke,Ee),Ve("hh",ke,Ee),Ve("kk",ke,Ee),Ve("hmm",Y),Ve("hmmss",me),Ve("Hmm",Y),Ve("Hmmss",me),Cr(["H","HH"],ln),Cr(["k","kk"],function(g,A,F){var P=cr(g);A[ln]=P===24?0:P}),Cr(["a","A"],function(g,A,F){F._isPm=F._locale.isPM(g),F._meridiem=g}),Cr(["h","hh"],function(g,A,F){A[ln]=cr(g),d(F).bigHour=!0}),Cr("hmm",function(g,A,F){var P=g.length-2;A[ln]=cr(g.substr(0,P)),A[ai]=cr(g.substr(P)),d(F).bigHour=!0}),Cr("hmmss",function(g,A,F){var P=g.length-4,j=g.length-2;A[ln]=cr(g.substr(0,P)),A[ai]=cr(g.substr(P,2)),A[Mn]=cr(g.substr(j)),d(F).bigHour=!0}),Cr("Hmm",function(g,A,F){var P=g.length-2;A[ln]=cr(g.substr(0,P)),A[ai]=cr(g.substr(P))}),Cr("Hmmss",function(g,A,F){var P=g.length-4,j=g.length-2;A[ln]=cr(g.substr(0,P)),A[ai]=cr(g.substr(P,2)),A[Mn]=cr(g.substr(j))});function w7(g){return(g+"").toLowerCase().charAt(0)==="p"}var S7=/[ap]\.?m?\.?/i,D7=Ma("Hours",!0);function E7(g,A,F){return g>11?F?"pm":"PM":F?"am":"AM"}var eT={calendar:k,longDateFormat:G,invalidDate:re,ordinal:le,dayOfMonthOrdinalParse:Se,relativeTime:Oe,months:te,monthsShort:$e,week:Kq,weekdays:o7,weekdaysMin:a7,weekdaysShort:XA,meridiemParse:S7},cn={},wf={},Sf;function A7(g,A){var F,P=Math.min(g.length,A.length);for(F=0;F0;){if(j=Dm(se.slice(0,F).join("-")),j)return j;if(P&&P.length>=F&&A7(se,P)>=F-1)break;F--}A++}return Sf}function N7(g){return!!(g&&g.match("^[^/\\\\]*$"))}function Dm(g){var A=null,F;if(cn[g]===void 0&&typeof gc<"u"&&gc&&gc.exports&&N7(g))try{A=Sf._abbr,F=require,F("./locale/"+g),ru(A)}catch{cn[g]=null}return cn[g]}function ru(g,A){var F;return g&&(s(A)?F=cs(g):F=gx(g,A),F?Sf=F:typeof console<"u"&&console.warn&&console.warn("Locale "+g+" not found. Did you forget to load it?")),Sf._abbr}function gx(g,A){if(A!==null){var F,P=eT;if(A.abbr=g,cn[g]!=null)M("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),P=cn[g]._config;else if(A.parentLocale!=null)if(cn[A.parentLocale]!=null)P=cn[A.parentLocale]._config;else if(F=Dm(A.parentLocale),F!=null)P=F._config;else return wf[A.parentLocale]||(wf[A.parentLocale]=[]),wf[A.parentLocale].push({name:g,config:A}),null;return cn[g]=new R(O(P,A)),wf[g]&&wf[g].forEach(function(j){gx(j.name,j.config)}),ru(g),cn[g]}else return delete cn[g],null}function M7(g,A){if(A!=null){var F,P,j=eT;cn[g]!=null&&cn[g].parentLocale!=null?cn[g].set(O(cn[g]._config,A)):(P=Dm(g),P!=null&&(j=P._config),A=O(j,A),P==null&&(A.abbr=g),F=new R(A),F.parentLocale=cn[g],cn[g]=F),ru(g)}else cn[g]!=null&&(cn[g].parentLocale!=null?(cn[g]=cn[g].parentLocale,g===ru()&&ru(g)):cn[g]!=null&&delete cn[g]);return cn[g]}function cs(g){var A;if(g&&g._locale&&g._locale._abbr&&(g=g._locale._abbr),!g)return Sf;if(!i(g)){if(A=Dm(g),A)return A;g=[g]}return T7(g)}function C7(){return L(cn)}function vx(g){var A,F=g._a;return F&&d(g).overflow===-2&&(A=F[qn]<0||F[qn]>11?qn:F[Wi]<1||F[Wi]>z(F[Nn],F[qn])?Wi:F[ln]<0||F[ln]>24||F[ln]===24&&(F[ai]!==0||F[Mn]!==0||F[Hi]!==0)?ln:F[ai]<0||F[ai]>59?ai:F[Mn]<0||F[Mn]>59?Mn:F[Hi]<0||F[Hi]>999?Hi:-1,d(g)._overflowDayOfYear&&(AWi)&&(A=Wi),d(g)._overflowWeeks&&A===-1&&(A=vf),d(g)._overflowWeekday&&A===-1&&(A=Fl),d(g).overflow=A),g}var $7=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,I7=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,F7=/Z|[+-]\d\d(?::?\d\d)?/,Em=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],yx=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],k7=/^\/?Date\((-?\d+)/i,P7=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,B7={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function rT(g){var A,F,P=g._i,j=$7.exec(P)||I7.exec(P),se,Me,xt,er,yr=Em.length,Pi=yx.length;if(j){for(d(g).iso=!0,A=0,F=yr;Aas(Me)||g._dayOfYear===0)&&(d(g)._overflowDayOfYear=!0),F=xf(Me,0,g._dayOfYear),g._a[qn]=F.getUTCMonth(),g._a[Wi]=F.getUTCDate()),A=0;A<3&&g._a[A]==null;++A)g._a[A]=P[A]=j[A];for(;A<7;A++)g._a[A]=P[A]=g._a[A]==null?A===2?1:0:g._a[A];g._a[ln]===24&&g._a[ai]===0&&g._a[Mn]===0&&g._a[Hi]===0&&(g._nextDay=!0,g._a[ln]=0),g._d=(g._useUTC?xf:Jq).apply(null,P),se=g._useUTC?g._d.getUTCDay():g._d.getDay(),g._tzm!=null&&g._d.setUTCMinutes(g._d.getUTCMinutes()-g._tzm),g._nextDay&&(g._a[ln]=24),g._w&&typeof g._w.d<"u"&&g._w.d!==se&&(d(g).weekdayMismatch=!0)}}function j7(g){var A,F,P,j,se,Me,xt,er,yr;A=g._w,A.GG!=null||A.W!=null||A.E!=null?(se=1,Me=4,F=Ol(A.GG,g._a[Nn],_f(rn(),1,4).year),P=Ol(A.W,1),j=Ol(A.E,1),(j<1||j>7)&&(er=!0)):(se=g._locale._week.dow,Me=g._locale._week.doy,yr=_f(rn(),se,Me),F=Ol(A.gg,g._a[Nn],yr.year),P=Ol(A.w,yr.week),A.d!=null?(j=A.d,(j<0||j>6)&&(er=!0)):A.e!=null?(j=A.e+se,(A.e<0||A.e>6)&&(er=!0)):j=se),P<1||P>ls(F,se,Me)?d(g)._overflowWeeks=!0:er!=null?d(g)._overflowWeekday=!0:(xt=JA(F,P,j,se,Me),g._a[Nn]=xt.year,g._dayOfYear=xt.dayOfYear)}e.ISO_8601=function(){},e.RFC_2822=function(){};function xx(g){if(g._f===e.ISO_8601){rT(g);return}if(g._f===e.RFC_2822){nT(g);return}g._a=[],d(g).empty=!0;var A=""+g._i,F,P,j,se,Me,xt=A.length,er=0,yr,Pi;for(j=be(g._f,g._locale).match(W)||[],Pi=j.length,F=0;F0&&d(g).unusedInput.push(Me),A=A.slice(A.indexOf(P)+P.length),er+=P.length),B[se]?(P?d(g).empty=!1:d(g).unusedTokens.push(se),Vo(se,P,g)):g._strict&&!P&&d(g).unusedTokens.push(se);d(g).charsLeftOver=xt-er,A.length>0&&d(g).unusedInput.push(A),g._a[ln]<=12&&d(g).bigHour===!0&&g._a[ln]>0&&(d(g).bigHour=void 0),d(g).parsedDateParts=g._a.slice(0),d(g).meridiem=g._meridiem,g._a[ln]=Z7(g._locale,g._a[ln],g._meridiem),yr=d(g).era,yr!==null&&(g._a[Nn]=g._locale.erasConvertYear(yr,g._a[Nn])),bx(g),vx(g)}function Z7(g,A,F){var P;return F==null?A:g.meridiemHour!=null?g.meridiemHour(A,F):(g.isPM!=null&&(P=g.isPM(F),P&&A<12&&(A+=12),!P&&A===12&&(A=0)),A)}function G7(g){var A,F,P,j,se,Me,xt=!1,er=g._f.length;if(er===0){d(g).invalidFormat=!0,g._d=new Date(NaN);return}for(j=0;jthis?this:g:y()});function aT(g,A){var F,P;if(A.length===1&&i(A[0])&&(A=A[0]),!A.length)return rn();for(F=A[0],P=1;Pthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function mj(){if(!s(this._isDSTShifted))return this._isDSTShifted;var g={},A;return _(g,this),g=iT(g),g._a?(A=g._isUTC?m(g._a):rn(g._a),this._isDSTShifted=this.isValid()&&ij(g._a,A.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function dj(){return this.isValid()?!this._isUTC:!1}function hj(){return this.isValid()?this._isUTC:!1}function uT(){return this.isValid()?this._isUTC&&this._offset===0:!1}var gj=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,vj=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function pa(g,A){var F=g,P=null,j,se,Me;return Tm(g)?F={ms:g._milliseconds,d:g._days,M:g._months}:l(g)||!isNaN(+g)?(F={},A?F[A]=+g:F.milliseconds=+g):(P=gj.exec(g))?(j=P[1]==="-"?-1:1,F={y:0,d:cr(P[Wi])*j,h:cr(P[ln])*j,m:cr(P[ai])*j,s:cr(P[Mn])*j,ms:cr(_x(P[Hi]*1e3))*j}):(P=vj.exec(g))?(j=P[1]==="-"?-1:1,F={y:Ru(P[2],j),M:Ru(P[3],j),w:Ru(P[4],j),d:Ru(P[5],j),h:Ru(P[6],j),m:Ru(P[7],j),s:Ru(P[8],j)}):F==null?F={}:typeof F=="object"&&("from"in F||"to"in F)&&(Me=yj(rn(F.from),rn(F.to)),F={},F.ms=Me.milliseconds,F.M=Me.months),se=new Am(F),Tm(g)&&o(g,"_locale")&&(se._locale=g._locale),Tm(g)&&o(g,"_isValid")&&(se._isValid=g._isValid),se}pa.fn=Am.prototype,pa.invalid=nj;function Ru(g,A){var F=g&&parseFloat(g.replace(",","."));return(isNaN(F)?0:F)*A}function lT(g,A){var F={};return F.months=A.month()-g.month()+(A.year()-g.year())*12,g.clone().add(F.months,"M").isAfter(A)&&--F.months,F.milliseconds=+A-+g.clone().add(F.months,"M"),F}function yj(g,A){var F;return g.isValid()&&A.isValid()?(A=Sx(A,g),g.isBefore(A)?F=lT(g,A):(F=lT(A,g),F.milliseconds=-F.milliseconds,F.months=-F.months),F):{milliseconds:0,months:0}}function cT(g,A){return function(F,P){var j,se;return P!==null&&!isNaN(+P)&&(M(A,"moment()."+A+"(period, number) is deprecated. Please use moment()."+A+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),se=F,F=P,P=se),j=pa(F,P),fT(this,j,g),this}}function fT(g,A,F,P){var j=A._milliseconds,se=_x(A._days),Me=_x(A._months);g.isValid()&&(P=P??!0,Me&&WA(g,fa(g,"Month")+Me*F),se&&Pl(g,"Date",fa(g,"Date")+se*F),j&&g._d.setTime(g._d.valueOf()+j*F),P&&e.updateOffset(g,se||Me))}var bj=cT(1,"add"),xj=cT(-1,"subtract");function pT(g){return typeof g=="string"||g instanceof String}function _j(g){return x(g)||u(g)||pT(g)||l(g)||Sj(g)||wj(g)||g===null||g===void 0}function wj(g){var A=n(g)&&!a(g),F=!1,P=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],j,se,Me=P.length;for(j=0;jF.valueOf():F.valueOf()9999?de(F,A?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):C(Date.prototype.toISOString)?A?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",de(F,"Z")):de(F,A?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function Oj(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var g="moment",A="",F,P,j,se;return this.isLocal()||(g=this.utcOffset()===0?"moment.utc":"moment.parseZone",A="Z"),F="["+g+'("]',P=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",j="-MM-DD[T]HH:mm:ss.SSS",se=A+'[")]',this.format(F+P+j+se)}function Rj(g){g||(g=this.isUtc()?e.defaultFormatUtc:e.defaultFormat);var A=de(this,g);return this.localeData().postformat(A)}function Lj(g,A){return this.isValid()&&(x(g)&&g.isValid()||rn(g).isValid())?pa({to:this,from:g}).locale(this.locale()).humanize(!A):this.localeData().invalidDate()}function Uj(g){return this.from(rn(),g)}function zj(g,A){return this.isValid()&&(x(g)&&g.isValid()||rn(g).isValid())?pa({from:this,to:g}).locale(this.locale()).humanize(!A):this.localeData().invalidDate()}function Vj(g){return this.to(rn(),g)}function mT(g){var A;return g===void 0?this._locale._abbr:(A=cs(g),A!=null&&(this._locale=A),this)}var dT=T("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(g){return g===void 0?this.localeData():this.locale(g)});function hT(){return this._locale}var Mm=1e3,Rl=60*Mm,Cm=60*Rl,gT=(365*400+97)*24*Cm;function Ll(g,A){return(g%A+A)%A}function vT(g,A,F){return g<100&&g>=0?new Date(g+400,A,F)-gT:new Date(g,A,F).valueOf()}function yT(g,A,F){return g<100&&g>=0?Date.UTC(g+400,A,F)-gT:Date.UTC(g,A,F)}function qj(g){var A,F;if(g=ut(g),g===void 0||g==="millisecond"||!this.isValid())return this;switch(F=this._isUTC?yT:vT,g){case"year":A=F(this.year(),0,1);break;case"quarter":A=F(this.year(),this.month()-this.month()%3,1);break;case"month":A=F(this.year(),this.month(),1);break;case"week":A=F(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":A=F(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":A=F(this.year(),this.month(),this.date());break;case"hour":A=this._d.valueOf(),A-=Ll(A+(this._isUTC?0:this.utcOffset()*Rl),Cm);break;case"minute":A=this._d.valueOf(),A-=Ll(A,Rl);break;case"second":A=this._d.valueOf(),A-=Ll(A,Mm);break}return this._d.setTime(A),e.updateOffset(this,!0),this}function jj(g){var A,F;if(g=ut(g),g===void 0||g==="millisecond"||!this.isValid())return this;switch(F=this._isUTC?yT:vT,g){case"year":A=F(this.year()+1,0,1)-1;break;case"quarter":A=F(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":A=F(this.year(),this.month()+1,1)-1;break;case"week":A=F(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":A=F(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":A=F(this.year(),this.month(),this.date()+1)-1;break;case"hour":A=this._d.valueOf(),A+=Cm-Ll(A+(this._isUTC?0:this.utcOffset()*Rl),Cm)-1;break;case"minute":A=this._d.valueOf(),A+=Rl-Ll(A,Rl)-1;break;case"second":A=this._d.valueOf(),A+=Mm-Ll(A,Mm)-1;break}return this._d.setTime(A),e.updateOffset(this,!0),this}function Zj(){return this._d.valueOf()-(this._offset||0)*6e4}function Gj(){return Math.floor(this.valueOf()/1e3)}function Wj(){return new Date(this.valueOf())}function Hj(){var g=this;return[g.year(),g.month(),g.date(),g.hour(),g.minute(),g.second(),g.millisecond()]}function Yj(){var g=this;return{years:g.year(),months:g.month(),date:g.date(),hours:g.hours(),minutes:g.minutes(),seconds:g.seconds(),milliseconds:g.milliseconds()}}function Jj(){return this.isValid()?this.toISOString():null}function Xj(){return v(this)}function Kj(){return f({},d(this))}function Qj(){return d(this).overflow}function eZ(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}Z("N",0,0,"eraAbbr"),Z("NN",0,0,"eraAbbr"),Z("NNN",0,0,"eraAbbr"),Z("NNNN",0,0,"eraName"),Z("NNNNN",0,0,"eraNarrow"),Z("y",["y",1],"yo","eraYear"),Z("y",["yy",2],0,"eraYear"),Z("y",["yyy",3],0,"eraYear"),Z("y",["yyyy",4],0,"eraYear"),Ve("N",Ex),Ve("NN",Ex),Ve("NNN",Ex),Ve("NNNN",fZ),Ve("NNNNN",pZ),Cr(["N","NN","NNN","NNNN","NNNNN"],function(g,A,F,P){var j=F._locale.erasParse(g,P,F._strict);j?d(F).era=j:d(F).invalidEra=g}),Ve("y",we),Ve("yy",we),Ve("yyy",we),Ve("yyyy",we),Ve("yo",mZ),Cr(["y","yy","yyy","yyyy"],Nn),Cr(["yo"],function(g,A,F,P){var j;F._locale._eraYearOrdinalRegex&&(j=g.match(F._locale._eraYearOrdinalRegex)),F._locale.eraYearOrdinalParse?A[Nn]=F._locale.eraYearOrdinalParse(g,j):A[Nn]=parseInt(g,10)});function tZ(g,A){var F,P,j,se=this._eras||cs("en")._eras;for(F=0,P=se.length;F=0)return se[P]}function nZ(g,A){var F=g.since<=g.until?1:-1;return A===void 0?e(g.since).year():e(g.since).year()+(A-g.offset)*F}function iZ(){var g,A,F,P=this.localeData().eras();for(g=0,A=P.length;gse&&(A=se),xZ.call(this,g,A,F,P,j))}function xZ(g,A,F,P,j){var se=JA(g,A,F,P,j),Me=xf(se.year,0,se.dayOfYear);return this.year(Me.getUTCFullYear()),this.month(Me.getUTCMonth()),this.date(Me.getUTCDate()),this}Z("Q",0,"Qo","quarter"),Ve("Q",De),Cr("Q",function(g,A){A[qn]=(cr(g)-1)*3});function _Z(g){return g==null?Math.ceil((this.month()+1)/3):this.month((g-1)*3+this.month()%3)}Z("D",["DD",2],"Do","date"),Ve("D",ke,Xe),Ve("DD",ke,Ee),Ve("Do",function(g,A){return g?A._dayOfMonthOrdinalParse||A._ordinalParse:A._dayOfMonthOrdinalParseLenient}),Cr(["D","DD"],Wi),Cr("Do",function(g,A){A[Wi]=cr(g.match(ke)[0])});var xT=Ma("Date",!0);Z("DDD",["DDDD",3],"DDDo","dayOfYear"),Ve("DDD",ce),Ve("DDDD",Ue),Cr(["DDD","DDDD"],function(g,A,F){F._dayOfYear=cr(g)});function wZ(g){var A=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return g==null?A:this.add(g-A,"d")}Z("m",["mm",2],0,"minute"),Ve("m",ke,gt),Ve("mm",ke,Ee),Cr(["m","mm"],ai);var SZ=Ma("Minutes",!1);Z("s",["ss",2],0,"second"),Ve("s",ke,gt),Ve("ss",ke,Ee),Cr(["s","ss"],Mn);var DZ=Ma("Seconds",!1);Z("S",0,0,function(){return~~(this.millisecond()/100)}),Z(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Z(0,["SSS",3],0,"millisecond"),Z(0,["SSSS",4],0,function(){return this.millisecond()*10}),Z(0,["SSSSS",5],0,function(){return this.millisecond()*100}),Z(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3}),Z(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4}),Z(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5}),Z(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6}),Ve("S",ce,De),Ve("SS",ce,Ee),Ve("SSS",ce,Ue);var nu,_T;for(nu="SSSS";nu.length<=9;nu+="S")Ve(nu,we);function EZ(g,A){A[Hi]=cr(("0."+g)*1e3)}for(nu="S";nu.length<=9;nu+="S")Cr(nu,EZ);_T=Ma("Milliseconds",!1),Z("z",0,0,"zoneAbbr"),Z("zz",0,0,"zoneName");function AZ(){return this._isUTC?"UTC":""}function TZ(){return this._isUTC?"Coordinated Universal Time":""}var Ze=w.prototype;Ze.add=bj,Ze.calendar=Aj,Ze.clone=Tj,Ze.diff=kj,Ze.endOf=jj,Ze.format=Rj,Ze.from=Lj,Ze.fromNow=Uj,Ze.to=zj,Ze.toNow=Vj,Ze.get=Bl,Ze.invalidAt=Qj,Ze.isAfter=Nj,Ze.isBefore=Mj,Ze.isBetween=Cj,Ze.isSame=$j,Ze.isSameOrAfter=Ij,Ze.isSameOrBefore=Fj,Ze.isValid=Xj,Ze.lang=dT,Ze.locale=mT,Ze.localeData=hT,Ze.max=X7,Ze.min=J7,Ze.parsingFlags=Kj,Ze.set=yf,Ze.startOf=qj,Ze.subtract=xj,Ze.toArray=Hj,Ze.toObject=Yj,Ze.toDate=Wj,Ze.toISOString=Bj,Ze.inspect=Oj,typeof Symbol<"u"&&Symbol.for!=null&&(Ze[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),Ze.toJSON=Jj,Ze.toString=Pj,Ze.unix=Gj,Ze.valueOf=Zj,Ze.creationData=eZ,Ze.eraName=iZ,Ze.eraNarrow=oZ,Ze.eraAbbr=aZ,Ze.eraYear=sZ,Ze.year=ss,Ze.isLeapYear=kl,Ze.weekYear=dZ,Ze.isoWeekYear=hZ,Ze.quarter=Ze.quarters=_Z,Ze.month=HA,Ze.daysInMonth=Wq,Ze.week=Ze.weeks=t7,Ze.isoWeek=Ze.isoWeeks=r7,Ze.weeksInYear=yZ,Ze.weeksInWeekYear=bZ,Ze.isoWeeksInYear=gZ,Ze.isoWeeksInISOWeekYear=vZ,Ze.date=xT,Ze.day=Ze.days=h7,Ze.weekday=g7,Ze.isoWeekday=v7,Ze.dayOfYear=wZ,Ze.hour=Ze.hours=D7,Ze.minute=Ze.minutes=SZ,Ze.second=Ze.seconds=DZ,Ze.millisecond=Ze.milliseconds=_T,Ze.utcOffset=aj,Ze.utc=uj,Ze.local=lj,Ze.parseZone=cj,Ze.hasAlignedHourOffset=fj,Ze.isDST=pj,Ze.isLocal=dj,Ze.isUtcOffset=hj,Ze.isUtc=uT,Ze.isUTC=uT,Ze.zoneAbbr=AZ,Ze.zoneName=TZ,Ze.dates=T("dates accessor is deprecated. Use date instead.",xT),Ze.months=T("months accessor is deprecated. Use month instead",HA),Ze.years=T("years accessor is deprecated. Use year instead",ss),Ze.zone=T("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",sj),Ze.isDSTShifted=T("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",mj);function NZ(g){return rn(g*1e3)}function MZ(){return rn.apply(null,arguments).parseZone()}function wT(g){return g}var Ir=R.prototype;Ir.calendar=V,Ir.longDateFormat=K,Ir.invalidDate=ae,Ir.ordinal=_e,Ir.preparse=wT,Ir.postformat=wT,Ir.relativeTime=st,Ir.pastFuture=yt,Ir.set=$,Ir.eras=tZ,Ir.erasParse=rZ,Ir.erasConvertYear=nZ,Ir.erasAbbrRegex=lZ,Ir.erasNameRegex=uZ,Ir.erasNarrowRegex=cZ,Ir.months=$r,Ir.monthsShort=Fn,Ir.monthsParse=us,Ir.monthsRegex=Yq,Ir.monthsShortRegex=Hq,Ir.week=Xq,Ir.firstDayOfYear=e7,Ir.firstDayOfWeek=Qq,Ir.weekdays=c7,Ir.weekdaysMin=p7,Ir.weekdaysShort=f7,Ir.weekdaysParse=d7,Ir.weekdaysRegex=y7,Ir.weekdaysShortRegex=b7,Ir.weekdaysMinRegex=x7,Ir.isPM=w7,Ir.meridiem=E7;function Im(g,A,F,P){var j=cs(),se=m().set(P,A);return j[F](se,g)}function ST(g,A,F){if(l(g)&&(A=g,g=void 0),g=g||"",A!=null)return Im(g,A,F,"month");var P,j=[];for(P=0;P<12;P++)j[P]=Im(g,P,F,"month");return j}function Tx(g,A,F,P){typeof g=="boolean"?(l(A)&&(F=A,A=void 0),A=A||""):(A=g,F=A,g=!1,l(A)&&(F=A,A=void 0),A=A||"");var j=cs(),se=g?j._week.dow:0,Me,xt=[];if(F!=null)return Im(A,(F+se)%7,P,"day");for(Me=0;Me<7;Me++)xt[Me]=Im(A,(Me+se)%7,P,"day");return xt}function CZ(g,A){return ST(g,A,"months")}function $Z(g,A){return ST(g,A,"monthsShort")}function IZ(g,A,F){return Tx(g,A,F,"weekdays")}function FZ(g,A,F){return Tx(g,A,F,"weekdaysShort")}function kZ(g,A,F){return Tx(g,A,F,"weekdaysMin")}ru("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(g){var A=g%10,F=cr(g%100/10)===1?"th":A===1?"st":A===2?"nd":A===3?"rd":"th";return g+F}}),e.lang=T("moment.lang is deprecated. Use moment.locale instead.",ru),e.langData=T("moment.langData is deprecated. Use moment.localeData instead.",cs);var fs=Math.abs;function PZ(){var g=this._data;return this._milliseconds=fs(this._milliseconds),this._days=fs(this._days),this._months=fs(this._months),g.milliseconds=fs(g.milliseconds),g.seconds=fs(g.seconds),g.minutes=fs(g.minutes),g.hours=fs(g.hours),g.months=fs(g.months),g.years=fs(g.years),this}function DT(g,A,F,P){var j=pa(A,F);return g._milliseconds+=P*j._milliseconds,g._days+=P*j._days,g._months+=P*j._months,g._bubble()}function BZ(g,A){return DT(this,g,A,1)}function OZ(g,A){return DT(this,g,A,-1)}function ET(g){return g<0?Math.floor(g):Math.ceil(g)}function RZ(){var g=this._milliseconds,A=this._days,F=this._months,P=this._data,j,se,Me,xt,er;return g>=0&&A>=0&&F>=0||g<=0&&A<=0&&F<=0||(g+=ET(Nx(F)+A)*864e5,A=0,F=0),P.milliseconds=g%1e3,j=Vn(g/1e3),P.seconds=j%60,se=Vn(j/60),P.minutes=se%60,Me=Vn(se/60),P.hours=Me%24,A+=Vn(Me/24),er=Vn(AT(A)),F+=er,A-=ET(Nx(er)),xt=Vn(F/12),F%=12,P.days=A,P.months=F,P.years=xt,this}function AT(g){return g*4800/146097}function Nx(g){return g*146097/4800}function LZ(g){if(!this.isValid())return NaN;var A,F,P=this._milliseconds;if(g=ut(g),g==="month"||g==="quarter"||g==="year")switch(A=this._days+P/864e5,F=this._months+AT(A),g){case"month":return F;case"quarter":return F/3;case"year":return F/12}else switch(A=this._days+Math.round(Nx(this._months)),g){case"week":return A/7+P/6048e5;case"day":return A+P/864e5;case"hour":return A*24+P/36e5;case"minute":return A*1440+P/6e4;case"second":return A*86400+P/1e3;case"millisecond":return Math.floor(A*864e5)+P;default:throw new Error("Unknown unit "+g)}}function ps(g){return function(){return this.as(g)}}var TT=ps("ms"),UZ=ps("s"),zZ=ps("m"),VZ=ps("h"),qZ=ps("d"),jZ=ps("w"),ZZ=ps("M"),GZ=ps("Q"),WZ=ps("y"),HZ=TT;function YZ(){return pa(this)}function JZ(g){return g=ut(g),this.isValid()?this[g+"s"]():NaN}function Lu(g){return function(){return this.isValid()?this._data[g]:NaN}}var XZ=Lu("milliseconds"),KZ=Lu("seconds"),QZ=Lu("minutes"),eG=Lu("hours"),tG=Lu("days"),rG=Lu("months"),nG=Lu("years");function iG(){return Vn(this.days()/7)}var ms=Math.round,Ul={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function oG(g,A,F,P,j){return j.relativeTime(A||1,!!F,g,P)}function aG(g,A,F,P){var j=pa(g).abs(),se=ms(j.as("s")),Me=ms(j.as("m")),xt=ms(j.as("h")),er=ms(j.as("d")),yr=ms(j.as("M")),Pi=ms(j.as("w")),ds=ms(j.as("y")),iu=se<=F.ss&&["s",se]||se0,iu[4]=P,oG.apply(null,iu)}function sG(g){return g===void 0?ms:typeof g=="function"?(ms=g,!0):!1}function uG(g,A){return Ul[g]===void 0?!1:A===void 0?Ul[g]:(Ul[g]=A,g==="s"&&(Ul.ss=A-1),!0)}function lG(g,A){if(!this.isValid())return this.localeData().invalidDate();var F=!1,P=Ul,j,se;return typeof g=="object"&&(A=g,g=!1),typeof g=="boolean"&&(F=g),typeof A=="object"&&(P=Object.assign({},Ul,A),A.s!=null&&A.ss==null&&(P.ss=A.s-1)),j=this.localeData(),se=aG(this,!F,P,j),F&&(se=j.pastFuture(+this,se)),j.postformat(se)}var Mx=Math.abs;function zl(g){return(g>0)-(g<0)||+g}function Fm(){if(!this.isValid())return this.localeData().invalidDate();var g=Mx(this._milliseconds)/1e3,A=Mx(this._days),F=Mx(this._months),P,j,se,Me,xt=this.asSeconds(),er,yr,Pi,ds;return xt?(P=Vn(g/60),j=Vn(P/60),g%=60,P%=60,se=Vn(F/12),F%=12,Me=g?g.toFixed(3).replace(/\.?0+$/,""):"",er=xt<0?"-":"",yr=zl(this._months)!==zl(xt)?"-":"",Pi=zl(this._days)!==zl(xt)?"-":"",ds=zl(this._milliseconds)!==zl(xt)?"-":"",er+"P"+(se?yr+se+"Y":"")+(F?yr+F+"M":"")+(A?Pi+A+"D":"")+(j||P||g?"T":"")+(j?ds+j+"H":"")+(P?ds+P+"M":"")+(g?ds+Me+"S":"")):"P0D"}var xr=Am.prototype;xr.isValid=rj,xr.abs=PZ,xr.add=BZ,xr.subtract=OZ,xr.as=LZ,xr.asMilliseconds=TT,xr.asSeconds=UZ,xr.asMinutes=zZ,xr.asHours=VZ,xr.asDays=qZ,xr.asWeeks=jZ,xr.asMonths=ZZ,xr.asQuarters=GZ,xr.asYears=WZ,xr.valueOf=HZ,xr._bubble=RZ,xr.clone=YZ,xr.get=JZ,xr.milliseconds=XZ,xr.seconds=KZ,xr.minutes=QZ,xr.hours=eG,xr.days=tG,xr.weeks=iG,xr.months=rG,xr.years=nG,xr.humanize=lG,xr.toISOString=Fm,xr.toString=Fm,xr.toJSON=Fm,xr.locale=mT,xr.localeData=hT,xr.toIsoString=T("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Fm),xr.lang=dT,Z("X",0,0,"unix"),Z("x",0,0,"valueOf"),Ve("x",We),Ve("X",ne),Cr("X",function(g,A,F){F._d=new Date(parseFloat(g)*1e3)}),Cr("x",function(g,A,F){F._d=new Date(cr(g))});return e.version="2.30.1",r(rn),e.fn=Ze,e.min=K7,e.max=Q7,e.now=ej,e.utc=m,e.unix=NZ,e.months=CZ,e.isDate=u,e.locale=ru,e.invalid=y,e.duration=pa,e.isMoment=x,e.weekdays=IZ,e.parseZone=MZ,e.localeData=cs,e.isDuration=Tm,e.monthsShort=$Z,e.weekdaysMin=kZ,e.defineLocale=gx,e.updateLocale=M7,e.locales=C7,e.weekdaysShort=FZ,e.normalizeUnits=ut,e.relativeTimeRounding=sG,e.relativeTimeThreshold=uG,e.calendarFormat=Ej,e.prototype=Ze,e.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},e})});var Lv=jn((bD,xD)=>{(function(t,e){typeof bD=="object"&&typeof xD<"u"?xD.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self,t["'typed'"]=e())})(bD,function(){"use strict";function t(){return!0}function e(){return!1}function r(){}let i="Argument is not a typed-function.";function n(){function a(Y){return typeof Y=="object"&&Y!==null&&Y.constructor===Object}let s=[{name:"number",test:function(Y){return typeof Y=="number"}},{name:"string",test:function(Y){return typeof Y=="string"}},{name:"boolean",test:function(Y){return typeof Y=="boolean"}},{name:"Function",test:function(Y){return typeof Y=="function"}},{name:"Array",test:Array.isArray},{name:"Date",test:function(Y){return Y instanceof Date}},{name:"RegExp",test:function(Y){return Y instanceof RegExp}},{name:"Object",test:a},{name:"null",test:function(Y){return Y===null}},{name:"undefined",test:function(Y){return Y===void 0}}],l={name:"any",test:t,isAny:!0},u,c,f=0,m={createCount:0};function p(Y){let me=u.get(Y);if(me)return me;let ce='Unknown type "'+Y+'"',Ce=Y.toLowerCase(),Pe;for(Pe of c)if(Pe.toLowerCase()===Ce){ce+='. Did you mean "'+Pe+'" ?';break}throw new TypeError(ce)}function d(Y){let me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"any",ce=me?p(me).index:c.length,Ce=[];for(let we=0;we{let Ce=u.get(ce);return!Ce.isAny&&Ce.test(Y)});return me.length?me:["any"]}function S(Y){return Y&&typeof Y=="function"&&"_typedFunctionData"in Y}function b(Y,me,ce){if(!S(Y))throw new TypeError(i);let Ce=ce&&ce.exact,Pe=Array.isArray(me)?me.join(","):me,we=M(Pe),We=x(we);if(!Ce||We in Y.signatures){let Ne=Y._typedFunctionData.signatureMap.get(We);if(Ne)return Ne}let I=we.length,X;if(Ce){X=[];let Ne;for(Ne in Y.signatures)X.push(Y._typedFunctionData.signatureMap.get(Ne))}else X=Y._typedFunctionData.signatures;for(let Ne=0;Ne!yi.has(ki.name)))continue}gt.push(lr)}}if(X=gt,X.length===0)break}let ne;for(ne of X)if(ne.params.length<=I)return ne;throw new TypeError("Signature not found (signature: "+(Y.name||"unnamed")+"("+x(we,", ")+"))")}function _(Y,me,ce){return b(Y,me,ce).implementation}function w(Y,me){let ce=p(me);if(ce.test(Y))return Y;let Ce=ce.conversionsTo;if(Ce.length===0)throw new Error("There are no conversions to "+me+" defined.");for(let Pe=0;Pe1&&arguments[1]!==void 0?arguments[1]:",";return Y.map(ce=>ce.name).join(me)}function E(Y){let me=Y.indexOf("...")===0,Ce=(me?Y.length>3?Y.slice(3):"any":Y).split("|").map(I=>p(I.trim())),Pe=!1,we=me?"...":"";return{types:Ce.map(function(I){return Pe=I.isAny||Pe,we+=I.name+"|",{name:I.name,typeIndex:I.index,test:I.test,isAny:I.isAny,conversion:null,conversionIndex:-1}}),name:we.slice(0,-1),hasAny:Pe,hasConversion:!1,restParam:me}}function T(Y){let me=Y.types.map(We=>We.name),ce=Z(me),Ce=Y.hasAny,Pe=Y.name,we=ce.map(function(We){let I=p(We.from);return Ce=I.isAny||Ce,Pe+="|"+We.from,{name:We.from,typeIndex:I.index,test:I.test,isAny:I.isAny,conversion:We,conversionIndex:We.index}});return{types:Y.types.concat(we),name:Pe,hasAny:Ce,hasConversion:we.length>0,restParam:Y.restParam}}function D(Y){return Y.typeSet||(Y.typeSet=new Set,Y.types.forEach(me=>Y.typeSet.add(me.name))),Y.typeSet}function M(Y){let me=[];if(typeof Y!="string")throw new TypeError("Signatures must be strings");let ce=Y.trim();if(ce==="")return me;let Ce=ce.split(",");for(let Pe=0;Pe=Pe+1}}else return Y.length===0?function(we){return we.length===0}:Y.length===1?(ce=$(Y[0]),function(we){return ce(we[0])&&we.length===1}):Y.length===2?(ce=$(Y[0]),Ce=$(Y[1]),function(we){return ce(we[0])&&Ce(we[1])&&we.length===2}):(me=Y.map($),function(we){for(let We=0;We{let Pe=L(Ce.params,me),we;for(we of Pe)ce.add(we)}),ce.has("any")?["any"]:Array.from(ce)}function J(Y,me,ce){let Ce,Pe,we=Y||"unnamed",We=ce,I;for(I=0;I{let lr=R(gt.params,I),Ve=$(lr);(I0){let gt=y(me[I]);return Ce=new TypeError("Unexpected type of argument in function "+we+" (expected: "+Pe.join(" or ")+", actual: "+gt.join(" | ")+", index: "+I+")"),Ce.data={category:"wrongType",fn:we,index:I,actual:gt,expected:Pe},Ce}}else We=Xe}let X=We.map(function(Xe){return C(Xe.params)?1/0:Xe.params.length});if(me.lengthne)return Ce=new TypeError("Too many arguments in function "+we+" (expected: "+ne+", actual: "+me.length+")"),Ce.data={category:"tooManyArgs",fn:we,index:me.length,expectedLength:ne},Ce;let Ne=[];for(let Xe=0;Xe0)return 1;let Ce=Q(Y)-Q(me);return Ce<0?-1:Ce>0?1:0}function B(Y,me){let ce=Y.params,Ce=me.params,Pe=Oe(ce),we=Oe(Ce),We=C(ce),I=C(Ce);if(We&&Pe.hasAny){if(!I||!we.hasAny)return 1}else if(I&&we.hasAny)return-1;let X=0,ne=0,Ne;for(Ne of ce)Ne.hasAny&&++X,Ne.hasConversion&&++ne;let Xe=0,gt=0;for(Ne of Ce)Ne.hasAny&&++Xe,Ne.hasConversion&&++gt;if(X!==Xe)return X-Xe;if(We&&Pe.hasConversion){if(!I||!we.hasConversion)return 1}else if(I&&we.hasConversion)return-1;if(ne!==gt)return ne-gt;if(We){if(!I)return 1}else if(I)return-1;let lr=(ce.length-Ce.length)*(We?-1:1);if(lr!==0)return lr;let Ve=[],yi=0;for(let en=0;en1&&me.sort((Pe,we)=>Pe.index-we.index);let ce=me[0].conversionsTo;if(Y.length===1)return ce;ce=ce.concat([]);let Ce=new Set(Y);for(let Pe=1;PePe.hasConversion)){let Pe=C(Y),we=Y.map(xe);ce=function(){let I=[],X=Pe?arguments.length-1:arguments.length;for(let ne=0;neX.name).join("|"),hasAny:I.some(X=>X.isAny),hasConversion:!1,restParam:!0}),We.push(we)}else We=we.types.map(function(I){return{types:[I],name:I.name,hasAny:I.isAny,hasConversion:I.conversion,restParam:!1}});return Qe(We,function(I){return me(ce,Ce+1,Pe.concat([I]))})}else return[Pe]}return me(Y,0,[])}function be(Y,me){let ce=Math.max(Y.length,me.length);for(let I=0;I=Ce:We?Ce>=Pe:Ce===Pe}function G(Y){return Y.map(me=>De(me)?oe(me.referToSelf.callback):ve(me)?H(me.referTo.references,me.referTo.callback):me)}function K(Y,me,ce){let Ce=[],Pe;for(Pe of Y){let we=ce[Pe];if(typeof we!="number")throw new TypeError('No definition for referenced signature "'+Pe+'"');if(we=me[we],typeof we!="function")return!1;Ce.push(we)}return Ce}function re(Y,me,ce){let Ce=G(Y),Pe=new Array(Ce.length).fill(!1),we=!0;for(;we;){we=!1;let We=!0;for(let I=0;I{let Ce=Y[ce];if(me.test(Ce.toString()))throw new SyntaxError("Using `this` to self-reference a function is deprecated since typed-function@3. Use typed.referTo and typed.referToSelf instead.")})}function le(Y,me){if(m.createCount++,Object.keys(me).length===0)throw new SyntaxError("No signatures provided");m.warnAgainstDeprecatedThis&&ae(me);let ce=[],Ce=[],Pe={},we=[],We;for(We in me){if(!Object.prototype.hasOwnProperty.call(me,We))continue;let qe=M(We);if(!qe)continue;ce.forEach(function(kn){if(be(kn,qe))throw new TypeError('Conflicting signatures "'+x(kn)+'" and "'+x(qe)+'".')}),ce.push(qe);let qt=Ce.length;Ce.push(me[We]);let $r=qe.map(T),Fn;for(Fn of de($r)){let kn=x(Fn);we.push({params:Fn,name:kn,fn:qt}),Fn.every(us=>!us.hasConversion)&&(Pe[kn]=qt)}}we.sort(B);let I=re(Ce,Pe,et),X;for(X in Pe)Object.prototype.hasOwnProperty.call(Pe,X)&&(Pe[X]=I[Pe[X]]);let ne=[],Ne=new Map;for(X of we)Ne.has(X.name)||(X.fn=I[X.fn],ne.push(X),Ne.set(X.name,X));let Xe=ne[0]&&ne[0].params.length<=2&&!C(ne[0].params),gt=ne[1]&&ne[1].params.length<=2&&!C(ne[1].params),lr=ne[2]&&ne[2].params.length<=2&&!C(ne[2].params),Ve=ne[3]&&ne[3].params.length<=2&&!C(ne[3].params),yi=ne[4]&&ne[4].params.length<=2&&!C(ne[4].params),ki=ne[5]&&ne[5].params.length<=2&&!C(ne[5].params),en=Xe&>&&lr&&Ve&&yi&&ki;for(let qe=0;qeqe.test),te=ne.map(qe=>qe.implementation),$e=function(){for(let qt=bf;qtx(M(ce))),me=Oe(arguments);if(typeof me!="function")throw new TypeError("Callback function expected as last argument");return H(Y,me)}function H(Y,me){return{referTo:{references:Y,callback:me}}}function oe(Y){if(typeof Y!="function")throw new TypeError("Callback function expected as first argument");return{referToSelf:{callback:Y}}}function ve(Y){return Y&&typeof Y.referTo=="object"&&Array.isArray(Y.referTo.references)&&typeof Y.referTo.callback=="function"}function De(Y){return Y&&typeof Y.referToSelf=="object"&&typeof Y.referToSelf.callback=="function"}function Ee(Y,me){if(!Y)return me;if(me&&me!==Y){let ce=new Error("Function names do not match (expected: "+Y+", actual: "+me+")");throw ce.data={actual:me,expected:Y},ce}return Y}function Ue(Y){let me;for(let ce in Y)Object.prototype.hasOwnProperty.call(Y,ce)&&(S(Y[ce])||typeof Y[ce].signature=="string")&&(me=Ee(me,Y[ce].name));return me}function He(Y,me){let ce;for(ce in me)if(Object.prototype.hasOwnProperty.call(me,ce)){if(ce in Y&&me[ce]!==Y[ce]){let Ce=new Error('Signature "'+ce+'" is defined twice');throw Ce.data={signature:ce,sourceFunction:me[ce],destFunction:Y[ce]},Ce}Y[ce]=me[ce]}}let nt=m;m=function(Y){let me=typeof Y=="string",ce=me?1:0,Ce=me?Y:"",Pe={};for(let we=ce;we1&&arguments[1]!==void 0?arguments[1]:{override:!1};ke(Y);let ce=p(Y.to),Ce=ce.conversionsTo.find(Pe=>Pe.from===Y.from);if(Ce)if(me&&me.override)m.removeConversion({from:Ce.from,to:Y.to,convert:Ce.convert});else throw new Error('There is already a conversion from "'+Y.from+'" to "'+ce.name+'"');ce.conversionsTo.push({from:Y.from,convert:Y.convert,index:f++})},m.addConversions=function(Y,me){Y.forEach(ce=>m.addConversion(ce,me))},m.removeConversion=function(Y){ke(Y);let me=p(Y.to),ce=yt(me.conversionsTo,Pe=>Pe.from===Y.from);if(!ce)throw new Error("Attempt to remove nonexistent conversion from "+Y.from+" to "+Y.to);if(ce.convert!==Y.convert)throw new Error("Conversion to remove does not match existing conversion");let Ce=me.conversionsTo.indexOf(ce);me.conversionsTo.splice(Ce,1)},m.resolve=function(Y,me){if(!S(Y))throw new TypeError(i);let ce=Y._typedFunctionData.signatures;for(let Ce=0;Ce{dO.exports=function t(e,r){"use strict";var i=/(^([+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi,n=/(^[ ]*|[ ]*$)/g,o=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,a=/^0x[0-9a-f]+$/i,s=/^0/,l=function(b){return t.insensitive&&(""+b).toLowerCase()||""+b},u=l(e).replace(n,"")||"",c=l(r).replace(n,"")||"",f=u.replace(i,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),m=c.replace(i,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),p=parseInt(u.match(a),16)||f.length!==1&&u.match(o)&&Date.parse(u),d=parseInt(c.match(a),16)||p&&c.match(o)&&Date.parse(c)||null,h,v;if(d){if(pd)return 1}for(var y=0,S=Math.max(f.length,m.length);yv)return 1}return 0}});var IL=jn((UHe,$L)=>{"use strict";var jE=Object.assign||function(t){for(var e=1;e1&&arguments[1]!==void 0?arguments[1]:{},r=e.preserveFormatting,i=r===void 0?!1:r,n=e.escapeMapFn,o=n===void 0?gae:n,a=String(t),s="",l=o(jE({},dae),i?jE({},hae):{}),u=Object.keys(l),c=function(){var m=!1;u.forEach(function(p,d){m||a.length>=p.length&&a.slice(0,p.length)===p&&(s+=l[u[d]],a=a.slice(p.length,a.length),m=!0)}),m||(s+=a.slice(0,1),a=a.slice(1,a.length))};a;)c();return s}});var s5=jn((a5,KE)=>{(function(t,e,r){function i(s){var l=this,u=a();l.next=function(){var c=2091639*l.s0+l.c*23283064365386963e-26;return l.s0=l.s1,l.s1=l.s2,l.s2=c-(l.c=c|0)},l.c=1,l.s0=u(" "),l.s1=u(" "),l.s2=u(" "),l.s0-=u(s),l.s0<0&&(l.s0+=1),l.s1-=u(s),l.s1<0&&(l.s1+=1),l.s2-=u(s),l.s2<0&&(l.s2+=1),u=null}function n(s,l){return l.c=s.c,l.s0=s.s0,l.s1=s.s1,l.s2=s.s2,l}function o(s,l){var u=new i(s),c=l&&l.state,f=u.next;return f.int32=function(){return u.next()*4294967296|0},f.double=function(){return f()+(f()*2097152|0)*11102230246251565e-32},f.quick=f,c&&(typeof c=="object"&&n(c,u),f.state=function(){return n(u,{})}),f}function a(){var s=4022871197,l=function(u){u=String(u);for(var c=0;c>>0,f-=s,f*=s,s=f>>>0,f-=s,s+=f*4294967296}return(s>>>0)*23283064365386963e-26};return l}e&&e.exports?e.exports=o:r&&r.amd?r(function(){return o}):this.alea=o})(a5,typeof KE=="object"&&KE,typeof define=="function"&&define)});var l5=jn((u5,QE)=>{(function(t,e,r){function i(a){var s=this,l="";s.x=0,s.y=0,s.z=0,s.w=0,s.next=function(){var c=s.x^s.x<<11;return s.x=s.y,s.y=s.z,s.z=s.w,s.w^=s.w>>>19^c^c>>>8},a===(a|0)?s.x=a:l+=a;for(var u=0;u>>0)/4294967296};return c.double=function(){do var f=l.next()>>>11,m=(l.next()>>>0)/4294967296,p=(f+m)/(1<<21);while(p===0);return p},c.int32=l.next,c.quick=c,u&&(typeof u=="object"&&n(u,l),c.state=function(){return n(l,{})}),c}e&&e.exports?e.exports=o:r&&r.amd?r(function(){return o}):this.xor128=o})(u5,typeof QE=="object"&&QE,typeof define=="function"&&define)});var f5=jn((c5,eA)=>{(function(t,e,r){function i(a){var s=this,l="";s.next=function(){var c=s.x^s.x>>>2;return s.x=s.y,s.y=s.z,s.z=s.w,s.w=s.v,(s.d=s.d+362437|0)+(s.v=s.v^s.v<<4^(c^c<<1))|0},s.x=0,s.y=0,s.z=0,s.w=0,s.v=0,a===(a|0)?s.x=a:l+=a;for(var u=0;u>>4),s.next()}function n(a,s){return s.x=a.x,s.y=a.y,s.z=a.z,s.w=a.w,s.v=a.v,s.d=a.d,s}function o(a,s){var l=new i(a),u=s&&s.state,c=function(){return(l.next()>>>0)/4294967296};return c.double=function(){do var f=l.next()>>>11,m=(l.next()>>>0)/4294967296,p=(f+m)/(1<<21);while(p===0);return p},c.int32=l.next,c.quick=c,u&&(typeof u=="object"&&n(u,l),c.state=function(){return n(l,{})}),c}e&&e.exports?e.exports=o:r&&r.amd?r(function(){return o}):this.xorwow=o})(c5,typeof eA=="object"&&eA,typeof define=="function"&&define)});var m5=jn((p5,tA)=>{(function(t,e,r){function i(a){var s=this;s.next=function(){var u=s.x,c=s.i,f,m,p;return f=u[c],f^=f>>>7,m=f^f<<24,f=u[c+1&7],m^=f^f>>>10,f=u[c+3&7],m^=f^f>>>3,f=u[c+4&7],m^=f^f<<7,f=u[c+7&7],f=f^f<<13,m^=f^f<<9,u[c]=m,s.i=c+1&7,m};function l(u,c){var f,m,p=[];if(c===(c|0))m=p[0]=c;else for(c=""+c,f=0;f0;--f)u.next()}l(s,a)}function n(a,s){return s.x=a.x.slice(),s.i=a.i,s}function o(a,s){a==null&&(a=+new Date);var l=new i(a),u=s&&s.state,c=function(){return(l.next()>>>0)/4294967296};return c.double=function(){do var f=l.next()>>>11,m=(l.next()>>>0)/4294967296,p=(f+m)/(1<<21);while(p===0);return p},c.int32=l.next,c.quick=c,u&&(u.x&&n(u,l),c.state=function(){return n(l,{})}),c}e&&e.exports?e.exports=o:r&&r.amd?r(function(){return o}):this.xorshift7=o})(p5,typeof tA=="object"&&tA,typeof define=="function"&&define)});var h5=jn((d5,rA)=>{(function(t,e,r){function i(a){var s=this;s.next=function(){var u=s.w,c=s.X,f=s.i,m,p;return s.w=u=u+1640531527|0,p=c[f+34&127],m=c[f=f+1&127],p^=p<<13,m^=m<<17,p^=p>>>15,m^=m>>>12,p=c[f]=p^m,s.i=f,p+(u^u>>>16)|0};function l(u,c){var f,m,p,d,h,v=[],y=128;for(c===(c|0)?(m=c,c=null):(c=c+"\0",m=0,y=Math.max(y,c.length)),p=0,d=-32;d>>15,m^=m<<4,m^=m>>>13,d>=0&&(h=h+1640531527|0,f=v[d&127]^=m+h,p=f==0?p+1:0);for(p>=128&&(v[(c&&c.length||0)&127]=-1),p=127,d=512;d>0;--d)m=v[p+34&127],f=v[p=p+1&127],m^=m<<13,f^=f<<17,m^=m>>>15,f^=f>>>12,v[p]=m^f;u.w=h,u.X=v,u.i=p}l(s,a)}function n(a,s){return s.i=a.i,s.w=a.w,s.X=a.X.slice(),s}function o(a,s){a==null&&(a=+new Date);var l=new i(a),u=s&&s.state,c=function(){return(l.next()>>>0)/4294967296};return c.double=function(){do var f=l.next()>>>11,m=(l.next()>>>0)/4294967296,p=(f+m)/(1<<21);while(p===0);return p},c.int32=l.next,c.quick=c,u&&(u.X&&n(u,l),c.state=function(){return n(l,{})}),c}e&&e.exports?e.exports=o:r&&r.amd?r(function(){return o}):this.xor4096=o})(d5,typeof rA=="object"&&rA,typeof define=="function"&&define)});var v5=jn((g5,nA)=>{(function(t,e,r){function i(a){var s=this,l="";s.next=function(){var c=s.b,f=s.c,m=s.d,p=s.a;return c=c<<25^c>>>7^f,f=f-m|0,m=m<<24^m>>>8^p,p=p-c|0,s.b=c=c<<20^c>>>12^f,s.c=f=f-m|0,s.d=m<<16^f>>>16^p,s.a=p-c|0},s.a=0,s.b=0,s.c=-1640531527,s.d=1367130551,a===Math.floor(a)?(s.a=a/4294967296|0,s.b=a|0):l+=a;for(var u=0;u>>0)/4294967296};return c.double=function(){do var f=l.next()>>>11,m=(l.next()>>>0)/4294967296,p=(f+m)/(1<<21);while(p===0);return p},c.int32=l.next,c.quick=c,u&&(typeof u=="object"&&n(u,l),c.state=function(){return n(l,{})}),c}e&&e.exports?e.exports=o:r&&r.amd?r(function(){return o}):this.tychei=o})(g5,typeof nA=="object"&&nA,typeof define=="function"&&define)});var b5=jn((y5,xb)=>{(function(t,e,r){var i=256,n=6,o=52,a="random",s=r.pow(i,n),l=r.pow(2,o),u=l*2,c=i-1,f;function m(b,_,w){var x=[];_=_==!0?{entropy:!0}:_||{};var E=v(h(_.entropy?[b,S(e)]:b??y(),3),x),T=new p(x),D=function(){for(var M=T.g(n),C=s,$=0;M=u;)M/=2,C/=2,$>>>=1;return(M+$)/C};return D.int32=function(){return T.g(4)|0},D.quick=function(){return T.g(4)/4294967296},D.double=D,v(S(T.S),e),(_.pass||w||function(M,C,$,O){return O&&(O.S&&d(O,T),M.state=function(){return d(T,{})}),$?(r[a]=M,C):M})(D,E,"global"in _?_.global:this==r,_.state)}function p(b){var _,w=b.length,x=this,E=0,T=x.i=x.j=0,D=x.S=[];for(w||(b=[w++]);E{var Fse=s5(),kse=l5(),Pse=f5(),Bse=m5(),Ose=h5(),Rse=v5(),Nl=b5();Nl.alea=Fse;Nl.xor128=kse;Nl.xorwow=Pse;Nl.xorshift7=Bse;Nl.xor4096=Ose;Nl.tychei=Rse;x5.exports=Nl});var Q9=jn((zyt,cA)=>{function lA(){}lA.prototype={on:function(t,e,r){var i=this.e||(this.e={});return(i[t]||(i[t]=[])).push({fn:e,ctx:r}),this},once:function(t,e,r){var i=this;function n(){i.off(t,n),e.apply(r,arguments)}return n._=e,this.on(t,n,r)},emit:function(t){var e=[].slice.call(arguments,1),r=((this.e||(this.e={}))[t]||[]).slice(),i=0,n=r.length;for(i;ifx,default:()=>px});module.exports=hG(vfe);var os=require("obsidian");var GT=Ar(yo());var Bi=(r=>(r.INLINE="inline",r.BLOCK="block",r))(Bi||{}),jl=(l=>(l.INPUT="INPUT",l.VIEW="VIEW",l.JS_VIEW="JS_VIEW",l.TABLE="TABLE",l.BUTTON_GROUP="BUTTON_GROUP",l.BUTTON="BUTTON",l.EMBED="EMBED",l.EXCLUDED="EXCLUDED",l))(jl||{}),ou=class{linePosition;constructor(e){this.linePosition=e}getPosition(){return this.linePosition}};function jm(t){return t==="INPUT"||t==="VIEW"||t==="BUTTON_GROUP"}var Zn=class extends Error{errorLevel;effect;cause;tip;docs;context;positionContext;constructor(e){super(""),this.errorLevel=e.errorLevel,this.effect=e.effect,this.cause=e.cause,this.tip=e.tip,this.docs=e.docs,this.context=e.context,this.positionContext=e.positionContext,this.updateMessage()}updateMessage(){this.cause instanceof Error?this.message=`[${this.getErrorType()}] "${this.effect}" caused by error "${this.cause.message}"`:this.message=`[${this.getErrorType()}] "${this.effect}" caused by "${this.cause}"`}log(){console.log(this.message,this.stack,this.context)}},jt=class extends Zn{getErrorType(){return"MB_INTERNAL"}},ma=class extends Zn{getErrorType(){return"MB_PARSING"}},gs=class extends Zn{getErrorType(){return"MB_VALIDATION"}},Zm=class extends Zn{getErrorType(){return"MB_BIND_TARGET"}};var Br=class extends Zn{getErrorType(){return"MB_ARGUMENT"}},da=class extends Zn{getErrorType(){return"MB_JS"}},Uu=class extends Zn{getErrorType(){return"MB_EXPRESSION"}};var Ef=class extends Zn{getErrorType(){return"MB_EXAMPLE"}};var vs=class extends Zn{getErrorType(){return"MB_BUTTON"}},Af=class extends Zn{getErrorType(){return"MB_DEPENDENCY"}};function fn(t,e){let r=t.thenEof().tryParse(e);if(r.success)return r.value;throw new Zl("ERROR","parsiNOM parser",e,r)}var Zl=class extends Zn{str;parseFailure;source;constructor(e,r,i,n){super({errorLevel:e,effect:"Failed to parse. Check that your syntax is correct.",cause:`expected ${n.expected.sort().join(" or ")}`}),this.str=i,this.parseFailure=n,this.source=r,this.updateMessage2()}getErrorType(){return"MB_PARSINOM"}updateMessage2(){this.cause instanceof Error?this.message=`[${this.getErrorType()}] "${this.effect}" caused by error "${this.cause.message}" -`:this.message=`[${this.getErrorType()}] "${this.effect}" caused by "${this.cause}" -`;let r=this.str.split(` -`)[this.parseFailure.furthest.line-1],i=`${this.parseFailure.furthest.line} | `;this.positionContext=`${i}${r}`,this.positionContext+=` -${this.getUnderline(i.length)} -`,this.message+=` -`+this.positionContext}getUnderline(e){let r=" ".repeat(this.parseFailure.furthest.column+e-1),i=`^ (${this.cause})`;return r+i}},Pn=class extends Zn{str;position;source;constructor(e,r,i,n,o,a){super({errorLevel:e,effect:"Failed to validate the result of the parser.",cause:i,docs:a}),this.str=n,this.position=o,this.source=r,this.updateMessage2()}getErrorType(){return"MB_VALIDATION"}updateMessage2(){if(this.cause instanceof Error?this.message=`[${this.getErrorType()}] "${this.effect}" caused by error "${this.cause.message}" -`:this.message=`[${this.getErrorType()}] "${this.effect}" caused by "${this.cause}" -`,this.str&&this.position){let r=this.str.split(` -`)[this.position.from.line-1],i=`${this.position.from.line} | `;this.positionContext=`${i}${r}`,this.positionContext+=` -${this.getUnderline(i.length,r.length)} -`,this.message+=` -`+this.positionContext}}getUnderline(e,r){if(this.position===void 0)return"";let i=" ".repeat(this.position.from.column+e-1),n=this.position.to.line===this.position.from.line?this.position.to.column:r,o="^".repeat(n-this.position.from.column);return i+o}};var vn=Ar(yo()),Vx=Ar(Ji());var BT=Ar(yo()),Ri=Ar(Ji());var Tf=Ar(yo()),bo=Ar(Ji()),Gn=bo.P.sequence(bo.P.or(Tf.P_UTILS.unicodeLetter(),bo.P.oneOf("_$")),bo.P.or(Tf.P_UTILS.unicodeAlphanumeric(),bo.P.oneOf("-_$")).many()).map(t=>t[0]+t[1].join("")).describe("identifier"),IT=bo.P.sequenceMap((t,e)=>t+e.map(r=>r[0]+r[1]).join(""),Gn,bo.P.sequence(Tf.P_UTILS.optionalWhitespace(),Gn).many()).describe("identifier with spaces"),wG=bo.P.string("\\").then(Tf.P_UTILS.any()).map(t=>t==="'"?"'":t==="\\"?"\\":"\\"+t);function FT(t){return bo.P.or(wG,bo.P.noneOf(t+"\\")).many().map(e=>e.join("")).trim(bo.P.string(t))}var Gm=FT("'"),kT=FT('"'),Gl=bo.P.manyNotOf("{}[]#^|:?").box("file path");function Oi(t,e){return{value:t,position:e}}function jo(t){if(t!==void 0)return typeof t=="string"?{value:t}:t}var Vu=(r=>(r.OBJECT="object",r.ARRAY="array",r))(Vu||{}),Wm=class{parent;access;child;constructor(e,r,i){this.parent=e,this.access=r,this.child=i}};function SG(t,e){return t[e]}function PT(t,e,r){t[e]=r}var zu=class{type;prop;index;constructor(e,r){if(this.type=e,this.prop=e==="object"?r:"",this.index=e==="array"?Number(r):0,Number.isNaN(this.index))throw new Error("can not access array with non number index")}get(e){if(this.type==="object"){if(typeof e!="object"||e==null)throw new Error("can not access property of non-object");return new Wm(e,this,SG(e,this.prop))}else{if(typeof e!="object"||e==null||!Array.isArray(e))throw new Error("can not access property of non-array");return new Wm(e,this,e[this.index])}}set(e,r){if(this.type==="object"){if(typeof e!="object"||e==null)throw new Error("can not access property of non-object");PT(e,this.prop,r)}else{if(typeof e!="object"||e==null||!Array.isArray(e))throw new Error("can not access property of non-array");e[this.index]=r}}create(e){if(this.type==="object"){if(typeof e!="object"||e==null)throw new Error("can not access property of non-object");PT(e,this.prop,void 0)}else{if(typeof e!="object"||e==null||!Array.isArray(e))throw new Error("can not access property of non-array");e[this.index]=void 0}}toUnvalidatedPropAccess(){return this.type==="object"?{type:this.type,prop:{value:this.prop}}:{type:this.type,prop:{value:this.index.toString()}}}};var OT=Gn.node((t,e)=>({type:"object",prop:Oi(t,e)})),Rx=Ri.P.or(BT.P_UTILS.digits().wrap(Ri.P.string("["),Ri.P.string("]")).node((t,e)=>({type:"array",prop:Oi(t,e)})),kT.wrap(Ri.P.string("["),Ri.P.string("]")).node((t,e)=>({type:"object",prop:Oi(t,e)}))),DG=Ri.P.or(Ri.P.sequenceMap(t=>({storagePath:void 0,listenToChildren:!0,storageProp:t}),Rx.atLeast(1)),Ri.P.sequenceMap((t,e)=>({storagePath:void 0,listenToChildren:!0,storageProp:[t,...e]}),OT,Rx.many())),EG=Ri.P.sequenceMap((t,e)=>[t,...e],OT,Rx.many()),Lx=Ri.P.sequenceMap((t,e)=>(t.storageProp=t.storageProp.concat(e.flat()),t),DG,Ri.P.string(".").then(EG).many()),Ca=Ri.P.sequenceMap((t,e,r)=>(r.storageType=t,r.storagePath=e,r),Gn.describe("storage type").node(Oi).skip(Ri.P.string("^").describe('storage type separator "^"')).optional(),Gl.describe("storage path").node(Oi).skip(Ri.P.string("#").describe('storage/file path separator "#"')).optional(),Lx.describe("property path")).box("bind target");var Hm=Ar(yo()),$a=Ar(Ji());var Ux=$a.P.regexp(/^[^()',]+/).describe("any character except parentheses, single quotation marks and commas"),AG=$a.P.or(Gm,Ux).node(Oi),TG=$a.P.separateBy(AG,$a.P.string(",").describe('argument value separator ","').trim(Hm.P_UTILS.optionalWhitespace())),NG=$a.P.sequenceMap((t,e)=>({name:t,value:e}),Gn.node(Oi),TG.trim(Hm.P_UTILS.optionalWhitespace()).wrap($a.P.string("(").describe('argument value paren "("'),$a.P.string(")").describe('argument value paren ")"')).optional([])),Nf=$a.P.separateBy(NG,$a.P.string(",").describe('argument separator ","').trim(Hm.P_UTILS.optionalWhitespace()));var Xi=Ar(yo()),Bn=Ar(Ji());var MG=Bn.P.string("\\").then(Xi.P_UTILS.any()).map(t=>t==="["?"[":t==="]"?"]":t==="{"?"{":t==="}"?"}":t==="\\"?"\\":"\\"+t),Ym=Bn.P.sequenceMap((t,e)=>t+e.flat().join(""),Bn.P.manyNotOf("{}[]\\"),Bn.P.sequence(MG,Bn.P.manyNotOf("{}[]\\")).many()).box("View Field Content"),CG=Bn.P.sequenceMap((t,e)=>[t,...e.flat()],Ym,Bn.P.sequence(Ca.wrapString("{","}"),Ym).many()),$G=Bn.P.sequenceMap((t,e,r)=>{let i=r===void 0?void 0:r[1];return{viewFieldType:t,writeToBindTarget:i,arguments:e,templateDeclaration:void 0}},Gn.node(Oi).trim(Xi.P_UTILS.optionalWhitespace()).optional().describe("input field type"),Nf.trim(Xi.P_UTILS.optionalWhitespace()).wrapString("(",")").trim(Xi.P_UTILS.optionalWhitespace()).optional([]),Bn.P.sequence(Bn.P.string(":").trim(Xi.P_UTILS.optionalWhitespace()),Ca).trim(Xi.P_UTILS.optionalWhitespace()).optional()),RT=Bn.P.sequenceMap((t,e,r,i)=>i===void 0?{viewFieldType:void 0,writeToBindTarget:void 0,arguments:[],templateDeclaration:e}:(i.templateDeclaration=e,i),Bn.P.string("VIEW"),CG.wrapString("[","]"),Xi.P_UTILS.optionalWhitespace(),$G.wrapString("[","]").optional(),Xi.P_UTILS.eof()),IG=Bn.P.sequenceMap((t,e,r,i)=>(e!==void 0&&(t.listenToChildren=!0),{bindTarget:t,name:i}),Ca.wrapString("{","}"),Bn.P.string(" and children").optional(),Bn.P.string(" as "),Gn),LT=Bn.P.sequenceMap((t,e,r,i)=>({bindTargetMappings:t,writeToBindTarget:e,hidden:r!==void 0,code:i}),IG.separateBy(Xi.P_UTILS.whitespace()).skip(Xi.P_UTILS.whitespace()),Bn.P.string("save to ").then(Ca.wrapString("{","}")).skip(Xi.P_UTILS.whitespace()).optional(),Bn.P.string("hidden").skip(Xi.P_UTILS.whitespace()).optional(),Bn.P.string("---").then(Xi.P_UTILS.remaining()));var zx=Ar(Ji());var Wl=class{range;tokenClass;constructor(e,r){this.range=e,this.tokenClass=r}};var zt=class t{static sequence(...e){return zx.P.sequenceMap((...r)=>r.flat(2).filter(i=>i!==void 0),...e)}static separateBy(e,r){return t.sequence(e,t.sequence(r,e).many()).optional([])}static highlight(e,r){return e.node((i,n)=>[new Wl(n,r)])}static highlightStr(e,r){return t.highlight(zx.P.string(e),r)}};var qx=zt.highlight(Gn,"ident"),Jm=zt.highlight(Gn,"keyword"),jx=zt.highlightStr(",","control"),Xm=zt.highlightStr("(","control"),Km=zt.highlightStr(")","control"),Hl=zt.highlightStr("[","control"),Yl=zt.highlightStr("]","control"),kG=zt.highlight(Gm,"string"),PG=zt.highlight(Ux,"ident"),BG=Vx.P.or(PG,kG),OG=zt.separateBy(BG,jx.trim(vn.P_UTILS.optionalWhitespace())),RG=zt.sequence(Jm,zt.sequence(Xm,OG.trim(vn.P_UTILS.optionalWhitespace()),Km).optional()),Zx=zt.separateBy(RG,jx.trim(vn.P_UTILS.optionalWhitespace())),Jl=zt.sequence(zt.sequence(qx,zt.highlightStr("^","control")).optional(),zt.sequence(zt.highlight(Gl,"ident"),zt.highlightStr("#","control")).optional(),zt.highlight(Lx,"ident")),LG=zt.sequence(Jm.trim(vn.P_UTILS.optionalWhitespace()),zt.sequence(Xm,Zx.trim(vn.P_UTILS.optionalWhitespace()),Km).trim(vn.P_UTILS.optionalWhitespace()).optional(),zt.sequence(zt.highlightStr(":","control").trim(vn.P_UTILS.optionalWhitespace()),Jl).trim(vn.P_UTILS.optionalWhitespace()).optional()),UG=zt.sequence(Jm.trim(vn.P_UTILS.optionalWhitespace()).optional(),zt.sequence(Xm,Zx.trim(vn.P_UTILS.optionalWhitespace()),Km).trim(vn.P_UTILS.optionalWhitespace()).optional(),zt.sequence(zt.highlightStr(":","control").trim(vn.P_UTILS.optionalWhitespace()),Jl).trim(vn.P_UTILS.optionalWhitespace()).optional()),zT=Vx.P.or(zt.sequence(zt.highlightStr("INPUT","control"),Hl,qx.trim(vn.P_UTILS.optionalWhitespace()),Yl.skip(vn.P_UTILS.optionalWhitespace()),Hl,UG,Yl),zt.sequence(zt.highlightStr("INPUT","control"),Hl,LG,Yl)),UT=zt.highlight(Ym,"ident"),zG=zt.sequence(zt.highlightStr("{","string"),Jl,zt.highlightStr("}","string")),VG=zt.sequence(UT,zt.sequence(zG,UT).many()),qG=zt.sequence(Jm.trim(vn.P_UTILS.optionalWhitespace()).optional(),zt.sequence(Xm,Zx.trim(vn.P_UTILS.optionalWhitespace()).optional(),Km).trim(vn.P_UTILS.optionalWhitespace()).optional(),zt.sequence(zt.highlightStr(":","control").trim(vn.P_UTILS.optionalWhitespace()),Jl).trim(vn.P_UTILS.optionalWhitespace()).optional()),VT=zt.sequence(zt.highlightStr("VIEW","control"),Hl,VG,Yl,zt.sequence(Hl.skip(vn.P_UTILS.optionalWhitespace()),qG,Yl).optional()),qT=zt.sequence(zt.highlightStr("BUTTON","control"),Hl,zt.separateBy(qx,jx.trim(vn.P_UTILS.optionalWhitespace())),Yl);var ys=class{str;highlights;parsingError;constructor(e,r,i){this.str=e,this.highlights=r.filter(n=>n.range.from.index!==n.range.to.index),this.parsingError=i}getHighlights(){if(this.parsingError===void 0)return this.highlights;let e;return this.str[this.parsingError.parseFailure.furthest.index]===` -`?e={index:this.parsingError.parseFailure.furthest.index+1,column:1,line:this.parsingError.parseFailure.furthest.line+1}:e={index:this.parsingError.parseFailure.furthest.index+1,column:this.parsingError.parseFailure.furthest.column+1,line:this.parsingError.parseFailure.furthest.line},[new Wl({from:this.parsingError.parseFailure.furthest,to:e},"error")]}};function Mf(t,e,r){return Math.min(Math.max(t,e),r)}function Qm(t,e,r){return t!==void 0?Math.min(Math.max(t,e),r):void 0}function Gx(t,e,r,i,n){return(t-e)/(r-e)*(n-i)+i}function Wx(t,e){return(t%e+e)%e}function bs(t,e){if(t===null&&e===null)return!0;if(t===null||e===null||typeof t!=typeof e)return!1;if(typeof t=="object"&&typeof e=="object"){if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return!1;for(let n=0;n(n.DEFAULT="default",n.PRIMARY="primary",n.DESTRUCTIVE="destructive",n.PLAIN="plain",n))(Gr||{}),Wn=(d=>(d.COMMAND="command",d.JS="js",d.OPEN="open",d.INPUT="input",d.SLEEP="sleep",d.TEMPLATER_CREATE_NOTE="templaterCreateNote",d.RUN_TEMPLATER_FILE="runTemplaterFile",d.UPDATE_METADATA="updateMetadata",d.CREATE_NOTE="createNote",d.REPLACE_IN_NOTE="replaceInNote",d.REGEXP_REPLACE_IN_NOTE="regexpReplaceInNote",d.REPLACE_SELF="replaceSelf",d.INSERT_INTO_NOTE="insertIntoNote",d.INLINE_JS="inlineJS",d))(Wn||{}),Cf=class t{type;shiftKey;ctrlKey;altKey;constructor(e,r,i,n){this.type=e,this.shiftKey=r,this.ctrlKey=i,this.altKey=n}static fromMouseEvent(e,r){return new t(r,e.shiftKey,e.ctrlKey,e.altKey)}openInNewTab(){return this.type==="middle"||this.ctrlKey}};var Ur=class{actionType;mb;constructor(e,r){this.actionType=e,this.mb=r}};var ad=class extends Ur{constructor(e){super("command",e)}async run(e,r,i,n,o){this.mb.internal.executeCommandById(r.command)}create(){return{type:"command",command:""}}getActionLabel(){return"Run a command"}};var sd=class extends Ur{constructor(e){super("createNote",e)}async run(e,r,i,n,o){if(r.openIfAlreadyExists){let a=rd(td(r.folderPath??"",r.fileName),"md");if(await this.mb.file.exists(a)){await this.mb.file.open(a,"",!1);return}}await this.mb.file.create(r.folderPath??"",r.fileName,"md",r.openNote??!1,o.openInNewTab())}create(){return{type:"createNote",folderPath:"/",fileName:"Untitled",openNote:!0,openIfAlreadyExists:!1}}getActionLabel(){return"Create a new note"}};var ud=class extends Ur{constructor(e){super("inlineJS",e)}async run(e,r,i,n,o){if(!this.mb.getSettings().enableJs)throw new da({errorLevel:"CRITICAL",effect:"Can't run button action that requires JS evaluation.",cause:"JS evaluation is disabled in the plugin settings."});let a={buttonConfig:structuredClone(e),args:structuredClone(r.args),buttonContext:structuredClone(n),click:structuredClone(o)};(await this.mb.internal.jsEngineRunCode(r.code,i,a))()}create(){return{type:"inlineJS",code:'console.log("Hello world")',args:{}}}getActionLabel(){return"Run JavaScript code"}};var ld=class extends Ur{constructor(e){super("input",e)}async run(e,r,i,n,o){let a=document.activeElement;a&&a instanceof HTMLInputElement&&(a.setRangeText(r.str,a.selectionStart,a.selectionEnd,"end"),a.dispatchEvent(new Event("input",{bubbles:!0})))}create(){return{type:"input",str:""}}getActionLabel(){return"Insert text at cursor"}};var Ql=Ar(yo()),xo=Ar(Ji());function WT(t){if(t==="+")return"+";if(t==="-")return"-";throw new Error(`Invalid LineNumberOp: ${t}`)}function jG(t){if(t===void 0)return 1;if(t==="+")return 1;if(t==="-")return-1;throw new Error(`Invalid LineNumberOp: ${t}`)}var Kl=class{literal;op;number;constructor(e,r,i){this.literal=e,this.op=r,this.number=i}evaluate(e){let r=this.resolveLiteral(e),i=jG(this.op);return r!==void 0&&this.number!==void 0?r+this.number*i:this.number!==void 0?this.number*i:r!==void 0?r:0}resolveLiteral(e){if(this.literal!==void 0){if(this.literal in e)return e[this.literal];throw new Error(`Error while evaluating line number expression: Literal "${this.literal}" not available.`)}}};var Jx=xo.P.sequenceMap((t,e)=>t===void 0?e:-e,xo.P.string("-").optional(),xo.P.or(xo.P.sequenceMap((t,e,r)=>Number(t+e+r),Ql.P_UTILS.digits(),xo.P.string("."),Ql.P_UTILS.digits()),Ql.P_UTILS.digits().map(t=>Number(t)))).thenEof(),$f=xo.P.sequenceMap((t,e)=>t===void 0?e:-e,xo.P.string("-").optional(),Ql.P_UTILS.digits().map(t=>Number(t))).thenEof(),If=xo.P.or(xo.P.sequenceMap((t,e,r)=>new Kl(t,WT(e),r),Gn,xo.P.or(xo.P.string("+"),xo.P.string("-")).trim(Ql.P_UTILS.optionalWhitespace()),$f),Gn.map(t=>new Kl(t,void 0,void 0)),$f.map(t=>new Kl(void 0,void 0,t)));var cd=class extends Ur{constructor(e){super("insertIntoNote",e)}async run(e,r,i,n,o){let a=r.templater?await this.mb.internal.evaluateTemplaterTemplate(this.mb.file.resolveFilePathLike(r.value),i):r.value,s=fn(If,r.line.toString());await this.mb.file.atomicModify(i,l=>{let u=l.split(` -`),c=this.mb.file.createLineNumberContext(l,n.position),f=s.evaluate(c);if(f<1||f>u.length)throw new Error("Line number out of bounds");return u=[...u.slice(0,f-1),a,...u.slice(f-1)],u.join(` -`)})}create(){return{type:"insertIntoNote",line:0,value:"Some text",templater:!1}}getActionLabel(){return"Insert text into the note"}};var fd=class extends Ur{constructor(e){super("js",e)}async run(e,r,i,n,o){if(!this.mb.getSettings().enableJs)throw new da({errorLevel:"CRITICAL",effect:"Can't run button action that requires JS evaluation.",cause:"JS evaluation is disabled in the plugin settings."});let a={buttonConfig:structuredClone(e),args:structuredClone(r.args),buttonContext:structuredClone(n),click:structuredClone(o)};(await this.mb.internal.jsEngineRunFile(r.file,i,a))()}create(){return{type:"js",file:"",args:{}}}getActionLabel(){return"Run a JavaScript file"}};var HT=Ar(yo()),si=Ar(Ji());var YT=si.P.sequence(Gl,si.P.or(si.P.string("#").then(si.P.manyNotOf("[]#|:")),si.P.string("#").result(void 0),si.P.succeed(void 0)),si.P.string("|").then(si.P.manyNotOf("[]")).optional()),pd=si.P.or(si.P.sequenceMap((t,e)=>new qu(t!==void 0,e[0],e[1],e[2],!0),si.P.string("!").optional(),YT.wrapString("[[","]]")),si.P.sequenceMap((t,e,r)=>{let i=!Xl(r);return new qu(t!==void 0,r,void 0,e,i)},si.P.string("!").optional(),si.P.manyNotOf("[]").wrapString("[","]"),si.P.manyNotOf("()").wrapString("(",")"))),ZG=si.P.separateBy(pd,si.P.string(",").trim(HT.P_UTILS.optionalWhitespace())),qu=class t{isEmbed;target;block;alias;internal;constructor(e,r,i,n,o){this.isEmbed=e,this.target=r,this.block=i,this.alias=n,this.internal=o??!0}static fromUrl(e){return new t(!1,e.href,void 0,e.hostname,!1)}fullTarget(){return this.block?`${this.target}#${this.block}`:this.target}open(e,r,i){this.internal?e.file.open(this.fullTarget(),r,i):ed(this.target)}toString(){let e=this.isEmbed?"!":"";if(this.internal){let r=this.alias?`|${this.alias}`:"";return`${e}[[${this.fullTarget()}${r}]]`}else{let r=this.alias??this.fullTarget();return`${e}[${r}](${this.fullTarget()})`}}},_n=class t{static parseLink(e){return fn(pd.thenEof(),e)}static parseLinkList(e){return fn(ZG.thenEof(),e)}static isLink(e){return pd.thenEof().tryParse(e).success}static urlToLink(e){return qu.fromUrl(e)}static parseLinkOrUrl(e){return Xl(e)?t.urlToLink(new URL(e)):t.parseLink(e)}static interpretAsLink(e){let r=pd.thenEof().tryParse(e);if(r.success)return r.value;let i=YT.thenEof().tryParse(e);if(i.success)return new qu(!1,i.value[0],i.value[1],i.value[2],!0);if(Xl(e)){let n=new URL(e);return qu.fromUrl(n)}}};var md=class extends Ur{constructor(e){super("open",e)}async run(e,r,i,n,o){let a=o.openInNewTab()||(r.newTab??!1),s=_n.interpretAsLink(r.link);if(!s)throw new Error("Invalid link");s.open(this.mb,i,a)}create(){return{type:"open",link:"",newTab:!0}}getActionLabel(){return"Open a link"}};var dd=class extends Ur{constructor(e){super("regexpReplaceInNote",e)}async run(e,r,i,n,o){if(r.regexp==="")throw new Error("Regexp cannot be empty");await this.mb.file.atomicModify(i,a=>a.replace(new RegExp(r.regexp,r.regexpFlags??"g"),r.replacement))}create(){return{type:"regexpReplaceInNote",regexp:"([A-Z])\\w+",replacement:"Replacement text",regexpFlags:"g"}}getActionLabel(){return"Replace text in note using regexp"}};var hd=class extends Ur{constructor(e){super("replaceInNote",e)}async run(e,r,i,n,o){let a=r.templater?await this.mb.internal.evaluateTemplaterTemplate(this.mb.file.resolveFilePathLike(r.replacement),i):r.replacement,s=fn(If,r.fromLine.toString()),l=fn(If,r.toLine.toString());await this.mb.file.atomicModify(i,u=>{let c=u.split(` -`),f=this.mb.file.createLineNumberContext(u,n.position),m=s.evaluate(f),p=l.evaluate(f);if(m>p)throw new Error(`From line (${m}) can't be greater than to line (${p})`);if(m<1)throw new Error(`From line (${m}) can't smaller than 1.`);if(p>c.length)throw new Error(`To line (${p}) can't greater than the file length ${c.length}.`);return c=[...c.slice(0,m-1),a,...c.slice(p)],c.join(` -`)})}create(){return{type:"replaceInNote",fromLine:0,toLine:0,replacement:"Replacement text",templater:!1}}getActionLabel(){return"Replace text in note"}};var gd=class extends Ur{constructor(e){super("replaceSelf",e)}async run(e,r,i,n,o){if(n.isInline)throw new Error("Replace self action not supported for inline buttons");if(n.position===void 0)throw new Error("Position of the button in the note is unknown");if(n.position.lineStart>n.position.lineEnd)throw new Error("Position of the button in the note is invalid");let a=n.position,s=r.templater?await this.mb.internal.evaluateTemplaterTemplate(this.mb.file.resolveFilePathLike(r.replacement),i):r.replacement;await this.mb.file.atomicModify(i,l=>{let u=l.split(` -`);if(a.lineStart<0||a.lineEnd>u.length)throw new Error("Position of the button in the note is out of bounds");return u=[...u.slice(0,a.lineStart),s,...u.slice(a.lineEnd+1)],u.join(` -`)})}create(){return{type:"replaceSelf",replacement:"Replacement text",templater:!1}}getActionLabel(){return"Replace button with text"}};var vd=class extends Ur{constructor(e){super("runTemplaterFile",e)}async run(e,r,i,n,o){let a=this.mb.file.resolveFilePathLike(r.templateFile);await this.mb.internal.evaluateTemplaterTemplate(a,i)}create(){return{type:"runTemplaterFile",templateFile:""}}getActionLabel(){return"Run a templater file"}};var yd=class extends Ur{constructor(e){super("sleep",e)}async run(e,r,i,n,o){await new Promise(a=>setTimeout(a,r.ms))}create(){return{type:"sleep",ms:0}}getActionLabel(){return"Sleep for some time"}};var bd=class extends Ur{constructor(e){super("templaterCreateNote",e)}async run(e,r,i,n,o){if(r.openIfAlreadyExists&&r.fileName){let a=rd(td(r.folderPath??"",r.fileName),"md");if(await this.mb.file.exists(a)){await this.mb.file.open(a,"",!1);return}}await this.mb.internal.createNoteWithTemplater(r.templateFile,r.folderPath,r.fileName,r.openNote,o.openInNewTab())}create(){return{type:"templaterCreateNote",templateFile:"",folderPath:"/",fileName:"",openNote:!0,openIfAlreadyExists:!1}}getActionLabel(){return"Create a new note using Templater"}};function _o(t){if(t.toLowerCase()==="null")return null;if(t==="true")return!0;if(t==="false")return!1;{let e=Jx.tryParse(t);return e.success?e.value:t}}function yn(t){return t===void 0||t===null?"":typeof t=="string"?t:typeof t=="boolean"?t?"true":"false":t.toString()}function au(t){return t===null||typeof t=="string"||typeof t=="boolean"||typeof t=="number"}function Zo(t){if(t!=null){if(au(t))return[t];if(typeof t=="object"&&Array.isArray(t))return t.filter(e=>au(e))}}function ec(t){if(typeof t=="number")return t;if(typeof t=="string"){let e=Jx.tryParse(t);if(e.success)return e.value}}function Ia(t){return au(t)?yn(t):void 0}function su(t){return au(t)?t:void 0}function ju(t,e){return Array.isArray(t)?t.map(r=>Xx(r,e)).filter(r=>r!=="").join(", "):Xx(t,e)}function Xx(t,e){return t==null?e?"":"null":typeof t=="function"?"":typeof t=="object"||Array.isArray(t)?JSON.stringify(t):t.toString()}function XT(t,e){return Array.isArray(t)?t.map(r=>JT(r,e)).filter(r=>r!==""):JT(t,e)}function JT(t,e){return typeof t=="string"?_n.isLink(t)?_n.parseLink(t):Xl(t)?_n.urlToLink(new URL(t)):t:Xx(t,e)}var xd=class extends Ur{constructor(e){super("updateMetadata",e)}async run(e,r,i,n,o){let a=this.mb.bindTargetParser.fromStringAndValidate(r.bindTarget,i);if(r.evaluate){if(!this.mb.getSettings().enableJs)throw new da({errorLevel:"CRITICAL",effect:"Can't run button action that requires JS evaluation.",cause:"JS evaluation is disabled in the plugin settings."});let s=new Function("x","getMetadata",`return ${r.value};`);this.mb.api.updateMetadata(a,l=>s(l,u=>this.mb.api.getMetadata(this.mb.api.parseBindTarget(u,i))))}else this.mb.api.setMetadata(a,_o(r.value))}create(){return{type:"updateMetadata",bindTarget:"",evaluate:!1,value:""}}getActionLabel(){return"Update metadata"}};var _d=class{mb;actionContexts;constructor(e){this.mb=e,this.actionContexts={command:new ad(e),open:new md(e),js:new fd(e),input:new ld(e),sleep:new yd(e),templaterCreateNote:new bd(e),updateMetadata:new xd(e),createNote:new sd(e),replaceInNote:new hd(e),replaceSelf:new gd(e),regexpReplaceInNote:new dd(e),insertIntoNote:new cd(e),inlineJS:new ud(e),runTemplaterFile:new vd(e)}}createDefaultButtonConfig(){return{label:"This is a button",icon:"",style:"default",class:"",cssStyle:"",backgroundImage:"",tooltip:"",id:"",hidden:!1,actions:[]}}async runButtonActions(e,r,i,n){try{if(e.action)await this.runAction(e,e.action,r,i,n);else if(e.actions)for(let o of e.actions)await this.runAction(e,o,r,i,n);else console.warn("meta-bind | ButtonMDRC >> no action defined")}catch(o){console.warn("meta-bind | ButtonMDRC >> error while running action",o),this.mb.internal.showNotice("meta-bind | Error while running button action. Check the console for details.")}}createDefaultAction(e){return this.actionContexts[e].create()}async runAction(e,r,i,n,o){let a=r.type;await this.actionContexts[a].run(e,r,i,n,o)}getActionLabel(e){return this.actionContexts[e].getActionLabel()}};var rr=class{errors;otherError;subject;constructor(e){this.subject=e,this.errors=[]}add(e){e instanceof Error?(e instanceof Zn?this.errors.push(e):this.otherError=e,console.warn(e)):(console.trace(""),console.warn("[MB_ERROR_CONTAINER] received invalid error type",e))}merge(e){return this.errors=this.errors.concat(e.errors),e.otherError&&(this.otherError=e.otherError),this}hasErrors(){if(this.otherError)return!0;for(let e of this.errors)if(e.errorLevel==="ERROR"||e.errorLevel==="CRITICAL")return!0;return!1}hasCriticalErrors(){if(this.otherError)return!0;for(let e of this.errors)if(e.errorLevel==="CRITICAL")return!0;return!1}hasWarnings(){for(let e of this.errors)if(e.errorLevel==="WARNING")return!0;return!1}isEmpty(){return this.errors.length===0&&!this.otherError}getErrors(){let e=this.errors.filter(r=>r.errorLevel==="ERROR"||r.errorLevel==="CRITICAL");return this.otherError?e.concat([this.otherError]):e}getWarnings(){return this.errors.filter(e=>e.errorLevel==="WARNING")}};var wd=class{value;count;constructor(e){this.value=e,this.count=1}getValue(){return this.value}increment(){return this.count+=1,this.count}decrement(){return this.count-=1,this.count}getCount(){return this.count}isEmpty(){return this.count===0}};var Sd=class{mb;buttons;buttonLoadListeners;buttonTemplates;constructor(e){this.mb=e,this.buttons=new Map,this.buttonLoadListeners=new Map,this.buttonTemplates=new Map}setButtonTemplates(e){let r=new Set,i=new rr("ButtonManager");this.buttonTemplates.clear();for(let n of e)n.id===void 0||n.id===""?i.add(new vs({errorLevel:"ERROR",cause:`Button with label "${n.label}" has no id, but button templates must have an id.`,effect:"Button templates could not be saved."})):r.has(n.id)?i.add(new vs({errorLevel:"ERROR",cause:`Button id "${n.id}" is not unique. The same id is used by multiple buttons.`,effect:"Button templates could not be saved."})):(r.add(n.id),this.buttonTemplates.set(n.id,n));return i.hasErrors()&&this.buttonTemplates.clear(),i}registerButtonLoadListener(e,r,i){let n=this.getButton(e,r);n&&i(n),this.buttonLoadListeners.has(e)||this.buttonLoadListeners.set(e,new Map);let o=this.buttonLoadListeners.get(e);o.has(r)||o.set(r,new Map);let a=o.get(r),s=_r();return a.set(s,i),()=>this.removeButtonLoadListener(e,r,s)}notifyButtonLoadListeners(e,r){let i=this.getButton(e,r);if(!i)throw new Error(`ButtonManager | button with id ${r} does not exist`);let n=this.buttonLoadListeners.get(e);if(!n)return;let o=n.get(r);if(o)for(let[a,s]of o)s(i)}removeButtonLoadListener(e,r,i){let n=this.buttonLoadListeners.get(e);if(!n)return;let o=n.get(r);o&&(o.delete(i),o.size===0&&n.delete(r),n.size===0&&this.buttonLoadListeners.delete(e))}addButton(e,r){if(r.id===void 0||r.id==="")throw new Error("ButtonManager | button id is undefined");if(this.buttonTemplates.has(r.id))throw new Error(`ButtonManager | button with id "${r.id}" already exists in the button templates`);this.buttons.has(e)||this.buttons.set(e,new Map),this.buttons.get(e).set(r.id,new wd(r)),this.notifyButtonLoadListeners(e,r.id)}getButton(e,r){if(this.buttonTemplates.has(r))return this.buttonTemplates.get(r);let i=this.buttons.get(e);if(i)return i.get(r)?.getValue()}removeButton(e,r){let i=this.buttons.get(e);i&&(i.get(r)?.decrement(),i.get(r)?.isEmpty()&&i.delete(r),i.size===0&&this.buttons.delete(e))}};var uu=(x=>(x.TOGGLE="toggle",x.SLIDER="slider",x.TEXT="text",x.TEXT_AREA="textArea",x.SELECT="select",x.MULTI_SELECT="multiSelect",x.DATE="date",x.TIME="time",x.DATE_PICKER="datePicker",x.NUMBER="number",x.SUGGESTER="suggester",x.EDITOR="editor",x.IMAGE_SUGGESTER="imageSuggester",x.PROGRESS_BAR="progressBar",x.INLINE_SELECT="inlineSelect",x.LIST="list",x.LIST_SUGGESTER="listSuggester",x.INLINE_LIST_SUGGESTER="inlineListSuggester",x.INLINE_LIST="inlineList",x.IMAGE_LIST_SUGGESTER="imageListSuggester",x.DATE_TIME="dateTime",x.INVALID="invalid",x))(uu||{}),nn=(S=>(S.CLASS="class",S.ADD_LABELS="addLabels",S.MIN_VALUE="minValue",S.MAX_VALUE="maxValue",S.STEP_SIZE="stepSize",S.OPTION="option",S.TITLE="title",S.OPTION_QUERY="optionQuery",S.SHOWCASE="showcase",S.ON_VALUE="onValue",S.OFF_VALUE="offValue",S.DEFAULT_VALUE="defaultValue",S.PLACEHOLDER="placeholder",S.USE_LINKS="useLinks",S.LIMIT="limit",S.MULTI_LINE="multiLine",S.ALLOW_OTHER="allowOther",S.INVALID="invalid",S))(nn||{}),Dd={toggle:{type:"toggle",allowInBlock:!0,allowInline:!0},slider:{type:"slider",allowInBlock:!0,allowInline:!0},text:{type:"text",allowInBlock:!0,allowInline:!0},textArea:{type:"textArea",allowInBlock:!0,allowInline:!0},select:{type:"select",allowInBlock:!0,allowInline:!1},multiSelect:{type:"multiSelect",allowInBlock:!0,allowInline:!1},date:{type:"date",allowInBlock:!0,allowInline:!0},time:{type:"time",allowInBlock:!0,allowInline:!0},datePicker:{type:"datePicker",allowInBlock:!0,allowInline:!0},number:{type:"number",allowInBlock:!0,allowInline:!0},suggester:{type:"suggester",allowInBlock:!0,allowInline:!0},editor:{type:"editor",allowInBlock:!0,allowInline:!1},imageSuggester:{type:"imageSuggester",allowInBlock:!0,allowInline:!0},progressBar:{type:"progressBar",allowInBlock:!0,allowInline:!1},inlineSelect:{type:"inlineSelect",allowInBlock:!0,allowInline:!0},list:{type:"list",allowInBlock:!0,allowInline:!1},listSuggester:{type:"listSuggester",allowInBlock:!0,allowInline:!1},inlineListSuggester:{type:"inlineListSuggester",allowInBlock:!0,allowInline:!0},inlineList:{type:"inlineList",allowInBlock:!0,allowInline:!0},imageListSuggester:{type:"imageListSuggester",allowInBlock:!0,allowInline:!1},dateTime:{type:"dateTime",allowInBlock:!0,allowInline:!0},invalid:{type:"invalid",allowInBlock:!1,allowInline:!1}};var wr={addLabels:{type:"addLabels",allowedFieldTypes:["slider","progressBar"],values:[[],[{name:"value",allowed:["true","false"],description:""}]],allowMultiple:!1},class:{type:"class",allowedFieldTypes:[],values:[[{name:"className",allowed:[],description:"the name of the css class to add"}]],allowMultiple:!0},defaultValue:{type:"defaultValue",allowedFieldTypes:[],values:[[{name:"value",allowed:[],description:""}]],allowMultiple:!1},maxValue:{type:"maxValue",allowedFieldTypes:["slider","progressBar"],values:[[{name:"value",allowed:["number"],description:"the maximally allowed value"}]],allowMultiple:!1},minValue:{type:"minValue",allowedFieldTypes:["slider","progressBar"],values:[[{name:"value",allowed:["number"],description:"the minimally allowed value"}]],allowMultiple:!1},stepSize:{type:"stepSize",allowedFieldTypes:["slider","progressBar"],values:[[{name:"value",allowed:["number"],description:"the step size for sliders"}]],allowMultiple:!1},offValue:{type:"offValue",allowedFieldTypes:["toggle"],values:[[{name:"value",allowed:[],description:"the value for the off state"}]],allowMultiple:!1},onValue:{type:"onValue",allowedFieldTypes:["toggle"],values:[[{name:"value",allowed:[],description:"the value for the off state"}]],allowMultiple:!1},option:{type:"option",allowedFieldTypes:["select","multiSelect","suggester","imageSuggester","inlineSelect","listSuggester","inlineListSuggester","imageListSuggester"],values:[[{name:"value",allowed:[],description:"the value and display name of the option"}],[{name:"value",allowed:[],description:"the value of the option"},{name:"name",allowed:[],description:"the display name of the option"}]],allowMultiple:!0},optionQuery:{type:"optionQuery",allowedFieldTypes:["suggester","imageSuggester","listSuggester","inlineListSuggester","imageListSuggester"],values:[[{name:"value",allowed:[],description:"the query for options"}]],allowMultiple:!0},placeholder:{type:"placeholder",allowedFieldTypes:["text","textArea","number","list","inlineList"],values:[[{name:"value",allowed:[],description:""}]],allowMultiple:!1},showcase:{type:"showcase",allowedFieldTypes:[],values:[[],[{name:"value",allowed:["true","false"],description:""}]],allowMultiple:!1},title:{type:"title",allowedFieldTypes:[],values:[[{name:"value",allowed:[],description:""}]],allowMultiple:!1},useLinks:{type:"useLinks",allowedFieldTypes:["suggester","listSuggester","inlineListSuggester"],values:[[],[{name:"value",allowed:["true","partial","false"],description:""}]],allowMultiple:!1},limit:{type:"limit",allowedFieldTypes:["text","textArea","list","inlineList"],values:[[{name:"value",allowed:["number"],description:"a character limit for text fields"}]],allowMultiple:!1},multiLine:{type:"multiLine",allowedFieldTypes:["list"],values:[[],[{name:"value",allowed:["true","false"],description:""}]],allowMultiple:!1},allowOther:{type:"allowOther",allowedFieldTypes:["suggester","listSuggester","inlineListSuggester"],values:[[],[{name:"value",allowed:["true","false"],description:""}]],allowMultiple:!1},invalid:{type:"invalid",allowedFieldTypes:[],values:[[]],allowMultiple:!0}},Ff=(o=>(o.MATH="math",o.TEXT="text",o.LINK="link",o.IMAGE="image",o.INVALID="invalid",o))(Ff||{}),Zu=(n=>(n.RENDER_MARKDOWN="renderMarkdown",n.HIDDEN="hidden",n.CLASS="class",n.INVALID="invalid",n))(Zu||{}),tc={renderMarkdown:{type:"renderMarkdown",allowedFieldTypes:["text"],values:[[],[{name:"value",allowed:["true","false"],description:""}]],allowMultiple:!1},hidden:{type:"hidden",allowedFieldTypes:[],values:[[],[{name:"value",allowed:["true","false"],description:""}]],allowMultiple:!1},class:{type:"class",allowedFieldTypes:[],values:[[{name:"className",allowed:[],description:"the name of the css class to add"}]],allowMultiple:!0},invalid:{type:"invalid",allowedFieldTypes:[],values:[[]],allowMultiple:!0}},Ed=8;var Be=!1;var Ki=Array.isArray,KT=Array.prototype.indexOf,kf=Array.from,Kx=Object.keys,xi=Object.defineProperty,Qi=Object.getOwnPropertyDescriptor,Qx=Object.getOwnPropertyDescriptors,Ad=Object.prototype,QT=Array.prototype,Gu=Object.getPrototypeOf,e_=Object.isExtensible;var eo=()=>{};function Pf(t){for(var e=0;e{t=i,e=n});return{promise:r,resolve:t,reject:e}}var to=Symbol("$state"),Bf=Symbol("legacy props"),tN=Symbol(""),Td=Symbol("proxy path"),rc=new class extends Error{name="StaleReactionError";message="The reaction that called `getAbortSignal()` was re-run or destroyed"};var nc=3,Go=8;function rN(){if(Be){let t=new Error("await_outside_boundary\nCannot await outside a `` with a `pending` snippet\nhttps://svelte.dev/e/await_outside_boundary");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/await_outside_boundary")}function Of(t){if(Be){let e=new Error(`lifecycle_outside_component -\`${t}(...)\` can only be used during component initialisation -https://svelte.dev/e/lifecycle_outside_component`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function nN(){if(Be){let t=new Error("async_derived_orphan\nCannot create a `$derived(...)` with an `await` expression outside of an effect tree\nhttps://svelte.dev/e/async_derived_orphan");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/async_derived_orphan")}function t_(){if(Be){let t=new Error("bind_invalid_checkbox_value\nUsing `bind:value` together with a checkbox input is not allowed. Use `bind:checked` instead\nhttps://svelte.dev/e/bind_invalid_checkbox_value");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/bind_invalid_checkbox_value")}function iN(){if(Be){let t=new Error(`derived_references_self -A derived value cannot reference itself recursively -https://svelte.dev/e/derived_references_self`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/derived_references_self")}function oN(t){if(Be){let e=new Error(`effect_in_teardown -\`${t}\` cannot be used inside an effect cleanup function -https://svelte.dev/e/effect_in_teardown`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_in_teardown")}function aN(){if(Be){let t=new Error("effect_in_unowned_derived\nEffect cannot be created inside a `$derived` value that was not itself created inside an effect\nhttps://svelte.dev/e/effect_in_unowned_derived");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function sN(t){if(Be){let e=new Error(`effect_orphan -\`${t}\` can only be used inside an effect (e.g. during component initialisation) -https://svelte.dev/e/effect_orphan`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_orphan")}function uN(){if(Be){let t=new Error(`effect_update_depth_exceeded -Maximum update depth exceeded. This typically indicates that an effect reads and writes the same piece of state -https://svelte.dev/e/effect_update_depth_exceeded`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function lN(){if(Be){let t=new Error("flush_sync_in_effect\nCannot use `flushSync` inside an effect\nhttps://svelte.dev/e/flush_sync_in_effect");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/flush_sync_in_effect")}function cN(){if(Be){let t=new Error(`hydration_failed -Failed to hydrate the application -https://svelte.dev/e/hydration_failed`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/hydration_failed")}function fN(){if(Be){let t=new Error("invalid_snippet\nCould not `{@render}` snippet due to the expression being `null` or `undefined`. Consider using optional chaining `{@render snippet?.()}`\nhttps://svelte.dev/e/invalid_snippet");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/invalid_snippet")}function pN(t){if(Be){let e=new Error(`props_invalid_value -Cannot do \`bind:${t}={undefined}\` when \`${t}\` has a fallback value -https://svelte.dev/e/props_invalid_value`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/props_invalid_value")}function mN(t){if(Be){let e=new Error(`props_rest_readonly -Rest element properties of \`$props()\` such as \`${t}\` are readonly -https://svelte.dev/e/props_rest_readonly`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/props_rest_readonly")}function dN(t){if(Be){let e=new Error(`rune_outside_svelte -The \`${t}\` rune is only available inside \`.svelte\` and \`.svelte.js/ts\` files -https://svelte.dev/e/rune_outside_svelte`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/rune_outside_svelte")}function hN(){if(Be){let t=new Error("state_descriptors_fixed\nProperty descriptors defined on `$state` objects must contain `value` and always be `enumerable`, `configurable` and `writable`.\nhttps://svelte.dev/e/state_descriptors_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function gN(){if(Be){let t=new Error("state_prototype_fixed\nCannot set prototype of `$state` object\nhttps://svelte.dev/e/state_prototype_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_prototype_fixed")}function vN(){if(Be){let t=new Error("state_unsafe_mutation\nUpdating state inside `$derived(...)`, `$inspect(...)` or a template expression is forbidden. If the value should not be reactive, declare it without `$state`\nhttps://svelte.dev/e/state_unsafe_mutation");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_unsafe_mutation")}var xs={};var Xr=Symbol(),Wo=Symbol("filename"),yN=Symbol("hmr"),bN="http://www.w3.org/1999/xhtml";var Wu="font-weight: bold",Hu="font-weight: normal";function xN(t){Be?console.warn(`%c[svelte] await_reactivity_loss -%cDetected reactivity loss when reading \`${t}\`. This happens when state is read in an async function after an earlier \`await\` -https://svelte.dev/e/await_reactivity_loss`,Wu,Hu):console.warn("https://svelte.dev/e/await_reactivity_loss")}function _N(t,e){Be?console.warn(`%c[svelte] await_waterfall -%cAn async derived, \`${t}\` (${e}) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app -https://svelte.dev/e/await_waterfall`,Wu,Hu):console.warn("https://svelte.dev/e/await_waterfall")}function wN(t,e,r){Be?console.warn(`%c[svelte] hydration_attribute_changed -%cThe \`${t}\` attribute on \`${e}\` changed its value between server and client renders. The client value, \`${r}\`, will be ignored in favour of the server value -https://svelte.dev/e/hydration_attribute_changed`,Wu,Hu):console.warn("https://svelte.dev/e/hydration_attribute_changed")}function Yu(t){Be?console.warn(`%c[svelte] hydration_mismatch -%c${t?`Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near ${t}`:"Hydration failed because the initial UI does not match what was rendered on the server"} -https://svelte.dev/e/hydration_mismatch`,Wu,Hu):console.warn("https://svelte.dev/e/hydration_mismatch")}function SN(){Be?console.warn(`%c[svelte] lifecycle_double_unmount -%cTried to unmount a component that was not mounted -https://svelte.dev/e/lifecycle_double_unmount`,Wu,Hu):console.warn("https://svelte.dev/e/lifecycle_double_unmount")}function DN(){Be?console.warn("%c[svelte] select_multiple_invalid_value\n%cThe `value` property of a `');function Z_(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(a){Re(i,a,!0)}var o=eH();return Mt(o),o.__input=[QW,r,e,i],At(o,()=>U(i),a=>Re(i,a)),ee(t,o),Te({setValue:n})}Ft(["input"]);var W_=Ar(ip()),fi=class t{static dateFormat;static stringify(e){return e.format(this.dateFormat)}static parse(e){return(0,W_.default)(e,t.dateFormat)}static getDefaultDate(){return(0,W_.default)(new Date)}static getDefaultDay(){return new Date().getDate()}static getDefaultMonth(){return 1}static getDefaultYear(){return new Date().getFullYear()}};var uh=class extends or{filterValue(e){return Ia(e)}getFallbackDefaultValue(){return fi.stringify(fi.getDefaultDate())}getSvelteComponent(){return Z_}rawMapValue(e){return e}rawReverseMapValue(e){return e}};var tH=ue('
');function Rr(t,e){Ae(e,!0);let r=pt(e,"iconName",3,""),i=ft(void 0);io(()=>U(i)?e.mb.internal.setIcon(U(i),r()):void 0);var n=Or(),o=je(n);{var a=s=>{var l=tH();xa(l,u=>Re(i,u),()=>U(i)),ee(s,l)};ot(o,s=>{r().length>0&&s(a)})}ee(t,n),Te()}function rH(t,e,r){r.showDatePicker()}function nH(t,e,r){t.key===" "&&r.showDatePicker()}var iH=ue('
');function H_(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(u){Re(i,u,!0)}var o=iH();o.__click=[rH,r,e],o.__keydown=[nH,r,e];var a=he(o),s=he(a,!0);pe(a);var l=fe(a,2);return Rr(l,{get mb(){return e.mb},iconName:"calendar"}),pe(o),ze(u=>St(s,u),[()=>U(i)?U(i).format(e.dateFormat):"none"]),ee(t,o),Te({setValue:n})}Ft(["click","keydown"]);var lh=class extends or{options;constructor(e){super(e),this.options=this.mountable.getArguments("option")}filterValue(e){if(e===null)return null;if(e===void 0||typeof e!="string")return;let r=fi.parse(e);if(r.isValid())return fi.stringify(r)}getFallbackDefaultValue(){return fi.getDefaultDate()}getSvelteComponent(){return H_}rawMapValue(e){return e===null?null:(console.log("value",e,fi.stringify(e),fi.dateFormat),fi.stringify(e))}rawReverseMapValue(e){if(e===null)return null;let r=fi.parse(e);if(r.isValid())return r}getMountArgs(){return{dateFormat:this.mountable.mb.getSettings().preferredDateFormat,showDatePicker:()=>{this.mountable.mb.internal.openDatePickerModal(this.getInternalValue(),e=>this.setInternalValue(e))}}}};var oH=(t,e,r,i)=>r.onValueChange(bt(U(i))),aH=ue('');function Y_(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(a){Re(i,a,!0)}var o=aH();return Mt(o),o.__input=[oH,r,e,i],At(o,()=>U(i),a=>Re(i,a)),ee(t,o),Te({setValue:n})}Ft(["input"]);var ch=class extends or{filterValue(e){return Ia(e)}getFallbackDefaultValue(){return fi.stringify(fi.getDefaultDate())}getSvelteComponent(){return Y_}rawMapValue(e){return e}rawReverseMapValue(e){return e}};var sH=ue("
");function J_(t,e){Ae(e,!0);let r,i;hc(()=>{i?.()});async function n(a){i?.(),ht.empty(r),i=await e.mb.internal.renderMarkdown(a,r,e.filePath)}io(()=>void n(e.value));var o=sH();xa(o,a=>r=a,()=>r),ee(t,o),Te()}var uH=(t,e)=>e(),lH=(t,e)=>e(),cH=(t,e,r,i)=>r.onValueChange(bt(U(i))),fH=ue(""),pH=ue('
');function X_(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value)),n=ft(!1);function o(p){Re(i,p,!0)}function a(){Re(n,!1)}function s(){Re(n,!0)}function l(p){p.key===" "&&s()}var u=pH();u.__click=[uH,s];var c=he(u);{var f=p=>{var d=fH();Cn(d),d.__focusout=[lH,a],d.__input=[cH,r,e,i],At(d,()=>U(i),h=>Re(i,h)),ee(p,d)},m=p=>{J_(p,{get value(){return U(i)},get mb(){return e.mb},get filePath(){return e.filePath}})};ot(c,p=>{U(n)?p(f):p(m,!1)})}return pe(u),Ai("keypress",u,p=>l(p)),ee(t,u),Te({setValue:o})}Ft(["click","focusout","input"]);var fh=class extends or{mdUnloadCallback;filterValue(e){return au(e)?e?.toString():void 0}getFallbackDefaultValue(){return""}getSvelteComponent(){return X_}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{render:(e,r)=>void this.renderInElement(e,r),filePath:this.mountable.getFilePath()}}async renderInElement(e,r){this.mdUnloadCallback?.(),e.innerHTML="",this.mdUnloadCallback=await this.mountable.mb.internal.renderMarkdown(r,e,this.mountable.getFilePath())}onUnmount(){super.onUnmount(),this.mdUnloadCallback?.()}};var mH=ue("");function Dt(t,e){Ae(e,!0);let r=pt(e,"variant",19,()=>"default"),i=pt(e,"disabled",3,!1),n=pt(e,"tooltip",3,""),o=pt(e,"classes",3,""),a=pt(e,"onclick",3,()=>{});var s=mH();let l;s.__click=function(...c){a()?.apply(this,c)};var u=he(s);Ko(u,()=>e.children),pe(s),ze(c=>{l=zr(s,1,`mb-button-inner ${o()??""}`,null,l,c),lt(s,"aria-label",n()),s.disabled=i()},[()=>({"mod-cta":r()==="primary","mod-warning":r()==="destructive","mod-plain":r()==="plain",disabled:i()})]),ee(t,s),Te()}Ft(["click"]);var dH=ue('
'),hH=ue('
',1);function K_(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(m){Re(i,m,!0)}function o(m){U(i).push(m),e.onValueChange(bt(U(i)))}function a(m){U(i).splice(m,1),e.onValueChange(bt(U(i)))}function s(m,p){let d=[];p>0&&d.push({name:"Move left",icon:"arrow-left",onclick:()=>{let h=U(i)[p-1];U(i)[p-1]=U(i)[p],U(i)[p]=h,e.onValueChange(bt(U(i)))}}),p{let h=U(i)[p+1];U(i)[p+1]=U(i)[p],U(i)[p]=h,e.onValueChange(bt(U(i)))}}),d.push({name:"Copy image path",icon:"copy",onclick:()=>{let h=U(i)[p];navigator.clipboard.writeText(h).then(()=>{e.mb.internal.showNotice("Image path copied to clipboard")}).catch(()=>{e.mb.internal.showNotice("Failed to copy image path to clipboard")})}}),d.push({name:"Remove",icon:"x",warning:!0,onclick:()=>a(p)}),e.mb.internal.createContextMenu(d).showWithEvent(m)}var l=hH(),u=je(l);Wt(u,21,()=>U(i),Kt,(m,p,d)=>{var h=dH();h.__contextmenu=y=>s(y,d);var v=he(h);pe(h),ze((y,S)=>{lt(h,"data-value",y),lt(v,"src",S),lt(v,"alt",U(p)),lt(v,"aria-label",U(p))},[()=>yn(U(p)),()=>e.mb.internal.imagePathToUri(U(p))]),ee(m,h)}),pe(u);var c=fe(u,2),f=he(c);return Dt(f,{get variant(){return"default"},onclick:()=>e.showSuggester(),children:(m,p)=>{Nt();var d=Gt("Add new image");ee(m,d)},$$slots:{default:!0}}),pe(c),ee(t,l),Te({setValue:n,pushValue:o})}Ft(["contextmenu"]);var ph=class extends or{filterValue(e){return Zo(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return K_}rawMapValue(e){return e}rawReverseMapValue(e){return e.map(r=>yn(r)).filter(r=>r!==void 0)}getMountArgs(){return{showSuggester:()=>this.openModal()}}openModal(){this.mountable.mb.internal.openImageSuggesterModal(this,!1,e=>{e!==void 0&&this.svelteWrapper?.getInstance()?.pushValue(e)})}};var gH=(t,e)=>e(t),vH=ue('
'),yH=ue('
');function Q_(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(c){Re(i,c,!0)}function o(c){let f=[];f.push({name:"Edit",icon:"pencil",onclick:()=>{e.showSuggester()}}),f.push({name:"Remove",icon:"x",warning:!0,onclick:()=>e.clear()}),e.mb.internal.createContextMenu(f).showWithEvent(c)}var a=Or(),s=je(a);{var l=c=>{var f=vH();f.__contextmenu=[gH,o];var m=he(f),p=fe(m,2);Dt(p,{get variant(){return"plain"},onclick:d=>o(d),classes:"mb-image-card-button",children:(d,h)=>{Rr(d,{iconName:"ellipsis-vertical",get mb(){return e.mb}})},$$slots:{default:!0}}),pe(f),ze(d=>{lt(m,"src",d),lt(m,"alt",U(i)),lt(m,"aria-label",U(i))},[()=>e.mb.internal.imagePathToUri(U(i))]),ee(c,f)},u=c=>{var f=yH(),m=he(f);Dt(m,{get variant(){return"plain"},onclick:()=>e.showSuggester(),tooltip:"Select image",children:(p,d)=>{Nt();var h=Gt("No image selected. Click to select.");ee(p,h)},$$slots:{default:!0}}),pe(f),ee(c,f)};ot(s,c=>{U(i)?c(l):c(u,!1)})}return ee(t,a),Te({setValue:n})}Ft(["contextmenu"]);var mh=class extends or{filterValue(e){return au(e)?e:void 0}getFallbackDefaultValue(){}getSvelteComponent(){return Q_}rawMapValue(e){return e}rawReverseMapValue(e){return yn(e)}getMountArgs(){return{showSuggester:()=>this.openModal(),clear:()=>this.setInternalValue(void 0)}}openModal(){this.mountable.mb.internal.openImageSuggesterModal(this,!0,e=>this.setInternalValue(e))}};var bH=ue(' '),xH=ue(' ');function Fs(t,e){Ae(e,!0);let r=fr(()=>e.mdLink.block?`${e.mdLink.target}#${e.mdLink.block}`:e.mdLink.target),i=fr(()=>e.mdLink.internal?"internal-link":"external-link");var n=Or(),o=je(n);{var a=l=>{var u=bH(),c=he(u,!0);pe(u),ze(()=>{lt(u,"data-href",U(r)),lt(u,"href",U(r)),zr(u,1,$s(U(i))),lt(u,"aria-label",U(r)),St(c,e.mdLink.alias)}),ee(l,u)},s=l=>{var u=xH(),c=he(u,!0);pe(u),ze(()=>{lt(u,"data-href",U(r)),lt(u,"href",U(r)),zr(u,1,$s(U(i))),St(c,U(r))}),ee(l,u)};ot(o,l=>{e.mdLink.alias?l(a):l(s,!1)})}ee(t,n),Te()}var _H=ue(", ",1),wH=ue(" ",1);function op(t,e){Ae(e,!0);let r=pt(e,"elements",19,()=>[]);var i=wH(),n=je(i);Wt(n,17,()=>r().slice(0,r().length-1),Kt,(a,s)=>{var l=_H(),u=je(l);Ko(u,()=>e.children,()=>U(s)),Nt(3),ee(a,l)});var o=fe(n,2);Ko(o,()=>e.children,()=>r()[r().length-1]),ee(t,i),Te()}var SH=ue(' '),DH=ue(" "),EH=ue(""),AH=ue("");function No(t,e){Ae(e,!0);let r=pt(e,"value",3,void 0),i=fr(()=>XT(r(),!1));var n=Or(),o=je(n);{var a=l=>{var u=SH(),c=he(u,!0);pe(u),ze(()=>St(c,U(i))),ee(l,u)},s=l=>{var u=Or(),c=je(u);{var f=p=>{var d=EH(),h=he(d);op(h,{get elements(){return U(i)},children:(y,S=eo)=>{var b=Or(),_=je(b);{var w=E=>{var T=DH(),D=he(T,!0);pe(T),ze(()=>St(D,S())),ee(E,T)},x=E=>{Fs(E,{get mdLink(){return S()}})};ot(_,E=>{typeof S()=="string"?E(w):E(x,!1)})}ee(y,b)},$$slots:{default:!0}}),pe(d),ee(p,d)},m=p=>{var d=AH(),h=he(d);Fs(h,{get mdLink(){return U(i)}}),pe(d),ee(p,d)};ot(c,p=>{Array.isArray(U(i))?p(f):p(m,!1)},!0)}ee(l,u)};ot(o,l=>{typeof U(i)=="string"?l(a):l(s,!1)})}ee(t,n),Te()}function TH(t,e,r){t.key===" "&&r.showInput()}var NH=ue('
'),MH=(t,e,r)=>r.showInput(),CH=ue('
');function e0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(m){Re(i,m,!0)}function o(m){U(i).push(m),e.onValueChange(bt(U(i)))}function a(m){U(i).splice(m,1),e.onValueChange(bt(U(i)))}function s(m,p){let d=[];p>0&&d.push({name:"Move left",icon:"arrow-left",onclick:()=>{let h=U(i)[p-1];U(i)[p-1]=U(i)[p],U(i)[p]=h,e.onValueChange(bt(U(i)))}}),p{let h=U(i)[p+1];U(i)[p+1]=U(i)[p],U(i)[p]=h,e.onValueChange(bt(U(i)))}}),d.push({name:"Edit",icon:"pencil",onclick:()=>{e.mb.internal.openTextPromptModal({title:"Meta Bind List",subTitle:"Edit the value of a list item.",value:yn(U(i)[p]),multiline:!1,onSubmit:h=>{U(i)[p]=h,e.onValueChange(bt(U(i)))},onCancel:()=>{}})}}),d.push({name:"Remove",icon:"x",warning:!0,onclick:()=>a(p)}),e.mb.internal.createContextMenu(d).showWithEvent(m)}var l=CH(),u=he(l);Wt(u,17,()=>U(i),Kt,(m,p,d)=>{var h=NH();h.__contextmenu=y=>s(y,d);var v=he(h);No(v,{get value(){return U(p)}}),pe(h),ze(y=>lt(h,"data-value",y),[()=>yn(U(p))]),ee(m,h)});var c=fe(u,2);c.__click=[MH,r,e],c.__keydown=[TH,r,e];var f=fe(he(c),2);return Rr(f,{get mb(){return e.mb},iconName:"plus"}),pe(c),pe(l),ee(t,l),Te({setValue:n,pushValue:o})}Ft(["contextmenu","click","keydown"]);var dh=class extends or{filterValue(e){return Zo(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return e0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showInput:()=>this.openModal()}}openModal(){this.mountable.mb.internal.openTextPromptModal({title:"Meta Bind List",subTitle:"Create a new List Element.",value:"",multiline:!1,onSubmit:e=>{this.svelteWrapper?.getInstance()?.pushValue(e)},onCancel:()=>{}})}};function $H(t,e,r){if(!r.allowOther){r.showSuggester();return}r.mb.internal.createContextMenu([{name:"From Options",onclick:()=>r.showSuggester()},{name:"From Text",onclick:()=>r.showTextPrompt()}]).showWithEvent(t)}function IH(t,e,r){t.key===" "&&r.showSuggester()}var FH=ue('
'),kH=ue('
');function t0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(m){Re(i,m,!0)}function o(m){U(i).push(m),e.onValueChange(bt(U(i)))}function a(m){U(i).splice(m,1),e.onValueChange(bt(U(i)))}function s(m,p){let d=[];p>0&&d.push({name:"Move left",icon:"arrow-left",onclick:()=>{let h=U(i)[p-1];U(i)[p-1]=U(i)[p],U(i)[p]=h,e.onValueChange(bt(U(i)))}}),p{let h=U(i)[p+1];U(i)[p+1]=U(i)[p],U(i)[p]=h,e.onValueChange(bt(U(i)))}}),d.push({name:"Remove",icon:"x",warning:!0,onclick:()=>a(p)}),e.mb.internal.createContextMenu(d).showWithEvent(m)}var l=kH(),u=he(l);Wt(u,17,()=>U(i),Kt,(m,p,d)=>{var h=FH();h.__contextmenu=y=>s(y,d);var v=he(h);No(v,{get value(){return U(p)}}),pe(h),ze(y=>lt(h,"data-value",y),[()=>yn(U(p))]),ee(m,h)});var c=fe(u,2);c.__click=[$H,r,e],c.__keydown=[IH,r,e];var f=fe(he(c),2);return Rr(f,{get mb(){return e.mb},iconName:"plus"}),pe(c),pe(l),ee(t,l),Te({setValue:n,pushValue:o})}Ft(["contextmenu","click","keydown"]);var hh=class extends or{filterValue(e){return Zo(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return t0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showSuggester:()=>this.openModal(),showTextPrompt:()=>this.openTextModal(),allowOther:this.mountable.getArgument("allowOther")?.value===!0}}openModal(){this.mountable.mb.internal.openSuggesterModal(this,e=>{this.svelteWrapper?.getInstance()?.pushValue(e.value)})}openTextModal(){this.mountable.mb.internal.openTextPromptModal({title:"Meta Bind List Suggester",subTitle:"Create a new List Element.",value:"",multiline:!1,onSubmit:e=>{this.svelteWrapper?.getInstance()?.pushValue(e)},onCancel:()=>{}})}};var PH=(t,e)=>e(),BH=ue(""),OH=ue('');function r0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(s){Re(i,s,!0)}function o(){e.onValueChange(bt(U(i)))}var a=OH();return a.__change=[PH,o],Wt(a,21,()=>e.options,Kt,(s,l)=>{var u=BH(),c=he(u,!0);pe(u);var f={};ze(()=>{St(c,U(l).name),f!==(f=U(l).value)&&(u.value=(u.__value=U(l).value)??"")}),ee(s,u)}),pe(a),dc(a,()=>U(i),s=>Re(i,s)),ee(t,a),Te({setValue:n})}Ft(["change"]);var gh=class extends or{options;constructor(e){super(e),this.options=this.mountable.getArguments("option")}filterValue(e){return su(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return r0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{options:this.options}}};var RH=ue('
'),LH=ue('Empty'),UH=ue(''),zH=(t,e,r)=>{t.key==="Enter"&&U(e).length>0&&r()},VH=ue(''),qH=ue(" "),jH=ue('
',1);function n0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value)),n=ft("");function o(b){Re(i,b,!0)}function a(){U(i).push(U(n)),e.onValueChange(bt(U(i))),Re(n,"")}function s(b){U(i).splice(b,1),e.onValueChange(bt(U(i)))}function l(b,_){let w=_.toString();return`${b.toString().padStart(w.length,"0")}/${w}`}function u(b,_){let w=[];_>0&&w.push({name:"Move up",icon:"arrow-up",onclick:()=>{let x=U(i)[_-1];U(i)[_-1]=U(i)[_],U(i)[_]=x,e.onValueChange(bt(U(i)))}}),_{let x=U(i)[_+1];U(i)[_+1]=U(i)[_],U(i)[_]=x,e.onValueChange(bt(U(i)))}}),w.push({name:"Edit",icon:"pencil",onclick:()=>{e.mb.internal.openTextPromptModal({title:"Meta Bind List",subTitle:"Edit the value of a list item.",value:yn(U(i)[_]),multiline:e.multiLine,onSubmit:x=>{U(i)[_]=x,e.onValueChange(bt(U(i)))},onCancel:()=>{}})}}),w.push({name:"Remove",icon:"x",warning:!0,onclick:()=>s(_)}),e.mb.internal.createContextMenu(w).showWithEvent(b)}var c=jH(),f=je(c);Wt(f,21,()=>U(i),Kt,(b,_,w)=>{var x=RH();x.__contextmenu=T=>u(T,w);var E=he(x);No(E,{get value(){return U(_)}}),pe(x),ze(T=>lt(x,"data-value",T),[()=>yn(U(_))]),ee(b,x)},b=>{var _=LH();ee(b,_)}),pe(f);var m=fe(f,2),p=he(m);{var d=b=>{var _=UH();Cn(_),ze(()=>{lt(_,"placeholder",e.placeholder),lt(_,"maxlength",e.limit)}),At(_,()=>U(n),w=>Re(n,w)),ee(b,_)},h=b=>{var _=VH();Mt(_),_.__keyup=[zH,n,a],ze(()=>{lt(_,"placeholder",e.placeholder),lt(_,"maxlength",e.limit)}),At(_,()=>U(n),w=>Re(n,w)),ee(b,_)};ot(p,b=>{e.multiLine?b(d):b(h,!1)})}var v=fe(p,2);{var y=b=>{var _=qH(),w=he(_,!0);pe(_),ze(x=>{zr(_,1,`mb-content-limit-indicator ${U(i).length>e.limit?"mb-content-limit-indicator-overflow":""}`),St(w,x)},[()=>l(U(i).length,e.limit)]),ee(b,_)};ot(v,b=>{e.limit!==void 0&&b(y)})}var S=fe(v,2);{let b=fr(()=>!U(n));Dt(S,{onclick:()=>a(),get disabled(){return U(b)},children:(_,w)=>{Rr(_,{get mb(){return e.mb},iconName:"plus"})},$$slots:{default:!0}})}return pe(m),ee(t,c),Te({setValue:o})}Ft(["contextmenu","keyup"]);var vh=class extends or{filterValue(e){return Zo(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return n0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument("placeholder")?.value??"New Entry...",limit:this.mountable.getArgument("limit")?.value,multiLine:this.mountable.getArgument("multiLine")?.value===!0}}};var ZH=ue('
'),GH=ue('Empty'),WH=ue('
',1);function i0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(d){Re(i,d,!0)}function o(d){U(i).push(d),e.onValueChange(bt(U(i)))}function a(d){U(i).splice(d,1),e.onValueChange(bt(U(i)))}function s(d,h){let v=[];h>0&&v.push({name:"Move up",icon:"arrow-up",onclick:()=>{let y=U(i)[h-1];U(i)[h-1]=U(i)[h],U(i)[h]=y,e.onValueChange(bt(U(i)))}}),h{let y=U(i)[h+1];U(i)[h+1]=U(i)[h],U(i)[h]=y,e.onValueChange(bt(U(i)))}}),v.push({name:"Remove",icon:"x",warning:!0,onclick:()=>a(h)}),e.mb.internal.createContextMenu(v).showWithEvent(d)}var l=WH(),u=je(l);Wt(u,21,()=>U(i),Kt,(d,h,v)=>{var y=ZH();y.__contextmenu=b=>s(b,v);var S=he(y);No(S,{get value(){return U(h)}}),pe(y),ze(b=>lt(y,"data-value",b),[()=>yn(U(h))]),ee(d,y)},d=>{var h=GH();ee(d,h)}),pe(u);var c=fe(u,2),f=he(c);Dt(f,{get variant(){return"default"},onclick:()=>e.showSuggester(),children:(d,h)=>{Nt();var v=Gt("Add new item");ee(d,v)},$$slots:{default:!0}});var m=fe(f,2);{var p=d=>{Dt(d,{get variant(){return"default"},onclick:()=>e.showTextPrompt(),children:(h,v)=>{Nt();var y=Gt("Add other item");ee(h,y)},$$slots:{default:!0}})};ot(m,d=>{e.allowOther&&d(p)})}return pe(c),ee(t,l),Te({setValue:n,pushValue:o})}Ft(["contextmenu"]);var yh=class extends or{filterValue(e){return Zo(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return i0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showSuggester:()=>this.openModal(),showTextPrompt:()=>this.openTextModal(),allowOther:this.mountable.getArgument("allowOther")?.value===!0}}openModal(){this.mountable.mb.internal.openSuggesterModal(this,e=>{this.svelteWrapper?.getInstance()?.pushValue(e.value)})}openTextModal(){this.mountable.mb.internal.openTextPromptModal({title:"Meta Bind List Suggester",subTitle:"Create a new List Element.",value:"",multiline:!1,onSubmit:e=>{this.svelteWrapper?.getInstance()?.pushValue(e)},onCancel:()=>{}})}};var HH=(t,e,r)=>{t.target instanceof HTMLInputElement||e(U(r).value)},YH=(t,e,r)=>e(U(r).value),JH=ue('
');function o0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(u){Re(i,u,!0)}function o(u){U(i).includes(u)?Re(i,U(i).filter(c=>c!==u),!0):U(i).push(u),e.onValueChange(bt(U(i)))}function a(u,c){u.key===" "&&o(c)}var s=Or(),l=je(s);return Wt(l,17,()=>e.options,Kt,(u,c)=>{var f=JH();let m;f.__click=[HH,o,c];var p=he(f);Mt(p),p.__input=[YH,o,c];var d=fe(p,2);No(d,{get value(){return U(c).name}}),pe(f),ze((h,v,y)=>{m=zr(f,1,"mb-select-input-element mb-mod-multi",null,m,h),lt(f,"data-value",v),Is(p,y)},[()=>({"is-selected":U(i).includes(U(c).value)}),()=>yn(U(c).value),()=>U(i).includes(U(c).value)]),Ai("keypress",f,h=>a(h,U(c).value)),ee(u,f)}),ee(t,s),Te({setValue:n})}Ft(["click","input"]);var bh=class extends or{options;constructor(e){super(e),this.options=this.mountable.getArguments("option")}filterValue(e){return Zo(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return o0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{options:this.options}}};var XH=(t,e,r,i)=>r.onValueChange(bt(U(i))),KH=ue('');function a0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(a){Re(i,a,!0)}var o=KH();return Mt(o),o.__input=[XH,r,e,i],ze(()=>lt(o,"placeholder",e.placeholder)),At(o,()=>U(i),a=>Re(i,a)),ee(t,o),Te({setValue:n})}Ft(["input"]);var xh=class extends or{filterValue(e){return ec(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return a0}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument("placeholder")?.value??"Number"}}};function _M(t,e,r){e(),r(t)}var QH=ue(' ',1),eY=ue('
');function s0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value)),n=!1,o,a=0,s;function l(w){Re(i,w,!0)}function u(w){Re(i,w,!0),e.onValueChange(w)}function c(w){return w=Mf(w,e.minValue,e.maxValue),Gx(w,e.minValue,e.maxValue,0,100)}function f(){n=!0}function m(){n=!1}function p(w){if(!n)return;w.stopPropagation&&w.stopPropagation(),w.preventDefault&&w.preventDefault();let x=w instanceof TouchEvent?w.touches[0].clientX:w.clientX;d(x)}function d(w){let x=o.getBoundingClientRect();w=Mf(w,x.left,x.right);let E=Gx(w,x.left,x.right,e.minValue,e.maxValue);E=h(E,e.stepSize),u(E)}function h(w,x){return Number.parseFloat((Math.round(w/x)*x).toFixed(10))}function v(w){a<50&&(a+=1);let x=Math.ceil(a/5);if(w.key==="ArrowUp"||w.key==="ArrowRight"){let E=Mf(U(i)+x,e.minValue,e.maxValue);u(E)}if(w.key==="ArrowDown"||w.key==="ArrowLeft"){let E=Mf(U(i)-x,e.minValue,e.maxValue);u(E)}window.clearTimeout(s),s=window.setTimeout(()=>a=1,100)}var y=eY();Ai("touchmove",Ms,p,void 0,!1),Ai("touchcancel",Ms,m),Ai("touchend",Ms,m),Ai("mousemove",Ms,p),Ai("mouseup",Ms,m),y.__keydown=v,y.__mousedown=[_M,f,p],y.__touchstart=[_M,f,p];var S=he(y),b=fe(S,2);{var _=w=>{var x=QH(),E=je(x),T=he(E,!0);pe(E);var D=fe(E,2),M=he(D,!0);pe(D);var C=fe(D,2),$=he(C,!0);pe(C),ze(()=>{St(T,U(i)),St(M,e.minValue),St($,e.maxValue)}),ee(w,x)};ot(b,w=>{e.addLabels&&w(_)})}return pe(y),xa(y,w=>o=w,()=>o),ze((w,x)=>{lt(y,"aria-label",w),mc(S,x),lt(S,"aria-valuemin",e.minValue),lt(S,"aria-valuemax",e.maxValue),lt(S,"aria-valuenow",U(i))},[()=>U(i).toString(),()=>`width: ${c(U(i))}%`]),Ai("dragstart",S,()=>n=!0),ee(t,y),Te({setValue:l})}Ft(["keydown","mousedown","touchstart"]);var _h=class extends or{minValue;maxValue;stepSize;constructor(e){if(super(e),this.minValue=this.mountable.getArgument("minValue")?.value??0,this.maxValue=this.mountable.getArgument("maxValue")?.value??100,this.stepSize=this.mountable.getArgument("stepSize")?.value??1,this.minValue>=this.maxValue)throw new Br({errorLevel:"ERROR",effect:"can not create progress bar input field",cause:`minValue (${this.maxValue}) must be less than maxValue (${this.maxValue})`})}filterValue(e){return Qm(ec(e),this.minValue,this.maxValue)}getFallbackDefaultValue(){return this.minValue}getSvelteComponent(){return s0}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{minValue:this.minValue,maxValue:this.maxValue,stepSize:this.stepSize,addLabels:(this.mountable.getArgument("addLabels")?.value??!0)===!0}}};var tY=(t,e,r)=>{t.target instanceof HTMLInputElement||e(U(r).value)},rY=(t,e,r)=>e(U(r).value),nY=ue('
');function u0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(u){Re(i,u,!0)}function o(u){U(i)===u?Re(i,null):Re(i,u,!0),e.onValueChange(bt(U(i)))}function a(u,c){u.key===" "&&o(c)}var s=Or(),l=je(s);return Wt(l,17,()=>e.options,Kt,(u,c)=>{var f=nY();let m;f.__click=[tY,o,c];var p=he(f);Mt(p),p.__input=[rY,o,c];var d=fe(p,2);No(d,{get value(){return U(c).name}}),pe(f),ze((h,v)=>{m=zr(f,1,"mb-select-input-element",null,m,h),lt(f,"data-value",v),Is(p,U(c).value===U(i))},[()=>({"is-selected":U(c).value===U(i)}),()=>yn(U(c).value)]),Ai("keypress",f,h=>a(h,U(c).value)),ee(u,f)}),ee(t,s),Te({setValue:n})}Ft(["click","input"]);var wh=class extends or{options;constructor(e){super(e),this.options=this.mountable.getArguments("option")}filterValue(e){return su(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return u0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{options:this.options}}};var iY=ue(' '),oY=(t,e,r,i)=>r.onValueChange(bt(U(i))),aY=ue(' '),sY=ue(' ',1);function l0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(f){Re(i,f,!0)}var o=sY(),a=je(o);{var s=f=>{var m=iY(),p=he(m,!0);pe(m),ze(()=>St(p,e.minValue)),ee(f,m)};ot(a,f=>{e.addLabels&&f(s)})}var l=fe(a,2);Mt(l),l.__input=[oY,r,e,i];var u=fe(l,2);{var c=f=>{var m=aY(),p=he(m,!0);pe(m),ze(()=>St(p,e.maxValue)),ee(f,m)};ot(u,f=>{e.addLabels&&f(c)})}return ze(f=>{lt(l,"aria-label",f),lt(l,"min",e.minValue),lt(l,"max",e.maxValue),lt(l,"step",e.stepSize)},[()=>U(i).toString()]),At(l,()=>U(i),f=>Re(i,f)),ee(t,o),Te({setValue:n})}Ft(["input"]);var Sh=class extends or{minValue;maxValue;stepSize;constructor(e){if(super(e),this.minValue=this.mountable.getArgument("minValue")?.value??0,this.maxValue=this.mountable.getArgument("maxValue")?.value??100,this.stepSize=this.mountable.getArgument("stepSize")?.value??1,this.minValue>=this.maxValue)throw new Br({errorLevel:"ERROR",effect:"can not create slider input field",cause:`minValue (${this.maxValue}) must be less than maxValue (${this.maxValue})`})}filterValue(e){return Qm(ec(e),this.minValue,this.maxValue)}getFallbackDefaultValue(){return this.minValue}getSvelteComponent(){return l0}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{minValue:this.minValue,maxValue:this.maxValue,stepSize:this.stepSize,addLabels:this.mountable.getArgument("addLabels")?.value===!0}}};var uY=ue(" "),lY=ue('
');function c0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(h){Re(i,h,!0)}let o=fr(()=>U(i)?.toString()??"null"),a=fr(()=>{if(_n.isLink(U(o)))try{return _n.parseLink(U(o))}catch(h){console.warn(h)}});var s=lY(),l=he(s),u=he(l);{var c=h=>{Fs(h,{get mdLink(){return U(a)}})},f=h=>{var v=uY(),y=he(v,!0);pe(v),ze(()=>St(y,U(o))),ee(h,v)};ot(u,h=>{U(a)!==void 0?h(c):h(f,!1)})}pe(l);var m=fe(l,2);Dt(m,{get variant(){return"plain"},get onclick(){return e.showSuggester},children:(h,v)=>{Rr(h,{get mb(){return e.mb},iconName:"list"})},$$slots:{default:!0}});var p=fe(m,2);{var d=h=>{Dt(h,{get variant(){return"plain"},get onclick(){return e.showTextPrompt},children:(v,y)=>{Rr(v,{get mb(){return e.mb},iconName:"pencil"})},$$slots:{default:!0}})};ot(p,h=>{e.allowOther&&h(d)})}return pe(s),ee(t,s),Te({setValue:n})}var Dh=class extends or{filterValue(e){return su(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return c0}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showSuggester:()=>this.openModal(),showTextPrompt:()=>this.openTextModal(),allowOther:this.mountable.getArgument("allowOther")?.value===!0}}openModal(){this.mountable.mb.internal.openSuggesterModal(this,e=>this.setInternalValue(e.value))}openTextModal(){this.mountable.mb.internal.openTextPromptModal({title:"Meta Bind Suggester",subTitle:"Set the suggester value.",value:"",multiline:!1,onSubmit:e=>{this.setInternalValue(e)},onCancel:()=>{}})}};var cY=(t,e,r,i)=>r.onValueChange(bt(U(i))),fY=ue(" "),pY=ue(' ',1);function f0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(c){Re(i,c,!0)}function o(c,f){let m=f.toString();return`${c.toString().padStart(m.length,"0")}/${m}`}var a=pY(),s=je(a);Mt(s),s.__input=[cY,r,e,i];var l=fe(s,2);{var u=c=>{var f=fY(),m=he(f,!0);pe(f),ze(p=>{zr(f,1,`mb-content-limit-indicator ${U(i).length>e.limit?"mb-content-limit-indicator-overflow":""}`),St(m,p)},[()=>o(U(i).length,e.limit)]),ee(c,f)};ot(l,c=>{e.limit!==void 0&&c(u)})}return ze(()=>{lt(s,"placeholder",e.placeholder),lt(s,"maxlength",e.limit)}),At(s,()=>U(i),c=>Re(i,c)),ee(t,a),Te({setValue:n})}Ft(["input"]);var Eh=class extends or{filterValue(e){return Ia(e)}getFallbackDefaultValue(){return""}getSvelteComponent(){return f0}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument("placeholder")?.value??"Text",limit:this.mountable.getArgument("limit")?.value}}};var mY=(t,e,r,i)=>r.onValueChange(bt(U(i))),dY=ue('');function p0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(a){Re(i,a,!0)}var o=dY();return Cn(o),o.__input=[mY,r,e,i],ze(()=>{lt(o,"placeholder",e.placeholder),lt(o,"maxlength",e.limit)}),At(o,()=>U(i),a=>Re(i,a)),ee(t,o),Te({setValue:n})}Ft(["input"]);var Ah=class extends or{filterValue(e){return Ia(e)}getFallbackDefaultValue(){return""}getSvelteComponent(){return p0}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument("placeholder")?.value??"Text",limit:this.mountable.getArgument("limit")?.value}}};var hY=(t,e,r,i)=>r.onValueChange(bt(U(i))),gY=ue('');function m0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(a){Re(i,a,!0)}var o=gY();return Mt(o),o.__input=[hY,r,e,i],At(o,()=>U(i),a=>Re(i,a)),ee(t,o),Te({setValue:n})}Ft(["input"]);var Th=class extends or{filterValue(e){return Ia(e)}getFallbackDefaultValue(){return"00:00"}getSvelteComponent(){return m0}rawMapValue(e){return e}rawReverseMapValue(e){return e}};var vY=(t,e)=>e(),yY=(t,e)=>e(t),bY=ue('
');function d0(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]),i=ft(wt(e.value));function n(c){Re(i,c,!0)}function o(){Re(i,!U(i)),e.onValueChange(bt(U(i)))}function a(c){c.key===" "&&o()}var s=bY();let l;s.__click=[vY,o],s.__keydown=[yY,a];var u=he(s);return Mt(u),pe(s),ze(c=>{l=zr(s,1,"checkbox-container",null,l,c),lt(s,"aria-checked",U(i)),Is(u,U(i))},[()=>({"is-enabled":U(i)})]),ee(t,s),Te({setValue:n})}Ft(["click","keydown"]);var Nh=class extends or{onValue;offValue;constructor(e){super(e),this.onValue=this.mountable.getArgument("onValue")?.value??!0,this.offValue=this.mountable.getArgument("offValue")?.value??!1}filterValue(e){return e===this.onValue||e===this.offValue?su(e):void 0}getFallbackDefaultValue(){return!1}getSvelteComponent(){return d0}rawReverseMapValue(e){return e===this.onValue?!0:(e===this.offValue,!1)}rawMapValue(e){return e?this.onValue:this.offValue}};var Ht=class{static linkToInputField(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/inputfields/${e.toLowerCase()}/`}static linkToInputFieldArgument(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/inputfieldarguments/${e.toLowerCase()}/`}static linkToViewField(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/viewfields/${e.toLowerCase()}/`}static linkToViewFieldArgument(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/viewfieldarguments/${e.toLowerCase()}/`}static linkToInputFields(){return"https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/inputfields/"}static linkToViewFields(){return"https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/viewfields/"}static linkToButtons(){return"https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/buttons/#button-configuration"}static linkToButtonConfig(){return"https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/buttons/#button-configuration"}static linkToSearch(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/?s=${encodeURIComponent(e)}`}static linkToHome(){return"https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/"}static linkToGithub(){return"https://github.com/mProjectsCode/obsidian-meta-bind-plugin"}static linkToIssues(){return"https://github.com/mProjectsCode/obsidian-meta-bind-plugin/issues"}static linkToCanaryBuilds(){return"https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/installation/#canary-builds"}static open(e){ed(e)}};var Mh=class{mb;constructor(e){this.mb=e}createInputField(e){let r=e.declaration.inputFieldType,i=e.renderChildType;if(r!=="invalid"&&this.checkRenderChildTypeAllowed(r,i),r==="toggle")return new Nh(e);if(r==="slider")return new Sh(e);if(r==="text")return new Eh(e);if(r==="textArea")return new Ah(e);if(r==="select")return new wh(e);if(r==="multiSelect")return new bh(e);if(r==="datePicker")return new lh(e);if(r==="number")return new xh(e);if(r==="suggester")return new Dh(e);if(r==="editor")return new fh(e);if(r==="progressBar")return new _h(e);if(r==="inlineSelect")return new gh(e);if(r==="imageSuggester")return new mh(e);if(r==="list")return new vh(e);if(r==="listSuggester")return new yh(e);if(r==="date")return new uh(e);if(r==="time")return new Th(e);if(r==="inlineListSuggester")return new hh(e);if(r==="inlineList")return new dh(e);if(r==="imageListSuggester")return new ph(e);if(r==="dateTime")return new ch(e);}checkRenderChildTypeAllowed(e,r){if(this.mb.getSettings().ignoreCodeBlockRestrictions)return;let i=Dd[e];if(r==="block"&&!i.allowInBlock)throw new ma({errorLevel:"ERROR",effect:"can not create input field",cause:`input fields of type '${e}' are not allowed inside of code blocks`,docs:[Ht.linkToInputField(e)]});if(r==="inline"&&!i.allowInline)throw new ma({errorLevel:"ERROR",effect:"can not create input field",cause:`input fields of type '${e}' are not allowed inside of inline code blocks`,docs:[Ht.linkToInputField(e)]})}};var Va=class extends Ti{mb;mountable;metadataSubscription;variables;hidden;constructor(e){super(),this.mountable=e,this.mb=e.mb,this.variables=[],this.hidden=!1}async initialRender(e){ht.addClass(e,"mb-view-text"),this.hidden=this.mountable.getArgument("hidden")?.value??!1,this.hidden&&ht.addClass(e,"mb-view-hidden"),await this.onInitialRender(e)}async rerender(e,r){this.hidden||await this.onRerender(e,r)}onMount(e){this.buildVariables(),this.initialRender(e),this.metadataSubscription=this.mountable.mb.metadataManager.subscribeDerived(this.mountable.getUuid(),this.mountable.getDeclaration().writeToBindTarget,this.variables.map(r=>r.bindTargetDeclaration),this.variables.map(r=>r.metadataSignal),async()=>{let r=await this.computeValue();return this.rerender(e,r),this.mapValue(r)},()=>this.mountable.unmount())}onUnmount(){this.metadataSubscription?.unsubscribe()}};var xY=ue('
');function h0(t,e){Ae(e,!0);let r=pt(e,"internal",3,!0),i=fr(()=>r()?e.mb.internal.imagePathToUri(e.image):e.image);var n=xY(),o=he(n);pe(n),ze(()=>{lt(o,"src",U(i)),lt(o,"alt",e.image)}),ee(t,n),Te()}var _Y=ue("No images"),wY=ue('
');function g0(t,e){Ae(e,!0);let r=pt(e,"images",23,()=>[]);function i(o){r(o)}var n=wY();return Wt(n,21,r,Kt,(o,a)=>{h0(o,{get mb(){return e.mb},get image(){return U(a).link},get internal(){return U(a).internal}})},o=>{var a=_Y();ee(o,a)}),pe(n),ee(t,n),Te({updateImages:i})}var Ch=class extends Va{component;linkVariable;constructor(e){super(e)}buildVariables(){let e=this.mountable.getDeclaration().templateDeclaration.filter(i=>typeof i=="string"?i:!0);if(e.length!==1)throw new gs({errorLevel:"ERROR",effect:"can not create view field",cause:"image view filed only supports exactly a single bind target and not text content"});let r=e[0];if(typeof r=="string")throw new gs({errorLevel:"ERROR",effect:"can not create view field",cause:"image view filed only supports exactly a single bind target and not text content"});r.listenToChildren=!0,this.linkVariable={bindTargetDeclaration:r,metadataSignal:new bn(void 0),uuid:_r(),contextName:"MB_VAR_0"},this.variables.push(this.linkVariable)}computeValue(){let e=this.linkVariable.metadataSignal.get();if(typeof e=="string"){let r=_n.interpretAsLink(e);return r===void 0?void 0:[r]}else return Array.isArray(e)?e.filter(r=>typeof r=="string").map(r=>_n.interpretAsLink(r)).filter(r=>r!==void 0):void 0}mapValue(e){return e===void 0?"":Array.isArray(e)?e.map(r=>r.toString()):e.toString()}onInitialRender(e){this.component=Fr(g0,{target:e,props:{images:[],mb:this.mountable.mb}})}async onRerender(e,r){this.component?.updateImages(nd(r).map(i=>({link:i.target,internal:i.internal})))}onUnmount(){super.onUnmount(),this.component&&Dr(this.component)}};var SY=ue("");function v0(t,e){Ae(e,!0);let r=pt(e,"mdLinkList",7);function i(l){r(l)}var n=Or(),o=je(n);{var a=l=>{var u=SY();ee(l,u)},s=l=>{var u=Or(),c=je(u);{var f=p=>{Fs(p,{get mdLink(){return r()[0]}})},m=p=>{op(p,{get elements(){return r()},children:(h,v=eo)=>{Fs(h,{get mdLink(){return v()}})},$$slots:{default:!0}})};ot(c,p=>{r().length===1?p(f):p(m,!1)},!0)}ee(l,u)};ot(o,l=>{r().length===0?l(a):l(s,!1)})}return ee(t,n),Te({updateList:i})}var $h=class extends Va{component;linkVariable;aliasVariable;constructor(e){super(e)}buildVariables(){let e=this.mountable.getDeclaration().templateDeclaration.filter(o=>typeof o=="string"?o:!0);if(e.length!==1&&e.length!==2&&e.length!==3)throw new gs({errorLevel:"ERROR",effect:"can not create view field",cause:'link view field must be of form "{bindTarget}" or "{bindTarget}|{bindTarget}"'});let r=e[0],i=e[1],n=e[2];if(this.variables=[],e.length===1){if(typeof r=="string")throw new gs({errorLevel:"ERROR",effect:"can not create view field",cause:'link view field must be of form "{bindTarget}" or "{bindTarget}|{bindTarget}"'});r.listenToChildren=!0,this.linkVariable={bindTargetDeclaration:r,metadataSignal:new bn(void 0),uuid:_r(),contextName:"MB_VAR_0"},this.variables.push(this.linkVariable)}else if(e.length===2||e.length===3){if(typeof r=="string"||typeof i!="string")throw new gs({errorLevel:"ERROR",effect:"can not create view field",cause:'link view field must be of form "{bindTarget}", "{bindTarget}|alias", or "{bindTarget}|{bindTarget}"'});r.listenToChildren=!0,this.linkVariable={bindTargetDeclaration:r,metadataSignal:new bn(void 0),uuid:_r(),contextName:"MB_VAR_0"},this.variables.push(this.linkVariable),e.length===2?this.aliasVariable=i.slice(1):typeof n=="string"?this.aliasVariable=n:(n.listenToChildren=!0,this.aliasVariable={bindTargetDeclaration:n,metadataSignal:new bn(void 0),uuid:_r(),contextName:"MB_VAR_1"},this.variables.push(this.aliasVariable))}else throw new Error("unreachable")}getAlias(){if(this.aliasVariable)return typeof this.aliasVariable=="string"?this.aliasVariable:ju(this.aliasVariable.metadataSignal.get(),this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)}computeValue(){let e=this.linkVariable.metadataSignal.get(),r=this.getAlias();if(typeof e=="string"){let i=_n.interpretAsLink(e);return i===void 0?void 0:(r&&(i.alias=r),[i])}else return Array.isArray(e)?e.filter(i=>typeof i=="string").map(i=>_n.interpretAsLink(i)).filter(i=>i!==void 0):void 0}mapValue(e){return e===void 0?"":Array.isArray(e)?e.map(r=>r.toString()):e.toString()}onInitialRender(e){this.component=Fr(v0,{target:e,props:{mdLinkList:[]}})}async onRerender(e,r){this.component?.updateList(nd(r))}onUnmount(){super.onUnmount(),this.component&&Dr(this.component)}};var Ih=class extends Va{container;expression;expressionStr;hidden;constructor(e){super(e),this.hidden=!1}buildVariables(){let e=0;this.expressionStr="",this.variables=[];for(let r of this.mountable.getDeclaration().templateDeclaration??[])if(typeof r!="string"){let i={bindTargetDeclaration:r,metadataSignal:new bn(void 0),uuid:_r(),contextName:`MB_VAR_${e}`};this.variables.push(i),this.expressionStr+=i.contextName,e+=1}else this.expressionStr+=r;this.expression=this.mb.math.compile(this.expressionStr)}buildMathJSContext(){let e={};for(let r of this.variables??[])!r.contextName||!r.metadataSignal||(e[r.contextName]=r.metadataSignal.get()??"");return e}computeValue(){if(!this.expression)return this.handleComputeError(new Uu({errorLevel:"ERROR",effect:"failed to evaluate expression",cause:"expression is undefined"}));let e=this.buildMathJSContext();try{let r=`${this.expression.evaluate(e)}`;return{value:_o(r),error:!1}}catch(r){return r instanceof Error?this.handleComputeError(new Uu({errorLevel:"ERROR",effect:"failed to evaluate expression",cause:r,context:{expression:this.expressionStr,context:e}})):this.handleComputeError(new Error("failed to evaluate js expression because of unexpected thrown value"))}}mapValue(e){return e.value}onInitialRender(e){}onRerender(e,r){let i=ju(r?.value,this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)??"";r?.error?ht.addClass(e,"mb-error"):ht.removeClass(e,"mb-error"),e.innerText=i}handleComputeError(e){return console.warn(e),{error:!0,value:e.message}}};var Fh=class extends Va{textParts;renderMarkdown;markdownUnloadCallback;constructor(e){super(e),this.renderMarkdown=!1}buildVariables(){this.textParts=[];let e=0;this.variables=[];for(let r of this.mountable.getDeclaration().templateDeclaration??[])if(typeof r!="string"){let i={bindTargetDeclaration:r,metadataSignal:new bn(void 0),uuid:_r(),contextName:`MB_VAR_${e}`};this.variables.push(i),this.textParts.push(i),e+=1}else this.textParts.push(r)}computeValue(){if(!this.textParts)throw new Uu({errorLevel:"CRITICAL",effect:"failed to evaluate text view field",cause:"content parts is undefined"});return this.textParts.map(e=>typeof e=="string"?e:ju(e.metadataSignal.get(),this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)).join("")}mapValue(e){return e}onInitialRender(e){this.renderMarkdown=this.mountable.getArgument("renderMarkdown")?.value??!1,this.renderMarkdown&&ht.addClass(e,"mb-view-markdown")}async onRerender(e,r){let i=ju(r,this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)??"";this.renderMarkdown?(this.markdownUnloadCallback?.(),ht.empty(e),this.markdownUnloadCallback=await this.mountable.mb.internal.renderMarkdown(i,e,this.mountable.getFilePath())):e.innerText=i}onUnmount(){super.onUnmount(),this.markdownUnloadCallback?.()}};var kh=class{mb;constructor(e){this.mb=e}createViewField(e){let r=e.declaration.viewFieldType;if(r==="math")return new Ih(e);if(r==="text")return new Fh(e);if(r==="link")return new $h(e);if(r==="image")return new Ch(e);}};var mn=class extends Error{},ap=class extends Error{};var wM=function(t,e,r,i){function n(o){return o instanceof r?o:new r(function(a){a(o)})}return new(r||(r=Promise))(function(o,a){function s(c){try{u(i.next(c))}catch(f){a(f)}}function l(c){try{u(i.throw(c))}catch(f){a(f)}}function u(c){c.done?o(c.value):n(c.value).then(s,l)}u((i=i.apply(t,e||[])).next())})},DY=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(o){r[o]=t[o]&&function(a){return new Promise(function(s,l){a=t[o](a),n(s,l,a.done,a.value)})}}function n(o,a,s,l){Promise.resolve(l).then(function(u){o({value:u,done:s})},a)}};function EY(t,e,r){let i=r;for(let n of kr(t))i=e(i,n);return i}function AY(t,e,r){return wM(this,void 0,void 0,function*(){var i,n,o,a;let s=r;try{for(var l=!0,u=DY(Pr(t)),c;c=yield u.next(),i=c.done,!i;l=!0)a=c.value,l=!1,s=yield e(s,a)}catch(f){n={error:f}}finally{try{!l&&!i&&(o=u.return)&&(yield o.call(u))}finally{if(n)throw n.error}}return s})}function y0(t){switch(!0){case t instanceof Array:return t.length;case qa(t):return t.length;case t instanceof Set:return t.size;case t instanceof Map:return t.size}return EY(t,e=>e+1,0)}function SM(t){return wM(this,void 0,void 0,function*(){switch(!0){case t instanceof Array:case qa(t):case t instanceof Set:case t instanceof Map:return y0(t)}return yield AY(t,e=>e+1,0)})}var DM={chunkwise:LM,chunkwiseOverlap:Bh,compress:TM,dropWhile:MM,enumerate:qM,filter:OM,flatMap:PM,flatten:b0,groupBy:QM,keys:WM,limit:zM,map:AM,pairwise:al,repeat:FM,skip:YM,slice:ZM,sort:tC,takeWhile:$M,values:XM,chunkwiseAsync:UM,chunkwiseOverlapAsync:Oh,compressAsync:NM,dropWhileAsync:CM,enumerateAsync:jM,filterAsync:RM,flatMapAsync:BM,flattenAsync:x0,groupByAsync:eC,keysAsync:HM,limitAsync:VM,mapAsync:Ph,pairwiseAsync:sp,repeatAsync:kM,skipAsync:JM,sliceAsync:GM,sortAsync:rC,takeWhileAsync:IM,valuesAsync:KM};var EM={allMatch:nC,allUnique:oC,anyMatch:sC,exactlyN:lC,isEmpty:fC,isAsyncIterable:ks,isIterable:oo,isIterator:Qo,isReversed:mC,isSorted:hC,isString:qa,noneMatch:vC,same:bC,sameCount:_C,allMatchAsync:iC,allUniqueAsync:aC,anyMatchAsync:uC,exactlyNAsync:cC,isEmptyAsync:pC,isReversedAsync:dC,isSortedAsync:gC,noneMatchAsync:yC,sameAsync:xC,sameCountAsync:wC};var vc=function(t){return this instanceof vc?(this.v=t,this):new vc(t)},TY=function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=r.apply(t,e||[]),n,o=[];return n=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),n[Symbol.asyncIterator]=function(){return this},n;function a(p){return function(d){return Promise.resolve(d).then(p,f)}}function s(p,d){i[p]&&(n[p]=function(h){return new Promise(function(v,y){o.push([p,h,v,y])>1||l(p,h)})},d&&(n[p]=d(n[p])))}function l(p,d){try{u(i[p](d))}catch(h){m(o[0][3],h)}}function u(p){p.value instanceof vc?Promise.resolve(p.value.v).then(c,f):m(o[0][2],p)}function c(p){l("next",p)}function f(p){l("throw",p)}function m(p,d){p(d),o.shift(),o.length&&l(o[0][0],o[0][1])}},_a;(function(t){t[t.SHORTEST=0]="SHORTEST",t[t.LONGEST=1]="LONGEST",t[t.STRICT_EQUAL=2]="STRICT_EQUAL"})(_a||(_a={}));function*_0(t,e,...r){if(r.length===0)return;let i=[];for(let n of r)i.push(SC(n));e:for(;;){let n=DM.map(i,l=>l.next()),o=[],a=!0,s=!1;for(let l of n){let u;l.done?(a=!1,u=e):(s=!0,u=l.value),o.push(u)}if(!a&&s)switch(t){case _a.SHORTEST:break e;case _a.STRICT_EQUAL:throw new ap("Iterators must have equal lengths")}if(!s)break;yield o}}function w0(t,e,...r){return TY(this,arguments,function*(){if(r.length===0)return yield vc(void 0);let n=[];for(let o of r)n.push(DC(o));e:for(;;){let o=[];for(let u of n){let c=yield vc(u.next());o.push(c)}let a=[],s=!0,l=!1;for(let u of o){let c;u.done?(s=!1,c=e):(l=!0,c=u.value),a.push(c)}if(!s&&l)switch(t){case _a.SHORTEST:break e;case _a.STRICT_EQUAL:throw new ap("Iterators must have equal lengths")}if(!l)break;yield yield vc(a)}})}var hu=function(t){return this instanceof hu?(this.v=t,this):new hu(t)},NY=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(o){r[o]=t[o]&&function(a){return new Promise(function(s,l){a=t[o](a),n(s,l,a.done,a.value)})}}function n(o,a,s,l){Promise.resolve(l).then(function(u){o({value:u,done:s})},a)}},MY=function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=r.apply(t,e||[]),n,o=[];return n=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),n[Symbol.asyncIterator]=function(){return this},n;function a(p){return function(d){return Promise.resolve(d).then(p,f)}}function s(p,d){i[p]&&(n[p]=function(h){return new Promise(function(v,y){o.push([p,h,v,y])>1||l(p,h)})},d&&(n[p]=d(n[p])))}function l(p,d){try{u(i[p](d))}catch(h){m(o[0][3],h)}}function u(p){p.value instanceof hu?Promise.resolve(p.value.v).then(c,f):m(o[0][2],p)}function c(p){l("next",p)}function f(p){l("throw",p)}function m(p,d){p(d),o.shift(),o.length&&l(o[0][0],o[0][1])}};function*S0(t,e){let r=new Set;if(t instanceof Map){e===void 0&&(e=i=>i[1]);for(let i of t){let n=e(i);r.has(n)||(yield i,r.add(n))}}else{e===void 0&&(e=i=>i);for(let i of kr(t)){let n=e(i);r.has(n)||(yield i,r.add(n))}}}function EC(t,e){return MY(this,arguments,function*(){var i,n,o,a;let s=new Set;if(t instanceof Map)for(let f of S0(t,e))yield yield hu(yield hu(f));else{e===void 0&&(e=f=>f);try{for(var l=!0,u=NY(Pr(t)),c;c=yield hu(u.next()),i=c.done,!i;l=!0){a=c.value,l=!1;let f=a,m=e(f);s.has(m)||(yield yield hu(f),s.add(m))}}catch(f){n={error:f}}finally{try{!l&&!i&&(o=u.return)&&(yield hu(o.call(u)))}finally{if(n)throw n.error}}}})}var $n=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(o){r[o]=t[o]&&function(a){return new Promise(function(s,l){a=t[o](a),n(s,l,a.done,a.value)})}}function n(o,a,s,l){Promise.resolve(l).then(function(u){o({value:u,done:s})},a)}},at=function(t){return this instanceof at?(this.v=t,this):new at(t)},Xn=function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=r.apply(t,e||[]),n,o=[];return n=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),n[Symbol.asyncIterator]=function(){return this},n;function a(p){return function(d){return Promise.resolve(d).then(p,f)}}function s(p,d){i[p]&&(n[p]=function(h){return new Promise(function(v,y){o.push([p,h,v,y])>1||l(p,h)})},d&&(n[p]=d(n[p])))}function l(p,d){try{u(i[p](d))}catch(h){m(o[0][3],h)}}function u(p){p.value instanceof at?Promise.resolve(p.value.v).then(c,f):m(o[0][2],p)}function c(p){l("next",p)}function f(p){l("throw",p)}function m(p,d){p(d),o.shift(),o.length&&l(o[0][0],o[0][1])}};function*AM(t,e){for(let r of kr(t))yield e(r)}function Ph(t,e){return Xn(this,arguments,function*(){var i,n,o,a;try{for(var s=!0,l=$n(Pr(t)),u;u=yield at(l.next()),i=u.done,!i;s=!0)a=u.value,s=!1,yield yield at(yield at(e(a)))}catch(c){n={error:c}}finally{try{!s&&!i&&(o=l.return)&&(yield at(o.call(l)))}finally{if(n)throw n.error}}})}function*TM(t,e){for(let[r,i]of yc(t,e))i&&(yield r)}function NM(t,e){return Xn(this,arguments,function*(){var i,n,o,a;try{for(var s=!0,l=$n(TC(t,e)),u;u=yield at(l.next()),i=u.done,!i;s=!0){a=u.value,s=!1;let[c,f]=a;f&&(yield yield at(c))}}catch(c){n={error:c}}finally{try{!s&&!i&&(o=l.return)&&(yield at(o.call(l)))}finally{if(n)throw n.error}}})}function*MM(t,e){let r=!0;for(let i of kr(t)){if(r){if(!e(i)){r=!1,yield i;continue}continue}yield i}}function CM(t,e){return Xn(this,arguments,function*(){var i,n,o,a;let s=!0;try{for(var l=!0,u=$n(Pr(t)),c;c=yield at(u.next()),i=c.done,!i;l=!0){a=c.value,l=!1;let f=a;if(s){if(!(yield at(e(f)))){s=!1,yield yield at(f);continue}continue}yield yield at(f)}}catch(f){n={error:f}}finally{try{!l&&!i&&(o=u.return)&&(yield at(o.call(u)))}finally{if(n)throw n.error}}})}function*$M(t,e){for(let r of kr(t))if(e(r))yield r;else break}function IM(t,e){return Xn(this,arguments,function*(){var i,n,o,a;try{for(var s=!0,l=$n(Pr(t)),u;u=yield at(l.next()),i=u.done,!i;s=!0){a=u.value,s=!1;let c=a;if(yield at(e(c)))yield yield at(c);else break}}catch(c){n={error:c}}finally{try{!s&&!i&&(o=l.return)&&(yield at(o.call(l)))}finally{if(n)throw n.error}}})}function*FM(t,e){if(e<0)throw new mn(`Number of repetitions cannot be negative: ${e}`);for(let r=e;r>0;--r)yield t}function kM(t,e){return Xn(this,arguments,function*(){if(e<0)throw new mn(`Number of repetitions cannot be negative: ${e}`);let i=yield at(t);for(let n=e;n>0;--n)yield yield at(i)})}function*PM(t,e){for(let r of kr(t)){let i=e(r,e);if(oo(i))for(let n of kr(i))yield n;else yield i}}function BM(t,e){return Xn(this,arguments,function*(){var i,n,o,a,s,l,u,c;try{for(var f=!0,m=$n(Pr(t)),p;p=yield at(m.next()),i=p.done,!i;f=!0){a=p.value,f=!1;let S=yield at(e(a,e));if(oo(S)||ks(S))try{for(var d=!0,h=(l=void 0,$n(Pr(S))),v;v=yield at(h.next()),s=v.done,!s;d=!0)c=v.value,d=!1,yield yield at(c)}catch(b){l={error:b}}finally{try{!d&&!s&&(u=h.return)&&(yield at(u.call(h)))}finally{if(l)throw l.error}}else yield yield at(S)}}catch(y){n={error:y}}finally{try{!f&&!i&&(o=m.return)&&(yield at(o.call(m)))}finally{if(n)throw n.error}}})}function*b0(t,e=1/0){if(e<1){for(let r of kr(t))t instanceof Map&&(r=r[1]),yield r;return}for(let r of kr(t))if(t instanceof Map&&(r=r[1]),(oo(r)||Qo(r))&&!qa(r))for(let i of b0(r,e-1))yield i;else yield r}function x0(t){return Xn(this,arguments,function*(r,i=1/0){var n,o,a,s,l,u,c,f,m,p,d,h;if(i<1){try{for(var v=!0,y=$n(Pr(r)),S;S=yield at(y.next()),n=S.done,!n;v=!0){s=S.value,v=!1;let D=s;r instanceof Map&&(D=D[1]),yield yield at(D)}}catch(D){o={error:D}}finally{try{!v&&!n&&(a=y.return)&&(yield at(a.call(y)))}finally{if(o)throw o.error}}return yield at(void 0)}try{for(var b=!0,_=$n(Pr(r)),w;w=yield at(_.next()),l=w.done,!l;b=!0){f=w.value,b=!1;let D=f;if(r instanceof Map&&(D=D[1]),(ks(D)||oo(D)||Qo(D))&&!qa(D))try{for(var x=!0,E=(p=void 0,$n(x0(D,i-1))),T;T=yield at(E.next()),m=T.done,!m;x=!0)h=T.value,x=!1,yield yield at(h)}catch(M){p={error:M}}finally{try{!x&&!m&&(d=E.return)&&(yield at(d.call(E)))}finally{if(p)throw p.error}}else yield yield at(D)}}catch(D){u={error:D}}finally{try{!b&&!l&&(c=_.return)&&(yield at(c.call(_)))}finally{if(u)throw u.error}}})}function*OM(t,e){for(let r of kr(t))e(r)&&(yield r)}function RM(t,e){return Xn(this,arguments,function*(){var i,n,o,a;try{for(var s=!0,l=$n(Pr(t)),u;u=yield at(l.next()),i=u.done,!i;s=!0){a=u.value,s=!1;let c=a;(yield at(e(c)))&&(yield yield at(c))}}catch(c){n={error:c}}finally{try{!s&&!i&&(o=l.return)&&(yield at(o.call(l)))}finally{if(n)throw n.error}}})}function*Bh(t,e,r,i=!0){if(e<1)throw new mn(`Chunk size must be \u2265 1. Got ${e}`);if(r>=e)throw new mn("Overlap size must be less than chunk size");let n=[],o=!1;for(let a of kr(t))o=!1,n.push(a),n.length===e&&(yield n,n=n.slice(e-r),o=!0);!o&&n.length>0&&i&&(yield n)}function Oh(t,e,r){return Xn(this,arguments,function*(n,o,a,s=!0){var l,u,c,f;if(o<1)throw new mn(`Chunk size must be \u2265 1. Got ${o}`);if(a>=o)throw new mn("Overlap size must be less than chunk size");let m=[],p=!1;try{for(var d=!0,h=$n(Pr(n)),v;v=yield at(h.next()),l=v.done,!l;d=!0){f=v.value,d=!1;let y=f;p=!1,m.push(y),m.length===o&&(yield yield at(m),m=m.slice(o-a),p=!0)}}catch(y){u={error:y}}finally{try{!d&&!l&&(c=h.return)&&(yield at(c.call(h)))}finally{if(u)throw u.error}}!p&&m.length>0&&s&&(yield yield at(m))})}function*LM(t,e){for(let r of Bh(t,e,0))yield r}function UM(t,e){return Xn(this,arguments,function*(){var i,n,o,a;try{for(var s=!0,l=$n(Oh(t,e,0)),u;u=yield at(l.next()),i=u.done,!i;s=!0)a=u.value,s=!1,yield yield at(a)}catch(c){n={error:c}}finally{try{!s&&!i&&(o=l.return)&&(yield at(o.call(l)))}finally{if(n)throw n.error}}})}function*al(t){let e=Bh(t,2,1,!1);for(let r of e)yield r}function sp(t){return Xn(this,arguments,function*(){var r,i,n,o;let a=Oh(t,2,1,!1);try{for(var s=!0,l=$n(a),u;u=yield at(l.next()),r=u.done,!r;s=!0)o=u.value,s=!1,yield yield at(o)}catch(c){i={error:c}}finally{try{!s&&!r&&(n=l.return)&&(yield at(n.call(l)))}finally{if(i)throw i.error}}})}function*zM(t,e){if(e<0)throw new mn(`Limit must be \u2265 0. Got ${e}`);let r=0;for(let i of kr(t)){if(r>=e)return;yield i,++r}}function VM(t,e){return Xn(this,arguments,function*(){var i,n,o,a;if(e<0)throw new mn(`Limit must be \u2265 0. Got ${e}`);let s=0;try{for(var l=!0,u=$n(Pr(t)),c;c=yield at(u.next()),i=c.done,!i;l=!0){a=c.value,l=!1;let f=a;if(s>=e)return yield at(void 0);yield yield at(f),++s}}catch(f){n={error:f}}finally{try{!l&&!i&&(o=u.return)&&(yield at(o.call(u)))}finally{if(n)throw n.error}}})}function*qM(t){let e=0;for(let r of kr(t))yield[e++,r]}function jM(t){return Xn(this,arguments,function*(){var r,i,n,o;let a=0;try{for(var s=!0,l=$n(Pr(t)),u;u=yield at(l.next()),r=u.done,!r;s=!0){o=u.value,s=!1;let c=o;yield yield at([a++,c])}}catch(c){i={error:c}}finally{try{!s&&!r&&(n=l.return)&&(yield at(n.call(l)))}finally{if(i)throw i.error}}})}function*ZM(t,e=0,r,i=1){if(e<0)throw new mn("Parameter 'start' cannot be negative");if(r!==void 0&&r<0)throw new mn("Parameter 'count' cannot be negative");if(i<=0)throw new mn("Parameter 'step' must be positive");let n=0,o=0;for(let a of kr(t))if(!(n++=e)&&(yield n),++i}function JM(t,e){return Xn(this,arguments,function*(i,n,o=0){var a,s,l,u;if(n<0||o<0)throw new mn;let c=-o;try{for(var f=!0,m=$n(Pr(i)),p;p=yield at(m.next()),a=p.done,!a;f=!0){u=p.value,f=!1;let d=u;(c<0||c>=n)&&(yield yield at(d)),++c}}catch(d){s={error:d}}finally{try{!f&&!a&&(l=m.return)&&(yield at(l.call(m)))}finally{if(s)throw s.error}}})}function*XM(t){for(let[,e]of kr(t))yield e}function KM(t){return Xn(this,arguments,function*(){var r,i,n,o;try{for(var a=!0,s=$n(Pr(t)),l;l=yield at(s.next()),r=l.done,!r;a=!0){o=l.value,a=!1;let[,u]=o;yield yield at(u)}}catch(u){i={error:u}}finally{try{!a&&!r&&(n=s.return)&&(yield at(n.call(s)))}finally{if(i)throw i.error}}})}function*QM(t,e,r){let i=new Map,n=o=>{i.has(o)||(r!==void 0?i.set(o,{}):i.set(o,[]))};for(let o of kr(t)){let a=e(o),s=r!==void 0?r(o):void 0,l=(oo(a)||Qo(a))&&!qa(a)?a:[a];for(let u of S0(l))n(u),s===void 0?i.get(u).push(o):i.get(u)[s]=o}for(let o of i)yield o}function eC(t,e,r){return Xn(this,arguments,function*(){var n,o,a,s,l,u,c,f;let m=new Map,p=_=>{m.has(_)||(r!==void 0?m.set(_,{}):m.set(_,[]))};try{for(var d=!0,h=$n(Pr(t)),v;v=yield at(h.next()),n=v.done,!n;d=!0){s=v.value,d=!1;let _=s,w=yield at(e(_)),x=r!==void 0?yield at(r(_)):void 0,E=(ks(w)||oo(w)||Qo(w))&&!qa(w)?w:[w];try{for(var y=!0,S=(u=void 0,$n(EC(E))),b;b=yield at(S.next()),l=b.done,!l;y=!0){f=b.value,y=!1;let T=f;p(T),x===void 0?m.get(T).push(_):m.get(T)[x]=_}}catch(T){u={error:T}}finally{try{!y&&!l&&(c=S.return)&&(yield at(c.call(S)))}finally{if(u)throw u.error}}}}catch(_){o={error:_}}finally{try{!d&&!n&&(a=h.return)&&(yield at(a.call(h)))}finally{if(o)throw o.error}}for(let _ of m)yield yield at(_)})}function*tC(t,e){let r=AC(t);e!==void 0?r.sort(e):r.sort();for(let i of r)yield i}function rC(t,e){return Xn(this,arguments,function*(){let i=yield at(Rh(t));e!==void 0?i.sort(e):i.sort();for(let n of i)yield yield at(n)})}var wa=function(t,e,r,i){function n(o){return o instanceof r?o:new r(function(a){a(o)})}return new(r||(r=Promise))(function(o,a){function s(c){try{u(i.next(c))}catch(f){a(f)}}function l(c){try{u(i.throw(c))}catch(f){a(f)}}function u(c){c.done?o(c.value):n(c.value).then(s,l)}u((i=i.apply(t,e||[])).next())})},Ps=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(o){r[o]=t[o]&&function(a){return new Promise(function(s,l){a=t[o](a),n(s,l,a.done,a.value)})}}function n(o,a,s,l){Promise.resolve(l).then(function(u){o({value:u,done:s})},a)}};function nC(t,e){for(let r of kr(t))if(!e(r))return!1;return!0}function iC(t,e){return wa(this,void 0,void 0,function*(){var r,i,n,o;try{for(var a=!0,s=Ps(Pr(t)),l;l=yield s.next(),r=l.done,!r;a=!0)if(o=l.value,a=!1,!(yield e(o)))return!1}catch(u){i={error:u}}finally{try{!a&&!r&&(n=s.return)&&(yield n.call(s))}finally{if(i)throw i.error}}return!0})}function oC(t){let e=new Set;for(let r of kr(t)){if(e.has(r))return!1;e.add(r)}return!0}function aC(t){return wa(this,void 0,void 0,function*(){var e,r,i,n;let o=new Set;try{for(var a=!0,s=Ps(Pr(t)),l;l=yield s.next(),e=l.done,!e;a=!0){n=l.value,a=!1;let u=n;if(o.has(u))return!1;o.add(u)}}catch(u){r={error:u}}finally{try{!a&&!e&&(i=s.return)&&(yield i.call(s))}finally{if(r)throw r.error}}return!0})}function sC(t,e){for(let r of kr(t))if(e(r))return!0;return!1}function uC(t,e){return wa(this,void 0,void 0,function*(){var r,i,n,o;try{for(var a=!0,s=Ps(Pr(t)),l;l=yield s.next(),r=l.done,!r;a=!0)if(o=l.value,a=!1,yield e(o))return!0}catch(u){i={error:u}}finally{try{!a&&!r&&(n=s.return)&&(yield n.call(s))}finally{if(i)throw i.error}}return!1})}function lC(t,e,r){if(e<0)return!1;r===void 0&&(r=n=>!!n);let i=0;for(let n of kr(t))if(r(n)&&(i++,i>e))return!1;return i===e}function cC(t,e,r){return wa(this,void 0,void 0,function*(){var i,n,o,a;if(e<0)return!1;r===void 0&&(r=f=>!!f);let s=0;try{for(var l=!0,u=Ps(Pr(t)),c;c=yield u.next(),i=c.done,!i;l=!0)if(a=c.value,l=!1,(yield r(a))&&(s++,s>e))return!1}catch(f){n={error:f}}finally{try{!l&&!i&&(o=u.return)&&(yield o.call(u))}finally{if(n)throw n.error}}return s===e})}function fC(t){for(let e of kr(t))return!1;return!0}function pC(t){return wa(this,void 0,void 0,function*(){var e,r,i,n;try{for(var o=!0,a=Ps(Pr(t)),s;s=yield a.next(),e=s.done,!e;o=!0){n=s.value,o=!1;let l=n;return!1}}catch(l){r={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield i.call(a))}finally{if(r)throw r.error}}return!0})}function oo(t){return t==null?!1:typeof t[Symbol.iterator]=="function"}function ks(t){return t==null?!1:typeof t[Symbol.asyncIterator]=="function"}function Qo(t){return t==null?!1:t.next!==void 0&&typeof t.next=="function"}function mC(t){for(let[e,r]of al(kr(t)))if(er)return!1;return!0}function gC(t){return wa(this,void 0,void 0,function*(){var e,r,i,n;try{for(var o=!0,a=Ps(sp(Pr(t))),s;s=yield a.next(),e=s.done,!e;o=!0){n=s.value,o=!1;let[l,u]=n;if(l>u)return!1}}catch(l){r={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield i.call(a))}finally{if(r)throw r.error}}return!0})}function qa(t){return typeof t=="string"||t instanceof String}function vC(t,e){for(let r of kr(t))if(e(r))return!1;return!0}function yC(t,e){return wa(this,void 0,void 0,function*(){var r,i,n,o;try{for(var a=!0,s=Ps(Pr(t)),l;l=yield s.next(),r=l.done,!r;a=!0)if(o=l.value,a=!1,yield e(o))return!1}catch(u){i={error:u}}finally{try{!a&&!r&&(n=s.return)&&(yield n.call(s))}finally{if(i)throw i.error}}return!0})}function bC(...t){try{for(let e of NC(...t))for(let[r,i]of al(e))if(r!==i)return!1}catch{return!1}return!0}function xC(...t){return wa(this,void 0,void 0,function*(){var e,r,i,n;try{try{for(var o=!0,a=Ps(MC(...t)),s;s=yield a.next(),e=s.done,!e;o=!0){n=s.value,o=!1;let l=n;for(let[u,c]of al(l))if(u!==c)return!1}}catch(l){r={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield i.call(a))}finally{if(r)throw r.error}}}catch{return!1}return!0})}function _C(...t){if(t.length<=1)return!0;let e=t.map(r=>y0(r));return new Set(e).size===1}function wC(...t){return wa(this,void 0,void 0,function*(){if(t.length<=1)return!0;let e=yield Ph(t,r=>wa(this,void 0,void 0,function*(){return yield SM(r)}));return new Set(yield Rh(e)).size===1})}var CY=function(t,e,r,i){function n(o){return o instanceof r?o:new r(function(a){a(o)})}return new(r||(r=Promise))(function(o,a){function s(c){try{u(i.next(c))}catch(f){a(f)}}function l(c){try{u(i.throw(c))}catch(f){a(f)}}function u(c){c.done?o(c.value):n(c.value).then(s,l)}u((i=i.apply(t,e||[])).next())})},ja=function(t){return this instanceof ja?(this.v=t,this):new ja(t)},D0=function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=r.apply(t,e||[]),n,o=[];return n=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),n[Symbol.asyncIterator]=function(){return this},n;function a(p){return function(d){return Promise.resolve(d).then(p,f)}}function s(p,d){i[p]&&(n[p]=function(h){return new Promise(function(v,y){o.push([p,h,v,y])>1||l(p,h)})},d&&(n[p]=d(n[p])))}function l(p,d){try{u(i[p](d))}catch(h){m(o[0][3],h)}}function u(p){p.value instanceof ja?Promise.resolve(p.value.v).then(c,f):m(o[0][2],p)}function c(p){l("next",p)}function f(p){l("throw",p)}function m(p,d){p(d),o.shift(),o.length&&l(o[0][0],o[0][1])}},CC=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(o){r[o]=t[o]&&function(a){return new Promise(function(s,l){a=t[o](a),n(s,l,a.done,a.value)})}}function n(o,a,s,l){Promise.resolve(l).then(function(u){o({value:u,done:s})},a)}};function kr(t){if(oo(t))return t;if(Qo(t))return{[Symbol.iterator](){return t}};if(typeof t=="object"&&t!==null)return function*(){for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&(yield[e,t[e]])}();throw new mn("Given collection is not iterable or iterator.")}function Pr(t){if(ks(t))return t;if(Qo(t))return{[Symbol.asyncIterator](){return D0(this,arguments,function*(){for(;;){let r=yield ja(t.next());if(r.done)return yield ja(void 0);yield yield ja(r.value)}})}};if(typeof t=="object"&&t!==null&&(t=kr(t)),oo(t))return{[Symbol.asyncIterator](){return D0(this,arguments,function*(){for(let r of t)yield yield ja(r)})}};throw new mn("Given collection is not async iterable or iterator.")}function SC(t){if(Qo(t))return t;if(oo(t))return function*(){for(let e of t)yield e}();throw new mn("Given collection is not iterable or iterator.")}function DC(t){if((Qo(t)||oo(t))&&(t=Pr(t)),ks(t))return function(){return D0(this,arguments,function*(){var e,r,i,n;try{for(var o=!0,a=CC(t),s;s=yield ja(a.next()),e=s.done,!e;o=!0)n=s.value,o=!1,yield yield ja(n)}catch(l){r={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield ja(i.call(a)))}finally{if(r)throw r.error}}})}();throw new mn("Given collection is not iterable or iterator.")}function AC(t){if(Array.isArray(t))return t;let e=[];for(let r of kr(t))e.push(r);return e}function Rh(t){return CY(this,void 0,void 0,function*(){var e,r,i,n;if(Array.isArray(t))return t;let o=[];try{for(var a=!0,s=CC(Pr(t)),l;l=yield s.next(),e=l.done,!e;a=!0){n=l.value,a=!1;let u=n;o.push(u)}}catch(u){r={error:u}}finally{try{!a&&!e&&(i=s.return)&&(yield i.call(s))}finally{if(r)throw r.error}}return o})}var $C=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(o){r[o]=t[o]&&function(a){return new Promise(function(s,l){a=t[o](a),n(s,l,a.done,a.value)})}}function n(o,a,s,l){Promise.resolve(l).then(function(u){o({value:u,done:s})},a)}},Bs=function(t){return this instanceof Bs?(this.v=t,this):new Bs(t)},IC=function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=r.apply(t,e||[]),n,o=[];return n=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),n[Symbol.asyncIterator]=function(){return this},n;function a(p){return function(d){return Promise.resolve(d).then(p,f)}}function s(p,d){i[p]&&(n[p]=function(h){return new Promise(function(v,y){o.push([p,h,v,y])>1||l(p,h)})},d&&(n[p]=d(n[p])))}function l(p,d){try{u(i[p](d))}catch(h){m(o[0][3],h)}}function u(p){p.value instanceof Bs?Promise.resolve(p.value.v).then(c,f):m(o[0][2],p)}function c(p){l("next",p)}function f(p){l("throw",p)}function m(p,d){p(d),o.shift(),o.length&&l(o[0][0],o[0][1])}};function*yc(...t){for(let e of _0(_a.SHORTEST,void 0,...t))yield e}function TC(...t){return IC(this,arguments,function*(){var r,i,n,o;try{for(var a=!0,s=$C(w0(_a.SHORTEST,void 0,...t)),l;l=yield Bs(s.next()),r=l.done,!r;a=!0)o=l.value,a=!1,yield yield Bs(o)}catch(u){i={error:u}}finally{try{!a&&!r&&(n=s.return)&&(yield Bs(n.call(s)))}finally{if(i)throw i.error}}})}function*NC(...t){for(let e of _0(_a.STRICT_EQUAL,void 0,...t))yield e}function MC(...t){return IC(this,arguments,function*(){var r,i,n,o;try{for(var a=!0,s=$C(w0(_a.STRICT_EQUAL,void 0,...t)),l;l=yield Bs(s.next()),r=l.done,!r;a=!0)o=l.value,a=!1,yield yield Bs(o)}catch(u){i={error:u}}finally{try{!a&&!r&&(n=s.return)&&(yield Bs(n.call(s)))}finally{if(i)throw i.error}}})}var Lh=class{uuid;metadataManager;bindTarget;dependencies;dependencySignals;dependencySubscriptions;computeFunction;deleted;onDelete;constructor(e,r,i,n,o,a,s){this.uuid=e,this.metadataManager=r,this.bindTarget=i,this.dependencies=n,this.dependencySignals=o,this.dependencySubscriptions=[],this.computeFunction=a,this.onDelete=s,this.deleted=!1}init(){for(let[e,r]of yc(this.dependencies,this.dependencySignals)){let i=this.uuid+"/"+_r();this.dependencySubscriptions.push(this.metadataManager.subscribe(i,r,e,()=>this.delete())),r.registerListener({callback:()=>void this.computeValue()})}this.computeValue()}async computeValue(){try{let e=await this.computeFunction();if(this.bindTarget){let r=this.metadataManager.readShortLived(this.bindTarget);bs(r,e)||this.metadataManager.write(e,this.bindTarget,this.uuid)}}catch(e){let r=e instanceof Error?e:String(e);console.warn(new jt({errorLevel:"ERROR",effect:"Failed to run derived metadata computation",cause:r}))}}unsubscribe(){for(let e of this.dependencySubscriptions)e.unsubscribe();this.metadataManager.unsubscribe(this)}onUpdate(e){return!1}updatable(){return!1}getDependencies(){return this.dependencies}delete(){this.deleted=!0;for(let e of this.dependencySubscriptions)e.deleted||e.delete();this.onDelete(),this.unsubscribe()}};var Uh=class{uuid;metadataManager;bindTarget;dependencies;dependencySignals;dependencySubscriptions;effectFunction;deleted;onDelete;constructor(e,r,i,n,o,a){this.uuid=e,this.metadataManager=r,this.bindTarget=void 0,this.dependencies=i,this.dependencySignals=n,this.dependencySubscriptions=[],this.effectFunction=o,this.deleted=!1,this.onDelete=a}init(){for(let[e,r]of yc(this.dependencies,this.dependencySignals)){let i=this.uuid+"/"+_r();this.dependencySubscriptions.push(this.metadataManager.subscribe(i,r,e,()=>this.delete())),r.registerListener({callback:()=>void this.runEffect()})}this.runEffect()}async runEffect(){try{await this.effectFunction()}catch(e){let r=e instanceof Error?e:String(e);console.warn(new jt({errorLevel:"ERROR",effect:"Failed to run metadata effect",cause:r}))}}unsubscribe(){for(let e of this.dependencySubscriptions)e.unsubscribe();this.metadataManager.unsubscribe(this)}onUpdate(e){return!1}updatable(){return!1}getDependencies(){return this.dependencies}delete(){this.deleted=!0;for(let e of this.dependencySubscriptions)e.deleted||e.delete();this.onDelete(),this.unsubscribe()}};var zh=class{uuid;callbackSignal;value;metadataManager;bindTarget;deleted;onDelete;constructor(e,r,i,n,o){this.uuid=e,this.callbackSignal=r,this.metadataManager=i,this.bindTarget=n,this.onDelete=o,this.deleted=!1,this.value=void 0}unsubscribe(){this.metadataManager.unsubscribe(this)}write(e){let r=this.metadataManager.readShortLived(this.bindTarget);bs(r,e)||(this.value=e,this.metadataManager.write(e,this.bindTarget,this.uuid))}read(){return this.metadataManager.read(this.bindTarget)}onUpdate(e){try{if(!bs(this.value,e)){let r=structuredClone(e);return this.value=r,this.callbackSignal.set(r),!0}}catch(r){let i=r instanceof Error?r:String(r);console.warn(new jt({errorLevel:"ERROR",effect:"Failed to notify subscription of updated value in the cache",cause:i}))}return!1}updatable(){return!0}getDependencies(){return[]}delete(){this.deleted=!0,this.onDelete()}};var Sa=class{static get(e,r){return r.get(e).child}static tryGet(e,r){return r.tryGet(e)?.child}static fullGet(e,r){return r.get(e)}static set(e,r,i){r.set(e,i)}static setAndCreate(e,r,i){r.setAndCreate(e,i)}};var $Y=5,IY=300;function E0(t,e){return t===void 0||e===void 0||t.storageType!==e.storageType||t.storagePath!==e.storagePath?!1:FC(t.storageProp,e.storageProp,e.listenToChildren)}function FC(t,e,r){let i=t.path,n=e.path;for(let o=0;on.length?r:!0}function FY(t){return t===void 0?"undefined":`${t.storagePath}#${t.storageProp.toString()}`}var bc=class{sources;defaultSource;constructor(){this.sources=new Map,this.defaultSource="CHANGE_THE_DEFAULT_SOURCE"}registerSource(e){this.sources.set(e.id,e)}setDefaultSource(e){if(this.sources.has(e))this.defaultSource=e;else throw new jt({errorLevel:"CRITICAL",effect:"can not set default source",cause:`Source "${e}" does not exist`})}unregisterSource(e){this.sources.delete(e.id)}getSource(e){return this.sources.get(e)}iterateSources(){return this.sources.keys()}subscribe(e,r,i,n){let o=new zh(e,r,this,i,n);return this.subscribeSubscription(o),o}subscribeDerived(e,r,i,n,o,a){let s=new Lh(e,this,r,i,n,o,a);return this.checkForLoops(s),s.init(),this.subscribeSubscription(s),s}subscribeEffect(e,r,i,n,o){let a=new Uh(e,this,r,i,n,o);return a.init(),this.subscribeSubscription(a),a}unsubscribe(e){if(e.bindTarget===void 0)return;let r=this.getSource(e.bindTarget.storageType);if(r===void 0)throw new jt({errorLevel:"ERROR",effect:"can not unsubscribe subscription",cause:`Source "${e.bindTarget.storageType}" does not exist`});let i=r.unsubscribe(e);i.subscriptions.length===0&&(i.cyclesWithoutListeners=0)}subscribeSubscription(e){if(e.bindTarget===void 0)return;let r=this.getSource(e.bindTarget.storageType);if(r===void 0)throw new jt({errorLevel:"ERROR",effect:"can not subscribe subscription",cause:`Source "${e.bindTarget.storageType}" does not exist`});let i=r.subscribe(e);i.cyclesWithoutListeners=0;let n=r.readCacheItem(i,e.bindTarget.storageProp);e.onUpdate(n)}checkForLoops(e){for(let r of this.getAllSubscriptionsToDependencies(e))this.recCheckForLoops([e,r])}recCheckForLoops(e){let r=e.at(0),i=e.at(-1);if(!(i===void 0||r===void 0)){if(E0(r.bindTarget,i.bindTarget))throw new Zm({errorLevel:"ERROR",effect:"bind target dependency loop detected",cause:`the loop is as follows: ${e.map(n=>`"${FY(n.bindTarget)}"`).join(" -> ")}`,docs:["https://mprojectscode.github.io/obsidian-meta-bind-plugin-docs/guides/viewfields/#circular-dependencies"]});for(let n of this.getAllSubscriptionsToDependencies(i))this.recCheckForLoops([...e,n])}}getAllSubscriptionsToDependencies(e){return e.getDependencies().map(r=>this.getAllSubscriptionsToBindTarget(r)).flat()}getAllSubscriptionsToBindTarget(e){if(e===void 0)return[];let r=this.getCacheItemForBindTarget(e);if(!r)return[];let i=[];for(let n of r.subscriptions)E0(n.bindTarget,e)&&i.push(n);return r.subscriptions.filter(n=>E0(n.bindTarget,e))}getCacheItemForBindTarget(e){return this.getSource(e.storageType)?.getCacheItemForStoragePath(e.storagePath)}async cycle(){let e=[];for(let r of this.sources.values())e.push(this.cycleSource(r));for(let r of await Promise.allSettled(e))r.status==="rejected"&&console.warn("meta-bind | MetadataManager >> failed to cycle source",r.reason)}async cycleSource(e){let r=[],i=await Promise.allSettled(e.getCacheItems().map(async n=>{if(e.onCycle(n),n.dirty)try{await e.syncExternal(n),n.dirty=!1}catch(o){console.warn(`failed to sync changes to external source for ${e.id}`,o)}n.externalWriteLock>0&&(n.externalWriteLock-=1),n.subscriptions.length===0&&(n.cyclesWithoutListeners+=1),n.cyclesWithoutListeners>IY&&e.shouldDelete(n)&&r.push(n)}));for(let n of i)n.status==="rejected"&&console.warn(`meta-bind | MetadataManager >> failed to cycle cache item in source ${e.id}`,n.reason)}write(e,r,i){let n=this.getSource(r.storageType);if(n===void 0)throw new jt({errorLevel:"ERROR",effect:"can not write to cache",cause:`Source "${r.storageType}" does not exist`});let o=n.writeCache(structuredClone(e),r);o.dirty=!0,o.externalWriteLock=$Y,this.notifyListeners(r,i)}read(e){let r=this.getSource(e.storageType);if(r===void 0)throw new jt({errorLevel:"ERROR",effect:"can not read metadata",cause:`Source "${e.storageType}" does not exist`});return structuredClone(r.readCache(e))}readShortLived(e){let r=this.getSource(e.storageType);if(r===void 0)throw new jt({errorLevel:"ERROR",effect:"can not read metadata",cause:`Source "${e.storageType}" does not exist`});return r.readCache(e)}isCacheExternalWriteLocked(e){return e.externalWriteLock>0}notifyListeners(e,r){let i=this.getSource(e.storageType);if(i===void 0)throw new jt({errorLevel:"ERROR",effect:"can notify listeners metadata",cause:`Source "${e.storageType}" does not exist`});let n=i.getCacheItemForStoragePath(e.storagePath);if(n!==void 0){for(let o of n.subscriptions)if(!(r!==void 0&&r===o.uuid||o.bindTarget===void 0||!o.updatable())&&FC(e.storageProp,o.bindTarget.storageProp,o.bindTarget.listenToChildren)){let a=i.readCache(o.bindTarget);o.onUpdate(a)}}}notifyAllListeners(e,r){for(let i of r.subscriptions){if(i.bindTarget===void 0)continue;let n=e.readCache(i.bindTarget);i.onUpdate(n)}}deleteCachesForStoragePath(e){for(let r of this.sources.values()){if(!r.usesStoragePath())continue;let i=r.getCacheItemForStoragePath(e);i!==void 0&&(i.subscriptions.forEach(n=>n.delete()),r.deleteCache(i))}}constructDefaultCacheItem(){return{subscriptions:[],externalWriteLock:0,dirty:!1,cyclesWithoutListeners:0}}onExternalUpdate(e,r,i){let n=e.getCacheItemForStoragePath(r);if(n===void 0||this.isCacheExternalWriteLocked(n))return;e.writeEntireCache(i,n);let o=0;for(let a of n.subscriptions){if(a.bindTarget===void 0||!a.updatable())continue;let s=Sa.tryGet(i,a.bindTarget.storageProp);a.onUpdate(s)&&(o+=1)}}onStoragePathDeleted(e){this.deleteCachesForStoragePath(e)}onStoragePathRenamed(e,r){this.deleteCachesForStoragePath(e)}};var Vh=class{activeMountables;constructor(){this.activeMountables=new Map}unloadFile(e){for(let r of this.activeMountables.values())r.getFilePath()===e&&r.unmount()}unload(){for(let e of this.activeMountables.values())e.unmount()}registerMountable(e){this.activeMountables.set(e.getUuid(),e)}unregisterMountable(e){this.activeMountables.delete(e.getUuid())}};var gu=class t{path;constructor(e){this.path=e}get(e){if(this.path.length===0)throw new Error("can not use empty path to access object");let r=this.path[0].get(e);for(let i of this.path.slice(1))r=i.get(r.child);return r}tryGet(e){try{return this.get(e)}catch{return}}set(e,r){if(this.path.length===0)throw new Error("can not use empty path to access object");let i=this.path[0].get(e);for(let n of this.path.slice(1))i=n.get(i.child);i.access.set(i.parent,r)}setAndCreate(e,r){if(this.path.length===0)throw new Error("can not use empty path to access object");let i=this.path[0].get(e);i.child===void 0&&(i.access.set(i.parent,this.getNextPathElementValue(0,r)),i=i.access.get(i.parent));for(let n=1;ne.prop)}toString(){return this.toStringArray().join(".")}concat(e){return new t(this.path.concat(e.path))}compareDiffArray(e){let r=Math.min(this.path.length,e.length);for(let i=0;ir.toUnvalidatedPropAccess()),listenToChildren:e.listenToChildren}}validate(e,r,i,n){let o=new gu(r.storageProp.map(m=>new zu(m.type,m.prop.value))),a;r.storageType===void 0?a=this.mb.metadataManager.defaultSource:a=this.validateStorageType(r.storageType,e);let s=r.storagePath!==void 0,l=r.storagePath??{value:i},u=this.mb.metadataManager.getSource(a);if(u===void 0)throw new jt({errorLevel:"CRITICAL",effect:"can not validate bind target",cause:`Source '${a}' not found. But validation was successful. This should not happen.`,context:{fullDeclaration:e,sources:[...this.mb.metadataManager.sources.keys()]}});let c=u.validateStoragePath(l,s,e,this),f={storageType:a,storagePath:c,storageProp:o,listenToChildren:r.listenToChildren};return u.id==="scope"?this.resolveScope(f,n):f}resolveScope(e,r){if(r===void 0)throw new Pn("ERROR","Bind Target Scope Validator","Failed to resolve bind target scope, no scope provided");return e.storageType=r.scope.storageType,e.storagePath=r.scope.storagePath,e.storageProp=r.scope.storageProp.concat(e.storageProp),e}validateStorageType(e,r){for(let i of this.mb.metadataManager.iterateSources())if(i===e.value)return i;throw new Pn("ERROR","Bind Target Validator",`Encountered invalid identifier. Expected token to be a storage type but received '${e?.value}'.`,r,e?.position)}validateStoragePathAsFilePath(e,r){let i=e?.value;if(i===void 0)throw new Pn("ERROR","Bind Target Validator","Failed to parse bind target. Bind target storage path is undefined.",r,e?.position);let n=this.mb.file.getPathByName(i);if(n===void 0)throw new Pn("ERROR","Bind Target Validator",`Failed to parse bind target. Bind target file path '${i}' not found.`,r,e?.position);return n}};var RI=Ar(yo()),Zp=Ar(Ji());var ge={};hs(ge,{$brand:()=>T0,$input:()=>L1,$output:()=>R1,NEVER:()=>A0,TimePrecision:()=>V1,ZodAny:()=>tI,ZodArray:()=>oI,ZodBase64:()=>KS,ZodBase64URL:()=>QS,ZodBigInt:()=>jp,ZodBigIntFormat:()=>nD,ZodBoolean:()=>qp,ZodCIDRv4:()=>JS,ZodCIDRv6:()=>XS,ZodCUID:()=>qS,ZodCUID2:()=>jS,ZodCatch:()=>wI,ZodCustom:()=>qg,ZodCustomStringFormat:()=>rD,ZodDate:()=>zg,ZodDefault:()=>gI,ZodDiscriminatedUnion:()=>aI,ZodE164:()=>eD,ZodEmail:()=>LS,ZodEmoji:()=>zS,ZodEnum:()=>Up,ZodError:()=>TX,ZodFile:()=>dI,ZodFirstPartyTypeKind:()=>hD,ZodGUID:()=>Bg,ZodIPv4:()=>HS,ZodIPv6:()=>YS,ZodISODate:()=>Ig,ZodISODateTime:()=>$g,ZodISODuration:()=>kg,ZodISOTime:()=>Fg,ZodIntersection:()=>sI,ZodIssueCode:()=>kK,ZodJWT:()=>tD,ZodKSUID:()=>WS,ZodLazy:()=>NI,ZodLiteral:()=>mI,ZodMap:()=>fI,ZodNaN:()=>DI,ZodNanoID:()=>VS,ZodNever:()=>nI,ZodNonOptional:()=>mD,ZodNull:()=>Q$,ZodNullable:()=>hI,ZodNumber:()=>Vp,ZodNumberFormat:()=>Ic,ZodObject:()=>Vg,ZodOptional:()=>pD,ZodPipe:()=>dD,ZodPrefault:()=>yI,ZodPromise:()=>CI,ZodReadonly:()=>EI,ZodRealError:()=>$c,ZodRecord:()=>uD,ZodSet:()=>pI,ZodString:()=>zp,ZodStringFormat:()=>Kr,ZodSuccess:()=>_I,ZodSymbol:()=>X$,ZodTemplateLiteral:()=>TI,ZodTransform:()=>cD,ZodTuple:()=>lI,ZodType:()=>pr,ZodULID:()=>ZS,ZodURL:()=>US,ZodUUID:()=>Vs,ZodUndefined:()=>K$,ZodUnion:()=>aD,ZodUnknown:()=>rI,ZodVoid:()=>iI,ZodXID:()=>GS,_ZodString:()=>RS,_default:()=>vI,any:()=>uK,array:()=>oD,base64:()=>WX,base64url:()=>HX,bigint:()=>nK,boolean:()=>J$,catch:()=>SI,check:()=>NK,cidrv4:()=>ZX,cidrv6:()=>GX,clone:()=>ao,coerce:()=>gD,config:()=>Rn,core:()=>zs,cuid:()=>RX,cuid2:()=>LX,custom:()=>MK,date:()=>cK,discriminatedUnion:()=>hK,e164:()=>YX,email:()=>MX,emoji:()=>BX,endsWith:()=>Ip,enum:()=>lD,file:()=>wK,flattenError:()=>vp,float32:()=>QX,float64:()=>eK,formatError:()=>yp,function:()=>AS,getErrorMap:()=>BK,globalRegistry:()=>Wa,gt:()=>Ls,gte:()=>so,guid:()=>CX,hostname:()=>KX,includes:()=>Cp,instanceof:()=>CK,int:()=>OS,int32:()=>tK,int64:()=>iK,intersection:()=>uI,ipv4:()=>qX,ipv6:()=>jX,iso:()=>Pg,json:()=>IK,jwt:()=>JX,keyof:()=>fK,ksuid:()=>VX,lazy:()=>MI,length:()=>Cc,literal:()=>_K,locales:()=>Dp,looseObject:()=>dK,lowercase:()=>Np,lt:()=>Rs,lte:()=>ea,map:()=>yK,maxLength:()=>Mc,maxSize:()=>Nc,mime:()=>Fp,minLength:()=>bu,minSize:()=>dl,multipleOf:()=>ml,nan:()=>EK,nanoid:()=>OX,nativeEnum:()=>xK,negative:()=>gS,never:()=>iD,nonnegative:()=>yS,nonoptional:()=>xI,nonpositive:()=>vS,normalize:()=>kp,null:()=>eI,nullable:()=>Lg,nullish:()=>SK,number:()=>Y$,object:()=>pK,optional:()=>Rg,overwrite:()=>Us,parse:()=>IS,parseAsync:()=>FS,partialRecord:()=>vK,pipe:()=>Ug,positive:()=>hS,prefault:()=>bI,preprocess:()=>FK,prettifyError:()=>R0,promise:()=>TK,property:()=>bS,readonly:()=>AI,record:()=>cI,refine:()=>$I,regex:()=>Tp,regexes:()=>Os,registry:()=>sg,safeParse:()=>kS,safeParseAsync:()=>PS,set:()=>bK,setErrorMap:()=>PK,size:()=>Ap,startsWith:()=>$p,strictObject:()=>mK,string:()=>BS,stringFormat:()=>XX,stringbool:()=>$K,success:()=>DK,superRefine:()=>II,symbol:()=>aK,templateLiteral:()=>AK,toJSONSchema:()=>TS,toLowerCase:()=>Bp,toUpperCase:()=>Op,transform:()=>fD,treeifyError:()=>O0,trim:()=>Pp,tuple:()=>gK,uint32:()=>rK,uint64:()=>oK,ulid:()=>UX,undefined:()=>sK,union:()=>sD,unknown:()=>Og,uppercase:()=>Mp,url:()=>PX,uuid:()=>$X,uuidv4:()=>IX,uuidv6:()=>FX,uuidv7:()=>kX,void:()=>lK,xid:()=>zX});var zs={};hs(zs,{$ZodAny:()=>p1,$ZodArray:()=>_p,$ZodAsyncError:()=>Za,$ZodBase64:()=>r1,$ZodBase64URL:()=>n1,$ZodBigInt:()=>ig,$ZodBigIntFormat:()=>u1,$ZodBoolean:()=>xp,$ZodCIDRv4:()=>Qw,$ZodCIDRv6:()=>e1,$ZodCUID:()=>Vw,$ZodCUID2:()=>qw,$ZodCatch:()=>$1,$ZodCheck:()=>an,$ZodCheckBigIntFormat:()=>yw,$ZodCheckEndsWith:()=>Cw,$ZodCheckGreaterThan:()=>eg,$ZodCheckIncludes:()=>Nw,$ZodCheckLengthEquals:()=>Dw,$ZodCheckLessThan:()=>Qh,$ZodCheckLowerCase:()=>Aw,$ZodCheckMaxLength:()=>ww,$ZodCheckMaxSize:()=>bw,$ZodCheckMimeType:()=>Iw,$ZodCheckMinLength:()=>Sw,$ZodCheckMinSize:()=>xw,$ZodCheckMultipleOf:()=>gw,$ZodCheckNumberFormat:()=>vw,$ZodCheckOverwrite:()=>Fw,$ZodCheckProperty:()=>$w,$ZodCheckRegex:()=>Ew,$ZodCheckSizeEquals:()=>_w,$ZodCheckStartsWith:()=>Mw,$ZodCheckStringFormat:()=>Dc,$ZodCheckUpperCase:()=>Tw,$ZodCustom:()=>O1,$ZodCustomStringFormat:()=>a1,$ZodDate:()=>h1,$ZodDefault:()=>T1,$ZodDiscriminatedUnion:()=>v1,$ZodE164:()=>i1,$ZodEmail:()=>Rw,$ZodEmoji:()=>Uw,$ZodEnum:()=>w1,$ZodError:()=>gp,$ZodFile:()=>D1,$ZodFunction:()=>Cg,$ZodGUID:()=>Bw,$ZodIPv4:()=>Xw,$ZodIPv6:()=>Kw,$ZodISODate:()=>Hw,$ZodISODateTime:()=>Ww,$ZodISODuration:()=>Jw,$ZodISOTime:()=>Yw,$ZodIntersection:()=>y1,$ZodJWT:()=>o1,$ZodKSUID:()=>Gw,$ZodLazy:()=>B1,$ZodLiteral:()=>S1,$ZodMap:()=>x1,$ZodNaN:()=>I1,$ZodNanoID:()=>zw,$ZodNever:()=>m1,$ZodNonOptional:()=>M1,$ZodNull:()=>f1,$ZodNullable:()=>A1,$ZodNumber:()=>ng,$ZodNumberFormat:()=>s1,$ZodObject:()=>g1,$ZodOptional:()=>E1,$ZodPipe:()=>Sp,$ZodPrefault:()=>N1,$ZodPromise:()=>P1,$ZodReadonly:()=>F1,$ZodRealError:()=>Sc,$ZodRecord:()=>b1,$ZodRegistry:()=>Ac,$ZodSet:()=>_1,$ZodString:()=>fl,$ZodStringFormat:()=>Wr,$ZodSuccess:()=>C1,$ZodSymbol:()=>l1,$ZodTemplateLiteral:()=>k1,$ZodTransform:()=>wp,$ZodTuple:()=>pl,$ZodType:()=>ar,$ZodULID:()=>jw,$ZodURL:()=>Lw,$ZodUUID:()=>Ow,$ZodUndefined:()=>c1,$ZodUnion:()=>og,$ZodUnknown:()=>Ec,$ZodVoid:()=>d1,$ZodXID:()=>Zw,$brand:()=>T0,$constructor:()=>ye,$input:()=>L1,$output:()=>R1,Doc:()=>bp,JSONSchema:()=>G$,JSONSchemaGenerator:()=>Lp,NEVER:()=>A0,TimePrecision:()=>V1,_any:()=>lS,_array:()=>Rp,_base64:()=>Eg,_base64url:()=>Ag,_bigint:()=>rS,_boolean:()=>eS,_catch:()=>xX,_check:()=>Z$,_cidrv4:()=>Sg,_cidrv6:()=>Dg,_coercedBigint:()=>nS,_coercedBoolean:()=>tS,_coercedDate:()=>mS,_coercedNumber:()=>H1,_coercedString:()=>z1,_cuid:()=>gg,_cuid2:()=>vg,_custom:()=>wS,_date:()=>pS,_default:()=>vX,_discriminatedUnion:()=>aX,_e164:()=>Tg,_email:()=>ug,_emoji:()=>dg,_endsWith:()=>Ip,_enum:()=>fX,_file:()=>_S,_float32:()=>J1,_float64:()=>X1,_gt:()=>Ls,_gte:()=>so,_guid:()=>Ep,_includes:()=>Cp,_int:()=>Y1,_int32:()=>K1,_int64:()=>iS,_intersection:()=>sX,_ipv4:()=>_g,_ipv6:()=>wg,_isoDate:()=>j1,_isoDateTime:()=>q1,_isoDuration:()=>G1,_isoTime:()=>Z1,_jwt:()=>Ng,_ksuid:()=>xg,_lazy:()=>DX,_length:()=>Cc,_literal:()=>mX,_lowercase:()=>Np,_lt:()=>Rs,_lte:()=>ea,_map:()=>lX,_max:()=>ea,_maxLength:()=>Mc,_maxSize:()=>Nc,_mime:()=>Fp,_min:()=>so,_minLength:()=>bu,_minSize:()=>dl,_multipleOf:()=>ml,_nan:()=>dS,_nanoid:()=>hg,_nativeEnum:()=>pX,_negative:()=>gS,_never:()=>cS,_nonnegative:()=>yS,_nonoptional:()=>yX,_nonpositive:()=>vS,_normalize:()=>kp,_null:()=>uS,_nullable:()=>gX,_number:()=>W1,_optional:()=>hX,_overwrite:()=>Us,_parse:()=>Gh,_parseAsync:()=>Hh,_pipe:()=>_X,_positive:()=>hS,_promise:()=>EX,_property:()=>bS,_readonly:()=>wX,_record:()=>uX,_refine:()=>SS,_regex:()=>Tp,_safeParse:()=>Jh,_safeParseAsync:()=>Xh,_set:()=>cX,_size:()=>Ap,_startsWith:()=>$p,_string:()=>U1,_stringFormat:()=>Mg,_stringbool:()=>ES,_success:()=>bX,_superRefine:()=>DS,_symbol:()=>aS,_templateLiteral:()=>SX,_toLowerCase:()=>Bp,_toUpperCase:()=>Op,_transform:()=>dX,_trim:()=>Pp,_tuple:()=>xS,_uint32:()=>Q1,_uint64:()=>oS,_ulid:()=>yg,_undefined:()=>sS,_union:()=>oX,_unknown:()=>Tc,_uppercase:()=>Mp,_url:()=>mg,_uuid:()=>lg,_uuidv4:()=>cg,_uuidv6:()=>fg,_uuidv7:()=>pg,_void:()=>fS,_xid:()=>bg,clone:()=>ao,config:()=>Rn,flattenError:()=>vp,formatError:()=>yp,function:()=>AS,globalConfig:()=>up,globalRegistry:()=>Wa,isValidBase64:()=>t1,isValidBase64URL:()=>QC,isValidJWT:()=>e$,locales:()=>Dp,parse:()=>Wh,parseAsync:()=>Yh,prettifyError:()=>R0,regexes:()=>Os,registry:()=>sg,safeParse:()=>L0,safeParseAsync:()=>U0,toDotPath:()=>BC,toJSONSchema:()=>TS,treeifyError:()=>O0,util:()=>Ke,version:()=>kw});var A0=Object.freeze({status:"aborted"});function ye(t,e,r){function i(s,l){var u;Object.defineProperty(s,"_zod",{value:s._zod??{},enumerable:!1}),(u=s._zod).traits??(u.traits=new Set),s._zod.traits.add(t),e(s,l);for(let c in a.prototype)c in s||Object.defineProperty(s,c,{value:a.prototype[c].bind(s)});s._zod.constr=a,s._zod.def=l}let n=r?.Parent??Object;class o extends n{}Object.defineProperty(o,"name",{value:t});function a(s){var l;let u=r?.Parent?new o:this;i(u,s),(l=u._zod).deferred??(l.deferred=[]);for(let c of u._zod.deferred)c();return u}return Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:s=>r?.Parent&&s instanceof r.Parent?!0:s?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var T0=Symbol("zod_brand"),Za=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},up={};function Rn(t){return t&&Object.assign(up,t),up}var Ke={};hs(Ke,{BIGINT_FORMAT_RANGES:()=>B0,Class:()=>M0,NUMBER_FORMAT_RANGES:()=>P0,aborted:()=>ll,allowsEval:()=>$0,assert:()=>LY,assertEqual:()=>PY,assertIs:()=>OY,assertNever:()=>RY,assertNotEqual:()=>BY,assignProp:()=>sl,cached:()=>fp,captureStackTrace:()=>Zh,cleanEnum:()=>eJ,cleanRegex:()=>pp,clone:()=>ao,cloneDef:()=>zY,createTransparentProxy:()=>WY,defineLazy:()=>Tr,esc:()=>jh,escapeRegex:()=>Ga,extend:()=>JY,finalizeIssue:()=>Co,floatSafeRemainder:()=>C0,getElementAtPath:()=>VY,getEnumValues:()=>cp,getLengthableOrigin:()=>hp,getParsedType:()=>GY,getSizableOrigin:()=>dp,isObject:()=>xc,isPlainObject:()=>ul,issue:()=>wc,joinValues:()=>Ie,jsonStringifyReplacer:()=>_c,merge:()=>XY,mergeDefs:()=>yu,normalizeParams:()=>Ye,nullish:()=>vu,numKeys:()=>ZY,objectClone:()=>UY,omit:()=>YY,optionalKeys:()=>k0,partial:()=>KY,pick:()=>HY,prefixIssues:()=>Mo,primitiveTypes:()=>F0,promiseAllObject:()=>qY,propertyKeyTypes:()=>mp,randomString:()=>jY,required:()=>QY,shallowClone:()=>I0,stringifyPrimitive:()=>tt,unwrapMessage:()=>lp});function PY(t){return t}function BY(t){return t}function OY(t){}function RY(t){throw new Error}function LY(t){}function cp(t){let e=Object.values(t).filter(i=>typeof i=="number");return Object.entries(t).filter(([i,n])=>e.indexOf(+i)===-1).map(([i,n])=>n)}function Ie(t,e="|"){return t.map(r=>tt(r)).join(e)}function _c(t,e){return typeof e=="bigint"?e.toString():e}function fp(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function vu(t){return t==null}function pp(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function C0(t,e){let r=(t.toString().split(".")[1]||"").length,i=e.toString(),n=(i.split(".")[1]||"").length;if(n===0&&/\d?e-\d?/.test(i)){let l=i.match(/\d?e-(\d?)/);l?.[1]&&(n=Number.parseInt(l[1]))}let o=r>n?r:n,a=Number.parseInt(t.toFixed(o).replace(".","")),s=Number.parseInt(e.toFixed(o).replace(".",""));return a%s/10**o}var kC=Symbol("evaluating");function Tr(t,e,r){let i;Object.defineProperty(t,e,{get(){if(i!==kC)return i===void 0&&(i=kC,i=r()),i},set(n){Object.defineProperty(t,e,{value:n})},configurable:!0})}function UY(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function sl(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function yu(...t){let e={};for(let r of t){let i=Object.getOwnPropertyDescriptors(r);Object.assign(e,i)}return Object.defineProperties({},e)}function zY(t){return yu(t._zod.def)}function VY(t,e){return e?e.reduce((r,i)=>r?.[i],t):t}function qY(t){let e=Object.keys(t),r=e.map(i=>t[i]);return Promise.all(r).then(i=>{let n={};for(let o=0;o{};function xc(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var $0=fp(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function ul(t){if(xc(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(xc(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function I0(t){return ul(t)?{...t}:t}function ZY(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var GY=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},mp=new Set(["string","number","symbol"]),F0=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Ga(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ao(t,e,r){let i=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(i._zod.parent=t),i}function Ye(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function WY(t){let e;return new Proxy({},{get(r,i,n){return e??(e=t()),Reflect.get(e,i,n)},set(r,i,n,o){return e??(e=t()),Reflect.set(e,i,n,o)},has(r,i){return e??(e=t()),Reflect.has(e,i)},deleteProperty(r,i){return e??(e=t()),Reflect.deleteProperty(e,i)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,i){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,i)},defineProperty(r,i,n){return e??(e=t()),Reflect.defineProperty(e,i,n)}})}function tt(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function k0(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var P0={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},B0={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function HY(t,e){let r=t._zod.def,i=yu(t._zod.def,{get shape(){let n={};for(let o in e){if(!(o in r.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(n[o]=r.shape[o])}return sl(this,"shape",n),n},checks:[]});return ao(t,i)}function YY(t,e){let r=t._zod.def,i=yu(t._zod.def,{get shape(){let n={...t._zod.def.shape};for(let o in e){if(!(o in r.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete n[o]}return sl(this,"shape",n),n},checks:[]});return ao(t,i)}function JY(t,e){if(!ul(e))throw new Error("Invalid input to extend: expected a plain object");let r=yu(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e};return sl(this,"shape",i),i},checks:[]});return ao(t,r)}function XY(t,e){let r=yu(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e._zod.def.shape};return sl(this,"shape",i),i},get catchall(){return e._zod.def.catchall},checks:[]});return ao(t,r)}function KY(t,e,r){let i=yu(e._zod.def,{get shape(){let n=e._zod.def.shape,o={...n};if(r)for(let a in r){if(!(a in n))throw new Error(`Unrecognized key: "${a}"`);r[a]&&(o[a]=t?new t({type:"optional",innerType:n[a]}):n[a])}else for(let a in n)o[a]=t?new t({type:"optional",innerType:n[a]}):n[a];return sl(this,"shape",o),o},checks:[]});return ao(e,i)}function QY(t,e,r){let i=yu(e._zod.def,{get shape(){let n=e._zod.def.shape,o={...n};if(r)for(let a in r){if(!(a in o))throw new Error(`Unrecognized key: "${a}"`);r[a]&&(o[a]=new t({type:"nonoptional",innerType:n[a]}))}else for(let a in n)o[a]=new t({type:"nonoptional",innerType:n[a]});return sl(this,"shape",o),o},checks:[]});return ao(e,i)}function ll(t,e=0){for(let r=e;r{var i;return(i=r).path??(i.path=[]),r.path.unshift(t),r})}function lp(t){return typeof t=="string"?t:t?.message}function Co(t,e,r){let i={...t,path:t.path??[]};if(!t.message){let n=lp(t.inst?._zod.def?.error?.(t))??lp(e?.error?.(t))??lp(r.customError?.(t))??lp(r.localeError?.(t))??"Invalid input";i.message=n}return delete i.inst,delete i.continue,e?.reportInput||delete i.input,i}function dp(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function hp(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function wc(...t){let[e,r,i]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:i}:{...e}}function eJ(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var M0=class{constructor(...e){}};var PC=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,_c,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},gp=ye("$ZodError",PC),Sc=ye("$ZodError",PC,{Parent:Error});function vp(t,e=r=>r.message){let r={},i=[];for(let n of t.issues)n.path.length>0?(r[n.path[0]]=r[n.path[0]]||[],r[n.path[0]].push(e(n))):i.push(e(n));return{formErrors:i,fieldErrors:r}}function yp(t,e){let r=e||function(o){return o.message},i={_errors:[]},n=o=>{for(let a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(s=>n({issues:s}));else if(a.code==="invalid_key")n({issues:a.issues});else if(a.code==="invalid_element")n({issues:a.issues});else if(a.path.length===0)i._errors.push(r(a));else{let s=i,l=0;for(;l{var s,l;for(let u of o.issues)if(u.code==="invalid_union"&&u.errors.length)u.errors.map(c=>n({issues:c},u.path));else if(u.code==="invalid_key")n({issues:u.issues},u.path);else if(u.code==="invalid_element")n({issues:u.issues},u.path);else{let c=[...a,...u.path];if(c.length===0){i.errors.push(r(u));continue}let f=i,m=0;for(;mtypeof i=="object"?i.key:i);for(let i of r)typeof i=="number"?e.push(`[${i}]`):typeof i=="symbol"?e.push(`[${JSON.stringify(String(i))}]`):/[^\w$]/.test(i)?e.push(`[${JSON.stringify(i)}]`):(e.length&&e.push("."),e.push(i));return e.join("")}function R0(t){let e=[],r=[...t.issues].sort((i,n)=>(i.path??[]).length-(n.path??[]).length);for(let i of r)e.push(`\u2716 ${i.message}`),i.path?.length&&e.push(` \u2192 at ${BC(i.path)}`);return e.join(` -`)}var Gh=t=>(e,r,i,n)=>{let o=i?Object.assign(i,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new Za;if(a.issues.length){let s=new(n?.Err??t)(a.issues.map(l=>Co(l,o,Rn())));throw Zh(s,n?.callee),s}return a.value},Wh=Gh(Sc),Hh=t=>async(e,r,i,n)=>{let o=i?Object.assign(i,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let s=new(n?.Err??t)(a.issues.map(l=>Co(l,o,Rn())));throw Zh(s,n?.callee),s}return a.value},Yh=Hh(Sc),Jh=t=>(e,r,i)=>{let n=i?{...i,async:!1}:{async:!1},o=e._zod.run({value:r,issues:[]},n);if(o instanceof Promise)throw new Za;return o.issues.length?{success:!1,error:new(t??gp)(o.issues.map(a=>Co(a,n,Rn())))}:{success:!0,data:o.value}},L0=Jh(Sc),Xh=t=>async(e,r,i)=>{let n=i?Object.assign(i,{async:!0}):{async:!0},o=e._zod.run({value:r,issues:[]},n);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new t(o.issues.map(a=>Co(a,n,Rn())))}:{success:!0,data:o.value}},U0=Xh(Sc);var Os={};hs(Os,{base64:()=>tw,base64url:()=>Kh,bigint:()=>uw,boolean:()=>fw,browserEmail:()=>cJ,cidrv4:()=>Q0,cidrv6:()=>ew,cuid:()=>z0,cuid2:()=>V0,date:()=>iw,datetime:()=>aw,domain:()=>pJ,duration:()=>W0,e164:()=>nw,email:()=>Y0,emoji:()=>J0,extendedDuration:()=>rJ,guid:()=>H0,hostname:()=>rw,html5Email:()=>aJ,idnEmail:()=>lJ,integer:()=>lw,ipv4:()=>X0,ipv6:()=>K0,ksuid:()=>Z0,lowercase:()=>dw,nanoid:()=>G0,null:()=>pw,number:()=>cw,rfc5322Email:()=>sJ,string:()=>sw,time:()=>ow,ulid:()=>q0,undefined:()=>mw,unicodeEmail:()=>uJ,uppercase:()=>hw,uuid:()=>cl,uuid4:()=>nJ,uuid6:()=>iJ,uuid7:()=>oJ,xid:()=>j0});var z0=/^[cC][^\s-]{8,}$/,V0=/^[0-9a-z]+$/,q0=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,j0=/^[0-9a-vA-V]{20}$/,Z0=/^[A-Za-z0-9]{27}$/,G0=/^[a-zA-Z0-9_-]{21}$/,W0=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,rJ=/^[-+]?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)?)??$/,H0=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,cl=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,nJ=cl(4),iJ=cl(6),oJ=cl(7),Y0=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,aJ=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,sJ=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,uJ=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,lJ=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,cJ=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,fJ="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function J0(){return new RegExp(fJ,"u")}var X0=/^(?:(?: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])$/,K0=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Q0=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,ew=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,tw=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Kh=/^[A-Za-z0-9_-]*$/,rw=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,pJ=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,nw=/^\+(?:[0-9]){6,14}[0-9]$/,OC="(?:(?:\\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])))",iw=new RegExp(`^${OC}$`);function RC(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ow(t){return new RegExp(`^${RC(t)}$`)}function aw(t){let e=RC({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let i=`${e}(?:${r.join("|")})`;return new RegExp(`^${OC}T(?:${i})$`)}var sw=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},uw=/^\d+n?$/,lw=/^\d+$/,cw=/^-?\d+(?:\.\d+)?/i,fw=/true|false/i,pw=/null/i;var mw=/undefined/i;var dw=/^[^A-Z]*$/,hw=/^[^a-z]*$/;var an=ye("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),UC={number:"number",bigint:"bigint",object:"date"},Qh=ye("$ZodCheckLessThan",(t,e)=>{an.init(t,e);let r=UC[typeof e.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(e.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?i.value<=e.value:i.value{an.init(t,e);let r=UC[typeof e.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(e.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>o&&(e.inclusive?n.minimum=e.value:n.exclusiveMinimum=e.value)}),t._zod.check=i=>{(e.inclusive?i.value>=e.value:i.value>e.value)||i.issues.push({origin:r,code:"too_small",minimum:e.value,input:i.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),gw=ye("$ZodCheckMultipleOf",(t,e)=>{an.init(t,e),t._zod.onattach.push(r=>{var i;(i=r._zod.bag).multipleOf??(i.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):C0(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),vw=ye("$ZodCheckNumberFormat",(t,e)=>{an.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),i=r?"int":"number",[n,o]=P0[e.format];t._zod.onattach.push(a=>{let s=a._zod.bag;s.format=e.format,s.minimum=n,s.maximum=o,r&&(s.pattern=lw)}),t._zod.check=a=>{let s=a.value;if(r){if(!Number.isInteger(s)){a.issues.push({expected:i,format:e.format,code:"invalid_type",continue:!1,input:s,inst:t});return}if(!Number.isSafeInteger(s)){s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,continue:!e.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,continue:!e.abort});return}}so&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:o,inst:t})}}),yw=ye("$ZodCheckBigIntFormat",(t,e)=>{an.init(t,e);let[r,i]=B0[e.format];t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=e.format,o.minimum=r,o.maximum=i}),t._zod.check=n=>{let o=n.value;oi&&n.issues.push({origin:"bigint",input:o,code:"too_big",maximum:i,inst:t})}}),bw=ye("$ZodCheckMaxSize",(t,e)=>{var r;an.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!vu(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let n=i.value;n.size<=e.maximum||i.issues.push({origin:dp(n),code:"too_big",maximum:e.maximum,input:n,inst:t,continue:!e.abort})}}),xw=ye("$ZodCheckMinSize",(t,e)=>{var r;an.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!vu(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let n=i.value;n.size>=e.minimum||i.issues.push({origin:dp(n),code:"too_small",minimum:e.minimum,input:n,inst:t,continue:!e.abort})}}),_w=ye("$ZodCheckSizeEquals",(t,e)=>{var r;an.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!vu(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=e.size,n.maximum=e.size,n.size=e.size}),t._zod.check=i=>{let n=i.value,o=n.size;if(o===e.size)return;let a=o>e.size;i.issues.push({origin:dp(n),...a?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:i.value,inst:t,continue:!e.abort})}}),ww=ye("$ZodCheckMaxLength",(t,e)=>{var r;an.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!vu(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let n=i.value;if(n.length<=e.maximum)return;let a=hp(n);i.issues.push({origin:a,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Sw=ye("$ZodCheckMinLength",(t,e)=>{var r;an.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!vu(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let n=i.value;if(n.length>=e.minimum)return;let a=hp(n);i.issues.push({origin:a,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Dw=ye("$ZodCheckLengthEquals",(t,e)=>{var r;an.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!vu(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=e.length,n.maximum=e.length,n.length=e.length}),t._zod.check=i=>{let n=i.value,o=n.length;if(o===e.length)return;let a=hp(n),s=o>e.length;i.issues.push({origin:a,...s?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:i.value,inst:t,continue:!e.abort})}}),Dc=ye("$ZodCheckStringFormat",(t,e)=>{var r,i;an.init(t,e),t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=e.format,e.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=n=>{e.pattern.lastIndex=0,!e.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:e.format,input:n.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(i=t._zod).check??(i.check=()=>{})}),Ew=ye("$ZodCheckRegex",(t,e)=>{Dc.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),Aw=ye("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=dw),Dc.init(t,e)}),Tw=ye("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=hw),Dc.init(t,e)}),Nw=ye("$ZodCheckIncludes",(t,e)=>{an.init(t,e);let r=Ga(e.includes),i=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=i,t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(i)}),t._zod.check=n=>{n.value.includes(e.includes,e.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:n.value,inst:t,continue:!e.abort})}}),Mw=ye("$ZodCheckStartsWith",(t,e)=>{an.init(t,e);let r=new RegExp(`^${Ga(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),t._zod.check=i=>{i.value.startsWith(e.prefix)||i.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:i.value,inst:t,continue:!e.abort})}}),Cw=ye("$ZodCheckEndsWith",(t,e)=>{an.init(t,e);let r=new RegExp(`.*${Ga(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),t._zod.check=i=>{i.value.endsWith(e.suffix)||i.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:i.value,inst:t,continue:!e.abort})}});function LC(t,e,r){t.issues.length&&e.issues.push(...Mo(r,t.issues))}var $w=ye("$ZodCheckProperty",(t,e)=>{an.init(t,e),t._zod.check=r=>{let i=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(i instanceof Promise)return i.then(n=>LC(n,r,e.property));LC(i,r,e.property)}}),Iw=ye("$ZodCheckMimeType",(t,e)=>{an.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(i=>{i._zod.bag.mime=e.mime}),t._zod.check=i=>{r.has(i.value.type)||i.issues.push({code:"invalid_value",values:e.mime,input:i.value.type,inst:t,continue:!e.abort})}}),Fw=ye("$ZodCheckOverwrite",(t,e)=>{an.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var bp=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let i=e.split(` -`).filter(a=>a),n=Math.min(...i.map(a=>a.length-a.trimStart().length)),o=i.map(a=>a.slice(n)).map(a=>" ".repeat(this.indent*2)+a);for(let a of o)this.content.push(a)}compile(){let e=Function,r=this?.args,n=[...(this?.content??[""]).map(o=>` ${o}`)];return new e(...r,n.join(` -`))}};var kw={major:4,minor:0,patch:17};var ar=ye("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=kw;let i=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&i.unshift(t);for(let n of i)for(let o of n._zod.onattach)o(t);if(i.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let n=(o,a,s)=>{let l=ll(o),u;for(let c of a){if(c._zod.def.when){if(!c._zod.def.when(o))continue}else if(l)continue;let f=o.issues.length,m=c._zod.check(o);if(m instanceof Promise&&s?.async===!1)throw new Za;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,o.issues.length!==f&&(l||(l=ll(o,f)))});else{if(o.issues.length===f)continue;l||(l=ll(o,f))}}return u?u.then(()=>o):o};t._zod.run=(o,a)=>{let s=t._zod.parse(o,a);if(s instanceof Promise){if(a.async===!1)throw new Za;return s.then(l=>n(l,i,a))}return n(s,i,a)}}t["~standard"]={validate:n=>{try{let o=L0(t,n);return o.success?{value:o.data}:{issues:o.error?.issues}}catch{return U0(t,n).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),fl=ye("$ZodString",(t,e)=>{ar.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??sw(t._zod.bag),t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),Wr=ye("$ZodStringFormat",(t,e)=>{Dc.init(t,e),fl.init(t,e)}),Bw=ye("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=H0),Wr.init(t,e)}),Ow=ye("$ZodUUID",(t,e)=>{if(e.version){let i={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(i===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=cl(i))}else e.pattern??(e.pattern=cl());Wr.init(t,e)}),Rw=ye("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Y0),Wr.init(t,e)}),Lw=ye("$ZodURL",(t,e)=>{Wr.init(t,e),t._zod.check=r=>{try{let i=r.value.trim(),n=new URL(i);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(n.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:rw.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),e.normalize?r.value=n.href:r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Uw=ye("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=J0()),Wr.init(t,e)}),zw=ye("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=G0),Wr.init(t,e)}),Vw=ye("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=z0),Wr.init(t,e)}),qw=ye("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=V0),Wr.init(t,e)}),jw=ye("$ZodULID",(t,e)=>{e.pattern??(e.pattern=q0),Wr.init(t,e)}),Zw=ye("$ZodXID",(t,e)=>{e.pattern??(e.pattern=j0),Wr.init(t,e)}),Gw=ye("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Z0),Wr.init(t,e)}),Ww=ye("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=aw(e)),Wr.init(t,e)}),Hw=ye("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=iw),Wr.init(t,e)}),Yw=ye("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=ow(e)),Wr.init(t,e)}),Jw=ye("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=W0),Wr.init(t,e)}),Xw=ye("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=X0),Wr.init(t,e),t._zod.onattach.push(r=>{let i=r._zod.bag;i.format="ipv4"})}),Kw=ye("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=K0),Wr.init(t,e),t._zod.onattach.push(r=>{let i=r._zod.bag;i.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),Qw=ye("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Q0),Wr.init(t,e)}),e1=ye("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=ew),Wr.init(t,e),t._zod.check=r=>{let[i,n]=r.value.split("/");try{if(!n)throw new Error;let o=Number(n);if(`${o}`!==n)throw new Error;if(o<0||o>128)throw new Error;new URL(`http://[${i}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function t1(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var r1=ye("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=tw),Wr.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{t1(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function QC(t){if(!Kh.test(t))return!1;let e=t.replace(/[-_]/g,i=>i==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return t1(r)}var n1=ye("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Kh),Wr.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{QC(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),i1=ye("$ZodE164",(t,e)=>{e.pattern??(e.pattern=nw),Wr.init(t,e)});function e$(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[i]=r;if(!i)return!1;let n=JSON.parse(atob(i));return!("typ"in n&&n?.typ!=="JWT"||!n.alg||e&&(!("alg"in n)||n.alg!==e))}catch{return!1}}var o1=ye("$ZodJWT",(t,e)=>{Wr.init(t,e),t._zod.check=r=>{e$(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),a1=ye("$ZodCustomStringFormat",(t,e)=>{Wr.init(t,e),t._zod.check=r=>{e.fn(r.value)||r.issues.push({code:"invalid_format",format:e.format,input:r.value,inst:t,continue:!e.abort})}}),ng=ye("$ZodNumber",(t,e)=>{ar.init(t,e),t._zod.pattern=t._zod.bag.pattern??cw,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let n=r.value;if(typeof n=="number"&&!Number.isNaN(n)&&Number.isFinite(n))return r;let o=typeof n=="number"?Number.isNaN(n)?"NaN":Number.isFinite(n)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:n,inst:t,...o?{received:o}:{}}),r}}),s1=ye("$ZodNumber",(t,e)=>{vw.init(t,e),ng.init(t,e)}),xp=ye("$ZodBoolean",(t,e)=>{ar.init(t,e),t._zod.pattern=fw,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=!!r.value}catch{}let n=r.value;return typeof n=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:n,inst:t}),r}}),ig=ye("$ZodBigInt",(t,e)=>{ar.init(t,e),t._zod.pattern=uw,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:t}),r}}),u1=ye("$ZodBigInt",(t,e)=>{yw.init(t,e),ig.init(t,e)}),l1=ye("$ZodSymbol",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return typeof n=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:n,inst:t}),r}}),c1=ye("$ZodUndefined",(t,e)=>{ar.init(t,e),t._zod.pattern=mw,t._zod.values=new Set([void 0]),t._zod.optin="optional",t._zod.optout="optional",t._zod.parse=(r,i)=>{let n=r.value;return typeof n>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:n,inst:t}),r}}),f1=ye("$ZodNull",(t,e)=>{ar.init(t,e),t._zod.pattern=pw,t._zod.values=new Set([null]),t._zod.parse=(r,i)=>{let n=r.value;return n===null||r.issues.push({expected:"null",code:"invalid_type",input:n,inst:t}),r}}),p1=ye("$ZodAny",(t,e)=>{ar.init(t,e),t._zod.parse=r=>r}),Ec=ye("$ZodUnknown",(t,e)=>{ar.init(t,e),t._zod.parse=r=>r}),m1=ye("$ZodNever",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),d1=ye("$ZodVoid",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return typeof n>"u"||r.issues.push({expected:"void",code:"invalid_type",input:n,inst:t}),r}}),h1=ye("$ZodDate",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let n=r.value,o=n instanceof Date;return o&&!Number.isNaN(n.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:n,...o?{received:"Invalid Date"}:{},inst:t}),r}});function VC(t,e,r){t.issues.length&&e.issues.push(...Mo(r,t.issues)),e.value[r]=t.value}var _p=ye("$ZodArray",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!Array.isArray(n))return r.issues.push({expected:"array",code:"invalid_type",input:n,inst:t}),r;r.value=Array(n.length);let o=[];for(let a=0;aVC(u,r,a))):VC(l,r,a)}return o.length?Promise.all(o).then(()=>r):r}});function tg(t,e,r,i){t.issues.length&&e.issues.push(...Mo(r,t.issues)),t.value===void 0?r in i&&(e.value[r]=void 0):e.value[r]=t.value}var g1=ye("$ZodObject",(t,e)=>{ar.init(t,e);let r=fp(()=>{let f=Object.keys(e.shape);for(let p of f)if(!e.shape[p]._zod.traits.has("$ZodType"))throw new Error(`Invalid element at key "${p}": expected a Zod schema`);let m=k0(e.shape);return{shape:e.shape,keys:f,keySet:new Set(f),numKeys:f.length,optionalKeys:new Set(m)}});Tr(t._zod,"propValues",()=>{let f=e.shape,m={};for(let p in f){let d=f[p]._zod;if(d.values){m[p]??(m[p]=new Set);for(let h of d.values)m[p].add(h)}}return m});let i=f=>{let m=new bp(["shape","payload","ctx"]),p=r.value,d=S=>{let b=jh(S);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),v=0;for(let S of p.keys)h[S]=`key_${v++}`;m.write("const newResult = {}");for(let S of p.keys){let b=h[S],_=jh(S);m.write(`const ${b} = ${d(S)};`),m.write(` - if (${b}.issues.length) { - payload.issues = payload.issues.concat(${b}.issues.map(iss => ({ +Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let u=require(`obsidian`),d=require(`@codemirror/language`),f=require(`@codemirror/view`);var p=class{input;position;latestError;constructor(e,t){this.input=e,this.position=t}atEOF(){return this.position>=this.input.length}advanceTo(e){this.position=e}sliceTo(e){return this.input.slice(this.position,e)}succeedOffset(e,t){return this.succeedAt(this.position+e,t)}failOffset(e,t){return this.failAt(this.position+e,t)}succeed(e){return this.succeedAt(this.position,e)}fail(e){return this.failAt(this.position,e)}succeedAt(e,t){return this.advanceTo(e),{success:!0,value:t}}failAt(e,t){return this.advanceTo(e),this.addError(Array.isArray(t)?t:[t]),{success:!1,value:void 0}}addError(e){this.latestError===void 0||this.latestError.positiont[a](n,i)),Object.defineProperty(r,a,{get:()=>{if(n[a]!==void 0)return n[a];throw Error(`Can not access rule '${a}' in language. Rule is not yet defined. Try to access it via 'ref'.`)}});for(let e in t)n[e]=t[e](r,i);return n}static or(...e){if(e.length===0)throw Error(`or must have at least one alternative`);return new T(function(t){let n=t.position;for(let r of e){let e=r;t.position=n;let i=e.p(t);if(i.success)return i}return{success:!1,value:void 0}})}static separateBy(t,n){return this.separateByNotEmpty(t,n).or(e.succeed([]))}static separateByNotEmpty(e,t){return this.sequenceMap(function(e,t){return t.unshift(e),t},e,t.then(e).many())}static string(e){let t=`'`+e+`'`;return new T(function(n){for(let r=0;r=0&&e<=a.length){let t=a[0],n=a[e];return r.succeedOffset(t.length,n)}let i=`expected valid match group (0 to `+a.length+`) in `+n;return r.fail(i)}else return r.fail(n)})}static succeed(e){return new T(function(t){return t.succeed(e)})}static fail(e){return new T(function(t){return t.fail(e)})}static oneOf(e){return k.test(function(t){return e.includes(t)},`one character of '${e}'`)}static noneOf(e){return k.test(function(t){return!e.includes(t)},`no character of '${e}'`)}static oneStringOf(e){return this.or(...e.map(e=>this.string(e))).describe(e.map(e=>`'${e}'`).join(` or `))}static manyOf(e){return new T(function(t){let n=t.position;for(;ne.succeed(e.position))}static any(){return new T(e=>e.atEOF()?e.fail(`any character`):e.succeedOffset(1,e.input[e.position]))}static remaining(){return new T(e=>e.succeedAt(e.input.length,e.input.slice(e.position)))}static eof(){return new T(e=>e.atEOF()?e.succeed(void 0):e.fail(`eof`))}static digit(){return k.testCharCode(e=>e>=v&&e<=y,`a digit`)}static digits(){return k.testCharCodes(e=>e>=v&&e<=y,`multiple digits`)}static letter(){return k.testCharCode(e=>e>=b&&e<=x||e>=S&&e<=C,`a letter`)}static letters(){return k.testCharCodes(e=>e>=b&&e<=x||e>=S&&e<=C,`multiple letters`)}static unicodeLetter(){return _.regexp(/^\p{L}/iu).describe(`a unicode letter`)}static unicodeLetters(){return _.regexp(/^\p{L}+/iu).describe(`multiple unicode letters`)}static unicodeAlphanumeric(){return _.regexp(/^[\p{L}\p{N}]/iu).describe(`a unicode alphanumeric character`)}static unicodeAlphanumerics(){return _.regexp(/^[\p{L}\p{N}]+/iu).describe(`multiple unicode alphanumeric characters`)}static optionalWhitespace(){return new T(function(e){let t=e.position;for(;t=e.input.length)return e.fail(`\\r\\n`);let t=e.input[e.position],n=e.input[e.position+1];return t===`\r`&&n===` +`?e.succeedOffset(2,void 0):e.fail(`\\r\\n`)})}static newline(){let e=`newline`;return new T(function(t){if(t.position>=t.input.length)return t.fail(e);let n=t.input[t.position];return n===` +`?t.succeedOffset(1,void 0):n===`\r`?t.position+1e.reduce((e,t)=>n(t,e),t),e.many(),t)}static postfix(e,t,n){return _.sequenceMap((e,t)=>t.reduce((e,t)=>n(t,e),e),t,e.many())}static binaryRight(e,t,n){return _.sequenceMap((e,t)=>e.reverse().reduce((e,t)=>{let[r,i]=t;return n(r,i,e)},t),_.sequence(t,e.trim(this.optionalWhitespace())).many(),t)}static binaryLeft(e,t,n){return _.sequenceMap((e,t)=>t.reduce((e,t)=>{let[r,i]=t;return n(e,r,i)},e),t,_.sequence(e.trim(this.optionalWhitespace()),t).many())}static binaryRightRange(t,n,r){return _.sequenceMap((e,t,n)=>e.reverse().reduce((e,t)=>{let[i,a,o]=t;return r({from:i,to:n},a,o,e)},t),_.sequence(e.position(),n,t.trim(this.optionalWhitespace())).many(),n,e.position())}static binaryLeftRange(t,n,r){return _.sequenceMap((e,t,n)=>n.reduce((t,n)=>{let[i,a,o]=n;return r({from:e,to:o},t,i,a)},t),e.position(),n,_.sequence(t.trim(this.optionalWhitespace()),n,e.position()).many())}static func(e,t,n){let r=typeof e==`string`?_.string(e):e;return _.sequenceMap((e,t,r,i,a,o)=>n(e,i),r,_.string(`(`),this.optionalWhitespace(),t,this.optionalWhitespace(),_.string(`)`))}},T=class e{p;constructor(e){this.p=e}tryParse(e){let t=new p(e,0),n=this.p(t);return n.success?n:{success:!1,value:void 0,furthest:t.latestError.position,expected:t.latestError.expected}}parse(e){let t=this.tryParse(e);if(t.success)return t.value;throw new h(e,t)}or(e){let t=this;return _.or(t,e)}trim(e){return this.wrap(e,e)}trimString(e){return this.trim(_.string(e))}wrap(t,n){let r=this;return new e(function(e){let i=t.p(e);if(!i.success)return i;let a=r.p(e);if(!a.success)return a;let o=n.p(e);return o.success?a:o})}wrapString(e,t){return this.wrap(_.string(e),_.string(t))}then(t){let n=this;return new e(function(e){let r=n.p(e);if(!r.success)return r;let i=t.p(e);return i.success,i})}skip(t){let n=this;return new e(function(e){let r=n.p(e);if(!r.success)return r;let i=t.p(e);return i.success?r:i})}and(e){let t=this;return _.sequence(t,e)}many(){let t=this;return new e(function(e){let n=[];for(;;){let r=e.position,i=t.p(e);if(i.success){if(e.position===r)throw Error(`infinite loop in many() parser detected`);n.push(i.value)}else return e.position=r,{success:!0,value:n}}})}repeat(t,n){D(t,n);let r=this;return new e(function(e){let i=[],a=0;for(;a=t?{success:!0,value:i}:{success:!1,value:void 0}}return{success:!0,value:i}})}atMost(e){return this.repeat(0,e)}atLeast(e){return _.sequenceMap((e,t)=>e.concat(t),this.repeat(e,e),this.many())}separateBy(e){return _.separateBy(this,e)}separateByNotEmpty(e){return _.separateByNotEmpty(this,e)}result(e){return this.map(()=>e)}map(t){let n=this;return new e(function(e){let r=n.p(e);return r.success?{success:!0,value:t(r.value)}:r})}marker(){let e=this;return _.sequenceMap(function(e,t,n){return{value:t,range:{from:e,to:n}}},w.position(),e,w.position())}namedMarker(e){let t=this;return _.sequenceMap(function(t,n,r){return{value:n,name:e,range:{from:t,to:r}}},w.position(),t,w.position())}node(e){let t=this;return _.sequenceMap(function(t,n,r){return e(n,{from:t,to:r})},w.position(),t,w.position())}followedBy(e){return this.skip(k.followedBy(e))}notFollowedBy(e){return this.skip(k.notFollowedBy(e))}describe(t){typeof t==`string`&&(t=[t]);let n=this;return new e(function(e){let r=e.getAndClearLatestError(),i=n.p(e);return e.latestError!==void 0&&(e.latestError.expected=t),e.mergeLatestError(r),i})}box(t){let n=this;return new e(function(e){let r=e.getAndClearLatestError(),i=n.p(e);return e.latestError!==void 0&&(e.latestError.expected=[`(${e.latestError.expected.join(` or `)} as part of ${t})`]),e.mergeLatestError(r),i})}optional(e){return this.or(_.succeed(e))}chain(t){let n=this;return new e(function(e){let r=n.p(e);return r.success?t(r.value).p(e):r})}thenEof(){let t=this;return new e(function(e){let n=t.p(e);return n.success?e.atEOF()?n:e.fail(`eof`):n})}};function E(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;let n=[...e];for(let e of t)n.includes(e)||n.push(e);return n}function D(e,t){if(tn.position){let e=n.input.slice(n.position,r);return n.succeedAt(r,e)}else return n.fail(t)})}},A=function(e){return e.INLINE=`inline`,e.BLOCK=`block`,e}({}),j=function(e){return e.INPUT=`INPUT`,e.VIEW=`VIEW`,e.JS_VIEW=`JS_VIEW`,e.TABLE=`TABLE`,e.BUTTON_GROUP=`BUTTON_GROUP`,e.BUTTON=`BUTTON`,e.EMBED=`EMBED`,e.EXCLUDED=`EXCLUDED`,e}({}),M=class{linePosition;constructor(e){this.linePosition=e}getPosition(){return this.linePosition}};function N(e){return e===j.INPUT||e===j.VIEW||e===j.BUTTON_GROUP}var P=function(e){return e.CRITICAL=`CRITICAL`,e.ERROR=`ERROR`,e.WARNING=`WARNING`,e}({}),F=function(e){return e.INTERNAL=`MB_INTERNAL`,e.PARSING=`MB_PARSING`,e.BIND_TARGET=`MB_BIND_TARGET`,e.VALUE=`MB_VALUE`,e.ARGUMENT=`MB_ARGUMENT`,e.JS=`MB_JS`,e.EXPRESSION=`MB_EXPRESSION`,e.PUBLISH=`MB_PUBLISH`,e.VALIDATION=`MB_VALIDATION`,e.PARSINOM=`MB_PARSINOM`,e.EXAMPLE=`MB_EXAMPLE`,e.EMBED=`MB_EMBED`,e.BUTTON=`MB_BUTTON`,e.DEPENDENCY=`MB_DEPENDENCY`,e.OTHER=`OTHER`,e}({}),I=class extends Error{errorLevel;effect;cause;tip;docs;context;positionContext;constructor(e){super(``),this.errorLevel=e.errorLevel,this.effect=e.effect,this.cause=e.cause,this.tip=e.tip,this.docs=e.docs,this.context=e.context,this.positionContext=e.positionContext,this.updateMessage()}updateMessage(){this.cause instanceof Error?this.message=`[${this.getErrorType()}] "${this.effect}" caused by error "${this.cause.message}"`:this.message=`[${this.getErrorType()}] "${this.effect}" caused by "${this.cause}"`}log(){console.log(this.message,this.stack,this.context)}},L=class extends I{getErrorType(){return F.INTERNAL}},ee=class extends I{getErrorType(){return F.PARSING}},R=class extends I{getErrorType(){return F.VALIDATION}},te=class extends I{getErrorType(){return F.BIND_TARGET}},z=class extends I{getErrorType(){return F.ARGUMENT}},ne=class extends I{getErrorType(){return F.JS}},re=class extends I{getErrorType(){return F.EXPRESSION}},ie=class extends I{getErrorType(){return F.EXAMPLE}},ae=class extends I{getErrorType(){return F.BUTTON}},oe=class extends I{getErrorType(){return F.DEPENDENCY}};function se(e,t){let n=e.thenEof().tryParse(t);if(n.success)return n.value;throw new ce(P.ERROR,`parsiNOM parser`,t,n)}var ce=class extends I{str;parseFailure;source;constructor(e,t,n,r){super({errorLevel:e,effect:`Failed to parse. Check that your syntax is correct.`,cause:`expected ${r.expected.sort().join(` or `)}`}),this.str=n,this.parseFailure=r,this.source=t,this.updateMessage2()}getErrorType(){return F.PARSINOM}updateMessage2(){this.cause instanceof Error?this.message=`[${this.getErrorType()}] "${this.effect}" caused by error "${this.cause.message}"\n`:this.message=`[${this.getErrorType()}] "${this.effect}" caused by "${this.cause}"\n`;let e=g(this.str,this.parseFailure.furthest),t=this.str.split(` +`)[e.line-1]??``,n=`${e.line} | `;this.positionContext=`${n}${t}`,this.positionContext+=`\n${this.getUnderline(n.length,e.column)}\n`,this.message+=` +`+this.positionContext}getUnderline(e,t){return` `.repeat(t+e-1)+`^ (${this.cause})`}},le=class extends I{str;position;source;constructor(e,t,n,r,i,a){super({errorLevel:e,effect:`Failed to validate the result of the parser.`,cause:n,docs:a}),this.str=r,this.position=i,this.source=t,this.updateMessage2()}getErrorType(){return F.VALIDATION}updateMessage2(){if(this.cause instanceof Error?this.message=`[${this.getErrorType()}] "${this.effect}" caused by error "${this.cause.message}"\n`:this.message=`[${this.getErrorType()}] "${this.effect}" caused by "${this.cause}"\n`,this.str&&this.position){let e=g(this.str,this.position.from),t=g(this.str,this.position.to),n=this.str.split(` +`)[e.line-1]??``,r=`${e.line} | `;this.positionContext=`${r}${n}`,this.positionContext+=`\n${this.getUnderline(r.length,n.length,e,t)}\n`,this.message+=` +`+this.positionContext}}getUnderline(e,t,n,r){if(this.position===void 0)return``;let i=` `.repeat(n.column+e-1),a=r.line===n.line?r.column:t+1;return i+`^`.repeat(Math.max(1,a-n.column))}},ue=_.sequence(_.or(w.unicodeLetter(),_.oneOf(`_$`)),_.or(w.unicodeAlphanumeric(),_.oneOf(`-_$`)).many()).map(e=>e[0]+e[1].join(``)).describe(`identifier`),de=_.sequenceMap((e,t)=>e+t.map(e=>e[0]+e[1]).join(``),ue,_.sequence(w.optionalWhitespace(),ue).many()).describe(`identifier with spaces`),fe=_.string(`\\`).then(w.any()).map(e=>e===`'`?`'`:e===`\\`?`\\`:`\\`+e);function pe(e){return _.or(fe,_.noneOf(e+`\\`)).many().map(e=>e.join(``)).trim(_.string(e))}var me=pe(`'`),he=pe(`"`),ge=_.manyNotOf(`{}[]#^|:?`).box(`file path`);function _e(e,t){return{value:e,position:t}}function ve(e){if(e!==void 0)return typeof e==`string`?{value:e}:e}var ye=function(e){return e.OBJECT=`object`,e.ARRAY=`array`,e}({}),be=class{parent;access;child;constructor(e,t,n){this.parent=e,this.access=t,this.child=n}};function xe(e,t){return e[t]}function Se(e,t,n){e[t]=n}var Ce=class{type;prop;index;constructor(e,t){if(this.type=e,this.prop=e===ye.OBJECT?t:``,this.index=e===ye.ARRAY?Number(t):0,Number.isNaN(this.index))throw Error(`can not access array with non number index`)}get(e){if(this.type===ye.OBJECT){if(typeof e!=`object`||!e)throw Error(`can not access property of non-object`);return new be(e,this,xe(e,this.prop))}else{if(typeof e!=`object`||!e||!Array.isArray(e))throw Error(`can not access property of non-array`);return new be(e,this,e[this.index])}}set(e,t){if(this.type===ye.OBJECT){if(typeof e!=`object`||!e)throw Error(`can not access property of non-object`);Se(e,this.prop,t)}else{if(typeof e!=`object`||!e||!Array.isArray(e))throw Error(`can not access property of non-array`);e[this.index]=t}}create(e){if(this.type===ye.OBJECT){if(typeof e!=`object`||!e)throw Error(`can not access property of non-object`);Se(e,this.prop,void 0)}else{if(typeof e!=`object`||!e||!Array.isArray(e))throw Error(`can not access property of non-array`);e[this.index]=void 0}}toUnvalidatedPropAccess(){return this.type===ye.OBJECT?{type:this.type,prop:{value:this.prop}}:{type:this.type,prop:{value:this.index.toString()}}}},we=ue.node((e,t)=>({type:ye.OBJECT,prop:_e(e,t)})),Te=_.or(w.digits().wrap(_.string(`[`),_.string(`]`)).node((e,t)=>({type:ye.ARRAY,prop:_e(e,t)})),he.wrap(_.string(`[`),_.string(`]`)).node((e,t)=>({type:ye.OBJECT,prop:_e(e,t)}))),Ee=_.or(_.sequenceMap(e=>({storagePath:void 0,listenToChildren:!0,storageProp:e}),Te.atLeast(1)),_.sequenceMap((e,t)=>({storagePath:void 0,listenToChildren:!0,storageProp:[e,...t]}),we,Te.many())),De=_.sequenceMap((e,t)=>[e,...t],we,Te.many()),Oe=_.sequenceMap((e,t)=>(e.storageProp=e.storageProp.concat(t.flat()),e),Ee,_.string(`.`).then(De).many()),ke=_.sequenceMap((e,t,n)=>(n.storageType=e,n.storagePath=t,n),ue.describe(`storage type`).node(_e).skip(_.string(`^`).describe(`storage type separator "^"`)).optional(),ge.describe(`storage path`).node(_e).skip(_.string(`#`).describe(`storage/file path separator "#"`)).optional(),Oe.describe(`property path`)).box(`bind target`),Ae=_.regexp(/^[^()',]+/).describe(`any character except parentheses, single quotation marks and commas`),je=_.or(me,Ae).node(_e),Me=_.separateBy(je,_.string(`,`).describe(`argument value separator ","`).trim(w.optionalWhitespace())),Ne=_.sequenceMap((e,t)=>({name:e,value:t}),ue.node(_e),Me.trim(w.optionalWhitespace()).wrap(_.string(`(`).describe(`argument value paren "("`),_.string(`)`).describe(`argument value paren ")"`)).optional([])),Pe=_.separateBy(Ne,_.string(`,`).describe(`argument separator ","`).trim(w.optionalWhitespace())),Fe=_.string(`\\`).then(w.any()).map(e=>e===`[`?`[`:e===`]`?`]`:e===`{`?`{`:e===`}`?`}`:e===`\\`?`\\`:`\\`+e),Ie=_.sequenceMap((e,t)=>e+t.flat().join(``),_.manyNotOf(`{}[]\\`),_.sequence(Fe,_.manyNotOf(`{}[]\\`)).many()).box(`View Field Content`),Le=_.sequenceMap((e,t)=>[e,...t.flat()],Ie,_.sequence(ke.wrapString(`{`,`}`),Ie).many()),Re=_.sequenceMap((e,t,n)=>({viewFieldType:e,writeToBindTarget:n===void 0?void 0:n[1],arguments:t,templateDeclaration:void 0}),ue.node(_e).trim(w.optionalWhitespace()).optional().describe(`input field type`),Pe.trim(w.optionalWhitespace()).wrapString(`(`,`)`).trim(w.optionalWhitespace()).optional([]),_.sequence(_.string(`:`).trim(w.optionalWhitespace()),ke).trim(w.optionalWhitespace()).optional()),ze=_.sequenceMap((e,t,n,r)=>r===void 0?{viewFieldType:void 0,writeToBindTarget:void 0,arguments:[],templateDeclaration:t}:(r.templateDeclaration=t,r),_.string(`VIEW`),Le.wrapString(`[`,`]`),w.optionalWhitespace(),Re.wrapString(`[`,`]`).optional(),w.eof()),Be=_.sequenceMap((e,t,n,r)=>(t!==void 0&&(e.listenToChildren=!0),{bindTarget:e,name:r}),ke.wrapString(`{`,`}`),_.string(` and children`).optional(),_.string(` as `),ue),Ve=_.sequenceMap((e,t,n,r)=>({bindTargetMappings:e,writeToBindTarget:t,hidden:n!==void 0,code:r}),Be.separateBy(w.whitespace()).skip(w.whitespace()),_.string(`save to `).then(ke.wrapString(`{`,`}`)).skip(w.whitespace()).optional(),_.string(`hidden`).skip(w.whitespace()).optional(),_.string(`---`).then(w.remaining())),He=class{range;tokenClass;constructor(e,t){this.range=e,this.tokenClass=t}},Ue=function(e){return e.IDENT=`ident`,e.CONTROL=`control`,e.STRING=`string`,e.KEYWORD=`keyword`,e.ERROR=`error`,e}({}),We=class e{static sequence(...e){return _.sequenceMap((...e)=>e.flat(2).filter(e=>e!==void 0),...e)}static separateBy(t,n){return e.sequence(t,e.sequence(n,t).many()).optional([])}static highlight(e,t){return e.node((e,n)=>[new He(n,t)])}static highlightStr(t,n){return e.highlight(_.string(t),n)}},Ge=We.highlight(ue,Ue.IDENT),Ke=We.highlight(ue,Ue.KEYWORD),qe=We.highlightStr(`,`,Ue.CONTROL),Je=We.highlightStr(`(`,Ue.CONTROL),Ye=We.highlightStr(`)`,Ue.CONTROL),Xe=We.highlightStr(`[`,Ue.CONTROL),Ze=We.highlightStr(`]`,Ue.CONTROL),Qe=We.highlight(me,Ue.STRING),$e=We.highlight(Ae,Ue.IDENT),et=_.or($e,Qe),tt=We.separateBy(et,qe.trim(w.optionalWhitespace())),nt=We.sequence(Ke,We.sequence(Je,tt.trim(w.optionalWhitespace()),Ye).optional()),rt=We.separateBy(nt,qe.trim(w.optionalWhitespace())),it=We.sequence(We.sequence(Ge,We.highlightStr(`^`,Ue.CONTROL)).optional(),We.sequence(We.highlight(ge,Ue.IDENT),We.highlightStr(`#`,Ue.CONTROL)).optional(),We.highlight(Oe,Ue.IDENT)),at=We.sequence(Ke.trim(w.optionalWhitespace()),We.sequence(Je,rt.trim(w.optionalWhitespace()),Ye).trim(w.optionalWhitespace()).optional(),We.sequence(We.highlightStr(`:`,Ue.CONTROL).trim(w.optionalWhitespace()),it).trim(w.optionalWhitespace()).optional()),ot=We.sequence(Ke.trim(w.optionalWhitespace()).optional(),We.sequence(Je,rt.trim(w.optionalWhitespace()),Ye).trim(w.optionalWhitespace()).optional(),We.sequence(We.highlightStr(`:`,Ue.CONTROL).trim(w.optionalWhitespace()),it).trim(w.optionalWhitespace()).optional()),st=_.or(We.sequence(We.highlightStr(`INPUT`,Ue.CONTROL),Xe,Ge.trim(w.optionalWhitespace()),Ze.skip(w.optionalWhitespace()),Xe,ot,Ze),We.sequence(We.highlightStr(`INPUT`,Ue.CONTROL),Xe,at,Ze)),ct=We.highlight(Ie,Ue.IDENT),lt=We.sequence(We.highlightStr(`{`,Ue.STRING),it,We.highlightStr(`}`,Ue.STRING)),ut=We.sequence(ct,We.sequence(lt,ct).many()),dt=We.sequence(Ke.trim(w.optionalWhitespace()).optional(),We.sequence(Je,rt.trim(w.optionalWhitespace()).optional(),Ye).trim(w.optionalWhitespace()).optional(),We.sequence(We.highlightStr(`:`,Ue.CONTROL).trim(w.optionalWhitespace()),it).trim(w.optionalWhitespace()).optional()),ft=We.sequence(We.highlightStr(`VIEW`,Ue.CONTROL),Xe,ut,Ze,We.sequence(Xe.skip(w.optionalWhitespace()),dt,Ze).optional()),pt=We.sequence(We.highlightStr(`BUTTON`,Ue.CONTROL),Xe,We.separateBy(Ge,qe.trim(w.optionalWhitespace())),Ze),mt=class{str;highlights;parsingError;constructor(e,t,n){this.str=e,this.highlights=t.filter(e=>e.range.from!==e.range.to),this.parsingError=n}getHighlights(){if(this.parsingError===void 0)return this.highlights;let e=this.parsingError.parseFailure.furthest;return[new He({from:e,to:e+1},Ue.ERROR)]}};function ht(e,t,n){return Math.min(Math.max(e,t),n)}function gt(e,t,n){return e===void 0?void 0:Math.min(Math.max(e,t),n)}function _t(e,t,n,r,i){return(e-t)/(n-t)*(i-r)+r}function vt(e,t){return(e%t+t)%t}function yt(e,t){if(e===null&&t===null)return!0;if(e===null||t===null||typeof e!=typeof t)return!1;if(typeof e==`object`&&typeof t==`object`){if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let n=0;ne===void 0?t:-t,_.string(`-`).optional(),_.or(_.sequenceMap((e,t,n)=>Number(e+t+n),w.digits(),_.string(`.`),w.digits()),w.digits().map(e=>Number(e)))).thenEof(),qt=_.sequenceMap((e,t)=>e===void 0?t:-t,_.string(`-`).optional(),w.digits().map(e=>Number(e))).thenEof(),Jt=_.or(_.sequenceMap((e,t,n)=>new Gt(e,Ut(t),n),ue,_.or(_.string(`+`),_.string(`-`)).trim(w.optionalWhitespace()),qt),ue.map(e=>new Gt(e,void 0,void 0)),qt.map(e=>new Gt(void 0,void 0,e))),Yt=class extends Lt{constructor(e){super(Pt.INSERT_INTO_NOTE,e)}async run(e,t,n,r,i){let a=t.templater?await this.mb.internal.evaluateTemplaterTemplate(this.mb.file.resolveFilePathLike(t.value),n):t.value,o=se(Jt,t.line.toString());await this.mb.file.atomicModify(n,e=>{let t=e.split(` +`),n=this.mb.file.createLineNumberContext(e,r.position),i=o.evaluate(n);if(i<1||i>t.length)throw Error(`Line number out of bounds`);return t=[...t.slice(0,i-1),a,...t.slice(i-1)],t.join(` +`)})}create(){return{type:Pt.INSERT_INTO_NOTE,line:0,value:`Some text`,templater:!1}}getActionLabel(){return`Insert text into the note`}},Xt=class extends Lt{constructor(e){super(Pt.JS,e)}async run(e,t,n,r,i){if(!this.mb.getSettings().enableJs)throw new ne({errorLevel:P.CRITICAL,effect:`Can't run button action that requires JS evaluation.`,cause:`JS evaluation is disabled in the plugin settings.`});let a={buttonConfig:structuredClone(e),args:structuredClone(t.args),buttonContext:structuredClone(r),click:structuredClone(i)};(await this.mb.internal.jsEngineRunFile(t.file,n,a))()}create(){return{type:Pt.JS,file:``,args:{}}}getActionLabel(){return`Run a JavaScript file`}},Zt=_.sequence(ge,_.or(_.string(`#`).then(_.manyNotOf(`[]#|:`)),_.string(`#`).result(void 0),_.succeed(void 0)),_.string(`|`).then(_.manyNotOf(`[]`)).optional()),Qt=_.or(_.sequenceMap((e,t)=>new en(e!==void 0,t[0],t[1],t[2],!0),_.string(`!`).optional(),Zt.wrapString(`[[`,`]]`)),_.sequenceMap((e,t,n)=>{let r=!Ct(n);return new en(e!==void 0,n,void 0,t,r)},_.string(`!`).optional(),_.manyNotOf(`[]`).wrapString(`[`,`]`),_.manyNotOf(`()`).wrapString(`(`,`)`))),$t=_.separateBy(Qt,_.string(`,`).trim(w.optionalWhitespace())),en=class e{isEmbed;target;block;alias;internal;constructor(e,t,n,r,i){this.isEmbed=e,this.target=t,this.block=n,this.alias=r,this.internal=i??!0}static fromUrl(t){return new e(!1,t.href,void 0,t.hostname,!1)}fullTarget(){return this.block?`${this.target}#${this.block}`:this.target}open(e,t,n){this.internal?e.file.open(this.fullTarget(),t,n):wt(this.target)}toString(){let e=this.isEmbed?`!`:``;if(this.internal){let t=this.alias?`|${this.alias}`:``;return`${e}[[${this.fullTarget()}${t}]]`}else return`${e}[${this.alias??this.fullTarget()}](${this.fullTarget()})`}},tn=class e{static parseLink(e){return se(Qt.thenEof(),e)}static parseLinkList(e){return se($t.thenEof(),e)}static isLink(e){return Qt.thenEof().tryParse(e).success}static urlToLink(e){return en.fromUrl(e)}static parseLinkOrUrl(t){return Ct(t)?e.urlToLink(new URL(t)):e.parseLink(t)}static interpretAsLink(e){let t=Qt.thenEof().tryParse(e);if(t.success)return t.value;let n=Zt.thenEof().tryParse(e);if(n.success)return new en(!1,n.value[0],n.value[1],n.value[2],!0);if(Ct(e)){let t=new URL(e);return en.fromUrl(t)}}},nn=class extends Lt{constructor(e){super(Pt.OPEN,e)}async run(e,t,n,r,i){let a=i.openInNewTab()||(t.newTab??!1),o=tn.interpretAsLink(t.link);if(!o)throw Error(`Invalid link`);o.open(this.mb,n,a)}create(){return{type:Pt.OPEN,link:``,newTab:!0}}getActionLabel(){return`Open a link`}},rn=class extends Lt{constructor(e){super(Pt.REGEXP_REPLACE_IN_NOTE,e)}async run(e,t,n,r,i){if(t.regexp===``)throw Error(`Regexp cannot be empty`);await this.mb.file.atomicModify(n,e=>e.replace(new RegExp(t.regexp,t.regexpFlags??`g`),t.replacement))}create(){return{type:Pt.REGEXP_REPLACE_IN_NOTE,regexp:`([A-Z])\\w+`,replacement:`Replacement text`,regexpFlags:`g`}}getActionLabel(){return`Replace text in note using regexp`}},an=class extends Lt{constructor(e){super(Pt.REPLACE_IN_NOTE,e)}async run(e,t,n,r,i){let a=t.templater?await this.mb.internal.evaluateTemplaterTemplate(this.mb.file.resolveFilePathLike(t.replacement),n):t.replacement,o=se(Jt,t.fromLine.toString()),s=se(Jt,t.toLine.toString());await this.mb.file.atomicModify(n,e=>{let t=e.split(` +`),n=this.mb.file.createLineNumberContext(e,r.position),i=o.evaluate(n),c=s.evaluate(n);if(i>c)throw Error(`From line (${i}) can't be greater than to line (${c})`);if(i<1)throw Error(`From line (${i}) can't smaller than 1.`);if(c>t.length)throw Error(`To line (${c}) can't greater than the file length ${t.length}.`);return t=[...t.slice(0,i-1),a,...t.slice(c)],t.join(` +`)})}create(){return{type:Pt.REPLACE_IN_NOTE,fromLine:0,toLine:0,replacement:`Replacement text`,templater:!1}}getActionLabel(){return`Replace text in note`}},on=class extends Lt{constructor(e){super(Pt.REPLACE_SELF,e)}async run(e,t,n,r,i){if(r.isInline)throw Error(`Replace self action not supported for inline buttons`);if(r.position===void 0)throw Error(`Position of the button in the note is unknown`);if(r.position.lineStart>r.position.lineEnd)throw Error(`Position of the button in the note is invalid`);let a=r.position,o=t.templater?await this.mb.internal.evaluateTemplaterTemplate(this.mb.file.resolveFilePathLike(t.replacement),n):t.replacement;await this.mb.file.atomicModify(n,e=>{let t=e.split(` +`);if(a.lineStart<0||a.lineEnd>t.length)throw Error(`Position of the button in the note is out of bounds`);return t=[...t.slice(0,a.lineStart),o,...t.slice(a.lineEnd+1)],t.join(` +`)})}create(){return{type:Pt.REPLACE_SELF,replacement:`Replacement text`,templater:!1}}getActionLabel(){return`Replace button with text`}},sn=class extends Lt{constructor(e){super(Pt.RUN_TEMPLATER_FILE,e)}async run(e,t,n,r,i){let a=this.mb.file.resolveFilePathLike(t.templateFile);await this.mb.internal.evaluateTemplaterTemplate(a,n)}create(){return{type:Pt.RUN_TEMPLATER_FILE,templateFile:``}}getActionLabel(){return`Run a templater file`}},cn=class extends Lt{constructor(e){super(Pt.SLEEP,e)}async run(e,t,n,r,i){await new Promise(e=>setTimeout(e,t.ms))}create(){return{type:Pt.SLEEP,ms:0}}getActionLabel(){return`Sleep for some time`}},ln=class extends Lt{constructor(e){super(Pt.TEMPLATER_CREATE_NOTE,e)}async run(e,t,n,r,i){if(t.openIfAlreadyExists&&t.fileName){let e=At(Ot(t.folderPath??``,t.fileName),`md`);if(await this.mb.file.exists(e)){await this.mb.file.open(e,``,!1);return}}await this.mb.internal.createNoteWithTemplater(t.templateFile,t.folderPath,t.fileName,t.openNote,i.openInNewTab())}create(){return{type:Pt.TEMPLATER_CREATE_NOTE,templateFile:``,folderPath:`/`,fileName:``,openNote:!0,openIfAlreadyExists:!1}}getActionLabel(){return`Create a new note using Templater`}};function un(e){if(e.toLowerCase()===`null`)return null;if(e===`true`)return!0;if(e===`false`)return!1;{let t=Kt.tryParse(e);return t.success?t.value:e}}function dn(e){return e==null?``:typeof e==`string`?e:typeof e==`boolean`?e?`true`:`false`:e.toString()}function fn(e){return e===null||typeof e==`string`||typeof e==`boolean`||typeof e==`number`}function pn(e){if(e!=null){if(fn(e))return[e];if(typeof e==`object`&&Array.isArray(e))return e.filter(e=>fn(e))}}function mn(e){if(typeof e==`number`)return e;if(typeof e==`string`){let t=Kt.tryParse(e);if(t.success)return t.value}}function hn(e){return fn(e)?dn(e):void 0}function gn(e){return fn(e)?e:void 0}function _n(e,t){return Array.isArray(e)?e.map(e=>vn(e,t)).filter(e=>e!==``).join(`, `):vn(e,t)}function vn(e,t){return e==null?t?``:`null`:typeof e==`function`?``:typeof e==`object`||Array.isArray(e)?JSON.stringify(e):e.toString()}function yn(e,t){return Array.isArray(e)?e.map(e=>bn(e,t)).filter(e=>e!==``):bn(e,t)}function bn(e,t){return typeof e==`string`?tn.isLink(e)?tn.parseLink(e):Ct(e)?tn.urlToLink(new URL(e)):e:vn(e,t)}var xn=class extends Lt{constructor(e){super(Pt.UPDATE_METADATA,e)}async run(e,t,n,r,i){let a=this.mb.bindTargetParser.fromStringAndValidate(t.bindTarget,n);if(t.evaluate){if(!this.mb.getSettings().enableJs)throw new ne({errorLevel:P.CRITICAL,effect:`Can't run button action that requires JS evaluation.`,cause:`JS evaluation is disabled in the plugin settings.`});let e=Function(`x`,`getMetadata`,`return ${t.value};`);this.mb.api.updateMetadata(a,t=>e(t,e=>this.mb.api.getMetadata(this.mb.api.parseBindTarget(e,n))))}else this.mb.api.setMetadata(a,un(t.value))}create(){return{type:Pt.UPDATE_METADATA,bindTarget:``,evaluate:!1,value:``}}getActionLabel(){return`Update metadata`}},Sn=class{mb;actionContexts;constructor(e){this.mb=e,this.actionContexts={[Pt.COMMAND]:new Rt(e),[Pt.OPEN]:new nn(e),[Pt.JS]:new Xt(e),[Pt.INPUT]:new Vt(e),[Pt.SLEEP]:new cn(e),[Pt.TEMPLATER_CREATE_NOTE]:new ln(e),[Pt.UPDATE_METADATA]:new xn(e),[Pt.CREATE_NOTE]:new zt(e),[Pt.REPLACE_IN_NOTE]:new an(e),[Pt.REPLACE_SELF]:new on(e),[Pt.REGEXP_REPLACE_IN_NOTE]:new rn(e),[Pt.INSERT_INTO_NOTE]:new Yt(e),[Pt.INLINE_JS]:new Bt(e),[Pt.RUN_TEMPLATER_FILE]:new sn(e)}}createDefaultButtonConfig(){return{label:`This is a button`,icon:``,style:Nt.DEFAULT,class:``,cssStyle:``,backgroundImage:``,tooltip:``,id:``,hidden:!1,actions:[]}}async runButtonActions(e,t,n,r){try{if(e.action)await this.runAction(e,e.action,t,n,r);else if(e.actions)for(let i of e.actions)await this.runAction(e,i,t,n,r);else console.warn(`meta-bind | ButtonMDRC >> no action defined`)}catch(e){console.warn(`meta-bind | ButtonMDRC >> error while running action`,e),this.mb.internal.showNotice(`meta-bind | Error while running button action. Check the console for details.`)}}createDefaultAction(e){return this.actionContexts[e].create()}async runAction(e,t,n,r,i){let a=t.type;await this.actionContexts[a].run(e,t,n,r,i)}getActionLabel(e){return this.actionContexts[e].getActionLabel()}},Cn=class{errors;otherError;subject;constructor(e){this.subject=e,this.errors=[]}add(e){e instanceof Error?(e instanceof I?this.errors.push(e):this.otherError=e,console.warn(e)):(console.trace(``),console.warn(`[MB_ERROR_CONTAINER] received invalid error type`,e))}merge(e){return this.errors=this.errors.concat(e.errors),e.otherError&&(this.otherError=e.otherError),this}hasErrors(){if(this.otherError)return!0;for(let e of this.errors)if(e.errorLevel===P.ERROR||e.errorLevel===P.CRITICAL)return!0;return!1}hasCriticalErrors(){if(this.otherError)return!0;for(let e of this.errors)if(e.errorLevel===P.CRITICAL)return!0;return!1}hasWarnings(){for(let e of this.errors)if(e.errorLevel===P.WARNING)return!0;return!1}isEmpty(){return this.errors.length===0&&!this.otherError}getErrors(){let e=this.errors.filter(e=>e.errorLevel===P.ERROR||e.errorLevel===P.CRITICAL);return this.otherError?e.concat([this.otherError]):e}getWarnings(){return this.errors.filter(e=>e.errorLevel===P.WARNING)}},wn=class{value;count;constructor(e){this.value=e,this.count=1}getValue(){return this.value}increment(){return this.count+=1,this.count}decrement(){return--this.count,this.count}getCount(){return this.count}isEmpty(){return this.count===0}},Tn=class{mb;buttons;buttonLoadListeners;buttonTemplates;constructor(e){this.mb=e,this.buttons=new Map,this.buttonLoadListeners=new Map,this.buttonTemplates=new Map}setButtonTemplates(e){let t=new Set,n=new Cn(`ButtonManager`);this.buttonTemplates.clear();for(let r of e)r.id===void 0||r.id===``?n.add(new ae({errorLevel:P.ERROR,cause:`Button with label "${r.label}" has no id, but button templates must have an id.`,effect:`Button templates could not be saved.`})):t.has(r.id)?n.add(new ae({errorLevel:P.ERROR,cause:`Button id "${r.id}" is not unique. The same id is used by multiple buttons.`,effect:`Button templates could not be saved.`})):(t.add(r.id),this.buttonTemplates.set(r.id,r));return n.hasErrors()&&this.buttonTemplates.clear(),n}registerButtonLoadListener(e,t,n){let r=this.getButton(e,t);r&&n(r),this.buttonLoadListeners.has(e)||this.buttonLoadListeners.set(e,new Map);let i=this.buttonLoadListeners.get(e);i.has(t)||i.set(t,new Map);let a=i.get(t),o=St();return a.set(o,n),()=>this.removeButtonLoadListener(e,t,o)}notifyButtonLoadListeners(e,t){let n=this.getButton(e,t);if(!n)throw Error(`ButtonManager | button with id ${t} does not exist`);let r=this.buttonLoadListeners.get(e);if(!r)return;let i=r.get(t);if(i)for(let[e,t]of i)t(n)}removeButtonLoadListener(e,t,n){let r=this.buttonLoadListeners.get(e);if(!r)return;let i=r.get(t);i&&(i.delete(n),i.size===0&&r.delete(t),r.size===0&&this.buttonLoadListeners.delete(e))}addButton(e,t){if(t.id===void 0||t.id===``)throw Error(`ButtonManager | button id is undefined`);if(this.buttonTemplates.has(t.id))throw Error(`ButtonManager | button with id "${t.id}" already exists in the button templates`);this.buttons.has(e)||this.buttons.set(e,new Map),this.buttons.get(e).set(t.id,new wn(t)),this.notifyButtonLoadListeners(e,t.id)}getButton(e,t){if(this.buttonTemplates.has(t))return this.buttonTemplates.get(t);let n=this.buttons.get(e);if(n)return n.get(t)?.getValue()}removeButton(e,t){let n=this.buttons.get(e);n&&(n.get(t)?.decrement(),n.get(t)?.isEmpty()&&n.delete(t),n.size===0&&this.buttons.delete(e))}},B=function(e){return e.TOGGLE=`toggle`,e.SLIDER=`slider`,e.TEXT=`text`,e.TEXT_AREA=`textArea`,e.SELECT=`select`,e.MULTI_SELECT=`multiSelect`,e.DATE=`date`,e.TIME=`time`,e.DATE_PICKER=`datePicker`,e.NUMBER=`number`,e.SUGGESTER=`suggester`,e.EDITOR=`editor`,e.IMAGE_SUGGESTER=`imageSuggester`,e.PROGRESS_BAR=`progressBar`,e.INLINE_SELECT=`inlineSelect`,e.LIST=`list`,e.LIST_SUGGESTER=`listSuggester`,e.INLINE_LIST_SUGGESTER=`inlineListSuggester`,e.INLINE_LIST=`inlineList`,e.IMAGE_LIST_SUGGESTER=`imageListSuggester`,e.DATE_TIME=`dateTime`,e.INVALID=`invalid`,e}({}),V=function(e){return e.CLASS=`class`,e.ADD_LABELS=`addLabels`,e.MIN_VALUE=`minValue`,e.MAX_VALUE=`maxValue`,e.STEP_SIZE=`stepSize`,e.OPTION=`option`,e.TITLE=`title`,e.OPTION_QUERY=`optionQuery`,e.SHOWCASE=`showcase`,e.ON_VALUE=`onValue`,e.OFF_VALUE=`offValue`,e.DEFAULT_VALUE=`defaultValue`,e.PLACEHOLDER=`placeholder`,e.USE_LINKS=`useLinks`,e.LIMIT=`limit`,e.MULTI_LINE=`multiLine`,e.ALLOW_OTHER=`allowOther`,e.INVALID=`invalid`,e}({}),En={[B.TOGGLE]:{type:B.TOGGLE,allowInBlock:!0,allowInline:!0},[B.SLIDER]:{type:B.SLIDER,allowInBlock:!0,allowInline:!0},[B.TEXT]:{type:B.TEXT,allowInBlock:!0,allowInline:!0},[B.TEXT_AREA]:{type:B.TEXT_AREA,allowInBlock:!0,allowInline:!0},[B.SELECT]:{type:B.SELECT,allowInBlock:!0,allowInline:!1},[B.MULTI_SELECT]:{type:B.MULTI_SELECT,allowInBlock:!0,allowInline:!1},[B.DATE]:{type:B.DATE,allowInBlock:!0,allowInline:!0},[B.TIME]:{type:B.TIME,allowInBlock:!0,allowInline:!0},[B.DATE_PICKER]:{type:B.DATE_PICKER,allowInBlock:!0,allowInline:!0},[B.NUMBER]:{type:B.NUMBER,allowInBlock:!0,allowInline:!0},[B.SUGGESTER]:{type:B.SUGGESTER,allowInBlock:!0,allowInline:!0},[B.EDITOR]:{type:B.EDITOR,allowInBlock:!0,allowInline:!1},[B.IMAGE_SUGGESTER]:{type:B.IMAGE_SUGGESTER,allowInBlock:!0,allowInline:!0},[B.PROGRESS_BAR]:{type:B.PROGRESS_BAR,allowInBlock:!0,allowInline:!1},[B.INLINE_SELECT]:{type:B.INLINE_SELECT,allowInBlock:!0,allowInline:!0},[B.LIST]:{type:B.LIST,allowInBlock:!0,allowInline:!1},[B.LIST_SUGGESTER]:{type:B.LIST_SUGGESTER,allowInBlock:!0,allowInline:!1},[B.INLINE_LIST_SUGGESTER]:{type:B.INLINE_LIST_SUGGESTER,allowInBlock:!0,allowInline:!0},[B.INLINE_LIST]:{type:B.INLINE_LIST,allowInBlock:!0,allowInline:!0},[B.IMAGE_LIST_SUGGESTER]:{type:B.IMAGE_LIST_SUGGESTER,allowInBlock:!0,allowInline:!1},[B.DATE_TIME]:{type:B.DATE_TIME,allowInBlock:!0,allowInline:!0},[B.INVALID]:{type:B.INVALID,allowInBlock:!1,allowInline:!1}},Dn=function(e){return e.TRUE=`true`,e.PARTIAL=`partial`,e.FALSE=`false`,e}({}),On={[V.ADD_LABELS]:{type:V.ADD_LABELS,allowedFieldTypes:[B.SLIDER,B.PROGRESS_BAR],values:[[],[{name:`value`,allowed:[`true`,`false`],description:``}]],allowMultiple:!1},[V.CLASS]:{type:V.CLASS,allowedFieldTypes:[],values:[[{name:`className`,allowed:[],description:`the name of the css class to add`}]],allowMultiple:!0},[V.DEFAULT_VALUE]:{type:V.DEFAULT_VALUE,allowedFieldTypes:[],values:[[{name:`value`,allowed:[],description:``}]],allowMultiple:!1},[V.MAX_VALUE]:{type:V.MAX_VALUE,allowedFieldTypes:[B.SLIDER,B.PROGRESS_BAR],values:[[{name:`value`,allowed:[`number`],description:`the maximally allowed value`}]],allowMultiple:!1},[V.MIN_VALUE]:{type:V.MIN_VALUE,allowedFieldTypes:[B.SLIDER,B.PROGRESS_BAR],values:[[{name:`value`,allowed:[`number`],description:`the minimally allowed value`}]],allowMultiple:!1},[V.STEP_SIZE]:{type:V.STEP_SIZE,allowedFieldTypes:[B.SLIDER,B.PROGRESS_BAR],values:[[{name:`value`,allowed:[`number`],description:`the step size for sliders`}]],allowMultiple:!1},[V.OFF_VALUE]:{type:V.OFF_VALUE,allowedFieldTypes:[B.TOGGLE],values:[[{name:`value`,allowed:[],description:`the value for the off state`}]],allowMultiple:!1},[V.ON_VALUE]:{type:V.ON_VALUE,allowedFieldTypes:[B.TOGGLE],values:[[{name:`value`,allowed:[],description:`the value for the off state`}]],allowMultiple:!1},[V.OPTION]:{type:V.OPTION,allowedFieldTypes:[B.SELECT,B.MULTI_SELECT,B.SUGGESTER,B.IMAGE_SUGGESTER,B.INLINE_SELECT,B.LIST_SUGGESTER,B.INLINE_LIST_SUGGESTER,B.IMAGE_LIST_SUGGESTER],values:[[{name:`value`,allowed:[],description:`the value and display name of the option`}],[{name:`value`,allowed:[],description:`the value of the option`},{name:`name`,allowed:[],description:`the display name of the option`}]],allowMultiple:!0},[V.OPTION_QUERY]:{type:V.OPTION_QUERY,allowedFieldTypes:[B.SUGGESTER,B.IMAGE_SUGGESTER,B.LIST_SUGGESTER,B.INLINE_LIST_SUGGESTER,B.IMAGE_LIST_SUGGESTER],values:[[{name:`value`,allowed:[],description:`the query for options`}]],allowMultiple:!0},[V.PLACEHOLDER]:{type:V.PLACEHOLDER,allowedFieldTypes:[B.TEXT,B.TEXT_AREA,B.NUMBER,B.LIST,B.INLINE_LIST],values:[[{name:`value`,allowed:[],description:``}]],allowMultiple:!1},[V.SHOWCASE]:{type:V.SHOWCASE,allowedFieldTypes:[],values:[[],[{name:`value`,allowed:[`true`,`false`],description:``}]],allowMultiple:!1},[V.TITLE]:{type:V.TITLE,allowedFieldTypes:[],values:[[{name:`value`,allowed:[],description:``}]],allowMultiple:!1},[V.USE_LINKS]:{type:V.USE_LINKS,allowedFieldTypes:[B.SUGGESTER,B.LIST_SUGGESTER,B.INLINE_LIST_SUGGESTER],values:[[],[{name:`value`,allowed:[Dn.TRUE,Dn.PARTIAL,Dn.FALSE],description:``}]],allowMultiple:!1},[V.LIMIT]:{type:V.LIMIT,allowedFieldTypes:[B.TEXT,B.TEXT_AREA,B.LIST,B.INLINE_LIST],values:[[{name:`value`,allowed:[`number`],description:`a character limit for text fields`}]],allowMultiple:!1},[V.MULTI_LINE]:{type:V.MULTI_LINE,allowedFieldTypes:[B.LIST],values:[[],[{name:`value`,allowed:[`true`,`false`],description:``}]],allowMultiple:!1},[V.ALLOW_OTHER]:{type:V.ALLOW_OTHER,allowedFieldTypes:[B.SUGGESTER,B.LIST_SUGGESTER,B.INLINE_LIST_SUGGESTER],values:[[],[{name:`value`,allowed:[`true`,`false`],description:``}]],allowMultiple:!1},[V.INVALID]:{type:V.INVALID,allowedFieldTypes:[],values:[[]],allowMultiple:!0}},kn=function(e){return e.MATH=`math`,e.TEXT=`text`,e.LINK=`link`,e.IMAGE=`image`,e.INVALID=`invalid`,e}({}),An=function(e){return e.RENDER_MARKDOWN=`renderMarkdown`,e.HIDDEN=`hidden`,e.CLASS=`class`,e.INVALID=`invalid`,e}({}),jn={[An.RENDER_MARKDOWN]:{type:An.RENDER_MARKDOWN,allowedFieldTypes:[kn.TEXT],values:[[],[{name:`value`,allowed:[`true`,`false`],description:``}]],allowMultiple:!1},[An.HIDDEN]:{type:An.HIDDEN,allowedFieldTypes:[],values:[[],[{name:`value`,allowed:[`true`,`false`],description:``}]],allowMultiple:!1},[An.CLASS]:{type:An.CLASS,allowedFieldTypes:[],values:[[{name:`className`,allowed:[],description:`the name of the css class to add`}]],allowMultiple:!0},[An.INVALID]:{type:An.INVALID,allowedFieldTypes:[],values:[[]],allowMultiple:!0}},Mn=Array.isArray,Nn=Array.prototype.indexOf,Pn=Array.prototype.includes,Fn=Array.from,In=Object.defineProperty,Ln=Object.getOwnPropertyDescriptor,Rn=Object.getOwnPropertyDescriptors,zn=Object.prototype,Bn=Array.prototype,Vn=Object.getPrototypeOf,Hn=Object.isExtensible,Un=()=>{};function Wn(e){for(var t=0;t{e=n,t=r}),resolve:e,reject:t}}var Kn=1024,qn=2048,Jn=4096,Yn=8192,Xn=16384,Zn=32768,Qn=1<<25,$n=65536,er=1<<19,tr=1<<20,nr=1<<25,rr=65536,ir=1<<21,ar=1<<22,or=1<<23,sr=Symbol(`$state`),cr=Symbol(`legacy props`),lr=Symbol(``),ur=new class extends Error{name=`StaleReactionError`;message="The reaction that called `getAbortSignal()` was re-run or destroyed"},dr=!!globalThis.document?.contentType&&globalThis.document.contentType.includes(`xml`);function fr(e){throw Error(`https://svelte.dev/e/lifecycle_outside_component`)}function pr(){throw Error(`https://svelte.dev/e/async_derived_orphan`)}function mr(e,t,n){throw Error(`https://svelte.dev/e/each_key_duplicate`)}function hr(e){throw Error(`https://svelte.dev/e/effect_in_teardown`)}function gr(){throw Error(`https://svelte.dev/e/effect_in_unowned_derived`)}function _r(e){throw Error(`https://svelte.dev/e/effect_orphan`)}function vr(){throw Error(`https://svelte.dev/e/effect_update_depth_exceeded`)}function yr(e){throw Error(`https://svelte.dev/e/props_invalid_value`)}function br(){throw Error(`https://svelte.dev/e/state_descriptors_fixed`)}function xr(){throw Error(`https://svelte.dev/e/state_prototype_fixed`)}function Sr(){throw Error(`https://svelte.dev/e/state_unsafe_mutation`)}function Cr(){throw Error(`https://svelte.dev/e/svelte_boundary_reset_onerror`)}var wr={},Tr=Symbol(),Er=`http://www.w3.org/1999/xhtml`;function Dr(){console.warn(`https://svelte.dev/e/derived_inert`)}function Or(e){console.warn(`https://svelte.dev/e/hydration_mismatch`)}function kr(){console.warn(`https://svelte.dev/e/select_multiple_invalid_value`)}function Ar(){console.warn(`https://svelte.dev/e/svelte_boundary_reset_noop`)}var jr=!1;function Mr(e){jr=e}var Nr;function Pr(e){if(e===null)throw Or(),wr;return Nr=e}function Fr(){return Pr(_a(Nr))}function H(e){if(jr){if(_a(Nr)!==null)throw Or(),wr;Nr=e}}function Ir(e=1){if(jr){for(var t=e,n=Nr;t--;)n=_a(n);Nr=n}}function Lr(e=!0){for(var t=0,n=Nr;;){if(n.nodeType===8){var r=n.data;if(r===`]`){if(t===0)return n;--t}else (r===`[`||r===`[!`||r[0]===`[`&&!isNaN(Number(r.slice(1))))&&(t+=1)}var i=_a(n);e&&n.remove(),n=i}}function Rr(e){if(!e||e.nodeType!==8)throw Or(),wr;return e.data}function zr(e){return e===this.v}function Br(e,t){return e==e?e!==t||typeof e==`object`&&!!e||typeof e==`function`:t==t}function Vr(e){return!Br(e,this.v)}var Hr=!1,Ur=!1,Wr=[];function Gr(e,t=!1,n=!1){return Kr(e,new Map,``,Wr,null,n)}function Kr(e,t,n,r,i=null,a=!1){if(typeof e==`object`&&e){var o=t.get(e);if(o!==void 0)return o;if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);if(Mn(e)){var s=Array(e.length);t.set(e,s),i!==null&&t.set(i,s);for(var c=0;c{t===Qr&&$r()})}Qr.push(e)}function ti(){for(;Qr.length>0;)$r()}function ni(e){var t=ao;if(t===null)return no.f|=or,e;if(!(t.f&32768)&&!(t.f&4))throw e;ri(e,t)}function ri(e,t){for(;t!==null;){if(t.f&128){if(!(t.f&32768))throw e;try{t.b.error(e);return}catch(t){e=t}}t=t.parent}throw e}var ii=~(qn|Jn|Kn);function ai(e,t){e.f=e.f&ii|t}function oi(e){e.f&512||e.deps===null?ai(e,Kn):ai(e,Jn)}function si(e){if(e!==null)for(let t of e)!(t.f&2)||!(t.f&65536)||(t.f^=rr,si(t.deps))}function ci(e,t,n){e.f&2048?t.add(e):e.f&4096&&n.add(e),si(e.deps),ai(e,Kn)}var li=!1,ui=!1;function di(e){var t=ui;try{return ui=!1,[e(),ui]}finally{ui=t}}var fi=new Set,pi=null,mi=null,hi=null,gi=null,_i=!1,vi=!1,yi=null,bi=null,xi=0,Si=1,Ci=class e{id=Si++;current=new Map;previous=new Map;#e=new Set;#t=new Set;#n=new Set;#r=new Map;#i=new Map;#a=null;#o=[];#s=[];#c=new Set;#l=new Set;#u=new Map;#d=new Set;is_fork=!1;#f=!1;#p=new Set;#m(){return this.is_fork||this.#i.size>0}#h(){for(let n of this.#p)for(let r of n.#i.keys()){for(var e=!1,t=r;t.parent!==null;){if(this.#u.has(t)){e=!0;break}t=t.parent}if(!e)return!0}return!1}skip_effect(e){this.#u.has(e)||this.#u.set(e,{d:[],m:[]}),this.#d.delete(e)}unskip_effect(e,t=e=>this.schedule(e)){var n=this.#u.get(e);if(n){this.#u.delete(e);for(var r of n.d)ai(r,qn),t(r);for(r of n.m)ai(r,Jn),t(r)}this.#d.add(e)}#g(){if(xi++>1e3&&(fi.delete(this),Ti()),!this.#m()){for(let e of this.#c)this.#l.delete(e),ai(e,qn),this.schedule(e);for(let e of this.#l)ai(e,Jn),this.schedule(e)}let t=this.#o;this.#o=[],this.apply();var n=yi=[],r=[],i=bi=[];for(let e of t)try{this.#_(e,n,r)}catch(t){throw Mi(e),t}if(pi=null,i.length>0){var a=e.ensure();for(let e of i)a.schedule(e)}if(yi=null,bi=null,this.#m()||this.#h()){this.#v(r),this.#v(n);for(let[e,t]of this.#u)ji(e,t)}else{this.#r.size===0&&fi.delete(this),this.#c.clear(),this.#l.clear();for(let e of this.#e)e(this);this.#e.clear(),mi=this,Di(r),Di(n),mi=null,this.#a?.resolve()}var o=pi;if(this.#o.length>0){let e=o??=this;e.#o.push(...this.#o.filter(t=>!e.#o.includes(t)))}o!==null&&(fi.add(o),o.#g()),Hr&&!fi.has(this)&&this.#y()}#_(e,t,n){e.f^=Kn;for(var r=e.first;r!==null;){var i=r.f,a=(i&96)!=0;if(!(a&&i&1024||i&8192||this.#u.has(r))&&r.fn!==null){a?r.f^=Kn:i&4?t.push(r):Hr&&i&16777224?n.push(r):yo(r)&&(i&16&&this.#l.add(r),wo(r));var o=r.first;if(o!==null){r=o;continue}}for(;r!==null;){var s=r.next;if(s!==null){r=s;break}r=r.parent}}}#v(e){for(var t=0;t!this.current.has(e));if(r.length===0)e&&l.discard();else if(t.length>0){if(e)for(let e of this.#d)l.unskip_effect(e,e=>{e.f&4194320?l.schedule(e):l.#v([e])});l.activate();var i=new Set,a=new Map;for(var o of t)Oi(o,r,i,a);a=new Map;var s=[...l.current.keys()].filter(e=>this.current.has(e)?this.current.get(e)[0]!==e:!0);for(let e of this.#s)!(e.f&155648)&&ki(e,s,a)&&(e.f&4194320?(ai(e,qn),l.schedule(e)):l.#c.add(e));if(l.#o.length>0){l.apply();for(var c of l.#o)l.#_(c,[],[]);l.#o=[]}l.deactivate()}}for(let e of fi)e.#p.has(this)&&(e.#p.delete(this),e.#p.size===0&&!e.#m()&&(e.activate(),e.#g()))}increment(e,t){let n=this.#r.get(t)??0;if(this.#r.set(t,n+1),e){let e=this.#i.get(t)??0;this.#i.set(t,e+1)}}decrement(e,t,n){let r=this.#r.get(t)??0;if(r===1?this.#r.delete(t):this.#r.set(t,r-1),e){let e=this.#i.get(t)??0;e===1?this.#i.delete(t):this.#i.set(t,e-1)}this.#f||n||(this.#f=!0,ei(()=>{this.#f=!1,this.flush()}))}transfer_effects(e,t){for(let t of e)this.#c.add(t);for(let e of t)this.#l.add(e);e.clear(),t.clear()}oncommit(e){this.#e.add(e)}ondiscard(e){this.#t.add(e)}on_fork_commit(e){this.#n.add(e)}run_fork_commit_callbacks(){for(let e of this.#n)e(this);this.#n.clear()}settled(){return(this.#a??=Gn()).promise}static ensure(){if(pi===null){let t=pi=new e;vi||(fi.add(pi),_i||ei(()=>{pi===t&&t.flush()}))}return pi}apply(){if(!Hr||!this.is_fork&&fi.size===1){hi=null;return}hi=new Map;for(let[e,[t]]of this.current)hi.set(e,t);for(let n of fi)if(!(n===this||n.is_fork)){var e=!1,t=!1;if(n.id0)){Zi.clear();for(let e of Ei){if(e.f&24576)continue;let t=[e],n=e.parent;for(;n!==null;)Ei.has(n)&&(Ei.delete(n),t.push(n)),n=n.parent;for(let e=t.length-1;e>=0;e--){let n=t[e];n.f&24576||wo(n)}}Ei.clear()}}Ei=null}}function Oi(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(let i of e.reactions){let e=i.f;e&2?Oi(i,t,n,r):e&4194320&&!(e&2048)&&ki(i,t,r)&&(ai(i,qn),Ai(i))}}function ki(e,t,n){let r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(let r of e.deps){if(Pn.call(t,r))return!0;if(r.f&2&&ki(r,t,n))return n.set(r,!0),!0}return n.set(e,!1),!1}function Ai(e){pi.schedule(e)}function ji(e,t){if(!(e.f&32&&e.f&1024)){e.f&2048?t.d.push(e):e.f&4096&&t.m.push(e),ai(e,Kn);for(var n=e.first;n!==null;)ji(n,t),n=n.next}}function Mi(e){ai(e,Kn);for(var t=e.first;t!==null;)Mi(t),t=t.next}function Ni(e){let t=0,n=$i(0),r;return()=>{Aa()&&(K(n),La(()=>(t===0&&(r=Oo(()=>e(()=>aa(n)))),t+=1,()=>{ei(()=>{--t,t===0&&(r?.(),r=void 0,aa(n))})})))}}var Pi=$n|er;function Fi(e,t,n,r){new Ii(e,t,n,r)}var Ii=class{parent;is_pending=!1;transform_error;#e;#t=jr?Nr:null;#n;#r;#i;#a=null;#o=null;#s=null;#c=null;#l=0;#u=0;#d=!1;#f=new Set;#p=new Set;#m=null;#h=Ni(()=>(this.#m=$i(this.#l),()=>{this.#m=null}));constructor(e,t,n,r){this.#e=e,this.#n=t,this.#r=e=>{var t=ao;t.b=this,t.f|=128,n(e)},this.parent=ao.b,this.transform_error=r??this.parent?.transform_error??(e=>e),this.#i=za(()=>{if(jr){let e=this.#t;Fr();let t=e.data===`[!`;if(e.data.startsWith(`[?`)){let t=JSON.parse(e.data.slice(2));this.#_(t)}else t?this.#v():this.#g()}else this.#y()},Pi),jr&&(this.#e=Nr)}#g(){try{this.#a=Ba(()=>this.#r(this.#e))}catch(e){this.error(e)}}#_(e){let t=this.#n.failed;t&&(this.#s=Ba(()=>{t(this.#e,()=>e,()=>()=>{})}))}#v(){let e=this.#n.pending;e&&(this.is_pending=!0,this.#o=Ba(()=>e(this.#e)),ei(()=>{var e=this.#c=document.createDocumentFragment(),t=ha();e.append(t),this.#a=this.#x(()=>Ba(()=>this.#r(t))),this.#u===0&&(this.#e.before(e),this.#c=null,qa(this.#o,()=>{this.#o=null}),this.#b(pi))}))}#y(){try{if(this.is_pending=this.has_pending_snippet(),this.#u=0,this.#l=0,this.#a=Ba(()=>{this.#r(this.#e)}),this.#u>0){var e=this.#c=document.createDocumentFragment();Za(this.#a,e);let t=this.#n.pending;this.#o=Ba(()=>t(this.#e))}else this.#b(pi)}catch(e){this.error(e)}}#b(e){this.is_pending=!1,e.transfer_effects(this.#f,this.#p)}defer_effect(e){ci(e,this.#f,this.#p)}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!this.#n.pending}#x(e){var t=ao,n=no,r=qr;oo(this.#i),io(this.#i),Jr(this.#i.ctx);try{return Ci.ensure(),e()}catch(e){return ni(e),null}finally{oo(t),io(n),Jr(r)}}#S(e,t){if(!this.has_pending_snippet()){this.parent&&this.parent.#S(e,t);return}this.#u+=e,this.#u===0&&(this.#b(t),this.#o&&qa(this.#o,()=>{this.#o=null}),this.#c&&=(this.#e.before(this.#c),null))}update_pending_count(e,t){this.#S(e,t),this.#l+=e,!(!this.#m||this.#d)&&(this.#d=!0,ei(()=>{this.#d=!1,this.#m&&ra(this.#m,this.#l)}))}get_effect_pending(){return this.#h(),K(this.#m)}error(e){if(!this.#n.onerror&&!this.#n.failed)throw e;pi?.is_fork?(this.#a&&pi.skip_effect(this.#a),this.#o&&pi.skip_effect(this.#o),this.#s&&pi.skip_effect(this.#s),pi.on_fork_commit(()=>{this.#C(e)})):this.#C(e)}#C(e){this.#a&&=(Wa(this.#a),null),this.#o&&=(Wa(this.#o),null),this.#s&&=(Wa(this.#s),null),jr&&(Pr(this.#t),Ir(),Pr(Lr()));var t=this.#n.onerror;let n=this.#n.failed;var r=!1,i=!1;let a=()=>{if(r){Ar();return}r=!0,i&&Cr(),this.#s!==null&&qa(this.#s,()=>{this.#s=null}),this.#x(()=>{this.#y()})},o=e=>{try{i=!0,t?.(e,a),i=!1}catch(e){ri(e,this.#i&&this.#i.parent)}n&&(this.#s=this.#x(()=>{try{return Ba(()=>{var t=ao;t.b=this,t.f|=128,n(this.#e,()=>e,()=>a)})}catch(e){return ri(e,this.#i.parent),null}}))};ei(()=>{var t;try{t=this.transform_error(e)}catch(e){ri(e,this.#i&&this.#i.parent);return}typeof t==`object`&&t&&typeof t.then==`function`?t.then(o,e=>ri(e,this.#i&&this.#i.parent)):o(t)})}};function Li(e,t,n,r){let i=Zr()?Vi:Wi;var a=e.filter(e=>!e.settled);if(n.length===0&&a.length===0){r(t.map(i));return}var o=ao,s=Ri(),c=a.length===1?a[0].promise:a.length>1?Promise.all(a.map(e=>e.promise)):null;function l(e){s();try{r(e)}catch(e){o.f&16384||ri(e,o)}zi()}if(n.length===0){c.then(()=>l(t.map(i)));return}var u=Bi();function d(){Promise.all(n.map(e=>Hi(e))).then(e=>l([...t.map(i),...e])).catch(e=>ri(e,o)).finally(()=>u())}c?c.then(()=>{s(),d(),zi()}):d()}function Ri(){var e=ao,t=no,n=qr,r=pi;return function(i=!0){oo(e),io(t),Jr(n),i&&!(e.f&16384)&&(r?.activate(),r?.apply())}}function zi(e=!0){oo(null),io(null),Jr(null),e&&pi?.deactivate()}function Bi(){var e=ao,t=e.b,n=pi,r=t.is_rendered();return t.update_pending_count(1,n),n.increment(r,e),(i=!1)=>{t.update_pending_count(-1,n),n.decrement(r,e,i)}}function Vi(e){var t=2|qn;return ao!==null&&(ao.f|=er),{ctx:qr,deps:null,effects:null,equals:zr,f:t,fn:e,reactions:null,rv:0,v:Tr,wv:0,parent:ao,ac:null}}function Hi(e,t,n){let r=ao;r===null&&pr();var i=void 0,a=$i(Tr),o=!no,s=new Map;return Ia(()=>{var t=ao,n=Gn();i=n.promise;try{Promise.resolve(e()).then(n.resolve,n.reject).finally(zi)}catch(e){n.reject(e),zi()}var c=pi;if(o){if(t.f&32768)var l=Bi();if(r.b.is_rendered())s.get(c)?.reject(ur),s.delete(c);else{for(let e of s.values())e.reject(ur);s.clear()}s.set(c,n)}let u=(e,n=void 0)=>{if(l&&l(n===ur),!(n===ur||t.f&16384)){if(c.activate(),n)a.f|=or,ra(a,n);else{a.f&8388608&&(a.f^=or),ra(a,e);for(let[e,t]of s){if(s.delete(e),e===c)break;t.reject(ur)}}c.deactivate()}};n.promise.then(u,e=>u(null,e||`unknown`))}),ja(()=>{for(let e of s.values())e.reject(ur)}),new Promise(e=>{function t(n){function r(){n===i?e(a):t(i)}n.then(r,r)}t(i)})}function Ui(e){let t=Vi(e);return Hr||co(t),t}function Wi(e){let t=Vi(e);return t.equals=Vr,t}function Gi(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n0&&!Qi&&ia()}return t}function ia(){Qi=!1;for(let e of Xi)e.f&1024&&ai(e,Jn),yo(e)&&wo(e);Xi.clear()}function aa(e){na(e,e.v+1)}function oa(e,t,n){var r=e.reactions;if(r!==null)for(var i=Zr(),a=r.length,o=0;o{if(go===o)return e();var t=no,n=go;io(null),_o(o);var r=e();return io(t),_o(n),r};return r&&n.set(`length`,ea(e.length,a)),new Proxy(e,{defineProperty(e,t,r){(!(`value`in r)||r.configurable===!1||r.enumerable===!1||r.writable===!1)&&br();var i=n.get(t);return i===void 0?s(()=>{var e=ea(r.value,a);return n.set(t,e),e}):na(i,r.value,!0),!0},deleteProperty(e,t){var r=n.get(t);if(r===void 0){if(t in e){let e=s(()=>ea(Tr,a));n.set(t,e),aa(i)}}else na(r,Tr),aa(i);return!0},get(t,r,i){if(r===sr)return e;var o=n.get(r),c=r in t;if(o===void 0&&(!c||Ln(t,r)?.writable)&&(o=s(()=>ea(sa(c?t[r]:Tr),a)),n.set(r,o)),o!==void 0){var l=K(o);return l===Tr?void 0:l}return Reflect.get(t,r,i)},getOwnPropertyDescriptor(e,t){var r=Reflect.getOwnPropertyDescriptor(e,t);if(r&&`value`in r){var i=n.get(t);i&&(r.value=K(i))}else if(r===void 0){var a=n.get(t),o=a?.v;if(a!==void 0&&o!==Tr)return{enumerable:!0,configurable:!0,value:o,writable:!0}}return r},has(e,t){if(t===sr)return!0;var r=n.get(t),i=r!==void 0&&r.v!==Tr||Reflect.has(e,t);return(r!==void 0||ao!==null&&(!i||Ln(e,t)?.writable))&&(r===void 0&&(r=s(()=>ea(i?sa(e[t]):Tr,a)),n.set(t,r)),K(r)===Tr)?!1:i},set(e,t,o,c){var l=n.get(t),u=t in e;if(r&&t===`length`)for(var d=o;dea(Tr,a)),n.set(d+``,f)):na(f,Tr)}if(l===void 0)(!u||Ln(e,t)?.writable)&&(l=s(()=>ea(void 0,a)),na(l,sa(o)),n.set(t,l));else{u=l.v!==Tr;var p=s(()=>sa(o));na(l,p)}var m=Reflect.getOwnPropertyDescriptor(e,t);if(m?.set&&m.set.call(c,o),!u){if(r&&typeof t==`string`){var h=n.get(`length`),g=Number(t);Number.isInteger(g)&&g>=h.v&&na(h,g+1)}aa(i)}return!0},ownKeys(e){K(i);var t=Reflect.ownKeys(e).filter(e=>{var t=n.get(e);return t===void 0||t.v!==Tr});for(var[r,a]of n)a.v!==Tr&&!(r in e)&&t.push(r);return t},setPrototypeOf(){xr()}})}function ca(e){try{if(typeof e==`object`&&e&&sr in e)return e[sr]}catch{}return e}function la(e,t){return Object.is(ca(e),ca(t))}var ua,da,fa,pa;function ma(){if(ua===void 0){ua=window,da=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;fa=Ln(t,`firstChild`).get,pa=Ln(t,`nextSibling`).get,Hn(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),Hn(n)&&(n.__t=void 0)}}function ha(e=``){return document.createTextNode(e)}function ga(e){return fa.call(e)}function _a(e){return pa.call(e)}function U(e,t){if(!jr)return ga(e);var n=ga(Nr);if(n===null)n=Nr.appendChild(ha());else if(t&&n.nodeType!==3){var r=ha();return n?.before(r),Pr(r),r}return t&&xa(n),Pr(n),n}function W(e,t=!1){if(!jr){var n=ga(e);return n instanceof Comment&&n.data===``?_a(n):n}if(t){if(Nr?.nodeType!==3){var r=ha();return Nr?.before(r),Pr(r),r}xa(Nr)}return Nr}function G(e,t=1,n=!1){let r=jr?Nr:e;for(var i;t--;)i=r,r=_a(r);if(!jr)return r;if(n){if(r?.nodeType!==3){var a=ha();return r===null?i?.after(a):r.before(a),Pr(a),a}xa(r)}return Pr(r),r}function va(e){e.textContent=``}function ya(){return!Hr||Ei!==null?!1:(ao.f&Zn)!==0}function ba(e,t,n){let r=n?{is:n}:void 0;return document.createElementNS(t??`http://www.w3.org/1999/xhtml`,e,r)}function xa(e){if(e.nodeValue.length<65536)return;let t=e.nextSibling;for(;t!==null&&t.nodeType===3;)t.remove(),e.nodeValue+=t.nodeValue,t=e.nextSibling}function Sa(e){jr&&ga(e)!==null&&va(e)}var Ca=!1;function wa(){Ca||(Ca=!0,document.addEventListener(`reset`,e=>{Promise.resolve().then(()=>{if(!e.defaultPrevented)for(let t of e.target.elements)t.__on_r?.()})},{capture:!0}))}function Ta(e){var t=no,n=ao;io(null),oo(null);try{return e()}finally{io(t),oo(n)}}function Ea(e,t,n,r=n){e.addEventListener(t,()=>Ta(n));let i=e.__on_r;i?e.__on_r=()=>{i(),r(!0)}:e.__on_r=()=>r(!0),wa()}function Da(e){ao===null&&(no===null&&_r(e),gr()),eo&&hr(e)}function Oa(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function ka(e,t){var n=ao;n!==null&&n.f&8192&&(e|=Yn);var r={ctx:qr,deps:null,nodes:null,f:e|qn|512,first:null,fn:t,last:null,next:null,parent:n,b:n&&n.b,prev:null,teardown:null,wv:0,ac:null};pi?.register_created_effect(r);var i=r;if(e&4)yi===null?Ci.ensure().schedule(r):yi.push(r);else if(t!==null){try{wo(r)}catch(e){throw Wa(r),e}i.deps===null&&i.teardown===null&&i.nodes===null&&i.first===i.last&&!(i.f&524288)&&(i=i.first,e&16&&e&65536&&i!==null&&(i.f|=$n))}if(i!==null&&(i.parent=n,n!==null&&Oa(i,n),no!==null&&no.f&2&&!(e&64))){var a=no;(a.effects??=[]).push(i)}return r}function Aa(){return no!==null&&!ro}function ja(e){let t=ka(8,null);return ai(t,Kn),t.teardown=e,t}function Ma(e){Da(`$effect`);var t=ao.f;if(!no&&t&32&&!(t&32768)){var n=qr;(n.e??=[]).push(e)}else return Na(e)}function Na(e){return ka(4|tr,e)}function Pa(e){Ci.ensure();let t=ka(64|er,e);return(e={})=>new Promise(n=>{e.outro?qa(t,()=>{Wa(t),n(void 0)}):(Wa(t),n(void 0))})}function Fa(e){return ka(4,e)}function Ia(e){return ka(ar|er,e)}function La(e,t=0){return ka(8|t,e)}function Ra(e,t=[],n=[],r=[]){Li(r,t,n,t=>{ka(8,()=>e(...t.map(K)))})}function za(e,t=0){return ka(16|t,e)}function Ba(e){return ka(32|er,e)}function Va(e){var t=e.teardown;if(t!==null){let e=eo,n=no;to(!0),io(null);try{t.call(null)}finally{to(e),io(n)}}}function Ha(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){let e=n.ac;e!==null&&Ta(()=>{e.abort(ur)});var r=n.next;n.f&64?n.parent=null:Wa(n,t),n=r}}function Ua(e){for(var t=e.first;t!==null;){var n=t.next;t.f&32||Wa(t),t=n}}function Wa(e,t=!0){var n=!1;(t||e.f&262144)&&e.nodes!==null&&e.nodes.end!==null&&(Ga(e.nodes.start,e.nodes.end),n=!0),ai(e,Qn),Ha(e,t&&!n),Co(e,0);var r=e.nodes&&e.nodes.t;if(r!==null)for(let e of r)e.stop();Va(e),e.f^=Qn,e.f|=Xn;var i=e.parent;i!==null&&i.first!==null&&Ka(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=e.b=null}function Ga(e,t){for(;e!==null;){var n=e===t?null:_a(e);e.remove(),e=n}}function Ka(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function qa(e,t,n=!0){var r=[];Ja(e,r,!0);var i=()=>{n&&Wa(e),t&&t()},a=r.length;if(a>0){var o=()=>--a||i();for(var s of r)s.out(o)}else i()}function Ja(e,t,n){if(!(e.f&8192)){e.f^=Yn;var r=e.nodes&&e.nodes.t;if(r!==null)for(let e of r)(e.is_global||n)&&t.push(e);for(var i=e.first;i!==null;){var a=i.next;if(!(i.f&64)){var o=(i.f&65536)!=0||(i.f&32)!=0&&(e.f&16)!=0;Ja(i,t,o?n:!1)}i=a}}}function Ya(e){Xa(e,!0)}function Xa(e,t){if(e.f&8192){e.f^=Yn,e.f&1024||(ai(e,qn),Ci.ensure().schedule(e));for(var n=e.first;n!==null;){var r=n.next,i=(n.f&65536)!=0||(n.f&32)!=0;Xa(n,i?t:!1),n=r}var a=e.nodes&&e.nodes.t;if(a!==null)for(let e of a)(e.is_global||t)&&e.in()}}function Za(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var i=n===r?null:_a(n);t.append(n),n=i}}var Qa=null,$a=!1,eo=!1;function to(e){eo=e}var no=null,ro=!1;function io(e){no=e}var ao=null;function oo(e){ao=e}var so=null;function co(e){no!==null&&(!Hr||no.f&2)&&(so===null?so=[e]:so.push(e))}var lo=null,uo=0,fo=null;function po(e){fo=e}var mo=1,ho=0,go=ho;function _o(e){go=e}function vo(){return++mo}function yo(e){var t=e.f;if(t&2048)return!0;if(t&2&&(e.f&=~rr),t&4096){for(var n=e.deps,r=n.length,i=0;ie.wv)return!0}t&512&&hi===null&&ai(e,Kn)}return!1}function bo(e,t,n=!0){var r=e.reactions;if(r!==null&&!(!Hr&&so!==null&&Pn.call(so,e)))for(var i=0;i{e.ac.abort(ur)}),e.ac=null);try{e.f|=ir;var u=e.fn,d=u();e.f|=Zn;var f=e.deps,p=pi?.is_fork;if(lo!==null){var m;if(p||Co(e,uo),f!==null&&uo>0)for(f.length=uo+lo.length,m=0;m{requestAnimationFrame(()=>e()),setTimeout(()=>e())});await Promise.resolve(),wi()}function K(e){var t=(e.f&2)!=0;if(Qa?.add(e),no!==null&&!ro&&!(ao!==null&&ao.f&16384)&&(so===null||!Pn.call(so,e))){var n=no.deps;if(no.f&2097152)e.rvn?.call(this,e))}return e.startsWith(`pointer`)||e.startsWith(`touch`)||e===`wheel`?ei(()=>{t.addEventListener(e,i,r)}):t.addEventListener(e,i,r),i}function Fo(e,t,n,r,i){var a={capture:r,passive:i},o=Po(e,t,n,a);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&ja(()=>{t.removeEventListener(e,o,a)})}function Io(e,t,n){(t[jo]??={})[e]=n}function Lo(e){for(var t=0;t{throw e});throw f}}finally{e[jo]=t,delete e.currentTarget,io(u),oo(d)}}}var Bo=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy(`svelte-trusted-html`,{createHTML:e=>e});function Vo(e){return Bo?.createHTML(e)??e}function Ho(e){var t=ba(`template`);return t.innerHTML=Vo(e.replaceAll(``,``)),t.content}function Uo(e,t){var n=ao;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function q(e,t){var n=(t&1)!=0,r=(t&2)!=0,i,a=!e.startsWith(``);return()=>{if(jr)return Uo(Nr,null),Nr;i===void 0&&(i=Ho(a?e:``+e),n||(i=ga(i)));var t=r||da?document.importNode(i,!0):i.cloneNode(!0);if(n){var o=ga(t),s=t.lastChild;Uo(o,s)}else Uo(t,t);return t}}function Wo(e,t,n=`svg`){var r=!e.startsWith(``),i=(t&1)!=0,a=`<${n}>${r?e:``+e}`,o;return()=>{if(jr)return Uo(Nr,null),Nr;if(!o){var e=ga(Ho(a));if(i)for(o=document.createDocumentFragment();ga(e);)o.appendChild(ga(e));else o=ga(e)}var t=o.cloneNode(!0);if(i){var n=ga(t),r=t.lastChild;Uo(n,r)}else Uo(t,t);return t}}function Go(e,t){return Wo(e,t,`svg`)}function Ko(e=``){if(!jr){var t=ha(e+``);return Uo(t,t),t}var n=Nr;return n.nodeType===3?xa(n):(n.before(n=ha()),Pr(n)),Uo(n,n),n}function qo(){if(jr)return Uo(Nr,null),Nr;var e=document.createDocumentFragment(),t=document.createComment(``),n=ha();return e.append(t,n),Uo(t,n),e}function J(e,t){if(jr){var n=ao;(!(n.f&32768)||n.nodes.end===null)&&(n.nodes.end=Nr),Fr();return}e!==null&&e.before(t)}function Jo(e,t){var n=t==null?``:typeof t==`object`?`${t}`:t;n!==(e.__t??=e.nodeValue)&&(e.__t=n,e.nodeValue=`${n}`)}function Yo(e,t){return Zo(e,t)}var Xo=new Map;function Zo(e,{target:t,anchor:n,props:r={},events:i,context:a,intro:o=!0,transformError:s}){ma();var c=void 0,l=Pa(()=>{var o=n??t.appendChild(ha());Fi(o,{pending:()=>{}},t=>{Yr({});var n=qr;if(a&&(n.c=a),i&&(r.$$events=i),jr&&Uo(t,null),c=e(t,r)||{},jr&&(ao.nodes.end=Nr,Nr===null||Nr.nodeType!==8||Nr.data!==`]`))throw Or(),wr;Xr()},s);var l=new Set,u=e=>{for(var n=0;n{for(var e of l)for(let n of[t,document]){var r=Xo.get(n),i=r.get(e);--i==0?(n.removeEventListener(e,zo),r.delete(e),r.size===0&&Xo.delete(n)):r.set(e,i)}No.delete(u),o!==n&&o.parentNode?.removeChild(o)}});return Qo.set(c,l),c}var Qo=new WeakMap;function $o(e,t){let n=Qo.get(e);return n?(Qo.delete(e),n(t)):Promise.resolve()}var es=class{anchor;#e=new Map;#t=new Map;#n=new Map;#r=new Set;#i=!0;constructor(e,t=!0){this.anchor=e,this.#i=t}#a=e=>{if(this.#e.has(e)){var t=this.#e.get(e),n=this.#t.get(t);if(n)Ya(n),this.#r.delete(t);else{var r=this.#n.get(t);r&&(this.#t.set(t,r.effect),this.#n.delete(t),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),n=r.effect)}for(let[t,n]of this.#e){if(this.#e.delete(t),t===e)break;let r=this.#n.get(n);r&&(Wa(r.effect),this.#n.delete(n))}for(let[e,r]of this.#t){if(e===t||this.#r.has(e))continue;let i=()=>{if(Array.from(this.#e.values()).includes(e)){var t=document.createDocumentFragment();Za(r,t),t.append(ha()),this.#n.set(e,{effect:r,fragment:t})}else Wa(r);this.#r.delete(e),this.#t.delete(e)};this.#i||!n?(this.#r.add(e),qa(r,i,!1)):i()}}};#o=e=>{this.#e.delete(e);let t=Array.from(this.#e.values());for(let[e,n]of this.#n)t.includes(e)||(Wa(n.effect),this.#n.delete(e))};ensure(e,t){var n=pi,r=ya();if(t&&!this.#t.has(e)&&!this.#n.has(e))if(r){var i=document.createDocumentFragment(),a=ha();i.append(a),this.#n.set(e,{effect:Ba(()=>t(a)),fragment:i})}else this.#t.set(e,Ba(()=>t(this.anchor)));if(this.#e.set(n,e),r){for(let[t,r]of this.#t)t===e?n.unskip_effect(r):n.skip_effect(r);for(let[t,r]of this.#n)t===e?n.unskip_effect(r.effect):n.skip_effect(r.effect);n.oncommit(this.#a),n.ondiscard(this.#o)}else jr&&(this.anchor=Nr),this.#a(n)}};function ts(e,t,n=!1){var r;jr&&(r=Nr,Fr());var i=new es(e),a=n?$n:0;function o(e,t){if(jr){var n=Rr(r);if(e!==parseInt(n.substring(1))){var a=Lr();Pr(a),i.anchor=a,Mr(!1),i.ensure(e,t),Mr(!0);return}}i.ensure(e,t)}za(()=>{var e=!1;t((t,n=0)=>{e=!0,o(n,t)}),e||o(-1,null)},a)}function ns(e,t){return t}function rs(e,t,n){for(var r=[],i=t.length,a,o=t.length,s=0;s{if(a){if(a.pending.delete(n),a.done.add(n),a.pending.size===0){var t=e.outrogroups;is(e,Fn(a.done)),t.delete(a),t.size===0&&(e.outrogroups=null)}}else --o},!1)}if(o===0){var c=r.length===0&&n!==null;if(c){var l=n,u=l.parentNode;va(u),u.append(l),e.items.clear()}is(e,t,!c)}else a={pending:new Set(t),done:new Set},(e.outrogroups??=new Set).add(a)}function is(e,t,n=!0){var r;if(e.pending.size>0){r=new Set;for(let t of e.pending.values())for(let n of t)r.add(e.items.get(n).e)}for(var i=0;i{var e=n();return Mn(e)?e:e==null?[]:Fn(e)}),d,f=new Map,p=!0;function m(e){g.effect.f&16384||(g.pending.delete(e),g.fallback=l,cs(g,d,o,t,r),l!==null&&(d.length===0?l.f&33554432?(l.f^=nr,us(l,null,o)):Ya(l):qa(l,()=>{l=null})))}function h(e){g.pending.delete(e)}var g={effect:za(()=>{d=K(u);var e=d.length;let c=!1;jr&&Rr(o)===`[!`!=(e===0)&&(o=Lr(),Pr(o),Mr(!1),c=!0);for(var g=new Set,_=pi,v=ya(),y=0;ya(o)):(l=Ba(()=>a(as??=ha())),l.f|=nr)),e>g.size&&mr(``,``,``),jr&&e>0&&Pr(Lr()),!p)if(f.set(_,g),v){for(let[e,t]of s)g.has(e)||_.skip_effect(t.e);_.oncommit(m),_.ondiscard(h)}else m(_);c&&Mr(!0),K(u)}),flags:t,items:s,pending:f,outrogroups:null,fallback:l};p=!1,jr&&(o=Nr)}function ss(e){for(;e!==null&&!(e.f&32);)e=e.next;return e}function cs(e,t,n,r,i){var a=(r&8)!=0,o=t.length,s=e.items,c=ss(e.effect.first),l,u=null,d,f=[],p=[],m,h,g,_;if(a)for(_=0;_0){var T=r&4&&o===0?n:null;if(a){for(_=0;_{if(d!==void 0)for(g of d)g.nodes?.a?.apply()})}function ls(e,t,n,r,i,a,o,s){var c=o&1?o&16?$i(n):ta(n,!1,!1):null,l=o&2?$i(i):null;return{v:c,i:l,e:Ba(()=>(a(t,c??n,l??i,s),()=>{e.delete(r)}))}}function us(e,t,n){if(e.nodes)for(var r=e.nodes.start,i=e.nodes.end,a=t&&!(t.f&33554432)?t.nodes.start:n;r!==null;){var o=_a(r);if(a.before(r),r===i)return;r=o}}function ds(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}function fs(e,t,...n){var r=new es(e);za(()=>{let e=t()??null;r.ensure(e,e&&(t=>e(t,...n)))},$n)}function ps(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t=0;){var s=o+a;(o===0||gs.includes(r[o-1]))&&(s===r.length||gs.includes(r[s]))?r=(o===0?``:r.substring(0,o))+r.substring(s+1):o=s}}return r===``?null:r}function vs(e,t=!1){var n=t?` !important;`:`;`,r=``;for(var i of Object.keys(e)){var a=e[i];a!=null&&a!==``&&(r+=` `+i+`: `+a+n)}return r}function ys(e){return e[0]!==`-`||e[1]!==`-`?e.toLowerCase():e}function bs(e,t){if(t){var n=``,r,i;if(Array.isArray(t)?(r=t[0],i=t[1]):r=t,e){e=String(e).replaceAll(/\s*\/\*.*?\*\/\s*/g,``).trim();var a=!1,o=0,s=!1,c=[];r&&c.push(...Object.keys(r).map(ys)),i&&c.push(...Object.keys(i).map(ys));var l=0,u=-1;let t=e.length;for(var d=0;d{ws(e,e.__value)});t.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`value`]}),ja(()=>{t.disconnect()})}function Es(e,t,n=t){var r=new WeakSet,i=!0;Ea(e,`change`,t=>{var i=t?`[selected]`:`:checked`,a;if(e.multiple)a=[].map.call(e.querySelectorAll(i),Ds);else{var o=e.querySelector(i)??e.querySelector(`option:not([disabled])`);a=o&&Ds(o)}n(a),e.__value=a,pi!==null&&r.add(pi)}),Fa(()=>{var a=t();if(e===document.activeElement){var o=Hr?mi:pi;if(r.has(o))return}if(ws(e,a,i),i&&a===void 0){var s=e.querySelector(`:checked`);s!==null&&(a=Ds(s),n(a))}e.__value=a,i=!1}),Ts(e)}function Ds(e){return`__value`in e?e.__value:e.value}var Os=Symbol(`is custom element`),ks=Symbol(`is html`),As=dr?`link`:`LINK`,js=dr?`progress`:`PROGRESS`;function Ms(e){if(jr){var t=!1,n=()=>{if(!t){if(t=!0,e.hasAttribute(`value`)){var n=e.value;Fs(e,`value`,null),e.value=n}if(e.hasAttribute(`checked`)){var r=e.checked;Fs(e,`checked`,null),e.checked=r}}};e.__on_r=n,ei(n),wa()}}function Ns(e,t){var n=Is(e);n.value===(n.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!==js)||(e.value=t??``)}function Ps(e,t){var n=Is(e);n.checked!==(n.checked=t??void 0)&&(e.checked=t)}function Fs(e,t,n,r){var i=Is(e);jr&&(i[t]=e.getAttribute(t),t===`src`||t===`srcset`||t===`href`&&e.nodeName===As)||i[t]!==(i[t]=n)&&(t===`loading`&&(e[lr]=n),n==null?e.removeAttribute(t):typeof n!=`string`&&Rs(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function Is(e){return e.__attributes??={[Os]:e.nodeName.includes(`-`),[ks]:e.namespaceURI===Er}}var Ls=new Map;function Rs(e){var t=e.getAttribute(`is`)||e.nodeName,n=Ls.get(t);if(n)return n;Ls.set(t,n=[]);for(var r,i=e,a=Element.prototype;a!==i;){for(var o in r=Rn(i),r)r[o].set&&n.push(o);i=Vn(i)}return n}function zs(e,t,n=t){var r=new WeakSet;Ea(e,`input`,async i=>{var a=i?e.defaultValue:e.value;if(a=Bs(e)?Vs(a):a,n(a),pi!==null&&r.add(pi),await To(),a!==(a=t())){var o=e.selectionStart,s=e.selectionEnd,c=e.value.length;if(e.value=a??``,s!==null){var l=e.value.length;o===s&&s===c&&l>c?(e.selectionStart=l,e.selectionEnd=l):(e.selectionStart=o,e.selectionEnd=Math.min(s,l))}}}),(jr&&e.defaultValue!==e.value||Oo(t)==null&&e.value)&&(n(Bs(e)?Vs(e.value):e.value),pi!==null&&r.add(pi)),La(()=>{var n=t();if(e===document.activeElement){var i=Hr?mi:pi;if(r.has(i))return}Bs(e)&&n===Vs(e.value)||e.type===`date`&&!n&&!e.value||n!==e.value&&(e.value=n??``)})}function Bs(e){var t=e.type;return t===`number`||t===`range`}function Vs(e){return e===``?null:+e}function Hs(e,t){return e===t||e?.[sr]===t}function Us(e={},t,n,r){var i=qr.r,a=ao;return Fa(()=>{var o,s;return La(()=>{o=s,s=r?.()||[],Oo(()=>{e!==n(...s)&&(t(e,...s),o&&Hs(n(...o),e)&&t(null,...o))})}),()=>{let r=a;for(;r!==i&&r.parent!==null&&r.parent.f&33554432;)r=r.parent;let o=()=>{s&&Hs(n(...s),e)&&t(null,...s)},c=r.teardown;r.teardown=()=>{o(),c?.()}}}),e}function Ws(e,t,n,r){var i=!Ur||(n&2)!=0,a=(n&8)!=0,o=(n&16)!=0,s=r,c=!0,l=()=>(c&&(c=!1,s=o?Oo(r):r),s);let u;if(a){var d=sr in e||cr in e;u=Ln(e,t)?.set??(d&&t in e?n=>e[t]=n:void 0)}var f,p=!1;a?[f,p]=di(()=>e[t]):f=e[t],f===void 0&&r!==void 0&&(f=l(),u&&(i&&yr(t),u(f)));var m=i?()=>{var n=e[t];return n===void 0?l():(c=!0,n)}:()=>{var n=e[t];return n!==void 0&&(s=void 0),n===void 0?s:n};if(i&&!(n&4))return m;if(u){var h=e.$$legacy;return(function(e,t){return arguments.length>0?((!i||!t||h||p)&&u(t?m():e),e):m()})}var g=!1,_=(n&1?Vi:Wi)(()=>(g=!1,m()));a&&K(_);var v=ao;return(function(e,t){if(arguments.length>0){let n=t?K(_):i&&a?sa(e):e;return na(_,n),g=!0,s!==void 0&&(s=n),e}return eo&&g||v.f&16384?_.v:K(_)})}function Gs(e){qr===null&&fr(`onMount`),Ur&&qr.l!==null?qs(qr).m.push(e):Ma(()=>{let t=Oo(e);if(typeof t==`function`)return t})}function Ks(e){qr===null&&fr(`onDestroy`),Gs(()=>()=>Oo(e))}function qs(e){var t=e.l;return t.u??={a:[],b:[],m:[]}}var Js=class{mb;svelteComponent;svelteComponentInstance;mounted;onValueChange;constructor(e,t,n){this.mb=e,this.mounted=!1,this.svelteComponent=t,this.onValueChange=n}setValue(e){this.svelteComponentInstance?.setValue(e)}getInstance(){return this.svelteComponentInstance}mount(e,t,n={}){let r=Object.assign({mb:this.mb,value:t,onValueChange:this.onValueChange},n);this.svelteComponentInstance=Yo(this.svelteComponent,{target:e,props:r}),this.mounted=!0}unmount(){this.svelteComponentInstance&&$o(this.svelteComponentInstance),this.mounted=!1}isMounted(){return this.mounted}},Ys=class{mounted;targetEl;onUnmountCbs;constructor(){this.mounted=!1,this.targetEl=void 0,this.onUnmountCbs=[]}isMounted(){return this.mounted}getTargetEl(){return this.targetEl}mount(e){if(this.mounted||this.targetEl){console.warn(`Mountable is already mounted`,this);return}if(e===void 0){console.error(`Mountable target element is undefined`,this);return}this.mounted=!0,this.targetEl=e,this.onMount(e)}unmount(){if(!this.mounted||!this.targetEl){console.warn(`Mountable is not mounted`,this);return}this.mounted=!1,this.onUnmount(this.targetEl);for(let e of this.onUnmountCbs)e();this.targetEl=void 0}registerUnmountCb(e){this.onUnmountCbs.push(e)}},Xs=class{listeners;constructor(){this.listeners=[]}registerListener(e){let t=e;return t.uuid=St(),this.listeners.push(t),t}unregisterListener(e){this.unregisterListenerById(e.uuid)}unregisterListenerById(e){this.listeners=this.listeners.filter(t=>t.uuid!==e)}unregisterAllListeners(){this.listeners=[]}notifyListeners(e){for(let t of this.listeners)try{t.callback(e)}catch(e){let t=e instanceof Error?e:String(e);console.error(new L({errorLevel:P.ERROR,effect:`error while calling listener callback`,cause:t}))}}},Zs=class extends Xs{value;constructor(e){super(),this.value=e}get(){return this.value}set(e){this.value=e,this.notifyListeners(e)}},Qs=class extends Xs{value;mapFn;constructor(e,t){super(),this.value=t(e),this.mapFn=t}get(){return this.value}set(e){this.value=this.mapFn(e),this.notifyListeners(this.value)}setDirect(e){this.value=e,this.notifyListeners(e)}},$s=class extends Ys{mb;mountable;svelteWrapper;inputSignal;metadataSubscription;mountTarget;constructor(e){super(),this.mountable=e,this.mb=e.mb}reverseMapValue(e){let t=this.rawReverseMapValue(e);if(t!==void 0)return t;let n=this.rawReverseMapValue(this.getDefaultValue());return n===void 0?this.getFallbackDefaultValue():n}mapValue(e){return this.rawMapValue(e)}getValue(){return this.inputSignal?this.inputSignal.get():this.getDefaultValue()}getInternalValue(){return this.reverseMapValue(this.getValue())}setValue(e){this.inputSignal?.setDirect(e),this.notifySubscription(e)}setInternalValue(e){this.setValue(this.mapValue(e))}notifySubscription(e){this.metadataSubscription?.write(e)}getDefaultValue(){let e=this.mountable.getArgument(V.DEFAULT_VALUE);if(e===void 0)return this.mapValue(this.getFallbackDefaultValue());let t=this.filterValue(e.value);return t===void 0?this.mapValue(this.getFallbackDefaultValue()):t}updateDataAttributes(e){this.mountTarget&&(this.mountTarget.dataset.internalValue=JSON.stringify(e))}getMountArgs(){return{}}onMount(e){this.mountTarget=e,this.svelteWrapper=new Js(this.mb,this.getSvelteComponent(),e=>{this.updateDataAttributes(e),this.notifySubscription(this.mapValue(e))}),this.inputSignal=new Qs(void 0,e=>{let t=this.filterValue(e);return t===void 0?this.getDefaultValue():t}),this.inputSignal.registerListener({callback:e=>this.svelteWrapper?.setValue(this.reverseMapValue(e))}),this.inputSignal.registerListener({callback:e=>{this.updateDataAttributes(this.reverseMapValue(e))}}),this.updateDataAttributes(this.getInternalValue());let t=this.mountable.getBindTarget();t&&(this.metadataSubscription=this.mountable.mb.metadataManager.subscribe(this.mountable.getUuid(),this.inputSignal,t,()=>this.mountable.unmount())),this.svelteWrapper.mount(e,this.reverseMapValue(this.getValue()),this.getMountArgs())}onUnmount(){this.mountTarget=void 0,this.inputSignal?.unregisterAllListeners(),this.metadataSubscription?.unsubscribe(),this.svelteWrapper?.unmount()}};typeof window<`u`&&((window.__svelte??={}).v??=new Set).add(`5`);var ec=q(``);function tc(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}var i={setValue:r},a=ec();return Ms(a),Io(`input`,a,()=>t.onValueChange(Gr(K(n)))),zs(a,()=>K(n),e=>na(n,e)),J(e,a),Xr(i)}Lo([`input`]);var nc;function rc(){return nc.apply(null,arguments)}function ic(e){nc=e}function ac(e){return e instanceof Array||Object.prototype.toString.call(e)===`[object Array]`}function oc(e){return e!=null&&Object.prototype.toString.call(e)===`[object Object]`}function sc(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function cc(e){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(e).length===0;for(var t in e)if(sc(e,t))return!1;return!0}function lc(e){return e===void 0}function uc(e){return typeof e==`number`||Object.prototype.toString.call(e)===`[object Number]`}function dc(e){return e instanceof Date||Object.prototype.toString.call(e)===`[object Date]`}function fc(e,t){var n=[],r,i=e.length;for(r=0;r>>0,r;for(r=0;r0)for(n=0;n=0?n?`+`:``:`-`)+(10**Math.max(0,i)).toString().substr(1)+r}var Lc=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Rc=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,zc={},Bc={};function Vc(e,t,n,r){var i=r;typeof r==`string`&&(i=function(){return this[r]()}),e&&(Bc[e]=i),t&&(Bc[t[0]]=function(){return Ic(i.apply(this,arguments),t[1],t[2])}),n&&(Bc[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function Hc(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,``):e.replace(/\\/g,``)}function Uc(e){var t=e.match(Lc),n,r;for(n=0,r=t.length;n=0&&Rc.test(e);)e=e.replace(Rc,r),Rc.lastIndex=0,--n;return e}var Kc={LTS:`h:mm:ss A`,LT:`h:mm A`,L:`MM/DD/YYYY`,LL:`MMMM D, YYYY`,LLL:`MMMM D, YYYY h:mm A`,LLLL:`dddd, MMMM D, YYYY h:mm A`};function qc(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.match(Lc).map(function(e){return e===`MMMM`||e===`MM`||e===`DD`||e===`dddd`?e.slice(1):e}).join(``),this._longDateFormat[e])}var Jc=`Invalid date`;function Yc(){return this._invalidDate}var Xc=`%d`,Zc=/\d{1,2}/;function Qc(e){return this._ordinal.replace(`%d`,e)}var $c={future:`in %s`,past:`%s ago`,s:`a few seconds`,ss:`%d seconds`,m:`a minute`,mm:`%d minutes`,h:`an hour`,hh:`%d hours`,d:`a day`,dd:`%d days`,w:`a week`,ww:`%d weeks`,M:`a month`,MM:`%d months`,y:`a year`,yy:`%d years`};function el(e,t,n,r){var i=this._relativeTime[n];return kc(i)?i(e,t,n,r):i.replace(/%d/i,e)}function tl(e,t){var n=this._relativeTime[e>0?`future`:`past`];return kc(n)?n(t):n.replace(/%s/i,t)}var nl={D:`date`,dates:`date`,date:`date`,d:`day`,days:`day`,day:`day`,e:`weekday`,weekdays:`weekday`,weekday:`weekday`,E:`isoWeekday`,isoweekdays:`isoWeekday`,isoweekday:`isoWeekday`,DDD:`dayOfYear`,dayofyears:`dayOfYear`,dayofyear:`dayOfYear`,h:`hour`,hours:`hour`,hour:`hour`,ms:`millisecond`,milliseconds:`millisecond`,millisecond:`millisecond`,m:`minute`,minutes:`minute`,minute:`minute`,M:`month`,months:`month`,month:`month`,Q:`quarter`,quarters:`quarter`,quarter:`quarter`,s:`second`,seconds:`second`,second:`second`,gg:`weekYear`,weekyears:`weekYear`,weekyear:`weekYear`,GG:`isoWeekYear`,isoweekyears:`isoWeekYear`,isoweekyear:`isoWeekYear`,w:`week`,weeks:`week`,week:`week`,W:`isoWeek`,isoweeks:`isoWeek`,isoweek:`isoWeek`,y:`year`,years:`year`,year:`year`};function rl(e){return typeof e==`string`?nl[e]||nl[e.toLowerCase()]:void 0}function il(e){var t={},n,r;for(r in e)sc(e,r)&&(n=rl(r),n&&(t[n]=e[r]));return t}var al={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function ol(e){var t=[],n;for(n in e)sc(e,n)&&t.push({unit:n,priority:al[n]});return t.sort(function(e,t){return e.priority-t.priority}),t}var sl=/\d/,cl=/\d\d/,ll=/\d{3}/,ul=/\d{4}/,dl=/[+-]?\d{6}/,fl=/\d\d?/,pl=/\d\d\d\d?/,ml=/\d\d\d\d\d\d?/,hl=/\d{1,3}/,gl=/\d{1,4}/,_l=/[+-]?\d{1,6}/,vl=/\d+/,yl=/[+-]?\d+/,bl=/Z|[+-]\d\d:?\d\d/gi,xl=/Z|[+-]\d\d(?::?\d\d)?/gi,Sl=/[+-]?\d+(\.\d{1,3})?/,Cl=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,wl=/^[1-9]\d?/,Tl=/^([1-9]\d|\d)/,El={};function Dl(e,t,n){El[e]=kc(t)?t:function(e,r){return e&&n?n:t}}function Ol(e,t){return sc(El,e)?El[e](t._strict,t._locale):new RegExp(kl(e))}function kl(e){return Al(e.replace(`\\`,``).replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,r,i){return t||n||r||i}))}function Al(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,`\\$&`)}function jl(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function Ml(e){var t=+e,n=0;return t!==0&&isFinite(t)&&(n=jl(t)),n}var Nl={};function Pl(e,t){var n,r=t,i;for(typeof e==`string`&&(e=[e]),uc(t)&&(r=function(e,n){n[t]=Ml(e)}),i=e.length,n=0;n68?1900:2e3)};var Jl=Xl(`FullYear`,!0);function Yl(){return Ll(this.year())}function Xl(e,t){return function(n){return n==null?Zl(this,e):(Ql(this,e,n),rc.updateOffset(this,t),this)}}function Zl(e,t){if(!e.isValid())return NaN;var n=e._d,r=e._isUTC;switch(t){case`Milliseconds`:return r?n.getUTCMilliseconds():n.getMilliseconds();case`Seconds`:return r?n.getUTCSeconds():n.getSeconds();case`Minutes`:return r?n.getUTCMinutes():n.getMinutes();case`Hours`:return r?n.getUTCHours():n.getHours();case`Date`:return r?n.getUTCDate():n.getDate();case`Day`:return r?n.getUTCDay():n.getDay();case`Month`:return r?n.getUTCMonth():n.getMonth();case`FullYear`:return r?n.getUTCFullYear():n.getFullYear();default:return NaN}}function Ql(e,t,n){var r,i,a,o,s;if(!(!e.isValid()||isNaN(n))){switch(r=e._d,i=e._isUTC,t){case`Milliseconds`:i?r.setUTCMilliseconds(n):r.setMilliseconds(n);return;case`Seconds`:i?r.setUTCSeconds(n):r.setSeconds(n);return;case`Minutes`:i?r.setUTCMinutes(n):r.setMinutes(n);return;case`Hours`:i?r.setUTCHours(n):r.setHours(n);return;case`Date`:i?r.setUTCDate(n):r.setDate(n);return;case`FullYear`:break;default:return}a=n,o=e.month(),s=e.date(),s=s===29&&o===1&&!Ll(a)?28:s,i?r.setUTCFullYear(a,o,s):r.setFullYear(a,o,s)}}function $l(e){return e=rl(e),kc(this[e])?this[e]():this}function eu(e,t){if(typeof e==`object`){e=il(e);var n=ol(e),r,i=n.length;for(r=0;r=0?(s=new Date(e+400,t,n,r,i,a,o),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,t,n,r,i,a,o),s}function bu(e){var t,n;return e<100&&e>=0?(n=Array.prototype.slice.call(arguments),n[0]=e+400,t=new Date(Date.UTC.apply(null,n)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function xu(e,t,n){var r=7+t-n;return-((7+bu(e,0,r).getUTCDay()-t)%7)+r-1}function Su(e,t,n,r,i){var a=(7+n-r)%7,o=xu(e,r,i),s=1+7*(t-1)+a+o,c,l;return s<=0?(c=e-1,l=ql(c)+s):s>ql(e)?(c=e+1,l=s-ql(e)):(c=e,l=s),{year:c,dayOfYear:l}}function Cu(e,t,n){var r=xu(e.year(),t,n),i=Math.floor((e.dayOfYear()-r-1)/7)+1,a,o;return i<1?(o=e.year()-1,a=i+wu(o,t,n)):i>wu(e.year(),t,n)?(a=i-wu(e.year(),t,n),o=e.year()+1):(o=e.year(),a=i),{week:a,year:o}}function wu(e,t,n){var r=xu(e,t,n),i=xu(e+1,t,n);return(ql(e)-r+i)/7}Vc(`w`,[`ww`,2],`wo`,`week`),Vc(`W`,[`WW`,2],`Wo`,`isoWeek`),Dl(`w`,fl,wl),Dl(`ww`,fl,cl),Dl(`W`,fl,wl),Dl(`WW`,fl,cl),Fl([`w`,`ww`,`W`,`WW`],function(e,t,n,r){t[r.substr(0,1)]=Ml(e)});function Tu(e){return Cu(e,this._week.dow,this._week.doy).week}var Eu={dow:0,doy:6};function Du(){return this._week.dow}function Ou(){return this._week.doy}function ku(e){var t=this.localeData().week(this);return e==null?t:this.add((e-t)*7,`d`)}function Au(e){var t=Cu(this,1,4).week;return e==null?t:this.add((e-t)*7,`d`)}Vc(`d`,0,`do`,`day`),Vc(`dd`,0,0,function(e){return this.localeData().weekdaysMin(this,e)}),Vc(`ddd`,0,0,function(e){return this.localeData().weekdaysShort(this,e)}),Vc(`dddd`,0,0,function(e){return this.localeData().weekdays(this,e)}),Vc(`e`,0,0,`weekday`),Vc(`E`,0,0,`isoWeekday`),Dl(`d`,fl),Dl(`e`,fl),Dl(`E`,fl),Dl(`dd`,function(e,t){return t.weekdaysMinRegex(e)}),Dl(`ddd`,function(e,t){return t.weekdaysShortRegex(e)}),Dl(`dddd`,function(e,t){return t.weekdaysRegex(e)}),Fl([`dd`,`ddd`,`dddd`],function(e,t,n,r){var i=n._locale.weekdaysParse(e,r,n._strict);i==null?gc(n).invalidWeekday=e:t.d=i}),Fl([`d`,`e`,`E`],function(e,t,n,r){t[r]=Ml(e)});function ju(e,t){return typeof e==`string`?isNaN(e)?(e=t.weekdaysParse(e),typeof e==`number`?e:null):parseInt(e,10):e}function Mu(e,t){return typeof e==`string`?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Nu(e,t){return e.slice(t,7).concat(e.slice(0,t))}var Pu=`Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday`.split(`_`),Fu=`Sun_Mon_Tue_Wed_Thu_Fri_Sat`.split(`_`),Iu=`Su_Mo_Tu_We_Th_Fr_Sa`.split(`_`),Lu=Cl,Ru=Cl,zu=Cl;function Bu(e,t){var n=ac(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(t)?`format`:`standalone`];return e===!0?Nu(n,this._week.dow):e?n[e.day()]:n}function Vu(e){return e===!0?Nu(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Hu(e){return e===!0?Nu(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function Uu(e,t,n){var r,i,a,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=mc([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,``).toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,``).toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,``).toLocaleLowerCase();return n?t===`dddd`?(i=nu.call(this._weekdaysParse,o),i===-1?null:i):t===`ddd`?(i=nu.call(this._shortWeekdaysParse,o),i===-1?null:i):(i=nu.call(this._minWeekdaysParse,o),i===-1?null:i):t===`dddd`?(i=nu.call(this._weekdaysParse,o),i!==-1||(i=nu.call(this._shortWeekdaysParse,o),i!==-1)?i:(i=nu.call(this._minWeekdaysParse,o),i===-1?null:i)):t===`ddd`?(i=nu.call(this._shortWeekdaysParse,o),i!==-1||(i=nu.call(this._weekdaysParse,o),i!==-1)?i:(i=nu.call(this._minWeekdaysParse,o),i===-1?null:i)):(i=nu.call(this._minWeekdaysParse,o),i!==-1||(i=nu.call(this._weekdaysParse,o),i!==-1)?i:(i=nu.call(this._shortWeekdaysParse,o),i===-1?null:i))}function Wu(e,t,n){var r,i,a;if(this._weekdaysParseExact)return Uu.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++)if(i=mc([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=RegExp(`^`+this.weekdays(i,``).replace(`.`,`\\.?`)+`$`,`i`),this._shortWeekdaysParse[r]=RegExp(`^`+this.weekdaysShort(i,``).replace(`.`,`\\.?`)+`$`,`i`),this._minWeekdaysParse[r]=RegExp(`^`+this.weekdaysMin(i,``).replace(`.`,`\\.?`)+`$`,`i`)),this._weekdaysParse[r]||(a=`^`+this.weekdays(i,``)+`|^`+this.weekdaysShort(i,``)+`|^`+this.weekdaysMin(i,``),this._weekdaysParse[r]=new RegExp(a.replace(`.`,``),`i`)),n&&t===`dddd`&&this._fullWeekdaysParse[r].test(e)||n&&t===`ddd`&&this._shortWeekdaysParse[r].test(e)||n&&t===`dd`&&this._minWeekdaysParse[r].test(e)||!n&&this._weekdaysParse[r].test(e))return r}function Gu(e){if(!this.isValid())return e==null?NaN:this;var t=Zl(this,`Day`);return e==null?t:(e=ju(e,this.localeData()),this.add(e-t,`d`))}function Ku(e){if(!this.isValid())return e==null?NaN:this;var t=(this.day()+7-this.localeData()._week.dow)%7;return e==null?t:this.add(e-t,`d`)}function qu(e){if(!this.isValid())return e==null?NaN:this;if(e!=null){var t=Mu(e,this.localeData());return this.day(this.day()%7?t:t-7)}else return this.day()||7}function Ju(e){return this._weekdaysParseExact?(sc(this,`_weekdaysRegex`)||Zu.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(sc(this,`_weekdaysRegex`)||(this._weekdaysRegex=Lu),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Yu(e){return this._weekdaysParseExact?(sc(this,`_weekdaysRegex`)||Zu.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(sc(this,`_weekdaysShortRegex`)||(this._weekdaysShortRegex=Ru),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Xu(e){return this._weekdaysParseExact?(sc(this,`_weekdaysRegex`)||Zu.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(sc(this,`_weekdaysMinRegex`)||(this._weekdaysMinRegex=zu),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Zu(){function e(e,t){return t.length-e.length}var t=[],n=[],r=[],i=[],a,o,s,c,l;for(a=0;a<7;a++)o=mc([2e3,1]).day(a),s=Al(this.weekdaysMin(o,``)),c=Al(this.weekdaysShort(o,``)),l=Al(this.weekdays(o,``)),t.push(s),n.push(c),r.push(l),i.push(s),i.push(c),i.push(l);t.sort(e),n.sort(e),r.sort(e),i.sort(e),this._weekdaysRegex=RegExp(`^(`+i.join(`|`)+`)`,`i`),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=RegExp(`^(`+r.join(`|`)+`)`,`i`),this._weekdaysShortStrictRegex=RegExp(`^(`+n.join(`|`)+`)`,`i`),this._weekdaysMinStrictRegex=RegExp(`^(`+t.join(`|`)+`)`,`i`)}function Qu(){return this.hours()%12||12}function $u(){return this.hours()||24}Vc(`H`,[`HH`,2],0,`hour`),Vc(`h`,[`hh`,2],0,Qu),Vc(`k`,[`kk`,2],0,$u),Vc(`hmm`,0,0,function(){return``+Qu.apply(this)+Ic(this.minutes(),2)}),Vc(`hmmss`,0,0,function(){return``+Qu.apply(this)+Ic(this.minutes(),2)+Ic(this.seconds(),2)}),Vc(`Hmm`,0,0,function(){return``+this.hours()+Ic(this.minutes(),2)}),Vc(`Hmmss`,0,0,function(){return``+this.hours()+Ic(this.minutes(),2)+Ic(this.seconds(),2)});function ed(e,t){Vc(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}ed(`a`,!0),ed(`A`,!1);function td(e,t){return t._meridiemParse}Dl(`a`,td),Dl(`A`,td),Dl(`H`,fl,Tl),Dl(`h`,fl,wl),Dl(`k`,fl,wl),Dl(`HH`,fl,cl),Dl(`hh`,fl,cl),Dl(`kk`,fl,cl),Dl(`hmm`,pl),Dl(`hmmss`,ml),Dl(`Hmm`,pl),Dl(`Hmmss`,ml),Pl([`H`,`HH`],Vl),Pl([`k`,`kk`],function(e,t,n){var r=Ml(e);t[Vl]=r===24?0:r}),Pl([`a`,`A`],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),Pl([`h`,`hh`],function(e,t,n){t[Vl]=Ml(e),gc(n).bigHour=!0}),Pl(`hmm`,function(e,t,n){var r=e.length-2;t[Vl]=Ml(e.substr(0,r)),t[Hl]=Ml(e.substr(r)),gc(n).bigHour=!0}),Pl(`hmmss`,function(e,t,n){var r=e.length-4,i=e.length-2;t[Vl]=Ml(e.substr(0,r)),t[Hl]=Ml(e.substr(r,2)),t[Ul]=Ml(e.substr(i)),gc(n).bigHour=!0}),Pl(`Hmm`,function(e,t,n){var r=e.length-2;t[Vl]=Ml(e.substr(0,r)),t[Hl]=Ml(e.substr(r))}),Pl(`Hmmss`,function(e,t,n){var r=e.length-4,i=e.length-2;t[Vl]=Ml(e.substr(0,r)),t[Hl]=Ml(e.substr(r,2)),t[Ul]=Ml(e.substr(i))});function nd(e){return(e+``).toLowerCase().charAt(0)===`p`}var rd=/[ap]\.?m?\.?/i,id=Xl(`Hours`,!0);function ad(e,t,n){return e>11?n?`pm`:`PM`:n?`am`:`AM`}var od={calendar:Pc,longDateFormat:Kc,invalidDate:Jc,ordinal:Xc,dayOfMonthOrdinalParse:Zc,relativeTime:$c,months:iu,monthsShort:au,week:Eu,weekdays:Pu,weekdaysMin:Iu,weekdaysShort:Fu,meridiemParse:rd},sd={},cd={},ld;function ud(e,t){var n,r=Math.min(e.length,t.length);for(n=0;n0;){if(i=md(a.slice(0,n).join(`-`)),i)return i;if(r&&r.length>=n&&ud(a,r)>=n-1)break;n--}t++}return ld}function pd(e){return!!(e&&e.match(`^[^/\\\\]*$`))}function md(e){var t=null,n;if(sd[e]===void 0&&typeof module<`u`&&module&&module.exports&&pd(e))try{t=ld._abbr,n=require,n(`./locale/`+e),hd(t)}catch{sd[e]=null}return sd[e]}function hd(e,t){var n;return e&&(n=lc(t)?vd(e):gd(e,t),n?ld=n:typeof console<`u`&&console.warn&&console.warn(`Locale `+e+` not found. Did you forget to load it?`)),ld._abbr}function gd(e,t){if(t!==null){var n,r=od;if(t.abbr=e,sd[e]!=null)Oc(`defineLocaleOverride`,`use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info.`),r=sd[e]._config;else if(t.parentLocale!=null)if(sd[t.parentLocale]!=null)r=sd[t.parentLocale]._config;else if(n=md(t.parentLocale),n!=null)r=n._config;else return cd[t.parentLocale]||(cd[t.parentLocale]=[]),cd[t.parentLocale].push({name:e,config:t}),null;return sd[e]=new Mc(jc(r,t)),cd[e]&&cd[e].forEach(function(e){gd(e.name,e.config)}),hd(e),sd[e]}else return delete sd[e],null}function _d(e,t){if(t!=null){var n,r,i=od;sd[e]!=null&&sd[e].parentLocale!=null?sd[e].set(jc(sd[e]._config,t)):(r=md(e),r!=null&&(i=r._config),t=jc(i,t),r??(t.abbr=e),n=new Mc(t),n.parentLocale=sd[e],sd[e]=n),hd(e)}else sd[e]!=null&&(sd[e].parentLocale==null?sd[e]!=null&&delete sd[e]:(sd[e]=sd[e].parentLocale,e===hd()&&hd(e)));return sd[e]}function vd(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return ld;if(!ac(e)){if(t=md(e),t)return t;e=[e]}return fd(e)}function yd(){return Nc(sd)}function bd(e){var t,n=e._a;return n&&gc(e).overflow===-2&&(t=n[zl]<0||n[zl]>11?zl:n[Bl]<1||n[Bl]>ru(n[Rl],n[zl])?Bl:n[Vl]<0||n[Vl]>24||n[Vl]===24&&(n[Hl]!==0||n[Ul]!==0||n[Wl]!==0)?Vl:n[Hl]<0||n[Hl]>59?Hl:n[Ul]<0||n[Ul]>59?Ul:n[Wl]<0||n[Wl]>999?Wl:-1,gc(e)._overflowDayOfYear&&(tBl)&&(t=Bl),gc(e)._overflowWeeks&&t===-1&&(t=Gl),gc(e)._overflowWeekday&&t===-1&&(t=Kl),gc(e).overflow=t),e}var xd=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Sd=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Cd=/Z|[+-]\d\d(?::?\d\d)?/,wd=[[`YYYYYY-MM-DD`,/[+-]\d{6}-\d\d-\d\d/],[`YYYY-MM-DD`,/\d{4}-\d\d-\d\d/],[`GGGG-[W]WW-E`,/\d{4}-W\d\d-\d/],[`GGGG-[W]WW`,/\d{4}-W\d\d/,!1],[`YYYY-DDD`,/\d{4}-\d{3}/],[`YYYY-MM`,/\d{4}-\d\d/,!1],[`YYYYYYMMDD`,/[+-]\d{10}/],[`YYYYMMDD`,/\d{8}/],[`GGGG[W]WWE`,/\d{4}W\d{3}/],[`GGGG[W]WW`,/\d{4}W\d{2}/,!1],[`YYYYDDD`,/\d{7}/],[`YYYYMM`,/\d{6}/,!1],[`YYYY`,/\d{4}/,!1]],Td=[[`HH:mm:ss.SSSS`,/\d\d:\d\d:\d\d\.\d+/],[`HH:mm:ss,SSSS`,/\d\d:\d\d:\d\d,\d+/],[`HH:mm:ss`,/\d\d:\d\d:\d\d/],[`HH:mm`,/\d\d:\d\d/],[`HHmmss.SSSS`,/\d\d\d\d\d\d\.\d+/],[`HHmmss,SSSS`,/\d\d\d\d\d\d,\d+/],[`HHmmss`,/\d\d\d\d\d\d/],[`HHmm`,/\d\d\d\d/],[`HH`,/\d\d/]],Ed=/^\/?Date\((-?\d+)/i,Dd=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Od={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function kd(e){var t,n,r=e._i,i=xd.exec(r)||Sd.exec(r),a,o,s,c,l=wd.length,u=Td.length;if(i){for(gc(e).iso=!0,t=0,n=l;tql(o)||e._dayOfYear===0)&&(gc(e)._overflowDayOfYear=!0),n=bu(o,0,e._dayOfYear),e._a[zl]=n.getUTCMonth(),e._a[Bl]=n.getUTCDate()),t=0;t<3&&e._a[t]==null;++t)e._a[t]=r[t]=i[t];for(;t<7;t++)e._a[t]=r[t]=e._a[t]==null?+(t===2):e._a[t];e._a[Vl]===24&&e._a[Hl]===0&&e._a[Ul]===0&&e._a[Wl]===0&&(e._nextDay=!0,e._a[Vl]=0),e._d=(e._useUTC?bu:yu).apply(null,r),a=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Vl]=24),e._w&&e._w.d!==void 0&&e._w.d!==a&&(gc(e).weekdayMismatch=!0)}}function Bd(e){var t=e._w,n,r,i,a,o,s,c,l;t.GG!=null||t.W!=null||t.E!=null?(a=1,o=4,n=Ld(t.GG,e._a[Rl],Cu(Yd(),1,4).year),r=Ld(t.W,1),i=Ld(t.E,1),(i<1||i>7)&&(c=!0)):(a=e._locale._week.dow,o=e._locale._week.doy,l=Cu(Yd(),a,o),n=Ld(t.gg,e._a[Rl],l.year),r=Ld(t.w,l.week),t.d==null?t.e==null?i=a:(i=t.e+a,(t.e<0||t.e>6)&&(c=!0)):(i=t.d,(i<0||i>6)&&(c=!0))),r<1||r>wu(n,a,o)?gc(e)._overflowWeeks=!0:c==null?(s=Su(n,r,i,a,o),e._a[Rl]=s.year,e._dayOfYear=s.dayOfYear):gc(e)._overflowWeekday=!0}rc.ISO_8601=function(){},rc.RFC_2822=function(){};function Vd(e){if(e._f===rc.ISO_8601){kd(e);return}if(e._f===rc.RFC_2822){Fd(e);return}e._a=[],gc(e).empty=!0;var t=``+e._i,n,r,i,a,o,s=t.length,c=0,l,u;for(i=Gc(e._f,e._locale).match(Lc)||[],u=i.length,n=0;n0&&gc(e).unusedInput.push(o),t=t.slice(t.indexOf(r)+r.length),c+=r.length),Bc[a]?(r?gc(e).empty=!1:gc(e).unusedTokens.push(a),Il(a,r,e)):e._strict&&!r&&gc(e).unusedTokens.push(a);gc(e).charsLeftOver=s-c,t.length>0&&gc(e).unusedInput.push(t),e._a[Vl]<=12&&gc(e).bigHour===!0&&e._a[Vl]>0&&(gc(e).bigHour=void 0),gc(e).parsedDateParts=e._a.slice(0),gc(e).meridiem=e._meridiem,e._a[Vl]=Hd(e._locale,e._a[Vl],e._meridiem),l=gc(e).era,l!==null&&(e._a[Rl]=e._locale.erasConvertYear(l,e._a[Rl])),zd(e),bd(e)}function Hd(e,t,n){var r;return n==null?t:e.meridiemHour==null?e.isPM==null?t:(r=e.isPM(n),r&&t<12&&(t+=12),!r&&t===12&&(t=0),t):e.meridiemHour(t,n)}function Ud(e){var t,n,r,i,a,o,s=!1,c=e._f.length;if(c===0){gc(e).invalidFormat=!0,e._d=new Date(NaN);return}for(i=0;ithis?this:e:yc()});function Qd(e,t){var n,r;if(t.length===1&&ac(t[0])&&(t=t[0]),!t.length)return Yd();for(n=t[0],r=1;rthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Cf(){if(!lc(this._isDSTShifted))return this._isDSTShifted;var e={},t;return Sc(e,this),e=Kd(e),e._a?(t=e._isUTC?mc(e._a):Yd(e._a),this._isDSTShifted=this.isValid()&&uf(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function wf(){return this.isValid()?!this._isUTC:!1}function Tf(){return this.isValid()?this._isUTC:!1}function Ef(){return this.isValid()?this._isUTC&&this._offset===0:!1}var Df=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,Of=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function kf(e,t){var n=e,r=null,i,a,o;return cf(e)?n={ms:e._milliseconds,d:e._days,M:e._months}:uc(e)||!isNaN(+e)?(n={},t?n[t]=+e:n.milliseconds=+e):(r=Df.exec(e))?(i=r[1]===`-`?-1:1,n={y:0,d:Ml(r[Bl])*i,h:Ml(r[Vl])*i,m:Ml(r[Hl])*i,s:Ml(r[Ul])*i,ms:Ml(lf(r[Wl]*1e3))*i}):(r=Of.exec(e))?(i=r[1]===`-`?-1:1,n={y:Af(r[2],i),M:Af(r[3],i),w:Af(r[4],i),d:Af(r[5],i),h:Af(r[6],i),m:Af(r[7],i),s:Af(r[8],i)}):n==null?n={}:typeof n==`object`&&(`from`in n||`to`in n)&&(o=Mf(Yd(n.from),Yd(n.to)),n={},n.ms=o.milliseconds,n.M=o.months),a=new sf(n),cf(e)&&sc(e,`_locale`)&&(a._locale=e._locale),cf(e)&&sc(e,`_isValid`)&&(a._isValid=e._isValid),a}kf.fn=sf.prototype,kf.invalid=of;function Af(e,t){var n=e&&parseFloat(e.replace(`,`,`.`));return(isNaN(n)?0:n)*t}function jf(e,t){var n={};return n.months=t.month()-e.month()+(t.year()-e.year())*12,e.clone().add(n.months,`M`).isAfter(t)&&--n.months,n.milliseconds=t-+e.clone().add(n.months,`M`),n}function Mf(e,t){var n;return e.isValid()&&t.isValid()?(t=mf(t,e),e.isBefore(t)?n=jf(e,t):(n=jf(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Nf(e,t){return function(n,r){var i,a;return r!==null&&!isNaN(+r)&&(Oc(t,`moment().`+t+`(period, number) is deprecated. Please use moment().`+t+`(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.`),a=n,n=r,r=a),i=kf(n,r),Pf(this,i,e),this}}function Pf(e,t,n,r){var i=t._milliseconds,a=lf(t._days),o=lf(t._months);e.isValid()&&(r??=!0,o&&pu(e,Zl(e,`Month`)+o*n),a&&Ql(e,`Date`,Zl(e,`Date`)+a*n),i&&e._d.setTime(e._d.valueOf()+i*n),r&&rc.updateOffset(e,a||o))}var Ff=Nf(1,`add`),If=Nf(-1,`subtract`);function Lf(e){return typeof e==`string`||e instanceof String}function Rf(e){return wc(e)||dc(e)||Lf(e)||uc(e)||Bf(e)||zf(e)||e==null}function zf(e){var t=oc(e)&&!cc(e),n=!1,r=[`years`,`year`,`y`,`months`,`month`,`M`,`days`,`day`,`d`,`dates`,`date`,`D`,`hours`,`hour`,`h`,`minutes`,`minute`,`m`,`seconds`,`second`,`s`,`milliseconds`,`millisecond`,`ms`],i,a,o=r.length;for(i=0;in.valueOf():n.valueOf()9999?Wc(n,t?`YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]`:`YYYYYY-MM-DD[T]HH:mm:ss.SSSZ`):kc(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace(`Z`,Wc(n,`Z`)):Wc(n,t?`YYYY-MM-DD[T]HH:mm:ss.SSS[Z]`:`YYYY-MM-DD[T]HH:mm:ss.SSSZ`)}function tp(){if(!this.isValid())return`moment.invalid(/* `+this._i+` */)`;var e=`moment`,t=``,n,r,i,a;return this.isLocal()||(e=this.utcOffset()===0?`moment.utc`:`moment.parseZone`,t=`Z`),n=`[`+e+`("]`,r=0<=this.year()&&this.year()<=9999?`YYYY`:`YYYYYY`,i=`-MM-DD[T]HH:mm:ss.SSS`,a=t+`[")]`,this.format(n+r+i+a)}function np(e){e||=this.isUtc()?rc.defaultFormatUtc:rc.defaultFormat;var t=Wc(this,e);return this.localeData().postformat(t)}function rp(e,t){return this.isValid()&&(wc(e)&&e.isValid()||Yd(e).isValid())?kf({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ip(e){return this.from(Yd(),e)}function ap(e,t){return this.isValid()&&(wc(e)&&e.isValid()||Yd(e).isValid())?kf({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function op(e){return this.to(Yd(),e)}function sp(e){var t;return e===void 0?this._locale._abbr:(t=vd(e),t!=null&&(this._locale=t),this)}var cp=Ec(`moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.`,function(e){return e===void 0?this.localeData():this.locale(e)});function lp(){return this._locale}var up=1e3,dp=60*up,fp=60*dp,pp=146097*24*fp;function mp(e,t){return(e%t+t)%t}function hp(e,t,n){return e<100&&e>=0?new Date(e+400,t,n)-pp:new Date(e,t,n).valueOf()}function gp(e,t,n){return e<100&&e>=0?Date.UTC(e+400,t,n)-pp:Date.UTC(e,t,n)}function _p(e){var t,n;if(e=rl(e),e===void 0||e===`millisecond`||!this.isValid())return this;switch(n=this._isUTC?gp:hp,e){case`year`:t=n(this.year(),0,1);break;case`quarter`:t=n(this.year(),this.month()-this.month()%3,1);break;case`month`:t=n(this.year(),this.month(),1);break;case`week`:t=n(this.year(),this.month(),this.date()-this.weekday());break;case`isoWeek`:t=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case`day`:case`date`:t=n(this.year(),this.month(),this.date());break;case`hour`:t=this._d.valueOf(),t-=mp(t+(this._isUTC?0:this.utcOffset()*dp),fp);break;case`minute`:t=this._d.valueOf(),t-=mp(t,dp);break;case`second`:t=this._d.valueOf(),t-=mp(t,up);break}return this._d.setTime(t),rc.updateOffset(this,!0),this}function vp(e){var t,n;if(e=rl(e),e===void 0||e===`millisecond`||!this.isValid())return this;switch(n=this._isUTC?gp:hp,e){case`year`:t=n(this.year()+1,0,1)-1;break;case`quarter`:t=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case`month`:t=n(this.year(),this.month()+1,1)-1;break;case`week`:t=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case`isoWeek`:t=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case`day`:case`date`:t=n(this.year(),this.month(),this.date()+1)-1;break;case`hour`:t=this._d.valueOf(),t+=fp-mp(t+(this._isUTC?0:this.utcOffset()*dp),fp)-1;break;case`minute`:t=this._d.valueOf(),t+=dp-mp(t,dp)-1;break;case`second`:t=this._d.valueOf(),t+=up-mp(t,up)-1;break}return this._d.setTime(t),rc.updateOffset(this,!0),this}function yp(){return this._d.valueOf()-(this._offset||0)*6e4}function bp(){return Math.floor(this.valueOf()/1e3)}function xp(){return new Date(this.valueOf())}function Sp(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function Cp(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function wp(){return this.isValid()?this.toISOString():null}function Tp(){return vc(this)}function Ep(){return pc({},gc(this))}function Dp(){return gc(this).overflow}function Op(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}Vc(`N`,0,0,`eraAbbr`),Vc(`NN`,0,0,`eraAbbr`),Vc(`NNN`,0,0,`eraAbbr`),Vc(`NNNN`,0,0,`eraName`),Vc(`NNNNN`,0,0,`eraNarrow`),Vc(`y`,[`y`,1],`yo`,`eraYear`),Vc(`y`,[`yy`,2],0,`eraYear`),Vc(`y`,[`yyy`,3],0,`eraYear`),Vc(`y`,[`yyyy`,4],0,`eraYear`),Dl(`N`,zp),Dl(`NN`,zp),Dl(`NNN`,zp),Dl(`NNNN`,Bp),Dl(`NNNNN`,Vp),Pl([`N`,`NN`,`NNN`,`NNNN`,`NNNNN`],function(e,t,n,r){var i=n._locale.erasParse(e,r,n._strict);i?gc(n).era=i:gc(n).invalidEra=e}),Dl(`y`,vl),Dl(`yy`,vl),Dl(`yyy`,vl),Dl(`yyyy`,vl),Dl(`yo`,Hp),Pl([`y`,`yy`,`yyy`,`yyyy`],Rl),Pl([`yo`],function(e,t,n,r){var i;n._locale._eraYearOrdinalRegex&&(i=e.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?t[Rl]=n._locale.eraYearOrdinalParse(e,i):t[Rl]=parseInt(e,10)});function kp(e,t){var n,r,i,a=this._eras||vd(`en`)._eras;for(n=0,r=a.length;n=0)return a[r]}function jp(e,t){var n=e.since<=e.until?1:-1;return t===void 0?rc(e.since).year():rc(e.since).year()+(t-e.offset)*n}function Mp(){var e,t,n,r=this.localeData().eras();for(e=0,t=r.length;ea&&(t=a),Qp.call(this,e,t,n,r,i))}function Qp(e,t,n,r,i){var a=Su(e,t,n,r,i),o=bu(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}Vc(`Q`,0,`Qo`,`quarter`),Dl(`Q`,sl),Pl(`Q`,function(e,t){t[zl]=(Ml(e)-1)*3});function $p(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}Vc(`D`,[`DD`,2],`Do`,`date`),Dl(`D`,fl,wl),Dl(`DD`,fl,cl),Dl(`Do`,function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),Pl([`D`,`DD`],Bl),Pl(`Do`,function(e,t){t[Bl]=Ml(e.match(fl)[0])});var em=Xl(`Date`,!0);Vc(`DDD`,[`DDDD`,3],`DDDo`,`dayOfYear`),Dl(`DDD`,hl),Dl(`DDDD`,ll),Pl([`DDD`,`DDDD`],function(e,t,n){n._dayOfYear=Ml(e)});function tm(e){var t=Math.round((this.clone().startOf(`day`)-this.clone().startOf(`year`))/864e5)+1;return e==null?t:this.add(e-t,`d`)}Vc(`m`,[`mm`,2],0,`minute`),Dl(`m`,fl,Tl),Dl(`mm`,fl,cl),Pl([`m`,`mm`],Hl);var nm=Xl(`Minutes`,!1);Vc(`s`,[`ss`,2],0,`second`),Dl(`s`,fl,Tl),Dl(`ss`,fl,cl),Pl([`s`,`ss`],Ul);var rm=Xl(`Seconds`,!1);Vc(`S`,0,0,function(){return~~(this.millisecond()/100)}),Vc(0,[`SS`,2],0,function(){return~~(this.millisecond()/10)}),Vc(0,[`SSS`,3],0,`millisecond`),Vc(0,[`SSSS`,4],0,function(){return this.millisecond()*10}),Vc(0,[`SSSSS`,5],0,function(){return this.millisecond()*100}),Vc(0,[`SSSSSS`,6],0,function(){return this.millisecond()*1e3}),Vc(0,[`SSSSSSS`,7],0,function(){return this.millisecond()*1e4}),Vc(0,[`SSSSSSSS`,8],0,function(){return this.millisecond()*1e5}),Vc(0,[`SSSSSSSSS`,9],0,function(){return this.millisecond()*1e6}),Dl(`S`,hl,sl),Dl(`SS`,hl,cl),Dl(`SSS`,hl,ll);var im,am;for(im=`SSSS`;im.length<=9;im+=`S`)Dl(im,vl);function om(e,t){t[Wl]=Ml((`0.`+e)*1e3)}for(im=`S`;im.length<=9;im+=`S`)Pl(im,om);am=Xl(`Milliseconds`,!1),Vc(`z`,0,0,`zoneAbbr`),Vc(`zz`,0,0,`zoneName`);function sm(){return this._isUTC?`UTC`:``}function cm(){return this._isUTC?`Coordinated Universal Time`:``}var Y=Cc.prototype;Y.add=Ff,Y.calendar=Uf,Y.clone=Wf,Y.diff=Zf,Y.endOf=vp,Y.format=np,Y.from=rp,Y.fromNow=ip,Y.to=ap,Y.toNow=op,Y.get=$l,Y.invalidAt=Dp,Y.isAfter=Gf,Y.isBefore=Kf,Y.isBetween=qf,Y.isSame=Jf,Y.isSameOrAfter=Yf,Y.isSameOrBefore=Xf,Y.isValid=Tp,Y.lang=cp,Y.locale=sp,Y.localeData=lp,Y.max=Zd,Y.min=Xd,Y.parsingFlags=Ep,Y.set=eu,Y.startOf=_p,Y.subtract=If,Y.toArray=Sp,Y.toObject=Cp,Y.toDate=xp,Y.toISOString=ep,Y.inspect=tp,typeof Symbol<`u`&&Symbol.for!=null&&(Y[Symbol.for(`nodejs.util.inspect.custom`)]=function(){return`Moment<`+this.format()+`>`}),Y.toJSON=wp,Y.toString=$f,Y.unix=bp,Y.valueOf=yp,Y.creationData=Op,Y.eraName=Mp,Y.eraNarrow=Np,Y.eraAbbr=Pp,Y.eraYear=Fp,Y.year=Jl,Y.isLeapYear=Yl,Y.weekYear=Gp,Y.isoWeekYear=Kp,Y.quarter=Y.quarters=$p,Y.month=mu,Y.daysInMonth=hu,Y.week=Y.weeks=ku,Y.isoWeek=Y.isoWeeks=Au,Y.weeksInYear=Yp,Y.weeksInWeekYear=Xp,Y.isoWeeksInYear=qp,Y.isoWeeksInISOWeekYear=Jp,Y.date=em,Y.day=Y.days=Gu,Y.weekday=Ku,Y.isoWeekday=qu,Y.dayOfYear=tm,Y.hour=Y.hours=id,Y.minute=Y.minutes=nm,Y.second=Y.seconds=rm,Y.millisecond=Y.milliseconds=am,Y.utcOffset=gf,Y.utc=vf,Y.local=yf,Y.parseZone=bf,Y.hasAlignedHourOffset=xf,Y.isDST=Sf,Y.isLocal=wf,Y.isUtcOffset=Tf,Y.isUtc=Ef,Y.isUTC=Ef,Y.zoneAbbr=sm,Y.zoneName=cm,Y.dates=Ec(`dates accessor is deprecated. Use date instead.`,em),Y.months=Ec(`months accessor is deprecated. Use month instead`,mu),Y.years=Ec(`years accessor is deprecated. Use year instead`,Jl),Y.zone=Ec(`moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/`,_f),Y.isDSTShifted=Ec(`isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information`,Cf);function lm(e){return Yd(e*1e3)}function um(){return Yd.apply(null,arguments).parseZone()}function dm(e){return e}var fm=Mc.prototype;fm.calendar=Fc,fm.longDateFormat=qc,fm.invalidDate=Yc,fm.ordinal=Qc,fm.preparse=dm,fm.postformat=dm,fm.relativeTime=el,fm.pastFuture=tl,fm.set=Ac,fm.eras=kp,fm.erasParse=Ap,fm.erasConvertYear=jp,fm.erasAbbrRegex=Lp,fm.erasNameRegex=Ip,fm.erasNarrowRegex=Rp,fm.months=lu,fm.monthsShort=uu,fm.monthsParse=fu,fm.monthsRegex=_u,fm.monthsShortRegex=gu,fm.week=Tu,fm.firstDayOfYear=Ou,fm.firstDayOfWeek=Du,fm.weekdays=Bu,fm.weekdaysMin=Hu,fm.weekdaysShort=Vu,fm.weekdaysParse=Wu,fm.weekdaysRegex=Ju,fm.weekdaysShortRegex=Yu,fm.weekdaysMinRegex=Xu,fm.isPM=nd,fm.meridiem=ad;function pm(e,t,n,r){var i=vd(),a=mc().set(r,t);return i[n](a,e)}function mm(e,t,n){if(uc(e)&&(t=e,e=void 0),e||=``,t!=null)return pm(e,t,n,`month`);var r,i=[];for(r=0;r<12;r++)i[r]=pm(e,r,n,`month`);return i}function hm(e,t,n,r){typeof e==`boolean`?(uc(t)&&(n=t,t=void 0),t||=``):(t=e,n=t,e=!1,uc(t)&&(n=t,t=void 0),t||=``);var i=vd(),a=e?i._week.dow:0,o,s=[];if(n!=null)return pm(t,(n+a)%7,r,`day`);for(o=0;o<7;o++)s[o]=pm(t,(o+a)%7,r,`day`);return s}function gm(e,t){return mm(e,t,`months`)}function _m(e,t){return mm(e,t,`monthsShort`)}function vm(e,t,n){return hm(e,t,n,`weekdays`)}function ym(e,t,n){return hm(e,t,n,`weekdaysShort`)}function bm(e,t,n){return hm(e,t,n,`weekdaysMin`)}hd(`en`,{eras:[{since:`0001-01-01`,until:1/0,offset:1,name:`Anno Domini`,narrow:`AD`,abbr:`AD`},{since:`0000-12-31`,until:-1/0,offset:1,name:`Before Christ`,narrow:`BC`,abbr:`BC`}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(Ml(e%100/10)===1?`th`:t===1?`st`:t===2?`nd`:t===3?`rd`:`th`)}}),rc.lang=Ec(`moment.lang is deprecated. Use moment.locale instead.`,hd),rc.langData=Ec(`moment.langData is deprecated. Use moment.localeData instead.`,vd);var xm=Math.abs;function Sm(){var e=this._data;return this._milliseconds=xm(this._milliseconds),this._days=xm(this._days),this._months=xm(this._months),e.milliseconds=xm(e.milliseconds),e.seconds=xm(e.seconds),e.minutes=xm(e.minutes),e.hours=xm(e.hours),e.months=xm(e.months),e.years=xm(e.years),this}function Cm(e,t,n,r){var i=kf(t,n);return e._milliseconds+=r*i._milliseconds,e._days+=r*i._days,e._months+=r*i._months,e._bubble()}function wm(e,t){return Cm(this,e,t,1)}function Tm(e,t){return Cm(this,e,t,-1)}function Em(e){return e<0?Math.floor(e):Math.ceil(e)}function Dm(){var e=this._milliseconds,t=this._days,n=this._months,r=this._data,i,a,o,s,c;return e>=0&&t>=0&&n>=0||e<=0&&t<=0&&n<=0||(e+=Em(km(n)+t)*864e5,t=0,n=0),r.milliseconds=e%1e3,i=jl(e/1e3),r.seconds=i%60,a=jl(i/60),r.minutes=a%60,o=jl(a/60),r.hours=o%24,t+=jl(o/24),c=jl(Om(t)),n+=c,t-=Em(km(c)),s=jl(n/12),n%=12,r.days=t,r.months=n,r.years=s,this}function Om(e){return e*4800/146097}function km(e){return e*146097/4800}function Am(e){if(!this.isValid())return NaN;var t,n,r=this._milliseconds;if(e=rl(e),e===`month`||e===`quarter`||e===`year`)switch(t=this._days+r/864e5,n=this._months+Om(t),e){case`month`:return n;case`quarter`:return n/3;case`year`:return n/12}else switch(t=this._days+Math.round(km(this._months)),e){case`week`:return t/7+r/6048e5;case`day`:return t+r/864e5;case`hour`:return t*24+r/36e5;case`minute`:return t*1440+r/6e4;case`second`:return t*86400+r/1e3;case`millisecond`:return Math.floor(t*864e5)+r;default:throw Error(`Unknown unit `+e)}}function jm(e){return function(){return this.as(e)}}var Mm=jm(`ms`),Nm=jm(`s`),Pm=jm(`m`),Fm=jm(`h`),Im=jm(`d`),Lm=jm(`w`),Rm=jm(`M`),zm=jm(`Q`),Bm=jm(`y`),Vm=Mm;function Hm(){return kf(this)}function Um(e){return e=rl(e),this.isValid()?this[e+`s`]():NaN}function Wm(e){return function(){return this.isValid()?this._data[e]:NaN}}var Gm=Wm(`milliseconds`),Km=Wm(`seconds`),qm=Wm(`minutes`),Jm=Wm(`hours`),Ym=Wm(`days`),Xm=Wm(`months`),Zm=Wm(`years`);function Qm(){return jl(this.days()/7)}var $m=Math.round,eh={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function th(e,t,n,r,i){return i.relativeTime(t||1,!!n,e,r)}function nh(e,t,n,r){var i=kf(e).abs(),a=$m(i.as(`s`)),o=$m(i.as(`m`)),s=$m(i.as(`h`)),c=$m(i.as(`d`)),l=$m(i.as(`M`)),u=$m(i.as(`w`)),d=$m(i.as(`y`)),f=a<=n.ss&&[`s`,a]||a0,f[4]=r,th.apply(null,f)}function rh(e){return e===void 0?$m:typeof e==`function`?($m=e,!0):!1}function ih(e,t){return eh[e]===void 0?!1:t===void 0?eh[e]:(eh[e]=t,e===`s`&&(eh.ss=t-1),!0)}function ah(e,t){if(!this.isValid())return this.localeData().invalidDate();var n=!1,r=eh,i,a;return typeof e==`object`&&(t=e,e=!1),typeof e==`boolean`&&(n=e),typeof t==`object`&&(r=Object.assign({},eh,t),t.s!=null&&t.ss==null&&(r.ss=t.s-1)),i=this.localeData(),a=nh(this,!n,r,i),n&&(a=i.pastFuture(+this,a)),i.postformat(a)}var oh=Math.abs;function sh(e){return(e>0)-(e<0)||+e}function ch(){if(!this.isValid())return this.localeData().invalidDate();var e=oh(this._milliseconds)/1e3,t=oh(this._days),n=oh(this._months),r,i,a,o,s=this.asSeconds(),c,l,u,d;return s?(r=jl(e/60),i=jl(r/60),e%=60,r%=60,a=jl(n/12),n%=12,o=e?e.toFixed(3).replace(/\.?0+$/,``):``,c=s<0?`-`:``,l=sh(this._months)===sh(s)?``:`-`,u=sh(this._days)===sh(s)?``:`-`,d=sh(this._milliseconds)===sh(s)?``:`-`,c+`P`+(a?l+a+`Y`:``)+(n?l+n+`M`:``)+(t?u+t+`D`:``)+(i||r||e?`T`:``)+(i?d+i+`H`:``)+(r?d+r+`M`:``)+(e?d+o+`S`:``)):`P0D`}var lh=sf.prototype;lh.isValid=af,lh.abs=Sm,lh.add=wm,lh.subtract=Tm,lh.as=Am,lh.asMilliseconds=Mm,lh.asSeconds=Nm,lh.asMinutes=Pm,lh.asHours=Fm,lh.asDays=Im,lh.asWeeks=Lm,lh.asMonths=Rm,lh.asQuarters=zm,lh.asYears=Bm,lh.valueOf=Vm,lh._bubble=Dm,lh.clone=Hm,lh.get=Um,lh.milliseconds=Gm,lh.seconds=Km,lh.minutes=qm,lh.hours=Jm,lh.days=Ym,lh.weeks=Qm,lh.months=Xm,lh.years=Zm,lh.humanize=ah,lh.toISOString=ch,lh.toString=ch,lh.toJSON=ch,lh.locale=sp,lh.localeData=lp,lh.toIsoString=Ec(`toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)`,ch),lh.lang=cp,Vc(`X`,0,0,`unix`),Vc(`x`,0,0,`valueOf`),Dl(`x`,yl),Dl(`X`,Sl),Pl(`X`,function(e,t,n){n._d=new Date(parseFloat(e)*1e3)}),Pl(`x`,function(e,t,n){n._d=new Date(Ml(e))}),rc.version=`2.30.1`,ic(Yd),rc.fn=Y,rc.min=$d,rc.max=ef,rc.now=tf,rc.utc=mc,rc.unix=lm,rc.months=gm,rc.isDate=dc,rc.locale=hd,rc.invalid=yc,rc.duration=kf,rc.isMoment=wc,rc.weekdays=vm,rc.parseZone=um,rc.localeData=vd,rc.isDuration=cf,rc.monthsShort=_m,rc.weekdaysMin=bm,rc.defineLocale=gd,rc.updateLocale=_d,rc.locales=yd,rc.weekdaysShort=ym,rc.normalizeUnits=rl,rc.relativeTimeRounding=rh,rc.relativeTimeThreshold=ih,rc.calendarFormat=Hf,rc.prototype=Y,rc.HTML5_FMT={DATETIME_LOCAL:`YYYY-MM-DDTHH:mm`,DATETIME_LOCAL_SECONDS:`YYYY-MM-DDTHH:mm:ss`,DATETIME_LOCAL_MS:`YYYY-MM-DDTHH:mm:ss.SSS`,DATE:`YYYY-MM-DD`,TIME:`HH:mm`,TIME_SECONDS:`HH:mm:ss`,TIME_MS:`HH:mm:ss.SSS`,WEEK:`GGGG-[W]WW`,MONTH:`YYYY-MM`};var uh=class e{static dateFormat;static stringify(e){return e.format(this.dateFormat)}static parse(t){return rc(t,e.dateFormat)}static getDefaultDate(){return rc(new Date)}static getDefaultDay(){return new Date().getDate()}static getDefaultMonth(){return 1}static getDefaultYear(){return new Date().getFullYear()}},dh=class extends $s{filterValue(e){return hn(e)}getFallbackDefaultValue(){return uh.stringify(uh.getDefaultDate())}getSvelteComponent(){return tc}rawMapValue(e){return e}rawReverseMapValue(e){return e}},fh=q(`
`);function ph(e,t){Yr(t,!0);let n=Ws(t,`iconName`,3,``),r=ea(void 0);Ma(()=>K(r)?t.mb.internal.setIcon(K(r),n()):void 0);var i=qo(),a=W(i),o=e=>{var t=fh();Us(t,e=>na(r,e),()=>K(r)),J(e,t)};ts(a,e=>{n().length>0&&e(o)}),J(e,i),Xr()}var mh=q(`
`);function hh(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(){t.showDatePicker()}function a(e){e.key===` `&&t.showDatePicker()}var o={setValue:r},s=mh(),c=U(s),l=U(c,!0);return H(c),ph(G(c,2),{get mb(){return t.mb},iconName:`calendar`}),H(s),Ra(e=>Jo(l,e),[()=>K(n)?K(n).format(t.dateFormat):`none`]),Io(`click`,s,i),Io(`keydown`,s,a),J(e,s),Xr(o)}Lo([`click`,`keydown`]);var gh=class extends $s{options;constructor(e){super(e),this.options=this.mountable.getArguments(V.OPTION)}filterValue(e){if(e===null)return null;if(e===void 0||typeof e!=`string`)return;let t=uh.parse(e);if(t.isValid())return uh.stringify(t)}getFallbackDefaultValue(){return uh.getDefaultDate()}getSvelteComponent(){return hh}rawMapValue(e){return e===null?null:(console.log(`value`,e,uh.stringify(e),uh.dateFormat),uh.stringify(e))}rawReverseMapValue(e){if(e===null)return null;let t=uh.parse(e);if(t.isValid())return t}getMountArgs(){return{dateFormat:this.mountable.mb.getSettings().preferredDateFormat,showDatePicker:()=>{this.mountable.mb.internal.openDatePickerModal(this.getInternalValue(),e=>this.setInternalValue(e))}}}},_h=q(``);function vh(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}var i={setValue:r},a=_h();return Ms(a),Io(`input`,a,()=>t.onValueChange(Gr(K(n)))),zs(a,()=>K(n),e=>na(n,e)),J(e,a),Xr(i)}Lo([`input`]);var yh=class extends $s{filterValue(e){return hn(e)}getFallbackDefaultValue(){return uh.stringify(uh.getDefaultDate())}getSvelteComponent(){return vh}rawMapValue(e){return e}rawReverseMapValue(e){return e}},bh=q(`
`);function xh(e,t){Yr(t,!0);let n,r;Ks(()=>{r?.()});async function i(e){r?.(),Dt.empty(n),r=await t.mb.internal.renderMarkdown(e,n,t.filePath)}Ma(()=>void i(t.value));var a=bh();Us(a,e=>n=e,()=>n),J(e,a),Xr()}var Sh=q(``),Ch=q(`
`);function wh(e,t){Yr(t,!0);let n=ea(sa(t.value)),r=ea(!1);function i(e){na(n,e,!0)}function a(){na(r,!1)}function o(){na(r,!0)}function s(e){e.key===` `&&o()}var c={setValue:i},l=Ch(),u=U(l),d=e=>{var r=Sh();Sa(r),Io(`focusout`,r,()=>a()),Io(`input`,r,()=>t.onValueChange(Gr(K(n)))),zs(r,()=>K(n),e=>na(n,e)),J(e,r)},f=e=>{xh(e,{get value(){return K(n)},get mb(){return t.mb},get filePath(){return t.filePath}})};return ts(u,e=>{K(r)?e(d):e(f,-1)}),H(l),Io(`click`,l,()=>o()),Fo(`keypress`,l,e=>s(e)),J(e,l),Xr(c)}Lo([`click`,`focusout`,`input`]);var Th=class extends $s{mdUnloadCallback;filterValue(e){return fn(e)?e?.toString():void 0}getFallbackDefaultValue(){return``}getSvelteComponent(){return wh}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{render:(e,t)=>void this.renderInElement(e,t),filePath:this.mountable.getFilePath()}}async renderInElement(e,t){this.mdUnloadCallback?.(),e.innerHTML=``,this.mdUnloadCallback=await this.mountable.mb.internal.renderMarkdown(t,e,this.mountable.getFilePath())}onUnmount(){super.onUnmount(),this.mdUnloadCallback?.()}},Eh=q(``);function Dh(e,t){Yr(t,!0);let n=Ws(t,`variant`,19,()=>Nt.DEFAULT),r=Ws(t,`disabled`,3,!1),i=Ws(t,`tooltip`,3,``),a=Ws(t,`classes`,3,``),o=Ws(t,`onclick`,3,()=>{});var s=Eh();let c;fs(U(s),()=>t.children),H(s),Ra(()=>{c=xs(s,1,`mb-button-inner ${a()??``}`,null,c,{"mod-cta":n()===Nt.PRIMARY,"mod-warning":n()===Nt.DESTRUCTIVE,"mod-plain":n()===Nt.PLAIN,disabled:r()}),Fs(s,`aria-label`,i()),s.disabled=r()}),Io(`click`,s,function(...e){o()?.apply(this,e)}),J(e,s),Xr()}Lo([`click`]);var Oh=q(`
`),kh=q(`
`,1);function Ah(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e){K(n).push(e),t.onValueChange(Gr(K(n)))}function a(e){K(n).splice(e,1),t.onValueChange(Gr(K(n)))}function o(e,r){let i=[];r>0&&i.push({name:`Move left`,icon:`arrow-left`,onclick:()=>{let e=K(n)[r-1];K(n)[r-1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),r{let e=K(n)[r+1];K(n)[r+1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),i.push({name:`Copy image path`,icon:`copy`,onclick:()=>{let e=K(n)[r];navigator.clipboard.writeText(e).then(()=>{t.mb.internal.showNotice(`Image path copied to clipboard`)}).catch(()=>{t.mb.internal.showNotice(`Failed to copy image path to clipboard`)})}}),i.push({name:`Remove`,icon:`x`,warning:!0,onclick:()=>a(r)}),t.mb.internal.createContextMenu(i).showWithEvent(e)}var s={setValue:r,pushValue:i},c=kh(),l=W(c);os(l,21,()=>K(n),ns,(e,n,r)=>{var i=Oh(),a=U(i);H(i),Ra((e,t)=>{Fs(i,`data-value`,e),Fs(a,`src`,t),Fs(a,`alt`,K(n)),Fs(a,`aria-label`,K(n))},[()=>dn(K(n)),()=>t.mb.internal.imagePathToUri(K(n))]),Io(`contextmenu`,i,e=>o(e,r)),J(e,i)}),H(l);var u=G(l,2);return Dh(U(u),{get variant(){return Nt.DEFAULT},onclick:()=>t.showSuggester(),children:(e,t)=>{Ir(),J(e,Ko(`Add new image`))},$$slots:{default:!0}}),H(u),J(e,c),Xr(s)}Lo([`contextmenu`]);var jh=class extends $s{filterValue(e){return pn(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return Ah}rawMapValue(e){return e}rawReverseMapValue(e){return e.map(e=>dn(e)).filter(e=>e!==void 0)}getMountArgs(){return{showSuggester:()=>this.openModal()}}openModal(){this.mountable.mb.internal.openImageSuggesterModal(this,!1,e=>{e!==void 0&&this.svelteWrapper?.getInstance()?.pushValue(e)})}},Mh=q(`
`),Nh=q(`
`);function Ph(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e){let n=[];n.push({name:`Edit`,icon:`pencil`,onclick:()=>{t.showSuggester()}}),n.push({name:`Remove`,icon:`x`,warning:!0,onclick:()=>t.clear()}),t.mb.internal.createContextMenu(n).showWithEvent(e)}var a={setValue:r},o=qo(),s=W(o),c=e=>{var r=Mh(),a=U(r);Dh(G(a,2),{get variant(){return Nt.PLAIN},onclick:e=>i(e),classes:`mb-image-card-button`,children:(e,n)=>{ph(e,{iconName:`ellipsis-vertical`,get mb(){return t.mb}})},$$slots:{default:!0}}),H(r),Ra(e=>{Fs(a,`src`,e),Fs(a,`alt`,K(n)),Fs(a,`aria-label`,K(n))},[()=>t.mb.internal.imagePathToUri(K(n))]),Io(`contextmenu`,r,e=>i(e)),J(e,r)},l=e=>{var n=Nh();Dh(U(n),{get variant(){return Nt.PLAIN},onclick:()=>t.showSuggester(),tooltip:`Select image`,children:(e,t)=>{Ir(),J(e,Ko(`No image selected. Click to select.`))},$$slots:{default:!0}}),H(n),J(e,n)};return ts(s,e=>{K(n)?e(c):e(l,-1)}),J(e,o),Xr(a)}Lo([`contextmenu`]);var Fh=class extends $s{filterValue(e){return fn(e)?e:void 0}getFallbackDefaultValue(){}getSvelteComponent(){return Ph}rawMapValue(e){return e}rawReverseMapValue(e){return dn(e)}getMountArgs(){return{showSuggester:()=>this.openModal(),clear:()=>this.setInternalValue(void 0)}}openModal(){this.mountable.mb.internal.openImageSuggesterModal(this,!0,e=>this.setInternalValue(e))}},Ih=q(` `);function Lh(e,t){Yr(t,!0);let n=Ui(()=>t.mdLink.block?`${t.mdLink.target}#${t.mdLink.block}`:t.mdLink.target),r=Ui(()=>t.mdLink.internal?`internal-link`:`external-link`),i=Ui(()=>t.mdLink.alias?K(n):void 0),a=Ui(()=>t.mdLink.alias?t.mdLink.alias:t.mdLink.block?`${t.mdLink.target} > ${t.mdLink.block}`:t.mdLink.target);var o=Ih(),s=U(o,!0);H(o),Ra(()=>{Fs(o,`data-href`,K(n)),Fs(o,`href`,K(n)),xs(o,1,hs(K(r))),Fs(o,`aria-label`,K(i)),Jo(s,K(a))}),J(e,o),Xr()}var Rh=q(`, `,1),zh=q(` `,1);function Bh(e,t){Yr(t,!0);let n=Ws(t,`elements`,19,()=>[]);var r=zh(),i=W(r);os(i,17,()=>n().slice(0,n().length-1),ns,(e,n)=>{var r=Rh();fs(W(r),()=>t.children,()=>K(n)),Ir(3),J(e,r)}),fs(G(i,2),()=>t.children,()=>n()[n().length-1]),J(e,r),Xr()}var Vh=q(` `),Hh=q(` `),Uh=q(``),Wh=q(``);function Gh(e,t){Yr(t,!0);let n=Ws(t,`value`,3,void 0),r=Ui(()=>yn(n(),!1));var i=qo(),a=W(i),o=e=>{var t=Vh(),n=U(t,!0);H(t),Ra(()=>Jo(n,K(r))),J(e,t)},s=e=>{var t=Uh();Bh(U(t),{get elements(){return K(r)},children:(e,t=Un)=>{var n=qo(),r=W(n),i=e=>{var n=Hh(),r=U(n,!0);H(n),Ra(()=>Jo(r,t())),J(e,n)},a=e=>{Lh(e,{get mdLink(){return t()}})};ts(r,e=>{typeof t()==`string`?e(i):e(a,-1)}),J(e,n)},$$slots:{default:!0}}),H(t),J(e,t)},c=Ui(()=>Array.isArray(K(r))),l=e=>{var t=Wh();Lh(U(t),{get mdLink(){return K(r)}}),H(t),J(e,t)};ts(a,e=>{typeof K(r)==`string`?e(o):K(c)?e(s,1):e(l,-1)}),J(e,i),Xr()}var Kh=q(`
`),qh=q(`
`);function Jh(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e){K(n).push(e),t.onValueChange(Gr(K(n)))}function a(e){K(n).splice(e,1),t.onValueChange(Gr(K(n)))}function o(e){e.key===` `&&t.showInput()}function s(e,r){let i=[];r>0&&i.push({name:`Move left`,icon:`arrow-left`,onclick:()=>{let e=K(n)[r-1];K(n)[r-1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),r{let e=K(n)[r+1];K(n)[r+1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),i.push({name:`Edit`,icon:`pencil`,onclick:()=>{t.mb.internal.openTextPromptModal({title:`Meta Bind List`,subTitle:`Edit the value of a list item.`,value:dn(K(n)[r]),multiline:!1,onSubmit:e=>{K(n)[r]=e,t.onValueChange(Gr(K(n)))},onCancel:()=>{}})}}),i.push({name:`Remove`,icon:`x`,warning:!0,onclick:()=>a(r)}),t.mb.internal.createContextMenu(i).showWithEvent(e)}var c={setValue:r,pushValue:i},l=qh(),u=U(l);os(u,17,()=>K(n),ns,(e,t,n)=>{var r=Kh();Gh(U(r),{get value(){return K(t)}}),H(r),Ra(e=>Fs(r,`data-value`,e),[()=>dn(K(t))]),Io(`contextmenu`,r,e=>s(e,n)),J(e,r)});var d=G(u,2);return ph(G(U(d),2),{get mb(){return t.mb},iconName:`plus`}),H(d),H(l),Io(`click`,d,()=>t.showInput()),Io(`keydown`,d,o),J(e,l),Xr(c)}Lo([`contextmenu`,`click`,`keydown`]);var Yh=class extends $s{filterValue(e){return pn(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return Jh}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showInput:()=>this.openModal()}}openModal(){this.mountable.mb.internal.openTextPromptModal({title:`Meta Bind List`,subTitle:`Create a new List Element.`,value:``,multiline:!1,onSubmit:e=>{this.svelteWrapper?.getInstance()?.pushValue(e)},onCancel:()=>{}})}},Xh=q(`
`),Zh=q(`
`);function Qh(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e){K(n).push(e),t.onValueChange(Gr(K(n)))}function a(e){K(n).splice(e,1),t.onValueChange(Gr(K(n)))}function o(e){if(!t.allowOther){t.showSuggester();return}t.mb.internal.createContextMenu([{name:`From Options`,onclick:()=>t.showSuggester()},{name:`From Text`,onclick:()=>t.showTextPrompt()}]).showWithEvent(e)}function s(e){e.key===` `&&t.showSuggester()}function c(e,r){let i=[];r>0&&i.push({name:`Move left`,icon:`arrow-left`,onclick:()=>{let e=K(n)[r-1];K(n)[r-1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),r{let e=K(n)[r+1];K(n)[r+1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),i.push({name:`Remove`,icon:`x`,warning:!0,onclick:()=>a(r)}),t.mb.internal.createContextMenu(i).showWithEvent(e)}var l={setValue:r,pushValue:i},u=Zh(),d=U(u);os(d,17,()=>K(n),ns,(e,t,n)=>{var r=Xh();Gh(U(r),{get value(){return K(t)}}),H(r),Ra(e=>Fs(r,`data-value`,e),[()=>dn(K(t))]),Io(`contextmenu`,r,e=>c(e,n)),J(e,r)});var f=G(d,2);return ph(G(U(f),2),{get mb(){return t.mb},iconName:`plus`}),H(f),H(u),Io(`click`,f,o),Io(`keydown`,f,s),J(e,u),Xr(l)}Lo([`contextmenu`,`click`,`keydown`]);var $h=class extends $s{filterValue(e){return pn(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return Qh}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showSuggester:()=>this.openModal(),showTextPrompt:()=>this.openTextModal(),allowOther:this.mountable.getArgument(V.ALLOW_OTHER)?.value===!0}}openModal(){this.mountable.mb.internal.openSuggesterModal(this,e=>{this.svelteWrapper?.getInstance()?.pushValue(e.value)})}openTextModal(){this.mountable.mb.internal.openTextPromptModal({title:`Meta Bind List Suggester`,subTitle:`Create a new List Element.`,value:``,multiline:!1,onSubmit:e=>{this.svelteWrapper?.getInstance()?.pushValue(e)},onCancel:()=>{}})}},eg=q(``),tg=q(``);function ng(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(){t.onValueChange(Gr(K(n)))}var a={setValue:r},o=tg();return os(o,21,()=>t.options,ns,(e,t)=>{var n=eg(),r=U(n,!0);H(n);var i={};Ra(()=>{Jo(r,K(t).name),i!==(i=K(t).value)&&(n.value=(n.__value=K(t).value)??``)}),J(e,n)}),H(o),Io(`change`,o,()=>i()),Es(o,()=>K(n),e=>na(n,e)),J(e,o),Xr(a)}Lo([`change`]);var rg=class extends $s{options;constructor(e){super(e),this.options=this.mountable.getArguments(V.OPTION)}filterValue(e){return gn(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return ng}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{options:this.options}}},ig=q(`
`),ag=q(`Empty`),og=q(``),sg=q(``),cg=q(` `),lg=q(`
`,1);function ug(e,t){Yr(t,!0);let n=ea(sa(t.value)),r=ea(``);function i(e){na(n,e,!0)}function a(){K(n).push(K(r)),t.onValueChange(Gr(K(n))),na(r,``)}function o(e){K(n).splice(e,1),t.onValueChange(Gr(K(n)))}function s(e,t){let n=t.toString();return`${e.toString().padStart(n.length,`0`)}/${n}`}function c(e,r){let i=[];r>0&&i.push({name:`Move up`,icon:`arrow-up`,onclick:()=>{let e=K(n)[r-1];K(n)[r-1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),r{let e=K(n)[r+1];K(n)[r+1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),i.push({name:`Edit`,icon:`pencil`,onclick:()=>{t.mb.internal.openTextPromptModal({title:`Meta Bind List`,subTitle:`Edit the value of a list item.`,value:dn(K(n)[r]),multiline:t.multiLine,onSubmit:e=>{K(n)[r]=e,t.onValueChange(Gr(K(n)))},onCancel:()=>{}})}}),i.push({name:`Remove`,icon:`x`,warning:!0,onclick:()=>o(r)}),t.mb.internal.createContextMenu(i).showWithEvent(e)}var l={setValue:i},u=lg(),d=W(u);os(d,21,()=>K(n),ns,(e,t,n)=>{var r=ig();Gh(U(r),{get value(){return K(t)}}),H(r),Ra(e=>Fs(r,`data-value`,e),[()=>dn(K(t))]),Io(`contextmenu`,r,e=>c(e,n)),J(e,r)},e=>{J(e,ag())}),H(d);var f=G(d,2),p=U(f),m=e=>{var n=og();Sa(n),Ra(()=>{Fs(n,`placeholder`,t.placeholder),Fs(n,`maxlength`,t.limit)}),zs(n,()=>K(r),e=>na(r,e)),J(e,n)},h=e=>{var n=sg();Ms(n),Ra(()=>{Fs(n,`placeholder`,t.placeholder),Fs(n,`maxlength`,t.limit)}),Io(`keyup`,n,e=>{e.key===`Enter`&&K(r).length>0&&a()}),zs(n,()=>K(r),e=>na(r,e)),J(e,n)};ts(p,e=>{t.multiLine?e(m):e(h,-1)});var g=G(p,2),_=e=>{var r=cg(),i=U(r,!0);H(r),Ra(e=>{xs(r,1,`mb-content-limit-indicator ${K(n).length>t.limit?`mb-content-limit-indicator-overflow`:``}`),Jo(i,e)},[()=>s(K(n).length,t.limit)]),J(e,r)};ts(g,e=>{t.limit!==void 0&&e(_)});var v=G(g,2);{let e=Ui(()=>!K(r));Dh(v,{onclick:()=>a(),get disabled(){return K(e)},children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`plus`})},$$slots:{default:!0}})}return H(f),J(e,u),Xr(l)}Lo([`contextmenu`,`keyup`]);var dg=class extends $s{filterValue(e){return pn(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return ug}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument(V.PLACEHOLDER)?.value??`New Entry...`,limit:this.mountable.getArgument(V.LIMIT)?.value,multiLine:this.mountable.getArgument(V.MULTI_LINE)?.value===!0}}},fg=q(`
`),pg=q(`Empty`),mg=q(`
`,1);function hg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e){K(n).push(e),t.onValueChange(Gr(K(n)))}function a(e){K(n).splice(e,1),t.onValueChange(Gr(K(n)))}function o(e,r){let i=[];r>0&&i.push({name:`Move up`,icon:`arrow-up`,onclick:()=>{let e=K(n)[r-1];K(n)[r-1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),r{let e=K(n)[r+1];K(n)[r+1]=K(n)[r],K(n)[r]=e,t.onValueChange(Gr(K(n)))}}),i.push({name:`Remove`,icon:`x`,warning:!0,onclick:()=>a(r)}),t.mb.internal.createContextMenu(i).showWithEvent(e)}var s={setValue:r,pushValue:i},c=mg(),l=W(c);os(l,21,()=>K(n),ns,(e,t,n)=>{var r=fg();Gh(U(r),{get value(){return K(t)}}),H(r),Ra(e=>Fs(r,`data-value`,e),[()=>dn(K(t))]),Io(`contextmenu`,r,e=>o(e,n)),J(e,r)},e=>{J(e,pg())}),H(l);var u=G(l,2),d=U(u);Dh(d,{get variant(){return Nt.DEFAULT},onclick:()=>t.showSuggester(),children:(e,t)=>{Ir(),J(e,Ko(`Add new item`))},$$slots:{default:!0}});var f=G(d,2),p=e=>{Dh(e,{get variant(){return Nt.DEFAULT},onclick:()=>t.showTextPrompt(),children:(e,t)=>{Ir(),J(e,Ko(`Add other item`))},$$slots:{default:!0}})};return ts(f,e=>{t.allowOther&&e(p)}),H(u),J(e,c),Xr(s)}Lo([`contextmenu`]);var gg=class extends $s{filterValue(e){return pn(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return hg}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showSuggester:()=>this.openModal(),showTextPrompt:()=>this.openTextModal(),allowOther:this.mountable.getArgument(V.ALLOW_OTHER)?.value===!0}}openModal(){this.mountable.mb.internal.openSuggesterModal(this,e=>{this.svelteWrapper?.getInstance()?.pushValue(e.value)})}openTextModal(){this.mountable.mb.internal.openTextPromptModal({title:`Meta Bind List Suggester`,subTitle:`Create a new List Element.`,value:``,multiline:!1,onSubmit:e=>{this.svelteWrapper?.getInstance()?.pushValue(e)},onCancel:()=>{}})}},_g=q(`
`);function vg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e){K(n).includes(e)?na(n,K(n).filter(t=>t!==e),!0):K(n).push(e),t.onValueChange(Gr(K(n)))}function a(e,t){e.key===` `&&i(t)}var o={setValue:r},s=qo();return os(W(s),17,()=>t.options,ns,(e,t)=>{var r=_g();let o;var s=U(r);Ms(s),Gh(G(s,2),{get value(){return K(t).name}}),H(r),Ra((e,t,n)=>{o=xs(r,1,`mb-select-input-element mb-mod-multi`,null,o,e),Fs(r,`data-value`,t),Ps(s,n)},[()=>({"is-selected":K(n).includes(K(t).value)}),()=>dn(K(t).value),()=>K(n).includes(K(t).value)]),Io(`click`,r,e=>{e.target instanceof HTMLInputElement||i(K(t).value)}),Fo(`keypress`,r,e=>a(e,K(t).value)),Io(`input`,s,()=>i(K(t).value)),J(e,r)}),J(e,s),Xr(o)}Lo([`click`,`input`]);var yg=class extends $s{options;constructor(e){super(e),this.options=this.mountable.getArguments(V.OPTION)}filterValue(e){return pn(e)}getFallbackDefaultValue(){return[]}getSvelteComponent(){return vg}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{options:this.options}}},bg=q(``);function xg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}var i={setValue:r},a=bg();return Ms(a),Ra(()=>Fs(a,`placeholder`,t.placeholder)),Io(`input`,a,()=>t.onValueChange(Gr(K(n)))),zs(a,()=>K(n),e=>na(n,e)),J(e,a),Xr(i)}Lo([`input`]);var Sg=class extends $s{filterValue(e){return mn(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return xg}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument(V.PLACEHOLDER)?.value??`Number`}}},Cg=q(` `,1),wg=q(`
`);function Tg(e,t){Yr(t,!0);let n=ea(sa(t.value)),r=!1,i,a=0,o;function s(e){na(n,e,!0)}function c(e){na(n,e,!0),t.onValueChange(e)}function l(e){return e=ht(e,t.minValue,t.maxValue),_t(e,t.minValue,t.maxValue,0,100)}function u(){r=!0}function d(){r=!1}function f(e){u(),p(e)}function p(e){r&&(e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault(),m(e instanceof TouchEvent?e.touches[0].clientX:e.clientX))}function m(e){let n=i.getBoundingClientRect();e=ht(e,n.left,n.right);let r=_t(e,n.left,n.right,t.minValue,t.maxValue);r=h(r,t.stepSize),c(r)}function h(e,t){return Number.parseFloat((Math.round(e/t)*t).toFixed(10))}function g(e){a<50&&(a+=1);let r=Math.ceil(a/5);(e.key===`ArrowUp`||e.key===`ArrowRight`)&&c(ht(K(n)+r,t.minValue,t.maxValue)),(e.key===`ArrowDown`||e.key===`ArrowLeft`)&&c(ht(K(n)-r,t.minValue,t.maxValue)),window.clearTimeout(o),o=window.setTimeout(()=>a=1,100)}var _={setValue:s},v=wg();Fo(`touchmove`,ua,p,void 0,!1),Fo(`touchcancel`,ua,d),Fo(`touchend`,ua,d),Fo(`mousemove`,ua,p),Fo(`mouseup`,ua,d);var y=U(v),b=G(y,2),x=e=>{var r=Cg(),i=W(r),a=U(i,!0);H(i);var o=G(i,2),s=U(o,!0);H(o);var c=G(o,2),l=U(c,!0);H(c),Ra(()=>{Jo(a,K(n)),Jo(s,t.minValue),Jo(l,t.maxValue)}),J(e,r)};return ts(b,e=>{t.addLabels&&e(x)}),H(v),Us(v,e=>i=e,()=>i),Ra((e,r)=>{Fs(v,`aria-label`,e),Cs(y,r),Fs(y,`aria-valuemin`,t.minValue),Fs(y,`aria-valuemax`,t.maxValue),Fs(y,`aria-valuenow`,K(n))},[()=>K(n).toString(),()=>`width: ${l(K(n))}%`]),Io(`keydown`,v,g),Io(`mousedown`,v,f),Io(`touchstart`,v,f,void 0,!0),Fo(`dragstart`,y,()=>r=!0),J(e,v),Xr(_)}Lo([`keydown`,`mousedown`,`touchstart`]);var Eg=class extends $s{minValue;maxValue;stepSize;constructor(e){if(super(e),this.minValue=this.mountable.getArgument(V.MIN_VALUE)?.value??0,this.maxValue=this.mountable.getArgument(V.MAX_VALUE)?.value??100,this.stepSize=this.mountable.getArgument(V.STEP_SIZE)?.value??1,this.minValue>=this.maxValue)throw new z({errorLevel:P.ERROR,effect:`can not create progress bar input field`,cause:`minValue (${this.maxValue}) must be less than maxValue (${this.maxValue})`})}filterValue(e){return gt(mn(e),this.minValue,this.maxValue)}getFallbackDefaultValue(){return this.minValue}getSvelteComponent(){return Tg}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{minValue:this.minValue,maxValue:this.maxValue,stepSize:this.stepSize,addLabels:(this.mountable.getArgument(V.ADD_LABELS)?.value??!0)===!0}}},Dg=q(`
`);function Og(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e){K(n)===e?na(n,null):na(n,e,!0),t.onValueChange(Gr(K(n)))}function a(e,t){e.key===` `&&i(t)}var o={setValue:r},s=qo();return os(W(s),17,()=>t.options,ns,(e,t)=>{var r=Dg();let o;var s=U(r);Ms(s),Gh(G(s,2),{get value(){return K(t).name}}),H(r),Ra(e=>{o=xs(r,1,`mb-select-input-element`,null,o,{"is-selected":K(t).value===K(n)}),Fs(r,`data-value`,e),Ps(s,K(t).value===K(n))},[()=>dn(K(t).value)]),Io(`click`,r,e=>{e.target instanceof HTMLInputElement||i(K(t).value)}),Fo(`keypress`,r,e=>a(e,K(t).value)),Io(`input`,s,()=>i(K(t).value)),J(e,r)}),J(e,s),Xr(o)}Lo([`click`,`input`]);var kg=class extends $s{options;constructor(e){super(e),this.options=this.mountable.getArguments(V.OPTION)}filterValue(e){return gn(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return Og}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{options:this.options}}},Ag=q(` `),jg=q(` `),Mg=q(` `,1);function Ng(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}var i={setValue:r},a=Mg(),o=W(a),s=e=>{var n=Ag(),r=U(n,!0);H(n),Ra(()=>Jo(r,t.minValue)),J(e,n)};ts(o,e=>{t.addLabels&&e(s)});var c=G(o,2);Ms(c);var l=G(c,2),u=e=>{var n=jg(),r=U(n,!0);H(n),Ra(()=>Jo(r,t.maxValue)),J(e,n)};return ts(l,e=>{t.addLabels&&e(u)}),Ra(e=>{Fs(c,`aria-label`,e),Fs(c,`min`,t.minValue),Fs(c,`max`,t.maxValue),Fs(c,`step`,t.stepSize)},[()=>K(n).toString()]),Io(`input`,c,()=>t.onValueChange(Gr(K(n)))),zs(c,()=>K(n),e=>na(n,e)),J(e,a),Xr(i)}Lo([`input`]);var Pg=class extends $s{minValue;maxValue;stepSize;constructor(e){if(super(e),this.minValue=this.mountable.getArgument(V.MIN_VALUE)?.value??0,this.maxValue=this.mountable.getArgument(V.MAX_VALUE)?.value??100,this.stepSize=this.mountable.getArgument(V.STEP_SIZE)?.value??1,this.minValue>=this.maxValue)throw new z({errorLevel:P.ERROR,effect:`can not create slider input field`,cause:`minValue (${this.maxValue}) must be less than maxValue (${this.maxValue})`})}filterValue(e){return gt(mn(e),this.minValue,this.maxValue)}getFallbackDefaultValue(){return this.minValue}getSvelteComponent(){return Ng}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{minValue:this.minValue,maxValue:this.maxValue,stepSize:this.stepSize,addLabels:this.mountable.getArgument(V.ADD_LABELS)?.value===!0}}},Fg=q(` `),Ig=q(`
`);function Lg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}let i=Ui(()=>K(n)?.toString()??`null`),a=Ui(()=>{if(tn.isLink(K(i)))try{return tn.parseLink(K(i))}catch(e){console.warn(e)}});var o={setValue:r},s=Ig(),c=U(s),l=U(c),u=e=>{Lh(e,{get mdLink(){return K(a)}})},d=e=>{var t=Fg(),n=U(t,!0);H(t),Ra(()=>Jo(n,K(i))),J(e,t)};ts(l,e=>{K(a)===void 0?e(d,-1):e(u)}),H(c);var f=G(c,2);Dh(f,{get variant(){return Nt.PLAIN},get onclick(){return t.showSuggester},children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`list`})},$$slots:{default:!0}});var p=G(f,2),m=e=>{Dh(e,{get variant(){return Nt.PLAIN},get onclick(){return t.showTextPrompt},children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`pencil`})},$$slots:{default:!0}})};return ts(p,e=>{t.allowOther&&e(m)}),H(s),J(e,s),Xr(o)}var Rg=class extends $s{filterValue(e){return gn(e)}getFallbackDefaultValue(){return null}getSvelteComponent(){return Lg}rawMapValue(e){return e}rawReverseMapValue(e){return e}getMountArgs(){return{showSuggester:()=>this.openModal(),showTextPrompt:()=>this.openTextModal(),allowOther:this.mountable.getArgument(V.ALLOW_OTHER)?.value===!0}}openModal(){this.mountable.mb.internal.openSuggesterModal(this,e=>this.setInternalValue(e.value))}openTextModal(){this.mountable.mb.internal.openTextPromptModal({title:`Meta Bind Suggester`,subTitle:`Set the suggester value.`,value:``,multiline:!1,onSubmit:e=>{this.setInternalValue(e)},onCancel:()=>{}})}},zg=q(` `),Bg=q(` `,1);function Vg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(e,t){let n=t.toString();return`${e.toString().padStart(n.length,`0`)}/${n}`}var a={setValue:r},o=Bg(),s=W(o);Ms(s);var c=G(s,2),l=e=>{var r=zg(),a=U(r,!0);H(r),Ra(e=>{xs(r,1,`mb-content-limit-indicator ${K(n).length>t.limit?`mb-content-limit-indicator-overflow`:``}`),Jo(a,e)},[()=>i(K(n).length,t.limit)]),J(e,r)};return ts(c,e=>{t.limit!==void 0&&e(l)}),Ra(()=>{Fs(s,`placeholder`,t.placeholder),Fs(s,`maxlength`,t.limit)}),Io(`input`,s,()=>t.onValueChange(Gr(K(n)))),zs(s,()=>K(n),e=>na(n,e)),J(e,o),Xr(a)}Lo([`input`]);var Hg=class extends $s{filterValue(e){return hn(e)}getFallbackDefaultValue(){return``}getSvelteComponent(){return Vg}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument(V.PLACEHOLDER)?.value??`Text`,limit:this.mountable.getArgument(V.LIMIT)?.value}}},Ug=q(``);function Wg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}var i={setValue:r},a=Ug();return Sa(a),Ra(()=>{Fs(a,`placeholder`,t.placeholder),Fs(a,`maxlength`,t.limit)}),Io(`input`,a,()=>t.onValueChange(Gr(K(n)))),zs(a,()=>K(n),e=>na(n,e)),J(e,a),Xr(i)}Lo([`input`]);var Gg=class extends $s{filterValue(e){return hn(e)}getFallbackDefaultValue(){return``}getSvelteComponent(){return Wg}rawReverseMapValue(e){return e}rawMapValue(e){return e}getMountArgs(){return{placeholder:this.mountable.getArgument(V.PLACEHOLDER)?.value??`Text`,limit:this.mountable.getArgument(V.LIMIT)?.value}}},Kg=q(``);function qg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}var i={setValue:r},a=Kg();return Ms(a),Io(`input`,a,()=>t.onValueChange(Gr(K(n)))),zs(a,()=>K(n),e=>na(n,e)),J(e,a),Xr(i)}Lo([`input`]);var Jg=class extends $s{filterValue(e){return hn(e)}getFallbackDefaultValue(){return`00:00`}getSvelteComponent(){return qg}rawMapValue(e){return e}rawReverseMapValue(e){return e}},Yg=q(`
`);function Xg(e,t){Yr(t,!0);let n=ea(sa(t.value));function r(e){na(n,e,!0)}function i(){na(n,!K(n)),t.onValueChange(Gr(K(n)))}function a(e){e.key===` `&&i()}var o={setValue:r},s=Yg();let c;var l=U(s);return Ms(l),H(s),Ra(()=>{c=xs(s,1,`checkbox-container`,null,c,{"is-enabled":K(n)}),Fs(s,`aria-checked`,K(n)),Ps(l,K(n))}),Io(`click`,s,()=>i()),Io(`keydown`,s,e=>a(e)),J(e,s),Xr(o)}Lo([`click`,`keydown`]);var Zg=class extends $s{onValue;offValue;constructor(e){super(e),this.onValue=this.mountable.getArgument(V.ON_VALUE)?.value??!0,this.offValue=this.mountable.getArgument(V.OFF_VALUE)?.value??!1}filterValue(e){return e===this.onValue||e===this.offValue?gn(e):void 0}getFallbackDefaultValue(){return!1}getSvelteComponent(){return Xg}rawReverseMapValue(e){return e===this.onValue?!0:(this.offValue,!1)}rawMapValue(e){return e?this.onValue:this.offValue}},Qg=class{static linkToInputField(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/inputfields/${e.toLowerCase()}/`}static linkToInputFieldArgument(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/inputfieldarguments/${e.toLowerCase()}/`}static linkToViewField(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/viewfields/${e.toLowerCase()}/`}static linkToViewFieldArgument(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/reference/viewfieldarguments/${e.toLowerCase()}/`}static linkToInputFields(){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/inputfields/`}static linkToViewFields(){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/viewfields/`}static linkToButtons(){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/buttons/#button-configuration`}static linkToButtonConfig(){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/buttons/#button-configuration`}static linkToSearch(e){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/?s=${encodeURIComponent(e)}`}static linkToHome(){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/`}static linkToGithub(){return`https://github.com/mProjectsCode/obsidian-meta-bind-plugin`}static linkToIssues(){return`https://github.com/mProjectsCode/obsidian-meta-bind-plugin/issues`}static linkToCanaryBuilds(){return`https://www.moritzjung.dev/obsidian-meta-bind-plugin-docs/guides/installation/#canary-builds`}static open(e){wt(e)}},$g=class{mb;constructor(e){this.mb=e}createInputField(e){let t=e.declaration.inputFieldType,n=e.renderChildType;if(t!==B.INVALID&&this.checkRenderChildTypeAllowed(t,n),t===B.TOGGLE)return new Zg(e);if(t===B.SLIDER)return new Pg(e);if(t===B.TEXT)return new Hg(e);if(t===B.TEXT_AREA)return new Gg(e);if(t===B.SELECT)return new kg(e);if(t===B.MULTI_SELECT)return new yg(e);if(t===B.DATE_PICKER)return new gh(e);if(t===B.NUMBER)return new Sg(e);if(t===B.SUGGESTER)return new Rg(e);if(t===B.EDITOR)return new Th(e);if(t===B.PROGRESS_BAR)return new Eg(e);if(t===B.INLINE_SELECT)return new rg(e);if(t===B.IMAGE_SUGGESTER)return new Fh(e);if(t===B.LIST)return new dg(e);if(t===B.LIST_SUGGESTER)return new gg(e);if(t===B.DATE)return new dh(e);if(t===B.TIME)return new Jg(e);if(t===B.INLINE_LIST_SUGGESTER)return new $h(e);if(t===B.INLINE_LIST)return new Yh(e);if(t===B.IMAGE_LIST_SUGGESTER)return new jh(e);if(t===B.DATE_TIME)return new yh(e)}checkRenderChildTypeAllowed(e,t){if(this.mb.getSettings().ignoreCodeBlockRestrictions)return;let n=En[e];if(t===A.BLOCK&&!n.allowInBlock)throw new ee({errorLevel:P.ERROR,effect:`can not create input field`,cause:`input fields of type '${e}' are not allowed inside of code blocks`,docs:[Qg.linkToInputField(e)]});if(t===A.INLINE&&!n.allowInline)throw new ee({errorLevel:P.ERROR,effect:`can not create input field`,cause:`input fields of type '${e}' are not allowed inside of inline code blocks`,docs:[Qg.linkToInputField(e)]})}},e_=class extends Ys{mb;mountable;metadataSubscription;variables;hidden;constructor(e){super(),this.mountable=e,this.mb=e.mb,this.variables=[],this.hidden=!1}async initialRender(e){Dt.addClass(e,`mb-view-text`),this.hidden=this.mountable.getArgument(An.HIDDEN)?.value??!1,this.hidden&&Dt.addClass(e,`mb-view-hidden`),await this.onInitialRender(e)}async rerender(e,t){this.hidden||await this.onRerender(e,t)}onMount(e){this.buildVariables(),this.initialRender(e),this.metadataSubscription=this.mountable.mb.metadataManager.subscribeDerived(this.mountable.getUuid(),this.mountable.getDeclaration().writeToBindTarget,this.variables.map(e=>e.bindTargetDeclaration),this.variables.map(e=>e.metadataSignal),async()=>{let t=await this.computeValue();return this.rerender(e,t),this.mapValue(t)},()=>this.mountable.unmount())}onUnmount(){this.metadataSubscription?.unsubscribe()}},t_=q(`
`);function n_(e,t){Yr(t,!0);let n=Ws(t,`internal`,3,!0),r=Ui(()=>n()?t.mb.internal.imagePathToUri(t.image):t.image);var i=t_(),a=U(i);H(i),Ra(()=>{Fs(a,`src`,K(r)),Fs(a,`alt`,t.image)}),J(e,i),Xr()}var r_=q(`No images`),i_=q(`
`);function a_(e,t){Yr(t,!0);let n=Ws(t,`images`,23,()=>[]);function r(e){n(e)}var i={updateImages:r},a=i_();return os(a,21,n,ns,(e,n)=>{n_(e,{get mb(){return t.mb},get image(){return K(n).link},get internal(){return K(n).internal}})},e=>{J(e,r_())}),H(a),J(e,a),Xr(i)}var o_=class extends e_{component;linkVariable;constructor(e){super(e)}buildVariables(){let e=this.mountable.getDeclaration().templateDeclaration.filter(e=>typeof e==`string`?e:!0);if(e.length!==1)throw new R({errorLevel:P.ERROR,effect:`can not create view field`,cause:`image view filed only supports exactly a single bind target and not text content`});let t=e[0];if(typeof t==`string`)throw new R({errorLevel:P.ERROR,effect:`can not create view field`,cause:`image view filed only supports exactly a single bind target and not text content`});t.listenToChildren=!0,this.linkVariable={bindTargetDeclaration:t,metadataSignal:new Zs(void 0),uuid:St(),contextName:`MB_VAR_0`},this.variables.push(this.linkVariable)}computeValue(){let e=this.linkVariable.metadataSignal.get();if(typeof e==`string`){let t=tn.interpretAsLink(e);return t===void 0?void 0:[t]}else if(Array.isArray(e))return e.filter(e=>typeof e==`string`).map(e=>tn.interpretAsLink(e)).filter(e=>e!==void 0);else return}mapValue(e){return e===void 0?``:Array.isArray(e)?e.map(e=>e.toString()):e.toString()}onInitialRender(e){this.component=Yo(a_,{target:e,props:{images:[],mb:this.mountable.mb}})}async onRerender(e,t){this.component?.updateImages(jt(t).map(e=>({link:e.target,internal:e.internal})))}onUnmount(){super.onUnmount(),this.component&&$o(this.component)}},s_=q(``);function c_(e,t){Yr(t,!0);let n=Ws(t,`mdLinkList`,7);function r(e){n(e)}var i={updateList:r},a=qo(),o=W(a),s=e=>{J(e,s_())},c=e=>{Lh(e,{get mdLink(){return n()[0]}})},l=e=>{Bh(e,{get elements(){return n()},children:(e,t=Un)=>{Lh(e,{get mdLink(){return t()}})},$$slots:{default:!0}})};return ts(o,e=>{n().length===0?e(s):n().length===1?e(c,1):e(l,-1)}),J(e,a),Xr(i)}var l_=class extends e_{component;linkVariable;aliasVariable;constructor(e){super(e)}buildVariables(){let e=this.mountable.getDeclaration().templateDeclaration.filter(e=>typeof e==`string`?e:!0);if(e.length!==1&&e.length!==2&&e.length!==3)throw new R({errorLevel:P.ERROR,effect:`can not create view field`,cause:`link view field must be of form "{bindTarget}" or "{bindTarget}|{bindTarget}"`});let t=e[0],n=e[1],r=e[2];if(this.variables=[],e.length===1){if(typeof t==`string`)throw new R({errorLevel:P.ERROR,effect:`can not create view field`,cause:`link view field must be of form "{bindTarget}" or "{bindTarget}|{bindTarget}"`});t.listenToChildren=!0,this.linkVariable={bindTargetDeclaration:t,metadataSignal:new Zs(void 0),uuid:St(),contextName:`MB_VAR_0`},this.variables.push(this.linkVariable)}else if(e.length===2||e.length===3){if(typeof t==`string`||typeof n!=`string`)throw new R({errorLevel:P.ERROR,effect:`can not create view field`,cause:`link view field must be of form "{bindTarget}", "{bindTarget}|alias", or "{bindTarget}|{bindTarget}"`});t.listenToChildren=!0,this.linkVariable={bindTargetDeclaration:t,metadataSignal:new Zs(void 0),uuid:St(),contextName:`MB_VAR_0`},this.variables.push(this.linkVariable),e.length===2?this.aliasVariable=n.slice(1):typeof r==`string`?this.aliasVariable=r:(r.listenToChildren=!0,this.aliasVariable={bindTargetDeclaration:r,metadataSignal:new Zs(void 0),uuid:St(),contextName:`MB_VAR_1`},this.variables.push(this.aliasVariable))}else throw Error(`unreachable`)}getAlias(){if(this.aliasVariable)return typeof this.aliasVariable==`string`?this.aliasVariable:_n(this.aliasVariable.metadataSignal.get(),this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)}computeValue(){let e=this.linkVariable.metadataSignal.get(),t=this.getAlias();if(typeof e==`string`){let n=tn.interpretAsLink(e);return n===void 0?void 0:(t&&(n.alias=t),[n])}else if(Array.isArray(e))return e.filter(e=>typeof e==`string`).map(e=>tn.interpretAsLink(e)).filter(e=>e!==void 0);else return}mapValue(e){return e===void 0?``:Array.isArray(e)?e.map(e=>e.toString()):e.toString()}onInitialRender(e){this.component=Yo(c_,{target:e,props:{mdLinkList:[]}})}async onRerender(e,t){this.component?.updateList(jt(t))}onUnmount(){super.onUnmount(),this.component&&$o(this.component)}},u_=class extends e_{container;expression;expressionStr;hidden;constructor(e){super(e),this.hidden=!1}buildVariables(){let e=0;this.expressionStr=``,this.variables=[];for(let t of this.mountable.getDeclaration().templateDeclaration??[])if(typeof t!=`string`){let n={bindTargetDeclaration:t,metadataSignal:new Zs(void 0),uuid:St(),contextName:`MB_VAR_${e}`};this.variables.push(n),this.expressionStr+=n.contextName,e+=1}else this.expressionStr+=t;this.expression=this.mb.math.compile(this.expressionStr)}buildMathJSContext(){let e={};for(let t of this.variables??[])!t.contextName||!t.metadataSignal||(e[t.contextName]=t.metadataSignal.get()??``);return e}computeValue(){if(!this.expression)return this.handleComputeError(new re({errorLevel:P.ERROR,effect:`failed to evaluate expression`,cause:`expression is undefined`}));let e=this.buildMathJSContext();try{return{value:un(`${this.expression.evaluate(e)}`),error:!1}}catch(t){return t instanceof Error?this.handleComputeError(new re({errorLevel:P.ERROR,effect:`failed to evaluate expression`,cause:t,context:{expression:this.expressionStr,context:e}})):this.handleComputeError(Error(`failed to evaluate js expression because of unexpected thrown value`))}}mapValue(e){return e.value}onInitialRender(e){}onRerender(e,t){let n=_n(t?.value,this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)??``;t?.error?Dt.addClass(e,`mb-error`):Dt.removeClass(e,`mb-error`),e.innerText=n}handleComputeError(e){return console.warn(e),{error:!0,value:e.message}}},d_=class extends e_{textParts;renderMarkdown;markdownUnloadCallback;constructor(e){super(e),this.renderMarkdown=!1}buildVariables(){this.textParts=[];let e=0;this.variables=[];for(let t of this.mountable.getDeclaration().templateDeclaration??[])if(typeof t!=`string`){let n={bindTargetDeclaration:t,metadataSignal:new Zs(void 0),uuid:St(),contextName:`MB_VAR_${e}`};this.variables.push(n),this.textParts.push(n),e+=1}else this.textParts.push(t)}computeValue(){if(!this.textParts)throw new re({errorLevel:P.CRITICAL,effect:`failed to evaluate text view field`,cause:`content parts is undefined`});return this.textParts.map(e=>typeof e==`string`?e:_n(e.metadataSignal.get(),this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)).join(``)}mapValue(e){return e}onInitialRender(e){this.renderMarkdown=this.mountable.getArgument(An.RENDER_MARKDOWN)?.value??!1,this.renderMarkdown&&Dt.addClass(e,`mb-view-markdown`)}async onRerender(e,t){let n=_n(t,this.mountable.mb.getSettings().viewFieldDisplayNullAsEmpty)??``;this.renderMarkdown?(this.markdownUnloadCallback?.(),Dt.empty(e),this.markdownUnloadCallback=await this.mountable.mb.internal.renderMarkdown(n,e,this.mountable.getFilePath())):e.innerText=n}onUnmount(){super.onUnmount(),this.markdownUnloadCallback?.()}},f_=class{mb;constructor(e){this.mb=e}createViewField(e){let t=e.declaration.viewFieldType;if(t===kn.MATH)return new u_(e);if(t===kn.TEXT)return new d_(e);if(t===kn.LINK)return new l_(e);if(t===kn.IMAGE)return new o_(e)}},p_=class extends Error{},m_=class extends Error{},h_=function(e){return this instanceof h_?(this.v=e,this):new h_(e)},g_;(function(e){e[e.SHORTEST=0]=`SHORTEST`,e[e.LONGEST=1]=`LONGEST`,e[e.STRICT_EQUAL=2]=`STRICT_EQUAL`})(g_||={});function*__(e,t,...n){if(n.length===0)return;let r=[];for(let e of n)r.push(T_(e));iterate:for(;;){let n=y_(r,e=>e.next()),i=[],a=!0,o=!1;for(let e of n){let n;e.done?(a=!1,n=t):(o=!0,n=e.value),i.push(n)}if(!a&&o)switch(e){case g_.SHORTEST:break iterate;case g_.STRICT_EQUAL:throw new m_(`Iterators must have equal lengths`)}if(!o)break;yield i}}var v_=function(e){return this instanceof v_?(this.v=e,this):new v_(e)};function*y_(e,t){for(let n of w_(e))yield t(n)}function b_(e,t){for(let n of w_(e))if(t(n))return!0;return!1}function x_(e){return e==null?!1:typeof e[Symbol.iterator]==`function`}function S_(e){return e==null?!1:e.next!==void 0&&typeof e.next==`function`}var C_=function(e){return this instanceof C_?(this.v=e,this):new C_(e)};function w_(e){if(x_(e))return e;if(S_(e))return{[Symbol.iterator](){return e}};if(typeof e==`object`&&e)return(function*(){for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(yield[t,e[t]])})();throw new p_(`Given collection is not iterable or iterator.`)}function T_(e){if(S_(e))return e;if(x_(e))return(function*(){for(let t of e)yield t})();throw new p_(`Given collection is not iterable or iterator.`)}var E_=function(e){return this instanceof E_?(this.v=e,this):new E_(e)};function*D_(...e){for(let t of __(g_.SHORTEST,void 0,...e))yield t}var O_=class{uuid;metadataManager;bindTarget;dependencies;dependencySignals;dependencySubscriptions;computeFunction;deleted;onDelete;constructor(e,t,n,r,i,a,o){this.uuid=e,this.metadataManager=t,this.bindTarget=n,this.dependencies=r,this.dependencySignals=i,this.dependencySubscriptions=[],this.computeFunction=a,this.onDelete=o,this.deleted=!1}init(){for(let[e,t]of D_(this.dependencies,this.dependencySignals)){let n=this.uuid+`/`+St();this.dependencySubscriptions.push(this.metadataManager.subscribe(n,t,e,()=>this.delete())),t.registerListener({callback:()=>void this.computeValue()})}this.computeValue(!0)}async computeValue(e=!1){if(!(e&&this.dependencySignals.some(e=>e.get()===void 0)))try{let e=await this.computeFunction();this.bindTarget&&(yt(this.metadataManager.readShortLived(this.bindTarget),e)||this.metadataManager.write(e,this.bindTarget,this.uuid))}catch(e){let t=e instanceof Error?e:String(e);console.warn(new L({errorLevel:P.ERROR,effect:`Failed to run derived metadata computation`,cause:t}))}}unsubscribe(){for(let e of this.dependencySubscriptions)e.unsubscribe();this.metadataManager.unsubscribe(this)}onUpdate(e){return!1}updatable(){return!1}getDependencies(){return this.dependencies}delete(){this.deleted=!0;for(let e of this.dependencySubscriptions)e.deleted||e.delete();this.onDelete(),this.unsubscribe()}},k_=class{uuid;metadataManager;bindTarget;dependencies;dependencySignals;dependencySubscriptions;effectFunction;deleted;onDelete;constructor(e,t,n,r,i,a){this.uuid=e,this.metadataManager=t,this.bindTarget=void 0,this.dependencies=n,this.dependencySignals=r,this.dependencySubscriptions=[],this.effectFunction=i,this.deleted=!1,this.onDelete=a}init(){for(let[e,t]of D_(this.dependencies,this.dependencySignals)){let n=this.uuid+`/`+St();this.dependencySubscriptions.push(this.metadataManager.subscribe(n,t,e,()=>this.delete())),t.registerListener({callback:()=>void this.runEffect()})}this.runEffect()}async runEffect(){try{await this.effectFunction()}catch(e){let t=e instanceof Error?e:String(e);console.warn(new L({errorLevel:P.ERROR,effect:`Failed to run metadata effect`,cause:t}))}}unsubscribe(){for(let e of this.dependencySubscriptions)e.unsubscribe();this.metadataManager.unsubscribe(this)}onUpdate(e){return!1}updatable(){return!1}getDependencies(){return this.dependencies}delete(){this.deleted=!0;for(let e of this.dependencySubscriptions)e.deleted||e.delete();this.onDelete(),this.unsubscribe()}},A_=class{uuid;callbackSignal;value;metadataManager;bindTarget;deleted;onDelete;constructor(e,t,n,r,i){this.uuid=e,this.callbackSignal=t,this.metadataManager=n,this.bindTarget=r,this.onDelete=i,this.deleted=!1,this.value=void 0}unsubscribe(){this.metadataManager.unsubscribe(this)}write(e){yt(this.metadataManager.readShortLived(this.bindTarget),e)||(this.value=e,this.metadataManager.write(e,this.bindTarget,this.uuid))}read(){return this.metadataManager.read(this.bindTarget)}onUpdate(e){try{if(!yt(this.value,e)){let t=structuredClone(e);return this.value=t,this.callbackSignal.set(t),!0}}catch(e){let t=e instanceof Error?e:String(e);console.warn(new L({errorLevel:P.ERROR,effect:`Failed to notify subscription of updated value in the cache`,cause:t}))}return!1}updatable(){return!0}getDependencies(){return[]}delete(){this.deleted=!0,this.onDelete()}},j_=class{static get(e,t){return t.get(e).child}static tryGet(e,t){return t.tryGet(e)?.child}static fullGet(e,t){return t.get(e)}static set(e,t,n){t.set(e,n)}static setAndCreate(e,t,n){t.setAndCreate(e,n)}};function M_(e,t){return e===void 0||t===void 0||e.storageType!==t.storageType||e.storagePath!==t.storagePath?!1:N_(e.storageProp,t.storageProp,t.listenToChildren)}function N_(e,t,n){let r=e.path,i=t.path;for(let e=0;ei.length?n:!0}function P_(e){return e===void 0?`undefined`:`${e.storagePath}#${e.storageProp.toString()}`}var F_=class{sources;defaultSource;constructor(){this.sources=new Map,this.defaultSource=`CHANGE_THE_DEFAULT_SOURCE`}registerSource(e){this.sources.set(e.id,e)}setDefaultSource(e){if(this.sources.has(e))this.defaultSource=e;else throw new L({errorLevel:P.CRITICAL,effect:`can not set default source`,cause:`Source "${e}" does not exist`})}unregisterSource(e){this.sources.delete(e.id)}getSource(e){return this.sources.get(e)}iterateSources(){return this.sources.keys()}subscribe(e,t,n,r){let i=new A_(e,t,this,n,r);return this.subscribeSubscription(i),i}subscribeDerived(e,t,n,r,i,a){let o=new O_(e,this,t,n,r,i,a);return this.checkForLoops(o),o.init(),this.subscribeSubscription(o),o}subscribeEffect(e,t,n,r,i){let a=new k_(e,this,t,n,r,i);return a.init(),this.subscribeSubscription(a),a}unsubscribe(e){if(e.bindTarget===void 0)return;let t=this.getSource(e.bindTarget.storageType);if(t===void 0)throw new L({errorLevel:P.ERROR,effect:`can not unsubscribe subscription`,cause:`Source "${e.bindTarget.storageType}" does not exist`});let n=t.unsubscribe(e);n.subscriptions.length===0&&(n.cyclesWithoutListeners=0)}subscribeSubscription(e){if(e.bindTarget===void 0)return;let t=this.getSource(e.bindTarget.storageType);if(t===void 0)throw new L({errorLevel:P.ERROR,effect:`can not subscribe subscription`,cause:`Source "${e.bindTarget.storageType}" does not exist`});let n=t.subscribe(e);n.cyclesWithoutListeners=0;let r=t.readCacheItem(n,e.bindTarget.storageProp);e.onUpdate(r)}checkForLoops(e){for(let t of this.getAllSubscriptionsToDependencies(e))this.recCheckForLoops([e,t])}recCheckForLoops(e){let t=e.at(0),n=e.at(-1);if(!(n===void 0||t===void 0)){if(M_(t.bindTarget,n.bindTarget))throw new te({errorLevel:P.ERROR,effect:`bind target dependency loop detected`,cause:`the loop is as follows: ${e.map(e=>`"${P_(e.bindTarget)}"`).join(` -> `)}`,docs:[`https://mprojectscode.github.io/obsidian-meta-bind-plugin-docs/guides/viewfields/#circular-dependencies`]});for(let t of this.getAllSubscriptionsToDependencies(n))this.recCheckForLoops([...e,t])}}getAllSubscriptionsToDependencies(e){return e.getDependencies().map(e=>this.getAllSubscriptionsToBindTarget(e)).flat()}getAllSubscriptionsToBindTarget(e){if(e===void 0)return[];let t=this.getCacheItemForBindTarget(e);return t?t.subscriptions.filter(t=>M_(t.bindTarget,e)):[]}getCacheItemForBindTarget(e){return this.getSource(e.storageType)?.getCacheItemForStoragePath(e.storagePath)}async cycle(){let e=[];for(let t of this.sources.values())e.push(this.cycleSource(t));for(let t of await Promise.allSettled(e))t.status===`rejected`&&console.warn(`meta-bind | MetadataManager >> failed to cycle source`,t.reason)}async cycleSource(e){let t=[],n=await Promise.allSettled(e.getCacheItems().map(async n=>{if(e.onCycle(n),n.dirty)try{await e.syncExternal(n),n.dirty=!1}catch(t){console.warn(`failed to sync changes to external source for ${e.id}`,t)}n.externalWriteLock>0&&--n.externalWriteLock,n.subscriptions.length===0&&(n.cyclesWithoutListeners+=1),n.cyclesWithoutListeners>300&&e.shouldDelete(n)&&t.push(n)}));for(let t of n)t.status===`rejected`&&console.warn(`meta-bind | MetadataManager >> failed to cycle cache item in source ${e.id}`,t.reason);for(let n of t)n.subscriptions.length===0&&n.cyclesWithoutListeners>300&&e.shouldDelete(n)&&e.deleteCache(n)}write(e,t,n){let r=this.getSource(t.storageType);if(r===void 0)throw new L({errorLevel:P.ERROR,effect:`can not write to cache`,cause:`Source "${t.storageType}" does not exist`});let i=r.writeCache(structuredClone(e),t);i.dirty=!0,i.externalWriteLock=5,this.notifyListeners(t,n)}read(e){let t=this.getSource(e.storageType);if(t===void 0)throw new L({errorLevel:P.ERROR,effect:`can not read metadata`,cause:`Source "${e.storageType}" does not exist`});return structuredClone(t.readCache(e))}readShortLived(e){let t=this.getSource(e.storageType);if(t===void 0)throw new L({errorLevel:P.ERROR,effect:`can not read metadata`,cause:`Source "${e.storageType}" does not exist`});return t.readCache(e)}isCacheExternalWriteLocked(e){return e.externalWriteLock>0}notifyListeners(e,t){let n=this.getSource(e.storageType);if(n===void 0)throw new L({errorLevel:P.ERROR,effect:`can notify listeners metadata`,cause:`Source "${e.storageType}" does not exist`});let r=n.getCacheItemForStoragePath(e.storagePath);if(r!==void 0){for(let i of r.subscriptions)if(!(t!==void 0&&t===i.uuid||i.bindTarget===void 0||!i.updatable())&&N_(e.storageProp,i.bindTarget.storageProp,i.bindTarget.listenToChildren)){let e=n.readCache(i.bindTarget);i.onUpdate(e)}}}notifyAllListeners(e,t){for(let n of t.subscriptions){if(n.bindTarget===void 0)continue;let t=e.readCache(n.bindTarget);n.onUpdate(t)}}deleteCachesForStoragePath(e){for(let t of this.sources.values()){if(!t.usesStoragePath())continue;let n=t.getCacheItemForStoragePath(e);if(n!==void 0){for(let e of[...n.subscriptions])e.delete();t.deleteCache(n)}}}constructDefaultCacheItem(){return{subscriptions:[],externalWriteLock:0,dirty:!1,cyclesWithoutListeners:0}}onExternalUpdate(e,t,n){let r=e.getCacheItemForStoragePath(t);if(r===void 0||this.isCacheExternalWriteLocked(r))return;e.writeEntireCache(n,r);let i=0;for(let e of r.subscriptions){if(e.bindTarget===void 0||!e.updatable())continue;let t=j_.tryGet(n,e.bindTarget.storageProp);e.onUpdate(t)&&(i+=1)}}onStoragePathDeleted(e){this.deleteCachesForStoragePath(e)}onStoragePathRenamed(e,t){this.deleteCachesForStoragePath(e)}},I_=class{activeMountables;constructor(){this.activeMountables=new Map}unloadFile(e){for(let t of this.activeMountables.values())t.getFilePath()===e&&t.unmount()}unload(){for(let e of this.activeMountables.values())e.unmount()}registerMountable(e){this.activeMountables.set(e.getUuid(),e)}unregisterMountable(e){this.activeMountables.delete(e.getUuid())}},L_=function(e){return e.FRONTMATTER=`frontmatter`,e.MEMORY=`memory`,e.GLOBAL_MEMORY=`globalMemory`,e.SCOPE=`scope`,e}({}),R_=class e{path;constructor(e){this.path=e}get(e){if(this.path.length===0)throw Error(`can not use empty path to access object`);let t=this.path[0].get(e);for(let e of this.path.slice(1))t=e.get(t.child);return t}tryGet(e){try{return this.get(e)}catch{return}}set(e,t){if(this.path.length===0)throw Error(`can not use empty path to access object`);let n=this.path[0].get(e);for(let e of this.path.slice(1))n=e.get(n.child);n.access.set(n.parent,t)}setAndCreate(e,t){if(this.path.length===0)throw Error(`can not use empty path to access object`);let n=this.path[0].get(e);n.child===void 0&&(n.access.set(n.parent,this.getNextPathElementValue(0,t)),n=n.access.get(n.parent));for(let e=1;ee.prop)}toString(){return this.toStringArray().join(`.`)}concat(t){return new e(this.path.concat(t.path))}compareDiffArray(e){let t=Math.min(this.path.length,e.length);for(let n=0;ne.toUnvalidatedPropAccess()),listenToChildren:e.listenToChildren}}validate(e,t,n,r){let i=new R_(t.storageProp.map(e=>new Ce(e.type,e.prop.value))),a;a=t.storageType===void 0?this.mb.metadataManager.defaultSource:this.validateStorageType(t.storageType,e);let o=t.storagePath!==void 0,s=t.storagePath??{value:n},c=this.mb.metadataManager.getSource(a);if(c===void 0)throw new L({errorLevel:P.CRITICAL,effect:`can not validate bind target`,cause:`Source '${a}' not found. But validation was successful. This should not happen.`,context:{fullDeclaration:e,sources:[...this.mb.metadataManager.sources.keys()]}});let l=c.validateStoragePath(s,o,e,this),u={storageType:a,storagePath:l,storageProp:i,listenToChildren:t.listenToChildren};return c.id===L_.SCOPE?this.resolveScope(u,r):u}resolveScope(e,t){if(t===void 0)throw new le(P.ERROR,`Bind Target Scope Validator`,`Failed to resolve bind target scope, no scope provided`);return e.storageType=t.scope.storageType,e.storagePath=t.scope.storagePath,e.storageProp=t.scope.storageProp.concat(e.storageProp),e}validateStorageType(e,t){for(let t of this.mb.metadataManager.iterateSources())if(t===e.value)return t;throw new le(P.ERROR,`Bind Target Validator`,`Encountered invalid identifier. Expected token to be a storage type but received '${e?.value}'.`,t,e?.position)}validateStoragePathAsFilePath(e,t){let n=e?.value;if(n===void 0)throw new le(P.ERROR,`Bind Target Validator`,`Failed to parse bind target. Bind target storage path is undefined.`,t,e?.position);let r=this.mb.file.getPathByName(n);if(r===void 0)throw new le(P.ERROR,`Bind Target Validator`,`Failed to parse bind target. Bind target file path '${n}' not found.`,t,e?.position);return r}};Object.freeze({status:`aborted`});function X(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;en?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var B_=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},V_=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}},H_={};function U_(e){return e&&Object.assign(H_,e),H_}function W_(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function G_(e,t){return typeof t==`bigint`?t.toString():t}function K_(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function q_(e){return e==null}function J_(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function Y_(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}var X_=Symbol(`evaluating`);function Z_(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==X_)return r===void 0&&(r=X_,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function Q_(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function $_(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function ev(e){return JSON.stringify(e)}function tv(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var nv=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function rv(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var iv=K_(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function av(e){if(rv(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(rv(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function ov(e){return av(e)?{...e}:Array.isArray(e)?[...e]:e}var sv=new Set([`string`,`number`,`symbol`]);function cv(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function lv(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function uv(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function dv(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var fv={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function pv(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return lv(e,$_(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return Q_(this,`shape`,e),e},checks:[]}))}function mv(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return lv(e,$_(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return Q_(this,`shape`,r),r},checks:[]}))}function hv(e,t){if(!av(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return lv(e,$_(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Q_(this,`shape`,n),n}}))}function gv(e,t){if(!av(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return lv(e,$_(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Q_(this,`shape`,n),n}}))}function _v(e,t){return lv(e,$_(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return Q_(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function vv(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return lv(t,$_(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return Q_(this,`shape`,i),i},checks:[]}))}function yv(e,t,n){return lv(t,$_(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return Q_(this,`shape`,i),i}}))}function bv(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Sv(e){return typeof e==`string`?e:e?.message}function Cv(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=Sv(e.inst?._zod.def?.error?.(e))??Sv(t?.error?.(e))??Sv(n.customError?.(e))??Sv(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function wv(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Tv(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var Ev=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,G_,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Dv=X(`$ZodError`,Ev),Ov=X(`$ZodError`,Ev,{Parent:Error});function kv(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function Av(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new B_;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Cv(e,a,U_())));throw nv(t,i?.callee),t}return o.value},Mv=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Cv(e,a,U_())));throw nv(t,i?.callee),t}return o.value},Nv=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new B_;return a.issues.length?{success:!1,error:new(e??Dv)(a.issues.map(e=>Cv(e,i,U_())))}:{success:!0,data:a.value}},Pv=Nv(Ov),Fv=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Cv(e,i,U_())))}:{success:!0,data:a.value}},Iv=Fv(Ov),Lv=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return jv(e)(t,n,i)},Rv=e=>(t,n,r)=>jv(e)(t,n,r),zv=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Mv(e)(t,n,i)},Bv=e=>async(t,n,r)=>Mv(e)(t,n,r),Vv=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Nv(e)(t,n,i)},Hv=e=>(t,n,r)=>Nv(e)(t,n,r),Uv=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Fv(e)(t,n,i)},Wv=e=>async(t,n,r)=>Fv(e)(t,n,r),Gv=/^[cC][^\s-]{8,}$/,Kv=/^[0-9a-z]+$/,qv=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Jv=/^[0-9a-vA-V]{20}$/,Yv=/^[A-Za-z0-9]{27}$/,Xv=/^[a-zA-Z0-9_-]{21}$/,Zv=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Qv=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,$v=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,ey=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ty=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function ny(){return new RegExp(ty,`u`)}var ry=/^(?:(?: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])$/,iy=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,ay=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,oy=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,sy=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,cy=/^[A-Za-z0-9_-]*$/,ly=/^\+[1-9]\d{6,14}$/,uy=`(?:(?:\\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])))`,dy=RegExp(`^${uy}$`);function fy(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function py(e){return RegExp(`^${fy(e)}$`)}function my(e){let t=fy({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${uy}T(?:${r})$`)}var hy=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},gy=/^-?\d+$/,_y=/^-?\d+(?:\.\d+)?$/,vy=/^(?:true|false)$/i,yy=/^[^A-Z]*$/,by=/^[^a-z]*$/,xy=X(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Sy={number:`number`,bigint:`bigint`,object:`date`},Cy=X(`$ZodCheckLessThan`,(e,t)=>{xy.init(e,t);let n=Sy[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value{(t.inclusive?r.value<=t.value:r.value{xy.init(e,t);let n=Sy[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ty=X(`$ZodCheckMultipleOf`,(e,t)=>{xy.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):Y_(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Ey=X(`$ZodCheckNumberFormat`,(e,t)=>{xy.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=fv[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=gy)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}sa&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Dy=X(`$ZodCheckMaxLength`,(e,t)=>{var n;xy.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!q_(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum{let r=n.value;if(r.length<=t.maximum)return;let i=wv(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Oy=X(`$ZodCheckMinLength`,(e,t)=>{var n;xy.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!q_(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=wv(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),ky=X(`$ZodCheckLengthEquals`,(e,t)=>{var n;xy.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!q_(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=wv(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Ay=X(`$ZodCheckStringFormat`,(e,t)=>{var n,r;xy.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),jy=X(`$ZodCheckRegex`,(e,t)=>{Ay.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),My=X(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=yy,Ay.init(e,t)}),Ny=X(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=by,Ay.init(e,t)}),Py=X(`$ZodCheckIncludes`,(e,t)=>{xy.init(e,t);let n=cv(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Fy=X(`$ZodCheckStartsWith`,(e,t)=>{xy.init(e,t);let n=RegExp(`^${cv(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Iy=X(`$ZodCheckEndsWith`,(e,t)=>{xy.init(e,t);let n=RegExp(`.*${cv(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Ly=X(`$ZodCheckOverwrite`,(e,t)=>{xy.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),Ry=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(` +`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(` +`))}},zy={major:4,minor:3,patch:6},By=X(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=zy;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=bv(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new B_;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=bv(e,t))});else{if(e.issues.length===t)continue;r||=bv(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(bv(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new B_;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new B_;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Z_(e,`~standard`,()=>({validate:t=>{try{let n=Pv(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Iv(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Vy=X(`$ZodString`,(e,t)=>{By.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??hy(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),Hy=X(`$ZodStringFormat`,(e,t)=>{Ay.init(e,t),Vy.init(e,t)}),Uy=X(`$ZodGUID`,(e,t)=>{t.pattern??=Qv,Hy.init(e,t)}),Wy=X(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=$v(e)}else t.pattern??=$v();Hy.init(e,t)}),Gy=X(`$ZodEmail`,(e,t)=>{t.pattern??=ey,Hy.init(e,t)}),Ky=X(`$ZodURL`,(e,t)=>{Hy.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),qy=X(`$ZodEmoji`,(e,t)=>{t.pattern??=ny(),Hy.init(e,t)}),Jy=X(`$ZodNanoID`,(e,t)=>{t.pattern??=Xv,Hy.init(e,t)}),Yy=X(`$ZodCUID`,(e,t)=>{t.pattern??=Gv,Hy.init(e,t)}),Xy=X(`$ZodCUID2`,(e,t)=>{t.pattern??=Kv,Hy.init(e,t)}),Zy=X(`$ZodULID`,(e,t)=>{t.pattern??=qv,Hy.init(e,t)}),Qy=X(`$ZodXID`,(e,t)=>{t.pattern??=Jv,Hy.init(e,t)}),$y=X(`$ZodKSUID`,(e,t)=>{t.pattern??=Yv,Hy.init(e,t)}),eb=X(`$ZodISODateTime`,(e,t)=>{t.pattern??=my(t),Hy.init(e,t)}),tb=X(`$ZodISODate`,(e,t)=>{t.pattern??=dy,Hy.init(e,t)}),nb=X(`$ZodISOTime`,(e,t)=>{t.pattern??=py(t),Hy.init(e,t)}),rb=X(`$ZodISODuration`,(e,t)=>{t.pattern??=Zv,Hy.init(e,t)}),ib=X(`$ZodIPv4`,(e,t)=>{t.pattern??=ry,Hy.init(e,t),e._zod.bag.format=`ipv4`}),ab=X(`$ZodIPv6`,(e,t)=>{t.pattern??=iy,Hy.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),ob=X(`$ZodCIDRv4`,(e,t)=>{t.pattern??=ay,Hy.init(e,t)}),sb=X(`$ZodCIDRv6`,(e,t)=>{t.pattern??=oy,Hy.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function cb(e){if(e===``)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var lb=X(`$ZodBase64`,(e,t)=>{t.pattern??=sy,Hy.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{cb(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function ub(e){if(!cy.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return cb(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var db=X(`$ZodBase64URL`,(e,t)=>{t.pattern??=cy,Hy.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{ub(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),fb=X(`$ZodE164`,(e,t)=>{t.pattern??=ly,Hy.init(e,t)});function pb(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var mb=X(`$ZodJWT`,(e,t)=>{Hy.init(e,t),e._zod.check=n=>{pb(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),hb=X(`$ZodNumber`,(e,t)=>{By.init(e,t),e._zod.pattern=e._zod.bag.pattern??_y,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),gb=X(`$ZodNumberFormat`,(e,t)=>{Ey.init(e,t),hb.init(e,t)}),_b=X(`$ZodBoolean`,(e,t)=>{By.init(e,t),e._zod.pattern=vy,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),vb=X(`$ZodAny`,(e,t)=>{By.init(e,t),e._zod.parse=e=>e}),yb=X(`$ZodUnknown`,(e,t)=>{By.init(e,t),e._zod.parse=e=>e}),bb=X(`$ZodNever`,(e,t)=>{By.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function xb(e,t,n){e.issues.length&&t.issues.push(...xv(n,e.issues)),t.value[n]=e.value}var Sb=X(`$ZodArray`,(e,t)=>{By.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;exb(t,n,e))):xb(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Cb(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...xv(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function wb(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=dv(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Tb(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Cb(e,n,i,t,u))):Cb(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var Eb=X(`$ZodObject`,(e,t)=>{if(By.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=K_(()=>wb(t));Z_(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=rv,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>Cb(n,t,e,s,r))):Cb(i,t,e,s,r)}return i?Tb(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),Db=X(`$ZodObjectJIT`,(e,t)=>{Eb.init(e,t);let n=e._zod.parse,r=K_(()=>wb(t)),i=e=>{let t=new Ry([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=ev(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=ev(r),s=e[r]?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),s?t.write(` + if (${n}.issues.length) { + if (${o} in input) { + payload.issues = payload.issues.concat(${n}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${o}, ...iss.path] : [${o}] + }))); + } + } + + if (${n}.value === undefined) { + if (${o} in input) { + newResult[${o}] = undefined; + } + } else { + newResult[${o}] = ${n}.value; + } + + `):t.write(` + if (${n}.issues.length) { + payload.issues = payload.issues.concat(${n}.issues.map(iss => ({ ...iss, - path: iss.path ? [${_}, ...iss.path] : [${_}] + path: iss.path ? [${o}, ...iss.path] : [${o}] }))); } - if (${b}.value === undefined) { - if (${_} in input) { - newResult[${_}] = undefined; + if (${n}.value === undefined) { + if (${o} in input) { + newResult[${o}] = undefined; } } else { - newResult[${_}] = ${b}.value; + newResult[${o}] = ${n}.value; } - `)}m.write("payload.value = newResult;"),m.write("return payload;");let y=m.compile();return(S,b)=>y(f,S,b)},n,o=xc,a=!up.jitless,l=a&&$0.value,u=e.catchall,c;t._zod.parse=(f,m)=>{c??(c=r.value);let p=f.value;if(!o(p))return f.issues.push({expected:"object",code:"invalid_type",input:p,inst:t}),f;let d=[];if(a&&l&&m?.async===!1&&m.jitless!==!0)n||(n=i(e.shape)),f=n(f,m);else{f.value={};let b=c.shape;for(let _ of c.keys){let x=b[_]._zod.run({value:p[_],issues:[]},m);x instanceof Promise?d.push(x.then(E=>tg(E,f,_,p))):tg(x,f,_,p)}}if(!u)return d.length?Promise.all(d).then(()=>f):f;let h=[],v=c.keySet,y=u._zod,S=y.def.type;for(let b of Object.keys(p)){if(v.has(b))continue;if(S==="never"){h.push(b);continue}let _=y.run({value:p[b],issues:[]},m);_ instanceof Promise?d.push(_.then(w=>tg(w,f,b,p))):tg(_,f,b,p)}return h.length&&f.issues.push({code:"unrecognized_keys",keys:h,input:p,inst:t}),d.length?Promise.all(d).then(()=>f):f}});function qC(t,e,r,i){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;let n=t.filter(o=>!ll(o));return n.length===1?(e.value=n[0].value,n[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(a=>Co(a,i,Rn())))}),e)}var og=ye("$ZodUnion",(t,e)=>{ar.init(t,e),Tr(t._zod,"optin",()=>e.options.some(n=>n._zod.optin==="optional")?"optional":void 0),Tr(t._zod,"optout",()=>e.options.some(n=>n._zod.optout==="optional")?"optional":void 0),Tr(t._zod,"values",()=>{if(e.options.every(n=>n._zod.values))return new Set(e.options.flatMap(n=>Array.from(n._zod.values)))}),Tr(t._zod,"pattern",()=>{if(e.options.every(n=>n._zod.pattern)){let n=e.options.map(o=>o._zod.pattern);return new RegExp(`^(${n.map(o=>pp(o.source)).join("|")})$`)}});let r=e.options.length===1,i=e.options[0]._zod.run;t._zod.parse=(n,o)=>{if(r)return i(n,o);let a=!1,s=[];for(let l of e.options){let u=l._zod.run({value:n.value,issues:[]},o);if(u instanceof Promise)s.push(u),a=!0;else{if(u.issues.length===0)return u;s.push(u)}}return a?Promise.all(s).then(l=>qC(l,n,t,o)):qC(s,n,t,o)}}),v1=ye("$ZodDiscriminatedUnion",(t,e)=>{og.init(t,e);let r=t._zod.parse;Tr(t._zod,"propValues",()=>{let n={};for(let o of e.options){let a=o._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let[s,l]of Object.entries(a)){n[s]||(n[s]=new Set);for(let u of l)n[s].add(u)}}return n});let i=fp(()=>{let n=e.options,o=new Map;for(let a of n){let s=a._zod.propValues?.[e.discriminator];if(!s||s.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let l of s){if(o.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);o.set(l,a)}}return o});t._zod.parse=(n,o)=>{let a=n.value;if(!xc(a))return n.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),n;let s=i.value.get(a?.[e.discriminator]);return s?s._zod.run(n,o):e.unionFallback?r(n,o):(n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,input:a,path:[e.discriminator],inst:t}),n)}}),y1=ye("$ZodIntersection",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value,o=e.left._zod.run({value:n,issues:[]},i),a=e.right._zod.run({value:n,issues:[]},i);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([l,u])=>jC(r,l,u)):jC(r,o,a)}});function Pw(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(ul(t)&&ul(e)){let r=Object.keys(e),i=Object.keys(t).filter(o=>r.indexOf(o)!==-1),n={...t,...e};for(let o of i){let a=Pw(t[o],e[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};n[o]=a.data}return{valid:!0,data:n}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let i=0;i{ar.init(t,e);let r=e.items,i=r.length-[...r].reverse().findIndex(n=>n._zod.optin!=="optional");t._zod.parse=(n,o)=>{let a=n.value;if(!Array.isArray(a))return n.issues.push({input:a,inst:t,expected:"tuple",code:"invalid_type"}),n;n.value=[];let s=[];if(!e.rest){let u=a.length>r.length,c=a.length=a.length&&l>=i)continue;let c=u._zod.run({value:a[l],issues:[]},o);c instanceof Promise?s.push(c.then(f=>rg(f,n,l))):rg(c,n,l)}if(e.rest){let u=a.slice(r.length);for(let c of u){l++;let f=e.rest._zod.run({value:c,issues:[]},o);f instanceof Promise?s.push(f.then(m=>rg(m,n,l))):rg(f,n,l)}}return s.length?Promise.all(s).then(()=>n):n}});function rg(t,e,r){t.issues.length&&e.issues.push(...Mo(r,t.issues)),e.value[r]=t.value}var b1=ye("$ZodRecord",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!ul(n))return r.issues.push({expected:"record",code:"invalid_type",input:n,inst:t}),r;let o=[];if(e.keyType._zod.values){let a=e.keyType._zod.values;r.value={};for(let l of a)if(typeof l=="string"||typeof l=="number"||typeof l=="symbol"){let u=e.valueType._zod.run({value:n[l],issues:[]},i);u instanceof Promise?o.push(u.then(c=>{c.issues.length&&r.issues.push(...Mo(l,c.issues)),r.value[l]=c.value})):(u.issues.length&&r.issues.push(...Mo(l,u.issues)),r.value[l]=u.value)}let s;for(let l in n)a.has(l)||(s=s??[],s.push(l));s&&s.length>0&&r.issues.push({code:"unrecognized_keys",input:n,inst:t,keys:s})}else{r.value={};for(let a of Reflect.ownKeys(n)){if(a==="__proto__")continue;let s=e.keyType._zod.run({value:a,issues:[]},i);if(s instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(s.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:s.issues.map(u=>Co(u,i,Rn())),input:a,path:[a],inst:t}),r.value[s.value]=s.value;continue}let l=e.valueType._zod.run({value:n[a],issues:[]},i);l instanceof Promise?o.push(l.then(u=>{u.issues.length&&r.issues.push(...Mo(a,u.issues)),r.value[s.value]=u.value})):(l.issues.length&&r.issues.push(...Mo(a,l.issues)),r.value[s.value]=l.value)}}return o.length?Promise.all(o).then(()=>r):r}}),x1=ye("$ZodMap",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!(n instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:n,inst:t}),r;let o=[];r.value=new Map;for(let[a,s]of n){let l=e.keyType._zod.run({value:a,issues:[]},i),u=e.valueType._zod.run({value:s,issues:[]},i);l instanceof Promise||u instanceof Promise?o.push(Promise.all([l,u]).then(([c,f])=>{ZC(c,f,r,a,n,t,i)})):ZC(l,u,r,a,n,t,i)}return o.length?Promise.all(o).then(()=>r):r}});function ZC(t,e,r,i,n,o,a){t.issues.length&&(mp.has(typeof i)?r.issues.push(...Mo(i,t.issues)):r.issues.push({code:"invalid_key",origin:"map",input:n,inst:o,issues:t.issues.map(s=>Co(s,a,Rn()))})),e.issues.length&&(mp.has(typeof i)?r.issues.push(...Mo(i,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:n,inst:o,key:i,issues:e.issues.map(s=>Co(s,a,Rn()))})),r.value.set(t.value,e.value)}var _1=ye("$ZodSet",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!(n instanceof Set))return r.issues.push({input:n,inst:t,expected:"set",code:"invalid_type"}),r;let o=[];r.value=new Set;for(let a of n){let s=e.valueType._zod.run({value:a,issues:[]},i);s instanceof Promise?o.push(s.then(l=>GC(l,r))):GC(s,r)}return o.length?Promise.all(o).then(()=>r):r}});function GC(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var w1=ye("$ZodEnum",(t,e)=>{ar.init(t,e);let r=cp(e.entries),i=new Set(r);t._zod.values=i,t._zod.pattern=new RegExp(`^(${r.filter(n=>mp.has(typeof n)).map(n=>typeof n=="string"?Ga(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let a=n.value;return i.has(a)||n.issues.push({code:"invalid_value",values:r,input:a,inst:t}),n}}),S1=ye("$ZodLiteral",(t,e)=>{if(ar.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Ga(r):r?Ga(r.toString()):String(r)).join("|")})$`),t._zod.parse=(r,i)=>{let n=r.value;return t._zod.values.has(n)||r.issues.push({code:"invalid_value",values:e.values,input:n,inst:t}),r}}),D1=ye("$ZodFile",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return n instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:n,inst:t}),r}}),wp=ye("$ZodTransform",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=e.transform(r.value,r);if(i.async)return(n instanceof Promise?n:Promise.resolve(n)).then(a=>(r.value=a,r));if(n instanceof Promise)throw new Za;return r.value=n,r}});function WC(t,e){return t.issues.length&&e===void 0?{issues:[],value:void 0}:t}var E1=ye("$ZodOptional",(t,e)=>{ar.init(t,e),t._zod.optin="optional",t._zod.optout="optional",Tr(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),Tr(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${pp(r.source)})?$`):void 0}),t._zod.parse=(r,i)=>{if(e.innerType._zod.optin==="optional"){let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>WC(o,r.value)):WC(n,r.value)}return r.value===void 0?r:e.innerType._zod.run(r,i)}}),A1=ye("$ZodNullable",(t,e)=>{ar.init(t,e),Tr(t._zod,"optin",()=>e.innerType._zod.optin),Tr(t._zod,"optout",()=>e.innerType._zod.optout),Tr(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${pp(r.source)}|null)$`):void 0}),Tr(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,i)=>r.value===null?r:e.innerType._zod.run(r,i)}),T1=ye("$ZodDefault",(t,e)=>{ar.init(t,e),t._zod.optin="optional",Tr(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>HC(o,e)):HC(n,e)}});function HC(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var N1=ye("$ZodPrefault",(t,e)=>{ar.init(t,e),t._zod.optin="optional",Tr(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,i))}),M1=ye("$ZodNonOptional",(t,e)=>{ar.init(t,e),Tr(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(i=>i!==void 0)):void 0}),t._zod.parse=(r,i)=>{let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>YC(o,t)):YC(n,t)}});function YC(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var C1=ye("$ZodSuccess",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>{let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>(r.value=o.issues.length===0,r)):(r.value=n.issues.length===0,r)}}),$1=ye("$ZodCatch",(t,e)=>{ar.init(t,e),Tr(t._zod,"optin",()=>e.innerType._zod.optin),Tr(t._zod,"optout",()=>e.innerType._zod.optout),Tr(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>{let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(a=>Co(a,i,Rn()))},input:r.value}),r.issues=[]),r)):(r.value=n.value,n.issues.length&&(r.value=e.catchValue({...r,error:{issues:n.issues.map(o=>Co(o,i,Rn()))},input:r.value}),r.issues=[]),r)}}),I1=ye("$ZodNaN",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:t,expected:"nan",code:"invalid_type"}),r)}),Sp=ye("$ZodPipe",(t,e)=>{ar.init(t,e),Tr(t._zod,"values",()=>e.in._zod.values),Tr(t._zod,"optin",()=>e.in._zod.optin),Tr(t._zod,"optout",()=>e.out._zod.optout),Tr(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,i)=>{let n=e.in._zod.run(r,i);return n instanceof Promise?n.then(o=>JC(o,e,i)):JC(n,e,i)}});function JC(t,e,r){return t.issues.length?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var F1=ye("$ZodReadonly",(t,e)=>{ar.init(t,e),Tr(t._zod,"propValues",()=>e.innerType._zod.propValues),Tr(t._zod,"values",()=>e.innerType._zod.values),Tr(t._zod,"optin",()=>e.innerType._zod.optin),Tr(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,i)=>{let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(XC):XC(n)}});function XC(t){return t.value=Object.freeze(t.value),t}var k1=ye("$ZodTemplateLiteral",(t,e)=>{ar.init(t,e);let r=[];for(let i of e.parts)if(typeof i=="object"&&i!==null){if(!i._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...i._zod.traits].shift()}`);let n=i._zod.pattern instanceof RegExp?i._zod.pattern.source:i._zod.pattern;if(!n)throw new Error(`Invalid template literal part: ${i._zod.traits}`);let o=n.startsWith("^")?1:0,a=n.endsWith("$")?n.length-1:n.length;r.push(n.slice(o,a))}else if(i===null||F0.has(typeof i))r.push(Ga(`${i}`));else throw new Error(`Invalid template literal part: ${i}`);t._zod.pattern=new RegExp(`^${r.join("")}$`),t._zod.parse=(i,n)=>typeof i.value!="string"?(i.issues.push({input:i.value,inst:t,expected:"template_literal",code:"invalid_type"}),i):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(i.value)||i.issues.push({input:i.value,inst:t,code:"invalid_format",format:e.format??"template_literal",pattern:t._zod.pattern.source}),i)}),P1=ye("$ZodPromise",(t,e)=>{ar.init(t,e),t._zod.parse=(r,i)=>Promise.resolve(r.value).then(n=>e.innerType._zod.run({value:n,issues:[]},i))}),B1=ye("$ZodLazy",(t,e)=>{ar.init(t,e),Tr(t._zod,"innerType",()=>e.getter()),Tr(t._zod,"pattern",()=>t._zod.innerType._zod.pattern),Tr(t._zod,"propValues",()=>t._zod.innerType._zod.propValues),Tr(t._zod,"optin",()=>t._zod.innerType._zod.optin??void 0),Tr(t._zod,"optout",()=>t._zod.innerType._zod.optout??void 0),t._zod.parse=(r,i)=>t._zod.innerType._zod.run(r,i)}),O1=ye("$ZodCustom",(t,e)=>{an.init(t,e),ar.init(t,e),t._zod.parse=(r,i)=>r,t._zod.check=r=>{let i=r.value,n=e.fn(i);if(n instanceof Promise)return n.then(o=>KC(o,r,i,t));KC(n,r,i,t)}});function KC(t,e,r,i){if(!t){let n={code:"custom",input:r,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(n.params=i._zod.def.params),e.issues.push(wc(n))}}var Dp={};hs(Dp,{ar:()=>r$,az:()=>n$,be:()=>o$,ca:()=>a$,cs:()=>s$,da:()=>u$,de:()=>l$,en:()=>ag,eo:()=>c$,es:()=>f$,fa:()=>p$,fi:()=>m$,fr:()=>d$,frCA:()=>h$,he:()=>g$,hu:()=>v$,id:()=>y$,is:()=>b$,it:()=>x$,ja:()=>_$,kh:()=>w$,ko:()=>S$,mk:()=>D$,ms:()=>E$,nl:()=>A$,no:()=>T$,ota:()=>N$,pl:()=>C$,ps:()=>M$,pt:()=>$$,ru:()=>F$,sl:()=>k$,sv:()=>P$,ta:()=>B$,th:()=>O$,tr:()=>R$,ua:()=>L$,ur:()=>U$,vi:()=>z$,yo:()=>j$,zhCN:()=>V$,zhTW:()=>q$});var mJ=()=>{let t={string:{unit:"\u062D\u0631\u0641",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},file:{unit:"\u0628\u0627\u064A\u062A",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},array:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},set:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0645\u062F\u062E\u0644",email:"\u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",url:"\u0631\u0627\u0628\u0637",emoji:"\u0625\u064A\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u064A\u062E \u0648\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",date:"\u062A\u0627\u0631\u064A\u062E \u0628\u0645\u0639\u064A\u0627\u0631 ISO",time:"\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",duration:"\u0645\u062F\u0629 \u0628\u0645\u0639\u064A\u0627\u0631 ISO",ipv4:"\u0639\u0646\u0648\u0627\u0646 IPv4",ipv6:"\u0639\u0646\u0648\u0627\u0646 IPv6",cidrv4:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv4",cidrv6:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv6",base64:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64-encoded",base64url:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64url-encoded",json_string:"\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",e164:"\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",jwt:"JWT",template_literal:"\u0645\u062F\u062E\u0644"};return n=>{switch(n.code){case"invalid_type":return`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${n.expected}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${tt(n.values[0])}`:`\u0627\u062E\u062A\u064A\u0627\u0631 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062A\u0648\u0642\u0639 \u0627\u0646\u062A\u0642\u0627\u0621 \u0623\u062D\u062F \u0647\u0630\u0647 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A: ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?` \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"}`:`\u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()} ${a.unit}`:`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0628\u062F\u0623 \u0628\u0640 "${n.prefix}"`:o.format==="ends_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A \u0628\u0640 "${o.suffix}"`:o.format==="includes"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0636\u0645\u0651\u064E\u0646 "${o.includes}"`:o.format==="regex"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0637\u0627\u0628\u0642 \u0627\u0644\u0646\u0645\u0637 ${o.pattern}`:`${i[o.format]??n.format} \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644`}case"not_multiple_of":return`\u0631\u0642\u0645 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0645\u0646 \u0645\u0636\u0627\u0639\u0641\u0627\u062A ${n.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${n.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${n.keys.length>1?"\u0629":""}: ${Ie(n.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;case"invalid_union":return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644";case"invalid_element":return`\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};function r$(){return{localeError:mJ()}}var dJ=()=>{let t={string:{unit:"simvol",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"element",verb:"olmal\u0131d\u0131r"},set:{unit:"element",verb:"olmal\u0131d\u0131r"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${n.expected}, daxil olan ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${tt(n.values[0])}`:`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()} ${a.unit??"element"}`:`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Yanl\u0131\u015F m\u0259tn: "${o.prefix}" il\u0259 ba\u015Flamal\u0131d\u0131r`:o.format==="ends_with"?`Yanl\u0131\u015F m\u0259tn: "${o.suffix}" il\u0259 bitm\u0259lidir`:o.format==="includes"?`Yanl\u0131\u015F m\u0259tn: "${o.includes}" daxil olmal\u0131d\u0131r`:o.format==="regex"?`Yanl\u0131\u015F m\u0259tn: ${o.pattern} \u015Fablonuna uy\u011Fun olmal\u0131d\u0131r`:`Yanl\u0131\u015F ${i[o.format]??n.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${n.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${n.keys.length>1?"lar":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`${n.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${n.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};function n$(){return{localeError:dJ()}}function i$(t,e,r,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?r:i}var hJ=()=>{let t={string:{unit:{one:"\u0441\u0456\u043C\u0432\u0430\u043B",few:"\u0441\u0456\u043C\u0432\u0430\u043B\u044B",many:"\u0441\u0456\u043C\u0432\u0430\u043B\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u044B",many:"\u0431\u0430\u0439\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u043B\u0456\u043A";case"object":{if(Array.isArray(n))return"\u043C\u0430\u0441\u0456\u045E";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0443\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0430\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0456 \u0447\u0430\u0441",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0447\u0430\u0441",duration:"ISO \u043F\u0440\u0430\u0446\u044F\u0433\u043B\u0430\u0441\u0446\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0430\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0430\u0441",cidrv4:"IPv4 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",base64:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64",base64url:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64url",json_string:"JSON \u0440\u0430\u0434\u043E\u043A",e164:"\u043D\u0443\u043C\u0430\u0440 E.164",jwt:"JWT",template_literal:"\u0443\u0432\u043E\u0434"};return n=>{switch(n.code){case"invalid_type":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F ${n.expected}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F ${tt(n.values[0])}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0432\u0430\u0440\u044B\u044F\u043D\u0442: \u0447\u0430\u043A\u0430\u045E\u0441\u044F \u0430\u0434\u0437\u0456\u043D \u0437 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let s=Number(n.maximum),l=i$(s,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.maximum.toString()} ${l}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let s=Number(n.minimum),l=i$(s,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.minimum.toString()} ${l}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u043F\u0430\u0447\u044B\u043D\u0430\u0446\u0446\u0430 \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u0430\u043A\u0430\u043D\u0447\u0432\u0430\u0446\u0446\u0430 \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u043C\u044F\u0448\u0447\u0430\u0446\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0430\u0434\u043F\u0430\u0432\u044F\u0434\u0430\u0446\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B ${i[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043B\u0456\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0431\u044B\u0446\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${n.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434";case"invalid_element":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u0430\u0435 \u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435 \u045E ${n.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};function o$(){return{localeError:hJ()}}var gJ=()=>{let t={string:{unit:"car\xE0cters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"entrada",email:"adre\xE7a electr\xF2nica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adre\xE7a IPv4",ipv6:"adre\xE7a IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"};return n=>{switch(n.code){case"invalid_type":return`Tipus inv\xE0lid: s'esperava ${n.expected}, s'ha rebut ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Valor inv\xE0lid: s'esperava ${tt(n.values[0])}`:`Opci\xF3 inv\xE0lida: s'esperava una de ${Ie(n.values," o ")}`;case"too_big":{let o=n.inclusive?"com a m\xE0xim":"menys de",a=e(n.origin);return a?`Massa gran: s'esperava que ${n.origin??"el valor"} contingu\xE9s ${o} ${n.maximum.toString()} ${a.unit??"elements"}`:`Massa gran: s'esperava que ${n.origin??"el valor"} fos ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"com a m\xEDnim":"m\xE9s de",a=e(n.origin);return a?`Massa petit: s'esperava que ${n.origin} contingu\xE9s ${o} ${n.minimum.toString()} ${a.unit}`:`Massa petit: s'esperava que ${n.origin} fos ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Format inv\xE0lid: ha de comen\xE7ar amb "${o.prefix}"`:o.format==="ends_with"?`Format inv\xE0lid: ha d'acabar amb "${o.suffix}"`:o.format==="includes"?`Format inv\xE0lid: ha d'incloure "${o.includes}"`:o.format==="regex"?`Format inv\xE0lid: ha de coincidir amb el patr\xF3 ${o.pattern}`:`Format inv\xE0lid per a ${i[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${n.divisor}`;case"unrecognized_keys":return`Clau${n.keys.length>1?"s":""} no reconeguda${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${n.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${n.origin}`;default:return"Entrada inv\xE0lida"}}};function a$(){return{localeError:gJ()}}var vJ=()=>{let t={string:{unit:"znak\u016F",verb:"m\xEDt"},file:{unit:"bajt\u016F",verb:"m\xEDt"},array:{unit:"prvk\u016F",verb:"m\xEDt"},set:{unit:"prvk\u016F",verb:"m\xEDt"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u010D\xEDslo";case"string":return"\u0159et\u011Bzec";case"boolean":return"boolean";case"bigint":return"bigint";case"function":return"funkce";case"symbol":return"symbol";case"undefined":return"undefined";case"object":{if(Array.isArray(n))return"pole";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"regul\xE1rn\xED v\xFDraz",email:"e-mailov\xE1 adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a \u010Das ve form\xE1tu ISO",date:"datum ve form\xE1tu ISO",time:"\u010Das ve form\xE1tu ISO",duration:"doba trv\xE1n\xED ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64",base64url:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64url",json_string:"\u0159et\u011Bzec ve form\xE1tu JSON",e164:"\u010D\xEDslo E.164",jwt:"JWT",template_literal:"vstup"};return n=>{switch(n.code){case"invalid_type":return`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${n.expected}, obdr\u017Eeno ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${tt(n.values[0])}`:`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.maximum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.minimum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED za\u010D\xEDnat na "${o.prefix}"`:o.format==="ends_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED kon\u010Dit na "${o.suffix}"`:o.format==="includes"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED obsahovat "${o.includes}"`:o.format==="regex"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED odpov\xEDdat vzoru ${o.pattern}`:`Neplatn\xFD form\xE1t ${i[o.format]??n.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${n.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${Ie(n.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${n.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${n.origin}`;default:return"Neplatn\xFD vstup"}}};function s$(){return{localeError:vJ()}}var yJ=()=>{let t={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}},e={string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"s\xE6t",file:"fil"};function r(a){return t[a]??null}function i(a){return e[a]??a}let n=a=>{let s=typeof a;switch(s){case"number":return Number.isNaN(a)?"NaN":"tal";case"object":return Array.isArray(a)?"liste":a===null?"null":Object.getPrototypeOf(a)!==Object.prototype&&a.constructor?a.constructor.name:"objekt"}return s},o={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkesl\xE6t",date:"ISO-dato",time:"ISO-klokkesl\xE6t",duration:"ISO-varighed",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"};return a=>{switch(a.code){case"invalid_type":return`Ugyldigt input: forventede ${i(a.expected)}, fik ${i(n(a.input))}`;case"invalid_value":return a.values.length===1?`Ugyldig v\xE6rdi: forventede ${tt(a.values[0])}`:`Ugyldigt valg: forventede en af f\xF8lgende ${Ie(a.values,"|")}`;case"too_big":{let s=a.inclusive?"<=":"<",l=r(a.origin),u=i(a.origin);return l?`For stor: forventede ${u??"value"} ${l.verb} ${s} ${a.maximum.toString()} ${l.unit??"elementer"}`:`For stor: forventede ${u??"value"} havde ${s} ${a.maximum.toString()}`}case"too_small":{let s=a.inclusive?">=":">",l=r(a.origin),u=i(a.origin);return l?`For lille: forventede ${u} ${l.verb} ${s} ${a.minimum.toString()} ${l.unit}`:`For lille: forventede ${u} havde ${s} ${a.minimum.toString()}`}case"invalid_format":{let s=a;return s.format==="starts_with"?`Ugyldig streng: skal starte med "${s.prefix}"`:s.format==="ends_with"?`Ugyldig streng: skal ende med "${s.suffix}"`:s.format==="includes"?`Ugyldig streng: skal indeholde "${s.includes}"`:s.format==="regex"?`Ugyldig streng: skal matche m\xF8nsteret ${s.pattern}`:`Ugyldig ${o[s.format]??a.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${a.divisor}`;case"unrecognized_keys":return`${a.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${Ie(a.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${a.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${a.origin}`;default:return"Ugyldigt input"}}};function u$(){return{localeError:yJ()}}var bJ=()=>{let t={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"Zahl";case"object":{if(Array.isArray(n))return"Array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"};return n=>{switch(n.code){case"invalid_type":return`Ung\xFCltige Eingabe: erwartet ${n.expected}, erhalten ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Ung\xFCltige Eingabe: erwartet ${tt(n.values[0])}`:`Ung\xFCltige Option: erwartet eine von ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ${a.unit??"Elemente"} hat`:`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ist`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ${a.unit} hat`:`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ist`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ung\xFCltiger String: muss mit "${o.prefix}" beginnen`:o.format==="ends_with"?`Ung\xFCltiger String: muss mit "${o.suffix}" enden`:o.format==="includes"?`Ung\xFCltiger String: muss "${o.includes}" enthalten`:o.format==="regex"?`Ung\xFCltiger String: muss dem Muster ${o.pattern} entsprechen`:`Ung\xFCltig: ${i[o.format]??n.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${n.divisor} sein`;case"unrecognized_keys":return`${n.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${n.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${n.origin}`;default:return"Ung\xFCltige Eingabe"}}};function l$(){return{localeError:bJ()}}var xJ=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},_J=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(i){return t[i]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return i=>{switch(i.code){case"invalid_type":return`Invalid input: expected ${i.expected}, received ${xJ(i.input)}`;case"invalid_value":return i.values.length===1?`Invalid input: expected ${tt(i.values[0])}`:`Invalid option: expected one of ${Ie(i.values,"|")}`;case"too_big":{let n=i.inclusive?"<=":"<",o=e(i.origin);return o?`Too big: expected ${i.origin??"value"} to have ${n}${i.maximum.toString()} ${o.unit??"elements"}`:`Too big: expected ${i.origin??"value"} to be ${n}${i.maximum.toString()}`}case"too_small":{let n=i.inclusive?">=":">",o=e(i.origin);return o?`Too small: expected ${i.origin} to have ${n}${i.minimum.toString()} ${o.unit}`:`Too small: expected ${i.origin} to be ${n}${i.minimum.toString()}`}case"invalid_format":{let n=i;return n.format==="starts_with"?`Invalid string: must start with "${n.prefix}"`:n.format==="ends_with"?`Invalid string: must end with "${n.suffix}"`:n.format==="includes"?`Invalid string: must include "${n.includes}"`:n.format==="regex"?`Invalid string: must match pattern ${n.pattern}`:`Invalid ${r[n.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${Ie(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}};function ag(){return{localeError:_J()}}var wJ=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"nombro";case"object":{if(Array.isArray(t))return"tabelo";if(t===null)return"senvalora";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},SJ=()=>{let t={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function e(i){return t[i]??null}let r={regex:"enigo",email:"retadreso",url:"URL",emoji:"emo\u011Dio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-da\u016Dro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"};return i=>{switch(i.code){case"invalid_type":return`Nevalida enigo: atendi\u011Dis ${i.expected}, ricevi\u011Dis ${wJ(i.input)}`;case"invalid_value":return i.values.length===1?`Nevalida enigo: atendi\u011Dis ${tt(i.values[0])}`:`Nevalida opcio: atendi\u011Dis unu el ${Ie(i.values,"|")}`;case"too_big":{let n=i.inclusive?"<=":"<",o=e(i.origin);return o?`Tro granda: atendi\u011Dis ke ${i.origin??"valoro"} havu ${n}${i.maximum.toString()} ${o.unit??"elementojn"}`:`Tro granda: atendi\u011Dis ke ${i.origin??"valoro"} havu ${n}${i.maximum.toString()}`}case"too_small":{let n=i.inclusive?">=":">",o=e(i.origin);return o?`Tro malgranda: atendi\u011Dis ke ${i.origin} havu ${n}${i.minimum.toString()} ${o.unit}`:`Tro malgranda: atendi\u011Dis ke ${i.origin} estu ${n}${i.minimum.toString()}`}case"invalid_format":{let n=i;return n.format==="starts_with"?`Nevalida karaktraro: devas komenci\u011Di per "${n.prefix}"`:n.format==="ends_with"?`Nevalida karaktraro: devas fini\u011Di per "${n.suffix}"`:n.format==="includes"?`Nevalida karaktraro: devas inkluzivi "${n.includes}"`:n.format==="regex"?`Nevalida karaktraro: devas kongrui kun la modelo ${n.pattern}`:`Nevalida ${r[n.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} \u015Dlosilo${i.keys.length>1?"j":""}: ${Ie(i.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}};function c$(){return{localeError:SJ()}}var DJ=()=>{let t={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"n\xFAmero";case"object":{if(Array.isArray(n))return"arreglo";if(n===null)return"nulo";if(Object.getPrototypeOf(n)!==Object.prototype)return n.constructor.name}}return o},i={regex:"entrada",email:"direcci\xF3n de correo electr\xF3nico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duraci\xF3n ISO",ipv4:"direcci\xF3n IPv4",ipv6:"direcci\xF3n IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"};return n=>{switch(n.code){case"invalid_type":return`Entrada inv\xE1lida: se esperaba ${n.expected}, recibido ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: se esperaba ${tt(n.values[0])}`:`Opci\xF3n inv\xE1lida: se esperaba una de ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Demasiado grande: se esperaba que ${n.origin??"valor"} tuviera ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Demasiado grande: se esperaba que ${n.origin??"valor"} fuera ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Demasiado peque\xF1o: se esperaba que ${n.origin} tuviera ${o}${n.minimum.toString()} ${a.unit}`:`Demasiado peque\xF1o: se esperaba que ${n.origin} fuera ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cadena inv\xE1lida: debe comenzar con "${o.prefix}"`:o.format==="ends_with"?`Cadena inv\xE1lida: debe terminar en "${o.suffix}"`:o.format==="includes"?`Cadena inv\xE1lida: debe incluir "${o.includes}"`:o.format==="regex"?`Cadena inv\xE1lida: debe coincidir con el patr\xF3n ${o.pattern}`:`Inv\xE1lido ${i[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Llave${n.keys.length>1?"s":""} desconocida${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${n.origin}`;default:return"Entrada inv\xE1lida"}}};function f$(){return{localeError:DJ()}}var EJ=()=>{let t={string:{unit:"\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},file:{unit:"\u0628\u0627\u06CC\u062A",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},array:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},set:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u0639\u062F\u062F";case"object":{if(Array.isArray(n))return"\u0622\u0631\u0627\u06CC\u0647";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0648\u0631\u0648\u062F\u06CC",email:"\u0622\u062F\u0631\u0633 \u0627\u06CC\u0645\u06CC\u0644",url:"URL",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u06CC\u062E \u0648 \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",date:"\u062A\u0627\u0631\u06CC\u062E \u0627\u06CC\u0632\u0648",time:"\u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",duration:"\u0645\u062F\u062A \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",ipv4:"IPv4 \u0622\u062F\u0631\u0633",ipv6:"IPv6 \u0622\u062F\u0631\u0633",cidrv4:"IPv4 \u062F\u0627\u0645\u0646\u0647",cidrv6:"IPv6 \u062F\u0627\u0645\u0646\u0647",base64:"base64-encoded \u0631\u0634\u062A\u0647",base64url:"base64url-encoded \u0631\u0634\u062A\u0647",json_string:"JSON \u0631\u0634\u062A\u0647",e164:"E.164 \u0639\u062F\u062F",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u06CC"};return n=>{switch(n.code){case"invalid_type":return`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${n.expected} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${r(n.input)} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`;case"invalid_value":return n.values.length===1?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${tt(n.values[0])} \u0645\u06CC\u200C\u0628\u0648\u062F`:`\u06AF\u0632\u06CC\u0646\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A \u06CC\u06A9\u06CC \u0627\u0632 ${Ie(n.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.prefix}" \u0634\u0631\u0648\u0639 \u0634\u0648\u062F`:o.format==="ends_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.suffix}" \u062A\u0645\u0627\u0645 \u0634\u0648\u062F`:o.format==="includes"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0634\u0627\u0645\u0644 "${o.includes}" \u0628\u0627\u0634\u062F`:o.format==="regex"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 \u0627\u0644\u06AF\u0648\u06CC ${o.pattern} \u0645\u0637\u0627\u0628\u0642\u062A \u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F`:`${i[o.format]??n.format} \u0646\u0627\u0645\u0639\u062A\u0628\u0631`}case"not_multiple_of":return`\u0639\u062F\u062F \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0645\u0636\u0631\u0628 ${n.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${n.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${n.origin}`;case"invalid_union":return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631";case"invalid_element":return`\u0645\u0642\u062F\u0627\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u062F\u0631 ${n.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};function p$(){return{localeError:EJ()}}var AJ=()=>{let t={string:{unit:"merkki\xE4",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"p\xE4iv\xE4m\xE4\xE4r\xE4n"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"s\xE4\xE4nn\xF6llinen lauseke",email:"s\xE4hk\xF6postiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-p\xE4iv\xE4m\xE4\xE4r\xE4",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"};return n=>{switch(n.code){case"invalid_type":return`Virheellinen tyyppi: odotettiin ${n.expected}, oli ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Virheellinen sy\xF6te: t\xE4ytyy olla ${tt(n.values[0])}`:`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Liian suuri: ${a.subject} t\xE4ytyy olla ${o}${n.maximum.toString()} ${a.unit}`.trim():`Liian suuri: arvon t\xE4ytyy olla ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Liian pieni: ${a.subject} t\xE4ytyy olla ${o}${n.minimum.toString()} ${a.unit}`.trim():`Liian pieni: arvon t\xE4ytyy olla ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Virheellinen sy\xF6te: t\xE4ytyy alkaa "${o.prefix}"`:o.format==="ends_with"?`Virheellinen sy\xF6te: t\xE4ytyy loppua "${o.suffix}"`:o.format==="includes"?`Virheellinen sy\xF6te: t\xE4ytyy sis\xE4lt\xE4\xE4 "${o.includes}"`:o.format==="regex"?`Virheellinen sy\xF6te: t\xE4ytyy vastata s\xE4\xE4nn\xF6llist\xE4 lauseketta ${o.pattern}`:`Virheellinen ${i[o.format]??n.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${n.divisor} monikerta`;case"unrecognized_keys":return`${n.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${Ie(n.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen sy\xF6te"}}};function m$(){return{localeError:AJ()}}var TJ=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"nombre";case"object":{if(Array.isArray(n))return"tableau";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"entr\xE9e",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"};return n=>{switch(n.code){case"invalid_type":return`Entr\xE9e invalide : ${n.expected} attendu, ${r(n.input)} re\xE7u`;case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : ${tt(n.values[0])} attendu`:`Option invalide : une valeur parmi ${Ie(n.values,"|")} attendue`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Trop grand : ${n.origin??"valeur"} doit ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\xE9l\xE9ment(s)"}`:`Trop grand : ${n.origin??"valeur"} doit \xEAtre ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Trop petit : ${n.origin} doit ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : ${n.origin} doit \xEAtre ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au mod\xE8le ${o.pattern}`:`${i[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${Ie(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function d$(){return{localeError:TJ()}}var NJ=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"entr\xE9e",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"};return n=>{switch(n.code){case"invalid_type":return`Entr\xE9e invalide : attendu ${n.expected}, re\xE7u ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : attendu ${tt(n.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u2264":"<",a=e(n.origin);return a?`Trop grand : attendu que ${n.origin??"la valeur"} ait ${o}${n.maximum.toString()} ${a.unit}`:`Trop grand : attendu que ${n.origin??"la valeur"} soit ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u2265":">",a=e(n.origin);return a?`Trop petit : attendu que ${n.origin} ait ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : attendu que ${n.origin} soit ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au motif ${o.pattern}`:`${i[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${Ie(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function h$(){return{localeError:NJ()}}var MJ=()=>{let t={string:{unit:"\u05D0\u05D5\u05EA\u05D9\u05D5\u05EA",verb:"\u05DC\u05DB\u05DC\u05D5\u05DC"},file:{unit:"\u05D1\u05D9\u05D9\u05D8\u05D9\u05DD",verb:"\u05DC\u05DB\u05DC\u05D5\u05DC"},array:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",verb:"\u05DC\u05DB\u05DC\u05D5\u05DC"},set:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",verb:"\u05DC\u05DB\u05DC\u05D5\u05DC"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u05E7\u05DC\u05D8",email:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05D0\u05D9\u05DE\u05D9\u05D9\u05DC",url:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05E8\u05E9\u05EA",emoji:"\u05D0\u05D9\u05DE\u05D5\u05D2'\u05D9",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u05EA\u05D0\u05E8\u05D9\u05DA \u05D5\u05D6\u05DE\u05DF ISO",date:"\u05EA\u05D0\u05E8\u05D9\u05DA ISO",time:"\u05D6\u05DE\u05DF ISO",duration:"\u05DE\u05E9\u05DA \u05D6\u05DE\u05DF ISO",ipv4:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv4",ipv6:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv6",cidrv4:"\u05D8\u05D5\u05D5\u05D7 IPv4",cidrv6:"\u05D8\u05D5\u05D5\u05D7 IPv6",base64:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64",base64url:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05E8\u05E9\u05EA",json_string:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON",e164:"\u05DE\u05E1\u05E4\u05E8 E.164",jwt:"JWT",template_literal:"\u05E7\u05DC\u05D8"};return n=>{switch(n.code){case"invalid_type":return`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA ${n.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA ${tt(n.values[0])}`:`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05D0\u05D7\u05EA \u05DE\u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${n.origin??"value"} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${o}${n.maximum.toString()} ${a.unit??"elements"}`:`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${n.origin??"value"} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${n.origin} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${o}${n.minimum.toString()} ${a.unit}`:`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${n.origin} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05E0\u05D4: \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1"${o.prefix}"`:o.format==="ends_with"?`\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05E0\u05D4: \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${o.suffix}"`:o.format==="includes"?`\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05E0\u05D4: \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${o.includes}"`:o.format==="regex"?`\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05E0\u05D4: \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D0\u05D9\u05DD \u05DC\u05EA\u05D1\u05E0\u05D9\u05EA ${o.pattern}`:`${i[o.format]??n.format} \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF`}case"not_multiple_of":return`\u05DE\u05E1\u05E4\u05E8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA \u05DE\u05DB\u05E4\u05DC\u05D4 \u05E9\u05DC ${n.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${n.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${n.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u05DE\u05E4\u05EA\u05D7 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${n.origin}`;case"invalid_union":return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF";case"invalid_element":return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${n.origin}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};function g$(){return{localeError:MJ()}}var CJ=()=>{let t={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"sz\xE1m";case"object":{if(Array.isArray(n))return"t\xF6mb";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"bemenet",email:"email c\xEDm",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO id\u0151b\xE9lyeg",date:"ISO d\xE1tum",time:"ISO id\u0151",duration:"ISO id\u0151intervallum",ipv4:"IPv4 c\xEDm",ipv6:"IPv6 c\xEDm",cidrv4:"IPv4 tartom\xE1ny",cidrv6:"IPv6 tartom\xE1ny",base64:"base64-k\xF3dolt string",base64url:"base64url-k\xF3dolt string",json_string:"JSON string",e164:"E.164 sz\xE1m",jwt:"JWT",template_literal:"bemenet"};return n=>{switch(n.code){case"invalid_type":return`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${n.expected}, a kapott \xE9rt\xE9k ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${tt(n.values[0])}`:`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`T\xFAl nagy: ${n.origin??"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${o}${n.maximum.toString()} ${a.unit??"elem"}`:`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${n.origin??"\xE9rt\xE9k"} t\xFAl nagy: ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} m\xE9rete t\xFAl kicsi ${o}${n.minimum.toString()} ${a.unit}`:`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} t\xFAl kicsi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\xC9rv\xE9nytelen string: "${o.prefix}" \xE9rt\xE9kkel kell kezd\u0151dnie`:o.format==="ends_with"?`\xC9rv\xE9nytelen string: "${o.suffix}" \xE9rt\xE9kkel kell v\xE9gz\u0151dnie`:o.format==="includes"?`\xC9rv\xE9nytelen string: "${o.includes}" \xE9rt\xE9ket kell tartalmaznia`:o.format==="regex"?`\xC9rv\xE9nytelen string: ${o.pattern} mint\xE1nak kell megfelelnie`:`\xC9rv\xE9nytelen ${i[o.format]??n.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${n.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${n.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${n.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};function v$(){return{localeError:CJ()}}var $J=()=>{let t={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Input tidak valid: diharapkan ${n.expected}, diterima ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Input tidak valid: diharapkan ${tt(n.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Terlalu besar: diharapkan ${n.origin??"value"} memiliki ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: diharapkan ${n.origin??"value"} menjadi ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Terlalu kecil: diharapkan ${n.origin} memiliki ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: diharapkan ${n.origin} menjadi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak valid: harus dimulai dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak valid: harus berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak valid: harus menyertakan "${o.includes}"`:o.format==="regex"?`String tidak valid: harus sesuai pola ${o.pattern}`:`${i[o.format]??n.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${n.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${n.origin}`;default:return"Input tidak valid"}}};function y$(){return{localeError:$J()}}var IJ=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"n\xFAmer";case"object":{if(Array.isArray(t))return"fylki";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},FJ=()=>{let t={string:{unit:"stafi",verb:"a\xF0 hafa"},file:{unit:"b\xE6ti",verb:"a\xF0 hafa"},array:{unit:"hluti",verb:"a\xF0 hafa"},set:{unit:"hluti",verb:"a\xF0 hafa"}};function e(i){return t[i]??null}let r={regex:"gildi",email:"netfang",url:"vefsl\xF3\xF0",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og t\xEDmi",date:"ISO dagsetning",time:"ISO t\xEDmi",duration:"ISO t\xEDmalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 t\xF6lugildi",jwt:"JWT",template_literal:"gildi"};return i=>{switch(i.code){case"invalid_type":return`Rangt gildi: \xDE\xFA sl\xF3st inn ${IJ(i.input)} \xFEar sem \xE1 a\xF0 vera ${i.expected}`;case"invalid_value":return i.values.length===1?`Rangt gildi: gert r\xE1\xF0 fyrir ${tt(i.values[0])}`:`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${Ie(i.values,"|")}`;case"too_big":{let n=i.inclusive?"<=":"<",o=e(i.origin);return o?`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin??"gildi"} hafi ${n}${i.maximum.toString()} ${o.unit??"hluti"}`:`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin??"gildi"} s\xE9 ${n}${i.maximum.toString()}`}case"too_small":{let n=i.inclusive?">=":">",o=e(i.origin);return o?`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin} hafi ${n}${i.minimum.toString()} ${o.unit}`:`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin} s\xE9 ${n}${i.minimum.toString()}`}case"invalid_format":{let n=i;return n.format==="starts_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 byrja \xE1 "${n.prefix}"`:n.format==="ends_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 enda \xE1 "${n.suffix}"`:n.format==="includes"?`\xD3gildur strengur: ver\xF0ur a\xF0 innihalda "${n.includes}"`:n.format==="regex"?`\xD3gildur strengur: ver\xF0ur a\xF0 fylgja mynstri ${n.pattern}`:`Rangt ${r[n.format]??i.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${Ie(i.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${i.origin}`;default:return"Rangt gildi"}}};function b$(){return{localeError:FJ()}}var kJ=()=>{let t={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"numero";case"object":{if(Array.isArray(n))return"vettore";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Input non valido: atteso ${n.expected}, ricevuto ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Input non valido: atteso ${tt(n.values[0])}`:`Opzione non valida: atteso uno tra ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Troppo grande: ${n.origin??"valore"} deve avere ${o}${n.maximum.toString()} ${a.unit??"elementi"}`:`Troppo grande: ${n.origin??"valore"} deve essere ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Troppo piccolo: ${n.origin} deve avere ${o}${n.minimum.toString()} ${a.unit}`:`Troppo piccolo: ${n.origin} deve essere ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Stringa non valida: deve iniziare con "${o.prefix}"`:o.format==="ends_with"?`Stringa non valida: deve terminare con "${o.suffix}"`:o.format==="includes"?`Stringa non valida: deve includere "${o.includes}"`:o.format==="regex"?`Stringa non valida: deve corrispondere al pattern ${o.pattern}`:`Invalid ${i[o.format]??n.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${n.divisor}`;case"unrecognized_keys":return`Chiav${n.keys.length>1?"i":"e"} non riconosciut${n.keys.length>1?"e":"a"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${n.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${n.origin}`;default:return"Input non valido"}}};function x$(){return{localeError:kJ()}}var PJ=()=>{let t={string:{unit:"\u6587\u5B57",verb:"\u3067\u3042\u308B"},file:{unit:"\u30D0\u30A4\u30C8",verb:"\u3067\u3042\u308B"},array:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"},set:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u6570\u5024";case"object":{if(Array.isArray(n))return"\u914D\u5217";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u5165\u529B\u5024",email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",url:"URL",emoji:"\u7D75\u6587\u5B57",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u6642",date:"ISO\u65E5\u4ED8",time:"ISO\u6642\u523B",duration:"ISO\u671F\u9593",ipv4:"IPv4\u30A2\u30C9\u30EC\u30B9",ipv6:"IPv6\u30A2\u30C9\u30EC\u30B9",cidrv4:"IPv4\u7BC4\u56F2",cidrv6:"IPv6\u7BC4\u56F2",base64:"base64\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",base64url:"base64url\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",json_string:"JSON\u6587\u5B57\u5217",e164:"E.164\u756A\u53F7",jwt:"JWT",template_literal:"\u5165\u529B\u5024"};return n=>{switch(n.code){case"invalid_type":return`\u7121\u52B9\u306A\u5165\u529B: ${n.expected}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${r(n.input)}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`;case"invalid_value":return n.values.length===1?`\u7121\u52B9\u306A\u5165\u529B: ${tt(n.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u9078\u629E: ${Ie(n.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let o=n.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",a=e(n.origin);return a?`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${a.unit??"\u8981\u7D20"}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let o=n.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",a=e(n.origin);return a?`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${a.unit}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.prefix}"\u3067\u59CB\u307E\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="ends_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.suffix}"\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="includes"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.includes}"\u3092\u542B\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="regex"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: \u30D1\u30BF\u30FC\u30F3${o.pattern}\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u7121\u52B9\u306A${i[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${n.divisor}\u306E\u500D\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"unrecognized_keys":return`\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u30AD\u30FC${n.keys.length>1?"\u7FA4":""}: ${Ie(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};function _$(){return{localeError:PJ()}}var BJ=()=>{let t={string:{unit:"\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},file:{unit:"\u1794\u17C3",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},array:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},set:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"\u1798\u17B7\u1793\u1798\u17C2\u1793\u1787\u17B6\u179B\u17C1\u1781 (NaN)":"\u179B\u17C1\u1781";case"object":{if(Array.isArray(n))return"\u17A2\u17B6\u179A\u17C1 (Array)";if(n===null)return"\u1782\u17D2\u1798\u17B6\u1793\u178F\u1798\u17D2\u179B\u17C3 (null)";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B",email:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793\u17A2\u17CA\u17B8\u1798\u17C2\u179B",url:"URL",emoji:"\u179F\u1789\u17D2\u1789\u17B6\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 \u1793\u17B7\u1784\u1798\u17C9\u17C4\u1784 ISO",date:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 ISO",time:"\u1798\u17C9\u17C4\u1784 ISO",duration:"\u179A\u1799\u17C8\u1796\u17C1\u179B ISO",ipv4:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",ipv6:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",cidrv4:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",cidrv6:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",base64:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64",base64url:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64url",json_string:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",e164:"\u179B\u17C1\u1781 E.164",jwt:"JWT",template_literal:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"};return n=>{switch(n.code){case"invalid_type":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.expected} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${tt(n.values[0])}`:`\u1787\u1798\u17D2\u179A\u17BE\u179F\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1787\u17B6\u1798\u17BD\u1799\u1780\u17D2\u1793\u17BB\u1784\u1785\u17C6\u178E\u17C4\u1798 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()} ${a.unit??"\u1792\u17B6\u178F\u17BB"}`:`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()} ${a.unit}`:`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1785\u17B6\u1794\u17CB\u1795\u17D2\u178F\u17BE\u1798\u178A\u17C4\u1799 "${o.prefix}"`:o.format==="ends_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1794\u1789\u17D2\u1785\u1794\u17CB\u178A\u17C4\u1799 "${o.suffix}"`:o.format==="includes"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1798\u17B6\u1793 "${o.includes}"`:o.format==="regex"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1795\u17D2\u1782\u17BC\u1795\u17D2\u1782\u1784\u1793\u17B9\u1784\u1791\u1798\u17D2\u179A\u1784\u17CB\u178A\u17C2\u179B\u1794\u17B6\u1793\u1780\u17C6\u178E\u178F\u17CB ${o.pattern}`:`\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 ${i[o.format]??n.format}`}case"not_multiple_of":return`\u179B\u17C1\u1781\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1787\u17B6\u1796\u17A0\u17BB\u1782\u17BB\u178E\u1793\u17C3 ${n.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${Ie(n.keys,", ")}`;case"invalid_key":return`\u179F\u17C4\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;case"invalid_union":return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C";case"invalid_element":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;default:return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C"}}};function w$(){return{localeError:BJ()}}var OJ=()=>{let t={string:{unit:"\uBB38\uC790",verb:"to have"},file:{unit:"\uBC14\uC774\uD2B8",verb:"to have"},array:{unit:"\uAC1C",verb:"to have"},set:{unit:"\uAC1C",verb:"to have"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\uC785\uB825",email:"\uC774\uBA54\uC77C \uC8FC\uC18C",url:"URL",emoji:"\uC774\uBAA8\uC9C0",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \uB0A0\uC9DC\uC2DC\uAC04",date:"ISO \uB0A0\uC9DC",time:"ISO \uC2DC\uAC04",duration:"ISO \uAE30\uAC04",ipv4:"IPv4 \uC8FC\uC18C",ipv6:"IPv6 \uC8FC\uC18C",cidrv4:"IPv4 \uBC94\uC704",cidrv6:"IPv6 \uBC94\uC704",base64:"base64 \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",base64url:"base64url \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",json_string:"JSON \uBB38\uC790\uC5F4",e164:"E.164 \uBC88\uD638",jwt:"JWT",template_literal:"\uC785\uB825"};return n=>{switch(n.code){case"invalid_type":return`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 ${n.expected}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${r(n.input)}\uC785\uB2C8\uB2E4`;case"invalid_value":return n.values.length===1?`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${tt(n.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC635\uC158: ${Ie(n.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let o=n.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",a=o==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",s=e(n.origin),l=s?.unit??"\uC694\uC18C";return s?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()}${l} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()} ${o}${a}`}case"too_small":{let o=n.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",a=o==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",s=e(n.origin),l=s?.unit??"\uC694\uC18C";return s?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()}${l} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()} ${o}${a}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.prefix}"(\uC73C)\uB85C \uC2DC\uC791\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="ends_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.suffix}"(\uC73C)\uB85C \uB05D\uB098\uC57C \uD569\uB2C8\uB2E4`:o.format==="includes"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.includes}"\uC744(\uB97C) \uD3EC\uD568\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="regex"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: \uC815\uADDC\uC2DD ${o.pattern} \uD328\uD134\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C ${i[o.format]??n.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${n.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${Ie(n.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${n.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${n.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};function S$(){return{localeError:OJ()}}var RJ=()=>{let t={string:{unit:"\u0437\u043D\u0430\u0446\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},file:{unit:"\u0431\u0430\u0458\u0442\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},array:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},set:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u0431\u0440\u043E\u0458";case"object":{if(Array.isArray(n))return"\u043D\u0438\u0437\u0430";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0432\u043D\u0435\u0441",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u043D\u0430 \u0435-\u043F\u043E\u0448\u0442\u0430",url:"URL",emoji:"\u0435\u043C\u043E\u045F\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0443\u043C \u0438 \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0443\u043C",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u0432\u0440\u0435\u043C\u0435\u0442\u0440\u0430\u0435\u045A\u0435",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441\u0430",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441\u0430",cidrv4:"IPv4 \u043E\u043F\u0441\u0435\u0433",cidrv6:"IPv6 \u043E\u043F\u0441\u0435\u0433",base64:"base64-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",base64url:"base64url-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",json_string:"JSON \u043D\u0438\u0437\u0430",e164:"E.164 \u0431\u0440\u043E\u0458",jwt:"JWT",template_literal:"\u0432\u043D\u0435\u0441"};return n=>{switch(n.code){case"invalid_type":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.expected}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${tt(n.values[0])}`:`\u0413\u0440\u0435\u0448\u0430\u043D\u0430 \u043E\u043F\u0446\u0438\u0458\u0430: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 \u0435\u0434\u043D\u0430 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438"}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.minimum.toString()} ${a.unit}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0443\u0432\u0430 \u0441\u043E "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430 \u0441\u043E "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0432\u043A\u043B\u0443\u0447\u0443\u0432\u0430 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u043E\u0434\u0433\u043E\u0430\u0440\u0430 \u043D\u0430 \u043F\u0430\u0442\u0435\u0440\u043D\u043E\u0442 ${o.pattern}`:`Invalid ${i[o.format]??n.format}`}case"not_multiple_of":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0431\u0440\u043E\u0458: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0431\u0438\u0434\u0435 \u0434\u0435\u043B\u0438\u0432 \u0441\u043E ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D\u0438 \u043A\u043B\u0443\u0447\u0435\u0432\u0438":"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D \u043A\u043B\u0443\u0447"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${n.origin}`;case"invalid_union":return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441";case"invalid_element":return`\u0413\u0440\u0435\u0448\u043D\u0430 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442 \u0432\u043E ${n.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};function D$(){return{localeError:RJ()}}var LJ=()=>{let t={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"nombor";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Input tidak sah: dijangka ${n.expected}, diterima ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Input tidak sah: dijangka ${tt(n.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Terlalu besar: dijangka ${n.origin??"nilai"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: dijangka ${n.origin??"nilai"} adalah ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Terlalu kecil: dijangka ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: dijangka ${n.origin} adalah ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak sah: mesti bermula dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak sah: mesti berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak sah: mesti mengandungi "${o.includes}"`:o.format==="regex"?`String tidak sah: mesti sepadan dengan corak ${o.pattern}`:`${i[o.format]??n.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${Ie(n.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${n.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${n.origin}`;default:return"Input tidak sah"}}};function E$(){return{localeError:LJ()}}var UJ=()=>{let t={string:{unit:"tekens"},file:{unit:"bytes"},array:{unit:"elementen"},set:{unit:"elementen"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"getal";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"};return n=>{switch(n.code){case"invalid_type":return`Ongeldige invoer: verwacht ${n.expected}, ontving ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Ongeldige invoer: verwacht ${tt(n.values[0])}`:`Ongeldige optie: verwacht \xE9\xE9n van ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Te lang: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} ${a.unit??"elementen"} bevat`:`Te lang: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} is`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Te kort: verwacht dat ${n.origin} ${o}${n.minimum.toString()} ${a.unit} bevat`:`Te kort: verwacht dat ${n.origin} ${o}${n.minimum.toString()} is`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ongeldige tekst: moet met "${o.prefix}" beginnen`:o.format==="ends_with"?`Ongeldige tekst: moet op "${o.suffix}" eindigen`:o.format==="includes"?`Ongeldige tekst: moet "${o.includes}" bevatten`:o.format==="regex"?`Ongeldige tekst: moet overeenkomen met patroon ${o.pattern}`:`Ongeldig: ${i[o.format]??n.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${n.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${n.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${n.origin}`;default:return"Ongeldige invoer"}}};function A$(){return{localeError:UJ()}}var zJ=()=>{let t={string:{unit:"tegn",verb:"\xE5 ha"},file:{unit:"bytes",verb:"\xE5 ha"},array:{unit:"elementer",verb:"\xE5 inneholde"},set:{unit:"elementer",verb:"\xE5 inneholde"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"tall";case"object":{if(Array.isArray(n))return"liste";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Ugyldig input: forventet ${n.expected}, fikk ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Ugyldig verdi: forventet ${tt(n.values[0])}`:`Ugyldig valg: forventet en av ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()} ${a.unit??"elementer"}`:`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()} ${a.unit}`:`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ugyldig streng: m\xE5 starte med "${o.prefix}"`:o.format==="ends_with"?`Ugyldig streng: m\xE5 ende med "${o.suffix}"`:o.format==="includes"?`Ugyldig streng: m\xE5 inneholde "${o.includes}"`:o.format==="regex"?`Ugyldig streng: m\xE5 matche m\xF8nsteret ${o.pattern}`:`Ugyldig ${i[o.format]??n.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${n.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${n.origin}`;default:return"Ugyldig input"}}};function T$(){return{localeError:zJ()}}var VJ=()=>{let t={string:{unit:"harf",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"unsur",verb:"olmal\u0131d\u0131r"},set:{unit:"unsur",verb:"olmal\u0131d\u0131r"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"numara";case"object":{if(Array.isArray(n))return"saf";if(n===null)return"gayb";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"giren",email:"epostag\xE2h",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO heng\xE2m\u0131",date:"ISO tarihi",time:"ISO zaman\u0131",duration:"ISO m\xFCddeti",ipv4:"IPv4 ni\u015F\xE2n\u0131",ipv6:"IPv6 ni\u015F\xE2n\u0131",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-\u015Fifreli metin",base64url:"base64url-\u015Fifreli metin",json_string:"JSON metin",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"giren"};return n=>{switch(n.code){case"invalid_type":return`F\xE2sit giren: umulan ${n.expected}, al\u0131nan ${r(n.input)}`;case"invalid_value":return n.values.length===1?`F\xE2sit giren: umulan ${tt(n.values[0])}`:`F\xE2sit tercih: m\xFBteberler ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} ${a.unit??"elements"} sahip olmal\u0131yd\u0131.`:`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} ${a.unit} sahip olmal\u0131yd\u0131.`:`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let o=n;return o.format==="starts_with"?`F\xE2sit metin: "${o.prefix}" ile ba\u015Flamal\u0131.`:o.format==="ends_with"?`F\xE2sit metin: "${o.suffix}" ile bitmeli.`:o.format==="includes"?`F\xE2sit metin: "${o.includes}" ihtiv\xE2 etmeli.`:o.format==="regex"?`F\xE2sit metin: ${o.pattern} nak\u015F\u0131na uymal\u0131.`:`F\xE2sit ${i[o.format]??n.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${n.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${n.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};function N$(){return{localeError:VJ()}}var qJ=()=>{let t={string:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},file:{unit:"\u0628\u0627\u06CC\u067C\u0633",verb:"\u0648\u0644\u0631\u064A"},array:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},set:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u0639\u062F\u062F";case"object":{if(Array.isArray(n))return"\u0627\u0631\u06D0";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0648\u0631\u0648\u062F\u064A",email:"\u0628\u0631\u06CC\u069A\u0646\u0627\u0644\u06CC\u06A9",url:"\u06CC\u0648 \u0622\u0631 \u0627\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0646\u06CC\u067C\u0647 \u0627\u0648 \u0648\u062E\u062A",date:"\u0646\u06D0\u067C\u0647",time:"\u0648\u062E\u062A",duration:"\u0645\u0648\u062F\u0647",ipv4:"\u062F IPv4 \u067E\u062A\u0647",ipv6:"\u062F IPv6 \u067E\u062A\u0647",cidrv4:"\u062F IPv4 \u0633\u0627\u062D\u0647",cidrv6:"\u062F IPv6 \u0633\u0627\u062D\u0647",base64:"base64-encoded \u0645\u062A\u0646",base64url:"base64url-encoded \u0645\u062A\u0646",json_string:"JSON \u0645\u062A\u0646",e164:"\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u064A"};return n=>{switch(n.code){case"invalid_type":return`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${n.expected} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${r(n.input)} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`;case"invalid_value":return n.values.length===1?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${tt(n.values[0])} \u0648\u0627\u06CC`:`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${Ie(n.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0648\u064A`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0648\u064A`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.prefix}" \u0633\u0631\u0647 \u067E\u06CC\u0644 \u0634\u064A`:o.format==="ends_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.suffix}" \u0633\u0631\u0647 \u067E\u0627\u06CC \u062A\u0647 \u0648\u0631\u0633\u064A\u0696\u064A`:o.format==="includes"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F "${o.includes}" \u0648\u0644\u0631\u064A`:o.format==="regex"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F ${o.pattern} \u0633\u0631\u0647 \u0645\u0637\u0627\u0628\u0642\u062A \u0648\u0644\u0631\u064A`:`${i[o.format]??n.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${n.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${n.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${n.origin} \u06A9\u06D0`;case"invalid_union":return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A";case"invalid_element":return`\u0646\u0627\u0633\u0645 \u0639\u0646\u0635\u0631 \u067E\u0647 ${n.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};function M$(){return{localeError:qJ()}}var jJ=()=>{let t={string:{unit:"znak\xF3w",verb:"mie\u0107"},file:{unit:"bajt\xF3w",verb:"mie\u0107"},array:{unit:"element\xF3w",verb:"mie\u0107"},set:{unit:"element\xF3w",verb:"mie\u0107"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"liczba";case"object":{if(Array.isArray(n))return"tablica";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"wyra\u017Cenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ci\u0105g znak\xF3w zakodowany w formacie base64",base64url:"ci\u0105g znak\xF3w zakodowany w formacie base64url",json_string:"ci\u0105g znak\xF3w w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wej\u015Bcie"};return n=>{switch(n.code){case"invalid_type":return`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${n.expected}, otrzymano ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${tt(n.values[0])}`:`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.maximum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.minimum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zaczyna\u0107 si\u0119 od "${o.prefix}"`:o.format==="ends_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi ko\u0144czy\u0107 si\u0119 na "${o.suffix}"`:o.format==="includes"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zawiera\u0107 "${o.includes}"`:o.format==="regex"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi odpowiada\u0107 wzorcowi ${o.pattern}`:`Nieprawid\u0142ow(y/a/e) ${i[o.format]??n.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${n.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${n.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${n.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};function C$(){return{localeError:jJ()}}var ZJ=()=>{let t={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"n\xFAmero";case"object":{if(Array.isArray(n))return"array";if(n===null)return"nulo";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"padr\xE3o",email:"endere\xE7o de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"dura\xE7\xE3o ISO",ipv4:"endere\xE7o IPv4",ipv6:"endere\xE7o IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"};return n=>{switch(n.code){case"invalid_type":return`Tipo inv\xE1lido: esperado ${n.expected}, recebido ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: esperado ${tt(n.values[0])}`:`Op\xE7\xE3o inv\xE1lida: esperada uma das ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Muito grande: esperado que ${n.origin??"valor"} tivesse ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Muito grande: esperado que ${n.origin??"valor"} fosse ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Muito pequeno: esperado que ${n.origin} tivesse ${o}${n.minimum.toString()} ${a.unit}`:`Muito pequeno: esperado que ${n.origin} fosse ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Texto inv\xE1lido: deve come\xE7ar com "${o.prefix}"`:o.format==="ends_with"?`Texto inv\xE1lido: deve terminar com "${o.suffix}"`:o.format==="includes"?`Texto inv\xE1lido: deve incluir "${o.includes}"`:o.format==="regex"?`Texto inv\xE1lido: deve corresponder ao padr\xE3o ${o.pattern}`:`${i[o.format]??n.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Chave${n.keys.length>1?"s":""} desconhecida${n.keys.length>1?"s":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${n.origin}`;default:return"Campo inv\xE1lido"}}};function $$(){return{localeError:ZJ()}}function I$(t,e,r,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?r:i}var GJ=()=>{let t={string:{unit:{one:"\u0441\u0438\u043C\u0432\u043E\u043B",few:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",many:"\u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u0430",many:"\u0431\u0430\u0439\u0442"},verb:"\u0438\u043C\u0435\u0442\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u0447\u0438\u0441\u043B\u043E";case"object":{if(Array.isArray(n))return"\u043C\u0430\u0441\u0441\u0438\u0432";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0432\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u044F",duration:"ISO \u0434\u043B\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64",base64url:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64url",json_string:"JSON \u0441\u0442\u0440\u043E\u043A\u0430",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0432\u043E\u0434"};return n=>{switch(n.code){case"invalid_type":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${tt(n.values[0])}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0430\u0440\u0438\u0430\u043D\u0442: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0434\u043D\u043E \u0438\u0437 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let s=Number(n.maximum),l=I$(s,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.maximum.toString()} ${l}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let s=Number(n.minimum),l=I$(s,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.minimum.toString()} ${l}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u043D\u0430\u0447\u0438\u043D\u0430\u0442\u044C\u0441\u044F \u0441 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0442\u044C\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 ${i[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E: \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${n.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0438":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435";case"invalid_element":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"}}};function F$(){return{localeError:GJ()}}var WJ=()=>{let t={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u0161tevilo";case"object":{if(Array.isArray(n))return"tabela";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"vnos",email:"e-po\u0161tni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in \u010Das",date:"ISO datum",time:"ISO \u010Das",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 \u0161tevilka",jwt:"JWT",template_literal:"vnos"};return n=>{switch(n.code){case"invalid_type":return`Neveljaven vnos: pri\u010Dakovano ${n.expected}, prejeto ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Neveljaven vnos: pri\u010Dakovano ${tt(n.values[0])}`:`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} imelo ${o}${n.maximum.toString()} ${a.unit??"elementov"}`:`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Premajhno: pri\u010Dakovano, da bo ${n.origin} imelo ${o}${n.minimum.toString()} ${a.unit}`:`Premajhno: pri\u010Dakovano, da bo ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neveljaven niz: mora se za\u010Deti z "${o.prefix}"`:o.format==="ends_with"?`Neveljaven niz: mora se kon\u010Dati z "${o.suffix}"`:o.format==="includes"?`Neveljaven niz: mora vsebovati "${o.includes}"`:o.format==="regex"?`Neveljaven niz: mora ustrezati vzorcu ${o.pattern}`:`Neveljaven ${i[o.format]??n.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${n.divisor}`;case"unrecognized_keys":return`Neprepoznan${n.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${n.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${n.origin}`;default:return"Neveljaven vnos"}}};function k$(){return{localeError:WJ()}}var HJ=()=>{let t={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att inneh\xE5lla"},set:{unit:"objekt",verb:"att inneh\xE5lla"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"antal";case"object":{if(Array.isArray(n))return"lista";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"regulj\xE4rt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad str\xE4ng",base64url:"base64url-kodad str\xE4ng",json_string:"JSON-str\xE4ng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"};return n=>{switch(n.code){case"invalid_type":return`Ogiltig inmatning: f\xF6rv\xE4ntat ${n.expected}, fick ${r(n.input)}`;case"invalid_value":return n.values.length===1?`Ogiltig inmatning: f\xF6rv\xE4ntat ${tt(n.values[0])}`:`Ogiltigt val: f\xF6rv\xE4ntade en av ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`F\xF6r stor(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()} ${a.unit??"element"}`:`F\xF6r stor(t): f\xF6rv\xE4ntat ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()} ${a.unit}`:`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ogiltig str\xE4ng: m\xE5ste b\xF6rja med "${o.prefix}"`:o.format==="ends_with"?`Ogiltig str\xE4ng: m\xE5ste sluta med "${o.suffix}"`:o.format==="includes"?`Ogiltig str\xE4ng: m\xE5ste inneh\xE5lla "${o.includes}"`:o.format==="regex"?`Ogiltig str\xE4ng: m\xE5ste matcha m\xF6nstret "${o.pattern}"`:`Ogiltig(t) ${i[o.format]??n.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${Ie(n.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${n.origin??"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${n.origin??"v\xE4rdet"}`;default:return"Ogiltig input"}}};function P$(){return{localeError:HJ()}}var YJ=()=>{let t={string:{unit:"\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},file:{unit:"\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},array:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},set:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"\u0B8E\u0BA3\u0BCD \u0B85\u0BB2\u0BCD\u0BB2\u0BBE\u0BA4\u0BA4\u0BC1":"\u0B8E\u0BA3\u0BCD";case"object":{if(Array.isArray(n))return"\u0B85\u0BA3\u0BBF";if(n===null)return"\u0BB5\u0BC6\u0BB1\u0BC1\u0BAE\u0BC8";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1",email:"\u0BAE\u0BBF\u0BA9\u0BCD\u0BA9\u0B9E\u0BCD\u0B9A\u0BB2\u0BCD \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0BA4\u0BC7\u0BA4\u0BBF \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",date:"ISO \u0BA4\u0BC7\u0BA4\u0BBF",time:"ISO \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",duration:"ISO \u0B95\u0BBE\u0BB2 \u0B85\u0BB3\u0BB5\u0BC1",ipv4:"IPv4 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",ipv6:"IPv6 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",cidrv4:"IPv4 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",cidrv6:"IPv6 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",base64:"base64-encoded \u0B9A\u0BB0\u0BAE\u0BCD",base64url:"base64url-encoded \u0B9A\u0BB0\u0BAE\u0BCD",json_string:"JSON \u0B9A\u0BB0\u0BAE\u0BCD",e164:"E.164 \u0B8E\u0BA3\u0BCD",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.expected}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${tt(n.values[0])}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0BAE\u0BCD: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${Ie(n.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} ${a.unit??"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD"} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} ${a.unit} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.prefix}" \u0B87\u0BB2\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="ends_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.suffix}" \u0B87\u0BB2\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BAF \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="includes"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.includes}" \u0B90 \u0B89\u0BB3\u0BCD\u0BB3\u0B9F\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="regex"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: ${o.pattern} \u0BAE\u0BC1\u0BB1\u0BC8\u0BAA\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1\u0B9F\u0BA9\u0BCD \u0BAA\u0BCA\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 ${i[o.format]??n.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${n.divisor} \u0B87\u0BA9\u0BCD \u0BAA\u0BB2\u0BAE\u0BBE\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;case"unrecognized_keys":return`\u0B85\u0B9F\u0BC8\u0BAF\u0BBE\u0BB3\u0BAE\u0BCD \u0BA4\u0BC6\u0BB0\u0BBF\u0BAF\u0BBE\u0BA4 \u0BB5\u0BBF\u0B9A\u0BC8${n.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0B9A\u0BC8`;case"invalid_union":return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1";case"invalid_element":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1`;default:return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1"}}};function B$(){return{localeError:YJ()}}var JJ=()=>{let t={string:{unit:"\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},file:{unit:"\u0E44\u0E1A\u0E15\u0E4C",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},array:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},set:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"\u0E44\u0E21\u0E48\u0E43\u0E0A\u0E48\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02 (NaN)":"\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02";case"object":{if(Array.isArray(n))return"\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)";if(n===null)return"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",email:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",url:"URL",emoji:"\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",date:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",time:"\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",duration:"\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",ipv4:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",ipv6:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",cidrv4:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",cidrv6:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",base64:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",base64url:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",json_string:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",e164:"\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",jwt:"\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",template_literal:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"};return n=>{switch(n.code){case"invalid_type":return`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${n.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${tt(n.values[0])}`:`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19\u0E2B\u0E19\u0E36\u0E48\u0E07\u0E43\u0E19 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",a=e(n.origin);return a?`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()} ${a.unit??"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`:`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",a=e(n.origin);return a?`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()} ${a.unit}`:`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E02\u0E36\u0E49\u0E19\u0E15\u0E49\u0E19\u0E14\u0E49\u0E27\u0E22 "${o.prefix}"`:o.format==="ends_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E25\u0E07\u0E17\u0E49\u0E32\u0E22\u0E14\u0E49\u0E27\u0E22 "${o.suffix}"`:o.format==="includes"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E21\u0E35 "${o.includes}" \u0E2D\u0E22\u0E39\u0E48\u0E43\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21`:o.format==="regex"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14 ${o.pattern}`:`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: ${i[o.format]??n.format}`}case"not_multiple_of":return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E40\u0E1B\u0E47\u0E19\u0E08\u0E33\u0E19\u0E27\u0E19\u0E17\u0E35\u0E48\u0E2B\u0E32\u0E23\u0E14\u0E49\u0E27\u0E22 ${n.divisor} \u0E44\u0E14\u0E49\u0E25\u0E07\u0E15\u0E31\u0E27`;case"unrecognized_keys":return`\u0E1E\u0E1A\u0E04\u0E35\u0E22\u0E4C\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;case"invalid_union":return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E44\u0E21\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E22\u0E39\u0E40\u0E19\u0E35\u0E22\u0E19\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E44\u0E27\u0E49";case"invalid_element":return`\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};function O$(){return{localeError:JJ()}}var XJ=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},KJ=()=>{let t={string:{unit:"karakter",verb:"olmal\u0131"},file:{unit:"bayt",verb:"olmal\u0131"},array:{unit:"\xF6\u011Fe",verb:"olmal\u0131"},set:{unit:"\xF6\u011Fe",verb:"olmal\u0131"}};function e(i){return t[i]??null}let r={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO s\xFCre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aral\u0131\u011F\u0131",cidrv6:"IPv6 aral\u0131\u011F\u0131",base64:"base64 ile \u015Fifrelenmi\u015F metin",base64url:"base64url ile \u015Fifrelenmi\u015F metin",json_string:"JSON dizesi",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"\u015Eablon dizesi"};return i=>{switch(i.code){case"invalid_type":return`Ge\xE7ersiz de\u011Fer: beklenen ${i.expected}, al\u0131nan ${XJ(i.input)}`;case"invalid_value":return i.values.length===1?`Ge\xE7ersiz de\u011Fer: beklenen ${tt(i.values[0])}`:`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${Ie(i.values,"|")}`;case"too_big":{let n=i.inclusive?"<=":"<",o=e(i.origin);return o?`\xC7ok b\xFCy\xFCk: beklenen ${i.origin??"de\u011Fer"} ${n}${i.maximum.toString()} ${o.unit??"\xF6\u011Fe"}`:`\xC7ok b\xFCy\xFCk: beklenen ${i.origin??"de\u011Fer"} ${n}${i.maximum.toString()}`}case"too_small":{let n=i.inclusive?">=":">",o=e(i.origin);return o?`\xC7ok k\xFC\xE7\xFCk: beklenen ${i.origin} ${n}${i.minimum.toString()} ${o.unit}`:`\xC7ok k\xFC\xE7\xFCk: beklenen ${i.origin} ${n}${i.minimum.toString()}`}case"invalid_format":{let n=i;return n.format==="starts_with"?`Ge\xE7ersiz metin: "${n.prefix}" ile ba\u015Flamal\u0131`:n.format==="ends_with"?`Ge\xE7ersiz metin: "${n.suffix}" ile bitmeli`:n.format==="includes"?`Ge\xE7ersiz metin: "${n.includes}" i\xE7ermeli`:n.format==="regex"?`Ge\xE7ersiz metin: ${n.pattern} desenine uymal\u0131`:`Ge\xE7ersiz ${r[n.format]??i.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${i.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${i.keys.length>1?"lar":""}: ${Ie(i.keys,", ")}`;case"invalid_key":return`${i.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${i.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};function R$(){return{localeError:KJ()}}var QJ=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},file:{unit:"\u0431\u0430\u0439\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u0447\u0438\u0441\u043B\u043E";case"object":{if(Array.isArray(n))return"\u043C\u0430\u0441\u0438\u0432";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0457 \u043F\u043E\u0448\u0442\u0438",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0434\u0430\u0442\u0430 \u0442\u0430 \u0447\u0430\u0441 ISO",date:"\u0434\u0430\u0442\u0430 ISO",time:"\u0447\u0430\u0441 ISO",duration:"\u0442\u0440\u0438\u0432\u0430\u043B\u0456\u0441\u0442\u044C ISO",ipv4:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv4",ipv6:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv6",cidrv4:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv4",cidrv6:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv6",base64:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64",base64url:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64url",json_string:"\u0440\u044F\u0434\u043E\u043A JSON",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"};return n=>{switch(n.code){case"invalid_type":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${n.expected}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${tt(n.values[0])}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0430 \u043E\u043F\u0446\u0456\u044F: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F \u043E\u0434\u043D\u0435 \u0437 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432"}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} \u0431\u0443\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043F\u043E\u0447\u0438\u043D\u0430\u0442\u0438\u0441\u044F \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0437\u0430\u043A\u0456\u043D\u0447\u0443\u0432\u0430\u0442\u0438\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043C\u0456\u0441\u0442\u0438\u0442\u0438 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0432\u0456\u0434\u043F\u043E\u0432\u0456\u0434\u0430\u0442\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 ${i[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0447\u0438\u0441\u043B\u043E: \u043F\u043E\u0432\u0438\u043D\u043D\u043E \u0431\u0443\u0442\u0438 \u043A\u0440\u0430\u0442\u043D\u0438\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0456":""}: ${Ie(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456";case"invalid_element":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0443 ${n.origin}`;default:return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"}}};function L$(){return{localeError:QJ()}}var eX=()=>{let t={string:{unit:"\u062D\u0631\u0648\u0641",verb:"\u06C1\u0648\u0646\u0627"},file:{unit:"\u0628\u0627\u0626\u0679\u0633",verb:"\u06C1\u0648\u0646\u0627"},array:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"},set:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"\u0646\u0645\u0628\u0631";case"object":{if(Array.isArray(n))return"\u0622\u0631\u06D2";if(n===null)return"\u0646\u0644";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0627\u0646 \u067E\u0679",email:"\u0627\u06CC \u0645\u06CC\u0644 \u0627\u06CC\u0688\u0631\u06CC\u0633",url:"\u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",uuidv4:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 4",uuidv6:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 6",nanoid:"\u0646\u06CC\u0646\u0648 \u0622\u0626\u06CC \u0688\u06CC",guid:"\u062C\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid2:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC 2",ulid:"\u06CC\u0648 \u0627\u06CC\u0644 \u0622\u0626\u06CC \u0688\u06CC",xid:"\u0627\u06CC\u06A9\u0633 \u0622\u0626\u06CC \u0688\u06CC",ksuid:"\u06A9\u06D2 \u0627\u06CC\u0633 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",datetime:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0688\u06CC\u0679 \u0679\u0627\u0626\u0645",date:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u062A\u0627\u0631\u06CC\u062E",time:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0648\u0642\u062A",duration:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0645\u062F\u062A",ipv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0627\u06CC\u0688\u0631\u06CC\u0633",ipv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0627\u06CC\u0688\u0631\u06CC\u0633",cidrv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0631\u06CC\u0646\u062C",cidrv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0631\u06CC\u0646\u062C",base64:"\u0628\u06CC\u0633 64 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",base64url:"\u0628\u06CC\u0633 64 \u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",json_string:"\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",e164:"\u0627\u06CC 164 \u0646\u0645\u0628\u0631",jwt:"\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",template_literal:"\u0627\u0646 \u067E\u0679"};return n=>{switch(n.code){case"invalid_type":return`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${n.expected} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${r(n.input)} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`;case"invalid_value":return n.values.length===1?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${tt(n.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`:`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${Ie(n.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0627\u0635\u0631"} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${o}${n.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u06D2 ${o}${n.minimum.toString()} ${a.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u0627 ${o}${n.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.prefix}" \u0633\u06D2 \u0634\u0631\u0648\u0639 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="ends_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.suffix}" \u067E\u0631 \u062E\u062A\u0645 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="includes"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.includes}" \u0634\u0627\u0645\u0644 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="regex"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: \u067E\u06CC\u0679\u0631\u0646 ${o.pattern} \u0633\u06D2 \u0645\u06CC\u0686 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:`\u063A\u0644\u0637 ${i[o.format]??n.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${n.divisor} \u06A9\u0627 \u0645\u0636\u0627\u0639\u0641 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;case"unrecognized_keys":return`\u063A\u06CC\u0631 \u062A\u0633\u0644\u06CC\u0645 \u0634\u062F\u06C1 \u06A9\u06CC${n.keys.length>1?"\u0632":""}: ${Ie(n.keys,"\u060C ")}`;case"invalid_key":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};function U$(){return{localeError:eX()}}var tX=()=>{let t={string:{unit:"k\xFD t\u1EF1",verb:"c\xF3"},file:{unit:"byte",verb:"c\xF3"},array:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"},set:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"s\u1ED1";case"object":{if(Array.isArray(n))return"m\u1EA3ng";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u0111\u1EA7u v\xE0o",email:"\u0111\u1ECBa ch\u1EC9 email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ng\xE0y gi\u1EDD ISO",date:"ng\xE0y ISO",time:"gi\u1EDD ISO",duration:"kho\u1EA3ng th\u1EDDi gian ISO",ipv4:"\u0111\u1ECBa ch\u1EC9 IPv4",ipv6:"\u0111\u1ECBa ch\u1EC9 IPv6",cidrv4:"d\u1EA3i IPv4",cidrv6:"d\u1EA3i IPv6",base64:"chu\u1ED7i m\xE3 h\xF3a base64",base64url:"chu\u1ED7i m\xE3 h\xF3a base64url",json_string:"chu\u1ED7i JSON",e164:"s\u1ED1 E.164",jwt:"JWT",template_literal:"\u0111\u1EA7u v\xE0o"};return n=>{switch(n.code){case"invalid_type":return`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${n.expected}, nh\u1EADn \u0111\u01B0\u1EE3c ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${tt(n.values[0])}`:`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"ph\u1EA7n t\u1EED"}`:`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i b\u1EAFt \u0111\u1EA7u b\u1EB1ng "${o.prefix}"`:o.format==="ends_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i k\u1EBFt th\xFAc b\u1EB1ng "${o.suffix}"`:o.format==="includes"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i bao g\u1ED3m "${o.includes}"`:o.format==="regex"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i kh\u1EDBp v\u1EDBi m\u1EABu ${o.pattern}`:`${i[o.format]??n.format} kh\xF4ng h\u1EE3p l\u1EC7`}case"not_multiple_of":return`S\u1ED1 kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i l\xE0 b\u1ED9i s\u1ED1 c\u1EE7a ${n.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${Ie(n.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;case"invalid_union":return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7";case"invalid_element":return`Gi\xE1 tr\u1ECB kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};function z$(){return{localeError:tX()}}var rX=()=>{let t={string:{unit:"\u5B57\u7B26",verb:"\u5305\u542B"},file:{unit:"\u5B57\u8282",verb:"\u5305\u542B"},array:{unit:"\u9879",verb:"\u5305\u542B"},set:{unit:"\u9879",verb:"\u5305\u542B"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"\u975E\u6570\u5B57(NaN)":"\u6570\u5B57";case"object":{if(Array.isArray(n))return"\u6570\u7EC4";if(n===null)return"\u7A7A\u503C(null)";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u8F93\u5165",email:"\u7535\u5B50\u90AE\u4EF6",url:"URL",emoji:"\u8868\u60C5\u7B26\u53F7",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u671F\u65F6\u95F4",date:"ISO\u65E5\u671F",time:"ISO\u65F6\u95F4",duration:"ISO\u65F6\u957F",ipv4:"IPv4\u5730\u5740",ipv6:"IPv6\u5730\u5740",cidrv4:"IPv4\u7F51\u6BB5",cidrv6:"IPv6\u7F51\u6BB5",base64:"base64\u7F16\u7801\u5B57\u7B26\u4E32",base64url:"base64url\u7F16\u7801\u5B57\u7B26\u4E32",json_string:"JSON\u5B57\u7B26\u4E32",e164:"E.164\u53F7\u7801",jwt:"JWT",template_literal:"\u8F93\u5165"};return n=>{switch(n.code){case"invalid_type":return`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${n.expected}\uFF0C\u5B9E\u9645\u63A5\u6536 ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${tt(n.values[0])}`:`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()} ${a.unit??"\u4E2A\u5143\u7D20"}`:`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.prefix}" \u5F00\u5934`:o.format==="ends_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.suffix}" \u7ED3\u5C3E`:o.format==="includes"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F ${o.pattern}`:`\u65E0\u6548${i[o.format]??n.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${n.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${Ie(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${n.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};function V$(){return{localeError:rX()}}var nX=()=>{let t={string:{unit:"\u5B57\u5143",verb:"\u64C1\u6709"},file:{unit:"\u4F4D\u5143\u7D44",verb:"\u64C1\u6709"},array:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"},set:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"number";case"object":{if(Array.isArray(n))return"array";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u8F38\u5165",email:"\u90F5\u4EF6\u5730\u5740",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u65E5\u671F\u6642\u9593",date:"ISO \u65E5\u671F",time:"ISO \u6642\u9593",duration:"ISO \u671F\u9593",ipv4:"IPv4 \u4F4D\u5740",ipv6:"IPv6 \u4F4D\u5740",cidrv4:"IPv4 \u7BC4\u570D",cidrv6:"IPv6 \u7BC4\u570D",base64:"base64 \u7DE8\u78BC\u5B57\u4E32",base64url:"base64url \u7DE8\u78BC\u5B57\u4E32",json_string:"JSON \u5B57\u4E32",e164:"E.164 \u6578\u503C",jwt:"JWT",template_literal:"\u8F38\u5165"};return n=>{switch(n.code){case"invalid_type":return`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${n.expected}\uFF0C\u4F46\u6536\u5230 ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${tt(n.values[0])}`:`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()} ${a.unit??"\u500B\u5143\u7D20"}`:`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()} ${a.unit}`:`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.prefix}" \u958B\u982D`:o.format==="ends_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.suffix}" \u7D50\u5C3E`:o.format==="includes"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u7B26\u5408\u683C\u5F0F ${o.pattern}`:`\u7121\u6548\u7684 ${i[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${n.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${n.keys.length>1?"\u5011":""}\uFF1A${Ie(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};function q$(){return{localeError:nX()}}var iX=()=>{let t={string:{unit:"\xE0mi",verb:"n\xED"},file:{unit:"bytes",verb:"n\xED"},array:{unit:"nkan",verb:"n\xED"},set:{unit:"nkan",verb:"n\xED"}};function e(n){return t[n]??null}let r=n=>{let o=typeof n;switch(o){case"number":return Number.isNaN(n)?"NaN":"n\u1ECD\u0301mb\xE0";case"object":{if(Array.isArray(n))return"akop\u1ECD";if(n===null)return"null";if(Object.getPrototypeOf(n)!==Object.prototype&&n.constructor)return n.constructor.name}}return o},i={regex:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9",email:"\xE0d\xEDr\u1EB9\u0301s\xEC \xECm\u1EB9\u0301l\xEC",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\xE0k\xF3k\xF2 ISO",date:"\u1ECDj\u1ECD\u0301 ISO",time:"\xE0k\xF3k\xF2 ISO",duration:"\xE0k\xF3k\xF2 t\xF3 p\xE9 ISO",ipv4:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv4",ipv6:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv6",cidrv4:"\xE0gb\xE8gb\xE8 IPv4",cidrv6:"\xE0gb\xE8gb\xE8 IPv6",base64:"\u1ECD\u0300r\u1ECD\u0300 t\xED a k\u1ECD\u0301 n\xED base64",base64url:"\u1ECD\u0300r\u1ECD\u0300 base64url",json_string:"\u1ECD\u0300r\u1ECD\u0300 JSON",e164:"n\u1ECD\u0301mb\xE0 E.164",jwt:"JWT",template_literal:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"};return n=>{switch(n.code){case"invalid_type":return`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${n.expected}, \xE0m\u1ECD\u0300 a r\xED ${r(n.input)}`;case"invalid_value":return n.values.length===1?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${tt(n.values[0])}`:`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${Ie(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin??"iye"} ${a.verb} ${o}${n.maximum} ${a.unit}`:`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.maximum}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin} ${a.verb} ${o}${n.minimum} ${a.unit}`:`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.minimum}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\u1EB9\u0300r\u1EB9\u0300 p\u1EB9\u0300l\xFA "${o.prefix}"`:o.format==="ends_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 par\xED p\u1EB9\u0300l\xFA "${o.suffix}"`:o.format==="includes"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 n\xED "${o.includes}"`:o.format==="regex"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\xE1 \xE0p\u1EB9\u1EB9r\u1EB9 mu ${o.pattern}`:`A\u1E63\xEC\u1E63e: ${i[o.format]??n.format}`}case"not_multiple_of":return`N\u1ECD\u0301mb\xE0 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 j\u1EB9\u0301 \xE8y\xE0 p\xEDp\xEDn ti ${n.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${Ie(n.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;case"invalid_union":return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e";case"invalid_element":return`Iye a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};function j$(){return{localeError:iX()}}var R1=Symbol("ZodOutput"),L1=Symbol("ZodInput"),Ac=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let i=r[0];if(this._map.set(e,i),i&&typeof i=="object"&&"id"in i){if(this._idmap.has(i.id))throw new Error(`ID ${i.id} already exists in the registry`);this._idmap.set(i.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let i={...this.get(r)??{}};delete i.id;let n={...i,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function sg(){return new Ac}var Wa=sg();function U1(t,e){return new t({type:"string",...Ye(e)})}function z1(t,e){return new t({type:"string",coerce:!0,...Ye(e)})}function ug(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...Ye(e)})}function Ep(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...Ye(e)})}function lg(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...Ye(e)})}function cg(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Ye(e)})}function fg(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Ye(e)})}function pg(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Ye(e)})}function mg(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...Ye(e)})}function dg(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...Ye(e)})}function hg(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...Ye(e)})}function gg(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...Ye(e)})}function vg(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...Ye(e)})}function yg(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...Ye(e)})}function bg(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...Ye(e)})}function xg(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...Ye(e)})}function _g(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...Ye(e)})}function wg(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...Ye(e)})}function Sg(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Ye(e)})}function Dg(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Ye(e)})}function Eg(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...Ye(e)})}function Ag(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...Ye(e)})}function Tg(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...Ye(e)})}function Ng(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...Ye(e)})}var V1={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function q1(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Ye(e)})}function j1(t,e){return new t({type:"string",format:"date",check:"string_format",...Ye(e)})}function Z1(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...Ye(e)})}function G1(t,e){return new t({type:"string",format:"duration",check:"string_format",...Ye(e)})}function W1(t,e){return new t({type:"number",checks:[],...Ye(e)})}function H1(t,e){return new t({type:"number",coerce:!0,checks:[],...Ye(e)})}function Y1(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...Ye(e)})}function J1(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...Ye(e)})}function X1(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...Ye(e)})}function K1(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...Ye(e)})}function Q1(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...Ye(e)})}function eS(t,e){return new t({type:"boolean",...Ye(e)})}function tS(t,e){return new t({type:"boolean",coerce:!0,...Ye(e)})}function rS(t,e){return new t({type:"bigint",...Ye(e)})}function nS(t,e){return new t({type:"bigint",coerce:!0,...Ye(e)})}function iS(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...Ye(e)})}function oS(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...Ye(e)})}function aS(t,e){return new t({type:"symbol",...Ye(e)})}function sS(t,e){return new t({type:"undefined",...Ye(e)})}function uS(t,e){return new t({type:"null",...Ye(e)})}function lS(t){return new t({type:"any"})}function Tc(t){return new t({type:"unknown"})}function cS(t,e){return new t({type:"never",...Ye(e)})}function fS(t,e){return new t({type:"void",...Ye(e)})}function pS(t,e){return new t({type:"date",...Ye(e)})}function mS(t,e){return new t({type:"date",coerce:!0,...Ye(e)})}function dS(t,e){return new t({type:"nan",...Ye(e)})}function Rs(t,e){return new Qh({check:"less_than",...Ye(e),value:t,inclusive:!1})}function ea(t,e){return new Qh({check:"less_than",...Ye(e),value:t,inclusive:!0})}function Ls(t,e){return new eg({check:"greater_than",...Ye(e),value:t,inclusive:!1})}function so(t,e){return new eg({check:"greater_than",...Ye(e),value:t,inclusive:!0})}function hS(t){return Ls(0,t)}function gS(t){return Rs(0,t)}function vS(t){return ea(0,t)}function yS(t){return so(0,t)}function ml(t,e){return new gw({check:"multiple_of",...Ye(e),value:t})}function Nc(t,e){return new bw({check:"max_size",...Ye(e),maximum:t})}function dl(t,e){return new xw({check:"min_size",...Ye(e),minimum:t})}function Ap(t,e){return new _w({check:"size_equals",...Ye(e),size:t})}function Mc(t,e){return new ww({check:"max_length",...Ye(e),maximum:t})}function bu(t,e){return new Sw({check:"min_length",...Ye(e),minimum:t})}function Cc(t,e){return new Dw({check:"length_equals",...Ye(e),length:t})}function Tp(t,e){return new Ew({check:"string_format",format:"regex",...Ye(e),pattern:t})}function Np(t){return new Aw({check:"string_format",format:"lowercase",...Ye(t)})}function Mp(t){return new Tw({check:"string_format",format:"uppercase",...Ye(t)})}function Cp(t,e){return new Nw({check:"string_format",format:"includes",...Ye(e),includes:t})}function $p(t,e){return new Mw({check:"string_format",format:"starts_with",...Ye(e),prefix:t})}function Ip(t,e){return new Cw({check:"string_format",format:"ends_with",...Ye(e),suffix:t})}function bS(t,e,r){return new $w({check:"property",property:t,schema:e,...Ye(r)})}function Fp(t,e){return new Iw({check:"mime_type",mime:t,...Ye(e)})}function Us(t){return new Fw({check:"overwrite",tx:t})}function kp(t){return Us(e=>e.normalize(t))}function Pp(){return Us(t=>t.trim())}function Bp(){return Us(t=>t.toLowerCase())}function Op(){return Us(t=>t.toUpperCase())}function Rp(t,e,r){return new t({type:"array",element:e,...Ye(r)})}function oX(t,e,r){return new t({type:"union",options:e,...Ye(r)})}function aX(t,e,r,i){return new t({type:"union",options:r,discriminator:e,...Ye(i)})}function sX(t,e,r){return new t({type:"intersection",left:e,right:r})}function xS(t,e,r,i){let n=r instanceof ar,o=n?i:r,a=n?r:null;return new t({type:"tuple",items:e,rest:a,...Ye(o)})}function uX(t,e,r,i){return new t({type:"record",keyType:e,valueType:r,...Ye(i)})}function lX(t,e,r,i){return new t({type:"map",keyType:e,valueType:r,...Ye(i)})}function cX(t,e,r){return new t({type:"set",valueType:e,...Ye(r)})}function fX(t,e,r){let i=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new t({type:"enum",entries:i,...Ye(r)})}function pX(t,e,r){return new t({type:"enum",entries:e,...Ye(r)})}function mX(t,e,r){return new t({type:"literal",values:Array.isArray(e)?e:[e],...Ye(r)})}function _S(t,e){return new t({type:"file",...Ye(e)})}function dX(t,e){return new t({type:"transform",transform:e})}function hX(t,e){return new t({type:"optional",innerType:e})}function gX(t,e){return new t({type:"nullable",innerType:e})}function vX(t,e,r){return new t({type:"default",innerType:e,get defaultValue(){return typeof r=="function"?r():I0(r)}})}function yX(t,e,r){return new t({type:"nonoptional",innerType:e,...Ye(r)})}function bX(t,e){return new t({type:"success",innerType:e})}function xX(t,e,r){return new t({type:"catch",innerType:e,catchValue:typeof r=="function"?r:()=>r})}function _X(t,e,r){return new t({type:"pipe",in:e,out:r})}function wX(t,e){return new t({type:"readonly",innerType:e})}function SX(t,e,r){return new t({type:"template_literal",parts:e,...Ye(r)})}function DX(t,e){return new t({type:"lazy",getter:e})}function EX(t,e){return new t({type:"promise",innerType:e})}function wS(t,e,r){let i=Ye(r);return i.abort??(i.abort=!0),new t({type:"custom",check:"custom",fn:e,...i})}function SS(t,e,r){return new t({type:"custom",check:"custom",fn:e,...Ye(r)})}function DS(t){let e=Z$(r=>(r.addIssue=i=>{if(typeof i=="string")r.issues.push(wc(i,r.value,e._zod.def));else{let n=i;n.fatal&&(n.continue=!1),n.code??(n.code="custom"),n.input??(n.input=r.value),n.inst??(n.inst=e),n.continue??(n.continue=!e._zod.def.abort),r.issues.push(wc(n))}},t(r.value,r)));return e}function Z$(t,e){let r=new an({check:"custom",...Ye(e)});return r._zod.check=t,r}function ES(t,e){let r=Ye(e),i=r.truthy??["true","1","yes","on","y","enabled"],n=r.falsy??["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(i=i.map(d=>typeof d=="string"?d.toLowerCase():d),n=n.map(d=>typeof d=="string"?d.toLowerCase():d));let o=new Set(i),a=new Set(n),s=t.Pipe??Sp,l=t.Boolean??xp,u=t.String??fl,c=t.Transform??wp,f=new c({type:"transform",transform:(d,h)=>{let v=d;return r.case!=="sensitive"&&(v=v.toLowerCase()),o.has(v)?!0:a.has(v)?!1:(h.issues.push({code:"invalid_value",expected:"stringbool",values:[...o,...a],input:h.value,inst:f,continue:!1}),{})},error:r.error}),m=new s({type:"pipe",in:new u({type:"string",error:r.error}),out:f,error:r.error});return new s({type:"pipe",in:m,out:new l({type:"boolean",error:r.error}),error:r.error})}function Mg(t,e,r,i={}){let n=Ye(i),o={...Ye(i),check:"string_format",type:"string",format:e,fn:typeof r=="function"?r:s=>r.test(s),...n};return r instanceof RegExp&&(o.pattern=r),new t(o)}var Cg=class{constructor(e){this._def=e,this.def=e}implement(e){if(typeof e!="function")throw new Error("implement() must be called with a function");let r=(...i)=>{let n=this._def.input?Wh(this._def.input,i,void 0,{callee:r}):i;if(!Array.isArray(n))throw new Error("Invalid arguments schema: not an array or tuple schema.");let o=e(...n);return this._def.output?Wh(this._def.output,o,void 0,{callee:r}):o};return r}implementAsync(e){if(typeof e!="function")throw new Error("implement() must be called with a function");let r=async(...i)=>{let n=this._def.input?await Yh(this._def.input,i,void 0,{callee:r}):i;if(!Array.isArray(n))throw new Error("Invalid arguments schema: not an array or tuple schema.");let o=await e(...n);return this._def.output?Yh(this._def.output,o,void 0,{callee:r}):o};return r}input(...e){let r=this.constructor;return Array.isArray(e[0])?new r({type:"function",input:new pl({type:"tuple",items:e[0],rest:e[1]}),output:this._def.output}):new r({type:"function",input:e[0],output:this._def.output})}output(e){let r=this.constructor;return new r({type:"function",input:this._def.input,output:e})}};function AS(t){return new Cg({type:"function",input:Array.isArray(t?.input)?xS(pl,t?.input):t?.input??Rp(_p,Tc(Ec)),output:t?.output??Tc(Ec)})}var Lp=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Wa,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var i;let n=e._zod.def,o={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},a=this.seen.get(e);if(a)return a.count++,r.schemaPath.includes(e)&&(a.cycle=r.path),a.schema;let s={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,s);let l=e._zod.toJSONSchema?.();if(l)s.schema=l;else{let f={...r,schemaPath:[...r.schemaPath,e],path:r.path},m=e._zod.parent;if(m)s.ref=m,this.process(m,f),this.seen.get(m).isParent=!0;else{let p=s.schema;switch(n.type){case"string":{let d=p;d.type="string";let{minimum:h,maximum:v,format:y,patterns:S,contentEncoding:b}=e._zod.bag;if(typeof h=="number"&&(d.minLength=h),typeof v=="number"&&(d.maxLength=v),y&&(d.format=o[y]??y,d.format===""&&delete d.format),b&&(d.contentEncoding=b),S&&S.size>0){let _=[...S];_.length===1?d.pattern=_[0].source:_.length>1&&(s.schema.allOf=[..._.map(w=>({...this.target==="draft-7"||this.target==="draft-4"?{type:"string"}:{},pattern:w.source}))])}break}case"number":{let d=p,{minimum:h,maximum:v,format:y,multipleOf:S,exclusiveMaximum:b,exclusiveMinimum:_}=e._zod.bag;typeof y=="string"&&y.includes("int")?d.type="integer":d.type="number",typeof _=="number"&&(this.target==="draft-4"?(d.minimum=_,d.exclusiveMinimum=!0):d.exclusiveMinimum=_),typeof h=="number"&&(d.minimum=h,typeof _=="number"&&this.target!=="draft-4"&&(_>=h?delete d.minimum:delete d.exclusiveMinimum)),typeof b=="number"&&(this.target==="draft-4"?(d.maximum=b,d.exclusiveMaximum=!0):d.exclusiveMaximum=b),typeof v=="number"&&(d.maximum=v,typeof b=="number"&&this.target!=="draft-4"&&(b<=v?delete d.maximum:delete d.exclusiveMaximum)),typeof S=="number"&&(d.multipleOf=S);break}case"boolean":{let d=p;d.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{p.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{p.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let d=p,{minimum:h,maximum:v}=e._zod.bag;typeof h=="number"&&(d.minItems=h),typeof v=="number"&&(d.maxItems=v),d.type="array",d.items=this.process(n.element,{...f,path:[...f.path,"items"]});break}case"object":{let d=p;d.type="object",d.properties={};let h=n.shape;for(let S in h)d.properties[S]=this.process(h[S],{...f,path:[...f.path,"properties",S]});let v=new Set(Object.keys(h)),y=new Set([...v].filter(S=>{let b=n.shape[S]._zod;return this.io==="input"?b.optin===void 0:b.optout===void 0}));y.size>0&&(d.required=Array.from(y)),n.catchall?._zod.def.type==="never"?d.additionalProperties=!1:n.catchall?n.catchall&&(d.additionalProperties=this.process(n.catchall,{...f,path:[...f.path,"additionalProperties"]})):this.io==="output"&&(d.additionalProperties=!1);break}case"union":{let d=p;d.anyOf=n.options.map((h,v)=>this.process(h,{...f,path:[...f.path,"anyOf",v]}));break}case"intersection":{let d=p,h=this.process(n.left,{...f,path:[...f.path,"allOf",0]}),v=this.process(n.right,{...f,path:[...f.path,"allOf",1]}),y=b=>"allOf"in b&&Object.keys(b).length===1,S=[...y(h)?h.allOf:[h],...y(v)?v.allOf:[v]];d.allOf=S;break}case"tuple":{let d=p;d.type="array";let h=n.items.map((S,b)=>this.process(S,{...f,path:[...f.path,"prefixItems",b]}));if(this.target==="draft-2020-12"?d.prefixItems=h:d.items=h,n.rest){let S=this.process(n.rest,{...f,path:[...f.path,"items"]});this.target==="draft-2020-12"?d.items=S:d.additionalItems=S}n.rest&&(d.items=this.process(n.rest,{...f,path:[...f.path,"items"]}));let{minimum:v,maximum:y}=e._zod.bag;typeof v=="number"&&(d.minItems=v),typeof y=="number"&&(d.maxItems=y);break}case"record":{let d=p;d.type="object",this.target!=="draft-4"&&(d.propertyNames=this.process(n.keyType,{...f,path:[...f.path,"propertyNames"]})),d.additionalProperties=this.process(n.valueType,{...f,path:[...f.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let d=p,h=cp(n.entries);h.every(v=>typeof v=="number")&&(d.type="number"),h.every(v=>typeof v=="string")&&(d.type="string"),d.enum=h;break}case"literal":{let d=p,h=[];for(let v of n.values)if(v===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof v=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(v))}else h.push(v);if(h.length!==0)if(h.length===1){let v=h[0];d.type=v===null?"null":typeof v,this.target==="draft-4"?d.enum=[v]:d.const=v}else h.every(v=>typeof v=="number")&&(d.type="number"),h.every(v=>typeof v=="string")&&(d.type="string"),h.every(v=>typeof v=="boolean")&&(d.type="string"),h.every(v=>v===null)&&(d.type="null"),d.enum=h;break}case"file":{let d=p,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:v,maximum:y,mime:S}=e._zod.bag;v!==void 0&&(h.minLength=v),y!==void 0&&(h.maxLength=y),S?S.length===1?(h.contentMediaType=S[0],Object.assign(d,h)):d.anyOf=S.map(b=>({...h,contentMediaType:b})):Object.assign(d,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let d=this.process(n.innerType,f);p.anyOf=[d,{type:"null"}];break}case"nonoptional":{this.process(n.innerType,f),s.ref=n.innerType;break}case"success":{let d=p;d.type="boolean";break}case"default":{this.process(n.innerType,f),s.ref=n.innerType,p.default=JSON.parse(JSON.stringify(n.defaultValue));break}case"prefault":{this.process(n.innerType,f),s.ref=n.innerType,this.io==="input"&&(p._prefault=JSON.parse(JSON.stringify(n.defaultValue)));break}case"catch":{this.process(n.innerType,f),s.ref=n.innerType;let d;try{d=n.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}p.default=d;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let d=p,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");d.type="string",d.pattern=h.source;break}case"pipe":{let d=this.io==="input"?n.in._zod.def.type==="transform"?n.out:n.in:n.out;this.process(d,f),s.ref=d;break}case"readonly":{this.process(n.innerType,f),s.ref=n.innerType,p.readOnly=!0;break}case"promise":{this.process(n.innerType,f),s.ref=n.innerType;break}case"optional":{this.process(n.innerType,f),s.ref=n.innerType;break}case"lazy":{let d=e._zod.innerType;this.process(d,f),s.ref=d;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(s.schema,u),this.io==="input"&&Kn(e)&&(delete s.schema.examples,delete s.schema.default),this.io==="input"&&s.schema._prefault&&((i=s.schema).default??(i.default=s.schema._prefault)),delete s.schema._prefault,this.seen.get(e).schema}emit(e,r){let i={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},n=this.seen.get(e);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");let o=c=>{let f=this.target==="draft-2020-12"?"$defs":"definitions";if(i.external){let h=i.external.registry.get(c[0])?.id,v=i.external.uri??(S=>S);if(h)return{ref:v(h)};let y=c[1].defId??c[1].schema.id??`schema${this.counter++}`;return c[1].defId=y,{defId:y,ref:`${v("__shared")}#/${f}/${y}`}}if(c[1]===n)return{ref:"#"};let p=`#/${f}/`,d=c[1].schema.id??`__schema${this.counter++}`;return{defId:d,ref:p+d}},a=c=>{if(c[1].schema.$ref)return;let f=c[1],{ref:m,defId:p}=o(c);f.def={...f.schema},p&&(f.defId=p);let d=f.schema;for(let h in d)delete d[h];d.$ref=m};if(i.cycles==="throw")for(let c of this.seen.entries()){let f=c[1];if(f.cycle)throw new Error(`Cycle detected: #/${f.cycle?.join("/")}/ + + `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=rv,s=!H_.jitless,c=s&&iv.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?Tb([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function Ob(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!bv(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Cv(e,r,U_())))}),t)}var kb=X(`$ZodUnion`,(e,t)=>{By.init(e,t),Z_(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Z_(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Z_(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Z_(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>J_(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>Ob(t,i,e,a)):Ob(s,i,e,a)}}),Ab=X(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,kb.init(e,t);let n=e._zod.parse;Z_(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=K_(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!rv(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),jb=X(`$ZodIntersection`,(e,t)=>{By.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>Nb(e,t,n)):Nb(e,i,a)}});function Mb(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(av(e)&&av(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Mb(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;re.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),bv(e))return e;let o=Mb(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var Pb=X(`$ZodRecord`,(e,t)=>{By.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!av(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...xv(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...xv(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&_y.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Cv(e,r,U_())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...xv(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...xv(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),Fb=X(`$ZodEnum`,(e,t)=>{By.init(e,t);let n=W_(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>sv.has(typeof e)).map(e=>typeof e==`string`?cv(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),Ib=X(`$ZodLiteral`,(e,t)=>{if(By.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?cv(e):e?cv(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),Lb=X(`$ZodTransform`,(e,t)=>{By.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new V_(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new B_;return n.value=i,n}});function Rb(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}var zb=X(`$ZodOptional`,(e,t)=>{By.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Z_(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Z_(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${J_(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>Rb(t,e.value)):Rb(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Bb=X(`$ZodExactOptional`,(e,t)=>{zb.init(e,t),Z_(e._zod,`values`,()=>t.innerType._zod.values),Z_(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Vb=X(`$ZodNullable`,(e,t)=>{By.init(e,t),Z_(e._zod,`optin`,()=>t.innerType._zod.optin),Z_(e._zod,`optout`,()=>t.innerType._zod.optout),Z_(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${J_(e.source)}|null)$`):void 0}),Z_(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),Hb=X(`$ZodDefault`,(e,t)=>{By.init(e,t),e._zod.optin=`optional`,Z_(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Ub(e,t)):Ub(r,t)}});function Ub(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Wb=X(`$ZodPrefault`,(e,t)=>{By.init(e,t),e._zod.optin=`optional`,Z_(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Gb=X(`$ZodNonOptional`,(e,t)=>{By.init(e,t),Z_(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Kb(t,e)):Kb(i,e)}});function Kb(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var qb=X(`$ZodCatch`,(e,t)=>{By.init(e,t),Z_(e._zod,`optin`,()=>t.innerType._zod.optin),Z_(e._zod,`optout`,()=>t.innerType._zod.optout),Z_(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Cv(e,n,U_()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Cv(e,n,U_()))},input:e.value}),e.issues=[]),e)}}),Jb=X(`$ZodPipe`,(e,t)=>{By.init(e,t),Z_(e._zod,`values`,()=>t.in._zod.values),Z_(e._zod,`optin`,()=>t.in._zod.optin),Z_(e._zod,`optout`,()=>t.out._zod.optout),Z_(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Yb(e,t.in,n)):Yb(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Yb(e,t.out,n)):Yb(r,t.out,n)}});function Yb(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Xb=X(`$ZodReadonly`,(e,t)=>{By.init(e,t),Z_(e._zod,`propValues`,()=>t.innerType._zod.propValues),Z_(e._zod,`values`,()=>t.innerType._zod.values),Z_(e._zod,`optin`,()=>t.innerType?._zod?.optin),Z_(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Zb):Zb(r)}});function Zb(e){return e.value=Object.freeze(e.value),e}var Qb=X(`$ZodCustom`,(e,t)=>{xy.init(e,t),By.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>$b(t,n,r,e));$b(i,n,r,e)}});function $b(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Tv(e))}}var ex,tx=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function nx(){return new tx}(ex=globalThis).__zod_globalRegistry??(ex.__zod_globalRegistry=nx());var rx=globalThis.__zod_globalRegistry;function ix(e,t){return new e({type:`string`,...uv(t)})}function ax(e,t){return new e({type:`string`,coerce:!0,...uv(t)})}function ox(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...uv(t)})}function sx(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...uv(t)})}function cx(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...uv(t)})}function lx(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...uv(t)})}function ux(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...uv(t)})}function dx(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...uv(t)})}function fx(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...uv(t)})}function px(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...uv(t)})}function mx(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...uv(t)})}function hx(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...uv(t)})}function gx(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...uv(t)})}function _x(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...uv(t)})}function vx(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...uv(t)})}function yx(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...uv(t)})}function bx(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...uv(t)})}function xx(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...uv(t)})}function Sx(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...uv(t)})}function Cx(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...uv(t)})}function wx(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...uv(t)})}function Tx(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...uv(t)})}function Ex(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...uv(t)})}function Dx(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...uv(t)})}function Ox(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...uv(t)})}function kx(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...uv(t)})}function Ax(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...uv(t)})}function jx(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...uv(t)})}function Mx(e,t){return new e({type:`number`,checks:[],...uv(t)})}function Nx(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...uv(t)})}function Px(e,t){return new e({type:`boolean`,...uv(t)})}function Fx(e){return new e({type:`any`})}function Ix(e){return new e({type:`unknown`})}function Lx(e,t){return new e({type:`never`,...uv(t)})}function Rx(e,t){return new Cy({check:`less_than`,...uv(t),value:e,inclusive:!1})}function zx(e,t){return new Cy({check:`less_than`,...uv(t),value:e,inclusive:!0})}function Bx(e,t){return new wy({check:`greater_than`,...uv(t),value:e,inclusive:!1})}function Vx(e,t){return new wy({check:`greater_than`,...uv(t),value:e,inclusive:!0})}function Hx(e,t){return new Ty({check:`multiple_of`,...uv(t),value:e})}function Ux(e,t){return new Dy({check:`max_length`,...uv(t),maximum:e})}function Wx(e,t){return new Oy({check:`min_length`,...uv(t),minimum:e})}function Gx(e,t){return new ky({check:`length_equals`,...uv(t),length:e})}function Kx(e,t){return new jy({check:`string_format`,format:`regex`,...uv(t),pattern:e})}function qx(e){return new My({check:`string_format`,format:`lowercase`,...uv(e)})}function Jx(e){return new Ny({check:`string_format`,format:`uppercase`,...uv(e)})}function Yx(e,t){return new Py({check:`string_format`,format:`includes`,...uv(t),includes:e})}function Xx(e,t){return new Fy({check:`string_format`,format:`starts_with`,...uv(t),prefix:e})}function Zx(e,t){return new Iy({check:`string_format`,format:`ends_with`,...uv(t),suffix:e})}function Qx(e){return new Ly({check:`overwrite`,tx:e})}function $x(e){return Qx(t=>t.normalize(e))}function eS(){return Qx(e=>e.trim())}function tS(){return Qx(e=>e.toLowerCase())}function nS(){return Qx(e=>e.toUpperCase())}function rS(){return Qx(e=>tv(e))}function iS(e,t,n){return new e({type:`array`,element:t,...uv(n)})}function aS(e,t,n){let r=uv(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function oS(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...uv(n)})}function sS(e){let t=cS(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(Tv(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(Tv(r))}},e(n.value,n)));return t}function cS(e,t){let n=new xy({check:`custom`,...uv(t)});return n._zod.check=e,n}function lS(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??rx,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function uS(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,uS(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&pS(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&o.schema._prefault&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function dS(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/ -Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let c of this.seen.entries()){let f=c[1];if(e===c[0]){a(c);continue}if(i.external){let p=i.external.registry.get(c[0])?.id;if(e!==c[0]&&p){a(c);continue}}if(this.metadataRegistry.get(c[0])?.id){a(c);continue}if(f.cycle){a(c);continue}if(f.count>1&&i.reused==="ref"){a(c);continue}}let s=(c,f)=>{let m=this.seen.get(c),p=m.def??m.schema,d={...p};if(m.ref===null)return;let h=m.ref;if(m.ref=null,h){s(h,f);let v=this.seen.get(h).schema;v.$ref&&(f.target==="draft-7"||f.target==="draft-4")?(p.allOf=p.allOf??[],p.allOf.push(v)):(Object.assign(p,v),Object.assign(p,d))}m.isParent||this.override({zodSchema:c,jsonSchema:p,path:m.path??[]})};for(let c of[...this.seen.entries()].reverse())s(c[0],{target:this.target});let l={};if(this.target==="draft-2020-12"?l.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?l.$schema="http://json-schema.org/draft-07/schema#":this.target==="draft-4"?l.$schema="http://json-schema.org/draft-04/schema#":console.warn(`Invalid target: ${this.target}`),i.external?.uri){let c=i.external.registry.get(e)?.id;if(!c)throw new Error("Schema is missing an `id` property");l.$id=i.external.uri(c)}Object.assign(l,n.def);let u=i.external?.defs??{};for(let c of this.seen.entries()){let f=c[1];f.def&&f.defId&&(u[f.defId]=f.def)}i.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?l.$defs=u:l.definitions=u);try{return JSON.parse(JSON.stringify(l))}catch{throw new Error("Error converting schema to JSON.")}}};function TS(t,e){if(t instanceof Ac){let i=new Lp(e),n={};for(let s of t._idmap.entries()){let[l,u]=s;i.process(u)}let o={},a={registry:t,uri:e?.uri,defs:n};for(let s of t._idmap.entries()){let[l,u]=s;o[l]=i.emit(u,{...e,external:a})}if(Object.keys(n).length>0){let s=i.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[s]:n}}return{schemas:o}}let r=new Lp(e);return r.process(t),r.emit(t,e)}function Kn(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let n=t._zod.def;switch(n.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return Kn(n.element,r);case"object":{for(let o in n.shape)if(Kn(n.shape[o],r))return!0;return!1}case"union":{for(let o of n.options)if(Kn(o,r))return!0;return!1}case"intersection":return Kn(n.left,r)||Kn(n.right,r);case"tuple":{for(let o of n.items)if(Kn(o,r))return!0;return!!(n.rest&&Kn(n.rest,r))}case"record":return Kn(n.keyType,r)||Kn(n.valueType,r);case"map":return Kn(n.keyType,r)||Kn(n.valueType,r);case"set":return Kn(n.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Kn(n.innerType,r);case"lazy":return Kn(n.getter(),r);case"default":return Kn(n.innerType,r);case"prefault":return Kn(n.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Kn(n.in,r)||Kn(n.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${n.type}`)}var G$={};var Pg={};hs(Pg,{ZodISODate:()=>Ig,ZodISODateTime:()=>$g,ZodISODuration:()=>kg,ZodISOTime:()=>Fg,date:()=>MS,datetime:()=>NS,duration:()=>$S,time:()=>CS});var $g=ye("ZodISODateTime",(t,e)=>{Ww.init(t,e),Kr.init(t,e)});function NS(t){return q1($g,t)}var Ig=ye("ZodISODate",(t,e)=>{Hw.init(t,e),Kr.init(t,e)});function MS(t){return j1(Ig,t)}var Fg=ye("ZodISOTime",(t,e)=>{Yw.init(t,e),Kr.init(t,e)});function CS(t){return Z1(Fg,t)}var kg=ye("ZodISODuration",(t,e)=>{Jw.init(t,e),Kr.init(t,e)});function $S(t){return G1(kg,t)}var H$=(t,e)=>{gp.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>yp(t,r)},flatten:{value:r=>vp(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,_c,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,_c,2)}},isEmpty:{get(){return t.issues.length===0}}})},TX=ye("ZodError",H$),$c=ye("ZodError",H$,{Parent:Error});var IS=Gh($c),FS=Hh($c),kS=Jh($c),PS=Xh($c);var pr=ye("ZodType",(t,e)=>(ar.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(i=>typeof i=="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),t.clone=(r,i)=>ao(t,r,i),t.brand=()=>t,t.register=(r,i)=>(r.add(t,i),t),t.parse=(r,i)=>IS(t,r,i,{callee:t.parse}),t.safeParse=(r,i)=>kS(t,r,i),t.parseAsync=async(r,i)=>FS(t,r,i,{callee:t.parseAsync}),t.safeParseAsync=async(r,i)=>PS(t,r,i),t.spa=t.safeParseAsync,t.refine=(r,i)=>t.check($I(r,i)),t.superRefine=r=>t.check(II(r)),t.overwrite=r=>t.check(Us(r)),t.optional=()=>Rg(t),t.nullable=()=>Lg(t),t.nullish=()=>Rg(Lg(t)),t.nonoptional=r=>xI(t,r),t.array=()=>oD(t),t.or=r=>sD([t,r]),t.and=r=>uI(t,r),t.transform=r=>Ug(t,fD(r)),t.default=r=>vI(t,r),t.prefault=r=>bI(t,r),t.catch=r=>SI(t,r),t.pipe=r=>Ug(t,r),t.readonly=()=>AI(t),t.describe=r=>{let i=t.clone();return Wa.add(i,{description:r}),i},Object.defineProperty(t,"description",{get(){return Wa.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Wa.get(t);let i=t.clone();return Wa.add(i,r[0]),i},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),RS=ye("_ZodString",(t,e)=>{fl.init(t,e),pr.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...i)=>t.check(Tp(...i)),t.includes=(...i)=>t.check(Cp(...i)),t.startsWith=(...i)=>t.check($p(...i)),t.endsWith=(...i)=>t.check(Ip(...i)),t.min=(...i)=>t.check(bu(...i)),t.max=(...i)=>t.check(Mc(...i)),t.length=(...i)=>t.check(Cc(...i)),t.nonempty=(...i)=>t.check(bu(1,...i)),t.lowercase=i=>t.check(Np(i)),t.uppercase=i=>t.check(Mp(i)),t.trim=()=>t.check(Pp()),t.normalize=(...i)=>t.check(kp(...i)),t.toLowerCase=()=>t.check(Bp()),t.toUpperCase=()=>t.check(Op())}),zp=ye("ZodString",(t,e)=>{fl.init(t,e),RS.init(t,e),t.email=r=>t.check(ug(LS,r)),t.url=r=>t.check(mg(US,r)),t.jwt=r=>t.check(Ng(tD,r)),t.emoji=r=>t.check(dg(zS,r)),t.guid=r=>t.check(Ep(Bg,r)),t.uuid=r=>t.check(lg(Vs,r)),t.uuidv4=r=>t.check(cg(Vs,r)),t.uuidv6=r=>t.check(fg(Vs,r)),t.uuidv7=r=>t.check(pg(Vs,r)),t.nanoid=r=>t.check(hg(VS,r)),t.guid=r=>t.check(Ep(Bg,r)),t.cuid=r=>t.check(gg(qS,r)),t.cuid2=r=>t.check(vg(jS,r)),t.ulid=r=>t.check(yg(ZS,r)),t.base64=r=>t.check(Eg(KS,r)),t.base64url=r=>t.check(Ag(QS,r)),t.xid=r=>t.check(bg(GS,r)),t.ksuid=r=>t.check(xg(WS,r)),t.ipv4=r=>t.check(_g(HS,r)),t.ipv6=r=>t.check(wg(YS,r)),t.cidrv4=r=>t.check(Sg(JS,r)),t.cidrv6=r=>t.check(Dg(XS,r)),t.e164=r=>t.check(Tg(eD,r)),t.datetime=r=>t.check(NS(r)),t.date=r=>t.check(MS(r)),t.time=r=>t.check(CS(r)),t.duration=r=>t.check($S(r))});function BS(t){return U1(zp,t)}var Kr=ye("ZodStringFormat",(t,e)=>{Wr.init(t,e),RS.init(t,e)}),LS=ye("ZodEmail",(t,e)=>{Rw.init(t,e),Kr.init(t,e)});function MX(t){return ug(LS,t)}var Bg=ye("ZodGUID",(t,e)=>{Bw.init(t,e),Kr.init(t,e)});function CX(t){return Ep(Bg,t)}var Vs=ye("ZodUUID",(t,e)=>{Ow.init(t,e),Kr.init(t,e)});function $X(t){return lg(Vs,t)}function IX(t){return cg(Vs,t)}function FX(t){return fg(Vs,t)}function kX(t){return pg(Vs,t)}var US=ye("ZodURL",(t,e)=>{Lw.init(t,e),Kr.init(t,e)});function PX(t){return mg(US,t)}var zS=ye("ZodEmoji",(t,e)=>{Uw.init(t,e),Kr.init(t,e)});function BX(t){return dg(zS,t)}var VS=ye("ZodNanoID",(t,e)=>{zw.init(t,e),Kr.init(t,e)});function OX(t){return hg(VS,t)}var qS=ye("ZodCUID",(t,e)=>{Vw.init(t,e),Kr.init(t,e)});function RX(t){return gg(qS,t)}var jS=ye("ZodCUID2",(t,e)=>{qw.init(t,e),Kr.init(t,e)});function LX(t){return vg(jS,t)}var ZS=ye("ZodULID",(t,e)=>{jw.init(t,e),Kr.init(t,e)});function UX(t){return yg(ZS,t)}var GS=ye("ZodXID",(t,e)=>{Zw.init(t,e),Kr.init(t,e)});function zX(t){return bg(GS,t)}var WS=ye("ZodKSUID",(t,e)=>{Gw.init(t,e),Kr.init(t,e)});function VX(t){return xg(WS,t)}var HS=ye("ZodIPv4",(t,e)=>{Xw.init(t,e),Kr.init(t,e)});function qX(t){return _g(HS,t)}var YS=ye("ZodIPv6",(t,e)=>{Kw.init(t,e),Kr.init(t,e)});function jX(t){return wg(YS,t)}var JS=ye("ZodCIDRv4",(t,e)=>{Qw.init(t,e),Kr.init(t,e)});function ZX(t){return Sg(JS,t)}var XS=ye("ZodCIDRv6",(t,e)=>{e1.init(t,e),Kr.init(t,e)});function GX(t){return Dg(XS,t)}var KS=ye("ZodBase64",(t,e)=>{r1.init(t,e),Kr.init(t,e)});function WX(t){return Eg(KS,t)}var QS=ye("ZodBase64URL",(t,e)=>{n1.init(t,e),Kr.init(t,e)});function HX(t){return Ag(QS,t)}var eD=ye("ZodE164",(t,e)=>{i1.init(t,e),Kr.init(t,e)});function YX(t){return Tg(eD,t)}var tD=ye("ZodJWT",(t,e)=>{o1.init(t,e),Kr.init(t,e)});function JX(t){return Ng(tD,t)}var rD=ye("ZodCustomStringFormat",(t,e)=>{a1.init(t,e),Kr.init(t,e)});function XX(t,e,r={}){return Mg(rD,t,e,r)}function KX(t){return Mg(rD,"hostname",Os.hostname,t)}var Vp=ye("ZodNumber",(t,e)=>{ng.init(t,e),pr.init(t,e),t.gt=(i,n)=>t.check(Ls(i,n)),t.gte=(i,n)=>t.check(so(i,n)),t.min=(i,n)=>t.check(so(i,n)),t.lt=(i,n)=>t.check(Rs(i,n)),t.lte=(i,n)=>t.check(ea(i,n)),t.max=(i,n)=>t.check(ea(i,n)),t.int=i=>t.check(OS(i)),t.safe=i=>t.check(OS(i)),t.positive=i=>t.check(Ls(0,i)),t.nonnegative=i=>t.check(so(0,i)),t.negative=i=>t.check(Rs(0,i)),t.nonpositive=i=>t.check(ea(0,i)),t.multipleOf=(i,n)=>t.check(ml(i,n)),t.step=(i,n)=>t.check(ml(i,n)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function Y$(t){return W1(Vp,t)}var Ic=ye("ZodNumberFormat",(t,e)=>{s1.init(t,e),Vp.init(t,e)});function OS(t){return Y1(Ic,t)}function QX(t){return J1(Ic,t)}function eK(t){return X1(Ic,t)}function tK(t){return K1(Ic,t)}function rK(t){return Q1(Ic,t)}var qp=ye("ZodBoolean",(t,e)=>{xp.init(t,e),pr.init(t,e)});function J$(t){return eS(qp,t)}var jp=ye("ZodBigInt",(t,e)=>{ig.init(t,e),pr.init(t,e),t.gte=(i,n)=>t.check(so(i,n)),t.min=(i,n)=>t.check(so(i,n)),t.gt=(i,n)=>t.check(Ls(i,n)),t.gte=(i,n)=>t.check(so(i,n)),t.min=(i,n)=>t.check(so(i,n)),t.lt=(i,n)=>t.check(Rs(i,n)),t.lte=(i,n)=>t.check(ea(i,n)),t.max=(i,n)=>t.check(ea(i,n)),t.positive=i=>t.check(Ls(BigInt(0),i)),t.negative=i=>t.check(Rs(BigInt(0),i)),t.nonpositive=i=>t.check(ea(BigInt(0),i)),t.nonnegative=i=>t.check(so(BigInt(0),i)),t.multipleOf=(i,n)=>t.check(ml(i,n));let r=t._zod.bag;t.minValue=r.minimum??null,t.maxValue=r.maximum??null,t.format=r.format??null});function nK(t){return rS(jp,t)}var nD=ye("ZodBigIntFormat",(t,e)=>{u1.init(t,e),jp.init(t,e)});function iK(t){return iS(nD,t)}function oK(t){return oS(nD,t)}var X$=ye("ZodSymbol",(t,e)=>{l1.init(t,e),pr.init(t,e)});function aK(t){return aS(X$,t)}var K$=ye("ZodUndefined",(t,e)=>{c1.init(t,e),pr.init(t,e)});function sK(t){return sS(K$,t)}var Q$=ye("ZodNull",(t,e)=>{f1.init(t,e),pr.init(t,e)});function eI(t){return uS(Q$,t)}var tI=ye("ZodAny",(t,e)=>{p1.init(t,e),pr.init(t,e)});function uK(){return lS(tI)}var rI=ye("ZodUnknown",(t,e)=>{Ec.init(t,e),pr.init(t,e)});function Og(){return Tc(rI)}var nI=ye("ZodNever",(t,e)=>{m1.init(t,e),pr.init(t,e)});function iD(t){return cS(nI,t)}var iI=ye("ZodVoid",(t,e)=>{d1.init(t,e),pr.init(t,e)});function lK(t){return fS(iI,t)}var zg=ye("ZodDate",(t,e)=>{h1.init(t,e),pr.init(t,e),t.min=(i,n)=>t.check(so(i,n)),t.max=(i,n)=>t.check(ea(i,n));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function cK(t){return pS(zg,t)}var oI=ye("ZodArray",(t,e)=>{_p.init(t,e),pr.init(t,e),t.element=e.element,t.min=(r,i)=>t.check(bu(r,i)),t.nonempty=r=>t.check(bu(1,r)),t.max=(r,i)=>t.check(Mc(r,i)),t.length=(r,i)=>t.check(Cc(r,i)),t.unwrap=()=>t.element});function oD(t,e){return Rp(oI,t,e)}function fK(t){let e=t._zod.def.shape;return lD(Object.keys(e))}var Vg=ye("ZodObject",(t,e)=>{g1.init(t,e),pr.init(t,e),Ke.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>lD(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Og()}),t.loose=()=>t.clone({...t._zod.def,catchall:Og()}),t.strict=()=>t.clone({...t._zod.def,catchall:iD()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Ke.extend(t,r),t.merge=r=>Ke.merge(t,r),t.pick=r=>Ke.pick(t,r),t.omit=r=>Ke.omit(t,r),t.partial=(...r)=>Ke.partial(pD,t,r[0]),t.required=(...r)=>Ke.required(mD,t,r[0])});function pK(t,e){let r={type:"object",get shape(){return Ke.assignProp(this,"shape",t?Ke.objectClone(t):{}),this.shape},...Ke.normalizeParams(e)};return new Vg(r)}function mK(t,e){return new Vg({type:"object",get shape(){return Ke.assignProp(this,"shape",Ke.objectClone(t)),this.shape},catchall:iD(),...Ke.normalizeParams(e)})}function dK(t,e){return new Vg({type:"object",get shape(){return Ke.assignProp(this,"shape",Ke.objectClone(t)),this.shape},catchall:Og(),...Ke.normalizeParams(e)})}var aD=ye("ZodUnion",(t,e)=>{og.init(t,e),pr.init(t,e),t.options=e.options});function sD(t,e){return new aD({type:"union",options:t,...Ke.normalizeParams(e)})}var aI=ye("ZodDiscriminatedUnion",(t,e)=>{aD.init(t,e),v1.init(t,e)});function hK(t,e,r){return new aI({type:"union",options:e,discriminator:t,...Ke.normalizeParams(r)})}var sI=ye("ZodIntersection",(t,e)=>{y1.init(t,e),pr.init(t,e)});function uI(t,e){return new sI({type:"intersection",left:t,right:e})}var lI=ye("ZodTuple",(t,e)=>{pl.init(t,e),pr.init(t,e),t.rest=r=>t.clone({...t._zod.def,rest:r})});function gK(t,e,r){let i=e instanceof ar,n=i?r:e,o=i?e:null;return new lI({type:"tuple",items:t,rest:o,...Ke.normalizeParams(n)})}var uD=ye("ZodRecord",(t,e)=>{b1.init(t,e),pr.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function cI(t,e,r){return new uD({type:"record",keyType:t,valueType:e,...Ke.normalizeParams(r)})}function vK(t,e,r){let i=ao(t);return i._zod.values=void 0,new uD({type:"record",keyType:i,valueType:e,...Ke.normalizeParams(r)})}var fI=ye("ZodMap",(t,e)=>{x1.init(t,e),pr.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function yK(t,e,r){return new fI({type:"map",keyType:t,valueType:e,...Ke.normalizeParams(r)})}var pI=ye("ZodSet",(t,e)=>{_1.init(t,e),pr.init(t,e),t.min=(...r)=>t.check(dl(...r)),t.nonempty=r=>t.check(dl(1,r)),t.max=(...r)=>t.check(Nc(...r)),t.size=(...r)=>t.check(Ap(...r))});function bK(t,e){return new pI({type:"set",valueType:t,...Ke.normalizeParams(e)})}var Up=ye("ZodEnum",(t,e)=>{w1.init(t,e),pr.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(i,n)=>{let o={};for(let a of i)if(r.has(a))o[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Up({...e,checks:[],...Ke.normalizeParams(n),entries:o})},t.exclude=(i,n)=>{let o={...e.entries};for(let a of i)if(r.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new Up({...e,checks:[],...Ke.normalizeParams(n),entries:o})}});function lD(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(i=>[i,i])):t;return new Up({type:"enum",entries:r,...Ke.normalizeParams(e)})}function xK(t,e){return new Up({type:"enum",entries:t,...Ke.normalizeParams(e)})}var mI=ye("ZodLiteral",(t,e)=>{S1.init(t,e),pr.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function _K(t,e){return new mI({type:"literal",values:Array.isArray(t)?t:[t],...Ke.normalizeParams(e)})}var dI=ye("ZodFile",(t,e)=>{D1.init(t,e),pr.init(t,e),t.min=(r,i)=>t.check(dl(r,i)),t.max=(r,i)=>t.check(Nc(r,i)),t.mime=(r,i)=>t.check(Fp(Array.isArray(r)?r:[r],i))});function wK(t){return _S(dI,t)}var cD=ye("ZodTransform",(t,e)=>{wp.init(t,e),pr.init(t,e),t._zod.parse=(r,i)=>{r.addIssue=o=>{if(typeof o=="string")r.issues.push(Ke.issue(o,r.value,e));else{let a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),r.issues.push(Ke.issue(a))}};let n=e.transform(r.value,r);return n instanceof Promise?n.then(o=>(r.value=o,r)):(r.value=n,r)}});function fD(t){return new cD({type:"transform",transform:t})}var pD=ye("ZodOptional",(t,e)=>{E1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Rg(t){return new pD({type:"optional",innerType:t})}var hI=ye("ZodNullable",(t,e)=>{A1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Lg(t){return new hI({type:"nullable",innerType:t})}function SK(t){return Rg(Lg(t))}var gI=ye("ZodDefault",(t,e)=>{T1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function vI(t,e){return new gI({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():Ke.shallowClone(e)}})}var yI=ye("ZodPrefault",(t,e)=>{N1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType});function bI(t,e){return new yI({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():Ke.shallowClone(e)}})}var mD=ye("ZodNonOptional",(t,e)=>{M1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType});function xI(t,e){return new mD({type:"nonoptional",innerType:t,...Ke.normalizeParams(e)})}var _I=ye("ZodSuccess",(t,e)=>{C1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType});function DK(t){return new _I({type:"success",innerType:t})}var wI=ye("ZodCatch",(t,e)=>{$1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function SI(t,e){return new wI({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var DI=ye("ZodNaN",(t,e)=>{I1.init(t,e),pr.init(t,e)});function EK(t){return dS(DI,t)}var dD=ye("ZodPipe",(t,e)=>{Sp.init(t,e),pr.init(t,e),t.in=e.in,t.out=e.out});function Ug(t,e){return new dD({type:"pipe",in:t,out:e})}var EI=ye("ZodReadonly",(t,e)=>{F1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType});function AI(t){return new EI({type:"readonly",innerType:t})}var TI=ye("ZodTemplateLiteral",(t,e)=>{k1.init(t,e),pr.init(t,e)});function AK(t,e){return new TI({type:"template_literal",parts:t,...Ke.normalizeParams(e)})}var NI=ye("ZodLazy",(t,e)=>{B1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.getter()});function MI(t){return new NI({type:"lazy",getter:t})}var CI=ye("ZodPromise",(t,e)=>{P1.init(t,e),pr.init(t,e),t.unwrap=()=>t._zod.def.innerType});function TK(t){return new CI({type:"promise",innerType:t})}var qg=ye("ZodCustom",(t,e)=>{O1.init(t,e),pr.init(t,e)});function NK(t){let e=new an({check:"custom"});return e._zod.check=t,e}function MK(t,e){return wS(qg,t??(()=>!0),e)}function $I(t,e={}){return SS(qg,t,e)}function II(t){return DS(t)}function CK(t,e={error:`Input not instance of ${t.name}`}){let r=new qg({type:"custom",check:"custom",fn:i=>i instanceof t,abort:!0,...Ke.normalizeParams(e)});return r._zod.bag.Class=t,r}var $K=(...t)=>ES({Pipe:dD,Boolean:qp,String:zp,Transform:cD},...t);function IK(t){let e=MI(()=>sD([BS(t),Y$(),J$(),eI(),oD(e),cI(BS(),e)]));return e}function FK(t,e){return Ug(fD(t),e)}var kK={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function PK(t){Rn({customError:t})}function BK(){return Rn().customError}var hD;hD||(hD={});var gD={};hs(gD,{bigint:()=>UK,boolean:()=>LK,date:()=>zK,number:()=>RK,string:()=>OK});function OK(t){return z1(zp,t)}function RK(t){return H1(Vp,t)}function LK(t){return tS(qp,t)}function UK(t){return nS(jp,t)}function zK(t){return mS(zg,t)}Rn(ag());function xu(){return ge.custom(t=>typeof t=="function")}function PI(t,e){return r=>{r.value[t]===void 0==(r.value[e]===void 0)&&r.issues.push({code:"custom",message:`Either ${t} or ${e} must be used, but not both.`,input:r.value})}}function Rt(){return function(t){return t}}function sn(t,e){let r=t.safeParse(e);if(!r.success)throw new jt({errorLevel:"CRITICAL",effect:"Failed to run function due to invalid arguments. Check that the arguments that you are passing to the function match the type definition of the function.",cause:r.error})}function BI(t,e){return t.safeParse(e)}var FI=["zeroth","first","second","third","fourth","fifth","sixth","seventh","eighth","ninth","tenth","eleventh","twelfth","thirteenth","fourteenth","fifteenth","sixteenth","seventeenth","eighteenth","nineteenth"],kI=["twent","thirt","fort","fift","sixt","sevent","eight","ninet"];function VK(t){return t<20?FI[t]:t%10===0?kI[Math.floor(t/10)-2]+"ieth":kI[Math.floor(t/10)-2]+"y-"+FI[t%10]}function jg(t){let e="";for(let r of t.issues){let i=qK(r.path);e+=`\u2716 ${r.message??r.code} - \u2192 at '${i}' -`}return e.trim()}function qK(t){return!t||t.length===0?"unknown location":t.map(e=>typeof e=="string"?e:typeof e=="symbol"?e.toString():VK(e+1)+" element").join(" > ")}function jK(t,e,r){return ge.number({error:i=>i.input===void 0?`The ${t} action requires a specified ${r} with the '${e}' field.`:`The ${t} action requires the value of the '${e}' fields to be a number, but got ${typeof i.input}.`})}function pi(t,e,r){return ge.string({error:i=>i.input===void 0?`The ${t} action requires a specified ${r} with the '${e}' field.`:`The ${t} action requires the value of the '${e}' fields to be a string, but got ${typeof i.input}.`})}function Zg(t,e,r){return ge.coerce.string({error:i=>i.input===void 0?`The ${t} action requires a specified ${r} with the '${e}' field.`:`The ${t} action requires the value of the '${e}' fields to be a string, but got ${typeof i.input}.`})}function qs(t,e,r){return ge.boolean({error:i=>i.input===void 0?`The ${t} action requires a specified ${r} with the '${e}' field.`:`The ${t} action requires the value of the '${e}' fields to be a boolean, but got ${typeof i.input}.`})}var ZK=Rt()(ge.object({type:ge.literal("command"),command:pi("command","command","command to run")})),GK=Rt()(ge.object({type:ge.literal("js"),file:pi("js","file","file path to the file to run"),args:ge.record(ge.string(),ge.unknown()).optional()})),WK=Rt()(ge.object({type:ge.literal("open"),link:pi("open","link","link to open"),newTab:qs("open","newTab","").optional()})),HK=Rt()(ge.object({type:ge.literal("input"),str:pi("input","str","value to input")})),YK=Rt()(ge.object({type:ge.literal("sleep"),ms:jK("sleep","ms","duration")})),JK=Rt()(ge.object({type:ge.literal("templaterCreateNote"),templateFile:pi("templaterCreateNote","templateFile","template file path"),folderPath:pi("templaterCreateNote","folderPath","folder path").optional(),fileName:pi("templaterCreateNote","fileName","file name").optional(),openNote:qs("templaterCreateNote","openNote","value for whether to open the note").optional(),openIfAlreadyExists:qs("templaterCreateNote","openIfAlreadyExists","value for whether to open the note if it already exists").optional()})),XK=Rt()(ge.object({type:ge.literal("runTemplaterFile"),templateFile:pi("runTemplaterFile","templateFile","template file path")})),KK=Rt()(ge.object({type:ge.literal("updateMetadata"),bindTarget:pi("updateMetadata","bindTarget","bind target to the metadata to update"),evaluate:qs("updateMetadata","evaluate","value for whether to evaluate the value as a JavaScript expression"),value:Zg("updateMetadata","value for the update","value")})),QK=Rt()(ge.object({type:ge.literal("createNote"),folderPath:pi("createNote","folderPath","folder path").optional(),fileName:pi("createNote","fileName","file name"),openNote:qs("createNote","openNote","value for whether to open the note").optional(),openIfAlreadyExists:qs("createNote","openIfAlreadyExists","value for whether to open the note if it already exists").optional()})),eQ=Rt()(ge.object({type:ge.literal("replaceInNote"),fromLine:Zg("replaceInNote","fromLine","line to replace from"),toLine:Zg("replaceInNote","toLine","line to replace to"),replacement:pi("replaceInNote","replacement","replacement string"),templater:qs("replaceInNote","templater","value for whether to use Templater").optional()})),tQ=Rt()(ge.object({type:ge.literal("replaceSelf"),replacement:pi("replaceSelf","replacement","replacement string"),templater:qs("replaceSelf","templater","value for whether to use Templater").optional()})),rQ=Rt()(ge.object({type:ge.literal("regexpReplaceInNote"),regexp:pi("regexpReplaceInNote","regexp","search regular expression"),regexpFlags:pi("regexpReplaceInNote","regexpFlags","regular expression flags string").optional(),replacement:pi("regexpReplaceInNote","replacement","replacement string")})),nQ=Rt()(ge.object({type:ge.literal("insertIntoNote"),line:Zg("insertIntoNote","line","line to insert at"),value:pi("insertIntoNote","value","string to insert"),templater:qs("insertIntoNote","templater","value for whether to use Templater").optional()})),iQ=Rt()(ge.object({type:ge.literal("inlineJS"),code:pi("inlineJS","code","code string to run"),args:ge.record(ge.string(),ge.unknown()).optional()})),OI=Rt()(ge.discriminatedUnion("type",[ZK,GK,WK,HK,YK,JK,KK,QK,eQ,tQ,rQ,nQ,iQ,XK])),oQ=ge.nativeEnum(Gr),Fc=Rt()(ge.object({label:ge.string(),icon:ge.string().optional(),style:oQ,class:ge.string().optional(),cssStyle:ge.string().optional(),backgroundImage:ge.string().optional(),tooltip:ge.string().optional(),id:ge.string().optional(),hidden:ge.boolean().optional(),action:OI.optional(),actions:OI.array().optional()}).check(PI("action","actions")));var aQ=Zp.P.sequenceMap((t,e)=>e,Zp.P.string("BUTTON"),Zp.P.manyNotOf("[],^").separateBy(Zp.P.string(",").trim(RI.P_UTILS.optionalWhitespace())).wrapString("[","]")),Gg=class{mb;constructor(e){this.mb=e}fromGroupString(e){let r=new rr("ButtonGroup"),i=[];try{i=fn(aQ,e)}catch(n){r.add(n)}return{declarationString:e,referencedButtonIds:i,errorCollection:r}}validateGroup(e){return{declarationString:void 0,referencedButtonIds:e.referencedButtonIds,errorCollection:new rr("ButtonGroup")}}fromString(e){let r=new rr("Button"),i;try{let n=this.mb.internal.parseYaml(e);i=this.validateConfig(n)}catch(n){r.add(n)}return{declarationString:e,config:i,errorCollection:r}}validateConfig(e){let r=BI(Fc,e);if(!r.success){let i=jg(r.error);throw new vs({errorLevel:"ERROR",effect:"The validation for the button config failed.",cause:"Your button syntax seems to be invalid. Check that your button config follows what is described in the docs.",positionContext:i,docs:[Ht.linkToButtonConfig()]})}return r.data}validate(e){let r=new rr("Button"),i;try{i=this.validateConfig(e)}catch(n){r.add(n)}return{declarationString:void 0,config:i,errorCollection:r}}};var kc=class{arguments=[];add(e){this.arguments.push(e)}validate(){let e={};for(let r of Object.values(nn))e[r]=0;for(let r of this.arguments){let i=r.getConfig();if(e[i.type]+=1,e[i.type]>1&&!i.allowMultiple)throw new Br({errorLevel:"ERROR",effect:"failed to validate argument container",cause:`argument '${i.type}' does not allow duplicates`,docs:[Ht.linkToSearch(i.type)]})}}mergeByOverride(e){for(let r of e.arguments){let i=r.getConfig();i.allowMultiple||(this.arguments=this.arguments.filter(n=>n.getConfig().type!==i.type)),this.arguments.push(r)}return this.validate(),this}mergeByThrow(e){for(let r of e.arguments){let i=r.getConfig();if(!i.allowMultiple&&this.arguments.filter(n=>n.getConfig().type===i.type).length>0)throw new Br({errorLevel:"ERROR",effect:"failed to merge argument container",cause:"can not merge FieldArgumentContainers, since arguments overlap"});this.arguments.push(r)}return this.validate(),this}getAll(e){return this.arguments.filter(r=>r.getConfig().type===e)}get(e){return this.getAll(e).at(0)}};var Wg=class extends kc{getAll(e){return super.getAll(e)}get(e){return this.getAll(e).at(0)}};var Pc=class{value;parseValue(e){this.validateValues(e,this.getConfig().values),this._parseValue(e)}validateValues(e,r){if(r.find(i=>i.length===e.length)===void 0)throw new Br({errorLevel:"WARNING",effect:`Failed to parse argument value for argument '${this.getConfig().type}'.`,cause:`Expected argument values to follow the form ${r.map(i=>i.length===0?"none":i.map(n=>`'${n.name}'`).join(", ")).join(" or ")}. Received arguments of length ${e.length}.`,docs:[Ht.linkToSearch(this.getConfig().type)]})}isAllowed(e){return this.getConfig().allowedFieldTypes.length===0?!0:this.getConfig().allowedFieldTypes.includes(e)}getAllowedFieldsAsString(){return this.getConfig().allowedFieldTypes.length===0?"all":this.getConfig().allowedFieldTypes.join(", ")}};var vr=class extends Pc{};var Hg=class extends vr{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()==="true"}getConfig(){return wr.addLabels}};var Yg=class extends vr{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()==="true"}getConfig(){return wr.allowOther}};var Jg=class extends vr{value=[];_parseValue(e){this.value=e[0].value.split(" ")}getConfig(){return wr.class}};var Xg=class extends vr{value="";_parseValue(e){this.value=_o(e[0].value)}getConfig(){return wr.defaultValue}};var Kg=class extends vr{value=void 0;_parseValue(e){if(this.value=Number.parseInt(e[0].value),Number.isNaN(this.value))throw new Br({errorLevel:"WARNING",effect:"failed to set value for input field argument",cause:"value of argument 'limit' must be of type number",docs:[Ht.linkToInputFieldArgument(this.getConfig().type)]});if(this.value<=0)throw new Br({errorLevel:"WARNING",effect:"failed to set value for input field argument",cause:"value of argument 'limit' must be a positive number",docs:[Ht.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return wr.limit}};var Qg=class extends vr{value=100;_parseValue(e){if(this.value=Number.parseFloat(e[0].value),Number.isNaN(this.value))throw new Br({errorLevel:"WARNING",effect:"failed to set value for input field argument",cause:"value of argument 'maxValue' must be of type number",docs:[Ht.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return wr.maxValue}};var ev=class extends vr{value=0;_parseValue(e){if(this.value=Number.parseFloat(e[0].value),Number.isNaN(this.value))throw new Br({errorLevel:"WARNING",effect:"failed to set value for input field argument",cause:"value of argument 'minValue' must be of type number",docs:[Ht.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return wr.minValue}};var tv=class extends vr{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()==="true"}getConfig(){return wr.multiLine}};var rv=class extends vr{value=!1;_parseValue(e){this.value=_o(e[0].value)}getConfig(){return wr.offValue}};var nv=class extends vr{value=!0;_parseValue(e){this.value=_o(e[0].value)}getConfig(){return wr.onValue}};var iv=class extends vr{value="";name="";_parseValue(e){e.length===1?(this.value=_o(e[0].value),this.name=e[0].value):e.length===2&&(this.value=_o(e[0].value),this.name=e[1].value)}getConfig(){return wr.option}};var ov=class extends vr{value="";_parseValue(e){this.value=e[0].value}getConfig(){return wr.optionQuery}};var av=class extends vr{value="";_parseValue(e){this.value=e[0].value}getConfig(){return wr.placeholder}};var sv=class extends vr{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()==="true"}getConfig(){return wr.showcase}};var uv=class extends vr{value=0;_parseValue(e){if(this.value=Number.parseFloat(e[0].value),Number.isNaN(this.value))throw new Br({errorLevel:"WARNING",effect:"failed to set value for input field argument",cause:"value of argument 'stepSize' must be of type number",docs:[Ht.linkToInputFieldArgument(this.getConfig().type)]});if(this.value<=0)throw new Br({errorLevel:"WARNING",effect:"failed to set value for input field argument",cause:"value of argument 'stepSize' must be a positive number",docs:[Ht.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return wr.stepSize}};var lv=class extends vr{value="";_parseValue(e){this.value=e[0].value}getConfig(){return wr.title}};function LI(t,e,r){return r==="true"?`[[${t}|${e}]]`:r==="partial"?`[[${e}]]`:`${e}`}var cv=class extends vr{value="true";_parseValue(e){let r=e[0]?.value.toLowerCase();if(r===void 0){this.value="true";return}if(r==="true"||r==="partial"||r==="false"){this.value=r;return}throw new Br({errorLevel:"WARNING",effect:"failed to set value for input field argument",cause:`value of argument 'useLinks' must be one of ${ZT(["true","partial","false"],i=>`'${i}'`,", ","or")}`,docs:[Ht.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return wr.useLinks}};var UI={class:Jg,addLabels:Hg,minValue:ev,maxValue:Qg,stepSize:uv,option:iv,title:lv,optionQuery:ov,showcase:sv,offValue:rv,onValue:nv,defaultValue:Xg,placeholder:av,useLinks:cv,limit:Kg,allowOther:Yg,multiLine:tv},fv=class{static createInputFieldArgument(e){if(e in UI){let r=UI[e];if(r)return new r}throw new ma({errorLevel:"WARNING",effect:"can not crate input field argument",cause:`unknown argument '${e}'`})}};var pv=class{unvalidatedDeclaration;errorCollection;filePath;mb;constructor(e,r,i){this.mb=e,this.unvalidatedDeclaration=r,this.filePath=i,this.errorCollection=new rr("input field declaration")}validate(e){let r=this.validateInputFieldType(),i=this.validateBindTarget(e),n=this.validateArguments(r),o={declarationString:this.unvalidatedDeclaration.declarationString,inputFieldType:r,bindTarget:i,argumentContainer:n,errorCollection:this.errorCollection.merge(this.unvalidatedDeclaration.errorCollection)};return this.checkForDeprecation(o),o}validateInputFieldType(){let e=this.unvalidatedDeclaration.inputFieldType;for(let r of Object.entries(uu))if(r[1]===e?.value)return r[1];return this.errorCollection.add(new Pn("ERROR","Declaration Validator",`Encountered invalid identifier. Expected an input field type but received '${e?.value}'.`,this.unvalidatedDeclaration.declarationString,e?.position)),"invalid"}checkForDeprecation(e){}validateBindTarget(e){if(this.unvalidatedDeclaration.bindTarget!==void 0)try{return this.mb.bindTargetParser.validate(this.unvalidatedDeclaration.declarationString,this.unvalidatedDeclaration.bindTarget,this.filePath,e)}catch(r){this.errorCollection.add(r)}}validateArguments(e){let r=new Wg;for(let i of this.unvalidatedDeclaration.arguments){let n=this.validateArgumentType(i.name);if(n==="invalid")continue;let o=fv.createInputFieldArgument(n);if(!o.isAllowed(e)){this.errorCollection.add(new Pn("WARNING","Declaration Validator",`Failed to parse input field arguments. Argument "${i.name.value}" is only applicable to "${o.getAllowedFieldsAsString()}" input fields.`,this.unvalidatedDeclaration.declarationString,i.name.position));continue}try{o.parseValue(i.value)}catch(a){this.errorCollection.add(a);continue}r.add(o)}try{r.validate()}catch(i){this.errorCollection.add(i)}return r}validateArgumentType(e){for(let r of Object.entries(nn))if(r[1]===e.value)return r[1];return this.errorCollection.add(new Pn("WARNING","Declaration Validator",`Encountered invalid identifier. Expected an input field argument type but received '${e.value}'.`,this.unvalidatedDeclaration.declarationString,e.position)),"invalid"}};var Ni=Ar(yo()),Hr=Ar(Ji());var uQ=Hr.P.sequenceMap((t,e,r)=>{let i=r===void 0?void 0:r[1];return{inputFieldType:t,arguments:e,bindTarget:i}},Gn.node(Oi).trim(Ni.P_UTILS.optionalWhitespace()).describe("input field type"),Nf.trim(Ni.P_UTILS.optionalWhitespace()).wrap(Hr.P.string("(").describe('arguments paren "("'),Hr.P.string(")").describe('arguments paren ")"')).trim(Ni.P_UTILS.optionalWhitespace()).optional([]),Hr.P.sequence(Hr.P.string(":").trim(Ni.P_UTILS.optionalWhitespace()).describe('bind target separator ":"'),Ca).trim(Ni.P_UTILS.optionalWhitespace()).optional()),zI=Hr.P.sequenceMap((t,e,r)=>{let i=r===void 0?void 0:r[1];return{inputFieldType:t,arguments:e,bindTarget:i}},Gn.node(Oi).trim(Ni.P_UTILS.optionalWhitespace()).optional().describe("input field type"),Nf.trim(Ni.P_UTILS.optionalWhitespace()).wrap(Hr.P.string("(").describe('arguments paren "("'),Hr.P.string(")").describe('arguments paren ")"')).trim(Ni.P_UTILS.optionalWhitespace()).optional([]),Hr.P.sequence(Hr.P.string(":").trim(Ni.P_UTILS.optionalWhitespace()).describe('bind target separator ":"'),Ca).trim(Ni.P_UTILS.optionalWhitespace()).optional()),VI=Hr.P.or(Hr.P.sequenceMap((t,e,r)=>(r.templateName=e,r),Hr.P.string("INPUT"),Hr.P.sequenceMap((t,e,r)=>e,Hr.P.string("["),IT.node(Oi).trim(Ni.P_UTILS.optionalWhitespace()).describe("template name"),Hr.P.string("]").skip(Ni.P_UTILS.optionalWhitespace())),zI.wrap(Hr.P.string("["),Hr.P.string("]")),Ni.P_UTILS.eof()),Hr.P.sequenceMap((t,e)=>e,Hr.P.string("INPUT"),uQ.wrap(Hr.P.string("["),Hr.P.string("]")),Ni.P_UTILS.eof())),qI=Hr.P.sequenceMap((t,e)=>e,Hr.P.string("INPUT"),zI.wrap(Hr.P.string("["),Hr.P.string("]")),Ni.P_UTILS.eof());var mv=class{mb;templates;constructor(e){this.mb=e,this.templates=[]}fromString(e){let r=new rr("InputField");try{let i=fn(VI,e),n=this.partialToFullDeclaration(i,e,r);return n=this.applyTemplate(n),n}catch(i){r.add(i)}return{declarationString:e,inputFieldType:{value:"invalid"},bindTarget:void 0,arguments:[],errorCollection:r}}fromStringAndValidate(e,r,i){return this.validate(this.fromString(e),r,i)}fromSimpleDeclaration(e){return{declarationString:void 0,inputFieldType:jo(e.inputFieldType),bindTarget:this.mb.bindTargetParser.fromExistingDeclaration(e.bindTarget),arguments:(e.arguments??[]).map(r=>({name:jo(r.name),value:r.value.map(i=>jo(i))})),errorCollection:new rr("InputField")}}fromSimpleDeclarationAndValidate(e,r,i){return this.validate(this.fromSimpleDeclaration(e),r,i)}partialToFullDeclaration(e,r,i){return{...structuredClone(e),declarationString:r,errorCollection:i}}validate(e,r,i){return new pv(this.mb,e,r).validate(i)}merge(e,r){let i;return e.bindTarget===void 0?i=r.bindTarget:(i=e.bindTarget,r.bindTarget?.storagePath!==void 0&&(i.storagePath=r.bindTarget.storagePath),r.bindTarget?.storageProp!==void 0&&(i.storageProp=r.bindTarget.storageProp)),{declarationString:r.declarationString,inputFieldType:r.inputFieldType??e.inputFieldType,bindTarget:i,arguments:r.arguments.concat(e.arguments).reduce((n,o)=>(n.find(a=>a.name===o.name)===void 0&&n.push(o),n),[]),errorCollection:new rr("input field declaration").merge(e.errorCollection).merge(r.errorCollection)}}parseTemplateString(e){let r=new rr("InputFieldParser");try{let i=fn(qI,e);return this.partialToFullDeclaration(i,e,r)}catch(i){r.add(i)}return{declarationString:e,inputFieldType:{value:"invalid"},bindTarget:void 0,arguments:[],errorCollection:r}}parseTemplates(e){this.templates=[];let r=new rr("input field template parser");for(let i of e){let n=this.parseTemplateString(i.declaration);r.merge(n.errorCollection);let o={name:i.name,template:n};this.templates.push(Yx(o))}return r}getTemplate(e){return this.templates.find(r=>r.name===e)?.template}applyTemplate(e){if(e.templateName===void 0)return e;let r=this.getTemplate(e.templateName.value);return r===void 0?(e.errorCollection.add(new Pn("WARNING","Input Field Parser",`Invalid template name. Could not find a template with the name '${e.templateName.value}'.`,e.declarationString,e.templateName.position,["https://mprojectscode.github.io/obsidian-meta-bind-plugin-docs/guides/templates/"])),e):this.merge(r,e)}};var dv=class{mb;constructor(e){this.mb=e}fromString(e){let r=new rr("JsViewFieldDeclaration");try{let i=fn(LT,e);return this.partialToFullDeclaration(i,e,r)}catch(i){r.add(i)}return{declarationString:e,errorCollection:r,bindTargetMappings:[],writeToBindTarget:void 0,hidden:!1,code:""}}fromStringAndValidate(e,r){return this.validate(this.fromString(e),r)}fromSimpleDeclaration(e){let r=new rr("JsViewFieldDeclaration");return{declarationString:void 0,code:e.code,bindTargetMappings:e.bindTargetMappings.map(i=>({bindTarget:this.mb.bindTargetParser.fromExistingDeclaration(i.bindTarget),name:i.name})),writeToBindTarget:this.mb.bindTargetParser.fromExistingDeclaration(e.writeToBindTarget),hidden:e.hidden??!1,errorCollection:r}}fromSimpleDeclarationAndValidate(e,r){return this.validate(this.fromSimpleDeclaration(e),r)}partialToFullDeclaration(e,r,i){let n=e;return n.declarationString=r,n.errorCollection=i,n.bindTargetMappings=[...n.bindTargetMappings],n}validate(e,r){let i={};i.declarationString=e.declarationString,i.errorCollection=e.errorCollection;try{return i.bindTargetMappings=e.bindTargetMappings.map(n=>({bindTarget:this.mb.bindTargetParser.validate(e.declarationString,n.bindTarget,r),name:n.name})),e.writeToBindTarget!==void 0&&(i.writeToBindTarget=this.mb.bindTargetParser.validate(e.declarationString,e.writeToBindTarget,r)),i.code=e.code,i.hidden=e.hidden,i}catch(n){i.errorCollection.add(n)}return{declarationString:e.declarationString,errorCollection:i.errorCollection,bindTargetMappings:[],writeToBindTarget:void 0,hidden:!1,code:""}}};var hv=class extends kc{getAll(e){return super.getAll(e)}get(e){return this.getAll(e).at(0)}};var _u=class extends Pc{};var gv=class extends _u{value=[];_parseValue(e){this.value=e[0].value.split(" ")}getConfig(){return tc.class}};var vv=class extends _u{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()==="true"}getConfig(){return tc.hidden}};var yv=class extends _u{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()==="true"}getConfig(){return tc.renderMarkdown}};var jI={renderMarkdown:yv,hidden:vv,class:gv},bv=class{static createViewFieldArgument(e){if(e in jI){let r=jI[e];if(r)return new r}throw new ma({errorLevel:"WARNING",effect:"can not crate view field argument",cause:`unknown argument '${e}'`})}};var xv=class{unvalidatedDeclaration;errorCollection;filePath;mb;constructor(e,r,i){this.unvalidatedDeclaration=e,this.mb=i,this.filePath=r,this.errorCollection=new rr("view field declaration")}validate(e){let r=this.validateInputFieldType(),i=this.validateBindTarget(e),n=this.validateArguments(r),o=this.validateTemplateDeclaration(e),a={declarationString:this.unvalidatedDeclaration.declarationString,viewFieldType:r,writeToBindTarget:i,argumentContainer:n,templateDeclaration:o,errorCollection:this.errorCollection.merge(this.unvalidatedDeclaration.errorCollection)};return this.checkForDeprecation(a),a}validateInputFieldType(){let e=this.unvalidatedDeclaration.viewFieldType;if(e===void 0)return"math";for(let r of Object.entries(Ff))if(r[1]===e?.value)return r[1];return this.errorCollection.add(new Pn("ERROR","Declaration Validator",`Encountered invalid identifier. Expected a view field type but received '${e.value}'.`,this.unvalidatedDeclaration.declarationString,e.position)),"invalid"}checkForDeprecation(e){}validateBindTarget(e){if(this.unvalidatedDeclaration.writeToBindTarget!==void 0)return this.mb.bindTargetParser.validate(this.unvalidatedDeclaration.declarationString,this.unvalidatedDeclaration.writeToBindTarget,this.filePath,e)}validateArguments(e){let r=new hv;for(let i of this.unvalidatedDeclaration.arguments){let n=this.validateArgumentType(i.name);if(n==="invalid")continue;let o=bv.createViewFieldArgument(n);if(!o.isAllowed(e)){this.errorCollection.add(new Pn("WARNING","Declaration Validator",`Failed to parse view field arguments. Argument "${i.name.value}" is only applicable to "${o.getAllowedFieldsAsString()}" view fields.`,this.unvalidatedDeclaration.declarationString,i.name.position));continue}try{o.parseValue(i.value)}catch(a){this.errorCollection.add(a);continue}r.add(o)}try{r.validate()}catch(i){this.errorCollection.add(i)}return r}validateArgumentType(e){for(let r of Object.entries(Zu))if(r[1]===e.value)return r[1];return this.errorCollection.add(new Pn("WARNING","Declaration Validator",`Encountered invalid identifier. Expected a view field argument type but received '${e.value}'.`,this.unvalidatedDeclaration.declarationString,e.position)),"invalid"}validateTemplateDeclaration(e){try{return this.unvalidatedDeclaration.templateDeclaration?.map(r=>typeof r=="string"?r:this.mb.bindTargetParser.validate(this.unvalidatedDeclaration.declarationString,r,this.filePath,e))??[]}catch(r){return this.errorCollection.add(r),[]}}};var _v=class{mb;constructor(e){this.mb=e}fromString(e){let r=new rr("ViewFieldDeclaration");try{let i=fn(RT,e);return this.partialToFullDeclaration(i,e,r)}catch(i){r.add(i)}return{declarationString:e,errorCollection:r,viewFieldType:{value:"invalid"},writeToBindTarget:void 0,arguments:[],templateDeclaration:[]}}fromStringAndValidate(e,r,i){return this.validate(this.fromString(e),r,i)}fromSimpleDeclaration(e){let r=new rr("ViewFieldDeclaration");return{declarationString:void 0,templateDeclaration:(e.templateDeclaration??[]).map(i=>typeof i=="string"?i:this.mb.bindTargetParser.fromExistingDeclaration(i)),viewFieldType:jo(e.viewFieldType),arguments:(e.arguments??[]).map(i=>({name:jo(i.name),value:i.value.map(n=>jo(n))})),writeToBindTarget:this.mb.bindTargetParser.fromExistingDeclaration(e.writeToBindTarget),errorCollection:r}}fromSimpleDeclarationAndValidate(e,r,i){return this.validate(this.fromSimpleDeclaration(e),r,i)}partialToFullDeclaration(e,r,i){return{...structuredClone(e),declarationString:r,errorCollection:i}}validate(e,r,i){return new xv(e,r,this.mb).validate(i)}};var GI=Ar(ip());var ZI=["January","February","March","April","May","June","July","August","September","October","November","December"],hl=[{index:0,name:"Sunday",shortName:"Su"},{index:1,name:"Monday",shortName:"Mo"},{index:2,name:"Tuesday",shortName:"Tu"},{index:3,name:"Wednesday",shortName:"We"},{index:4,name:"Thursday",shortName:"Th"},{index:5,name:"Friday",shortName:"Fr"},{index:6,name:"Saturday",shortName:"Sa"}],Gp={devMode:!1,ignoreCodeBlockRestrictions:!1,preferredDateFormat:"YYYY-MM-DD",firstWeekday:hl[1],syncInterval:200,enableJs:!1,viewFieldDisplayNullAsEmpty:!1,enableSyntaxHighlighting:!0,enableEditorRightClickMenu:!0,inputFieldTemplates:[],buttonTemplates:[],excludedFolders:["templates"]},wv=50,Sv=1e3;var vD=hl[1];function WI(t){vD=t}function HI(t){return ZI[t]}function YI(t,e){let r=(0,GI.default)(new Date(e,t)).daysInMonth(),i=new Array(42).fill(0),n=lQ(new Date(e,t,1));for(let o=0;o({index:Wx(e.index-vD.index,7),name:e.name,shortName:e.shortName})).sort((e,r)=>e.index-r.index).map(e=>e.shortName)}function XI(){let t=0;return()=>++t}function Dn(){return Dn=Object.assign?Object.assign.bind():function(t){for(var e=1;ethis.has(e)).values()}get(e){return Yr(this.wrappedObject,e)}set(e,r){return Ha(this.wrappedObject,e,r),this}has(e){return Wp(this.wrappedObject,e)&&e in this.wrappedObject}entries(){return QI(this.keys(),e=>[e,this.get(e)])}forEach(e){for(var r of this.keys())e(this.get(r),r,this)}delete(e){Wp(this.wrappedObject,e)&&delete this.wrappedObject[e]}clear(){for(var e of this.keys())this.delete(e)}get size(){return Object.keys(this.wrappedObject).length}},Bc=class{constructor(e,r,i){this.a=e,this.b=r,this.bKeys=i,this[Symbol.iterator]=this.entries}get(e){return this.bKeys.has(e)?this.b.get(e):this.a.get(e)}set(e,r){return this.bKeys.has(e)?this.b.set(e,r):this.a.set(e,r),this}has(e){return this.b.has(e)||this.a.has(e)}keys(){return new Set([...this.a.keys(),...this.b.keys()])[Symbol.iterator]()}entries(){return QI(this.keys(),e=>[e,this.get(e)])}forEach(e){for(var r of this.keys())e(this.get(r),r,this)}delete(e){return this.bKeys.has(e)?this.b.delete(e):this.a.delete(e)}clear(){this.a.clear(),this.b.clear()}get size(){return[...this.keys()].length}};function QI(t,e){return{next:()=>{var r=t.next();return r.done?r:{value:e(r.value),done:!1}}}}function Su(){return new Map}function js(t){if(!t)return Su();if(Ya(t))return t;if($o(t))return new wu(t);throw new Error("createMap can create maps from objects or Maps")}function eF(t){if(t instanceof wu)return t.wrappedObject;var e={};for(var r of t.keys()){var i=t.get(r);Ha(e,r,i)}return e}function Et(t){return typeof t=="number"}function mt(t){return!t||typeof t!="object"||typeof t.constructor!="function"?!1:t.isBigNumber===!0&&typeof t.constructor.prototype=="object"&&t.constructor.prototype.isBigNumber===!0||typeof t.constructor.isDecimal=="function"&&t.constructor.isDecimal(t)===!0}function Ja(t){return typeof t=="bigint"}function Qn(t){return t&&typeof t=="object"&&Object.getPrototypeOf(t).isComplex===!0||!1}function Io(t){return t&&typeof t=="object"&&Object.getPrototypeOf(t).isFraction===!0||!1}function En(t){return t&&t.constructor.prototype.isUnit===!0||!1}function Qr(t){return typeof t=="string"}var sr=Array.isArray;function Je(t){return t&&t.constructor.prototype.isMatrix===!0||!1}function un(t){return Array.isArray(t)||Je(t)}function Zs(t){return t&&t.isDenseMatrix&&t.constructor.prototype.isMatrix===!0||!1}function Fo(t){return t&&t.isSparseMatrix&&t.constructor.prototype.isMatrix===!0||!1}function Du(t){return t&&t.constructor.prototype.isRange===!0||!1}function Xa(t){return t&&t.constructor.prototype.isIndex===!0||!1}function Av(t){return typeof t=="boolean"}function Tv(t){return t&&t.constructor.prototype.isResultSet===!0||!1}function Oc(t){return t&&t.constructor.prototype.isHelp===!0||!1}function Nv(t){return typeof t=="function"}function Mv(t){return t instanceof Date}function Cv(t){return t instanceof RegExp}function $o(t){return!!(t&&typeof t=="object"&&t.constructor===Object&&!Qn(t)&&!Io(t))}function Ya(t){return t?t instanceof Map||t instanceof wu||typeof t.set=="function"&&typeof t.get=="function"&&typeof t.keys=="function"&&typeof t.has=="function":!1}function tF(t){return Ya(t)&&Ya(t.a)&&Ya(t.b)}function rF(t){return Ya(t)&&$o(t.wrappedObject)}function $v(t){return t===null}function Iv(t){return t===void 0}function ji(t){return t&&t.isAccessorNode===!0&&t.constructor.prototype.isNode===!0||!1}function ei(t){return t&&t.isArrayNode===!0&&t.constructor.prototype.isNode===!0||!1}function Fv(t){return t&&t.isAssignmentNode===!0&&t.constructor.prototype.isNode===!0||!1}function kv(t){return t&&t.isBlockNode===!0&&t.constructor.prototype.isNode===!0||!1}function Pv(t){return t&&t.isConditionalNode===!0&&t.constructor.prototype.isNode===!0||!1}function Lt(t){return t&&t.isConstantNode===!0&&t.constructor.prototype.isNode===!0||!1}function Hp(t){return Lt(t)||Lr(t)&&t.args.length===1&&Lt(t.args[0])&&"-+~".includes(t.op)}function ta(t){return t&&t.isFunctionAssignmentNode===!0&&t.constructor.prototype.isNode===!0||!1}function gi(t){return t&&t.isFunctionNode===!0&&t.constructor.prototype.isNode===!0||!1}function uo(t){return t&&t.isIndexNode===!0&&t.constructor.prototype.isNode===!0||!1}function Yt(t){return t&&t.isNode===!0&&t.constructor.prototype.isNode===!0||!1}function Ka(t){return t&&t.isObjectNode===!0&&t.constructor.prototype.isNode===!0||!1}function Lr(t){return t&&t.isOperatorNode===!0&&t.constructor.prototype.isNode===!0||!1}function ti(t){return t&&t.isParenthesisNode===!0&&t.constructor.prototype.isNode===!0||!1}function Bv(t){return t&&t.isRangeNode===!0&&t.constructor.prototype.isNode===!0||!1}function Ov(t){return t&&t.isRelationalNode===!0&&t.constructor.prototype.isNode===!0||!1}function Nr(t){return t&&t.isSymbolNode===!0&&t.constructor.prototype.isNode===!0||!1}function Rc(t){return t&&t.constructor.prototype.isChain===!0||!1}function ir(t){var e=typeof t;return e==="object"?t===null?"null":mt(t)?"BigNumber":t.constructor&&t.constructor.name?t.constructor.name:"Object":e}function dt(t){var e=typeof t;if(e==="number"||e==="bigint"||e==="string"||e==="boolean"||t===null||t===void 0)return t;if(typeof t.clone=="function")return t.clone();if(Array.isArray(t))return t.map(function(r){return dt(r)});if(t instanceof Date)return new Date(t.valueOf());if(mt(t))return t;if($o(t))return mQ(t,dt);if(e==="function")return t;throw new TypeError("Cannot clone: unknown type of value (value: ".concat(t,")"))}function mQ(t,e){var r={};for(var i in t)rt(t,i)&&(r[i]=e(t[i]));return r}function Rv(t,e){for(var r in e)rt(e,r)&&(t[r]=e[r]);return t}function yD(t,e){if(Array.isArray(e))throw new TypeError("Arrays are not supported by deepExtend");for(var r in e)if(rt(e,r)&&!(r in Object.prototype)&&!(r in Function.prototype))if(e[r]&&e[r].constructor===Object)t[r]===void 0&&(t[r]={}),t[r]&&t[r].constructor===Object?yD(t[r],e[r]):t[r]=e[r];else{if(Array.isArray(e[r]))throw new TypeError("Arrays are not supported by deepExtend");t[r]=e[r]}return t}function lo(t,e){var r,i,n;if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(i=0,n=t.length;i{Object.defineProperty(r,i,{get:()=>t[i],enumerable:!0,configurable:!0})}),r}function lF(t,e,r){t[e]!==void 0&&!r.includes(t[e])&&console.warn('Warning: Unknown value "'+t[e]+'" for configuration option "'+e+'". Available options: '+r.map(i=>JSON.stringify(i)).join(", ")+".")}var sA={};hs(sA,{createAbs:()=>nP,createAccessorNode:()=>DL,createAcos:()=>eR,createAcosh:()=>rR,createAcot:()=>iR,createAcoth:()=>aR,createAcsc:()=>uR,createAcsch:()=>cR,createAdd:()=>mL,createAddScalar:()=>aP,createAnd:()=>ky,createAndTransform:()=>Y9,createArg:()=>a2,createArrayNode:()=>EL,createAsec:()=>pR,createAsech:()=>dR,createAsin:()=>gR,createAsinh:()=>vR,createAssignmentNode:()=>NL,createAtan:()=>yR,createAtan2:()=>xR,createAtanh:()=>wR,createAtomicMass:()=>K8,createAvogadro:()=>Q8,createBellNumbers:()=>$5,createBigNumberClass:()=>zF,createBigint:()=>kk,createBignumber:()=>Lk,createBin:()=>wB,createBitAnd:()=>yy,createBitAndTransform:()=>X9,createBitNot:()=>t2,createBitOr:()=>by,createBitOrTransform:()=>K9,createBitXor:()=>i2,createBlockNode:()=>ML,createBohrMagneton:()=>I8,createBohrRadius:()=>R8,createBoltzmann:()=>e9,createBoolean:()=>Rk,createCatalan:()=>F5,createCbrt:()=>cP,createCeil:()=>fP,createChain:()=>aV,createChainClass:()=>D4,createClassicalElectronRadius:()=>L8,createClone:()=>uk,createColumn:()=>wy,createColumnTransform:()=>_9,createCombinations:()=>qV,createCombinationsWithRep:()=>GV,createCompare:()=>mO,createCompareNatural:()=>vO,createCompareText:()=>bO,createCompile:()=>YL,createComplex:()=>Uk,createComplexClass:()=>VF,createComposition:()=>P5,createConcat:()=>_y,createConcatTransform:()=>B9,createConditionalNode:()=>CL,createConductanceQuantum:()=>F8,createConj:()=>u2,createConstantNode:()=>BL,createCorr:()=>UV,createCos:()=>DR,createCosh:()=>AR,createCot:()=>NR,createCoth:()=>CR,createCoulomb:()=>M8,createCoulombConstant:()=>C8,createCount:()=>_2,createCreateUnit:()=>KO,createCross:()=>S2,createCsc:()=>IR,createCsch:()=>kR,createCtranspose:()=>tB,createCube:()=>mP,createCumSum:()=>hb,createCumSumTransform:()=>j9,createDeepEqual:()=>NO,createDenseMatrixClass:()=>ak,createDerivative:()=>W5,createDet:()=>uV,createDeuteronMass:()=>Z8,createDiag:()=>E2,createDiff:()=>Ay,createDiffTransform:()=>R9,createDistance:()=>NV,createDivide:()=>AV,createDivideScalar:()=>OB,createDot:()=>bL,createDotDivide:()=>XB,createDotMultiply:()=>WP,createDotPow:()=>YB,createE:()=>c8,createEfimovFactor:()=>X8,createEigs:()=>hV,createElectricConstant:()=>T8,createElectronMass:()=>U8,createElementaryCharge:()=>$8,createEqual:()=>xO,createEqualScalar:()=>$k,createEqualText:()=>wO,createErf:()=>pB,createEvaluate:()=>XL,createExp:()=>hP,createExpm:()=>vV,createExpm1:()=>vP,createFactorial:()=>KV,createFalse:()=>i8,createFaraday:()=>t9,createFermiCoupling:()=>z8,createFft:()=>oB,createFibonacciHeapClass:()=>LO,createFilter:()=>Sy,createFilterTransform:()=>D9,createFineStructure:()=>V8,createFirstRadiation:()=>r9,createFix:()=>yP,createFlatten:()=>N2,createFloor:()=>dy,createForEach:()=>Dy,createForEachTransform:()=>E9,createFormat:()=>xB,createFraction:()=>zk,createFractionClass:()=>jF,createFreqz:()=>Q5,createFunctionAssignmentNode:()=>OL,createFunctionNode:()=>ZL,createGamma:()=>HV,createGasConstant:()=>i9,createGcd:()=>SP,createGetMatrixDataType:()=>C2,createGravitationConstant:()=>S8,createGravity:()=>m9,createHartreeEnergy:()=>q8,createHasNumericValue:()=>_k,createHelp:()=>iV,createHelpClass:()=>S4,createHex:()=>AB,createHypot:()=>hL,createI:()=>y8,createIdentity:()=>I2,createIfft:()=>sB,createIm:()=>c2,createImmutableDenseMatrixClass:()=>BO,createIndex:()=>wL,createIndexClass:()=>RO,createIndexNode:()=>RL,createIndexTransform:()=>A9,createInfinity:()=>a8,createIntersect:()=>MV,createInv:()=>cV,createInverseConductanceQuantum:()=>k8,createInvmod:()=>ZP,createIsInteger:()=>ck,createIsNaN:()=>Tk,createIsNegative:()=>vk,createIsNumeric:()=>bk,createIsPositive:()=>Sk,createIsPrime:()=>kB,createIsZero:()=>Ek,createKldivergence:()=>e5,createKlitzing:()=>O8,createKron:()=>k2,createLN10:()=>m8,createLN2:()=>p8,createLOG10E:()=>h8,createLOG2E:()=>d8,createLarger:()=>EO,createLargerEq:()=>AO,createLcm:()=>EP,createLeafCount:()=>O5,createLeftShift:()=>sO,createLgamma:()=>JV,createLog:()=>qB,createLog10:()=>TP,createLog1p:()=>ZB,createLog2:()=>MP,createLoschmidt:()=>n9,createLsolve:()=>QB,createLsolveAll:()=>nO,createLup:()=>r4,createLusolve:()=>x4,createLyap:()=>EV,createMad:()=>PV,createMagneticConstant:()=>A8,createMagneticFluxQuantum:()=>P8,createMap:()=>Ey,createMapSlices:()=>sm,createMapSlicesTransform:()=>x9,createMapTransform:()=>T9,createMatrix:()=>qk,createMatrixClass:()=>GF,createMatrixFromColumns:()=>Yk,createMatrixFromFunction:()=>Zk,createMatrixFromRows:()=>Wk,createMax:()=>Vy,createMaxTransform:()=>C9,createMean:()=>gb,createMeanTransform:()=>$9,createMedian:()=>FV,createMin:()=>qy,createMinTransform:()=>I9,createMod:()=>hy,createMode:()=>gB,createMolarMass:()=>f9,createMolarMassC12:()=>p9,createMolarPlanckConstant:()=>o9,createMolarVolume:()=>a9,createMultinomial:()=>r5,createMultiply:()=>IP,createMultiplyScalar:()=>CP,createNaN:()=>s8,createNeutronMass:()=>G8,createNode:()=>SL,createNorm:()=>vL,createNot:()=>d2,createNthRoot:()=>kP,createNthRoots:()=>WB,createNuclearMagneton:()=>B8,createNull:()=>o8,createNumber:()=>Fk,createNumeric:()=>PB,createObjectNode:()=>LL,createOct:()=>DB,createOnes:()=>B2,createOperatorNode:()=>UL,createOr:()=>xy,createOrTransform:()=>J9,createParenthesisNode:()=>zL,createParse:()=>WL,createParser:()=>e4,createParserClass:()=>KL,createPartitionSelect:()=>$O,createPermutations:()=>o5,createPhi:()=>f8,createPi:()=>u8,createPickRandom:()=>S5,createPinv:()=>pV,createPlanckCharge:()=>v9,createPlanckConstant:()=>D8,createPlanckLength:()=>d9,createPlanckMass:()=>h9,createPlanckTemperature:()=>y9,createPlanckTime:()=>g9,createPolynomialRoot:()=>w4,createPow:()=>LB,createPrint:()=>Fy,createPrintTransform:()=>H9,createProd:()=>yB,createProtonMass:()=>j8,createQr:()=>i4,createQuantileSeq:()=>yb,createQuantileSeqTransform:()=>V9,createQuantumOfCirculation:()=>W8,createRandom:()=>E5,createRandomInt:()=>T5,createRange:()=>My,createRangeClass:()=>ZF,createRangeNode:()=>VL,createRangeTransform:()=>F9,createRationalize:()=>Y5,createRe:()=>p2,createReducedPlanckConstant:()=>E8,createRelationalNode:()=>qL,createReplacer:()=>t8,createReshape:()=>L2,createResize:()=>U2,createResolve:()=>q5,createResultSet:()=>AF,createReviver:()=>e8,createRightArithShift:()=>lO,createRightLogShift:()=>fO,createRotate:()=>V2,createRotationMatrix:()=>j2,createRound:()=>zB,createRow:()=>Cy,createRowTransform:()=>k9,createRydberg:()=>H8,createSQRT1_2:()=>g8,createSQRT2:()=>v8,createSackurTetrode:()=>s9,createSchur:()=>SV,createSec:()=>BR,createSech:()=>RR,createSecondRadiation:()=>u9,createSetCartesian:()=>WR,createSetDifference:()=>YR,createSetDistinct:()=>XR,createSetIntersect:()=>QR,createSetIsSubset:()=>tL,createSetMultiplicity:()=>nL,createSetPowerset:()=>oL,createSetSize:()=>sL,createSetSymDifference:()=>lL,createSetUnion:()=>fL,createSign:()=>BP,createSimplify:()=>L5,createSimplifyConstant:()=>U5,createSimplifyCore:()=>V5,createSin:()=>UR,createSinh:()=>VR,createSize:()=>W2,createSlu:()=>y4,createSmaller:()=>SO,createSmallerEq:()=>DO,createSolveODE:()=>fB,createSort:()=>FO,createSpaClass:()=>UO,createSparse:()=>JO,createSparseMatrixClass:()=>Ik,createSpeedOfLight:()=>w8,createSplitUnit:()=>Xk,createSqrt:()=>OP,createSqrtm:()=>bV,createSquare:()=>LP,createSqueeze:()=>Y2,createStd:()=>bb,createStdTransform:()=>L9,createStefanBoltzmann:()=>l9,createStirlingS2:()=>M5,createString:()=>Bk,createSubset:()=>$y,createSubsetTransform:()=>P9,createSubtract:()=>zP,createSubtractScalar:()=>uP,createSum:()=>mb,createSumTransform:()=>z9,createSylvester:()=>_V,createSymbolNode:()=>jL,createSymbolicEqual:()=>Z5,createTan:()=>jR,createTanh:()=>ZR,createTau:()=>l8,createThomsonCrossSection:()=>Y8,createTo:()=>CB,createToBest:()=>IB,createTrace:()=>xL,createTranspose:()=>Q2,createTrue:()=>n8,createTypeOf:()=>Mk,createTyped:()=>EF,createUnaryMinus:()=>Qk,createUnaryPlus:()=>tP,createUnequal:()=>MO,createUnitClass:()=>GO,createUnitFunction:()=>HO,createUppercaseE:()=>x8,createUppercasePi:()=>b8,createUsolve:()=>tO,createUsolveAll:()=>oO,createVacuumImpedance:()=>N8,createVariance:()=>vb,createVarianceTransform:()=>G9,createVersion:()=>_8,createWeakMixingAngle:()=>J8,createWienDisplacement:()=>c9,createXgcd:()=>qP,createXor:()=>v2,createZeros:()=>nB,createZeta:()=>dB,createZpk2tf:()=>X5});var ED=Ar(Lv(),1);function N(t,e,r,i){function n(o){var a=aF(o,e.map(_D));return dQ(t,e,o),r(a)}return n.isFactory=!0,n.fn=t,n.dependencies=e.slice().sort(),i&&(n.meta=i),n}function gl(t){return typeof t=="function"&&typeof t.fn=="string"&&Array.isArray(t.dependencies)}function dQ(t,e,r){var i=e.filter(o=>!hQ(o)).every(o=>r[o]!==void 0);if(!i){var n=e.filter(o=>r[o]===void 0);throw new Error('Cannot create function "'.concat(t,'", ')+"some dependencies are missing: ".concat(n.map(o=>'"'.concat(o,'"')).join(", "),"."))}}function hQ(t){return t&&t[0]==="?"}function _D(t){return t&&t[0]==="?"?t.slice(1):t}function Ge(t){return typeof t=="boolean"?!0:isFinite(t)?t===Math.round(t):!1}function Mi(t,e){if(e.number==="bigint")try{BigInt(t)}catch{return e.numberFallback}return e.number}var ra=Math.sign||function(t){return t>0?1:t<0?-1:0},mF=Math.log2||function(e){return Math.log(e)/Math.LN2},dF=Math.log10||function(e){return Math.log(e)/Math.LN10},Uv=Math.log1p||function(t){return Math.log(t+1)},hF=Math.cbrt||function(e){if(e===0)return e;var r=e<0,i;return r&&(e=-e),isFinite(e)?(i=Math.exp(Math.log(e)/3),i=(e/(i*i)+2*i)/3):i=e,r?-i:i},gF=Math.expm1||function(e){return e>=2e-4||e<=-2e-4?Math.exp(e)-1:e+e*e/2+e*e*e/6};function wD(t,e,r){var i={2:"0b",8:"0o",16:"0x"},n=i[e],o="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Ge(r))throw new Error("size must be an integer");if(t>2**(r-1)-1||t<-(2**(r-1)))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!Ge(t))throw new Error("Value must be an integer");t<0&&(t=t+2**r),o="i".concat(r)}var a="";return t<0&&(t=-t,a="-"),"".concat(a).concat(n).concat(t.toString(e)).concat(o)}function Da(t,e){if(typeof e=="function")return e(t);if(t===1/0)return"Infinity";if(t===-1/0)return"-Infinity";if(isNaN(t))return"NaN";var{notation:r,precision:i,wordSize:n}=SD(e);switch(r){case"fixed":return DD(t,i);case"exponential":return vF(t,i);case"engineering":return gQ(t,i);case"bin":return wD(t,2,n);case"oct":return wD(t,8,n);case"hex":return wD(t,16,n);case"auto":return vQ(t,i,e).replace(/((\.\d*?)(0+))($|e)/,function(){var o=arguments[2],a=arguments[4];return o!=="."?o+a:a});default:throw new Error('Unknown notation "'+r+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function SD(t){var e="auto",r,i;if(t!==void 0)if(Et(t))r=t;else if(mt(t))r=t.toNumber();else if($o(t))t.precision!==void 0&&(r=fF(t.precision,()=>{throw new Error('Option "precision" must be a number or BigNumber')})),t.wordSize!==void 0&&(i=fF(t.wordSize,()=>{throw new Error('Option "wordSize" must be a number or BigNumber')})),t.notation&&(e=t.notation);else throw new Error("Unsupported type of options, number, BigNumber, or object expected");return{notation:e,precision:r,wordSize:i}}function Uc(t){var e=String(t).toLowerCase().match(/^(-?)(\d+\.?\d*)(e([+-]?\d+))?$/);if(!e)throw new SyntaxError("Invalid number "+t);var r=e[1],i=e[2],n=parseFloat(e[4]||"0"),o=i.indexOf(".");n+=o!==-1?o-1:i.length-1;var a=i.replace(".","").replace(/^0*/,function(s){return n-=s.length,""}).replace(/0*$/,"").split("").map(function(s){return parseInt(s)});return a.length===0&&(a.push(0),n++),{sign:r,coefficients:a,exponent:n}}function gQ(t,e){if(isNaN(t)||!isFinite(t))return String(t);var r=Uc(t),i=zv(r,e),n=i.exponent,o=i.coefficients,a=n%3===0?n:n<0?n-3-n%3:n-n%3;if(Et(e))for(;e>o.length||n-a+1>o.length;)o.push(0);else for(var s=Math.abs(n-a)-(o.length-1),l=0;l0;)c++,u--;var f=o.slice(c).join(""),m=Et(e)&&f.length||f.match(/[1-9]/)?"."+f:"",p=o.slice(0,c).join("")+m+"e"+(n>=0?"+":"")+a.toString();return i.sign+p}function DD(t,e){if(isNaN(t)||!isFinite(t))return String(t);var r=Uc(t),i=typeof e=="number"?zv(r,r.exponent+1+e):r,n=i.coefficients,o=i.exponent+1,a=o+(e||0);return n.length0?"."+n.join(""):"")+"e"+(o>=0?"+":"")+o}function vQ(t,e,r){if(isNaN(t)||!isFinite(t))return String(t);var i=pF(r?.lowerExp,-3),n=pF(r?.upperExp,5),o=Uc(t),a=e?zv(o,e):o;if(a.exponent=n)return vF(t,e);var s=a.coefficients,l=a.exponent;s.length0?l:0;return ue){var n=i.splice(e,i.length-e);if(n[0]>=5){var o=e-1;for(i[o]++;i[o]===10;)i.pop(),o===0&&(i.unshift(0),r.exponent++,o++),o--,i[o]++}}return r}function Lc(t){for(var e=[],r=0;r2&&arguments[2]!==void 0?arguments[2]:1e-8,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(r<=0)throw new Error("Relative tolerance must be greater than 0");if(i<0)throw new Error("Absolute tolerance must be at least 0");return isNaN(t)||isNaN(e)?!1:!isFinite(t)||!isFinite(e)?t===e:t===e?!0:Math.abs(t-e)<=Math.max(r*Math.max(Math.abs(t),Math.abs(e)),i)}var bF=Math.acosh||function(t){return Math.log(Math.sqrt(t*t-1)+t)},xF=Math.asinh||function(t){return Math.log(Math.sqrt(t*t+1)+t)},_F=Math.atanh||function(t){return Math.log((1+t)/(1-t))/2},Vv=Math.cosh||function(t){return(Math.exp(t)+Math.exp(-t))/2},wF=Math.sinh||function(t){return(Math.exp(t)-Math.exp(-t))/2},qv=Math.tanh||function(t){var e=Math.exp(2*t);return(e-1)/(e+1)};function SF(t,e){var r=t>0?!0:t<0?!1:1/t===1/0,i=e>0?!0:e<0?!1:1/e===1/0;return r^i?-t:t}function fF(t,e){if(Et(t))return t;if(mt(t))return t.toNumber();e()}function pF(t,e){return Et(t)?t:mt(t)?t.toNumber():e}var DF=function(){return DF=ED.default.create,ED.default},yQ=["?BigNumber","?Complex","?DenseMatrix","?Fraction"],EF=N("typed",yQ,function(e){var{BigNumber:r,Complex:i,DenseMatrix:n,Fraction:o}=e,a=DF();return a.clear(),a.addTypes([{name:"number",test:Et},{name:"Complex",test:Qn},{name:"BigNumber",test:mt},{name:"bigint",test:Ja},{name:"Fraction",test:Io},{name:"Unit",test:En},{name:"identifier",test:s=>Qr&&/^(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC4\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC4\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])*$/.test(s)},{name:"string",test:Qr},{name:"Chain",test:Rc},{name:"Array",test:sr},{name:"Matrix",test:Je},{name:"DenseMatrix",test:Zs},{name:"SparseMatrix",test:Fo},{name:"Range",test:Du},{name:"Index",test:Xa},{name:"boolean",test:Av},{name:"ResultSet",test:Tv},{name:"Help",test:Oc},{name:"function",test:Nv},{name:"Date",test:Mv},{name:"RegExp",test:Cv},{name:"null",test:$v},{name:"undefined",test:Iv},{name:"AccessorNode",test:ji},{name:"ArrayNode",test:ei},{name:"AssignmentNode",test:Fv},{name:"BlockNode",test:kv},{name:"ConditionalNode",test:Pv},{name:"ConstantNode",test:Lt},{name:"FunctionNode",test:gi},{name:"FunctionAssignmentNode",test:ta},{name:"IndexNode",test:uo},{name:"Node",test:Yt},{name:"ObjectNode",test:Ka},{name:"OperatorNode",test:Lr},{name:"ParenthesisNode",test:ti},{name:"RangeNode",test:Bv},{name:"RelationalNode",test:Ov},{name:"SymbolNode",test:Nr},{name:"Map",test:Ya},{name:"Object",test:$o}]),a.addConversions([{from:"number",to:"BigNumber",convert:function(l){if(r||jv(l),yF(l)>15)throw new TypeError("Cannot implicitly convert a number with >15 significant digits to BigNumber (value: "+l+"). Use function bignumber(x) to convert to BigNumber.");return new r(l)}},{from:"number",to:"Complex",convert:function(l){return i||Zv(l),new i(l,0)}},{from:"BigNumber",to:"Complex",convert:function(l){return i||Zv(l),new i(l.toNumber(),0)}},{from:"bigint",to:"number",convert:function(l){if(l>Number.MAX_SAFE_INTEGER)throw new TypeError("Cannot implicitly convert bigint to number: value exceeds the max safe integer value (value: "+l+")");return Number(l)}},{from:"bigint",to:"BigNumber",convert:function(l){return r||jv(l),new r(l.toString())}},{from:"bigint",to:"Fraction",convert:function(l){return o||Gv(l),new o(l)}},{from:"Fraction",to:"BigNumber",convert:function(l){throw new TypeError("Cannot implicitly convert a Fraction to BigNumber or vice versa. Use function bignumber(x) to convert to BigNumber or fraction(x) to convert to Fraction.")}},{from:"Fraction",to:"Complex",convert:function(l){return i||Zv(l),new i(l.valueOf(),0)}},{from:"number",to:"Fraction",convert:function(l){o||Gv(l);var u=new o(l);if(u.valueOf()!==l)throw new TypeError("Cannot implicitly convert a number to a Fraction when there will be a loss of precision (value: "+l+"). Use function fraction(x) to convert to Fraction.");return u}},{from:"string",to:"number",convert:function(l){var u=Number(l);if(isNaN(u))throw new Error('Cannot convert "'+l+'" to a number');return u}},{from:"string",to:"BigNumber",convert:function(l){r||jv(l);try{return new r(l)}catch{throw new Error('Cannot convert "'+l+'" to BigNumber')}}},{from:"string",to:"bigint",convert:function(l){try{return BigInt(l)}catch{throw new Error('Cannot convert "'+l+'" to BigInt')}}},{from:"string",to:"Fraction",convert:function(l){o||Gv(l);try{return new o(l)}catch{throw new Error('Cannot convert "'+l+'" to Fraction')}}},{from:"string",to:"Complex",convert:function(l){i||Zv(l);try{return new i(l)}catch{throw new Error('Cannot convert "'+l+'" to Complex')}}},{from:"boolean",to:"number",convert:function(l){return+l}},{from:"boolean",to:"BigNumber",convert:function(l){return r||jv(l),new r(+l)}},{from:"boolean",to:"bigint",convert:function(l){return BigInt(+l)}},{from:"boolean",to:"Fraction",convert:function(l){return o||Gv(l),new o(+l)}},{from:"boolean",to:"string",convert:function(l){return String(l)}},{from:"Array",to:"Matrix",convert:function(l){return n||bQ(),new n(l)}},{from:"Matrix",to:"Array",convert:function(l){return l.valueOf()}}]),a.onMismatch=(s,l,u)=>{var c=a.createError(s,l,u);if(["wrongType","mismatch"].includes(c.data.category)&&l.length===1&&un(l[0])&&u.some(m=>!m.params.includes(","))){var f=new TypeError("Function '".concat(s,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(s,")'."));throw f.data=c.data,f}throw c},a.onMismatch=(s,l,u)=>{var c=a.createError(s,l,u);if(["wrongType","mismatch"].includes(c.data.category)&&l.length===1&&un(l[0])&&u.some(m=>!m.params.includes(","))){var f=new TypeError("Function '".concat(s,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(s,")'."));throw f.data=c.data,f}throw c},a});function jv(t){throw new Error("Cannot convert value ".concat(t," into a BigNumber: no class 'BigNumber' provided"))}function Zv(t){throw new Error("Cannot convert value ".concat(t," into a Complex number: no class 'Complex' provided"))}function bQ(){throw new Error("Cannot convert array into a Matrix: no class 'DenseMatrix' provided")}function Gv(t){throw new Error("Cannot convert value ".concat(t," into a Fraction, no class 'Fraction' provided."))}var xQ="ResultSet",_Q=[],AF=N(xQ,_Q,()=>{function t(e){if(!(this instanceof t))throw new SyntaxError("Constructor must be called with the new operator");this.entries=e||[]}return t.prototype.type="ResultSet",t.prototype.isResultSet=!0,t.prototype.valueOf=function(){return this.entries},t.prototype.toString=function(){return"["+this.entries.map(String).join(", ")+"]"},t.prototype.toJSON=function(){return{mathjs:"ResultSet",entries:this.entries}},t.fromJSON=function(e){return new t(e.entries)},t},{isClass:!0});var zc=9e15,Nu=1e9,AD="0123456789abcdef",Yv="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Jv="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",TD={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-zc,maxE:zc,crypto:!1},CF,Ws,tr=!0,Kv="[DecimalError] ",Tu=Kv+"Invalid argument: ",$F=Kv+"Precision limit exceeded",IF=Kv+"crypto unavailable",FF="[object Decimal]",Ci=Math.floor,ri=Math.pow,wQ=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,SQ=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,DQ=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,kF=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Ea=1e7,Vt=7,EQ=9007199254740991,AQ=Yv.length-1,ND=Jv.length-1,Le={toStringTag:FF};Le.absoluteValue=Le.abs=function(){var t=new this.constructor(this);return t.s<0&&(t.s=1),kt(t)};Le.ceil=function(){return kt(new this.constructor(this),this.e+1,2)};Le.clampedTo=Le.clamp=function(t,e){var r,i=this,n=i.constructor;if(t=new n(t),e=new n(e),!t.s||!e.s)return new n(NaN);if(t.gt(e))throw Error(Tu+e);return r=i.cmp(t),r<0?t:i.cmp(e)>0?e:new n(i)};Le.comparedTo=Le.cmp=function(t){var e,r,i,n,o=this,a=o.d,s=(t=new o.constructor(t)).d,l=o.s,u=t.s;if(!a||!s)return!l||!u?NaN:l!==u?l:a===s?0:!a^l<0?1:-1;if(!a[0]||!s[0])return a[0]?l:s[0]?-u:0;if(l!==u)return l;if(o.e!==t.e)return o.e>t.e^l<0?1:-1;for(i=a.length,n=s.length,e=0,r=is[e]^l<0?1:-1;return i===n?0:i>n^l<0?1:-1};Le.cosine=Le.cos=function(){var t,e,r=this,i=r.constructor;return r.d?r.d[0]?(t=i.precision,e=i.rounding,i.precision=t+Math.max(r.e,r.sd())+Vt,i.rounding=1,r=TQ(i,LF(i,r)),i.precision=t,i.rounding=e,kt(Ws==2||Ws==3?r.neg():r,t,e,!0)):new i(1):new i(NaN)};Le.cubeRoot=Le.cbrt=function(){var t,e,r,i,n,o,a,s,l,u,c=this,f=c.constructor;if(!c.isFinite()||c.isZero())return new f(c);for(tr=!1,o=c.s*ri(c.s*c,1/3),!o||Math.abs(o)==1/0?(r=vi(c.d),t=c.e,(o=(t-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=ri(r,1/3),t=Ci((t+1)/3)-(t%3==(t<0?-1:2)),o==1/0?r="5e"+t:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+t),i=new f(r),i.s=c.s):i=new f(o.toString()),a=(t=f.precision)+3;;)if(s=i,l=s.times(s).times(s),u=l.plus(c),i=Jr(u.plus(c).times(s),u.plus(l),a+2,1),vi(s.d).slice(0,a)===(r=vi(i.d)).slice(0,a))if(r=r.slice(a-3,a+1),r=="9999"||!n&&r=="4999"){if(!n&&(kt(s,t+1,0),s.times(s).times(s).eq(c))){i=s;break}a+=4,n=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(kt(i,t+1,1),e=!i.times(i).times(i).eq(c));break}return tr=!0,kt(i,t,f.rounding,e)};Le.decimalPlaces=Le.dp=function(){var t,e=this.d,r=NaN;if(e){if(t=e.length-1,r=(t-Ci(this.e/Vt))*Vt,t=e[t],t)for(;t%10==0;t/=10)r--;r<0&&(r=0)}return r};Le.dividedBy=Le.div=function(t){return Jr(this,new this.constructor(t))};Le.dividedToIntegerBy=Le.divToInt=function(t){var e=this,r=e.constructor;return kt(Jr(e,new r(t),0,1,1),r.precision,r.rounding)};Le.equals=Le.eq=function(t){return this.cmp(t)===0};Le.floor=function(){return kt(new this.constructor(this),this.e+1,3)};Le.greaterThan=Le.gt=function(t){return this.cmp(t)>0};Le.greaterThanOrEqualTo=Le.gte=function(t){var e=this.cmp(t);return e==1||e===0};Le.hyperbolicCosine=Le.cosh=function(){var t,e,r,i,n,o=this,a=o.constructor,s=new a(1);if(!o.isFinite())return new a(o.s?1/0:NaN);if(o.isZero())return s;r=a.precision,i=a.rounding,a.precision=r+Math.max(o.e,o.sd())+4,a.rounding=1,n=o.d.length,n<32?(t=Math.ceil(n/3),e=(1/ey(4,t)).toString()):(t=16,e="2.3283064365386962890625e-10"),o=Vc(a,1,o.times(e),new a(1),!0);for(var l,u=t,c=new a(8);u--;)l=o.times(o),o=s.minus(l.times(c.minus(l.times(c))));return kt(o,a.precision=r,a.rounding=i,!0)};Le.hyperbolicSine=Le.sinh=function(){var t,e,r,i,n=this,o=n.constructor;if(!n.isFinite()||n.isZero())return new o(n);if(e=o.precision,r=o.rounding,o.precision=e+Math.max(n.e,n.sd())+4,o.rounding=1,i=n.d.length,i<3)n=Vc(o,2,n,n,!0);else{t=1.4*Math.sqrt(i),t=t>16?16:t|0,n=n.times(1/ey(5,t)),n=Vc(o,2,n,n,!0);for(var a,s=new o(5),l=new o(16),u=new o(20);t--;)a=n.times(n),n=n.times(s.plus(a.times(l.times(a).plus(u))))}return o.precision=e,o.rounding=r,kt(n,e,r,!0)};Le.hyperbolicTangent=Le.tanh=function(){var t,e,r=this,i=r.constructor;return r.isFinite()?r.isZero()?new i(r):(t=i.precision,e=i.rounding,i.precision=t+7,i.rounding=1,Jr(r.sinh(),r.cosh(),i.precision=t,i.rounding=e)):new i(r.s)};Le.inverseCosine=Le.acos=function(){var t=this,e=t.constructor,r=t.abs().cmp(1),i=e.precision,n=e.rounding;return r!==-1?r===0?t.isNeg()?Qa(e,i,n):new e(0):new e(NaN):t.isZero()?Qa(e,i+4,n).times(.5):(e.precision=i+6,e.rounding=1,t=new e(1).minus(t).div(t.plus(1)).sqrt().atan(),e.precision=i,e.rounding=n,t.times(2))};Le.inverseHyperbolicCosine=Le.acosh=function(){var t,e,r=this,i=r.constructor;return r.lte(1)?new i(r.eq(1)?0:NaN):r.isFinite()?(t=i.precision,e=i.rounding,i.precision=t+Math.max(Math.abs(r.e),r.sd())+4,i.rounding=1,tr=!1,r=r.times(r).minus(1).sqrt().plus(r),tr=!0,i.precision=t,i.rounding=e,r.ln()):new i(r)};Le.inverseHyperbolicSine=Le.asinh=function(){var t,e,r=this,i=r.constructor;return!r.isFinite()||r.isZero()?new i(r):(t=i.precision,e=i.rounding,i.precision=t+2*Math.max(Math.abs(r.e),r.sd())+6,i.rounding=1,tr=!1,r=r.times(r).plus(1).sqrt().plus(r),tr=!0,i.precision=t,i.rounding=e,r.ln())};Le.inverseHyperbolicTangent=Le.atanh=function(){var t,e,r,i,n=this,o=n.constructor;return n.isFinite()?n.e>=0?new o(n.abs().eq(1)?n.s/0:n.isZero()?n:NaN):(t=o.precision,e=o.rounding,i=n.sd(),Math.max(i,t)<2*-n.e-1?kt(new o(n),t,e,!0):(o.precision=r=i-n.e,n=Jr(n.plus(1),new o(1).minus(n),r+t,1),o.precision=t+4,o.rounding=1,n=n.ln(),o.precision=t,o.rounding=e,n.times(.5))):new o(NaN)};Le.inverseSine=Le.asin=function(){var t,e,r,i,n=this,o=n.constructor;return n.isZero()?new o(n):(e=n.abs().cmp(1),r=o.precision,i=o.rounding,e!==-1?e===0?(t=Qa(o,r+4,i).times(.5),t.s=n.s,t):new o(NaN):(o.precision=r+6,o.rounding=1,n=n.div(new o(1).minus(n.times(n)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=i,n.times(2)))};Le.inverseTangent=Le.atan=function(){var t,e,r,i,n,o,a,s,l,u=this,c=u.constructor,f=c.precision,m=c.rounding;if(u.isFinite()){if(u.isZero())return new c(u);if(u.abs().eq(1)&&f+4<=ND)return a=Qa(c,f+4,m).times(.25),a.s=u.s,a}else{if(!u.s)return new c(NaN);if(f+4<=ND)return a=Qa(c,f+4,m).times(.5),a.s=u.s,a}for(c.precision=s=f+10,c.rounding=1,r=Math.min(28,s/Vt+2|0),t=r;t;--t)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(tr=!1,e=Math.ceil(s/Vt),i=1,l=u.times(u),a=new c(u),n=u;t!==-1;)if(n=n.times(l),o=a.minus(n.div(i+=2)),n=n.times(l),a=o.plus(n.div(i+=2)),a.d[e]!==void 0)for(t=e;a.d[t]===o.d[t]&&t--;);return r&&(a=a.times(2<this.d.length-2};Le.isNaN=function(){return!this.s};Le.isNegative=Le.isNeg=function(){return this.s<0};Le.isPositive=Le.isPos=function(){return this.s>0};Le.isZero=function(){return!!this.d&&this.d[0]===0};Le.lessThan=Le.lt=function(t){return this.cmp(t)<0};Le.lessThanOrEqualTo=Le.lte=function(t){return this.cmp(t)<1};Le.logarithm=Le.log=function(t){var e,r,i,n,o,a,s,l,u=this,c=u.constructor,f=c.precision,m=c.rounding,p=5;if(t==null)t=new c(10),e=!0;else{if(t=new c(t),r=t.d,t.s<0||!r||!r[0]||t.eq(1))return new c(NaN);e=t.eq(10)}if(r=u.d,u.s<0||!r||!r[0]||u.eq(1))return new c(r&&!r[0]?-1/0:u.s!=1?NaN:r?0:1/0);if(e)if(r.length>1)o=!0;else{for(n=r[0];n%10===0;)n/=10;o=n!==1}if(tr=!1,s=f+p,a=Au(u,s),i=e?Xv(c,s+10):Au(t,s),l=Jr(a,i,s,1),Yp(l.d,n=f,m))do if(s+=10,a=Au(u,s),i=e?Xv(c,s+10):Au(t,s),l=Jr(a,i,s,1),!o){+vi(l.d).slice(n+1,n+15)+1==1e14&&(l=kt(l,f+1,0));break}while(Yp(l.d,n+=10,m));return tr=!0,kt(l,f,m)};Le.minus=Le.sub=function(t){var e,r,i,n,o,a,s,l,u,c,f,m,p=this,d=p.constructor;if(t=new d(t),!p.d||!t.d)return!p.s||!t.s?t=new d(NaN):p.d?t.s=-t.s:t=new d(t.d||p.s!==t.s?p:NaN),t;if(p.s!=t.s)return t.s=-t.s,p.plus(t);if(u=p.d,m=t.d,s=d.precision,l=d.rounding,!u[0]||!m[0]){if(m[0])t.s=-t.s;else if(u[0])t=new d(p);else return new d(l===3?-0:0);return tr?kt(t,s,l):t}if(r=Ci(t.e/Vt),c=Ci(p.e/Vt),u=u.slice(),o=c-r,o){for(f=o<0,f?(e=u,o=-o,a=m.length):(e=m,r=c,a=u.length),i=Math.max(Math.ceil(s/Vt),a)+2,o>i&&(o=i,e.length=1),e.reverse(),i=o;i--;)e.push(0);e.reverse()}else{for(i=u.length,a=m.length,f=i0;--i)u[a++]=0;for(i=m.length;i>o;){if(u[--i]a?o+1:a+1,n>a&&(n=a,r.length=1),r.reverse();n--;)r.push(0);r.reverse()}for(a=u.length,n=c.length,a-n<0&&(n=a,r=c,c=u,u=r),e=0;n;)e=(u[--n]=u[n]+c[n]+e)/Ea|0,u[n]%=Ea;for(e&&(u.unshift(e),++i),a=u.length;u[--a]==0;)u.pop();return t.d=u,t.e=Qv(u,i),tr?kt(t,s,l):t};Le.precision=Le.sd=function(t){var e,r=this;if(t!==void 0&&t!==!!t&&t!==1&&t!==0)throw Error(Tu+t);return r.d?(e=PF(r.d),t&&r.e+1>e&&(e=r.e+1)):e=NaN,e};Le.round=function(){var t=this,e=t.constructor;return kt(new e(t),t.e+1,e.rounding)};Le.sine=Le.sin=function(){var t,e,r=this,i=r.constructor;return r.isFinite()?r.isZero()?new i(r):(t=i.precision,e=i.rounding,i.precision=t+Math.max(r.e,r.sd())+Vt,i.rounding=1,r=MQ(i,LF(i,r)),i.precision=t,i.rounding=e,kt(Ws>2?r.neg():r,t,e,!0)):new i(NaN)};Le.squareRoot=Le.sqrt=function(){var t,e,r,i,n,o,a=this,s=a.d,l=a.e,u=a.s,c=a.constructor;if(u!==1||!s||!s[0])return new c(!u||u<0&&(!s||s[0])?NaN:s?a:1/0);for(tr=!1,u=Math.sqrt(+a),u==0||u==1/0?(e=vi(s),(e.length+l)%2==0&&(e+="0"),u=Math.sqrt(e),l=Ci((l+1)/2)-(l<0||l%2),u==1/0?e="5e"+l:(e=u.toExponential(),e=e.slice(0,e.indexOf("e")+1)+l),i=new c(e)):i=new c(u.toString()),r=(l=c.precision)+3;;)if(o=i,i=o.plus(Jr(a,o,r+2,1)).times(.5),vi(o.d).slice(0,r)===(e=vi(i.d)).slice(0,r))if(e=e.slice(r-3,r+1),e=="9999"||!n&&e=="4999"){if(!n&&(kt(o,l+1,0),o.times(o).eq(a))){i=o;break}r+=4,n=1}else{(!+e||!+e.slice(1)&&e.charAt(0)=="5")&&(kt(i,l+1,1),t=!i.times(i).eq(a));break}return tr=!0,kt(i,l,c.rounding,t)};Le.tangent=Le.tan=function(){var t,e,r=this,i=r.constructor;return r.isFinite()?r.isZero()?new i(r):(t=i.precision,e=i.rounding,i.precision=t+10,i.rounding=1,r=r.sin(),r.s=1,r=Jr(r,new i(1).minus(r.times(r)).sqrt(),t+10,0),i.precision=t,i.rounding=e,kt(Ws==2||Ws==4?r.neg():r,t,e,!0)):new i(NaN)};Le.times=Le.mul=function(t){var e,r,i,n,o,a,s,l,u,c=this,f=c.constructor,m=c.d,p=(t=new f(t)).d;if(t.s*=c.s,!m||!m[0]||!p||!p[0])return new f(!t.s||m&&!m[0]&&!p||p&&!p[0]&&!m?NaN:!m||!p?t.s/0:t.s*0);for(r=Ci(c.e/Vt)+Ci(t.e/Vt),l=m.length,u=p.length,l=0;){for(e=0,n=l+i;n>i;)s=o[n]+p[i]*m[n-i-1]+e,o[n--]=s%Ea|0,e=s/Ea|0;o[n]=(o[n]+e)%Ea|0}for(;!o[--a];)o.pop();return e?++r:o.shift(),t.d=o,t.e=Qv(o,r),tr?kt(t,f.precision,f.rounding):t};Le.toBinary=function(t,e){return CD(this,2,t,e)};Le.toDecimalPlaces=Le.toDP=function(t,e){var r=this,i=r.constructor;return r=new i(r),t===void 0?r:(co(t,0,Nu),e===void 0?e=i.rounding:co(e,0,8),kt(r,t+r.e+1,e))};Le.toExponential=function(t,e){var r,i=this,n=i.constructor;return t===void 0?r=es(i,!0):(co(t,0,Nu),e===void 0?e=n.rounding:co(e,0,8),i=kt(new n(i),t+1,e),r=es(i,!0,t+1)),i.isNeg()&&!i.isZero()?"-"+r:r};Le.toFixed=function(t,e){var r,i,n=this,o=n.constructor;return t===void 0?r=es(n):(co(t,0,Nu),e===void 0?e=o.rounding:co(e,0,8),i=kt(new o(n),t+n.e+1,e),r=es(i,!1,t+i.e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};Le.toFraction=function(t){var e,r,i,n,o,a,s,l,u,c,f,m,p=this,d=p.d,h=p.constructor;if(!d)return new h(p);if(u=r=new h(1),i=l=new h(0),e=new h(i),o=e.e=PF(d)-p.e-1,a=o%Vt,e.d[0]=ri(10,a<0?Vt+a:a),t==null)t=o>0?e:u;else{if(s=new h(t),!s.isInt()||s.lt(u))throw Error(Tu+s);t=s.gt(e)?o>0?e:u:s}for(tr=!1,s=new h(vi(d)),c=h.precision,h.precision=o=d.length*Vt*2;f=Jr(s,e,0,1,1),n=r.plus(f.times(i)),n.cmp(t)!=1;)r=i,i=n,n=u,u=l.plus(f.times(n)),l=n,n=e,e=s.minus(f.times(n)),s=n;return n=Jr(t.minus(r),i,0,1,1),l=l.plus(n.times(u)),r=r.plus(n.times(i)),l.s=u.s=p.s,m=Jr(u,i,o,1).minus(p).abs().cmp(Jr(l,r,o,1).minus(p).abs())<1?[u,i]:[l,r],h.precision=c,tr=!0,m};Le.toHexadecimal=Le.toHex=function(t,e){return CD(this,16,t,e)};Le.toNearest=function(t,e){var r=this,i=r.constructor;if(r=new i(r),t==null){if(!r.d)return r;t=new i(1),e=i.rounding}else{if(t=new i(t),e===void 0?e=i.rounding:co(e,0,8),!r.d)return t.s?r:t;if(!t.d)return t.s&&(t.s=r.s),t}return t.d[0]?(tr=!1,r=Jr(r,t,0,e,1).times(t),tr=!0,kt(r)):(t.s=r.s,r=t),r};Le.toNumber=function(){return+this};Le.toOctal=function(t,e){return CD(this,8,t,e)};Le.toPower=Le.pow=function(t){var e,r,i,n,o,a,s=this,l=s.constructor,u=+(t=new l(t));if(!s.d||!t.d||!s.d[0]||!t.d[0])return new l(ri(+s,u));if(s=new l(s),s.eq(1))return s;if(i=l.precision,o=l.rounding,t.eq(1))return kt(s,i,o);if(e=Ci(t.e/Vt),e>=t.d.length-1&&(r=u<0?-u:u)<=EQ)return n=BF(l,s,r,i),t.s<0?new l(1).div(n):kt(n,i,o);if(a=s.s,a<0){if(el.maxE+1||e0?a/0:0):(tr=!1,l.rounding=s.s=1,r=Math.min(12,(e+"").length),n=MD(t.times(Au(s,i+r)),i),n.d&&(n=kt(n,i+5,1),Yp(n.d,i,o)&&(e=i+10,n=kt(MD(t.times(Au(s,e+r)),e),e+5,1),+vi(n.d).slice(i+1,i+15)+1==1e14&&(n=kt(n,i+1,0)))),n.s=a,tr=!0,l.rounding=o,kt(n,i,o))};Le.toPrecision=function(t,e){var r,i=this,n=i.constructor;return t===void 0?r=es(i,i.e<=n.toExpNeg||i.e>=n.toExpPos):(co(t,1,Nu),e===void 0?e=n.rounding:co(e,0,8),i=kt(new n(i),t,e),r=es(i,t<=i.e||i.e<=n.toExpNeg,t)),i.isNeg()&&!i.isZero()?"-"+r:r};Le.toSignificantDigits=Le.toSD=function(t,e){var r=this,i=r.constructor;return t===void 0?(t=i.precision,e=i.rounding):(co(t,1,Nu),e===void 0?e=i.rounding:co(e,0,8)),kt(new i(r),t,e)};Le.toString=function(){var t=this,e=t.constructor,r=es(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()&&!t.isZero()?"-"+r:r};Le.truncated=Le.trunc=function(){return kt(new this.constructor(this),this.e+1,1)};Le.valueOf=Le.toJSON=function(){var t=this,e=t.constructor,r=es(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()?"-"+r:r};function vi(t){var e,r,i,n=t.length-1,o="",a=t[0];if(n>0){for(o+=a,e=1;er)throw Error(Tu+t)}function Yp(t,e,r,i){var n,o,a,s;for(o=t[0];o>=10;o/=10)--e;return--e<0?(e+=Vt,n=0):(n=Math.ceil((e+1)/Vt),e%=Vt),o=ri(10,Vt-e),s=t[n]%o|0,i==null?e<3?(e==0?s=s/100|0:e==1&&(s=s/10|0),a=r<4&&s==99999||r>3&&s==49999||s==5e4||s==0):a=(r<4&&s+1==o||r>3&&s+1==o/2)&&(t[n+1]/o/100|0)==ri(10,e-2)-1||(s==o/2||s==0)&&(t[n+1]/o/100|0)==0:e<4?(e==0?s=s/1e3|0:e==1?s=s/100|0:e==2&&(s=s/10|0),a=(i||r<4)&&s==9999||!i&&r>3&&s==4999):a=((i||r<4)&&s+1==o||!i&&r>3&&s+1==o/2)&&(t[n+1]/o/1e3|0)==ri(10,e-3)-1,a}function Wv(t,e,r){for(var i,n=[0],o,a=0,s=t.length;ar-1&&(n[i+1]===void 0&&(n[i+1]=0),n[i+1]+=n[i]/r|0,n[i]%=r)}return n.reverse()}function TQ(t,e){var r,i,n;if(e.isZero())return e;i=e.d.length,i<32?(r=Math.ceil(i/3),n=(1/ey(4,r)).toString()):(r=16,n="2.3283064365386962890625e-10"),t.precision+=r,e=Vc(t,1,e.times(n),new t(1));for(var o=r;o--;){var a=e.times(e);e=a.times(a).minus(a).times(8).plus(1)}return t.precision-=r,e}var Jr=function(){function t(i,n,o){var a,s=0,l=i.length;for(i=i.slice();l--;)a=i[l]*n+s,i[l]=a%o|0,s=a/o|0;return s&&i.unshift(s),i}function e(i,n,o,a){var s,l;if(o!=a)l=o>a?1:-1;else for(s=l=0;sn[s]?1:-1;break}return l}function r(i,n,o,a){for(var s=0;o--;)i[o]-=s,s=i[o]1;)i.shift()}return function(i,n,o,a,s,l){var u,c,f,m,p,d,h,v,y,S,b,_,w,x,E,T,D,M,C,$,O=i.constructor,R=i.s==n.s?1:-1,L=i.d,k=n.d;if(!L||!L[0]||!k||!k[0])return new O(!i.s||!n.s||(L?k&&L[0]==k[0]:!k)?NaN:L&&L[0]==0||!k?R*0:R/0);for(l?(p=1,c=i.e-n.e):(l=Ea,p=Vt,c=Ci(i.e/p)-Ci(n.e/p)),C=k.length,D=L.length,y=new O(R),S=y.d=[],f=0;k[f]==(L[f]||0);f++);if(k[f]>(L[f]||0)&&c--,o==null?(x=o=O.precision,a=O.rounding):s?x=o+(i.e-n.e)+1:x=o,x<0)S.push(1),d=!0;else{if(x=x/p+2|0,f=0,C==1){for(m=0,k=k[0],x++;(f1&&(k=t(k,m,l),L=t(L,m,l),C=k.length,D=L.length),T=C,b=L.slice(0,C),_=b.length;_=l/2&&++M;do m=0,u=e(k,b,C,_),u<0?(w=b[0],C!=_&&(w=w*l+(b[1]||0)),m=w/M|0,m>1?(m>=l&&(m=l-1),h=t(k,m,l),v=h.length,_=b.length,u=e(h,b,v,_),u==1&&(m--,r(h,C=10;m/=10)f++;y.e=f+c*p-1,kt(y,s?o+y.e+1:o,a,d)}return y}}();function kt(t,e,r,i){var n,o,a,s,l,u,c,f,m,p=t.constructor;e:if(e!=null){if(f=t.d,!f)return t;for(n=1,s=f[0];s>=10;s/=10)n++;if(o=e-n,o<0)o+=Vt,a=e,c=f[m=0],l=c/ri(10,n-a-1)%10|0;else if(m=Math.ceil((o+1)/Vt),s=f.length,m>=s)if(i){for(;s++<=m;)f.push(0);c=l=0,n=1,o%=Vt,a=o-Vt+1}else break e;else{for(c=s=f[m],n=1;s>=10;s/=10)n++;o%=Vt,a=o-Vt+n,l=a<0?0:c/ri(10,n-a-1)%10|0}if(i=i||e<0||f[m+1]!==void 0||(a<0?c:c%ri(10,n-a-1)),u=r<4?(l||i)&&(r==0||r==(t.s<0?3:2)):l>5||l==5&&(r==4||i||r==6&&(o>0?a>0?c/ri(10,n-a):0:f[m-1])%10&1||r==(t.s<0?8:7)),e<1||!f[0])return f.length=0,u?(e-=t.e+1,f[0]=ri(10,(Vt-e%Vt)%Vt),t.e=-e||0):f[0]=t.e=0,t;if(o==0?(f.length=m,s=1,m--):(f.length=m+1,s=ri(10,Vt-o),f[m]=a>0?(c/ri(10,n-a)%ri(10,a)|0)*s:0),u)for(;;)if(m==0){for(o=1,a=f[0];a>=10;a/=10)o++;for(a=f[0]+=s,s=1;a>=10;a/=10)s++;o!=s&&(t.e++,f[0]==Ea&&(f[0]=1));break}else{if(f[m]+=s,f[m]!=Ea)break;f[m--]=0,s=1}for(o=f.length;f[--o]===0;)f.pop()}return tr&&(t.e>p.maxE?(t.d=null,t.e=NaN):t.e0?o=o.charAt(0)+"."+o.slice(1)+Eu(i):a>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(t.e<0?"e":"e+")+t.e):n<0?(o="0."+Eu(-n-1)+o,r&&(i=r-a)>0&&(o+=Eu(i))):n>=a?(o+=Eu(n+1-a),r&&(i=r-n-1)>0&&(o=o+"."+Eu(i))):((i=n+1)0&&(n+1===a&&(o+="."),o+=Eu(i))),o}function Qv(t,e){var r=t[0];for(e*=Vt;r>=10;r/=10)e++;return e}function Xv(t,e,r){if(e>AQ)throw tr=!0,r&&(t.precision=r),Error($F);return kt(new t(Yv),e,1,!0)}function Qa(t,e,r){if(e>ND)throw Error($F);return kt(new t(Jv),e,r,!0)}function PF(t){var e=t.length-1,r=e*Vt+1;if(e=t[e],e){for(;e%10==0;e/=10)r--;for(e=t[0];e>=10;e/=10)r++}return r}function Eu(t){for(var e="";t--;)e+="0";return e}function BF(t,e,r,i){var n,o=new t(1),a=Math.ceil(i/Vt+4);for(tr=!1;;){if(r%2&&(o=o.times(e),NF(o.d,a)&&(n=!0)),r=Ci(r/2),r===0){r=o.d.length-1,n&&o.d[r]===0&&++o.d[r];break}e=e.times(e),NF(e.d,a)}return tr=!0,o}function TF(t){return t.d[t.d.length-1]&1}function OF(t,e,r){for(var i,n,o=new t(e[0]),a=0;++a17)return new m(t.d?t.d[0]?t.s<0?0:1/0:1:t.s?t.s<0?0:t:NaN);for(e==null?(tr=!1,l=d):l=e,s=new m(.03125);t.e>-2;)t=t.times(s),f+=5;for(i=Math.log(ri(2,f))/Math.LN10*2+5|0,l+=i,r=o=a=new m(1),m.precision=l;;){if(o=kt(o.times(t),l,1),r=r.times(++c),s=a.plus(Jr(o,r,l,1)),vi(s.d).slice(0,l)===vi(a.d).slice(0,l)){for(n=f;n--;)a=kt(a.times(a),l,1);if(e==null)if(u<3&&Yp(a.d,l-i,p,u))m.precision=l+=10,r=o=s=new m(1),c=0,u++;else return kt(a,m.precision=d,p,tr=!0);else return m.precision=d,a}a=s}}function Au(t,e){var r,i,n,o,a,s,l,u,c,f,m,p=1,d=10,h=t,v=h.d,y=h.constructor,S=y.rounding,b=y.precision;if(h.s<0||!v||!v[0]||!h.e&&v[0]==1&&v.length==1)return new y(v&&!v[0]?-1/0:h.s!=1?NaN:v?0:h);if(e==null?(tr=!1,c=b):c=e,y.precision=c+=d,r=vi(v),i=r.charAt(0),Math.abs(o=h.e)<15e14){for(;i<7&&i!=1||i==1&&r.charAt(1)>3;)h=h.times(t),r=vi(h.d),i=r.charAt(0),p++;o=h.e,i>1?(h=new y("0."+r),o++):h=new y(i+"."+r.slice(1))}else return u=Xv(y,c+2,b).times(o+""),h=Au(new y(i+"."+r.slice(1)),c-d).plus(u),y.precision=b,e==null?kt(h,b,S,tr=!0):h;for(f=h,l=a=h=Jr(h.minus(1),h.plus(1),c,1),m=kt(h.times(h),c,1),n=3;;){if(a=kt(a.times(m),c,1),u=l.plus(Jr(a,new y(n),c,1)),vi(u.d).slice(0,c)===vi(l.d).slice(0,c))if(l=l.times(2),o!==0&&(l=l.plus(Xv(y,c+2,b).times(o+""))),l=Jr(l,new y(p),c,1),e==null)if(Yp(l.d,c-d,S,s))y.precision=c+=d,u=a=h=Jr(f.minus(1),f.plus(1),c,1),m=kt(h.times(h),c,1),n=s=1;else return kt(l,y.precision=b,S,tr=!0);else return y.precision=b,l;l=u,n+=2}}function RF(t){return String(t.s*t.s/0)}function Hv(t,e){var r,i,n;for((r=e.indexOf("."))>-1&&(e=e.replace(".","")),(i=e.search(/e/i))>0?(r<0&&(r=i),r+=+e.slice(i+1),e=e.substring(0,i)):r<0&&(r=e.length),i=0;e.charCodeAt(i)===48;i++);for(n=e.length;e.charCodeAt(n-1)===48;--n);if(e=e.slice(i,n),e){if(n-=i,t.e=r=r-i-1,t.d=[],i=(r+1)%Vt,r<0&&(i+=Vt),it.constructor.maxE?(t.d=null,t.e=NaN):t.e-1){if(e=e.replace(/(\d)_(?=\d)/g,"$1"),kF.test(e))return Hv(t,e)}else if(e==="Infinity"||e==="NaN")return+e||(t.s=NaN),t.e=NaN,t.d=null,t;if(SQ.test(e))r=16,e=e.toLowerCase();else if(wQ.test(e))r=2;else if(DQ.test(e))r=8;else throw Error(Tu+e);for(o=e.search(/p/i),o>0?(l=+e.slice(o+1),e=e.substring(2,o)):e=e.slice(2),o=e.indexOf("."),a=o>=0,i=t.constructor,a&&(e=e.replace(".",""),s=e.length,o=s-o,n=BF(i,new i(r),o,o*2)),u=Wv(e,r,Ea),c=u.length-1,o=c;u[o]===0;--o)u.pop();return o<0?new i(t.s*0):(t.e=Qv(u,c),t.d=u,tr=!1,a&&(t=Jr(t,n,s*4)),l&&(t=t.times(Math.abs(l)<54?ri(2,l):Jp.pow(2,l))),tr=!0,t)}function MQ(t,e){var r,i=e.d.length;if(i<3)return e.isZero()?e:Vc(t,2,e,e);r=1.4*Math.sqrt(i),r=r>16?16:r|0,e=e.times(1/ey(5,r)),e=Vc(t,2,e,e);for(var n,o=new t(5),a=new t(16),s=new t(20);r--;)n=e.times(e),e=e.times(o.plus(n.times(a.times(n).minus(s))));return e}function Vc(t,e,r,i,n){var o,a,s,l,u=1,c=t.precision,f=Math.ceil(c/Vt);for(tr=!1,l=r.times(r),s=new t(i);;){if(a=Jr(s.times(l),new t(e++*e++),c,1),s=n?i.plus(a):i.minus(a),i=Jr(a.times(l),new t(e++*e++),c,1),a=s.plus(i),a.d[f]!==void 0){for(o=f;a.d[o]===s.d[o]&&o--;);if(o==-1)break}o=s,s=i,i=a,a=o,u++}return tr=!0,a.d.length=f+1,a}function ey(t,e){for(var r=t;--e;)r*=t;return r}function LF(t,e){var r,i=e.s<0,n=Qa(t,t.precision,1),o=n.times(.5);if(e=e.abs(),e.lte(o))return Ws=i?4:1,e;if(r=e.divToInt(n),r.isZero())Ws=i?3:2;else{if(e=e.minus(r.times(n)),e.lte(o))return Ws=TF(r)?i?2:3:i?4:1,e;Ws=TF(r)?i?1:4:i?3:2}return e.minus(n).abs()}function CD(t,e,r,i){var n,o,a,s,l,u,c,f,m,p=t.constructor,d=r!==void 0;if(d?(co(r,1,Nu),i===void 0?i=p.rounding:co(i,0,8)):(r=p.precision,i=p.rounding),!t.isFinite())c=RF(t);else{for(c=es(t),a=c.indexOf("."),d?(n=2,e==16?r=r*4-3:e==8&&(r=r*3-2)):n=e,a>=0&&(c=c.replace(".",""),m=new p(1),m.e=c.length-a,m.d=Wv(es(m),10,n),m.e=m.d.length),f=Wv(c,10,n),o=l=f.length;f[--l]==0;)f.pop();if(!f[0])c=d?"0p+0":"0";else{if(a<0?o--:(t=new p(t),t.d=f,t.e=o,t=Jr(t,m,r,i,0,n),f=t.d,o=t.e,u=CF),a=f[r],s=n/2,u=u||f[r+1]!==void 0,u=i<4?(a!==void 0||u)&&(i===0||i===(t.s<0?3:2)):a>s||a===s&&(i===4||u||i===6&&f[r-1]&1||i===(t.s<0?8:7)),f.length=r,u)for(;++f[--r]>n-1;)f[r]=0,r||(++o,f.unshift(1));for(l=f.length;!f[l-1];--l);for(a=0,c="";a1)if(e==16||e==8){for(a=e==16?4:3,--l;l%a;l++)c+="0";for(f=Wv(c,n,e),l=f.length;!f[l-1];--l);for(a=1,c="1.";al)for(o-=l;o--;)c+="0";else oe)return t.length=e,!0}function CQ(t){return new this(t).abs()}function $Q(t){return new this(t).acos()}function IQ(t){return new this(t).acosh()}function FQ(t,e){return new this(t).plus(e)}function kQ(t){return new this(t).asin()}function PQ(t){return new this(t).asinh()}function BQ(t){return new this(t).atan()}function OQ(t){return new this(t).atanh()}function RQ(t,e){t=new this(t),e=new this(e);var r,i=this.precision,n=this.rounding,o=i+4;return!t.s||!e.s?r=new this(NaN):!t.d&&!e.d?(r=Qa(this,o,1).times(e.s>0?.25:.75),r.s=t.s):!e.d||t.isZero()?(r=e.s<0?Qa(this,i,n):new this(0),r.s=t.s):!t.d||e.isZero()?(r=Qa(this,o,1).times(.5),r.s=t.s):e.s<0?(this.precision=o,this.rounding=1,r=this.atan(Jr(t,e,o,1)),e=Qa(this,o,1),this.precision=i,this.rounding=n,r=t.s<0?r.minus(e):r.plus(e)):r=this.atan(Jr(t,e,o,1)),r}function LQ(t){return new this(t).cbrt()}function UQ(t){return kt(t=new this(t),t.e+1,2)}function zQ(t,e,r){return new this(t).clamp(e,r)}function VQ(t){if(!t||typeof t!="object")throw Error(Kv+"Object expected");var e,r,i,n=t.defaults===!0,o=["precision",1,Nu,"rounding",0,8,"toExpNeg",-zc,0,"toExpPos",0,zc,"maxE",0,zc,"minE",-zc,0,"modulo",0,9];for(e=0;e=o[e+1]&&i<=o[e+2])this[r]=i;else throw Error(Tu+r+": "+i);if(r="crypto",n&&(this[r]=TD[r]),(i=t[r])!==void 0)if(i===!0||i===!1||i===0||i===1)if(i)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(IF);else this[r]=!1;else throw Error(Tu+r+": "+i);return this}function qQ(t){return new this(t).cos()}function jQ(t){return new this(t).cosh()}function UF(t){var e,r,i;function n(o){var a,s,l,u=this;if(!(u instanceof n))return new n(o);if(u.constructor=n,MF(o)){u.s=o.s,tr?!o.d||o.e>n.maxE?(u.e=NaN,u.d=null):o.e=10;s/=10)a++;tr?a>n.maxE?(u.e=NaN,u.d=null):a=429e7?e[o]=crypto.getRandomValues(new Uint32Array(1))[0]:s[o++]=n%1e7;else if(crypto.randomBytes){for(e=crypto.randomBytes(i*=4);o=214e7?crypto.randomBytes(4).copy(e,o):(s.push(n%1e7),o+=4);o=i/4}else throw Error(IF);else for(;o=10;n/=10)i++;i{var{on:e,config:r}=t,i=vl.clone({precision:r.precision,modulo:vl.EUCLID});return i.prototype=Object.create(i.prototype),i.prototype.type="BigNumber",i.prototype.isBigNumber=!0,i.prototype.toJSON=function(){return{mathjs:"BigNumber",value:this.toString()}},i.fromJSON=function(n){return new i(n.value)},e&&e("config",function(n,o){n.precision!==o.precision&&i.config({precision:n.precision})}),i},{isClass:!0});var $i=Math.cosh||function(t){return Math.abs(t)<1e-9?1-t:(Math.exp(t)+Math.exp(-t))*.5},na=Math.sinh||function(t){return Math.abs(t)<1e-9?t:(Math.exp(t)-Math.exp(-t))*.5},vee=function(t){let e=Math.PI/4;if(-e>t||t>e)return Math.cos(t)-1;let r=t*t;return r*(r*(r*(r*(r*(r*(r*(r/20922789888e3-1/87178291200)+1/479001600)-1/3628800)+1/40320)-1/720)+1/24)-1/2)},$D=function(t,e){return t=Math.abs(t),e=Math.abs(e),t0&&qc();break;case"number":r.im=0,r.re=t;break;default:qc()}return isNaN(r.re)||isNaN(r.im),r};function Fe(t,e){if(!(this instanceof Fe))return new Fe(t,e);let r=yl(t,e);this.re=r.re,this.im=r.im}Fe.prototype={re:0,im:0,sign:function(){let t=$D(this.re,this.im);return new Fe(this.re/t,this.im/t)},add:function(t,e){let r=yl(t,e),i=this.isInfinite(),n=!(isFinite(r.re)&&isFinite(r.im));return i||n?i&&n?Fe.NAN:Fe.INFINITY:new Fe(this.re+r.re,this.im+r.im)},sub:function(t,e){let r=yl(t,e),i=this.isInfinite(),n=!(isFinite(r.re)&&isFinite(r.im));return i||n?i&&n?Fe.NAN:Fe.INFINITY:new Fe(this.re-r.re,this.im-r.im)},mul:function(t,e){let r=yl(t,e),i=this.isInfinite(),n=!(isFinite(r.re)&&isFinite(r.im)),o=this.re===0&&this.im===0,a=r.re===0&&r.im===0;return i&&a||n&&o?Fe.NAN:i||n?Fe.INFINITY:r.im===0&&this.im===0?new Fe(this.re*r.re,0):new Fe(this.re*r.re-this.im*r.im,this.re*r.im+this.im*r.re)},div:function(t,e){let r=yl(t,e),i=this.isInfinite(),n=!(isFinite(r.re)&&isFinite(r.im)),o=this.re===0&&this.im===0,a=r.re===0&&r.im===0;if(o&&a||i&&n)return Fe.NAN;if(a||i)return Fe.INFINITY;if(o||n)return Fe.ZERO;if(r.im===0)return new Fe(this.re/r.re,this.im/r.re);if(Math.abs(r.re)0)return new Fe(Math.pow(this.re,r.re),0);if(this.re===0)switch((r.re%4+4)%4){case 0:return new Fe(Math.pow(this.im,r.re),0);case 1:return new Fe(0,Math.pow(this.im,r.re));case 2:return new Fe(-Math.pow(this.im,r.re),0);case 3:return new Fe(0,-Math.pow(this.im,r.re))}}if(i&&r.re>0)return Fe.ZERO;let o=Math.atan2(this.im,this.re),a=ID(this.re,this.im),s=Math.exp(r.re*a-r.im*o),l=r.im*a+r.re*o;return new Fe(s*Math.cos(l),s*Math.sin(l))},sqrt:function(){let t=this.re,e=this.im;if(e===0)return t>=0?new Fe(Math.sqrt(t),0):new Fe(0,Math.sqrt(-t));let r=$D(t,e),i=Math.sqrt(.5*(r+Math.abs(t))),n=Math.abs(e)/(2*i);return t>=0?new Fe(i,e<0?-n:n):new Fe(n,e<0?-i:i)},exp:function(){let t=Math.exp(this.re);return this.im===0?new Fe(t,0):new Fe(t*Math.cos(this.im),t*Math.sin(this.im))},expm1:function(){let t=this.re,e=this.im;return new Fe(Math.expm1(t)*Math.cos(e)+vee(e),Math.exp(t)*Math.sin(e))},log:function(){let t=this.re,e=this.im;return e===0&&t>0?new Fe(Math.log(t),0):new Fe(ID(t,e),Math.atan2(e,t))},abs:function(){return $D(this.re,this.im)},arg:function(){return Math.atan2(this.im,this.re)},sin:function(){let t=this.re,e=this.im;return new Fe(Math.sin(t)*$i(e),Math.cos(t)*na(e))},cos:function(){let t=this.re,e=this.im;return new Fe(Math.cos(t)*$i(e),-Math.sin(t)*na(e))},tan:function(){let t=2*this.re,e=2*this.im,r=Math.cos(t)+$i(e);return new Fe(Math.sin(t)/r,na(e)/r)},cot:function(){let t=2*this.re,e=2*this.im,r=Math.cos(t)-$i(e);return new Fe(-Math.sin(t)/r,na(e)/r)},sec:function(){let t=this.re,e=this.im,r=.5*$i(2*e)+.5*Math.cos(2*t);return new Fe(Math.cos(t)*$i(e)/r,Math.sin(t)*na(e)/r)},csc:function(){let t=this.re,e=this.im,r=.5*$i(2*e)-.5*Math.cos(2*t);return new Fe(Math.sin(t)*$i(e)/r,-Math.cos(t)*na(e)/r)},asin:function(){let t=this.re,e=this.im,r=new Fe(e*e-t*t+1,-2*t*e).sqrt(),i=new Fe(r.re-e,r.im+t).log();return new Fe(i.im,-i.re)},acos:function(){let t=this.re,e=this.im,r=new Fe(e*e-t*t+1,-2*t*e).sqrt(),i=new Fe(r.re-e,r.im+t).log();return new Fe(Math.PI/2-i.im,i.re)},atan:function(){let t=this.re,e=this.im;if(t===0){if(e===1)return new Fe(0,1/0);if(e===-1)return new Fe(0,-1/0)}let r=t*t+(1-e)*(1-e),i=new Fe((1-e*e-t*t)/r,-2*t/r).log();return new Fe(-.5*i.im,.5*i.re)},acot:function(){let t=this.re,e=this.im;if(e===0)return new Fe(Math.atan2(1,t),0);let r=t*t+e*e;return r!==0?new Fe(t/r,-e/r).atan():new Fe(t!==0?t/0:0,e!==0?-e/0:0).atan()},asec:function(){let t=this.re,e=this.im;if(t===0&&e===0)return new Fe(0,1/0);let r=t*t+e*e;return r!==0?new Fe(t/r,-e/r).acos():new Fe(t!==0?t/0:0,e!==0?-e/0:0).acos()},acsc:function(){let t=this.re,e=this.im;if(t===0&&e===0)return new Fe(Math.PI/2,1/0);let r=t*t+e*e;return r!==0?new Fe(t/r,-e/r).asin():new Fe(t!==0?t/0:0,e!==0?-e/0:0).asin()},sinh:function(){let t=this.re,e=this.im;return new Fe(na(t)*Math.cos(e),$i(t)*Math.sin(e))},cosh:function(){let t=this.re,e=this.im;return new Fe($i(t)*Math.cos(e),na(t)*Math.sin(e))},tanh:function(){let t=2*this.re,e=2*this.im,r=$i(t)+Math.cos(e);return new Fe(na(t)/r,Math.sin(e)/r)},coth:function(){let t=2*this.re,e=2*this.im,r=$i(t)-Math.cos(e);return new Fe(na(t)/r,-Math.sin(e)/r)},csch:function(){let t=this.re,e=this.im,r=Math.cos(2*e)-$i(2*t);return new Fe(-2*na(t)*Math.cos(e)/r,2*$i(t)*Math.sin(e)/r)},sech:function(){let t=this.re,e=this.im,r=Math.cos(2*e)+$i(2*t);return new Fe(2*$i(t)*Math.cos(e)/r,-2*na(t)*Math.sin(e)/r)},asinh:function(){let t=this.im;this.im=-this.re,this.re=t;let e=this.asin();return this.re=-this.im,this.im=t,t=e.re,e.re=-e.im,e.im=t,e},acosh:function(){let t=this.acos();if(t.im<=0){let e=t.re;t.re=-t.im,t.im=e}else{let e=t.im;t.im=-t.re,t.re=e}return t},atanh:function(){let t=this.re,e=this.im,r=t>1&&e===0,i=1-t,n=1+t,o=i*i+e*e,a=o!==0?new Fe((n*i-e*e)/o,(e*i+n*e)/o):new Fe(t!==-1?t/0:0,e!==0?e/0:0),s=a.re;return a.re=ID(a.re,a.im)/2,a.im=Math.atan2(a.im,s)/2,r&&(a.im=-a.im),a},acoth:function(){let t=this.re,e=this.im;if(t===0&&e===0)return new Fe(0,Math.PI/2);let r=t*t+e*e;return r!==0?new Fe(t/r,-e/r).atanh():new Fe(t!==0?t/0:0,e!==0?-e/0:0).atanh()},acsch:function(){let t=this.re,e=this.im;if(e===0)return new Fe(t!==0?Math.log(t+Math.sqrt(t*t+1)):1/0,0);let r=t*t+e*e;return r!==0?new Fe(t/r,-e/r).asinh():new Fe(t!==0?t/0:0,e!==0?-e/0:0).asinh()},asech:function(){let t=this.re,e=this.im;if(this.isZero())return Fe.INFINITY;let r=t*t+e*e;return r!==0?new Fe(t/r,-e/r).acosh():new Fe(t!==0?t/0:0,e!==0?-e/0:0).acosh()},inverse:function(){if(this.isZero())return Fe.INFINITY;if(this.isInfinite())return Fe.ZERO;let t=this.re,e=this.im,r=t*t+e*e;return new Fe(t/r,-e/r)},conjugate:function(){return new Fe(this.re,-this.im)},neg:function(){return new Fe(-this.re,-this.im)},ceil:function(t){return t=Math.pow(10,t||0),new Fe(Math.ceil(this.re*t)/t,Math.ceil(this.im*t)/t)},floor:function(t){return t=Math.pow(10,t||0),new Fe(Math.floor(this.re*t)/t,Math.floor(this.im*t)/t)},round:function(t){return t=Math.pow(10,t||0),new Fe(Math.round(this.re*t)/t,Math.round(this.im*t)/t)},equals:function(t,e){let r=yl(t,e);return Math.abs(r.re-this.re)<=Fe.EPSILON&&Math.abs(r.im-this.im)<=Fe.EPSILON},clone:function(){return new Fe(this.re,this.im)},toString:function(){let t=this.re,e=this.im,r="";return this.isNaN()?"NaN":this.isInfinite()?"Infinity":(Math.abs(t)(Object.defineProperty(Fe,"name",{value:"Complex"}),Fe.prototype.constructor=Fe,Fe.prototype.type="Complex",Fe.prototype.isComplex=!0,Fe.prototype.toJSON=function(){return{mathjs:"Complex",re:this.re,im:this.im}},Fe.prototype.toPolar=function(){return{r:this.abs(),phi:this.arg()}},Fe.prototype.format=function(t){var e="",r=this.im,i=this.re,n=Da(this.re,t),o=Da(this.im,t),a=Et(t)?t:t?t.precision:null;if(a!==null){var s=Math.pow(10,-a);Math.abs(i/r)e.re?1:t.ree.im?1:t.im"u"&&(BigInt=function(t){if(isNaN(t))throw new Error("");return t});var Pt=BigInt(0),ur=BigInt(1),Xp=BigInt(2),FD=BigInt(5),fo=BigInt(10),_ee=2e3,ct={s:ur,n:Pt,d:ur};function Hs(t,e){try{t=BigInt(t)}catch{throw Mu()}return t*e}function Aa(t){return typeof t=="bigint"?t:Math.floor(t)}function dn(t,e){if(e===Pt)throw kD();let r=Object.create(ko.prototype);r.s=t1&&(e[r]=(e[r]||Pt)+ur):e[t]=(e[t]||Pt)+ur,e}var mi=function(t,e){let r=Pt,i=ur,n=ur;if(t!=null)if(e!==void 0){if(typeof t=="bigint")r=t;else{if(isNaN(t))throw Mu();if(t%1!==0)throw qF();r=BigInt(t)}if(typeof e=="bigint")i=e;else{if(isNaN(e))throw Mu();if(e%1!==0)throw qF();i=BigInt(e)}n=r*i}else if(typeof t=="object"){if("d"in t&&"n"in t)r=BigInt(t.n),i=BigInt(t.d),"s"in t&&(r*=BigInt(t.s));else if(0 in t)r=BigInt(t[0]),1 in t&&(i=BigInt(t[1]));else if(typeof t=="bigint")r=t;else throw Mu();n=r*i}else if(typeof t=="number"){if(isNaN(t))throw Mu();if(t<0&&(n=-ur,t=-t),t%1===0)r=BigInt(t);else if(t>0){let o=1,a=0,s=1,l=1,u=1,c=1e7;for(t>=1&&(o=10**Math.floor(1+Math.log10(t)),t/=o);s<=c&&u<=c;){let f=(a+l)/(s+u);if(t===f){s+u<=c?(r=a+l,i=s+u):u>s?(r=l,i=u):(r=a,i=s);break}else t>f?(a+=l,s+=u):(l+=a,u+=s),s>c?(r=l,i=u):(r=a,i=s)}r=BigInt(r)*BigInt(o),i=BigInt(i)}}else if(typeof t=="string"){let o=0,a=Pt,s=Pt,l=Pt,u=ur,c=ur,f=t.replace(/_/g,"").match(/\d+|./g);if(f===null)throw Mu();if(f[o]==="-"?(n=-ur,o++):f[o]==="+"&&o++,f.length===o+1?s=Hs(f[o++],n):f[o+1]==="."||f[o]==="."?(f[o]!=="."&&(a=Hs(f[o++],n)),o++,(o+1===f.length||f[o+1]==="("&&f[o+3]===")"||f[o+1]==="'"&&f[o+3]==="'")&&(s=Hs(f[o],n),u=fo**BigInt(f[o].length),o++),(f[o]==="("&&f[o+2]===")"||f[o]==="'"&&f[o+2]==="'")&&(l=Hs(f[o+1],n),c=fo**BigInt(f[o+1].length)-ur,o+=3)):f[o+1]==="/"||f[o+1]===":"?(s=Hs(f[o],n),u=Hs(f[o+2],ur),o+=3):f[o+3]==="/"&&f[o+1]===" "&&(a=Hs(f[o],n),s=Hs(f[o+2],n),u=Hs(f[o+4],ur),o+=5),f.length<=o)i=u*c,n=r=l+i*a+c*s;else throw Mu()}else if(typeof t=="bigint")r=t,n=t,i=ur;else throw Mu();if(i===Pt)throw kD();ct.s=nPt;t=t*t%r,e>>=ur)e&ur&&(i=i*t%r);return i}function See(t,e){for(;e%Xp===Pt;e/=Xp);for(;e%FD===Pt;e/=FD);if(e===ur)return Pt;let r=fo%e,i=1;for(;r!==ur;i++)if(r=r*fo%e,i>_ee)return Pt;return BigInt(i)}function Dee(t,e,r){let i=ur,n=wee(fo,r,e);for(let o=0;o<300;o++){if(i===n)return BigInt(o);i=i*fo%e,n=n*fo%e}return 0}function bl(t,e){if(!t)return e;if(!e)return t;for(;;){if(t%=e,!t)return e;if(e%=t,!e)return t}}function ko(t,e){if(mi(t,e),this instanceof ko)t=bl(ct.d,ct.n),this.s=ct.s,this.n=ct.n/t,this.d=ct.d/t;else return dn(ct.s*ct.n,ct.d)}var kD=function(){return new Error("Division by Zero")},Mu=function(){return new Error("Invalid argument")},qF=function(){return new Error("Parameters must be integer")};ko.prototype={s:ur,n:Pt,d:ur,abs:function(){return dn(this.n,this.d)},neg:function(){return dn(-this.s*this.n,this.d)},add:function(t,e){return mi(t,e),dn(this.s*this.n*ct.d+ct.s*this.d*ct.n,this.d*ct.d)},sub:function(t,e){return mi(t,e),dn(this.s*this.n*ct.d-ct.s*this.d*ct.n,this.d*ct.d)},mul:function(t,e){return mi(t,e),dn(this.s*ct.s*this.n*ct.n,this.d*ct.d)},div:function(t,e){return mi(t,e),dn(this.s*ct.s*this.n*ct.d,this.d*ct.n)},clone:function(){return dn(this.s*this.n,this.d)},mod:function(t,e){if(t===void 0)return dn(this.s*this.n%this.d,ur);if(mi(t,e),Pt===ct.n*this.d)throw kD();return dn(this.s*(ct.d*this.n)%(ct.n*this.d),ct.d*this.d)},gcd:function(t,e){return mi(t,e),dn(bl(ct.n,this.n)*bl(ct.d,this.d),ct.d*this.d)},lcm:function(t,e){return mi(t,e),ct.n===Pt&&this.n===Pt?dn(Pt,ur):dn(ct.n*this.n,bl(ct.n,this.n)*bl(ct.d,this.d))},inverse:function(){return dn(this.s*this.d,this.n)},pow:function(t,e){if(mi(t,e),ct.d===ur)return ct.sct.s*ct.n*this.d},gte:function(t,e){return mi(t,e),this.s*this.n*ct.d>=ct.s*ct.n*this.d},compare:function(t,e){mi(t,e);let r=this.s*this.n*ct.d-ct.s*ct.n*this.d;return(PtPt&&this.s>=Pt?ur:Pt),t)},floor:function(t){return t=fo**BigInt(t||0),dn(Aa(this.s*t*this.n/this.d)-(t*this.n%this.d>Pt&&this.s=Pt?ur:Pt)+Xp*(t*this.n%this.d)>this.d?ur:Pt),t)},roundTo:function(t,e){mi(t,e);let r=this.n*ct.d,i=this.d*ct.n,n=r%i,o=Aa(r/i);return n+n>=i&&o++,dn(this.s*o*ct.n,ct.d)},divisible:function(t,e){return mi(t,e),!(!(ct.n*this.d)||this.n*ct.d%(ct.n*this.d))},valueOf:function(){return Number(this.s*this.n)/Number(this.d)},toString:function(t){let e=this.n,r=this.d;t=t||15;let i=See(e,r),n=Dee(e,r,i),o=this.sPt&&(i+=n,i+=" ",e%=r),i+=e,i+="/",i+=r}return i},toLatex:function(t){let e=this.n,r=this.d,i=this.sPt&&(i+=n,e%=r),i+="\\frac{",i+=e,i+="}{",i+=r,i+="}"}return i},toContinued:function(){let t=this.n,e=this.d,r=[];do{r.push(Aa(t/e));let i=t%e;t=e,e=i}while(t!==ur);return r},simplify:function(t){let e=BigInt(1/(t||.001)|0),r=this.abs(),i=r.toContinued();for(let n=1;n=0;s--)o=o.inverse().add(i[s]);let a=o.sub(r);if(a.n*e(Object.defineProperty(ko,"name",{value:"Fraction"}),ko.prototype.constructor=ko,ko.prototype.type="Fraction",ko.prototype.isFraction=!0,ko.prototype.toJSON=function(){return{mathjs:"Fraction",n:String(this.s*this.n),d:String(this.d)}},ko.fromJSON=function(t){return new ko(t)},ko),{isClass:!0});var Tee="Range",Nee=[],ZF=N(Tee,Nee,()=>{function t(e,r,i){if(!(this instanceof t))throw new SyntaxError("Constructor must be called with the new operator");var n=e!=null,o=r!=null,a=i!=null;if(n){if(mt(e))e=e.toNumber();else if(typeof e!="number"&&!Ja(e))throw new TypeError("Parameter start must be a number or bigint")}if(o){if(mt(r))r=r.toNumber();else if(typeof r!="number"&&!Ja(r))throw new TypeError("Parameter end must be a number or bigint")}if(a){if(mt(i))i=i.toNumber();else if(typeof i!="number"&&!Ja(i))throw new TypeError("Parameter step must be a number or bigint")}this.start=n?parseFloat(e):0,this.end=o?parseFloat(r):0,this.step=a?parseFloat(i):1}return t.prototype.type="Range",t.prototype.isRange=!0,t.parse=function(e){if(typeof e!="string")return null;var r=e.split(":"),i=r.map(function(o){return parseFloat(o)}),n=i.some(function(o){return isNaN(o)});if(n)return null;switch(i.length){case 2:return new t(i[0],i[1]);case 3:return new t(i[0],i[2],i[1]);default:return null}},t.prototype.clone=function(){return new t(this.start,this.end,this.step)},t.prototype.size=function(){var e=0,r=this.start,i=this.step,n=this.end,o=n-r;return ra(i)===ra(o)?e=Math.ceil(o/i):o===0&&(e=0),isNaN(e)&&(e=0),[e]},t.prototype.min=function(){var e=this.size()[0];if(e>0)return this.step>0?this.start:this.start+(e-1)*this.step},t.prototype.max=function(){var e=this.size()[0];if(e>0)return this.step>0?this.start+(e-1)*this.step:this.start},t.prototype.forEach=function(e){var r=this.start,i=this.step,n=this.end,o=0;if(i>0)for(;rn;)e(r,[o],this),r+=i,o++},t.prototype.map=function(e){var r=[];return this.forEach(function(i,n,o){r[n[0]]=e(i,n,o)}),r},t.prototype.toArray=function(){var e=[];return this.forEach(function(r,i){e[i[0]]=r}),e},t.prototype.valueOf=function(){return this.toArray()},t.prototype.format=function(e){var r=Da(this.start,e);return this.step!==1&&(r+=":"+Da(this.step,e)),r+=":"+Da(this.end,e),r},t.prototype.toString=function(){return this.format()},t.prototype.toJSON=function(){return{mathjs:"Range",start:this.start,end:this.end,step:this.step}},t.fromJSON=function(e){return new t(e.start,e.end,e.step)},t},{isClass:!0});var Mee="Matrix",Cee=[],GF=N(Mee,Cee,()=>{function t(){if(!(this instanceof t))throw new SyntaxError("Constructor must be called with the new operator")}return t.prototype.type="Matrix",t.prototype.isMatrix=!0,t.prototype.storage=function(){throw new Error("Cannot invoke storage on a Matrix interface")},t.prototype.datatype=function(){throw new Error("Cannot invoke datatype on a Matrix interface")},t.prototype.create=function(e,r){throw new Error("Cannot invoke create on a Matrix interface")},t.prototype.subset=function(e,r,i){throw new Error("Cannot invoke subset on a Matrix interface")},t.prototype.get=function(e){throw new Error("Cannot invoke get on a Matrix interface")},t.prototype.set=function(e,r,i){throw new Error("Cannot invoke set on a Matrix interface")},t.prototype.resize=function(e,r){throw new Error("Cannot invoke resize on a Matrix interface")},t.prototype.reshape=function(e,r){throw new Error("Cannot invoke reshape on a Matrix interface")},t.prototype.clone=function(){throw new Error("Cannot invoke clone on a Matrix interface")},t.prototype.size=function(){throw new Error("Cannot invoke size on a Matrix interface")},t.prototype.map=function(e,r){throw new Error("Cannot invoke map on a Matrix interface")},t.prototype.forEach=function(e){throw new Error("Cannot invoke forEach on a Matrix interface")},t.prototype[Symbol.iterator]=function(){throw new Error("Cannot iterate a Matrix interface")},t.prototype.toArray=function(){throw new Error("Cannot invoke toArray on a Matrix interface")},t.prototype.valueOf=function(){throw new Error("Cannot invoke valueOf on a Matrix interface")},t.prototype.format=function(e){throw new Error("Cannot invoke format on a Matrix interface")},t.prototype.toString=function(){throw new Error("Cannot invoke toString on a Matrix interface")},t},{isClass:!0});function PD(t,e,r){var i=t.constructor,n=new i(2),o="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Ge(r))throw new Error("size must be an integer");if(t.greaterThan(n.pow(r-1).sub(1))||t.lessThan(n.pow(r-1).mul(-1)))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!t.isInteger())throw new Error("Value must be an integer");t.lessThan(0)&&(t=t.add(n.pow(r))),o="i".concat(r)}switch(e){case 2:return"".concat(t.toBinary()).concat(o);case 8:return"".concat(t.toOctal()).concat(o);case 16:return"".concat(t.toHexadecimal()).concat(o);default:throw new Error("Base ".concat(e," not supported "))}}function YF(t,e){if(typeof e=="function")return e(t);if(!t.isFinite())return t.isNaN()?"NaN":t.gt(0)?"Infinity":"-Infinity";var{notation:r,precision:i,wordSize:n}=SD(e);switch(r){case"fixed":return Iee(t,i);case"exponential":return WF(t,i);case"engineering":return $ee(t,i);case"bin":return PD(t,2,n);case"oct":return PD(t,8,n);case"hex":return PD(t,16,n);case"auto":{var o=HF(e?.lowerExp,-3),a=HF(e?.upperExp,5);if(t.isZero())return"0";var s,l=t.toSignificantDigits(i),u=l.e;return u>=o&&u=0?"+":"")+i.toString()}function WF(t,e){return e!==void 0?t.toExponential(e-1):t.toExponential()}function Iee(t,e){return t.toFixed(e)}function HF(t,e){return Et(t)?t:mt(t)?t.toNumber():e}function XF(t,e){var r=t.length-e.length,i=t.length;return t.substring(r,i)===e}function Ct(t,e){var r=Fee(t,e);return e&&typeof e=="object"&&"truncate"in e&&r.length>e.truncate?r.substring(0,e.truncate-3)+"...":r}function Fee(t,e){if(typeof t=="number")return Da(t,e);if(mt(t))return YF(t,e);if(kee(t))return!e||e.fraction!=="decimal"?"".concat(t.s*t.n,"/").concat(t.d):t.toString();if(Array.isArray(t))return KF(t,e);if(Qr(t))return xl(t);if(typeof t=="function")return t.syntax?String(t.syntax):"function";if(t&&typeof t=="object"){if(typeof t.format=="function")return t.format(e);if(t&&t.toString(e)!=={}.toString())return t.toString(e);var r=Object.keys(t).map(i=>xl(i)+": "+Ct(t[i],e));return"{"+r.join(", ")+"}"}return String(t)}function xl(t){for(var e=String(t),r="",i=0;i/g,">"),e}function KF(t,e){if(Array.isArray(t)){for(var r="[",i=t.length,n=0;ne?1:-1}function $t(t,e,r){if(!(this instanceof $t))throw new SyntaxError("Constructor must be called with the new operator");this.actual=t,this.expected=e,this.relation=r,this.message="Dimension mismatch ("+(Array.isArray(t)?"["+t.join(", ")+"]":t)+" "+(this.relation||"!=")+" "+(Array.isArray(e)?"["+e.join(", ")+"]":e)+")",this.stack=new Error().stack}$t.prototype=new RangeError;$t.prototype.constructor=RangeError;$t.prototype.name="DimensionError";$t.prototype.isDimensionError=!0;function ii(t,e,r){if(!(this instanceof ii))throw new SyntaxError("Constructor must be called with the new operator");this.index=t,arguments.length<3?(this.min=0,this.max=e):(this.min=e,this.max=r),this.min!==void 0&&this.index=this.max?this.message="Index out of range ("+this.index+" > "+(this.max-1)+")":this.message="Index out of range ("+this.index+")",this.stack=new Error().stack}ii.prototype=new RangeError;ii.prototype.constructor=RangeError;ii.prototype.name="IndexError";ii.prototype.isIndexError=!0;function vt(t){for(var e=[];Array.isArray(t);)e.push(t.length),t=t[0];return e}function QF(t,e,r){var i,n=t.length;if(n!==e[r])throw new $t(n,e[r]);if(r")}function OD(t,e){var r=e.length===0;if(r){if(Array.isArray(t))throw new $t(t.length,0)}else QF(t,e,0)}function Kp(t,e){var r=t.isMatrix?t._size:vt(t),i=e._sourceSize;i.forEach((n,o)=>{if(n!==null&&n!==r[o])throw new $t(n,r[o])})}function Mr(t,e){if(t!==void 0){if(!Et(t)||!Ge(t))throw new TypeError("Index must be an integer (value: "+t+")");if(t<0||typeof e=="number"&&t>=e)throw new ii(t,e)}}function _l(t){for(var e=0;e=0,l=e%r===0;if(s)if(l)i[o]=-e/r;else throw new Error("Could not replace wildcard, since "+e+" is no multiple of "+-r);return i}function ek(t){return t.reduce((e,r)=>e*r,1)}function Pee(t,e){for(var r=t,i,n=e.length-1;n>0;n--){var o=e[n];i=[];for(var a=r.length/o,s=0;s1&&arguments[1]!==void 0?arguments[1]:!1;if(!Array.isArray(t))return t;if(typeof e!="boolean")throw new TypeError("Boolean expected for second argument of flatten");var r=[];return e?n(t):i(t),r;function i(o){for(var a=0;ae.test(r))}function UD(t,e){return Array.prototype.join.call(t,e)}function Ys(t){if(!Array.isArray(t))throw new TypeError("Array input expected");if(t.length===0)return t;var e=[],r=0;e[0]={value:t[0],identifier:0};for(var i=1;i1)return t.slice(1).reduce(function(r,i){return nk(r,i,e,0)},t[0]);throw new Error("Wrong number of arguments in function concat")}function tm(){for(var t=arguments.length,e=new Array(t),r=0;rm.length),n=Math.max(...i),o=new Array(n).fill(null),a=0;ao[c]&&(o[c]=s[u])}for(var f=0;f1||t[n]>e[o])throw new Error("shape mismatch: mismatch is found in arg with shape (".concat(t,") not possible to broadcast dimension ").concat(i," with size ").concat(t[n]," to size ").concat(e[o]))}}function ts(t,e){var r=vt(t);if(lo(r,e))return t;ik(r,e);var i=tm(r,e),n=i.length,o=[...Array(n-r.length).fill(1),...r],a=Oee(t);r.lengthn[o],t)}function rm(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(t.length===0)return[];if(r)return o(t);var i=[];return n(t,0);function n(a,s){if(Array.isArray(a)){for(var l=a.length,u=Array(l),c=0;c2&&arguments[2]!==void 0?arguments[2]:!1;if(t.length===0)return;if(r){o(t);return}var i=[];n(t,0);function n(a,s){if(Array.isArray(a))for(var l=a.length,u=0;u3&&arguments[3]!==void 0?arguments[3]:!1;if(VD.default.isTypedFunction(t)){var n;if(i)n=1;else{var o=(e.isMatrix?e.size():vt(e)).map(()=>0),a=e.isMatrix?e.get(o):Wc(e,o);n=Uee(t,a,o,e)}var s;if(e.isMatrix&&e.dataType!=="mixed"&&e.dataType!==void 0){var l=Ree(t,n);s=l!==void 0?l:t}else s=t;return n>=1&&n<=3?{isUnary:n===1,fn:function(){for(var c=arguments.length,f=new Array(c),m=0;m{var[n,o]=i;n.split(",").length===e&&r.push(o)}),r.length===1)return r[0]}function Lee(t){if(t.length!==1)return!1;var e=t.toString();if(/arguments/.test(e))return!1;var r=e.match(/\(.*?\)/);return!/\.\.\./.test(r)}function Uee(t,e,r,i){for(var n=[e,r,i],o=3;o>0;o--){var a=n.slice(0,o);if(VD.default.resolve(t,a)!==null)return o}}function ok(t,e,r,i){try{return t(...e)}catch(n){zee(n,e,r,i)}}function zee(t,e,r,i){var n;if(t instanceof TypeError&&((n=t.data)===null||n===void 0?void 0:n.category)==="wrongType"){var o=[];throw o.push("value: ".concat(ir(e[0]))),e.length>=2&&o.push("index: ".concat(ir(e[1]))),e.length>=3&&o.push("array: ".concat(ir(e[2]))),new TypeError("Function ".concat(r," cannot apply callback arguments ")+"".concat(i,"(").concat(o.join(", "),") at index ").concat(JSON.stringify(e[1])))}else throw new TypeError("Function ".concat(r," cannot apply callback arguments ")+"to function ".concat(i,": ").concat(t.message))}var Vee="DenseMatrix",qee=["Matrix"],ak=N(Vee,qee,t=>{var{Matrix:e}=t;function r(c,f){if(!(this instanceof r))throw new SyntaxError("Constructor must be called with the new operator");if(f&&!Qr(f))throw new Error("Invalid datatype: "+f);if(Je(c))c.type==="DenseMatrix"?(this._data=dt(c._data),this._size=dt(c._size),this._datatype=f||c._datatype):(this._data=c.toArray(),this._size=c.size(),this._datatype=f||c._datatype);else if(c&&sr(c.data)&&sr(c.size))this._data=c.data,this._size=c.size,OD(this._data,this._size),this._datatype=f||c.datatype;else if(sr(c))this._data=u(c),this._size=vt(this._data),OD(this._data,this._size),this._datatype=f;else{if(c)throw new TypeError("Unsupported type of data ("+ir(c)+")");this._data=[],this._size=[0],this._datatype=f}}r.prototype=new e,r.prototype.createDenseMatrix=function(c,f){return new r(c,f)},Object.defineProperty(r,"name",{value:"DenseMatrix"}),r.prototype.constructor=r,r.prototype.type="DenseMatrix",r.prototype.isDenseMatrix=!0,r.prototype.getDataType=function(){return wl(this._data,ir)},r.prototype.storage=function(){return"dense"},r.prototype.datatype=function(){return this._datatype},r.prototype.create=function(c,f){return new r(c,f)},r.prototype.subset=function(c,f,m){switch(arguments.length){case 1:return i(this,c);case 2:case 3:return o(this,c,f,m);default:throw new SyntaxError("Wrong number of arguments")}},r.prototype.get=function(c){return Wc(this._data,c)},r.prototype.set=function(c,f,m){if(!sr(c))throw new TypeError("Array expected");if(c.length1&&arguments[1]!==void 0?arguments[1]:0,y=f.dimension(v);return p[v]=y.size()[0],v(Mr(S,h.length),d(h[S],v+1))).valueOf():y.map(S=>(Mr(S,h.length),h[S])).valueOf()}}function o(c,f,m,p){if(!f||f.isIndex!==!0)throw new TypeError("Invalid index");var d=f.size(),h=f.isScalar(),v;if(Je(m)?(v=m.size(),m=m.valueOf()):v=vt(m),h){if(v.length!==0)throw new TypeError("Scalar expected");c.set(f.min(),m,p)}else{if(!lo(v,d))try{v.length===0?m=ts([m],d):m=ts(m,d),v=vt(m)}catch{}if(d.length");var b=f.max().map(function(_){return _+1});l(c,b,p),a(c._data,f,m)}return c}function a(c,f,m){var p=f.size().length-1;d(c,m);function d(h,v){var y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,S=f.dimension(y);y{Mr(b,h.length),d(h[b],v[_[0]],y+1)}):S.forEach((b,_)=>{Mr(b,h.length),h[b]=v[_[0]]})}}r.prototype.resize=function(c,f,m){if(!un(c))throw new TypeError("Array or Matrix expected");var p=c.valueOf().map(h=>Array.isArray(h)&&h.length===1?h[0]:h),d=m?this.clone():this;return s(d,p,f)};function s(c,f,m){if(f.length===0){for(var p=c._data;sr(p);)p=p[0];return p}return c._size=f.slice(0),c._data=Ta(c._data,c._size,m),c}r.prototype.reshape=function(c,f){var m=f?this.clone():this;m._data=Qp(m._data,c);var p=m._size.reduce((d,h)=>d*h);return m._size=em(c,p),m};function l(c,f,m){for(var p=c._size.slice(0),d=!1;p.lengthp[h]&&(p[h]=f[h],d=!0);d&&s(c,p,m)}r.prototype.clone=function(){var c=new r({data:dt(this._data),size:dt(this._size),datatype:this._datatype});return c},r.prototype.size=function(){return this._size.slice(0)},r.prototype.map=function(c){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,p=this,d=p._size.length-1;if(d<0)return p.clone();var h=oa(c,p,"map",m),v=h.fn,y=p.create(void 0,p._datatype);if(y._size=p._size,m||h.isUnary)return y._data=E(p._data),y;if(d===0){for(var S=p.valueOf(),b=Array(S.length),_=0;_1&&arguments[1]!==void 0?arguments[1]:0,M=Array(T.length);if(D1&&arguments[1]!==void 0?arguments[1]:0,M=Array(T.length);if(D1&&arguments[1]!==void 0?arguments[1]:!1,m=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,p=this,d=p._size.length-1;if(d<0)return;var h=oa(c,p,"map",m),v=h.fn;if(m||h.isUnary){_(p._data);return}if(d===0){for(var y=0;y1&&arguments[1]!==void 0?arguments[1]:0;if(x1&&arguments[1]!==void 0?arguments[1]:0;if(x[b[y]]);f.push(new r(S,c._datatype))},h=0;h0?c:0,m=c<0?-c:0,p=this._size[0],d=this._size[1],h=Math.min(p-m,d-f),v=[],y=0;y0?m:0,h=m<0?-m:0,v=c[0],y=c[1],S=Math.min(v-h,y-d),b;if(sr(f)){if(f.length!==S)throw new Error("Invalid value array length");b=function(T){return f[T]}}else if(Je(f)){var _=f.size();if(_.length!==1||_[0]!==S)throw new Error("Invalid matrix length");b=function(T){return f.get([T])}}else b=function(){return f};p||(p=mt(b(0))?b(0).mul(0):0);var w=[];if(c.length>0){w=Ta(w,c,p);for(var x=0;x{var{typed:e}=t;return e(sk,{any:dt})});function oy(t){var e=t.length,r=t[0].length,i,n,o=[];for(n=0;ne(r),!1,!0):iy(t,e,!0)}function it(t,e,r){if(!r)return Je(t)?t.map(n=>e(n),!1,!0):rm(t,e,!0);var i=n=>n===0?n:e(n);return Je(t)?t.map(n=>i(n),!1,!0):rm(t,i,!0)}function Cu(t,e,r){var i=Array.isArray(t)?vt(t):t.size();if(e<0||e>=i.length)throw new ii(e,i.length);return Je(t)?t.create(ay(t.valueOf(),e,r),t.datatype()):ay(t,e,r)}function ay(t,e,r){var i,n,o,a;if(e<=0)if(Array.isArray(t[0])){for(a=oy(t),n=[],i=0;i{var{typed:e}=t;return e(lk,{number:Ge,BigNumber:function(i){return i.isInt()},bigint:function(i){return!0},Fraction:function(i){return i.d===1n},"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var po="number",Js="number, number";function jD(t){return Math.abs(t)}jD.signature=po;function ZD(t,e){return t+e}ZD.signature=Js;function GD(t,e){return t-e}GD.signature=Js;function WD(t,e){return t*e}WD.signature=Js;function Gee(t,e){return t/e}Gee.signature=Js;function HD(t){return-t}HD.signature=po;function YD(t){return t}YD.signature=po;function Hc(t){return hF(t)}Hc.signature=po;function JD(t){return t*t*t}JD.signature=po;function XD(t){return Math.exp(t)}XD.signature=po;function KD(t){return gF(t)}KD.signature=po;function Wee(t,e){if(!Ge(t)||!Ge(e))throw new Error("Parameters in function gcd must be integer numbers");for(var r;e!==0;)r=t%e,t=e,e=r;return t<0?-t:t}Wee.signature=Js;function QD(t,e){if(!Ge(t)||!Ge(e))throw new Error("Parameters in function lcm must be integer numbers");if(t===0||e===0)return 0;for(var r,i=t*e;e!==0;)r=e,e=t%r,t=r;return Math.abs(i/t)}QD.signature=Js;function eE(t,e){return e?Math.log(t)/Math.log(e):Math.log(t)}function nm(t){return dF(t)}nm.signature=po;function sy(t){return mF(t)}sy.signature=po;function Hee(t){return Uv(t)}Hee.signature=po;function Yee(t,e){return e===0?t:t-e*Math.floor(t/e)}Yee.signature=Js;function tE(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,r=e<0;if(r&&(e=-e),e===0)throw new Error("Root must be non-zero");if(t<0&&Math.abs(e)%2!==1)throw new Error("Root must be odd when a is negative.");if(t===0)return r?1/0:0;if(!isFinite(t))return r?0:t;var i=Math.pow(Math.abs(t),1/e);return i=t<0?-i:i,r?1/i:i}function uy(t){return ra(t)}uy.signature=po;function Jee(t){return Math.sqrt(t)}Jee.signature=po;function rE(t){return t*t}rE.signature=po;function nE(t,e){var r,i,n,o=0,a=1,s=1,l=0;if(!Ge(t)||!Ge(e))throw new Error("Parameters in function xgcd must be integer numbers");for(;e;)i=Math.floor(t/e),n=t-i*e,r=o,o=a-i*o,a=r,r=s,s=l-i*s,l=r,t=e,e=n;var u;return t<0?u=[-t,-a,-l]:u=[t,t?a:0,l],u}nE.signature=Js;function iE(t,e){return t*t<1&&e===1/0||t*t>1&&e===-1/0?0:Math.pow(t,e)}iE.signature=Js;function Yc(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!Ge(e)||e<0||e>15)throw new Error("Number of decimals in function round must be an integer from 0 to 15 inclusive");return parseFloat(DD(t,e))}function Xee(t){return Math.abs(t)}Xee.signature=po;var Kee="number",Jc="number, number";function oE(t,e){if(!Ge(t)||!Ge(e))throw new Error("Integers expected in function bitAnd");return t&e}oE.signature=Jc;function aE(t){if(!Ge(t))throw new Error("Integer expected in function bitNot");return~t}aE.signature=Kee;function sE(t,e){if(!Ge(t)||!Ge(e))throw new Error("Integers expected in function bitOr");return t|e}sE.signature=Jc;function uE(t,e){if(!Ge(t)||!Ge(e))throw new Error("Integers expected in function bitXor");return t^e}uE.signature=Jc;function lE(t,e){if(!Ge(t)||!Ge(e))throw new Error("Integers expected in function leftShift");return t<>e}cE.signature=Jc;function fE(t,e){if(!Ge(t)||!Ge(e))throw new Error("Integers expected in function rightLogShift");return t>>>e}fE.signature=Jc;function Po(t,e){if(e>1;return Po(t,r)*Po(r+1,e)}function pE(t,e){if(!Ge(t)||t<0)throw new TypeError("Positive integer value expected in function combinations");if(!Ge(e)||e<0)throw new TypeError("Positive integer value expected in function combinations");if(e>t)throw new TypeError("k must be less than or equal to n");for(var r=t-e,i=1,n=e171?1/0:Po(1,t-1);if(t<.5)return Math.PI/(Math.sin(Math.PI*t)*im(1-t));if(t>=171.35)return 1/0;if(t>85){var r=t*t,i=r*t,n=i*t,o=n*t;return Math.sqrt(2*Math.PI/t)*Math.pow(t/Math.E,t)*(1+1/(12*t)+1/(288*r)-139/(51840*i)-571/(2488320*n)+163879/(209018880*o)+5246819/(75246796800*o*t))}--t,e=Sl[0];for(var a=1;a=1;i--)r+=hk[i]/(t+i);return gE+(t+.5)*Math.log(e)-e+Math.log(r)}om.signature="number";var hn="number",rte="number, number";function nte(t){return Math.acos(t)}nte.signature=hn;function vE(t){return bF(t)}vE.signature=hn;function yE(t){return Math.atan(1/t)}yE.signature=hn;function bE(t){return isFinite(t)?(Math.log((t+1)/t)+Math.log(t/(t-1)))/2:0}bE.signature=hn;function xE(t){return Math.asin(1/t)}xE.signature=hn;function _E(t){var e=1/t;return Math.log(e+Math.sqrt(e*e+1))}_E.signature=hn;function wE(t){return Math.acos(1/t)}wE.signature=hn;function SE(t){var e=1/t,r=Math.sqrt(e*e-1);return Math.log(r+e)}SE.signature=hn;function ite(t){return Math.asin(t)}ite.signature=hn;function DE(t){return xF(t)}DE.signature=hn;function ote(t){return Math.atan(t)}ote.signature=hn;function ate(t,e){return Math.atan2(t,e)}ate.signature=rte;function EE(t){return _F(t)}EE.signature=hn;function ste(t){return Math.cos(t)}ste.signature=hn;function ute(t){return Vv(t)}ute.signature=hn;function AE(t){return 1/Math.tan(t)}AE.signature=hn;function TE(t){var e=Math.exp(2*t);return(e+1)/(e-1)}TE.signature=hn;function NE(t){return 1/Math.sin(t)}NE.signature=hn;function ME(t){return t===0?Number.POSITIVE_INFINITY:Math.abs(2/(Math.exp(t)-Math.exp(-t)))*ra(t)}ME.signature=hn;function CE(t){return 1/Math.cos(t)}CE.signature=hn;function $E(t){return 2/(Math.exp(t)+Math.exp(-t))}$E.signature=hn;function lte(t){return Math.sin(t)}lte.signature=hn;function IE(t){return wF(t)}IE.signature=hn;function cte(t){return Math.tan(t)}cte.signature=hn;function fte(t){return qv(t)}fte.signature=hn;var am="number";function pte(t){return Ge(t)}pte.signature=am;function FE(t){return t<0}FE.signature=am;function kE(t){return t>0}kE.signature=am;function mte(t){return t===0}mte.signature=am;function PE(t){return Number.isNaN(t)}PE.signature=am;function xn(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1e-9,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(r<=0)throw new Error("Relative tolerance must be greater than 0");if(i<0)throw new Error("Absolute tolerance must be at least 0");return t.isNaN()||e.isNaN()?!1:!t.isFinite()||!e.isFinite()?t.eq(e):t.eq(e)?!0:t.minus(e).abs().lte(t.constructor.max(t.constructor.max(t.abs(),e.abs()).mul(r),i))}var gk="isNegative",dte=["typed","config"],vk=N(gk,dte,t=>{var{typed:e,config:r}=t;return e(gk,{number:i=>jr(i,0,r.relTol,r.absTol)?!1:FE(i),BigNumber:i=>xn(i,new i.constructor(0),r.relTol,r.absTol)?!1:i.isNeg()&&!i.isZero()&&!i.isNaN(),bigint:i=>i<0n,Fraction:i=>i.s<0n,Unit:e.referToSelf(i=>n=>e.find(i,n.valueType())(n.value)),"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var yk="isNumeric",hte=["typed"],bk=N(yk,hte,t=>{var{typed:e}=t;return e(yk,{"number | BigNumber | bigint | Fraction | boolean":()=>!0,"Complex | Unit | string | null | undefined | Node":()=>!1,"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var xk="hasNumericValue",gte=["typed","isNumeric"],_k=N(xk,gte,t=>{var{typed:e,isNumeric:r}=t;return e(xk,{boolean:()=>!0,string:function(n){return n.trim().length>0&&!isNaN(Number(n))},any:function(n){return r(n)}})});var wk="isPositive",vte=["typed","config"],Sk=N(wk,vte,t=>{var{typed:e,config:r}=t;return e(wk,{number:i=>jr(i,0,r.relTol,r.absTol)?!1:kE(i),BigNumber:i=>xn(i,new i.constructor(0),r.relTol,r.absTol)?!1:!i.isNeg()&&!i.isZero()&&!i.isNaN(),bigint:i=>i>0n,Fraction:i=>i.s>0n&&i.n>0n,Unit:e.referToSelf(i=>n=>e.find(i,n.valueType())(n.value)),"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var Dk="isZero",yte=["typed","equalScalar"],Ek=N(Dk,yte,t=>{var{typed:e,equalScalar:r}=t;return e(Dk,{"number | BigNumber | Complex | Fraction":i=>r(i,0),bigint:i=>i===0n,Unit:e.referToSelf(i=>n=>e.find(i,n.valueType())(n.value)),"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var Ak="isNaN",bte=["typed"],Tk=N(Ak,bte,t=>{var{typed:e}=t;return e(Ak,{number:PE,BigNumber:function(i){return i.isNaN()},bigint:function(i){return!1},Fraction:function(i){return!1},Complex:function(i){return i.isNaN()},Unit:function(i){return Number.isNaN(i.value)},"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var Nk="typeOf",xte=["typed"],Mk=N(Nk,xte,t=>{var{typed:e}=t;return e(Nk,{any:ir})});function Ck(t,e,r,i){return jr(t.re,e.re,r,i)&&jr(t.im,e.im,r,i)}var sa=N("compareUnits",["typed"],t=>{var{typed:e}=t;return{"Unit, Unit":e.referToSelf(r=>(i,n)=>{if(!i.equalBase(n))throw new Error("Cannot compare units with different base");return e.find(r,[i.valueType(),n.valueType()])(i.value,n.value)})}});var py="equalScalar",_te=["typed","config"],$k=N(py,_te,t=>{var{typed:e,config:r}=t,i=sa({typed:e});return e(py,{"boolean, boolean":function(o,a){return o===a},"number, number":function(o,a){return jr(o,a,r.relTol,r.absTol)},"BigNumber, BigNumber":function(o,a){return o.eq(a)||xn(o,a,r.relTol,r.absTol)},"bigint, bigint":function(o,a){return o===a},"Fraction, Fraction":function(o,a){return o.equals(a)},"Complex, Complex":function(o,a){return Ck(o,a,r.relTol,r.absTol)}},i)}),kLe=N(py,["typed","config"],t=>{var{typed:e,config:r}=t;return e(py,{"number, number":function(n,o){return jr(n,o,r.relTol,r.absTol)}})});var wte="SparseMatrix",Ste=["typed","equalScalar","Matrix"],Ik=N(wte,Ste,t=>{var{typed:e,equalScalar:r,Matrix:i}=t;function n(h,v){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(v&&!Qr(v))throw new Error("Invalid datatype: "+v);if(Je(h))o(this,h,v);else if(h&&sr(h.index)&&sr(h.ptr)&&sr(h.size))this._values=h.values,this._index=h.index,this._ptr=h.ptr,this._size=h.size,this._datatype=v||h.datatype;else if(sr(h))a(this,h,v);else{if(h)throw new TypeError("Unsupported type of data ("+ir(h)+")");this._values=[],this._index=[],this._ptr=[0],this._size=[0,0],this._datatype=v}}function o(h,v,y){v.type==="SparseMatrix"?(h._values=v._values?dt(v._values):void 0,h._index=dt(v._index),h._ptr=dt(v._ptr),h._size=dt(v._size),h._datatype=y||v._datatype):a(h,v.valueOf(),y||v._datatype)}function a(h,v,y){h._values=[],h._index=[],h._ptr=[],h._datatype=y;var S=v.length,b=0,_=r,w=0;if(Qr(y)&&(_=e.find(r,[y,y])||r,w=e.convert(0,y)),S>0){var x=0;do{h._ptr.push(h._index.length);for(var E=0;E");if(b.length===1){var T=v.dimension(0);T.forEach(function(C,$){Mr(C),h.set([C,0],y[$[0]],S)})}else{var D=v.dimension(0),M=v.dimension(1);D.forEach(function(C,$){Mr(C),M.forEach(function(O,R){Mr(O),h.set([C,O],y[$[0]][R[0]],S)})})}}return h}n.prototype.get=function(h){if(!sr(h))throw new TypeError("Array expected");if(h.length!==this._size.length)throw new $t(h.length,this._size.length);if(!this._values)throw new Error("Cannot invoke get on a Pattern only matrix");var v=h[0],y=h[1];Mr(v,this._size[0]),Mr(y,this._size[1]);var S=u(v,this._ptr[y],this._ptr[y+1],this._index);return S_-1||b>w-1)&&(m(this,Math.max(S+1,_),Math.max(b+1,w),y),_=this._size[0],w=this._size[1]),Mr(S,_),Mr(b,w);var T=u(S,this._ptr[b],this._ptr[b+1],this._index);return TArray.isArray(_)&&_.length===1?_[0]:_);if(S.length!==2)throw new Error("Only two dimensions matrix are supported");S.forEach(function(_){if(!Et(_)||!Ge(_)||_<0)throw new TypeError("Invalid size, must contain positive integers (size: "+Ct(S)+")")});var b=y?this.clone():this;return m(b,S[0],S[1],v)};function m(h,v,y,S){var b=S||0,_=r,w=0;Qr(h._datatype)&&(_=e.find(r,[h._datatype,h._datatype])||r,w=e.convert(0,h._datatype),b=e.convert(b,h._datatype));var x=!_(b,w),E=h._size[0],T=h._size[1],D,M,C;if(y>T){for(M=T;ME){if(x){var $=0;for(M=0;Mv-1&&(h._values.splice(C,1),h._index.splice(C,1),R++)}h._ptr[M]=h._values.length}return h._size[0]=v,h._size[1]=y,h}n.prototype.reshape=function(h,v){if(!sr(h))throw new TypeError("Array expected");if(h.length!==2)throw new Error("Sparse matrices can only be reshaped in two dimensions");h.forEach(function(W){if(!Et(W)||!Ge(W)||W<=-2||W===0)throw new TypeError("Invalid size, must contain positive integers or -1 (size: "+Ct(h)+")")});var y=this._size[0]*this._size[1];h=em(h,y);var S=h[0]*h[1];if(y!==S)throw new Error("Reshaping sparse matrix will result in the wrong number of elements");var b=v?this.clone():this;if(this._size[0]===h[0]&&this._size[1]===h[1])return b;for(var _=[],w=0;w=v&&k<=y&&C(h._values[L],k-v,$-S)}else{for(var V={},J=O;J "+(this._values?Ct(this._values[E],h):"X")}return b},n.prototype.toString=function(){return Ct(this.toArray())},n.prototype.toJSON=function(){return{mathjs:"SparseMatrix",values:this._values,index:this._index,ptr:this._ptr,size:this._size,datatype:this._datatype}},n.prototype.diagonal=function(h){if(h){if(mt(h)&&(h=h.toNumber()),!Et(h)||!Ge(h))throw new TypeError("The parameter k must be an integer number")}else h=0;var v=h>0?h:0,y=h<0?-h:0,S=this._size[0],b=this._size[1],_=Math.min(S-y,b-v),w=[],x=[],E=[];E[0]=0;for(var T=v;T0?y:0,E=y<0?-y:0,T=h[0],D=h[1],M=Math.min(T-E,D-x),C;if(sr(v)){if(v.length!==M)throw new Error("Invalid value array length");C=function(Q){return v[Q]}}else if(Je(v)){var $=v.size();if($.length!==1||$[0]!==M)throw new Error("Invalid matrix length");C=function(Q){return v.get([Q])}}else C=function(){return v};for(var O=[],R=[],L=[],k=0;k=0&&V=E||b[D]!==v)){var C=S?S[T]:void 0;b.splice(D,0,v),S&&S.splice(D,0,C),b.splice(D<=T?T+1:T,1),S&&S.splice(D<=T?T+1:T,1);continue}if(D=E||b[T]!==h)){var $=S?S[D]:void 0;b.splice(T,0,h),S&&S.splice(T,0,$),b.splice(T<=D?D+1:D,1),S&&S.splice(T<=D?D+1:D,1)}}},n},{isClass:!0});var Dte="number",Ete=["typed"];function Ate(t){var e=t.match(/(0[box])([0-9a-fA-F]*)\.([0-9a-fA-F]*)/);if(e){var r={"0b":2,"0o":8,"0x":16}[e[1]],i=e[2],n=e[3];return{input:t,radix:r,integerPart:i,fractionalPart:n}}else return null}function Tte(t){for(var e=parseInt(t.integerPart,t.radix),r=0,i=0;i{var{typed:e}=t,r=e("number",{"":function(){return 0},number:function(n){return n},string:function(n){if(n==="NaN")return NaN;var o=Ate(n);if(o)return Tte(o);var a=0,s=n.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);s&&(a=Number(s[2]),n=s[1]);var l=Number(n);if(isNaN(l))throw new SyntaxError('String "'+n+'" is not a valid number');if(s){if(l>2**a-1)throw new SyntaxError('String "'.concat(n,'" is out of range'));l>=2**(a-1)&&(l=l-2**a)}return l},BigNumber:function(n){return n.toNumber()},bigint:function(n){return Number(n)},Fraction:function(n){return n.valueOf()},Unit:e.referToSelf(i=>n=>{var o=n.clone();return o.value=i(n.value),o}),null:function(n){return 0},"Unit, string | Unit":function(n,o){return n.toNumber(o)},"Array | Matrix":e.referToSelf(i=>n=>it(n,i))});return r.fromJSON=function(i){return parseFloat(i.value)},r});var Nte="bigint",Mte=["typed"],kk=N(Nte,Mte,t=>{var{typed:e}=t,r=e("bigint",{"":function(){return 0n},bigint:function(n){return n},number:function(n){return BigInt(n.toFixed())},BigNumber:function(n){return BigInt(n.round().toString())},Fraction:function(n){return BigInt(n.valueOf().toFixed())},"string | boolean":function(n){return BigInt(n)},null:function(n){return 0n},"Array | Matrix":e.referToSelf(i=>n=>it(n,i))});return r.fromJSON=function(i){return BigInt(i.value)},r});var Pk="string",Cte=["typed"],Bk=N(Pk,Cte,t=>{var{typed:e}=t;return e(Pk,{"":function(){return""},number:Da,null:function(i){return"null"},boolean:function(i){return i+""},string:function(i){return i},"Array | Matrix":e.referToSelf(r=>i=>it(i,r)),any:function(i){return String(i)}})});var Ok="boolean",$te=["typed"],Rk=N(Ok,$te,t=>{var{typed:e}=t;return e(Ok,{"":function(){return!1},boolean:function(i){return i},number:function(i){return!!i},null:function(i){return!1},BigNumber:function(i){return!i.isZero()},string:function(i){var n=i.toLowerCase();if(n==="true")return!0;if(n==="false")return!1;var o=Number(i);if(i!==""&&!isNaN(o))return!!o;throw new Error('Cannot convert "'+i+'" to a boolean')},"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var Ite="bignumber",Fte=["typed","BigNumber"],Lk=N(Ite,Fte,t=>{var{typed:e,BigNumber:r}=t;return e("bignumber",{"":function(){return new r(0)},number:function(n){return new r(n+"")},string:function(n){var o=n.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);if(o){var a=o[2],s=r(o[1]),l=new r(2).pow(Number(a));if(s.gt(l.sub(1)))throw new SyntaxError('String "'.concat(n,'" is out of range'));var u=new r(2).pow(Number(a)-1);return s.gte(u)?s.sub(l):s}return new r(n)},BigNumber:function(n){return n},bigint:function(n){return new r(n.toString())},Unit:e.referToSelf(i=>n=>{var o=n.clone();return o.value=i(n.value),o}),Fraction:function(n){return new r(String(n.n)).div(String(n.d)).times(String(n.s))},null:function(n){return new r(0)},"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var kte="complex",Pte=["typed","Complex"],Uk=N(kte,Pte,t=>{var{typed:e,Complex:r}=t;return e("complex",{"":function(){return r.ZERO},number:function(n){return new r(n,0)},"number, number":function(n,o){return new r(n,o)},"BigNumber, BigNumber":function(n,o){return new r(n.toNumber(),o.toNumber())},Fraction:function(n){return new r(n.valueOf(),0)},Complex:function(n){return n.clone()},string:function(n){return r(n)},null:function(n){return r(0)},Object:function(n){if("re"in n&&"im"in n)return new r(n.re,n.im);if("r"in n&&"phi"in n||"abs"in n&&"arg"in n)return new r(n);throw new Error("Expected object with properties (re and im) or (r and phi) or (abs and arg)")},"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var Bte="fraction",Ote=["typed","Fraction"],zk=N(Bte,Ote,t=>{var{typed:e,Fraction:r}=t;return e("fraction",{number:function(n){if(!isFinite(n)||isNaN(n))throw new Error(n+" cannot be represented as a fraction");return new r(n)},string:function(n){return new r(n)},"number, number":function(n,o){return new r(n,o)},"bigint, bigint":function(n,o){return new r(n,o)},null:function(n){return new r(0)},BigNumber:function(n){return new r(n.toString())},bigint:function(n){return new r(n.toString())},Fraction:function(n){return n},Unit:e.referToSelf(i=>n=>{var o=n.clone();return o.value=i(n.value),o}),Object:function(n){return new r(n)},"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var Vk="matrix",Rte=["typed","Matrix","DenseMatrix","SparseMatrix"],qk=N(Vk,Rte,t=>{var{typed:e,Matrix:r,DenseMatrix:i,SparseMatrix:n}=t;return e(Vk,{"":function(){return o([])},string:function(s){return o([],s)},"string, string":function(s,l){return o([],s,l)},Array:function(s){return o(s)},Matrix:function(s){return o(s,s.storage())},"Array | Matrix, string":o,"Array | Matrix, string, string":o});function o(a,s,l){if(s==="dense"||s==="default"||s===void 0)return new i(a,l);if(s==="sparse")return new n(a,l);throw new TypeError("Unknown matrix type "+JSON.stringify(s)+".")}});var jk="matrixFromFunction",Lte=["typed","matrix","isZero"],Zk=N(jk,Lte,t=>{var{typed:e,matrix:r,isZero:i}=t;return e(jk,{"Array | Matrix, function, string, string":function(a,s,l,u){return n(a,s,l,u)},"Array | Matrix, function, string":function(a,s,l){return n(a,s,l)},"Matrix, function":function(a,s){return n(a,s,"dense")},"Array, function":function(a,s){return n(a,s,"dense").toArray()},"Array | Matrix, string, function":function(a,s,l){return n(a,l,s)},"Array | Matrix, string, string, function":function(a,s,l,u){return n(a,u,s,l)}});function n(o,a,s,l){var u;return l!==void 0?u=r(s,l):u=r(s),u.resize(o),u.forEach(function(c,f){var m=a(f);i(m)||u.set(f,m)}),u}});var Gk="matrixFromRows",Ute=["typed","matrix","flatten","size"],Wk=N(Gk,Ute,t=>{var{typed:e,matrix:r,flatten:i,size:n}=t;return e(Gk,{"...Array":function(l){return o(l)},"...Matrix":function(l){return r(o(l.map(u=>u.toArray())))}});function o(s){if(s.length===0)throw new TypeError("At least one row is needed to construct a matrix.");var l=a(s[0]),u=[];for(var c of s){var f=a(c);if(f!==l)throw new TypeError("The vectors had different length: "+(l|0)+" \u2260 "+(f|0));u.push(i(c))}return u}function a(s){var l=n(s);if(l.length===1)return l[0];if(l.length===2){if(l[0]===1)return l[1];if(l[1]===1)return l[0];throw new TypeError("At least one of the arguments is not a vector.")}else throw new TypeError("Only one- or two-dimensional vectors are supported.")}});var Hk="matrixFromColumns",zte=["typed","matrix","flatten","size"],Yk=N(Hk,zte,t=>{var{typed:e,matrix:r,flatten:i,size:n}=t;return e(Hk,{"...Array":function(l){return o(l)},"...Matrix":function(l){return r(o(l.map(u=>u.toArray())))}});function o(s){if(s.length===0)throw new TypeError("At least one column is needed to construct a matrix.");for(var l=a(s[0]),u=[],c=0;c{var{typed:e}=t;return e(Jk,{"Unit, Array":function(i,n){return i.splitUnit(n)}})});var Kk="unaryMinus",qte=["typed"],Qk=N(Kk,qte,t=>{var{typed:e}=t;return e(Kk,{number:HD,"Complex | BigNumber | Fraction":r=>r.neg(),bigint:r=>-r,Unit:e.referToSelf(r=>i=>{var n=i.clone();return n.value=e.find(r,n.valueType())(i.value),n}),"Array | Matrix":e.referToSelf(r=>i=>it(i,r,!0))})});var eP="unaryPlus",jte=["typed","config","numeric"],tP=N(eP,jte,t=>{var{typed:e,config:r,numeric:i}=t;return e(eP,{number:YD,Complex:function(o){return o},BigNumber:function(o){return o},bigint:function(o){return o},Fraction:function(o){return o},Unit:function(o){return o.clone()},"Array | Matrix":e.referToSelf(n=>o=>it(o,n,!0)),boolean:function(o){return i(o?1:0,r.number)},string:function(o){return i(o,Mi(o,r))}})});var rP="abs",Zte=["typed"],nP=N(rP,Zte,t=>{var{typed:e}=t;return e(rP,{number:jD,"Complex | BigNumber | Fraction | Unit":r=>r.abs(),bigint:r=>r<0n?-r:r,"Array | Matrix":e.referToSelf(r=>i=>it(i,r,!0))})});var iP="mapSlices",Gte=["typed","isInteger"],sm=N(iP,Gte,t=>{var{typed:e,isInteger:r}=t;return e(iP,{"Array | Matrix, number | BigNumber, function":function(n,o,a){if(!r(o))throw new TypeError("Integer number expected for dimension");var s=Array.isArray(n)?vt(n):n.size();if(o<0||o>=s.length)throw new ii(o,s.length);return Je(n)?n.create(my(n.valueOf(),o,a),n.datatype()):my(n,o,a)}})},{formerly:"apply"});function my(t,e,r){var i,n,o;if(e<=0)if(Array.isArray(t[0])){for(o=Wte(t),n=[],i=0;i{var{typed:e}=t;return e(oP,{"number, number":ZD,"Complex, Complex":function(i,n){return i.add(n)},"BigNumber, BigNumber":function(i,n){return i.plus(n)},"bigint, bigint":function(i,n){return i+n},"Fraction, Fraction":function(i,n){return i.add(n)},"Unit, Unit":e.referToSelf(r=>(i,n)=>{if(i.value===null||i.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(n.value===null||n.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!i.equalBase(n))throw new Error("Units do not match");var o=i.clone();return o.value=e.find(r,[o.valueType(),n.valueType()])(o.value,n.value),o.fixPrefix=!1,o})})});var sP="subtractScalar",Yte=["typed"],uP=N(sP,Yte,t=>{var{typed:e}=t;return e(sP,{"number, number":GD,"Complex, Complex":function(i,n){return i.sub(n)},"BigNumber, BigNumber":function(i,n){return i.minus(n)},"bigint, bigint":function(i,n){return i-n},"Fraction, Fraction":function(i,n){return i.sub(n)},"Unit, Unit":e.referToSelf(r=>(i,n)=>{if(i.value===null||i.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(n.value===null||n.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!i.equalBase(n))throw new Error("Units do not match");var o=i.clone();return o.value=e.find(r,[o.valueType(),n.valueType()])(o.value,n.value),o.fixPrefix=!1,o})})});var lP="cbrt",Jte=["config","typed","isNegative","unaryMinus","matrix","Complex","BigNumber","Fraction"],cP=N(lP,Jte,t=>{var{config:e,typed:r,isNegative:i,unaryMinus:n,matrix:o,Complex:a,BigNumber:s,Fraction:l}=t;return r(lP,{number:Hc,Complex:u,"Complex, boolean":u,BigNumber:function(m){return m.cbrt()},Unit:c});function u(f,m){var p=f.arg()/3,d=f.abs(),h=new a(Hc(d),0).mul(new a(0,p).exp());if(m){var v=[h,new a(Hc(d),0).mul(new a(0,p+Math.PI*2/3).exp()),new a(Hc(d),0).mul(new a(0,p-Math.PI*2/3).exp())];return e.matrix==="Array"?v:o(v)}else return h}function c(f){if(f.value&&Qn(f.value)){var m=f.clone();return m.value=1,m=m.pow(1/3),m.value=u(f.value),m}else{var p=i(f.value);p&&(f.value=n(f.value));var d;mt(f.value)?d=new s(1).div(3):Io(f.value)?d=new l(1,3):d=1/3;var h=f.pow(d);return p&&(h.value=n(h.value)),h}}});var Xte="matAlgo11xS0s",Kte=["typed","equalScalar"],Er=N(Xte,Kte,t=>{var{typed:e,equalScalar:r}=t;return function(n,o,a,s){var l=n._values,u=n._index,c=n._ptr,f=n._size,m=n._datatype;if(!l)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var p=f[0],d=f[1],h,v=r,y=0,S=a;typeof m=="string"&&(h=m,v=e.find(r,[h,h]),y=e.convert(0,h),o=e.convert(o,h),S=e.find(a,[h,h]));for(var b=[],_=[],w=[],x=0;x{var{typed:e,DenseMatrix:r}=t;return function(n,o,a,s){var l=n._values,u=n._index,c=n._ptr,f=n._size,m=n._datatype;if(!l)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var p=f[0],d=f[1],h,v=a;typeof m=="string"&&(h=m,o=e.convert(o,h),v=e.find(a,[h,h]));for(var y=[],S=[],b=[],_=0;_{var{typed:e}=t;return function(n,o,a,s){var l=n._data,u=n._size,c=n._datatype,f,m=a;typeof c=="string"&&(f=c,o=e.convert(o,f),m=e.find(a,[f,f]));var p=u.length>0?r(m,0,u,u[0],l,o,s):[];return n.createDenseMatrix({data:p,size:dt(u),datatype:f})};function r(i,n,o,a,s,l,u){var c=[];if(n===o.length-1)for(var f=0;f{var{typed:e,config:r,round:i}=t;function n(o){var a=Math.ceil(o),s=i(o);return a===s?a:jr(o,s,r.relTol,r.absTol)&&!jr(o,a,r.relTol,r.absTol)?s:a}return e(BE,{number:n,"number, number":function(a,s){if(!Ge(s))throw new RangeError("number of decimals in function ceil must be an integer");if(s<0||s>15)throw new RangeError("number of decimals in ceil number must be in range 0-15");var l=10**s;return n(a*l)/l}})}),fP=N(BE,nre,t=>{var{typed:e,config:r,round:i,matrix:n,equalScalar:o,zeros:a,DenseMatrix:s}=t,l=Er({typed:e,equalScalar:o}),u=mr({typed:e,DenseMatrix:s}),c=An({typed:e}),f=ore({typed:e,config:r,round:i});function m(p){var d=(y,S)=>xn(y,S,r.relTol,r.absTol),h=p.ceil(),v=i(p);return h.eq(v)?h:d(p,v)&&!d(p,h)?v:h}return e("ceil",{number:f.signatures.number,"number,number":f.signatures["number,number"],Complex:function(d){return d.ceil()},"Complex, number":function(d,h){return d.ceil(h)},"Complex, BigNumber":function(d,h){return d.ceil(h.toNumber())},BigNumber:m,"BigNumber, BigNumber":function(d,h){var v=ire.pow(h);return m(d.mul(v)).div(v)},bigint:p=>p,"bigint, number":(p,d)=>p,"bigint, BigNumber":(p,d)=>p,Fraction:function(d){return d.ceil()},"Fraction, number":function(d,h){return d.ceil(h)},"Fraction, BigNumber":function(d,h){return d.ceil(h.toNumber())},"Unit, number, Unit":e.referToSelf(p=>function(d,h,v){var y=d.toNumeric(v);return v.multiply(p(y,h))}),"Unit, BigNumber, Unit":e.referToSelf(p=>(d,h,v)=>p(d,h.toNumber(),v)),"Array | Matrix, number | BigNumber, Unit":e.referToSelf(p=>(d,h,v)=>it(d,y=>p(y,h,v),!0)),"Array | Matrix | Unit, Unit":e.referToSelf(p=>(d,h)=>p(d,0,h)),"Array | Matrix":e.referToSelf(p=>d=>it(d,p,!0)),"Array, number | BigNumber":e.referToSelf(p=>(d,h)=>it(d,v=>p(v,h),!0)),"SparseMatrix, number | BigNumber":e.referToSelf(p=>(d,h)=>l(d,h,p,!1)),"DenseMatrix, number | BigNumber":e.referToSelf(p=>(d,h)=>c(d,h,p,!1)),"number | Complex | Fraction | BigNumber, Array":e.referToSelf(p=>(d,h)=>c(n(h),d,p,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":e.referToSelf(p=>(d,h)=>o(d,0)?a(h.size(),h.storage()):h.storage()==="dense"?c(h,d,p,!0):u(h,d,p,!0))})});var pP="cube",are=["typed"],mP=N(pP,are,t=>{var{typed:e}=t;return e(pP,{number:JD,Complex:function(i){return i.mul(i).mul(i)},BigNumber:function(i){return i.times(i).times(i)},bigint:function(i){return i*i*i},Fraction:function(i){return i.pow(3)},Unit:function(i){return i.pow(3)}})});var dP="exp",sre=["typed"],hP=N(dP,sre,t=>{var{typed:e}=t;return e(dP,{number:XD,Complex:function(i){return i.exp()},BigNumber:function(i){return i.exp()}})});var gP="expm1",ure=["typed","Complex"],vP=N(gP,ure,t=>{var{typed:e,Complex:r}=t;return e(gP,{number:KD,Complex:function(n){var o=Math.exp(n.re);return new r(o*Math.cos(n.im)-1,o*Math.sin(n.im))},BigNumber:function(n){return n.exp().minus(1)}})});var OE="fix",lre=["typed","Complex","matrix","ceil","floor","equalScalar","zeros","DenseMatrix"],cre=N(OE,["typed","ceil","floor"],t=>{var{typed:e,ceil:r,floor:i}=t;return e(OE,{number:function(o){return o>0?i(o):r(o)},"number, number":function(o,a){return o>0?i(o,a):r(o,a)}})}),yP=N(OE,lre,t=>{var{typed:e,Complex:r,matrix:i,ceil:n,floor:o,equalScalar:a,zeros:s,DenseMatrix:l}=t,u=mr({typed:e,DenseMatrix:l}),c=An({typed:e}),f=cre({typed:e,ceil:n,floor:o});return e("fix",{number:f.signatures.number,"number, number | BigNumber":f.signatures["number,number"],Complex:function(p){return new r(p.re>0?Math.floor(p.re):Math.ceil(p.re),p.im>0?Math.floor(p.im):Math.ceil(p.im))},"Complex, number":function(p,d){return new r(p.re>0?o(p.re,d):n(p.re,d),p.im>0?o(p.im,d):n(p.im,d))},"Complex, BigNumber":function(p,d){var h=d.toNumber();return new r(p.re>0?o(p.re,h):n(p.re,h),p.im>0?o(p.im,h):n(p.im,h))},BigNumber:function(p){return p.isNegative()?n(p):o(p)},"BigNumber, number | BigNumber":function(p,d){return p.isNegative()?n(p,d):o(p,d)},bigint:m=>m,"bigint, number":(m,p)=>m,"bigint, BigNumber":(m,p)=>m,Fraction:function(p){return p.s<0n?p.ceil():p.floor()},"Fraction, number | BigNumber":function(p,d){return p.s<0n?n(p,d):o(p,d)},"Unit, number, Unit":e.referToSelf(m=>function(p,d,h){var v=p.toNumeric(h);return h.multiply(m(v,d))}),"Unit, BigNumber, Unit":e.referToSelf(m=>(p,d,h)=>m(p,d.toNumber(),h)),"Array | Matrix, number | BigNumber, Unit":e.referToSelf(m=>(p,d,h)=>it(p,v=>m(v,d,h),!0)),"Array | Matrix | Unit, Unit":e.referToSelf(m=>(p,d)=>m(p,0,d)),"Array | Matrix":e.referToSelf(m=>p=>it(p,m,!0)),"Array | Matrix, number | BigNumber":e.referToSelf(m=>(p,d)=>it(p,h=>m(h,d),!0)),"number | Complex | Fraction | BigNumber, Array":e.referToSelf(m=>(p,d)=>c(i(d),p,m,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":e.referToSelf(m=>(p,d)=>a(p,0)?s(d.size(),d.storage()):d.storage()==="dense"?c(d,p,m,!0):u(d,p,m,!0))})});var RE="floor",fre=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix"],pre=new vl(10),mre=N(RE,["typed","config","round"],t=>{var{typed:e,config:r,round:i}=t;function n(o){var a=Math.floor(o),s=i(o);return a===s?a:jr(o,s,r.relTol,r.absTol)&&!jr(o,a,r.relTol,r.absTol)?s:a}return e(RE,{number:n,"number, number":function(a,s){if(!Ge(s))throw new RangeError("number of decimals in function floor must be an integer");if(s<0||s>15)throw new RangeError("number of decimals in floor number must be in range 0 - 15");var l=10**s;return n(a*l)/l}})}),dy=N(RE,fre,t=>{var{typed:e,config:r,round:i,matrix:n,equalScalar:o,zeros:a,DenseMatrix:s}=t,l=Er({typed:e,equalScalar:o}),u=mr({typed:e,DenseMatrix:s}),c=An({typed:e}),f=mre({typed:e,config:r,round:i});function m(p){var d=(y,S)=>xn(y,S,r.relTol,r.absTol),h=p.floor(),v=i(p);return h.eq(v)?h:d(p,v)&&!d(p,h)?v:h}return e("floor",{number:f.signatures.number,"number,number":f.signatures["number,number"],Complex:function(d){return d.floor()},"Complex, number":function(d,h){return d.floor(h)},"Complex, BigNumber":function(d,h){return d.floor(h.toNumber())},BigNumber:m,"BigNumber, BigNumber":function(d,h){var v=pre.pow(h);return m(d.mul(v)).div(v)},bigint:p=>p,"bigint, number":(p,d)=>p,"bigint, BigNumber":(p,d)=>p,Fraction:function(d){return d.floor()},"Fraction, number":function(d,h){return d.floor(h)},"Fraction, BigNumber":function(d,h){return d.floor(h.toNumber())},"Unit, number, Unit":e.referToSelf(p=>function(d,h,v){var y=d.toNumeric(v);return v.multiply(p(y,h))}),"Unit, BigNumber, Unit":e.referToSelf(p=>(d,h,v)=>p(d,h.toNumber(),v)),"Array | Matrix, number | BigNumber, Unit":e.referToSelf(p=>(d,h,v)=>it(d,y=>p(y,h,v),!0)),"Array | Matrix | Unit, Unit":e.referToSelf(p=>(d,h)=>p(d,0,h)),"Array | Matrix":e.referToSelf(p=>d=>it(d,p,!0)),"Array, number | BigNumber":e.referToSelf(p=>(d,h)=>it(d,v=>p(v,h),!0)),"SparseMatrix, number | BigNumber":e.referToSelf(p=>(d,h)=>l(d,h,p,!1)),"DenseMatrix, number | BigNumber":e.referToSelf(p=>(d,h)=>c(d,h,p,!1)),"number | Complex | Fraction | BigNumber, Array":e.referToSelf(p=>(d,h)=>c(n(h),d,p,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":e.referToSelf(p=>(d,h)=>o(d,0)?a(h.size(),h.storage()):h.storage()==="dense"?c(h,d,p,!0):u(h,d,p,!0))})});var dre="matAlgo02xDS0",hre=["typed","equalScalar"],Tn=N(dre,hre,t=>{var{typed:e,equalScalar:r}=t;return function(n,o,a,s){var l=n._data,u=n._size,c=n._datatype||n.getDataType(),f=o._values,m=o._index,p=o._ptr,d=o._size,h=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(u.length!==d.length)throw new $t(u.length,d.length);if(u[0]!==d[0]||u[1]!==d[1])throw new RangeError("Dimension mismatch. Matrix A ("+u+") must match Matrix B ("+d+")");if(!f)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var v=u[0],y=u[1],S,b=r,_=0,w=a;typeof c=="string"&&c===h&&c!=="mixed"&&(S=c,b=e.find(r,[S,S]),_=e.convert(0,S),w=e.find(a,[S,S]));for(var x=[],E=[],T=[],D=0;D{var{typed:e}=t;return function(i,n,o,a){var s=i._data,l=i._size,u=i._datatype||i.getDataType(),c=n._values,f=n._index,m=n._ptr,p=n._size,d=n._datatype||n._data===void 0?n._datatype:n.getDataType();if(l.length!==p.length)throw new $t(l.length,p.length);if(l[0]!==p[0]||l[1]!==p[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+p+")");if(!c)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var h=l[0],v=l[1],y,S=0,b=o;typeof u=="string"&&u===d&&u!=="mixed"&&(y=u,S=e.convert(0,y),b=e.find(o,[y,y]));for(var _=[],w=0;w{var{typed:e,equalScalar:r}=t;return function(n,o,a){var s=n._values,l=n._index,u=n._ptr,c=n._size,f=n._datatype||n._data===void 0?n._datatype:n.getDataType(),m=o._values,p=o._index,d=o._ptr,h=o._size,v=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(c.length!==h.length)throw new $t(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");var y=c[0],S=c[1],b,_=r,w=0,x=a;typeof f=="string"&&f===v&&f!=="mixed"&&(b=f,_=e.find(r,[b,b]),w=e.convert(0,b),x=e.find(a,[b,b]));var E=s&&m?[]:void 0,T=[],D=[],M=E?[]:void 0,C=E?[]:void 0,$=[],O=[],R,L,k,V;for(L=0;L{var{typed:e}=t;return function(n,o,a){var s=n._data,l=n._size,u=n._datatype,c=o._data,f=o._size,m=o._datatype,p=[];if(l.length!==f.length)throw new $t(l.length,f.length);for(var d=0;d0?r(v,0,p,p[0],s,c):[];return n.createDenseMatrix({data:y,size:p,datatype:h})};function r(i,n,o,a,s,l){var u=[];if(n===o.length-1)for(var c=0;cwre(i,r))}function wre(t,e){return lo(t.size(),e)?t:t.create(ts(t.valueOf(),e),t.datatype())}var Sre="matrixAlgorithmSuite",Dre=["typed","matrix"],Bt=N(Sre,Dre,t=>{var{typed:e,matrix:r}=t,i=bP({typed:e}),n=An({typed:e});return function(a){var s=a.elop,l=a.SD||a.DS,u;s?(u={"DenseMatrix, DenseMatrix":(p,d)=>i(...oi(p,d),s),"Array, Array":(p,d)=>i(...oi(r(p),r(d)),s).valueOf(),"Array, DenseMatrix":(p,d)=>i(...oi(r(p),d),s),"DenseMatrix, Array":(p,d)=>i(...oi(p,r(d)),s)},a.SS&&(u["SparseMatrix, SparseMatrix"]=(p,d)=>a.SS(...oi(p,d),s,!1)),a.DS&&(u["DenseMatrix, SparseMatrix"]=(p,d)=>a.DS(...oi(p,d),s,!1),u["Array, SparseMatrix"]=(p,d)=>a.DS(...oi(r(p),d),s,!1)),l&&(u["SparseMatrix, DenseMatrix"]=(p,d)=>l(...oi(d,p),s,!0),u["SparseMatrix, Array"]=(p,d)=>l(...oi(r(d),p),s,!0))):(u={"DenseMatrix, DenseMatrix":e.referToSelf(p=>(d,h)=>i(...oi(d,h),p)),"Array, Array":e.referToSelf(p=>(d,h)=>i(...oi(r(d),r(h)),p).valueOf()),"Array, DenseMatrix":e.referToSelf(p=>(d,h)=>i(...oi(r(d),h),p)),"DenseMatrix, Array":e.referToSelf(p=>(d,h)=>i(...oi(d,r(h)),p))},a.SS&&(u["SparseMatrix, SparseMatrix"]=e.referToSelf(p=>(d,h)=>a.SS(...oi(d,h),p,!1))),a.DS&&(u["DenseMatrix, SparseMatrix"]=e.referToSelf(p=>(d,h)=>a.DS(...oi(d,h),p,!1)),u["Array, SparseMatrix"]=e.referToSelf(p=>(d,h)=>a.DS(...oi(r(d),h),p,!1))),l&&(u["SparseMatrix, DenseMatrix"]=e.referToSelf(p=>(d,h)=>l(...oi(h,d),p,!0)),u["SparseMatrix, Array"]=e.referToSelf(p=>(d,h)=>l(...oi(r(h),d),p,!0))));var c=a.scalar||"any",f=a.Ds||a.Ss;f&&(s?(u["DenseMatrix,"+c]=(p,d)=>n(p,d,s,!1),u[c+", DenseMatrix"]=(p,d)=>n(d,p,s,!0),u["Array,"+c]=(p,d)=>n(r(p),d,s,!1).valueOf(),u[c+", Array"]=(p,d)=>n(r(d),p,s,!0).valueOf()):(u["DenseMatrix,"+c]=e.referToSelf(p=>(d,h)=>n(d,h,p,!1)),u[c+", DenseMatrix"]=e.referToSelf(p=>(d,h)=>n(h,d,p,!0)),u["Array,"+c]=e.referToSelf(p=>(d,h)=>n(r(d),h,p,!1).valueOf()),u[c+", Array"]=e.referToSelf(p=>(d,h)=>n(r(h),d,p,!0).valueOf())));var m=a.sS!==void 0?a.sS:a.Ss;return s?(a.Ss&&(u["SparseMatrix,"+c]=(p,d)=>a.Ss(p,d,s,!1)),m&&(u[c+", SparseMatrix"]=(p,d)=>m(d,p,s,!0))):(a.Ss&&(u["SparseMatrix,"+c]=e.referToSelf(p=>(d,h)=>a.Ss(d,h,p,!1))),m&&(u[c+", SparseMatrix"]=e.referToSelf(p=>(d,h)=>m(h,d,p,!0)))),s&&s.signatures&&Rv(u,s.signatures),u}});var xP="mod",Ere=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix","concat"],hy=N(xP,Ere,t=>{var{typed:e,config:r,round:i,matrix:n,equalScalar:o,zeros:a,DenseMatrix:s,concat:l}=t,u=dy({typed:e,config:r,round:i,matrix:n,equalScalar:o,zeros:a,DenseMatrix:s}),c=Tn({typed:e,equalScalar:o}),f=Vr({typed:e}),m=$u({typed:e,equalScalar:o}),p=Er({typed:e,equalScalar:o}),d=mr({typed:e,DenseMatrix:s}),h=Bt({typed:e,matrix:n,concat:l});return e(xP,{"number, number":v,"BigNumber, BigNumber":function(S,b){return b.isZero()?S:S.sub(b.mul(u(S.div(b))))},"bigint, bigint":function(S,b){if(b===0n)return S;if(S<0){var _=S%b;return _===0n?_:_+b}return S%b},"Fraction, Fraction":function(S,b){return b.equals(0)?S:S.sub(b.mul(u(S.div(b))))}},h({SS:m,DS:f,SD:c,Ss:p,sS:d}));function v(y,S){return S===0?y:y-S*u(y/S)}});var Are="matAlgo01xDSid",Tre=["typed"],Ii=N(Are,Tre,t=>{var{typed:e}=t;return function(i,n,o,a){var s=i._data,l=i._size,u=i._datatype||i.getDataType(),c=n._values,f=n._index,m=n._ptr,p=n._size,d=n._datatype||n._data===void 0?n._datatype:n.getDataType();if(l.length!==p.length)throw new $t(l.length,p.length);if(l[0]!==p[0]||l[1]!==p[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+p+")");if(!c)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var h=l[0],v=l[1],y=typeof u=="string"&&u!=="mixed"&&u===d?u:void 0,S=y?e.find(o,[y,y]):o,b,_,w=[];for(b=0;b{var{typed:e,equalScalar:r}=t;return function(n,o,a){var s=n._values,l=n._index,u=n._ptr,c=n._size,f=n._datatype||n._data===void 0?n._datatype:n.getDataType(),m=o._values,p=o._index,d=o._ptr,h=o._size,v=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(c.length!==h.length)throw new $t(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");var y=c[0],S=c[1],b,_=r,w=0,x=a;typeof f=="string"&&f===v&&f!=="mixed"&&(b=f,_=e.find(r,[b,b]),w=e.convert(0,b),x=e.find(a,[b,b]));var E=s&&m?[]:void 0,T=[],D=[],M=s&&m?[]:void 0,C=s&&m?[]:void 0,$=[],O=[],R,L,k,V,J;for(L=0;L{var{typed:e,DenseMatrix:r}=t;return function(n,o,a,s){var l=n._values,u=n._index,c=n._ptr,f=n._size,m=n._datatype;if(!l)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var p=f[0],d=f[1],h,v=a;typeof m=="string"&&(h=m,o=e.convert(o,h),v=e.find(a,[h,h]));for(var y=[],S=[],b=[],_=0;_Array.isArray(e))}var SP=N(_P,Ire,t=>{var{typed:e,matrix:r,config:i,round:n,equalScalar:o,zeros:a,BigNumber:s,DenseMatrix:l,concat:u}=t,c=hy({typed:e,config:i,round:n,matrix:r,equalScalar:o,zeros:a,DenseMatrix:l,concat:u}),f=Ii({typed:e}),m=Xc({typed:e,equalScalar:o}),p=mo({typed:e,DenseMatrix:l}),d=Bt({typed:e,matrix:r,concat:u});return e(_P,{"number, number":h,"BigNumber, BigNumber":v,"Fraction, Fraction":(y,S)=>y.gcd(S)},d({SS:m,DS:f,Ss:p}),{[Fre]:e.referToSelf(y=>(S,b,_)=>{for(var w=y(S,b),x=0;x<_.length;x++)w=y(w,_[x]);return w}),Array:e.referToSelf(y=>S=>{if(S.length===1&&Array.isArray(S[0])&&wP(S[0]))return y(...S[0]);if(wP(S))return y(...S);throw new Bo("gcd() supports only 1d matrices!")}),Matrix:e.referToSelf(y=>S=>y(S.toArray()))});function h(y,S){if(!Ge(y)||!Ge(S))throw new Error("Parameters in function gcd must be integer numbers");for(var b;S!==0;)b=c(y,S),y=S,S=b;return y<0?-y:y}function v(y,S){if(!y.isInt()||!S.isInt())throw new Error("Parameters in function gcd must be integer numbers");for(var b=new s(0);!S.isZero();){var _=c(y,S);y=S,S=_}return y.lt(b)?y.neg():y}});var kre="matAlgo06xS0S0",Pre=["typed","equalScalar"],Iu=N(kre,Pre,t=>{var{typed:e,equalScalar:r}=t;return function(n,o,a){var s=n._values,l=n._size,u=n._datatype||n._data===void 0?n._datatype:n.getDataType(),c=o._values,f=o._size,m=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(l.length!==f.length)throw new $t(l.length,f.length);if(l[0]!==f[0]||l[1]!==f[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+f+")");var p=l[0],d=l[1],h,v=r,y=0,S=a;typeof u=="string"&&u===m&&u!=="mixed"&&(h=u,v=e.find(r,[h,h]),y=e.convert(0,h),S=e.find(a,[h,h]));for(var b=s&&c?[]:void 0,_=[],w=[],x=b?[]:void 0,E=[],T=[],D=0;D{var{typed:e,matrix:r,equalScalar:i,concat:n}=t,o=Tn({typed:e,equalScalar:i}),a=Iu({typed:e,equalScalar:i}),s=Er({typed:e,equalScalar:i}),l=Bt({typed:e,matrix:r,concat:n}),u="number | BigNumber | Fraction | Matrix | Array",c={};return c["".concat(u,", ").concat(u,", ...").concat(u)]=e.referToSelf(m=>(p,d,h)=>{for(var v=m(p,d),y=0;ym.lcm(p)},l({SS:a,DS:o,Ss:s}),c);function f(m,p){if(!m.isInt()||!p.isInt())throw new Error("Parameters in function lcm must be integer numbers");if(m.isZero())return m;if(p.isZero())return p;for(var d=m.times(p);!p.isZero();){var h=p;p=m.mod(h),m=h}return d.div(m).abs()}});function Kc(t,e,r,i){return function(n){if(n>0||r.predictable){if(n<=0)return NaN;var o=n.toString(16),a=o.substring(0,15);return t*(o.length-a.length)+e(+("0x"+a))}return i(n.toNumber())}}var AP="log10",Ore=["typed","config","Complex"],Rre=nm(16),TP=N(AP,Ore,t=>{var{typed:e,config:r,Complex:i}=t;function n(a){return a.log().div(Math.LN10)}function o(a){return n(new i(a,0))}return e(AP,{number:function(s){return s>=0||r.predictable?nm(s):o(s)},bigint:Kc(Rre,nm,r,o),Complex:n,BigNumber:function(s){return!s.isNegative()||r.predictable?s.log():o(s.toNumber())},"Array | Matrix":e.referToSelf(a=>s=>it(s,a))})});var NP="log2",Lre=["typed","config","Complex"],MP=N(NP,Lre,t=>{var{typed:e,config:r,Complex:i}=t;function n(a){return o(new i(a,0))}return e(NP,{number:function(s){return s>=0||r.predictable?sy(s):n(s)},bigint:Kc(4,sy,r,n),Complex:o,BigNumber:function(s){return!s.isNegative()||r.predictable?s.log(2):n(s.toNumber())},"Array | Matrix":e.referToSelf(a=>s=>it(s,a))});function o(a){var s=Math.sqrt(a.re*a.re+a.im*a.im);return new i(Math.log2?Math.log2(s):Math.log(s)/Math.LN2,Math.atan2(a.im,a.re)/Math.LN2)}});var Ure="multiplyScalar",zre=["typed"],CP=N(Ure,zre,t=>{var{typed:e}=t;return e("multiplyScalar",{"number, number":WD,"Complex, Complex":function(i,n){return i.mul(n)},"BigNumber, BigNumber":function(i,n){return i.times(n)},"bigint, bigint":function(i,n){return i*n},"Fraction, Fraction":function(i,n){return i.mul(n)},"number | Fraction | BigNumber | Complex, Unit":(r,i)=>i.multiply(r),"Unit, number | Fraction | BigNumber | Complex | Unit":(r,i)=>r.multiply(i)})});var $P="multiply",Vre=["typed","matrix","addScalar","multiplyScalar","equalScalar","dot"],IP=N($P,Vre,t=>{var{typed:e,matrix:r,addScalar:i,multiplyScalar:n,equalScalar:o,dot:a}=t,s=Er({typed:e,equalScalar:o}),l=An({typed:e});function u(w,x){switch(w.length){case 1:switch(x.length){case 1:if(w[0]!==x[0])throw new RangeError("Dimension mismatch in multiplication. Vectors must have the same length");break;case 2:if(w[0]!==x[0])throw new RangeError("Dimension mismatch in multiplication. Vector length ("+w[0]+") must match Matrix rows ("+x[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+x.length+" dimensions)")}break;case 2:switch(x.length){case 1:if(w[1]!==x[0])throw new RangeError("Dimension mismatch in multiplication. Matrix columns ("+w[1]+") must match Vector length ("+x[0]+")");break;case 2:if(w[1]!==x[0])throw new RangeError("Dimension mismatch in multiplication. Matrix A columns ("+w[1]+") must match Matrix B rows ("+x[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+x.length+" dimensions)")}break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix A has "+w.length+" dimensions)")}}function c(w,x,E){if(E===0)throw new Error("Cannot multiply two empty vectors");return a(w,x)}function f(w,x){if(x.storage()!=="dense")throw new Error("Support for SparseMatrix not implemented");return m(w,x)}function m(w,x){var E=w._data,T=w._size,D=w._datatype||w.getDataType(),M=x._data,C=x._size,$=x._datatype||x.getDataType(),O=T[0],R=C[1],L,k=i,V=n;D&&$&&D===$&&typeof D=="string"&&D!=="mixed"&&(L=D,k=e.find(i,[L,L]),V=e.find(n,[L,L]));for(var J=[],W=0;Wbe)for(var K=0,re=0;re(x,E)=>{u(vt(x),vt(E));var T=w(r(x),r(E));return Je(T)?T.valueOf():T}),"Matrix, Matrix":function(x,E){var T=x.size(),D=E.size();return u(T,D),T.length===1?D.length===1?c(x,E,T[0]):f(x,E):D.length===1?p(x,E):d(x,E)},"Matrix, Array":e.referTo("Matrix,Matrix",w=>(x,E)=>w(x,r(E))),"Array, Matrix":e.referToSelf(w=>(x,E)=>w(r(x,E.storage()),E)),"SparseMatrix, any":function(x,E){return s(x,E,n,!1)},"DenseMatrix, any":function(x,E){return l(x,E,n,!1)},"any, SparseMatrix":function(x,E){return s(E,x,n,!0)},"any, DenseMatrix":function(x,E){return l(E,x,n,!0)},"Array, any":function(x,E){return l(r(x),E,n,!1).valueOf()},"any, Array":function(x,E){return l(r(E),x,n,!0).valueOf()},"any, any":n,"any, any, ...any":e.referToSelf(w=>(x,E,T)=>{for(var D=w(x,E),M=0;M{var{typed:e,matrix:r,equalScalar:i,BigNumber:n,concat:o}=t,a=Ii({typed:e}),s=Tn({typed:e,equalScalar:i}),l=Iu({typed:e,equalScalar:i}),u=Er({typed:e,equalScalar:i}),c=Bt({typed:e,matrix:r,concat:o});function f(){throw new Error("Complex number not supported in function nthRoot. Use nthRoots instead.")}return e(FP,{number:tE,"number, number":tE,BigNumber:p=>m(p,new n(2)),"BigNumber, BigNumber":m,Complex:f,"Complex, number":f,Array:e.referTo("DenseMatrix,number",p=>d=>p(r(d),2).valueOf()),DenseMatrix:e.referTo("DenseMatrix,number",p=>d=>p(d,2)),SparseMatrix:e.referTo("SparseMatrix,number",p=>d=>p(d,2)),"SparseMatrix, SparseMatrix":e.referToSelf(p=>(d,h)=>{if(h.density()===1)return l(d,h,p);throw new Error("Root must be non-zero")}),"DenseMatrix, SparseMatrix":e.referToSelf(p=>(d,h)=>{if(h.density()===1)return a(d,h,p,!1);throw new Error("Root must be non-zero")}),"Array, SparseMatrix":e.referTo("DenseMatrix,SparseMatrix",p=>(d,h)=>p(r(d),h)),"number | BigNumber, SparseMatrix":e.referToSelf(p=>(d,h)=>{if(h.density()===1)return u(h,d,p,!0);throw new Error("Root must be non-zero")})},c({scalar:"number | BigNumber",SD:s,Ss:u,sS:!1}));function m(p,d){var h=n.precision,v=n.clone({precision:h+2}),y=new n(0),S=new v(1),b=d.isNegative();if(b&&(d=d.neg()),d.isZero())throw new Error("Root must be non-zero");if(p.isNegative()&&!d.abs().mod(2).equals(1))throw new Error("Root must be odd when a is negative.");if(p.isZero())return b?new v(1/0):0;if(!p.isFinite())return b?y:p;var _=p.abs().pow(S.div(d));return _=p.isNeg()?_.neg():_,new n((b?S.div(_):_).toPrecision(h))}});var PP="sign",jre=["typed","BigNumber","Fraction","complex"],BP=N(PP,jre,t=>{var{typed:e,BigNumber:r,complex:i,Fraction:n}=t;return e(PP,{number:uy,Complex:function(a){return a.im===0?i(uy(a.re)):a.sign()},BigNumber:function(a){return new r(a.cmp(0))},bigint:function(a){return a>0n?1n:a<0n?-1n:0n},Fraction:function(a){return a.n===0n?new n(0):new n(a.s)},"Array | Matrix":e.referToSelf(o=>a=>it(a,o,!0)),Unit:e.referToSelf(o=>a=>{if(!a._isDerived()&&a.units[0].unit.offset!==0)throw new TypeError("sign is ambiguous for units with offset");return e.find(o,a.valueType())(a.value)})})});var Zre="sqrt",Gre=["config","typed","Complex"],OP=N(Zre,Gre,t=>{var{config:e,typed:r,Complex:i}=t;return r("sqrt",{number:n,Complex:function(a){return a.sqrt()},BigNumber:function(a){return!a.isNegative()||e.predictable?a.sqrt():n(a.toNumber())},Unit:function(a){return a.pow(.5)}});function n(o){return isNaN(o)?NaN:o>=0||e.predictable?Math.sqrt(o):new i(o,0).sqrt()}});var RP="square",Wre=["typed"],LP=N(RP,Wre,t=>{var{typed:e}=t;return e(RP,{number:rE,Complex:function(i){return i.mul(i)},BigNumber:function(i){return i.times(i)},bigint:function(i){return i*i},Fraction:function(i){return i.mul(i)},Unit:function(i){return i.pow(2)}})});var UP="subtract",Hre=["typed","matrix","equalScalar","subtractScalar","unaryMinus","DenseMatrix","concat"],zP=N(UP,Hre,t=>{var{typed:e,matrix:r,equalScalar:i,subtractScalar:n,unaryMinus:o,DenseMatrix:a,concat:s}=t,l=Ii({typed:e}),u=Vr({typed:e}),c=$u({typed:e,equalScalar:i}),f=mo({typed:e,DenseMatrix:a}),m=mr({typed:e,DenseMatrix:a}),p=Bt({typed:e,matrix:r,concat:s});return e(UP,{"any, any":n},p({elop:n,SS:c,DS:l,SD:u,Ss:m,sS:f}))});var VP="xgcd",Yre=["typed","config","matrix","BigNumber"],qP=N(VP,Yre,t=>{var{typed:e,config:r,matrix:i,BigNumber:n}=t;return e(VP,{"number, number":function(s,l){var u=nE(s,l);return r.matrix==="Array"?u:i(u)},"BigNumber, BigNumber":o});function o(a,s){var l,u,c,f=new n(0),m=new n(1),p=f,d=m,h=m,v=f;if(!a.isInt()||!s.isInt())throw new Error("Parameters in function xgcd must be integer numbers");for(;!s.isZero();)u=a.div(s).floor(),c=a.mod(s),l=p,p=d.minus(u.times(p)),d=l,l=h,h=v.minus(u.times(h)),v=l,a=s,s=c;var y;return a.lt(f)?y=[a.neg(),d.neg(),v.neg()]:y=[a,a.isZero()?0:d,v],r.matrix==="Array"?y:i(y)}});var jP="invmod",Jre=["typed","config","BigNumber","xgcd","equal","smaller","mod","add","isInteger"],ZP=N(jP,Jre,t=>{var{typed:e,config:r,BigNumber:i,xgcd:n,equal:o,smaller:a,mod:s,add:l,isInteger:u}=t;return e(jP,{"number, number":c,"BigNumber, BigNumber":c});function c(f,m){if(!u(f)||!u(m))throw new Error("Parameters in function invmod must be integer numbers");if(f=s(f,m),o(m,0))throw new Error("Divisor must be non zero");var p=n(f,m);p=p.valueOf();var[d,h]=p;return o(d,i(1))?(h=s(h,m),a(h,i(0))&&(h=l(h,m)),h):NaN}});var Xre="matAlgo09xS0Sf",Kre=["typed","equalScalar"],gy=N(Xre,Kre,t=>{var{typed:e,equalScalar:r}=t;return function(n,o,a){var s=n._values,l=n._index,u=n._ptr,c=n._size,f=n._datatype||n._data===void 0?n._datatype:n.getDataType(),m=o._values,p=o._index,d=o._ptr,h=o._size,v=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(c.length!==h.length)throw new $t(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");var y=c[0],S=c[1],b,_=r,w=0,x=a;typeof f=="string"&&f===v&&f!=="mixed"&&(b=f,_=e.find(r,[b,b]),w=e.convert(0,b),x=e.find(a,[b,b]));var E=s&&m?[]:void 0,T=[],D=[],M=E?[]:void 0,C=[],$,O,R,L,k;for(O=0;O{var{typed:e,matrix:r,equalScalar:i,multiplyScalar:n,concat:o}=t,a=Tn({typed:e,equalScalar:i}),s=gy({typed:e,equalScalar:i}),l=Er({typed:e,equalScalar:i}),u=Bt({typed:e,matrix:r,concat:o});return e(GP,u({elop:n,SS:s,DS:a,Ss:l}))});function HP(t,e){if(t.isFinite()&&!t.isInteger()||e.isFinite()&&!e.isInteger())throw new Error("Integers expected in function bitAnd");var r=t.constructor;if(t.isNaN()||e.isNaN())return new r(NaN);if(t.isZero()||e.eq(-1)||t.eq(e))return t;if(e.isZero()||t.eq(-1))return e;if(!t.isFinite()||!e.isFinite()){if(!t.isFinite()&&!e.isFinite())return t.isNegative()===e.isNegative()?t:new r(0);if(!t.isFinite())return e.isNegative()?t:t.isNegative()?new r(0):e;if(!e.isFinite())return t.isNegative()?e:e.isNegative()?new r(0):t}return UE(t,e,function(i,n){return i&n})}function Qc(t){if(t.isFinite()&&!t.isInteger())throw new Error("Integer expected in function bitNot");var e=t.constructor,r=e.precision;e.config({precision:1e9});var i=t.plus(new e(1));return i.s=-i.s||null,e.config({precision:r}),i}function YP(t,e){if(t.isFinite()&&!t.isInteger()||e.isFinite()&&!e.isInteger())throw new Error("Integers expected in function bitOr");var r=t.constructor;if(t.isNaN()||e.isNaN())return new r(NaN);var i=new r(-1);return t.isZero()||e.eq(i)||t.eq(e)?e:e.isZero()||t.eq(i)?t:!t.isFinite()||!e.isFinite()?!t.isFinite()&&!t.isNegative()&&e.isNegative()||t.isNegative()&&!e.isNegative()&&!e.isFinite()?i:t.isNegative()&&e.isNegative()?t.isFinite()?t:e:t.isFinite()?e:t:UE(t,e,function(n,o){return n|o})}function UE(t,e,r){var i=t.constructor,n,o,a=+(t.s<0),s=+(e.s<0);if(a){n=vy(Qc(t));for(var l=0;l0;)r(c[--p],f[--d])===h&&(v=v.plus(y)),y=y.times(S);for(;d>0;)r(m,f[--d])===h&&(v=v.plus(y)),y=y.times(S);return i.config({precision:b}),h===0&&(v.s=-v.s),v}function vy(t){for(var e=t.d,r=e[0]+"",i=1;i0)if(++s>u)for(s-=u;s--;)l+="0";else s1&&((c[p+1]===null||c[p+1]===void 0)&&(c[p+1]=0),c[p+1]+=c[p]>>1,c[p]&=1)}return c.reverse()}function JP(t,e){if(t.isFinite()&&!t.isInteger()||e.isFinite()&&!e.isInteger())throw new Error("Integers expected in function bitXor");var r=t.constructor;if(t.isNaN()||e.isNaN())return new r(NaN);if(t.isZero())return e;if(e.isZero())return t;if(t.eq(e))return new r(0);var i=new r(-1);return t.eq(i)?Qc(e):e.eq(i)?Qc(t):!t.isFinite()||!e.isFinite()?!t.isFinite()&&!e.isFinite()?i:new r(t.isNegative()===e.isNegative()?1/0:-1/0):UE(t,e,function(n,o){return n^o})}function XP(t,e){if(t.isFinite()&&!t.isInteger()||e.isFinite()&&!e.isInteger())throw new Error("Integers expected in function leftShift");var r=t.constructor;return t.isNaN()||e.isNaN()||e.isNegative()&&!e.isZero()?new r(NaN):t.isZero()||e.isZero()?t:!t.isFinite()&&!e.isFinite()?new r(NaN):e.lt(55)?t.times(Math.pow(2,e.toNumber())+""):t.times(new r(2).pow(e))}function KP(t,e){if(t.isFinite()&&!t.isInteger()||e.isFinite()&&!e.isInteger())throw new Error("Integers expected in function rightArithShift");var r=t.constructor;return t.isNaN()||e.isNaN()||e.isNegative()&&!e.isZero()?new r(NaN):t.isZero()||e.isZero()?t:e.isFinite()?e.lt(55)?t.div(Math.pow(2,e.toNumber())+"").floor():t.div(new r(2).pow(e)).floor():t.isNegative()?new r(-1):t.isFinite()?new r(0):new r(NaN)}var QP="bitAnd",ene=["typed","matrix","equalScalar","concat"],yy=N(QP,ene,t=>{var{typed:e,matrix:r,equalScalar:i,concat:n}=t,o=Tn({typed:e,equalScalar:i}),a=Iu({typed:e,equalScalar:i}),s=Er({typed:e,equalScalar:i}),l=Bt({typed:e,matrix:r,concat:n});return e(QP,{"number, number":oE,"BigNumber, BigNumber":HP,"bigint, bigint":(u,c)=>u&c},l({SS:a,DS:o,Ss:s}))});var e2="bitNot",tne=["typed"],t2=N(e2,tne,t=>{var{typed:e}=t;return e(e2,{number:aE,BigNumber:Qc,bigint:r=>~r,"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var r2="bitOr",rne=["typed","matrix","equalScalar","DenseMatrix","concat"],by=N(r2,rne,t=>{var{typed:e,matrix:r,equalScalar:i,DenseMatrix:n,concat:o}=t,a=Ii({typed:e}),s=Xc({typed:e,equalScalar:i}),l=mo({typed:e,DenseMatrix:n}),u=Bt({typed:e,matrix:r,concat:o});return e(r2,{"number, number":sE,"BigNumber, BigNumber":YP,"bigint, bigint":(c,f)=>c|f},u({SS:s,DS:a,Ss:l}))});var nne="matAlgo07xSSf",ine=["typed","SparseMatrix"],Ln=N(nne,ine,t=>{var{typed:e,SparseMatrix:r}=t;return function(o,a,s){var l=o._size,u=o._datatype||o._data===void 0?o._datatype:o.getDataType(),c=a._size,f=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(l.length!==c.length)throw new $t(l.length,c.length);if(l[0]!==c[0]||l[1]!==c[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+c+")");var m=l[0],p=l[1],d,h=0,v=s;typeof u=="string"&&u===f&&u!=="mixed"&&(d=u,h=e.convert(0,d),v=e.find(s,[d,d]));for(var y=[],S=[],b=new Array(p+1).fill(0),_=[],w=[],x=[],E=[],T=0;T{var{typed:e,matrix:r,DenseMatrix:i,concat:n,SparseMatrix:o}=t,a=Vr({typed:e}),s=Ln({typed:e,SparseMatrix:o}),l=mr({typed:e,DenseMatrix:i}),u=Bt({typed:e,matrix:r,concat:n});return e(n2,{"number, number":uE,"BigNumber, BigNumber":JP,"bigint, bigint":(c,f)=>c^f},u({SS:s,DS:a,Ss:l}))});var o2="arg",ane=["typed"],a2=N(o2,ane,t=>{var{typed:e}=t;return e(o2,{number:function(i){return Math.atan2(0,i)},BigNumber:function(i){return i.constructor.atan2(0,i)},Complex:function(i){return i.arg()},"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var s2="conj",sne=["typed"],u2=N(s2,sne,t=>{var{typed:e}=t;return e(s2,{"number | BigNumber | Fraction":r=>r,Complex:r=>r.conjugate(),Unit:e.referToSelf(r=>i=>new i.constructor(r(i.toNumeric()),i.formatUnits())),"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var l2="im",une=["typed"],c2=N(l2,une,t=>{var{typed:e}=t;return e(l2,{number:()=>0,"BigNumber | Fraction":r=>r.mul(0),Complex:r=>r.im,"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var f2="re",lne=["typed"],p2=N(f2,lne,t=>{var{typed:e}=t;return e(f2,{"number | BigNumber | Fraction":r=>r,Complex:r=>r.re,"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var m2="not",cne=["typed"],d2=N(m2,cne,t=>{var{typed:e}=t;return e(m2,{"null | undefined":()=>!0,number:dE,Complex:function(i){return i.re===0&&i.im===0},BigNumber:function(i){return i.isZero()||i.isNaN()},bigint:r=>!r,Unit:e.referToSelf(r=>i=>e.find(r,i.valueType())(i.value)),"Array | Matrix":e.referToSelf(r=>i=>it(i,r))})});var h2="or",fne=["typed","matrix","equalScalar","DenseMatrix","concat"],xy=N(h2,fne,t=>{var{typed:e,matrix:r,equalScalar:i,DenseMatrix:n,concat:o}=t,a=Vr({typed:e}),s=$u({typed:e,equalScalar:i}),l=mr({typed:e,DenseMatrix:n}),u=Bt({typed:e,matrix:r,concat:o});return e(h2,{"number, number":ly,"Complex, Complex":function(f,m){return f.re!==0||f.im!==0||m.re!==0||m.im!==0},"BigNumber, BigNumber":function(f,m){return!f.isZero()&&!f.isNaN()||!m.isZero()&&!m.isNaN()},"bigint, bigint":ly,"Unit, Unit":e.referToSelf(c=>(f,m)=>c(f.value||0,m.value||0))},u({SS:s,DS:a,Ss:l}))});var g2="xor",pne=["typed","matrix","DenseMatrix","concat","SparseMatrix"],v2=N(g2,pne,t=>{var{typed:e,matrix:r,DenseMatrix:i,concat:n,SparseMatrix:o}=t,a=Vr({typed:e}),s=Ln({typed:e,SparseMatrix:o}),l=mr({typed:e,DenseMatrix:i}),u=Bt({typed:e,matrix:r,concat:n});return e(g2,{"number, number":cy,"Complex, Complex":function(f,m){return(f.re!==0||f.im!==0)!=(m.re!==0||m.im!==0)},"bigint, bigint":cy,"BigNumber, BigNumber":function(f,m){return(!f.isZero()&&!f.isNaN())!=(!m.isZero()&&!m.isNaN())},"Unit, Unit":e.referToSelf(c=>(f,m)=>c(f.value||0,m.value||0))},u({SS:s,DS:a,Ss:l}))});var y2="concat",mne=["typed","matrix","isInteger"],_y=N(y2,mne,t=>{var{typed:e,matrix:r,isInteger:i}=t;return e(y2,{"...Array | Matrix | number | BigNumber":function(o){var a,s=o.length,l=-1,u,c=!1,f=[];for(a=0;a0&&l>u)throw new ii(l,u+1)}else{var p=dt(m).valueOf(),d=vt(p);if(f[a]=p,u=l,l=d.length-1,a>0&&l!==u)throw new $t(u+1,l+1)}}if(f.length===0)throw new SyntaxError("At least one matrix expected");for(var h=f.shift();f.length;)h=zD(h,f.shift(),l);return c?r(h):h},"...string":function(o){return o.join("")}})});var b2="column",dne=["typed","Index","matrix","range"],wy=N(b2,dne,t=>{var{typed:e,Index:r,matrix:i,range:n}=t;return e(b2,{"Matrix, number":o,"Array, number":function(s,l){return o(i(dt(s)),l).valueOf()}});function o(a,s){if(a.size().length!==2)throw new Error("Only two dimensional matrix is supported");Mr(s,a.size()[1]);var l=n(0,a.size()[0]),u=new r(l,s),c=a.subset(u);return Je(c)?c:i([[c]])}});var x2="count",hne=["typed","size","prod"],_2=N(x2,hne,t=>{var{typed:e,size:r,prod:i}=t;return e(x2,{string:function(o){return o.length},"Matrix | Array":function(o){return i(r(o))}})});var w2="cross",gne=["typed","matrix","subtract","multiply"],S2=N(w2,gne,t=>{var{typed:e,matrix:r,subtract:i,multiply:n}=t;return e(w2,{"Matrix, Matrix":function(s,l){return r(o(s.toArray(),l.toArray()))},"Matrix, Array":function(s,l){return r(o(s.toArray(),l))},"Array, Matrix":function(s,l){return r(o(s,l.toArray()))},"Array, Array":o});function o(a,s){var l=Math.max(vt(a).length,vt(s).length);a=Zc(a),s=Zc(s);var u=vt(a),c=vt(s);if(u.length!==1||c.length!==1||u[0]!==3||c[0]!==3)throw new RangeError("Vectors with length 3 expected (Size A = ["+u.join(", ")+"], B = ["+c.join(", ")+"])");var f=[i(n(a[1],s[2]),n(a[2],s[1])),i(n(a[2],s[0]),n(a[0],s[2])),i(n(a[0],s[1]),n(a[1],s[0]))];return l>1?[f]:f}});var D2="diag",vne=["typed","matrix","DenseMatrix","SparseMatrix"],E2=N(D2,vne,t=>{var{typed:e,matrix:r,DenseMatrix:i,SparseMatrix:n}=t;return e(D2,{Array:function(u){return o(u,0,vt(u),null)},"Array, number":function(u,c){return o(u,c,vt(u),null)},"Array, BigNumber":function(u,c){return o(u,c.toNumber(),vt(u),null)},"Array, string":function(u,c){return o(u,0,vt(u),c)},"Array, number, string":function(u,c,f){return o(u,c,vt(u),f)},"Array, BigNumber, string":function(u,c,f){return o(u,c.toNumber(),vt(u),f)},Matrix:function(u){return o(u,0,u.size(),u.storage())},"Matrix, number":function(u,c){return o(u,c,u.size(),u.storage())},"Matrix, BigNumber":function(u,c){return o(u,c.toNumber(),u.size(),u.storage())},"Matrix, string":function(u,c){return o(u,0,u.size(),c)},"Matrix, number, string":function(u,c,f){return o(u,c,u.size(),f)},"Matrix, BigNumber, string":function(u,c,f){return o(u,c.toNumber(),u.size(),f)}});function o(l,u,c,f){if(!Ge(u))throw new TypeError("Second parameter in function diag must be an integer");var m=u>0?u:0,p=u<0?-u:0;switch(c.length){case 1:return a(l,u,f,c[0],p,m);case 2:return s(l,u,f,c,p,m)}throw new RangeError("Matrix for function diag must be 2 dimensional")}function a(l,u,c,f,m,p){var d=[f+m,f+p];if(c&&c!=="sparse"&&c!=="dense")throw new TypeError("Unknown matrix type ".concat(c,'"'));var h=c==="sparse"?n.diagonal(d,l,u):i.diagonal(d,l,u);return c!==null?h:h.valueOf()}function s(l,u,c,f,m,p){if(Je(l)){var d=l.diagonal(u);return c!==null?c!==d.storage()?r(d,c):d:d.valueOf()}for(var h=Math.min(f[0]-m,f[1]-p),v=[],y=0;y{var{typed:e}=t;return e("filter",{"Array, function":A2,"Matrix, function":function(i,n){return i.create(A2(i.valueOf(),n),i.datatype())},"Array, RegExp":LD,"Matrix, RegExp":function(i,n){return i.create(LD(i.valueOf(),n),i.datatype())}})});function A2(t,e){var r=oa(e,t,"filter");return r.isUnary?RD(t,r.fn):RD(t,function(i,n,o){return r.fn(i,[n],o)})}var T2="flatten",xne=["typed"],N2=N(T2,xne,t=>{var{typed:e}=t;return e(T2,{Array:function(i){return Ut(i)},Matrix:function(i){return i.create(Ut(i.valueOf(),!0),i.datatype())}})});var zE="forEach",_ne=["typed"],Dy=N(zE,_ne,t=>{var{typed:e}=t;return e(zE,{"Array, function":wne,"Matrix, function":function(i,n){i.forEach(n)}})});function wne(t,e){var r=oa(e,t,zE);iy(t,r.fn,r.isUnary)}var M2="getMatrixDataType",Sne=["typed"],C2=N(M2,Sne,t=>{var{typed:e}=t;return e(M2,{Array:function(i){return wl(i,ir)},Matrix:function(i){return i.getDataType()}})});var $2="identity",Dne=["typed","config","matrix","BigNumber","DenseMatrix","SparseMatrix"],I2=N($2,Dne,t=>{var{typed:e,config:r,matrix:i,BigNumber:n,DenseMatrix:o,SparseMatrix:a}=t;return e($2,{"":function(){return r.matrix==="Matrix"?i([]):[]},string:function(c){return i(c)},"number | BigNumber":function(c){return l(c,c,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, string":function(c,f){return l(c,c,f)},"number | BigNumber, number | BigNumber":function(c,f){return l(c,f,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, number | BigNumber, string":function(c,f,m){return l(c,f,m)},Array:function(c){return s(c)},"Array, string":function(c,f){return s(c,f)},Matrix:function(c){return s(c.valueOf(),c.storage())},"Matrix, string":function(c,f){return s(c.valueOf(),f)}});function s(u,c){switch(u.length){case 0:return c?i(c):[];case 1:return l(u[0],u[0],c);case 2:return l(u[0],u[1],c);default:throw new Error("Vector containing two values expected")}}function l(u,c,f){var m=mt(u)||mt(c)?n:null;if(mt(u)&&(u=u.toNumber()),mt(c)&&(c=c.toNumber()),!Ge(u)||u<1)throw new Error("Parameters in function identity must be positive integers");if(!Ge(c)||c<1)throw new Error("Parameters in function identity must be positive integers");var p=m?new n(1):1,d=m?new m(0):0,h=[u,c];if(f){if(f==="sparse")return a.diagonal(h,p,0,d);if(f==="dense")return o.diagonal(h,p,0,d);throw new TypeError('Unknown matrix type "'.concat(f,'"'))}for(var v=Ta([],h,d),y=u{var{typed:e,matrix:r,multiplyScalar:i}=t;return e(F2,{"Matrix, Matrix":function(a,s){return r(n(a.toArray(),s.toArray()))},"Matrix, Array":function(a,s){return r(n(a.toArray(),s))},"Array, Matrix":function(a,s){return r(n(a,s.toArray()))},"Array, Array":n});function n(o,a){if(vt(o).length===1&&(o=[o]),vt(a).length===1&&(a=[a]),vt(o).length>2||vt(a).length>2)throw new RangeError("Vectors with dimensions greater then 2 are not supported expected (Size x = "+JSON.stringify(o.length)+", y = "+JSON.stringify(a.length)+")");var s=[],l=[];return o.map(function(u){return a.map(function(c){return l=[],s.push(l),u.map(function(f){return c.map(function(m){return l.push(i(f,m))})})})})&&s}});var VE="map",Ane=["typed"],Ey=N(VE,Ane,t=>{var{typed:e}=t;return e(VE,{"Array, function":i,"Matrix, function":function(o,a){return o.map(a)},"Array|Matrix, Array|Matrix, ...Array|Matrix|function":(n,o,a)=>r([n,o,...a.slice(0,a.length-1)],a[a.length-1])});function r(n,o){if(typeof o!="function")throw new Error("Last argument must be a callback function");var a=n[0].isMatrix,s=tm(...n.map(_=>_.isMatrix?_.size():vt(_))),l=a?(_,w)=>_.get(w):Wc,u=a?n.map(_=>_.isMatrix?_.create(ts(_.toArray(),s),_.datatype()):n[0].create(ts(_.valueOf(),s))):n.map(_=>_.isMatrix?ts(_.toArray(),s):ts(_,s)),c;if(e.isTypedFunction(o)){var f=s.map(()=>0),m=u.map(_=>l(_,f)),p=b(o,m,f,u);c=y(p)}else{var d=n.length,h=S(o,d);c=y(h)}var v=(_,w)=>c([_,...u.slice(1).map(x=>l(x,w))],w);if(a)return u[0].map(v);return i(u[0],v);function y(_){switch(_){case 0:return w=>o(...w);case 1:return(w,x)=>o(...w,x);case 2:return(w,x)=>o(...w,x,...u)}}function S(_,w){return _.length>w+1?2:_.length===w+1?1:0}function b(_,w,x,E){return e.resolve(_,[...w,x,...E])!==null?2:e.resolve(_,[...w,x])!==null?1:(e.resolve(_,w)!==null,0)}}function i(n,o){var a=oa(o,n,VE);return rm(n,a.fn,a.isUnary)}});var P2="diff",Tne=["typed","matrix","subtract","number"],Ay=N(P2,Tne,t=>{var{typed:e,matrix:r,subtract:i,number:n}=t;return e(P2,{"Array | Matrix":function(c){return Je(c)?r(a(c.toArray())):a(c)},"Array | Matrix, number":function(c,f){if(!Ge(f))throw new RangeError("Dimension must be a whole number");return Je(c)?r(o(c.toArray(),f)):o(c,f)},"Array, BigNumber":e.referTo("Array,number",u=>(c,f)=>u(c,n(f))),"Matrix, BigNumber":e.referTo("Matrix,number",u=>(c,f)=>u(c,n(f)))});function o(u,c){if(Je(u)&&(u=u.toArray()),!Array.isArray(u))throw RangeError("Array/Matrix does not have that many dimensions");if(c>0){var f=[];return u.forEach(m=>{f.push(o(m,c-1))}),f}else{if(c===0)return a(u);throw RangeError("Cannot have negative dimension")}}function a(u){for(var c=[],f=u.length,m=1;m{var{typed:e,config:r,matrix:i,BigNumber:n}=t;return e("ones",{"":function(){return r.matrix==="Array"?o([]):o([],"default")},"...number | BigNumber | string":function(u){var c=u[u.length-1];if(typeof c=="string"){var f=u.pop();return o(u,f)}else return r.matrix==="Array"?o(u):o(u,"default")},Array:o,Matrix:function(u){var c=u.storage();return o(u.valueOf(),c)},"Array | Matrix, string":function(u,c){return o(u.valueOf(),c)}});function o(l,u){var c=a(l),f=c?new n(1):1;if(s(l),u){var m=i(u);return l.length>0?m.resize(l,f):m}else{var p=[];return l.length>0?Ta(p,l,f):p}}function a(l){var u=!1;return l.forEach(function(c,f,m){mt(c)&&(u=!0,m[f]=c.toNumber())}),u}function s(l){l.forEach(function(u){if(typeof u!="number"||!Ge(u)||u<0)throw new Error("Parameters in function ones must be positive integers")})}});function ef(){throw new Error('No "bignumber" implementation available')}function Ty(){throw new Error('No "fraction" implementation available')}function Ny(){throw new Error('No "matrix" implementation available')}var O2="range",Cne=["typed","config","?matrix","?bignumber","smaller","smallerEq","larger","largerEq","add","isPositive"],My=N(O2,Cne,t=>{var{typed:e,config:r,matrix:i,bignumber:n,smaller:o,smallerEq:a,larger:s,largerEq:l,add:u,isPositive:c}=t;return e(O2,{string:m,"string, boolean":m,number:function(v){throw new TypeError("Too few arguments to function range(): ".concat(v))},boolean:function(v){throw new TypeError("Unexpected type of argument 1 to function range(): ".concat(v,", number|bigint|BigNumber|Fraction"))},"number, number":function(v,y){return f(p(v,y,1,!1))},"number, number, number":function(v,y,S){return f(p(v,y,S,!1))},"number, number, boolean":function(v,y,S){return f(p(v,y,1,S))},"number, number, number, boolean":function(v,y,S,b){return f(p(v,y,S,b))},"bigint, bigint|number":function(v,y){return f(p(v,y,1n,!1))},"number, bigint":function(v,y){return f(p(BigInt(v),y,1n,!1))},"bigint, bigint|number, bigint|number":function(v,y,S){return f(p(v,y,BigInt(S),!1))},"number, bigint, bigint|number":function(v,y,S){return f(p(BigInt(v),y,BigInt(S),!1))},"bigint, bigint|number, boolean":function(v,y,S){return f(p(v,y,1n,S))},"number, bigint, boolean":function(v,y,S){return f(p(BigInt(v),y,1n,S))},"bigint, bigint|number, bigint|number, boolean":function(v,y,S,b){return f(p(v,y,BigInt(S),b))},"number, bigint, bigint|number, boolean":function(v,y,S,b){return f(p(BigInt(v),y,BigInt(S),b))},"BigNumber, BigNumber":function(v,y){var S=v.constructor;return f(p(v,y,new S(1),!1))},"BigNumber, BigNumber, BigNumber":function(v,y,S){return f(p(v,y,S,!1))},"BigNumber, BigNumber, boolean":function(v,y,S){var b=v.constructor;return f(p(v,y,new b(1),S))},"BigNumber, BigNumber, BigNumber, boolean":function(v,y,S,b){return f(p(v,y,S,b))},"Fraction, Fraction":function(v,y){return f(p(v,y,1,!1))},"Fraction, Fraction, Fraction":function(v,y,S){return f(p(v,y,S,!1))},"Fraction, Fraction, boolean":function(v,y,S){return f(p(v,y,1,S))},"Fraction, Fraction, Fraction, boolean":function(v,y,S,b){return f(p(v,y,S,b))},"Unit, Unit, Unit":function(v,y,S){return f(p(v,y,S,!1))},"Unit, Unit, Unit, boolean":function(v,y,S,b){return f(p(v,y,S,b))}});function f(h){return r.matrix==="Matrix"?i?i(h):Ny():h}function m(h,v){var y=d(h);if(!y)throw new SyntaxError('String "'+h+'" is no valid range');return r.number==="BigNumber"?(n===void 0&&ef(),f(p(n(y.start),n(y.end),n(y.step)),v)):f(p(y.start,y.end,y.step,v))}function p(h,v,y,S){for(var b=[],_=c(y)?S?a:o:S?l:s,w=h;_(w,v);)b.push(w),w=u(w,y);return b}function d(h){var v=h.split(":"),y=v.map(function(b){return Number(b)}),S=y.some(function(b){return isNaN(b)});if(S)return null;switch(y.length){case 2:return{start:y[0],end:y[1],step:1};case 3:return{start:y[0],end:y[2],step:y[1]};default:return null}}});var R2="reshape",$ne=["typed","isInteger","matrix"],L2=N(R2,$ne,t=>{var{typed:e,isInteger:r}=t;return e(R2,{"Matrix, Array":function(n,o){return n.reshape(o,!0)},"Array, Array":function(n,o){return o.forEach(function(a){if(!r(a))throw new TypeError("Invalid size for dimension: "+a)}),Qp(n,o)}})});var Ine="resize",Fne=["config","matrix"],U2=N(Ine,Fne,t=>{var{config:e,matrix:r}=t;return function(o,a,s){if(arguments.length!==2&&arguments.length!==3)throw new Bo("resize",arguments.length,2,3);if(Je(a)&&(a=a.valueOf()),mt(a[0])&&(a=a.map(function(c){return mt(c)?c.toNumber():c})),Je(o))return o.resize(a,s,!0);if(typeof o=="string")return i(o,a,s);var l=Array.isArray(o)?!1:e.matrix!=="Array";if(a.length===0){for(;Array.isArray(o);)o=o[0];return dt(o)}else{Array.isArray(o)||(o=[o]),o=dt(o);var u=Ta(o,a,s);return l?r(u):u}};function i(n,o,a){if(a!==void 0){if(typeof a!="string"||a.length!==1)throw new TypeError("Single character expected as defaultValue")}else a=" ";if(o.length!==1)throw new $t(o.length,1);var s=o[0];if(typeof s!="number"||!Ge(s))throw new TypeError("Invalid size, must contain positive integers (size: "+Ct(o)+")");if(n.length>s)return n.substring(0,s);if(n.length{var{typed:e,multiply:r,rotationMatrix:i}=t;return e(z2,{"Array , number | BigNumber | Complex | Unit":function(a,s){n(a,2);var l=r(i(s),a);return l.toArray()},"Matrix , number | BigNumber | Complex | Unit":function(a,s){return n(a,2),r(i(s),a)},"Array, number | BigNumber | Complex | Unit, Array | Matrix":function(a,s,l){n(a,3);var u=r(i(s,l),a);return u},"Matrix, number | BigNumber | Complex | Unit, Array | Matrix":function(a,s,l){return n(a,3),r(i(s,l),a)}});function n(o,a){var s=Array.isArray(o)?vt(o):o.size();if(s.length>2)throw new RangeError("Vector must be of dimensions 1x".concat(a));if(s.length===2&&s[1]!==1)throw new RangeError("Vector must be of dimensions 1x".concat(a));if(s[0]!==a)throw new RangeError("Vector must be of dimensions 1x".concat(a))}});var q2="rotationMatrix",Pne=["typed","config","multiplyScalar","addScalar","unaryMinus","norm","matrix","BigNumber","DenseMatrix","SparseMatrix","cos","sin"],j2=N(q2,Pne,t=>{var{typed:e,config:r,multiplyScalar:i,addScalar:n,unaryMinus:o,norm:a,BigNumber:s,matrix:l,DenseMatrix:u,SparseMatrix:c,cos:f,sin:m}=t;return e(q2,{"":function(){return r.matrix==="Matrix"?l([]):[]},string:function(b){return l(b)},"number | BigNumber | Complex | Unit":function(b){return p(b,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber | Complex | Unit, string":function(b,_){return p(b,_)},"number | BigNumber | Complex | Unit, Array":function(b,_){var w=l(_);return d(w),y(b,w,void 0)},"number | BigNumber | Complex | Unit, Matrix":function(b,_){d(_);var w=_.storage()||(r.matrix==="Matrix"?"dense":void 0);return y(b,_,w)},"number | BigNumber | Complex | Unit, Array, string":function(b,_,w){var x=l(_);return d(x),y(b,x,w)},"number | BigNumber | Complex | Unit, Matrix, string":function(b,_,w){return d(_),y(b,_,w)}});function p(S,b){var _=mt(S),w=_?new s(-1):-1,x=f(S),E=m(S),T=[[x,i(w,E)],[E,x]];return v(T,b)}function d(S){var b=S.size();if(b.length<1||b[0]!==3)throw new RangeError("Vector must be of dimensions 1x3")}function h(S){return S.reduce((b,_)=>i(b,_))}function v(S,b){if(b){if(b==="sparse")return new c(S);if(b==="dense")return new u(S);throw new TypeError('Unknown matrix type "'.concat(b,'"'))}return S}function y(S,b,_){var w=a(b);if(w===0)throw new RangeError("Rotation around zero vector");var x=mt(S)?s:null,E=x?new x(1):1,T=x?new x(-1):-1,D=x?new x(b.get([0])/w):b.get([0])/w,M=x?new x(b.get([1])/w):b.get([1])/w,C=x?new x(b.get([2])/w):b.get([2])/w,$=f(S),O=n(E,o($)),R=m(S),L=n($,h([D,D,O])),k=n(h([D,M,O]),h([T,C,R])),V=n(h([D,C,O]),h([M,R])),J=n(h([D,M,O]),h([C,R])),W=n($,h([M,M,O])),Q=n(h([M,C,O]),h([T,D,R])),ie=n(h([D,C,O]),h([T,M,R])),B=n(h([M,C,O]),h([D,R])),Z=n($,h([C,C,O])),q=[[L,k,V],[J,W,Q],[ie,B,Z]];return v(q,_)}});var Z2="row",Bne=["typed","Index","matrix","range"],Cy=N(Z2,Bne,t=>{var{typed:e,Index:r,matrix:i,range:n}=t;return e(Z2,{"Matrix, number":o,"Array, number":function(s,l){return o(i(dt(s)),l).valueOf()}});function o(a,s){if(a.size().length!==2)throw new Error("Only two dimensional matrix is supported");Mr(s,a.size()[0]);var l=n(0,a.size()[1]),u=new r(s,l),c=a.subset(u);return Je(c)?c:i([[c]])}});var G2="size",One=["typed","config","?matrix"],W2=N(G2,One,t=>{var{typed:e,config:r,matrix:i}=t;return e(G2,{Matrix:function(o){return o.create(o.size(),"number")},Array:vt,string:function(o){return r.matrix==="Array"?[o.length]:i([o.length],"dense","number")},"number | Complex | BigNumber | Unit | boolean | null":function(o){return r.matrix==="Array"?[]:i?i([],"dense","number"):Ny()}})});var H2="squeeze",Rne=["typed"],Y2=N(H2,Rne,t=>{var{typed:e}=t;return e(H2,{Array:function(i){return Zc(dt(i))},Matrix:function(i){var n=Zc(i.toArray());return Array.isArray(n)?i.create(n,i.datatype()):n},any:function(i){return dt(i)}})});var J2="subset",Lne=["typed","matrix","zeros","add"],$y=N(J2,Lne,t=>{var{typed:e,matrix:r,zeros:i,add:n}=t;return e(J2,{"Matrix, Index":function(s,l){return _l(l)?r():(Kp(s,l),s.subset(l))},"Array, Index":e.referTo("Matrix, Index",function(a){return function(s,l){var u=a(r(s),l);return l.isScalar()?u:u.valueOf()}}),"Object, Index":zne,"string, Index":Une,"Matrix, Index, any, any":function(s,l,u,c){return _l(l)?s:(Kp(s,l),s.clone().subset(l,o(u,l),c))},"Array, Index, any, any":e.referTo("Matrix, Index, any, any",function(a){return function(s,l,u,c){var f=a(r(s),l,u,c);return f.isMatrix?f.valueOf():f}}),"Array, Index, any":e.referTo("Matrix, Index, any, any",function(a){return function(s,l,u){return a(r(s),l,u,void 0).valueOf()}}),"Matrix, Index, any":e.referTo("Matrix, Index, any, any",function(a){return function(s,l,u){return a(s,l,u,void 0)}}),"string, Index, string":X2,"string, Index, string, string":X2,"Object, Index, any":Vne});function o(a,s){if(typeof a=="string")throw new Error("can't boradcast a string");if(s._isScalar)return a;var l=s.size();if(l.every(u=>u>0))try{return n(a,i(l))}catch{return a}else return a}});function Une(t,e){if(!Xa(e))throw new TypeError("Index expected");if(_l(e))return"";if(Kp(Array.from(t),e),e.size().length!==1)throw new $t(e.size().length,1);var r=t.length;Mr(e.min()[0],r),Mr(e.max()[0],r);var i=e.dimension(0),n="";return i.forEach(function(o){n+=t.charAt(o)}),n}function X2(t,e,r,i){if(!e||e.isIndex!==!0)throw new TypeError("Index expected");if(_l(e))return t;if(Kp(Array.from(t),e),e.size().length!==1)throw new $t(e.size().length,1);if(i!==void 0){if(typeof i!="string"||i.length!==1)throw new TypeError("Single character expected as defaultValue")}else i=" ";var n=e.dimension(0),o=n.size()[0];if(o!==r.length)throw new $t(n.size()[0],r.length);var a=t.length;Mr(e.min()[0]),Mr(e.max()[0]);for(var s=[],l=0;la)for(var u=a-1,c=s.length;u{var{typed:e,matrix:r}=t;return e(K2,{Array:a=>i(r(a)).valueOf(),Matrix:i,any:dt});function i(a){var s=a.size(),l;switch(s.length){case 1:l=a.clone();break;case 2:{var u=s[0],c=s[1];if(c===0)throw new RangeError("Cannot transpose a 2D matrix with no columns (size: "+Ct(s)+")");switch(a.storage()){case"dense":l=n(a,u,c);break;case"sparse":l=o(a,u,c);break}}break;default:throw new RangeError("Matrix must be a vector or two dimensional (size: "+Ct(s)+")")}return l}function n(a,s,l){for(var u=a._data,c=[],f,m=0;m{var{typed:e,transpose:r,conj:i}=t;return e(eB,{any:function(o){return i(r(o))}})});var rB="zeros",Zne=["typed","config","matrix","BigNumber"],nB=N(rB,Zne,t=>{var{typed:e,config:r,matrix:i,BigNumber:n}=t;return e(rB,{"":function(){return r.matrix==="Array"?o([]):o([],"default")},"...number | BigNumber | string":function(u){var c=u[u.length-1];if(typeof c=="string"){var f=u.pop();return o(u,f)}else return r.matrix==="Array"?o(u):o(u,"default")},Array:o,Matrix:function(u){var c=u.storage();return o(u.valueOf(),c)},"Array | Matrix, string":function(u,c){return o(u.valueOf(),c)}});function o(l,u){var c=a(l),f=c?new n(0):0;if(s(l),u){var m=i(u);return l.length>0?m.resize(l,f):m}else{var p=[];return l.length>0?Ta(p,l,f):p}}function a(l){var u=!1;return l.forEach(function(c,f,m){mt(c)&&(u=!0,m[f]=c.toNumber())}),u}function s(l){l.forEach(function(u){if(typeof u!="number"||!Ge(u)||u<0)throw new Error("Parameters in function zeros must be positive integers")})}});var iB="fft",Gne=["typed","matrix","addScalar","multiplyScalar","divideScalar","exp","tau","i","dotDivide","conj","pow","ceil","log2"],oB=N(iB,Gne,t=>{var{typed:e,matrix:r,addScalar:i,multiplyScalar:n,divideScalar:o,exp:a,tau:s,i:l,dotDivide:u,conj:c,pow:f,ceil:m,log2:p}=t;return e(iB,{Array:d,Matrix:function(b){return b.create(d(b.valueOf()),b.datatype())}});function d(S){var b=vt(S);return b.length===1?y(S,b[0]):h(S.map(_=>d(_,b.slice(1))),0)}function h(S,b){var _=vt(S);if(b!==0)return new Array(_[0]).fill(0).map((x,E)=>h(S[E],b-1));if(_.length===1)return y(S);function w(x){var E=vt(x);return new Array(E[1]).fill(0).map((T,D)=>new Array(E[0]).fill(0).map((M,C)=>x[C][D]))}return w(h(w(S),1))}function v(S){for(var b=S.length,_=a(o(n(-1,n(l,s)),b)),w=[],x=1-b;xn(S[V],w[b-1+V])),...new Array(E-b).fill(0)],D=[...new Array(b+b-1).fill(0).map((k,V)=>o(1,w[V])),...new Array(E-(b+b-1)).fill(0)],M=y(T),C=y(D),$=new Array(E).fill(0).map((k,V)=>n(M[V],C[V])),O=u(c(d(c($))),E),R=[],L=b-1;LD%2===0),b/2),...y(S.filter((T,D)=>D%2===1),b/2)],w=0;w{var{typed:e,fft:r,dotDivide:i,conj:n}=t;return e(aB,{"Array | Matrix":function(a){var s=Je(a)?a.size():vt(a);return i(n(r(n(a))),s.reduce((l,u)=>l*u,1))}})});function Dl(t){"@babel/helpers - typeof";return Dl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Dl(t)}function uB(t,e){if(Dl(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var i=r.call(t,e||"default");if(Dl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function lB(t){var e=uB(t,"string");return Dl(e)=="symbol"?e:e+""}function dr(t,e,r){return(e=lB(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function cB(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function Hne(t){for(var e=1;e{var{typed:e,add:r,subtract:i,multiply:n,divide:o,max:a,map:s,abs:l,isPositive:u,isNegative:c,larger:f,smaller:m,matrix:p,bignumber:d,unaryMinus:h}=t;function v(T){return function(D,M,C,$){var O=!(M.length===2&&(M.every(x)||M.every(En)));if(O)throw new Error('"tspan" must be an Array of two numeric values or two units [tStart, tEnd]');var R=M[0],L=M[1],k=f(L,R),V=$.firstStep;if(V!==void 0&&!u(V))throw new Error('"firstStep" must be positive');var J=$.maxStep;if(J!==void 0&&!u(J))throw new Error('"maxStep" must be positive');var W=$.minStep;if(W&&c(W))throw new Error('"minStep" must be positive or zero');var Q=[R,L,V,W,J].filter(De=>De!==void 0);if(!(Q.every(x)||Q.every(En)))throw new Error('Inconsistent type of "t" dependant variables');for(var ie=1,B=$.tol?$.tol:1e-4,Z=$.minDelta?$.minDelta:.2,q=$.maxDelta?$.maxDelta:5,xe=$.maxIter?$.maxIter:1e4,de=[R,L,...C,J,W].some(mt),[be,G,K,re]=de?[d(T.a),d(T.c),d(T.b),d(T.bp)]:[T.a,T.c,T.b,T.bp],ae=V?k?V:h(V):o(i(L,R),ie),le=[R],Se=[C],_e=i(K,re),Oe=0,st=0,yt=_(k),Qe=w(k);yt(le[Oe],L);){var ut=[];ae=Qe(le[Oe],L,ae),ut.push(D(le[Oe],Se[Oe]));for(var H=1;HEn(De)?De.value:De)));oe1/4&&(le.push(r(le[Oe],ae)),Se.push(r(Se[Oe],n(ae,K,ut))),Oe++);var ve=.84*(B/oe)**(1/5);if(m(ve,Z)?ve=Z:f(ve,q)&&(ve=q),ve=de?d(ve):ve,ae=n(ae,ve),J&&f(l(ae),J)?ae=k?J:h(J):W&&m(l(ae),W)&&(ae=k?W:h(W)),st++,st>xe)throw new Error("Maximum number of iterations reached, try changing options")}return{t:le,y:Se}}}function y(T,D,M,C){var $=[[],[.5],[0,.75],[.2222222222222222,.3333333333333333,.4444444444444444]],O=[null,1/2,3/4,1],R=[2/9,1/3,4/9,0],L=[7/24,1/4,1/3,1/8],k={a:$,c:O,b:R,bp:L};return v(k)(T,D,M,C)}function S(T,D,M,C){var $=[[],[.2],[.075,.225],[.9777777777777777,-3.7333333333333334,3.5555555555555554],[2.9525986892242035,-11.595793324188385,9.822892851699436,-.2908093278463649],[2.8462752525252526,-10.757575757575758,8.906422717743473,.2784090909090909,-.2735313036020583],[.09114583333333333,0,.44923629829290207,.6510416666666666,-.322376179245283,.13095238095238096]],O=[null,1/5,3/10,4/5,8/9,1,1],R=[35/384,0,500/1113,125/192,-2187/6784,11/84,0],L=[5179/57600,0,7571/16695,393/640,-92097/339200,187/2100,1/40],k={a:$,c:O,b:R,bp:L};return v(k)(T,D,M,C)}function b(T,D,M,C){var $=C.method?C.method:"RK45",O={RK23:y,RK45:S};if($.toUpperCase()in O){var R=Hne({},C);return delete R.method,O[$.toUpperCase()](T,D,M,R)}else{var L=Object.keys(O).map(V=>'"'.concat(V,'"')),k="".concat(L.slice(0,-1).join(", ")," and ").concat(L.slice(-1));throw new Error('Unavailable method "'.concat($,'". Available methods are ').concat(k))}}function _(T){return T?m:f}function w(T){var D=T?f:m;return function(M,C,$){var O=r(M,$);return D(O,C)?i(C,M):$}}function x(T){return mt(T)||Et(T)}function E(T,D,M,C){var $=b(T,D.toArray(),M.toArray(),C);return{t:p($.t),y:p($.y)}}return e("solveODE",{"function, Array, Array, Object":b,"function, Matrix, Matrix, Object":E,"function, Array, Array":(T,D,M)=>b(T,D,M,{}),"function, Matrix, Matrix":(T,D,M)=>E(T,D,M,{}),"function, Array, number | BigNumber | Unit":(T,D,M)=>{var C=b(T,D,[M],{});return{t:C.t,y:C.y.map($=>$[0])}},"function, Matrix, number | BigNumber | Unit":(T,D,M)=>{var C=b(T,D.toArray(),[M],{});return{t:p(C.t),y:p(C.y.map($=>$[0]))}},"function, Array, number | BigNumber | Unit, Object":(T,D,M,C)=>{var $=b(T,D,[M],C);return{t:$.t,y:$.y.map(O=>O[0])}},"function, Matrix, number | BigNumber | Unit, Object":(T,D,M,C)=>{var $=b(T,D.toArray(),[M],C);return{t:p($.t),y:p($.y.map(O=>O[0]))}}})});var Xne="erf",Kne=["typed"],pB=N(Xne,Kne,t=>{var{typed:e}=t;return e("name",{number:function(a){var s=Math.abs(a);return s>=tie?ra(a):s<=Qne?ra(a)*r(s):s<=4?ra(a)*(1-i(s)):ra(a)*(1-n(s))},"Array | Matrix":e.referToSelf(o=>a=>it(a,o))});function r(o){var a=o*o,s=Xs[0][4]*a,l=a,u;for(u=0;u<3;u+=1)s=(s+Xs[0][u])*a,l=(l+tf[0][u])*a;return o*(s+Xs[0][3])/(l+tf[0][3])}function i(o){var a=Xs[1][8]*o,s=o,l;for(l=0;l<7;l+=1)a=(a+Xs[1][l])*o,s=(s+tf[1][l])*o;var u=(a+Xs[1][7])/(s+tf[1][7]),c=parseInt(o*16)/16,f=(o-c)*(o+c);return Math.exp(-c*c)*Math.exp(-f)*u}function n(o){var a=1/(o*o),s=Xs[2][5]*a,l=a,u;for(u=0;u<4;u+=1)s=(s+Xs[2][u])*a,l=(l+tf[2][u])*a;var c=a*(s+Xs[2][4])/(l+tf[2][4]);c=(eie-c)/o,a=parseInt(o*16)/16;var f=(o-a)*(o+a);return Math.exp(-a*a)*Math.exp(-f)*c}}),Qne=.46875,eie=.5641895835477563,Xs=[[3.1611237438705655,113.86415415105016,377.485237685302,3209.3775891384694,.18577770618460315],[.5641884969886701,8.883149794388377,66.11919063714163,298.6351381974001,881.952221241769,1712.0476126340707,2051.0783778260716,1230.3393547979972,21531153547440383e-24],[.30532663496123236,.36034489994980445,.12578172611122926,.016083785148742275,.0006587491615298378,.016315387137302097]],tf=[[23.601290952344122,244.02463793444417,1282.6165260773723,2844.236833439171],[15.744926110709835,117.6939508913125,537.1811018620099,1621.3895745666903,3290.7992357334597,4362.619090143247,3439.3676741437216,1230.3393548037495],[2.568520192289822,1.8729528499234604,.5279051029514285,.06051834131244132,.0023352049762686918]],tie=Math.pow(2,53);var mB="zeta",rie=["typed","config","multiply","pow","divide","factorial","equal","smallerEq","isNegative","gamma","sin","subtract","add","?Complex","?BigNumber","pi"],dB=N(mB,rie,t=>{var{typed:e,config:r,multiply:i,pow:n,divide:o,factorial:a,equal:s,smallerEq:l,isNegative:u,gamma:c,sin:f,subtract:m,add:p,Complex:d,BigNumber:h,pi:v}=t;return e(mB,{number:x=>y(x,E=>E,()=>20),BigNumber:x=>y(x,E=>new h(E),()=>Math.abs(Math.log10(r.relTol))),Complex:S});function y(x,E,T){return s(x,0)?E(-.5):s(x,1)?E(NaN):isFinite(x)?b(x,E,T,D=>D):u(x)?E(NaN):E(1)}function S(x){return x.re===0&&x.im===0?new d(-.5):x.re===1?new d(NaN,NaN):x.re===1/0&&x.im===0?new d(1):x.im===1/0||x.re===-1/0?new d(NaN,NaN):b(x,E=>E,E=>Math.round(1.3*15+.9*Math.abs(E.im)),E=>E.re)}function b(x,E,T,D){var M=T(x);if(D(x)>-(M-1)/2)return w(x,E(M),E);var C=i(n(2,x),n(E(v),m(x,1)));return C=i(C,f(i(o(E(v),2),x))),C=i(C,c(m(1,x))),i(C,b(m(1,x),E,T,D))}function _(x,E){for(var T=x,D=x;l(D,E);D=p(D,1)){var M=o(i(a(p(E,m(D,1))),n(4,D)),i(a(m(E,D)),a(i(2,D))));T=p(T,M)}return i(E,T)}function w(x,E,T){for(var D=o(1,i(_(T(0),E),m(1,n(2,m(1,x))))),M=T(0),C=T(1);l(C,E);C=p(C,1))M=p(M,o(i((-1)**(C-1),_(C,E)),n(C,x)));return i(D,M)}});var hB="mode",nie=["typed","isNaN","isNumeric"],gB=N(hB,nie,t=>{var{typed:e,isNaN:r,isNumeric:i}=t;return e(hB,{"Array | Matrix":n,"...":function(a){return n(a)}});function n(o){o=Ut(o.valueOf());var a=o.length;if(a===0)throw new Error("Cannot calculate mode of an empty array");for(var s={},l=[],u=0,c=0;cu&&(u=s[f],l=[f])}return l}});function gn(t,e,r){var i;return String(t).includes("Unexpected type")?(i=arguments.length>2?" (type: "+ir(r)+", value: "+JSON.stringify(r)+")":" (type: "+t.data.actual+")",new TypeError("Cannot calculate "+e+", unexpected type of argument"+i)):String(t).includes("complex numbers")?(i=arguments.length>2?" (type: "+ir(r)+", value: "+JSON.stringify(r)+")":"",new TypeError("Cannot calculate "+e+", no ordering relation is defined for complex numbers"+i)):t}var vB="prod",iie=["typed","config","multiplyScalar","numeric"],yB=N(vB,iie,t=>{var{typed:e,config:r,multiplyScalar:i,numeric:n}=t;return e(vB,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":function(s,l){throw new Error("prod(A, dim) is not yet supported")},"...":function(s){return o(s)}});function o(a){var s;if(Zi(a,function(l){try{s=s===void 0?l:i(s,l)}catch(u){throw gn(u,"prod",l)}}),typeof s=="string"&&(s=n(s,Mi(s,r))),s===void 0)throw new Error("Cannot calculate prod of an empty array");return s}});var bB="format",oie=["typed"],xB=N(bB,oie,t=>{var{typed:e}=t;return e(bB,{any:Ct,"any, Object | function | number | BigNumber":Ct})});var _B="bin",aie=["typed","format"],wB=N(_B,aie,t=>{var{typed:e,format:r}=t;return e(_B,{"number | BigNumber":function(n){return r(n,{notation:"bin"})},"number | BigNumber, number | BigNumber":function(n,o){return r(n,{notation:"bin",wordSize:o})}})});var SB="oct",sie=["typed","format"],DB=N(SB,sie,t=>{var{typed:e,format:r}=t;return e(SB,{"number | BigNumber":function(n){return r(n,{notation:"oct"})},"number | BigNumber, number | BigNumber":function(n,o){return r(n,{notation:"oct",wordSize:o})}})});var EB="hex",uie=["typed","format"],AB=N(EB,uie,t=>{var{typed:e,format:r}=t;return e(EB,{"number | BigNumber":function(n){return r(n,{notation:"hex"})},"number | BigNumber, number | BigNumber":function(n,o){return r(n,{notation:"hex",wordSize:o})}})});var Iy=/\$([\w.]+)/g;var TB="print",lie=["typed"],Fy=N(TB,lie,t=>{var{typed:e}=t;return e(TB,{"string, Object | Array":NB,"string, Object | Array, number | Object":NB})});function NB(t,e,r){return t.replace(Iy,function(i,n){var o=n.split("."),a=e[o.shift()];for(a!==void 0&&a.isMatrix&&(a=a.toArray());o.length&&a!==void 0;){var s=o.shift();a=s?a[s]:a+"."}return a!==void 0?Qr(a)?a:Ct(a,r):i})}var MB="to",cie=["typed","matrix","concat"],CB=N(MB,cie,t=>{var{typed:e,matrix:r,concat:i}=t,n=Bt({typed:e,matrix:r,concat:i});return e(MB,{"Unit, Unit | string":(o,a)=>o.to(a)},n({Ds:!0}))});var $B="toBest",fie=["typed"],IB=N($B,fie,t=>{var{typed:e}=t;return e($B,{Unit:r=>r.toBest(),"Unit, string":(r,i)=>r.toBest(i.split(",")),"Unit, string, Object":(r,i,n)=>r.toBest(i.split(","),n),"Unit, Array":(r,i)=>r.toBest(i),"Unit, Array, Object":(r,i,n)=>r.toBest(i,n)})});var FB="isPrime",pie=["typed"],kB=N(FB,pie,t=>{var{typed:e}=t;return e(FB,{number:function(i){if(i<=3)return i>1;if(i%2===0||i%3===0)return!1;for(var n=5;n*n<=i;n+=6)if(i%n===0||i%(n+2)===0)return!1;return!0},bigint:function(i){if(i<=3n)return i>1n;if(i%2n===0n||i%3n===0n)return!1;for(var n=5n;n*n<=i;n+=6n)if(i%n===0n||i%(n+2n)===0n)return!1;return!0},BigNumber:function(i){if(i.lte(3))return i.gt(1);if(i.mod(2).eq(0)||i.mod(3).eq(0))return!1;if(i.lt(Math.pow(2,32))){for(var n=i.toNumber(),o=5;o*o<=n;o+=6)if(n%o===0||n%(o+2)===0)return!1;return!0}function a(S,b,_){for(var w=1;!b.eq(0);)b.mod(2).eq(0)?(b=b.div(2),S=S.mul(S).mod(_)):(b=b.sub(1),w=S.mul(w).mod(_));return w}var s=i.constructor.clone({precision:i.toFixed(0).length*2});i=new s(i);for(var l=0,u=i.sub(1);u.mod(2).eq(0);)u=u.div(2),l+=1;var c=null;if(i.lt("3317044064679887385961981"))c=[2,3,5,7,11,13,17,19,23,29,31,37,41].filter(S=>Si=>it(i,r))})});var mie="numeric",die=["number","?bignumber","?fraction"],PB=N(mie,die,t=>{var{number:e,bignumber:r,fraction:i}=t,n={string:!0,number:!0,BigNumber:!0,Fraction:!0},o={number:a=>e(a),BigNumber:r?a=>r(a):ef,bigint:a=>BigInt(a),Fraction:i?a=>i(a):Ty};return function(s){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"number",u=arguments.length>2?arguments[2]:void 0;if(u!==void 0)throw new SyntaxError("numeric() takes one or two arguments");var c=ir(s);if(!(c in n))throw new TypeError("Cannot convert "+s+' of type "'+c+'"; valid input types are '+Object.keys(n).join(", "));if(!(l in o))throw new TypeError("Cannot convert "+s+' to type "'+l+'"; valid output types are '+Object.keys(o).join(", "));return l===c?s:o[l](s)}});var BB="divideScalar",hie=["typed","numeric"],OB=N(BB,hie,t=>{var{typed:e,numeric:r}=t;return e(BB,{"number, number":function(n,o){return n/o},"Complex, Complex":function(n,o){return n.div(o)},"BigNumber, BigNumber":function(n,o){return n.div(o)},"bigint, bigint":function(n,o){return n/o},"Fraction, Fraction":function(n,o){return n.div(o)},"Unit, number | Complex | Fraction | BigNumber | Unit":(i,n)=>i.divide(n),"number | Fraction | Complex | BigNumber, Unit":(i,n)=>n.divideInto(i)})});var RB="pow",gie=["typed","config","identity","multiply","matrix","inv","fraction","number","Complex"],LB=N(RB,gie,t=>{var{typed:e,config:r,identity:i,multiply:n,matrix:o,inv:a,number:s,fraction:l,Complex:u}=t;return e(RB,{"number, number":c,"Complex, Complex":function(d,h){return d.pow(h)},"BigNumber, BigNumber":function(d,h){return h.isInteger()||d>=0||r.predictable?d.pow(h):new u(d.toNumber(),0).pow(h.toNumber(),0)},"bigint, bigint":(p,d)=>p**d,"Fraction, Fraction":function(d,h){var v=d.pow(h);if(v!=null)return v;if(r.predictable)throw new Error("Result of pow is non-rational and cannot be expressed as a fraction");return c(d.valueOf(),h.valueOf())},"Array, number":f,"Array, BigNumber":function(d,h){return f(d,h.toNumber())},"Matrix, number":m,"Matrix, BigNumber":function(d,h){return m(d,h.toNumber())},"Unit, number | BigNumber":function(d,h){return d.pow(h)}});function c(p,d){if(r.predictable&&!Ge(d)&&p<0)try{var h=l(d),v=s(h);if((d===v||Math.abs((d-v)/d)<1e-14)&&h.d%2n===1n)return(h.n%2n===0n?1:-1)*Math.pow(-p,d)}catch{}return r.predictable&&(p<-1&&d===1/0||p>-1&&p<0&&d===-1/0)?NaN:Ge(d)||p>=0||r.predictable?iE(p,d):p*p<1&&d===1/0||p*p>1&&d===-1/0?0:new u(p,0).pow(d,0)}function f(p,d){if(!Ge(d))throw new TypeError("For A^b, b must be an integer (value is "+d+")");var h=vt(p);if(h.length!==2)throw new Error("For A^b, A must be 2 dimensional (A has "+h.length+" dimensions)");if(h[0]!==h[1])throw new Error("For A^b, A must be square (size is "+h[0]+"x"+h[1]+")");if(d<0)try{return f(a(p),-d)}catch(S){throw S.message==="Cannot calculate inverse, determinant is zero"?new TypeError("For A^b, when A is not invertible, b must be a positive integer (value is "+d+")"):S}for(var v=i(h[0]).valueOf(),y=p;d>=1;)(d&1)===1&&(v=n(y,v)),d>>=1,y=n(y,y);return v}function m(p,d){return o(f(p.valueOf(),d))}});var rf="Number of decimals in function round must be an integer",UB="round",vie=["typed","config","matrix","equalScalar","zeros","BigNumber","DenseMatrix"],zB=N(UB,vie,t=>{var{typed:e,config:r,matrix:i,equalScalar:n,zeros:o,BigNumber:a,DenseMatrix:s}=t,l=Er({typed:e,equalScalar:n}),u=mr({typed:e,DenseMatrix:s}),c=An({typed:e});function f(m){return Math.abs(Uc(m).exponent)}return e(UB,{number:function(p){var d=Yc(p,f(r.relTol)),h=jr(p,d,r.relTol,r.absTol)?d:p;return Yc(h)},"number, number":function(p,d){var h=f(r.relTol);if(d>=h)return Yc(p,d);var v=Yc(p,h),y=jr(p,v,r.relTol,r.absTol)?v:p;return Yc(y,d)},"number, BigNumber":function(p,d){if(!d.isInteger())throw new TypeError(rf);return new a(p).toDecimalPlaces(d.toNumber())},Complex:function(p){return p.round()},"Complex, number":function(p,d){if(d%1)throw new TypeError(rf);return p.round(d)},"Complex, BigNumber":function(p,d){if(!d.isInteger())throw new TypeError(rf);var h=d.toNumber();return p.round(h)},BigNumber:function(p){var d=new a(p).toDecimalPlaces(f(r.relTol)),h=xn(p,d,r.relTol,r.absTol)?d:p;return h.toDecimalPlaces(0)},"BigNumber, BigNumber":function(p,d){if(!d.isInteger())throw new TypeError(rf);var h=f(r.relTol);if(d>=h)return p.toDecimalPlaces(d.toNumber());var v=p.toDecimalPlaces(h),y=xn(p,v,r.relTol,r.absTol)?v:p;return y.toDecimalPlaces(d.toNumber())},bigint:m=>m,"bigint, number":(m,p)=>m,"bigint, BigNumber":(m,p)=>m,Fraction:function(p){return p.round()},"Fraction, number":function(p,d){if(d%1)throw new TypeError(rf);return p.round(d)},"Fraction, BigNumber":function(p,d){if(!d.isInteger())throw new TypeError(rf);return p.round(d.toNumber())},"Unit, number, Unit":e.referToSelf(m=>function(p,d,h){var v=p.toNumeric(h);return h.multiply(m(v,d))}),"Unit, BigNumber, Unit":e.referToSelf(m=>(p,d,h)=>m(p,d.toNumber(),h)),"Array | Matrix, number | BigNumber, Unit":e.referToSelf(m=>(p,d,h)=>it(p,v=>m(v,d,h),!0)),"Array | Matrix | Unit, Unit":e.referToSelf(m=>(p,d)=>m(p,0,d)),"Array | Matrix":e.referToSelf(m=>p=>it(p,m,!0)),"SparseMatrix, number | BigNumber":e.referToSelf(m=>(p,d)=>l(p,d,m,!1)),"DenseMatrix, number | BigNumber":e.referToSelf(m=>(p,d)=>c(p,d,m,!1)),"Array, number | BigNumber":e.referToSelf(m=>(p,d)=>c(i(p),d,m,!1).valueOf()),"number | Complex | BigNumber | Fraction, SparseMatrix":e.referToSelf(m=>(p,d)=>n(p,0)?o(d.size(),d.storage()):u(d,p,m,!0)),"number | Complex | BigNumber | Fraction, DenseMatrix":e.referToSelf(m=>(p,d)=>n(p,0)?o(d.size(),d.storage()):c(d,p,m,!0)),"number | Complex | BigNumber | Fraction, Array":e.referToSelf(m=>(p,d)=>c(i(d),p,m,!0).valueOf())})});var VB="log",yie=["config","typed","typeOf","divideScalar","Complex"],bie=Math.log(16),qB=N(VB,yie,t=>{var{typed:e,typeOf:r,config:i,divideScalar:n,Complex:o}=t;function a(l){return l.log()}function s(l){return a(new o(l,0))}return e(VB,{number:function(u){return u>=0||i.predictable?eE(u):s(u)},bigint:Kc(bie,eE,i,s),Complex:a,BigNumber:function(u){return!u.isNegative()||i.predictable?u.ln():s(u.toNumber())},"any, any":e.referToSelf(l=>(u,c)=>{if(r(u)==="Fraction"&&r(c)==="Fraction"){var f=u.log(c);if(f!==null)return f}return n(l(u),l(c))})})});var jB="log1p",xie=["typed","config","divideScalar","log","Complex"],ZB=N(jB,xie,t=>{var{typed:e,config:r,divideScalar:i,log:n,Complex:o}=t;return e(jB,{number:function(l){return l>=-1||r.predictable?Uv(l):a(new o(l,0))},Complex:a,BigNumber:function(l){var u=l.plus(1);return!u.isNegative()||r.predictable?u.ln():a(new o(l.toNumber(),0))},"Array | Matrix":e.referToSelf(s=>l=>it(l,s)),"any, any":e.referToSelf(s=>(l,u)=>i(s(l),n(u)))});function a(s){var l=s.re+1;return new o(Math.log(Math.sqrt(l*l+s.im*s.im)),Math.atan2(s.im,l))}});var GB="nthRoots",_ie=["config","typed","divideScalar","Complex"],WB=N(GB,_ie,t=>{var{typed:e,config:r,divideScalar:i,Complex:n}=t,o=[function(l){return new n(l,0)},function(l){return new n(0,l)},function(l){return new n(-l,0)},function(l){return new n(0,-l)}];function a(s,l){if(l<0)throw new Error("Root must be greater than zero");if(l===0)throw new Error("Root must be non-zero");if(l%1!==0)throw new Error("Root must be an integer");if(s===0||s.abs()===0)return[new n(0,0)];var u=typeof s=="number",c;(u||s.re===0||s.im===0)&&(u?c=2*+(s<0):s.im===0?c=2*+(s.re<0):c=2*+(s.im<0)+1);for(var f=s.arg(),m=s.abs(),p=[],d=Math.pow(m,1/l),h=0;h{var{typed:e,equalScalar:r,matrix:i,pow:n,DenseMatrix:o,concat:a,SparseMatrix:s}=t,l=Vr({typed:e}),u=Ln({typed:e,SparseMatrix:s}),c=Er({typed:e,equalScalar:r}),f=mr({typed:e,DenseMatrix:o}),m=Bt({typed:e,matrix:i,concat:a}),p={};for(var d in n.signatures)Object.prototype.hasOwnProperty.call(n.signatures,d)&&!d.includes("Matrix")&&!d.includes("Array")&&(p[d]=n.signatures[d]);var h=e(p);return e(HB,m({elop:h,SS:u,DS:l,Ss:c,sS:f}))});var JB="dotDivide",Sie=["typed","matrix","equalScalar","divideScalar","DenseMatrix","concat","SparseMatrix"],XB=N(JB,Sie,t=>{var{typed:e,matrix:r,equalScalar:i,divideScalar:n,DenseMatrix:o,concat:a,SparseMatrix:s}=t,l=Tn({typed:e,equalScalar:i}),u=Vr({typed:e}),c=Ln({typed:e,SparseMatrix:s}),f=Er({typed:e,equalScalar:i}),m=mr({typed:e,DenseMatrix:o}),p=Bt({typed:e,matrix:r,concat:a});return e(JB,p({elop:n,SS:c,DS:u,SD:l,Ss:f,sS:m}))});function rs(t){var{DenseMatrix:e}=t;return function(i,n,o){var a=i.size();if(a.length!==2)throw new RangeError("Matrix must be two dimensional (size: "+Ct(a)+")");var s=a[0],l=a[1];if(s!==l)throw new RangeError("Matrix must be square (size: "+Ct(a)+")");var u=[];if(Je(n)){var c=n.size(),f=n._data;if(c.length===1){if(c[0]!==s)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");for(var m=0;m{var{typed:e,matrix:r,divideScalar:i,multiplyScalar:n,subtractScalar:o,equalScalar:a,DenseMatrix:s}=t,l=rs({DenseMatrix:s});return e(KB,{"SparseMatrix, Array | Matrix":function(m,p){return c(m,p)},"DenseMatrix, Array | Matrix":function(m,p){return u(m,p)},"Array, Array | Matrix":function(m,p){var d=r(m),h=u(d,p);return h.valueOf()}});function u(f,m){m=l(f,m,!0);for(var p=m._data,d=f._size[0],h=f._size[1],v=[],y=f._data,S=0;S_&&(E.push(v[C]),T.push($))}if(a(x,0))throw new Error("Linear system cannot be solved since matrix is singular");for(var O=i(w,x),R=0,L=T.length;R{var{typed:e,matrix:r,divideScalar:i,multiplyScalar:n,subtractScalar:o,equalScalar:a,DenseMatrix:s}=t,l=rs({DenseMatrix:s});return e(eO,{"SparseMatrix, Array | Matrix":function(m,p){return c(m,p)},"DenseMatrix, Array | Matrix":function(m,p){return u(m,p)},"Array, Array | Matrix":function(m,p){var d=r(m),h=u(d,p);return h.valueOf()}});function u(f,m){m=l(f,m,!0);for(var p=m._data,d=f._size[0],h=f._size[1],v=[],y=f._data,S=h-1;S>=0;S--){var b=p[S][0]||0,_=void 0;if(a(b,0))_=0;else{var w=y[S][S];if(a(w,0))throw new Error("Linear system cannot be solved since matrix is singular");_=i(b,w);for(var x=S-1;x>=0;x--)p[x]=[o(p[x][0]||0,n(_,y[x][S]))]}v[S]=[_]}return new s({data:v,size:[d,1]})}function c(f,m){m=l(f,m,!0);for(var p=m._data,d=f._size[0],h=f._size[1],v=f._values,y=f._index,S=f._ptr,b=[],_=h-1;_>=0;_--){var w=p[_][0]||0;if(a(w,0))b[_]=[0];else{for(var x=0,E=[],T=[],D=S[_],M=S[_+1],C=M-1;C>=D;C--){var $=y[C];$===_?x=v[C]:$<_&&(E.push(v[C]),T.push($))}if(a(x,0))throw new Error("Linear system cannot be solved since matrix is singular");for(var O=i(w,x),R=0,L=T.length;R{var{typed:e,matrix:r,divideScalar:i,multiplyScalar:n,subtractScalar:o,equalScalar:a,DenseMatrix:s}=t,l=rs({DenseMatrix:s});return e(rO,{"SparseMatrix, Array | Matrix":function(m,p){return c(m,p)},"DenseMatrix, Array | Matrix":function(m,p){return u(m,p)},"Array, Array | Matrix":function(m,p){var d=r(m),h=u(d,p);return h.map(v=>v.valueOf())}});function u(f,m){for(var p=[l(f,m,!0)._data.map(T=>T[0])],d=f._data,h=f._size[0],v=f._size[1],y=0;ynew s({data:T.map(D=>[D]),size:[h,1]}))}function c(f,m){for(var p=[l(f,m,!0)._data.map(ie=>ie[0])],d=f._size[0],h=f._size[1],v=f._values,y=f._index,S=f._ptr,b=0;bb&&(E.push(v[$]),T.push(O))}if(a(C,0))if(a(x[b],0)){if(w===0){var V=[...x];V[b]=1;for(var J=0,W=T.length;Jnew s({data:ie.map(B=>[B]),size:[d,1]}))}});var iO="usolveAll",Tie=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],oO=N(iO,Tie,t=>{var{typed:e,matrix:r,divideScalar:i,multiplyScalar:n,subtractScalar:o,equalScalar:a,DenseMatrix:s}=t,l=rs({DenseMatrix:s});return e(iO,{"SparseMatrix, Array | Matrix":function(m,p){return c(m,p)},"DenseMatrix, Array | Matrix":function(m,p){return u(m,p)},"Array, Array | Matrix":function(m,p){var d=r(m),h=u(d,p);return h.map(v=>v.valueOf())}});function u(f,m){for(var p=[l(f,m,!0)._data.map(T=>T[0])],d=f._data,h=f._size[0],v=f._size[1],y=v-1;y>=0;y--)for(var S=p.length,b=0;b=0;E--)x[E]=o(x[E],d[E][y]);p.push(x)}}else{if(b===0)return[];p.splice(b,1),b-=1,S-=1}else{_[y]=i(_[y],d[y][y]);for(var w=y-1;w>=0;w--)_[w]=o(_[w],n(_[y],d[w][y]))}}return p.map(T=>new s({data:T.map(D=>[D]),size:[h,1]}))}function c(f,m){for(var p=[l(f,m,!0)._data.map(ie=>ie[0])],d=f._size[0],h=f._size[1],v=f._values,y=f._index,S=f._ptr,b=h-1;b>=0;b--)for(var _=p.length,w=0;w<_;w++){for(var x=p[w],E=[],T=[],D=S[b],M=S[b+1],C=0,$=M-1;$>=D;$--){var O=y[$];O===b?C=v[$]:Onew s({data:ie.map(B=>[B]),size:[d,1]}))}});var Nie="matAlgo08xS0Sid",Mie=["typed","equalScalar"],nf=N(Nie,Mie,t=>{var{typed:e,equalScalar:r}=t;return function(n,o,a){var s=n._values,l=n._index,u=n._ptr,c=n._size,f=n._datatype||n._data===void 0?n._datatype:n.getDataType(),m=o._values,p=o._index,d=o._ptr,h=o._size,v=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(c.length!==h.length)throw new $t(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");if(!s||!m)throw new Error("Cannot perform operation on Pattern Sparse Matrices");var y=c[0],S=c[1],b,_=r,w=0,x=a;typeof f=="string"&&f===v&&f!=="mixed"&&(b=f,_=e.find(r,[b,b]),w=e.convert(0,b),x=e.find(a,[b,b]));for(var E=[],T=[],D=[],M=[],C=[],$,O,R,L,k=0;k{var{typed:e,matrix:r}=t;return{"Array, number":e.referTo("DenseMatrix, number",i=>(n,o)=>i(r(n),o).valueOf()),"Array, BigNumber":e.referTo("DenseMatrix, BigNumber",i=>(n,o)=>i(r(n),o).valueOf()),"number, Array":e.referTo("number, DenseMatrix",i=>(n,o)=>i(n,r(o)).valueOf()),"BigNumber, Array":e.referTo("BigNumber, DenseMatrix",i=>(n,o)=>i(n,r(o)).valueOf())}});var aO="leftShift",Cie=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],sO=N(aO,Cie,t=>{var{typed:e,matrix:r,equalScalar:i,zeros:n,DenseMatrix:o,concat:a}=t,s=Ii({typed:e}),l=Tn({typed:e,equalScalar:i}),u=nf({typed:e,equalScalar:i}),c=mo({typed:e,DenseMatrix:o}),f=Er({typed:e,equalScalar:i}),m=An({typed:e}),p=Bt({typed:e,matrix:r,concat:a}),d=of({typed:e,matrix:r});return e(aO,{"number, number":lE,"BigNumber, BigNumber":XP,"bigint, bigint":(h,v)=>h<(v,y)=>i(y,0)?v.clone():f(v,y,h,!1)),"DenseMatrix, number | BigNumber":e.referToSelf(h=>(v,y)=>i(y,0)?v.clone():m(v,y,h,!1)),"number | BigNumber, SparseMatrix":e.referToSelf(h=>(v,y)=>i(v,0)?n(y.size(),y.storage()):c(y,v,h,!0)),"number | BigNumber, DenseMatrix":e.referToSelf(h=>(v,y)=>i(v,0)?n(y.size(),y.storage()):m(y,v,h,!0))},d,p({SS:u,DS:s,SD:l}))});var uO="rightArithShift",$ie=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],lO=N(uO,$ie,t=>{var{typed:e,matrix:r,equalScalar:i,zeros:n,DenseMatrix:o,concat:a}=t,s=Ii({typed:e}),l=Tn({typed:e,equalScalar:i}),u=nf({typed:e,equalScalar:i}),c=mo({typed:e,DenseMatrix:o}),f=Er({typed:e,equalScalar:i}),m=An({typed:e}),p=Bt({typed:e,matrix:r,concat:a}),d=of({typed:e,matrix:r});return e(uO,{"number, number":cE,"BigNumber, BigNumber":KP,"bigint, bigint":(h,v)=>h>>v,"SparseMatrix, number | BigNumber":e.referToSelf(h=>(v,y)=>i(y,0)?v.clone():f(v,y,h,!1)),"DenseMatrix, number | BigNumber":e.referToSelf(h=>(v,y)=>i(y,0)?v.clone():m(v,y,h,!1)),"number | BigNumber, SparseMatrix":e.referToSelf(h=>(v,y)=>i(v,0)?n(y.size(),y.storage()):c(y,v,h,!0)),"number | BigNumber, DenseMatrix":e.referToSelf(h=>(v,y)=>i(v,0)?n(y.size(),y.storage()):m(y,v,h,!0))},d,p({SS:u,DS:s,SD:l}))});var cO="rightLogShift",Iie=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],fO=N(cO,Iie,t=>{var{typed:e,matrix:r,equalScalar:i,zeros:n,DenseMatrix:o,concat:a}=t,s=Ii({typed:e}),l=Tn({typed:e,equalScalar:i}),u=nf({typed:e,equalScalar:i}),c=mo({typed:e,DenseMatrix:o}),f=Er({typed:e,equalScalar:i}),m=An({typed:e}),p=Bt({typed:e,matrix:r,concat:a}),d=of({typed:e,matrix:r});return e(cO,{"number, number":fE,"SparseMatrix, number | BigNumber":e.referToSelf(h=>(v,y)=>i(y,0)?v.clone():f(v,y,h,!1)),"DenseMatrix, number | BigNumber":e.referToSelf(h=>(v,y)=>i(y,0)?v.clone():m(v,y,h,!1)),"number | BigNumber, SparseMatrix":e.referToSelf(h=>(v,y)=>i(v,0)?n(y.size(),y.storage()):c(y,v,h,!0)),"number | BigNumber, DenseMatrix":e.referToSelf(h=>(v,y)=>i(v,0)?n(y.size(),y.storage()):m(y,v,h,!0))},d,p({SS:u,DS:s,SD:l}))});var pO="and",Fie=["typed","matrix","equalScalar","zeros","not","concat"],ky=N(pO,Fie,t=>{var{typed:e,matrix:r,equalScalar:i,zeros:n,not:o,concat:a}=t,s=Tn({typed:e,equalScalar:i}),l=Iu({typed:e,equalScalar:i}),u=Er({typed:e,equalScalar:i}),c=An({typed:e}),f=Bt({typed:e,matrix:r,concat:a});return e(pO,{"number, number":fy,"Complex, Complex":function(p,d){return(p.re!==0||p.im!==0)&&(d.re!==0||d.im!==0)},"BigNumber, BigNumber":function(p,d){return!p.isZero()&&!d.isZero()&&!p.isNaN()&&!d.isNaN()},"bigint, bigint":fy,"Unit, Unit":e.referToSelf(m=>(p,d)=>m(p.value||0,d.value||0)),"SparseMatrix, any":e.referToSelf(m=>(p,d)=>o(d)?n(p.size(),p.storage()):u(p,d,m,!1)),"DenseMatrix, any":e.referToSelf(m=>(p,d)=>o(d)?n(p.size(),p.storage()):c(p,d,m,!1)),"any, SparseMatrix":e.referToSelf(m=>(p,d)=>o(p)?n(p.size(),p.storage()):u(d,p,m,!0)),"any, DenseMatrix":e.referToSelf(m=>(p,d)=>o(p)?n(p.size(),p.storage()):c(d,p,m,!0)),"Array, any":e.referToSelf(m=>(p,d)=>m(r(p),d).valueOf()),"any, Array":e.referToSelf(m=>(p,d)=>m(p,r(d)).valueOf())},f({SS:l,DS:s}))});var Py="compare",kie=["typed","config","matrix","equalScalar","BigNumber","Fraction","DenseMatrix","concat"],mO=N(Py,kie,t=>{var{typed:e,config:r,equalScalar:i,matrix:n,BigNumber:o,Fraction:a,DenseMatrix:s,concat:l}=t,u=Vr({typed:e}),c=$u({typed:e,equalScalar:i}),f=mr({typed:e,DenseMatrix:s}),m=Bt({typed:e,matrix:n,concat:l}),p=sa({typed:e});return e(Py,Pie({typed:e,config:r}),{"boolean, boolean":function(h,v){return h===v?0:h>v?1:-1},"BigNumber, BigNumber":function(h,v){return xn(h,v,r.relTol,r.absTol)?new o(0):new o(h.cmp(v))},"bigint, bigint":function(h,v){return h===v?0n:h>v?1n:-1n},"Fraction, Fraction":function(h,v){return new a(h.compare(v))},"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},p,m({SS:c,DS:u,Ss:f}))}),Pie=N(Py,["typed","config"],t=>{var{typed:e,config:r}=t;return e(Py,{"number, number":function(n,o){return jr(n,o,r.relTol,r.absTol)?0:n>o?1:-1}})});var El=Ar(hO(),1);var gO="compareNatural",Bie=["typed","compare"],vO=N(gO,Bie,t=>{var{typed:e,compare:r}=t,i=r.signatures["boolean,boolean"];return e(gO,{"any, any":n});function n(l,u){var c=ir(l),f=ir(u),m;if((c==="number"||c==="BigNumber"||c==="Fraction")&&(f==="number"||f==="BigNumber"||f==="Fraction"))return m=r(l,u),m.toString()!=="0"?m>0?1:-1:(0,El.default)(c,f);var p=["Array","DenseMatrix","SparseMatrix"];if(p.includes(c)||p.includes(f))return m=o(n,l,u),m!==0?m:(0,El.default)(c,f);if(c!==f)return(0,El.default)(c,f);if(c==="Complex")return Oie(l,u);if(c==="Unit")return l.equalBase(u)?n(l.value,u.value):a(n,l.formatUnits(),u.formatUnits());if(c==="boolean")return i(l,u);if(c==="string")return(0,El.default)(l,u);if(c==="Object")return s(n,l,u);if(c==="null"||c==="undefined")return 0;throw new TypeError('Unsupported type of value "'+c+'"')}function o(l,u,c){return Fo(u)&&Fo(c)?a(l,u.toJSON().values,c.toJSON().values):Fo(u)?o(l,u.toArray(),c):Fo(c)?o(l,u,c.toArray()):Zs(u)?o(l,u.toJSON().data,c):Zs(c)?o(l,u,c.toJSON().data):Array.isArray(u)?Array.isArray(c)?a(l,u,c):o(l,u,[c]):o(l,[u],c)}function a(l,u,c){for(var f=0,m=Math.min(u.length,c.length);fc.length?1:u.lengthe.re?1:t.ree.im?1:t.im{var{typed:e,matrix:r,concat:i}=t,n=Bt({typed:e,matrix:r,concat:i});return e(yO,ty,n({elop:ty,Ds:!0}))});var By="equal",Lie=["typed","matrix","equalScalar","DenseMatrix","concat","SparseMatrix"],xO=N(By,Lie,t=>{var{typed:e,matrix:r,equalScalar:i,DenseMatrix:n,concat:o,SparseMatrix:a}=t,s=Vr({typed:e}),l=Ln({typed:e,SparseMatrix:a}),u=mr({typed:e,DenseMatrix:n}),c=Bt({typed:e,matrix:r,concat:o});return e(By,Uie({typed:e,equalScalar:i}),c({elop:i,SS:l,DS:s,Ss:u}))}),Uie=N(By,["typed","equalScalar"],t=>{var{typed:e,equalScalar:r}=t;return e(By,{"any, any":function(n,o){return n===null?o===null:o===null?n===null:n===void 0?o===void 0:o===void 0?n===void 0:r(n,o)}})});var _O="equalText",zie=["typed","compareText","isZero"],wO=N(_O,zie,t=>{var{typed:e,compareText:r,isZero:i}=t;return e(_O,{"any, any":function(o,a){return i(r(o,a))}})});var Oy="smaller",Vie=["typed","config","bignumber","matrix","DenseMatrix","concat","SparseMatrix"],SO=N(Oy,Vie,t=>{var{typed:e,config:r,bignumber:i,matrix:n,DenseMatrix:o,concat:a,SparseMatrix:s}=t,l=Vr({typed:e}),u=Ln({typed:e,SparseMatrix:s}),c=mr({typed:e,DenseMatrix:o}),f=Bt({typed:e,matrix:n,concat:a}),m=sa({typed:e});function p(d,h){return d.lt(h)&&!xn(d,h,r.relTol,r.absTol)}return e(Oy,qie({typed:e,config:r}),{"boolean, boolean":(d,h)=>ddd.compare(h)===-1,"Fraction, BigNumber":function(h,v){return p(i(h),v)},"BigNumber, Fraction":function(h,v){return p(h,i(v))},"Complex, Complex":function(h,v){throw new TypeError("No ordering relation is defined for complex numbers")}},m,f({SS:u,DS:l,Ss:c}))}),qie=N(Oy,["typed","config"],t=>{var{typed:e,config:r}=t;return e(Oy,{"number, number":function(n,o){return n{var{typed:e,config:r,matrix:i,DenseMatrix:n,concat:o,SparseMatrix:a}=t,s=Vr({typed:e}),l=Ln({typed:e,SparseMatrix:a}),u=mr({typed:e,DenseMatrix:n}),c=Bt({typed:e,matrix:i,concat:o}),f=sa({typed:e});return e(Ry,Zie({typed:e,config:r}),{"boolean, boolean":(m,p)=>m<=p,"BigNumber, BigNumber":function(p,d){return p.lte(d)||xn(p,d,r.relTol,r.absTol)},"bigint, bigint":(m,p)=>m<=p,"Fraction, Fraction":(m,p)=>m.compare(p)!==1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},f,c({SS:l,DS:s,Ss:u}))}),Zie=N(Ry,["typed","config"],t=>{var{typed:e,config:r}=t;return e(Ry,{"number, number":function(n,o){return n<=o||jr(n,o,r.relTol,r.absTol)}})});var Ly="larger",Gie=["typed","config","bignumber","matrix","DenseMatrix","concat","SparseMatrix"],EO=N(Ly,Gie,t=>{var{typed:e,config:r,bignumber:i,matrix:n,DenseMatrix:o,concat:a,SparseMatrix:s}=t,l=Vr({typed:e}),u=Ln({typed:e,SparseMatrix:s}),c=mr({typed:e,DenseMatrix:o}),f=Bt({typed:e,matrix:n,concat:a}),m=sa({typed:e});function p(d,h){return d.gt(h)&&!xn(d,h,r.relTol,r.absTol)}return e(Ly,Wie({typed:e,config:r}),{"boolean, boolean":(d,h)=>d>h,"BigNumber, BigNumber":p,"bigint, bigint":(d,h)=>d>h,"Fraction, Fraction":(d,h)=>d.compare(h)===1,"Fraction, BigNumber":function(h,v){return p(i(h),v)},"BigNumber, Fraction":function(h,v){return p(h,i(v))},"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},m,f({SS:u,DS:l,Ss:c}))}),Wie=N(Ly,["typed","config"],t=>{var{typed:e,config:r}=t;return e(Ly,{"number, number":function(n,o){return n>o&&!jr(n,o,r.relTol,r.absTol)}})});var Uy="largerEq",Hie=["typed","config","matrix","DenseMatrix","concat","SparseMatrix"],AO=N(Uy,Hie,t=>{var{typed:e,config:r,matrix:i,DenseMatrix:n,concat:o,SparseMatrix:a}=t,s=Vr({typed:e}),l=Ln({typed:e,SparseMatrix:a}),u=mr({typed:e,DenseMatrix:n}),c=Bt({typed:e,matrix:i,concat:o}),f=sa({typed:e});return e(Uy,Yie({typed:e,config:r}),{"boolean, boolean":(m,p)=>m>=p,"BigNumber, BigNumber":function(p,d){return p.gte(d)||xn(p,d,r.relTol,r.absTol)},"bigint, bigint":function(p,d){return p>=d},"Fraction, Fraction":(m,p)=>m.compare(p)!==-1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},f,c({SS:l,DS:s,Ss:u}))}),Yie=N(Uy,["typed","config"],t=>{var{typed:e,config:r}=t;return e(Uy,{"number, number":function(n,o){return n>=o||jr(n,o,r.relTol,r.absTol)}})});var TO="deepEqual",Jie=["typed","equal"],NO=N(TO,Jie,t=>{var{typed:e,equal:r}=t;return e(TO,{"any, any":function(o,a){return i(o.valueOf(),a.valueOf())}});function i(n,o){if(Array.isArray(n))if(Array.isArray(o)){var a=n.length;if(a!==o.length)return!1;for(var s=0;s{var{typed:e,config:r,equalScalar:i,matrix:n,DenseMatrix:o,concat:a,SparseMatrix:s}=t,l=Vr({typed:e}),u=Ln({typed:e,SparseMatrix:s}),c=mr({typed:e,DenseMatrix:o}),f=Bt({typed:e,matrix:n,concat:a});return e(zy,Kie({typed:e,equalScalar:i}),f({elop:m,SS:u,DS:l,Ss:c}));function m(p,d){return!i(p,d)}}),Kie=N(zy,["typed","equalScalar"],t=>{var{typed:e,equalScalar:r}=t;return e(zy,{"any, any":function(n,o){return n===null?o!==null:o===null?n!==null:n===void 0?o!==void 0:o===void 0?n!==void 0:!r(n,o)}})});var CO="partitionSelect",Qie=["typed","isNumeric","isNaN","compare"],$O=N(CO,Qie,t=>{var{typed:e,isNumeric:r,isNaN:i,compare:n}=t,o=n,a=(u,c)=>-n(u,c);return e(CO,{"Array | Matrix, number":function(c,f){return s(c,f,o)},"Array | Matrix, number, string":function(c,f,m){if(m==="asc")return s(c,f,o);if(m==="desc")return s(c,f,a);throw new Error('Compare string must be "asc" or "desc"')},"Array | Matrix, number, function":s});function s(u,c,f){if(!Ge(c)||c<0)throw new Error("k must be a non-negative integer");if(Je(u)){var m=u.size();if(m.length>1)throw new Error("Only one dimensional matrices supported");return l(u.valueOf(),c,f)}if(Array.isArray(u))return l(u,c,f)}function l(u,c,f){if(c>=u.length)throw new Error("k out of bounds");for(var m=0;m=0){var S=u[v];u[v]=u[h],u[h]=S,--v}else++h;f(u[h],y)>0&&--h,c<=h?d=h:p=h+1}return u[c]}});var IO="sort",eoe=["typed","matrix","compare","compareNatural"],FO=N(IO,eoe,t=>{var{typed:e,matrix:r,compare:i,compareNatural:n}=t,o=i,a=(c,f)=>-i(c,f);return e(IO,{Array:function(f){return l(f),f.sort(o)},Matrix:function(f){return u(f),r(f.toArray().sort(o),f.storage())},"Array, function":function(f,m){return l(f),f.sort(m)},"Matrix, function":function(f,m){return u(f),r(f.toArray().sort(m),f.storage())},"Array, string":function(f,m){return l(f),f.sort(s(m))},"Matrix, string":function(f,m){return u(f),r(f.toArray().sort(s(m)),f.storage())}});function s(c){if(c==="asc")return o;if(c==="desc")return a;if(c==="natural")return n;throw new Error('String "asc", "desc", or "natural" expected')}function l(c){if(vt(c).length!==1)throw new Error("One dimensional array expected")}function u(c){if(c.size().length!==1)throw new Error("One dimensional matrix expected")}});var kO="max",toe=["typed","config","numeric","larger","isNaN"],Vy=N(kO,toe,t=>{var{typed:e,config:r,numeric:i,larger:n,isNaN:o}=t;return e(kO,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":function(u,c){return Cu(u,c.valueOf(),a)},"...":function(u){if(aa(u))throw new TypeError("Scalar values expected in function max");return s(u)}});function a(l,u){try{return n(l,u)?l:u}catch(c){throw gn(c,"max",u)}}function s(l){var u;if(Zi(l,function(c){try{(o(c)||u===void 0||n(c,u))&&(u=c)}catch(f){throw gn(f,"max",c)}}),u===void 0)throw new Error("Cannot calculate max of an empty array");return typeof u=="string"&&(u=i(u,Mi(u,r))),u}});var PO="min",roe=["typed","config","numeric","smaller","isNaN"],qy=N(PO,roe,t=>{var{typed:e,config:r,numeric:i,smaller:n,isNaN:o}=t;return e(PO,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":function(u,c){return Cu(u,c.valueOf(),a)},"...":function(u){if(aa(u))throw new TypeError("Scalar values expected in function min");return s(u)}});function a(l,u){try{return n(l,u)?l:u}catch(c){throw gn(c,"min",u)}}function s(l){var u;if(Zi(l,function(c){try{(o(c)||u===void 0||n(c,u))&&(u=c)}catch(f){throw gn(f,"min",c)}}),u===void 0)throw new Error("Cannot calculate min of an empty array");return typeof u=="string"&&(u=i(u,Mi(u,r))),u}});var noe="ImmutableDenseMatrix",ioe=["smaller","DenseMatrix"],BO=N(noe,ioe,t=>{var{smaller:e,DenseMatrix:r}=t;function i(n,o){if(!(this instanceof i))throw new SyntaxError("Constructor must be called with the new operator");if(o&&!Qr(o))throw new Error("Invalid datatype: "+o);if(Je(n)||sr(n)){var a=new r(n,o);this._data=a._data,this._size=a._size,this._datatype=a._datatype,this._min=null,this._max=null}else if(n&&sr(n.data)&&sr(n.size))this._data=n.data,this._size=n.size,this._datatype=n.datatype,this._min=typeof n.min<"u"?n.min:null,this._max=typeof n.max<"u"?n.max:null;else{if(n)throw new TypeError("Unsupported type of data ("+ir(n)+")");this._data=[],this._size=[0],this._datatype=o,this._min=null,this._max=null}}return i.prototype=new r,i.prototype.type="ImmutableDenseMatrix",i.prototype.isImmutableDenseMatrix=!0,i.prototype.subset=function(n){switch(arguments.length){case 1:{var o=r.prototype.subset.call(this,n);return Je(o)?new i({data:o._data,size:o._size,datatype:o._datatype}):o}case 2:case 3:throw new Error("Cannot invoke set subset on an Immutable Matrix instance");default:throw new SyntaxError("Wrong number of arguments")}},i.prototype.set=function(){throw new Error("Cannot invoke set on an Immutable Matrix instance")},i.prototype.resize=function(){throw new Error("Cannot invoke resize on an Immutable Matrix instance")},i.prototype.reshape=function(){throw new Error("Cannot invoke reshape on an Immutable Matrix instance")},i.prototype.clone=function(){return new i({data:dt(this._data),size:dt(this._size),datatype:this._datatype})},i.prototype.toJSON=function(){return{mathjs:"ImmutableDenseMatrix",data:this._data,size:this._size,datatype:this._datatype}},i.fromJSON=function(n){return new i(n)},i.prototype.swapRows=function(){throw new Error("Cannot invoke swapRows on an Immutable Matrix instance")},i.prototype.min=function(){if(this._min===null){var n=null;this.forEach(function(o){(n===null||e(o,n))&&(n=o)}),this._min=n!==null?n:void 0}return this._min},i.prototype.max=function(){if(this._max===null){var n=null;this.forEach(function(o){(n===null||e(n,o))&&(n=o)}),this._max=n!==null?n:void 0}return this._max},i},{isClass:!0});var ooe="Index",aoe=["ImmutableDenseMatrix","getMatrixDataType"],RO=N(ooe,aoe,t=>{var{ImmutableDenseMatrix:e,getMatrixDataType:r}=t;function i(o){if(!(this instanceof i))throw new SyntaxError("Constructor must be called with the new operator");this._dimensions=[],this._sourceSize=[],this._isScalar=!0;for(var a=0,s=arguments.length;a{r&&e.push(i)}),e}var soe="FibonacciHeap",uoe=["smaller","larger"],LO=N(soe,uoe,t=>{var{smaller:e,larger:r}=t,i=1/Math.log((1+Math.sqrt(5))/2);function n(){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");this._minimum=null,this._size=0}n.prototype.type="FibonacciHeap",n.prototype.isFibonacciHeap=!0,n.prototype.insert=function(c,f){var m={key:c,value:f,degree:0};if(this._minimum){var p=this._minimum;m.left=p,m.right=p.right,p.right=m,m.right.left=m,e(c,p.key)&&(this._minimum=m)}else m.left=m,m.right=m,this._minimum=m;return this._size++,m},n.prototype.size=function(){return this._size},n.prototype.clear=function(){this._minimum=null,this._size=0},n.prototype.isEmpty=function(){return this._size===0},n.prototype.extractMinimum=function(){var c=this._minimum;if(c===null)return c;for(var f=this._minimum,m=c.degree,p=c.child;m>0;){var d=p.right;p.left.right=p.right,p.right.left=p.left,p.left=f,p.right=f.right,f.right=p,p.right.left=p,p.parent=null,p=d,m--}return c.left.right=c.right,c.right.left=c.left,c===c.right?f=null:(f=c.right,f=u(f,this._size)),this._size--,this._minimum=f,c},n.prototype.remove=function(c){this._minimum=o(this._minimum,c,-1),this.extractMinimum()};function o(c,f,m){f.key=m;var p=f.parent;return p&&e(f.key,p.key)&&(a(c,f,p),s(c,p)),e(f.key,c.key)&&(c=f),c}function a(c,f,m){f.left.right=f.right,f.right.left=f.left,m.degree--,m.child===f&&(m.child=f.right),m.degree===0&&(m.child=null),f.left=c,f.right=c.right,c.right=f,f.right.left=f,f.parent=null,f.mark=!1}function s(c,f){var m=f.parent;m&&(f.mark?(a(c,f,m),s(m)):f.mark=!0)}var l=function(f,m){f.left.right=f.right,f.right.left=f.left,f.parent=m,m.child?(f.left=m.child,f.right=m.child.right,m.child.right=f,f.right.left=f):(m.child=f,f.right=f,f.left=f),m.degree++,f.mark=!1};function u(c,f){var m=Math.floor(Math.log(f)*i)+1,p=new Array(m),d=0,h=c;if(h)for(d++,h=h.right;h!==c;)d++,h=h.right;for(var v;d>0;){for(var y=h.degree,S=h.right;v=p[y],!!v;){if(r(h.key,v.key)){var b=v;v=h,h=b}l(v,h),p[y]=null,y++}p[y]=h,h=S,d--}c=null;for(var _=0;_{var{addScalar:e,equalScalar:r,FibonacciHeap:i}=t;function n(){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");this._values=[],this._heap=new i}return n.prototype.type="Spa",n.prototype.isSpa=!0,n.prototype.set=function(o,a){if(this._values[o])this._values[o].value=a;else{var s=this._heap.insert(o,a);this._values[o]=s}},n.prototype.get=function(o){var a=this._values[o];return a?a.value:0},n.prototype.accumulate=function(o,a){var s=this._values[o];s?s.value=e(s.value,a):(s=this._heap.insert(o,a),this._values[o]=s)},n.prototype.forEach=function(o,a,s){var l=this._heap,u=this._values,c=[],f=l.extractMinimum();for(f&&c.push(f);f&&f.key<=a;)f.key>=o&&(r(f.value,0)||s(f.key,f.value,this)),f=l.extractMinimum(),f&&c.push(f);for(var m=0;m1&&arguments[1]!==void 0?arguments[1]:{};return r=r??Number.POSITIVE_INFINITY,e=e??JSON.stringify,function i(){typeof i.cache!="object"&&(i.cache={values:new Map,lru:zO(r||Number.POSITIVE_INFINITY)});for(var n=[],o=0;o{var{on:e,config:r,addScalar:i,subtractScalar:n,multiplyScalar:o,divideScalar:a,pow:s,abs:l,fix:u,round:c,equal:f,isNumeric:m,format:p,toBest:d,number:h,Complex:v,BigNumber:y,Fraction:S}=t,b=h;function _(H,oe){if(!(this instanceof _))throw new Error("Constructor must be called with the new operator");if(!(H==null||m(H)||Qn(H)))throw new TypeError("First parameter in Unit constructor must be number, BigNumber, Fraction, Complex, or undefined");if(this.fixPrefix=!1,this.skipAutomaticSimplification=!0,oe===void 0)this.units=[],this.dimensions=Z.map(De=>0);else if(typeof oe=="string"){var ve=_.parse(oe);this.units=ve.units,this.dimensions=ve.dimensions}else if(En(oe)&&oe.value===null)this.fixPrefix=oe.fixPrefix,this.skipAutomaticSimplification=oe.skipAutomaticSimplification,this.dimensions=oe.dimensions.slice(0),this.units=oe.units.map(De=>Dn({},De));else throw new TypeError("Second parameter in Unit constructor must be a string or valueless Unit");this.value=this._normalize(H)}Object.defineProperty(_,"name",{value:"Unit"}),_.prototype.constructor=_,_.prototype.type="Unit",_.prototype.isUnit=!0;var w,x,E;function T(){for(;E===" "||E===" ";)C()}function D(H){return H>="0"&&H<="9"||H==="."}function M(H){return H>="0"&&H<="9"}function C(){x++,E=w.charAt(x)}function $(H){x=H,E=w.charAt(x)}function O(){var H="",oe=x;if(E==="+"?C():E==="-"&&(H+=E,C()),!D(E))return $(oe),null;if(E==="."){if(H+=E,C(),!M(E))return $(oe),null}else{for(;M(E);)H+=E,C();E==="."&&(H+=E,C())}for(;M(E);)H+=E,C();if(E==="E"||E==="e"){var ve="",De=x;if(ve+=E,C(),(E==="+"||E==="-")&&(ve+=E,C()),!M(E))return $(De),H;for(H=H+ve;M(E);)H+=E,C()}return H}function R(){for(var H="";M(E)||_.isValidAlpha(E);)H+=E,C();var oe=H.charAt(0);return _.isValidAlpha(oe)?H:null}function L(H){return E===H?(C(),H):null}_.parse=function(H,oe){if(oe=oe||{},w=H,x=-1,E="",typeof w!="string")throw new TypeError("Invalid argument in Unit.parse, string expected");var ve=new _;ve.units=[];var De=1,Ee=!1;C(),T();var Ue=O(),He=null;if(Ue){if(r.number==="BigNumber")He=new y(Ue);else if(r.number==="Fraction")try{He=new S(Ue)}catch{He=parseFloat(Ue)}else He=parseFloat(Ue);T(),L("*")?(De=1,Ee=!0):L("/")&&(De=-1,Ee=!0)}for(var nt=[],ke=1;;){for(T();E==="(";)nt.push(De),ke*=De,De=1,C(),T();var Y=void 0;if(E){var me=E;if(Y=R(),Y===null)throw new SyntaxError('Unexpected "'+me+'" in "'+w+'" at index '+x.toString())}else break;var ce=k(Y);if(ce===null)throw new SyntaxError('Unit "'+Y+'" not found.');var Ce=De*ke;if(T(),L("^")){T();var Pe=O();if(Pe===null)throw new SyntaxError('In "'+H+'", "^" must be followed by a floating-point number');Ce*=Pe}ve.units.push({unit:ce.unit,prefix:ce.prefix,power:Ce});for(var we=0;we1||Math.abs(this.units[0].power-1)>1e-15},_.prototype._normalize=function(H){if(H==null||this.units.length===0)return H;for(var oe=H,ve=_._getNumberConverter(ir(H)),De=0;De{if(rt(G,H)){var oe=G[H],ve=oe.prefixes[""];return{unit:oe,prefix:ve}}for(var De in G)if(rt(G,De)&&XF(H,De)){var Ee=G[De],Ue=H.length-De.length,He=H.substring(0,Ue),nt=rt(Ee.prefixes,He)?Ee.prefixes[He]:void 0;if(nt!==void 0)return{unit:Ee,prefix:nt}}return null},{hasher:H=>H[0],limit:100});_.isValuelessUnit=function(H){return k(H)!==null},_.prototype.hasBase=function(H){if(typeof H=="string"&&(H=q[H]),!H)return!1;for(var oe=0;oe1e-12)return!1;return!0},_.prototype.equalBase=function(H){for(var oe=0;oe1e-12)return!1;return!0},_.prototype.equals=function(H){return this.equalBase(H)&&f(this.value,H.value)},_.prototype.multiply=function(H){for(var oe=this.clone(),ve=En(H)?H:new _(H),De=0;De0?this.formatUnits():null,fixPrefix:this.fixPrefix}},_.fromJSON=function(H){var oe,ve=new _(H.value,(oe=H.unit)!==null&&oe!==void 0?oe:void 0);return ve.fixPrefix=H.fixPrefix||!1,ve},_.prototype.valueOf=_.prototype.toString,_.prototype.simplify=function(){var H=this.clone(),oe=[],ve;for(var De in le)if(rt(le,De)&&H.hasBase(q[De])){ve=De;break}if(ve==="NONE")H.units=[];else{var Ee;if(ve&&rt(le,ve)&&(Ee=le[ve]),Ee)H.units=[{unit:Ee.unit,prefix:Ee.prefix,power:1}];else{for(var Ue=!1,He=0;He1e-12&&(rt(le,nt)?oe.push({unit:le[nt].unit,prefix:le[nt].prefix,power:H.dimensions[He]||0}):Ue=!0)}oe.length1e-12)if(rt(ae.si,De))oe.push({unit:ae.si[De].unit,prefix:ae.si[De].prefix,power:H.dimensions[ve]||0});else throw new Error("Cannot express custom unit "+De+" in SI units")}return H.units=oe,H.fixPrefix=!0,H.skipAutomaticSimplification=!0,this.value!==null?(H.value=null,this.to(H)):H},_.prototype.formatUnits=function(){for(var H="",oe="",ve=0,De=0,Ee=0;Ee0?(ve++,H+=" "+this.units[Ee].prefix.name+this.units[Ee].unit.name,Math.abs(this.units[Ee].power-1)>1e-15&&(H+="^"+this.units[Ee].power)):this.units[Ee].power<0&&De++;if(De>0)for(var Ue=0;Ue0?(oe+=" "+this.units[Ue].prefix.name+this.units[Ue].unit.name,Math.abs(this.units[Ue].power+1)>1e-15&&(oe+="^"+-this.units[Ue].power)):(oe+=" "+this.units[Ue].prefix.name+this.units[Ue].unit.name,oe+="^"+this.units[Ue].power));H=H.substr(1),oe=oe.substr(1),ve>1&&De>0&&(H="("+H+")"),De>1&&ve>0&&(oe="("+oe+")");var He=H;return ve>0&&De>0&&(He+=" / "),He+=oe,He},_.prototype.toBest=function(){var H=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],oe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(H&&!Array.isArray(H))throw new Error("Invalid unit type. Expected string or Unit.");var ve=this.units[0].unit.prefixes;if(H&&H.length>0){var De=H.map(He=>{var nt=null;if(typeof He=="string"){if(nt=_.parse(He),!nt)throw new Error("Invalid unit type. Expected compatible string or Unit.")}else if(!En(He))throw new Error("Invalid unit type. Expected compatible string or Unit.");nt===null&&(nt=He.clone());try{return this.to(nt.formatUnits()),nt}catch{throw new Error("Invalid unit type. Expected compatible string or Unit.")}}),Ee=De.map(He=>He.units[0].prefix);this.units[0].unit.prefixes=Ee.reduce((He,nt)=>(He[nt.name]=nt,He),{}),this.units[0].prefix=Ee[0]}var Ue=W(this,oe).simp;return this.units[0].unit.prefixes=ve,Ue.fixPrefix=!0,Ue},_.prototype.format=function(H){var{simp:oe,valueStr:ve,unitStr:De}=W(this,H),Ee=ve;return oe.value&&Qn(oe.value)&&(Ee="("+Ee+")"),De.length>0&&Ee.length>0&&(Ee+=" "),Ee+=De,Ee};function W(H){var oe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ve=H.skipAutomaticSimplification||H.value===null?H.clone():H.simplify();Q(ve),ie(ve,oe.offset);var De=ve._denormalize(ve.value),Ee=ve.value!==null?p(De,oe||{}):"",Ue=ve.formatUnits();return{simp:ve,valueStr:Ee,unitStr:Ue}}function Q(H){var oe=!1;typeof H.value<"u"&&H.value!==null&&Qn(H.value)&&(oe=Math.abs(H.value.re)<1e-14);for(var ve in H.units)rt(H.units,ve)&&H.units[ve].unit&&(H.units[ve].unit.name==="VA"&&oe?H.units[ve].unit=G.VAR:H.units[ve].unit.name==="VAR"&&!oe&&(H.units[ve].unit=G.VA))}function ie(H,oe){H.units.length===1&&!H.fixPrefix&&Math.abs(H.units[0].power-Math.round(H.units[0].power))<1e-14&&(H.units[0].prefix=H._bestPrefix(oe))}_.prototype._bestPrefix=function(){var H=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1.2;if(this.units.length!==1)throw new Error("Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!");if(Math.abs(this.units[0].power-Math.round(this.units[0].power))>=1e-14)throw new Error("Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!");var oe=this.value!==null?l(this.value):0,ve=l(this.units[0].unit.value),De=this.units[0].prefix;if(oe===0)return De;var Ee=this.units[0].power,Ue=Math.log(oe/Math.pow(De.value*ve,Ee))/Math.LN10-H;if(Ue>-2.200001&&Ue<1.800001)return De;Ue=Math.abs(Ue);var He=this.units[0].unit.prefixes;for(var nt in He)if(rt(He,nt)){var ke=He[nt];if(ke.scientific){var Y=Math.abs(Math.log(oe/Math.pow(ke.value*ve,Ee))/Math.LN10-H);(Y0)},G={meter:{name:"meter",base:q.LENGTH,prefixes:B.LONG,value:1,offset:0},inch:{name:"inch",base:q.LENGTH,prefixes:B.NONE,value:.0254,offset:0},foot:{name:"foot",base:q.LENGTH,prefixes:B.NONE,value:.3048,offset:0},yard:{name:"yard",base:q.LENGTH,prefixes:B.NONE,value:.9144,offset:0},mile:{name:"mile",base:q.LENGTH,prefixes:B.NONE,value:1609.344,offset:0},link:{name:"link",base:q.LENGTH,prefixes:B.NONE,value:.201168,offset:0},rod:{name:"rod",base:q.LENGTH,prefixes:B.NONE,value:5.0292,offset:0},chain:{name:"chain",base:q.LENGTH,prefixes:B.NONE,value:20.1168,offset:0},angstrom:{name:"angstrom",base:q.LENGTH,prefixes:B.NONE,value:1e-10,offset:0},m:{name:"m",base:q.LENGTH,prefixes:B.SHORT,value:1,offset:0},in:{name:"in",base:q.LENGTH,prefixes:B.NONE,value:.0254,offset:0},ft:{name:"ft",base:q.LENGTH,prefixes:B.NONE,value:.3048,offset:0},yd:{name:"yd",base:q.LENGTH,prefixes:B.NONE,value:.9144,offset:0},mi:{name:"mi",base:q.LENGTH,prefixes:B.NONE,value:1609.344,offset:0},li:{name:"li",base:q.LENGTH,prefixes:B.NONE,value:.201168,offset:0},rd:{name:"rd",base:q.LENGTH,prefixes:B.NONE,value:5.02921,offset:0},ch:{name:"ch",base:q.LENGTH,prefixes:B.NONE,value:20.1168,offset:0},mil:{name:"mil",base:q.LENGTH,prefixes:B.NONE,value:254e-7,offset:0},m2:{name:"m2",base:q.SURFACE,prefixes:B.SQUARED,value:1,offset:0},sqin:{name:"sqin",base:q.SURFACE,prefixes:B.NONE,value:64516e-8,offset:0},sqft:{name:"sqft",base:q.SURFACE,prefixes:B.NONE,value:.09290304,offset:0},sqyd:{name:"sqyd",base:q.SURFACE,prefixes:B.NONE,value:.83612736,offset:0},sqmi:{name:"sqmi",base:q.SURFACE,prefixes:B.NONE,value:2589988110336e-6,offset:0},sqrd:{name:"sqrd",base:q.SURFACE,prefixes:B.NONE,value:25.29295,offset:0},sqch:{name:"sqch",base:q.SURFACE,prefixes:B.NONE,value:404.6873,offset:0},sqmil:{name:"sqmil",base:q.SURFACE,prefixes:B.NONE,value:64516e-14,offset:0},acre:{name:"acre",base:q.SURFACE,prefixes:B.NONE,value:4046.86,offset:0},hectare:{name:"hectare",base:q.SURFACE,prefixes:B.NONE,value:1e4,offset:0},m3:{name:"m3",base:q.VOLUME,prefixes:B.CUBIC,value:1,offset:0},L:{name:"L",base:q.VOLUME,prefixes:B.SHORT,value:.001,offset:0},l:{name:"l",base:q.VOLUME,prefixes:B.SHORT,value:.001,offset:0},litre:{name:"litre",base:q.VOLUME,prefixes:B.LONG,value:.001,offset:0},cuin:{name:"cuin",base:q.VOLUME,prefixes:B.NONE,value:16387064e-12,offset:0},cuft:{name:"cuft",base:q.VOLUME,prefixes:B.NONE,value:.028316846592,offset:0},cuyd:{name:"cuyd",base:q.VOLUME,prefixes:B.NONE,value:.764554857984,offset:0},teaspoon:{name:"teaspoon",base:q.VOLUME,prefixes:B.NONE,value:5e-6,offset:0},tablespoon:{name:"tablespoon",base:q.VOLUME,prefixes:B.NONE,value:15e-6,offset:0},drop:{name:"drop",base:q.VOLUME,prefixes:B.NONE,value:5e-8,offset:0},gtt:{name:"gtt",base:q.VOLUME,prefixes:B.NONE,value:5e-8,offset:0},minim:{name:"minim",base:q.VOLUME,prefixes:B.NONE,value:61611519921875e-21,offset:0},fluiddram:{name:"fluiddram",base:q.VOLUME,prefixes:B.NONE,value:36966911953125e-19,offset:0},fluidounce:{name:"fluidounce",base:q.VOLUME,prefixes:B.NONE,value:295735295625e-16,offset:0},gill:{name:"gill",base:q.VOLUME,prefixes:B.NONE,value:.00011829411825,offset:0},cc:{name:"cc",base:q.VOLUME,prefixes:B.NONE,value:1e-6,offset:0},cup:{name:"cup",base:q.VOLUME,prefixes:B.NONE,value:.0002365882365,offset:0},pint:{name:"pint",base:q.VOLUME,prefixes:B.NONE,value:.000473176473,offset:0},quart:{name:"quart",base:q.VOLUME,prefixes:B.NONE,value:.000946352946,offset:0},gallon:{name:"gallon",base:q.VOLUME,prefixes:B.NONE,value:.003785411784,offset:0},beerbarrel:{name:"beerbarrel",base:q.VOLUME,prefixes:B.NONE,value:.117347765304,offset:0},oilbarrel:{name:"oilbarrel",base:q.VOLUME,prefixes:B.NONE,value:.158987294928,offset:0},hogshead:{name:"hogshead",base:q.VOLUME,prefixes:B.NONE,value:.238480942392,offset:0},g:{name:"g",base:q.MASS,prefixes:B.SHORT,value:.001,offset:0},gram:{name:"gram",base:q.MASS,prefixes:B.LONG,value:.001,offset:0},ton:{name:"ton",base:q.MASS,prefixes:B.SHORT,value:907.18474,offset:0},t:{name:"t",base:q.MASS,prefixes:B.SHORT,value:1e3,offset:0},tonne:{name:"tonne",base:q.MASS,prefixes:B.LONG,value:1e3,offset:0},grain:{name:"grain",base:q.MASS,prefixes:B.NONE,value:6479891e-11,offset:0},dram:{name:"dram",base:q.MASS,prefixes:B.NONE,value:.0017718451953125,offset:0},ounce:{name:"ounce",base:q.MASS,prefixes:B.NONE,value:.028349523125,offset:0},poundmass:{name:"poundmass",base:q.MASS,prefixes:B.NONE,value:.45359237,offset:0},hundredweight:{name:"hundredweight",base:q.MASS,prefixes:B.NONE,value:45.359237,offset:0},stick:{name:"stick",base:q.MASS,prefixes:B.NONE,value:.115,offset:0},stone:{name:"stone",base:q.MASS,prefixes:B.NONE,value:6.35029318,offset:0},gr:{name:"gr",base:q.MASS,prefixes:B.NONE,value:6479891e-11,offset:0},dr:{name:"dr",base:q.MASS,prefixes:B.NONE,value:.0017718451953125,offset:0},oz:{name:"oz",base:q.MASS,prefixes:B.NONE,value:.028349523125,offset:0},lbm:{name:"lbm",base:q.MASS,prefixes:B.NONE,value:.45359237,offset:0},cwt:{name:"cwt",base:q.MASS,prefixes:B.NONE,value:45.359237,offset:0},s:{name:"s",base:q.TIME,prefixes:B.SHORT,value:1,offset:0},min:{name:"min",base:q.TIME,prefixes:B.NONE,value:60,offset:0},h:{name:"h",base:q.TIME,prefixes:B.NONE,value:3600,offset:0},second:{name:"second",base:q.TIME,prefixes:B.LONG,value:1,offset:0},sec:{name:"sec",base:q.TIME,prefixes:B.LONG,value:1,offset:0},minute:{name:"minute",base:q.TIME,prefixes:B.NONE,value:60,offset:0},hour:{name:"hour",base:q.TIME,prefixes:B.NONE,value:3600,offset:0},day:{name:"day",base:q.TIME,prefixes:B.NONE,value:86400,offset:0},week:{name:"week",base:q.TIME,prefixes:B.NONE,value:7*86400,offset:0},month:{name:"month",base:q.TIME,prefixes:B.NONE,value:2629800,offset:0},year:{name:"year",base:q.TIME,prefixes:B.NONE,value:31557600,offset:0},decade:{name:"decade",base:q.TIME,prefixes:B.NONE,value:315576e3,offset:0},century:{name:"century",base:q.TIME,prefixes:B.NONE,value:315576e4,offset:0},millennium:{name:"millennium",base:q.TIME,prefixes:B.NONE,value:315576e5,offset:0},hertz:{name:"Hertz",base:q.FREQUENCY,prefixes:B.LONG,value:1,offset:0,reciprocal:!0},Hz:{name:"Hz",base:q.FREQUENCY,prefixes:B.SHORT,value:1,offset:0,reciprocal:!0},rad:{name:"rad",base:q.ANGLE,prefixes:B.SHORT,value:1,offset:0},radian:{name:"radian",base:q.ANGLE,prefixes:B.LONG,value:1,offset:0},deg:{name:"deg",base:q.ANGLE,prefixes:B.SHORT,value:null,offset:0},degree:{name:"degree",base:q.ANGLE,prefixes:B.LONG,value:null,offset:0},grad:{name:"grad",base:q.ANGLE,prefixes:B.SHORT,value:null,offset:0},gradian:{name:"gradian",base:q.ANGLE,prefixes:B.LONG,value:null,offset:0},cycle:{name:"cycle",base:q.ANGLE,prefixes:B.NONE,value:null,offset:0},arcsec:{name:"arcsec",base:q.ANGLE,prefixes:B.NONE,value:null,offset:0},arcmin:{name:"arcmin",base:q.ANGLE,prefixes:B.NONE,value:null,offset:0},A:{name:"A",base:q.CURRENT,prefixes:B.SHORT,value:1,offset:0},ampere:{name:"ampere",base:q.CURRENT,prefixes:B.LONG,value:1,offset:0},K:{name:"K",base:q.TEMPERATURE,prefixes:B.SHORT,value:1,offset:0},degC:{name:"degC",base:q.TEMPERATURE,prefixes:B.SHORT,value:1,offset:273.15},degF:{name:"degF",base:q.TEMPERATURE,prefixes:B.SHORT,value:new S(5,9),offset:459.67},degR:{name:"degR",base:q.TEMPERATURE,prefixes:B.SHORT,value:new S(5,9),offset:0},kelvin:{name:"kelvin",base:q.TEMPERATURE,prefixes:B.LONG,value:1,offset:0},celsius:{name:"celsius",base:q.TEMPERATURE,prefixes:B.LONG,value:1,offset:273.15},fahrenheit:{name:"fahrenheit",base:q.TEMPERATURE,prefixes:B.LONG,value:new S(5,9),offset:459.67},rankine:{name:"rankine",base:q.TEMPERATURE,prefixes:B.LONG,value:new S(5,9),offset:0},mol:{name:"mol",base:q.AMOUNT_OF_SUBSTANCE,prefixes:B.SHORT,value:1,offset:0},mole:{name:"mole",base:q.AMOUNT_OF_SUBSTANCE,prefixes:B.LONG,value:1,offset:0},cd:{name:"cd",base:q.LUMINOUS_INTENSITY,prefixes:B.SHORT,value:1,offset:0},candela:{name:"candela",base:q.LUMINOUS_INTENSITY,prefixes:B.LONG,value:1,offset:0},N:{name:"N",base:q.FORCE,prefixes:B.SHORT,value:1,offset:0},newton:{name:"newton",base:q.FORCE,prefixes:B.LONG,value:1,offset:0},dyn:{name:"dyn",base:q.FORCE,prefixes:B.SHORT,value:1e-5,offset:0},dyne:{name:"dyne",base:q.FORCE,prefixes:B.LONG,value:1e-5,offset:0},lbf:{name:"lbf",base:q.FORCE,prefixes:B.NONE,value:4.4482216152605,offset:0},poundforce:{name:"poundforce",base:q.FORCE,prefixes:B.NONE,value:4.4482216152605,offset:0},kip:{name:"kip",base:q.FORCE,prefixes:B.LONG,value:4448.2216,offset:0},kilogramforce:{name:"kilogramforce",base:q.FORCE,prefixes:B.NONE,value:9.80665,offset:0},J:{name:"J",base:q.ENERGY,prefixes:B.SHORT,value:1,offset:0},joule:{name:"joule",base:q.ENERGY,prefixes:B.LONG,value:1,offset:0},erg:{name:"erg",base:q.ENERGY,prefixes:B.SHORTLONG,value:1e-7,offset:0},Wh:{name:"Wh",base:q.ENERGY,prefixes:B.SHORT,value:3600,offset:0},BTU:{name:"BTU",base:q.ENERGY,prefixes:B.BTU,value:1055.05585262,offset:0},eV:{name:"eV",base:q.ENERGY,prefixes:B.SHORT,value:1602176565e-28,offset:0},electronvolt:{name:"electronvolt",base:q.ENERGY,prefixes:B.LONG,value:1602176565e-28,offset:0},W:{name:"W",base:q.POWER,prefixes:B.SHORT,value:1,offset:0},watt:{name:"watt",base:q.POWER,prefixes:B.LONG,value:1,offset:0},hp:{name:"hp",base:q.POWER,prefixes:B.NONE,value:745.6998715386,offset:0},VAR:{name:"VAR",base:q.POWER,prefixes:B.SHORT,value:v.I,offset:0},VA:{name:"VA",base:q.POWER,prefixes:B.SHORT,value:1,offset:0},Pa:{name:"Pa",base:q.PRESSURE,prefixes:B.SHORT,value:1,offset:0},psi:{name:"psi",base:q.PRESSURE,prefixes:B.NONE,value:6894.75729276459,offset:0},atm:{name:"atm",base:q.PRESSURE,prefixes:B.NONE,value:101325,offset:0},bar:{name:"bar",base:q.PRESSURE,prefixes:B.SHORTLONG,value:1e5,offset:0},torr:{name:"torr",base:q.PRESSURE,prefixes:B.NONE,value:133.322,offset:0},mmHg:{name:"mmHg",base:q.PRESSURE,prefixes:B.NONE,value:133.322,offset:0},mmH2O:{name:"mmH2O",base:q.PRESSURE,prefixes:B.NONE,value:9.80665,offset:0},cmH2O:{name:"cmH2O",base:q.PRESSURE,prefixes:B.NONE,value:98.0665,offset:0},coulomb:{name:"coulomb",base:q.ELECTRIC_CHARGE,prefixes:B.LONG,value:1,offset:0},C:{name:"C",base:q.ELECTRIC_CHARGE,prefixes:B.SHORT,value:1,offset:0},farad:{name:"farad",base:q.ELECTRIC_CAPACITANCE,prefixes:B.LONG,value:1,offset:0},F:{name:"F",base:q.ELECTRIC_CAPACITANCE,prefixes:B.SHORT,value:1,offset:0},volt:{name:"volt",base:q.ELECTRIC_POTENTIAL,prefixes:B.LONG,value:1,offset:0},V:{name:"V",base:q.ELECTRIC_POTENTIAL,prefixes:B.SHORT,value:1,offset:0},ohm:{name:"ohm",base:q.ELECTRIC_RESISTANCE,prefixes:B.SHORTLONG,value:1,offset:0},henry:{name:"henry",base:q.ELECTRIC_INDUCTANCE,prefixes:B.LONG,value:1,offset:0},H:{name:"H",base:q.ELECTRIC_INDUCTANCE,prefixes:B.SHORT,value:1,offset:0},siemens:{name:"siemens",base:q.ELECTRIC_CONDUCTANCE,prefixes:B.LONG,value:1,offset:0},S:{name:"S",base:q.ELECTRIC_CONDUCTANCE,prefixes:B.SHORT,value:1,offset:0},weber:{name:"weber",base:q.MAGNETIC_FLUX,prefixes:B.LONG,value:1,offset:0},Wb:{name:"Wb",base:q.MAGNETIC_FLUX,prefixes:B.SHORT,value:1,offset:0},tesla:{name:"tesla",base:q.MAGNETIC_FLUX_DENSITY,prefixes:B.LONG,value:1,offset:0},T:{name:"T",base:q.MAGNETIC_FLUX_DENSITY,prefixes:B.SHORT,value:1,offset:0},b:{name:"b",base:q.BIT,prefixes:B.BINARY_SHORT,value:1,offset:0},bits:{name:"bits",base:q.BIT,prefixes:B.BINARY_LONG,value:1,offset:0},B:{name:"B",base:q.BIT,prefixes:B.BINARY_SHORT,value:8,offset:0},bytes:{name:"bytes",base:q.BIT,prefixes:B.BINARY_LONG,value:8,offset:0}},K={meters:"meter",inches:"inch",feet:"foot",yards:"yard",miles:"mile",links:"link",rods:"rod",chains:"chain",angstroms:"angstrom",lt:"l",litres:"litre",liter:"litre",liters:"litre",teaspoons:"teaspoon",tablespoons:"tablespoon",minims:"minim",fldr:"fluiddram",fluiddrams:"fluiddram",floz:"fluidounce",fluidounces:"fluidounce",gi:"gill",gills:"gill",cp:"cup",cups:"cup",pt:"pint",pints:"pint",qt:"quart",quarts:"quart",gal:"gallon",gallons:"gallon",bbl:"beerbarrel",beerbarrels:"beerbarrel",obl:"oilbarrel",oilbarrels:"oilbarrel",hogsheads:"hogshead",gtts:"gtt",grams:"gram",tons:"ton",tonnes:"tonne",grains:"grain",drams:"dram",ounces:"ounce",poundmasses:"poundmass",hundredweights:"hundredweight",sticks:"stick",lb:"lbm",lbs:"lbm",kips:"kip",kgf:"kilogramforce",acres:"acre",hectares:"hectare",sqfeet:"sqft",sqyard:"sqyd",sqmile:"sqmi",sqmiles:"sqmi",mmhg:"mmHg",mmh2o:"mmH2O",cmh2o:"cmH2O",seconds:"second",secs:"second",minutes:"minute",mins:"minute",hours:"hour",hr:"hour",hrs:"hour",days:"day",weeks:"week",months:"month",years:"year",decades:"decade",centuries:"century",millennia:"millennium",hertz:"hertz",radians:"radian",degrees:"degree",gradians:"gradian",cycles:"cycle",arcsecond:"arcsec",arcseconds:"arcsec",arcminute:"arcmin",arcminutes:"arcmin",BTUs:"BTU",watts:"watt",joules:"joule",amperes:"ampere",amps:"ampere",amp:"ampere",coulombs:"coulomb",volts:"volt",ohms:"ohm",farads:"farad",webers:"weber",teslas:"tesla",electronvolts:"electronvolt",moles:"mole",bit:"bits",byte:"bytes"};function re(H){if(H.number==="BigNumber"){var oe=um(y);G.rad.value=new y(1),G.deg.value=oe.div(180),G.grad.value=oe.div(200),G.cycle.value=oe.times(2),G.arcsec.value=oe.div(648e3),G.arcmin.value=oe.div(10800)}else G.rad.value=1,G.deg.value=Math.PI/180,G.grad.value=Math.PI/200,G.cycle.value=Math.PI*2,G.arcsec.value=Math.PI/648e3,G.arcmin.value=Math.PI/10800;G.radian.value=G.rad.value,G.degree.value=G.deg.value,G.gradian.value=G.grad.value}re(r),e&&e("config",function(H,oe){H.number!==oe.number&&re(H)});var ae={si:{NONE:{unit:be,prefix:B.NONE[""]},LENGTH:{unit:G.m,prefix:B.SHORT[""]},MASS:{unit:G.g,prefix:B.SHORT.k},TIME:{unit:G.s,prefix:B.SHORT[""]},CURRENT:{unit:G.A,prefix:B.SHORT[""]},TEMPERATURE:{unit:G.K,prefix:B.SHORT[""]},LUMINOUS_INTENSITY:{unit:G.cd,prefix:B.SHORT[""]},AMOUNT_OF_SUBSTANCE:{unit:G.mol,prefix:B.SHORT[""]},ANGLE:{unit:G.rad,prefix:B.SHORT[""]},BIT:{unit:G.bits,prefix:B.SHORT[""]},FORCE:{unit:G.N,prefix:B.SHORT[""]},ENERGY:{unit:G.J,prefix:B.SHORT[""]},POWER:{unit:G.W,prefix:B.SHORT[""]},PRESSURE:{unit:G.Pa,prefix:B.SHORT[""]},ELECTRIC_CHARGE:{unit:G.C,prefix:B.SHORT[""]},ELECTRIC_CAPACITANCE:{unit:G.F,prefix:B.SHORT[""]},ELECTRIC_POTENTIAL:{unit:G.V,prefix:B.SHORT[""]},ELECTRIC_RESISTANCE:{unit:G.ohm,prefix:B.SHORT[""]},ELECTRIC_INDUCTANCE:{unit:G.H,prefix:B.SHORT[""]},ELECTRIC_CONDUCTANCE:{unit:G.S,prefix:B.SHORT[""]},MAGNETIC_FLUX:{unit:G.Wb,prefix:B.SHORT[""]},MAGNETIC_FLUX_DENSITY:{unit:G.T,prefix:B.SHORT[""]},FREQUENCY:{unit:G.Hz,prefix:B.SHORT[""]}}};ae.cgs=JSON.parse(JSON.stringify(ae.si)),ae.cgs.LENGTH={unit:G.m,prefix:B.SHORT.c},ae.cgs.MASS={unit:G.g,prefix:B.SHORT[""]},ae.cgs.FORCE={unit:G.dyn,prefix:B.SHORT[""]},ae.cgs.ENERGY={unit:G.erg,prefix:B.NONE[""]},ae.us=JSON.parse(JSON.stringify(ae.si)),ae.us.LENGTH={unit:G.ft,prefix:B.NONE[""]},ae.us.MASS={unit:G.lbm,prefix:B.NONE[""]},ae.us.TEMPERATURE={unit:G.degF,prefix:B.NONE[""]},ae.us.FORCE={unit:G.lbf,prefix:B.NONE[""]},ae.us.ENERGY={unit:G.BTU,prefix:B.BTU[""]},ae.us.POWER={unit:G.hp,prefix:B.NONE[""]},ae.us.PRESSURE={unit:G.psi,prefix:B.NONE[""]},ae.auto=JSON.parse(JSON.stringify(ae.si));var le=ae.auto;_.setUnitSystem=function(H){if(rt(ae,H))le=ae[H];else throw new Error("Unit system "+H+" does not exist. Choices are: "+Object.keys(ae).join(", "))},_.getUnitSystem=function(){for(var H in ae)if(rt(ae,H)&&ae[H]===le)return H},_.typeConverters={BigNumber:function(oe){return oe!=null&&oe.isFraction?new y(String(oe.n)).div(String(oe.d)).times(String(oe.s)):new y(oe+"")},Fraction:function(oe){return new S(oe)},Complex:function(oe){return oe},number:function(oe){return oe!=null&&oe.isFraction?h(oe):oe}},_.prototype._numberConverter=function(){var H=_.typeConverters[this.valueType()];if(H)return H;throw new TypeError('Unsupported Unit value type "'+this.valueType()+'"')},_._getNumberConverter=function(H){if(!_.typeConverters[H])throw new TypeError('Unsupported type "'+H+'"');return _.typeConverters[H]};for(var Se in G)if(rt(G,Se)){var _e=G[Se];_e.dimensions=_e.base.dimensions}for(var Oe in K)if(rt(K,Oe)){var st=G[K[Oe]],yt={};for(var Qe in st)rt(st,Qe)&&(yt[Qe]=st[Qe]);yt.name=Oe,G[Oe]=yt}_.isValidAlpha=function(oe){return/^[a-zA-Z]$/.test(oe)};function ut(H){for(var oe=0;oe0&&!(_.isValidAlpha(E)||M(E)))throw new Error('Invalid unit name (only alphanumeric characters are allowed): "'+H+'"')}}return _.createUnit=function(H,oe){if(typeof H!="object")throw new TypeError("createUnit expects first parameter to be of type 'Object'");if(oe&&oe.override){for(var ve in H)if(rt(H,ve)&&_.deleteUnit(ve),H[ve].aliases)for(var De=0;De"u"||oe===null)&&(oe={}),typeof H!="string")throw new TypeError("createUnitSingle expects first parameter to be of type 'string'");if(rt(G,H))throw new Error('Cannot create unit "'+H+'": a unit with that name already exists');ut(H);var ve=null,De=[],Ee=0,Ue,He,nt;if(oe&&oe.type==="Unit")ve=oe.clone();else if(typeof oe=="string")oe!==""&&(Ue=oe);else if(typeof oe=="object")Ue=oe.definition,He=oe.prefixes,Ee=oe.offset,nt=oe.baseName,oe.aliases&&(De=oe.aliases.valueOf());else throw new TypeError('Cannot create unit "'+H+'" from "'+oe.toString()+'": expecting "string" or "Unit" or "Object"');if(De){for(var ke=0;ke1e-12){We=!1;break}if(We){Pe=!0,Y.base=q[we];break}}if(!Pe){nt=nt||H+"_STUFF";var X={dimensions:ve.dimensions.slice(0)};X.key=nt,q[nt]=X,le[nt]={unit:Y,prefix:B.NONE[""]},Y.base=q[nt]}}else{if(nt=nt||H+"_STUFF",Z.indexOf(nt)>=0)throw new Error('Cannot create new base unit "'+H+'": a base unit with that name already exists (and cannot be overridden)');Z.push(nt);for(var me in q)rt(q,me)&&(q[me].dimensions[Z.length-1]=0);for(var ce={dimensions:[]},Ce=0;Ce{var{typed:e,Unit:r}=t;return e(WO,{Unit:function(n){return n.clone()},string:function(n){return r.isValuelessUnit(n)?new r(null,n):r.parse(n,{allowNoUnits:!0})},"number | BigNumber | Fraction | Complex, string | Unit":function(n,o){return new r(n,o)},"number | BigNumber | Fraction":function(n){return new r(n)},"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var YO="sparse",doe=["typed","SparseMatrix"],JO=N(YO,doe,t=>{var{typed:e,SparseMatrix:r}=t;return e(YO,{"":function(){return new r([])},string:function(n){return new r([],n)},"Array | Matrix":function(n){return new r(n)},"Array | Matrix, string":function(n,o){return new r(n,o)}})});var XO="createUnit",hoe=["typed","Unit"],KO=N(XO,hoe,t=>{var{typed:e,Unit:r}=t;return e(XO,{"Object, Object":function(n,o){return r.createUnit(n,o)},Object:function(n){return r.createUnit(n,{})},"string, Unit | string | Object, Object":function(n,o,a){var s={};return s[n]=o,r.createUnit(s,a)},"string, Unit | string | Object":function(n,o){var a={};return a[n]=o,r.createUnit(a,{})},string:function(n){var o={};return o[n]={},r.createUnit(o,{})}})});var QO="acos",goe=["typed","config","Complex"],eR=N(QO,goe,t=>{var{typed:e,config:r,Complex:i}=t;return e(QO,{number:function(o){return o>=-1&&o<=1||r.predictable?Math.acos(o):new i(o,0).acos()},Complex:function(o){return o.acos()},BigNumber:function(o){return o.acos()}})});var tR="acosh",voe=["typed","config","Complex"],rR=N(tR,voe,t=>{var{typed:e,config:r,Complex:i}=t;return e(tR,{number:function(o){return o>=1||r.predictable?vE(o):o<=-1?new i(Math.log(Math.sqrt(o*o-1)-o),Math.PI):new i(o,0).acosh()},Complex:function(o){return o.acosh()},BigNumber:function(o){return o.acosh()}})});var nR="acot",yoe=["typed","BigNumber"],iR=N(nR,yoe,t=>{var{typed:e,BigNumber:r}=t;return e(nR,{number:yE,Complex:function(n){return n.acot()},BigNumber:function(n){return new r(1).div(n).atan()}})});var oR="acoth",boe=["typed","config","Complex","BigNumber"],aR=N(oR,boe,t=>{var{typed:e,config:r,Complex:i,BigNumber:n}=t;return e(oR,{number:function(a){return a>=1||a<=-1||r.predictable?bE(a):new i(a,0).acoth()},Complex:function(a){return a.acoth()},BigNumber:function(a){return new n(1).div(a).atanh()}})});var sR="acsc",xoe=["typed","config","Complex","BigNumber"],uR=N(sR,xoe,t=>{var{typed:e,config:r,Complex:i,BigNumber:n}=t;return e(sR,{number:function(a){return a<=-1||a>=1||r.predictable?xE(a):new i(a,0).acsc()},Complex:function(a){return a.acsc()},BigNumber:function(a){return new n(1).div(a).asin()}})});var lR="acsch",_oe=["typed","BigNumber"],cR=N(lR,_oe,t=>{var{typed:e,BigNumber:r}=t;return e(lR,{number:_E,Complex:function(n){return n.acsch()},BigNumber:function(n){return new r(1).div(n).asinh()}})});var fR="asec",woe=["typed","config","Complex","BigNumber"],pR=N(fR,woe,t=>{var{typed:e,config:r,Complex:i,BigNumber:n}=t;return e(fR,{number:function(a){return a<=-1||a>=1||r.predictable?wE(a):new i(a,0).asec()},Complex:function(a){return a.asec()},BigNumber:function(a){return new n(1).div(a).acos()}})});var mR="asech",Soe=["typed","config","Complex","BigNumber"],dR=N(mR,Soe,t=>{var{typed:e,config:r,Complex:i,BigNumber:n}=t;return e(mR,{number:function(a){if(a<=1&&a>=-1||r.predictable){var s=1/a;if(s>0||r.predictable)return SE(a);var l=Math.sqrt(s*s-1);return new i(Math.log(l-s),Math.PI)}return new i(a,0).asech()},Complex:function(a){return a.asech()},BigNumber:function(a){return new n(1).div(a).acosh()}})});var hR="asin",Doe=["typed","config","Complex"],gR=N(hR,Doe,t=>{var{typed:e,config:r,Complex:i}=t;return e(hR,{number:function(o){return o>=-1&&o<=1||r.predictable?Math.asin(o):new i(o,0).asin()},Complex:function(o){return o.asin()},BigNumber:function(o){return o.asin()}})});var Eoe="asinh",Aoe=["typed"],vR=N(Eoe,Aoe,t=>{var{typed:e}=t;return e("asinh",{number:DE,Complex:function(i){return i.asinh()},BigNumber:function(i){return i.asinh()}})});var Toe="atan",Noe=["typed"],yR=N(Toe,Noe,t=>{var{typed:e}=t;return e("atan",{number:function(i){return Math.atan(i)},Complex:function(i){return i.atan()},BigNumber:function(i){return i.atan()}})});var bR="atan2",Moe=["typed","matrix","equalScalar","BigNumber","DenseMatrix","concat"],xR=N(bR,Moe,t=>{var{typed:e,matrix:r,equalScalar:i,BigNumber:n,DenseMatrix:o,concat:a}=t,s=Tn({typed:e,equalScalar:i}),l=Vr({typed:e}),u=gy({typed:e,equalScalar:i}),c=Er({typed:e,equalScalar:i}),f=mr({typed:e,DenseMatrix:o}),m=Bt({typed:e,matrix:r,concat:a});return e(bR,{"number, number":Math.atan2,"BigNumber, BigNumber":(p,d)=>n.atan2(p,d)},m({scalar:"number | BigNumber",SS:u,DS:l,SD:s,Ss:c,sS:f}))});var _R="atanh",Coe=["typed","config","Complex"],wR=N(_R,Coe,t=>{var{typed:e,config:r,Complex:i}=t;return e(_R,{number:function(o){return o<=1&&o>=-1||r.predictable?EE(o):new i(o,0).atanh()},Complex:function(o){return o.atanh()},BigNumber:function(o){return o.atanh()}})});var ua=N("trigUnit",["typed"],t=>{var{typed:e}=t;return{Unit:e.referToSelf(r=>i=>{if(!i.hasBase(i.constructor.BASE_UNITS.ANGLE))throw new TypeError("Unit in function cot is no angle");return e.find(r,i.valueType())(i.value)})}});var SR="cos",$oe=["typed"],DR=N(SR,$oe,t=>{var{typed:e}=t,r=ua({typed:e});return e(SR,{number:Math.cos,"Complex | BigNumber":i=>i.cos()},r)});var ER="cosh",Ioe=["typed"],AR=N(ER,Ioe,t=>{var{typed:e}=t;return e(ER,{number:Vv,"Complex | BigNumber":r=>r.cosh()})});var TR="cot",Foe=["typed","BigNumber"],NR=N(TR,Foe,t=>{var{typed:e,BigNumber:r}=t,i=ua({typed:e});return e(TR,{number:AE,Complex:n=>n.cot(),BigNumber:n=>new r(1).div(n.tan())},i)});var MR="coth",koe=["typed","BigNumber"],CR=N(MR,koe,t=>{var{typed:e,BigNumber:r}=t;return e(MR,{number:TE,Complex:i=>i.coth(),BigNumber:i=>new r(1).div(i.tanh())})});var $R="csc",Poe=["typed","BigNumber"],IR=N($R,Poe,t=>{var{typed:e,BigNumber:r}=t,i=ua({typed:e});return e($R,{number:NE,Complex:n=>n.csc(),BigNumber:n=>new r(1).div(n.sin())},i)});var FR="csch",Boe=["typed","BigNumber"],kR=N(FR,Boe,t=>{var{typed:e,BigNumber:r}=t;return e(FR,{number:ME,Complex:i=>i.csch(),BigNumber:i=>new r(1).div(i.sinh())})});var PR="sec",Ooe=["typed","BigNumber"],BR=N(PR,Ooe,t=>{var{typed:e,BigNumber:r}=t,i=ua({typed:e});return e(PR,{number:CE,Complex:n=>n.sec(),BigNumber:n=>new r(1).div(n.cos())},i)});var OR="sech",Roe=["typed","BigNumber"],RR=N(OR,Roe,t=>{var{typed:e,BigNumber:r}=t;return e(OR,{number:$E,Complex:i=>i.sech(),BigNumber:i=>new r(1).div(i.cosh())})});var LR="sin",Loe=["typed"],UR=N(LR,Loe,t=>{var{typed:e}=t,r=ua({typed:e});return e(LR,{number:Math.sin,"Complex | BigNumber":i=>i.sin()},r)});var zR="sinh",Uoe=["typed"],VR=N(zR,Uoe,t=>{var{typed:e}=t;return e(zR,{number:IE,"Complex | BigNumber":r=>r.sinh()})});var qR="tan",zoe=["typed"],jR=N(qR,zoe,t=>{var{typed:e}=t,r=ua({typed:e});return e(qR,{number:Math.tan,"Complex | BigNumber":i=>i.tan()},r)});var Voe="tanh",qoe=["typed"],ZR=N(Voe,qoe,t=>{var{typed:e}=t;return e("tanh",{number:qv,"Complex | BigNumber":r=>r.tanh()})});var GR="setCartesian",joe=["typed","size","subset","compareNatural","Index","DenseMatrix"],WR=N(GR,joe,t=>{var{typed:e,size:r,subset:i,compareNatural:n,Index:o,DenseMatrix:a}=t;return e(GR,{"Array | Matrix, Array | Matrix":function(l,u){var c=[];if(i(r(l),new o(0))!==0&&i(r(u),new o(0))!==0){var f=Ut(Array.isArray(l)?l:l.toArray()).sort(n),m=Ut(Array.isArray(u)?u:u.toArray()).sort(n);c=[];for(var p=0;p{var{typed:e,size:r,subset:i,compareNatural:n,Index:o,DenseMatrix:a}=t;return e(HR,{"Array | Matrix, Array | Matrix":function(l,u){var c;if(i(r(l),new o(0))===0)c=[];else{if(i(r(u),new o(0))===0)return Ut(l.toArray());var f=Ys(Ut(Array.isArray(l)?l:l.toArray()).sort(n)),m=Ys(Ut(Array.isArray(u)?u:u.toArray()).sort(n));c=[];for(var p,d=0;d{var{typed:e,size:r,subset:i,compareNatural:n,Index:o,DenseMatrix:a}=t;return e(JR,{"Array | Matrix":function(l){var u;if(i(r(l),new o(0))===0)u=[];else{var c=Ut(Array.isArray(l)?l:l.toArray()).sort(n);u=[],u.push(c[0]);for(var f=1;f{var{typed:e,size:r,subset:i,compareNatural:n,Index:o,DenseMatrix:a}=t;return e(KR,{"Array | Matrix, Array | Matrix":function(l,u){var c;if(i(r(l),new o(0))===0||i(r(u),new o(0))===0)c=[];else{var f=Ys(Ut(Array.isArray(l)?l:l.toArray()).sort(n)),m=Ys(Ut(Array.isArray(u)?u:u.toArray()).sort(n));c=[];for(var p=0;p{var{typed:e,size:r,subset:i,compareNatural:n,Index:o}=t;return e(eL,{"Array | Matrix, Array | Matrix":function(s,l){if(i(r(s),new o(0))===0)return!0;if(i(r(l),new o(0))===0)return!1;for(var u=Ys(Ut(Array.isArray(s)?s:s.toArray()).sort(n)),c=Ys(Ut(Array.isArray(l)?l:l.toArray()).sort(n)),f,m=0;m{var{typed:e,size:r,subset:i,compareNatural:n,Index:o}=t;return e(rL,{"number | BigNumber | Fraction | Complex, Array | Matrix":function(s,l){if(i(r(l),new o(0))===0)return 0;for(var u=Ut(Array.isArray(l)?l:l.toArray()),c=0,f=0;f{var{typed:e,size:r,subset:i,compareNatural:n,Index:o}=t;return e(iL,{"Array | Matrix":function(u){if(i(r(u),new o(0))===0)return[];for(var c=Ut(Array.isArray(u)?u:u.toArray()).sort(n),f=[],m=0;m.toString(2).length<=c.length;)f.push(a(c,m.toString(2).split("").reverse())),m++;return s(f)}});function a(l,u){for(var c=[],f=0;f0;c--)for(var f=0;fl[f+1].length&&(u=l[f],l[f]=l[f+1],l[f+1]=u);return l}});var aL="setSize",Xoe=["typed","compareNatural"],sL=N(aL,Xoe,t=>{var{typed:e,compareNatural:r}=t;return e(aL,{"Array | Matrix":function(n){return Array.isArray(n)?Ut(n).length:Ut(n.toArray()).length},"Array | Matrix, boolean":function(n,o){if(o===!1||n.length===0)return Array.isArray(n)?Ut(n).length:Ut(n.toArray()).length;for(var a=Ut(Array.isArray(n)?n:n.toArray()).sort(r),s=1,l=1;l{var{typed:e,size:r,concat:i,subset:n,setDifference:o,Index:a}=t;return e(uL,{"Array | Matrix, Array | Matrix":function(l,u){if(n(r(l),new a(0))===0)return Ut(u);if(n(r(u),new a(0))===0)return Ut(l);var c=Ut(l),f=Ut(u);return i(o(c,f),o(f,c))}})});var cL="setUnion",Qoe=["typed","size","concat","subset","setIntersect","setSymDifference","Index"],fL=N(cL,Qoe,t=>{var{typed:e,size:r,concat:i,subset:n,setIntersect:o,setSymDifference:a,Index:s}=t;return e(cL,{"Array | Matrix, Array | Matrix":function(u,c){if(n(r(u),new s(0))===0)return Ut(c);if(n(r(c),new s(0))===0)return Ut(u);var f=Ut(u),m=Ut(c);return i(a(f,m),o(f,m))}})});var pL="add",eae=["typed","matrix","addScalar","equalScalar","DenseMatrix","SparseMatrix","concat"],mL=N(pL,eae,t=>{var{typed:e,matrix:r,addScalar:i,equalScalar:n,DenseMatrix:o,SparseMatrix:a,concat:s}=t,l=Ii({typed:e}),u=Xc({typed:e,equalScalar:n}),c=mo({typed:e,DenseMatrix:o}),f=Bt({typed:e,matrix:r,concat:s});return e(pL,{"any, any":i,"any, any, ...any":e.referToSelf(m=>(p,d,h)=>{for(var v=m(p,d),y=0;y{var{typed:e,abs:r,addScalar:i,divideScalar:n,multiplyScalar:o,sqrt:a,smaller:s,isPositive:l}=t;return e(dL,{"... number | BigNumber":u,Array:u,Matrix:c=>u(Ut(c.toArray(),!0))});function u(c){for(var f=0,m=0,p=0;p{var{typed:e,abs:r,add:i,pow:n,conj:o,sqrt:a,multiply:s,equalScalar:l,larger:u,smaller:c,matrix:f,ctranspose:m,eigs:p}=t;return e(gL,{number:Math.abs,Complex:function(T){return T.abs()},BigNumber:function(T){return T.abs()},boolean:function(T){return Math.abs(T)},Array:function(T){return x(f(T),2)},Matrix:function(T){return x(T,2)},"Array, number | BigNumber | string":function(T,D){return x(f(T),D)},"Matrix, number | BigNumber | string":function(T,D){return x(T,D)}});function d(E){var T=0;return E.forEach(function(D){var M=r(D);u(M,T)&&(T=M)},!0),T}function h(E){var T;return E.forEach(function(D){var M=r(D);(!T||c(M,T))&&(T=M)},!0),T||0}function v(E,T){if(T===Number.POSITIVE_INFINITY||T==="inf")return d(E);if(T===Number.NEGATIVE_INFINITY||T==="-inf")return h(E);if(T==="fro")return x(E,2);if(typeof T=="number"&&!isNaN(T)){if(!l(T,0)){var D=0;return E.forEach(function(M){D=i(n(r(M),T),D)},!0),n(D,1/T)}return Number.POSITIVE_INFINITY}throw new Error("Unsupported parameter value")}function y(E){var T=0;return E.forEach(function(D,M){T=i(T,s(D,o(D)))}),r(a(T))}function S(E){var T=[],D=0;return E.forEach(function(M,C){var $=C[1],O=i(T[$]||0,r(M));u(O,D)&&(D=O),T[$]=O},!0),D}function b(E){var T=E.size();if(T[0]!==T[1])throw new RangeError("Invalid matrix dimensions");var D=m(E),M=s(D,E),C=p(M).values.toArray(),$=C[C.length-1];return r(a($))}function _(E){var T=[],D=0;return E.forEach(function(M,C){var $=C[0],O=i(T[$]||0,r(M));u(O,D)&&(D=O),T[$]=O},!0),D}function w(E,T){if(T===1)return S(E);if(T===Number.POSITIVE_INFINITY||T==="inf")return _(E);if(T==="fro")return y(E);if(T===2)return b(E);throw new Error("Unsupported parameter value "+T)}function x(E,T){var D=E.size();if(D.length===1)return v(E,T);if(D.length===2){if(D[0]&&D[1])return w(E,T);throw new RangeError("Invalid matrix dimensions")}}});var yL="dot",nae=["typed","addScalar","multiplyScalar","conj","size"],bL=N(yL,nae,t=>{var{typed:e,addScalar:r,multiplyScalar:i,conj:n,size:o}=t;return e(yL,{"Array | DenseMatrix, Array | DenseMatrix":s,"SparseMatrix, SparseMatrix":l});function a(c,f){var m=u(c),p=u(f),d,h;if(m.length===1)d=m[0];else if(m.length===2&&m[1]===1)d=m[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+m.join(", ")+")");if(p.length===1)h=p[0];else if(p.length===2&&p[1]===1)h=p[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+p.join(", ")+")");if(d!==h)throw new RangeError("Vectors must have equal length ("+d+" != "+h+")");if(d===0)throw new RangeError("Cannot calculate the dot product of empty vectors");return d}function s(c,f){var m=a(c,f),p=Je(c)?c._data:c,d=Je(c)?c._datatype||c.getDataType():void 0,h=Je(f)?f._data:f,v=Je(f)?f._datatype||f.getDataType():void 0,y=u(c).length===2,S=u(f).length===2,b=r,_=i;if(d&&v&&d===v&&typeof d=="string"&&d!=="mixed"){var w=d;b=e.find(r,[w,w]),_=e.find(i,[w,w])}if(!y&&!S){for(var x=_(n(p[0]),h[0]),E=1;Ex){_++;continue}w===x&&(v=y(v,S(p[b],h[_])),b++,_++)}return v}function u(c){return Je(c)?c.size():o(c)}});var iae="trace",oae=["typed","matrix","add"],xL=N(iae,oae,t=>{var{typed:e,matrix:r,add:i}=t;return e("trace",{Array:function(s){return n(r(s))},SparseMatrix:o,DenseMatrix:n,any:dt});function n(a){var s=a._size,l=a._data;switch(s.length){case 1:if(s[0]===1)return dt(l[0]);throw new RangeError("Matrix must be square (size: "+Ct(s)+")");case 2:{var u=s[0],c=s[1];if(u===c){for(var f=0,m=0;m0)for(var d=0;dd)break}return p}throw new RangeError("Matrix must be square (size: "+Ct(c)+")")}});var _L="index",aae=["typed","Index"],wL=N(_L,aae,t=>{var{typed:e,Index:r}=t;return e(_L,{"...number | string | BigNumber | Range | Array | Matrix":function(n){var o=n.map(function(s){return mt(s)?s.toNumber():sr(s)||Je(s)?s.map(function(l){return mt(l)?l.toNumber():l}):s}),a=new r;return r.apply(a,o),a}})});var Zy=new Set(["end"]);var sae="Node",uae=["mathWithTransform"],SL=N(sae,uae,t=>{var{mathWithTransform:e}=t;function r(n){for(var o of[...Zy])if(n.has(o))throw new Error('Scope contains an illegal symbol, "'+o+'" is a reserved keyword')}class i{get type(){return"Node"}get isNode(){return!0}evaluate(o){return this.compile().evaluate(o)}compile(){var o=this._compile(e,{}),a={},s=null;function l(u){var c=js(u);return r(c),o(c,a,s)}return{evaluate:l}}_compile(o,a){throw new Error("Method _compile must be implemented by type "+this.type)}forEach(o){throw new Error("Cannot run forEach on a Node interface")}map(o){throw new Error("Cannot run map on a Node interface")}_ifNode(o){if(!Yt(o))throw new TypeError("Callback function must return a Node");return o}traverse(o){o(this,null,null);function a(s,l){s.forEach(function(u,c,f){l(u,c,f),a(u,l)})}a(this,o)}transform(o){function a(s,l,u){var c=o(s,l,u);return c!==s?c:s.map(a)}return a(this,null,null)}filter(o){var a=[];return this.traverse(function(s,l,u){o(s,l,u)&&a.push(s)}),a}clone(){throw new Error("Cannot clone a Node interface")}cloneDeep(){return this.map(function(o){return o.cloneDeep()})}equals(o){return o?this.type===o.type&&lo(this,o):!1}toString(o){var a=this._getCustomString(o);return typeof a<"u"?a:this._toString(o)}_toString(){throw new Error("_toString not implemented for "+this.type)}toJSON(){throw new Error("Cannot serialize object: toJSON not implemented by "+this.type)}toHTML(o){var a=this._getCustomString(o);return typeof a<"u"?a:this._toHTML(o)}_toHTML(){throw new Error("_toHTML not implemented for "+this.type)}toTex(o){var a=this._getCustomString(o);return typeof a<"u"?a:this._toTex(o)}_toTex(o){throw new Error("_toTex not implemented for "+this.type)}_getCustomString(o){if(o&&typeof o=="object")switch(typeof o.handler){case"object":case"undefined":return;case"function":return o.handler(this,o);default:throw new TypeError("Object or function expected as callback")}}getIdentifier(){return this.type}getContent(){return this}}return i},{isClass:!0,isNode:!0});function qr(t){return t&&t.isIndexError?new ii(t.index+1,t.min+1,t.max!==void 0?t.max+1:void 0):t}function Gy(t){var{subset:e}=t;return function(i,n){try{if(Array.isArray(i))return e(i,n);if(i&&typeof i.subset=="function")return i.subset(n);if(typeof i=="string")return e(i,n);if(typeof i=="object"){if(!n.isObjectProperty())throw new TypeError("Cannot apply a numeric index as object property");return Yr(i,n.getObjectProperty())}else throw new TypeError("Cannot apply index: unsupported type of object")}catch(o){throw qr(o)}}}var Wy="AccessorNode",lae=["subset","Node"],DL=N(Wy,lae,t=>{var{subset:e,Node:r}=t,i=Gy({subset:e});function n(a){return!(ji(a)||ei(a)||Lt(a)||gi(a)||Ka(a)||ti(a)||Nr(a))}class o extends r{constructor(s,l){if(super(),!Yt(s))throw new TypeError('Node expected for parameter "object"');if(!uo(l))throw new TypeError('IndexNode expected for parameter "index"');this.object=s,this.index=l}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():"":this.object.name||""}get type(){return Wy}get isAccessorNode(){return!0}_compile(s,l){var u=this.object._compile(s,l),c=this.index._compile(s,l);if(this.index.isObjectProperty()){var f=this.index.getObjectProperty();return function(p,d,h){return Yr(u(p,d,h),f)}}else return function(p,d,h){var v=u(p,d,h),y=c(p,d,v);return i(v,y)}}forEach(s){s(this.object,"object",this),s(this.index,"index",this)}map(s){return new o(this._ifNode(s(this.object,"object",this)),this._ifNode(s(this.index,"index",this)))}clone(){return new o(this.object,this.index)}_toString(s){var l=this.object.toString(s);return n(this.object)&&(l="("+l+")"),l+this.index.toString(s)}_toHTML(s){var l=this.object.toHTML(s);return n(this.object)&&(l='('+l+')'),l+this.index.toHTML(s)}_toTex(s){var l=this.object.toTex(s);return n(this.object)&&(l="\\left(' + object + '\\right)"),l+this.index.toTex(s)}toJSON(){return{mathjs:Wy,object:this.object,index:this.index}}static fromJSON(s){return new o(s.object,s.index)}}return dr(o,"name",Wy),o},{isClass:!0,isNode:!0});var Hy="ArrayNode",cae=["Node"],EL=N(Hy,cae,t=>{var{Node:e}=t;class r extends e{constructor(n){if(super(),this.items=n||[],!Array.isArray(this.items)||!this.items.every(Yt))throw new TypeError("Array containing Nodes expected")}get type(){return Hy}get isArrayNode(){return!0}_compile(n,o){var a=ia(this.items,function(u){return u._compile(n,o)}),s=n.config.matrix!=="Array";if(s){var l=n.matrix;return function(c,f,m){return l(ia(a,function(p){return p(c,f,m)}))}}else return function(c,f,m){return ia(a,function(p){return p(c,f,m)})}}forEach(n){for(var o=0;o['+o.join(',')+']'}_toTex(n){function o(a,s){var l=a.some(ei)&&!a.every(ei),u=s||l,c=u?"&":"\\\\",f=a.map(function(m){return m.items?o(m.items,!s):m.toTex(n)}).join(c);return l||!u||u&&!s?"\\begin{bmatrix}"+f+"\\end{bmatrix}":f}return o(this.items,!1)}}return dr(r,"name",Hy),r},{isClass:!0,isNode:!0});function AL(t){var{subset:e,matrix:r}=t;return function(n,o,a){try{if(Array.isArray(n)){var s=r(n).subset(o,a).valueOf();return s.forEach((l,u)=>{n[u]=l}),n}else{if(n&&typeof n.subset=="function")return n.subset(o,a);if(typeof n=="string")return e(n,o,a);if(typeof n=="object"){if(!o.isObjectProperty())throw TypeError("Cannot apply a numeric index as object property");return Ha(n,o.getObjectProperty(),a),n}else throw new TypeError("Cannot apply index: unsupported type of object")}}catch(l){throw qr(l)}}}var la=[{AssignmentNode:{},FunctionAssignmentNode:{}},{ConditionalNode:{latexLeftParens:!1,latexRightParens:!1,latexParens:!1}},{"OperatorNode:or":{op:"or",associativity:"left",associativeWith:[]}},{"OperatorNode:xor":{op:"xor",associativity:"left",associativeWith:[]}},{"OperatorNode:and":{op:"and",associativity:"left",associativeWith:[]}},{"OperatorNode:bitOr":{op:"|",associativity:"left",associativeWith:[]}},{"OperatorNode:bitXor":{op:"^|",associativity:"left",associativeWith:[]}},{"OperatorNode:bitAnd":{op:"&",associativity:"left",associativeWith:[]}},{"OperatorNode:equal":{op:"==",associativity:"left",associativeWith:[]},"OperatorNode:unequal":{op:"!=",associativity:"left",associativeWith:[]},"OperatorNode:smaller":{op:"<",associativity:"left",associativeWith:[]},"OperatorNode:larger":{op:">",associativity:"left",associativeWith:[]},"OperatorNode:smallerEq":{op:"<=",associativity:"left",associativeWith:[]},"OperatorNode:largerEq":{op:">=",associativity:"left",associativeWith:[]},RelationalNode:{associativity:"left",associativeWith:[]}},{"OperatorNode:leftShift":{op:"<<",associativity:"left",associativeWith:[]},"OperatorNode:rightArithShift":{op:">>",associativity:"left",associativeWith:[]},"OperatorNode:rightLogShift":{op:">>>",associativity:"left",associativeWith:[]}},{"OperatorNode:to":{op:"to",associativity:"left",associativeWith:[]}},{RangeNode:{}},{"OperatorNode:add":{op:"+",associativity:"left",associativeWith:["OperatorNode:add","OperatorNode:subtract"]},"OperatorNode:subtract":{op:"-",associativity:"left",associativeWith:[]}},{"OperatorNode:multiply":{op:"*",associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","Operator:dotMultiply","Operator:dotDivide"]},"OperatorNode:divide":{op:"/",associativity:"left",associativeWith:[],latexLeftParens:!1,latexRightParens:!1,latexParens:!1},"OperatorNode:dotMultiply":{op:".*",associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","OperatorNode:dotMultiply","OperatorNode:doDivide"]},"OperatorNode:dotDivide":{op:"./",associativity:"left",associativeWith:[]},"OperatorNode:mod":{op:"mod",associativity:"left",associativeWith:[]}},{"OperatorNode:multiply":{associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","Operator:dotMultiply","Operator:dotDivide"]}},{"OperatorNode:unaryPlus":{op:"+",associativity:"right"},"OperatorNode:unaryMinus":{op:"-",associativity:"right"},"OperatorNode:bitNot":{op:"~",associativity:"right"},"OperatorNode:not":{op:"not",associativity:"right"}},{"OperatorNode:pow":{op:"^",associativity:"right",associativeWith:[],latexRightParens:!1},"OperatorNode:dotPow":{op:".^",associativity:"right",associativeWith:[]}},{"OperatorNode:factorial":{op:"!",associativity:"left"}},{"OperatorNode:ctranspose":{op:"'",associativity:"left"}}];function Yy(t,e){if(!e||e!=="auto")return t;for(var r=t;ti(r);)r=r.content;return r}function br(t,e,r,i){var n=t;e!=="keep"&&(n=t.getContent());for(var o=n.getIdentifier(),a=null,s=0;s{var{subset:e,matrix:r,Node:i}=t,n=Gy({subset:e}),o=AL({subset:e,matrix:r});function a(l,u,c){u||(u="keep");var f=br(l,u,c),m=br(l.value,u,c);return u==="all"||m!==null&&m<=f}class s extends i{constructor(u,c,f){if(super(),this.object=u,this.index=f?c:null,this.value=f||c,!Nr(u)&&!ji(u))throw new TypeError('SymbolNode or AccessorNode expected as "object"');if(Nr(u)&&u.name==="end")throw new Error('Cannot assign to symbol "end"');if(this.index&&!uo(this.index))throw new TypeError('IndexNode expected as "index"');if(!Yt(this.value))throw new TypeError('Node expected as "value"')}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():"":this.object.name||""}get type(){return Xy}get isAssignmentNode(){return!0}_compile(u,c){var f=this.object._compile(u,c),m=this.index?this.index._compile(u,c):null,p=this.value._compile(u,c),d=this.object.name;if(this.index)if(this.index.isObjectProperty()){var h=this.index.getObjectProperty();return function(_,w,x){var E=f(_,w,x),T=p(_,w,x);return Ha(E,h,T),T}}else{if(Nr(this.object))return function(_,w,x){var E=f(_,w,x),T=p(_,w,x),D=m(_,w,E);return _.set(d,o(E,D,T)),T};var v=this.object.object._compile(u,c);if(this.object.index.isObjectProperty()){var y=this.object.index.getObjectProperty();return function(_,w,x){var E=v(_,w,x),T=Yr(E,y),D=m(_,w,T),M=p(_,w,x);return Ha(E,y,o(T,D,M)),M}}else{var S=this.object.index._compile(u,c);return function(_,w,x){var E=v(_,w,x),T=S(_,w,E),D=n(E,T),M=m(_,w,D),C=p(_,w,x);return o(E,T,o(D,M,C)),C}}}else{if(!Nr(this.object))throw new TypeError("SymbolNode expected as object");return function(_,w,x){var E=p(_,w,x);return _.set(d,E),E}}}forEach(u){u(this.object,"object",this),this.index&&u(this.index,"index",this),u(this.value,"value",this)}map(u){var c=this._ifNode(u(this.object,"object",this)),f=this.index?this._ifNode(u(this.index,"index",this)):null,m=this._ifNode(u(this.value,"value",this));return new s(c,f,m)}clone(){return new s(this.object,this.index,this.value)}_toString(u){var c=this.object.toString(u),f=this.index?this.index.toString(u):"",m=this.value.toString(u);return a(this,u&&u.parenthesis,u&&u.implicit)&&(m="("+m+")"),c+f+" = "+m}toJSON(){return{mathjs:Xy,object:this.object,index:this.index,value:this.value}}static fromJSON(u){return new s(u.object,u.index,u.value)}_toHTML(u){var c=this.object.toHTML(u),f=this.index?this.index.toHTML(u):"",m=this.value.toHTML(u);return a(this,u&&u.parenthesis,u&&u.implicit)&&(m='('+m+')'),c+f+'='+m}_toTex(u){var c=this.object.toTex(u),f=this.index?this.index.toTex(u):"",m=this.value.toTex(u);return a(this,u&&u.parenthesis,u&&u.implicit)&&(m="\\left(".concat(m,"\\right)")),c+f+"="+m}}return dr(s,"name",Xy),s},{isClass:!0,isNode:!0});var Ky="BlockNode",pae=["ResultSet","Node"],ML=N(Ky,pae,t=>{var{ResultSet:e,Node:r}=t;class i extends r{constructor(o){if(super(),!Array.isArray(o))throw new Error("Array expected");this.blocks=o.map(function(a){var s=a&&a.node,l=a&&a.visible!==void 0?a.visible:!0;if(!Yt(s))throw new TypeError('Property "node" must be a Node');if(typeof l!="boolean")throw new TypeError('Property "visible" must be a boolean');return{node:s,visible:l}})}get type(){return Ky}get isBlockNode(){return!0}_compile(o,a){var s=ia(this.blocks,function(l){return{evaluate:l.node._compile(o,a),visible:l.visible}});return function(u,c,f){var m=[];return ny(s,function(d){var h=d.evaluate(u,c,f);d.visible&&m.push(h)}),new e(m)}}forEach(o){for(var a=0;a;')}).join('
')}_toTex(o){return this.blocks.map(function(a){return a.node.toTex(o)+(a.visible?"":";")}).join(`\\;\\; -`)}}return dr(i,"name",Ky),i},{isClass:!0,isNode:!0});var Qy="ConditionalNode",mae=["Node"],CL=N(Qy,mae,t=>{var{Node:e}=t;function r(n){if(typeof n=="number"||typeof n=="boolean"||typeof n=="string")return!!n;if(n){if(mt(n))return!n.isZero();if(Qn(n))return!!(n.re||n.im);if(En(n))return!!n.value}if(n==null)return!1;throw new TypeError('Unsupported type of condition "'+ir(n)+'"')}class i extends e{constructor(o,a,s){if(super(),!Yt(o))throw new TypeError("Parameter condition must be a Node");if(!Yt(a))throw new TypeError("Parameter trueExpr must be a Node");if(!Yt(s))throw new TypeError("Parameter falseExpr must be a Node");this.condition=o,this.trueExpr=a,this.falseExpr=s}get type(){return Qy}get isConditionalNode(){return!0}_compile(o,a){var s=this.condition._compile(o,a),l=this.trueExpr._compile(o,a),u=this.falseExpr._compile(o,a);return function(f,m,p){return r(s(f,m,p))?l(f,m,p):u(f,m,p)}}forEach(o){o(this.condition,"condition",this),o(this.trueExpr,"trueExpr",this),o(this.falseExpr,"falseExpr",this)}map(o){return new i(this._ifNode(o(this.condition,"condition",this)),this._ifNode(o(this.trueExpr,"trueExpr",this)),this._ifNode(o(this.falseExpr,"falseExpr",this)))}clone(){return new i(this.condition,this.trueExpr,this.falseExpr)}_toString(o){var a=o&&o.parenthesis?o.parenthesis:"keep",s=br(this,a,o&&o.implicit),l=this.condition.toString(o),u=br(this.condition,a,o&&o.implicit);(a==="all"||this.condition.type==="OperatorNode"||u!==null&&u<=s)&&(l="("+l+")");var c=this.trueExpr.toString(o),f=br(this.trueExpr,a,o&&o.implicit);(a==="all"||this.trueExpr.type==="OperatorNode"||f!==null&&f<=s)&&(c="("+c+")");var m=this.falseExpr.toString(o),p=br(this.falseExpr,a,o&&o.implicit);return(a==="all"||this.falseExpr.type==="OperatorNode"||p!==null&&p<=s)&&(m="("+m+")"),l+" ? "+c+" : "+m}toJSON(){return{mathjs:Qy,condition:this.condition,trueExpr:this.trueExpr,falseExpr:this.falseExpr}}static fromJSON(o){return new i(o.condition,o.trueExpr,o.falseExpr)}_toHTML(o){var a=o&&o.parenthesis?o.parenthesis:"keep",s=br(this,a,o&&o.implicit),l=this.condition.toHTML(o),u=br(this.condition,a,o&&o.implicit);(a==="all"||this.condition.type==="OperatorNode"||u!==null&&u<=s)&&(l='('+l+')');var c=this.trueExpr.toHTML(o),f=br(this.trueExpr,a,o&&o.implicit);(a==="all"||this.trueExpr.type==="OperatorNode"||f!==null&&f<=s)&&(c='('+c+')');var m=this.falseExpr.toHTML(o),p=br(this.falseExpr,a,o&&o.implicit);return(a==="all"||this.falseExpr.type==="OperatorNode"||p!==null&&p<=s)&&(m='('+m+')'),l+'?'+c+':'+m}_toTex(o){return"\\begin{cases} {"+this.trueExpr.toTex(o)+"}, &\\quad{\\text{if }\\;"+this.condition.toTex(o)+"}\\\\{"+this.falseExpr.toTex(o)+"}, &\\quad{\\text{otherwise}}\\end{cases}"}}return dr(i,"name",Qy),i},{isClass:!0,isNode:!0});var kL=Ar(IL(),1);var ZE={Alpha:"A",alpha:"\\alpha",Beta:"B",beta:"\\beta",Gamma:"\\Gamma",gamma:"\\gamma",Delta:"\\Delta",delta:"\\delta",Epsilon:"E",epsilon:"\\epsilon",varepsilon:"\\varepsilon",Zeta:"Z",zeta:"\\zeta",Eta:"H",eta:"\\eta",Theta:"\\Theta",theta:"\\theta",vartheta:"\\vartheta",Iota:"I",iota:"\\iota",Kappa:"K",kappa:"\\kappa",varkappa:"\\varkappa",Lambda:"\\Lambda",lambda:"\\lambda",Mu:"M",mu:"\\mu",Nu:"N",nu:"\\nu",Xi:"\\Xi",xi:"\\xi",Omicron:"O",omicron:"o",Pi:"\\Pi",pi:"\\pi",varpi:"\\varpi",Rho:"P",rho:"\\rho",varrho:"\\varrho",Sigma:"\\Sigma",sigma:"\\sigma",varsigma:"\\varsigma",Tau:"T",tau:"\\tau",Upsilon:"\\Upsilon",upsilon:"\\upsilon",Phi:"\\Phi",phi:"\\phi",varphi:"\\varphi",Chi:"X",chi:"\\chi",Psi:"\\Psi",psi:"\\psi",Omega:"\\Omega",omega:"\\omega",true:"\\mathrm{True}",false:"\\mathrm{False}",i:"i",inf:"\\infty",Inf:"\\infty",infinity:"\\infty",Infinity:"\\infty",oo:"\\infty",lim:"\\lim",undefined:"\\mathbf{?}"},hr={transpose:"^\\top",ctranspose:"^H",factorial:"!",pow:"^",dotPow:".^\\wedge",unaryPlus:"+",unaryMinus:"-",bitNot:"\\~",not:"\\neg",multiply:"\\cdot",divide:"\\frac",dotMultiply:".\\cdot",dotDivide:".:",mod:"\\mod",add:"+",subtract:"-",to:"\\rightarrow",leftShift:"<<",rightArithShift:">>",rightLogShift:">>>",equal:"=",unequal:"\\neq",smaller:"<",larger:">",smallerEq:"\\leq",largerEq:"\\geq",bitAnd:"\\&",bitXor:"\\underline{|}",bitOr:"|",and:"\\wedge",xor:"\\veebar",or:"\\vee"},GE={abs:{1:"\\left|${args[0]}\\right|"},add:{2:"\\left(${args[0]}".concat(hr.add,"${args[1]}\\right)")},cbrt:{1:"\\sqrt[3]{${args[0]}}"},ceil:{1:"\\left\\lceil${args[0]}\\right\\rceil"},cube:{1:"\\left(${args[0]}\\right)^3"},divide:{2:"\\frac{${args[0]}}{${args[1]}}"},dotDivide:{2:"\\left(${args[0]}".concat(hr.dotDivide,"${args[1]}\\right)")},dotMultiply:{2:"\\left(${args[0]}".concat(hr.dotMultiply,"${args[1]}\\right)")},dotPow:{2:"\\left(${args[0]}".concat(hr.dotPow,"${args[1]}\\right)")},exp:{1:"\\exp\\left(${args[0]}\\right)"},expm1:"\\left(e".concat(hr.pow,"{${args[0]}}-1\\right)"),fix:{1:"\\mathrm{${name}}\\left(${args[0]}\\right)"},floor:{1:"\\left\\lfloor${args[0]}\\right\\rfloor"},fraction:{2:"\\frac{${args[0]}}{${args[1]}}"},gcd:"\\gcd\\left(${args}\\right)",hypot:"\\hypot\\left(${args}\\right)",log:{1:"\\ln\\left(${args[0]}\\right)",2:"\\log_{${args[1]}}\\left(${args[0]}\\right)"},log10:{1:"\\log_{10}\\left(${args[0]}\\right)"},log1p:{1:"\\ln\\left(${args[0]}+1\\right)",2:"\\log_{${args[1]}}\\left(${args[0]}+1\\right)"},log2:"\\log_{2}\\left(${args[0]}\\right)",mod:{2:"\\left(${args[0]}".concat(hr.mod,"${args[1]}\\right)")},multiply:{2:"\\left(${args[0]}".concat(hr.multiply,"${args[1]}\\right)")},norm:{1:"\\left\\|${args[0]}\\right\\|",2:void 0},nthRoot:{2:"\\sqrt[${args[1]}]{${args[0]}}"},nthRoots:{2:"\\{y : y^${args[1]} = {${args[0]}}\\}"},pow:{2:"\\left(${args[0]}\\right)".concat(hr.pow,"{${args[1]}}")},round:{1:"\\left\\lfloor${args[0]}\\right\\rceil",2:void 0},sign:{1:"\\mathrm{${name}}\\left(${args[0]}\\right)"},sqrt:{1:"\\sqrt{${args[0]}}"},square:{1:"\\left(${args[0]}\\right)^2"},subtract:{2:"\\left(${args[0]}".concat(hr.subtract,"${args[1]}\\right)")},unaryMinus:{1:"".concat(hr.unaryMinus,"\\left(${args[0]}\\right)")},unaryPlus:{1:"".concat(hr.unaryPlus,"\\left(${args[0]}\\right)")},bitAnd:{2:"\\left(${args[0]}".concat(hr.bitAnd,"${args[1]}\\right)")},bitNot:{1:hr.bitNot+"\\left(${args[0]}\\right)"},bitOr:{2:"\\left(${args[0]}".concat(hr.bitOr,"${args[1]}\\right)")},bitXor:{2:"\\left(${args[0]}".concat(hr.bitXor,"${args[1]}\\right)")},leftShift:{2:"\\left(${args[0]}".concat(hr.leftShift,"${args[1]}\\right)")},rightArithShift:{2:"\\left(${args[0]}".concat(hr.rightArithShift,"${args[1]}\\right)")},rightLogShift:{2:"\\left(${args[0]}".concat(hr.rightLogShift,"${args[1]}\\right)")},bellNumbers:{1:"\\mathrm{B}_{${args[0]}}"},catalan:{1:"\\mathrm{C}_{${args[0]}}"},stirlingS2:{2:"\\mathrm{S}\\left(${args}\\right)"},arg:{1:"\\arg\\left(${args[0]}\\right)"},conj:{1:"\\left(${args[0]}\\right)^*"},im:{1:"\\Im\\left\\lbrace${args[0]}\\right\\rbrace"},re:{1:"\\Re\\left\\lbrace${args[0]}\\right\\rbrace"},and:{2:"\\left(${args[0]}".concat(hr.and,"${args[1]}\\right)")},not:{1:hr.not+"\\left(${args[0]}\\right)"},or:{2:"\\left(${args[0]}".concat(hr.or,"${args[1]}\\right)")},xor:{2:"\\left(${args[0]}".concat(hr.xor,"${args[1]}\\right)")},cross:{2:"\\left(${args[0]}\\right)\\times\\left(${args[1]}\\right)"},ctranspose:{1:"\\left(${args[0]}\\right)".concat(hr.ctranspose)},det:{1:"\\det\\left(${args[0]}\\right)"},dot:{2:"\\left(${args[0]}\\cdot${args[1]}\\right)"},expm:{1:"\\exp\\left(${args[0]}\\right)"},inv:{1:"\\left(${args[0]}\\right)^{-1}"},pinv:{1:"\\left(${args[0]}\\right)^{+}"},sqrtm:{1:"{${args[0]}}".concat(hr.pow,"{\\frac{1}{2}}")},trace:{1:"\\mathrm{tr}\\left(${args[0]}\\right)"},transpose:{1:"\\left(${args[0]}\\right)".concat(hr.transpose)},combinations:{2:"\\binom{${args[0]}}{${args[1]}}"},combinationsWithRep:{2:"\\left(\\!\\!{\\binom{${args[0]}}{${args[1]}}}\\!\\!\\right)"},factorial:{1:"\\left(${args[0]}\\right)".concat(hr.factorial)},gamma:{1:"\\Gamma\\left(${args[0]}\\right)"},lgamma:{1:"\\ln\\Gamma\\left(${args[0]}\\right)"},equal:{2:"\\left(${args[0]}".concat(hr.equal,"${args[1]}\\right)")},larger:{2:"\\left(${args[0]}".concat(hr.larger,"${args[1]}\\right)")},largerEq:{2:"\\left(${args[0]}".concat(hr.largerEq,"${args[1]}\\right)")},smaller:{2:"\\left(${args[0]}".concat(hr.smaller,"${args[1]}\\right)")},smallerEq:{2:"\\left(${args[0]}".concat(hr.smallerEq,"${args[1]}\\right)")},unequal:{2:"\\left(${args[0]}".concat(hr.unequal,"${args[1]}\\right)")},erf:{1:"erf\\left(${args[0]}\\right)"},max:"\\max\\left(${args}\\right)",min:"\\min\\left(${args}\\right)",variance:"\\mathrm{Var}\\left(${args}\\right)",acos:{1:"\\cos^{-1}\\left(${args[0]}\\right)"},acosh:{1:"\\cosh^{-1}\\left(${args[0]}\\right)"},acot:{1:"\\cot^{-1}\\left(${args[0]}\\right)"},acoth:{1:"\\coth^{-1}\\left(${args[0]}\\right)"},acsc:{1:"\\csc^{-1}\\left(${args[0]}\\right)"},acsch:{1:"\\mathrm{csch}^{-1}\\left(${args[0]}\\right)"},asec:{1:"\\sec^{-1}\\left(${args[0]}\\right)"},asech:{1:"\\mathrm{sech}^{-1}\\left(${args[0]}\\right)"},asin:{1:"\\sin^{-1}\\left(${args[0]}\\right)"},asinh:{1:"\\sinh^{-1}\\left(${args[0]}\\right)"},atan:{1:"\\tan^{-1}\\left(${args[0]}\\right)"},atan2:{2:"\\mathrm{atan2}\\left(${args}\\right)"},atanh:{1:"\\tanh^{-1}\\left(${args[0]}\\right)"},cos:{1:"\\cos\\left(${args[0]}\\right)"},cosh:{1:"\\cosh\\left(${args[0]}\\right)"},cot:{1:"\\cot\\left(${args[0]}\\right)"},coth:{1:"\\coth\\left(${args[0]}\\right)"},csc:{1:"\\csc\\left(${args[0]}\\right)"},csch:{1:"\\mathrm{csch}\\left(${args[0]}\\right)"},sec:{1:"\\sec\\left(${args[0]}\\right)"},sech:{1:"\\mathrm{sech}\\left(${args[0]}\\right)"},sin:{1:"\\sin\\left(${args[0]}\\right)"},sinh:{1:"\\sinh\\left(${args[0]}\\right)"},tan:{1:"\\tan\\left(${args[0]}\\right)"},tanh:{1:"\\tanh\\left(${args[0]}\\right)"},to:{2:"\\left(${args[0]}".concat(hr.to,"${args[1]}\\right)")},numeric:function(e,r){return e.args[0].toTex()},number:{0:"0",1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)${args[1]}\\right)"},string:{0:'\\mathtt{""}',1:"\\mathrm{string}\\left(${args[0]}\\right)"},bignumber:{0:"0",1:"\\left(${args[0]}\\right)"},bigint:{0:"0",1:"\\left(${args[0]}\\right)"},complex:{0:"0",1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)+".concat(ZE.i,"\\cdot\\left(${args[1]}\\right)\\right)")},matrix:{0:"\\begin{bmatrix}\\end{bmatrix}",1:"\\left(${args[0]}\\right)",2:"\\left(${args[0]}\\right)"},sparse:{0:"\\begin{bsparse}\\end{bsparse}",1:"\\left(${args[0]}\\right)"},unit:{1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)${args[1]}\\right)"}},PL="\\mathrm{${name}}\\left(${args}\\right)",FL={deg:"^\\circ"};function eb(t){return(0,kL.default)(t,{preserveFormatting:!0})}function tb(t,e){return e=typeof e>"u"?!1:e,e?rt(FL,t)?FL[t]:"\\mathrm{"+eb(t)+"}":rt(ZE,t)?ZE[t]:eb(t)}var rb="ConstantNode",vae=["Node"],BL=N(rb,vae,t=>{var{Node:e}=t;class r extends e{constructor(n){super(),this.value=n}get type(){return rb}get isConstantNode(){return!0}_compile(n,o){var a=this.value;return function(){return a}}forEach(n){}map(n){return this.clone()}clone(){return new r(this.value)}_toString(n){return Ct(this.value,n)}_toHTML(n){var o=this._toString(n);switch(ir(this.value)){case"number":case"bigint":case"BigNumber":case"Fraction":return''+o+"";case"string":return''+o+"";case"boolean":return''+o+"";case"null":return''+o+"";case"undefined":return''+o+"";default:return''+o+""}}toJSON(){return{mathjs:rb,value:this.value}}static fromJSON(n){return new r(n.value)}_toTex(n){var o=this._toString(n),a=ir(this.value);switch(a){case"string":return"\\mathtt{"+eb(o)+"}";case"number":case"BigNumber":{var s=a==="BigNumber"?this.value.isFinite():isFinite(this.value);if(!s)return this.value.valueOf()<0?"-\\infty":"\\infty";var l=o.toLowerCase().indexOf("e");return l!==-1?o.substring(0,l)+"\\cdot10^{"+o.substring(l+1)+"}":o}case"bigint":return o.toString();case"Fraction":return this.value.toLatex();default:return o}}}return dr(r,"name",rb),r},{isClass:!0,isNode:!0});var nb="FunctionAssignmentNode",yae=["typed","Node"],OL=N(nb,yae,t=>{var{typed:e,Node:r}=t;function i(o,a,s){var l=br(o,a,s),u=br(o.expr,a,s);return a==="all"||u!==null&&u<=l}class n extends r{constructor(a,s,l){if(super(),typeof a!="string")throw new TypeError('String expected for parameter "name"');if(!Array.isArray(s))throw new TypeError('Array containing strings or objects expected for parameter "params"');if(!Yt(l))throw new TypeError('Node expected for parameter "expr"');if(Zy.has(a))throw new Error('Illegal function name, "'+a+'" is a reserved keyword');var u=new Set;for(var c of s){var f=typeof c=="string"?c:c.name;if(u.has(f))throw new Error('Duplicate parameter name "'.concat(f,'"'));u.add(f)}this.name=a,this.params=s.map(function(m){return m&&m.name||m}),this.types=s.map(function(m){return m&&m.type||"any"}),this.expr=l}get type(){return nb}get isFunctionAssignmentNode(){return!0}_compile(a,s){var l=Object.create(s);ny(this.params,function(d){l[d]=!0});var u=this.expr._compile(a,l),c=this.name,f=this.params,m=UD(this.types,","),p=c+"("+UD(this.params,", ")+")";return function(h,v,y){var S={};S[m]=function(){for(var _=Object.create(v),w=0;w'+ni(this.params[u])+"");var c=this.expr.toHTML(a);return i(this,s,a&&a.implicit)&&(c='('+c+')'),''+ni(this.name)+'('+l.join(',')+')='+c}_toTex(a){var s=a&&a.parenthesis?a.parenthesis:"keep",l=this.expr.toTex(a);return i(this,s,a&&a.implicit)&&(l="\\left(".concat(l,"\\right)")),"\\mathrm{"+this.name+"}\\left("+this.params.map(tb).join(",")+"\\right)="+l}}return dr(n,"name",nb),n},{isClass:!0,isNode:!0});var ib="IndexNode",bae=["Node","size"],RL=N(ib,bae,t=>{var{Node:e,size:r}=t;class i extends e{constructor(o,a){if(super(),this.dimensions=o,this.dotNotation=a||!1,!Array.isArray(o)||!o.every(Yt))throw new TypeError('Array containing Nodes expected for parameter "dimensions"');if(this.dotNotation&&!this.isObjectProperty())throw new Error("dotNotation only applicable for object properties")}get type(){return ib}get isIndexNode(){return!0}_compile(o,a){var s=ia(this.dimensions,function(u,c){var f=u.filter(d=>d.isSymbolNode&&d.name==="end").length>0;if(f){var m=Object.create(a);m.end=!0;var p=u._compile(o,m);return function(h,v,y){if(!Je(y)&&!sr(y)&&!Qr(y))throw new TypeError('Cannot resolve "end": context must be a Matrix, Array, or string but is '+ir(y));var S=r(y).valueOf(),b=Object.create(v);return b.end=S[c],p(h,b,y)}}else return u._compile(o,a)}),l=Yr(o,"index");return function(c,f,m){var p=ia(s,function(d){return d(c,f,m)});return l(...p)}}forEach(o){for(var a=0;a.'+ni(this.getObjectProperty())+"":'['+a.join(',')+']'}_toTex(o){var a=this.dimensions.map(function(s){return s.toTex(o)});return this.dotNotation?"."+this.getObjectProperty():"_{"+a.join(",")+"}"}}return dr(i,"name",ib),i},{isClass:!0,isNode:!0});var ob="ObjectNode",xae=["Node"],LL=N(ob,xae,t=>{var{Node:e}=t;class r extends e{constructor(n){if(super(),this.properties=n||{},n&&(typeof n!="object"||!Object.keys(n).every(function(o){return Yt(n[o])})))throw new TypeError("Object containing Nodes expected")}get type(){return ob}get isObjectNode(){return!0}_compile(n,o){var a={};for(var s in this.properties)if(rt(this.properties,s)){var l=xl(s),u=JSON.parse(l),c=Yr(this.properties,s);a[u]=c._compile(n,o)}return function(m,p,d){var h={};for(var v in a)rt(a,v)&&(h[v]=a[v](m,p,d));return h}}forEach(n){for(var o in this.properties)rt(this.properties,o)&&n(this.properties[o],"properties["+xl(o)+"]",this)}map(n){var o={};for(var a in this.properties)rt(this.properties,a)&&(o[a]=this._ifNode(n(this.properties[a],"properties["+xl(a)+"]",this)));return new r(o)}clone(){var n={};for(var o in this.properties)rt(this.properties,o)&&(n[o]=this.properties[o]);return new r(n)}_toString(n){var o=[];for(var a in this.properties)rt(this.properties,a)&&o.push(xl(a)+": "+this.properties[a].toString(n));return"{"+o.join(", ")+"}"}toJSON(){return{mathjs:ob,properties:this.properties}}static fromJSON(n){return new r(n.properties)}_toHTML(n){var o=[];for(var a in this.properties)rt(this.properties,a)&&o.push(''+ni(a)+':'+this.properties[a].toHTML(n));return'{'+o.join(',')+'}'}_toTex(n){var o=[];for(var a in this.properties)rt(this.properties,a)&&o.push("\\mathbf{"+a+":} & "+this.properties[a].toTex(n)+"\\\\");var s="\\left\\{\\begin{array}{ll}"+o.join(` -`)+"\\end{array}\\right\\}";return s}}return dr(r,"name",ob),r},{isClass:!0,isNode:!0});function Tl(t,e){return new Bc(t,new wu(e),new Set(Object.keys(e)))}var ab="OperatorNode",_ae=["Node"],UL=N(ab,_ae,t=>{var{Node:e}=t;function r(o,a){var s=o;if(a==="auto")for(;ti(s);)s=s.content;return Lt(s)?!0:Lr(s)?r(s.args[0],a):!1}function i(o,a,s,l,u){var c=br(o,a,s),f=af(o,a);if(a==="all"||l.length>2&&o.getIdentifier()!=="OperatorNode:add"&&o.getIdentifier()!=="OperatorNode:multiply")return l.map(function(M){switch(M.getContent().type){case"ArrayNode":case"ConstantNode":case"SymbolNode":case"ParenthesisNode":return!1;default:return!0}});var m;switch(l.length){case 0:m=[];break;case 1:{var p=br(l[0],a,s,o);if(u&&p!==null){var d,h;if(a==="keep"?(d=l[0].getIdentifier(),h=o.getIdentifier()):(d=l[0].getContent().getIdentifier(),h=o.getContent().getIdentifier()),la[c][h].latexLeftParens===!1){m=[!1];break}if(la[p][d].latexParens===!1){m=[!1];break}}if(p===null){m=[!1];break}if(p<=c){m=[!0];break}m=[!1]}break;case 2:{var v,y=br(l[0],a,s,o),S=Jy(o,l[0],a);y===null?v=!1:y===c&&f==="right"&&!S||y=2&&o.getIdentifier()==="OperatorNode:multiply"&&o.implicit&&a!=="all"&&s==="hide")for(var D=1;D2&&(this.getIdentifier()==="OperatorNode:add"||this.getIdentifier()==="OperatorNode:multiply")){var v=u.map(function(y,S){return y=y.toString(a),c[S]&&(y="("+y+")"),y});return this.implicit&&this.getIdentifier()==="OperatorNode:multiply"&&l==="hide"?v.join(" "):v.join(" "+this.op+" ")}else return this.fn+"("+this.args.join(", ")+")"}toJSON(){return{mathjs:ab,op:this.op,fn:this.fn,args:this.args,implicit:this.implicit,isPercentage:this.isPercentage}}static fromJSON(a){return new n(a.op,a.fn,a.args,a.implicit,a.isPercentage)}_toHTML(a){var s=a&&a.parenthesis?a.parenthesis:"keep",l=a&&a.implicit?a.implicit:"hide",u=this.args,c=i(this,s,l,u,!1);if(u.length===1){var f=af(this,s),m=u[0].toHTML(a);return c[0]&&(m='('+m+')'),f==="right"?''+ni(this.op)+""+m:m+''+ni(this.op)+""}else if(u.length===2){var p=u[0].toHTML(a),d=u[1].toHTML(a);return c[0]&&(p='('+p+')'),c[1]&&(d='('+d+')'),this.implicit&&this.getIdentifier()==="OperatorNode:multiply"&&l==="hide"?p+''+d:p+''+ni(this.op)+""+d}else{var h=u.map(function(v,y){return v=v.toHTML(a),c[y]&&(v='('+v+')'),v});return u.length>2&&(this.getIdentifier()==="OperatorNode:add"||this.getIdentifier()==="OperatorNode:multiply")?this.implicit&&this.getIdentifier()==="OperatorNode:multiply"&&l==="hide"?h.join(''):h.join(''+ni(this.op)+""):''+ni(this.fn)+'('+h.join(',')+')'}}_toTex(a){var s=a&&a.parenthesis?a.parenthesis:"keep",l=a&&a.implicit?a.implicit:"hide",u=this.args,c=i(this,s,l,u,!0),f=hr[this.fn];if(f=typeof f>"u"?this.op:f,u.length===1){var m=af(this,s),p=u[0].toTex(a);return c[0]&&(p="\\left(".concat(p,"\\right)")),m==="right"?f+p:p+f}else if(u.length===2){var d=u[0],h=d.toTex(a);c[0]&&(h="\\left(".concat(h,"\\right)"));var v=u[1],y=v.toTex(a);c[1]&&(y="\\left(".concat(y,"\\right)"));var S;switch(s==="keep"?S=d.getIdentifier():S=d.getContent().getIdentifier(),this.getIdentifier()){case"OperatorNode:divide":return f+"{"+h+"}{"+y+"}";case"OperatorNode:pow":switch(h="{"+h+"}",y="{"+y+"}",S){case"ConditionalNode":case"OperatorNode:divide":h="\\left(".concat(h,"\\right)")}break;case"OperatorNode:multiply":if(this.implicit&&l==="hide")return h+"~"+y}return h+f+y}else if(u.length>2&&(this.getIdentifier()==="OperatorNode:add"||this.getIdentifier()==="OperatorNode:multiply")){var b=u.map(function(_,w){return _=_.toTex(a),c[w]&&(_="\\left(".concat(_,"\\right)")),_});return this.getIdentifier()==="OperatorNode:multiply"&&this.implicit&&l==="hide"?b.join("~"):b.join(f)}else return"\\mathrm{"+this.fn+"}\\left("+u.map(function(_){return _.toTex(a)}).join(",")+"\\right)"}getIdentifier(){return this.type+":"+this.fn}}return dr(n,"name",ab),n},{isClass:!0,isNode:!0});var sb="ParenthesisNode",wae=["Node"],zL=N(sb,wae,t=>{var{Node:e}=t;class r extends e{constructor(n){if(super(),!Yt(n))throw new TypeError('Node expected for parameter "content"');this.content=n}get type(){return sb}get isParenthesisNode(){return!0}_compile(n,o){return this.content._compile(n,o)}getContent(){return this.content.getContent()}forEach(n){n(this.content,"content",this)}map(n){var o=n(this.content,"content",this);return new r(o)}clone(){return new r(this.content)}_toString(n){return!n||n&&!n.parenthesis||n&&n.parenthesis==="keep"?"("+this.content.toString(n)+")":this.content.toString(n)}toJSON(){return{mathjs:sb,content:this.content}}static fromJSON(n){return new r(n.content)}_toHTML(n){return!n||n&&!n.parenthesis||n&&n.parenthesis==="keep"?'('+this.content.toHTML(n)+')':this.content.toHTML(n)}_toTex(n){return!n||n&&!n.parenthesis||n&&n.parenthesis==="keep"?"\\left(".concat(this.content.toTex(n),"\\right)"):this.content.toTex(n)}}return dr(r,"name",sb),r},{isClass:!0,isNode:!0});var ub="RangeNode",Sae=["Node"],VL=N(ub,Sae,t=>{var{Node:e}=t;function r(n,o,a){var s=br(n,o,a),l={},u=br(n.start,o,a);if(l.start=u!==null&&u<=s||o==="all",n.step){var c=br(n.step,o,a);l.step=c!==null&&c<=s||o==="all"}var f=br(n.end,o,a);return l.end=f!==null&&f<=s||o==="all",l}class i extends e{constructor(o,a,s){if(super(),!Yt(o))throw new TypeError("Node expected");if(!Yt(a))throw new TypeError("Node expected");if(s&&!Yt(s))throw new TypeError("Node expected");if(arguments.length>3)throw new Error("Too many arguments");this.start=o,this.end=a,this.step=s||null}get type(){return ub}get isRangeNode(){return!0}needsEnd(){var o=this.filter(function(a){return Nr(a)&&a.name==="end"});return o.length>0}_compile(o,a){var s=o.range,l=this.start._compile(o,a),u=this.end._compile(o,a);if(this.step){var c=this.step._compile(o,a);return function(m,p,d){return s(l(m,p,d),u(m,p,d),c(m,p,d))}}else return function(m,p,d){return s(l(m,p,d),u(m,p,d))}}forEach(o){o(this.start,"start",this),o(this.end,"end",this),this.step&&o(this.step,"step",this)}map(o){return new i(this._ifNode(o(this.start,"start",this)),this._ifNode(o(this.end,"end",this)),this.step&&this._ifNode(o(this.step,"step",this)))}clone(){return new i(this.start,this.end,this.step&&this.step)}_toString(o){var a=o&&o.parenthesis?o.parenthesis:"keep",s=r(this,a,o&&o.implicit),l,u=this.start.toString(o);if(s.start&&(u="("+u+")"),l=u,this.step){var c=this.step.toString(o);s.step&&(c="("+c+")"),l+=":"+c}var f=this.end.toString(o);return s.end&&(f="("+f+")"),l+=":"+f,l}toJSON(){return{mathjs:ub,start:this.start,end:this.end,step:this.step}}static fromJSON(o){return new i(o.start,o.end,o.step)}_toHTML(o){var a=o&&o.parenthesis?o.parenthesis:"keep",s=r(this,a,o&&o.implicit),l,u=this.start.toHTML(o);if(s.start&&(u='('+u+')'),l=u,this.step){var c=this.step.toHTML(o);s.step&&(c='('+c+')'),l+=':'+c}var f=this.end.toHTML(o);return s.end&&(f='('+f+')'),l+=':'+f,l}_toTex(o){var a=o&&o.parenthesis?o.parenthesis:"keep",s=r(this,a,o&&o.implicit),l=this.start.toTex(o);if(s.start&&(l="\\left(".concat(l,"\\right)")),this.step){var u=this.step.toTex(o);s.step&&(u="\\left(".concat(u,"\\right)")),l+=":"+u}var c=this.end.toTex(o);return s.end&&(c="\\left(".concat(c,"\\right)")),l+=":"+c,l}}return dr(i,"name",ub),i},{isClass:!0,isNode:!0});var lb="RelationalNode",Dae=["Node"],qL=N(lb,Dae,t=>{var{Node:e}=t,r={equal:"==",unequal:"!=",smaller:"<",larger:">",smallerEq:"<=",largerEq:">="};class i extends e{constructor(o,a){if(super(),!Array.isArray(o))throw new TypeError("Parameter conditionals must be an array");if(!Array.isArray(a))throw new TypeError("Parameter params must be an array");if(o.length!==a.length-1)throw new TypeError("Parameter params must contain exactly one more element than parameter conditionals");this.conditionals=o,this.params=a}get type(){return lb}get isRelationalNode(){return!0}_compile(o,a){var s=this,l=this.params.map(u=>u._compile(o,a));return function(c,f,m){for(var p,d=l[0](c,f,m),h=0;ho(a,"params["+s+"]",this),this)}map(o){return new i(this.conditionals.slice(),this.params.map((a,s)=>this._ifNode(o(a,"params["+s+"]",this)),this))}clone(){return new i(this.conditionals,this.params)}_toString(o){for(var a=o&&o.parenthesis?o.parenthesis:"keep",s=br(this,a,o&&o.implicit),l=this.params.map(function(f,m){var p=br(f,a,o&&o.implicit);return a==="all"||p!==null&&p<=s?"("+f.toString(o)+")":f.toString(o)}),u=l[0],c=0;c('+f.toHTML(o)+')':f.toHTML(o)}),u=l[0],c=0;c'+ni(r[this.conditionals[c]])+""+l[c+1];return u}_toTex(o){for(var a=o&&o.parenthesis?o.parenthesis:"keep",s=br(this,a,o&&o.implicit),l=this.params.map(function(f,m){var p=br(f,a,o&&o.implicit);return a==="all"||p!==null&&p<=s?"\\left("+f.toTex(o)+"\right)":f.toTex(o)}),u=l[0],c=0;c{var{math:e,Unit:r,Node:i}=t;function n(a){return r?r.isValuelessUnit(a):!1}class o extends i{constructor(s){if(super(),typeof s!="string")throw new TypeError('String expected for parameter "name"');this.name=s}get type(){return"SymbolNode"}get isSymbolNode(){return!0}_compile(s,l){var u=this.name;if(l[u]===!0)return function(f,m,p){return Yr(m,u)};if(u in s)return function(f,m,p){return f.has(u)?f.get(u):Yr(s,u)};var c=n(u);return function(f,m,p){return f.has(u)?f.get(u):c?new r(null,u):o.onUndefinedSymbol(u)}}forEach(s){}map(s){return this.clone()}static onUndefinedSymbol(s){throw new Error("Undefined symbol "+s)}clone(){return new o(this.name)}_toString(s){return this.name}_toHTML(s){var l=ni(this.name);return l==="true"||l==="false"?''+l+"":l==="i"?''+l+"":l==="Infinity"?''+l+"":l==="NaN"?''+l+"":l==="null"?''+l+"":l==="undefined"?''+l+"":''+l+""}toJSON(){return{mathjs:"SymbolNode",name:this.name}}static fromJSON(s){return new o(s.name)}_toTex(s){var l=!1;typeof e[this.name]>"u"&&n(this.name)&&(l=!0);var u=tb(this.name,l);return u[0]==="\\"?u:" "+u}}return o},{isClass:!0,isNode:!0});var cb="FunctionNode",Tae=["math","Node","SymbolNode"],ZL=N(cb,Tae,t=>{var e,{math:r,Node:i,SymbolNode:n}=t,o=l=>Ct(l,{truncate:78});function a(l,u,c){for(var f="",m=/\$(?:\{([a-z_][a-z_0-9]*)(?:\[([0-9]+)\])?\}|\$)/gi,p=0,d;(d=m.exec(l))!==null;)if(f+=l.substring(p,d.index),p=d.index,d[0]==="$$")f+="$",p++;else{p+=d[0].length;var h=u[d[1]];if(!h)throw new ReferenceError("Template: Property "+d[1]+" does not exist.");if(d[2]===void 0)switch(typeof h){case"string":f+=h;break;case"object":if(Yt(h))f+=h.toTex(c);else if(Array.isArray(h))f+=h.map(function(v,y){if(Yt(v))return v.toTex(c);throw new TypeError("Template: "+d[1]+"["+y+"] is not a Node.")}).join(",");else throw new TypeError("Template: "+d[1]+" has to be a Node, String or array of Nodes");break;default:throw new TypeError("Template: "+d[1]+" has to be a Node, String or array of Nodes")}else if(Yt(h[d[2]]&&h[d[2]]))f+=h[d[2]].toTex(c);else throw new TypeError("Template: "+d[1]+"["+d[2]+"] is not a Node.")}return f+=l.slice(p),f}class s extends i{constructor(u,c){if(super(),typeof u=="string"&&(u=new n(u)),!Yt(u))throw new TypeError('Node expected as parameter "fn"');if(!Array.isArray(c)||!c.every(Yt))throw new TypeError('Array containing Nodes expected for parameter "args"');this.fn=u,this.args=c||[]}get name(){return this.fn.name||""}get type(){return cb}get isFunctionNode(){return!0}_compile(u,c){var f=this.args.map(T=>T._compile(u,c));if(Nr(this.fn)){var m=this.fn.name;if(c[m]){var y=this.args;return function(D,M,C){var $=Yr(M,m);if(typeof $!="function")throw new TypeError("Argument '".concat(m,"' was not a function; received: ").concat(o($)));if($.rawArgs)return $(y,u,Tl(D,M));var O=f.map(R=>R(D,M,C));return $.apply($,O)}}else{var p=m in u?Yr(u,m):void 0,d=typeof p=="function"&&p.rawArgs===!0,h=T=>{var D;if(T.has(m))D=T.get(m);else if(m in u)D=Yr(u,m);else return s.onUndefinedFunction(m);if(typeof D=="function")return D;throw new TypeError("'".concat(m,`' is not a function; its value is: - `).concat(o(D)))};if(d){var v=this.args;return function(D,M,C){var $=h(D);if($.rawArgs===!0)return $(v,u,Tl(D,M));var O=f.map(R=>R(D,M,C));return $(...O)}}else switch(f.length){case 0:return function(D,M,C){var $=h(D);return $()};case 1:return function(D,M,C){var $=h(D),O=f[0];return $(O(D,M,C))};case 2:return function(D,M,C){var $=h(D),O=f[0],R=f[1];return $(O(D,M,C),R(D,M,C))};default:return function(D,M,C){var $=h(D),O=f.map(R=>R(D,M,C));return $(...O)}}}}else if(ji(this.fn)&&uo(this.fn.index)&&this.fn.index.isObjectProperty()){var S=this.fn.object._compile(u,c),b=this.fn.index.getObjectProperty(),_=this.args;return function(D,M,C){var $=S(D,M,C),O=KI($,b);if(O!=null&&O.rawArgs)return O(_,u,Tl(D,M));var R=f.map(L=>L(D,M,C));return O.apply($,R)}}else{var w=this.fn.toString(),x=this.fn._compile(u,c),E=this.args;return function(D,M,C){var $=x(D,M,C);if(typeof $!="function")throw new TypeError("Expression '".concat(w,"' did not evaluate to a function; value is:")+` - `.concat(o($)));if($.rawArgs)return $(E,u,Tl(D,M));var O=f.map(R=>R(D,M,C));return $.apply($,O)}}}forEach(u){u(this.fn,"fn",this);for(var c=0;c'+ni(this.fn)+'('+c.join(',')+')'}toTex(u){var c;return u&&typeof u.handler=="object"&&rt(u.handler,this.name)&&(c=u.handler[this.name](this,u)),typeof c<"u"?c:super.toTex(u)}_toTex(u){var c=this.args.map(function(p){return p.toTex(u)}),f;GE[this.name]&&(f=GE[this.name]),r[this.name]&&(typeof r[this.name].toTex=="function"||typeof r[this.name].toTex=="object"||typeof r[this.name].toTex=="string")&&(f=r[this.name].toTex);var m;switch(typeof f){case"function":m=f(this,u);break;case"string":m=a(f,this,u);break;case"object":switch(typeof f[c.length]){case"function":m=f[c.length](this,u);break;case"string":m=a(f[c.length],this,u);break}}return typeof m<"u"?m:a(PL,this,u)}getIdentifier(){return this.type+":"+this.name}}return e=s,dr(s,"name",cb),dr(s,"onUndefinedFunction",function(l){throw new Error("Undefined function "+l)}),dr(s,"fromJSON",function(l){return new e(l.fn,l.args)}),s},{isClass:!0,isNode:!0});var GL="parse",Nae=["typed","numeric","config","AccessorNode","ArrayNode","AssignmentNode","BlockNode","ConditionalNode","ConstantNode","FunctionAssignmentNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","RangeNode","RelationalNode","SymbolNode"],WL=N(GL,Nae,t=>{var{typed:e,numeric:r,config:i,AccessorNode:n,ArrayNode:o,AssignmentNode:a,BlockNode:s,ConditionalNode:l,ConstantNode:u,FunctionAssignmentNode:c,FunctionNode:f,IndexNode:m,ObjectNode:p,OperatorNode:d,ParenthesisNode:h,RangeNode:v,RelationalNode:y,SymbolNode:S}=t,b=e(GL,{string:function(X){return ie(X,{})},"Array | Matrix":function(X){return _(X,{})},"string, Object":function(X,ne){var Ne=ne.nodes!==void 0?ne.nodes:{};return ie(X,Ne)},"Array | Matrix, Object":_});function _(I){var X=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ne=X.nodes!==void 0?X.nodes:{};return it(I,function(Ne){if(typeof Ne!="string")throw new TypeError("String expected");return ie(Ne,ne)})}var w={NULL:0,DELIMITER:1,NUMBER:2,SYMBOL:3,UNKNOWN:4},x={",":!0,"(":!0,")":!0,"[":!0,"]":!0,"{":!0,"}":!0,'"':!0,"'":!0,";":!0,"+":!0,"-":!0,"*":!0,".*":!0,"/":!0,"./":!0,"%":!0,"^":!0,".^":!0,"~":!0,"!":!0,"&":!0,"|":!0,"^|":!0,"=":!0,":":!0,"?":!0,"==":!0,"!=":!0,"<":!0,">":!0,"<=":!0,">=":!0,"<<":!0,">>":!0,">>>":!0},E={mod:!0,to:!0,in:!0,and:!0,xor:!0,or:!0,not:!0},T={true:!0,false:!1,null:null,undefined:void 0},D=["NaN","Infinity"],M={'"':'"',"'":"'","\\":"\\","/":"/",b:"\b",f:"\f",n:` -`,r:"\r",t:" "};function C(){return{extraNodes:{},expression:"",comment:"",index:0,token:"",tokenType:w.NULL,nestingLevel:0,conditionalLevel:null}}function $(I,X){return I.expression.substr(I.index,X)}function O(I){return $(I,1)}function R(I){I.index++}function L(I){return I.expression.charAt(I.index-1)}function k(I){return I.expression.charAt(I.index+1)}function V(I){for(I.tokenType=w.NULL,I.token="",I.comment="";;){if(O(I)==="#")for(;O(I)!==` -`&&O(I)!=="";)I.comment+=O(I),R(I);if(b.isWhitespace(O(I),I.nestingLevel))R(I);else break}if(O(I)===""){I.tokenType=w.DELIMITER;return}if(O(I)===` -`&&!I.nestingLevel){I.tokenType=w.DELIMITER,I.token=O(I),R(I);return}var X=O(I),ne=$(I,2),Ne=$(I,3);if(Ne.length===3&&x[Ne]){I.tokenType=w.DELIMITER,I.token=Ne,R(I),R(I),R(I);return}if(ne.length===2&&x[ne]){I.tokenType=w.DELIMITER,I.token=ne,R(I),R(I);return}if(x[X]){I.tokenType=w.DELIMITER,I.token=X,R(I);return}if(b.isDigitDot(X)){I.tokenType=w.NUMBER;var Xe=$(I,2);if(Xe==="0b"||Xe==="0o"||Xe==="0x"){for(I.token+=O(I),R(I),I.token+=O(I),R(I);b.isHexDigit(O(I));)I.token+=O(I),R(I);if(O(I)===".")for(I.token+=".",R(I);b.isHexDigit(O(I));)I.token+=O(I),R(I);else if(O(I)==="i")for(I.token+="i",R(I);b.isDigit(O(I));)I.token+=O(I),R(I);return}if(O(I)==="."){if(I.token+=O(I),R(I),!b.isDigit(O(I))){I.tokenType=w.DELIMITER;return}}else{for(;b.isDigit(O(I));)I.token+=O(I),R(I);b.isDecimalMark(O(I),k(I))&&(I.token+=O(I),R(I))}for(;b.isDigit(O(I));)I.token+=O(I),R(I);if(O(I)==="E"||O(I)==="e"){if(b.isDigit(k(I))||k(I)==="-"||k(I)==="+"){if(I.token+=O(I),R(I),(O(I)==="+"||O(I)==="-")&&(I.token+=O(I),R(I)),!b.isDigit(O(I)))throw we(I,'Digit expected, got "'+O(I)+'"');for(;b.isDigit(O(I));)I.token+=O(I),R(I);if(b.isDecimalMark(O(I),k(I)))throw we(I,'Digit expected, got "'+O(I)+'"')}else if(b.isDecimalMark(k(I),I.expression.charAt(I.index+2)))throw R(I),we(I,'Digit expected, got "'+O(I)+'"')}return}if(b.isAlpha(O(I),L(I),k(I))){for(;b.isAlpha(O(I),L(I),k(I))||b.isDigit(O(I));)I.token+=O(I),R(I);rt(E,I.token)?I.tokenType=w.DELIMITER:I.tokenType=w.SYMBOL;return}for(I.tokenType=w.UNKNOWN;O(I)!=="";)I.token+=O(I),R(I);throw we(I,'Syntax error in part "'+I.token+'"')}function J(I){do V(I);while(I.token===` -`)}function W(I){I.nestingLevel++}function Q(I){I.nestingLevel--}b.isAlpha=function(X,ne,Ne){return b.isValidLatinOrGreek(X)||b.isValidMathSymbol(X,Ne)||b.isValidMathSymbol(ne,X)},b.isValidLatinOrGreek=function(X){return/^[a-zA-Z_$\u00C0-\u02AF\u0370-\u03FF\u2100-\u214F]$/.test(X)},b.isValidMathSymbol=function(X,ne){return/^[\uD835]$/.test(X)&&/^[\uDC00-\uDFFF]$/.test(ne)&&/^[^\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDFCC\uDFCD]$/.test(ne)},b.isWhitespace=function(X,ne){return X===" "||X===" "||X==="\xA0"||X===` -`&&ne>0},b.isDecimalMark=function(X,ne){return X==="."&&ne!=="/"&&ne!=="*"&&ne!=="^"},b.isDigitDot=function(X){return X>="0"&&X<="9"||X==="."},b.isDigit=function(X){return X>="0"&&X<="9"},b.isHexDigit=function(X){return X>="0"&&X<="9"||X>="a"&&X<="f"||X>="A"&&X<="F"};function ie(I,X){var ne=C();Dn(ne,{expression:I,extraNodes:X}),V(ne);var Ne=B(ne);if(ne.token!=="")throw ne.tokenType===w.DELIMITER?We(ne,"Unexpected operator "+ne.token):we(ne,'Unexpected part "'+ne.token+'"');return Ne}function B(I){var X,ne=[],Ne;for(I.token!==""&&I.token!==` -`&&I.token!==";"&&(X=Z(I),I.comment&&(X.comment=I.comment));I.token===` -`||I.token===";";)ne.length===0&&X&&(Ne=I.token!==";",ne.push({node:X,visible:Ne})),V(I),I.token!==` -`&&I.token!==";"&&I.token!==""&&(X=Z(I),I.comment&&(X.comment=I.comment),Ne=I.token!==";",ne.push({node:X,visible:Ne}));return ne.length>0?new s(ne):(X||(X=new u(void 0),I.comment&&(X.comment=I.comment)),X)}function Z(I){var X,ne,Ne,Xe,gt=q(I);if(I.token==="="){if(Nr(gt))return X=gt.name,J(I),Ne=Z(I),new a(new S(X),Ne);if(ji(gt))return J(I),Ne=Z(I),new a(gt.object,gt.index,Ne);if(gi(gt)&&Nr(gt.fn)&&(Xe=!0,ne=[],X=gt.name,gt.args.forEach(function(lr,Ve){Nr(lr)?ne[Ve]=lr.name:Xe=!1}),Xe))return J(I),Ne=Z(I),new c(X,ne,Ne);throw we(I,"Invalid left hand side of assignment operator =")}return gt}function q(I){for(var X=xe(I);I.token==="?";){var ne=I.conditionalLevel;I.conditionalLevel=I.nestingLevel,J(I);var Ne=X,Xe=Z(I);if(I.token!==":")throw we(I,"False part of conditional expression expected");I.conditionalLevel=null,J(I);var gt=Z(I);X=new l(Ne,Xe,gt),I.conditionalLevel=ne}return X}function xe(I){for(var X=de(I);I.token==="or";)J(I),X=new d("or","or",[X,de(I)]);return X}function de(I){for(var X=be(I);I.token==="xor";)J(I),X=new d("xor","xor",[X,be(I)]);return X}function be(I){for(var X=G(I);I.token==="and";)J(I),X=new d("and","and",[X,G(I)]);return X}function G(I){for(var X=K(I);I.token==="|";)J(I),X=new d("|","bitOr",[X,K(I)]);return X}function K(I){for(var X=re(I);I.token==="^|";)J(I),X=new d("^|","bitXor",[X,re(I)]);return X}function re(I){for(var X=ae(I);I.token==="&";)J(I),X=new d("&","bitAnd",[X,ae(I)]);return X}function ae(I){for(var X=[le(I)],ne=[],Ne={"==":"equal","!=":"unequal","<":"smaller",">":"larger","<=":"smallerEq",">=":"largerEq"};rt(Ne,I.token);){var Xe={name:I.token,fn:Ne[I.token]};ne.push(Xe),J(I),X.push(le(I))}return X.length===1?X[0]:X.length===2?new d(ne[0].name,ne[0].fn,X):new y(ne.map(gt=>gt.fn),X)}function le(I){var X,ne,Ne,Xe;X=Se(I);for(var gt={"<<":"leftShift",">>":"rightArithShift",">>>":"rightLogShift"};rt(gt,I.token);)ne=I.token,Ne=gt[ne],J(I),Xe=[X,Se(I)],X=new d(ne,Ne,Xe);return X}function Se(I){var X,ne,Ne,Xe;X=_e(I);for(var gt={to:"to",in:"to"};rt(gt,I.token);)ne=I.token,Ne=gt[ne],J(I),ne==="in"&&"])},;".includes(I.token)?X=new d("*","multiply",[X,new S("in")],!0):(Xe=[X,_e(I)],X=new d(ne,Ne,Xe));return X}function _e(I){var X,ne=[];if(I.token===":"?X=new u(1):X=Oe(I),I.token===":"&&I.conditionalLevel!==I.nestingLevel){for(ne.push(X);I.token===":"&&ne.length<3;)J(I),I.token===")"||I.token==="]"||I.token===","||I.token===""?ne.push(new S("end")):ne.push(Oe(I));ne.length===3?X=new v(ne[0],ne[2],ne[1]):X=new v(ne[0],ne[1])}return X}function Oe(I){var X,ne,Ne,Xe;X=st(I);for(var gt={"+":"add","-":"subtract"};rt(gt,I.token);){ne=I.token,Ne=gt[ne],J(I);var lr=st(I);lr.isPercentage?Xe=[X,new d("*","multiply",[X,lr])]:Xe=[X,lr],X=new d(ne,Ne,Xe)}return X}function st(I){var X,ne,Ne,Xe;X=yt(I),ne=X;for(var gt={"*":"multiply",".*":"dotMultiply","/":"divide","./":"dotDivide","%":"mod",mod:"mod"};rt(gt,I.token);)if(Ne=I.token,Xe=gt[Ne],J(I),Ne==="%"&&I.tokenType===w.DELIMITER&&I.token!=="(")if(I.token!==""&>[I.token]){var lr=new d("/","divide",[X,new u(100)],!1,!0);Ne=I.token,Xe=gt[Ne],J(I),ne=yt(I),X=new d(Ne,Xe,[lr,ne])}else X=new d("/","divide",[X,new u(100)],!1,!0);else ne=yt(I),X=new d(Ne,Xe,[X,ne]);return X}function yt(I){var X,ne;for(X=Qe(I),ne=X;I.tokenType===w.SYMBOL||I.token==="in"&&Lt(X)||I.token==="in"&&Lr(X)&&X.fn==="unaryMinus"&&Lt(X.args[0])||I.tokenType===w.NUMBER&&!Lt(ne)&&(!Lr(ne)||ne.op==="!")||I.token==="(";)ne=Qe(I),X=new d("*","multiply",[X,ne],!0);return X}function Qe(I){for(var X=ut(I),ne=X,Ne=[];I.token==="/"&&Hp(ne);)if(Ne.push(Dn({},I)),J(I),I.tokenType===w.NUMBER)if(Ne.push(Dn({},I)),J(I),I.tokenType===w.SYMBOL||I.token==="("||I.token==="in")Dn(I,Ne.pop()),Ne.pop(),ne=ut(I),X=new d("/","divide",[X,ne]);else{Ne.pop(),Dn(I,Ne.pop());break}else{Dn(I,Ne.pop());break}return X}function ut(I){var X,ne,Ne,Xe={"-":"unaryMinus","+":"unaryPlus","~":"bitNot",not:"not"};return rt(Xe,I.token)?(Ne=Xe[I.token],X=I.token,J(I),ne=[ut(I)],new d(X,Ne,ne)):H(I)}function H(I){var X,ne,Ne,Xe;return X=oe(I),(I.token==="^"||I.token===".^")&&(ne=I.token,Ne=ne==="^"?"pow":"dotPow",J(I),Xe=[X,ut(I)],X=new d(ne,Ne,Xe)),X}function oe(I){var X,ne,Ne,Xe;X=ve(I);for(var gt={"!":"factorial","'":"ctranspose"};rt(gt,I.token);)ne=I.token,Ne=gt[ne],V(I),Xe=[X],X=new d(ne,Ne,Xe),X=Ee(I,X);return X}function ve(I){var X=[];if(I.tokenType===w.SYMBOL&&rt(I.extraNodes,I.token)){var ne=I.extraNodes[I.token];if(V(I),I.token==="("){if(X=[],W(I),V(I),I.token!==")")for(X.push(Z(I));I.token===",";)V(I),X.push(Z(I));if(I.token!==")")throw we(I,"Parenthesis ) expected");Q(I),V(I)}return new ne(X)}return De(I)}function De(I){var X,ne;return I.tokenType===w.SYMBOL||I.tokenType===w.DELIMITER&&I.token in E?(ne=I.token,V(I),rt(T,ne)?X=new u(T[ne]):D.includes(ne)?X=new u(r(ne,"number")):X=new S(ne),X=Ee(I,X),X):Ue(I)}function Ee(I,X,ne){for(var Ne;(I.token==="("||I.token==="["||I.token===".")&&(!ne||ne.includes(I.token));)if(Ne=[],I.token==="(")if(Nr(X)||ji(X)){if(W(I),V(I),I.token!==")")for(Ne.push(Z(I));I.token===",";)V(I),Ne.push(Z(I));if(I.token!==")")throw we(I,"Parenthesis ) expected");Q(I),V(I),X=new f(X,Ne)}else return X;else if(I.token==="["){if(W(I),V(I),I.token!=="]")for(Ne.push(Z(I));I.token===",";)V(I),Ne.push(Z(I));if(I.token!=="]")throw we(I,"Parenthesis ] expected");Q(I),V(I),X=new n(X,new m(Ne))}else{V(I);var Xe=I.tokenType===w.SYMBOL||I.tokenType===w.DELIMITER&&I.token in E;if(!Xe)throw we(I,"Property name expected after dot");Ne.push(new u(I.token)),V(I);var gt=!0;X=new n(X,new m(Ne,gt))}return X}function Ue(I){var X,ne;return I.token==='"'||I.token==="'"?(ne=He(I,I.token),X=new u(ne),X=Ee(I,X),X):nt(I)}function He(I,X){for(var ne="";O(I)!==""&&O(I)!==X;)if(O(I)==="\\"){R(I);var Ne=O(I),Xe=M[Ne];if(Xe!==void 0)ne+=Xe,I.index+=1;else if(Ne==="u"){var gt=I.expression.slice(I.index+1,I.index+5);if(/^[0-9A-Fa-f]{4}$/.test(gt))ne+=String.fromCharCode(parseInt(gt,16)),I.index+=5;else throw we(I,"Invalid unicode character \\u".concat(gt))}else throw we(I,"Bad escape character \\".concat(Ne))}else ne+=O(I),R(I);if(V(I),I.token!==X)throw we(I,"End of string ".concat(X," expected"));return V(I),ne}function nt(I){var X,ne,Ne,Xe;if(I.token==="["){if(W(I),V(I),I.token!=="]"){var gt=ke(I);if(I.token===";"){for(Ne=1,ne=[gt];I.token===";";)V(I),I.token!=="]"&&(ne[Ne]=ke(I),Ne++);if(I.token!=="]")throw we(I,"End of matrix ] expected");Q(I),V(I),Xe=ne[0].items.length;for(var lr=1;lr{var{typed:e,parse:r}=t;return e(HL,{string:function(n){return r(n).compile()},"Array | Matrix":function(n){return it(n,function(o){return r(o).compile()})}})});var JL="evaluate",Cae=["typed","parse"],XL=N(JL,Cae,t=>{var{typed:e,parse:r}=t;return e(JL,{string:function(n){var o=Su();return r(n).compile().evaluate(o)},"string, Map | Object":function(n,o){return r(n).compile().evaluate(o)},"Array | Matrix":function(n){var o=Su();return it(n,function(a){return r(a).compile().evaluate(o)})},"Array | Matrix, Map | Object":function(n,o){return it(n,function(a){return r(a).compile().evaluate(o)})}})});var $ae="Parser",Iae=["evaluate","parse"],KL=N($ae,Iae,t=>{var{evaluate:e,parse:r}=t;function i(){if(!(this instanceof i))throw new SyntaxError("Constructor must be called with the new operator");Object.defineProperty(this,"scope",{value:Su(),writable:!1})}i.prototype.type="Parser",i.prototype.isParser=!0,i.prototype.evaluate=function(o){return e(o,this.scope)},i.prototype.get=function(o){if(this.scope.has(o))return this.scope.get(o)},i.prototype.getAll=function(){return eF(this.scope)},i.prototype.getAllAsMap=function(){return this.scope};function n(o){if(o.length===0)return!1;for(var a=0;a0&&r.isDigit(l);if(!c)return!1}return!0}return i.prototype.set=function(o,a){if(!n(o))throw new Error("Invalid variable name: '".concat(o,"'. Variable names must follow the specified rules."));return this.scope.set(o,a),a},i.prototype.remove=function(o){this.scope.delete(o)},i.prototype.clear=function(){this.scope.clear()},i},{isClass:!0});var QL="parser",Fae=["typed","Parser"],e4=N(QL,Fae,t=>{var{typed:e,Parser:r}=t;return e(QL,{"":function(){return new r}})});var t4="lup",kae=["typed","matrix","abs","addScalar","divideScalar","multiplyScalar","subtractScalar","larger","equalScalar","unaryMinus","DenseMatrix","SparseMatrix","Spa"],r4=N(t4,kae,t=>{var{typed:e,matrix:r,abs:i,addScalar:n,divideScalar:o,multiplyScalar:a,subtractScalar:s,larger:l,equalScalar:u,unaryMinus:c,DenseMatrix:f,SparseMatrix:m,Spa:p}=t;return e(t4,{DenseMatrix:function(y){return d(y)},SparseMatrix:function(y){return h(y)},Array:function(y){var S=r(y),b=d(S);return{L:b.L.valueOf(),U:b.U.valueOf(),p:b.p}}});function d(v){var y=v._size[0],S=v._size[1],b=Math.min(y,S),_=dt(v._data),w=[],x=[y,b],E=[],T=[b,S],D,M,C,$=[];for(D=0;D0)for(D=0;D1&&e.reused===`ref`){a(n);continue}}}function fS(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(a[e.defId]=e.def)}e.external||Object.keys(a).length>0&&(e.target===`draft-2020-12`?i.$defs=a:i.definitions=a);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:hS(t,`input`,e.processors),output:hS(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function pS(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return pS(r.element,n);if(r.type===`set`)return pS(r.valueType,n);if(r.type===`lazy`)return pS(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return pS(r.innerType,n);if(r.type===`intersection`)return pS(r.left,n)||pS(r.right,n);if(r.type===`record`||r.type===`map`)return pS(r.keyType,n)||pS(r.valueType,n);if(r.type===`pipe`)return pS(r.in,n)||pS(r.out,n);if(r.type===`object`){for(let e in r.shape)if(pS(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(pS(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(pS(e,n))return!0;return!!(r.rest&&pS(r.rest,n))}return!1}var mS=(e,t={})=>n=>{let r=lS({...n,processors:t});return uS(e,r),dS(r,e),fS(r,e)},hS=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=lS({...i??{},target:a,io:t,processors:n});return uS(e,o),dS(o,e),fS(o,e)},gS={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},_S=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=gS[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},vS=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`,typeof u==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u),typeof a==`number`&&(i.minimum=a,typeof u==`number`&&t.target!==`draft-04`&&(u>=a?delete i.minimum:delete i.exclusiveMinimum)),typeof l==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l),typeof o==`number`&&(i.maximum=o,typeof l==`number`&&t.target!==`draft-04`&&(l<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c==`number`&&(i.multipleOf=c)},yS=(e,t,n,r)=>{n.type=`boolean`},bS=(e,t,n,r)=>{n.not={}},xS=(e,t,n,r)=>{let i=e._zod.def,a=W_(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},SS=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},CS=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},wS=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},TS=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=uS(a.element,t,{...r,path:[...r.path,`items`]})},ES=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=uS(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=uS(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},DS=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>uS(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},OS=(e,t,n,r)=>{let i=e._zod.def,a=uS(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=uS(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},kS=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=uS(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=uS(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=uS(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},AS=(e,t,n,r)=>{let i=e._zod.def,a=uS(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},jS=(e,t,n,r)=>{let i=e._zod.def;uS(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},MS=(e,t,n,r)=>{let i=e._zod.def;uS(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},NS=(e,t,n,r)=>{let i=e._zod.def;uS(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},PS=(e,t,n,r)=>{let i=e._zod.def;uS(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},FS=(e,t,n,r)=>{let i=e._zod.def,a=t.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;uS(a,t,r);let o=t.seen.get(e);o.ref=a},IS=(e,t,n,r)=>{let i=e._zod.def;uS(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},LS=(e,t,n,r)=>{let i=e._zod.def;uS(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},RS=X(`ZodISODateTime`,(e,t)=>{eb.init(e,t),uC.init(e,t)});function zS(e){return Ox(RS,e)}var BS=X(`ZodISODate`,(e,t)=>{tb.init(e,t),uC.init(e,t)});function VS(e){return kx(BS,e)}var HS=X(`ZodISOTime`,(e,t)=>{nb.init(e,t),uC.init(e,t)});function US(e){return Ax(HS,e)}var WS=X(`ZodISODuration`,(e,t)=>{rb.init(e,t),uC.init(e,t)});function GS(e){return jx(WS,e)}var KS=(e,t)=>{Dv.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Av(e,t)},flatten:{value:t=>kv(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,G_,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,G_,2)}},isEmpty:{get(){return e.issues.length===0}}})};X(`ZodError`,KS);var qS=X(`ZodError`,KS,{Parent:Error}),JS=jv(qS),YS=Mv(qS),XS=Nv(qS),ZS=Fv(qS),QS=Lv(qS),$S=Rv(qS),eC=zv(qS),tC=Bv(qS),nC=Vv(qS),rC=Hv(qS),iC=Uv(qS),aC=Wv(qS),oC=X(`ZodType`,(e,t)=>(By.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:hS(e,`input`),output:hS(e,`output`)}}),e.toJSONSchema=mS(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone($_(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0}),e.with=e.check,e.clone=(t,n)=>lv(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>JS(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>XS(e,t,n),e.parseAsync=async(t,n)=>YS(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>ZS(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>QS(e,t,n),e.decode=(t,n)=>$S(e,t,n),e.encodeAsync=async(t,n)=>eC(e,t,n),e.decodeAsync=async(t,n)=>tC(e,t,n),e.safeEncode=(t,n)=>nC(e,t,n),e.safeDecode=(t,n)=>rC(e,t,n),e.safeEncodeAsync=async(t,n)=>iC(e,t,n),e.safeDecodeAsync=async(t,n)=>aC(e,t,n),e.refine=(t,n)=>e.check(Ew(t,n)),e.superRefine=t=>e.check(Dw(t)),e.overwrite=t=>e.check(Qx(t)),e.optional=()=>sw(e),e.exactOptional=()=>lw(e),e.nullable=()=>dw(e),e.nullish=()=>sw(dw(e)),e.nonoptional=t=>_w(e,t),e.array=()=>UC(e),e.or=t=>qC([e,t]),e.and=t=>ZC(e,t),e.transform=t=>xw(e,aw(t)),e.default=t=>pw(e,t),e.prefault=t=>hw(e,t),e.catch=t=>yw(e,t),e.pipe=t=>xw(e,t),e.readonly=()=>Cw(e),e.describe=t=>{let n=e.clone();return rx.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return rx.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return rx.get(e);let n=e.clone();return rx.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),sC=X(`_ZodString`,(e,t)=>{Vy.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_S(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(Kx(...t)),e.includes=(...t)=>e.check(Yx(...t)),e.startsWith=(...t)=>e.check(Xx(...t)),e.endsWith=(...t)=>e.check(Zx(...t)),e.min=(...t)=>e.check(Wx(...t)),e.max=(...t)=>e.check(Ux(...t)),e.length=(...t)=>e.check(Gx(...t)),e.nonempty=(...t)=>e.check(Wx(1,...t)),e.lowercase=t=>e.check(qx(t)),e.uppercase=t=>e.check(Jx(t)),e.trim=()=>e.check(eS()),e.normalize=(...t)=>e.check($x(...t)),e.toLowerCase=()=>e.check(tS()),e.toUpperCase=()=>e.check(nS()),e.slugify=()=>e.check(rS())}),cC=X(`ZodString`,(e,t)=>{Vy.init(e,t),sC.init(e,t),e.email=t=>e.check(ox(dC,t)),e.url=t=>e.check(fx(mC,t)),e.jwt=t=>e.check(Dx(kC,t)),e.emoji=t=>e.check(px(hC,t)),e.guid=t=>e.check(sx(fC,t)),e.uuid=t=>e.check(cx(pC,t)),e.uuidv4=t=>e.check(lx(pC,t)),e.uuidv6=t=>e.check(ux(pC,t)),e.uuidv7=t=>e.check(dx(pC,t)),e.nanoid=t=>e.check(mx(gC,t)),e.guid=t=>e.check(sx(fC,t)),e.cuid=t=>e.check(hx(_C,t)),e.cuid2=t=>e.check(gx(vC,t)),e.ulid=t=>e.check(_x(yC,t)),e.base64=t=>e.check(wx(EC,t)),e.base64url=t=>e.check(Tx(DC,t)),e.xid=t=>e.check(vx(bC,t)),e.ksuid=t=>e.check(yx(xC,t)),e.ipv4=t=>e.check(bx(SC,t)),e.ipv6=t=>e.check(xx(CC,t)),e.cidrv4=t=>e.check(Sx(wC,t)),e.cidrv6=t=>e.check(Cx(TC,t)),e.e164=t=>e.check(Ex(OC,t)),e.datetime=t=>e.check(zS(t)),e.date=t=>e.check(VS(t)),e.time=t=>e.check(US(t)),e.duration=t=>e.check(GS(t))});function lC(e){return ix(cC,e)}var uC=X(`ZodStringFormat`,(e,t)=>{Hy.init(e,t),sC.init(e,t)}),dC=X(`ZodEmail`,(e,t)=>{Gy.init(e,t),uC.init(e,t)}),fC=X(`ZodGUID`,(e,t)=>{Uy.init(e,t),uC.init(e,t)}),pC=X(`ZodUUID`,(e,t)=>{Wy.init(e,t),uC.init(e,t)}),mC=X(`ZodURL`,(e,t)=>{Ky.init(e,t),uC.init(e,t)}),hC=X(`ZodEmoji`,(e,t)=>{qy.init(e,t),uC.init(e,t)}),gC=X(`ZodNanoID`,(e,t)=>{Jy.init(e,t),uC.init(e,t)}),_C=X(`ZodCUID`,(e,t)=>{Yy.init(e,t),uC.init(e,t)}),vC=X(`ZodCUID2`,(e,t)=>{Xy.init(e,t),uC.init(e,t)}),yC=X(`ZodULID`,(e,t)=>{Zy.init(e,t),uC.init(e,t)}),bC=X(`ZodXID`,(e,t)=>{Qy.init(e,t),uC.init(e,t)}),xC=X(`ZodKSUID`,(e,t)=>{$y.init(e,t),uC.init(e,t)}),SC=X(`ZodIPv4`,(e,t)=>{ib.init(e,t),uC.init(e,t)}),CC=X(`ZodIPv6`,(e,t)=>{ab.init(e,t),uC.init(e,t)}),wC=X(`ZodCIDRv4`,(e,t)=>{ob.init(e,t),uC.init(e,t)}),TC=X(`ZodCIDRv6`,(e,t)=>{sb.init(e,t),uC.init(e,t)}),EC=X(`ZodBase64`,(e,t)=>{lb.init(e,t),uC.init(e,t)}),DC=X(`ZodBase64URL`,(e,t)=>{db.init(e,t),uC.init(e,t)}),OC=X(`ZodE164`,(e,t)=>{fb.init(e,t),uC.init(e,t)}),kC=X(`ZodJWT`,(e,t)=>{mb.init(e,t),uC.init(e,t)}),AC=X(`ZodNumber`,(e,t)=>{hb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vS(e,t,n,r),e.gt=(t,n)=>e.check(Bx(t,n)),e.gte=(t,n)=>e.check(Vx(t,n)),e.min=(t,n)=>e.check(Vx(t,n)),e.lt=(t,n)=>e.check(Rx(t,n)),e.lte=(t,n)=>e.check(zx(t,n)),e.max=(t,n)=>e.check(zx(t,n)),e.int=t=>e.check(NC(t)),e.safe=t=>e.check(NC(t)),e.positive=t=>e.check(Bx(0,t)),e.nonnegative=t=>e.check(Vx(0,t)),e.negative=t=>e.check(Rx(0,t)),e.nonpositive=t=>e.check(zx(0,t)),e.multipleOf=(t,n)=>e.check(Hx(t,n)),e.step=(t,n)=>e.check(Hx(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function jC(e){return Mx(AC,e)}var MC=X(`ZodNumberFormat`,(e,t)=>{gb.init(e,t),AC.init(e,t)});function NC(e){return Nx(MC,e)}var PC=X(`ZodBoolean`,(e,t)=>{_b.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>yS(e,t,n,r)});function FC(e){return Px(PC,e)}var IC=X(`ZodAny`,(e,t)=>{vb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function LC(){return Fx(IC)}var RC=X(`ZodUnknown`,(e,t)=>{yb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function zC(){return Ix(RC)}var BC=X(`ZodNever`,(e,t)=>{bb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bS(e,t,n,r)});function VC(e){return Lx(BC,e)}var HC=X(`ZodArray`,(e,t)=>{Sb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>TS(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(Wx(t,n)),e.nonempty=t=>e.check(Wx(1,t)),e.max=(t,n)=>e.check(Ux(t,n)),e.length=(t,n)=>e.check(Gx(t,n)),e.unwrap=()=>e.element});function UC(e,t){return iS(HC,e,t)}var WC=X(`ZodObject`,(e,t)=>{Db.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ES(e,t,n,r),Z_(e,`shape`,()=>t.shape),e.keyof=()=>tw(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:zC()}),e.loose=()=>e.clone({...e._zod.def,catchall:zC()}),e.strict=()=>e.clone({...e._zod.def,catchall:VC()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>hv(e,t),e.safeExtend=t=>gv(e,t),e.merge=t=>_v(e,t),e.pick=t=>pv(e,t),e.omit=t=>mv(e,t),e.partial=(...t)=>vv(ow,e,t[0]),e.required=(...t)=>yv(gw,e,t[0])});function GC(e,t){return new WC({type:`object`,shape:e??{},...uv(t)})}var KC=X(`ZodUnion`,(e,t)=>{kb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>DS(e,t,n,r),e.options=t.options});function qC(e,t){return new KC({type:`union`,options:e,...uv(t)})}var JC=X(`ZodDiscriminatedUnion`,(e,t)=>{KC.init(e,t),Ab.init(e,t)});function YC(e,t,n){return new JC({type:`union`,options:t,discriminator:e,...uv(n)})}var XC=X(`ZodIntersection`,(e,t)=>{jb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>OS(e,t,n,r)});function ZC(e,t){return new XC({type:`intersection`,left:e,right:t})}var QC=X(`ZodRecord`,(e,t)=>{Pb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>kS(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function $C(e,t,n){return new QC({type:`record`,keyType:e,valueType:t,...uv(n)})}var ew=X(`ZodEnum`,(e,t)=>{Fb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xS(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new ew({...t,checks:[],...uv(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new ew({...t,checks:[],...uv(r),entries:i})}});function tw(e,t){return new ew({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...uv(t)})}var nw=X(`ZodLiteral`,(e,t)=>{Ib.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>SS(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function rw(e,t){return new nw({type:`literal`,values:Array.isArray(e)?e:[e],...uv(t)})}var iw=X(`ZodTransform`,(e,t)=>{Lb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>wS(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new V_(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Tv(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(Tv(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function aw(e){return new iw({type:`transform`,transform:e})}var ow=X(`ZodOptional`,(e,t)=>{zb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>LS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function sw(e){return new ow({type:`optional`,innerType:e})}var cw=X(`ZodExactOptional`,(e,t)=>{Bb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>LS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function lw(e){return new cw({type:`optional`,innerType:e})}var uw=X(`ZodNullable`,(e,t)=>{Vb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>AS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function dw(e){return new uw({type:`nullable`,innerType:e})}var fw=X(`ZodDefault`,(e,t)=>{Hb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>MS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function pw(e,t){return new fw({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():ov(t)}})}var mw=X(`ZodPrefault`,(e,t)=>{Wb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>NS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function hw(e,t){return new mw({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():ov(t)}})}var gw=X(`ZodNonOptional`,(e,t)=>{Gb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>jS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function _w(e,t){return new gw({type:`nonoptional`,innerType:e,...uv(t)})}var vw=X(`ZodCatch`,(e,t)=>{qb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>PS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function yw(e,t){return new vw({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var bw=X(`ZodPipe`,(e,t)=>{Jb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>FS(e,t,n,r),e.in=t.in,e.out=t.out});function xw(e,t){return new bw({type:`pipe`,in:e,out:t})}var Sw=X(`ZodReadonly`,(e,t)=>{Xb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>IS(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Cw(e){return new Sw({type:`readonly`,innerType:e})}var ww=X(`ZodCustom`,(e,t)=>{Qb.init(e,t),oC.init(e,t),e._zod.processJSONSchema=(t,n,r)=>CS(e,t,n,r)});function Tw(e,t){return aS(ww,e??(()=>!0),t)}function Ew(e,t={}){return oS(ww,e,t)}function Dw(e){return sS(e)}function Ow(e,t={}){let n=new ww({type:`custom`,check:`custom`,fn:t=>t instanceof e,abort:!0,...uv(t)});return n._zod.bag.Class=e,n._zod.check=t=>{t.value instanceof e||t.issues.push({code:`invalid_type`,expected:e.name,input:t.value,inst:n,path:[...n._zod.def.path??[]]})},n}function kw(e){return ax(cC,e)}function Aw(){return Tw(e=>typeof e==`function`)}function jw(e,t){return function(n){return n.refine(n=>{let r=n;return r[e]===void 0!=(r[t]===void 0)},{message:`Either ${e} or ${t} must be used, but not both.`,path:[t]})}}function Mw(){return function(e){return e}}function Nw(e,t){let n=e.safeParse(t);if(!n.success)throw new L({errorLevel:P.CRITICAL,effect:`Failed to run function due to invalid arguments. Check that the arguments that you are passing to the function match the type definition of the function.`,cause:n.error})}function Pw(e,t){return e.safeParse(t)}var Fw=[`zeroth`,`first`,`second`,`third`,`fourth`,`fifth`,`sixth`,`seventh`,`eighth`,`ninth`,`tenth`,`eleventh`,`twelfth`,`thirteenth`,`fourteenth`,`fifteenth`,`sixteenth`,`seventeenth`,`eighteenth`,`nineteenth`],Iw=[`twent`,`thirt`,`fort`,`fift`,`sixt`,`sevent`,`eight`,`ninet`];function Lw(e){return e<20?Fw[e]:e%10==0?Iw[Math.floor(e/10)-2]+`ieth`:Iw[Math.floor(e/10)-2]+`y-`+Fw[e%10]}function Rw(e){let t=``;for(let n of e.issues){let e=zw(n.path);t+=`✖ ${n.message??n.code} \n → at '${e}'\n`}return t.trim()}function zw(e){return!e||e.length===0?`unknown location`:e.map(e=>typeof e==`string`?e:typeof e==`symbol`?e.toString():Lw(e+1)+` element`).join(` > `)}function Bw(e,t,n){return jC({error:r=>r.input===void 0?`The ${e} action requires a specified ${n} with the '${t}' field.`:`The ${e} action requires the value of the '${t}' fields to be a number, but got ${typeof r.input}.`})}function Vw(e,t,n){return lC({error:r=>r.input===void 0?`The ${e} action requires a specified ${n} with the '${t}' field.`:`The ${e} action requires the value of the '${t}' fields to be a string, but got ${typeof r.input}.`})}function Hw(e,t,n){return kw({error:r=>r.input===void 0?`The ${e} action requires a specified ${n} with the '${t}' field.`:`The ${e} action requires the value of the '${t}' fields to be a string, but got ${typeof r.input}.`})}function Uw(e,t,n){return FC({error:r=>r.input===void 0?`The ${e} action requires a specified ${n} with the '${t}' field.`:`The ${e} action requires the value of the '${t}' fields to be a boolean, but got ${typeof r.input}.`})}var Ww=Mw()(GC({type:rw(Pt.COMMAND),command:Vw(`command`,`command`,`command to run`)})),Gw=Mw()(GC({type:rw(Pt.JS),file:Vw(`js`,`file`,`file path to the file to run`),args:$C(lC(),zC()).optional()})),Kw=Mw()(GC({type:rw(Pt.OPEN),link:Vw(`open`,`link`,`link to open`),newTab:Uw(`open`,`newTab`,``).optional()})),qw=Mw()(GC({type:rw(Pt.INPUT),str:Vw(`input`,`str`,`value to input`)})),Jw=Mw()(GC({type:rw(Pt.SLEEP),ms:Bw(`sleep`,`ms`,`duration`)})),Yw=Mw()(GC({type:rw(Pt.TEMPLATER_CREATE_NOTE),templateFile:Vw(`templaterCreateNote`,`templateFile`,`template file path`),folderPath:Vw(`templaterCreateNote`,`folderPath`,`folder path`).optional(),fileName:Vw(`templaterCreateNote`,`fileName`,`file name`).optional(),openNote:Uw(`templaterCreateNote`,`openNote`,`value for whether to open the note`).optional(),openIfAlreadyExists:Uw(`templaterCreateNote`,`openIfAlreadyExists`,`value for whether to open the note if it already exists`).optional()})),Xw=Mw()(GC({type:rw(Pt.RUN_TEMPLATER_FILE),templateFile:Vw(`runTemplaterFile`,`templateFile`,`template file path`)})),Zw=Mw()(GC({type:rw(Pt.UPDATE_METADATA),bindTarget:Vw(`updateMetadata`,`bindTarget`,`bind target to the metadata to update`),evaluate:Uw(`updateMetadata`,`evaluate`,`value for whether to evaluate the value as a JavaScript expression`),value:Hw(`updateMetadata`,`value for the update`,`value`)})),Qw=Mw()(GC({type:rw(Pt.CREATE_NOTE),folderPath:Vw(`createNote`,`folderPath`,`folder path`).optional(),fileName:Vw(`createNote`,`fileName`,`file name`),openNote:Uw(`createNote`,`openNote`,`value for whether to open the note`).optional(),openIfAlreadyExists:Uw(`createNote`,`openIfAlreadyExists`,`value for whether to open the note if it already exists`).optional()})),$w=Mw()(GC({type:rw(Pt.REPLACE_IN_NOTE),fromLine:Hw(`replaceInNote`,`fromLine`,`line to replace from`),toLine:Hw(`replaceInNote`,`toLine`,`line to replace to`),replacement:Vw(`replaceInNote`,`replacement`,`replacement string`),templater:Uw(`replaceInNote`,`templater`,`value for whether to use Templater`).optional()})),eT=Mw()(GC({type:rw(Pt.REPLACE_SELF),replacement:Vw(`replaceSelf`,`replacement`,`replacement string`),templater:Uw(`replaceSelf`,`templater`,`value for whether to use Templater`).optional()})),tT=Mw()(GC({type:rw(Pt.REGEXP_REPLACE_IN_NOTE),regexp:Vw(`regexpReplaceInNote`,`regexp`,`search regular expression`),regexpFlags:Vw(`regexpReplaceInNote`,`regexpFlags`,`regular expression flags string`).optional(),replacement:Vw(`regexpReplaceInNote`,`replacement`,`replacement string`)})),nT=Mw()(GC({type:rw(Pt.INSERT_INTO_NOTE),line:Hw(`insertIntoNote`,`line`,`line to insert at`),value:Vw(`insertIntoNote`,`value`,`string to insert`),templater:Uw(`insertIntoNote`,`templater`,`value for whether to use Templater`).optional()})),rT=Mw()(GC({type:rw(Pt.INLINE_JS),code:Vw(`inlineJS`,`code`,`code string to run`),args:$C(lC(),zC()).optional()})),iT=Mw()(YC(`type`,[Ww,Gw,Kw,qw,Jw,Yw,Zw,Qw,$w,eT,tT,nT,rT,Xw])),aT=tw(Nt),oT=Mw()(jw(`action`,`actions`)(GC({label:lC(),icon:lC().optional(),style:aT,class:lC().optional(),cssStyle:lC().optional(),backgroundImage:lC().optional(),tooltip:lC().optional(),id:lC().optional(),hidden:FC().optional(),action:iT.optional(),actions:iT.array().optional()}))),sT=_.sequenceMap((e,t)=>t,_.string(`BUTTON`),_.manyNotOf(`[],^`).separateBy(_.string(`,`).trim(w.optionalWhitespace())).wrapString(`[`,`]`)),cT=class{mb;constructor(e){this.mb=e}fromGroupString(e){let t=new Cn(`ButtonGroup`),n=[];try{n=se(sT,e)}catch(e){t.add(e)}return{declarationString:e,referencedButtonIds:n,errorCollection:t}}validateGroup(e){return{declarationString:void 0,referencedButtonIds:e.referencedButtonIds,errorCollection:new Cn(`ButtonGroup`)}}fromString(e){let t=new Cn(`Button`),n;try{let t=this.mb.internal.parseYaml(e);n=this.validateConfig(t)}catch(e){t.add(e)}return{declarationString:e,config:n,errorCollection:t}}validateConfig(e){let t=Pw(oT,e);if(!t.success){let e=Rw(t.error);throw new ae({errorLevel:P.ERROR,effect:`The validation for the button config failed.`,cause:`Your button syntax seems to be invalid. Check that your button config follows what is described in the docs.`,positionContext:e,docs:[Qg.linkToButtonConfig()]})}return t.data}validate(e){let t=new Cn(`Button`),n;try{n=this.validateConfig(e)}catch(e){t.add(e)}return{declarationString:void 0,config:n,errorCollection:t}}},lT=class{arguments=[];add(e){this.arguments.push(e)}validate(){let e={};for(let t of Object.values(V))e[t]=0;for(let t of this.arguments){let n=t.getConfig();if(e[n.type]+=1,e[n.type]>1&&!n.allowMultiple)throw new z({errorLevel:P.ERROR,effect:`failed to validate argument container`,cause:`argument '${n.type}' does not allow duplicates`,docs:[Qg.linkToSearch(n.type)]})}}mergeByOverride(e){for(let t of e.arguments){let e=t.getConfig();e.allowMultiple||(this.arguments=this.arguments.filter(t=>t.getConfig().type!==e.type)),this.arguments.push(t)}return this.validate(),this}mergeByThrow(e){for(let t of e.arguments){let e=t.getConfig();if(!e.allowMultiple&&this.arguments.filter(t=>t.getConfig().type===e.type).length>0)throw new z({errorLevel:P.ERROR,effect:`failed to merge argument container`,cause:`can not merge FieldArgumentContainers, since arguments overlap`});this.arguments.push(t)}return this.validate(),this}getAll(e){return this.arguments.filter(t=>t.getConfig().type===e)}get(e){return this.getAll(e).at(0)}},uT=class extends lT{getAll(e){return super.getAll(e)}get(e){return this.getAll(e).at(0)}},dT=class{value;parseValue(e){this.validateValues(e,this.getConfig().values),this._parseValue(e)}validateValues(e,t){if(t.find(t=>t.length===e.length)===void 0)throw new z({errorLevel:P.WARNING,effect:`Failed to parse argument value for argument '${this.getConfig().type}'.`,cause:`Expected argument values to follow the form ${t.map(e=>e.length===0?`none`:e.map(e=>`'${e.name}'`).join(`, `)).join(` or `)}. Received arguments of length ${e.length}.`,docs:[Qg.linkToSearch(this.getConfig().type)]})}isAllowed(e){return this.getConfig().allowedFieldTypes.length===0?!0:this.getConfig().allowedFieldTypes.includes(e)}getAllowedFieldsAsString(){return this.getConfig().allowedFieldTypes.length===0?`all`:this.getConfig().allowedFieldTypes.join(`, `)}},fT=class extends dT{},pT=class extends fT{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()===`true`}getConfig(){return On.addLabels}},mT=class extends fT{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()===`true`}getConfig(){return On.allowOther}},hT=class extends fT{value=[];_parseValue(e){this.value=e[0].value.split(` `)}getConfig(){return On.class}},gT=class extends fT{value=``;_parseValue(e){this.value=un(e[0].value)}getConfig(){return On.defaultValue}},_T=class extends fT{value=void 0;_parseValue(e){if(this.value=Number.parseInt(e[0].value),Number.isNaN(this.value))throw new z({errorLevel:P.WARNING,effect:`failed to set value for input field argument`,cause:`value of argument 'limit' must be of type number`,docs:[Qg.linkToInputFieldArgument(this.getConfig().type)]});if(this.value<=0)throw new z({errorLevel:P.WARNING,effect:`failed to set value for input field argument`,cause:`value of argument 'limit' must be a positive number`,docs:[Qg.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return On.limit}},vT=class extends fT{value=100;_parseValue(e){if(this.value=Number.parseFloat(e[0].value),Number.isNaN(this.value))throw new z({errorLevel:P.WARNING,effect:`failed to set value for input field argument`,cause:`value of argument 'maxValue' must be of type number`,docs:[Qg.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return On.maxValue}},yT=class extends fT{value=0;_parseValue(e){if(this.value=Number.parseFloat(e[0].value),Number.isNaN(this.value))throw new z({errorLevel:P.WARNING,effect:`failed to set value for input field argument`,cause:`value of argument 'minValue' must be of type number`,docs:[Qg.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return On.minValue}},bT=class extends fT{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()===`true`}getConfig(){return On.multiLine}},xT=class extends fT{value=!1;_parseValue(e){this.value=un(e[0].value)}getConfig(){return On.offValue}},ST=class extends fT{value=!0;_parseValue(e){this.value=un(e[0].value)}getConfig(){return On.onValue}},CT=class extends fT{value=``;name=``;_parseValue(e){e.length===1?(this.value=un(e[0].value),this.name=e[0].value):e.length===2&&(this.value=un(e[0].value),this.name=e[1].value)}getConfig(){return On.option}},wT=class extends fT{value=``;_parseValue(e){this.value=e[0].value}getConfig(){return On.optionQuery}},TT=class extends fT{value=``;_parseValue(e){this.value=e[0].value}getConfig(){return On.placeholder}},ET=class extends fT{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()===`true`}getConfig(){return On.showcase}},DT=class extends fT{value=0;_parseValue(e){if(this.value=Number.parseFloat(e[0].value),Number.isNaN(this.value))throw new z({errorLevel:P.WARNING,effect:`failed to set value for input field argument`,cause:`value of argument 'stepSize' must be of type number`,docs:[Qg.linkToInputFieldArgument(this.getConfig().type)]});if(this.value<=0)throw new z({errorLevel:P.WARNING,effect:`failed to set value for input field argument`,cause:`value of argument 'stepSize' must be a positive number`,docs:[Qg.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return On.stepSize}},OT=class extends fT{value=``;_parseValue(e){this.value=e[0].value}getConfig(){return On.title}};function kT(e,t,n){return n===Dn.TRUE?`[[${e}|${t}]]`:n===Dn.PARTIAL?`[[${t}]]`:`${t}`}var AT=class extends fT{value=Dn.TRUE;_parseValue(e){let t=e[0]?.value.toLowerCase();if(t===void 0){this.value=Dn.TRUE;return}if(t===Dn.TRUE||t===Dn.PARTIAL||t===Dn.FALSE){this.value=t;return}throw new z({errorLevel:P.WARNING,effect:`failed to set value for input field argument`,cause:`value of argument 'useLinks' must be one of ${Tt([Dn.TRUE,Dn.PARTIAL,Dn.FALSE],e=>`'${e}'`,`, `,`or`)}`,docs:[Qg.linkToInputFieldArgument(this.getConfig().type)]})}getConfig(){return On.useLinks}},jT={[V.CLASS]:hT,[V.ADD_LABELS]:pT,[V.MIN_VALUE]:yT,[V.MAX_VALUE]:vT,[V.STEP_SIZE]:DT,[V.OPTION]:CT,[V.TITLE]:OT,[V.OPTION_QUERY]:wT,[V.SHOWCASE]:ET,[V.OFF_VALUE]:xT,[V.ON_VALUE]:ST,[V.DEFAULT_VALUE]:gT,[V.PLACEHOLDER]:TT,[V.USE_LINKS]:AT,[V.LIMIT]:_T,[V.ALLOW_OTHER]:mT,[V.MULTI_LINE]:bT},MT=class{static createInputFieldArgument(e){if(e in jT){let t=jT[e];if(t)return new t}throw new ee({errorLevel:P.WARNING,effect:`can not crate input field argument`,cause:`unknown argument '${e}'`})}},NT=class{unvalidatedDeclaration;errorCollection;filePath;mb;constructor(e,t,n){this.mb=e,this.unvalidatedDeclaration=t,this.filePath=n,this.errorCollection=new Cn(`input field declaration`)}validate(e){let t=this.validateInputFieldType(),n=this.validateBindTarget(e),r=this.validateArguments(t),i={declarationString:this.unvalidatedDeclaration.declarationString,inputFieldType:t,bindTarget:n,argumentContainer:r,errorCollection:this.errorCollection.merge(this.unvalidatedDeclaration.errorCollection)};return this.checkForDeprecation(i),i}validateInputFieldType(){let e=this.unvalidatedDeclaration.inputFieldType;for(let t of Object.entries(B))if(t[1]===e?.value)return t[1];return this.errorCollection.add(new le(P.ERROR,`Declaration Validator`,`Encountered invalid identifier. Expected an input field type but received '${e?.value}'.`,this.unvalidatedDeclaration.declarationString,e?.position)),B.INVALID}checkForDeprecation(e){}validateBindTarget(e){if(this.unvalidatedDeclaration.bindTarget!==void 0)try{return this.mb.bindTargetParser.validate(this.unvalidatedDeclaration.declarationString,this.unvalidatedDeclaration.bindTarget,this.filePath,e)}catch(e){this.errorCollection.add(e)}}validateArguments(e){let t=new uT;for(let n of this.unvalidatedDeclaration.arguments){let r=this.validateArgumentType(n.name);if(r===V.INVALID)continue;let i=MT.createInputFieldArgument(r);if(!i.isAllowed(e)){this.errorCollection.add(new le(P.WARNING,`Declaration Validator`,`Failed to parse input field arguments. Argument "${n.name.value}" is only applicable to "${i.getAllowedFieldsAsString()}" input fields.`,this.unvalidatedDeclaration.declarationString,n.name.position));continue}try{i.parseValue(n.value)}catch(e){this.errorCollection.add(e);continue}t.add(i)}try{t.validate()}catch(e){this.errorCollection.add(e)}return t}validateArgumentType(e){for(let t of Object.entries(V))if(t[1]===e.value)return t[1];return this.errorCollection.add(new le(P.WARNING,`Declaration Validator`,`Encountered invalid identifier. Expected an input field argument type but received '${e.value}'.`,this.unvalidatedDeclaration.declarationString,e.position)),V.INVALID}},PT=_.sequenceMap((e,t,n)=>({inputFieldType:e,arguments:t,bindTarget:n===void 0?void 0:n[1]}),ue.node(_e).trim(w.optionalWhitespace()).describe(`input field type`),Pe.trim(w.optionalWhitespace()).wrap(_.string(`(`).describe(`arguments paren "("`),_.string(`)`).describe(`arguments paren ")"`)).trim(w.optionalWhitespace()).optional([]),_.sequence(_.string(`:`).trim(w.optionalWhitespace()).describe(`bind target separator ":"`),ke).trim(w.optionalWhitespace()).optional()),FT=_.sequenceMap((e,t,n)=>({inputFieldType:e,arguments:t,bindTarget:n===void 0?void 0:n[1]}),ue.node(_e).trim(w.optionalWhitespace()).optional().describe(`input field type`),Pe.trim(w.optionalWhitespace()).wrap(_.string(`(`).describe(`arguments paren "("`),_.string(`)`).describe(`arguments paren ")"`)).trim(w.optionalWhitespace()).optional([]),_.sequence(_.string(`:`).trim(w.optionalWhitespace()).describe(`bind target separator ":"`),ke).trim(w.optionalWhitespace()).optional()),IT=_.or(_.sequenceMap((e,t,n)=>(n.templateName=t,n),_.string(`INPUT`),_.sequenceMap((e,t,n)=>t,_.string(`[`),de.node(_e).trim(w.optionalWhitespace()).describe(`template name`),_.string(`]`).skip(w.optionalWhitespace())),FT.wrap(_.string(`[`),_.string(`]`)),w.eof()),_.sequenceMap((e,t)=>t,_.string(`INPUT`),PT.wrap(_.string(`[`),_.string(`]`)),w.eof())),LT=_.sequenceMap((e,t)=>t,_.string(`INPUT`),FT.wrap(_.string(`[`),_.string(`]`)),w.eof()),RT=class{mb;templates;constructor(e){this.mb=e,this.templates=[]}fromString(e){let t=new Cn(`InputField`);try{let n=se(IT,e),r=this.partialToFullDeclaration(n,e,t);return r=this.applyTemplate(r),r}catch(e){t.add(e)}return{declarationString:e,inputFieldType:{value:B.INVALID},bindTarget:void 0,arguments:[],errorCollection:t}}fromStringAndValidate(e,t,n){return this.validate(this.fromString(e),t,n)}fromSimpleDeclaration(e){return{declarationString:void 0,inputFieldType:ve(e.inputFieldType),bindTarget:this.mb.bindTargetParser.fromExistingDeclaration(e.bindTarget),arguments:(e.arguments??[]).map(e=>({name:ve(e.name),value:e.value.map(e=>ve(e))})),errorCollection:new Cn(`InputField`)}}fromSimpleDeclarationAndValidate(e,t,n){return this.validate(this.fromSimpleDeclaration(e),t,n)}partialToFullDeclaration(e,t,n){return{...structuredClone(e),declarationString:t,errorCollection:n}}validate(e,t,n){return new NT(this.mb,e,t).validate(n)}merge(e,t){let n;return e.bindTarget===void 0?n=t.bindTarget:(n=e.bindTarget,t.bindTarget?.storagePath!==void 0&&(n.storagePath=t.bindTarget.storagePath),t.bindTarget?.storageProp!==void 0&&(n.storageProp=t.bindTarget.storageProp)),{declarationString:t.declarationString,inputFieldType:t.inputFieldType??e.inputFieldType,bindTarget:n,arguments:t.arguments.concat(e.arguments).reduce((e,t)=>(e.find(e=>e.name===t.name)===void 0&&e.push(t),e),[]),errorCollection:new Cn(`input field declaration`).merge(e.errorCollection).merge(t.errorCollection)}}parseTemplateString(e){let t=new Cn(`InputFieldParser`);try{let n=se(LT,e);return this.partialToFullDeclaration(n,e,t)}catch(e){t.add(e)}return{declarationString:e,inputFieldType:{value:B.INVALID},bindTarget:void 0,arguments:[],errorCollection:t}}parseTemplates(e){this.templates=[];let t=new Cn(`input field template parser`);for(let n of e){let e=this.parseTemplateString(n.declaration);t.merge(e.errorCollection);let r={name:n.name,template:e};this.templates.push(xt(r))}return t}getTemplate(e){return this.templates.find(t=>t.name===e)?.template}applyTemplate(e){if(e.templateName===void 0)return e;let t=this.getTemplate(e.templateName.value);return t===void 0?(e.errorCollection.add(new le(P.WARNING,`Input Field Parser`,`Invalid template name. Could not find a template with the name '${e.templateName.value}'.`,e.declarationString,e.templateName.position,[`https://mprojectscode.github.io/obsidian-meta-bind-plugin-docs/guides/templates/`])),e):this.merge(t,e)}},zT=class{mb;constructor(e){this.mb=e}fromString(e){let t=new Cn(`JsViewFieldDeclaration`);try{let n=se(Ve,e);return this.partialToFullDeclaration(n,e,t)}catch(e){t.add(e)}return{declarationString:e,errorCollection:t,bindTargetMappings:[],writeToBindTarget:void 0,hidden:!1,code:``}}fromStringAndValidate(e,t){return this.validate(this.fromString(e),t)}fromSimpleDeclaration(e){let t=new Cn(`JsViewFieldDeclaration`);return{declarationString:void 0,code:e.code,bindTargetMappings:e.bindTargetMappings.map(e=>({bindTarget:this.mb.bindTargetParser.fromExistingDeclaration(e.bindTarget),name:e.name})),writeToBindTarget:this.mb.bindTargetParser.fromExistingDeclaration(e.writeToBindTarget),hidden:e.hidden??!1,errorCollection:t}}fromSimpleDeclarationAndValidate(e,t){return this.validate(this.fromSimpleDeclaration(e),t)}partialToFullDeclaration(e,t,n){let r=e;return r.declarationString=t,r.errorCollection=n,r.bindTargetMappings=[...r.bindTargetMappings],r}validate(e,t){let n={};n.declarationString=e.declarationString,n.errorCollection=e.errorCollection;try{return n.bindTargetMappings=e.bindTargetMappings.map(n=>({bindTarget:this.mb.bindTargetParser.validate(e.declarationString,n.bindTarget,t),name:n.name})),e.writeToBindTarget!==void 0&&(n.writeToBindTarget=this.mb.bindTargetParser.validate(e.declarationString,e.writeToBindTarget,t)),n.code=e.code,n.hidden=e.hidden,n}catch(e){n.errorCollection.add(e)}return{declarationString:e.declarationString,errorCollection:n.errorCollection,bindTargetMappings:[],writeToBindTarget:void 0,hidden:!1,code:``}}},BT=class extends lT{getAll(e){return super.getAll(e)}get(e){return this.getAll(e).at(0)}},VT=class extends dT{},HT=class extends VT{value=[];_parseValue(e){this.value=e[0].value.split(` `)}getConfig(){return jn.class}},UT=class extends VT{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()===`true`}getConfig(){return jn.hidden}},WT=class extends VT{value=!0;_parseValue(e){this.value=e[0]===void 0||e[0]?.value.toLowerCase()===`true`}getConfig(){return jn.renderMarkdown}},GT={[An.RENDER_MARKDOWN]:WT,[An.HIDDEN]:UT,[An.CLASS]:HT},KT=class{static createViewFieldArgument(e){if(e in GT){let t=GT[e];if(t)return new t}throw new ee({errorLevel:P.WARNING,effect:`can not crate view field argument`,cause:`unknown argument '${e}'`})}},qT=class{unvalidatedDeclaration;errorCollection;filePath;mb;constructor(e,t,n){this.unvalidatedDeclaration=e,this.mb=n,this.filePath=t,this.errorCollection=new Cn(`view field declaration`)}validate(e){let t=this.validateInputFieldType(),n=this.validateBindTarget(e),r=this.validateArguments(t),i=this.validateTemplateDeclaration(e),a={declarationString:this.unvalidatedDeclaration.declarationString,viewFieldType:t,writeToBindTarget:n,argumentContainer:r,templateDeclaration:i,errorCollection:this.errorCollection.merge(this.unvalidatedDeclaration.errorCollection)};return this.checkForDeprecation(a),a}validateInputFieldType(){let e=this.unvalidatedDeclaration.viewFieldType;if(e===void 0)return kn.MATH;for(let t of Object.entries(kn))if(t[1]===e?.value)return t[1];return this.errorCollection.add(new le(P.ERROR,`Declaration Validator`,`Encountered invalid identifier. Expected a view field type but received '${e.value}'.`,this.unvalidatedDeclaration.declarationString,e.position)),kn.INVALID}checkForDeprecation(e){}validateBindTarget(e){if(this.unvalidatedDeclaration.writeToBindTarget!==void 0)return this.mb.bindTargetParser.validate(this.unvalidatedDeclaration.declarationString,this.unvalidatedDeclaration.writeToBindTarget,this.filePath,e)}validateArguments(e){let t=new BT;for(let n of this.unvalidatedDeclaration.arguments){let r=this.validateArgumentType(n.name);if(r===An.INVALID)continue;let i=KT.createViewFieldArgument(r);if(!i.isAllowed(e)){this.errorCollection.add(new le(P.WARNING,`Declaration Validator`,`Failed to parse view field arguments. Argument "${n.name.value}" is only applicable to "${i.getAllowedFieldsAsString()}" view fields.`,this.unvalidatedDeclaration.declarationString,n.name.position));continue}try{i.parseValue(n.value)}catch(e){this.errorCollection.add(e);continue}t.add(i)}try{t.validate()}catch(e){this.errorCollection.add(e)}return t}validateArgumentType(e){for(let t of Object.entries(An))if(t[1]===e.value)return t[1];return this.errorCollection.add(new le(P.WARNING,`Declaration Validator`,`Encountered invalid identifier. Expected a view field argument type but received '${e.value}'.`,this.unvalidatedDeclaration.declarationString,e.position)),An.INVALID}validateTemplateDeclaration(e){try{return this.unvalidatedDeclaration.templateDeclaration?.map(t=>typeof t==`string`?t:this.mb.bindTargetParser.validate(this.unvalidatedDeclaration.declarationString,t,this.filePath,e))??[]}catch(e){return this.errorCollection.add(e),[]}}},JT=class{mb;constructor(e){this.mb=e}fromString(e){let t=new Cn(`ViewFieldDeclaration`);try{let n=se(ze,e);return this.partialToFullDeclaration(n,e,t)}catch(e){t.add(e)}return{declarationString:e,errorCollection:t,viewFieldType:{value:kn.INVALID},writeToBindTarget:void 0,arguments:[],templateDeclaration:[]}}fromStringAndValidate(e,t,n){return this.validate(this.fromString(e),t,n)}fromSimpleDeclaration(e){let t=new Cn(`ViewFieldDeclaration`);return{declarationString:void 0,templateDeclaration:(e.templateDeclaration??[]).map(e=>typeof e==`string`?e:this.mb.bindTargetParser.fromExistingDeclaration(e)),viewFieldType:ve(e.viewFieldType),arguments:(e.arguments??[]).map(e=>({name:ve(e.name),value:e.value.map(e=>ve(e))})),writeToBindTarget:this.mb.bindTargetParser.fromExistingDeclaration(e.writeToBindTarget),errorCollection:t}}fromSimpleDeclarationAndValidate(e,t,n){return this.validate(this.fromSimpleDeclaration(e),t,n)}partialToFullDeclaration(e,t,n){return{...structuredClone(e),declarationString:t,errorCollection:n}}validate(e,t,n){return new qT(e,t,this.mb).validate(n)}},YT=l(o(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):n.moment=r()})(e,(function(){"use strict";var e;function n(){return e.apply(null,arguments)}function r(t){e=t}function i(e){return e instanceof Array||Object.prototype.toString.call(e)===`[object Array]`}function a(e){return e!=null&&Object.prototype.toString.call(e)===`[object Object]`}function o(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function s(e){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(e).length===0;for(var t in e)if(o(e,t))return!1;return!0}function c(e){return e===void 0}function l(e){return typeof e==`number`||Object.prototype.toString.call(e)===`[object Number]`}function u(e){return e instanceof Date||Object.prototype.toString.call(e)===`[object Date]`}function d(e,t){var n=[],r,i=e.length;for(r=0;r>>0,r;for(r=0;r0)for(n=0;n=0?n?`+`:``:`-`)+(10**Math.max(0,i)).toString().substr(1)+r}var I=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,L=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,ee={},R={};function te(e,t,n,r){var i=r;typeof r==`string`&&(i=function(){return this[r]()}),e&&(R[e]=i),t&&(R[t[0]]=function(){return F(i.apply(this,arguments),t[1],t[2])}),n&&(R[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function z(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,``):e.replace(/\\/g,``)}function ne(e){var t=e.match(I),n,r;for(n=0,r=t.length;n=0&&L.test(e);)e=e.replace(L,r),L.lastIndex=0,--n;return e}var ae={LTS:`h:mm:ss A`,LT:`h:mm A`,L:`MM/DD/YYYY`,LL:`MMMM D, YYYY`,LLL:`MMMM D, YYYY h:mm A`,LLLL:`dddd, MMMM D, YYYY h:mm A`};function oe(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.match(I).map(function(e){return e===`MMMM`||e===`MM`||e===`DD`||e===`dddd`?e.slice(1):e}).join(``),this._longDateFormat[e])}var se=`Invalid date`;function ce(){return this._invalidDate}var le=`%d`,ue=/\d{1,2}/;function de(e){return this._ordinal.replace(`%d`,e)}var fe={future:`in %s`,past:`%s ago`,s:`a few seconds`,ss:`%d seconds`,m:`a minute`,mm:`%d minutes`,h:`an hour`,hh:`%d hours`,d:`a day`,dd:`%d days`,w:`a week`,ww:`%d weeks`,M:`a month`,MM:`%d months`,y:`a year`,yy:`%d years`};function pe(e,t,n,r){var i=this._relativeTime[n];return O(i)?i(e,t,n,r):i.replace(/%d/i,e)}function me(e,t){var n=this._relativeTime[e>0?`future`:`past`];return O(n)?n(t):n.replace(/%s/i,t)}var he={D:`date`,dates:`date`,date:`date`,d:`day`,days:`day`,day:`day`,e:`weekday`,weekdays:`weekday`,weekday:`weekday`,E:`isoWeekday`,isoweekdays:`isoWeekday`,isoweekday:`isoWeekday`,DDD:`dayOfYear`,dayofyears:`dayOfYear`,dayofyear:`dayOfYear`,h:`hour`,hours:`hour`,hour:`hour`,ms:`millisecond`,milliseconds:`millisecond`,millisecond:`millisecond`,m:`minute`,minutes:`minute`,minute:`minute`,M:`month`,months:`month`,month:`month`,Q:`quarter`,quarters:`quarter`,quarter:`quarter`,s:`second`,seconds:`second`,second:`second`,gg:`weekYear`,weekyears:`weekYear`,weekyear:`weekYear`,GG:`isoWeekYear`,isoweekyears:`isoWeekYear`,isoweekyear:`isoWeekYear`,w:`week`,weeks:`week`,week:`week`,W:`isoWeek`,isoweeks:`isoWeek`,isoweek:`isoWeek`,y:`year`,years:`year`,year:`year`};function ge(e){return typeof e==`string`?he[e]||he[e.toLowerCase()]:void 0}function _e(e){var t={},n,r;for(r in e)o(e,r)&&(n=ge(r),n&&(t[n]=e[r]));return t}var ve={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function ye(e){var t=[],n;for(n in e)o(e,n)&&t.push({unit:n,priority:ve[n]});return t.sort(function(e,t){return e.priority-t.priority}),t}var be=/\d/,xe=/\d\d/,Se=/\d{3}/,Ce=/\d{4}/,we=/[+-]?\d{6}/,Te=/\d\d?/,Ee=/\d\d\d\d?/,De=/\d\d\d\d\d\d?/,Oe=/\d{1,3}/,ke=/\d{1,4}/,Ae=/[+-]?\d{1,6}/,je=/\d+/,Me=/[+-]?\d+/,Ne=/Z|[+-]\d\d:?\d\d/gi,Pe=/Z|[+-]\d\d(?::?\d\d)?/gi,Fe=/[+-]?\d+(\.\d{1,3})?/,Ie=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Le=/^[1-9]\d?/,Re=/^([1-9]\d|\d)/,ze={};function Be(e,t,n){ze[e]=O(t)?t:function(e,r){return e&&n?n:t}}function Ve(e,t){return o(ze,e)?ze[e](t._strict,t._locale):new RegExp(He(e))}function He(e){return Ue(e.replace(`\\`,``).replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,r,i){return t||n||r||i}))}function Ue(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,`\\$&`)}function We(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function Ge(e){var t=+e,n=0;return t!==0&&isFinite(t)&&(n=We(t)),n}var Ke={};function qe(e,t){var n,r=t,i;for(typeof e==`string`&&(e=[e]),l(t)&&(r=function(e,n){n[t]=Ge(e)}),i=e.length,n=0;n68?1900:2e3)};var st=lt(`FullYear`,!0);function ct(){return Xe(this.year())}function lt(e,t){return function(r){return r==null?ut(this,e):(dt(this,e,r),n.updateOffset(this,t),this)}}function ut(e,t){if(!e.isValid())return NaN;var n=e._d,r=e._isUTC;switch(t){case`Milliseconds`:return r?n.getUTCMilliseconds():n.getMilliseconds();case`Seconds`:return r?n.getUTCSeconds():n.getSeconds();case`Minutes`:return r?n.getUTCMinutes():n.getMinutes();case`Hours`:return r?n.getUTCHours():n.getHours();case`Date`:return r?n.getUTCDate():n.getDate();case`Day`:return r?n.getUTCDay():n.getDay();case`Month`:return r?n.getUTCMonth():n.getMonth();case`FullYear`:return r?n.getUTCFullYear():n.getFullYear();default:return NaN}}function dt(e,t,n){var r,i,a,o,s;if(!(!e.isValid()||isNaN(n))){switch(r=e._d,i=e._isUTC,t){case`Milliseconds`:i?r.setUTCMilliseconds(n):r.setMilliseconds(n);return;case`Seconds`:i?r.setUTCSeconds(n):r.setSeconds(n);return;case`Minutes`:i?r.setUTCMinutes(n):r.setMinutes(n);return;case`Hours`:i?r.setUTCHours(n):r.setHours(n);return;case`Date`:i?r.setUTCDate(n):r.setDate(n);return;case`FullYear`:break;default:return}a=n,o=e.month(),s=e.date(),s=s===29&&o===1&&!Xe(a)?28:s,i?r.setUTCFullYear(a,o,s):r.setFullYear(a,o,s)}}function ft(e){return e=ge(e),O(this[e])?this[e]():this}function pt(e,t){if(typeof e==`object`){e=_e(e);var n=ye(e),r,i=n.length;for(r=0;r=0?(s=new Date(e+400,t,n,r,i,a,o),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,t,n,r,i,a,o),s}function Nt(e){var t,n;return e<100&&e>=0?(n=Array.prototype.slice.call(arguments),n[0]=e+400,t=new Date(Date.UTC.apply(null,n)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function Pt(e,t,n){var r=7+t-n;return-((7+Nt(e,0,r).getUTCDay()-t)%7)+r-1}function Ft(e,t,n,r,i){var a=(7+n-r)%7,o=Pt(e,r,i),s=1+7*(t-1)+a+o,c,l;return s<=0?(c=e-1,l=ot(c)+s):s>ot(e)?(c=e+1,l=s-ot(e)):(c=e,l=s),{year:c,dayOfYear:l}}function It(e,t,n){var r=Pt(e.year(),t,n),i=Math.floor((e.dayOfYear()-r-1)/7)+1,a,o;return i<1?(o=e.year()-1,a=i+Lt(o,t,n)):i>Lt(e.year(),t,n)?(a=i-Lt(e.year(),t,n),o=e.year()+1):(o=e.year(),a=i),{week:a,year:o}}function Lt(e,t,n){var r=Pt(e,t,n),i=Pt(e+1,t,n);return(ot(e)-r+i)/7}te(`w`,[`ww`,2],`wo`,`week`),te(`W`,[`WW`,2],`Wo`,`isoWeek`),Be(`w`,Te,Le),Be(`ww`,Te,xe),Be(`W`,Te,Le),Be(`WW`,Te,xe),Je([`w`,`ww`,`W`,`WW`],function(e,t,n,r){t[r.substr(0,1)]=Ge(e)});function Rt(e){return It(e,this._week.dow,this._week.doy).week}var zt={dow:0,doy:6};function Bt(){return this._week.dow}function Vt(){return this._week.doy}function Ht(e){var t=this.localeData().week(this);return e==null?t:this.add((e-t)*7,`d`)}function Ut(e){var t=It(this,1,4).week;return e==null?t:this.add((e-t)*7,`d`)}te(`d`,0,`do`,`day`),te(`dd`,0,0,function(e){return this.localeData().weekdaysMin(this,e)}),te(`ddd`,0,0,function(e){return this.localeData().weekdaysShort(this,e)}),te(`dddd`,0,0,function(e){return this.localeData().weekdays(this,e)}),te(`e`,0,0,`weekday`),te(`E`,0,0,`isoWeekday`),Be(`d`,Te),Be(`e`,Te),Be(`E`,Te),Be(`dd`,function(e,t){return t.weekdaysMinRegex(e)}),Be(`ddd`,function(e,t){return t.weekdaysShortRegex(e)}),Be(`dddd`,function(e,t){return t.weekdaysRegex(e)}),Je([`dd`,`ddd`,`dddd`],function(e,t,n,r){var i=n._locale.weekdaysParse(e,r,n._strict);i==null?h(n).invalidWeekday=e:t.d=i}),Je([`d`,`e`,`E`],function(e,t,n,r){t[r]=Ge(e)});function Wt(e,t){return typeof e==`string`?isNaN(e)?(e=t.weekdaysParse(e),typeof e==`number`?e:null):parseInt(e,10):e}function Gt(e,t){return typeof e==`string`?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Kt(e,t){return e.slice(t,7).concat(e.slice(0,t))}var qt=`Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday`.split(`_`),Jt=`Sun_Mon_Tue_Wed_Thu_Fri_Sat`.split(`_`),Yt=`Su_Mo_Tu_We_Th_Fr_Sa`.split(`_`),Xt=Ie,Zt=Ie,Qt=Ie;function $t(e,t){var n=i(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(t)?`format`:`standalone`];return e===!0?Kt(n,this._week.dow):e?n[e.day()]:n}function en(e){return e===!0?Kt(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function tn(e){return e===!0?Kt(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function nn(e,t,n){var r,i,a,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=p([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,``).toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,``).toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,``).toLocaleLowerCase();return n?t===`dddd`?(i=ht.call(this._weekdaysParse,o),i===-1?null:i):t===`ddd`?(i=ht.call(this._shortWeekdaysParse,o),i===-1?null:i):(i=ht.call(this._minWeekdaysParse,o),i===-1?null:i):t===`dddd`?(i=ht.call(this._weekdaysParse,o),i!==-1||(i=ht.call(this._shortWeekdaysParse,o),i!==-1)?i:(i=ht.call(this._minWeekdaysParse,o),i===-1?null:i)):t===`ddd`?(i=ht.call(this._shortWeekdaysParse,o),i!==-1||(i=ht.call(this._weekdaysParse,o),i!==-1)?i:(i=ht.call(this._minWeekdaysParse,o),i===-1?null:i)):(i=ht.call(this._minWeekdaysParse,o),i!==-1||(i=ht.call(this._weekdaysParse,o),i!==-1)?i:(i=ht.call(this._shortWeekdaysParse,o),i===-1?null:i))}function rn(e,t,n){var r,i,a;if(this._weekdaysParseExact)return nn.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++)if(i=p([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=RegExp(`^`+this.weekdays(i,``).replace(`.`,`\\.?`)+`$`,`i`),this._shortWeekdaysParse[r]=RegExp(`^`+this.weekdaysShort(i,``).replace(`.`,`\\.?`)+`$`,`i`),this._minWeekdaysParse[r]=RegExp(`^`+this.weekdaysMin(i,``).replace(`.`,`\\.?`)+`$`,`i`)),this._weekdaysParse[r]||(a=`^`+this.weekdays(i,``)+`|^`+this.weekdaysShort(i,``)+`|^`+this.weekdaysMin(i,``),this._weekdaysParse[r]=new RegExp(a.replace(`.`,``),`i`)),n&&t===`dddd`&&this._fullWeekdaysParse[r].test(e)||n&&t===`ddd`&&this._shortWeekdaysParse[r].test(e)||n&&t===`dd`&&this._minWeekdaysParse[r].test(e)||!n&&this._weekdaysParse[r].test(e))return r}function an(e){if(!this.isValid())return e==null?NaN:this;var t=ut(this,`Day`);return e==null?t:(e=Wt(e,this.localeData()),this.add(e-t,`d`))}function on(e){if(!this.isValid())return e==null?NaN:this;var t=(this.day()+7-this.localeData()._week.dow)%7;return e==null?t:this.add(e-t,`d`)}function sn(e){if(!this.isValid())return e==null?NaN:this;if(e!=null){var t=Gt(e,this.localeData());return this.day(this.day()%7?t:t-7)}else return this.day()||7}function cn(e){return this._weekdaysParseExact?(o(this,`_weekdaysRegex`)||dn.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(o(this,`_weekdaysRegex`)||(this._weekdaysRegex=Xt),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function ln(e){return this._weekdaysParseExact?(o(this,`_weekdaysRegex`)||dn.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(o(this,`_weekdaysShortRegex`)||(this._weekdaysShortRegex=Zt),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function un(e){return this._weekdaysParseExact?(o(this,`_weekdaysRegex`)||dn.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(o(this,`_weekdaysMinRegex`)||(this._weekdaysMinRegex=Qt),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function dn(){function e(e,t){return t.length-e.length}var t=[],n=[],r=[],i=[],a,o,s,c,l;for(a=0;a<7;a++)o=p([2e3,1]).day(a),s=Ue(this.weekdaysMin(o,``)),c=Ue(this.weekdaysShort(o,``)),l=Ue(this.weekdays(o,``)),t.push(s),n.push(c),r.push(l),i.push(s),i.push(c),i.push(l);t.sort(e),n.sort(e),r.sort(e),i.sort(e),this._weekdaysRegex=RegExp(`^(`+i.join(`|`)+`)`,`i`),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=RegExp(`^(`+r.join(`|`)+`)`,`i`),this._weekdaysShortStrictRegex=RegExp(`^(`+n.join(`|`)+`)`,`i`),this._weekdaysMinStrictRegex=RegExp(`^(`+t.join(`|`)+`)`,`i`)}function fn(){return this.hours()%12||12}function pn(){return this.hours()||24}te(`H`,[`HH`,2],0,`hour`),te(`h`,[`hh`,2],0,fn),te(`k`,[`kk`,2],0,pn),te(`hmm`,0,0,function(){return``+fn.apply(this)+F(this.minutes(),2)}),te(`hmmss`,0,0,function(){return``+fn.apply(this)+F(this.minutes(),2)+F(this.seconds(),2)}),te(`Hmm`,0,0,function(){return``+this.hours()+F(this.minutes(),2)}),te(`Hmmss`,0,0,function(){return``+this.hours()+F(this.minutes(),2)+F(this.seconds(),2)});function mn(e,t){te(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}mn(`a`,!0),mn(`A`,!1);function hn(e,t){return t._meridiemParse}Be(`a`,hn),Be(`A`,hn),Be(`H`,Te,Re),Be(`h`,Te,Le),Be(`k`,Te,Le),Be(`HH`,Te,xe),Be(`hh`,Te,xe),Be(`kk`,Te,xe),Be(`hmm`,Ee),Be(`hmmss`,De),Be(`Hmm`,Ee),Be(`Hmmss`,De),qe([`H`,`HH`],et),qe([`k`,`kk`],function(e,t,n){var r=Ge(e);t[et]=r===24?0:r}),qe([`a`,`A`],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),qe([`h`,`hh`],function(e,t,n){t[et]=Ge(e),h(n).bigHour=!0}),qe(`hmm`,function(e,t,n){var r=e.length-2;t[et]=Ge(e.substr(0,r)),t[tt]=Ge(e.substr(r)),h(n).bigHour=!0}),qe(`hmmss`,function(e,t,n){var r=e.length-4,i=e.length-2;t[et]=Ge(e.substr(0,r)),t[tt]=Ge(e.substr(r,2)),t[nt]=Ge(e.substr(i)),h(n).bigHour=!0}),qe(`Hmm`,function(e,t,n){var r=e.length-2;t[et]=Ge(e.substr(0,r)),t[tt]=Ge(e.substr(r))}),qe(`Hmmss`,function(e,t,n){var r=e.length-4,i=e.length-2;t[et]=Ge(e.substr(0,r)),t[tt]=Ge(e.substr(r,2)),t[nt]=Ge(e.substr(i))});function gn(e){return(e+``).toLowerCase().charAt(0)===`p`}var _n=/[ap]\.?m?\.?/i,vn=lt(`Hours`,!0);function yn(e,t,n){return e>11?n?`pm`:`PM`:n?`am`:`AM`}var bn={calendar:N,longDateFormat:ae,invalidDate:se,ordinal:le,dayOfMonthOrdinalParse:ue,relativeTime:fe,months:_t,monthsShort:vt,week:zt,weekdays:qt,weekdaysMin:Yt,weekdaysShort:Jt,meridiemParse:_n},xn={},Sn={},Cn;function wn(e,t){var n,r=Math.min(e.length,t.length);for(n=0;n0;){if(i=En(a.slice(0,n).join(`-`)),i)return i;if(r&&r.length>=n&&wn(a,r)>=n-1)break;n--}t++}return Cn}function V(e){return!!(e&&e.match(`^[^/\\\\]*$`))}function En(e){var n=null,r;if(xn[e]===void 0&&t!==void 0&&t&&t.exports&&V(e))try{n=Cn._abbr,r=require,r(`./locale/`+e),Dn(n)}catch{xn[e]=null}return xn[e]}function Dn(e,t){var n;return e&&(n=c(t)?An(e):On(e,t),n?Cn=n:typeof console<`u`&&console.warn&&console.warn(`Locale `+e+` not found. Did you forget to load it?`)),Cn._abbr}function On(e,t){if(t!==null){var n,r=bn;if(t.abbr=e,xn[e]!=null)D(`defineLocaleOverride`,`use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info.`),r=xn[e]._config;else if(t.parentLocale!=null)if(xn[t.parentLocale]!=null)r=xn[t.parentLocale]._config;else if(n=En(t.parentLocale),n!=null)r=n._config;else return Sn[t.parentLocale]||(Sn[t.parentLocale]=[]),Sn[t.parentLocale].push({name:e,config:t}),null;return xn[e]=new j(A(r,t)),Sn[e]&&Sn[e].forEach(function(e){On(e.name,e.config)}),Dn(e),xn[e]}else return delete xn[e],null}function kn(e,t){if(t!=null){var n,r,i=bn;xn[e]!=null&&xn[e].parentLocale!=null?xn[e].set(A(xn[e]._config,t)):(r=En(e),r!=null&&(i=r._config),t=A(i,t),r??(t.abbr=e),n=new j(t),n.parentLocale=xn[e],xn[e]=n),Dn(e)}else xn[e]!=null&&(xn[e].parentLocale==null?xn[e]!=null&&delete xn[e]:(xn[e]=xn[e].parentLocale,e===Dn()&&Dn(e)));return xn[e]}function An(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Cn;if(!i(e)){if(t=En(e),t)return t;e=[e]}return B(e)}function jn(){return M(xn)}function Mn(e){var t,n=e._a;return n&&h(e).overflow===-2&&(t=n[Qe]<0||n[Qe]>11?Qe:n[$e]<1||n[$e]>gt(n[Ze],n[Qe])?$e:n[et]<0||n[et]>24||n[et]===24&&(n[tt]!==0||n[nt]!==0||n[rt]!==0)?et:n[tt]<0||n[tt]>59?tt:n[nt]<0||n[nt]>59?nt:n[rt]<0||n[rt]>999?rt:-1,h(e)._overflowDayOfYear&&(t$e)&&(t=$e),h(e)._overflowWeeks&&t===-1&&(t=it),h(e)._overflowWeekday&&t===-1&&(t=at),h(e).overflow=t),e}var Nn=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Pn=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Fn=/Z|[+-]\d\d(?::?\d\d)?/,In=[[`YYYYYY-MM-DD`,/[+-]\d{6}-\d\d-\d\d/],[`YYYY-MM-DD`,/\d{4}-\d\d-\d\d/],[`GGGG-[W]WW-E`,/\d{4}-W\d\d-\d/],[`GGGG-[W]WW`,/\d{4}-W\d\d/,!1],[`YYYY-DDD`,/\d{4}-\d{3}/],[`YYYY-MM`,/\d{4}-\d\d/,!1],[`YYYYYYMMDD`,/[+-]\d{10}/],[`YYYYMMDD`,/\d{8}/],[`GGGG[W]WWE`,/\d{4}W\d{3}/],[`GGGG[W]WW`,/\d{4}W\d{2}/,!1],[`YYYYDDD`,/\d{7}/],[`YYYYMM`,/\d{6}/,!1],[`YYYY`,/\d{4}/,!1]],Ln=[[`HH:mm:ss.SSSS`,/\d\d:\d\d:\d\d\.\d+/],[`HH:mm:ss,SSSS`,/\d\d:\d\d:\d\d,\d+/],[`HH:mm:ss`,/\d\d:\d\d:\d\d/],[`HH:mm`,/\d\d:\d\d/],[`HHmmss.SSSS`,/\d\d\d\d\d\d\.\d+/],[`HHmmss,SSSS`,/\d\d\d\d\d\d,\d+/],[`HHmmss`,/\d\d\d\d\d\d/],[`HHmm`,/\d\d\d\d/],[`HH`,/\d\d/]],Rn=/^\/?Date\((-?\d+)/i,zn=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Bn={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Vn(e){var t,n,r=e._i,i=Nn.exec(r)||Pn.exec(r),a,o,s,c,l=In.length,u=Ln.length;if(i){for(h(e).iso=!0,t=0,n=l;tot(o)||e._dayOfYear===0)&&(h(e)._overflowDayOfYear=!0),n=Nt(o,0,e._dayOfYear),e._a[Qe]=n.getUTCMonth(),e._a[$e]=n.getUTCDate()),t=0;t<3&&e._a[t]==null;++t)e._a[t]=r[t]=i[t];for(;t<7;t++)e._a[t]=r[t]=e._a[t]==null?+(t===2):e._a[t];e._a[et]===24&&e._a[tt]===0&&e._a[nt]===0&&e._a[rt]===0&&(e._nextDay=!0,e._a[et]=0),e._d=(e._useUTC?Nt:Mt).apply(null,r),a=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[et]=24),e._w&&e._w.d!==void 0&&e._w.d!==a&&(h(e).weekdayMismatch=!0)}}function Qn(e){var t=e._w,n,r,i,a,o,s,c,l;t.GG!=null||t.W!=null||t.E!=null?(a=1,o=4,n=Yn(t.GG,e._a[Ze],It(sr(),1,4).year),r=Yn(t.W,1),i=Yn(t.E,1),(i<1||i>7)&&(c=!0)):(a=e._locale._week.dow,o=e._locale._week.doy,l=It(sr(),a,o),n=Yn(t.gg,e._a[Ze],l.year),r=Yn(t.w,l.week),t.d==null?t.e==null?i=a:(i=t.e+a,(t.e<0||t.e>6)&&(c=!0)):(i=t.d,(i<0||i>6)&&(c=!0))),r<1||r>Lt(n,a,o)?h(e)._overflowWeeks=!0:c==null?(s=Ft(n,r,i,a,o),e._a[Ze]=s.year,e._dayOfYear=s.dayOfYear):h(e)._overflowWeekday=!0}n.ISO_8601=function(){},n.RFC_2822=function(){};function $n(e){if(e._f===n.ISO_8601){Vn(e);return}if(e._f===n.RFC_2822){qn(e);return}e._a=[],h(e).empty=!0;var t=``+e._i,r,i,a,o,s,c=t.length,l=0,u,d;for(a=ie(e._f,e._locale).match(I)||[],d=a.length,r=0;r0&&h(e).unusedInput.push(s),t=t.slice(t.indexOf(i)+i.length),l+=i.length),R[o]?(i?h(e).empty=!1:h(e).unusedTokens.push(o),Ye(o,i,e)):e._strict&&!i&&h(e).unusedTokens.push(o);h(e).charsLeftOver=c-l,t.length>0&&h(e).unusedInput.push(t),e._a[et]<=12&&h(e).bigHour===!0&&e._a[et]>0&&(h(e).bigHour=void 0),h(e).parsedDateParts=e._a.slice(0),h(e).meridiem=e._meridiem,e._a[et]=er(e._locale,e._a[et],e._meridiem),u=h(e).era,u!==null&&(e._a[Ze]=e._locale.erasConvertYear(u,e._a[Ze])),Zn(e),Mn(e)}function er(e,t,n){var r;return n==null?t:e.meridiemHour==null?e.isPM==null?t:(r=e.isPM(n),r&&t<12&&(t+=12),!r&&t===12&&(t=0),t):e.meridiemHour(t,n)}function tr(e){var t,n,r,i,a,o,s=!1,c=e._f.length;if(c===0){h(e).invalidFormat=!0,e._d=new Date(NaN);return}for(i=0;ithis?this:e:v()});function ur(e,t){var n,r;if(t.length===1&&i(t[0])&&(t=t[0]),!t.length)return sr();for(n=t[0],r=1;rthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Pr(){if(!c(this._isDSTShifted))return this._isDSTShifted;var e={},t;return x(e,this),e=ir(e),e._a?(t=e._isUTC?p(e._a):sr(e._a),this._isDSTShifted=this.isValid()&&xr(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function Fr(){return this.isValid()?!this._isUTC:!1}function H(){return this.isValid()?this._isUTC:!1}function Ir(){return this.isValid()?this._isUTC&&this._offset===0:!1}var Lr=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,Rr=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function zr(e,t){var n=e,r=null,i,a,s;return yr(e)?n={ms:e._milliseconds,d:e._days,M:e._months}:l(e)||!isNaN(+e)?(n={},t?n[t]=+e:n.milliseconds=+e):(r=Lr.exec(e))?(i=r[1]===`-`?-1:1,n={y:0,d:Ge(r[$e])*i,h:Ge(r[et])*i,m:Ge(r[tt])*i,s:Ge(r[nt])*i,ms:Ge(br(r[rt]*1e3))*i}):(r=Rr.exec(e))?(i=r[1]===`-`?-1:1,n={y:Br(r[2],i),M:Br(r[3],i),w:Br(r[4],i),d:Br(r[5],i),h:Br(r[6],i),m:Br(r[7],i),s:Br(r[8],i)}):n==null?n={}:typeof n==`object`&&(`from`in n||`to`in n)&&(s=Hr(sr(n.from),sr(n.to)),n={},n.ms=s.milliseconds,n.M=s.months),a=new vr(n),yr(e)&&o(e,`_locale`)&&(a._locale=e._locale),yr(e)&&o(e,`_isValid`)&&(a._isValid=e._isValid),a}zr.fn=vr.prototype,zr.invalid=_r;function Br(e,t){var n=e&&parseFloat(e.replace(`,`,`.`));return(isNaN(n)?0:n)*t}function Vr(e,t){var n={};return n.months=t.month()-e.month()+(t.year()-e.year())*12,e.clone().add(n.months,`M`).isAfter(t)&&--n.months,n.milliseconds=t-+e.clone().add(n.months,`M`),n}function Hr(e,t){var n;return e.isValid()&&t.isValid()?(t=Tr(t,e),e.isBefore(t)?n=Vr(e,t):(n=Vr(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Ur(e,t){return function(n,r){var i,a;return r!==null&&!isNaN(+r)&&(D(t,`moment().`+t+`(period, number) is deprecated. Please use moment().`+t+`(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.`),a=n,n=r,r=a),i=zr(n,r),Wr(this,i,e),this}}function Wr(e,t,r,i){var a=t._milliseconds,o=br(t._days),s=br(t._months);e.isValid()&&(i??=!0,s&&Et(e,ut(e,`Month`)+s*r),o&&dt(e,`Date`,ut(e,`Date`)+o*r),a&&e._d.setTime(e._d.valueOf()+a*r),i&&n.updateOffset(e,o||s))}var Gr=Ur(1,`add`),Kr=Ur(-1,`subtract`);function qr(e){return typeof e==`string`||e instanceof String}function Jr(e){return C(e)||u(e)||qr(e)||l(e)||Xr(e)||Yr(e)||e==null}function Yr(e){var t=a(e)&&!s(e),n=!1,r=[`years`,`year`,`y`,`months`,`month`,`M`,`days`,`day`,`d`,`dates`,`date`,`D`,`hours`,`hour`,`h`,`minutes`,`minute`,`m`,`seconds`,`second`,`s`,`milliseconds`,`millisecond`,`ms`],i,c,l=r.length;for(i=0;in.valueOf():n.valueOf()9999?re(n,t?`YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]`:`YYYYYY-MM-DD[T]HH:mm:ss.SSSZ`):O(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace(`Z`,re(n,`Z`)):re(n,t?`YYYY-MM-DD[T]HH:mm:ss.SSS[Z]`:`YYYY-MM-DD[T]HH:mm:ss.SSSZ`)}function di(){if(!this.isValid())return`moment.invalid(/* `+this._i+` */)`;var e=`moment`,t=``,n,r,i,a;return this.isLocal()||(e=this.utcOffset()===0?`moment.utc`:`moment.parseZone`,t=`Z`),n=`[`+e+`("]`,r=0<=this.year()&&this.year()<=9999?`YYYY`:`YYYYYY`,i=`-MM-DD[T]HH:mm:ss.SSS`,a=t+`[")]`,this.format(n+r+i+a)}function fi(e){e||=this.isUtc()?n.defaultFormatUtc:n.defaultFormat;var t=re(this,e);return this.localeData().postformat(t)}function pi(e,t){return this.isValid()&&(C(e)&&e.isValid()||sr(e).isValid())?zr({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function mi(e){return this.from(sr(),e)}function hi(e,t){return this.isValid()&&(C(e)&&e.isValid()||sr(e).isValid())?zr({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function gi(e){return this.to(sr(),e)}function _i(e){var t;return e===void 0?this._locale._abbr:(t=An(e),t!=null&&(this._locale=t),this)}var vi=T(`moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.`,function(e){return e===void 0?this.localeData():this.locale(e)});function yi(){return this._locale}var bi=1e3,xi=60*bi,Si=60*xi,Ci=146097*24*Si;function wi(e,t){return(e%t+t)%t}function Ti(e,t,n){return e<100&&e>=0?new Date(e+400,t,n)-Ci:new Date(e,t,n).valueOf()}function Ei(e,t,n){return e<100&&e>=0?Date.UTC(e+400,t,n)-Ci:Date.UTC(e,t,n)}function Di(e){var t,r;if(e=ge(e),e===void 0||e===`millisecond`||!this.isValid())return this;switch(r=this._isUTC?Ei:Ti,e){case`year`:t=r(this.year(),0,1);break;case`quarter`:t=r(this.year(),this.month()-this.month()%3,1);break;case`month`:t=r(this.year(),this.month(),1);break;case`week`:t=r(this.year(),this.month(),this.date()-this.weekday());break;case`isoWeek`:t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case`day`:case`date`:t=r(this.year(),this.month(),this.date());break;case`hour`:t=this._d.valueOf(),t-=wi(t+(this._isUTC?0:this.utcOffset()*xi),Si);break;case`minute`:t=this._d.valueOf(),t-=wi(t,xi);break;case`second`:t=this._d.valueOf(),t-=wi(t,bi);break}return this._d.setTime(t),n.updateOffset(this,!0),this}function Oi(e){var t,r;if(e=ge(e),e===void 0||e===`millisecond`||!this.isValid())return this;switch(r=this._isUTC?Ei:Ti,e){case`year`:t=r(this.year()+1,0,1)-1;break;case`quarter`:t=r(this.year(),this.month()-this.month()%3+3,1)-1;break;case`month`:t=r(this.year(),this.month()+1,1)-1;break;case`week`:t=r(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case`isoWeek`:t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case`day`:case`date`:t=r(this.year(),this.month(),this.date()+1)-1;break;case`hour`:t=this._d.valueOf(),t+=Si-wi(t+(this._isUTC?0:this.utcOffset()*xi),Si)-1;break;case`minute`:t=this._d.valueOf(),t+=xi-wi(t,xi)-1;break;case`second`:t=this._d.valueOf(),t+=bi-wi(t,bi)-1;break}return this._d.setTime(t),n.updateOffset(this,!0),this}function ki(){return this._d.valueOf()-(this._offset||0)*6e4}function Ai(){return Math.floor(this.valueOf()/1e3)}function ji(){return new Date(this.valueOf())}function Mi(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function Ni(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function Pi(){return this.isValid()?this.toISOString():null}function Fi(){return _(this)}function Ii(){return f({},h(this))}function Li(){return h(this).overflow}function Ri(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}te(`N`,0,0,`eraAbbr`),te(`NN`,0,0,`eraAbbr`),te(`NNN`,0,0,`eraAbbr`),te(`NNNN`,0,0,`eraName`),te(`NNNNN`,0,0,`eraNarrow`),te(`y`,[`y`,1],`yo`,`eraYear`),te(`y`,[`yy`,2],0,`eraYear`),te(`y`,[`yyy`,3],0,`eraYear`),te(`y`,[`yyyy`,4],0,`eraYear`),Be(`N`,Yi),Be(`NN`,Yi),Be(`NNN`,Yi),Be(`NNNN`,Xi),Be(`NNNNN`,Zi),qe([`N`,`NN`,`NNN`,`NNNN`,`NNNNN`],function(e,t,n,r){var i=n._locale.erasParse(e,r,n._strict);i?h(n).era=i:h(n).invalidEra=e}),Be(`y`,je),Be(`yy`,je),Be(`yyy`,je),Be(`yyyy`,je),Be(`yo`,Qi),qe([`y`,`yy`,`yyy`,`yyyy`],Ze),qe([`yo`],function(e,t,n,r){var i;n._locale._eraYearOrdinalRegex&&(i=e.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?t[Ze]=n._locale.eraYearOrdinalParse(e,i):t[Ze]=parseInt(e,10)});function zi(e,t){var r,i,a,o=this._eras||An(`en`)._eras;for(r=0,i=o.length;r=0)return a[r]}function Vi(e,t){var r=e.since<=e.until?1:-1;return t===void 0?n(e.since).year():n(e.since).year()+(t-e.offset)*r}function Hi(){var e,t,n,r=this.localeData().eras();for(e=0,t=r.length;ea&&(t=a),ca.call(this,e,t,n,r,i))}function ca(e,t,n,r,i){var a=Ft(e,t,n,r,i),o=Nt(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}te(`Q`,0,`Qo`,`quarter`),Be(`Q`,be),qe(`Q`,function(e,t){t[Qe]=(Ge(e)-1)*3});function la(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}te(`D`,[`DD`,2],`Do`,`date`),Be(`D`,Te,Le),Be(`DD`,Te,xe),Be(`Do`,function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),qe([`D`,`DD`],$e),qe(`Do`,function(e,t){t[$e]=Ge(e.match(Te)[0])});var ua=lt(`Date`,!0);te(`DDD`,[`DDDD`,3],`DDDo`,`dayOfYear`),Be(`DDD`,Oe),Be(`DDDD`,Se),qe([`DDD`,`DDDD`],function(e,t,n){n._dayOfYear=Ge(e)});function da(e){var t=Math.round((this.clone().startOf(`day`)-this.clone().startOf(`year`))/864e5)+1;return e==null?t:this.add(e-t,`d`)}te(`m`,[`mm`,2],0,`minute`),Be(`m`,Te,Re),Be(`mm`,Te,xe),qe([`m`,`mm`],tt);var fa=lt(`Minutes`,!1);te(`s`,[`ss`,2],0,`second`),Be(`s`,Te,Re),Be(`ss`,Te,xe),qe([`s`,`ss`],nt);var pa=lt(`Seconds`,!1);te(`S`,0,0,function(){return~~(this.millisecond()/100)}),te(0,[`SS`,2],0,function(){return~~(this.millisecond()/10)}),te(0,[`SSS`,3],0,`millisecond`),te(0,[`SSSS`,4],0,function(){return this.millisecond()*10}),te(0,[`SSSSS`,5],0,function(){return this.millisecond()*100}),te(0,[`SSSSSS`,6],0,function(){return this.millisecond()*1e3}),te(0,[`SSSSSSS`,7],0,function(){return this.millisecond()*1e4}),te(0,[`SSSSSSSS`,8],0,function(){return this.millisecond()*1e5}),te(0,[`SSSSSSSSS`,9],0,function(){return this.millisecond()*1e6}),Be(`S`,Oe,be),Be(`SS`,Oe,xe),Be(`SSS`,Oe,Se);var ma,ha;for(ma=`SSSS`;ma.length<=9;ma+=`S`)Be(ma,je);function ga(e,t){t[rt]=Ge((`0.`+e)*1e3)}for(ma=`S`;ma.length<=9;ma+=`S`)qe(ma,ga);ha=lt(`Milliseconds`,!1),te(`z`,0,0,`zoneAbbr`),te(`zz`,0,0,`zoneName`);function _a(){return this._isUTC?`UTC`:``}function U(){return this._isUTC?`Coordinated Universal Time`:``}var W=S.prototype;W.add=Gr,W.calendar=$r,W.clone=ei,W.diff=si,W.endOf=Oi,W.format=fi,W.from=pi,W.fromNow=mi,W.to=hi,W.toNow=gi,W.get=ft,W.invalidAt=Li,W.isAfter=ti,W.isBefore=ni,W.isBetween=ri,W.isSame=ii,W.isSameOrAfter=ai,W.isSameOrBefore=oi,W.isValid=Fi,W.lang=vi,W.locale=_i,W.localeData=yi,W.max=lr,W.min=cr,W.parsingFlags=Ii,W.set=pt,W.startOf=Di,W.subtract=Kr,W.toArray=Mi,W.toObject=Ni,W.toDate=ji,W.toISOString=ui,W.inspect=di,typeof Symbol<`u`&&Symbol.for!=null&&(W[Symbol.for(`nodejs.util.inspect.custom`)]=function(){return`Moment<`+this.format()+`>`}),W.toJSON=Pi,W.toString=li,W.unix=Ai,W.valueOf=ki,W.creationData=Ri,W.eraName=Hi,W.eraNarrow=Ui,W.eraAbbr=Wi,W.eraYear=Gi,W.year=st,W.isLeapYear=ct,W.weekYear=ta,W.isoWeekYear=na,W.quarter=W.quarters=la,W.month=Dt,W.daysInMonth=Ot,W.week=W.weeks=Ht,W.isoWeek=W.isoWeeks=Ut,W.weeksInYear=aa,W.weeksInWeekYear=oa,W.isoWeeksInYear=ra,W.isoWeeksInISOWeekYear=ia,W.date=ua,W.day=W.days=an,W.weekday=on,W.isoWeekday=sn,W.dayOfYear=da,W.hour=W.hours=vn,W.minute=W.minutes=fa,W.second=W.seconds=pa,W.millisecond=W.milliseconds=ha,W.utcOffset=Dr,W.utc=kr,W.local=Ar,W.parseZone=jr,W.hasAlignedHourOffset=Mr,W.isDST=Nr,W.isLocal=Fr,W.isUtcOffset=H,W.isUtc=Ir,W.isUTC=Ir,W.zoneAbbr=_a,W.zoneName=U,W.dates=T(`dates accessor is deprecated. Use date instead.`,ua),W.months=T(`months accessor is deprecated. Use month instead`,Dt),W.years=T(`years accessor is deprecated. Use year instead`,st),W.zone=T(`moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/`,Or),W.isDSTShifted=T(`isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information`,Pr);function G(e){return sr(e*1e3)}function va(){return sr.apply(null,arguments).parseZone()}function ya(e){return e}var ba=j.prototype;ba.calendar=P,ba.longDateFormat=oe,ba.invalidDate=ce,ba.ordinal=de,ba.preparse=ya,ba.postformat=ya,ba.relativeTime=pe,ba.pastFuture=me,ba.set=k,ba.eras=zi,ba.erasParse=Bi,ba.erasConvertYear=Vi,ba.erasAbbrRegex=qi,ba.erasNameRegex=Ki,ba.erasNarrowRegex=Ji,ba.months=St,ba.monthsShort=Ct,ba.monthsParse=Tt,ba.monthsRegex=At,ba.monthsShortRegex=kt,ba.week=Rt,ba.firstDayOfYear=Vt,ba.firstDayOfWeek=Bt,ba.weekdays=$t,ba.weekdaysMin=tn,ba.weekdaysShort=en,ba.weekdaysParse=rn,ba.weekdaysRegex=cn,ba.weekdaysShortRegex=ln,ba.weekdaysMinRegex=un,ba.isPM=gn,ba.meridiem=yn;function xa(e,t,n,r){var i=An(),a=p().set(r,t);return i[n](a,e)}function Sa(e,t,n){if(l(e)&&(t=e,e=void 0),e||=``,t!=null)return xa(e,t,n,`month`);var r,i=[];for(r=0;r<12;r++)i[r]=xa(e,r,n,`month`);return i}function Ca(e,t,n,r){typeof e==`boolean`?(l(t)&&(n=t,t=void 0),t||=``):(t=e,n=t,e=!1,l(t)&&(n=t,t=void 0),t||=``);var i=An(),a=e?i._week.dow:0,o,s=[];if(n!=null)return xa(t,(n+a)%7,r,`day`);for(o=0;o<7;o++)s[o]=xa(t,(o+a)%7,r,`day`);return s}function wa(e,t){return Sa(e,t,`months`)}function Ta(e,t){return Sa(e,t,`monthsShort`)}function Ea(e,t,n){return Ca(e,t,n,`weekdays`)}function Da(e,t,n){return Ca(e,t,n,`weekdaysShort`)}function Oa(e,t,n){return Ca(e,t,n,`weekdaysMin`)}Dn(`en`,{eras:[{since:`0001-01-01`,until:1/0,offset:1,name:`Anno Domini`,narrow:`AD`,abbr:`AD`},{since:`0000-12-31`,until:-1/0,offset:1,name:`Before Christ`,narrow:`BC`,abbr:`BC`}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(Ge(e%100/10)===1?`th`:t===1?`st`:t===2?`nd`:t===3?`rd`:`th`)}}),n.lang=T(`moment.lang is deprecated. Use moment.locale instead.`,Dn),n.langData=T(`moment.langData is deprecated. Use moment.localeData instead.`,An);var ka=Math.abs;function Aa(){var e=this._data;return this._milliseconds=ka(this._milliseconds),this._days=ka(this._days),this._months=ka(this._months),e.milliseconds=ka(e.milliseconds),e.seconds=ka(e.seconds),e.minutes=ka(e.minutes),e.hours=ka(e.hours),e.months=ka(e.months),e.years=ka(e.years),this}function ja(e,t,n,r){var i=zr(t,n);return e._milliseconds+=r*i._milliseconds,e._days+=r*i._days,e._months+=r*i._months,e._bubble()}function Ma(e,t){return ja(this,e,t,1)}function Na(e,t){return ja(this,e,t,-1)}function Pa(e){return e<0?Math.floor(e):Math.ceil(e)}function Fa(){var e=this._milliseconds,t=this._days,n=this._months,r=this._data,i,a,o,s,c;return e>=0&&t>=0&&n>=0||e<=0&&t<=0&&n<=0||(e+=Pa(La(n)+t)*864e5,t=0,n=0),r.milliseconds=e%1e3,i=We(e/1e3),r.seconds=i%60,a=We(i/60),r.minutes=a%60,o=We(a/60),r.hours=o%24,t+=We(o/24),c=We(Ia(t)),n+=c,t-=Pa(La(c)),s=We(n/12),n%=12,r.days=t,r.months=n,r.years=s,this}function Ia(e){return e*4800/146097}function La(e){return e*146097/4800}function Ra(e){if(!this.isValid())return NaN;var t,n,r=this._milliseconds;if(e=ge(e),e===`month`||e===`quarter`||e===`year`)switch(t=this._days+r/864e5,n=this._months+Ia(t),e){case`month`:return n;case`quarter`:return n/3;case`year`:return n/12}else switch(t=this._days+Math.round(La(this._months)),e){case`week`:return t/7+r/6048e5;case`day`:return t+r/864e5;case`hour`:return t*24+r/36e5;case`minute`:return t*1440+r/6e4;case`second`:return t*86400+r/1e3;case`millisecond`:return Math.floor(t*864e5)+r;default:throw Error(`Unknown unit `+e)}}function za(e){return function(){return this.as(e)}}var Ba=za(`ms`),Va=za(`s`),Ha=za(`m`),Ua=za(`h`),Wa=za(`d`),Ga=za(`w`),Ka=za(`M`),qa=za(`Q`),Ja=za(`y`),Ya=Ba;function Xa(){return zr(this)}function Za(e){return e=ge(e),this.isValid()?this[e+`s`]():NaN}function Qa(e){return function(){return this.isValid()?this._data[e]:NaN}}var $a=Qa(`milliseconds`),eo=Qa(`seconds`),to=Qa(`minutes`),no=Qa(`hours`),ro=Qa(`days`),io=Qa(`months`),ao=Qa(`years`);function oo(){return We(this.days()/7)}var so=Math.round,co={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function lo(e,t,n,r,i){return i.relativeTime(t||1,!!n,e,r)}function uo(e,t,n,r){var i=zr(e).abs(),a=so(i.as(`s`)),o=so(i.as(`m`)),s=so(i.as(`h`)),c=so(i.as(`d`)),l=so(i.as(`M`)),u=so(i.as(`w`)),d=so(i.as(`y`)),f=a<=n.ss&&[`s`,a]||a0,f[4]=r,lo.apply(null,f)}function fo(e){return e===void 0?so:typeof e==`function`?(so=e,!0):!1}function po(e,t){return co[e]===void 0?!1:t===void 0?co[e]:(co[e]=t,e===`s`&&(co.ss=t-1),!0)}function mo(e,t){if(!this.isValid())return this.localeData().invalidDate();var n=!1,r=co,i,a;return typeof e==`object`&&(t=e,e=!1),typeof e==`boolean`&&(n=e),typeof t==`object`&&(r=Object.assign({},co,t),t.s!=null&&t.ss==null&&(r.ss=t.s-1)),i=this.localeData(),a=uo(this,!n,r,i),n&&(a=i.pastFuture(+this,a)),i.postformat(a)}var ho=Math.abs;function go(e){return(e>0)-(e<0)||+e}function _o(){if(!this.isValid())return this.localeData().invalidDate();var e=ho(this._milliseconds)/1e3,t=ho(this._days),n=ho(this._months),r,i,a,o,s=this.asSeconds(),c,l,u,d;return s?(r=We(e/60),i=We(r/60),e%=60,r%=60,a=We(n/12),n%=12,o=e?e.toFixed(3).replace(/\.?0+$/,``):``,c=s<0?`-`:``,l=go(this._months)===go(s)?``:`-`,u=go(this._days)===go(s)?``:`-`,d=go(this._milliseconds)===go(s)?``:`-`,c+`P`+(a?l+a+`Y`:``)+(n?l+n+`M`:``)+(t?u+t+`D`:``)+(i||r||e?`T`:``)+(i?d+i+`H`:``)+(r?d+r+`M`:``)+(e?d+o+`S`:``)):`P0D`}var vo=vr.prototype;return vo.isValid=gr,vo.abs=Aa,vo.add=Ma,vo.subtract=Na,vo.as=Ra,vo.asMilliseconds=Ba,vo.asSeconds=Va,vo.asMinutes=Ha,vo.asHours=Ua,vo.asDays=Wa,vo.asWeeks=Ga,vo.asMonths=Ka,vo.asQuarters=qa,vo.asYears=Ja,vo.valueOf=Ya,vo._bubble=Fa,vo.clone=Xa,vo.get=Za,vo.milliseconds=$a,vo.seconds=eo,vo.minutes=to,vo.hours=no,vo.days=ro,vo.weeks=oo,vo.months=io,vo.years=ao,vo.humanize=mo,vo.toISOString=_o,vo.toString=_o,vo.toJSON=_o,vo.locale=_i,vo.localeData=yi,vo.toIsoString=T(`toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)`,_o),vo.lang=vi,te(`X`,0,0,`unix`),te(`x`,0,0,`valueOf`),Be(`x`,Me),Be(`X`,Fe),qe(`X`,function(e,t,n){n._d=new Date(parseFloat(e)*1e3)}),qe(`x`,function(e,t,n){n._d=new Date(Ge(e))}),n.version=`2.30.1`,r(sr),n.fn=W,n.min=dr,n.max=fr,n.now=pr,n.utc=p,n.unix=G,n.months=wa,n.isDate=u,n.locale=Dn,n.invalid=v,n.duration=zr,n.isMoment=C,n.weekdays=Ea,n.parseZone=va,n.localeData=An,n.isDuration=yr,n.monthsShort=Ta,n.weekdaysMin=Oa,n.defineLocale=On,n.updateLocale=kn,n.locales=jn,n.weekdaysShort=Da,n.normalizeUnits=ge,n.relativeTimeRounding=fo,n.relativeTimeThreshold=po,n.calendarFormat=Qr,n.prototype=W,n.HTML5_FMT={DATETIME_LOCAL:`YYYY-MM-DDTHH:mm`,DATETIME_LOCAL_SECONDS:`YYYY-MM-DDTHH:mm:ss`,DATETIME_LOCAL_MS:`YYYY-MM-DDTHH:mm:ss.SSS`,DATE:`YYYY-MM-DD`,TIME:`HH:mm`,TIME_SECONDS:`HH:mm:ss`,TIME_MS:`HH:mm:ss.SSS`,WEEK:`GGGG-[W]WW`,MONTH:`YYYY-MM`},n}))}))()),XT=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],ZT=[{index:0,name:`Sunday`,shortName:`Su`},{index:1,name:`Monday`,shortName:`Mo`},{index:2,name:`Tuesday`,shortName:`Tu`},{index:3,name:`Wednesday`,shortName:`We`},{index:4,name:`Thursday`,shortName:`Th`},{index:5,name:`Friday`,shortName:`Fr`},{index:6,name:`Saturday`,shortName:`Sa`}],QT={devMode:!1,ignoreCodeBlockRestrictions:!1,preferredDateFormat:`YYYY-MM-DD`,firstWeekday:ZT[1],syncInterval:200,enableJs:!1,viewFieldDisplayNullAsEmpty:!1,enableSyntaxHighlighting:!0,enableEditorRightClickMenu:!0,inputFieldTemplates:[],buttonTemplates:[],excludedFolders:[`templates`]},$T=1e3,eE=ZT[1];function tE(e){eE=e}function nE(e){return XT[e]}function rE(e,t){let n=(0,YT.default)(new Date(t,e)).daysInMonth(),r=Array(42).fill(0),i=iE(new Date(t,e,1));for(let e=0;e({index:vt(e.index-eE.index,7),name:e.name,shortName:e.shortName})).sort((e,t)=>e.index-t.index).map(e=>e.shortName)}function oE(){return oE=Object.assign?Object.assign.bind():function(e){for(var t=1;tthis.has(e)).values()}get(e){return cE(this.wrappedObject,e)}set(e,t){return lE(this.wrappedObject,e,t),this}has(e){return uE(this.wrappedObject,e)&&e in this.wrappedObject}entries(){return yE(this.keys(),e=>[e,this.get(e)])}forEach(e){for(var t of this.keys())e(this.get(t),t,this)}delete(e){uE(this.wrappedObject,e)&&delete this.wrappedObject[e]}clear(){for(var e of this.keys())this.delete(e)}get size(){return Object.keys(this.wrappedObject).length}},vE=class{constructor(e,t,n){this.a=e,this.b=t,this.bKeys=n,this[Symbol.iterator]=this.entries}get(e){return this.bKeys.has(e)?this.b.get(e):this.a.get(e)}set(e,t){return this.bKeys.has(e)?this.b.set(e,t):this.a.set(e,t),this}has(e){return this.b.has(e)||this.a.has(e)}keys(){return new Set([...this.a.keys(),...this.b.keys()])[Symbol.iterator]()}entries(){return yE(this.keys(),e=>[e,this.get(e)])}forEach(e){for(var t of this.keys())e(this.get(t),t,this)}delete(e){return this.bKeys.has(e)?this.b.delete(e):this.a.delete(e)}clear(){this.a.clear(),this.b.clear()}get size(){return[...this.keys()].length}};function yE(e,t){return{next:()=>{var n=e.next();return n.done?n:{value:t(n.value),done:!1}}}}function bE(){return new Map}function xE(e){if(!e)return bE();if(WE(e))return e;if(UE(e))return new _E(e);throw Error(`createMap can create maps from objects or Maps`)}function SE(e){if(e instanceof _E)return e.wrappedObject;var t={};for(var n of e.keys())lE(t,n,e.get(n));return t}function CE(e){return typeof e==`number`}function wE(e){return!e||typeof e!=`object`||typeof e.constructor!=`function`?!1:e.isBigNumber===!0&&typeof e.constructor.prototype==`object`&&e.constructor.prototype.isBigNumber===!0||typeof e.constructor.isDecimal==`function`&&e.constructor.isDecimal(e)===!0}function TE(e){return typeof e==`bigint`}function EE(e){return e&&typeof e==`object`&&Object.getPrototypeOf(e).isComplex===!0||!1}function DE(e){return e&&typeof e==`object`&&Object.getPrototypeOf(e).isFraction===!0||!1}function OE(e){return e&&e.constructor.prototype.isUnit===!0||!1}function kE(e){return typeof e==`string`}var AE=Array.isArray;function jE(e){return e&&e.constructor.prototype.isMatrix===!0||!1}function ME(e){return Array.isArray(e)||jE(e)}function NE(e){return e&&e.isDenseMatrix&&e.constructor.prototype.isMatrix===!0||!1}function PE(e){return e&&e.isSparseMatrix&&e.constructor.prototype.isMatrix===!0||!1}function FE(e){return e&&e.constructor.prototype.isRange===!0||!1}function IE(e){return e&&e.constructor.prototype.isIndex===!0||!1}function LE(e){return typeof e==`boolean`}function RE(e){return e&&e.constructor.prototype.isResultSet===!0||!1}function zE(e){return e&&e.constructor.prototype.isHelp===!0||!1}function BE(e){return typeof e==`function`}function VE(e){return e instanceof Date}function HE(e){return e instanceof RegExp}function UE(e){return!!(e&&typeof e==`object`&&e.constructor===Object&&!EE(e)&&!DE(e))}function WE(e){return e?e instanceof Map||e instanceof _E||typeof e.set==`function`&&typeof e.get==`function`&&typeof e.keys==`function`&&typeof e.has==`function`:!1}function GE(e){return WE(e)&&WE(e.a)&&WE(e.b)}function KE(e){return WE(e)&&UE(e.wrappedObject)}function qE(e){return e===null}function JE(e){return e===void 0}function YE(e){return e&&e.isAccessorNode===!0&&e.constructor.prototype.isNode===!0||!1}function XE(e){return e&&e.isArrayNode===!0&&e.constructor.prototype.isNode===!0||!1}function ZE(e){return e&&e.isAssignmentNode===!0&&e.constructor.prototype.isNode===!0||!1}function QE(e){return e&&e.isBlockNode===!0&&e.constructor.prototype.isNode===!0||!1}function $E(e){return e&&e.isConditionalNode===!0&&e.constructor.prototype.isNode===!0||!1}function eD(e){return e&&e.isConstantNode===!0&&e.constructor.prototype.isNode===!0||!1}function tD(e){return eD(e)||sD(e)&&e.args.length===1&&eD(e.args[0])&&`-+~`.includes(e.op)}function nD(e){return e&&e.isFunctionAssignmentNode===!0&&e.constructor.prototype.isNode===!0||!1}function rD(e){return e&&e.isFunctionNode===!0&&e.constructor.prototype.isNode===!0||!1}function iD(e){return e&&e.isIndexNode===!0&&e.constructor.prototype.isNode===!0||!1}function aD(e){return e&&e.isNode===!0&&e.constructor.prototype.isNode===!0||!1}function oD(e){return e&&e.isObjectNode===!0&&e.constructor.prototype.isNode===!0||!1}function sD(e){return e&&e.isOperatorNode===!0&&e.constructor.prototype.isNode===!0||!1}function cD(e){return e&&e.isParenthesisNode===!0&&e.constructor.prototype.isNode===!0||!1}function lD(e){return e&&e.isRangeNode===!0&&e.constructor.prototype.isNode===!0||!1}function uD(e){return e&&e.isRelationalNode===!0&&e.constructor.prototype.isNode===!0||!1}function dD(e){return e&&e.isSymbolNode===!0&&e.constructor.prototype.isNode===!0||!1}function fD(e){return e&&e.constructor.prototype.isChain===!0||!1}function pD(e){var t=typeof e;return t===`object`?e===null?`null`:wE(e)?`BigNumber`:e.constructor&&e.constructor.name?e.constructor.name:`Object`:t}function mD(e){var t=typeof e;if(t===`number`||t===`bigint`||t===`string`||t===`boolean`||e==null)return e;if(typeof e.clone==`function`)return e.clone();if(Array.isArray(e))return e.map(function(e){return mD(e)});if(e instanceof Date)return new Date(e.valueOf());if(wE(e))return e;if(UE(e))return hD(e,mD);if(t===`function`)return e;throw TypeError(`Cannot clone: unknown type of value (value: ${e})`)}function hD(e,t){var n={};for(var r in e)SD(e,r)&&(n[r]=t(e[r]));return n}function gD(e,t){for(var n in t)SD(t,n)&&(e[n]=t[n]);return e}function _D(e,t){if(Array.isArray(t))throw TypeError(`Arrays are not supported by deepExtend`);for(var n in t)if(SD(t,n)&&!(n in Object.prototype)&&!(n in Function.prototype))if(t[n]&&t[n].constructor===Object)e[n]===void 0&&(e[n]={}),e[n]&&e[n].constructor===Object?_D(e[n],t[n]):e[n]=t[n];else if(Array.isArray(t[n]))throw TypeError(`Arrays are not supported by deepExtend`);else e[n]=t[n];return e}function vD(e,t){var n,r,i;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(r=0,i=e.length;r{Object.defineProperty(n,t,{get:()=>e[t],enumerable:!0,configurable:!0})}),n}function OD(e,t,n){e[t]!==void 0&&!n.includes(e[t])&&console.warn(`Warning: Unknown value "`+e[t]+`" for configuration option "`+t+`". Available options: `+n.map(e=>JSON.stringify(e)).join(`, `)+`.`)}var kD=o(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self,n.typed=r())})(e,(function(){"use strict";function e(){return!0}function t(){return!1}function n(){}let r=`Argument is not a typed-function.`;function i(){function a(e){return typeof e==`object`&&!!e&&e.constructor===Object}let o=[{name:`number`,test:function(e){return typeof e==`number`}},{name:`string`,test:function(e){return typeof e==`string`}},{name:`boolean`,test:function(e){return typeof e==`boolean`}},{name:`Function`,test:function(e){return typeof e==`function`}},{name:`Array`,test:Array.isArray},{name:`Date`,test:function(e){return e instanceof Date}},{name:`RegExp`,test:function(e){return e instanceof RegExp}},{name:`Object`,test:a},{name:`null`,test:function(e){return e===null}},{name:`undefined`,test:function(e){return e===void 0}}],s={name:`any`,test:e,isAny:!0},c,l,u=0,d={createCount:0};function f(e){let t=c.get(e);if(t)return t;let n=`Unknown type "`+e+`"`,r=e.toLowerCase(),i;for(i of l)if(i.toLowerCase()===r){n+=`. Did you mean "`+i+`" ?`;break}throw TypeError(n)}function p(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`any`,n=t?f(t).index:l.length,r=[];for(let t=0;t{let n=c.get(t);return!n.isAny&&n.test(e)});return t.length?t:[`any`]}function _(e){return e&&typeof e==`function`&&`_typedFunctionData`in e}function v(e,t,n){if(!_(e))throw TypeError(r);let i=n&&n.exact,a=T(Array.isArray(t)?t.join(`,`):t),o=x(a);if(!i||o in e.signatures){let t=e._typedFunctionData.signatureMap.get(o);if(t)return t}let s=a.length,c;if(i){c=[];let t;for(t in e.signatures)c.push(e._typedFunctionData.signatureMap.get(t))}else c=e._typedFunctionData.signatures;for(let e=0;e!e.has(t.name)))continue}n.push(r)}}if(c=n,c.length===0)break}let l;for(l of c)if(l.params.length<=s)return l;throw TypeError(`Signature not found (signature: `+(e.name||`unnamed`)+`(`+x(a,`, `)+`))`)}function y(e,t,n){return v(e,t,n).implementation}function b(e,t){let n=f(t);if(n.test(e))return e;let r=n.conversionsTo;if(r.length===0)throw Error(`There are no conversions to `+t+` defined.`);for(let t=0;t1&&arguments[1]!==void 0?arguments[1]:`,`;return e.map(e=>e.name).join(t)}function S(e){let t=e.indexOf(`...`)===0,n=(t?e.length>3?e.slice(3):`any`:e).split(`|`).map(e=>f(e.trim())),r=!1,i=t?`...`:``;return{types:n.map(function(e){return r=e.isAny||r,i+=e.name+`|`,{name:e.name,typeIndex:e.index,test:e.test,isAny:e.isAny,conversion:null,conversionIndex:-1}}),name:i.slice(0,-1),hasAny:r,hasConversion:!1,restParam:t}}function C(e){let t=ee(e.types.map(e=>e.name)),n=e.hasAny,r=e.name,i=t.map(function(e){let t=f(e.from);return n=t.isAny||n,r+=`|`+e.from,{name:e.from,typeIndex:t.index,test:t.test,isAny:t.isAny,conversion:e,conversionIndex:e.index}});return{types:e.types.concat(i),name:r,hasAny:n,hasConversion:i.length>0,restParam:e.restParam}}function w(e){return e.typeSet||(e.typeSet=new Set,e.types.forEach(t=>e.typeSet.add(t.name))),e.typeSet}function T(e){let t=[];if(typeof e!=`string`)throw TypeError(`Signatures must be strings`);let n=e.trim();if(n===``)return t;let r=n.split(`,`);for(let e=0;e=n+1}}else if(e.length===0)return function(e){return e.length===0};else if(e.length===1)return n=D(e[0]),function(e){return n(e[0])&&e.length===1};else if(e.length===2)return n=D(e[0]),r=D(e[1]),function(e){return n(e[0])&&r(e[1])&&e.length===2};else return t=e.map(D),function(e){for(let n=0;n{let r=A(e.params,t),i;for(i of r)n.add(i)}),n.has(`any`)?[`any`]:Array.from(n)}function N(e,t,n){let r,i,a=e||`unnamed`,o=n,s;for(s=0;s{let r=D(k(n.params,s));(s0){let e=g(t[s]);return r=TypeError(`Unexpected type of argument in function `+a+` (expected: `+i.join(` or `)+`, actual: `+e.join(` | `)+`, index: `+s+`)`),r.data={category:`wrongType`,fn:a,index:s,actual:e,expected:i},r}}else o=e}let c=o.map(function(e){return E(e.params)?1/0:e.params.length});if(t.lengthl)return r=TypeError(`Too many arguments in function `+a+` (expected: `+l+`, actual: `+t.length+`)`),r.data={category:`tooManyArgs`,fn:a,index:t.length,expectedLength:l},r;let u=[];for(let e=0;e0)return .001;let r=F(e),i=F(t);if(e.hasConversion){if(!t.hasConversion)return(1+r)*1e-6}else if(t.hasConversion)return-(1+i)*1e-6;let a=r-i;return a<0?-1e-7:a>0?1e-7:0}function L(e,t){let n=e.params,r=t.params,i=ue(n),a=ue(r),o=E(n),s=E(r);if(o&&i.hasAny){if(!s||!a.hasAny)return 1e7}else if(s&&a.hasAny)return-1e7;let c=0,l=0,u;for(u of n)u.hasAny&&++c,u.hasConversion&&++l;let d=0,f=0;for(u of r)u.hasAny&&++d,u.hasConversion&&++f;if(c!==d)return(c-d)*1e6;if(o&&i.hasConversion){if(!s||!a.hasConversion)return 1e5}else if(s&&a.hasConversion)return-1e5;if(l!==f)return(l-f)*1e4;if(o){if(!s)return 1e3}else if(s)return-1e3;let p=(n.length-r.length)*(o?-100:100);if(p!==0)return p;let m=[],h=0;for(let e=0;ee.hasConversion)){let i=E(e),a=e.map(te);r=a.map(e=>e.name).join(`;`),n=function(){let e=[],n=i?arguments.length-1:arguments.length;for(let t=0;t`+e.conversion.to+`,`,a.push(f(e.conversion.from).test),o.push(e.conversion.convert))}),s=s?s.slice(0,-1):`pass`;let c=e=>e;switch(o.length){case 0:break;case 1:t=a[0],r=o[0],c=function(e){return t(e)?r(e):e};break;case 2:t=a[0],n=a[1],r=o[0],i=o[1],c=function(e){return t(e)?r(e):n(e)?i(e):e};break;default:c=function(e){for(let t=0;te.name).join(`|`),hasAny:e.some(e=>e.isAny),hasConversion:!1,restParam:!0}),a.push(i)}else a=i.types.map(function(e){return{types:[e],name:e.name,hasAny:e.isAny,hasConversion:e.conversion,restParam:!1}});return pe(a,function(i){return t(e,n+1,r.concat([i]))})}else return[r]}return t(e,0,[])}function ne(e,t){let n=Math.max(e.length,t.length);for(let r=0;r=r:o?r>=i:r===i}function re(e){return e.map(e=>ve(e)?ge(e.referToSelf.callback):_e(e)?he(e.referTo.references,e.referTo.callback):e)}function ie(e,t,n){let r=[],i;for(i of e){let e=n[i];if(typeof e!=`number`)throw TypeError(`No definition for referenced signature "`+i+`"`);if(e=t[e],typeof e!=`function`)return!1;r.push(e)}return r}function ae(e,t,n){let r=re(e),i=Array(r.length).fill(!1),a=!0;for(;a;){a=!1;let e=!0;for(let o=0;o{let r=e[n];if(t.test(r.toString()))throw SyntaxError("Using `this` to self-reference a function is deprecated since typed-function@3. Use typed.referTo and typed.referToSelf instead.")})}function se(e,r){if(d.createCount++,Object.keys(r).length===0)throw SyntaxError(`No signatures provided`);d.warnAgainstDeprecatedThis&&oe(r);let i=[],a=[],o={},s=[],c;for(c in r){if(!Object.prototype.hasOwnProperty.call(r,c))continue;let e=T(c);if(!e)continue;i.forEach(function(t){if(ne(t,e))throw TypeError(`Conflicting signatures "`+x(t)+`" and "`+x(e)+`".`)}),i.push(e);let t=a.length;a.push(r[c]);let n=e.map(C),l;for(l of z(n)){let e=x(l);s.push({params:l,name:e,fn:t}),l.every(e=>!e.hasConversion)&&(o[e]=t)}}s.sort(L);let l=ae(a,o,Se),u;for(u in o)Object.prototype.hasOwnProperty.call(o,u)&&(o[u]=l[o[u]]);let f=[],p=new Map;for(u of s)p.has(u.name)||(u.fn=l[u.fn],f.push(u),p.set(u.name,u));let m=f[0]&&f[0].params.length<=2&&!E(f[0].params),h=f[1]&&f[1].params.length<=2&&!E(f[1].params),g=f[2]&&f[2].params.length<=2&&!E(f[2].params),_=f[3]&&f[3].params.length<=2&&!E(f[3].params),v=f[4]&&f[4].params.length<=2&&!E(f[4].params),y=f[5]&&f[5].params.length<=2&&!E(f[5].params),b=m&&h&&g&&_&&v&&y;for(let e=0;ee.test),be=f.map(e=>e.implementation),xe=function(){for(let e=_e;ex(T(e))),t=ue(arguments);if(typeof t!=`function`)throw TypeError(`Callback function expected as last argument`);return he(e,t)}function he(e,t){return{referTo:{references:e,callback:t}}}function ge(e){if(typeof e!=`function`)throw TypeError(`Callback function expected as first argument`);return{referToSelf:{callback:e}}}function _e(e){return e&&typeof e.referTo==`object`&&Array.isArray(e.referTo.references)&&typeof e.referTo.callback==`function`}function ve(e){return e&&typeof e.referToSelf==`object`&&typeof e.referToSelf.callback==`function`}function ye(e,t){if(!e)return t;if(t&&t!==e){let n=Error(`Function names do not match (expected: `+e+`, actual: `+t+`)`);throw n.data={actual:t,expected:e},n}return e}function be(e){let t;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&(_(e[n])||typeof e[n].signature==`string`)&&(t=ye(t,e[n].name));return t}function xe(e,t){let n;for(n in t)if(Object.prototype.hasOwnProperty.call(t,n)){if(n in e&&t[n]!==e[n]){let r=Error(`Signature "`+n+`" is defined twice`);throw r.data={signature:n,sourceFunction:t[n],destFunction:e[n]},r}e[n]=t[n]}}let Se=d;d=function(e){let t=typeof e==`string`,n=+!!t,r=t?e:``,i={};for(let e=n;e1&&arguments[1]!==void 0?arguments[1]:{override:!1};Ce(e);let n=f(e.to),r=n.conversionsTo.find(t=>t.from===e.from);if(r)if(t&&t.override)d.removeConversion({from:r.from,to:e.to,convert:r.convert});else throw Error(`There is already a conversion from "`+e.from+`" to "`+n.name+`"`);n.conversionsTo.push({from:e.from,to:n.name,convert:e.convert,index:u++})},d.addConversions=function(e,t){e.forEach(e=>d.addConversion(e,t))},d.removeConversion=function(e){Ce(e);let t=f(e.to),n=fe(t.conversionsTo,t=>t.from===e.from);if(!n)throw Error(`Attempt to remove nonexistent conversion from `+e.from+` to `+e.to);if(n.convert!==e.convert)throw Error(`Conversion to remove does not match existing conversion`);let r=t.conversionsTo.indexOf(n);t.conversionsTo.splice(r,1)},d.resolve=function(e,t){if(!_(e))throw TypeError(r);let n=e._typedFunctionData.signatures;for(let e=0;e!MD(e)).every(e=>n[e]!==void 0)){var r=t.filter(e=>n[e]===void 0);throw Error(`Cannot create function "${e}", some dependencies are missing: ${r.map(e=>`"${e}"`).join(`, `)}.`)}}function MD(e){return e&&e[0]===`?`}function ND(e){return e&&e[0]===`?`?e.slice(1):e}function PD(e){return typeof e==`boolean`?!0:Number.isFinite(e)?e===Math.round(e):!1}function FD(e,t){if(t.number===`bigint`)try{BigInt(e)}catch{return t.numberFallback}return t.number}var ID=Math.sign||function(e){return e>0?1:e<0?-1:0},LD=Math.log2||function(e){return Math.log(e)/Math.LN2},RD=Math.log10||function(e){return Math.log(e)/Math.LN10},zD=Math.log1p||function(e){return Math.log(e+1)},BD=Math.cbrt||function(e){if(e===0)return e;var t=e<0,n;return t&&(e=-e),Number.isFinite(e)?(n=Math.exp(Math.log(e)/3),n=(e/(n*n)+2*n)/3):n=e,t?-n:n},VD=Math.expm1||function(e){return e>=2e-4||e<=-2e-4?Math.exp(e)-1:e+e*e/2+e*e*e/6};function HD(e,t,n){var r={2:`0b`,8:`0o`,16:`0x`}[t],i=``;if(n){if(n<1)throw Error(`size must be in greater than 0`);if(!PD(n))throw Error(`size must be an integer`);if(e>2**(n-1)-1||e<-(2**(n-1)))throw Error(`Value must be in range [-2^${n-1}, 2^${n-1}-1]`);if(!PD(e))throw Error(`Value must be an integer`);e<0&&(e+=2**n),i=`i${n}`}var a=``;return e<0&&(e=-e,a=`-`),`${a}${r}${e.toString(t)}${i}`}function UD(e,t){if(typeof t==`function`)return t(e);if(e===1/0)return`Infinity`;if(e===-1/0)return`-Infinity`;if(isNaN(e))return`NaN`;var{notation:n,precision:r,wordSize:i}=WD(t);switch(n){case`fixed`:return qD(e,r);case`exponential`:return JD(e,r);case`engineering`:return KD(e,r);case`bin`:return HD(e,2,i);case`oct`:return HD(e,8,i);case`hex`:return HD(e,16,i);case`auto`:return YD(e,r,t).replace(/((\.\d*?)(0+))($|e)/,function(){var e=arguments[2],t=arguments[4];return e===`.`?t:e+t});default:throw Error(`Unknown notation "`+n+`". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.`)}}function WD(e){var t=`auto`,n,r;if(e!==void 0)if(CE(e))n=e;else if(wE(e))n=e.toNumber();else if(UE(e))e.precision!==void 0&&(n=sO(e.precision,()=>{throw Error(`Option "precision" must be a number or BigNumber`)})),e.wordSize!==void 0&&(r=sO(e.wordSize,()=>{throw Error(`Option "wordSize" must be a number or BigNumber`)})),e.notation&&(t=e.notation);else throw Error(`Unsupported type of options, number, BigNumber, or object expected`);return{notation:t,precision:n,wordSize:r}}function GD(e){var t=String(e).toLowerCase().match(/^(-?)(\d+\.?\d*)(e([+-]?\d+))?$/);if(!t)throw SyntaxError(`Invalid number `+e);var n=t[1],r=t[2],i=parseFloat(t[4]||`0`),a=r.indexOf(`.`);i+=a===-1?r.length-1:a-1;var o=r.replace(`.`,``).replace(/^0*/,function(e){return i-=e.length,``}).replace(/0*$/,``).split(``).map(function(e){return parseInt(e)});return o.length===0&&(o.push(0),i++),{sign:n,coefficients:o,exponent:i}}function KD(e,t){if(isNaN(e)||!Number.isFinite(e))return String(e);var n=XD(GD(e),t),r=n.exponent,i=n.coefficients,a=r%3==0?r:r<0?r-3-r%3:r-r%3;if(CE(t))for(;t>i.length||r-a+1>i.length;)i.push(0);else for(var o=Math.abs(r-a)-(i.length-1),s=0;s0;)l++,c--;var u=i.slice(l).join(``),d=CE(t)&&u.length||u.match(/[1-9]/)?`.`+u:``,f=i.slice(0,l).join(``)+d+`e`+(r>=0?`+`:``)+a.toString();return n.sign+f}function qD(e,t){if(isNaN(e)||!Number.isFinite(e))return String(e);var n=GD(e),r=typeof t==`number`?XD(n,n.exponent+1+t):n,i=r.coefficients,a=r.exponent+1,o=a+(t||0);return i.length0?`.`+i.join(``):``)+`e`+(a>=0?`+`:``)+a}function YD(e,t,n){if(isNaN(e)||!Number.isFinite(e))return String(e);var r=cO(n?.lowerExp,-3),i=cO(n?.upperExp,5),a=GD(e),o=t?XD(a,t):a;if(o.exponent=i)return JD(e,t);var s=o.coefficients,c=o.exponent;s.length0?c:0;return lt&&r.splice(t,r.length-t)[0]>=5){var i=t-1;for(r[i]++;r[i]===10;)r.pop(),i===0&&(r.unshift(0),n.exponent++,i++),i--,r[i]++}return n}function ZD(e){for(var t=[],n=0;n2&&arguments[2]!==void 0?arguments[2]:1e-8,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(n<=0)throw Error(`Relative tolerance must be greater than 0`);if(r<0)throw Error(`Absolute tolerance must be at least 0`);return isNaN(e)||isNaN(t)?!1:!Number.isFinite(e)||!Number.isFinite(t)?e===t:e===t?!0:Math.abs(e-t)<=Math.max(n*Math.max(Math.abs(e),Math.abs(t)),r)}var eO=Math.acosh||function(e){return Math.log(Math.sqrt(e*e-1)+e)},tO=Math.asinh||function(e){return Math.log(Math.sqrt(e*e+1)+e)},nO=Math.atanh||function(e){return Math.log((1+e)/(1-e))/2},rO=Math.cosh||function(e){return(Math.exp(e)+Math.exp(-e))/2},iO=Math.sinh||function(e){return(Math.exp(e)-Math.exp(-e))/2},aO=Math.tanh||function(e){var t=Math.exp(2*e);return(t-1)/(t+1)};function oO(e,t){return(e>0?!0:e<0?!1:1/e==1/0)^(t>0?!0:t<0?!1:1/t==1/0)?-e:e}function sO(e,t){if(CE(e))return e;if(wE(e))return e.toNumber();t()}function cO(e,t){return CE(e)?e:wE(e)?e.toNumber():t}var lO=l(kD(),1),uO=function(){return uO=lO.default.create,lO.default},dO=Z(`typed`,[`?BigNumber`,`?Complex`,`?DenseMatrix`,`?Fraction`],function(e){var{BigNumber:t,Complex:n,DenseMatrix:r,Fraction:i}=e,a=uO();return a.clear(),a.addTypes([{name:`number`,test:CE},{name:`Complex`,test:EE},{name:`BigNumber`,test:wE},{name:`bigint`,test:TE},{name:`Fraction`,test:DE},{name:`Unit`,test:OE},{name:`identifier`,test:e=>kE&&/^(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088F\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5C\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDC-\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7DC\uA7F1-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD40-\uDD59\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC7\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDB0-\uDDDB\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD822\uD840-\uD868\uD86A-\uD86D\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD88C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDEA0-\uDEB8\uDEBB-\uDED3\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3\uDFF2\uDFF3]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD1E\uDD80-\uDDF2]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDEC0-\uDEDE\uDEE0-\uDEE2\uDEE4\uDEE5\uDEE7-\uDEED\uDEF0-\uDEF4\uDEFE\uDEFF\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEAD\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD88D[\uDC00-\uDC79])(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088F\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5C\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDC-\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7DC\uA7F1-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD40-\uDD59\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC7\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDB0-\uDDDB\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD822\uD840-\uD868\uD86A-\uD86D\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD88C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDEA0-\uDEB8\uDEBB-\uDED3\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3\uDFF2\uDFF3]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD1E\uDD80-\uDDF2]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDEC0-\uDEDE\uDEE0-\uDEE2\uDEE4\uDEE5\uDEE7-\uDEED\uDEF0-\uDEF4\uDEFE\uDEFF\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEAD\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD88D[\uDC00-\uDC79])*$/.test(e)},{name:`string`,test:kE},{name:`Chain`,test:fD},{name:`Array`,test:AE},{name:`Matrix`,test:jE},{name:`DenseMatrix`,test:NE},{name:`SparseMatrix`,test:PE},{name:`Range`,test:FE},{name:`Index`,test:IE},{name:`boolean`,test:LE},{name:`ResultSet`,test:RE},{name:`Help`,test:zE},{name:`function`,test:BE},{name:`Date`,test:VE},{name:`RegExp`,test:HE},{name:`null`,test:qE},{name:`undefined`,test:JE},{name:`AccessorNode`,test:YE},{name:`ArrayNode`,test:XE},{name:`AssignmentNode`,test:ZE},{name:`BlockNode`,test:QE},{name:`ConditionalNode`,test:$E},{name:`ConstantNode`,test:eD},{name:`FunctionNode`,test:rD},{name:`FunctionAssignmentNode`,test:nD},{name:`IndexNode`,test:iD},{name:`Node`,test:aD},{name:`ObjectNode`,test:oD},{name:`OperatorNode`,test:sD},{name:`ParenthesisNode`,test:cD},{name:`RangeNode`,test:lD},{name:`RelationalNode`,test:uD},{name:`SymbolNode`,test:dD},{name:`Map`,test:WE},{name:`Object`,test:UE}]),a.addConversions([{from:`number`,to:`BigNumber`,convert:function(e){if(t||fO(e),QD(e)>15)throw TypeError(`Cannot implicitly convert a number with >15 significant digits to BigNumber (value: `+e+`). Use function bignumber(x) to convert to BigNumber.`);return new t(e)}},{from:`number`,to:`Complex`,convert:function(e){return n||pO(e),new n(e,0)}},{from:`BigNumber`,to:`Complex`,convert:function(e){return n||pO(e),new n(e.toNumber(),0)}},{from:`bigint`,to:`number`,convert:function(e){if(e>2**53-1)throw TypeError(`Cannot implicitly convert bigint to number: value exceeds the max safe integer value (value: `+e+`)`);return Number(e)}},{from:`bigint`,to:`BigNumber`,convert:function(e){return t||fO(e),new t(e.toString())}},{from:`bigint`,to:`Fraction`,convert:function(e){return i||hO(e),new i(e)}},{from:`Fraction`,to:`BigNumber`,convert:function(e){throw TypeError(`Cannot implicitly convert a Fraction to BigNumber or vice versa. Use function bignumber(x) to convert to BigNumber or fraction(x) to convert to Fraction.`)}},{from:`Fraction`,to:`Complex`,convert:function(e){return n||pO(e),new n(e.valueOf(),0)}},{from:`number`,to:`Fraction`,convert:function(e){i||hO(e);var t=new i(e);if(t.valueOf()!==e)throw TypeError(`Cannot implicitly convert a number to a Fraction when there will be a loss of precision (value: `+e+`). Use function fraction(x) to convert to Fraction.`);return t}},{from:`string`,to:`number`,convert:function(e){var t=Number(e);if(isNaN(t))throw Error(`Cannot convert "`+e+`" to a number`);return t}},{from:`string`,to:`BigNumber`,convert:function(e){t||fO(e);try{return new t(e)}catch{throw Error(`Cannot convert "`+e+`" to BigNumber`)}}},{from:`string`,to:`bigint`,convert:function(e){try{return BigInt(e)}catch{throw Error(`Cannot convert "`+e+`" to BigInt`)}}},{from:`string`,to:`Fraction`,convert:function(e){i||hO(e);try{return new i(e)}catch{throw Error(`Cannot convert "`+e+`" to Fraction`)}}},{from:`string`,to:`Complex`,convert:function(e){n||pO(e);try{return new n(e)}catch{throw Error(`Cannot convert "`+e+`" to Complex`)}}},{from:`boolean`,to:`number`,convert:function(e){return+e}},{from:`boolean`,to:`BigNumber`,convert:function(e){return t||fO(e),new t(+e)}},{from:`boolean`,to:`bigint`,convert:function(e){return BigInt(+e)}},{from:`boolean`,to:`Fraction`,convert:function(e){return i||hO(e),new i(+e)}},{from:`boolean`,to:`string`,convert:function(e){return String(e)}},{from:`Array`,to:`Matrix`,convert:function(e){return r||mO(),new r(e)}},{from:`Matrix`,to:`Array`,convert:function(e){return e.valueOf()}}]),a.onMismatch=(e,t,n)=>{var r=a.createError(e,t,n);if([`wrongType`,`mismatch`].includes(r.data.category)&&t.length===1&&ME(t[0])&&n.some(e=>!e.params.includes(`,`))){var i=TypeError(`Function '${e}' doesn't apply to matrices. To call it elementwise on a matrix 'M', try 'map(M, ${e})'.`);throw i.data=r.data,i}throw r},a.onMismatch=(e,t,n)=>{var r=a.createError(e,t,n);if([`wrongType`,`mismatch`].includes(r.data.category)&&t.length===1&&ME(t[0])&&n.some(e=>!e.params.includes(`,`))){var i=TypeError(`Function '${e}' doesn't apply to matrices. To call it elementwise on a matrix 'M', try 'map(M, ${e})'.`);throw i.data=r.data,i}throw r},a});function fO(e){throw Error(`Cannot convert value ${e} into a BigNumber: no class 'BigNumber' provided`)}function pO(e){throw Error(`Cannot convert value ${e} into a Complex number: no class 'Complex' provided`)}function mO(){throw Error(`Cannot convert array into a Matrix: no class 'DenseMatrix' provided`)}function hO(e){throw Error(`Cannot convert value ${e} into a Fraction, no class 'Fraction' provided.`)}var gO=Z(`ResultSet`,[],()=>{function e(t){if(!(this instanceof e))throw SyntaxError(`Constructor must be called with the new operator`);this.entries=t||[]}return e.prototype.type=`ResultSet`,e.prototype.isResultSet=!0,e.prototype.valueOf=function(){return this.entries},e.prototype.toString=function(){return`[`+this.entries.map(String).join(`, `)+`]`},e.prototype.toJSON=function(){return{mathjs:`ResultSet`,entries:this.entries}},e.fromJSON=function(t){return new e(t.entries)},e},{isClass:!0}),_O=9e15,vO=1e9,yO=`0123456789abcdef`,bO=`2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058`,xO=`3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789`,SO={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-_O,maxE:_O,crypto:!1},CO,wO,TO=!0,EO=`[DecimalError] `,DO=EO+`Invalid argument: `,OO=EO+`Precision limit exceeded`,kO=EO+`crypto unavailable`,AO=`[object Decimal]`,jO=Math.floor,MO=Math.pow,NO=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,PO=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,FO=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,IO=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,LO=1e7,RO=7,zO=9007199254740991,BO=bO.length-1,VO=xO.length-1,Q={toStringTag:AO};Q.absoluteValue=Q.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),JO(e)},Q.ceil=function(){return JO(new this.constructor(this),this.e+1,2)},Q.clampedTo=Q.clamp=function(e,t){var n,r=this,i=r.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(DO+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)},Q.comparedTo=Q.cmp=function(e){var t,n,r,i,a=this,o=a.d,s=(e=new a.constructor(e)).d,c=a.s,l=e.s;if(!o||!s)return!c||!l?NaN:c===l?o===s?0:!o^c<0?1:-1:c;if(!o[0]||!s[0])return o[0]?c:s[0]?-l:0;if(c!==l)return c;if(a.e!==e.e)return a.e>e.e^c<0?1:-1;for(r=o.length,i=s.length,t=0,n=rs[t]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1},Q.cosine=Q.cos=function(){var e,t,n=this,r=n.constructor;return n.d?n.d[0]?(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+RO,r.rounding=1,n=KO(r,fk(r,n)),r.precision=e,r.rounding=t,JO(wO==2||wO==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)},Q.cubeRoot=Q.cbrt=function(){var e,t,n,r,i,a,o,s,c,l,u=this,d=u.constructor;if(!u.isFinite()||u.isZero())return new d(u);for(TO=!1,a=u.s*MO(u.s*u,1/3),!a||Math.abs(a)==1/0?(n=HO(u.d),e=u.e,(a=(e-n.length+1)%3)&&(n+=a==1||a==-2?`0`:`00`),a=MO(n,1/3),e=jO((e+1)/3)-(e%3==(e<0?-1:2)),a==1/0?n=`5e`+e:(n=a.toExponential(),n=n.slice(0,n.indexOf(`e`)+1)+e),r=new d(n),r.s=u.s):r=new d(a.toString()),o=(e=d.precision)+3;;)if(s=r,c=s.times(s).times(s),l=c.plus(u),r=qO(l.plus(u).times(s),l.plus(c),o+2,1),HO(s.d).slice(0,o)===(n=HO(r.d)).slice(0,o))if(n=n.slice(o-3,o+1),n==`9999`||!i&&n==`4999`){if(!i&&(JO(s,e+1,0),s.times(s).times(s).eq(u))){r=s;break}o+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)==`5`)&&(JO(r,e+1,1),t=!r.times(r).times(r).eq(u));break}return TO=!0,JO(r,e,d.rounding,t)},Q.decimalPlaces=Q.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-jO(this.e/RO))*RO,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n},Q.dividedBy=Q.div=function(e){return qO(this,new this.constructor(e))},Q.dividedToIntegerBy=Q.divToInt=function(e){var t=this,n=t.constructor;return JO(qO(t,new n(e),0,1,1),n.precision,n.rounding)},Q.equals=Q.eq=function(e){return this.cmp(e)===0},Q.floor=function(){return JO(new this.constructor(this),this.e+1,3)},Q.greaterThan=Q.gt=function(e){return this.cmp(e)>0},Q.greaterThanOrEqualTo=Q.gte=function(e){var t=this.cmp(e);return t==1||t===0},Q.hyperbolicCosine=Q.cosh=function(){var e,t,n,r,i,a=this,o=a.constructor,s=new o(1);if(!a.isFinite())return new o(a.s?1/0:NaN);if(a.isZero())return s;n=o.precision,r=o.rounding,o.precision=n+Math.max(a.e,a.sd())+4,o.rounding=1,i=a.d.length,i<32?(e=Math.ceil(i/3),t=(1/dk(4,e)).toString()):(e=16,t=`2.3283064365386962890625e-10`),a=uk(o,1,a.times(t),new o(1),!0);for(var c,l=e,u=new o(8);l--;)c=a.times(a),a=s.minus(c.times(u.minus(c.times(u))));return JO(a,o.precision=n,o.rounding=r,!0)},Q.hyperbolicSine=Q.sinh=function(){var e,t,n,r,i=this,a=i.constructor;if(!i.isFinite()||i.isZero())return new a(i);if(t=a.precision,n=a.rounding,a.precision=t+Math.max(i.e,i.sd())+4,a.rounding=1,r=i.d.length,r<3)i=uk(a,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/dk(5,e)),i=uk(a,2,i,i,!0);for(var o,s=new a(5),c=new a(16),l=new a(20);e--;)o=i.times(i),i=i.times(s.plus(o.times(c.times(o).plus(l))))}return a.precision=t,a.rounding=n,JO(i,t,n,!0)},Q.hyperbolicTangent=Q.tanh=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+7,r.rounding=1,qO(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)},Q.inverseCosine=Q.acos=function(){var e=this,t=e.constructor,n=e.abs().cmp(1),r=t.precision,i=t.rounding;return n===-1?e.isZero()?QO(t,r+4,i).times(.5):(t.precision=r+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=r,t.rounding=i,e.times(2)):n===0?e.isNeg()?QO(t,r,i):new t(0):new t(NaN)},Q.inverseHyperbolicCosine=Q.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,TO=!1,n=n.times(n).minus(1).sqrt().plus(n),TO=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)},Q.inverseHyperbolicSine=Q.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,TO=!1,n=n.times(n).plus(1).sqrt().plus(n),TO=!0,r.precision=e,r.rounding=t,n.ln())},Q.inverseHyperbolicTangent=Q.atanh=function(){var e,t,n,r,i=this,a=i.constructor;return i.isFinite()?i.e>=0?new a(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=a.precision,t=a.rounding,r=i.sd(),Math.max(r,e)<2*-i.e-1?JO(new a(i),e,t,!0):(a.precision=n=r-i.e,i=qO(i.plus(1),new a(1).minus(i),n+e,1),a.precision=e+4,a.rounding=1,i=i.ln(),a.precision=e,a.rounding=t,i.times(.5))):new a(NaN)},Q.inverseSine=Q.asin=function(){var e,t,n,r,i=this,a=i.constructor;return i.isZero()?new a(i):(t=i.abs().cmp(1),n=a.precision,r=a.rounding,t===-1?(a.precision=n+6,a.rounding=1,i=i.div(new a(1).minus(i.times(i)).sqrt().plus(1)).atan(),a.precision=n,a.rounding=r,i.times(2)):t===0?(e=QO(a,n+4,r).times(.5),e.s=i.s,e):new a(NaN))},Q.inverseTangent=Q.atan=function(){var e,t,n,r,i,a,o,s,c,l=this,u=l.constructor,d=u.precision,f=u.rounding;if(!l.isFinite()){if(!l.s)return new u(NaN);if(d+4<=VO)return o=QO(u,d+4,f).times(.5),o.s=l.s,o}else if(l.isZero())return new u(l);else if(l.abs().eq(1)&&d+4<=VO)return o=QO(u,d+4,f).times(.25),o.s=l.s,o;for(u.precision=s=d+10,u.rounding=1,n=Math.min(28,s/RO+2|0),e=n;e;--e)l=l.div(l.times(l).plus(1).sqrt().plus(1));for(TO=!1,t=Math.ceil(s/RO),r=1,c=l.times(l),o=new u(l),i=l;e!==-1;)if(i=i.times(c),a=o.minus(i.div(r+=2)),i=i.times(c),o=a.plus(i.div(r+=2)),o.d[t]!==void 0)for(e=t;o.d[e]===a.d[e]&&e--;);return n&&(o=o.times(2<this.d.length-2},Q.isNaN=function(){return!this.s},Q.isNegative=Q.isNeg=function(){return this.s<0},Q.isPositive=Q.isPos=function(){return this.s>0},Q.isZero=function(){return!!this.d&&this.d[0]===0},Q.lessThan=Q.lt=function(e){return this.cmp(e)<0},Q.lessThanOrEqualTo=Q.lte=function(e){return this.cmp(e)<1},Q.logarithm=Q.log=function(e){var t,n,r,i,a,o,s,c,l=this,u=l.constructor,d=u.precision,f=u.rounding,p=5;if(e==null)e=new u(10),t=!0;else{if(e=new u(e),n=e.d,e.s<0||!n||!n[0]||e.eq(1))return new u(NaN);t=e.eq(10)}if(n=l.d,l.s<0||!n||!n[0]||l.eq(1))return new u(n&&!n[0]?-1/0:l.s==1?n?0:1/0:NaN);if(t)if(n.length>1)a=!0;else{for(i=n[0];i%10==0;)i/=10;a=i!==1}if(TO=!1,s=d+p,o=ak(l,s),r=t?ZO(u,s+10):ak(e,s),c=qO(o,r,s,1),WO(c.d,i=d,f))do if(s+=10,o=ak(l,s),r=t?ZO(u,s+10):ak(e,s),c=qO(o,r,s,1),!a){+HO(c.d).slice(i+1,i+15)+1==0x5af3107a4000&&(c=JO(c,d+1,0));break}while(WO(c.d,i+=10,f));return TO=!0,JO(c,d,f)},Q.minus=Q.sub=function(e){var t,n,r,i,a,o,s,c,l,u,d,f,p=this,m=p.constructor;if(e=new m(e),!p.d||!e.d)return!p.s||!e.s?e=new m(NaN):p.d?e.s=-e.s:e=new m(e.d||p.s!==e.s?p:NaN),e;if(p.s!=e.s)return e.s=-e.s,p.plus(e);if(l=p.d,f=e.d,s=m.precision,c=m.rounding,!l[0]||!f[0]){if(f[0])e.s=-e.s;else if(l[0])e=new m(p);else return new m(c===3?-0:0);return TO?JO(e,s,c):e}if(n=jO(e.e/RO),u=jO(p.e/RO),l=l.slice(),a=u-n,a){for(d=a<0,d?(t=l,a=-a,o=f.length):(t=f,n=u,o=l.length),r=Math.max(Math.ceil(s/RO),o)+2,a>r&&(a=r,t.length=1),t.reverse(),r=a;r--;)t.push(0);t.reverse()}else{for(r=l.length,o=f.length,d=r0;--r)l[o++]=0;for(r=f.length;r>a;){if(l[--r]o?a+1:o+1,i>o&&(i=o,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(o=l.length,i=u.length,o-i<0&&(i=o,n=u,u=l,l=n),t=0;i;)t=(l[--i]=l[i]+u[i]+t)/LO|0,l[i]%=LO;for(t&&(l.unshift(t),++r),o=l.length;l[--o]==0;)l.pop();return e.d=l,e.e=XO(l,r),TO?JO(e,s,c):e},Q.precision=Q.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(DO+e);return n.d?(t=$O(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t},Q.round=function(){var e=this,t=e.constructor;return JO(new t(e),e.e+1,t.rounding)},Q.sine=Q.sin=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+RO,r.rounding=1,n=lk(r,fk(r,n)),r.precision=e,r.rounding=t,JO(wO>2?n.neg():n,e,t,!0)):new r(NaN)},Q.squareRoot=Q.sqrt=function(){var e,t,n,r,i,a,o=this,s=o.d,c=o.e,l=o.s,u=o.constructor;if(l!==1||!s||!s[0])return new u(!l||l<0&&(!s||s[0])?NaN:s?o:1/0);for(TO=!1,l=Math.sqrt(+o),l==0||l==1/0?(t=HO(s),(t.length+c)%2==0&&(t+=`0`),l=Math.sqrt(t),c=jO((c+1)/2)-(c<0||c%2),l==1/0?t=`5e`+c:(t=l.toExponential(),t=t.slice(0,t.indexOf(`e`)+1)+c),r=new u(t)):r=new u(l.toString()),n=(c=u.precision)+3;;)if(a=r,r=a.plus(qO(o,a,n+2,1)).times(.5),HO(a.d).slice(0,n)===(t=HO(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t==`9999`||!i&&t==`4999`){if(!i&&(JO(a,c+1,0),a.times(a).eq(o))){r=a;break}n+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)==`5`)&&(JO(r,c+1,1),e=!r.times(r).eq(o));break}return TO=!0,JO(r,c,u.rounding,e)},Q.tangent=Q.tan=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+10,r.rounding=1,n=n.sin(),n.s=1,n=qO(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,JO(wO==2||wO==4?n.neg():n,e,t,!0)):new r(NaN)},Q.times=Q.mul=function(e){var t,n,r,i,a,o,s,c,l,u=this,d=u.constructor,f=u.d,p=(e=new d(e)).d;if(e.s*=u.s,!f||!f[0]||!p||!p[0])return new d(!e.s||f&&!f[0]&&!p||p&&!p[0]&&!f?NaN:!f||!p?e.s/0:e.s*0);for(n=jO(u.e/RO)+jO(e.e/RO),c=f.length,l=p.length,c=0;){for(t=0,i=c+r;i>r;)s=a[i]+p[r]*f[i-r-1]+t,a[i--]=s%LO|0,t=s/LO|0;a[i]=(a[i]+t)%LO|0}for(;!a[--o];)a.pop();return t?++n:a.shift(),e.d=a,e.e=XO(a,n),TO?JO(e,d.precision,d.rounding):e},Q.toBinary=function(e,t){return pk(this,2,e,t)},Q.toDecimalPlaces=Q.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(UO(e,0,vO),t===void 0?t=r.rounding:UO(t,0,8),JO(n,e+n.e+1,t))},Q.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=YO(r,!0):(UO(e,0,vO),t===void 0?t=i.rounding:UO(t,0,8),r=JO(new i(r),e+1,t),n=YO(r,!0,e+1)),r.isNeg()&&!r.isZero()?`-`+n:n},Q.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?n=YO(i):(UO(e,0,vO),t===void 0?t=a.rounding:UO(t,0,8),r=JO(new a(i),e+i.e+1,t),n=YO(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?`-`+n:n},Q.toFraction=function(e){var t,n,r,i,a,o,s,c,l,u,d,f,p=this,m=p.d,h=p.constructor;if(!m)return new h(p);if(l=n=new h(1),r=c=new h(0),t=new h(r),a=t.e=$O(m)-p.e-1,o=a%RO,t.d[0]=MO(10,o<0?RO+o:o),e==null)e=a>0?t:l;else{if(s=new h(e),!s.isInt()||s.lt(l))throw Error(DO+s);e=s.gt(t)?a>0?t:l:s}for(TO=!1,s=new h(HO(m)),u=h.precision,h.precision=a=m.length*RO*2;d=qO(s,t,0,1,1),i=n.plus(d.times(r)),i.cmp(e)!=1;)n=r,r=i,i=l,l=c.plus(d.times(i)),c=i,i=t,t=s.minus(d.times(i)),s=i;return i=qO(e.minus(n),r,0,1,1),c=c.plus(i.times(l)),n=n.plus(i.times(r)),c.s=l.s=p.s,f=qO(l,r,a,1).minus(p).abs().cmp(qO(c,n,a,1).minus(p).abs())<1?[l,r]:[c,n],h.precision=u,TO=!0,f},Q.toHexadecimal=Q.toHex=function(e,t){return pk(this,16,e,t)},Q.toNearest=function(e,t){var n=this,r=n.constructor;if(n=new r(n),e==null){if(!n.d)return n;e=new r(1),t=r.rounding}else{if(e=new r(e),t===void 0?t=r.rounding:UO(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&=n.s,e}return e.d[0]?(TO=!1,n=qO(n,e,0,t,1).times(e),TO=!0,JO(n)):(e.s=n.s,n=e),n},Q.toNumber=function(){return+this},Q.toOctal=function(e,t){return pk(this,8,e,t)},Q.toPower=Q.pow=function(e){var t,n,r,i,a,o,s=this,c=s.constructor,l=+(e=new c(e));if(!s.d||!e.d||!s.d[0]||!e.d[0])return new c(MO(+s,l));if(s=new c(s),s.eq(1))return s;if(r=c.precision,a=c.rounding,e.eq(1))return JO(s,r,a);if(t=jO(e.e/RO),t>=e.d.length-1&&(n=l<0?-l:l)<=zO)return i=tk(c,s,n,r),e.s<0?new c(1).div(i):JO(i,r,a);if(o=s.s,o<0){if(tc.maxE+1||t0?o/0:0):(TO=!1,c.rounding=s.s=1,n=Math.min(12,(t+``).length),i=ik(e.times(ak(s,r+n)),r),i.d&&(i=JO(i,r+5,1),WO(i.d,r,a)&&(t=r+10,i=JO(ik(e.times(ak(s,t+n)),t),t+5,1),+HO(i.d).slice(r+1,r+15)+1==0x5af3107a4000&&(i=JO(i,r+1,0)))),i.s=o,TO=!0,c.rounding=a,JO(i,r,a))},Q.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=YO(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(UO(e,1,vO),t===void 0?t=i.rounding:UO(t,0,8),r=JO(new i(r),e,t),n=YO(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?`-`+n:n},Q.toSignificantDigits=Q.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(UO(e,1,vO),t===void 0?t=r.rounding:UO(t,0,8)),JO(new r(n),e,t)},Q.toString=function(){var e=this,t=e.constructor,n=YO(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?`-`+n:n},Q.truncated=Q.trunc=function(){return JO(new this.constructor(this),this.e+1,1)},Q.valueOf=Q.toJSON=function(){var e=this,t=e.constructor,n=YO(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?`-`+n:n};function HO(e){var t,n,r,i=e.length-1,a=``,o=e[0];if(i>0){for(a+=o,t=1;tn)throw Error(DO+e)}function WO(e,t,n,r){var i,a,o,s;for(a=e[0];a>=10;a/=10)--t;return--t<0?(t+=RO,i=0):(i=Math.ceil((t+1)/RO),t%=RO),a=MO(10,RO-t),s=e[i]%a|0,r==null?t<3?(t==0?s=s/100|0:t==1&&(s=s/10|0),o=n<4&&s==99999||n>3&&s==49999||s==5e4||s==0):o=(n<4&&s+1==a||n>3&&s+1==a/2)&&(e[i+1]/a/100|0)==MO(10,t-2)-1||(s==a/2||s==0)&&(e[i+1]/a/100|0)==0:t<4?(t==0?s=s/1e3|0:t==1?s=s/100|0:t==2&&(s=s/10|0),o=(r||n<4)&&s==9999||!r&&n>3&&s==4999):o=((r||n<4)&&s+1==a||!r&&n>3&&s+1==a/2)&&(e[i+1]/a/1e3|0)==MO(10,t-3)-1,o}function GO(e,t,n){for(var r,i=[0],a,o=0,s=e.length;on-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/n|0,i[r]%=n)}return i.reverse()}function KO(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/dk(4,n)).toString()):(n=16,i=`2.3283064365386962890625e-10`),e.precision+=n,t=uk(e,1,t.times(i),new e(1));for(var a=n;a--;){var o=t.times(t);t=o.times(o).minus(o).times(8).plus(1)}return e.precision-=n,t}var qO=(function(){function e(e,t,n){var r,i=0,a=e.length;for(e=e.slice();a--;)r=e[a]*t+i,e[a]=r%n|0,i=r/n|0;return i&&e.unshift(i),e}function t(e,t,n,r){var i,a;if(n!=r)a=n>r?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function n(e,t,n,r){for(var i=0;n--;)e[n]-=i,i=+(e[n]1;)e.shift()}return function(r,i,a,o,s,c){var l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k=r.constructor,A=r.s==i.s?1:-1,j=r.d,M=i.d;if(!j||!j[0]||!M||!M[0])return new k(!r.s||!i.s||(j?M&&j[0]==M[0]:!M)?NaN:j&&j[0]==0||!M?A*0:A/0);for(c?(p=1,u=r.e-i.e):(c=LO,p=RO,u=jO(r.e/p)-jO(i.e/p)),D=M.length,T=j.length,_=new k(A),v=_.d=[],d=0;M[d]==(j[d]||0);d++);if(M[d]>(j[d]||0)&&u--,a==null?(S=a=k.precision,o=k.rounding):S=s?a+(r.e-i.e)+1:a,S<0)v.push(1),m=!0;else{if(S=S/p+2|0,d=0,D==1){for(f=0,M=M[0],S++;(d1&&(M=e(M,f,c),j=e(j,f,c),D=M.length,T=j.length),w=D,y=j.slice(0,D),b=y.length;b=c/2&&++E;do f=0,l=t(M,y,D,b),l<0?(x=y[0],D!=b&&(x=x*c+(y[1]||0)),f=x/E|0,f>1?(f>=c&&(f=c-1),h=e(M,f,c),g=h.length,b=y.length,l=t(h,y,g,b),l==1&&(f--,n(h,D=10;f/=10)d++;_.e=d+u*p-1,JO(_,s?a+_.e+1:a,o,m)}return _}})();function JO(e,t,n,r){var i,a,o,s,c,l,u,d,f,p=e.constructor;out:if(t!=null){if(d=e.d,!d)return e;for(i=1,s=d[0];s>=10;s/=10)i++;if(a=t-i,a<0)a+=RO,o=t,u=d[f=0],c=u/MO(10,i-o-1)%10|0;else if(f=Math.ceil((a+1)/RO),s=d.length,f>=s)if(r){for(;s++<=f;)d.push(0);u=c=0,i=1,a%=RO,o=a-RO+1}else break out;else{for(u=s=d[f],i=1;s>=10;s/=10)i++;a%=RO,o=a-RO+i,c=o<0?0:u/MO(10,i-o-1)%10|0}if(r=r||t<0||d[f+1]!==void 0||(o<0?u:u%MO(10,i-o-1)),l=n<4?(c||r)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||r||n==6&&(a>0?o>0?u/MO(10,i-o):0:d[f-1])%10&1||n==(e.s<0?8:7)),t<1||!d[0])return d.length=0,l?(t-=e.e+1,d[0]=MO(10,(RO-t%RO)%RO),e.e=-t||0):d[0]=e.e=0,e;if(a==0?(d.length=f,s=1,f--):(d.length=f+1,s=MO(10,RO-a),d[f]=o>0?(u/MO(10,i-o)%MO(10,o)|0)*s:0),l)for(;;)if(f==0){for(a=1,o=d[0];o>=10;o/=10)a++;for(o=d[0]+=s,s=1;o>=10;o/=10)s++;a!=s&&(e.e++,d[0]==LO&&(d[0]=1));break}else{if(d[f]+=s,d[f]!=LO)break;d[f--]=0,s=1}for(a=d.length;d[--a]===0;)d.pop()}return TO&&(e.e>p.maxE?(e.d=null,e.e=NaN):e.e0?a=a.charAt(0)+`.`+a.slice(1)+ek(r):o>1&&(a=a.charAt(0)+`.`+a.slice(1)),a=a+(e.e<0?`e`:`e+`)+e.e):i<0?(a=`0.`+ek(-i-1)+a,n&&(r=n-o)>0&&(a+=ek(r))):i>=o?(a+=ek(i+1-o),n&&(r=n-i-1)>0&&(a=a+`.`+ek(r))):((r=i+1)0&&(i+1===o&&(a+=`.`),a+=ek(r))),a}function XO(e,t){var n=e[0];for(t*=RO;n>=10;n/=10)t++;return t}function ZO(e,t,n){if(t>BO)throw TO=!0,n&&(e.precision=n),Error(OO);return JO(new e(bO),t,1,!0)}function QO(e,t,n){if(t>VO)throw Error(OO);return JO(new e(xO),t,n,!0)}function $O(e){var t=e.length-1,n=t*RO+1;if(t=e[t],t){for(;t%10==0;t/=10)n--;for(t=e[0];t>=10;t/=10)n++}return n}function ek(e){for(var t=``;e--;)t+=`0`;return t}function tk(e,t,n,r){var i,a=new e(1),o=Math.ceil(r/RO+4);for(TO=!1;;){if(n%2&&(a=a.times(t),mk(a.d,o)&&(i=!0)),n=jO(n/2),n===0){n=a.d.length-1,i&&a.d[n]===0&&++a.d[n];break}t=t.times(t),mk(t.d,o)}return TO=!0,a}function nk(e){return e.d[e.d.length-1]&1}function rk(e,t,n){for(var r,i,a=new e(t[0]),o=0;++o17)return new f(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(TO=!1,c=m):c=t,s=new f(.03125);e.e>-2;)e=e.times(s),d+=5;for(r=Math.log(MO(2,d))/Math.LN10*2+5|0,c+=r,n=a=o=new f(1),f.precision=c;;){if(a=JO(a.times(e),c,1),n=n.times(++u),s=o.plus(qO(a,n,c,1)),HO(s.d).slice(0,c)===HO(o.d).slice(0,c)){for(i=d;i--;)o=JO(o.times(o),c,1);if(t==null)if(l<3&&WO(o.d,c-r,p,l))f.precision=c+=10,n=a=s=new f(1),u=0,l++;else return JO(o,f.precision=m,p,TO=!0);else return f.precision=m,o}o=s}}function ak(e,t){var n,r,i,a,o,s,c,l,u,d,f,p=1,m=10,h=e,g=h.d,_=h.constructor,v=_.rounding,y=_.precision;if(h.s<0||!g||!g[0]||!h.e&&g[0]==1&&g.length==1)return new _(g&&!g[0]?-1/0:h.s==1?g?0:h:NaN);if(t==null?(TO=!1,u=y):u=t,_.precision=u+=m,n=HO(g),r=n.charAt(0),Math.abs(a=h.e)<0x5543df729c000){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)h=h.times(e),n=HO(h.d),r=n.charAt(0),p++;a=h.e,r>1?(h=new _(`0.`+n),a++):h=new _(r+`.`+n.slice(1))}else return l=ZO(_,u+2,y).times(a+``),h=ak(new _(r+`.`+n.slice(1)),u-m).plus(l),_.precision=y,t==null?JO(h,y,v,TO=!0):h;for(d=h,c=o=h=qO(h.minus(1),h.plus(1),u,1),f=JO(h.times(h),u,1),i=3;;){if(o=JO(o.times(f),u,1),l=c.plus(qO(o,new _(i),u,1)),HO(l.d).slice(0,u)===HO(c.d).slice(0,u))if(c=c.times(2),a!==0&&(c=c.plus(ZO(_,u+2,y).times(a+``))),c=qO(c,new _(p),u,1),t==null)if(WO(c.d,u-m,v,s))_.precision=u+=m,l=o=h=qO(d.minus(1),d.plus(1),u,1),f=JO(h.times(h),u,1),i=s=1;else return JO(c,_.precision=y,v,TO=!0);else return _.precision=y,c;c=l,i+=2}}function ok(e){return String(e.s*e.s/0)}function sk(e,t){var n,r,i;for((n=t.indexOf(`.`))>-1&&(t=t.replace(`.`,``)),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;r++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(r,i),t){if(i-=r,e.e=n=n-r-1,e.d=[],r=(n+1)%RO,n<0&&(r+=RO),re.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(t=t.replace(/(\d)_(?=\d)/g,`$1`),IO.test(t))return sk(e,t)}else if(t===`Infinity`||t===`NaN`)return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(PO.test(t))n=16,t=t.toLowerCase();else if(NO.test(t))n=2;else if(FO.test(t))n=8;else throw Error(DO+t);for(a=t.search(/p/i),a>0?(c=+t.slice(a+1),t=t.substring(2,a)):t=t.slice(2),a=t.indexOf(`.`),o=a>=0,r=e.constructor,o&&(t=t.replace(`.`,``),s=t.length,a=s-a,i=tk(r,new r(n),a,a*2)),l=GO(t,n,LO),u=l.length-1,a=u;l[a]===0;--a)l.pop();return a<0?new r(e.s*0):(e.e=XO(l,u),e.d=l,TO=!1,o&&(e=qO(e,i,s*4)),c&&(e=e.times(Math.abs(c)<54?MO(2,c):nA.pow(2,c))),TO=!0,e)}function lk(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:uk(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/dk(5,n)),t=uk(e,2,t,t);for(var i,a=new e(5),o=new e(16),s=new e(20);n--;)i=t.times(t),t=t.times(a.plus(i.times(o.times(i).minus(s))));return t}function uk(e,t,n,r,i){var a,o,s,c,l=1,u=e.precision,d=Math.ceil(u/RO);for(TO=!1,c=n.times(n),s=new e(r);;){if(o=qO(s.times(c),new e(t++*t++),u,1),s=i?r.plus(o):r.minus(o),r=qO(o.times(c),new e(t++*t++),u,1),o=s.plus(r),o.d[d]!==void 0){for(a=d;o.d[a]===s.d[a]&&a--;);if(a==-1)break}a=s,s=r,r=o,o=a,l++}return TO=!0,o.d.length=d+1,o}function dk(e,t){for(var n=e;--t;)n*=e;return n}function fk(e,t){var n,r=t.s<0,i=QO(e,e.precision,1),a=i.times(.5);if(t=t.abs(),t.lte(a))return wO=r?4:1,t;if(n=t.divToInt(i),n.isZero())wO=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(a))return wO=nk(n)?r?2:3:r?4:1,t;wO=nk(n)?r?1:4:r?3:2}return t.minus(i).abs()}function pk(e,t,n,r){var i,a,o,s,c,l,u,d,f,p=e.constructor,m=n!==void 0;if(m?(UO(n,1,vO),r===void 0?r=p.rounding:UO(r,0,8)):(n=p.precision,r=p.rounding),!e.isFinite())u=ok(e);else{for(u=YO(e),o=u.indexOf(`.`),m?(i=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):i=t,o>=0&&(u=u.replace(`.`,``),f=new p(1),f.e=u.length-o,f.d=GO(YO(f),10,i),f.e=f.d.length),d=GO(u,10,i),a=c=d.length;d[--c]==0;)d.pop();if(!d[0])u=m?`0p+0`:`0`;else{if(o<0?a--:(e=new p(e),e.d=d,e.e=a,e=qO(e,f,n,r,0,i),d=e.d,a=e.e,l=CO),o=d[n],s=i/2,l||=d[n+1]!==void 0,l=r<4?(o!==void 0||l)&&(r===0||r===(e.s<0?3:2)):o>s||o===s&&(r===4||l||r===6&&d[n-1]&1||r===(e.s<0?8:7)),d.length=n,l)for(;++d[--n]>i-1;)d[n]=0,n||(++a,d.unshift(1));for(c=d.length;!d[c-1];--c);for(o=0,u=``;o1)if(t==16||t==8){for(o=t==16?4:3,--c;c%o;c++)u+=`0`;for(d=GO(u,i,t),c=d.length;!d[c-1];--c);for(o=1,u=`1.`;oc)for(a-=c;a--;)u+=`0`;else at)return e.length=t,!0}function hk(e){return new this(e).abs()}function gk(e){return new this(e).acos()}function _k(e){return new this(e).acosh()}function vk(e,t){return new this(e).plus(t)}function yk(e){return new this(e).asin()}function bk(e){return new this(e).asinh()}function xk(e){return new this(e).atan()}function Sk(e){return new this(e).atanh()}function Ck(e,t){e=new this(e),t=new this(t);var n,r=this.precision,i=this.rounding,a=r+4;return!e.s||!t.s?n=new this(NaN):!e.d&&!t.d?(n=QO(this,a,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?QO(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=QO(this,a,1).times(.5),n.s=e.s):t.s<0?(this.precision=a,this.rounding=1,n=this.atan(qO(e,t,a,1)),t=QO(this,a,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(qO(e,t,a,1)),n}function wk(e){return new this(e).cbrt()}function Tk(e){return JO(e=new this(e),e.e+1,2)}function Ek(e,t,n){return new this(e).clamp(t,n)}function Dk(e){if(!e||typeof e!=`object`)throw Error(EO+`Object expected`);var t,n,r,i=e.defaults===!0,a=[`precision`,1,vO,`rounding`,0,8,`toExpNeg`,-_O,0,`toExpPos`,0,_O,`maxE`,0,_O,`minE`,-_O,0,`modulo`,0,9];for(t=0;t=a[t+1]&&r<=a[t+2])this[n]=r;else throw Error(DO+n+`: `+r);if(n=`crypto`,i&&(this[n]=SO[n]),(r=e[n])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<`u`&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[n]=!0;else throw Error(kO);else this[n]=!1;else throw Error(DO+n+`: `+r);return this}function Ok(e){return new this(e).cos()}function kk(e){return new this(e).cosh()}function Ak(e){var t,n,r;function i(e){var t,n,r,a=this;if(!(a instanceof i))return new i(e);if(a.constructor=i,Fk(e)){a.s=e.s,TO?!e.d||e.e>i.maxE?(a.e=NaN,a.d=null):e.e=10;n/=10)t++;TO?t>i.maxE?(a.e=NaN,a.d=null):t=429e7?t[a]=crypto.getRandomValues(new Uint32Array(1))[0]:s[a++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(r*=4);a=214e7?crypto.randomBytes(4).copy(t,a):(s.push(i%1e7),a+=4);a=r/4}else throw Error(kO);for(r=s[--a],e%=RO,r&&e&&(i=MO(10,RO-e),s[a]=(r/i|0)*i);s[a]===0;a--)s.pop();if(a<0)n=0,s=[0];else{for(n=-1;s[0]===0;n-=RO)s.shift();for(r=1,i=s[0];i>=10;i/=10)r++;r{var{on:t,config:n}=e,r=nA.clone({precision:n.precision,modulo:nA.EUCLID});return r.prototype=Object.create(r.prototype),r.prototype.type=`BigNumber`,r.prototype.isBigNumber=!0,r.prototype.toJSON=function(){return{mathjs:`BigNumber`,value:this.toString()}},r.fromJSON=function(e){return new r(e.value)},t&&t(`config`,function(e,t){e.precision!==t.precision&&r.config({precision:e.precision})}),r},{isClass:!0}),iA=Math.cosh||function(e){return Math.abs(e)<1e-9?1-e:(Math.exp(e)+Math.exp(-e))*.5},aA=Math.sinh||function(e){return Math.abs(e)<1e-9?e:(Math.exp(e)-Math.exp(-e))*.5},oA=e=>{let t=Math.sin(.5*e);return-2*t*t},sA=function(e,t){return e=Math.abs(e),t=Math.abs(t),e0&&cA();break;case`number`:n.im=0,n.re=e;break;default:cA()}return isNaN(n.re)||isNaN(n.im),n};function $(e,t){if(!(this instanceof $))return new $(e,t);let n=dA(e,t);this.re=n.re,this.im=n.im}$.prototype={re:0,im:0,sign:function(){let e=sA(this.re,this.im);return new $(this.re/e,this.im/e)},add:function(e,t){let n=dA(e,t),r=this.isInfinite(),i=!(isFinite(n.re)&&isFinite(n.im));return r||i?r&&i?$.NAN:$.INFINITY:new $(this.re+n.re,this.im+n.im)},sub:function(e,t){let n=dA(e,t),r=this.isInfinite(),i=!(isFinite(n.re)&&isFinite(n.im));return r||i?r&&i?$.NAN:$.INFINITY:new $(this.re-n.re,this.im-n.im)},mul:function(e,t){let n=dA(e,t),r=this.isInfinite(),i=!(isFinite(n.re)&&isFinite(n.im)),a=this.re===0&&this.im===0,o=n.re===0&&n.im===0;return r&&o||i&&a?$.NAN:r||i?$.INFINITY:n.im===0&&this.im===0?new $(this.re*n.re,0):new $(this.re*n.re-this.im*n.im,this.re*n.im+this.im*n.re)},div:function(e,t){let n=dA(e,t),r=this.isInfinite(),i=!(isFinite(n.re)&&isFinite(n.im)),a=this.re===0&&this.im===0,o=n.re===0&&n.im===0;if(a&&o||r&&i)return $.NAN;if(o||r)return $.INFINITY;if(a||i)return $.ZERO;if(n.im===0)return new $(this.re/n.re,this.im/n.re);if(Math.abs(n.re)0)return new $(this.re**+n.re,0);if(this.re===0)switch((n.re%4+4)%4){case 0:return new $(this.im**+n.re,0);case 1:return new $(0,this.im**+n.re);case 2:return new $(-(this.im**+n.re),0);case 3:return new $(0,-(this.im**+n.re))}}if(r&&n.re>0)return $.ZERO;let i=Math.atan2(this.im,this.re),a=lA(this.re,this.im),o=Math.exp(n.re*a-n.im*i),s=n.im*a+n.re*i;return new $(o*Math.cos(s),o*Math.sin(s))},sqrt:function(){let e=this.re,t=this.im;if(t===0)return e>=0?new $(Math.sqrt(e),0):new $(0,Math.sqrt(-e));let n=sA(e,t),r=Math.sqrt(.5*(n+Math.abs(e))),i=Math.abs(t)/(2*r);return e>=0?new $(r,t<0?-i:i):new $(i,t<0?-r:r)},exp:function(){let e=Math.exp(this.re);return this.im===0?new $(e,0):new $(e*Math.cos(this.im),e*Math.sin(this.im))},expm1:function(){let e=this.re,t=this.im;return new $(Math.expm1(e)*Math.cos(t)+oA(t),Math.exp(e)*Math.sin(t))},log:function(){let e=this.re,t=this.im;return t===0&&e>0?new $(Math.log(e),0):new $(lA(e,t),Math.atan2(t,e))},abs:function(){return sA(this.re,this.im)},arg:function(){return Math.atan2(this.im,this.re)},sin:function(){let e=this.re,t=this.im;return new $(Math.sin(e)*iA(t),Math.cos(e)*aA(t))},cos:function(){let e=this.re,t=this.im;return new $(Math.cos(e)*iA(t),-Math.sin(e)*aA(t))},tan:function(){let e=2*this.re,t=2*this.im,n=Math.cos(e)+iA(t);return new $(Math.sin(e)/n,aA(t)/n)},cot:function(){let e=2*this.re,t=2*this.im,n=Math.cos(e)-iA(t);return new $(-Math.sin(e)/n,aA(t)/n)},sec:function(){let e=this.re,t=this.im,n=.5*iA(2*t)+.5*Math.cos(2*e);return new $(Math.cos(e)*iA(t)/n,Math.sin(e)*aA(t)/n)},csc:function(){let e=this.re,t=this.im,n=.5*iA(2*t)-.5*Math.cos(2*e);return new $(Math.sin(e)*iA(t)/n,-Math.cos(e)*aA(t)/n)},asin:function(){let e=this.re,t=this.im,n=new $(t*t-e*e+1,-2*e*t).sqrt(),r=new $(n.re-t,n.im+e).log();return new $(r.im,-r.re)},acos:function(){let e=this.re,t=this.im,n=new $(t*t-e*e+1,-2*e*t).sqrt(),r=new $(n.re-t,n.im+e).log();return new $(Math.PI/2-r.im,r.re)},atan:function(){let e=this.re,t=this.im;if(e===0){if(t===1)return new $(0,1/0);if(t===-1)return new $(0,-1/0)}let n=e*e+(1-t)*(1-t),r=new $((1-t*t-e*e)/n,-2*e/n).log();return new $(-.5*r.im,.5*r.re)},acot:function(){let e=this.re,t=this.im;if(t===0)return new $(Math.atan2(1,e),0);let n=e*e+t*t;return n===0?new $(e===0?0:e/0,t===0?0:-t/0).atan():new $(e/n,-t/n).atan()},asec:function(){let e=this.re,t=this.im;if(e===0&&t===0)return new $(0,1/0);let n=e*e+t*t;return n===0?new $(e===0?0:e/0,t===0?0:-t/0).acos():new $(e/n,-t/n).acos()},acsc:function(){let e=this.re,t=this.im;if(e===0&&t===0)return new $(Math.PI/2,1/0);let n=e*e+t*t;return n===0?new $(e===0?0:e/0,t===0?0:-t/0).asin():new $(e/n,-t/n).asin()},sinh:function(){let e=this.re,t=this.im;return new $(aA(e)*Math.cos(t),iA(e)*Math.sin(t))},cosh:function(){let e=this.re,t=this.im;return new $(iA(e)*Math.cos(t),aA(e)*Math.sin(t))},tanh:function(){let e=2*this.re,t=2*this.im,n=iA(e)+Math.cos(t);return new $(aA(e)/n,Math.sin(t)/n)},coth:function(){let e=2*this.re,t=2*this.im,n=iA(e)-Math.cos(t);return new $(aA(e)/n,-Math.sin(t)/n)},csch:function(){let e=this.re,t=this.im,n=Math.cos(2*t)-iA(2*e);return new $(-2*aA(e)*Math.cos(t)/n,2*iA(e)*Math.sin(t)/n)},sech:function(){let e=this.re,t=this.im,n=Math.cos(2*t)+iA(2*e);return new $(2*iA(e)*Math.cos(t)/n,-2*aA(e)*Math.sin(t)/n)},asinh:function(){let e=this.re,t=this.im;if(t===0){if(e===0)return new $(0,0);let t=Math.abs(e),n=Math.log(t+Math.sqrt(t*t+1));return new $(e<0?-n:n,0)}let n=new $(e*e-t*t+1,2*e*t).sqrt();return new $(e+n.re,t+n.im).log()},acosh:function(){let e=this.re,t=this.im;if(t===0){if(e>1)return new $(Math.log(e+Math.sqrt(e-1)*Math.sqrt(e+1)),0);if(e<-1){let t=Math.sqrt(e*e-1);return new $(Math.log(-e+t),Math.PI)}return new $(0,Math.acos(e))}let n=new $(e-1,t).sqrt(),r=new $(e+1,t).sqrt();return new $(e+n.re*r.re-n.im*r.im,t+n.re*r.im+n.im*r.re).log()},atanh:function(){let e=this.re,t=this.im;if(t===0){if(e===0)return new $(0,0);if(e===1)return new $(1/0,0);if(e===-1)return new $(-1/0,0);if(-11){let t=(e+1)/(e-1);return new $(.5*Math.log(t),-Math.PI/2)}let t=(1+e)/(1-e);return new $(.5*Math.log(-t),Math.PI/2)}let n=1-e,r=1+e,i=n*n+t*t;if(i===0)return new $(e===-1?0:e/0,t===0?0:t/0);let a=(r*n-t*t)/i,o=(t*n+r*t)/i;return new $(lA(a,o)/2,Math.atan2(o,a)/2)},acoth:function(){let e=this.re,t=this.im;if(e===0&&t===0)return new $(0,Math.PI/2);let n=e*e+t*t;return n===0?new $(e===0?0:e/0,t===0?0:-t/0).atanh():new $(e/n,-t/n).atanh()},acsch:function(){let e=this.re,t=this.im;if(t===0){if(e===0)return new $(1/0,0);let t=1/e;return new $(Math.log(t+Math.sqrt(t*t+1)),0)}let n=e*e+t*t;return n===0?new $(e===0?0:e/0,t===0?0:-t/0).asinh():new $(e/n,-t/n).asinh()},asech:function(){let e=this.re,t=this.im;if(this.isZero())return $.INFINITY;let n=e*e+t*t;return n===0?new $(e===0?0:e/0,t===0?0:-t/0).acosh():new $(e/n,-t/n).acosh()},inverse:function(){if(this.isZero())return $.INFINITY;if(this.isInfinite())return $.ZERO;let e=this.re,t=this.im,n=e*e+t*t;return new $(e/n,-t/n)},conjugate:function(){return new $(this.re,-this.im)},neg:function(){return new $(-this.re,-this.im)},ceil:function(e){return e=10**(e||0),new $(Math.ceil(this.re*e)/e,Math.ceil(this.im*e)/e)},floor:function(e){return e=10**(e||0),new $(Math.floor(this.re*e)/e,Math.floor(this.im*e)/e)},round:function(e){return e=10**(e||0),new $(Math.round(this.re*e)/e,Math.round(this.im*e)/e)},equals:function(e,t){let n=dA(e,t);return Math.abs(n.re-this.re)<=$.EPSILON&&Math.abs(n.im-this.im)<=$.EPSILON},clone:function(){return new $(this.re,this.im)},toString:function(){let e=this.re,t=this.im,n=``;return this.isNaN()?`NaN`:this.isInfinite()?`Infinity`:(Math.abs(e)<$.EPSILON&&(e=0),Math.abs(t)<$.EPSILON&&(t=0),t===0?n+e:(e===0?t<0&&(t=-t,n+=`-`):(n+=e,n+=` `,t<0?(t=-t,n+=`-`):n+=`+`,n+=` `),t!==1&&(n+=t),n+`i`))},toVector:function(){return[this.re,this.im]},valueOf:function(){return this.im===0?this.re:null},isNaN:function(){return isNaN(this.re)||isNaN(this.im)},isZero:function(){return this.im===0&&this.re===0},isFinite:function(){return isFinite(this.re)&&isFinite(this.im)},isInfinite:function(){return!this.isFinite()}},$.ZERO=new $(0,0),$.ONE=new $(1,0),$.I=new $(0,1),$.PI=new $(Math.PI,0),$.E=new $(Math.E,0),$.INFINITY=new $(1/0,1/0),$.NAN=new $(NaN,NaN),$.EPSILON=1e-15;var fA=Z(`Complex`,[],()=>(Object.defineProperty($,`name`,{value:`Complex`}),$.prototype.constructor=$,$.prototype.type=`Complex`,$.prototype.isComplex=!0,$.prototype.toJSON=function(){return{mathjs:`Complex`,re:this.re,im:this.im}},$.prototype.toPolar=function(){return{r:this.abs(),phi:this.arg()}},$.prototype.format=function(e){var t=``,n=this.im,r=this.re,i=UD(this.re,e),a=UD(this.im,e),o=CE(e)?e:e?e.precision:null;if(o!==null){var s=10**-o;Math.abs(r/n)t.re?1:e.ret.im?1:e.im`u`&&(BigInt=function(e){if(isNaN(e))throw Error(``);return e});var pA=BigInt(0),mA=BigInt(1),hA=BigInt(2),gA=BigInt(3),_A=BigInt(5),vA=BigInt(10);BigInt(2**53-1);var yA=2e3,bA={s:mA,n:pA,d:mA};function xA(e,t){try{e=BigInt(e)}catch{throw NA()}return e*t}function SA(e){return typeof e==`bigint`?e:Math.floor(e)}function CA(e,t){if(t===pA)throw MA();let n=Object.create(jA.prototype);n.s=e{t[e]=(t[e]||pA)+mA};for(;e%hA===pA;)n(hA),e/=hA;for(;e%gA===pA;)n(gA),e/=gA;for(;e%_A===pA;)n(_A),e/=_A;for(let t=0,r=hA+_A;r*r<=e;){for(;e%r===pA;)n(r),e/=r;r+=wA[t],t=t+1&7}return e>mA&&n(e),t}var EA=function(e,t){let n=pA,r=mA,i=mA;if(e!=null)if(t!==void 0){if(typeof e==`bigint`)n=e;else if(isNaN(e))throw NA();else if(e%1!=0)throw PA();else n=BigInt(e);if(typeof t==`bigint`)r=t;else if(isNaN(t))throw NA();else if(t%1!=0)throw PA();else r=BigInt(t);i=n*r}else if(typeof e==`object`){if(`d`in e&&`n`in e)n=BigInt(e.n),r=BigInt(e.d),`s`in e&&(n*=BigInt(e.s));else if(0 in e)n=BigInt(e[0]),1 in e&&(r=BigInt(e[1]));else if(typeof e==`bigint`)n=e;else throw NA();i=n*r}else if(typeof e==`number`){if(isNaN(e))throw NA();if(e<0&&(i=-mA,e=-e),e%1==0)n=BigInt(e);else{let t=1,i=0,a=1,o=1,s=1,c=1e7;for(e>=1&&(t=10**Math.floor(1+Math.log10(e)),e/=t);a<=c&&s<=c;){let t=(i+o)/(a+s);if(e===t){a+s<=c?(n=i+o,r=a+s):s>a?(n=o,r=s):(n=i,r=a);break}else e>t?(i+=o,a+=s):(o+=i,s+=a),a>c?(n=o,r=s):(n=i,r=a)}n=BigInt(n)*BigInt(t),r=BigInt(r)}}else if(typeof e==`string`){let t=0,a=pA,o=pA,s=pA,c=mA,l=mA,u=e.replace(/_/g,``).match(/\d+|./g);if(u===null)throw NA();if(u[t]===`-`?(i=-mA,t++):u[t]===`+`&&t++,u.length===t+1?o=xA(u[t++],i):u[t+1]===`.`||u[t]===`.`?(u[t]!==`.`&&(a=xA(u[t++],i)),t++,(t+1===u.length||u[t+1]===`(`&&u[t+3]===`)`||u[t+1]===`'`&&u[t+3]===`'`)&&(o=xA(u[t],i),c=vA**BigInt(u[t].length),t++),(u[t]===`(`&&u[t+2]===`)`||u[t]===`'`&&u[t+2]===`'`)&&(s=xA(u[t+1],i),l=vA**BigInt(u[t+1].length)-mA,t+=3)):u[t+1]===`/`||u[t+1]===`:`?(o=xA(u[t],i),c=xA(u[t+2],mA),t+=3):u[t+3]===`/`&&u[t+1]===` `&&(a=xA(u[t],i),o=xA(u[t+2],i),c=xA(u[t+4],mA),t+=5),u.length<=t)r=c*l,i=n=s+r*a+l*o;else throw NA()}else if(typeof e==`bigint`)n=e,i=e,r=mA;else throw NA();if(r===pA)throw MA();bA.s=ipA;e=e*e%n,t>>=mA)t&mA&&(r=r*e%n);return r}function OA(e,t){for(;t%hA===pA;t/=hA);for(;t%_A===pA;t/=_A);if(t===mA)return pA;let n=vA%t,r=1;for(;n!==mA;r++)if(n=n*vA%t,r>yA)return pA;return BigInt(r)}function kA(e,t,n){let r=mA,i=DA(vA,n,t);for(let e=0;e<300;e++){if(r===i)return BigInt(e);r=r*vA%t,i=i*vA%t}return 0}function AA(e,t){if(!e)return t;if(!t)return e;for(;;){if(e%=t,!e)return t;if(t%=e,!t)return e}}function jA(e,t){if(EA(e,t),this instanceof jA)e=AA(bA.d,bA.n),this.s=bA.s,this.n=bA.n/e,this.d=bA.d/e;else return CA(bA.s*bA.n,bA.d)}var MA=function(){return Error(`Division by Zero`)},NA=function(){return Error(`Invalid argument`)},PA=function(){return Error(`Parameters must be integer`)};jA.prototype={s:mA,n:pA,d:mA,abs:function(){return CA(this.n,this.d)},neg:function(){return CA(-this.s*this.n,this.d)},add:function(e,t){return EA(e,t),CA(this.s*this.n*bA.d+bA.s*this.d*bA.n,this.d*bA.d)},sub:function(e,t){return EA(e,t),CA(this.s*this.n*bA.d-bA.s*this.d*bA.n,this.d*bA.d)},mul:function(e,t){return EA(e,t),CA(this.s*bA.s*this.n*bA.n,this.d*bA.d)},div:function(e,t){return EA(e,t),CA(this.s*bA.s*this.n*bA.d,this.d*bA.n)},clone:function(){return CA(this.s*this.n,this.d)},mod:function(e,t){if(e===void 0)return CA(this.s*this.n%this.d,mA);if(EA(e,t),pA===bA.n*this.d)throw MA();return CA(this.s*(bA.d*this.n)%(bA.n*this.d),bA.d*this.d)},gcd:function(e,t){return EA(e,t),CA(AA(bA.n,this.n)*AA(bA.d,this.d),bA.d*this.d)},lcm:function(e,t){return EA(e,t),bA.n===pA&&this.n===pA?CA(pA,mA):CA(bA.n*this.n,AA(bA.n,this.n)*AA(bA.d,this.d))},inverse:function(){return CA(this.s*this.d,this.n)},pow:function(e,t){if(EA(e,t),bA.d===mA)return bA.sbA.s*bA.n*this.d},gte:function(e,t){return EA(e,t),this.s*this.n*bA.d>=bA.s*bA.n*this.d},compare:function(e,t){EA(e,t);let n=this.s*this.n*bA.d-bA.s*bA.n*this.d;return(pApA&&this.s>=pA?mA:pA),e)},floor:function(e){return e=vA**BigInt(e||0),CA(SA(this.s*e*this.n/this.d)-(e*this.n%this.d>pA&&this.s=pA?mA:pA)+hA*(e*this.n%this.d)>this.d?mA:pA),e)},roundTo:function(e,t){EA(e,t);let n=this.n*bA.d,r=this.d*bA.n,i=n%r,a=SA(n/r);return i+i>=r&&a++,CA(this.s*a*bA.n,bA.d)},divisible:function(e,t){return EA(e,t),bA.n===pA?!1:this.n*bA.d%(bA.n*this.d)===pA},valueOf:function(){return Number(this.s*this.n)/Number(this.d)},toString:function(e=15){let t=this.n,n=this.d,r=OA(t,n),i=kA(t,n,r),a=this.spA&&(r+=i,r+=` `,t%=n),r+=t,r+=`/`,r+=n}return r},toLatex:function(e=!1){let t=this.n,n=this.d,r=this.spA&&(r+=i,t%=n),r+=`\\frac{`,r+=t,r+=`}{`,r+=n,r+=`}`}return r},toContinued:function(){let e=this.n,t=this.d,n=[];for(;t;){n.push(SA(e/t));let r=e%t;e=t,t=r}return n},simplify:function(e=.001){let t=BigInt(Math.ceil(1/e)),n=this.abs(),r=n.toContinued();for(let e=1;e=0;t--)i=i.inverse().add(r[t]);let a=i.sub(n);if(a.n*t(Object.defineProperty(jA,`name`,{value:`Fraction`}),jA.prototype.constructor=jA,jA.prototype.type=`Fraction`,jA.prototype.isFraction=!0,jA.prototype.toJSON=function(){return{mathjs:`Fraction`,n:String(this.s*this.n),d:String(this.d)}},jA.fromJSON=function(e){return new jA(e)},jA),{isClass:!0}),IA=Z(`Range`,[],()=>{function e(t,n,r){if(!(this instanceof e))throw SyntaxError(`Constructor must be called with the new operator`);var i=t!=null,a=n!=null,o=r!=null;if(i){if(wE(t))t=t.toNumber();else if(typeof t!=`number`&&!TE(t))throw TypeError(`Parameter start must be a number or bigint`)}if(a){if(wE(n))n=n.toNumber();else if(typeof n!=`number`&&!TE(n))throw TypeError(`Parameter end must be a number or bigint`)}if(o){if(wE(r))r=r.toNumber();else if(typeof r!=`number`&&!TE(r))throw TypeError(`Parameter step must be a number or bigint`)}if(this.start=i?parseFloat(t):0,this.end=a?parseFloat(n):0,this.step=o?parseFloat(r):1,o&&$D(this.step,0))throw Error(`Step must not be zero`)}return e.prototype.type=`Range`,e.prototype.isRange=!0,e.parse=function(t){if(typeof t!=`string`)return null;var n=t.split(`:`).map(function(e){return parseFloat(e)});if(n.some(function(e){return isNaN(e)}))return null;switch(n.length){case 2:return new e(n[0],n[1]);case 3:return new e(n[0],n[2],n[1]);default:return null}},e.prototype.clone=function(){return new e(this.start,this.end,this.step)},e.prototype.size=function(){var e=0,t=this.start,n=this.step,r=this.end-t;return ID(n)===ID(r)?e=Math.ceil(r/n):r===0&&(e=0),isNaN(e)&&(e=0),[e]},e.prototype.min=function(){var e=this.size()[0];if(e>0)return this.step>0?this.start:this.start+(e-1)*this.step},e.prototype.max=function(){var e=this.size()[0];if(e>0)return this.step>0?this.start+(e-1)*this.step:this.start},e.prototype.forEach=function(e){var t=this.start,n=this.step,r=this.end,i=0;if(n>0)for(;tr;)e(t,[i],this),t+=n,i++},e.prototype.map=function(e){var t=[];return this.forEach(function(n,r,i){t[r[0]]=e(n,r,i)}),t},e.prototype.toArray=function(){var e=[];return this.forEach(function(t,n){e[n[0]]=t}),e},e.prototype.valueOf=function(){return this.toArray()},e.prototype.format=function(e){var t=UD(this.start,e);return this.step!==1&&(t+=`:`+UD(this.step,e)),t+=`:`+UD(this.end,e),t},e.prototype.toString=function(){return this.format()},e.prototype.toJSON=function(){return{mathjs:`Range`,start:this.start,end:this.end,step:this.step}},e.fromJSON=function(t){return new e(t.start,t.end,t.step)},e},{isClass:!0}),LA=Z(`Matrix`,[],()=>{function e(){if(!(this instanceof e))throw SyntaxError(`Constructor must be called with the new operator`)}return e.prototype.type=`Matrix`,e.prototype.isMatrix=!0,e.prototype.storage=function(){throw Error(`Cannot invoke storage on a Matrix interface`)},e.prototype.datatype=function(){throw Error(`Cannot invoke datatype on a Matrix interface`)},e.prototype.create=function(e,t){throw Error(`Cannot invoke create on a Matrix interface`)},e.prototype.subset=function(e,t,n){throw Error(`Cannot invoke subset on a Matrix interface`)},e.prototype.get=function(e){throw Error(`Cannot invoke get on a Matrix interface`)},e.prototype.set=function(e,t,n){throw Error(`Cannot invoke set on a Matrix interface`)},e.prototype.resize=function(e,t){throw Error(`Cannot invoke resize on a Matrix interface`)},e.prototype.reshape=function(e,t){throw Error(`Cannot invoke reshape on a Matrix interface`)},e.prototype.clone=function(){throw Error(`Cannot invoke clone on a Matrix interface`)},e.prototype.size=function(){throw Error(`Cannot invoke size on a Matrix interface`)},e.prototype.map=function(e,t){throw Error(`Cannot invoke map on a Matrix interface`)},e.prototype.forEach=function(e){throw Error(`Cannot invoke forEach on a Matrix interface`)},e.prototype[Symbol.iterator]=function(){throw Error(`Cannot iterate a Matrix interface`)},e.prototype.toArray=function(){throw Error(`Cannot invoke toArray on a Matrix interface`)},e.prototype.valueOf=function(){throw Error(`Cannot invoke valueOf on a Matrix interface`)},e.prototype.format=function(e){throw Error(`Cannot invoke format on a Matrix interface`)},e.prototype.toString=function(){throw Error(`Cannot invoke toString on a Matrix interface`)},e},{isClass:!0});function RA(e,t,n){var r=e.constructor,i=new r(2),a=``;if(n){if(n<1)throw Error(`size must be in greater than 0`);if(!PD(n))throw Error(`size must be an integer`);if(e.greaterThan(i.pow(n-1).sub(1))||e.lessThan(i.pow(n-1).mul(-1)))throw Error(`Value must be in range [-2^${n-1}, 2^${n-1}-1]`);if(!e.isInteger())throw Error(`Value must be an integer`);e.lessThan(0)&&(e=e.add(i.pow(n))),a=`i${n}`}switch(t){case 2:return`${e.toBinary()}${a}`;case 8:return`${e.toOctal()}${a}`;case 16:return`${e.toHexadecimal()}${a}`;default:throw Error(`Base ${t} not supported `)}}function zA(e,t){if(typeof t==`function`)return t(e);if(!e.isFinite())return e.isNaN()?`NaN`:e.gt(0)?`Infinity`:`-Infinity`;var{notation:n,precision:r,wordSize:i}=WD(t);switch(n){case`fixed`:return HA(e,r);case`exponential`:return VA(e,r);case`engineering`:return BA(e,r);case`bin`:return RA(e,2,i);case`oct`:return RA(e,8,i);case`hex`:return RA(e,16,i);case`auto`:var a=UA(t?.lowerExp,-3),o=UA(t?.upperExp,5);if(e.isZero())return`0`;var s,c=e.toSignificantDigits(r),l=c.e;return s=l>=a&&l=0?`+`:``)+r.toString()}function VA(e,t){return t===void 0?e.toExponential():e.toExponential(t-1)}function HA(e,t){return e.toFixed(t)}function UA(e,t){return CE(e)?e:wE(e)?e.toNumber():t}function WA(e,t){var n=e.length-t.length,r=e.length;return e.substring(n,r)===t}function GA(e,t){var n=KA(e,t);return t&&typeof t==`object`&&`truncate`in t&&n.length>t.truncate?n.substring(0,t.truncate-3)+`...`:n}function KA(e,t){return typeof e==`number`?UD(e,t):wE(e)?zA(e,t):ZA(e)?!t||t.fraction!==`decimal`?`${e.s*e.n}/${e.d}`:e.toString():Array.isArray(e)?XA(e,t):kE(e)?qA(e):typeof e==`function`?e.syntax?String(e.syntax):`function`:e&&typeof e==`object`?typeof e.format==`function`?e.format(t):e&&e.toString(t)!=={}.toString()?e.toString(t):`{`+Object.keys(e).map(n=>qA(n)+`: `+GA(e[n],t)).join(`, `)+`}`:String(e)}function qA(e){for(var t=String(e),n=``,r=0;r/g,`>`),t}function XA(e,t){if(Array.isArray(e)){for(var n=`[`,r=e.length,i=0;it?1:-1}function $A(e,t,n){if(!(this instanceof $A))throw SyntaxError(`Constructor must be called with the new operator`);this.actual=e,this.expected=t,this.relation=n,this.message=`Dimension mismatch (`+(Array.isArray(e)?`[`+e.join(`, `)+`]`:e)+` `+(this.relation||`!=`)+` `+(Array.isArray(t)?`[`+t.join(`, `)+`]`:t)+`)`,this.stack=Error().stack}$A.prototype=RangeError(),$A.prototype.constructor=RangeError,$A.prototype.name=`DimensionError`,$A.prototype.isDimensionError=!0;function ej(e,t,n){if(!(this instanceof ej))throw SyntaxError(`Constructor must be called with the new operator`);this.index=e,arguments.length<3?(this.min=0,this.max=t):(this.min=t,this.max=n),this.min!==void 0&&this.index=this.max?this.message=`Index out of range (`+this.index+` > `+(this.max-1)+`)`:this.message=`Index out of range (`+this.index+`)`,this.stack=Error().stack}ej.prototype=RangeError(),ej.prototype.constructor=RangeError,ej.prototype.name=`IndexError`,ej.prototype.isIndexError=!0;function tj(e){for(var t=[];Array.isArray(e);)t.push(e.length),e=e[0];return t}function nj(e,t,n){var r,i=e.length;if(i!==t[n])throw new $A(i,t[n]);if(n`)}function rj(e,t){if(t.length===0){if(Array.isArray(e))throw new $A(e.length,0)}else nj(e,t,0)}function ij(e,t){var n=e.isMatrix?e._size:tj(e);t._sourceSize.forEach((e,t)=>{if(e!==null&&e!==n[t])throw new $A(e,n[t])})}function aj(e,t){if(e!==void 0){if(!CE(e)||!PD(e))throw TypeError(`Index must be an integer (value: `+e+`)`);if(e<0||typeof t==`number`&&e>=t)throw new ej(e,t)}}function oj(e){for(var t=0;t=0)throw Error(`More than one wildcard in sizes`);var o=a>=0,s=t%n===0;if(o)if(s)r[a]=-t/n;else throw Error(`Could not replace wildcard, since `+t+` is no multiple of `+-n);return r}function dj(e){return e.reduce((e,t)=>e*t,1)}function fj(e,t){for(var n=e,r,i=t.length-1;i>0;i--){var a=t[i];r=[];for(var o=n.length/a,s=0;s1&&arguments[1]!==void 0?arguments[1]:!1;if(!Array.isArray(e))return e;if(typeof t!=`boolean`)throw TypeError(`Boolean expected for second argument of flatten`);var n=[];return t?i(e):r(e),n;function r(e){for(var t=0;tt.test(e))}function Sj(e,t){return Array.prototype.join.call(e,t)}function Cj(e){if(!Array.isArray(e))throw TypeError(`Array input expected`);if(e.length===0)return e;var t=[],n=0;t[0]={value:e[0],identifier:0};for(var r=1;r1)return e.slice(1).reduce(function(e,n){return Ej(e,n,t,0)},e[0]);throw Error(`Wrong number of arguments in function concat`)}function Oj(){for(var e=arguments.length,t=Array(e),n=0;ne.length),i=Math.max(...r),a=Array(i).fill(null),o=0;oa[u]&&(a[u]=s[l])}for(var d=0;d1||e[i]>t[a])throw Error(`shape mismatch: mismatch is found in arg with shape (${e}) not possible to broadcast dimension ${r} with size ${e[i]} to size ${t[a]}`)}}function Aj(e,t){var n=tj(e);if(vD(n,t))return e;kj(n,t);var r=Oj(n,t),i=r.length,a=[...Array(i-n.length).fill(1),...n],o=Fj(e);n.lengthe[t],e)}function Nj(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(e.length===0)return[];if(n)return a(e);var r=[];return i(e,0);function i(n,a){if(Array.isArray(n)){for(var o=n.length,s=Array(o),c=0;c2&&arguments[2]!==void 0?arguments[2]:!1;if(e.length===0)return;if(n){a(e);return}var r=[];i(e,0);function i(n,a){if(Array.isArray(n))for(var o=n.length,s=0;s0);i=zj(e,t.isMatrix?t.get(o):Mj(t,o),o,t)}var s;if(t.isMatrix&&t.dataType!==`mixed`&&t.dataType!==void 0){var c=Lj(e,i);s=c===void 0?e:c}else s=e;return i>=1&&i<=3?{isUnary:i===1,fn:function(){for(var t=arguments.length,r=Array(t),a=0;a{var[r,i]=e;r.split(`,`).length===t&&n.push(i)}),n.length===1)return n[0]}function Rj(e){if(e.length!==1)return!1;var t=e.toString();if(/arguments/.test(t))return!1;var n=t.match(/\(.*?\)/);return!/\.\.\./.test(n)}function zj(e,t,n,r){for(var i=[t,n,r],a=3;a>0;a--){var o=i.slice(0,a);if(lO.default.resolve(e,o)!==null)return a}}function Bj(e,t,n,r){try{return e(...t)}catch(e){Vj(e,t,n,r)}}function Vj(e,t,n,r){if(e instanceof TypeError&&e.data?.category===`wrongType`){var i=[];throw i.push(`value: ${pD(t[0])}`),t.length>=2&&i.push(`index: ${pD(t[1])}`),t.length>=3&&i.push(`array: ${pD(t[2])}`),TypeError(`Function ${n} cannot apply callback arguments ${r}(${i.join(`, `)}) at index ${JSON.stringify(t[1])}`)}else throw TypeError(`Function ${n} cannot apply callback arguments to function ${r}: ${e.message}`)}var Hj=Z(`DenseMatrix`,[`Matrix`,`config`],e=>{var{Matrix:t,config:n}=e;function r(e,t){if(!(this instanceof r))throw SyntaxError(`Constructor must be called with the new operator`);if(t&&!kE(t))throw Error(`Invalid datatype: `+t);if(jE(e))e.type===`DenseMatrix`?(this._data=mD(e._data),this._size=mD(e._size),this._datatype=t||e._datatype):(this._data=e.toArray(),this._size=e.size(),this._datatype=t||e._datatype);else if(e&&AE(e.data)&&AE(e.size))this._data=e.data,this._size=e.size,rj(this._data,this._size),this._datatype=t||e.datatype;else if(AE(e))this._data=u(e),this._size=tj(this._data),rj(this._data,this._size),this._datatype=t;else if(e)throw TypeError(`Unsupported type of data (`+pD(e)+`)`);else this._data=[],this._size=[0],this._datatype=t}r.prototype=new t,r.prototype.createDenseMatrix=function(e,t){return new r(e,t)},Object.defineProperty(r,`name`,{value:`DenseMatrix`}),r.prototype.constructor=r,r.prototype.type=`DenseMatrix`,r.prototype.isDenseMatrix=!0,r.prototype.getDataType=function(){return Tj(this._data,pD)},r.prototype.storage=function(){return`dense`},r.prototype.datatype=function(){return this._datatype},r.prototype.create=function(e,t){return new r(e,t)},r.prototype.subset=function(e,t,n){switch(arguments.length){case 1:return i(this,e);case 2:case 3:return o(this,e,t,n);default:throw SyntaxError(`Wrong number of arguments`)}},r.prototype.get=function(e){return Mj(this._data,e)},r.prototype.set=function(e,t,n){if(!AE(e))throw TypeError(`Array expected`);if(e.lengthe===1):t.isScalar())return e.get(t.min());var i=t.size();if(i.length!==e._size.length)throw new $A(i.length,e._size.length);for(var o=t.min(),s=t.max(),c=0,l=e._size.length;ce!==null)};function i(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=t.dimension(a);function s(e,t){return CE(e)?t(e):e.map(t).valueOf()}return CE(o)?r[a]=null:r[a]=o.size()[0],a(aj(t,e.length),i(e[t],a+1))):s(o,t=>(aj(t,e.length),e[t]))}}function o(e,t,n,r){if(!t||t.isIndex!==!0)throw TypeError(`Invalid index`);var i=t.size(),a=t.isScalar(),o;if(jE(n)?(o=n.size(),n=n.valueOf()):o=tj(n),a){if(o.length!==0)throw TypeError(`Scalar expected`);e.set(t.min(),n,r)}else{if(!vD(o,i)){if(o.length===0)n=Aj([n],i);else try{n=Aj(n,i)}catch{}o=tj(n)}if(i.length`);l(e,t.max().map(function(e){return e+1}),r),s(e._data,t,n)}return e}function s(e,t,n){var r=t.size().length-1;i(e,n);function i(e,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,o=t.dimension(a),s=(t,r)=>{aj(t,e.length),i(e[t],n[r[0]],a+1)},c=(t,r)=>{aj(t,e.length),e[t]=n[r[0]]};aArray.isArray(e)&&e.length===1?e[0]:e);return c(n?this.clone():this,r,t)};function c(e,t,n){if(t.length===0){for(var r=e._data;AE(r);)r=r[0];return r}return e._size=t.slice(0),e._data=sj(e._data,e._size,n),e}r.prototype.reshape=function(e,t){var n=t?this.clone():this;return n._data=lj(n._data,e),n._size=uj(e,n._size.reduce((e,t)=>e*t)),n};function l(e,t,n){for(var r=e._size.slice(0),i=!1;r.lengthr[a]&&(r[a]=t[a],i=!0);i&&c(e,r,n)}r.prototype.clone=function(){return new r({data:mD(this._data),size:mD(this._size),datatype:this._datatype})},r.prototype.size=function(){return this._size.slice(0)},r.prototype.map=function(e){arguments.length>1&&arguments[1]!==void 0&&arguments[1];var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=this,r=n._size.length-1;if(r<0)return n.clone();var i=Ij(e,n,`map`,t),a=i.fn,o=n.create(void 0,n._datatype);if(o._size=n._size,t||i.isUnary)return o._data=f(n._data),o;if(r===0){for(var s=n.valueOf(),c=Array(s.length),l=0;l1&&arguments[1]!==void 0?arguments[1]:0,i=Array(e.length);if(t1&&arguments[1]!==void 0?arguments[1]:0,n=Array(e.length);if(t1&&arguments[1]!==void 0&&arguments[1];var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=this,r=n._size.length-1;if(r<0)return;var i=Ij(e,n,`map`,t),a=i.fn;if(t||i.isUnary){l(n._data);return}if(r===0){for(var o=0;o1&&arguments[1]!==void 0?arguments[1]:0;if(t1&&arguments[1]!==void 0?arguments[1]:0;if(te*t,1),i=0;i=0&&(n[s]++,!(n[s][e[n]]);t.push(new r(a,e._datatype))},o=0;o0?e:0,n=e<0?-e:0,i=this._size[0],a=this._size[1],o=Math.min(i-n,a-t),s=[],c=0;c0?n:0,o=n<0?-n:0,s=e[0],c=e[1],l=Math.min(s-o,c-a),u;if(AE(t)){if(t.length!==l)throw Error(`Invalid value array length`);u=function(e){return t[e]}}else if(jE(t)){var d=t.size();if(d.length!==1||d[0]!==l)throw Error(`Invalid matrix length`);u=function(e){return t.get([e])}}else u=function(){return t};i||=wE(u(0))?u(0).mul(0):0;var f=[];if(e.length>0){f=sj(f,e,i);for(var p=0;p{var{typed:t}=e;return t(Uj,{any:mD})});function Gj(e){var t=e.length,n=e[0].length,r,i,a=[];for(i=0;it(e),!1,!0):Pj(e,t,!0)}function Jj(e,t,n){if(!n)return jE(e)?e.map(e=>t(e),!1,!0):Nj(e,t,!0);var r=e=>e===0?e:t(e);return jE(e)?e.map(e=>r(e),!1,!0):Nj(e,r,!0)}function Yj(e,t,n){var r=Array.isArray(e)?tj(e):e.size();if(t<0||t>=r.length)throw new ej(t,r.length);return jE(e)?e.create(Xj(e.valueOf(),t,n),e.datatype()):Xj(e,t,n)}function Xj(e,t,n){var r,i,a,o;if(t<=0)if(Array.isArray(e[0])){for(o=Gj(e),i=[],r=0;r{var{typed:t,equal:n}=e;return t(Qj,{number:e=>Number.isFinite(e)?n(e,Math.round(e)):!1,BigNumber:e=>e.isFinite()?n(e.round(),e):!1,bigint:e=>!0,Fraction:e=>e.d===1n,"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),eM=`number`,tM=`number, number`;function nM(e){return Math.abs(e)}nM.signature=eM;function rM(e,t){return e+t}rM.signature=tM;function iM(e,t){return e-t}iM.signature=tM;function aM(e,t){return e*t}aM.signature=tM;function oM(e,t){return e/t}oM.signature=tM;function sM(e){return-e}sM.signature=eM;function cM(e){return e}cM.signature=eM;function lM(e){return BD(e)}lM.signature=eM;function uM(e){return e*e*e}uM.signature=eM;function dM(e){return Math.exp(e)}dM.signature=eM;function fM(e){return VD(e)}fM.signature=eM;function pM(e,t){if(!PD(e)||!PD(t))throw Error(`Parameters in function gcd must be integer numbers`);for(var n;t!==0;)n=e%t,e=t,t=n;return e<0?-e:e}pM.signature=tM;function mM(e,t){if(!PD(e)||!PD(t))throw Error(`Parameters in function lcm must be integer numbers`);if(e===0||t===0)return 0;for(var n,r=e*t;t!==0;)n=t,t=e%n,e=n;return Math.abs(r/e)}mM.signature=tM;function hM(e,t){return t?Math.log(e)/Math.log(t):Math.log(e)}function gM(e){return RD(e)}gM.signature=eM;function _M(e){return LD(e)}_M.signature=eM;function vM(e){return zD(e)}vM.signature=eM;function yM(e,t){return t===0?e:e-t*Math.floor(e/t)}yM.signature=tM;function bM(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,n=t<0;if(n&&(t=-t),t===0)throw Error(`Root must be non-zero`);if(e<0&&Math.abs(t)%2!=1)throw Error(`Root must be odd when a is negative.`);if(e===0)return n?1/0:0;if(!isFinite(e))return n?0:e;var r=Math.abs(e)**(1/t);return r=e<0?-r:r,n?1/r:r}function xM(e){return ID(e)}xM.signature=eM;function SM(e){return Math.sqrt(e)}SM.signature=eM;function CM(e){return e*e}CM.signature=eM;function wM(e,t){var n,r,i,a=0,o=1,s=1,c=0;if(!PD(e)||!PD(t))throw Error(`Parameters in function xgcd must be integer numbers`);for(;t;)r=Math.floor(e/t),i=e-r*t,n=a,a=o-r*a,o=n,n=s,s=c-r*s,c=n,e=t,t=i;return e<0?[-e,-o,-c]:[e,e?o:0,c]}wM.signature=tM;function TM(e,t){return e*e<1&&t===1/0||e*e>1&&t===-1/0?0:e**+t}TM.signature=tM;function EM(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!PD(t)||t<0||t>15)throw Error(`Number of decimals in function round must be an integer from 0 to 15 inclusive`);return parseFloat(qD(e,t))}function DM(e){return Math.abs(e)}DM.signature=eM;var OM=`number`,kM=`number, number`;function AM(e,t){if(!PD(e)||!PD(t))throw Error(`Integers expected in function bitAnd`);return e&t}AM.signature=kM;function jM(e){if(!PD(e))throw Error(`Integer expected in function bitNot`);return~e}jM.signature=OM;function MM(e,t){if(!PD(e)||!PD(t))throw Error(`Integers expected in function bitOr`);return e|t}MM.signature=kM;function NM(e,t){if(!PD(e)||!PD(t))throw Error(`Integers expected in function bitXor`);return e^t}NM.signature=kM;function PM(e,t){if(!PD(e)||!PD(t))throw Error(`Integers expected in function leftShift`);return e<>t}FM.signature=kM;function IM(e,t){if(!PD(e)||!PD(t))throw Error(`Integers expected in function rightLogShift`);return e>>>t}IM.signature=kM;function LM(e,t){if(t>1;return LM(e,n)*LM(n+1,t)}function RM(e,t){if(!PD(e)||e<0||!PD(t)||t<0)throw TypeError(`Positive integer value expected in function combinations`);if(t>e)throw TypeError(`k must be less than or equal to n`);for(var n=e-t,r=1,i=t171?1/0:LM(1,e-1);if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*YM(1-e));if(e>=171.35)return 1/0;if(e>85){var n=e*e,r=n*e,i=r*e,a=i*e;return Math.sqrt(2*Math.PI/e)*(e/Math.E)**+e*(1+1/(12*e)+1/(288*n)-139/(51840*r)-571/(2488320*i)+163879/(209018880*a)+5246819/(75246796800*a*e))}--e,t=ZM[0];for(var o=1;o=1;r--)n+=$M[r]/(e+r);return QM+(e+.5)*Math.log(t)-t+Math.log(n)}eN.signature=`number`;var tN=`number`,nN=`number, number`;function rN(e){return Math.acos(e)}rN.signature=tN;function iN(e){return eO(e)}iN.signature=tN;function aN(e){return Math.atan(1/e)}aN.signature=tN;function oN(e){return Number.isFinite(e)?(Math.log((e+1)/e)+Math.log(e/(e-1)))/2:0}oN.signature=tN;function sN(e){return Math.asin(1/e)}sN.signature=tN;function cN(e){var t=1/e;return Math.log(t+Math.sqrt(t*t+1))}cN.signature=tN;function lN(e){return Math.acos(1/e)}lN.signature=tN;function uN(e){var t=1/e,n=Math.sqrt(t*t-1);return Math.log(n+t)}uN.signature=tN;function dN(e){return Math.asin(e)}dN.signature=tN;function fN(e){return tO(e)}fN.signature=tN;function pN(e){return Math.atan(e)}pN.signature=tN;function mN(e,t){return Math.atan2(e,t)}mN.signature=nN;function hN(e){return nO(e)}hN.signature=tN;function gN(e){return Math.cos(e)}gN.signature=tN;function _N(e){return rO(e)}_N.signature=tN;function vN(e){return 1/Math.tan(e)}vN.signature=tN;function yN(e){var t=Math.exp(2*e);return(t+1)/(t-1)}yN.signature=tN;function bN(e){return 1/Math.sin(e)}bN.signature=tN;function xN(e){return e===0?1/0:Math.abs(2/(Math.exp(e)-Math.exp(-e)))*ID(e)}xN.signature=tN;function SN(e){return 1/Math.cos(e)}SN.signature=tN;function CN(e){return 2/(Math.exp(e)+Math.exp(-e))}CN.signature=tN;function wN(e){return Math.sin(e)}wN.signature=tN;function TN(e){return iO(e)}TN.signature=tN;function EN(e){return Math.tan(e)}EN.signature=tN;function DN(e){return aO(e)}DN.signature=tN;var ON=`number`;function kN(e){return PD(e)}kN.signature=ON;function AN(e){return e<0}AN.signature=ON;function jN(e){return e>0}jN.signature=ON;function MN(e){return e===0}MN.signature=ON;function NN(e){return Number.isNaN(e)}NN.signature=ON;function PN(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1e-9,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(n<=0)throw Error(`Relative tolerance must be greater than 0`);if(r<0)throw Error(`Absolute tolerance must be at least 0`);return e.isNaN()||t.isNaN()?!1:!e.isFinite()||!t.isFinite()?e.eq(t):e.eq(t)?!0:e.minus(t).abs().lte(e.constructor.max(e.constructor.max(e.abs(),t.abs()).mul(n),r))}var FN=`isNegative`,IN=Z(FN,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(FN,{number:e=>$D(e,0,n.relTol,n.absTol)?!1:AN(e),BigNumber:e=>PN(e,new e.constructor(0),n.relTol,n.absTol)?!1:e.isNeg()&&!e.isZero()&&!e.isNaN(),bigint:e=>e<0n,Fraction:e=>e.s<0n,Unit:t.referToSelf(e=>n=>t.find(e,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),LN=`isNumeric`,RN=Z(LN,[`typed`],e=>{var{typed:t}=e;return t(LN,{"number | BigNumber | bigint | Fraction | boolean":()=>!0,"Complex | Unit | string | null | undefined | Node":()=>!1,"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),zN=`hasNumericValue`,BN=Z(zN,[`typed`,`isNumeric`],e=>{var{typed:t,isNumeric:n}=e;return t(zN,{boolean:()=>!0,string:function(e){return e.trim().length>0&&!isNaN(Number(e))},any:function(e){return n(e)}})}),VN=`isPositive`,HN=Z(VN,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(VN,{number:e=>$D(e,0,n.relTol,n.absTol)?!1:jN(e),BigNumber:e=>PN(e,new e.constructor(0),n.relTol,n.absTol)?!1:!e.isNeg()&&!e.isZero()&&!e.isNaN(),bigint:e=>e>0n,Fraction:e=>e.s>0n&&e.n>0n,Unit:t.referToSelf(e=>n=>t.find(e,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),UN=`isZero`,WN=Z(UN,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return t(UN,{"number | BigNumber | Complex | Fraction":e=>n(e,0),bigint:e=>e===0n,Unit:t.referToSelf(e=>n=>t.find(e,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),GN=`isNaN`,KN=Z(GN,[`typed`],e=>{var{typed:t}=e;return t(GN,{number:NN,BigNumber:function(e){return e.isNaN()},bigint:function(e){return!1},Fraction:function(e){return!1},Complex:function(e){return e.isNaN()},Unit:function(e){return Number.isNaN(e.value)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),qN=`isBounded`,JN=Z(qN,[`typed`],e=>{var{typed:t}=e;return t(qN,{number:e=>Number.isFinite(e),"BigNumber | Complex":e=>e.isFinite(),"bigint | Fraction":()=>!0,"null | undefined":()=>!1,Unit:t.referToSelf(e=>t=>e(t.value)),"Array | Matrix":t.referToSelf(e=>t=>(Array.isArray(t)||(t=t.valueOf()),t.every(t=>e(t))))})}),YN=`isFinite`,XN=Z(YN,[`typed`,`isBounded`,`map`],e=>{var{typed:t,isBounded:n,map:r}=e;return t(YN,{"Array | Matrix":e=>r(e,n),any:e=>n(e)})}),ZN=`typeOf`,QN=Z(ZN,[`typed`],e=>{var{typed:t}=e;return t(ZN,{any:pD})});function $N(e,t,n,r){return $D(e.re,t.re,n,r)&&$D(e.im,t.im,n,r)}var eP=Z(`compareUnits`,[`typed`],e=>{var{typed:t}=e;return{"Unit, Unit":t.referToSelf(e=>(n,r)=>{if(!n.equalBase(r))throw Error(`Cannot compare units with different base`);return t.find(e,[n.valueType(),r.valueType()])(n.value,r.value)})}}),tP=`equalScalar`,nP=Z(tP,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(tP,{"boolean, boolean":function(e,t){return e===t},"number, number":function(e,t){return $D(e,t,n.relTol,n.absTol)},"BigNumber, BigNumber":function(e,t){return e.eq(t)||PN(e,t,n.relTol,n.absTol)},"bigint, bigint":function(e,t){return e===t},"Fraction, Fraction":function(e,t){return e.equals(t)},"Complex, Complex":function(e,t){return $N(e,t,n.relTol,n.absTol)}},eP({typed:t}))});Z(tP,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(tP,{"number, number":function(e,t){return $D(e,t,n.relTol,n.absTol)}})});var rP=Z(`SparseMatrix`,[`typed`,`equalScalar`,`Matrix`],e=>{var{typed:t,equalScalar:n,Matrix:r}=e;function i(e,t){if(!(this instanceof i))throw SyntaxError(`Constructor must be called with the new operator`);if(t&&!kE(t))throw Error(`Invalid datatype: `+t);if(jE(e))a(this,e,t);else if(e&&AE(e.index)&&AE(e.ptr)&&AE(e.size))this._values=e.values,this._index=e.index,this._ptr=e.ptr,this._size=e.size,this._datatype=t||e.datatype;else if(AE(e))o(this,e,t);else if(e)throw TypeError(`Unsupported type of data (`+pD(e)+`)`);else this._values=[],this._index=[],this._ptr=[0],this._size=[0,0],this._datatype=t}function a(e,t,n){t.type===`SparseMatrix`?(e._values=t._values?mD(t._values):void 0,e._index=mD(t._index),e._ptr=mD(t._ptr),e._size=mD(t._size),e._datatype=n||t._datatype):o(e,t.valueOf(),n||t._datatype)}function o(e,r,i){e._values=[],e._index=[],e._ptr=[],e._datatype=i;var a=r.length,o=0,s=n,c=0;if(kE(i)&&(s=t.find(n,[i,i])||n,c=t.convert(0,i)),a>0){var l=0;do{e._ptr.push(e._index.length);for(var u=0;u`);if(i.length===1)d(t.dimension(0),(t,i)=>{aj(t),e.set([t,0],n[i[0]],r)});else{var l=t.dimension(0),u=t.dimension(1);d(l,(t,i)=>{aj(t),d(u,(a,o)=>{aj(a),e.set([t,a],n[i[0]][o[0]],r)})})}}return e;function d(e,t){CE(e)?t(e,[0]):e.forEach(t)}}i.prototype.get=function(e){if(!AE(e))throw TypeError(`Array expected`);if(e.length!==this._size.length)throw new $A(e.length,this._size.length);if(!this._values)throw Error(`Cannot invoke get on a Pattern only matrix`);var t=e[0],n=e[1];aj(t,this._size[0]),aj(n,this._size[1]);var r=l(t,this._ptr[n],this._ptr[n+1],this._index);return rs-1||o>c-1)&&(f(this,Math.max(a+1,s),Math.max(o+1,c),i),s=this._size[0],c=this._size[1]),aj(a,s),aj(o,c);var h=l(a,this._ptr[o],this._ptr[o+1],this._index);return hArray.isArray(e)&&e.length===1?e[0]:e);if(r.length!==2)throw Error(`Only two dimensions matrix are supported`);return r.forEach(function(e){if(!CE(e)||!PD(e)||e<0)throw TypeError(`Invalid size, must contain positive integers (size: `+GA(r)+`)`)}),f(n?this.clone():this,r[0],r[1],t)};function f(e,r,i,a){var o=a||0,s=n,c=0;kE(e._datatype)&&(s=t.find(n,[e._datatype,e._datatype])||n,c=t.convert(0,e._datatype),o=t.convert(o,e._datatype));var l=!s(o,c),u=e._size[0],d=e._size[1],f,p,m;if(i>d){for(p=d;pu){if(l){var h=0;for(p=0;pr-1&&(e._values.splice(m,1),e._index.splice(m,1),_++)}e._ptr[p]=e._values.length}return e._size[0]=r,e._size[1]=i,e}i.prototype.reshape=function(e,t){if(!AE(e))throw TypeError(`Array expected`);if(e.length!==2)throw Error(`Sparse matrices can only be reshaped in two dimensions`);e.forEach(function(t){if(!CE(t)||!PD(t)||t<=-2||t===0)throw TypeError(`Invalid size, must contain positive integers or -1 (size: `+GA(e)+`)`)});var n=this._size[0]*this._size[1];if(e=uj(e,n),n!==e[0]*e[1])throw Error(`Reshaping sparse matrix will result in the wrong number of elements`);var r=t?this.clone():this;if(this._size[0]===e[0]&&this._size[1]===e[1])return r;for(var i=[],a=0;a=r&&b<=a&&h(e._values[y],b-r,g-o)}else{for(var x={},S=_;S `+(this._values?GA(this._values[c],e):`X`)}return i},i.prototype.toString=function(){return GA(this.toArray())},i.prototype.toJSON=function(){return{mathjs:`SparseMatrix`,values:this._values,index:this._index,ptr:this._ptr,size:this._size,datatype:this._datatype}},i.prototype.diagonal=function(e){if(e){if(wE(e)&&(e=e.toNumber()),!CE(e)||!PD(e))throw TypeError(`The parameter k must be an integer number`)}else e=0;var t=e>0?e:0,n=e<0?-e:0,r=this._size[0],a=this._size[1],o=Math.min(r-n,a-t),s=[],c=[],l=[];l[0]=0;for(var u=t;u0?a:0,d=a<0?-a:0,f=e[0],p=e[1],m=Math.min(f-d,p-u),h;if(AE(r)){if(r.length!==m)throw Error(`Invalid value array length`);h=function(e){return r[e]}}else if(jE(r)){var g=r.size();if(g.length!==1||g[0]!==m)throw Error(`Invalid matrix length`);h=function(e){return r.get([e])}}else h=function(){return r};for(var _=[],v=[],y=[],b=0;b=0&&x=c||i[d]!==t)){var p=r?r[u]:void 0;i.splice(d,0,t),r&&r.splice(d,0,p),i.splice(d<=u?u+1:u,1),r&&r.splice(d<=u?u+1:u,1);continue}if(d=c||i[u]!==e)){var m=r?r[d]:void 0;i.splice(u,0,e),r&&r.splice(u,0,m),i.splice(u<=d?d+1:d,1),r&&r.splice(u<=d?d+1:d,1)}}},i},{isClass:!0}),iP=`number`,aP=[`typed`];function oP(e){var t=e.match(/(0[box])([0-9a-fA-F]*)\.([0-9a-fA-F]*)/);return t?{input:e,radix:{"0b":2,"0o":8,"0x":16}[t[1]],integerPart:t[2],fractionalPart:t[3]}:null}function sP(e){for(var t=parseInt(e.integerPart,e.radix),n=0,r=0;r{var{typed:t}=e,n=t(`number`,{"":function(){return 0},number:function(e){return e},string:function(e){if(e===`NaN`)return NaN;var t=oP(e);if(t)return sP(t);var n=0,r=e.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);r&&(n=Number(r[2]),e=r[1]);var i=Number(e);if(isNaN(i))throw SyntaxError(`String "`+e+`" is not a valid number`);if(r){if(i>2**n-1)throw SyntaxError(`String "${e}" is out of range`);i>=2**(n-1)&&(i-=2**n)}return i},BigNumber:function(e){return e.toNumber()},bigint:function(e){return Number(e)},Fraction:function(e){return e.valueOf()},Unit:t.referToSelf(e=>t=>{var n=t.clone();return n.value=e(t.value),n}),null:function(e){return 0},"Unit, string | Unit":function(e,t){return e.toNumber(t)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))});return n.fromJSON=function(e){return parseFloat(e.value)},n}),lP=Z(`bigint`,[`typed`],e=>{var{typed:t}=e,n=t(`bigint`,{"":function(){return 0n},bigint:function(e){return e},number:function(e){return BigInt(e.toFixed())},BigNumber:function(e){return BigInt(e.round().toString())},Fraction:function(e){return BigInt(e.valueOf().toFixed())},"string | boolean":function(e){return BigInt(e)},null:function(e){return 0n},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))});return n.fromJSON=function(e){return BigInt(e.value)},n}),uP=`string`,dP=Z(uP,[`typed`],e=>{var{typed:t}=e;return t(uP,{"":function(){return``},number:UD,null:function(e){return`null`},boolean:function(e){return e+``},string:function(e){return e},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e)),any:function(e){return String(e)}})}),fP=`boolean`,pP=Z(fP,[`typed`],e=>{var{typed:t}=e;return t(fP,{"":function(){return!1},boolean:function(e){return e},number:function(e){return!!e},null:function(e){return!1},BigNumber:function(e){return!e.isZero()},string:function(e){var t=e.toLowerCase();if(t===`true`)return!0;if(t===`false`)return!1;var n=Number(e);if(e!==``&&!isNaN(n))return!!n;throw Error(`Cannot convert "`+e+`" to a boolean`)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),mP=Z(`bignumber`,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e;return t(`bignumber`,{"":function(){return new n(0)},number:function(e){return new n(e+``)},string:function(e){var t=e.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);if(t){var r=t[2],i=n(t[1]),a=new n(2).pow(Number(r));if(i.gt(a.sub(1)))throw SyntaxError(`String "${e}" is out of range`);var o=new n(2).pow(Number(r)-1);return i.gte(o)?i.sub(a):i}return new n(e)},BigNumber:function(e){return e},bigint:function(e){return new n(e.toString())},Unit:t.referToSelf(e=>t=>{var n=t.clone();return n.value=e(t.value),n}),Fraction:function(e){return new n(String(e.n)).div(String(e.d)).times(String(e.s))},null:function(e){return new n(0)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),hP=Z(`complex`,[`typed`,`Complex`],e=>{var{typed:t,Complex:n}=e;return t(`complex`,{"":function(){return n.ZERO},number:function(e){return new n(e,0)},"number, number":function(e,t){return new n(e,t)},"BigNumber, BigNumber":function(e,t){return new n(e.toNumber(),t.toNumber())},Fraction:function(e){return new n(e.valueOf(),0)},Complex:function(e){return e.clone()},string:function(e){return n(e)},null:function(e){return n(0)},Object:function(e){if(`re`in e&&`im`in e)return new n(e.re,e.im);if(`r`in e&&`phi`in e||`abs`in e&&`arg`in e)return new n(e);throw Error(`Expected object with properties (re and im) or (r and phi) or (abs and arg)`)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),gP=Z(`fraction`,[`typed`,`Fraction`],e=>{var{typed:t,Fraction:n}=e;return t(`fraction`,{number:function(e){if(!Number.isFinite(e)||isNaN(e))throw Error(e+` cannot be represented as a fraction`);return new n(e)},string:function(e){return new n(e)},"number, number":function(e,t){return new n(e,t)},"bigint, bigint":function(e,t){return new n(e,t)},null:function(e){return new n(0)},BigNumber:function(e){return new n(e.toString())},bigint:function(e){return new n(e.toString())},Fraction:function(e){return e},Unit:t.referToSelf(e=>t=>{var n=t.clone();return n.value=e(t.value),n}),Object:function(e){return new n(e)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),_P=`matrix`,vP=Z(_P,[`typed`,`Matrix`,`DenseMatrix`,`SparseMatrix`],e=>{var{typed:t,Matrix:n,DenseMatrix:r,SparseMatrix:i}=e;return t(_P,{"":function(){return a([])},string:function(e){return a([],e)},"string, string":function(e,t){return a([],e,t)},Array:function(e){return a(e)},Matrix:function(e){return a(e,e.storage())},"Array | Matrix, string":a,"Array | Matrix, string, string":a});function a(e,t,n){if(t===`dense`||t===`default`||t===void 0)return new r(e,n);if(t===`sparse`)return new i(e,n);throw TypeError(`Unknown matrix type `+JSON.stringify(t)+`.`)}}),yP=`matrixFromFunction`,bP=Z(yP,[`typed`,`matrix`,`isZero`],e=>{var{typed:t,matrix:n,isZero:r}=e;return t(yP,{"Array | Matrix, function, string, string":function(e,t,n,r){return i(e,t,n,r)},"Array | Matrix, function, string":function(e,t,n){return i(e,t,n)},"Matrix, function":function(e,t){return i(e,t,`dense`)},"Array, function":function(e,t){return i(e,t,`dense`).toArray()},"Array | Matrix, string, function":function(e,t,n){return i(e,n,t)},"Array | Matrix, string, string, function":function(e,t,n,r){return i(e,r,t,n)}});function i(e,t,i,a){var o=a===void 0?n(i):n(i,a);return o.resize(e),o.forEach(function(e,n){var i=t(n);r(i)||o.set(n,i)}),o}}),xP=`matrixFromRows`,SP=Z(xP,[`typed`,`matrix`,`flatten`,`size`],e=>{var{typed:t,matrix:n,flatten:r,size:i}=e;return t(xP,{"...Array":function(e){return a(e)},"...Matrix":function(e){return n(a(e.map(e=>e.toArray())))}});function a(e){if(e.length===0)throw TypeError(`At least one row is needed to construct a matrix.`);var t=o(e[0]),n=[];for(var i of e){var a=o(i);if(a!==t)throw TypeError(`The vectors had different length: `+(t|0)+` ≠ `+(a|0));n.push(r(i))}return n}function o(e){var t=i(e);if(t.length===1)return t[0];if(t.length===2){if(t[0]===1)return t[1];if(t[1]===1)return t[0];throw TypeError(`At least one of the arguments is not a vector.`)}else throw TypeError(`Only one- or two-dimensional vectors are supported.`)}}),CP=`matrixFromColumns`,wP=Z(CP,[`typed`,`matrix`,`flatten`,`size`],e=>{var{typed:t,matrix:n,flatten:r,size:i}=e;return t(CP,{"...Array":function(e){return a(e)},"...Matrix":function(e){return n(a(e.map(e=>e.toArray())))}});function a(e){if(e.length===0)throw TypeError(`At least one column is needed to construct a matrix.`);for(var t=o(e[0]),n=[],i=0;i{var{typed:t}=e;return t(TP,{"Unit, Array":function(e,t){return e.splitUnit(t)}})}),DP=`unaryMinus`,OP=Z(DP,[`typed`],e=>{var{typed:t}=e;return t(DP,{number:sM,"Complex | BigNumber | Fraction":e=>e.neg(),bigint:e=>-e,Unit:t.referToSelf(e=>n=>{var r=n.clone();return r.value=t.find(e,r.valueType())(n.value),r}),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0))})}),kP=`unaryPlus`,AP=Z(kP,[`typed`,`config`,`numeric`],e=>{var{typed:t,config:n,numeric:r}=e;return t(kP,{number:cM,Complex:function(e){return e},BigNumber:function(e){return e},bigint:function(e){return e},Fraction:function(e){return e},Unit:function(e){return e.clone()},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0)),boolean:function(e){return r(+!!e,n.number)},string:function(e){return r(e,FD(e,n))}})}),jP=`abs`,MP=Z(jP,[`typed`],e=>{var{typed:t}=e;return t(jP,{number:nM,"Complex | BigNumber | Fraction | Unit":e=>e.abs(),bigint:e=>e<0n?-e:e,"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0))})}),NP=`mapSlices`,PP=Z(NP,[`typed`,`isInteger`],e=>{var{typed:t,isInteger:n}=e;return t(NP,{"Array | Matrix, number | BigNumber, function":function(e,t,r){if(!n(t))throw TypeError(`Integer number expected for dimension`);var i=Array.isArray(e)?tj(e):e.size();if(t<0||t>=i.length)throw new ej(t,i.length);return jE(e)?e.create(FP(e.valueOf(),t,r),e.datatype()):FP(e,t,r)}})},{formerly:`apply`});function FP(e,t,n){var r,i,a;if(t<=0)if(Array.isArray(e[0])){for(a=IP(e),i=[],r=0;r{var{typed:t}=e;return t(LP,{"number, number":rM,"Complex, Complex":function(e,t){return e.add(t)},"BigNumber, BigNumber":function(e,t){return e.plus(t)},"bigint, bigint":function(e,t){return e+t},"Fraction, Fraction":function(e,t){return e.add(t)},"Unit, Unit":t.referToSelf(e=>(n,r)=>{if(n.value===null||n.value===void 0)throw Error(`Parameter x contains a unit with undefined value`);if(r.value===null||r.value===void 0)throw Error(`Parameter y contains a unit with undefined value`);if(!n.equalBase(r))throw Error(`Units do not match`);var i=n.clone();return i.value=t.find(e,[i.valueType(),r.valueType()])(i.value,r.value),i.fixPrefix=!1,i})})}),zP=`subtractScalar`,BP=Z(zP,[`typed`],e=>{var{typed:t}=e;return t(zP,{"number, number":iM,"Complex, Complex":function(e,t){return e.sub(t)},"BigNumber, BigNumber":function(e,t){return e.minus(t)},"bigint, bigint":function(e,t){return e-t},"Fraction, Fraction":function(e,t){return e.sub(t)},"Unit, Unit":t.referToSelf(e=>(n,r)=>{if(n.value===null||n.value===void 0)throw Error(`Parameter x contains a unit with undefined value`);if(r.value===null||r.value===void 0)throw Error(`Parameter y contains a unit with undefined value`);if(!n.equalBase(r))throw Error(`Units do not match`);var i=n.clone();return i.value=t.find(e,[i.valueType(),r.valueType()])(i.value,r.value),i.fixPrefix=!1,i})})}),VP=`cbrt`,HP=Z(VP,[`config`,`typed`,`isNegative`,`unaryMinus`,`matrix`,`Complex`,`BigNumber`,`Fraction`],e=>{var{config:t,typed:n,isNegative:r,unaryMinus:i,matrix:a,Complex:o,BigNumber:s,Fraction:c}=e;return n(VP,{number:lM,Complex:l,"Complex, boolean":l,BigNumber:function(e){return e.cbrt()},Unit:u});function l(e,n){var r=e.arg()/3,i=e.abs(),s=new o(lM(i),0).mul(new o(0,r).exp());if(n){var c=[s,new o(lM(i),0).mul(new o(0,r+Math.PI*2/3).exp()),new o(lM(i),0).mul(new o(0,r-Math.PI*2/3).exp())];return t.matrix===`Array`?c:a(c)}else return s}function u(e){if(e.value&&EE(e.value)){var t=e.clone();return t.value=1,t=t.pow(1/3),t.value=l(e.value),t}else{var n=r(e.value);n&&(e.value=i(e.value));var a=wE(e.value)?new s(1).div(3):DE(e.value)?new c(1,3):1/3,o=e.pow(a);return n&&(o.value=i(o.value)),o}}}),UP=Z(`matAlgo11xS0s`,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return function(e,r,i,a){var o=e._values,s=e._index,c=e._ptr,l=e._size,u=e._datatype;if(!o)throw Error(`Cannot perform operation on Pattern Sparse Matrix and Scalar value`);var d=l[0],f=l[1],p,m=n,h=0,g=i;typeof u==`string`&&(p=u,m=t.find(n,[p,p]),h=t.convert(0,p),r=t.convert(r,p),g=t.find(i,[p,p]));for(var _=[],v=[],y=[],b=0;b{var{typed:t,DenseMatrix:n}=e;return function(e,r,i,a){var o=e._values,s=e._index,c=e._ptr,l=e._size,u=e._datatype;if(!o)throw Error(`Cannot perform operation on Pattern Sparse Matrix and Scalar value`);var d=l[0],f=l[1],p,m=i;typeof u==`string`&&(p=u,r=t.convert(r,p),m=t.find(i,[p,p]));for(var h=[],g=[],_=[],v=0;v{var{typed:t}=e;return function(e,r,i,a){var o=e._data,s=e._size,c=e._datatype,l,u=i;typeof c==`string`&&(l=c,r=t.convert(r,l),u=t.find(i,[l,l]));var d=s.length>0?n(u,0,s,s[0],o,r,a):[];return e.createDenseMatrix({data:d,size:mD(s),datatype:l})};function n(e,t,r,i,a,o,s){var c=[];if(t===r.length-1)for(var l=0;l{var{typed:t,config:n,round:r}=e;function i(e){var t=Math.ceil(e),i=r(e);return t===i?t:$D(e,i,n.relTol,n.absTol)&&!$D(e,t,n.relTol,n.absTol)?i:t}return t(KP,{number:i,"number, number":function(e,t){if(!PD(t))throw RangeError(`number of decimals in function ceil must be an integer`);if(t<0||t>15)throw RangeError(`number of decimals in ceil number must be in range 0-15`);var n=10**t;return i(e*n)/n}})}),XP=Z(KP,qP,e=>{var{typed:t,config:n,round:r,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s}=e,c=UP({typed:t,equalScalar:a}),l=WP({typed:t,DenseMatrix:s}),u=GP({typed:t}),d=YP({typed:t,config:n,round:r});function f(e){var t=(e,t)=>PN(e,t,n.relTol,n.absTol),i=e.ceil(),a=r(e);return i.eq(a)?i:t(e,a)&&!t(e,i)?a:i}return t(`ceil`,{number:d.signatures.number,"number,number":d.signatures[`number,number`],Complex:function(e){return e.ceil()},"Complex, number":function(e,t){return e.ceil(t)},"Complex, BigNumber":function(e,t){return e.ceil(t.toNumber())},BigNumber:f,"BigNumber, BigNumber":function(e,t){var n=JP.pow(t);return f(e.mul(n)).div(n)},bigint:e=>e,"bigint, number":(e,t)=>e,"bigint, BigNumber":(e,t)=>e,Fraction:function(e){return e.ceil()},"Fraction, number":function(e,t){return e.ceil(t)},"Fraction, BigNumber":function(e,t){return e.ceil(t.toNumber())},"Unit, number, Unit":t.referToSelf(e=>function(t,n,r){var i=t.toNumeric(r);return r.multiply(e(i,n))}),"Unit, BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>e(t,n.toNumber(),r)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>Jj(t,t=>e(t,n,r),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(e=>(t,n)=>e(t,0,n)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0)),"Array, number | BigNumber":t.referToSelf(e=>(t,n)=>Jj(t,t=>e(t,n),!0)),"SparseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>c(t,n,e,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>u(t,n,e,!1)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(e=>(t,n)=>u(i(n),t,e,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(e=>(t,n)=>a(t,0)?o(n.size(),n.storage()):n.storage()===`dense`?u(n,t,e,!0):l(n,t,e,!0))})}),ZP=`cube`,QP=Z(ZP,[`typed`],e=>{var{typed:t}=e;return t(ZP,{number:uM,Complex:function(e){return e.mul(e).mul(e)},BigNumber:function(e){return e.times(e).times(e)},bigint:function(e){return e*e*e},Fraction:function(e){return e.pow(3)},Unit:function(e){return e.pow(3)}})}),$P=`exp`,eF=Z($P,[`typed`],e=>{var{typed:t}=e;return t($P,{number:dM,Complex:function(e){return e.exp()},BigNumber:function(e){return e.exp()}})}),tF=`expm1`,nF=Z(tF,[`typed`,`Complex`],e=>{var{typed:t,Complex:n}=e;return t(tF,{number:fM,Complex:function(e){var t=Math.exp(e.re);return new n(t*Math.cos(e.im)-1,t*Math.sin(e.im))},BigNumber:function(e){return e.exp().minus(1)}})}),rF=`fix`,iF=[`typed`,`Complex`,`matrix`,`ceil`,`floor`,`equalScalar`,`zeros`,`DenseMatrix`],aF=Z(rF,[`typed`,`ceil`,`floor`],e=>{var{typed:t,ceil:n,floor:r}=e;return t(rF,{number:function(e){return e>0?r(e):n(e)},"number, number":function(e,t){return e>0?r(e,t):n(e,t)}})}),oF=Z(rF,iF,e=>{var{typed:t,Complex:n,matrix:r,ceil:i,floor:a,equalScalar:o,zeros:s,DenseMatrix:c}=e,l=WP({typed:t,DenseMatrix:c}),u=GP({typed:t}),d=aF({typed:t,ceil:i,floor:a});return t(`fix`,{number:d.signatures.number,"number, number | BigNumber":d.signatures[`number,number`],Complex:function(e){return new n(e.re>0?Math.floor(e.re):Math.ceil(e.re),e.im>0?Math.floor(e.im):Math.ceil(e.im))},"Complex, number":function(e,t){return new n(e.re>0?a(e.re,t):i(e.re,t),e.im>0?a(e.im,t):i(e.im,t))},"Complex, BigNumber":function(e,t){var r=t.toNumber();return new n(e.re>0?a(e.re,r):i(e.re,r),e.im>0?a(e.im,r):i(e.im,r))},BigNumber:function(e){return e.isNegative()?i(e):a(e)},"BigNumber, number | BigNumber":function(e,t){return e.isNegative()?i(e,t):a(e,t)},bigint:e=>e,"bigint, number":(e,t)=>e,"bigint, BigNumber":(e,t)=>e,Fraction:function(e){return e.s<0n?e.ceil():e.floor()},"Fraction, number | BigNumber":function(e,t){return e.s<0n?i(e,t):a(e,t)},"Unit, number, Unit":t.referToSelf(e=>function(t,n,r){var i=t.toNumeric(r);return r.multiply(e(i,n))}),"Unit, BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>e(t,n.toNumber(),r)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>Jj(t,t=>e(t,n,r),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(e=>(t,n)=>e(t,0,n)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0)),"Array | Matrix, number | BigNumber":t.referToSelf(e=>(t,n)=>Jj(t,t=>e(t,n),!0)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(e=>(t,n)=>u(r(n),t,e,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(e=>(t,n)=>o(t,0)?s(n.size(),n.storage()):n.storage()===`dense`?u(n,t,e,!0):l(n,t,e,!0))})}),sF=`floor`,cF=[`typed`,`config`,`round`,`matrix`,`equalScalar`,`zeros`,`DenseMatrix`],lF=new nA(10),uF=Z(sF,[`typed`,`config`,`round`],e=>{var{typed:t,config:n,round:r}=e;function i(e){var t=Math.floor(e),i=r(e);return t===i?t:$D(e,i,n.relTol,n.absTol)&&!$D(e,t,n.relTol,n.absTol)?i:t}return t(sF,{number:i,"number, number":function(e,t){if(!PD(t))throw RangeError(`number of decimals in function floor must be an integer`);if(t<0||t>15)throw RangeError(`number of decimals in floor number must be in range 0 - 15`);var n=10**t;return i(e*n)/n}})}),dF=Z(sF,cF,e=>{var{typed:t,config:n,round:r,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s}=e,c=UP({typed:t,equalScalar:a}),l=WP({typed:t,DenseMatrix:s}),u=GP({typed:t}),d=uF({typed:t,config:n,round:r});function f(e){var t=(e,t)=>PN(e,t,n.relTol,n.absTol),i=e.floor(),a=r(e);return i.eq(a)?i:t(e,a)&&!t(e,i)?a:i}return t(`floor`,{number:d.signatures.number,"number,number":d.signatures[`number,number`],Complex:function(e){return e.floor()},"Complex, number":function(e,t){return e.floor(t)},"Complex, BigNumber":function(e,t){return e.floor(t.toNumber())},BigNumber:f,"BigNumber, BigNumber":function(e,t){var n=lF.pow(t);return f(e.mul(n)).div(n)},bigint:e=>e,"bigint, number":(e,t)=>e,"bigint, BigNumber":(e,t)=>e,Fraction:function(e){return e.floor()},"Fraction, number":function(e,t){return e.floor(t)},"Fraction, BigNumber":function(e,t){return e.floor(t.toNumber())},"Unit, number, Unit":t.referToSelf(e=>function(t,n,r){var i=t.toNumeric(r);return r.multiply(e(i,n))}),"Unit, BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>e(t,n.toNumber(),r)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>Jj(t,t=>e(t,n,r),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(e=>(t,n)=>e(t,0,n)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0)),"Array, number | BigNumber":t.referToSelf(e=>(t,n)=>Jj(t,t=>e(t,n),!0)),"SparseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>c(t,n,e,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>u(t,n,e,!1)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(e=>(t,n)=>u(i(n),t,e,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(e=>(t,n)=>a(t,0)?o(n.size(),n.storage()):n.storage()===`dense`?u(n,t,e,!0):l(n,t,e,!0))})}),fF=Z(`matAlgo02xDS0`,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return function(e,r,i,a){var o=e._data,s=e._size,c=e._datatype||e.getDataType(),l=r._values,u=r._index,d=r._ptr,f=r._size,p=r._datatype||r._data===void 0?r._datatype:r.getDataType();if(s.length!==f.length)throw new $A(s.length,f.length);if(s[0]!==f[0]||s[1]!==f[1])throw RangeError(`Dimension mismatch. Matrix A (`+s+`) must match Matrix B (`+f+`)`);if(!l)throw Error(`Cannot perform operation on Dense Matrix and Pattern Sparse Matrix`);var m=s[0],h=s[1],g,_=n,v=0,y=i;typeof c==`string`&&c===p&&c!==`mixed`&&(g=c,_=t.find(n,[g,g]),v=t.convert(0,g),y=t.find(i,[g,g]));for(var b=[],x=[],S=[],C=0;C{var{typed:t}=e;return function(e,n,r,i){var a=e._data,o=e._size,s=e._datatype||e.getDataType(),c=n._values,l=n._index,u=n._ptr,d=n._size,f=n._datatype||n._data===void 0?n._datatype:n.getDataType();if(o.length!==d.length)throw new $A(o.length,d.length);if(o[0]!==d[0]||o[1]!==d[1])throw RangeError(`Dimension mismatch. Matrix A (`+o+`) must match Matrix B (`+d+`)`);if(!c)throw Error(`Cannot perform operation on Dense Matrix and Pattern Sparse Matrix`);var p=o[0],m=o[1],h,g=0,_=r;typeof s==`string`&&s===f&&s!==`mixed`&&(h=s,g=t.convert(0,h),_=t.find(r,[h,h]));for(var v=[],y=0;y{var{typed:t,equalScalar:n}=e;return function(e,r,i){var a=e._values,o=e._index,s=e._ptr,c=e._size,l=e._datatype||e._data===void 0?e._datatype:e.getDataType(),u=r._values,d=r._index,f=r._ptr,p=r._size,m=r._datatype||r._data===void 0?r._datatype:r.getDataType();if(c.length!==p.length)throw new $A(c.length,p.length);if(c[0]!==p[0]||c[1]!==p[1])throw RangeError(`Dimension mismatch. Matrix A (`+c+`) must match Matrix B (`+p+`)`);var h=c[0],g=c[1],_,v=n,y=0,b=i;typeof l==`string`&&l===m&&l!==`mixed`&&(_=l,v=t.find(n,[_,_]),y=t.convert(0,_),b=t.find(i,[_,_]));var x=a&&u?[]:void 0,S=[],C=[],w=x?[]:void 0,T=x?[]:void 0,E=[],D=[],O,k,A,j;for(k=0;k{var{typed:t}=e;return function(e,r,i){var a=e._data,o=e._size,s=e._datatype,c=r._data,l=r._size,u=r._datatype,d=[];if(o.length!==l.length)throw new $A(o.length,l.length);for(var f=0;f0?n(m,0,d,d[0],a,c):[];return e.createDenseMatrix({data:h,size:d,datatype:p})};function n(e,t,r,i,a,o){var s=[];if(t===r.length-1)for(var c=0;c_F(e,n))}function _F(e,t){return vD(e.size(),t)?e:e.create(Aj(e.valueOf(),t),e.datatype())}var vF=Z(`matrixAlgorithmSuite`,[`typed`,`matrix`],e=>{var{typed:t,matrix:n}=e,r=hF({typed:t}),i=GP({typed:t});return function(e){var a=e.elop,o=e.SD||e.DS,s;a?(s={"DenseMatrix, DenseMatrix":(e,t)=>r(...gF(e,t),a),"Array, Array":(e,t)=>r(...gF(n(e),n(t)),a).valueOf(),"Array, DenseMatrix":(e,t)=>r(...gF(n(e),t),a),"DenseMatrix, Array":(e,t)=>r(...gF(e,n(t)),a)},e.SS&&(s[`SparseMatrix, SparseMatrix`]=(t,n)=>e.SS(...gF(t,n),a,!1)),e.DS&&(s[`DenseMatrix, SparseMatrix`]=(t,n)=>e.DS(...gF(t,n),a,!1),s[`Array, SparseMatrix`]=(t,r)=>e.DS(...gF(n(t),r),a,!1)),o&&(s[`SparseMatrix, DenseMatrix`]=(e,t)=>o(...gF(t,e),a,!0),s[`SparseMatrix, Array`]=(e,t)=>o(...gF(n(t),e),a,!0))):(s={"DenseMatrix, DenseMatrix":t.referToSelf(e=>(t,n)=>r(...gF(t,n),e)),"Array, Array":t.referToSelf(e=>(t,i)=>r(...gF(n(t),n(i)),e).valueOf()),"Array, DenseMatrix":t.referToSelf(e=>(t,i)=>r(...gF(n(t),i),e)),"DenseMatrix, Array":t.referToSelf(e=>(t,i)=>r(...gF(t,n(i)),e))},e.SS&&(s[`SparseMatrix, SparseMatrix`]=t.referToSelf(t=>(n,r)=>e.SS(...gF(n,r),t,!1))),e.DS&&(s[`DenseMatrix, SparseMatrix`]=t.referToSelf(t=>(n,r)=>e.DS(...gF(n,r),t,!1)),s[`Array, SparseMatrix`]=t.referToSelf(t=>(r,i)=>e.DS(...gF(n(r),i),t,!1))),o&&(s[`SparseMatrix, DenseMatrix`]=t.referToSelf(e=>(t,n)=>o(...gF(n,t),e,!0)),s[`SparseMatrix, Array`]=t.referToSelf(e=>(t,r)=>o(...gF(n(r),t),e,!0))));var c=e.scalar||`any`;(e.Ds||e.Ss)&&(a?(s[`DenseMatrix,`+c]=(e,t)=>i(e,t,a,!1),s[c+`, DenseMatrix`]=(e,t)=>i(t,e,a,!0),s[`Array,`+c]=(e,t)=>i(n(e),t,a,!1).valueOf(),s[c+`, Array`]=(e,t)=>i(n(t),e,a,!0).valueOf()):(s[`DenseMatrix,`+c]=t.referToSelf(e=>(t,n)=>i(t,n,e,!1)),s[c+`, DenseMatrix`]=t.referToSelf(e=>(t,n)=>i(n,t,e,!0)),s[`Array,`+c]=t.referToSelf(e=>(t,r)=>i(n(t),r,e,!1).valueOf()),s[c+`, Array`]=t.referToSelf(e=>(t,r)=>i(n(r),t,e,!0).valueOf())));var l=e.sS===void 0?e.Ss:e.sS;return a?(e.Ss&&(s[`SparseMatrix,`+c]=(t,n)=>e.Ss(t,n,a,!1)),l&&(s[c+`, SparseMatrix`]=(e,t)=>l(t,e,a,!0))):(e.Ss&&(s[`SparseMatrix,`+c]=t.referToSelf(t=>(n,r)=>e.Ss(n,r,t,!1))),l&&(s[c+`, SparseMatrix`]=t.referToSelf(e=>(t,n)=>l(n,t,e,!0)))),a&&a.signatures&&gD(s,a.signatures),s}}),yF=`mod`,bF=Z(yF,[`typed`,`config`,`round`,`matrix`,`equalScalar`,`zeros`,`DenseMatrix`,`concat`],e=>{var{typed:t,config:n,round:r,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s,concat:c}=e,l=dF({typed:t,config:n,round:r,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s}),u=fF({typed:t,equalScalar:a}),d=pF({typed:t}),f=mF({typed:t,equalScalar:a}),p=UP({typed:t,equalScalar:a}),m=WP({typed:t,DenseMatrix:s}),h=vF({typed:t,matrix:i,concat:c});return t(yF,{"number, number":g,"BigNumber, BigNumber":function(e,t){return t.isZero()?e:e.sub(t.mul(l(e.div(t))))},"bigint, bigint":function(e,t){if(t===0n)return e;if(e<0){var n=e%t;return n===0n?n:n+t}return e%t},"Fraction, Fraction":function(e,t){return t.equals(0)?e:e.sub(t.mul(l(e.div(t))))}},h({SS:f,DS:d,SD:u,Ss:p,sS:m}));function g(e,t){return t===0?e:e-t*l(e/t)}}),xF=Z(`matAlgo01xDSid`,[`typed`],e=>{var{typed:t}=e;return function(e,n,r,i){var a=e._data,o=e._size,s=e._datatype||e.getDataType(),c=n._values,l=n._index,u=n._ptr,d=n._size,f=n._datatype||n._data===void 0?n._datatype:n.getDataType();if(o.length!==d.length)throw new $A(o.length,d.length);if(o[0]!==d[0]||o[1]!==d[1])throw RangeError(`Dimension mismatch. Matrix A (`+o+`) must match Matrix B (`+d+`)`);if(!c)throw Error(`Cannot perform operation on Dense Matrix and Pattern Sparse Matrix`);var p=o[0],m=o[1],h=typeof s==`string`&&s!==`mixed`&&s===f?s:void 0,g=h?t.find(r,[h,h]):r,_,v,y=[];for(_=0;_{var{typed:t,equalScalar:n}=e;return function(e,r,i){var a=e._values,o=e._index,s=e._ptr,c=e._size,l=e._datatype||e._data===void 0?e._datatype:e.getDataType(),u=r._values,d=r._index,f=r._ptr,p=r._size,m=r._datatype||r._data===void 0?r._datatype:r.getDataType();if(c.length!==p.length)throw new $A(c.length,p.length);if(c[0]!==p[0]||c[1]!==p[1])throw RangeError(`Dimension mismatch. Matrix A (`+c+`) must match Matrix B (`+p+`)`);var h=c[0],g=c[1],_,v=n,y=0,b=i;typeof l==`string`&&l===m&&l!==`mixed`&&(_=l,v=t.find(n,[_,_]),y=t.convert(0,_),b=t.find(i,[_,_]));var x=a&&u?[]:void 0,S=[],C=[],w=a&&u?[]:void 0,T=a&&u?[]:void 0,E=[],D=[],O,k,A,j,M;for(k=0;k{var{typed:t,DenseMatrix:n}=e;return function(e,r,i,a){var o=e._values,s=e._index,c=e._ptr,l=e._size,u=e._datatype;if(!o)throw Error(`Cannot perform operation on Pattern Sparse Matrix and Scalar value`);var d=l[0],f=l[1],p,m=i;typeof u==`string`&&(p=u,r=t.convert(r,p),m=t.find(i,[p,p]));for(var h=[],g=[],_=[],v=0;vArray.isArray(e))}var AF=Z(TF,EF,e=>{var{typed:t,matrix:n,config:r,round:i,equalScalar:a,zeros:o,BigNumber:s,DenseMatrix:c,concat:l}=e,u=bF({typed:t,config:r,round:i,matrix:n,equalScalar:a,zeros:o,DenseMatrix:c,concat:l}),d=xF({typed:t}),f=SF({typed:t,equalScalar:a}),p=CF({typed:t,DenseMatrix:c}),m=vF({typed:t,matrix:n,concat:l});return t(TF,{"number, number":h,"BigNumber, BigNumber":g,"Fraction, Fraction":(e,t)=>e.gcd(t)},m({SS:f,DS:d,Ss:p}),{[OF]:t.referToSelf(e=>(t,n,r)=>{for(var i=e(t,n),a=0;at=>{if(t.length===1&&Array.isArray(t[0])&&kF(t[0]))return e(...t[0]);if(kF(t))return e(...t);throw new wF(`gcd() supports only 1d matrices!`)}),Matrix:t.referToSelf(e=>t=>e(t.toArray()))});function h(e,t){if(!PD(e)||!PD(t))throw Error(`Parameters in function gcd must be integer numbers`);for(var n;t!==0;)n=u(e,t),e=t,t=n;return e<0?-e:e}function g(e,t){if(!e.isInt()||!t.isInt())throw Error(`Parameters in function gcd must be integer numbers`);for(var n=new s(0);!t.isZero();){var r=u(e,t);e=t,t=r}return e.lt(n)?e.neg():e}}),jF=Z(`matAlgo06xS0S0`,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return function(e,r,i){var a=e._values,o=e._size,s=e._datatype||e._data===void 0?e._datatype:e.getDataType(),c=r._values,l=r._size,u=r._datatype||r._data===void 0?r._datatype:r.getDataType();if(o.length!==l.length)throw new $A(o.length,l.length);if(o[0]!==l[0]||o[1]!==l[1])throw RangeError(`Dimension mismatch. Matrix A (`+o+`) must match Matrix B (`+l+`)`);var d=o[0],f=o[1],p,m=n,h=0,g=i;typeof s==`string`&&s===u&&s!==`mixed`&&(p=s,m=t.find(n,[p,p]),h=t.convert(0,p),g=t.find(i,[p,p]));for(var _=a&&c?[]:void 0,v=[],y=[],b=_?[]:void 0,x=[],S=[],C=0;C{var{typed:t,matrix:n,equalScalar:r,concat:i}=e,a=fF({typed:t,equalScalar:r}),o=jF({typed:t,equalScalar:r}),s=UP({typed:t,equalScalar:r}),c=vF({typed:t,matrix:n,concat:i}),l=`number | BigNumber | Fraction | Matrix | Array`,u={};return u[`${l}, ${l}, ...${l}`]=t.referToSelf(e=>(t,n,r)=>{for(var i=e(t,n),a=0;ae.lcm(t)},c({SS:o,DS:a,Ss:s}),u);function d(e,t){if(!e.isInt()||!t.isInt())throw Error(`Parameters in function lcm must be integer numbers`);if(e.isZero())return e;if(t.isZero())return t;for(var n=e.times(t);!t.isZero();){var r=t;t=e.mod(r),e=r}return n.div(e).abs()}});function PF(e,t,n,r){return function(i){if(i>0||n.predictable){if(i<=0)return NaN;var a=i.toString(16),o=a.substring(0,15);return e*(a.length-o.length)+t(Number(`0x`+o))}return r(i.toNumber())}}var FF=`log10`,IF=[`typed`,`config`,`Complex`],LF=gM(16),RF=Z(FF,IF,e=>{var{typed:t,config:n,Complex:r}=e;function i(e){return e.log().div(Math.LN10)}function a(e){return i(new r(e,0))}return t(FF,{number:function(e){return e>=0||n.predictable?gM(e):a(e)},bigint:PF(LF,gM,n,a),Complex:i,BigNumber:function(e){return!e.isNegative()||n.predictable?e.log():a(e.toNumber())},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),zF=`log2`,BF=Z(zF,[`typed`,`config`,`Complex`],e=>{var{typed:t,config:n,Complex:r}=e;function i(e){return a(new r(e,0))}return t(zF,{number:function(e){return e>=0||n.predictable?_M(e):i(e)},bigint:PF(4,_M,n,i),Complex:a,BigNumber:function(e){return!e.isNegative()||n.predictable?e.log(2):i(e.toNumber())},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))});function a(e){var t=Math.sqrt(e.re*e.re+e.im*e.im);return new r(Math.log2?Math.log2(t):Math.log(t)/Math.LN2,Math.atan2(e.im,e.re)/Math.LN2)}}),VF=Z(`multiplyScalar`,[`typed`],e=>{var{typed:t}=e;return t(`multiplyScalar`,{"number, number":aM,"Complex, Complex":function(e,t){return e.mul(t)},"BigNumber, BigNumber":function(e,t){return e.times(t)},"bigint, bigint":function(e,t){return e*t},"Fraction, Fraction":function(e,t){return e.mul(t)},"number | Fraction | BigNumber | Complex, Unit":(e,t)=>t.multiply(e),"Unit, number | Fraction | BigNumber | Complex | Unit":(e,t)=>e.multiply(t)})}),HF=`multiply`,UF=Z(HF,[`typed`,`matrix`,`addScalar`,`multiplyScalar`,`equalScalar`,`dot`],e=>{var{typed:t,matrix:n,addScalar:r,multiplyScalar:i,equalScalar:a,dot:o}=e,s=UP({typed:t,equalScalar:a}),c=GP({typed:t});function l(e,t){switch(e.length){case 1:switch(t.length){case 1:if(e[0]!==t[0])throw RangeError(`Dimension mismatch in multiplication. Vectors must have the same length`);break;case 2:if(e[0]!==t[0])throw RangeError(`Dimension mismatch in multiplication. Vector length (`+e[0]+`) must match Matrix rows (`+t[0]+`)`);break;default:throw Error(`Can only multiply a 1 or 2 dimensional matrix (Matrix B has `+t.length+` dimensions)`)}break;case 2:switch(t.length){case 1:if(e[1]!==t[0])throw RangeError(`Dimension mismatch in multiplication. Matrix columns (`+e[1]+`) must match Vector length (`+t[0]+`)`);break;case 2:if(e[1]!==t[0])throw RangeError(`Dimension mismatch in multiplication. Matrix A columns (`+e[1]+`) must match Matrix B rows (`+t[0]+`)`);break;default:throw Error(`Can only multiply a 1 or 2 dimensional matrix (Matrix B has `+t.length+` dimensions)`)}break;default:throw Error(`Can only multiply a 1 or 2 dimensional matrix (Matrix A has `+e.length+` dimensions)`)}}function u(e,t,n){if(n===0)throw Error(`Cannot multiply two empty vectors`);return o(e,t)}function d(e,t){if(t.storage()!==`dense`)throw Error(`Support for SparseMatrix not implemented`);return f(e,t)}function f(e,n){var a=e._data,o=e._size,s=e._datatype||e.getDataType(),c=n._data,l=n._size,u=n._datatype||n.getDataType(),d=o[0],f=l[1],p,m=r,h=i;s&&u&&s===u&&typeof s==`string`&&s!==`mixed`&&(p=s,m=t.find(r,[p,p]),h=t.find(i,[p,p]));for(var g=[],_=0;_E)for(var O=0,k=0;k(t,r)=>{l(tj(t),tj(r));var i=e(n(t),n(r));return jE(i)?i.valueOf():i}),"Matrix, Matrix":function(e,t){var n=e.size(),r=t.size();return l(n,r),n.length===1?r.length===1?u(e,t,n[0]):d(e,t):r.length===1?p(e,t):m(e,t)},"Matrix, Array":t.referTo(`Matrix,Matrix`,e=>(t,r)=>e(t,n(r))),"Array, Matrix":t.referToSelf(e=>(t,r)=>e(n(t,r.storage()),r)),"SparseMatrix, any":function(e,t){return s(e,t,i,!1)},"DenseMatrix, any":function(e,t){return c(e,t,i,!1)},"any, SparseMatrix":function(e,t){return s(t,e,i,!0)},"any, DenseMatrix":function(e,t){return c(t,e,i,!0)},"Array, any":function(e,t){return c(n(e),t,i,!1).valueOf()},"any, Array":function(e,t){return c(n(t),e,i,!0).valueOf()},"any, any":i,"any, any, ...any":t.referToSelf(e=>(t,n,r)=>{for(var i=e(t,n),a=0;a{var{typed:t,matrix:n,equalScalar:r,BigNumber:i,concat:a}=e,o=xF({typed:t}),s=fF({typed:t,equalScalar:r}),c=jF({typed:t,equalScalar:r}),l=UP({typed:t,equalScalar:r}),u=vF({typed:t,matrix:n,concat:a});function d(){throw Error(`Complex number not supported in function nthRoot. Use nthRoots instead.`)}return t(WF,{number:bM,"number, number":bM,BigNumber:e=>f(e,new i(2)),"BigNumber, BigNumber":f,Complex:d,"Complex, number":d,Array:t.referTo(`DenseMatrix,number`,e=>t=>e(n(t),2).valueOf()),DenseMatrix:t.referTo(`DenseMatrix,number`,e=>t=>e(t,2)),SparseMatrix:t.referTo(`SparseMatrix,number`,e=>t=>e(t,2)),"SparseMatrix, SparseMatrix":t.referToSelf(e=>(t,n)=>{if(n.density()===1)return c(t,n,e);throw Error(`Root must be non-zero`)}),"DenseMatrix, SparseMatrix":t.referToSelf(e=>(t,n)=>{if(n.density()===1)return o(t,n,e,!1);throw Error(`Root must be non-zero`)}),"Array, SparseMatrix":t.referTo(`DenseMatrix,SparseMatrix`,e=>(t,r)=>e(n(t),r)),"number | BigNumber, SparseMatrix":t.referToSelf(e=>(t,n)=>{if(n.density()===1)return l(n,t,e,!0);throw Error(`Root must be non-zero`)})},u({scalar:`number | BigNumber`,SD:s,Ss:l,sS:!1}));function f(e,t){var n=i.precision,r=i.clone({precision:n+2}),a=new i(0),o=new r(1),s=t.isNegative();if(s&&(t=t.neg()),t.isZero())throw Error(`Root must be non-zero`);if(e.isNegative()&&!t.abs().mod(2).equals(1))throw Error(`Root must be odd when a is negative.`);if(e.isZero())return s?new r(1/0):0;if(!e.isFinite())return s?a:e;var c=e.abs().pow(o.div(t));return c=e.isNeg()?c.neg():c,new i((s?o.div(c):c).toPrecision(n))}}),KF=`sign`,qF=Z(KF,[`typed`,`BigNumber`,`Fraction`,`complex`],e=>{var{typed:t,BigNumber:n,complex:r,Fraction:i}=e;return t(KF,{number:xM,Complex:function(e){return e.im===0?r(xM(e.re)):e.sign()},BigNumber:function(e){return new n(e.cmp(0))},bigint:function(e){return e>0n?1n:e<0n?-1n:0n},Fraction:function(e){return e.n===0n?new i(0):new i(e.s)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0)),Unit:t.referToSelf(e=>n=>{if(!n._isDerived()&&n.units[0].unit.offset!==0)throw TypeError(`sign is ambiguous for units with offset`);return t.find(e,n.valueType())(n.value)})})}),JF=Z(`sqrt`,[`config`,`typed`,`Complex`],e=>{var{config:t,typed:n,Complex:r}=e;return n(`sqrt`,{number:i,Complex:function(e){return e.sqrt()},BigNumber:function(e){return!e.isNegative()||t.predictable?e.sqrt():i(e.toNumber())},Unit:function(e){return e.pow(.5)}});function i(e){return isNaN(e)?NaN:e>=0||t.predictable?Math.sqrt(e):new r(e,0).sqrt()}}),YF=`square`,XF=Z(YF,[`typed`],e=>{var{typed:t}=e;return t(YF,{number:CM,Complex:function(e){return e.mul(e)},BigNumber:function(e){return e.times(e)},bigint:function(e){return e*e},Fraction:function(e){return e.mul(e)},Unit:function(e){return e.pow(2)}})}),ZF=`subtract`,QF=Z(ZF,[`typed`,`matrix`,`equalScalar`,`subtractScalar`,`unaryMinus`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,subtractScalar:i,unaryMinus:a,DenseMatrix:o,concat:s}=e,c=xF({typed:t}),l=pF({typed:t}),u=mF({typed:t,equalScalar:r}),d=CF({typed:t,DenseMatrix:o}),f=WP({typed:t,DenseMatrix:o}),p=vF({typed:t,matrix:n,concat:s});return t(ZF,{"any, any":i},p({elop:i,SS:u,DS:c,SD:l,Ss:f,sS:d}))}),$F=`xgcd`,eI=Z($F,[`typed`,`config`,`matrix`,`BigNumber`],e=>{var{typed:t,config:n,matrix:r,BigNumber:i}=e;return t($F,{"number, number":function(e,t){var i=wM(e,t);return n.matrix===`Array`?i:r(i)},"BigNumber, BigNumber":a});function a(e,t){var a,o,s,c=new i(0),l=new i(1),u=c,d=l,f=l,p=c;if(!e.isInt()||!t.isInt())throw Error(`Parameters in function xgcd must be integer numbers`);for(;!t.isZero();)o=e.div(t).floor(),s=e.mod(t),a=u,u=d.minus(o.times(u)),d=a,a=f,f=p.minus(o.times(f)),p=a,e=t,t=s;var m=e.lt(c)?[e.neg(),d.neg(),p.neg()]:[e,e.isZero()?0:d,p];return n.matrix===`Array`?m:r(m)}}),tI=`invmod`,nI=Z(tI,[`typed`,`config`,`BigNumber`,`xgcd`,`equal`,`smaller`,`mod`,`add`,`isInteger`],e=>{var{typed:t,config:n,BigNumber:r,xgcd:i,equal:a,smaller:o,mod:s,add:c,isInteger:l}=e;return t(tI,{"number, number":u,"BigNumber, BigNumber":u});function u(e,t){if(!l(e)||!l(t))throw Error(`Parameters in function invmod must be integer numbers`);if(e=s(e,t),a(t,0))throw Error(`Divisor must be non zero`);var n=i(e,t);n=n.valueOf();var[u,d]=n;return a(u,r(1))?(d=s(d,t),o(d,r(0))&&(d=c(d,t)),d):NaN}}),rI=Z(`matAlgo09xS0Sf`,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return function(e,r,i){var a=e._values,o=e._index,s=e._ptr,c=e._size,l=e._datatype||e._data===void 0?e._datatype:e.getDataType(),u=r._values,d=r._index,f=r._ptr,p=r._size,m=r._datatype||r._data===void 0?r._datatype:r.getDataType();if(c.length!==p.length)throw new $A(c.length,p.length);if(c[0]!==p[0]||c[1]!==p[1])throw RangeError(`Dimension mismatch. Matrix A (`+c+`) must match Matrix B (`+p+`)`);var h=c[0],g=c[1],_,v=n,y=0,b=i;typeof l==`string`&&l===m&&l!==`mixed`&&(_=l,v=t.find(n,[_,_]),y=t.convert(0,_),b=t.find(i,[_,_]));var x=a&&u?[]:void 0,S=[],C=[],w=x?[]:void 0,T=[],E,D,O,k,A;for(D=0;D{var{typed:t,matrix:n,equalScalar:r,multiplyScalar:i,concat:a}=e,o=fF({typed:t,equalScalar:r}),s=rI({typed:t,equalScalar:r}),c=UP({typed:t,equalScalar:r});return t(iI,vF({typed:t,matrix:n,concat:a})({elop:i,SS:s,DS:o,Ss:c}))});function oI(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw Error(`Integers expected in function bitAnd`);var n=e.constructor;if(e.isNaN()||t.isNaN())return new n(NaN);if(e.isZero()||t.eq(-1)||e.eq(t))return e;if(t.isZero()||e.eq(-1))return t;if(!e.isFinite()||!t.isFinite()){if(!e.isFinite()&&!t.isFinite())return e.isNegative()===t.isNegative()?e:new n(0);if(!e.isFinite())return t.isNegative()?e:e.isNegative()?new n(0):t;if(!t.isFinite())return e.isNegative()?t:t.isNegative()?new n(0):e}return lI(e,t,function(e,t){return e&t})}function sI(e){if(e.isFinite()&&!e.isInteger())throw Error(`Integer expected in function bitNot`);var t=e.constructor,n=t.precision;t.config({precision:1e9});var r=e.plus(new t(1));return r.s=-r.s||null,t.config({precision:n}),r}function cI(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw Error(`Integers expected in function bitOr`);var n=e.constructor;if(e.isNaN()||t.isNaN())return new n(NaN);var r=new n(-1);return e.isZero()||t.eq(r)||e.eq(t)?t:t.isZero()||e.eq(r)?e:!e.isFinite()||!t.isFinite()?!e.isFinite()&&!e.isNegative()&&t.isNegative()||e.isNegative()&&!t.isNegative()&&!t.isFinite()?r:e.isNegative()&&t.isNegative()?e.isFinite()?e:t:e.isFinite()?t:e:lI(e,t,function(e,t){return e|t})}function lI(e,t,n){var r=e.constructor,i,a,o=+(e.s<0),s=+(t.s<0);if(o){i=uI(sI(e));for(var c=0;c0;)n(u[--p],d[--m])===h&&(g=g.plus(_)),_=_.times(v);for(;m>0;)n(f,d[--m])===h&&(g=g.plus(_)),_=_.times(v);return r.config({precision:y}),h===0&&(g.s=-g.s),g}function uI(e){for(var t=e.d,n=t[0]+``,r=1;r0)if(++s>l)for(s-=l;s--;)c+=`0`;else s1&&((u[p+1]===null||u[p+1]===void 0)&&(u[p+1]=0),u[p+1]+=u[p]>>1,u[p]&=1)}return u.reverse()}function dI(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw Error(`Integers expected in function bitXor`);var n=e.constructor;if(e.isNaN()||t.isNaN())return new n(NaN);if(e.isZero())return t;if(t.isZero())return e;if(e.eq(t))return new n(0);var r=new n(-1);return e.eq(r)?sI(t):t.eq(r)?sI(e):!e.isFinite()||!t.isFinite()?!e.isFinite()&&!t.isFinite()?r:new n(e.isNegative()===t.isNegative()?1/0:-1/0):lI(e,t,function(e,t){return e^t})}function fI(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw Error(`Integers expected in function leftShift`);var n=e.constructor;return e.isNaN()||t.isNaN()||t.isNegative()&&!t.isZero()?new n(NaN):e.isZero()||t.isZero()?e:!e.isFinite()&&!t.isFinite()?new n(NaN):t.lt(55)?e.times(2**t.toNumber()+``):e.times(new n(2).pow(t))}function pI(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw Error(`Integers expected in function rightArithShift`);var n=e.constructor;return e.isNaN()||t.isNaN()||t.isNegative()&&!t.isZero()?new n(NaN):e.isZero()||t.isZero()?e:t.isFinite()?t.lt(55)?e.div(2**t.toNumber()+``).floor():e.div(new n(2).pow(t)).floor():e.isNegative()?new n(-1):e.isFinite()?new n(0):new n(NaN)}var mI=`bitAnd`,hI=Z(mI,[`typed`,`matrix`,`equalScalar`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,concat:i}=e,a=fF({typed:t,equalScalar:r}),o=jF({typed:t,equalScalar:r}),s=UP({typed:t,equalScalar:r}),c=vF({typed:t,matrix:n,concat:i});return t(mI,{"number, number":AM,"BigNumber, BigNumber":oI,"bigint, bigint":(e,t)=>e&t},c({SS:o,DS:a,Ss:s}))}),gI=`bitNot`,_I=Z(gI,[`typed`],e=>{var{typed:t}=e;return t(gI,{number:jM,BigNumber:sI,bigint:e=>~e,"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),vI=`bitOr`,yI=Z(vI,[`typed`,`matrix`,`equalScalar`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,DenseMatrix:i,concat:a}=e,o=xF({typed:t}),s=SF({typed:t,equalScalar:r}),c=CF({typed:t,DenseMatrix:i}),l=vF({typed:t,matrix:n,concat:a});return t(vI,{"number, number":MM,"BigNumber, BigNumber":cI,"bigint, bigint":(e,t)=>e|t},l({SS:s,DS:o,Ss:c}))}),bI=Z(`matAlgo07xSSf`,[`typed`,`SparseMatrix`],e=>{var{typed:t,SparseMatrix:n}=e;return function(e,i,a){var o=e._size,s=e._datatype||e._data===void 0?e._datatype:e.getDataType(),c=i._size,l=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(o.length!==c.length)throw new $A(o.length,c.length);if(o[0]!==c[0]||o[1]!==c[1])throw RangeError(`Dimension mismatch. Matrix A (`+o+`) must match Matrix B (`+c+`)`);var u=o[0],d=o[1],f,p=0,m=a;typeof s==`string`&&s===l&&s!==`mixed`&&(f=s,p=t.convert(0,f),m=t.find(a,[f,f]));for(var h=[],g=[],_=Array(d+1).fill(0),v=[],y=[],b=[],x=[],S=0;S{var{typed:t,matrix:n,DenseMatrix:r,concat:i,SparseMatrix:a}=e,o=pF({typed:t}),s=bI({typed:t,SparseMatrix:a}),c=WP({typed:t,DenseMatrix:r}),l=vF({typed:t,matrix:n,concat:i});return t(xI,{"number, number":NM,"BigNumber, BigNumber":dI,"bigint, bigint":(e,t)=>e^t},l({SS:s,DS:o,Ss:c}))}),CI=`arg`,wI=Z(CI,[`typed`],e=>{var{typed:t}=e;return t(CI,{number:function(e){return Math.atan2(0,e)},BigNumber:function(e){return e.constructor.atan2(0,e)},Complex:function(e){return e.arg()},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),TI=`conj`,EI=Z(TI,[`typed`],e=>{var{typed:t}=e;return t(TI,{"number | BigNumber | Fraction":e=>e,Complex:e=>e.conjugate(),Unit:t.referToSelf(e=>t=>new t.constructor(e(t.toNumeric()),t.formatUnits())),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),DI=`im`,OI=Z(DI,[`typed`],e=>{var{typed:t}=e;return t(DI,{number:()=>0,"BigNumber | Fraction":e=>e.mul(0),Complex:e=>e.im,"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),kI=`re`,AI=Z(kI,[`typed`],e=>{var{typed:t}=e;return t(kI,{"number | BigNumber | Fraction":e=>e,Complex:e=>e.re,"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),jI=`not`,MI=Z(jI,[`typed`],e=>{var{typed:t}=e;return t(jI,{"null | undefined":()=>!0,number:GM,Complex:function(e){return e.re===0&&e.im===0},BigNumber:function(e){return e.isZero()||e.isNaN()},bigint:e=>!e,Unit:t.referToSelf(e=>n=>t.find(e,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),NI=`nullish`,PI=Z(NI,[`typed`,`matrix`,`size`,`flatten`,`deepEqual`],e=>{var{typed:t,matrix:n,size:r,flatten:i,deepEqual:a}=e,o=pF({typed:t}),s=GP({typed:t}),c=hF({typed:t});return t(NI,{"number|bigint|Complex|BigNumber|Fraction|Unit|string|boolean|SparseMatrix, any":(e,t)=>e,"null, any":(e,t)=>t,"undefined, any":(e,t)=>t,"SparseMatrix, Array | Matrix":(e,t)=>{var n=r(e),i=r(t);if(a(n,i))return e;throw new $A(n,i)},"DenseMatrix, DenseMatrix":t.referToSelf(e=>(t,n)=>c(t,n,e)),"DenseMatrix, SparseMatrix":t.referToSelf(e=>(t,n)=>o(t,n,e,!1)),"DenseMatrix, Array":t.referToSelf(e=>(t,r)=>c(t,n(r),e)),"DenseMatrix, any":t.referToSelf(e=>(t,n)=>s(t,n,e,!1)),"Array, Array":t.referToSelf(e=>(t,r)=>c(n(t),n(r),e).valueOf()),"Array, DenseMatrix":t.referToSelf(e=>(t,r)=>c(n(t),r,e)),"Array, SparseMatrix":t.referToSelf(e=>(t,r)=>o(n(t),r,e,!1)),"Array, any":t.referToSelf(e=>(t,r)=>s(n(t),r,e,!1).valueOf())})}),FI=`or`,II=Z(FI,[`typed`,`matrix`,`equalScalar`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,DenseMatrix:i,concat:a}=e,o=pF({typed:t}),s=mF({typed:t,equalScalar:r}),c=WP({typed:t,DenseMatrix:i}),l=vF({typed:t,matrix:n,concat:a});return t(FI,{"number, number":KM,"Complex, Complex":function(e,t){return e.re!==0||e.im!==0||t.re!==0||t.im!==0},"BigNumber, BigNumber":function(e,t){return!e.isZero()&&!e.isNaN()||!t.isZero()&&!t.isNaN()},"bigint, bigint":KM,"Unit, Unit":t.referToSelf(e=>(t,n)=>e(t.value||0,n.value||0))},l({SS:s,DS:o,Ss:c}))}),LI=`xor`,RI=Z(LI,[`typed`,`matrix`,`DenseMatrix`,`concat`,`SparseMatrix`],e=>{var{typed:t,matrix:n,DenseMatrix:r,concat:i,SparseMatrix:a}=e,o=pF({typed:t}),s=bI({typed:t,SparseMatrix:a}),c=WP({typed:t,DenseMatrix:r}),l=vF({typed:t,matrix:n,concat:i});return t(LI,{"number, number":qM,"Complex, Complex":function(e,t){return(e.re!==0||e.im!==0)!=(t.re!==0||t.im!==0)},"bigint, bigint":qM,"BigNumber, BigNumber":function(e,t){return(!e.isZero()&&!e.isNaN())!=(!t.isZero()&&!t.isNaN())},"Unit, Unit":t.referToSelf(e=>(t,n)=>e(t.value||0,n.value||0))},l({SS:s,DS:o,Ss:c}))}),zI=`concat`,BI=Z(zI,[`typed`,`matrix`,`isInteger`],e=>{var{typed:t,matrix:n,isInteger:r}=e;return t(zI,{"...Array | Matrix | number | BigNumber":function(e){var t,i=e.length,a=-1,o,s=!1,c=[];for(t=0;t0&&a>o)throw new ej(a,o+1)}else{var u=mD(l).valueOf(),d=tj(u);if(c[t]=u,o=a,a=d.length-1,t>0&&a!==o)throw new $A(o+1,a+1)}}if(c.length===0)throw SyntaxError(`At least one matrix expected`);for(var f=c.shift();c.length;)f=Dj(f,c.shift(),a);return s?n(f):f},"...string":function(e){return e.join(``)}})}),VI=`column`,HI=Z(VI,[`typed`,`Index`,`matrix`,`range`],e=>{var{typed:t,Index:n,matrix:r,range:i}=e;return t(VI,{"Matrix, number":a,"Array, number":function(e,t){return a(r(mD(e)),t).valueOf()}});function a(e,t){if(e.size().length!==2)throw Error(`Only two dimensional matrix is supported`);aj(t,e.size()[1]);var a=new n(i(0,e.size()[0]),[t]),o=e.subset(a);return jE(o)?o:r([[o]])}}),UI=`count`,WI=Z(UI,[`typed`,`size`,`prod`],e=>{var{typed:t,size:n,prod:r}=e;return t(UI,{string:function(e){return e.length},"Matrix | Array":function(e){return r(n(e))}})}),GI=`cross`,KI=Z(GI,[`typed`,`matrix`,`subtract`,`multiply`],e=>{var{typed:t,matrix:n,subtract:r,multiply:i}=e;return t(GI,{"Matrix, Matrix":function(e,t){return n(a(e.toArray(),t.toArray()))},"Matrix, Array":function(e,t){return n(a(e.toArray(),t))},"Array, Matrix":function(e,t){return n(a(e,t.toArray()))},"Array, Array":a});function a(e,t){var n=Math.max(tj(e).length,tj(t).length);e=pj(e),t=pj(t);var a=tj(e),o=tj(t);if(a.length!==1||o.length!==1||a[0]!==3||o[0]!==3)throw RangeError(`Vectors with length 3 expected (Size A = [`+a.join(`, `)+`], B = [`+o.join(`, `)+`])`);var s=[r(i(e[1],t[2]),i(e[2],t[1])),r(i(e[2],t[0]),i(e[0],t[2])),r(i(e[0],t[1]),i(e[1],t[0]))];return n>1?[s]:s}}),qI=`diag`,JI=Z(qI,[`typed`,`matrix`,`DenseMatrix`,`SparseMatrix`],e=>{var{typed:t,matrix:n,DenseMatrix:r,SparseMatrix:i}=e;return t(qI,{Array:function(e){return a(e,0,tj(e),null)},"Array, number":function(e,t){return a(e,t,tj(e),null)},"Array, BigNumber":function(e,t){return a(e,t.toNumber(),tj(e),null)},"Array, string":function(e,t){return a(e,0,tj(e),t)},"Array, number, string":function(e,t,n){return a(e,t,tj(e),n)},"Array, BigNumber, string":function(e,t,n){return a(e,t.toNumber(),tj(e),n)},Matrix:function(e){return a(e,0,e.size(),e.storage())},"Matrix, number":function(e,t){return a(e,t,e.size(),e.storage())},"Matrix, BigNumber":function(e,t){return a(e,t.toNumber(),e.size(),e.storage())},"Matrix, string":function(e,t){return a(e,0,e.size(),t)},"Matrix, number, string":function(e,t,n){return a(e,t,e.size(),n)},"Matrix, BigNumber, string":function(e,t,n){return a(e,t.toNumber(),e.size(),n)}});function a(e,t,n,r){if(!PD(t))throw TypeError(`Second parameter in function diag must be an integer`);var i=t>0?t:0,a=t<0?-t:0;switch(n.length){case 1:return o(e,t,r,n[0],a,i);case 2:return s(e,t,r,n,a,i)}throw RangeError(`Matrix for function diag must be 2 dimensional`)}function o(e,t,n,a,o,s){var c=[a+o,a+s];if(n&&n!==`sparse`&&n!==`dense`)throw TypeError(`Unknown matrix type ${n}"`);var l=n===`sparse`?i.diagonal(c,e,t):r.diagonal(c,e,t);return n===null?l.valueOf():l}function s(e,t,r,i,a,o){if(jE(e)){var s=e.diagonal(t);return r===null?s.valueOf():r===s.storage()?s:n(s,r)}for(var c=Math.min(i[0]-a,i[1]-o),l=[],u=0;u{var{typed:t}=e;return t(`filter`,{"Array, function":XI,"Matrix, function":function(e,t){return e.create(XI(e.valueOf(),t),e.datatype())},"Array, RegExp":xj,"Matrix, RegExp":function(e,t){return e.create(xj(e.valueOf(),t),e.datatype())}})});function XI(e,t){var n=Ij(t,e,`filter`);return n.isUnary?bj(e,n.fn):bj(e,function(e,t,r){return n.fn(e,[t],r)})}var ZI=`flatten`,QI=Z(ZI,[`typed`],e=>{var{typed:t}=e;return t(ZI,{Array:function(e){return _j(e)},DenseMatrix:function(e){return e.create(_j(e.valueOf(),!0),e.datatype())},SparseMatrix:function(e){throw TypeError(`SparseMatrix is not supported by function flatten because it does not support 1D vectors. Convert to a DenseMatrix or Array first. Example: flatten(x.toArray())`)}})}),$I=`forEach`,eL=Z($I,[`typed`],e=>{var{typed:t}=e;return t($I,{"Array, function":tL,"Matrix, function":function(e,t){e.forEach(t)}})});function tL(e,t){var n=Ij(t,e,$I);Pj(e,n.fn,n.isUnary)}var nL=`getMatrixDataType`,rL=Z(nL,[`typed`],e=>{var{typed:t}=e;return t(nL,{Array:function(e){return Tj(e,pD)},Matrix:function(e){return e.getDataType()}})}),iL=`identity`,aL=Z(iL,[`typed`,`config`,`matrix`,`BigNumber`,`DenseMatrix`,`SparseMatrix`],e=>{var{typed:t,config:n,matrix:r,BigNumber:i,DenseMatrix:a,SparseMatrix:o}=e;return t(iL,{"":function(){return n.matrix===`Matrix`?r([]):[]},string:function(e){return r(e)},"number | BigNumber":function(e){return c(e,e,n.matrix===`Matrix`?`dense`:void 0)},"number | BigNumber, string":function(e,t){return c(e,e,t)},"number | BigNumber, number | BigNumber":function(e,t){return c(e,t,n.matrix===`Matrix`?`dense`:void 0)},"number | BigNumber, number | BigNumber, string":function(e,t,n){return c(e,t,n)},Array:function(e){return s(e)},"Array, string":function(e,t){return s(e,t)},Matrix:function(e){return s(e.valueOf(),e.storage())},"Matrix, string":function(e,t){return s(e.valueOf(),t)}});function s(e,t){switch(e.length){case 0:return t?r(t):[];case 1:return c(e[0],e[0],t);case 2:return c(e[0],e[1],t);default:throw Error(`Vector containing two values expected`)}}function c(e,t,n){var r=wE(e)||wE(t)?i:null;if(wE(e)&&(e=e.toNumber()),wE(t)&&(t=t.toNumber()),!PD(e)||e<1||!PD(t)||t<1)throw Error(`Parameters in function identity must be positive integers`);var s=r?new i(1):1,c=r?new r(0):0,l=[e,t];if(n){if(n===`sparse`)return o.diagonal(l,s,0,c);if(n===`dense`)return a.diagonal(l,s,0,c);throw TypeError(`Unknown matrix type "${n}"`)}for(var u=sj([],l,c),d=e{var{typed:t,matrix:n,multiplyScalar:r}=e;return t(oL,{"Matrix, Matrix":function(e,t){return n(a(e.toArray(),t.toArray()))},"Matrix, Array":function(e,t){return n(a(e.toArray(),t))},"Array, Matrix":function(e,t){return n(a(e,t.toArray()))},"Array, Array":a});function i(e,t){return e.flatMap(e=>t.map(t=>r(e,t)))}function a(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:-1;if(n<0){var r=tj(e).length,o=tj(t).length;for(n=Math.max(r,o);r++t.map(t=>a(e,t,n-1)))}}),cL=`map`,lL=Z(cL,[`typed`],e=>{var{typed:t}=e;return t(cL,{"Array, function":s,"Matrix, function":function(e,t){return e.map(t)},"Array|Matrix, Array|Matrix, ...Array|Matrix|function":(e,t,r)=>n([e,t,...r.slice(0,r.length-1)],r[r.length-1])});function n(e,n){if(typeof n!=`function`)throw Error(`Last argument must be a callback function`);var c=e[0].isMatrix,l=e.map(e=>e.isMatrix?e.size():tj(e)),u=Oj(...l),d=e.length,f=c?(e,t)=>e.get(t):Mj,p=e.map((e,t)=>{var n=l[t].map(()=>0);return e.isMatrix?e.get(n):Mj(e,n)}),m=t.isTypedFunction(n)?o(n,p,u.map(()=>0),e):a(n,d);if(m<2)return r(e,i(m,n,null));var h=c?e.map(t=>t.isMatrix?t.create(Aj(t.toArray(),u),t.datatype()):e[0].create(Aj(t.valueOf(),u))):e.map(e=>e.isMatrix?Aj(e.toArray(),u):Aj(e,u)),g=i(m,n,h),_=(e,t)=>g([e,...h.slice(1).map(e=>f(e,t))],t);return c?h[0].map(_):s(h[0],_)}function r(e,t){var n=e[0],r=e.map(e=>e.isMatrix?e.valueOf():e),i=e.map(e=>e.isMatrix?e.size():tj(e)),a=Oj(...i),o=i.map(e=>a.length-e.length),s=a.length-1,c=t.length>1?[]:null,l=d(r,0);if(n.isMatrix){var u=n.create();return u._data=l,u._size=a,u}else return l;function d(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=a[n],i=Array(r);if(no[r]>n?e:e.length===1?e[0]:e[t]),n+1)},u=0;ue.length===1?e[0]:e[r]),c?c.slice():void 0)},p=0;pt(...e);case 1:return(e,n)=>t(...e,n);case 2:return(e,r)=>t(...e,r,...n)}}function a(e,t){var n=e.toString();if(/arguments/.test(n))return 2;var r=n.match(/\(.*?\)/);return/\.\.\./.test(r)||e.length>t+1?2:+(e.length===t+1)}function o(e,n,r,i){return t.resolve(e,[...n,r,...i])===null?t.resolve(e,[...n,r])===null?(t.resolve(e,n),0):1:2}function s(e,t){var n=Ij(t,e,cL);return Nj(e,n.fn,n.isUnary)}}),uL=`diff`,dL=Z(uL,[`typed`,`matrix`,`subtract`,`number`],e=>{var{typed:t,matrix:n,subtract:r,number:i}=e;return t(uL,{"Array | Matrix":function(e){return jE(e)?n(o(e.toArray())):o(e)},"Array | Matrix, number":function(e,t){if(!PD(t))throw RangeError(`Dimension must be a whole number`);return jE(e)?n(a(e.toArray(),t)):a(e,t)},"Array, BigNumber":t.referTo(`Array,number`,e=>(t,n)=>e(t,i(n))),"Matrix, BigNumber":t.referTo(`Matrix,number`,e=>(t,n)=>e(t,i(n)))});function a(e,t){if(jE(e)&&(e=e.toArray()),!Array.isArray(e))throw RangeError(`Array/Matrix does not have that many dimensions`);if(t>0){var n=[];return e.forEach(e=>{n.push(a(e,t-1))}),n}else if(t===0)return o(e);else throw RangeError(`Cannot have negative dimension`)}function o(e){for(var t=[],n=e.length,r=1;r{var{typed:t,config:n,matrix:r,BigNumber:i}=e;return t(`ones`,{"":function(){return n.matrix===`Array`?a([]):a([],`default`)},"...number | BigNumber | string":function(e){return typeof e[e.length-1]==`string`?a(e,e.pop()):n.matrix===`Array`?a(e):a(e,`default`)},Array:a,Matrix:function(e){var t=e.storage();return a(e.valueOf(),t)},"Array | Matrix, string":function(e,t){return a(e.valueOf(),t)}});function a(e,t){var n=o(e)?new i(1):1;if(s(e),t){var a=r(t);return e.length>0?a.resize(e,n):a}else{var c=[];return e.length>0?sj(c,e,n):c}}function o(e){var t=!1;return e.forEach(function(e,n,r){wE(e)&&(t=!0,r[n]=e.toNumber())}),t}function s(e){e.forEach(function(e){if(typeof e!=`number`||!PD(e)||e<0)throw Error(`Parameters in function ones must be positive integers`)})}});function pL(){throw Error(`No "bignumber" implementation available`)}function mL(){throw Error(`No "fraction" implementation available`)}function hL(){throw Error(`No "matrix" implementation available`)}var gL=`range`,_L=Z(gL,[`typed`,`config`,`?matrix`,`?bignumber`,`equal`,`smaller`,`smallerEq`,`larger`,`largerEq`,`add`,`isZero`,`isPositive`],e=>{var{typed:t,config:n,matrix:r,bignumber:i,smaller:a,smallerEq:o,larger:s,largerEq:c,add:l,isZero:u,isPositive:d}=e;return t(gL,{string:p,"string, boolean":p,number:function(e){throw TypeError(`Too few arguments to function range(): ${e}`)},boolean:function(e){throw TypeError(`Unexpected type of argument 1 to function range(): ${e}, number|bigint|BigNumber|Fraction`)},"number, number":function(e,t){return f(m(e,t,1,!1))},"number, number, number":function(e,t,n){return f(m(e,t,n,!1))},"number, number, boolean":function(e,t,n){return f(m(e,t,1,n))},"number, number, number, boolean":function(e,t,n,r){return f(m(e,t,n,r))},"bigint, bigint|number":function(e,t){return f(m(e,t,1n,!1))},"number, bigint":function(e,t){return f(m(BigInt(e),t,1n,!1))},"bigint, bigint|number, bigint|number":function(e,t,n){return f(m(e,t,BigInt(n),!1))},"number, bigint, bigint|number":function(e,t,n){return f(m(BigInt(e),t,BigInt(n),!1))},"bigint, bigint|number, boolean":function(e,t,n){return f(m(e,t,1n,n))},"number, bigint, boolean":function(e,t,n){return f(m(BigInt(e),t,1n,n))},"bigint, bigint|number, bigint|number, boolean":function(e,t,n,r){return f(m(e,t,BigInt(n),r))},"number, bigint, bigint|number, boolean":function(e,t,n,r){return f(m(BigInt(e),t,BigInt(n),r))},"BigNumber, BigNumber":function(e,t){var n=e.constructor;return f(m(e,t,new n(1),!1))},"BigNumber, BigNumber, BigNumber":function(e,t,n){return f(m(e,t,n,!1))},"BigNumber, BigNumber, boolean":function(e,t,n){var r=e.constructor;return f(m(e,t,new r(1),n))},"BigNumber, BigNumber, BigNumber, boolean":function(e,t,n,r){return f(m(e,t,n,r))},"Fraction, Fraction":function(e,t){return f(m(e,t,1,!1))},"Fraction, Fraction, Fraction":function(e,t,n){return f(m(e,t,n,!1))},"Fraction, Fraction, boolean":function(e,t,n){return f(m(e,t,1,n))},"Fraction, Fraction, Fraction, boolean":function(e,t,n,r){return f(m(e,t,n,r))},"Unit, Unit, Unit":function(e,t,n){return f(m(e,t,n,!1))},"Unit, Unit, Unit, boolean":function(e,t,n,r){return f(m(e,t,n,r))}});function f(e){return n.matrix===`Matrix`?r?r(e):hL():e}function p(e,t){var r=h(e);if(!r)throw SyntaxError(`String "`+e+`" is no valid range`);return n.number===`BigNumber`?(i===void 0&&pL(),f(m(i(r.start),i(r.end),i(r.step)),t)):f(m(r.start,r.end,r.step,t))}function m(e,t,n,r){var i=[];if(u(n))throw Error(`Step must be non-zero`);for(var f=d(n)?r?o:a:r?c:s,p=e;f(p,t);)i.push(p),p=l(p,n);return i}function h(e){var t=e.split(`:`).map(function(e){return Number(e)});if(t.some(function(e){return isNaN(e)}))return null;switch(t.length){case 2:return{start:t[0],end:t[1],step:1};case 3:return{start:t[0],end:t[2],step:t[1]};default:return null}}}),vL=`reshape`,yL=Z(vL,[`typed`,`isInteger`,`matrix`],e=>{var{typed:t,isInteger:n}=e;return t(vL,{"Matrix, Array":function(e,t){return e.reshape(t,!0)},"Array, Array":function(e,t){return t.forEach(function(e){if(!n(e))throw TypeError(`Invalid size for dimension: `+e)}),lj(e,t)}})}),bL=Z(`resize`,[`config`,`matrix`],e=>{var{config:t,matrix:n}=e;return function(e,i,a){if(arguments.length!==2&&arguments.length!==3)throw new wF(`resize`,arguments.length,2,3);if(jE(i)&&(i=i.valueOf()),wE(i[0])&&(i=i.map(function(e){return wE(e)?e.toNumber():e})),jE(e))return e.resize(i,a,!0);if(typeof e==`string`)return r(e,i,a);var o=Array.isArray(e)?!1:t.matrix!==`Array`;if(i.length===0){for(;Array.isArray(e);)e=e[0];return mD(e)}else{Array.isArray(e)||(e=[e]),e=mD(e);var s=sj(e,i,a);return o?n(s):s}};function r(e,t,n){if(n!==void 0){if(typeof n!=`string`||n.length!==1)throw TypeError(`Single character expected as defaultValue`)}else n=` `;if(t.length!==1)throw new $A(t.length,1);var r=t[0];if(typeof r!=`number`||!PD(r))throw TypeError(`Invalid size, must contain positive integers (size: `+GA(t)+`)`);if(e.length>r)return e.substring(0,r);if(e.length{var{typed:t,multiply:n,rotationMatrix:r}=e;return t(xL,{"Array , number | BigNumber | Complex | Unit":function(e,t){return i(e,2),n(r(t),e).toArray()},"Matrix , number | BigNumber | Complex | Unit":function(e,t){return i(e,2),n(r(t),e)},"Array, number | BigNumber | Complex | Unit, Array | Matrix":function(e,t,a){return i(e,3),n(r(t,a),e)},"Matrix, number | BigNumber | Complex | Unit, Array | Matrix":function(e,t,a){return i(e,3),n(r(t,a),e)}});function i(e,t){var n=Array.isArray(e)?tj(e):e.size();if(n.length>2||n.length===2&&n[1]!==1||n[0]!==t)throw RangeError(`Vector must be of dimensions 1x${t}`)}}),CL=`rotationMatrix`,wL=Z(CL,[`typed`,`config`,`multiplyScalar`,`addScalar`,`unaryMinus`,`norm`,`matrix`,`BigNumber`,`DenseMatrix`,`SparseMatrix`,`cos`,`sin`],e=>{var{typed:t,config:n,multiplyScalar:r,addScalar:i,unaryMinus:a,norm:o,BigNumber:s,matrix:c,DenseMatrix:l,SparseMatrix:u,cos:d,sin:f}=e;return t(CL,{"":function(){return n.matrix===`Matrix`?c([]):[]},string:function(e){return c(e)},"number | BigNumber | Complex | Unit":function(e){return p(e,n.matrix===`Matrix`?`dense`:void 0)},"number | BigNumber | Complex | Unit, string":function(e,t){return p(e,t)},"number | BigNumber | Complex | Unit, Array":function(e,t){var n=c(t);return m(n),_(e,n,void 0)},"number | BigNumber | Complex | Unit, Matrix":function(e,t){return m(t),_(e,t,t.storage()||(n.matrix===`Matrix`?`dense`:void 0))},"number | BigNumber | Complex | Unit, Array, string":function(e,t,n){var r=c(t);return m(r),_(e,r,n)},"number | BigNumber | Complex | Unit, Matrix, string":function(e,t,n){return m(t),_(e,t,n)}});function p(e,t){var n=wE(e)?new s(-1):-1,i=d(e),a=f(e);return g([[i,r(n,a)],[a,i]],t)}function m(e){var t=e.size();if(t.length<1||t[0]!==3)throw RangeError(`Vector must be of dimensions 1x3`)}function h(e){return e.reduce((e,t)=>r(e,t))}function g(e,t){if(t){if(t===`sparse`)return new u(e);if(t===`dense`)return new l(e);throw TypeError(`Unknown matrix type "${t}"`)}return e}function _(e,t,n){var r=o(t);if(r===0)throw RangeError(`Rotation around zero vector`);var c=wE(e)?s:null,l=c?new c(1):1,u=c?new c(-1):-1,p=c?new c(t.get([0])/r):t.get([0])/r,m=c?new c(t.get([1])/r):t.get([1])/r,_=c?new c(t.get([2])/r):t.get([2])/r,v=d(e),y=i(l,a(v)),b=f(e),x=i(v,h([p,p,y])),S=i(h([p,m,y]),h([u,_,b])),C=i(h([p,_,y]),h([m,b])),w=i(h([p,m,y]),h([_,b])),T=i(v,h([m,m,y])),E=i(h([m,_,y]),h([u,p,b])),D=i(h([p,_,y]),h([u,m,b])),O=i(h([m,_,y]),h([p,b])),k=i(v,h([_,_,y]));return g([[x,S,C],[w,T,E],[D,O,k]],n)}}),TL=`row`,EL=Z(TL,[`typed`,`Index`,`matrix`,`range`],e=>{var{typed:t,Index:n,matrix:r,range:i}=e;return t(TL,{"Matrix, number":a,"Array, number":function(e,t){return a(r(mD(e)),t).valueOf()}});function a(e,t){if(e.size().length!==2)throw Error(`Only two dimensional matrix is supported`);aj(t,e.size()[0]);var a=i(0,e.size()[1]),o=new n([t],a),s=e.subset(o);return jE(s)?s:r([[s]])}}),DL=`size`,OL=Z(DL,[`typed`],e=>{var{typed:t}=e;return t(DL,{Matrix:e=>e.size(),Array:tj,string:e=>[e.length],"number | Complex | BigNumber | Unit | boolean | null":e=>[]})}),kL=`squeeze`,AL=Z(kL,[`typed`],e=>{var{typed:t}=e;return t(kL,{Array:function(e){return pj(mD(e))},Matrix:function(e){var t=pj(e.toArray());return Array.isArray(t)?e.create(t,e.datatype()):t},any:function(e){return mD(e)}})}),jL=`subset`,ML=Z(jL,[`typed`,`matrix`,`zeros`,`add`],e=>{var{typed:t,matrix:n,zeros:r,add:i}=e;return t(jL,{"Matrix, Index":function(e,t){return oj(t)?n():(ij(e,t),e.subset(t))},"Array, Index":t.referTo(`Matrix, Index`,function(e){return function(t,r){var i=e(n(t),r);return r.isScalar()?i:i.valueOf()}}),"Object, Index":FL,"string, Index":NL,"Matrix, Index, any, any":function(e,t,n,r){return oj(t)?e:(ij(e,t),e.clone().subset(t,a(n,t),r))},"Array, Index, any, any":t.referTo(`Matrix, Index, any, any`,function(e){return function(t,r,i,a){var o=e(n(t),r,i,a);return o.isMatrix?o.valueOf():o}}),"Array, Index, any":t.referTo(`Matrix, Index, any, any`,function(e){return function(t,r,i){return e(n(t),r,i,void 0).valueOf()}}),"Matrix, Index, any":t.referTo(`Matrix, Index, any, any`,function(e){return function(t,n,r){return e(t,n,r,void 0)}}),"string, Index, string":PL,"string, Index, string, string":PL,"Object, Index, any":IL});function a(e,t){if(typeof e==`string`)throw Error(`can't boradcast a string`);if(t.isScalar())return e;var n=t.size();if(n.every(e=>e>0))try{return i(e,r(n))}catch{return e}else return e}});function NL(e,t){if(!IE(t))throw TypeError(`Index expected`);if(oj(t))return``;if(ij(Array.from(e),t),t.size().length!==1)throw new $A(t.size().length,1);var n=e.length;aj(t.min()[0],n),aj(t.max()[0],n);var r=t.dimension(0),i=``;function a(t){i+=e.charAt(t)}return Number.isInteger(r)?a(r):r.forEach(a),i}function PL(e,t,n,r){if(!t||t.isIndex!==!0)throw TypeError(`Index expected`);if(oj(t))return e;if(ij(Array.from(e),t),t.size().length!==1)throw new $A(t.size().length,1);if(r!==void 0){if(typeof r!=`string`||r.length!==1)throw TypeError(`Single character expected as defaultValue`)}else r=` `;var i=t.dimension(0);if((Number.isInteger(i)?1:i.size()[0])!==n.length)throw new $A(i.size()[0],n.length);var a=e.length;aj(t.min()[0]),aj(t.max()[0]);for(var o=[],s=0;sa)for(var l=a-1,u=o.length;l{var{typed:t,matrix:n}=e;return t(LL,{Array:e=>r(n(e)).valueOf(),Matrix:r,any:mD});function r(e){var t=e.size(),n;switch(t.length){case 1:n=e.clone();break;case 2:var r=t[0],o=t[1];if(o===0)throw RangeError(`Cannot transpose a 2D matrix with no columns (size: `+GA(t)+`)`);switch(e.storage()){case`dense`:n=i(e,r,o);break;case`sparse`:n=a(e,r,o);break}break;default:throw RangeError(`Matrix must be a vector or two dimensional (size: `+GA(t)+`)`)}return n}function i(e,t,n){for(var r=e._data,i=[],a,o=0;o{var{typed:t,transpose:n,conj:r}=e;return t(zL,{any:function(e){return r(n(e))}})}),VL=`zeros`,HL=Z(VL,[`typed`,`config`,`matrix`,`BigNumber`],e=>{var{typed:t,config:n,matrix:r,BigNumber:i}=e;return t(VL,{"":function(){return n.matrix===`Array`?a([]):a([],`default`)},"...number | BigNumber | string":function(e){return typeof e[e.length-1]==`string`?a(e,e.pop()):n.matrix===`Array`?a(e):a(e,`default`)},Array:a,Matrix:function(e){var t=e.storage();return a(e.valueOf(),t)},"Array | Matrix, string":function(e,t){return a(e.valueOf(),t)}});function a(e,t){var n=o(e)?new i(0):0;if(s(e),t){var a=r(t);return e.length>0?a.resize(e,n):a}else{var c=[];return e.length>0?sj(c,e,n):c}}function o(e){var t=!1;return e.forEach(function(e,n,r){wE(e)&&(t=!0,r[n]=e.toNumber())}),t}function s(e){e.forEach(function(e){if(typeof e!=`number`||!PD(e)||e<0)throw Error(`Parameters in function zeros must be positive integers`)})}}),UL=`fft`,WL=Z(UL,[`typed`,`matrix`,`addScalar`,`multiplyScalar`,`divideScalar`,`exp`,`tau`,`i`,`dotDivide`,`conj`,`pow`,`ceil`,`log2`],e=>{var{typed:t,matrix:n,addScalar:r,multiplyScalar:i,divideScalar:a,exp:o,tau:s,i:c,dotDivide:l,conj:u,pow:d,ceil:f,log2:p}=e;return t(UL,{Array:m,Matrix:function(e){return e.create(m(e.valueOf()),e.datatype())}});function m(e){var t=tj(e);return t.length===1?_(e,t[0]):h(e.map(e=>m(e,t.slice(1))),0)}function h(e,t){var n=tj(e);if(t!==0)return Array(n[0]).fill(0).map((n,r)=>h(e[r],t-1));if(n.length===1)return _(e);function r(e){var t=tj(e);return Array(t[1]).fill(0).map((n,r)=>Array(t[0]).fill(0).map((t,n)=>e[n][r]))}return r(h(r(e),1))}function g(e){for(var t=e.length,n=o(a(i(-1,i(c,s)),t)),r=[],h=1-t;hi(e[a],r[t-1+a])),...Array(g-t).fill(0)],y=[...Array(t+t-1).fill(0).map((e,t)=>a(1,r[t])),...Array(g-(t+t-1)).fill(0)],b=_(v),x=_(y),S=l(u(m(u(Array(g).fill(0).map((e,t)=>i(b[t],x[t]))))),g),C=[],w=t-1;wt%2==0),t/2),..._(e.filter((e,t)=>t%2==1),t/2)],l=0;l{var{typed:t,fft:n,dotDivide:r,conj:i}=e;return t(GL,{"Array | Matrix":function(e){var t=jE(e)?e.size():tj(e);return r(i(n(i(e))),t.reduce((e,t)=>e*t,1))}})});function qL(e){"@babel/helpers - typeof";return qL=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},qL(e)}function JL(e,t){if(qL(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(qL(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function YL(e){var t=JL(e,`string`);return qL(t)==`symbol`?t:t+``}function XL(e,t,n){return(t=YL(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ZL(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function QL(e){for(var t=1;t{var{typed:t,add:n,subtract:r,multiply:i,divide:a,max:o,map:s,abs:c,isPositive:l,isNegative:u,larger:d,smaller:f,matrix:p,bignumber:m,unaryMinus:h}=e;function g(e){return function(t,p,g,_){if(!(p.length===2&&(p.every(S)||p.every(OE))))throw Error(`"tspan" must be an Array of two numeric values or two units [tStart, tEnd]`);var v=p[0],y=p[1],C=d(y,v),w=_.firstStep;if(w!==void 0&&!l(w))throw Error(`"firstStep" must be positive`);var T=_.maxStep;if(T!==void 0&&!l(T))throw Error(`"maxStep" must be positive`);var E=_.minStep;if(E&&u(E))throw Error(`"minStep" must be positive or zero`);var D=[v,y,w,E,T].filter(e=>e!==void 0);if(!(D.every(S)||D.every(OE)))throw Error(`Inconsistent type of "t" dependant variables`);for(var O=1,k=_.tol?_.tol:1e-4,A=_.minDelta?_.minDelta:.2,j=_.maxDelta?_.maxDelta:5,M=_.maxIter?_.maxIter:1e4,N=[v,y,...g,T,E].some(wE),[P,F,I,L]=N?[m(e.a),m(e.c),m(e.b),m(e.bp)]:[e.a,e.c,e.b,e.bp],ee=w?C?w:h(w):a(r(y,v),O),R=[v],te=[g],z=r(I,L),ne=0,re=0,ie=b(C),ae=x(C);ie(R[ne],y);){var oe=[];ee=ae(R[ne],y,ee),oe.push(t(R[ne],te[ne]));for(var se=1;seOE(e)?e.value:e)));ce1/4&&(R.push(n(R[ne],ee)),te.push(n(te[ne],i(ee,I,oe))),ne++);var le=.84*(k/ce)**(1/5);if(f(le,A)?le=A:d(le,j)&&(le=j),le=N?m(le):le,ee=i(ee,le),T&&d(c(ee),T)?ee=C?T:h(T):E&&f(c(ee),E)&&(ee=C?E:h(E)),re++,re>M)throw Error(`Maximum number of iterations reached, try changing options`)}return{t:R,y:te}}}function _(e,t,n,r){return g({a:[[],[1/2],[0,3/4],[2/9,1/3,4/9]],c:[null,1/2,3/4,1],b:[2/9,1/3,4/9,0],bp:[7/24,1/4,1/3,1/8]})(e,t,n,r)}function v(e,t,n,r){return g({a:[[],[1/5],[3/40,9/40],[44/45,-56/15,32/9],[19372/6561,-25360/2187,64448/6561,-212/729],[9017/3168,-355/33,46732/5247,49/176,-5103/18656],[35/384,0,500/1113,125/192,-2187/6784,11/84]],c:[null,1/5,3/10,4/5,8/9,1,1],b:[35/384,0,500/1113,125/192,-2187/6784,11/84,0],bp:[5179/57600,0,7571/16695,393/640,-92097/339200,187/2100,1/40]})(e,t,n,r)}function y(e,t,n,r){var i=r.method?r.method:`RK45`,a={RK23:_,RK45:v};if(i.toUpperCase()in a){var o=QL({},r);return delete o.method,a[i.toUpperCase()](e,t,n,o)}else{var s=Object.keys(a).map(e=>`"${e}"`),c=`${s.slice(0,-1).join(`, `)} and ${s.slice(-1)}`;throw Error(`Unavailable method "${i}". Available methods are ${c}`)}}function b(e){return e?f:d}function x(e){var t=e?d:f;return function(e,i,a){return t(n(e,a),i)?r(i,e):a}}function S(e){return wE(e)||CE(e)}function C(e,t,n,r){var i=y(e,t.toArray(),n.toArray(),r);return{t:p(i.t),y:p(i.y)}}return t(`solveODE`,{"function, Array, Array, Object":y,"function, Matrix, Matrix, Object":C,"function, Array, Array":(e,t,n)=>y(e,t,n,{}),"function, Matrix, Matrix":(e,t,n)=>C(e,t,n,{}),"function, Array, number | BigNumber | Unit":(e,t,n)=>{var r=y(e,t,[n],{});return{t:r.t,y:r.y.map(e=>e[0])}},"function, Matrix, number | BigNumber | Unit":(e,t,n)=>{var r=y(e,t.toArray(),[n],{});return{t:p(r.t),y:p(r.y.map(e=>e[0]))}},"function, Array, number | BigNumber | Unit, Object":(e,t,n,r)=>{var i=y(e,t,[n],r);return{t:i.t,y:i.y.map(e=>e[0])}},"function, Matrix, number | BigNumber | Unit, Object":(e,t,n,r)=>{var i=y(e,t.toArray(),[n],r);return{t:p(i.t),y:p(i.y.map(e=>e[0]))}}})}),eR=Z(`erf`,[`typed`],e=>{var{typed:t}=e;return t(`name`,{number:function(e){var t=Math.abs(e);return t>=aR?ID(e):t<=tR?ID(e)*n(t):t<=4?ID(e)*(1-r(t)):ID(e)*(1-i(t))},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))});function n(e){var t=e*e,n=rR[0][4]*t,r=t,i;for(i=0;i<3;i+=1)n=(n+rR[0][i])*t,r=(r+iR[0][i])*t;return e*(n+rR[0][3])/(r+iR[0][3])}function r(e){var t=rR[1][8]*e,n=e,r;for(r=0;r<7;r+=1)t=(t+rR[1][r])*e,n=(n+iR[1][r])*e;var i=(t+rR[1][7])/(n+iR[1][7]),a=parseInt(e*16)/16,o=(e-a)*(e+a);return Math.exp(-a*a)*Math.exp(-o)*i}function i(e){var t=1/(e*e),n=rR[2][5]*t,r=t,i;for(i=0;i<4;i+=1)n=(n+rR[2][i])*t,r=(r+iR[2][i])*t;var a=t*(n+rR[2][4])/(r+iR[2][4]);a=(nR-a)/e,t=parseInt(e*16)/16;var o=(e-t)*(e+t);return Math.exp(-t*t)*Math.exp(-o)*a}}),tR=.46875,nR=.5641895835477563,rR=[[3.1611237438705655,113.86415415105016,377.485237685302,3209.3775891384694,.18577770618460315],[.5641884969886701,8.883149794388377,66.11919063714163,298.6351381974001,881.952221241769,1712.0476126340707,2051.0783778260716,1230.3393547979972,2.1531153547440383e-8],[.30532663496123236,.36034489994980445,.12578172611122926,.016083785148742275,.0006587491615298378,.016315387137302097]],iR=[[23.601290952344122,244.02463793444417,1282.6165260773723,2844.236833439171],[15.744926110709835,117.6939508913125,537.1811018620099,1621.3895745666903,3290.7992357334597,4362.619090143247,3439.3676741437216,1230.3393548037495],[2.568520192289822,1.8729528499234604,.5279051029514285,.06051834131244132,.0023352049762686918]],aR=2**53,oR=`zeta`,sR=Z(oR,[`typed`,`config`,`multiply`,`pow`,`divide`,`factorial`,`equal`,`smallerEq`,`isBounded`,`isNegative`,`gamma`,`sin`,`subtract`,`add`,`?Complex`,`?BigNumber`,`pi`],e=>{var{typed:t,config:n,multiply:r,pow:i,divide:a,factorial:o,equal:s,smallerEq:c,isBounded:l,isNegative:u,gamma:d,sin:f,subtract:p,add:m,Complex:h,BigNumber:g,pi:_}=e;return t(oR,{number:e=>v(e,e=>e,()=>20),BigNumber:e=>v(e,e=>new g(e),()=>Math.abs(Math.log10(n.relTol))),Complex:y});function v(e,t,n){return s(e,0)?t(-.5):s(e,1)?t(NaN):l(e)?b(e,t,n,e=>e):u(e)?t(NaN):t(1)}function y(e){return e.re===0&&e.im===0?new h(-.5):e.re===1?new h(NaN,NaN):e.re===1/0&&e.im===0?new h(1):e.im===1/0||e.re===-1/0?new h(NaN,NaN):b(e,e=>e,e=>Math.round(1.3*15+.9*Math.abs(e.im)),e=>e.re)}function b(e,t,n,o){var s=n(e);if(o(e)>-(s-1)/2)return S(e,t(s),t);var c=r(i(2,e),i(t(_),p(e,1)));return c=r(c,f(r(a(t(_),2),e))),c=r(c,d(p(1,e))),r(c,b(p(1,e),t,n,o))}function x(e,t){for(var n=e,s=e;c(s,t);s=m(s,1)){var l=a(r(o(m(t,p(s,1))),i(4,s)),r(o(p(t,s)),o(r(2,s))));n=m(n,l)}return r(t,n)}function S(e,t,n){for(var o=a(1,r(x(n(0),t),p(1,i(2,p(1,e))))),s=n(0),l=n(1);c(l,t);l=m(l,1))s=m(s,a(r((-1)**(l-1),x(l,t)),i(l,e)));return r(o,s)}}),cR=`mode`,lR=Z(cR,[`typed`,`isNaN`,`isNumeric`],e=>{var{typed:t,isNaN:n,isNumeric:r}=e;return t(cR,{"Array | Matrix":i,"...":function(e){return i(e)}});function i(e){if(e=_j(e.valueOf()),e.length===0)throw Error(`Cannot calculate mode of an empty array`);for(var t={},i=[],a=0,o=0;oa&&(a=t[s],i=[s])}return i}});function uR(e,t,n){var r;return String(e).includes(`Unexpected type`)?(r=arguments.length>2?` (type: `+pD(n)+`, value: `+JSON.stringify(n)+`)`:` (type: `+e.data.actual+`)`,TypeError(`Cannot calculate `+t+`, unexpected type of argument`+r)):String(e).includes(`complex numbers`)?(r=arguments.length>2?` (type: `+pD(n)+`, value: `+JSON.stringify(n)+`)`:``,TypeError(`Cannot calculate `+t+`, no ordering relation is defined for complex numbers`+r)):e}var dR=`prod`,fR=Z(dR,[`typed`,`config`,`multiplyScalar`,`numeric`],e=>{var{typed:t,config:n,multiplyScalar:r,numeric:i}=e;return t(dR,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":function(e,t){throw Error(`prod(A, dim) is not yet supported`)},"...":function(e){return a(e)}});function a(e){var t;if(qj(e,function(e){try{t=t===void 0?e:r(t,e)}catch(t){throw uR(t,`prod`,e)}}),typeof t==`string`&&(t=i(t,FD(t,n))),t===void 0)throw Error(`Cannot calculate prod of an empty array`);return t}}),pR=`format`,mR=Z(pR,[`typed`],e=>{var{typed:t}=e;return t(pR,{any:GA,"any, Object | function | number | BigNumber":GA})}),hR=`bin`,gR=Z(hR,[`typed`,`format`],e=>{var{typed:t,format:n}=e;return t(hR,{"number | BigNumber":function(e){return n(e,{notation:`bin`})},"number | BigNumber, number | BigNumber":function(e,t){return n(e,{notation:`bin`,wordSize:t})}})}),_R=`oct`,vR=Z(_R,[`typed`,`format`],e=>{var{typed:t,format:n}=e;return t(_R,{"number | BigNumber":function(e){return n(e,{notation:`oct`})},"number | BigNumber, number | BigNumber":function(e,t){return n(e,{notation:`oct`,wordSize:t})}})}),yR=`hex`,bR=Z(yR,[`typed`,`format`],e=>{var{typed:t,format:n}=e;return t(yR,{"number | BigNumber":function(e){return n(e,{notation:`hex`})},"number | BigNumber, number | BigNumber":function(e,t){return n(e,{notation:`hex`,wordSize:t})}})}),xR=/\$([\w.]+)/g,SR=`print`,CR=Z(SR,[`typed`],e=>{var{typed:t}=e;return t(SR,{"string, Object | Array":wR,"string, Object | Array, number | Object":wR})});function wR(e,t,n){return e.replace(xR,function(e,r){var i=r.split(`.`),a=t[i.shift()];for(a!==void 0&&a.isMatrix&&(a=a.toArray());i.length&&a!==void 0;){var o=i.shift();a=o?a[o]:a+`.`}return a===void 0?e:kE(a)?a:GA(a,n)})}var TR=`to`,ER=Z(TR,[`typed`,`matrix`,`concat`],e=>{var{typed:t,matrix:n,concat:r}=e;return t(TR,{"Unit, Unit | string":(e,t)=>e.to(t)},vF({typed:t,matrix:n,concat:r})({Ds:!0}))}),DR=`toBest`,OR=Z(DR,[`typed`],e=>{var{typed:t}=e;return t(DR,{Unit:e=>e.toBest(),"Unit, string":(e,t)=>e.toBest(t.split(`,`)),"Unit, string, Object":(e,t,n)=>e.toBest(t.split(`,`),n),"Unit, Array":(e,t)=>e.toBest(t),"Unit, Array, Object":(e,t,n)=>e.toBest(t,n)})}),kR=`isPrime`,AR=Z(kR,[`typed`],e=>{var{typed:t}=e;return t(kR,{number:function(e){if(e<=3)return e>1;if(e%2==0||e%3==0)return!1;for(var t=5;t*t<=e;t+=6)if(e%t===0||e%(t+2)===0)return!1;return!0},bigint:function(e){if(e<=3n)return e>1n;if(e%2n==0n||e%3n==0n)return!1;for(var t=5n;t*t<=e;t+=6n)if(e%t===0n||e%(t+2n)===0n)return!1;return!0},BigNumber:function(e){if(e.lte(3))return e.gt(1);if(e.mod(2).eq(0)||e.mod(3).eq(0))return!1;if(e.lt(2**32)){for(var t=e.toNumber(),n=5;n*n<=t;n+=6)if(t%n===0||t%(n+2)===0)return!1;return!0}function r(e,t,n){for(var r=1;!t.eq(0);)t.mod(2).eq(0)?(t=t.div(2),e=e.mul(e).mod(n)):(t=t.sub(1),r=e.mul(r).mod(n));return r}e=new(e.constructor.clone({precision:e.toFixed(0).length*2}))(e);for(var i=0,a=e.sub(1);a.mod(2).eq(0);)a=a.div(2),i+=1;var o=null;if(e.lt(`3317044064679887385961981`))o=[2,3,5,7,11,13,17,19,23,29,31,37,41].filter(t=>tt=>Jj(t,e))})}),jR=Z(`numeric`,[`number`,`?bignumber`,`?fraction`],e=>{var{number:t,bignumber:n,fraction:r}=e,i={string:!0,number:!0,BigNumber:!0,Fraction:!0},a={number:e=>t(e),BigNumber:n?e=>n(e):pL,bigint:e=>BigInt(e),Fraction:r?e=>r(e):mL};return function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`number`;if((arguments.length>2?arguments[2]:void 0)!==void 0)throw SyntaxError(`numeric() takes one or two arguments`);var n=pD(e);if(!(n in i))throw TypeError(`Cannot convert `+e+` of type "`+n+`"; valid input types are `+Object.keys(i).join(`, `));if(!(t in a))throw TypeError(`Cannot convert `+e+` to type "`+t+`"; valid output types are `+Object.keys(a).join(`, `));return t===n?e:a[t](e)}}),MR=`divideScalar`,NR=Z(MR,[`typed`,`numeric`],e=>{var{typed:t,numeric:n}=e;return t(MR,{"number, number":function(e,t){return e/t},"Complex, Complex":function(e,t){return e.div(t)},"BigNumber, BigNumber":function(e,t){return e.div(t)},"bigint, bigint":function(e,t){return e/t},"Fraction, Fraction":function(e,t){return e.div(t)},"Unit, number | Complex | Fraction | BigNumber | Unit":(e,t)=>e.divide(t),"number | Fraction | Complex | BigNumber, Unit":(e,t)=>t.divideInto(e)})}),PR=`pow`,FR=Z(PR,[`typed`,`config`,`identity`,`multiply`,`matrix`,`inv`,`fraction`,`number`,`Complex`],e=>{var{typed:t,config:n,identity:r,multiply:i,matrix:a,inv:o,number:s,fraction:c,Complex:l}=e;return t(PR,{"number, number":u,"Complex, Complex":function(e,t){return e.pow(t)},"BigNumber, BigNumber":function(e,t){return t.isInteger()||e>=0||n.predictable?e.pow(t):new l(e.toNumber(),0).pow(t.toNumber(),0)},"bigint, bigint":(e,t)=>e**t,"Fraction, Fraction":function(e,t){var r=e.pow(t);if(r!=null)return r;if(n.predictable)throw Error(`Result of pow is non-rational and cannot be expressed as a fraction`);return u(e.valueOf(),t.valueOf())},"Array, number":d,"Array, BigNumber":function(e,t){return d(e,t.toNumber())},"Matrix, number":f,"Matrix, BigNumber":function(e,t){return f(e,t.toNumber())},"Unit, number | BigNumber":function(e,t){return e.pow(t)}});function u(e,t){if(n.predictable&&!PD(t)&&e<0)try{var r=c(t),i=s(r);if((t===i||Math.abs((t-i)/t)<1e-14)&&r.d%2n==1n)return(r.n%2n==0n?1:-1)*(-e)**+t}catch{}return n.predictable&&(e<-1&&t===1/0||e>-1&&e<0&&t===-1/0)?NaN:PD(t)||e>=0||n.predictable?TM(e,t):e*e<1&&t===1/0||e*e>1&&t===-1/0?0:new l(e,0).pow(t,0)}function d(e,t){if(!PD(t))throw TypeError(`For A^b, b must be an integer (value is `+t+`)`);var n=tj(e);if(n.length!==2)throw Error(`For A^b, A must be 2 dimensional (A has `+n.length+` dimensions)`);if(n[0]!==n[1])throw Error(`For A^b, A must be square (size is `+n[0]+`x`+n[1]+`)`);if(t<0)try{return d(o(e),-t)}catch(e){throw e.message===`Cannot calculate inverse, determinant is zero`?TypeError(`For A^b, when A is not invertible, b must be a positive integer (value is `+t+`)`):e}for(var a=r(n[0]).valueOf(),s=e;t>=1;)(t&1)==1&&(a=i(s,a)),t>>=1,s=i(s,s);return a}function f(e,t){return a(d(e.valueOf(),t))}}),IR=`Number of decimals in function round must be an integer`,LR=`round`,RR=Z(LR,[`typed`,`config`,`matrix`,`equalScalar`,`zeros`,`BigNumber`,`DenseMatrix`],e=>{var{typed:t,config:n,matrix:r,equalScalar:i,zeros:a,BigNumber:o,DenseMatrix:s}=e,c=UP({typed:t,equalScalar:i}),l=WP({typed:t,DenseMatrix:s}),u=GP({typed:t});function d(e){return Math.abs(GD(e).exponent)}return t(LR,{number:function(e){var t=EM(e,d(n.relTol));return EM($D(e,t,n.relTol,n.absTol)?t:e)},"number, number":function(e,t){var r=d(n.relTol);if(t>=r)return EM(e,t);var i=EM(e,r);return EM($D(e,i,n.relTol,n.absTol)?i:e,t)},"number, BigNumber":function(e,t){if(!t.isInteger())throw TypeError(IR);return new o(e).toDecimalPlaces(t.toNumber())},Complex:function(e){return e.round()},"Complex, number":function(e,t){if(t%1)throw TypeError(IR);return e.round(t)},"Complex, BigNumber":function(e,t){if(!t.isInteger())throw TypeError(IR);var n=t.toNumber();return e.round(n)},BigNumber:function(e){var t=new o(e).toDecimalPlaces(d(n.relTol));return(PN(e,t,n.relTol,n.absTol)?t:e).toDecimalPlaces(0)},"BigNumber, BigNumber":function(e,t){if(!t.isInteger())throw TypeError(IR);var r=d(n.relTol);if(t>=r)return e.toDecimalPlaces(t.toNumber());var i=e.toDecimalPlaces(r);return(PN(e,i,n.relTol,n.absTol)?i:e).toDecimalPlaces(t.toNumber())},bigint:e=>e,"bigint, number":(e,t)=>e,"bigint, BigNumber":(e,t)=>e,Fraction:function(e){return e.round()},"Fraction, number":function(e,t){if(t%1)throw TypeError(IR);return e.round(t)},"Fraction, BigNumber":function(e,t){if(!t.isInteger())throw TypeError(IR);return e.round(t.toNumber())},"Unit, number, Unit":t.referToSelf(e=>function(t,n,r){var i=t.toNumeric(r);return r.multiply(e(i,n))}),"Unit, BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>e(t,n.toNumber(),r)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(e=>(t,n,r)=>Jj(t,t=>e(t,n,r),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(e=>(t,n)=>e(t,0,n)),"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e,!0)),"SparseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>c(t,n,e,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>u(t,n,e,!1)),"Array, number | BigNumber":t.referToSelf(e=>(t,n)=>u(r(t),n,e,!1).valueOf()),"number | Complex | BigNumber | Fraction, SparseMatrix":t.referToSelf(e=>(t,n)=>i(t,0)?a(n.size(),n.storage()):l(n,t,e,!0)),"number | Complex | BigNumber | Fraction, DenseMatrix":t.referToSelf(e=>(t,n)=>i(t,0)?a(n.size(),n.storage()):u(n,t,e,!0)),"number | Complex | BigNumber | Fraction, Array":t.referToSelf(e=>(t,n)=>u(r(n),t,e,!0).valueOf())})}),zR=`log`,BR=[`config`,`typed`,`typeOf`,`divideScalar`,`Complex`],VR=Math.log(16),HR=Z(zR,BR,e=>{var{typed:t,typeOf:n,config:r,divideScalar:i,Complex:a}=e;function o(e){return e.log()}function s(e){return o(new a(e,0))}return t(zR,{number:function(e){return e>=0||r.predictable?hM(e):s(e)},bigint:PF(VR,hM,r,s),Complex:o,BigNumber:function(e){return!e.isNegative()||r.predictable?e.ln():s(e.toNumber())},"any, any":t.referToSelf(e=>(t,r)=>{if(n(t)===`Fraction`&&n(r)===`Fraction`){var a=t.log(r);if(a!==null)return a}return i(e(t),e(r))})})}),UR=`log1p`,WR=Z(UR,[`typed`,`config`,`divideScalar`,`log`,`Complex`],e=>{var{typed:t,config:n,divideScalar:r,log:i,Complex:a}=e;return t(UR,{number:function(e){return e>=-1||n.predictable?zD(e):o(new a(e,0))},Complex:o,BigNumber:function(e){var t=e.plus(1);return!t.isNegative()||n.predictable?t.ln():o(new a(e.toNumber(),0))},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e)),"any, any":t.referToSelf(e=>(t,n)=>r(e(t),i(n)))});function o(e){var t=e.re+1;return new a(Math.log(Math.sqrt(t*t+e.im*e.im)),Math.atan2(e.im,t))}}),GR=`nthRoots`,KR=Z(GR,[`config`,`typed`,`divideScalar`,`Complex`],e=>{var{typed:t,config:n,divideScalar:r,Complex:i}=e,a=[function(e){return new i(e,0)},function(e){return new i(0,e)},function(e){return new i(-e,0)},function(e){return new i(0,-e)}];function o(e,t){if(t<0)throw Error(`Root must be greater than zero`);if(t===0)throw Error(`Root must be non-zero`);if(t%1!=0)throw Error(`Root must be an integer`);if(e===0||e.abs()===0)return[new i(0,0)];var n=typeof e==`number`,r;(n||e.re===0||e.im===0)&&(r=n?2*(e<0):e.im===0?2*(e.re<0):2*(e.im<0)+1);for(var o=e.arg(),s=e.abs(),c=[],l=s**(1/t),u=0;u{var{typed:t,equalScalar:n,matrix:r,pow:i,DenseMatrix:a,concat:o,SparseMatrix:s}=e,c=pF({typed:t}),l=bI({typed:t,SparseMatrix:s}),u=UP({typed:t,equalScalar:n}),d=WP({typed:t,DenseMatrix:a}),f=vF({typed:t,matrix:r,concat:o}),p={};for(var m in i.signatures)Object.prototype.hasOwnProperty.call(i.signatures,m)&&!m.includes(`Matrix`)&&!m.includes(`Array`)&&(p[m]=i.signatures[m]);return t(qR,f({elop:t(p),SS:l,DS:c,Ss:u,sS:d}))}),YR=`dotDivide`,XR=Z(YR,[`typed`,`matrix`,`equalScalar`,`divideScalar`,`DenseMatrix`,`concat`,`SparseMatrix`],e=>{var{typed:t,matrix:n,equalScalar:r,divideScalar:i,DenseMatrix:a,concat:o,SparseMatrix:s}=e,c=fF({typed:t,equalScalar:r}),l=pF({typed:t}),u=bI({typed:t,SparseMatrix:s}),d=UP({typed:t,equalScalar:r}),f=WP({typed:t,DenseMatrix:a});return t(YR,vF({typed:t,matrix:n,concat:o})({elop:i,SS:u,DS:l,SD:c,Ss:d,sS:f}))});function ZR(e){var{DenseMatrix:t}=e;return function(e,n,r){var i=e.size();if(i.length!==2)throw RangeError(`Matrix must be two dimensional (size: `+GA(i)+`)`);var a=i[0];if(a!==i[1])throw RangeError(`Matrix must be square (size: `+GA(i)+`)`);var o=[];if(jE(n)){var s=n.size(),c=n._data;if(s.length===1){if(s[0]!==a)throw RangeError(`Dimension mismatch. Matrix columns must match vector length.`);for(var l=0;l{var{typed:t,matrix:n,divideScalar:r,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,c=ZR({DenseMatrix:s});return t(QR,{"SparseMatrix, Array | Matrix":function(e,t){return u(e,t)},"DenseMatrix, Array | Matrix":function(e,t){return l(e,t)},"Array, Array | Matrix":function(e,t){return l(n(e),t).valueOf()}});function l(e,t){t=c(e,t,!0);for(var n=t._data,l=e._size[0],u=e._size[1],d=[],f=e._data,p=0;ph&&(v.push(d[S]),y.push(C))}if(o(_,0))throw Error(`Linear system cannot be solved since matrix is singular`);for(var w=r(g,_),T=0,E=y.length;T{var{typed:t,matrix:n,divideScalar:r,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,c=ZR({DenseMatrix:s});return t(ez,{"SparseMatrix, Array | Matrix":function(e,t){return u(e,t)},"DenseMatrix, Array | Matrix":function(e,t){return l(e,t)},"Array, Array | Matrix":function(e,t){return l(n(e),t).valueOf()}});function l(e,t){t=c(e,t,!0);for(var n=t._data,l=e._size[0],u=e._size[1],d=[],f=e._data,p=u-1;p>=0;p--){var m=n[p][0]||0,h=void 0;if(o(m,0))h=0;else{var g=f[p][p];if(o(g,0))throw Error(`Linear system cannot be solved since matrix is singular`);h=r(m,g);for(var _=p-1;_>=0;_--)n[_]=[a(n[_][0]||0,i(h,f[_][p]))]}d[p]=[h]}return new s({data:d,size:[l,1]})}function u(e,t){t=c(e,t,!0);for(var n=t._data,l=e._size[0],u=e._size[1],d=e._values,f=e._index,p=e._ptr,m=[],h=u-1;h>=0;h--){var g=n[h][0]||0;if(o(g,0))m[h]=[0];else{for(var _=0,v=[],y=[],b=p[h],x=p[h+1]-1;x>=b;x--){var S=f[x];S===h?_=d[x]:S{var{typed:t,matrix:n,divideScalar:r,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,c=ZR({DenseMatrix:s});return t(nz,{"SparseMatrix, Array | Matrix":function(e,t){return u(e,t)},"DenseMatrix, Array | Matrix":function(e,t){return l(e,t)},"Array, Array | Matrix":function(e,t){return l(n(e),t).map(e=>e.valueOf())}});function l(e,t){for(var n=[c(e,t,!0)._data.map(e=>e[0])],l=e._data,u=e._size[0],d=e._size[1],f=0;fnew s({data:e.map(e=>[e]),size:[u,1]}))}function u(e,t){for(var n=[c(e,t,!0)._data.map(e=>e[0])],l=e._size[0],u=e._size[1],d=e._values,f=e._index,p=e._ptr,m=0;mm&&(v.push(d[C]),y.push(w))}if(!o(S,0)){_[m]=r(_[m],S);for(var T=0,E=y.length;Tnew s({data:e.map(e=>[e]),size:[l,1]}))}}),iz=`usolveAll`,az=Z(iz,[`typed`,`matrix`,`divideScalar`,`multiplyScalar`,`subtractScalar`,`equalScalar`,`DenseMatrix`],e=>{var{typed:t,matrix:n,divideScalar:r,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,c=ZR({DenseMatrix:s});return t(iz,{"SparseMatrix, Array | Matrix":function(e,t){return u(e,t)},"DenseMatrix, Array | Matrix":function(e,t){return l(e,t)},"Array, Array | Matrix":function(e,t){return l(n(e),t).map(e=>e.valueOf())}});function l(e,t){for(var n=[c(e,t,!0)._data.map(e=>e[0])],l=e._data,u=e._size[0],d=e._size[1]-1;d>=0;d--)for(var f=n.length,p=0;p=0;h--)m[h]=a(m[h],i(m[d],l[h][d]))}else if(!o(m[d],0)){if(p===0)return[];n.splice(p,1),--p,--f}else if(p===0){var g=[...m];g[d]=1;for(var _=d-1;_>=0;_--)g[_]=a(g[_],l[_][d]);n.push(g)}}return n.map(e=>new s({data:e.map(e=>[e]),size:[u,1]}))}function u(e,t){for(var n=[c(e,t,!0)._data.map(e=>e[0])],l=e._size[0],u=e._size[1],d=e._values,f=e._index,p=e._ptr,m=u-1;m>=0;m--)for(var h=n.length,g=0;g=b;C--){var w=f[C];w===m?S=d[C]:wnew s({data:e.map(e=>[e]),size:[l,1]}))}}),oz=Z(`matAlgo08xS0Sid`,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return function(e,r,i){var a=e._values,o=e._index,s=e._ptr,c=e._size,l=e._datatype||e._data===void 0?e._datatype:e.getDataType(),u=r._values,d=r._index,f=r._ptr,p=r._size,m=r._datatype||r._data===void 0?r._datatype:r.getDataType();if(c.length!==p.length)throw new $A(c.length,p.length);if(c[0]!==p[0]||c[1]!==p[1])throw RangeError(`Dimension mismatch. Matrix A (`+c+`) must match Matrix B (`+p+`)`);if(!a||!u)throw Error(`Cannot perform operation on Pattern Sparse Matrices`);var h=c[0],g=c[1],_,v=n,y=0,b=i;typeof l==`string`&&l===m&&l!==`mixed`&&(_=l,v=t.find(n,[_,_]),y=t.convert(0,_),b=t.find(i,[_,_]));for(var x=[],S=[],C=[],w=[],T=[],E,D,O,k,A=0;A{var{typed:t,matrix:n}=e;return{"Array, number":t.referTo(`DenseMatrix, number`,e=>(t,r)=>e(n(t),r).valueOf()),"Array, BigNumber":t.referTo(`DenseMatrix, BigNumber`,e=>(t,r)=>e(n(t),r).valueOf()),"number, Array":t.referTo(`number, DenseMatrix`,e=>(t,r)=>e(t,n(r)).valueOf()),"BigNumber, Array":t.referTo(`BigNumber, DenseMatrix`,e=>(t,r)=>e(t,n(r)).valueOf())}}),cz=`leftShift`,lz=Z(cz,[`typed`,`matrix`,`equalScalar`,`zeros`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,zeros:i,DenseMatrix:a,concat:o}=e,s=xF({typed:t}),c=fF({typed:t,equalScalar:r}),l=oz({typed:t,equalScalar:r}),u=CF({typed:t,DenseMatrix:a}),d=UP({typed:t,equalScalar:r}),f=GP({typed:t}),p=vF({typed:t,matrix:n,concat:o}),m=sz({typed:t,matrix:n});return t(cz,{"number, number":PM,"BigNumber, BigNumber":fI,"bigint, bigint":(e,t)=>e<(t,n)=>r(n,0)?t.clone():d(t,n,e,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>r(n,0)?t.clone():f(t,n,e,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(e=>(t,n)=>r(t,0)?i(n.size(),n.storage()):u(n,t,e,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(e=>(t,n)=>r(t,0)?i(n.size(),n.storage()):f(n,t,e,!0))},m,p({SS:l,DS:s,SD:c}))}),uz=`rightArithShift`,dz=Z(uz,[`typed`,`matrix`,`equalScalar`,`zeros`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,zeros:i,DenseMatrix:a,concat:o}=e,s=xF({typed:t}),c=fF({typed:t,equalScalar:r}),l=oz({typed:t,equalScalar:r}),u=CF({typed:t,DenseMatrix:a}),d=UP({typed:t,equalScalar:r}),f=GP({typed:t}),p=vF({typed:t,matrix:n,concat:o}),m=sz({typed:t,matrix:n});return t(uz,{"number, number":FM,"BigNumber, BigNumber":pI,"bigint, bigint":(e,t)=>e>>t,"SparseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>r(n,0)?t.clone():d(t,n,e,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>r(n,0)?t.clone():f(t,n,e,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(e=>(t,n)=>r(t,0)?i(n.size(),n.storage()):u(n,t,e,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(e=>(t,n)=>r(t,0)?i(n.size(),n.storage()):f(n,t,e,!0))},m,p({SS:l,DS:s,SD:c}))}),fz=`rightLogShift`,pz=Z(fz,[`typed`,`matrix`,`equalScalar`,`zeros`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,zeros:i,DenseMatrix:a,concat:o}=e,s=xF({typed:t}),c=fF({typed:t,equalScalar:r}),l=oz({typed:t,equalScalar:r}),u=CF({typed:t,DenseMatrix:a}),d=UP({typed:t,equalScalar:r}),f=GP({typed:t}),p=vF({typed:t,matrix:n,concat:o}),m=sz({typed:t,matrix:n});return t(fz,{"number, number":IM,"SparseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>r(n,0)?t.clone():d(t,n,e,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(e=>(t,n)=>r(n,0)?t.clone():f(t,n,e,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(e=>(t,n)=>r(t,0)?i(n.size(),n.storage()):u(n,t,e,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(e=>(t,n)=>r(t,0)?i(n.size(),n.storage()):f(n,t,e,!0))},m,p({SS:l,DS:s,SD:c}))}),mz=`and`,hz=Z(mz,[`typed`,`matrix`,`equalScalar`,`zeros`,`not`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,zeros:i,not:a,concat:o}=e,s=fF({typed:t,equalScalar:r}),c=jF({typed:t,equalScalar:r}),l=UP({typed:t,equalScalar:r}),u=GP({typed:t}),d=vF({typed:t,matrix:n,concat:o});return t(mz,{"number, number":JM,"Complex, Complex":function(e,t){return(e.re!==0||e.im!==0)&&(t.re!==0||t.im!==0)},"BigNumber, BigNumber":function(e,t){return!e.isZero()&&!t.isZero()&&!e.isNaN()&&!t.isNaN()},"bigint, bigint":JM,"Unit, Unit":t.referToSelf(e=>(t,n)=>e(t.value||0,n.value||0)),"SparseMatrix, any":t.referToSelf(e=>(t,n)=>a(n)?i(t.size(),t.storage()):l(t,n,e,!1)),"DenseMatrix, any":t.referToSelf(e=>(t,n)=>a(n)?i(t.size(),t.storage()):u(t,n,e,!1)),"any, SparseMatrix":t.referToSelf(e=>(t,n)=>a(t)?i(t.size(),t.storage()):l(n,t,e,!0)),"any, DenseMatrix":t.referToSelf(e=>(t,n)=>a(t)?i(t.size(),t.storage()):u(n,t,e,!0)),"Array, any":t.referToSelf(e=>(t,r)=>e(n(t),r).valueOf()),"any, Array":t.referToSelf(e=>(t,r)=>e(t,n(r)).valueOf())},d({SS:c,DS:s}))}),gz=`compare`,_z=Z(gz,[`typed`,`config`,`matrix`,`equalScalar`,`BigNumber`,`Fraction`,`DenseMatrix`,`concat`],e=>{var{typed:t,config:n,equalScalar:r,matrix:i,BigNumber:a,Fraction:o,DenseMatrix:s,concat:c}=e,l=pF({typed:t}),u=mF({typed:t,equalScalar:r}),d=WP({typed:t,DenseMatrix:s}),f=vF({typed:t,matrix:i,concat:c}),p=eP({typed:t});return t(gz,vz({typed:t,config:n}),{"boolean, boolean":function(e,t){return e===t?0:e>t?1:-1},"BigNumber, BigNumber":function(e,t){return PN(e,t,n.relTol,n.absTol)?new a(0):new a(e.cmp(t))},"bigint, bigint":function(e,t){return e===t?0n:e>t?1n:-1n},"Fraction, Fraction":function(e,t){return new o(e.compare(t))},"Complex, Complex":function(){throw TypeError(`No ordering relation is defined for complex numbers`)}},p,f({SS:u,DS:l,Ss:d}))}),vz=Z(gz,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(gz,{"number, number":function(e,t){return $D(e,t,n.relTol,n.absTol)?0:e>t?1:-1}})}),yz=l(o(((e,t)=>{t.exports=function e(t,n){"use strict";var r=/(^([+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi,i=/(^[ ]*|[ ]*$)/g,a=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,o=/^0x[0-9a-f]+$/i,s=/^0/,c=function(t){return e.insensitive&&(``+t).toLowerCase()||``+t},l=c(t).replace(i,``)||``,u=c(n).replace(i,``)||``,d=l.replace(r,`\0$1\0`).replace(/\0$/,``).replace(/^\0/,``).split(`\0`),f=u.replace(r,`\0$1\0`).replace(/\0$/,``).replace(/^\0/,``).split(`\0`),p=parseInt(l.match(o),16)||d.length!==1&&l.match(a)&&Date.parse(l),m=parseInt(u.match(o),16)||p&&u.match(a)&&Date.parse(u)||null,h,g;if(m){if(pm)return 1}for(var _=0,v=Math.max(d.length,f.length);_g)return 1}return 0}}))(),1),bz=`compareNatural`,xz=Z(bz,[`typed`,`compare`],e=>{var{typed:t,compare:n}=e,r=n.signatures[`boolean,boolean`];return t(bz,{"any, any":i});function i(e,t){var c=pD(e),l=pD(t),u;if((c===`number`||c===`BigNumber`||c===`Fraction`||c===`bigint`)&&(l===`number`||l===`BigNumber`||l===`Fraction`||l===`bigint`))return u=n(e,t),u.toString()===`0`?(0,yz.default)(c,l):u>0?1:-1;var d=[`Array`,`DenseMatrix`,`SparseMatrix`];if(d.includes(c)||d.includes(l))return u=a(i,e,t),u===0?(0,yz.default)(c,l):u;if(c!==l)return(0,yz.default)(c,l);if(c===`Complex`)return Sz(e,t);if(c===`Unit`)return e.equalBase(t)?i(e.value,t.value):o(i,e.formatUnits(),t.formatUnits());if(c===`boolean`)return r(e,t);if(c===`string`)return(0,yz.default)(e,t);if(c===`Object`)return s(i,e,t);if(c===`null`||c===`undefined`)return 0;throw TypeError(`Unsupported type of value "`+c+`"`)}function a(e,t,n){return PE(t)&&PE(n)?o(e,t.toJSON().values,n.toJSON().values):PE(t)?a(e,t.toArray(),n):PE(n)?a(e,t,n.toArray()):NE(t)?a(e,t.toJSON().data,n):NE(n)?a(e,t,n.toJSON().data):Array.isArray(t)?Array.isArray(n)?o(e,t,n):a(e,t,[n]):a(e,[t],n)}function o(e,t,n){for(var r=0,i=Math.min(t.length,n.length);rn.length?1:t.lengtht.re?1:e.ret.im?1:e.im{var{typed:t,matrix:n,concat:r}=e;return t(Cz,QA,vF({typed:t,matrix:n,concat:r})({elop:QA,Ds:!0}))}),Ez=`equal`,Dz=Z(Ez,[`typed`,`matrix`,`equalScalar`,`DenseMatrix`,`SparseMatrix`],e=>{var{typed:t,matrix:n,equalScalar:r,DenseMatrix:i,concat:a,SparseMatrix:o}=e,s=pF({typed:t}),c=bI({typed:t,SparseMatrix:o}),l=WP({typed:t,DenseMatrix:i}),u=vF({typed:t,matrix:n});return t(Ez,Oz({typed:t,equalScalar:r}),u({elop:r,SS:c,DS:s,Ss:l}))}),Oz=Z(Ez,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return t(Ez,{"any, any":function(e,t){return e===null?t===null:t===null?e===null:e===void 0?t===void 0:t===void 0?e===void 0:n(e,t)}})}),kz=`equalText`,Az=Z(kz,[`typed`,`compareText`,`isZero`],e=>{var{typed:t,compareText:n,isZero:r}=e;return t(kz,{"any, any":function(e,t){return r(n(e,t))}})}),jz=`smaller`,Mz=Z(jz,[`typed`,`config`,`bignumber`,`matrix`,`DenseMatrix`,`concat`,`SparseMatrix`],e=>{var{typed:t,config:n,bignumber:r,matrix:i,DenseMatrix:a,concat:o,SparseMatrix:s}=e,c=pF({typed:t}),l=bI({typed:t,SparseMatrix:s}),u=WP({typed:t,DenseMatrix:a}),d=vF({typed:t,matrix:i,concat:o}),f=eP({typed:t});function p(e,t){return e.lt(t)&&!PN(e,t,n.relTol,n.absTol)}return t(jz,Nz({typed:t,config:n}),{"boolean, boolean":(e,t)=>eee.compare(t)===-1,"Fraction, BigNumber":function(e,t){return p(r(e),t)},"BigNumber, Fraction":function(e,t){return p(e,r(t))},"Complex, Complex":function(e,t){throw TypeError(`No ordering relation is defined for complex numbers`)}},f,d({SS:l,DS:c,Ss:u}))}),Nz=Z(jz,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(jz,{"number, number":function(e,t){return e{var{typed:t,config:n,matrix:r,DenseMatrix:i,concat:a,SparseMatrix:o}=e,s=pF({typed:t}),c=bI({typed:t,SparseMatrix:o}),l=WP({typed:t,DenseMatrix:i}),u=vF({typed:t,matrix:r,concat:a}),d=eP({typed:t});return t(Pz,Iz({typed:t,config:n}),{"boolean, boolean":(e,t)=>e<=t,"BigNumber, BigNumber":function(e,t){return e.lte(t)||PN(e,t,n.relTol,n.absTol)},"bigint, bigint":(e,t)=>e<=t,"Fraction, Fraction":(e,t)=>e.compare(t)!==1,"Complex, Complex":function(){throw TypeError(`No ordering relation is defined for complex numbers`)}},d,u({SS:c,DS:s,Ss:l}))}),Iz=Z(Pz,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(Pz,{"number, number":function(e,t){return e<=t||$D(e,t,n.relTol,n.absTol)}})}),Lz=`larger`,Rz=Z(Lz,[`typed`,`config`,`bignumber`,`matrix`,`DenseMatrix`,`concat`,`SparseMatrix`],e=>{var{typed:t,config:n,bignumber:r,matrix:i,DenseMatrix:a,concat:o,SparseMatrix:s}=e,c=pF({typed:t}),l=bI({typed:t,SparseMatrix:s}),u=WP({typed:t,DenseMatrix:a}),d=vF({typed:t,matrix:i,concat:o}),f=eP({typed:t});function p(e,t){return e.gt(t)&&!PN(e,t,n.relTol,n.absTol)}return t(Lz,zz({typed:t,config:n}),{"boolean, boolean":(e,t)=>e>t,"BigNumber, BigNumber":p,"bigint, bigint":(e,t)=>e>t,"Fraction, Fraction":(e,t)=>e.compare(t)===1,"Fraction, BigNumber":function(e,t){return p(r(e),t)},"BigNumber, Fraction":function(e,t){return p(e,r(t))},"Complex, Complex":function(){throw TypeError(`No ordering relation is defined for complex numbers`)}},f,d({SS:l,DS:c,Ss:u}))}),zz=Z(Lz,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(Lz,{"number, number":function(e,t){return e>t&&!$D(e,t,n.relTol,n.absTol)}})}),Bz=`largerEq`,Vz=Z(Bz,[`typed`,`config`,`matrix`,`DenseMatrix`,`concat`,`SparseMatrix`],e=>{var{typed:t,config:n,matrix:r,DenseMatrix:i,concat:a,SparseMatrix:o}=e,s=pF({typed:t}),c=bI({typed:t,SparseMatrix:o}),l=WP({typed:t,DenseMatrix:i}),u=vF({typed:t,matrix:r,concat:a}),d=eP({typed:t});return t(Bz,Hz({typed:t,config:n}),{"boolean, boolean":(e,t)=>e>=t,"BigNumber, BigNumber":function(e,t){return e.gte(t)||PN(e,t,n.relTol,n.absTol)},"bigint, bigint":function(e,t){return e>=t},"Fraction, Fraction":(e,t)=>e.compare(t)!==-1,"Complex, Complex":function(){throw TypeError(`No ordering relation is defined for complex numbers`)}},d,u({SS:c,DS:s,Ss:l}))}),Hz=Z(Bz,[`typed`,`config`],e=>{var{typed:t,config:n}=e;return t(Bz,{"number, number":function(e,t){return e>=t||$D(e,t,n.relTol,n.absTol)}})}),Uz=`deepEqual`,Wz=Z(Uz,[`typed`,`equal`],e=>{var{typed:t,equal:n}=e;return t(Uz,{"any, any":function(e,t){return r(e.valueOf(),t.valueOf())}});function r(e,t){if(Array.isArray(e))if(Array.isArray(t)){var i=e.length;if(i!==t.length)return!1;for(var a=0;a{var{typed:t,config:n,equalScalar:r,matrix:i,DenseMatrix:a,concat:o,SparseMatrix:s}=e,c=pF({typed:t}),l=bI({typed:t,SparseMatrix:s}),u=WP({typed:t,DenseMatrix:a}),d=vF({typed:t,matrix:i,concat:o});return t(Gz,qz({typed:t,equalScalar:r}),d({elop:f,SS:l,DS:c,Ss:u}));function f(e,t){return!r(e,t)}}),qz=Z(Gz,[`typed`,`equalScalar`],e=>{var{typed:t,equalScalar:n}=e;return t(Gz,{"any, any":function(e,t){return e===null?t!==null:t===null?e!==null:e===void 0?t!==void 0:t===void 0?e!==void 0:!n(e,t)}})}),Jz=`partitionSelect`,Yz=Z(Jz,[`typed`,`isNumeric`,`isNaN`,`compare`],e=>{var{typed:t,isNumeric:n,isNaN:r,compare:i}=e,a=i,o=(e,t)=>-i(e,t);return t(Jz,{"Array | Matrix, number":function(e,t){return s(e,t,a)},"Array | Matrix, number, string":function(e,t,n){if(n===`asc`)return s(e,t,a);if(n===`desc`)return s(e,t,o);throw Error(`Compare string must be "asc" or "desc"`)},"Array | Matrix, number, function":s});function s(e,t,n){if(!PD(t)||t<0)throw Error(`k must be a non-negative integer`);if(jE(e)){if(e.size().length>1)throw Error(`Only one dimensional matrices supported`);return c(e.valueOf(),t,n)}if(Array.isArray(e))return c(e,t,n)}function c(e,t,i){if(t>=e.length)throw Error(`k out of bounds`);for(var a=0;a=0){var d=e[l];e[l]=e[c],e[c]=d,--l}else ++c;i(e[c],u)>0&&--c,t<=c?s=c:o=c+1}return e[t]}}),Xz=`sort`,Zz=Z(Xz,[`typed`,`matrix`,`compare`,`compareNatural`],e=>{var{typed:t,matrix:n,compare:r,compareNatural:i}=e,a=r,o=(e,t)=>-r(e,t);return t(Xz,{Array:function(e){return c(e),e.sort(a)},Matrix:function(e){return l(e),n(e.toArray().sort(a),e.storage())},"Array, function":function(e,t){return c(e),e.sort(t)},"Matrix, function":function(e,t){return l(e),n(e.toArray().sort(t),e.storage())},"Array, string":function(e,t){return c(e),e.sort(s(t))},"Matrix, string":function(e,t){return l(e),n(e.toArray().sort(s(t)),e.storage())}});function s(e){if(e===`asc`)return a;if(e===`desc`)return o;if(e===`natural`)return i;throw Error(`String "asc", "desc", or "natural" expected`)}function c(e){if(tj(e).length!==1)throw Error(`One dimensional array expected`)}function l(e){if(e.size().length!==1)throw Error(`One dimensional matrix expected`)}}),Qz=`max`,$z=Z(Qz,[`typed`,`config`,`numeric`,`larger`,`isNaN`],e=>{var{typed:t,config:n,numeric:r,larger:i,isNaN:a}=e;return t(Qz,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":function(e,t){return Yj(e,t.valueOf(),o)},"...":function(e){if(Kj(e))throw TypeError(`Scalar values expected in function max`);return s(e)}});function o(e,t){try{return i(e,t)?e:t}catch(e){throw uR(e,`max`,t)}}function s(e){var t;if(qj(e,function(e){try{(a(e)||t===void 0||i(e,t))&&(t=e)}catch(t){throw uR(t,`max`,e)}}),t===void 0)throw Error(`Cannot calculate max of an empty array`);return typeof t==`string`&&(t=r(t,FD(t,n))),t}}),eB=`min`,tB=Z(eB,[`typed`,`config`,`numeric`,`smaller`,`isNaN`],e=>{var{typed:t,config:n,numeric:r,smaller:i,isNaN:a}=e;return t(eB,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":function(e,t){return Yj(e,t.valueOf(),o)},"...":function(e){if(Kj(e))throw TypeError(`Scalar values expected in function min`);return s(e)}});function o(e,t){try{return i(e,t)?e:t}catch(e){throw uR(e,`min`,t)}}function s(e){var t;if(qj(e,function(e){try{(a(e)||t===void 0||i(e,t))&&(t=e)}catch(t){throw uR(t,`min`,e)}}),t===void 0)throw Error(`Cannot calculate min of an empty array`);return typeof t==`string`&&(t=r(t,FD(t,n))),t}}),nB=Z(`ImmutableDenseMatrix`,[`smaller`,`DenseMatrix`],e=>{var{smaller:t,DenseMatrix:n}=e;function r(e,t){if(!(this instanceof r))throw SyntaxError(`Constructor must be called with the new operator`);if(t&&!kE(t))throw Error(`Invalid datatype: `+t);if(jE(e)||AE(e)){var i=new n(e,t);this._data=i._data,this._size=i._size,this._datatype=i._datatype,this._min=null,this._max=null}else if(e&&AE(e.data)&&AE(e.size))this._data=e.data,this._size=e.size,this._datatype=e.datatype,this._min=e.min===void 0?null:e.min,this._max=e.max===void 0?null:e.max;else if(e)throw TypeError(`Unsupported type of data (`+pD(e)+`)`);else this._data=[],this._size=[0],this._datatype=t,this._min=null,this._max=null}return r.prototype=new n,r.prototype.type=`ImmutableDenseMatrix`,r.prototype.isImmutableDenseMatrix=!0,r.prototype.subset=function(e){switch(arguments.length){case 1:var t=n.prototype.subset.call(this,e);return jE(t)?new r({data:t._data,size:t._size,datatype:t._datatype}):t;case 2:case 3:throw Error(`Cannot invoke set subset on an Immutable Matrix instance`);default:throw SyntaxError(`Wrong number of arguments`)}},r.prototype.set=function(){throw Error(`Cannot invoke set on an Immutable Matrix instance`)},r.prototype.resize=function(){throw Error(`Cannot invoke resize on an Immutable Matrix instance`)},r.prototype.reshape=function(){throw Error(`Cannot invoke reshape on an Immutable Matrix instance`)},r.prototype.clone=function(){return new r({data:mD(this._data),size:mD(this._size),datatype:this._datatype})},r.prototype.toJSON=function(){return{mathjs:`ImmutableDenseMatrix`,data:this._data,size:this._size,datatype:this._datatype}},r.fromJSON=function(e){return new r(e)},r.prototype.swapRows=function(){throw Error(`Cannot invoke swapRows on an Immutable Matrix instance`)},r.prototype.min=function(){if(this._min===null){var e=null;this.forEach(function(n){(e===null||t(n,e))&&(e=n)}),this._min=e===null?void 0:e}return this._min},r.prototype.max=function(){if(this._max===null){var e=null;this.forEach(function(n){(e===null||t(e,n))&&(e=n)}),this._max=e===null?void 0:e}return this._max},r},{isClass:!0}),rB=Z(`Index`,[`ImmutableDenseMatrix`,`getMatrixDataType`],e=>{var{ImmutableDenseMatrix:t,getMatrixDataType:n}=e;function r(){if(!(this instanceof r))throw SyntaxError(`Constructor must be called with the new operator`);this._dimensions=[],this._sourceSize=[],this._isScalar=!0;for(var e=0,t=arguments.length;e{e&&t.push(n)}),t}var aB=Z(`FibonacciHeap`,[`smaller`,`larger`],e=>{var{smaller:t,larger:n}=e,r=1/Math.log((1+Math.sqrt(5))/2);function i(){if(!(this instanceof i))throw SyntaxError(`Constructor must be called with the new operator`);this._minimum=null,this._size=0}i.prototype.type=`FibonacciHeap`,i.prototype.isFibonacciHeap=!0,i.prototype.insert=function(e,n){var r={key:e,value:n,degree:0};if(this._minimum){var i=this._minimum;r.left=i,r.right=i.right,i.right=r,r.right.left=r,t(e,i.key)&&(this._minimum=r)}else r.left=r,r.right=r,this._minimum=r;return this._size++,r},i.prototype.size=function(){return this._size},i.prototype.clear=function(){this._minimum=null,this._size=0},i.prototype.isEmpty=function(){return this._size===0},i.prototype.extractMinimum=function(){var e=this._minimum;if(e===null)return e;for(var t=this._minimum,n=e.degree,r=e.child;n>0;){var i=r.right;r.left.right=r.right,r.right.left=r.left,r.left=t,r.right=t.right,t.right=r,r.right.left=r,r.parent=null,r=i,n--}return e.left.right=e.right,e.right.left=e.left,e===e.right?t=null:(t=e.right,t=l(t,this._size)),this._size--,this._minimum=t,e},i.prototype.remove=function(e){this._minimum=a(this._minimum,e,-1),this.extractMinimum()};function a(e,n,r){n.key=r;var i=n.parent;return i&&t(n.key,i.key)&&(o(e,n,i),s(e,i)),t(n.key,e.key)&&(e=n),e}function o(e,t,n){t.left.right=t.right,t.right.left=t.left,n.degree--,n.child===t&&(n.child=t.right),n.degree===0&&(n.child=null),t.left=e,t.right=e.right,e.right=t,t.right.left=t,t.parent=null,t.mark=!1}function s(e,t){var n=t.parent;n&&(t.mark?(o(e,t,n),s(n)):t.mark=!0)}var c=function(e,t){e.left.right=e.right,e.right.left=e.left,e.parent=t,t.child?(e.left=t.child,e.right=t.child.right,t.child.right=e,e.right.left=e):(t.child=e,e.right=e,e.left=e),t.degree++,e.mark=!1};function l(e,i){var a=Math.floor(Math.log(i)*r)+1,o=Array(a),s=0,l=e;if(l)for(s++,l=l.right;l!==e;)s++,l=l.right;for(var u;s>0;){for(var d=l.degree,f=l.right;u=o[d],u;){if(n(l.key,u.key)){var p=u;u=l,l=p}c(u,l),o[d]=null,d++}o[d]=l,l=f,s--}e=null;for(var m=0;m{var{addScalar:t,equalScalar:n,FibonacciHeap:r}=e;function i(){if(!(this instanceof i))throw SyntaxError(`Constructor must be called with the new operator`);this._values=[],this._heap=new r}return i.prototype.type=`Spa`,i.prototype.isSpa=!0,i.prototype.set=function(e,t){if(this._values[e])this._values[e].value=t;else{var n=this._heap.insert(e,t);this._values[e]=n}},i.prototype.get=function(e){var t=this._values[e];return t?t.value:0},i.prototype.accumulate=function(e,n){var r=this._values[e];r?r.value=t(r.value,n):(r=this._heap.insert(e,n),this._values[e]=r)},i.prototype.forEach=function(e,t,r){var i=this._heap,a=this._values,o=[],s=i.extractMinimum();for(s&&o.push(s);s&&s.key<=t;)s.key>=e&&(n(s.value,0)||r(s.key,s.value,this)),s=i.extractMinimum(),s&&o.push(s);for(var c=0;c1&&arguments[1]!==void 0?arguments[1]:{};return n??=1/0,t??=JSON.stringify,function r(){typeof r.cache!=`object`&&(r.cache={values:new Map,lru:sB(n||1/0)});for(var i=[],a=0;a{var{on:t,config:n,addScalar:r,subtractScalar:i,multiplyScalar:a,divideScalar:o,pow:s,abs:c,fix:l,round:u,equal:d,isNumeric:f,format:p,number:m,Complex:h,BigNumber:g,Fraction:_}=e,v=m,y=!1,b=!0;function x(e,t){if(!(this instanceof x))throw Error(`Constructor must be called with the new operator`);if(!(e==null||f(e)||EE(e)))throw TypeError(`First parameter in Unit constructor must be number, BigNumber, Fraction, Complex, or undefined`);if(this.fixPrefix=y,this.skipAutomaticSimplification=b,t===void 0)this.units=[],this.dimensions=te.map(e=>0);else if(typeof t==`string`){var n=x.parse(t);this.units=n.units,this.dimensions=n.dimensions}else if(OE(t)&&t.value===null)this.fixPrefix=t.fixPrefix,this.skipAutomaticSimplification=t.skipAutomaticSimplification,this.dimensions=t.dimensions.slice(0),this.units=t.units.map(e=>oE({},e));else throw TypeError(`Second parameter in Unit constructor must be a string or valueless Unit`);this.value=this._normalize(e)}Object.defineProperty(x,`name`,{value:`Unit`}),x.prototype.constructor=x,x.prototype.type=`Unit`,x.prototype.isUnit=!0;var S,C,w;function T(){for(;w===` `||w===` `;)O()}function E(e){return e>=`0`&&e<=`9`||e===`.`}function D(e){return e>=`0`&&e<=`9`}function O(){C++,w=S.charAt(C)}function k(e){C=e,w=S.charAt(C)}function A(){var e=``,t=C;if(w===`+`?O():w===`-`&&(e+=w,O()),!E(w))return k(t),null;if(w===`.`){if(e+=w,O(),!D(w))return k(t),null}else{for(;D(w);)e+=w,O();w===`.`&&(e+=w,O())}for(;D(w);)e+=w,O();if(w===`E`||w===`e`){var n=``,r=C;if(n+=w,O(),(w===`+`||w===`-`)&&(n+=w,O()),!D(w))return k(r),e;for(e+=n;D(w);)e+=w,O()}return e}function j(){for(var e=``;D(w)||x.isValidAlpha(w);)e+=w,O();var t=e.charAt(0);return x.isValidAlpha(t)?e:null}function M(e){return w===e?(O(),e):null}x.parse=function(e,t){if(t||={},S=e,C=-1,w=``,typeof S!=`string`)throw TypeError(`Invalid argument in Unit.parse, string expected`);var r=new x;r.units=[];var i=1,a=!1;O(),T();var o=A(),s=null;if(o){if(n.number===`BigNumber`)s=new g(o);else if(n.number===`Fraction`)try{s=new _(o)}catch{s=parseFloat(o)}else s=parseFloat(o);T(),M(`*`)?(i=1,a=!0):M(`/`)&&(i=-1,a=!0)}for(var c=[],l=1;;){for(T();w===`(`;)c.push(i),l*=i,i=1,O(),T();var u=void 0;if(w){var d=w;if(u=j(),u===null)throw SyntaxError(`Unexpected "`+d+`" in "`+S+`" at index `+C.toString())}else break;var f=N(u);if(f===null)throw SyntaxError(`Unit "`+u+`" not found.`);var p=i*l;if(T(),M(`^`)){T();var m=A();if(m===null)throw SyntaxError(`In "`+e+`", "^" must be followed by a floating-point number`);p*=m}r.units.push({unit:f.unit,prefix:f.prefix,power:p});for(var h=0;h1||Math.abs(this.units[0].power-1)>1e-15},x.prototype._normalize=function(e){if(e==null||this.units.length===0)return e;for(var t=e,n=x._getNumberConverter(pD(e)),r=0;r{if(SD(ie,e)){var t=ie[e];return{unit:t,prefix:t.prefixes[``]}}for(var n in ie)if(SD(ie,n)&&WA(e,n)){var r=ie[n],i=e.length-n.length,a=e.substring(0,i),o=SD(r.prefixes,a)?r.prefixes[a]:void 0;if(o!==void 0)return{unit:r,prefix:o}}return null},{hasher:e=>e[0],limit:100});x.isValuelessUnit=function(e){return N(e)!==null},x.prototype.hasBase=function(e){if(typeof e==`string`&&(e=z[e]),!e)return!1;for(var t=0;t1e-12)return!1;return!0},x.prototype.equalBase=function(e){for(var t=0;t1e-12)return!1;return!0},x.prototype.equals=function(e){return this.equalBase(e)&&d(this.value,e.value)},x.prototype.multiply=function(e){for(var t=this.clone(),n=OE(e)?e:new x(e),r=0;r0?this.formatUnits():null,fixPrefix:this.fixPrefix,skipSimp:this.skipAutomaticSimplification}},x.fromJSON=function(e){var t=new x(e.value,e.unit??void 0);return t.fixPrefix=e.fixPrefix??y,t.skipAutomaticSimplification=e.skipSimp??b,t},x.prototype.valueOf=x.prototype.toString,x.prototype.simplify=function(){var e=this.clone(),t=[],n;for(var r in ce)if(SD(ce,r)&&e.hasBase(z[r])){n=r;break}if(n===`NONE`)e.units=[];else{var i;if(n&&SD(ce,n)&&(i=ce[n]),i)e.units=[{unit:i.unit,prefix:i.prefix,power:1}];else{for(var a=!1,o=0;o1e-12&&(SD(ce,s)?t.push({unit:ce[s].unit,prefix:ce[s].prefix,power:e.dimensions[o]||0}):a=!0)}t.length1e-12)if(SD(se.si,r))t.push({unit:se.si[r].unit,prefix:se.si[r].prefix,power:e.dimensions[n]||0});else throw Error(`Cannot express custom unit `+r+` in SI units`)}return e.units=t,e.fixPrefix=!0,e.skipAutomaticSimplification=!0,this.value===null?e:(e.value=null,this.to(e))},x.prototype.formatUnits=function(){for(var e=``,t=``,n=0,r=0,i=0;i0?(n++,e+=` `+this.units[i].prefix.name+this.units[i].unit.name,Math.abs(this.units[i].power-1)>1e-15&&(e+=`^`+this.units[i].power)):this.units[i].power<0&&r++;if(r>0)for(var a=0;a0?(t+=` `+this.units[a].prefix.name+this.units[a].unit.name,Math.abs(this.units[a].power+1)>1e-15&&(t+=`^`+-this.units[a].power)):(t+=` `+this.units[a].prefix.name+this.units[a].unit.name,t+=`^`+this.units[a].power));e=e.substr(1),t=t.substr(1),n>1&&r>0&&(e=`(`+e+`)`),r>1&&n>0&&(t=`(`+t+`)`);var o=e;return n>0&&r>0&&(o+=` / `),o+=t,o},x.prototype.toBest=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(e&&!Array.isArray(e))throw Error(`Invalid unit type. Expected string or Unit.`);var n=this.units[0].unit.prefixes;if(e&&e.length>0){var r=e.map(e=>{var t=null;if(typeof e==`string`){if(t=x.parse(e),!t)throw Error(`Invalid unit type. Expected compatible string or Unit.`)}else if(!OE(e))throw Error(`Invalid unit type. Expected compatible string or Unit.`);t===null&&(t=e.clone());try{return this.to(t.formatUnits()),t}catch{throw Error(`Invalid unit type. Expected compatible string or Unit.`)}}).map(e=>e.units[0].prefix);this.units[0].unit.prefixes=r.reduce((e,t)=>(e[t.name]=t,e),{}),this.units[0].prefix=r[0]}var i=I(this,t).simp;return this.units[0].unit.prefixes=n,i.fixPrefix=!0,i},x.prototype.format=function(e){var{simp:t,valueStr:n,unitStr:r}=I(this,e),i=n;return t.value&&EE(t.value)&&(i=`(`+i+`)`),r.length>0&&i.length>0&&(i+=` `),i+=r,i};function I(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=e.skipAutomaticSimplification||e.value===null?e.clone():e.simplify();L(n),ee(n,t.offset);var r=n._denormalize(n.value);return{simp:n,valueStr:n.value===null?``:p(r,t||{}),unitStr:n.formatUnits()}}function L(e){var t=!1;for(var n in e.value!==void 0&&e.value!==null&&EE(e.value)&&(t=Math.abs(e.value.re)<1e-14),e.units)SD(e.units,n)&&e.units[n].unit&&(e.units[n].unit.name===`VA`&&t?e.units[n].unit=ie.VAR:e.units[n].unit.name===`VAR`&&!t&&(e.units[n].unit=ie.VA))}function ee(e,t){e.units.length===1&&!e.fixPrefix&&Math.abs(e.units[0].power-Math.round(e.units[0].power))<1e-14&&(e.units[0].prefix=e._bestPrefix(t))}x.prototype._bestPrefix=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1.2;if(this.units.length!==1||Math.abs(this.units[0].power-Math.round(this.units[0].power))>=1e-14)throw Error(`Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!`);var t=this.value===null?0:c(this.value),n=c(this.units[0].unit.value),r=this.units[0].prefix;if(t===0)return r;var i=this.units[0].power,a=Math.log(t/(r.value*n)**+i)/Math.LN10-e;if(a>-2.200001&&a<1.800001)return r;a=Math.abs(a);var o=this.units[0].unit.prefixes;for(var s in o)if(SD(o,s)){var l=o[s];if(l.scientific){var u=Math.abs(Math.log(t/(l.value*n)**+i)/Math.LN10-e);(u0)},ie={meter:{name:`meter`,base:z.LENGTH,prefixes:R.LONG,value:1,offset:0},inch:{name:`inch`,base:z.LENGTH,prefixes:R.NONE,value:.0254,offset:0},foot:{name:`foot`,base:z.LENGTH,prefixes:R.NONE,value:.3048,offset:0},yard:{name:`yard`,base:z.LENGTH,prefixes:R.NONE,value:.9144,offset:0},mile:{name:`mile`,base:z.LENGTH,prefixes:R.NONE,value:1609.344,offset:0},link:{name:`link`,base:z.LENGTH,prefixes:R.NONE,value:.201168,offset:0},rod:{name:`rod`,base:z.LENGTH,prefixes:R.NONE,value:5.0292,offset:0},chain:{name:`chain`,base:z.LENGTH,prefixes:R.NONE,value:20.1168,offset:0},angstrom:{name:`angstrom`,base:z.LENGTH,prefixes:R.NONE,value:1e-10,offset:0},m:{name:`m`,base:z.LENGTH,prefixes:R.SHORT,value:1,offset:0},in:{name:`in`,base:z.LENGTH,prefixes:R.NONE,value:.0254,offset:0},ft:{name:`ft`,base:z.LENGTH,prefixes:R.NONE,value:.3048,offset:0},yd:{name:`yd`,base:z.LENGTH,prefixes:R.NONE,value:.9144,offset:0},mi:{name:`mi`,base:z.LENGTH,prefixes:R.NONE,value:1609.344,offset:0},li:{name:`li`,base:z.LENGTH,prefixes:R.NONE,value:.201168,offset:0},rd:{name:`rd`,base:z.LENGTH,prefixes:R.NONE,value:5.02921,offset:0},ch:{name:`ch`,base:z.LENGTH,prefixes:R.NONE,value:20.1168,offset:0},mil:{name:`mil`,base:z.LENGTH,prefixes:R.NONE,value:254e-7,offset:0},m2:{name:`m2`,base:z.SURFACE,prefixes:R.SQUARED,value:1,offset:0},sqin:{name:`sqin`,base:z.SURFACE,prefixes:R.NONE,value:64516e-8,offset:0},sqft:{name:`sqft`,base:z.SURFACE,prefixes:R.NONE,value:.09290304,offset:0},sqyd:{name:`sqyd`,base:z.SURFACE,prefixes:R.NONE,value:.83612736,offset:0},sqmi:{name:`sqmi`,base:z.SURFACE,prefixes:R.NONE,value:2589988.110336,offset:0},sqrd:{name:`sqrd`,base:z.SURFACE,prefixes:R.NONE,value:25.29295,offset:0},sqch:{name:`sqch`,base:z.SURFACE,prefixes:R.NONE,value:404.6873,offset:0},sqmil:{name:`sqmil`,base:z.SURFACE,prefixes:R.NONE,value:64516e-14,offset:0},acre:{name:`acre`,base:z.SURFACE,prefixes:R.NONE,value:4046.86,offset:0},hectare:{name:`hectare`,base:z.SURFACE,prefixes:R.NONE,value:1e4,offset:0},m3:{name:`m3`,base:z.VOLUME,prefixes:R.CUBIC,value:1,offset:0},L:{name:`L`,base:z.VOLUME,prefixes:R.SHORT,value:.001,offset:0},l:{name:`l`,base:z.VOLUME,prefixes:R.SHORT,value:.001,offset:0},litre:{name:`litre`,base:z.VOLUME,prefixes:R.LONG,value:.001,offset:0},cuin:{name:`cuin`,base:z.VOLUME,prefixes:R.NONE,value:16387064e-12,offset:0},cuft:{name:`cuft`,base:z.VOLUME,prefixes:R.NONE,value:.028316846592,offset:0},cuyd:{name:`cuyd`,base:z.VOLUME,prefixes:R.NONE,value:.764554857984,offset:0},teaspoon:{name:`teaspoon`,base:z.VOLUME,prefixes:R.NONE,value:5e-6,offset:0},tablespoon:{name:`tablespoon`,base:z.VOLUME,prefixes:R.NONE,value:15e-6,offset:0},drop:{name:`drop`,base:z.VOLUME,prefixes:R.NONE,value:5e-8,offset:0},gtt:{name:`gtt`,base:z.VOLUME,prefixes:R.NONE,value:5e-8,offset:0},minim:{name:`minim`,base:z.VOLUME,prefixes:R.NONE,value:6.1611519921875e-8,offset:0},fluiddram:{name:`fluiddram`,base:z.VOLUME,prefixes:R.NONE,value:36966911953125e-19,offset:0},fluidounce:{name:`fluidounce`,base:z.VOLUME,prefixes:R.NONE,value:295735295625e-16,offset:0},gill:{name:`gill`,base:z.VOLUME,prefixes:R.NONE,value:.00011829411825,offset:0},cc:{name:`cc`,base:z.VOLUME,prefixes:R.NONE,value:1e-6,offset:0},cup:{name:`cup`,base:z.VOLUME,prefixes:R.NONE,value:.0002365882365,offset:0},pint:{name:`pint`,base:z.VOLUME,prefixes:R.NONE,value:.000473176473,offset:0},quart:{name:`quart`,base:z.VOLUME,prefixes:R.NONE,value:.000946352946,offset:0},gallon:{name:`gallon`,base:z.VOLUME,prefixes:R.NONE,value:.003785411784,offset:0},beerbarrel:{name:`beerbarrel`,base:z.VOLUME,prefixes:R.NONE,value:.117347765304,offset:0},oilbarrel:{name:`oilbarrel`,base:z.VOLUME,prefixes:R.NONE,value:.158987294928,offset:0},hogshead:{name:`hogshead`,base:z.VOLUME,prefixes:R.NONE,value:.238480942392,offset:0},g:{name:`g`,base:z.MASS,prefixes:R.SHORT,value:.001,offset:0},gram:{name:`gram`,base:z.MASS,prefixes:R.LONG,value:.001,offset:0},ton:{name:`ton`,base:z.MASS,prefixes:R.SHORT,value:907.18474,offset:0},t:{name:`t`,base:z.MASS,prefixes:R.SHORT,value:1e3,offset:0},tonne:{name:`tonne`,base:z.MASS,prefixes:R.LONG,value:1e3,offset:0},grain:{name:`grain`,base:z.MASS,prefixes:R.NONE,value:6479891e-11,offset:0},dram:{name:`dram`,base:z.MASS,prefixes:R.NONE,value:.0017718451953125,offset:0},ounce:{name:`ounce`,base:z.MASS,prefixes:R.NONE,value:.028349523125,offset:0},poundmass:{name:`poundmass`,base:z.MASS,prefixes:R.NONE,value:.45359237,offset:0},hundredweight:{name:`hundredweight`,base:z.MASS,prefixes:R.NONE,value:45.359237,offset:0},stick:{name:`stick`,base:z.MASS,prefixes:R.NONE,value:.115,offset:0},stone:{name:`stone`,base:z.MASS,prefixes:R.NONE,value:6.35029318,offset:0},gr:{name:`gr`,base:z.MASS,prefixes:R.NONE,value:6479891e-11,offset:0},dr:{name:`dr`,base:z.MASS,prefixes:R.NONE,value:.0017718451953125,offset:0},oz:{name:`oz`,base:z.MASS,prefixes:R.NONE,value:.028349523125,offset:0},lbm:{name:`lbm`,base:z.MASS,prefixes:R.NONE,value:.45359237,offset:0},cwt:{name:`cwt`,base:z.MASS,prefixes:R.NONE,value:45.359237,offset:0},s:{name:`s`,base:z.TIME,prefixes:R.SHORT,value:1,offset:0},min:{name:`min`,base:z.TIME,prefixes:R.NONE,value:60,offset:0},h:{name:`h`,base:z.TIME,prefixes:R.NONE,value:3600,offset:0},second:{name:`second`,base:z.TIME,prefixes:R.LONG,value:1,offset:0},sec:{name:`sec`,base:z.TIME,prefixes:R.LONG,value:1,offset:0},minute:{name:`minute`,base:z.TIME,prefixes:R.NONE,value:60,offset:0},hour:{name:`hour`,base:z.TIME,prefixes:R.NONE,value:3600,offset:0},day:{name:`day`,base:z.TIME,prefixes:R.NONE,value:86400,offset:0},week:{name:`week`,base:z.TIME,prefixes:R.NONE,value:7*86400,offset:0},month:{name:`month`,base:z.TIME,prefixes:R.NONE,value:2629800,offset:0},year:{name:`year`,base:z.TIME,prefixes:R.NONE,value:31557600,offset:0},decade:{name:`decade`,base:z.TIME,prefixes:R.NONE,value:315576e3,offset:0},century:{name:`century`,base:z.TIME,prefixes:R.NONE,value:315576e4,offset:0},millennium:{name:`millennium`,base:z.TIME,prefixes:R.NONE,value:315576e5,offset:0},hertz:{name:`Hertz`,base:z.FREQUENCY,prefixes:R.LONG,value:1,offset:0,reciprocal:!0},Hz:{name:`Hz`,base:z.FREQUENCY,prefixes:R.SHORT,value:1,offset:0,reciprocal:!0},rad:{name:`rad`,base:z.ANGLE,prefixes:R.SHORT,value:1,offset:0},radian:{name:`radian`,base:z.ANGLE,prefixes:R.LONG,value:1,offset:0},deg:{name:`deg`,base:z.ANGLE,prefixes:R.SHORT,value:null,offset:0},degree:{name:`degree`,base:z.ANGLE,prefixes:R.LONG,value:null,offset:0},grad:{name:`grad`,base:z.ANGLE,prefixes:R.SHORT,value:null,offset:0},gradian:{name:`gradian`,base:z.ANGLE,prefixes:R.LONG,value:null,offset:0},cycle:{name:`cycle`,base:z.ANGLE,prefixes:R.NONE,value:null,offset:0},arcsec:{name:`arcsec`,base:z.ANGLE,prefixes:R.NONE,value:null,offset:0},arcmin:{name:`arcmin`,base:z.ANGLE,prefixes:R.NONE,value:null,offset:0},A:{name:`A`,base:z.CURRENT,prefixes:R.SHORT,value:1,offset:0},ampere:{name:`ampere`,base:z.CURRENT,prefixes:R.LONG,value:1,offset:0},K:{name:`K`,base:z.TEMPERATURE,prefixes:R.SHORT,value:1,offset:0},degC:{name:`degC`,base:z.TEMPERATURE,prefixes:R.SHORT,value:1,offset:273.15},degF:{name:`degF`,base:z.TEMPERATURE,prefixes:R.SHORT,value:new _(5,9),offset:459.67},degR:{name:`degR`,base:z.TEMPERATURE,prefixes:R.SHORT,value:new _(5,9),offset:0},kelvin:{name:`kelvin`,base:z.TEMPERATURE,prefixes:R.LONG,value:1,offset:0},celsius:{name:`celsius`,base:z.TEMPERATURE,prefixes:R.LONG,value:1,offset:273.15},fahrenheit:{name:`fahrenheit`,base:z.TEMPERATURE,prefixes:R.LONG,value:new _(5,9),offset:459.67},rankine:{name:`rankine`,base:z.TEMPERATURE,prefixes:R.LONG,value:new _(5,9),offset:0},mol:{name:`mol`,base:z.AMOUNT_OF_SUBSTANCE,prefixes:R.SHORT,value:1,offset:0},mole:{name:`mole`,base:z.AMOUNT_OF_SUBSTANCE,prefixes:R.LONG,value:1,offset:0},cd:{name:`cd`,base:z.LUMINOUS_INTENSITY,prefixes:R.SHORT,value:1,offset:0},candela:{name:`candela`,base:z.LUMINOUS_INTENSITY,prefixes:R.LONG,value:1,offset:0},N:{name:`N`,base:z.FORCE,prefixes:R.SHORT,value:1,offset:0},newton:{name:`newton`,base:z.FORCE,prefixes:R.LONG,value:1,offset:0},dyn:{name:`dyn`,base:z.FORCE,prefixes:R.SHORT,value:1e-5,offset:0},dyne:{name:`dyne`,base:z.FORCE,prefixes:R.LONG,value:1e-5,offset:0},lbf:{name:`lbf`,base:z.FORCE,prefixes:R.NONE,value:4.4482216152605,offset:0},poundforce:{name:`poundforce`,base:z.FORCE,prefixes:R.NONE,value:4.4482216152605,offset:0},kip:{name:`kip`,base:z.FORCE,prefixes:R.LONG,value:4448.2216,offset:0},kilogramforce:{name:`kilogramforce`,base:z.FORCE,prefixes:R.NONE,value:9.80665,offset:0},J:{name:`J`,base:z.ENERGY,prefixes:R.SHORT,value:1,offset:0},joule:{name:`joule`,base:z.ENERGY,prefixes:R.LONG,value:1,offset:0},erg:{name:`erg`,base:z.ENERGY,prefixes:R.SHORTLONG,value:1e-7,offset:0},Wh:{name:`Wh`,base:z.ENERGY,prefixes:R.SHORT,value:3600,offset:0},BTU:{name:`BTU`,base:z.ENERGY,prefixes:R.BTU,value:1055.05585262,offset:0},eV:{name:`eV`,base:z.ENERGY,prefixes:R.SHORT,value:1602176565e-28,offset:0},electronvolt:{name:`electronvolt`,base:z.ENERGY,prefixes:R.LONG,value:1602176565e-28,offset:0},W:{name:`W`,base:z.POWER,prefixes:R.SHORT,value:1,offset:0},watt:{name:`watt`,base:z.POWER,prefixes:R.LONG,value:1,offset:0},hp:{name:`hp`,base:z.POWER,prefixes:R.NONE,value:745.6998715386,offset:0},VAR:{name:`VAR`,base:z.POWER,prefixes:R.SHORT,value:h.I,offset:0},VA:{name:`VA`,base:z.POWER,prefixes:R.SHORT,value:1,offset:0},Pa:{name:`Pa`,base:z.PRESSURE,prefixes:R.SHORT,value:1,offset:0},psi:{name:`psi`,base:z.PRESSURE,prefixes:R.NONE,value:6894.75729276459,offset:0},atm:{name:`atm`,base:z.PRESSURE,prefixes:R.NONE,value:101325,offset:0},bar:{name:`bar`,base:z.PRESSURE,prefixes:R.SHORTLONG,value:1e5,offset:0},torr:{name:`torr`,base:z.PRESSURE,prefixes:R.NONE,value:133.322,offset:0},mmHg:{name:`mmHg`,base:z.PRESSURE,prefixes:R.NONE,value:133.322,offset:0},mmH2O:{name:`mmH2O`,base:z.PRESSURE,prefixes:R.NONE,value:9.80665,offset:0},cmH2O:{name:`cmH2O`,base:z.PRESSURE,prefixes:R.NONE,value:98.0665,offset:0},coulomb:{name:`coulomb`,base:z.ELECTRIC_CHARGE,prefixes:R.LONG,value:1,offset:0},C:{name:`C`,base:z.ELECTRIC_CHARGE,prefixes:R.SHORT,value:1,offset:0},Ah:{name:`Ah`,base:z.ELECTRIC_CHARGE,prefixes:R.SHORT,value:3600,offset:0},farad:{name:`farad`,base:z.ELECTRIC_CAPACITANCE,prefixes:R.LONG,value:1,offset:0},F:{name:`F`,base:z.ELECTRIC_CAPACITANCE,prefixes:R.SHORT,value:1,offset:0},volt:{name:`volt`,base:z.ELECTRIC_POTENTIAL,prefixes:R.LONG,value:1,offset:0},V:{name:`V`,base:z.ELECTRIC_POTENTIAL,prefixes:R.SHORT,value:1,offset:0},ohm:{name:`ohm`,base:z.ELECTRIC_RESISTANCE,prefixes:R.SHORTLONG,value:1,offset:0},henry:{name:`henry`,base:z.ELECTRIC_INDUCTANCE,prefixes:R.LONG,value:1,offset:0},H:{name:`H`,base:z.ELECTRIC_INDUCTANCE,prefixes:R.SHORT,value:1,offset:0},siemens:{name:`siemens`,base:z.ELECTRIC_CONDUCTANCE,prefixes:R.LONG,value:1,offset:0},S:{name:`S`,base:z.ELECTRIC_CONDUCTANCE,prefixes:R.SHORT,value:1,offset:0},weber:{name:`weber`,base:z.MAGNETIC_FLUX,prefixes:R.LONG,value:1,offset:0},Wb:{name:`Wb`,base:z.MAGNETIC_FLUX,prefixes:R.SHORT,value:1,offset:0},tesla:{name:`tesla`,base:z.MAGNETIC_FLUX_DENSITY,prefixes:R.LONG,value:1,offset:0},T:{name:`T`,base:z.MAGNETIC_FLUX_DENSITY,prefixes:R.SHORT,value:1,offset:0},b:{name:`b`,base:z.BIT,prefixes:R.BINARY_SHORT,value:1,offset:0},bits:{name:`bits`,base:z.BIT,prefixes:R.BINARY_LONG,value:1,offset:0},B:{name:`B`,base:z.BIT,prefixes:R.BINARY_SHORT,value:8,offset:0},bytes:{name:`bytes`,base:z.BIT,prefixes:R.BINARY_LONG,value:8,offset:0}},ae={meters:`meter`,inches:`inch`,feet:`foot`,yards:`yard`,miles:`mile`,links:`link`,rods:`rod`,chains:`chain`,angstroms:`angstrom`,lt:`l`,litres:`litre`,liter:`litre`,liters:`litre`,teaspoons:`teaspoon`,tablespoons:`tablespoon`,minims:`minim`,fldr:`fluiddram`,fluiddrams:`fluiddram`,floz:`fluidounce`,fluidounces:`fluidounce`,gi:`gill`,gills:`gill`,cp:`cup`,cups:`cup`,pt:`pint`,pints:`pint`,qt:`quart`,quarts:`quart`,gal:`gallon`,gallons:`gallon`,bbl:`beerbarrel`,beerbarrels:`beerbarrel`,obl:`oilbarrel`,oilbarrels:`oilbarrel`,hogsheads:`hogshead`,gtts:`gtt`,grams:`gram`,tons:`ton`,tonnes:`tonne`,grains:`grain`,drams:`dram`,ounces:`ounce`,poundmasses:`poundmass`,hundredweights:`hundredweight`,sticks:`stick`,lb:`lbm`,lbs:`lbm`,kips:`kip`,kgf:`kilogramforce`,acres:`acre`,hectares:`hectare`,sqfeet:`sqft`,sqyard:`sqyd`,sqmile:`sqmi`,sqmiles:`sqmi`,mmhg:`mmHg`,mmh2o:`mmH2O`,cmh2o:`cmH2O`,seconds:`second`,secs:`second`,minutes:`minute`,mins:`minute`,hours:`hour`,hr:`hour`,hrs:`hour`,days:`day`,weeks:`week`,months:`month`,years:`year`,decades:`decade`,centuries:`century`,millennia:`millennium`,hertz:`hertz`,radians:`radian`,degrees:`degree`,gradians:`gradian`,cycles:`cycle`,arcsecond:`arcsec`,arcseconds:`arcsec`,arcminute:`arcmin`,arcminutes:`arcmin`,BTUs:`BTU`,watts:`watt`,joules:`joule`,amperes:`ampere`,amps:`ampere`,amp:`ampere`,coulombs:`coulomb`,volts:`volt`,ohms:`ohm`,farads:`farad`,webers:`weber`,teslas:`tesla`,electronvolts:`electronvolt`,moles:`mole`,bit:`bits`,byte:`bytes`};function oe(e){if(e.number===`BigNumber`){var t=dB(g);ie.rad.value=new g(1),ie.deg.value=t.div(180),ie.grad.value=t.div(200),ie.cycle.value=t.times(2),ie.arcsec.value=t.div(648e3),ie.arcmin.value=t.div(10800)}else ie.rad.value=1,ie.deg.value=Math.PI/180,ie.grad.value=Math.PI/200,ie.cycle.value=Math.PI*2,ie.arcsec.value=Math.PI/648e3,ie.arcmin.value=Math.PI/10800;ie.radian.value=ie.rad.value,ie.degree.value=ie.deg.value,ie.gradian.value=ie.grad.value}oe(n),t&&t(`config`,function(e,t){e.number!==t.number&&oe(e)});var se={si:{NONE:{unit:re,prefix:R.NONE[``]},LENGTH:{unit:ie.m,prefix:R.SHORT[``]},MASS:{unit:ie.g,prefix:R.SHORT.k},TIME:{unit:ie.s,prefix:R.SHORT[``]},CURRENT:{unit:ie.A,prefix:R.SHORT[``]},TEMPERATURE:{unit:ie.K,prefix:R.SHORT[``]},LUMINOUS_INTENSITY:{unit:ie.cd,prefix:R.SHORT[``]},AMOUNT_OF_SUBSTANCE:{unit:ie.mol,prefix:R.SHORT[``]},ANGLE:{unit:ie.rad,prefix:R.SHORT[``]},BIT:{unit:ie.bits,prefix:R.SHORT[``]},FORCE:{unit:ie.N,prefix:R.SHORT[``]},ENERGY:{unit:ie.J,prefix:R.SHORT[``]},POWER:{unit:ie.W,prefix:R.SHORT[``]},PRESSURE:{unit:ie.Pa,prefix:R.SHORT[``]},ELECTRIC_CHARGE:{unit:ie.C,prefix:R.SHORT[``]},ELECTRIC_CAPACITANCE:{unit:ie.F,prefix:R.SHORT[``]},ELECTRIC_POTENTIAL:{unit:ie.V,prefix:R.SHORT[``]},ELECTRIC_RESISTANCE:{unit:ie.ohm,prefix:R.SHORT[``]},ELECTRIC_INDUCTANCE:{unit:ie.H,prefix:R.SHORT[``]},ELECTRIC_CONDUCTANCE:{unit:ie.S,prefix:R.SHORT[``]},MAGNETIC_FLUX:{unit:ie.Wb,prefix:R.SHORT[``]},MAGNETIC_FLUX_DENSITY:{unit:ie.T,prefix:R.SHORT[``]},FREQUENCY:{unit:ie.Hz,prefix:R.SHORT[``]}}};se.cgs=JSON.parse(JSON.stringify(se.si)),se.cgs.LENGTH={unit:ie.m,prefix:R.SHORT.c},se.cgs.MASS={unit:ie.g,prefix:R.SHORT[``]},se.cgs.FORCE={unit:ie.dyn,prefix:R.SHORT[``]},se.cgs.ENERGY={unit:ie.erg,prefix:R.NONE[``]},se.us=JSON.parse(JSON.stringify(se.si)),se.us.LENGTH={unit:ie.ft,prefix:R.NONE[``]},se.us.MASS={unit:ie.lbm,prefix:R.NONE[``]},se.us.TEMPERATURE={unit:ie.degF,prefix:R.NONE[``]},se.us.FORCE={unit:ie.lbf,prefix:R.NONE[``]},se.us.ENERGY={unit:ie.BTU,prefix:R.BTU[``]},se.us.POWER={unit:ie.hp,prefix:R.NONE[``]},se.us.PRESSURE={unit:ie.psi,prefix:R.NONE[``]},se.auto=JSON.parse(JSON.stringify(se.si));var ce=se.auto;for(var le in x.setUnitSystem=function(e){if(SD(se,e))ce=se[e];else throw Error(`Unit system `+e+` does not exist. Choices are: `+Object.keys(se).join(`, `))},x.getUnitSystem=function(){for(var e in se)if(SD(se,e)&&se[e]===ce)return e},x.typeConverters={BigNumber:function(e){return e!=null&&e.isFraction?new g(String(e.n)).div(String(e.d)).times(String(e.s)):new g(e+``)},Fraction:function(e){return new _(e)},Complex:function(e){return e},number:function(e){return e!=null&&e.isFraction?m(e):e}},x.prototype._numberConverter=function(){var e=x.typeConverters[this.valueType()];if(e)return e;throw TypeError(`Unsupported Unit value type "`+this.valueType()+`"`)},x._getNumberConverter=function(e){if(!x.typeConverters[e])throw TypeError(`Unsupported type "`+e+`"`);return x.typeConverters[e]},ie)if(SD(ie,le)){var ue=ie[le];ue.dimensions=ue.base.dimensions}for(var de in ae)if(SD(ae,de)){var fe=ie[ae[de]],pe={};for(var me in fe)SD(fe,me)&&(pe[me]=fe[me]);pe.name=de,ie[de]=pe}x.isValidAlpha=function(e){return/^[a-zA-Z]$/.test(e)};function he(e){for(var t=0;t0&&!(x.isValidAlpha(w)||D(w)))throw Error(`Invalid unit name (only alphanumeric characters are allowed): "`+e+`"`)}}return x.createUnit=function(e,t){if(typeof e!=`object`)throw TypeError(`createUnit expects first parameter to be of type 'Object'`);if(t&&t.override){for(var n in e)if(SD(e,n)&&x.deleteUnit(n),e[n].aliases)for(var r=0;r1e-12){f=!1;break}if(f){u=!0,l.base=z[d];break}}if(!u){s||=e+`_STUFF`;var m={dimensions:n.dimensions.slice(0)};m.key=s,z[s]=m,ce[s]={unit:l,prefix:R.NONE[``]},l.base=z[s]}}else{if(s||=e+`_STUFF`,te.indexOf(s)>=0)throw Error(`Cannot create new base unit "`+e+`": a base unit with that name already exists (and cannot be overridden)`);for(var h in te.push(s),z)SD(z,h)&&(z[h].dimensions[te.length-1]=0);for(var g={dimensions:[]},_=0;_{var{typed:t,Unit:n}=e;return t(_B,{Unit:function(e){return e.clone()},string:function(e){return n.isValuelessUnit(e)?new n(null,e):n.parse(e,{allowNoUnits:!0})},"number | BigNumber | Fraction | Complex, string | Unit":function(e,t){return new n(e,t)},"number | BigNumber | Fraction":function(e){return new n(e)},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),yB=`sparse`,bB=Z(yB,[`typed`,`SparseMatrix`],e=>{var{typed:t,SparseMatrix:n}=e;return t(yB,{"":function(){return new n([])},string:function(e){return new n([],e)},"Array | Matrix":function(e){return new n(e)},"Array | Matrix, string":function(e,t){return new n(e,t)}})}),xB=`createUnit`,SB=Z(xB,[`typed`,`Unit`],e=>{var{typed:t,Unit:n}=e;return t(xB,{"Object, Object":function(e,t){return n.createUnit(e,t)},Object:function(e){return n.createUnit(e,{})},"string, Unit | string | Object, Object":function(e,t,r){var i={};return i[e]=t,n.createUnit(i,r)},"string, Unit | string | Object":function(e,t){var r={};return r[e]=t,n.createUnit(r,{})},string:function(e){var t={};return t[e]={},n.createUnit(t,{})}})}),CB=`acos`,wB=Z(CB,[`typed`,`config`,`Complex`],e=>{var{typed:t,config:n,Complex:r}=e;return t(CB,{number:function(e){return e>=-1&&e<=1||n.predictable?Math.acos(e):new r(e,0).acos()},Complex:function(e){return e.acos()},BigNumber:function(e){return e.acos()}})}),TB=`acosh`,EB=Z(TB,[`typed`,`config`,`Complex`],e=>{var{typed:t,config:n,Complex:r}=e;return t(TB,{number:function(e){return e>=1||n.predictable?iN(e):e<=-1?new r(Math.log(Math.sqrt(e*e-1)-e),Math.PI):new r(e,0).acosh()},Complex:function(e){return e.acosh()},BigNumber:function(e){return e.acosh()}})}),DB=`acot`,OB=Z(DB,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e;return t(DB,{number:aN,Complex:function(e){return e.acot()},BigNumber:function(e){return new n(1).div(e).atan()}})}),kB=`acoth`,AB=Z(kB,[`typed`,`config`,`Complex`,`BigNumber`],e=>{var{typed:t,config:n,Complex:r,BigNumber:i}=e;return t(kB,{number:function(e){return e>=1||e<=-1||n.predictable?oN(e):new r(e,0).acoth()},Complex:function(e){return e.acoth()},BigNumber:function(e){return new i(1).div(e).atanh()}})}),jB=`acsc`,MB=Z(jB,[`typed`,`config`,`Complex`,`BigNumber`],e=>{var{typed:t,config:n,Complex:r,BigNumber:i}=e;return t(jB,{number:function(e){return e<=-1||e>=1||n.predictable?sN(e):new r(e,0).acsc()},Complex:function(e){return e.acsc()},BigNumber:function(e){return new i(1).div(e).asin()}})}),NB=`acsch`,PB=Z(NB,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e;return t(NB,{number:cN,Complex:function(e){return e.acsch()},BigNumber:function(e){return new n(1).div(e).asinh()}})}),FB=`asec`,IB=Z(FB,[`typed`,`config`,`Complex`,`BigNumber`],e=>{var{typed:t,config:n,Complex:r,BigNumber:i}=e;return t(FB,{number:function(e){return e<=-1||e>=1||n.predictable?lN(e):new r(e,0).asec()},Complex:function(e){return e.asec()},BigNumber:function(e){return new i(1).div(e).acos()}})}),LB=`asech`,RB=Z(LB,[`typed`,`config`,`Complex`,`BigNumber`],e=>{var{typed:t,config:n,Complex:r,BigNumber:i}=e;return t(LB,{number:function(e){if(e<=1&&e>=-1||n.predictable){var t=1/e;if(t>0||n.predictable)return uN(e);var i=Math.sqrt(t*t-1);return new r(Math.log(i-t),Math.PI)}return new r(e,0).asech()},Complex:function(e){return e.asech()},BigNumber:function(e){return new i(1).div(e).acosh()}})}),zB=`asin`,BB=Z(zB,[`typed`,`config`,`Complex`],e=>{var{typed:t,config:n,Complex:r}=e;return t(zB,{number:function(e){return e>=-1&&e<=1||n.predictable?Math.asin(e):new r(e,0).asin()},Complex:function(e){return e.asin()},BigNumber:function(e){return e.asin()}})}),VB=Z(`asinh`,[`typed`],e=>{var{typed:t}=e;return t(`asinh`,{number:fN,Complex:function(e){return e.asinh()},BigNumber:function(e){return e.asinh()}})}),HB=Z(`atan`,[`typed`],e=>{var{typed:t}=e;return t(`atan`,{number:function(e){return Math.atan(e)},Complex:function(e){return e.atan()},BigNumber:function(e){return e.atan()}})}),UB=`atan2`,WB=Z(UB,[`typed`,`matrix`,`equalScalar`,`BigNumber`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,BigNumber:i,DenseMatrix:a,concat:o}=e,s=fF({typed:t,equalScalar:r}),c=pF({typed:t}),l=rI({typed:t,equalScalar:r}),u=UP({typed:t,equalScalar:r}),d=WP({typed:t,DenseMatrix:a}),f=vF({typed:t,matrix:n,concat:o});return t(UB,{"number, number":Math.atan2,"BigNumber, BigNumber":(e,t)=>i.atan2(e,t)},f({scalar:`number | BigNumber`,SS:l,DS:c,SD:s,Ss:u,sS:d}))}),GB=`atanh`,KB=Z(GB,[`typed`,`config`,`Complex`],e=>{var{typed:t,config:n,Complex:r}=e;return t(GB,{number:function(e){return e<=1&&e>=-1||n.predictable?hN(e):new r(e,0).atanh()},Complex:function(e){return e.atanh()},BigNumber:function(e){return e.atanh()}})}),qB=Z(`trigUnit`,[`typed`],e=>{var{typed:t}=e;return{Unit:t.referToSelf(e=>n=>{if(!n.hasBase(n.constructor.BASE_UNITS.ANGLE))throw TypeError(`Unit in function cot is no angle`);return t.find(e,n.valueType())(n.value)})}}),JB=`cos`,YB=Z(JB,[`typed`],e=>{var{typed:t}=e,n=qB({typed:t});return t(JB,{number:Math.cos,"Complex | BigNumber":e=>e.cos()},n)}),XB=`cosh`,ZB=Z(XB,[`typed`],e=>{var{typed:t}=e;return t(XB,{number:rO,"Complex | BigNumber":e=>e.cosh()})}),QB=`cot`,$B=Z(QB,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e,r=qB({typed:t});return t(QB,{number:vN,Complex:e=>e.cot(),BigNumber:e=>new n(1).div(e.tan())},r)}),eV=`coth`,tV=Z(eV,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e;return t(eV,{number:yN,Complex:e=>e.coth(),BigNumber:e=>new n(1).div(e.tanh())})}),nV=`csc`,rV=Z(nV,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e,r=qB({typed:t});return t(nV,{number:bN,Complex:e=>e.csc(),BigNumber:e=>new n(1).div(e.sin())},r)}),iV=`csch`,aV=Z(iV,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e;return t(iV,{number:xN,Complex:e=>e.csch(),BigNumber:e=>new n(1).div(e.sinh())})}),oV=`sec`,sV=Z(oV,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e,r=qB({typed:t});return t(oV,{number:SN,Complex:e=>e.sec(),BigNumber:e=>new n(1).div(e.cos())},r)}),cV=`sech`,lV=Z(cV,[`typed`,`BigNumber`],e=>{var{typed:t,BigNumber:n}=e;return t(cV,{number:CN,Complex:e=>e.sech(),BigNumber:e=>new n(1).div(e.cosh())})}),uV=`sin`,dV=Z(uV,[`typed`],e=>{var{typed:t}=e,n=qB({typed:t});return t(uV,{number:Math.sin,"Complex | BigNumber":e=>e.sin()},n)}),fV=`sinh`,pV=Z(fV,[`typed`],e=>{var{typed:t}=e;return t(fV,{number:TN,"Complex | BigNumber":e=>e.sinh()})}),mV=`tan`,hV=Z(mV,[`typed`],e=>{var{typed:t}=e,n=qB({typed:t});return t(mV,{number:Math.tan,"Complex | BigNumber":e=>e.tan()},n)}),gV=Z(`tanh`,[`typed`],e=>{var{typed:t}=e;return t(`tanh`,{number:aO,"Complex | BigNumber":e=>e.tanh()})}),_V=`setCartesian`,vV=Z(_V,[`typed`,`size`,`subset`,`compareNatural`,`Index`,`DenseMatrix`],e=>{var{typed:t,size:n,subset:r,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(_V,{"Array | Matrix, Array | Matrix":function(e,t){var s=[];if(r(n(e),new a(0))!==0&&r(n(t),new a(0))!==0){var c=_j(Array.isArray(e)?e:e.toArray()).sort(i),l=_j(Array.isArray(t)?t:t.toArray()).sort(i);s=[];for(var u=0;u{var{typed:t,size:n,subset:r,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(yV,{"Array | Matrix, Array | Matrix":function(e,t){var s;if(r(n(e),new a(0))===0)s=[];else if(r(n(t),new a(0))===0)return _j(e.toArray());else{var c=Cj(_j(Array.isArray(e)?e:e.toArray()).sort(i)),l=Cj(_j(Array.isArray(t)?t:t.toArray()).sort(i));s=[];for(var u,d=0;d{var{typed:t,size:n,subset:r,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(xV,{"Array | Matrix":function(e){var t;if(r(n(e),new a(0))===0)t=[];else{var s=_j(Array.isArray(e)?e:e.toArray()).sort(i);t=[],t.push(s[0]);for(var c=1;c{var{typed:t,size:n,subset:r,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(CV,{"Array | Matrix, Array | Matrix":function(e,t){var s;if(r(n(e),new a(0))===0||r(n(t),new a(0))===0)s=[];else{var c=Cj(_j(Array.isArray(e)?e:e.toArray()).sort(i)),l=Cj(_j(Array.isArray(t)?t:t.toArray()).sort(i));s=[];for(var u=0;u{var{typed:t,size:n,subset:r,compareNatural:i,Index:a}=e;return t(TV,{"Array | Matrix, Array | Matrix":function(e,t){if(r(n(e),new a(0))===0)return!0;if(r(n(t),new a(0))===0)return!1;for(var o=Cj(_j(Array.isArray(e)?e:e.toArray()).sort(i)),s=Cj(_j(Array.isArray(t)?t:t.toArray()).sort(i)),c,l=0;l{var{typed:t,size:n,subset:r,compareNatural:i,Index:a}=e;return t(DV,{"number | BigNumber | Fraction | Complex, Array | Matrix":function(e,t){if(r(n(t),new a(0))===0)return 0;for(var o=_j(Array.isArray(t)?t:t.toArray()),s=0,c=0;c{var{typed:t,size:n,subset:r,compareNatural:i,Index:a}=e;return t(kV,{"Array | Matrix":function(e){if(r(n(e),new a(0))===0)return[];for(var t=_j(Array.isArray(e)?e:e.toArray()).sort(i),c=[],l=0;l.toString(2).length<=t.length;)c.push(o(t,l.toString(2).split(``).reverse())),l++;return s(c)}});function o(e,t){for(var n=[],r=0;r0;n--)for(var r=0;re[r+1].length&&(t=e[r],e[r]=e[r+1],e[r+1]=t);return e}}),jV=`setSize`,MV=Z(jV,[`typed`,`compareNatural`],e=>{var{typed:t,compareNatural:n}=e;return t(jV,{"Array | Matrix":function(e){return Array.isArray(e)?_j(e).length:_j(e.toArray()).length},"Array | Matrix, boolean":function(e,t){if(t===!1||e.length===0)return Array.isArray(e)?_j(e).length:_j(e.toArray()).length;for(var r=_j(Array.isArray(e)?e:e.toArray()).sort(n),i=1,a=1;a{var{typed:t,size:n,concat:r,subset:i,setDifference:a,Index:o}=e;return t(NV,{"Array | Matrix, Array | Matrix":function(e,t){if(i(n(e),new o(0))===0)return _j(t);if(i(n(t),new o(0))===0)return _j(e);var s=_j(e),c=_j(t);return r(a(s,c),a(c,s))}})}),FV=`setUnion`,IV=Z(FV,[`typed`,`size`,`concat`,`subset`,`setIntersect`,`setSymDifference`,`Index`],e=>{var{typed:t,size:n,concat:r,subset:i,setIntersect:a,setSymDifference:o,Index:s}=e;return t(FV,{"Array | Matrix, Array | Matrix":function(e,t){if(i(n(e),new s(0))===0)return _j(t);if(i(n(t),new s(0))===0)return _j(e);var c=_j(e),l=_j(t);return r(o(c,l),a(c,l))}})}),LV=`add`,RV=Z(LV,[`typed`,`matrix`,`addScalar`,`equalScalar`,`DenseMatrix`,`SparseMatrix`,`concat`],e=>{var{typed:t,matrix:n,addScalar:r,equalScalar:i,DenseMatrix:a,SparseMatrix:o,concat:s}=e,c=xF({typed:t}),l=SF({typed:t,equalScalar:i}),u=CF({typed:t,DenseMatrix:a}),d=vF({typed:t,matrix:n,concat:s});return t(LV,{"any, any":r,"any, any, ...any":t.referToSelf(e=>(t,n,r)=>{for(var i=e(t,n),a=0;a{var{typed:t,abs:n,addScalar:r,divideScalar:i,multiplyScalar:a,sqrt:o,smaller:s,isPositive:c}=e;return t(zV,{"... number | BigNumber":l,Array:l,Matrix:e=>l(_j(e.toArray(),!0))});function l(e){for(var t=0,l=0,u=0;u{var{typed:t,abs:n,add:r,pow:i,conj:a,sqrt:o,multiply:s,equalScalar:c,larger:l,smaller:u,matrix:d,ctranspose:f,eigs:p}=e;return t(VV,{number:Math.abs,Complex:function(e){return e.abs()},BigNumber:function(e){return e.abs()},boolean:function(e){return Math.abs(e)},Array:function(e){return S(d(e),2)},Matrix:function(e){return S(e,2)},"Array, number | BigNumber | string":function(e,t){return S(d(e),t)},"Matrix, number | BigNumber | string":function(e,t){return S(e,t)}});function m(e){var t=0;return e.forEach(function(e){var r=n(e);l(r,t)&&(t=r)},!0),t}function h(e){var t;return e.forEach(function(e){var r=n(e);(!t||u(r,t))&&(t=r)},!0),t||0}function g(e,t){if(t===1/0||t===`inf`)return m(e);if(t===-1/0||t===`-inf`)return h(e);if(t===`fro`)return S(e,2);if(typeof t==`number`&&!isNaN(t)){if(!c(t,0)){var a=0;return e.forEach(function(e){a=r(i(n(e),t),a)},!0),i(a,1/t)}return 1/0}throw Error(`Unsupported parameter value`)}function _(e){var t=0;return e.forEach(function(e,n){t=r(t,s(e,a(e)))}),n(o(t))}function v(e){var t=[],i=0;return e.forEach(function(e,a){var o=a[1],s=r(t[o]||0,n(e));l(s,i)&&(i=s),t[o]=s},!0),i}function y(e){var t=e.size();if(t[0]!==t[1])throw RangeError(`Invalid matrix dimensions`);var r=p(s(f(e),e)).values.toArray(),i=r[r.length-1];return n(o(i))}function b(e){var t=[],i=0;return e.forEach(function(e,a){var o=a[0],s=r(t[o]||0,n(e));l(s,i)&&(i=s),t[o]=s},!0),i}function x(e,t){if(t===1)return v(e);if(t===1/0||t===`inf`)return b(e);if(t===`fro`)return _(e);if(t===2)return y(e);throw Error(`Unsupported parameter value `+t)}function S(e,t){var n=e.size();if(n.length===1)return g(e,t);if(n.length===2){if(n[0]&&n[1])return x(e,t);throw RangeError(`Invalid matrix dimensions`)}}}),UV=`dot`,WV=Z(UV,[`typed`,`addScalar`,`multiplyScalar`,`conj`,`size`],e=>{var{typed:t,addScalar:n,multiplyScalar:r,conj:i,size:a}=e;return t(UV,{"Array | DenseMatrix, Array | DenseMatrix":s,"SparseMatrix, SparseMatrix":c});function o(e,t){var n=a(e),r=a(t),i,o;if(n.length===1)i=n[0];else if(n.length===2&&n[1]===1)i=n[0];else throw RangeError(`Expected a column vector, instead got a matrix of size (`+n.join(`, `)+`)`);if(r.length===1)o=r[0];else if(r.length===2&&r[1]===1)o=r[0];else throw RangeError(`Expected a column vector, instead got a matrix of size (`+r.join(`, `)+`)`);if(i!==o)throw RangeError(`Vectors must have equal length (`+i+` != `+o+`)`);if(i===0)throw RangeError(`Cannot calculate the dot product of empty vectors`);return i}function s(e,s){var c=o(e,s),l=jE(e)?e._data:e,u=jE(e)?e._datatype||e.getDataType():void 0,d=jE(s)?s._data:s,f=jE(s)?s._datatype||s.getDataType():void 0,p=a(e).length===2,m=a(s).length===2,h=n,g=r;if(u&&f&&u===f&&typeof u==`string`&&u!==`mixed`){var _=u;h=t.find(n,[_,_]),g=t.find(r,[_,_])}if(!p&&!m){for(var v=g(i(l[0]),d[0]),y=1;yh){p++;continue}m===h&&(l=u(l,d(a[f],c[p])),f++,p++)}return l}}),GV=Z(`trace`,[`typed`,`matrix`,`add`],e=>{var{typed:t,matrix:n,add:r}=e;return t(`trace`,{Array:function(e){return i(n(e))},SparseMatrix:a,DenseMatrix:i,any:mD});function i(e){var t=e._size,n=e._data;switch(t.length){case 1:if(t[0]===1)return mD(n[0]);throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);case 2:var i=t[0];if(i===t[1]){for(var a=0,o=0;o0)for(var l=0;ll)break}return c}throw RangeError(`Matrix must be square (size: `+GA(a)+`)`)}}),KV=`index`,qV=Z(KV,[`typed`,`Index`],e=>{var{typed:t,Index:n}=e;return t(KV,{"...number | string | BigNumber | Range | Array | Matrix":function(e){var t=e.map(function(e){return wE(e)?e.toNumber():AE(e)||jE(e)?e.map(function(e){return wE(e)?e.toNumber():e}):e}),r=new n;return n.apply(r,t),r}})}),JV=new Set([`end`]),YV=Z(`Node`,[`mathWithTransform`],e=>{var{mathWithTransform:t}=e;function n(e){for(var t of[...JV])if(e.has(t))throw Error(`Scope contains an illegal symbol, "`+t+`" is a reserved keyword`)}class r{get type(){return`Node`}get isNode(){return!0}evaluate(e){return this.compile().evaluate(e)}compile(){var e=this._compile(t,{}),r={},i=null;function a(t){var a=xE(t);return n(a),e(a,r,i)}return{evaluate:a}}_compile(e,t){throw Error(`Method _compile must be implemented by type `+this.type)}forEach(e){throw Error(`Cannot run forEach on a Node interface`)}map(e){throw Error(`Cannot run map on a Node interface`)}_ifNode(e){if(!aD(e))throw TypeError(`Callback function must return a Node`);return e}traverse(e){e(this,null,null);function t(e,n){e.forEach(function(e,r,i){n(e,r,i),t(e,n)})}t(this,e)}transform(e){function t(n,r,i){var a=e(n,r,i);return a===n?n.map(t):a}return t(this,null,null)}filter(e){var t=[];return this.traverse(function(n,r,i){e(n,r,i)&&t.push(n)}),t}clone(){throw Error(`Cannot clone a Node interface`)}cloneDeep(){return this.map(function(e){return e.cloneDeep()})}equals(e){return e?this.type===e.type&&vD(this,e):!1}toString(e){var t=this._getCustomString(e);return t===void 0?this._toString(e):t}_toString(){throw Error(`_toString not implemented for `+this.type)}toJSON(){throw Error(`Cannot serialize object: toJSON not implemented by `+this.type)}toHTML(e){var t=this._getCustomString(e);return t===void 0?this._toHTML(e):t}_toHTML(){throw Error(`_toHTML not implemented for `+this.type)}toTex(e){var t=this._getCustomString(e);return t===void 0?this._toTex(e):t}_toTex(e){throw Error(`_toTex not implemented for `+this.type)}_getCustomString(e){if(e&&typeof e==`object`)switch(typeof e.handler){case`object`:case`undefined`:return;case`function`:return e.handler(this,e);default:throw TypeError(`Object or function expected as callback`)}}getIdentifier(){return this.type}getContent(){return this}}return r},{isClass:!0,isNode:!0});function XV(e){return e&&e.isIndexError?new ej(e.index+1,e.min+1,e.max===void 0?void 0:e.max+1):e}function ZV(e){var{subset:t}=e;return function(e,n){try{if(Array.isArray(e))return t(e,n);if(e&&typeof e.subset==`function`)return e.subset(n);if(typeof e==`string`)return t(e,n);if(typeof e==`object`){if(!n.isObjectProperty())throw TypeError(`Cannot apply a numeric index as object property`);return cE(e,n.getObjectProperty())}else throw TypeError(`Cannot apply index: unsupported type of object`)}catch(e){throw XV(e)}}}var QV=`AccessorNode`,$V=Z(QV,[`subset`,`Node`],e=>{var{subset:t,Node:n}=e,r=ZV({subset:t});function i(e){return!(YE(e)||XE(e)||eD(e)||rD(e)||oD(e)||cD(e)||dD(e))}class a extends n{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(super(),!aD(e))throw TypeError(`Node expected for parameter "object"`);if(!iD(t))throw TypeError(`IndexNode expected for parameter "index"`);this.object=e,this.index=t,this.optionalChaining=n}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():``:this.object.name||``}get type(){return QV}get isAccessorNode(){return!0}_compile(e,t){var n=this.object._compile(e,t),i=this.index._compile(e,t),a=this.optionalChaining,o=YE(this.object)&&this.object.optionalChaining;if(this.index.isObjectProperty()){var s=this.index.getObjectProperty();return function(e,t,r){var i=r||{},c=n(e,t,i);if(a&&c==null){i.optionalShortCircuit=!0;return}if(!(o&&i!=null&&i.optionalShortCircuit))return cE(c,s)}}else return function(e,t,s){var c=s||{},l=n(e,t,c);if(a&&l==null){c.optionalShortCircuit=!0;return}if(!(o&&c!=null&&c.optionalShortCircuit))return r(l,i(e,t,l))}}forEach(e){e(this.object,`object`,this),e(this.index,`index`,this)}map(e){return new a(this._ifNode(e(this.object,`object`,this)),this._ifNode(e(this.index,`index`,this)),this.optionalChaining)}clone(){return new a(this.object,this.index,this.optionalChaining)}_toString(e){var t=this.object.toString(e);i(this.object)&&(t=`(`+t+`)`);var n=this.optionalChaining?this.index.dotNotation?`?`:`?.`:``;return t+n+this.index.toString(e)}_toHTML(e){var t=this.object.toHTML(e);return i(this.object)&&(t=`(`+t+`)`),t+this.index.toHTML(e)}_toTex(e){var t=this.object.toTex(e);return i(this.object)&&(t=`\\left(' + object + '\\right)`),t+this.index.toTex(e)}toJSON(){return{mathjs:QV,object:this.object,index:this.index,optionalChaining:this.optionalChaining}}static fromJSON(e){return new a(e.object,e.index,e.optionalChaining)}}return XL(a,`name`,QV),a},{isClass:!0,isNode:!0}),eH=`ArrayNode`,tH=Z(eH,[`Node`],e=>{var{Node:t}=e;class n extends t{constructor(e){if(super(),this.items=e||[],!Array.isArray(this.items)||!this.items.every(aD))throw TypeError(`Array containing Nodes expected`)}get type(){return eH}get isArrayNode(){return!0}_compile(e,t){var n=vj(this.items,function(n){return n._compile(e,t)});if(e.config.matrix!==`Array`){var r=e.matrix;return function(e,t,i){return r(vj(n,function(n){return n(e,t,i)}))}}else return function(e,t,r){return vj(n,function(n){return n(e,t,r)})}}forEach(e){for(var t=0;t[`+this.items.map(function(t){return t.toHTML(e)}).join(`,`)+`]`}_toTex(e){function t(n,r){var i=n.some(XE)&&!n.every(XE),a=r||i,o=a?`&`:`\\\\`,s=n.map(function(n){return n.items?t(n.items,!r):n.toTex(e)}).join(o);return i||!a||a&&!r?`\\begin{bmatrix}`+s+`\\end{bmatrix}`:s}return t(this.items,!1)}}return XL(n,`name`,eH),n},{isClass:!0,isNode:!0});function nH(e){var{subset:t,matrix:n}=e;return function(e,r,i){try{if(Array.isArray(e))return n(e).subset(r,i).valueOf().forEach((t,n)=>{e[n]=t}),e;if(e&&typeof e.subset==`function`)return e.subset(r,i);if(typeof e==`string`)return t(e,r,i);if(typeof e==`object`){if(!r.isObjectProperty())throw TypeError(`Cannot apply a numeric index as object property`);return lE(e,r.getObjectProperty(),i),e}else throw TypeError(`Cannot apply index: unsupported type of object`)}catch(e){throw XV(e)}}}var rH=[{AssignmentNode:{},FunctionAssignmentNode:{}},{ConditionalNode:{latexLeftParens:!1,latexRightParens:!1,latexParens:!1}},{"OperatorNode:or":{op:`or`,associativity:`left`,associativeWith:[]}},{"OperatorNode:xor":{op:`xor`,associativity:`left`,associativeWith:[]}},{"OperatorNode:and":{op:`and`,associativity:`left`,associativeWith:[]}},{"OperatorNode:bitOr":{op:`|`,associativity:`left`,associativeWith:[]}},{"OperatorNode:bitXor":{op:`^|`,associativity:`left`,associativeWith:[]}},{"OperatorNode:bitAnd":{op:`&`,associativity:`left`,associativeWith:[]}},{"OperatorNode:equal":{op:`==`,associativity:`left`,associativeWith:[]},"OperatorNode:unequal":{op:`!=`,associativity:`left`,associativeWith:[]},"OperatorNode:smaller":{op:`<`,associativity:`left`,associativeWith:[]},"OperatorNode:larger":{op:`>`,associativity:`left`,associativeWith:[]},"OperatorNode:smallerEq":{op:`<=`,associativity:`left`,associativeWith:[]},"OperatorNode:largerEq":{op:`>=`,associativity:`left`,associativeWith:[]},RelationalNode:{associativity:`left`,associativeWith:[]}},{"OperatorNode:leftShift":{op:`<<`,associativity:`left`,associativeWith:[]},"OperatorNode:rightArithShift":{op:`>>`,associativity:`left`,associativeWith:[]},"OperatorNode:rightLogShift":{op:`>>>`,associativity:`left`,associativeWith:[]}},{"OperatorNode:to":{op:`to`,associativity:`left`,associativeWith:[]}},{RangeNode:{}},{"OperatorNode:add":{op:`+`,associativity:`left`,associativeWith:[`OperatorNode:add`,`OperatorNode:subtract`]},"OperatorNode:subtract":{op:`-`,associativity:`left`,associativeWith:[]}},{"OperatorNode:multiply":{op:`*`,associativity:`left`,associativeWith:[`OperatorNode:multiply`,`OperatorNode:divide`,`Operator:dotMultiply`,`Operator:dotDivide`]},"OperatorNode:divide":{op:`/`,associativity:`left`,associativeWith:[],latexLeftParens:!1,latexRightParens:!1,latexParens:!1},"OperatorNode:dotMultiply":{op:`.*`,associativity:`left`,associativeWith:[`OperatorNode:multiply`,`OperatorNode:divide`,`OperatorNode:dotMultiply`,`OperatorNode:doDivide`]},"OperatorNode:dotDivide":{op:`./`,associativity:`left`,associativeWith:[]},"OperatorNode:mod":{op:`mod`,associativity:`left`,associativeWith:[]}},{"OperatorNode:multiply":{associativity:`left`,associativeWith:[`OperatorNode:multiply`,`OperatorNode:divide`,`Operator:dotMultiply`,`Operator:dotDivide`]}},{"OperatorNode:unaryPlus":{op:`+`,associativity:`right`},"OperatorNode:unaryMinus":{op:`-`,associativity:`right`},"OperatorNode:bitNot":{op:`~`,associativity:`right`},"OperatorNode:not":{op:`not`,associativity:`right`}},{"OperatorNode:pow":{op:`^`,associativity:`right`,associativeWith:[],latexRightParens:!1},"OperatorNode:dotPow":{op:`.^`,associativity:`right`,associativeWith:[]}},{"OperatorNode:nullish":{op:`??`,associativity:`left`,associativeWith:[]}},{"OperatorNode:factorial":{op:`!`,associativity:`left`}},{"OperatorNode:ctranspose":{op:`'`,associativity:`left`}}];function iH(e,t){if(!t||t!==`auto`)return e;for(var n=e;cD(n);)n=n.content;return n}function aH(e,t,n,r){var i=e;t!==`keep`&&(i=e.getContent());for(var a=i.getIdentifier(),o=null,s=0;s{var{subset:t,matrix:n,Node:r}=e,i=ZV({subset:t}),a=nH({subset:t,matrix:n});function o(e,t,n){t||=`keep`;var r=aH(e,t,n),i=aH(e.value,t,n);return t===`all`||i!==null&&i<=r}class s extends r{constructor(e,t,n){if(super(),this.object=e,this.index=n?t:null,this.value=n||t,!dD(e)&&!YE(e))throw TypeError(`SymbolNode or AccessorNode expected as "object"`);if(dD(e)&&e.name===`end`)throw Error(`Cannot assign to symbol "end"`);if(this.index&&!iD(this.index))throw TypeError(`IndexNode expected as "index"`);if(!aD(this.value))throw TypeError(`Node expected as "value"`)}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():``:this.object.name||``}get type(){return lH}get isAssignmentNode(){return!0}_compile(e,t){var n=this.object._compile(e,t),r=this.index?this.index._compile(e,t):null,o=this.value._compile(e,t),s=this.object.name;if(!this.index){if(!dD(this.object))throw TypeError(`SymbolNode expected as object`);return function(e,t,n){var r=o(e,t,n);return e.set(s,r),r}}else if(this.index.isObjectProperty()){var c=this.index.getObjectProperty();return function(e,t,r){var i=n(e,t,r),a=o(e,t,r);return lE(i,c,a),a}}else if(dD(this.object))return function(e,t,i){var c=n(e,t,i),l=o(e,t,i),u=r(e,t,c);return e.set(s,a(c,u,l)),l};else{var l=this.object.object._compile(e,t);if(this.object.index.isObjectProperty()){var u=this.object.index.getObjectProperty();return function(e,t,n){var i=l(e,t,n),s=cE(i,u),c=r(e,t,s),d=o(e,t,n);return lE(i,u,a(s,c,d)),d}}else{var d=this.object.index._compile(e,t);return function(e,t,n){var s=l(e,t,n),c=d(e,t,s),u=i(s,c),f=r(e,t,u),p=o(e,t,n);return a(s,c,a(u,f,p)),p}}}}forEach(e){e(this.object,`object`,this),this.index&&e(this.index,`index`,this),e(this.value,`value`,this)}map(e){return new s(this._ifNode(e(this.object,`object`,this)),this.index?this._ifNode(e(this.index,`index`,this)):null,this._ifNode(e(this.value,`value`,this)))}clone(){return new s(this.object,this.index,this.value)}_toString(e){var t=this.object.toString(e),n=this.index?this.index.toString(e):``,r=this.value.toString(e);return o(this,e&&e.parenthesis,e&&e.implicit)&&(r=`(`+r+`)`),t+n+` = `+r}toJSON(){return{mathjs:lH,object:this.object,index:this.index,value:this.value}}static fromJSON(e){return new s(e.object,e.index,e.value)}_toHTML(e){var t=this.object.toHTML(e),n=this.index?this.index.toHTML(e):``,r=this.value.toHTML(e);return o(this,e&&e.parenthesis,e&&e.implicit)&&(r=`(`+r+`)`),t+n+`=`+r}_toTex(e){var t=this.object.toTex(e),n=this.index?this.index.toTex(e):``,r=this.value.toTex(e);return o(this,e&&e.parenthesis,e&&e.implicit)&&(r=`\\left(${r}\\right)`),t+n+`=`+r}}return XL(s,`name`,lH),s},{isClass:!0,isNode:!0}),dH=`BlockNode`,fH=Z(dH,[`ResultSet`,`Node`],e=>{var{ResultSet:t,Node:n}=e;class r extends n{constructor(e){if(super(),!Array.isArray(e))throw Error(`Array expected`);this.blocks=e.map(function(e){var t=e&&e.node,n=e&&e.visible!==void 0?e.visible:!0;if(!aD(t))throw TypeError(`Property "node" must be a Node`);if(typeof n!=`boolean`)throw TypeError(`Property "visible" must be a boolean`);return{node:t,visible:n}})}get type(){return dH}get isBlockNode(){return!0}_compile(e,n){var r=vj(this.blocks,function(t){return{evaluate:t.node._compile(e,n),visible:t.visible}});return function(e,n,i){var a=[];return yj(r,function(t){var r=t.evaluate(e,n,i);t.visible&&a.push(r)}),new t(a)}}forEach(e){for(var t=0;t;`)}).join(`
`)}_toTex(e){return this.blocks.map(function(t){return t.node.toTex(e)+(t.visible?``:`;`)}).join(`\\;\\; +`)}}return XL(r,`name`,dH),r},{isClass:!0,isNode:!0}),pH=`ConditionalNode`,mH=Z(pH,[`Node`],e=>{var{Node:t}=e;function n(e){if(typeof e==`number`||typeof e==`boolean`||typeof e==`string`)return!!e;if(e){if(wE(e))return!e.isZero();if(EE(e))return!!(e.re||e.im);if(OE(e))return!!e.value}if(e==null)return!1;throw TypeError(`Unsupported type of condition "`+pD(e)+`"`)}class r extends t{constructor(e,t,n){if(super(),!aD(e))throw TypeError(`Parameter condition must be a Node`);if(!aD(t))throw TypeError(`Parameter trueExpr must be a Node`);if(!aD(n))throw TypeError(`Parameter falseExpr must be a Node`);this.condition=e,this.trueExpr=t,this.falseExpr=n}get type(){return pH}get isConditionalNode(){return!0}_compile(e,t){var r=this.condition._compile(e,t),i=this.trueExpr._compile(e,t),a=this.falseExpr._compile(e,t);return function(e,t,o){return n(r(e,t,o))?i(e,t,o):a(e,t,o)}}forEach(e){e(this.condition,`condition`,this),e(this.trueExpr,`trueExpr`,this),e(this.falseExpr,`falseExpr`,this)}map(e){return new r(this._ifNode(e(this.condition,`condition`,this)),this._ifNode(e(this.trueExpr,`trueExpr`,this)),this._ifNode(e(this.falseExpr,`falseExpr`,this)))}clone(){return new r(this.condition,this.trueExpr,this.falseExpr)}_toString(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,n=aH(this,t,e&&e.implicit),r=this.condition.toString(e),i=aH(this.condition,t,e&&e.implicit);(t===`all`||this.condition.type===`OperatorNode`||i!==null&&i<=n)&&(r=`(`+r+`)`);var a=this.trueExpr.toString(e),o=aH(this.trueExpr,t,e&&e.implicit);(t===`all`||this.trueExpr.type===`OperatorNode`||o!==null&&o<=n)&&(a=`(`+a+`)`);var s=this.falseExpr.toString(e),c=aH(this.falseExpr,t,e&&e.implicit);return(t===`all`||this.falseExpr.type===`OperatorNode`||c!==null&&c<=n)&&(s=`(`+s+`)`),r+` ? `+a+` : `+s}toJSON(){return{mathjs:pH,condition:this.condition,trueExpr:this.trueExpr,falseExpr:this.falseExpr}}static fromJSON(e){return new r(e.condition,e.trueExpr,e.falseExpr)}_toHTML(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,n=aH(this,t,e&&e.implicit),r=this.condition.toHTML(e),i=aH(this.condition,t,e&&e.implicit);(t===`all`||this.condition.type===`OperatorNode`||i!==null&&i<=n)&&(r=`(`+r+`)`);var a=this.trueExpr.toHTML(e),o=aH(this.trueExpr,t,e&&e.implicit);(t===`all`||this.trueExpr.type===`OperatorNode`||o!==null&&o<=n)&&(a=`(`+a+`)`);var s=this.falseExpr.toHTML(e),c=aH(this.falseExpr,t,e&&e.implicit);return(t===`all`||this.falseExpr.type===`OperatorNode`||c!==null&&c<=n)&&(s=`(`+s+`)`),r+`?`+a+`:`+s}_toTex(e){return`\\begin{cases} {`+this.trueExpr.toTex(e)+`}, &\\quad{\\text{if }\\;`+this.condition.toTex(e)+`}\\\\{`+this.falseExpr.toTex(e)+`}, &\\quad{\\text{otherwise}}\\end{cases}`}}return XL(r,`name`,pH),r},{isClass:!0,isNode:!0}),hH=l(o(((e,t)=>{var n=Object.assign||function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{},o=t.preserveFormatting,s=o===void 0?!1:o,c=t.escapeMapFn,l=c===void 0?a:c,u=String(e),d=``,f=l(n({},r),s?n({},i):{}),p=Object.keys(f),m=function(){var e=!1;p.forEach(function(t,n){e||u.length>=t.length&&u.slice(0,t.length)===t&&(d+=f[p[n]],u=u.slice(t.length,u.length),e=!0)}),e||(d+=u.slice(0,1),u=u.slice(1,u.length))};u;)m();return d}}))(),1),gH={Alpha:`A`,alpha:`\\alpha`,Beta:`B`,beta:`\\beta`,Gamma:`\\Gamma`,gamma:`\\gamma`,Delta:`\\Delta`,delta:`\\delta`,Epsilon:`E`,epsilon:`\\epsilon`,varepsilon:`\\varepsilon`,Zeta:`Z`,zeta:`\\zeta`,Eta:`H`,eta:`\\eta`,Theta:`\\Theta`,theta:`\\theta`,vartheta:`\\vartheta`,Iota:`I`,iota:`\\iota`,Kappa:`K`,kappa:`\\kappa`,varkappa:`\\varkappa`,Lambda:`\\Lambda`,lambda:`\\lambda`,Mu:`M`,mu:`\\mu`,Nu:`N`,nu:`\\nu`,Xi:`\\Xi`,xi:`\\xi`,Omicron:`O`,omicron:`o`,Pi:`\\Pi`,pi:`\\pi`,varpi:`\\varpi`,Rho:`P`,rho:`\\rho`,varrho:`\\varrho`,Sigma:`\\Sigma`,sigma:`\\sigma`,varsigma:`\\varsigma`,Tau:`T`,tau:`\\tau`,Upsilon:`\\Upsilon`,upsilon:`\\upsilon`,Phi:`\\Phi`,phi:`\\phi`,varphi:`\\varphi`,Chi:`X`,chi:`\\chi`,Psi:`\\Psi`,psi:`\\psi`,Omega:`\\Omega`,omega:`\\omega`,true:`\\mathrm{True}`,false:`\\mathrm{False}`,i:`i`,inf:`\\infty`,Inf:`\\infty`,infinity:`\\infty`,Infinity:`\\infty`,oo:`\\infty`,lim:`\\lim`,undefined:`\\mathbf{?}`},_H={transpose:`^\\top`,ctranspose:`^H`,factorial:`!`,pow:`^`,dotPow:`.^\\wedge`,unaryPlus:`+`,unaryMinus:`-`,bitNot:`\\~`,not:`\\neg`,multiply:`\\cdot`,divide:`\\frac`,dotMultiply:`.\\cdot`,dotDivide:`.:`,mod:`\\mod`,add:`+`,subtract:`-`,to:`\\rightarrow`,leftShift:`<<`,rightArithShift:`>>`,rightLogShift:`>>>`,equal:`=`,unequal:`\\neq`,smaller:`<`,larger:`>`,smallerEq:`\\leq`,largerEq:`\\geq`,bitAnd:`\\&`,bitXor:`\\underline{|}`,bitOr:`|`,and:`\\wedge`,xor:`\\veebar`,or:`\\vee`},vH={abs:{1:"\\left|${args[0]}\\right|"},add:{2:`\\left(\${args[0]}${_H.add}\${args[1]}\\right)`},cbrt:{1:"\\sqrt[3]{${args[0]}}"},ceil:{1:"\\left\\lceil${args[0]}\\right\\rceil"},cube:{1:"\\left(${args[0]}\\right)^3"},divide:{2:"\\frac{${args[0]}}{${args[1]}}"},dotDivide:{2:`\\left(\${args[0]}${_H.dotDivide}\${args[1]}\\right)`},dotMultiply:{2:`\\left(\${args[0]}${_H.dotMultiply}\${args[1]}\\right)`},dotPow:{2:`\\left(\${args[0]}${_H.dotPow}\${args[1]}\\right)`},exp:{1:"\\exp\\left(${args[0]}\\right)"},expm1:`\\left(e${_H.pow}{\${args[0]}}-1\\right)`,fix:{1:"\\mathrm{${name}}\\left(${args[0]}\\right)"},floor:{1:"\\left\\lfloor${args[0]}\\right\\rfloor"},fraction:{2:"\\frac{${args[0]}}{${args[1]}}"},gcd:"\\gcd\\left(${args}\\right)",hypot:"\\hypot\\left(${args}\\right)",log:{1:"\\ln\\left(${args[0]}\\right)",2:"\\log_{${args[1]}}\\left(${args[0]}\\right)"},log10:{1:"\\log_{10}\\left(${args[0]}\\right)"},log1p:{1:"\\ln\\left(${args[0]}+1\\right)",2:"\\log_{${args[1]}}\\left(${args[0]}+1\\right)"},log2:"\\log_{2}\\left(${args[0]}\\right)",mod:{2:`\\left(\${args[0]}${_H.mod}\${args[1]}\\right)`},multiply:{2:`\\left(\${args[0]}${_H.multiply}\${args[1]}\\right)`},norm:{1:"\\left\\|${args[0]}\\right\\|",2:void 0},nthRoot:{2:"\\sqrt[${args[1]}]{${args[0]}}"},nthRoots:{2:"\\{y : y^${args[1]} = {${args[0]}}\\}"},pow:{2:`\\left(\${args[0]}\\right)${_H.pow}{\${args[1]}}`},round:{1:"\\left\\lfloor${args[0]}\\right\\rceil",2:void 0},sign:{1:"\\mathrm{${name}}\\left(${args[0]}\\right)"},sqrt:{1:"\\sqrt{${args[0]}}"},square:{1:"\\left(${args[0]}\\right)^2"},subtract:{2:`\\left(\${args[0]}${_H.subtract}\${args[1]}\\right)`},unaryMinus:{1:`${_H.unaryMinus}\\left(\${args[0]}\\right)`},unaryPlus:{1:`${_H.unaryPlus}\\left(\${args[0]}\\right)`},bitAnd:{2:`\\left(\${args[0]}${_H.bitAnd}\${args[1]}\\right)`},bitNot:{1:_H.bitNot+"\\left(${args[0]}\\right)"},bitOr:{2:`\\left(\${args[0]}${_H.bitOr}\${args[1]}\\right)`},bitXor:{2:`\\left(\${args[0]}${_H.bitXor}\${args[1]}\\right)`},leftShift:{2:`\\left(\${args[0]}${_H.leftShift}\${args[1]}\\right)`},rightArithShift:{2:`\\left(\${args[0]}${_H.rightArithShift}\${args[1]}\\right)`},rightLogShift:{2:`\\left(\${args[0]}${_H.rightLogShift}\${args[1]}\\right)`},bellNumbers:{1:"\\mathrm{B}_{${args[0]}}"},catalan:{1:"\\mathrm{C}_{${args[0]}}"},stirlingS2:{2:"\\mathrm{S}\\left(${args}\\right)"},arg:{1:"\\arg\\left(${args[0]}\\right)"},conj:{1:"\\left(${args[0]}\\right)^*"},im:{1:"\\Im\\left\\lbrace${args[0]}\\right\\rbrace"},re:{1:"\\Re\\left\\lbrace${args[0]}\\right\\rbrace"},and:{2:`\\left(\${args[0]}${_H.and}\${args[1]}\\right)`},not:{1:_H.not+"\\left(${args[0]}\\right)"},or:{2:`\\left(\${args[0]}${_H.or}\${args[1]}\\right)`},xor:{2:`\\left(\${args[0]}${_H.xor}\${args[1]}\\right)`},cross:{2:"\\left(${args[0]}\\right)\\times\\left(${args[1]}\\right)"},ctranspose:{1:`\\left(\${args[0]}\\right)${_H.ctranspose}`},det:{1:"\\det\\left(${args[0]}\\right)"},dot:{2:"\\left(${args[0]}\\cdot${args[1]}\\right)"},expm:{1:"\\exp\\left(${args[0]}\\right)"},inv:{1:"\\left(${args[0]}\\right)^{-1}"},pinv:{1:"\\left(${args[0]}\\right)^{+}"},sqrtm:{1:`{\${args[0]}}${_H.pow}{\\frac{1}{2}}`},trace:{1:"\\mathrm{tr}\\left(${args[0]}\\right)"},transpose:{1:`\\left(\${args[0]}\\right)${_H.transpose}`},combinations:{2:"\\binom{${args[0]}}{${args[1]}}"},combinationsWithRep:{2:"\\left(\\!\\!{\\binom{${args[0]}}{${args[1]}}}\\!\\!\\right)"},factorial:{1:`\\left(\${args[0]}\\right)${_H.factorial}`},gamma:{1:"\\Gamma\\left(${args[0]}\\right)"},lgamma:{1:"\\ln\\Gamma\\left(${args[0]}\\right)"},equal:{2:`\\left(\${args[0]}${_H.equal}\${args[1]}\\right)`},larger:{2:`\\left(\${args[0]}${_H.larger}\${args[1]}\\right)`},largerEq:{2:`\\left(\${args[0]}${_H.largerEq}\${args[1]}\\right)`},smaller:{2:`\\left(\${args[0]}${_H.smaller}\${args[1]}\\right)`},smallerEq:{2:`\\left(\${args[0]}${_H.smallerEq}\${args[1]}\\right)`},unequal:{2:`\\left(\${args[0]}${_H.unequal}\${args[1]}\\right)`},erf:{1:"erf\\left(${args[0]}\\right)"},max:"\\max\\left(${args}\\right)",min:"\\min\\left(${args}\\right)",variance:"\\mathrm{Var}\\left(${args}\\right)",acos:{1:"\\cos^{-1}\\left(${args[0]}\\right)"},acosh:{1:"\\cosh^{-1}\\left(${args[0]}\\right)"},acot:{1:"\\cot^{-1}\\left(${args[0]}\\right)"},acoth:{1:"\\coth^{-1}\\left(${args[0]}\\right)"},acsc:{1:"\\csc^{-1}\\left(${args[0]}\\right)"},acsch:{1:"\\mathrm{csch}^{-1}\\left(${args[0]}\\right)"},asec:{1:"\\sec^{-1}\\left(${args[0]}\\right)"},asech:{1:"\\mathrm{sech}^{-1}\\left(${args[0]}\\right)"},asin:{1:"\\sin^{-1}\\left(${args[0]}\\right)"},asinh:{1:"\\sinh^{-1}\\left(${args[0]}\\right)"},atan:{1:"\\tan^{-1}\\left(${args[0]}\\right)"},atan2:{2:"\\mathrm{atan2}\\left(${args}\\right)"},atanh:{1:"\\tanh^{-1}\\left(${args[0]}\\right)"},cos:{1:"\\cos\\left(${args[0]}\\right)"},cosh:{1:"\\cosh\\left(${args[0]}\\right)"},cot:{1:"\\cot\\left(${args[0]}\\right)"},coth:{1:"\\coth\\left(${args[0]}\\right)"},csc:{1:"\\csc\\left(${args[0]}\\right)"},csch:{1:"\\mathrm{csch}\\left(${args[0]}\\right)"},sec:{1:"\\sec\\left(${args[0]}\\right)"},sech:{1:"\\mathrm{sech}\\left(${args[0]}\\right)"},sin:{1:"\\sin\\left(${args[0]}\\right)"},sinh:{1:"\\sinh\\left(${args[0]}\\right)"},tan:{1:"\\tan\\left(${args[0]}\\right)"},tanh:{1:"\\tanh\\left(${args[0]}\\right)"},to:{2:`\\left(\${args[0]}${_H.to}\${args[1]}\\right)`},numeric:function(e,t){return e.args[0].toTex()},number:{0:`0`,1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)${args[1]}\\right)"},string:{0:`\\mathtt{""}`,1:"\\mathrm{string}\\left(${args[0]}\\right)"},bignumber:{0:`0`,1:"\\left(${args[0]}\\right)"},bigint:{0:`0`,1:"\\left(${args[0]}\\right)"},complex:{0:`0`,1:"\\left(${args[0]}\\right)",2:`\\left(\\left(\${args[0]}\\right)+${gH.i}\\cdot\\left(\${args[1]}\\right)\\right)`},matrix:{0:`\\begin{bmatrix}\\end{bmatrix}`,1:"\\left(${args[0]}\\right)",2:"\\left(${args[0]}\\right)"},sparse:{0:`\\begin{bsparse}\\end{bsparse}`,1:"\\left(${args[0]}\\right)"},unit:{1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)${args[1]}\\right)"}},yH="\\mathrm{${name}}\\left(${args}\\right)",bH={deg:`^\\circ`};function xH(e){return(0,hH.default)(e,{preserveFormatting:!0})}function SH(e,t){return t=t===void 0?!1:t,t?SD(bH,e)?bH[e]:`\\mathrm{`+xH(e)+`}`:SD(gH,e)?gH[e]:xH(e)}var CH=`ConstantNode`,wH=Z(CH,[`Node`,`isBounded`],e=>{var{Node:t,isBounded:n}=e;class r extends t{constructor(e){super(),this.value=e}get type(){return CH}get isConstantNode(){return!0}_compile(e,t){var n=this.value;return function(){return n}}forEach(e){}map(e){return this.clone()}clone(){return new r(this.value)}_toString(e){return GA(this.value,e)}_toHTML(e){var t=this._toString(e);switch(pD(this.value)){case`number`:case`bigint`:case`BigNumber`:case`Fraction`:return``+t+``;case`string`:return``+t+``;case`boolean`:return``+t+``;case`null`:return``+t+``;case`undefined`:return``+t+``;default:return``+t+``}}toJSON(){return{mathjs:CH,value:this.value}}static fromJSON(e){return new r(e.value)}_toTex(e){var t=this._toString(e);switch(pD(this.value)){case`string`:return`\\mathtt{`+xH(t)+`}`;case`number`:case`BigNumber`:if(!n(this.value))return this.value.valueOf()<0?`-\\infty`:`\\infty`;var r=t.toLowerCase().indexOf(`e`);return r===-1?t:t.substring(0,r)+`\\cdot10^{`+t.substring(r+1)+`}`;case`bigint`:return t.toString();case`Fraction`:return this.value.toLatex();default:return t}}}return XL(r,`name`,CH),r},{isClass:!0,isNode:!0}),TH=`FunctionAssignmentNode`,EH=Z(TH,[`typed`,`Node`],e=>{var{typed:t,Node:n}=e;function r(e,t,n){var r=aH(e,t,n),i=aH(e.expr,t,n);return t===`all`||i!==null&&i<=r}class i extends n{constructor(e,t,n){if(super(),typeof e!=`string`)throw TypeError(`String expected for parameter "name"`);if(!Array.isArray(t))throw TypeError(`Array containing strings or objects expected for parameter "params"`);if(!aD(n))throw TypeError(`Node expected for parameter "expr"`);if(JV.has(e))throw Error(`Illegal function name, "`+e+`" is a reserved keyword`);var r=new Set;for(var i of t){var a=typeof i==`string`?i:i.name;if(r.has(a))throw Error(`Duplicate parameter name "${a}"`);r.add(a)}this.name=e,this.params=t.map(function(e){return e&&e.name||e}),this.types=t.map(function(e){return e&&e.type||`any`}),this.expr=n}get type(){return TH}get isFunctionAssignmentNode(){return!0}_compile(e,n){var r=Object.create(n);yj(this.params,function(e){r[e]=!0});var i=this.expr,a=i._compile(e,r),o=this.name,s=this.params,c=Sj(this.types,`,`),l=o+`(`+Sj(this.params,`, `)+`)`;return function(e,n,r){var u={};u[c]=function(){for(var t=Object.create(n),i=0;i`+YA(this.params[i])+``);var a=this.expr.toHTML(e);return r(this,t,e&&e.implicit)&&(a=`(`+a+`)`),``+YA(this.name)+`(`+n.join(`,`)+`)=`+a}_toTex(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,n=this.expr.toTex(e);return r(this,t,e&&e.implicit)&&(n=`\\left(${n}\\right)`),`\\mathrm{`+this.name+`}\\left(`+this.params.map(SH).join(`,`)+`\\right)=`+n}}return XL(i,`name`,TH),i},{isClass:!0,isNode:!0}),DH=`IndexNode`,OH=Z(DH,[`Node`,`size`],e=>{var{Node:t,size:n}=e;class r extends t{constructor(e,t){if(super(),this.dimensions=e,this.dotNotation=t||!1,!Array.isArray(e)||!e.every(aD))throw TypeError(`Array containing Nodes expected for parameter "dimensions"`);if(this.dotNotation&&!this.isObjectProperty())throw Error(`dotNotation only applicable for object properties`)}get type(){return DH}get isIndexNode(){return!0}_compile(e,t){var r=vj(this.dimensions,function(r,i){if(r.filter(e=>e.isSymbolNode&&e.name===`end`).length>0){var a=Object.create(t);a.end=!0;var o=r._compile(e,a);return function(e,t,r){if(!jE(r)&&!AE(r)&&!kE(r))throw TypeError(`Cannot resolve "end": context must be a Matrix, Array, or string but is `+pD(r));var a=n(r),s=Object.create(t);return s.end=a[i],o(e,s,r)}}else return r._compile(e,t)}),i=cE(e,`index`);return function(e,t,n){return i(...vj(r,function(r){return r(e,t,n)}))}}forEach(e){for(var t=0;t.`+YA(this.getObjectProperty())+``:`[`+t.join(`,`)+`]`}_toTex(e){var t=this.dimensions.map(function(t){return t.toTex(e)});return this.dotNotation?`.`+this.getObjectProperty():`_{`+t.join(`,`)+`}`}}return XL(r,`name`,DH),r},{isClass:!0,isNode:!0}),kH=`ObjectNode`,AH=Z(kH,[`Node`],e=>{var{Node:t}=e;class n extends t{constructor(e){if(super(),this.properties=e||{},e&&(typeof e!=`object`||!Object.keys(e).every(function(t){return aD(e[t])})))throw TypeError(`Object containing Nodes expected`)}get type(){return kH}get isObjectNode(){return!0}_compile(e,t){var n={};for(var r in this.properties)if(SD(this.properties,r)){var i=qA(r),a=JSON.parse(i);n[a]=cE(this.properties,r)._compile(e,t)}return function(e,t,r){var i={};for(var a in n)SD(n,a)&&(i[a]=n[a](e,t,r));return i}}forEach(e){for(var t in this.properties)SD(this.properties,t)&&e(this.properties[t],`properties[`+qA(t)+`]`,this)}map(e){var t={};for(var r in this.properties)SD(this.properties,r)&&(t[r]=this._ifNode(e(this.properties[r],`properties[`+qA(r)+`]`,this)));return new n(t)}clone(){var e={};for(var t in this.properties)SD(this.properties,t)&&(e[t]=this.properties[t]);return new n(e)}_toString(e){var t=[];for(var n in this.properties)SD(this.properties,n)&&t.push(qA(n)+`: `+this.properties[n].toString(e));return`{`+t.join(`, `)+`}`}toJSON(){return{mathjs:kH,properties:this.properties}}static fromJSON(e){return new n(e.properties)}_toHTML(e){var t=[];for(var n in this.properties)SD(this.properties,n)&&t.push(``+YA(n)+`:`+this.properties[n].toHTML(e));return`{`+t.join(`,`)+`}`}_toTex(e){var t=[];for(var n in this.properties)SD(this.properties,n)&&t.push(`\\mathbf{`+n+`:} & `+this.properties[n].toTex(e)+`\\\\`);return`\\left\\{\\begin{array}{ll}`+t.join(` +`)+`\\end{array}\\right\\}`}}return XL(n,`name`,kH),n},{isClass:!0,isNode:!0});function jH(e,t){return new vE(e,new _E(t),new Set(Object.keys(t)))}var MH=`OperatorNode`,NH=Z(MH,[`Node`],e=>{var{Node:t}=e;function n(e,t){var r=e;if(t===`auto`)for(;cD(r);)r=r.content;return eD(r)?!0:sD(r)?n(r.args[0],t):!1}function r(e,t,r,i,a){var o=aH(e,t,r),s=oH(e,t);if(t===`all`||i.length>2&&e.getIdentifier()!==`OperatorNode:add`&&e.getIdentifier()!==`OperatorNode:multiply`)return i.map(function(e){switch(e.getContent().type){case`ArrayNode`:case`ConstantNode`:case`SymbolNode`:case`ParenthesisNode`:return!1;default:return!0}});var c;switch(i.length){case 0:c=[];break;case 1:var l=aH(i[0],t,r,e);if(a&&l!==null){var u,d;if(t===`keep`?(u=i[0].getIdentifier(),d=e.getIdentifier()):(u=i[0].getContent().getIdentifier(),d=e.getContent().getIdentifier()),rH[o][d].latexLeftParens===!1){c=[!1];break}if(rH[l][u].latexParens===!1){c=[!1];break}}if(l===null){c=[!1];break}if(l<=o){c=[!0];break}c=[!1];break;case 2:var f,p=aH(i[0],t,r,e),m=sH(e,i[0],t);f=p===null?!1:p===o&&s===`right`&&!m?!0:p=2&&e.getIdentifier()===`OperatorNode:multiply`&&e.implicit&&t!==`all`&&r===`hide`)for(var x=1;x2&&(this.getIdentifier()===`OperatorNode:add`||this.getIdentifier()===`OperatorNode:multiply`)){var d=i.map(function(t,n){return t=t.toString(e),a[n]&&(t=`(`+t+`)`),t});return this.implicit&&this.getIdentifier()===`OperatorNode:multiply`&&n===`hide`?d.join(` `):d.join(` `+this.op+` `)}else return this.fn+`(`+this.args.join(`, `)+`)`}toJSON(){return{mathjs:MH,op:this.op,fn:this.fn,args:this.args,implicit:this.implicit,isPercentage:this.isPercentage}}static fromJSON(e){return new i(e.op,e.fn,e.args,e.implicit,e.isPercentage)}_toHTML(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,n=e&&e.implicit?e.implicit:`hide`,i=this.args,a=r(this,t,n,i,!1);if(i.length===1){var o=oH(this,t),s=i[0].toHTML(e);return a[0]&&(s=`(`+s+`)`),o===`right`?``+YA(this.op)+``+s:s+``+YA(this.op)+``}else if(i.length===2){var c=i[0].toHTML(e),l=i[1].toHTML(e);return a[0]&&(c=`(`+c+`)`),a[1]&&(l=`(`+l+`)`),this.implicit&&this.getIdentifier()===`OperatorNode:multiply`&&n===`hide`?c+``+l:c+``+YA(this.op)+``+l}else{var u=i.map(function(t,n){return t=t.toHTML(e),a[n]&&(t=`(`+t+`)`),t});return i.length>2&&(this.getIdentifier()===`OperatorNode:add`||this.getIdentifier()===`OperatorNode:multiply`)?this.implicit&&this.getIdentifier()===`OperatorNode:multiply`&&n===`hide`?u.join(``):u.join(``+YA(this.op)+``):``+YA(this.fn)+`(`+u.join(`,`)+`)`}}_toTex(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,n=e&&e.implicit?e.implicit:`hide`,i=this.args,a=r(this,t,n,i,!0),o=_H[this.fn];if(o=o===void 0?this.op:o,i.length===1){var s=oH(this,t),c=i[0].toTex(e);return a[0]&&(c=`\\left(${c}\\right)`),s===`right`?o+c:c+o}else if(i.length===2){var l=i[0],u=l.toTex(e);a[0]&&(u=`\\left(${u}\\right)`);var d=i[1].toTex(e);a[1]&&(d=`\\left(${d}\\right)`);var f=t===`keep`?l.getIdentifier():l.getContent().getIdentifier();switch(this.getIdentifier()){case`OperatorNode:divide`:return o+`{`+u+`}{`+d+`}`;case`OperatorNode:pow`:switch(u=`{`+u+`}`,d=`{`+d+`}`,f){case`ConditionalNode`:case`OperatorNode:divide`:u=`\\left(${u}\\right)`}break;case`OperatorNode:multiply`:if(this.implicit&&n===`hide`)return u+`~`+d}return u+o+d}else if(i.length>2&&(this.getIdentifier()===`OperatorNode:add`||this.getIdentifier()===`OperatorNode:multiply`)){var p=i.map(function(t,n){return t=t.toTex(e),a[n]&&(t=`\\left(${t}\\right)`),t});return this.getIdentifier()===`OperatorNode:multiply`&&this.implicit&&n===`hide`?p.join(`~`):p.join(o)}else return`\\mathrm{`+this.fn+`}\\left(`+i.map(function(t){return t.toTex(e)}).join(`,`)+`\\right)`}getIdentifier(){return this.type+`:`+this.fn}}return XL(i,`name`,MH),i},{isClass:!0,isNode:!0}),PH=`ParenthesisNode`,FH=Z(PH,[`Node`],e=>{var{Node:t}=e;class n extends t{constructor(e){if(super(),!aD(e))throw TypeError(`Node expected for parameter "content"`);this.content=e}get type(){return PH}get isParenthesisNode(){return!0}_compile(e,t){return this.content._compile(e,t)}getContent(){return this.content.getContent()}forEach(e){e(this.content,`content`,this)}map(e){return new n(e(this.content,`content`,this))}clone(){return new n(this.content)}_toString(e){return!e||e&&!e.parenthesis||e&&e.parenthesis===`keep`?`(`+this.content.toString(e)+`)`:this.content.toString(e)}toJSON(){return{mathjs:PH,content:this.content}}static fromJSON(e){return new n(e.content)}_toHTML(e){return!e||e&&!e.parenthesis||e&&e.parenthesis===`keep`?`(`+this.content.toHTML(e)+`)`:this.content.toHTML(e)}_toTex(e){return!e||e&&!e.parenthesis||e&&e.parenthesis===`keep`?`\\left(${this.content.toTex(e)}\\right)`:this.content.toTex(e)}}return XL(n,`name`,PH),n},{isClass:!0,isNode:!0}),IH=`RangeNode`,LH=Z(IH,[`Node`],e=>{var{Node:t}=e;function n(e,t,n){var r=aH(e,t,n),i={},a=aH(e.start,t,n);if(i.start=a!==null&&a<=r||t===`all`,e.step){var o=aH(e.step,t,n);i.step=o!==null&&o<=r||t===`all`}var s=aH(e.end,t,n);return i.end=s!==null&&s<=r||t===`all`,i}class r extends t{constructor(e,t,n){if(super(),!aD(e)||!aD(t)||n&&!aD(n))throw TypeError(`Node expected`);if(arguments.length>3)throw Error(`Too many arguments`);this.start=e,this.end=t,this.step=n||null}get type(){return IH}get isRangeNode(){return!0}needsEnd(){return this.filter(function(e){return dD(e)&&e.name===`end`}).length>0}_compile(e,t){var n=e.range,r=this.start._compile(e,t),i=this.end._compile(e,t);if(this.step){var a=this.step._compile(e,t);return function(e,t,o){return n(r(e,t,o),i(e,t,o),a(e,t,o))}}else return function(e,t,a){return n(r(e,t,a),i(e,t,a))}}forEach(e){e(this.start,`start`,this),e(this.end,`end`,this),this.step&&e(this.step,`step`,this)}map(e){return new r(this._ifNode(e(this.start,`start`,this)),this._ifNode(e(this.end,`end`,this)),this.step&&this._ifNode(e(this.step,`step`,this)))}clone(){return new r(this.start,this.end,this.step&&this.step)}_toString(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,r=n(this,t,e&&e.implicit),i,a=this.start.toString(e);if(r.start&&(a=`(`+a+`)`),i=a,this.step){var o=this.step.toString(e);r.step&&(o=`(`+o+`)`),i+=`:`+o}var s=this.end.toString(e);return r.end&&(s=`(`+s+`)`),i+=`:`+s,i}toJSON(){return{mathjs:IH,start:this.start,end:this.end,step:this.step}}static fromJSON(e){return new r(e.start,e.end,e.step)}_toHTML(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,r=n(this,t,e&&e.implicit),i,a=this.start.toHTML(e);if(r.start&&(a=`(`+a+`)`),i=a,this.step){var o=this.step.toHTML(e);r.step&&(o=`(`+o+`)`),i+=`:`+o}var s=this.end.toHTML(e);return r.end&&(s=`(`+s+`)`),i+=`:`+s,i}_toTex(e){var t=e&&e.parenthesis?e.parenthesis:`keep`,r=n(this,t,e&&e.implicit),i=this.start.toTex(e);if(r.start&&(i=`\\left(${i}\\right)`),this.step){var a=this.step.toTex(e);r.step&&(a=`\\left(${a}\\right)`),i+=`:`+a}var o=this.end.toTex(e);return r.end&&(o=`\\left(${o}\\right)`),i+=`:`+o,i}}return XL(r,`name`,IH),r},{isClass:!0,isNode:!0}),RH=`RelationalNode`,zH=Z(RH,[`Node`],e=>{var{Node:t}=e,n={equal:`==`,unequal:`!=`,smaller:`<`,larger:`>`,smallerEq:`<=`,largerEq:`>=`};class r extends t{constructor(e,t){if(super(),!Array.isArray(e))throw TypeError(`Parameter conditionals must be an array`);if(!Array.isArray(t))throw TypeError(`Parameter params must be an array`);if(e.length!==t.length-1)throw TypeError(`Parameter params must contain exactly one more element than parameter conditionals`);this.conditionals=e,this.params=t}get type(){return RH}get isRelationalNode(){return!0}_compile(e,t){var n=this,r=this.params.map(n=>n._compile(e,t));return function(t,i,a){for(var o,s=r[0](t,i,a),c=0;ce(t,`params[`+n+`]`,this),this)}map(e){return new r(this.conditionals.slice(),this.params.map((t,n)=>this._ifNode(e(t,`params[`+n+`]`,this)),this))}clone(){return new r(this.conditionals,this.params)}_toString(e){for(var t=e&&e.parenthesis?e.parenthesis:`keep`,r=aH(this,t,e&&e.implicit),i=this.params.map(function(n,i){var a=aH(n,t,e&&e.implicit);return t===`all`||a!==null&&a<=r?`(`+n.toString(e)+`)`:n.toString(e)}),a=i[0],o=0;o(`+n.toHTML(e)+`)`:n.toHTML(e)}),a=i[0],o=0;o`+YA(n[this.conditionals[o]])+``+i[o+1];return a}_toTex(e){for(var t=e&&e.parenthesis?e.parenthesis:`keep`,n=aH(this,t,e&&e.implicit),r=this.params.map(function(r,i){var a=aH(r,t,e&&e.implicit);return t===`all`||a!==null&&a<=n?`\\left(`+r.toTex(e)+`\right)`:r.toTex(e)}),i=r[0],a=0;a{var{math:t,Unit:n,Node:r}=e;function i(e){return n?n.isValuelessUnit(e):!1}class a extends r{constructor(e){if(super(),typeof e!=`string`)throw TypeError(`String expected for parameter "name"`);this.name=e}get type(){return`SymbolNode`}get isSymbolNode(){return!0}_compile(e,t){var r=this.name;if(t[r]===!0)return function(e,t,n){return cE(t,r)};if(r in e)return function(t,n,i){return t.has(r)?t.get(r):cE(e,r)};var o=i(r);return function(e,t,i){return e.has(r)?e.get(r):o?new n(null,r):a.onUndefinedSymbol(r)}}forEach(e){}map(e){return this.clone()}static onUndefinedSymbol(e){throw Error(`Undefined symbol `+e)}clone(){return new a(this.name)}_toString(e){return this.name}_toHTML(e){var t=YA(this.name);return t===`true`||t===`false`?``+t+``:t===`i`?``+t+``:t===`Infinity`?``+t+``:t===`NaN`?``+t+``:t===`null`?``+t+``:t===`undefined`?``+t+``:``+t+``}toJSON(){return{mathjs:`SymbolNode`,name:this.name}}static fromJSON(e){return new a(e.name)}_toTex(e){var n=!1;t[this.name]===void 0&&i(this.name)&&(n=!0);var r=SH(this.name,n);return r[0]===`\\`?r:` `+r}}return a},{isClass:!0,isNode:!0}),VH=`FunctionNode`,HH=Z(VH,[`math`,`Node`,`SymbolNode`],e=>{var t,{math:n,Node:r,SymbolNode:i}=e,a=e=>GA(e,{truncate:78});function o(e,t,n){for(var r=``,i=/\$(?:\{([a-z_][a-z_0-9]*)(?:\[([0-9]+)\])?\}|\$)/gi,a=0,o;(o=i.exec(e))!==null;)if(r+=e.substring(a,o.index),a=o.index,o[0]===`$$`)r+=`$`,a++;else{a+=o[0].length;var s=t[o[1]];if(!s)throw ReferenceError(`Template: Property `+o[1]+` does not exist.`);if(o[2]===void 0)switch(typeof s){case`string`:r+=s;break;case`object`:if(aD(s))r+=s.toTex(n);else if(Array.isArray(s))r+=s.map(function(e,t){if(aD(e))return e.toTex(n);throw TypeError(`Template: `+o[1]+`[`+t+`] is not a Node.`)}).join(`,`);else throw TypeError(`Template: `+o[1]+` has to be a Node, String or array of Nodes`);break;default:throw TypeError(`Template: `+o[1]+` has to be a Node, String or array of Nodes`)}else if(aD(s[o[2]]&&s[o[2]]))r+=s[o[2]].toTex(n);else throw TypeError(`Template: `+o[1]+`[`+o[2]+`] is not a Node.`)}return r+=e.slice(a),r}class s extends r{constructor(e,t,n){if(super(),typeof e==`string`&&(e=new i(e)),!aD(e))throw TypeError(`Node expected as parameter "fn"`);if(!Array.isArray(t)||!t.every(aD))throw TypeError(`Array containing Nodes expected for parameter "args"`);var r=typeof n;if(!(r===`undefined`||r===`boolean`))throw TypeError(`optional flag, if specified, must be boolean`);this.fn=e,this.args=t||[],this.optional=!!n}get name(){return this.fn.name||``}get type(){return VH}get isFunctionNode(){return!0}_compile(e,t){var n=this.args.map(n=>n._compile(e,t)),r=this.optional||YE(this.fn)&&this.fn.optionalChaining;if(dD(this.fn)){var i=this.fn.name;if(t[i]){var o=this.args;return function(t,s,c){var l=cE(s,i);if(!(r&&l===void 0)){if(typeof l!=`function`)throw TypeError(`Argument '${i}' was not a function; received: ${a(l)}`);if(l.rawArgs)return l(o,e,jH(t,s));var u=n.map(e=>e(t,s,c));return l.apply(l,u)}}}else{var c=i in e?cE(e,i):void 0,l=typeof c==`function`&&c.rawArgs===!0,u=t=>{var n;if(t.has(i))n=t.get(i);else if(i in e)n=cE(e,i);else if(r)n=void 0;else return s.onUndefinedFunction(i);if(typeof n==`function`||r&&n===void 0)return n;throw TypeError(`'${i}' is not a function; its value is: + ${a(n)}`)};if(l){var d=this.args;return function(t,r,i){var a=u(t);return a.rawArgs===!0?a(d,e,jH(t,r)):a(...n.map(e=>e(t,r,i)))}}else switch(n.length){case 0:return function(e,t,n){var i=u(e);if(!(r&&i===void 0))return i()};case 1:return function(e,t,i){var a=u(e);if(!(r&&a===void 0)){var o=n[0];return a(o(e,t,i))}};case 2:return function(e,t,i){var a=u(e);if(!(r&&a===void 0)){var o=n[0],s=n[1];return a(o(e,t,i),s(e,t,i))}};default:return function(e,t,i){var a=u(e);if(!(r&&a===void 0))return a(...n.map(n=>n(e,t,i)))}}}}else if(YE(this.fn)&&iD(this.fn.index)&&this.fn.index.isObjectProperty()){var f=this.fn.object._compile(e,t),p=this.fn.index.getObjectProperty(),m=this.args;return function(t,i,a){var o=f(t,i,a);if(!(r&&(o==null||o[p]===void 0))){var s=pE(o,p);if(s!=null&&s.rawArgs)return s(m,e,jH(t,i));var c=n.map(e=>e(t,i,a));return s.apply(o,c)}}}else{var h=this.fn.toString(),g=this.fn._compile(e,t),_=this.args;return function(t,i,o){var s=g(t,i,o);if(!(r&&s===void 0)){if(typeof s!=`function`)throw TypeError(`Expression '${h}' did not evaluate to a function; value is: + ${a(s)}`);if(s.rawArgs)return s(_,e,jH(t,i));var c=n.map(e=>e(t,i,o));return s.apply(s,c)}}}}forEach(e){e(this.fn,`fn`,this);for(var t=0;t`+YA(this.fn)+`(`+t.join(`,`)+`)`}toTex(e){var t;return e&&typeof e.handler==`object`&&SD(e.handler,this.name)&&(t=e.handler[this.name](this,e)),t===void 0?super.toTex(e):t}_toTex(e){var t=this.args.map(function(t){return t.toTex(e)}),r;vH[this.name]&&(r=vH[this.name]),n[this.name]&&(typeof n[this.name].toTex==`function`||typeof n[this.name].toTex==`object`||typeof n[this.name].toTex==`string`)&&(r=n[this.name].toTex);var i;switch(typeof r){case`function`:i=r(this,e);break;case`string`:i=o(r,this,e);break;case`object`:switch(typeof r[t.length]){case`function`:i=r[t.length](this,e);break;case`string`:i=o(r[t.length],this,e);break}}return i===void 0?o(yH,this,e):i}getIdentifier(){return this.type+`:`+this.name}}return t=s,XL(s,`name`,VH),XL(s,`onUndefinedFunction`,function(e){throw Error(`Undefined function `+e)}),XL(s,`fromJSON`,function(e){return new t(e.fn,e.args)}),s},{isClass:!0,isNode:!0}),UH=`parse`,WH=Z(UH,[`typed`,`numeric`,`config`,`AccessorNode`,`ArrayNode`,`AssignmentNode`,`BlockNode`,`ConditionalNode`,`ConstantNode`,`FunctionAssignmentNode`,`FunctionNode`,`IndexNode`,`ObjectNode`,`OperatorNode`,`ParenthesisNode`,`RangeNode`,`RelationalNode`,`SymbolNode`],e=>{var{typed:t,numeric:n,config:r,AccessorNode:i,ArrayNode:a,AssignmentNode:o,BlockNode:s,ConditionalNode:c,ConstantNode:l,FunctionAssignmentNode:u,FunctionNode:d,IndexNode:f,ObjectNode:p,OperatorNode:m,ParenthesisNode:h,RangeNode:g,RelationalNode:_,SymbolNode:v}=e,y=t(UH,{string:function(e){return L(e,{})},"Array | Matrix":function(e){return b(e,{})},"string, Object":function(e,t){return L(e,t.nodes===void 0?{}:t.nodes)},"Array | Matrix, Object":b});function b(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.nodes===void 0?{}:t.nodes;return Jj(e,function(e){if(typeof e!=`string`)throw TypeError(`String expected`);return L(e,n)})}var x={NULL:0,DELIMITER:1,NUMBER:2,SYMBOL:3,UNKNOWN:4},S={",":!0,"(":!0,")":!0,"[":!0,"]":!0,"{":!0,"}":!0,'"':!0,"'":!0,";":!0,"+":!0,"-":!0,"*":!0,".*":!0,"/":!0,"./":!0,"%":!0,"^":!0,".^":!0,"~":!0,"!":!0,"&":!0,"|":!0,"^|":!0,"=":!0,":":!0,"?":!0,"?.":!0,"??":!0,"==":!0,"!=":!0,"<":!0,">":!0,"<=":!0,">=":!0,"<<":!0,">>":!0,">>>":!0},C={mod:!0,to:!0,in:!0,and:!0,xor:!0,or:!0,not:!0},w={true:!0,false:!1,null:null,undefined:void 0},T=[`NaN`,`Infinity`],E={'"':`"`,"'":`'`,"\\":`\\`,"/":`/`,b:`\b`,f:`\f`,n:` +`,r:`\r`,t:` `};function D(){return{extraNodes:{},expression:``,comment:``,index:0,token:``,tokenType:x.NULL,nestingLevel:0,conditionalLevel:null}}function O(e,t){return e.expression.substr(e.index,t)}function k(e){return O(e,1)}function A(e){e.index++}function j(e){return e.expression.charAt(e.index-1)}function M(e){return e.expression.charAt(e.index+1)}function N(e){for(e.tokenType=x.NULL,e.token=``,e.comment=``;;){if(k(e)===`#`)for(;k(e)!==` +`&&k(e)!==``;)e.comment+=k(e),A(e);if(y.isWhitespace(k(e),e.nestingLevel))A(e);else break}if(k(e)===``){e.tokenType=x.DELIMITER;return}if(k(e)===` +`&&!e.nestingLevel){e.tokenType=x.DELIMITER,e.token=k(e),A(e);return}var t=k(e),n=O(e,2),r=O(e,3);if(r.length===3&&S[r]){e.tokenType=x.DELIMITER,e.token=r,A(e),A(e),A(e);return}if(n.length===2&&S[n]&&(n!==`?.`||!y.isDigit(e.expression.charAt(e.index+2)))){e.tokenType=x.DELIMITER,e.token=n,A(e),A(e);return}if(S[t]){e.tokenType=x.DELIMITER,e.token=t,A(e);return}if(y.isDigitDot(t)){e.tokenType=x.NUMBER;var i=O(e,2);if(i===`0b`||i===`0o`||i===`0x`){for(e.token+=k(e),A(e),e.token+=k(e),A(e);y.isAlpha(k(e),j(e),M(e))||y.isDigit(k(e));)e.token+=k(e),A(e);if(k(e)===`.`)for(e.token+=`.`,A(e);y.isAlpha(k(e),j(e),M(e))||y.isDigit(k(e));)e.token+=k(e),A(e);else if(k(e)===`i`)for(e.token+=`i`,A(e);y.isDigit(k(e));)e.token+=k(e),A(e);return}if(k(e)===`.`){if(e.token+=k(e),A(e),!y.isDigit(k(e))){e.tokenType=x.DELIMITER;return}}else{for(;y.isDigit(k(e));)e.token+=k(e),A(e);y.isDecimalMark(k(e),M(e))&&(e.token+=k(e),A(e))}for(;y.isDigit(k(e));)e.token+=k(e),A(e);if(k(e)===`E`||k(e)===`e`){if(y.isDigit(M(e))||M(e)===`-`||M(e)===`+`){if(e.token+=k(e),A(e),(k(e)===`+`||k(e)===`-`)&&(e.token+=k(e),A(e)),!y.isDigit(k(e)))throw Me(e,`Digit expected, got "`+k(e)+`"`);for(;y.isDigit(k(e));)e.token+=k(e),A(e);if(y.isDecimalMark(k(e),M(e)))throw Me(e,`Digit expected, got "`+k(e)+`"`)}else if(y.isDecimalMark(M(e),e.expression.charAt(e.index+2)))throw A(e),Me(e,`Digit expected, got "`+k(e)+`"`)}return}if(y.isAlpha(k(e),j(e),M(e))){for(;y.isAlpha(k(e),j(e),M(e))||y.isDigit(k(e));)e.token+=k(e),A(e);SD(C,e.token)?e.tokenType=x.DELIMITER:e.tokenType=x.SYMBOL;return}for(e.tokenType=x.UNKNOWN;k(e)!==``;)e.token+=k(e),A(e);throw Me(e,`Syntax error in part "`+e.token+`"`)}function P(e){do N(e);while(e.token===` +`)}function F(e){e.nestingLevel++}function I(e){e.nestingLevel--}y.isAlpha=function(e,t,n){return y.isValidLatinOrGreek(e)||y.isValidMathSymbol(e,n)||y.isValidMathSymbol(t,e)},y.isValidLatinOrGreek=function(e){return/^[a-zA-Z_$\u00C0-\u02AF\u0370-\u03FF\u2100-\u214F]$/.test(e)},y.isValidMathSymbol=function(e,t){return/^[\uD835]$/.test(e)&&/^[\uDC00-\uDFFF]$/.test(t)&&/^[^\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDFCC\uDFCD]$/.test(t)},y.isWhitespace=function(e,t){return e===` `||e===` `||e===`\xA0`||e===` +`&&t>0},y.isDecimalMark=function(e,t){return e===`.`&&t!==`/`&&t!==`*`&&t!==`^`},y.isDigitDot=function(e){return e>=`0`&&e<=`9`||e===`.`},y.isDigit=function(e){return e>=`0`&&e<=`9`};function L(e,t){var n=D();oE(n,{expression:e,extraNodes:t}),N(n);var r=ee(n);if(n.token!==``)throw n.tokenType===x.DELIMITER?Ne(n,`Unexpected operator `+n.token):Me(n,`Unexpected part "`+n.token+`"`);return r}function ee(e){var t,n=[],r;for(e.token!==``&&e.token!==` +`&&e.token!==`;`&&(t=R(e),e.comment&&(t.comment=e.comment));e.token===` +`||e.token===`;`;)n.length===0&&t&&(r=e.token!==`;`,n.push({node:t,visible:r})),N(e),e.token!==` +`&&e.token!==`;`&&e.token!==``&&(t=R(e),e.comment&&(t.comment=e.comment),r=e.token!==`;`,n.push({node:t,visible:r}));return n.length>0?new s(n):(t||(t=new l(void 0),e.comment&&(t.comment=e.comment)),t)}function R(e){var t,n,r,i,a=te(e);if(e.token===`=`){if(dD(a))return t=a.name,P(e),r=R(e),new o(new v(t),r);if(YE(a)){if(a.optionalChaining)throw Me(e,`Cannot assign to optional chain`);return P(e),r=R(e),new o(a.object,a.index,r)}else if(rD(a)&&dD(a.fn)&&(i=!0,n=[],t=a.name,a.args.forEach(function(e,t){dD(e)?n[t]=e.name:i=!1}),i))return P(e),r=R(e),new u(t,n,r);throw Me(e,`Invalid left hand side of assignment operator =`)}return a}function te(e){for(var t=z(e);e.token===`?`;){var n=e.conditionalLevel;e.conditionalLevel=e.nestingLevel,P(e);var r=t,i=R(e);if(e.token!==`:`)throw Me(e,`False part of conditional expression expected`);e.conditionalLevel=null,P(e),t=new c(r,i,R(e)),e.conditionalLevel=n}return t}function z(e){for(var t=ne(e);e.token===`or`;)P(e),t=new m(`or`,`or`,[t,ne(e)]);return t}function ne(e){for(var t=re(e);e.token===`xor`;)P(e),t=new m(`xor`,`xor`,[t,re(e)]);return t}function re(e){for(var t=ie(e);e.token===`and`;)P(e),t=new m(`and`,`and`,[t,ie(e)]);return t}function ie(e){for(var t=ae(e);e.token===`|`;)P(e),t=new m(`|`,`bitOr`,[t,ae(e)]);return t}function ae(e){for(var t=oe(e);e.token===`^|`;)P(e),t=new m(`^|`,`bitXor`,[t,oe(e)]);return t}function oe(e){for(var t=se(e);e.token===`&`;)P(e),t=new m(`&`,`bitAnd`,[t,se(e)]);return t}function se(e){for(var t=[ce(e)],n=[],r={"==":`equal`,"!=":`unequal`,"<":`smaller`,">":`larger`,"<=":`smallerEq`,">=":`largerEq`};SD(r,e.token);){var i={name:e.token,fn:r[e.token]};n.push(i),P(e),t.push(ce(e))}return t.length===1?t[0]:t.length===2?new m(n[0].name,n[0].fn,t):new _(n.map(e=>e.fn),t)}function ce(e){for(var t=le(e),n,r,i,a={"<<":`leftShift`,">>":`rightArithShift`,">>>":`rightLogShift`};SD(a,e.token);)n=e.token,r=a[n],P(e),i=[t,le(e)],t=new m(n,r,i);return t}function le(e){for(var t=ue(e),n,r,i,a={to:`to`,in:`to`};SD(a,e.token);)n=e.token,r=a[n],P(e),n===`in`&&`])},;`.includes(e.token)?t=new m(`*`,`multiply`,[t,new v(`in`)],!0):(i=[t,ue(e)],t=new m(n,r,i));return t}function ue(e){var t,n=[];if(e.token===`:`){if(e.conditionalLevel===e.nestingLevel)throw Me(e,`The true-expression of a conditional operator may not be empty`);t=new l(1)}else t=de(e);if(e.token===`:`&&e.conditionalLevel!==e.nestingLevel){for(n.push(t);e.token===`:`&&n.length<3;)P(e),e.token===`)`||e.token===`]`||e.token===`,`||e.token===``?n.push(new v(`end`)):n.push(de(e));t=n.length===3?new g(n[0],n[2],n[1]):new g(n[0],n[1])}return t}function de(e){for(var t=fe(e),n,r,i,a={"+":`add`,"-":`subtract`};SD(a,e.token);){n=e.token,r=a[n],P(e);var o=fe(e);i=o.isPercentage?[t,new m(`*`,`multiply`,[t,o])]:[t,o],t=new m(n,r,i)}return t}function fe(e){for(var t=pe(e),n=t,r,i,a={"*":`multiply`,".*":`dotMultiply`,"/":`divide`,"./":`dotDivide`,"%":`mod`,mod:`mod`};SD(a,e.token);)r=e.token,i=a[r],P(e),n=pe(e),t=new m(r,i,[t,n]);return t}function pe(e){for(var t=me(e),n=t;e.tokenType===x.SYMBOL||e.token===`in`&&eD(t)||e.token===`in`&&sD(t)&&t.fn===`unaryMinus`&&eD(t.args[0])||e.tokenType===x.NUMBER&&!eD(n)&&(!sD(n)||n.op===`!`)||e.token===`(`;)n=me(e),t=new m(`*`,`multiply`,[t,n],!0);return t}function me(e){for(var t=he(e),n=t,r=[];e.token===`/`&&tD(n);)if(r.push(oE({},e)),P(e),e.tokenType===x.NUMBER)if(r.push(oE({},e)),P(e),e.tokenType===x.SYMBOL||e.token===`(`||e.token===`in`)oE(e,r.pop()),r.pop(),n=he(e),t=new m(`/`,`divide`,[t,n]);else{r.pop(),oE(e,r.pop());break}else{oE(e,r.pop());break}return t}function he(e){var t=ge(e);if(e.token===`%`){var n=oE({},e);P(e);try{ge(e),oE(e,n)}catch{t=new m(`/`,`divide`,[t,new l(100)],!1,!0)}}return t}function ge(e){var t,n,r,i={"-":`unaryMinus`,"+":`unaryPlus`,"~":`bitNot`,not:`not`};return SD(i,e.token)?(r=i[e.token],t=e.token,P(e),n=[ge(e)],new m(t,r,n)):_e(e)}function _e(e){var t=ve(e),n,r,i;return(e.token===`^`||e.token===`.^`)&&(n=e.token,r=n===`^`?`pow`:`dotPow`,P(e),i=[t,ge(e)],t=new m(n,r,i)),t}function ve(e){for(var t=ye(e);e.token===`??`;)P(e),t=new m(`??`,`nullish`,[t,ye(e)]);return t}function ye(e){for(var t=be(e),n,r,i,a={"!":`factorial`,"'":`ctranspose`};SD(a,e.token);)n=e.token,r=a[n],N(e),i=[t],t=new m(n,r,i),t=Se(e,t);return t}function be(e){var t=[];if(e.tokenType===x.SYMBOL&&SD(e.extraNodes,e.token)){var n=e.extraNodes[e.token];if(N(e),e.token===`(`){if(t=[],F(e),N(e),e.token!==`)`)for(t.push(R(e));e.token===`,`;)N(e),t.push(R(e));if(e.token!==`)`)throw Me(e,`Parenthesis ) expected`);I(e),N(e)}return new n(t)}return xe(e)}function xe(e){var t,r;return e.tokenType===x.SYMBOL||e.tokenType===x.DELIMITER&&e.token in C?(r=e.token,N(e),t=SD(w,r)?new l(w[r]):T.includes(r)?new l(n(r,`number`)):new v(r),t=Se(e,t),t):Ce(e)}function Se(e,t,n){for(var r;;){var a=!1;e.token===`?.`&&(a=!0,N(e));var o=(e.token===`(`||e.token===`[`||e.token===`.`)&&(!n||n.includes(e.token));if(!(a||o))break;if(r=[],e.token===`(`)if(a||dD(t)||YE(t)){if(F(e),N(e),e.token!==`)`)for(r.push(R(e));e.token===`,`;)N(e),r.push(R(e));if(e.token!==`)`)throw Me(e,`Parenthesis ) expected`);I(e),N(e),t=new d(t,r,a)}else return t;else if(e.token===`[`){if(F(e),N(e),e.token!==`]`)for(r.push(R(e));e.token===`,`;)N(e),r.push(R(e));if(e.token!==`]`)throw Me(e,`Parenthesis ] expected`);I(e),N(e),t=new i(t,new f(r),a)}else{if(a||N(e),!(e.tokenType===x.SYMBOL||e.tokenType===x.DELIMITER&&e.token in C)){var s=`Property name expected after `;throw s+=a?`optional chain`:`dot`,Me(e,s)}r.push(new l(e.token)),N(e),t=new i(t,new f(r,!0),a)}}return t}function Ce(e){var t,n;return e.token===`"`||e.token===`'`?(n=we(e,e.token),t=new l(n),t=Se(e,t),t):Te(e)}function we(e,t){for(var n=``;k(e)!==``&&k(e)!==t;)if(k(e)===`\\`){A(e);var r=k(e),i=E[r];if(i!==void 0)n+=i,e.index+=1;else if(r===`u`){var a=e.expression.slice(e.index+1,e.index+5);if(/^[0-9A-Fa-f]{4}$/.test(a))n+=String.fromCharCode(parseInt(a,16)),e.index+=5;else throw Me(e,`Invalid unicode character \\u${a}`)}else throw Me(e,`Bad escape character \\${r}`)}else n+=k(e),A(e);if(N(e),e.token!==t)throw Me(e,`End of string ${t} expected`);return N(e),n}function Te(e){var t,n,r,i;if(e.token===`[`){if(F(e),N(e),e.token!==`]`){var o=Ee(e);if(e.token===`;`){for(r=1,n=[o];e.token===`;`;)N(e),e.token!==`]`&&(n[r]=Ee(e),r++);if(e.token!==`]`)throw Me(e,`End of matrix ] expected`);I(e),N(e),i=n[0].items.length;for(var s=1;s{var{typed:t,parse:n}=e;return t(GH,{string:function(e){return n(e).compile()},"Array | Matrix":function(e){return Jj(e,function(e){return n(e).compile()})}})}),qH=`evaluate`,JH=Z(qH,[`typed`,`parse`],e=>{var{typed:t,parse:n}=e;return t(qH,{string:function(e){var t=bE();return n(e).compile().evaluate(t)},"string, Map | Object":function(e,t){return n(e).compile().evaluate(t)},"Array | Matrix":function(e){var t=bE();return Jj(e,function(e){return n(e).compile().evaluate(t)})},"Array | Matrix, Map | Object":function(e,t){return Jj(e,function(e){return n(e).compile().evaluate(t)})}})}),YH=Z(`Parser`,[`evaluate`,`parse`],e=>{var{evaluate:t,parse:n}=e;function r(){if(!(this instanceof r))throw SyntaxError(`Constructor must be called with the new operator`);Object.defineProperty(this,`scope`,{value:bE(),writable:!1})}r.prototype.type=`Parser`,r.prototype.isParser=!0,r.prototype.evaluate=function(e){return t(e,this.scope)},r.prototype.get=function(e){if(this.scope.has(e))return this.scope.get(e)},r.prototype.getAll=function(){return SE(this.scope)},r.prototype.getAllAsMap=function(){return this.scope};function i(e){if(e.length===0)return!1;for(var t=0;t0&&n.isDigit(i)))return!1}return!0}return r.prototype.set=function(e,t){if(!i(e))throw Error(`Invalid variable name: '${e}'. Variable names must follow the specified rules.`);return this.scope.set(e,t),t},r.prototype.remove=function(e){this.scope.delete(e)},r.prototype.clear=function(){this.scope.clear()},r.prototype.toJSON=function(){var e={mathjs:`Parser`,variables:{},functions:{}};for(var[t,n]of this.scope)if(BE(n)){if(!XH(n))throw Error(`Cannot serialize external function ${t}`);e.functions[t]=`${n.syntax} = ${n.expr}`}else e.variables[t]=n;return e},r.fromJSON=function(e){var t=new r;return Object.entries(e.variables).forEach(e=>{var[n,r]=e;return t.set(n,r)}),Object.entries(e.functions).forEach(e=>{var[n,r]=e;return t.evaluate(r)}),t},r},{isClass:!0});function XH(e){return typeof e==`function`&&typeof e.syntax==`string`&&typeof e.expr==`string`}var ZH=`parser`,QH=Z(ZH,[`typed`,`Parser`],e=>{var{typed:t,Parser:n}=e;return t(ZH,{"":function(){return new n}})}),$H=`lup`,eU=Z($H,[`typed`,`matrix`,`abs`,`addScalar`,`divideScalar`,`multiplyScalar`,`subtractScalar`,`larger`,`equalScalar`,`unaryMinus`,`DenseMatrix`,`SparseMatrix`,`Spa`],e=>{var{typed:t,matrix:n,abs:r,addScalar:i,divideScalar:a,multiplyScalar:o,subtractScalar:s,larger:c,equalScalar:l,unaryMinus:u,DenseMatrix:d,SparseMatrix:f,Spa:p}=e;return t($H,{DenseMatrix:function(e){return m(e)},SparseMatrix:function(e){return h(e)},Array:function(e){var t=m(n(e));return{L:t.L.valueOf(),U:t.U.valueOf(),p:t.p}}});function m(e){var t=e._size[0],n=e._size[1],u=Math.min(t,n),f=mD(e._data),p=[],m=[t,u],h=[],g=[u,n],_,v,y,b=[];for(_=0;_0)for(_=0;_0&&Z.forEach(0,k-1,function(K,re){m._forEachRow(K,E,T,D,function(ae,le){ae>K&&Z.accumulate(ae,c(a(le,re)))})});var de=k,be=Z.get(k),G=i(be);Z.forEach(k+1,y-1,function(K,re){var ae=i(re);l(ae,G)&&(de=K,G=ae,be=re)}),k!==de&&(m._swapRows(k,de,M[1],E,T,D),m._swapRows(k,de,R[1],C,$,O),Z.swap(k,de),Q(k,de)),Z.forEach(0,y-1,function(K,re){K<=k?(C.push(re),$.push(K)):(re=o(re,be),u(re,0)||(E.push(re),T.push(K)))})};for(k=0;k0&&e.forEach(0,w-1,function(t,n){f._forEachRow(t,h,g,_,function(r,i){r>t&&e.accumulate(r,u(o(i,n)))})});var D=w,k=e.get(w),A=r(k);e.forEach(w+1,t-1,function(e,t){var n=r(t);c(n,A)&&(D=e,A=n,k=t)}),w!==D&&(f._swapRows(w,D,v[1],h,g,_),f._swapRows(w,D,S[1],y,b,x),e.swap(w,D),O(w,D)),e.forEach(0,t-1,function(e,t){e<=w?(y.push(t),b.push(e)):(t=a(t,k),l(t,0)||(h.push(t),g.push(e)))})};for(w=0;w{var{typed:e,matrix:r,zeros:i,identity:n,isZero:o,equal:a,sign:s,sqrt:l,conj:u,unaryMinus:c,addScalar:f,divideScalar:m,multiplyScalar:p,subtractScalar:d,complex:h}=t;return Dn(e(n4,{DenseMatrix:function(_){return y(_)},SparseMatrix:function(_){return S(_)},Array:function(_){var w=r(_),x=y(w);return{Q:x.Q.valueOf(),R:x.R.valueOf()}}}),{_denseQRimpl:v});function v(b){var _=b._size[0],w=b._size[1],x=n([_],"dense"),E=x._data,T=b.clone(),D=T._data,M,C,$,O=i([_],"");for($=0;$0)for(var x=w[0][0].type==="Complex"?h(0):0,E=0;E=0;){var l=r[a+s],u=r[i+l];u===-1?(s--,o[e++]=l):(r[i+l]=r[n+u],++s,r[a+s]=u)}return e}function a4(t,e){if(!t)return null;var r=0,i,n=[],o=[],a=0,s=e,l=2*e;for(i=0;i=0;i--)t[i]!==-1&&(o[s+i]=o[a+t[i]],o[a+t[i]]=i);for(i=0;i{var{add:e,multiply:r,transpose:i}=t;return function(c,f){if(!f||c<=0||c>3)return null;var m=f._size,p=m[0],d=m[1],h=0,v=Math.max(16,10*Math.sqrt(d));v=Math.min(d-2,v);var y=n(c,f,p,d,v);u4(y,l,null);for(var S=y._index,b=y._ptr,_=b[d],w=[],x=[],E=0,T=d+1,D=2*(d+1),M=3*(d+1),C=4*(d+1),$=5*(d+1),O=6*(d+1),R=7*(d+1),L=w,k=o(d,b,x,E,M,L,D,R,T,O,C,$),V=a(d,b,x,$,C,O,v,T,M,L,D),J=0,W,Q,ie,B,Z,q,xe,de,be,G,K,re,ae,le,Se,_e;VOe?(q=ie,xe=Qe,de=x[E+ie]-Oe):(q=S[Qe++],xe=b[q],de=x[E+q]),Z=1;Z<=de;Z++)W=S[xe++],!((be=x[T+W])<=0)&&(yt+=be,x[T+W]=-be,S[H++]=W,x[D+W]!==-1&&(L[x[D+W]]=L[W]),L[W]!==-1?x[D+L[W]]=x[D+W]:x[M+x[$+W]]=x[D+W]);q!==ie&&(b[q]=Na(ie),x[O+q]=0)}for(Oe!==0&&(_=H),x[$+ie]=yt,b[ie]=ut,x[E+ie]=H-ut,x[C+ie]=-2,k=s(k,h,x,O,d),G=ut;G=k?x[O+q]-=be:x[O+q]!==0&&(x[O+q]=x[$+q]+oe)}for(G=ut;G0?(_e+=ve,S[le++]=q,Se+=q):(b[q]=Na(ie),x[O+q]=0)}x[C+W]=le-re+1;var De=le,Ee=re+x[E+W];for(Qe=ae+1;Qe=0))for(Se=L[W],W=x[R+Se],x[R+Se]=-1;W!==-1&&x[D+W]!==-1;W=x[D+W],k++){for(de=x[E+W],K=x[C+W],Qe=b[W]+1;Qe<=b[W]+de-1;Qe++)x[O+S[Qe]]=k;var He=W;for(Q=x[D+W];Q!==-1;){var nt=x[E+Q]===de&&x[C+Q]===K;for(Qe=b[Q]+1;nt&&Qe<=b[Q]+de-1;Qe++)x[O+S[Qe]]!==k&&(nt=0);nt?(b[Q]=Na(W),x[T+W]+=x[T+Q],x[T+Q]=0,x[C+Q]=-1,Q=x[D+Q],x[D+He]=Q):(He=Q,Q=x[D+Q])}}for(Qe=ut,G=ut;G=0;Q--)x[T+Q]>0||(x[D+Q]=x[M+b[Q]],x[M+b[Q]]=Q);for(q=d;q>=0;q--)x[T+q]<=0||b[q]!==-1&&(x[D+q]=x[M+b[q]],x[M+b[q]]=q);for(ie=0,W=0;W<=d;W++)b[W]===-1&&(ie=fb(W,ie,x,M,D,w,O));return w.splice(w.length-1,1),w};function n(u,c,f,m,p){var d=i(c);if(u===1&&m===f)return e(c,d);if(u===2){for(var h=d._index,v=d._ptr,y=0,S=0;Sp))for(var _=v[S+1];b<_;b++)h[y++]=h[b]}return v[f]=y,c=i(d),r(d,c)}return r(d,c)}function o(u,c,f,m,p,d,h,v,y,S,b,_){for(var w=0;wh)f[v+w]=0,f[p+w]=-1,_++,c[w]=Na(u),f[v+u]++;else{var E=f[y+x];E!==-1&&(S[E]=w),f[b+w]=f[y+x],f[y+x]=w}}return _}function s(u,c,f,m,p){if(u<2||u+c<0){for(var d=0;d{var{transpose:e}=t;return function(r,i,n,o){if(!r||!i||!n)return null;var a=r._size,s=a[0],l=a[1],u,c,f,m,p,d,h,v=4*l+(o?l+s+1:0),y=[],S=0,b=l,_=2*l,w=3*l,x=4*l,E=5*l+1;for(f=0;f=1&&T[c]++,$.jleaf===2&&T[$.q]--}i[c]!==-1&&(y[S+c]=i[c])}for(c=0;c{var{add:e,multiply:r,transpose:i}=t,n=l4({add:e,multiply:r,transpose:i}),o=f4({transpose:i});return function(l,u,c){var f=u._ptr,m=u._size,p=m[1],d,h={};if(h.q=n(l,u),l&&!h.q)return null;if(c){var v=l?o4(u,null,h.q,0):u;h.parent=s4(v,1);var y=a4(h.parent,p);if(h.cp=o(v,h.parent,y,1),v&&h.parent&&h.cp&&a(v,h))for(h.unz=0,d=0;d=0;E--)for(D=u[E],M=u[E+1],T=D;T=0;x--)h[x]=-1,E=v[x],E!==-1&&(y[w+E]++===0&&(y[_+E]=x),y[S+x]=y[b+E],y[b+E]=x);for(l.lnz=0,l.m2=m,E=0;E=0;){t=i[m];var p=n?n[t]:t;lm(a,t)||(pb(a,t),i[l+m]=p<0?0:WE(a[p]));var d=1;for(c=i[l+m],f=p<0?0:WE(a[p+1]);c{var{divideScalar:e,multiply:r,subtract:i}=t;return function(o,a,s,l,u,c,f){var m=o._values,p=o._index,d=o._ptr,h=o._size,v=h[1],y=a._values,S=a._index,b=a._ptr,_,w,x,E,T=d4(o,a,s,l,c);for(_=T;_{var{abs:e,divideScalar:r,multiply:i,subtract:n,larger:o,largerEq:a,SparseMatrix:s}=t,l=h4({divideScalar:r,multiply:i,subtract:n});return function(c,f,m){if(!c)return null;var p=c._size,d=p[1],h,v=100,y=100;f&&(h=f.q,v=f.lnz||v,y=f.unz||y);var S=[],b=[],_=[],w=new s({values:S,index:b,ptr:_,size:[d,d]}),x=[],E=[],T=[],D=new s({values:x,index:E,ptr:T,size:[d,d]}),M=[],C,$,O=[],R=[];for(C=0;C{var{typed:e,abs:r,add:i,multiply:n,transpose:o,divideScalar:a,subtract:s,larger:l,largerEq:u,SparseMatrix:c}=t,f=p4({add:i,multiply:n,transpose:o}),m=g4({abs:r,divideScalar:a,multiply:n,subtract:s,larger:l,largerEq:u,SparseMatrix:c});return e(v4,{"SparseMatrix, number, number":function(d,h,v){if(!Ge(h)||h<0||h>3)throw new Error("Symbolic Ordering and Analysis order must be an integer number in the interval [0, 3]");if(v<0||v>1)throw new Error("Partial pivoting threshold must be a number from 0 to 1");var y=f(h,d,!1),S=m(d,y,v);return{L:S.L,U:S.U,p:S.pinv,q:y.q,toString:function(){return"L: "+this.L.toString()+` +P: `+this.p}}}}),tU=`qr`,nU=Z(tU,[`typed`,`matrix`,`zeros`,`identity`,`isZero`,`equal`,`sign`,`sqrt`,`conj`,`unaryMinus`,`addScalar`,`divideScalar`,`multiplyScalar`,`subtractScalar`,`complex`],e=>{var{typed:t,matrix:n,zeros:r,identity:i,isZero:a,equal:o,sign:s,sqrt:c,conj:l,unaryMinus:u,addScalar:d,divideScalar:f,multiplyScalar:p,subtractScalar:m,complex:h}=e;return oE(t(tU,{DenseMatrix:function(e){return _(e)},SparseMatrix:function(e){return v(e)},Array:function(e){var t=_(n(e));return{Q:t.Q.valueOf(),R:t.R.valueOf()}}}),{_denseQRimpl:g});function g(e){var t=e._size[0],n=e._size[1],h=i([t],`dense`),g=h._data,_=e.clone(),v=_._data,y,b,x,S=r([t],``);for(x=0;x0)for(var r=n[0][0].type===`Complex`?h(0):0,i=0;i=0;){var c=n[o+s],l=n[r+c];l===-1?(s--,a[t++]=c):(n[r+c]=n[i+l],++s,n[o+s]=l)}return t}function aU(e,t){if(!e)return null;var n=0,r,i=[],a=[],o=0,s=t,c=2*t;for(r=0;r=0;r--)e[r]!==-1&&(a[s+r]=a[o+e[r]],a[o+e[r]]=r);for(r=0;r{var{add:t,multiply:n,transpose:r}=e;return function(e,t){if(!t||e<=0||e>3)return null;var n=t._size,r=n[0],l=n[1],u=0,d=Math.max(16,10*Math.sqrt(l));d=Math.min(l-2,d);var f=i(e,t,r,l,d);sU(f,c,null);for(var p=f._index,m=f._ptr,h=m[l],g=[],_=[],v=0,y=l+1,b=2*(l+1),x=3*(l+1),S=4*(l+1),C=5*(l+1),w=6*(l+1),T=7*(l+1),E=g,D=a(l,m,_,v,x,E,b,T,y,w,S,C),O=o(l,m,_,C,S,w,d,y,x,E,b),k=0,A,j,M,N,P,F,I,L,ee,R,te,z,ne,re,ie,ae;Ooe?(F=M,I=le,L=_[v+M]-oe):(F=p[le++],I=m[F],L=_[v+F]),P=1;P<=L;P++)A=p[I++],!((ee=_[y+A])<=0)&&(ce+=ee,_[y+A]=-ee,p[de++]=A,_[b+A]!==-1&&(E[_[b+A]]=E[A]),E[A]===-1?_[x+_[C+A]]=_[b+A]:_[b+E[A]]=_[b+A]);F!==M&&(m[F]=cU(M),_[w+F]=0)}for(oe!==0&&(h=de),_[C+M]=ce,m[M]=ue,_[v+M]=de-ue,_[S+M]=-2,D=s(D,u,_,w,l),R=ue;R=D?_[w+F]-=ee:_[w+F]!==0&&(_[w+F]=_[C+F]+fe)}for(R=ue;R0?(ae+=pe,p[re++]=F,ie+=F):(m[F]=cU(M),_[w+F]=0)}_[S+A]=re-z+1;var me=re,he=z+_[v+A];for(le=ne+1;le=0))for(ie=E[A],A=_[T+ie],_[T+ie]=-1;A!==-1&&_[b+A]!==-1;A=_[b+A],D++){for(L=_[v+A],te=_[S+A],le=m[A]+1;le<=m[A]+L-1;le++)_[w+p[le]]=D;var _e=A;for(j=_[b+A];j!==-1;){var ve=_[v+j]===L&&_[S+j]===te;for(le=m[j]+1;ve&&le<=m[j]+L-1;le++)_[w+p[le]]!==D&&(ve=0);ve?(m[j]=cU(A),_[y+A]+=_[y+j],_[y+j]=0,_[S+j]=-1,j=_[b+j],_[b+_e]=j):(_e=j,j=_[b+j])}}for(le=ue,R=ue;R=0;j--)_[y+j]>0||(_[b+j]=_[x+m[j]],_[x+m[j]]=j);for(F=l;F>=0;F--)_[y+F]<=0||m[F]!==-1&&(_[b+F]=_[x+m[F]],_[x+m[F]]=F);for(M=0,A=0;A<=l;A++)m[A]===-1&&(M=iU(A,M,_,x,b,g,w));return g.splice(g.length-1,1),g};function i(e,i,a,o,s){var c=r(i);if(e===1&&o===a)return t(i,c);if(e===2){for(var l=c._index,u=c._ptr,d=0,f=0;fs))for(var m=u[f+1];po)n[s+f]=0,n[i+f]=-1,d++,t[f]=cU(e),n[s+e]++;else{var m=n[c+p];m!==-1&&(l[m]=f),n[u+f]=n[c+p],n[c+p]=f}}return d}function s(e,t,n,r,i){if(e<2||e+t<0){for(var a=0;a{var{transpose:t}=e;return function(e,n,r,i){if(!e||!n||!r)return null;var a=e._size,o=a[0],s=a[1],c,l,u,d,f,p,m,h=4*s+(i?s+o+1:0),g=[],_=0,v=s,y=2*s,b=3*s,x=4*s,S=5*s+1;for(u=0;u=1&&C[l]++,D.jleaf===2&&C[D.q]--}n[l]!==-1&&(g[_+l]=n[l])}for(l=0;l{var{add:t,multiply:n,transpose:r}=e,i=lU({add:t,multiply:n,transpose:r}),a=dU({transpose:r});return function(e,t,n){var r=t._ptr,s=t._size[1],c,l={};if(l.q=i(e,t),e&&!l.q)return null;if(n){var u=e?rU(t,null,l.q,0):t;l.parent=oU(u,1);var d=aU(l.parent,s);if(l.cp=a(u,l.parent,d,1),u&&l.parent&&l.cp&&o(u,l))for(l.unz=0,c=0;c=0;g--)for(v=n[g],y=n[g+1],_=v;_=0;h--)c[h]=-1,g=l[h],g!==-1&&(u[m+g]++===0&&(u[p+g]=h),u[d+h]=u[f+g],u[f+g]=h);for(t.lnz=0,t.m2=a,g=0;g=0;){e=r[d];var f=i?i[e]:e;pU(o,e)||(mU(o,e),r[s+d]=f<0?0:hU(o[f]));var p=1;for(l=r[s+d],u=f<0?0:hU(o[f+1]);l{var{divideScalar:t,multiply:n,subtract:r}=e;return function(e,i,a,o,s,c,l){var u=e._values,d=e._index,f=e._ptr,p=e._size[1],m=i._values,h=i._index,g=i._ptr,_,v,y,b,x=_U(e,i,a,o,c);for(_=x;_{var{abs:t,divideScalar:n,multiply:r,subtract:i,larger:a,largerEq:o,SparseMatrix:s}=e,c=vU({divideScalar:n,multiply:r,subtract:i});return function(e,i,l){if(!e)return null;var u=e._size[1],d,f=100,p=100;i&&(d=i.q,f=i.lnz||f,p=i.unz||p);var m=[],h=[],g=[],_=new s({values:m,index:h,ptr:g,size:[u,u]}),v=[],y=[],b=[],x=new s({values:v,index:y,ptr:b,size:[u,u]}),S=[],C,w,T=[],E=[];for(C=0;C{var{typed:t,abs:n,add:r,multiply:i,transpose:a,divideScalar:o,subtract:s,larger:c,largerEq:l,SparseMatrix:u}=e,d=fU({add:r,multiply:i,transpose:a}),f=yU({abs:n,divideScalar:o,multiply:i,subtract:s,larger:c,largerEq:l,SparseMatrix:u});return t(bU,{"SparseMatrix, number, number":function(e,t,n){if(!PD(t)||t<0||t>3)throw Error(`Symbolic Ordering and Analysis order must be an integer number in the interval [0, 3]`);if(n<0||n>1)throw Error(`Partial pivoting threshold must be a number from 0 to 1`);var r=d(t,e,!1),i=f(e,r,n);return{L:i.L,U:i.U,p:i.pinv,q:r.q,toString:function(){return`L: `+this.L.toString()+` U: `+this.U.toString()+` p: `+this.p.toString()+(this.q?` -q: `+this.q.toString():"")+` -`}}}})});function HE(t,e){var r,i=e.length,n=[];if(t)for(r=0;r{var{typed:e,matrix:r,lup:i,slu:n,usolve:o,lsolve:a,DenseMatrix:s}=t,l=rs({DenseMatrix:s});return e(b4,{"Array, Array | Matrix":function(m,p){m=r(m);var d=i(m),h=c(d.L,d.U,d.p,null,p);return h.valueOf()},"DenseMatrix, Array | Matrix":function(m,p){var d=i(m);return c(d.L,d.U,d.p,null,p)},"SparseMatrix, Array | Matrix":function(m,p){var d=i(m);return c(d.L,d.U,d.p,null,p)},"SparseMatrix, Array | Matrix, number, number":function(m,p,d,h){var v=n(m,d,h);return c(v.L,v.U,v.p,v.q,p)},"Object, Array | Matrix":function(m,p){return c(m.L,m.U,m.p,m.q,p)}});function u(f){if(Je(f))return f;if(sr(f))return r(f);throw new TypeError("Invalid Matrix LU decomposition")}function c(f,m,p,d,h){f=u(f),m=u(m),p&&(h=l(f,h,!0),h._data=HE(p,h._data));var v=a(f,h),y=o(m,v);return d&&(y._data=HE(d,y._data)),y}});var _4="polynomialRoot",Hae=["typed","isZero","equalScalar","add","subtract","multiply","divide","sqrt","unaryMinus","cbrt","typeOf","im","re"],w4=N(_4,Hae,t=>{var{typed:e,isZero:r,equalScalar:i,add:n,subtract:o,multiply:a,divide:s,sqrt:l,unaryMinus:u,cbrt:c,typeOf:f,im:m,re:p}=t;return e(_4,{"number|Complex, ...number|Complex":(d,h)=>{for(var v=[d,...h];v.length>0&&r(v[v.length-1]);)v.pop();if(v.length<2)throw new RangeError("Polynomial [".concat(d,", ").concat(h,"] must have a non-zero non-constant coefficient"));switch(v.length){case 2:return[u(s(v[0],v[1]))];case 3:{var[y,S,b]=v,_=a(2,b),w=a(S,S),x=a(4,b,y);if(i(w,x))return[s(u(S),_)];var E=l(o(w,x));return[s(o(E,S),_),s(o(u(E),S),_)]}case 4:{var[T,D,M,C]=v,$=u(a(3,C)),O=a(M,M),R=a(3,C,D),L=n(a(2,M,M,M),a(27,C,C,T)),k=a(9,C,M,D);if(i(O,R)&&i(L,k))return[s(M,$)];var V=o(O,R),J=o(L,k),W=n(a(18,C,M,D,T),a(M,M,D,D)),Q=n(a(4,M,M,M,T),a(4,C,D,D,D),a(27,C,C,T,T));if(i(W,Q))return[s(o(a(4,C,M,D),n(a(9,C,C,T),a(M,M,M))),a(C,V)),s(o(a(9,C,T),a(M,D)),a(2,V))];var ie;i(O,R)?ie=J:ie=s(n(J,l(o(a(J,J),a(4,V,V,V)))),2);var B=!0,Z=c(ie,B).toArray().map(q=>s(n(M,q,s(V,q)),$));return Z.map(q=>f(q)==="Complex"&&i(p(q),p(q)+m(q))?p(q):q)}default:throw new RangeError("only implemented for cubic or lower-order polynomials, not ".concat(v))}}})});var Yae="Help",Jae=["evaluate"],S4=N(Yae,Jae,t=>{var{evaluate:e}=t;function r(i){if(!(this instanceof r))throw new SyntaxError("Constructor must be called with the new operator");if(!i)throw new Error('Argument "doc" missing');this.doc=i}return r.prototype.type="Help",r.prototype.isHelp=!0,r.prototype.toString=function(){var i=this.doc||{},n=` -`;if(i.name&&(n+="Name: "+i.name+` +q: `+this.q.toString():``)+` +`}}}})});function SU(e,t){var n,r=t.length,i=[];if(e)for(n=0;n{var{typed:t,matrix:n,lup:r,slu:i,usolve:a,lsolve:o,DenseMatrix:s}=e,c=ZR({DenseMatrix:s});return t(CU,{"Array, Array | Matrix":function(e,t){e=n(e);var i=r(e);return u(i.L,i.U,i.p,null,t).valueOf()},"DenseMatrix, Array | Matrix":function(e,t){var n=r(e);return u(n.L,n.U,n.p,null,t)},"SparseMatrix, Array | Matrix":function(e,t){var n=r(e);return u(n.L,n.U,n.p,null,t)},"SparseMatrix, Array | Matrix, number, number":function(e,t,n,r){var a=i(e,n,r);return u(a.L,a.U,a.p,a.q,t)},"Object, Array | Matrix":function(e,t){return u(e.L,e.U,e.p,e.q,t)}});function l(e){if(jE(e))return e;if(AE(e))return n(e);throw TypeError(`Invalid Matrix LU decomposition`)}function u(e,t,n,r,i){e=l(e),t=l(t),n&&(i=c(e,i,!0),i._data=SU(n,i._data));var s=o(e,i),u=a(t,s);return r&&(u._data=SU(r,u._data)),u}}),TU=`polynomialRoot`,EU=Z(TU,[`typed`,`isZero`,`equalScalar`,`add`,`subtract`,`multiply`,`divide`,`sqrt`,`unaryMinus`,`cbrt`,`typeOf`,`im`,`re`],e=>{var{typed:t,isZero:n,equalScalar:r,add:i,subtract:a,multiply:o,divide:s,sqrt:c,unaryMinus:l,cbrt:u,typeOf:d,im:f,re:p}=e;return t(TU,{"number|Complex, ...number|Complex":(e,t)=>{for(var m=[e,...t];m.length>0&&n(m[m.length-1]);)m.pop();if(m.length<2)throw RangeError(`Polynomial [${e}, ${t}] must have a non-zero non-constant coefficient`);switch(m.length){case 2:return[l(s(m[0],m[1]))];case 3:var[h,g,_]=m,v=o(2,_),y=o(g,g),b=o(4,_,h);if(r(y,b))return[s(l(g),v)];var x=c(a(y,b));return[s(a(x,g),v),s(a(l(x),g),v)];case 4:var[S,C,w,T]=m,E=l(o(3,T)),D=o(w,w),O=o(3,T,C),k=i(o(2,w,w,w),o(27,T,T,S)),A=o(9,T,w,C);if(r(D,O)&&r(k,A))return[s(w,E)];var j=a(D,O),M=a(k,A);return r(i(o(18,T,w,C,S),o(w,w,C,C)),i(o(4,w,w,w,S),o(4,T,C,C,C),o(27,T,T,S,S)))?[s(a(o(4,T,w,C),i(o(9,T,T,S),o(w,w,w))),o(T,j)),s(a(o(9,T,S),o(w,C)),o(2,j))]:u(r(D,O)?M:s(i(M,c(a(o(M,M),o(4,j,j,j)))),2),!0).toArray().map(e=>s(i(w,e,s(j,e)),E)).map(e=>d(e)===`Complex`&&r(p(e),p(e)+f(e))?p(e):e);default:throw RangeError(`only implemented for cubic or lower-order polynomials, not ${m}`)}}})}),DU=Z(`Help`,[`evaluate`],e=>{var{evaluate:t}=e;function n(e){if(!(this instanceof n))throw SyntaxError(`Constructor must be called with the new operator`);if(!e)throw Error(`Argument "doc" missing`);this.doc=e}return n.prototype.type=`Help`,n.prototype.isHelp=!0,n.prototype.toString=function(){var e=this.doc||{},n=` +`;if(e.name&&(n+=`Name: `+e.name+` -`),i.category&&(n+="Category: "+i.category+` +`),e.category&&(n+=`Category: `+e.category+` -`),i.description&&(n+=`Description: - `+i.description+` +`),e.description&&(n+=`Description: + `+e.description+` -`),i.syntax&&(n+=`Syntax: - `+i.syntax.join(` +`),e.syntax&&(n+=`Syntax: + `+e.syntax.join(` `)+` -`),i.examples){n+=`Examples: -`;for(var o=!1,a=e("config()"),s={config:f=>(o=!0,e("config(newConfig)",{newConfig:f}))},l=0;l(r=!0,t(`config(newConfig)`,{newConfig:e}))},o=0;oo!=="mathjs").forEach(o=>{n[o]=i[o]}),new r(n)},r.prototype.valueOf=r.prototype.toString,r},{isClass:!0});var Xae="Chain",Kae=["?on","math","typed"],D4=N(Xae,Kae,t=>{var{on:e,math:r,typed:i}=t;function n(u){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");Rc(u)?this.value=u.value:this.value=u}n.prototype.type="Chain",n.prototype.isChain=!0,n.prototype.done=function(){return this.value},n.prototype.valueOf=function(){return this.value},n.prototype.toString=function(){return Ct(this.value)},n.prototype.toJSON=function(){return{mathjs:"Chain",value:this.value}},n.fromJSON=function(u){return new n(u.value)};function o(u,c){typeof c=="function"&&(n.prototype[u]=s(c))}function a(u,c){Gs(n.prototype,u,function(){var m=c();if(typeof m=="function")return s(m)})}function s(u){return function(){if(arguments.length===0)return new n(u(this.value));for(var c=[this.value],f=0;fu[d])};for(var m in u)f(m)}};var l={expression:!0,docs:!0,type:!0,classes:!0,json:!0,error:!0,isChain:!0};return n.createProxy(r),e&&e("import",function(u,c,f){f||a(u,c)}),n},{isClass:!0});var YE={name:"e",category:"Constants",syntax:["e"],description:"Euler's number, the base of the natural logarithm. Approximately equal to 2.71828",examples:["e","e ^ 2","exp(2)","log(e)"],seealso:["exp"]};var E4={name:"false",category:"Constants",syntax:["false"],description:"Boolean value false",examples:["false"],seealso:["true"]};var A4={name:"i",category:"Constants",syntax:["i"],description:"Imaginary unit, defined as i*i=-1. A complex number is described as a + b*i, where a is the real part, and b is the imaginary part.",examples:["i","i * i","sqrt(-1)"],seealso:[]};var T4={name:"Infinity",category:"Constants",syntax:["Infinity"],description:"Infinity, a number which is larger than the maximum number that can be handled by a floating point number.",examples:["Infinity","1 / 0"],seealso:[]};var N4={name:"LN10",category:"Constants",syntax:["LN10"],description:"Returns the natural logarithm of 10, approximately equal to 2.302",examples:["LN10","log(10)"],seealso:[]};var M4={name:"LN2",category:"Constants",syntax:["LN2"],description:"Returns the natural logarithm of 2, approximately equal to 0.693",examples:["LN2","log(2)"],seealso:[]};var C4={name:"LOG10E",category:"Constants",syntax:["LOG10E"],description:"Returns the base-10 logarithm of E, approximately equal to 0.434",examples:["LOG10E","log(e, 10)"],seealso:[]};var $4={name:"LOG2E",category:"Constants",syntax:["LOG2E"],description:"Returns the base-2 logarithm of E, approximately equal to 1.442",examples:["LOG2E","log(e, 2)"],seealso:[]};var I4={name:"NaN",category:"Constants",syntax:["NaN"],description:"Not a number",examples:["NaN","0 / 0"],seealso:[]};var F4={name:"null",category:"Constants",syntax:["null"],description:"Value null",examples:["null"],seealso:["true","false"]};var k4={name:"phi",category:"Constants",syntax:["phi"],description:"Phi is the golden ratio. Two quantities are in the golden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities. Phi is defined as `(1 + sqrt(5)) / 2` and is approximately 1.618034...",examples:["phi"],seealso:[]};var JE={name:"pi",category:"Constants",syntax:["pi"],description:"The number pi is a mathematical constant that is the ratio of a circle's circumference to its diameter, and is approximately equal to 3.14159",examples:["pi","sin(pi/2)"],seealso:["tau"]};var P4={name:"SQRT1_2",category:"Constants",syntax:["SQRT1_2"],description:"Returns the square root of 1/2, approximately equal to 0.707",examples:["SQRT1_2","sqrt(1/2)"],seealso:[]};var B4={name:"SQRT2",category:"Constants",syntax:["SQRT2"],description:"Returns the square root of 2, approximately equal to 1.414",examples:["SQRT2","sqrt(2)"],seealso:[]};var O4={name:"tau",category:"Constants",syntax:["tau"],description:"Tau is the ratio constant of a circle's circumference to radius, equal to 2 * pi, approximately 6.2832.",examples:["tau","2 * pi"],seealso:["pi"]};var R4={name:"true",category:"Constants",syntax:["true"],description:"Boolean value true",examples:["true"],seealso:["false"]};var L4={name:"version",category:"Constants",syntax:["version"],description:"A string with the version number of math.js",examples:["version"],seealso:[]};var U4={name:"bignumber",category:"Construction",syntax:["bignumber(x)"],description:"Create a big number from a number or string.",examples:["0.1 + 0.2","bignumber(0.1) + bignumber(0.2)",'bignumber("7.2")','bignumber("7.2e500")',"bignumber([0.1, 0.2, 0.3])"],seealso:["boolean","bigint","complex","fraction","index","matrix","string","unit"]};var z4={name:"bigint",category:"Construction",syntax:["bigint(x)"],description:"Create a bigint, an integer with an arbitrary number of digits, from a number or string.",examples:["123123123123123123 # a large number will lose digits",'bigint("123123123123123123")','bignumber(["1", "3", "5"])'],seealso:["boolean","bignumber","number","complex","fraction","index","matrix","string","unit"]};var V4={name:"boolean",category:"Construction",syntax:["x","boolean(x)"],description:"Convert a string or number into a boolean.",examples:["boolean(0)","boolean(1)","boolean(3)",'boolean("true")','boolean("false")',"boolean([1, 0, 1, 1])"],seealso:["bignumber","complex","index","matrix","number","string","unit"]};var q4={name:"complex",category:"Construction",syntax:["complex()","complex(re, im)","complex(string)"],description:"Create a complex number.",examples:["complex()","complex(2, 3)",'complex("7 - 2i")'],seealso:["bignumber","boolean","index","matrix","number","string","unit"]};var j4={name:"createUnit",category:"Construction",syntax:["createUnit(definitions)","createUnit(name, definition)"],description:"Create a user-defined unit and register it with the Unit type.",examples:['createUnit("foo")','createUnit("knot", {definition: "0.514444444 m/s", aliases: ["knots", "kt", "kts"]})','createUnit("mph", "1 mile/hour")'],seealso:["unit","splitUnit"]};var Z4={name:"fraction",category:"Construction",syntax:["fraction(num)","fraction(matrix)","fraction(num,den)","fraction({n: num, d: den})"],description:"Create a fraction from a number or from integer numerator and denominator.",examples:["fraction(0.125)","fraction(1, 3) + fraction(2, 5)","fraction({n: 333, d: 53})","fraction([sqrt(9), sqrt(10), sqrt(11)])"],seealso:["bignumber","boolean","complex","index","matrix","string","unit"]};var G4={name:"index",category:"Construction",syntax:["[start]","[start:end]","[start:step:end]","[start1, start 2, ...]","[start1:end1, start2:end2, ...]","[start1:step1:end1, start2:step2:end2, ...]"],description:"Create an index to get or replace a subset of a matrix",examples:["A = [1, 2, 3; 4, 5, 6]","A[1, :]","A[1, 2] = 50","A[1:2, 1:2] = 1","B = [1, 2, 3]","B[B>1 and B<3]"],seealso:["bignumber","boolean","complex","matrix","number","range","string","unit"]};var W4={name:"matrix",category:"Construction",syntax:["[]","[a1, b1, ...; a2, b2, ...]","matrix()",'matrix("dense")',"matrix([...])"],description:"Create a matrix.",examples:["[]","[1, 2, 3]","[1, 2, 3; 4, 5, 6]","matrix()","matrix([3, 4])",'matrix([3, 4; 5, 6], "sparse")','matrix([3, 4; 5, 6], "sparse", "number")'],seealso:["bignumber","boolean","complex","index","number","string","unit","sparse"]};var H4={name:"number",category:"Construction",syntax:["x","number(x)","number(unit, valuelessUnit)"],description:"Create a number or convert a string or boolean into a number.",examples:["2","2e3","4.05","number(2)",'number("7.2")',"number(true)","number([true, false, true, true])",'number(unit("52cm"), "m")'],seealso:["bignumber","bigint","boolean","complex","fraction","index","matrix","string","unit"]};var Y4={name:"sparse",category:"Construction",syntax:["sparse()","sparse([a1, b1, ...; a1, b2, ...])",'sparse([a1, b1, ...; a1, b2, ...], "number")'],description:"Create a sparse matrix.",examples:["sparse()","sparse([3, 4; 5, 6])",'sparse([3, 0; 5, 0], "number")'],seealso:["bignumber","boolean","complex","index","number","string","unit","matrix"]};var J4={name:"splitUnit",category:"Construction",syntax:["splitUnit(unit: Unit, parts: Unit[])"],description:"Split a unit in an array of units whose sum is equal to the original unit.",examples:['splitUnit(1 m, ["feet", "inch"])'],seealso:["unit","createUnit"]};var X4={name:"string",category:"Construction",syntax:['"text"',"string(x)"],description:"Create a string or convert a value to a string",examples:['"Hello World!"',"string(4.2)","string(3 + 2i)"],seealso:["bignumber","boolean","complex","index","matrix","number","unit"]};var K4={name:"unit",category:"Construction",syntax:["value unit","unit(value, unit)","unit(string)"],description:"Create a unit.",examples:["5.5 mm","3 inch",'unit(7.1, "kilogram")','unit("23 deg")'],seealso:["bignumber","boolean","complex","index","matrix","number","string"]};var Q4={name:"config",category:"Core",syntax:["config()","config(options)"],description:"Get configuration or change configuration.",examples:["config()","1/3 + 1/4",'config({number: "Fraction"})',"1/3 + 1/4"],seealso:[]};var eU={name:"import",category:"Core",syntax:["import(functions)","import(functions, options)"],description:"Import functions or constants from an object.",examples:["import({myFn: f(x)=x^2, myConstant: 32 })","myFn(2)","myConstant"],seealso:[]};var tU={name:"typed",category:"Core",syntax:["typed(signatures)","typed(name, signatures)"],description:"Create a typed function.",examples:['double = typed({ "number": f(x)=x+x, "string": f(x)=concat(x,x) })',"double(2)",'double("hello")'],seealso:[]};var rU={name:"derivative",category:"Algebra",syntax:["derivative(expr, variable)","derivative(expr, variable, {simplify: boolean})"],description:"Takes the derivative of an expression expressed in parser Nodes. The derivative will be taken over the supplied variable in the second parameter. If there are multiple variables in the expression, it will return a partial derivative.",examples:['derivative("2x^3", "x")','derivative("2x^3", "x", {simplify: false})','derivative("2x^2 + 3x + 4", "x")','derivative("sin(2x)", "x")','f = parse("x^2 + x")','x = parse("x")',"df = derivative(f, x)","df.evaluate({x: 3})"],seealso:["simplify","parse","evaluate"]};var nU={name:"leafCount",category:"Algebra",syntax:["leafCount(expr)"],description:"Computes the number of leaves in the parse tree of the given expression",examples:['leafCount("e^(i*pi)-1")','leafCount(parse("{a: 22/7, b: 10^(1/2)}"))'],seealso:["simplify"]};var iU={name:"lsolve",category:"Algebra",syntax:["x=lsolve(L, b)"],description:"Finds one solution of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lsolve(a, b)"],seealso:["lsolveAll","lup","lusolve","usolve","matrix","sparse"]};var oU={name:"lsolveAll",category:"Algebra",syntax:["x=lsolveAll(L, b)"],description:"Finds all solutions of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lsolve(a, b)"],seealso:["lsolve","lup","lusolve","usolve","matrix","sparse"]};var aU={name:"lup",category:"Algebra",syntax:["lup(m)"],description:"Calculate the Matrix LU decomposition with partial pivoting. Matrix A is decomposed in three matrices (L, U, P) where P * A = L * U",examples:["lup([[2, 1], [1, 4]])","lup(matrix([[2, 1], [1, 4]]))","lup(sparse([[2, 1], [1, 4]]))"],seealso:["lusolve","lsolve","usolve","matrix","sparse","slu","qr"]};var sU={name:"lusolve",category:"Algebra",syntax:["x=lusolve(A, b)","x=lusolve(lu, b)"],description:"Solves the linear system A * x = b where A is an [n x n] matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lusolve(a, b)"],seealso:["lup","slu","lsolve","usolve","matrix","sparse"]};var uU={name:"polynomialRoot",category:"Algebra",syntax:["x=polynomialRoot(-6, 3)","x=polynomialRoot(4, -4, 1)","x=polynomialRoot(-8, 12, -6, 1)"],description:"Finds the roots of a univariate polynomial given by its coefficients starting from constant, linear, and so on, increasing in degree.",examples:["a = polynomialRoot(-6, 11, -6, 1)"],seealso:["cbrt","sqrt"]};var lU={name:"qr",category:"Algebra",syntax:["qr(A)"],description:"Calculates the Matrix QR decomposition. Matrix `A` is decomposed in two matrices (`Q`, `R`) where `Q` is an orthogonal matrix and `R` is an upper triangular matrix.",examples:["qr([[1, -1, 4], [1, 4, -2], [1, 4, 2], [1, -1, 0]])"],seealso:["lup","slu","matrix"]};var cU={name:"rationalize",category:"Algebra",syntax:["rationalize(expr)","rationalize(expr, scope)","rationalize(expr, scope, detailed)"],description:"Transform a rationalizable expression in a rational fraction. If rational fraction is one variable polynomial then converts the numerator and denominator in canonical form, with decreasing exponents, returning the coefficients of numerator.",examples:['rationalize("2x/y - y/(x+1)")','rationalize("2x/y - y/(x+1)", true)'],seealso:["simplify"]};var fU={name:"resolve",category:"Algebra",syntax:["resolve(node, scope)"],description:"Recursively substitute variables in an expression tree.",examples:['resolve(parse("1 + x"), { x: 7 })','resolve(parse("size(text)"), { text: "Hello World" })','resolve(parse("x + y"), { x: parse("3z") })','resolve(parse("3x"), { x: parse("y+z"), z: parse("w^y") })'],seealso:["simplify","evaluate"],mayThrow:["ReferenceError"]};var pU={name:"simplify",category:"Algebra",syntax:["simplify(expr)","simplify(expr, rules)"],description:"Simplify an expression tree.",examples:['simplify("3 + 2 / 4")','simplify("2x + x")','f = parse("x * (x + 2 + x)")',"simplified = simplify(f)","simplified.evaluate({x: 2})"],seealso:["simplifyCore","derivative","evaluate","parse","rationalize","resolve"]};var mU={name:"simplifyConstant",category:"Algebra",syntax:["simplifyConstant(expr)","simplifyConstant(expr, options)"],description:"Replace constant subexpressions of node with their values.",examples:['simplifyConstant("(3-3)*x")','simplifyConstant(parse("z-cos(tau/8)"))'],seealso:["simplify","simplifyCore","evaluate"]};var dU={name:"simplifyCore",category:"Algebra",syntax:["simplifyCore(node)"],description:"Perform simple one-pass simplifications on an expression tree.",examples:['simplifyCore(parse("0*x"))','simplifyCore(parse("(x+0)*2"))'],seealso:["simplify","simplifyConstant","evaluate"]};var hU={name:"slu",category:"Algebra",syntax:["slu(A, order, threshold)"],description:"Calculate the Matrix LU decomposition with full pivoting. Matrix A is decomposed in two matrices (L, U) and two permutation vectors (pinv, q) where P * A * Q = L * U",examples:["slu(sparse([4.5, 0, 3.2, 0; 3.1, 2.9, 0, 0.9; 0, 1.7, 3, 0; 3.5, 0.4, 0, 1]), 1, 0.001)"],seealso:["lusolve","lsolve","usolve","matrix","sparse","lup","qr"]};var gU={name:"symbolicEqual",category:"Algebra",syntax:["symbolicEqual(expr1, expr2)","symbolicEqual(expr1, expr2, options)"],description:"Returns true if the difference of the expressions simplifies to 0",examples:['symbolicEqual("x*y","y*x")','symbolicEqual("abs(x^2)", "x^2")','symbolicEqual("abs(x)", "x", {context: {abs: {trivial: true}}})'],seealso:["simplify","evaluate"]};var vU={name:"usolve",category:"Algebra",syntax:["x=usolve(U, b)"],description:"Finds one solution of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.",examples:["x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])"],seealso:["usolveAll","lup","lusolve","lsolve","matrix","sparse"]};var yU={name:"usolveAll",category:"Algebra",syntax:["x=usolve(U, b)"],description:"Finds all solutions of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.",examples:["x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])"],seealso:["usolve","lup","lusolve","lsolve","matrix","sparse"]};var bU={name:"abs",category:"Arithmetic",syntax:["abs(x)"],description:"Compute the absolute value.",examples:["abs(3.5)","abs(-4.2)"],seealso:["sign"]};var xU={name:"add",category:"Operators",syntax:["x + y","add(x, y)"],description:"Add two values.",examples:["a = 2.1 + 3.6","a - 3.6","3 + 2i","3 cm + 2 inch",'"2.3" + "4"'],seealso:["subtract"]};var _U={name:"cbrt",category:"Arithmetic",syntax:["cbrt(x)","cbrt(x, allRoots)"],description:"Compute the cubic root value. If x = y * y * y, then y is the cubic root of x. When `x` is a number or complex number, an optional second argument `allRoots` can be provided to return all three cubic roots. If not provided, the principal root is returned",examples:["cbrt(64)","cube(4)","cbrt(-8)","cbrt(2 + 3i)","cbrt(8i)","cbrt(8i, true)","cbrt(27 m^3)"],seealso:["square","sqrt","cube","multiply"]};var wU={name:"ceil",category:"Arithmetic",syntax:["ceil(x)","ceil(x, n)","ceil(unit, valuelessUnit)","ceil(unit, n, valuelessUnit)"],description:"Round a value towards plus infinity. If x is complex, both real and imaginary part are rounded towards plus infinity.",examples:["ceil(3.2)","ceil(3.8)","ceil(-4.2)","ceil(3.241cm, cm)","ceil(3.241cm, 2, cm)"],seealso:["floor","fix","round"]};var SU={name:"cube",category:"Arithmetic",syntax:["cube(x)"],description:"Compute the cube of a value. The cube of x is x * x * x.",examples:["cube(2)","2^3","2 * 2 * 2"],seealso:["multiply","square","pow"]};var DU={name:"divide",category:"Operators",syntax:["x / y","divide(x, y)"],description:"Divide two values.",examples:["a = 2 / 3","a * 3","4.5 / 2","3 + 4 / 2","(3 + 4) / 2","18 km / 4.5"],seealso:["multiply"]};var EU={name:"dotDivide",category:"Operators",syntax:["x ./ y","dotDivide(x, y)"],description:"Divide two values element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","b = [2, 1, 1; 3, 2, 5]","a ./ b"],seealso:["multiply","dotMultiply","divide"]};var AU={name:"dotMultiply",category:"Operators",syntax:["x .* y","dotMultiply(x, y)"],description:"Multiply two values element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","b = [2, 1, 1; 3, 2, 5]","a .* b"],seealso:["multiply","divide","dotDivide"]};var TU={name:"dotPow",category:"Operators",syntax:["x .^ y","dotPow(x, y)"],description:"Calculates the power of x to y element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","a .^ 2"],seealso:["pow"]};var NU={name:"exp",category:"Arithmetic",syntax:["exp(x)"],description:"Calculate the exponent of a value.",examples:["exp(1.3)","e ^ 1.3","log(exp(1.3))","x = 2.4","(exp(i*x) == cos(x) + i*sin(x)) # Euler's formula"],seealso:["expm","expm1","pow","log"]};var MU={name:"expm",category:"Arithmetic",syntax:["exp(x)"],description:"Compute the matrix exponential, expm(A) = e^A. The matrix must be square. Not to be confused with exp(a), which performs element-wise exponentiation.",examples:["expm([[0,2],[0,0]])"],seealso:["exp"]};var CU={name:"expm1",category:"Arithmetic",syntax:["expm1(x)"],description:"Calculate the value of subtracting 1 from the exponential value.",examples:["expm1(2)","pow(e, 2) - 1","log(expm1(2) + 1)"],seealso:["exp","pow","log"]};var $U={name:"fix",category:"Arithmetic",syntax:["fix(x)","fix(x, n)","fix(unit, valuelessUnit)","fix(unit, n, valuelessUnit)"],description:"Round a value towards zero. If x is complex, both real and imaginary part are rounded towards zero.",examples:["fix(3.2)","fix(3.8)","fix(-4.2)","fix(-4.8)","fix(3.241cm, cm)","fix(3.241cm, 2, cm)"],seealso:["ceil","floor","round"]};var IU={name:"floor",category:"Arithmetic",syntax:["floor(x)","floor(x, n)","floor(unit, valuelessUnit)","floor(unit, n, valuelessUnit)"],description:"Round a value towards minus infinity.If x is complex, both real and imaginary part are rounded towards minus infinity.",examples:["floor(3.2)","floor(3.8)","floor(-4.2)","floor(3.241cm, cm)","floor(3.241cm, 2, cm)"],seealso:["ceil","fix","round"]};var FU={name:"gcd",category:"Arithmetic",syntax:["gcd(a, b)","gcd(a, b, c, ...)"],description:"Compute the greatest common divisor.",examples:["gcd(8, 12)","gcd(-4, 6)","gcd(25, 15, -10)"],seealso:["lcm","xgcd"]};var kU={name:"hypot",category:"Arithmetic",syntax:["hypot(a, b, c, ...)","hypot([a, b, c, ...])"],description:"Calculate the hypotenuse of a list with values.",examples:["hypot(3, 4)","sqrt(3^2 + 4^2)","hypot(-2)","hypot([3, 4, 5])"],seealso:["abs","norm"]};var PU={name:"invmod",category:"Arithmetic",syntax:["invmod(a, b)"],description:"Calculate the (modular) multiplicative inverse of a modulo b. Solution to the equation ax \u2263 1 (mod b)",examples:["invmod(8, 12)","invmod(7, 13)","invmod(15151, 15122)"],seealso:["gcd","xgcd"]};var BU={name:"lcm",category:"Arithmetic",syntax:["lcm(x, y)"],description:"Compute the least common multiple.",examples:["lcm(4, 6)","lcm(6, 21)","lcm(6, 21, 5)"],seealso:["gcd"]};var OU={name:"log",category:"Arithmetic",syntax:["log(x)","log(x, base)"],description:"Compute the logarithm of a value. If no base is provided, the natural logarithm of x is calculated. If base if provided, the logarithm is calculated for the specified base. log(x, base) is defined as log(x) / log(base).",examples:["log(3.5)","a = log(2.4)","exp(a)","10 ^ 4","log(10000, 10)","log(10000) / log(10)","b = log(1024, 2)","2 ^ b"],seealso:["exp","log1p","log2","log10"]};var RU={name:"log10",category:"Arithmetic",syntax:["log10(x)"],description:"Compute the 10-base logarithm of a value.",examples:["log10(0.00001)","log10(10000)","10 ^ 4","log(10000) / log(10)","log(10000, 10)"],seealso:["exp","log"]};var LU={name:"log1p",category:"Arithmetic",syntax:["log1p(x)","log1p(x, base)"],description:"Calculate the logarithm of a `value+1`",examples:["log1p(2.5)","exp(log1p(1.4))","pow(10, 4)","log1p(9999, 10)","log1p(9999) / log(10)"],seealso:["exp","log","log2","log10"]};var UU={name:"log2",category:"Arithmetic",syntax:["log2(x)"],description:"Calculate the 2-base of a value. This is the same as calculating `log(x, 2)`.",examples:["log2(0.03125)","log2(16)","log2(16) / log2(2)","pow(2, 4)"],seealso:["exp","log1p","log","log10"]};var zU={name:"mod",category:"Operators",syntax:["x % y","x mod y","mod(x, y)"],description:"Calculates the modulus, the remainder of an integer division.",examples:["7 % 3","11 % 2","10 mod 4","isOdd(x) = x % 2","isOdd(2)","isOdd(3)"],seealso:["divide"]};var VU={name:"multiply",category:"Operators",syntax:["x * y","multiply(x, y)"],description:"multiply two values.",examples:["a = 2.1 * 3.4","a / 3.4","2 * 3 + 4","2 * (3 + 4)","3 * 2.1 km"],seealso:["divide"]};var qU={name:"norm",category:"Arithmetic",syntax:["norm(x)","norm(x, p)"],description:"Calculate the norm of a number, vector or matrix.",examples:["abs(-3.5)","norm(-3.5)","norm(3 - 4i)","norm([1, 2, -3], Infinity)","norm([1, 2, -3], -Infinity)","norm([3, 4], 2)","norm([[1, 2], [3, 4]], 1)",'norm([[1, 2], [3, 4]], "inf")','norm([[1, 2], [3, 4]], "fro")']};var jU={name:"nthRoot",category:"Arithmetic",syntax:["nthRoot(a)","nthRoot(a, root)"],description:'Calculate the nth root of a value. The principal nth root of a positive real number A, is the positive real solution of the equation "x^root = A".',examples:["4 ^ 3","nthRoot(64, 3)","nthRoot(9, 2)","sqrt(9)"],seealso:["nthRoots","pow","sqrt"]};var ZU={name:"nthRoots",category:"Arithmetic",syntax:["nthRoots(A)","nthRoots(A, root)"],description:'Calculate the nth roots of a value. An nth root of a positive real number A, is a positive real solution of the equation "x^root = A". This function returns an array of complex values.',examples:["nthRoots(1)","nthRoots(1, 3)"],seealso:["sqrt","pow","nthRoot"]};var GU={name:"pow",category:"Operators",syntax:["x ^ y","pow(x, y)"],description:"Calculates the power of x to y, x^y.",examples:["2^3","2*2*2","1 + e ^ (pi * i)","pow([[1, 2], [4, 3]], 2)","pow([[1, 2], [4, 3]], -1)"],seealso:["multiply","nthRoot","nthRoots","sqrt"]};var WU={name:"round",category:"Arithmetic",syntax:["round(x)","round(x, n)","round(unit, valuelessUnit)","round(unit, n, valuelessUnit)"],description:"round a value towards the nearest integer.If x is complex, both real and imaginary part are rounded towards the nearest integer. When n is specified, the value is rounded to n decimals.",examples:["round(3.2)","round(3.8)","round(-4.2)","round(-4.8)","round(pi, 3)","round(123.45678, 2)","round(3.241cm, 2, cm)","round([3.2, 3.8, -4.7])"],seealso:["ceil","floor","fix"]};var HU={name:"sign",category:"Arithmetic",syntax:["sign(x)"],description:"Compute the sign of a value. The sign of a value x is 1 when x>0, -1 when x<0, and 0 when x=0.",examples:["sign(3.5)","sign(-4.2)","sign(0)"],seealso:["abs"]};var YU={name:"sqrt",category:"Arithmetic",syntax:["sqrt(x)"],description:"Compute the square root value. If x = y * y, then y is the square root of x.",examples:["sqrt(25)","5 * 5","sqrt(-1)"],seealso:["square","sqrtm","multiply","nthRoot","nthRoots","pow"]};var JU={name:"sqrtm",category:"Arithmetic",syntax:["sqrtm(x)"],description:"Calculate the principal square root of a square matrix. The principal square root matrix `X` of another matrix `A` is such that `X * X = A`.",examples:["sqrtm([[33, 24], [48, 57]])"],seealso:["sqrt","abs","square","multiply"]};var XU={name:"sylvester",category:"Algebra",syntax:["sylvester(A,B,C)"],description:"Solves the real-valued Sylvester equation AX+XB=C for X",examples:["sylvester([[-1, -2], [1, 1]], [[-2, 1], [-1, 2]], [[-3, 2], [3, 0]])","A = [[-1, -2], [1, 1]]; B = [[2, -1], [1, -2]]; C = [[-3, 2], [3, 0]]","sylvester(A, B, C)"],seealso:["schur","lyap"]};var KU={name:"schur",category:"Algebra",syntax:["schur(A)"],description:"Performs a real Schur decomposition of the real matrix A = UTU'",examples:["schur([[1, 0], [-4, 3]])","A = [[1, 0], [-4, 3]]","schur(A)"],seealso:["lyap","sylvester"]};var QU={name:"lyap",category:"Algebra",syntax:["lyap(A,Q)"],description:"Solves the Continuous-time Lyapunov equation AP+PA'+Q=0 for P",examples:["lyap([[-2, 0], [1, -4]], [[3, 1], [1, 3]])","A = [[-2, 0], [1, -4]]","Q = [[3, 1], [1, 3]]","lyap(A,Q)"],seealso:["schur","sylvester"]};var ez={name:"square",category:"Arithmetic",syntax:["square(x)"],description:"Compute the square of a value. The square of x is x * x.",examples:["square(3)","sqrt(9)","3^2","3 * 3"],seealso:["multiply","pow","sqrt","cube"]};var tz={name:"subtract",category:"Operators",syntax:["x - y","subtract(x, y)"],description:"subtract two values.",examples:["a = 5.3 - 2","a + 2","2/3 - 1/6","2 * 3 - 3","2.1 km - 500m"],seealso:["add"]};var rz={name:"unaryMinus",category:"Operators",syntax:["-x","unaryMinus(x)"],description:"Inverse the sign of a value. Converts booleans and strings to numbers.",examples:["-4.5","-(-5.6)",'-"22"'],seealso:["add","subtract","unaryPlus"]};var nz={name:"unaryPlus",category:"Operators",syntax:["+x","unaryPlus(x)"],description:"Converts booleans and strings to numbers.",examples:["+true",'+"2"'],seealso:["add","subtract","unaryMinus"]};var iz={name:"xgcd",category:"Arithmetic",syntax:["xgcd(a, b)"],description:"Calculate the extended greatest common divisor for two values. The result is an array [d, x, y] with 3 entries, where d is the greatest common divisor, and d = x * a + y * b.",examples:["xgcd(8, 12)","gcd(8, 12)","xgcd(36163, 21199)"],seealso:["gcd","lcm"]};var oz={name:"bitAnd",category:"Bitwise",syntax:["x & y","bitAnd(x, y)"],description:"Bitwise AND operation. Performs the logical AND operation on each pair of the corresponding bits of the two given values by multiplying them. If both bits in the compared position are 1, the bit in the resulting binary representation is 1, otherwise, the result is 0",examples:["5 & 3","bitAnd(53, 131)","[1, 12, 31] & 42"],seealso:["bitNot","bitOr","bitXor","leftShift","rightArithShift","rightLogShift"]};var az={name:"bitNot",category:"Bitwise",syntax:["~x","bitNot(x)"],description:"Bitwise NOT operation. Performs a logical negation on each bit of the given value. Bits that are 0 become 1, and those that are 1 become 0.",examples:["~1","~2","bitNot([2, -3, 4])"],seealso:["bitAnd","bitOr","bitXor","leftShift","rightArithShift","rightLogShift"]};var sz={name:"bitOr",category:"Bitwise",syntax:["x | y","bitOr(x, y)"],description:"Bitwise OR operation. Performs the logical inclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if the first bit is 1 or the second bit is 1 or both bits are 1, otherwise, the result is 0.",examples:["5 | 3","bitOr([1, 2, 3], 4)"],seealso:["bitAnd","bitNot","bitXor","leftShift","rightArithShift","rightLogShift"]};var uz={name:"bitXor",category:"Bitwise",syntax:["bitXor(x, y)"],description:"Bitwise XOR operation, exclusive OR. Performs the logical exclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if only the first bit is 1 or only the second bit is 1, but will be 0 if both are 0 or both are 1.",examples:["bitOr(1, 2)","bitXor([2, 3, 4], 4)"],seealso:["bitAnd","bitNot","bitOr","leftShift","rightArithShift","rightLogShift"]};var lz={name:"leftShift",category:"Bitwise",syntax:["x << y","leftShift(x, y)"],description:"Bitwise left logical shift of a value x by y number of bits.",examples:["4 << 1","8 >> 1"],seealso:["bitAnd","bitNot","bitOr","bitXor","rightArithShift","rightLogShift"]};var cz={name:"rightArithShift",category:"Bitwise",syntax:["x >> y","rightArithShift(x, y)"],description:"Bitwise right arithmetic shift of a value x by y number of bits.",examples:["8 >> 1","4 << 1","-12 >> 2"],seealso:["bitAnd","bitNot","bitOr","bitXor","leftShift","rightLogShift"]};var fz={name:"rightLogShift",category:"Bitwise",syntax:["x >>> y","rightLogShift(x, y)"],description:"Bitwise right logical shift of a value x by y number of bits.",examples:["8 >>> 1","4 << 1","-12 >>> 2"],seealso:["bitAnd","bitNot","bitOr","bitXor","leftShift","rightArithShift"]};var pz={name:"bellNumbers",category:"Combinatorics",syntax:["bellNumbers(n)"],description:"The Bell Numbers count the number of partitions of a set. A partition is a pairwise disjoint subset of S whose union is S. `bellNumbers` only takes integer arguments. The following condition must be enforced: n >= 0.",examples:["bellNumbers(3)","bellNumbers(8)"],seealso:["stirlingS2"]};var mz={name:"catalan",category:"Combinatorics",syntax:["catalan(n)"],description:"The Catalan Numbers enumerate combinatorial structures of many different types. catalan only takes integer arguments. The following condition must be enforced: n >= 0.",examples:["catalan(3)","catalan(8)"],seealso:["bellNumbers"]};var dz={name:"composition",category:"Combinatorics",syntax:["composition(n, k)"],description:"The composition counts of n into k parts. composition only takes integer arguments. The following condition must be enforced: k <= n.",examples:["composition(5, 3)"],seealso:["combinations"]};var hz={name:"stirlingS2",category:"Combinatorics",syntax:["stirlingS2(n, k)"],description:"he Stirling numbers of the second kind, counts the number of ways to partition a set of n labelled objects into k nonempty unlabelled subsets. `stirlingS2` only takes integer arguments. The following condition must be enforced: k <= n. If n = k or k = 1, then s(n,k) = 1.",examples:["stirlingS2(5, 3)"],seealso:["bellNumbers"]};var gz={name:"arg",category:"Complex",syntax:["arg(x)"],description:"Compute the argument of a complex value. If x = a+bi, the argument is computed as atan2(b, a).",examples:["arg(2 + 2i)","atan2(3, 2)","arg(2 + 3i)"],seealso:["re","im","conj","abs"]};var vz={name:"conj",category:"Complex",syntax:["conj(x)"],description:"Compute the complex conjugate of a complex value. If x = a+bi, the complex conjugate is a-bi.",examples:["conj(2 + 3i)","conj(2 - 3i)","conj(-5.2i)"],seealso:["re","im","abs","arg"]};var yz={name:"im",category:"Complex",syntax:["im(x)"],description:"Get the imaginary part of a complex number.",examples:["im(2 + 3i)","re(2 + 3i)","im(-5.2i)","im(2.4)"],seealso:["re","conj","abs","arg"]};var bz={name:"re",category:"Complex",syntax:["re(x)"],description:"Get the real part of a complex number.",examples:["re(2 + 3i)","im(2 + 3i)","re(-5.2i)","re(2.4)"],seealso:["im","conj","abs","arg"]};var xz={name:"evaluate",category:"Expression",syntax:["evaluate(expression)","evaluate(expression, scope)","evaluate([expr1, expr2, expr3, ...])","evaluate([expr1, expr2, expr3, ...], scope)"],description:"Evaluate an expression or an array with expressions.",examples:['evaluate("2 + 3")','evaluate("sqrt(16)")','evaluate("2 inch to cm")','evaluate("sin(x * pi)", { "x": 1/2 })','evaluate(["width=2", "height=4","width*height"])'],seealso:["parser","parse","compile"]};var _z={name:"parser",category:"Expression",syntax:["parser()"],description:"Create a parser object that keeps a context of variables and their values, allowing the evaluation of expressions in that context.",examples:["myParser = parser()",'myParser.evaluate("sqrt(3^2 + 4^2)")','myParser.set("x", 3)','myParser.evaluate("y = x + 3")','myParser.evaluate(["y = x + 3", "y = y + 1"])','myParser.get("y")'],seealso:["evaluate","parse","compile"]};var wz={name:"parse",category:"Expression",syntax:["parse(expr)","parse(expr, options)","parse([expr1, expr2, expr3, ...])","parse([expr1, expr2, expr3, ...], options)"],description:"Parse an expression. Returns a node tree, which can be evaluated by invoking node.evaluate() or transformed into a functional object via node.compile().",examples:['node1 = parse("sqrt(3^2 + 4^2)")',"node1.evaluate()","code1 = node1.compile()","code1.evaluate()","scope = {a: 3, b: 4}",'node2 = parse("a * b")',"node2.evaluate(scope)","code2 = node2.compile()","code2.evaluate(scope)"],seealso:["parser","evaluate","compile"]};var Sz={name:"compile",category:"Expression",syntax:["compile(expr) ","compile([expr1, expr2, expr3, ...])"],description:"Parse and compile an expression. Returns a an object with a function evaluate([scope]) to evaluate the compiled expression.",examples:['code1 = compile("sqrt(3^2 + 4^2)")',"code1.evaluate() ",'code2 = compile("a * b")',"code2.evaluate({a: 3, b: 4})"],seealso:["parser","parse","evaluate"]};var Dz={name:"help",category:"Expression",syntax:["help(object)","help(string)"],description:"Display documentation on a function or data type.",examples:["help(sqrt)",'help("complex")'],seealso:[]};var Ez={name:"distance",category:"Geometry",syntax:["distance([x1, y1], [x2, y2])","distance([[x1, y1], [x2, y2]])"],description:"Calculates the Euclidean distance between two points.",examples:["distance([0,0], [4,4])","distance([[0,0], [4,4]])"],seealso:[]};var Az={name:"intersect",category:"Geometry",syntax:["intersect(expr1, expr2, expr3, expr4)","intersect(expr1, expr2, expr3)"],description:"Computes the intersection point of lines and/or planes.",examples:["intersect([0, 0], [10, 10], [10, 0], [0, 10])","intersect([1, 0, 1], [4, -2, 2], [1, 1, 1, 6])"],seealso:[]};var Tz={name:"and",category:"Logical",syntax:["x and y","and(x, y)"],description:"Logical and. Test whether two values are both defined with a nonzero/nonempty value.",examples:["true and false","true and true","2 and 4"],seealso:["not","or","xor"]};var Nz={name:"not",category:"Logical",syntax:["not x","not(x)"],description:"Logical not. Flips the boolean value of given argument.",examples:["not true","not false","not 2","not 0"],seealso:["and","or","xor"]};var Mz={name:"or",category:"Logical",syntax:["x or y","or(x, y)"],description:"Logical or. Test if at least one value is defined with a nonzero/nonempty value.",examples:["true or false","false or false","0 or 4"],seealso:["not","and","xor"]};var Cz={name:"xor",category:"Logical",syntax:["x xor y","xor(x, y)"],description:"Logical exclusive or, xor. Test whether one and only one value is defined with a nonzero/nonempty value.",examples:["true xor false","false xor false","true xor true","0 xor 4"],seealso:["not","and","or"]};var $z={name:"mapSlices",category:"Matrix",syntax:["mapSlices(A, dim, callback)"],description:"Generate a matrix one dimension less than A by applying callback to each slice of A along dimension dim.",examples:["A = [[1, 2], [3, 4]]","mapSlices(A, 1, sum)","mapSlices(A, 2, prod)"],seealso:["map","forEach"]};var Iz={name:"column",category:"Matrix",syntax:["column(x, index)"],description:"Return a column from a matrix or array.",examples:["A = [[1, 2], [3, 4]]","column(A, 1)","column(A, 2)"],seealso:["row","matrixFromColumns"]};var Fz={name:"concat",category:"Matrix",syntax:["concat(A, B, C, ...)","concat(A, B, C, ..., dim)"],description:"Concatenate matrices. By default, the matrices are concatenated by the last dimension. The dimension on which to concatenate can be provided as last argument.",examples:["A = [1, 2; 5, 6]","B = [3, 4; 7, 8]","concat(A, B)","concat(A, B, 1)","concat(A, B, 2)"],seealso:["det","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]};var kz={name:"count",category:"Matrix",syntax:["count(x)"],description:"Count the number of elements of a matrix, array or string.",examples:["a = [1, 2; 3, 4; 5, 6]","count(a)","size(a)",'count("hello world")'],seealso:["size"]};var Pz={name:"cross",category:"Matrix",syntax:["cross(A, B)"],description:"Calculate the cross product for two vectors in three dimensional space.",examples:["cross([1, 1, 0], [0, 1, 1])","cross([3, -3, 1], [4, 9, 2])","cross([2, 3, 4], [5, 6, 7])"],seealso:["multiply","dot"]};var Bz={name:"ctranspose",category:"Matrix",syntax:["x'","ctranspose(x)"],description:"Complex Conjugate and Transpose a matrix",examples:["a = [1, 2, 3; 4, 5, 6]","a'","ctranspose(a)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","zeros"]};var Oz={name:"det",category:"Matrix",syntax:["det(x)"],description:"Calculate the determinant of a matrix",examples:["det([1, 2; 3, 4])","det([-2, 2, 3; -1, 1, 3; 2, 0, -1])"],seealso:["concat","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]};var Rz={name:"diag",category:"Matrix",syntax:["diag(x)","diag(x, k)"],description:"Create a diagonal matrix or retrieve the diagonal of a matrix. When x is a vector, a matrix with the vector values on the diagonal will be returned. When x is a matrix, a vector with the diagonal values of the matrix is returned. When k is provided, the k-th diagonal will be filled in or retrieved, if k is positive, the values are placed on the super diagonal. When k is negative, the values are placed on the sub diagonal.",examples:["diag(1:3)","diag(1:3, 1)","a = [1, 2, 3; 4, 5, 6; 7, 8, 9]","diag(a)"],seealso:["concat","det","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]};var Lz={name:"diff",category:"Matrix",syntax:["diff(arr)","diff(arr, dim)"],description:["Create a new matrix or array with the difference of the passed matrix or array.","Dim parameter is optional and used to indicate the dimension of the array/matrix to apply the difference","If no dimension parameter is passed it is assumed as dimension 0","Dimension is zero-based in javascript and one-based in the parser","Arrays must be 'rectangular' meaning arrays like [1, 2]","If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays"],examples:["A = [1, 2, 4, 7, 0]","diff(A)","diff(A, 1)","B = [[1, 2], [3, 4]]","diff(B)","diff(B, 1)","diff(B, 2)","diff(B, bignumber(2))","diff([[1, 2], matrix([3, 4])], 2)"],seealso:["subtract","partitionSelect"]};var Uz={name:"dot",category:"Matrix",syntax:["dot(A, B)","A * B"],description:"Calculate the dot product of two vectors. The dot product of A = [a1, a2, a3, ..., an] and B = [b1, b2, b3, ..., bn] is defined as dot(A, B) = a1 * b1 + a2 * b2 + a3 * b3 + ... + an * bn",examples:["dot([2, 4, 1], [2, 2, 3])","[2, 4, 1] * [2, 2, 3]"],seealso:["multiply","cross"]};var zz={name:"eigs",category:"Matrix",syntax:["eigs(x)"],description:"Calculate the eigenvalues and optionally eigenvectors of a square matrix",examples:["eigs([[5, 2.3], [2.3, 1]])","eigs([[1, 2, 3], [4, 5, 6], [7, 8, 9]], { precision: 1e-6, eigenvectors: false })"],seealso:["inv"]};var Vz={name:"filter",category:"Matrix",syntax:["filter(x, test)"],description:"Filter items in a matrix.",examples:["isPositive(x) = x > 0","filter([6, -2, -1, 4, 3], isPositive)","filter([6, -2, 0, 1, 0], x != 0)"],seealso:["sort","map","forEach"]};var qz={name:"flatten",category:"Matrix",syntax:["flatten(x)"],description:"Flatten a multi dimensional matrix into a single dimensional matrix.",examples:["a = [1, 2, 3; 4, 5, 6]","size(a)","b = flatten(a)","size(b)"],seealso:["concat","resize","size","squeeze"]};var jz={name:"forEach",category:"Matrix",syntax:["forEach(x, callback)"],description:"Iterates over all elements of a matrix/array, and executes the given callback function.",examples:["numberOfPets = {}","addPet(n) = numberOfPets[n] = (numberOfPets[n] ? numberOfPets[n]:0 ) + 1;",'forEach(["Dog","Cat","Cat"], addPet)',"numberOfPets"],seealso:["map","sort","filter"]};var Zz={name:"getMatrixDataType",category:"Matrix",syntax:["getMatrixDataType(x)"],description:'Find the data type of all elements in a matrix or array, for example "number" if all items are a number and "Complex" if all values are complex numbers. If a matrix contains more than one data type, it will return "mixed".',examples:["getMatrixDataType([1, 2, 3])","getMatrixDataType([[5 cm], [2 inch]])",'getMatrixDataType([1, "text"])',"getMatrixDataType([1, bignumber(4)])"],seealso:["matrix","sparse","typeOf"]};var Gz={name:"identity",category:"Matrix",syntax:["identity(n)","identity(m, n)","identity([m, n])"],description:"Returns the identity matrix with size m-by-n. The matrix has ones on the diagonal and zeros elsewhere.",examples:["identity(3)","identity(3, 5)","a = [1, 2, 3; 4, 5, 6]","identity(size(a))"],seealso:["concat","det","diag","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]};var Wz={name:"inv",category:"Matrix",syntax:["inv(x)"],description:"Calculate the inverse of a matrix",examples:["inv([1, 2; 3, 4])","inv(4)","1 / 4"],seealso:["concat","det","diag","identity","ones","range","size","squeeze","subset","trace","transpose","zeros"]};var Hz={name:"pinv",category:"Matrix",syntax:["pinv(x)"],description:"Calculate the Moore\u2013Penrose inverse of a matrix",examples:["pinv([1, 2; 3, 4])","pinv([[1, 0], [0, 1], [0, 1]])","pinv(4)"],seealso:["inv"]};var Yz={name:"kron",category:"Matrix",syntax:["kron(x, y)"],description:"Calculates the Kronecker product of 2 matrices or vectors.",examples:["kron([[1, 0], [0, 1]], [[1, 2], [3, 4]])","kron([1,1], [2,3,4])"],seealso:["multiply","dot","cross"]};var Jz={name:"map",category:"Matrix",syntax:["map(x, callback)","map(x, y, ..., callback)"],description:"Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array or the matrices/arrays.",examples:["map([1, 2, 3], square)","map([1, 2], [3, 4], f(a,b) = a + b)"],seealso:["filter","forEach"]};var Xz={name:"matrixFromColumns",category:"Matrix",syntax:["matrixFromColumns(...arr)","matrixFromColumns(row1, row2)","matrixFromColumns(row1, row2, row3)"],description:"Create a dense matrix from vectors as individual columns.",examples:["matrixFromColumns([1, 2, 3], [[4],[5],[6]])"],seealso:["matrix","matrixFromRows","matrixFromFunction","zeros"]};var Kz={name:"matrixFromFunction",category:"Matrix",syntax:["matrixFromFunction(size, fn)","matrixFromFunction(size, fn, format)","matrixFromFunction(size, fn, format, datatype)","matrixFromFunction(size, format, fn)","matrixFromFunction(size, format, datatype, fn)"],description:"Create a matrix by evaluating a generating function at each index.",examples:["f(I) = I[1] - I[2]","matrixFromFunction([3,3], f)","g(I) = I[1] - I[2] == 1 ? 4 : 0",'matrixFromFunction([100, 100], "sparse", g)',"matrixFromFunction([5], random)"],seealso:["matrix","matrixFromRows","matrixFromColumns","zeros"]};var Qz={name:"matrixFromRows",category:"Matrix",syntax:["matrixFromRows(...arr)","matrixFromRows(row1, row2)","matrixFromRows(row1, row2, row3)"],description:"Create a dense matrix from vectors as individual rows.",examples:["matrixFromRows([1, 2, 3], [[4],[5],[6]])"],seealso:["matrix","matrixFromColumns","matrixFromFunction","zeros"]};var e3={name:"ones",category:"Matrix",syntax:["ones(m)","ones(m, n)","ones(m, n, p, ...)","ones([m])","ones([m, n])","ones([m, n, p, ...])"],description:"Create a matrix containing ones.",examples:["ones(3)","ones(3, 5)","ones([2,3]) * 4.5","a = [1, 2, 3; 4, 5, 6]","ones(size(a))"],seealso:["concat","det","diag","identity","inv","range","size","squeeze","subset","trace","transpose","zeros"]};var t3={name:"partitionSelect",category:"Matrix",syntax:["partitionSelect(x, k)","partitionSelect(x, k, compare)"],description:"Partition-based selection of an array or 1D matrix. Will find the kth smallest value, and mutates the input array. Uses Quickselect.",examples:["partitionSelect([5, 10, 1], 2)",'partitionSelect(["C", "B", "A", "D"], 1, compareText)',"arr = [5, 2, 1]","partitionSelect(arr, 0) # returns 1, arr is now: [1, 2, 5]","arr","partitionSelect(arr, 1, 'desc') # returns 2, arr is now: [5, 2, 1]","arr"],seealso:["sort"]};var r3={name:"range",category:"Type",syntax:["start:end","start:step:end","range(start, end)","range(start, end, step)","range(string)"],description:"Create a range. Lower bound of the range is included, upper bound is excluded.",examples:["1:5","3:-1:-3","range(3, 7)","range(0, 12, 2)",'range("4:10")',"range(1m, 1m, 3m)","a = [1, 2, 3, 4; 5, 6, 7, 8]","a[1:2, 1:2]"],seealso:["concat","det","diag","identity","inv","ones","size","squeeze","subset","trace","transpose","zeros"]};var n3={name:"reshape",category:"Matrix",syntax:["reshape(x, sizes)"],description:"Reshape a multi dimensional array to fit the specified dimensions.",examples:["reshape([1, 2, 3, 4, 5, 6], [2, 3])","reshape([[1, 2], [3, 4]], [1, 4])","reshape([[1, 2], [3, 4]], [4])","reshape([1, 2, 3, 4], [-1, 2])"],seealso:["size","squeeze","resize"]};var i3={name:"resize",category:"Matrix",syntax:["resize(x, size)","resize(x, size, defaultValue)"],description:"Resize a matrix.",examples:["resize([1,2,3,4,5], [3])","resize([1,2,3], [5])","resize([1,2,3], [5], -1)","resize(2, [2, 3])",'resize("hello", [8], "!")'],seealso:["size","subset","squeeze","reshape"]};var o3={name:"rotate",category:"Matrix",syntax:["rotate(w, theta)","rotate(w, theta, v)"],description:"Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.",examples:["rotate([1, 0], pi / 2)",'rotate(matrix([1, 0]), unit("35deg"))','rotate([1, 0, 0], unit("90deg"), [0, 0, 1])','rotate(matrix([1, 0, 0]), unit("90deg"), matrix([0, 0, 1]))'],seealso:["matrix","rotationMatrix"]};var a3={name:"rotationMatrix",category:"Matrix",syntax:["rotationMatrix(theta)","rotationMatrix(theta, v)","rotationMatrix(theta, v, format)"],description:"Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.",examples:["rotationMatrix(pi / 2)",'rotationMatrix(unit("45deg"), [0, 0, 1])','rotationMatrix(1, matrix([0, 0, 1]), "sparse")'],seealso:["cos","sin"]};var s3={name:"row",category:"Matrix",syntax:["row(x, index)"],description:"Return a row from a matrix or array.",examples:["A = [[1, 2], [3, 4]]","row(A, 1)","row(A, 2)"],seealso:["column","matrixFromRows"]};var u3={name:"size",category:"Matrix",syntax:["size(x)"],description:"Calculate the size of a matrix.",examples:["size(2.3)",'size("hello world")',"a = [1, 2; 3, 4; 5, 6]","size(a)","size(1:6)"],seealso:["concat","count","det","diag","identity","inv","ones","range","squeeze","subset","trace","transpose","zeros"]};var l3={name:"sort",category:"Matrix",syntax:["sort(x)","sort(x, compare)"],description:'Sort the items in a matrix. Compare can be a string "asc", "desc", "natural", or a custom sort function.',examples:["sort([5, 10, 1])",'sort(["C", "B", "A", "D"], "natural")',"sortByLength(a, b) = size(a)[1] - size(b)[1]",'sort(["Langdon", "Tom", "Sara"], sortByLength)','sort(["10", "1", "2"], "natural")'],seealso:["map","filter","forEach"]};var c3={name:"squeeze",category:"Matrix",syntax:["squeeze(x)"],description:"Remove inner and outer singleton dimensions from a matrix.",examples:["a = zeros(3,2,1)","size(squeeze(a))","b = zeros(1,1,3)","size(squeeze(b))"],seealso:["concat","det","diag","identity","inv","ones","range","size","subset","trace","transpose","zeros"]};var f3={name:"subset",category:"Matrix",syntax:["value(index)","value(index) = replacement","subset(value, [index])","subset(value, [index], replacement)"],description:"Get or set a subset of the entries of a matrix or characters of a string. Indexes are one-based. There should be one index specification for each dimension of the target. Each specification can be a single index, a list of indices, or a range in colon notation `l:u`. In a range, both the lower bound l and upper bound u are included; and if a bound is omitted it defaults to the most extreme valid value. The cartesian product of the indices specified in each dimension determines the target of the operation.",examples:["d = [1, 2; 3, 4]","e = []","e[1, 1:2] = [5, 6]","e[2, :] = [7, 8]","f = d * e","f[2, 1]","f[:, 1]","f[[1,2], [1,3]] = [9, 10; 11, 12]","f"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","trace","transpose","zeros"]};var p3={name:"trace",category:"Matrix",syntax:["trace(A)"],description:"Calculate the trace of a matrix: the sum of the elements on the main diagonal of a square matrix.",examples:["A = [1, 2, 3; -1, 2, 3; 2, 0, 3]","trace(A)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","transpose","zeros"]};var m3={name:"transpose",category:"Matrix",syntax:["x'","transpose(x)"],description:"Transpose a matrix",examples:["a = [1, 2, 3; 4, 5, 6]","a'","transpose(a)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","zeros"]};var d3={name:"zeros",category:"Matrix",syntax:["zeros(m)","zeros(m, n)","zeros(m, n, p, ...)","zeros([m])","zeros([m, n])","zeros([m, n, p, ...])"],description:"Create a matrix containing zeros.",examples:["zeros(3)","zeros(3, 5)","a = [1, 2, 3; 4, 5, 6]","zeros(size(a))"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose"]};var h3={name:"fft",category:"Matrix",syntax:["fft(x)"],description:"Calculate N-dimensional Fourier transform",examples:["fft([[1, 0], [1, 0]])"],seealso:["ifft"]};var g3={name:"ifft",category:"Matrix",syntax:["ifft(x)"],description:"Calculate N-dimensional inverse Fourier transform",examples:["ifft([[2, 2], [0, 0]])"],seealso:["fft"]};var v3={name:"combinations",category:"Probability",syntax:["combinations(n, k)"],description:"Compute the number of combinations of n items taken k at a time",examples:["combinations(7, 5)"],seealso:["combinationsWithRep","permutations","factorial"]};var y3={name:"combinationsWithRep",category:"Probability",syntax:["combinationsWithRep(n, k)"],description:"Compute the number of combinations of n items taken k at a time with replacements.",examples:["combinationsWithRep(7, 5)"],seealso:["combinations","permutations","factorial"]};var b3={name:"factorial",category:"Probability",syntax:["n!","factorial(n)"],description:"Compute the factorial of a value",examples:["5!","5 * 4 * 3 * 2 * 1","3!"],seealso:["combinations","combinationsWithRep","permutations","gamma"]};var x3={name:"gamma",category:"Probability",syntax:["gamma(n)"],description:"Compute the gamma function. For small values, the Lanczos approximation is used, and for large values the extended Stirling approximation.",examples:["gamma(4)","3!","gamma(1/2)","sqrt(pi)"],seealso:["factorial"]};var _3={name:"lgamma",category:"Probability",syntax:["lgamma(n)"],description:"Logarithm of the gamma function for real, positive numbers and complex numbers, using Lanczos approximation for numbers and Stirling series for complex numbers.",examples:["lgamma(4)","lgamma(1/2)","lgamma(i)","lgamma(complex(1.1, 2))"],seealso:["gamma"]};var w3={name:"kldivergence",category:"Probability",syntax:["kldivergence(x, y)"],description:"Calculate the Kullback-Leibler (KL) divergence between two distributions.",examples:["kldivergence([0.7,0.5,0.4], [0.2,0.9,0.5])"],seealso:[]};var S3={name:"multinomial",category:"Probability",syntax:["multinomial(A)"],description:"Multinomial Coefficients compute the number of ways of picking a1, a2, ..., ai unordered outcomes from `n` possibilities. multinomial takes one array of integers as an argument. The following condition must be enforced: every ai > 0.",examples:["multinomial([1, 2, 1])"],seealso:["combinations","factorial"]};var D3={name:"permutations",category:"Probability",syntax:["permutations(n)","permutations(n, k)"],description:"Compute the number of permutations of n items taken k at a time",examples:["permutations(5)","permutations(5, 3)"],seealso:["combinations","combinationsWithRep","factorial"]};var E3={name:"pickRandom",category:"Probability",syntax:["pickRandom(array)","pickRandom(array, number)","pickRandom(array, weights)","pickRandom(array, number, weights)","pickRandom(array, weights, number)"],description:"Pick a random entry from a given array.",examples:["pickRandom(0:10)","pickRandom([1, 3, 1, 6])","pickRandom([1, 3, 1, 6], 2)","pickRandom([1, 3, 1, 6], [2, 3, 2, 1])","pickRandom([1, 3, 1, 6], 2, [2, 3, 2, 1])","pickRandom([1, 3, 1, 6], [2, 3, 2, 1], 2)"],seealso:["random","randomInt"]};var A3={name:"random",category:"Probability",syntax:["random()","random(max)","random(min, max)","random(size)","random(size, max)","random(size, min, max)"],description:"Return a random number.",examples:["random()","random(10, 20)","random([2, 3])"],seealso:["pickRandom","randomInt"]};var T3={name:"randomInt",category:"Probability",syntax:["randomInt(max)","randomInt(min, max)","randomInt(size)","randomInt(size, max)","randomInt(size, min, max)"],description:"Return a random integer number",examples:["randomInt(10, 20)","randomInt([2, 3], 10)"],seealso:["pickRandom","random"]};var N3={name:"compare",category:"Relational",syntax:["compare(x, y)"],description:"Compare two values. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:["compare(2, 3)","compare(3, 2)","compare(2, 2)","compare(5cm, 40mm)","compare(2, [1, 2, 3])"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compareNatural","compareText"]};var M3={name:"compareNatural",category:"Relational",syntax:["compareNatural(x, y)"],description:"Compare two values of any type in a deterministic, natural way. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:["compareNatural(2, 3)","compareNatural(3, 2)","compareNatural(2, 2)","compareNatural(5cm, 40mm)",'compareNatural("2", "10")',"compareNatural(2 + 3i, 2 + 4i)","compareNatural([1, 2, 4], [1, 2, 3])","compareNatural([1, 5], [1, 2, 3])","compareNatural([1, 2], [1, 2])","compareNatural({a: 2}, {a: 4})"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compare","compareText"]};var C3={name:"compareText",category:"Relational",syntax:["compareText(x, y)"],description:"Compare two strings lexically. Comparison is case sensitive. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:['compareText("B", "A")','compareText("A", "B")','compareText("A", "A")','compareText("2", "10")','compare("2", "10")',"compare(2, 10)",'compareNatural("2", "10")','compareText("B", ["A", "B", "C"])'],seealso:["compare","compareNatural"]};var $3={name:"deepEqual",category:"Relational",syntax:["deepEqual(x, y)"],description:"Check equality of two matrices element wise. Returns true if the size of both matrices is equal and when and each of the elements are equal.",examples:["deepEqual([1,3,4], [1,3,4])","deepEqual([1,3,4], [1,3])"],seealso:["equal","unequal","smaller","larger","smallerEq","largerEq","compare"]};var I3={name:"equal",category:"Relational",syntax:["x == y","equal(x, y)"],description:"Check equality of two values. Returns true if the values are equal, and false if not.",examples:["2+2 == 3","2+2 == 4","a = 3.2","b = 6-2.8","a == b","50cm == 0.5m"],seealso:["unequal","smaller","larger","smallerEq","largerEq","compare","deepEqual","equalText"]};var F3={name:"equalText",category:"Relational",syntax:["equalText(x, y)"],description:"Check equality of two strings. Comparison is case sensitive. Returns true if the values are equal, and false if not.",examples:['equalText("Hello", "Hello")','equalText("a", "A")','equal("2e3", "2000")','equalText("2e3", "2000")','equalText("B", ["A", "B", "C"])'],seealso:["compare","compareNatural","compareText","equal"]};var k3={name:"larger",category:"Relational",syntax:["x > y","larger(x, y)"],description:"Check if value x is larger than y. Returns true if x is larger than y, and false if not. Comparing a value with NaN returns false.",examples:["2 > 3","5 > 2*2","a = 3.3","b = 6-2.8","(a > b)","(b < a)","5 cm > 2 inch"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compare"]};var P3={name:"largerEq",category:"Relational",syntax:["x >= y","largerEq(x, y)"],description:"Check if value x is larger or equal to y. Returns true if x is larger or equal to y, and false if not.",examples:["2 >= 1+1","2 > 1+1","a = 3.2","b = 6-2.8","(a >= b)"],seealso:["equal","unequal","smallerEq","smaller","compare"]};var B3={name:"smaller",category:"Relational",syntax:["x < y","smaller(x, y)"],description:"Check if value x is smaller than value y. Returns true if x is smaller than y, and false if not. Comparing a value with NaN returns false.",examples:["2 < 3","5 < 2*2","a = 3.3","b = 6-2.8","(a < b)","5 cm < 2 inch"],seealso:["equal","unequal","larger","smallerEq","largerEq","compare"]};var O3={name:"smallerEq",category:"Relational",syntax:["x <= y","smallerEq(x, y)"],description:"Check if value x is smaller or equal to value y. Returns true if x is smaller than y, and false if not.",examples:["2 <= 1+1","2 < 1+1","a = 3.2","b = 6-2.8","(a <= b)"],seealso:["equal","unequal","larger","smaller","largerEq","compare"]};var R3={name:"unequal",category:"Relational",syntax:["x != y","unequal(x, y)"],description:"Check unequality of two values. Returns true if the values are unequal, and false if they are equal.",examples:["2+2 != 3","2+2 != 4","a = 3.2","b = 6-2.8","a != b","50cm != 0.5m","5 cm != 2 inch"],seealso:["equal","smaller","larger","smallerEq","largerEq","compare","deepEqual"]};var L3={name:"setCartesian",category:"Set",syntax:["setCartesian(set1, set2)"],description:"Create the cartesian product of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays and the values will be sorted in ascending order before the operation.",examples:["setCartesian([1, 2], [3, 4])"],seealso:["setUnion","setIntersect","setDifference","setPowerset"]};var U3={name:"setDifference",category:"Set",syntax:["setDifference(set1, set2)"],description:"Create the difference of two (multi)sets: every element of set1, that is not the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setDifference([1, 2, 3, 4], [3, 4, 5, 6])","setDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setIntersect","setSymDifference"]};var z3={name:"setDistinct",category:"Set",syntax:["setDistinct(set)"],description:"Collect the distinct elements of a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setDistinct([1, 1, 1, 2, 2, 3])"],seealso:["setMultiplicity"]};var V3={name:"setIntersect",category:"Set",syntax:["setIntersect(set1, set2)"],description:"Create the intersection of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setIntersect([1, 2, 3, 4], [3, 4, 5, 6])","setIntersect([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setDifference"]};var q3={name:"setIsSubset",category:"Set",syntax:["setIsSubset(set1, set2)"],description:"Check whether a (multi)set is a subset of another (multi)set: every element of set1 is the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setIsSubset([1, 2], [3, 4, 5, 6])","setIsSubset([3, 4], [3, 4, 5, 6])"],seealso:["setUnion","setIntersect","setDifference"]};var j3={name:"setMultiplicity",category:"Set",syntax:["setMultiplicity(element, set)"],description:"Count the multiplicity of an element in a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setMultiplicity(1, [1, 2, 2, 4])","setMultiplicity(2, [1, 2, 2, 4])"],seealso:["setDistinct","setSize"]};var Z3={name:"setPowerset",category:"Set",syntax:["setPowerset(set)"],description:"Create the powerset of a (multi)set: the powerset contains very possible subsets of a (multi)set. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setPowerset([1, 2, 3])"],seealso:["setCartesian"]};var G3={name:"setSize",category:"Set",syntax:["setSize(set)","setSize(set, unique)"],description:'Count the number of elements of a (multi)set. When the second parameter "unique" is true, count only the unique values. A multi-dimension array will be converted to a single-dimension array before the operation.',examples:["setSize([1, 2, 2, 4])","setSize([1, 2, 2, 4], true)"],seealso:["setUnion","setIntersect","setDifference"]};var W3={name:"setSymDifference",category:"Set",syntax:["setSymDifference(set1, set2)"],description:"Create the symmetric difference of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setSymDifference([1, 2, 3, 4], [3, 4, 5, 6])","setSymDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setIntersect","setDifference"]};var H3={name:"setUnion",category:"Set",syntax:["setUnion(set1, set2)"],description:"Create the union of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setUnion([1, 2, 3, 4], [3, 4, 5, 6])","setUnion([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setIntersect","setDifference"]};var Y3={name:"zpk2tf",category:"Signal",syntax:["zpk2tf(z, p, k)"],description:"Compute the transfer function of a zero-pole-gain model.",examples:["zpk2tf([1, 2], [-1, -2], 1)","zpk2tf([1, 2], [-1, -2])","zpk2tf([1 - 3i, 2 + 2i], [-1, -2])"],seealso:[]};var J3={name:"freqz",category:"Signal",syntax:["freqz(b, a)","freqz(b, a, w)"],description:"Calculates the frequency response of a filter given its numerator and denominator coefficients.",examples:["freqz([1, 2], [1, 2, 3])","freqz([1, 2], [1, 2, 3], [0, 1])","freqz([1, 2], [1, 2, 3], 512)"],seealso:[]};var X3={name:"erf",category:"Special",syntax:["erf(x)"],description:"Compute the erf function of a value using a rational Chebyshev approximations for different intervals of x",examples:["erf(0.2)","erf(-0.5)","erf(4)"],seealso:[]};var K3={name:"zeta",category:"Special",syntax:["zeta(s)"],description:"Compute the Riemann Zeta Function using an infinite series and Riemann's Functional Equation for the entire complex plane",examples:["zeta(0.2)","zeta(-0.5)","zeta(4)"],seealso:[]};var Q3={name:"mad",category:"Statistics",syntax:["mad(a, b, c, ...)","mad(A)"],description:"Compute the median absolute deviation of a matrix or a list with values. The median absolute deviation is defined as the median of the absolute deviations from the median.",examples:["mad(10, 20, 30)","mad([1, 2, 3])"],seealso:["mean","median","std","abs"]};var e6={name:"max",category:"Statistics",syntax:["max(a, b, c, ...)","max(A)","max(A, dimension)"],description:"Compute the maximum value of a list of values. If any NaN values are found, the function yields the last NaN in the input.",examples:["max(2, 3, 4, 1)","max([2, 3, 4, 1])","max([2, 5; 4, 3])","max([2, 5; 4, 3], 1)","max([2, 5; 4, 3], 2)","max(2.7, 7.1, -4.5, 2.0, 4.1)","min(2.7, 7.1, -4.5, 2.0, 4.1)"],seealso:["mean","median","min","prod","std","sum","variance"]};var t6={name:"mean",category:"Statistics",syntax:["mean(a, b, c, ...)","mean(A)","mean(A, dimension)"],description:"Compute the arithmetic mean of a list of values.",examples:["mean(2, 3, 4, 1)","mean([2, 3, 4, 1])","mean([2, 5; 4, 3])","mean([2, 5; 4, 3], 1)","mean([2, 5; 4, 3], 2)","mean([1.0, 2.7, 3.2, 4.0])"],seealso:["max","median","min","prod","std","sum","variance"]};var r6={name:"median",category:"Statistics",syntax:["median(a, b, c, ...)","median(A)"],description:"Compute the median of all values. The values are sorted and the middle value is returned. In case of an even number of values, the average of the two middle values is returned.",examples:["median(5, 2, 7)","median([3, -1, 5, 7])"],seealso:["max","mean","min","prod","std","sum","variance","quantileSeq"]};var n6={name:"min",category:"Statistics",syntax:["min(a, b, c, ...)","min(A)","min(A, dimension)"],description:"Compute the minimum value of a list of values. If any NaN values are found, the function yields the last NaN in the input.",examples:["min(2, 3, 4, 1)","min([2, 3, 4, 1])","min([2, 5; 4, 3])","min([2, 5; 4, 3], 1)","min([2, 5; 4, 3], 2)","min(2.7, 7.1, -4.5, 2.0, 4.1)","max(2.7, 7.1, -4.5, 2.0, 4.1)"],seealso:["max","mean","median","prod","std","sum","variance"]};var i6={name:"mode",category:"Statistics",syntax:["mode(a, b, c, ...)","mode(A)","mode(A, a, b, B, c, ...)"],description:"Computes the mode of all values as an array. In case mode being more than one, multiple values are returned in an array.",examples:["mode(2, 1, 4, 3, 1)","mode([1, 2.7, 3.2, 4, 2.7])","mode(1, 4, 6, 1, 6)"],seealso:["max","mean","min","median","prod","std","sum","variance"]};var o6={name:"prod",category:"Statistics",syntax:["prod(a, b, c, ...)","prod(A)"],description:"Compute the product of all values.",examples:["prod(2, 3, 4)","prod([2, 3, 4])","prod([2, 5; 4, 3])"],seealso:["max","mean","min","median","min","std","sum","variance"]};var a6={name:"quantileSeq",category:"Statistics",syntax:["quantileSeq(A, prob[, sorted])","quantileSeq(A, [prob1, prob2, ...][, sorted])","quantileSeq(A, N[, sorted])"],description:`Compute the prob order quantile of a matrix or a list with values. The sequence is sorted and the middle value is returned. Supported types of sequence values are: Number, BigNumber, Unit Supported types of probability are: Number, BigNumber. +`),e.seealso&&e.seealso.length&&(n+=`See also: `+e.seealso.join(`, `)+` +`),n},n.prototype.toJSON=function(){var e=mD(this.doc);return e.mathjs=`Help`,e},n.fromJSON=function(e){var t={};return Object.keys(e).filter(e=>e!==`mathjs`).forEach(n=>{t[n]=e[n]}),new n(t)},n.prototype.valueOf=n.prototype.toString,n},{isClass:!0}),OU=Z(`Chain`,[`?on`,`math`,`typed`],e=>{var{on:t,math:n,typed:r}=e;function i(e){if(!(this instanceof i))throw SyntaxError(`Constructor must be called with the new operator`);fD(e)?this.value=e.value:this.value=e}i.prototype.type=`Chain`,i.prototype.isChain=!0,i.prototype.done=function(){return this.value},i.prototype.valueOf=function(){return this.value},i.prototype.toString=function(){return GA(this.value)},i.prototype.toJSON=function(){return{mathjs:`Chain`,value:this.value}},i.fromJSON=function(e){return new i(e.value)};function a(e,t){typeof t==`function`&&(i.prototype[e]=s(t))}function o(e,t){xD(i.prototype,e,function(){var e=t();if(typeof e==`function`)return s(e)})}function s(e){return function(){if(arguments.length===0)return new i(e(this.value));for(var t=[this.value],n=0;ne[t])};for(var r in e)n(r)}};var c={expression:!0,docs:!0,type:!0,classes:!0,json:!0,error:!0,isChain:!0};return i.createProxy(n),t&&t(`import`,function(e,t,n){n||o(e,t)}),i},{isClass:!0}),kU={name:`e`,category:`Constants`,syntax:[`e`],description:`Euler's number, the base of the natural logarithm. Approximately equal to 2.71828`,examples:[`e`,`e ^ 2`,`exp(2)`,`log(e)`],seealso:[`exp`]},AU={name:`false`,category:`Constants`,syntax:[`false`],description:`Boolean value false`,examples:[`false`],seealso:[`true`]},jU={name:`i`,category:`Constants`,syntax:[`i`],description:`Imaginary unit, defined as i*i=-1. A complex number is described as a + b*i, where a is the real part, and b is the imaginary part.`,examples:[`i`,`i * i`,`sqrt(-1)`],seealso:[]},MU={name:`Infinity`,category:`Constants`,syntax:[`Infinity`],description:`Infinity, a number which is larger than the maximum number that can be handled by a floating point number.`,examples:[`Infinity`,`1 / 0`],seealso:[]},NU={name:`LN10`,category:`Constants`,syntax:[`LN10`],description:`Returns the natural logarithm of 10, approximately equal to 2.302`,examples:[`LN10`,`log(10)`],seealso:[]},PU={name:`LN2`,category:`Constants`,syntax:[`LN2`],description:`Returns the natural logarithm of 2, approximately equal to 0.693`,examples:[`LN2`,`log(2)`],seealso:[]},FU={name:`LOG10E`,category:`Constants`,syntax:[`LOG10E`],description:`Returns the base-10 logarithm of E, approximately equal to 0.434`,examples:[`LOG10E`,`log(e, 10)`],seealso:[]},IU={name:`LOG2E`,category:`Constants`,syntax:[`LOG2E`],description:`Returns the base-2 logarithm of E, approximately equal to 1.442`,examples:[`LOG2E`,`log(e, 2)`],seealso:[]},LU={name:`NaN`,category:`Constants`,syntax:[`NaN`],description:`Not a number`,examples:[`NaN`,`0 / 0`],seealso:[]},RU={name:`null`,category:`Constants`,syntax:[`null`],description:`Value null`,examples:[`null`],seealso:[`true`,`false`]},zU={name:`phi`,category:`Constants`,syntax:[`phi`],description:"Phi is the golden ratio. Two quantities are in the golden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities. Phi is defined as `(1 + sqrt(5)) / 2` and is approximately 1.618034...",examples:[`phi`],seealso:[]},BU={name:`pi`,category:`Constants`,syntax:[`pi`],description:`The number pi is a mathematical constant that is the ratio of a circle's circumference to its diameter, and is approximately equal to 3.14159`,examples:[`pi`,`sin(pi/2)`],seealso:[`tau`]},VU={bignumber:{name:`bignumber`,category:`Construction`,syntax:[`bignumber(x)`],description:`Create a big number from a number or string.`,examples:[`0.1 + 0.2`,`bignumber(0.1) + bignumber(0.2)`,`bignumber("7.2")`,`bignumber("7.2e500")`,`bignumber([0.1, 0.2, 0.3])`],seealso:[`boolean`,`bigint`,`complex`,`fraction`,`index`,`matrix`,`string`,`unit`]},bigint:{name:`bigint`,category:`Construction`,syntax:[`bigint(x)`],description:`Create a bigint, an integer with an arbitrary number of digits, from a number or string.`,examples:[`123123123123123123 # a large number will lose digits`,`bigint("123123123123123123")`,`bignumber(["1", "3", "5"])`],seealso:[`boolean`,`bignumber`,`number`,`complex`,`fraction`,`index`,`matrix`,`string`,`unit`]},boolean:{name:`boolean`,category:`Construction`,syntax:[`x`,`boolean(x)`],description:`Convert a string or number into a boolean.`,examples:[`boolean(0)`,`boolean(1)`,`boolean(3)`,`boolean("true")`,`boolean("false")`,`boolean([1, 0, 1, 1])`],seealso:[`bignumber`,`complex`,`index`,`matrix`,`number`,`string`,`unit`]},complex:{name:`complex`,category:`Construction`,syntax:[`complex()`,`complex(re, im)`,`complex(string)`],description:`Create a complex number.`,examples:[`complex()`,`complex(2, 3)`,`complex("7 - 2i")`],seealso:[`bignumber`,`boolean`,`index`,`matrix`,`number`,`string`,`unit`]},createUnit:{name:`createUnit`,category:`Construction`,syntax:[`createUnit(definitions)`,`createUnit(name, definition)`],description:`Create a user-defined unit and register it with the Unit type.`,examples:[`createUnit("foo")`,`createUnit("knot", {definition: "0.514444444 m/s", aliases: ["knots", "kt", "kts"]})`,`createUnit("mph", "1 mile/hour")`],seealso:[`unit`,`splitUnit`]},fraction:{name:`fraction`,category:`Construction`,syntax:[`fraction(num)`,`fraction(matrix)`,`fraction(num,den)`,`fraction({n: num, d: den})`],description:`Create a fraction from a number or from integer numerator and denominator.`,examples:[`fraction(0.125)`,`fraction(1, 3) + fraction(2, 5)`,`fraction({n: 333, d: 53})`,`fraction([sqrt(9), sqrt(10), sqrt(11)])`],seealso:[`bignumber`,`boolean`,`complex`,`index`,`matrix`,`string`,`unit`]},index:{name:`index`,category:`Construction`,syntax:[`[start]`,`[start:end]`,`[start:step:end]`,`[start1, start 2, ...]`,`[start1:end1, start2:end2, ...]`,`[start1:step1:end1, start2:step2:end2, ...]`],description:`Create an index to get or replace a subset of a matrix`,examples:[`A = [1, 2, 3; 4, 5, 6]`,`A[1, :]`,`A[1, 2] = 50`,`A[1:2, 1:2] = 1`,`B = [1, 2, 3]`,`B[B>1 and B<3]`],seealso:[`bignumber`,`boolean`,`complex`,`matrix`,`number`,`range`,`string`,`unit`]},matrix:{name:`matrix`,category:`Construction`,syntax:[`[]`,`[a1, b1, ...; a2, b2, ...]`,`matrix()`,`matrix("dense")`,`matrix([...])`],description:`Create a matrix.`,examples:[`[]`,`[1, 2, 3]`,`[1, 2, 3; 4, 5, 6]`,`matrix()`,`matrix([3, 4])`,`matrix([3, 4; 5, 6], "sparse")`,`matrix([3, 4; 5, 6], "sparse", "number")`],seealso:[`bignumber`,`boolean`,`complex`,`index`,`number`,`string`,`unit`,`sparse`]},number:{name:`number`,category:`Construction`,syntax:[`x`,`number(x)`,`number(unit, valuelessUnit)`],description:`Create a number or convert a string or boolean into a number.`,examples:[`2`,`2e3`,`4.05`,`number(2)`,`number("7.2")`,`number(true)`,`number([true, false, true, true])`,`number(unit("52cm"), "m")`],seealso:[`bignumber`,`bigint`,`boolean`,`complex`,`fraction`,`index`,`matrix`,`string`,`unit`]},sparse:{name:`sparse`,category:`Construction`,syntax:[`sparse()`,`sparse([a1, b1, ...; a1, b2, ...])`,`sparse([a1, b1, ...; a1, b2, ...], "number")`],description:`Create a sparse matrix.`,examples:[`sparse()`,`sparse([3, 4; 5, 6])`,`sparse([3, 0; 5, 0], "number")`],seealso:[`bignumber`,`boolean`,`complex`,`index`,`number`,`string`,`unit`,`matrix`]},splitUnit:{name:`splitUnit`,category:`Construction`,syntax:[`splitUnit(unit: Unit, parts: Unit[])`],description:`Split a unit in an array of units whose sum is equal to the original unit.`,examples:[`splitUnit(1 m, ["feet", "inch"])`],seealso:[`unit`,`createUnit`]},string:{name:`string`,category:`Construction`,syntax:[`"text"`,`string(x)`],description:`Create a string or convert a value to a string`,examples:[`"Hello World!"`,`string(4.2)`,`string(3 + 2i)`],seealso:[`bignumber`,`boolean`,`complex`,`index`,`matrix`,`number`,`unit`]},unit:{name:`unit`,category:`Construction`,syntax:[`value unit`,`unit(value, unit)`,`unit(string)`],description:`Create a unit.`,examples:[`5.5 mm`,`3 inch`,`unit(7.1, "kilogram")`,`unit("23 deg")`],seealso:[`bignumber`,`boolean`,`complex`,`index`,`matrix`,`number`,`string`]},e:kU,E:kU,false:AU,i:jU,Infinity:MU,LN2:PU,LN10:NU,LOG2E:IU,LOG10E:FU,NaN:LU,null:RU,pi:BU,PI:BU,phi:zU,SQRT1_2:{name:`SQRT1_2`,category:`Constants`,syntax:[`SQRT1_2`],description:`Returns the square root of 1/2, approximately equal to 0.707`,examples:[`SQRT1_2`,`sqrt(1/2)`],seealso:[]},SQRT2:{name:`SQRT2`,category:`Constants`,syntax:[`SQRT2`],description:`Returns the square root of 2, approximately equal to 1.414`,examples:[`SQRT2`,`sqrt(2)`],seealso:[]},tau:{name:`tau`,category:`Constants`,syntax:[`tau`],description:`Tau is the ratio constant of a circle's circumference to radius, equal to 2 * pi, approximately 6.2832.`,examples:[`tau`,`2 * pi`],seealso:[`pi`]},true:{name:`true`,category:`Constants`,syntax:[`true`],description:`Boolean value true`,examples:[`true`],seealso:[`false`]},version:{name:`version`,category:`Constants`,syntax:[`version`],description:`A string with the version number of math.js`,examples:[`version`],seealso:[]},speedOfLight:{description:`Speed of light in vacuum`,examples:[`speedOfLight`]},gravitationConstant:{description:`Newtonian constant of gravitation`,examples:[`gravitationConstant`]},planckConstant:{description:`Planck constant`,examples:[`planckConstant`]},reducedPlanckConstant:{description:`Reduced Planck constant`,examples:[`reducedPlanckConstant`]},magneticConstant:{description:`Magnetic constant (vacuum permeability)`,examples:[`magneticConstant`]},electricConstant:{description:`Electric constant (vacuum permeability)`,examples:[`electricConstant`]},vacuumImpedance:{description:`Characteristic impedance of vacuum`,examples:[`vacuumImpedance`]},coulomb:{description:`Coulomb's constant. Deprecated in favor of coulombConstant`,examples:[`coulombConstant`]},coulombConstant:{description:`Coulomb's constant`,examples:[`coulombConstant`]},elementaryCharge:{description:`Elementary charge`,examples:[`elementaryCharge`]},bohrMagneton:{description:`Bohr magneton`,examples:[`bohrMagneton`]},conductanceQuantum:{description:`Conductance quantum`,examples:[`conductanceQuantum`]},inverseConductanceQuantum:{description:`Inverse conductance quantum`,examples:[`inverseConductanceQuantum`]},magneticFluxQuantum:{description:`Magnetic flux quantum`,examples:[`magneticFluxQuantum`]},nuclearMagneton:{description:`Nuclear magneton`,examples:[`nuclearMagneton`]},klitzing:{description:`Von Klitzing constant`,examples:[`klitzing`]},bohrRadius:{description:`Bohr radius`,examples:[`bohrRadius`]},classicalElectronRadius:{description:`Classical electron radius`,examples:[`classicalElectronRadius`]},electronMass:{description:`Electron mass`,examples:[`electronMass`]},fermiCoupling:{description:`Fermi coupling constant`,examples:[`fermiCoupling`]},fineStructure:{description:`Fine-structure constant`,examples:[`fineStructure`]},hartreeEnergy:{description:`Hartree energy`,examples:[`hartreeEnergy`]},protonMass:{description:`Proton mass`,examples:[`protonMass`]},deuteronMass:{description:`Deuteron Mass`,examples:[`deuteronMass`]},neutronMass:{description:`Neutron mass`,examples:[`neutronMass`]},quantumOfCirculation:{description:`Quantum of circulation`,examples:[`quantumOfCirculation`]},rydberg:{description:`Rydberg constant`,examples:[`rydberg`]},thomsonCrossSection:{description:`Thomson cross section`,examples:[`thomsonCrossSection`]},weakMixingAngle:{description:`Weak mixing angle`,examples:[`weakMixingAngle`]},efimovFactor:{description:`Efimov factor`,examples:[`efimovFactor`]},atomicMass:{description:`Atomic mass constant`,examples:[`atomicMass`]},avogadro:{description:`Avogadro's number`,examples:[`avogadro`]},boltzmann:{description:`Boltzmann constant`,examples:[`boltzmann`]},faraday:{description:`Faraday constant`,examples:[`faraday`]},firstRadiation:{description:`First radiation constant`,examples:[`firstRadiation`]},loschmidt:{description:`Loschmidt constant at T=273.15 K and p=101.325 kPa`,examples:[`loschmidt`]},gasConstant:{description:`Gas constant`,examples:[`gasConstant`]},molarPlanckConstant:{description:`Molar Planck constant`,examples:[`molarPlanckConstant`]},molarVolume:{description:`Molar volume of an ideal gas at T=273.15 K and p=101.325 kPa`,examples:[`molarVolume`]},sackurTetrode:{description:`Sackur-Tetrode constant at T=1 K and p=101.325 kPa`,examples:[`sackurTetrode`]},secondRadiation:{description:`Second radiation constant`,examples:[`secondRadiation`]},stefanBoltzmann:{description:`Stefan-Boltzmann constant`,examples:[`stefanBoltzmann`]},wienDisplacement:{description:`Wien displacement law constant`,examples:[`wienDisplacement`]},molarMass:{description:`Molar mass constant`,examples:[`molarMass`]},molarMassC12:{description:`Molar mass constant of carbon-12`,examples:[`molarMassC12`]},gravity:{description:`Standard acceleration of gravity (standard acceleration of free-fall on Earth)`,examples:[`gravity`]},planckLength:{description:`Planck length`,examples:[`planckLength`]},planckMass:{description:`Planck mass`,examples:[`planckMass`]},planckTime:{description:`Planck time`,examples:[`planckTime`]},planckCharge:{description:`Planck charge`,examples:[`planckCharge`]},planckTemperature:{description:`Planck temperature`,examples:[`planckTemperature`]},derivative:{name:`derivative`,category:`Algebra`,syntax:[`derivative(expr, variable)`,`derivative(expr, variable, {simplify: boolean})`],description:`Takes the derivative of an expression expressed in parser Nodes. The derivative will be taken over the supplied variable in the second parameter. If there are multiple variables in the expression, it will return a partial derivative.`,examples:[`derivative("2x^3", "x")`,`derivative("2x^3", "x", {simplify: false})`,`derivative("2x^2 + 3x + 4", "x")`,`derivative("sin(2x)", "x")`,`f = parse("x^2 + x")`,`x = parse("x")`,`df = derivative(f, x)`,`df.evaluate({x: 3})`],seealso:[`simplify`,`parse`,`evaluate`]},lsolve:{name:`lsolve`,category:`Algebra`,syntax:[`x=lsolve(L, b)`],description:`Finds one solution of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.`,examples:[`a = [-2, 3; 2, 1]`,`b = [11, 9]`,`x = lsolve(a, b)`],seealso:[`lsolveAll`,`lup`,`lusolve`,`usolve`,`matrix`,`sparse`]},lsolveAll:{name:`lsolveAll`,category:`Algebra`,syntax:[`x=lsolveAll(L, b)`],description:`Finds all solutions of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.`,examples:[`a = [-2, 3; 2, 1]`,`b = [11, 9]`,`x = lsolve(a, b)`],seealso:[`lsolve`,`lup`,`lusolve`,`usolve`,`matrix`,`sparse`]},lup:{name:`lup`,category:`Algebra`,syntax:[`lup(m)`],description:`Calculate the Matrix LU decomposition with partial pivoting. Matrix A is decomposed in three matrices (L, U, P) where P * A = L * U`,examples:[`lup([[2, 1], [1, 4]])`,`lup(matrix([[2, 1], [1, 4]]))`,`lup(sparse([[2, 1], [1, 4]]))`],seealso:[`lusolve`,`lsolve`,`usolve`,`matrix`,`sparse`,`slu`,`qr`]},lusolve:{name:`lusolve`,category:`Algebra`,syntax:[`x=lusolve(A, b)`,`x=lusolve(lu, b)`],description:`Solves the linear system A * x = b where A is an [n x n] matrix and b is a [n] column vector.`,examples:[`a = [-2, 3; 2, 1]`,`b = [11, 9]`,`x = lusolve(a, b)`],seealso:[`lup`,`slu`,`lsolve`,`usolve`,`matrix`,`sparse`]},leafCount:{name:`leafCount`,category:`Algebra`,syntax:[`leafCount(expr)`],description:`Computes the number of leaves in the parse tree of the given expression`,examples:[`leafCount("e^(i*pi)-1")`,`leafCount(parse("{a: 22/7, b: 10^(1/2)}"))`],seealso:[`simplify`]},polynomialRoot:{name:`polynomialRoot`,category:`Algebra`,syntax:[`x=polynomialRoot(-6, 3)`,`x=polynomialRoot(4, -4, 1)`,`x=polynomialRoot(-8, 12, -6, 1)`],description:`Finds the roots of a univariate polynomial given by its coefficients starting from constant, linear, and so on, increasing in degree.`,examples:[`a = polynomialRoot(-6, 11, -6, 1)`],seealso:[`cbrt`,`sqrt`]},resolve:{name:`resolve`,category:`Algebra`,syntax:[`resolve(node, scope)`],description:`Recursively substitute variables in an expression tree.`,examples:[`resolve(parse("1 + x"), { x: 7 })`,`resolve(parse("size(text)"), { text: "Hello World" })`,`resolve(parse("x + y"), { x: parse("3z") })`,`resolve(parse("3x"), { x: parse("y+z"), z: parse("w^y") })`],seealso:[`simplify`,`evaluate`],mayThrow:[`ReferenceError`]},simplify:{name:`simplify`,category:`Algebra`,syntax:[`simplify(expr)`,`simplify(expr, rules)`],description:`Simplify an expression tree.`,examples:[`simplify("3 + 2 / 4")`,`simplify("2x + x")`,`f = parse("x * (x + 2 + x)")`,`simplified = simplify(f)`,`simplified.evaluate({x: 2})`],seealso:[`simplifyCore`,`derivative`,`evaluate`,`parse`,`rationalize`,`resolve`]},simplifyConstant:{name:`simplifyConstant`,category:`Algebra`,syntax:[`simplifyConstant(expr)`,`simplifyConstant(expr, options)`],description:`Replace constant subexpressions of node with their values.`,examples:[`simplifyConstant("(3-3)*x")`,`simplifyConstant(parse("z-cos(tau/8)"))`],seealso:[`simplify`,`simplifyCore`,`evaluate`]},simplifyCore:{name:`simplifyCore`,category:`Algebra`,syntax:[`simplifyCore(node)`],description:`Perform simple one-pass simplifications on an expression tree.`,examples:[`simplifyCore(parse("0*x"))`,`simplifyCore(parse("(x+0)*2"))`],seealso:[`simplify`,`simplifyConstant`,`evaluate`]},symbolicEqual:{name:`symbolicEqual`,category:`Algebra`,syntax:[`symbolicEqual(expr1, expr2)`,`symbolicEqual(expr1, expr2, options)`],description:`Returns true if the difference of the expressions simplifies to 0`,examples:[`symbolicEqual("x*y","y*x")`,`symbolicEqual("abs(x^2)", "x^2")`,`symbolicEqual("abs(x)", "x", {context: {abs: {trivial: true}}})`],seealso:[`simplify`,`evaluate`]},rationalize:{name:`rationalize`,category:`Algebra`,syntax:[`rationalize(expr)`,`rationalize(expr, scope)`,`rationalize(expr, scope, detailed)`],description:`Transform a rationalizable expression in a rational fraction. If rational fraction is one variable polynomial then converts the numerator and denominator in canonical form, with decreasing exponents, returning the coefficients of numerator.`,examples:[`rationalize("2x/y - y/(x+1)")`,`rationalize("2x/y - y/(x+1)", true)`],seealso:[`simplify`]},slu:{name:`slu`,category:`Algebra`,syntax:[`slu(A, order, threshold)`],description:`Calculate the Matrix LU decomposition with full pivoting. Matrix A is decomposed in two matrices (L, U) and two permutation vectors (pinv, q) where P * A * Q = L * U`,examples:[`slu(sparse([4.5, 0, 3.2, 0; 3.1, 2.9, 0, 0.9; 0, 1.7, 3, 0; 3.5, 0.4, 0, 1]), 1, 0.001)`],seealso:[`lusolve`,`lsolve`,`usolve`,`matrix`,`sparse`,`lup`,`qr`]},usolve:{name:`usolve`,category:`Algebra`,syntax:[`x=usolve(U, b)`],description:`Finds one solution of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.`,examples:[`x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])`],seealso:[`usolveAll`,`lup`,`lusolve`,`lsolve`,`matrix`,`sparse`]},usolveAll:{name:`usolveAll`,category:`Algebra`,syntax:[`x=usolve(U, b)`],description:`Finds all solutions of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.`,examples:[`x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])`],seealso:[`usolve`,`lup`,`lusolve`,`lsolve`,`matrix`,`sparse`]},qr:{name:`qr`,category:`Algebra`,syntax:[`qr(A)`],description:"Calculates the Matrix QR decomposition. Matrix `A` is decomposed in two matrices (`Q`, `R`) where `Q` is an orthogonal matrix and `R` is an upper triangular matrix.",examples:[`qr([[1, -1, 4], [1, 4, -2], [1, 4, 2], [1, -1, 0]])`],seealso:[`lup`,`slu`,`matrix`]},abs:{name:`abs`,category:`Arithmetic`,syntax:[`abs(x)`],description:`Compute the absolute value.`,examples:[`abs(3.5)`,`abs(-4.2)`],seealso:[`sign`]},add:{name:`add`,category:`Operators`,syntax:[`x + y`,`add(x, y)`],description:`Add two values.`,examples:[`a = 2.1 + 3.6`,`a - 3.6`,`3 + 2i`,`3 cm + 2 inch`,`"2.3" + "4"`],seealso:[`subtract`]},cbrt:{name:`cbrt`,category:`Arithmetic`,syntax:[`cbrt(x)`,`cbrt(x, allRoots)`],description:"Compute the cubic root value. If x = y * y * y, then y is the cubic root of x. When `x` is a number or complex number, an optional second argument `allRoots` can be provided to return all three cubic roots. If not provided, the principal root is returned",examples:[`cbrt(64)`,`cube(4)`,`cbrt(-8)`,`cbrt(2 + 3i)`,`cbrt(8i)`,`cbrt(8i, true)`,`cbrt(27 m^3)`],seealso:[`square`,`sqrt`,`cube`,`multiply`]},ceil:{name:`ceil`,category:`Arithmetic`,syntax:[`ceil(x)`,`ceil(x, n)`,`ceil(unit, valuelessUnit)`,`ceil(unit, n, valuelessUnit)`],description:`Round a value towards plus infinity. If x is complex, both real and imaginary part are rounded towards plus infinity.`,examples:[`ceil(3.2)`,`ceil(3.8)`,`ceil(-4.2)`,`ceil(3.241cm, cm)`,`ceil(3.241cm, 2, cm)`],seealso:[`floor`,`fix`,`round`]},cube:{name:`cube`,category:`Arithmetic`,syntax:[`cube(x)`],description:`Compute the cube of a value. The cube of x is x * x * x.`,examples:[`cube(2)`,`2^3`,`2 * 2 * 2`],seealso:[`multiply`,`square`,`pow`]},divide:{name:`divide`,category:`Operators`,syntax:[`x / y`,`divide(x, y)`],description:`Divide two values.`,examples:[`a = 2 / 3`,`a * 3`,`4.5 / 2`,`3 + 4 / 2`,`(3 + 4) / 2`,`18 km / 4.5`],seealso:[`multiply`]},dotDivide:{name:`dotDivide`,category:`Operators`,syntax:[`x ./ y`,`dotDivide(x, y)`],description:`Divide two values element wise.`,examples:[`a = [1, 2, 3; 4, 5, 6]`,`b = [2, 1, 1; 3, 2, 5]`,`a ./ b`],seealso:[`multiply`,`dotMultiply`,`divide`]},dotMultiply:{name:`dotMultiply`,category:`Operators`,syntax:[`x .* y`,`dotMultiply(x, y)`],description:`Multiply two values element wise.`,examples:[`a = [1, 2, 3; 4, 5, 6]`,`b = [2, 1, 1; 3, 2, 5]`,`a .* b`],seealso:[`multiply`,`divide`,`dotDivide`]},dotPow:{name:`dotPow`,category:`Operators`,syntax:[`x .^ y`,`dotPow(x, y)`],description:`Calculates the power of x to y element wise.`,examples:[`a = [1, 2, 3; 4, 5, 6]`,`a .^ 2`],seealso:[`pow`]},exp:{name:`exp`,category:`Arithmetic`,syntax:[`exp(x)`],description:`Calculate the exponent of a value.`,examples:[`exp(1.3)`,`e ^ 1.3`,`log(exp(1.3))`,`x = 2.4`,`(exp(i*x) == cos(x) + i*sin(x)) # Euler's formula`],seealso:[`expm`,`expm1`,`pow`,`log`]},expm:{name:`expm`,category:`Arithmetic`,syntax:[`exp(x)`],description:`Compute the matrix exponential, expm(A) = e^A. The matrix must be square. Not to be confused with exp(a), which performs element-wise exponentiation.`,examples:[`expm([[0,2],[0,0]])`],seealso:[`exp`]},expm1:{name:`expm1`,category:`Arithmetic`,syntax:[`expm1(x)`],description:`Calculate the value of subtracting 1 from the exponential value.`,examples:[`expm1(2)`,`pow(e, 2) - 1`,`log(expm1(2) + 1)`],seealso:[`exp`,`pow`,`log`]},fix:{name:`fix`,category:`Arithmetic`,syntax:[`fix(x)`,`fix(x, n)`,`fix(unit, valuelessUnit)`,`fix(unit, n, valuelessUnit)`],description:`Round a value towards zero. If x is complex, both real and imaginary part are rounded towards zero.`,examples:[`fix(3.2)`,`fix(3.8)`,`fix(-4.2)`,`fix(-4.8)`,`fix(3.241cm, cm)`,`fix(3.241cm, 2, cm)`],seealso:[`ceil`,`floor`,`round`]},floor:{name:`floor`,category:`Arithmetic`,syntax:[`floor(x)`,`floor(x, n)`,`floor(unit, valuelessUnit)`,`floor(unit, n, valuelessUnit)`],description:`Round a value towards minus infinity.If x is complex, both real and imaginary part are rounded towards minus infinity.`,examples:[`floor(3.2)`,`floor(3.8)`,`floor(-4.2)`,`floor(3.241cm, cm)`,`floor(3.241cm, 2, cm)`],seealso:[`ceil`,`fix`,`round`]},gcd:{name:`gcd`,category:`Arithmetic`,syntax:[`gcd(a, b)`,`gcd(a, b, c, ...)`],description:`Compute the greatest common divisor.`,examples:[`gcd(8, 12)`,`gcd(-4, 6)`,`gcd(25, 15, -10)`],seealso:[`lcm`,`xgcd`]},hypot:{name:`hypot`,category:`Arithmetic`,syntax:[`hypot(a, b, c, ...)`,`hypot([a, b, c, ...])`],description:`Calculate the hypotenuse of a list with values.`,examples:[`hypot(3, 4)`,`sqrt(3^2 + 4^2)`,`hypot(-2)`,`hypot([3, 4, 5])`],seealso:[`abs`,`norm`]},lcm:{name:`lcm`,category:`Arithmetic`,syntax:[`lcm(x, y)`],description:`Compute the least common multiple.`,examples:[`lcm(4, 6)`,`lcm(6, 21)`,`lcm(6, 21, 5)`],seealso:[`gcd`]},log:{name:`log`,category:`Arithmetic`,syntax:[`log(x)`,`log(x, base)`],description:`Compute the logarithm of a value. If no base is provided, the natural logarithm of x is calculated. If base if provided, the logarithm is calculated for the specified base. log(x, base) is defined as log(x) / log(base).`,examples:[`log(3.5)`,`a = log(2.4)`,`exp(a)`,`10 ^ 4`,`log(10000, 10)`,`log(10000) / log(10)`,`b = log(1024, 2)`,`2 ^ b`],seealso:[`exp`,`log1p`,`log2`,`log10`]},log2:{name:`log2`,category:`Arithmetic`,syntax:[`log2(x)`],description:"Calculate the 2-base of a value. This is the same as calculating `log(x, 2)`.",examples:[`log2(0.03125)`,`log2(16)`,`log2(16) / log2(2)`,`pow(2, 4)`],seealso:[`exp`,`log1p`,`log`,`log10`]},log1p:{name:`log1p`,category:`Arithmetic`,syntax:[`log1p(x)`,`log1p(x, base)`],description:"Calculate the logarithm of a `value+1`",examples:[`log1p(2.5)`,`exp(log1p(1.4))`,`pow(10, 4)`,`log1p(9999, 10)`,`log1p(9999) / log(10)`],seealso:[`exp`,`log`,`log2`,`log10`]},log10:{name:`log10`,category:`Arithmetic`,syntax:[`log10(x)`],description:`Compute the 10-base logarithm of a value.`,examples:[`log10(0.00001)`,`log10(10000)`,`10 ^ 4`,`log(10000) / log(10)`,`log(10000, 10)`],seealso:[`exp`,`log`]},mod:{name:`mod`,category:`Operators`,syntax:[`x % y`,`x mod y`,`mod(x, y)`],description:`Calculates the modulus, the remainder of an integer division.`,examples:[`7 % 3`,`11 % 2`,`10 mod 4`,`isOdd(x) = x % 2`,`isOdd(2)`,`isOdd(3)`],seealso:[`divide`]},multiply:{name:`multiply`,category:`Operators`,syntax:[`x * y`,`multiply(x, y)`],description:`multiply two values.`,examples:[`a = 2.1 * 3.4`,`a / 3.4`,`2 * 3 + 4`,`2 * (3 + 4)`,`3 * 2.1 km`],seealso:[`divide`]},norm:{name:`norm`,category:`Arithmetic`,syntax:[`norm(x)`,`norm(x, p)`],description:`Calculate the norm of a number, vector or matrix.`,examples:[`abs(-3.5)`,`norm(-3.5)`,`norm(3 - 4i)`,`norm([1, 2, -3], Infinity)`,`norm([1, 2, -3], -Infinity)`,`norm([3, 4], 2)`,`norm([[1, 2], [3, 4]], 1)`,`norm([[1, 2], [3, 4]], "inf")`,`norm([[1, 2], [3, 4]], "fro")`]},nthRoot:{name:`nthRoot`,category:`Arithmetic`,syntax:[`nthRoot(a)`,`nthRoot(a, root)`],description:`Calculate the nth root of a value. The principal nth root of a positive real number A, is the positive real solution of the equation "x^root = A".`,examples:[`4 ^ 3`,`nthRoot(64, 3)`,`nthRoot(9, 2)`,`sqrt(9)`],seealso:[`nthRoots`,`pow`,`sqrt`]},nthRoots:{name:`nthRoots`,category:`Arithmetic`,syntax:[`nthRoots(A)`,`nthRoots(A, root)`],description:`Calculate the nth roots of a value. An nth root of a positive real number A, is a positive real solution of the equation "x^root = A". This function returns an array of complex values.`,examples:[`nthRoots(1)`,`nthRoots(1, 3)`],seealso:[`sqrt`,`pow`,`nthRoot`]},pow:{name:`pow`,category:`Operators`,syntax:[`x ^ y`,`pow(x, y)`],description:`Calculates the power of x to y, x^y.`,examples:[`2^3`,`2*2*2`,`1 + e ^ (pi * i)`,`pow([[1, 2], [4, 3]], 2)`,`pow([[1, 2], [4, 3]], -1)`],seealso:[`multiply`,`nthRoot`,`nthRoots`,`sqrt`]},round:{name:`round`,category:`Arithmetic`,syntax:[`round(x)`,`round(x, n)`,`round(unit, valuelessUnit)`,`round(unit, n, valuelessUnit)`],description:`round a value towards the nearest integer.If x is complex, both real and imaginary part are rounded towards the nearest integer. When n is specified, the value is rounded to n decimals.`,examples:[`round(3.2)`,`round(3.8)`,`round(-4.2)`,`round(-4.8)`,`round(pi, 3)`,`round(123.45678, 2)`,`round(3.241cm, 2, cm)`,`round([3.2, 3.8, -4.7])`],seealso:[`ceil`,`floor`,`fix`]},sign:{name:`sign`,category:`Arithmetic`,syntax:[`sign(x)`],description:`Compute the sign of a value. The sign of a value x is 1 when x>0, -1 when x<0, and 0 when x=0.`,examples:[`sign(3.5)`,`sign(-4.2)`,`sign(0)`],seealso:[`abs`]},sqrt:{name:`sqrt`,category:`Arithmetic`,syntax:[`sqrt(x)`],description:`Compute the square root value. If x = y * y, then y is the square root of x.`,examples:[`sqrt(25)`,`5 * 5`,`sqrt(-1)`],seealso:[`square`,`sqrtm`,`multiply`,`nthRoot`,`nthRoots`,`pow`]},sqrtm:{name:`sqrtm`,category:`Arithmetic`,syntax:[`sqrtm(x)`],description:"Calculate the principal square root of a square matrix. The principal square root matrix `X` of another matrix `A` is such that `X * X = A`.",examples:[`sqrtm([[33, 24], [48, 57]])`],seealso:[`sqrt`,`abs`,`square`,`multiply`]},square:{name:`square`,category:`Arithmetic`,syntax:[`square(x)`],description:`Compute the square of a value. The square of x is x * x.`,examples:[`square(3)`,`sqrt(9)`,`3^2`,`3 * 3`],seealso:[`multiply`,`pow`,`sqrt`,`cube`]},subtract:{name:`subtract`,category:`Operators`,syntax:[`x - y`,`subtract(x, y)`],description:`subtract two values.`,examples:[`a = 5.3 - 2`,`a + 2`,`2/3 - 1/6`,`2 * 3 - 3`,`2.1 km - 500m`],seealso:[`add`]},unaryMinus:{name:`unaryMinus`,category:`Operators`,syntax:[`-x`,`unaryMinus(x)`],description:`Inverse the sign of a value. Converts booleans and strings to numbers.`,examples:[`-4.5`,`-(-5.6)`,`-"22"`],seealso:[`add`,`subtract`,`unaryPlus`]},unaryPlus:{name:`unaryPlus`,category:`Operators`,syntax:[`+x`,`unaryPlus(x)`],description:`Converts booleans and strings to numbers.`,examples:[`+true`,`+"2"`],seealso:[`add`,`subtract`,`unaryMinus`]},xgcd:{name:`xgcd`,category:`Arithmetic`,syntax:[`xgcd(a, b)`],description:`Calculate the extended greatest common divisor for two values. The result is an array [d, x, y] with 3 entries, where d is the greatest common divisor, and d = x * a + y * b.`,examples:[`xgcd(8, 12)`,`gcd(8, 12)`,`xgcd(36163, 21199)`],seealso:[`gcd`,`lcm`]},invmod:{name:`invmod`,category:`Arithmetic`,syntax:[`invmod(a, b)`],description:`Calculate the (modular) multiplicative inverse of a modulo b. Solution to the equation ax ≣ 1 (mod b)`,examples:[`invmod(8, 12)`,`invmod(7, 13)`,`invmod(15151, 15122)`],seealso:[`gcd`,`xgcd`]},num:{name:`num`,category:`Fraction`,syntax:[`num(x)`],description:`Get the numerator of a fraction.`,examples:[`num(fraction(2, 3))`,`num(fraction(5, 8))`],seealso:[`den`,`fraction`]},den:{name:`den`,category:`Fraction`,syntax:[`den(x)`],description:`Get the denominator of a fraction.`,examples:[`den(fraction(2, 3))`,`den(fraction(5, 8))`],seealso:[`num`,`fraction`]},bitAnd:{name:`bitAnd`,category:`Bitwise`,syntax:[`x & y`,`bitAnd(x, y)`],description:`Bitwise AND operation. Performs the logical AND operation on each pair of the corresponding bits of the two given values by multiplying them. If both bits in the compared position are 1, the bit in the resulting binary representation is 1, otherwise, the result is 0`,examples:[`5 & 3`,`bitAnd(53, 131)`,`[1, 12, 31] & 42`],seealso:[`bitNot`,`bitOr`,`bitXor`,`leftShift`,`rightArithShift`,`rightLogShift`]},bitNot:{name:`bitNot`,category:`Bitwise`,syntax:[`~x`,`bitNot(x)`],description:`Bitwise NOT operation. Performs a logical negation on each bit of the given value. Bits that are 0 become 1, and those that are 1 become 0.`,examples:[`~1`,`~2`,`bitNot([2, -3, 4])`],seealso:[`bitAnd`,`bitOr`,`bitXor`,`leftShift`,`rightArithShift`,`rightLogShift`]},bitOr:{name:`bitOr`,category:`Bitwise`,syntax:[`x | y`,`bitOr(x, y)`],description:`Bitwise OR operation. Performs the logical inclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if the first bit is 1 or the second bit is 1 or both bits are 1, otherwise, the result is 0.`,examples:[`5 | 3`,`bitOr([1, 2, 3], 4)`],seealso:[`bitAnd`,`bitNot`,`bitXor`,`leftShift`,`rightArithShift`,`rightLogShift`]},bitXor:{name:`bitXor`,category:`Bitwise`,syntax:[`bitXor(x, y)`],description:`Bitwise XOR operation, exclusive OR. Performs the logical exclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if only the first bit is 1 or only the second bit is 1, but will be 0 if both are 0 or both are 1.`,examples:[`bitOr(1, 2)`,`bitXor([2, 3, 4], 4)`],seealso:[`bitAnd`,`bitNot`,`bitOr`,`leftShift`,`rightArithShift`,`rightLogShift`]},leftShift:{name:`leftShift`,category:`Bitwise`,syntax:[`x << y`,`leftShift(x, y)`],description:`Bitwise left logical shift of a value x by y number of bits.`,examples:[`4 << 1`,`8 >> 1`],seealso:[`bitAnd`,`bitNot`,`bitOr`,`bitXor`,`rightArithShift`,`rightLogShift`]},rightArithShift:{name:`rightArithShift`,category:`Bitwise`,syntax:[`x >> y`,`rightArithShift(x, y)`],description:`Bitwise right arithmetic shift of a value x by y number of bits.`,examples:[`8 >> 1`,`4 << 1`,`-12 >> 2`],seealso:[`bitAnd`,`bitNot`,`bitOr`,`bitXor`,`leftShift`,`rightLogShift`]},rightLogShift:{name:`rightLogShift`,category:`Bitwise`,syntax:[`x >>> y`,`rightLogShift(x, y)`],description:`Bitwise right logical shift of a value x by y number of bits.`,examples:[`8 >>> 1`,`4 << 1`,`-12 >>> 2`],seealso:[`bitAnd`,`bitNot`,`bitOr`,`bitXor`,`leftShift`,`rightArithShift`]},bellNumbers:{name:`bellNumbers`,category:`Combinatorics`,syntax:[`bellNumbers(n)`],description:"The Bell Numbers count the number of partitions of a set. A partition is a pairwise disjoint subset of S whose union is S. `bellNumbers` only takes integer arguments. The following condition must be enforced: n >= 0.",examples:[`bellNumbers(3)`,`bellNumbers(8)`],seealso:[`stirlingS2`]},catalan:{name:`catalan`,category:`Combinatorics`,syntax:[`catalan(n)`],description:`The Catalan Numbers enumerate combinatorial structures of many different types. catalan only takes integer arguments. The following condition must be enforced: n >= 0.`,examples:[`catalan(3)`,`catalan(8)`],seealso:[`bellNumbers`]},composition:{name:`composition`,category:`Combinatorics`,syntax:[`composition(n, k)`],description:`The composition counts of n into k parts. composition only takes integer arguments. The following condition must be enforced: k <= n.`,examples:[`composition(5, 3)`],seealso:[`combinations`]},stirlingS2:{name:`stirlingS2`,category:`Combinatorics`,syntax:[`stirlingS2(n, k)`],description:"The Stirling numbers of the second kind, counts the number of ways to partition a set of n labelled objects into k nonempty unlabelled subsets. `stirlingS2` only takes integer arguments. The following condition must be enforced: k <= n. If n = k or k = 1, then s(n,k) = 1.",examples:[`stirlingS2(5, 3)`],seealso:[`bellNumbers`,`bernoulli`]},config:{name:`config`,category:`Core`,syntax:[`config()`,`config(options)`],description:`Get configuration or change configuration.`,examples:[`config()`,`1/3 + 1/4`,`config({number: "Fraction"})`,`1/3 + 1/4`],seealso:[]},import:{name:`import`,category:`Core`,syntax:[`import(functions)`,`import(functions, options)`],description:`Import functions or constants from an object.`,examples:[`import({myFn: f(x)=x^2, myConstant: 32 })`,`myFn(2)`,`myConstant`],seealso:[]},typed:{name:`typed`,category:`Core`,syntax:[`typed(signatures)`,`typed(name, signatures)`],description:`Create a typed function.`,examples:[`double = typed({ "number": f(x)=x+x, "string": f(x)=concat(x,x) })`,`double(2)`,`double("hello")`],seealso:[]},arg:{name:`arg`,category:`Complex`,syntax:[`arg(x)`],description:`Compute the argument of a complex value. If x = a+bi, the argument is computed as atan2(b, a).`,examples:[`arg(2 + 2i)`,`atan2(3, 2)`,`arg(2 + 3i)`],seealso:[`re`,`im`,`conj`,`abs`]},conj:{name:`conj`,category:`Complex`,syntax:[`conj(x)`],description:`Compute the complex conjugate of a complex value. If x = a+bi, the complex conjugate is a-bi.`,examples:[`conj(2 + 3i)`,`conj(2 - 3i)`,`conj(-5.2i)`],seealso:[`re`,`im`,`abs`,`arg`]},re:{name:`re`,category:`Complex`,syntax:[`re(x)`],description:`Get the real part of a complex number.`,examples:[`re(2 + 3i)`,`im(2 + 3i)`,`re(-5.2i)`,`re(2.4)`],seealso:[`im`,`conj`,`abs`,`arg`]},im:{name:`im`,category:`Complex`,syntax:[`im(x)`],description:`Get the imaginary part of a complex number.`,examples:[`im(2 + 3i)`,`re(2 + 3i)`,`im(-5.2i)`,`im(2.4)`],seealso:[`re`,`conj`,`abs`,`arg`]},evaluate:{name:`evaluate`,category:`Expression`,syntax:[`evaluate(expression)`,`evaluate(expression, scope)`,`evaluate([expr1, expr2, expr3, ...])`,`evaluate([expr1, expr2, expr3, ...], scope)`],description:`Evaluate an expression or an array with expressions.`,examples:[`evaluate("2 + 3")`,`evaluate("sqrt(16)")`,`evaluate("2 inch to cm")`,`evaluate("sin(x * pi)", { "x": 1/2 })`,`evaluate(["width=2", "height=4","width*height"])`],seealso:[`parser`,`parse`,`compile`]},help:{name:`help`,category:`Expression`,syntax:[`help(object)`,`help(string)`],description:`Display documentation on a function or data type.`,examples:[`help(sqrt)`,`help("complex")`],seealso:[]},parse:{name:`parse`,category:`Expression`,syntax:[`parse(expr)`,`parse(expr, options)`,`parse([expr1, expr2, expr3, ...])`,`parse([expr1, expr2, expr3, ...], options)`],description:`Parse an expression. Returns a node tree, which can be evaluated by invoking node.evaluate() or transformed into a functional object via node.compile().`,examples:[`node1 = parse("sqrt(3^2 + 4^2)")`,`node1.evaluate()`,`code1 = node1.compile()`,`code1.evaluate()`,`scope = {a: 3, b: 4}`,`node2 = parse("a * b")`,`node2.evaluate(scope)`,`code2 = node2.compile()`,`code2.evaluate(scope)`],seealso:[`parser`,`evaluate`,`compile`]},parser:{name:`parser`,category:`Expression`,syntax:[`parser()`],description:`Create a parser object that keeps a context of variables and their values, allowing the evaluation of expressions in that context.`,examples:[`myParser = parser()`,`myParser.evaluate("sqrt(3^2 + 4^2)")`,`myParser.set("x", 3)`,`myParser.evaluate("y = x + 3")`,`myParser.evaluate(["y = x + 3", "y = y + 1"])`,`myParser.get("y")`],seealso:[`evaluate`,`parse`,`compile`]},compile:{name:`compile`,category:`Expression`,syntax:[`compile(expr) `,`compile([expr1, expr2, expr3, ...])`],description:`Parse and compile an expression. Returns a an object with a function evaluate([scope]) to evaluate the compiled expression.`,examples:[`code1 = compile("sqrt(3^2 + 4^2)")`,`code1.evaluate() `,`code2 = compile("a * b")`,`code2.evaluate({a: 3, b: 4})`],seealso:[`parser`,`parse`,`evaluate`]},distance:{name:`distance`,category:`Geometry`,syntax:[`distance([x1, y1], [x2, y2])`,`distance([[x1, y1], [x2, y2]])`],description:`Calculates the Euclidean distance between two points.`,examples:[`distance([0,0], [4,4])`,`distance([[0,0], [4,4]])`],seealso:[]},intersect:{name:`intersect`,category:`Geometry`,syntax:[`intersect(expr1, expr2, expr3, expr4)`,`intersect(expr1, expr2, expr3)`],description:`Computes the intersection point of lines and/or planes.`,examples:[`intersect([0, 0], [10, 10], [10, 0], [0, 10])`,`intersect([1, 0, 1], [4, -2, 2], [1, 1, 1, 6])`],seealso:[]},and:{name:`and`,category:`Logical`,syntax:[`x and y`,`and(x, y)`],description:`Logical and. Test whether two values are both defined with a nonzero/nonempty value.`,examples:[`true and false`,`true and true`,`2 and 4`],seealso:[`not`,`or`,`xor`]},not:{name:`not`,category:`Logical`,syntax:[`not x`,`not(x)`],description:`Logical not. Flips the boolean value of given argument.`,examples:[`not true`,`not false`,`not 2`,`not 0`],seealso:[`and`,`or`,`xor`]},nullish:{name:`nullish`,category:`Logical`,syntax:[`x ?? y`,`nullish(x, y)`],description:`Nullish coalescing operator. Returns the right-hand operand when the left-hand operand is null or undefined, and otherwise returns the left-hand operand.`,examples:[`null ?? 42`,`undefined ?? 42`,`0 ?? 42`,`false ?? 42`,`null ?? undefined ?? 42`],seealso:[`and`,`or`,`not`]},or:{name:`or`,category:`Logical`,syntax:[`x or y`,`or(x, y)`],description:`Logical or. Test if at least one value is defined with a nonzero/nonempty value.`,examples:[`true or false`,`false or false`,`0 or 4`],seealso:[`not`,`and`,`xor`]},xor:{name:`xor`,category:`Logical`,syntax:[`x xor y`,`xor(x, y)`],description:`Logical exclusive or, xor. Test whether one and only one value is defined with a nonzero/nonempty value.`,examples:[`true xor false`,`false xor false`,`true xor true`,`0 xor 4`],seealso:[`not`,`and`,`or`]},mapSlices:{name:`mapSlices`,category:`Matrix`,syntax:[`mapSlices(A, dim, callback)`],description:`Generate a matrix one dimension less than A by applying callback to each slice of A along dimension dim.`,examples:[`A = [[1, 2], [3, 4]]`,`mapSlices(A, 1, sum)`,`mapSlices(A, 2, prod)`],seealso:[`map`,`forEach`]},concat:{name:`concat`,category:`Matrix`,syntax:[`concat(A, B, C, ...)`,`concat(A, B, C, ..., dim)`],description:`Concatenate matrices. By default, the matrices are concatenated by the last dimension. The dimension on which to concatenate can be provided as last argument.`,examples:[`A = [1, 2; 5, 6]`,`B = [3, 4; 7, 8]`,`concat(A, B)`,`concat(A, B, 1)`,`concat(A, B, 2)`],seealso:[`det`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},count:{name:`count`,category:`Matrix`,syntax:[`count(x)`],description:`Count the number of elements of a matrix, array or string.`,examples:[`a = [1, 2; 3, 4; 5, 6]`,`count(a)`,`size(a)`,`count("hello world")`],seealso:[`size`]},cross:{name:`cross`,category:`Matrix`,syntax:[`cross(A, B)`],description:`Calculate the cross product for two vectors in three dimensional space.`,examples:[`cross([1, 1, 0], [0, 1, 1])`,`cross([3, -3, 1], [4, 9, 2])`,`cross([2, 3, 4], [5, 6, 7])`],seealso:[`multiply`,`dot`]},column:{name:`column`,category:`Matrix`,syntax:[`column(x, index)`],description:`Return a column from a matrix or array.`,examples:[`A = [[1, 2], [3, 4]]`,`column(A, 1)`,`column(A, 2)`],seealso:[`row`,`matrixFromColumns`]},ctranspose:{name:`ctranspose`,category:`Matrix`,syntax:[`x'`,`ctranspose(x)`],description:`Complex Conjugate and Transpose a matrix`,examples:[`a = [1, 2, 3; 4, 5, 6]`,`a'`,`ctranspose(a)`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`zeros`]},det:{name:`det`,category:`Matrix`,syntax:[`det(x)`],description:`Calculate the determinant of a matrix`,examples:[`det([1, 2; 3, 4])`,`det([-2, 2, 3; -1, 1, 3; 2, 0, -1])`],seealso:[`concat`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},diag:{name:`diag`,category:`Matrix`,syntax:[`diag(x)`,`diag(x, k)`],description:`Create a diagonal matrix or retrieve the diagonal of a matrix. When x is a vector, a matrix with the vector values on the diagonal will be returned. When x is a matrix, a vector with the diagonal values of the matrix is returned. When k is provided, the k-th diagonal will be filled in or retrieved, if k is positive, the values are placed on the super diagonal. When k is negative, the values are placed on the sub diagonal.`,examples:[`diag(1:3)`,`diag(1:3, 1)`,`a = [1, 2, 3; 4, 5, 6; 7, 8, 9]`,`diag(a)`],seealso:[`concat`,`det`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},diff:{name:`diff`,category:`Matrix`,syntax:[`diff(arr)`,`diff(arr, dim)`],description:[`Create a new matrix or array with the difference of the passed matrix or array.`,`Dim parameter is optional and used to indicate the dimension of the array/matrix to apply the difference`,`If no dimension parameter is passed it is assumed as dimension 0`,`Dimension is zero-based in javascript and one-based in the parser`,`Arrays must be 'rectangular' meaning arrays like [1, 2]`,`If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays`],examples:[`A = [1, 2, 4, 7, 0]`,`diff(A)`,`diff(A, 1)`,`B = [[1, 2], [3, 4]]`,`diff(B)`,`diff(B, 1)`,`diff(B, 2)`,`diff(B, bignumber(2))`,`diff([[1, 2], matrix([3, 4])], 2)`],seealso:[`subtract`,`partitionSelect`]},dot:{name:`dot`,category:`Matrix`,syntax:[`dot(A, B)`,`A * B`],description:`Calculate the dot product of two vectors. The dot product of A = [a1, a2, a3, ..., an] and B = [b1, b2, b3, ..., bn] is defined as dot(A, B) = a1 * b1 + a2 * b2 + a3 * b3 + ... + an * bn`,examples:[`dot([2, 4, 1], [2, 2, 3])`,`[2, 4, 1] * [2, 2, 3]`],seealso:[`multiply`,`cross`]},getMatrixDataType:{name:`getMatrixDataType`,category:`Matrix`,syntax:[`getMatrixDataType(x)`],description:`Find the data type of all elements in a matrix or array, for example "number" if all items are a number and "Complex" if all values are complex numbers. If a matrix contains more than one data type, it will return "mixed".`,examples:[`getMatrixDataType([1, 2, 3])`,`getMatrixDataType([[5 cm], [2 inch]])`,`getMatrixDataType([1, "text"])`,`getMatrixDataType([1, bignumber(4)])`],seealso:[`matrix`,`sparse`,`typeOf`]},identity:{name:`identity`,category:`Matrix`,syntax:[`identity(n)`,`identity(m, n)`,`identity([m, n])`],description:`Returns the identity matrix with size m-by-n. The matrix has ones on the diagonal and zeros elsewhere.`,examples:[`identity(3)`,`identity(3, 5)`,`a = [1, 2, 3; 4, 5, 6]`,`identity(size(a))`],seealso:[`concat`,`det`,`diag`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},filter:{name:`filter`,category:`Matrix`,syntax:[`filter(x, test)`],description:`Filter items in a matrix.`,examples:[`isPositive(x) = x > 0`,`filter([6, -2, -1, 4, 3], isPositive)`,`filter([6, -2, 0, 1, 0], x != 0)`],seealso:[`sort`,`map`,`forEach`]},flatten:{name:`flatten`,category:`Matrix`,syntax:[`flatten(x)`],description:`Flatten a multi dimensional matrix into a single dimensional matrix.`,examples:[`a = [1, 2, 3; 4, 5, 6]`,`size(a)`,`b = flatten(a)`,`size(b)`],seealso:[`concat`,`resize`,`size`,`squeeze`]},forEach:{name:`forEach`,category:`Matrix`,syntax:[`forEach(x, callback)`],description:`Iterates over all elements of a matrix/array, and executes the given callback function.`,examples:[`numberOfPets = {}`,`addPet(n) = numberOfPets[n] = (numberOfPets[n] ? numberOfPets[n]:0 ) + 1;`,`forEach(["Dog","Cat","Cat"], addPet)`,`numberOfPets`],seealso:[`map`,`sort`,`filter`]},inv:{name:`inv`,category:`Matrix`,syntax:[`inv(x)`],description:`Calculate the inverse of a matrix`,examples:[`inv([1, 2; 3, 4])`,`inv(4)`,`1 / 4`],seealso:[`concat`,`det`,`diag`,`identity`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},pinv:{name:`pinv`,category:`Matrix`,syntax:[`pinv(x)`],description:`Calculate the Moore–Penrose inverse of a matrix`,examples:[`pinv([1, 2; 3, 4])`,`pinv([[1, 0], [0, 1], [0, 1]])`,`pinv(4)`],seealso:[`inv`]},eigs:{name:`eigs`,category:`Matrix`,syntax:[`eigs(x)`],description:`Calculate the eigenvalues and optionally eigenvectors of a square matrix`,examples:[`eigs([[5, 2.3], [2.3, 1]])`,`eigs([[1, 2, 3], [4, 5, 6], [7, 8, 9]], { precision: 1e-6, eigenvectors: false })`],seealso:[`inv`]},kron:{name:`kron`,category:`Matrix`,syntax:[`kron(x, y)`],description:`Calculates the Kronecker product of 2 matrices or vectors.`,examples:[`kron([[1, 0], [0, 1]], [[1, 2], [3, 4]])`,`kron([1,1], [2,3,4])`],seealso:[`multiply`,`dot`,`cross`]},matrixFromFunction:{name:`matrixFromFunction`,category:`Matrix`,syntax:[`matrixFromFunction(size, fn)`,`matrixFromFunction(size, fn, format)`,`matrixFromFunction(size, fn, format, datatype)`,`matrixFromFunction(size, format, fn)`,`matrixFromFunction(size, format, datatype, fn)`],description:`Create a matrix by evaluating a generating function at each index.`,examples:[`f(I) = I[1] - I[2]`,`matrixFromFunction([3,3], f)`,`g(I) = I[1] - I[2] == 1 ? 4 : 0`,`matrixFromFunction([100, 100], "sparse", g)`,`matrixFromFunction([5], random)`],seealso:[`matrix`,`matrixFromRows`,`matrixFromColumns`,`zeros`]},matrixFromRows:{name:`matrixFromRows`,category:`Matrix`,syntax:[`matrixFromRows(...arr)`,`matrixFromRows(row1, row2)`,`matrixFromRows(row1, row2, row3)`],description:`Create a dense matrix from vectors as individual rows.`,examples:[`matrixFromRows([1, 2, 3], [[4],[5],[6]])`],seealso:[`matrix`,`matrixFromColumns`,`matrixFromFunction`,`zeros`]},matrixFromColumns:{name:`matrixFromColumns`,category:`Matrix`,syntax:[`matrixFromColumns(...arr)`,`matrixFromColumns(row1, row2)`,`matrixFromColumns(row1, row2, row3)`],description:`Create a dense matrix from vectors as individual columns.`,examples:[`matrixFromColumns([1, 2, 3], [[4],[5],[6]])`],seealso:[`matrix`,`matrixFromRows`,`matrixFromFunction`,`zeros`]},map:{name:`map`,category:`Matrix`,syntax:[`map(x, callback)`,`map(x, y, ..., callback)`],description:`Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array or the matrices/arrays.`,examples:[`map([1, 2, 3], square)`,`map([1, 2], [3, 4], f(a,b) = a + b)`],seealso:[`filter`,`forEach`]},ones:{name:`ones`,category:`Matrix`,syntax:[`ones(m)`,`ones(m, n)`,`ones(m, n, p, ...)`,`ones([m])`,`ones([m, n])`,`ones([m, n, p, ...])`],description:`Create a matrix containing ones.`,examples:[`ones(3)`,`ones(3, 5)`,`ones([2,3]) * 4.5`,`a = [1, 2, 3; 4, 5, 6]`,`ones(size(a))`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`range`,`size`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},partitionSelect:{name:`partitionSelect`,category:`Matrix`,syntax:[`partitionSelect(x, k)`,`partitionSelect(x, k, compare)`],description:`Partition-based selection of an array or 1D matrix. Will find the kth smallest value, and mutates the input array. Uses Quickselect.`,examples:[`partitionSelect([5, 10, 1], 2)`,`partitionSelect(["C", "B", "A", "D"], 1, compareText)`,`arr = [5, 2, 1]`,`partitionSelect(arr, 0) # returns 1, arr is now: [1, 2, 5]`,`arr`,`partitionSelect(arr, 1, 'desc') # returns 2, arr is now: [5, 2, 1]`,`arr`],seealso:[`sort`]},range:{name:`range`,category:`Type`,syntax:[`start:end`,`start:step:end`,`range(start, end)`,`range(start, end, step)`,`range(string)`],description:`Create a range. Lower bound of the range is included, upper bound is excluded.`,examples:[`1:5`,`3:-1:-3`,`range(3, 7)`,`range(0, 12, 2)`,`range("4:10")`,`range(1m, 1m, 3m)`,`a = [1, 2, 3, 4; 5, 6, 7, 8]`,`a[1:2, 1:2]`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`ones`,`size`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},resize:{name:`resize`,category:`Matrix`,syntax:[`resize(x, size)`,`resize(x, size, defaultValue)`],description:`Resize a matrix.`,examples:[`resize([1,2,3,4,5], [3])`,`resize([1,2,3], [5])`,`resize([1,2,3], [5], -1)`,`resize(2, [2, 3])`,`resize("hello", [8], "!")`],seealso:[`size`,`subset`,`squeeze`,`reshape`]},reshape:{name:`reshape`,category:`Matrix`,syntax:[`reshape(x, sizes)`],description:`Reshape a multi dimensional array to fit the specified dimensions.`,examples:[`reshape([1, 2, 3, 4, 5, 6], [2, 3])`,`reshape([[1, 2], [3, 4]], [1, 4])`,`reshape([[1, 2], [3, 4]], [4])`,`reshape([1, 2, 3, 4], [-1, 2])`],seealso:[`size`,`squeeze`,`resize`]},rotate:{name:`rotate`,category:`Matrix`,syntax:[`rotate(w, theta)`,`rotate(w, theta, v)`],description:`Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.`,examples:[`rotate([1, 0], pi / 2)`,`rotate(matrix([1, 0]), unit("35deg"))`,`rotate([1, 0, 0], unit("90deg"), [0, 0, 1])`,`rotate(matrix([1, 0, 0]), unit("90deg"), matrix([0, 0, 1]))`],seealso:[`matrix`,`rotationMatrix`]},rotationMatrix:{name:`rotationMatrix`,category:`Matrix`,syntax:[`rotationMatrix(theta)`,`rotationMatrix(theta, v)`,`rotationMatrix(theta, v, format)`],description:`Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.`,examples:[`rotationMatrix(pi / 2)`,`rotationMatrix(unit("45deg"), [0, 0, 1])`,`rotationMatrix(1, matrix([0, 0, 1]), "sparse")`],seealso:[`cos`,`sin`]},row:{name:`row`,category:`Matrix`,syntax:[`row(x, index)`],description:`Return a row from a matrix or array.`,examples:[`A = [[1, 2], [3, 4]]`,`row(A, 1)`,`row(A, 2)`],seealso:[`column`,`matrixFromRows`]},size:{name:`size`,category:`Matrix`,syntax:[`size(x)`],description:`Calculate the size of a matrix.`,examples:[`size(2.3)`,`size("hello world")`,`a = [1, 2; 3, 4; 5, 6]`,`size(a)`,`size(1:6)`],seealso:[`concat`,`count`,`det`,`diag`,`identity`,`inv`,`ones`,`range`,`squeeze`,`subset`,`trace`,`transpose`,`zeros`]},sort:{name:`sort`,category:`Matrix`,syntax:[`sort(x)`,`sort(x, compare)`],description:`Sort the items in a matrix. Compare can be a string "asc", "desc", "natural", or a custom sort function.`,examples:[`sort([5, 10, 1])`,`sort(["C", "B", "A", "D"], "natural")`,`sortByLength(a, b) = size(a)[1] - size(b)[1]`,`sort(["Langdon", "Tom", "Sara"], sortByLength)`,`sort(["10", "1", "2"], "natural")`],seealso:[`map`,`filter`,`forEach`]},squeeze:{name:`squeeze`,category:`Matrix`,syntax:[`squeeze(x)`],description:`Remove inner and outer singleton dimensions from a matrix.`,examples:[`a = zeros(3,2,1)`,`size(squeeze(a))`,`b = zeros(1,1,3)`,`size(squeeze(b))`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`subset`,`trace`,`transpose`,`zeros`]},subset:{name:`subset`,category:`Matrix`,syntax:[`value(index)`,`value(index) = replacement`,`subset(value, [index])`,`subset(value, [index], replacement)`],description:"Get or set a subset of the entries of a matrix or characters of a string. Indexes are one-based. There should be one index specification for each dimension of the target. Each specification can be a single index, a list of indices, or a range in colon notation `l:u`. In a range, both the lower bound l and upper bound u are included; and if a bound is omitted it defaults to the most extreme valid value. The cartesian product of the indices specified in each dimension determines the target of the operation.",examples:[`d = [1, 2; 3, 4]`,`e = []`,`e[1, 1:2] = [5, 6]`,`e[2, :] = [7, 8]`,`f = d * e`,`f[2, 1]`,`f[:, 1]`,`f[[1,2], [1,3]] = [9, 10; 11, 12]`,`f`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`trace`,`transpose`,`zeros`]},trace:{name:`trace`,category:`Matrix`,syntax:[`trace(A)`],description:`Calculate the trace of a matrix: the sum of the elements on the main diagonal of a square matrix.`,examples:[`A = [1, 2, 3; -1, 2, 3; 2, 0, 3]`,`trace(A)`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`transpose`,`zeros`]},transpose:{name:`transpose`,category:`Matrix`,syntax:[`x'`,`transpose(x)`],description:`Transpose a matrix`,examples:[`a = [1, 2, 3; 4, 5, 6]`,`a'`,`transpose(a)`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`zeros`]},zeros:{name:`zeros`,category:`Matrix`,syntax:[`zeros(m)`,`zeros(m, n)`,`zeros(m, n, p, ...)`,`zeros([m])`,`zeros([m, n])`,`zeros([m, n, p, ...])`],description:`Create a matrix containing zeros.`,examples:[`zeros(3)`,`zeros(3, 5)`,`a = [1, 2, 3; 4, 5, 6]`,`zeros(size(a))`],seealso:[`concat`,`det`,`diag`,`identity`,`inv`,`ones`,`range`,`size`,`squeeze`,`subset`,`trace`,`transpose`]},fft:{name:`fft`,category:`Matrix`,syntax:[`fft(x)`],description:`Calculate N-dimensional Fourier transform`,examples:[`fft([[1, 0], [1, 0]])`],seealso:[`ifft`]},ifft:{name:`ifft`,category:`Matrix`,syntax:[`ifft(x)`],description:`Calculate N-dimensional inverse Fourier transform`,examples:[`ifft([[2, 2], [0, 0]])`],seealso:[`fft`]},sylvester:{name:`sylvester`,category:`Algebra`,syntax:[`sylvester(A,B,C)`],description:`Solves the real-valued Sylvester equation AX+XB=C for X`,examples:[`sylvester([[-1, -2], [1, 1]], [[-2, 1], [-1, 2]], [[-3, 2], [3, 0]])`,`A = [[-1, -2], [1, 1]]; B = [[2, -1], [1, -2]]; C = [[-3, 2], [3, 0]]`,`sylvester(A, B, C)`],seealso:[`schur`,`lyap`]},schur:{name:`schur`,category:`Algebra`,syntax:[`schur(A)`],description:`Performs a real Schur decomposition of the real matrix A = UTU'`,examples:[`schur([[1, 0], [-4, 3]])`,`A = [[1, 0], [-4, 3]]`,`schur(A)`],seealso:[`lyap`,`sylvester`]},lyap:{name:`lyap`,category:`Algebra`,syntax:[`lyap(A,Q)`],description:`Solves the Continuous-time Lyapunov equation AP+PA'+Q=0 for P`,examples:[`lyap([[-2, 0], [1, -4]], [[3, 1], [1, 3]])`,`A = [[-2, 0], [1, -4]]`,`Q = [[3, 1], [1, 3]]`,`lyap(A,Q)`],seealso:[`schur`,`sylvester`]},solveODE:{name:`solveODE`,category:`Numeric`,syntax:[`solveODE(func, tspan, y0)`,`solveODE(func, tspan, y0, options)`],description:`Numerical Integration of Ordinary Differential Equations.`,examples:[`f(t,y) = y`,`tspan = [0, 4]`,`solveODE(f, tspan, 1)`,`solveODE(f, tspan, [1, 2])`,`solveODE(f, tspan, 1, { method:"RK23", maxStep:0.1 })`],seealso:[`derivative`,`simplifyCore`]},bernoulli:{name:`bernoulli`,category:`Probability`,syntax:[`bernoulli(n)`],description:`The nth Bernoulli number`,examples:[`bernoulli(4)`,`bernoulli(fraction(12))`],seealso:[`combinations`,`gamma`,`stirlingS2`]},combinations:{name:`combinations`,category:`Probability`,syntax:[`combinations(n, k)`],description:`Compute the number of combinations of n items taken k at a time`,examples:[`combinations(7, 5)`],seealso:[`combinationsWithRep`,`permutations`,`factorial`]},combinationsWithRep:{name:`combinationsWithRep`,category:`Probability`,syntax:[`combinationsWithRep(n, k)`],description:`Compute the number of combinations of n items taken k at a time with replacements.`,examples:[`combinationsWithRep(7, 5)`],seealso:[`combinations`,`permutations`,`factorial`]},factorial:{name:`factorial`,category:`Probability`,syntax:[`n!`,`factorial(n)`],description:`Compute the factorial of a value`,examples:[`5!`,`5 * 4 * 3 * 2 * 1`,`3!`],seealso:[`combinations`,`combinationsWithRep`,`permutations`,`gamma`]},gamma:{name:`gamma`,category:`Probability`,syntax:[`gamma(n)`],description:`Compute the gamma function. For small values, the Lanczos approximation is used, and for large values the extended Stirling approximation.`,examples:[`gamma(4)`,`3!`,`gamma(1/2)`,`sqrt(pi)`],seealso:[`factorial`]},kldivergence:{name:`kldivergence`,category:`Probability`,syntax:[`kldivergence(x, y)`],description:`Calculate the Kullback-Leibler (KL) divergence between two distributions.`,examples:[`kldivergence([0.7,0.5,0.4], [0.2,0.9,0.5])`],seealso:[]},lgamma:{name:`lgamma`,category:`Probability`,syntax:[`lgamma(n)`],description:`Logarithm of the gamma function for real, positive numbers and complex numbers, using Lanczos approximation for numbers and Stirling series for complex numbers.`,examples:[`lgamma(4)`,`lgamma(1/2)`,`lgamma(i)`,`lgamma(complex(1.1, 2))`],seealso:[`gamma`]},multinomial:{name:`multinomial`,category:`Probability`,syntax:[`multinomial(A)`],description:"Multinomial Coefficients compute the number of ways of picking a1, a2, ..., ai unordered outcomes from `n` possibilities. multinomial takes one array of integers as an argument. The following condition must be enforced: every ai > 0.",examples:[`multinomial([1, 2, 1])`],seealso:[`combinations`,`factorial`]},permutations:{name:`permutations`,category:`Probability`,syntax:[`permutations(n)`,`permutations(n, k)`],description:`Compute the number of permutations of n items taken k at a time`,examples:[`permutations(5)`,`permutations(5, 3)`],seealso:[`combinations`,`combinationsWithRep`,`factorial`]},pickRandom:{name:`pickRandom`,category:`Probability`,syntax:[`pickRandom(array)`,`pickRandom(array, number)`,`pickRandom(array, weights)`,`pickRandom(array, number, weights)`,`pickRandom(array, weights, number)`],description:`Pick a random entry from a given array.`,examples:[`pickRandom(0:10)`,`pickRandom([1, 3, 1, 6])`,`pickRandom([1, 3, 1, 6], 2)`,`pickRandom([1, 3, 1, 6], [2, 3, 2, 1])`,`pickRandom([1, 3, 1, 6], 2, [2, 3, 2, 1])`,`pickRandom([1, 3, 1, 6], [2, 3, 2, 1], 2)`],seealso:[`random`,`randomInt`]},random:{name:`random`,category:`Probability`,syntax:[`random()`,`random(max)`,`random(min, max)`,`random(size)`,`random(size, max)`,`random(size, min, max)`],description:`Return a random number.`,examples:[`random()`,`random(10, 20)`,`random([2, 3])`],seealso:[`pickRandom`,`randomInt`]},randomInt:{name:`randomInt`,category:`Probability`,syntax:[`randomInt(max)`,`randomInt(min, max)`,`randomInt(size)`,`randomInt(size, max)`,`randomInt(size, min, max)`],description:`Return a random integer number`,examples:[`randomInt(10, 20)`,`randomInt([2, 3], 10)`],seealso:[`pickRandom`,`random`]},compare:{name:`compare`,category:`Relational`,syntax:[`compare(x, y)`],description:`Compare two values. Returns 1 when x > y, -1 when x < y, and 0 when x == y.`,examples:[`compare(2, 3)`,`compare(3, 2)`,`compare(2, 2)`,`compare(5cm, 40mm)`,`compare(2, [1, 2, 3])`],seealso:[`equal`,`unequal`,`smaller`,`smallerEq`,`largerEq`,`compareNatural`,`compareText`]},compareNatural:{name:`compareNatural`,category:`Relational`,syntax:[`compareNatural(x, y)`],description:`Compare two values of any type in a deterministic, natural way. Returns 1 when x > y, -1 when x < y, and 0 when x == y.`,examples:[`compareNatural(2, 3)`,`compareNatural(3, 2)`,`compareNatural(2, 2)`,`compareNatural(5cm, 40mm)`,`compareNatural("2", "10")`,`compareNatural(2 + 3i, 2 + 4i)`,`compareNatural([1, 2, 4], [1, 2, 3])`,`compareNatural([1, 5], [1, 2, 3])`,`compareNatural([1, 2], [1, 2])`,`compareNatural({a: 2}, {a: 4})`],seealso:[`equal`,`unequal`,`smaller`,`smallerEq`,`largerEq`,`compare`,`compareText`]},compareText:{name:`compareText`,category:`Relational`,syntax:[`compareText(x, y)`],description:`Compare two strings lexically. Comparison is case sensitive. Returns 1 when x > y, -1 when x < y, and 0 when x == y.`,examples:[`compareText("B", "A")`,`compareText("A", "B")`,`compareText("A", "A")`,`compareText("2", "10")`,`compare("2", "10")`,`compare(2, 10)`,`compareNatural("2", "10")`,`compareText("B", ["A", "B", "C"])`],seealso:[`compare`,`compareNatural`]},deepEqual:{name:`deepEqual`,category:`Relational`,syntax:[`deepEqual(x, y)`],description:`Check equality of two matrices element wise. Returns true if the size of both matrices is equal and when and each of the elements are equal.`,examples:[`deepEqual([1,3,4], [1,3,4])`,`deepEqual([1,3,4], [1,3])`],seealso:[`equal`,`unequal`,`smaller`,`larger`,`smallerEq`,`largerEq`,`compare`]},equal:{name:`equal`,category:`Relational`,syntax:[`x == y`,`equal(x, y)`],description:`Check equality of two values. Returns true if the values are equal, and false if not.`,examples:[`2+2 == 3`,`2+2 == 4`,`a = 3.2`,`b = 6-2.8`,`a == b`,`50cm == 0.5m`],seealso:[`unequal`,`smaller`,`larger`,`smallerEq`,`largerEq`,`compare`,`deepEqual`,`equalText`]},equalText:{name:`equalText`,category:`Relational`,syntax:[`equalText(x, y)`],description:`Check equality of two strings. Comparison is case sensitive. Returns true if the values are equal, and false if not.`,examples:[`equalText("Hello", "Hello")`,`equalText("a", "A")`,`equal("2e3", "2000")`,`equalText("2e3", "2000")`,`equalText("B", ["A", "B", "C"])`],seealso:[`compare`,`compareNatural`,`compareText`,`equal`]},larger:{name:`larger`,category:`Relational`,syntax:[`x > y`,`larger(x, y)`],description:`Check if value x is larger than y. Returns true if x is larger than y, and false if not. Comparing a value with NaN returns false.`,examples:[`2 > 3`,`5 > 2*2`,`a = 3.3`,`b = 6-2.8`,`(a > b)`,`(b < a)`,`5 cm > 2 inch`],seealso:[`equal`,`unequal`,`smaller`,`smallerEq`,`largerEq`,`compare`]},largerEq:{name:`largerEq`,category:`Relational`,syntax:[`x >= y`,`largerEq(x, y)`],description:`Check if value x is larger or equal to y. Returns true if x is larger or equal to y, and false if not.`,examples:[`2 >= 1+1`,`2 > 1+1`,`a = 3.2`,`b = 6-2.8`,`(a >= b)`],seealso:[`equal`,`unequal`,`smallerEq`,`smaller`,`compare`]},smaller:{name:`smaller`,category:`Relational`,syntax:[`x < y`,`smaller(x, y)`],description:`Check if value x is smaller than value y. Returns true if x is smaller than y, and false if not. Comparing a value with NaN returns false.`,examples:[`2 < 3`,`5 < 2*2`,`a = 3.3`,`b = 6-2.8`,`(a < b)`,`5 cm < 2 inch`],seealso:[`equal`,`unequal`,`larger`,`smallerEq`,`largerEq`,`compare`]},smallerEq:{name:`smallerEq`,category:`Relational`,syntax:[`x <= y`,`smallerEq(x, y)`],description:`Check if value x is smaller or equal to value y. Returns true if x is smaller than y, and false if not.`,examples:[`2 <= 1+1`,`2 < 1+1`,`a = 3.2`,`b = 6-2.8`,`(a <= b)`],seealso:[`equal`,`unequal`,`larger`,`smaller`,`largerEq`,`compare`]},unequal:{name:`unequal`,category:`Relational`,syntax:[`x != y`,`unequal(x, y)`],description:`Check unequality of two values. Returns true if the values are unequal, and false if they are equal.`,examples:[`2+2 != 3`,`2+2 != 4`,`a = 3.2`,`b = 6-2.8`,`a != b`,`50cm != 0.5m`,`5 cm != 2 inch`],seealso:[`equal`,`smaller`,`larger`,`smallerEq`,`largerEq`,`compare`,`deepEqual`]},setCartesian:{name:`setCartesian`,category:`Set`,syntax:[`setCartesian(set1, set2)`],description:`Create the cartesian product of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays and the values will be sorted in ascending order before the operation.`,examples:[`setCartesian([1, 2], [3, 4])`],seealso:[`setUnion`,`setIntersect`,`setDifference`,`setPowerset`]},setDifference:{name:`setDifference`,category:`Set`,syntax:[`setDifference(set1, set2)`],description:`Create the difference of two (multi)sets: every element of set1, that is not the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.`,examples:[`setDifference([1, 2, 3, 4], [3, 4, 5, 6])`,`setDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])`],seealso:[`setUnion`,`setIntersect`,`setSymDifference`]},setDistinct:{name:`setDistinct`,category:`Set`,syntax:[`setDistinct(set)`],description:`Collect the distinct elements of a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.`,examples:[`setDistinct([1, 1, 1, 2, 2, 3])`],seealso:[`setMultiplicity`]},setIntersect:{name:`setIntersect`,category:`Set`,syntax:[`setIntersect(set1, set2)`],description:`Create the intersection of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.`,examples:[`setIntersect([1, 2, 3, 4], [3, 4, 5, 6])`,`setIntersect([[1, 2], [3, 4]], [[3, 4], [5, 6]])`],seealso:[`setUnion`,`setDifference`]},setIsSubset:{name:`setIsSubset`,category:`Set`,syntax:[`setIsSubset(set1, set2)`],description:`Check whether a (multi)set is a subset of another (multi)set: every element of set1 is the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.`,examples:[`setIsSubset([1, 2], [3, 4, 5, 6])`,`setIsSubset([3, 4], [3, 4, 5, 6])`],seealso:[`setUnion`,`setIntersect`,`setDifference`]},setMultiplicity:{name:`setMultiplicity`,category:`Set`,syntax:[`setMultiplicity(element, set)`],description:`Count the multiplicity of an element in a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.`,examples:[`setMultiplicity(1, [1, 2, 2, 4])`,`setMultiplicity(2, [1, 2, 2, 4])`],seealso:[`setDistinct`,`setSize`]},setPowerset:{name:`setPowerset`,category:`Set`,syntax:[`setPowerset(set)`],description:`Create the powerset of a (multi)set: the powerset contains very possible subsets of a (multi)set. A multi-dimension array will be converted to a single-dimension array before the operation.`,examples:[`setPowerset([1, 2, 3])`],seealso:[`setCartesian`]},setSize:{name:`setSize`,category:`Set`,syntax:[`setSize(set)`,`setSize(set, unique)`],description:`Count the number of elements of a (multi)set. When the second parameter "unique" is true, count only the unique values. A multi-dimension array will be converted to a single-dimension array before the operation.`,examples:[`setSize([1, 2, 2, 4])`,`setSize([1, 2, 2, 4], true)`],seealso:[`setUnion`,`setIntersect`,`setDifference`]},setSymDifference:{name:`setSymDifference`,category:`Set`,syntax:[`setSymDifference(set1, set2)`],description:`Create the symmetric difference of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.`,examples:[`setSymDifference([1, 2, 3, 4], [3, 4, 5, 6])`,`setSymDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])`],seealso:[`setUnion`,`setIntersect`,`setDifference`]},setUnion:{name:`setUnion`,category:`Set`,syntax:[`setUnion(set1, set2)`],description:`Create the union of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.`,examples:[`setUnion([1, 2, 3, 4], [3, 4, 5, 6])`,`setUnion([[1, 2], [3, 4]], [[3, 4], [5, 6]])`],seealso:[`setIntersect`,`setDifference`]},zpk2tf:{name:`zpk2tf`,category:`Signal`,syntax:[`zpk2tf(z, p, k)`],description:`Compute the transfer function of a zero-pole-gain model.`,examples:[`zpk2tf([1, 2], [-1, -2], 1)`,`zpk2tf([1, 2], [-1, -2])`,`zpk2tf([1 - 3i, 2 + 2i], [-1, -2])`],seealso:[]},freqz:{name:`freqz`,category:`Signal`,syntax:[`freqz(b, a)`,`freqz(b, a, w)`],description:`Calculates the frequency response of a filter given its numerator and denominator coefficients.`,examples:[`freqz([1, 2], [1, 2, 3])`,`freqz([1, 2], [1, 2, 3], [0, 1])`,`freqz([1, 2], [1, 2, 3], 512)`],seealso:[]},erf:{name:`erf`,category:`Special`,syntax:[`erf(x)`],description:`Compute the erf function of a value using a rational Chebyshev approximations for different intervals of x`,examples:[`erf(0.2)`,`erf(-0.5)`,`erf(4)`],seealso:[]},zeta:{name:`zeta`,category:`Special`,syntax:[`zeta(s)`],description:`Compute the Riemann Zeta Function using an infinite series and Riemann's Functional Equation for the entire complex plane`,examples:[`zeta(0.2)`,`zeta(-0.5)`,`zeta(4)`],seealso:[]},cumsum:{name:`cumsum`,category:`Statistics`,syntax:[`cumsum(a, b, c, ...)`,`cumsum(A)`],description:`Compute the cumulative sum of all values.`,examples:[`cumsum(2, 3, 4, 1)`,`cumsum([2, 3, 4, 1])`,`cumsum([1, 2; 3, 4])`,`cumsum([1, 2; 3, 4], 1)`,`cumsum([1, 2; 3, 4], 2)`],seealso:[`max`,`mean`,`median`,`min`,`prod`,`std`,`sum`,`variance`]},mad:{name:`mad`,category:`Statistics`,syntax:[`mad(a, b, c, ...)`,`mad(A)`],description:`Compute the median absolute deviation of a matrix or a list with values. The median absolute deviation is defined as the median of the absolute deviations from the median.`,examples:[`mad(10, 20, 30)`,`mad([1, 2, 3])`],seealso:[`mean`,`median`,`std`,`abs`]},max:{name:`max`,category:`Statistics`,syntax:[`max(a, b, c, ...)`,`max(A)`,`max(A, dimension)`],description:`Compute the maximum value of a list of values. If any NaN values are found, the function yields the last NaN in the input.`,examples:[`max(2, 3, 4, 1)`,`max([2, 3, 4, 1])`,`max([2, 5; 4, 3])`,`max([2, 5; 4, 3], 1)`,`max([2, 5; 4, 3], 2)`,`max(2.7, 7.1, -4.5, 2.0, 4.1)`,`min(2.7, 7.1, -4.5, 2.0, 4.1)`],seealso:[`mean`,`median`,`min`,`prod`,`std`,`sum`,`variance`]},mean:{name:`mean`,category:`Statistics`,syntax:[`mean(a, b, c, ...)`,`mean(A)`,`mean(A, dimension)`],description:`Compute the arithmetic mean of a list of values.`,examples:[`mean(2, 3, 4, 1)`,`mean([2, 3, 4, 1])`,`mean([2, 5; 4, 3])`,`mean([2, 5; 4, 3], 1)`,`mean([2, 5; 4, 3], 2)`,`mean([1.0, 2.7, 3.2, 4.0])`],seealso:[`max`,`median`,`min`,`prod`,`std`,`sum`,`variance`]},median:{name:`median`,category:`Statistics`,syntax:[`median(a, b, c, ...)`,`median(A)`],description:`Compute the median of all values. The values are sorted and the middle value is returned. In case of an even number of values, the average of the two middle values is returned.`,examples:[`median(5, 2, 7)`,`median([3, -1, 5, 7])`],seealso:[`max`,`mean`,`min`,`prod`,`std`,`sum`,`variance`,`quantileSeq`]},min:{name:`min`,category:`Statistics`,syntax:[`min(a, b, c, ...)`,`min(A)`,`min(A, dimension)`],description:`Compute the minimum value of a list of values. If any NaN values are found, the function yields the last NaN in the input.`,examples:[`min(2, 3, 4, 1)`,`min([2, 3, 4, 1])`,`min([2, 5; 4, 3])`,`min([2, 5; 4, 3], 1)`,`min([2, 5; 4, 3], 2)`,`min(2.7, 7.1, -4.5, 2.0, 4.1)`,`max(2.7, 7.1, -4.5, 2.0, 4.1)`],seealso:[`max`,`mean`,`median`,`prod`,`std`,`sum`,`variance`]},mode:{name:`mode`,category:`Statistics`,syntax:[`mode(a, b, c, ...)`,`mode(A)`,`mode(A, a, b, B, c, ...)`],description:`Computes the mode of all values as an array. In case mode being more than one, multiple values are returned in an array.`,examples:[`mode(2, 1, 4, 3, 1)`,`mode([1, 2.7, 3.2, 4, 2.7])`,`mode(1, 4, 6, 1, 6)`],seealso:[`max`,`mean`,`min`,`median`,`prod`,`std`,`sum`,`variance`]},prod:{name:`prod`,category:`Statistics`,syntax:[`prod(a, b, c, ...)`,`prod(A)`],description:`Compute the product of all values.`,examples:[`prod(2, 3, 4)`,`prod([2, 3, 4])`,`prod([2, 5; 4, 3])`],seealso:[`max`,`mean`,`min`,`median`,`min`,`std`,`sum`,`variance`]},quantileSeq:{name:`quantileSeq`,category:`Statistics`,syntax:[`quantileSeq(A, prob[, sorted])`,`quantileSeq(A, [prob1, prob2, ...][, sorted])`,`quantileSeq(A, N[, sorted])`],description:`Compute the prob order quantile of a matrix or a list with values. The sequence is sorted and the middle value is returned. Supported types of sequence values are: Number, BigNumber, Unit Supported types of probability are: Number, BigNumber. -In case of a (multi dimensional) array or matrix, the prob order quantile of all elements will be calculated.`,examples:["quantileSeq([3, -1, 5, 7], 0.5)","quantileSeq([3, -1, 5, 7], [1/3, 2/3])","quantileSeq([3, -1, 5, 7], 2)","quantileSeq([-1, 3, 5, 7], 0.5, true)"],seealso:["mean","median","min","max","prod","std","sum","variance"]};var s6={name:"std",category:"Statistics",syntax:["std(a, b, c, ...)","std(A)","std(A, dimension)","std(A, normalization)","std(A, dimension, normalization)"],description:'Compute the standard deviation of all values, defined as std(A) = sqrt(variance(A)). Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["std(2, 4, 6)","std([2, 4, 6, 8])",'std([2, 4, 6, 8], "uncorrected")','std([2, 4, 6, 8], "biased")',"std([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","prod","sum","variance"]};var u6={name:"cumsum",category:"Statistics",syntax:["cumsum(a, b, c, ...)","cumsum(A)"],description:"Compute the cumulative sum of all values.",examples:["cumsum(2, 3, 4, 1)","cumsum([2, 3, 4, 1])","cumsum([1, 2; 3, 4])","cumsum([1, 2; 3, 4], 1)","cumsum([1, 2; 3, 4], 2)"],seealso:["max","mean","median","min","prod","std","sum","variance"]};var l6={name:"sum",category:"Statistics",syntax:["sum(a, b, c, ...)","sum(A)","sum(A, dimension)"],description:"Compute the sum of all values.",examples:["sum(2, 3, 4, 1)","sum([2, 3, 4, 1])","sum([2, 5; 4, 3])"],seealso:["max","mean","median","min","prod","std","variance"]};var c6={name:"variance",category:"Statistics",syntax:["variance(a, b, c, ...)","variance(A)","variance(A, dimension)","variance(A, normalization)","variance(A, dimension, normalization)"],description:'Compute the variance of all values. Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["variance(2, 4, 6)","variance([2, 4, 6, 8])",'variance([2, 4, 6, 8], "uncorrected")','variance([2, 4, 6, 8], "biased")',"variance([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","min","prod","std","sum"]};var f6={name:"corr",category:"Statistics",syntax:["corr(A,B)"],description:"Compute the correlation coefficient of a two list with values, For matrices, the matrix correlation coefficient is calculated.",examples:["corr([2, 4, 6, 8],[1, 2, 3, 6])","corr(matrix([[1, 2.2, 3, 4.8, 5], [1, 2, 3, 4, 5]]), matrix([[4, 5.3, 6.6, 7, 8], [1, 2, 3, 4, 5]]))"],seealso:["max","mean","min","median","min","prod","std","sum"]};var p6={name:"acos",category:"Trigonometry",syntax:["acos(x)"],description:"Compute the inverse cosine of a value in radians.",examples:["acos(0.5)","acos(cos(2.3))"],seealso:["cos","atan","asin"]};var m6={name:"acosh",category:"Trigonometry",syntax:["acosh(x)"],description:"Calculate the hyperbolic arccos of a value, defined as `acosh(x) = ln(sqrt(x^2 - 1) + x)`.",examples:["acosh(1.5)"],seealso:["cosh","asinh","atanh"]};var d6={name:"acot",category:"Trigonometry",syntax:["acot(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acot(0.5)","acot(cot(0.5))","acot(2)"],seealso:["cot","atan"]};var h6={name:"acoth",category:"Trigonometry",syntax:["acoth(x)"],description:"Calculate the inverse hyperbolic tangent of a value, defined as `acoth(x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.",examples:["acoth(2)","acoth(0.5)"],seealso:["acsch","asech"]};var g6={name:"acsc",category:"Trigonometry",syntax:["acsc(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acsc(2)","acsc(csc(0.5))","acsc(0.5)"],seealso:["csc","asin","asec"]};var v6={name:"acsch",category:"Trigonometry",syntax:["acsch(x)"],description:"Calculate the inverse hyperbolic cosecant of a value, defined as `acsch(x) = ln(1/x + sqrt(1/x^2 + 1))`.",examples:["acsch(0.5)"],seealso:["asech","acoth"]};var y6={name:"asec",category:"Trigonometry",syntax:["asec(x)"],description:"Calculate the inverse secant of a value.",examples:["asec(0.5)","asec(sec(0.5))","asec(2)"],seealso:["acos","acot","acsc"]};var b6={name:"asech",category:"Trigonometry",syntax:["asech(x)"],description:"Calculate the inverse secant of a value.",examples:["asech(0.5)"],seealso:["acsch","acoth"]};var x6={name:"asin",category:"Trigonometry",syntax:["asin(x)"],description:"Compute the inverse sine of a value in radians.",examples:["asin(0.5)","asin(sin(0.5))"],seealso:["sin","acos","atan"]};var _6={name:"asinh",category:"Trigonometry",syntax:["asinh(x)"],description:"Calculate the hyperbolic arcsine of a value, defined as `asinh(x) = ln(x + sqrt(x^2 + 1))`.",examples:["asinh(0.5)"],seealso:["acosh","atanh"]};var w6={name:"atan",category:"Trigonometry",syntax:["atan(x)"],description:"Compute the inverse tangent of a value in radians.",examples:["atan(0.5)","atan(tan(0.5))"],seealso:["tan","acos","asin"]};var S6={name:"atan2",category:"Trigonometry",syntax:["atan2(y, x)"],description:"Computes the principal value of the arc tangent of y/x in radians.",examples:["atan2(2, 2) / pi","angle = 60 deg in rad","x = cos(angle)","y = sin(angle)","atan2(y, x)"],seealso:["sin","cos","tan"]};var D6={name:"atanh",category:"Trigonometry",syntax:["atanh(x)"],description:"Calculate the hyperbolic arctangent of a value, defined as `atanh(x) = ln((1 + x)/(1 - x)) / 2`.",examples:["atanh(0.5)"],seealso:["acosh","asinh"]};var E6={name:"cos",category:"Trigonometry",syntax:["cos(x)"],description:"Compute the cosine of x in radians.",examples:["cos(2)","cos(pi / 4) ^ 2","cos(180 deg)","cos(60 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["acos","sin","tan"]};var A6={name:"cosh",category:"Trigonometry",syntax:["cosh(x)"],description:"Compute the hyperbolic cosine of x in radians.",examples:["cosh(0.5)"],seealso:["sinh","tanh","coth"]};var T6={name:"cot",category:"Trigonometry",syntax:["cot(x)"],description:"Compute the cotangent of x in radians. Defined as 1/tan(x)",examples:["cot(2)","1 / tan(2)"],seealso:["sec","csc","tan"]};var N6={name:"coth",category:"Trigonometry",syntax:["coth(x)"],description:"Compute the hyperbolic cotangent of x in radians.",examples:["coth(2)","1 / tanh(2)"],seealso:["sech","csch","tanh"]};var M6={name:"csc",category:"Trigonometry",syntax:["csc(x)"],description:"Compute the cosecant of x in radians. Defined as 1/sin(x)",examples:["csc(2)","1 / sin(2)"],seealso:["sec","cot","sin"]};var C6={name:"csch",category:"Trigonometry",syntax:["csch(x)"],description:"Compute the hyperbolic cosecant of x in radians. Defined as 1/sinh(x)",examples:["csch(2)","1 / sinh(2)"],seealso:["sech","coth","sinh"]};var $6={name:"sec",category:"Trigonometry",syntax:["sec(x)"],description:"Compute the secant of x in radians. Defined as 1/cos(x)",examples:["sec(2)","1 / cos(2)"],seealso:["cot","csc","cos"]};var I6={name:"sech",category:"Trigonometry",syntax:["sech(x)"],description:"Compute the hyperbolic secant of x in radians. Defined as 1/cosh(x)",examples:["sech(2)","1 / cosh(2)"],seealso:["coth","csch","cosh"]};var F6={name:"sin",category:"Trigonometry",syntax:["sin(x)"],description:"Compute the sine of x in radians.",examples:["sin(2)","sin(pi / 4) ^ 2","sin(90 deg)","sin(30 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["asin","cos","tan"]};var k6={name:"sinh",category:"Trigonometry",syntax:["sinh(x)"],description:"Compute the hyperbolic sine of x in radians.",examples:["sinh(0.5)"],seealso:["cosh","tanh"]};var P6={name:"tan",category:"Trigonometry",syntax:["tan(x)"],description:"Compute the tangent of x in radians.",examples:["tan(0.5)","sin(0.5) / cos(0.5)","tan(pi / 4)","tan(45 deg)"],seealso:["atan","sin","cos"]};var B6={name:"tanh",category:"Trigonometry",syntax:["tanh(x)"],description:"Compute the hyperbolic tangent of x in radians.",examples:["tanh(0.5)","sinh(0.5) / cosh(0.5)"],seealso:["sinh","cosh"]};var O6={name:"to",category:"Units",syntax:["x to unit","to(x, unit)"],description:"Change the unit of a value.",examples:["5 inch to cm","3.2kg to g","16 bytes in bits"],seealso:[]};var R6={name:"toBest",category:"Units",syntax:["toBest(x)","toBest(x, unitList)","toBest(x, unitList, options)"],description:"Converts to the most appropriate display unit.",examples:['toBest(unit(5000, "m"))','toBest(unit(3500000, "W"))','toBest(unit(0.000000123, "A"))','toBest(unit(10, "m"), "cm")','toBest(unit(10, "m"), "mm,km", {offset: 1.5})'],seealso:[]};var L6={name:"bin",category:"Utils",syntax:["bin(value)"],description:"Format a number as binary",examples:["bin(2)"],seealso:["oct","hex"]};var U6={name:"clone",category:"Utils",syntax:["clone(x)"],description:"Clone a variable. Creates a copy of primitive variables, and a deep copy of matrices",examples:["clone(3.5)","clone(2 - 4i)","clone(45 deg)","clone([1, 2; 3, 4])",'clone("hello world")'],seealso:[]};var z6={name:"format",category:"Utils",syntax:["format(value)","format(value, precision)"],description:"Format a value of any type as string.",examples:["format(2.3)","format(3 - 4i)","format([])","format(pi, 3)"],seealso:["print"]};var V6={name:"hasNumericValue",category:"Utils",syntax:["hasNumericValue(x)"],description:"Test whether a value is an numeric value. In case of a string, true is returned if the string contains a numeric value.",examples:["hasNumericValue(2)",'hasNumericValue("2")','isNumeric("2")',"hasNumericValue(0)","hasNumericValue(bignumber(500))","hasNumericValue(fraction(0.125))","hasNumericValue(2 + 3i)",'hasNumericValue([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","isNumeric"]};var q6={name:"hex",category:"Utils",syntax:["hex(value)"],description:"Format a number as hexadecimal",examples:["hex(240)"],seealso:["bin","oct"]};var j6={name:"isInteger",category:"Utils",syntax:["isInteger(x)"],description:"Test whether a value is an integer number.",examples:["isInteger(2)","isInteger(3.5)","isInteger([3, 0.5, -2])"],seealso:["isNegative","isNumeric","isPositive","isZero"]};var Z6={name:"isNaN",category:"Utils",syntax:["isNaN(x)"],description:"Test whether a value is NaN (not a number)",examples:["isNaN(2)","isNaN(0 / 0)","isNaN(NaN)","isNaN(Infinity)"],seealso:["isNegative","isNumeric","isPositive","isZero"]};var G6={name:"isNegative",category:"Utils",syntax:["isNegative(x)"],description:"Test whether a value is negative: smaller than zero.",examples:["isNegative(2)","isNegative(0)","isNegative(-4)","isNegative([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isPositive","isZero"]};var W6={name:"isNumeric",category:"Utils",syntax:["isNumeric(x)"],description:"Test whether a value is a numeric value. Returns true when the input is a number, BigNumber, Fraction, or boolean.",examples:["isNumeric(2)",'isNumeric("2")','hasNumericValue("2")',"isNumeric(0)","isNumeric(bignumber(500))","isNumeric(fraction(0.125))","isNumeric(2 + 3i)",'isNumeric([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","hasNumericValue"]};var H6={name:"isPositive",category:"Utils",syntax:["isPositive(x)"],description:"Test whether a value is positive: larger than zero.",examples:["isPositive(2)","isPositive(0)","isPositive(-4)","isPositive([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isNegative","isZero"]};var Y6={name:"isPrime",category:"Utils",syntax:["isPrime(x)"],description:"Test whether a value is prime: has no divisors other than itself and one.",examples:["isPrime(3)","isPrime(-2)","isPrime([2, 17, 100])"],seealso:["isInteger","isNumeric","isNegative","isZero"]};var J6={name:"isZero",category:"Utils",syntax:["isZero(x)"],description:"Test whether a value is zero.",examples:["isZero(2)","isZero(0)","isZero(-4)","isZero([3, 0, -2, 0])"],seealso:["isInteger","isNumeric","isNegative","isPositive"]};var X6={name:"numeric",category:"Utils",syntax:["numeric(x)"],description:"Convert a numeric input to a specific numeric type: number, BigNumber, bigint, or Fraction.",examples:['numeric("4")','numeric("4", "number")','numeric("4", "bigint")','numeric("4", "BigNumber")','numeric("4", "Fraction")','numeric(4, "Fraction")','numeric(fraction(2, 5), "number")'],seealso:["number","bigint","fraction","bignumber","string","format"]};var K6={name:"oct",category:"Utils",syntax:["oct(value)"],description:"Format a number as octal",examples:["oct(56)"],seealso:["bin","hex"]};var Q6={name:"print",category:"Utils",syntax:["print(template, values)","print(template, values, precision)"],description:"Interpolate values into a string template.",examples:['print("Lucy is $age years old", {age: 5})','print("The value of pi is $pi", {pi: pi}, 3)','print("Hello, $user.name!", {user: {name: "John"}})','print("Values: $1, $2, $3", [6, 9, 4])'],seealso:["format"]};var eV={name:"typeOf",category:"Utils",syntax:["typeOf(x)"],description:"Get the type of a variable.",examples:["typeOf(3.5)","typeOf(2 - 4i)","typeOf(45 deg)",'typeOf("hello world")'],seealso:["getMatrixDataType"]};var tV={name:"solveODE",category:"Numeric",syntax:["solveODE(func, tspan, y0)","solveODE(func, tspan, y0, options)"],description:"Numerical Integration of Ordinary Differential Equations.",examples:["f(t,y) = y","tspan = [0, 4]","solveODE(f, tspan, 1)","solveODE(f, tspan, [1, 2])",'solveODE(f, tspan, 1, { method:"RK23", maxStep:0.1 })'],seealso:["derivative","simplifyCore"]};var rV={bignumber:U4,bigint:z4,boolean:V4,complex:q4,createUnit:j4,fraction:Z4,index:G4,matrix:W4,number:H4,sparse:Y4,splitUnit:J4,string:X4,unit:K4,e:YE,E:YE,false:E4,i:A4,Infinity:T4,LN2:M4,LN10:N4,LOG2E:$4,LOG10E:C4,NaN:I4,null:F4,pi:JE,PI:JE,phi:k4,SQRT1_2:P4,SQRT2:B4,tau:O4,true:R4,version:L4,speedOfLight:{description:"Speed of light in vacuum",examples:["speedOfLight"]},gravitationConstant:{description:"Newtonian constant of gravitation",examples:["gravitationConstant"]},planckConstant:{description:"Planck constant",examples:["planckConstant"]},reducedPlanckConstant:{description:"Reduced Planck constant",examples:["reducedPlanckConstant"]},magneticConstant:{description:"Magnetic constant (vacuum permeability)",examples:["magneticConstant"]},electricConstant:{description:"Electric constant (vacuum permeability)",examples:["electricConstant"]},vacuumImpedance:{description:"Characteristic impedance of vacuum",examples:["vacuumImpedance"]},coulomb:{description:"Coulomb's constant. Deprecated in favor of coulombConstant",examples:["coulombConstant"]},coulombConstant:{description:"Coulomb's constant",examples:["coulombConstant"]},elementaryCharge:{description:"Elementary charge",examples:["elementaryCharge"]},bohrMagneton:{description:"Bohr magneton",examples:["bohrMagneton"]},conductanceQuantum:{description:"Conductance quantum",examples:["conductanceQuantum"]},inverseConductanceQuantum:{description:"Inverse conductance quantum",examples:["inverseConductanceQuantum"]},magneticFluxQuantum:{description:"Magnetic flux quantum",examples:["magneticFluxQuantum"]},nuclearMagneton:{description:"Nuclear magneton",examples:["nuclearMagneton"]},klitzing:{description:"Von Klitzing constant",examples:["klitzing"]},bohrRadius:{description:"Bohr radius",examples:["bohrRadius"]},classicalElectronRadius:{description:"Classical electron radius",examples:["classicalElectronRadius"]},electronMass:{description:"Electron mass",examples:["electronMass"]},fermiCoupling:{description:"Fermi coupling constant",examples:["fermiCoupling"]},fineStructure:{description:"Fine-structure constant",examples:["fineStructure"]},hartreeEnergy:{description:"Hartree energy",examples:["hartreeEnergy"]},protonMass:{description:"Proton mass",examples:["protonMass"]},deuteronMass:{description:"Deuteron Mass",examples:["deuteronMass"]},neutronMass:{description:"Neutron mass",examples:["neutronMass"]},quantumOfCirculation:{description:"Quantum of circulation",examples:["quantumOfCirculation"]},rydberg:{description:"Rydberg constant",examples:["rydberg"]},thomsonCrossSection:{description:"Thomson cross section",examples:["thomsonCrossSection"]},weakMixingAngle:{description:"Weak mixing angle",examples:["weakMixingAngle"]},efimovFactor:{description:"Efimov factor",examples:["efimovFactor"]},atomicMass:{description:"Atomic mass constant",examples:["atomicMass"]},avogadro:{description:"Avogadro's number",examples:["avogadro"]},boltzmann:{description:"Boltzmann constant",examples:["boltzmann"]},faraday:{description:"Faraday constant",examples:["faraday"]},firstRadiation:{description:"First radiation constant",examples:["firstRadiation"]},loschmidt:{description:"Loschmidt constant at T=273.15 K and p=101.325 kPa",examples:["loschmidt"]},gasConstant:{description:"Gas constant",examples:["gasConstant"]},molarPlanckConstant:{description:"Molar Planck constant",examples:["molarPlanckConstant"]},molarVolume:{description:"Molar volume of an ideal gas at T=273.15 K and p=101.325 kPa",examples:["molarVolume"]},sackurTetrode:{description:"Sackur-Tetrode constant at T=1 K and p=101.325 kPa",examples:["sackurTetrode"]},secondRadiation:{description:"Second radiation constant",examples:["secondRadiation"]},stefanBoltzmann:{description:"Stefan-Boltzmann constant",examples:["stefanBoltzmann"]},wienDisplacement:{description:"Wien displacement law constant",examples:["wienDisplacement"]},molarMass:{description:"Molar mass constant",examples:["molarMass"]},molarMassC12:{description:"Molar mass constant of carbon-12",examples:["molarMassC12"]},gravity:{description:"Standard acceleration of gravity (standard acceleration of free-fall on Earth)",examples:["gravity"]},planckLength:{description:"Planck length",examples:["planckLength"]},planckMass:{description:"Planck mass",examples:["planckMass"]},planckTime:{description:"Planck time",examples:["planckTime"]},planckCharge:{description:"Planck charge",examples:["planckCharge"]},planckTemperature:{description:"Planck temperature",examples:["planckTemperature"]},derivative:rU,lsolve:iU,lsolveAll:oU,lup:aU,lusolve:sU,leafCount:nU,polynomialRoot:uU,resolve:fU,simplify:pU,simplifyConstant:mU,simplifyCore:dU,symbolicEqual:gU,rationalize:cU,slu:hU,usolve:vU,usolveAll:yU,qr:lU,abs:bU,add:xU,cbrt:_U,ceil:wU,cube:SU,divide:DU,dotDivide:EU,dotMultiply:AU,dotPow:TU,exp:NU,expm:MU,expm1:CU,fix:$U,floor:IU,gcd:FU,hypot:kU,lcm:BU,log:OU,log2:UU,log1p:LU,log10:RU,mod:zU,multiply:VU,norm:qU,nthRoot:jU,nthRoots:ZU,pow:GU,round:WU,sign:HU,sqrt:YU,sqrtm:JU,square:ez,subtract:tz,unaryMinus:rz,unaryPlus:nz,xgcd:iz,invmod:PU,bitAnd:oz,bitNot:az,bitOr:sz,bitXor:uz,leftShift:lz,rightArithShift:cz,rightLogShift:fz,bellNumbers:pz,catalan:mz,composition:dz,stirlingS2:hz,config:Q4,import:eU,typed:tU,arg:gz,conj:vz,re:bz,im:yz,evaluate:xz,help:Dz,parse:wz,parser:_z,compile:Sz,distance:Ez,intersect:Az,and:Tz,not:Nz,or:Mz,xor:Cz,mapSlices:$z,concat:Fz,count:kz,cross:Pz,column:Iz,ctranspose:Bz,det:Oz,diag:Rz,diff:Lz,dot:Uz,getMatrixDataType:Zz,identity:Gz,filter:Vz,flatten:qz,forEach:jz,inv:Wz,pinv:Hz,eigs:zz,kron:Yz,matrixFromFunction:Kz,matrixFromRows:Qz,matrixFromColumns:Xz,map:Jz,ones:e3,partitionSelect:t3,range:r3,resize:i3,reshape:n3,rotate:o3,rotationMatrix:a3,row:s3,size:u3,sort:l3,squeeze:c3,subset:f3,trace:p3,transpose:m3,zeros:d3,fft:h3,ifft:g3,sylvester:XU,schur:KU,lyap:QU,solveODE:tV,combinations:v3,combinationsWithRep:y3,factorial:b3,gamma:x3,kldivergence:w3,lgamma:_3,multinomial:S3,permutations:D3,pickRandom:E3,random:A3,randomInt:T3,compare:N3,compareNatural:M3,compareText:C3,deepEqual:$3,equal:I3,equalText:F3,larger:k3,largerEq:P3,smaller:B3,smallerEq:O3,unequal:R3,setCartesian:L3,setDifference:U3,setDistinct:z3,setIntersect:V3,setIsSubset:q3,setMultiplicity:j3,setPowerset:Z3,setSize:G3,setSymDifference:W3,setUnion:H3,zpk2tf:Y3,freqz:J3,erf:X3,zeta:K3,cumsum:u6,mad:Q3,max:e6,mean:t6,median:r6,min:n6,mode:i6,prod:o6,quantileSeq:a6,std:s6,sum:l6,variance:c6,corr:f6,acos:p6,acosh:m6,acot:d6,acoth:h6,acsc:g6,acsch:v6,asec:y6,asech:b6,asin:x6,asinh:_6,atan:w6,atanh:D6,atan2:S6,cos:E6,cosh:A6,cot:T6,coth:N6,csc:M6,csch:C6,sec:$6,sech:I6,sin:F6,sinh:k6,tan:P6,tanh:B6,to:O6,toBest:R6,clone:U6,format:z6,bin:L6,oct:K6,hex:q6,isNaN:Z6,isInteger:j6,isNegative:G6,isNumeric:W6,hasNumericValue:V6,isPositive:H6,isPrime:Y6,isZero:J6,print:Q6,typeOf:eV,numeric:X6};var nV="help",Qae=["typed","mathWithTransform","Help"],iV=N(nV,Qae,t=>{var{typed:e,mathWithTransform:r,Help:i}=t;return e(nV,{any:function(o){var a,s=o;if(typeof o!="string"){for(a in r)if(rt(r,a)&&o===r[a]){s=a;break}}var l=Yr(rV,s);if(!l){var u=typeof s=="function"?s.name:s;throw new Error('No documentation found on "'+u+'"')}return new i(l)}})});var oV="chain",ese=["typed","Chain"],aV=N(oV,ese,t=>{var{typed:e,Chain:r}=t;return e(oV,{"":function(){return new r},any:function(n){return new r(n)}})});var sV="det",tse=["typed","matrix","subtractScalar","multiply","divideScalar","isZero","unaryMinus"],uV=N(sV,tse,t=>{var{typed:e,matrix:r,subtractScalar:i,multiply:n,divideScalar:o,isZero:a,unaryMinus:s}=t;return e(sV,{any:function(c){return dt(c)},"Array | Matrix":function(c){var f;switch(Je(c)?f=c.size():Array.isArray(c)?(c=r(c),f=c.size()):f=[],f.length){case 0:return dt(c);case 1:if(f[0]===1)return dt(c.valueOf()[0]);if(f[0]===0)return 1;throw new RangeError("Matrix must be square (size: "+Ct(f)+")");case 2:{var m=f[0],p=f[1];if(m===p)return l(c.clone().valueOf(),m,p);if(p===0)return 1;throw new RangeError("Matrix must be square (size: "+Ct(f)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+Ct(f)+")")}}});function l(u,c,f){if(c===1)return dt(u[0][0]);if(c===2)return i(n(u[0][0],u[1][1]),n(u[1][0],u[0][1]));for(var m=!1,p=new Array(c).fill(0).map((E,T)=>T),d=0;d{var{typed:e,matrix:r,divideScalar:i,addScalar:n,multiply:o,unaryMinus:a,det:s,identity:l,abs:u}=t;return e(lV,{"Array | Matrix":function(m){var p=Je(m)?m.size():vt(m);switch(p.length){case 1:if(p[0]===1)return Je(m)?r([i(1,m.valueOf()[0])]):[i(1,m[0])];throw new RangeError("Matrix must be square (size: "+Ct(p)+")");case 2:{var d=p[0],h=p[1];if(d===h)return Je(m)?r(c(m.valueOf(),d,h),m.storage()):c(m,d,h);throw new RangeError("Matrix must be square (size: "+Ct(p)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+Ct(p)+")")}},any:function(m){return i(1,m)}});function c(f,m,p){var d,h,v,y,S;if(m===1){if(y=f[0][0],y===0)throw Error("Cannot calculate inverse, determinant is zero");return[[i(1,y)]]}else if(m===2){var b=s(f);if(b===0)throw Error("Cannot calculate inverse, determinant is zero");return[[i(f[1][1],b),i(a(f[0][1]),b)],[i(a(f[1][0]),b),i(f[0][0],b)]]}else{var _=f.concat();for(d=0;dE&&(E=u(_[d][x]),T=d),d++;if(E===0)throw Error("Cannot calculate inverse, determinant is zero");d=T,d!==x&&(S=_[x],_[x]=_[d],_[d]=S,S=w[x],w[x]=w[d],w[d]=S);var D=_[x],M=w[x];for(d=0;d{var{typed:e,matrix:r,inv:i,deepEqual:n,equal:o,dotDivide:a,dot:s,ctranspose:l,divideScalar:u,multiply:c,add:f,Complex:m}=t;return e(fV,{"Array | Matrix":function(b){var _=Je(b)?b.size():vt(b);switch(_.length){case 1:return y(b)?l(b):_[0]===1?i(b):a(l(b),s(b,b));case 2:{if(y(b))return l(b);var w=_[0],x=_[1];if(w===x)try{return i(b)}catch(E){if(!(E instanceof Error&&E.message.match(/Cannot calculate inverse, determinant is zero/)))throw E}return Je(b)?r(p(b.valueOf(),w,x),b.storage()):p(b,w,x)}default:throw new RangeError("Matrix must be two dimensional (size: "+Ct(_)+")")}},any:function(b){return o(b,0)?dt(b):u(1,b)}});function p(S,b,_){var{C:w,F:x}=h(S,b,_),E=c(i(c(l(w),w)),l(w)),T=c(l(x),i(c(x,l(x))));return c(T,E)}function d(S,b,_){for(var w=dt(S),x=0,E=0;ET.filter((M,C)=>C!v(s(w[D],w[D])));return{C:x,F:E}}function v(S){return o(f(S,m(1,1)),f(0,m(1,1)))}function y(S){return n(f(S,m(1,1)),f(c(S,0),m(1,1)))}});function mV(t){var{addScalar:e,subtract:r,flatten:i,multiply:n,multiplyScalar:o,divideScalar:a,sqrt:s,abs:l,bignumber:u,diag:c,size:f,reshape:m,inv:p,qr:d,usolve:h,usolveAll:v,equal:y,complex:S,larger:b,smaller:_,matrixFromColumns:w,dot:x}=t;function E(B,Z,q,xe){var de=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,be=T(B,Z,q,xe,de);D(B,Z,q,xe,de,be);var{values:G,C:K}=M(B,Z,q,xe,de);if(de){var re=C(B,Z,K,be,G,q,xe);return{values:G,eigenvectors:re}}return{values:G}}function T(B,Z,q,xe,de){var be=xe==="BigNumber",G=xe==="Complex",K=be?u(0):0,re=be?u(1):G?S(1):1,ae=be?u(1):1,le=be?u(10):2,Se=o(le,le),_e;de&&(_e=Array(Z).fill(re));for(var Oe=!1;!Oe;){Oe=!0;for(var st=0;st1&&(Oe=c(Array(le-1).fill(K)))),le-=1,re.pop();for(var ve=0;ve2&&(Oe=c(Array(le-2).fill(K)))),le-=2,re.pop(),re.pop();for(var Ee=0;Ee+r(l(nt),l(ke))),st>100){var Ue=Error("The eigenvalues failed to converge. Only found these eigenvalues: "+ae.join(", "));throw Ue.values=ae,Ue.vectors=[],Ue}var He=de?n(_e,L(Se,Z)):void 0;return{values:ae,C:He}}function C(B,Z,q,xe,de,be,G){var K=p(q),re=n(K,B,q),ae=G==="BigNumber",le=G==="Complex",Se=ae?u(0):le?S(0):0,_e=ae?u(1):le?S(1):1,Oe=[],st=[];for(var yt of de){var Qe=k(Oe,yt,y);Qe===-1?(Oe.push(yt),st.push(1)):st[Qe]+=1}for(var ut=[],H=Oe.length,oe=Array(Z).fill(Se),ve=c(Array(Z).fill(_e)),De=function(){var He=Oe[Ee],nt=r(re,n(He,ve)),ke=v(nt,oe);for(ke.shift();ke.lengthn(me,ce)),ut.push(...ke.map(ce=>({value:He,vector:i(ce)})))},Ee=0;Ee=5)return null;for(K=0;;){var re=h(B,G);if(_(Q(W(G,[re])),xe))break;if(++K>=10)return null;G=ie(re)}return G}function J(B,Z,q){var xe=q==="BigNumber",de=q==="Complex",be=Array(B).fill(0).map(G=>2*Math.random()-1);return xe&&(be=be.map(G=>u(G))),de&&(be=be.map(G=>S(G))),be=W(be,Z),ie(be,q)}function W(B,Z){var q=f(B);for(var xe of Z)xe=m(xe,q),B=r(B,n(a(x(xe,B),x(xe,xe)),xe));return B}function Q(B){return l(s(x(B,B)))}function ie(B,Z){var q=Z==="BigNumber",xe=Z==="Complex",de=q?u(1):xe?S(1):1;return n(a(de,Q(B)),B)}return E}function dV(t){var{config:e,addScalar:r,subtract:i,abs:n,atan:o,cos:a,sin:s,multiplyScalar:l,inv:u,bignumber:c,multiply:f,add:m}=t;function p(D,M){var C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.relTol,$=arguments.length>3?arguments[3]:void 0,O=arguments.length>4?arguments[4]:void 0;if($==="number")return d(D,C,O);if($==="BigNumber")return h(D,C,O);throw TypeError("Unsupported data type: "+$)}function d(D,M,C){var $=D.length,O=Math.abs(M/$),R,L;if(C){L=new Array($);for(var k=0;k<$;k++)L[k]=Array($).fill(0),L[k][k]=1}for(var V=x(D);Math.abs(V[1])>=Math.abs(O);){var J=V[0][0],W=V[0][1];R=v(D[J][J],D[W][W],D[J][W]),D=w(D,R,J,W),C&&(L=S(L,R,J,W)),V=x(D)}for(var Q=Array($).fill(0),ie=0;ie<$;ie++)Q[ie]=D[ie][ie];return T(dt(Q),L,C)}function h(D,M,C){var $=D.length,O=n(M/$),R,L;if(C){L=new Array($);for(var k=0;k<$;k++)L[k]=Array($).fill(0),L[k][k]=1}for(var V=E(D);n(V[1])>=n(O);){var J=V[0][0],W=V[0][1];R=y(D[J][J],D[W][W],D[J][W]),D=_(D,R,J,W),C&&(L=b(L,R,J,W)),V=E(D)}for(var Q=Array($).fill(0),ie=0;ie<$;ie++)Q[ie]=D[ie][ie];return T(dt(Q),L,C)}function v(D,M,C){var $=M-D;return Math.abs($)<=e.relTol?Math.PI/4:.5*Math.atan(2*C/(M-D))}function y(D,M,C){var $=i(M,D);return n($)<=e.relTol?c(-1).acos().div(4):l(.5,o(f(2,C,u($))))}function S(D,M,C,$){for(var O=D.length,R=Math.cos(M),L=Math.sin(M),k=Array(O).fill(0),V=Array(O).fill(0),J=0;J({value:O[Z],vector:B}));return{values:O,eigenvectors:ie}}return p}var ise="eigs",ose=["config","typed","matrix","addScalar","equal","subtract","abs","atan","cos","sin","multiplyScalar","divideScalar","inv","bignumber","multiply","add","larger","column","flatten","number","complex","sqrt","diag","size","reshape","qr","usolve","usolveAll","im","re","smaller","matrixFromColumns","dot"],hV=N(ise,ose,t=>{var{config:e,typed:r,matrix:i,addScalar:n,subtract:o,equal:a,abs:s,atan:l,cos:u,sin:c,multiplyScalar:f,divideScalar:m,inv:p,bignumber:d,multiply:h,add:v,larger:y,column:S,flatten:b,number:_,complex:w,sqrt:x,diag:E,size:T,reshape:D,qr:M,usolve:C,usolveAll:$,im:O,re:R,smaller:L,matrixFromColumns:k,dot:V}=t,J=dV({config:e,addScalar:n,subtract:o,column:S,flatten:b,equal:a,abs:s,atan:l,cos:u,sin:c,multiplyScalar:f,inv:p,bignumber:d,complex:w,multiply:h,add:v}),W=mV({config:e,addScalar:n,subtract:o,multiply:h,multiplyScalar:f,flatten:b,divideScalar:m,sqrt:x,abs:s,bignumber:d,diag:E,size:T,reshape:D,qr:M,inv:p,usolve:C,usolveAll:$,equal:a,complex:w,larger:y,smaller:L,matrixFromColumns:k,dot:V});return r("eigs",{Array:function(be){return Q(i(be))},"Array, number|BigNumber":function(be,G){return Q(i(be),{precision:G})},"Array, Object"(de,be){return Q(i(de),be)},Matrix:function(be){return Q(be,{matricize:!0})},"Matrix, number|BigNumber":function(be,G){return Q(be,{precision:G,matricize:!0})},"Matrix, Object":function(be,G){var K={matricize:!0};return Dn(K,G),Q(be,K)}});function Q(de){var be,G=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},K="eigenvectors"in G?G.eigenvectors:!0,re=(be=G.precision)!==null&&be!==void 0?be:e.relTol,ae=ie(de,re,K);return G.matricize&&(ae.values=i(ae.values),K&&(ae.eigenvectors=ae.eigenvectors.map(le=>{var{value:Se,vector:_e}=le;return{value:Se,vector:i(_e)}}))),K&&Object.defineProperty(ae,"vectors",{enumerable:!1,get:()=>{throw new Error("eigs(M).vectors replaced with eigs(M).eigenvectors")}}),ae}function ie(de,be,G){var K=de.toArray(),re=de.size();if(re.length!==2||re[0]!==re[1])throw new RangeError("Matrix must be square (size: ".concat(Ct(re),")"));var ae=re[0];if(Z(K,ae,be)&&(q(K,ae),B(K,ae,be))){var le=xe(de,K,ae);return J(K,ae,be,le,G)}var Se=xe(de,K,ae);return W(K,ae,be,Se,G)}function B(de,be,G){for(var K=0;K{var{typed:e,abs:r,add:i,identity:n,inv:o,multiply:a}=t;return e(gV,{Matrix:function(f){var m=f.size();if(m.length!==2||m[0]!==m[1])throw new RangeError("Matrix must be square (size: "+Ct(m)+")");for(var p=m[0],d=1e-15,h=s(f),v=l(h,d),y=v.q,S=v.j,b=a(f,Math.pow(2,-S)),_=n(p),w=n(p),x=1,E=b,T=-1,D=1;D<=y;D++)D>1&&(E=a(E,b),T=-T),x=x*(y-D+1)/((2*y-D+1)*D),_=i(_,a(x,E)),w=i(w,a(x*T,E));for(var M=a(o(w),_),C=0;C{var{typed:e,abs:r,add:i,multiply:n,map:o,sqrt:a,subtract:s,inv:l,size:u,max:c,identity:f}=t,m=1e3,p=1e-6;function d(h){var v,y=0,S=h,b=f(u(h));do{var _=S;if(S=n(.5,i(_,l(b))),b=n(.5,i(b,l(_))),v=c(r(s(S,_))),v>p&&++y>m)throw new Error("computing square root of matrix: iterative method could not converge")}while(v>p);return S}return e(yV,{"Array | Matrix":function(v){var y=Je(v)?v.size():vt(v);switch(y.length){case 1:if(y[0]===1)return o(v,a);throw new RangeError("Matrix must be square (size: "+Ct(y)+")");case 2:{var S=y[0],b=y[1];if(S===b)return d(v);throw new RangeError("Matrix must be square (size: "+Ct(y)+")")}default:throw new RangeError("Matrix must be at most two dimensional (size: "+Ct(y)+")")}}})});var xV="sylvester",use=["typed","schur","matrixFromColumns","matrix","multiply","range","concat","transpose","index","subset","add","subtract","identity","lusolve","abs"],_V=N(xV,use,t=>{var{typed:e,schur:r,matrixFromColumns:i,matrix:n,multiply:o,range:a,concat:s,transpose:l,index:u,subset:c,add:f,subtract:m,identity:p,lusolve:d,abs:h}=t;return e(xV,{"Matrix, Matrix, Matrix":v,"Array, Matrix, Matrix":function(S,b,_){return v(n(S),b,_)},"Array, Array, Matrix":function(S,b,_){return v(n(S),n(b),_)},"Array, Matrix, Array":function(S,b,_){return v(n(S),b,n(_))},"Matrix, Array, Matrix":function(S,b,_){return v(S,n(b),_)},"Matrix, Array, Array":function(S,b,_){return v(S,n(b),n(_))},"Matrix, Matrix, Array":function(S,b,_){return v(S,b,n(_))},"Array, Array, Array":function(S,b,_){return v(n(S),n(b),n(_)).toArray()}});function v(y,S,b){for(var _=S.size()[0],w=y.size()[0],x=r(y),E=x.T,T=x.U,D=r(o(-1,S)),M=D.T,C=D.U,$=o(o(l(T),b),C),O=a(0,w),R=[],L=(le,Se)=>s(le,Se,1),k=(le,Se)=>s(le,Se,0),V=0;V<_;V++)if(V<_-1&&h(c(M,u(V+1,V)))>1e-5){for(var J=k(c($,u(O,V)),c($,u(O,V+1))),W=0;W{var{typed:e,matrix:r,identity:i,multiply:n,qr:o,norm:a,subtract:s}=t;return e(wV,{Array:function(c){var f=l(r(c));return{U:f.U.valueOf(),T:f.T.valueOf()}},Matrix:function(c){return l(c)}});function l(u){var c=u.size()[0],f=u,m=i(c),p=0,d;do{d=f;var h=o(f),v=h.Q,y=h.R;if(f=n(y,v),m=n(m,v),p++>100)break}while(a(s(f,d))>1e-4);return{U:m,T:f}}});var DV="lyap",cse=["typed","matrix","sylvester","multiply","transpose"],EV=N(DV,cse,t=>{var{typed:e,matrix:r,sylvester:i,multiply:n,transpose:o}=t;return e(DV,{"Matrix, Matrix":function(s,l){return i(s,o(s),n(-1,l))},"Array, Matrix":function(s,l){return i(r(s),o(r(s)),n(-1,l))},"Matrix, Array":function(s,l){return i(s,o(r(s)),r(n(-1,l)))},"Array, Array":function(s,l){return i(r(s),o(r(s)),r(n(-1,l))).toArray()}})});var fse="divide",pse=["typed","matrix","multiply","equalScalar","divideScalar","inv"],AV=N(fse,pse,t=>{var{typed:e,matrix:r,multiply:i,equalScalar:n,divideScalar:o,inv:a}=t,s=Er({typed:e,equalScalar:n}),l=An({typed:e});return e("divide",Rv({"Array | Matrix, Array | Matrix":function(c,f){return i(c,a(f))},"DenseMatrix, any":function(c,f){return l(c,f,o,!1)},"SparseMatrix, any":function(c,f){return s(c,f,o,!1)},"Array, any":function(c,f){return l(r(c),f,o,!1).valueOf()},"any, Array | Matrix":function(c,f){return i(c,a(f))}},o.signatures))});var TV="distance",mse=["typed","addScalar","subtractScalar","divideScalar","multiplyScalar","deepEqual","sqrt","abs"],NV=N(TV,mse,t=>{var{typed:e,addScalar:r,subtractScalar:i,multiplyScalar:n,divideScalar:o,deepEqual:a,sqrt:s,abs:l}=t;return e(TV,{"Array, Array, Array":function(w,x,E){if(w.length===2&&x.length===2&&E.length===2){if(!c(w))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!c(x))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!c(E))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(a(x,E))throw new TypeError("LinePoint1 should not be same with LinePoint2");var T=i(E[1],x[1]),D=i(x[0],E[0]),M=i(n(E[0],x[1]),n(x[0],E[1]));return v(w[0],w[1],T,D,M)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object, Object":function(w,x,E){if(Object.keys(w).length===2&&Object.keys(x).length===2&&Object.keys(E).length===2){if(!c(w))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!c(x))throw new TypeError("Values of lineOnePtX and lineOnePtY should be numbers or BigNumbers");if(!c(E))throw new TypeError("Values of lineTwoPtX and lineTwoPtY should be numbers or BigNumbers");if(a(d(x),d(E)))throw new TypeError("LinePoint1 should not be same with LinePoint2");if("pointX"in w&&"pointY"in w&&"lineOnePtX"in x&&"lineOnePtY"in x&&"lineTwoPtX"in E&&"lineTwoPtY"in E){var T=i(E.lineTwoPtY,x.lineOnePtY),D=i(x.lineOnePtX,E.lineTwoPtX),M=i(n(E.lineTwoPtX,x.lineOnePtY),n(x.lineOnePtX,E.lineTwoPtY));return v(w.pointX,w.pointY,T,D,M)}else throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},"Array, Array":function(w,x){if(w.length===2&&x.length===3){if(!c(w))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!f(x))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");return v(w[0],w[1],x[0],x[1],x[2])}else if(w.length===3&&x.length===6){if(!f(w))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!p(x))throw new TypeError("Array with 6 numbers or BigNumbers expected for second argument");return y(w[0],w[1],w[2],x[0],x[1],x[2],x[3],x[4],x[5])}else if(w.length===x.length&&w.length>0){if(!m(w))throw new TypeError("All values of an array should be numbers or BigNumbers");if(!m(x))throw new TypeError("All values of an array should be numbers or BigNumbers");return S(w,x)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object":function(w,x){if(Object.keys(w).length===2&&Object.keys(x).length===3){if(!c(w))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!f(x))throw new TypeError("Values of xCoeffLine, yCoeffLine and constant should be numbers or BigNumbers");if("pointX"in w&&"pointY"in w&&"xCoeffLine"in x&&"yCoeffLine"in x&&"constant"in x)return v(w.pointX,w.pointY,x.xCoeffLine,x.yCoeffLine,x.constant);throw new TypeError("Key names do not match")}else if(Object.keys(w).length===3&&Object.keys(x).length===6){if(!f(w))throw new TypeError("Values of pointX, pointY and pointZ should be numbers or BigNumbers");if(!p(x))throw new TypeError("Values of x0, y0, z0, a, b and c should be numbers or BigNumbers");if("pointX"in w&&"pointY"in w&&"x0"in x&&"y0"in x&&"z0"in x&&"a"in x&&"b"in x&&"c"in x)return y(w.pointX,w.pointY,w.pointZ,x.x0,x.y0,x.z0,x.a,x.b,x.c);throw new TypeError("Key names do not match")}else if(Object.keys(w).length===2&&Object.keys(x).length===2){if(!c(w))throw new TypeError("Values of pointOneX and pointOneY should be numbers or BigNumbers");if(!c(x))throw new TypeError("Values of pointTwoX and pointTwoY should be numbers or BigNumbers");if("pointOneX"in w&&"pointOneY"in w&&"pointTwoX"in x&&"pointTwoY"in x)return S([w.pointOneX,w.pointOneY],[x.pointTwoX,x.pointTwoY]);throw new TypeError("Key names do not match")}else if(Object.keys(w).length===3&&Object.keys(x).length===3){if(!f(w))throw new TypeError("Values of pointOneX, pointOneY and pointOneZ should be numbers or BigNumbers");if(!f(x))throw new TypeError("Values of pointTwoX, pointTwoY and pointTwoZ should be numbers or BigNumbers");if("pointOneX"in w&&"pointOneY"in w&&"pointOneZ"in w&&"pointTwoX"in x&&"pointTwoY"in x&&"pointTwoZ"in x)return S([w.pointOneX,w.pointOneY,w.pointOneZ],[x.pointTwoX,x.pointTwoY,x.pointTwoZ]);throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},Array:function(w){if(!h(w))throw new TypeError("Incorrect array format entered for pairwise distance calculation");return b(w)}});function u(_){return typeof _=="number"||mt(_)}function c(_){return _.constructor!==Array&&(_=d(_)),u(_[0])&&u(_[1])}function f(_){return _.constructor!==Array&&(_=d(_)),u(_[0])&&u(_[1])&&u(_[2])}function m(_){return Array.isArray(_)||(_=d(_)),_.every(u)}function p(_){return _.constructor!==Array&&(_=d(_)),u(_[0])&&u(_[1])&&u(_[2])&&u(_[3])&&u(_[4])&&u(_[5])}function d(_){for(var w=Object.keys(_),x=[],E=0;Ew.length!==2||!u(w[0])||!u(w[1])))return!1}else if(_[0].length===3&&u(_[0][0])&&u(_[0][1])&&u(_[0][2])){if(_.some(w=>w.length!==3||!u(w[0])||!u(w[1])||!u(w[2])))return!1}else return!1;return!0}function v(_,w,x,E,T){var D=l(r(r(n(x,_),n(E,w)),T)),M=s(r(n(x,x),n(E,E)));return o(D,M)}function y(_,w,x,E,T,D,M,C,$){var O=[i(n(i(T,w),$),n(i(D,x),C)),i(n(i(D,x),M),n(i(E,_),$)),i(n(i(E,_),C),n(i(T,w),M))];O=s(r(r(n(O[0],O[0]),n(O[1],O[1])),n(O[2],O[2])));var R=s(r(r(n(M,M),n(C,C)),n($,$)));return o(O,R)}function S(_,w){for(var x=_.length,E=0,T=0,D=0;D{var{typed:e,config:r,abs:i,add:n,addScalar:o,matrix:a,multiply:s,multiplyScalar:l,divideScalar:u,subtract:c,smaller:f,equalScalar:m,flatten:p,isZero:d,isNumeric:h}=t;return e("intersect",{"Array, Array, Array":v,"Array, Array, Array, Array":y,"Matrix, Matrix, Matrix":function(C,$,O){var R=v(C.valueOf(),$.valueOf(),O.valueOf());return R===null?null:a(R)},"Matrix, Matrix, Matrix, Matrix":function(C,$,O,R){var L=y(C.valueOf(),$.valueOf(),O.valueOf(),R.valueOf());return L===null?null:a(L)}});function v(M,C,$){if(M=S(M),C=S(C),$=S($),!_(M))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!_(C))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!w($))throw new TypeError("Array with 4 numbers expected as third argument");return D(M[0],M[1],M[2],C[0],C[1],C[2],$[0],$[1],$[2],$[3])}function y(M,C,$,O){if(M=S(M),C=S(C),$=S($),O=S(O),M.length===2){if(!b(M))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!b(C))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!b($))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(!b(O))throw new TypeError("Array with 2 numbers or BigNumbers expected for fourth argument");return x(M,C,$,O)}else if(M.length===3){if(!_(M))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!_(C))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!_($))throw new TypeError("Array with 3 numbers or BigNumbers expected for third argument");if(!_(O))throw new TypeError("Array with 3 numbers or BigNumbers expected for fourth argument");return T(M[0],M[1],M[2],C[0],C[1],C[2],$[0],$[1],$[2],O[0],O[1],O[2])}else throw new TypeError("Arrays with two or thee dimensional points expected")}function S(M){return M.length===1?M[0]:M.length>1&&Array.isArray(M[0])&&M.every(C=>Array.isArray(C)&&C.length===1)?p(M):M}function b(M){return M.length===2&&h(M[0])&&h(M[1])}function _(M){return M.length===3&&h(M[0])&&h(M[1])&&h(M[2])}function w(M){return M.length===4&&h(M[0])&&h(M[1])&&h(M[2])&&h(M[3])}function x(M,C,$,O){var R=M,L=$,k=c(R,C),V=c(L,O),J=c(l(k[0],V[1]),l(V[0],k[1]));if(d(J)||f(i(J),r.relTol))return null;var W=l(V[0],R[1]),Q=l(V[1],R[0]),ie=l(V[0],L[1]),B=l(V[1],L[0]),Z=u(o(c(c(W,Q),ie),B),J);return n(s(k,Z),R)}function E(M,C,$,O,R,L,k,V,J,W,Q,ie){var B=l(c(M,C),c($,O)),Z=l(c(R,L),c(k,V)),q=l(c(J,W),c(Q,ie));return o(o(B,Z),q)}function T(M,C,$,O,R,L,k,V,J,W,Q,ie){var B=E(M,k,W,k,C,V,Q,V,$,J,ie,J),Z=E(W,k,O,M,Q,V,R,C,ie,J,L,$),q=E(M,k,O,M,C,V,R,C,$,J,L,$),xe=E(W,k,W,k,Q,V,Q,V,ie,J,ie,J),de=E(O,M,O,M,R,C,R,C,L,$,L,$),be=c(l(B,Z),l(q,xe)),G=c(l(de,xe),l(Z,Z));if(d(G))return null;var K=u(be,G),re=u(o(B,l(K,Z)),xe),ae=o(M,l(K,c(O,M))),le=o(C,l(K,c(R,C))),Se=o($,l(K,c(L,$))),_e=o(k,l(re,c(W,k))),Oe=o(V,l(re,c(Q,V))),st=o(J,l(re,c(ie,J)));return m(ae,_e)&&m(le,Oe)&&m(Se,st)?[ae,le,Se]:null}function D(M,C,$,O,R,L,k,V,J,W){var Q=l(M,k),ie=l(O,k),B=l(C,V),Z=l(R,V),q=l($,J),xe=l(L,J),de=c(c(c(W,Q),B),q),be=c(c(c(o(o(ie,Z),xe),Q),B),q),G=u(de,be),K=o(M,l(G,c(O,M))),re=o(C,l(G,c(R,C))),ae=o($,l(G,c(L,$)));return[K,re,ae]}});var CV="sum",gse=["typed","config","add","numeric"],mb=N(CV,gse,t=>{var{typed:e,config:r,add:i,numeric:n}=t;return e(CV,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":a,"...":function(l){if(aa(l))throw new TypeError("Scalar values expected in function sum");return o(l)}});function o(s){var l;return Zi(s,function(u){try{l=l===void 0?u:i(l,u)}catch(c){throw gn(c,"sum",u)}}),l===void 0&&(l=n(0,r.number)),typeof l=="string"&&(l=n(l,Mi(l,r))),l}function a(s,l){try{var u=Cu(s,l,i);return u}catch(c){throw gn(c,"sum")}}});var db="cumsum",vse=["typed","add","unaryPlus"],hb=N(db,vse,t=>{var{typed:e,add:r,unaryPlus:i}=t;return e(db,{Array:n,Matrix:function(u){return u.create(n(u.valueOf(),u.datatype()))},"Array, number | BigNumber":a,"Matrix, number | BigNumber":function(u,c){return u.create(a(u.valueOf(),c),u.datatype())},"...":function(u){if(aa(u))throw new TypeError("All values expected to be scalar in function cumsum");return n(u)}});function n(l){try{return o(l)}catch(u){throw gn(u,db)}}function o(l){if(l.length===0)return[];for(var u=[i(l[0])],c=1;c=c.length)throw new ii(u,c.length);try{return s(l,u)}catch(f){throw gn(f,db)}}function s(l,u){var c,f,m;if(u<=0){var p=l[0][0];if(Array.isArray(p)){for(m=oy(l),f=[],c=0;c{var{typed:e,add:r,divide:i}=t;return e($V,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":n,"...":function(s){if(aa(s))throw new TypeError("Scalar values expected in function mean");return o(s)}});function n(a,s){try{var l=Cu(a,s,r),u=Array.isArray(a)?vt(a):a.size();return i(l,u[s])}catch(c){throw gn(c,"mean")}}function o(a){var s,l=0;if(Zi(a,function(u){try{s=s===void 0?u:r(s,u),l++}catch(c){throw gn(c,"mean",u)}}),l===0)throw new Error("Cannot calculate the mean of an empty array");return i(s,l)}});var IV="median",bse=["typed","add","divide","compare","partitionSelect"],FV=N(IV,bse,t=>{var{typed:e,add:r,divide:i,compare:n,partitionSelect:o}=t;function a(u){try{u=Ut(u.valueOf());var c=u.length;if(c===0)throw new Error("Cannot calculate median of an empty array");if(c%2===0){for(var f=c/2-1,m=o(u,f+1),p=u[f],d=0;d0&&(p=u[d]);return l(p,m)}else{var h=o(u,(c-1)/2);return s(h)}}catch(v){throw gn(v,"median")}}var s=e({"number | BigNumber | Complex | Unit":function(c){return c}}),l=e({"number | BigNumber | Complex | Unit, number | BigNumber | Complex | Unit":function(c,f){return i(r(c,f),2)}});return e(IV,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":function(c,f){throw new Error("median(A, dim) is not yet supported")},"...":function(c){if(aa(c))throw new TypeError("Scalar values expected in function median");return a(c)}})});var kV="mad",xse=["typed","abs","map","median","subtract"],PV=N(kV,xse,t=>{var{typed:e,abs:r,map:i,median:n,subtract:o}=t;return e(kV,{"Array | Matrix":a,"...":function(l){return a(l)}});function a(s){if(s=Ut(s.valueOf()),s.length===0)throw new Error("Cannot calculate median absolute deviation (mad) of an empty array");try{var l=n(s);return n(i(s,function(u){return r(o(u,l))}))}catch(u){throw u instanceof TypeError&&u.message.includes("median")?new TypeError(u.message.replace("median","mad")):gn(u,"mad")}}});var XE="unbiased",BV="variance",_se=["typed","add","subtract","multiply","divide","mapSlices","isNaN"],vb=N(BV,_se,t=>{var{typed:e,add:r,subtract:i,multiply:n,divide:o,mapSlices:a,isNaN:s}=t;return e(BV,{"Array | Matrix":function(f){return l(f,XE)},"Array | Matrix, string":l,"Array | Matrix, number | BigNumber":function(f,m){return u(f,m,XE)},"Array | Matrix, number | BigNumber, string":u,"...":function(f){return l(f,XE)}});function l(c,f){var m,p=0;if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");if(Zi(c,function(v){try{m=m===void 0?v:r(m,v),p++}catch(y){throw gn(y,"variance",v)}}),p===0)throw new Error("Cannot calculate variance of an empty array");var d=o(m,p);if(m=void 0,Zi(c,function(v){var y=i(v,d);m=m===void 0?n(y,y):r(m,n(y,y))}),s(m))return m;switch(f){case"uncorrected":return o(m,p);case"biased":return o(m,p+1);case"unbiased":{var h=mt(m)?m.mul(0):0;return p===1?h:o(m,p-1)}default:throw new Error('Unknown normalization "'+f+'". Choose "unbiased" (default), "uncorrected", or "biased".')}}function u(c,f,m){try{if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");return a(c,f,p=>l(p,m))}catch(p){throw gn(p,"variance")}}});var OV="quantileSeq",wse=["typed","?bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger","mapSlices"],yb=N(OV,wse,t=>{var{typed:e,bignumber:r,add:i,subtract:n,divide:o,multiply:a,partitionSelect:s,compare:l,isInteger:u,smaller:c,smallerEq:f,larger:m,mapSlices:p}=t;return e(OV,{"Array | Matrix, number | BigNumber":(S,b)=>h(S,b,!1),"Array | Matrix, number | BigNumber, number":(S,b,_)=>d(S,b,!1,_,h),"Array | Matrix, number | BigNumber, boolean":h,"Array | Matrix, number | BigNumber, boolean, number":(S,b,_,w)=>d(S,b,_,w,h),"Array | Matrix, Array | Matrix":(S,b)=>v(S,b,!1),"Array | Matrix, Array | Matrix, number":(S,b,_)=>d(S,b,!1,_,v),"Array | Matrix, Array | Matrix, boolean":v,"Array | Matrix, Array | Matrix, boolean, number":(S,b,_,w)=>d(S,b,_,w,v)});function d(S,b,_,w,x){return p(S,w,E=>x(E,b,_))}function h(S,b,_){var w,x=S.valueOf();if(c(b,0))throw new Error("N/prob must be non-negative");if(f(b,1))return Et(b)?y(x,b,_):r(y(x,b,_));if(m(b,1)){if(!u(b))throw new Error("N must be a positive integer");if(m(b,4294967295))throw new Error("N must be less than or equal to 2^32-1, as that is the maximum length of an Array");var E=i(b,1);w=[];for(var T=0;c(T,b);T++){var D=o(T+1,E);w.push(y(x,D,_))}return Et(b)?w:r(w)}}function v(S,b,_){for(var w=S.valueOf(),x=b.valueOf(),E=[],T=0;T0&&(M=w[$])}return i(a(M,n(1,D)),a(C,D))}});var RV="std",Sse=["typed","map","sqrt","variance"],bb=N(RV,Sse,t=>{var{typed:e,map:r,sqrt:i,variance:n}=t;return e(RV,{"Array | Matrix":o,"Array | Matrix, string":o,"Array | Matrix, number | BigNumber":o,"Array | Matrix, number | BigNumber, string":o,"...":function(s){return o(s)}});function o(a,s){if(a.length===0)throw new SyntaxError("Function std requires one or more parameters (0 provided)");try{var l=n.apply(null,arguments);return un(l)?r(l,i):i(l)}catch(u){throw u instanceof TypeError&&u.message.includes(" variance")?new TypeError(u.message.replace(" variance"," std")):u}}});var LV="corr",Dse=["typed","matrix","mean","sqrt","sum","add","subtract","multiply","pow","divide"],UV=N(LV,Dse,t=>{var{typed:e,matrix:r,sqrt:i,sum:n,add:o,subtract:a,multiply:s,pow:l,divide:u}=t;return e(LV,{"Array, Array":function(p,d){return c(p,d)},"Matrix, Matrix":function(p,d){var h=c(p.toArray(),d.toArray());return Array.isArray(h)?r(h):h}});function c(m,p){var d=[];if(Array.isArray(m[0])&&Array.isArray(p[0])){if(m.length!==p.length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same length.");for(var h=0;ho(x,s(E,p[T])),0),S=n(m.map(x=>l(x,2))),b=n(p.map(x=>l(x,2))),_=a(s(d,y),s(h,v)),w=i(s(a(s(d,S),l(h,2)),a(s(d,b),l(v,2))));return u(_,w)}});var zV="combinations",Ese=["typed"],qV=N(zV,Ese,t=>{var{typed:e}=t;return e(zV,{"number, number":pE,"BigNumber, BigNumber":function(i,n){var o=i.constructor,a,s,l=i.minus(n),u=new o(1);if(!VV(i)||!VV(n))throw new TypeError("Positive integer value expected in function combinations");if(n.gt(i))throw new TypeError("k must be less than n in function combinations");if(a=u,n.lt(l))for(s=u;s.lte(l);s=s.plus(u))a=a.times(n.plus(s)).dividedBy(s);else for(s=u;s.lte(n);s=s.plus(u))a=a.times(l.plus(s)).dividedBy(s);return a}})});function VV(t){return t.isInteger()&&t.gte(0)}var jV="combinationsWithRep",Ase=["typed"],GV=N(jV,Ase,t=>{var{typed:e}=t;return e(jV,{"number, number":function(i,n){if(!Ge(i)||i<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(!Ge(n)||n<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(i<1)throw new TypeError("k must be less than or equal to n + k - 1");if(n{var{typed:e,config:r,multiplyScalar:i,pow:n,BigNumber:o,Complex:a}=t;function s(u){if(u.im===0)return im(u.re);if(u.re<.5){var c=new a(1-u.re,-u.im),f=new a(Math.PI*u.re,Math.PI*u.im);return new a(Math.PI).div(f.sin()).div(s(c))}u=new a(u.re-1,u.im);for(var m=new a(Sl[0],0),p=1;p2;)m-=2,d+=m,p=p.times(d);return new o(p.toPrecision(o.precision))}});var YV="lgamma",Nse=["Complex","typed"],JV=N(YV,Nse,t=>{var{Complex:e,typed:r}=t,i=7,n=7,o=[-.029550653594771242,.00641025641025641,-.0019175269175269176,.0008417508417508417,-.0005952380952380953,.0007936507936507937,-.002777777777777778,.08333333333333333];return r(YV,{number:om,Complex:a,BigNumber:function(){throw new Error("mathjs doesn't yet provide an implementation of the algorithm lgamma for BigNumber")}});function a(u){var c=6.283185307179586,f=1.1447298858494002,m=.1;if(u.isNaN())return new e(NaN,NaN);if(u.im===0)return new e(om(u.re),0);if(u.re>=i||Math.abs(u.im)>=n)return s(u);if(u.re<=m){var p=SF(c,u.im)*Math.floor(.5*u.re+.25),d=u.mul(Math.PI).sin().log(),h=a(new e(1-u.re,-u.im));return new e(f,p).sub(d).sub(h)}else return u.im>=0?l(u):l(u.conjugate()).conjugate()}function s(u){for(var c=u.sub(.5).mul(u.log()).sub(u).add(gE),f=new e(1,0).div(u),m=f.div(u),p=o[0],d=o[1],h=2*m.re,v=m.re*m.re+m.im*m.im,y=2;y<8;y++){var S=d;d=-v*p+o[y],p=h*p+S}var b=f.mul(m.mul(p).add(d));return c.add(b)}function l(u){var c=0,f=0,m=u;for(u=u.add(1);u.re<=i;){m=m.mul(u);var p=m.im<0?1:0;p!==0&&f===0&&c++,f=p,u=u.add(1)}return s(u).sub(m.log()).sub(new e(0,c*2*Math.PI*1))}});var XV="factorial",Mse=["typed","gamma"],KV=N(XV,Mse,t=>{var{typed:e,gamma:r}=t;return e(XV,{number:function(n){if(n<0)throw new Error("Value must be non-negative");return r(n+1)},BigNumber:function(n){if(n.isNegative())throw new Error("Value must be non-negative");return r(n.plus(1))},"Array | Matrix":e.referToSelf(i=>n=>it(n,i))})});var QV="kldivergence",Cse=["typed","matrix","divide","sum","multiply","map","dotDivide","log","isNumeric"],e5=N(QV,Cse,t=>{var{typed:e,matrix:r,divide:i,sum:n,multiply:o,map:a,dotDivide:s,log:l,isNumeric:u}=t;return e(QV,{"Array, Array":function(m,p){return c(r(m),r(p))},"Matrix, Array":function(m,p){return c(m,r(p))},"Array, Matrix":function(m,p){return c(r(m),p)},"Matrix, Matrix":function(m,p){return c(m,p)}});function c(f,m){var p=m.size().length,d=f.size().length;if(p>1)throw new Error("first object must be one dimensional");if(d>1)throw new Error("second object must be one dimensional");if(p!==d)throw new Error("Length of two vectors must be equal");var h=n(f);if(h===0)throw new Error("Sum of elements in first object must be non zero");var v=n(m);if(v===0)throw new Error("Sum of elements in second object must be non zero");var y=i(f,n(f)),S=i(m,n(m)),b=n(o(y,a(s(y,S),_=>l(_))));return u(b)?b:Number.NaN}});var t5="multinomial",$se=["typed","add","divide","multiply","factorial","isInteger","isPositive"],r5=N(t5,$se,t=>{var{typed:e,add:r,divide:i,multiply:n,factorial:o,isInteger:a,isPositive:s}=t;return e(t5,{"Array | Matrix":function(u){var c=0,f=1;return Zi(u,function(m){if(!a(m)||!s(m))throw new TypeError("Positive integer value expected in function multinomial");c=r(c,m),f=n(f,o(m))}),i(o(c),f)}})});var n5="permutations",Ise=["typed","factorial"],o5=N(n5,Ise,t=>{var{typed:e,factorial:r}=t;return e(n5,{"number | BigNumber":r,"number, number":function(n,o){if(!Ge(n)||n<0)throw new TypeError("Positive integer value expected in function permutations");if(!Ge(o)||o<0)throw new TypeError("Positive integer value expected in function permutations");if(o>n)throw new TypeError("second argument k must be less than or equal to first argument n");return Po(n-o+1,n)},"BigNumber, BigNumber":function(n,o){var a,s;if(!i5(n)||!i5(o))throw new TypeError("Positive integer value expected in function permutations");if(o.gt(n))throw new TypeError("second argument k must be less than or equal to first argument n");var l=n.mul(0).add(1);for(a=l,s=n.minus(o).plus(1);s.lte(n);s=s.plus(1))a=a.times(s);return a}})});function i5(t){return t.isInteger()&&t.gte(0)}var iA=Ar(_5(),1),Lse=(0,iA.default)(Date.now());function Ks(t){var e;function r(n){e=n===null?Lse:(0,iA.default)(String(n))}r(t);function i(){return e()}return i}var w5="pickRandom",Use=["typed","config","?on"],S5=N(w5,Use,t=>{var{typed:e,config:r,on:i}=t,n=Ks(r.randomSeed);return i&&i("config",function(a,s){a.randomSeed!==s.randomSeed&&(n=Ks(a.randomSeed))}),e(w5,{"Array | Matrix":function(s){return o(s,{})},"Array | Matrix, Object":function(s,l){return o(s,l)},"Array | Matrix, number":function(s,l){return o(s,{number:l})},"Array | Matrix, Array | Matrix":function(s,l){return o(s,{weights:l})},"Array | Matrix, Array | Matrix, number":function(s,l,u){return o(s,{number:u,weights:l})},"Array | Matrix, number, Array | Matrix":function(s,l,u){return o(s,{number:l,weights:u})}});function o(a,s){var{number:l,weights:u,elementWise:c=!0}=s,f=typeof l>"u";f&&(l=1);var m=Je(a)?a.create:Je(u)?u.create:null;a=a.valueOf(),u&&(u=u.valueOf()),c===!0&&(a=Ut(a),u=Ut(u));var p=0;if(typeof u<"u"){if(u.length!==a.length)throw new Error("Weights must have the same length as possibles");for(var d=0,h=u.length;d"u")S=a[Math.floor(n()*v)];else for(var b=n()*p,_=0,w=a.length;_1)for(var i=0,n=t.shift();i{var{typed:e,config:r,on:i}=t,n=Ks(r.randomSeed);return i&&i("config",function(s,l){s.randomSeed!==l.randomSeed&&(n=Ks(s.randomSeed))}),e(D5,{"":()=>a(0,1),number:s=>a(0,s),"number, number":(s,l)=>a(s,l),"Array | Matrix":s=>o(s,0,1),"Array | Matrix, number":(s,l)=>o(s,0,l),"Array | Matrix, number, number":(s,l,u)=>o(s,l,u)});function o(s,l,u){var c=cm(s.valueOf(),()=>a(l,u));return Je(s)?s.create(c,"number"):c}function a(s,l){return s+n()*(l-s)}});var A5="randomInt",Vse=["typed","config","log2","?on"],T5=N(A5,Vse,t=>{var{typed:e,config:r,log2:i,on:n}=t,o=Ks(r.randomSeed);return n&&n("config",function(u,c){u.randomSeed!==c.randomSeed&&(o=Ks(u.randomSeed))}),e(A5,{"":()=>s(0,2),number:u=>s(0,u),"number, number":(u,c)=>s(u,c),bigint:u=>l(0n,u),"bigint, bigint":l,"Array | Matrix":u=>a(u,0,1),"Array | Matrix, number":(u,c)=>a(u,0,c),"Array | Matrix, number, number":(u,c,f)=>a(u,c,f)});function a(u,c,f){var m=cm(u.valueOf(),()=>s(c,f));return Je(u)?u.create(m,"number"):m}function s(u,c){return Math.floor(u+o()*(c-u))}function l(u,c){var f=2n**30n,m=c-u;if(m<=f)return u+BigInt(s(0,Number(m)));for(var p=i(m),d=m;d>=m;){d=0n;for(var h=0;h{var{typed:e,addScalar:r,subtractScalar:i,multiplyScalar:n,divideScalar:o,pow:a,factorial:s,combinations:l,isNegative:u,isInteger:c,number:f,bignumber:m,larger:p}=t,d=[],h=[];return e(N5,{"number | BigNumber, number | BigNumber":function(y,S){if(!c(y)||u(y)||!c(S)||u(S))throw new TypeError("Non-negative integer value expected in function stirlingS2");if(p(S,y))throw new TypeError("k must be less than or equal to n in function stirlingS2");var b=!(Et(y)&&Et(S)),_=b?h:d,w=b?m:f,x=f(y),E=f(S);if(_[x]&&_[x].length>E)return _[x][E];for(var T=0;T<=x;++T)if(_[T]||(_[T]=[w(T===0?1:0)]),T!==0)for(var D=_[T],M=_[T-1],C=D.length;C<=T&&C<=E;++C)C===T?D[C]=1:D[C]=r(n(w(C),M[C]),M[C-1]);return _[x][E]}})});var C5="bellNumbers",jse=["typed","addScalar","isNegative","isInteger","stirlingS2"],$5=N(C5,jse,t=>{var{typed:e,addScalar:r,isNegative:i,isInteger:n,stirlingS2:o}=t;return e(C5,{"number | BigNumber":function(s){if(!n(s)||i(s))throw new TypeError("Non-negative integer value expected in function bellNumbers");for(var l=0,u=0;u<=s;u++)l=r(l,o(s,u));return l}})});var I5="catalan",Zse=["typed","addScalar","divideScalar","multiplyScalar","combinations","isNegative","isInteger"],F5=N(I5,Zse,t=>{var{typed:e,addScalar:r,divideScalar:i,multiplyScalar:n,combinations:o,isNegative:a,isInteger:s}=t;return e(I5,{"number | BigNumber":function(u){if(!s(u)||a(u))throw new TypeError("Non-negative integer value expected in function catalan");return i(o(n(u,2),u),r(u,1))}})});var k5="composition",Gse=["typed","addScalar","combinations","isNegative","isPositive","isInteger","larger"],P5=N(k5,Gse,t=>{var{typed:e,addScalar:r,combinations:i,isPositive:n,isNegative:o,isInteger:a,larger:s}=t;return e(k5,{"number | BigNumber, number | BigNumber":function(u,c){if(!a(u)||!n(u)||!a(c)||!n(c))throw new TypeError("Positive integer value expected in function composition");if(s(c,u))throw new TypeError("k must be less than or equal to n in function composition");return i(r(u,-1),r(c,-1))}})});var B5="leafCount",Wse=["parse","typed"],O5=N(B5,Wse,t=>{var{parse:e,typed:r}=t;function i(n){var o=0;return n.forEach(a=>{o+=i(a)}),o||1}return r(B5,{Node:function(o){return i(o)}})});function oA(t){return Lt(t)||Lr(t)&&t.isUnary()&&Lt(t.args[0])}function fm(t){return!!(Lt(t)||(gi(t)||Lr(t))&&t.args.every(fm)||ti(t)&&fm(t.content))}function R5(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function aA(t){for(var e=1;e{var{FunctionNode:e,OperatorNode:r,SymbolNode:i}=t,n=!0,o=!1,a="defaultF",s={add:{trivial:n,total:n,commutative:n,associative:n},unaryPlus:{trivial:n,total:n,commutative:n,associative:n},subtract:{trivial:o,total:n,commutative:o,associative:o},multiply:{trivial:n,total:n,commutative:n,associative:n},divide:{trivial:o,total:n,commutative:o,associative:o},paren:{trivial:n,total:n,commutative:n,associative:o},defaultF:{trivial:o,total:n,commutative:o,associative:o}},l={divide:{total:o},log:{total:o}},u={subtract:{total:o},abs:{trivial:n},log:{total:n}};function c(b,_){var w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:s,x=a;if(typeof b=="string"?x=b:Lr(b)?x=b.fn.toString():gi(b)?x=b.name:ti(b)&&(x="paren"),rt(w,x)){var E=w[x];if(rt(E,_))return E[_];if(rt(s,x))return s[x][_]}if(rt(w,a)){var T=w[a];return rt(T,_)?T[_]:s[a][_]}if(rt(s,x)){var D=s[x];if(rt(D,_))return D[_]}return s[a][_]}function f(b){var _=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s;return c(b,"commutative",_)}function m(b){var _=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s;return c(b,"associative",_)}function p(b,_){var w=aA({},b);for(var x in _)rt(b,x)?w[x]=aA(aA({},_[x]),b[x]):w[x]=_[x];return w}function d(b,_){if(!b.args||b.args.length===0)return b;b.args=h(b,_);for(var w=0;w2&&m(b,_)){for(var T=b.args.pop();b.args.length>0;)T=w([b.args.pop(),T]);b.args=T.args}}}function y(b,_){if(!(!b.args||b.args.length===0)){for(var w=S(b),x=b.args.length,E=0;E2&&m(b,_)){for(var T=b.args.shift();b.args.length>0;)T=w([T,b.args.shift()]);b.args=T.args}}}function S(b){return Lr(b)?function(_){try{return new r(b.op,b.fn,_,b.implicit)}catch(w){return console.error(w),[]}}:function(_){return new e(new i(b.name),_)}}return{createMakeNodeFunction:S,hasProperty:c,isCommutative:f,isAssociative:m,mergeContext:p,flatten:d,allChildren:h,unflattenr:v,unflattenl:y,defaultContext:s,realContext:l,positiveContext:u}});var Jse="simplify",Xse=["typed","parse","equal","resolve","simplifyConstant","simplifyCore","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode","replacer"],L5=N(Jse,Xse,t=>{var{typed:e,parse:r,equal:i,resolve:n,simplifyConstant:o,simplifyCore:a,AccessorNode:s,ArrayNode:l,ConstantNode:u,FunctionNode:c,IndexNode:f,ObjectNode:m,OperatorNode:p,ParenthesisNode:d,SymbolNode:h,replacer:v}=t,{hasProperty:y,isCommutative:S,isAssociative:b,mergeContext:_,flatten:w,unflattenr:x,unflattenl:E,createMakeNodeFunction:T,defaultContext:D,realContext:M,positiveContext:C}=sf({FunctionNode:c,OperatorNode:p,SymbolNode:h});e.addConversion({from:"Object",to:"Map",convert:js});var $=e("simplify",{Node:W,"Node, Map":(G,K)=>W(G,!1,K),"Node, Map, Object":(G,K,re)=>W(G,!1,K,re),"Node, Array":W,"Node, Array, Map":W,"Node, Array, Map, Object":W});e.removeConversion({from:"Object",to:"Map",convert:js}),$.defaultContext=D,$.realContext=M,$.positiveContext=C;function O(G){return G.transform(function(K){return ti(K)?O(K.content):K})}var R={true:!0,false:!0,e:!0,i:!0,Infinity:!0,LN2:!0,LN10:!0,LOG2E:!0,LOG10E:!0,NaN:!0,phi:!0,pi:!0,SQRT1_2:!0,SQRT2:!0,tau:!0};$.rules=[a,{l:"log(e)",r:"1"},{s:"n-n1 -> n+-n1",assuming:{subtract:{total:!0}}},{s:"n-n -> 0",assuming:{subtract:{total:!1}}},{s:"-(cl*v) -> v * (-cl)",assuming:{multiply:{commutative:!0},subtract:{total:!0}}},{s:"-(cl*v) -> (-cl) * v",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{s:"-(v*cl) -> v * (-cl)",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{l:"-(n1/n2)",r:"-n1/n2"},{l:"-v",r:"v * (-1)"},{l:"(n1 + n2)*(-1)",r:"n1*(-1) + n2*(-1)",repeat:!0},{l:"n/n1^n2",r:"n*n1^-n2"},{l:"n/n1",r:"n*n1^-1"},{s:"(n1*n2)^n3 -> n1^n3 * n2^n3",assuming:{multiply:{commutative:!0}}},{s:"(n1*n2)^(-1) -> n2^(-1) * n1^(-1)",assuming:{multiply:{commutative:!1}}},{s:"(n ^ n1) ^ n2 -> n ^ (n1 * n2)",assuming:{divide:{total:!0}}},{l:" vd * ( vd * n1 + n2)",r:"vd^2 * n1 + vd * n2"},{s:" vd * (vd^n4 * n1 + n2) -> vd^(1+n4) * n1 + vd * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * ( vd * n1 + n2) -> vd^(n3+1) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * (vd^n4 * n1 + n2) -> vd^(n3+n4) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{l:"n*n",r:"n^2"},{s:"n * n^n1 -> n^(n1+1)",assuming:{divide:{total:!0}}},{s:"n^n1 * n^n2 -> n^(n1+n2)",assuming:{divide:{total:!0}}},o,{s:"n+n -> 2*n",assuming:{add:{total:!0}}},{l:"n+-n",r:"0"},{l:"vd*n + vd",r:"vd*(n+1)"},{l:"n3*n1 + n3*n2",r:"n3*(n1+n2)"},{l:"n3^(-n4)*n1 + n3 * n2",r:"n3^(-n4)*(n1 + n3^(n4+1) *n2)"},{l:"n3^(-n4)*n1 + n3^n5 * n2",r:"n3^(-n4)*(n1 + n3^(n4+n5)*n2)"},{s:"n*vd + vd -> (n+1)*vd",assuming:{multiply:{commutative:!1}}},{s:"vd + n*vd -> (1+n)*vd",assuming:{multiply:{commutative:!1}}},{s:"n1*n3 + n2*n3 -> (n1+n2)*n3",assuming:{multiply:{commutative:!1}}},{s:"n^n1 * n -> n^(n1+1)",assuming:{divide:{total:!0},multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3 -> (n1 + n2*n3^(n4 + 1))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3^n5 -> (n1 + n2*n3^(n4 + n5))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{l:"n*cd + cd",r:"(n+1)*cd"},{s:"cd*n + cd -> cd*(n+1)",assuming:{multiply:{commutative:!1}}},{s:"cd + cd*n -> cd*(1+n)",assuming:{multiply:{commutative:!1}}},o,{s:"(-n)*n1 -> -(n*n1)",assuming:{subtract:{total:!0}}},{s:"n1*(-n) -> -(n1*n)",assuming:{subtract:{total:!0},multiply:{commutative:!1}}},{s:"ce+ve -> ve+ce",assuming:{add:{commutative:!0}},imposeContext:{add:{commutative:!1}}},{s:"vd*cd -> cd*vd",assuming:{multiply:{commutative:!0}},imposeContext:{multiply:{commutative:!1}}},{l:"n+-n1",r:"n-n1"},{l:"n+-(n1)",r:"n-(n1)"},{s:"n*(n1^-1) -> n/n1",assuming:{multiply:{commutative:!0}}},{s:"n*n1^-n2 -> n/n1^n2",assuming:{multiply:{commutative:!0}}},{s:"n^-1 -> 1/n",assuming:{multiply:{commutative:!0}}},{l:"n^1",r:"n"},{s:"n*(n1/n2) -> (n*n1)/n2",assuming:{multiply:{associative:!0}}},{s:"n-(n1+n2) -> n-n1-n2",assuming:{addition:{associative:!0,commutative:!0}}},{l:"1*n",r:"n",imposeContext:{multiply:{commutative:!0}}},{s:"n1/(n2/n3) -> (n1*n3)/n2",assuming:{multiply:{associative:!0}}},{l:"n1/(-n2)",r:"-n1/n2"}];function L(G,K){var re={};if(G.s){var ae=G.s.split("->");if(ae.length===2)re.l=ae[0],re.r=ae[1];else throw SyntaxError("Could not parse rule: "+G.s)}else re.l=G.l,re.r=G.r;re.l=O(r(re.l)),re.r=O(r(re.r));for(var le of["imposeContext","repeat","assuming"])le in G&&(re[le]=G[le]);if(G.evaluate&&(re.evaluate=r(G.evaluate)),b(re.l,K)){var Se=!S(re.l,K),_e;Se&&(_e=J());var Oe=T(re.l),st=J();re.expanded={},re.expanded.l=Oe([re.l,st]),w(re.expanded.l,K),x(re.expanded.l,K),re.expanded.r=Oe([re.r,st]),Se&&(re.expandedNC1={},re.expandedNC1.l=Oe([_e,re.l]),re.expandedNC1.r=Oe([_e,re.r]),re.expandedNC2={},re.expandedNC2.l=Oe([_e,re.expanded.l]),re.expandedNC2.r=Oe([_e,re.expanded.r]))}return re}function k(G,K){for(var re=[],ae=0;ae2&&arguments[2]!==void 0?arguments[2]:Su(),ae=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},le=ae.consoleDebug;K=k(K||$.rules,ae.context);var Se=n(G,re);Se=O(Se);for(var _e={},Oe=Se.toString({parenthesis:"all"});!_e[Oe];){_e[Oe]=!0,V=0;var st=Oe;le&&console.log("Working on: ",Oe);for(var yt=0;yt ").concat(K[yt].r.toString()))),le){var ut=Se.toString({parenthesis:"all"});ut!==st&&(console.log("Applying",Qe,"produced",ut),st=ut)}E(Se,ae.context)}Oe=Se.toString({parenthesis:"all"})}return Se}function Q(G,K,re){var ae=G;if(G)for(var le=0;le1&&(st=Se(G.args.slice(0,Oe))),le=G.args.slice(Oe),ae=le.length===1?le[0]:Se(le),re.push(Se([st,ae]))}return re}function Z(G,K){var re={placeholders:{}};if(!G.placeholders&&!K.placeholders)return re;if(G.placeholders){if(!K.placeholders)return G}else return K;for(var ae in G.placeholders)if(rt(G.placeholders,ae)&&(re.placeholders[ae]=G.placeholders[ae],rt(K.placeholders,ae)&&!be(G.placeholders[ae],K.placeholders[ae])))return null;for(var le in K.placeholders)rt(K.placeholders,le)&&(re.placeholders[le]=K.placeholders[le]);return re}function q(G,K){var re=[];if(G.length===0||K.length===0)return re;for(var ae,le=0;le2)throw new Error("permuting >2 commutative non-associative rule arguments not yet implemented");var st=de(G.args[0],K.args[1],re);if(st.length===0)return[];var yt=de(G.args[1],K.args[0],re);if(yt.length===0)return[];Se=[st,yt]}le=xe(Se)}else if(K.args.length>=2&&G.args.length===2){for(var Qe=B(K,re),ut=[],H=0;H2)throw Error("Unexpected non-binary associative function: "+G.toString());return[]}}else if(G instanceof h){if(G.name.length===0)throw new Error("Symbol in rule has 0 length...!?");if(R[G.name]){if(G.name!==K.name)return[]}else switch(G.name[1]>="a"&&G.name[1]<="z"?G.name.substring(0,2):G.name[0]){case"n":case"_p":le[0].placeholders[G.name]=K;break;case"c":case"cl":if(Lt(K))le[0].placeholders[G.name]=K;else return[];break;case"v":if(!Lt(K))le[0].placeholders[G.name]=K;else return[];break;case"vl":if(Nr(K))le[0].placeholders[G.name]=K;else return[];break;case"cd":if(oA(K))le[0].placeholders[G.name]=K;else return[];break;case"vd":if(!oA(K))le[0].placeholders[G.name]=K;else return[];break;case"ce":if(fm(K))le[0].placeholders[G.name]=K;else return[];break;case"ve":if(!fm(K))le[0].placeholders[G.name]=K;else return[];break;default:throw new Error("Invalid symbol in rule: "+G.name)}}else if(G instanceof u){if(!i(G.value,K.value))return[]}else return[];return le}function be(G,K){if(G instanceof u&&K instanceof u){if(!i(G.value,K.value))return!1}else if(G instanceof h&&K instanceof h){if(G.name!==K.name)return!1}else if(G instanceof p&&K instanceof p||G instanceof c&&K instanceof c){if(G instanceof p){if(G.op!==K.op||G.fn!==K.fn)return!1}else if(G instanceof c&&G.name!==K.name)return!1;if(G.args.length!==K.args.length)return!1;for(var re=0;re{var{typed:e,config:r,mathWithTransform:i,matrix:n,fraction:o,bignumber:a,AccessorNode:s,ArrayNode:l,ConstantNode:u,FunctionNode:c,IndexNode:f,ObjectNode:m,OperatorNode:p,SymbolNode:d}=t,{isCommutative:h,isAssociative:v,allChildren:y,createMakeNodeFunction:S}=sf({FunctionNode:c,OperatorNode:p,SymbolNode:d}),b=e("simplifyConstant",{Node:L=>E(R(L,{})),"Node, Object":function(k,V){return E(R(k,V))}});function _(L){return Io(L)?L.valueOf():L instanceof Array?L.map(_):Je(L)?n(_(L.valueOf())):L}function w(L,k,V){try{return i[L].apply(null,k)}catch{return k=k.map(_),D(i[L].apply(null,k),V)}}var x=e({Fraction:C,number:function(k){return k<0?M(new u(-k)):new u(k)},BigNumber:function(k){return k<0?M(new u(-k)):new u(k)},bigint:function(k){return k<0n?M(new u(-k)):new u(k)},Complex:function(k){throw new Error("Cannot convert Complex number to Node")},string:function(k){return new u(k)},Matrix:function(k){return new l(k.valueOf().map(V=>x(V)))}});function E(L){return Yt(L)?L:x(L)}function T(L,k){var V=k&&k.exactFractions!==!1;if(V&&isFinite(L)&&o){var J=o(L),W=k&&typeof k.fractionsLimit=="number"?k.fractionsLimit:1/0;if(J.valueOf()===L&&J.nr.number==="BigNumber"&&a?a(W):Number(W),V=L.s*L.n,J=V<0n?new p("-","unaryMinus",[new u(-k(V))]):new u(k(V));return L.d===1n?J:new p("/","divide",[J,new u(k(L.d))])}function $(L,k,V){if(!uo(k))return new s(E(L),E(k));if(ei(L)||Je(L)){for(var J=Array.from(k.dimensions);J.length>0;)if(Lt(J[0])&&typeof J[0].value!="string"){var W=D(J.shift().value,V);ei(L)?L=L.items[W-1]:(L=L.valueOf()[W-1],L instanceof Array&&(L=n(L)))}else if(J.length>1&&Lt(J[1])&&typeof J[1].value!="string"){var Q=D(J[1].value,V),ie=[],B=ei(L)?L.items:L.valueOf();for(var Z of B)if(ei(Z))ie.push(Z.items[Q-1]);else if(Je(L))ie.push(Z[Q-1]);else break;if(ie.length===B.length)ei(L)?L=new l(ie):L=n(ie),J.splice(1,1);else break}else break;return J.length===k.dimensions.length?new s(E(L),k):J.length>0?(k=new f(J),new s(E(L),k)):L}if(Ka(L)&&k.dimensions.length===1&&Lt(k.dimensions[0])){var q=k.dimensions[0].value;return q in L.properties?L.properties[q]:new u}return new s(E(L),k)}function O(L,k,V,J){var W=k.shift(),Q=k.reduce((ie,B)=>{if(!Yt(B)){var Z=ie.pop();if(Yt(Z))return[Z,B];try{return ie.push(w(L,[Z,B],J)),ie}catch{ie.push(Z)}}ie.push(E(ie.pop()));var q=ie.length===1?ie[0]:V(ie);return[V([q,E(B)])]},[W]);return Q.length===1?Q[0]:V([Q[0],x(Q[1])])}function R(L,k){switch(L.type){case"SymbolNode":return L;case"ConstantNode":switch(typeof L.value){case"number":return D(L.value,k);case"bigint":return D(L.value,k);case"string":return L.value;default:if(!isNaN(L.value))return D(L.value,k)}return L;case"FunctionNode":if(i[L.name]&&i[L.name].rawArgs)return L;{var V=["add","multiply"];if(!V.includes(L.name)){var J=L.args.map(ae=>R(ae,k));if(!J.some(Yt))try{return w(L.name,J,k)}catch{}if(L.name==="size"&&J.length===1&&ei(J[0])){for(var W=[],Q=J[0];ei(Q);)W.push(Q.items.length),Q=Q.items[0];return n(W)}return new c(L.name,J.map(E))}}case"OperatorNode":{var ie=L.fn.toString(),B,Z,q=S(L);if(Lr(L)&&L.isUnary())B=[R(L.args[0],k)],Yt(B[0])?Z=q(B):Z=w(ie,B,k);else if(v(L,k.context))if(B=y(L,k.context),B=B.map(ae=>R(ae,k)),h(ie,k.context)){for(var xe=[],de=[],be=0;be1?(Z=O(ie,xe,q,k),de.unshift(Z),Z=O(ie,de,q,k)):Z=O(ie,B,q,k)}else Z=O(ie,B,q,k);else B=L.args.map(ae=>R(ae,k)),Z=O(ie,B,q,k);return Z}case"ParenthesisNode":return R(L.content,k);case"AccessorNode":return $(R(L.object,k),R(L.index,k),k);case"ArrayNode":{var G=L.items.map(ae=>R(ae,k));return G.some(Yt)?new l(G.map(E)):n(G)}case"IndexNode":return new f(L.dimensions.map(ae=>b(ae,k)));case"ObjectNode":{var K={};for(var re in L.properties)K[re]=b(L.properties[re],k);return new m(K)}case"AssignmentNode":case"BlockNode":case"FunctionAssignmentNode":case"RangeNode":case"ConditionalNode":default:throw new Error("Unimplemented node type in simplifyConstant: ".concat(L.type))}}return b});var z5="simplifyCore",eue=["typed","parse","equal","isZero","add","subtract","multiply","divide","pow","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode"],V5=N(z5,eue,t=>{var{typed:e,parse:r,equal:i,isZero:n,add:o,subtract:a,multiply:s,divide:l,pow:u,AccessorNode:c,ArrayNode:f,ConstantNode:m,FunctionNode:p,IndexNode:d,ObjectNode:h,OperatorNode:v,ParenthesisNode:y,SymbolNode:S}=t,b=new m(0),_=new m(1),w=new m(!0),x=new m(!1);function E(C){return Lr(C)&&["and","not","or"].includes(C.op)}var{hasProperty:T,isCommutative:D}=sf({FunctionNode:p,OperatorNode:v,SymbolNode:S});function M(C){var $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},O=$?$.context:void 0;if(T(C,"trivial",O)){if(gi(C)&&C.args.length===1)return M(C.args[0],$);var R=!1,L=0;if(C.forEach(de=>{++L,L===1&&(R=M(de,$))}),L===1)return R}var k=C;if(gi(k)){var V=TL(k.name);if(V){if(k.args.length>2&&T(k,"associative",O))for(;k.args.length>2;){var J=k.args.pop(),W=k.args.pop();k.args.push(new v(V,k.name,[J,W]))}k=new v(V,k.name,k.args)}else return new p(M(k.fn),k.args.map(de=>M(de,$)))}if(Lr(k)&&k.isUnary()){var Q=M(k.args[0],$);if(k.op==="~"&&Lr(Q)&&Q.isUnary()&&Q.op==="~"||k.op==="not"&&Lr(Q)&&Q.isUnary()&&Q.op==="not"&&E(Q.args[0]))return Q.args[0];var ie=!0;if(k.op==="-"&&Lr(Q)&&(Q.isBinary()&&Q.fn==="subtract"&&(k=new v("-","subtract",[Q.args[1],Q.args[0]]),ie=!1),Q.isUnary()&&Q.op==="-"))return Q.args[0];if(ie)return new v(k.op,k.fn,[Q])}if(Lr(k)&&k.isBinary()){var B=M(k.args[0],$),Z=M(k.args[1],$);if(k.op==="+"){if(Lt(B)&&n(B.value))return Z;if(Lt(Z)&&n(Z.value))return B;Lr(Z)&&Z.isUnary()&&Z.op==="-"&&(Z=Z.args[0],k=new v("-","subtract",[B,Z]))}if(k.op==="-")return Lr(Z)&&Z.isUnary()&&Z.op==="-"?M(new v("+","add",[B,Z.args[0]]),$):Lt(B)&&n(B.value)?M(new v("-","unaryMinus",[Z])):Lt(Z)&&n(Z.value)?B:new v(k.op,k.fn,[B,Z]);if(k.op==="*"){if(Lt(B)){if(n(B.value))return b;if(i(B.value,1))return Z}if(Lt(Z)){if(n(Z.value))return b;if(i(Z.value,1))return B;if(D(k,O))return new v(k.op,k.fn,[Z,B],k.implicit)}return new v(k.op,k.fn,[B,Z],k.implicit)}if(k.op==="/")return Lt(B)&&n(B.value)?b:Lt(Z)&&i(Z.value,1)?B:new v(k.op,k.fn,[B,Z]);if(k.op==="^"&&Lt(Z)){if(n(Z.value))return _;if(i(Z.value,1))return B}if(k.op==="and"){if(Lt(B))if(B.value){if(E(Z))return Z;if(Lt(Z))return Z.value?w:x}else return x;if(Lt(Z))if(Z.value){if(E(B))return B}else return x}if(k.op==="or"){if(Lt(B)){if(B.value)return w;if(E(Z))return Z}if(Lt(Z)){if(Z.value)return w;if(E(B))return B}}return new v(k.op,k.fn,[B,Z])}if(Lr(k))return new v(k.op,k.fn,k.args.map(de=>M(de,$)));if(ei(k))return new f(k.items.map(de=>M(de,$)));if(ji(k))return new c(M(k.object,$),M(k.index,$));if(uo(k))return new d(k.dimensions.map(de=>M(de,$)));if(Ka(k)){var q={};for(var xe in k.properties)q[xe]=M(k.properties[xe],$);return new h(q)}return k}return e(z5,{Node:M,"Node,Object":M})});var tue="resolve",rue=["typed","parse","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode"],q5=N(tue,rue,t=>{var{typed:e,parse:r,ConstantNode:i,FunctionNode:n,OperatorNode:o,ParenthesisNode:a}=t;function s(l,u){var c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Set;if(!u)return l;if(Nr(l)){if(c.has(l.name)){var f=Array.from(c).join(", ");throw new ReferenceError("recursive loop of variable definitions among {".concat(f,"}"))}var m=u.get(l.name);if(Yt(m)){var p=new Set(c);return p.add(l.name),s(m,u,p)}else return typeof m=="number"?r(String(m)):m!==void 0?new i(m):l}else if(Lr(l)){var d=l.args.map(function(v){return s(v,u,c)});return new o(l.op,l.fn,d,l.implicit)}else{if(ti(l))return new a(s(l.content,u,c));if(gi(l)){var h=l.args.map(function(v){return s(v,u,c)});return new n(l.name,h)}}return l.map(v=>s(v,u,c))}return e("resolve",{Node:s,"Node, Map | null | undefined":s,"Node, Object":(l,u)=>s(l,js(u)),"Array | Matrix":e.referToSelf(l=>u=>u.map(c=>l(c))),"Array | Matrix, null | undefined":e.referToSelf(l=>u=>u.map(c=>l(c))),"Array, Object":e.referTo("Array,Map",l=>(u,c)=>l(u,js(c))),"Matrix, Object":e.referTo("Matrix,Map",l=>(u,c)=>l(u,js(c))),"Array | Matrix, Map":e.referToSelf(l=>(u,c)=>u.map(f=>l(f,c)))})});var j5="symbolicEqual",nue=["parse","simplify","typed","OperatorNode"],Z5=N(j5,nue,t=>{var{parse:e,simplify:r,typed:i,OperatorNode:n}=t;function o(a,s){var l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},u=new n("-","subtract",[a,s]),c=r(u,{},l);return Lt(c)&&!c.value}return i(j5,{"Node, Node":o,"Node, Node, Object":o})});var G5="derivative",iue=["typed","config","parse","simplify","equal","isZero","numeric","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode","SymbolNode"],W5=N(G5,iue,t=>{var{typed:e,config:r,parse:i,simplify:n,equal:o,isZero:a,numeric:s,ConstantNode:l,FunctionNode:u,OperatorNode:c,ParenthesisNode:f,SymbolNode:m}=t;function p(_,w){var x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{simplify:!0},E=new Map,T=w.name;function D(C){var $=E.get(C);if($!==void 0)return $;var O=y(D,C,T);return E.set(C,O),O}var M=S(_,D);return x.simplify?n(M):M}function d(_){var w=i(_);if(!w.isSymbolNode)throw new TypeError("Invalid variable. "+"Cannot parse ".concat(JSON.stringify(_)," into a variable in function derivative"));return w}var h=e(G5,{"Node, SymbolNode":p,"Node, SymbolNode, Object":p,"Node, string":(_,w)=>p(_,d(w)),"Node, string, Object":(_,w,x)=>p(_,d(w),x)});h._simplify=!0,h.toTex=function(_){return v.apply(null,_.args)};var v=e("_derivTex",{"Node, SymbolNode":function(w,x){return Lt(w)&&ir(w.value)==="string"?v(i(w.value).toString(),x.toString(),1):v(w.toTex(),x.toString(),1)},"Node, ConstantNode":function(w,x){if(ir(x.value)==="string")return v(w,i(x.value));throw new Error("The second parameter to 'derivative' is a non-string constant")},"Node, SymbolNode, ConstantNode":function(w,x,E){return v(w.toString(),x.name,E.value)},"string, string, number":function(w,x,E){var T;return E===1?T="{d\\over d"+x+"}":T="{d^{"+E+"}\\over d"+x+"^{"+E+"}}",T+"\\left[".concat(w,"\\right]")}}),y=e("_isConst",{"function, ConstantNode, string":function(){return!0},"function, SymbolNode, string":function(w,x,E){return x.name!==E},"function, ParenthesisNode, string":function(w,x,E){return w(x.content,E)},"function, FunctionAssignmentNode, string":function(w,x,E){return x.params.includes(E)?w(x.expr,E):!0},"function, FunctionNode | OperatorNode, string":function(w,x,E){return x.args.every(T=>w(T,E))}}),S=e("_derivative",{"ConstantNode, function":function(){return b(0)},"SymbolNode, function":function(w,x){return x(w)?b(0):b(1)},"ParenthesisNode, function":function(w,x){return new f(S(w.content,x))},"FunctionAssignmentNode, function":function(w,x){return x(w)?b(0):S(w.expr,x)},"FunctionNode, function":function(w,x){if(x(w))return b(0);var E=w.args[0],T,D=!1,M=!1,C;switch(w.name){case"cbrt":D=!0,C=new c("*","multiply",[b(3),new c("^","pow",[E,new c("/","divide",[b(2),b(3)])])]);break;case"sqrt":case"nthRoot":if(w.args.length===1)D=!0,C=new c("*","multiply",[b(2),new u("sqrt",[E])]);else if(w.args.length===2)return T=new c("/","divide",[b(1),w.args[1]]),S(new c("^","pow",[E,T]),x);break;case"log10":T=b(10);case"log":if(!T&&w.args.length===1)C=E.clone(),D=!0;else if(w.args.length===1&&T||w.args.length===2&&x(w.args[1]))C=new c("*","multiply",[E.clone(),new u("log",[T||w.args[1]])]),D=!0;else if(w.args.length===2)return S(new c("/","divide",[new u("log",[E]),new u("log",[w.args[1]])]),x);break;case"pow":if(w.args.length===2)return S(new c("^","pow",[E,w.args[1]]),x);break;case"exp":C=new u("exp",[E.clone()]);break;case"sin":C=new u("cos",[E.clone()]);break;case"cos":C=new c("-","unaryMinus",[new u("sin",[E.clone()])]);break;case"tan":C=new c("^","pow",[new u("sec",[E.clone()]),b(2)]);break;case"sec":C=new c("*","multiply",[w,new u("tan",[E.clone()])]);break;case"csc":M=!0,C=new c("*","multiply",[w,new u("cot",[E.clone()])]);break;case"cot":M=!0,C=new c("^","pow",[new u("csc",[E.clone()]),b(2)]);break;case"asin":D=!0,C=new u("sqrt",[new c("-","subtract",[b(1),new c("^","pow",[E.clone(),b(2)])])]);break;case"acos":D=!0,M=!0,C=new u("sqrt",[new c("-","subtract",[b(1),new c("^","pow",[E.clone(),b(2)])])]);break;case"atan":D=!0,C=new c("+","add",[new c("^","pow",[E.clone(),b(2)]),b(1)]);break;case"asec":D=!0,C=new c("*","multiply",[new u("abs",[E.clone()]),new u("sqrt",[new c("-","subtract",[new c("^","pow",[E.clone(),b(2)]),b(1)])])]);break;case"acsc":D=!0,M=!0,C=new c("*","multiply",[new u("abs",[E.clone()]),new u("sqrt",[new c("-","subtract",[new c("^","pow",[E.clone(),b(2)]),b(1)])])]);break;case"acot":D=!0,M=!0,C=new c("+","add",[new c("^","pow",[E.clone(),b(2)]),b(1)]);break;case"sinh":C=new u("cosh",[E.clone()]);break;case"cosh":C=new u("sinh",[E.clone()]);break;case"tanh":C=new c("^","pow",[new u("sech",[E.clone()]),b(2)]);break;case"sech":M=!0,C=new c("*","multiply",[w,new u("tanh",[E.clone()])]);break;case"csch":M=!0,C=new c("*","multiply",[w,new u("coth",[E.clone()])]);break;case"coth":M=!0,C=new c("^","pow",[new u("csch",[E.clone()]),b(2)]);break;case"asinh":D=!0,C=new u("sqrt",[new c("+","add",[new c("^","pow",[E.clone(),b(2)]),b(1)])]);break;case"acosh":D=!0,C=new u("sqrt",[new c("-","subtract",[new c("^","pow",[E.clone(),b(2)]),b(1)])]);break;case"atanh":D=!0,C=new c("-","subtract",[b(1),new c("^","pow",[E.clone(),b(2)])]);break;case"asech":D=!0,M=!0,C=new c("*","multiply",[E.clone(),new u("sqrt",[new c("-","subtract",[b(1),new c("^","pow",[E.clone(),b(2)])])])]);break;case"acsch":D=!0,M=!0,C=new c("*","multiply",[new u("abs",[E.clone()]),new u("sqrt",[new c("+","add",[new c("^","pow",[E.clone(),b(2)]),b(1)])])]);break;case"acoth":D=!0,M=!0,C=new c("-","subtract",[b(1),new c("^","pow",[E.clone(),b(2)])]);break;case"abs":C=new c("/","divide",[new u(new m("abs"),[E.clone()]),E.clone()]);break;case"gamma":default:throw new Error('Cannot process function "'+w.name+'" in derivative: the function is not supported, undefined, or the number of arguments passed to it are not supported')}var $,O;D?($="/",O="divide"):($="*",O="multiply");var R=S(E,x);return M&&(R=new c("-","unaryMinus",[R])),new c($,O,[R,C])},"OperatorNode, function":function(w,x){if(x(w))return b(0);if(w.op==="+")return new c(w.op,w.fn,w.args.map(function(k){return S(k,x)}));if(w.op==="-"){if(w.isUnary())return new c(w.op,w.fn,[S(w.args[0],x)]);if(w.isBinary())return new c(w.op,w.fn,[S(w.args[0],x),S(w.args[1],x)])}if(w.op==="*"){var E=w.args.filter(function(k){return x(k)});if(E.length>0){var T=w.args.filter(function(k){return!x(k)}),D=T.length===1?T[0]:new c("*","multiply",T),M=E.concat(S(D,x));return new c("*","multiply",M)}return new c("+","add",w.args.map(function(k){return new c("*","multiply",w.args.map(function(V){return V===k?S(V,x):V.clone()}))}))}if(w.op==="/"&&w.isBinary()){var C=w.args[0],$=w.args[1];return x($)?new c("/","divide",[S(C,x),$]):x(C)?new c("*","multiply",[new c("-","unaryMinus",[C]),new c("/","divide",[S($,x),new c("^","pow",[$.clone(),b(2)])])]):new c("/","divide",[new c("-","subtract",[new c("*","multiply",[S(C,x),$.clone()]),new c("*","multiply",[C.clone(),S($,x)])]),new c("^","pow",[$.clone(),b(2)])])}if(w.op==="^"&&w.isBinary()){var O=w.args[0],R=w.args[1];if(x(O))return Lt(O)&&(a(O.value)||o(O.value,1))?b(0):new c("*","multiply",[w,new c("*","multiply",[new u("log",[O.clone()]),S(R.clone(),x)])]);if(x(R)){if(Lt(R)){if(a(R.value))return b(0);if(o(R.value,1))return S(O,x)}var L=new c("^","pow",[O.clone(),new c("-","subtract",[R,b(1)])]);return new c("*","multiply",[R.clone(),new c("*","multiply",[S(O,x),L])])}return new c("*","multiply",[new c("^","pow",[O.clone(),R.clone()]),new c("+","add",[new c("*","multiply",[S(O,x),new c("/","divide",[R.clone(),O.clone()])]),new c("*","multiply",[S(R,x),new u("log",[O.clone()])])])])}throw new Error('Cannot process operator "'+w.op+'" in derivative: the operator is not supported, undefined, or the number of arguments passed to it are not supported')}});function b(_,w){return new l(s(_,w||Mi(String(_),r)))}return h});var H5="rationalize",oue=["config","typed","equal","isZero","add","subtract","multiply","divide","pow","parse","simplifyConstant","simplifyCore","simplify","?bignumber","?fraction","mathWithTransform","matrix","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","SymbolNode","ParenthesisNode"],Y5=N(H5,oue,t=>{var{config:e,typed:r,equal:i,isZero:n,add:o,subtract:a,multiply:s,divide:l,pow:u,parse:c,simplifyConstant:f,simplifyCore:m,simplify:p,fraction:d,bignumber:h,mathWithTransform:v,matrix:y,AccessorNode:S,ArrayNode:b,ConstantNode:_,FunctionNode:w,IndexNode:x,ObjectNode:E,OperatorNode:T,SymbolNode:D,ParenthesisNode:M}=t;function C(k){var V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},J=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,W=O(),Q=$(k,V,!0,W.firstRules),ie=Q.variables.length,B={exactFractions:!1},Z={exactFractions:!0};if(k=Q.expression,ie>=1){k=R(k);var q,xe,de=!0,be=!1;k=p(k,W.firstRules,{},B);for(var G;xe=de?W.distrDivRules:W.sucDivRules,k=p(k,xe,{},Z),de=!de,G=k.toString(),G!==q;)be=!0,q=G;be&&(k=p(k,W.firstRulesAgain,{},B)),k=p(k,W.finalRules,{},B)}var K=[],re={};return k.type==="OperatorNode"&&k.isBinary()&&k.op==="/"?(ie===1&&(k.args[0]=L(k.args[0],K),k.args[1]=L(k.args[1])),J&&(re.numerator=k.args[0],re.denominator=k.args[1])):(ie===1&&(k=L(k,K)),J&&(re.numerator=k,re.denominator=null)),J?(re.coefficients=K,re.variables=Q.variables,re.expression=k,re):k}return r(H5,{Node:C,"Node, boolean":(k,V)=>C(k,{},V),"Node, Object":C,"Node, Object, boolean":C});function $(k,V,J,W){var Q=[],ie=p(k,W,V,{exactFractions:!1});J=!!J;var B="+-*"+(J?"/":"");q(ie);var Z={};return Z.expression=ie,Z.variables=Q,Z;function q(xe){var de=xe.type;if(de==="FunctionNode")throw new Error("There is an unsolved function call");if(de==="OperatorNode")if(xe.op==="^"){if(xe.args[1].type!=="ConstantNode"||!Ge(parseFloat(xe.args[1].value)))throw new Error("There is a non-integer exponent");q(xe.args[0])}else{if(!B.includes(xe.op))throw new Error("Operator "+xe.op+" invalid in polynomial expression");for(var be=0;be1;if(W==="OperatorNode"&&k.isBinary()){var ie=!1,B;if(k.op==="^"&&(k.args[0].type==="ParenthesisNode"||k.args[0].type==="OperatorNode")&&k.args[1].type==="ConstantNode"&&(B=parseFloat(k.args[1].value),ie=B>=2&&Ge(B)),ie){if(B>2){var Z=k.args[0],q=new T("^","pow",[k.args[0].cloneDeep(),new _(B-1)]);k=new T("*","multiply",[Z,q])}else k=new T("*","multiply",[k.args[0],k.args[0].cloneDeep()]);Q&&(J==="content"?V.content=k:V.args[J]=k)}}if(W==="ParenthesisNode")R(k.content,k,"content");else if(W!=="ConstantNode"&&W!=="SymbolNode")for(var xe=0;xe=0;Z--)if(V[Z]!==0){var q=new _(ie?V[Z]:Math.abs(V[Z])),xe=V[Z]<0?"-":"+";if(Z>0){var de=new D(Q);if(Z>1){var be=new _(Z);de=new T("^","pow",[de,be])}V[Z]===-1&&ie?q=new T("-","unaryMinus",[de]):Math.abs(V[Z])===1?q=de:q=new T("*","multiply",[q,de])}ie?B=q:xe==="+"?B=new T("+","add",[B,q]):B=new T("-","subtract",[B,q]),ie=!1}if(ie)return new _(0);return B;function G(K,re,ae){var le=K.type;if(le==="FunctionNode")throw new Error("There is an unsolved function call");if(le==="OperatorNode"){if(!"+-*^".includes(K.op))throw new Error("Operator "+K.op+" invalid");if(re!==null){if((K.fn==="unaryMinus"||K.fn==="pow")&&re.fn!=="add"&&re.fn!=="subtract"&&re.fn!=="multiply")throw new Error("Invalid "+K.op+" placing");if((K.fn==="subtract"||K.fn==="add"||K.fn==="multiply")&&re.fn!=="add"&&re.fn!=="subtract")throw new Error("Invalid "+K.op+" placing");if((K.fn==="subtract"||K.fn==="add"||K.fn==="unaryMinus")&&ae.noFil!==0)throw new Error("Invalid "+K.op+" placing")}(K.op==="^"||K.op==="*")&&(ae.fire=K.op);for(var Se=0;SeW&&(V[_e]=0),V[_e]+=ae.cte*(ae.oper==="+"?1:-1),W=Math.max(_e,W);return}ae.cte=_e,ae.fire===""&&(V[0]+=ae.cte*(ae.oper==="+"?1:-1))}else throw new Error("Type "+le+" is not allowed")}}});var J5="zpk2tf",aue=["typed","add","multiply","Complex","number"],X5=N(J5,aue,t=>{var{typed:e,add:r,multiply:i,Complex:n,number:o}=t;return e(J5,{"Array,Array,number":function(u,c,f){return a(u,c,f)},"Array,Array":function(u,c){return a(u,c,1)},"Matrix,Matrix,number":function(u,c,f){return a(u.valueOf(),c.valueOf(),f)},"Matrix,Matrix":function(u,c){return a(u.valueOf(),c.valueOf(),1)}});function a(l,u,c){l.some(S=>S.type==="BigNumber")&&(l=l.map(S=>o(S))),u.some(S=>S.type==="BigNumber")&&(u=u.map(S=>o(S)));for(var f=[n(1,0)],m=[n(1,0)],p=0;p=0&&f-m{var{typed:e,add:r,multiply:i,Complex:n,divide:o,matrix:a}=t;return e(K5,{"Array, Array":function(c,f){var m=l(512);return s(c,f,m)},"Array, Array, Array":function(c,f,m){return s(c,f,m)},"Array, Array, number":function(c,f,m){if(m<0)throw new Error("w must be a positive number");var p=l(m);return s(c,f,p)},"Matrix, Matrix":function(c,f){var m=l(512),{w:p,h:d}=s(c.valueOf(),f.valueOf(),m);return{w:a(p),h:a(d)}},"Matrix, Matrix, Matrix":function(c,f,m){var{h:p}=s(c.valueOf(),f.valueOf(),m.valueOf());return{h:a(p),w:a(m)}},"Matrix, Matrix, number":function(c,f,m){if(m<0)throw new Error("w must be a positive number");var p=l(m),{h:d}=s(c.valueOf(),f.valueOf(),p);return{h:a(d),w:a(p)}}});function s(u,c,f){for(var m=[],p=[],d=0;d{var{classes:e}=t;return function(i,n){var o=e[n&&n.mathjs];return o&&typeof o.fromJSON=="function"?o.fromJSON(n):n}});var cue="replacer",fue=[],t8=N(cue,fue,()=>function(e,r){return typeof r=="number"&&(!isFinite(r)||isNaN(r))?{mathjs:"number",value:String(r)}:typeof r=="bigint"?{mathjs:"bigint",value:String(r)}:r});var r8="14.6.0";var n8=N("true",[],()=>!0),i8=N("false",[],()=>!1),o8=N("null",[],()=>null),a8=Oo("Infinity",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r(1/0):1/0}),s8=Oo("NaN",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r(NaN):NaN}),u8=Oo("pi",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?um(r):fk}),l8=Oo("tau",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?jO(r):pk}),c8=Oo("e",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?VO(r):mk}),f8=Oo("phi",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?qO(r):dk}),p8=Oo("LN2",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r(2).ln():Math.LN2}),m8=Oo("LN10",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r(10).ln():Math.LN10}),d8=Oo("LOG2E",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r(1).div(new r(2).ln()):Math.LOG2E}),h8=Oo("LOG10E",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r(1).div(new r(10).ln()):Math.LOG10E}),g8=Oo("SQRT1_2",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r("0.5").sqrt():Math.SQRT1_2}),v8=Oo("SQRT2",["config","?BigNumber"],t=>{var{config:e,BigNumber:r}=t;return e.number==="BigNumber"?new r(2).sqrt():Math.SQRT2}),y8=Oo("i",["Complex"],t=>{var{Complex:e}=t;return e.I}),b8=N("PI",["pi"],t=>{var{pi:e}=t;return e}),x8=N("E",["e"],t=>{var{e}=t;return e}),_8=N("version",[],()=>r8);function Oo(t,e,r){return N(t,e,r,{recreateOnConfigChange:!0})}var w8=Qt("speedOfLight","299792458","m s^-1"),S8=Qt("gravitationConstant","6.67430e-11","m^3 kg^-1 s^-2"),D8=Qt("planckConstant","6.62607015e-34","J s"),E8=Qt("reducedPlanckConstant","1.0545718176461565e-34","J s"),A8=Qt("magneticConstant","1.25663706212e-6","N A^-2"),T8=Qt("electricConstant","8.8541878128e-12","F m^-1"),N8=Qt("vacuumImpedance","376.730313667","ohm"),M8=Qt("coulomb","8.987551792261171e9","N m^2 C^-2"),C8=Qt("coulombConstant","8.987551792261171e9","N m^2 C^-2"),$8=Qt("elementaryCharge","1.602176634e-19","C"),I8=Qt("bohrMagneton","9.2740100783e-24","J T^-1"),F8=Qt("conductanceQuantum","7.748091729863649e-5","S"),k8=Qt("inverseConductanceQuantum","12906.403729652257","ohm"),P8=Qt("magneticFluxQuantum","2.0678338484619295e-15","Wb"),B8=Qt("nuclearMagneton","5.0507837461e-27","J T^-1"),O8=Qt("klitzing","25812.807459304513","ohm");var R8=Qt("bohrRadius","5.29177210903e-11","m"),L8=Qt("classicalElectronRadius","2.8179403262e-15","m"),U8=Qt("electronMass","9.1093837015e-31","kg"),z8=Qt("fermiCoupling","1.1663787e-5","GeV^-2"),V8=_b("fineStructure",.0072973525693),q8=Qt("hartreeEnergy","4.3597447222071e-18","J"),j8=Qt("protonMass","1.67262192369e-27","kg"),Z8=Qt("deuteronMass","3.3435830926e-27","kg"),G8=Qt("neutronMass","1.6749271613e-27","kg"),W8=Qt("quantumOfCirculation","3.6369475516e-4","m^2 s^-1"),H8=Qt("rydberg","10973731.568160","m^-1"),Y8=Qt("thomsonCrossSection","6.6524587321e-29","m^2"),J8=_b("weakMixingAngle",.2229),X8=_b("efimovFactor",22.7),K8=Qt("atomicMass","1.66053906660e-27","kg"),Q8=Qt("avogadro","6.02214076e23","mol^-1"),e9=Qt("boltzmann","1.380649e-23","J K^-1"),t9=Qt("faraday","96485.33212331001","C mol^-1"),r9=Qt("firstRadiation","3.7417718521927573e-16","W m^2"),n9=Qt("loschmidt","2.686780111798444e25","m^-3"),i9=Qt("gasConstant","8.31446261815324","J K^-1 mol^-1"),o9=Qt("molarPlanckConstant","3.990312712893431e-10","J s mol^-1"),a9=Qt("molarVolume","0.022413969545014137","m^3 mol^-1"),s9=_b("sackurTetrode",-1.16487052358),u9=Qt("secondRadiation","0.014387768775039337","m K"),l9=Qt("stefanBoltzmann","5.67037441918443e-8","W m^-2 K^-4"),c9=Qt("wienDisplacement","2.897771955e-3","m K"),f9=Qt("molarMass","0.99999999965e-3","kg mol^-1"),p9=Qt("molarMassC12","11.9999999958e-3","kg mol^-1"),m9=Qt("gravity","9.80665","m s^-2"),d9=Qt("planckLength","1.616255e-35","m"),h9=Qt("planckMass","2.176435e-8","kg"),g9=Qt("planckTime","5.391245e-44","s"),v9=Qt("planckCharge","1.87554603778e-18","C"),y9=Qt("planckTemperature","1.416785e+32","K");function Qt(t,e,r){var i=["config","Unit","BigNumber"];return N(t,i,n=>{var{config:o,Unit:a,BigNumber:s}=n,l=o.number==="BigNumber"?new s(e):parseFloat(e),u=new a(l,r);return u.fixPrefix=!0,u})}function _b(t,e){var r=["config","BigNumber"];return N(t,r,i=>{var{config:n,BigNumber:o}=i;return n.number==="BigNumber"?new o(e):e})}function b9(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function pue(t){for(var e=1;e{var{typed:e,isInteger:r}=t,i=sm({typed:e,isInteger:r});return e("mapSlices",{"...any":function(o){var a=o[1];Et(a)?o[1]=a-1:mt(a)&&(o[1]=a.minus(1));try{return i.apply(null,o)}catch(s){throw qr(s)}}})},pue({isTransformFunction:!0},sm.meta));var hue="column",gue=["typed","Index","matrix","range"],_9=N(hue,gue,t=>{var{typed:e,Index:r,matrix:i,range:n}=t,o=wy({typed:e,Index:r,matrix:i,range:n});return e("column",{"...any":function(s){var l=s.length-1,u=s[l];Et(u)&&(s[l]=u-1);try{return o.apply(null,s)}catch(c){throw qr(c)}}})},{isTransformFunction:!0});function uf(t,e,r){var i=t.filter(function(l){return Nr(l)&&!(l.name in e)&&!r.has(l.name)})[0];if(!i)throw new Error('No undefined variable found in inline expression "'+t+'"');var n=i.name,o=new Map,a=new Bc(r,o,new Set([n])),s=t.compile();return function(u){return o.set(n,u),s.evaluate(a)}}var vue="transformCallback",yue=["typed"],lf=N(vue,yue,t=>{var{typed:e}=t;return function(i,n){return e.isTypedFunction(i)?r(i,n):w9(i,i.length,n)};function r(i,n){var o=Object.fromEntries(Object.entries(i.signatures).map(a=>{var[s,l]=a,u=s.split(",").length;return e.isTypedFunction(l)?[s,r(l,n)]:[s,w9(l,u,n)]}));return typeof i.name=="string"?e(i.name,o):e(o)}});function w9(t,e,r){return e===r?t:e===r+1?function(){for(var i=arguments.length,n=new Array(i),o=0;or+1?function(){for(var i=arguments.length,n=new Array(i),o=0;oe+1)}var bue="filter",xue=["typed"],D9=N(bue,xue,t=>{var{typed:e}=t;function r(n,o,a){var s=Sy({typed:e}),l=lf({typed:e});if(n.length===0)return s();var u=n[0];if(n.length===1)return s(u);var c=n.length-1,f=n[c];return u&&(u=i(u,a)),f&&(Nr(f)||ta(f)?f=i(f,a):f=uf(f,o,a)),s(u,l(f,c))}r.rawArgs=!0;function i(n,o){return n.compile().evaluate(o)}return r},{isTransformFunction:!0});var _ue="forEach",wue=["typed"],E9=N(_ue,wue,t=>{var{typed:e}=t,r=Dy({typed:e}),i=lf({typed:e});function n(a,s,l){if(a.length===0)return r();var u=a[0];if(a.length===1)return r(u);var c=a.length-1,f=a[c];return u&&(u=o(u,l)),f&&(Nr(f)||ta(f)?f=o(f,l):f=uf(f,s,l)),r(u,i(f,c))}n.rawArgs=!0;function o(a,s){return a.compile().evaluate(s)}return n},{isTransformFunction:!0});var Sue="index",Due=["Index","getMatrixDataType"],A9=N(Sue,Due,t=>{var{Index:e,getMatrixDataType:r}=t;return function(){for(var n=[],o=0,a=arguments.length;o0?0:2;else if(s&&s.isSet===!0)s=s.map(function(u){return u-1});else if(sr(s)||Je(s))r(s)!=="boolean"&&(s=s.map(function(u){return u-1}));else if(Et(s)||Ja(s))s--;else if(mt(s))s=s.toNumber()-1;else if(typeof s!="string")throw new TypeError("Dimension must be an Array, Matrix, number, bigint, string, or Range");n[o]=s}var l=new e;return e.apply(l,n),l}},{isTransformFunction:!0});var Eue="map",Aue=["typed"],T9=N(Eue,Aue,t=>{var{typed:e}=t,r=Ey({typed:e}),i=lf({typed:e});function n(o,a,s){if(o.length===0)return r();if(o.length===1)return r(o[0]);var l=o.length-1,u=o.slice(0,l),c=o[l];return u=u.map(m=>f(m,s)),c&&(Nr(c)||ta(c)?c=f(c,s):c=uf(c,a,s)),r(...u,i(c,l));function f(m,p){return m.compile().evaluate(p)}}return n.rawArgs=!0,n},{isTransformFunction:!0});function N9(t){return Et(t)?t-1:mt(t)?t.minus(1):t}function M9(t){return Et(t)||mt(t)}function Fi(t){if(t.length===2&&un(t[0])){t=t.slice();var e=t[1];M9(e)&&(t[1]=N9(e))}return t}var Tue="max",Nue=["typed","config","numeric","larger","isNaN"],C9=N(Tue,Nue,t=>{var{typed:e,config:r,numeric:i,larger:n,isNaN:o}=t,a=Vy({typed:e,config:r,numeric:i,larger:n,isNaN:o});return e("max",{"...any":function(l){l=Fi(l);try{return a.apply(null,l)}catch(u){throw qr(u)}}})},{isTransformFunction:!0});var Mue="mean",Cue=["typed","add","divide"],$9=N(Mue,Cue,t=>{var{typed:e,add:r,divide:i}=t,n=gb({typed:e,add:r,divide:i});return e("mean",{"...any":function(a){a=Fi(a);try{return n.apply(null,a)}catch(s){throw qr(s)}}})},{isTransformFunction:!0});var $ue="min",Iue=["typed","config","numeric","smaller","isNaN"],I9=N($ue,Iue,t=>{var{typed:e,config:r,numeric:i,smaller:n,isNaN:o}=t,a=qy({typed:e,config:r,numeric:i,smaller:n,isNaN:o});return e("min",{"...any":function(l){l=Fi(l);try{return a.apply(null,l)}catch(u){throw qr(u)}}})},{isTransformFunction:!0});var Fue="range",kue=["typed","config","?matrix","?bignumber","smaller","smallerEq","larger","largerEq","add","isPositive"],F9=N(Fue,kue,t=>{var{typed:e,config:r,matrix:i,bignumber:n,smaller:o,smallerEq:a,larger:s,largerEq:l,add:u,isPositive:c}=t,f=My({typed:e,config:r,matrix:i,bignumber:n,smaller:o,smallerEq:a,larger:s,largerEq:l,add:u,isPositive:c});return e("range",{"...any":function(p){var d=p.length-1,h=p[d];return typeof h!="boolean"&&p.push(!0),f.apply(null,p)}})},{isTransformFunction:!0});var Pue="row",Bue=["typed","Index","matrix","range"],k9=N(Pue,Bue,t=>{var{typed:e,Index:r,matrix:i,range:n}=t,o=Cy({typed:e,Index:r,matrix:i,range:n});return e("row",{"...any":function(s){var l=s.length-1,u=s[l];Et(u)&&(s[l]=u-1);try{return o.apply(null,s)}catch(c){throw qr(c)}}})},{isTransformFunction:!0});var Oue="subset",Rue=["typed","matrix","zeros","add"],P9=N(Oue,Rue,t=>{var{typed:e,matrix:r,zeros:i,add:n}=t,o=$y({typed:e,matrix:r,zeros:i,add:n});return e("subset",{"...any":function(s){try{return o.apply(null,s)}catch(l){throw qr(l)}}})},{isTransformFunction:!0});var Lue="concat",Uue=["typed","matrix","isInteger"],B9=N(Lue,Uue,t=>{var{typed:e,matrix:r,isInteger:i}=t,n=_y({typed:e,matrix:r,isInteger:i});return e("concat",{"...any":function(a){var s=a.length-1,l=a[s];Et(l)?a[s]=l-1:mt(l)&&(a[s]=l.minus(1));try{return n.apply(null,a)}catch(u){throw qr(u)}}})},{isTransformFunction:!0});var O9="diff",zue=["typed","matrix","subtract","number","bignumber"],R9=N(O9,zue,t=>{var{typed:e,matrix:r,subtract:i,number:n,bignumber:o}=t,a=Ay({typed:e,matrix:r,subtract:i,number:n,bignumber:o});return e(O9,{"...any":function(l){l=Fi(l);try{return a.apply(null,l)}catch(u){throw qr(u)}}})},{isTransformFunction:!0});var Vue="std",que=["typed","map","sqrt","variance"],L9=N(Vue,que,t=>{var{typed:e,map:r,sqrt:i,variance:n}=t,o=bb({typed:e,map:r,sqrt:i,variance:n});return e("std",{"...any":function(s){s=Fi(s);try{return o.apply(null,s)}catch(l){throw qr(l)}}})},{isTransformFunction:!0});var U9="sum",jue=["typed","config","add","numeric"],z9=N(U9,jue,t=>{var{typed:e,config:r,add:i,numeric:n}=t,o=mb({typed:e,config:r,add:i,numeric:n});return e(U9,{"...any":function(s){s=Fi(s);try{return o.apply(null,s)}catch(l){throw qr(l)}}})},{isTransformFunction:!0});var Zue="quantileSeq",Gue=["typed","bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger","mapSlices"],V9=N(Zue,Gue,t=>{var{typed:e,bignumber:r,add:i,subtract:n,divide:o,multiply:a,partitionSelect:s,compare:l,isInteger:u,smaller:c,smallerEq:f,larger:m,mapSlices:p}=t,d=yb({typed:e,bignumber:r,add:i,subtract:n,divide:o,multiply:a,partitionSelect:s,compare:l,isInteger:u,smaller:c,smallerEq:f,larger:m,mapSlices:p});return e("quantileSeq",{"Array | Matrix, number | BigNumber":d,"Array | Matrix, number | BigNumber, number":(v,y,S)=>d(v,y,h(S)),"Array | Matrix, number | BigNumber, boolean":d,"Array | Matrix, number | BigNumber, boolean, number":(v,y,S,b)=>d(v,y,S,h(b)),"Array | Matrix, Array | Matrix":d,"Array | Matrix, Array | Matrix, number":(v,y,S)=>d(v,y,h(S)),"Array | Matrix, Array | Matrix, boolean":d,"Array | Matrix, Array | Matrix, boolean, number":(v,y,S,b)=>d(v,y,S,h(b))});function h(v){return Fi([[],v])[1]}},{isTransformFunction:!0});var q9="cumsum",Wue=["typed","add","unaryPlus"],j9=N(q9,Wue,t=>{var{typed:e,add:r,unaryPlus:i}=t,n=hb({typed:e,add:r,unaryPlus:i});return e(q9,{"...any":function(a){if(a.length===2&&un(a[0])){var s=a[1];Et(s)?a[1]=s-1:mt(s)&&(a[1]=s.minus(1))}try{return n.apply(null,a)}catch(l){throw qr(l)}}})},{isTransformFunction:!0});var Z9="variance",Hue=["typed","add","subtract","multiply","divide","mapSlices","isNaN"],G9=N(Z9,Hue,t=>{var{typed:e,add:r,subtract:i,multiply:n,divide:o,mapSlices:a,isNaN:s}=t,l=vb({typed:e,add:r,subtract:i,multiply:n,divide:o,mapSlices:a,isNaN:s});return e(Z9,{"...any":function(c){c=Fi(c);try{return l.apply(null,c)}catch(f){throw qr(f)}}})},{isTransformFunction:!0});var W9="print",Yue=["typed","matrix","zeros","add"],H9=N(W9,Yue,t=>{var{typed:e,matrix:r,zeros:i,add:n}=t,o=Fy({typed:e,matrix:r,zeros:i,add:n});return e(W9,{"string, Object | Array":function(l,u){return o(a(l),u)},"string, Object | Array, number | Object":function(l,u,c){return o(a(l),u,c)}});function a(s){return s.replace(Iy,l=>{var u=l.slice(1).split("."),c=u.map(function(f){return!isNaN(f)&&f.length>0?parseInt(f)-1:f});return"$"+c.join(".")})}},{isTransformFunction:!0});var Jue="and",Xue=["typed","matrix","zeros","add","equalScalar","not","concat"],Y9=N(Jue,Xue,t=>{var{typed:e,matrix:r,equalScalar:i,zeros:n,not:o,concat:a}=t,s=ky({typed:e,matrix:r,equalScalar:i,zeros:n,not:o,concat:a});function l(u,c,f){var m=u[0].compile().evaluate(f);if(!un(m)&&!s(m,!0))return!1;var p=u[1].compile().evaluate(f);return s(m,p)}return l.rawArgs=!0,l},{isTransformFunction:!0});var Kue="or",Que=["typed","matrix","equalScalar","DenseMatrix","concat"],J9=N(Kue,Que,t=>{var{typed:e,matrix:r,equalScalar:i,DenseMatrix:n,concat:o}=t,a=xy({typed:e,matrix:r,equalScalar:i,DenseMatrix:n,concat:o});function s(l,u,c){var f=l[0].compile().evaluate(c);if(!un(f)&&a(f,!1))return!0;var m=l[1].compile().evaluate(c);return a(f,m)}return s.rawArgs=!0,s},{isTransformFunction:!0});var ele="bitAnd",tle=["typed","matrix","zeros","add","equalScalar","not","concat"],X9=N(ele,tle,t=>{var{typed:e,matrix:r,equalScalar:i,zeros:n,not:o,concat:a}=t,s=yy({typed:e,matrix:r,equalScalar:i,zeros:n,not:o,concat:a});function l(u,c,f){var m=u[0].compile().evaluate(f);if(!un(m)){if(isNaN(m))return NaN;if(m===0||m===!1)return 0}var p=u[1].compile().evaluate(f);return s(m,p)}return l.rawArgs=!0,l},{isTransformFunction:!0});var rle="bitOr",nle=["typed","matrix","equalScalar","DenseMatrix","concat"],K9=N(rle,nle,t=>{var{typed:e,matrix:r,equalScalar:i,DenseMatrix:n,concat:o}=t,a=by({typed:e,matrix:r,equalScalar:i,DenseMatrix:n,concat:o});function s(l,u,c){var f=l[0].compile().evaluate(c);if(!un(f)){if(isNaN(f))return NaN;if(f===-1)return-1;if(f===!0)return 1}var m=l[1].compile().evaluate(c);return a(f,m)}return s.rawArgs=!0,s},{isTransformFunction:!0});var uA=sA;var nq=Ar(Lv(),1);var eq=Ar(Q9(),1);function tq(t){var e=new eq.default;return t.on=e.on.bind(e),t.off=e.off.bind(e),t.once=e.once.bind(e),t.emit=e.emit.bind(e),t}function rq(t,e,r,i){function n(y,S){var b=arguments.length;if(b!==1&&b!==2)throw new Bo("import",b,1,2);S||(S={});function _(T,D,M){if(Array.isArray(D))D.forEach(O=>_(T,O));else if($o(D)||f(D))for(var C in D)rt(D,C)&&_(T,D[C],C);else if(gl(D)||M!==void 0){var $=gl(D)?h(D)?D.fn+".transform":D.fn:M;if(rt(T,$)&&T[$]!==D&&!S.silent)throw new Error('Cannot import "'+$+'" twice');T[$]=D}else if(!S.silent)throw new TypeError("Factory, Object, or Array expected")}var w={};_(w,y);for(var x in w)if(rt(w,x)){var E=w[x];if(gl(E))u(E,S);else if(c(E))o(x,E,S);else if(!S.silent)throw new TypeError("Factory, Object, or Array expected")}}function o(y,S,b){var _;if(b.wrap&&typeof S=="function"&&(S=l(S)),m(S)&&(S=t(y,{[S.signature]:S})),t.isTypedFunction(r[y])&&t.isTypedFunction(S)){b.override?S=t(y,S.signatures):S=t(r[y],S),r[y]=S,delete i[y],a(y,S),r.emit("import",y,function(){return S});return}var w=r[y]!==void 0,x=(_=r.Unit)===null||_===void 0?void 0:_.isValuelessUnit(y);if(!w&&!x||b.override){r[y]=S,delete i[y],a(y,S),r.emit("import",y,function(){return S});return}if(!b.silent)throw new Error('Cannot import "'+y+'": already exists')}function a(y,S){S&&typeof S.transform=="function"?(r.expression.transform[y]=S.transform,p(y)&&(r.expression.mathWithTransform[y]=S.transform)):(delete r.expression.transform[y],p(y)&&(r.expression.mathWithTransform[y]=S))}function s(y){delete r.expression.transform[y],p(y)?r.expression.mathWithTransform[y]=r[y]:delete r.expression.mathWithTransform[y]}function l(y){var S=function(){for(var _=[],w=0,x=arguments.length;w2&&arguments[2]!==void 0?arguments[2]:y.fn;if(w.includes("."))throw new Error("Factory name should not contain a nested path. Name: "+JSON.stringify(w));var x=h(y)?r.expression.transform:r,E=w in r.expression.transform,T=rt(x,w)?x[w]:void 0,D=function(){var R={};y.dependencies.map(_D).forEach(k=>{if(k.includes("."))throw new Error("Factory dependency should not contain a nested path. Name: "+JSON.stringify(k));k==="math"?R.math=r:k==="mathWithTransform"?R.mathWithTransform=r.expression.mathWithTransform:k==="classes"?R.classes=r:R[k]=r[k]});var L=y(R);if(L&&typeof L.transform=="function")throw new Error('Transforms cannot be attached to factory functions. Please create a separate function for it with export const path = "expression.transform"');if(T===void 0||S.override)return L;if(t.isTypedFunction(T)&&t.isTypedFunction(L))return t(T,L);if(S.silent)return T;throw new Error('Cannot import "'+w+'": already exists')},M=(b=(_=y.meta)===null||_===void 0?void 0:_.formerly)!==null&&b!==void 0?b:"",C=h(y)||d(y),$=r.expression.mathWithTransform;!y.meta||y.meta.lazy!==!1?(Gs(x,w,D),M&&Gs(x,M,D),T&&E?(s(w),M&&s(M)):C&&(Gs($,w,()=>x[w]),M&&Gs($,M,()=>x[w]))):(x[w]=D(),M&&(x[M]=x[w]),T&&E?(s(w),M&&s(M)):C&&(Gs($,w,()=>x[w]),M&&Gs($,M,()=>x[w]))),i[w]=y,r.emit("import",w,D)}function c(y){return typeof y=="function"||typeof y=="number"||typeof y=="string"||typeof y=="boolean"||y===null||En(y)||Qn(y)||mt(y)||Io(y)||Je(y)||Array.isArray(y)}function f(y){return typeof y=="object"&&y[Symbol.toStringTag]==="Module"}function m(y){return typeof y=="function"&&typeof y.signature=="string"}function p(y){return!rt(v,y)}function d(y){return!y.fn.includes(".")&&!rt(v,y.fn)&&(!y.meta||!y.meta.isClass)}function h(y){return y!==void 0&&y.meta!==void 0&&y.meta.isTransformFunction===!0||!1}var v={expression:!0,type:!0,docs:!0,error:!0,json:!0,chain:!0};return n}function wb(t,e){var r=Dn({},Dv,e);if(typeof Object.create!="function")throw new Error("ES5 not supported by this JavaScript engine. Please load the es5-shim and es5-sham library for compatibility.");var i=tq({isNumber:Et,isComplex:Qn,isBigNumber:mt,isBigInt:Ja,isFraction:Io,isUnit:En,isString:Qr,isArray:sr,isMatrix:Je,isCollection:un,isDenseMatrix:Zs,isSparseMatrix:Fo,isRange:Du,isIndex:Xa,isBoolean:Av,isResultSet:Tv,isHelp:Oc,isFunction:Nv,isDate:Mv,isRegExp:Cv,isObject:$o,isMap:Ya,isPartitionedMap:tF,isObjectWrappingMap:rF,isNull:$v,isUndefined:Iv,isAccessorNode:ji,isArrayNode:ei,isAssignmentNode:Fv,isBlockNode:kv,isConditionalNode:Pv,isConstantNode:Lt,isFunctionAssignmentNode:ta,isFunctionNode:gi,isIndexNode:uo,isNode:Yt,isObjectNode:Ka,isOperatorNode:Lr,isParenthesisNode:ti,isRangeNode:Bv,isRelationalNode:Ov,isSymbolNode:Nr,isChain:Rc});i.config=cF(r,i.emit),i.expression={transform:{},mathWithTransform:{config:i.config}};var n=[],o=[];function a(c){if(gl(c))return c(i);var f=c[Object.keys(c)[0]];if(gl(f))return f(i);if(!oF(c))throw console.warn("Factory object with properties `type`, `name`, and `factory` expected",c),new Error("Factory object with properties `type`, `name`, and `factory` expected");var m=n.indexOf(c),p;return m===-1?(c.math===!0?p=c.factory(i.type,r,a,i.typed,i):p=c.factory(i.type,r,a,i.typed),n.push(c),o.push(p)):p=o[m],p}var s={};function l(){for(var c=arguments.length,f=new Array(c),m=0;m{Object.values(s).forEach(c=>{c&&c.meta&&c.meta.recreateOnConfigChange&&u(c,{override:!0})})}),i.create=wb.bind(null,t),i.factory=N,i.import(Object.values(nF(t))),i.ArgumentsError=Bo,i.DimensionError=$t,i.IndexError=ii,i}function iq(){return wb(uA,{})}var Sb=class{api;internal;file;inputFieldParser;viewFieldParser;jsViewFieldParser;buttonParser;bindTargetParser;syntaxHighlighting;inputFieldFactory;viewFieldFactory;buttonActionRunner;buttonManager;metadataManager;mountableManager;math;build;constructor(){this.inputFieldParser=new mv(this),this.viewFieldParser=new _v(this),this.jsViewFieldParser=new dv(this),this.buttonParser=new Gg(this),this.bindTargetParser=new qh(this),this.syntaxHighlighting=new id(this),this.inputFieldFactory=new Mh(this),this.viewFieldFactory=new kh(this),this.buttonActionRunner=new _d(this),this.buttonManager=new Sd(this),this.metadataManager=new bc,this.mountableManager=new Vh,this.math=iq(),this.build="1.4.6".includes("canary")?"canary":"release"}setComponents(e){Object.assign(this,e)}setSettings(e){this.updateInternalSettings(e),this.saveSettings(e)}updateSettings(e){let r=this.getSettings();e(r),this.setSettings(r)}loadTemplates(){let e=this.getSettings(),r=this.inputFieldParser.parseTemplates(e.inputFieldTemplates);r.hasErrors()&&console.warn("meta-bind | failed to parse input field templates",r);let i=this.buttonManager.setButtonTemplates(e.buttonTemplates);i.hasErrors()&&console.warn("meta-bind | failed to parse button templates",i)}updateInternalSettings(e){fi.dateFormat=e.preferredDateFormat,WI(e.firstWeekday),this.loadTemplates()}destroy(){this.mountableManager.unload()}};var cf=class{id;manager;cache;constructor(e,r){this.id=e,this.manager=r,this.cache=new Map}validateStoragePath(e,r,i,n){return n.validateStoragePathAsFilePath(e,i)}resolveBindTargetScope(e,r,i){return e}getOrCreateCacheItem(e){let r=this.getCacheItemForStoragePath(e);return r===void 0&&(r=this.getDefaultCacheItem(e),this.cache.set(e,r)),r}subscribe(e){if(e.bindTarget===void 0)throw new jt({errorLevel:"CRITICAL",effect:"can not subscribe",cause:"subscription bind target undefined"});let r=this.getOrCreateCacheItem(e.bindTarget.storagePath);return r.subscriptions.push(e),r}unsubscribe(e){if(e.bindTarget===void 0)throw new jt({errorLevel:"CRITICAL",effect:"can not unsubscribe",cause:"subscription bind target undefined"});let r=this.cache.get(e.bindTarget.storagePath);if(r===void 0)throw new jt({errorLevel:"CRITICAL",effect:"can not unsubscribe",cause:"cache item does not exist"});return r.subscriptions=r.subscriptions.filter(i=>i.uuid!==e.uuid),r}getCacheItemForStoragePath(e){return this.cache.get(e)}onCycle(e){}getCacheItems(){return Array.from(this.cache.values())}shouldDelete(e){return!0}deleteCache(e){this.cache.delete(e.storagePath)}writeCache(e,r){let i=this.getOrCreateCacheItem(r.storagePath);return Sa.setAndCreate(i.data,r.storageProp,e),i}writeEntireCache(e,r){r.data=e}readCache(e){if(e.storageType!==this.id)throw new jt({errorLevel:"ERROR",effect:"can not read cache",cause:`Source "${e.storageType}" does not match`});let r=this.getCacheItemForStoragePath(e.storagePath);return r===void 0?Sa.tryGet(this.readExternal(e.storagePath),e.storageProp):this.readCacheItem(r,e.storageProp)}readCacheItem(e,r){return Sa.tryGet(e.data,r)}readEntireCacheItem(e){return e.data}usesStoragePath(){return!0}};var Db=class extends cf{readExternal(e){return{}}getDefaultCacheItem(e){return{data:{},storagePath:e,...this.manager.constructDefaultCacheItem()}}syncExternal(e){return Promise.resolve()}};var Eb=class{id;manager;cache;constructor(e,r){this.id=e,this.manager=r,this.cache={data:{},...this.manager.constructDefaultCacheItem()}}getOrCreateCacheItem(e){return this.cache}validateStoragePath(e,r,i,n){if(r)throw new Pn("ERROR","Bind target validator","Failed to parse bind target. Bind target storage type 'global_memory' does not support a storage path.",i,e.position);return""}deleteCache(e){}getCacheItemForStoragePath(e){return this.cache}getCacheItems(){return[this.cache]}onCycle(e){}readCache(e){return this.readCacheItem(this.cache,e.storageProp)}readCacheItem(e,r){return Sa.tryGet(e.data,r)}shouldDelete(e){return!1}subscribe(e){return this.cache.subscriptions.push(e),this.cache}syncExternal(e){return Promise.resolve()}unsubscribe(e){return this.cache.subscriptions=this.cache.subscriptions.filter(r=>r.uuid!==e.uuid),this.cache}writeCache(e,r){return Sa.setAndCreate(this.cache.data,r.storageProp,e),this.cache}writeEntireCache(e,r){r.data=e}readEntireCacheItem(e){return e.data}usesStoragePath(){return!1}},Ab=class{id;manager;constructor(e,r){this.id=e,this.manager=r}getOrCreateCacheItem(e){throw new jt({errorLevel:"CRITICAL",effect:"action not permitted",cause:"source 'scope' should have no cache items or subscriptions"})}validateStoragePath(e,r,i,n){if(r)throw new Pn("ERROR","Bind Target Validator","Failed to parse bind target. Bind target storage type 'scope' does not support a storage path.",i,e.position);return""}deleteCache(e){}getCacheItemForStoragePath(e){}getCacheItems(){return[]}onCycle(e){}readCache(e){}readCacheItem(e,r){}shouldDelete(e){return!0}subscribe(e){throw new jt({errorLevel:"CRITICAL",effect:"action not permitted",cause:"source 'scope' should have no cache items or subscriptions"})}syncExternal(e){return Promise.resolve()}unsubscribe(e){throw new jt({errorLevel:"CRITICAL",effect:"action not permitted",cause:"source 'scope' should have no cache items or subscriptions"})}writeCache(e,r){throw new jt({errorLevel:"CRITICAL",effect:"action not permitted",cause:"source 'scope' should have no cache items or subscriptions"})}writeEntireCache(e,r){}readEntireCacheItem(e){throw new jt({errorLevel:"CRITICAL",effect:"action not permitted",cause:"source 'scope' should have no cache items or subscriptions"})}usesStoragePath(){return!1}};function Tb(t){var e=t.statementIndent,r=t.jsonld,i=t.json||r,n=t.typescript,o=t.wordCharacters||/[\w$\xa1-\uffff]/,a=function(){function z(Fn){return{type:Fn,style:"keyword"}}var te=z("keyword a"),$e=z("keyword b"),et=z("keyword c"),qe=z("keyword d"),qt=z("operator"),$r={type:"atom",style:"atom"};return{if:z("if"),while:te,with:te,else:$e,do:$e,try:$e,finally:$e,return:qe,break:qe,continue:qe,new:z("new"),delete:et,void:et,throw:et,debugger:z("debugger"),var:z("var"),const:z("var"),let:z("var"),function:z("function"),catch:z("catch"),for:z("for"),switch:z("switch"),case:z("case"),default:z("default"),in:qt,typeof:qt,instanceof:qt,true:$r,false:$r,null:$r,undefined:$r,NaN:$r,Infinity:$r,this:z("this"),class:z("class"),super:z("atom"),yield:et,export:z("export"),import:z("import"),extends:et,await:et}}(),s=/[+\-*&%=<>!?|~^@]/,l=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function u(z){for(var te=!1,$e,et=!1;($e=z.next())!=null;){if(!te){if($e=="/"&&!et)return;$e=="["?et=!0:et&&$e=="]"&&(et=!1)}te=!te&&$e=="\\"}}var c,f;function m(z,te,$e){return c=z,f=$e,te}function p(z,te){var $e=z.next();if($e=='"'||$e=="'")return te.tokenize=d($e),te.tokenize(z,te);if($e=="."&&z.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return m("number","number");if($e=="."&&z.match(".."))return m("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test($e))return m($e);if($e=="="&&z.eat(">"))return m("=>","operator");if($e=="0"&&z.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return m("number","number");if(/\d/.test($e))return z.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),m("number","number");if($e=="/")return z.eat("*")?(te.tokenize=h,h(z,te)):z.eat("/")?(z.skipToEnd(),m("comment","comment")):tn(z,te,1)?(u(z),z.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),m("regexp","string.special")):(z.eat("="),m("operator","operator",z.current()));if($e=="`")return te.tokenize=v,v(z,te);if($e=="#"&&z.peek()=="!")return z.skipToEnd(),m("meta","meta");if($e=="#"&&z.eatWhile(o))return m("variable","property");if($e=="<"&&z.match("!--")||$e=="-"&&z.match("->")&&!/\S/.test(z.string.slice(0,z.start)))return z.skipToEnd(),m("comment","comment");if(s.test($e))return($e!=">"||!te.lexical||te.lexical.type!=">")&&(z.eat("=")?($e=="!"||$e=="=")&&z.eat("="):/[<>*+\-|&?]/.test($e)&&(z.eat($e),$e==">"&&z.eat($e))),$e=="?"&&z.eat(".")?m("."):m("operator","operator",z.current());if(o.test($e)){z.eatWhile(o);var et=z.current();if(te.lastType!="."){if(a.propertyIsEnumerable(et)){var qe=a[et];return m(qe.type,qe.style,et)}if(et=="async"&&z.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return m("async","keyword",et)}return m("variable","variable",et)}}function d(z){return function(te,$e){var et=!1,qe;if(r&&te.peek()=="@"&&te.match(l))return $e.tokenize=p,m("jsonld-keyword","meta");for(;(qe=te.next())!=null&&!(qe==z&&!et);)et=!et&&qe=="\\";return et||($e.tokenize=p),m("string","string")}}function h(z,te){for(var $e=!1,et;et=z.next();){if(et=="/"&&$e){te.tokenize=p;break}$e=et=="*"}return m("comment","comment")}function v(z,te){for(var $e=!1,et;(et=z.next())!=null;){if(!$e&&(et=="`"||et=="$"&&z.eat("{"))){te.tokenize=p;break}$e=!$e&&et=="\\"}return m("quasi","string.special",z.current())}var y="([{}])";function S(z,te){te.fatArrowAt&&(te.fatArrowAt=null);var $e=z.string.indexOf("=>",z.start);if(!($e<0)){if(n){var et=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(z.string.slice(z.start,$e));et&&($e=et.index)}for(var qe=0,qt=!1,$r=$e-1;$r>=0;--$r){var Fn=z.string.charAt($r),kn=y.indexOf(Fn);if(kn>=0&&kn<3){if(!qe){++$r;break}if(--qe==0){Fn=="("&&(qt=!0);break}}else if(kn>=3&&kn<6)++qe;else if(o.test(Fn))qt=!0;else if(/["'\/`]/.test(Fn))for(;;--$r){if($r==0)return;var us=z.string.charAt($r-1);if(us==Fn&&z.string.charAt($r-2)!="\\"){$r--;break}}else if(qt&&!qe){++$r;break}}qt&&!qe&&(te.fatArrowAt=$r)}}var b={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function _(z,te,$e,et,qe,qt){this.indented=z,this.column=te,this.type=$e,this.prev=qe,this.info=qt,et!=null&&(this.align=et)}function w(z,te){for(var $e=z.localVars;$e;$e=$e.next)if($e.name==te)return!0;for(var et=z.context;et;et=et.prev)for(var $e=et.vars;$e;$e=$e.next)if($e.name==te)return!0}function x(z,te,$e,et,qe){var qt=z.cc;for(E.state=z,E.stream=qe,E.marked=null,E.cc=qt,E.style=te,z.lexical.hasOwnProperty("align")||(z.lexical.align=!0);;){var $r=qt.length?qt.pop():i?xe:Z;if($r($e,et)){for(;qt.length&&qt[qt.length-1].lex;)qt.pop()();return E.marked?E.marked:$e=="variable"&&w(z,et)?"variableName.local":te}}}var E={state:null,column:null,marked:null,cc:null};function T(){for(var z=arguments.length-1;z>=0;z--)E.cc.push(arguments[z])}function D(){return T.apply(null,arguments),!0}function M(z,te){for(var $e=te;$e;$e=$e.next)if($e.name==z)return!0;return!1}function C(z){var te=E.state;if(E.marked="def",te.context){if(te.lexical.info=="var"&&te.context&&te.context.block){var $e=$(z,te.context);if($e!=null){te.context=$e;return}}else if(!M(z,te.localVars)){te.localVars=new L(z,te.localVars);return}}t.globalVars&&!M(z,te.globalVars)&&(te.globalVars=new L(z,te.globalVars))}function $(z,te){if(te)if(te.block){var $e=$(z,te.prev);return $e?$e==te.prev?te:new R($e,te.vars,!0):null}else return M(z,te.vars)?te:new R(te.prev,new L(z,te.vars),!1);else return null}function O(z){return z=="public"||z=="private"||z=="protected"||z=="abstract"||z=="readonly"}function R(z,te,$e){this.prev=z,this.vars=te,this.block=$e}function L(z,te){this.name=z,this.next=te}var k=new L("this",new L("arguments",null));function V(){E.state.context=new R(E.state.context,E.state.localVars,!1),E.state.localVars=k}function J(){E.state.context=new R(E.state.context,E.state.localVars,!0),E.state.localVars=null}V.lex=J.lex=!0;function W(){E.state.localVars=E.state.context.vars,E.state.context=E.state.context.prev}W.lex=!0;function Q(z,te){var $e=function(){var et=E.state,qe=et.indented;if(et.lexical.type=="stat")qe=et.lexical.indented;else for(var qt=et.lexical;qt&&qt.type==")"&&qt.align;qt=qt.prev)qe=qt.indented;et.lexical=new _(qe,E.stream.column(),z,null,et.lexical,te)};return $e.lex=!0,$e}function ie(){var z=E.state;z.lexical.prev&&(z.lexical.type==")"&&(z.indented=z.lexical.indented),z.lexical=z.lexical.prev)}ie.lex=!0;function B(z){function te($e){return $e==z?D():z==";"||$e=="}"||$e==")"||$e=="]"?T():D(te)}return te}function Z(z,te){return z=="var"?D(Q("vardef",te),lr,B(";"),ie):z=="keyword a"?D(Q("form"),be,Z,ie):z=="keyword b"?D(Q("form"),Z,ie):z=="keyword d"?E.stream.match(/^\s*$/,!1)?D():D(Q("stat"),K,B(";"),ie):z=="debugger"?D(B(";")):z=="{"?D(Q("}"),J,He,ie,W):z==";"?D():z=="if"?(E.state.lexical.info=="else"&&E.state.cc[E.state.cc.length-1]==ie&&E.state.cc.pop()(),D(Q("form"),be,Z,ie,cr)):z=="function"?D(Vo):z=="for"?D(Q("form"),J,tu,Z,W,ie):z=="class"||n&&te=="interface"?(E.marked="keyword",D(Q("form",z=="class"?z:te),ln,ie)):z=="variable"?n&&te=="declare"?(E.marked="keyword",D(Z)):n&&(te=="module"||te=="enum"||te=="type")&&E.stream.match(/^\s*\w/,!1)?(E.marked="keyword",te=="enum"?D(Bl):te=="type"?D(Nn,B("operator"),ce,B(";")):D(Q("form"),Ve,B("{"),Q("}"),He,ie,ie)):n&&te=="namespace"?(E.marked="keyword",D(Q("form"),xe,Z,ie)):n&&te=="abstract"?(E.marked="keyword",D(Z)):D(Q("stat"),ut):z=="switch"?D(Q("form"),be,B("{"),Q("}","switch"),J,He,ie,ie,W):z=="case"?D(xe,B(":")):z=="default"?D(B(":")):z=="catch"?D(Q("form"),V,q,Z,ie,W):z=="export"?D(Q("stat"),vf,ie):z=="import"?D(Q("stat"),as,ie):z=="async"?D(Z):te=="@"?D(xe,Z):T(Q("stat"),xe,B(";"),ie)}function q(z){if(z=="(")return D(qn,B(")"))}function xe(z,te){return G(z,te,!1)}function de(z,te){return G(z,te,!0)}function be(z){return z!="("?T():D(Q(")"),K,B(")"),ie)}function G(z,te,$e){if(E.state.fatArrowAt==E.stream.start){var et=$e?Oe:_e;if(z=="(")return D(V,Q(")"),Ee(qn,")"),ie,B("=>"),et,W);if(z=="variable")return T(V,Ve,B("=>"),et,W)}var qe=$e?ae:re;return b.hasOwnProperty(z)?D(qe):z=="function"?D(Vo,qe):z=="class"||n&&te=="interface"?(E.marked="keyword",D(Q("form"),Wi,ie)):z=="keyword c"||z=="async"?D($e?de:xe):z=="("?D(Q(")"),K,B(")"),ie,qe):z=="operator"||z=="spread"?D($e?de:xe):z=="["?D(Q("]"),Pl,ie,qe):z=="{"?Ue(oe,"}",null,qe):z=="quasi"?T(le,qe):z=="new"?D(st($e)):D()}function K(z){return z.match(/[;\}\)\],]/)?T():T(xe)}function re(z,te){return z==","?D(K):ae(z,te,!1)}function ae(z,te,$e){var et=$e==!1?re:ae,qe=$e==!1?xe:de;if(z=="=>")return D(V,$e?Oe:_e,W);if(z=="operator")return/\+\+|--/.test(te)||n&&te=="!"?D(et):n&&te=="<"&&E.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?D(Q(">"),Ee(ce,">"),ie,et):te=="?"?D(xe,B(":"),qe):D(qe);if(z=="quasi")return T(le,et);if(z!=";"){if(z=="(")return Ue(de,")","call",et);if(z==".")return D(H,et);if(z=="[")return D(Q("]"),K,B("]"),ie,et);if(n&&te=="as")return E.marked="keyword",D(ce,et);if(z=="regexp")return E.state.lastType=E.marked="operator",E.stream.backUp(E.stream.pos-E.stream.start-1),D(qe)}}function le(z,te){return z!="quasi"?T():te.slice(te.length-2)!="${"?D(le):D(K,Se)}function Se(z){if(z=="}")return E.marked="string.special",E.state.tokenize=v,D(le)}function _e(z){return S(E.stream,E.state),T(z=="{"?Z:xe)}function Oe(z){return S(E.stream,E.state),T(z=="{"?Z:de)}function st(z){return function(te){return te=="."?D(z?Qe:yt):te=="variable"&&n?D(Ne,z?ae:re):T(z?de:xe)}}function yt(z,te){if(te=="target")return E.marked="keyword",D(re)}function Qe(z,te){if(te=="target")return E.marked="keyword",D(ae)}function ut(z){return z==":"?D(ie,Z):T(re,B(";"),ie)}function H(z){if(z=="variable")return E.marked="property",D()}function oe(z,te){if(z=="async")return E.marked="property",D(oe);if(z=="variable"||E.style=="keyword"){if(E.marked="property",te=="get"||te=="set")return D(ve);var $e;return n&&E.state.fatArrowAt==E.stream.start&&($e=E.stream.match(/^\s*:\s*/,!1))&&(E.state.fatArrowAt=E.stream.pos+$e[0].length),D(De)}else{if(z=="number"||z=="string")return E.marked=r?"property":E.style+" property",D(De);if(z=="jsonld-keyword")return D(De);if(n&&O(te))return E.marked="keyword",D(oe);if(z=="[")return D(xe,nt,B("]"),De);if(z=="spread")return D(de,De);if(te=="*")return E.marked="keyword",D(oe);if(z==":")return T(De)}}function ve(z){return z!="variable"?T(De):(E.marked="property",D(Vo))}function De(z){if(z==":")return D(de);if(z=="(")return T(Vo)}function Ee(z,te,$e){function et(qe,qt){if($e?$e.indexOf(qe)>-1:qe==","){var $r=E.state.lexical;return $r.info=="call"&&($r.pos=($r.pos||0)+1),D(function(Fn,kn){return Fn==te||kn==te?T():T(z)},et)}return qe==te||qt==te?D():$e&&$e.indexOf(";")>-1?T(z):D(B(te))}return function(qe,qt){return qe==te||qt==te?D():T(z,et)}}function Ue(z,te,$e){for(var et=3;et"),ce);if(z=="quasi")return T(We,ne)}function Ce(z){if(z=="=>")return D(ce)}function Pe(z){return z.match(/[\}\)\]]/)?D():z==","||z==";"?D(Pe):T(we,Pe)}function we(z,te){if(z=="variable"||E.style=="keyword")return E.marked="property",D(we);if(te=="?"||z=="number"||z=="string")return D(we);if(z==":")return D(ce);if(z=="[")return D(B("variable"),ke,B("]"),we);if(z=="(")return T(go,we);if(!z.match(/[;\}\)\],]/))return D()}function We(z,te){return z!="quasi"?T():te.slice(te.length-2)!="${"?D(We):D(ce,I)}function I(z){if(z=="}")return E.marked="string.special",E.state.tokenize=v,D(We)}function X(z,te){return z=="variable"&&E.stream.match(/^\s*[?:]/,!1)||te=="?"?D(X):z==":"?D(ce):z=="spread"?D(X):T(ce)}function ne(z,te){if(te=="<")return D(Q(">"),Ee(ce,">"),ie,ne);if(te=="|"||z=="."||te=="&")return D(ce);if(z=="[")return D(ce,B("]"),ne);if(te=="extends"||te=="implements")return E.marked="keyword",D(ce);if(te=="?")return D(ce,B(":"),ce)}function Ne(z,te){if(te=="<")return D(Q(">"),Ee(ce,">"),ie,ne)}function Xe(){return T(ce,gt)}function gt(z,te){if(te=="=")return D(ce)}function lr(z,te){return te=="enum"?(E.marked="keyword",D(Bl)):T(Ve,nt,en,Vn)}function Ve(z,te){if(n&&O(te))return E.marked="keyword",D(Ve);if(z=="variable")return C(te),D();if(z=="spread")return D(Ve);if(z=="[")return Ue(ki,"]");if(z=="{")return Ue(yi,"}")}function yi(z,te){return z=="variable"&&!E.stream.match(/^\s*:/,!1)?(C(te),D(en)):(z=="variable"&&(E.marked="property"),z=="spread"?D(Ve):z=="}"?T():z=="["?D(xe,B("]"),B(":"),yi):D(B(":"),Ve,en))}function ki(){return T(Ve,en)}function en(z,te){if(te=="=")return D(de)}function Vn(z){if(z==",")return D(lr)}function cr(z,te){if(z=="keyword b"&&te=="else")return D(Q("form","else"),Z,ie)}function tu(z,te){if(te=="await")return D(tu);if(z=="(")return D(Q(")"),Cr,ie)}function Cr(z){return z=="var"?D(lr,Gi):z=="variable"?D(Gi):T(Gi)}function Gi(z,te){return z==")"?D():z==";"?D(Gi):te=="in"||te=="of"?(E.marked="keyword",D(xe,Gi)):T(xe,Gi)}function Vo(z,te){if(te=="*")return E.marked="keyword",D(Vo);if(z=="variable")return C(te),D(Vo);if(z=="(")return D(V,Q(")"),Ee(qn,")"),ie,Y,Z,W);if(n&&te=="<")return D(Q(">"),Ee(Xe,">"),ie,Vo)}function go(z,te){if(te=="*")return E.marked="keyword",D(go);if(z=="variable")return C(te),D(go);if(z=="(")return D(V,Q(")"),Ee(qn,")"),ie,Y,W);if(n&&te=="<")return D(Q(">"),Ee(Xe,">"),ie,go)}function Nn(z,te){if(z=="keyword"||z=="variable")return E.marked="type",D(Nn);if(te=="<")return D(Q(">"),Ee(Xe,">"),ie)}function qn(z,te){return te=="@"&&D(xe,qn),z=="spread"?D(qn):n&&O(te)?(E.marked="keyword",D(qn)):n&&z=="this"?D(nt,en):T(Ve,nt,en)}function Wi(z,te){return z=="variable"?ln(z,te):ai(z,te)}function ln(z,te){if(z=="variable")return C(te),D(ai)}function ai(z,te){if(te=="<")return D(Q(">"),Ee(Xe,">"),ie,ai);if(te=="extends"||te=="implements"||n&&z==",")return te=="implements"&&(E.marked="keyword"),D(n?ce:xe,ai);if(z=="{")return D(Q("}"),Mn,ie)}function Mn(z,te){if(z=="async"||z=="variable"&&(te=="static"||te=="get"||te=="set"||n&&O(te))&&E.stream.match(/^\s+#?[\w$\xa1-\uffff]/,!1))return E.marked="keyword",D(Mn);if(z=="variable"||E.style=="keyword")return E.marked="property",D(Hi,Mn);if(z=="number"||z=="string")return D(Hi,Mn);if(z=="[")return D(xe,nt,B("]"),Hi,Mn);if(te=="*")return E.marked="keyword",D(Mn);if(n&&z=="(")return T(go,Mn);if(z==";"||z==",")return D(Mn);if(z=="}")return D();if(te=="@")return D(xe,Mn)}function Hi(z,te){if(te=="!"||te=="?")return D(Hi);if(z==":")return D(ce,en);if(te=="=")return D(de);var $e=E.state.lexical.prev,et=$e&&$e.info=="interface";return T(et?go:Vo)}function vf(z,te){return te=="*"?(E.marked="keyword",D(fa,B(";"))):te=="default"?(E.marked="keyword",D(xe,B(";"))):z=="{"?D(Ee(Fl,"}"),fa,B(";")):T(Z)}function Fl(z,te){if(te=="as")return E.marked="keyword",D(B("variable"));if(z=="variable")return T(de,Fl)}function as(z){return z=="string"?D():z=="("?T(xe):z=="."?T(re):T(ss,kl,fa)}function ss(z,te){return z=="{"?Ue(ss,"}"):(z=="variable"&&C(te),te=="*"&&(E.marked="keyword"),D(Ma))}function kl(z){if(z==",")return D(ss,kl)}function Ma(z,te){if(te=="as")return E.marked="keyword",D(ss)}function fa(z,te){if(te=="from")return E.marked="keyword",D(xe)}function Pl(z){return z=="]"?D():T(Ee(de,"]"))}function Bl(){return T(Q("form"),Ve,B("{"),Q("}"),Ee(yf,"}"),ie,ie)}function yf(){return T(Ve,en)}function bf(z,te){return z.lastType=="operator"||z.lastType==","||s.test(te.charAt(0))||/[,.]/.test(te.charAt(0))}function tn(z,te,$e){return te.tokenize==p&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(te.lastType)||te.lastType=="quasi"&&/\{\s*$/.test(z.string.slice(0,z.pos-($e||0)))}return{name:t.name,startState:function(z){var te={tokenize:p,lastType:"sof",cc:[],lexical:new _(-z,0,"block",!1),localVars:t.localVars,context:t.localVars&&new R(null,null,!1),indented:0};return t.globalVars&&typeof t.globalVars=="object"&&(te.globalVars=t.globalVars),te},token:function(z,te){if(z.sol()&&(te.lexical.hasOwnProperty("align")||(te.lexical.align=!1),te.indented=z.indentation(),S(z,te)),te.tokenize!=h&&z.eatSpace())return null;var $e=te.tokenize(z,te);return c=="comment"?$e:(te.lastType=c=="operator"&&(f=="++"||f=="--")?"incdec":c,x(te,$e,c,f,z))},indent:function(z,te,$e){if(z.tokenize==h||z.tokenize==v)return null;if(z.tokenize!=p)return 0;var et=te&&te.charAt(0),qe=z.lexical,qt;if(!/^\s*else\b/.test(te))for(var $r=z.cc.length-1;$r>=0;--$r){var Fn=z.cc[$r];if(Fn==ie)qe=qe.prev;else if(Fn!=cr&&Fn!=W)break}for(;(qe.type=="stat"||qe.type=="form")&&(et=="}"||(qt=z.cc[z.cc.length-1])&&(qt==re||qt==ae)&&!/^[,\.=+\-*:?[\(]/.test(te));)qe=qe.prev;e&&qe.type==")"&&qe.prev.type=="stat"&&(qe=qe.prev);var kn=qe.type,us=et==kn;return kn=="vardef"?qe.indented+(z.lastType=="operator"||z.lastType==","?qe.info.length+1:0):kn=="form"&&et=="{"?qe.indented:kn=="form"?qe.indented+$e.unit:kn=="stat"?qe.indented+(bf(z,te)?e||$e.unit:0):qe.info=="switch"&&!us&&t.doubleIndentSwitch!=!1?qe.indented+(/^(?:case|default)\b/.test(te)?$e.unit:2*$e.unit):qe.align?qe.column+(us?0:1):qe.indented+(us?0:$e.unit)},languageData:{indentOnInput:/^\s*(?:case .*?:|default:|\{|\})$/,commentTokens:i?void 0:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]},wordChars:"$"}}}var pm=Tb({name:"javascript"}),Obt=Tb({name:"json",json:!0}),Rbt=Tb({name:"json",jsonld:!0}),Lbt=Tb({name:"typescript",typescript:!0});var ole=["true","false","on","off","yes","no"],ale=new RegExp("\\b(("+ole.join(")|(")+"))$","i"),mm={name:"yaml",token:function(t,e){var r=t.peek(),i=e.escaped;if(e.escaped=!1,r=="#"&&(t.pos==0||/\s/.test(t.string.charAt(t.pos-1))))return t.skipToEnd(),"comment";if(t.match(/^('([^']|\\.)*'?|"([^"]|\\.)*"?)/))return"string";if(e.literal&&t.indentation()>e.keyCol)return t.skipToEnd(),"string";if(e.literal&&(e.literal=!1),t.sol()){if(e.keyCol=0,e.pair=!1,e.pairStart=!1,t.match("---")||t.match("..."))return"def";if(t.match(/^\s*-\s+/))return"meta"}if(t.match(/^(\{|\}|\[|\])/))return r=="{"?e.inlinePairs++:r=="}"?e.inlinePairs--:r=="["?e.inlineList++:e.inlineList--,"meta";if(e.inlineList>0&&!i&&r==",")return t.next(),"meta";if(e.inlinePairs>0&&!i&&r==",")return e.keyCol=0,e.pair=!1,e.pairStart=!1,t.next(),"meta";if(e.pairStart){if(t.match(/^\s*(\||\>)\s*/))return e.literal=!0,"meta";if(t.match(/^\s*(\&|\*)[a-z0-9\._-]+\b/i))return"variable";if(e.inlinePairs==0&&t.match(/^\s*-?[0-9\.\,]+\s?$/)||e.inlinePairs>0&&t.match(/^\s*-?[0-9\.\,]+\s?(?=(,|}))/))return"number";if(t.match(ale))return"keyword"}return!e.pair&&t.match(/^\s*(?:[,\[\]{}&*!|>'"%@`][^\s'":]|[^,\[\]{}#&*!|>'"%@`])[^#]*?(?=\s*:($|\s))/)?(e.pair=!0,e.keyCol=t.indentation(),"atom"):e.pair&&t.match(/^:\s*/)?(e.pairStart=!0,"meta"):(e.pairStart=!1,e.escaped=r=="\\",t.next(),null)},startState:function(){return{pair:!1,pairStart:!1,keyCol:0,inlinePairs:0,inlineList:0,literal:!1,escaped:!1}},languageData:{commentTokens:{line:"#"}}};function oq(t){if(!t.getSettings().enableSyntaxHighlighting)return;window.CodeMirror.defineMode("meta-bind-button",r=>({startState:()=>mm.startState?.(4),blankLine:n=>mm.blankLine?.(n,4),copyState:n=>mm.startState?.(4),token:(n,o)=>`line-HyperMD-codeblock ${mm.token?.(n,o)}`})),window.CodeMirror.defineMode("meta-bind-js-view",r=>({startState:()=>pm.startState?.(4),blankLine:n=>pm.blankLine?.(n,4),copyState:n=>pm.startState?.(4),token:(n,o)=>`line-HyperMD-codeblock ${pm.token?.(n,o)}`}));let e=/^\s*(```+|~~~+)/;window.CodeMirror.defineMode("meta-bind",r=>({startState:()=>({str:void 0,mdrcType:void 0,highlights:void 0,line:1}),token:(n,o)=>{if(o.str===void 0){let l=[n.string],u=1,c=n.lookAhead(u);for(;c!==void 0&&!e.test(c)&&(l.push(c),u+=1,c=n.lookAhead(u),!(u>100)););o.str=l.filter(m=>m.trim()!=="").join(` -`);let f=t.api.isInlineFieldDeclarationAndGetType(o.str.trim());f===void 0?o.highlights=new ys(o.str,[]):(o.fieldType=f,o.highlights=t.syntaxHighlighting.highlight(o.str,o.fieldType,!0))}let s=o.highlights.getHighlights().filter(l=>l.range.from.line===o.line).find(l=>l.range.from.column===n.pos+1);return s===void 0?(n.next(),n.eol()&&(o.line+=1),"line-HyperMD-codeblock"):(n.eatWhile(()=>n.pos+1=r&&n.from<=i)return!0;return!1}static checkRangeOverlap(e,r,i,n){return e<=n&&i<=r}static getContent(e,r,i){return e.sliceDoc(r,i)}static getCurrentFile(e){return e.state.field(aq.editorInfoField).file}static existsDecorationBetween(e,r,i){let n=!1;return e.between(r,i,()=>{n=!0}),n}static existsDecorationOfTypeBetween(e,r,i,n){let o=!1;return e.between(i,n,(a,s,l)=>{l.spec.mb_widgetType===r&&(o=!0)}),o}};function sq(t){return Ml.ViewPlugin.fromClass(class{decorations;component;constructor(e){this.component=new Nb.Component,this.component.load(),this.decorations=this.renderWidgets(e)??Ml.Decoration.none,e.dom.addEventListener("click",r=>this.handleClick(r))}handleClick(e){if(e.target instanceof HTMLElement){let r=e.target;for(;r!==null;){if(r.classList.contains("mb-input")){e.stopPropagation();break}r=r.parentElement}}}isLivePreview(e){return e.field(Nb.editorLivePreviewField)}update(e){this.decorations=this.decorations.map(e.changes),this.updateWidgets(e.view)}updateWidgets(e){this.decorations=this.decorations.update({filter:(r,i,n)=>EM.anyMatch(e.visibleRanges,a=>ns.checkRangeOverlap(r,i,a.from,a.to))?!0:(n.spec.mb_unload?.(),!1)});for(let{from:r,to:i}of e.visibleRanges)(0,fA.syntaxTree)(e.state).iterate({from:r,to:i,enter:n=>{let o=n.node,a=this.getRenderInfo(e,o);if(!a.data)return;if(!a.data.widgetType){this.removeDecoration(o);return}let s=a.data;a.shouldRender?(this.removeDecoration(o,"field"),this.addDecoration(o,e,"field",s)):a.shouldHighlight?(this.removeDecoration(o),this.addDecoration(o,e,"highlight",s)):this.removeDecoration(o)}})}removeDecoration(e,r){this.decorations=this.decorations.update({filterFrom:e.from-1,filterTo:e.to+1,filter:(i,n,o)=>{let a=o.spec;return!a.mb_widgetType||r&&a.mb_widgetType===r?!0:(a.mb_unload?.(),!1)}})}addDecoration(e,r,i,n){if(ns.existsDecorationOfTypeBetween(this.decorations,i,e.from,e.to))return;let o=ns.getCurrentFile(r);if(!o)return;let a=this.renderWidget(e,i,n,o),s=Array.isArray(a)?a:[a];s.length!==0&&(this.decorations=this.decorations.update({add:s}))}getRenderInfo(e,r){let i=new Set(r.type.name?.split("_"));if(i.has("inline-code")&&!i.has("formatting")){let n=this.readNode(e,r.from,r.to);if(!n.trulyInline)return{shouldRender:!1,shouldHighlight:!1,data:void 0};let o=ns.checkSelectionOverlap(e.state.selection,r.from,r.to),a=this.isLivePreview(e.state),s=!o&&a;return{shouldRender:s,shouldHighlight:!s&&t.getSettings().enableSyntaxHighlighting,data:n}}return{shouldRender:!1,shouldHighlight:!1,data:void 0}}readNode(e,r,i){let n=!1;try{let a=ns.getContent(e.state,r-1,i+1);n=a.startsWith("`")&&a.endsWith("`")}catch{}let o=ns.getContent(e.state,r,i);return{content:o,widgetType:t.api.isInlineFieldDeclarationAndGetType(o),trulyInline:n}}renderWidgets(e){let r=ns.getCurrentFile(e);if(!r)return;let i=[];for(let n of e.visibleRanges)(0,fA.syntaxTree)(e.state).iterate({from:n.from,to:n.to,enter:o=>{let a=o.node,s=this.getRenderInfo(e,a);if(!s.data?.widgetType)return;let l=s.data,u;s.shouldRender?u=this.renderWidget(a,"field",l,r):s.shouldHighlight&&(u=this.renderWidget(a,"highlight",l,r)),u&&(Array.isArray(u)?i.push(...u):i.push(u))}});return Ml.Decoration.set(i,!0)}renderWidget(e,r,i,n){if(r==="field"){let o=t.api.constructMDRCWidget(i.widgetType,i.content,n.path,this.component);return Ml.Decoration.replace({widget:o,mb_widgetType:"field",mb_unload:()=>{o.renderChild?.unload()}}).range(e.from-1,e.to+1)}else return t.syntaxHighlighting.highlight(i.content,i.widgetType,!1).getHighlights().map(a=>Ml.Decoration.mark({class:`mb-highlight-${a.tokenClass}`,mb_widgetType:"highlight"}).range(e.from+a.range.from.index,e.from+a.range.to.index))}destroy(){this.component.unload()}},{decorations:e=>e.decorations})}var uq=require("obsidian");var dm=Ar(yo()),hm=Ar(Ji());var sle=hm.P.sequenceMap((t,e,r,i)=>{let n=parseInt(t),o=parseInt(e),a=parseInt(r);return new ca(n,o,a,i)},dm.P_UTILS.digits().skip(hm.P.string(".")),dm.P_UTILS.digits().skip(hm.P.string(".")),dm.P_UTILS.digits(),hm.P.string("-").then(dm.P_UTILS.remaining()).optional()),ca=class t{major;minor;patch;prerelease;constructor(e,r,i,n){this.major=e,this.minor=r,this.patch=i,this.prerelease=n}static fromString(e){return fn(sle,e)}static lessThan(e,r){return e.majorr.major?!1:e.minorr.minor?!1:e.patchr.patch||e.prerelease===void 0?!1:r.prerelease===void 0?!0:e.prereleasei.pluginId===e);if(r===void 0)throw new Af({errorLevel:"CRITICAL",effect:"Dependency violation detected",cause:`Attempted to access dependency ${e} which is not a listed dependency. Please report this error.`});return r}getPlugin(e){return this.mb.app.plugins.getPlugin(e)}throwPluginNotFound(e){this.throwDependencyError(`Plugin ${e} is required, but not installed. Please install the plugin.`)}throwDependencyError(e){throw new uq.Notice(`meta-bind | Dependency Error: ${e}`,0),new Af({errorLevel:"ERROR",effect:"Dependency violation detected",cause:e})}checkDependencyVersion(e,r){ca.lessThan(r,e.minVersion)&&this.throwDependencyError(`Plugin ${e.pluginId} is outdated. Required version is at least ${e.minVersion}, installed version is ${r}. Please update the plugin.`),e.maxVersion!==void 0&&(ca.greaterThan(r,e.maxVersion)||ca.equals(r,e.maxVersion))&&this.throwDependencyError(`Plugin ${e.pluginId} is too new. Required version is lower than ${e.maxVersion}, installed version is ${r}. Please downgrade the plugin.`)}checkDependency(e){let r=this.getDependency(e),i=this.getPlugin(e);if(i==null)throw this.throwPluginNotFound(e),Error("unreachable");let n=ca.fromString(i.manifest.version);return this.checkDependencyVersion(r,n),i}};var mq=require("obsidian");var lq={date:"date",datePicker:"datePicker",dateTime:"dateTime",editor:"editor",imageSuggester:'imageSuggester(optionQuery(""))',imageListSuggester:'imageListSuggester(optionQuery(""))',inlineList:"inlineList",inlineListSuggester:"inlineListSuggester(option(apple), option(banana), option(lemon))",inlineSelect:"inlineSelect(option(apple), option(banana), option(lemon))",list:"list",listSuggester:"listSuggester(option(apple), option(banana), option(lemon))",multiSelect:"multiSelect(option(apple), option(banana), option(lemon))",number:"number",progressBar:"progressBar",select:"select(option(apple), option(banana), option(lemon))",slider:"slider(addLabels)",suggester:"suggester(option(apple), option(banana), option(lemon))",text:"text",textArea:"textArea",time:"time",toggle:"toggle",invalid:""},pA={image:[{title:"Image",declaration:"VIEW[{globalMemory^MB_VF_image_example}][image]",display:"VIEW[{imageExampleProperty}][image]",inputField:'INPUT[imageSuggester(optionQuery("")):globalMemory^MB_VF_image_example]'}],link:[{title:"Link",declaration:"VIEW[{globalMemory^MB_VF_link_example}][link]",display:"VIEW[{linkExampleProperty}][link]",inputField:'INPUT[suggester(optionQuery("")):globalMemory^MB_VF_link_example]'}],math:[{title:"Math",declaration:"VIEW[{globalMemory^MB_VF_math_example} + 2][math]",display:"VIEW[{mathExampleProperty} + 2][math]",inputField:"INPUT[number:globalMemory^MB_VF_math_example]"}],text:[{title:"Text",declaration:"VIEW[some text {globalMemory^MB_VF_text_example}][text]",display:"VIEW[some text {textExampleProperty}][text]",inputField:"INPUT[text:globalMemory^MB_VF_text_example]"},{title:"Markdown",declaration:"VIEW[**some markdown** {globalMemory^MB_VF_text_markdown_example}][text(renderMarkdown)]",display:"VIEW[**some markdown** {markdownExampleProperty}][text(renderMarkdown)]",inputField:"INPUT[text:globalMemory^MB_VF_text_markdown_example]"}],invalid:[]};function cq(t){let e=[];for(let[r,i]of Object.entries(lq)){if(i==="")continue;let n=t.inputFieldParser.fromString(`INPUT[${i}]`),o=t.inputFieldParser.fromSimpleDeclaration({inputFieldType:void 0,templateName:void 0,bindTarget:void 0,arguments:[{name:"showcase",value:["true"]},{name:"title",value:[r]}]});n=t.inputFieldParser.merge(n,o),n.declarationString=`INPUT[${i}]`;let a=t.inputFieldParser.validate(n,"",void 0);e.push([r,a])}return e}function fq(t){let e=[];for(let[r,i]of Object.entries(lq)){if(i==="")continue;let n=r,o="";Dd[n].allowInline?o=`\`INPUT[${i}:exampleProperty]\``:o=` -\`\`\`meta-bind -INPUT[${i}:exampleProperty] -\`\`\` -`,e.push([n,o])}return e.sort((r,i)=>r[0].localeCompare(i[0])),e}function pq(t){let e=[];for(let r of Object.values(pA))for(let i of r)e.push([i.title,`\`${i.display}\``]);return e.sort((r,i)=>r[0].localeCompare(i[0])),e}function dq(t,e,r){let i=fq(r),n=pq(r);t.addItem(o=>{o.setTitle("Meta Bind"),o.setIcon("blocks");let a=o.setSubmenu();a.addItem(s=>{s.setTitle("Input Field");let l=s.setSubmenu();for(let[u,c]of i)l.addItem(f=>{f.setTitle(u),f.onClick(()=>Cb(e,c))})}),a.addItem(s=>{s.setTitle("View Field");let l=s.setSubmenu();for(let[u,c]of n)l.addItem(f=>{f.setTitle(u),f.onClick(()=>Cb(e,c))})}),a.addItem(s=>{s.setTitle("Inline Button"),s.onClick(()=>{Cb(e,"`BUTTON[example-id]`")})}),a.addItem(s=>{s.setTitle("Button"),s.onClick(()=>{r.internal.openButtonBuilderModal({onOkay:l=>{Cb(e,`\`\`\`meta-bind-button -${(0,mq.stringifyYaml)(l)} -\`\`\``)},submitText:"Insert"})})})})}function Cb(t,e){t.replaceSelection(e)}var Un=class extends Ti{mb;filePath;uuid;constructor(e,r,i){super(),this.mb=e,this.filePath=i,this.uuid=r}getUuid(){return this.uuid}getFilePath(){return this.filePath}onMount(e){this.mb.mountableManager.registerMountable(this)}onUnmount(e){this.mb.mountableManager.unregisterMountable(this)}};var ff=class{scope;constructor(e){this.scope=e}};var Lo=Rt()(ge.string()),pf=Rt()(ge.enum(Bi)),gm=Rt()(ge.enum(jl)),gq=Rt()(ge.enum(uu)),vq=Rt()(ge.any()),mf=Rt()(ge.instanceof(ff)),wxt=Rt()(ge.instanceof(bn)),Sxt=Rt()(xu()),Dxt=Rt()(ge.instanceof(Un)),yq=Rt()(ge.instanceof(Ti)),bq=Rt()(ge.instanceof(ou)),hq=Rt()(ge.object({index:ge.number(),line:ge.number(),column:ge.number()})),ule=Rt()(ge.object({from:hq,to:hq})),Fu=Rt()(ge.object({value:ge.string(),position:ule.optional()})),xq=Rt()(ge.object({name:Fu,value:Fu.array()})),lle=Rt()(ge.object({type:ge.nativeEnum(Vu),prop:Fu})),mA=Rt()(ge.object({storageType:Fu.optional(),storagePath:Fu.optional(),storageProp:lle.array(),listenToChildren:ge.boolean()})),Ext=Rt()(ge.object({declarationString:ge.string().optional(),inputFieldType:Fu.optional(),templateName:Fu.optional(),bindTarget:mA.optional(),arguments:xq.array(),errorCollection:ge.instanceof(rr)})),Axt=Rt()(ge.object({declarationString:ge.string().optional(),templateDeclaration:ge.array(ge.union([ge.string(),mA])).optional(),viewFieldType:Fu.optional(),arguments:xq.array(),writeToBindTarget:mA.optional(),errorCollection:ge.instanceof(rr)})),Ro=Rt()(ge.object({storageType:ge.string(),storagePath:ge.string(),storageProp:ge.instanceof(gu),listenToChildren:ge.boolean()})),_q=Rt()(ge.object({name:ge.string(),value:ge.string().array()})),Txt=Rt()(ge.object({type:ge.nativeEnum(Vu),prop:ge.string()})),wq=Rt()(ge.object({inputFieldType:gq.optional(),templateName:ge.string().optional(),bindTarget:Ro.optional(),arguments:_q.array().optional()})),Sq=Rt()(ge.object({viewFieldType:gq.optional(),templateDeclaration:ge.union([ge.string(),Ro]).array().optional(),arguments:_q.array().optional(),writeToBindTarget:Ro.optional()})),cle=Rt()(ge.object({bindTarget:Ro,name:ge.string()})),fle=Rt()(ge.object({bindTargetMappings:cle.array(),writeToBindTarget:Ro.optional(),code:ge.string()})),ple=Rt()(ge.object({referencedButtonIds:ge.string().array()})),Dq=Rt()(ge.object({renderChildType:pf,declaration:ge.union([ge.string(),wq]),scope:mf.optional()})),Eq=Rt()(ge.object({renderChildType:pf,declaration:ge.union([ge.string(),Sq]),scope:mf.optional()})),Aq=Rt()(ge.object({declaration:ge.union([ge.string(),fle])})),Tq=Rt()(ge.object({bindTarget:Ro,tableHead:ge.string().array(),columns:ge.array(ge.union([wq,Sq,ge.string()]))})),Nq=Rt()(ge.object({renderChildType:pf,declaration:ge.union([ge.string(),ple]),position:bq.optional()})),Mq=Rt()(ge.object({declaration:ge.union([ge.string(),Fc]),position:bq.optional(),isPreview:ge.boolean()})),Cq=Rt()(ge.object({depth:ge.number(),content:ge.string()}));var dle=(t,e)=>e(t,"left"),hle=ue("");function vm(t,e){Ae(e,!0);let r=pt(e,"variant",19,()=>"default"),i=pt(e,"disabled",7,!1),n=pt(e,"tooltip",3,""),o=pt(e,"label",3,""),a=pt(e,"icon",3,""),s=pt(e,"cssStyle",3,""),l=pt(e,"backgroundImage",3,""),u=pt(e,"error",3,!1),c=pt(e,"onclick",3,()=>{}),f=pt(e,"onauxclick",3,()=>{});async function m(b,_){if(!i()){i(!0);try{_==="left"?await c()(b):_==="middle"&&await f()(b)}catch(w){console.warn("failed to run button component on click",w)}finally{i(!1)}}}var p=hle();let d,h;p.__click=[dle,m];var v=he(p);{var y=b=>{Rr(b,{get mb(){return e.mb},get iconName(){return a()}})};ot(v,b=>{a()&&b(y)})}var S=fe(v);pe(p),ze((b,_)=>{d=zr(p,1,"mb-button-inner",null,d,b),h=mc(p,s(),h,_),lt(p,"aria-label",n()),p.disabled=i(),St(S,` ${o()??""}`)},[()=>({"mod-cta":r()==="primary","mod-warning":r()==="destructive","mod-plain":r()==="plain",disabled:i(),"mb-error":u()}),()=>({"background-image":l()?`url("${l()}")`:void 0})]),Ai("auxclick",p,b=>m(b,"middle")),ee(t,p),Te()}Ft(["click"]);var ku=class extends Ti{mb;config;filePath;isInline;position;buttonComponent;isInGroup;isPreview;constructor(e,r,i,n,o,a,s){super(),this.mb=e,this.config=r,this.filePath=i,this.isInline=n==="inline",this.position=o,this.isInGroup=a,this.isPreview=s}onMount(e){ht.empty(e),ht.removeAllClasses(e),ht.addClasses(e,["mb-button",this.isInline?"mb-button-inline":"mb-button-block"]),!(!this.isInline&&!this.isPreview&&!this.isInGroup&&(this.config.id&&this.mb.buttonManager.addButton(this.filePath,this.config),this.config.hidden))&&(this.config.class&&ht.addClasses(e,this.config.class.split(" ").filter(r=>r!=="")),this.buttonComponent=Fr(vm,{target:e,props:{mb:this.mb,icon:this.config.icon,variant:this.config.style,label:this.config.label,tooltip:Hx(this.config.tooltip)?this.config.tooltip:void 0,cssStyle:this.config.cssStyle,backgroundImage:Hx(this.config.backgroundImage)?this.mb.internal.imagePathToUri(this.config.backgroundImage):void 0,onclick:async r=>{await this.mb.buttonActionRunner.runButtonActions(this.config,this.filePath,this.getContext(),Cf.fromMouseEvent(r,"left"))},onauxclick:async r=>{await this.mb.buttonActionRunner.runButtonActions(this.config,this.filePath,this.getContext(),Cf.fromMouseEvent(r,"left"))}}}))}getContext(){return{position:this.position?.getPosition(),isInGroup:this.isInGroup,isInline:this.isInline}}onUnmount(){this.buttonComponent&&Dr(this.buttonComponent),!this.isInline&&!this.isPreview&&this.config?.id&&this.mb.buttonManager.removeButton(this.filePath,this.config.id)}};var $b=class extends Ti{mb;referencedIds;filePath;renderChildType;notePosition;constructor(e,r,i,n,o){super(),this.mb=e,this.referencedIds=r,this.filePath=i,this.renderChildType=n,this.notePosition=o}renderInitialButton(e,r){return ht.removeAllClasses(e),ht.addClasses(e,["mb-button",this.renderChildType==="inline"?"mb-button-inline":"mb-button-block"]),Fr(vm,{target:e,props:{mb:this.mb,variant:"default",label:"Button ID not Found",tooltip:`No button with id '${r}' found`,error:!0,onclick:async()=>{}}})}onMount(e){ht.empty(e),ht.addClasses(e,["mb-button-group",this.renderChildType==="inline"?"mb-button-group-inline":"mb-button-group-block"]);for(let r of this.referencedIds){let i=ht.createElement(e,"span"),n=this.renderInitialButton(i,r),o,a=this.mb.buttonManager.registerButtonLoadListener(this.filePath,r,s=>{n&&Dr(n),n=void 0,o=new ku(this.mb,s,this.filePath,this.renderChildType,this.notePosition,!0,!1),o.mount(i)});this.registerUnmountCb(()=>{n&&Dr(n),n=void 0,o?.unmount(),a()})}}onUnmount(e){ht.empty(e)}};var Ib=class extends Un{errorCollection;declaration;buttonField;renderChildType;position;constructor(e,r,i,n,o,a){super(e,r,i),this.declaration=n,this.errorCollection=new rr(this.getUuid()),this.errorCollection.merge(n.errorCollection),this.renderChildType=o,this.position=a}onMount(e){if(super.onMount(e),ht.removeAllClasses(e),this.declaration.errorCollection.isEmpty())try{this.buttonField=new $b(this.mb,this.declaration.referencedButtonIds,this.getFilePath(),this.renderChildType,this.position),this.buttonField.mount(e)}catch(r){this.errorCollection.add(r),this.renderErrorIndicator(e)}else this.renderErrorIndicator(e)}renderErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:"Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.",warningText:"Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.",code:this.declaration.declarationString})}onUnmount(e){super.onUnmount(e),this.buttonField?.unmount(),bi(e,"inline button")}};var Fb=class extends Un{errorCollection;declaration;position;buttonField;isPreview;constructor(e,r,i,n,o,a){super(e,r,i),this.declaration=n,this.position=o,this.isPreview=a,this.errorCollection=new rr(this.getUuid()),this.errorCollection.merge(n.errorCollection)}onMount(e){if(super.onMount(e),ht.removeAllClasses(e),this.declaration.config&&this.declaration.errorCollection.isEmpty())try{this.buttonField=new ku(this.mb,this.declaration.config,this.getFilePath(),"block",this.position,!1,this.isPreview),this.buttonField.mount(e)}catch(r){this.errorCollection.add(r),this.renderErrorIndicator(e)}else this.renderErrorIndicator(e)}renderErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:"Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.",warningText:"Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.",code:this.declaration.declarationString})}onUnmount(e){super.onUnmount(e),this.buttonField?.unmount(),bi(e,"button")}};var kb=class extends Un{depth;content;markdownUnloadCallback;constructor(e,r,i,n,o){super(e,r,i),this.depth=n,this.content=o}async parseContent(){let e=this.content.split(` -`).map(o=>o.trim()).filter(o=>o.length>0);if(e.length===0)return{content:""};if(e.length>1)return{error:"Embed may only contain one link"};let r=e[0],i=_n.parseLink(r);if(!i.internal)return{error:`${r} is not an internal link`};let n=this.mb.file.getPathByName(i.target,this.getFilePath());return n===void 0?{error:`"${i.target}" is not created yet`}:{content:await this.mb.file.read(n)}}exceedsMaxDepth(){return this.depth>Ed}createEmbedMessage(e,r){e.createSpan({text:r,cls:"mb-embed-message"})}async renderContent(e){try{if(this.exceedsMaxDepth()){this.createEmbedMessage(e,"Max embed depth exceeded");return}let r=await this.parseContent();if(r.error){this.createEmbedMessage(e,r.error);return}if(r.content===void 0){this.createEmbedMessage(e,"Embed content not found");return}let i=r.content.replace(/(```+|~~~+)meta-bind-embed.*/g,`$1meta-bind-embed-internal-${this.depth+1}`);this.markdownUnloadCallback=await this.mb.internal.renderMarkdown(i,e,this.getFilePath())}catch(r){let i=new rr("Embed");i.add(r),this.mb.internal.createErrorIndicator(e,{errorCollection:i})}}onMount(e){super.onMount(e),e.addClass("mb-embed"),this.renderContent(e)}onUnmount(e){super.onUnmount(e),e.removeClass("mb-embed"),this.markdownUnloadCallback?.(),bi(e,"Embed")}};var Pb=class extends Un{constructor(e,r,i){super(e,r,i)}onMount(e){super.onMount(e),ht.empty(e),ht.createElement(e,"span",{text:"[META_BIND] This folder has been excluded in the settings",class:"mb-error"})}onUnmount(e){super.onUnmount(e),ht.empty(e),bi(e,"Excluded")}};var df=class extends Un{renderChildType;errorCollection;inputField;declarationString;declaration;constructor(e,r,i,n,o){super(e,r,i),this.renderChildType=n,this.declaration=o,this.declarationString=o.declarationString,this.errorCollection=new rr(this.getUuid()),this.errorCollection.merge(o.errorCollection)}hasArgument(e){return this.getArguments(e).length>0}getArgument(e){return this.getArguments(e).at(0)}getArguments(e){if(this.declaration.errorCollection.hasErrors())throw new jt({errorLevel:"CRITICAL",effect:"can not retrieve arguments",cause:"inputFieldDeclaration has errors"});return this.declaration.argumentContainer.getAll(e)}getBindTarget(){return this.declaration.bindTarget}shouldAddCardContainer(){let e=this.declaration.inputFieldType==="select"||this.declaration.inputFieldType==="multiSelect"||this.declaration.inputFieldType==="list",r=this.hasArgument("showcase")||this.hasArgument("title");return this.renderChildType==="block"&&(e||r)}createContainer(e){if(this.shouldAddCardContainer()){let r=ht.createElement(e,"div");ht.addClass(r,"mb-card");let i=this.getArgument("title");return i&&ht.createElement(r,"h3",{text:i.value}),r}return e}addShowcase(e){if(this.getArgument("showcase")&&this.shouldAddCardContainer()){let i=ht.createElement(e,"code",{class:"mb-none"}),n=ht.createElement(i,"a",{text:this.declarationString,class:"mb-no-link"});n.href=Ht.linkToInputField(this.declaration.inputFieldType)}}createInputField(){if(!this.errorCollection.hasErrors())try{this.inputField=this.mb.inputFieldFactory.createInputField(this)}catch(e){this.errorCollection.add(e)}!this.errorCollection.hasErrors()&&!this.inputField&&this.errorCollection.add(new jt({errorLevel:"CRITICAL",effect:"can't render input field",cause:"input field is undefined"}))}createErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:"Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.",warningText:"Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.",code:this.declarationString})}onMount(e){if(super.onMount(e),ht.empty(e),ht.addClass(e,"mb-input"),this.createInputField(),this.errorCollection.hasErrors()){this.createErrorIndicator(e);return}let r=this.createContainer(e);this.createErrorIndicator(r);let i=ht.createElement(r,"div",{class:"mb-input-wrapper"});this.inputField?.mount(i);let n=this.getArguments("class");for(let o of n)ht.addClasses(i,o.value);ht.addClass(i,`mb-input-type-${this.declaration.inputFieldType}`),this.renderChildType==="block"?ht.addClass(e,"mb-input-block"):ht.addClass(e,"mb-input-inline"),this.addShowcase(r)}onUnmount(e){super.onUnmount(e),this.inputField?.unmount(),bi(e,"input field")}};var gle=ue("
");function Pu(t,e){Ae(e,!0);let r,i;io(()=>{i?.unmount(),i=e.mountable,i.mount(r)}),hc(()=>{i?.unmount()});var n=gle();xa(n,o=>r=o,()=>r),ee(t,n),Te()}var vle=ue(" "),yle=ue(""),ble=ue('invalid data'),xle=ue(''),_le=ue('
',1);function dA(t,e){Ae(e,!0);let r=pt(e,"tableHead",19,()=>[]),i=ft(wt([]));function n(p){Re(i,p,!0)}var o=_le(),a=je(o),s=he(a),l=he(s),u=he(l),c=he(u);Wt(c,17,r,Kt,(p,d)=>{var h=vle(),v=he(h,!0);pe(h),ze(()=>St(v,U(d))),ee(p,h)}),Nt(),pe(u),pe(l);var f=fe(l);Wt(f,21,()=>U(i),p=>p.index,(p,d)=>{var h=xle(),v=he(h);{var y=w=>{var x=Or(),E=je(x);Wt(E,17,()=>U(d).cells,Kt,(T,D)=>{var M=yle(),C=he(M);Pu(C,{get mountable(){return U(D)}}),pe(M),ee(T,M)}),ee(w,x)},S=w=>{var x=ble();ze(()=>lt(x,"colspan",r().length)),ee(w,x)};ot(v,w=>{U(d).isValid?w(y):w(S,!1)})}var b=fe(v),_=he(b);Dt(_,{onclick:()=>e.table.removeColumn(U(d).index),children:(w,x)=>{Rr(w,{get mb(){return e.table.mb},iconName:"x"})},$$slots:{default:!0}}),pe(b),pe(h),ee(p,h)}),pe(f),pe(s),pe(a);var m=fe(a,2);return Dt(m,{onclick:()=>e.table.addColumn(),children:(p,d)=>{Nt();var h=Gt("Add Row");ee(p,h)},$$slots:{default:!0}}),ee(t,o),Te({updateTable:n})}function Bb(t){return new gu(t.map(e=>$f.tryParse(e).success?new zu("array",e):new zu("object",e)))}var Ob=class extends Un{bindTarget;tableHead;columns;tableComponent;inputSignal;metadataSubscription;constructor(e,r,i,n,o,a){super(e,r,i),this.bindTarget=n,this.tableHead=o,this.columns=a,this.inputSignal=new bn(void 0)}registerSelfToMetadataManager(){this.metadataSubscription=this.mb.metadataManager.subscribe(this.getUuid(),this.inputSignal,this.bindTarget,()=>this.unmount())}unregisterSelfFromMetadataManager(){this.metadataSubscription?.unsubscribe()}updateMetadataManager(e){this.metadataSubscription?.write(e)}getValue(){return this.parseTableData(this.metadataSubscription?.read())}parseTableData(e){return Array.isArray(e)?e:[]}updateDisplayValue(e){e=e??[];let r=[];for(let i=0;i{if(typeof a=="string")return this.mb.api.createInlineFieldFromString(a,this.getFilePath(),n,"inline");if("inputFieldType"in a)return this.mb.api.createInputFieldMountable(this.getFilePath(),{declaration:a,scope:n,renderChildType:"inline"});if("viewFieldType"in a)return this.mb.api.createViewFieldMountable(this.getFilePath(),{declaration:a,scope:n,renderChildType:"inline"});throw new Error(`Unknown column type: ${JSON.stringify(a)}`)});r.push({cells:o,index:i,value:e[i],isValid:!0})}else r.push({cells:[],index:i,value:e[i],isValid:!1});this.tableComponent?.updateTable(r)}removeColumn(e){let r=this.getValue();r.splice(e,1),this.updateDisplayValue(r),this.updateMetadataManager(r)}addColumn(){let e=this.getValue();e.push({}),this.updateDisplayValue(e),this.updateMetadataManager(e)}onMount(e){super.onMount(e),this.tableComponent=Fr(dA,{target:e,props:{table:this,tableHead:this.tableHead}}),this.inputSignal.registerListener({callback:r=>{this.updateDisplayValue(this.parseTableData(r))}}),this.registerSelfToMetadataManager()}onUnmount(e){super.onUnmount(e),this.unregisterSelfFromMetadataManager(),this.tableComponent&&Dr(this.tableComponent),bi(e,"table")}};var Rb=class extends Un{errorCollection;declarationString;declaration;variables;metadataSubscription;jsRenderer;constructor(e,r,i,n){super(e,r,i),this.declaration=n,this.declarationString=n.declarationString,this.errorCollection=new rr(this.getUuid()),this.errorCollection.merge(n.errorCollection),this.variables=[],this.buildVariables()}buildVariables(){if(this.errorCollection.isEmpty())try{for(let e of this.declaration.bindTargetMappings??[])this.variables.push({bindTargetDeclaration:e.bindTarget,metadataSignal:new bn(void 0),uuid:_r(),contextName:e.name})}catch(e){this.errorCollection.add(e)}}buildContext(){let e={};for(let r of this.variables??[])!r.contextName||!r.metadataSignal||(e[r.contextName]=r.metadataSignal.get());return e}async evaluate(){return this.jsRenderer?.evaluate({bound:this.buildContext()})}registerSelfToMetadataManager(){this.metadataSubscription=this.mb.metadataManager.subscribeDerived(this.getUuid(),this.declaration.writeToBindTarget,this.variables.map(e=>e.bindTargetDeclaration),this.variables.map(e=>e.metadataSignal),async()=>await this.evaluate(),()=>this.unmount())}unregisterSelfFromMetadataManager(){this.metadataSubscription?.unsubscribe()}createErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:"Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.",warningText:"Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.",code:this.declarationString})}onMount(e){if(super.onMount(e),ht.addClass(e,"mb-view"),ht.empty(e),this.mb.internal.isJsEngineAvailable()||this.errorCollection.add(new da({errorLevel:"ERROR",effect:"can not create js view field",cause:"The JS Engine plugin is not installed and enabled."})),this.mb.getSettings().enableJs||this.errorCollection.add(new da({errorLevel:"CRITICAL",effect:"Can't evaluate expression.",cause:"JS evaluation is disabled in the plugin settings."})),this.createErrorIndicator(e),this.errorCollection.hasErrors())return;let r=document.createElement("div");ht.addClass(r,"mb-view-wrapper"),this.jsRenderer=this.mb.internal.createJsRenderer(r,this.getFilePath(),this.declaration.code,this.declaration.hidden),this.registerSelfToMetadataManager(),e.appendChild(r)}onUnmount(e){super.onUnmount(e),this.unregisterSelfFromMetadataManager(),bi(e,"js view field")}};var Lb=class extends Un{renderChildType;errorCollection;viewField;declarationString;declaration;constructor(e,r,i,n,o){super(e,r,i),this.renderChildType=n,this.declaration=o,this.declarationString=o.declarationString,this.errorCollection=new rr(this.getUuid()),this.errorCollection.merge(o.errorCollection)}hasArgument(e){return this.getArguments(e).length>0}getArgument(e){return this.getArguments(e).at(0)}getArguments(e){if(this.declaration.errorCollection.hasErrors())throw new jt({errorLevel:"ERROR",effect:"an not retrieve arguments",cause:"viewFieldDeclaration has errors"});return this.declaration.argumentContainer.getAll(e)}getDeclaration(){return this.declaration}createViewField(){if(!this.errorCollection.hasErrors())try{this.viewField=this.mb.viewFieldFactory.createViewField(this)}catch(e){this.errorCollection.add(e)}!this.errorCollection.hasErrors()&&!this.viewField&&this.errorCollection.add(new jt({errorLevel:"CRITICAL",effect:"can't render view field",cause:"view field is undefined"}))}createErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:"Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.",warningText:"Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.",code:this.declarationString})}onMount(e){if(super.onMount(e),ht.empty(e),ht.addClass(e,"mb-view"),this.createViewField(),this.errorCollection.hasErrors()){this.createErrorIndicator(e);return}let r=document.createElement("div");ht.addClass(r,"mb-view-wrapper");try{this.viewField?.mount(r)}catch(n){this.errorCollection.add(n)}this.createErrorIndicator(e),e.append(r);let i=this.getArguments("class");for(let n of i)ht.addClasses(r,n.value);ht.addClass(r,`mb-view-type-${this.declaration.viewFieldType}`),this.renderChildType==="block"?ht.addClass(e,"mb-view-block"):ht.addClass(e,"mb-view-inline")}onUnmount(e){super.onUnmount(e),this.viewField?.unmount(),bi(e,"view field")}};var Ub=class{mb;constructor(e){this.mb=e}createField(e,r,i,n=!0){if(sn(ge.object({type:gm,filePath:Lo,options:ge.any(),honorExcludedSetting:ge.boolean()}),{type:e,filePath:r,options:i,honorExcludedSetting:n}),this.mb.file.isExcludedFromRendering(r)&&n)return this.createExcludedMountable(r);if(e==="INPUT")return this.createInputFieldMountable(r,i);if(e==="VIEW")return this.createViewFieldMountable(r,i);if(e==="JS_VIEW")return this.createJsViewFieldMountable(r,i);if(e==="TABLE")return this.createTableMountable(r,i);if(e==="BUTTON_GROUP")return this.createButtonGroupMountable(r,i);if(e==="BUTTON")return this.createButtonMountable(r,i);if(e==="EMBED")return this.createEmbedMountable(r,i);if(e==="EXCLUDED")return this.createExcludedMountable(r);throw new Error(`Unknown field type: ${e}`)}createInlineFieldFromString(e,r,i,n="inline",o,a=!0){sn(ge.object({fieldString:ge.string(),filePath:Lo,scope:mf.optional(),renderChildType:pf,honorExcludedSetting:ge.boolean()}),{fieldString:e,filePath:r,scope:i,renderChildType:n,honorExcludedSetting:a});let s=this.isInlineFieldDeclarationAndGetType(e);if(s===void 0)throw new jt({errorLevel:"CRITICAL",effect:"failed to create inline field",cause:`Invalid inline mdrc type "${s}"`});return this.createInlineFieldOfTypeFromString(s,e,r,i,n,o,a)}createInlineFieldOfTypeFromString(e,r,i,n,o="inline",a,s=!0){if(sn(ge.object({type:gm,declaration:ge.string(),filePath:Lo,scope:mf.optional(),renderChildType:pf,honorExcludedSetting:ge.boolean()}),{type:e,declaration:r,filePath:i,scope:n,renderChildType:o,honorExcludedSetting:s}),this.mb.file.isExcludedFromRendering(i)&&s)return this.createExcludedMountable(i);if(e==="INPUT")return this.createInputFieldMountable(i,{renderChildType:o,declaration:r,scope:n});if(e==="VIEW")return this.createViewFieldMountable(i,{renderChildType:o,declaration:r,scope:n});if(e==="BUTTON_GROUP")return this.createButtonGroupMountable(i,{renderChildType:o,declaration:r,position:a});throw new jt({errorLevel:"CRITICAL",effect:"failed to create inline field",cause:`Invalid inline mdrc type "${e}"`})}createInputFieldMountable(e,r){sn(ge.object({filePath:Lo,options:Dq}),{filePath:e,options:r});let i=_r(),n;return typeof r.declaration=="string"?n=this.mb.inputFieldParser.fromStringAndValidate(r.declaration,e,r.scope):n=this.mb.inputFieldParser.fromSimpleDeclarationAndValidate(r.declaration,e,r.scope),new df(this.mb,i,e,r.renderChildType,n)}createViewFieldMountable(e,r){sn(ge.object({filePath:Lo,options:Eq}),{filePath:e,options:r});let i=_r(),n;return typeof r.declaration=="string"?n=this.mb.viewFieldParser.fromStringAndValidate(r.declaration,e,r.scope):n=this.mb.viewFieldParser.fromSimpleDeclarationAndValidate(r.declaration,e,r.scope),new Lb(this.mb,i,e,r.renderChildType,n)}createJsViewFieldMountable(e,r){sn(ge.object({filePath:Lo,options:Aq}),{filePath:e,options:r});let i=_r(),n;return typeof r.declaration=="string"?n=this.mb.jsViewFieldParser.fromStringAndValidate(r.declaration,e):n=this.mb.jsViewFieldParser.fromSimpleDeclarationAndValidate(r.declaration,e),new Rb(this.mb,i,e,n)}createTableMountable(e,r){sn(ge.object({filePath:Lo,options:Tq}),{filePath:e,options:r});let i=_r();return new Ob(this.mb,i,e,r.bindTarget,r.tableHead,r.columns)}createButtonGroupMountable(e,r){sn(ge.object({filePath:Lo,options:Nq}),{filePath:e,options:r});let i=_r(),n;return typeof r.declaration=="string"?n=this.mb.buttonParser.fromGroupString(r.declaration):n=this.mb.buttonParser.validateGroup(r.declaration),new Ib(this.mb,i,e,n,r.renderChildType,r.position)}createButtonMountable(e,r){sn(ge.object({filePath:Lo,options:Mq}),{filePath:e,options:r});let i=_r(),n;return typeof r.declaration=="string"?n=this.mb.buttonParser.fromString(r.declaration):n=this.mb.buttonParser.validate(r.declaration),new Fb(this.mb,i,e,n,r.position,r.isPreview)}createEmbedMountable(e,r){sn(ge.object({filePath:Lo,options:Cq}),{filePath:e,options:r});let i=_r();return new kb(this.mb,i,e,r.depth,r.content)}createExcludedMountable(e){sn(ge.object({filePath:Lo}),{filePath:e});let r=_r();return new Pb(this.mb,r,e)}getInlineFieldDeclarationPrefix(e){if(sn(ge.object({fieldType:gm}),{fieldType:e}),e==="INPUT")return"INPUT";if(e==="VIEW")return"VIEW";if(e==="BUTTON_GROUP")return"BUTTON";throw new jt({errorLevel:"CRITICAL",effect:"failed to get declaration prefix",cause:`Invalid inline mdrc type "${e}"`})}isInlineFieldDeclaration(e,r){sn(ge.object({fieldType:gm,str:ge.string()}),{fieldType:e,str:r});let i=this.getInlineFieldDeclarationPrefix(e)+"[";return r.startsWith(i)&&r.endsWith("]")}isInlineFieldDeclarationAndGetType(e){if(sn(ge.object({str:ge.string()}),{str:e}),!!e.endsWith("]"))for(let r of Object.values(jl)){if(!jm(r))continue;let i=this.getInlineFieldDeclarationPrefix(r)+"[";if(e.startsWith(i))return r}}createSignal(e){return new bn(e)}createBindTarget(e,r,i,n=!1){return sn(ge.object({storageType:ge.string(),storagePath:ge.string(),property:ge.string().array(),listenToChildren:ge.boolean()}),{storageType:e,storagePath:r,property:i,listenToChildren:n}),{storageType:e,storagePath:r,storageProp:Bb(i),listenToChildren:n}}parseBindTarget(e,r,i){return sn(ge.object({declarationString:ge.string(),filePath:Lo,scope:mf.optional()}),{declarationString:e,filePath:r,scope:i}),this.mb.bindTargetParser.fromStringAndValidate(e,r,i)}setMetadata(e,r){sn(ge.object({bindTarget:Ro}),{bindTarget:e}),this.mb.metadataManager.write(r,e)}getMetadata(e){return sn(ge.object({bindTarget:Ro}),{bindTarget:e}),this.mb.metadataManager.read(e)}updateMetadata(e,r){sn(ge.object({bindTarget:Ro,updateFn:xu()}),{bindTarget:e,updateFn:r});let i=this.mb.metadataManager.read(e),n=r(i);this.mb.metadataManager.write(n,e)}subscribeToMetadata(e,r,i){sn(ge.object({bindTarget:Ro,lifecycleHook:this.mb.internal.getLifecycleHookValidator(),callback:xu()}),{bindTarget:e,lifecycleHook:r,callback:i});let n=_r(),o=new bn(void 0);o.registerListener({callback:i});let a=this.mb.metadataManager.subscribe(n,o,e,()=>{o.unregisterAllListeners()});r.register(()=>{a.unsubscribe()})}createNotePosition(e,r){return sn(ge.object({lineStart:ge.number(),lineEnd:ge.number()}),{lineStart:e,lineEnd:r}),new ou({lineStart:e,lineEnd:r})}mathJSImport(e,r){this.mb.math.import(e,r)}};var $q=require("@codemirror/view"),zb=class extends $q.WidgetType{mb;type;content;filePath;parentComponent;renderChild;constructor(e,r,i,n,o){super(),this.type=e,this.content=r,this.filePath=i,this.parentComponent=n,this.mb=o}eq(e){return e.content===this.content}toDOM(e){let r=document.createElement("span");r.addClass("cm-inline-code");let i=this.mb.api.createInlineFieldOfTypeFromString(this.type,this.content,this.filePath,void 0);return this.renderChild=this.mb.api.wrapInMDRC(i,r,this.parentComponent),r}destroy(e){this.renderChild?.unload(),super.destroy(e)}};var Iq=require("obsidian"),Vb=class extends Iq.MarkdownRenderChild{mb;mountable;constructor(e,r,i){super(i),this.mb=e,this.mountable=r,this.mountable.registerUnmountCb(()=>{this.unload()})}onload(){this.containerEl.addClass("interactive-child"),this.mountable.mount(this.containerEl),super.onload()}onunload(){this.mountable.isMounted()&&this.mountable.unmount(),super.onunload()}};function Fq(t){return t.dependencyManager.checkDependency("dataview").api}function Bu(t){return t.dependencyManager.checkDependency("js-engine").api}function hA(t){return t.dependencyManager.checkDependency("templater-obsidian").templater}var wle=ge.object({addChild:xu()}),qb=class extends Ub{omb;constructor(e){super(e),this.omb=e}wrapInMDRC(e,r,i){sn(ge.object({field:yq,containerEl:vq,component:wle}),{field:e,containerEl:r,component:i});let n=new Vb(this.omb,e,r);return i.addChild(n),n}constructMDRCWidget(e,r,i,n){if(jm(e))return new zb(e,r,i,n,this.omb);throw new jt({errorLevel:"CRITICAL",effect:"failed to construct mdrc",cause:`Invalid inline field type "${e}"`})}reactiveMetadata(e,r,i){sn(ge.object({bindTargets:Ro.array(),lifecycleHook:this.mb.internal.getLifecycleHookValidator(),callback:xu()}),{bindTargets:e,lifecycleHook:r,callback:i});let n=Bu(this.omb),o=_r(),a=e.map(()=>new bn(void 0)),s=()=>Promise.resolve(),l=this.mb.metadataManager.subscribeEffect(o,e,a,()=>s(),()=>{});r.register(()=>l.unsubscribe());let u=n.reactive(i,...a.map(c=>c.get()));return s=()=>u.refresh(...a.map(c=>c.get())),u}};var Cl=require("obsidian");var jb=class{mb;constructor(e){this.mb=e}getFrontmatterLocation(e){let r=e.split(` -`);if(r.at(0)==="---"){for(let i=1;ir(n))}async create(e,r,i,n=!1,o=!1){let a=this.app.vault.getAvailablePath((0,Cl.normalizePath)(e+"/"+r),i),s=await this.app.vault.create(a,"");return n&&await this.openInSourceMode(s,o),s.path}getAllFiles(){return this.app.vault.getAllLoadedFiles().filter(e=>e instanceof Cl.TFile).map(e=>e.path)}getAllFolders(){return this.app.vault.getAllLoadedFiles().filter(e=>e instanceof Cl.TFolder).map(e=>e.path)}async open(e,r,i){this.app.workspace.openLinkText(e,r,i)}async openInSourceMode(e,r){let i=this.app.workspace.getLeaf(r?"tab":!1);i&&await i.openFile(e,{state:{mode:"source"}})}getPathByName(e,r=""){return this.app.metadataCache.getFirstLinkpathDest(e,r)?.path}};var In=require("obsidian");var Gb=Ar(ip());var kq=Ar(ip());var Sle=ue('
'),Dle=(t,e,r)=>e(U(r)),Ele=(t,e,r)=>e(t,U(r)),Ale=ue('
'),Tle=ue('
');function gA(t,e){Ae(e,!0);let r=fr(()=>YI(e.month,e.year));function i(l){l&&e.dateChange((0,kq.default)(new Date(e.year,e.month,l)))}function n(l,u){l.key===" "&&i(u)}var o=Tle(),a=he(o);Wt(a,21,JI,Kt,(l,u)=>{var c=Sle(),f=he(c),m=he(f,!0);pe(f),pe(c),ze(()=>St(m,U(u))),ee(l,c)}),pe(a);var s=fe(a,2);Wt(s,21,()=>U(r),l=>XI(),(l,u)=>{var c=Ale();let f;c.__click=[Dle,i,u],c.__keydown=[Ele,n,u];var m=he(c),p=he(m,!0);pe(m),pe(c),ze(d=>{f=zr(c,1,"mb-calendar-cell",null,f,d),St(p,U(u)||"")},[()=>({"mb-calendar-highlight":U(u),"mb-calendar-content-cell":U(u),"mb-calendar-selected":e.selectedDate?.year()===e.year&&e.selectedDate?.month()===e.month&&e.selectedDate?.date()===U(u)})]),ee(l,c)}),pe(s),pe(o),ee(t,o),Te()}Ft(["click","keydown"]);function Nle(t,e,r){if(U(e)===11){Re(e,0),Re(r,U(r)+1);return}Re(e,U(e)+1)}function Mle(t,e,r){if(U(e)===0){Re(e,11),Re(r,U(r)-1);return}Re(e,U(e)-1)}function Cle(t,e){let r=t.target.value,i=Number.parseInt(r);Number.isNaN(i)||Re(e,i,!0)}function $le(t,e,r){e(null),r.dateChangeCallback(null)}function Ile(t,e,r){e((0,Gb.default)()),r.dateChangeCallback(e())}var Fle=ue('
');function vA(t,e){Ae(e,!0);let r=pt(e,"selectedDate",23,Gb.default),i=ft(0),n=ft(0);io(()=>{if(r())Re(i,r().month(),!0),Re(n,r().year(),!0);else{let S=(0,Gb.default)();Re(i,S.month(),!0),Re(n,S.year(),!0)}});function o(S){r(S),e.dateChangeCallback(S)}var a=Fle(),s=he(a),l=he(s);l.__click=[Mle,i,n];var u=fe(l,2),c=he(u),f=he(c,!0);pe(c);var m=fe(c,2);Mt(m),m.__input=[Cle,n],pe(u);var p=fe(u,2);p.__click=[Nle,i,n],pe(s);var d=fe(s,2);gA(d,{dateChange:o,get month(){return U(i)},get year(){return U(n)},get selectedDate(){return r()}});var h=fe(d,2),v=he(h);v.__click=[$le,r,e];var y=fe(v,2);y.__click=[Ile,r,e],pe(h),pe(a),ze((S,b)=>{St(f,S),B_(m,b)},[()=>HI(U(i)),()=>U(n).toString()]),ee(t,a),Te()}Ft(["click","input"]);var hf=class extends Ti{modal;setModal(e){this.modal=e}closeModal(){if(this.modal!==void 0)this.modal.close();else throw new jt({errorLevel:"CRITICAL",effect:"Failed to close modal",cause:"Modal reference in ModalContent is undefined"})}};var kle=ue('
');function Ot(t,e){let r=pt(e,"name",3,""),i=pt(e,"description",3,""),n=pt(e,"heading",3,!1),o=pt(e,"vertical",3,!1);var a=kle();let s;var l=he(a),u=he(l),c=he(u,!0);pe(u);var f=fe(u,2),m=he(f,!0);pe(f),pe(l);var p=fe(l,2);let d;var h=he(p);{var v=y=>{var S=Or(),b=je(S);Ko(b,()=>e.children),ee(y,S)};ot(h,y=>{e.children&&y(v)})}pe(p),pe(a),ze((y,S)=>{s=zr(a,1,"setting-item",null,s,y),St(c,r()),St(m,i()),d=zr(p,1,"setting-item-control",null,d,S)},[()=>({"setting-item-heading":n(),"mb-vertical":o()}),()=>({"mb-vertical-control":o()})]),ee(t,a)}function yA(t,e){Ae(e,!0);let r=pt(e,"action",15);function i(){e.mb.internal.openCommandSelectModal(n=>{r(r().command=n.id,!0)})}{let n=fr(()=>r().command||"none");Ot(t,{get name(){return`Command: ${U(n)??""}`},description:"The command to execute when this action runs.",children:(o,a)=>{Dt(o,{get variant(){return"primary"},onclick:()=>i(),children:(s,l)=>{Nt();var u=Gt("Change");ee(s,u)},$$slots:{default:!0}})},$$slots:{default:!0}})}Te()}var Ple=(t,e,r)=>e(!U(r)),Ble=(t,e,r)=>{t.key===" "&&e(!U(r))},Ole=ue('
');function Uo(t,e){Ae(e,!0);let r=pt(e,"checked",15),i=fr(()=>r()??!1);var n=Ole();let o;n.__click=[Ple,r,i],n.__keydown=[Ble,r,i];var a=he(n);Mt(a),pe(n),ze(s=>{o=zr(n,1,"checkbox-container",null,o,s),lt(n,"aria-checked",U(i)),Is(a,U(i))},[()=>({"is-enabled":U(i)})]),ee(t,n),Te()}Ft(["click","keydown"]);var Rle=ue(''),Lle=ue(" ",1);function bA(t,e){Ae(e,!0);let r=pt(e,"action",15);function i(){e.mb.internal.openFolderSelectModal(u=>{r(r().folderPath=u,!0)})}var n=Lle(),o=je(n);{let u=fr(()=>r().folderPath||"none");Ot(o,{get name(){return`Folder: ${U(u)??""}`},description:"The folder to create a new note in.",children:(c,f)=>{Dt(c,{get variant(){return"primary"},onclick:()=>i(),tooltip:"Select from vault",children:(m,p)=>{Nt();var d=Gt("Change");ee(m,d)},$$slots:{default:!0}})},$$slots:{default:!0}})}var a=fe(o,2);{let u=fr(()=>r().fileName||"default");Ot(a,{get name(){return`File name: ${U(u)??""}`},description:"The file name of the new note.",children:(c,f)=>{var m=Rle();Mt(m),At(m,()=>r().fileName,p=>r(r().fileName=p,!0)),ee(c,m)},$$slots:{default:!0}})}var s=fe(a,2);Ot(s,{name:"Open note",description:"Whether to open the new note after this action ran.",children:(u,c)=>{Uo(u,{get checked(){return r().openNote},set checked(f){r(r().openNote=f,!0)}})},$$slots:{default:!0}});var l=fe(s,2);Ot(l,{name:"Open if note already exists",description:"Whether to open the note instead of creating a new one if the note already exists.",children:(u,c)=>{Uo(u,{get checked(){return r().openIfAlreadyExists},set checked(f){r(r().openIfAlreadyExists=f,!0)}})},$$slots:{default:!0}}),ee(t,n),Te()}function xA(t,e){Ae(e,!0);let r=pt(e,"action",15);function i(){e.mb.internal.openMarkdownFileSelectModal(n=>{r(r().templateFile=n,!0)})}{let n=fr(()=>r().templateFile||"default");Ot(t,{get name(){return`File path: ${U(n)??""}`},description:"The path to the templater file, relative to the vault root.",children:(o,a)=>{Dt(o,{get variant(){return"primary"},onclick:()=>i(),tooltip:"Select from vault",children:(s,l)=>{Nt();var u=Gt("Change");ee(s,u)},$$slots:{default:!0}})},$$slots:{default:!0}})}Te()}var Ule=ue('
',1);function _A(t,e){Ae(e,!0);let r=pt(e,"action",15);var i=Ule(),n=je(i);Ot(n,{name:"JS code",description:"The JavaScript code to run."});var o=fe(n,2),a=he(o);Cn(a),pe(o),At(a,()=>r().code,s=>r(r().code=s,!0)),ee(t,i),Te()}var zle=ue('');function wA(t,e){Ae(e,!0);let r=pt(e,"action",15);Ot(t,{name:"Text",description:"The text to input at the cursor.",children:(i,n)=>{var o=zle();Mt(o),At(o,()=>r().str,a=>r(r().str=a,!0)),ee(i,o)},$$slots:{default:!0}}),Te()}var Vle=ue(''),qle=ue('
',1);function SA(t,e){Ae(e,!0);let r=pt(e,"action",15);var i=qle(),n=je(i);Ot(n,{name:"Line",description:"The line number to insert at.",children:(l,u)=>{var c=Vle();Mt(c),At(c,()=>r().line,f=>r(r().line=f,!0)),ee(l,c)},$$slots:{default:!0}});var o=fe(n,2);Ot(o,{name:"Text to insert",description:"The text to insert into the note."});var a=fe(o,2),s=he(a);Cn(s),pe(a),At(s,()=>r().value,l=>r(r().value=l,!0)),ee(t,i),Te()}function DA(t,e){Ae(e,!0);let r=pt(e,"action",15);function i(){e.mb.internal.openFilteredFileSelectModal(n=>{r(r().file=n,!0)},n=>n.endsWith(".js"))}Ot(t,{name:"JS file",description:"The JavaScript file to run.",children:(n,o)=>{Dt(n,{get variant(){return"primary"},onclick:()=>i(),tooltip:"Select from vault",children:(a,s)=>{Nt();var l=Gt("Change");ee(a,l)},$$slots:{default:!0}})},$$slots:{default:!0}}),Te()}var jle=ue(' ',1),Zle=ue(" ",1);function EA(t,e){Ae(e,!0);let r=pt(e,"action",15);function i(){e.mb.internal.openMarkdownFileSelectModal(s=>{r(r().link=s,!0)})}var n=Zle(),o=je(n);Ot(o,{name:"Link",description:"The link to open.",children:(s,l)=>{var u=jle(),c=je(u);Mt(c);var f=fe(c,2);Dt(f,{get variant(){return"primary"},onclick:()=>i(),tooltip:"Select from vault",children:(m,p)=>{Rr(m,{iconName:"list",get mb(){return e.mb}})},$$slots:{default:!0}}),At(c,()=>r().link,m=>r(r().link=m,!0)),ee(s,u)},$$slots:{default:!0}});var a=fe(o,2);Ot(a,{name:"New tab",description:"Whether to open the link in a new tab.",children:(s,l)=>{Uo(s,{get checked(){return r().newTab},set checked(u){r(r().newTab=u,!0)}})},$$slots:{default:!0}}),ee(t,n),Te()}var Gle=ue(''),Wle=ue(''),Hle=ue('
',1);function AA(t,e){Ae(e,!0);let r=pt(e,"action",15);var i=Hle(),n=je(i);Ot(n,{name:"Regexp",description:"The regexp to find replacements.",children:(u,c)=>{var f=Gle();Mt(f),At(f,()=>r().regexp,m=>r(r().regexp=m,!0)),ee(u,f)},$$slots:{default:!0}});var o=fe(n,2);Ot(o,{name:"Regexp flags",description:"The regexp flags for this regexp.",children:(u,c)=>{var f=Wle();Mt(f),At(f,()=>r().regexpFlags,m=>r(r().regexpFlags=m,!0)),ee(u,f)},$$slots:{default:!0}});var a=fe(o,2);Ot(a,{name:"Replacement text",description:"The text to replace the button with."});var s=fe(a,2),l=he(s);Cn(l),pe(s),At(l,()=>r().replacement,u=>r(r().replacement=u,!0)),ee(t,i),Te()}var Yle=ue(''),Jle=ue(''),Xle=ue('
',1);function TA(t,e){Ae(e,!0);let r=pt(e,"action",15);var i=Xle(),n=je(i);Ot(n,{name:"Line from",description:"The line that marks the start of the area to replace.",children:(u,c)=>{var f=Yle();Mt(f),At(f,()=>r().fromLine,m=>r(r().fromLine=m,!0)),ee(u,f)},$$slots:{default:!0}});var o=fe(n,2);Ot(o,{name:"Line to",description:"The line that marks the end of the area to replace.",children:(u,c)=>{var f=Jle();Mt(f),At(f,()=>r().toLine,m=>r(r().toLine=m,!0)),ee(u,f)},$$slots:{default:!0}});var a=fe(o,2);Ot(a,{name:"Replacement text",description:"The text to replace the note section."});var s=fe(a,2),l=he(s);Cn(l),pe(s),At(l,()=>r().replacement,u=>r(r().replacement=u,!0)),ee(t,i),Te()}var Kle=ue('
',1);function NA(t,e){Ae(e,!0);let r=pt(e,"action",15);var i=Kle(),n=je(i);Ot(n,{name:"Replacement text",description:"The text to replace the match with."});var o=fe(n,2),a=he(o);Cn(a),pe(o),At(a,()=>r().replacement,s=>r(r().replacement=s,!0)),ee(t,i),Te()}var Qle=ue('');function MA(t,e){Ae(e,!0);let r=pt(e,"action",15);Ot(t,{name:"Sleep time",description:"The time to sleep in milliseconds.",children:(i,n)=>{var o=Qle();Mt(o),At(o,()=>r().ms,a=>r(r().ms=a,!0)),ee(i,o)},$$slots:{default:!0}}),Te()}var ece=ue(''),tce=ue(" ",1);function CA(t,e){Ae(e,!0);let r=pt(e,"action",15);function i(f){e.mb.internal.openFileSelectModal(m=>{f.templateFile=m})}function n(f){e.mb.internal.openFolderSelectModal(m=>{f.folderPath=m})}var o=tce(),a=je(o);{let f=fr(()=>r().templateFile||"none");Ot(a,{get name(){return`Template file: ${U(f)??""}`},description:"The template file to create a new note of.",children:(m,p)=>{Dt(m,{get variant(){return"primary"},onclick:()=>i(r()),tooltip:"Select from vault",children:(d,h)=>{Nt();var v=Gt("Change");ee(d,v)},$$slots:{default:!0}})},$$slots:{default:!0}})}var s=fe(a,2);{let f=fr(()=>r().folderPath||"none");Ot(s,{get name(){return`Folder: ${U(f)??""}`},description:"The folder to create a new note in.",children:(m,p)=>{Dt(m,{get variant(){return"primary"},onclick:()=>n(r()),tooltip:"Select from vault",children:(d,h)=>{Nt();var v=Gt("Change");ee(d,v)},$$slots:{default:!0}})},$$slots:{default:!0}})}var l=fe(s,2);{let f=fr(()=>r().fileName||"default");Ot(l,{get name(){return`File name: ${U(f)??""}`},description:"The file name of the new note.",children:(m,p)=>{var d=ece();Mt(d),At(d,()=>r().fileName,h=>r(r().fileName=h,!0)),ee(m,d)},$$slots:{default:!0}})}var u=fe(l,2);Ot(u,{name:"Open note",description:"Whether to open the new note after this action ran.",children:(f,m)=>{Uo(f,{get checked(){return r().openNote},set checked(p){r(r().openNote=p,!0)}})},$$slots:{default:!0}});var c=fe(u,2);Ot(c,{name:"Open if note already exists",description:"Whether to open the note instead of creating a new one if the note already exists.",children:(f,m)=>{Uo(f,{get checked(){return r().openIfAlreadyExists},set checked(p){r(r().openIfAlreadyExists=p,!0)}})},$$slots:{default:!0}}),ee(t,o),Te()}var rce=ue(''),nce=ue(''),ice=ue(" ",1);function $A(t,e){Ae(e,!0);let r=pt(e,"action",15);var i=ice(),n=je(i);Ot(n,{name:"Metadata property",description:"The metadata property in form of a bind target.",children:(s,l)=>{var u=rce();Mt(u),At(u,()=>r().bindTarget,c=>r(r().bindTarget=c,!0)),ee(s,u)},$$slots:{default:!0}});var o=fe(n,2);Ot(o,{name:"Value",description:"The new value.",children:(s,l)=>{var u=nce();Mt(u),At(u,()=>r().value,c=>r(r().value=c,!0)),ee(s,u)},$$slots:{default:!0}});var a=fe(o,2);Ot(a,{name:"Evaluate",description:"Whether to evaluate the value as a JS expression.",children:(s,l)=>{Uo(s,{get checked(){return r().evaluate},set checked(u){r(r().evaluate=u,!0)}})},$$slots:{default:!0}}),ee(t,i),Te()}var oce=ue("
");function Qs(t,e){Ae(e,!0);let r=pt(e,"reverse",3,!1),i=pt(e,"stretchChildren",3,!1),n=fr(()=>[r()?"mb-flex-row-reverse":"mb-flex-row",i()?"mb-flex-row-stretch":""].join(" "));var o=oce(),a=he(o);Ko(a,()=>e.children),pe(o),ze(()=>zr(o,1,$s(U(n)))),ee(t,o),Te()}var ace=ue('');function zo(t,e){var r=ace(),i=he(r);Ko(i,()=>e.children),pe(r),ee(t,r)}var sce=ue(''),uce=ue(''),lce=ue(""),cce=ue(''),fce=ue(''),pce=ue(''),mce=ue(' ',1),dce=ue(''),hce=ue(''),gce=ue(""),vce=ue("
",1),yce=ue(" ",1),bce=ue(" ",1),xce=ue('

Actions

Add action of type

Preview

',1);function IA(t,e){Ae(e,!0);let r=wt(e.buttonConfig),i,n,o=ft(wt("command"));hc(()=>{n?.unmount()}),io(()=>{n?.unmount(),i&&(ht.empty(i),n=new ku(e.mb,bt(r),"","block",void 0,!1,!0),n.mount(i))});function a(){r.actions?.push(e.mb.buttonActionRunner.createDefaultAction(U(o)))}function s($){r.actions?.splice($,1)}function l($){return e.mb.buttonActionRunner.getActionLabel($)}function u($,O){if(r.actions===void 0)return;let R=[];$>0&&R.push({name:"Move up",icon:"arrow-up",onclick:()=>{if(r.actions===void 0)return;let L=r.actions[$-1];r.actions[$-1]=r.actions[$],r.actions[$]=L}}),${if(r.actions===void 0)return;let L=r.actions[$+1];r.actions[$+1]=r.actions[$],r.actions[$]=L}}),R.push({name:"Remove",icon:"x",warning:!0,onclick:()=>s($)}),e.mb.internal.createContextMenu(R).showWithEvent(O)}function c(){e.mb.internal.openImageFileSelectModal($=>{r.backgroundImage=$})}function f(){r.backgroundImage=void 0}var m=xce(),p=je(m);Ot(p,{name:"Label",description:"The label shown on the button.",children:($,O)=>{var R=sce();Mt(R),At(R,()=>r.label,L=>r.label=L),ee($,R)},$$slots:{default:!0}});var d=fe(p,2);Ot(d,{name:"Icon",description:"The icon shown on the button. If left empty, no icon will show",children:($,O)=>{var R=uce();Mt(R),At(R,()=>r.icon,L=>r.icon=L),ee($,R)},$$slots:{default:!0}});var h=fe(d,2);Ot(h,{name:"Style",description:"The style variant of the button",children:($,O)=>{var R=cce();Wt(R,21,()=>Object.values(Gr),Kt,(L,k)=>{var V=lce(),J=he(V,!0);pe(V);var W={};ze(()=>{St(J,U(k)),W!==(W=U(k))&&(V.value=(V.__value=U(k))??"")}),ee(L,V)}),pe(R),dc(R,()=>r.style,L=>r.style=L),ee($,R)},$$slots:{default:!0}});var v=fe(h,2);Ot(v,{name:"CSS classes",description:"A list of CSS classes to add to the button. Multiple classes should be separated by a space.",children:($,O)=>{var R=fce();Mt(R),At(R,()=>r.class,L=>r.class=L),ee($,R)},$$slots:{default:!0}});var y=fe(v,2);Ot(y,{name:"CSS styles",description:"CSS styles to directly apply to the button.",children:($,O)=>{var R=pce();Mt(R),At(R,()=>r.cssStyle,L=>r.cssStyle=L),ee($,R)},$$slots:{default:!0}});var S=fe(y,2);Ot(S,{name:"Background image",description:"A background image to use in the button.",children:($,O)=>{var R=mce(),L=je(R),k=he(L,!0);pe(L);var V=fe(L,2);Dt(V,{get variant(){return"primary"},onclick:()=>c(),tooltip:"Select from vault",children:(W,Q)=>{Nt();var ie=Gt("Change");ee(W,ie)},$$slots:{default:!0}});var J=fe(V,2);Dt(J,{get variant(){return"default"},onclick:()=>f(),tooltip:"Reset to none",children:(W,Q)=>{Rr(W,{get mb(){return e.mb},iconName:"x"})},$$slots:{default:!0}}),ze(()=>St(k,r.backgroundImage||"none")),ee($,R)},$$slots:{default:!0}});var b=fe(S,2);Ot(b,{name:"Tooltip",description:"A tooltip to show when hovering the button. If not set, the button label will be shown instead.",children:($,O)=>{var R=dce();Mt(R),At(R,()=>r.tooltip,L=>r.tooltip=L),ee($,R)},$$slots:{default:!0}});var _=fe(b,2);Ot(_,{name:"ID",description:"An ID that allows the button to be referenced in inline buttons.",children:($,O)=>{var R=hce();Mt(R),At(R,()=>r.id,L=>r.id=L),ee($,R)},$$slots:{default:!0}});var w=fe(_,2);Ot(w,{name:"Hidden",description:"Whether to not render this button. This can be useful when using inline buttons.",children:($,O)=>{Uo($,{get checked(){return r.hidden},set checked(R){r.hidden=R}})},$$slots:{default:!0}});var x=fe(w,4);Wt(x,21,()=>Object.values(Wn),Kt,($,O)=>{var R=gce(),L=he(R,!0);pe(R);var k={};ze(()=>{St(L,U(O)),k!==(k=U(O))&&(R.value=(R.__value=U(O))??"")}),ee($,R)}),pe(x);var E=fe(x,2);Dt(E,{get variant(){return"primary"},onclick:()=>a(),children:($,O)=>{Nt();var R=Gt("Add Action");ee($,R)},$$slots:{default:!0}});var T=fe(E,2);{var D=$=>{var O=Or(),R=je(O);Wt(R,17,()=>r.actions??[],Kt,(L,k,V)=>{var J=yce(),W=je(J);Qs(W,{children:(ke,Y)=>{var me=vce(),ce=je(me),Ce=he(ce,!0);pe(ce);var Pe=fe(ce,2);Dt(Pe,{get variant(){return"plain"},onclick:we=>u(V,we),children:(we,We)=>{Rr(we,{iconName:"more-vertical",get mb(){return e.mb}})},$$slots:{default:!0}}),ze(we=>St(Ce,we),[()=>l(U(k).type)]),ee(ke,me)},$$slots:{default:!0}});var Q=fe(W,2);{var ie=ke=>{yA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(Q,ke=>{U(k).type==="command"&&ke(ie)})}var B=fe(Q,2);{var Z=ke=>{EA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(B,ke=>{U(k).type==="open"&&ke(Z)})}var q=fe(B,2);{var xe=ke=>{DA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(q,ke=>{U(k).type==="js"&&ke(xe)})}var de=fe(q,2);{var be=ke=>{wA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(de,ke=>{U(k).type==="input"&&ke(be)})}var G=fe(de,2);{var K=ke=>{MA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(G,ke=>{U(k).type==="sleep"&&ke(K)})}var re=fe(G,2);{var ae=ke=>{CA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(re,ke=>{U(k).type==="templaterCreateNote"&&ke(ae)})}var le=fe(re,2);{var Se=ke=>{$A(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(le,ke=>{U(k).type==="updateMetadata"&&ke(Se)})}var _e=fe(le,2);{var Oe=ke=>{bA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(_e,ke=>{U(k).type==="createNote"&&ke(Oe)})}var st=fe(_e,2);{var yt=ke=>{xA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(st,ke=>{U(k).type==="runTemplaterFile"&&ke(yt)})}var Qe=fe(st,2);{var ut=ke=>{TA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(Qe,ke=>{U(k).type==="replaceInNote"&&ke(ut)})}var H=fe(Qe,2);{var oe=ke=>{AA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(H,ke=>{U(k).type==="regexpReplaceInNote"&&ke(oe)})}var ve=fe(H,2);{var De=ke=>{NA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(ve,ke=>{U(k).type==="replaceSelf"&&ke(De)})}var Ee=fe(ve,2);{var Ue=ke=>{SA(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(Ee,ke=>{U(k).type==="insertIntoNote"&&ke(Ue)})}var He=fe(Ee,2);{var nt=ke=>{_A(ke,{get mb(){return e.mb},get action(){return r.actions[V]},set action(Y){r.actions[V]=Y}})};ot(He,ke=>{U(k).type==="inlineJS"&&ke(nt)})}ee(L,J)}),ee($,O)};ot(T,$=>{r.actions&&$(D)})}var M=fe(T,4);xa(M,$=>i=$,()=>i);var C=fe(M,2);zo(C,{children:($,O)=>{var R=bce(),L=je(R);Dt(L,{get variant(){return"primary"},onclick:()=>e.modal.okay(bt(r)),children:(V,J)=>{Nt();var W=Gt();ze(()=>St(W,e.modal.options.submitText)),ee(V,W)},$$slots:{default:!0}});var k=fe(L,2);Dt(k,{get variant(){return"default"},onclick:()=>e.modal.cancel(),children:(V,J)=>{Nt();var W=Gt("Cancel");ee(V,W)},$$slots:{default:!0}}),ee($,R)},$$slots:{default:!0}}),dc(x,()=>U(o),$=>Re(o,$)),ee(t,m),Te()}var Wb=class extends hf{mb;component;options;constructor(e,r){super(),this.mb=e,this.options=r}onMount(e){ht.empty(e),this.component&&Dr(this.component),this.component=Fr(IA,{target:e,props:{mb:this.mb,modal:this,buttonConfig:this.options.config??this.mb.buttonActionRunner.createDefaultButtonConfig()}})}onUnmount(e){ht.empty(e),this.component&&Dr(this.component)}okay(e){this.closeModal(),this.options.onOkay(e)}cancel(){this.closeModal()}};var _ce=(t,e,r)=>r.onSelect(r.image),wce=(t,e,r,i)=>e(t,i.image),Sce=ue('
');function FA(t,e){Ae(e,!0);let r=nr(e,["$$slots","$$events","$$legacy"]);function i(u,c){u.key===" "&&e.onSelect(c)}var n=Sce();n.__click=[_ce,r,e],n.__keydown=[wce,i,r,e];var o=he(n),a=fe(o,2),s=he(a),l=he(s,!0);pe(s),pe(a),pe(n),ze(u=>{lt(o,"src",u),lt(o,"alt",e.image),St(l,e.image)},[()=>e.mb.internal.imagePathToUri(e.image)]),ee(t,n),Te()}Ft(["click","keydown"]);var Dce=ue(" ",1),Ece=ue('
',1);function kA(t,e){Ae(e,!0);let r=ft(""),i=e.mb.internal.createFuzzySearch(),n=fr(()=>U(r)?(i.setSearch(U(r)),i.filterItems(e.options,c=>c.value)):e.options);var o=Ece(),a=je(o),s=he(a);Mt(s),pe(a);var l=fe(a,2);Wt(l,21,()=>U(n),Kt,(c,f)=>{FA(c,{get mb(){return e.mb},get image(){return U(f).value},get onSelect(){return e.onSelect}})}),pe(l);var u=fe(l,2);zo(u,{children:(c,f)=>{var m=Dce(),p=je(m);{var d=v=>{Dt(v,{get variant(){return"primary"},onclick:()=>e.onSelect(void 0),children:(y,S)=>{Nt();var b=Gt("Select none");ee(y,b)},$$slots:{default:!0}})};ot(p,v=>{e.canSelectNone&&v(d)})}var h=fe(p,2);Dt(h,{onclick:()=>e.onCancel(),children:(v,y)=>{Nt();var S=Gt("Cancel");ee(v,S)},$$slots:{default:!0}}),ee(c,m)},$$slots:{default:!0}}),At(s,()=>U(r),c=>Re(r,c)),ee(t,o),Te()}var $l=class extends hf{component;createComponent;constructor(e){super(),this.createComponent=e}onMount(e){ht.empty(e),this.component=this.createComponent(this,e)}onUnmount(e){this.component&&Dr(this.component),ht.empty(e)}};var Ace=ue(""),Tce=ue(''),Nce=ue(" ",1),Mce=ue('

',1);function PA(t,e){Ae(e,!0);let r=ft(wt(e.options.value));var i=Mce(),n=je(i),o=he(n,!0);pe(n);var a=fe(n,2),s=he(a);{var l=f=>{var m=Ace();Cn(m),At(m,()=>U(r),p=>Re(r,p)),ee(f,m)},u=f=>{var m=Tce();Mt(m),At(m,()=>U(r),p=>Re(r,p)),ee(f,m)};ot(s,f=>{e.options.multiline?f(l):f(u,!1)})}pe(a);var c=fe(a,2);zo(c,{children:(f,m)=>{var p=Nce(),d=je(p);Dt(d,{get variant(){return"primary"},onclick:()=>e.options.onSubmit(bt(U(r))),children:(v,y)=>{Nt();var S=Gt("OK");ee(v,S)},$$slots:{default:!0}});var h=fe(d,2);Dt(h,{onclick:()=>e.options.onCancel(),children:(v,y)=>{Nt();var S=Gt("Cancel");ee(v,S)},$$slots:{default:!0}}),ee(f,p)},$$slots:{default:!0}}),ze(()=>St(o,e.options.subTitle)),ee(t,i),Te()}var is=class{mb;selectCallback;constructor(e,r){this.mb=e,this.selectCallback=r}onSelected(e){this.selectCallback(e)}};var Hb=class extends is{getItemText(e){return e.name}getItemDescription(e){}getItems(){return this.mb.internal.getAllCommands()}};var ym=class extends is{filterFunction;constructor(e,r,i){super(e,r),this.filterFunction=i}getItemText(e){return e}getItemDescription(e){}getItems(){return this.filterFunction!==void 0?this.mb.file.getAllFiles().filter(e=>this.filterFunction(e)):this.mb.file.getAllFiles()}};var Yb=class extends is{getItemText(e){return e}getItemDescription(e){}getItems(){return this.mb.file.getAllFolders()}};var Jb=class extends is{ipf;constructor(e,r,i){super(e,r),this.ipf=i}getItemText(e){return e.displayValue}getItemDescription(e){return e.displayDescription}getItems(){return this.mb.internal.getSuggesterOptions(this.ipf)}};var Cce=ue('
 
'),$ce=ue("Tip "),Ice=ue("
",1),Fce=ue("Docs"),kce=ue('Context
 
'),Pce=ue('
Cause
Effect
'),Bce=ue('
 
');function Xb(t,e){Ae(e,!0);var r=Or(),i=je(r);{var n=a=>{var s=Pce(),l=he(s),u=he(l),c=he(u);pe(u);var f=fe(u);pe(l);var m=fe(l,2);{var p=$=>{var O=Cce(),R=he(O),L=he(R,!0);pe(R),pe(O),ze(()=>St(L,e.error.positionContext)),ee($,O)};ot(m,$=>{e.error.positionContext&&$(p)})}var d=fe(m,2),h=he(d),v=he(h),y=fe(he(v)),S=he(y,!0);pe(y),pe(v);var b=fe(v),_=fe(he(b)),w=he(_,!0);pe(_),pe(b);var x=fe(b);{var E=$=>{var O=$ce(),R=fe(he(O)),L=he(R,!0);pe(R),pe(O),ze(()=>St(L,e.error.tip)),ee($,O)};ot(x,$=>{e.error.tip&&$(E)})}var T=fe(x);{var D=$=>{var O=Fce(),R=fe(he(O));Wt(R,21,()=>e.error.docs,Kt,(L,k)=>{var V=Ice(),J=je(V),W=he(J,!0);pe(J),Nt(),ze(()=>{lt(J,"href",U(k)),St(W,U(k))}),ee(L,V)}),pe(R),pe(O),ee($,O)};ot(T,$=>{e.error.docs&&$(D)})}var M=fe(T);{var C=$=>{var O=kce(),R=fe(he(O)),L=he(R),k=he(L),V=he(k,!0);pe(k),pe(L),pe(R),pe(O),ze(J=>St(V,J),[()=>JSON.stringify(e.error.context,null,4)]),ee($,O)};ot(M,$=>{e.error.context&&$(C)})}pe(h),pe(d),pe(s),ze($=>{zr(u,1,$s(e.error.errorLevel==="WARNING"?"mb-warning-text":"mb-error-text")),St(c,`${e.error.errorLevel??""} - [${$??""}]`),St(f,` - ${e.error.effect??""}`),St(S,e.error.cause),St(w,e.error.effect)},[()=>e.error.getErrorType()]),ee(a,s)},o=a=>{var s=Bce(),l=he(s),u=he(l),c=he(u,!0);pe(u),pe(l),pe(s),ze(()=>St(c,e.error.stack)),ee(a,s)};ot(i,a=>{e.error instanceof Zn?a(n):a(o,!1)})}ee(t,r),Te()}var Oce=ue("

"),Rce=ue('
 
'),Lce=ue("

"),Uce=ue("
Errors
",1),zce=ue("

"),Vce=ue("
Warnings
",1),qce=ue(" ",1);function eu(t,e){Ae(e,!0);var r=qce(),i=je(r);{var n=f=>{var m=Oce(),p=he(m,!0);pe(m),ze(()=>St(p,e.settings.text)),ee(f,m)};ot(i,f=>{e.settings.text&&f(n)})}var o=fe(i,2);{var a=f=>{var m=Rce(),p=he(m),d=he(p,!0);pe(p),pe(m),ze(()=>St(d,e.settings.code)),ee(f,m)};ot(o,f=>{e.settings.code&&f(a)})}var s=fe(o,2);{var l=f=>{var m=Uce(),p=fe(je(m),2);{var d=v=>{var y=Lce(),S=he(y,!0);pe(y),ze(()=>St(S,e.settings.errorText)),ee(v,y)};ot(p,v=>{e.settings.errorText&&v(d)})}var h=fe(p,2);Wt(h,17,()=>e.settings.errorCollection.getErrors(),Kt,(v,y)=>{Xb(v,{get error(){return U(y)}})}),ee(f,m)};ot(s,f=>{e.settings.errorCollection.hasErrors()&&f(l)})}var u=fe(s,2);{var c=f=>{var m=Vce(),p=fe(je(m),2);{var d=v=>{var y=zce(),S=he(y,!0);pe(y),ze(()=>St(S,e.settings.warningText)),ee(v,y)};ot(p,v=>{e.settings.warningText&&v(d)})}var h=fe(p,2);Wt(h,17,()=>e.settings.errorCollection.getWarnings(),Kt,(v,y)=>{Xb(v,{get error(){return U(y)}})}),ee(f,m)};ot(u,f=>{e.settings.errorCollection.hasWarnings()&&f(c)})}ee(t,r),Te()}var jce=(t,e)=>e(),Zce=(t,e)=>{t.key===" "&&e()},Gce=ue(' [META_BIND_ERROR]',1),Wce=Qd(''),Hce=Qd(''),Yce=ue('
');function gf(t,e){Ae(e,!0);function r(){e.mb.internal.openErrorCollectionViewModal(e.settings)}var i=Or(),n=je(i);{var o=a=>{var s=Yce();s.__click=[jce,r],s.__keydown=[Zce,r];var l=he(s);{var u=f=>{var m=Gce();Nt(2),ee(f,m)},c=f=>{var m=Or(),p=je(m);{var d=v=>{var y=Wce();ee(v,y)},h=v=>{var y=Hce();ee(v,y)};ot(p,v=>{e.settings.errorCollection.hasWarnings()?v(d):v(h,!1)},!0)}ee(f,m)};ot(l,f=>{e.settings.errorCollection.hasErrors()?f(u):f(c,!1)})}pe(s),ee(a,s)};ot(n,a=>{e.settings.errorCollection.isEmpty()||a(o)})}ee(t,i),Te()}Ft(["click","keydown"]);var BA=["apng","avif","gif","jpg","jpeg","jfif","pjpeg","pjp","png","svg","webp"],Jce=BA.map(t=>`.${t}`),Kb=class{mb;constructor(e){this.mb=e}openCommandSelectModal(e){this.createSearchModal(new Hb(this.mb,e)).open()}openFileSelectModal(e){this.createSearchModal(new ym(this.mb,e)).open()}openFilteredFileSelectModal(e,r){this.createSearchModal(new ym(this.mb,e,r)).open()}openMarkdownFileSelectModal(e){this.openFilteredFileSelectModal(e,r=>r.endsWith(".md"))}openImageFileSelectModal(e){this.openFilteredFileSelectModal(e,r=>Jce.some(i=>r.endsWith(i)))}openFolderSelectModal(e){this.createSearchModal(new Yb(this.mb,e)).open()}openButtonBuilderModal(e){this.createModal(new Wb(this.mb,e),{title:"Meta Bind Button Builder"}).open()}openSuggesterModal(e,r){this.createSearchModal(new Jb(this.mb,r,e)).open()}openImageSuggesterModal(e,r,i){this.createModal(new $l((n,o)=>Fr(kA,{target:o,props:{mb:this.mb,options:this.getImageSuggesterOptions(e),canSelectNone:r,onSelect:a=>{i(a),n.closeModal()},onCancel:()=>{n.closeModal()}}})),{title:"Select an image from your Vault",classes:["mb-image-suggester-modal"]}).open()}openDatePickerModal(e,r){this.createModal(new $l((i,n)=>Fr(vA,{target:n,props:{selectedDate:e,dateChangeCallback:o=>{r(o),i.closeModal()}}})),{title:"Meta Bind date picker"}).open()}openTextPromptModal(e){this.createModal(new $l((r,i)=>Fr(PA,{target:i,props:{options:{...e,onSubmit:n=>{e.onSubmit(n),r.closeModal()},onCancel:()=>{e.onCancel(),r.closeModal()}}}})),e).open()}openErrorCollectionViewModal(e){this.createModal(new $l((r,i)=>Fr(eu,{target:i,props:{settings:e}})),{title:"Meta Bind error overview",classes:["mb-error-collection-modal","markdown-rendered"]}).open()}createErrorIndicator(e,r){let i=Fr(gf,{target:e,props:{mb:this.mb,settings:r}});return()=>{Dr(i)}}};var Pq=require("obsidian"),Qb=class{preparedSearch;constructor(){}setSearch(e){this.preparedSearch=(0,Pq.prepareFuzzySearch)(e)}filterItems(e,r){return this.preparedSearch?e.filter(i=>this.preparedSearch?.(r(i))?.score!=null):e}};var ho=require("obsidian");var Ou=class{value;displayValue;displayDescription;constructor(e,r,i){this.value=e,this.displayValue=r,this.displayDescription=i}valueAsString(){return this.value?.toString()??"null"}};function Bq(t){let e=[];for(let r of t.children)r instanceof ho.TFile&&Oq(r.extension)&&e.push(new Ou(r.path,r.name)),r instanceof ho.TFolder&&e.push(...Bq(r));return e}function Xce(t,e,r){let i=[];for(let n of r){let o=n.value;if(o.startsWith('"')&&o.endsWith('"'))o=o.substring(1,o.length-1);else{let s=new Br({errorLevel:"ERROR",effect:"failed to get suggest options",cause:"expected suggest option query for image suggester to start and end with double quotation marks"});new ho.Notice(`meta-bind | ${s.message}`),console.warn(s);continue}let a;if(o===""||o==="."?a=t.app.vault.getRoot():a=t.app.vault.getAbstractFileByPath(o),a==null){let s=new Br({errorLevel:"ERROR",effect:"failed to get suggest options",cause:`expected suggest option query ${o} for image suggester to exist`});new ho.Notice(`meta-bind | ${s.message}`),console.warn(s);continue}if(!(a instanceof ho.TFolder)){let s=new Br({errorLevel:"ERROR",effect:"failed to get suggest options",cause:`expected suggest option query ${n.value} for image suggester to be a folder`});new ho.Notice(`meta-bind | ${s.message}`),console.warn(s);continue}i.push(...Bq(a))}for(let n of e){let o=yn(n.value);if(!o){let s=new Br({errorLevel:"ERROR",effect:"failed to get suggest options",cause:`expected suggest option ${n.value} to be truthy`});new ho.Notice(`meta-bind | ${s.message}`),console.warn(s);continue}let a=t.app.vault.getAbstractFileByPath(o);if(!a){let s=new Br({errorLevel:"ERROR",effect:"failed to get suggest options",cause:`expected suggest option ${n.value} for image suggester to exist`});new ho.Notice(`meta-bind | ${s.message}`),console.warn(s);continue}if(!(a instanceof ho.TFile)){let s=new Br({errorLevel:"ERROR",effect:"failed to get suggest options",cause:`expected suggest option ${n.value} for image suggester to be a file`});new ho.Notice(`meta-bind | ${s.message}`),console.warn(s);continue}if(!Oq(a.extension)){let s=new Br({errorLevel:"ERROR",effect:"failed to get suggest options",cause:`expected suggest option ${n.value} for image suggester to be an image file`});new ho.Notice(`meta-bind | ${s.message}`),console.warn(s);continue}i.push(new Ou(a.path,a.name))}return i}function Oq(t){return BA.contains(t)}function Rq(t,e){let r=e.mountable.getArguments("option"),i=e.mountable.getArguments("optionQuery");return Xce(t,r,i)}var Lq=require("obsidian");var ex=class extends Lq.Modal{content;options;constructor(e,r,i){super(e.app),this.options=i,this.content=r,r.setModal(this)}onOpen(){this.options?.title&&this.titleEl.setText(this.options.title),this.options?.classes&&ht.addClasses(this.modalEl,this.options.classes),this.content.mount(this.contentEl)}onClose(){this.content.unmount()}};var bm=require("obsidian"),tx=class extends bm.FuzzySuggestModal{content;constructor(e,r){super(e.app),this.content=r}renderSuggestion(e,r){(0,bm.renderResults)(r.createDiv(),this.content.getItemText(e.item),e.match);let i=this.content.getItemDescription(e.item);i&&(0,bm.renderResults)(r.createEl("small",{cls:"mb-search-modal-element-description"}),i,{score:0,matches:[]})}getItems(){return this.content.getItems()}getItemText(e){return this.content.getItemText(e)}onChooseItem(e,r){this.content.onSelected(e)}};var Uq=require("obsidian");function Kce(t,e,r,i,n){let o=[];for(let a of r)o.push(new Ou(a.value,a.name,"option"));if(i.length>0){let a;try{a=Fq(t)}catch(l){return new Uq.Notice("meta-bind | Dataview needs to be installed and enabled to use suggest option queries. Check the console for more information."),console.warn("meta-bind | failed to get dataview api",l),o}let s=ge.object({name:ge.string().min(1),path:ge.string().min(1)});for(let l of i)a.pages(l.value,e).forEach(c=>{try{let f=c.file;if(!s.safeParse(f).success)return;let m=LI(f.path,f.name,n);o.push(new Ou(m,f.name,`file: ${f.path}`))}catch(f){console.warn("meta-bind | error while computing suggest options",f)}})}return o}function zq(t,e){let r=e.mountable.getArguments("option"),i=e.mountable.getArguments("optionQuery"),n=e.mountable.getArgument("useLinks");return Kce(t,e.mountable.getFilePath(),r,i,n===void 0?"true":n.value)}var Vq=require("obsidian"),rx=class{menu;constructor(){this.menu=new Vq.Menu}setItems(e){for(let r of e)this.menu.addItem(i=>{i.setTitle(r.name),r.icon&&i.setIcon(r.icon),r.warning&&i.setWarning(r.warning),i.onClick(r.onclick)})}show(e,r){this.menu.showAtPosition({x:e,y:r},document)}showWithEvent(e){this.menu.showAtMouseEvent(e),e.stopImmediatePropagation(),e.preventDefault()}};var OA=require("obsidian");var nx=class{mb;containerEl;filePath;jsEngine;code;hidden;renderComponent;constructor(e,r,i,n,o){this.mb=e,this.containerEl=r,this.filePath=i,this.code=n,this.hidden=o,this.jsEngine=Bu(this.mb),this.renderComponent=new OA.Component}async evaluateCode(e){let r=await this.jsEngine.internal.getContextForMarkdownOther(this.filePath);return this.jsEngine.internal.execute({code:this.code,context:r,container:this.containerEl,component:this.renderComponent,contextOverrides:e})}async evaluate(e){try{ht.empty(this.containerEl),ht.removeClass(this.containerEl,"mb-error"),this.renderComponent.unload(),this.renderComponent=new OA.Component,this.renderComponent.load();let r=await this.evaluateCode(e),i=this.jsEngine.internal.createRenderer(this.containerEl,this.filePath,this.renderComponent);return this.hidden||await i.render(r.result),i.convertToSimpleObject(r.result)}catch(r){r instanceof Error&&(this.containerEl.innerText=r.message,ht.addClass(this.containerEl,"mb-error"));return}}unload(){this.renderComponent.unload()}};var ix=class extends Kb{omb;app;constructor(e){super(e),this.omb=e,this.app=e.app}getLifecycleHookValidator(){return ge.instanceof(In.Component)}getImageSuggesterOptions(e){return Rq(this.omb,e)}getSuggesterOptions(e){return zq(this.omb,e)}async renderMarkdown(e,r,i){let n=new In.Component;return n.load(),await In.MarkdownRenderer.render(this.app,e,r,i,n),()=>n.unload()}executeCommandById(e){return this.app.commands.executeCommandById(e)}isJsEngineAvailable(){try{return Bu(this.omb),!0}catch{return!1}}async jsEngineRunFile(e,r,i,n){let o=Bu(this.omb),a=await o.internal.getContextForMarkdownCallingJSFile(r,e),s=new In.Component;return await o.internal.executeFile(e,{component:s,container:n,context:a,contextOverrides:i}),()=>s.unload()}async jsEngineRunCode(e,r,i,n){let o=Bu(this.omb),a=await o.internal.getContextForMarkdownOther(r),s=new In.Component;return await o.internal.execute({code:e,component:s,container:n,context:a,contextOverrides:i}),()=>s.unload()}createJsRenderer(e,r,i,n){return new nx(this.omb,e,r,i,n)}showNotice(e){new In.Notice(e)}parseYaml(e){return(0,In.parseYaml)(e)}stringifyYaml(e){return(0,In.stringifyYaml)(e)}setIcon(e,r){(0,In.setIcon)(e,r)}imagePathToUri(e){return this.app.vault.adapter.getResourcePath(e)}createModal(e,r){return new ex(this.omb,e,r)}createSearchModal(e){return new tx(this.omb,e)}getAllCommands(){return this.app.commands.listCommands().map(e=>({id:e.id,name:e.name}))}createFuzzySearch(){return new Qb}createContextMenu(e){let r=new rx;return r.setItems(e),r}async evaluateTemplaterTemplate(e,r){let i=hA(this.omb),n=this.app.vault.getAbstractFileByPath(e);if(!n||!(n instanceof In.TFile))throw new Error(`Template file not found: ${e}`);let o=this.app.vault.getAbstractFileByPath(r);if(!o||!(o instanceof In.TFile))throw new Error(`Target file not found: ${r}`);let a=i.create_running_config(n,o,4);return await i.read_and_parse_template(a)}async createNoteWithTemplater(e,r,i,n=!1,o=!1){let a=hA(this.omb),s=this.app.vault.getAbstractFileByPath(e);if(!s||!(s instanceof In.TFile))throw new Error(`Template file not found: ${e}`);let l;if(r!==void 0){let c=this.app.vault.getAbstractFileByPath(r);if(!c||!(c instanceof In.TFolder))throw new Error(`Folder not found: ${r}`);l=c}let u=await a.create_new_note_from_template(s,l,i,!1);return n&&u&&await this.mb.file.openInSourceMode(u,o),u?.path}};var RA=require("obsidian");var ox=class extends cf{mb;constructor(e,r,i){super(r,i),this.mb=e,this.mb.plugin.registerEvent(this.mb.app.metadataCache.on("changed",(n,o,a)=>{this.manager.onExternalUpdate(this,n.path,structuredClone(a.frontmatter)??{})}))}readExternal(e){let r=this.mb.app.vault.getAbstractFileByPath(e);if(r==null||!(r instanceof RA.TFile))throw new jt({errorLevel:"CRITICAL",effect:"can not get default cache item",cause:`no file for path "${e}" found or path is not a file`});let i=this.mb.app.metadataCache.getFileCache(r)?.frontmatter;return structuredClone(i)??{}}getDefaultCacheItem(e){let r=this.mb.app.vault.getAbstractFileByPath(e);if(r==null||!(r instanceof RA.TFile))throw new jt({errorLevel:"CRITICAL",effect:"can not get default cache item",cause:`no file for path "${e}" found or path is not a file`});let i=this.mb.app.metadataCache.getFileCache(r)?.frontmatter;return{data:structuredClone(i)??{},storagePath:e,file:r,...this.manager.constructDefaultCacheItem()}}async syncExternal(e){return this.mb.app.fileManager.processFrontMatter(e.file,r=>{Object.assign(r,e.data)})}};var xm=class extends ou{ctx;element;constructor(e,r){super(void 0),this.ctx=e,this.element=r}getPosition(){let e=this.ctx.getSectionInfo(this.element);if(e)return{lineStart:e.lineStart,lineEnd:e.lineEnd}}};var qq=require("obsidian");function LA(t,e){Ae(e,!0);let r=new df(e.mb,_r(),"","block",e.declaration);Pu(t,{get mountable(){return r}}),Te()}var Qce=ue('

');function UA(t,e){Ae(e,!0);let r=e.mb.api.createInlineFieldFromString(e.declaration.inputField,"",void 0,"block"),i=e.mb.api.createInlineFieldFromString(e.declaration.declaration,"",void 0,"block");var n=Qce(),o=he(n),a=he(o,!0);pe(o);var s=fe(o,2);Pu(s,{get mountable(){return r}});var l=fe(s,2);Pu(l,{get mountable(){return i}});var u=fe(l,2),c=he(u,!0);pe(u),pe(n),ze(()=>{St(a,e.declaration.title),St(c,e.declaration.display)}),ee(t,n),Te()}var efe=ue("

Meta Bind Playground

",1),tfe=ue(`

Quick Reference

Error Messages

When creating Input Fields or View Fields warnings ( ) and errors ( ) can occur. These are clickable and will show a modal with detailed information about the error +In case of a (multi dimensional) array or matrix, the prob order quantile of all elements will be calculated.`,examples:[`quantileSeq([3, -1, 5, 7], 0.5)`,`quantileSeq([3, -1, 5, 7], [1/3, 2/3])`,`quantileSeq([3, -1, 5, 7], 2)`,`quantileSeq([-1, 3, 5, 7], 0.5, true)`],seealso:[`mean`,`median`,`min`,`max`,`prod`,`std`,`sum`,`variance`]},std:{name:`std`,category:`Statistics`,syntax:[`std(a, b, c, ...)`,`std(A)`,`std(A, dimension)`,`std(A, normalization)`,`std(A, dimension, normalization)`],description:`Compute the standard deviation of all values, defined as std(A) = sqrt(variance(A)). Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".`,examples:[`std(2, 4, 6)`,`std([2, 4, 6, 8])`,`std([2, 4, 6, 8], "uncorrected")`,`std([2, 4, 6, 8], "biased")`,`std([1, 2, 3; 4, 5, 6])`],seealso:[`max`,`mean`,`min`,`median`,`prod`,`sum`,`variance`]},sum:{name:`sum`,category:`Statistics`,syntax:[`sum(a, b, c, ...)`,`sum(A)`,`sum(A, dimension)`],description:`Compute the sum of all values.`,examples:[`sum(2, 3, 4, 1)`,`sum([2, 3, 4, 1])`,`sum([2, 5; 4, 3])`],seealso:[`max`,`mean`,`median`,`min`,`prod`,`std`,`variance`]},variance:{name:`variance`,category:`Statistics`,syntax:[`variance(a, b, c, ...)`,`variance(A)`,`variance(A, dimension)`,`variance(A, normalization)`,`variance(A, dimension, normalization)`],description:`Compute the variance of all values. Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".`,examples:[`variance(2, 4, 6)`,`variance([2, 4, 6, 8])`,`variance([2, 4, 6, 8], "uncorrected")`,`variance([2, 4, 6, 8], "biased")`,`variance([1, 2, 3; 4, 5, 6])`],seealso:[`max`,`mean`,`min`,`median`,`min`,`prod`,`std`,`sum`]},corr:{name:`corr`,category:`Statistics`,syntax:[`corr(A,B)`],description:`Compute the correlation coefficient of a two list with values, For matrices, the matrix correlation coefficient is calculated.`,examples:[`corr([2, 4, 6, 8],[1, 2, 3, 6])`,`corr(matrix([[1, 2.2, 3, 4.8, 5], [1, 2, 3, 4, 5]]), matrix([[4, 5.3, 6.6, 7, 8], [1, 2, 3, 4, 5]]))`],seealso:[`max`,`mean`,`min`,`median`,`min`,`prod`,`std`,`sum`]},acos:{name:`acos`,category:`Trigonometry`,syntax:[`acos(x)`],description:`Compute the inverse cosine of a value in radians.`,examples:[`acos(0.5)`,`acos(cos(2.3))`],seealso:[`cos`,`atan`,`asin`]},acosh:{name:`acosh`,category:`Trigonometry`,syntax:[`acosh(x)`],description:"Calculate the hyperbolic arccos of a value, defined as `acosh(x) = ln(sqrt(x^2 - 1) + x)`.",examples:[`acosh(1.5)`],seealso:[`cosh`,`asinh`,`atanh`]},acot:{name:`acot`,category:`Trigonometry`,syntax:[`acot(x)`],description:`Calculate the inverse cotangent of a value.`,examples:[`acot(0.5)`,`acot(cot(0.5))`,`acot(2)`],seealso:[`cot`,`atan`]},acoth:{name:`acoth`,category:`Trigonometry`,syntax:[`acoth(x)`],description:"Calculate the inverse hyperbolic tangent of a value, defined as `acoth(x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.",examples:[`acoth(2)`,`acoth(0.5)`],seealso:[`acsch`,`asech`]},acsc:{name:`acsc`,category:`Trigonometry`,syntax:[`acsc(x)`],description:`Calculate the inverse cotangent of a value.`,examples:[`acsc(2)`,`acsc(csc(0.5))`,`acsc(0.5)`],seealso:[`csc`,`asin`,`asec`]},acsch:{name:`acsch`,category:`Trigonometry`,syntax:[`acsch(x)`],description:"Calculate the inverse hyperbolic cosecant of a value, defined as `acsch(x) = ln(1/x + sqrt(1/x^2 + 1))`.",examples:[`acsch(0.5)`],seealso:[`asech`,`acoth`]},asec:{name:`asec`,category:`Trigonometry`,syntax:[`asec(x)`],description:`Calculate the inverse secant of a value.`,examples:[`asec(0.5)`,`asec(sec(0.5))`,`asec(2)`],seealso:[`acos`,`acot`,`acsc`]},asech:{name:`asech`,category:`Trigonometry`,syntax:[`asech(x)`],description:`Calculate the inverse secant of a value.`,examples:[`asech(0.5)`],seealso:[`acsch`,`acoth`]},asin:{name:`asin`,category:`Trigonometry`,syntax:[`asin(x)`],description:`Compute the inverse sine of a value in radians.`,examples:[`asin(0.5)`,`asin(sin(0.5))`],seealso:[`sin`,`acos`,`atan`]},asinh:{name:`asinh`,category:`Trigonometry`,syntax:[`asinh(x)`],description:"Calculate the hyperbolic arcsine of a value, defined as `asinh(x) = ln(x + sqrt(x^2 + 1))`.",examples:[`asinh(0.5)`],seealso:[`acosh`,`atanh`]},atan:{name:`atan`,category:`Trigonometry`,syntax:[`atan(x)`],description:`Compute the inverse tangent of a value in radians.`,examples:[`atan(0.5)`,`atan(tan(0.5))`],seealso:[`tan`,`acos`,`asin`]},atanh:{name:`atanh`,category:`Trigonometry`,syntax:[`atanh(x)`],description:"Calculate the hyperbolic arctangent of a value, defined as `atanh(x) = ln((1 + x)/(1 - x)) / 2`.",examples:[`atanh(0.5)`],seealso:[`acosh`,`asinh`]},atan2:{name:`atan2`,category:`Trigonometry`,syntax:[`atan2(y, x)`],description:`Computes the principal value of the arc tangent of y/x in radians.`,examples:[`atan2(2, 2) / pi`,`angle = 60 deg in rad`,`x = cos(angle)`,`y = sin(angle)`,`atan2(y, x)`],seealso:[`sin`,`cos`,`tan`]},cos:{name:`cos`,category:`Trigonometry`,syntax:[`cos(x)`],description:`Compute the cosine of x in radians.`,examples:[`cos(2)`,`cos(pi / 4) ^ 2`,`cos(180 deg)`,`cos(60 deg)`,`sin(0.2)^2 + cos(0.2)^2`],seealso:[`acos`,`sin`,`tan`]},cosh:{name:`cosh`,category:`Trigonometry`,syntax:[`cosh(x)`],description:`Compute the hyperbolic cosine of x in radians.`,examples:[`cosh(0.5)`],seealso:[`sinh`,`tanh`,`coth`]},cot:{name:`cot`,category:`Trigonometry`,syntax:[`cot(x)`],description:`Compute the cotangent of x in radians. Defined as 1/tan(x)`,examples:[`cot(2)`,`1 / tan(2)`],seealso:[`sec`,`csc`,`tan`]},coth:{name:`coth`,category:`Trigonometry`,syntax:[`coth(x)`],description:`Compute the hyperbolic cotangent of x in radians.`,examples:[`coth(2)`,`1 / tanh(2)`],seealso:[`sech`,`csch`,`tanh`]},csc:{name:`csc`,category:`Trigonometry`,syntax:[`csc(x)`],description:`Compute the cosecant of x in radians. Defined as 1/sin(x)`,examples:[`csc(2)`,`1 / sin(2)`],seealso:[`sec`,`cot`,`sin`]},csch:{name:`csch`,category:`Trigonometry`,syntax:[`csch(x)`],description:`Compute the hyperbolic cosecant of x in radians. Defined as 1/sinh(x)`,examples:[`csch(2)`,`1 / sinh(2)`],seealso:[`sech`,`coth`,`sinh`]},sec:{name:`sec`,category:`Trigonometry`,syntax:[`sec(x)`],description:`Compute the secant of x in radians. Defined as 1/cos(x)`,examples:[`sec(2)`,`1 / cos(2)`],seealso:[`cot`,`csc`,`cos`]},sech:{name:`sech`,category:`Trigonometry`,syntax:[`sech(x)`],description:`Compute the hyperbolic secant of x in radians. Defined as 1/cosh(x)`,examples:[`sech(2)`,`1 / cosh(2)`],seealso:[`coth`,`csch`,`cosh`]},sin:{name:`sin`,category:`Trigonometry`,syntax:[`sin(x)`],description:`Compute the sine of x in radians.`,examples:[`sin(2)`,`sin(pi / 4) ^ 2`,`sin(90 deg)`,`sin(30 deg)`,`sin(0.2)^2 + cos(0.2)^2`],seealso:[`asin`,`cos`,`tan`]},sinh:{name:`sinh`,category:`Trigonometry`,syntax:[`sinh(x)`],description:`Compute the hyperbolic sine of x in radians.`,examples:[`sinh(0.5)`],seealso:[`cosh`,`tanh`]},tan:{name:`tan`,category:`Trigonometry`,syntax:[`tan(x)`],description:`Compute the tangent of x in radians.`,examples:[`tan(0.5)`,`sin(0.5) / cos(0.5)`,`tan(pi / 4)`,`tan(45 deg)`],seealso:[`atan`,`sin`,`cos`]},tanh:{name:`tanh`,category:`Trigonometry`,syntax:[`tanh(x)`],description:`Compute the hyperbolic tangent of x in radians.`,examples:[`tanh(0.5)`,`sinh(0.5) / cosh(0.5)`],seealso:[`sinh`,`cosh`]},to:{name:`to`,category:`Units`,syntax:[`x to unit`,`to(x, unit)`],description:`Change the unit of a value.`,examples:[`5 inch to cm`,`3.2kg to g`,`16 bytes in bits`],seealso:[]},toBest:{name:`toBest`,category:`Units`,syntax:[`toBest(x)`,`toBest(x, unitList)`,`toBest(x, unitList, options)`],description:`Converts to the most appropriate display unit.`,examples:[`toBest(unit(5000, "m"))`,`toBest(unit(3500000, "W"))`,`toBest(unit(0.000000123, "A"))`,`toBest(unit(10, "m"), "cm")`,`toBest(unit(10, "m"), "mm,km", {offset: 1.5})`],seealso:[]},clone:{name:`clone`,category:`Utils`,syntax:[`clone(x)`],description:`Clone a variable. Creates a copy of primitive variables, and a deep copy of matrices`,examples:[`clone(3.5)`,`clone(2 - 4i)`,`clone(45 deg)`,`clone([1, 2; 3, 4])`,`clone("hello world")`],seealso:[]},format:{name:`format`,category:`Utils`,syntax:[`format(value)`,`format(value, precision)`],description:`Format a value of any type as string.`,examples:[`format(2.3)`,`format(3 - 4i)`,`format([])`,`format(pi, 3)`],seealso:[`print`]},bin:{name:`bin`,category:`Utils`,syntax:[`bin(value)`],description:`Format a number as binary`,examples:[`bin(2)`],seealso:[`oct`,`hex`]},oct:{name:`oct`,category:`Utils`,syntax:[`oct(value)`],description:`Format a number as octal`,examples:[`oct(56)`],seealso:[`bin`,`hex`]},hex:{name:`hex`,category:`Utils`,syntax:[`hex(value)`],description:`Format a number as hexadecimal`,examples:[`hex(240)`],seealso:[`bin`,`oct`]},isNaN:{name:`isNaN`,category:`Utils`,syntax:[`isNaN(x)`],description:`Test whether a value is NaN (not a number)`,examples:[`isNaN(2)`,`isNaN(0 / 0)`,`isNaN(NaN)`,`isNaN(Infinity)`],seealso:[`isNegative`,`isNumeric`,`isPositive`,`isZero`,`isFinite`,`isBounded`]},isBounded:{name:`isBounded`,category:`Utils`,syntax:[`isBounded(x)`],description:`Test whether a value or its entries are bounded.`,examples:[`isBounded(Infinity)`,`isBounded(bigint(3))`,`isBounded([3, -Infinity, -3])`],seealso:[`isFinite`,`isNumeric`,`isNaN`,`isNegative`,`isPositive`]},isFinite:{name:`isFinite`,category:`Utils`,syntax:[`isFinite(x)`],description:`Test whether a value is finite, elementwise on collections.`,examples:[`isFinite(Infinity)`,`isFinite(bigint(3))`,`isFinite([3, -Infinity, -3])`],seealso:[`isBounded`,`isNumeric`,`isNaN`,`isNegative`,`isPositive`]},isInteger:{name:`isInteger`,category:`Utils`,syntax:[`isInteger(x)`],description:`Test whether a value is an integer number.`,examples:[`isInteger(2)`,`isInteger(3.5)`,`isInteger([3, 0.5, -2])`],seealso:[`isNegative`,`isNumeric`,`isPositive`,`isZero`]},isNegative:{name:`isNegative`,category:`Utils`,syntax:[`isNegative(x)`],description:`Test whether a value is negative: smaller than zero.`,examples:[`isNegative(2)`,`isNegative(0)`,`isNegative(-4)`,`isNegative([3, 0.5, -2])`],seealso:[`isInteger`,`isNumeric`,`isPositive`,`isZero`]},isNumeric:{name:`isNumeric`,category:`Utils`,syntax:[`isNumeric(x)`],description:`Test whether a value is a numeric value. Returns true when the input is a number, BigNumber, Fraction, or boolean.`,examples:[`isNumeric(2)`,`isNumeric("2")`,`hasNumericValue("2")`,`isNumeric(0)`,`isNumeric(bignumber(500))`,`isNumeric(fraction(0.125))`,`isNumeric(2 + 3i)`,`isNumeric([2.3, "foo", false])`],seealso:[`isInteger`,`isZero`,`isNegative`,`isPositive`,`isNaN`,`hasNumericValue`,`isFinite`,`isBounded`]},hasNumericValue:{name:`hasNumericValue`,category:`Utils`,syntax:[`hasNumericValue(x)`],description:`Test whether a value is an numeric value. In case of a string, true is returned if the string contains a numeric value.`,examples:[`hasNumericValue(2)`,`hasNumericValue("2")`,`isNumeric("2")`,`hasNumericValue(0)`,`hasNumericValue(bignumber(500))`,`hasNumericValue(fraction(0.125))`,`hasNumericValue(2 + 3i)`,`hasNumericValue([2.3, "foo", false])`],seealso:[`isInteger`,`isZero`,`isNegative`,`isPositive`,`isNaN`,`isNumeric`]},isPositive:{name:`isPositive`,category:`Utils`,syntax:[`isPositive(x)`],description:`Test whether a value is positive: larger than zero.`,examples:[`isPositive(2)`,`isPositive(0)`,`isPositive(-4)`,`isPositive([3, 0.5, -2])`],seealso:[`isInteger`,`isNumeric`,`isNegative`,`isZero`]},isPrime:{name:`isPrime`,category:`Utils`,syntax:[`isPrime(x)`],description:`Test whether a value is prime: has no divisors other than itself and one.`,examples:[`isPrime(3)`,`isPrime(-2)`,`isPrime([2, 17, 100])`],seealso:[`isInteger`,`isNumeric`,`isNegative`,`isZero`]},isZero:{name:`isZero`,category:`Utils`,syntax:[`isZero(x)`],description:`Test whether a value is zero.`,examples:[`isZero(2)`,`isZero(0)`,`isZero(-4)`,`isZero([3, 0, -2, 0])`],seealso:[`isInteger`,`isNumeric`,`isNegative`,`isPositive`]},print:{name:`print`,category:`Utils`,syntax:[`print(template, values)`,`print(template, values, precision)`],description:`Interpolate values into a string template.`,examples:[`print("Lucy is $age years old", {age: 5})`,`print("The value of pi is $pi", {pi: pi}, 3)`,`print("Hello, $user.name!", {user: {name: "John"}})`,`print("Values: $1, $2, $3", [6, 9, 4])`],seealso:[`format`]},typeOf:{name:`typeOf`,category:`Utils`,syntax:[`typeOf(x)`],description:`Get the type of a variable.`,examples:[`typeOf(3.5)`,`typeOf(2 - 4i)`,`typeOf(45 deg)`,`typeOf("hello world")`],seealso:[`getMatrixDataType`]},numeric:{name:`numeric`,category:`Utils`,syntax:[`numeric(x)`],description:`Convert a numeric input to a specific numeric type: number, BigNumber, bigint, or Fraction.`,examples:[`numeric("4")`,`numeric("4", "number")`,`numeric("4", "bigint")`,`numeric("4", "BigNumber")`,`numeric("4", "Fraction")`,`numeric(4, "Fraction")`,`numeric(fraction(2, 5), "number")`],seealso:[`number`,`bigint`,`fraction`,`bignumber`,`string`,`format`]}},HU=`help`,UU=Z(HU,[`typed`,`mathWithTransform`,`Help`],e=>{var{typed:t,mathWithTransform:n,Help:r}=e;return t(HU,{any:function(e){var t,i=e;if(typeof e!=`string`){for(t in n)if(SD(n,t)&&e===n[t]){i=t;break}}var a=cE(VU,i);if(!a){var o=typeof i==`function`?i.name:i;throw Error(`No documentation found on "`+o+`"`)}return new r(a)}})}),WU=`chain`,GU=Z(WU,[`typed`,`Chain`],e=>{var{typed:t,Chain:n}=e;return t(WU,{"":function(){return new n},any:function(e){return new n(e)}})}),KU=`det`,qU=Z(KU,[`typed`,`matrix`,`subtractScalar`,`multiply`,`divideScalar`,`isZero`,`unaryMinus`],e=>{var{typed:t,matrix:n,subtractScalar:r,multiply:i,divideScalar:a,isZero:o,unaryMinus:s}=e;return t(KU,{any:function(e){return mD(e)},"Array | Matrix":function(e){var t;switch(jE(e)?t=e.size():Array.isArray(e)?(e=n(e),t=e.size()):t=[],t.length){case 0:return mD(e);case 1:if(t[0]===1)return mD(e.valueOf()[0]);if(t[0]===0)return 1;throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);case 2:var r=t[0],i=t[1];if(r===i)return c(e.clone().valueOf(),r,i);if(i===0)return 1;throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);default:throw RangeError(`Matrix must be two dimensional (size: `+GA(t)+`)`)}}});function c(e,t,n){if(t===1)return mD(e[0][0]);if(t===2)return r(i(e[0][0],e[1][1]),i(e[1][0],e[0][1]));for(var c=!1,l=Array(t).fill(0).map((e,t)=>t),u=0;u{var{typed:t,matrix:n,divideScalar:r,addScalar:i,multiply:a,unaryMinus:o,det:s,identity:c,abs:l}=e;return t(JU,{"Array | Matrix":function(e){var t=jE(e)?e.size():tj(e);switch(t.length){case 1:if(t[0]===1)return jE(e)?n([r(1,e.valueOf()[0])]):[r(1,e[0])];throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);case 2:var i=t[0],a=t[1];if(i===a)return jE(e)?n(u(e.valueOf(),i,a),e.storage()):u(e,i,a);throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);default:throw RangeError(`Matrix must be two dimensional (size: `+GA(t)+`)`)}},any:function(e){return r(1,e)}});function u(e,t,n){var u,d,f,p,m;if(t===1){if(p=e[0][0],p===0)throw Error(`Cannot calculate inverse, determinant is zero`);return[[r(1,p)]]}else if(t===2){var h=s(e);if(h===0)throw Error(`Cannot calculate inverse, determinant is zero`);return[[r(e[1][1],h),r(o(e[0][1]),h)],[r(o(e[1][0]),h),r(e[0][0],h)]]}else{var g=e.concat();for(u=0;uy&&(y=l(g[u][v]),b=u),u++;if(y===0)throw Error(`Cannot calculate inverse, determinant is zero`);u=b,u!==v&&(m=g[v],g[v]=g[u],g[u]=m,m=_[v],_[v]=_[u],_[u]=m);var x=g[v],S=_[v];for(u=0;u{var{typed:t,matrix:n,inv:r,deepEqual:i,equal:a,dotDivide:o,dot:s,ctranspose:c,divideScalar:l,multiply:u,add:d,Complex:f}=e;return t(XU,{"Array | Matrix":function(e){var t=jE(e)?e.size():tj(e);switch(t.length){case 1:return _(e)?c(e):t[0]===1?r(e):o(c(e),s(e,e));case 2:if(_(e))return c(e);var i=t[0],a=t[1];if(i===a)try{return r(e)}catch(e){if(!(e instanceof Error&&e.message.match(/Cannot calculate inverse, determinant is zero/)))throw e}return jE(e)?n(p(e.valueOf(),i,a),e.storage()):p(e,i,a);default:throw RangeError(`Matrix must be two dimensional (size: `+GA(t)+`)`)}},any:function(e){return a(e,0)?mD(e):l(1,e)}});function p(e,t,n){var{C:i,F:a}=h(e,t,n),o=u(r(u(c(i),i)),c(i));return u(u(c(a),r(u(a,c(a)))),o)}function m(e,t,n){for(var r=mD(e),i=0,a=0;ae.filter((e,n)=>n!g(s(r[t],r[t])))}}function g(e){return a(d(e,f(1,1)),d(0,f(1,1)))}function _(e){return i(d(e,f(1,1)),d(u(e,0),f(1,1)))}});function QU(e){var{addScalar:t,subtract:n,flatten:r,multiply:i,multiplyScalar:a,divideScalar:o,sqrt:s,abs:c,bignumber:l,diag:u,size:d,reshape:f,inv:p,qr:m,usolve:h,usolveAll:g,equal:_,complex:v,larger:y,smaller:b,matrixFromColumns:x,dot:S}=e;function C(e,t,n,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=w(e,t,n,r,i);T(e,t,n,r,i,a);var{values:o,C:s}=E(e,t,n,r,i);return i?{values:o,eigenvectors:D(e,t,s,a,o,n,r)}:{values:o}}function w(e,n,r,i,s){var d=i===`BigNumber`,f=i===`Complex`,p=d?l(0):0,m=d?l(1):f?v(1):1,h=d?l(1):1,g=d?l(10):2,x=a(g,g),S;s&&(S=Array(n).fill(m));for(var C=!1;!C;){C=!0;for(var w=0;w1&&(x=u(Array(g-1).fill(f)))),--g,p.pop();for(var M=0;M2&&(x=u(Array(g-2).fill(f)))),g-=2,p.pop(),p.pop();for(var P=0;P+n(c(e),c(t))),S>100){var F=Error(`The eigenvalues failed to converge. Only found these eigenvalues: `+h.join(`, `));throw F.values=h,F.vectors=[],F}return{values:h,C:s?i(y,j(_,r)):void 0}}function D(e,t,a,o,s,c,d){var f=i(p(a),e,a),m=d===`BigNumber`,h=d===`Complex`,y=m?l(0):h?v(0):0,b=m?l(1):h?v(1):1,x=[],S=[];for(var C of s){var w=M(x,C,_);w===-1?(x.push(C),S.push(1)):S[w]+=1}for(var T=[],E=x.length,D=Array(t).fill(y),O=u(Array(t).fill(b)),k=function(){var e=x[A],s=n(f,i(e,O)),l=g(s,D);for(l.shift();l.lengthi(m,e)),T.push(...l.map(t=>({value:e,vector:r(t)})))},A=0;A=5)return null;for(s=0;;){var c=h(e,o);if(b(I(F(o,[c])),r))break;if(++s>=10)return null;o=L(c)}return o}function P(e,t,n){var r=n===`BigNumber`,i=n===`Complex`,a=Array(e).fill(0).map(e=>2*Math.random()-1);return r&&(a=a.map(e=>l(e))),i&&(a=a.map(e=>v(e))),a=F(a,t),L(a,n)}function F(e,t){var r=d(e);for(var a of t)a=f(a,r),e=n(e,i(o(S(a,e),S(a,a)),a));return e}function I(e){return c(s(S(e,e)))}function L(e,t){return i(o(t===`BigNumber`?l(1):t===`Complex`?v(1):1,I(e)),e)}return C}function $U(e){var{config:t,addScalar:n,subtract:r,abs:i,atan:a,cos:o,sin:s,multiplyScalar:c,inv:l,bignumber:u,multiply:d,add:f}=e;function p(e,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.relTol,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;if(i===`number`)return m(e,r,a);if(i===`BigNumber`)return h(e,r,a);throw TypeError(`Unsupported data type: `+i)}function m(e,t,n){var r=e.length,i=Math.abs(t/r),a,o;if(n){o=Array(r);for(var s=0;s=Math.abs(i);){var l=c[0][0],u=c[0][1];a=g(e[l][l],e[u][u],e[l][u]),e=x(e,a,l,u),n&&(o=v(o,a,l,u)),c=S(e)}for(var d=Array(r).fill(0),f=0;f=i(a);){var u=l[0][0],d=l[0][1];o=_(e[u][u],e[d][d],e[u][d]),e=b(e,o,u,d),n&&(s=y(s,o,u,d)),l=C(e)}for(var f=Array(r).fill(0),p=0;p({value:a[t],vector:e}))}:{values:a}}return p}var eW=Z(`eigs`,`config.typed.matrix.addScalar.equal.subtract.abs.atan.cos.sin.multiplyScalar.divideScalar.inv.bignumber.multiply.add.larger.column.flatten.number.complex.sqrt.diag.size.reshape.qr.usolve.usolveAll.im.re.smaller.matrixFromColumns.dot`.split(`.`),e=>{var{config:t,typed:n,matrix:r,addScalar:i,subtract:a,equal:o,abs:s,atan:c,cos:l,sin:u,multiplyScalar:d,divideScalar:f,inv:p,bignumber:m,multiply:h,add:g,larger:_,column:v,flatten:y,number:b,complex:x,sqrt:S,diag:C,size:w,reshape:T,qr:E,usolve:D,usolveAll:O,im:k,re:A,smaller:j,matrixFromColumns:M,dot:N}=e,P=$U({config:t,addScalar:i,subtract:a,column:v,flatten:y,equal:o,abs:s,atan:c,cos:l,sin:u,multiplyScalar:d,inv:p,bignumber:m,complex:x,multiply:h,add:g}),F=QU({config:t,addScalar:i,subtract:a,multiply:h,multiplyScalar:d,flatten:y,divideScalar:f,sqrt:S,abs:s,bignumber:m,diag:C,size:w,reshape:T,qr:E,inv:p,usolve:D,usolveAll:O,equal:o,complex:x,larger:_,smaller:j,matrixFromColumns:M,dot:N});return n(`eigs`,{Array:function(e){return I(r(e))},"Array, number|BigNumber":function(e,t){return I(r(e),{precision:t})},"Array, Object"(e,t){return I(r(e),t)},Matrix:function(e){return I(e,{matricize:!0})},"Matrix, number|BigNumber":function(e,t){return I(e,{precision:t,matricize:!0})},"Matrix, Object":function(e,t){var n={matricize:!0};return oE(n,t),I(e,n)}});function I(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=`eigenvectors`in n?n.eigenvectors:!0,a=L(e,n.precision??t.relTol,i);return n.matricize&&(a.values=r(a.values),i&&(a.eigenvectors=a.eigenvectors.map(e=>{var{value:t,vector:n}=e;return{value:t,vector:r(n)}}))),i&&Object.defineProperty(a,`vectors`,{enumerable:!1,get:()=>{throw Error(`eigs(M).vectors replaced with eigs(M).eigenvectors`)}}),a}function L(e,t,n){var r=e.toArray(),i=e.size();if(i.length!==2||i[0]!==i[1])throw RangeError(`Matrix must be square (size: ${GA(i)})`);var a=i[0];return R(r,a,t)&&(te(r,a),ee(r,a,t))?P(r,a,t,z(e,r,a),n):F(r,a,t,z(e,r,a),n)}function ee(e,t,n){for(var r=0;r{var{typed:t,abs:n,add:r,identity:i,inv:a,multiply:o}=e;return t(tW,{Matrix:function(e){var t=e.size();if(t.length!==2||t[0]!==t[1])throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);for(var n=t[0],l=c(s(e),1e-15),u=l.q,d=l.j,f=o(e,2**-d),p=i(n),m=i(n),h=1,g=f,_=-1,v=1;v<=u;v++)v>1&&(g=o(g,f),_=-_),h=h*(u-v+1)/((2*u-v+1)*v),p=r(p,o(h,g)),m=r(m,o(h*_,g));for(var y=o(a(m),p),b=0;b{var{typed:t,abs:n,add:r,multiply:i,map:a,sqrt:o,subtract:s,inv:c,size:l,max:u,identity:d}=e,f=1e3,p=1e-6;function m(e){var t,a=0,o=e,m=d(l(e));do{var h=o;if(o=i(.5,r(h,c(m))),m=i(.5,r(m,c(h))),t=u(n(s(o,h))),t>p&&++a>f)throw Error(`computing square root of matrix: iterative method could not converge`)}while(t>p);return o}return t(rW,{"Array | Matrix":function(e){var t=jE(e)?e.size():tj(e);switch(t.length){case 1:if(t[0]===1)return a(e,o);throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);case 2:if(t[0]===t[1])return m(e);throw RangeError(`Matrix must be square (size: `+GA(t)+`)`);default:throw RangeError(`Matrix must be at most two dimensional (size: `+GA(t)+`)`)}}})}),aW=`sylvester`,oW=Z(aW,[`typed`,`schur`,`matrixFromColumns`,`matrix`,`multiply`,`range`,`concat`,`transpose`,`index`,`subset`,`add`,`subtract`,`identity`,`lusolve`,`abs`],e=>{var{typed:t,schur:n,matrixFromColumns:r,matrix:i,multiply:a,range:o,concat:s,transpose:c,index:l,subset:u,add:d,subtract:f,identity:p,lusolve:m,abs:h,config:g}=e;return t(aW,{"Matrix, Matrix, Matrix":_,"Array, Matrix, Matrix":function(e,t,n){return _(i(e),t,n)},"Array, Array, Matrix":function(e,t,n){return _(i(e),i(t),n)},"Array, Matrix, Array":function(e,t,n){return _(i(e),t,i(n))},"Matrix, Array, Matrix":function(e,t,n){return _(e,i(t),n)},"Matrix, Array, Array":function(e,t,n){return _(e,i(t),i(n))},"Matrix, Matrix, Array":function(e,t,n){return _(e,t,i(n))},"Array, Array, Array":function(e,t,n){return _(i(e),i(t),i(n)).toArray()}});function _(e,t,g){for(var _=t.size()[0],v=e.size()[0],y=n(e),b=y.T,x=y.U,S=n(a(-1,t)),C=S.T,w=S.U,T=a(a(c(x),g),w),E=o(0,v),D=[],O=(e,t)=>s(e,t,1),k=(e,t)=>s(e,t,0),A=0;A<_;A++)if(A<_-1&&h(u(C,l(A+1,A)))>1e-5){for(var j=k(u(T,l(E,[A])),u(T,l(E,[A+1]))),M=0;M{var{typed:t,matrix:n,identity:r,multiply:i,qr:a,norm:o,subtract:s}=e;return t(sW,{Array:function(e){var t=c(n(e));return{U:t.U.valueOf(),T:t.T.valueOf()}},Matrix:function(e){return c(e)}});function c(e){var t=e.size()[0],n=e,c=r(t),l=0,u;do{u=n;var d=a(n),f=d.Q,p=d.R;if(n=i(p,f),c=i(c,f),l++>100)break}while(o(s(n,u))>1e-4);return{U:c,T:n}}}),lW=`lyap`,uW=Z(lW,[`typed`,`matrix`,`sylvester`,`multiply`,`transpose`],e=>{var{typed:t,matrix:n,sylvester:r,multiply:i,transpose:a}=e;return t(lW,{"Matrix, Matrix":function(e,t){return r(e,a(e),i(-1,t))},"Array, Matrix":function(e,t){return r(n(e),a(n(e)),i(-1,t))},"Matrix, Array":function(e,t){return r(e,a(n(e)),n(i(-1,t)))},"Array, Array":function(e,t){return r(n(e),a(n(e)),n(i(-1,t))).toArray()}})}),dW=Z(`divide`,[`typed`,`matrix`,`multiply`,`equalScalar`,`divideScalar`,`inv`],e=>{var{typed:t,matrix:n,multiply:r,equalScalar:i,divideScalar:a,inv:o}=e,s=UP({typed:t,equalScalar:i}),c=GP({typed:t});return t(`divide`,gD({"Array | Matrix, Array | Matrix":function(e,t){return r(e,o(t))},"DenseMatrix, any":function(e,t){return c(e,t,a,!1)},"SparseMatrix, any":function(e,t){return s(e,t,a,!1)},"Array, any":function(e,t){return c(n(e),t,a,!1).valueOf()},"any, Array | Matrix":function(e,t){return r(e,o(t))}},a.signatures))}),fW=`distance`,pW=Z(fW,[`typed`,`addScalar`,`subtractScalar`,`divideScalar`,`multiplyScalar`,`deepEqual`,`sqrt`,`abs`],e=>{var{typed:t,addScalar:n,subtractScalar:r,multiplyScalar:i,divideScalar:a,deepEqual:o,sqrt:s,abs:c}=e;return t(fW,{"Array, Array, Array":function(e,t,n){if(e.length===2&&t.length===2&&n.length===2){if(!u(e))throw TypeError(`Array with 2 numbers or BigNumbers expected for first argument`);if(!u(t))throw TypeError(`Array with 2 numbers or BigNumbers expected for second argument`);if(!u(n))throw TypeError(`Array with 2 numbers or BigNumbers expected for third argument`);if(o(t,n))throw TypeError(`LinePoint1 should not be same with LinePoint2`);var a=r(n[1],t[1]),s=r(t[0],n[0]),c=r(i(n[0],t[1]),i(t[0],n[1]));return g(e[0],e[1],a,s,c)}else throw TypeError(`Invalid Arguments: Try again`)},"Object, Object, Object":function(e,t,n){if(Object.keys(e).length===2&&Object.keys(t).length===2&&Object.keys(n).length===2){if(!u(e))throw TypeError(`Values of pointX and pointY should be numbers or BigNumbers`);if(!u(t))throw TypeError(`Values of lineOnePtX and lineOnePtY should be numbers or BigNumbers`);if(!u(n))throw TypeError(`Values of lineTwoPtX and lineTwoPtY should be numbers or BigNumbers`);if(o(m(t),m(n)))throw TypeError(`LinePoint1 should not be same with LinePoint2`);if(`pointX`in e&&`pointY`in e&&`lineOnePtX`in t&&`lineOnePtY`in t&&`lineTwoPtX`in n&&`lineTwoPtY`in n){var a=r(n.lineTwoPtY,t.lineOnePtY),s=r(t.lineOnePtX,n.lineTwoPtX),c=r(i(n.lineTwoPtX,t.lineOnePtY),i(t.lineOnePtX,n.lineTwoPtY));return g(e.pointX,e.pointY,a,s,c)}else throw TypeError(`Key names do not match`)}else throw TypeError(`Invalid Arguments: Try again`)},"Array, Array":function(e,t){if(e.length===2&&t.length===3){if(!u(e))throw TypeError(`Array with 2 numbers or BigNumbers expected for first argument`);if(!d(t))throw TypeError(`Array with 3 numbers or BigNumbers expected for second argument`);return g(e[0],e[1],t[0],t[1],t[2])}else if(e.length===3&&t.length===6){if(!d(e))throw TypeError(`Array with 3 numbers or BigNumbers expected for first argument`);if(!p(t))throw TypeError(`Array with 6 numbers or BigNumbers expected for second argument`);return _(e[0],e[1],e[2],t[0],t[1],t[2],t[3],t[4],t[5])}else if(e.length===t.length&&e.length>0){if(!f(e)||!f(t))throw TypeError(`All values of an array should be numbers or BigNumbers`);return v(e,t)}else throw TypeError(`Invalid Arguments: Try again`)},"Object, Object":function(e,t){if(Object.keys(e).length===2&&Object.keys(t).length===3){if(!u(e))throw TypeError(`Values of pointX and pointY should be numbers or BigNumbers`);if(!d(t))throw TypeError(`Values of xCoeffLine, yCoeffLine and constant should be numbers or BigNumbers`);if(`pointX`in e&&`pointY`in e&&`xCoeffLine`in t&&`yCoeffLine`in t&&`constant`in t)return g(e.pointX,e.pointY,t.xCoeffLine,t.yCoeffLine,t.constant);throw TypeError(`Key names do not match`)}else if(Object.keys(e).length===3&&Object.keys(t).length===6){if(!d(e))throw TypeError(`Values of pointX, pointY and pointZ should be numbers or BigNumbers`);if(!p(t))throw TypeError(`Values of x0, y0, z0, a, b and c should be numbers or BigNumbers`);if(`pointX`in e&&`pointY`in e&&`x0`in t&&`y0`in t&&`z0`in t&&`a`in t&&`b`in t&&`c`in t)return _(e.pointX,e.pointY,e.pointZ,t.x0,t.y0,t.z0,t.a,t.b,t.c);throw TypeError(`Key names do not match`)}else if(Object.keys(e).length===2&&Object.keys(t).length===2){if(!u(e))throw TypeError(`Values of pointOneX and pointOneY should be numbers or BigNumbers`);if(!u(t))throw TypeError(`Values of pointTwoX and pointTwoY should be numbers or BigNumbers`);if(`pointOneX`in e&&`pointOneY`in e&&`pointTwoX`in t&&`pointTwoY`in t)return v([e.pointOneX,e.pointOneY],[t.pointTwoX,t.pointTwoY]);throw TypeError(`Key names do not match`)}else if(Object.keys(e).length===3&&Object.keys(t).length===3){if(!d(e))throw TypeError(`Values of pointOneX, pointOneY and pointOneZ should be numbers or BigNumbers`);if(!d(t))throw TypeError(`Values of pointTwoX, pointTwoY and pointTwoZ should be numbers or BigNumbers`);if(`pointOneX`in e&&`pointOneY`in e&&`pointOneZ`in e&&`pointTwoX`in t&&`pointTwoY`in t&&`pointTwoZ`in t)return v([e.pointOneX,e.pointOneY,e.pointOneZ],[t.pointTwoX,t.pointTwoY,t.pointTwoZ]);throw TypeError(`Key names do not match`)}else throw TypeError(`Invalid Arguments: Try again`)},Array:function(e){if(!h(e))throw TypeError(`Incorrect array format entered for pairwise distance calculation`);return y(e)}});function l(e){return typeof e==`number`||wE(e)}function u(e){return e.constructor!==Array&&(e=m(e)),l(e[0])&&l(e[1])}function d(e){return e.constructor!==Array&&(e=m(e)),l(e[0])&&l(e[1])&&l(e[2])}function f(e){return Array.isArray(e)||(e=m(e)),e.every(l)}function p(e){return e.constructor!==Array&&(e=m(e)),l(e[0])&&l(e[1])&&l(e[2])&&l(e[3])&&l(e[4])&&l(e[5])}function m(e){for(var t=Object.keys(e),n=[],r=0;re.length!==2||!l(e[0])||!l(e[1])))return!1}else if(e[0].length===3&&l(e[0][0])&&l(e[0][1])&&l(e[0][2])){if(e.some(e=>e.length!==3||!l(e[0])||!l(e[1])||!l(e[2])))return!1}else return!1;return!0}function g(e,t,r,o,l){return a(c(n(n(i(r,e),i(o,t)),l)),s(n(i(r,r),i(o,o))))}function _(e,t,o,c,l,u,d,f,p){var m=[r(i(r(l,t),p),i(r(u,o),f)),r(i(r(u,o),d),i(r(c,e),p)),r(i(r(c,e),f),i(r(l,t),d))];m=s(n(n(i(m[0],m[0]),i(m[1],m[1])),i(m[2],m[2])));var h=s(n(n(i(d,d),i(f,f)),i(p,p)));return a(m,h)}function v(e,t){for(var a=e.length,o=0,c=0,l=0;l{var{typed:t,config:n,abs:r,add:i,addScalar:a,matrix:o,multiply:s,multiplyScalar:c,divideScalar:l,subtract:u,smaller:d,equalScalar:f,flatten:p,isZero:m,isNumeric:h}=e;return t(`intersect`,{"Array, Array, Array":g,"Array, Array, Array, Array":_,"Matrix, Matrix, Matrix":function(e,t,n){var r=g(e.valueOf(),t.valueOf(),n.valueOf());return r===null?null:o(r)},"Matrix, Matrix, Matrix, Matrix":function(e,t,n,r){var i=_(e.valueOf(),t.valueOf(),n.valueOf(),r.valueOf());return i===null?null:o(i)}});function g(e,t,n){if(e=v(e),t=v(t),n=v(n),!b(e))throw TypeError(`Array with 3 numbers or BigNumbers expected for first argument`);if(!b(t))throw TypeError(`Array with 3 numbers or BigNumbers expected for second argument`);if(!x(n))throw TypeError(`Array with 4 numbers expected as third argument`);return T(e[0],e[1],e[2],t[0],t[1],t[2],n[0],n[1],n[2],n[3])}function _(e,t,n,r){if(e=v(e),t=v(t),n=v(n),r=v(r),e.length===2){if(!y(e))throw TypeError(`Array with 2 numbers or BigNumbers expected for first argument`);if(!y(t))throw TypeError(`Array with 2 numbers or BigNumbers expected for second argument`);if(!y(n))throw TypeError(`Array with 2 numbers or BigNumbers expected for third argument`);if(!y(r))throw TypeError(`Array with 2 numbers or BigNumbers expected for fourth argument`);return S(e,t,n,r)}else if(e.length===3){if(!b(e))throw TypeError(`Array with 3 numbers or BigNumbers expected for first argument`);if(!b(t))throw TypeError(`Array with 3 numbers or BigNumbers expected for second argument`);if(!b(n))throw TypeError(`Array with 3 numbers or BigNumbers expected for third argument`);if(!b(r))throw TypeError(`Array with 3 numbers or BigNumbers expected for fourth argument`);return w(e[0],e[1],e[2],t[0],t[1],t[2],n[0],n[1],n[2],r[0],r[1],r[2])}else throw TypeError(`Arrays with two or thee dimensional points expected`)}function v(e){return e.length===1?e[0]:e.length>1&&Array.isArray(e[0])&&e.every(e=>Array.isArray(e)&&e.length===1)?p(e):e}function y(e){return e.length===2&&h(e[0])&&h(e[1])}function b(e){return e.length===3&&h(e[0])&&h(e[1])&&h(e[2])}function x(e){return e.length===4&&h(e[0])&&h(e[1])&&h(e[2])&&h(e[3])}function S(e,t,o,f){var p=e,h=o,g=u(p,t),_=u(h,f),v=u(c(g[0],_[1]),c(_[0],g[1]));if(m(v)||d(r(v),n.relTol))return null;var y=c(_[0],p[1]),b=c(_[1],p[0]),x=c(_[0],h[1]),S=c(_[1],h[0]);return i(s(g,l(a(u(u(y,b),x),S),v)),p)}function C(e,t,n,r,i,o,s,l,d,f,p,m){var h=c(u(e,t),u(n,r)),g=c(u(i,o),u(s,l)),_=c(u(d,f),u(p,m));return a(a(h,g),_)}function w(e,t,n,r,i,o,s,d,p,h,g,_){var v=C(e,s,h,s,t,d,g,d,n,p,_,p),y=C(h,s,r,e,g,d,i,t,_,p,o,n),b=C(e,s,r,e,t,d,i,t,n,p,o,n),x=C(h,s,h,s,g,d,g,d,_,p,_,p),S=C(r,e,r,e,i,t,i,t,o,n,o,n),w=u(c(v,y),c(b,x)),T=u(c(S,x),c(y,y));if(m(T))return null;var E=l(w,T),D=l(a(v,c(E,y)),x),O=a(e,c(E,u(r,e))),k=a(t,c(E,u(i,t))),A=a(n,c(E,u(o,n))),j=a(s,c(D,u(h,s))),M=a(d,c(D,u(g,d))),N=a(p,c(D,u(_,p)));return f(O,j)&&f(k,M)&&f(A,N)?[O,k,A]:null}function T(e,t,n,r,i,o,s,d,f,p){var m=c(e,s),h=c(r,s),g=c(t,d),_=c(i,d),v=c(n,f),y=c(o,f),b=l(u(u(u(p,m),g),v),u(u(u(a(a(h,_),y),m),g),v));return[a(e,c(b,u(r,e))),a(t,c(b,u(i,t))),a(n,c(b,u(o,n)))]}}),hW=`sum`,gW=Z(hW,[`typed`,`config`,`add`,`numeric`],e=>{var{typed:t,config:n,add:r,numeric:i}=e;return t(hW,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":o,"...":function(e){if(Kj(e))throw TypeError(`Scalar values expected in function sum`);return a(e)}});function a(e){var t;return qj(e,function(e){try{t=t===void 0?e:r(t,e)}catch(t){throw uR(t,`sum`,e)}}),t===void 0&&(t=i(0,n.number)),typeof t==`string`&&(t=i(t,FD(t,n))),t}function o(e,t){try{return Yj(e,t,r)}catch(e){throw uR(e,`sum`)}}}),_W=`cumsum`,vW=Z(_W,[`typed`,`add`,`unaryPlus`],e=>{var{typed:t,add:n,unaryPlus:r}=e;return t(_W,{Array:i,Matrix:function(e){return e.create(i(e.valueOf(),e.datatype()))},"Array, number | BigNumber":o,"Matrix, number | BigNumber":function(e,t){return e.create(o(e.valueOf(),t),e.datatype())},"...":function(e){if(Kj(e))throw TypeError(`All values expected to be scalar in function cumsum`);return i(e)}});function i(e){try{return a(e)}catch(e){throw uR(e,_W)}}function a(e){if(e.length===0)return[];for(var t=[r(e[0])],i=1;i=n.length)throw new ej(t,n.length);try{return s(e,t)}catch(e){throw uR(e,_W)}}function s(e,t){var n,r,i;if(t<=0){var o=e[0][0];if(Array.isArray(o)){for(i=Gj(e),r=[],n=0;n{var{typed:t,add:n,divide:r}=e;return t(yW,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":i,"...":function(e){if(Kj(e))throw TypeError(`Scalar values expected in function mean`);return a(e)}});function i(e,t){try{return r(Yj(e,t,n),(Array.isArray(e)?tj(e):e.size())[t])}catch(e){throw uR(e,`mean`)}}function a(e){var t,i=0;if(qj(e,function(e){try{t=t===void 0?e:n(t,e),i++}catch(t){throw uR(t,`mean`,e)}}),i===0)throw Error(`Cannot calculate the mean of an empty array`);return r(t,i)}}),xW=`median`,SW=Z(xW,[`typed`,`add`,`divide`,`compare`,`partitionSelect`],e=>{var{typed:t,add:n,divide:r,compare:i,partitionSelect:a}=e;function o(e){try{e=_j(e.valueOf());var t=e.length;if(t===0)throw Error(`Cannot calculate median of an empty array`);if(t%2==0){for(var n=t/2-1,r=a(e,n+1),o=e[n],l=0;l0&&(o=e[l]);return c(o,r)}else return s(a(e,(t-1)/2))}catch(e){throw uR(e,`median`)}}var s=t({"number | BigNumber | Complex | Unit":function(e){return e}}),c=t({"number | BigNumber | Complex | Unit, number | BigNumber | Complex | Unit":function(e,t){return r(n(e,t),2)}});return t(xW,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":function(e,t){throw Error(`median(A, dim) is not yet supported`)},"...":function(e){if(Kj(e))throw TypeError(`Scalar values expected in function median`);return o(e)}})}),CW=`mad`,wW=Z(CW,[`typed`,`abs`,`map`,`median`,`subtract`],e=>{var{typed:t,abs:n,map:r,median:i,subtract:a}=e;return t(CW,{"Array | Matrix":o,"...":function(e){return o(e)}});function o(e){if(e=_j(e.valueOf()),e.length===0)throw Error(`Cannot calculate median absolute deviation (mad) of an empty array`);try{var t=i(e);return i(r(e,function(e){return n(a(e,t))}))}catch(e){throw e instanceof TypeError&&e.message.includes(`median`)?TypeError(e.message.replace(`median`,`mad`)):uR(e,`mad`)}}}),TW=`unbiased`,EW=`variance`,DW=Z(EW,[`typed`,`add`,`subtract`,`multiply`,`divide`,`mapSlices`,`isNaN`],e=>{var{typed:t,add:n,subtract:r,multiply:i,divide:a,mapSlices:o,isNaN:s}=e;return t(EW,{"Array | Matrix":function(e){return c(e,TW)},"Array | Matrix, string":c,"Array | Matrix, number | BigNumber":function(e,t){return l(e,t,TW)},"Array | Matrix, number | BigNumber, string":l,"...":function(e){return c(e,TW)}});function c(e,t){var o,c=0;if(e.length===0)throw SyntaxError(`Function variance requires one or more parameters (0 provided)`);if(qj(e,function(e){try{o=o===void 0?e:n(o,e),c++}catch(t){throw uR(t,`variance`,e)}}),c===0)throw Error(`Cannot calculate variance of an empty array`);var l=a(o,c);if(o=void 0,qj(e,function(e){var t=r(e,l);o=o===void 0?i(t,t):n(o,i(t,t))}),s(o))return o;switch(t){case`uncorrected`:return a(o,c);case`biased`:return a(o,c+1);case`unbiased`:var u=wE(o)?o.mul(0):0;return c===1?u:a(o,c-1);default:throw Error(`Unknown normalization "`+t+`". Choose "unbiased" (default), "uncorrected", or "biased".`)}}function l(e,t,n){try{if(e.length===0)throw SyntaxError(`Function variance requires one or more parameters (0 provided)`);return o(e,t,e=>c(e,n))}catch(e){throw uR(e,`variance`)}}}),OW=`quantileSeq`,kW=Z(OW,[`typed`,`?bignumber`,`add`,`subtract`,`divide`,`multiply`,`partitionSelect`,`compare`,`isInteger`,`smaller`,`smallerEq`,`larger`,`mapSlices`],e=>{var{typed:t,bignumber:n,add:r,subtract:i,divide:a,multiply:o,partitionSelect:s,compare:c,isInteger:l,smaller:u,smallerEq:d,larger:f,mapSlices:p}=e;return t(OW,{"Array | Matrix, number | BigNumber":(e,t)=>h(e,t,!1),"Array | Matrix, number | BigNumber, number":(e,t,n)=>m(e,t,!1,n,h),"Array | Matrix, number | BigNumber, boolean":h,"Array | Matrix, number | BigNumber, boolean, number":(e,t,n,r)=>m(e,t,n,r,h),"Array | Matrix, Array | Matrix":(e,t)=>g(e,t,!1),"Array | Matrix, Array | Matrix, number":(e,t,n)=>m(e,t,!1,n,g),"Array | Matrix, Array | Matrix, boolean":g,"Array | Matrix, Array | Matrix, boolean, number":(e,t,n,r)=>m(e,t,n,r,g)});function m(e,t,n,r,i){return p(e,r,e=>i(e,t,n))}function h(e,t,i){var o,s=e.valueOf();if(u(t,0))throw Error(`N/prob must be non-negative`);if(d(t,1))return CE(t)?_(s,t,i):n(_(s,t,i));if(f(t,1)){if(!l(t))throw Error(`N must be a positive integer`);if(f(t,4294967295))throw Error(`N must be less than or equal to 2^32-1, as that is the maximum length of an Array`);var c=r(t,1);o=[];for(var p=0;u(p,t);p++){var m=a(p+1,c);o.push(_(s,m,i))}return CE(t)?o:n(o)}}function g(e,t,n){for(var r=e.valueOf(),i=t.valueOf(),a=[],o=0;o0&&(m=a[g])}return r(o(m,i(1,p)),o(h,p))}}),AW=`std`,jW=Z(AW,[`typed`,`map`,`sqrt`,`variance`],e=>{var{typed:t,map:n,sqrt:r,variance:i}=e;return t(AW,{"Array | Matrix":a,"Array | Matrix, string":a,"Array | Matrix, number | BigNumber":a,"Array | Matrix, number | BigNumber, string":a,"...":function(e){return a(e)}});function a(e,t){if(e.length===0)throw SyntaxError(`Function std requires one or more parameters (0 provided)`);try{var a=i.apply(null,arguments);return ME(a)?n(a,r):r(a)}catch(e){throw e instanceof TypeError&&e.message.includes(` variance`)?TypeError(e.message.replace(` variance`,` std`)):e}}}),MW=`corr`,NW=Z(MW,[`typed`,`matrix`,`mean`,`sqrt`,`sum`,`add`,`subtract`,`multiply`,`pow`,`divide`],e=>{var{typed:t,matrix:n,sqrt:r,sum:i,add:a,subtract:o,multiply:s,pow:c,divide:l}=e;return t(MW,{"Array, Array":function(e,t){return u(e,t)},"Matrix, Matrix":function(e,t){var r=u(e.toArray(),t.toArray());return Array.isArray(r)?n(r):r}});function u(e,t){var n=[];if(Array.isArray(e[0])&&Array.isArray(t[0])){if(e.length!==t.length)throw SyntaxError(`Dimension mismatch. Array A and B must have the same length.`);for(var r=0;ra(e,s(n,t[r])),0),p=i(e.map(e=>c(e,2))),m=i(t.map(e=>c(e,2)));return l(o(s(n,f),s(u,d)),r(s(o(s(n,p),c(u,2)),o(s(n,m),c(d,2)))))}}),PW=`bernoulli`,FW=Z(PW,[`typed`,`config`,`isInteger`,`number`,`?BigNumber`,`?Fraction`],e=>{var{typed:t,config:n,number:r,BigNumber:i,Fraction:a}=e,o=[void 0],s=[void 0],c=[void 0],l=50;return t(PW,{number:e=>IW(e,e=>e,o,(e,t)=>e+t,(e,t)=>e*t,(e,t)=>e/t),"bigint | Fraction":e=>IW(r(e),e=>new a(e),s,(e,t)=>e.add(t),(e,t)=>e.mul(t),(e,t)=>e.div(t)),BigNumber:e=>(n.precision!==l&&(c=[void 0],l=n.precision),IW(r(e),e=>new i(e),c,(e,t)=>e.add(t),(e,t)=>e.mul(t),(e,t)=>e.div(t)))})});function IW(e,t,n,r,i,a){if(e<0||!PD(e))throw RangeError(`Bernoulli index must be nonnegative integer`);if(e===0)return t(1);if(e===1)return a(t(-1),t(2));if(e%2==1)return t(0);var o=t(1);n.length===1&&n.push([a(o,t(-3)),a(o,t(-2)),a(o,t(6))]);for(var s=e/2,c=t(0),l=t(2);n.length<=s;){for(var u=n.length,d=Math.floor((u+1)/2),f=c,p=1;p{var{typed:t}=e;return t(LW,{"number, number":RM,"BigNumber, BigNumber":function(e,t){var n=e.constructor,r,i,a=e.minus(t),o=new n(1);if(!zW(e)||!zW(t))throw TypeError(`Positive integer value expected in function combinations`);if(t.gt(e))throw TypeError(`k must be less than n in function combinations`);if(r=o,t.lt(a))for(i=o;i.lte(a);i=i.plus(o))r=r.times(t.plus(i)).dividedBy(i);else for(i=o;i.lte(t);i=i.plus(o))r=r.times(a.plus(i)).dividedBy(i);return r}})});function zW(e){return e.isInteger()&&e.gte(0)}var BW=`combinationsWithRep`,VW=Z(BW,[`typed`],e=>{var{typed:t}=e;return t(BW,{"number, number":function(e,t){if(!PD(e)||e<0||!PD(t)||t<0)throw TypeError(`Positive integer value expected in function combinationsWithRep`);if(e<1)throw TypeError(`k must be less than or equal to n + k - 1`);return t{var{typed:t,config:n,multiplyScalar:r,pow:i,BigNumber:a,Complex:o}=e;function s(e){if(e.im===0)return YM(e.re);if(e.re<.5){var t=new o(1-e.re,-e.im),n=new o(Math.PI*e.re,Math.PI*e.im);return new o(Math.PI).div(n.sin()).div(s(t))}e=new o(e.re-1,e.im);for(var r=new o(ZM[0],0),i=1;i2;)i-=2,s+=i,o=o.times(s);return new a(o.toPrecision(a.precision))}}),GW=`lgamma`,KW=Z(GW,[`Complex`,`typed`],e=>{var{Complex:t,typed:n}=e,r=7,i=7,a=[-.029550653594771242,.00641025641025641,-.0019175269175269176,.0008417508417508417,-.0005952380952380953,.0007936507936507937,-.002777777777777778,.08333333333333333];return n(GW,{number:eN,Complex:o,BigNumber:function(){throw Error(`mathjs doesn't yet provide an implementation of the algorithm lgamma for BigNumber`)}});function o(e){var n=6.283185307179586,a=1.1447298858494002,l=.1;if(e.isNaN())return new t(NaN,NaN);if(e.im===0)return new t(eN(e.re),0);if(e.re>=r||Math.abs(e.im)>=i)return s(e);if(e.re<=l){var u=oO(n,e.im)*Math.floor(.5*e.re+.25),d=e.mul(Math.PI).sin().log(),f=o(new t(1-e.re,-e.im));return new t(a,u).sub(d).sub(f)}else if(e.im>=0)return c(e);else return c(e.conjugate()).conjugate()}function s(e){for(var n=e.sub(.5).mul(e.log()).sub(e).add(QM),r=new t(1,0).div(e),i=r.div(e),o=a[0],s=a[1],c=2*i.re,l=i.re*i.re+i.im*i.im,u=2;u<8;u++){var d=s;s=-l*o+a[u],o=c*o+d}var f=r.mul(i.mul(o).add(s));return n.add(f)}function c(e){var n=0,i=0,a=e;for(e=e.add(1);e.re<=r;){a=a.mul(e);var o=+(a.im<0);o!==0&&i===0&&n++,i=o,e=e.add(1)}return s(e).sub(a.log()).sub(new t(0,n*2*Math.PI*1))}}),qW=`factorial`,JW=Z(qW,[`typed`,`gamma`],e=>{var{typed:t,gamma:n}=e;return t(qW,{number:function(e){if(e<0)throw Error(`Value must be non-negative`);return n(e+1)},BigNumber:function(e){if(e.isNegative())throw Error(`Value must be non-negative`);return n(e.plus(1))},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),YW=`kldivergence`,XW=Z(YW,[`typed`,`matrix`,`divide`,`sum`,`multiply`,`map`,`dotDivide`,`log`,`isNumeric`],e=>{var{typed:t,matrix:n,divide:r,sum:i,multiply:a,map:o,dotDivide:s,log:c,isNumeric:l}=e;return t(YW,{"Array, Array":function(e,t){return u(n(e),n(t))},"Matrix, Array":function(e,t){return u(e,n(t))},"Array, Matrix":function(e,t){return u(n(e),t)},"Matrix, Matrix":function(e,t){return u(e,t)}});function u(e,t){var n=t.size().length,u=e.size().length;if(n>1)throw Error(`first object must be one dimensional`);if(u>1)throw Error(`second object must be one dimensional`);if(n!==u)throw Error(`Length of two vectors must be equal`);if(i(e)===0)throw Error(`Sum of elements in first object must be non zero`);if(i(t)===0)throw Error(`Sum of elements in second object must be non zero`);var d=r(e,i(e)),f=i(a(d,o(s(d,r(t,i(t))),e=>c(e))));return l(f)?f:NaN}}),ZW=`multinomial`,QW=Z(ZW,[`typed`,`add`,`divide`,`multiply`,`factorial`,`isInteger`,`isPositive`],e=>{var{typed:t,add:n,divide:r,multiply:i,factorial:a,isInteger:o,isPositive:s}=e;return t(ZW,{"Array | Matrix":function(e){var t=0,c=1;return qj(e,function(e){if(!o(e)||!s(e))throw TypeError(`Positive integer value expected in function multinomial`);t=n(t,e),c=i(c,a(e))}),r(a(t),c)}})}),$W=`permutations`,eG=Z($W,[`typed`,`factorial`],e=>{var{typed:t,factorial:n}=e;return t($W,{"number | BigNumber":n,"number, number":function(e,t){if(!PD(e)||e<0||!PD(t)||t<0)throw TypeError(`Positive integer value expected in function permutations`);if(t>e)throw TypeError(`second argument k must be less than or equal to first argument n`);return LM(e-t+1,e)},"BigNumber, BigNumber":function(e,t){var n,r;if(!tG(e)||!tG(t))throw TypeError(`Positive integer value expected in function permutations`);if(t.gt(e))throw TypeError(`second argument k must be less than or equal to first argument n`);for(n=e.mul(0).add(1),r=e.minus(t).plus(1);r.lte(e);r=r.plus(1))n=n.times(r);return n}})});function tG(e){return e.isInteger()&&e.gte(0)}var nG=o(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=o();t.next=function(){var e=2091639*t.s0+t.c*23283064365386963e-26;return t.s0=t.s1,t.s1=t.s2,t.s2=e-(t.c=e|0)},t.c=1,t.s0=n(` `),t.s1=n(` `),t.s2=n(` `),t.s0-=n(e),t.s0<0&&(t.s0+=1),t.s1-=n(e),t.s1<0&&(t.s1+=1),t.s2-=n(e),t.s2<0&&(t.s2+=1),n=null}function i(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function a(e,t){var n=new r(e),a=t&&t.state,o=n.next;return o.int32=function(){return n.next()*4294967296|0},o.double=function(){return o()+(o()*2097152|0)*11102230246251565e-32},o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}function o(){var e=4022871197;return function(t){t=String(t);for(var n=0;n>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=r*4294967296}return(e>>>0)*23283064365386963e-26}}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.alea=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),rG=o(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.x=0,t.y=0,t.z=0,t.w=0,t.next=function(){var e=t.x^t.x<<11;return t.x=t.y,t.y=t.z,t.z=t.w,t.w^=t.w>>>19^e^e>>>8},e===(e|0)?t.x=e:n+=e;for(var r=0;r>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor128=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),iG=o(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.x^t.x>>>2;return t.x=t.y,t.y=t.z,t.z=t.w,t.w=t.v,(t.d=t.d+362437|0)+(t.v=t.v^t.v<<4^(e^e<<1))|0},t.x=0,t.y=0,t.z=0,t.w=0,t.v=0,e===(e|0)?t.x=e:n+=e;for(var r=0;r>>4),t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t.v=e.v,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorwow=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),aG=o(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.x,n=t.i,r=e[n],i;return r^=r>>>7,i=r^r<<24,r=e[n+1&7],i^=r^r>>>10,r=e[n+3&7],i^=r^r>>>3,r=e[n+4&7],i^=r^r<<7,r=e[n+7&7],r^=r<<13,i^=r^r<<9,e[n]=i,t.i=n+1&7,i};function n(e,t){var n,r=[];if(t===(t|0))r[0]=t;else for(t=``+t,n=0;n0;--n)e.next()}n(t,e)}function i(e,t){return t.x=e.x.slice(),t.i=e.i,t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.x&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorshift7=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),oG=o(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.w,n=t.X,r=t.i,i,a;return t.w=e=e+1640531527|0,a=n[r+34&127],i=n[r=r+1&127],a^=a<<13,i^=i<<17,a^=a>>>15,i^=i>>>12,a=n[r]=a^i,t.i=r,a+(e^e>>>16)|0};function n(e,t){var n,r,i,a,o,s=[],c=128;for(t===(t|0)?(r=t,t=null):(t+=`\0`,r=0,c=Math.max(c,t.length)),i=0,a=-32;a>>15,r^=r<<4,r^=r>>>13,a>=0&&(o=o+1640531527|0,n=s[a&127]^=r+o,i=n==0?i+1:0);for(i>=128&&(s[(t&&t.length||0)&127]=-1),i=127,a=512;a>0;--a)r=s[i+34&127],n=s[i=i+1&127],r^=r<<13,n^=n<<17,r^=r>>>15,n^=n>>>12,s[i]=r^n;e.w=o,e.X=s,e.i=i}n(t,e)}function i(e,t){return t.i=e.i,t.w=e.w,t.X=e.X.slice(),t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.X&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor4096=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),sG=o(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.b,n=t.c,r=t.d,i=t.a;return e=e<<25^e>>>7^n,n=n-r|0,r=r<<24^r>>>8^i,i=i-e|0,t.b=e=e<<20^e>>>12^n,t.c=n=n-r|0,t.d=r<<16^n>>>16^i,t.a=i-e|0},t.a=0,t.b=0,t.c=-1640531527,t.d=1367130551,e===Math.floor(e)?(t.a=e/4294967296|0,t.b=e|0):n+=e;for(var r=0;r>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.tychei=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),cG=o(((e,t)=>{(function(e,n,r){var i=256,a=6,o=52,s=`random`,c=r.pow(i,a),l=r.pow(2,o),u=l*2,d=i-1,f;function p(e,t,o){var d=[];t=t==1?{entropy:!0}:t||{};var f=_(g(t.entropy?[e,y(n)]:e??v(),3),d),p=new m(d),b=function(){for(var e=p.g(a),t=c,n=0;e=u;)e/=2,t/=2,n>>>=1;return(e+n)/t};return b.int32=function(){return p.g(4)|0},b.quick=function(){return p.g(4)/4294967296},b.double=b,_(y(p.S),n),(t.pass||o||function(e,t,n,i){return i&&(i.S&&h(i,p),e.state=function(){return h(p,{})}),n?(r[s]=e,t):e})(b,f,`global`in t?t.global:this==r,t.state)}function m(e){var t,n=e.length,r=this,a=0,o=r.i=r.j=0,s=r.S=[];for(n||(e=[n++]);a{var n=nG(),r=rG(),i=iG(),a=aG(),o=oG(),s=sG(),c=cG();c.alea=n,c.xor128=r,c.xorwow=i,c.xorshift7=a,c.xor4096=o,c.tychei=s,t.exports=c}))(),1),uG=(0,lG.default)(Date.now());function dG(e){var t;function n(e){t=e===null?uG:(0,lG.default)(String(e))}n(e);function r(){return t()}return r}var fG=`pickRandom`,pG=Z(fG,[`typed`,`config`,`?on`],e=>{var{typed:t,config:n,on:r}=e,i=dG(n.randomSeed);return r&&r(`config`,function(e,t){e.randomSeed!==t.randomSeed&&(i=dG(e.randomSeed))}),t(fG,{"Array | Matrix":function(e){return a(e,{})},"Array | Matrix, Object":function(e,t){return a(e,t)},"Array | Matrix, number":function(e,t){return a(e,{number:t})},"Array | Matrix, Array | Matrix":function(e,t){return a(e,{weights:t})},"Array | Matrix, Array | Matrix, number":function(e,t,n){return a(e,{number:n,weights:t})},"Array | Matrix, number, Array | Matrix":function(e,t,n){return a(e,{number:t,weights:n})}});function a(e,t){var{number:n,weights:r,elementWise:a=!0}=t,o=n===void 0;o&&(n=1);var s=jE(e)?e.create:jE(r)?r.create:null;e=e.valueOf(),r&&=r.valueOf(),a===!0&&(e=_j(e),r=_j(r));var c=0;if(r!==void 0){if(r.length!==e.length)throw Error(`Weights must have the same length as possibles`);for(var l=0,u=r.length;l1)for(var r=0,i=e.shift();r{var{typed:t,config:n,on:r}=e,i=dG(n.randomSeed);return r&&r(`config`,function(e,t){e.randomSeed!==t.randomSeed&&(i=dG(e.randomSeed))}),t(hG,{"":()=>o(0,1),number:e=>o(0,e),"number, number":(e,t)=>o(e,t),"Array | Matrix":e=>a(e,0,1),"Array | Matrix, number":(e,t)=>a(e,0,t),"Array | Matrix, number, number":(e,t,n)=>a(e,t,n)});function a(e,t,n){var r=mG(e.valueOf(),()=>o(t,n));return jE(e)?e.create(r,`number`):r}function o(e,t){return e+i()*(t-e)}}),_G=`randomInt`,vG=Z(_G,[`typed`,`config`,`log2`,`?on`],e=>{var{typed:t,config:n,log2:r,on:i}=e,a=dG(n.randomSeed);return i&&i(`config`,function(e,t){e.randomSeed!==t.randomSeed&&(a=dG(e.randomSeed))}),t(_G,{"":()=>s(0,2),number:e=>s(0,e),"number, number":(e,t)=>s(e,t),bigint:e=>c(0n,e),"bigint, bigint":c,"Array | Matrix":e=>o(e,0,1),"Array | Matrix, number":(e,t)=>o(e,0,t),"Array | Matrix, number, number":(e,t,n)=>o(e,t,n)});function o(e,t,n){var r=mG(e.valueOf(),()=>s(t,n));return jE(e)?e.create(r,`number`):r}function s(e,t){return Math.floor(e+a()*(t-e))}function c(e,t){var n=2n**30n,i=t-e;if(i<=n)return e+BigInt(s(0,Number(i)));for(var o=r(i),c=i;c>=i;){c=0n;for(var l=0;l{var{typed:t,addScalar:n,subtractScalar:r,multiplyScalar:i,divideScalar:a,pow:o,factorial:s,combinations:c,isNegative:l,isInteger:u,number:d,bignumber:f,larger:p}=e,m=[],h=[];return t(yG,{"number | BigNumber, number | BigNumber":function(e,t){if(!u(e)||l(e)||!u(t)||l(t))throw TypeError(`Non-negative integer value expected in function stirlingS2`);if(p(t,e))throw TypeError(`k must be less than or equal to n in function stirlingS2`);var r=!(CE(e)&&CE(t)),a=r?h:m,o=r?f:d,s=d(e),c=d(t);if(a[s]&&a[s].length>c)return a[s][c];for(var g=0;g<=s;++g)if(a[g]||(a[g]=[o(+(g===0))]),g!==0)for(var _=a[g],v=a[g-1],y=_.length;y<=g&&y<=c;++y)y===g?_[y]=1:_[y]=n(i(o(y),v[y]),v[y-1]);return a[s][c]}})}),xG=`bellNumbers`,SG=Z(xG,[`typed`,`addScalar`,`isNegative`,`isInteger`,`stirlingS2`],e=>{var{typed:t,addScalar:n,isNegative:r,isInteger:i,stirlingS2:a}=e;return t(xG,{"number | BigNumber":function(e){if(!i(e)||r(e))throw TypeError(`Non-negative integer value expected in function bellNumbers`);for(var t=0,o=0;o<=e;o++)t=n(t,a(e,o));return t}})}),CG=`catalan`,wG=Z(CG,[`typed`,`addScalar`,`divideScalar`,`multiplyScalar`,`combinations`,`isNegative`,`isInteger`],e=>{var{typed:t,addScalar:n,divideScalar:r,multiplyScalar:i,combinations:a,isNegative:o,isInteger:s}=e;return t(CG,{"number | BigNumber":function(e){if(!s(e)||o(e))throw TypeError(`Non-negative integer value expected in function catalan`);return r(a(i(e,2),e),n(e,1))}})}),TG=`composition`,EG=Z(TG,[`typed`,`addScalar`,`combinations`,`isNegative`,`isPositive`,`isInteger`,`larger`],e=>{var{typed:t,addScalar:n,combinations:r,isPositive:i,isNegative:a,isInteger:o,larger:s}=e;return t(TG,{"number | BigNumber, number | BigNumber":function(e,t){if(!o(e)||!i(e)||!o(t)||!i(t))throw TypeError(`Positive integer value expected in function composition`);if(s(t,e))throw TypeError(`k must be less than or equal to n in function composition`);return r(n(e,-1),n(t,-1))}})}),DG=`leafCount`,OG=Z(DG,[`parse`,`typed`],e=>{var{parse:t,typed:n}=e;function r(e){var t=0;return e.forEach(e=>{t+=r(e)}),t||1}return n(DG,{Node:function(e){return r(e)}})});function kG(e){return eD(e)||sD(e)&&e.isUnary()&&eD(e.args[0])}function AG(e){return!!(eD(e)||(rD(e)||sD(e))&&e.args.every(AG)||cD(e)&&AG(e.content))}function jG(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function MG(e){for(var t=1;t{var{FunctionNode:t,OperatorNode:n,SymbolNode:r}=e,i=!0,a=!1,o=`defaultF`,s={add:{trivial:i,total:i,commutative:i,associative:i},unaryPlus:{trivial:i,total:i,commutative:i,associative:i},subtract:{trivial:a,total:i,commutative:a,associative:a},multiply:{trivial:i,total:i,commutative:i,associative:i},divide:{trivial:a,total:i,commutative:a,associative:a},paren:{trivial:i,total:i,commutative:i,associative:a},defaultF:{trivial:a,total:i,commutative:a,associative:a}},c={divide:{total:a},log:{total:a}},l={subtract:{total:a},abs:{trivial:i},log:{total:i}};function u(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:s,r=o;if(typeof e==`string`?r=e:sD(e)?r=e.fn.toString():rD(e)?r=e.name:cD(e)&&(r=`paren`),SD(n,r)){var i=n[r];if(SD(i,t))return i[t];if(SD(s,r))return s[r][t]}if(SD(n,o)){var a=n[o];return SD(a,t)?a[t]:s[o][t]}if(SD(s,r)){var c=s[r];if(SD(c,t))return c[t]}return s[o][t]}function d(e){return u(e,`commutative`,arguments.length>1&&arguments[1]!==void 0?arguments[1]:s)}function f(e){return u(e,`associative`,arguments.length>1&&arguments[1]!==void 0?arguments[1]:s)}function p(e,t){var n=MG({},e);for(var r in t)SD(e,r)?n[r]=MG(MG({},t[r]),e[r]):n[r]=t[r];return n}function m(e,t){if(!e.args||e.args.length===0)return e;e.args=h(e,t);for(var n=0;n2&&f(e,t)){for(var a=e.args.pop();e.args.length>0;)a=n([e.args.pop(),a]);e.args=a.args}}}function _(e,t){if(!(!e.args||e.args.length===0)){for(var n=v(e),r=e.args.length,i=0;i2&&f(e,t)){for(var a=e.args.shift();e.args.length>0;)a=n([a,e.args.shift()]);e.args=a.args}}}function v(e){return sD(e)?function(t){try{return new n(e.op,e.fn,t,e.implicit)}catch(e){return console.error(e),[]}}:function(n){return new t(new r(e.name),n)}}return{createMakeNodeFunction:v,hasProperty:u,isCommutative:d,isAssociative:f,mergeContext:p,flatten:m,allChildren:h,unflattenr:g,unflattenl:_,defaultContext:s,realContext:c,positiveContext:l}}),PG=Z(`simplify`,[`typed`,`parse`,`equal`,`resolve`,`simplifyConstant`,`simplifyCore`,`AccessorNode`,`ArrayNode`,`ConstantNode`,`FunctionNode`,`IndexNode`,`ObjectNode`,`OperatorNode`,`ParenthesisNode`,`SymbolNode`,`replacer`],e=>{var{typed:t,parse:n,equal:r,resolve:i,simplifyConstant:a,simplifyCore:o,AccessorNode:s,ArrayNode:c,ConstantNode:l,FunctionNode:u,IndexNode:d,ObjectNode:f,OperatorNode:p,ParenthesisNode:m,SymbolNode:h,replacer:g}=e,{hasProperty:_,isCommutative:v,isAssociative:y,mergeContext:b,flatten:x,unflattenr:S,unflattenl:C,createMakeNodeFunction:w,defaultContext:T,realContext:E,positiveContext:D}=NG({FunctionNode:u,OperatorNode:p,SymbolNode:h});t.addConversion({from:`Object`,to:`Map`,convert:xE});var O=t(`simplify`,{Node:F,"Node, Map":(e,t)=>F(e,!1,t),"Node, Map, Object":(e,t,n)=>F(e,!1,t,n),"Node, Array":F,"Node, Array, Map":F,"Node, Array, Map, Object":F});t.removeConversion({from:`Object`,to:`Map`,convert:xE}),O.defaultContext=T,O.realContext=E,O.positiveContext=D;function k(e){return e.transform(function(e){return cD(e)?k(e.content):e})}var A={true:!0,false:!0,e:!0,i:!0,Infinity:!0,LN2:!0,LN10:!0,LOG2E:!0,LOG10E:!0,NaN:!0,phi:!0,pi:!0,SQRT1_2:!0,SQRT2:!0,tau:!0};O.rules=[o,{l:`log(e)`,r:`1`},{s:`n-n1 -> n+-n1`,assuming:{subtract:{total:!0}}},{s:`n-n -> 0`,assuming:{subtract:{total:!1}}},{s:`-(cl*v) -> v * (-cl)`,assuming:{multiply:{commutative:!0},subtract:{total:!0}}},{s:`-(cl*v) -> (-cl) * v`,assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{s:`-(v*cl) -> v * (-cl)`,assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{l:`-(n1/n2)`,r:`-n1/n2`},{l:`-v`,r:`v * (-1)`},{l:`(n1 + n2)*(-1)`,r:`n1*(-1) + n2*(-1)`,repeat:!0},{l:`n/n1^n2`,r:`n*n1^-n2`},{l:`n/n1`,r:`n*n1^-1`},{s:`(n1*n2)^n3 -> n1^n3 * n2^n3`,assuming:{multiply:{commutative:!0}}},{s:`(n1*n2)^(-1) -> n2^(-1) * n1^(-1)`,assuming:{multiply:{commutative:!1}}},{s:`(n ^ n1) ^ n2 -> n ^ (n1 * n2)`,assuming:{divide:{total:!0}}},{l:` vd * ( vd * n1 + n2)`,r:`vd^2 * n1 + vd * n2`},{s:` vd * (vd^n4 * n1 + n2) -> vd^(1+n4) * n1 + vd * n2`,assuming:{divide:{total:!0}}},{s:`vd^n3 * ( vd * n1 + n2) -> vd^(n3+1) * n1 + vd^n3 * n2`,assuming:{divide:{total:!0}}},{s:`vd^n3 * (vd^n4 * n1 + n2) -> vd^(n3+n4) * n1 + vd^n3 * n2`,assuming:{divide:{total:!0}}},{l:`n*n`,r:`n^2`},{s:`n * n^n1 -> n^(n1+1)`,assuming:{divide:{total:!0}}},{s:`n^n1 * n^n2 -> n^(n1+n2)`,assuming:{divide:{total:!0}}},a,{s:`n+n -> 2*n`,assuming:{add:{total:!0}}},{l:`n+-n`,r:`0`},{l:`vd*n + vd`,r:`vd*(n+1)`},{l:`n3*n1 + n3*n2`,r:`n3*(n1+n2)`},{l:`n3^(-n4)*n1 + n3 * n2`,r:`n3^(-n4)*(n1 + n3^(n4+1) *n2)`},{l:`n3^(-n4)*n1 + n3^n5 * n2`,r:`n3^(-n4)*(n1 + n3^(n4+n5)*n2)`},{s:`n*vd + vd -> (n+1)*vd`,assuming:{multiply:{commutative:!1}}},{s:`vd + n*vd -> (1+n)*vd`,assuming:{multiply:{commutative:!1}}},{s:`n1*n3 + n2*n3 -> (n1+n2)*n3`,assuming:{multiply:{commutative:!1}}},{s:`n^n1 * n -> n^(n1+1)`,assuming:{divide:{total:!0},multiply:{commutative:!1}}},{s:`n1*n3^(-n4) + n2 * n3 -> (n1 + n2*n3^(n4 + 1))*n3^(-n4)`,assuming:{multiply:{commutative:!1}}},{s:`n1*n3^(-n4) + n2 * n3^n5 -> (n1 + n2*n3^(n4 + n5))*n3^(-n4)`,assuming:{multiply:{commutative:!1}}},{l:`n*cd + cd`,r:`(n+1)*cd`},{s:`cd*n + cd -> cd*(n+1)`,assuming:{multiply:{commutative:!1}}},{s:`cd + cd*n -> cd*(1+n)`,assuming:{multiply:{commutative:!1}}},a,{s:`(-n)*n1 -> -(n*n1)`,assuming:{subtract:{total:!0}}},{s:`n1*(-n) -> -(n1*n)`,assuming:{subtract:{total:!0},multiply:{commutative:!1}}},{s:`ce+ve -> ve+ce`,assuming:{add:{commutative:!0}},imposeContext:{add:{commutative:!1}}},{s:`vd*cd -> cd*vd`,assuming:{multiply:{commutative:!0}},imposeContext:{multiply:{commutative:!1}}},{l:`n+-n1`,r:`n-n1`},{l:`n+-(n1)`,r:`n-(n1)`},{s:`n*(n1^-1) -> n/n1`,assuming:{multiply:{commutative:!0}}},{s:`n*n1^-n2 -> n/n1^n2`,assuming:{multiply:{commutative:!0}}},{s:`n^-1 -> 1/n`,assuming:{multiply:{commutative:!0}}},{l:`n^1`,r:`n`},{s:`n*(n1/n2) -> (n*n1)/n2`,assuming:{multiply:{associative:!0}}},{s:`n-(n1+n2) -> n-n1-n2`,assuming:{addition:{associative:!0,commutative:!0}}},{l:`1*n`,r:`n`,imposeContext:{multiply:{commutative:!0}}},{s:`n1/(n2/n3) -> (n1*n3)/n2`,assuming:{multiply:{associative:!0}}},{l:`n1/(-n2)`,r:`-n1/n2`}];function j(e,t){var r={};if(e.s){var i=e.s.split(`->`);if(i.length===2)r.l=i[0],r.r=i[1];else throw SyntaxError(`Could not parse rule: `+e.s)}else r.l=e.l,r.r=e.r;r.l=k(n(r.l)),r.r=k(n(r.r));for(var a of[`imposeContext`,`repeat`,`assuming`])a in e&&(r[a]=e[a]);if(e.evaluate&&(r.evaluate=n(e.evaluate)),y(r.l,t)){var o=!v(r.l,t),s;o&&(s=P());var c=w(r.l),l=P();r.expanded={},r.expanded.l=c([r.l,l]),x(r.expanded.l,t),S(r.expanded.l,t),r.expanded.r=c([r.r,l]),o&&(r.expandedNC1={},r.expandedNC1.l=c([s,r.l]),r.expandedNC1.r=c([s,r.r]),r.expandedNC2={},r.expandedNC2.l=c([s,r.expanded.l]),r.expandedNC2.r=c([s,r.expanded.r]))}return r}function M(e,t){for(var n=[],r=0;r2&&arguments[2]!==void 0?arguments[2]:bE(),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},a=r.consoleDebug;t=M(t||O.rules,r.context);var o=i(e,n);o=k(o);for(var s={},c=o.toString({parenthesis:`all`});!s[c];){s[c]=!0,N=0;var l=c;a&&console.log(`Working on: `,c);for(var u=0;u ${t[u].r.toString()}`)),a){var f=o.toString({parenthesis:`all`});f!==l&&(console.log(`Applying`,d,`produced`,f),l=f)}C(o,r.context)}c=o.toString({parenthesis:`all`})}return o}function I(e,t,n){var r=e;if(e)for(var i=0;i1&&(c=a(e.args.slice(0,s))),i=e.args.slice(s),r=i.length===1?i[0]:a(i),n.push(a([c,r]))}return n}function R(e,t){var n={placeholders:{}};if(!e.placeholders&&!t.placeholders)return n;if(!e.placeholders)return t;if(!t.placeholders)return e;for(var r in e.placeholders)if(SD(e.placeholders,r)&&(n.placeholders[r]=e.placeholders[r],SD(t.placeholders,r)&&!re(e.placeholders[r],t.placeholders[r])))return null;for(var i in t.placeholders)SD(t.placeholders,i)&&(n.placeholders[i]=t.placeholders[i]);return n}function te(e,t){var n=[];if(e.length===0||t.length===0)return n;for(var r,i=0;i2)throw Error(`permuting >2 commutative non-associative rule arguments not yet implemented`);var d=ne(e.args[0],t.args[1],n);if(d.length===0)return[];var f=ne(e.args[1],t.args[0],n);if(f.length===0)return[];o=[d,f]}a=z(o)}else if(t.args.length>=2&&e.args.length===2){for(var m=ee(t,n),g=[],_=0;_2)throw Error(`Unexpected non-binary associative function: `+e.toString());else return[]}else if(e instanceof h){if(e.name.length===0)throw Error(`Symbol in rule has 0 length...!?`);if(A[e.name]){if(e.name!==t.name)return[]}else switch(e.name[1]>=`a`&&e.name[1]<=`z`?e.name.substring(0,2):e.name[0]){case`n`:case`_p`:a[0].placeholders[e.name]=t;break;case`c`:case`cl`:if(eD(t))a[0].placeholders[e.name]=t;else return[];break;case`v`:if(!eD(t))a[0].placeholders[e.name]=t;else return[];break;case`vl`:if(dD(t))a[0].placeholders[e.name]=t;else return[];break;case`cd`:if(kG(t))a[0].placeholders[e.name]=t;else return[];break;case`vd`:if(!kG(t))a[0].placeholders[e.name]=t;else return[];break;case`ce`:if(AG(t))a[0].placeholders[e.name]=t;else return[];break;case`ve`:if(!AG(t))a[0].placeholders[e.name]=t;else return[];break;default:throw Error(`Invalid symbol in rule: `+e.name)}}else if(e instanceof l){if(!r(e.value,t.value))return[]}else return[];return a}function re(e,t){if(e instanceof l&&t instanceof l){if(!r(e.value,t.value))return!1}else if(e instanceof h&&t instanceof h){if(e.name!==t.name)return!1}else if(e instanceof p&&t instanceof p||e instanceof u&&t instanceof u){if(e instanceof p){if(e.op!==t.op||e.fn!==t.fn)return!1}else if(e instanceof u&&e.name!==t.name)return!1;if(e.args.length!==t.args.length)return!1;for(var n=0;n{var{typed:t,config:n,mathWithTransform:r,matrix:i,isBounded:a,fraction:o,bignumber:s,AccessorNode:c,ArrayNode:l,ConstantNode:u,FunctionNode:d,IndexNode:f,ObjectNode:p,OperatorNode:m,SymbolNode:h}=e,{isCommutative:g,isAssociative:_,allChildren:v,createMakeNodeFunction:y}=NG({FunctionNode:d,OperatorNode:m,SymbolNode:h}),b=t(`simplifyConstant`,{Node:e=>w(j(e,{})),"Node, Object":function(e,t){return w(j(e,t))}});function x(e){return DE(e)?e.valueOf():e instanceof Array?e.map(x):jE(e)?i(x(e.valueOf())):e}function S(e,t,n){try{return r[e].apply(null,t)}catch{return t=t.map(x),E(r[e].apply(null,t),n)}}var C=t({Fraction:O,number:function(e){return e<0?D(new u(-e)):new u(e)},BigNumber:function(e){return e<0?D(new u(-e)):new u(e)},bigint:function(e){return e<0n?D(new u(-e)):new u(e)},Complex:function(e){throw Error(`Cannot convert Complex number to Node`)},string:function(e){return new u(e)},Matrix:function(e){return new l(e.valueOf().map(e=>C(e)))}});function w(e){return aD(e)?e:C(e)}function T(e,t){if(t&&t.exactFractions!==!1&&a(e)&&o){var n=o(e),r=t&&typeof t.fractionsLimit==`number`?t.fractionsLimit:1/0;if(n.valueOf()===e&&n.nn.number===`BigNumber`&&s?s(e):Number(e),r=e.s*e.n,i=r<0n?new m(`-`,`unaryMinus`,[new u(-t(r))]):new u(t(r));return e.d===1n?i:new m(`/`,`divide`,[i,new u(t(e.d))])}function k(e,t,n){if(!iD(t))return new c(w(e),w(t));if(XE(e)||jE(e)){for(var r=Array.from(t.dimensions);r.length>0;)if(eD(r[0])&&typeof r[0].value!=`string`){var a=E(r.shift().value,n);XE(e)?e=e.items[a-1]:(e=e.valueOf()[a-1],e instanceof Array&&(e=i(e)))}else if(r.length>1&&eD(r[1])&&typeof r[1].value!=`string`){var o=E(r[1].value,n),s=[],d=XE(e)?e.items:e.valueOf();for(var p of d)if(XE(p))s.push(p.items[o-1]);else if(jE(e))s.push(p[o-1]);else break;if(s.length===d.length)e=XE(e)?new l(s):i(s),r.splice(1,1);else break}else break;return r.length===t.dimensions.length?new c(w(e),t):r.length>0?(t=new f(r),new c(w(e),t)):e}if(oD(e)&&t.dimensions.length===1&&eD(t.dimensions[0])){var m=t.dimensions[0].value;return m in e.properties?e.properties[m]:new u}return new c(w(e),t)}function A(e,t,n,r){var i=t.shift(),a=t.reduce((t,i)=>{if(!aD(i)){var a=t.pop();if(aD(a))return[a,i];try{return t.push(S(e,[a,i],r)),t}catch{t.push(a)}}return t.push(w(t.pop())),[n([t.length===1?t[0]:n(t),w(i)])]},[i]);return a.length===1?a[0]:n([a[0],C(a[1])])}function j(e,t){switch(e.type){case`SymbolNode`:return e;case`ConstantNode`:switch(typeof e.value){case`number`:return E(e.value,t);case`bigint`:return E(e.value,t);case`string`:return e.value;default:if(!isNaN(e.value))return E(e.value,t)}return e;case`FunctionNode`:if(r[e.name]&&r[e.name].rawArgs)return e;if(![`add`,`multiply`].includes(e.name)){var n=e.args.map(e=>j(e,t));if(!n.some(aD))try{return S(e.name,n,t)}catch{}if(e.name===`size`&&n.length===1&&XE(n[0])){for(var a=[],o=n[0];XE(o);)a.push(o.items.length),o=o.items[0];return i(a)}return new d(e.name,n.map(w))}case`OperatorNode`:var s=e.fn.toString(),c,u,m=y(e);if(sD(e)&&e.isUnary())c=[j(e.args[0],t)],u=aD(c[0])?m(c):S(s,c,t);else if(_(e,t.context))if(c=v(e,t.context),c=c.map(e=>j(e,t)),g(s,t.context)){for(var h=[],x=[],C=0;C1?(u=A(s,h,m,t),x.unshift(u),u=A(s,x,m,t)):u=A(s,c,m,t)}else u=A(s,c,m,t);else c=e.args.map(e=>j(e,t)),u=A(s,c,m,t);return u;case`ParenthesisNode`:return j(e.content,t);case`AccessorNode`:return k(j(e.object,t),j(e.index,t),t);case`ArrayNode`:var T=e.items.map(e=>j(e,t));return T.some(aD)?new l(T.map(w)):i(T);case`IndexNode`:return new f(e.dimensions.map(e=>b(e,t)));case`ObjectNode`:var D={};for(var O in e.properties)D[O]=b(e.properties[O],t);return new p(D);default:throw Error(`Unimplemented node type in simplifyConstant: ${e.type}`)}}return b}),IG=`simplifyCore`,LG=Z(IG,[`typed`,`parse`,`equal`,`isZero`,`add`,`subtract`,`multiply`,`divide`,`pow`,`AccessorNode`,`ArrayNode`,`ConstantNode`,`FunctionNode`,`IndexNode`,`ObjectNode`,`OperatorNode`,`ParenthesisNode`,`SymbolNode`],e=>{var{typed:t,parse:n,equal:r,isZero:i,add:a,subtract:o,multiply:s,divide:c,pow:l,AccessorNode:u,ArrayNode:d,ConstantNode:f,FunctionNode:p,IndexNode:m,ObjectNode:h,OperatorNode:g,ParenthesisNode:_,SymbolNode:v}=e,y=new f(0),b=new f(1),x=new f(!0),S=new f(!1);function C(e){return sD(e)&&[`and`,`not`,`or`].includes(e.op)}var{hasProperty:w,isCommutative:T}=NG({FunctionNode:p,OperatorNode:g,SymbolNode:v});function E(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t?t.context:void 0;if(w(e,`trivial`,n)){if(rD(e)&&e.args.length===1)return E(e.args[0],t);var a=!1,o=0;if(e.forEach(e=>{++o,o===1&&(a=E(e,t))}),o===1)return a}var s=e;if(rD(s)){var c=cH(s.name);if(c){if(s.args.length>2&&w(s,`associative`,n))for(;s.args.length>2;){var l=s.args.pop(),f=s.args.pop();s.args.push(new g(c,s.name,[l,f]))}s=new g(c,s.name,s.args)}else return new p(E(s.fn),s.args.map(e=>E(e,t)))}if(sD(s)&&s.isUnary()){var _=E(s.args[0],t);if(s.op===`~`&&sD(_)&&_.isUnary()&&_.op===`~`||s.op===`not`&&sD(_)&&_.isUnary()&&_.op===`not`&&C(_.args[0]))return _.args[0];var v=!0;if(s.op===`-`&&sD(_)&&(_.isBinary()&&_.fn===`subtract`&&(s=new g(`-`,`subtract`,[_.args[1],_.args[0]]),v=!1),_.isUnary()&&_.op===`-`))return _.args[0];if(v)return new g(s.op,s.fn,[_])}if(sD(s)&&s.isBinary()){var D=E(s.args[0],t),O=E(s.args[1],t);if(s.op===`+`){if(eD(D)&&i(D.value))return O;if(eD(O)&&i(O.value))return D;sD(O)&&O.isUnary()&&O.op===`-`&&(O=O.args[0],s=new g(`-`,`subtract`,[D,O]))}if(s.op===`-`)return sD(O)&&O.isUnary()&&O.op===`-`?E(new g(`+`,`add`,[D,O.args[0]]),t):eD(D)&&i(D.value)?E(new g(`-`,`unaryMinus`,[O])):eD(O)&&i(O.value)?D:new g(s.op,s.fn,[D,O]);if(s.op===`*`){if(eD(D)){if(i(D.value))return y;if(r(D.value,1))return O}if(eD(O)){if(i(O.value))return y;if(r(O.value,1))return D;if(T(s,n))return new g(s.op,s.fn,[O,D],s.implicit)}return new g(s.op,s.fn,[D,O],s.implicit)}if(s.op===`/`)return eD(D)&&i(D.value)?y:eD(O)&&r(O.value,1)?D:new g(s.op,s.fn,[D,O]);if(s.op===`^`&&eD(O)){if(i(O.value))return b;if(r(O.value,1))return D}if(s.op===`and`){if(eD(D))if(D.value){if(C(O))return O;if(eD(O))return O.value?x:S}else return S;if(eD(O))if(O.value){if(C(D))return D}else return S}if(s.op===`or`){if(eD(D)){if(D.value)return x;if(C(O))return O}if(eD(O)){if(O.value)return x;if(C(D))return D}}return new g(s.op,s.fn,[D,O])}if(sD(s))return new g(s.op,s.fn,s.args.map(e=>E(e,t)));if(XE(s))return new d(s.items.map(e=>E(e,t)));if(YE(s))return new u(E(s.object,t),E(s.index,t));if(iD(s))return new m(s.dimensions.map(e=>E(e,t)));if(oD(s)){var k={};for(var A in s.properties)k[A]=E(s.properties[A],t);return new h(k)}return s}return t(IG,{Node:E,"Node,Object":E})}),RG=Z(`resolve`,[`typed`,`parse`,`ConstantNode`,`FunctionNode`,`OperatorNode`,`ParenthesisNode`],e=>{var{typed:t,parse:n,ConstantNode:r,FunctionNode:i,OperatorNode:a,ParenthesisNode:o}=e;function s(e,t){var c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Set;if(!t)return e;if(dD(e)){if(c.has(e.name)){var l=Array.from(c).join(`, `);throw ReferenceError(`recursive loop of variable definitions among {${l}}`)}var u=t.get(e.name);if(aD(u)){var d=new Set(c);return d.add(e.name),s(u,t,d)}else if(typeof u==`number`)return n(String(u));else if(u!==void 0)return new r(u);else return e}else if(sD(e)){var f=e.args.map(function(e){return s(e,t,c)});return new a(e.op,e.fn,f,e.implicit)}else if(cD(e))return new o(s(e.content,t,c));else if(rD(e)){var p=e.args.map(function(e){return s(e,t,c)});return new i(e.name,p)}return e.map(e=>s(e,t,c))}return t(`resolve`,{Node:s,"Node, Map | null | undefined":s,"Node, Object":(e,t)=>s(e,xE(t)),"Array | Matrix":t.referToSelf(e=>t=>t.map(t=>e(t))),"Array | Matrix, null | undefined":t.referToSelf(e=>t=>t.map(t=>e(t))),"Array, Object":t.referTo(`Array,Map`,e=>(t,n)=>e(t,xE(n))),"Matrix, Object":t.referTo(`Matrix,Map`,e=>(t,n)=>e(t,xE(n))),"Array | Matrix, Map":t.referToSelf(e=>(t,n)=>t.map(t=>e(t,n)))})}),zG=`symbolicEqual`,BG=Z(zG,[`parse`,`simplify`,`typed`,`OperatorNode`],e=>{var{parse:t,simplify:n,typed:r,OperatorNode:i}=e;function a(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=n(new i(`-`,`subtract`,[e,t]),{},r);return eD(a)&&!a.value}return r(zG,{"Node, Node":a,"Node, Node, Object":a})}),VG=`derivative`,HG=Z(VG,[`typed`,`config`,`parse`,`simplify`,`equal`,`isZero`,`numeric`,`ConstantNode`,`FunctionNode`,`OperatorNode`,`ParenthesisNode`,`SymbolNode`],e=>{var{typed:t,config:n,parse:r,simplify:i,equal:a,isZero:o,numeric:s,ConstantNode:c,FunctionNode:l,OperatorNode:u,ParenthesisNode:d,SymbolNode:f}=e;function p(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{simplify:!0},r=new Map,a=t.name;function o(e){var t=r.get(e);if(t!==void 0)return t;var n=_(o,e,a);return r.set(e,n),n}var s=v(e,o);return n.simplify?i(s):s}function m(e){var t=r(e);if(!t.isSymbolNode)throw TypeError(`Invalid variable. Cannot parse ${JSON.stringify(e)} into a variable in function derivative`);return t}var h=t(VG,{"Node, SymbolNode":p,"Node, SymbolNode, Object":p,"Node, string":(e,t)=>p(e,m(t)),"Node, string, Object":(e,t,n)=>p(e,m(t),n)});h._simplify=!0,h.toTex=function(e){return g.apply(null,e.args)};var g=t(`_derivTex`,{"Node, SymbolNode":function(e,t){return eD(e)&&pD(e.value)===`string`?g(r(e.value).toString(),t.toString(),1):g(e.toTex(),t.toString(),1)},"Node, ConstantNode":function(e,t){if(pD(t.value)===`string`)return g(e,r(t.value));throw Error(`The second parameter to 'derivative' is a non-string constant`)},"Node, SymbolNode, ConstantNode":function(e,t,n){return g(e.toString(),t.name,n.value)},"string, string, number":function(e,t,n){return(n===1?`{d\\over d`+t+`}`:`{d^{`+n+`}\\over d`+t+`^{`+n+`}}`)+`\\left[${e}\\right]`}}),_=t(`_isConst`,{"function, ConstantNode, string":function(){return!0},"function, SymbolNode, string":function(e,t,n){return t.name!==n},"function, ParenthesisNode, string":function(e,t,n){return e(t.content,n)},"function, FunctionAssignmentNode, string":function(e,t,n){return t.params.includes(n)?e(t.expr,n):!0},"function, FunctionNode | OperatorNode, string":function(e,t,n){return t.args.every(t=>e(t,n))}}),v=t(`_derivative`,{"ConstantNode, function":function(){return y(0)},"SymbolNode, function":function(e,t){return t(e)?y(0):y(1)},"ParenthesisNode, function":function(e,t){return new d(v(e.content,t))},"FunctionAssignmentNode, function":function(e,t){return t(e)?y(0):v(e.expr,t)},"FunctionNode, function":function(e,t){if(t(e))return y(0);var n=e.args[0],r,i=!1,a=!1,o;switch(e.name){case`cbrt`:i=!0,o=new u(`*`,`multiply`,[y(3),new u(`^`,`pow`,[n,new u(`/`,`divide`,[y(2),y(3)])])]);break;case`sqrt`:case`nthRoot`:if(e.args.length===1)i=!0,o=new u(`*`,`multiply`,[y(2),new l(`sqrt`,[n])]);else if(e.args.length===2)return r=new u(`/`,`divide`,[y(1),e.args[1]]),v(new u(`^`,`pow`,[n,r]),t);break;case`log10`:r=y(10);case`log`:if(!r&&e.args.length===1)o=n.clone(),i=!0;else if(e.args.length===1&&r||e.args.length===2&&t(e.args[1]))o=new u(`*`,`multiply`,[n.clone(),new l(`log`,[r||e.args[1]])]),i=!0;else if(e.args.length===2)return v(new u(`/`,`divide`,[new l(`log`,[n]),new l(`log`,[e.args[1]])]),t);break;case`pow`:if(e.args.length===2)return v(new u(`^`,`pow`,[n,e.args[1]]),t);break;case`exp`:o=new l(`exp`,[n.clone()]);break;case`sin`:o=new l(`cos`,[n.clone()]);break;case`cos`:o=new u(`-`,`unaryMinus`,[new l(`sin`,[n.clone()])]);break;case`tan`:o=new u(`^`,`pow`,[new l(`sec`,[n.clone()]),y(2)]);break;case`sec`:o=new u(`*`,`multiply`,[e,new l(`tan`,[n.clone()])]);break;case`csc`:a=!0,o=new u(`*`,`multiply`,[e,new l(`cot`,[n.clone()])]);break;case`cot`:a=!0,o=new u(`^`,`pow`,[new l(`csc`,[n.clone()]),y(2)]);break;case`asin`:i=!0,o=new l(`sqrt`,[new u(`-`,`subtract`,[y(1),new u(`^`,`pow`,[n.clone(),y(2)])])]);break;case`acos`:i=!0,a=!0,o=new l(`sqrt`,[new u(`-`,`subtract`,[y(1),new u(`^`,`pow`,[n.clone(),y(2)])])]);break;case`atan`:i=!0,o=new u(`+`,`add`,[new u(`^`,`pow`,[n.clone(),y(2)]),y(1)]);break;case`asec`:i=!0,o=new u(`*`,`multiply`,[new l(`abs`,[n.clone()]),new l(`sqrt`,[new u(`-`,`subtract`,[new u(`^`,`pow`,[n.clone(),y(2)]),y(1)])])]);break;case`acsc`:i=!0,a=!0,o=new u(`*`,`multiply`,[new l(`abs`,[n.clone()]),new l(`sqrt`,[new u(`-`,`subtract`,[new u(`^`,`pow`,[n.clone(),y(2)]),y(1)])])]);break;case`acot`:i=!0,a=!0,o=new u(`+`,`add`,[new u(`^`,`pow`,[n.clone(),y(2)]),y(1)]);break;case`sinh`:o=new l(`cosh`,[n.clone()]);break;case`cosh`:o=new l(`sinh`,[n.clone()]);break;case`tanh`:o=new u(`^`,`pow`,[new l(`sech`,[n.clone()]),y(2)]);break;case`sech`:a=!0,o=new u(`*`,`multiply`,[e,new l(`tanh`,[n.clone()])]);break;case`csch`:a=!0,o=new u(`*`,`multiply`,[e,new l(`coth`,[n.clone()])]);break;case`coth`:a=!0,o=new u(`^`,`pow`,[new l(`csch`,[n.clone()]),y(2)]);break;case`asinh`:i=!0,o=new l(`sqrt`,[new u(`+`,`add`,[new u(`^`,`pow`,[n.clone(),y(2)]),y(1)])]);break;case`acosh`:i=!0,o=new l(`sqrt`,[new u(`-`,`subtract`,[new u(`^`,`pow`,[n.clone(),y(2)]),y(1)])]);break;case`atanh`:i=!0,o=new u(`-`,`subtract`,[y(1),new u(`^`,`pow`,[n.clone(),y(2)])]);break;case`asech`:i=!0,a=!0,o=new u(`*`,`multiply`,[n.clone(),new l(`sqrt`,[new u(`-`,`subtract`,[y(1),new u(`^`,`pow`,[n.clone(),y(2)])])])]);break;case`acsch`:i=!0,a=!0,o=new u(`*`,`multiply`,[new l(`abs`,[n.clone()]),new l(`sqrt`,[new u(`+`,`add`,[new u(`^`,`pow`,[n.clone(),y(2)]),y(1)])])]);break;case`acoth`:i=!0,a=!0,o=new u(`-`,`subtract`,[y(1),new u(`^`,`pow`,[n.clone(),y(2)])]);break;case`abs`:o=new u(`/`,`divide`,[new l(new f(`abs`),[n.clone()]),n.clone()]);break;default:throw Error(`Cannot process function "`+e.name+`" in derivative: the function is not supported, undefined, or the number of arguments passed to it are not supported`)}var s,c;i?(s=`/`,c=`divide`):(s=`*`,c=`multiply`);var d=v(n,t);return a&&(d=new u(`-`,`unaryMinus`,[d])),new u(s,c,[d,o])},"OperatorNode, function":function(e,t){if(t(e))return y(0);if(e.op===`+`)return new u(e.op,e.fn,e.args.map(function(e){return v(e,t)}));if(e.op===`-`){if(e.isUnary())return new u(e.op,e.fn,[v(e.args[0],t)]);if(e.isBinary())return new u(e.op,e.fn,[v(e.args[0],t),v(e.args[1],t)])}if(e.op===`*`){var n=e.args.filter(function(e){return t(e)});if(n.length>0){var r=e.args.filter(function(e){return!t(e)}),i=r.length===1?r[0]:new u(`*`,`multiply`,r);return new u(`*`,`multiply`,n.concat(v(i,t)))}return new u(`+`,`add`,e.args.map(function(n){return new u(`*`,`multiply`,e.args.map(function(e){return e===n?v(e,t):e.clone()}))}))}if(e.op===`/`&&e.isBinary()){var s=e.args[0],c=e.args[1];return t(c)?new u(`/`,`divide`,[v(s,t),c]):t(s)?new u(`*`,`multiply`,[new u(`-`,`unaryMinus`,[s]),new u(`/`,`divide`,[v(c,t),new u(`^`,`pow`,[c.clone(),y(2)])])]):new u(`/`,`divide`,[new u(`-`,`subtract`,[new u(`*`,`multiply`,[v(s,t),c.clone()]),new u(`*`,`multiply`,[s.clone(),v(c,t)])]),new u(`^`,`pow`,[c.clone(),y(2)])])}if(e.op===`^`&&e.isBinary()){var d=e.args[0],f=e.args[1];if(t(d))return eD(d)&&(o(d.value)||a(d.value,1))?y(0):new u(`*`,`multiply`,[e,new u(`*`,`multiply`,[new l(`log`,[d.clone()]),v(f.clone(),t)])]);if(t(f)){if(eD(f)){if(o(f.value))return y(0);if(a(f.value,1))return v(d,t)}var p=new u(`^`,`pow`,[d.clone(),new u(`-`,`subtract`,[f,y(1)])]);return new u(`*`,`multiply`,[f.clone(),new u(`*`,`multiply`,[v(d,t),p])])}return new u(`*`,`multiply`,[new u(`^`,`pow`,[d.clone(),f.clone()]),new u(`+`,`add`,[new u(`*`,`multiply`,[v(d,t),new u(`/`,`divide`,[f.clone(),d.clone()])]),new u(`*`,`multiply`,[v(f,t),new l(`log`,[d.clone()])])])])}throw Error(`Cannot process operator "`+e.op+`" in derivative: the operator is not supported, undefined, or the number of arguments passed to it are not supported`)}});function y(e,t){return new c(s(e,t||FD(String(e),n)))}return h}),UG=`rationalize`,WG=Z(UG,`config.typed.equal.isZero.add.subtract.multiply.divide.pow.parse.simplifyConstant.simplifyCore.simplify.?bignumber.?fraction.mathWithTransform.matrix.AccessorNode.ArrayNode.ConstantNode.FunctionNode.IndexNode.ObjectNode.OperatorNode.SymbolNode.ParenthesisNode`.split(`.`),e=>{var{config:t,typed:n,equal:r,isZero:i,add:a,subtract:o,multiply:s,divide:c,pow:l,parse:u,simplifyConstant:d,simplifyCore:f,simplify:p,fraction:m,bignumber:h,mathWithTransform:g,matrix:_,AccessorNode:v,ArrayNode:y,ConstantNode:b,FunctionNode:x,IndexNode:S,ObjectNode:C,OperatorNode:w,SymbolNode:T,ParenthesisNode:E}=e;function D(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=k(),i=O(e,t,!0,r.firstRules),a=i.variables.length,o={exactFractions:!1},s={exactFractions:!0};if(e=i.expression,a>=1){e=A(e);var c,l,u=!0,d=!1;e=p(e,r.firstRules,{},o);for(var f;l=u?r.distrDivRules:r.sucDivRules,e=p(e,l,{},s),u=!u,f=e.toString(),f!==c;)d=!0,c=f;d&&(e=p(e,r.firstRulesAgain,{},o)),e=p(e,r.finalRules,{},o)}var m=[],h={};return e.type===`OperatorNode`&&e.isBinary()&&e.op===`/`?(a===1&&(e.args[0]=j(e.args[0],m),e.args[1]=j(e.args[1])),n&&(h.numerator=e.args[0],h.denominator=e.args[1])):(a===1&&(e=j(e,m)),n&&(h.numerator=e,h.denominator=null)),n?(h.coefficients=m,h.variables=i.variables,h.expression=e,h):e}return n(UG,{Node:D,"Node, boolean":(e,t)=>D(e,{},t),"Node, Object":D,"Node, Object, boolean":D});function O(e,t,n,r){var i=[],a=p(e,r,t,{exactFractions:!1});n=!!n;var o=`+-*`+(n?`/`:``);c(a);var s={};return s.expression=a,s.variables=i,s;function c(e){var t=e.type;if(t===`FunctionNode`)throw Error(`There is an unsolved function call`);if(t===`OperatorNode`)if(e.op===`^`){if(e.args[1].type!==`ConstantNode`||!PD(parseFloat(e.args[1].value)))throw Error(`There is a non-integer exponent`);c(e.args[0])}else{if(!o.includes(e.op))throw Error(`Operator `+e.op+` invalid in polynomial expression`);for(var n=0;n1;if(r===`OperatorNode`&&e.isBinary()){var a=!1,o;if(e.op===`^`&&(e.args[0].type===`ParenthesisNode`||e.args[0].type===`OperatorNode`)&&e.args[1].type===`ConstantNode`&&(o=parseFloat(e.args[1].value),a=o>=2&&PD(o)),a){if(o>2){var s=e.args[0];e=new w(`*`,`multiply`,[s,new w(`^`,`pow`,[e.args[0].cloneDeep(),new b(o-1)])])}else e=new w(`*`,`multiply`,[e.args[0],e.args[0].cloneDeep()]);i&&(n===`content`?t.content=e:t.args[n]=e)}}if(r===`ParenthesisNode`)A(e.content,e,`content`);else if(r!==`ConstantNode`&&r!==`SymbolNode`)for(var c=0;c=0;s--)if(t[s]!==0){var c=new b(a?t[s]:Math.abs(t[s])),l=t[s]<0?`-`:`+`;if(s>0){var u=new T(i);if(s>1){var d=new b(s);u=new w(`^`,`pow`,[u,d])}c=t[s]===-1&&a?new w(`-`,`unaryMinus`,[u]):Math.abs(t[s])===1?u:new w(`*`,`multiply`,[c,u])}o=a?c:l===`+`?new w(`+`,`add`,[o,c]):new w(`-`,`subtract`,[o,c]),a=!1}if(a)return new b(0);return o;function f(e,n,a){var o=e.type;if(o===`FunctionNode`)throw Error(`There is an unsolved function call`);if(o===`OperatorNode`){if(!`+-*^`.includes(e.op))throw Error(`Operator `+e.op+` invalid`);if(n!==null&&((e.fn===`unaryMinus`||e.fn===`pow`)&&n.fn!==`add`&&n.fn!==`subtract`&&n.fn!==`multiply`||(e.fn===`subtract`||e.fn===`add`||e.fn===`multiply`)&&n.fn!==`add`&&n.fn!==`subtract`||(e.fn===`subtract`||e.fn===`add`||e.fn===`unaryMinus`)&&a.noFil!==0))throw Error(`Invalid `+e.op+` placing`);(e.op===`^`||e.op===`*`)&&(a.fire=e.op);for(var s=0;sr&&(t[c]=0),t[c]+=a.cte*(a.oper===`+`?1:-1),r=Math.max(c,r);return}a.cte=c,a.fire===``&&(t[0]+=a.cte*(a.oper===`+`?1:-1))}else throw Error(`Type `+o+` is not allowed`)}}}),GG=`zpk2tf`,KG=Z(GG,[`typed`,`add`,`multiply`,`Complex`,`number`],e=>{var{typed:t,add:n,multiply:r,Complex:i,number:a}=e;return t(GG,{"Array,Array,number":function(e,t,n){return o(e,t,n)},"Array,Array":function(e,t){return o(e,t,1)},"Matrix,Matrix,number":function(e,t,n){return o(e.valueOf(),t.valueOf(),n)},"Matrix,Matrix":function(e,t){return o(e.valueOf(),t.valueOf(),1)}});function o(e,t,n){e.some(e=>e.type===`BigNumber`)&&(e=e.map(e=>a(e))),t.some(e=>e.type===`BigNumber`)&&(t=t.map(e=>a(e)));for(var o=[i(1,0)],c=[i(1,0)],l=0;l=0&&o-s{var{typed:t,add:n,multiply:r,Complex:i,divide:a,matrix:o}=e;return t(qG,{"Array, Array":function(e,t){return s(e,t,c(512))},"Array, Array, Array":function(e,t,n){return s(e,t,n)},"Array, Array, number":function(e,t,n){if(n<0)throw Error(`w must be a positive number`);return s(e,t,c(n))},"Matrix, Matrix":function(e,t){var n=c(512),{w:r,h:i}=s(e.valueOf(),t.valueOf(),n);return{w:o(r),h:o(i)}},"Matrix, Matrix, Matrix":function(e,t,n){var{h:r}=s(e.valueOf(),t.valueOf(),n.valueOf());return{h:o(r),w:o(n)}},"Matrix, Matrix, number":function(e,t,n){if(n<0)throw Error(`w must be a positive number`);var r=c(n),{h:i}=s(e.valueOf(),t.valueOf(),r);return{h:o(i),w:o(r)}}});function s(e,t,o){for(var s=[],c=[],l=0;l{var{classes:t}=e;return function(e,n){var r=t[n&&n.mathjs];return r&&typeof r.fromJSON==`function`?r.fromJSON(n):n}}),XG=Z(`replacer`,[],()=>function(e,t){return typeof t==`number`&&(!Number.isFinite(t)||isNaN(t))?{mathjs:`number`,value:String(t)}:typeof t==`bigint`?{mathjs:`bigint`,value:String(t)}:t}),ZG=`15.2.0`,QG=Z(`true`,[],()=>!0),$G=Z(`false`,[],()=>!1),eK=Z(`null`,[],()=>null),tK=_K(`Infinity`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(1/0):1/0}),nK=_K(`NaN`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(NaN):NaN}),rK=_K(`pi`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?dB(n):zM}),iK=_K(`tau`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?fB(n):BM}),aK=_K(`e`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?lB(n):VM}),oK=_K(`phi`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?uB(n):HM}),sK=_K(`LN2`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(2).ln():Math.LN2}),cK=_K(`LN10`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(10).ln():Math.LN10}),lK=_K(`LOG2E`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(1).div(new n(2).ln()):Math.LOG2E}),uK=_K(`LOG10E`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(1).div(new n(10).ln()):Math.LOG10E}),dK=_K(`SQRT1_2`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(`0.5`).sqrt():Math.SQRT1_2}),fK=_K(`SQRT2`,[`config`,`?BigNumber`],e=>{var{config:t,BigNumber:n}=e;return t.number===`BigNumber`?new n(2).sqrt():Math.SQRT2}),pK=_K(`i`,[`Complex`],e=>{var{Complex:t}=e;return t.I}),mK=Z(`PI`,[`pi`],e=>{var{pi:t}=e;return t}),hK=Z(`E`,[`e`],e=>{var{e:t}=e;return t}),gK=Z(`version`,[],()=>ZG);function _K(e,t,n){return Z(e,t,n,{recreateOnConfigChange:!0})}var vK=hq(`speedOfLight`,`299792458`,`m s^-1`),yK=hq(`gravitationConstant`,`6.67430e-11`,`m^3 kg^-1 s^-2`),bK=hq(`planckConstant`,`6.62607015e-34`,`J s`),xK=hq(`reducedPlanckConstant`,`1.0545718176461565e-34`,`J s`),SK=hq(`magneticConstant`,`1.25663706212e-6`,`N A^-2`),CK=hq(`electricConstant`,`8.8541878128e-12`,`F m^-1`),wK=hq(`vacuumImpedance`,`376.730313667`,`ohm`),TK=hq(`coulomb`,`8.987551792261171e9`,`N m^2 C^-2`),EK=hq(`coulombConstant`,`8.987551792261171e9`,`N m^2 C^-2`),DK=hq(`elementaryCharge`,`1.602176634e-19`,`C`),OK=hq(`bohrMagneton`,`9.2740100783e-24`,`J T^-1`),kK=hq(`conductanceQuantum`,`7.748091729863649e-5`,`S`),AK=hq(`inverseConductanceQuantum`,`12906.403729652257`,`ohm`),jK=hq(`magneticFluxQuantum`,`2.0678338484619295e-15`,`Wb`),MK=hq(`nuclearMagneton`,`5.0507837461e-27`,`J T^-1`),NK=hq(`klitzing`,`25812.807459304513`,`ohm`),PK=hq(`bohrRadius`,`5.29177210903e-11`,`m`),FK=hq(`classicalElectronRadius`,`2.8179403262e-15`,`m`),IK=hq(`electronMass`,`9.1093837015e-31`,`kg`),LK=hq(`fermiCoupling`,`1.1663787e-5`,`GeV^-2`),RK=gq(`fineStructure`,.0072973525693),zK=hq(`hartreeEnergy`,`4.3597447222071e-18`,`J`),BK=hq(`protonMass`,`1.67262192369e-27`,`kg`),VK=hq(`deuteronMass`,`3.3435830926e-27`,`kg`),HK=hq(`neutronMass`,`1.6749271613e-27`,`kg`),UK=hq(`quantumOfCirculation`,`3.6369475516e-4`,`m^2 s^-1`),WK=hq(`rydberg`,`10973731.568160`,`m^-1`),GK=hq(`thomsonCrossSection`,`6.6524587321e-29`,`m^2`),KK=gq(`weakMixingAngle`,.2229),qK=gq(`efimovFactor`,22.7),JK=hq(`atomicMass`,`1.66053906660e-27`,`kg`),YK=hq(`avogadro`,`6.02214076e23`,`mol^-1`),XK=hq(`boltzmann`,`1.380649e-23`,`J K^-1`),ZK=hq(`faraday`,`96485.33212331001`,`C mol^-1`),QK=hq(`firstRadiation`,`3.7417718521927573e-16`,`W m^2`),$K=hq(`loschmidt`,`2.686780111798444e25`,`m^-3`),eq=hq(`gasConstant`,`8.31446261815324`,`J K^-1 mol^-1`),tq=hq(`molarPlanckConstant`,`3.990312712893431e-10`,`J s mol^-1`),nq=hq(`molarVolume`,`0.022413969545014137`,`m^3 mol^-1`),rq=gq(`sackurTetrode`,-1.16487052358),iq=hq(`secondRadiation`,`0.014387768775039337`,`m K`),aq=hq(`stefanBoltzmann`,`5.67037441918443e-8`,`W m^-2 K^-4`),oq=hq(`wienDisplacement`,`2.897771955e-3`,`m K`),sq=hq(`molarMass`,`0.99999999965e-3`,`kg mol^-1`),cq=hq(`molarMassC12`,`11.9999999958e-3`,`kg mol^-1`),lq=hq(`gravity`,`9.80665`,`m s^-2`),uq=hq(`planckLength`,`1.616255e-35`,`m`),dq=hq(`planckMass`,`2.176435e-8`,`kg`),fq=hq(`planckTime`,`5.391245e-44`,`s`),pq=hq(`planckCharge`,`1.87554603778e-18`,`C`),mq=hq(`planckTemperature`,`1.416785e+32`,`K`);function hq(e,t,n){return Z(e,[`config`,`Unit`,`BigNumber`],e=>{var{config:r,Unit:i,BigNumber:a}=e,o=new i(r.number===`BigNumber`?new a(t):parseFloat(t),n);return o.fixPrefix=!0,o})}function gq(e,t){return Z(e,[`config`,`BigNumber`],e=>{var{config:n,BigNumber:r}=e;return n.number===`BigNumber`?new r(t):t})}function _q(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function vq(e){for(var t=1;t{var{typed:t,isInteger:n}=e,r=PP({typed:t,isInteger:n});return t(`mapSlices`,{"...any":function(e){var t=e[1];CE(t)?e[1]=t-1:wE(t)&&(e[1]=t.minus(1));try{return r.apply(null,e)}catch(e){throw XV(e)}}})},vq({isTransformFunction:!0},PP.meta)),bq=Z(`column`,[`typed`,`Index`,`matrix`,`range`],e=>{var{typed:t,Index:n,matrix:r,range:i}=e,a=HI({typed:t,Index:n,matrix:r,range:i});return t(`column`,{"...any":function(e){var t=e.length-1,n=e[t];CE(n)&&(e[t]=n-1);try{return a.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0});function xq(e,t,n){var r=e.filter(function(e){return dD(e)&&!(e.name in t)&&!n.has(e.name)})[0];if(!r)throw Error(`No undefined variable found in inline expression "`+e+`"`);var i=r.name,a=new Map,o=new vE(n,a,new Set([i])),s=e.compile();return function(e){return a.set(i,e),s.evaluate(o)}}var Sq=Z(`transformCallback`,[`typed`],e=>{var{typed:t}=e;return function(e,r){return t.isTypedFunction(e)?n(e,r):Cq(e,e.length,r)};function n(e,r){var i=Object.fromEntries(Object.entries(e.signatures).map(e=>{var[i,a]=e,o=i.split(`,`).length;return t.isTypedFunction(a)?[i,n(a,r)]:[i,Cq(a,o,r)]}));return typeof e.name==`string`?t(e.name,i):t(i)}});function Cq(e,t,n){return t===n?e:t===n+1?function(){for(var t=arguments.length,r=Array(t),i=0;in+1?function(){for(var t=arguments.length,r=Array(t),i=0;ie+1)}var Tq=Z(`filter`,[`typed`],e=>{var{typed:t}=e;function n(e,n,i){var a=YI({typed:t}),o=Sq({typed:t});if(e.length===0)return a();var s=e[0];if(e.length===1)return a(s);var c=e.length-1,l=e[c];return s&&=r(s,i),l&&=dD(l)||nD(l)?r(l,i):xq(l,n,i),a(s,o(l,c))}n.rawArgs=!0;function r(e,t){return e.compile().evaluate(t)}return n},{isTransformFunction:!0}),Eq=Z(`forEach`,[`typed`],e=>{var{typed:t}=e,n=eL({typed:t}),r=Sq({typed:t});function i(e,t,i){if(e.length===0)return n();var o=e[0];if(e.length===1)return n(o);var s=e.length-1,c=e[s];return o&&=a(o,i),c&&=dD(c)||nD(c)?a(c,i):xq(c,t,i),n(o,r(c,s))}i.rawArgs=!0;function a(e,t){return e.compile().evaluate(t)}return i},{isTransformFunction:!0}),Dq=Z(`index`,[`Index`,`getMatrixDataType`],e=>{var{Index:t,getMatrixDataType:n}=e;return function(){for(var e=[],r=0,i=arguments.length;r0?0:2;else if(a&&a.isSet===!0)a=a.map(function(e){return e-1});else if(AE(a)||jE(a))n(a)!==`boolean`&&(a=a.map(function(e){return e-1}));else if(CE(a)||TE(a))a--;else if(wE(a))a=a.toNumber()-1;else if(typeof a!=`string`)throw TypeError(`Dimension must be an Array, Matrix, number, bigint, string, or Range`);e[r]=a}var o=new t;return t.apply(o,e),o}},{isTransformFunction:!0}),Oq=Z(`map`,[`typed`],e=>{var{typed:t}=e,n=lL({typed:t}),r=Sq({typed:t});function i(e,t,i){if(e.length===0)return n();if(e.length===1)return n(e[0]);var a=e.length-1,o=e.slice(0,a),s=e[a];return o=o.map(e=>c(e,i)),s&&=dD(s)||nD(s)?c(s,i):xq(s,t,i),n(...o,r(s,a));function c(e,t){return e.compile().evaluate(t)}}return i.rawArgs=!0,i},{isTransformFunction:!0});function kq(e){return CE(e)?e-1:wE(e)?e.minus(1):e}function Aq(e){return CE(e)||wE(e)}function jq(e){if(e.length===2&&ME(e[0])){e=e.slice();var t=e[1];Aq(t)&&(e[1]=kq(t))}return e}var Mq=Z(`max`,[`typed`,`config`,`numeric`,`larger`,`isNaN`],e=>{var{typed:t,config:n,numeric:r,larger:i,isNaN:a}=e,o=$z({typed:t,config:n,numeric:r,larger:i,isNaN:a});return t(`max`,{"...any":function(e){e=jq(e);try{return o.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Nq=Z(`mean`,[`typed`,`add`,`divide`],e=>{var{typed:t,add:n,divide:r}=e,i=bW({typed:t,add:n,divide:r});return t(`mean`,{"...any":function(e){e=jq(e);try{return i.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Pq=Z(`min`,[`typed`,`config`,`numeric`,`smaller`,`isNaN`],e=>{var{typed:t,config:n,numeric:r,smaller:i,isNaN:a}=e,o=tB({typed:t,config:n,numeric:r,smaller:i,isNaN:a});return t(`min`,{"...any":function(e){e=jq(e);try{return o.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Fq=Z(`range`,[`typed`,`config`,`?matrix`,`?bignumber`,`equal`,`smaller`,`smallerEq`,`larger`,`largerEq`,`add`,`isZero`,`isPositive`],e=>{var{typed:t,config:n,matrix:r,bignumber:i,equal:a,smaller:o,smallerEq:s,larger:c,largerEq:l,add:u,isZero:d,isPositive:f}=e,p=_L({typed:t,config:n,matrix:r,bignumber:i,equal:a,smaller:o,smallerEq:s,larger:c,largerEq:l,add:u,isZero:d,isPositive:f});return t(`range`,{"...any":function(e){return typeof e[e.length-1]!=`boolean`&&e.push(!0),p.apply(null,e)}})},{isTransformFunction:!0}),Iq=Z(`row`,[`typed`,`Index`,`matrix`,`range`],e=>{var{typed:t,Index:n,matrix:r,range:i}=e,a=EL({typed:t,Index:n,matrix:r,range:i});return t(`row`,{"...any":function(e){var t=e.length-1,n=e[t];CE(n)&&(e[t]=n-1);try{return a.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Lq=Z(`subset`,[`typed`,`matrix`,`zeros`,`add`],e=>{var{typed:t,matrix:n,zeros:r,add:i}=e,a=ML({typed:t,matrix:n,zeros:r,add:i});return t(`subset`,{"...any":function(e){try{return a.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Rq=Z(`concat`,[`typed`,`matrix`,`isInteger`],e=>{var{typed:t,matrix:n,isInteger:r}=e,i=BI({typed:t,matrix:n,isInteger:r});return t(`concat`,{"...any":function(e){var t=e.length-1,n=e[t];CE(n)?e[t]=n-1:wE(n)&&(e[t]=n.minus(1));try{return i.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),zq=`diff`,Bq=Z(zq,[`typed`,`matrix`,`subtract`,`number`,`bignumber`],e=>{var{typed:t,matrix:n,subtract:r,number:i,bignumber:a}=e,o=dL({typed:t,matrix:n,subtract:r,number:i,bignumber:a});return t(zq,{"...any":function(e){e=jq(e);try{return o.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Vq=Z(`std`,[`typed`,`map`,`sqrt`,`variance`],e=>{var{typed:t,map:n,sqrt:r,variance:i}=e,a=jW({typed:t,map:n,sqrt:r,variance:i});return t(`std`,{"...any":function(e){e=jq(e);try{return a.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Hq=`sum`,Uq=Z(Hq,[`typed`,`config`,`add`,`numeric`],e=>{var{typed:t,config:n,add:r,numeric:i}=e,a=gW({typed:t,config:n,add:r,numeric:i});return t(Hq,{"...any":function(e){e=jq(e);try{return a.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Wq=Z(`quantileSeq`,[`typed`,`bignumber`,`add`,`subtract`,`divide`,`multiply`,`partitionSelect`,`compare`,`isInteger`,`smaller`,`smallerEq`,`larger`,`mapSlices`],e=>{var{typed:t,bignumber:n,add:r,subtract:i,divide:a,multiply:o,partitionSelect:s,compare:c,isInteger:l,smaller:u,smallerEq:d,larger:f,mapSlices:p}=e,m=kW({typed:t,bignumber:n,add:r,subtract:i,divide:a,multiply:o,partitionSelect:s,compare:c,isInteger:l,smaller:u,smallerEq:d,larger:f,mapSlices:p});return t(`quantileSeq`,{"Array | Matrix, number | BigNumber":m,"Array | Matrix, number | BigNumber, number":(e,t,n)=>m(e,t,h(n)),"Array | Matrix, number | BigNumber, boolean":m,"Array | Matrix, number | BigNumber, boolean, number":(e,t,n,r)=>m(e,t,n,h(r)),"Array | Matrix, Array | Matrix":m,"Array | Matrix, Array | Matrix, number":(e,t,n)=>m(e,t,h(n)),"Array | Matrix, Array | Matrix, boolean":m,"Array | Matrix, Array | Matrix, boolean, number":(e,t,n,r)=>m(e,t,n,h(r))});function h(e){return jq([[],e])[1]}},{isTransformFunction:!0}),Gq=`cumsum`,Kq=Z(Gq,[`typed`,`add`,`unaryPlus`],e=>{var{typed:t,add:n,unaryPlus:r}=e,i=vW({typed:t,add:n,unaryPlus:r});return t(Gq,{"...any":function(e){if(e.length===2&&ME(e[0])){var t=e[1];CE(t)?e[1]=t-1:wE(t)&&(e[1]=t.minus(1))}try{return i.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),qq=`variance`,Jq=Z(qq,[`typed`,`add`,`subtract`,`multiply`,`divide`,`mapSlices`,`isNaN`],e=>{var{typed:t,add:n,subtract:r,multiply:i,divide:a,mapSlices:o,isNaN:s}=e,c=DW({typed:t,add:n,subtract:r,multiply:i,divide:a,mapSlices:o,isNaN:s});return t(qq,{"...any":function(e){e=jq(e);try{return c.apply(null,e)}catch(e){throw XV(e)}}})},{isTransformFunction:!0}),Yq=`print`,Xq=Z(Yq,[`typed`,`matrix`,`zeros`,`add`],e=>{var{typed:t,matrix:n,zeros:r,add:i}=e,a=CR({typed:t,matrix:n,zeros:r,add:i});return t(Yq,{"string, Object | Array":function(e,t){return a(o(e),t)},"string, Object | Array, number | Object":function(e,t,n){return a(o(e),t,n)}});function o(e){return e.replace(xR,e=>`$`+e.slice(1).split(`.`).map(function(e){return!isNaN(e)&&e.length>0?parseInt(e)-1:e}).join(`.`))}},{isTransformFunction:!0}),Zq=Z(`and`,[`typed`,`matrix`,`zeros`,`add`,`equalScalar`,`not`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,zeros:i,not:a,concat:o}=e,s=hz({typed:t,matrix:n,equalScalar:r,zeros:i,not:a,concat:o});function c(e,t,n){var r=e[0].compile().evaluate(n);return!ME(r)&&!s(r,!0)?!1:s(r,e[1].compile().evaluate(n))}return c.rawArgs=!0,c},{isTransformFunction:!0}),Qq=Z(`or`,[`typed`,`matrix`,`equalScalar`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,DenseMatrix:i,concat:a}=e,o=II({typed:t,matrix:n,equalScalar:r,DenseMatrix:i,concat:a});function s(e,t,n){var r=e[0].compile().evaluate(n);return!ME(r)&&o(r,!1)?!0:o(r,e[1].compile().evaluate(n))}return s.rawArgs=!0,s},{isTransformFunction:!0}),$q=Z(`nullish`,[`typed`,`matrix`,`size`,`flatten`,`deepEqual`],e=>{var{typed:t,matrix:n,size:r,flatten:i,deepEqual:a}=e,o=PI({typed:t,matrix:n,size:r,flatten:i,deepEqual:a});function s(e,t,n){var r=e[0].compile().evaluate(n);return!ME(r)&&r!=null&&r!==void 0?r:o(r,e[1].compile().evaluate(n))}return s.rawArgs=!0,s},{isTransformFunction:!0}),eJ=Z(`bitAnd`,[`typed`,`matrix`,`zeros`,`add`,`equalScalar`,`not`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,zeros:i,not:a,concat:o}=e,s=hI({typed:t,matrix:n,equalScalar:r,zeros:i,not:a,concat:o});function c(e,t,n){var r=e[0].compile().evaluate(n);if(!ME(r)){if(isNaN(r))return NaN;if(r===0||r===!1)return 0}return s(r,e[1].compile().evaluate(n))}return c.rawArgs=!0,c},{isTransformFunction:!0}),tJ=Z(`bitOr`,[`typed`,`matrix`,`equalScalar`,`DenseMatrix`,`concat`],e=>{var{typed:t,matrix:n,equalScalar:r,DenseMatrix:i,concat:a}=e,o=yI({typed:t,matrix:n,equalScalar:r,DenseMatrix:i,concat:a});function s(e,t,n){var r=e[0].compile().evaluate(n);if(!ME(r)){if(isNaN(r))return NaN;if(r===-1)return-1;if(r===!0)return 1}return o(r,e[1].compile().evaluate(n))}return s.rawArgs=!0,s},{isTransformFunction:!0}),nJ=`num`,rJ=Z(nJ,[`typed`,`fraction`],e=>{var{typed:t,fraction:n}=e;return t(nJ,{Fraction:e=>e.s*e.n,BigNumber:e=>{var t=n(e);return t.s*t.n},"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),iJ=`den`,aJ=Z(iJ,[`typed`,`fraction`],e=>{var{typed:t,fraction:n}=e;return t(iJ,{Fraction:e=>e.d,BigNumber:e=>n(e).d,"Array | Matrix":t.referToSelf(e=>t=>Jj(t,e))})}),oJ=s({createAbs:()=>MP,createAccessorNode:()=>$V,createAcos:()=>wB,createAcosh:()=>EB,createAcot:()=>OB,createAcoth:()=>AB,createAcsc:()=>MB,createAcsch:()=>PB,createAdd:()=>RV,createAddScalar:()=>RP,createAnd:()=>hz,createAndTransform:()=>Zq,createArg:()=>wI,createArrayNode:()=>tH,createAsec:()=>IB,createAsech:()=>RB,createAsin:()=>BB,createAsinh:()=>VB,createAssignmentNode:()=>uH,createAtan:()=>HB,createAtan2:()=>WB,createAtanh:()=>KB,createAtomicMass:()=>JK,createAvogadro:()=>YK,createBellNumbers:()=>SG,createBernoulli:()=>FW,createBigNumberClass:()=>rA,createBigint:()=>lP,createBignumber:()=>mP,createBin:()=>gR,createBitAnd:()=>hI,createBitAndTransform:()=>eJ,createBitNot:()=>_I,createBitOr:()=>yI,createBitOrTransform:()=>tJ,createBitXor:()=>SI,createBlockNode:()=>fH,createBohrMagneton:()=>OK,createBohrRadius:()=>PK,createBoltzmann:()=>XK,createBoolean:()=>pP,createCatalan:()=>wG,createCbrt:()=>HP,createCeil:()=>XP,createChain:()=>GU,createChainClass:()=>OU,createClassicalElectronRadius:()=>FK,createClone:()=>Wj,createColumn:()=>HI,createColumnTransform:()=>bq,createCombinations:()=>RW,createCombinationsWithRep:()=>VW,createCompare:()=>_z,createCompareNatural:()=>xz,createCompareText:()=>Tz,createCompile:()=>KH,createComplex:()=>hP,createComplexClass:()=>fA,createComposition:()=>EG,createConcat:()=>BI,createConcatTransform:()=>Rq,createConditionalNode:()=>mH,createConductanceQuantum:()=>kK,createConj:()=>EI,createConstantNode:()=>wH,createCorr:()=>NW,createCos:()=>YB,createCosh:()=>ZB,createCot:()=>$B,createCoth:()=>tV,createCoulomb:()=>TK,createCoulombConstant:()=>EK,createCount:()=>WI,createCreateUnit:()=>SB,createCross:()=>KI,createCsc:()=>rV,createCsch:()=>aV,createCtranspose:()=>BL,createCube:()=>QP,createCumSum:()=>vW,createCumSumTransform:()=>Kq,createDeepEqual:()=>Wz,createDen:()=>aJ,createDenseMatrixClass:()=>Hj,createDerivative:()=>HG,createDet:()=>qU,createDeuteronMass:()=>VK,createDiag:()=>JI,createDiff:()=>dL,createDiffTransform:()=>Bq,createDistance:()=>pW,createDivide:()=>dW,createDivideScalar:()=>NR,createDot:()=>WV,createDotDivide:()=>XR,createDotMultiply:()=>aI,createDotPow:()=>JR,createE:()=>aK,createEfimovFactor:()=>qK,createEigs:()=>eW,createElectricConstant:()=>CK,createElectronMass:()=>IK,createElementaryCharge:()=>DK,createEqual:()=>Dz,createEqualScalar:()=>nP,createEqualText:()=>Az,createErf:()=>eR,createEvaluate:()=>JH,createExp:()=>eF,createExpm:()=>nW,createExpm1:()=>nF,createFactorial:()=>JW,createFalse:()=>$G,createFaraday:()=>ZK,createFermiCoupling:()=>LK,createFft:()=>WL,createFibonacciHeapClass:()=>aB,createFilter:()=>YI,createFilterTransform:()=>Tq,createFineStructure:()=>RK,createFirstRadiation:()=>QK,createFix:()=>oF,createFlatten:()=>QI,createFloor:()=>dF,createForEach:()=>eL,createForEachTransform:()=>Eq,createFormat:()=>mR,createFraction:()=>gP,createFractionClass:()=>FA,createFreqz:()=>JG,createFunctionAssignmentNode:()=>EH,createFunctionNode:()=>HH,createGamma:()=>WW,createGasConstant:()=>eq,createGcd:()=>AF,createGetMatrixDataType:()=>rL,createGravitationConstant:()=>yK,createGravity:()=>lq,createHartreeEnergy:()=>zK,createHasNumericValue:()=>BN,createHelp:()=>UU,createHelpClass:()=>DU,createHex:()=>bR,createHypot:()=>BV,createI:()=>pK,createIdentity:()=>aL,createIfft:()=>KL,createIm:()=>OI,createImmutableDenseMatrixClass:()=>nB,createIndex:()=>qV,createIndexClass:()=>rB,createIndexNode:()=>OH,createIndexTransform:()=>Dq,createInfinity:()=>tK,createIntersect:()=>mW,createInv:()=>YU,createInverseConductanceQuantum:()=>AK,createInvmod:()=>nI,createIsBounded:()=>JN,createIsFinite:()=>XN,createIsInteger:()=>$j,createIsNaN:()=>KN,createIsNegative:()=>IN,createIsNumeric:()=>RN,createIsPositive:()=>HN,createIsPrime:()=>AR,createIsZero:()=>WN,createKldivergence:()=>XW,createKlitzing:()=>NK,createKron:()=>sL,createLN10:()=>cK,createLN2:()=>sK,createLOG10E:()=>uK,createLOG2E:()=>lK,createLarger:()=>Rz,createLargerEq:()=>Vz,createLcm:()=>NF,createLeafCount:()=>OG,createLeftShift:()=>lz,createLgamma:()=>KW,createLog:()=>HR,createLog10:()=>RF,createLog1p:()=>WR,createLog2:()=>BF,createLoschmidt:()=>$K,createLsolve:()=>$R,createLsolveAll:()=>rz,createLup:()=>eU,createLusolve:()=>wU,createLyap:()=>uW,createMad:()=>wW,createMagneticConstant:()=>SK,createMagneticFluxQuantum:()=>jK,createMap:()=>lL,createMapSlices:()=>PP,createMapSlicesTransform:()=>yq,createMapTransform:()=>Oq,createMatrix:()=>vP,createMatrixClass:()=>LA,createMatrixFromColumns:()=>wP,createMatrixFromFunction:()=>bP,createMatrixFromRows:()=>SP,createMax:()=>$z,createMaxTransform:()=>Mq,createMean:()=>bW,createMeanTransform:()=>Nq,createMedian:()=>SW,createMin:()=>tB,createMinTransform:()=>Pq,createMod:()=>bF,createMode:()=>lR,createMolarMass:()=>sq,createMolarMassC12:()=>cq,createMolarPlanckConstant:()=>tq,createMolarVolume:()=>nq,createMultinomial:()=>QW,createMultiply:()=>UF,createMultiplyScalar:()=>VF,createNaN:()=>nK,createNeutronMass:()=>HK,createNode:()=>YV,createNorm:()=>HV,createNot:()=>MI,createNthRoot:()=>GF,createNthRoots:()=>KR,createNuclearMagneton:()=>MK,createNull:()=>eK,createNullish:()=>PI,createNullishTransform:()=>$q,createNum:()=>rJ,createNumber:()=>cP,createNumeric:()=>jR,createObjectNode:()=>AH,createOct:()=>vR,createOnes:()=>fL,createOperatorNode:()=>NH,createOr:()=>II,createOrTransform:()=>Qq,createParenthesisNode:()=>FH,createParse:()=>WH,createParser:()=>QH,createParserClass:()=>YH,createPartitionSelect:()=>Yz,createPermutations:()=>eG,createPhi:()=>oK,createPi:()=>rK,createPickRandom:()=>pG,createPinv:()=>ZU,createPlanckCharge:()=>pq,createPlanckConstant:()=>bK,createPlanckLength:()=>uq,createPlanckMass:()=>dq,createPlanckTemperature:()=>mq,createPlanckTime:()=>fq,createPolynomialRoot:()=>EU,createPow:()=>FR,createPrint:()=>CR,createPrintTransform:()=>Xq,createProd:()=>fR,createProtonMass:()=>BK,createQr:()=>nU,createQuantileSeq:()=>kW,createQuantileSeqTransform:()=>Wq,createQuantumOfCirculation:()=>UK,createRandom:()=>gG,createRandomInt:()=>vG,createRange:()=>_L,createRangeClass:()=>IA,createRangeNode:()=>LH,createRangeTransform:()=>Fq,createRationalize:()=>WG,createRe:()=>AI,createReducedPlanckConstant:()=>xK,createRelationalNode:()=>zH,createReplacer:()=>XG,createReshape:()=>yL,createResize:()=>bL,createResolve:()=>RG,createResultSet:()=>gO,createReviver:()=>YG,createRightArithShift:()=>dz,createRightLogShift:()=>pz,createRotate:()=>SL,createRotationMatrix:()=>wL,createRound:()=>RR,createRow:()=>EL,createRowTransform:()=>Iq,createRydberg:()=>WK,createSQRT1_2:()=>dK,createSQRT2:()=>fK,createSackurTetrode:()=>rq,createSchur:()=>cW,createSec:()=>sV,createSech:()=>lV,createSecondRadiation:()=>iq,createSetCartesian:()=>vV,createSetDifference:()=>bV,createSetDistinct:()=>SV,createSetIntersect:()=>wV,createSetIsSubset:()=>EV,createSetMultiplicity:()=>OV,createSetPowerset:()=>AV,createSetSize:()=>MV,createSetSymDifference:()=>PV,createSetUnion:()=>IV,createSign:()=>qF,createSimplify:()=>PG,createSimplifyConstant:()=>FG,createSimplifyCore:()=>LG,createSin:()=>dV,createSinh:()=>pV,createSize:()=>OL,createSlu:()=>xU,createSmaller:()=>Mz,createSmallerEq:()=>Fz,createSolveODE:()=>$L,createSort:()=>Zz,createSpaClass:()=>oB,createSparse:()=>bB,createSparseMatrixClass:()=>rP,createSpeedOfLight:()=>vK,createSplitUnit:()=>EP,createSqrt:()=>JF,createSqrtm:()=>iW,createSquare:()=>XF,createSqueeze:()=>AL,createStd:()=>jW,createStdTransform:()=>Vq,createStefanBoltzmann:()=>aq,createStirlingS2:()=>bG,createString:()=>dP,createSubset:()=>ML,createSubsetTransform:()=>Lq,createSubtract:()=>QF,createSubtractScalar:()=>BP,createSum:()=>gW,createSumTransform:()=>Uq,createSylvester:()=>oW,createSymbolNode:()=>BH,createSymbolicEqual:()=>BG,createTan:()=>hV,createTanh:()=>gV,createTau:()=>iK,createThomsonCrossSection:()=>GK,createTo:()=>ER,createToBest:()=>OR,createTrace:()=>GV,createTranspose:()=>RL,createTrue:()=>QG,createTypeOf:()=>QN,createTyped:()=>dO,createUnaryMinus:()=>OP,createUnaryPlus:()=>AP,createUnequal:()=>Kz,createUnitClass:()=>gB,createUnitFunction:()=>vB,createUppercaseE:()=>hK,createUppercasePi:()=>mK,createUsolve:()=>tz,createUsolveAll:()=>az,createVacuumImpedance:()=>wK,createVariance:()=>DW,createVarianceTransform:()=>Jq,createVersion:()=>gK,createWeakMixingAngle:()=>KK,createWienDisplacement:()=>oq,createXgcd:()=>eI,createXor:()=>RI,createZeros:()=>HL,createZeta:()=>sR,createZpk2tf:()=>KG}),sJ=l(o(((e,t)=>{function n(){}n.prototype={on:function(e,t,n){var r=this.e||={};return(r[e]||(r[e]=[])).push({fn:t,ctx:n}),this},once:function(e,t,n){var r=this;function i(){r.off(e,i),t.apply(n,arguments)}return i._=t,this.on(e,i,n)},emit:function(e){for(var t=[].slice.call(arguments,1),n=((this.e||={})[e]||[]).slice(),r=0,i=n.length;rr(e,t));else if(UE(n)||d(n))for(var a in n)SD(n,a)&&r(e,n[a],a);else if(AD(n)||i!==void 0){var o=AD(n)?h(n)?n.fn+`.transform`:n.fn:i;if(SD(e,o)&&e[o]!==n&&!t.silent)throw Error(`Cannot import "`+o+`" twice`);e[o]=n}else if(!t.silent)throw TypeError(`Factory, Object, or Array expected`)}var i={};for(var o in r(i,e),i)if(SD(i,o)){var s=i[o];if(AD(s))l(s,t);else if(u(s))a(o,s,t);else if(!t.silent)throw TypeError(`Factory, Object, or Array expected`)}}function a(t,i,a){if(a.wrap&&typeof i==`function`&&(i=c(i)),f(i)&&(i=e(t,{[i.signature]:i})),e.isTypedFunction(n[t])&&e.isTypedFunction(i)){i=a.override?e(t,i.signatures):e(n[t],i),n[t]=i,delete r[t],o(t,i),n.emit(`import`,t,function(){return i});return}var s=n[t]!==void 0,l=n.Unit?.isValuelessUnit(t);if(!s&&!l||a.override){n[t]=i,delete r[t],o(t,i),n.emit(`import`,t,function(){return i});return}if(!a.silent)throw Error(`Cannot import "`+t+`": already exists`)}function o(e,t){t&&typeof t.transform==`function`?(n.expression.transform[e]=t.transform,p(e)&&(n.expression.mathWithTransform[e]=t.transform)):(delete n.expression.transform[e],p(e)&&(n.expression.mathWithTransform[e]=t))}function s(e){delete n.expression.transform[e],p(e)?n.expression.mathWithTransform[e]=n[e]:delete n.expression.mathWithTransform[e]}function c(e){var t=function(){for(var t=[],r=0,i=arguments.length;r2&&arguments[2]!==void 0?arguments[2]:t.fn;if(a.includes(`.`))throw Error(`Factory name should not contain a nested path. Name: `+JSON.stringify(a));var o=h(t)?n.expression.transform:n,c=a in n.expression.transform,l=SD(o,a)?o[a]:void 0,u=function(){var r={};t.dependencies.map(ND).forEach(e=>{if(e.includes(`.`))throw Error(`Factory dependency should not contain a nested path. Name: `+JSON.stringify(e));e===`math`?r.math=n:e===`mathWithTransform`?r.mathWithTransform=n.expression.mathWithTransform:e===`classes`?r.classes=n:r[e]=n[e]});var o=t(r);if(o&&typeof o.transform==`function`)throw Error(`Transforms cannot be attached to factory functions. Please create a separate function for it with export const path = "expression.transform"`);if(l===void 0||i.override)return o;if(e.isTypedFunction(l)&&e.isTypedFunction(o))return e(l,o);if(i.silent)return l;throw Error(`Cannot import "`+a+`": already exists`)},d=t.meta?.formerly??``,f=h(t)||m(t),p=n.expression.mathWithTransform;!t.meta||t.meta.lazy!==!1?(xD(o,a,u),d&&xD(o,d,u),l&&c?(s(a),d&&s(d)):f&&(xD(p,a,()=>o[a]),d&&xD(p,d,()=>o[a]))):(o[a]=u(),d&&(o[d]=o[a]),l&&c?(s(a),d&&s(d)):f&&(xD(p,a,()=>o[a]),d&&xD(p,d,()=>o[a]))),r[a]=t,n.emit(`import`,a,u)}function u(e){return typeof e==`function`||typeof e==`number`||typeof e==`string`||typeof e==`boolean`||e===null||OE(e)||EE(e)||wE(e)||DE(e)||jE(e)||Array.isArray(e)}function d(e){return typeof e==`object`&&e[Symbol.toStringTag]===`Module`}function f(e){return typeof e==`function`&&typeof e.signature==`string`}function p(e){return!SD(g,e)}function m(e){return!e.fn.includes(`.`)&&!SD(g,e.fn)&&(!e.meta||!e.meta.isClass)}function h(e){return e!==void 0&&e.meta!==void 0&&e.meta.isTransformFunction===!0||!1}var g={expression:!0,type:!0,docs:!0,error:!0,json:!0,chain:!0};return i}function uJ(e,t){var n=oE({},sE,t);if(typeof Object.create!=`function`)throw Error(`ES5 not supported by this JavaScript engine. Please load the es5-shim and es5-sham library for compatibility.`);var r=cJ({isNumber:CE,isComplex:EE,isBigNumber:wE,isBigInt:TE,isFraction:DE,isUnit:OE,isString:kE,isArray:AE,isMatrix:jE,isCollection:ME,isDenseMatrix:NE,isSparseMatrix:PE,isRange:FE,isIndex:IE,isBoolean:LE,isResultSet:RE,isHelp:zE,isFunction:BE,isDate:VE,isRegExp:HE,isObject:UE,isMap:WE,isPartitionedMap:GE,isObjectWrappingMap:KE,isNull:qE,isUndefined:JE,isAccessorNode:YE,isArrayNode:XE,isAssignmentNode:ZE,isBlockNode:QE,isConditionalNode:$E,isConstantNode:eD,isFunctionAssignmentNode:nD,isFunctionNode:rD,isIndexNode:iD,isNode:aD,isObjectNode:oD,isOperatorNode:sD,isParenthesisNode:cD,isRangeNode:lD,isRelationalNode:uD,isSymbolNode:dD,isChain:fD});r.config=DD(n,r.emit),r.expression={transform:{},mathWithTransform:{config:r.config}};var i=[],a=[];function o(e){if(AD(e))return e(r);var t=e[Object.keys(e)[0]];if(AD(t))return t(r);if(!CD(e))throw console.warn("Factory object with properties `type`, `name`, and `factory` expected",e),Error("Factory object with properties `type`, `name`, and `factory` expected");var s=i.indexOf(e),c;return s===-1?(c=e.math===!0?e.factory(r.type,n,o,r.typed,r):e.factory(r.type,n,o,r.typed),i.push(e),a.push(c)):c=a[s],c}var s={};function c(){for(var e=arguments.length,t=Array(e),n=0;n{Object.values(s).forEach(e=>{e&&e.meta&&e.meta.recreateOnConfigChange&&l(e,{override:!0})})}),r.create=uJ.bind(null,e),r.factory=Z,r.import(Object.values(yD(e))),r.ArgumentsError=wF,r.DimensionError=$A,r.IndexError=ej,r}function dJ(){return uJ(oJ,{})}var fJ=function(e){return e.DEV=`dev`,e.CANARY=`canary`,e.RELEASE=`release`,e}({}),pJ=class{api;internal;file;inputFieldParser;viewFieldParser;jsViewFieldParser;buttonParser;bindTargetParser;syntaxHighlighting;inputFieldFactory;viewFieldFactory;buttonActionRunner;buttonManager;metadataManager;mountableManager;math;build;constructor(){this.inputFieldParser=new RT(this),this.viewFieldParser=new JT(this),this.jsViewFieldParser=new zT(this),this.buttonParser=new cT(this),this.bindTargetParser=new z_(this),this.syntaxHighlighting=new Mt(this),this.inputFieldFactory=new $g(this),this.viewFieldFactory=new f_(this),this.buttonActionRunner=new Sn(this),this.buttonManager=new Tn(this),this.metadataManager=new F_,this.mountableManager=new I_,this.math=dJ(),this.build=`1.4.8`.includes(`canary`)?fJ.CANARY:fJ.RELEASE}setComponents(e){Object.assign(this,e)}setSettings(e){this.updateInternalSettings(e),this.saveSettings(e)}updateSettings(e){let t=this.getSettings();e(t),this.setSettings(t)}loadTemplates(){let e=this.getSettings(),t=this.inputFieldParser.parseTemplates(e.inputFieldTemplates);t.hasErrors()&&console.warn(`meta-bind | failed to parse input field templates`,t);let n=this.buttonManager.setButtonTemplates(e.buttonTemplates);n.hasErrors()&&console.warn(`meta-bind | failed to parse button templates`,n)}updateInternalSettings(e){uh.dateFormat=e.preferredDateFormat,tE(e.firstWeekday),this.loadTemplates()}destroy(){this.mountableManager.unload()}},mJ=class{id;manager;cache;constructor(e,t){this.id=e,this.manager=t,this.cache=new Map}validateStoragePath(e,t,n,r){return r.validateStoragePathAsFilePath(e,n)}resolveBindTargetScope(e,t,n){return e}getOrCreateCacheItem(e){let t=this.getCacheItemForStoragePath(e);return t===void 0&&(t=this.getDefaultCacheItem(e),this.cache.set(e,t)),t}subscribe(e){if(e.bindTarget===void 0)throw new L({errorLevel:P.CRITICAL,effect:`can not subscribe`,cause:`subscription bind target undefined`});let t=this.getOrCreateCacheItem(e.bindTarget.storagePath);return t.subscriptions.push(e),t}unsubscribe(e){if(e.bindTarget===void 0)throw new L({errorLevel:P.CRITICAL,effect:`can not unsubscribe`,cause:`subscription bind target undefined`});let t=this.cache.get(e.bindTarget.storagePath);if(t===void 0)throw new L({errorLevel:P.CRITICAL,effect:`can not unsubscribe`,cause:`cache item does not exist`});return t.subscriptions=t.subscriptions.filter(t=>t.uuid!==e.uuid),t}getCacheItemForStoragePath(e){return this.cache.get(e)}onCycle(e){}getCacheItems(){return Array.from(this.cache.values())}shouldDelete(e){return!0}deleteCache(e){this.cache.delete(e.storagePath)}writeCache(e,t){let n=this.getOrCreateCacheItem(t.storagePath);return j_.setAndCreate(n.data,t.storageProp,e),n}writeEntireCache(e,t){t.data=e}readCache(e){if(e.storageType!==this.id)throw new L({errorLevel:P.ERROR,effect:`can not read cache`,cause:`Source "${e.storageType}" does not match`});let t=this.getCacheItemForStoragePath(e.storagePath);return t===void 0?j_.tryGet(this.readExternal(e.storagePath),e.storageProp):this.readCacheItem(t,e.storageProp)}readCacheItem(e,t){return j_.tryGet(e.data,t)}readEntireCacheItem(e){return e.data}usesStoragePath(){return!0}},hJ=class extends mJ{readExternal(e){return{}}getDefaultCacheItem(e){return{data:{},storagePath:e,...this.manager.constructDefaultCacheItem()}}syncExternal(e){return Promise.resolve()}},gJ=class{id;manager;cache;constructor(e,t){this.id=e,this.manager=t,this.cache={data:{},...this.manager.constructDefaultCacheItem()}}getOrCreateCacheItem(e){return this.cache}validateStoragePath(e,t,n,r){if(t)throw new le(P.ERROR,`Bind target validator`,`Failed to parse bind target. Bind target storage type 'global_memory' does not support a storage path.`,n,e.position);return``}deleteCache(e){}getCacheItemForStoragePath(e){return this.cache}getCacheItems(){return[this.cache]}onCycle(e){}readCache(e){return this.readCacheItem(this.cache,e.storageProp)}readCacheItem(e,t){return j_.tryGet(e.data,t)}shouldDelete(e){return!1}subscribe(e){return this.cache.subscriptions.push(e),this.cache}syncExternal(e){return Promise.resolve()}unsubscribe(e){return this.cache.subscriptions=this.cache.subscriptions.filter(t=>t.uuid!==e.uuid),this.cache}writeCache(e,t){return j_.setAndCreate(this.cache.data,t.storageProp,e),this.cache}writeEntireCache(e,t){t.data=e}readEntireCacheItem(e){return e.data}usesStoragePath(){return!1}},_J=class{id;manager;constructor(e,t){this.id=e,this.manager=t}getOrCreateCacheItem(e){throw new L({errorLevel:P.CRITICAL,effect:`action not permitted`,cause:`source 'scope' should have no cache items or subscriptions`})}validateStoragePath(e,t,n,r){if(t)throw new le(P.ERROR,`Bind Target Validator`,`Failed to parse bind target. Bind target storage type 'scope' does not support a storage path.`,n,e.position);return``}deleteCache(e){}getCacheItemForStoragePath(e){}getCacheItems(){return[]}onCycle(e){}readCache(e){}readCacheItem(e,t){}shouldDelete(e){return!0}subscribe(e){throw new L({errorLevel:P.CRITICAL,effect:`action not permitted`,cause:`source 'scope' should have no cache items or subscriptions`})}syncExternal(e){return Promise.resolve()}unsubscribe(e){throw new L({errorLevel:P.CRITICAL,effect:`action not permitted`,cause:`source 'scope' should have no cache items or subscriptions`})}writeCache(e,t){throw new L({errorLevel:P.CRITICAL,effect:`action not permitted`,cause:`source 'scope' should have no cache items or subscriptions`})}writeEntireCache(e,t){}readEntireCacheItem(e){throw new L({errorLevel:P.CRITICAL,effect:`action not permitted`,cause:`source 'scope' should have no cache items or subscriptions`})}usesStoragePath(){return!1}};function vJ(e){var t=e.statementIndent,n=e.jsonld,r=e.json||n,i=e.typescript,a=e.wordCharacters||/[\w$\xa1-\uffff]/,o=function(){function e(e){return{type:e,style:`keyword`}}var t=e(`keyword a`),n=e(`keyword b`),r=e(`keyword c`),i=e(`keyword d`),a=e(`operator`),o={type:`atom`,style:`atom`};return{if:e(`if`),while:t,with:t,else:n,do:n,try:n,finally:n,return:i,break:i,continue:i,new:e(`new`),delete:r,void:r,throw:r,debugger:e(`debugger`),var:e(`var`),const:e(`var`),let:e(`var`),function:e(`function`),catch:e(`catch`),for:e(`for`),switch:e(`switch`),case:e(`case`),default:e(`default`),in:a,typeof:a,instanceof:a,true:o,false:o,null:o,undefined:o,NaN:o,Infinity:o,this:e(`this`),class:e(`class`),super:e(`atom`),yield:r,export:e(`export`),import:e(`import`),extends:r,await:r}}(),s=/[+\-*&%=<>!?|~^@]/,c=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function l(e){for(var t=!1,n,r=!1;(n=e.next())!=null;){if(!t){if(n==`/`&&!r)return;n==`[`?r=!0:r&&n==`]`&&(r=!1)}t=!t&&n==`\\`}}var u,d;function f(e,t,n){return u=e,d=n,t}function p(e,t){var n=e.next();if(n==`"`||n==`'`)return t.tokenize=m(n),t.tokenize(e,t);if(n==`.`&&e.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return f(`number`,`number`);if(n==`.`&&e.match(`..`))return f(`spread`,`meta`);if(/[\[\]{}\(\),;\:\.]/.test(n))return f(n);if(n==`=`&&e.eat(`>`))return f(`=>`,`operator`);if(n==`0`&&e.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return f(`number`,`number`);if(/\d/.test(n))return e.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),f(`number`,`number`);if(n==`/`)return e.eat(`*`)?(t.tokenize=h,h(e,t)):e.eat(`/`)?(e.skipToEnd(),f(`comment`,`comment`)):mt(e,t,1)?(l(e),e.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),f(`regexp`,`string.special`)):(e.eat(`=`),f(`operator`,`operator`,e.current()));if(n=="`")return t.tokenize=g,g(e,t);if(n==`#`&&e.peek()==`!`)return e.skipToEnd(),f(`meta`,`meta`);if(n==`#`&&e.eatWhile(a))return f(`variable`,`property`);if(n==`<`&&e.match(`!--`)||n==`-`&&e.match(`->`)&&!/\S/.test(e.string.slice(0,e.start)))return e.skipToEnd(),f(`comment`,`comment`);if(s.test(n))return(n!=`>`||!t.lexical||t.lexical.type!=`>`)&&(e.eat(`=`)?(n==`!`||n==`=`)&&e.eat(`=`):/[<>*+\-|&?]/.test(n)&&(e.eat(n),n==`>`&&e.eat(n))),n==`?`&&e.eat(`.`)?f(`.`):f(`operator`,`operator`,e.current());if(a.test(n)){e.eatWhile(a);var r=e.current();if(t.lastType!=`.`){if(o.propertyIsEnumerable(r)){var i=o[r];return f(i.type,i.style,r)}if(r==`async`&&e.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return f(`async`,`keyword`,r)}return f(`variable`,`variable`,r)}}function m(e){return function(t,r){var i=!1,a;if(n&&t.peek()==`@`&&t.match(c))return r.tokenize=p,f(`jsonld-keyword`,`meta`);for(;(a=t.next())!=null&&!(a==e&&!i);)i=!i&&a==`\\`;return i||(r.tokenize=p),f(`string`,`string`)}}function h(e,t){for(var n=!1,r;r=e.next();){if(r==`/`&&n){t.tokenize=p;break}n=r==`*`}return f(`comment`,`comment`)}function g(e,t){for(var n=!1,r;(r=e.next())!=null;){if(!n&&(r=="`"||r==`$`&&e.eat(`{`))){t.tokenize=p;break}n=!n&&r==`\\`}return f(`quasi`,`string.special`,e.current())}var _=`([{}])`;function v(e,t){t.fatArrowAt&&=null;var n=e.string.indexOf(`=>`,e.start);if(!(n<0)){if(i){var r=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(e.string.slice(e.start,n));r&&(n=r.index)}for(var o=0,s=!1,c=n-1;c>=0;--c){var l=e.string.charAt(c),u=_.indexOf(l);if(u>=0&&u<3){if(!o){++c;break}if(--o==0){l==`(`&&(s=!0);break}}else if(u>=3&&u<6)++o;else if(a.test(l))s=!0;else if(/["'\/`]/.test(l))for(;;--c){if(c==0)return;if(e.string.charAt(c-1)==l&&e.string.charAt(c-2)!=`\\`){c--;break}}else if(s&&!o){++c;break}}s&&!o&&(t.fatArrowAt=c)}}var y={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function b(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.prev=i,this.info=a,r!=null&&(this.align=r)}function x(e,t){for(var n=e.localVars;n;n=n.next)if(n.name==t)return!0;for(var r=e.context;r;r=r.prev)for(var n=r.vars;n;n=n.next)if(n.name==t)return!0}function S(e,t,n,i,a){var o=e.cc;for(C.state=e,C.stream=a,C.marked=null,C.cc=o,C.style=t,e.lexical.hasOwnProperty(`align`)||(e.lexical.align=!0);;)if((o.length?o.pop():r?z:R)(n,i)){for(;o.length&&o[o.length-1].lex;)o.pop()();return C.marked?C.marked:n==`variable`&&x(e,i)?`variableName.local`:t}}var C={state:null,column:null,marked:null,cc:null};function w(){for(var e=arguments.length-1;e>=0;e--)C.cc.push(arguments[e])}function T(){return w.apply(null,arguments),!0}function E(e,t){for(var n=t;n;n=n.next)if(n.name==e)return!0;return!1}function D(t){var n=C.state;if(C.marked=`def`,n.context){if(n.lexical.info==`var`&&n.context&&n.context.block){var r=O(t,n.context);if(r!=null){n.context=r;return}}else if(!E(t,n.localVars)){n.localVars=new j(t,n.localVars);return}}e.globalVars&&!E(t,n.globalVars)&&(n.globalVars=new j(t,n.globalVars))}function O(e,t){if(!t)return null;if(t.block){var n=O(e,t.prev);return n?n==t.prev?t:new A(n,t.vars,!0):null}else if(E(e,t.vars))return t;else return new A(t.prev,new j(e,t.vars),!1)}function k(e){return e==`public`||e==`private`||e==`protected`||e==`abstract`||e==`readonly`}function A(e,t,n){this.prev=e,this.vars=t,this.block=n}function j(e,t){this.name=e,this.next=t}var M=new j(`this`,new j(`arguments`,null));function N(){C.state.context=new A(C.state.context,C.state.localVars,!1),C.state.localVars=M}function P(){C.state.context=new A(C.state.context,C.state.localVars,!0),C.state.localVars=null}N.lex=P.lex=!0;function F(){C.state.localVars=C.state.context.vars,C.state.context=C.state.context.prev}F.lex=!0;function I(e,t){var n=function(){var n=C.state,r=n.indented;if(n.lexical.type==`stat`)r=n.lexical.indented;else for(var i=n.lexical;i&&i.type==`)`&&i.align;i=i.prev)r=i.indented;n.lexical=new b(r,C.stream.column(),e,null,n.lexical,t)};return n.lex=!0,n}function L(){var e=C.state;e.lexical.prev&&(e.lexical.type==`)`&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}L.lex=!0;function ee(e){function t(n){return n==e?T():e==`;`||n==`}`||n==`)`||n==`]`?w():T(t)}return t}function R(e,t){return e==`var`?T(I(`vardef`,t),Re,ee(`;`),L):e==`keyword a`?T(I(`form`),re,R,L):e==`keyword b`?T(I(`form`),R,L):e==`keyword d`?C.stream.match(/^\s*$/,!1)?T():T(I(`stat`),ae,ee(`;`),L):e==`debugger`?T(ee(`;`)):e==`{`?T(I(`}`),P,Se,L,F):e==`;`?T():e==`if`?(C.state.lexical.info==`else`&&C.state.cc[C.state.cc.length-1]==L&&C.state.cc.pop()(),T(I(`form`),re,R,L,We)):e==`function`?T(Je):e==`for`?T(I(`form`),P,Ge,R,F,L):e==`class`||i&&t==`interface`?(C.marked=`keyword`,T(I(`form`,e==`class`?e:t),$e,L)):e==`variable`?i&&t==`declare`?(C.marked=`keyword`,T(R)):i&&(t==`module`||t==`enum`||t==`type`)&&C.stream.match(/^\s*\w/,!1)?(C.marked=`keyword`,t==`enum`?T(dt):t==`type`?T(Xe,ee(`operator`),De,ee(`;`)):T(I(`form`),ze,ee(`{`),I(`}`),Se,L,L)):i&&t==`namespace`?(C.marked=`keyword`,T(I(`form`),z,R,L)):i&&t==`abstract`?(C.marked=`keyword`,T(R)):T(I(`stat`),he):e==`switch`?T(I(`form`),re,ee(`{`),I(`}`,`switch`),P,Se,L,L,F):e==`case`?T(z,ee(`:`)):e==`default`?T(ee(`:`)):e==`catch`?T(I(`form`),N,te,R,L,F):e==`export`?T(I(`stat`),rt,L):e==`import`?T(I(`stat`),at,L):e==`async`?T(R):t==`@`?T(z,R):w(I(`stat`),z,ee(`;`),L)}function te(e){if(e==`(`)return T(Ze,ee(`)`))}function z(e,t){return ie(e,t,!1)}function ne(e,t){return ie(e,t,!0)}function re(e){return e==`(`?T(I(`)`),ae,ee(`)`),L):w()}function ie(e,t,n){if(C.state.fatArrowAt==C.stream.start){var r=n?de:ue;if(e==`(`)return T(N,I(`)`),be(Ze,`)`),L,ee(`=>`),r,F);if(e==`variable`)return w(N,ze,ee(`=>`),r,F)}var a=n?se:oe;return y.hasOwnProperty(e)?T(a):e==`function`?T(Je,a):e==`class`||i&&t==`interface`?(C.marked=`keyword`,T(I(`form`),Qe,L)):e==`keyword c`||e==`async`?T(n?ne:z):e==`(`?T(I(`)`),ae,ee(`)`),L,a):e==`operator`||e==`spread`?T(n?ne:z):e==`[`?T(I(`]`),ut,L,a):e==`{`?xe(_e,`}`,null,a):e==`quasi`?w(ce,a):e==`new`?T(fe(n)):T()}function ae(e){return e.match(/[;\}\)\],]/)?w():w(z)}function oe(e,t){return e==`,`?T(ae):se(e,t,!1)}function se(e,t,n){var r=n==0?oe:se,a=n==0?z:ne;if(e==`=>`)return T(N,n?de:ue,F);if(e==`operator`)return/\+\+|--/.test(t)||i&&t==`!`?T(r):i&&t==`<`&&C.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?T(I(`>`),be(De,`>`),L,r):t==`?`?T(z,ee(`:`),a):T(a);if(e==`quasi`)return w(ce,r);if(e!=`;`){if(e==`(`)return xe(ne,`)`,`call`,r);if(e==`.`)return T(ge,r);if(e==`[`)return T(I(`]`),ae,ee(`]`),L,r);if(i&&t==`as`)return C.marked=`keyword`,T(De,r);if(e==`regexp`)return C.state.lastType=C.marked=`operator`,C.stream.backUp(C.stream.pos-C.stream.start-1),T(a)}}function ce(e,t){return e==`quasi`?t.slice(t.length-2)=="${"?T(ae,le):T(ce):w()}function le(e){if(e==`}`)return C.marked=`string.special`,C.state.tokenize=g,T(ce)}function ue(e){return v(C.stream,C.state),w(e==`{`?R:z)}function de(e){return v(C.stream,C.state),w(e==`{`?R:ne)}function fe(e){return function(t){return t==`.`?T(e?me:pe):t==`variable`&&i?T(Fe,e?se:oe):w(e?ne:z)}}function pe(e,t){if(t==`target`)return C.marked=`keyword`,T(oe)}function me(e,t){if(t==`target`)return C.marked=`keyword`,T(se)}function he(e){return e==`:`?T(L,R):w(oe,ee(`;`),L)}function ge(e){if(e==`variable`)return C.marked=`property`,T()}function _e(e,t){if(e==`async`)return C.marked=`property`,T(_e);if(e==`variable`||C.style==`keyword`){if(C.marked=`property`,t==`get`||t==`set`)return T(ve);var r;return i&&C.state.fatArrowAt==C.stream.start&&(r=C.stream.match(/^\s*:\s*/,!1))&&(C.state.fatArrowAt=C.stream.pos+r[0].length),T(ye)}else if(e==`number`||e==`string`)return C.marked=n?`property`:C.style+` property`,T(ye);else if(e==`jsonld-keyword`)return T(ye);else if(i&&k(t))return C.marked=`keyword`,T(_e);else if(e==`[`)return T(z,Ce,ee(`]`),ye);else if(e==`spread`)return T(ne,ye);else if(t==`*`)return C.marked=`keyword`,T(_e);else if(e==`:`)return w(ye)}function ve(e){return e==`variable`?(C.marked=`property`,T(Je)):w(ye)}function ye(e){if(e==`:`)return T(ne);if(e==`(`)return w(Je)}function be(e,t,n){function r(i,a){if(n?n.indexOf(i)>-1:i==`,`){var o=C.state.lexical;return o.info==`call`&&(o.pos=(o.pos||0)+1),T(function(n,r){return n==t||r==t?w():w(e)},r)}return i==t||a==t?T():n&&n.indexOf(`;`)>-1?w(e):T(ee(t))}return function(n,i){return n==t||i==t?T():w(e,r)}}function xe(e,t,n){for(var r=3;r`),De);if(e==`quasi`)return w(je,Pe)}function Oe(e){if(e==`=>`)return T(De)}function ke(e){return e.match(/[\}\)\]]/)?T():e==`,`||e==`;`?T(ke):w(Ae,ke)}function Ae(e,t){if(e==`variable`||C.style==`keyword`)return C.marked=`property`,T(Ae);if(t==`?`||e==`number`||e==`string`)return T(Ae);if(e==`:`)return T(De);if(e==`[`)return T(ee(`variable`),we,ee(`]`),Ae);if(e==`(`)return w(Ye,Ae);if(!e.match(/[;\}\)\],]/))return T()}function je(e,t){return e==`quasi`?t.slice(t.length-2)=="${"?T(De,Me):T(je):w()}function Me(e){if(e==`}`)return C.marked=`string.special`,C.state.tokenize=g,T(je)}function Ne(e,t){return e==`variable`&&C.stream.match(/^\s*[?:]/,!1)||t==`?`?T(Ne):e==`:`?T(De):e==`spread`?T(Ne):w(De)}function Pe(e,t){if(t==`<`)return T(I(`>`),be(De,`>`),L,Pe);if(t==`|`||e==`.`||t==`&`)return T(De);if(e==`[`)return T(De,ee(`]`),Pe);if(t==`extends`||t==`implements`)return C.marked=`keyword`,T(De);if(t==`?`)return T(De,ee(`:`),De)}function Fe(e,t){if(t==`<`)return T(I(`>`),be(De,`>`),L,Pe)}function Ie(){return w(De,Le)}function Le(e,t){if(t==`=`)return T(De)}function Re(e,t){return t==`enum`?(C.marked=`keyword`,T(dt)):w(ze,Ce,He,Ue)}function ze(e,t){if(i&&k(t))return C.marked=`keyword`,T(ze);if(e==`variable`)return D(t),T();if(e==`spread`)return T(ze);if(e==`[`)return xe(Ve,`]`);if(e==`{`)return xe(Be,`}`)}function Be(e,t){return e==`variable`&&!C.stream.match(/^\s*:/,!1)?(D(t),T(He)):(e==`variable`&&(C.marked=`property`),e==`spread`?T(ze):e==`}`?w():e==`[`?T(z,ee(`]`),ee(`:`),Be):T(ee(`:`),ze,He))}function Ve(){return w(ze,He)}function He(e,t){if(t==`=`)return T(ne)}function Ue(e){if(e==`,`)return T(Re)}function We(e,t){if(e==`keyword b`&&t==`else`)return T(I(`form`,`else`),R,L)}function Ge(e,t){if(t==`await`)return T(Ge);if(e==`(`)return T(I(`)`),Ke,L)}function Ke(e){return e==`var`?T(Re,qe):e==`variable`?T(qe):w(qe)}function qe(e,t){return e==`)`?T():e==`;`?T(qe):t==`in`||t==`of`?(C.marked=`keyword`,T(z,qe)):w(z,qe)}function Je(e,t){if(t==`*`)return C.marked=`keyword`,T(Je);if(e==`variable`)return D(t),T(Je);if(e==`(`)return T(N,I(`)`),be(Ze,`)`),L,Te,R,F);if(i&&t==`<`)return T(I(`>`),be(Ie,`>`),L,Je)}function Ye(e,t){if(t==`*`)return C.marked=`keyword`,T(Ye);if(e==`variable`)return D(t),T(Ye);if(e==`(`)return T(N,I(`)`),be(Ze,`)`),L,Te,F);if(i&&t==`<`)return T(I(`>`),be(Ie,`>`),L,Ye)}function Xe(e,t){if(e==`keyword`||e==`variable`)return C.marked=`type`,T(Xe);if(t==`<`)return T(I(`>`),be(Ie,`>`),L)}function Ze(e,t){return t==`@`&&T(z,Ze),e==`spread`?T(Ze):i&&k(t)?(C.marked=`keyword`,T(Ze)):i&&e==`this`?T(Ce,He):w(ze,Ce,He)}function Qe(e,t){return e==`variable`?$e(e,t):et(e,t)}function $e(e,t){if(e==`variable`)return D(t),T(et)}function et(e,t){if(t==`<`)return T(I(`>`),be(Ie,`>`),L,et);if(t==`extends`||t==`implements`||i&&e==`,`)return t==`implements`&&(C.marked=`keyword`),T(i?De:z,et);if(e==`{`)return T(I(`}`),tt,L)}function tt(e,t){if(e==`async`||e==`variable`&&(t==`static`||t==`get`||t==`set`||i&&k(t))&&C.stream.match(/^\s+#?[\w$\xa1-\uffff]/,!1))return C.marked=`keyword`,T(tt);if(e==`variable`||C.style==`keyword`)return C.marked=`property`,T(nt,tt);if(e==`number`||e==`string`)return T(nt,tt);if(e==`[`)return T(z,Ce,ee(`]`),nt,tt);if(t==`*`)return C.marked=`keyword`,T(tt);if(i&&e==`(`)return w(Ye,tt);if(e==`;`||e==`,`)return T(tt);if(e==`}`)return T();if(t==`@`)return T(z,tt)}function nt(e,t){if(t==`!`||t==`?`)return T(nt);if(e==`:`)return T(De,He);if(t==`=`)return T(ne);var n=C.state.lexical.prev;return w(n&&n.info==`interface`?Ye:Je)}function rt(e,t){return t==`*`?(C.marked=`keyword`,T(lt,ee(`;`))):t==`default`?(C.marked=`keyword`,T(z,ee(`;`))):e==`{`?T(be(it,`}`),lt,ee(`;`)):w(R)}function it(e,t){if(t==`as`)return C.marked=`keyword`,T(ee(`variable`));if(e==`variable`)return w(ne,it)}function at(e){return e==`string`?T():e==`(`?w(z):e==`.`?w(oe):w(ot,st,lt)}function ot(e,t){return e==`{`?xe(ot,`}`):(e==`variable`&&D(t),t==`*`&&(C.marked=`keyword`),T(ct))}function st(e){if(e==`,`)return T(ot,st)}function ct(e,t){if(t==`as`)return C.marked=`keyword`,T(ot)}function lt(e,t){if(t==`from`)return C.marked=`keyword`,T(z)}function ut(e){return e==`]`?T():w(be(ne,`]`))}function dt(){return w(I(`form`),ze,ee(`{`),I(`}`),be(ft,`}`),L,L)}function ft(){return w(ze,He)}function pt(e,t){return e.lastType==`operator`||e.lastType==`,`||s.test(t.charAt(0))||/[,.]/.test(t.charAt(0))}function mt(e,t,n){return t.tokenize==p&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(t.lastType)||t.lastType==`quasi`&&/\{\s*$/.test(e.string.slice(0,e.pos-(n||0)))}return{name:e.name,startState:function(t){var n={tokenize:p,lastType:`sof`,cc:[],lexical:new b(-t,0,`block`,!1),localVars:e.localVars,context:e.localVars&&new A(null,null,!1),indented:0};return e.globalVars&&typeof e.globalVars==`object`&&(n.globalVars=e.globalVars),n},token:function(e,t){if(e.sol()&&(t.lexical.hasOwnProperty(`align`)||(t.lexical.align=!1),t.indented=e.indentation(),v(e,t)),t.tokenize!=h&&e.eatSpace())return null;var n=t.tokenize(e,t);return u==`comment`?n:(t.lastType=u==`operator`&&(d==`++`||d==`--`)?`incdec`:u,S(t,n,u,d,e))},indent:function(n,r,i){if(n.tokenize==h||n.tokenize==g)return null;if(n.tokenize!=p)return 0;var a=r&&r.charAt(0),o=n.lexical,s;if(!/^\s*else\b/.test(r))for(var c=n.cc.length-1;c>=0;--c){var l=n.cc[c];if(l==L)o=o.prev;else if(l!=We&&l!=F)break}for(;(o.type==`stat`||o.type==`form`)&&(a==`}`||(s=n.cc[n.cc.length-1])&&(s==oe||s==se)&&!/^[,\.=+\-*:?[\(]/.test(r));)o=o.prev;t&&o.type==`)`&&o.prev.type==`stat`&&(o=o.prev);var u=o.type,d=a==u;return u==`vardef`?o.indented+(n.lastType==`operator`||n.lastType==`,`?o.info.length+1:0):u==`form`&&a==`{`?o.indented:u==`form`?o.indented+i.unit:u==`stat`?o.indented+(pt(n,r)?t||i.unit:0):o.info==`switch`&&!d&&e.doubleIndentSwitch!=0?o.indented+(/^(?:case|default)\b/.test(r)?i.unit:2*i.unit):o.align?o.column+ +!d:o.indented+(d?0:i.unit)},languageData:{indentOnInput:/^\s*(?:case .*?:|default:|\{|\})$/,commentTokens:r?void 0:{line:`//`,block:{open:`/*`,close:`*/`}},closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,"`"]},wordChars:`$`}}}var yJ=vJ({name:`javascript`});vJ({name:`json`,json:!0}),vJ({name:`json`,jsonld:!0}),vJ({name:`typescript`,typescript:!0});var bJ=RegExp(`\\b((`+[`true`,`false`,`on`,`off`,`yes`,`no`].join(`)|(`)+`))$`,`i`),xJ={name:`yaml`,token:function(e,t){var n=e.peek(),r=t.escaped;if(t.escaped=!1,n==`#`&&(e.pos==0||/\s/.test(e.string.charAt(e.pos-1))))return e.skipToEnd(),`comment`;if(e.match(/^('([^']|\\.)*'?|"([^"]|\\.)*"?)/))return`string`;if(t.literal&&e.indentation()>t.keyCol)return e.skipToEnd(),`string`;if(t.literal&&=!1,e.sol()){if(t.keyCol=0,t.pair=!1,t.pairStart=!1,e.match(`---`)||e.match(`...`))return`def`;if(e.match(/^\s*-\s+/))return`meta`}if(e.match(/^(\{|\}|\[|\])/))return n==`{`?t.inlinePairs++:n==`}`?t.inlinePairs--:n==`[`?t.inlineList++:t.inlineList--,`meta`;if(t.inlineList>0&&!r&&n==`,`)return e.next(),`meta`;if(t.inlinePairs>0&&!r&&n==`,`)return t.keyCol=0,t.pair=!1,t.pairStart=!1,e.next(),`meta`;if(t.pairStart){if(e.match(/^\s*(\||\>)\s*/))return t.literal=!0,`meta`;if(e.match(/^\s*(\&|\*)[a-z0-9\._-]+\b/i))return`variable`;if(t.inlinePairs==0&&e.match(/^\s*-?[0-9\.\,]+\s?$/)||t.inlinePairs>0&&e.match(/^\s*-?[0-9\.\,]+\s?(?=(,|}))/))return`number`;if(e.match(bJ))return`keyword`}return!t.pair&&e.match(/^\s*(?:[,\[\]{}&*!|>'"%@`][^\s'":]|[^,\[\]{}#&*!|>'"%@`])[^#]*?(?=\s*:($|\s))/)?(t.pair=!0,t.keyCol=e.indentation(),`atom`):t.pair&&e.match(/^:\s*/)?(t.pairStart=!0,`meta`):(t.pairStart=!1,t.escaped=n==`\\`,e.next(),null)},startState:function(){return{pair:!1,pairStart:!1,keyCol:0,inlinePairs:0,inlineList:0,literal:!1,escaped:!1}},languageData:{commentTokens:{line:`#`}}};function SJ(e){if(!e.getSettings().enableSyntaxHighlighting)return;window.CodeMirror.defineMode(`meta-bind-button`,e=>({startState:()=>xJ.startState?.(4),blankLine:e=>xJ.blankLine?.(e,4),copyState:e=>xJ.startState?.(4),token:(e,t)=>`line-HyperMD-codeblock ${xJ.token?.(e,t)}`})),window.CodeMirror.defineMode(`meta-bind-js-view`,e=>({startState:()=>yJ.startState?.(4),blankLine:e=>yJ.blankLine?.(e,4),copyState:e=>yJ.startState?.(4),token:(e,t)=>`line-HyperMD-codeblock ${yJ.token?.(e,t)}`}));let t=/^\s*(```+|~~~+)/;window.CodeMirror.defineMode(`meta-bind`,n=>({startState:()=>({str:void 0,mdrcType:void 0,highlights:void 0,line:1}),token:(n,r)=>{if(r.str===void 0){let i=[n.string],a=1,o=n.lookAhead(a);for(;o!==void 0&&!t.test(o)&&(i.push(o),a+=1,o=n.lookAhead(a),!(a>100)););r.str=i.filter(e=>e.trim()!==``).join(` +`);let s=e.api.isInlineFieldDeclarationAndGetType(r.str.trim());s===void 0?r.highlights=new mt(r.str,[]):(r.fieldType=s,r.highlights=e.syntaxHighlighting.highlight(r.str,r.fieldType,!0))}let i=r.highlights.getHighlights().map(e=>({highlight:e,from:g(r.str,e.range.from),to:g(r.str,e.range.to)})).filter(e=>e.from.line===r.line).find(e=>e.from.column===n.pos+1);return i===void 0?(n.next(),n.eol()&&(r.line+=1),`line-HyperMD-codeblock`):(n.eatWhile(()=>i.to.line===r.line?n.pos+1=t&&r.from<=n)return!0;return!1}static checkRangeOverlap(e,t,n,r){return e<=r&&n<=t}static getContent(e,t,n){return e.sliceDoc(t,n)}static getCurrentFile(e){return e.state.field(u.editorInfoField).file}static existsDecorationBetween(e,t,n){let r=!1;return e.between(t,n,()=>{r=!0}),r}static existsDecorationOfTypeBetween(e,t,n,r){let i=!1;return e.between(n,r,(e,n,r)=>{r.spec.mb_widgetType===t&&(i=!0)}),i}};function TJ(e){return f.ViewPlugin.fromClass(class{decorations;component;constructor(e){this.component=new u.Component,this.component.load(),this.decorations=this.renderWidgets(e)??f.Decoration.none,e.dom.addEventListener(`click`,e=>this.handleClick(e))}handleClick(e){if(e.target instanceof HTMLElement){let t=e.target;for(;t!==null;){if(t.classList.contains(`mb-input`)){e.stopPropagation();break}t=t.parentElement}}}isLivePreview(e){return e.field(u.editorLivePreviewField)}update(e){this.decorations=this.decorations.map(e.changes),this.updateWidgets(e.view)}updateWidgets(e){this.decorations=this.decorations.update({filter:(t,n,r)=>b_(e.visibleRanges,e=>wJ.checkRangeOverlap(t,n,e.from,e.to))?!0:(r.spec.mb_unload?.(),!1)});for(let{from:t,to:n}of e.visibleRanges)(0,d.syntaxTree)(e.state).iterate({from:t,to:n,enter:t=>{let n=t.node,r=this.getRenderInfo(e,n);if(!r.data)return;if(!r.data.widgetType){this.removeDecoration(n);return}let i=r.data;r.shouldRender?(this.removeDecoration(n,CJ.FIELD),this.addDecoration(n,e,CJ.FIELD,i)):r.shouldHighlight?(this.removeDecoration(n),this.addDecoration(n,e,CJ.HIGHLIGHT,i)):this.removeDecoration(n)}})}removeDecoration(e,t){this.decorations=this.decorations.update({filterFrom:e.from-1,filterTo:e.to+1,filter:(e,n,r)=>{let i=r.spec;return!i.mb_widgetType||t&&i.mb_widgetType===t?!0:(i.mb_unload?.(),!1)}})}addDecoration(e,t,n,r){if(wJ.existsDecorationOfTypeBetween(this.decorations,n,e.from,e.to))return;let i=wJ.getCurrentFile(t);if(!i)return;let a=this.renderWidget(e,n,r,i),o=Array.isArray(a)?a:[a];o.length!==0&&(this.decorations=this.decorations.update({add:o}))}getRenderInfo(t,n){let r=new Set(n.type.name?.split(`_`));if(r.has(`inline-code`)&&!r.has(`formatting`)){let r=this.readNode(t,n.from,n.to);if(!r.trulyInline)return{shouldRender:!1,shouldHighlight:!1,data:void 0};let i=wJ.checkSelectionOverlap(t.state.selection,n.from,n.to),a=this.isLivePreview(t.state),o=!i&&a;return{shouldRender:o,shouldHighlight:!o&&e.getSettings().enableSyntaxHighlighting,data:r}}return{shouldRender:!1,shouldHighlight:!1,data:void 0}}readNode(t,n,r){let i=!1;try{let e=wJ.getContent(t.state,n-1,r+1);i=e.startsWith("`")&&e.endsWith("`")}catch{}let a=wJ.getContent(t.state,n,r);return{content:a,widgetType:e.api.isInlineFieldDeclarationAndGetType(a),trulyInline:i}}renderWidgets(e){let t=wJ.getCurrentFile(e);if(!t)return;let n=[];for(let r of e.visibleRanges)(0,d.syntaxTree)(e.state).iterate({from:r.from,to:r.to,enter:r=>{let i=r.node,a=this.getRenderInfo(e,i);if(!a.data?.widgetType)return;let o=a.data,s;a.shouldRender?s=this.renderWidget(i,CJ.FIELD,o,t):a.shouldHighlight&&(s=this.renderWidget(i,CJ.HIGHLIGHT,o,t)),s&&(Array.isArray(s)?n.push(...s):n.push(s))}});return f.Decoration.set(n,!0)}renderWidget(t,n,r,i){if(n===CJ.FIELD){let n=e.api.constructMDRCWidget(r.widgetType,r.content,i.path,this.component);return f.Decoration.replace({widget:n,mb_widgetType:CJ.FIELD,mb_unload:()=>{n.renderChild?.unload()}}).range(t.from-1,t.to+1)}else return e.syntaxHighlighting.highlight(r.content,r.widgetType,!1).getHighlights().map(e=>f.Decoration.mark({class:`mb-highlight-${e.tokenClass}`,mb_widgetType:CJ.HIGHLIGHT}).range(t.from+e.range.from,t.from+e.range.to))}destroy(){this.component.unload()}},{decorations:e=>e.decorations})}var EJ=_.sequenceMap((e,t,n,r)=>new DJ(parseInt(e),parseInt(t),parseInt(n),r),w.digits().skip(_.string(`.`)),w.digits().skip(_.string(`.`)),w.digits(),_.string(`-`).then(w.remaining()).optional()),DJ=class e{major;minor;patch;prerelease;constructor(e,t,n,r){this.major=e,this.minor=t,this.patch=n,this.prerelease=r}static fromString(e){return se(EJ,e)}static lessThan(e,t){return e.majort.major?!1:e.minort.minor?!1:e.patcht.patch||e.prerelease===void 0?!1:t.prerelease===void 0?!0:e.prereleaset.pluginId===e);if(t===void 0)throw new oe({errorLevel:P.CRITICAL,effect:`Dependency violation detected`,cause:`Attempted to access dependency ${e} which is not a listed dependency. Please report this error.`});return t}getPlugin(e){return this.mb.app.plugins.getPlugin(e)}throwPluginNotFound(e){this.throwDependencyError(`Plugin ${e} is required, but not installed. Please install the plugin.`)}throwDependencyError(e){throw new u.Notice(`meta-bind | Dependency Error: ${e}`,0),new oe({errorLevel:P.ERROR,effect:`Dependency violation detected`,cause:e})}checkDependencyVersion(e,t){DJ.lessThan(t,e.minVersion)&&this.throwDependencyError(`Plugin ${e.pluginId} is outdated. Required version is at least ${e.minVersion}, installed version is ${t}. Please update the plugin.`),e.maxVersion!==void 0&&(DJ.greaterThan(t,e.maxVersion)||DJ.equals(t,e.maxVersion))&&this.throwDependencyError(`Plugin ${e.pluginId} is too new. Required version is lower than ${e.maxVersion}, installed version is ${t}. Please downgrade the plugin.`)}checkDependency(e){let t=this.getDependency(e),n=this.getPlugin(e);if(n==null)throw this.throwPluginNotFound(e),Error(`unreachable`);let r=DJ.fromString(n.manifest.version);return this.checkDependencyVersion(t,r),n}},kJ={date:`date`,datePicker:`datePicker`,dateTime:`dateTime`,editor:`editor`,imageSuggester:`imageSuggester(optionQuery(""))`,imageListSuggester:`imageListSuggester(optionQuery(""))`,inlineList:`inlineList`,inlineListSuggester:`inlineListSuggester(option(apple), option(banana), option(lemon))`,inlineSelect:`inlineSelect(option(apple), option(banana), option(lemon))`,list:`list`,listSuggester:`listSuggester(option(apple), option(banana), option(lemon))`,multiSelect:`multiSelect(option(apple), option(banana), option(lemon))`,number:`number`,progressBar:`progressBar`,select:`select(option(apple), option(banana), option(lemon))`,slider:`slider(addLabels)`,suggester:`suggester(option(apple), option(banana), option(lemon))`,text:`text`,textArea:`textArea`,time:`time`,toggle:`toggle`,invalid:``},AJ={image:[{title:`Image`,declaration:`VIEW[{globalMemory^MB_VF_image_example}][image]`,display:`VIEW[{imageExampleProperty}][image]`,inputField:`INPUT[imageSuggester(optionQuery("")):globalMemory^MB_VF_image_example]`}],link:[{title:`Link`,declaration:`VIEW[{globalMemory^MB_VF_link_example}][link]`,display:`VIEW[{linkExampleProperty}][link]`,inputField:`INPUT[suggester(optionQuery("")):globalMemory^MB_VF_link_example]`}],math:[{title:`Math`,declaration:`VIEW[{globalMemory^MB_VF_math_example} + 2][math]`,display:`VIEW[{mathExampleProperty} + 2][math]`,inputField:`INPUT[number:globalMemory^MB_VF_math_example]`}],text:[{title:`Text`,declaration:`VIEW[some text {globalMemory^MB_VF_text_example}][text]`,display:`VIEW[some text {textExampleProperty}][text]`,inputField:`INPUT[text:globalMemory^MB_VF_text_example]`},{title:`Markdown`,declaration:`VIEW[**some markdown** {globalMemory^MB_VF_text_markdown_example}][text(renderMarkdown)]`,display:`VIEW[**some markdown** {markdownExampleProperty}][text(renderMarkdown)]`,inputField:`INPUT[text:globalMemory^MB_VF_text_markdown_example]`}],invalid:[]};function jJ(e){let t=[];for(let[n,r]of Object.entries(kJ)){if(r===``)continue;let i=e.inputFieldParser.fromString(`INPUT[${r}]`),a=e.inputFieldParser.fromSimpleDeclaration({inputFieldType:void 0,templateName:void 0,bindTarget:void 0,arguments:[{name:V.SHOWCASE,value:[`true`]},{name:V.TITLE,value:[n]}]});i=e.inputFieldParser.merge(i,a),i.declarationString=`INPUT[${r}]`;let o=e.inputFieldParser.validate(i,``,void 0);t.push([n,o])}return t}function MJ(e){let t=[];for(let[e,n]of Object.entries(kJ)){if(n===``)continue;let r=e,i=``;i=En[r].allowInline?`\`INPUT[${n}:exampleProperty]\``:`\n\`\`\`meta-bind\nINPUT[${n}:exampleProperty]\n\`\`\`\n`,t.push([r,i])}return t.sort((e,t)=>e[0].localeCompare(t[0])),t}function NJ(e){let t=[];for(let e of Object.values(AJ))for(let n of e)t.push([n.title,`\`${n.display}\``]);return t.sort((e,t)=>e[0].localeCompare(t[0])),t}function PJ(e,t,n){let r=MJ(n),i=NJ(n);e.addItem(e=>{e.setTitle(`Meta Bind`),e.setIcon(`blocks`);let a=e.setSubmenu();a.addItem(e=>{e.setTitle(`Input Field`);let n=e.setSubmenu();for(let[e,i]of r)n.addItem(n=>{n.setTitle(e),n.onClick(()=>FJ(t,i))})}),a.addItem(e=>{e.setTitle(`View Field`);let n=e.setSubmenu();for(let[e,r]of i)n.addItem(n=>{n.setTitle(e),n.onClick(()=>FJ(t,r))})}),a.addItem(e=>{e.setTitle(`Inline Button`),e.onClick(()=>{FJ(t,"`BUTTON[example-id]`")})}),a.addItem(e=>{e.setTitle(`Button`),e.onClick(()=>{n.internal.openButtonBuilderModal({onOkay:e=>{FJ(t,`\`\`\`meta-bind-button\n${(0,u.stringifyYaml)(e)}\n\`\`\``)},submitText:`Insert`})})})})}function FJ(e,t){e.replaceSelection(t)}var IJ=class extends Ys{mb;filePath;uuid;constructor(e,t,n){super(),this.mb=e,this.filePath=n,this.uuid=t}getUuid(){return this.uuid}getFilePath(){return this.filePath}onMount(e){this.mb.mountableManager.registerMountable(this)}onUnmount(e){this.mb.mountableManager.unregisterMountable(this)}},LJ=class{scope;constructor(e){this.scope=e}},RJ=Mw()(lC()),zJ=Mw()(tw(A)),BJ=Mw()(tw(j)),VJ=Mw()(tw(B)),HJ=Mw()(LC()),UJ=Mw()(Ow(LJ));Mw()(Ow(Zs)),Mw()(Aw()),Mw()(Ow(IJ));var WJ=Mw()(Ow(Ys)),GJ=Mw()(Ow(M)),KJ=Mw()(GC({from:jC(),to:jC()})),qJ=Mw()(GC({value:lC(),position:KJ.optional()})),JJ=Mw()(GC({name:qJ,value:qJ.array()})),YJ=Mw()(GC({type:tw(ye),prop:qJ})),XJ=Mw()(GC({storageType:qJ.optional(),storagePath:qJ.optional(),storageProp:YJ.array(),listenToChildren:FC()}));Mw()(GC({declarationString:lC().optional(),inputFieldType:qJ.optional(),templateName:qJ.optional(),bindTarget:XJ.optional(),arguments:JJ.array(),errorCollection:Ow(Cn)})),Mw()(GC({declarationString:lC().optional(),templateDeclaration:UC(qC([lC(),XJ])).optional(),viewFieldType:qJ.optional(),arguments:JJ.array(),writeToBindTarget:XJ.optional(),errorCollection:Ow(Cn)}));var ZJ=Mw()(GC({storageType:lC(),storagePath:lC(),storageProp:Ow(R_),listenToChildren:FC()})),QJ=Mw()(GC({name:lC(),value:lC().array()}));Mw()(GC({type:tw(ye),prop:lC()}));var $J=Mw()(GC({inputFieldType:VJ.optional(),templateName:lC().optional(),bindTarget:ZJ.optional(),arguments:QJ.array().optional()})),eY=Mw()(GC({viewFieldType:VJ.optional(),templateDeclaration:qC([lC(),ZJ]).array().optional(),arguments:QJ.array().optional(),writeToBindTarget:ZJ.optional()})),tY=Mw()(GC({bindTarget:ZJ,name:lC()})),nY=Mw()(GC({bindTargetMappings:tY.array(),writeToBindTarget:ZJ.optional(),code:lC()})),rY=Mw()(GC({referencedButtonIds:lC().array()})),iY=Mw()(GC({renderChildType:zJ,declaration:qC([lC(),$J]),scope:UJ.optional()})),aY=Mw()(GC({renderChildType:zJ,declaration:qC([lC(),eY]),scope:UJ.optional()})),oY=Mw()(GC({declaration:qC([lC(),nY])})),sY=Mw()(GC({bindTarget:ZJ,tableHead:lC().array(),columns:UC(qC([$J,eY,lC()]))})),cY=Mw()(GC({renderChildType:zJ,declaration:qC([lC(),rY]),position:GJ.optional()})),lY=Mw()(GC({declaration:qC([lC(),oT]),position:GJ.optional(),isPreview:FC()})),uY=Mw()(GC({depth:jC(),content:lC()})),dY=q(``);function fY(e,t){Yr(t,!0);let n=Ws(t,`variant`,19,()=>Nt.DEFAULT),r=Ws(t,`disabled`,7,!1),i=Ws(t,`tooltip`,3,``),a=Ws(t,`label`,3,``),o=Ws(t,`icon`,3,``),s=Ws(t,`cssStyle`,3,``),c=Ws(t,`backgroundImage`,3,``),l=Ws(t,`error`,3,!1),u=Ws(t,`onclick`,3,()=>{}),d=Ws(t,`onauxclick`,3,()=>{});async function f(e,t){if(!r()){r(!0);try{t===It.LEFT?await u()(e):t===It.MIDDLE&&await d()(e)}catch(e){console.warn(`failed to run button component on click`,e)}finally{r(!1)}}}var p=dY();let m,h;var g=U(p),_=e=>{ph(e,{get mb(){return t.mb},get iconName(){return o()}})};ts(g,e=>{o()&&e(_)});var v=G(g);H(p),Ra(()=>{m=xs(p,1,`mb-button-inner`,null,m,{"mod-cta":n()===Nt.PRIMARY,"mod-warning":n()===Nt.DESTRUCTIVE,"mod-plain":n()===Nt.PLAIN,disabled:r(),"mb-error":l()}),h=Cs(p,s(),h,{"background-image":c()?`url("${c()}")`:void 0}),Fs(p,`aria-label`,i()),p.disabled=r(),Jo(v,` ${a()??``}`)}),Io(`click`,p,e=>f(e,It.LEFT)),Fo(`auxclick`,p,e=>f(e,It.MIDDLE)),J(e,p),Xr()}Lo([`click`]);var pY=class extends Ys{mb;config;filePath;isInline;position;buttonComponent;isInGroup;isPreview;constructor(e,t,n,r,i,a,o){super(),this.mb=e,this.config=t,this.filePath=n,this.isInline=r===A.INLINE,this.position=i,this.isInGroup=a,this.isPreview=o}onMount(e){Dt.empty(e),Dt.removeAllClasses(e),Dt.addClasses(e,[`mb-button`,this.isInline?`mb-button-inline`:`mb-button-block`]),!(!this.isInline&&!this.isPreview&&!this.isInGroup&&(this.config.id&&this.mb.buttonManager.addButton(this.filePath,this.config),this.config.hidden))&&(this.config.class&&Dt.addClasses(e,this.config.class.split(` `).filter(e=>e!==``)),this.buttonComponent=Yo(fY,{target:e,props:{mb:this.mb,icon:this.config.icon,variant:this.config.style,label:this.config.label,tooltip:bt(this.config.tooltip)?this.config.tooltip:void 0,cssStyle:this.config.cssStyle,backgroundImage:bt(this.config.backgroundImage)?this.mb.internal.imagePathToUri(this.config.backgroundImage):void 0,onclick:async e=>{await this.mb.buttonActionRunner.runButtonActions(this.config,this.filePath,this.getContext(),Ft.fromMouseEvent(e,It.LEFT))},onauxclick:async e=>{await this.mb.buttonActionRunner.runButtonActions(this.config,this.filePath,this.getContext(),Ft.fromMouseEvent(e,It.LEFT))}}}))}getContext(){return{position:this.position?.getPosition(),isInGroup:this.isInGroup,isInline:this.isInline}}onUnmount(){this.buttonComponent&&$o(this.buttonComponent),!this.isInline&&!this.isPreview&&this.config?.id&&this.mb.buttonManager.removeButton(this.filePath,this.config.id)}},mY=class extends Ys{mb;referencedIds;filePath;renderChildType;notePosition;constructor(e,t,n,r,i){super(),this.mb=e,this.referencedIds=t,this.filePath=n,this.renderChildType=r,this.notePosition=i}renderInitialButton(e,t){return Dt.removeAllClasses(e),Dt.addClasses(e,[`mb-button`,this.renderChildType===A.INLINE?`mb-button-inline`:`mb-button-block`]),Yo(fY,{target:e,props:{mb:this.mb,variant:Nt.DEFAULT,label:`Button ID not Found`,tooltip:`No button with id '${t}' found`,error:!0,onclick:async()=>{}}})}onMount(e){Dt.empty(e),Dt.addClasses(e,[`mb-button-group`,this.renderChildType===A.INLINE?`mb-button-group-inline`:`mb-button-group-block`]);for(let t of this.referencedIds){let n=Dt.createElement(e,`span`),r=this.renderInitialButton(n,t),i,a=this.mb.buttonManager.registerButtonLoadListener(this.filePath,t,e=>{r&&$o(r),r=void 0,i=new pY(this.mb,e,this.filePath,this.renderChildType,this.notePosition,!0,!1),i.mount(n)});this.registerUnmountCb(()=>{r&&$o(r),r=void 0,i?.unmount(),a()})}}onUnmount(e){Dt.empty(e)}},hY=class extends IJ{errorCollection;declaration;buttonField;renderChildType;position;constructor(e,t,n,r,i,a){super(e,t,n),this.declaration=r,this.errorCollection=new Cn(this.getUuid()),this.errorCollection.merge(r.errorCollection),this.renderChildType=i,this.position=a}onMount(e){if(super.onMount(e),Dt.removeAllClasses(e),this.declaration.errorCollection.isEmpty())try{this.buttonField=new mY(this.mb,this.declaration.referencedButtonIds,this.getFilePath(),this.renderChildType,this.position),this.buttonField.mount(e)}catch(t){this.errorCollection.add(t),this.renderErrorIndicator(e)}else this.renderErrorIndicator(e)}renderErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:`Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.`,warningText:`Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.`,code:this.declaration.declarationString})}onUnmount(e){super.onUnmount(e),this.buttonField?.unmount(),Et(e,`inline button`)}},gY=class extends IJ{errorCollection;declaration;position;buttonField;isPreview;constructor(e,t,n,r,i,a){super(e,t,n),this.declaration=r,this.position=i,this.isPreview=a,this.errorCollection=new Cn(this.getUuid()),this.errorCollection.merge(r.errorCollection)}onMount(e){if(super.onMount(e),Dt.removeAllClasses(e),this.declaration.config&&this.declaration.errorCollection.isEmpty())try{this.buttonField=new pY(this.mb,this.declaration.config,this.getFilePath(),A.BLOCK,this.position,!1,this.isPreview),this.buttonField.mount(e)}catch(t){this.errorCollection.add(t),this.renderErrorIndicator(e)}else this.renderErrorIndicator(e)}renderErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:`Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.`,warningText:`Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.`,code:this.declaration.declarationString})}onUnmount(e){super.onUnmount(e),this.buttonField?.unmount(),Et(e,`button`)}},_Y=class extends IJ{depth;content;markdownUnloadCallback;constructor(e,t,n,r,i){super(e,t,n),this.depth=r,this.content=i}async parseContent(){let e=this.content.split(` +`).map(e=>e.trim()).filter(e=>e.length>0);if(e.length===0)return{content:``};if(e.length>1)return{error:`Embed may only contain one link`};let t=e[0],n=tn.parseLink(t);if(!n.internal)return{error:`${t} is not an internal link`};let r=this.mb.file.getPathByName(n.target,this.getFilePath());return r===void 0?{error:`"${n.target}" is not created yet`}:{content:await this.mb.file.read(r)}}exceedsMaxDepth(){return this.depth>8}createEmbedMessage(e,t){e.createSpan({text:t,cls:`mb-embed-message`})}async renderContent(e){try{if(this.exceedsMaxDepth()){this.createEmbedMessage(e,`Max embed depth exceeded`);return}let t=await this.parseContent();if(t.error){this.createEmbedMessage(e,t.error);return}if(t.content===void 0){this.createEmbedMessage(e,`Embed content not found`);return}let n=t.content.replace(/(```+|~~~+)meta-bind-embed.*/g,`$1meta-bind-embed-internal-${this.depth+1}`);this.markdownUnloadCallback=await this.mb.internal.renderMarkdown(n,e,this.getFilePath())}catch(t){let n=new Cn(`Embed`);n.add(t),this.mb.internal.createErrorIndicator(e,{errorCollection:n})}}onMount(e){super.onMount(e),e.addClass(`mb-embed`),this.renderContent(e)}onUnmount(e){super.onUnmount(e),e.removeClass(`mb-embed`),this.markdownUnloadCallback?.(),Et(e,`Embed`)}},vY=class extends IJ{constructor(e,t,n){super(e,t,n)}onMount(e){super.onMount(e),Dt.empty(e),Dt.createElement(e,`span`,{text:`[META_BIND] This folder has been excluded in the settings`,class:`mb-error`})}onUnmount(e){super.onUnmount(e),Dt.empty(e),Et(e,`Excluded`)}},yY=class extends IJ{renderChildType;errorCollection;inputField;declarationString;declaration;constructor(e,t,n,r,i){super(e,t,n),this.renderChildType=r,this.declaration=i,this.declarationString=i.declarationString,this.errorCollection=new Cn(this.getUuid()),this.errorCollection.merge(i.errorCollection)}hasArgument(e){return this.getArguments(e).length>0}getArgument(e){return this.getArguments(e).at(0)}getArguments(e){if(this.declaration.errorCollection.hasErrors())throw new L({errorLevel:P.CRITICAL,effect:`can not retrieve arguments`,cause:`inputFieldDeclaration has errors`});return this.declaration.argumentContainer.getAll(e)}getBindTarget(){return this.declaration.bindTarget}shouldAddCardContainer(){let e=this.declaration.inputFieldType===B.SELECT||this.declaration.inputFieldType===B.MULTI_SELECT||this.declaration.inputFieldType===B.LIST,t=this.hasArgument(V.SHOWCASE)||this.hasArgument(V.TITLE);return this.renderChildType===A.BLOCK&&(e||t)}createContainer(e){if(this.shouldAddCardContainer()){let t=Dt.createElement(e,`div`);Dt.addClass(t,`mb-card`);let n=this.getArgument(V.TITLE);return n&&Dt.createElement(t,`h3`,{text:n.value}),t}return e}addShowcase(e){if(this.getArgument(V.SHOWCASE)&&this.shouldAddCardContainer()){let t=Dt.createElement(e,`code`,{class:`mb-none`}),n=Dt.createElement(t,`a`,{text:this.declarationString,class:`mb-no-link`});n.href=Qg.linkToInputField(this.declaration.inputFieldType)}}createInputField(){if(!this.errorCollection.hasErrors())try{this.inputField=this.mb.inputFieldFactory.createInputField(this)}catch(e){this.errorCollection.add(e)}!this.errorCollection.hasErrors()&&!this.inputField&&this.errorCollection.add(new L({errorLevel:P.CRITICAL,effect:`can't render input field`,cause:`input field is undefined`}))}createErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:`Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.`,warningText:`Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.`,code:this.declarationString})}onMount(e){if(super.onMount(e),Dt.empty(e),Dt.addClass(e,`mb-input`),this.createInputField(),this.errorCollection.hasErrors()){this.createErrorIndicator(e);return}let t=this.createContainer(e);this.createErrorIndicator(t);let n=Dt.createElement(t,`div`,{class:`mb-input-wrapper`});this.inputField?.mount(n);let r=this.getArguments(V.CLASS);for(let e of r)Dt.addClasses(n,e.value);Dt.addClass(n,`mb-input-type-${this.declaration.inputFieldType}`),this.renderChildType===A.BLOCK?Dt.addClass(e,`mb-input-block`):Dt.addClass(e,`mb-input-inline`),this.addShowcase(t)}onUnmount(e){super.onUnmount(e),this.inputField?.unmount(),Et(e,`input field`)}},bY=q(`

`);function xY(e,t){Yr(t,!0);let n,r;Ma(()=>{r?.unmount(),r=t.mountable,r.mount(n)}),Ks(()=>{r?.unmount()});var i=bY();Us(i,e=>n=e,()=>n),J(e,i),Xr()}var SY=q(` `),CY=q(``),wY=q(`invalid data`),TY=q(``),EY=q(`
`,1);function DY(e,t){Yr(t,!0);let n=Ws(t,`tableHead`,19,()=>[]),r=ea(sa([]));function i(e){na(r,e,!0)}var a={updateTable:i},o=EY(),s=W(o),c=U(s),l=U(c),u=U(l);os(U(u),17,n,ns,(e,t)=>{var n=SY(),r=U(n,!0);H(n),Ra(()=>Jo(r,K(t))),J(e,n)}),Ir(),H(u),H(l);var d=G(l);return os(d,21,()=>K(r),e=>e.index,(e,r)=>{var i=TY(),a=U(i),o=e=>{var t=qo();os(W(t),17,()=>K(r).cells,ns,(e,t)=>{var n=CY();xY(U(n),{get mountable(){return K(t)}}),H(n),J(e,n)}),J(e,t)},s=e=>{var t=wY();Ra(()=>Fs(t,`colspan`,n().length)),J(e,t)};ts(a,e=>{K(r).isValid?e(o):e(s,-1)});var c=G(a);Dh(U(c),{onclick:()=>t.table.removeColumn(K(r).index),children:(e,n)=>{ph(e,{get mb(){return t.table.mb},iconName:`x`})},$$slots:{default:!0}}),H(c),H(i),J(e,i)}),H(d),H(c),H(s),Dh(G(s,2),{onclick:()=>t.table.addColumn(),children:(e,t)=>{Ir(),J(e,Ko(`Add Row`))},$$slots:{default:!0}}),J(e,o),Xr(a)}function OY(e){return new R_(e.map(e=>qt.tryParse(e).success?new Ce(ye.ARRAY,e):new Ce(ye.OBJECT,e)))}var kY=class extends IJ{bindTarget;tableHead;columns;tableComponent;inputSignal;metadataSubscription;constructor(e,t,n,r,i,a){super(e,t,n),this.bindTarget=r,this.tableHead=i,this.columns=a,this.inputSignal=new Zs(void 0)}registerSelfToMetadataManager(){this.metadataSubscription=this.mb.metadataManager.subscribe(this.getUuid(),this.inputSignal,this.bindTarget,()=>this.unmount())}unregisterSelfFromMetadataManager(){this.metadataSubscription?.unsubscribe()}updateMetadataManager(e){this.metadataSubscription?.write(e)}getValue(){return this.parseTableData(this.metadataSubscription?.read())}parseTableData(e){return Array.isArray(e)?e:[]}updateDisplayValue(e){e??=[];let t=[];for(let n=0;n{if(typeof e==`string`)return this.mb.api.createInlineFieldFromString(e,this.getFilePath(),r,A.INLINE);if(`inputFieldType`in e)return this.mb.api.createInputFieldMountable(this.getFilePath(),{declaration:e,scope:r,renderChildType:A.INLINE});if(`viewFieldType`in e)return this.mb.api.createViewFieldMountable(this.getFilePath(),{declaration:e,scope:r,renderChildType:A.INLINE});throw Error(`Unknown column type: ${JSON.stringify(e)}`)});t.push({cells:i,index:n,value:e[n],isValid:!0})}else t.push({cells:[],index:n,value:e[n],isValid:!1});this.tableComponent?.updateTable(t)}removeColumn(e){let t=this.getValue();t.splice(e,1),this.updateDisplayValue(t),this.updateMetadataManager(t)}addColumn(){let e=this.getValue();e.push({}),this.updateDisplayValue(e),this.updateMetadataManager(e)}onMount(e){super.onMount(e),this.tableComponent=Yo(DY,{target:e,props:{table:this,tableHead:this.tableHead}}),this.inputSignal.registerListener({callback:e=>{this.updateDisplayValue(this.parseTableData(e))}}),this.registerSelfToMetadataManager()}onUnmount(e){super.onUnmount(e),this.unregisterSelfFromMetadataManager(),this.tableComponent&&$o(this.tableComponent),Et(e,`table`)}},AY=class extends IJ{errorCollection;declarationString;declaration;variables;metadataSubscription;jsRenderer;constructor(e,t,n,r){super(e,t,n),this.declaration=r,this.declarationString=r.declarationString,this.errorCollection=new Cn(this.getUuid()),this.errorCollection.merge(r.errorCollection),this.variables=[],this.buildVariables()}buildVariables(){if(this.errorCollection.isEmpty())try{for(let e of this.declaration.bindTargetMappings??[])this.variables.push({bindTargetDeclaration:e.bindTarget,metadataSignal:new Zs(void 0),uuid:St(),contextName:e.name})}catch(e){this.errorCollection.add(e)}}buildContext(){let e={};for(let t of this.variables??[])!t.contextName||!t.metadataSignal||(e[t.contextName]=t.metadataSignal.get());return e}async evaluate(){return this.jsRenderer?.evaluate({bound:this.buildContext()})}registerSelfToMetadataManager(){this.metadataSubscription=this.mb.metadataManager.subscribeDerived(this.getUuid(),this.declaration.writeToBindTarget,this.variables.map(e=>e.bindTargetDeclaration),this.variables.map(e=>e.metadataSignal),async()=>await this.evaluate(),()=>this.unmount())}unregisterSelfFromMetadataManager(){this.metadataSubscription?.unsubscribe()}createErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:`Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.`,warningText:`Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.`,code:this.declarationString})}onMount(e){if(super.onMount(e),Dt.addClass(e,`mb-view`),Dt.empty(e),this.mb.internal.isJsEngineAvailable()||this.errorCollection.add(new ne({errorLevel:P.ERROR,effect:`can not create js view field`,cause:`The JS Engine plugin is not installed and enabled.`})),this.mb.getSettings().enableJs||this.errorCollection.add(new ne({errorLevel:P.CRITICAL,effect:`Can't evaluate expression.`,cause:`JS evaluation is disabled in the plugin settings.`})),this.createErrorIndicator(e),this.errorCollection.hasErrors())return;let t=document.createElement(`div`);Dt.addClass(t,`mb-view-wrapper`),this.jsRenderer=this.mb.internal.createJsRenderer(t,this.getFilePath(),this.declaration.code,this.declaration.hidden),this.registerSelfToMetadataManager(),e.appendChild(t)}onUnmount(e){super.onUnmount(e),this.unregisterSelfFromMetadataManager(),Et(e,`js view field`)}},jY=class extends IJ{renderChildType;errorCollection;viewField;declarationString;declaration;constructor(e,t,n,r,i){super(e,t,n),this.renderChildType=r,this.declaration=i,this.declarationString=i.declarationString,this.errorCollection=new Cn(this.getUuid()),this.errorCollection.merge(i.errorCollection)}hasArgument(e){return this.getArguments(e).length>0}getArgument(e){return this.getArguments(e).at(0)}getArguments(e){if(this.declaration.errorCollection.hasErrors())throw new L({errorLevel:P.ERROR,effect:`an not retrieve arguments`,cause:`viewFieldDeclaration has errors`});return this.declaration.argumentContainer.getAll(e)}getDeclaration(){return this.declaration}createViewField(){if(!this.errorCollection.hasErrors())try{this.viewField=this.mb.viewFieldFactory.createViewField(this)}catch(e){this.errorCollection.add(e)}!this.errorCollection.hasErrors()&&!this.viewField&&this.errorCollection.add(new L({errorLevel:P.CRITICAL,effect:`can't render view field`,cause:`view field is undefined`}))}createErrorIndicator(e){this.mb.internal.createErrorIndicator(e,{errorCollection:this.errorCollection,errorText:`Errors caused the creation of the field to fail. Sometimes one error only occurs because of another.`,warningText:`Warnings will not cause the creation of a field to fail, but they indicate that a part of the declaration was invalid or uses deprecated functionality.`,code:this.declarationString})}onMount(e){if(super.onMount(e),Dt.empty(e),Dt.addClass(e,`mb-view`),this.createViewField(),this.errorCollection.hasErrors()){this.createErrorIndicator(e);return}let t=document.createElement(`div`);Dt.addClass(t,`mb-view-wrapper`);try{this.viewField?.mount(t)}catch(e){this.errorCollection.add(e)}this.createErrorIndicator(e),e.append(t);let n=this.getArguments(An.CLASS);for(let e of n)Dt.addClasses(t,e.value);Dt.addClass(t,`mb-view-type-${this.declaration.viewFieldType}`),this.renderChildType===A.BLOCK?Dt.addClass(e,`mb-view-block`):Dt.addClass(e,`mb-view-inline`)}onUnmount(e){super.onUnmount(e),this.viewField?.unmount(),Et(e,`view field`)}},MY=class{mb;constructor(e){this.mb=e}createField(e,t,n,r=!0){if(Nw(GC({type:BJ,filePath:RJ,options:LC(),honorExcludedSetting:FC()}),{type:e,filePath:t,options:n,honorExcludedSetting:r}),this.mb.file.isExcludedFromRendering(t)&&r)return this.createExcludedMountable(t);if(e===j.INPUT)return this.createInputFieldMountable(t,n);if(e===j.VIEW)return this.createViewFieldMountable(t,n);if(e===j.JS_VIEW)return this.createJsViewFieldMountable(t,n);if(e===j.TABLE)return this.createTableMountable(t,n);if(e===j.BUTTON_GROUP)return this.createButtonGroupMountable(t,n);if(e===j.BUTTON)return this.createButtonMountable(t,n);if(e===j.EMBED)return this.createEmbedMountable(t,n);if(e===j.EXCLUDED)return this.createExcludedMountable(t);throw Error(`Unknown field type: ${e}`)}createInlineFieldFromString(e,t,n,r=A.INLINE,i,a=!0){Nw(GC({fieldString:lC(),filePath:RJ,scope:UJ.optional(),renderChildType:zJ,honorExcludedSetting:FC()}),{fieldString:e,filePath:t,scope:n,renderChildType:r,honorExcludedSetting:a});let o=this.isInlineFieldDeclarationAndGetType(e);if(o===void 0)throw new L({errorLevel:P.CRITICAL,effect:`failed to create inline field`,cause:`Invalid inline mdrc type "${o}"`});return this.createInlineFieldOfTypeFromString(o,e,t,n,r,i,a)}createInlineFieldOfTypeFromString(e,t,n,r,i=A.INLINE,a,o=!0){if(Nw(GC({type:BJ,declaration:lC(),filePath:RJ,scope:UJ.optional(),renderChildType:zJ,honorExcludedSetting:FC()}),{type:e,declaration:t,filePath:n,scope:r,renderChildType:i,honorExcludedSetting:o}),this.mb.file.isExcludedFromRendering(n)&&o)return this.createExcludedMountable(n);if(e===j.INPUT)return this.createInputFieldMountable(n,{renderChildType:i,declaration:t,scope:r});if(e===j.VIEW)return this.createViewFieldMountable(n,{renderChildType:i,declaration:t,scope:r});if(e===j.BUTTON_GROUP)return this.createButtonGroupMountable(n,{renderChildType:i,declaration:t,position:a});throw new L({errorLevel:P.CRITICAL,effect:`failed to create inline field`,cause:`Invalid inline mdrc type "${e}"`})}createInputFieldMountable(e,t){Nw(GC({filePath:RJ,options:iY}),{filePath:e,options:t});let n=St(),r;return r=typeof t.declaration==`string`?this.mb.inputFieldParser.fromStringAndValidate(t.declaration,e,t.scope):this.mb.inputFieldParser.fromSimpleDeclarationAndValidate(t.declaration,e,t.scope),new yY(this.mb,n,e,t.renderChildType,r)}createViewFieldMountable(e,t){Nw(GC({filePath:RJ,options:aY}),{filePath:e,options:t});let n=St(),r;return r=typeof t.declaration==`string`?this.mb.viewFieldParser.fromStringAndValidate(t.declaration,e,t.scope):this.mb.viewFieldParser.fromSimpleDeclarationAndValidate(t.declaration,e,t.scope),new jY(this.mb,n,e,t.renderChildType,r)}createJsViewFieldMountable(e,t){Nw(GC({filePath:RJ,options:oY}),{filePath:e,options:t});let n=St(),r;return r=typeof t.declaration==`string`?this.mb.jsViewFieldParser.fromStringAndValidate(t.declaration,e):this.mb.jsViewFieldParser.fromSimpleDeclarationAndValidate(t.declaration,e),new AY(this.mb,n,e,r)}createTableMountable(e,t){Nw(GC({filePath:RJ,options:sY}),{filePath:e,options:t});let n=St();return new kY(this.mb,n,e,t.bindTarget,t.tableHead,t.columns)}createButtonGroupMountable(e,t){Nw(GC({filePath:RJ,options:cY}),{filePath:e,options:t});let n=St(),r;return r=typeof t.declaration==`string`?this.mb.buttonParser.fromGroupString(t.declaration):this.mb.buttonParser.validateGroup(t.declaration),new hY(this.mb,n,e,r,t.renderChildType,t.position)}createButtonMountable(e,t){Nw(GC({filePath:RJ,options:lY}),{filePath:e,options:t});let n=St(),r;return r=typeof t.declaration==`string`?this.mb.buttonParser.fromString(t.declaration):this.mb.buttonParser.validate(t.declaration),new gY(this.mb,n,e,r,t.position,t.isPreview)}createEmbedMountable(e,t){Nw(GC({filePath:RJ,options:uY}),{filePath:e,options:t});let n=St();return new _Y(this.mb,n,e,t.depth,t.content)}createExcludedMountable(e){Nw(GC({filePath:RJ}),{filePath:e});let t=St();return new vY(this.mb,t,e)}getInlineFieldDeclarationPrefix(e){if(Nw(GC({fieldType:BJ}),{fieldType:e}),e===j.INPUT)return`INPUT`;if(e===j.VIEW)return`VIEW`;if(e===j.BUTTON_GROUP)return`BUTTON`;throw new L({errorLevel:P.CRITICAL,effect:`failed to get declaration prefix`,cause:`Invalid inline mdrc type "${e}"`})}isInlineFieldDeclaration(e,t){Nw(GC({fieldType:BJ,str:lC()}),{fieldType:e,str:t});let n=this.getInlineFieldDeclarationPrefix(e)+`[`;return t.startsWith(n)&&t.endsWith(`]`)}isInlineFieldDeclarationAndGetType(e){if(Nw(GC({str:lC()}),{str:e}),e.endsWith(`]`))for(let t of Object.values(j)){if(!N(t))continue;let n=this.getInlineFieldDeclarationPrefix(t)+`[`;if(e.startsWith(n))return t}}createSignal(e){return new Zs(e)}createBindTarget(e,t,n,r=!1){return Nw(GC({storageType:lC(),storagePath:lC(),property:lC().array(),listenToChildren:FC()}),{storageType:e,storagePath:t,property:n,listenToChildren:r}),{storageType:e,storagePath:t,storageProp:OY(n),listenToChildren:r}}parseBindTarget(e,t,n){return Nw(GC({declarationString:lC(),filePath:RJ,scope:UJ.optional()}),{declarationString:e,filePath:t,scope:n}),this.mb.bindTargetParser.fromStringAndValidate(e,t,n)}setMetadata(e,t){Nw(GC({bindTarget:ZJ}),{bindTarget:e}),this.mb.metadataManager.write(t,e)}getMetadata(e){return Nw(GC({bindTarget:ZJ}),{bindTarget:e}),this.mb.metadataManager.read(e)}updateMetadata(e,t){Nw(GC({bindTarget:ZJ,updateFn:Aw()}),{bindTarget:e,updateFn:t});let n=t(this.mb.metadataManager.read(e));this.mb.metadataManager.write(n,e)}subscribeToMetadata(e,t,n){Nw(GC({bindTarget:ZJ,lifecycleHook:this.mb.internal.getLifecycleHookValidator(),callback:Aw()}),{bindTarget:e,lifecycleHook:t,callback:n});let r=St(),i=new Zs(void 0);i.registerListener({callback:n});let a=this.mb.metadataManager.subscribe(r,i,e,()=>{i.unregisterAllListeners()});t.register(()=>{a.unsubscribe()})}createNotePosition(e,t){return Nw(GC({lineStart:jC(),lineEnd:jC()}),{lineStart:e,lineEnd:t}),new M({lineStart:e,lineEnd:t})}mathJSImport(e,t){this.mb.math.import(e,t)}},NY=class extends f.WidgetType{mb;type;content;filePath;parentComponent;renderChild;constructor(e,t,n,r,i){super(),this.type=e,this.content=t,this.filePath=n,this.parentComponent=r,this.mb=i}eq(e){return e.content===this.content}toDOM(e){let t=document.createElement(`span`);t.addClass(`cm-inline-code`);let n=this.mb.api.createInlineFieldOfTypeFromString(this.type,this.content,this.filePath,void 0);return this.renderChild=this.mb.api.wrapInMDRC(n,t,this.parentComponent),t}destroy(e){this.renderChild?.unload(),super.destroy(e)}},PY=class extends u.MarkdownRenderChild{mb;mountable;constructor(e,t,n){super(n),this.mb=e,this.mountable=t,this.mountable.registerUnmountCb(()=>{this.unload()})}onload(){this.containerEl.addClass(`interactive-child`),this.mountable.mount(this.containerEl),super.onload()}onunload(){this.mountable.isMounted()&&this.mountable.unmount(),super.onunload()}};function FY(e){return e.dependencyManager.checkDependency(`dataview`).api}function IY(e){return e.dependencyManager.checkDependency(`js-engine`).api}var LY=function(e){return e[e.CreateNewFromTemplate=0]=`CreateNewFromTemplate`,e[e.AppendActiveFile=1]=`AppendActiveFile`,e[e.OverwriteFile=2]=`OverwriteFile`,e[e.OverwriteActiveFile=3]=`OverwriteActiveFile`,e[e.DynamicProcessor=4]=`DynamicProcessor`,e[e.StartupTemplate=5]=`StartupTemplate`,e}({});function RY(e){return e.dependencyManager.checkDependency(`templater-obsidian`).templater}var zY=GC({addChild:Aw()}),BY=class extends MY{omb;constructor(e){super(e),this.omb=e}wrapInMDRC(e,t,n){Nw(GC({field:WJ,containerEl:HJ,component:zY}),{field:e,containerEl:t,component:n});let r=new PY(this.omb,e,t);return n.addChild(r),r}constructMDRCWidget(e,t,n,r){if(N(e))return new NY(e,t,n,r,this.omb);throw new L({errorLevel:P.CRITICAL,effect:`failed to construct mdrc`,cause:`Invalid inline field type "${e}"`})}reactiveMetadata(e,t,n){Nw(GC({bindTargets:ZJ.array(),lifecycleHook:this.mb.internal.getLifecycleHookValidator(),callback:Aw()}),{bindTargets:e,lifecycleHook:t,callback:n});let r=IY(this.omb),i=St(),a=e.map(()=>new Zs(void 0)),o=()=>Promise.resolve(),s=this.mb.metadataManager.subscribeEffect(i,e,a,()=>o(),()=>{});t.register(()=>s.unsubscribe());let c=r.reactive(n,...a.map(e=>e.get()));return o=()=>c.refresh(...a.map(e=>e.get())),c}},VY=class{mb;constructor(e){this.mb=e}getFrontmatterLocation(e){let t=e.split(` +`);if(t.at(0)===`---`){for(let e=1;et(e))}async create(e,t,n,r=!1,i=!1){let a=this.app.vault.getAvailablePath((0,u.normalizePath)(e+`/`+t),n),o=await this.app.vault.create(a,``);return r&&await this.openInSourceMode(o,i),o.path}getAllFiles(){return this.app.vault.getAllLoadedFiles().filter(e=>e instanceof u.TFile).map(e=>e.path)}getAllFolders(){return this.app.vault.getAllLoadedFiles().filter(e=>e instanceof u.TFolder).map(e=>e.path)}async open(e,t,n){this.app.workspace.openLinkText(e,t,n)}async openInSourceMode(e,t){let n=this.app.workspace.getLeaf(t?`tab`:!1);n&&await n.openFile(e,{state:{mode:`source`}})}getPathByName(e,t=``){return this.app.metadataCache.getFirstLinkpathDest(e,t)?.path}},UY=q(`
`),WY=q(`
`),GY=q(`
`);function KY(e,t){Yr(t,!0);let n=Ui(()=>rE(t.month,t.year));function r(e){e&&t.dateChange(rc(new Date(t.year,t.month,e)))}function i(e,t){e.key===` `&&r(t)}var a=GY(),o=U(a);os(o,21,aE,ns,(e,t)=>{var n=UY(),r=U(n),i=U(r,!0);H(r),H(n),Ra(()=>Jo(i,K(t))),J(e,n)}),H(o);var s=G(o,2);os(s,21,()=>K(n),ns,(e,n)=>{var a=WY();let o;var s=U(a),c=U(s,!0);H(s),H(a),Ra(e=>{o=xs(a,1,`mb-calendar-cell`,null,o,e),Jo(c,K(n)||``)},[()=>({"mb-calendar-highlight":K(n),"mb-calendar-content-cell":K(n),"mb-calendar-selected":t.selectedDate?.year()===t.year&&t.selectedDate?.month()===t.month&&t.selectedDate?.date()===K(n)})]),Io(`click`,a,()=>r(K(n))),Io(`keydown`,a,e=>i(e,K(n))),J(e,a)}),H(s),H(a),J(e,a),Xr()}Lo([`click`,`keydown`]);var qY=q(`
`);function JY(e,t){Yr(t,!0);let n=Ws(t,`selectedDate`,23,rc),r=ea(0),i=ea(0);Ma(()=>{if(n())na(r,n().month(),!0),na(i,n().year(),!0);else{let e=rc();na(r,e.month(),!0),na(i,e.year(),!0)}});function a(){if(K(r)===11){na(r,0),na(i,K(i)+1);return}na(r,K(r)+1)}function o(){if(K(r)===0){na(r,11),na(i,K(i)-1);return}na(r,K(r)-1)}function s(e){let t=e.target.value,n=Number.parseInt(t);Number.isNaN(n)||na(i,n,!0)}function c(e){n(e),t.dateChangeCallback(e)}function l(){n(null),t.dateChangeCallback(null)}function u(){n(rc()),t.dateChangeCallback(n())}var d=qY(),f=U(d),p=U(f),m=G(p,2),h=U(m),g=U(h,!0);H(h);var _=G(h,2);Ms(_),H(m);var v=G(m,2);H(f);var y=G(f,2);KY(y,{dateChange:c,get month(){return K(r)},get year(){return K(i)},get selectedDate(){return n()}});var b=G(y,2),x=U(b),S=G(x,2);H(b),H(d),Ra((e,t)=>{Jo(g,e),Ns(_,t)},[()=>nE(K(r)),()=>K(i).toString()]),Io(`click`,p,o),Io(`input`,_,s),Io(`click`,v,a),Io(`click`,x,l),Io(`click`,S,u),J(e,d),Xr()}Lo([`click`,`input`]);var YY=class extends Ys{modal;setModal(e){this.modal=e}closeModal(){if(this.modal!==void 0)this.modal.close();else throw new L({errorLevel:P.CRITICAL,effect:`Failed to close modal`,cause:`Modal reference in ModalContent is undefined`})}},XY=q(`
`);function ZY(e,t){let n=Ws(t,`name`,3,``),r=Ws(t,`description`,3,``),i=Ws(t,`heading`,3,!1),a=Ws(t,`vertical`,3,!1);var o=XY();let s;var c=U(o),l=U(c),u=U(l,!0);H(l);var d=G(l,2),f=U(d,!0);H(d),H(c);var p=G(c,2);let m;var h=U(p),g=e=>{var n=qo();fs(W(n),()=>t.children),J(e,n)};ts(h,e=>{t.children&&e(g)}),H(p),H(o),Ra(()=>{s=xs(o,1,`setting-item`,null,s,{"setting-item-heading":i(),"mb-vertical":a()}),Jo(u,n()),Jo(f,r()),m=xs(p,1,`setting-item-control`,null,m,{"mb-vertical-control":a()})}),J(e,o)}function QY(e,t){Yr(t,!0);let n=Ws(t,`action`,15);function r(){t.mb.internal.openCommandSelectModal(e=>{n(n().command=e.id,!0)})}{let t=Ui(()=>n().command||`none`);ZY(e,{get name(){return`Command: ${K(t)??``}`},description:`The command to execute when this action runs.`,children:(e,t)=>{Dh(e,{get variant(){return Nt.PRIMARY},onclick:()=>r(),children:(e,t)=>{Ir(),J(e,Ko(`Change`))},$$slots:{default:!0}})},$$slots:{default:!0}})}Xr()}var $Y=q(`
`);function eX(e,t){Yr(t,!0);let n=Ws(t,`checked`,15),r=Ui(()=>n()??!1);var i=$Y();let a;var o=U(i);Ms(o),H(i),Ra(()=>{a=xs(i,1,`checkbox-container`,null,a,{"is-enabled":K(r)}),Fs(i,`aria-checked`,K(r)),Ps(o,K(r))}),Io(`click`,i,()=>n(!K(r))),Io(`keydown`,i,e=>{e.key===` `&&n(!K(r))}),J(e,i),Xr()}Lo([`click`,`keydown`]);var tX=q(``),nX=q(` `,1);function rX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);function r(){t.mb.internal.openFolderSelectModal(e=>{n(n().folderPath=e,!0)})}var i=nX(),a=W(i);{let e=Ui(()=>n().folderPath||`none`);ZY(a,{get name(){return`Folder: ${K(e)??``}`},description:`The folder to create a new note in.`,children:(e,t)=>{Dh(e,{get variant(){return Nt.PRIMARY},onclick:()=>r(),tooltip:`Select from vault`,children:(e,t)=>{Ir(),J(e,Ko(`Change`))},$$slots:{default:!0}})},$$slots:{default:!0}})}var o=G(a,2);{let e=Ui(()=>n().fileName||`default`);ZY(o,{get name(){return`File name: ${K(e)??``}`},description:`The file name of the new note.`,children:(e,t)=>{var r=tX();Ms(r),zs(r,()=>n().fileName,e=>n(n().fileName=e,!0)),J(e,r)},$$slots:{default:!0}})}var s=G(o,2);ZY(s,{name:`Open note`,description:`Whether to open the new note after this action ran.`,children:(e,t)=>{eX(e,{get checked(){return n().openNote},set checked(e){n(n().openNote=e,!0)}})},$$slots:{default:!0}}),ZY(G(s,2),{name:`Open if note already exists`,description:`Whether to open the note instead of creating a new one if the note already exists.`,children:(e,t)=>{eX(e,{get checked(){return n().openIfAlreadyExists},set checked(e){n(n().openIfAlreadyExists=e,!0)}})},$$slots:{default:!0}}),J(e,i),Xr()}function iX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);function r(){t.mb.internal.openMarkdownFileSelectModal(e=>{n(n().templateFile=e,!0)})}{let t=Ui(()=>n().templateFile||`default`);ZY(e,{get name(){return`File path: ${K(t)??``}`},description:`The path to the templater file, relative to the vault root.`,children:(e,t)=>{Dh(e,{get variant(){return Nt.PRIMARY},onclick:()=>r(),tooltip:`Select from vault`,children:(e,t)=>{Ir(),J(e,Ko(`Change`))},$$slots:{default:!0}})},$$slots:{default:!0}})}Xr()}var aX=q(`
`,1);function oX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);var r=aX(),i=W(r);ZY(i,{name:`JS code`,description:`The JavaScript code to run.`});var a=G(i,2),o=U(a);Sa(o),H(a),zs(o,()=>n().code,e=>n(n().code=e,!0)),J(e,r),Xr()}var sX=q(``);function cX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);ZY(e,{name:`Text`,description:`The text to input at the cursor.`,children:(e,t)=>{var r=sX();Ms(r),zs(r,()=>n().str,e=>n(n().str=e,!0)),J(e,r)},$$slots:{default:!0}}),Xr()}var lX=q(``),uX=q(`
`,1);function dX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);var r=uX(),i=W(r);ZY(i,{name:`Line`,description:`The line number to insert at.`,children:(e,t)=>{var r=lX();Ms(r),zs(r,()=>n().line,e=>n(n().line=e,!0)),J(e,r)},$$slots:{default:!0}});var a=G(i,2);ZY(a,{name:`Text to insert`,description:`The text to insert into the note.`});var o=G(a,2),s=U(o);Sa(s),H(o),zs(s,()=>n().value,e=>n(n().value=e,!0)),J(e,r),Xr()}function fX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);function r(){t.mb.internal.openFilteredFileSelectModal(e=>{n(n().file=e,!0)},e=>e.endsWith(`.js`))}ZY(e,{name:`JS file`,description:`The JavaScript file to run.`,children:(e,t)=>{Dh(e,{get variant(){return Nt.PRIMARY},onclick:()=>r(),tooltip:`Select from vault`,children:(e,t)=>{Ir(),J(e,Ko(`Change`))},$$slots:{default:!0}})},$$slots:{default:!0}}),Xr()}var pX=q(` `,1),mX=q(` `,1);function hX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);function r(){t.mb.internal.openMarkdownFileSelectModal(e=>{n(n().link=e,!0)})}var i=mX(),a=W(i);ZY(a,{name:`Link`,description:`The link to open.`,children:(e,i)=>{var a=pX(),o=W(a);Ms(o),Dh(G(o,2),{get variant(){return Nt.PRIMARY},onclick:()=>r(),tooltip:`Select from vault`,children:(e,n)=>{ph(e,{iconName:`list`,get mb(){return t.mb}})},$$slots:{default:!0}}),zs(o,()=>n().link,e=>n(n().link=e,!0)),J(e,a)},$$slots:{default:!0}}),ZY(G(a,2),{name:`New tab`,description:`Whether to open the link in a new tab.`,children:(e,t)=>{eX(e,{get checked(){return n().newTab},set checked(e){n(n().newTab=e,!0)}})},$$slots:{default:!0}}),J(e,i),Xr()}var gX=q(``),_X=q(``),vX=q(`
`,1);function yX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);var r=vX(),i=W(r);ZY(i,{name:`Regexp`,description:`The regexp to find replacements.`,children:(e,t)=>{var r=gX();Ms(r),zs(r,()=>n().regexp,e=>n(n().regexp=e,!0)),J(e,r)},$$slots:{default:!0}});var a=G(i,2);ZY(a,{name:`Regexp flags`,description:`The regexp flags for this regexp.`,children:(e,t)=>{var r=_X();Ms(r),zs(r,()=>n().regexpFlags,e=>n(n().regexpFlags=e,!0)),J(e,r)},$$slots:{default:!0}});var o=G(a,2);ZY(o,{name:`Replacement text`,description:`The text to replace the button with.`});var s=G(o,2),c=U(s);Sa(c),H(s),zs(c,()=>n().replacement,e=>n(n().replacement=e,!0)),J(e,r),Xr()}var bX=q(``),xX=q(``),SX=q(`
`,1);function CX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);var r=SX(),i=W(r);ZY(i,{name:`Line from`,description:`The line that marks the start of the area to replace.`,children:(e,t)=>{var r=bX();Ms(r),zs(r,()=>n().fromLine,e=>n(n().fromLine=e,!0)),J(e,r)},$$slots:{default:!0}});var a=G(i,2);ZY(a,{name:`Line to`,description:`The line that marks the end of the area to replace.`,children:(e,t)=>{var r=xX();Ms(r),zs(r,()=>n().toLine,e=>n(n().toLine=e,!0)),J(e,r)},$$slots:{default:!0}});var o=G(a,2);ZY(o,{name:`Replacement text`,description:`The text to replace the note section.`});var s=G(o,2),c=U(s);Sa(c),H(s),zs(c,()=>n().replacement,e=>n(n().replacement=e,!0)),J(e,r),Xr()}var wX=q(`
`,1);function TX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);var r=wX(),i=W(r);ZY(i,{name:`Replacement text`,description:`The text to replace the match with.`});var a=G(i,2),o=U(a);Sa(o),H(a),zs(o,()=>n().replacement,e=>n(n().replacement=e,!0)),J(e,r),Xr()}var EX=q(``);function DX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);ZY(e,{name:`Sleep time`,description:`The time to sleep in milliseconds.`,children:(e,t)=>{var r=EX();Ms(r),zs(r,()=>n().ms,e=>n(n().ms=e,!0)),J(e,r)},$$slots:{default:!0}}),Xr()}var OX=q(``),kX=q(` `,1);function AX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);function r(e){t.mb.internal.openFileSelectModal(t=>{e.templateFile=t})}function i(e){t.mb.internal.openFolderSelectModal(t=>{e.folderPath=t})}var a=kX(),o=W(a);{let e=Ui(()=>n().templateFile||`none`);ZY(o,{get name(){return`Template file: ${K(e)??``}`},description:`The template file to create a new note of.`,children:(e,t)=>{Dh(e,{get variant(){return Nt.PRIMARY},onclick:()=>r(n()),tooltip:`Select from vault`,children:(e,t)=>{Ir(),J(e,Ko(`Change`))},$$slots:{default:!0}})},$$slots:{default:!0}})}var s=G(o,2);{let e=Ui(()=>n().folderPath||`none`);ZY(s,{get name(){return`Folder: ${K(e)??``}`},description:`The folder to create a new note in.`,children:(e,t)=>{Dh(e,{get variant(){return Nt.PRIMARY},onclick:()=>i(n()),tooltip:`Select from vault`,children:(e,t)=>{Ir(),J(e,Ko(`Change`))},$$slots:{default:!0}})},$$slots:{default:!0}})}var c=G(s,2);{let e=Ui(()=>n().fileName||`default`);ZY(c,{get name(){return`File name: ${K(e)??``}`},description:`The file name of the new note.`,children:(e,t)=>{var r=OX();Ms(r),zs(r,()=>n().fileName,e=>n(n().fileName=e,!0)),J(e,r)},$$slots:{default:!0}})}var l=G(c,2);ZY(l,{name:`Open note`,description:`Whether to open the new note after this action ran.`,children:(e,t)=>{eX(e,{get checked(){return n().openNote},set checked(e){n(n().openNote=e,!0)}})},$$slots:{default:!0}}),ZY(G(l,2),{name:`Open if note already exists`,description:`Whether to open the note instead of creating a new one if the note already exists.`,children:(e,t)=>{eX(e,{get checked(){return n().openIfAlreadyExists},set checked(e){n(n().openIfAlreadyExists=e,!0)}})},$$slots:{default:!0}}),J(e,a),Xr()}var jX=q(``),MX=q(``),NX=q(` `,1);function PX(e,t){Yr(t,!0);let n=Ws(t,`action`,15);var r=NX(),i=W(r);ZY(i,{name:`Metadata property`,description:`The metadata property in form of a bind target.`,children:(e,t)=>{var r=jX();Ms(r),zs(r,()=>n().bindTarget,e=>n(n().bindTarget=e,!0)),J(e,r)},$$slots:{default:!0}});var a=G(i,2);ZY(a,{name:`Value`,description:`The new value.`,children:(e,t)=>{var r=MX();Ms(r),zs(r,()=>n().value,e=>n(n().value=e,!0)),J(e,r)},$$slots:{default:!0}}),ZY(G(a,2),{name:`Evaluate`,description:`Whether to evaluate the value as a JS expression.`,children:(e,t)=>{eX(e,{get checked(){return n().evaluate},set checked(e){n(n().evaluate=e,!0)}})},$$slots:{default:!0}}),J(e,r),Xr()}var FX=q(`
`);function IX(e,t){Yr(t,!0);let n=Ws(t,`reverse`,3,!1),r=Ws(t,`stretchChildren`,3,!1),i=Ui(()=>[n()?`mb-flex-row-reverse`:`mb-flex-row`,r()?`mb-flex-row-stretch`:``].join(` `));var a=FX();fs(U(a),()=>t.children),H(a),Ra(()=>xs(a,1,hs(K(i)))),J(e,a),Xr()}var LX=q(``);function RX(e,t){var n=LX();fs(U(n),()=>t.children),H(n),J(e,n)}var zX=q(``),BX=q(``),VX=q(``),HX=q(``),UX=q(``),WX=q(``),GX=q(` `,1),KX=q(``),qX=q(``),JX=q(``),YX=q(`
`,1),XX=q(` `,1),ZX=q(` `,1),QX=q(`

Actions

Add action of type

Preview

`,1);function $X(e,t){Yr(t,!0);let n=sa(t.buttonConfig),r,i,a=ea(sa(Pt.COMMAND));Ks(()=>{i?.unmount()}),Ma(()=>{i?.unmount(),r&&(Dt.empty(r),i=new pY(t.mb,Gr(n),``,A.BLOCK,void 0,!1,!0),i.mount(r))});function o(){n.actions?.push(t.mb.buttonActionRunner.createDefaultAction(K(a)))}function s(e){n.actions?.splice(e,1)}function c(e){return t.mb.buttonActionRunner.getActionLabel(e)}function l(e,r){if(n.actions===void 0)return;let i=[];e>0&&i.push({name:`Move up`,icon:`arrow-up`,onclick:()=>{if(n.actions===void 0)return;let t=n.actions[e-1];n.actions[e-1]=n.actions[e],n.actions[e]=t}}),e{if(n.actions===void 0)return;let t=n.actions[e+1];n.actions[e+1]=n.actions[e],n.actions[e]=t}}),i.push({name:`Remove`,icon:`x`,warning:!0,onclick:()=>s(e)}),t.mb.internal.createContextMenu(i).showWithEvent(r)}function u(){t.mb.internal.openImageFileSelectModal(e=>{n.backgroundImage=e})}function d(){n.backgroundImage=void 0}var f=QX(),p=W(f);ZY(p,{name:`Label`,description:`The label shown on the button.`,children:(e,t)=>{var r=zX();Ms(r),zs(r,()=>n.label,e=>n.label=e),J(e,r)},$$slots:{default:!0}});var m=G(p,2);ZY(m,{name:`Icon`,description:`The icon shown on the button. If left empty, no icon will show`,children:(e,t)=>{var r=BX();Ms(r),zs(r,()=>n.icon,e=>n.icon=e),J(e,r)},$$slots:{default:!0}});var h=G(m,2);ZY(h,{name:`Style`,description:`The style variant of the button`,children:(e,t)=>{var r=HX();os(r,21,()=>Object.values(Nt),ns,(e,t)=>{var n=VX(),r=U(n,!0);H(n);var i={};Ra(()=>{Jo(r,K(t)),i!==(i=K(t))&&(n.value=(n.__value=K(t))??``)}),J(e,n)}),H(r),Es(r,()=>n.style,e=>n.style=e),J(e,r)},$$slots:{default:!0}});var g=G(h,2);ZY(g,{name:`CSS classes`,description:`A list of CSS classes to add to the button. Multiple classes should be separated by a space.`,children:(e,t)=>{var r=UX();Ms(r),zs(r,()=>n.class,e=>n.class=e),J(e,r)},$$slots:{default:!0}});var _=G(g,2);ZY(_,{name:`CSS styles`,description:`CSS styles to directly apply to the button.`,children:(e,t)=>{var r=WX();Ms(r),zs(r,()=>n.cssStyle,e=>n.cssStyle=e),J(e,r)},$$slots:{default:!0}});var v=G(_,2);ZY(v,{name:`Background image`,description:`A background image to use in the button.`,children:(e,r)=>{var i=GX(),a=W(i),o=U(a,!0);H(a);var s=G(a,2);Dh(s,{get variant(){return Nt.PRIMARY},onclick:()=>u(),tooltip:`Select from vault`,children:(e,t)=>{Ir(),J(e,Ko(`Change`))},$$slots:{default:!0}}),Dh(G(s,2),{get variant(){return Nt.DEFAULT},onclick:()=>d(),tooltip:`Reset to none`,children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`x`})},$$slots:{default:!0}}),Ra(()=>Jo(o,n.backgroundImage||`none`)),J(e,i)},$$slots:{default:!0}});var y=G(v,2);ZY(y,{name:`Tooltip`,description:`A tooltip to show when hovering the button. If not set, the button label will be shown instead.`,children:(e,t)=>{var r=KX();Ms(r),zs(r,()=>n.tooltip,e=>n.tooltip=e),J(e,r)},$$slots:{default:!0}});var b=G(y,2);ZY(b,{name:`ID`,description:`An ID that allows the button to be referenced in inline buttons.`,children:(e,t)=>{var r=qX();Ms(r),zs(r,()=>n.id,e=>n.id=e),J(e,r)},$$slots:{default:!0}});var x=G(b,2);ZY(x,{name:`Hidden`,description:`Whether to not render this button. This can be useful when using inline buttons.`,children:(e,t)=>{eX(e,{get checked(){return n.hidden},set checked(e){n.hidden=e}})},$$slots:{default:!0}});var S=G(x,4);os(S,21,()=>Object.values(Pt),ns,(e,t)=>{var n=JX(),r=U(n,!0);H(n);var i={};Ra(()=>{Jo(r,K(t)),i!==(i=K(t))&&(n.value=(n.__value=K(t))??``)}),J(e,n)}),H(S);var C=G(S,2);Dh(C,{get variant(){return Nt.PRIMARY},onclick:()=>o(),children:(e,t)=>{Ir(),J(e,Ko(`Add Action`))},$$slots:{default:!0}});var w=G(C,2),T=e=>{var r=qo();os(W(r),17,()=>n.actions??[],ns,(e,r,i)=>{var a=XX(),o=W(a);IX(o,{children:(e,n)=>{var a=YX(),o=W(a),s=U(o,!0);H(o),Dh(G(o,2),{get variant(){return Nt.PLAIN},onclick:e=>l(i,e),children:(e,n)=>{ph(e,{iconName:`more-vertical`,get mb(){return t.mb}})},$$slots:{default:!0}}),Ra(e=>Jo(s,e),[()=>c(K(r).type)]),J(e,a)},$$slots:{default:!0}});var s=G(o,2),u=e=>{QY(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(s,e=>{K(r).type===Pt.COMMAND&&e(u)});var d=G(s,2),f=e=>{hX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(d,e=>{K(r).type===Pt.OPEN&&e(f)});var p=G(d,2),m=e=>{fX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(p,e=>{K(r).type===Pt.JS&&e(m)});var h=G(p,2),g=e=>{cX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(h,e=>{K(r).type===Pt.INPUT&&e(g)});var _=G(h,2),v=e=>{DX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(_,e=>{K(r).type===Pt.SLEEP&&e(v)});var y=G(_,2),b=e=>{AX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(y,e=>{K(r).type===Pt.TEMPLATER_CREATE_NOTE&&e(b)});var x=G(y,2),S=e=>{PX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(x,e=>{K(r).type===Pt.UPDATE_METADATA&&e(S)});var C=G(x,2),w=e=>{rX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(C,e=>{K(r).type===Pt.CREATE_NOTE&&e(w)});var T=G(C,2),E=e=>{iX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(T,e=>{K(r).type===Pt.RUN_TEMPLATER_FILE&&e(E)});var D=G(T,2),O=e=>{CX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(D,e=>{K(r).type===Pt.REPLACE_IN_NOTE&&e(O)});var k=G(D,2),A=e=>{yX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(k,e=>{K(r).type===Pt.REGEXP_REPLACE_IN_NOTE&&e(A)});var j=G(k,2),M=e=>{TX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(j,e=>{K(r).type===Pt.REPLACE_SELF&&e(M)});var N=G(j,2),P=e=>{dX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(N,e=>{K(r).type===Pt.INSERT_INTO_NOTE&&e(P)});var F=G(N,2),I=e=>{oX(e,{get mb(){return t.mb},get action(){return n.actions[i]},set action(e){n.actions[i]=e}})};ts(F,e=>{K(r).type===Pt.INLINE_JS&&e(I)}),J(e,a)}),J(e,r)};ts(w,e=>{n.actions&&e(T)});var E=G(w,4);Us(E,e=>r=e,()=>r),RX(G(E,2),{children:(e,r)=>{var i=ZX(),a=W(i);Dh(a,{get variant(){return Nt.PRIMARY},onclick:()=>t.modal.okay(Gr(n)),children:(e,n)=>{Ir();var r=Ko();Ra(()=>Jo(r,t.modal.options.submitText)),J(e,r)},$$slots:{default:!0}}),Dh(G(a,2),{get variant(){return Nt.DEFAULT},onclick:()=>t.modal.cancel(),children:(e,t)=>{Ir(),J(e,Ko(`Cancel`))},$$slots:{default:!0}}),J(e,i)},$$slots:{default:!0}}),Es(S,()=>K(a),e=>na(a,e)),J(e,f),Xr()}var eZ=class extends YY{mb;component;options;constructor(e,t){super(),this.mb=e,this.options=t}onMount(e){Dt.empty(e),this.component&&$o(this.component),this.component=Yo($X,{target:e,props:{mb:this.mb,modal:this,buttonConfig:this.options.config??this.mb.buttonActionRunner.createDefaultButtonConfig()}})}onUnmount(e){Dt.empty(e),this.component&&$o(this.component)}okay(e){this.closeModal(),this.options.onOkay(e)}cancel(){this.closeModal()}},tZ=q(`
`);function nZ(e,t){Yr(t,!0);function n(e,n){e.key===` `&&t.onSelect(n)}var r=tZ(),i=U(r),a=G(i,2),o=U(a),s=U(o,!0);H(o),H(a),H(r),Ra(e=>{Fs(i,`src`,e),Fs(i,`alt`,t.image),Jo(s,t.image)},[()=>t.mb.internal.imagePathToUri(t.image)]),Io(`click`,r,()=>t.onSelect(t.image)),Io(`keydown`,r,e=>n(e,t.image)),J(e,r),Xr()}Lo([`click`,`keydown`]);var rZ=q(` `,1),iZ=q(`
`,1);function aZ(e,t){Yr(t,!0);let n=ea(``),r=t.mb.internal.createFuzzySearch(),i=Ui(()=>K(n)?(r.setSearch(K(n)),r.filterItems(t.options,e=>e.value)):t.options);var a=iZ(),o=W(a),s=U(o);Ms(s),H(o);var c=G(o,2);os(c,21,()=>K(i),ns,(e,n)=>{nZ(e,{get mb(){return t.mb},get image(){return K(n).value},get onSelect(){return t.onSelect}})}),H(c),RX(G(c,2),{children:(e,n)=>{var r=rZ(),i=W(r),a=e=>{Dh(e,{get variant(){return Nt.PRIMARY},onclick:()=>t.onSelect(void 0),children:(e,t)=>{Ir(),J(e,Ko(`Select none`))},$$slots:{default:!0}})};ts(i,e=>{t.canSelectNone&&e(a)}),Dh(G(i,2),{onclick:()=>t.onCancel(),children:(e,t)=>{Ir(),J(e,Ko(`Cancel`))},$$slots:{default:!0}}),J(e,r)},$$slots:{default:!0}}),zs(s,()=>K(n),e=>na(n,e)),J(e,a),Xr()}var oZ=class extends YY{component;createComponent;constructor(e){super(),this.createComponent=e}onMount(e){Dt.empty(e),this.component=this.createComponent(this,e)}onUnmount(e){this.component&&$o(this.component),Dt.empty(e)}},sZ=q(``),cZ=q(``),lZ=q(` `,1),uZ=q(`

`,1);function dZ(e,t){Yr(t,!0);let n=ea(sa(t.options.value));var r=uZ(),i=W(r),a=U(i,!0);H(i);var o=G(i,2),s=U(o),c=e=>{var t=sZ();Sa(t),zs(t,()=>K(n),e=>na(n,e)),J(e,t)},l=e=>{var t=cZ();Ms(t),zs(t,()=>K(n),e=>na(n,e)),J(e,t)};ts(s,e=>{t.options.multiline?e(c):e(l,-1)}),H(o),RX(G(o,2),{children:(e,r)=>{var i=lZ(),a=W(i);Dh(a,{get variant(){return Nt.PRIMARY},onclick:()=>t.options.onSubmit(Gr(K(n))),children:(e,t)=>{Ir(),J(e,Ko(`OK`))},$$slots:{default:!0}}),Dh(G(a,2),{onclick:()=>t.options.onCancel(),children:(e,t)=>{Ir(),J(e,Ko(`Cancel`))},$$slots:{default:!0}}),J(e,i)},$$slots:{default:!0}}),Ra(()=>Jo(a,t.options.subTitle)),J(e,r),Xr()}var fZ=class{mb;selectCallback;constructor(e,t){this.mb=e,this.selectCallback=t}onSelected(e){this.selectCallback(e)}},pZ=class extends fZ{getItemText(e){return e.name}getItemDescription(e){}getItems(){return this.mb.internal.getAllCommands()}},mZ=class extends fZ{filterFunction;constructor(e,t,n){super(e,t),this.filterFunction=n}getItemText(e){return e}getItemDescription(e){}getItems(){return this.filterFunction===void 0?this.mb.file.getAllFiles():this.mb.file.getAllFiles().filter(e=>this.filterFunction(e))}},hZ=class extends fZ{getItemText(e){return e}getItemDescription(e){}getItems(){return this.mb.file.getAllFolders()}},gZ=class extends fZ{ipf;constructor(e,t,n){super(e,t),this.ipf=n}getItemText(e){return e.displayValue}getItemDescription(e){return e.displayDescription}getItems(){return this.mb.internal.getSuggesterOptions(this.ipf)}},_Z=q(`
 
`),vZ=q(`Tip `),yZ=q(`
`,1),bZ=q(`Docs`),xZ=q(`Context
 
`),SZ=q(`
Cause
Effect
`),CZ=q(`
 
`);function wZ(e,t){Yr(t,!0);var n=qo(),r=W(n),i=e=>{var n=SZ(),r=U(n),i=U(r),a=U(i);H(i);var o=G(i);H(r);var s=G(r,2),c=e=>{var n=_Z(),r=U(n),i=U(r,!0);H(r),H(n),Ra(()=>Jo(i,t.error.positionContext)),J(e,n)};ts(s,e=>{t.error.positionContext&&e(c)});var l=G(s,2),u=U(l),d=U(u),f=G(U(d)),p=U(f,!0);H(f),H(d);var m=G(d),h=G(U(m)),g=U(h,!0);H(h),H(m);var _=G(m),v=e=>{var n=vZ(),r=G(U(n)),i=U(r,!0);H(r),H(n),Ra(()=>Jo(i,t.error.tip)),J(e,n)};ts(_,e=>{t.error.tip&&e(v)});var y=G(_),b=e=>{var n=bZ(),r=G(U(n));os(r,21,()=>t.error.docs,ns,(e,t)=>{var n=yZ(),r=W(n),i=U(r,!0);H(r),Ir(),Ra(()=>{Fs(r,`href`,K(t)),Jo(i,K(t))}),J(e,n)}),H(r),H(n),J(e,n)};ts(y,e=>{t.error.docs&&e(b)});var x=G(y),S=e=>{var n=xZ(),r=G(U(n)),i=U(r),a=U(i),o=U(a,!0);H(a),H(i),H(r),H(n),Ra(e=>Jo(o,e),[()=>JSON.stringify(t.error.context,null,4)]),J(e,n)};ts(x,e=>{t.error.context&&e(S)}),H(u),H(l),H(n),Ra(e=>{xs(i,1,hs(t.error.errorLevel===P.WARNING?`mb-warning-text`:`mb-error-text`)),Jo(a,`${t.error.errorLevel??``} + [${e??``}]`),Jo(o,` - ${t.error.effect??``}`),Jo(p,t.error.cause),Jo(g,t.error.effect)},[()=>t.error.getErrorType()]),J(e,n)},a=e=>{var n=CZ(),r=U(n),i=U(r),a=U(i,!0);H(i),H(r),H(n),Ra(()=>Jo(a,t.error.stack)),J(e,n)};ts(r,e=>{t.error instanceof I?e(i):e(a,-1)}),J(e,n),Xr()}var TZ=q(`

`),EZ=q(`
 
`),DZ=q(`

`),OZ=q(`
Errors
`,1),kZ=q(`

`),AZ=q(`
Warnings
`,1),jZ=q(` `,1);function MZ(e,t){Yr(t,!0);var n=jZ(),r=W(n),i=e=>{var n=TZ(),r=U(n,!0);H(n),Ra(()=>Jo(r,t.settings.text)),J(e,n)};ts(r,e=>{t.settings.text&&e(i)});var a=G(r,2),o=e=>{var n=EZ(),r=U(n),i=U(r,!0);H(r),H(n),Ra(()=>Jo(i,t.settings.code)),J(e,n)};ts(a,e=>{t.settings.code&&e(o)});var s=G(a,2),c=e=>{var n=OZ(),r=G(W(n),2),i=e=>{var n=DZ(),r=U(n,!0);H(n),Ra(()=>Jo(r,t.settings.errorText)),J(e,n)};ts(r,e=>{t.settings.errorText&&e(i)}),os(G(r,2),17,()=>t.settings.errorCollection.getErrors(),ns,(e,t)=>{wZ(e,{get error(){return K(t)}})}),J(e,n)},l=Ui(()=>t.settings.errorCollection.hasErrors());ts(s,e=>{K(l)&&e(c)});var u=G(s,2),d=e=>{var n=AZ(),r=G(W(n),2),i=e=>{var n=kZ(),r=U(n,!0);H(n),Ra(()=>Jo(r,t.settings.warningText)),J(e,n)};ts(r,e=>{t.settings.warningText&&e(i)}),os(G(r,2),17,()=>t.settings.errorCollection.getWarnings(),ns,(e,t)=>{wZ(e,{get error(){return K(t)}})}),J(e,n)},f=Ui(()=>t.settings.errorCollection.hasWarnings());ts(u,e=>{K(f)&&e(d)}),J(e,n),Xr()}var NZ=q(` [META_BIND_ERROR]`,1),PZ=Go(``),FZ=Go(``),IZ=q(`
`);function LZ(e,t){Yr(t,!0);function n(){t.mb.internal.openErrorCollectionViewModal(t.settings)}var r=qo(),i=W(r),a=e=>{var r=IZ(),i=U(r),a=e=>{var t=NZ();Ir(2),J(e,t)},o=Ui(()=>t.settings.errorCollection.hasErrors()),s=e=>{J(e,PZ())},c=Ui(()=>t.settings.errorCollection.hasWarnings()),l=e=>{J(e,FZ())};ts(i,e=>{K(o)?e(a):K(c)?e(s,1):e(l,-1)}),H(r),Io(`click`,r,()=>n()),Io(`keydown`,r,e=>{e.key===` `&&n()}),J(e,r)},o=Ui(()=>!t.settings.errorCollection.isEmpty());ts(i,e=>{K(o)&&e(a)}),J(e,r),Xr()}Lo([`click`,`keydown`]);var RZ=[`apng`,`avif`,`gif`,`jpg`,`jpeg`,`jfif`,`pjpeg`,`pjp`,`png`,`svg`,`webp`],zZ=RZ.map(e=>`.${e}`),BZ=class{mb;constructor(e){this.mb=e}openCommandSelectModal(e){this.createSearchModal(new pZ(this.mb,e)).open()}openFileSelectModal(e){this.createSearchModal(new mZ(this.mb,e)).open()}openFilteredFileSelectModal(e,t){this.createSearchModal(new mZ(this.mb,e,t)).open()}openMarkdownFileSelectModal(e){this.openFilteredFileSelectModal(e,e=>e.endsWith(`.md`))}openImageFileSelectModal(e){this.openFilteredFileSelectModal(e,e=>zZ.some(t=>e.endsWith(t)))}openFolderSelectModal(e){this.createSearchModal(new hZ(this.mb,e)).open()}openButtonBuilderModal(e){this.createModal(new eZ(this.mb,e),{title:`Meta Bind Button Builder`}).open()}openSuggesterModal(e,t){this.createSearchModal(new gZ(this.mb,t,e)).open()}openImageSuggesterModal(e,t,n){this.createModal(new oZ((r,i)=>Yo(aZ,{target:i,props:{mb:this.mb,options:this.getImageSuggesterOptions(e),canSelectNone:t,onSelect:e=>{n(e),r.closeModal()},onCancel:()=>{r.closeModal()}}})),{title:`Select an image from your Vault`,classes:[`mb-image-suggester-modal`]}).open()}openDatePickerModal(e,t){this.createModal(new oZ((n,r)=>Yo(JY,{target:r,props:{selectedDate:e,dateChangeCallback:e=>{t(e),n.closeModal()}}})),{title:`Meta Bind date picker`}).open()}openTextPromptModal(e){this.createModal(new oZ((t,n)=>Yo(dZ,{target:n,props:{options:{...e,onSubmit:n=>{e.onSubmit(n),t.closeModal()},onCancel:()=>{e.onCancel(),t.closeModal()}}}})),e).open()}openErrorCollectionViewModal(e){this.createModal(new oZ((t,n)=>Yo(MZ,{target:n,props:{settings:e}})),{title:`Meta Bind error overview`,classes:[`mb-error-collection-modal`,`markdown-rendered`]}).open()}createErrorIndicator(e,t){let n=Yo(LZ,{target:e,props:{mb:this.mb,settings:t}});return()=>{$o(n)}}},VZ=class{preparedSearch;constructor(){}setSearch(e){this.preparedSearch=(0,u.prepareFuzzySearch)(e)}filterItems(e,t){return this.preparedSearch?e.filter(e=>this.preparedSearch?.(t(e))?.score!=null):e}},HZ=class{value;displayValue;displayDescription;constructor(e,t,n){this.value=e,this.displayValue=t,this.displayDescription=n}valueAsString(){return this.value?.toString()??`null`}};function UZ(e){let t=[];for(let n of e.children)n instanceof u.TFile&&GZ(n.extension)&&t.push(new HZ(n.path,n.name)),n instanceof u.TFolder&&t.push(...UZ(n));return t}function WZ(e,t,n){let r=[];for(let t of n){let n=t.value;if(n.startsWith(`"`)&&n.endsWith(`"`))n=n.substring(1,n.length-1);else{let e=new z({errorLevel:P.ERROR,effect:`failed to get suggest options`,cause:`expected suggest option query for image suggester to start and end with double quotation marks`});new u.Notice(`meta-bind | ${e.message}`),console.warn(e);continue}let i;if(i=n===``||n===`.`?e.app.vault.getRoot():e.app.vault.getAbstractFileByPath(n),i==null){let e=new z({errorLevel:P.ERROR,effect:`failed to get suggest options`,cause:`expected suggest option query ${n} for image suggester to exist`});new u.Notice(`meta-bind | ${e.message}`),console.warn(e);continue}if(!(i instanceof u.TFolder)){let e=new z({errorLevel:P.ERROR,effect:`failed to get suggest options`,cause:`expected suggest option query ${t.value} for image suggester to be a folder`});new u.Notice(`meta-bind | ${e.message}`),console.warn(e);continue}r.push(...UZ(i))}for(let n of t){let t=dn(n.value);if(!t){let e=new z({errorLevel:P.ERROR,effect:`failed to get suggest options`,cause:`expected suggest option ${n.value} to be truthy`});new u.Notice(`meta-bind | ${e.message}`),console.warn(e);continue}let i=e.app.vault.getAbstractFileByPath(t);if(!i){let e=new z({errorLevel:P.ERROR,effect:`failed to get suggest options`,cause:`expected suggest option ${n.value} for image suggester to exist`});new u.Notice(`meta-bind | ${e.message}`),console.warn(e);continue}if(!(i instanceof u.TFile)){let e=new z({errorLevel:P.ERROR,effect:`failed to get suggest options`,cause:`expected suggest option ${n.value} for image suggester to be a file`});new u.Notice(`meta-bind | ${e.message}`),console.warn(e);continue}if(!GZ(i.extension)){let e=new z({errorLevel:P.ERROR,effect:`failed to get suggest options`,cause:`expected suggest option ${n.value} for image suggester to be an image file`});new u.Notice(`meta-bind | ${e.message}`),console.warn(e);continue}r.push(new HZ(i.path,i.name))}return r}function GZ(e){return RZ.contains(e)}function KZ(e,t){return WZ(e,t.mountable.getArguments(V.OPTION),t.mountable.getArguments(V.OPTION_QUERY))}var qZ=class extends u.Modal{content;options;constructor(e,t,n){super(e.app),this.options=n,this.content=t,t.setModal(this)}onOpen(){this.options?.title&&this.titleEl.setText(this.options.title),this.options?.classes&&Dt.addClasses(this.modalEl,this.options.classes),this.content.mount(this.contentEl)}onClose(){this.content.unmount()}},JZ=class extends u.FuzzySuggestModal{content;constructor(e,t){super(e.app),this.content=t}renderSuggestion(e,t){(0,u.renderResults)(t.createDiv(),this.content.getItemText(e.item),e.match);let n=this.content.getItemDescription(e.item);n&&(0,u.renderResults)(t.createEl(`small`,{cls:`mb-search-modal-element-description`}),n,{score:0,matches:[]})}getItems(){return this.content.getItems()}getItemText(e){return this.content.getItemText(e)}onChooseItem(e,t){this.content.onSelected(e)}};function YZ(e,t,n,r,i){let a=[];for(let e of n)a.push(new HZ(e.value,e.name,`option`));if(r.length>0){let n;try{n=FY(e)}catch(e){return new u.Notice(`meta-bind | Dataview needs to be installed and enabled to use suggest option queries. Check the console for more information.`),console.warn(`meta-bind | failed to get dataview api`,e),a}let o=GC({name:lC().min(1),path:lC().min(1)});for(let e of r)n.pages(e.value,t).forEach(e=>{try{let t=e.file;if(!o.safeParse(t).success)return;let n=kT(t.path,t.name,i);a.push(new HZ(n,t.name,`file: ${t.path}`))}catch(e){console.warn(`meta-bind | error while computing suggest options`,e)}})}return a}function XZ(e,t){let n=t.mountable.getArguments(V.OPTION),r=t.mountable.getArguments(V.OPTION_QUERY),i=t.mountable.getArgument(V.USE_LINKS);return YZ(e,t.mountable.getFilePath(),n,r,i===void 0?Dn.TRUE:i.value)}var ZZ=class{menu;constructor(){this.menu=new u.Menu}setItems(e){for(let t of e)this.menu.addItem(e=>{e.setTitle(t.name),t.icon&&e.setIcon(t.icon),t.warning&&e.setWarning(t.warning),e.onClick(t.onclick)})}show(e,t){this.menu.showAtPosition({x:e,y:t},document)}showWithEvent(e){this.menu.showAtMouseEvent(e),e.stopImmediatePropagation(),e.preventDefault()}},QZ=class{mb;containerEl;filePath;jsEngine;code;hidden;renderComponent;constructor(e,t,n,r,i){this.mb=e,this.containerEl=t,this.filePath=n,this.code=r,this.hidden=i,this.jsEngine=IY(this.mb),this.renderComponent=new u.Component}async evaluateCode(e){let t=await this.jsEngine.internal.getContextForMarkdownOther(this.filePath);return this.jsEngine.internal.execute({code:this.code,context:t,container:this.containerEl,component:this.renderComponent,contextOverrides:e})}async evaluate(e){try{Dt.empty(this.containerEl),Dt.removeClass(this.containerEl,`mb-error`),this.renderComponent.unload(),this.renderComponent=new u.Component,this.renderComponent.load();let t=await this.evaluateCode(e),n=this.jsEngine.internal.createRenderer(this.containerEl,this.filePath,this.renderComponent);return this.hidden||await n.render(t.result),n.convertToSimpleObject(t.result)}catch(e){e instanceof Error&&(this.containerEl.innerText=e.message,Dt.addClass(this.containerEl,`mb-error`));return}}unload(){this.renderComponent.unload()}},$Z=class extends BZ{omb;app;constructor(e){super(e),this.omb=e,this.app=e.app}getLifecycleHookValidator(){return Ow(u.Component)}getImageSuggesterOptions(e){return KZ(this.omb,e)}getSuggesterOptions(e){return XZ(this.omb,e)}async renderMarkdown(e,t,n){let r=new u.Component;return r.load(),await u.MarkdownRenderer.render(this.app,e,t,n,r),()=>r.unload()}executeCommandById(e){return this.app.commands.executeCommandById(e)}isJsEngineAvailable(){try{return IY(this.omb),!0}catch{return!1}}async jsEngineRunFile(e,t,n,r){let i=IY(this.omb),a=await i.internal.getContextForMarkdownCallingJSFile(t,e),o=new u.Component;return await i.internal.executeFile(e,{component:o,container:r,context:a,contextOverrides:n}),()=>o.unload()}async jsEngineRunCode(e,t,n,r){let i=IY(this.omb),a=await i.internal.getContextForMarkdownOther(t),o=new u.Component;return await i.internal.execute({code:e,component:o,container:r,context:a,contextOverrides:n}),()=>o.unload()}createJsRenderer(e,t,n,r){return new QZ(this.omb,e,t,n,r)}showNotice(e){new u.Notice(e)}parseYaml(e){return(0,u.parseYaml)(e)}stringifyYaml(e){return(0,u.stringifyYaml)(e)}setIcon(e,t){(0,u.setIcon)(e,t)}imagePathToUri(e){return this.app.vault.adapter.getResourcePath(e)}createModal(e,t){return new qZ(this.omb,e,t)}createSearchModal(e){return new JZ(this.omb,e)}getAllCommands(){return this.app.commands.listCommands().map(e=>({id:e.id,name:e.name}))}createFuzzySearch(){return new VZ}createContextMenu(e){let t=new ZZ;return t.setItems(e),t}async evaluateTemplaterTemplate(e,t){let n=RY(this.omb),r=this.app.vault.getAbstractFileByPath(e);if(!r||!(r instanceof u.TFile))throw Error(`Template file not found: ${e}`);let i=this.app.vault.getAbstractFileByPath(t);if(!i||!(i instanceof u.TFile))throw Error(`Target file not found: ${t}`);let a=n.create_running_config(r,i,LY.DynamicProcessor);return await n.read_and_parse_template(a)}async createNoteWithTemplater(e,t,n,r=!1,i=!1){let a=RY(this.omb),o=this.app.vault.getAbstractFileByPath(e);if(!o||!(o instanceof u.TFile))throw Error(`Template file not found: ${e}`);let s;if(t!==void 0){let e=this.app.vault.getAbstractFileByPath(t);if(!e||!(e instanceof u.TFolder))throw Error(`Folder not found: ${t}`);s=e}let c=await a.create_new_note_from_template(o,s,n,!1);return r&&c&&await this.mb.file.openInSourceMode(c,i),c?.path}},eQ=class extends mJ{mb;constructor(e,t,n){super(t,n),this.mb=e,this.mb.plugin.registerEvent(this.mb.app.metadataCache.on(`changed`,(e,t,n)=>{this.manager.onExternalUpdate(this,e.path,structuredClone(n.frontmatter)??{})}))}readExternal(e){let t=this.mb.app.vault.getAbstractFileByPath(e);if(t==null||!(t instanceof u.TFile))throw new L({errorLevel:P.CRITICAL,effect:`can not get default cache item`,cause:`no file for path "${e}" found or path is not a file`});let n=this.mb.app.metadataCache.getFileCache(t)?.frontmatter;return structuredClone(n)??{}}getDefaultCacheItem(e){let t=this.mb.app.vault.getAbstractFileByPath(e);if(t==null||!(t instanceof u.TFile))throw new L({errorLevel:P.CRITICAL,effect:`can not get default cache item`,cause:`no file for path "${e}" found or path is not a file`});let n=this.mb.app.metadataCache.getFileCache(t)?.frontmatter;return{data:structuredClone(n)??{},storagePath:e,file:t,...this.manager.constructDefaultCacheItem()}}async syncExternal(e){return this.mb.app.fileManager.processFrontMatter(e.file,t=>{Object.assign(t,e.data)})}},tQ=class extends M{ctx;element;constructor(e,t){super(void 0),this.ctx=e,this.element=t}getPosition(){let e=this.ctx.getSectionInfo(this.element);if(e)return{lineStart:e.lineStart,lineEnd:e.lineEnd}}};function nQ(e,t){Yr(t,!0);let n=new yY(t.mb,St(),``,A.BLOCK,t.declaration);xY(e,{get mountable(){return n}}),Xr()}var rQ=q(`

`);function iQ(e,t){Yr(t,!0);let n=t.mb.api.createInlineFieldFromString(t.declaration.inputField,``,void 0,A.BLOCK),r=t.mb.api.createInlineFieldFromString(t.declaration.declaration,``,void 0,A.BLOCK);var i=rQ(),a=U(i),o=U(a,!0);H(a);var s=G(a,2);xY(s,{get mountable(){return n}});var c=G(s,2);xY(c,{get mountable(){return r}});var l=G(c,2),u=U(l,!0);H(l),H(i),Ra(()=>{Jo(o,t.declaration.title),Jo(u,t.declaration.display)}),J(e,i),Xr()}var aQ=q(`

Meta Bind Playground

`,1),oQ=q(`

Quick Reference

Error Messages

When creating Input Fields or View Fields warnings ( ) and errors ( ) can occur. These are clickable and will show a modal with detailed information about the error when clicked.

Unloaded Message

A message like this [MB_UNLOADED] ... means that Obsidian told Meta Bind to unload the field that was once displayed there. This usually happens when Meta Bind was disabled, such as after a plugin update, or when another plugin is interfering with Meta Bind.

Usually reopening the note or restarting Obsidian causes the field to display normally again.

Bind Targets

Bind Targets let the plugin know what frontmatter properties to bind Input Fields and View Fields to.

Playground

Input Fields

Input Fields let you change the frontmatter of your notes from inside of notes.

View Fields

View Fields let you view and perform calculations using the frontmatter of your notes from inside of notes. They will update instantly to reflect changes to the frontmatter made by input - fields and as fast as obsidian allows it for changes from other sources.

`);function zA(t,e){Ae(e,!0);let r="INPUT[someInputFieldDeclaration]",i=wt(new rr("exampleWarningErrorCollection")),n="INPUT[someInputFieldDeclaration]",o=wt(new rr("exampleErrorErrorCollection"));j_(()=>{i.add(new Ef({errorLevel:"WARNING",effect:"some example warning",cause:"some example reason"})),o.add(new Ef({errorLevel:"ERROR",effect:"some example error",cause:"some example reason"}))});var a=tfe(),s=he(a);Qs(s,{children:(x,E)=>{var T=efe(),D=fe(je(T),2),M=he(D);Dt(M,{get variant(){return"primary"},onclick:()=>{Ht.open(Ht.linkToHome())},children:(O,R)=>{Nt();var L=Gt("Docs");ee(O,L)},$$slots:{default:!0}});var C=fe(M,2);Dt(C,{onclick:()=>{Ht.open(Ht.linkToGithub())},children:(O,R)=>{Nt();var L=Gt("GitHub");ee(O,L)},$$slots:{default:!0}});var $=fe(C,2);Dt($,{onclick:()=>{Ht.open(Ht.linkToIssues())},children:(O,R)=>{Nt();var L=Gt("Report Issue");ee(O,L)},$$slots:{default:!0}}),pe(D),ee(x,T)},$$slots:{default:!0}});var l=fe(s,6),u=fe(he(l)),c=fe(u,2),f=fe(c,4);{let x=fr(()=>({errorCollection:i,code:r}));gf(f,{get mb(){return e.mb},get settings(){return U(x)}})}var m=fe(f,4);{let x=fr(()=>({errorCollection:o,code:n}));gf(m,{get mb(){return e.mb},get settings(){return U(x)}})}Nt(3),pe(l);var p=fe(l,10),d=fe(he(p),2),h=fe(d,2);Nt(),pe(p);var v=fe(p,6),y=he(v);Nt(),pe(v);var S=fe(v,2);Wt(S,17,()=>cq(e.mb),Kt,(x,E)=>{LA(x,{get declaration(){return U(E)[1]},get mb(){return e.mb}})});var b=fe(S,4),_=he(b);Nt(),pe(b);var w=fe(b,2);Wt(w,17,()=>Object.values(pA),Kt,(x,E)=>{var T=Or(),D=je(T);Wt(D,17,()=>U(E),Kt,(M,C)=>{UA(M,{get declaration(){return U(C)},get mb(){return e.mb}})}),ee(x,T)}),pe(a),ze((x,E,T,D,M,C)=>{lt(u,"href",x),lt(c,"href",E),lt(d,"href",T),lt(h,"href",D),lt(y,"href",M),lt(_,"href",C)},[()=>Ht.linkToInputFields(),()=>Ht.linkToViewFields(),()=>Ht.linkToInputFields(),()=>Ht.linkToViewFields(),()=>Ht.linkToInputFields(),()=>Ht.linkToViewFields()]),ee(t,a),Te()}var Il="mb-playground-view-type",ax=class extends qq.ItemView{component;mb;constructor(e,r){super(e),this.mb=r}getViewType(){return Il}getDisplayText(){return"Meta Bind playground"}async onOpen(){this.contentEl.empty(),this.component=Fr(zA,{target:this.contentEl,props:{mb:this.mb}})}async onClose(){this.component&&Dr(this.component)}};var zn=require("obsidian");var jq=require("obsidian");var wm=require("obsidian");var _m=require("obsidian");var rfe=ue(" ",1),nfe=ue('
 
');function VA(t,e){Ae(e,!0);let r=pt(e,"template",15);function i(){e.mb.internal.openButtonBuilderModal({submitText:"Submit",config:bt(r()),onOkay:c=>{r(c)}})}function n(){let c=(0,_m.stringifyYaml)(bt(r()));navigator.clipboard.writeText(c),new _m.Notice("meta-bind | Copied to clipboard")}var o=nfe(),a=he(o);Qs(a,{stretchChildren:!0,children:(c,f)=>{var m=rfe(),p=je(m),d=he(p,!0);pe(p);var h=fe(p,2);Dt(h,{onclick:()=>i(),get variant(){return"primary"},tooltip:"Edit",children:(S,b)=>{Rr(S,{get mb(){return e.mb},iconName:"pen-line"})},$$slots:{default:!0}});var v=fe(h,2);Dt(v,{onclick:()=>n(),get variant(){return"default"},tooltip:"Copy",children:(S,b)=>{Rr(S,{get mb(){return e.mb},iconName:"copy"})},$$slots:{default:!0}});var y=fe(v,2);Dt(y,{onclick:()=>e.onDelete(r()),get variant(){return"destructive"},tooltip:"Delete",children:(S,b)=>{Rr(S,{get mb(){return e.mb},iconName:"x"})},$$slots:{default:!0}}),ze(()=>St(d,r().id)),ee(c,m)},$$slots:{default:!0}});var s=fe(a,2),l=he(s),u=he(l,!0);pe(l),pe(s),pe(o),ze(c=>St(u,c),[()=>(0,_m.stringifyYaml)(r())]),ee(t,o),Te()}var ife=ue('

Some Templates Failed to Parse

'),ofe=ue(" ",1),afe=ue("

Meta Bind Button Templates

");function qA(t,e){Ae(e,!0);let r=ft(void 0),i=ft(wt(e.buttonConfigs));function n(v){Re(i,U(i).filter(y=>y!==v),!0)}function o(){U(i).push(e.modal.mb.buttonActionRunner.createDefaultButtonConfig())}async function a(){let v;try{v=(0,wm.parseYaml)(await navigator.clipboard.readText())}catch(S){console.warn(S),new wm.Notice("meta-bind | Can not parse button config. Check your button syntax. See the console for more details.");return}let y=Fc.safeParse(v);if(!y.success){let S=jg(y.error);console.warn(new vs({errorLevel:"ERROR",effect:"can not parse button config",cause:"zod validation failed. Check your button syntax",positionContext:S,docs:[Ht.linkToButtonConfig()]})),new wm.Notice("meta-bind | Can not parse button config. Check your button syntax. See the console for more details.");return}U(i).push(v)}function s(){Re(r,e.modal.save(bt(U(i))),!0),U(r)===void 0&&e.modal.close()}function l(){e.modal.close()}var u=afe(),c=fe(he(u),2);Wt(c,17,()=>U(i),Kt,(v,y,S)=>{VA(v,{get mb(){return e.modal.mb},onDelete:n,get template(){return U(i)[S]},set template(b){U(i)[S]=b}})});var f=fe(c,2);Dt(f,{onclick:()=>o(),get variant(){return"primary"},tooltip:"Create new template",children:(v,y)=>{Nt();var S=Gt("Add Template");ee(v,S)},$$slots:{default:!0}});var m=fe(f,2);Dt(m,{onclick:()=>a(),get variant(){return"default"},tooltip:"Create new template from YAML in clipboard",children:(v,y)=>{Nt();var S=Gt("Add Template from Clipboard");ee(v,S)},$$slots:{default:!0}});var p=fe(m,2);{var d=v=>{var y=ife(),S=fe(he(y),2);{let b=fr(()=>({errorCollection:U(r)}));eu(S,{get settings(){return U(b)}})}pe(y),ee(v,y)};ot(p,v=>{U(r)&&v(d)})}var h=fe(p,2);zo(h,{children:(v,y)=>{var S=ofe(),b=je(S);Dt(b,{onclick:()=>s(),get variant(){return"primary"},tooltip:"Save changes",children:(w,x)=>{Nt();var E=Gt("Save");ee(w,E)},$$slots:{default:!0}});var _=fe(b,2);Dt(_,{onclick:()=>l(),tooltip:"Revert changes",children:(w,x)=>{Nt();var E=Gt("Cancel");ee(w,E)},$$slots:{default:!0}}),ee(v,S)},$$slots:{default:!0}}),pe(u),ee(t,u),Te()}var sx=class extends jq.Modal{mb;component;constructor(e,r){super(e),this.mb=r}onOpen(){this.contentEl.empty(),this.component&&Dr(this.component),this.component=Fr(qA,{target:this.contentEl,props:{buttonConfigs:structuredClone(this.mb.getSettings().buttonTemplates),modal:this}})}onClose(){this.contentEl.empty(),this.component&&Dr(this.component)}save(e){let r=this.mb.buttonManager.setButtonTemplates(e);if(r.hasErrors())return r;this.mb.updateSettings(i=>{i.buttonTemplates=e})}};var Zq=require("obsidian");var sfe=ue(''),ufe=ue('

Some folder paths are invalid

'),lfe=ue(" ",1),cfe=ue('
Folder Path
');function jA(t,e){Ae(e,!0);let r=ft(void 0),i=ft(wt(e.excludedFolders));function n(h){Re(i,U(i).filter(v=>v!==h),!0)}function o(){U(i).push("")}function a(){Re(r,e.modal.save(bt(U(i))),!0),U(r)===void 0&&e.modal.close()}function s(){e.modal.close()}var l=cfe(),u=he(l),c=fe(he(u));Wt(c,21,()=>U(i),Kt,(h,v,y)=>{var S=sfe(),b=he(S),_=he(b);Mt(_),pe(b);var w=fe(b),x=he(w);Dt(x,{onclick:()=>n(U(v)),tooltip:"Delete",children:(E,T)=>{Rr(E,{get mb(){return e.mb},iconName:"x"})},$$slots:{default:!0}}),pe(w),pe(S),At(_,()=>U(i)[y],E=>U(i)[y]=E),ee(h,S)}),pe(c),pe(u);var f=fe(u,2);Dt(f,{onclick:()=>o(),get variant(){return"primary"},tooltip:"Add new excluded folder",children:(h,v)=>{Nt();var y=Gt("Add folder");ee(h,y)},$$slots:{default:!0}});var m=fe(f,2);{var p=h=>{var v=ufe(),y=fe(he(v),2);{let S=fr(()=>({errorCollection:U(r)}));eu(y,{get settings(){return U(S)}})}pe(v),ee(h,v)};ot(m,h=>{U(r)&&h(p)})}var d=fe(m,2);zo(d,{children:(h,v)=>{var y=lfe(),S=je(y);Dt(S,{onclick:()=>a(),get variant(){return"primary"},tooltip:"Save changes",children:(_,w)=>{Nt();var x=Gt("Save");ee(_,x)},$$slots:{default:!0}});var b=fe(S,2);Dt(b,{onclick:()=>s(),tooltip:"Revert changes",children:(_,w)=>{Nt();var x=Gt("Cancel");ee(_,x)},$$slots:{default:!0}}),ee(h,y)},$$slots:{default:!0}}),pe(l),ee(t,l),Te()}var ux=class extends Zq.Modal{mb;component;constructor(e,r){super(e),this.mb=r}onOpen(){this.contentEl.empty(),this.component&&Dr(this.component),this.component=Fr(jA,{target:this.contentEl,props:{excludedFolders:structuredClone(this.mb.getSettings().excludedFolders),modal:this,mb:this.mb}})}onClose(){this.contentEl.empty(),this.component&&Dr(this.component)}save(e){for(let r of e)if(r===""){let i=new rr("Excluded folders");return i.add(new Error(`Invalid Folder Path '${r}'. Folder path may not be empty.`)),i}this.mb.updateSettings(r=>{r.excludedFolders=e})}};var Gq=require("obsidian");var ffe=ue(' ',1),pfe=ue('
');function ZA(t,e){Ae(e,!0);let r=pt(e,"template",15);var i=pfe(),n=he(i);Qs(n,{children:(a,s)=>{var l=ffe(),u=je(l);Mt(u);var c=fe(u,2);Dt(c,{onclick:()=>e.onDelete(r()),get variant(){return"destructive"},tooltip:"Delete Template",children:(f,m)=>{Rr(f,{get mb(){return e.mb},iconName:"x"})},$$slots:{default:!0}}),At(u,()=>r().name,f=>r(r().name=f,!0)),ee(a,l)},$$slots:{default:!0}});var o=fe(n,2);Cn(o),pe(i),At(o,()=>r().declaration,a=>r(r().declaration=a,!0)),ee(t,i),Te()}var mfe=ue('

Some Templates Failed to Parse

'),dfe=ue(" ",1),hfe=ue("

Meta Bind Input Field Templates

");function GA(t,e){Ae(e,!0);let r=ft(void 0),i=ft(wt(e.inputFieldTemplates));function n(d){Re(i,U(i).filter(h=>h!==d),!0)}function o(){U(i).push({name:"",declaration:""})}function a(){Re(r,e.modal.save(bt(U(i))),!0),U(r)===void 0&&e.modal.close()}function s(){e.modal.close()}var l=hfe(),u=fe(he(l),2);Wt(u,17,()=>U(i),Kt,(d,h)=>{ZA(d,{get mb(){return e.modal.mb},get template(){return U(h)},onDelete:n})});var c=fe(u,2);Dt(c,{onclick:()=>o(),get variant(){return"primary"},tooltip:"Create New Template",children:(d,h)=>{Nt();var v=Gt("Add Template");ee(d,v)},$$slots:{default:!0}});var f=fe(c,2);{var m=d=>{var h=mfe(),v=fe(he(h),2);{let y=fr(()=>({errorCollection:U(r)}));eu(v,{get settings(){return U(y)}})}pe(h),ee(d,h)};ot(f,d=>{U(r)&&d(m)})}var p=fe(f,2);zo(p,{children:(d,h)=>{var v=dfe(),y=je(v);Dt(y,{onclick:()=>a(),get variant(){return"primary"},tooltip:"Save Changes",children:(b,_)=>{Nt();var w=Gt("Save");ee(b,w)},$$slots:{default:!0}});var S=fe(y,2);Dt(S,{onclick:()=>s(),tooltip:"Revert Changes",children:(b,_)=>{Nt();var w=Gt("Cancel");ee(b,w)},$$slots:{default:!0}}),ee(d,v)},$$slots:{default:!0}}),pe(l),ee(t,l),Te()}var lx=class extends Gq.Modal{mb;component;constructor(e,r){super(e),this.mb=r}onOpen(){this.contentEl.empty(),this.component&&Dr(this.component),this.component=Fr(GA,{target:this.contentEl,props:{inputFieldTemplates:structuredClone(this.mb.getSettings().inputFieldTemplates),modal:this}})}onClose(){this.contentEl.empty(),this.component&&Dr(this.component)}save(e){let r=this.mb.inputFieldParser.parseTemplates(e);if(r.hasErrors())return r;this.mb.updateSettings(i=>{i.inputFieldTemplates=e})}};var cx=class extends zn.PluginSettingTab{mb;constructor(e,r){super(e,r.plugin),this.mb=r}display(){let{containerEl:e}=this;if(e.empty(),this.mb.build==="dev"||this.mb.build==="canary"){e.createEl("p",{text:`You are using a ${this.mb.build} build (1.4.6). This build is not intended for production use. Use at your own risk.`,cls:"mb-error"});let r=new zn.ButtonComponent(e);r.setButtonText("Learn About Canary Builds"),r.setCta(),r.onClick(()=>{Ht.open(Ht.linkToCanaryBuilds())})}new zn.Setting(e).setName("Quick access").addButton(r=>{r.setCta(),r.setButtonText("Docs"),r.onClick(()=>{Ht.open(Ht.linkToHome())})}).addButton(r=>{r.setButtonText("Open FAQ"),r.onClick(()=>{this.mb.activateView(Il)})}).addButton(r=>{r.setButtonText("GitHub"),r.onClick(()=>{Ht.open(Ht.linkToGithub())})}).addButton(r=>{r.setButtonText("Report issue"),r.onClick(()=>{Ht.open(Ht.linkToIssues())})}),new zn.Setting(e).setName("Enable syntax highlighting").setDesc("Enable syntax highlighting for meta bind syntax. RESTART REQUIRED.").addToggle(r=>{r.setValue(this.mb.getSettings().enableSyntaxHighlighting),r.onChange(i=>{this.mb.updateSettings(n=>{n.enableSyntaxHighlighting=i})})}),new zn.Setting(e).setName("Enable editor right-click menu").setDesc("Enable a meta bind menu section in the editor right-click menu. RESTART REQUIRED.").addToggle(r=>{r.setValue(this.mb.getSettings().enableEditorRightClickMenu),r.onChange(i=>{this.mb.updateSettings(n=>{n.enableEditorRightClickMenu=i})})}),new zn.Setting(e).setName("Input field templates").setDesc("You can specify input field templates here, and access them using `INPUT[template_name][overrides (optional)]` in your notes.").addButton(r=>{r.setButtonText("Edit templates"),r.onClick(()=>{new lx(this.app,this.mb).open()})}),new zn.Setting(e).setName("Button templates").setDesc("You can specify button field templates here, and access them in inline buttons.").addButton(r=>{r.setButtonText("Edit templates"),r.onClick(()=>{new sx(this.app,this.mb).open()})}),new zn.Setting(e).setName("Excluded folders").setDesc("You can specify excluded folders here. The plugin will not work within excluded folders.").addButton(r=>{r.setButtonText("Edit excluded folders"),r.onClick(()=>{new ux(this.app,this.mb).open()})}),new zn.Setting(e).setName("View fields display null as empty").setDesc("Display nothing instead of null, if the frontmatter value is empty, in text view fields.").addToggle(r=>{r.setValue(this.mb.getSettings().viewFieldDisplayNullAsEmpty),r.onChange(i=>{this.mb.updateSettings(n=>{n.viewFieldDisplayNullAsEmpty=i})})}),new zn.Setting(e).setName("Enable JavaScript").setDesc("Enable features that run user written JavaScript. This is potentially DANGEROUS, thus it's disabled by default. RESTART REQUIRED.").addToggle(r=>{r.setValue(this.mb.getSettings().enableJs),r.onChange(i=>{this.mb.updateSettings(n=>{n.enableJs=i})})}),new zn.Setting(e).setName("Date and time").setHeading(),new zn.Setting(e).setName("Date format").setDesc("The date format to be used by this plugin. Changing this setting will break the parsing of existing date inputs. Here is a list of all available date tokes https://momentjs.com/docs/#/displaying/.").addText(r=>{r.setValue(this.mb.getSettings().preferredDateFormat),r.onChange(i=>{this.mb.updateSettings(n=>{n.preferredDateFormat=i})})}),new zn.Setting(e).setName("First weekday").setDesc("Specify the first weekday for the datepicker.").addDropdown(r=>{for(let i of hl)r.addOption(i.name,i.name);r.setValue(this.mb.getSettings().firstWeekday.name),r.onChange(i=>{this.mb.updateSettings(n=>{n.firstWeekday=hl.find(o=>o.name===i)})})}),new zn.Setting(e).setName("Advanced").setHeading(),new zn.Setting(e).setName("Dev mode").setDesc("Enable dev mode. Not recommended unless you want to debug this plugin.").addToggle(r=>{r.setValue(this.mb.getSettings().devMode),r.onChange(i=>{this.mb.updateSettings(n=>{n.devMode=i})})}),new zn.Setting(e).setName("Disable code block restrictions").setDesc("Disable restrictions on which input fields can be created in which code blocks. Not recommended unless you know what you are doing.").addToggle(r=>{r.setValue(this.mb.getSettings().ignoreCodeBlockRestrictions),r.onChange(i=>{this.mb.updateSettings(n=>{n.ignoreCodeBlockRestrictions=i})})}),new zn.Setting(e).setName("Sync interval").setDesc(`The interval in milli-seconds between disk writes. Changing this number is not recommended except if your hard drive is exceptionally slow. Standard: ${Gp.syncInterval}; Minimum: ${wv}; Maximum: ${Sv}`).addText(r=>{r.setValue(this.mb.getSettings().syncInterval.toString()),r.onChange(i=>{this.mb.updateSettings(n=>{n.syncInterval=Number.parseInt(i),Number.isNaN(n.syncInterval)&&(n.syncInterval=Gp.syncInterval),n.syncIntervalSv&&(n.syncInterval=Sv)})})})}};var fx=class extends Sb{app;plugin;dependencyManager;constructor(e){super(),this.app=e.app,this.plugin=e,this.setComponents({api:new qb(this),internal:new ix(this),file:new Zb(this)}),this.plugin.addSettingTab(new cx(this.app,this)),this.dependencyManager=new Mb(this,[]),this.setUpDependencies(),this.setUpMetadataManager(),this.loadTemplates(),this.addPostProcessors(),this.plugin.registerEditorExtension(sq(this)),this.addCommands(),oq(this),this.plugin.registerView(Il,r=>new ax(r,this)),this.addStatusBarBuildIndicator(),this.getSettings().enableEditorRightClickMenu&&this.plugin.registerEvent(this.app.workspace.on("editor-menu",(r,i)=>{dq(r,i,this)}))}setUpDependencies(){this.dependencyManager.dependencies=[{name:"Dataview",pluginId:"dataview",minVersion:new ca(0,5,64)},{name:"JS Engine",pluginId:"js-engine",minVersion:new ca(0,3,0)},{name:"Templater",pluginId:"templater-obsidian",minVersion:new ca(2,2,3)}]}setUpMetadataManager(){this.metadataManager=new bc,this.metadataManager.registerSource(new ox(this,"frontmatter",this.metadataManager)),this.metadataManager.registerSource(new Db("memory",this.metadataManager)),this.metadataManager.registerSource(new Eb("globalMemory",this.metadataManager)),this.metadataManager.registerSource(new Ab("scope",this.metadataManager)),this.metadataManager.setDefaultSource("frontmatter"),this.plugin.registerEvent(this.app.vault.on("rename",(e,r)=>{this.mountableManager.unloadFile(r),this.metadataManager.onStoragePathRenamed(r,e.path)})),this.plugin.registerEvent(this.app.vault.on("delete",e=>{this.mountableManager.unloadFile(e.path),this.metadataManager.onStoragePathDeleted(e.path)})),this.plugin.registerInterval(window.setInterval(()=>this.metadataManager.cycle(),this.getSettings().syncInterval))}addPostProcessors(){this.plugin.registerMarkdownPostProcessor((e,r)=>{let i=e.querySelectorAll("code"),n=r.sourcePath;for(let o=0;o{await(0,os.loadPrism)();let n=r,o=e.trim(),a=i.sourcePath,s=this.api.isInlineFieldDeclarationAndGetType(o);if(s===void 0)return;let l=this.api.createInlineFieldOfTypeFromString(s,o,a,void 0,"block",new xm(i,r));this.api.wrapInMDRC(l,n,i)}),this.plugin.registerMarkdownCodeBlockProcessor("meta-bind-js-view",async(e,r,i)=>{await(0,os.loadPrism)();let n=this.api.createJsViewFieldMountable(i.sourcePath,{declaration:e});this.api.wrapInMDRC(n,r,i)}),this.plugin.registerMarkdownCodeBlockProcessor("meta-bind-embed",async(e,r,i)=>{await(0,os.loadPrism)();let n=this.api.createEmbedMountable(i.sourcePath,{content:e,depth:0});this.api.wrapInMDRC(n,r,i)});for(let e=1;e<=Ed;e++)this.plugin.registerMarkdownCodeBlockProcessor(`meta-bind-embed-internal-${e}`,async(r,i,n)=>{await(0,os.loadPrism)();let o=this.api.createEmbedMountable(n.sourcePath,{content:r,depth:e});this.api.wrapInMDRC(o,i,n)});this.plugin.registerMarkdownCodeBlockProcessor("meta-bind-button",async(e,r,i)=>{await(0,os.loadPrism)();let n=this.api.createButtonMountable(i.sourcePath,{declaration:e,isPreview:!1,position:new xm(i,r)});this.api.wrapInMDRC(n,r,i)})}addCommands(){this.plugin.addCommand({id:"open-docs",name:"Open docs",callback:()=>{window.open("https://mprojectscode.github.io/obsidian-meta-bind-plugin-docs/","_blank")}}),this.plugin.addCommand({id:"open-playground",name:"Open playground",callback:()=>{this.activateView(Il)}}),this.plugin.addCommand({id:"open-help",name:"Open Help",callback:()=>{this.activateView(Il)}}),this.plugin.addCommand({id:"open-button-builder",name:"Open button builder",callback:()=>{this.internal.openButtonBuilderModal({onOkay:e=>{window.navigator.clipboard.writeText(`\`\`\`meta-bind-button -${(0,os.stringifyYaml)(e)} -\`\`\``)},submitText:"Copy to Clipboard"})}}),this.plugin.addCommand({id:"copy-command-id",name:"Select and copy command id",callback:()=>{this.internal.openCommandSelectModal(e=>{window.navigator.clipboard.writeText(e.id)})}})}addStatusBarBuildIndicator(){if(this.build==="dev"){let e=this.plugin.addStatusBarItem();e.setText("Meta Bind Dev Build"),e.addClass("mb-error"),this.plugin.register(()=>e.remove())}if(this.build==="canary"){let e=this.plugin.addStatusBarItem();e.setText("Meta Bind Canary Build (1.4.6)"),e.addClass("mb-error"),this.plugin.register(()=>e.remove())}}async activateView(e){let{workspace:r}=this.app,i,n=r.getLeavesOfType(e);n.length>0?i=n[0]:(i=r.getLeaf("tab"),await i.setViewState({type:e,active:!0})),await r.revealLeaf(i)}getSettings(){return this.plugin.settings}saveSettings(e){this.plugin.settings=e,this.plugin.saveSettings()}},px=class extends os.Plugin{mb;api;settings;async onload(){console.log("meta-bind | Main >> loading"),console.time("meta-bind | Main >> load-time"),await this.loadSettings(),this.mb=new fx(this),this.api=this.mb.api,this.mb.updateInternalSettings(this.settings),console.timeEnd("meta-bind | Main >> load-time")}onunload(){this.mb.destroy(),console.log("meta-bind | Main >> unload")}async loadSettings(){console.log("meta-bind | Main >> loading settings");let e=await this.loadData()??{};typeof e=="object"&&e!=null&&(delete e.inputTemplates,delete e.useUsDateInputOrder),this.settings=Object.assign({},Gp,e),bs(e,this.settings)||await this.saveSettings()}async saveSettings(){console.log("meta-bind | Main >> settings save"),await this.saveData(this.settings)}async onExternalSettingsChange(){await this.loadSettings(),this.mb.updateInternalSettings(this.settings)}}; -/*! Bundled license information: - -moment/moment.js: - (*! moment.js *) - (*! version : 2.30.1 *) - (*! authors : Tim Wood, Iskren Chernev, Moment.js contributors *) - (*! license : MIT *) - (*! momentjs.com *) - -decimal.js/decimal.mjs: - (*! - * decimal.js v10.5.0 - * An arbitrary-precision Decimal type for JavaScript. - * https://github.com/MikeMcl/decimal.js - * Copyright (c) 2025 Michael Mclaughlin - * MIT Licence - *) -*/ - + fields and as fast as obsidian allows it for changes from other sources.

`);function sQ(e,t){Yr(t,!0);let n=sa(new Cn(`exampleWarningErrorCollection`)),r=sa(new Cn(`exampleErrorErrorCollection`));Gs(()=>{n.add(new ie({errorLevel:P.WARNING,effect:`some example warning`,cause:`some example reason`})),r.add(new ie({errorLevel:P.ERROR,effect:`some example error`,cause:`some example reason`}))});var i=oQ(),a=U(i);IX(a,{children:(e,t)=>{var n=aQ(),r=G(W(n),2),i=U(r);Dh(i,{get variant(){return Nt.PRIMARY},onclick:()=>{Qg.open(Qg.linkToHome())},children:(e,t)=>{Ir(),J(e,Ko(`Docs`))},$$slots:{default:!0}});var a=G(i,2);Dh(a,{onclick:()=>{Qg.open(Qg.linkToGithub())},children:(e,t)=>{Ir(),J(e,Ko(`GitHub`))},$$slots:{default:!0}}),Dh(G(a,2),{onclick:()=>{Qg.open(Qg.linkToIssues())},children:(e,t)=>{Ir(),J(e,Ko(`Report Issue`))},$$slots:{default:!0}}),H(r),J(e,n)},$$slots:{default:!0}});var o=G(a,6),s=G(U(o)),c=G(s,2),l=G(c,4);{let e=Ui(()=>({errorCollection:n,code:`INPUT[someInputFieldDeclaration]`}));LZ(l,{get mb(){return t.mb},get settings(){return K(e)}})}var u=G(l,4);{let e=Ui(()=>({errorCollection:r,code:`INPUT[someInputFieldDeclaration]`}));LZ(u,{get mb(){return t.mb},get settings(){return K(e)}})}Ir(3),H(o);var d=G(o,10),f=G(U(d),2),p=G(f,2);Ir(),H(d);var m=G(d,6),h=U(m);Ir(),H(m);var g=G(m,2);os(g,17,()=>jJ(t.mb),ns,(e,n)=>{nQ(e,{get declaration(){return K(n)[1]},get mb(){return t.mb}})});var _=G(g,4),v=U(_);Ir(),H(_),os(G(_,2),17,()=>Object.values(AJ),ns,(e,n)=>{var r=qo();os(W(r),17,()=>K(n),ns,(e,n)=>{iQ(e,{get declaration(){return K(n)},get mb(){return t.mb}})}),J(e,r)}),H(i),Ra((e,t,n,r,i,a)=>{Fs(s,`href`,e),Fs(c,`href`,t),Fs(f,`href`,n),Fs(p,`href`,r),Fs(h,`href`,i),Fs(v,`href`,a)},[()=>Qg.linkToInputFields(),()=>Qg.linkToViewFields(),()=>Qg.linkToInputFields(),()=>Qg.linkToViewFields(),()=>Qg.linkToInputFields(),()=>Qg.linkToViewFields()]),J(e,i),Xr()}var cQ=`mb-playground-view-type`,lQ=class extends u.ItemView{component;mb;constructor(e,t){super(e),this.mb=t}getViewType(){return cQ}getDisplayText(){return`Meta Bind playground`}async onOpen(){this.contentEl.empty(),this.component=Yo(sQ,{target:this.contentEl,props:{mb:this.mb}})}async onClose(){this.component&&$o(this.component)}},uQ=q(` `,1),dQ=q(`
 
`);function fQ(e,t){Yr(t,!0);let n=Ws(t,`template`,15);function r(){t.mb.internal.openButtonBuilderModal({submitText:`Submit`,config:Gr(n()),onOkay:e=>{n(e)}})}function i(){let e=(0,u.stringifyYaml)(Gr(n()));navigator.clipboard.writeText(e),new u.Notice(`meta-bind | Copied to clipboard`)}var a=dQ(),o=U(a);IX(o,{stretchChildren:!0,children:(e,a)=>{var o=uQ(),s=W(o),c=U(s,!0);H(s);var l=G(s,2);Dh(l,{onclick:()=>r(),get variant(){return Nt.PRIMARY},tooltip:`Edit`,children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`pen-line`})},$$slots:{default:!0}});var u=G(l,2);Dh(u,{onclick:()=>i(),get variant(){return Nt.DEFAULT},tooltip:`Copy`,children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`copy`})},$$slots:{default:!0}}),Dh(G(u,2),{onclick:()=>t.onDelete(n()),get variant(){return Nt.DESTRUCTIVE},tooltip:`Delete`,children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`x`})},$$slots:{default:!0}}),Ra(()=>Jo(c,n().id)),J(e,o)},$$slots:{default:!0}});var s=G(o,2),c=U(s),l=U(c,!0);H(c),H(s),H(a),Ra(e=>Jo(l,e),[()=>(0,u.stringifyYaml)(n())]),J(e,a),Xr()}var pQ=q(`

Some Templates Failed to Parse

`),mQ=q(` `,1),hQ=q(`

Meta Bind Button Templates

`);function gQ(e,t){Yr(t,!0);let n=ea(void 0),r=ea(sa(t.buttonConfigs));function i(e){na(r,K(r).filter(t=>t!==e),!0)}function a(){K(r).push(t.modal.mb.buttonActionRunner.createDefaultButtonConfig())}async function o(){let e;try{e=(0,u.parseYaml)(await navigator.clipboard.readText())}catch(e){console.warn(e),new u.Notice(`meta-bind | Can not parse button config. Check your button syntax. See the console for more details.`);return}let t=oT.safeParse(e);if(!t.success){let e=Rw(t.error);console.warn(new ae({errorLevel:P.ERROR,effect:`can not parse button config`,cause:`zod validation failed. Check your button syntax`,positionContext:e,docs:[Qg.linkToButtonConfig()]})),new u.Notice(`meta-bind | Can not parse button config. Check your button syntax. See the console for more details.`);return}K(r).push(e)}function s(){na(n,t.modal.save(Gr(K(r))),!0),K(n)===void 0&&t.modal.close()}function c(){t.modal.close()}var l=hQ(),d=G(U(l),2);os(d,17,()=>K(r),ns,(e,n,a)=>{fQ(e,{get mb(){return t.modal.mb},onDelete:i,get template(){return K(r)[a]},set template(e){K(r)[a]=e}})});var f=G(d,2);Dh(f,{onclick:()=>a(),get variant(){return Nt.PRIMARY},tooltip:`Create new template`,children:(e,t)=>{Ir(),J(e,Ko(`Add Template`))},$$slots:{default:!0}});var p=G(f,2);Dh(p,{onclick:()=>o(),get variant(){return Nt.DEFAULT},tooltip:`Create new template from YAML in clipboard`,children:(e,t)=>{Ir(),J(e,Ko(`Add Template from Clipboard`))},$$slots:{default:!0}});var m=G(p,2),h=e=>{var t=pQ(),r=G(U(t),2);{let e=Ui(()=>({errorCollection:K(n)}));MZ(r,{get settings(){return K(e)}})}H(t),J(e,t)};ts(m,e=>{K(n)&&e(h)}),RX(G(m,2),{children:(e,t)=>{var n=mQ(),r=W(n);Dh(r,{onclick:()=>s(),get variant(){return Nt.PRIMARY},tooltip:`Save changes`,children:(e,t)=>{Ir(),J(e,Ko(`Save`))},$$slots:{default:!0}}),Dh(G(r,2),{onclick:()=>c(),tooltip:`Revert changes`,children:(e,t)=>{Ir(),J(e,Ko(`Cancel`))},$$slots:{default:!0}}),J(e,n)},$$slots:{default:!0}}),H(l),J(e,l),Xr()}var _Q=class extends u.Modal{mb;component;constructor(e,t){super(e),this.mb=t}onOpen(){this.contentEl.empty(),this.component&&$o(this.component),this.component=Yo(gQ,{target:this.contentEl,props:{buttonConfigs:structuredClone(this.mb.getSettings().buttonTemplates),modal:this}})}onClose(){this.contentEl.empty(),this.component&&$o(this.component)}save(e){let t=this.mb.buttonManager.setButtonTemplates(e);if(t.hasErrors())return t;this.mb.updateSettings(t=>{t.buttonTemplates=e})}},vQ=q(``),yQ=q(`

Some folder paths are invalid

`),bQ=q(` `,1),xQ=q(`
Folder Path
`);function SQ(e,t){Yr(t,!0);let n=ea(void 0),r=ea(sa(t.excludedFolders));function i(e){na(r,K(r).filter(t=>t!==e),!0)}function a(){K(r).push(``)}function o(){na(n,t.modal.save(Gr(K(r))),!0),K(n)===void 0&&t.modal.close()}function s(){t.modal.close()}var c=xQ(),l=U(c),u=G(U(l));os(u,21,()=>K(r),ns,(e,n,a)=>{var o=vQ(),s=U(o),c=U(s);Ms(c),H(s);var l=G(s);Dh(U(l),{onclick:()=>i(K(n)),tooltip:`Delete`,children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`x`})},$$slots:{default:!0}}),H(l),H(o),zs(c,()=>K(r)[a],e=>K(r)[a]=e),J(e,o)}),H(u),H(l);var d=G(l,2);Dh(d,{onclick:()=>a(),get variant(){return Nt.PRIMARY},tooltip:`Add new excluded folder`,children:(e,t)=>{Ir(),J(e,Ko(`Add folder`))},$$slots:{default:!0}});var f=G(d,2),p=e=>{var t=yQ(),r=G(U(t),2);{let e=Ui(()=>({errorCollection:K(n)}));MZ(r,{get settings(){return K(e)}})}H(t),J(e,t)};ts(f,e=>{K(n)&&e(p)}),RX(G(f,2),{children:(e,t)=>{var n=bQ(),r=W(n);Dh(r,{onclick:()=>o(),get variant(){return Nt.PRIMARY},tooltip:`Save changes`,children:(e,t)=>{Ir(),J(e,Ko(`Save`))},$$slots:{default:!0}}),Dh(G(r,2),{onclick:()=>s(),tooltip:`Revert changes`,children:(e,t)=>{Ir(),J(e,Ko(`Cancel`))},$$slots:{default:!0}}),J(e,n)},$$slots:{default:!0}}),H(c),J(e,c),Xr()}var CQ=class extends u.Modal{mb;component;constructor(e,t){super(e),this.mb=t}onOpen(){this.contentEl.empty(),this.component&&$o(this.component),this.component=Yo(SQ,{target:this.contentEl,props:{excludedFolders:structuredClone(this.mb.getSettings().excludedFolders),modal:this,mb:this.mb}})}onClose(){this.contentEl.empty(),this.component&&$o(this.component)}save(e){for(let t of e)if(t===``){let e=new Cn(`Excluded folders`);return e.add(Error(`Invalid Folder Path '${t}'. Folder path may not be empty.`)),e}this.mb.updateSettings(t=>{t.excludedFolders=e})}},wQ=q(` `,1),TQ=q(`
`);function EQ(e,t){Yr(t,!0);let n=Ws(t,`template`,15);var r=TQ(),i=U(r);IX(i,{children:(e,r)=>{var i=wQ(),a=W(i);Ms(a),Dh(G(a,2),{onclick:()=>t.onDelete(n()),get variant(){return Nt.DESTRUCTIVE},tooltip:`Delete Template`,children:(e,n)=>{ph(e,{get mb(){return t.mb},iconName:`x`})},$$slots:{default:!0}}),zs(a,()=>n().name,e=>n(n().name=e,!0)),J(e,i)},$$slots:{default:!0}});var a=G(i,2);Sa(a),H(r),zs(a,()=>n().declaration,e=>n(n().declaration=e,!0)),J(e,r),Xr()}var DQ=q(`

Some Templates Failed to Parse

`),OQ=q(` `,1),kQ=q(`

Meta Bind Input Field Templates

`);function AQ(e,t){Yr(t,!0);let n=ea(void 0),r=ea(sa(t.inputFieldTemplates));function i(e){na(r,K(r).filter(t=>t!==e),!0)}function a(){K(r).push({name:``,declaration:``})}function o(){na(n,t.modal.save(Gr(K(r))),!0),K(n)===void 0&&t.modal.close()}function s(){t.modal.close()}var c=kQ(),l=G(U(c),2);os(l,17,()=>K(r),ns,(e,n)=>{EQ(e,{get mb(){return t.modal.mb},get template(){return K(n)},onDelete:i})});var u=G(l,2);Dh(u,{onclick:()=>a(),get variant(){return Nt.PRIMARY},tooltip:`Create New Template`,children:(e,t)=>{Ir(),J(e,Ko(`Add Template`))},$$slots:{default:!0}});var d=G(u,2),f=e=>{var t=DQ(),r=G(U(t),2);{let e=Ui(()=>({errorCollection:K(n)}));MZ(r,{get settings(){return K(e)}})}H(t),J(e,t)};ts(d,e=>{K(n)&&e(f)}),RX(G(d,2),{children:(e,t)=>{var n=OQ(),r=W(n);Dh(r,{onclick:()=>o(),get variant(){return Nt.PRIMARY},tooltip:`Save Changes`,children:(e,t)=>{Ir(),J(e,Ko(`Save`))},$$slots:{default:!0}}),Dh(G(r,2),{onclick:()=>s(),tooltip:`Revert Changes`,children:(e,t)=>{Ir(),J(e,Ko(`Cancel`))},$$slots:{default:!0}}),J(e,n)},$$slots:{default:!0}}),H(c),J(e,c),Xr()}var jQ=class extends u.Modal{mb;component;constructor(e,t){super(e),this.mb=t}onOpen(){this.contentEl.empty(),this.component&&$o(this.component),this.component=Yo(AQ,{target:this.contentEl,props:{inputFieldTemplates:structuredClone(this.mb.getSettings().inputFieldTemplates),modal:this}})}onClose(){this.contentEl.empty(),this.component&&$o(this.component)}save(e){let t=this.mb.inputFieldParser.parseTemplates(e);if(t.hasErrors())return t;this.mb.updateSettings(t=>{t.inputFieldTemplates=e})}},MQ=class extends u.PluginSettingTab{mb;constructor(e,t){super(e,t.plugin),this.mb=t}display(){let{containerEl:e}=this;if(e.empty(),this.mb.build===fJ.DEV||this.mb.build===fJ.CANARY){e.createEl(`p`,{text:`You are using a ${this.mb.build} build (1.4.8). This build is not intended for production use. Use at your own risk.`,cls:`mb-error`});let t=new u.ButtonComponent(e);t.setButtonText(`Learn About Canary Builds`),t.setCta(),t.onClick(()=>{Qg.open(Qg.linkToCanaryBuilds())})}new u.Setting(e).setName(`Quick access`).addButton(e=>{e.setCta(),e.setButtonText(`Docs`),e.onClick(()=>{Qg.open(Qg.linkToHome())})}).addButton(e=>{e.setButtonText(`Open FAQ`),e.onClick(()=>{this.mb.activateView(cQ)})}).addButton(e=>{e.setButtonText(`GitHub`),e.onClick(()=>{Qg.open(Qg.linkToGithub())})}).addButton(e=>{e.setButtonText(`Report issue`),e.onClick(()=>{Qg.open(Qg.linkToIssues())})}),new u.Setting(e).setName(`Enable syntax highlighting`).setDesc(`Enable syntax highlighting for meta bind syntax. RESTART REQUIRED.`).addToggle(e=>{e.setValue(this.mb.getSettings().enableSyntaxHighlighting),e.onChange(e=>{this.mb.updateSettings(t=>{t.enableSyntaxHighlighting=e})})}),new u.Setting(e).setName(`Enable editor right-click menu`).setDesc(`Enable a meta bind menu section in the editor right-click menu. RESTART REQUIRED.`).addToggle(e=>{e.setValue(this.mb.getSettings().enableEditorRightClickMenu),e.onChange(e=>{this.mb.updateSettings(t=>{t.enableEditorRightClickMenu=e})})}),new u.Setting(e).setName(`Input field templates`).setDesc("You can specify input field templates here, and access them using `INPUT[template_name][overrides (optional)]` in your notes.").addButton(e=>{e.setButtonText(`Edit templates`),e.onClick(()=>{new jQ(this.app,this.mb).open()})}),new u.Setting(e).setName(`Button templates`).setDesc(`You can specify button field templates here, and access them in inline buttons.`).addButton(e=>{e.setButtonText(`Edit templates`),e.onClick(()=>{new _Q(this.app,this.mb).open()})}),new u.Setting(e).setName(`Excluded folders`).setDesc(`You can specify excluded folders here. The plugin will not work within excluded folders.`).addButton(e=>{e.setButtonText(`Edit excluded folders`),e.onClick(()=>{new CQ(this.app,this.mb).open()})}),new u.Setting(e).setName(`View fields display null as empty`).setDesc(`Display nothing instead of null, if the frontmatter value is empty, in text view fields.`).addToggle(e=>{e.setValue(this.mb.getSettings().viewFieldDisplayNullAsEmpty),e.onChange(e=>{this.mb.updateSettings(t=>{t.viewFieldDisplayNullAsEmpty=e})})}),new u.Setting(e).setName(`Enable JavaScript`).setDesc(`Enable features that run user written JavaScript. This is potentially DANGEROUS, thus it's disabled by default. RESTART REQUIRED.`).addToggle(e=>{e.setValue(this.mb.getSettings().enableJs),e.onChange(e=>{this.mb.updateSettings(t=>{t.enableJs=e})})}),new u.Setting(e).setName(`Date and time`).setHeading(),new u.Setting(e).setName(`Date format`).setDesc(`The date format to be used by this plugin. Changing this setting will break the parsing of existing date inputs. Here is a list of all available date tokes https://momentjs.com/docs/#/displaying/.`).addText(e=>{e.setValue(this.mb.getSettings().preferredDateFormat),e.onChange(e=>{this.mb.updateSettings(t=>{t.preferredDateFormat=e})})}),new u.Setting(e).setName(`First weekday`).setDesc(`Specify the first weekday for the datepicker.`).addDropdown(e=>{for(let t of ZT)e.addOption(t.name,t.name);e.setValue(this.mb.getSettings().firstWeekday.name),e.onChange(e=>{this.mb.updateSettings(t=>{t.firstWeekday=ZT.find(t=>t.name===e)})})}),new u.Setting(e).setName(`Advanced`).setHeading(),new u.Setting(e).setName(`Dev mode`).setDesc(`Enable dev mode. Not recommended unless you want to debug this plugin.`).addToggle(e=>{e.setValue(this.mb.getSettings().devMode),e.onChange(e=>{this.mb.updateSettings(t=>{t.devMode=e})})}),new u.Setting(e).setName(`Disable code block restrictions`).setDesc(`Disable restrictions on which input fields can be created in which code blocks. Not recommended unless you know what you are doing.`).addToggle(e=>{e.setValue(this.mb.getSettings().ignoreCodeBlockRestrictions),e.onChange(e=>{this.mb.updateSettings(t=>{t.ignoreCodeBlockRestrictions=e})})}),new u.Setting(e).setName(`Sync interval`).setDesc(`The interval in milli-seconds between disk writes. Changing this number is not recommended except if your hard drive is exceptionally slow. Standard: ${QT.syncInterval}; Minimum: 50; Maximum: ${$T}`).addText(e=>{e.setValue(this.mb.getSettings().syncInterval.toString()),e.onChange(e=>{this.mb.updateSettings(t=>{t.syncInterval=Number.parseInt(e),Number.isNaN(t.syncInterval)&&(t.syncInterval=QT.syncInterval),t.syncInterval<50&&(t.syncInterval=50),t.syncInterval>1e3&&(t.syncInterval=$T)})})})}},NQ=class extends pJ{app;plugin;dependencyManager;constructor(e){super(),this.app=e.app,this.plugin=e,this.setComponents({api:new BY(this),internal:new $Z(this),file:new HY(this)}),this.plugin.addSettingTab(new MQ(this.app,this)),this.dependencyManager=new OJ(this,[]),this.setUpDependencies(),this.setUpMetadataManager(),this.loadTemplates(),this.addPostProcessors(),this.plugin.registerEditorExtension(TJ(this)),this.addCommands(),SJ(this),this.plugin.registerView(cQ,e=>new lQ(e,this)),this.addStatusBarBuildIndicator(),this.getSettings().enableEditorRightClickMenu&&this.plugin.registerEvent(this.app.workspace.on(`editor-menu`,(e,t)=>{PJ(e,t,this)}))}setUpDependencies(){this.dependencyManager.dependencies=[{name:`Dataview`,pluginId:`dataview`,minVersion:new DJ(0,5,64)},{name:`JS Engine`,pluginId:`js-engine`,minVersion:new DJ(0,3,0)},{name:`Templater`,pluginId:`templater-obsidian`,minVersion:new DJ(2,2,3)}]}setUpMetadataManager(){this.metadataManager=new F_,this.metadataManager.registerSource(new eQ(this,L_.FRONTMATTER,this.metadataManager)),this.metadataManager.registerSource(new hJ(L_.MEMORY,this.metadataManager)),this.metadataManager.registerSource(new gJ(L_.GLOBAL_MEMORY,this.metadataManager)),this.metadataManager.registerSource(new _J(L_.SCOPE,this.metadataManager)),this.metadataManager.setDefaultSource(L_.FRONTMATTER),this.plugin.registerEvent(this.app.vault.on(`rename`,(e,t)=>{this.mountableManager.unloadFile(t),this.metadataManager.onStoragePathRenamed(t,e.path)})),this.plugin.registerEvent(this.app.vault.on(`delete`,e=>{this.mountableManager.unloadFile(e.path),this.metadataManager.onStoragePathDeleted(e.path)})),this.plugin.registerInterval(window.setInterval(()=>this.metadataManager.cycle(),this.getSettings().syncInterval))}addPostProcessors(){this.plugin.registerMarkdownPostProcessor((e,t)=>{let n=e.querySelectorAll(`code`),r=t.sourcePath;for(let e=0;e{await(0,u.loadPrism)();let r=t,i=e.trim(),a=n.sourcePath,o=this.api.isInlineFieldDeclarationAndGetType(i);if(o===void 0)return;let s=this.api.createInlineFieldOfTypeFromString(o,i,a,void 0,A.BLOCK,new tQ(n,t));this.api.wrapInMDRC(s,r,n)}),this.plugin.registerMarkdownCodeBlockProcessor(`meta-bind-js-view`,async(e,t,n)=>{await(0,u.loadPrism)();let r=this.api.createJsViewFieldMountable(n.sourcePath,{declaration:e});this.api.wrapInMDRC(r,t,n)}),this.plugin.registerMarkdownCodeBlockProcessor(`meta-bind-embed`,async(e,t,n)=>{await(0,u.loadPrism)();let r=this.api.createEmbedMountable(n.sourcePath,{content:e,depth:0});this.api.wrapInMDRC(r,t,n)});for(let e=1;e<=8;e++)this.plugin.registerMarkdownCodeBlockProcessor(`meta-bind-embed-internal-${e}`,async(t,n,r)=>{await(0,u.loadPrism)();let i=this.api.createEmbedMountable(r.sourcePath,{content:t,depth:e});this.api.wrapInMDRC(i,n,r)});this.plugin.registerMarkdownCodeBlockProcessor(`meta-bind-button`,async(e,t,n)=>{await(0,u.loadPrism)();let r=this.api.createButtonMountable(n.sourcePath,{declaration:e,isPreview:!1,position:new tQ(n,t)});this.api.wrapInMDRC(r,t,n)})}addCommands(){this.plugin.addCommand({id:`open-docs`,name:`Open docs`,callback:()=>{window.open(`https://mprojectscode.github.io/obsidian-meta-bind-plugin-docs/`,`_blank`)}}),this.plugin.addCommand({id:`open-playground`,name:`Open playground`,callback:()=>{this.activateView(cQ)}}),this.plugin.addCommand({id:`open-help`,name:`Open Help`,callback:()=>{this.activateView(cQ)}}),this.plugin.addCommand({id:`open-button-builder`,name:`Open button builder`,callback:()=>{this.internal.openButtonBuilderModal({onOkay:e=>{window.navigator.clipboard.writeText(`\`\`\`meta-bind-button\n${(0,u.stringifyYaml)(e)}\n\`\`\``)},submitText:`Copy to Clipboard`})}}),this.plugin.addCommand({id:`copy-command-id`,name:`Select and copy command id`,callback:()=>{this.internal.openCommandSelectModal(e=>{window.navigator.clipboard.writeText(e.id)})}})}addStatusBarBuildIndicator(){if(this.build===fJ.DEV){let e=this.plugin.addStatusBarItem();e.setText(`Meta Bind Dev Build`),e.addClass(`mb-error`),this.plugin.register(()=>e.remove())}if(this.build===fJ.CANARY){let e=this.plugin.addStatusBarItem();e.setText(`Meta Bind Canary Build (1.4.8)`),e.addClass(`mb-error`),this.plugin.register(()=>e.remove())}}async activateView(e){let{workspace:t}=this.app,n,r=t.getLeavesOfType(e);r.length>0?n=r[0]:(n=t.getLeaf(`tab`),await n.setViewState({type:e,active:!0})),await t.revealLeaf(n)}getSettings(){return this.plugin.settings}saveSettings(e){this.plugin.settings=e,this.plugin.saveSettings()}},PQ=class extends u.Plugin{mb;api;settings;async onload(){console.log(`meta-bind | Main >> loading`),console.time(`meta-bind | Main >> load-time`),await this.loadSettings(),this.mb=new NQ(this),this.api=this.mb.api,this.mb.updateInternalSettings(this.settings),console.timeEnd(`meta-bind | Main >> load-time`)}onunload(){this.mb.destroy(),console.log(`meta-bind | Main >> unload`)}async loadSettings(){console.log(`meta-bind | Main >> loading settings`);let e=await this.loadData()??{};typeof e==`object`&&e&&(delete e.inputTemplates,delete e.useUsDateInputOrder),this.settings=Object.assign({},QT,e),yt(e,this.settings)||await this.saveSettings()}async saveSettings(){console.log(`meta-bind | Main >> settings save`),await this.saveData(this.settings)}async onExternalSettingsChange(){await this.loadSettings(),this.mb.updateInternalSettings(this.settings)}};exports.ObsMetaBind=NQ,exports.default=PQ; /* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/obsidian-meta-bind-plugin/manifest.json b/.obsidian/plugins/obsidian-meta-bind-plugin/manifest.json index 52623179..8b6b80ff 100644 --- a/.obsidian/plugins/obsidian-meta-bind-plugin/manifest.json +++ b/.obsidian/plugins/obsidian-meta-bind-plugin/manifest.json @@ -1,7 +1,7 @@ { "id": "obsidian-meta-bind-plugin", "name": "Meta Bind", - "version": "1.4.6", + "version": "1.4.8", "minAppVersion": "1.4.0", "description": "Make your notes interactive with inline input fields, metadata displays, and buttons.", "author": "Moritz Jung", diff --git a/.obsidian/plugins/obsidian-meta-bind-plugin/styles.css b/.obsidian/plugins/obsidian-meta-bind-plugin/styles.css index cca20605..7f83e405 100644 --- a/.obsidian/plugins/obsidian-meta-bind-plugin/styles.css +++ b/.obsidian/plugins/obsidian-meta-bind-plugin/styles.css @@ -1,940 +1,21 @@ -body { - --mb-border-width: var(--border-width); - --mb-border-radius: var(--input-radius); - --mb-slider-spacing: 5px; - --mb-select-element-border-width: 5px; - --mb-date-input-year-input-width: 80px; - - --mb-background-modifier-active: hsla(var(--interactive-accent-hsl), 0.15); - --mb-background-modifier-active-hover: hsla(var(--interactive-accent-hsl), 0.3); - - --mb-input-type-select-text: var(--text-muted); - --mb-input-type-select-text-hover: var(--text-normal); - --mb-input-type-select-text-active: var(--text-normal); - --mb-input-type-select-text-active-hover: var(--text-normal); -} - -/* Input Wrappers */ -.mb-input { - background-color: transparent !important; - border: none !important; -} - -.mb-input-wrapper { - display: inline; - white-space: normal; -} - -.mb-input-inline { - display: inline !important; -} - -.mb-input-block { - display: block !important; -} - -/* View Wrappers */ -/* For higher specificity */ -:is(code, span).mb-view:has(> div.mb-view-wrapper) { - background-color: transparent; - border: none; - color: inherit; - font-size: inherit; - font-family: inherit; - padding: 0; - margin: 0; -} - -div.mb-view-wrapper.mb-view-markdown > p { - margin: 0; - display: inline-block; -} - -div.mb-view-wrapper { - display: inline; -} - -.mb-button { - background-color: transparent !important; - border: none !important; - font-family: var(--font-text); - color: var(--text-normal); -} - -.mb-button-inline { - display: inline !important; -} - -.mb-button-block { - display: block !important; -} - -.mb-button-group.mb-button-group { - background-color: transparent !important; - border: none !important; - padding-inline: 0; - - & > .mb-button { - &:first-child:not(:last-child) { - & > .mb-button-inner { - border-radius: var(--mb-border-radius) 0 0 var(--mb-border-radius); - } - } - - &:last-child:not(:first-child) { - & > .mb-button-inner { - border-radius: 0 var(--mb-border-radius) var(--mb-border-radius) 0; - } - } - - &:last-child:first-child { - & > .mb-button-inner { - border-radius: var(--mb-border-radius); - } - } - - & > .mb-button-inner { - border-radius: 0; - } - } -} - -.mb-button-inner { - vertical-align: bottom; - /* Add a gap between text and icons. */ - gap: var(--size-4-1); - background-size: cover; - background-position: center center; - - &.mod-plain { - background: none; - box-shadow: none; - border: none; - - color: var(--text-muted); - } - - &.mod-plain:hover { - color: var(--text-normal); - } - - &.disabled { - opacity: 0.6; - } -} - -/* Toggle Input */ -.mb-input-wrapper .checkbox-container { - vertical-align: text-bottom; -} - -/* Slider Input */ - -.mb-input-wrapper:has(> .mb-slider-input) { - display: inline-flex; -} - -.mb-slider-input { - align-self: center; - margin-left: var(--mb-slider-spacing) !important; - margin-right: var(--mb-slider-spacing) !important; -} - -.mb-slider-input-label { - color: var(--text-muted); - font-size: var(--font-ui-small); -} - -/* Text Input */ -.mb-content-limit-indicator { - color: var(--text-muted); - font-size: var(--font-ui-small); -} - -.mb-content-limit-indicator-overflow { - color: var(--color-red); -} - -/* Select Input */ -.mb-select-input-element { - cursor: pointer; - display: flex; - gap: var(--size-4-2); - align-items: center; - padding: var(--size-4-1) var(--size-4-2); - margin: var(--size-4-1) 0; - border-radius: var(--mb-border-radius); - white-space: pre-wrap; - font-size: 16px; - min-width: 200px; - color: var(--mb-input-type-select-text); - - &.is-selected { - color: var(--mb-input-type-select-text-active); - background: var(--mb-background-modifier-active); - - &:hover { - color: var(--mb-input-type-select-text-active-hover); - background: var(--mb-background-modifier-active-hover); - } - } - - &:hover { - color: var(--mb-input-type-select-text-hover); - background: var(--background-modifier-hover); - } - - &:not(.mb-mod-multi) > input[type='checkbox'] { - border-radius: 50%; - } - - & > input[type='checkbox'] { - margin: 0; - } -} - -/* List Input */ -.mb-list-input { - display: flex; - gap: var(--size-4-2); -} - -.mb-list-input > input { - flex-grow: 1; -} - -.mb-list-input > textarea { - flex-grow: 1; - resize: vertical; -} - -.mb-list-empty { - color: var(--text-faint); -} - -.mb-list-items { - margin-bottom: var(--size-4-4); - display: flex; - flex-direction: column; - gap: var(--size-4-1); -} - -.mb-list-item { - display: flex; - padding: var(--size-4-1) var(--size-4-2); - border-radius: var(--mb-border-radius); - user-select: text; - - & > span { - flex-grow: 1; - } - - &:hover { - background: var(--background-modifier-hover); - } -} - -/* Inline List */ -.mb-inline-list { - display: inline; - font-size: 0; - - & > .mb-inline-list-item { - border: var(--mb-border-width) solid var(--background-modifier-border); - border-radius: var(--mb-border-radius); - display: inline-flex; - align-items: center; - gap: var(--size-4-2); - padding-inline: var(--size-4-2); - padding-block: var(--size-4-1); - font-size: var(--font-ui-small); - vertical-align: bottom; - user-select: text; - - &:not(:last-child) { - margin-right: var(--size-4-2); - } - - &:hover { - border-color: var(--background-modifier-border-hover); - background-color: var(--background-modifier-hover); - transition: - box-shadow 0.15s ease-in-out, - border 0.15s ease-in-out; - } - } - - & > .mb-inline-list-add { - border: var(--mb-border-width) solid var(--background-modifier-border); - border-radius: var(--mb-border-radius); - display: inline-flex; - align-items: center; - padding-inline: var(--size-4-2); - padding-block: var(--size-4-1); - font-size: var(--font-ui-small); - - &:hover { - border-color: var(--background-modifier-border-hover); - background-color: var(--background-modifier-hover); - transition: - box-shadow 0.15s ease-in-out, - border 0.15s ease-in-out; - } - - &:focus, - &:focus-visible { - box-shadow: 0 0 0 2px var(--background-modifier-border-focus); - color: var(--text-normal); - } - } -} - -/* Suggester Input */ -.mb-suggest-input { - background: var(--background-modifier-form-field); - border-radius: var(--mb-border-radius); - border: var(--mb-border-width) solid var(--background-modifier-border); - padding: var(--size-4-1) var(--size-4-2); - position: relative; - color: var(--text-normal); - display: inline-flex; - align-items: center; - gap: var(--size-4-1); - user-select: text; - - &:hover { - border-color: var(--background-modifier-border-hover); - transition: - box-shadow 0.15s ease-in-out, - border 0.15s ease-in-out; - } -} - -.mb-suggest-input > button { - padding: 0; - height: 20px; -} - -.mb-suggest-text { - display: inline-block; -} - -/* Progress Bar Input */ - -.mb-progress-bar-input { - height: var(--input-height); - width: 100%; - border-radius: var(--mb-border-radius); - border: var(--mb-border-width) solid var(--background-modifier-border); - position: relative; - cursor: col-resize; -} - -.mb-progress-bar-input:focus-visible { - box-shadow: 0 0 0 3px var(--background-modifier-border-focus); -} - -.mb-progress-bar-progress { - height: 100%; - background: var(--color-accent); - border-radius: var(--mb-border-radius); -} - -.mb-progress-bar-value { - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); -} - -.mb-progress-bar-label-left { - position: absolute; - top: 50%; - transform: translate(0, -50%); - left: var(--size-4-2); -} - -.mb-progress-bar-label-right { - position: absolute; - top: 50%; - transform: translate(0, -50%); - right: var(--size-4-2); -} - -/* Text Area Input */ - -.mb-input-textarea { - width: 100%; - height: 100px; - resize: vertical; -} - -/* editor */ - -.mb-editor-input { - background: var(--background-secondary); - width: 100%; - height: 500px; - padding: 0; - position: relative; - margin-left: 0; - overflow: scroll; -} - -.mb-editor-input > textarea { - background: var(--background-secondary); - border: none; - padding: var(--size-4-4) var(--size-4-8); - margin: 0; - position: absolute; - inset: 0; - resize: none; - border-radius: 0; -} - -.mb-editor-input > div { - padding: var(--size-4-4) var(--size-4-8); - position: absolute; - inset: 0; -} - -/* Card */ -.mb-card { - padding: var(--size-4-2); - margin: var(--size-4-2) 0; - border-radius: var(--mb-border-radius); - border: var(--mb-border-width) solid var(--background-modifier-border); - display: flex; - flex-direction: column; - width: 100%; - gap: var(--size-4-2); -} - -[class*='block-language-'] > .mb-card { - display: flex; -} - -.mb-card > :first-child { - margin-top: 0; -} - -.mb-card > :last-child { - margin-bottom: 0; -} - -.mb-card > code { - display: block; -} - -.mb-card > pre { - margin: 0; -} - -.mb-card > h3 { - margin-top: 0; -} - -.mb-card.mb-card-full-width { - width: 100%; -} - -/* Image */ -.mb-image-modal-header { - margin-bottom: var(--size-4-4); -} - -.mb-image-card-grid { - display: grid; - grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr)); - gap: var(--size-4-4); -} - -.mb-image-card { - position: relative; -} - -.mb-image-suggester-modal { - width: 80%; -} - -.mb-image-card-image { - width: 100%; - height: fit-content; - max-height: 500px; - object-fit: contain; -} - -.mb-image-card-text { - display: block; - margin: var(--size-4-2); - margin-bottom: var(--size-4-4); -} - -.mb-image-card-footer { - display: flex; - align-items: center; - - & > span { - padding-left: var(--size-4-2); - font-size: var(--font-ui-small); - color: var(--text-muted); - min-width: 0; - text-overflow-ellipsis: true; - flex: 1; - } -} - -.mb-image-card-button { - position: absolute; - opacity: 0; - top: var(--size-4-2); - right: var(--size-4-2); - transition: opacity 0.2s ease-in-out; -} - -.mb-image-card:hover .mb-image-card-button { - opacity: 1; -} - -.mb-image-suggest-input { - background: var(--background-secondary); - border-radius: var(--mb-border-radius); - border: var(--mb-border-width) solid var(--background-modifier-border); - padding: var(--size-4-2); - width: 100%; -} - -.mb-image-empty { - display: flex; - flex-direction: column; - align-items: center; -} - -/* Time Input */ - -.mb-input-type-time { - input[type='time'] { - -webkit-app-region: no-drag; - background: var(--background-modifier-form-field); - border: var(--input-border-width) solid var(--background-modifier-border); - color: var(--text-normal); - font-family: inherit; - padding: var(--size-4-1) var(--size-4-2); - font-size: var(--font-ui-small); - border-radius: var(--input-radius); - outline: none; - - &:hover { - border-color: var(--background-modifier-border-hover); - transition: - box-shadow 0.15s ease-in-out, - border 0.15s ease-in-out; - } - - &:focus, - &:focus-visible { - box-shadow: 0 0 0 2px var(--background-modifier-border-focus); - } - } -} - -/* Date Picker Input */ - -.mb-date-picker-input { - background: var(--background-modifier-form-field); - border: var(--mb-border-width) solid var(--background-modifier-border); - color: var(--text-normal); - font-family: inherit; - padding: var(--size-4-1) var(--size-4-2); - font-size: var(--font-ui-small); - border-radius: var(--input-radius); - outline: none; - - position: relative; - display: inline-flex; - align-items: center; - gap: 5px; - - &:hover { - border-color: var(--background-modifier-border-hover); - transition: - box-shadow 0.15s ease-in-out, - border 0.15s ease-in-out; - } - - &:focus, - &:focus-visible { - box-shadow: 0 0 0 2px var(--background-modifier-border-focus); - } - - & > .mb-date-picker-text { - display: inline-block; - } -} - -.mb-date-picker { - display: block; - padding: var(--size-4-4); -} - -.mb-date-picker-header { - display: flex; - gap: var(--size-4-2); - align-items: center; - justify-content: space-around; -} - -.mb-date-picker-header-text { - flex: 1; - text-align: center; - display: flex; - gap: var(--size-4-2); - align-items: center; - justify-content: center; - width: min-content; -} - -.mb-date-picker-header-text-year { - width: 60px; - padding: var(--size-4-2); -} - -.mb-date-picker-header-text-month { - height: min-content; -} - -.mb-date-picker-month-switch-button { - margin: 0; -} - -.mb-date-picker-util-button { - margin: 0; -} - -.mb-date-picker-footer { - display: flex; - gap: var(--size-4-2); - align-items: center; - justify-content: center; -} - -.mb-calendar { - margin-top: 10px; -} - -.mb-calendar-header { - display: flex; - justify-content: space-around; - flex-wrap: wrap; - gap: var(--size-4-1); - background: var(--background-secondary); - border-radius: var(--mb-border-radius); - margin-bottom: var(--size-4-1); -} - -.mb-calendar-content { - display: grid; - flex-wrap: wrap; - grid-template-columns: repeat(7, 1fr); - gap: var(--size-4-1); -} - -.mb-calendar-cell { - min-width: 40px; - padding: var(--size-4-2); - display: flex; - justify-content: center; - align-items: center; - border-radius: var(--mb-border-radius); -} - -.mb-calendar-content-cell { - cursor: pointer; -} - -.mb-calendar-cell-text { - margin: auto; - text-align: center; -} - -.mb-calendar-cell.mb-calendar-selected { - background: var(--interactive-accent); - color: var(--text-on-accent); -} - -.mb-calendar-cell.mb-calendar-highlight:hover { - background: var(--interactive-hover); -} - -.mb-calendar-cell.mb-calendar-selected.mb-calendar-highlight:hover { - background: var(--interactive-accent-hover); -} - -/* Embed */ - -.mb-embed > .mb-embed-message { - display: block; - width: 100%; - text-align: center; - color: var(--text-muted); - font-size: var(--font-smaller); -} - -/* Error */ -.mb-error { - color: var(--text-error) !important; - font-weight: bold; - font-family: var(--font-monospace); -} - -code.mb-error { - color: var(--text-error) !important; -} - -.mb-warning { - color: var(--text-warning) !important; - font-weight: bold; - font-family: var(--font-monospace); -} - -code.mb-warning { - color: var(--text-warning) !important; -} - -/* Code */ -.mb-code { - color: var(--text-normal); - font-family: var(--font-monospace); -} - -/* Error Collection */ -.mb-error-collection-card { - padding: var(--size-4-2); - margin: var(--size-4-2) 0; - border-radius: var(--mb-border-radius); - border: var(--mb-border-width) solid var(--background-modifier-border); - color: var(--text-normal); - font-family: var(--font-default); -} - -.mb-error-collection { - display: inline-block; - position: relative; - cursor: pointer; - margin-inline: var(--size-4-2); -} - -.publish-renderer .mb-error-collection { - margin-inline: 0; -} - -.mb-error-collection > svg { - width: var(--font-text-size); - height: var(--font-text-size); - vertical-align: text-bottom; -} - -.mb-error-collection > svg.lucide-alert-circle { - color: var(--text-error); -} - -.mb-error-collection > svg.lucide-alert-triangle { - color: var(--text-warning); -} - -.mb-error-collection > svg.lucide-info { - color: var(--text-normal); -} - -.mb-pre { - overflow-x: scroll; -} - -.mb-pre > code { - white-space: pre; -} - -.mb-error-collection-modal { - width: 80%; -} - -.mb-error-text { - color: var(--text-error) !important; -} - -.mb-warning-text { - color: var(--text-warning) !important; -} - -/* --- Misc --- */ - -.mb-whitespace-pre { - white-space: pre; -} - -.mb-excluded-folders-table-input-cell { - width: 100%; -} - -.mb-excluded-folders-table-input-cell > input { - width: 100%; -} - -.mb-textarea { - width: 100%; - height: 100px; - resize: vertical; -} - -.mb-icon-wrapper { - display: block; - position: relative; - width: 18px; - height: 18px; -} - -.mb-icon-wrapper.mb-icon-wrapper-inline { - display: inline-block; -} - -.mb-icon-wrapper > svg { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; -} - -.mb-faq-view { - max-width: var(--file-line-width); - margin-left: auto; - margin-right: auto; -} - -a.mb-no-link { - color: var(--code-normal); - text-decoration: none; -} - -table.mb-html-table { -} - -td.mb-html-table-button-cell { - --table-column-min-width: 10px; -} - -th.mb-html-table-button-cell { - --table-column-min-width: 10px; -} - -.mb-table-wrapper { - overflow-x: auto; -} - -.mb-flex-row { - display: flex; - flex-direction: row; - justify-content: space-between; - align-items: center; - gap: var(--size-4-2); -} - -.mb-flex-row.mb-flex-row-stretch > :first-child { - flex: 1; -} - -.mb-flex-row-reverse { - display: flex; - flex-direction: row-reverse; - justify-content: space-between; - align-items: center; - gap: var(--size-4-2); -} - -.mb-flex-row-reverse.mb-flex-row-stretch > :last-child { - flex: 1; -} - -.mb-full-width-text-input { - width: 100%; -} - -.mb-full-width-text-input > input { - width: 100%; -} - -.mb-full-width-text-input > textarea { - width: 100%; - height: 200px; - resize: vertical; -} - -div.setting-item.mb-vertical { - flex-direction: column; - align-items: flex-start; - gap: var(--size-4-1); -} - -div.setting-item > div.setting-item-control.mb-vertical-control { - flex-direction: column; - align-items: flex-start; - gap: var(--size-4-1); - width: 100%; -} - -.mb-search-modal-element-description { - color: var(--text-faint); -} - -/* --- HIGHLIGHTING CLASSES --- */ -.mb-highlight-test { - color: #00bfbc; -} - -.mb-highlight-ident, -.cm-mb-highlight-ident { - color: var(--code-normal); -} - -.mb-highlight-control, -.cm-mb-highlight-control { - color: var(--code-keyword); -} - -.mb-highlight-string, -.cm-mb-highlight-string { - color: var(--code-string); -} - -.mb-highlight-keyword, -.cm-mb-highlight-keyword { - color: var(--code-property); -} - -.mb-highlight-error, -.cm-mb-highlight-error { - color: var(--text-error); -} - -/* --- UTIL CLASSES --- */ - -.meta-bind-full-width > * { - width: 100%; -} - -.meta-bind-high > * { - height: 200px; -} - -.meta-bind-small-width > * { - width: 80px; -} - -/* --- PUBLISH STUFF --- */ - -.published-container { - .mb-input-type-toggle > div { - display: inline-block; - vertical-align: sub; - } -} +/* +------------------------------------------- +Meta Bind - Release Build +------------------------------------------- +By: Moritz Jung (https://www.moritzjung.dev/) +Version: 1.4.8 +------------------------------------------- +THIS IS A GENERATED/BUNDLED FILE BY ESBUILD +if you want to view the source, please visit the github repository of this plugin +------------------------------------------- +Copyright (C) 2026 Moritz Jung +------------------------------------------- +This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along with this program. If not, see . +*/ + +body{--mb-border-width:var(--border-width);--mb-border-radius:var(--input-radius);--mb-slider-spacing:5px;--mb-select-element-border-width:5px;--mb-date-input-year-input-width:80px;--mb-background-modifier-active:hsla(var(--interactive-accent-hsl), .15);--mb-background-modifier-active-hover:hsla(var(--interactive-accent-hsl), .3);--mb-input-type-select-text:var(--text-muted);--mb-input-type-select-text-hover:var(--text-normal);--mb-input-type-select-text-active:var(--text-normal);--mb-input-type-select-text-active-hover:var(--text-normal)}.mb-input{background-color:#0000!important;border:none!important}.mb-input-wrapper{white-space:normal;display:inline}.mb-input-inline{display:inline!important}.mb-input-block{display:block!important}:is(code,span).mb-view:has(>div.mb-view-wrapper){color:inherit;font-size:inherit;background-color:#0000;border:none;margin:0;padding:0;font-family:inherit}div.mb-view-wrapper.mb-view-markdown>p{margin:0;display:inline-block}div.mb-view-wrapper{display:inline}.mb-button{font-family:var(--font-text);color:var(--text-normal);background-color:#0000!important;border:none!important}.mb-button-inline{display:inline!important}.mb-button-block{display:block!important}.mb-button-group.mb-button-group{padding-inline:0;background-color:#0000!important;border:none!important}.mb-button-group.mb-button-group>.mb-button:first-child:not(:last-child)>.mb-button-inner{border-radius:var(--mb-border-radius) 0 0 var(--mb-border-radius)}.mb-button-group.mb-button-group>.mb-button:last-child:not(:first-child)>.mb-button-inner{border-radius:0 var(--mb-border-radius) var(--mb-border-radius) 0}.mb-button-group.mb-button-group>.mb-button:last-child:first-child>.mb-button-inner{border-radius:var(--mb-border-radius)}.mb-button-group.mb-button-group>.mb-button>.mb-button-inner{border-radius:0}.mb-button-inner{vertical-align:bottom;gap:var(--size-4-1);background-position:50%;background-size:cover}.mb-button-inner.mod-plain{box-shadow:none;color:var(--text-muted);background:0 0;border:none}.mb-button-inner.mod-plain:hover{color:var(--text-normal)}.mb-button-inner.disabled{opacity:.6}.mb-input-wrapper .checkbox-container{vertical-align:text-bottom}.mb-input-wrapper:has(>.mb-slider-input){display:inline-flex}.mb-slider-input{align-self:center;margin-left:var(--mb-slider-spacing)!important;margin-right:var(--mb-slider-spacing)!important}.mb-slider-input-label,.mb-content-limit-indicator{color:var(--text-muted);font-size:var(--font-ui-small)}.mb-content-limit-indicator-overflow{color:var(--color-red)}.mb-select-input-element{cursor:pointer;gap:var(--size-4-2);padding:var(--size-4-1) var(--size-4-2);margin:var(--size-4-1) 0;border-radius:var(--mb-border-radius);white-space:pre-wrap;min-width:200px;color:var(--mb-input-type-select-text);align-items:center;font-size:16px;display:flex}.mb-select-input-element.is-selected{color:var(--mb-input-type-select-text-active);background:var(--mb-background-modifier-active)}.mb-select-input-element.is-selected:hover{color:var(--mb-input-type-select-text-active-hover);background:var(--mb-background-modifier-active-hover)}.mb-select-input-element:hover{color:var(--mb-input-type-select-text-hover);background:var(--background-modifier-hover)}.mb-select-input-element:not(.mb-mod-multi)>input[type=checkbox]{border-radius:50%}.mb-select-input-element>input[type=checkbox]{margin:0}.mb-list-input{gap:var(--size-4-2);display:flex}.mb-list-input>input{flex-grow:1}.mb-list-input>textarea{resize:vertical;flex-grow:1}.mb-list-empty{color:var(--text-faint)}.mb-list-items{margin-bottom:var(--size-4-4);gap:var(--size-4-1);flex-direction:column;display:flex}.mb-list-item{padding:var(--size-4-1) var(--size-4-2);border-radius:var(--mb-border-radius);-webkit-user-select:text;user-select:text;display:flex}.mb-list-item>span{flex-grow:1}.mb-list-item:hover{background:var(--background-modifier-hover)}.mb-inline-list{font-size:0;display:inline}.mb-inline-list>.mb-inline-list-item{border:var(--mb-border-width) solid var(--background-modifier-border);border-radius:var(--mb-border-radius);align-items:center;gap:var(--size-4-2);padding-inline:var(--size-4-2);padding-block:var(--size-4-1);font-size:var(--font-ui-small);vertical-align:bottom;-webkit-user-select:text;user-select:text;display:inline-flex}.mb-inline-list>.mb-inline-list-item:not(:last-child){margin-right:var(--size-4-2)}.mb-inline-list>.mb-inline-list-item:hover{border-color:var(--background-modifier-border-hover);background-color:var(--background-modifier-hover);transition:box-shadow .15s ease-in-out,border .15s ease-in-out}.mb-inline-list>.mb-inline-list-add{border:var(--mb-border-width) solid var(--background-modifier-border);border-radius:var(--mb-border-radius);padding-inline:var(--size-4-2);padding-block:var(--size-4-1);font-size:var(--font-ui-small);align-items:center;display:inline-flex}.mb-inline-list>.mb-inline-list-add:hover{border-color:var(--background-modifier-border-hover);background-color:var(--background-modifier-hover);transition:box-shadow .15s ease-in-out,border .15s ease-in-out}.mb-inline-list>.mb-inline-list-add:focus,.mb-inline-list>.mb-inline-list-add:focus-visible{box-shadow:0 0 0 2px var(--background-modifier-border-focus);color:var(--text-normal)}.mb-suggest-input{background:var(--background-modifier-form-field);border-radius:var(--mb-border-radius);border:var(--mb-border-width) solid var(--background-modifier-border);padding:var(--size-4-1) var(--size-4-2);color:var(--text-normal);align-items:center;gap:var(--size-4-1);-webkit-user-select:text;user-select:text;display:inline-flex;position:relative}.mb-suggest-input:hover{border-color:var(--background-modifier-border-hover);transition:box-shadow .15s ease-in-out,border .15s ease-in-out}.mb-suggest-input>button{height:20px;padding:0}.mb-suggest-text{display:inline-block}.mb-progress-bar-input{height:var(--input-height);border-radius:var(--mb-border-radius);border:var(--mb-border-width) solid var(--background-modifier-border);cursor:col-resize;width:100%;position:relative}.mb-progress-bar-input:focus-visible{box-shadow:0 0 0 3px var(--background-modifier-border-focus)}.mb-progress-bar-progress{background:var(--color-accent);border-radius:var(--mb-border-radius);height:100%}.mb-progress-bar-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mb-progress-bar-label-left{top:50%;left:var(--size-4-2);position:absolute;transform:translateY(-50%)}.mb-progress-bar-label-right{top:50%;right:var(--size-4-2);position:absolute;transform:translateY(-50%)}.mb-input-textarea{resize:vertical;width:100%;height:100px}.mb-editor-input{background:var(--background-secondary);width:100%;height:500px;margin-left:0;padding:0;position:relative;overflow:scroll}.mb-editor-input>textarea{background:var(--background-secondary);padding:var(--size-4-4) var(--size-4-8);resize:none;border:none;border-radius:0;margin:0;position:absolute;inset:0}.mb-editor-input>div{padding:var(--size-4-4) var(--size-4-8);position:absolute;inset:0}.mb-card{padding:var(--size-4-2);margin:var(--size-4-2) 0;border-radius:var(--mb-border-radius);border:var(--mb-border-width) solid var(--background-modifier-border);gap:var(--size-4-2);flex-direction:column;width:100%;display:flex}[class*=block-language-]>.mb-card{display:flex}.mb-card>:first-child{margin-top:0}.mb-card>:last-child{margin-bottom:0}.mb-card>code{display:block}.mb-card>pre{margin:0}.mb-card>h3{margin-top:0}.mb-card.mb-card-full-width{width:100%}.mb-image-modal-header{margin-bottom:var(--size-4-4)}.mb-image-card-grid{gap:var(--size-4-4);grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));display:grid}.mb-image-card{position:relative}.mb-image-suggester-modal{width:80%}.mb-image-card-image{object-fit:contain;width:100%;height:-moz-fit-content;height:fit-content;max-height:500px}.mb-image-card-text{margin:var(--size-4-2);margin-bottom:var(--size-4-4);display:block}.mb-image-card-footer{align-items:center;display:flex}.mb-image-card-footer>span{padding-left:var(--size-4-2);font-size:var(--font-ui-small);color:var(--text-muted);text-overflow-ellipsis:true;flex:1;min-width:0}.mb-image-card-button{opacity:0;top:var(--size-4-2);right:var(--size-4-2);transition:opacity .2s ease-in-out;position:absolute}.mb-image-card:hover .mb-image-card-button{opacity:1}.mb-image-suggest-input{background:var(--background-secondary);border-radius:var(--mb-border-radius);border:var(--mb-border-width) solid var(--background-modifier-border);padding:var(--size-4-2);width:100%}.mb-image-empty{flex-direction:column;align-items:center;display:flex}.mb-input-type-time input[type=time]{-webkit-app-region:no-drag;background:var(--background-modifier-form-field);border:var(--input-border-width) solid var(--background-modifier-border);color:var(--text-normal);padding:var(--size-4-1) var(--size-4-2);font-family:inherit;font-size:var(--font-ui-small);border-radius:var(--input-radius);outline:none}.mb-input-type-time input[type=time]:hover{border-color:var(--background-modifier-border-hover);transition:box-shadow .15s ease-in-out,border .15s ease-in-out}.mb-input-type-time input[type=time]:focus,.mb-input-type-time input[type=time]:focus-visible{box-shadow:0 0 0 2px var(--background-modifier-border-focus)}.mb-date-picker-input{background:var(--background-modifier-form-field);border:var(--mb-border-width) solid var(--background-modifier-border);color:var(--text-normal);padding:var(--size-4-1) var(--size-4-2);font-family:inherit;font-size:var(--font-ui-small);border-radius:var(--input-radius);outline:none;align-items:center;gap:5px;display:inline-flex;position:relative}.mb-date-picker-input:hover{border-color:var(--background-modifier-border-hover);transition:box-shadow .15s ease-in-out,border .15s ease-in-out}.mb-date-picker-input:focus,.mb-date-picker-input:focus-visible{box-shadow:0 0 0 2px var(--background-modifier-border-focus)}.mb-date-picker-input>.mb-date-picker-text{display:inline-block}.mb-date-picker{padding:var(--size-4-4);display:block}.mb-date-picker-header{gap:var(--size-4-2);justify-content:space-around;align-items:center;display:flex}.mb-date-picker-header-text{text-align:center;gap:var(--size-4-2);flex:1;justify-content:center;align-items:center;width:min-content;display:flex}.mb-date-picker-header-text-year{width:60px;padding:var(--size-4-2)}.mb-date-picker-header-text-month{height:min-content}.mb-date-picker-month-switch-button,.mb-date-picker-util-button{margin:0}.mb-date-picker-footer{gap:var(--size-4-2);justify-content:center;align-items:center;display:flex}.mb-calendar{margin-top:10px}.mb-calendar-header{justify-content:space-around;gap:var(--size-4-1);background:var(--background-secondary);border-radius:var(--mb-border-radius);margin-bottom:var(--size-4-1);flex-wrap:wrap;display:flex}.mb-calendar-content{gap:var(--size-4-1);flex-wrap:wrap;grid-template-columns:repeat(7,1fr);display:grid}.mb-calendar-cell{min-width:40px;padding:var(--size-4-2);border-radius:var(--mb-border-radius);justify-content:center;align-items:center;display:flex}.mb-calendar-content-cell{cursor:pointer}.mb-calendar-cell-text{text-align:center;margin:auto}.mb-calendar-cell.mb-calendar-selected{background:var(--interactive-accent);color:var(--text-on-accent)}.mb-calendar-cell.mb-calendar-highlight:hover{background:var(--interactive-hover)}.mb-calendar-cell.mb-calendar-selected.mb-calendar-highlight:hover{background:var(--interactive-accent-hover)}.mb-embed>.mb-embed-message{text-align:center;width:100%;color:var(--text-muted);font-size:var(--font-smaller);display:block}.mb-error{font-weight:700;font-family:var(--font-monospace);color:var(--text-error)!important}code.mb-error{color:var(--text-error)!important}.mb-warning{font-weight:700;font-family:var(--font-monospace);color:var(--text-warning)!important}code.mb-warning{color:var(--text-warning)!important}.mb-code{color:var(--text-normal);font-family:var(--font-monospace)}.mb-error-collection-card{padding:var(--size-4-2);margin:var(--size-4-2) 0;border-radius:var(--mb-border-radius);border:var(--mb-border-width) solid var(--background-modifier-border);color:var(--text-normal);font-family:var(--font-default)}.mb-error-collection{cursor:pointer;margin-inline:var(--size-4-2);display:inline-block;position:relative}.publish-renderer .mb-error-collection{margin-inline:0}.mb-error-collection>svg{width:var(--font-text-size);height:var(--font-text-size);vertical-align:text-bottom}.mb-error-collection>svg.lucide-alert-circle{color:var(--text-error)}.mb-error-collection>svg.lucide-alert-triangle{color:var(--text-warning)}.mb-error-collection>svg.lucide-info{color:var(--text-normal)}.mb-pre{overflow-x:scroll}.mb-pre>code{white-space:pre}.mb-error-collection-modal{width:80%}.mb-error-text{color:var(--text-error)!important}.mb-warning-text{color:var(--text-warning)!important}.mb-whitespace-pre{white-space:pre}.mb-excluded-folders-table-input-cell,.mb-excluded-folders-table-input-cell>input{width:100%}.mb-textarea{resize:vertical;width:100%;height:100px}.mb-icon-wrapper{width:18px;height:18px;display:block;position:relative}.mb-icon-wrapper.mb-icon-wrapper-inline{display:inline-block}.mb-icon-wrapper>svg{position:absolute;inset:0}.mb-faq-view{max-width:var(--file-line-width);margin-left:auto;margin-right:auto}a.mb-no-link{color:var(--code-normal);text-decoration:none}td.mb-html-table-button-cell,th.mb-html-table-button-cell{--table-column-min-width:10px}.mb-table-wrapper{overflow-x:auto}.mb-flex-row{justify-content:space-between;align-items:center;gap:var(--size-4-2);flex-direction:row;display:flex}.mb-flex-row.mb-flex-row-stretch>:first-child{flex:1}.mb-flex-row-reverse{justify-content:space-between;align-items:center;gap:var(--size-4-2);flex-direction:row-reverse;display:flex}.mb-flex-row-reverse.mb-flex-row-stretch>:last-child{flex:1}.mb-full-width-text-input,.mb-full-width-text-input>input{width:100%}.mb-full-width-text-input>textarea{resize:vertical;width:100%;height:200px}div.setting-item.mb-vertical{align-items:flex-start;gap:var(--size-4-1);flex-direction:column}div.setting-item>div.setting-item-control.mb-vertical-control{align-items:flex-start;gap:var(--size-4-1);flex-direction:column;width:100%}.mb-search-modal-element-description{color:var(--text-faint)}.mb-highlight-test{color:#00bfbc}.mb-highlight-ident,.cm-mb-highlight-ident{color:var(--code-normal)}.mb-highlight-control,.cm-mb-highlight-control{color:var(--code-keyword)}.mb-highlight-string,.cm-mb-highlight-string{color:var(--code-string)}.mb-highlight-keyword,.cm-mb-highlight-keyword{color:var(--code-property)}.mb-highlight-error,.cm-mb-highlight-error{color:var(--text-error)}.meta-bind-full-width>*{width:100%}.meta-bind-high>*{height:200px}.meta-bind-small-width>*{width:80px}.published-container .mb-input-type-toggle>div{vertical-align:sub;display:inline-block} +/*$vite$:1*/ \ No newline at end of file diff --git a/.obsidian/plugins/obsidian-pandoc-reference-list/data.json b/.obsidian/plugins/obsidian-pandoc-reference-list/data.json index b9a11b22..71b275d2 100644 --- a/.obsidian/plugins/obsidian-pandoc-reference-list/data.json +++ b/.obsidian/plugins/obsidian-pandoc-reference-list/data.json @@ -5,7 +5,7 @@ { "id": 1, "name": "Ma bibliothèque", - "lastUpdate": 1776883694827 + "lastUpdate": 1777061284642 } ], "renderCitations": true, diff --git a/.obsidian/plugins/templater-obsidian/main.js b/.obsidian/plugins/templater-obsidian/main.js index 77f91ac8..0e881f66 100644 --- a/.obsidian/plugins/templater-obsidian/main.js +++ b/.obsidian/plugins/templater-obsidian/main.js @@ -3,24 +3,24 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin */ -var va=Object.create;var Un=Object.defineProperty;var wa=Object.getOwnPropertyDescriptor;var ba=Object.getOwnPropertyNames;var Ea=Object.getPrototypeOf,Ta=Object.prototype.hasOwnProperty;var Qi=n=>Un(n,"__esModule",{value:!0});var ka=(n,e)=>{Qi(n);for(var t in e)Un(n,t,{get:e[t],enumerable:!0})},Sa=(n,e,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of ba(e))!Ta.call(n,r)&&r!=="default"&&Un(n,r,{get:()=>e[r],enumerable:!(t=wa(e,r))||t.enumerable});return n},X=n=>Sa(Qi(Un(n!=null?va(Ea(n)):{},"default",n&&n.__esModule&&"default"in n?{get:()=>n.default,enumerable:!0}:{value:n,enumerable:!0})),n);var Xi=(()=>{for(var n=new Uint8Array(128),e=0;e<64;e++)n[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return t=>{for(var r=t.length,i=new Uint8Array((r-(t[r-1]=="=")-(t[r-2]=="="))*3/4|0),o=0,a=0;o>4,i[a++]=c<<4|d>>2,i[a++]=d<<6|m}return i}})();ka(exports,{default:()=>Hi});var kr=X(require("obsidian"));var L=X(require("obsidian"));var Zi=X(require("obsidian"));function oe(n){let e=new Zi.Notice("",8e3),t=createFragment(r=>{r.createEl("b",{text:"Templater Error"}),r.createEl("span",{text:":"}),r.createEl("br"),r.createEl("span",{text:n.message}),n instanceof D&&n.console_msg&&(r.createEl("br"),r.createEl("span",{text:"Check console for more information"}),console.error("Templater Error:",n.message,` -`,n.console_msg))});e.noticeEl.appendChild(t)}var D=class extends Error{constructor(e,t){super(e);this.console_msg=t;this.name=this.constructor.name,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}};async function Se(n,e){try{return await n()}catch(t){return t instanceof D?oe(t):oe(new D(e,t.message)),null}}function Ce(n,e){try{return n()}catch(t){return oe(new D(e,t.message)),null}}var re=function(){function n(){}return n.explainIfInvalidTSDocTagName=function(e){if(e[0]!=="@")return'A TSDoc tag name must start with an "@" symbol';if(!n._tsdocTagNameRegExp.test(e))return"A TSDoc tag name must start with a letter and contain only letters and numbers"},n.validateTSDocTagName=function(e){var t=n.explainIfInvalidTSDocTagName(e);if(t)throw new Error(t)},n.explainIfInvalidLinkUrl=function(e){if(e.length===0)return"The URL cannot be empty";if(!n._urlSchemeRegExp.test(e))return'An @link URL must begin with a scheme comprised only of letters and numbers followed by "://". (For general URLs, use an HTML "" tag instead.)';if(!n._urlSchemeAfterRegExp.test(e))return'An @link URL must have at least one character after "://"'},n.explainIfInvalidHtmlName=function(e){if(!n._htmlNameRegExp.test(e))return"An HTML name must be an ASCII letter followed by zero or more letters, digits, or hyphens"},n.validateHtmlName=function(e){var t=n.explainIfInvalidHtmlName(e);if(t)throw new Error(t)},n.explainIfInvalidPackageName=function(e){if(e.length===0)return"The package name cannot be an empty string";if(!n._validPackageNameRegExp.test(e))return"The package name ".concat(JSON.stringify(e)," is not a valid package name")},n.explainIfInvalidImportPath=function(e,t){if(e.length>0){if(e.indexOf("//")>=0)return'An import path must not contain "//"';if(e[e.length-1]==="/")return'An import path must not end with "/"';if(!t&&e[0]==="/")return'An import path must not start with "/" unless prefixed by a package name'}},n.isSystemSelector=function(e){return n._systemSelectors.has(e)},n.explainIfInvalidUnquotedIdentifier=function(e){if(e.length===0)return"The identifier cannot be an empty string";if(n._identifierBadCharRegExp.test(e))return"The identifier cannot non-word characters";if(n._identifierNumberStartRegExp.test(e))return"The identifier must not start with a number"},n.explainIfInvalidUnquotedMemberIdentifier=function(e){var t=n.explainIfInvalidUnquotedIdentifier(e);if(t!==void 0)return t;if(n.isSystemSelector(e))return'The identifier "'.concat(e,'" must be quoted because it is a TSDoc system selector name')},n._tsdocTagNameRegExp=/^@[a-z][a-z0-9]*$/i,n._urlSchemeRegExp=/^[a-z][a-z0-9]*\:\/\//i,n._urlSchemeAfterRegExp=/^[a-z][a-z0-9]*\:\/\/./i,n._htmlNameRegExp=/^[a-z]+[a-z0-9\-]*$/i,n._identifierBadCharRegExp=/[^a-z0-9_$]/i,n._identifierNumberStartRegExp=/^[0-9]/,n._validPackageNameRegExp=/^(?:@[a-z0-9\-_\.]+\/)?[a-z0-9\-_\.]+$/i,n._systemSelectors=new Set(["instance","static","constructor","class","enum","function","interface","namespace","type","variable"]),n}();var Mr=function(){function n(){this._docNodeDefinitionsByKind=new Map,this._docNodeDefinitionsByConstructor=new Map}return n.prototype.registerDocNodes=function(e,t){var r=re.explainIfInvalidPackageName(e);if(r)throw new Error("Invalid NPM package name: "+r);for(var i=0,o=t;i0&&i.appendNodes(r),i}return Object.defineProperty(e.prototype,"nodes",{get:function(){return this._nodes},enumerable:!1,configurable:!0}),e.prototype.appendNode=function(t){if(!this.configuration.docNodeManager.isAllowedChild(this.kind,t.kind))throw new Error("The TSDocConfiguration does not allow a ".concat(this.kind," node to")+" contain a node of type ".concat(t.kind));this._nodes.push(t)},e.prototype.appendNodes=function(t){for(var r=0,i=t;r0){var i=this.nodes[this.nodes.length-1];i.kind===g.Paragraph&&(r=i)}r||(r=new st({configuration:this.configuration}),this.appendNode(r)),r.appendNode(t)},e.prototype.appendNodesInParagraph=function(t){for(var r=0,i=t;r1){var e=this._chunks.join("");this._chunks.length=1,this._chunks[0]=e}return this._chunks[0]},n}();var no=function(){function n(){}return n.transform=function(e){for(var t=[],r=!1,i=[],o=[],a=!1,l=0,c=e.nodes;l0&&(r&&(i.push(" "),r=!1),i.push(S),o.push(d),a=!0),b&&a&&(r=!0);break;case g.SoftBreak:a&&(r=!0),o.push(d);break;default:r&&(i.push(" "),r=!1),i.length>0&&(t.push(new Ve({configuration:e.configuration,text:i.join("")})),i.length=0,o.length=0),t.push(d),a=!0}}i.length>0&&(t.push(new Ve({configuration:e.configuration,text:i.join("")})),i.length=0,o.length=0);var k=new st({configuration:e.configuration});return k.appendNodes(t),k},n}();var Lr=function(){function n(){}return n.trimSpacesInParagraph=function(e){return no.transform(e)},n}();var Hr=function(n,e,t){if(t||arguments.length===2)for(var r=0,i=e.length,o;r0&&(this._ensureLineSkipped(),this._renderNodes(a.modifierTagSet.nodes));break;case g.DeclarationReference:var l=e;this._writeContent(l.packageName),this._writeContent(l.importPath),(l.packageName!==void 0||l.importPath!==void 0)&&this._writeContent("#"),this._renderNodes(l.memberReferences);break;case g.ErrorText:var c=e;this._writeContent(c.text);break;case g.EscapedText:var d=e;this._writeContent(d.encodedText);break;case g.FencedCode:var m=e;this._ensureAtStartOfLine(),this._writeContent("```"),this._writeContent(m.language),this._writeNewline(),this._writeContent(m.code),this._writeContent("```"),this._writeNewline(),this._writeNewline();break;case g.HtmlAttribute:var _=e;this._writeContent(_.name),this._writeContent(_.spacingAfterName),this._writeContent("="),this._writeContent(_.spacingAfterEquals),this._writeContent(_.value),this._writeContent(_.spacingAfterValue);break;case g.HtmlEndTag:var w=e;this._writeContent("");break;case g.HtmlStartTag:var b=e;this._writeContent("<"),this._writeContent(b.name),this._writeContent(b.spacingAfterName);for(var S=b.spacingAfterName===void 0||b.spacingAfterName.length===0,k=0,E=b.htmlAttributes;k":">");break;case g.InheritDocTag:var $=e;this._renderInlineTag($,function(){$.declarationReference&&(t._writeContent(" "),t._renderNode($.declarationReference))});break;case g.InlineTag:var K=e;this._renderInlineTag(K,function(){K.tagContent.length>0&&(t._writeContent(" "),t._writeContent(K.tagContent))});break;case g.LinkTag:var P=e;this._renderInlineTag(P,function(){(P.urlDestination!==void 0||P.codeDestination!==void 0)&&(P.urlDestination!==void 0?(t._writeContent(" "),t._writeContent(P.urlDestination)):P.codeDestination!==void 0&&(t._writeContent(" "),t._renderNode(P.codeDestination))),P.linkText!==void 0&&(t._writeContent(" "),t._writeContent("|"),t._writeContent(" "),t._writeContent(P.linkText))});break;case g.MemberIdentifier:var H=e;H.hasQuotes?(this._writeContent('"'),this._writeContent(H.identifier),this._writeContent('"')):this._writeContent(H.identifier);break;case g.MemberReference:var F=e;F.hasDot&&this._writeContent("."),F.selector&&this._writeContent("("),F.memberSymbol?this._renderNode(F.memberSymbol):this._renderNode(F.memberIdentifier),F.selector&&(this._writeContent(":"),this._renderNode(F.selector),this._writeContent(")"));break;case g.MemberSelector:var J=e;this._writeContent(J.selector);break;case g.MemberSymbol:var te=e;this._writeContent("["),this._renderNode(te.symbolReference),this._writeContent("]");break;case g.Section:var ne=e;this._renderNodes(ne.nodes);break;case g.Paragraph:var Q=Lr.trimSpacesInParagraph(e);Q.nodes.length>0&&(this._hangingParagraph?this._hangingParagraph=!1:this._ensureLineSkipped(),this._renderNodes(Q.nodes),this._writeNewline());break;case g.ParamBlock:var h=e;this._ensureLineSkipped(),this._renderNode(h.blockTag),this._writeContent(" "),this._writeContent(h.parameterName),this._writeContent(" - "),this._hangingParagraph=!0,this._renderNode(h.content),this._hangingParagraph=!1;break;case g.ParamCollection:var C=e;this._renderNodes(C.blocks);break;case g.PlainText:var f=e;this._writeContent(f.text);break}},n.prototype._renderInlineTag=function(e,t){this._writeContent("{"),this._writeContent(e.tagName),t(),this._writeContent("}")},n.prototype._renderNodes=function(e){for(var t=0,r=e;t1){for(var r=!0,i=0,o=t;i0?this.params:void 0,this.typeParams.count>0?this.typeParams:void 0,this.returnsBlock],this.customBlocks,!0),this.seeBlocks,!0),[this.inheritDocTag],!1),this.modifierTagSet.nodes,!0)},e.prototype.emitAsTsdoc=function(){var t=new ct,r=new lt;return r.renderComment(t,this),t.toString()},e}(T);var La=function(){var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(r[o]=i[o])},n(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");n(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}(),Ha=function(n,e,t){if(t||arguments.length===2)for(var r=0,i=e.length,o;r=t},n._scanTextContent=function(e,t,r){for(var i=0,o=e;i=t||(r+=n._scanTextContent(a.getChildNodes(),t,r),r>=t))break}return r},n._countNonSpaceCharacters=function(e){for(var t=0,r=e.length,i=0;ithis.buffer.length)return{line:0,column:0};for(var t=1,r=1,i=0;ithis.buffer.length)throw new Error("TextRange.pos cannot exceed the associated text buffer length");if(this.end>this.buffer.length)throw new Error("TextRange.end cannot exceed the associated text buffer length")},n.empty=new n("",0,0),n}();var xn=function(){function n(e){this.messageId=e.messageId,this.unformattedText=e.messageText,this.textRange=e.textRange,this.tokenSequence=e.tokenSequence,this.docNode=e.docNode,this._text=void 0}return n._formatMessageText=function(e,t){if(e||(e="An unknown error occurred"),t.pos!==0||t.end!==0){var r=t.getLocation(t.pos);if(r.line)return"(".concat(r.line,",").concat(r.column,"): ")+e}return e},Object.defineProperty(n.prototype,"text",{get:function(){return this._text===void 0&&(this._text=n._formatMessageText(this.unformattedText,this.textRange)),this._text},enumerable:!1,configurable:!0}),n.prototype.toString=function(){return this.text},n}();var $r=function(){function n(){this._messages=[]}return Object.defineProperty(n.prototype,"messages",{get:function(){return this._messages},enumerable:!1,configurable:!0}),n.prototype.addMessage=function(e){this._messages.push(e)},n.prototype.addMessageForTextRange=function(e,t,r){this.addMessage(new xn({messageId:e,messageText:t,textRange:r}))},n.prototype.addMessageForTokenSequence=function(e,t,r,i){this.addMessage(new xn({messageId:e,messageText:t,textRange:r.getContainingTextRange(),tokenSequence:r,docNode:i}))},n.prototype.addMessageForDocErrorText=function(e){var t;e.textExcerpt?t=e.textExcerpt:t=e.errorLocation,this.addMessage(new xn({messageId:e.messageId,messageText:e.errorMessage,textRange:t.getContainingTextRange(),tokenSequence:t,docNode:e}))},n}();var Kr=function(){function n(e,t){this.commentRange=ze.empty,this.lines=[],this.tokens=[],this.configuration=e,this.sourceRange=t,this.docComment=new Vn({configuration:this.configuration}),this.log=new $r}return n}();var jt=function(){function n(e){this.parserContext=e.parserContext,this._startIndex=e.startIndex,this._endIndex=e.endIndex,this._validateBounds()}return n.createEmpty=function(e){return new n({parserContext:e,startIndex:0,endIndex:0})},Object.defineProperty(n.prototype,"startIndex",{get:function(){return this._startIndex},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"endIndex",{get:function(){return this._endIndex},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tokens",{get:function(){return this.parserContext.tokens.slice(this._startIndex,this._endIndex)},enumerable:!1,configurable:!0}),n.prototype.getNewSequence=function(e,t){return new n({parserContext:this.parserContext,startIndex:e,endIndex:t})},n.prototype.getContainingTextRange=function(){return this.isEmpty()?ze.empty:this.parserContext.sourceRange.getNewRange(this.parserContext.tokens[this._startIndex].range.pos,this.parserContext.tokens[this._endIndex-1].range.end)},n.prototype.isEmpty=function(){return this._startIndex===this._endIndex},n.prototype.toString=function(){return this.tokens.map(function(e){return e.toString()}).join("")},n.prototype._validateBounds=function(){if(this.startIndex<0)throw new Error("TokenSequence.startIndex cannot be negative");if(this.endIndex<0)throw new Error("TokenSequence.endIndex cannot be negative");if(this.endIndexthis.parserContext.tokens.length)throw new Error("TokenSequence.startIndex cannot exceed the associated token array");if(this.endIndex>this.parserContext.tokens.length)throw new Error("TokenSequence.endIndex cannot exceed the associated token array")},n}();var pe;(function(n){n[n.BeginComment1=0]="BeginComment1",n[n.BeginComment2=1]="BeginComment2",n[n.CollectingFirstLine=2]="CollectingFirstLine",n[n.CollectingLine=3]="CollectingLine",n[n.AdvancingLine=4]="AdvancingLine",n[n.Done=5]="Done"})(pe||(pe={}));var oo=function(){function n(){}return n.extract=function(e){for(var t=e.sourceRange,r=t.buffer,i=0,o=0,a=0,l=0,c=t.pos,d=pe.BeginComment1,m=[];d!==pe.Done;){if(c>=t.end)switch(d){case pe.BeginComment1:case pe.BeginComment2:return e.log.addMessageForTextRange(v.CommentNotFound,'Expecting a "/**" comment',t),!1;default:return e.log.addMessageForTextRange(v.CommentMissingClosingDelimiter,"Unexpected end of input",t),!1}var _=r[c],w=c;++c;var b=ca)&&m.push(t.getNewRange(a,l)),a=c,l=c,d=pe.AdvancingLine):_==="*"&&b==="/"?(l>a&&m.push(t.getNewRange(a,l)),a=0,l=0,++c,o=c,d=pe.Done):n._whitespaceCharacterRegExp.test(_)||(l=c);break;case pe.AdvancingLine:_==="*"?b==="/"?(a=0,l=0,++c,o=c,d=pe.Done):(b===" "&&++c,a=c,l=c,d=pe.CollectingLine):_===` -`?(m.push(t.getNewRange(w,w)),a=c):n._whitespaceCharacterRegExp.test(_)||(l=c,d=pe.CollectingLine);break}}return e.commentRange=t.getNewRange(i,o),e.lines=m,!0},n._whitespaceCharacterRegExp=/^\s$/,n}();var yn=function(){function n(){}return n.readTokens=function(e){n._ensureInitialized();for(var t=[],r=void 0,i=0,o=e;i":u.GreaterThan,"=":u.Equals,"'":u.SingleQuote,'"':u.DoubleQuote,"/":u.Slash,"-":u.Hyphen,"@":u.AtSign,"{":u.LeftCurlyBracket,"}":u.RightCurlyBracket,"`":u.Backtick,".":u.Period,":":u.Colon,",":u.Comma,"[":u.LeftSquareBracket,"]":u.RightSquareBracket,"|":u.Pipe,"(":u.LeftParenthesis,")":u.RightParenthesis,"#":u.PoundSymbol,"+":u.Plus,$:u.DollarSign},o=0,a=Object.getOwnPropertyNames(i);o?@[\\]^`{|}~",n._wordCharacters="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_",n}();var Rr=function(){function n(e,t){if(this._parserContext=e,this.tokens=e.tokens,t){if(t.parserContext!==this._parserContext)throw new Error("The embeddedTokenSequence must use the same parser context");this._readerStartIndex=t.startIndex,this._readerEndIndex=t.endIndex}else this._readerStartIndex=0,this._readerEndIndex=this.tokens.length;this._currentIndex=this._readerStartIndex,this._accumulatedStartIndex=this._readerStartIndex}return n.prototype.extractAccumulatedSequence=function(){if(this._accumulatedStartIndex===this._currentIndex)throw new Error("Parser assertion failed: The queue should not be empty when extractAccumulatedSequence() is called");var e=new jt({parserContext:this._parserContext,startIndex:this._accumulatedStartIndex,endIndex:this._currentIndex});return this._accumulatedStartIndex=this._currentIndex,e},n.prototype.isAccumulatedSequenceEmpty=function(){return this._accumulatedStartIndex===this._currentIndex},n.prototype.tryExtractAccumulatedSequence=function(){if(!this.isAccumulatedSequenceEmpty())return this.extractAccumulatedSequence()},n.prototype.assertAccumulatedSequenceIsEmpty=function(){if(!this.isAccumulatedSequenceEmpty()){var e=new jt({parserContext:this._parserContext,startIndex:this._accumulatedStartIndex,endIndex:this._currentIndex}),t=e.tokens.map(function(r){return r.toString()});throw new Error(`Parser assertion failed: The queue should be empty, but it contains: -`+JSON.stringify(t))}},n.prototype.peekToken=function(){return this.tokens[this._currentIndex]},n.prototype.peekTokenKind=function(){return this._currentIndex>=this._readerEndIndex?u.EndOfInput:this.tokens[this._currentIndex].kind},n.prototype.peekTokenAfterKind=function(){return this._currentIndex+1>=this._readerEndIndex?u.EndOfInput:this.tokens[this._currentIndex+1].kind},n.prototype.peekTokenAfterAfterKind=function(){return this._currentIndex+2>=this._readerEndIndex?u.EndOfInput:this.tokens[this._currentIndex+2].kind},n.prototype.readToken=function(){if(this._currentIndex>=this._readerEndIndex)throw new Error("Cannot read past end of stream");var e=this.tokens[this._currentIndex];if(e.kind===u.EndOfInput)throw new Error("The EndOfInput token cannot be read");return this._currentIndex++,e},n.prototype.peekPreviousTokenKind=function(){return this._currentIndex===0?u.EndOfInput:this.tokens[this._currentIndex-1].kind},n.prototype.createMarker=function(){return this._currentIndex},n.prototype.backtrackToMarker=function(e){if(e>this._currentIndex)throw new Error("The marker has expired");this._currentIndex=e,e" character should be escaped using a backslash to avoid confusion with an HTML tag'));break;case u.Backtick:this._pushAccumulatedPlainText(e),e.peekTokenAfterKind()===u.Backtick&&e.peekTokenAfterAfterKind()===u.Backtick?this._pushNode(this._parseFencedCode(e)):this._pushNode(this._parseCodeSpan(e));break;default:e.readToken();break}this._pushAccumulatedPlainText(e),this._performValidationChecks()},n.prototype._performValidationChecks=function(){var e=this._parserContext.docComment;e.deprecatedBlock&&(pr.hasAnyTextContent(e.deprecatedBlock)||this._parserContext.log.addMessageForTokenSequence(v.MissingDeprecationMessage,"The ".concat(e.deprecatedBlock.blockTag.tagName," block must include a deprecation message,")+" e.g. describing the recommended alternative",e.deprecatedBlock.blockTag.getTokenSequence(),e.deprecatedBlock)),e.inheritDocTag&&(e.remarksBlock&&this._parserContext.log.addMessageForTokenSequence(v.InheritDocIncompatibleTag,'A "'.concat(e.remarksBlock.blockTag.tagName,'" block must not be used, because that')+" content is provided by the @inheritDoc tag",e.remarksBlock.blockTag.getTokenSequence(),e.remarksBlock.blockTag),pr.hasAnyTextContent(e.summarySection)&&this._parserContext.log.addMessageForTextRange(v.InheritDocIncompatibleSummary,"The summary section must not have any content, because that content is provided by the @inheritDoc tag",this._parserContext.commentRange))},n.prototype._validateTagDefinition=function(e,t,r,i,o){if(e){var a=e.syntaxKind===R.InlineTag;a!==r?r?this._parserContext.log.addMessageForTokenSequence(v.TagShouldNotHaveBraces,'The TSDoc tag "'.concat(t,'" is not an inline tag; it must not be enclosed in "{ }" braces'),i,o):this._parserContext.log.addMessageForTokenSequence(v.InlineTagMissingBraces,'The TSDoc tag "'.concat(t,'" is an inline tag; it must be enclosed in "{ }" braces'),i,o):this._parserContext.configuration.validation.reportUnsupportedTags&&(this._parserContext.configuration.isTagSupported(e)||this._parserContext.log.addMessageForTokenSequence(v.UnsupportedTag,'The TSDoc tag "'.concat(t,'" is not supported by this tool'),i,o))}else this._parserContext.configuration.validation.ignoreUndefinedTags||this._parserContext.log.addMessageForTokenSequence(v.UndefinedTag,'The TSDoc tag "'.concat(t,'" is not defined in this configuration'),i,o)},n.prototype._pushAccumulatedPlainText=function(e){e.isAccumulatedSequenceEmpty()||this._pushNode(new Ve({parsed:!0,configuration:this._configuration,textExcerpt:e.extractAccumulatedSequence()}))},n.prototype._parseAndPushBlock=function(e){var t=this._parserContext.docComment,r=this._parserContext.configuration,i=t.modifierTagSet,o=this._parseBlockTag(e);if(o.kind!==g.BlockTag){this._pushNode(o);return}var a=o,l=r.tryGetTagDefinitionWithUpperCase(a.tagNameWithUpperCase);if(this._validateTagDefinition(l,a.tagName,!1,a.getTokenSequence(),a),l)switch(l.syntaxKind){case R.BlockTag:if(a.tagNameWithUpperCase===G.param.tagNameWithUpperCase){var c=this._parseParamBlock(e,a,G.param.tagName);this._parserContext.docComment.params.add(c),this._currentSection=c.content;return}else if(a.tagNameWithUpperCase===G.typeParam.tagNameWithUpperCase){var c=this._parseParamBlock(e,a,G.typeParam.tagName);this._parserContext.docComment.typeParams.add(c),this._currentSection=c.content;return}else{var d=new Jt({configuration:this._configuration,blockTag:a});this._addBlockToDocComment(d),this._currentSection=d.content}return;case R.ModifierTag:i.addTag(a);return}this._pushNode(a)},n.prototype._addBlockToDocComment=function(e){var t=this._parserContext.docComment;switch(e.blockTag.tagNameWithUpperCase){case G.remarks.tagNameWithUpperCase:t.remarksBlock=e;break;case G.privateRemarks.tagNameWithUpperCase:t.privateRemarks=e;break;case G.deprecated.tagNameWithUpperCase:t.deprecatedBlock=e;break;case G.returns.tagNameWithUpperCase:t.returnsBlock=e;break;case G.see.tagNameWithUpperCase:t._appendSeeBlock(e);break;default:t.appendCustomBlock(e)}},n.prototype._tryParseJSDocTypeOrValueRest=function(e,t,r,i){for(var o,a=1;a>0;){var l=e.peekTokenKind();switch(l){case t:o===void 0&&a++;break;case r:o===void 0&&a--;break;case u.Backslash:o!==void 0&&(e.readToken(),l=e.peekTokenKind());break;case u.DoubleQuote:case u.SingleQuote:case u.Backtick:o===l?o=void 0:o===void 0&&(o=l);break}if(l===u.EndOfInput){e.backtrackToMarker(i);return}e.readToken()}return e.tryExtractAccumulatedSequence()},n.prototype._tryParseUnsupportedJSDocType=function(e,t,r){if(e.assertAccumulatedSequenceIsEmpty(),!(e.peekTokenKind()!==u.LeftCurlyBracket||e.peekTokenAfterKind()===u.AtSign)){var i=e.createMarker();e.readToken();var o=this._tryParseJSDocTypeOrValueRest(e,u.LeftCurlyBracket,u.RightCurlyBracket,i);if(o){this._parserContext.log.addMessageForTokenSequence(v.ParamTagWithInvalidType,"The "+r+" block should not include a JSDoc-style '{type}'",o,t);var a=this._tryReadSpacingAndNewlines(e);a&&(o=o.getNewSequence(o.startIndex,a.endIndex))}return o}},n.prototype._tryParseJSDocOptionalNameRest=function(e){if(e.assertAccumulatedSequenceIsEmpty(),e.peekTokenKind()!==u.EndOfInput){var t=e.createMarker();return this._tryParseJSDocTypeOrValueRest(e,u.LeftSquareBracket,u.RightSquareBracket,t)}},n.prototype._parseParamBlock=function(e,t,r){var i=e.createMarker(),o=this._tryReadSpacingAndNewlines(e),a=this._tryParseUnsupportedJSDocType(e,t,r),l;e.peekTokenKind()===u.LeftSquareBracket&&(e.readToken(),l=e.extractAccumulatedSequence());for(var c="",d=!1;!d;)switch(e.peekTokenKind()){case u.AsciiWord:case u.Period:case u.DollarSign:c+=e.readToken();break;default:d=!0;break}var m=re.explainIfInvalidUnquotedIdentifier(c);if(m!==void 0){e.backtrackToMarker(i);var _=new _n({configuration:this._configuration,blockTag:t,parameterName:""}),w=c.length>0?"The "+r+" block should be followed by a valid parameter name: "+m:"The "+r+" block should be followed by a parameter name";return this._parserContext.log.addMessageForTokenSequence(v.ParamTagWithInvalidName,w,t.getTokenSequence(),t),_}var b=e.extractAccumulatedSequence(),S;if(l){S=this._tryParseJSDocOptionalNameRest(e);var k=l;S&&(k=t.getTokenSequence().getNewSequence(l.startIndex,S.endIndex)),this._parserContext.log.addMessageForTokenSequence(v.ParamTagWithInvalidOptionalName,"The "+r+" should not include a JSDoc-style optional name; it must not be enclosed in '[ ]' brackets.",k,t)}var E=this._tryReadSpacingAndNewlines(e),O=this._tryParseUnsupportedJSDocType(e,t,r),$,K,P;return e.peekTokenKind()===u.Hyphen?(e.readToken(),$=e.extractAccumulatedSequence(),K=this._tryReadSpacingAndNewlines(e),P=this._tryParseUnsupportedJSDocType(e,t,r)):this._parserContext.log.addMessageForTokenSequence(v.ParamTagMissingHyphen,"The "+r+" block should be followed by a parameter name and then a hyphen",t.getTokenSequence(),t),new _n({parsed:!0,configuration:this._configuration,blockTag:t,spacingBeforeParameterNameExcerpt:o,unsupportedJsdocTypeBeforeParameterNameExcerpt:a,unsupportedJsdocOptionalNameOpenBracketExcerpt:l,parameterNameExcerpt:b,parameterName:c,unsupportedJsdocOptionalNameRestExcerpt:S,spacingAfterParameterNameExcerpt:E,unsupportedJsdocTypeAfterParameterNameExcerpt:O,hyphenExcerpt:$,spacingAfterHyphenExcerpt:K,unsupportedJsdocTypeAfterHyphenExcerpt:P})},n.prototype._pushNode=function(e){this._configuration.docNodeManager.isAllowedChild(g.Paragraph,e.kind)?this._currentSection.appendNodeInParagraph(e):this._currentSection.appendNode(e)},n.prototype._parseBackslashEscape=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.readToken(),e.peekTokenKind()===u.EndOfInput)return this._backtrackAndCreateError(e,t,v.UnnecessaryBackslash,"A backslash must precede another character that is being escaped");var r=e.readToken();if(!yn.isPunctuation(r.kind))return this._backtrackAndCreateError(e,t,v.UnnecessaryBackslash,"A backslash can only be used to escape a punctuation character");var i=e.extractAccumulatedSequence();return new Jn({parsed:!0,configuration:this._configuration,escapeStyle:lr.CommonMarkBackslash,encodedTextExcerpt:i,decodedText:r.toString()})},n.prototype._parseBlockTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.peekTokenKind()!==u.AtSign)return this._backtrackAndCreateError(e,t,v.MissingTag,'Expecting a TSDoc tag starting with "@"');switch(e.peekPreviousTokenKind()){case u.EndOfInput:case u.Spacing:case u.Newline:break;default:return this._backtrackAndCreateError(e,t,v.AtSignInWord,'The "@" character looks like part of a TSDoc tag; use a backslash to escape it')}var r=e.readToken().toString();if(e.peekTokenKind()!==u.AsciiWord)return this._backtrackAndCreateError(e,t,v.AtSignWithoutTagName,'Expecting a TSDoc tag name after "@"; if it is not a tag, use a backslash to escape this character');for(var i=e.createMarker();e.peekTokenKind()===u.AsciiWord;)r+=e.readToken().toString();switch(e.peekTokenKind()){case u.Spacing:case u.Newline:case u.EndOfInput:break;default:var o=e.peekToken().range.toString()[0];return this._backtrackAndCreateError(e,t,v.CharactersAfterBlockTag,'The token "'.concat(r,'" looks like a TSDoc tag but contains an invalid character')+" ".concat(JSON.stringify(o),'; if it is not a tag, use a backslash to escape the "@"'))}if(re.explainIfInvalidTSDocTagName(r)){var a=this._createFailureForTokensSince(e,v.MalformedTagName,"A TSDoc tag name must start with a letter and contain only letters and numbers",i);return this._backtrackAndCreateErrorForFailure(e,t,"",a)}return new Gn({parsed:!0,configuration:this._configuration,tagName:r,tagNameExcerpt:e.extractAccumulatedSequence()})},n.prototype._parseInlineTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.peekTokenKind()!==u.LeftCurlyBracket)return this._backtrackAndCreateError(e,t,v.MissingTag,'Expecting a TSDoc tag starting with "{"');e.readToken();var r=e.extractAccumulatedSequence(),i=e.createMarker();if(e.peekTokenKind()!==u.AtSign)return this._backtrackAndCreateError(e,t,v.MalformedInlineTag,'Expecting a TSDoc tag starting with "{@"');for(var o=e.readToken().toString();e.peekTokenKind()===u.AsciiWord;)o+=e.readToken().toString();if(o==="@"){var a=this._createFailureForTokensSince(e,v.MalformedInlineTag,'Expecting a TSDoc inline tag name after the "{@" characters',i);return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}if(re.explainIfInvalidTSDocTagName(o)){var a=this._createFailureForTokensSince(e,v.MalformedTagName,"A TSDoc tag name must start with a letter and contain only letters and numbers",i);return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}var l=e.extractAccumulatedSequence(),c=this._tryReadSpacingAndNewlines(e);if(c===void 0&&e.peekTokenKind()!==u.RightCurlyBracket){var d=e.peekToken().range.toString()[0],a=this._createFailureForToken(e,v.CharactersAfterInlineTag,"The character ".concat(JSON.stringify(d)," cannot appear after the TSDoc tag name; expecting a space"));return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}for(var m=!1;!m;)switch(e.peekTokenKind()){case u.EndOfInput:return this._backtrackAndCreateErrorRange(e,t,i,v.InlineTagMissingRightBrace,'The TSDoc inline tag name is missing its closing "}"');case u.Backslash:if(e.readToken(),!yn.isPunctuation(e.peekTokenKind())){var a=this._createFailureForToken(e,v.UnnecessaryBackslash,"A backslash can only be used to escape a punctuation character");return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"Error reading inline TSDoc tag: ",a)}e.readToken();break;case u.LeftCurlyBracket:{var a=this._createFailureForToken(e,v.InlineTagUnescapedBrace,'The "{" character must be escaped with a backslash when used inside a TSDoc inline tag');return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}case u.RightCurlyBracket:m=!0;break;default:e.readToken();break}var _=e.tryExtractAccumulatedSequence();e.readToken();var w=e.extractAccumulatedSequence(),b={parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:r,tagNameExcerpt:l,tagName:o,spacingAfterTagNameExcerpt:c,tagContentExcerpt:_,closingDelimiterExcerpt:w},S=o.toUpperCase(),k=new Rr(this._parserContext,_||jt.createEmpty(this._parserContext)),E;switch(S){case G.inheritDoc.tagNameWithUpperCase:E=this._parseInheritDocTag(b,k);break;case G.link.tagNameWithUpperCase:E=this._parseLinkTag(b,k);break;default:E=new Qt(b)}var O=this._parserContext.configuration.tryGetTagDefinitionWithUpperCase(S);return this._validateTagDefinition(O,o,!0,l,E),E},n.prototype._parseInheritDocTag=function(e,t){var r=new Qt(e),i=ur({},e);if(t.peekTokenKind()!==u.EndOfInput){if(i.declarationReference=this._parseDeclarationReference(t,e.tagNameExcerpt,r),!i.declarationReference)return r;if(t.peekTokenKind()!==u.EndOfInput)return t.readToken(),this._parserContext.log.addMessageForTokenSequence(v.InheritDocTagSyntax,"Unexpected character after declaration reference",t.extractAccumulatedSequence(),r),r}return new hn(i)},n.prototype._parseLinkTag=function(e,t){var r=new Qt(e),i=ur({},e);if(!e.tagContentExcerpt)return this._parserContext.log.addMessageForTokenSequence(v.LinkTagEmpty,"The @link tag content is missing",i.tagNameExcerpt,r),r;for(var o=t.peekTokenKind()===u.Slash&&t.peekTokenAfterKind()===u.Slash,a=t.createMarker(),l=o;!l;)switch(t.peekTokenKind()){case u.AsciiWord:case u.Period:case u.Hyphen:case u.Plus:t.readToken();break;case u.Colon:t.readToken(),o=t.peekTokenKind()===u.Slash&&t.peekTokenAfterKind()===u.Slash,l=!0;break;default:l=!0}if(t.backtrackToMarker(a),o){if(!this._parseLinkTagUrlDestination(t,i,e.tagNameExcerpt,r))return r}else if(!this._parseLinkTagCodeDestination(t,i,e.tagNameExcerpt,r))return r;if(t.peekTokenKind()===u.Spacing)throw new Error("Unconsumed spacing encountered after construct");if(t.peekTokenKind()===u.Pipe){t.readToken(),i.pipeExcerpt=t.extractAccumulatedSequence(),i.spacingAfterPipeExcerpt=this._tryReadSpacingAndNewlines(t),l=!1;for(var c=void 0;!l;)switch(t.peekTokenKind()){case u.EndOfInput:l=!0;break;case u.Pipe:case u.LeftCurlyBracket:var d=t.readToken().toString();return this._parserContext.log.addMessageForTokenSequence(v.LinkTagUnescapedText,'The "'.concat(d,'" character may not be used in the link text without escaping it'),t.extractAccumulatedSequence(),r),r;case u.Spacing:case u.Newline:t.readToken();break;default:c=t.createMarker()+1,t.readToken()}var m=t.tryExtractAccumulatedSequence();m&&(c===void 0?i.spacingAfterLinkTextExcerpt=m:c>=m.endIndex?i.linkTextExcerpt=m:(i.linkTextExcerpt=m.getNewSequence(m.startIndex,c),i.spacingAfterLinkTextExcerpt=m.getNewSequence(c,m.endIndex)))}else if(t.peekTokenKind()!==u.EndOfInput)return t.readToken(),this._parserContext.log.addMessageForTokenSequence(v.LinkTagDestinationSyntax,"Unexpected character after link destination",t.extractAccumulatedSequence(),r),r;return new tr(i)},n.prototype._parseLinkTagUrlDestination=function(e,t,r,i){for(var o="",a=!1;!a;)switch(e.peekTokenKind()){case u.Spacing:case u.Newline:case u.EndOfInput:case u.Pipe:case u.RightCurlyBracket:a=!0;break;default:o+=e.readToken();break}if(o.length===0)throw new Error("Missing URL in _parseLinkTagUrlDestination()");var l=e.extractAccumulatedSequence(),c=re.explainIfInvalidLinkUrl(o);return c?(this._parserContext.log.addMessageForTokenSequence(v.LinkTagInvalidUrl,c,l,i),!1):(t.urlDestinationExcerpt=l,t.spacingAfterDestinationExcerpt=this._tryReadSpacingAndNewlines(e),!0)},n.prototype._parseLinkTagCodeDestination=function(e,t,r,i){return t.codeDestination=this._parseDeclarationReference(e,r,i),!!t.codeDestination},n.prototype._parseDeclarationReference=function(e,t,r){e.assertAccumulatedSequenceIsEmpty();for(var i=e.createMarker(),o=!1,a=!0,l=!1,c=!1;!c;)switch(e.peekTokenKind()){case u.DoubleQuote:case u.EndOfInput:case u.LeftCurlyBracket:case u.LeftParenthesis:case u.LeftSquareBracket:case u.Newline:case u.Pipe:case u.RightCurlyBracket:case u.RightParenthesis:case u.RightSquareBracket:case u.SingleQuote:case u.Spacing:c=!0;break;case u.PoundSymbol:o=!0,c=!0;break;case u.Slash:case u.AtSign:a&&(l=!0),e.readToken();break;case u.AsciiWord:case u.Period:case u.Hyphen:e.readToken();break;default:a=!1,e.readToken()}if(!o&&l){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingHash,'The declaration reference appears to contain a package name or import path, but it is missing the "#" delimiter',e.extractAccumulatedSequence(),r);return}e.backtrackToMarker(i);var d,m,_,w;if(o){if(e.peekTokenKind()!==u.Period){var b=e.peekTokenKind()===u.AtSign,S=!1;for(c=!1;!c;)switch(e.peekTokenKind()){case u.EndOfInput:throw new Error("Expecting pound symbol");case u.Slash:b&&!S?(e.readToken(),S=!0):c=!0;break;case u.PoundSymbol:c=!0;break;default:e.readToken()}if(!e.isAccumulatedSequenceEmpty()){d=e.extractAccumulatedSequence();var k=re.explainIfInvalidPackageName(d.toString());if(k){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMalformedPackageName,k,d,r);return}}}for(c=!1;!c;)switch(e.peekTokenKind()){case u.EndOfInput:throw new Error("Expecting pound symbol");case u.PoundSymbol:c=!0;break;default:e.readToken()}if(!e.isAccumulatedSequenceEmpty()){m=e.extractAccumulatedSequence();var k=re.explainIfInvalidImportPath(m.toString(),!!d);if(k){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMalformedImportPath,k,m,r);return}}if(e.peekTokenKind()!==u.PoundSymbol)throw new Error("Expecting pound symbol");if(e.readToken(),_=e.extractAccumulatedSequence(),w=this._tryReadSpacingAndNewlines(e),d===void 0&&m===void 0){this._parserContext.log.addMessageForTokenSequence(v.ReferenceHashSyntax,"The hash character must be preceded by a package name or import path",_,r);return}}var E=[];for(c=!1;!c;)switch(e.peekTokenKind()){case u.Period:case u.LeftParenthesis:case u.AsciiWord:case u.Colon:case u.LeftSquareBracket:case u.DoubleQuote:var O=E.length>0,$=this._parseMemberReference(e,O,t,r);if(!$)return;E.push($);break;default:c=!0}if(d===void 0&&m===void 0&&E.length===0){this._parserContext.log.addMessageForTokenSequence(v.MissingReference,"Expecting a declaration reference",t,r);return}return new zn({parsed:!0,configuration:this._configuration,packageNameExcerpt:d,importPathExcerpt:m,importHashExcerpt:_,spacingAfterImportHashExcerpt:w,memberReferences:E})},n.prototype._parseMemberReference=function(e,t,r,i){var o={parsed:!0,configuration:this._configuration};if(t){if(e.peekTokenKind()!==u.Period){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingDot,"Expecting a period before the next component of a declaration reference",r,i);return}e.readToken(),o.dotExcerpt=e.extractAccumulatedSequence(),o.spacingAfterDotExcerpt=this._tryReadSpacingAndNewlines(e)}if(e.peekTokenKind()===u.LeftParenthesis&&(e.readToken(),o.leftParenthesisExcerpt=e.extractAccumulatedSequence(),o.spacingAfterLeftParenthesisExcerpt=this._tryReadSpacingAndNewlines(e)),e.peekTokenKind()===u.LeftSquareBracket){if(o.memberSymbol=this._parseMemberSymbol(e,i),!o.memberSymbol)return}else if(o.memberIdentifier=this._parseMemberIdentifier(e,r,i),!o.memberIdentifier)return;if(o.spacingAfterMemberExcerpt=this._tryReadSpacingAndNewlines(e),e.peekTokenKind()===u.Colon){if(e.readToken(),o.colonExcerpt=e.extractAccumulatedSequence(),o.spacingAfterColonExcerpt=this._tryReadSpacingAndNewlines(e),!o.leftParenthesisExcerpt){this._parserContext.log.addMessageForTokenSequence(v.ReferenceSelectorMissingParens,"Syntax error in declaration reference: the member selector must be enclosed in parentheses",o.colonExcerpt,i);return}if(o.selector=this._parseMemberSelector(e,o.colonExcerpt,i),!o.selector)return;o.spacingAfterSelectorExcerpt=this._tryReadSpacingAndNewlines(e)}else if(o.leftParenthesisExcerpt){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingColon,"Expecting a colon after the identifier because the expression is in parentheses",o.leftParenthesisExcerpt,i);return}if(o.leftParenthesisExcerpt){if(e.peekTokenKind()!==u.RightParenthesis){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingRightParen,"Expecting a matching right parenthesis",o.leftParenthesisExcerpt,i);return}e.readToken(),o.rightParenthesisExcerpt=e.extractAccumulatedSequence(),o.spacingAfterRightParenthesisExcerpt=this._tryReadSpacingAndNewlines(e)}return new nr(o)},n.prototype._parseMemberSymbol=function(e,t){if(e.peekTokenKind()!==u.LeftSquareBracket)throw new Error('Expecting "["');e.readToken();var r=e.extractAccumulatedSequence(),i=this._tryReadSpacingAndNewlines(e),o=this._parseDeclarationReference(e,r,t);if(!o){this._parserContext.log.addMessageForTokenSequence(v.ReferenceSymbolSyntax,"Missing declaration reference in symbol reference",r,t);return}if(e.peekTokenKind()!==u.RightSquareBracket){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingRightBracket,"Missing closing square bracket for symbol reference",r,t);return}e.readToken();var a=e.extractAccumulatedSequence();return new ir({parsed:!0,configuration:this._configuration,leftBracketExcerpt:r,spacingAfterLeftBracketExcerpt:i,symbolReference:o,rightBracketExcerpt:a})},n.prototype._parseMemberIdentifier=function(e,t,r){var i=void 0,o=void 0;if(e.peekTokenKind()===u.DoubleQuote){for(e.readToken(),i=e.extractAccumulatedSequence();e.peekTokenKind()!==u.DoubleQuote;){if(e.peekTokenKind()===u.EndOfInput){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingQuote,"Unexpected end of input inside quoted member identifier",i,r);return}e.readToken()}if(e.isAccumulatedSequenceEmpty()){this._parserContext.log.addMessageForTokenSequence(v.ReferenceEmptyIdentifier,"The quoted identifier cannot be empty",i,r);return}var a=e.extractAccumulatedSequence();return e.readToken(),o=e.extractAccumulatedSequence(),new An({parsed:!0,configuration:this._configuration,leftQuoteExcerpt:i,identifierExcerpt:a,rightQuoteExcerpt:o})}else{for(var l=!1;!l;)switch(e.peekTokenKind()){case u.AsciiWord:case u.DollarSign:e.readToken();break;default:l=!0;break}if(e.isAccumulatedSequenceEmpty()){this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingIdentifier,"Syntax error in declaration reference: expecting a member identifier",t,r);return}var a=e.extractAccumulatedSequence(),c=a.toString(),d=re.explainIfInvalidUnquotedMemberIdentifier(c);if(d){this._parserContext.log.addMessageForTokenSequence(v.ReferenceUnquotedIdentifier,d,a,r);return}return new An({parsed:!0,configuration:this._configuration,leftQuoteExcerpt:i,identifierExcerpt:a,rightQuoteExcerpt:o})}},n.prototype._parseMemberSelector=function(e,t,r){e.peekTokenKind()!==u.AsciiWord&&this._parserContext.log.addMessageForTokenSequence(v.ReferenceMissingLabel,"Expecting a selector label after the colon",t,r);var i=e.readToken().toString(),o=e.extractAccumulatedSequence(),a=new rr({parsed:!0,configuration:this._configuration,selectorExcerpt:o,selector:i});if(a.errorMessage){this._parserContext.log.addMessageForTokenSequence(v.ReferenceSelectorSyntax,a.errorMessage,o,r);return}return a},n.prototype._parseHtmlStartTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker(),r=e.readToken();if(r.kind!==u.LessThan)throw new Error('Expecting an HTML tag starting with "<"');var i=e.extractAccumulatedSequence(),o=this._parseHtmlName(e);if(jn(o))return this._backtrackAndCreateErrorForFailure(e,t,"Invalid HTML element: ",o);for(var a=this._tryReadSpacingAndNewlines(e),l=[];e.peekTokenKind()===u.AsciiWord;){var c=this._parseHtmlAttribute(e);if(jn(c))return this._backtrackAndCreateErrorForFailure(e,t,"The HTML element has an invalid attribute: ",c);l.push(c)}e.assertAccumulatedSequenceIsEmpty();var d=e.createMarker(),m=!1;if(e.peekTokenKind()===u.Slash&&(e.readToken(),m=!0),e.peekTokenKind()!==u.GreaterThan){var _=this._createFailureForTokensSince(e,v.HtmlTagMissingGreaterThan,'Expecting an attribute or ">" or "/>"',d);return this._backtrackAndCreateErrorForFailure(e,t,"The HTML tag has invalid syntax: ",_)}e.readToken();var w=e.extractAccumulatedSequence();return new er({parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:i,nameExcerpt:o,spacingAfterNameExcerpt:a,htmlAttributes:l,selfClosingTag:m,closingDelimiterExcerpt:w})},n.prototype._parseHtmlAttribute=function(e){e.assertAccumulatedSequenceIsEmpty();var t=this._parseHtmlName(e);if(jn(t))return t;var r=this._tryReadSpacingAndNewlines(e);if(e.peekTokenKind()!==u.Equals)return this._createFailureForToken(e,v.HtmlTagMissingEquals,'Expecting "=" after HTML attribute name');e.readToken();var i=e.extractAccumulatedSequence(),o=this._tryReadSpacingAndNewlines(e),a=this._parseHtmlString(e);if(jn(a))return a;var l=e.extractAccumulatedSequence(),c=this._tryReadSpacingAndNewlines(e);return new Xn({parsed:!0,configuration:this._configuration,nameExcerpt:t,spacingAfterNameExcerpt:r,equalsExcerpt:i,spacingAfterEqualsExcerpt:o,valueExcerpt:l,spacingAfterValueExcerpt:c})},n.prototype._parseHtmlString=function(e){var t=e.createMarker(),r=e.peekTokenKind();if(r!==u.DoubleQuote&&r!==u.SingleQuote)return this._createFailureForToken(e,v.HtmlTagMissingString,"Expecting an HTML string starting with a single-quote or double-quote character");e.readToken();for(var i="";;){var o=e.peekTokenKind();if(o===r){e.readToken();break}if(o===u.EndOfInput||o===u.Newline)return this._createFailureForToken(e,v.HtmlStringMissingQuote,"The HTML string is missing its closing quote",t);i+=e.readToken().toString()}return e.peekTokenKind()===u.AsciiWord?this._createFailureForToken(e,v.TextAfterHtmlString,"The next character after a closing quote must be spacing or punctuation"):i},n.prototype._parseHtmlEndTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker(),r=e.peekToken();if(r.kind!==u.LessThan)return this._backtrackAndCreateError(e,t,v.MissingHtmlEndTag,'Expecting an HTML tag starting with "" for the HTML tag');return this._backtrackAndCreateErrorForFailure(e,t,"",c)}e.readToken();var d=e.extractAccumulatedSequence();return new Zn({parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:o,nameExcerpt:a,spacingAfterNameExcerpt:l,closingDelimiterExcerpt:d})},n.prototype._parseHtmlName=function(e){var t=e.createMarker();if(e.peekTokenKind()===u.Spacing)return this._createFailureForTokensSince(e,v.MalformedHtmlName,"A space is not allowed here",t);for(var r=!1;!r;)switch(e.peekTokenKind()){case u.Hyphen:case u.Period:case u.AsciiWord:e.readToken();break;default:r=!0;break}var i=e.tryExtractAccumulatedSequence();if(!i)return this._createFailureForToken(e,v.MalformedHtmlName,"Expecting an HTML name");var o=i.toString(),a=re.explainIfInvalidHtmlName(o);return a?this._createFailureForTokensSince(e,v.MalformedHtmlName,a,t):this._configuration.validation.reportUnsupportedHtmlElements&&!this._configuration.isHtmlElementSupported(o)?this._createFailureForToken(e,v.UnsupportedHtmlElementName,"The HTML element name ".concat(JSON.stringify(o)," is not defined by your TSDoc configuration"),t):i},n.prototype._parseFencedCode=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker(),r=t+2;switch(e.peekPreviousTokenKind()){case u.Newline:case u.EndOfInput:break;default:return this._backtrackAndCreateErrorRange(e,t,r,v.CodeFenceOpeningIndent,"The opening backtick for a code fence must appear at the start of the line")}var i="";if(i+=e.readToken(),i+=e.readToken(),i+=e.readToken(),i!=="```")throw new Error("Expecting three backticks");for(var o=e.extractAccumulatedSequence();e.peekTokenKind()===u.Spacing;)e.readToken();for(var a=e.tryExtractAccumulatedSequence(),l=!1,c=void 0;!l;)switch(e.peekTokenKind()){case u.Spacing:case u.Newline:c===void 0&&(c=e.createMarker()),e.peekTokenKind()===u.Newline&&(l=!0),e.readToken();break;case u.Backtick:var d=this._createFailureForToken(e,v.CodeFenceSpecifierSyntax,"The language specifier cannot contain backtick characters");return this._backtrackAndCreateErrorRangeForFailure(e,t,r,"Error parsing code fence: ",d);case u.EndOfInput:var m=this._createFailureForToken(e,v.CodeFenceMissingDelimiter,"Missing closing delimiter");return this._backtrackAndCreateErrorRangeForFailure(e,t,r,"Error parsing code fence: ",m);default:c=void 0,e.readToken();break}var _=e.extractAccumulatedSequence(),w=_.getNewSequence(_.startIndex,c),b=_.getNewSequence(c,_.endIndex),S=-1,k=-1;l=!1;for(var E;!l;)switch(e.peekTokenKind()){case u.EndOfInput:var m=this._createFailureForToken(e,v.CodeFenceMissingDelimiter,"Missing closing delimiter");return this._backtrackAndCreateErrorRangeForFailure(e,t,r,"Error parsing code fence: ",m);case u.Newline:for(E=e.readToken(),S=e.createMarker();e.peekTokenKind()===u.Spacing;)E=e.readToken();if(e.peekTokenKind()!==u.Backtick||(k=e.createMarker(),e.readToken(),e.peekTokenKind()!==u.Backtick)||(e.readToken(),e.peekTokenKind()!==u.Backtick))break;e.readToken(),l=!0;break;default:e.readToken();break}E.kind!==u.Newline&&this._parserContext.log.addMessageForTextRange(v.CodeFenceClosingIndent,"The closing delimiter for a code fence must not be indented",E.range);var O=e.extractAccumulatedSequence(),$=O.getNewSequence(O.startIndex,S),K=O.getNewSequence(S,k),P=O.getNewSequence(k,O.endIndex);for(l=!1;!l;)switch(e.peekTokenKind()){case u.Spacing:e.readToken();break;case u.Newline:l=!0,e.readToken();break;case u.EndOfInput:l=!0;break;default:this._parserContext.log.addMessageForTextRange(v.CodeFenceClosingSyntax,"Unexpected characters after closing delimiter for code fence",e.peekToken().range),l=!0;break}var H=e.tryExtractAccumulatedSequence();return new Qn({parsed:!0,configuration:this._configuration,openingFenceExcerpt:o,spacingAfterOpeningFenceExcerpt:a,languageExcerpt:w,spacingAfterLanguageExcerpt:b,codeExcerpt:$,spacingBeforeClosingFenceExcerpt:K,closingFenceExcerpt:P,spacingAfterClosingFenceExcerpt:H})},n.prototype._parseCodeSpan=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.peekTokenKind()!==u.Backtick)throw new Error('Expecting a code span starting with a backtick character "`"');e.readToken();for(var r=e.extractAccumulatedSequence(),i=void 0,o=void 0;;){var a=e.peekTokenKind();if(a===u.Backtick){if(e.isAccumulatedSequenceEmpty())return this._backtrackAndCreateErrorRange(e,t,t+1,v.CodeSpanEmpty,"A code span must contain at least one character between the backticks");i=e.extractAccumulatedSequence(),e.readToken(),o=e.extractAccumulatedSequence();break}if(a===u.EndOfInput||a===u.Newline)return this._backtrackAndCreateError(e,t,v.CodeSpanMissingDelimiter,"The code span is missing its closing backtick");e.readToken()}return new Wn({parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:r,codeExcerpt:i,closingDelimiterExcerpt:o})},n.prototype._tryReadSpacingAndNewlines=function(e){var t=!1;do switch(e.peekTokenKind()){case u.Spacing:case u.Newline:e.readToken();break;default:t=!0;break}while(!t);return e.tryExtractAccumulatedSequence()},n.prototype._createError=function(e,t,r){e.readToken();var i=e.extractAccumulatedSequence(),o=new Nt({parsed:!0,configuration:this._configuration,textExcerpt:i,messageId:t,errorMessage:r,errorLocation:i});return this._parserContext.log.addMessageForDocErrorText(o),o},n.prototype._backtrackAndCreateError=function(e,t,r,i){return e.backtrackToMarker(t),this._createError(e,r,i)},n.prototype._backtrackAndCreateErrorRange=function(e,t,r,i,o){for(e.backtrackToMarker(t);e.createMarker()!==r;)e.readToken();e.peekTokenKind()!==u.EndOfInput&&e.readToken();var a=e.extractAccumulatedSequence(),l=new Nt({parsed:!0,configuration:this._configuration,textExcerpt:a,messageId:i,errorMessage:o,errorLocation:a});return this._parserContext.log.addMessageForDocErrorText(l),l},n.prototype._backtrackAndCreateErrorForFailure=function(e,t,r,i){e.backtrackToMarker(t),e.readToken();var o=e.extractAccumulatedSequence(),a=new Nt({parsed:!0,configuration:this._configuration,textExcerpt:o,messageId:i.failureMessageId,errorMessage:r+i.failureMessage,errorLocation:i.failureLocation});return this._parserContext.log.addMessageForDocErrorText(a),a},n.prototype._backtrackAndCreateErrorRangeForFailure=function(e,t,r,i,o){for(e.backtrackToMarker(t);e.createMarker()!==r;)e.readToken();e.peekTokenKind()!==u.EndOfInput&&e.readToken();var a=e.extractAccumulatedSequence(),l=new Nt({parsed:!0,configuration:this._configuration,textExcerpt:a,messageId:o.failureMessageId,errorMessage:i+o.failureMessage,errorLocation:o.failureLocation});return this._parserContext.log.addMessageForDocErrorText(l),l},n.prototype._createFailureForToken=function(e,t,r,i){i||(i=e.createMarker());var o=new jt({parserContext:this._parserContext,startIndex:i,endIndex:i+1});return{failureMessageId:t,failureMessage:r,failureLocation:o}},n.prototype._createFailureForTokensSince=function(e,t,r,i){var o=e.createMarker();if(osetTimeout(e,n))}function lo(){return/(<%(?:-|_)?\s*[*~]{0,1})\+((?:.|\s)*?%>)/g}function Wr(n,e){e=(0,Te.normalizePath)(e);let t=n.vault.getAbstractFileByPath(e);if(!t)throw new D(`Folder "${e}" doesn't exist`);if(!(t instanceof Te.TFolder))throw new D(`${e} is a file, not a folder`);return t}function pt(n,e){e=(0,Te.normalizePath)(e);let t=n.vault.getAbstractFileByPath(e);if(!t)throw new D(`File "${e}" doesn't exist`);if(!(t instanceof Te.TFile))throw new D(`${e} is a folder, not a file`);return t}function Je(n,e){let t=Wr(n,e),r=[];return Te.Vault.recurseChildren(t,i=>{i instanceof Te.TFile&&r.push(i)}),r.sort((i,o)=>i.path.localeCompare(o.path)),r}async function po(n,e){return await Promise.all(e.map(async r=>{let i=await n.vault.cachedRead(r);return is(r,i)}))}function is(n,e){let r=new Yr().parseString(e),i=new Ur(n);return i.description=os(r.docComment.summarySection),i.returns=as(r.docComment.returnsBlock),i.arguments=ss(r.docComment.params),i}function os(n){try{return n.nodes.map(t=>t.getChildNodes().filter(r=>r instanceof Ve).map(r=>r.text).join(` +var Gi=Object.create;var Lt=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var Vi=Object.getOwnPropertyNames;var zi=Object.getPrototypeOf,Ji=Object.prototype.hasOwnProperty;var Br=r=>Lt(r,"__esModule",{value:!0});var Wi=(r,e)=>{Br(r);for(var t in e)Lt(r,t,{get:e[t],enumerable:!0})},Qi=(r,e,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Vi(e))!Ji.call(r,n)&&n!=="default"&&Lt(r,n,{get:()=>e[n],enumerable:!(t=Ri(e,n))||t.enumerable});return r},U=r=>Qi(Br(Lt(r!=null?Gi(zi(r)):{},"default",r&&r.__esModule&&"default"in r?{get:()=>r.default,enumerable:!0}:{value:r,enumerable:!0})),r);var Or=(()=>{for(var r=new Uint8Array(128),e=0;e<64;e++)r[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return t=>{for(var n=t.length,i=new Uint8Array((n-(t[n-1]=="=")-(t[n-2]=="="))*3/4|0),o=0,a=0;o>4,i[a++]=l<<4|d>>2,i[a++]=d<<6|h}return i}})();Wi(exports,{default:()=>jr});var _n=U(require("obsidian"));var N=U(require("obsidian"));var qr=U(require("obsidian"));function V(r){let e=new qr.Notice("",8e3),t=createFragment(n=>{n.createEl("b",{text:"Templater Error"}),n.createEl("span",{text:":"}),n.createEl("br"),n.createEl("span",{text:r.message}),r instanceof b&&r.console_msg&&(n.createEl("br"),n.createEl("span",{text:"Check console for more information"}),console.error("Templater Error:",r.message,` +`,r.console_msg))});e.noticeEl.appendChild(t)}var b=class extends Error{constructor(e,t){super(e);this.console_msg=t;this.name=this.constructor.name,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}};async function se(r,e){try{return await r()}catch(t){return t instanceof b?V(t):V(new b(e,t.message)),null}}function ce(r,e){try{return r()}catch(t){return V(new b(e,t.message)),null}}var R=function(){function r(){}return r.explainIfInvalidTSDocTagName=function(e){if(e[0]!=="@")return'A TSDoc tag name must start with an "@" symbol';if(!r._tsdocTagNameRegExp.test(e))return"A TSDoc tag name must start with a letter and contain only letters and numbers"},r.validateTSDocTagName=function(e){var t=r.explainIfInvalidTSDocTagName(e);if(t)throw new Error(t)},r.explainIfInvalidLinkUrl=function(e){if(e.length===0)return"The URL cannot be empty";if(!r._urlSchemeRegExp.test(e))return'An @link URL must begin with a scheme comprised only of letters and numbers followed by "://". (For general URLs, use an HTML "" tag instead.)';if(!r._urlSchemeAfterRegExp.test(e))return'An @link URL must have at least one character after "://"'},r.explainIfInvalidHtmlName=function(e){if(!r._htmlNameRegExp.test(e))return"An HTML name must be an ASCII letter followed by zero or more letters, digits, or hyphens"},r.validateHtmlName=function(e){var t=r.explainIfInvalidHtmlName(e);if(t)throw new Error(t)},r.explainIfInvalidPackageName=function(e){if(e.length===0)return"The package name cannot be an empty string";if(!r._validPackageNameRegExp.test(e))return"The package name ".concat(JSON.stringify(e)," is not a valid package name")},r.explainIfInvalidImportPath=function(e,t){if(e.length>0){if(e.indexOf("//")>=0)return'An import path must not contain "//"';if(e[e.length-1]==="/")return'An import path must not end with "/"';if(!t&&e[0]==="/")return'An import path must not start with "/" unless prefixed by a package name'}},r.isSystemSelector=function(e){return r._systemSelectors.has(e)},r.explainIfInvalidUnquotedIdentifier=function(e){if(e.length===0)return"The identifier cannot be an empty string";if(r._identifierBadCharRegExp.test(e))return"The identifier cannot non-word characters";if(r._identifierNumberStartRegExp.test(e))return"The identifier must not start with a number"},r.explainIfInvalidUnquotedMemberIdentifier=function(e){var t=r.explainIfInvalidUnquotedIdentifier(e);if(t!==void 0)return t;if(r.isSystemSelector(e))return'The identifier "'.concat(e,'" must be quoted because it is a TSDoc system selector name')},r._tsdocTagNameRegExp=/^@[a-z][a-z0-9]*$/i,r._urlSchemeRegExp=/^[a-z][a-z0-9]*\:\/\//i,r._urlSchemeAfterRegExp=/^[a-z][a-z0-9]*\:\/\/./i,r._htmlNameRegExp=/^[a-z]+[a-z0-9\-]*$/i,r._identifierBadCharRegExp=/[^a-z0-9_$]/i,r._identifierNumberStartRegExp=/^[0-9]/,r._validPackageNameRegExp=/^(?:@[a-z0-9\-_\.]+\/)?[a-z0-9\-_\.]+$/i,r._systemSelectors=new Set(["instance","static","constructor","class","enum","function","interface","namespace","type","variable"]),r}();var Cn=function(){function r(){this._docNodeDefinitionsByKind=new Map,this._docNodeDefinitionsByConstructor=new Map}return r.prototype.registerDocNodes=function(e,t){var n=R.explainIfInvalidPackageName(e);if(n)throw new Error("Invalid NPM package name: "+n);for(var i=0,o=t;i0&&i.appendNodes(n),i}return Object.defineProperty(e.prototype,"nodes",{get:function(){return this._nodes},enumerable:!1,configurable:!0}),e.prototype.appendNode=function(t){if(!this.configuration.docNodeManager.isAllowedChild(this.kind,t.kind))throw new Error("The TSDocConfiguration does not allow a ".concat(this.kind," node to")+" contain a node of type ".concat(t.kind));this._nodes.push(t)},e.prototype.appendNodes=function(t){for(var n=0,i=t;n0){var i=this.nodes[this.nodes.length-1];i.kind===g.Paragraph&&(n=i)}n||(n=new ke({configuration:this.configuration}),this.appendNode(n)),n.appendNode(t)},e.prototype.appendNodesInParagraph=function(t){for(var n=0,i=t;n1){var e=this._chunks.join("");this._chunks.length=1,this._chunks[0]=e}return this._chunks[0]},r}();var $r=function(){function r(){}return r.transform=function(e){for(var t=[],n=!1,i=[],o=[],a=!1,u=0,l=e.nodes;u0&&(n&&(i.push(" "),n=!1),i.push(I),o.push(d),a=!0),M&&a&&(n=!0);break;case g.SoftBreak:a&&(n=!0),o.push(d);break;default:n&&(i.push(" "),n=!1),i.length>0&&(t.push(new xe({configuration:e.configuration,text:i.join("")})),i.length=0,o.length=0),t.push(d),a=!0}}i.length>0&&(t.push(new xe({configuration:e.configuration,text:i.join("")})),i.length=0,o.length=0);var K=new ke({configuration:e.configuration});return K.appendNodes(t),K},r}();var In=function(){function r(){}return r.trimSpacesInParagraph=function(e){return $r.transform(e)},r}();var Bn=function(r,e,t){if(t||arguments.length===2)for(var n=0,i=e.length,o;n0&&(this._ensureLineSkipped(),this._renderNodes(a.modifierTagSet.nodes));break;case g.DeclarationReference:var u=e;this._writeContent(u.packageName),this._writeContent(u.importPath),(u.packageName!==void 0||u.importPath!==void 0)&&this._writeContent("#"),this._renderNodes(u.memberReferences);break;case g.ErrorText:var l=e;this._writeContent(l.text);break;case g.EscapedText:var d=e;this._writeContent(d.encodedText);break;case g.FencedCode:var h=e;this._ensureAtStartOfLine(),this._writeContent("```"),this._writeContent(h.language),this._writeNewline(),this._writeContent(h.code),this._writeContent("```"),this._writeNewline(),this._writeNewline();break;case g.HtmlAttribute:var w=e;this._writeContent(w.name),this._writeContent(w.spacingAfterName),this._writeContent("="),this._writeContent(w.spacingAfterEquals),this._writeContent(w.value),this._writeContent(w.spacingAfterValue);break;case g.HtmlEndTag:var E=e;this._writeContent("");break;case g.HtmlStartTag:var M=e;this._writeContent("<"),this._writeContent(M.name),this._writeContent(M.spacingAfterName);for(var I=M.spacingAfterName===void 0||M.spacingAfterName.length===0,K=0,D=M.htmlAttributes;K":">");break;case g.InheritDocTag:var ie=e;this._renderInlineTag(ie,function(){ie.declarationReference&&(t._writeContent(" "),t._renderNode(ie.declarationReference))});break;case g.InlineTag:var oe=e;this._renderInlineTag(oe,function(){oe.tagContent.length>0&&(t._writeContent(" "),t._writeContent(oe.tagContent))});break;case g.LinkTag:var z=e;this._renderInlineTag(z,function(){(z.urlDestination!==void 0||z.codeDestination!==void 0)&&(z.urlDestination!==void 0?(t._writeContent(" "),t._writeContent(z.urlDestination)):z.codeDestination!==void 0&&(t._writeContent(" "),t._renderNode(z.codeDestination))),z.linkText!==void 0&&(t._writeContent(" "),t._writeContent("|"),t._writeContent(" "),t._writeContent(z.linkText))});break;case g.MemberIdentifier:var Ke=e;Ke.hasQuotes?(this._writeContent('"'),this._writeContent(Ke.identifier),this._writeContent('"')):this._writeContent(Ke.identifier);break;case g.MemberReference:var fe=e;fe.hasDot&&this._writeContent("."),fe.selector&&this._writeContent("("),fe.memberSymbol?this._renderNode(fe.memberSymbol):this._renderNode(fe.memberIdentifier),fe.selector&&(this._writeContent(":"),this._renderNode(fe.selector),this._writeContent(")"));break;case g.MemberSelector:var xn=e;this._writeContent(xn.selector);break;case g.MemberSymbol:var Pt=e;this._writeContent("["),this._renderNode(Pt.symbolReference),this._writeContent("]");break;case g.Section:var yn=e;this._renderNodes(yn.nodes);break;case g.Paragraph:var dt=In.trimSpacesInParagraph(e);dt.nodes.length>0&&(this._hangingParagraph?this._hangingParagraph=!1:this._ensureLineSkipped(),this._renderNodes(dt.nodes),this._writeNewline());break;case g.ParamBlock:var A=e;this._ensureLineSkipped(),this._renderNode(A.blockTag),this._writeContent(" "),this._writeContent(A.parameterName),this._writeContent(" - "),this._hangingParagraph=!0,this._renderNode(A.content),this._hangingParagraph=!1;break;case g.ParamCollection:var k=e;this._renderNodes(k.blocks);break;case g.PlainText:var f=e;this._writeContent(f.text);break}},r.prototype._renderInlineTag=function(e,t){this._writeContent("{"),this._writeContent(e.tagName),t(),this._writeContent("}")},r.prototype._renderNodes=function(e){for(var t=0,n=e;t1){for(var n=!0,i=0,o=t;i0?this.params:void 0,this.typeParams.count>0?this.typeParams:void 0,this.returnsBlock],this.customBlocks,!0),this.seeBlocks,!0),[this.inheritDocTag],!1),this.modifierTagSet.nodes,!0)},e.prototype.emitAsTsdoc=function(){var t=new Se,n=new Ce;return n.renderComment(t,this),t.toString()},e}(v);var co=function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(n[o]=i[o])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}}(),lo=function(r,e,t){if(t||arguments.length===2)for(var n=0,i=e.length,o;n=t},r._scanTextContent=function(e,t,n){for(var i=0,o=e;i=t||(n+=r._scanTextContent(a.getChildNodes(),t,n),n>=t))break}return n},r._countNonSpaceCharacters=function(e){for(var t=0,n=e.length,i=0;ithis.buffer.length)return{line:0,column:0};for(var t=1,n=1,i=0;ithis.buffer.length)throw new Error("TextRange.pos cannot exceed the associated text buffer length");if(this.end>this.buffer.length)throw new Error("TextRange.end cannot exceed the associated text buffer length")},r.empty=new r("",0,0),r}();var vt=function(){function r(e){this.messageId=e.messageId,this.unformattedText=e.messageText,this.textRange=e.textRange,this.tokenSequence=e.tokenSequence,this.docNode=e.docNode,this._text=void 0}return r._formatMessageText=function(e,t){if(e||(e="An unknown error occurred"),t.pos!==0||t.end!==0){var n=t.getLocation(t.pos);if(n.line)return"(".concat(n.line,",").concat(n.column,"): ")+e}return e},Object.defineProperty(r.prototype,"text",{get:function(){return this._text===void 0&&(this._text=r._formatMessageText(this.unformattedText,this.textRange)),this._text},enumerable:!1,configurable:!0}),r.prototype.toString=function(){return this.text},r}();var On=function(){function r(){this._messages=[]}return Object.defineProperty(r.prototype,"messages",{get:function(){return this._messages},enumerable:!1,configurable:!0}),r.prototype.addMessage=function(e){this._messages.push(e)},r.prototype.addMessageForTextRange=function(e,t,n){this.addMessage(new vt({messageId:e,messageText:t,textRange:n}))},r.prototype.addMessageForTokenSequence=function(e,t,n,i){this.addMessage(new vt({messageId:e,messageText:t,textRange:n.getContainingTextRange(),tokenSequence:n,docNode:i}))},r.prototype.addMessageForDocErrorText=function(e){var t;e.textExcerpt?t=e.textExcerpt:t=e.errorLocation,this.addMessage(new vt({messageId:e.messageId,messageText:e.errorMessage,textRange:t.getContainingTextRange(),tokenSequence:t,docNode:e}))},r}();var qn=function(){function r(e,t){this.commentRange=ye.empty,this.lines=[],this.tokens=[],this.configuration=e,this.sourceRange=t,this.docComment=new Kt({configuration:this.configuration}),this.log=new On}return r}();var Oe=function(){function r(e){this.parserContext=e.parserContext,this._startIndex=e.startIndex,this._endIndex=e.endIndex,this._validateBounds()}return r.createEmpty=function(e){return new r({parserContext:e,startIndex:0,endIndex:0})},Object.defineProperty(r.prototype,"startIndex",{get:function(){return this._startIndex},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"endIndex",{get:function(){return this._endIndex},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"tokens",{get:function(){return this.parserContext.tokens.slice(this._startIndex,this._endIndex)},enumerable:!1,configurable:!0}),r.prototype.getNewSequence=function(e,t){return new r({parserContext:this.parserContext,startIndex:e,endIndex:t})},r.prototype.getContainingTextRange=function(){return this.isEmpty()?ye.empty:this.parserContext.sourceRange.getNewRange(this.parserContext.tokens[this._startIndex].range.pos,this.parserContext.tokens[this._endIndex-1].range.end)},r.prototype.isEmpty=function(){return this._startIndex===this._endIndex},r.prototype.toString=function(){return this.tokens.map(function(e){return e.toString()}).join("")},r.prototype._validateBounds=function(){if(this.startIndex<0)throw new Error("TokenSequence.startIndex cannot be negative");if(this.endIndex<0)throw new Error("TokenSequence.endIndex cannot be negative");if(this.endIndexthis.parserContext.tokens.length)throw new Error("TokenSequence.startIndex cannot exceed the associated token array");if(this.endIndex>this.parserContext.tokens.length)throw new Error("TokenSequence.endIndex cannot exceed the associated token array")},r}();var W;(function(r){r[r.BeginComment1=0]="BeginComment1",r[r.BeginComment2=1]="BeginComment2",r[r.CollectingFirstLine=2]="CollectingFirstLine",r[r.CollectingLine=3]="CollectingLine",r[r.AdvancingLine=4]="AdvancingLine",r[r.Done=5]="Done"})(W||(W={}));var Ur=function(){function r(){}return r.extract=function(e){for(var t=e.sourceRange,n=t.buffer,i=0,o=0,a=0,u=0,l=t.pos,d=W.BeginComment1,h=[];d!==W.Done;){if(l>=t.end)switch(d){case W.BeginComment1:case W.BeginComment2:return e.log.addMessageForTextRange(j.CommentNotFound,'Expecting a "/**" comment',t),!1;default:return e.log.addMessageForTextRange(j.CommentMissingClosingDelimiter,"Unexpected end of input",t),!1}var w=n[l],E=l;++l;var M=la)&&h.push(t.getNewRange(a,u)),a=l,u=l,d=W.AdvancingLine):w==="*"&&M==="/"?(u>a&&h.push(t.getNewRange(a,u)),a=0,u=0,++l,o=l,d=W.Done):r._whitespaceCharacterRegExp.test(w)||(u=l);break;case W.AdvancingLine:w==="*"?M==="/"?(a=0,u=0,++l,o=l,d=W.Done):(M===" "&&++l,a=l,u=l,d=W.CollectingLine):w===` +`?(h.push(t.getNewRange(E,E)),a=l):r._whitespaceCharacterRegExp.test(w)||(u=l,d=W.CollectingLine);break}}return e.commentRange=t.getNewRange(i,o),e.lines=h,!0},r._whitespaceCharacterRegExp=/^\s$/,r}();var bt=function(){function r(){}return r.readTokens=function(e){r._ensureInitialized();for(var t=[],n=void 0,i=0,o=e;i":p.GreaterThan,"=":p.Equals,"'":p.SingleQuote,'"':p.DoubleQuote,"/":p.Slash,"-":p.Hyphen,"@":p.AtSign,"{":p.LeftCurlyBracket,"}":p.RightCurlyBracket,"`":p.Backtick,".":p.Period,":":p.Colon,",":p.Comma,"[":p.LeftSquareBracket,"]":p.RightSquareBracket,"|":p.Pipe,"(":p.LeftParenthesis,")":p.RightParenthesis,"#":p.PoundSymbol,"+":p.Plus,$:p.DollarSign},o=0,a=Object.getOwnPropertyNames(i);o?@[\\]^`{|}~",r._wordCharacters="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_",r}();var Ln=function(){function r(e,t){if(this._parserContext=e,this.tokens=e.tokens,t){if(t.parserContext!==this._parserContext)throw new Error("The embeddedTokenSequence must use the same parser context");this._readerStartIndex=t.startIndex,this._readerEndIndex=t.endIndex}else this._readerStartIndex=0,this._readerEndIndex=this.tokens.length;this._currentIndex=this._readerStartIndex,this._accumulatedStartIndex=this._readerStartIndex}return r.prototype.extractAccumulatedSequence=function(){if(this._accumulatedStartIndex===this._currentIndex)throw new Error("Parser assertion failed: The queue should not be empty when extractAccumulatedSequence() is called");var e=new Oe({parserContext:this._parserContext,startIndex:this._accumulatedStartIndex,endIndex:this._currentIndex});return this._accumulatedStartIndex=this._currentIndex,e},r.prototype.isAccumulatedSequenceEmpty=function(){return this._accumulatedStartIndex===this._currentIndex},r.prototype.tryExtractAccumulatedSequence=function(){if(!this.isAccumulatedSequenceEmpty())return this.extractAccumulatedSequence()},r.prototype.assertAccumulatedSequenceIsEmpty=function(){if(!this.isAccumulatedSequenceEmpty()){var e=new Oe({parserContext:this._parserContext,startIndex:this._accumulatedStartIndex,endIndex:this._currentIndex}),t=e.tokens.map(function(n){return n.toString()});throw new Error(`Parser assertion failed: The queue should be empty, but it contains: +`+JSON.stringify(t))}},r.prototype.peekToken=function(){return this.tokens[this._currentIndex]},r.prototype.peekTokenKind=function(){return this._currentIndex>=this._readerEndIndex?p.EndOfInput:this.tokens[this._currentIndex].kind},r.prototype.peekTokenAfterKind=function(){return this._currentIndex+1>=this._readerEndIndex?p.EndOfInput:this.tokens[this._currentIndex+1].kind},r.prototype.peekTokenAfterAfterKind=function(){return this._currentIndex+2>=this._readerEndIndex?p.EndOfInput:this.tokens[this._currentIndex+2].kind},r.prototype.readToken=function(){if(this._currentIndex>=this._readerEndIndex)throw new Error("Cannot read past end of stream");var e=this.tokens[this._currentIndex];if(e.kind===p.EndOfInput)throw new Error("The EndOfInput token cannot be read");return this._currentIndex++,e},r.prototype.peekPreviousTokenKind=function(){return this._currentIndex===0?p.EndOfInput:this.tokens[this._currentIndex-1].kind},r.prototype.createMarker=function(){return this._currentIndex},r.prototype.backtrackToMarker=function(e){if(e>this._currentIndex)throw new Error("The marker has expired");this._currentIndex=e,e" character should be escaped using a backslash to avoid confusion with an HTML tag'));break;case p.Backtick:this._pushAccumulatedPlainText(e),e.peekTokenAfterKind()===p.Backtick&&e.peekTokenAfterAfterKind()===p.Backtick?this._pushNode(this._parseFencedCode(e)):this._pushNode(this._parseCodeSpan(e));break;default:e.readToken();break}this._pushAccumulatedPlainText(e),this._performValidationChecks()},r.prototype._performValidationChecks=function(){var e=this._parserContext.docComment;e.deprecatedBlock&&(on.hasAnyTextContent(e.deprecatedBlock)||this._parserContext.log.addMessageForTokenSequence(j.MissingDeprecationMessage,"The ".concat(e.deprecatedBlock.blockTag.tagName," block must include a deprecation message,")+" e.g. describing the recommended alternative",e.deprecatedBlock.blockTag.getTokenSequence(),e.deprecatedBlock)),e.inheritDocTag&&(e.remarksBlock&&this._parserContext.log.addMessageForTokenSequence(j.InheritDocIncompatibleTag,'A "'.concat(e.remarksBlock.blockTag.tagName,'" block must not be used, because that')+" content is provided by the @inheritDoc tag",e.remarksBlock.blockTag.getTokenSequence(),e.remarksBlock.blockTag),on.hasAnyTextContent(e.summarySection)&&this._parserContext.log.addMessageForTextRange(j.InheritDocIncompatibleSummary,"The summary section must not have any content, because that content is provided by the @inheritDoc tag",this._parserContext.commentRange))},r.prototype._validateTagDefinition=function(e,t,n,i,o){if(e){var a=e.syntaxKind===F.InlineTag;a!==n?n?this._parserContext.log.addMessageForTokenSequence(j.TagShouldNotHaveBraces,'The TSDoc tag "'.concat(t,'" is not an inline tag; it must not be enclosed in "{ }" braces'),i,o):this._parserContext.log.addMessageForTokenSequence(j.InlineTagMissingBraces,'The TSDoc tag "'.concat(t,'" is an inline tag; it must be enclosed in "{ }" braces'),i,o):this._parserContext.configuration.validation.reportUnsupportedTags&&(this._parserContext.configuration.isTagSupported(e)||this._parserContext.log.addMessageForTokenSequence(j.UnsupportedTag,'The TSDoc tag "'.concat(t,'" is not supported by this tool'),i,o))}else this._parserContext.configuration.validation.ignoreUndefinedTags||this._parserContext.log.addMessageForTokenSequence(j.UndefinedTag,'The TSDoc tag "'.concat(t,'" is not defined in this configuration'),i,o)},r.prototype._pushAccumulatedPlainText=function(e){e.isAccumulatedSequenceEmpty()||this._pushNode(new xe({parsed:!0,configuration:this._configuration,textExcerpt:e.extractAccumulatedSequence()}))},r.prototype._parseAndPushBlock=function(e){var t=this._parserContext.docComment,n=this._parserContext.configuration,i=t.modifierTagSet,o=this._parseBlockTag(e);if(o.kind!==g.BlockTag){this._pushNode(o);return}var a=o,u=n.tryGetTagDefinitionWithUpperCase(a.tagNameWithUpperCase);if(this._validateTagDefinition(u,a.tagName,!1,a.getTokenSequence(),a),u)switch(u.syntaxKind){case F.BlockTag:if(a.tagNameWithUpperCase===L.param.tagNameWithUpperCase){var l=this._parseParamBlock(e,a,L.param.tagName);this._parserContext.docComment.params.add(l),this._currentSection=l.content;return}else if(a.tagNameWithUpperCase===L.typeParam.tagNameWithUpperCase){var l=this._parseParamBlock(e,a,L.typeParam.tagName);this._parserContext.docComment.typeParams.add(l),this._currentSection=l.content;return}else{var d=new it({configuration:this._configuration,blockTag:a});this._addBlockToDocComment(d),this._currentSection=d.content}return;case F.ModifierTag:i.addTag(a);return}this._pushNode(a)},r.prototype._addBlockToDocComment=function(e){var t=this._parserContext.docComment;switch(e.blockTag.tagNameWithUpperCase){case L.remarks.tagNameWithUpperCase:t.remarksBlock=e;break;case L.privateRemarks.tagNameWithUpperCase:t.privateRemarks=e;break;case L.deprecated.tagNameWithUpperCase:t.deprecatedBlock=e;break;case L.returns.tagNameWithUpperCase:t.returnsBlock=e;break;case L.see.tagNameWithUpperCase:t._appendSeeBlock(e);break;default:t.appendCustomBlock(e)}},r.prototype._tryParseJSDocTypeOrValueRest=function(e,t,n,i){for(var o,a=1;a>0;){var u=e.peekTokenKind();switch(u){case t:o===void 0&&a++;break;case n:o===void 0&&a--;break;case p.Backslash:o!==void 0&&(e.readToken(),u=e.peekTokenKind());break;case p.DoubleQuote:case p.SingleQuote:case p.Backtick:o===u?o=void 0:o===void 0&&(o=u);break}if(u===p.EndOfInput){e.backtrackToMarker(i);return}e.readToken()}return e.tryExtractAccumulatedSequence()},r.prototype._tryParseUnsupportedJSDocType=function(e,t,n){if(e.assertAccumulatedSequenceIsEmpty(),!(e.peekTokenKind()!==p.LeftCurlyBracket||e.peekTokenAfterKind()===p.AtSign)){var i=e.createMarker();e.readToken();var o=this._tryParseJSDocTypeOrValueRest(e,p.LeftCurlyBracket,p.RightCurlyBracket,i);if(o){this._parserContext.log.addMessageForTokenSequence(j.ParamTagWithInvalidType,"The "+n+" block should not include a JSDoc-style '{type}'",o,t);var a=this._tryReadSpacingAndNewlines(e);a&&(o=o.getNewSequence(o.startIndex,a.endIndex))}return o}},r.prototype._tryParseJSDocOptionalNameRest=function(e){if(e.assertAccumulatedSequenceIsEmpty(),e.peekTokenKind()!==p.EndOfInput){var t=e.createMarker();return this._tryParseJSDocTypeOrValueRest(e,p.LeftSquareBracket,p.RightSquareBracket,t)}},r.prototype._parseParamBlock=function(e,t,n){var i=e.createMarker(),o=this._tryReadSpacingAndNewlines(e),a=this._tryParseUnsupportedJSDocType(e,t,n),u;e.peekTokenKind()===p.LeftSquareBracket&&(e.readToken(),u=e.extractAccumulatedSequence());for(var l="",d=!1;!d;)switch(e.peekTokenKind()){case p.AsciiWord:case p.Period:case p.DollarSign:l+=e.readToken();break;default:d=!0;break}var h=R.explainIfInvalidUnquotedIdentifier(l);if(h!==void 0){e.backtrackToMarker(i);var w=new wt({configuration:this._configuration,blockTag:t,parameterName:""}),E=l.length>0?"The "+n+" block should be followed by a valid parameter name: "+h:"The "+n+" block should be followed by a parameter name";return this._parserContext.log.addMessageForTokenSequence(j.ParamTagWithInvalidName,E,t.getTokenSequence(),t),w}var M=e.extractAccumulatedSequence(),I;if(u){I=this._tryParseJSDocOptionalNameRest(e);var K=u;I&&(K=t.getTokenSequence().getNewSequence(u.startIndex,I.endIndex)),this._parserContext.log.addMessageForTokenSequence(j.ParamTagWithInvalidOptionalName,"The "+n+" should not include a JSDoc-style optional name; it must not be enclosed in '[ ]' brackets.",K,t)}var D=this._tryReadSpacingAndNewlines(e),G=this._tryParseUnsupportedJSDocType(e,t,n),ie,oe,z;return e.peekTokenKind()===p.Hyphen?(e.readToken(),ie=e.extractAccumulatedSequence(),oe=this._tryReadSpacingAndNewlines(e),z=this._tryParseUnsupportedJSDocType(e,t,n)):this._parserContext.log.addMessageForTokenSequence(j.ParamTagMissingHyphen,"The "+n+" block should be followed by a parameter name and then a hyphen",t.getTokenSequence(),t),new wt({parsed:!0,configuration:this._configuration,blockTag:t,spacingBeforeParameterNameExcerpt:o,unsupportedJsdocTypeBeforeParameterNameExcerpt:a,unsupportedJsdocOptionalNameOpenBracketExcerpt:u,parameterNameExcerpt:M,parameterName:l,unsupportedJsdocOptionalNameRestExcerpt:I,spacingAfterParameterNameExcerpt:D,unsupportedJsdocTypeAfterParameterNameExcerpt:G,hyphenExcerpt:ie,spacingAfterHyphenExcerpt:oe,unsupportedJsdocTypeAfterHyphenExcerpt:z})},r.prototype._pushNode=function(e){this._configuration.docNodeManager.isAllowedChild(g.Paragraph,e.kind)?this._currentSection.appendNodeInParagraph(e):this._currentSection.appendNode(e)},r.prototype._parseBackslashEscape=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.readToken(),e.peekTokenKind()===p.EndOfInput)return this._backtrackAndCreateError(e,t,j.UnnecessaryBackslash,"A backslash must precede another character that is being escaped");var n=e.readToken();if(!bt.isPunctuation(n.kind))return this._backtrackAndCreateError(e,t,j.UnnecessaryBackslash,"A backslash can only be used to escape a punctuation character");var i=e.extractAccumulatedSequence();return new Ut({parsed:!0,configuration:this._configuration,escapeStyle:rn.CommonMarkBackslash,encodedTextExcerpt:i,decodedText:n.toString()})},r.prototype._parseBlockTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.peekTokenKind()!==p.AtSign)return this._backtrackAndCreateError(e,t,j.MissingTag,'Expecting a TSDoc tag starting with "@"');switch(e.peekPreviousTokenKind()){case p.EndOfInput:case p.Spacing:case p.Newline:break;default:return this._backtrackAndCreateError(e,t,j.AtSignInWord,'The "@" character looks like part of a TSDoc tag; use a backslash to escape it')}var n=e.readToken().toString();if(e.peekTokenKind()!==p.AsciiWord)return this._backtrackAndCreateError(e,t,j.AtSignWithoutTagName,'Expecting a TSDoc tag name after "@"; if it is not a tag, use a backslash to escape this character');for(var i=e.createMarker();e.peekTokenKind()===p.AsciiWord;)n+=e.readToken().toString();switch(e.peekTokenKind()){case p.Spacing:case p.Newline:case p.EndOfInput:break;default:var o=e.peekToken().range.toString()[0];return this._backtrackAndCreateError(e,t,j.CharactersAfterBlockTag,'The token "'.concat(n,'" looks like a TSDoc tag but contains an invalid character')+" ".concat(JSON.stringify(o),'; if it is not a tag, use a backslash to escape the "@"'))}if(R.explainIfInvalidTSDocTagName(n)){var a=this._createFailureForTokensSince(e,j.MalformedTagName,"A TSDoc tag name must start with a letter and contain only letters and numbers",i);return this._backtrackAndCreateErrorForFailure(e,t,"",a)}return new Ht({parsed:!0,configuration:this._configuration,tagName:n,tagNameExcerpt:e.extractAccumulatedSequence()})},r.prototype._parseInlineTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.peekTokenKind()!==p.LeftCurlyBracket)return this._backtrackAndCreateError(e,t,j.MissingTag,'Expecting a TSDoc tag starting with "{"');e.readToken();var n=e.extractAccumulatedSequence(),i=e.createMarker();if(e.peekTokenKind()!==p.AtSign)return this._backtrackAndCreateError(e,t,j.MalformedInlineTag,'Expecting a TSDoc tag starting with "{@"');for(var o=e.readToken().toString();e.peekTokenKind()===p.AsciiWord;)o+=e.readToken().toString();if(o==="@"){var a=this._createFailureForTokensSince(e,j.MalformedInlineTag,'Expecting a TSDoc inline tag name after the "{@" characters',i);return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}if(R.explainIfInvalidTSDocTagName(o)){var a=this._createFailureForTokensSince(e,j.MalformedTagName,"A TSDoc tag name must start with a letter and contain only letters and numbers",i);return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}var u=e.extractAccumulatedSequence(),l=this._tryReadSpacingAndNewlines(e);if(l===void 0&&e.peekTokenKind()!==p.RightCurlyBracket){var d=e.peekToken().range.toString()[0],a=this._createFailureForToken(e,j.CharactersAfterInlineTag,"The character ".concat(JSON.stringify(d)," cannot appear after the TSDoc tag name; expecting a space"));return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}for(var h=!1;!h;)switch(e.peekTokenKind()){case p.EndOfInput:return this._backtrackAndCreateErrorRange(e,t,i,j.InlineTagMissingRightBrace,'The TSDoc inline tag name is missing its closing "}"');case p.Backslash:if(e.readToken(),!bt.isPunctuation(e.peekTokenKind())){var a=this._createFailureForToken(e,j.UnnecessaryBackslash,"A backslash can only be used to escape a punctuation character");return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"Error reading inline TSDoc tag: ",a)}e.readToken();break;case p.LeftCurlyBracket:{var a=this._createFailureForToken(e,j.InlineTagUnescapedBrace,'The "{" character must be escaped with a backslash when used inside a TSDoc inline tag');return this._backtrackAndCreateErrorRangeForFailure(e,t,i,"",a)}case p.RightCurlyBracket:h=!0;break;default:e.readToken();break}var w=e.tryExtractAccumulatedSequence();e.readToken();var E=e.extractAccumulatedSequence(),M={parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:n,tagNameExcerpt:u,tagName:o,spacingAfterTagNameExcerpt:l,tagContentExcerpt:w,closingDelimiterExcerpt:E},I=o.toUpperCase(),K=new Ln(this._parserContext,w||Oe.createEmpty(this._parserContext)),D;switch(I){case L.inheritDoc.tagNameWithUpperCase:D=this._parseInheritDocTag(M,K);break;case L.link.tagNameWithUpperCase:D=this._parseLinkTag(M,K);break;default:D=new ot(M)}var G=this._parserContext.configuration.tryGetTagDefinitionWithUpperCase(I);return this._validateTagDefinition(G,o,!0,u,D),D},r.prototype._parseInheritDocTag=function(e,t){var n=new ot(e),i=an({},e);if(t.peekTokenKind()!==p.EndOfInput){if(i.declarationReference=this._parseDeclarationReference(t,e.tagNameExcerpt,n),!i.declarationReference)return n;if(t.peekTokenKind()!==p.EndOfInput)return t.readToken(),this._parserContext.log.addMessageForTokenSequence(j.InheritDocTagSyntax,"Unexpected character after declaration reference",t.extractAccumulatedSequence(),n),n}return new yt(i)},r.prototype._parseLinkTag=function(e,t){var n=new ot(e),i=an({},e);if(!e.tagContentExcerpt)return this._parserContext.log.addMessageForTokenSequence(j.LinkTagEmpty,"The @link tag content is missing",i.tagNameExcerpt,n),n;for(var o=t.peekTokenKind()===p.Slash&&t.peekTokenAfterKind()===p.Slash,a=t.createMarker(),u=o;!u;)switch(t.peekTokenKind()){case p.AsciiWord:case p.Period:case p.Hyphen:case p.Plus:t.readToken();break;case p.Colon:t.readToken(),o=t.peekTokenKind()===p.Slash&&t.peekTokenAfterKind()===p.Slash,u=!0;break;default:u=!0}if(t.backtrackToMarker(a),o){if(!this._parseLinkTagUrlDestination(t,i,e.tagNameExcerpt,n))return n}else if(!this._parseLinkTagCodeDestination(t,i,e.tagNameExcerpt,n))return n;if(t.peekTokenKind()===p.Spacing)throw new Error("Unconsumed spacing encountered after construct");if(t.peekTokenKind()===p.Pipe){t.readToken(),i.pipeExcerpt=t.extractAccumulatedSequence(),i.spacingAfterPipeExcerpt=this._tryReadSpacingAndNewlines(t),u=!1;for(var l=void 0;!u;)switch(t.peekTokenKind()){case p.EndOfInput:u=!0;break;case p.Pipe:case p.LeftCurlyBracket:var d=t.readToken().toString();return this._parserContext.log.addMessageForTokenSequence(j.LinkTagUnescapedText,'The "'.concat(d,'" character may not be used in the link text without escaping it'),t.extractAccumulatedSequence(),n),n;case p.Spacing:case p.Newline:t.readToken();break;default:l=t.createMarker()+1,t.readToken()}var h=t.tryExtractAccumulatedSequence();h&&(l===void 0?i.spacingAfterLinkTextExcerpt=h:l>=h.endIndex?i.linkTextExcerpt=h:(i.linkTextExcerpt=h.getNewSequence(h.startIndex,l),i.spacingAfterLinkTextExcerpt=h.getNewSequence(l,h.endIndex)))}else if(t.peekTokenKind()!==p.EndOfInput)return t.readToken(),this._parserContext.log.addMessageForTokenSequence(j.LinkTagDestinationSyntax,"Unexpected character after link destination",t.extractAccumulatedSequence(),n),n;return new Jt(i)},r.prototype._parseLinkTagUrlDestination=function(e,t,n,i){for(var o="",a=!1;!a;)switch(e.peekTokenKind()){case p.Spacing:case p.Newline:case p.EndOfInput:case p.Pipe:case p.RightCurlyBracket:a=!0;break;default:o+=e.readToken();break}if(o.length===0)throw new Error("Missing URL in _parseLinkTagUrlDestination()");var u=e.extractAccumulatedSequence(),l=R.explainIfInvalidLinkUrl(o);return l?(this._parserContext.log.addMessageForTokenSequence(j.LinkTagInvalidUrl,l,u,i),!1):(t.urlDestinationExcerpt=u,t.spacingAfterDestinationExcerpt=this._tryReadSpacingAndNewlines(e),!0)},r.prototype._parseLinkTagCodeDestination=function(e,t,n,i){return t.codeDestination=this._parseDeclarationReference(e,n,i),!!t.codeDestination},r.prototype._parseDeclarationReference=function(e,t,n){e.assertAccumulatedSequenceIsEmpty();for(var i=e.createMarker(),o=!1,a=!0,u=!1,l=!1;!l;)switch(e.peekTokenKind()){case p.DoubleQuote:case p.EndOfInput:case p.LeftCurlyBracket:case p.LeftParenthesis:case p.LeftSquareBracket:case p.Newline:case p.Pipe:case p.RightCurlyBracket:case p.RightParenthesis:case p.RightSquareBracket:case p.SingleQuote:case p.Spacing:l=!0;break;case p.PoundSymbol:o=!0,l=!0;break;case p.Slash:case p.AtSign:a&&(u=!0),e.readToken();break;case p.AsciiWord:case p.Period:case p.Hyphen:e.readToken();break;default:a=!1,e.readToken()}if(!o&&u){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingHash,'The declaration reference appears to contain a package name or import path, but it is missing the "#" delimiter',e.extractAccumulatedSequence(),n);return}e.backtrackToMarker(i);var d,h,w,E;if(o){if(e.peekTokenKind()!==p.Period){var M=e.peekTokenKind()===p.AtSign,I=!1;for(l=!1;!l;)switch(e.peekTokenKind()){case p.EndOfInput:throw new Error("Expecting pound symbol");case p.Slash:M&&!I?(e.readToken(),I=!0):l=!0;break;case p.PoundSymbol:l=!0;break;default:e.readToken()}if(!e.isAccumulatedSequenceEmpty()){d=e.extractAccumulatedSequence();var K=R.explainIfInvalidPackageName(d.toString());if(K){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMalformedPackageName,K,d,n);return}}}for(l=!1;!l;)switch(e.peekTokenKind()){case p.EndOfInput:throw new Error("Expecting pound symbol");case p.PoundSymbol:l=!0;break;default:e.readToken()}if(!e.isAccumulatedSequenceEmpty()){h=e.extractAccumulatedSequence();var K=R.explainIfInvalidImportPath(h.toString(),!!d);if(K){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMalformedImportPath,K,h,n);return}}if(e.peekTokenKind()!==p.PoundSymbol)throw new Error("Expecting pound symbol");if(e.readToken(),w=e.extractAccumulatedSequence(),E=this._tryReadSpacingAndNewlines(e),d===void 0&&h===void 0){this._parserContext.log.addMessageForTokenSequence(j.ReferenceHashSyntax,"The hash character must be preceded by a package name or import path",w,n);return}}var D=[];for(l=!1;!l;)switch(e.peekTokenKind()){case p.Period:case p.LeftParenthesis:case p.AsciiWord:case p.Colon:case p.LeftSquareBracket:case p.DoubleQuote:var G=D.length>0,ie=this._parseMemberReference(e,G,t,n);if(!ie)return;D.push(ie);break;default:l=!0}if(d===void 0&&h===void 0&&D.length===0){this._parserContext.log.addMessageForTokenSequence(j.MissingReference,"Expecting a declaration reference",t,n);return}return new Yt({parsed:!0,configuration:this._configuration,packageNameExcerpt:d,importPathExcerpt:h,importHashExcerpt:w,spacingAfterImportHashExcerpt:E,memberReferences:D})},r.prototype._parseMemberReference=function(e,t,n,i){var o={parsed:!0,configuration:this._configuration};if(t){if(e.peekTokenKind()!==p.Period){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingDot,"Expecting a period before the next component of a declaration reference",n,i);return}e.readToken(),o.dotExcerpt=e.extractAccumulatedSequence(),o.spacingAfterDotExcerpt=this._tryReadSpacingAndNewlines(e)}if(e.peekTokenKind()===p.LeftParenthesis&&(e.readToken(),o.leftParenthesisExcerpt=e.extractAccumulatedSequence(),o.spacingAfterLeftParenthesisExcerpt=this._tryReadSpacingAndNewlines(e)),e.peekTokenKind()===p.LeftSquareBracket){if(o.memberSymbol=this._parseMemberSymbol(e,i),!o.memberSymbol)return}else if(o.memberIdentifier=this._parseMemberIdentifier(e,n,i),!o.memberIdentifier)return;if(o.spacingAfterMemberExcerpt=this._tryReadSpacingAndNewlines(e),e.peekTokenKind()===p.Colon){if(e.readToken(),o.colonExcerpt=e.extractAccumulatedSequence(),o.spacingAfterColonExcerpt=this._tryReadSpacingAndNewlines(e),!o.leftParenthesisExcerpt){this._parserContext.log.addMessageForTokenSequence(j.ReferenceSelectorMissingParens,"Syntax error in declaration reference: the member selector must be enclosed in parentheses",o.colonExcerpt,i);return}if(o.selector=this._parseMemberSelector(e,o.colonExcerpt,i),!o.selector)return;o.spacingAfterSelectorExcerpt=this._tryReadSpacingAndNewlines(e)}else if(o.leftParenthesisExcerpt){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingColon,"Expecting a colon after the identifier because the expression is in parentheses",o.leftParenthesisExcerpt,i);return}if(o.leftParenthesisExcerpt){if(e.peekTokenKind()!==p.RightParenthesis){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingRightParen,"Expecting a matching right parenthesis",o.leftParenthesisExcerpt,i);return}e.readToken(),o.rightParenthesisExcerpt=e.extractAccumulatedSequence(),o.spacingAfterRightParenthesisExcerpt=this._tryReadSpacingAndNewlines(e)}return new Wt(o)},r.prototype._parseMemberSymbol=function(e,t){if(e.peekTokenKind()!==p.LeftSquareBracket)throw new Error('Expecting "["');e.readToken();var n=e.extractAccumulatedSequence(),i=this._tryReadSpacingAndNewlines(e),o=this._parseDeclarationReference(e,n,t);if(!o){this._parserContext.log.addMessageForTokenSequence(j.ReferenceSymbolSyntax,"Missing declaration reference in symbol reference",n,t);return}if(e.peekTokenKind()!==p.RightSquareBracket){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingRightBracket,"Missing closing square bracket for symbol reference",n,t);return}e.readToken();var a=e.extractAccumulatedSequence();return new Xt({parsed:!0,configuration:this._configuration,leftBracketExcerpt:n,spacingAfterLeftBracketExcerpt:i,symbolReference:o,rightBracketExcerpt:a})},r.prototype._parseMemberIdentifier=function(e,t,n){var i=void 0,o=void 0;if(e.peekTokenKind()===p.DoubleQuote){for(e.readToken(),i=e.extractAccumulatedSequence();e.peekTokenKind()!==p.DoubleQuote;){if(e.peekTokenKind()===p.EndOfInput){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingQuote,"Unexpected end of input inside quoted member identifier",i,n);return}e.readToken()}if(e.isAccumulatedSequenceEmpty()){this._parserContext.log.addMessageForTokenSequence(j.ReferenceEmptyIdentifier,"The quoted identifier cannot be empty",i,n);return}var a=e.extractAccumulatedSequence();return e.readToken(),o=e.extractAccumulatedSequence(),new jt({parsed:!0,configuration:this._configuration,leftQuoteExcerpt:i,identifierExcerpt:a,rightQuoteExcerpt:o})}else{for(var u=!1;!u;)switch(e.peekTokenKind()){case p.AsciiWord:case p.DollarSign:e.readToken();break;default:u=!0;break}if(e.isAccumulatedSequenceEmpty()){this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingIdentifier,"Syntax error in declaration reference: expecting a member identifier",t,n);return}var a=e.extractAccumulatedSequence(),l=a.toString(),d=R.explainIfInvalidUnquotedMemberIdentifier(l);if(d){this._parserContext.log.addMessageForTokenSequence(j.ReferenceUnquotedIdentifier,d,a,n);return}return new jt({parsed:!0,configuration:this._configuration,leftQuoteExcerpt:i,identifierExcerpt:a,rightQuoteExcerpt:o})}},r.prototype._parseMemberSelector=function(e,t,n){e.peekTokenKind()!==p.AsciiWord&&this._parserContext.log.addMessageForTokenSequence(j.ReferenceMissingLabel,"Expecting a selector label after the colon",t,n);var i=e.readToken().toString(),o=e.extractAccumulatedSequence(),a=new Qt({parsed:!0,configuration:this._configuration,selectorExcerpt:o,selector:i});if(a.errorMessage){this._parserContext.log.addMessageForTokenSequence(j.ReferenceSelectorSyntax,a.errorMessage,o,n);return}return a},r.prototype._parseHtmlStartTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker(),n=e.readToken();if(n.kind!==p.LessThan)throw new Error('Expecting an HTML tag starting with "<"');var i=e.extractAccumulatedSequence(),o=this._parseHtmlName(e);if(Tt(o))return this._backtrackAndCreateErrorForFailure(e,t,"Invalid HTML element: ",o);for(var a=this._tryReadSpacingAndNewlines(e),u=[];e.peekTokenKind()===p.AsciiWord;){var l=this._parseHtmlAttribute(e);if(Tt(l))return this._backtrackAndCreateErrorForFailure(e,t,"The HTML element has an invalid attribute: ",l);u.push(l)}e.assertAccumulatedSequenceIsEmpty();var d=e.createMarker(),h=!1;if(e.peekTokenKind()===p.Slash&&(e.readToken(),h=!0),e.peekTokenKind()!==p.GreaterThan){var w=this._createFailureForTokensSince(e,j.HtmlTagMissingGreaterThan,'Expecting an attribute or ">" or "/>"',d);return this._backtrackAndCreateErrorForFailure(e,t,"The HTML tag has invalid syntax: ",w)}e.readToken();var E=e.extractAccumulatedSequence();return new zt({parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:i,nameExcerpt:o,spacingAfterNameExcerpt:a,htmlAttributes:u,selfClosingTag:h,closingDelimiterExcerpt:E})},r.prototype._parseHtmlAttribute=function(e){e.assertAccumulatedSequenceIsEmpty();var t=this._parseHtmlName(e);if(Tt(t))return t;var n=this._tryReadSpacingAndNewlines(e);if(e.peekTokenKind()!==p.Equals)return this._createFailureForToken(e,j.HtmlTagMissingEquals,'Expecting "=" after HTML attribute name');e.readToken();var i=e.extractAccumulatedSequence(),o=this._tryReadSpacingAndNewlines(e),a=this._parseHtmlString(e);if(Tt(a))return a;var u=e.extractAccumulatedSequence(),l=this._tryReadSpacingAndNewlines(e);return new Rt({parsed:!0,configuration:this._configuration,nameExcerpt:t,spacingAfterNameExcerpt:n,equalsExcerpt:i,spacingAfterEqualsExcerpt:o,valueExcerpt:u,spacingAfterValueExcerpt:l})},r.prototype._parseHtmlString=function(e){var t=e.createMarker(),n=e.peekTokenKind();if(n!==p.DoubleQuote&&n!==p.SingleQuote)return this._createFailureForToken(e,j.HtmlTagMissingString,"Expecting an HTML string starting with a single-quote or double-quote character");e.readToken();for(var i="";;){var o=e.peekTokenKind();if(o===n){e.readToken();break}if(o===p.EndOfInput||o===p.Newline)return this._createFailureForToken(e,j.HtmlStringMissingQuote,"The HTML string is missing its closing quote",t);i+=e.readToken().toString()}return e.peekTokenKind()===p.AsciiWord?this._createFailureForToken(e,j.TextAfterHtmlString,"The next character after a closing quote must be spacing or punctuation"):i},r.prototype._parseHtmlEndTag=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker(),n=e.peekToken();if(n.kind!==p.LessThan)return this._backtrackAndCreateError(e,t,j.MissingHtmlEndTag,'Expecting an HTML tag starting with "" for the HTML tag');return this._backtrackAndCreateErrorForFailure(e,t,"",l)}e.readToken();var d=e.extractAccumulatedSequence();return new Vt({parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:o,nameExcerpt:a,spacingAfterNameExcerpt:u,closingDelimiterExcerpt:d})},r.prototype._parseHtmlName=function(e){var t=e.createMarker();if(e.peekTokenKind()===p.Spacing)return this._createFailureForTokensSince(e,j.MalformedHtmlName,"A space is not allowed here",t);for(var n=!1;!n;)switch(e.peekTokenKind()){case p.Hyphen:case p.Period:case p.AsciiWord:e.readToken();break;default:n=!0;break}var i=e.tryExtractAccumulatedSequence();if(!i)return this._createFailureForToken(e,j.MalformedHtmlName,"Expecting an HTML name");var o=i.toString(),a=R.explainIfInvalidHtmlName(o);return a?this._createFailureForTokensSince(e,j.MalformedHtmlName,a,t):this._configuration.validation.reportUnsupportedHtmlElements&&!this._configuration.isHtmlElementSupported(o)?this._createFailureForToken(e,j.UnsupportedHtmlElementName,"The HTML element name ".concat(JSON.stringify(o)," is not defined by your TSDoc configuration"),t):i},r.prototype._parseFencedCode=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker(),n=t+2;switch(e.peekPreviousTokenKind()){case p.Newline:case p.EndOfInput:break;default:return this._backtrackAndCreateErrorRange(e,t,n,j.CodeFenceOpeningIndent,"The opening backtick for a code fence must appear at the start of the line")}var i="";if(i+=e.readToken(),i+=e.readToken(),i+=e.readToken(),i!=="```")throw new Error("Expecting three backticks");for(var o=e.extractAccumulatedSequence();e.peekTokenKind()===p.Spacing;)e.readToken();for(var a=e.tryExtractAccumulatedSequence(),u=!1,l=void 0;!u;)switch(e.peekTokenKind()){case p.Spacing:case p.Newline:l===void 0&&(l=e.createMarker()),e.peekTokenKind()===p.Newline&&(u=!0),e.readToken();break;case p.Backtick:var d=this._createFailureForToken(e,j.CodeFenceSpecifierSyntax,"The language specifier cannot contain backtick characters");return this._backtrackAndCreateErrorRangeForFailure(e,t,n,"Error parsing code fence: ",d);case p.EndOfInput:var h=this._createFailureForToken(e,j.CodeFenceMissingDelimiter,"Missing closing delimiter");return this._backtrackAndCreateErrorRangeForFailure(e,t,n,"Error parsing code fence: ",h);default:l=void 0,e.readToken();break}var w=e.extractAccumulatedSequence(),E=w.getNewSequence(w.startIndex,l),M=w.getNewSequence(l,w.endIndex),I=-1,K=-1;u=!1;for(var D;!u;)switch(e.peekTokenKind()){case p.EndOfInput:var h=this._createFailureForToken(e,j.CodeFenceMissingDelimiter,"Missing closing delimiter");return this._backtrackAndCreateErrorRangeForFailure(e,t,n,"Error parsing code fence: ",h);case p.Newline:for(D=e.readToken(),I=e.createMarker();e.peekTokenKind()===p.Spacing;)D=e.readToken();if(e.peekTokenKind()!==p.Backtick||(K=e.createMarker(),e.readToken(),e.peekTokenKind()!==p.Backtick)||(e.readToken(),e.peekTokenKind()!==p.Backtick))break;e.readToken(),u=!0;break;default:e.readToken();break}D.kind!==p.Newline&&this._parserContext.log.addMessageForTextRange(j.CodeFenceClosingIndent,"The closing delimiter for a code fence must not be indented",D.range);var G=e.extractAccumulatedSequence(),ie=G.getNewSequence(G.startIndex,I),oe=G.getNewSequence(I,K),z=G.getNewSequence(K,G.endIndex);for(u=!1;!u;)switch(e.peekTokenKind()){case p.Spacing:e.readToken();break;case p.Newline:u=!0,e.readToken();break;case p.EndOfInput:u=!0;break;default:this._parserContext.log.addMessageForTextRange(j.CodeFenceClosingSyntax,"Unexpected characters after closing delimiter for code fence",e.peekToken().range),u=!0;break}var Ke=e.tryExtractAccumulatedSequence();return new Gt({parsed:!0,configuration:this._configuration,openingFenceExcerpt:o,spacingAfterOpeningFenceExcerpt:a,languageExcerpt:E,spacingAfterLanguageExcerpt:M,codeExcerpt:ie,spacingBeforeClosingFenceExcerpt:oe,closingFenceExcerpt:z,spacingAfterClosingFenceExcerpt:Ke})},r.prototype._parseCodeSpan=function(e){e.assertAccumulatedSequenceIsEmpty();var t=e.createMarker();if(e.peekTokenKind()!==p.Backtick)throw new Error('Expecting a code span starting with a backtick character "`"');e.readToken();for(var n=e.extractAccumulatedSequence(),i=void 0,o=void 0;;){var a=e.peekTokenKind();if(a===p.Backtick){if(e.isAccumulatedSequenceEmpty())return this._backtrackAndCreateErrorRange(e,t,t+1,j.CodeSpanEmpty,"A code span must contain at least one character between the backticks");i=e.extractAccumulatedSequence(),e.readToken(),o=e.extractAccumulatedSequence();break}if(a===p.EndOfInput||a===p.Newline)return this._backtrackAndCreateError(e,t,j.CodeSpanMissingDelimiter,"The code span is missing its closing backtick");e.readToken()}return new $t({parsed:!0,configuration:this._configuration,openingDelimiterExcerpt:n,codeExcerpt:i,closingDelimiterExcerpt:o})},r.prototype._tryReadSpacingAndNewlines=function(e){var t=!1;do switch(e.peekTokenKind()){case p.Spacing:case p.Newline:e.readToken();break;default:t=!0;break}while(!t);return e.tryExtractAccumulatedSequence()},r.prototype._createError=function(e,t,n){e.readToken();var i=e.extractAccumulatedSequence(),o=new Re({parsed:!0,configuration:this._configuration,textExcerpt:i,messageId:t,errorMessage:n,errorLocation:i});return this._parserContext.log.addMessageForDocErrorText(o),o},r.prototype._backtrackAndCreateError=function(e,t,n,i){return e.backtrackToMarker(t),this._createError(e,n,i)},r.prototype._backtrackAndCreateErrorRange=function(e,t,n,i,o){for(e.backtrackToMarker(t);e.createMarker()!==n;)e.readToken();e.peekTokenKind()!==p.EndOfInput&&e.readToken();var a=e.extractAccumulatedSequence(),u=new Re({parsed:!0,configuration:this._configuration,textExcerpt:a,messageId:i,errorMessage:o,errorLocation:a});return this._parserContext.log.addMessageForDocErrorText(u),u},r.prototype._backtrackAndCreateErrorForFailure=function(e,t,n,i){e.backtrackToMarker(t),e.readToken();var o=e.extractAccumulatedSequence(),a=new Re({parsed:!0,configuration:this._configuration,textExcerpt:o,messageId:i.failureMessageId,errorMessage:n+i.failureMessage,errorLocation:i.failureLocation});return this._parserContext.log.addMessageForDocErrorText(a),a},r.prototype._backtrackAndCreateErrorRangeForFailure=function(e,t,n,i,o){for(e.backtrackToMarker(t);e.createMarker()!==n;)e.readToken();e.peekTokenKind()!==p.EndOfInput&&e.readToken();var a=e.extractAccumulatedSequence(),u=new Re({parsed:!0,configuration:this._configuration,textExcerpt:a,messageId:o.failureMessageId,errorMessage:i+o.failureMessage,errorLocation:o.failureLocation});return this._parserContext.log.addMessageForDocErrorText(u),u},r.prototype._createFailureForToken=function(e,t,n,i){i||(i=e.createMarker());var o=new Oe({parserContext:this._parserContext,startIndex:i,endIndex:i+1});return{failureMessageId:t,failureMessage:n,failureLocation:o}},r.prototype._createFailureForTokensSince=function(e,t,n,i){var o=e.createMarker();if(osetTimeout(e,r))}function zr(){return/(<%(?:-|_)?\s*[*~]{0,1})\+((?:.|\s)*?%>)/g}function Yn(r,e){e=(0,re.normalizePath)(e);let t=r.vault.getAbstractFileByPath(e);if(!t)throw new b(`Folder "${e}" doesn't exist`);if(!(t instanceof re.TFolder))throw new b(`${e} is a file, not a folder`);return t}function De(r,e){e=(0,re.normalizePath)(e);let t=r.vault.getAbstractFileByPath(e);if(!t)throw new b(`File "${e}" doesn't exist`);if(!(t instanceof re.TFile))throw new b(`${e} is a folder, not a file`);return t}function je(r,e){let t=Yn(r,e),n=[];return re.Vault.recurseChildren(t,i=>{i instanceof re.TFile&&n.push(i)}),n.sort((i,o)=>i.path.localeCompare(o.path)),n}async function Jr(r,e){return await Promise.all(e.map(async n=>{let i=await r.vault.cachedRead(n);return So(n,i)}))}function So(r,e){let n=new Hn().parseString(e),i=new $n(r);return i.description=Co(n.docComment.summarySection),i.returns=Do(n.docComment.returnsBlock),i.arguments=Po(n.docComment.params),i}function Co(r){try{return r.nodes.map(t=>t.getChildNodes().filter(n=>n instanceof xe).map(n=>n.text).join(` `)).join(` -`)}catch{console.error("Failed to parse summary section")}}function as(n){if(!n)return"";try{return n.content.nodes[0].getChildNodes()[0].text.trim()}catch{return""}}function ss(n){try{return n.blocks.map(r=>{let i=r.parameterName,o=r.content.getChildNodes()[0].getChildNodes().filter(a=>a instanceof Ve).map(a=>a.text).join(" ");return new Gr(i,o)})}catch{return[]}}function Ot(n,e,t){if(t<0||t===n.length)return;let r=n[e];n[e]=n[t],n[t]=r}function wt(n){return n.workspace.activeEditor?.file??n.workspace.getActiveFile()}function fr(n){let e=n.lastIndexOf("/");return e!==-1?n.slice(0,e):""}function vn(n){return n!==null&&typeof n=="object"}function uo(n){let e=n.toString(),t=e.indexOf("(");return e.substring(t+1,e.indexOf(")")).replace(/ /g,"").split(",")}function Vr(n,e,t){let r=n instanceof HTMLOListElement?"li":"p",i=n.createEl(r),o=n.createEl("b",{text:e});return i.appendChild(o),i.appendChild(document.createTextNode(`: ${t}`)),i}function dr(n,e){if(Object.keys(e).length!==0){for(let t in e)if(e.hasOwnProperty(t))if(n.hasOwnProperty(t)){let r=n[t],i=e[t];if(Array.isArray(r)||Array.isArray(i)){let o=Array.isArray(r)?r:[r],a=Array.isArray(i)?i:[i];n[t]=o.concat(a).unique()}else vn(r)&&vn(i)?dr(r,i):i!=null&&i!==""&&(n[t]=i)}else n[t]=e[t]}}function wn(n){let e={},t=(0,Te.getFrontMatterInfo)(n);return t.frontmatter&&(e=(0,Te.parseYaml)(t.frontmatter)),{frontmatter:e,content:n.slice(t.contentStart)}}var Io=X(require("obsidian"));var Oo=X(require("obsidian"));var ie="top",ue="bottom",ce="right",ae="left",mr="auto",bt=[ie,ue,ce,ae],ut="start",Bt="end",fo="clippingParents",gr="viewport",en="popper",mo="reference",zr=bt.reduce(function(n,e){return n.concat([e+"-"+ut,e+"-"+Bt])},[]),hr=[].concat(bt,[mr]).reduce(function(n,e){return n.concat([e,e+"-"+ut,e+"-"+Bt])},[]),cs="beforeRead",ls="read",ps="afterRead",us="beforeMain",fs="main",ds="afterMain",ms="beforeWrite",gs="write",hs="afterWrite",go=[cs,ls,ps,us,fs,ds,ms,gs,hs];function me(n){return n?(n.nodeName||"").toLowerCase():null}function Z(n){if(n==null)return window;if(n.toString()!=="[object Window]"){var e=n.ownerDocument;return e&&e.defaultView||window}return n}function Me(n){var e=Z(n).Element;return n instanceof e||n instanceof Element}function fe(n){var e=Z(n).HTMLElement;return n instanceof e||n instanceof HTMLElement}function tn(n){if(typeof ShadowRoot=="undefined")return!1;var e=Z(n).ShadowRoot;return n instanceof e||n instanceof ShadowRoot}function As(n){var e=n.state;Object.keys(e.elements).forEach(function(t){var r=e.styles[t]||{},i=e.attributes[t]||{},o=e.elements[t];!fe(o)||!me(o)||(Object.assign(o.style,r),Object.keys(i).forEach(function(a){var l=i[a];l===!1?o.removeAttribute(a):o.setAttribute(a,l===!0?"":l)}))})}function _s(n){var e=n.state,t={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,t.popper),e.styles=t,e.elements.arrow&&Object.assign(e.elements.arrow.style,t.arrow),function(){Object.keys(e.elements).forEach(function(r){var i=e.elements[r],o=e.attributes[r]||{},a=Object.keys(e.styles.hasOwnProperty(r)?e.styles[r]:t[r]),l=a.reduce(function(c,d){return c[d]="",c},{});!fe(i)||!me(i)||(Object.assign(i.style,l),Object.keys(o).forEach(function(c){i.removeAttribute(c)}))})}}var ho={name:"applyStyles",enabled:!0,phase:"write",fn:As,effect:_s,requires:["computeStyles"]};function ge(n){return n.split("-")[0]}var qe=Math.max,It=Math.min,ft=Math.round;function nn(){var n=navigator.userAgentData;return n!=null&&n.brands&&Array.isArray(n.brands)?n.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function bn(){return!/^((?!chrome|android).)*safari/i.test(nn())}function Oe(n,e,t){e===void 0&&(e=!1),t===void 0&&(t=!1);var r=n.getBoundingClientRect(),i=1,o=1;e&&fe(n)&&(i=n.offsetWidth>0&&ft(r.width)/n.offsetWidth||1,o=n.offsetHeight>0&&ft(r.height)/n.offsetHeight||1);var a=Me(n)?Z(n):window,l=a.visualViewport,c=!bn()&&t,d=(r.left+(c&&l?l.offsetLeft:0))/i,m=(r.top+(c&&l?l.offsetTop:0))/o,_=r.width/i,w=r.height/o;return{width:_,height:w,top:m,right:d+_,bottom:m+w,left:d,x:d,y:m}}function Ft(n){var e=Oe(n),t=n.offsetWidth,r=n.offsetHeight;return Math.abs(e.width-t)<=1&&(t=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:n.offsetLeft,y:n.offsetTop,width:t,height:r}}function En(n,e){var t=e.getRootNode&&e.getRootNode();if(n.contains(e))return!0;if(t&&tn(t)){var r=e;do{if(r&&n.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function we(n){return Z(n).getComputedStyle(n)}function Jr(n){return["table","td","th"].indexOf(me(n))>=0}function Ae(n){return((Me(n)?n.ownerDocument:n.document)||window.document).documentElement}function dt(n){return me(n)==="html"?n:n.assignedSlot||n.parentNode||(tn(n)?n.host:null)||Ae(n)}function Ao(n){return!fe(n)||we(n).position==="fixed"?null:n.offsetParent}function xs(n){var e=/firefox/i.test(nn()),t=/Trident/i.test(nn());if(t&&fe(n)){var r=we(n);if(r.position==="fixed")return null}var i=dt(n);for(tn(i)&&(i=i.host);fe(i)&&["html","body"].indexOf(me(i))<0;){var o=we(i);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||e&&o.willChange==="filter"||e&&o.filter&&o.filter!=="none")return i;i=i.parentNode}return null}function Le(n){for(var e=Z(n),t=Ao(n);t&&Jr(t)&&we(t).position==="static";)t=Ao(t);return t&&(me(t)==="html"||me(t)==="body"&&we(t).position==="static")?e:t||xs(n)||e}function qt(n){return["top","bottom"].indexOf(n)>=0?"x":"y"}function Lt(n,e,t){return qe(n,It(e,t))}function _o(n,e,t){var r=Lt(n,e,t);return r>t?t:r}function Tn(){return{top:0,right:0,bottom:0,left:0}}function kn(n){return Object.assign({},Tn(),n)}function Sn(n,e){return e.reduce(function(t,r){return t[r]=n,t},{})}var ys=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,kn(typeof e!="number"?e:Sn(e,bt))};function js(n){var e,t=n.state,r=n.name,i=n.options,o=t.elements.arrow,a=t.modifiersData.popperOffsets,l=ge(t.placement),c=qt(l),d=[ae,ce].indexOf(l)>=0,m=d?"height":"width";if(!(!o||!a)){var _=ys(i.padding,t),w=Ft(o),b=c==="y"?ie:ae,S=c==="y"?ue:ce,k=t.rects.reference[m]+t.rects.reference[c]-a[c]-t.rects.popper[m],E=a[c]-t.rects.reference[c],O=Le(o),$=O?c==="y"?O.clientHeight||0:O.clientWidth||0:0,K=k/2-E/2,P=_[b],H=$-w[m]-_[S],F=$/2-w[m]/2+K,J=Lt(P,F,H),te=c;t.modifiersData[r]=(e={},e[te]=J,e.centerOffset=J-F,e)}}function vs(n){var e=n.state,t=n.options,r=t.element,i=r===void 0?"[data-popper-arrow]":r;i!=null&&(typeof i=="string"&&(i=e.elements.popper.querySelector(i),!i)||!En(e.elements.popper,i)||(e.elements.arrow=i))}var xo={name:"arrow",enabled:!0,phase:"main",fn:js,effect:vs,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Be(n){return n.split("-")[1]}var ws={top:"auto",right:"auto",bottom:"auto",left:"auto"};function bs(n,e){var t=n.x,r=n.y,i=e.devicePixelRatio||1;return{x:ft(t*i)/i||0,y:ft(r*i)/i||0}}function yo(n){var e,t=n.popper,r=n.popperRect,i=n.placement,o=n.variation,a=n.offsets,l=n.position,c=n.gpuAcceleration,d=n.adaptive,m=n.roundOffsets,_=n.isFixed,w=a.x,b=w===void 0?0:w,S=a.y,k=S===void 0?0:S,E=typeof m=="function"?m({x:b,y:k}):{x:b,y:k};b=E.x,k=E.y;var O=a.hasOwnProperty("x"),$=a.hasOwnProperty("y"),K=ae,P=ie,H=window;if(d){var F=Le(t),J="clientHeight",te="clientWidth";if(F===Z(t)&&(F=Ae(t),we(F).position!=="static"&&l==="absolute"&&(J="scrollHeight",te="scrollWidth")),F=F,i===ie||(i===ae||i===ce)&&o===Bt){P=ue;var ne=_&&F===H&&H.visualViewport?H.visualViewport.height:F[J];k-=ne-r.height,k*=c?1:-1}if(i===ae||(i===ie||i===ue)&&o===Bt){K=ce;var Q=_&&F===H&&H.visualViewport?H.visualViewport.width:F[te];b-=Q-r.width,b*=c?1:-1}}var h=Object.assign({position:l},d&&ws),C=m===!0?bs({x:b,y:k},Z(t)):{x:b,y:k};if(b=C.x,k=C.y,c){var f;return Object.assign({},h,(f={},f[P]=$?"0":"",f[K]=O?"0":"",f.transform=(H.devicePixelRatio||1)<=1?"translate("+b+"px, "+k+"px)":"translate3d("+b+"px, "+k+"px, 0)",f))}return Object.assign({},h,(e={},e[P]=$?k+"px":"",e[K]=O?b+"px":"",e.transform="",e))}function Es(n){var e=n.state,t=n.options,r=t.gpuAcceleration,i=r===void 0?!0:r,o=t.adaptive,a=o===void 0?!0:o,l=t.roundOffsets,c=l===void 0?!0:l,d={placement:ge(e.placement),variation:Be(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:i,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,yo(Object.assign({},d,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:a,roundOffsets:c})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,yo(Object.assign({},d,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}var jo={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Es,data:{}};var Ar={passive:!0};function Ts(n){var e=n.state,t=n.instance,r=n.options,i=r.scroll,o=i===void 0?!0:i,a=r.resize,l=a===void 0?!0:a,c=Z(e.elements.popper),d=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&d.forEach(function(m){m.addEventListener("scroll",t.update,Ar)}),l&&c.addEventListener("resize",t.update,Ar),function(){o&&d.forEach(function(m){m.removeEventListener("scroll",t.update,Ar)}),l&&c.removeEventListener("resize",t.update,Ar)}}var vo={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Ts,data:{}};var ks={left:"right",right:"left",bottom:"top",top:"bottom"};function rn(n){return n.replace(/left|right|bottom|top/g,function(e){return ks[e]})}var Ss={start:"end",end:"start"};function _r(n){return n.replace(/start|end/g,function(e){return Ss[e]})}function Ht(n){var e=Z(n),t=e.pageXOffset,r=e.pageYOffset;return{scrollLeft:t,scrollTop:r}}function $t(n){return Oe(Ae(n)).left+Ht(n).scrollLeft}function Qr(n,e){var t=Z(n),r=Ae(n),i=t.visualViewport,o=r.clientWidth,a=r.clientHeight,l=0,c=0;if(i){o=i.width,a=i.height;var d=bn();(d||!d&&e==="fixed")&&(l=i.offsetLeft,c=i.offsetTop)}return{width:o,height:a,x:l+$t(n),y:c}}function Xr(n){var e,t=Ae(n),r=Ht(n),i=(e=n.ownerDocument)==null?void 0:e.body,o=qe(t.scrollWidth,t.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=qe(t.scrollHeight,t.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),l=-r.scrollLeft+$t(n),c=-r.scrollTop;return we(i||t).direction==="rtl"&&(l+=qe(t.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:l,y:c}}function Kt(n){var e=we(n),t=e.overflow,r=e.overflowX,i=e.overflowY;return/auto|scroll|overlay|hidden/.test(t+i+r)}function xr(n){return["html","body","#document"].indexOf(me(n))>=0?n.ownerDocument.body:fe(n)&&Kt(n)?n:xr(dt(n))}function Et(n,e){var t;e===void 0&&(e=[]);var r=xr(n),i=r===((t=n.ownerDocument)==null?void 0:t.body),o=Z(r),a=i?[o].concat(o.visualViewport||[],Kt(r)?r:[]):r,l=e.concat(a);return i?l:l.concat(Et(dt(a)))}function on(n){return Object.assign({},n,{left:n.x,top:n.y,right:n.x+n.width,bottom:n.y+n.height})}function Cs(n,e){var t=Oe(n,!1,e==="fixed");return t.top=t.top+n.clientTop,t.left=t.left+n.clientLeft,t.bottom=t.top+n.clientHeight,t.right=t.left+n.clientWidth,t.width=n.clientWidth,t.height=n.clientHeight,t.x=t.left,t.y=t.top,t}function wo(n,e,t){return e===gr?on(Qr(n,t)):Me(e)?Cs(e,t):on(Xr(Ae(n)))}function Ps(n){var e=Et(dt(n)),t=["absolute","fixed"].indexOf(we(n).position)>=0,r=t&&fe(n)?Le(n):n;return Me(r)?e.filter(function(i){return Me(i)&&En(i,r)&&me(i)!=="body"}):[]}function Zr(n,e,t,r){var i=e==="clippingParents"?Ps(n):[].concat(e),o=[].concat(i,[t]),a=o[0],l=o.reduce(function(c,d){var m=wo(n,d,r);return c.top=qe(m.top,c.top),c.right=It(m.right,c.right),c.bottom=It(m.bottom,c.bottom),c.left=qe(m.left,c.left),c},wo(n,a,r));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}function Cn(n){var e=n.reference,t=n.element,r=n.placement,i=r?ge(r):null,o=r?Be(r):null,a=e.x+e.width/2-t.width/2,l=e.y+e.height/2-t.height/2,c;switch(i){case ie:c={x:a,y:e.y-t.height};break;case ue:c={x:a,y:e.y+e.height};break;case ce:c={x:e.x+e.width,y:l};break;case ae:c={x:e.x-t.width,y:l};break;default:c={x:e.x,y:e.y}}var d=i?qt(i):null;if(d!=null){var m=d==="y"?"height":"width";switch(o){case ut:c[d]=c[d]-(e[m]/2-t[m]/2);break;case Bt:c[d]=c[d]+(e[m]/2-t[m]/2);break;default:}}return c}function He(n,e){e===void 0&&(e={});var t=e,r=t.placement,i=r===void 0?n.placement:r,o=t.strategy,a=o===void 0?n.strategy:o,l=t.boundary,c=l===void 0?fo:l,d=t.rootBoundary,m=d===void 0?gr:d,_=t.elementContext,w=_===void 0?en:_,b=t.altBoundary,S=b===void 0?!1:b,k=t.padding,E=k===void 0?0:k,O=kn(typeof E!="number"?E:Sn(E,bt)),$=w===en?mo:en,K=n.rects.popper,P=n.elements[S?$:w],H=Zr(Me(P)?P:P.contextElement||Ae(n.elements.popper),c,m,a),F=Oe(n.elements.reference),J=Cn({reference:F,element:K,strategy:"absolute",placement:i}),te=on(Object.assign({},K,J)),ne=w===en?te:F,Q={top:H.top-ne.top+O.top,bottom:ne.bottom-H.bottom+O.bottom,left:H.left-ne.left+O.left,right:ne.right-H.right+O.right},h=n.modifiersData.offset;if(w===en&&h){var C=h[i];Object.keys(Q).forEach(function(f){var Ie=[ce,ue].indexOf(f)>=0?1:-1,Ee=[ie,ue].indexOf(f)>=0?"y":"x";Q[f]+=C[Ee]*Ie})}return Q}function ei(n,e){e===void 0&&(e={});var t=e,r=t.placement,i=t.boundary,o=t.rootBoundary,a=t.padding,l=t.flipVariations,c=t.allowedAutoPlacements,d=c===void 0?hr:c,m=Be(r),_=m?l?zr:zr.filter(function(S){return Be(S)===m}):bt,w=_.filter(function(S){return d.indexOf(S)>=0});w.length===0&&(w=_);var b=w.reduce(function(S,k){return S[k]=He(n,{placement:k,boundary:i,rootBoundary:o,padding:a})[ge(k)],S},{});return Object.keys(b).sort(function(S,k){return b[S]-b[k]})}function Ds(n){if(ge(n)===mr)return[];var e=rn(n);return[_r(n),e,_r(e)]}function Ns(n){var e=n.state,t=n.options,r=n.name;if(!e.modifiersData[r]._skip){for(var i=t.mainAxis,o=i===void 0?!0:i,a=t.altAxis,l=a===void 0?!0:a,c=t.fallbackPlacements,d=t.padding,m=t.boundary,_=t.rootBoundary,w=t.altBoundary,b=t.flipVariations,S=b===void 0?!0:b,k=t.allowedAutoPlacements,E=e.options.placement,O=ge(E),$=O===E,K=c||($||!S?[rn(E)]:Ds(E)),P=[E].concat(K).reduce(function(B,N){return B.concat(ge(N)===mr?ei(e,{placement:N,boundary:m,rootBoundary:_,padding:d,flipVariations:S,allowedAutoPlacements:k}):N)},[]),H=e.rects.reference,F=e.rects.popper,J=new Map,te=!0,ne=P[0],Q=0;Q=0,Ee=Ie?"width":"height",_e=He(e,{placement:h,boundary:m,rootBoundary:_,altBoundary:w,padding:d}),xe=Ie?f?ce:ae:f?ue:ie;H[Ee]>F[Ee]&&(xe=rn(xe));var Ye=rn(xe),ke=[];if(o&&ke.push(_e[C]<=0),l&&ke.push(_e[xe]<=0,_e[Ye]<=0),ke.every(function(B){return B})){ne=h,te=!1;break}J.set(h,ke)}if(te)for(var Ut=S?3:1,Ue=function(N){var q=P.find(function(ee){var tt=J.get(ee);if(tt)return tt.slice(0,N).every(function(W){return W})});if(q)return ne=q,"break"},et=Ut;et>0;et--){var ye=Ue(et);if(ye==="break")break}e.placement!==ne&&(e.modifiersData[r]._skip=!0,e.placement=ne,e.reset=!0)}}var bo={name:"flip",enabled:!0,phase:"main",fn:Ns,requiresIfExists:["offset"],data:{_skip:!1}};function Eo(n,e,t){return t===void 0&&(t={x:0,y:0}),{top:n.top-e.height-t.y,right:n.right-e.width+t.x,bottom:n.bottom-e.height+t.y,left:n.left-e.width-t.x}}function To(n){return[ie,ce,ue,ae].some(function(e){return n[e]>=0})}function Ms(n){var e=n.state,t=n.name,r=e.rects.reference,i=e.rects.popper,o=e.modifiersData.preventOverflow,a=He(e,{elementContext:"reference"}),l=He(e,{altBoundary:!0}),c=Eo(a,r),d=Eo(l,i,o),m=To(c),_=To(d);e.modifiersData[t]={referenceClippingOffsets:c,popperEscapeOffsets:d,isReferenceHidden:m,hasPopperEscaped:_},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":m,"data-popper-escaped":_})}var ko={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Ms};function Os(n,e,t){var r=ge(n),i=[ae,ie].indexOf(r)>=0?-1:1,o=typeof t=="function"?t(Object.assign({},e,{placement:n})):t,a=o[0],l=o[1];return a=a||0,l=(l||0)*i,[ae,ce].indexOf(r)>=0?{x:l,y:a}:{x:a,y:l}}function Bs(n){var e=n.state,t=n.options,r=n.name,i=t.offset,o=i===void 0?[0,0]:i,a=hr.reduce(function(m,_){return m[_]=Os(_,e.rects,o),m},{}),l=a[e.placement],c=l.x,d=l.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=c,e.modifiersData.popperOffsets.y+=d),e.modifiersData[r]=a}var So={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Bs};function Is(n){var e=n.state,t=n.name;e.modifiersData[t]=Cn({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})}var Co={name:"popperOffsets",enabled:!0,phase:"read",fn:Is,data:{}};function ti(n){return n==="x"?"y":"x"}function Fs(n){var e=n.state,t=n.options,r=n.name,i=t.mainAxis,o=i===void 0?!0:i,a=t.altAxis,l=a===void 0?!1:a,c=t.boundary,d=t.rootBoundary,m=t.altBoundary,_=t.padding,w=t.tether,b=w===void 0?!0:w,S=t.tetherOffset,k=S===void 0?0:S,E=He(e,{boundary:c,rootBoundary:d,padding:_,altBoundary:m}),O=ge(e.placement),$=Be(e.placement),K=!$,P=qt(O),H=ti(P),F=e.modifiersData.popperOffsets,J=e.rects.reference,te=e.rects.popper,ne=typeof k=="function"?k(Object.assign({},e.rects,{placement:e.placement})):k,Q=typeof ne=="number"?{mainAxis:ne,altAxis:ne}:Object.assign({mainAxis:0,altAxis:0},ne),h=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,C={x:0,y:0};if(!!F){if(o){var f,Ie=P==="y"?ie:ae,Ee=P==="y"?ue:ce,_e=P==="y"?"height":"width",xe=F[P],Ye=xe+E[Ie],ke=xe-E[Ee],Ut=b?-te[_e]/2:0,Ue=$===ut?J[_e]:te[_e],et=$===ut?-te[_e]:-J[_e],ye=e.elements.arrow,B=b&&ye?Ft(ye):{width:0,height:0},N=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:Tn(),q=N[Ie],ee=N[Ee],tt=Lt(0,J[_e],B[_e]),W=K?J[_e]/2-Ut-tt-q-Q.mainAxis:Ue-tt-q-Q.mainAxis,je=K?-J[_e]/2+Ut+tt+ee+Q.mainAxis:et+tt+ee+Q.mainAxis,St=e.elements.arrow&&Le(e.elements.arrow),On=St?P==="y"?St.clientTop||0:St.clientLeft||0:0,nt=(f=h==null?void 0:h[P])!=null?f:0,rt=xe+W-nt-On,At=xe+je-nt,Ct=Lt(b?It(Ye,rt):Ye,xe,b?qe(ke,At):ke);F[P]=Ct,C[P]=Ct-xe}if(l){var Bn,In=P==="x"?ie:ae,Fn=P==="x"?ue:ce,it=F[H],Gt=H==="y"?"height":"width",qn=it+E[In],Ln=it-E[Fn],un=[ie,ae].indexOf(O)!==-1,Pt=(Bn=h==null?void 0:h[H])!=null?Bn:0,Hn=un?qn:it-J[Gt]-te[Gt]-Pt+Q.altAxis,Ge=un?it+J[Gt]+te[Gt]-Pt-Q.altAxis:Ln,se=b&&un?_o(Hn,it,Ge):Lt(b?Hn:qn,it,b?Ge:Ln);F[H]=se,C[H]=se-it}e.modifiersData[r]=C}}var Po={name:"preventOverflow",enabled:!0,phase:"main",fn:Fs,requiresIfExists:["offset"]};function ni(n){return{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop}}function ri(n){return n===Z(n)||!fe(n)?Ht(n):ni(n)}function qs(n){var e=n.getBoundingClientRect(),t=ft(e.width)/n.offsetWidth||1,r=ft(e.height)/n.offsetHeight||1;return t!==1||r!==1}function ii(n,e,t){t===void 0&&(t=!1);var r=fe(e),i=fe(e)&&qs(e),o=Ae(e),a=Oe(n,i,t),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(r||!r&&!t)&&((me(e)!=="body"||Kt(o))&&(l=ri(e)),fe(e)?(c=Oe(e,!0),c.x+=e.clientLeft,c.y+=e.clientTop):o&&(c.x=$t(o))),{x:a.left+l.scrollLeft-c.x,y:a.top+l.scrollTop-c.y,width:a.width,height:a.height}}function Ls(n){var e=new Map,t=new Set,r=[];n.forEach(function(o){e.set(o.name,o)});function i(o){t.add(o.name);var a=[].concat(o.requires||[],o.requiresIfExists||[]);a.forEach(function(l){if(!t.has(l)){var c=e.get(l);c&&i(c)}}),r.push(o)}return n.forEach(function(o){t.has(o.name)||i(o)}),r}function oi(n){var e=Ls(n);return go.reduce(function(t,r){return t.concat(e.filter(function(i){return i.phase===r}))},[])}function ai(n){var e;return function(){return e||(e=new Promise(function(t){Promise.resolve().then(function(){e=void 0,t(n())})})),e}}function si(n){var e=n.reduce(function(t,r){var i=t[r.name];return t[r.name]=i?Object.assign({},i,r,{options:Object.assign({},i.options,r.options),data:Object.assign({},i.data,r.data)}):r,t},{});return Object.keys(e).map(function(t){return e[t]})}var Do={placement:"bottom",modifiers:[],strategy:"absolute"};function No(){for(var n=arguments.length,e=new Array(n),t=0;t(n%e+e)%e,Bo=class{constructor(e,t,r){this.owner=e,this.containerEl=t,t.on("click",".suggestion-item",this.onSuggestionClick.bind(this)),t.on("mousemove",".suggestion-item",this.onSuggestionMouseover.bind(this)),r.register([],"ArrowUp",i=>{if(!i.isComposing)return this.setSelectedItem(this.selectedItem-1,!0),!1}),r.register([],"ArrowDown",i=>{if(!i.isComposing)return this.setSelectedItem(this.selectedItem+1,!0),!1}),r.register([],"Enter",i=>{if(!i.isComposing)return this.useSelectedItem(i),!1})}onSuggestionClick(e,t){e.preventDefault();let r=this.suggestions.indexOf(t);this.setSelectedItem(r,!1),this.useSelectedItem(e)}onSuggestionMouseover(e,t){let r=this.suggestions.indexOf(t);this.setSelectedItem(r,!1)}setSuggestions(e){this.containerEl.empty();let t=[];e.forEach(r=>{let i=this.containerEl.createDiv("suggestion-item");this.owner.renderSuggestion(r,i),t.push(i)}),this.values=e,this.suggestions=t,this.setSelectedItem(0,!1)}useSelectedItem(e){let t=this.values[this.selectedItem];t&&this.owner.selectSuggestion(t,e)}setSelectedItem(e,t){let r=$s(e,this.suggestions.length),i=this.suggestions[this.selectedItem],o=this.suggestions[r];i?.removeClass("is-selected"),o?.addClass("is-selected"),this.selectedItem=r,t&&o.scrollIntoView(!1)}},Pn=class{constructor(e,t){this.app=e,this.inputEl=t,this.scope=new Oo.Scope,this.suggestEl=createDiv("suggestion-container");let r=this.suggestEl.createDiv("suggestion");this.suggest=new Bo(this,r,this.scope),this.scope.register([],"Escape",this.close.bind(this)),this.inputEl.addEventListener("input",this.onInputChanged.bind(this)),this.inputEl.addEventListener("focus",this.onInputChanged.bind(this)),this.inputEl.addEventListener("blur",this.close.bind(this)),this.suggestEl.on("mousedown",".suggestion-container",i=>{i.preventDefault()})}onInputChanged(){let e=this.inputEl.value,t=this.getSuggestions(e);if(!t){this.close();return}t.length>0?(this.suggest.setSuggestions(t),this.open(this.app.dom.appContainerEl,this.inputEl)):this.close()}open(e,t){this.app.keymap.pushScope(this.scope),e.appendChild(this.suggestEl),this.popper=ci(t,this.suggestEl,{placement:"bottom-start",modifiers:[{name:"sameWidth",enabled:!0,fn:({state:r,instance:i})=>{let o=`${r.rects.reference.width}px`;r.styles.popper.width!==o&&(r.styles.popper.width=o,i.update())},phase:"beforeWrite",requires:["computeStyles"]}]})}close(){this.app.keymap.popScope(this.scope),this.suggest.setSuggestions([]),this.popper&&this.popper.destroy(),this.suggestEl.detach()}};var $e;(function(t){t[t.TemplateFiles=0]="TemplateFiles",t[t.ScriptFiles=1]="ScriptFiles"})($e||($e={}));var an=class extends Pn{constructor(e,t,r){super(t.app,e);this.inputEl=e;this.plugin=t;this.mode=r}get_folder(e){switch(e){case 0:return this.plugin.settings.templates_folder;case 1:return this.plugin.settings.user_scripts_folder}}get_error_msg(e){switch(e){case 0:return"Templates folder doesn't exist";case 1:return"User Scripts folder doesn't exist"}}getSuggestions(e){let t=Ce(()=>Je(this.plugin.app,this.get_folder(this.mode)),this.get_error_msg(this.mode));if(!t)return[];let r=[],i=e.toLowerCase();return t.forEach(o=>{o instanceof Io.TFile&&o.extension==="md"&&o.path.toLowerCase().contains(i)&&r.push(o)}),r.slice(0,1e3)}renderSuggestion(e,t){t.setText(e.path)}selectSuggestion(e){this.inputEl.value=e.path,this.inputEl.trigger("input"),this.close()}};var Fo=X(require("obsidian"));var Dn=class extends Pn{constructor(e,t){super(e,t)}getSuggestions(e){let t=this.app.vault.getAllLoadedFiles(),r=[],i=e.toLowerCase();return t.forEach(o=>{o instanceof Fo.TFolder&&o.path.toLowerCase().contains(i)&&r.push(o)}),r.slice(0,1e3)}renderSuggestion(e,t){t.setText(e.path)}selectSuggestion(e){this.inputEl.value=e.path,this.inputEl.trigger("input"),this.close()}};var mt;(function(o){o[o.Off=0]="Off",o[o.RenderDescriptionParameterReturn=1]="RenderDescriptionParameterReturn",o[o.RenderDescriptionParameterList=2]="RenderDescriptionParameterList",o[o.RenderDescriptionReturn=3]="RenderDescriptionReturn",o[o.RenderDescriptionOnly=4]="RenderDescriptionOnly"})(mt||(mt={}));function qo(n){return isBoolean(n)?n:[1,3].includes(n)}function Lo(n){return isBoolean(n)?n:[1,2].includes(n)}function Ho(n){return isBoolean(n)?n:n!=0}var $o={command_timeout:5,templates_folder:"",templates_pairs:[["",""]],trigger_on_file_creation:!1,auto_jump_to_cursor:!1,enable_system_commands:!1,shell_path:"",user_scripts_folder:"",enable_folder_templates:!0,folder_templates:[{folder:"",template:""}],enable_file_templates:!1,file_templates:[{regex:".*",template:""}],syntax_highlighting:!0,syntax_highlighting_mobile:!1,enabled_templates_hotkeys:[""],startup_templates:[""],intellisense_render:mt.RenderDescriptionParameterReturn},li=class extends L.PluginSettingTab{constructor(e){super(e.app,e);this.plugin=e;this.icon="templater-icon"}display(){this.containerEl.empty(),this.add_template_folder_setting(),this.add_internal_functions_setting(),this.add_syntax_highlighting_settings(),this.add_auto_jump_to_cursor(),this.add_trigger_on_new_file_creation_setting(),this.plugin.settings.trigger_on_file_creation&&(this.add_folder_templates_setting(),this.add_file_templates_setting()),this.add_templates_hotkeys_setting(),this.add_startup_templates_setting(),this.add_user_script_functions_setting(),this.add_user_system_command_functions_setting(),this.add_donating_setting()}add_template_folder_setting(){new L.Setting(this.containerEl).setName("Template folder location").setDesc("Files in this folder will be available as templates.").addSearch(e=>{new Dn(this.app,e.inputEl),e.setPlaceholder("Example: folder1/folder2").setValue(this.plugin.settings.templates_folder).onChange(t=>{t=t.trim(),t=t.replace(/\/$/,""),this.plugin.settings.templates_folder=t,this.plugin.save_settings()}),e.containerEl.addClass("templater_search")})}add_internal_functions_setting(){let e=document.createDocumentFragment();e.append("Templater provides multiples predefined variables / functions that you can use.",e.createEl("br"),"Check the ",e.createEl("a",{href:"https://silentvoid13.github.io/Templater/",text:"documentation"})," to get a list of all the available internal variables / functions."),new L.Setting(this.containerEl).setName("Internal variables and functions").setDesc(e)}add_syntax_highlighting_settings(){let e=document.createDocumentFragment();e.append("Adds syntax highlighting for Templater commands in edit mode.");let t=document.createDocumentFragment();t.append("Adds syntax highlighting for Templater commands in edit mode on mobile. Use with caution: this may break live preview on mobile platforms."),new L.Setting(this.containerEl).setName("Syntax highlighting on desktop").setDesc(e).addToggle(r=>{r.setValue(this.plugin.settings.syntax_highlighting).onChange(i=>{this.plugin.settings.syntax_highlighting=i,this.plugin.save_settings(),this.plugin.event_handler.update_syntax_highlighting()})}),new L.Setting(this.containerEl).setName("Syntax highlighting on mobile").setDesc(t).addToggle(r=>{r.setValue(this.plugin.settings.syntax_highlighting_mobile).onChange(i=>{this.plugin.settings.syntax_highlighting_mobile=i,this.plugin.save_settings(),this.plugin.event_handler.update_syntax_highlighting()})})}add_auto_jump_to_cursor(){let e=document.createDocumentFragment();e.append("Automatically triggers ",e.createEl("code",{text:"tp.file.cursor"})," after inserting a template.",e.createEl("br"),"You can also set a hotkey to manually trigger ",e.createEl("code",{text:"tp.file.cursor"}),"."),new L.Setting(this.containerEl).setName("Automatic jump to cursor").setDesc(e).addToggle(t=>{t.setValue(this.plugin.settings.auto_jump_to_cursor).onChange(r=>{this.plugin.settings.auto_jump_to_cursor=r,this.plugin.save_settings()})})}add_trigger_on_new_file_creation_setting(){let e=document.createDocumentFragment();e.append("Templater will listen for the new file creation event, and, if it matches a rule you've set, replace every command it finds in the new file's content. ","This makes Templater compatible with other plugins like the Daily note core plugin, Calendar plugin, Review plugin, Note refactor plugin, etc. ",e.createEl("br"),e.createEl("br"),"Make sure to set up rules under either folder templates or file regex template below.",e.createEl("br"),e.createEl("br"),e.createEl("b",{text:"Warning: "}),"This can be dangerous if you create new files with unknown / unsafe content on creation. Make sure that every new file's content is safe on creation."),new L.Setting(this.containerEl).setName("Trigger Templater on new file creation").setDesc(e).addToggle(t=>{t.setValue(this.plugin.settings.trigger_on_file_creation).onChange(r=>{this.plugin.settings.trigger_on_file_creation=r,this.plugin.save_settings(),this.plugin.event_handler.update_trigger_file_on_creation(),this.display()})})}add_templates_hotkeys_setting(){new L.Setting(this.containerEl).setName("Template hotkeys").setHeading();let e=document.createDocumentFragment();e.append("Template hotkeys allows you to bind a template to a hotkey."),new L.Setting(this.containerEl).setDesc(e),this.plugin.settings.enabled_templates_hotkeys.forEach((t,r)=>{new L.Setting(this.containerEl).addSearch(o=>{new an(o.inputEl,this.plugin,$e.TemplateFiles),o.setPlaceholder("Example: folder1/template_file").setValue(t).onChange(a=>{if(a&&this.plugin.settings.enabled_templates_hotkeys.contains(a)){oe(new D("This template is already bound to a hotkey"));return}this.plugin.command_handler.add_template_hotkey(this.plugin.settings.enabled_templates_hotkeys[r],a),this.plugin.settings.enabled_templates_hotkeys[r]=a,this.plugin.save_settings()}),o.containerEl.addClass("templater_search")}).addExtraButton(o=>{o.setIcon("any-key").setTooltip("Configure Hotkey").onClick(()=>{this.app.setting.openTabById("hotkeys");let a=this.app.setting.activeTab;a.searchComponent.inputEl.value=t,a.updateHotkeyVisibility()})}).addExtraButton(o=>{o.setIcon("up-chevron-glyph").setTooltip("Move up").onClick(()=>{Ot(this.plugin.settings.enabled_templates_hotkeys,r,r-1),this.plugin.save_settings(),this.display()})}).addExtraButton(o=>{o.setIcon("down-chevron-glyph").setTooltip("Move down").onClick(()=>{Ot(this.plugin.settings.enabled_templates_hotkeys,r,r+1),this.plugin.save_settings(),this.display()})}).addExtraButton(o=>{o.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.command_handler.remove_template_hotkey(this.plugin.settings.enabled_templates_hotkeys[r]),this.plugin.settings.enabled_templates_hotkeys.splice(r,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new L.Setting(this.containerEl).addButton(t=>{t.setButtonText("Add new hotkey for template").setCta().onClick(()=>{this.plugin.settings.enabled_templates_hotkeys.push(""),this.plugin.save_settings(),this.display()})})}add_folder_templates_setting(){new L.Setting(this.containerEl).setName("Folder templates").setHeading();let e=document.createDocumentFragment();e.append("Folder templates are triggered when a new ",e.createEl("strong",{text:"empty "}),"file is created in a given folder.",e.createEl("br"),"Templater will fill the empty file with the specified template.",e.createEl("br"),"The deepest match is used. A global default template would be defined on the root ",e.createEl("code",{text:"/"}),"."),new L.Setting(this.containerEl).setDesc(e);let t=document.createDocumentFragment();t.append("When enabled, Templater will make use of the folder templates defined below. This option is mutually exclusive with file regex templates below, so enabling one will disable the other."),new L.Setting(this.containerEl).setName("Enable folder templates").setDesc(t).addToggle(r=>{r.setValue(this.plugin.settings.enable_folder_templates).onChange(i=>{this.plugin.settings.enable_folder_templates=i,i&&(this.plugin.settings.enable_file_templates=!1),this.plugin.save_settings(),this.display()})}),!!this.plugin.settings.enable_folder_templates&&(this.plugin.settings.folder_templates.forEach((r,i)=>{new L.Setting(this.containerEl).addSearch(a=>{new Dn(this.app,a.inputEl),a.setPlaceholder("Folder").setValue(r.folder).onChange(l=>{if(l&&this.plugin.settings.folder_templates.some(c=>c.folder==l)){oe(new D("This folder already has a template associated with it"));return}this.plugin.settings.folder_templates[i].folder=l,this.plugin.save_settings()}),a.containerEl.addClass("templater_search")}).addSearch(a=>{new an(a.inputEl,this.plugin,$e.TemplateFiles),a.setPlaceholder("Template").setValue(r.template).onChange(l=>{this.plugin.settings.folder_templates[i].template=l,this.plugin.save_settings()}),a.containerEl.addClass("templater_search")}).addExtraButton(a=>{a.setIcon("up-chevron-glyph").setTooltip("Move up").onClick(()=>{Ot(this.plugin.settings.folder_templates,i,i-1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("down-chevron-glyph").setTooltip("Move down").onClick(()=>{Ot(this.plugin.settings.folder_templates,i,i+1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.settings.folder_templates.splice(i,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new L.Setting(this.containerEl).addButton(r=>{r.setButtonText("Add new folder template").setTooltip("Add additional folder template").setCta().onClick(()=>{this.plugin.settings.folder_templates.push({folder:"",template:""}),this.plugin.save_settings(),this.display()})}))}add_file_templates_setting(){new L.Setting(this.containerEl).setName("File regex templates").setHeading();let e=document.createDocumentFragment();e.append("File regex templates are triggered when a new ",e.createEl("strong",{text:"empty"})," file is created that matches one of them. Templater will fill the empty file with the specified template.",e.createEl("br"),"The first match from the top is used, so the order of the rules is important.",e.createEl("br"),"Use ",e.createEl("code",{text:".*"})," as a final catch-all, if you need it."),new L.Setting(this.containerEl).setDesc(e);let t=document.createDocumentFragment();t.append("When enabled, Templater will make use of the file regex templates defined below. This option is mutually exclusive with folder templates above, so enabling one will disable the other."),new L.Setting(this.containerEl).setName("Enable file regex templates").setDesc(t).addToggle(r=>{r.setValue(this.plugin.settings.enable_file_templates).onChange(i=>{this.plugin.settings.enable_file_templates=i,i&&(this.plugin.settings.enable_folder_templates=!1),this.plugin.save_settings(),this.display()})}),!!this.plugin.settings.enable_file_templates&&(this.plugin.settings.file_templates.forEach((r,i)=>{new L.Setting(this.containerEl).addText(a=>{a.setPlaceholder("File regex").setValue(r.regex).onChange(l=>{this.plugin.settings.file_templates[i].regex=l,this.plugin.save_settings()}),a.inputEl.addClass("templater_search")}).addSearch(a=>{new an(a.inputEl,this.plugin,$e.TemplateFiles),a.setPlaceholder("Template").setValue(r.template).onChange(l=>{this.plugin.settings.file_templates[i].template=l,this.plugin.save_settings()}),a.containerEl.addClass("templater_search")}).addExtraButton(a=>{a.setIcon("up-chevron-glyph").setTooltip("Move up").onClick(()=>{Ot(this.plugin.settings.file_templates,i,i-1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("down-chevron-glyph").setTooltip("Move down").onClick(()=>{Ot(this.plugin.settings.file_templates,i,i+1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.settings.file_templates.splice(i,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new L.Setting(this.containerEl).addButton(r=>{r.setButtonText("Add new file regex").setTooltip("Add additional file regex").setCta().onClick(()=>{this.plugin.settings.file_templates.push({regex:"",template:""}),this.plugin.save_settings(),this.display()})}))}add_startup_templates_setting(){new L.Setting(this.containerEl).setName("Startup templates").setHeading();let e=document.createDocumentFragment();e.append("Startup templates are templates that will get executed once when Templater starts.",e.createEl("br"),"These templates won't output anything.",e.createEl("br"),"This can be useful to set up templates adding hooks to Obsidian events for example."),new L.Setting(this.containerEl).setDesc(e),this.plugin.settings.startup_templates.forEach((t,r)=>{new L.Setting(this.containerEl).addSearch(o=>{new an(o.inputEl,this.plugin,$e.TemplateFiles),o.setPlaceholder("Example: folder1/template_file").setValue(t).onChange(a=>{if(a&&this.plugin.settings.startup_templates.contains(a)){oe(new D("This startup template already exist"));return}this.plugin.settings.startup_templates[r]=a,this.plugin.save_settings()}),o.containerEl.addClass("templater_search")}).addExtraButton(o=>{o.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.settings.startup_templates.splice(r,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new L.Setting(this.containerEl).addButton(t=>{t.setButtonText("Add new startup template").setCta().onClick(()=>{this.plugin.settings.startup_templates.push(""),this.plugin.save_settings(),this.display()})})}add_user_script_functions_setting(){new L.Setting(this.containerEl).setName("User script functions").setHeading();let e=document.createDocumentFragment();e.append("All JavaScript files in this folder will be loaded as CommonJS modules, to import custom user functions.",e.createEl("br"),"The folder needs to be accessible from the vault.",e.createEl("br"),"Check the ",e.createEl("a",{href:"https://silentvoid13.github.io/Templater/",text:"documentation"})," for more information."),new L.Setting(this.containerEl).setName("Script files folder location").setDesc(e).addSearch(r=>{new Dn(this.app,r.inputEl),r.setPlaceholder("Example: folder1/folder2").setValue(this.plugin.settings.user_scripts_folder).onChange(i=>{this.plugin.settings.user_scripts_folder=i,this.plugin.save_settings()}),r.containerEl.addClass("templater_search")}),new L.Setting(this.containerEl).setName("User script intellisense").setDesc("Determine how you'd like to have user script intellisense render. Note values will not render if not in the script.").addDropdown(r=>{r.addOption("0","Turn off intellisense").addOption("1","Render method description, parameters list, and return").addOption("2","Render method description and parameters list").addOption("3","Render method description and return").addOption("4","Render method description").setValue(this.plugin.settings.intellisense_render.toString()).onChange(i=>{this.plugin.settings.intellisense_render=parseInt(i),this.plugin.save_settings()})}),e=document.createDocumentFragment();let t;if(!this.plugin.settings.user_scripts_folder)t="No user scripts folder set";else{let r=Ce(()=>Je(this.app,this.plugin.settings.user_scripts_folder),"User scripts folder doesn't exist");if(!r||r.length===0)t="No user scripts detected";else{let i=0;for(let o of r)o.extension==="js"&&(i++,e.append(e.createEl("li",{text:`tp.user.${o.basename}`})));t=`Detected ${i} User Script(s)`}}new L.Setting(this.containerEl).setName(t).setDesc(e).addExtraButton(r=>{r.setIcon("sync").setTooltip("Refresh").onClick(()=>{this.display()})})}add_user_system_command_functions_setting(){let e=document.createDocumentFragment();if(e.append("Allows you to create user functions linked to system commands.",e.createEl("br"),e.createEl("b",{text:"Warning: "}),"It can be dangerous to execute arbitrary system commands from untrusted sources. Only run system commands that you understand, from trusted sources."),new L.Setting(this.containerEl).setName("User system command functions").setHeading(),new L.Setting(this.containerEl).setName("Enable user system command functions").setDesc(e).addToggle(t=>{t.setValue(this.plugin.settings.enable_system_commands).onChange(r=>{this.plugin.settings.enable_system_commands=r,this.plugin.save_settings(),this.display()})}),this.plugin.settings.enable_system_commands){new L.Setting(this.containerEl).setName("Timeout").setDesc("Maximum timeout in seconds for a system command.").addText(o=>{o.setPlaceholder("Timeout").setValue(this.plugin.settings.command_timeout.toString()).onChange(a=>{let l=Number(a);if(isNaN(l)){oe(new D("Timeout must be a number"));return}this.plugin.settings.command_timeout=l,this.plugin.save_settings()})}),e=document.createDocumentFragment(),e.append("Full path to the shell binary to execute the command with.",e.createEl("br"),"This setting is optional and will default to the system's default shell if not specified.",e.createEl("br"),"You can use forward slashes ('/') as path separators on all platforms if in doubt."),new L.Setting(this.containerEl).setName("Shell binary location").setDesc(e).addText(o=>{o.setPlaceholder("Example: /bin/bash, ...").setValue(this.plugin.settings.shell_path).onChange(a=>{this.plugin.settings.shell_path=a,this.plugin.save_settings()})});let t=1;this.plugin.settings.templates_pairs.forEach(o=>{let a=this.containerEl.createEl("div");a.addClass("templater_div");let l=this.containerEl.createEl("h4",{text:"User function n\xB0"+t});l.addClass("templater_title"),new L.Setting(this.containerEl).addExtraButton(d=>{d.setIcon("cross").setTooltip("Delete").onClick(()=>{let m=this.plugin.settings.templates_pairs.indexOf(o);m>-1&&(this.plugin.settings.templates_pairs.splice(m,1),this.plugin.save_settings(),this.display())})}).addText(d=>{let m=d.setPlaceholder("Function name").setValue(o[0]).onChange(_=>{let w=this.plugin.settings.templates_pairs.indexOf(o);w>-1&&(this.plugin.settings.templates_pairs[w][0]=_,this.plugin.save_settings())});return m.inputEl.addClass("templater_template"),m}).addTextArea(d=>{let m=d.setPlaceholder("System command").setValue(o[1]).onChange(_=>{let w=this.plugin.settings.templates_pairs.indexOf(o);w>-1&&(this.plugin.settings.templates_pairs[w][1]=_,this.plugin.save_settings())});return m.inputEl.setAttr("rows",2),m.inputEl.addClass("templater_cmd"),m}).infoEl.remove(),a.appendChild(l),a.appendChild(this.containerEl.lastChild),t+=1});let r=this.containerEl.createEl("div");r.addClass("templater_div2"),new L.Setting(this.containerEl).addButton(o=>{o.setButtonText("Add new user function").setCta().onClick(()=>{this.plugin.settings.templates_pairs.push(["",""]),this.plugin.save_settings(),this.display()})}).infoEl.remove(),r.appendChild(this.containerEl.lastChild)}}add_donating_setting(){let e=new L.Setting(this.containerEl).setName("Donate").setDesc("If you like this Plugin, consider donating to support continued development."),t=document.createElement("a");t.setAttribute("href","https://github.com/sponsors/silentvoid13"),t.addClass("templater_donating");let r=document.createElement("img");r.src="https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86",t.appendChild(r);let i=document.createElement("a");i.setAttribute("href","https://www.paypal.com/donate?hosted_button_id=U2SRGAFYXT32Q"),i.addClass("templater_donating");let o=document.createElement("img");o.src="https://img.shields.io/badge/paypal-silentvoid13-yellow?style=social&logo=paypal",i.appendChild(o),e.settingEl.appendChild(t),e.settingEl.appendChild(i)}};var yr=X(require("obsidian"));var sn;(function(t){t[t.InsertTemplate=0]="InsertTemplate",t[t.CreateNoteTemplate=1]="CreateNoteTemplate"})(sn||(sn={}));var pi=class extends yr.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder("Type name of a template...")}getItems(){if(!this.plugin.settings.templates_folder)return this.app.vault.getMarkdownFiles();let e=Ce(()=>Je(this.plugin.app,this.plugin.settings.templates_folder),`Couldn't retrieve template files from templates folder ${this.plugin.settings.templates_folder}`);return e||[]}getItemText(e){let t=e.path;if(e.path.startsWith(this.plugin.settings.templates_folder)&&(0,yr.normalizePath)(this.plugin.settings.templates_folder)!="/"){let r=this.plugin.settings.templates_folder.length,i;r===0?i=0:this.plugin.settings.templates_folder.endsWith("/")?i=r:i=r+1,t=e.path.slice(i)}return t.split(".").slice(0,-1).join(".")}onChooseItem(e){switch(this.open_mode){case 0:this.plugin.templater.append_template_to_active_file(e);break;case 1:this.plugin.templater.create_new_note_from_template(e,this.creation_folder);break}}start(){try{this.open()}catch(e){oe(e)}}insert_template(){this.open_mode=0,this.start()}create_new_note_from_template(e){this.creation_folder=e,this.open_mode=1,this.start()}};var Ko="Error_MobileUnsupportedTemplate",Ro='';var de=X(require("obsidian"));var gt=X(require("obsidian"));var be=class{constructor(e){this.plugin=e;this.static_functions=new Map;this.dynamic_functions=new Map}getName(){return this.name}async init(){await this.create_static_templates(),this.static_object=Object.fromEntries(this.static_functions)}async generate_object(e){return this.config=e,await this.create_dynamic_templates(),{...this.static_object,...Object.fromEntries(this.dynamic_functions)}}};var ui=class extends be{constructor(){super(...arguments);this.name="date"}async create_static_templates(){this.static_functions.set("now",this.generate_now()),this.static_functions.set("tomorrow",this.generate_tomorrow()),this.static_functions.set("weekday",this.generate_weekday()),this.static_functions.set("yesterday",this.generate_yesterday())}async create_dynamic_templates(){}async teardown(){}generate_now(){return(e="YYYY-MM-DD",t,r,i)=>{if(r&&!(0,gt.moment)(r,i).isValid())throw new D("Invalid reference date format, try specifying one with the argument 'reference_format'");let o;return typeof t=="string"?o=gt.moment.duration(t):typeof t=="number"&&(o=gt.moment.duration(t,"days")),(0,gt.moment)(r,i).add(o).format(e)}}generate_tomorrow(){return(e="YYYY-MM-DD")=>(0,gt.moment)().add(1,"days").format(e)}generate_weekday(){return(e="YYYY-MM-DD",t,r,i)=>{if(r&&!(0,gt.moment)(r,i).isValid())throw new D("Invalid reference date format, try specifying one with the argument 'reference_format'");return(0,gt.moment)(r,i).weekday(t).format(e)}}generate_yesterday(){return(e="YYYY-MM-DD")=>(0,gt.moment)().add(-1,"days").format(e)}};var le=X(require("obsidian"));var Yo=10,fi=class extends be{constructor(){super(...arguments);this.name="file";this.include_depth=0;this.create_new_depth=0;this.linkpath_regex=new RegExp("^\\[\\[(.*)\\]\\]$")}async create_static_templates(){this.static_functions.set("creation_date",this.generate_creation_date()),this.static_functions.set("create_new",this.generate_create_new()),this.static_functions.set("cursor",this.generate_cursor()),this.static_functions.set("cursor_append",this.generate_cursor_append()),this.static_functions.set("exists",this.generate_exists()),this.static_functions.set("find_tfile",this.generate_find_tfile()),this.static_functions.set("folder",this.generate_folder()),this.static_functions.set("include",this.generate_include()),this.static_functions.set("last_modified_date",this.generate_last_modified_date()),this.static_functions.set("move",this.generate_move()),this.static_functions.set("path",this.generate_path()),this.static_functions.set("rename",this.generate_rename()),this.static_functions.set("selection",this.generate_selection())}async create_dynamic_templates(){this.dynamic_functions.set("content",await this.generate_content()),this.dynamic_functions.set("tags",this.generate_tags()),this.dynamic_functions.set("title",this.generate_title())}async teardown(){}async generate_content(){return await this.plugin.app.vault.read(this.config.target_file)}generate_create_new(){return async(e,t,r=!1,i)=>{if(this.create_new_depth+=1,this.create_new_depth>Yo)throw this.create_new_depth=0,new D("Reached create_new depth limit (max = 10)");let o=await this.plugin.templater.create_new_note_from_template(e,i,t,r);return this.create_new_depth-=1,o}}generate_creation_date(){return(e="YYYY-MM-DD HH:mm")=>(0,le.moment)(this.config.target_file.stat.ctime).format(e)}generate_cursor(){return e=>`<% tp.file.cursor(${e??""}) %>`}generate_cursor_append(){return e=>{let t=this.plugin.app.workspace.activeEditor;if(!t||!t.editor){oe(new D("No active editor, can't append to cursor."));return}return t.editor.getDoc().replaceSelection(e),""}}generate_exists(){return async e=>{let t=(0,le.normalizePath)(e);return await this.plugin.app.vault.exists(t)}}generate_find_tfile(){return e=>{let t=(0,le.normalizePath)(e);return this.plugin.app.metadataCache.getFirstLinkpathDest(t,"")}}generate_folder(){return(e=!1)=>{let t=this.config.target_file.parent,r;return e?r=t.path:r=t.name,r}}generate_include(){return async e=>{if(this.include_depth+=1,this.include_depth>Yo)throw this.include_depth-=1,new D("Reached inclusion depth limit (max = 10)");let t;if(e instanceof le.TFile)t=await this.plugin.app.vault.read(e);else{let r;if((r=this.linkpath_regex.exec(e))===null)throw this.include_depth-=1,new D("Invalid file format, provide an obsidian link between quotes.");let{path:i,subpath:o}=(0,le.parseLinktext)(r[1]),a=this.plugin.app.metadataCache.getFirstLinkpathDest(i,"");if(!a)throw this.include_depth-=1,new D(`File ${e} doesn't exist`);if(t=await this.plugin.app.vault.read(a),o){let l=this.plugin.app.metadataCache.getFileCache(a);if(l){let c=(0,le.resolveSubpath)(l,o);c&&(t=t.slice(c.start.offset,c.end?.offset))}}}try{let r=await this.plugin.templater.parser.parse_commands(t,this.plugin.templater.current_functions_object);return this.include_depth-=1,r}catch(r){throw this.include_depth-=1,r}}}generate_last_modified_date(){return(e="YYYY-MM-DD HH:mm")=>(0,le.moment)(this.config.target_file.stat.mtime).format(e)}generate_move(){return async(e,t)=>{let r=t||this.config.target_file,i=(0,le.normalizePath)(`${e}.${r.extension}`),o=i.replace(/\\/g,"/").split("/");if(o.pop(),o.length){let a=o.join("/");this.plugin.app.vault.getAbstractFileByPath(a)||await this.plugin.app.vault.createFolder(a)}return await this.plugin.app.fileManager.renameFile(r,i),""}}generate_path(){return(e=!1)=>{let t="";if(le.Platform.isMobile){let r=this.plugin.app.vault.adapter.fs.uri,i=this.plugin.app.vault.adapter.basePath;t=`${r}/${i}`}else if(this.plugin.app.vault.adapter instanceof le.FileSystemAdapter)t=this.plugin.app.vault.adapter.getBasePath();else throw new D("app.vault is not a FileSystemAdapter instance");return e?this.config.target_file.path:`${t}/${this.config.target_file.path}`}}generate_rename(){return async e=>{if(e.match(/[\\/:]+/g))throw new D("File name cannot contain any of these characters: \\ / :");let t=(0,le.normalizePath)(`${this.config.target_file.parent.path}/${e}.${this.config.target_file.extension}`);return await this.plugin.app.fileManager.renameFile(this.config.target_file,t),""}}generate_selection(){return()=>{let e=this.plugin.app.workspace.activeEditor;if(!e||!e.editor)throw new D("Active editor is null, can't read selection.");return e.editor.getSelection()}}generate_tags(){let e=this.plugin.app.metadataCache.getFileCache(this.config.target_file);return e?(0,le.getAllTags)(e):null}generate_title(){return this.config.target_file.basename}};var Uo=X(require("obsidian"));var di=class extends be{constructor(){super(...arguments);this.name="web"}async create_static_templates(){this.static_functions.set("daily_quote",this.generate_daily_quote()),this.static_functions.set("request",this.generate_request()),this.static_functions.set("random_picture",this.generate_random_picture())}async create_dynamic_templates(){}async teardown(){}async getRequest(e){try{let t=await(0,Uo.requestUrl)(e);if(t.status<200&&t.status>=300)throw new D("Error performing GET request");return t}catch{throw new D("Error performing GET request")}}generate_daily_quote(){return async()=>{try{let t=(await this.getRequest("https://raw.githubusercontent.com/Zachatoo/quotes-database/refs/heads/main/quotes.json")).json,r=t[Math.floor(Math.random()*t.length)],{quote:i,author:o}=r;return`> [!quote] ${i} -> \u2014 ${o}`}catch{return new D("Error generating daily quote"),"Error generating daily quote"}}}generate_random_picture(){return async(e,t,r=!1)=>{try{let i=await this.getRequest(`https://templater-unsplash-2.fly.dev/${t?"?q="+t:""}`).then(a=>a.json),o=i.full;if(e&&!r)if(e.includes("x")){let[a,l]=e.split("x");o=o.concat(`&w=${a}&h=${l}`)}else o=o.concat(`&w=${e}`);return r?`![photo by ${i.photog}(${i.photogUrl}) on Unsplash|${e}](${o})`:`![photo by ${i.photog}(${i.photogUrl}) on Unsplash](${o})`}catch{return new D("Error generating random picture"),"Error generating random picture"}}}generate_request(){return async(e,t)=>{try{let i=await(await this.getRequest(e)).json;return t&&i?t.split(".").reduce((o,a)=>{if(o&&o.hasOwnProperty(a))return o[a];throw new Error(`Path ${t} not found in the JSON response`)},i):i}catch(r){throw console.error(r),new D("Error fetching and extracting value")}}}};var mi=class extends be{constructor(){super(...arguments);this.name="hooks";this.event_refs=[]}async create_static_templates(){this.static_functions.set("on_all_templates_executed",this.generate_on_all_templates_executed())}async create_dynamic_templates(){}async teardown(){this.event_refs.forEach(e=>{e.e.offref(e)}),this.event_refs=[]}generate_on_all_templates_executed(){return e=>{let t=this.plugin.app.workspace.on("templater:all-templates-executed",async()=>{await vt(1),e()});t&&this.event_refs.push(t)}}};var gi=class extends be{constructor(){super(...arguments);this.name="frontmatter"}async create_static_templates(){}async create_dynamic_templates(){let e=this.plugin.app.metadataCache.getFileCache(this.config.target_file);this.dynamic_functions=new Map(Object.entries(e?.frontmatter||{}))}async teardown(){}};var Qe=X(require("obsidian"));var hi=class extends Qe.Modal{constructor(e,t,r,i){super(e);this.prompt_text=t;this.default_value=r;this.multi_line=i;this.submitted=!1}onOpen(){this.titleEl.setText(this.prompt_text),this.createForm()}onClose(){this.contentEl.empty(),this.submitted||this.reject(new D("Cancelled prompt"))}createForm(){let e=this.contentEl.createDiv();e.addClass("templater-prompt-div");let t;this.multi_line?t=new Qe.TextAreaComponent(e):t=new Qe.TextComponent(e);let r=this.contentEl.createDiv();r.addClass("templater-button-div");let i=new Qe.ButtonComponent(r);i.buttonEl.addClass("mod-cta"),i.setButtonText("Submit").onClick(o=>{this.resolveAndClose(o)}),this.value=this.default_value??"",t.inputEl.addClass("templater-prompt-input"),t.setPlaceholder("Type text here"),t.setValue(this.value),t.onChange(o=>this.value=o),t.inputEl.focus(),t.inputEl.addEventListener("keydown",o=>this.enterCallback(o))}enterCallback(e){e.isComposing||e.keyCode===229||(this.multi_line?Qe.Platform.isDesktop&&e.key==="Enter"&&!e.shiftKey&&this.resolveAndClose(e):e.key==="Enter"&&this.resolveAndClose(e))}resolveAndClose(e){this.submitted=!0,e.preventDefault(),this.resolve(this.value),this.close()}async openAndGetValue(e,t){this.resolve=e,this.reject=t,this.open()}};var Go=X(require("obsidian")),Ai=class extends Go.FuzzySuggestModal{constructor(e,t,r,i,o){super(e);this.text_items=t;this.items=r;this.submitted=!1;this.setPlaceholder(i),o&&(this.limit=o)}getItems(){return this.items}onClose(){this.submitted||this.reject(new D("Cancelled prompt"))}selectSuggestion(e,t){this.submitted=!0,this.close(),this.onChooseSuggestion(e,t)}getItemText(e){return this.text_items instanceof Function?this.text_items(e):this.text_items[this.items.indexOf(e)]||"Undefined Text Item"}onChooseItem(e){this.resolve(e)}async openAndGetValue(e,t){this.resolve=e,this.reject=t,this.open()}};var Pe=X(require("obsidian")),_i=class extends Pe.Modal{constructor(e,t,r,i,o){super(e);this.text_items=t;this.items=r;this.submitted=!1;this.selectedItems=[];this.setTitle(i),this.listEl=this.contentEl.createDiv("templater-multisuggester-list");let a=this.contentEl.createDiv("templater-multisuggester-div"),l=new Pe.TextComponent(a);l.inputEl.addClass("templater-multisuggester-input"),this.suggester=new Wo(e,l.inputEl,this.getItemText.bind(this),r,o).onSelect(this.onChooseItem.bind(this));let c=this.contentEl.createDiv("modal-button-container");new Pe.ButtonComponent(c).setButtonText("Save").setCta().onClick(()=>this.save()),new Pe.ButtonComponent(c).setButtonText("Cancel").onClick(()=>this.close())}onOpen(){this.display()}display(){this.listEl.empty(),this.selectedItems.forEach(e=>{let t=this.listEl.createDiv("mobile-option-setting-item");t.createSpan("mobile-option-setting-item-name").setText(this.getItemText(e)),t.createDiv("clickable-icon mobile-option-setting-item-option-icon",r=>{(0,Pe.setIcon)(r,"lucide-x"),r.addEventListener("click",()=>{this.onRemoveItem(e)})})})}getItemText(e){return this.text_items instanceof Function?this.text_items(e):this.text_items[this.items.indexOf(e)]||"Undefined Text Item"}onChooseItem(e){this.selectedItems.push(e);let t=this.items.filter(r=>!this.selectedItems.some(i=>i===r));this.suggester.setItems(t),this.display()}onRemoveItem(e){this.selectedItems=this.selectedItems.filter(r=>r!==e);let t=this.items.filter(r=>!this.selectedItems.some(i=>i===r));this.suggester.setItems(t),this.display()}save(){this.submitted=!0,this.close(),this.resolve(this.selectedItems)}onClose(){this.submitted||this.reject(new D("Cancelled prompt"))}async openAndGetValue(e,t){this.resolve=e,this.reject=t,this.open()}},Wo=class extends Pe.AbstractInputSuggest{constructor(e,t,r,i,o){super(e,t);this.getItemText=r;this.items=i;o&&(this.limit=o)}getSuggestions(e){let t=(0,Pe.prepareFuzzySearch)(e);return this.items.reduce((r,i)=>{let o=this.getItemText(i);return t(o)&&r.push(i),r},[])}renderSuggestion(e,t){t.createDiv("suggestion-content").setText(this.getItemText(e))}setItems(e){this.items=e}selectSuggestion(e,t){this.setValue(""),this.close(),super.selectSuggestion(e,t)}};var xi=class extends be{constructor(){super(...arguments);this.name="system"}async create_static_templates(){this.static_functions.set("clipboard",this.generate_clipboard()),this.static_functions.set("prompt",this.generate_prompt()),this.static_functions.set("suggester",this.generate_suggester()),this.static_functions.set("multi_suggester",this.generate_multi_suggester())}async create_dynamic_templates(){}async teardown(){}generate_clipboard(){return async()=>await navigator.clipboard.readText()}generate_prompt(){return async(e,t,r=!1,i=!1)=>{let o=new hi(this.plugin.app,e,t,i),a=new Promise((l,c)=>o.openAndGetValue(l,c));try{return await a}catch(l){if(r)throw l;return null}}}generate_suggester(){return async(e,t,r=!1,i="",o)=>{let a=new Ai(this.plugin.app,e,t,i,o),l=new Promise((c,d)=>a.openAndGetValue(c,d));try{return await l}catch(c){if(r)throw c;return null}}}generate_multi_suggester(){return async(e,t,r=!1,i="",o)=>{let a=new _i(this.plugin.app,e,t,i,o),l=new Promise((c,d)=>a.openAndGetValue(c,d));try{return await l}catch(c){if(r)throw c;return[]}}}};var yi=class extends be{constructor(){super(...arguments);this.name="config"}async create_static_templates(){}async create_dynamic_templates(){}async teardown(){}async generate_object(e){return e}};var ji=class{constructor(e){this.plugin=e;this.modules_array=[];this.modules_array.push(new ui(this.plugin)),this.modules_array.push(new fi(this.plugin)),this.modules_array.push(new di(this.plugin)),this.modules_array.push(new gi(this.plugin)),this.modules_array.push(new mi(this.plugin)),this.modules_array.push(new xi(this.plugin)),this.modules_array.push(new yi(this.plugin))}async init(){for(let e of this.modules_array)await e.init()}async teardown(){for(let e of this.modules_array)await e.teardown()}async generate_object(e){let t={};for(let r of this.modules_array)t[r.getName()]=await r.generate_object(e);return t}};var Nn=X(require("obsidian"));var vi=class{constructor(e){this.plugin=e;if(Nn.Platform.isMobile||!(this.plugin.app.vault.adapter instanceof Nn.FileSystemAdapter))this.cwd="";else{this.cwd=this.plugin.app.vault.adapter.getBasePath();let{promisify:t}=require("util"),{exec:r}=require("child_process");this.exec_promise=t(r)}}async generate_system_functions(e){let t=new Map,r=await this.plugin.templater.functions_generator.generate_object(e,Xe.INTERNAL);for(let i of this.plugin.settings.templates_pairs){let o=i[0],a=i[1];!o||!a||(Nn.Platform.isMobile?t.set(o,()=>new Promise(l=>l(Ko))):(a=await this.plugin.templater.parser.parse_commands(a,r),t.set(o,async l=>{let c={...process.env,...l},d={timeout:this.plugin.settings.command_timeout*1e3,cwd:this.cwd,env:c,...this.plugin.settings.shell_path&&{shell:this.plugin.settings.shell_path}};try{let{stdout:m}=await this.exec_promise(a,d);return m.trimRight()}catch(m){throw new D(`Error with User Template ${o}`,m)}})))}return t}async generate_object(e){let t=await this.generate_system_functions(e);return Object.fromEntries(t)}};var wi=class{constructor(e){this.plugin=e}async generate_user_script_functions(){let e=new Map,t=Ce(()=>Je(this.plugin.app,this.plugin.settings.user_scripts_folder),`Couldn't find user script folder "${this.plugin.settings.user_scripts_folder}"`);if(!t)return new Map;for(let r of t)r.extension.toLowerCase()==="js"&&await this.load_user_script_function(r,e);return e}async load_user_script_function(e,t){let r=c=>window.require&&window.require(c),i={},o={exports:i},a=await this.plugin.app.vault.read(e);try{window.eval("(function anonymous(require, module, exports){"+a+` -})`)(r,o,i)}catch(c){throw new D(`Failed to load user script at "${e.path}".`,c.message)}let l=i.default??o.exports;if(!l)throw new D(`Failed to load user script at "${e.path}". No exports detected.`);if(typeof l=="function")t.set(e.basename,l);else if(typeof l=="object"&&l!==null){if(!Object.values(l).every(d=>typeof d=="function"))throw new D(`Exported object in "${e.path}" must contain only functions.`);t.set(e.basename,l)}else throw new D(`Invalid export in "${e.path}". Must be a function or object of functions.`)}async generate_object(){let e=await this.generate_user_script_functions();return Object.fromEntries(e)}};var bi=class{constructor(e){this.plugin=e;this.user_system_functions=new vi(e),this.user_script_functions=new wi(e)}async generate_object(e){let t={},r={};return this.plugin.settings.enable_system_commands&&(t=await this.user_system_functions.generate_object(e)),this.plugin.settings.user_scripts_folder&&(r=await this.user_script_functions.generate_object()),{...t,...r}}};var Ks=X(require("obsidian")),Xe;(function(t){t[t.INTERNAL=0]="INTERNAL",t[t.USER_INTERNAL=1]="USER_INTERNAL"})(Xe||(Xe={}));var Ei=class{constructor(e){this.plugin=e;this.internal_functions=new ji(this.plugin),this.user_functions=new bi(this.plugin)}async init(){await this.internal_functions.init()}async teardown(){await this.internal_functions.teardown()}additional_functions(){return{app:this.plugin.app,obsidian:Ks}}async generate_object(e,t=1){let r={},i=this.additional_functions(),o=await this.internal_functions.generate_object(e),a={};switch(Object.assign(r,i),t){case 0:Object.assign(r,o);break;case 1:a=await this.user_functions.generate_object(e),Object.assign(r,{...o,user:a});break}return r}};var Xs={},M,Ke=new Array(32).fill(void 0);Ke.push(void 0,null,!0,!1);function De(n){return Ke[n]}var Mn=Ke.length;function Rs(n){n<36||(Ke[n]=Mn,Mn=n)}function Ti(n){let e=De(n);return Rs(n),e}var Vo=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});Vo.decode();var jr=new Uint8Array;function vr(){return jr.byteLength===0&&(jr=new Uint8Array(M.memory.buffer)),jr}function Tt(n,e){return Vo.decode(vr().subarray(n,n+e))}function kt(n){Mn===Ke.length&&Ke.push(Ke.length+1);let e=Mn;return Mn=Ke[e],Ke[e]=n,e}var Re=0,wr=new TextEncoder("utf-8"),Ys=typeof wr.encodeInto=="function"?function(n,e){return wr.encodeInto(n,e)}:function(n,e){let t=wr.encode(n);return e.set(t),{read:n.length,written:t.length}};function ht(n,e,t){if(t===void 0){let l=wr.encode(n),c=e(l.length);return vr().subarray(c,c+l.length).set(l),Re=l.length,c}let r=n.length,i=e(r),o=vr(),a=0;for(;a127)break;o[i+a]=l}if(a!==r){a!==0&&(n=n.slice(a)),i=t(i,r,r=a+n.length*3);let l=vr().subarray(i+a,i+r);a+=Ys(n,l).written}return Re=a,i}function Us(n){return n==null}var br=new Int32Array;function Ne(){return br.byteLength===0&&(br=new Int32Array(M.memory.buffer)),br}function ki(n){let e=typeof n;if(e=="number"||e=="boolean"||n==null)return`${n}`;if(e=="string")return`"${n}"`;if(e=="symbol"){let i=n.description;return i==null?"Symbol":`Symbol(${i})`}if(e=="function"){let i=n.name;return typeof i=="string"&&i.length>0?`Function(${i})`:"Function"}if(Array.isArray(n)){let i=n.length,o="[";i>0&&(o+=ki(n[0]));for(let a=1;a1)r=t[1];else return toString.call(n);if(r=="Object")try{return"Object("+JSON.stringify(n)+")"}catch{return"Object"}return n instanceof Error?`${n.name}: ${n.message} -${n.stack}`:r}function Gs(n,e){if(!(n instanceof e))throw new Error(`expected instance of ${e.name}`);return n.ptr}var Er=32;function Ws(n){if(Er==1)throw new Error("out of js stack");return Ke[--Er]=n,Er}function Si(n,e){try{return n.apply(this,e)}catch(t){M.__wbindgen_exn_store(kt(t))}}var Rt=class{static __wrap(e){let t=Object.create(Rt.prototype);return t.ptr=e,t}__destroy_into_raw(){let e=this.ptr;return this.ptr=0,e}free(){let e=this.__destroy_into_raw();M.__wbg_parserconfig_free(e)}get interpolate(){let e=M.__wbg_get_parserconfig_interpolate(this.ptr);return String.fromCodePoint(e)}set interpolate(e){M.__wbg_set_parserconfig_interpolate(this.ptr,e.codePointAt(0))}get execution(){let e=M.__wbg_get_parserconfig_execution(this.ptr);return String.fromCodePoint(e)}set execution(e){M.__wbg_set_parserconfig_execution(this.ptr,e.codePointAt(0))}get single_whitespace(){let e=M.__wbg_get_parserconfig_single_whitespace(this.ptr);return String.fromCodePoint(e)}set single_whitespace(e){M.__wbg_set_parserconfig_single_whitespace(this.ptr,e.codePointAt(0))}get multiple_whitespace(){let e=M.__wbg_get_parserconfig_multiple_whitespace(this.ptr);return String.fromCodePoint(e)}set multiple_whitespace(e){M.__wbg_set_parserconfig_multiple_whitespace(this.ptr,e.codePointAt(0))}constructor(e,t,r,i,o,a,l){let c=ht(e,M.__wbindgen_malloc,M.__wbindgen_realloc),d=Re,m=ht(t,M.__wbindgen_malloc,M.__wbindgen_realloc),_=Re,w=ht(l,M.__wbindgen_malloc,M.__wbindgen_realloc),b=Re,S=M.parserconfig_new(c,d,m,_,r.codePointAt(0),i.codePointAt(0),o.codePointAt(0),a.codePointAt(0),w,b);return Rt.__wrap(S)}get opening_tag(){try{let r=M.__wbindgen_add_to_stack_pointer(-16);M.parserconfig_opening_tag(r,this.ptr);var e=Ne()[r/4+0],t=Ne()[r/4+1];return Tt(e,t)}finally{M.__wbindgen_add_to_stack_pointer(16),M.__wbindgen_free(e,t)}}set opening_tag(e){let t=ht(e,M.__wbindgen_malloc,M.__wbindgen_realloc),r=Re;M.parserconfig_set_opening_tag(this.ptr,t,r)}get closing_tag(){try{let r=M.__wbindgen_add_to_stack_pointer(-16);M.parserconfig_closing_tag(r,this.ptr);var e=Ne()[r/4+0],t=Ne()[r/4+1];return Tt(e,t)}finally{M.__wbindgen_add_to_stack_pointer(16),M.__wbindgen_free(e,t)}}set closing_tag(e){let t=ht(e,M.__wbindgen_malloc,M.__wbindgen_realloc),r=Re;M.parserconfig_set_closing_tag(this.ptr,t,r)}get global_var(){try{let r=M.__wbindgen_add_to_stack_pointer(-16);M.parserconfig_global_var(r,this.ptr);var e=Ne()[r/4+0],t=Ne()[r/4+1];return Tt(e,t)}finally{M.__wbindgen_add_to_stack_pointer(16),M.__wbindgen_free(e,t)}}set global_var(e){let t=ht(e,M.__wbindgen_malloc,M.__wbindgen_realloc),r=Re;M.parserconfig_set_global_var(this.ptr,t,r)}},cn=class{static __wrap(e){let t=Object.create(cn.prototype);return t.ptr=e,t}__destroy_into_raw(){let e=this.ptr;return this.ptr=0,e}free(){let e=this.__destroy_into_raw();M.__wbg_renderer_free(e)}constructor(e){Gs(e,Rt);var t=e.ptr;e.ptr=0;let r=M.renderer_new(t);return cn.__wrap(r)}render_content(e,t){try{let a=M.__wbindgen_add_to_stack_pointer(-16),l=ht(e,M.__wbindgen_malloc,M.__wbindgen_realloc),c=Re;M.renderer_render_content(a,this.ptr,l,c,Ws(t));var r=Ne()[a/4+0],i=Ne()[a/4+1],o=Ne()[a/4+2];if(o)throw Ti(i);return Ti(r)}finally{M.__wbindgen_add_to_stack_pointer(16),Ke[Er++]=void 0}}};async function Vs(n,e){if(typeof Response=="function"&&n instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(n,e)}catch(r){if(n.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",r);else throw r}let t=await n.arrayBuffer();return await WebAssembly.instantiate(t,e)}else{let t=await WebAssembly.instantiate(n,e);return t instanceof WebAssembly.Instance?{instance:t,module:n}:t}}function zs(){let n={};return n.wbg={},n.wbg.__wbindgen_object_drop_ref=function(e){Ti(e)},n.wbg.__wbindgen_string_new=function(e,t){let r=Tt(e,t);return kt(r)},n.wbg.__wbindgen_string_get=function(e,t){let r=De(t),i=typeof r=="string"?r:void 0;var o=Us(i)?0:ht(i,M.__wbindgen_malloc,M.__wbindgen_realloc),a=Re;Ne()[e/4+1]=a,Ne()[e/4+0]=o},n.wbg.__wbg_call_97ae9d8645dc388b=function(){return Si(function(e,t){let r=De(e).call(De(t));return kt(r)},arguments)},n.wbg.__wbg_new_8d2af00bc1e329ee=function(e,t){let r=new Error(Tt(e,t));return kt(r)},n.wbg.__wbg_message_fe2af63ccc8985bc=function(e){let t=De(e).message;return kt(t)},n.wbg.__wbg_newwithargs_8fe23e3842840c8e=function(e,t,r,i){let o=new Function(Tt(e,t),Tt(r,i));return kt(o)},n.wbg.__wbg_call_168da88779e35f61=function(){return Si(function(e,t,r){let i=De(e).call(De(t),De(r));return kt(i)},arguments)},n.wbg.__wbg_call_3999bee59e9f7719=function(){return Si(function(e,t,r,i){let o=De(e).call(De(t),De(r),De(i));return kt(o)},arguments)},n.wbg.__wbindgen_debug_string=function(e,t){let r=ki(De(t)),i=ht(r,M.__wbindgen_malloc,M.__wbindgen_realloc),o=Re;Ne()[e/4+1]=o,Ne()[e/4+0]=i},n.wbg.__wbindgen_throw=function(e,t){throw new Error(Tt(e,t))},n}function Js(n,e){}function Qs(n,e){return M=n.exports,zo.__wbindgen_wasm_module=e,br=new Int32Array,jr=new Uint8Array,M}async function zo(n){typeof n=="undefined"&&(n=new URL("rusty_engine_bg.wasm",Xs.url));let e=zs();(typeof n=="string"||typeof Request=="function"&&n instanceof Request||typeof URL=="function"&&n instanceof URL)&&(n=fetch(n)),Js(e);let{instance:t,module:r}=await Vs(await n,e);return Qs(t,r)}var Jo=zo;var Qo=Xi("AGFzbQEAAAABvwEaYAJ/fwBgAn9/AX9gAX8Bf2ADf39/AX9gA39/fwBgAX8AYAV/f39/fwBgBH9/f38AYAR/f39/AX9gAABgBX9/f39/AX9gAX8BfmAAAX9gBn9/f39/fwBgB39/f39/f38AYAV/f35/fwBgBX9/fX9/AGAFf398f38AYAR/fn9/AGAFf35/f38AYAR/fX9/AGAEf3x/fwBgBn9/f39/fwF/YAd/f39/f39/AX9gCn9/f39/f39/f38Bf2ACfn8BfwLkAgsDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX25ldwABA3diZxVfX3diaW5kZ2VuX3N0cmluZ19nZXQAAAN3YmcbX193YmdfY2FsbF85N2FlOWQ4NjQ1ZGMzODhiAAEDd2JnGl9fd2JnX25ld184ZDJhZjAwYmMxZTMyOWVlAAEDd2JnHl9fd2JnX21lc3NhZ2VfZmUyYWY2M2NjYzg5ODViYwACA3diZyJfX3diZ19uZXd3aXRoYXJnc184ZmUyM2UzODQyODQwYzhlAAgDd2JnG19fd2JnX2NhbGxfMTY4ZGE4ODc3OWUzNWY2MQADA3diZxtfX3diZ19jYWxsXzM5OTliZWU1OWU5Zjc3MTkACAN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAAAN3YmcQX193YmluZGdlbl90aHJvdwAAA7kBtwECBwAGAgYEBAcBBQMKCAAEBgYAAwcCAAEADgETAQQXAQICAQAAAwcZAQAFAQwABgACAgAAAgAEBAAGAQAAAAAEBw0CAQUEBQYCDBgAAQAAAAQBAQEAAQABBAQEBgMDBwMJAwQIAAAABQkAAgEAAAAABwAAAgICAgAFBQMEFgoGEQ8QAAUHAwIBAgABBQEBCAACAQEBBQEAAgECAgACAQEBAgAJCQICAgIAAAAAAwMDAQECAgsLCwUEBQFwATs7BQMBABEGCQF/AUGAgMAACwfcBRkGbWVtb3J5AgAXX193YmdfcGFyc2VyY29uZmlnX2ZyZWUAUSJfX3diZ19nZXRfcGFyc2VyY29uZmlnX2ludGVycG9sYXRlAH4iX193Ymdfc2V0X3BhcnNlcmNvbmZpZ19pbnRlcnBvbGF0ZQB3IF9fd2JnX2dldF9wYXJzZXJjb25maWdfZXhlY3V0aW9uAH8gX193Ymdfc2V0X3BhcnNlcmNvbmZpZ19leGVjdXRpb24AeChfX3diZ19nZXRfcGFyc2VyY29uZmlnX3NpbmdsZV93aGl0ZXNwYWNlAIABKF9fd2JnX3NldF9wYXJzZXJjb25maWdfc2luZ2xlX3doaXRlc3BhY2UAeSpfX3diZ19nZXRfcGFyc2VyY29uZmlnX211bHRpcGxlX3doaXRlc3BhY2UAgQEqX193Ymdfc2V0X3BhcnNlcmNvbmZpZ19tdWx0aXBsZV93aGl0ZXNwYWNlAHoQcGFyc2VyY29uZmlnX25ldwBVGHBhcnNlcmNvbmZpZ19vcGVuaW5nX3RhZwBGHHBhcnNlcmNvbmZpZ19zZXRfb3BlbmluZ190YWcAYxhwYXJzZXJjb25maWdfY2xvc2luZ190YWcARxxwYXJzZXJjb25maWdfc2V0X2Nsb3NpbmdfdGFnAGQXcGFyc2VyY29uZmlnX2dsb2JhbF92YXIASBtwYXJzZXJjb25maWdfc2V0X2dsb2JhbF92YXIAZRNfX3diZ19yZW5kZXJlcl9mcmVlAE8McmVuZGVyZXJfbmV3ACAXcmVuZGVyZXJfcmVuZGVyX2NvbnRlbnQAORFfX3diaW5kZ2VuX21hbGxvYwB1El9fd2JpbmRnZW5fcmVhbGxvYwCFAR9fX3diaW5kZ2VuX2FkZF90b19zdGFja19wb2ludGVyAKsBD19fd2JpbmRnZW5fZnJlZQCaARRfX3diaW5kZ2VuX2V4bl9zdG9yZQCfAQllAQBBAQs6mAGdAaoBPzzBAZUBlgFOkgGOAWotYsEBwQFnKl3BAXaIAUyJAYgBhwGQAY8BiQGJAYwBigGLAZgBX8EBaKABXo4BvwG+AYQBOElwoQHBAWioAWCjAVclqQGcAcEBwAEK2dYCtwG8IAIPfwF+IwBBEGsiCyQAAkACQCAAQfUBTwRAQYCAfEEIQQgQlwFBFEEIEJcBakEQQQgQlwFqa0F3cUF9aiICQQBBEEEIEJcBQQJ0ayIBIAEgAksbIABNDQIgAEEEakEIEJcBIQRBrK7AACgCAEUNAUEAIARrIQMCQAJAAn9BACAEQYACSQ0AGkEfIARB////B0sNABogBEEGIARBCHZnIgBrdkEBcSAAQQF0a0E+agsiBkECdEG4sMAAaigCACIABEAgBCAGEJMBdCEHQQAhAQNAAkAgABCvASICIARJDQAgAiAEayICIANPDQAgACEBIAIiAw0AQQAhAwwDCyAAQRRqKAIAIgIgBSACIAAgB0EddkEEcWpBEGooAgAiAEcbIAUgAhshBSAHQQF0IQcgAA0ACyAFBEAgBSEADAILIAENAgtBACEBQQEgBnQQmwFBrK7AACgCAHEiAEUNAyAAEKQBaEECdEG4sMAAaigCACIARQ0DCwNAIAAgASAAEK8BIgEgBE8gASAEayIFIANJcSICGyEBIAUgAyACGyEDIAAQkQEiAA0ACyABRQ0CC0G4scAAKAIAIgAgBE9BACADIAAgBGtPGw0BIAEiACAEELoBIQYgABA1AkAgA0EQQQgQlwFPBEAgACAEEKYBIAYgAxCUASADQYACTwRAIAYgAxA0DAILIANBA3YiAUEDdEGwrsAAaiEFAn9BqK7AACgCACICQQEgAXQiAXEEQCAFKAIIDAELQaiuwAAgASACcjYCACAFCyEBIAUgBjYCCCABIAY2AgwgBiAFNgIMIAYgATYCCAwBCyAAIAMgBGoQjQELIAAQvAEiA0UNAQwCC0EQIABBBGpBEEEIEJcBQXtqIABLG0EIEJcBIQQCQAJAAkACfwJAAkBBqK7AACgCACIBIARBA3YiAHYiAkEDcUUEQCAEQbixwAAoAgBNDQcgAg0BQayuwAAoAgAiAEUNByAAEKQBaEECdEG4sMAAaigCACIBEK8BIARrIQMgARCRASIABEADQCAAEK8BIARrIgIgAyACIANJIgIbIQMgACABIAIbIQEgABCRASIADQALCyABIgAgBBC6ASEFIAAQNSADQRBBCBCXAUkNBSAAIAQQpgEgBSADEJQBQbixwAAoAgAiAUUNBCABQQN2IgFBA3RBsK7AAGohB0HAscAAKAIAIQZBqK7AACgCACICQQEgAXQiAXFFDQIgBygCCAwDCwJAIAJBf3NBAXEgAGoiA0EDdCIAQbiuwABqKAIAIgVBCGooAgAiAiAAQbCuwABqIgBHBEAgAiAANgIMIAAgAjYCCAwBC0GorsAAIAFBfiADd3E2AgALIAUgA0EDdBCNASAFELwBIQMMBwsCQEEBIABBH3EiAHQQmwEgAiAAdHEQpAFoIgJBA3QiAEG4rsAAaigCACIDQQhqKAIAIgEgAEGwrsAAaiIARwRAIAEgADYCDCAAIAE2AggMAQtBqK7AAEGorsAAKAIAQX4gAndxNgIACyADIAQQpgEgAyAEELoBIgUgAkEDdCAEayICEJQBQbixwAAoAgAiAARAIABBA3YiAEEDdEGwrsAAaiEHQcCxwAAoAgAhBgJ/QaiuwAAoAgAiAUEBIAB0IgBxBEAgBygCCAwBC0GorsAAIAAgAXI2AgAgBwshACAHIAY2AgggACAGNgIMIAYgBzYCDCAGIAA2AggLQcCxwAAgBTYCAEG4scAAIAI2AgAgAxC8ASEDDAYLQaiuwAAgASACcjYCACAHCyEBIAcgBjYCCCABIAY2AgwgBiAHNgIMIAYgATYCCAtBwLHAACAFNgIAQbixwAAgAzYCAAwBCyAAIAMgBGoQjQELIAAQvAEiAw0BCwJAAkACQAJAAkACQAJAAkBBuLHAACgCACIAIARJBEBBvLHAACgCACIAIARLDQIgC0EIQQgQlwEgBGpBFEEIEJcBakEQQQgQlwFqQYCABBCXARBxIAsoAgAiCA0BQQAhAwwJC0HAscAAKAIAIQIgACAEayIBQRBBCBCXAUkEQEHAscAAQQA2AgBBuLHAACgCACEAQbixwABBADYCACACIAAQjQEgAhC8ASEDDAkLIAIgBBC6ASEAQbixwAAgATYCAEHAscAAIAA2AgAgACABEJQBIAIgBBCmASACELwBIQMMCAsgCygCCCEMQcixwAAgCygCBCIKQcixwAAoAgBqIgE2AgBBzLHAAEHMscAAKAIAIgAgASAAIAFLGzYCAAJAAkBBxLHAACgCAARAQdCxwAAhAANAIAAQpwEgCEYNAiAAKAIIIgANAAsMAgtB5LHAACgCACIARSAIIABJcg0DDAcLIAAQsQENACAAELIBIAxHDQAgACIBKAIAIgVBxLHAACgCACICTQR/IAUgASgCBGogAksFQQALDQMLQeSxwABB5LHAACgCACIAIAggCCAASxs2AgAgCCAKaiEBQdCxwAAhAAJAAkADQCABIAAoAgBHBEAgACgCCCIADQEMAgsLIAAQsQENACAAELIBIAxGDQELQcSxwAAoAgAhCUHQscAAIQACQANAIAAoAgAgCU0EQCAAEKcBIAlLDQILIAAoAggiAA0AC0EAIQALIAkgABCnASIGQRRBCBCXASIPa0FpaiIBELwBIgBBCBCXASAAayABaiIAIABBEEEIEJcBIAlqSRsiDRC8ASEOIA0gDxC6ASEAQQhBCBCXASEDQRRBCBCXASEFQRBBCBCXASECQcSxwAAgCCAIELwBIgFBCBCXASABayIBELoBIgc2AgBBvLHAACAKQQhqIAIgAyAFamogAWprIgM2AgAgByADQQFyNgIEQQhBCBCXASEFQRRBCBCXASECQRBBCBCXASEBIAcgAxC6ASABIAIgBUEIa2pqNgIEQeCxwABBgICAATYCACANIA8QpgFB0LHAACkCACEQIA5BCGpB2LHAACkCADcCACAOIBA3AgBB3LHAACAMNgIAQdSxwAAgCjYCAEHQscAAIAg2AgBB2LHAACAONgIAA0AgAEEEELoBIQEgAEEHNgIEIAYgASIAQQRqSw0ACyAJIA1GDQcgCSANIAlrIgAgCSAAELoBEIYBIABBgAJPBEAgCSAAEDQMCAsgAEEDdiIAQQN0QbCuwABqIQICf0GorsAAKAIAIgFBASAAdCIAcQRAIAIoAggMAQtBqK7AACAAIAFyNgIAIAILIQAgAiAJNgIIIAAgCTYCDCAJIAI2AgwgCSAANgIIDAcLIAAoAgAhAyAAIAg2AgAgACAAKAIEIApqNgIEIAgQvAEiBUEIEJcBIQIgAxC8ASIBQQgQlwEhACAIIAIgBWtqIgYgBBC6ASEHIAYgBBCmASADIAAgAWtqIgAgBCAGamshBCAAQcSxwAAoAgBHBEBBwLHAACgCACAARg0EIAAoAgRBA3FBAUcNBQJAIAAQrwEiBUGAAk8EQCAAEDUMAQsgAEEMaigCACICIABBCGooAgAiAUcEQCABIAI2AgwgAiABNgIIDAELQaiuwABBqK7AACgCAEF+IAVBA3Z3cTYCAAsgBCAFaiEEIAAgBRC6ASEADAULQcSxwAAgBzYCAEG8scAAQbyxwAAoAgAgBGoiADYCACAHIABBAXI2AgQgBhC8ASEDDAcLQbyxwAAgACAEayIBNgIAQcSxwABBxLHAACgCACICIAQQugEiADYCACAAIAFBAXI2AgQgAiAEEKYBIAIQvAEhAwwGC0HkscAAIAg2AgAMAwsgACAAKAIEIApqNgIEQcSxwAAoAgBBvLHAACgCACAKahBWDAMLQcCxwAAgBzYCAEG4scAAQbixwAAoAgAgBGoiADYCACAHIAAQlAEgBhC8ASEDDAMLIAcgBCAAEIYBIARBgAJPBEAgByAEEDQgBhC8ASEDDAMLIARBA3YiAEEDdEGwrsAAaiECAn9BqK7AACgCACIBQQEgAHQiAHEEQCACKAIIDAELQaiuwAAgACABcjYCACACCyEAIAIgBzYCCCAAIAc2AgwgByACNgIMIAcgADYCCCAGELwBIQMMAgtB6LHAAEH/HzYCAEHcscAAIAw2AgBB1LHAACAKNgIAQdCxwAAgCDYCAEG8rsAAQbCuwAA2AgBBxK7AAEG4rsAANgIAQbiuwABBsK7AADYCAEHMrsAAQcCuwAA2AgBBwK7AAEG4rsAANgIAQdSuwABByK7AADYCAEHIrsAAQcCuwAA2AgBB3K7AAEHQrsAANgIAQdCuwABByK7AADYCAEHkrsAAQdiuwAA2AgBB2K7AAEHQrsAANgIAQeyuwABB4K7AADYCAEHgrsAAQdiuwAA2AgBB9K7AAEHorsAANgIAQeiuwABB4K7AADYCAEH8rsAAQfCuwAA2AgBB8K7AAEHorsAANgIAQfiuwABB8K7AADYCAEGEr8AAQfiuwAA2AgBBgK/AAEH4rsAANgIAQYyvwABBgK/AADYCAEGIr8AAQYCvwAA2AgBBlK/AAEGIr8AANgIAQZCvwABBiK/AADYCAEGcr8AAQZCvwAA2AgBBmK/AAEGQr8AANgIAQaSvwABBmK/AADYCAEGgr8AAQZivwAA2AgBBrK/AAEGgr8AANgIAQaivwABBoK/AADYCAEG0r8AAQaivwAA2AgBBsK/AAEGor8AANgIAQbyvwABBsK/AADYCAEHEr8AAQbivwAA2AgBBuK/AAEGwr8AANgIAQcyvwABBwK/AADYCAEHAr8AAQbivwAA2AgBB1K/AAEHIr8AANgIAQcivwABBwK/AADYCAEHcr8AAQdCvwAA2AgBB0K/AAEHIr8AANgIAQeSvwABB2K/AADYCAEHYr8AAQdCvwAA2AgBB7K/AAEHgr8AANgIAQeCvwABB2K/AADYCAEH0r8AAQeivwAA2AgBB6K/AAEHgr8AANgIAQfyvwABB8K/AADYCAEHwr8AAQeivwAA2AgBBhLDAAEH4r8AANgIAQfivwABB8K/AADYCAEGMsMAAQYCwwAA2AgBBgLDAAEH4r8AANgIAQZSwwABBiLDAADYCAEGIsMAAQYCwwAA2AgBBnLDAAEGQsMAANgIAQZCwwABBiLDAADYCAEGksMAAQZiwwAA2AgBBmLDAAEGQsMAANgIAQaywwABBoLDAADYCAEGgsMAAQZiwwAA2AgBBtLDAAEGosMAANgIAQaiwwABBoLDAADYCAEGwsMAAQaiwwAA2AgBBCEEIEJcBIQVBFEEIEJcBIQJBEEEIEJcBIQFBxLHAACAIIAgQvAEiAEEIEJcBIABrIgAQugEiAzYCAEG8scAAIApBCGogASACIAVqaiAAamsiBTYCACADIAVBAXI2AgRBCEEIEJcBIQJBFEEIEJcBIQFBEEEIEJcBIQAgAyAFELoBIAAgASACQQhramo2AgRB4LHAAEGAgIABNgIAC0EAIQNBvLHAACgCACIAIARNDQBBvLHAACAAIARrIgE2AgBBxLHAAEHEscAAKAIAIgIgBBC6ASIANgIAIAAgAUEBcjYCBCACIAQQpgEgAhC8ASEDCyALQRBqJAAgAwvgDwINfwp+IwBBMGsiCSQAAkAgASgCDCIKIAJqIgIgCkkEQBBrIAkoAgwhAiAJKAIIIQQMAQsCQAJAAkACfwJAIAIgASgCACIIIAhBAWoiB0EDdkEHbCAIQQhJGyILQQF2SwRAIAIgC0EBaiIEIAIgBEsbIgJBCEkNASACIAJB/////wFxRgRAQX8gAkEDdEEHbkF/amd2QQFqDAMLEGsgCSgCLCECIAkoAighBAwGCyABQQRqKAIAIQVBACECA0ACQAJAIARBAXFFBEAgAiAHTw0BDAILIAJBB2oiBCACSQ0AIAQiAiAHSQ0BCwJAAkAgB0EITwRAIAUgB2ogBSkAADcAAAwBCyAFQQhqIAUgBxAaIAdFDQELIANBCGopAwAiGELt3pHzlszct+QAhSIRIAMpAwAiFkL1ys2D16zbt/MAhXwiF0IgiSEZIBFCDYkgF4UiF0IRiSEaIBZC4eSV89bs2bzsAIUhFkEAIQIDQAJAIAUgAiIDaiIMLQAAQYABRw0AIAUgA0EDdGtBeGohDyAFIANBf3NBA3RqIQcCQANAIAggGCAPNQIAQoCAgICAgICABIQiEYVC88rRy6eM2bL0AIUiEkIQiSASIBZ8IhKFIhMgGXwiFCARhSASIBd8IhEgGoUiEnwiFSASQg2JhSISIBNCFYkgFIUiEyARQiCJQv8BhXwiEXwiFCASQhGJhSISQg2JIBIgE0IQiSARhSIRIBVCIIl8IhN8IhKFIhVCEYkgFSARQhWJIBOFIhEgFEIgiXwiE3wiFIUiFUINiSAVIBFCEIkgE4UiESASQiCJfCISfIUiEyARQhWJIBKFIhEgFEIgiXwiEnwiFCARQhCJIBKFQhWJhSATQhGJhSAUQiCIhaciDXEiBiEEIAUgBmopAABCgIGChIiQoMCAf4MiEVAEQEEIIQIgBiEEA0AgAiAEaiEEIAJBCGohAiAFIAQgCHEiBGopAABCgIGChIiQoMCAf4MiEVANAAsLIAUgEXqnQQN2IARqIAhxIgRqLAAAQX9KBEAgBSkDAEKAgYKEiJCgwIB/g3qnQQN2IQQLIAQgBmsgAyAGa3MgCHFBCE8EQCAFIARBf3NBA3RqIQIgBCAFaiIGLQAAIAYgDUEZdiIGOgAAIARBeGogCHEgBWpBCGogBjoAAEH/AUYNAiAHLQAFIQQgBy0ABCEGIAcgAi8ABDsABCACLQAHIQ0gAi0ABiEOIAIgBy8ABjsABiAHKAAAIRAgByACKAAANgAAIAIgEDYAACACIAY6AAQgByAOOgAGIAIgBDoABSAHIA06AAcMAQsLIAwgDUEZdiICOgAAIANBeGogCHEgBWpBCGogAjoAAAwBCyAMQf8BOgAAIANBeGogCHEgBWpBCGpB/wE6AAAgAiAHKQAANwAACyADQQFqIQIgAyAIRw0ACwsgASALIAprNgIIDAULIAIgBWoiBCAEKQMAIhFCB4hCf4VCgYKEiJCgwIABgyARQv/+/fv379+//wCEfDcDAEEBIQQgAkEBaiECDAALAAtBBEEIIAJBBEkbCyICQf////8BcSACRgRAIAJBA3QiBCACQQhqIgtqIgYgBE8NAQsQayAJKAIUIQIgCSgCECEEDAMLAkACQCAGQQBOBEBBCCEFAkAgBkUNACAGQQgQngEiBQ0AIAZBCBCzAQALIAQgBWogCxBFIQYgAkF/aiIFIAJBA3ZBB2wgBUEISRsgCmshCyABQQRqIgIoAgAhCiAHDQEgASALNgIIIAEgBTYCACACIAY2AgAMAgsQayAJKAIcIQIgCSgCGCEEDAQLIANBCGopAwAiGELt3pHzlszct+QAhSIRIAMpAwAiFkL1ys2D16zbt/MAhXwiF0IgiSEZIBFCDYkgF4UiF0IRiSEaIBZC4eSV89bs2bzsAIUhFkEAIQMDQCADIApqLAAAQQBOBEAgBiAFIBggCiADQQN0a0F4ajUCAEKAgICAgICAgASEIhGFQvPK0cunjNmy9ACFIhJCEIkgEiAWfCIShSITIBl8IhQgEYUgEiAXfCIRIBqFIhJ8IhUgEkINiYUiEiATQhWJIBSFIhMgEUIgiUL/AYV8IhF8IhQgEkIRiYUiEkINiSASIBNCEIkgEYUiESAVQiCJfCITfCIShSIVQhGJIBUgEUIViSAThSIRIBRCIIl8IhN8IhSFIhVCDYkgFSARQhCJIBOFIhEgEkIgiXwiEnyFIhMgEUIViSAShSIRIBRCIIl8IhJ8IhQgEUIQiSAShUIViYUgE0IRiYUgFEIgiIWnIgxxIgRqKQAAQoCBgoSIkKDAgH+DIhFQBEBBCCECA0AgAiAEaiEEIAJBCGohAiAGIAQgBXEiBGopAABCgIGChIiQoMCAf4MiEVANAAsLIAYgEXqnQQN2IARqIAVxIgJqLAAAQX9KBEAgBikDAEKAgYKEiJCgwIB/g3qnQQN2IQILIAIgBmogDEEZdiIEOgAAIAJBeGogBXEgBmpBCGogBDoAACAGIAJBf3NBA3RqIAogA0F/c0EDdGopAAA3AwALIAMgCEYgA0EBaiEDRQ0ACyABIAs2AgggASAFNgIAIAFBBGogBjYCACAIRQ0BC0GBgICAeCECIAggB0EDdCIEakEJakUNASAKIARrEBUMAQtBgYCAgHghAgsLIAAgAjYCBCAAIAQ2AgAgCUEwaiQAC8YNAhV/AX4jAEHQAGsiAiQAIAJBADYCECACQgQ3AwggAkEYaiABKAIAIg0gAUEEaigCACIOIAFBCGooAgAiChAfAkACQAJAIAIoAhgiAUUEQCAOIQUgDSEGDAELIApBDGohFCACQTBqIREgAkEoakEFciESIApBCGohFSAKQRRqIRYCQANAIBUoAgAgE2ohCCACKAIkIQcgAigCICEDIAIoAhwiBQRAIAIoAhAiBCACKAIMRgRAIAJBCGogBBA9IAIoAhAhBAsgAigCCCAEQQR0aiIGIAE2AgRBACEEIAZBADYCACAGQQhqIAU2AgAgAiACKAIQQQFqNgIQIAVBA3EhCSAFQX9qQQNPBEAgBUF8cSEMA0AgBCABLQAAQQpGaiABQQFqLQAAQQpGaiABQQJqLQAAQQpGaiABQQNqLQAAQQpGaiEEIAFBBGohASAMQXxqIgwNAAsLIAkEQANAIAQgAS0AAEEKRmohBCABQQFqIQEgCUF/aiIJDQALCyAEIAtqIQsgBSAIaiEICwJAAkACQAJAIAcEQAJAIAMsAAAiAUF/SgRAIAFB/wFxIQQMAQsgAy0AAUE/cSEGIAFBH3EhBSABQV9NBEAgBUEGdCAGciEEDAELIAMtAAJBP3EgBkEGdHIhBiABQXBJBEAgBiAFQQx0ciEEDAELIAVBEnRBgIDwAHEgAy0AA0E/cSAGQQZ0cnIiBEGAgMQARg0CC0EBIRAgCigCJCAERwRAQQAhECAEIAooAiBHDQILIAdBAU0EQCAIQQFqIQgMBQsgAywAASIBQb9/Sg0CDAkLIABBCGogDSAOIAsgCBAcIABCgYCAgDA3AgAMBQtBAiEQDAELIANBAWohAyAIQQFqIQggB0F/aiEHCwJAIAFBf0wEQCADLQABQT9xIQYgAUEfcSEFIAFBX00EQCAFQQZ0IAZyIQEMAgsgAy0AAkE/cSAGQQZ0ciEGIAFBcEkEQCAGIAVBDHRyIQEMAgsgBUESdEGAgPAAcSADLQADQT9xIAZBBnRyciIBQYCAxABGDQIMAQsgAUH/AXEhAQsCQAJAAkACQCAKKAIcIgUgAUcEQCABIAooAhgiBkYNASAGDQJBACEPDAQLQQEhDyAHQQJJDQIgAywAAUG/f0wNCQwCC0EAIQ8gB0ECSQ0BIAMsAAFBv39KDQEMCAtBASEPIAUNAgwBCyAIQQFqIQggA0EBaiEDIAdBf2ohBwsgAkFAayADIAcgFBAfAkACQAJAAkACQCACKAJAIgcEQCACKAJMIQUgAigCSCEGIBYoAgACQCACKAJEIgNBf2oiAUUEQCAHLQAAIQkMAQsgA0UNBCABIAdqLAAAIglBv39MDQQLIAhqIQRBASEIIAlB/wFxIgkgCigCJEYNAUEAIQggCigCICAJRg0BIAMgBGohE0ECIQgMAgsgESANIA4gCyAIEBwgAikDMCEXIABBEGogAigCODYCACAAQQhqIBc3AgAgAEKBgICAMDcCAAwHCyADIARqIRMgAUUNAiABIQMLIANBA3EhCQJAIANBf2pBA0kEQEEAIQQgByEBDAELIANBfHEhDEEAIQQgByEBA0AgBCABLQAAQQpGaiABQQFqLQAAQQpGaiABQQJqLQAAQQpGaiABQQNqLQAAQQpGaiEEIAFBBGohASAMQXxqIgwNAAsLIAlFDQIDQCAEIAEtAABBCkZqIQQgAUEBaiEBIAlBf2oiCQ0ACwwCCyAHIAMgASADEHsAC0EAIQNBACEECyACKAIQIgEgAigCDEYEQCACQQhqIAEQPSACKAIQIQELIAQgC2ohCyACKAIIIAFBBHRqIgEgCDoADiABIBA6AA0gASAHNgIEIAFBATYCACABQQxqIA86AAAgAUEIaiADNgIAIAIgAigCEEEBajYCECACQRhqIAYgBSAKEB8gAigCGCIBRQ0DDAELCyARIA0gDiALIAgQHCACQQI2AiwgAkHCAGogEkECai0AACIBOgAAIAIgEi8AACIHOwFAIAJBOGooAgAhAyACKQMwIRcgAEECOgAEIAAgBzsABSAAQQdqIAE6AAAgAEEQaiADNgIAIABBCGogFzcCACAAQQE2AgALIAIoAgxFDQEgAigCCBAVDAELIAUEQCACKAIQIgEgAigCDEYEQCACQQhqIAEQPSACKAIQIQELIAIoAgggAUEEdGoiASAGNgIEIAFBADYCACABQQhqIAU2AgAgAiACKAIQQQFqNgIQCyAAIAIpAwg3AgQgAEEANgIAIABBDGogAkEQaigCADYCAAsgAkHQAGokAA8LIAMgB0EBIAcQewALqwsCCn8BfgJ/AkAgBARAQQEhDQJAIARBAUYEQEEBIQgMAQtBASEGQQEhBwNAIAchCwJAAkAgBSAKaiIIIARJBEAgAyAGai0AACIHIAMgCGotAAAiBk8EQCAGIAdGDQJBASENIAtBAWohB0EAIQUgCyEKDAMLIAUgC2pBAWoiByAKayENQQAhBQwCCyAIIARB+JfAABBbAAtBACAFQQFqIgcgByANRiIGGyEFIAdBACAGGyALaiEHCyAFIAdqIgYgBEkNAAtBASEGQQEhB0EAIQVBASEIA0AgByELAkACQCAFIAlqIgwgBEkEQCADIAZqLQAAIgcgAyAMai0AACIGTQRAIAYgB0YNAkEBIQggC0EBaiEHQQAhBSALIQkMAwsgBSALakEBaiIHIAlrIQhBACEFDAILIAwgBEH4l8AAEFsAC0EAIAVBAWoiByAHIAhGIgYbIQUgB0EAIAYbIAtqIQcLIAUgB2oiBiAESQ0ACyAKIQULIAUgCSAFIAlLIgUbIgsgBE0EQCANIAggBRsiByALaiIFIAdPBEAgBSAETQRAIAMgAyAHaiALELgBBEAgCyAEIAtrIgZLIQogBEEDcSEHIARBf2pBA0kEQCADIQUMBgsgBEF8cSEIIAMhBQNAQgEgBTEAAIYgD4RCASAFQQFqMQAAhoRCASAFQQJqMQAAhoRCASAFQQNqMQAAhoQhDyAFQQRqIQUgCEF8aiIIDQALDAULQQEhCUEAIQVBASEGQQAhDQNAIAYiCiAFaiIMIARJBEACQAJAAkAgBCAFayAKQX9zaiIIIARJBEAgBUF/cyAEaiANayIGIARPDQEgAyAIai0AACIIIAMgBmotAAAiBk8EQCAGIAhGDQMgCkEBaiEGQQAhBUEBIQkgCiENDAQLIAxBAWoiBiANayEJQQAhBQwDCyAIIARBiJjAABBbAAsgBiAEQZiYwAAQWwALQQAgBUEBaiIIIAggCUYiBhshBSAIQQAgBhsgCmohBgsgByAJRw0BCwtBASEJQQAhBUEBIQZBACEIA0AgBiIKIAVqIg4gBEkEQAJAAkACQCAEIAVrIApBf3NqIgwgBEkEQCAFQX9zIARqIAhrIgYgBE8NASADIAxqLQAAIgwgAyAGai0AACIGTQRAIAYgDEYNAyAKQQFqIQZBACEFQQEhCSAKIQgMBAsgDkEBaiIGIAhrIQlBACEFDAMLIAwgBEGImMAAEFsACyAGIARBmJjAABBbAAtBACAFQQFqIgwgCSAMRiIGGyEFIAxBACAGGyAKaiEGCyAHIAlHDQELCyAHIARNBEAgBCANIAggDSAISxtrIQpBACEJAkAgB0UEQEEAIQcMAQsgB0EDcSEIAkAgB0F/akEDSQRAIAMhBQwBCyAHQXxxIQYgAyEFA0BCASAFMQAAhiAPhEIBIAVBAWoxAACGhEIBIAVBAmoxAACGhEIBIAVBA2oxAACGhCEPIAVBBGohBSAGQXxqIgYNAAsLIAhFDQADQEIBIAUxAACGIA+EIQ8gBUEBaiEFIAhBf2oiCA0ACwsgBAwGCyAHIAQQtQEACyAFIAQQtQEACyAHIAUQtgEACyALIAQQtQEACyAAIAM2AjggACABNgIwIABBADoADiAAQgA3AwAgAEE8akEANgIAIABBNGogAjYCACAAQQxqQYECOwEAIABBCGogAjYCAA8LIAcEQANAQgEgBTEAAIYgD4QhDyAFQQFqIQUgB0F/aiIHDQALCyALIAYgChtBAWohB0F/IQkgCyEKQX8LIQUgACADNgI4IAAgATYCMCAAQQE2AgAgAEE8aiAENgIAIABBNGogAjYCACAAQShqIAU2AgAgAEEkaiAJNgIAIABBIGogAjYCACAAQRxqQQA2AgAgAEEYaiAHNgIAIABBFGogCjYCACAAQRBqIAs2AgAgAEEIaiAPNwIAC+AJAQ9/IwBB0ABrIgEkACABQcgAaiAAQShqKAIAIgY2AgAgAUFAayILIABBIGopAgA3AwAgAUE4aiAAQRhqKQIANwMAIAFBMGogAEEQaikCADcDACABQShqIABBCGopAgA3AwAgASAAKQIANwMgAkAgBkUEQAwBCyABKAIoIQcgASgCJCEIIAEtAEQhCiABQTRqKAIAIgUgAUEsaigCACIMSwRAIApFIAggASgCICIARnEEQAwCCyAHRQRADAILIAggAGshBCABLQBFRSEAA0AgAEEBcUUNAiADIARqQQFqIQNBACEAIAZBf2oiBg0ACwwBCyABQTxqKAIAIgkgC2pBf2ohDSAJQQRNBEAgAS0ARSECA0AgAkH/AXENAgJ/AkAgBSABKAIwIgJJDQADQCACIAdqIQ4gDS0AACEPAkACfyAFIAJrIgRBCE8EQCABQRhqIA8gDiAEEDEgASgCHCEAIAEoAhgMAQtBACEAQQAgBEUNABoDQEEBIA8gACAOai0AAEYNARogBCAAQQFqIgBHDQALIAQhAEEAC0EBRgRAIAEgACACakEBaiICNgIwIAIgCUkgAiAMS3INASAHIAIgCWsiAGogCyAJELgBDQEgASgCICEEIAEgAjYCICAAIARrIQBBAAwECyABIAU2AjAMAgsgBSACTw0ACwsgCkVBACABKAIgIgAgCEYbDQMgAUEBOgBFIAggAGshAEEBCyECIAdFBEBBACEDDAMLIAAgA2pBAWohAyAGQX9qIgYNAAsMAQsgAS0ARSEAAkACQCAKRUEAIAEoAiAiBCAIRhtFBEAgB0UNASAIIARrIQsgAEUhAANAIABBAXFFDQQCQCAFIAEoAjAiAkkNAANAIAIgB2ohCCANLQAAIQoCfyAFIAJrIgRBCE8EQCABQQhqIAogCCAEEDEgASgCDCEAIAEoAggMAQtBACEAQQAgBEUNABoDQEEBIAogACAIai0AAEYNARogBCAAQQFqIgBHDQALIAQhAEEAC0EBRgRAIAEgACACakEBaiICNgIwIAIgCU9BACACIAxNGw0GIAUgAkkNAgwBCwsgASAFNgIwCyABQQE6AEUgAyALakEBaiEDQQAhACAGQX9qIgYNAAsMAwsgAARADAMLIAUgASgCMCICSQRADAMLA0AgAiAHaiEDIA0tAAAhBgJ/IAUgAmsiBEEITwRAIAFBEGogBiADIAQQMSABKAIUIQAgASgCEAwBC0EAIQBBACAERQ0AGgNAQQEgBiAAIANqLQAARg0BGiAEIABBAWoiAEcNAAsgBCEAQQALQQFHBEBBACEDDAQLIAEgACACakEBaiICNgIwIAIgCU9BACACIAxNGw0CIAUgAk8NAAtBACEDDAILIAAEQAwCCyAFIAEoAjAiAkkEQAwCCyAFIAdqIQcCQANAIA0tAAAhAwJ/IAUgAmsiBEEITwRAIAEgAyACIAQQMSABKAIEIQAgASgCAAwBC0EAIQBBACAERQ0AGgNAQQEgAyAAIAJqLQAARg0BGiACIABBAWoiAGogB0cNAAsgBCEAQQALQQFHDQEgASAAIAJqQQFqIgI2AjAgAiAJT0EAIAIgDE0bDQIgBSACTw0AC0EAIQMMAgsgASAFNgIwQQAhAwwBCyAJQQQQtQEACyABQdAAaiQAIAMLzAkBBX8jAEEQayIGJAACQCADRQ0AAkACQAJAAkACQAJAAkACQCADLQAARQRAIAYgATYCACAGIAEgAmoiAzYCBCAGIAM2AgwgBiABNgIIIAYgBkEIaiAEG0EEQQUgBBsRAgBBdmoOBAIBAQMBCyAEDQcgAkUEQEEAIQIMCQsgASACaiEDAkADQAJAIAMiAkF/aiIDLQAAIgRBGHRBGHUiBUF/Sg0AIAVBP3ECfyACQX5qIgMtAAAiBEEYdEEYdSIHQUBOBEAgBEEfcQwBCyAHQT9xAn8gAkF9aiIDLQAAIgRBGHRBGHUiCEFATgRAIARBD3EMAQsgCEE/cSACQXxqIgMtAABBB3FBBnRyC0EGdHILQQZ0ciIEQYCAxABHDQBBACECDAsLIARBIEYgBEF3akEFSXJFBEAgBEGAAUkNAiAEECxFDQILIAEgA0cNAAtBACECDAkLIAIgAWshAgwIC0EAIQMgBEUNAgwEC0EBIQUgBA0CIAYoAgwiAyAGKAIIRgRAQX8hAwwCCyAGIANBf2oiBDYCDCAELQAAIgRBGHRBGHUiBUF/TARAIAYgA0F+aiIENgIMAn8gBC0AACIEQRh0QRh1IgdBQE4EQCAEQR9xDAELIAYgA0F9aiIENgIMIAdBP3ECfyAELQAAIgRBGHRBGHUiCEFATgRAIARBD3EMAQsgBiADQXxqIgM2AgwgCEE/cSADLQAAQQdxQQZ0cgtBBnRyCyEEQX8hAyAFQT9xIARBBnRyIgRBgIDEAEYNAgtBfkF/IARBDUYbIQMMAQtBfyEDIARFDQAgBigCACIDIAYoAgRGBEBBASEFDAILIAYgA0EBajYCAAJAIAMtAAAiBEEYdEEYdUF/Sg0AIAYgA0ECajYCACADLQABQT9xIQUgBEEfcSEHIARB3wFNBEAgB0EGdCAFciEEDAELIAYgA0EDajYCACADLQACQT9xIAVBBnRyIQggBEHwAUkEQCAIIAdBDHRyIQQMAQsgBiADQQRqNgIAQQEhBSAHQRJ0QYCA8ABxIAMtAANBP3EgCEEGdHJyIgRBgIDEAEYNAgtBAkEBIARBCkYbIQUMAQsgAiADaiIERQRAQQAhAgwFCwJAIAQgAk8EQCADDQEgBCECDAYLIAEgBGosAABBv39MDQAgBCECDAULIAEgAkEAIAQQewALIAUgAk8EQCAFIAIiA0YNAQwCCyABIAVqLAAAQb9/TA0BIAUhAwsgASADaiEBIAIgA2shAgwCCyABIAIgBSACEHsACwJAIAJFBEAMAQsgASACaiEJIAEhAwNAAkACfyADIgQsAAAiBUF/SgRAIAVB/wFxIQUgBEEBagwBCyAELQABQT9xIQggBUEfcSEDIAVBX00EQCADQQZ0IAhyIQUgBEECagwBCyAELQACQT9xIAhBBnRyIQggBUFwSQRAIAggA0EMdHIhBSAEQQNqDAELIANBEnRBgIDwAHEgBC0AA0E/cSAIQQZ0cnIiBUGAgMQARg0BIARBBGoLIQMgBUEgRiAFQXdqQQVJckUEQCAFQYABSQ0DIAUQLEUNAwsgByAEayADaiEHIAMgCUcNAQsLIAIhBwsgASAHaiEBIAIgB2shAgsgACACNgIEIAAgATYCACAGQRBqJAALyAsBCH8jAEHgAGsiAyQAIABCATcCACAAQQhqIgRBADYCACAAQQBBEBBBIAQoAgAiBSAAKAIAaiIGQdSDwAApAAA3AAAgBCAFQRBqNgIAIAZBCGpB3IPAACkAADcAACADQQE2AiwgAyABKAIIQShqIgU2AiggAyAANgIYIANB3ABqQQE2AgAgA0ICNwJMIANB8IPAADYCSCADIANBKGo2AlgCQAJAAkACQAJAAkAgA0EYakGYisAAIANByABqEB5FBEAgAigCACEIAkAgAigCCCIBRQ0AIAFBBHQhCkGQhMAAIQZBACEBQQAhBANAAn8gASAIaiIHQQRqIgkgBygCAEUNABoCQCAERQ0AIANBEGogBCgCACAEKAIEQQAgBiAGLQAAQQJGG0EBEBAgA0EIaiADKAIQIAMoAhRBACAHQQ1qIgQgBC0AAEECRhtBABAQIANBGGogAygCCCADKAIMEBIgA0EBNgI0IANBATYCLCADIAU2AiggAyADQRhqNgIwIAMgADYCRCADQQI2AlwgA0IDNwJMIANBmITAADYCSCADIANBKGo2AlggA0HEAGpBmIrAACADQcgAahAeDQUgAygCHEUNACADKAIYEBULIAdBDmohBgJAIAdBDGotAABFBEAgA0ECNgIsIAMgCTYCKCADIAA2AhggA0EBNgJcIANCAjcCTCADQfSEwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQcgA0ECNgI0IANBoIXAADYCMCADQQE2AiwgAyAFNgIoIAMgADYCGCADQQI2AlwgA0IDNwJMIANBmITAADYCSCADIANBKGo2AlggA0EYakGYisAAIANByABqEB5FDQFBq4HAAEErIANByABqQdiBwABBqIXAABBSAAsgA0ECNgIsIAMgCTYCKCADIAA2AhggA0EBNgJcIANCAjcCTCADQcSEwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQcLQQALIQQgCiABQRBqIgFHDQALIARFDQAgAyAEKAIAIAQoAgRBACAGIAYtAABBAkYbQQEQECADQRhqIAMoAgAgAygCBBASIANBNGpBATYCACADQQE2AiwgAyAFNgIoIAMgA0EYajYCMCADIAA2AkQgA0HcAGpBAjYCACADQgM3AkwgA0GYhMAANgJIIAMgA0EoajYCWCADQcQAakGYisAAIANByABqEB4NBSADKAIcRQ0AIAMoAhgQFQsgAEEEaigCACAAQQhqIgQoAgAiAWtBJ00EQCAAIAFBKBBBIAQoAgAhAQsgBCABQShqNgIAIAAoAgAgAWoiAUHIhcAAKQAANwAAIAFBCGpB0IXAACkAADcAACABQRBqQdiFwAApAAA3AAAgAUEYakHghcAAKQAANwAAIAFBIGpB6IXAACkAADcAACADQTxqQQI2AgAgA0E0akEBNgIAIANBoIXAADYCOCADIAU2AjAgA0EBNgIsIAMgBTYCKCADIAA2AhggA0HcAGoiAUEDNgIAIANCBDcCTCADQZiGwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQUgA0EBNgIsIAMgBTYCKCADIAA2AhggAUEBNgIAIANCAjcCTCADQdCGwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQYgAkEEaigCAARAIAgQFQsgA0HgAGokAA8LQauBwABBKyADQcgAakHYgcAAQYCEwAAQUgALQauBwABBKyADQcgAakHYgcAAQbCEwAAQUgALQauBwABBKyADQcgAakHYgcAAQYSFwAAQUgALQauBwABBKyADQcgAakHYgcAAQdSEwAAQUgALQauBwABBKyADQcgAakHYgcAAQbiFwAAQUgALQauBwABBKyADQcgAakHYgcAAQbiGwAAQUgALQauBwABBKyADQcgAakHYgcAAQeCGwAAQUgAL7QkCCH8GfiMAQdAAayIDJAACQAJAAkAQVCIEBEAgA0EgakIANwMAIANBHGpBkIrAADYCACAEIAQpAwAiC0IBfDcDACADQQA2AhggAyALNwMIIAMgBEEIaikDADcDECADQqeAgIDwBDcDSCADQo2AgICgDjcDQCADQoqAgIDgDTcDOCADQtyAgIDACzcDMCADQQhqIANBMGoQGSADQQA2AjggA0IENwMwIAJFBEAgAEEANgIIIABCATcCAEEEIQRBBCEBDAQLIAEgAmohCEEAIQIDQAJ/IAEsAAAiBEF/SgRAIARB/wFxIQQgAUEBagwBCyABLQABQT9xIQUgBEEfcSEGIARBX00EQCAGQQZ0IAVyIQQgAUECagwBCyABLQACQT9xIAVBBnRyIQUgBEFwSQRAIAUgBkEMdHIhBCABQQNqDAELIAZBEnRBgIDwAHEgAS0AA0E/cSAFQQZ0cnIiBEGAgMQA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ASACIANqQQFqIgM2AhAgAyAHT0EAIAMgDE0bRQRAIAYgA08NAQwDCwsgB0EEELUBAAsgASAGNgIQCyABLQAkIAEoAgAiAiABKAIEIgRHckUNASABQQE6ACUgBCACawshAyAIRQ0AIAIgCGohCyADRQRAQQAhAgwBCyADQX9qIgEgAyABIAtqLQAAQQ1GGyECCyAAIAI2AgQgACALNgIAIAVBEGokAAv+BAEKfyMAQTBrIgMkACADQSRqIAE2AgAgA0EDOgAoIANCgICAgIAENwMIIAMgADYCICADQQA2AhggA0EANgIQAkACQAJAIAIoAggiCkUEQCACQRRqKAIAIgRFDQEgAigCACEBIAIoAhAhACAEQX9qQf////8BcUEBaiIHIQQDQCABQQRqKAIAIgUEQCADKAIgIAEoAgAgBSADKAIkKAIMEQMADQQLIAAoAgAgA0EIaiAAQQRqKAIAEQEADQMgAEEIaiEAIAFBCGohASAEQX9qIgQNAAsMAQsgAkEMaigCACIARQ0AIABBBXQhCyAAQX9qQf///z9xQQFqIQcgAigCACEBA0AgAUEEaigCACIABEAgAygCICABKAIAIAAgAygCJCgCDBEDAA0DCyADIAQgCmoiBUEcai0AADoAKCADIAVBBGopAgBCIIk3AwggBUEYaigCACEGIAIoAhAhCEEAIQlBACEAAkACQAJAIAVBFGooAgBBAWsOAgACAQsgBkEDdCAIaiIMKAIEQTdHDQEgDCgCACgCACEGC0EBIQALIAMgBjYCFCADIAA2AhAgBUEQaigCACEAAkACQAJAIAVBDGooAgBBAWsOAgACAQsgAEEDdCAIaiIGKAIEQTdHDQEgBigCACgCACEAC0EBIQkLIAMgADYCHCADIAk2AhggCCAFKAIAQQN0aiIAKAIAIANBCGogACgCBBEBAA0CIAFBCGohASALIARBIGoiBEcNAAsLQQAhACAHIAIoAgRJIgFFDQEgAygCICACKAIAIAdBA3RqQQAgARsiASgCACABKAIEIAMoAiQoAgwRAwBFDQELQQEhAAsgA0EwaiQAIAALwgQBCH8jAEHQAGsiBCQAIARBEGogASACIAMoAgAgA0EIaigCABAOAkACQAJAAkACQAJAIAQoAhBFBEAgBEEeai0AAA0EIARBxABqKAIAIQYgBCgCQCEHIARBHGot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AkAgAUGAAU8EQCACQQA2AgwgAUGAEEkNASABQYCABE8NAiACIAFBP3FBgAFyOgAOIAIgAUEMdkHgAXI6AAwgAiABQQZ2QT9xQYABcjoADUEDDAMLIAAoAggiAyAAQQRqKAIARgR/IAAgAxBAIAAoAggFIAMLIAAoAgBqIAE6AAAgACAAKAIIQQFqNgIIDAMLIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAELIAIgAUE/cUGAAXI6AA8gAiABQQZ2QT9xQYABcjoADiACIAFBDHZBP3FBgAFyOgANIAIgAUESdkEHcUHwAXI6AAxBBAshASAAQQRqKAIAIABBCGoiBCgCACIDayABSQRAIAAgAyABEEEgBCgCACEDCyAAKAIAIANqIAJBDGogARC5ARogBCABIANqNgIACyACQRBqJABBAAvVAgEDfyMAQRBrIgIkAAJAAn8CQCABQYABTwRAIAJBADYCDCABQYAQTw0BIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAILIAAoAggiAyAAQQRqKAIARgRAIAAgAxBDIAAoAgghAwsgACADQQFqNgIIIAAoAgAgA2ogAToAAAwCCyABQYCABE8EQCACIAFBP3FBgAFyOgAPIAIgAUEGdkE/cUGAAXI6AA4gAiABQQx2QT9xQYABcjoADSACIAFBEnZBB3FB8AFyOgAMQQQMAQsgAiABQT9xQYABcjoADiACIAFBDHZB4AFyOgAMIAIgAUEGdkE/cUGAAXI6AA1BAwshASAAQQRqKAIAIABBCGoiBCgCACIDayABSQRAIAAgAyABEEIgBCgCACEDCyAAKAIAIANqIAJBDGogARC5ARogBCABIANqNgIACyACQRBqJAAL1wIBA38jAEEQayICJAACQAJ/AkACQCABQYABTwRAIAJBADYCDCABQYAQSQ0BIAFBgIAETw0CIAIgAUE/cUGAAXI6AA4gAiABQQx2QeABcjoADCACIAFBBnZBP3FBgAFyOgANQQMMAwsgACgCCCIDIABBBGooAgBGBEAgACADEEMgACgCCCEDCyAAIANBAWo2AgggACgCACADaiABOgAADAMLIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAELIAIgAUE/cUGAAXI6AA8gAiABQQZ2QT9xQYABcjoADiAC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AiADKAIIIgRNBEAgASECDAELIARFBEBBASECIAEQFQwBCyABIAJBASAEEJkBIgJFDQMLIAAgBDYCBCAAIAI2AgAgA0EQaiQADwsQrQEACxCuAQALIARBARCzAQALrAEBA38jAEEQayIDJAACQAJAIAEEQCABKAIAIgJBf0YNASABIAJBAWo2AgAgAyABQRBqEGEgASABKAIAQX9qNgIAIAMoAgAhAQJAIAMoAgQiAiADKAIIIgRNBEAgASECDAELIARFBEBBASECIAEQFQwBCyABIAJBASAEEJkBIgJFDQMLIAAgBDYCBCAAIAI2AgAgA0EQaiQADwsQrQEACxCuAQALIARBARCzAQALrAEBA38jAEEQayIDJAACQAJAIAEEQCABKAIAIgJBf0YNASABIAJBAWo2AgAgAyABQSxqEGEgASABKAIAQX9qNgIAIAMoAgAhAQJAIAMoAgQiAiADKAIIIgRNBEAgASECDAELIARFBEBBASECIAEQFQwBCyABIAJBASAEEJkBIgJFDQMLIAAgBDYCBCAAIAI2AgAgA0EQaiQADwsQrQEACxCuAQALIARBARCzAQALrAEBA38jAEEwayICJAAgAUEEaiEDIAEoAgRFBEAgASgCACEBIAJBEGoiBEEANgIAIAJCATcDCCACIAJBCGo2AhQgAkEoaiABQRBqKQIANwMAIAJBIGogAUEIaikCADcDACACIAEpAgA3AxggAkEUakGAjsAAIAJBGGoQHhogA0EIaiAEKAIANgIAIAMgAikDCDcCAAsgAEHoj8AANgIEIAAgAzYCACACQTBqJAALkAEBAn8CQAJ/AkACQAJAAn9BASIDIAFBAEgNABogAigCCEUNAiACKAIEIgQNASABDQNBAQwECyEDQQAhAQwECyACKAIAIARBASABEJkBDAILIAENAEEBDAELIAFBARCeAQsiAgRAIAAgAjYCBEEAIQMMAQsgACABNgIEQQEhAQsgACADNgIAIABBCGogATYCAAunAQECfwJAAkACQAJAAkACQAJAAn8gAgRAQQEiBCABQQBIDQEaIAMoAghFDQMgAygCBCIFDQIgAQ0EDAYLIAAgATYCBEEBCyEEQQAhAQwGCyADKAIAIAUgAiABEJkBIgNFDQIMBAsgAUUNAgsgASACEJ4BIgMNAgsgACABNgIEIAIhAQwCCyACIQML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AX8jAEEwayICJAAgAiABNgIEIAIgADYCACACQRxqQQI2AgAgAkEsakEDNgIAIAJCAjcCDCACQfSWwAA2AgggAkEDNgIkIAIgAkEgajYCGCACIAJBBGo2AiggAiACNgIgIAJBCGpBhJfAABB0AAtsAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpBAzYCACADQgI3AgwgA0HAk8AANgIIIANBAzYCJCADIANBIGo2AhggAyADNgIoIAMgA0EEajYCICADQQhqIAIQdAALVgECfyMAQSBrIgIkACAAQRxqKAIAIQMgACgCGCACQRhqIAFBEGopAgA3AwAgAkEQaiABQQhqKQIANwMAIAIgASkCADcDCCADIAJBCGoQHiACQSBqJAALWQEBfyMAQSBrIgIkACACIAAoAgA2AgQgAkEYaiABQRBqKQIANwMAIAJBEGogAUEIaikCADcDACACIAEpAgA3AwggAkEEakGYisAAIAJBCGoQHiACQSBqJAALWQEBfyMAQSBrIgIkACACIAAoAgA2AgQgAkEYaiABQRBqKQIANwMAIAJBEGogAUEIaikCADcDACACIAEpAgA3AwggAkEEakGAjsAAIAJBCGoQHiACQSBqJAALZwAjAEEwayIBJABB2K3AAC0AAARAIAFBHGpBATYCACABQgI3AgwgAUH0jsAANgIIIAFBAzYCJCABIAA2AiwgASABQSBqNgIYIAEgAUEsajYCICABQQhqQZyPwAAQdAALIAFBMGokAAtZAQF/IwBBIGsiAiQAIAIgACgCADYCBCACQRhqIAFBEGopAgA3AwAgAkEQaiABQQhqKQIANwMAIAIgASkCADcDCCACQQRqQbSRwAAgAkEIahAeIAJBIGokAAtnAQJ/IAEoAgAhAwJAAkACQCABQQhqKAIAIgFFBEBBASECDAELIAFBf0wNASABQQEQngEiAkUNAgsgAiADIAEQuQEhAiAAIAE2AgggACABNgIEIAAgAjYCAA8LEHMACyABQQEQswEAC1YBAX8jAEEgayICJAAgAiAANgIEIAJBGGogAUEQaikCADcDACACQRBqIAFBCGopAgA3AwAgAiABKQIANwMIIAJBBGpBmIrAACACQQhqEB4gAkEgaiQAC1YBAX8CQCAABEAgACgCAA0BIABBfzYCACAAQQhqIgMoAgAEQCAAKAIEEBULIAAgATYCBCAAQQA2AgAgAEEMaiACNgIAIAMgAjYCAA8LEK0BAAsQrgEAC1YBAX8CQCAABEAgACgCAA0BIABBfzYCACAAQRRqIgMoAgAEQCAAKAIQEBULIAAgATYCECAAQQA2AgAgAEEYaiACNgIAIAMgAjYCAA8LEK0BAAsQrgEAC1YBAX8CQCAABEAgACgCAA0BIABBfzYCACAAQTBqIgMoAgAEQCAAKAIsEBULIAAgATYCLCAAQQA2AgAgAEE0aiACNgIAIAMgAjYCAA8LEK0BAAsQrgEAC1YBAX8jAEEQayIFJAAgASgCACACKAIAIAMoAgAgBCgCABAIIQEgBUEIahCDASAFKAIMIQIgACAFKAIIIgNBAEc2AgAgACACIAEgAxs2AgQgBUEQaiQAC08BAn8gACgCACIDQQRqKAIAIANBCGoiBCgCACIAayACSQRAIAMgACACEEEgBCgCACEACyADKAIAIABqIAEgAhC5ARogBCAAIAJqNgIAQQALTwECfyAAKAIAIgNBBGooAgAgA0EIaiIEKAIAIgBrIAJJBEAgAyAAIAIQQiAEKAIAIQALIAMoAgAgAGogASACELkBGiAEIAAgAmo2AgBBAAtRAQF/IwBBEGsiBCQAIAEoAgAgAigCACADKAIAEAchASAEQQhqEIMBIAQoAgwhAiAAIAQoAggiA0EARzYCACAAIAIgASADGzYCBCAEQRBqJAALSgECfyAAQQRqKAIAIABBCGoiBCgCACIDayACSQRAIAAgAyACEEEgBCgCACEDCyAAKAIAIANqIAEgAhC5ARogBCACIANqNgIAQQALPwEBfyMAQSBrIgAkACAAQRxqQQA2AgAgAEGwkMAANgIYIABCATcCDCAAQcyQwAA2AgggAEEIakGkkcAAEHQAC0MBA38CQCACRQ0AA0AgAC0AACIEIAEtAAAiBUYEQCAAQQFqIQAgAUEBaiEBIAJBf2oiAg0BDAILCyAEIAVrIQMLIAMLTAECfyMAQRBrIgMkACABKAIAIAIoAgAQAyEBIANBCGoQgwEgAygCDCECIAAgAygCCCIEQQBHNgIAIAAgAiABIAQbNgIEIANBEGokAAtLAAJAAn8gAUGAgMQARwRAQQEgACgCGCABIABBHGooAgAoAhARAQANARoLIAINAUEACw8LIAAoAhggAiADIABBHGooAgAoAgwRAwALRwEBfyMAQSBrIgIkACACQRRqQQA2AgAgAkGAk8AANgIQIAJCATcCBCACQSs2AhwgAiAANgIYIAIgAkEYajYCACACIAEQdAALRgECfyABKAIEIQIgASgCACEDQQhBBBCeASIBRQRAQQhBBBCzAQALIAEgAjYCBCABIAM2AgAgAEH4j8AANgIEIAAgATYCAAs5AQF/IAFBEHZAACECIABBADYCCCAAQQAgAUGAgHxxIAJBf0YiARs2AgQgAEEAIAJBEHQgARs2AgALZAEDfyMAQRBrIgEkACAAKAIMIgJFBEBBmI7AAEHIj8AAEG8ACyAAKAIIIgNFBEBBmI7AAEHYj8AAEG8ACyABIAI2AgggASAANgIEIAEgAzYCACABKAIAIAEoAgQgASgCCBBQAAs/AQF/IwBBIGsiACQAIABBHGpBADYCACAAQcyRwAA2AhggAEIBNwIMIABBjJLAADYCCCAAQQhqQZSSwAAQdAALPgEBfyMAQSBrIgIkACACQQE6ABggAiABNgIUIAIgADYCECACQfyTwAA2AgwgAkGAk8AANgIIIAJBCGoQcgALKwACQCAAQXxLDQAgAEUEQEEEDwsgACAAQX1JQQJ0EJ4BIgBFDQAgAA8LAAsiACMAQRBrIgAkACAAQQhqIAEQfSAAQQhqEFMgAEEQaiQACysAAkAgAARAIAAoAgANASAAQQA2AgAgAEEcaiABNgIADwsQrQEACxCuAQALKwACQCAABEAgACgCAA0BIABBADYCACAAQSBqIAE2AgAPCxCtAQALEK4BAAsrAAJAIAAEQCAAKAIADQEgAEEANgIAIABBJGogATYCAA8LEK0BAAsQrgEACysAAkAgAARAIAAoAgANASAAQQA2AgAgAEEoaiABNgIADwsQrQEACxCuAQALQAEBfyMAQRBrIgQkACAEIAM2AgwgBCACNgIIIAQgATYCBCAEIAA2AgAgBCgCACAEKAIEIAQoAgggBCgCDBATAAs3ACAAQQM6ACAgAEKAgICAgAQ3AgAgACABNgIYIABBADYCECAAQQA2AgggAEEcakHEh8AANgIACzUBAX8gASgCGEHDjsAAQQsgAUEcaigCACgCDBEDACECIABBADoABSAAIAI6AAQgACABNgIACyUAAkAgAARAIAAoAgBBf0YNASAAQRxqKAIADwsQrQEACxCuAQALJQACQCAABEAgACgCAEF/Rg0BIABBIGooAgAPCxCtAQALEK4BAAslAAJAIAAEQCAAKAIAQX9GDQEgAEEkaigCAA8LEK0BAAsQrgEACyUAAkAgAARAIAAoAgBBf0YNASAAQShqKAIADwsQrQEACxCuAQALJwAgACAAKAIEQQFxIAFyQQJyNgIEIAAgAWoiACAAKAIEQQFyNgIECzoBAn9B3K3AAC0AACEBQdytwABBADoAAEHgrcAAKAIAIQJB4K3AAEEANgIAIAAgAjYCBCAAIAE2AgALIAEBfwJAIAAoAgQiAUUNACAAQQhqKAIARQ0AIAEQFQsLHwACQCABQXxNBEAgACABQQQgAhCZASIADQELAAsgAAsjACACIAIoAgRBfnE2AgQgACABQQFyNgIEIAAgAWogATYCAAslACAARQRAQciMwABBMBCsAQALIAAgAiADIAQgBSABKAIQEQoACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQEQgACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQEQcACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQERUACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQERIACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQERQACx4AIAAgAUEDcjYCBCAAIAFqIgAgACgCBEEBcjYCBAsUACAAQQRqKAIABEAgACgCABAVCwshACAARQRAQciMwABBMBCsAQALIAAgAiADIAEoAhARBAALHwAgAEUEQEHIjMAAQTAQrAEACyAAIAIgASgCEBEBAAsZAQF/IAAoAhAiAQR/IAEFIABBFGooAgALCxkAIAAoAgAiACgCACAAQQhqKAIAIAEQtwELEgBBAEEZIABBAXZrIABBH0YbCxYAIAAgAUEBcjYCBCAAIAFqIAE2AgALHAAgASgCGEHgpsAAQQUgAUEcaigCACgCDBEDAAsTACAAKAIAIgBBJE8EQCAAEAALCxAAIAAgAWpBf2pBACABa3ELFAAgACgCACAAQQhqKAIAIAEQtwELDAAgACABIAIgAxAYCwsAIAEEQCAAEBULCw8AIABBAXQiAEEAIABrcgsUACAAKAIAIAEg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BAAAAAQAAAARAAAAEgAAABMAAABjYW5ub3QgYWNjZXNzIGEgVGhyZWFkIExvY2FsIFN0b3JhZ2UgdmFsdWUgZHVyaW5nIG9yIGFmdGVyIGRlc3RydWN0aW9uL3J1c3RjL2E1NWRkNzFkNWZiMGVjNWE2YTNhOWU4YzI3YjIxMjdiYTQ5MWNlNTIvbGlicmFyeS9zdGQvc3JjL3RocmVhZC9sb2NhbC5ycwAAAHYFEABPAAAApQEAABoAAAAUAAAAAAAAAAEAAAAVAAAAL3J1c3RjL2E1NWRkNzFkNWZiMGVjNWE2YTNhOWU4YzI3YjIxMjdiYTQ5MWNlNTIvbGlicmFyeS9jb3JlL3NyYy9zdHIvcGF0dGVybi5ycwDoBRAATwAAALcBAAAmAAAAY2xvc3VyZSBpbnZva2VkIHJlY3Vyc2l2ZWx5IG9yIGRlc3Ryb3llZCBhbHJlYWR5SnNWYWx1ZSgpAAAAeAYQAAgAAACABhAAAQAAAG51bGwgcG9pbnRlciBwYXNzZWQgdG8gcnVzdHJlY3Vyc2l2ZSB1c2Ugb2YgYW4gb2JqZWN0IGRldGVjdGVkIHdoaWNoIHdvdWxkIGxlYWQgdG8gdW5zYWZlIGFsaWFzaW5nIGluIHJ1c3QAACQAAAAEAAAABAAAACUAAAAmAAAAJwAAAGNhbGxlZCBgT3B0aW9uOjp1bndyYXAoKWAgb24gYSBgTm9uZWAgdmFsdWVBY2Nlc3NFcnJvcm1lbW9yeSBhbGxvY2F0aW9uIG9mICBieXRlcyBmYWlsZWQKAAAATgcQABUAAABjBxAADgAAAGxpYnJhcnkvc3RkL3NyYy9hbGxvYy5yc4QHEAAYAAAAUgEAAAkAAABsaWJyYXJ5L3N0ZC9zcmMvcGFuaWNraW5nLnJzrAcQABwAAABGAgAAHwAAAKwHEAAcAAAARwIAAB4AAAAoAAAADAAAAAQAAAApAAAAJAAAAAgAAAAEAAAAKgAAACsAAAAQAAAABAAAACwAAAAtAAAAJAAAAAgAAAAEAAAALgAAAC8AAABIYXNoIHRhYmxlIGNhcGFjaXR5IG92ZXJmbG93MAgQABwAAAAvY2FyZ28vcmVnaXN0cnkvc3JjL2dpdGh1Yi5jb20tMWVjYzYyOTlkYjllYzgyMy9oYXNoYnJvd24tMC4xMi4zL3NyYy9yYXcvbW9kLnJzAFQIEABPAAAAWgAAACgAAAAwAAAABAAAAAQAAAAxAAAAMgAAADMAAAAwAAAAAAAAAAEAAAAHAAAAbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc2NhcGFjaXR5IG92ZXJmbG93AAAA+AgQABEAAADcCBAAHAAAAAYCAAAFAAAAYSBmb3JtYXR0aW5nIHRyYWl0IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9ybGlicmFyeS9hbGxvYy9zcmMvZm10LnJzAFcJEAAYAAAAZAIAACAAAAAuLgAAgAkQAAIAAABpbmRleCBvdXQgb2YgYm91bmRzOiB0aGUgbGVuIGlzICBidXQgdGhlIGluZGV4IGlzIAAAjAkQACAAAACsCRAAEgAAAGNhbGxlZCBgT3B0aW9uOjp1bndyYXAoKWAgb24gYSBgTm9uZWAgdmFsdWUAOQAAAAAAAAABAAAAOgAAAGA6IACACRAAAAAAAA0KEAACAAAAfSB9MHgwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OXJhbmdlIHN0YXJ0IGluZGV4ICBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCAAAADtChAAEgAAAP8KEAAiAAAAbGlicmFyeS9jb3JlL3NyYy9zbGljZS9pbmRleC5ycwA0CxAAHwAAADQAAAAFAAAAcmFuZ2UgZW5kIGluZGV4IGQLEAAQAAAA/woQACIAAAA0CxAAHwAAAEkAAAAFAAAAc2xpY2UgaW5kZXggc3RhcnRzIGF0ICBidXQgZW5kcyBhdCAAlAsQABYAAACqCxAADQAAADQLEAAfAAAAXAAAAAUAAABsaWJyYXJ5L2NvcmUvc3JjL3N0ci9wYXR0ZXJuLnJzANgLEAAfAAAAGgYAABUAAADYCxAAHwAAAEgGAAAVAAAA2AsQAB8AAABJBgAA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");var Ci=class{async init(){await Jo(Qo);let e=new Rt("<%","%>","\0","*","-","_","tR");this.renderer=new cn(e)}async parse_commands(e,t){return this.renderer.render_content(e,t)}};var Ze;(function(a){a[a.CreateNewFromTemplate=0]="CreateNewFromTemplate",a[a.AppendActiveFile=1]="AppendActiveFile",a[a.OverwriteFile=2]="OverwriteFile",a[a.OverwriteActiveFile=3]="OverwriteActiveFile",a[a.DynamicProcessor=4]="DynamicProcessor",a[a.StartupTemplate=5]="StartupTemplate"})(Ze||(Ze={}));var ln=class{constructor(e){this.plugin=e;this.functions_generator=new Ei(this.plugin),this.parser=new Ci}async setup(){this.files_with_pending_templates=new Set,await this.parser.init(),await this.functions_generator.init(),this.plugin.registerMarkdownPostProcessor((e,t)=>this.process_dynamic_templates(e,t))}create_running_config(e,t,r){let i=wt(this.plugin.app);return{template_file:e,target_file:t,run_mode:r,active_file:i}}async read_and_parse_template(e){let t=await this.plugin.app.vault.read(e.template_file);return this.parse_template(e,t)}async parse_template(e,t){let r=await this.functions_generator.generate_object(e,Xe.USER_INTERNAL);return this.current_functions_object=r,await this.parser.parse_commands(t,r)}start_templater_task(e){this.files_with_pending_templates.add(e)}async end_templater_task(e){this.files_with_pending_templates.delete(e),this.files_with_pending_templates.size===0&&(this.plugin.app.workspace.trigger("templater:all-templates-executed"),await this.functions_generator.teardown())}async create_new_note_from_template(e,t,r,i=!0){if(!t)switch(this.plugin.app.vault.getConfig("newFileLocation")){case"current":{let _=wt(this.plugin.app);_&&(t=_.parent);break}case"folder":t=this.plugin.app.fileManager.getNewFileParent("");break;case"root":t=this.plugin.app.vault.getRoot();break;default:break}let o=e instanceof de.TFile&&e.extension||"md",a=await Se(async()=>{let m=t instanceof de.TFolder?t.path:t,_=this.plugin.app.vault.getAvailablePath((0,de.normalizePath)(`${m??""}/${r||"Untitled"}`),o),w=fr(_);return w&&!this.plugin.app.vault.getAbstractFileByPathInsensitive(w)&&await this.plugin.app.vault.createFolder(w),this.plugin.app.vault.create(_,"")},`Couldn't create ${o} file.`);if(a==null)return;let{path:l}=a;this.start_templater_task(l);let c,d;if(e instanceof de.TFile?(c=this.create_running_config(e,a,0),d=await Se(async()=>this.read_and_parse_template(c),"Template parsing error, aborting.")):(c=this.create_running_config(void 0,a,0),d=await Se(async()=>this.parse_template(c,e),"Template parsing error, aborting.")),d==null){await this.plugin.app.vault.delete(a),await this.end_templater_task(l);return}if(await this.plugin.app.vault.modify(a,d),this.plugin.app.workspace.trigger("templater:new-note-from-template",{file:a,content:d}),i){let m=this.plugin.app.workspace.getLeaf(!1);if(!m){oe(new D("No active leaf"));return}await m.openFile(a,{state:{mode:"source"}}),await this.plugin.editor_handler.jump_to_next_cursor_location(a,!0),m.setEphemeralState({rename:"all"})}return await this.end_templater_task(l),a}async append_template_to_active_file(e){let t=this.plugin.app.workspace.getActiveViewOfType(de.MarkdownView),r=this.plugin.app.workspace.activeEditor;if(!r||!r.file||!r.editor){oe(new D("No active editor, can't append templates."));return}let{path:i}=r.file;this.start_templater_task(i);let o=this.create_running_config(e,r.file,1),a=await Se(async()=>this.read_and_parse_template(o),"Template parsing error, aborting.");if(a==null){await this.end_templater_task(i);return}let{content:l,frontmatter:c}=wn(a),m=r.editor.getDoc(),_=m.listSelections();m.replaceSelection(l),t&&(Object.keys(c).length>0&&t instanceof de.MarkdownView&&typeof t.metadataEditor?.insertProperties=="function"&&t.metadataEditor.insertProperties(c),await vt(100),await t.save()),this.plugin.app.workspace.trigger("templater:template-appended",{view:t,editor:r,content:a,oldSelections:_,newSelections:m.listSelections()}),await this.plugin.editor_handler.jump_to_next_cursor_location(r.file,!0),await this.end_templater_task(i)}async write_template_to_file(e,t){let{path:r}=t;this.start_templater_task(r);let i=this.plugin.app.workspace.getActiveViewOfType(de.MarkdownView),o=this.plugin.app.workspace.activeEditor,a=wt(this.plugin.app),l=this.create_running_config(e,t,2),c=await Se(async()=>this.read_and_parse_template(l),"Template parsing error, aborting.");if(c==null){await this.end_templater_task(r);return}let{content:d,frontmatter:m}=wn(c);if(a?.path===t.path&&o&&o.editor&&i){let _="",{content:w,frontmatter:b}=wn(o.editor.getValue());dr(b,m),Object.keys(b).length>0&&(_+=`--- -${(0,de.stringifyYaml)(b)}--- -`),_+=w+d,o.editor.setValue(_),o.editor.setSelection({line:0,ch:0},{line:0,ch:0}),await vt(100),await i.save()}else await this.plugin.app.vault.process(t,_=>{let w="",{content:b,frontmatter:S}=wn(_);return dr(S,m),Object.keys(S).length>0&&(w+=`--- -${(0,de.stringifyYaml)(S)}--- -`),w+=b+d,c=w,w});this.plugin.app.workspace.trigger("templater:new-note-from-template",{file:t,content:c}),await this.plugin.editor_handler.jump_to_next_cursor_location(t,!0),await this.end_templater_task(r)}overwrite_active_file_commands(){let e=this.plugin.app.workspace.activeEditor;if(!e||!e.file){oe(new D("Active editor is null, can't overwrite content"));return}this.overwrite_file_commands(e.file,!0)}async overwrite_file_commands(e,t=!1){let{path:r}=e;this.start_templater_task(r);let i=this.create_running_config(e,e,t?3:2),o=await Se(async()=>this.read_and_parse_template(i),"Template parsing error, aborting.");if(o==null){await this.end_templater_task(r);return}await this.plugin.app.vault.modify(e,o),this.plugin.app.workspace.trigger("templater:overwrite-file",{file:e,content:o}),await this.plugin.editor_handler.jump_to_next_cursor_location(e,!0),await this.end_templater_task(r)}async process_dynamic_templates(e,t){let r=lo(),i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT),o,a=!1,l;for(;o=i.nextNode();){let c=o.nodeValue;if(c!==null){let d=r.exec(c);if(d!==null){let m=this.plugin.app.metadataCache.getFirstLinkpathDest("",t.sourcePath);if(!m||!(m instanceof de.TFile))return;if(!a){a=!0;let _=this.create_running_config(m,m,4);l=await this.functions_generator.generate_object(_,Xe.USER_INTERNAL),this.current_functions_object=l}}for(;d!=null;){let m=d[1]+d[2],_=await Se(async()=>await this.parser.parse_commands(m,l),`Command Parsing error in dynamic command '${m}'`);if(_==null)return;let w=r.lastIndex-d[0].length,b=r.lastIndex;c=c.substring(0,w)+_+c.substring(b),r.lastIndex+=_.length-d[0].length,d=r.exec(c)}o.nodeValue=c}}}get_new_file_template_for_folder(e){do{let t=this.plugin.settings.folder_templates.find(r=>r.folder==e.path);if(t&&t.template)return t.template;e=e.parent}while(e)}get_new_file_template_for_file(e){let t=this.plugin.settings.file_templates.find(r=>new RegExp(r.regex).test(e.path));if(t&&t.template)return t.template}static async on_file_creation(e,t,r){if(!(r instanceof de.TFile)||r.extension!=="md")return;let i=(0,de.normalizePath)(e.plugin.settings.templates_folder);if(r.path.includes(i)&&i!=="/"||(await vt(300),e.files_with_pending_templates.has(r.path)))return;let o=await t.vault.read(r),a=(0,de.getFrontMatterInfo)(o),l=o.length-a.contentStart;if(l==0&&e.plugin.settings.enable_folder_templates){let c=e.get_new_file_template_for_folder(r.parent);if(!c)return;let d=await Se(async()=>pt(t,c),`Couldn't find template ${c}`);if(d==null)return;await e.write_template_to_file(d,r)}else if(l==0&&e.plugin.settings.enable_file_templates){let c=e.get_new_file_template_for_file(r);if(!c)return;let d=await Se(async()=>pt(t,c),`Couldn't find template ${c}`);if(d==null)return;await e.write_template_to_file(d,r)}else{let c=1e5;r.stat.size<=c?await e.overwrite_file_commands(r):console.log(`Templater skipped parsing ${r.path} because file size exceeds ${c}`)}}async execute_startup_scripts(){for(let e of this.plugin.settings.startup_templates){if(!e)continue;let t=Ce(()=>pt(this.plugin.app,e),`Couldn't find startup template "${e}"`);if(!t)continue;let{path:r}=t;this.start_templater_task(r);let i=this.create_running_config(t,t,5);await Se(async()=>this.read_and_parse_template(i),"Startup Template parsing error, aborting."),await this.end_templater_task(r)}}};var pn=X(require("obsidian"));var Tr=class{constructor(e,t,r){this.plugin=e;this.templater=t;this.settings=r}setup(){this.plugin.app.workspace.onLayoutReady(()=>{if(this.settings.trigger_on_file_creation&&this.plugin.app.vault.getConfig("openBehavior")==="daily"){let t=this.plugin.app.internalPlugins.getEnabledPluginById("daily-notes");if(t){let{folder:r,format:i}=t.options,o=(0,pn.normalizePath)(`${r}/${(0,pn.moment)().format(i)}.md`),a=wt(this.plugin.app);a?.path===o&&ln.on_file_creation(this.templater,this.plugin.app,a)}}this.update_trigger_file_on_creation()}),this.update_syntax_highlighting(),this.update_file_menu()}update_syntax_highlighting(){let e=this.plugin.editor_handler.desktopShouldHighlight(),t=this.plugin.editor_handler.mobileShouldHighlight();e||t?this.plugin.editor_handler.enable_highlighter():this.plugin.editor_handler.disable_highlighter()}update_trigger_file_on_creation(){this.settings.trigger_on_file_creation?(this.trigger_on_file_creation_event=this.plugin.app.vault.on("create",e=>ln.on_file_creation(this.templater,this.plugin.app,e)),this.plugin.registerEvent(this.trigger_on_file_creation_event)):this.trigger_on_file_creation_event&&(this.plugin.app.vault.offref(this.trigger_on_file_creation_event),this.trigger_on_file_creation_event=void 0)}update_file_menu(){this.plugin.registerEvent(this.plugin.app.workspace.on("file-menu",(e,t)=>{t instanceof pn.TFolder&&e.addItem(r=>{r.setTitle("Create new note from template").setIcon("templater-icon").onClick(()=>{this.plugin.fuzzy_suggester.create_new_note_from_template(t)})})}))}};var Yt=X(require("obsidian"));var Pi=class{constructor(e){this.plugin=e}setup(){this.plugin.addCommand({id:"insert-templater",name:"Open insert template modal",icon:"templater-icon",hotkeys:Yt.Platform.isMacOS?void 0:[{modifiers:["Alt"],key:"e"}],callback:()=>{this.plugin.fuzzy_suggester.insert_template()}}),this.plugin.addCommand({id:"replace-in-file-templater",name:"Replace templates in the active file",icon:"templater-icon",hotkeys:Yt.Platform.isMacOS?void 0:[{modifiers:["Alt"],key:"r"}],callback:()=>{this.plugin.templater.overwrite_active_file_commands()}}),this.plugin.addCommand({id:"jump-to-next-cursor-location",name:"Jump to next cursor location",icon:"text-cursor",hotkeys:[{modifiers:["Alt"],key:"Tab"}],callback:()=>{this.plugin.editor_handler.jump_to_next_cursor_location()}}),this.plugin.addCommand({id:"create-new-note-from-template",name:"Create new note from template",icon:"templater-icon",hotkeys:Yt.Platform.isMacOS?void 0:[{modifiers:["Alt"],key:"n"}],callback:()=>{this.plugin.fuzzy_suggester.create_new_note_from_template()}}),this.register_templates_hotkeys(),this.register_cli_handler()}register_templates_hotkeys(){this.plugin.settings.enabled_templates_hotkeys.forEach(e=>{e&&this.add_template_hotkey(null,e)})}add_template_hotkey(e,t){if(this.remove_template_hotkey(e),t){let r=this.plugin.settings.templates_folder?this.plugin.settings.templates_folder.length+1:0,i=t.slice(r,-3);this.plugin.addCommand({id:t,name:`Insert ${i}`,icon:"templater-icon",callback:()=>{let o=Ce(()=>pt(this.plugin.app,t),"Couldn't find the template file associated with this hotkey");!o||this.plugin.templater.append_template_to_active_file(o)}}),this.plugin.addCommand({id:`create-${t}`,name:`Create ${i}`,icon:"templater-icon",callback:()=>{let o=Ce(()=>pt(this.plugin.app,t),"Couldn't find the template file associated with this hotkey");!o||this.plugin.templater.create_new_note_from_template(o)}})}}remove_template_hotkey(e){e&&(this.plugin.removeCommand(`${e}`),this.plugin.removeCommand(`create-${e}`))}register_cli_handler(){this.plugin.registerCliHandler("templater:create-from-template","Create a new note from a Templater template",{template:{value:"",description:"Template file path (relative to vault root or templates folder)",required:!0},file:{value:"",description:"Output file path (relative to vault root)",required:!0},open:{description:"Open the created file in the UI",required:!1}},async e=>this.handle_create_from_template(e))}resolve_template_file(e){let t=e;t.endsWith(".md")||(t=`${t}.md`);try{return pt(this.plugin.app,t)}catch{let r=this.plugin.settings.templates_folder;if(r){let i=(0,Yt.normalizePath)(`${r}/${t}`);return pt(this.plugin.app,i)}throw new Error(`Template "${e}" not found`)}}async handle_create_from_template(e){let{template:t,file:r,open:i}=e;if(!t)return"Error: template parameter is required";if(!r)return"Error: file parameter is required";try{let o=this.resolve_template_file(t),a=(0,Yt.normalizePath)(r),l=fr(a),c=a.slice(l.length+1).replace(/\.md$/,""),d;if(l)try{d=Wr(this.plugin.app,l)}catch{}let m=i==="true",_=await this.plugin.templater.create_new_note_from_template(o,d??l,c,m);return _?_.path:"Error: Failed to create note from template"}catch(o){return`Error: ${o instanceof Error?o.message:String(o)}`}}};var Ii=X(require("obsidian"));var Di=X(require("obsidian"));var Ni=class{constructor(e){this.app=e}async jump_to_next_cursor_location(){let e=this.app.workspace.activeEditor;if(!e?.editor)return;let t=e.editor.getValue(),{cursor_matches:r,positions:i}=this.get_cursor_matches_and_positions(t);if(!i||!r)return;let o=e instanceof Di.MarkdownView?e.currentMode.getFoldInfo():null,a=[];for(let l=r.length-1;l>=0;l--){let c=r[l],d=this.get_editor_position_from_index(t,c.index),m=this.get_editor_position_from_index(t,c.index+c[0].length);a.push({from:d,to:m,text:""})}e.editor.transaction({changes:a,selections:i.map(l=>({from:l}))}),o&&Array.isArray(o.folds)&&(i.forEach(l=>{o.folds=o.folds.filter(c=>c.from>l.line||c.to[0-9]*)\)\s*%>/g,r=Array.from(e.matchAll(t));if(r.length===0)return{};r.sort((d,m)=>Number(d.groups?.order||0)-Number(m.groups?.order||0));let i=r[0][0],o=r.filter(d=>d[0]===i),a=o[0][1]===""?[o[0]]:o,l=[],c=0;for(let d of a){let m=d.index-c;l.push(this.get_editor_position_from_index(e,m)),e=e.slice(0,m)+e.slice(m+d[0].length),c+=d[0].length}return{cursor_matches:a,positions:l}}};var ta=X(require("obsidian"));var ec={app:{name:"app",description:"This module exposes the app instance. Prefer to use this over the global app instance."},user:{name:"user",description:"This module exposes custom made scripts, written by yourself within the script file folder location"},config:{name:"config",description:`This module exposes Templater's running configuration. +`)}catch{console.error("Failed to parse summary section")}}function Do(r){if(!r)return"";try{return r.content.nodes[0].getChildNodes()[0].text.trim()}catch{return""}}function Po(r){try{return r.blocks.map(n=>{let i=n.parameterName,o=n.content.getChildNodes()[0].getChildNodes().filter(a=>a instanceof xe).map(a=>a.text).join(" ");return new Kn(i,o)})}catch{return[]}}function ze(r,e,t){if(t<0||t===r.length)return;let n=r[e];r[e]=r[t],r[t]=n}function Le(r){return r.workspace.activeEditor?.file??r.workspace.getActiveFile()}function sn(r){let e=r.lastIndexOf("/");return e!==-1?r.slice(0,e):""}function Et(r){return r!==null&&typeof r=="object"}function Wr(r){let e=r.toString(),t=e.indexOf("(");return e.substring(t+1,e.indexOf(")")).replace(/ /g,"").split(",")}function Un(r,e,t){let n=r instanceof HTMLOListElement?"li":"p",i=r.createEl(n),o=r.createEl("b",{text:e});return i.appendChild(o),i.appendChild(document.createTextNode(`: ${t}`)),i}function cn(r,e){if(Object.keys(e).length!==0){for(let t in e)if(e.hasOwnProperty(t))if(r.hasOwnProperty(t)){let n=r[t],i=e[t];if(Array.isArray(n)||Array.isArray(i)){let o=Array.isArray(n)?n:[n],a=Array.isArray(i)?i:[i];r[t]=o.concat(a).unique()}else Et(n)&&Et(i)?cn(n,i):i!=null&&i!==""&&(r[t]=i)}else r[t]=e[t]}}function kt(r){let e={},t=(0,re.getFrontMatterInfo)(r);return t.frontmatter&&(e=(0,re.parseYaml)(t.frontmatter)),{frontmatter:e,content:r.slice(t.contentStart)}}var ln=U(require("obsidian"));var me;(function(t){t[t.TemplateFiles=0]="TemplateFiles",t[t.ScriptFiles=1]="ScriptFiles"})(me||(me={}));var ct=class extends ln.AbstractInputSuggest{constructor(e,t,n){super(t.app,e);this.inputEl=e;this.plugin=t;this.mode=n}get_folder(e){switch(e){case 0:return this.plugin.settings.templates_folder;case 1:return this.plugin.settings.user_scripts_folder}}get_error_msg(e){switch(e){case 0:return"Templates folder doesn't exist";case 1:return"User Scripts folder doesn't exist"}}getSuggestions(e){let t=ce(()=>je(this.plugin.app,this.get_folder(this.mode)),this.get_error_msg(this.mode));if(!t)return[];let n=[],i=e.toLowerCase();return t.forEach(o=>{o instanceof ln.TFile&&o.extension==="md"&&o.path.toLowerCase().includes(i)&&n.push(o)}),n.slice(0,1e3)}renderSuggestion(e,t){t.setText(e.path)}selectSuggestion(e){this.setValue(e.path),this.inputEl.trigger("input"),this.close()}};var un=U(require("obsidian")),St=class extends un.AbstractInputSuggest{constructor(e,t){super(e,t);this.inputEl=t}getSuggestions(e){let t=this.app.vault.getAllLoadedFiles(),n=[],i=e.toLowerCase();return t.forEach(o=>{o instanceof un.TFolder&&o.path.toLowerCase().includes(i)&&n.push(o)}),n.slice(0,1e3)}renderSuggestion(e,t){t.setText(e.path)}selectSuggestion(e){this.setValue(e.path),this.inputEl.trigger("input"),this.close()}};var Pe;(function(o){o[o.Off=0]="Off",o[o.RenderDescriptionParameterReturn=1]="RenderDescriptionParameterReturn",o[o.RenderDescriptionParameterList=2]="RenderDescriptionParameterList",o[o.RenderDescriptionReturn=3]="RenderDescriptionReturn",o[o.RenderDescriptionOnly=4]="RenderDescriptionOnly"})(Pe||(Pe={}));function Qr(r){return isBoolean(r)?r:[1,3].includes(r)}function Xr(r){return isBoolean(r)?r:[1,2].includes(r)}function Zr(r){return isBoolean(r)?r:r!=0}var ei={command_timeout:5,templates_folder:"",templates_pairs:[["",""]],trigger_on_file_creation:!1,auto_jump_to_cursor:!1,enable_system_commands:!1,shell_path:"",user_scripts_folder:"",enable_folder_templates:!0,folder_templates:[{folder:"",template:""}],enable_file_templates:!1,file_templates:[{regex:".*",template:""}],syntax_highlighting:!0,syntax_highlighting_mobile:!1,enabled_templates_hotkeys:[""],startup_templates:[""],intellisense_render:Pe.RenderDescriptionParameterReturn},Gn=class extends N.PluginSettingTab{constructor(e){super(e.app,e);this.plugin=e;this.icon="templater-icon"}display(){this.containerEl.empty(),this.add_template_folder_setting(),this.add_internal_functions_setting(),this.add_syntax_highlighting_settings(),this.add_auto_jump_to_cursor(),this.add_trigger_on_new_file_creation_setting(),this.plugin.settings.trigger_on_file_creation&&(this.add_folder_templates_setting(),this.add_file_templates_setting()),this.add_templates_hotkeys_setting(),this.add_startup_templates_setting(),this.add_user_script_functions_setting(),this.add_user_system_command_functions_setting(),this.add_donating_setting()}add_template_folder_setting(){new N.Setting(this.containerEl).setName("Template folder location").setDesc("Files in this folder will be available as templates.").addSearch(e=>{new St(this.app,e.inputEl),e.setPlaceholder("Example: folder1/folder2").setValue(this.plugin.settings.templates_folder).onChange(t=>{t=t.trim(),t=t.replace(/\/$/,""),this.plugin.settings.templates_folder=t,this.plugin.save_settings()}),e.containerEl.addClass("templater_search")})}add_internal_functions_setting(){let e=document.createDocumentFragment();e.append("Templater provides multiples predefined variables / functions that you can use.",e.createEl("br"),"Check the ",e.createEl("a",{href:"https://silentvoid13.github.io/Templater/",text:"documentation"})," to get a list of all the available internal variables / functions."),new N.Setting(this.containerEl).setName("Internal variables and functions").setDesc(e)}add_syntax_highlighting_settings(){let e=document.createDocumentFragment();e.append("Adds syntax highlighting for Templater commands in edit mode.");let t=document.createDocumentFragment();t.append("Adds syntax highlighting for Templater commands in edit mode on mobile. Use with caution: this may break live preview on mobile platforms."),new N.Setting(this.containerEl).setName("Syntax highlighting on desktop").setDesc(e).addToggle(n=>{n.setValue(this.plugin.settings.syntax_highlighting).onChange(i=>{this.plugin.settings.syntax_highlighting=i,this.plugin.save_settings(),this.plugin.event_handler.update_syntax_highlighting()})}),new N.Setting(this.containerEl).setName("Syntax highlighting on mobile").setDesc(t).addToggle(n=>{n.setValue(this.plugin.settings.syntax_highlighting_mobile).onChange(i=>{this.plugin.settings.syntax_highlighting_mobile=i,this.plugin.save_settings(),this.plugin.event_handler.update_syntax_highlighting()})})}add_auto_jump_to_cursor(){let e=document.createDocumentFragment();e.append("Automatically triggers ",e.createEl("code",{text:"tp.file.cursor"})," after inserting a template.",e.createEl("br"),"You can also set a hotkey to manually trigger ",e.createEl("code",{text:"tp.file.cursor"}),"."),new N.Setting(this.containerEl).setName("Automatic jump to cursor").setDesc(e).addToggle(t=>{t.setValue(this.plugin.settings.auto_jump_to_cursor).onChange(n=>{this.plugin.settings.auto_jump_to_cursor=n,this.plugin.save_settings()})})}add_trigger_on_new_file_creation_setting(){let e=document.createDocumentFragment();e.append("Templater will listen for the new file creation event, and, if it matches a rule you've set, replace every command it finds in the new file's content. ","This makes Templater compatible with other plugins like the Daily note core plugin, Calendar plugin, Review plugin, Note refactor plugin, etc. ",e.createEl("br"),e.createEl("br"),"Make sure to set up rules under either folder templates or file regex template below.",e.createEl("br"),e.createEl("br"),e.createEl("b",{text:"Warning: "}),"This can be dangerous if you create new files with unknown / unsafe content on creation. Make sure that every new file's content is safe on creation."),new N.Setting(this.containerEl).setName("Trigger Templater on new file creation").setDesc(e).addToggle(t=>{t.setValue(this.plugin.settings.trigger_on_file_creation).onChange(n=>{this.plugin.settings.trigger_on_file_creation=n,this.plugin.save_settings(),this.plugin.event_handler.update_trigger_file_on_creation(),this.display()})})}add_templates_hotkeys_setting(){new N.Setting(this.containerEl).setName("Template hotkeys").setHeading();let e=document.createDocumentFragment();e.append("Template hotkeys allows you to bind a template to a hotkey."),new N.Setting(this.containerEl).setDesc(e),this.plugin.settings.enabled_templates_hotkeys.forEach((t,n)=>{new N.Setting(this.containerEl).addSearch(o=>{new ct(o.inputEl,this.plugin,me.TemplateFiles),o.setPlaceholder("Example: folder1/template_file").setValue(t).onChange(a=>{if(a&&this.plugin.settings.enabled_templates_hotkeys.contains(a)){V(new b("This template is already bound to a hotkey"));return}this.plugin.command_handler.add_template_hotkey(this.plugin.settings.enabled_templates_hotkeys[n],a),this.plugin.settings.enabled_templates_hotkeys[n]=a,this.plugin.save_settings()}),o.containerEl.addClass("templater_search")}).addExtraButton(o=>{o.setIcon("any-key").setTooltip("Configure Hotkey").onClick(()=>{this.app.setting.openTabById("hotkeys");let a=this.app.setting.activeTab;a.searchComponent.inputEl.value=t,a.updateHotkeyVisibility()})}).addExtraButton(o=>{o.setIcon("up-chevron-glyph").setTooltip("Move up").onClick(()=>{ze(this.plugin.settings.enabled_templates_hotkeys,n,n-1),this.plugin.save_settings(),this.display()})}).addExtraButton(o=>{o.setIcon("down-chevron-glyph").setTooltip("Move down").onClick(()=>{ze(this.plugin.settings.enabled_templates_hotkeys,n,n+1),this.plugin.save_settings(),this.display()})}).addExtraButton(o=>{o.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.command_handler.remove_template_hotkey(this.plugin.settings.enabled_templates_hotkeys[n]),this.plugin.settings.enabled_templates_hotkeys.splice(n,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new N.Setting(this.containerEl).addButton(t=>{t.setButtonText("Add new hotkey for template").setCta().onClick(()=>{this.plugin.settings.enabled_templates_hotkeys.push(""),this.plugin.save_settings(),this.display()})})}add_folder_templates_setting(){new N.Setting(this.containerEl).setName("Folder templates").setHeading();let e=document.createDocumentFragment();e.append("Folder templates are triggered when a new ",e.createEl("strong",{text:"empty "}),"file is created in a given folder.",e.createEl("br"),"Templater will fill the empty file with the specified template.",e.createEl("br"),"The deepest match is used. A global default template would be defined on the root ",e.createEl("code",{text:"/"}),"."),new N.Setting(this.containerEl).setDesc(e);let t=document.createDocumentFragment();t.append("When enabled, Templater will make use of the folder templates defined below. This option is mutually exclusive with file regex templates below, so enabling one will disable the other."),new N.Setting(this.containerEl).setName("Enable folder templates").setDesc(t).addToggle(n=>{n.setValue(this.plugin.settings.enable_folder_templates).onChange(i=>{this.plugin.settings.enable_folder_templates=i,i&&(this.plugin.settings.enable_file_templates=!1),this.plugin.save_settings(),this.display()})}),!!this.plugin.settings.enable_folder_templates&&(this.plugin.settings.folder_templates.forEach((n,i)=>{new N.Setting(this.containerEl).addSearch(a=>{new St(this.app,a.inputEl),a.setPlaceholder("Folder").setValue(n.folder).onChange(u=>{if(u&&this.plugin.settings.folder_templates.some(l=>l.folder==u)){V(new b("This folder already has a template associated with it"));return}this.plugin.settings.folder_templates[i].folder=u,this.plugin.save_settings()}),a.containerEl.addClass("templater_search")}).addSearch(a=>{new ct(a.inputEl,this.plugin,me.TemplateFiles),a.setPlaceholder("Template").setValue(n.template).onChange(u=>{this.plugin.settings.folder_templates[i].template=u,this.plugin.save_settings()}),a.containerEl.addClass("templater_search")}).addExtraButton(a=>{a.setIcon("up-chevron-glyph").setTooltip("Move up").onClick(()=>{ze(this.plugin.settings.folder_templates,i,i-1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("down-chevron-glyph").setTooltip("Move down").onClick(()=>{ze(this.plugin.settings.folder_templates,i,i+1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.settings.folder_templates.splice(i,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new N.Setting(this.containerEl).addButton(n=>{n.setButtonText("Add new folder template").setTooltip("Add additional folder template").setCta().onClick(()=>{this.plugin.settings.folder_templates.push({folder:"",template:""}),this.plugin.save_settings(),this.display()})}))}add_file_templates_setting(){new N.Setting(this.containerEl).setName("File regex templates").setHeading();let e=document.createDocumentFragment();e.append("File regex templates are triggered when a new ",e.createEl("strong",{text:"empty"})," file is created that matches one of them. Templater will fill the empty file with the specified template.",e.createEl("br"),"The first match from the top is used, so the order of the rules is important.",e.createEl("br"),"Use ",e.createEl("code",{text:".*"})," as a final catch-all, if you need it."),new N.Setting(this.containerEl).setDesc(e);let t=document.createDocumentFragment();t.append("When enabled, Templater will make use of the file regex templates defined below. This option is mutually exclusive with folder templates above, so enabling one will disable the other."),new N.Setting(this.containerEl).setName("Enable file regex templates").setDesc(t).addToggle(n=>{n.setValue(this.plugin.settings.enable_file_templates).onChange(i=>{this.plugin.settings.enable_file_templates=i,i&&(this.plugin.settings.enable_folder_templates=!1),this.plugin.save_settings(),this.display()})}),!!this.plugin.settings.enable_file_templates&&(this.plugin.settings.file_templates.forEach((n,i)=>{new N.Setting(this.containerEl).addText(a=>{a.setPlaceholder("File regex").setValue(n.regex).onChange(u=>{this.plugin.settings.file_templates[i].regex=u,this.plugin.save_settings()}),a.inputEl.addClass("templater_search")}).addSearch(a=>{new ct(a.inputEl,this.plugin,me.TemplateFiles),a.setPlaceholder("Template").setValue(n.template).onChange(u=>{this.plugin.settings.file_templates[i].template=u,this.plugin.save_settings()}),a.containerEl.addClass("templater_search")}).addExtraButton(a=>{a.setIcon("up-chevron-glyph").setTooltip("Move up").onClick(()=>{ze(this.plugin.settings.file_templates,i,i-1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("down-chevron-glyph").setTooltip("Move down").onClick(()=>{ze(this.plugin.settings.file_templates,i,i+1),this.plugin.save_settings(),this.display()})}).addExtraButton(a=>{a.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.settings.file_templates.splice(i,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new N.Setting(this.containerEl).addButton(n=>{n.setButtonText("Add new file regex").setTooltip("Add additional file regex").setCta().onClick(()=>{this.plugin.settings.file_templates.push({regex:"",template:""}),this.plugin.save_settings(),this.display()})}))}add_startup_templates_setting(){new N.Setting(this.containerEl).setName("Startup templates").setHeading();let e=document.createDocumentFragment();e.append("Startup templates are templates that will get executed once when Templater starts.",e.createEl("br"),"These templates won't output anything.",e.createEl("br"),"This can be useful to set up templates adding hooks to Obsidian events for example."),new N.Setting(this.containerEl).setDesc(e),this.plugin.settings.startup_templates.forEach((t,n)=>{new N.Setting(this.containerEl).addSearch(o=>{new ct(o.inputEl,this.plugin,me.TemplateFiles),o.setPlaceholder("Example: folder1/template_file").setValue(t).onChange(a=>{if(a&&this.plugin.settings.startup_templates.contains(a)){V(new b("This startup template already exist"));return}this.plugin.settings.startup_templates[n]=a,this.plugin.save_settings()}),o.containerEl.addClass("templater_search")}).addExtraButton(o=>{o.setIcon("cross").setTooltip("Delete").onClick(()=>{this.plugin.settings.startup_templates.splice(n,1),this.plugin.save_settings(),this.display()})}).infoEl.remove()}),new N.Setting(this.containerEl).addButton(t=>{t.setButtonText("Add new startup template").setCta().onClick(()=>{this.plugin.settings.startup_templates.push(""),this.plugin.save_settings(),this.display()})})}add_user_script_functions_setting(){new N.Setting(this.containerEl).setName("User script functions").setHeading();let e=document.createDocumentFragment();e.append("All JavaScript files in this folder will be loaded as CommonJS modules, to import custom user functions.",e.createEl("br"),"The folder needs to be accessible from the vault.",e.createEl("br"),"Check the ",e.createEl("a",{href:"https://silentvoid13.github.io/Templater/",text:"documentation"})," for more information."),new N.Setting(this.containerEl).setName("Script files folder location").setDesc(e).addSearch(n=>{new St(this.app,n.inputEl),n.setPlaceholder("Example: folder1/folder2").setValue(this.plugin.settings.user_scripts_folder).onChange(i=>{this.plugin.settings.user_scripts_folder=i,this.plugin.save_settings()}),n.containerEl.addClass("templater_search")}),new N.Setting(this.containerEl).setName("User script intellisense").setDesc("Determine how you'd like to have user script intellisense render. Note values will not render if not in the script.").addDropdown(n=>{n.addOption("0","Turn off intellisense").addOption("1","Render method description, parameters list, and return").addOption("2","Render method description and parameters list").addOption("3","Render method description and return").addOption("4","Render method description").setValue(this.plugin.settings.intellisense_render.toString()).onChange(i=>{this.plugin.settings.intellisense_render=parseInt(i),this.plugin.save_settings()})}),e=document.createDocumentFragment();let t;if(!this.plugin.settings.user_scripts_folder)t="No user scripts folder set";else{let n=ce(()=>je(this.app,this.plugin.settings.user_scripts_folder),"User scripts folder doesn't exist");if(!n||n.length===0)t="No user scripts detected";else{let i=0;for(let o of n)o.extension==="js"&&(i++,e.append(e.createEl("li",{text:`tp.user.${o.basename}`})));t=`Detected ${i} User Script(s)`}}new N.Setting(this.containerEl).setName(t).setDesc(e).addExtraButton(n=>{n.setIcon("sync").setTooltip("Refresh").onClick(()=>{this.display()})})}add_user_system_command_functions_setting(){let e=document.createDocumentFragment();if(e.append("Allows you to create user functions linked to system commands.",e.createEl("br"),e.createEl("b",{text:"Warning: "}),"It can be dangerous to execute arbitrary system commands from untrusted sources. Only run system commands that you understand, from trusted sources."),new N.Setting(this.containerEl).setName("User system command functions").setHeading(),new N.Setting(this.containerEl).setName("Enable user system command functions").setDesc(e).addToggle(t=>{t.setValue(this.plugin.settings.enable_system_commands).onChange(n=>{this.plugin.settings.enable_system_commands=n,this.plugin.save_settings(),this.display()})}),this.plugin.settings.enable_system_commands){new N.Setting(this.containerEl).setName("Timeout").setDesc("Maximum timeout in seconds for a system command.").addText(o=>{o.setPlaceholder("Timeout").setValue(this.plugin.settings.command_timeout.toString()).onChange(a=>{let u=Number(a);if(isNaN(u)){V(new b("Timeout must be a number"));return}this.plugin.settings.command_timeout=u,this.plugin.save_settings()})}),e=document.createDocumentFragment(),e.append("Full path to the shell binary to execute the command with.",e.createEl("br"),"This setting is optional and will default to the system's default shell if not specified.",e.createEl("br"),"You can use forward slashes ('/') as path separators on all platforms if in doubt."),new N.Setting(this.containerEl).setName("Shell binary location").setDesc(e).addText(o=>{o.setPlaceholder("Example: /bin/bash, ...").setValue(this.plugin.settings.shell_path).onChange(a=>{this.plugin.settings.shell_path=a,this.plugin.save_settings()})});let t=1;this.plugin.settings.templates_pairs.forEach(o=>{let a=this.containerEl.createEl("div");a.addClass("templater_div");let u=this.containerEl.createEl("h4",{text:"User function n\xB0"+t});u.addClass("templater_title"),new N.Setting(this.containerEl).addExtraButton(d=>{d.setIcon("cross").setTooltip("Delete").onClick(()=>{let h=this.plugin.settings.templates_pairs.indexOf(o);h>-1&&(this.plugin.settings.templates_pairs.splice(h,1),this.plugin.save_settings(),this.display())})}).addText(d=>{let h=d.setPlaceholder("Function name").setValue(o[0]).onChange(w=>{let E=this.plugin.settings.templates_pairs.indexOf(o);E>-1&&(this.plugin.settings.templates_pairs[E][0]=w,this.plugin.save_settings())});return h.inputEl.addClass("templater_template"),h}).addTextArea(d=>{let h=d.setPlaceholder("System command").setValue(o[1]).onChange(w=>{let E=this.plugin.settings.templates_pairs.indexOf(o);E>-1&&(this.plugin.settings.templates_pairs[E][1]=w,this.plugin.save_settings())});return h.inputEl.setAttr("rows",2),h.inputEl.addClass("templater_cmd"),h}).infoEl.remove(),a.appendChild(u),a.appendChild(this.containerEl.lastChild),t+=1});let n=this.containerEl.createEl("div");n.addClass("templater_div2"),new N.Setting(this.containerEl).addButton(o=>{o.setButtonText("Add new user function").setCta().onClick(()=>{this.plugin.settings.templates_pairs.push(["",""]),this.plugin.save_settings(),this.display()})}).infoEl.remove(),n.appendChild(this.containerEl.lastChild)}}add_donating_setting(){let e=new N.Setting(this.containerEl).setName("Donate").setDesc("If you like this Plugin, consider donating to support continued development."),t=document.createElement("a");t.setAttribute("href","https://github.com/sponsors/silentvoid13"),t.addClass("templater_donating");let n=document.createElement("img");n.src="https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86",t.appendChild(n);let i=document.createElement("a");i.setAttribute("href","https://www.paypal.com/donate?hosted_button_id=U2SRGAFYXT32Q"),i.addClass("templater_donating");let o=document.createElement("img");o.src="https://img.shields.io/badge/paypal-silentvoid13-yellow?style=social&logo=paypal",i.appendChild(o),e.settingEl.appendChild(t),e.settingEl.appendChild(i)}};var pn=U(require("obsidian"));var lt;(function(t){t[t.InsertTemplate=0]="InsertTemplate",t[t.CreateNoteTemplate=1]="CreateNoteTemplate"})(lt||(lt={}));var Rn=class extends pn.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder("Type name of a template...")}getItems(){if(!this.plugin.settings.templates_folder)return this.app.vault.getMarkdownFiles();let e=ce(()=>je(this.plugin.app,this.plugin.settings.templates_folder),`Couldn't retrieve template files from templates folder ${this.plugin.settings.templates_folder}`);return e||[]}getItemText(e){let t=e.path;if(e.path.startsWith(this.plugin.settings.templates_folder)&&(0,pn.normalizePath)(this.plugin.settings.templates_folder)!="/"){let n=this.plugin.settings.templates_folder.length,i;n===0?i=0:this.plugin.settings.templates_folder.endsWith("/")?i=n:i=n+1,t=e.path.slice(i)}return t.split(".").slice(0,-1).join(".")}onChooseItem(e){switch(this.open_mode){case 0:this.plugin.templater.append_template_to_active_file(e);break;case 1:this.plugin.templater.create_new_note_from_template(e,this.creation_folder);break}}start(){try{this.open()}catch(e){V(e)}}insert_template(){this.open_mode=0,this.start()}create_new_note_from_template(e){this.creation_folder=e,this.open_mode=1,this.start()}};var ti="Error_MobileUnsupportedTemplate",ni='';var Q=U(require("obsidian"));var Ne=U(require("obsidian"));var ne=class{constructor(e){this.plugin=e;this.static_functions=new Map;this.dynamic_functions=new Map}getName(){return this.name}async init(){await this.create_static_templates(),this.static_object=Object.fromEntries(this.static_functions)}async generate_object(e){return this.config=e,await this.create_dynamic_templates(),{...this.static_object,...Object.fromEntries(this.dynamic_functions)}}};var Vn=class extends ne{constructor(){super(...arguments);this.name="date"}async create_static_templates(){this.static_functions.set("now",this.generate_now()),this.static_functions.set("tomorrow",this.generate_tomorrow()),this.static_functions.set("weekday",this.generate_weekday()),this.static_functions.set("yesterday",this.generate_yesterday())}async create_dynamic_templates(){}async teardown(){}generate_now(){return(e="YYYY-MM-DD",t,n,i)=>{if(n&&!(0,Ne.moment)(n,i).isValid())throw new b("Invalid reference date format, try specifying one with the argument 'reference_format'");let o;return typeof t=="string"?o=Ne.moment.duration(t):typeof t=="number"&&(o=Ne.moment.duration(t,"days")),(0,Ne.moment)(n,i).add(o).format(e)}}generate_tomorrow(){return(e="YYYY-MM-DD")=>(0,Ne.moment)().add(1,"days").format(e)}generate_weekday(){return(e="YYYY-MM-DD",t,n,i)=>{if(n&&!(0,Ne.moment)(n,i).isValid())throw new b("Invalid reference date format, try specifying one with the argument 'reference_format'");return(0,Ne.moment)(n,i).weekday(t).format(e)}}generate_yesterday(){return(e="YYYY-MM-DD")=>(0,Ne.moment)().add(-1,"days").format(e)}};var J=U(require("obsidian"));var ri=10,zn=class extends ne{constructor(){super(...arguments);this.name="file";this.include_depth=0;this.create_new_depth=0;this.linkpath_regex=new RegExp("^\\[\\[(.*)\\]\\]$")}async create_static_templates(){this.static_functions.set("creation_date",this.generate_creation_date()),this.static_functions.set("create_new",this.generate_create_new()),this.static_functions.set("cursor",this.generate_cursor()),this.static_functions.set("cursor_append",this.generate_cursor_append()),this.static_functions.set("exists",this.generate_exists()),this.static_functions.set("find_tfile",this.generate_find_tfile()),this.static_functions.set("folder",this.generate_folder()),this.static_functions.set("include",this.generate_include()),this.static_functions.set("last_modified_date",this.generate_last_modified_date()),this.static_functions.set("move",this.generate_move()),this.static_functions.set("path",this.generate_path()),this.static_functions.set("rename",this.generate_rename()),this.static_functions.set("selection",this.generate_selection())}async create_dynamic_templates(){this.dynamic_functions.set("content",await this.generate_content()),this.dynamic_functions.set("tags",this.generate_tags()),this.dynamic_functions.set("title",this.generate_title())}async teardown(){}async generate_content(){return await this.plugin.app.vault.read(this.config.target_file)}generate_create_new(){return async(e,t,n=!1,i)=>{if(this.create_new_depth+=1,this.create_new_depth>ri)throw this.create_new_depth=0,new b("Reached create_new depth limit (max = 10)");let o=await this.plugin.templater.create_new_note_from_template(e,i,t,n);return this.create_new_depth-=1,o}}generate_creation_date(){return(e="YYYY-MM-DD HH:mm")=>(0,J.moment)(this.config.target_file.stat.ctime).format(e)}generate_cursor(){return e=>`<% tp.file.cursor(${e??""}) %>`}generate_cursor_append(){return e=>{let t=this.plugin.app.workspace.activeEditor;if(!t||!t.editor){V(new b("No active editor, can't append to cursor."));return}return t.editor.getDoc().replaceSelection(e),""}}generate_exists(){return async e=>{let t=(0,J.normalizePath)(e);return await this.plugin.app.vault.exists(t)}}generate_find_tfile(){return e=>{let t=(0,J.normalizePath)(e);return this.plugin.app.metadataCache.getFirstLinkpathDest(t,"")}}generate_folder(){return(e=!1)=>{let t=this.config.target_file.parent,n;return e?n=t.path:n=t.name,n}}generate_include(){return async e=>{if(this.include_depth+=1,this.include_depth>ri)throw this.include_depth-=1,new b("Reached inclusion depth limit (max = 10)");let t;if(e instanceof J.TFile)t=await this.plugin.app.vault.read(e);else{let n;if((n=this.linkpath_regex.exec(e))===null)throw this.include_depth-=1,new b("Invalid file format, provide an obsidian link between quotes.");let{path:i,subpath:o}=(0,J.parseLinktext)(n[1]),a=this.plugin.app.metadataCache.getFirstLinkpathDest(i,"");if(!a)throw this.include_depth-=1,new b(`File ${e} doesn't exist`);if(t=await this.plugin.app.vault.read(a),o){let u=this.plugin.app.metadataCache.getFileCache(a);if(u){let l=(0,J.resolveSubpath)(u,o);l&&(t=t.slice(l.start.offset,l.end?.offset))}}}try{let n=await this.plugin.templater.parser.parse_commands(t,this.plugin.templater.current_functions_object);return this.include_depth-=1,n}catch(n){throw this.include_depth-=1,n}}}generate_last_modified_date(){return(e="YYYY-MM-DD HH:mm")=>(0,J.moment)(this.config.target_file.stat.mtime).format(e)}generate_move(){return async(e,t)=>{let n=t||this.config.target_file,i=(0,J.normalizePath)(`${e}.${n.extension}`),o=i.replace(/\\/g,"/").split("/");if(o.pop(),o.length){let a=o.join("/");this.plugin.app.vault.getAbstractFileByPath(a)||await this.plugin.app.vault.createFolder(a)}return await this.plugin.app.fileManager.renameFile(n,i),""}}generate_path(){return(e=!1)=>{let t="";if(J.Platform.isMobile){let n=this.plugin.app.vault.adapter.fs.uri,i=this.plugin.app.vault.adapter.basePath;t=`${n}/${i}`}else if(this.plugin.app.vault.adapter instanceof J.FileSystemAdapter)t=this.plugin.app.vault.adapter.getBasePath();else throw new b("app.vault is not a FileSystemAdapter instance");return e?this.config.target_file.path:`${t}/${this.config.target_file.path}`}}generate_rename(){return async e=>{if(e.match(/[\\/:]+/g))throw new b("File name cannot contain any of these characters: \\ / :");let t=(0,J.normalizePath)(`${this.config.target_file.parent.path}/${e}.${this.config.target_file.extension}`);return await this.plugin.app.fileManager.renameFile(this.config.target_file,t),""}}generate_selection(){return()=>{let e=this.plugin.app.workspace.activeEditor;if(!e||!e.editor)throw new b("Active editor is null, can't read selection.");return e.editor.getSelection()}}generate_tags(){let e=this.plugin.app.metadataCache.getFileCache(this.config.target_file);return e?(0,J.getAllTags)(e):null}generate_title(){return this.config.target_file.basename}};var ii=U(require("obsidian"));var Jn=class extends ne{constructor(){super(...arguments);this.name="web"}async create_static_templates(){this.static_functions.set("daily_quote",this.generate_daily_quote()),this.static_functions.set("request",this.generate_request()),this.static_functions.set("random_picture",this.generate_random_picture())}async create_dynamic_templates(){}async teardown(){}async getRequest(e){try{let t=await(0,ii.requestUrl)(e);if(t.status<200&&t.status>=300)throw new b("Error performing GET request");return t}catch{throw new b("Error performing GET request")}}generate_daily_quote(){return async()=>{try{let t=(await this.getRequest("https://raw.githubusercontent.com/Zachatoo/quotes-database/refs/heads/main/quotes.json")).json,n=t[Math.floor(Math.random()*t.length)],{quote:i,author:o}=n;return`> [!quote] ${i} +> \u2014 ${o}`}catch{return new b("Error generating daily quote"),"Error generating daily quote"}}}generate_random_picture(){return async(e,t,n=!1)=>{try{let i=await this.getRequest(`https://templater-unsplash-2.fly.dev/${t?"?q="+t:""}`).then(a=>a.json),o=i.full;if(e&&!n)if(e.includes("x")){let[a,u]=e.split("x");o=o.concat(`&w=${a}&h=${u}`)}else o=o.concat(`&w=${e}`);return n?`![photo by ${i.photog}(${i.photogUrl}) on Unsplash|${e}](${o})`:`![photo by ${i.photog}(${i.photogUrl}) on Unsplash](${o})`}catch{return new b("Error generating random picture"),"Error generating random picture"}}}generate_request(){return async(e,t)=>{try{let i=await(await this.getRequest(e)).json;return t&&i?t.split(".").reduce((o,a)=>{if(o&&o.hasOwnProperty(a))return o[a];throw new Error(`Path ${t} not found in the JSON response`)},i):i}catch(n){throw console.error(n),new b("Error fetching and extracting value")}}}};var Wn=class extends ne{constructor(){super(...arguments);this.name="hooks";this.event_refs=[]}async create_static_templates(){this.static_functions.set("on_all_templates_executed",this.generate_on_all_templates_executed())}async create_dynamic_templates(){}async teardown(){this.event_refs.forEach(e=>{e.e.offref(e)}),this.event_refs=[]}generate_on_all_templates_executed(){return e=>{let t=this.plugin.app.workspace.on("templater:all-templates-executed",async()=>{await qe(1),e()});t&&this.event_refs.push(t)}}};var Qn=class extends ne{constructor(){super(...arguments);this.name="frontmatter"}async create_static_templates(){}async create_dynamic_templates(){let e=this.plugin.app.metadataCache.getFileCache(this.config.target_file);this.dynamic_functions=new Map(Object.entries(e?.frontmatter||{}))}async teardown(){}};var we=U(require("obsidian"));var Xn=class extends we.Modal{constructor(e,t,n,i){super(e);this.prompt_text=t;this.default_value=n;this.multi_line=i;this.submitted=!1}onOpen(){this.titleEl.setText(this.prompt_text),this.createForm()}onClose(){this.contentEl.empty(),this.submitted||this.reject(new b("Cancelled prompt"))}createForm(){let e=this.contentEl.createDiv();e.addClass("templater-prompt-div");let t;this.multi_line?t=new we.TextAreaComponent(e):t=new we.TextComponent(e);let n=this.contentEl.createDiv();n.addClass("templater-button-div");let i=new we.ButtonComponent(n);i.buttonEl.addClass("mod-cta"),i.setButtonText("Submit").onClick(o=>{this.resolveAndClose(o)}),this.value=this.default_value??"",t.inputEl.addClass("templater-prompt-input"),t.setPlaceholder("Type text here"),t.setValue(this.value),t.onChange(o=>this.value=o),t.inputEl.focus(),t.inputEl.addEventListener("keydown",o=>this.enterCallback(o))}enterCallback(e){e.isComposing||e.keyCode===229||(this.multi_line?we.Platform.isDesktop&&e.key==="Enter"&&!e.shiftKey&&this.resolveAndClose(e):e.key==="Enter"&&this.resolveAndClose(e))}resolveAndClose(e){this.submitted=!0,e.preventDefault(),this.resolve(this.value),this.close()}async openAndGetValue(e,t){this.resolve=e,this.reject=t,this.open()}};var oi=U(require("obsidian")),Zn=class extends oi.FuzzySuggestModal{constructor(e,t,n,i,o,a){super(e);this.text_items=t;this.items=n;this.default_value=a;this.submitted=!1;this.setPlaceholder(i),o&&(this.limit=o)}getItems(){return this.items}onOpen(){super.onOpen(),this.default_value!==void 0&&(this.inputEl.value=this.getItemText(this.default_value),this.inputEl.dispatchEvent(new InputEvent("input")))}onClose(){this.submitted||this.reject(new b("Cancelled prompt"))}selectSuggestion(e,t){this.submitted=!0,this.close(),this.onChooseSuggestion(e,t)}getItemText(e){return this.text_items instanceof Function?this.text_items(e):this.text_items[this.items.indexOf(e)]||"Undefined Text Item"}onChooseItem(e){this.resolve(e)}async openAndGetValue(e,t){this.resolve=e,this.reject=t,this.open()}};var le=U(require("obsidian")),er=class extends le.Modal{constructor(e,t,n,i,o,a){super(e);this.text_items=t;this.items=n;this.submitted=!1;this.selectedItems=[];this.setTitle(i),this.listEl=this.contentEl.createDiv("templater-multisuggester-list");let u=this.contentEl.createDiv("templater-multisuggester-div"),l=new le.TextComponent(u);l.inputEl.addClass("templater-multisuggester-input"),this.suggester=new ai(e,l.inputEl,this.getItemText.bind(this),n,o).onSelect(this.onChooseItem.bind(this));let d=this.contentEl.createDiv("modal-button-container");new le.ButtonComponent(d).setButtonText("Save").setCta().onClick(()=>this.save()),new le.ButtonComponent(d).setButtonText("Cancel").onClick(()=>this.close()),a&&(this.selectedItems=a)}onOpen(){this.processSelectedItems()}display(){this.listEl.empty(),this.selectedItems.forEach(e=>{let t=this.listEl.createDiv("mobile-option-setting-item");t.createSpan("mobile-option-setting-item-name").setText(this.getItemText(e)),t.createDiv("clickable-icon mobile-option-setting-item-option-icon",n=>{(0,le.setIcon)(n,"lucide-x"),n.addEventListener("click",()=>{this.onRemoveItem(e)})})})}getItemText(e){return this.text_items instanceof Function?this.text_items(e):this.text_items[this.items.indexOf(e)]||"Undefined Text Item"}onChooseItem(e){this.selectedItems.push(e),this.processSelectedItems()}processSelectedItems(){let e=this.items.filter(t=>!this.selectedItems.some(n=>n===t));this.suggester.setItems(e),this.display()}onRemoveItem(e){this.selectedItems=this.selectedItems.filter(n=>n!==e);let t=this.items.filter(n=>!this.selectedItems.some(i=>i===n));this.suggester.setItems(t),this.display()}save(){this.submitted=!0,this.close(),this.resolve(this.selectedItems)}onClose(){this.submitted||this.reject(new b("Cancelled prompt"))}async openAndGetValue(e,t){this.resolve=e,this.reject=t,this.open()}},ai=class extends le.AbstractInputSuggest{constructor(e,t,n,i,o){super(e,t);this.getItemText=n;this.items=i;o&&(this.limit=o)}getSuggestions(e){let t=(0,le.prepareFuzzySearch)(e);return this.items.reduce((n,i)=>{let o=this.getItemText(i);return t(o)&&n.push(i),n},[])}renderSuggestion(e,t){t.createDiv("suggestion-content").setText(this.getItemText(e))}setItems(e){this.items=e}selectSuggestion(e,t){this.setValue(""),this.close(),super.selectSuggestion(e,t)}};var tr=class extends ne{constructor(){super(...arguments);this.name="system"}async create_static_templates(){this.static_functions.set("clipboard",this.generate_clipboard()),this.static_functions.set("prompt",this.generate_prompt()),this.static_functions.set("suggester",this.generate_suggester()),this.static_functions.set("multi_suggester",this.generate_multi_suggester())}async create_dynamic_templates(){}async teardown(){}generate_clipboard(){return async()=>await navigator.clipboard.readText()}generate_prompt(){return async(e,t,n=!1,i=!1)=>{let o=new Xn(this.plugin.app,e,t,i),a=new Promise((u,l)=>o.openAndGetValue(u,l));try{return await a}catch(u){if(n)throw u;return null}}}generate_suggester(){return async(e,t,n=!1,i="",o,a)=>{let u=new Zn(this.plugin.app,e,t,i,o,a),l=new Promise((d,h)=>u.openAndGetValue(d,h));try{return await l}catch(d){if(n)throw d;return null}}}generate_multi_suggester(){return async(e,t,n=!1,i="",o,a)=>{let u=new er(this.plugin.app,e,t,i,o,a),l=new Promise((d,h)=>u.openAndGetValue(d,h));try{return await l}catch(d){if(n)throw d;return[]}}}};var nr=class extends ne{constructor(){super(...arguments);this.name="config"}async create_static_templates(){}async create_dynamic_templates(){}async teardown(){}async generate_object(e){return e}};var rr=class{constructor(e){this.plugin=e;this.modules_array=[];this.modules_array.push(new Vn(this.plugin)),this.modules_array.push(new zn(this.plugin)),this.modules_array.push(new Jn(this.plugin)),this.modules_array.push(new Qn(this.plugin)),this.modules_array.push(new Wn(this.plugin)),this.modules_array.push(new tr(this.plugin)),this.modules_array.push(new nr(this.plugin))}async init(){for(let e of this.modules_array)await e.init()}async teardown(){for(let e of this.modules_array)await e.teardown()}async generate_object(e){let t={};for(let n of this.modules_array)t[n.getName()]=await n.generate_object(e);return t}};var Ct=U(require("obsidian"));var ir=class{constructor(e){this.plugin=e;if(Ct.Platform.isMobile||!(this.plugin.app.vault.adapter instanceof Ct.FileSystemAdapter))this.cwd="";else{this.cwd=this.plugin.app.vault.adapter.getBasePath();let{promisify:t}=require("util"),{exec:n}=require("child_process");this.exec_promise=t(n)}}async generate_system_functions(e){let t=new Map,n=await this.plugin.templater.functions_generator.generate_object(e,ve.INTERNAL);for(let i of this.plugin.settings.templates_pairs){let o=i[0],a=i[1];!o||!a||(Ct.Platform.isMobile?t.set(o,()=>new Promise(u=>u(ti))):(a=await this.plugin.templater.parser.parse_commands(a,n),t.set(o,async u=>{let l={...process.env,...u},d={timeout:this.plugin.settings.command_timeout*1e3,cwd:this.cwd,env:l,...this.plugin.settings.shell_path&&{shell:this.plugin.settings.shell_path}};try{let{stdout:h}=await this.exec_promise(a,d);return h.trimRight()}catch(h){throw new b(`Error with User Template ${o}`,h)}})))}return t}async generate_object(e){let t=await this.generate_system_functions(e);return Object.fromEntries(t)}};var or=class{constructor(e){this.plugin=e}async generate_user_script_functions(){let e=new Map,t=ce(()=>je(this.plugin.app,this.plugin.settings.user_scripts_folder),`Couldn't find user script folder "${this.plugin.settings.user_scripts_folder}"`);if(!t)return new Map;for(let n of t)n.extension.toLowerCase()==="js"&&await this.load_user_script_function(n,e);return e}async load_user_script_function(e,t){let n=l=>window.require&&window.require(l),i={},o={exports:i},a=await this.plugin.app.vault.read(e);try{window.eval("(function anonymous(require, module, exports){"+a+` +})`)(n,o,i)}catch(l){throw new b(`Failed to load user script at "${e.path}".`,l.message)}let u=i.default??o.exports;if(!u)throw new b(`Failed to load user script at "${e.path}". No exports detected.`);if(typeof u=="function")t.set(e.basename,u);else if(typeof u=="object"&&u!==null){if(!Object.values(u).every(d=>typeof d=="function"))throw new b(`Exported object in "${e.path}" must contain only functions.`);t.set(e.basename,u)}else throw new b(`Invalid export in "${e.path}". Must be a function or object of functions.`)}async generate_object(){let e=await this.generate_user_script_functions();return Object.fromEntries(e)}};var ar=class{constructor(e){this.plugin=e;this.user_system_functions=new ir(e),this.user_script_functions=new or(e)}async generate_object(e){let t={},n={};return this.plugin.settings.enable_system_commands&&(t=await this.user_system_functions.generate_object(e)),this.plugin.settings.user_scripts_folder&&(n=await this.user_script_functions.generate_object()),{...t,...n}}};var No=U(require("obsidian")),ve;(function(t){t[t.INTERNAL=0]="INTERNAL",t[t.USER_INTERNAL=1]="USER_INTERNAL"})(ve||(ve={}));var sr=class{constructor(e){this.plugin=e;this.internal_functions=new rr(this.plugin),this.user_functions=new ar(this.plugin)}async init(){await this.internal_functions.init()}async teardown(){await this.internal_functions.teardown()}additional_functions(){return{app:this.plugin.app,obsidian:No}}async generate_object(e,t=1){let n={},i=this.additional_functions(),o=await this.internal_functions.generate_object(e),a={};switch(Object.assign(n,i),t){case 0:Object.assign(n,o);break;case 1:a=await this.user_functions.generate_object(e),Object.assign(n,{...o,user:a});break}return n}};var Ko={},T,he=new Array(32).fill(void 0);he.push(void 0,null,!0,!1);function ue(r){return he[r]}var Dt=he.length;function Mo(r){r<36||(he[r]=Dt,Dt=r)}function cr(r){let e=ue(r);return Mo(r),e}var si=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});si.decode();var fn=new Uint8Array;function dn(){return fn.byteLength===0&&(fn=new Uint8Array(T.memory.buffer)),fn}function He(r,e){return si.decode(dn().subarray(r,r+e))}function $e(r){Dt===he.length&&he.push(he.length+1);let e=Dt;return Dt=he[e],he[e]=r,e}var Ae=0,gn=new TextEncoder("utf-8"),Fo=typeof gn.encodeInto=="function"?function(r,e){return gn.encodeInto(r,e)}:function(r,e){let t=gn.encode(r);return e.set(t),{read:r.length,written:t.length}};function Me(r,e,t){if(t===void 0){let u=gn.encode(r),l=e(u.length);return dn().subarray(l,l+u.length).set(u),Ae=u.length,l}let n=r.length,i=e(n),o=dn(),a=0;for(;a127)break;o[i+a]=u}if(a!==n){a!==0&&(r=r.slice(a)),i=t(i,n,n=a+r.length*3);let u=dn().subarray(i+a,i+n);a+=Fo(r,u).written}return Ae=a,i}function Io(r){return r==null}var mn=new Int32Array;function pe(){return mn.byteLength===0&&(mn=new Int32Array(T.memory.buffer)),mn}function lr(r){let e=typeof r;if(e=="number"||e=="boolean"||r==null)return`${r}`;if(e=="string")return`"${r}"`;if(e=="symbol"){let i=r.description;return i==null?"Symbol":`Symbol(${i})`}if(e=="function"){let i=r.name;return typeof i=="string"&&i.length>0?`Function(${i})`:"Function"}if(Array.isArray(r)){let i=r.length,o="[";i>0&&(o+=lr(r[0]));for(let a=1;a1)n=t[1];else return toString.call(r);if(n=="Object")try{return"Object("+JSON.stringify(r)+")"}catch{return"Object"}return r instanceof Error?`${r.name}: ${r.message} +${r.stack}`:n}function Bo(r,e){if(!(r instanceof e))throw new Error(`expected instance of ${e.name}`);return r.ptr}var hn=32;function Oo(r){if(hn==1)throw new Error("out of js stack");return he[--hn]=r,hn}function ur(r,e){try{return r.apply(this,e)}catch(t){T.__wbindgen_exn_store($e(t))}}var Je=class{static __wrap(e){let t=Object.create(Je.prototype);return t.ptr=e,t}__destroy_into_raw(){let e=this.ptr;return this.ptr=0,e}free(){let e=this.__destroy_into_raw();T.__wbg_parserconfig_free(e)}get interpolate(){let e=T.__wbg_get_parserconfig_interpolate(this.ptr);return String.fromCodePoint(e)}set interpolate(e){T.__wbg_set_parserconfig_interpolate(this.ptr,e.codePointAt(0))}get execution(){let e=T.__wbg_get_parserconfig_execution(this.ptr);return String.fromCodePoint(e)}set execution(e){T.__wbg_set_parserconfig_execution(this.ptr,e.codePointAt(0))}get single_whitespace(){let e=T.__wbg_get_parserconfig_single_whitespace(this.ptr);return String.fromCodePoint(e)}set single_whitespace(e){T.__wbg_set_parserconfig_single_whitespace(this.ptr,e.codePointAt(0))}get multiple_whitespace(){let e=T.__wbg_get_parserconfig_multiple_whitespace(this.ptr);return String.fromCodePoint(e)}set multiple_whitespace(e){T.__wbg_set_parserconfig_multiple_whitespace(this.ptr,e.codePointAt(0))}constructor(e,t,n,i,o,a,u){let l=Me(e,T.__wbindgen_malloc,T.__wbindgen_realloc),d=Ae,h=Me(t,T.__wbindgen_malloc,T.__wbindgen_realloc),w=Ae,E=Me(u,T.__wbindgen_malloc,T.__wbindgen_realloc),M=Ae,I=T.parserconfig_new(l,d,h,w,n.codePointAt(0),i.codePointAt(0),o.codePointAt(0),a.codePointAt(0),E,M);return Je.__wrap(I)}get opening_tag(){try{let n=T.__wbindgen_add_to_stack_pointer(-16);T.parserconfig_opening_tag(n,this.ptr);var e=pe()[n/4+0],t=pe()[n/4+1];return He(e,t)}finally{T.__wbindgen_add_to_stack_pointer(16),T.__wbindgen_free(e,t)}}set opening_tag(e){let t=Me(e,T.__wbindgen_malloc,T.__wbindgen_realloc),n=Ae;T.parserconfig_set_opening_tag(this.ptr,t,n)}get closing_tag(){try{let n=T.__wbindgen_add_to_stack_pointer(-16);T.parserconfig_closing_tag(n,this.ptr);var e=pe()[n/4+0],t=pe()[n/4+1];return He(e,t)}finally{T.__wbindgen_add_to_stack_pointer(16),T.__wbindgen_free(e,t)}}set closing_tag(e){let t=Me(e,T.__wbindgen_malloc,T.__wbindgen_realloc),n=Ae;T.parserconfig_set_closing_tag(this.ptr,t,n)}get global_var(){try{let n=T.__wbindgen_add_to_stack_pointer(-16);T.parserconfig_global_var(n,this.ptr);var e=pe()[n/4+0],t=pe()[n/4+1];return He(e,t)}finally{T.__wbindgen_add_to_stack_pointer(16),T.__wbindgen_free(e,t)}}set global_var(e){let t=Me(e,T.__wbindgen_malloc,T.__wbindgen_realloc),n=Ae;T.parserconfig_set_global_var(this.ptr,t,n)}},ut=class{static __wrap(e){let t=Object.create(ut.prototype);return t.ptr=e,t}__destroy_into_raw(){let e=this.ptr;return this.ptr=0,e}free(){let e=this.__destroy_into_raw();T.__wbg_renderer_free(e)}constructor(e){Bo(e,Je);var t=e.ptr;e.ptr=0;let n=T.renderer_new(t);return ut.__wrap(n)}render_content(e,t){try{let a=T.__wbindgen_add_to_stack_pointer(-16),u=Me(e,T.__wbindgen_malloc,T.__wbindgen_realloc),l=Ae;T.renderer_render_content(a,this.ptr,u,l,Oo(t));var n=pe()[a/4+0],i=pe()[a/4+1],o=pe()[a/4+2];if(o)throw cr(i);return cr(n)}finally{T.__wbindgen_add_to_stack_pointer(16),he[hn++]=void 0}}};async function qo(r,e){if(typeof Response=="function"&&r instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(r,e)}catch(n){if(r.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",n);else throw n}let t=await r.arrayBuffer();return await WebAssembly.instantiate(t,e)}else{let t=await WebAssembly.instantiate(r,e);return t instanceof WebAssembly.Instance?{instance:t,module:r}:t}}function Lo(){let r={};return r.wbg={},r.wbg.__wbindgen_object_drop_ref=function(e){cr(e)},r.wbg.__wbindgen_string_new=function(e,t){let n=He(e,t);return $e(n)},r.wbg.__wbindgen_string_get=function(e,t){let n=ue(t),i=typeof n=="string"?n:void 0;var o=Io(i)?0:Me(i,T.__wbindgen_malloc,T.__wbindgen_realloc),a=Ae;pe()[e/4+1]=a,pe()[e/4+0]=o},r.wbg.__wbg_call_97ae9d8645dc388b=function(){return ur(function(e,t){let n=ue(e).call(ue(t));return $e(n)},arguments)},r.wbg.__wbg_new_8d2af00bc1e329ee=function(e,t){let n=new Error(He(e,t));return $e(n)},r.wbg.__wbg_message_fe2af63ccc8985bc=function(e){let t=ue(e).message;return $e(t)},r.wbg.__wbg_newwithargs_8fe23e3842840c8e=function(e,t,n,i){let o=new Function(He(e,t),He(n,i));return $e(o)},r.wbg.__wbg_call_168da88779e35f61=function(){return ur(function(e,t,n){let i=ue(e).call(ue(t),ue(n));return $e(i)},arguments)},r.wbg.__wbg_call_3999bee59e9f7719=function(){return ur(function(e,t,n,i){let o=ue(e).call(ue(t),ue(n),ue(i));return $e(o)},arguments)},r.wbg.__wbindgen_debug_string=function(e,t){let n=lr(ue(t)),i=Me(n,T.__wbindgen_malloc,T.__wbindgen_realloc),o=Ae;pe()[e/4+1]=o,pe()[e/4+0]=i},r.wbg.__wbindgen_throw=function(e,t){throw new Error(He(e,t))},r}function Ho(r,e){}function $o(r,e){return T=r.exports,ci.__wbindgen_wasm_module=e,mn=new Int32Array,fn=new Uint8Array,T}async function ci(r){typeof r=="undefined"&&(r=new URL("rusty_engine_bg.wasm",Ko.url));let e=Lo();(typeof r=="string"||typeof Request=="function"&&r instanceof Request||typeof URL=="function"&&r instanceof URL)&&(r=fetch(r)),Ho(e);let{instance:t,module:n}=await qo(await r,e);return $o(t,n)}var li=ci;var ui=Or("AGFzbQEAAAABvwEaYAJ/fwBgAn9/AX9gAX8Bf2ADf39/AX9gA39/fwBgAX8AYAV/f39/fwBgBH9/f38AYAR/f39/AX9gAABgBX9/f39/AX9gAX8BfmAAAX9gBn9/f39/fwBgB39/f39/f38AYAV/f35/fwBgBX9/fX9/AGAFf398f38AYAR/fn9/AGAFf35/f38AYAR/fX9/AGAEf3x/fwBgBn9/f39/fwF/YAd/f39/f39/AX9gCn9/f39/f39/f38Bf2ACfn8BfwLkAgsDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX25ldwABA3diZxVfX3diaW5kZ2VuX3N0cmluZ19nZXQAAAN3YmcbX193YmdfY2FsbF85N2FlOWQ4NjQ1ZGMzODhiAAEDd2JnGl9fd2JnX25ld184ZDJhZjAwYmMxZTMyOWVlAAEDd2JnHl9fd2JnX21lc3NhZ2VfZmUyYWY2M2NjYzg5ODViYwACA3diZyJfX3diZ19uZXd3aXRoYXJnc184ZmUyM2UzODQyODQwYzhlAAgDd2JnG19fd2JnX2NhbGxfMTY4ZGE4ODc3OWUzNWY2MQADA3diZxtfX3diZ19jYWxsXzM5OTliZWU1OWU5Zjc3MTkACAN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAAAN3YmcQX193YmluZGdlbl90aHJvdwAAA7kBtwECBwAGAgYEBAcBBQMKCAAEBgYAAwcCAAEADgETAQQXAQICAQAAAwcZAQAFAQwABgACAgAAAgAEBAAGAQAAAAAEBw0CAQUEBQYCDBgAAQAAAAQBAQEAAQABBAQEBgMDBwMJAwQIAAAABQkAAgEAAAAABwAAAgICAgAFBQMEFgoGEQ8QAAUHAwIBAgABBQEBCAACAQEBBQEAAgECAgACAQEBAgAJCQICAgIAAAAAAwMDAQECAgsLCwUEBQFwATs7BQMBABEGCQF/AUGAgMAACwfcBRkGbWVtb3J5AgAXX193YmdfcGFyc2VyY29uZmlnX2ZyZWUAUSJfX3diZ19nZXRfcGFyc2VyY29uZmlnX2ludGVycG9sYXRlAH4iX193Ymdfc2V0X3BhcnNlcmNvbmZpZ19pbnRlcnBvbGF0ZQB3IF9fd2JnX2dldF9wYXJzZXJjb25maWdfZXhlY3V0aW9uAH8gX193Ymdfc2V0X3BhcnNlcmNvbmZpZ19leGVjdXRpb24AeChfX3diZ19nZXRfcGFyc2VyY29uZmlnX3NpbmdsZV93aGl0ZXNwYWNlAIABKF9fd2JnX3NldF9wYXJzZXJjb25maWdfc2luZ2xlX3doaXRlc3BhY2UAeSpfX3diZ19nZXRfcGFyc2VyY29uZmlnX211bHRpcGxlX3doaXRlc3BhY2UAgQEqX193Ymdfc2V0X3BhcnNlcmNvbmZpZ19tdWx0aXBsZV93aGl0ZXNwYWNlAHoQcGFyc2VyY29uZmlnX25ldwBVGHBhcnNlcmNvbmZpZ19vcGVuaW5nX3RhZwBGHHBhcnNlcmNvbmZpZ19zZXRfb3BlbmluZ190YWcAYxhwYXJzZXJjb25maWdfY2xvc2luZ190YWcARxxwYXJzZXJjb25maWdfc2V0X2Nsb3NpbmdfdGFnAGQXcGFyc2VyY29uZmlnX2dsb2JhbF92YXIASBtwYXJzZXJjb25maWdfc2V0X2dsb2JhbF92YXIAZRNfX3diZ19yZW5kZXJlcl9mcmVlAE8McmVuZGVyZXJfbmV3ACAXcmVuZGVyZXJfcmVuZGVyX2NvbnRlbnQAORFfX3diaW5kZ2VuX21hbGxvYwB1El9fd2JpbmRnZW5fcmVhbGxvYwCFAR9fX3diaW5kZ2VuX2FkZF90b19zdGFja19wb2ludGVyAKsBD19fd2JpbmRnZW5fZnJlZQCaARRfX3diaW5kZ2VuX2V4bl9zdG9yZQCfAQllAQBBAQs6mAGdAaoBPzzBAZUBlgFOkgGOAWotYsEBwQFnKl3BAXaIAUyJAYgBhwGQAY8BiQGJAYwBigGLAZgBX8EBaKABXo4BvwG+AYQBOElwoQHBAWioAWCjAVclqQGcAcEBwAEK2dYCtwG8IAIPfwF+IwBBEGsiCyQAAkACQCAAQfUBTwRAQYCAfEEIQQgQlwFBFEEIEJcBakEQQQgQlwFqa0F3cUF9aiICQQBBEEEIEJcBQQJ0ayIBIAEgAksbIABNDQIgAEEEakEIEJcBIQRBrK7AACgCAEUNAUEAIARrIQMCQAJAAn9BACAEQYACSQ0AGkEfIARB////B0sNABogBEEGIARBCHZnIgBrdkEBcSAAQQF0a0E+agsiBkECdEG4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EBBBIAQoAgAiBSAAKAIAaiIGQdSDwAApAAA3AAAgBCAFQRBqNgIAIAZBCGpB3IPAACkAADcAACADQQE2AiwgAyABKAIIQShqIgU2AiggAyAANgIYIANB3ABqQQE2AgAgA0ICNwJMIANB8IPAADYCSCADIANBKGo2AlgCQAJAAkACQAJAAkAgA0EYakGYisAAIANByABqEB5FBEAgAigCACEIAkAgAigCCCIBRQ0AIAFBBHQhCkGQhMAAIQZBACEBQQAhBANAAn8gASAIaiIHQQRqIgkgBygCAEUNABoCQCAERQ0AIANBEGogBCgCACAEKAIEQQAgBiAGLQAAQQJGG0EBEBAgA0EIaiADKAIQIAMoAhRBACAHQQ1qIgQgBC0AAEECRhtBABAQIANBGGogAygCCCADKAIMEBIgA0EBNgI0IANBATYCLCADIAU2AiggAyADQRhqNgIwIAMgADYCRCADQQI2AlwgA0IDNwJMIANBmITAADYCSCADIANBKGo2AlggA0HEAGpBmIrAACADQcgAahAeDQUgAygCHEUNACADKAIYEBULIAdBDmohBgJAIAdBDGotAABFBEAgA0ECNgIsIAMgCTYCKCADIAA2AhggA0EBNgJcIANCAjcCTCADQfSEwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQcgA0ECNgI0IANBoIXAADYCMCADQQE2AiwgAyAFNgIoIAMgADYCGCADQQI2AlwgA0IDNwJMIANBmITAADYCSCADIANBKGo2AlggA0EYakGYisAAIANByABqEB5FDQFBq4HAAEErIANByABqQdiBwABBqIXAABBSAAsgA0ECNgIsIAMgCTYCKCADIAA2AhggA0EBNgJcIANCAjcCTCADQcSEwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQcLQQALIQQgCiABQRBqIgFHDQALIARFDQAgAyAEKAIAIAQoAgRBACAGIAYtAABBAkYbQQEQECADQRhqIAMoAgAgAygCBBASIANBNGpBATYCACADQQE2AiwgAyAFNgIoIAMgA0EYajYCMCADIAA2AkQgA0HcAGpBAjYCACADQgM3AkwgA0GYhMAANgJIIAMgA0EoajYCWCADQcQAakGYisAAIANByABqEB4NBSADKAIcRQ0AIAMoAhgQFQsgAEEEaigCACAAQQhqIgQoAgAiAWtBJ00EQCAAIAFBKBBBIAQoAgAhAQsgBCABQShqNgIAIAAoAgAgAWoiAUHIhcAAKQAANwAAIAFBCGpB0IXAACkAADcAACABQRBqQdiFwAApAAA3AAAgAUEYakHghcAAKQAANwAAIAFBIGpB6IXAACkAADcAACADQTxqQQI2AgAgA0E0akEBNgIAIANBoIXAADYCOCADIAU2AjAgA0EBNgIsIAMgBTYCKCADIAA2AhggA0HcAGoiAUEDNgIAIANCBDcCTCADQZiGwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQUgA0EBNgIsIAMgBTYCKCADIAA2AhggAUEBNgIAIANCAjcCTCADQdCGwAA2AkggAyADQShqNgJYIANBGGpBmIrAACADQcgAahAeDQYgAkEEaigCAARAIAgQFQsgA0HgAGokAA8LQauBwABBKyADQcgAakHYgcAAQYCEwAAQUgALQauBwABBKyADQcgAakHYgcAAQbCEwAAQUgALQauBwABBKyADQcgAakHYgcAAQYSFwAAQUgALQauBwABBKyADQcgAakHYgcAAQdSEwAAQUgALQauBwABBKyADQcgAakHYgcAAQbiFwAAQUgALQauBwABBKyADQcgAakHYgcAAQbiGwAAQUgALQauBwABBKyADQcgAakHYgcAAQeCGwAAQUgAL7QkCCH8GfiMAQdAAayIDJAACQAJAAkAQVCIEBEAgA0EgakIANwMAIANBHGpBkIrAADYCACAEIAQpAwAiC0IBfDcDACADQQA2AhggAyALNwMIIAMgBEEIaikDADcDECADQqeAgIDwBDcDSCADQo2AgICgDjcDQCADQoqAgIDgDTcDOCADQtyAgIDACzcDMCADQQhqIANBMGoQGSADQQA2AjggA0IENwMwIAJFBEAgAEEANgIIIABCATcCAEEEIQRBBCEBDAQLIAEgAmohCEEAIQIDQAJ/IAEsAAAiBEF/SgRAIARB/wFxIQQgAUEBagwBCyABLQABQT9xIQUgBEEfcSEGIARBX00EQCAGQQZ0IAVyIQQgAUECagwBCyABLQACQT9xIAVBBnRyIQUgBEFwSQRAIAUgBkEMdHIhBCABQQNqDAELIAZBEnRBgIDwAHEgAS0AA0E/cSAFQQZ0cnIiBEGAgMQA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ASACIANqQQFqIgM2AhAgAyAHT0EAIAMgDE0bRQRAIAYgA08NAQwDCwsgB0EEELUBAAsgASAGNgIQCyABLQAkIAEoAgAiAiABKAIEIgRHckUNASABQQE6ACUgBCACawshAyAIRQ0AIAIgCGohCyADRQRAQQAhAgwBCyADQX9qIgEgAyABIAtqLQAAQQ1GGyECCyAAIAI2AgQgACALNgIAIAVBEGokAAv+BAEKfyMAQTBrIgMkACADQSRqIAE2AgAgA0EDOgAoIANCgICAgIAENwMIIAMgADYCICADQQA2AhggA0EANgIQAkACQAJAIAIoAggiCkUEQCACQRRqKAIAIgRFDQEgAigCACEBIAIoAhAhACAEQX9qQf////8BcUEBaiIHIQQDQCABQQRqKAIAIgUEQCADKAIgIAEoAgAgBSADKAIkKAIMEQMADQQLIAAoAgAgA0EIaiAAQQRqKAIAEQEADQMgAEEIaiEAIAFBCGohASAEQX9qIgQNAAsMAQsgAkEMaigCACIARQ0AIABBBXQhCyAAQX9qQf///z9xQQFqIQcgAigCACEBA0AgAUEEaigCACIABEAgAygCICABKAIAIAAgAygCJCgCDBEDAA0DCyADIAQgCmoiBUEcai0AADoAKCADIAVBBGopAgBCIIk3AwggBUEYaigCACEGIAIoAhAhCEEAIQlBACEAAkACQAJAIAVBFGooAgBBAWsOAgACAQsgBkEDdCAIaiIMKAIEQTdHDQEgDCgCACgCACEGC0EBIQALIAMgBjYCFCADIAA2AhAgBUEQaigCACEAAkACQAJAIAVBDGooAgBBAWsOAgACAQsgAEEDdCAIaiIGKAIEQTdHDQEgBigCACgCACEAC0EBIQkLIAMgADYCHCADIAk2AhggCCAFKAIAQQN0aiIAKAIAIANBCGogACgCBBEBAA0CIAFBCGohASALIARBIGoiBEcNAAsLQQAhACAHIAIoAgRJIgFFDQEgAygCICACKAIAIAdBA3RqQQAgARsiASgCACABKAIEIAMoAiQoAgwRAwBFDQELQQEhAAsgA0EwaiQAIAALwgQBCH8jAEHQAGsiBCQAIARBEGogASACIAMoAgAgA0EIaigCABAOAkACQAJAAkACQAJAIAQoAhBFBEAgBEEeai0AAA0EIARBxABqKAIAIQYgBCgCQCEHIARBHGotAABFIQggBCgCFCEDA0ACQCADRQ0AIAYgA00EQCADIAZGDQEMCQsgAyAHaiwAAEFASA0ICyADIAZGDQICfyADIAdqIgksAAAiBUF/TARAIAktAAFBP3EiCiAFQR9xIgtBBnRyIAVBYEkNARogCS0AAkE/cSAKQQZ0ciIKIAtBDHRyIAVBcEkNARogC0ESdEGAgPAAcSAJLQADQT9xIApBBnRycgwBCyAFQf8BcQshBSAIRQRAIAMhBgwECyAFQYCAxABGDQQCf0EBIAVBgAFJDQAaQQIgBUGAEEkNABpBA0EEIAVBgIAESRsLIANqIQNBACEIDAALAAsgBEEYaiEDIARBzABqKAIAIQYgBEHEAGooAgAhBSAEKAJIIQcgBCgCQCEIIARBNGooAgBBf0cEQCAEIAMgCCAFIAcgBkEAECQMBQsgBCADIAggBSAHIAZBARAkDAQLIAgNAQsgBEEIaiAGNgIAIAQgBjYCBCAEQQE2AgAMAgsgBEEBOgAeCyAEQQA2AgALAkAgBCgCAARAIAQoAgQhAyAAQQxqIAIgBEEIaigCACICazYCACAAQQhqIAEgAmo2AgAgACADNgIEIAAgATYCAAwBCyAAQQA2AgALIARB0ABqJAAPCyAHIAYgAyAGEHsAC5QEAQ1/IwBBsAFrIgEkAAJAAkAgAARAIAAoAgANASAAQQA2AgAgAUGIAWoiAiAAQRBqKQIANwMAIAFBgAFqIgMgAEEIaikCADcDACABQZABaiIEIABBGGopAgA3AwAgAUGYAWoiBSAAQSBqKQIANwMAIAFBoAFqIgYgAEEoaikCADcDACABQagBaiIHIABBMGopAgA3AwAgAUEQaiIIIAFBhAFqKQIANwMAIAFBGGoiCSABQYwBaikCADcDACABQSBqIgogAUGUAWopAgA3AwAgAUEoaiILIAFBnAFqKQIANwMAIAFBMGoiDCABQaQBaikCADcDACABQThqIg0gAUGsAWooAgA2AgAgASAAKQIANwN4IAEgASkCfDcDCCAAEBUgAUHwAGogDSgCADYCACABQegAaiAMKQMANwMAIAFB4ABqIAspAwA3AwAgAUHYAGogCikDADcDACABQdAAaiAJKQMANwMAIAFByABqIAgpAwA3AwAgASABKQMINwNAIAFB+ABqIAFBQGsQOkE8QQQQngEiAEUNAiAAQQA2AgAgACABKQN4NwIEIABBDGogAykDADcCACAAQRRqIAIpAwA3AgAgAEEcaiAEKQMANwIAIABBJGogBSkDADcCACAAQSxqIAYpAwA3AgAgAEE0aiAHKQMANwIAIAFBsAFqJAAgAA8LEK0BAAsQrgEAC0E8QQQQswEAC9cEAQR/IAAgARC6ASECAkACQAJAIAAQsAENACAAKAIAIQMCQCAAEKUBRQRAIAEgA2ohASAAIAMQuwEiAEHAscAAKAIARw0BIAIoAgRBA3FBA0cNAkG4scAAIAE2AgAgACABIAIQhgEPCyABIANqQRBqIQAMAgsgA0GAAk8EQCAAEDUMAQsgAEEMaigCACIEIABBCGooAgAiBUcEQCAFIAQ2AgwgBCAFNgIIDAELQaiuwABBqK7AACgCAEF+IANBA3Z3cTYCAAsgAhCiAQRAIAAgASACEIYBDAILAkBBxLHAACgCACACRwRAIAJBwLHAACgCAEcNAUHAscAAIAA2AgBBuLHAAEG4scAAKAIAIAFqIgE2AgAgACABEJQBDwtBxLHAACAANgIAQbyxwABBvLHAACgCACABaiIBNgIAIAAgAUEBcjYCBCAAQcCxwAAoAgBHDQFBuLHAAEEANgIAQcCxwABBADYCAA8LIAIQrwEiAyABaiEBAkAgA0GAAk8EQCACEDUMAQsgAkEMaigCACIEIAJBCGooAgAiAkcEQCACIAQ2AgwgBCACNgIIDAELQaiuwABBqK7AACgCAEF+IANBA3Z3cTYCAAsgACABEJQBIABBwLHAACgCAEcNAUG4scAAIAE2AgALDwsgAUGAAk8EQCAAIAEQNA8LIAFBA3YiAkEDdEGwrsAAaiEBAn9BqK7AACgCACIDQQEgAnQiAnEEQCABKAIIDAELQaiuwAAgAiADcjYCACABCyECIAEgADYCCCACIAA2AgwgACABNgIMIAAgAjYCCAuYBAIDfwZ+IABBHGooAgBFBEBBAA8LIABBEGooAgAiAiAAQQhqKQMAIgUgASgCACIErUKAgICAgICAgASEIgaFQvPK0cunjNmy9ACFIgdCEIkgByAAKQMAIghC4eSV89bs2bzsAIV8IgeFIgkgBULt3pHzlszct+QAhSIFIAhC9crNg9es27fzAIV8IghCIIl8IgogBoUgByAFQg2JIAiFIgV8IgYgBUIRiYUiBXwiByAFQg2JhSIFIAlCFYkgCoUiCCAGQiCJQv8BhXwiBnwiCSAFQhGJhSIFQg2JIAUgCEIQiSAGhSIGIAdCIIl8Igd8IgWFIghCEYkgCCAGQhWJIAeFIgYgCUIgiXwiB3wiCIUiCUINiSAJIAZCEIkgB4UiBiAFQiCJfCIFfIUiByAGQhWJIAWFIgUgCEIgiXwiBnwiCCAFQhCJIAaFQhWJhSAHQhGJhSAIQiCIhSIFp3EhASAFQhmIQv8Ag0KBgoSIkKDAgAF+IQcgAEEUaigCACEAA0AgACABaikAACIGIAeFIgVCf4UgBUL//fv379+//358g0KAgYKEiJCgwIB/gyEFAkADQCAFUARAIAYgBkIBhoNCgIGChIiQoMCAf4NQDQJBAA8LIAV6IQggBUJ/fCAFgyEFIAAgCKdBA3YgAWogAnFBA3RrQXhqKAIAIARHDQALQQEPCyABIANBCGoiA2ogAnEhAQwACwAL4QMBCH8jAEEgayIEJAAgAUEUaigCACEJIAEoAgAhBQJAIAFBBGooAgAiB0EDdEUEQAwBCyAHQX9qQf////8BcSICQQFqIgNBB3EhBgJ/IAJBB0kEQEEAIQMgBQwBCyAFQTxqIQIgA0H4////A3EhCEEAIQMDQCACKAIAIAJBeGooAgAgAkFwaigCACACQWhqKAIAIAJBYGooAgAgAkFYaigCACACQVBqKAIAIAJBSGooAgAgA2pqampqampqIQMgAkFAayECIAhBeGoiCA0ACyACQURqCyAGRQ0AQQRqIQIDQCACKAIAIANqIQMgAkEIaiECIAZBf2oiBg0ACwsCQAJAAkAgCUUEQCADIQIMAQsCQCAHRQ0AIAUoAgQNACADQRBJDQILIAMgA2oiAiADSQ0BCyACRQ0AAkAgAkF/SgRAIAJBARCeASIDRQ0BDAMLEHMACyACQQEQswEAC0EBIQNBACECCyAAQQA2AgggACACNgIEIAAgAzYCACAEIAA2AgQgBEEYaiABQRBqKQIANwMAIARBEGogAUEIaikCADcDACAEIAEpAgA3AwggBEEEakG0kcAAIARBCGoQHkUEQCAEQSBqJAAPC0GkksAAQTMgBEEIakHMkcAAQfCSwAAQUgALzwMCDX8BfgJAIAVBf2oiDSABKAIUIghqIgcgA0kEQEEAIAEoAggiCmshDiAFIAEoAhAiD2shECABKAIcIQsgASkDACEUA0ACQAJAAkAgFCACIAdqMQAAiEIBg1BFBEAgCiAKIAsgCiALSxsgBhsiCSAFIAkgBUsbIQwgAiAIaiERIAkhBwJAA0AgByAMRgRAQQAgCyAGGyEMIAohBwJAAkACQANAIAwgB08EQCABIAUgCGoiAjYCFCAGRQ0CDA4LIAdBf2oiByAFTw0CIAcgCGoiCSADTw0DIAQgB2otAAAgAiAJai0AAEYNAAsgASAIIA9qIgg2AhQgECEHIAZFDQgMCQsgAUEANgIcDAsLIAcgBUHggMAAEFsACyAJIANB8IDAABBbAAsgByAIaiADTw0BIAcgEWohEiAEIAdqIAdBAWohBy0AACASLQAARg0ACyAIIA5qIAdqIQgMAgsgAyAIIAlqIgAgAyAASxsgA0HQgMAAEFsACyABIAUgCGoiCDYCFAtBACEHIAYNAQsgASAHNgIcIAchCwsgCCANaiIHIANJDQALCyABIAM2AhQgAEEANgIADwsgACAINgIEIABBCGogAjYCACAAQQE2AgALqwQCBX8BfkEBIQMCQCABKAIYIgRBJyABQRxqKAIAKAIQIgURAQANAEECIQFBMCECAkACfgJAAkACQAJAAkACQAJAIAAoAgAiAA4oCAEBAQEBAQEBAgQBAQMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBBQALIABB3ABGDQQLIAAQK0UNBCAAQQFyZ0ECdkEHc61CgICAgNAAhAwFC0H0ACECDAULQfIAIQIMBAtB7gAhAgwDCyAAIQIMAgsgABA7BEBBASEBIAAhAgwCCyAAQQFyZ0ECdkEHc61CgICAgNAAhAshB0EDIQEgACECCwNAIAEhBkEAIQEgAiEAAkACQAJAAkACQCAGQQFrDgMEAgABCwJAAkACQAJAAkAgB0IgiKdB/wFxQQFrDgUABAECAwULIAdC/////49ggyEHQf0AIQBBAyEBDAcLIAdC/////49gg0KAgICAIIQhB0H7ACEAQQMhAQwGCyAHQv////+PYINCgICAgDCEIQdB9QAhAEEDIQEMBQsgB0L/////j2CDQoCAgIDAAIQhB0HcACEAQQMhAQwEC0EwQdcAIAIgB6ciAUECdHZBD3EiAEEKSRsgAGohACABRQ0CIAdCf3xC/////w+DIAdCgICAgHCDhCEHQQMhAQwDCyAEQScgBREBACEDDAQLQdwAIQBBASEBDAELIAdC/////49gg0KAgICAEIQhB0EDIQELIAQgACAFEQEARQ0ACwsgAwu7AwEGfyMAQRBrIgkkACAAQQRqKAIAIgYgACgCACIIIAGnIgpxIgdqKQAAQoCBgoSIkKDAgH+DIgFQBEBBCCEFA0AgBSAHaiEHIAVBCGohBSAGIAcgCHEiB2opAABCgIGChIiQoMCAf4MiAVANAAsLAkAgACgCCCAGIAF6p0EDdiAHaiAIcSIFaiwAACIHQX9KBH8gBiAGKQMAQoCBgoSIkKDAgH+DeqdBA3YiBWotAAAFIAcLQQFxIgdFcg0AIAlBCGogAEEBIAQQDCAAQQRqKAIAIgYgACgCACIIIApxIgRqKQAAQoCBgoSIkKDAgH+DIgFQBEBBCCEFA0AgBCAFaiEEIAVBCGohBSAGIAQgCHEiBGopAABCgIGChIiQoMCAf4MiAVANAAsLIAYgAXqnQQN2IARqIAhxIgVqLAAAQX9MDQAgBikDAEKAgYKEiJCgwIB/g3qnQQN2IQULIAUgBmogCkEZdiIEOgAAIAVBeGogCHEgBmpBCGogBDoAACAAIAAoAgggB2s2AgggACAAKAIMQQFqNgIMIAYgBUEDdGsiAEF4aiACNgIAIABBfGogAzYCACAJQRBqJAALgwMBA38CQAJAAkACQCABQQlPBEBBEEEIEJcBIAFLDQEMAgsgABALIQMMAgtBEEEIEJcBIQELQYCAfEEIQQgQlwFBFEEIEJcBakEQQQgQlwFqa0F3cUF9aiIEQQBBEEEIEJcBQQJ0ayICIAIgBEsbIAFrIABNDQAgAUEQIABBBGpBEEEIEJcBQXtqIABLG0EIEJcBIgRqQRBBCBCXAWpBfGoQCyICRQ0AIAIQvQEhAAJAIAFBf2oiAyACcUUEQCAAIQEMAQsgAiADakEAIAFrcRC9ASECQRBBCBCXASEDIAAQrwEgAkEAIAEgAiAAayADSxtqIgEgAGsiAmshAyAAEKUBRQRAIAEgAxCCASAAIAIQggEgACACECEMAQsgACgCACEAIAEgAzYCBCABIAAgAmo2AgALIAEQpQENASABEK8BIgJBEEEIEJcBIARqTQ0BIAEgBBC6ASEAIAEgBBCCASAAIAIgBGsiBBCCASAAIAQQIQwBCyADDwsgARC8ASABEKUBGgv3AgEEfyMAQRBrIgMkACAAIAFHBEAgAkEIaiEEA0AgAEEEagJAAn8CQAJAIAAoAgAiAEGAAU8EQCADQQA2AgwgAEGAEEkNASAAQYCABE8NAiADIABBP3FBgAFyOgAOIAMgAEEMdkHgAXI6AAwgAyAAQQZ2QT9xQYABcjoADUEDDAMLIAQoAgAiBSACQQRqKAIARgR/IAIgBRBAIAQoAgAFIAULIAIoAgBqIAA6AAAgBCAEKAIAQQFqNgIADAMLIAMgAEE/cUGAAXI6AA0gAyAAQQZ2QcABcjoADEECDAELIAMgAEE/cUGAAXI6AA8gAyAAQQZ2QT9xQYABcjoADiADIABBDHZBP3FBgAFyOgANIAMgAEESdkEHcUHwAXI6AAxBBAshACACQQRqKAIAIAQoAgAiBWsgAEkEQCACIAUgABBBIAQoAgAhBQsgAigCACAFaiADQQxqIAAQuQEaIAQgACAFajYCAAsiACABRw0ACwsgA0EQaiQAC9QCAQd/QQEhCQJAAkAgAkUNACABIAJBAXRqIQogAEGA/gNxQQh2IQsgAEH/AXEhDQJAA0AgAUECaiEMIAcgAS0AASICaiEIIAsgAS0AACIBRwRAIAEgC0sNAyAIIQcgDCIBIApHDQEMAwsgCCAHTwRAIAggBEsNAiADIAdqIQECQANAIAJFDQEgAkF/aiECIAEtAAAgAUEBaiEBIA1HDQALQQAhCQwFCyAIIQcgDCIBIApHDQEMAwsLIAcgCBC2AQALIAggBBC1AQALIAZFDQAgBSAGaiEDIABB//8DcSEBA0ACQCAFQQFqIQACfyAAIAUtAAAiAkEYdEEYdSIEQQBODQAaIAAgA0YNASAFLQABIARB/wBxQQh0ciECIAVBAmoLIQUgASACayIBQQBIDQIgCUEBcyEJIAMgBUcNAQwCCwtB0JPAAEGMm8AAEG8ACyAJQQFxC+ICAQN/IwBBEGsiAiQAIAAoAgAhAAJAAn8CQAJAIAFBgAFPBEAgAkEANgIMIAFBgBBJDQEgAUGAgARPDQIgAiABQT9xQYABcjoADiACIAFBDHZB4AFyOgAMIAIgAUEGdkE/cUGAAXI6AA1BAwwDCyAAKAIIIgMgAEEEaigCAEYEfyAAIAMQQCAAKAIIBSADCyAAKAIAaiABOgAAIAAgACgCCEEBajYCCAwDCyACIAFBP3FBgAFyOgANIAIgAUEGdkHAAXI6AAxBAgwBCyACIAFBP3FBgAFyOgAPIAIgAUEGdkE/cUGAAXI6AA4gAiABQQx2QT9xQYABcjoADSACIAFBEnZBB3FB8AFyOgAMQQQLIQEgAEEEaigCACAAQQhqIgQoAgAiA2sgAUkEQCAAIAMgARBBIAQoAgAhAwsgACgCACADaiACQQxqIAEQuQEaIAQgASADajYCAAsgAkEQaiQAQQAL4QIBBX8gAEELdCEEQSAhAkEgIQMCQANAAkACQCACQQF2IAFqIgJBAnRB6KbAAGooAgBBC3QiBSAETwRAIAQgBUYNAiACIQMMAQsgAkEBaiEBCyADIAFrIQIgAyABSw0BDAILCyACQQFqIQELAkACQCABQR9NBEAgAUECdCEEQcMFIQMgAUEfRwRAIARB7KbAAGooAgBBFXYhAwtBACEFIAFBf2oiAiABTQRAIAJBIE8NAiACQQJ0QeimwABqKAIAQf///wBxIQULAkAgAyAEQeimwABqKAIAQRV2IgFBf3NqRQ0AIAAgBWshBCABQcMFIAFBwwVLGyECIANBf2ohAEEAIQMDQCABIAJGDQQgAyABQeinwABqLQAAaiIDIARLDQEgACABQQFqIgFHDQALIAAhAQsgAUEBcQ8LIAFBIEGwpsAAEFsACyACQSBB0KbAABBbAAsgAkHDBUHApsAAEFsAC90CAQV/IABBC3QhBEEEIQJBBCEDAkADQAJAAkAgAkEBdiABaiICQQJ0QaytwABqKAIAQQt0IgUgBE8EQCAEIAVGDQIgAiEDDAELIAJBAWohAQsgAyABayECIAMgAUsNAQwCCwsgAkEBaiEBCwJAAkAgAUEDTQRAIAFBAnQhBEEVIQMgAUEDRwRAIARBsK3AAGooAgBBFXYhAwtBACEFIAFBf2oiAiABTQRAIAJBBE8NAiACQQJ0QaytwABqKAIAQf///wBxIQULAkAgAyAEQaytwABqKAIAQRV2IgFBf3NqRQ0AIAAgBWshBCABQRUgAUEVSxshAiADQX9qIQBBACEDA0AgASACRg0EIAMgAUG8rcAAai0AAGoiAyAESw0BIAAgAUEBaiIBRw0ACyAAIQELIAFBAXEPCyABQQRBsKbAABBbAAsgAkEEQdCmwAAQWwALIAJBFUHApsAAEFsAC9sCAQN/IwBBEGsiAiQAAkACfwJAAkAgAUGAAU8EQCACQQA2AgwgAUGAEEkNASABQYCABE8NAiACIAFBP3FBgAFyOgAOIAIgAUEMdkHgAXI6AAwgAiABQQZ2QT9xQYABcjoADUEDDAMLIAAoAggiAyAAQQRqKAIARgR/IAAgAxBAIAAoAggFIAMLIAAoAgBqIAE6AAAgACAAKAIIQQFqNgIIDAMLIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAELIAIgAUE/cUGAAXI6AA8gAiABQQZ2QT9xQYABcjoADiACIAFBDHZBP3FBgAFyOgANIAIgAUESdkEHcUHwAXI6AAxBBAshASAAQQRqKAIAIABBCGoiBCgCACIDayABSQRAIAAgAyABEEEgBCgCACEDCyAAKAIAIANqIAJBDGogARC5ARogBCABIANqNgIACyACQRBqJABBAAvVAgEDfyMAQRBrIgIkAAJAAn8CQCABQYABTwRAIAJBADYCDCABQYAQTw0BIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAILIAAoAggiAyAAQQRqKAIARgRAIAAgAxBDIAAoAgghAwsgACADQQFqNgIIIAAoAgAgA2ogAToAAAwCCyABQYCABE8EQCACIAFBP3FBgAFyOgAPIAIgAUEGdkE/cUGAAXI6AA4gAiABQQx2QT9xQYABcjoADSACIAFBEnZBB3FB8AFyOgAMQQQMAQsgAiABQT9xQYABcjoADiACIAFBDHZB4AFyOgAMIAIgAUEGdkE/cUGAAXI6AA1BAwshASAAQQRqKAIAIABBCGoiBCgCACIDayABSQRAIAAgAyABEEIgBCgCACEDCyAAKAIAIANqIAJBDGogARC5ARogBCABIANqNgIACyACQRBqJAAL1wIBA38jAEEQayICJAACQAJ/AkACQCABQYABTwRAIAJBADYCDCABQYAQSQ0BIAFBgIAETw0CIAIgAUE/cUGAAXI6AA4gAiABQQx2QeABcjoADCACIAFBBnZBP3FBgAFyOgANQQMMAwsgACgCCCIDIABBBGooAgBGBEAgACADEEMgACgCCCEDCyAAIANBAWo2AgggACgCACADaiABOgAADAMLIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAELIAIgAUE/cUGAAXI6AA8gAiABQQZ2QT9xQYABcjoADiAC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AiADKAIIIgRNBEAgASECDAELIARFBEBBASECIAEQFQwBCyABIAJBASAEEJkBIgJFDQMLIAAgBDYCBCAAIAI2AgAgA0EQaiQADwsQrQEACxCuAQALIARBARCzAQALrAEBA38jAEEQayIDJAACQAJAIAEEQCABKAIAIgJBf0YNASABIAJBAWo2AgAgAyABQRBqEGEgASABKAIAQX9qNgIAIAMoAgAhAQJAIAMoAgQiAiADKAIIIgRNBEAgASECDAELIARFBEBBASECIAEQFQwBCyABIAJBASAEEJkBIgJFDQMLIAAgBDYCBCAAIAI2AgAgA0EQaiQADwsQrQEACxCuAQALIARBARCzAQALrAEBA38jAEEQayIDJAACQAJAIAEEQCABKAIAIgJBf0YNASABIAJBAWo2AgAgAyABQSxqEGEgASABKAIAQX9qNgIAIAMoAgAhAQJAIAMoAgQiAiADKAIIIgRNBEAgASECDAELIARFBEBBASECIAEQFQwBCyABIAJBASAEEJkBIgJFDQMLIAAgBDYCBCAAIAI2AgAgA0EQaiQADwsQrQEACxCuAQALIARBARCzAQALrAEBA38jAEEwayICJAAgAUEEaiEDIAEoAgRFBEAgASgCACEBIAJBEGoiBEEANgIAIAJCATcDCCACIAJBCGo2AhQgAkEoaiABQRBqKQIANwMAIAJBIGogAUEIaikCADcDACACIAEpAgA3AxggAkEUakGAjsAAIAJBGGoQHhogA0EIaiAEKAIANgIAIAMgAikDCDcCAAsgAEHoj8AANgIEIAAgAzYCACACQTBqJAALkAEBAn8CQAJ/AkACQAJAAn9BASIDIAFBAEgNABogAigCCEUNAiACKAIEIgQNASABDQNBAQwECyEDQQAhAQwECyACKAIAIARBASABEJkBDAILIAENAEEBDAELIAFBARCeAQsiAgRAIAAgAjYCBEEAIQMMAQsgACABNgIEQQEhAQsgACADNgIAIABBCGogATYCAAunAQECfwJAAkACQAJAAkACQAJAAn8gAgRAQQEiBCABQQBIDQEaIAMoAghFDQMgAygCBCIFDQIgAQ0EDAYLIAAgATYCBEEBCyEEQQAhAQwGCyADKAIAIAUgAiABEJkBIgNFDQIMBAsgAUUNAgsgASACEJ4BIgMNAgsgACABNgIEIAIhAQwCCyACIQML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AX8jAEEwayICJAAgAiABNgIEIAIgADYCACACQRxqQQI2AgAgAkEsakEDNgIAIAJCAjcCDCACQfSWwAA2AgggAkEDNgIkIAIgAkEgajYCGCACIAJBBGo2AiggAiACNgIgIAJBCGpBhJfAABB0AAtsAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpBAzYCACADQgI3AgwgA0HAk8AANgIIIANBAzYCJCADIANBIGo2AhggAyADNgIoIAMgA0EEajYCICADQQhqIAIQdAALVgECfyMAQSBrIgIkACAAQRxqKAIAIQMgACgCGCACQRhqIAFBEGopAgA3AwAgAkEQaiABQQhqKQIANwMAIAIgASkCADcDCCADIAJBCGoQHiACQSBqJAALWQEBfyMAQSBrIgIkACACIAAoAgA2AgQgAkEYaiABQRBqKQIANwMAIAJBEGogAUEIaikCADcDACACIAEpAgA3AwggAkEEakGYisAAIAJBCGoQHiACQSBqJAALWQEBfyMAQSBrIgIkACACIAAoAgA2AgQgAkEYaiABQRBqKQIANwMAIAJBEGogAUEIaikCADcDACACIAEpAgA3AwggAkEEakGAjsAAIAJBCGoQHiACQSBqJAALZwAjAEEwayIBJABB2K3AAC0AAARAIAFBHGpBATYCACABQgI3AgwgAUH0jsAANgIIIAFBAzYCJCABIAA2AiwgASABQSBqNgIYIAEgAUEsajYCICABQQhqQZyPwAAQdAALIAFBMGokAAtZAQF/IwBBIGsiAiQAIAIgACgCADYCBCACQRhqIAFBEGopAgA3AwAgAkEQaiABQQhqKQIANwMAIAIgASkCADcDCCACQQRqQbSRwAAgAkEIahAeIAJBIGokAAtnAQJ/IAEoAgAhAwJAAkACQCABQQhqKAIAIgFFBEBBASECDAELIAFBf0wNASABQQEQngEiAkUNAgsgAiADIAEQuQEhAiAAIAE2AgggACABNgIEIAAgAjYCAA8LEHMACyABQQEQswEAC1YBAX8jAEEgayICJAAgAiAANgIEIAJBGGogAUEQaikCADcDACACQRBqIAFBCGopAgA3AwAgAiABKQIANwMIIAJBBGpBmIrAACACQQhqEB4gAkEgaiQAC1YBAX8CQCAABEAgACgCAA0BIABBfzYCACAAQQhqIgMoAgAEQCAAKAIEEBULIAAgATYCBCAAQQA2AgAgAEEMaiACNgIAIAMgAjYCAA8LEK0BAAsQrgEAC1YBAX8CQCAABEAgACgCAA0BIABBfzYCACAAQRRqIgMoAgAEQCAAKAIQEBULIAAgATYCECAAQQA2AgAgAEEYaiACNgIAIAMgAjYCAA8LEK0BAAsQrgEAC1YBAX8CQCAABEAgACgCAA0BIABBfzYCACAAQTBqIgMoAgAEQCAAKAIsEBULIAAgATYCLCAAQQA2AgAgAEE0aiACNgIAIAMgAjYCAA8LEK0BAAsQrgEAC1YBAX8jAEEQayIFJAAgASgCACACKAIAIAMoAgAgBCgCABAIIQEgBUEIahCDASAFKAIMIQIgACAFKAIIIgNBAEc2AgAgACACIAEgAxs2AgQgBUEQaiQAC08BAn8gACgCACIDQQRqKAIAIANBCGoiBCgCACIAayACSQRAIAMgACACEEEgBCgCACEACyADKAIAIABqIAEgAhC5ARogBCAAIAJqNgIAQQALTwECfyAAKAIAIgNBBGooAgAgA0EIaiIEKAIAIgBrIAJJBEAgAyAAIAIQQiAEKAIAIQALIAMoAgAgAGogASACELkBGiAEIAAgAmo2AgBBAAtRAQF/IwBBEGsiBCQAIAEoAgAgAigCACADKAIAEAchASAEQQhqEIMBIAQoAgwhAiAAIAQoAggiA0EARzYCACAAIAIgASADGzYCBCAEQRBqJAALSgECfyAAQQRqKAIAIABBCGoiBCgCACIDayACSQRAIAAgAyACEEEgBCgCACEDCyAAKAIAIANqIAEgAhC5ARogBCACIANqNgIAQQALPwEBfyMAQSBrIgAkACAAQRxqQQA2AgAgAEGwkMAANgIYIABCATcCDCAAQcyQwAA2AgggAEEIakGkkcAAEHQAC0MBA38CQCACRQ0AA0AgAC0AACIEIAEtAAAiBUYEQCAAQQFqIQAgAUEBaiEBIAJBf2oiAg0BDAILCyAEIAVrIQMLIAMLTAECfyMAQRBrIgMkACABKAIAIAIoAgAQAyEBIANBCGoQgwEgAygCDCECIAAgAygCCCIEQQBHNgIAIAAgAiABIAQbNgIEIANBEGokAAtLAAJAAn8gAUGAgMQARwRAQQEgACgCGCABIABBHGooAgAoAhARAQANARoLIAINAUEACw8LIAAoAhggAiADIABBHGooAgAoAgwRAwALRwEBfyMAQSBrIgIkACACQRRqQQA2AgAgAkGAk8AANgIQIAJCATcCBCACQSs2AhwgAiAANgIYIAIgAkEYajYCACACIAEQdAALRgECfyABKAIEIQIgASgCACEDQQhBBBCeASIBRQRAQQhBBBCzAQALIAEgAjYCBCABIAM2AgAgAEH4j8AANgIEIAAgATYCAAs5AQF/IAFBEHZAACECIABBADYCCCAAQQAgAUGAgHxxIAJBf0YiARs2AgQgAEEAIAJBEHQgARs2AgALZAEDfyMAQRBrIgEkACAAKAIMIgJFBEBBmI7AAEHIj8AAEG8ACyAAKAIIIgNFBEBBmI7AAEHYj8AAEG8ACyABIAI2AgggASAANgIEIAEgAzYCACABKAIAIAEoAgQgASgCCBBQAAs/AQF/IwBBIGsiACQAIABBHGpBADYCACAAQcyRwAA2AhggAEIBNwIMIABBjJLAADYCCCAAQQhqQZSSwAAQdAALPgEBfyMAQSBrIgIkACACQQE6ABggAiABNgIUIAIgADYCECACQfyTwAA2AgwgAkGAk8AANgIIIAJBCGoQcgALKwACQCAAQXxLDQAgAEUEQEEEDwsgACAAQX1JQQJ0EJ4BIgBFDQAgAA8LAAsiACMAQRBrIgAkACAAQQhqIAEQfSAAQQhqEFMgAEEQaiQACysAAkAgAARAIAAoAgANASAAQQA2AgAgAEEcaiABNgIADwsQrQEACxCuAQALKwACQCAABEAgACgCAA0BIABBADYCACAAQSBqIAE2AgAPCxCtAQALEK4BAAsrAAJAIAAEQCAAKAIADQEgAEEANgIAIABBJGogATYCAA8LEK0BAAsQrgEACysAAkAgAARAIAAoAgANASAAQQA2AgAgAEEoaiABNgIADwsQrQEACxCuAQALQAEBfyMAQRBrIgQkACAEIAM2AgwgBCACNgIIIAQgATYCBCAEIAA2AgAgBCgCACAEKAIEIAQoAgggBCgCDBATAAs3ACAAQQM6ACAgAEKAgICAgAQ3AgAgACABNgIYIABBADYCECAAQQA2AgggAEEcakHEh8AANgIACzUBAX8gASgCGEHDjsAAQQsgAUEcaigCACgCDBEDACECIABBADoABSAAIAI6AAQgACABNgIACyUAAkAgAARAIAAoAgBBf0YNASAAQRxqKAIADwsQrQEACxCuAQALJQACQCAABEAgACgCAEF/Rg0BIABBIGooAgAPCxCtAQALEK4BAAslAAJAIAAEQCAAKAIAQX9GDQEgAEEkaigCAA8LEK0BAAsQrgEACyUAAkAgAARAIAAoAgBBf0YNASAAQShqKAIADwsQrQEACxCuAQALJwAgACAAKAIEQQFxIAFyQQJyNgIEIAAgAWoiACAAKAIEQQFyNgIECzoBAn9B3K3AAC0AACEBQdytwABBADoAAEHgrcAAKAIAIQJB4K3AAEEANgIAIAAgAjYCBCAAIAE2AgALIAEBfwJAIAAoAgQiAUUNACAAQQhqKAIARQ0AIAEQFQsLHwACQCABQXxNBEAgACABQQQgAhCZASIADQELAAsgAAsjACACIAIoAgRBfnE2AgQgACABQQFyNgIEIAAgAWogATYCAAslACAARQRAQciMwABBMBCsAQALIAAgAiADIAQgBSABKAIQEQoACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQEQgACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQEQcACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQERUACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQERIACyMAIABFBEBByIzAAEEwEKwBAAsgACACIAMgBCABKAIQERQACx4AIAAgAUEDcjYCBCAAIAFqIgAgACgCBEEBcjYCBAsUACAAQQRqKAIABEAgACgCABAVCwshACAARQRAQciMwABBMBCsAQALIAAgAiADIAEoAhARBAALHwAgAEUEQEHIjMAAQTAQrAEACyAAIAIgASgCEBEBAAsZAQF/IAAoAhAiAQR/IAEFIABBFGooAgALCxkAIAAoAgAiACgCACAAQQhqKAIAIAEQtwELEgBBAEEZIABBAXZrIABBH0YbCxYAIAAgAUEBcjYCBCAAIAFqIAE2AgALHAAgASgCGEHgpsAAQQUgAUEcaigCACgCDBEDAAsTACAAKAIAIgBBJE8EQCAAEAALCxAAIAAgAWpBf2pBACABa3ELFAAgACgCACAAQQhqKAIAIAEQtwELDAAgACABIAIgAxAYCwsAIAEEQCAAEBULCw8AIABBAXQiAEEAIABrcgsUACAAKAIAIAEg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BAAAAAQAAAARAAAAEgAAABMAAABjYW5ub3QgYWNjZXNzIGEgVGhyZWFkIExvY2FsIFN0b3JhZ2UgdmFsdWUgZHVyaW5nIG9yIGFmdGVyIGRlc3RydWN0aW9uL3J1c3RjL2E1NWRkNzFkNWZiMGVjNWE2YTNhOWU4YzI3YjIxMjdiYTQ5MWNlNTIvbGlicmFyeS9zdGQvc3JjL3RocmVhZC9sb2NhbC5ycwAAAHYFEABPAAAApQEAABoAAAAUAAAAAAAAAAEAAAAVAAAAL3J1c3RjL2E1NWRkNzFkNWZiMGVjNWE2YTNhOWU4YzI3YjIxMjdiYTQ5MWNlNTIvbGlicmFyeS9jb3JlL3NyYy9zdHIvcGF0dGVybi5ycwDoBRAATwAAALcBAAAmAAAAY2xvc3VyZSBpbnZva2VkIHJlY3Vyc2l2ZWx5IG9yIGRlc3Ryb3llZCBhbHJlYWR5SnNWYWx1ZSgpAAAAeAYQAAgAAACABhAAAQAAAG51bGwgcG9pbnRlciBwYXNzZWQgdG8gcnVzdHJlY3Vyc2l2ZSB1c2Ugb2YgYW4gb2JqZWN0IGRldGVjdGVkIHdoaWNoIHdvdWxkIGxlYWQgdG8gdW5zYWZlIGFsaWFzaW5nIGluIHJ1c3QAACQAAAAEAAAABAAAACUAAAAmAAAAJwAAAGNhbGxlZCBgT3B0aW9uOjp1bndyYXAoKWAgb24gYSBgTm9uZWAgdmFsdWVBY2Nlc3NFcnJvcm1lbW9yeSBhbGxvY2F0aW9uIG9mICBieXRlcyBmYWlsZWQKAAAATgcQABUAAABjBxAADgAAAGxpYnJhcnkvc3RkL3NyYy9hbGxvYy5yc4QHEAAYAAAAUgEAAAkAAABsaWJyYXJ5L3N0ZC9zcmMvcGFuaWNraW5nLnJzrAcQABwAAABGAgAAHwAAAKwHEAAcAAAARwIAAB4AAAAoAAAADAAAAAQAAAApAAAAJAAAAAgAAAAEAAAAKgAAACsAAAAQAAAABAAAACwAAAAtAAAAJAAAAAgAAAAEAAAALgAAAC8AAABIYXNoIHRhYmxlIGNhcGFjaXR5IG92ZXJmbG93MAgQABwAAAAvY2FyZ28vcmVnaXN0cnkvc3JjL2dpdGh1Yi5jb20tMWVjYzYyOTlkYjllYzgyMy9oYXNoYnJvd24tMC4xMi4zL3NyYy9yYXcvbW9kLnJzAFQIEABPAAAAWgAAACgAAAAwAAAABAAAAAQAAAAxAAAAMgAAADMAAAAwAAAAAAAAAAEAAAAHAAAAbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc2NhcGFjaXR5IG92ZXJmbG93AAAA+AgQABEAAADcCBAAHAAAAAYCAAAFAAAAYSBmb3JtYXR0aW5nIHRyYWl0IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9ybGlicmFyeS9hbGxvYy9zcmMvZm10LnJzAFcJEAAYAAAAZAIAACAAAAAuLgAAgAkQAAIAAABpbmRleCBvdXQgb2YgYm91bmRzOiB0aGUgbGVuIGlzICBidXQgdGhlIGluZGV4IGlzIAAAjAkQACAAAACsCRAAEgAAAGNhbGxlZCBgT3B0aW9uOjp1bndyYXAoKWAgb24gYSBgTm9uZWAgdmFsdWUAOQAAAAAAAAABAAAAOgAAAGA6IACACRAAAAAAAA0KEAACAAAAfSB9MHgwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OXJhbmdlIHN0YXJ0IGluZGV4ICBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCAAAADtChAAEgAAAP8KEAAiAAAAbGlicmFyeS9jb3JlL3NyYy9zbGljZS9pbmRleC5ycwA0CxAAHwAAADQAAAAFAAAAcmFuZ2UgZW5kIGluZGV4IGQLEAAQAAAA/woQACIAAAA0CxAAHwAAAEkAAAAFAAAAc2xpY2UgaW5kZXggc3RhcnRzIGF0ICBidXQgZW5kcyBhdCAAlAsQABYAAACqCxAADQAAADQLEAAfAAAAXAAAAAUAAABsaWJyYXJ5L2NvcmUvc3JjL3N0ci9wYXR0ZXJuLnJzANgLEAAfAAAAGgYAABUAAADYCxAAHwAAAEgGAAAVAAAA2AsQAB8AAABJBgAAFQAAAGxpYnJhcnkvY29yZS9zcmMvc3RyL21vZC5yc1suLi5dYnl0ZSBpbmRleCAgaXMgb3V0IG9mIGJvdW5kcyBvZiBgAAAASAwQAAsAAABTDBAAFgAAAAwKEAABAAAAKAwQABsAAABrAAAACQAAAGJlZ2luIDw9IGVuZCAoIDw9ICkgd2hlbiBzbGljaW5nIGAAAJQMEAAOAAAAogwQAAQAAACmDBAAEAAAAAwKEAABAAAAKAwQABsAAABvAAAABQAAACgMEAAbAAAAfQAAAC0AAAAgaXMgbm90IGEgY2hhciBib3VuZGFyeTsgaXQgaXMgaW5zaWRlICAoYnl0ZXMgKSBvZiBgSAwQAAsAAAD4DBAAJgAAAB4NEAAIAAAAJg0QAAYAAAAMChAAAQAAACgMEAAbAAAAfwAAAAUAAABsaWJyYXJ5L2NvcmUvc3JjL3VuaWNvZGUvcHJpbnRhYmxlLnJzAAAAZA0QACUAAAAaAAAANgAAAAABAwUFBgYCBwYIBwkRChwLGQwaDRAODQ8EEAMSEhMJFgEXBBgBGQMaBxsBHAIfFiADKwMtCy4BMAMxAjIBpwKpAqoEqwj6AvsF/QL+A/8JrXh5i42iMFdYi4yQHN0OD0tM+/wuLz9cXV/ihI2OkZKpsbq7xcbJyt7k5f8ABBESKTE0Nzo7PUlKXYSOkqmxtLq7xsrOz+TlAAQNDhESKTE0OjtFRklKXmRlhJGbncnOzw0RKTo7RUlXW1xeX2RljZGptLq7xcnf5OXwDRFFSWRlgISyvL6/1dfw8YOFi6Smvr/Fx87P2ttImL3Nxs7PSU5PV1leX4mOj7G2t7/BxsfXERYXW1z29/7/gG1x3t8OH25vHB1ffX6ur3+7vBYXHh9GR05PWFpcXn5/tcXU1dzw8fVyc490dZYmLi+nr7e/x8/X35pAl5gwjx/S1M7/Tk9aWwcIDxAnL+7vbm83PT9CRZCRU2d1yMnQ0djZ5/7/ACBfIoLfBIJECBsEBhGBrA6AqwUfCYEbAxkIAQQvBDQEBwMBBwYHEQpQDxIHVQcDBBwKCQMIAwcDAgMDAwwEBQMLBgEOFQVOBxsHVwcCBhYNUARDAy0DAQQRBg8MOgQdJV8gbQRqJYDIBYKwAxoGgv0DWQcWCRgJFAwUDGoGCgYaBlkHKwVGCiwEDAQBAzELLAQaBgsDgKwGCgYvMU0DgKQIPAMPAzwHOAgrBYL/ERgILxEtAyEPIQ+AjASClxkLFYiUBS8FOwcCDhgJgL4idAyA1hoMBYD/BYDfDPKdAzcJgVwUgLgIgMsFChg7AwoGOAhGCAwGdAseA1oEWQmAgxgcChYJTASAigarpAwXBDGhBIHaJgcMBQWAphCB9QcBICoGTASAjQSAvgMbAw8NAAYBAQMBBAIFBwcCCAgJAgoFCwIOBBABEQISBRMRFAEVAhcCGQ0cBR0IJAFqBGsCrwO8As8C0QLUDNUJ1gLXAtoB4AXhAucE6ALuIPAE+AL6AvsBDCc7Pk5Pj56en3uLk5aisrqGsQYHCTY9Plbz0NEEFBg2N1ZXf6qur7014BKHiY6eBA0OERIpMTQ6RUZJSk5PZGVctrcbHAcICgsUFzY5Oqip2NkJN5CRqAcKOz5maY+Sb1+/7u9aYvT8/5qbLi8nKFWdoKGjpKeorbq8xAYLDBUdOj9FUaanzM2gBxkaIiU+P+fs7//FxgQgIyUmKDM4OkhKTFBTVVZYWlxeYGNlZmtzeH1/iqSqr7DA0K6vbm+TXiJ7BQMELQNmAwEvLoCCHQMxDxwEJAkeBSsFRAQOKoCqBiQEJAQoCDQLTkOBNwkWCggYO0U5A2MICTAWBSEDGwUBQDgESwUvBAoHCQdAICcEDAk2AzoFGgcEDAdQSTczDTMHLggKgSZSTigIKhYaJhwUFwlOBCQJRA0ZBwoGSAgnCXULP0EqBjsFCgZRBgEFEAMFgItiHkgICoCmXiJFCwoGDRM6Bgo2LAQXgLk8ZFMMSAkKRkUbSAhTDUmBB0YKHQNHSTcDDggKBjkHCoE2GYC3AQ8yDYObZnULgMSKTGMNhC+P0YJHobmCOQcqBFwGJgpGCigFE4KwW2VLBDkHEUAFCwIOl/gIhNYqCaLngTMtAxEECIGMiQRrBQ0DCQcQkmBHCXQ8gPYKcwhwFUaAmhQMVwkZgIeBRwOFQg8VhFAfgOErgNUtAxoEAoFAHxE6BQGE4ID3KUwECgQCgxFETD2AwjwGAQRVBRs0AoEOLARkDFYKgK44HQ0sBAkHAg4GgJqD2AUQAw0DdAxZBwwEAQ8MBDgICgYoCCJOgVQMFQMFAwcJHQMLBQYKCgYICAcJgMslCoQGbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3VuaWNvZGVfZGF0YS5ycwAAAAUTEAAoAAAASwAAACgAAAAFExAAKAAAAFcAAAAWAAAABRMQACgAAABSAAAAPgAAAEVycm9yAAAAAAMAAIMEIACRBWAAXROgABIXIB8MIGAf7yygKyowICxvpuAsAqhgLR77YC4A/iA2nv9gNv0B4TYBCiE3JA3hN6sOYTkvGKE5MBzhR/MeIUzwauFPT28hUJ28oVAAz2FRZdGhUQDaIVIA4OFTMOFhVa7ioVbQ6OFWIABuV/AB/1cAcAAHAC0BAQECAQIBAUgLMBUQAWUHAgYCAgEEIwEeG1sLOgkJARgEAQkBAwEFKwM8CCoYASA3AQEBBAgEAQMHCgIdAToBAQECBAgBCQEKAhoBAgI5AQQCBAICAwMBHgIDAQsCOQEEBQECBAEUAhYGAQE6AQECAQQIAQcDCgIeATsBAQEMAQkBKAEDATcBAQMFAwEEBwILAh0BOgECAQIBAwEFAgcCCwIcAjkCAQECBAgBCQEKAh0BSAEEAQIDAQEIAVEBAgcMCGIBAgkLBkoCGwEBAQEBNw4BBQECBQsBJAkBZgQBBgECAgIZAgQDEAQNAQICBgEPAQADAAMdAh4CHgJAAgEHCAECCwkBLQMBAXUCIgF2AwQCCQEGA9sCAgE6AQEHAQEBAQIIBgoCATAfMQQwBwEBBQEoCQwCIAQCAgEDOAEBAgMBAQM6CAICmAMBDQEHBAEGAQMCxkAAAcMhAAONAWAgAAZpAgAEAQogAlACAAEDAQQBGQIFAZcCGhINASYIGQsuAzABAgQCAicBQwYCAgICDAEIAS8BMwEBAwICBQIBASoCCAHuAQIBBAEAAQAQEBAAAgAB4gGVBQADAQIFBCgDBAGlAgAEAAKZCzEEewE2DykBAgIKAzEEAgIHAT0DJAUBCD4BDAI0CQoEAgFfAwIBAQIGAaABAwgVAjkCAQEBARYBDgcDBcMIAgMBARcBUQECBgEBAgEBAgEC6wECBAYCAQIbAlUIAgEBAmoBAQECBgEBZQMCBAEFAAkBAvUBCgIBAQQBkAQCAgQBIAooBgIECAEJBgIDLg0BAgAHAQYBAVIWAgcBAgECegYDAQECAQcBAUgCAwEBAQACAAU7BwABPwRRAQACAC4CFwABAQMEBQgIAgceBJQDADcEMggBDgEWBQEPAAcBEQIHAQIBBQAHAAE9BAAHbQcAYIDwAACAFgAAACAgAQAwYAEBMHECCQUSAWQBGgEAAQALHQIFAS8BAAEAewlwcm9kdWNlcnMCCGxhbmd1YWdlAQRSdXN0AAxwcm9jZXNzZWQtYnkDBXJ1c3RjHTEuNjQuMCAoYTU1ZGQ3MWQ1IDIwMjItMDktMTkpBndhbHJ1cwYwLjE5LjAMd2FzbS1iaW5kZ2VuEjAuMi44MyAoZWJhNjkxZjM4KQ==");var pr=class{async init(){await li(ui);let e=new Je("<%","%>","\0","*","-","_","tR");this.renderer=new ut(e)}async parse_commands(e,t){return this.renderer.render_content(e,t)}};var be;(function(a){a[a.CreateNewFromTemplate=0]="CreateNewFromTemplate",a[a.AppendActiveFile=1]="AppendActiveFile",a[a.OverwriteFile=2]="OverwriteFile",a[a.OverwriteActiveFile=3]="OverwriteActiveFile",a[a.DynamicProcessor=4]="DynamicProcessor",a[a.StartupTemplate=5]="StartupTemplate"})(be||(be={}));var pt=class{constructor(e){this.plugin=e;this.functions_generator=new sr(this.plugin),this.parser=new pr}async setup(){this.files_with_pending_templates=new Set,await this.parser.init(),await this.functions_generator.init(),this.plugin.registerMarkdownPostProcessor((e,t)=>this.process_dynamic_templates(e,t))}create_running_config(e,t,n){let i=Le(this.plugin.app);return{template_file:e,target_file:t,run_mode:n,active_file:i}}async read_and_parse_template(e){let t=await this.plugin.app.vault.read(e.template_file);return this.parse_template(e,t)}async parse_template(e,t){let n=await this.functions_generator.generate_object(e,ve.USER_INTERNAL);return this.current_functions_object=n,await this.parser.parse_commands(t,n)}start_templater_task(e){this.files_with_pending_templates.add(e)}async end_templater_task(e){this.files_with_pending_templates.delete(e),this.files_with_pending_templates.size===0&&(this.plugin.app.workspace.trigger("templater:all-templates-executed"),await this.functions_generator.teardown())}async create_new_note_from_template(e,t,n,i=!0){if(!t)switch(this.plugin.app.vault.getConfig("newFileLocation")){case"current":{let w=Le(this.plugin.app);w&&(t=w.parent);break}case"folder":t=this.plugin.app.fileManager.getNewFileParent("");break;case"root":t=this.plugin.app.vault.getRoot();break;default:break}let o=e instanceof Q.TFile&&e.extension||"md",a=await se(async()=>{let h=t instanceof Q.TFolder?t.path:t,w=this.plugin.app.vault.getAvailablePath((0,Q.normalizePath)(`${h??""}/${n||"Untitled"}`),o),E=sn(w);return E&&!this.plugin.app.vault.getAbstractFileByPathInsensitive(E)&&await this.plugin.app.vault.createFolder(E),this.plugin.app.vault.create(w,"")},`Couldn't create ${o} file.`);if(a==null)return;let{path:u}=a;this.start_templater_task(u);let l,d;if(e instanceof Q.TFile?(l=this.create_running_config(e,a,0),d=await se(async()=>this.read_and_parse_template(l),"Template parsing error, aborting.")):(l=this.create_running_config(void 0,a,0),d=await se(async()=>this.parse_template(l,e),"Template parsing error, aborting.")),d==null){await this.plugin.app.vault.delete(a),await this.end_templater_task(u);return}if(await this.plugin.app.vault.modify(a,d),this.plugin.app.workspace.trigger("templater:new-note-from-template",{file:a,content:d}),i){let h=this.plugin.app.workspace.getLeaf(!1);if(!h){V(new b("No active leaf"));return}await h.openFile(a,{state:{mode:"source"}}),await this.plugin.editor_handler.jump_to_next_cursor_location(a,!0),h.setEphemeralState({rename:"all"})}return await this.end_templater_task(u),a}async append_template_to_active_file(e){let t=this.plugin.app.workspace.getActiveViewOfType(Q.MarkdownView),n=this.plugin.app.workspace.activeEditor;if(!n||!n.file||!n.editor){V(new b("No active editor, can't append templates."));return}let{path:i}=n.file;this.start_templater_task(i);let o=this.create_running_config(e,n.file,1),a=await se(async()=>this.read_and_parse_template(o),"Template parsing error, aborting.");if(a==null){await this.end_templater_task(i);return}let{content:u,frontmatter:l}=kt(a),h=n.editor.getDoc(),w=h.listSelections();h.replaceSelection(u),t&&(Object.keys(l).length>0&&t instanceof Q.MarkdownView&&typeof t.metadataEditor?.insertProperties=="function"&&t.metadataEditor.insertProperties(l),await qe(100),await t.save()),this.plugin.app.workspace.trigger("templater:template-appended",{view:t,editor:n,content:a,oldSelections:w,newSelections:h.listSelections()}),await this.plugin.editor_handler.jump_to_next_cursor_location(n.file,!0),await this.end_templater_task(i)}async write_template_to_file(e,t){let{path:n}=t;this.start_templater_task(n);let i=this.plugin.app.workspace.getActiveViewOfType(Q.MarkdownView),o=this.plugin.app.workspace.activeEditor,a=Le(this.plugin.app),u=this.create_running_config(e,t,2),l=await se(async()=>this.read_and_parse_template(u),"Template parsing error, aborting.");if(l==null){await this.end_templater_task(n);return}let{content:d,frontmatter:h}=kt(l);if(a?.path===t.path&&o&&o.editor&&i){let w="",{content:E,frontmatter:M}=kt(o.editor.getValue());cn(M,h),Object.keys(M).length>0&&(w+=`--- +${(0,Q.stringifyYaml)(M)}--- +`),w+=E+d,o.editor.setValue(w),o.editor.setSelection({line:0,ch:0},{line:0,ch:0}),await qe(100),await i.save()}else await this.plugin.app.vault.process(t,w=>{let E="",{content:M,frontmatter:I}=kt(w);return cn(I,h),Object.keys(I).length>0&&(E+=`--- +${(0,Q.stringifyYaml)(I)}--- +`),E+=M+d,l=E,E});this.plugin.app.workspace.trigger("templater:new-note-from-template",{file:t,content:l}),await this.plugin.editor_handler.jump_to_next_cursor_location(t,!0),await this.end_templater_task(n)}overwrite_active_file_commands(){let e=this.plugin.app.workspace.activeEditor;if(!e||!e.file){V(new b("Active editor is null, can't overwrite content"));return}this.overwrite_file_commands(e.file,!0)}async overwrite_file_commands(e,t=!1){let{path:n}=e;this.start_templater_task(n);let i=this.create_running_config(e,e,t?3:2),o=await se(async()=>this.read_and_parse_template(i),"Template parsing error, aborting.");if(o==null){await this.end_templater_task(n);return}await this.plugin.app.vault.modify(e,o),this.plugin.app.workspace.trigger("templater:overwrite-file",{file:e,content:o}),await this.plugin.editor_handler.jump_to_next_cursor_location(e,!0),await this.end_templater_task(n)}async process_dynamic_templates(e,t){let n=zr(),i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT),o,a=!1,u;for(;o=i.nextNode();){let l=o.nodeValue;if(l!==null){let d=n.exec(l);if(d!==null){let h=this.plugin.app.metadataCache.getFirstLinkpathDest("",t.sourcePath);if(!h||!(h instanceof Q.TFile))return;if(!a){a=!0;let w=this.create_running_config(h,h,4);u=await this.functions_generator.generate_object(w,ve.USER_INTERNAL),this.current_functions_object=u}}for(;d!=null;){let h=d[1]+d[2],w=await se(async()=>await this.parser.parse_commands(h,u),`Command Parsing error in dynamic command '${h}'`);if(w==null)return;let E=n.lastIndex-d[0].length,M=n.lastIndex;l=l.substring(0,E)+w+l.substring(M),n.lastIndex+=w.length-d[0].length,d=n.exec(l)}o.nodeValue=l}}}get_new_file_template_for_folder(e){do{let t=this.plugin.settings.folder_templates.find(n=>n.folder==e.path);if(t&&t.template)return t.template;e=e.parent}while(e)}get_new_file_template_for_file(e){let t=this.plugin.settings.file_templates.find(n=>new RegExp(n.regex).test(e.path));if(t&&t.template)return t.template}static async on_file_creation(e,t,n){if(!(n instanceof Q.TFile)||n.extension!=="md")return;let i=(0,Q.normalizePath)(e.plugin.settings.templates_folder);if(n.path.includes(i)&&i!=="/"||(await qe(300),e.files_with_pending_templates.has(n.path)))return;let o=await t.vault.read(n),a=(0,Q.getFrontMatterInfo)(o),u=o.length-a.contentStart;if(u==0&&e.plugin.settings.enable_folder_templates){let l=e.get_new_file_template_for_folder(n.parent);if(!l)return;let d=await se(async()=>De(t,l),`Couldn't find template ${l}`);if(d==null)return;await e.write_template_to_file(d,n)}else if(u==0&&e.plugin.settings.enable_file_templates){let l=e.get_new_file_template_for_file(n);if(!l)return;let d=await se(async()=>De(t,l),`Couldn't find template ${l}`);if(d==null)return;await e.write_template_to_file(d,n)}else{let l=1e5;n.stat.size<=l?await e.overwrite_file_commands(n):console.log(`Templater skipped parsing ${n.path} because file size exceeds ${l}`)}}async execute_startup_scripts(){for(let e of this.plugin.settings.startup_templates){if(!e)continue;let t=ce(()=>De(this.plugin.app,e),`Couldn't find startup template "${e}"`);if(!t)continue;let{path:n}=t;this.start_templater_task(n);let i=this.create_running_config(t,t,5);await se(async()=>this.read_and_parse_template(i),"Startup Template parsing error, aborting."),await this.end_templater_task(n)}}};var ft=U(require("obsidian"));var An=class{constructor(e,t,n){this.plugin=e;this.templater=t;this.settings=n}setup(){this.plugin.app.workspace.onLayoutReady(()=>{if(this.settings.trigger_on_file_creation&&this.plugin.app.vault.getConfig("openBehavior")==="daily"){let t=this.plugin.app.internalPlugins.getEnabledPluginById("daily-notes");if(t){let{folder:n,format:i}=t.options,o=(0,ft.normalizePath)(`${n}/${(0,ft.moment)().format(i)}.md`),a=Le(this.plugin.app);a?.path===o&&pt.on_file_creation(this.templater,this.plugin.app,a)}}this.update_trigger_file_on_creation()}),this.update_syntax_highlighting(),this.update_file_menu()}update_syntax_highlighting(){let e=this.plugin.editor_handler.desktopShouldHighlight(),t=this.plugin.editor_handler.mobileShouldHighlight();e||t?this.plugin.editor_handler.enable_highlighter():this.plugin.editor_handler.disable_highlighter()}update_trigger_file_on_creation(){this.settings.trigger_on_file_creation?(this.trigger_on_file_creation_event=this.plugin.app.vault.on("create",e=>pt.on_file_creation(this.templater,this.plugin.app,e)),this.plugin.registerEvent(this.trigger_on_file_creation_event)):this.trigger_on_file_creation_event&&(this.plugin.app.vault.offref(this.trigger_on_file_creation_event),this.trigger_on_file_creation_event=void 0)}update_file_menu(){this.plugin.registerEvent(this.plugin.app.workspace.on("file-menu",(e,t)=>{t instanceof ft.TFolder&&e.addItem(n=>{n.setTitle("Create new note from template").setIcon("templater-icon").onClick(()=>{this.plugin.fuzzy_suggester.create_new_note_from_template(t)})})}))}};var We=U(require("obsidian"));var fr=class{constructor(e){this.plugin=e}setup(){this.plugin.addCommand({id:"insert-templater",name:"Open insert template modal",icon:"templater-icon",hotkeys:We.Platform.isMacOS?void 0:[{modifiers:["Alt"],key:"e"}],callback:()=>{this.plugin.fuzzy_suggester.insert_template()}}),this.plugin.addCommand({id:"replace-in-file-templater",name:"Replace templates in the active file",icon:"templater-icon",hotkeys:We.Platform.isMacOS?void 0:[{modifiers:["Alt"],key:"r"}],callback:()=>{this.plugin.templater.overwrite_active_file_commands()}}),this.plugin.addCommand({id:"jump-to-next-cursor-location",name:"Jump to next cursor location",icon:"text-cursor",hotkeys:[{modifiers:["Alt"],key:"Tab"}],callback:()=>{this.plugin.editor_handler.jump_to_next_cursor_location()}}),this.plugin.addCommand({id:"create-new-note-from-template",name:"Create new note from template",icon:"templater-icon",hotkeys:We.Platform.isMacOS?void 0:[{modifiers:["Alt"],key:"n"}],callback:()=>{this.plugin.fuzzy_suggester.create_new_note_from_template()}}),this.register_templates_hotkeys(),this.register_cli_handler()}register_templates_hotkeys(){this.plugin.settings.enabled_templates_hotkeys.forEach(e=>{e&&this.add_template_hotkey(null,e)})}add_template_hotkey(e,t){if(this.remove_template_hotkey(e),t){let n=this.plugin.settings.templates_folder?this.plugin.settings.templates_folder.length+1:0,i=t.slice(n,-3);this.plugin.addCommand({id:t,name:`Insert ${i}`,icon:"templater-icon",callback:()=>{let o=ce(()=>De(this.plugin.app,t),"Couldn't find the template file associated with this hotkey");!o||this.plugin.templater.append_template_to_active_file(o)}}),this.plugin.addCommand({id:`create-${t}`,name:`Create ${i}`,icon:"templater-icon",callback:()=>{let o=ce(()=>De(this.plugin.app,t),"Couldn't find the template file associated with this hotkey");!o||this.plugin.templater.create_new_note_from_template(o)}})}}remove_template_hotkey(e){e&&(this.plugin.removeCommand(`${e}`),this.plugin.removeCommand(`create-${e}`))}register_cli_handler(){this.plugin.registerCliHandler("templater:create-from-template","Create a new note from a Templater template",{template:{value:"",description:"Template file path (relative to vault root or templates folder)",required:!0},file:{value:"",description:"Output file path (relative to vault root)",required:!0},open:{description:"Open the created file in the UI",required:!1}},async e=>this.handle_create_from_template(e))}resolve_template_file(e){let t=e;t.endsWith(".md")||(t=`${t}.md`);try{return De(this.plugin.app,t)}catch{let n=this.plugin.settings.templates_folder;if(n){let i=(0,We.normalizePath)(`${n}/${t}`);return De(this.plugin.app,i)}throw new Error(`Template "${e}" not found`)}}async handle_create_from_template(e){let{template:t,file:n,open:i}=e;if(!t)return"Error: template parameter is required";if(!n)return"Error: file parameter is required";try{let o=this.resolve_template_file(t),a=(0,We.normalizePath)(n),u=sn(a),l=a.slice(u.length+1).replace(/\.md$/,""),d;if(u)try{d=Yn(this.plugin.app,u)}catch{}let h=i==="true",w=await this.plugin.templater.create_new_note_from_template(o,d??u,l,h);return w?w.path:"Error: Failed to create note from template"}catch(o){return`Error: ${o instanceof Error?o.message:String(o)}`}}};var Ar=U(require("obsidian"));var dr=U(require("obsidian"));var gr=class{constructor(e){this.app=e}async jump_to_next_cursor_location(){let e=this.app.workspace.activeEditor;if(!e?.editor)return;let t=e.editor.getValue(),{cursor_matches:n,positions:i}=this.get_cursor_matches_and_positions(t);if(!i||!n)return;let o=e instanceof dr.MarkdownView?e.currentMode.getFoldInfo():null,a=[];for(let u=n.length-1;u>=0;u--){let l=n[u],d=this.get_editor_position_from_index(t,l.index),h=this.get_editor_position_from_index(t,l.index+l[0].length);a.push({from:d,to:h,text:""})}e.editor.transaction({changes:a,selections:i.map(u=>({from:u}))}),o&&Array.isArray(o.folds)&&(i.forEach(u=>{o.folds=o.folds.filter(l=>l.from>u.line||l.to[0-9]*)\)\s*%>/g,n=Array.from(e.matchAll(t));if(n.length===0)return{};n.sort((d,h)=>Number(d.groups?.order||0)-Number(h.groups?.order||0));let i=n[0][0],o=n.filter(d=>d[0]===i),a=o[0][1]===""?[o[0]]:o,u=[],l=0;for(let d of a){let h=d.index-l;u.push(this.get_editor_position_from_index(e,h)),e=e.slice(0,h)+e.slice(h+d[0].length),l+=d[0].length}return{cursor_matches:a,positions:u}}};var mi=U(require("obsidian"));var Uo={app:{name:"app",description:"This module exposes the app instance. Prefer to use this over the global app instance."},user:{name:"user",description:"This module exposes custom made scripts, written by yourself within the script file folder location"},config:{name:"config",description:`This module exposes Templater's running configuration. This is mostly useful when writing scripts requiring some context information. `,functions:{template_file:{name:"template_file",description:"The `TFile` object representing the template file.",definition:"tp.config.template_file"},target_file:{name:"target_file",description:"The `TFile` object representing the target file where the template will be inserted.",definition:"tp.config.target_file"},run_mode:{name:"run_mode",description:"The `RunMode`, representing the way Templater was launched (Create new from template, Append to active file, ...).",definition:"tp.config.run_mode"},active_file:{name:"active_file",description:"The active file (if existing) when launching Templater.",definition:"tp.config.active_file?"}}},date:{name:"date",description:"This module contains every internal function related to dates.",functions:{now:{name:"now",description:"Retrieves the date.",definition:'tp.date.now(format: string = "YYYY-MM-DD", offset?: number | string, reference?: string, reference_format?: string)',args:[{name:"format",description:'The format for the date. Defaults to `"YYYY-MM-DD"`. Refer to the [Momentjs format reference](https://momentjs.com/docs/#/displaying/format/).'},{name:"offset",description:"Duration to offset the date from. If a number is provided, duration will be added to the date in days. You can also specify the offset as a string using the ISO 8601 format."},{name:"reference",description:"The date to use instead of today's date, e.g. set this to the note's title."},{name:"reference_format",description:"The format for the reference date. Refer to the [Momentjs format reference](https://momentjs.com/docs/#/displaying/format/)."}],examples:[{name:"Date now",example:"<% tp.date.now() %>"},{name:"Date now with format",example:'<% tp.date.now("Do MMMM YYYY") %>'},{name:"Last week",example:'<% tp.date.now("YYYY-MM-DD", -7) %>'},{name:"Next week",example:'<% tp.date.now("YYYY-MM-DD", 7) %>'},{name:"Last month",example:'<% tp.date.now("YYYY-MM-DD", "P-1M") %>'},{name:"Next year",example:'<% tp.date.now("YYYY-MM-DD", "P1Y") %>'},{name:"File's title date + 1 day (tomorrow)",example:'<% tp.date.now("YYYY-MM-DD", 1, tp.file.title, "YYYY-MM-DD") %>'},{name:"File's title date - 1 day (yesterday)",example:'<% tp.date.now("YYYY-MM-DD", -1, tp.file.title, "YYYY-MM-DD") %>'}]},tomorrow:{name:"tomorrow",description:"Retrieves tomorrow's date.",definition:'tp.date.tomorrow(format: string = "YYYY-MM-DD")',args:[{name:"format",description:'The format for the date. Defaults to `"YYYY-MM-DD"`. Refer to the [Momentjs format reference](https://momentjs.com/docs/#/displaying/format/).'}],examples:[{name:"Date tomorrow",example:"<% tp.date.tomorrow() %>"},{name:"Date tomorrow with format",example:'<% tp.date.tomorrow("Do MMMM YYYY") %>'}]},yesterday:{name:"yesterday",description:"Retrieves yesterday's date.",definition:'tp.date.yesterday(format: string = "YYYY-MM-DD")',args:[{name:"format",description:'The format for the date. Defaults to `"YYYY-MM-DD"`. Refer to the [Momentjs format reference](https://momentjs.com/docs/#/displaying/format/).'}],examples:[{name:"Date yesterday",example:"<% tp.date.yesterday() %>"},{name:"Date yesterday with format",example:'<% tp.date.yesterday("Do MMMM YYYY") %>'}]},weekday:{name:"weekday",description:"",definition:'tp.date.weekday(format: string = "YYYY-MM-DD", weekday: number, reference?: string, reference_format?: string)',args:[{name:"format",description:'The format for the date. Defaults to `"YYYY-MM-DD"`. Refer to the [Momentjs format reference](https://momentjs.com/docs/#/displaying/format/).'},{name:"weekday",description:"Week day number. If the locale assigns Monday as the first day of the week, `0` will be Monday, `-7` will be last week's day."},{name:"reference",description:"The reference date to use instead of today, e.g. set this to the note's title."},{name:"reference_format",description:"The format for the reference date. Refer to the [Momentjs format reference](https://momentjs.com/docs/#/displaying/format/)."}],examples:[{name:"This week's Monday",example:'<% tp.date.weekday("YYYY-MM-DD", 0) %>'},{name:"Next Monday",example:'<% tp.date.weekday("YYYY-MM-DD", 7) %>'},{name:"File's title Monday",example:'<% tp.date.weekday("YYYY-MM-DD", 0, tp.file.title, "YYYY-MM-DD") %>'},{name:"File's title previous Monday",example:'<% tp.date.weekday("YYYY-MM-DD", -7, tp.file.title, "YYYY-MM-DD") %>'}]}},momentjs:{examples:[{name:"Date now",example:'<% moment(tp.file.title, "YYYY-MM-DD").format("YYYY-MM-DD") %>'},{name:"Get start of month from note title",example:'<% moment(tp.file.title, "YYYY-MM-DD").startOf("month").format("YYYY-MM-DD") %>'},{name:"Get end of month from note title",example:'<% moment(tp.file.title, "YYYY-MM-DD").endOf("month").format("YYYY-MM-DD") %>'}]}},file:{name:"file",description:"This module contains every internal function related to files.",functions:{content:{name:"content",description:"The string contents of the file at the time that Templater was executed. Manipulating this string will *not* update the current file.",definition:"tp.file.content",examples:[{name:"Retrieve file content",example:"<% tp.file.content %>"}]},create_new:{name:"create_new",description:"Creates a new file using a specified template or with a specified content.",definition:"tp.file.create_new(template: TFile | string, filename: string = 'Untitled', open_new: boolean = false, folder?: TFolder | string)",args:[{name:"template",description:"Either the template used for the new file content, or the file content as a string. If it is the template to use, you retrieve it with `tp.file.find_tfile(TEMPLATENAME)`."},{name:"filename",description:'The filename of the new file, defaults to "Untitled".'},{name:"open_new",description:"Whether to open or not the newly created file. Warning: if you use this option, since commands are executed asynchronously, the file can be opened first and then other commands are appended to that new file and not the previous file."},{name:"folder",description:'The folder to put the new file in, defaults to Obsidian\'s default location. If you want the file to appear in a different folder, specify it with `"PATH/TO/FOLDERNAME"` or `tp.app.vault.getAbstractFileByPath("PATH/TO/FOLDERNAME")`.'}],examples:[{name:"File creation",example:'<%* await tp.file.create_new("MyFileContent", "MyFilename") %>'},{name:"File creation with template",example:'<%* await tp.file.create_new(tp.file.find_tfile("MyTemplate"), "MyFilename") %>'},{name:"File creation and open created note",example:'<%* await tp.file.create_new("MyFileContent", "MyFilename", true) %>'},{name:"File creation in current folder",example:'<%* await tp.file.create_new("MyFileContent", "MyFilename", false, tp.file.folder(true)) %>'},{name:"File creation in specified folder with string path",example:'<%* await tp.file.create_new("MyFileContent", "MyFilename", false, "Path/To/MyFolder") %>'},{name:"File creation in specified folder with TFolder",example:'<%* await tp.file.create_new("MyFileContent", "MyFilename", false, tp.app.vault.getAbstractFileByPath("MyFolder")) %>'},{name:"File creation and append link to current note",example:'[[<% (await tp.file.create_new("MyFileContent", "MyFilename")).basename %>]]'}]},creation_date:{name:"creation_date",description:"Retrieves the current file's creation date.",definition:'tp.file.creation_date(format: string = "YYYY-MM-DD HH:mm")',args:[{name:"format",description:'The format for the date. Defaults to `"YYYY-MM-DD HH:mm"`. Refer to [format reference](https://momentjs.com/docs/#/displaying/format/).'}],examples:[{name:"File creation date",example:"<% tp.file.creation_date() %>"},{name:"File creation date with format",example:'<% tp.file.creation_date("dddd Do MMMM YYYY HH:mm") %>'}]},cursor:{name:"cursor",description:`Sets the cursor to this location after the template has been inserted. @@ -32,14 +32,22 @@ If you specify multiple tp.file.cursor with the same order, the editor will swit let value = await tp.system.prompt("Please enter a value"); %> # <% value %> -selected value: <% value %>`}]},suggester:{name:"suggester",description:"Spawns a suggester prompt and returns the user's chosen item.",definition:'tp.system.suggester(text_items: string[] | ((item: T) => string), items: T[], throw_on_cancel: boolean = false, placeholder: string = "", limit?: number = undefined)',args:[{name:"text_items",description:"Array of strings representing the text that will be displayed for each item in the suggester prompt. This can also be a function that maps an item to its text representation."},{name:"items",description:"Array containing the values of each item in the correct order."},{name:"throw_on_cancel",description:"Throws an error if the prompt is canceled, instead of returning a `null` value."},{name:"placeholder",description:"Placeholder string of the prompt."},{name:"limit",description:"Limit the number of items rendered at once (useful to improve performance when displaying large lists)."}],examples:[{name:"Suggester",example:'<% await tp.system.suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"]) %>'},{name:"Suggester with mapping function (same as above example)",example:'<% await tp.system.suggester((item) => item, ["Happy", "Sad", "Confused"]) %>'},{name:"Suggester for files",example:"[[<% (await tp.system.suggester((item) => item.basename, tp.app.vault.getMarkdownFiles())).basename %>]]"},{name:"Suggester for tags",example:'<% await tp.system.suggester(item => item, Object.keys(tp.app.metadataCache.getTags()).map(x => x.replace("#", ""))) %>'},{name:"Reuse value from suggester",example:`<%* +selected value: <% value %>`}]},suggester:{name:"suggester",description:"Spawns a suggester prompt and returns the user's chosen item.",definition:'tp.system.suggester(text_items: string[] | ((item: T) => string), items: T[], throw_on_cancel: boolean = false, placeholder: string = "", limit?: number = undefined, default_value?: T = undefined)',args:[{name:"text_items",description:"Array of strings representing the text that will be displayed for each item in the suggester prompt. This can also be a function that maps an item to its text representation."},{name:"items",description:"Array containing the values of each item in the correct order."},{name:"throw_on_cancel",description:"Throws an error if the prompt is canceled, instead of returning a `null` value."},{name:"placeholder",description:"Placeholder string of the prompt."},{name:"limit",description:"Limit the number of items rendered at once (useful to improve performance when displaying large lists)."},{name:"default_value",description:"Default value to initialize the suggester with."}],examples:[{name:"Suggester",example:'<% await tp.system.suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"]) %>'},{name:"Suggester with mapping function (same as above example)",example:'<% await tp.system.suggester((item) => item, ["Happy", "Sad", "Confused"]) %>'},{name:"Suggester for files",example:"[[<% (await tp.system.suggester((item) => item.basename, tp.app.vault.getMarkdownFiles())).basename %>]]"},{name:"Suggester for tags",example:'<% await tp.system.suggester(item => item, Object.keys(tp.app.metadataCache.getTags()).map(x => x.replace("#", ""))) %>'},{name:"Reuse value from suggester",example:`<%* let selectedValue = await tp.system.suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"]); %> # <% selectedValue %> -selected value: <% selectedValue %>`}]},multi_suggester:{name:"multi_suggester",description:"Spawns a suggester prompt that supports selecting multiple items and returns the user's chosen items.",definition:'tp.system.multi_suggester(text_items: string[] | ((item: T) => string), items: T[], throw_on_cancel: boolean = false, title: string = "", limit?: number = undefined)',args:[{name:"text_items",description:"Array of strings representing the text that will be displayed for each item in the suggester prompt. This can also be a function that maps an item to its text representation."},{name:"items",description:"Array containing the values of each item in the correct order."},{name:"throw_on_cancel",description:"Throws an error if the prompt is canceled, instead of returning a `null` value."},{name:"title",description:"Text placed at the top of the modal."},{name:"limit",description:"Limit the number of items rendered at once (useful to improve performance when displaying large lists)."}],examples:[{name:"Multi-suggester",example:'<% await tp.system.multi_suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"]) %>'},{name:"Multi-suggester with mapping function (same as above example)",example:'<% await tp.system.multi_suggester((item) => item, ["Happy", "Sad", "Confused"]) %>'},{name:"Multi-suggester for files",example:"<% (await tp.system.multi_suggester((item) => item.basename, tp.app.vault.getMarkdownFiles())).map(f => `[[${f.basename}]]`) %>"},{name:"Multi-suggester for tags",example:'<% await tp.system.multi_suggester(item => item, Object.keys(tp.app.metadataCache.getTags()).map(x => x.replace("#", ""))) %>'},{name:"Reuse value from multi-suggester",example:`<%* +selected value: <% selectedValue %>`},{name:"Default value for the suggester",example:`<%* +let selectedValue = await tp.system.suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"], false, "", undefined, "Confused"); +%> +# <% selectedValue %> +selected value: <% selectedValue %>`}]},multi_suggester:{name:"multi_suggester",description:"Spawns a suggester prompt that supports selecting multiple items and returns the user's chosen items.",definition:'tp.system.multi_suggester(text_items: string[] | ((item: T) => string), items: T[], throw_on_cancel: boolean = false, title: string = "", limit?: number = undefined, default_values?: T[] = undefined)',args:[{name:"text_items",description:"Array of strings representing the text that will be displayed for each item in the suggester prompt. This can also be a function that maps an item to its text representation."},{name:"items",description:"Array containing the values of each item in the correct order."},{name:"throw_on_cancel",description:"Throws an error if the prompt is canceled, instead of returning a `null` value."},{name:"title",description:"Text placed at the top of the modal."},{name:"limit",description:"Limit the number of items rendered at once (useful to improve performance when displaying large lists)."},{name:"default_values",description:"Default values to initialize the suggester with."}],examples:[{name:"Multi-suggester",example:'<% await tp.system.multi_suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"]) %>'},{name:"Multi-suggester with mapping function (same as above example)",example:'<% await tp.system.multi_suggester((item) => item, ["Happy", "Sad", "Confused"]) %>'},{name:"Multi-suggester for files",example:"<% (await tp.system.multi_suggester((item) => item.basename, tp.app.vault.getMarkdownFiles())).map(f => `[[${f.basename}]]`) %>"},{name:"Multi-suggester for tags",example:'<% await tp.system.multi_suggester(item => item, Object.keys(tp.app.metadataCache.getTags()).map(x => x.replace("#", ""))) %>'},{name:"Reuse value from multi-suggester",example:`<%* let selectedValues = await tp.system.multi_suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"]); %> # <% selectedValues %> -selected values: <% selectedValues %>`}]}}},web:{name:"web",description:"This modules contains every internal function related to the web (making web requests).",functions:{daily_quote:{name:"daily_quote",description:"Retrieves and parses the daily quote from `https://github.com/Zachatoo/quotes-database` as a callout.",definition:"tp.web.daily_quote()",examples:[{name:"Daily quote",example:"<% await tp.web.daily_quote() %>"}]},random_picture:{name:"random_picture",description:"Gets a random image from `https://unsplash.com/`.",definition:"tp.web.random_picture(size?: string, query?: string, include_size?: boolean)",args:[{name:"size",description:"Image size in the format `x`."},{name:"query",description:"Limits selection to photos matching a search term. Multiple search terms can be passed separated by a comma."},{name:"include_size",description:"Optional argument to include the specified size in the image link markdown. Defaults to false."}],examples:[{name:"Random picture",example:"<% await tp.web.random_picture() %>"},{name:"Random picture with size",example:'<% await tp.web.random_picture("200x200") %>'},{name:"Random picture with size and query",example:'<% await tp.web.random_picture("200x200", "landscape,water") %>'}]},request:{name:"request",description:"Makes a HTTP request to the specified URL. Optionally, you can specify a path to extract specific data from the response.",definition:"tp.web.request(url: string, path?: string)",args:[{name:"url",description:"The URL to which the HTTP request will be made."},{name:"path",description:"A path within the response JSON to extract specific data."}],examples:[{name:"Simple request",example:'<% await tp.web.request("https://jsonplaceholder.typicode.com/todos/1") %>'},{name:"Request with path",example:'<% await tp.web.request("https://jsonplaceholder.typicode.com/todos", "0.title") %>'}]}}}},Zo={tp:ec};var tc=["app","config","date","file","frontmatter","hooks","obsidian","system","user","web"],nc=new Set(tc);function ea(n){return typeof n=="string"&&nc.has(n)}function Mi(n){return!!(n.definition||n.returns||n.args)}var Oi=class{constructor(e){this.plugin=e;this.documentation=Zo}get_all_modules_documentation(){let e=this.documentation.tp;return(!this.plugin.settings||!this.plugin.settings.user_scripts_folder)&&(e=Object.values(e).filter(t=>t.name!=="user")),Object.values(e).map(t=>(t.queryKey=t.name,t))}async get_all_functions_documentation(e,t){if(e==="app")return this.get_app_functions_documentation(this.plugin.app,t);if(e==="user"){if(!this.plugin.settings||!this.plugin.settings.user_scripts_folder)return;let r=await Se(async()=>{let i=Je(this.plugin.app,this.plugin.settings.user_scripts_folder).filter(a=>a.extension=="js");return await po(this.plugin.app,i)},"User Scripts folder doesn't exist");return!r||r.length===0?void 0:r.reduce((i,o)=>o.extension!=="js"?i:[...i,{name:o.basename,queryKey:o.basename,definition:"",description:o.description,returns:o.returns,args:o.arguments.reduce((l,c)=>(l[c.name]={name:c.name,description:c.description},l),{}),example:""}],[])}if(!!this.documentation.tp[e].functions)return Object.values(this.documentation.tp[e].functions).map(r=>(r.queryKey=r.name,r))}get_app_functions_documentation(e,t){if(!vn(e))return[];let r=t.split(".");if(r.length===0)return[];let i=e;for(let c=0;c[a-z]*)?(?\.(?[a-zA-Z_.]*)?)?$/;this.documentation=new Oi(e),this.intellisense_render_setting=e.settings.intellisense_render}onTrigger(e,t,r){let i=t.getRange({line:e.line,ch:0},{line:e.line,ch:e.ch}),o=this.tp_keyword_regex.exec(i);if(!o)return null;let a,l=o.groups&&o.groups.module||"";if(this.module_name=l,o.groups&&o.groups.fn_trigger){if(l==""||!ea(l))return null;this.function_trigger=!0,this.function_name=o.groups.fn||"",a=this.function_name}else this.function_trigger=!1,a=this.module_name;let c={start:{line:e.line,ch:e.ch-a.length},end:{line:e.line,ch:e.ch},query:a};return this.latest_trigger_info=c,c}async getSuggestions(e){let t;return this.module_name&&this.function_trigger?t=await this.documentation.get_all_functions_documentation(this.module_name,this.function_name):t=this.documentation.get_all_modules_documentation(),t?t.filter(r=>r.queryKey.toLowerCase().startsWith(e.query.toLowerCase())):[]}renderSuggestion(e,t){if(t.createEl("b",{text:e.name}),Mi(e)){if(e.args&&this.getNumberOfArguments(e.args)>0&&Lo(this.intellisense_render_setting)){t.createEl("p",{text:"Parameter list:"});let r=t.createEl("ol");for(let[i,o]of Object.entries(e.args))Vr(r,i,o.description)}e.returns&&qo(this.intellisense_render_setting)&&Vr(t,"Returns",e.returns)}this.function_trigger&&Mi(e)&&t.createEl("code",{text:e.definition}),e.description&&Ho(this.intellisense_render_setting)&&t.createEl("div",{text:e.description})}selectSuggestion(e,t){let r=this.app.workspace.activeEditor;if(!(!r||!r.editor)&&(r.editor.replaceRange(e.queryKey,this.latest_trigger_info.start,this.latest_trigger_info.end),this.latest_trigger_info.start.ch==this.latest_trigger_info.end.ch)){let i=this.latest_trigger_info.end;i.ch+=e.queryKey.length,r.editor.setCursor(i)}}getNumberOfArguments(e){try{return new Map(Object.entries(e)).size}catch{return 0}}updateAutocompleteIntellisenseSetting(e){this.intellisense_render_setting=e}};(function(n){n(window.CodeMirror)})(function(n){"use strict";n.defineMode("javascript",function(e,t){var r=e.indentUnit,i=t.statementIndent,o=t.jsonld,a=t.json||o,l=t.trackScope!==!1,c=t.typescript,d=t.wordCharacters||/[\w$\xa1-\uffff]/,m=function(){function s(ve){return{type:ve,style:"keyword"}}var p=s("keyword a"),A=s("keyword b"),x=s("keyword c"),I=s("keyword d"),Y=s("operator"),z={type:"atom",style:"atom"};return{if:s("if"),while:p,with:p,else:A,do:A,try:A,finally:A,return:I,break:I,continue:I,new:s("new"),delete:x,void:x,throw:x,debugger:s("debugger"),var:s("var"),const:s("var"),let:s("var"),function:s("function"),catch:s("catch"),for:s("for"),switch:s("switch"),case:s("case"),default:s("default"),in:Y,typeof:Y,instanceof:Y,true:z,false:z,null:z,undefined:z,NaN:z,Infinity:z,this:s("this"),class:s("class"),super:s("atom"),yield:x,export:s("export"),import:s("import"),extends:x,await:x}}(),_=/[+\-*&%=<>!?|~^@]/,w=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function b(s){for(var p=!1,A,x=!1;(A=s.next())!=null;){if(!p){if(A=="/"&&!x)return;A=="["?x=!0:x&&A=="]"&&(x=!1)}p=!p&&A=="\\"}}var S,k;function E(s,p,A){return S=s,k=A,p}function O(s,p){var A=s.next();if(A=='"'||A=="'")return p.tokenize=$(A),p.tokenize(s,p);if(A=="."&&s.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return E("number","number");if(A=="."&&s.match(".."))return E("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(A))return E(A);if(A=="="&&s.eat(">"))return E("=>","operator");if(A=="0"&&s.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return E("number","number");if(/\d/.test(A))return s.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),E("number","number");if(A=="/")return s.eat("*")?(p.tokenize=K,K(s,p)):s.eat("/")?(s.skipToEnd(),E("comment","comment")):Ji(s,p,1)?(b(s),s.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),E("regexp","string-2")):(s.eat("="),E("operator","operator",s.current()));if(A=="`")return p.tokenize=P,P(s,p);if(A=="#"&&s.peek()=="!")return s.skipToEnd(),E("meta","meta");if(A=="#"&&s.eatWhile(d))return E("variable","property");if(A=="<"&&s.match("!--")||A=="-"&&s.match("->")&&!/\S/.test(s.string.slice(0,s.start)))return s.skipToEnd(),E("comment","comment");if(_.test(A))return(A!=">"||!p.lexical||p.lexical.type!=">")&&(s.eat("=")?(A=="!"||A=="=")&&s.eat("="):/[<>*+\-|&?]/.test(A)&&(s.eat(A),A==">"&&s.eat(A))),A=="?"&&s.eat(".")?E("."):E("operator","operator",s.current());if(d.test(A)){s.eatWhile(d);var x=s.current();if(p.lastType!="."){if(m.propertyIsEnumerable(x)){var I=m[x];return E(I.type,I.style,x)}if(x=="async"&&s.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return E("async","keyword",x)}return E("variable","variable",x)}}function $(s){return function(p,A){var x=!1,I;if(o&&p.peek()=="@"&&p.match(w))return A.tokenize=O,E("jsonld-keyword","meta");for(;(I=p.next())!=null&&!(I==s&&!x);)x=!x&&I=="\\";return x||(A.tokenize=O),E("string","string")}}function K(s,p){for(var A=!1,x;x=s.next();){if(x=="/"&&A){p.tokenize=O;break}A=x=="*"}return E("comment","comment")}function P(s,p){for(var A=!1,x;(x=s.next())!=null;){if(!A&&(x=="`"||x=="$"&&s.eat("{"))){p.tokenize=O;break}A=!A&&x=="\\"}return E("quasi","string-2",s.current())}var H="([{}])";function F(s,p){p.fatArrowAt&&(p.fatArrowAt=null);var A=s.string.indexOf("=>",s.start);if(!(A<0)){if(c){var x=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(s.string.slice(s.start,A));x&&(A=x.index)}for(var I=0,Y=!1,z=A-1;z>=0;--z){var ve=s.string.charAt(z),We=H.indexOf(ve);if(We>=0&&We<3){if(!I){++z;break}if(--I==0){ve=="("&&(Y=!0);break}}else if(We>=3&&We<6)++I;else if(d.test(ve))Y=!0;else if(/["'\/`]/.test(ve))for(;;--z){if(z==0)return;var ja=s.string.charAt(z-1);if(ja==ve&&s.string.charAt(z-2)!="\\"){z--;break}}else if(Y&&!I){++z;break}}Y&&!I&&(p.fatArrowAt=z)}}var J={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function te(s,p,A,x,I,Y){this.indented=s,this.column=p,this.type=A,this.prev=I,this.info=Y,x!=null&&(this.align=x)}function ne(s,p){if(!l)return!1;for(var A=s.localVars;A;A=A.next)if(A.name==p)return!0;for(var x=s.context;x;x=x.prev)for(var A=x.vars;A;A=A.next)if(A.name==p)return!0}function Q(s,p,A,x,I){var Y=s.cc;for(h.state=s,h.stream=I,h.marked=null,h.cc=Y,h.style=p,s.lexical.hasOwnProperty("align")||(s.lexical.align=!0);;){var z=Y.length?Y.pop():a?W:ee;if(z(A,x)){for(;Y.length&&Y[Y.length-1].lex;)Y.pop()();return h.marked?h.marked:A=="variable"&&ne(s,x)?"variable-2":p}}}var h={state:null,column:null,marked:null,cc:null};function C(){for(var s=arguments.length-1;s>=0;s--)h.cc.push(arguments[s])}function f(){return C.apply(null,arguments),!0}function Ie(s,p){for(var A=p;A;A=A.next)if(A.name==s)return!0;return!1}function Ee(s){var p=h.state;if(h.marked="def",!!l){if(p.context){if(p.lexical.info=="var"&&p.context&&p.context.block){var A=_e(s,p.context);if(A!=null){p.context=A;return}}else if(!Ie(s,p.localVars)){p.localVars=new ke(s,p.localVars);return}}t.globalVars&&!Ie(s,p.globalVars)&&(p.globalVars=new ke(s,p.globalVars))}}function _e(s,p){if(p)if(p.block){var A=_e(s,p.prev);return A?A==p.prev?p:new Ye(A,p.vars,!0):null}else return Ie(s,p.vars)?p:new Ye(p.prev,new ke(s,p.vars),!1);else return null}function xe(s){return s=="public"||s=="private"||s=="protected"||s=="abstract"||s=="readonly"}function Ye(s,p,A){this.prev=s,this.vars=p,this.block=A}function ke(s,p){this.name=s,this.next=p}var Ut=new ke("this",new ke("arguments",null));function Ue(){h.state.context=new Ye(h.state.context,h.state.localVars,!1),h.state.localVars=Ut}function et(){h.state.context=new Ye(h.state.context,h.state.localVars,!0),h.state.localVars=null}function ye(){h.state.localVars=h.state.context.vars,h.state.context=h.state.context.prev}ye.lex=!0;function B(s,p){var A=function(){var x=h.state,I=x.indented;if(x.lexical.type=="stat")I=x.lexical.indented;else for(var Y=x.lexical;Y&&Y.type==")"&&Y.align;Y=Y.prev)I=Y.indented;x.lexical=new te(I,h.stream.column(),s,null,x.lexical,p)};return A.lex=!0,A}function N(){var s=h.state;s.lexical.prev&&(s.lexical.type==")"&&(s.indented=s.lexical.indented),s.lexical=s.lexical.prev)}N.lex=!0;function q(s){function p(A){return A==s?f():s==";"||A=="}"||A==")"||A=="]"?C():f(p)}return p}function ee(s,p){return s=="var"?f(B("vardef",p),Dr,q(";"),N):s=="keyword a"?f(B("form"),St,ee,N):s=="keyword b"?f(B("form"),ee,N):s=="keyword d"?h.stream.match(/^\s*$/,!1)?f():f(B("stat"),nt,q(";"),N):s=="debugger"?f(q(";")):s=="{"?f(B("}"),et,$n,N,ye):s==";"?f():s=="if"?(h.state.lexical.info=="else"&&h.state.cc[h.state.cc.length-1]==N&&h.state.cc.pop()(),f(B("form"),St,ee,N,Ri)):s=="function"?f(xt):s=="for"?f(B("form"),et,Yi,ee,ye,N):s=="class"||c&&p=="interface"?(h.marked="keyword",f(B("form",s=="class"?s:p),Gi,N)):s=="variable"?c&&p=="declare"?(h.marked="keyword",f(ee)):c&&(p=="module"||p=="enum"||p=="type")&&h.stream.match(/^\s*\w/,!1)?(h.marked="keyword",p=="enum"?f(zi):p=="type"?f(Ui,q("operator"),V,q(";")):f(B("form"),Fe,q("{"),B("}"),$n,N,N)):c&&p=="namespace"?(h.marked="keyword",f(B("form"),W,ee,N)):c&&p=="abstract"?(h.marked="keyword",f(ee)):f(B("stat"),Ln):s=="switch"?f(B("form"),St,q("{"),B("}","switch"),et,$n,N,N,ye):s=="case"?f(W,q(":")):s=="default"?f(q(":")):s=="catch"?f(B("form"),Ue,tt,ee,N,ye):s=="export"?f(B("stat"),ga,N):s=="import"?f(B("stat"),ha,N):s=="async"?f(ee):p=="@"?f(W,ee):C(B("stat"),W,q(";"),N)}function tt(s){if(s=="(")return f(Dt,q(")"))}function W(s,p){return On(s,p,!1)}function je(s,p){return On(s,p,!0)}function St(s){return s!="("?C():f(B(")"),nt,q(")"),N)}function On(s,p,A){if(h.state.fatArrowAt==h.stream.start){var x=A?Fn:In;if(s=="(")return f(Ue,B(")"),se(Dt,")"),N,q("=>"),x,ye);if(s=="variable")return C(Ue,Fe,q("=>"),x,ye)}var I=A?At:rt;return J.hasOwnProperty(s)?f(I):s=="function"?f(xt,I):s=="class"||c&&p=="interface"?(h.marked="keyword",f(B("form"),ma,N)):s=="keyword c"||s=="async"?f(A?je:W):s=="("?f(B(")"),nt,q(")"),N,I):s=="operator"||s=="spread"?f(A?je:W):s=="["?f(B("]"),_a,N,I):s=="{"?fn(Pt,"}",null,I):s=="quasi"?C(Ct,I):s=="new"?f(it(A)):f()}function nt(s){return s.match(/[;\}\)\],]/)?C():C(W)}function rt(s,p){return s==","?f(nt):At(s,p,!1)}function At(s,p,A){var x=A==!1?rt:At,I=A==!1?W:je;if(s=="=>")return f(Ue,A?Fn:In,ye);if(s=="operator")return/\+\+|--/.test(p)||c&&p=="!"?f(x):c&&p=="<"&&h.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?f(B(">"),se(V,">"),N,x):p=="?"?f(W,q(":"),I):f(I);if(s=="quasi")return C(Ct,x);if(s!=";"){if(s=="(")return fn(je,")","call",x);if(s==".")return f(un,x);if(s=="[")return f(B("]"),nt,q("]"),N,x);if(c&&p=="as")return h.marked="keyword",f(V,x);if(s=="regexp")return h.state.lastType=h.marked="operator",h.stream.backUp(h.stream.pos-h.stream.start-1),f(I)}}function Ct(s,p){return s!="quasi"?C():p.slice(p.length-2)!="${"?f(Ct):f(nt,Bn)}function Bn(s){if(s=="}")return h.marked="string-2",h.state.tokenize=P,f(Ct)}function In(s){return F(h.stream,h.state),C(s=="{"?ee:W)}function Fn(s){return F(h.stream,h.state),C(s=="{"?ee:je)}function it(s){return function(p){return p=="."?f(s?qn:Gt):p=="variable"&&c?f(la,s?At:rt):C(s?je:W)}}function Gt(s,p){if(p=="target")return h.marked="keyword",f(rt)}function qn(s,p){if(p=="target")return h.marked="keyword",f(At)}function Ln(s){return s==":"?f(N,ee):C(rt,q(";"),N)}function un(s){if(s=="variable")return h.marked="property",f()}function Pt(s,p){if(s=="async")return h.marked="property",f(Pt);if(s=="variable"||h.style=="keyword"){if(h.marked="property",p=="get"||p=="set")return f(Hn);var A;return c&&h.state.fatArrowAt==h.stream.start&&(A=h.stream.match(/^\s*:\s*/,!1))&&(h.state.fatArrowAt=h.stream.pos+A[0].length),f(Ge)}else{if(s=="number"||s=="string")return h.marked=o?"property":h.style+" property",f(Ge);if(s=="jsonld-keyword")return f(Ge);if(c&&xe(p))return h.marked="keyword",f(Pt);if(s=="[")return f(W,Wt,q("]"),Ge);if(s=="spread")return f(je,Ge);if(p=="*")return h.marked="keyword",f(Pt);if(s==":")return C(Ge)}}function Hn(s){return s!="variable"?C(Ge):(h.marked="property",f(xt))}function Ge(s){if(s==":")return f(je);if(s=="(")return C(xt)}function se(s,p,A){function x(I,Y){if(A?A.indexOf(I)>-1:I==","){var z=h.state.lexical;return z.info=="call"&&(z.pos=(z.pos||0)+1),f(function(ve,We){return ve==p||We==p?C():C(s)},x)}return I==p||Y==p?f():A&&A.indexOf(";")>-1?C(s):f(q(p))}return function(I,Y){return I==p||Y==p?f():C(s,x)}}function fn(s,p,A){for(var x=3;x"),V);if(s=="quasi")return C(Cr,ot)}function sa(s){if(s=="=>")return f(V)}function Sr(s){return s.match(/[\}\)\]]/)?f():s==","||s==";"?f(Sr):C(dn,Sr)}function dn(s,p){if(s=="variable"||h.style=="keyword")return h.marked="property",f(dn);if(p=="?"||s=="number"||s=="string")return f(dn);if(s==":")return f(V);if(s=="[")return f(q("variable"),oa,q("]"),dn);if(s=="(")return C(zt,dn);if(!s.match(/[;\}\)\],]/))return f()}function Cr(s,p){return s!="quasi"?C():p.slice(p.length-2)!="${"?f(Cr):f(V,ca)}function ca(s){if(s=="}")return h.marked="string-2",h.state.tokenize=P,f(Cr)}function Pr(s,p){return s=="variable"&&h.stream.match(/^\s*[?:]/,!1)||p=="?"?f(Pr):s==":"?f(V):s=="spread"?f(Pr):C(V)}function ot(s,p){if(p=="<")return f(B(">"),se(V,">"),N,ot);if(p=="|"||s=="."||p=="&")return f(V);if(s=="[")return f(V,q("]"),ot);if(p=="extends"||p=="implements")return h.marked="keyword",f(V);if(p=="?")return f(V,q(":"),V)}function la(s,p){if(p=="<")return f(B(">"),se(V,">"),N,ot)}function Kn(){return C(V,pa)}function pa(s,p){if(p=="=")return f(V)}function Dr(s,p){return p=="enum"?(h.marked="keyword",f(zi)):C(Fe,Wt,_t,fa)}function Fe(s,p){if(c&&xe(p))return h.marked="keyword",f(Fe);if(s=="variable")return Ee(p),f();if(s=="spread")return f(Fe);if(s=="[")return fn(ua,"]");if(s=="{")return fn(Ki,"}")}function Ki(s,p){return s=="variable"&&!h.stream.match(/^\s*:/,!1)?(Ee(p),f(_t)):(s=="variable"&&(h.marked="property"),s=="spread"?f(Fe):s=="}"?C():s=="["?f(W,q("]"),q(":"),Ki):f(q(":"),Fe,_t))}function ua(){return C(Fe,_t)}function _t(s,p){if(p=="=")return f(je)}function fa(s){if(s==",")return f(Dr)}function Ri(s,p){if(s=="keyword b"&&p=="else")return f(B("form","else"),ee,N)}function Yi(s,p){if(p=="await")return f(Yi);if(s=="(")return f(B(")"),da,N)}function da(s){return s=="var"?f(Dr,Vt):s=="variable"?f(Vt):C(Vt)}function Vt(s,p){return s==")"?f():s==";"?f(Vt):p=="in"||p=="of"?(h.marked="keyword",f(W,Vt)):C(W,Vt)}function xt(s,p){if(p=="*")return h.marked="keyword",f(xt);if(s=="variable")return Ee(p),f(xt);if(s=="(")return f(Ue,B(")"),se(Dt,")"),N,$i,ee,ye);if(c&&p=="<")return f(B(">"),se(Kn,">"),N,xt)}function zt(s,p){if(p=="*")return h.marked="keyword",f(zt);if(s=="variable")return Ee(p),f(zt);if(s=="(")return f(Ue,B(")"),se(Dt,")"),N,$i,ye);if(c&&p=="<")return f(B(">"),se(Kn,">"),N,zt)}function Ui(s,p){if(s=="keyword"||s=="variable")return h.marked="type",f(Ui);if(p=="<")return f(B(">"),se(Kn,">"),N)}function Dt(s,p){return p=="@"&&f(W,Dt),s=="spread"?f(Dt):c&&xe(p)?(h.marked="keyword",f(Dt)):c&&s=="this"?f(Wt,_t):C(Fe,Wt,_t)}function ma(s,p){return s=="variable"?Gi(s,p):Rn(s,p)}function Gi(s,p){if(s=="variable")return Ee(p),f(Rn)}function Rn(s,p){if(p=="<")return f(B(">"),se(Kn,">"),N,Rn);if(p=="extends"||p=="implements"||c&&s==",")return p=="implements"&&(h.marked="keyword"),f(c?V:W,Rn);if(s=="{")return f(B("}"),at,N)}function at(s,p){if(s=="async"||s=="variable"&&(p=="static"||p=="get"||p=="set"||c&&xe(p))&&h.stream.match(/^\s+[\w$\xa1-\uffff]/,!1))return h.marked="keyword",f(at);if(s=="variable"||h.style=="keyword")return h.marked="property",f(mn,at);if(s=="number"||s=="string")return f(mn,at);if(s=="[")return f(W,Wt,q("]"),mn,at);if(p=="*")return h.marked="keyword",f(at);if(c&&s=="(")return C(zt,at);if(s==";"||s==",")return f(at);if(s=="}")return f();if(p=="@")return f(W,at)}function mn(s,p){if(p=="!"||p=="?")return f(mn);if(s==":")return f(V,_t);if(p=="=")return f(je);var A=h.state.lexical.prev,x=A&&A.info=="interface";return C(x?zt:xt)}function ga(s,p){return p=="*"?(h.marked="keyword",f(Nr,q(";"))):p=="default"?(h.marked="keyword",f(W,q(";"))):s=="{"?f(se(Wi,"}"),Nr,q(";")):C(ee)}function Wi(s,p){if(p=="as")return h.marked="keyword",f(q("variable"));if(s=="variable")return C(je,Wi)}function ha(s){return s=="string"?f():s=="("?C(W):s=="."?C(rt):C(Yn,Vi,Nr)}function Yn(s,p){return s=="{"?fn(Yn,"}"):(s=="variable"&&Ee(p),p=="*"&&(h.marked="keyword"),f(Aa))}function Vi(s){if(s==",")return f(Yn,Vi)}function Aa(s,p){if(p=="as")return h.marked="keyword",f(Yn)}function Nr(s,p){if(p=="from")return h.marked="keyword",f(W)}function _a(s){return s=="]"?f():C(se(je,"]"))}function zi(){return C(B("form"),Fe,q("{"),B("}"),se(xa,"}"),N,N)}function xa(){return C(Fe,_t)}function ya(s,p){return s.lastType=="operator"||s.lastType==","||_.test(p.charAt(0))||/[,.]/.test(p.charAt(0))}function Ji(s,p,A){return p.tokenize==O&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(p.lastType)||p.lastType=="quasi"&&/\{\s*$/.test(s.string.slice(0,s.pos-(A||0)))}return{startState:function(s){var p={tokenize:O,lastType:"sof",cc:[],lexical:new te((s||0)-r,0,"block",!1),localVars:t.localVars,context:t.localVars&&new Ye(null,null,!1),indented:s||0};return t.globalVars&&typeof t.globalVars=="object"&&(p.globalVars=t.globalVars),p},token:function(s,p){if(s.sol()&&(p.lexical.hasOwnProperty("align")||(p.lexical.align=!1),p.indented=s.indentation(),F(s,p)),p.tokenize!=K&&s.eatSpace())return null;var A=p.tokenize(s,p);return S=="comment"?A:(p.lastType=S=="operator"&&(k=="++"||k=="--")?"incdec":S,Q(p,A,S,k,s))},indent:function(s,p){if(s.tokenize==K||s.tokenize==P)return n.Pass;if(s.tokenize!=O)return 0;var A=p&&p.charAt(0),x=s.lexical,I;if(!/^\s*else\b/.test(p))for(var Y=s.cc.length-1;Y>=0;--Y){var z=s.cc[Y];if(z==N)x=x.prev;else if(z!=Ri&&z!=ye)break}for(;(x.type=="stat"||x.type=="form")&&(A=="}"||(I=s.cc[s.cc.length-1])&&(I==rt||I==At)&&!/^[,\.=+\-*:?[\(]/.test(p));)x=x.prev;i&&x.type==")"&&x.prev.type=="stat"&&(x=x.prev);var ve=x.type,We=A==ve;return ve=="vardef"?x.indented+(s.lastType=="operator"||s.lastType==","?x.info.length+1:0):ve=="form"&&A=="{"?x.indented:ve=="form"?x.indented+r:ve=="stat"?x.indented+(ya(s,p)?i||r:0):x.info=="switch"&&!We&&t.doubleIndentSwitch!=!1?x.indented+(/^(?:case|default)\b/.test(p)?r:2*r):x.align?x.column+(We?0:1):x.indented+(We?0:r)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:a?null:"/*",blockCommentEnd:a?null:"*/",blockCommentContinue:a?null:" * ",lineComment:a?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:a?"json":"javascript",jsonldMode:o,jsonMode:a,expressionAllowed:Ji,skipExpression:function(s){Q(s,"atom","atom","true",new n.StringStream("",2,null))}}}),n.registerHelper("wordChars","javascript",/[\w$]/),n.defineMIME("text/javascript","javascript"),n.defineMIME("text/ecmascript","javascript"),n.defineMIME("application/javascript","javascript"),n.defineMIME("application/x-javascript","javascript"),n.defineMIME("application/ecmascript","javascript"),n.defineMIME("application/json",{name:"javascript",json:!0}),n.defineMIME("application/x-json",{name:"javascript",json:!0}),n.defineMIME("application/manifest+json",{name:"javascript",json:!0}),n.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),n.defineMIME("text/typescript",{name:"javascript",typescript:!0}),n.defineMIME("application/typescript",{name:"javascript",typescript:!0})});(function(n){n(window.CodeMirror)})(function(n){"use strict";n.customOverlayMode=function(e,t,r){return{startState:function(){return{base:n.startState(e),overlay:n.startState(t),basePos:0,baseCur:null,overlayPos:0,overlayCur:null,streamSeen:null}},copyState:function(i){return{base:n.copyState(e,i.base),overlay:n.copyState(t,i.overlay),basePos:i.basePos,baseCur:null,overlayPos:i.overlayPos,overlayCur:null}},token:function(i,o){return(i!=o.streamSeen||Math.min(o.basePos,o.overlayPos)0&&(this.activeEditorExtensions.pop(),this.plugin.app.workspace.updateOptions())}async jump_to_next_cursor_location(e=null,t=!1){t&&!this.plugin.settings.auto_jump_to_cursor||e&&wt(this.plugin.app)!==e||await this.cursor_jumper.jump_to_next_cursor_location()}async registerCodeMirrorMode(){if(!this.desktopShouldHighlight()&&!this.mobileShouldHighlight())return;let e=window.CodeMirror.getMode({},"javascript");if(e.name==="null"){oe(new D("Javascript syntax mode couldn't be found, can't enable syntax highlighting."));return}let t=window.CodeMirror.customOverlayMode;if(t==null){oe(new D("Couldn't find customOverlayMode, can't enable syntax highlighting."));return}window.CodeMirror.defineMode(ia,function(r){let i={startState:function(){return{...window.CodeMirror.startState(e),inCommand:!1,tag_class:"",freeLine:!1}},copyState:function(o){return{...window.CodeMirror.startState(e),inCommand:o.inCommand,tag_class:o.tag_class,freeLine:o.freeLine}},blankLine:function(o){return o.inCommand?"line-background-templater-command-bg":null},token:function(o,a){if(o.sol()&&a.inCommand&&(a.freeLine=!0),a.inCommand){let c="";if(o.match(/[-_]{0,1}%>/,!0)){a.inCommand=!1,a.freeLine=!1;let m=a.tag_class;return a.tag_class="",`line-${qi} ${Fi} ${ic} ${m}`}let d=e.token&&e.token(o,a);return o.peek()==null&&a.freeLine&&(c+=" line-background-templater-command-bg"),a.freeLine||(c+=` line-${qi}`),`${c} ${Fi} ${d}`}let l=o.match(/<%[-_]{0,1}\s*([*+]{0,1})/,!0);if(l!=null){switch(l[1]){case"*":a.tag_class=ac;break;default:a.tag_class=oc;break}return a.inCommand=!0,`line-${qi} ${Fi} ${rc} ${a.tag_class}`}for(;o.next()!=null&&!o.match(/<%/,!1););return null}};return t(window.CodeMirror.getMode(r,"hypermd"),i)})}updateEditorIntellisenseSetting(e){this.autocomplete.updateAutocompleteIntellisenseSetting(e)}};var Hi=class extends kr.Plugin{async onload(){await this.load_settings(),this.templater=new ln(this),await this.templater.setup(),this.editor_handler=new Li(this),await this.editor_handler.setup(),this.fuzzy_suggester=new pi(this),this.event_handler=new Tr(this,this.templater,this.settings),this.event_handler.setup(),this.command_handler=new Pi(this),this.command_handler.setup(),(0,kr.addIcon)("templater-icon",Ro),this.addRibbonIcon("templater-icon","Templater",async()=>{this.fuzzy_suggester.insert_template()}).setAttribute("id","rb-templater-icon"),this.addSettingTab(new li(this)),this.app.workspace.onLayoutReady(()=>{this.templater.execute_startup_scripts()})}async onExternalSettingsChange(){await this.load_settings()}onunload(){this.templater.functions_generator.teardown()}async save_settings(){await this.saveData(this.settings),this.editor_handler.updateEditorIntellisenseSetting(this.settings.intellisense_render)}async load_settings(){this.settings=Object.assign({},$o,await this.loadData())}}; +selected values: <% selectedValues %>`},{name:"Default value for the suggester",example:`<%* +let selectedValue = await tp.system.multi_suggester(["Happy", "Sad", "Confused"], ["Happy", "Sad", "Confused"], false, "", undefined, ["Happy", "Confused"]); +%> +# <% selectedValue %> +selected value: <% selectedValue %>`}]}}},web:{name:"web",description:"This modules contains every internal function related to the web (making web requests).",functions:{daily_quote:{name:"daily_quote",description:"Retrieves and parses the daily quote from `https://github.com/Zachatoo/quotes-database` as a callout.",definition:"tp.web.daily_quote()",examples:[{name:"Daily quote",example:"<% await tp.web.daily_quote() %>"}]},random_picture:{name:"random_picture",description:"Gets a random image from `https://unsplash.com/`.",definition:"tp.web.random_picture(size?: string, query?: string, include_size?: boolean)",args:[{name:"size",description:"Image size in the format `x`."},{name:"query",description:"Limits selection to photos matching a search term. Multiple search terms can be passed separated by a comma."},{name:"include_size",description:"Optional argument to include the specified size in the image link markdown. Defaults to false."}],examples:[{name:"Random picture",example:"<% await tp.web.random_picture() %>"},{name:"Random picture with size",example:'<% await tp.web.random_picture("200x200") %>'},{name:"Random picture with size and query",example:'<% await tp.web.random_picture("200x200", "landscape,water") %>'}]},request:{name:"request",description:"Makes a HTTP request to the specified URL. Optionally, you can specify a path to extract specific data from the response.",definition:"tp.web.request(url: string, path?: string)",args:[{name:"url",description:"The URL to which the HTTP request will be made."},{name:"path",description:"A path within the response JSON to extract specific data."}],examples:[{name:"Simple request",example:'<% await tp.web.request("https://jsonplaceholder.typicode.com/todos/1") %>'},{name:"Request with path",example:'<% await tp.web.request("https://jsonplaceholder.typicode.com/todos", "0.title") %>'}]}}}},fi={tp:Uo};var Go=["app","config","date","file","frontmatter","hooks","obsidian","system","user","web"],Ro=new Set(Go);function di(r){return typeof r=="string"&&Ro.has(r)}function gi(r){return!!(r.definition||r.returns||r.args)}var mr=class{constructor(e){this.plugin=e;this.documentation=fi}get_all_modules_documentation(){let e=this.documentation.tp;return(!this.plugin.settings||!this.plugin.settings.user_scripts_folder)&&(e=Object.values(e).filter(t=>t.name!=="user")),Object.values(e).map(t=>(t.queryKey=t.name,t))}async get_all_functions_documentation(e,t){if(e==="app")return this.get_app_functions_documentation(this.plugin.app,t);if(e==="user"){if(!this.plugin.settings||!this.plugin.settings.user_scripts_folder)return;let n=await se(async()=>{let i=je(this.plugin.app,this.plugin.settings.user_scripts_folder).filter(a=>a.extension=="js");return await Jr(this.plugin.app,i)},"User Scripts folder doesn't exist");return!n||n.length===0?void 0:n.reduce((i,o)=>o.extension!=="js"?i:[...i,{name:o.basename,queryKey:o.basename,definition:"",description:o.description,returns:o.returns,args:o.arguments.reduce((u,l)=>(u[l.name]={name:l.name,description:l.description},u),{}),example:""}],[])}if(!!this.documentation.tp[e].functions)return Object.values(this.documentation.tp[e].functions).map(n=>(n.queryKey=n.name,n))}get_app_functions_documentation(e,t){if(!Et(e))return[];let n=t.split(".");if(n.length===0)return[];let i=e;for(let l=0;l[a-z]*)?(?\.(?[a-zA-Z_.]*)?)?$/;this.documentation=new mr(e),this.intellisense_render_setting=e.settings.intellisense_render}onTrigger(e,t,n){let i=t.getRange({line:e.line,ch:0},{line:e.line,ch:e.ch}),o=this.tp_keyword_regex.exec(i);if(!o)return null;let a,u=o.groups&&o.groups.module||"";if(this.module_name=u,o.groups&&o.groups.fn_trigger){if(u==""||!di(u))return null;this.function_trigger=!0,this.function_name=o.groups.fn||"",a=this.function_name}else this.function_trigger=!1,a=this.module_name;let l={start:{line:e.line,ch:e.ch-a.length},end:{line:e.line,ch:e.ch},query:a};return this.latest_trigger_info=l,l}async getSuggestions(e){let t;return this.module_name&&this.function_trigger?t=await this.documentation.get_all_functions_documentation(this.module_name,this.function_name):t=this.documentation.get_all_modules_documentation(),t?t.filter(n=>n.queryKey.toLowerCase().startsWith(e.query.toLowerCase())):[]}renderSuggestion(e,t){let n=gi(e),i=n&&e.args&&this.getNumberOfArguments(e.args)>0&&Xr(this.intellisense_render_setting),o=n&&e.returns&&Qr(this.intellisense_render_setting),a=n&&this.function_trigger&&e.definition,u=e.description&&Zr(this.intellisense_render_setting),l=i||o||a||u;if(t.createEl("b",{text:e.name}),l&&t.createEl("br"),n){if(i){t.createEl("p",{text:"Parameter list:"});let d=t.createEl("ol");for(let[h,w]of Object.entries(e.args))Un(d,h,w.description)}o&&Un(t,"Returns",e.returns)}a&&t.createEl("code",{text:e.definition}),u&&t.createEl("div",{text:e.description})}selectSuggestion(e,t){let n=this.app.workspace.activeEditor;if(!(!n||!n.editor)&&(n.editor.replaceRange(e.queryKey,this.latest_trigger_info.start,this.latest_trigger_info.end),this.latest_trigger_info.start.ch==this.latest_trigger_info.end.ch)){let i=this.latest_trigger_info.end;i.ch+=e.queryKey.length,n.editor.setCursor(i)}}getNumberOfArguments(e){try{return new Map(Object.entries(e)).size}catch{return 0}}updateAutocompleteIntellisenseSetting(e){this.intellisense_render_setting=e}};(function(r){r(window.CodeMirror)})(function(r){"use strict";r.defineMode("javascript",function(e,t){var n=e.indentUnit,i=t.statementIndent,o=t.jsonld,a=t.json||o,u=t.trackScope!==!1,l=t.typescript,d=t.wordCharacters||/[\w$\xa1-\uffff]/,h=function(){function s(te){return{type:te,style:"keyword"}}var c=s("keyword a"),m=s("keyword b"),_=s("keyword c"),C=s("keyword d"),O=s("operator"),$={type:"atom",style:"atom"};return{if:s("if"),while:c,with:c,else:m,do:m,try:m,finally:m,return:C,break:C,continue:C,new:s("new"),delete:_,void:_,throw:_,debugger:s("debugger"),var:s("var"),const:s("var"),let:s("var"),function:s("function"),catch:s("catch"),for:s("for"),switch:s("switch"),case:s("case"),default:s("default"),in:O,typeof:O,instanceof:O,true:$,false:$,null:$,undefined:$,NaN:$,Infinity:$,this:s("this"),class:s("class"),super:s("atom"),yield:_,export:s("export"),import:s("import"),extends:_,await:_}}(),w=/[+\-*&%=<>!?|~^@]/,E=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function M(s){for(var c=!1,m,_=!1;(m=s.next())!=null;){if(!c){if(m=="/"&&!_)return;m=="["?_=!0:_&&m=="]"&&(_=!1)}c=!c&&m=="\\"}}var I,K;function D(s,c,m){return I=s,K=m,c}function G(s,c){var m=s.next();if(m=='"'||m=="'")return c.tokenize=ie(m),c.tokenize(s,c);if(m=="."&&s.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return D("number","number");if(m=="."&&s.match(".."))return D("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(m))return D(m);if(m=="="&&s.eat(">"))return D("=>","operator");if(m=="0"&&s.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return D("number","number");if(/\d/.test(m))return s.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),D("number","number");if(m=="/")return s.eat("*")?(c.tokenize=oe,oe(s,c)):s.eat("/")?(s.skipToEnd(),D("comment","comment")):Ir(s,c,1)?(M(s),s.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),D("regexp","string-2")):(s.eat("="),D("operator","operator",s.current()));if(m=="`")return c.tokenize=z,z(s,c);if(m=="#"&&s.peek()=="!")return s.skipToEnd(),D("meta","meta");if(m=="#"&&s.eatWhile(d))return D("variable","property");if(m=="<"&&s.match("!--")||m=="-"&&s.match("->")&&!/\S/.test(s.string.slice(0,s.start)))return s.skipToEnd(),D("comment","comment");if(w.test(m))return(m!=">"||!c.lexical||c.lexical.type!=">")&&(s.eat("=")?(m=="!"||m=="=")&&s.eat("="):/[<>*+\-|&?]/.test(m)&&(s.eat(m),m==">"&&s.eat(m))),m=="?"&&s.eat(".")?D("."):D("operator","operator",s.current());if(d.test(m)){s.eatWhile(d);var _=s.current();if(c.lastType!="."){if(h.propertyIsEnumerable(_)){var C=h[_];return D(C.type,C.style,_)}if(_=="async"&&s.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return D("async","keyword",_)}return D("variable","variable",_)}}function ie(s){return function(c,m){var _=!1,C;if(o&&c.peek()=="@"&&c.match(E))return m.tokenize=G,D("jsonld-keyword","meta");for(;(C=c.next())!=null&&!(C==s&&!_);)_=!_&&C=="\\";return _||(m.tokenize=G),D("string","string")}}function oe(s,c){for(var m=!1,_;_=s.next();){if(_=="/"&&m){c.tokenize=G;break}m=_=="*"}return D("comment","comment")}function z(s,c){for(var m=!1,_;(_=s.next())!=null;){if(!m&&(_=="`"||_=="$"&&s.eat("{"))){c.tokenize=G;break}m=!m&&_=="\\"}return D("quasi","string-2",s.current())}var Ke="([{}])";function fe(s,c){c.fatArrowAt&&(c.fatArrowAt=null);var m=s.string.indexOf("=>",s.start);if(!(m<0)){if(l){var _=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(s.string.slice(s.start,m));_&&(m=_.index)}for(var C=0,O=!1,$=m-1;$>=0;--$){var te=s.string.charAt($),_e=Ke.indexOf(te);if(_e>=0&&_e<3){if(!C){++$;break}if(--C==0){te=="("&&(O=!0);break}}else if(_e>=3&&_e<6)++C;else if(d.test(te))O=!0;else if(/["'\/`]/.test(te))for(;;--$){if($==0)return;var Ui=s.string.charAt($-1);if(Ui==te&&s.string.charAt($-2)!="\\"){$--;break}}else if(O&&!C){++$;break}}O&&!C&&(c.fatArrowAt=$)}}var xn={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function Pt(s,c,m,_,C,O){this.indented=s,this.column=c,this.type=m,this.prev=C,this.info=O,_!=null&&(this.align=_)}function yn(s,c){if(!u)return!1;for(var m=s.localVars;m;m=m.next)if(m.name==c)return!0;for(var _=s.context;_;_=_.prev)for(var m=_.vars;m;m=m.next)if(m.name==c)return!0}function dt(s,c,m,_,C){var O=s.cc;for(A.state=s,A.stream=C,A.marked=null,A.cc=O,A.style=c,s.lexical.hasOwnProperty("align")||(s.lexical.align=!0);;){var $=O.length?O.pop():a?Y:X;if($(m,_)){for(;O.length&&O[O.length-1].lex;)O.pop()();return A.marked?A.marked:m=="variable"&&yn(s,_)?"variable-2":c}}}var A={state:null,column:null,marked:null,cc:null};function k(){for(var s=arguments.length-1;s>=0;s--)A.cc.push(arguments[s])}function f(){return k.apply(null,arguments),!0}function jn(s,c){for(var m=c;m;m=m.next)if(m.name==s)return!0;return!1}function Qe(s){var c=A.state;if(A.marked="def",!!u){if(c.context){if(c.lexical.info=="var"&&c.context&&c.context.block){var m=wr(s,c.context);if(m!=null){c.context=m;return}}else if(!jn(s,c.localVars)){c.localVars=new mt(s,c.localVars);return}}t.globalVars&&!jn(s,c.globalVars)&&(c.globalVars=new mt(s,c.globalVars))}}function wr(s,c){if(c)if(c.block){var m=wr(s,c.prev);return m?m==c.prev?c:new gt(m,c.vars,!0):null}else return jn(s,c.vars)?c:new gt(c.prev,new mt(s,c.vars),!1);else return null}function Nt(s){return s=="public"||s=="private"||s=="protected"||s=="abstract"||s=="readonly"}function gt(s,c,m){this.prev=s,this.vars=c,this.block=m}function mt(s,c){this.name=s,this.next=c}var xi=new mt("this",new mt("arguments",null));function Xe(){A.state.context=new gt(A.state.context,A.state.localVars,!1),A.state.localVars=xi}function wn(){A.state.context=new gt(A.state.context,A.state.localVars,!0),A.state.localVars=null}function de(){A.state.localVars=A.state.context.vars,A.state.context=A.state.context.prev}de.lex=!0;function P(s,c){var m=function(){var _=A.state,C=_.indented;if(_.lexical.type=="stat")C=_.lexical.indented;else for(var O=_.lexical;O&&O.type==")"&&O.align;O=O.prev)C=O.indented;_.lexical=new Pt(C,A.stream.column(),s,null,_.lexical,c)};return m.lex=!0,m}function S(){var s=A.state;s.lexical.prev&&(s.lexical.type==")"&&(s.indented=s.lexical.indented),s.lexical=s.lexical.prev)}S.lex=!0;function B(s){function c(m){return m==s?f():s==";"||m=="}"||m==")"||m=="]"?k():f(c)}return c}function X(s,c){return s=="var"?f(P("vardef",c),kn,B(";"),S):s=="keyword a"?f(P("form"),vn,X,S):s=="keyword b"?f(P("form"),X,S):s=="keyword d"?A.stream.match(/^\s*$/,!1)?f():f(P("stat"),Ze,B(";"),S):s=="debugger"?f(B(";")):s=="{"?f(P("}"),wn,It,S,de):s==";"?f():s=="if"?(A.state.lexical.info=="else"&&A.state.cc[A.state.cc.length-1]==S&&A.state.cc.pop()(),f(P("form"),vn,X,S,Sr)):s=="function"?f(Ie):s=="for"?f(P("form"),wn,Cr,X,de,S):s=="class"||l&&c=="interface"?(A.marked="keyword",f(P("form",s=="class"?s:c),Pr,S)):s=="variable"?l&&c=="declare"?(A.marked="keyword",f(X)):l&&(c=="module"||c=="enum"||c=="type")&&A.stream.match(/^\s*\w/,!1)?(A.marked="keyword",c=="enum"?f(Fr):c=="type"?f(Dr,B("operator"),H,B(";")):f(P("form"),ge,B("{"),P("}"),It,S,S)):l&&c=="namespace"?(A.marked="keyword",f(P("form"),Y,X,S)):l&&c=="abstract"?(A.marked="keyword",f(X)):f(P("stat"),Ti):s=="switch"?f(P("form"),vn,B("{"),P("}","switch"),wn,It,S,S,de):s=="case"?f(Y,B(":")):s=="default"?f(B(":")):s=="catch"?f(P("form"),Xe,yi,X,S,de):s=="export"?f(P("stat"),qi,S):s=="import"?f(P("stat"),Li,S):s=="async"?f(X):c=="@"?f(Y,X):k(P("stat"),Y,B(";"),S)}function yi(s){if(s=="(")return f(Ge,B(")"))}function Y(s,c){return vr(s,c,!1)}function ae(s,c){return vr(s,c,!0)}function vn(s){return s!="("?k():f(P(")"),Ze,B(")"),S)}function vr(s,c,m){if(A.state.fatArrowAt==A.stream.start){var _=m?Tr:br;if(s=="(")return f(Xe,P(")"),Z(Ge,")"),S,B("=>"),_,de);if(s=="variable")return k(Xe,ge,B("=>"),_,de)}var C=m?et:Ye;return xn.hasOwnProperty(s)?f(C):s=="function"?f(Ie,C):s=="class"||l&&c=="interface"?(A.marked="keyword",f(P("form"),Oi,S)):s=="keyword c"||s=="async"?f(m?ae:Y):s=="("?f(P(")"),Ze,B(")"),S,C):s=="operator"||s=="spread"?f(m?ae:Y):s=="["?f(P("]"),$i,S,C):s=="{"?ht(Ft,"}",null,C):s=="quasi"?k(Mt,C):s=="new"?f(wi(m)):f()}function Ze(s){return s.match(/[;\}\)\],]/)?k():k(Y)}function Ye(s,c){return s==","?f(Ze):et(s,c,!1)}function et(s,c,m){var _=m==!1?Ye:et,C=m==!1?Y:ae;if(s=="=>")return f(Xe,m?Tr:br,de);if(s=="operator")return/\+\+|--/.test(c)||l&&c=="!"?f(_):l&&c=="<"&&A.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?f(P(">"),Z(H,">"),S,_):c=="?"?f(Y,B(":"),C):f(C);if(s=="quasi")return k(Mt,_);if(s!=";"){if(s=="(")return ht(ae,")","call",_);if(s==".")return f(Ei,_);if(s=="[")return f(P("]"),Ze,B("]"),S,_);if(l&&c=="as")return A.marked="keyword",f(H,_);if(s=="regexp")return A.state.lastType=A.marked="operator",A.stream.backUp(A.stream.pos-A.stream.start-1),f(C)}}function Mt(s,c){return s!="quasi"?k():c.slice(c.length-2)!="${"?f(Mt):f(Ze,ji)}function ji(s){if(s=="}")return A.marked="string-2",A.state.tokenize=z,f(Mt)}function br(s){return fe(A.stream,A.state),k(s=="{"?X:Y)}function Tr(s){return fe(A.stream,A.state),k(s=="{"?X:ae)}function wi(s){return function(c){return c=="."?f(s?bi:vi):c=="variable"&&l?f(Ni,s?et:Ye):k(s?ae:Y)}}function vi(s,c){if(c=="target")return A.marked="keyword",f(Ye)}function bi(s,c){if(c=="target")return A.marked="keyword",f(et)}function Ti(s){return s==":"?f(S,X):k(Ye,B(";"),S)}function Ei(s){if(s=="variable")return A.marked="property",f()}function Ft(s,c){if(s=="async")return A.marked="property",f(Ft);if(s=="variable"||A.style=="keyword"){if(A.marked="property",c=="get"||c=="set")return f(ki);var m;return l&&A.state.fatArrowAt==A.stream.start&&(m=A.stream.match(/^\s*:\s*/,!1))&&(A.state.fatArrowAt=A.stream.pos+m[0].length),f(Ue)}else{if(s=="number"||s=="string")return A.marked=o?"property":A.style+" property",f(Ue);if(s=="jsonld-keyword")return f(Ue);if(l&&Nt(c))return A.marked="keyword",f(Ft);if(s=="[")return f(Y,tt,B("]"),Ue);if(s=="spread")return f(ae,Ue);if(c=="*")return A.marked="keyword",f(Ft);if(s==":")return k(Ue)}}function ki(s){return s!="variable"?k(Ue):(A.marked="property",f(Ie))}function Ue(s){if(s==":")return f(ae);if(s=="(")return k(Ie)}function Z(s,c,m){function _(C,O){if(m?m.indexOf(C)>-1:C==","){var $=A.state.lexical;return $.info=="call"&&($.pos=($.pos||0)+1),f(function(te,_e){return te==c||_e==c?k():k(s)},_)}return C==c||O==c?f():m&&m.indexOf(";")>-1?k(s):f(B(c))}return function(C,O){return C==c||O==c?f():k(s,_)}}function ht(s,c,m){for(var _=3;_"),H);if(s=="quasi")return k(Tn,Te)}function Di(s){if(s=="=>")return f(H)}function bn(s){return s.match(/[\}\)\]]/)?f():s==","||s==";"?f(bn):k(At,bn)}function At(s,c){if(s=="variable"||A.style=="keyword")return A.marked="property",f(At);if(c=="?"||s=="number"||s=="string")return f(At);if(s==":")return f(H);if(s=="[")return f(B("variable"),Si,B("]"),At);if(s=="(")return k(rt,At);if(!s.match(/[;\}\)\],]/))return f()}function Tn(s,c){return s!="quasi"?k():c.slice(c.length-2)!="${"?f(Tn):f(H,Pi)}function Pi(s){if(s=="}")return A.marked="string-2",A.state.tokenize=z,f(Tn)}function En(s,c){return s=="variable"&&A.stream.match(/^\s*[?:]/,!1)||c=="?"?f(En):s==":"?f(H):s=="spread"?f(En):k(H)}function Te(s,c){if(c=="<")return f(P(">"),Z(H,">"),S,Te);if(c=="|"||s=="."||c=="&")return f(H);if(s=="[")return f(H,B("]"),Te);if(c=="extends"||c=="implements")return A.marked="keyword",f(H);if(c=="?")return f(H,B(":"),H)}function Ni(s,c){if(c=="<")return f(P(">"),Z(H,">"),S,Te)}function Bt(){return k(H,Mi)}function Mi(s,c){if(c=="=")return f(H)}function kn(s,c){return c=="enum"?(A.marked="keyword",f(Fr)):k(ge,tt,Fe,Ii)}function ge(s,c){if(l&&Nt(c))return A.marked="keyword",f(ge);if(s=="variable")return Qe(c),f();if(s=="spread")return f(ge);if(s=="[")return ht(Fi,"]");if(s=="{")return ht(kr,"}")}function kr(s,c){return s=="variable"&&!A.stream.match(/^\s*:/,!1)?(Qe(c),f(Fe)):(s=="variable"&&(A.marked="property"),s=="spread"?f(ge):s=="}"?k():s=="["?f(Y,B("]"),B(":"),kr):f(B(":"),ge,Fe))}function Fi(){return k(ge,Fe)}function Fe(s,c){if(c=="=")return f(ae)}function Ii(s){if(s==",")return f(kn)}function Sr(s,c){if(s=="keyword b"&&c=="else")return f(P("form","else"),X,S)}function Cr(s,c){if(c=="await")return f(Cr);if(s=="(")return f(P(")"),Bi,S)}function Bi(s){return s=="var"?f(kn,nt):s=="variable"?f(nt):k(nt)}function nt(s,c){return s==")"?f():s==";"?f(nt):c=="in"||c=="of"?(A.marked="keyword",f(Y,nt)):k(Y,nt)}function Ie(s,c){if(c=="*")return A.marked="keyword",f(Ie);if(s=="variable")return Qe(c),f(Ie);if(s=="(")return f(Xe,P(")"),Z(Ge,")"),S,Er,X,de);if(l&&c=="<")return f(P(">"),Z(Bt,">"),S,Ie)}function rt(s,c){if(c=="*")return A.marked="keyword",f(rt);if(s=="variable")return Qe(c),f(rt);if(s=="(")return f(Xe,P(")"),Z(Ge,")"),S,Er,de);if(l&&c=="<")return f(P(">"),Z(Bt,">"),S,rt)}function Dr(s,c){if(s=="keyword"||s=="variable")return A.marked="type",f(Dr);if(c=="<")return f(P(">"),Z(Bt,">"),S)}function Ge(s,c){return c=="@"&&f(Y,Ge),s=="spread"?f(Ge):l&&Nt(c)?(A.marked="keyword",f(Ge)):l&&s=="this"?f(tt,Fe):k(ge,tt,Fe)}function Oi(s,c){return s=="variable"?Pr(s,c):Ot(s,c)}function Pr(s,c){if(s=="variable")return Qe(c),f(Ot)}function Ot(s,c){if(c=="<")return f(P(">"),Z(Bt,">"),S,Ot);if(c=="extends"||c=="implements"||l&&s==",")return c=="implements"&&(A.marked="keyword"),f(l?H:Y,Ot);if(s=="{")return f(P("}"),Ee,S)}function Ee(s,c){if(s=="async"||s=="variable"&&(c=="static"||c=="get"||c=="set"||l&&Nt(c))&&A.stream.match(/^\s+[\w$\xa1-\uffff]/,!1))return A.marked="keyword",f(Ee);if(s=="variable"||A.style=="keyword")return A.marked="property",f(_t,Ee);if(s=="number"||s=="string")return f(_t,Ee);if(s=="[")return f(Y,tt,B("]"),_t,Ee);if(c=="*")return A.marked="keyword",f(Ee);if(l&&s=="(")return k(rt,Ee);if(s==";"||s==",")return f(Ee);if(s=="}")return f();if(c=="@")return f(Y,Ee)}function _t(s,c){if(c=="!"||c=="?")return f(_t);if(s==":")return f(H,Fe);if(c=="=")return f(ae);var m=A.state.lexical.prev,_=m&&m.info=="interface";return k(_?rt:Ie)}function qi(s,c){return c=="*"?(A.marked="keyword",f(Sn,B(";"))):c=="default"?(A.marked="keyword",f(Y,B(";"))):s=="{"?f(Z(Nr,"}"),Sn,B(";")):k(X)}function Nr(s,c){if(c=="as")return A.marked="keyword",f(B("variable"));if(s=="variable")return k(ae,Nr)}function Li(s){return s=="string"?f():s=="("?k(Y):s=="."?k(Ye):k(qt,Mr,Sn)}function qt(s,c){return s=="{"?ht(qt,"}"):(s=="variable"&&Qe(c),c=="*"&&(A.marked="keyword"),f(Hi))}function Mr(s){if(s==",")return f(qt,Mr)}function Hi(s,c){if(c=="as")return A.marked="keyword",f(qt)}function Sn(s,c){if(c=="from")return A.marked="keyword",f(Y)}function $i(s){return s=="]"?f():k(Z(ae,"]"))}function Fr(){return k(P("form"),ge,B("{"),P("}"),Z(Ki,"}"),S,S)}function Ki(){return k(ge,Fe)}function Yi(s,c){return s.lastType=="operator"||s.lastType==","||w.test(c.charAt(0))||/[,.]/.test(c.charAt(0))}function Ir(s,c,m){return c.tokenize==G&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(c.lastType)||c.lastType=="quasi"&&/\{\s*$/.test(s.string.slice(0,s.pos-(m||0)))}return{startState:function(s){var c={tokenize:G,lastType:"sof",cc:[],lexical:new Pt((s||0)-n,0,"block",!1),localVars:t.localVars,context:t.localVars&&new gt(null,null,!1),indented:s||0};return t.globalVars&&typeof t.globalVars=="object"&&(c.globalVars=t.globalVars),c},token:function(s,c){if(s.sol()&&(c.lexical.hasOwnProperty("align")||(c.lexical.align=!1),c.indented=s.indentation(),fe(s,c)),c.tokenize!=oe&&s.eatSpace())return null;var m=c.tokenize(s,c);return I=="comment"?m:(c.lastType=I=="operator"&&(K=="++"||K=="--")?"incdec":I,dt(c,m,I,K,s))},indent:function(s,c){if(s.tokenize==oe||s.tokenize==z)return r.Pass;if(s.tokenize!=G)return 0;var m=c&&c.charAt(0),_=s.lexical,C;if(!/^\s*else\b/.test(c))for(var O=s.cc.length-1;O>=0;--O){var $=s.cc[O];if($==S)_=_.prev;else if($!=Sr&&$!=de)break}for(;(_.type=="stat"||_.type=="form")&&(m=="}"||(C=s.cc[s.cc.length-1])&&(C==Ye||C==et)&&!/^[,\.=+\-*:?[\(]/.test(c));)_=_.prev;i&&_.type==")"&&_.prev.type=="stat"&&(_=_.prev);var te=_.type,_e=m==te;return te=="vardef"?_.indented+(s.lastType=="operator"||s.lastType==","?_.info.length+1:0):te=="form"&&m=="{"?_.indented:te=="form"?_.indented+n:te=="stat"?_.indented+(Yi(s,c)?i||n:0):_.info=="switch"&&!_e&&t.doubleIndentSwitch!=!1?_.indented+(/^(?:case|default)\b/.test(c)?n:2*n):_.align?_.column+(_e?0:1):_.indented+(_e?0:n)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:a?null:"/*",blockCommentEnd:a?null:"*/",blockCommentContinue:a?null:" * ",lineComment:a?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:a?"json":"javascript",jsonldMode:o,jsonMode:a,expressionAllowed:Ir,skipExpression:function(s){dt(s,"atom","atom","true",new r.StringStream("",2,null))}}}),r.registerHelper("wordChars","javascript",/[\w$]/),r.defineMIME("text/javascript","javascript"),r.defineMIME("text/ecmascript","javascript"),r.defineMIME("application/javascript","javascript"),r.defineMIME("application/x-javascript","javascript"),r.defineMIME("application/ecmascript","javascript"),r.defineMIME("application/json",{name:"javascript",json:!0}),r.defineMIME("application/x-json",{name:"javascript",json:!0}),r.defineMIME("application/manifest+json",{name:"javascript",json:!0}),r.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),r.defineMIME("text/typescript",{name:"javascript",typescript:!0}),r.defineMIME("application/typescript",{name:"javascript",typescript:!0})});(function(r){r(window.CodeMirror)})(function(r){"use strict";r.customOverlayMode=function(e,t,n){return{startState:function(){return{base:r.startState(e),overlay:r.startState(t),basePos:0,baseCur:null,overlayPos:0,overlayCur:null,streamSeen:null}},copyState:function(i){return{base:r.copyState(e,i.base),overlay:r.copyState(t,i.overlay),basePos:i.basePos,baseCur:null,overlayPos:i.overlayPos,overlayCur:null}},token:function(i,o){return(i!=o.streamSeen||Math.min(o.basePos,o.overlayPos)0&&(this.activeEditorExtensions.pop(),this.plugin.app.workspace.updateOptions())}async jump_to_next_cursor_location(e=null,t=!1){t&&!this.plugin.settings.auto_jump_to_cursor||e&&Le(this.plugin.app)!==e||await this.cursor_jumper.jump_to_next_cursor_location()}async registerCodeMirrorMode(){if(!this.desktopShouldHighlight()&&!this.mobileShouldHighlight())return;let e=window.CodeMirror.getMode({},"javascript");if(e.name==="null"){V(new b("Javascript syntax mode couldn't be found, can't enable syntax highlighting."));return}let t=window.CodeMirror.customOverlayMode;if(t==null){V(new b("Couldn't find customOverlayMode, can't enable syntax highlighting."));return}window.CodeMirror.defineMode(_i,function(n){let i={startState:function(){return{...window.CodeMirror.startState(e),inCommand:!1,tag_class:"",freeLine:!1}},copyState:function(o){return{...window.CodeMirror.startState(e),inCommand:o.inCommand,tag_class:o.tag_class,freeLine:o.freeLine}},blankLine:function(o){return o.inCommand?"line-background-templater-command-bg":null},token:function(o,a){if(o.sol()&&a.inCommand&&(a.freeLine=!0),a.inCommand){let l="";if(o.match(/[-_]{0,1}%>/,!0)){a.inCommand=!1,a.freeLine=!1;let h=a.tag_class;return a.tag_class="",`line-${xr} ${_r} ${zo} ${h}`}let d=e.token&&e.token(o,a);return o.peek()==null&&a.freeLine&&(l+=" line-background-templater-command-bg"),a.freeLine||(l+=` line-${xr}`),`${l} ${_r} ${d}`}let u=o.match(/<%[-_]{0,1}\s*([*+]{0,1})/,!0);if(u!=null){switch(u[1]){case"*":a.tag_class=Wo;break;default:a.tag_class=Jo;break}return a.inCommand=!0,`line-${xr} ${_r} ${Vo} ${a.tag_class}`}for(;o.next()!=null&&!o.match(/<%/,!1););return null}};return t(window.CodeMirror.getMode(n,"hypermd"),i)})}updateEditorIntellisenseSetting(e){this.autocomplete.updateAutocompleteIntellisenseSetting(e)}};var jr=class extends _n.Plugin{async onload(){await this.load_settings(),this.templater=new pt(this),await this.templater.setup(),this.editor_handler=new yr(this),await this.editor_handler.setup(),this.fuzzy_suggester=new Rn(this),this.event_handler=new An(this,this.templater,this.settings),this.event_handler.setup(),this.command_handler=new fr(this),this.command_handler.setup(),(0,_n.addIcon)("templater-icon",ni),this.addRibbonIcon("templater-icon","Templater",async()=>{this.fuzzy_suggester.insert_template()}).setAttribute("id","rb-templater-icon"),this.addSettingTab(new Gn(this)),this.app.workspace.onLayoutReady(()=>{this.templater.execute_startup_scripts()})}async onExternalSettingsChange(){await this.load_settings()}onunload(){this.templater.functions_generator.teardown()}async save_settings(){await this.saveData(this.settings),this.editor_handler.updateEditorIntellisenseSetting(this.settings.intellisense_render)}async load_settings(){this.settings=Object.assign({},ei,await this.loadData())}}; /* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/templater-obsidian/manifest.json b/.obsidian/plugins/templater-obsidian/manifest.json index 75c3aec8..4da73a0f 100644 --- a/.obsidian/plugins/templater-obsidian/manifest.json +++ b/.obsidian/plugins/templater-obsidian/manifest.json @@ -1,7 +1,7 @@ { "id": "templater-obsidian", "name": "Templater", - "version": "2.19.0", + "version": "2.19.3", "description": "Create and use templates", "minAppVersion": "1.12.2", "author": "SilentVoid", diff --git a/.obsidian/plugins/various-complements/main.js b/.obsidian/plugins/various-complements/main.js index 8066551f..27439e2e 100644 --- a/.obsidian/plugins/various-complements/main.js +++ b/.obsidian/plugins/various-complements/main.js @@ -1797,6 +1797,7 @@ var DEFAULT_SETTINGS = { excludeInternalLinkPathGlobPatterns: [], excludeSelfInternalLink: false, excludeExistingInActiveFileInternalLinks: false, + excludeUnresolvedInternalLinks: false, updateInternalLinksOnSave: true, insertAliasTransformedFromDisplayedInternalLink: { enabled: false, @@ -2704,6 +2705,20 @@ var VariousComplementsSettingTab = class extends import_obsidian3.PluginSettingT }); } ); + addFilterableSetting( + "Exclude unresolved internal links", + "Exclude internal links that point to non-existing files (phantom links) from the suggestions.", + (setting) => { + setting.addToggle((tc) => { + tc.setValue( + this.plugin.settings.excludeUnresolvedInternalLinks + ).onChange(async (value) => { + this.plugin.settings.excludeUnresolvedInternalLinks = value; + await this.plugin.saveSettings({ internalLink: true }); + }); + }); + } + ); addFilterableSetting( "Insert an alias that is transformed from the displayed internal link", null, @@ -5033,7 +5048,7 @@ var InternalLinkWordProvider = class { ]; } }); - const unresolvedInternalLinkWords = this.appHelper.searchPhantomLinks().map(({ path: path2, link }) => { + const unresolvedInternalLinkWords = option.excludeUnresolvedLinks ? [] : this.appHelper.searchPhantomLinks().map(({ path: path2, link }) => { return { value: link, type: "internalLink", @@ -7804,7 +7819,8 @@ var AutoCompleteSuggest = class _AutoCompleteSuggest extends import_obsidian7.Ed makeSynonymAboutEmoji: this.settings.matchingWithoutEmoji, makeSynonymAboutAccentsDiacritics: this.settings.treatAccentDiacriticsAsAlphabeticCharacters, frontMatterKeyForExclusion: this.settings.frontMatterKeyForExclusionInternalLink, - tagsForExclusion: this.settings.tagsForExclusionInternalLink + tagsForExclusion: this.settings.tagsForExclusionInternalLink, + excludeUnresolvedLinks: this.settings.excludeUnresolvedInternalLinks }); this.statusBar.setInternalLinkIndexed( this.internalLinkWordProvider.wordCount diff --git a/.obsidian/plugins/various-complements/manifest.json b/.obsidian/plugins/various-complements/manifest.json index 2ceaae0e..ca89337f 100644 --- a/.obsidian/plugins/various-complements/manifest.json +++ b/.obsidian/plugins/various-complements/manifest.json @@ -1,7 +1,7 @@ { "id": "various-complements", "name": "Various Complements", - "version": "11.1.0", + "version": "11.2.0", "minAppVersion": "1.11.4", "description": "This plugin enables you to complete words like the auto-completion of IDE", "author": "tadashi-aikawa", diff --git a/.pandoc/zotero-library-1.json b/.pandoc/zotero-library-1.json index ab1bfd3b..c59f580c 100644 --- a/.pandoc/zotero-library-1.json +++ b/.pandoc/zotero-library-1.json @@ -1,60 +1 @@ -[ - {"id":"abelsonStructureInterpretationComputer1996","accessed":{"date-parts":[["2024",3,29]]},"author":[{"family":"Abelson","given":"Harold"},{"family":"Sussman","given":"Gerald Jay"},{"family":"Sussman","given":"Julie"}],"citation-key":"abelsonStructureInterpretationComputer1996","edition":"2","event-place":"Cambridge, Massachusetts, London, England","issued":{"date-parts":[["1996"]]},"language":"en","publisher":"MIT Press","publisher-place":"Cambridge, Massachusetts, London, England","source":"Zotero","title":"Structure and Interpretation of Computer Programs","type":"book","URL":"http://mitpress.mit.edu/sicp"}, - {"id":"antoninPOURDESIGNMINIMAL","author":[{"family":"Antonin","given":"Peronnet"}],"citation-key":"antoninPOURDESIGNMINIMAL","language":"fr","source":"Zotero","title":"POUR UN DESIGN MINIMAL","type":"article-journal"}, - {"id":"antonszandorBibleSatanique1969","author":[{"family":"Anton Szandor","given":"Lavey"}],"citation-key":"antonszandorBibleSatanique1969","issued":{"date-parts":[["1969"]]},"title":"La Bible satanique","type":"book"}, - {"id":"AutomatePile2021","abstract":"Un automate à pile est une machine abstraite utilisée en informatique théorique et, plus précisément, en théorie des automates.\nUn automate à pile est une généralisation des automates finis : il dispose en plus d'une mémoire infinie organisée en pile (last-in/first-out ou LIFO). Un automate à pile prend en entrée un mot et réalise une série de transitions. Il effectue pour chaque lettre du mot une transition, dont le choix dépend de la lettre, de l'état de l'automate et du sommet de la pile ; il peut aussi modifier le contenu de la pile. Selon l'état de l'automate et de la pile à la fin du calcul, le mot est accepté ou refusé.\nLes langages reconnus par les automates à piles sont exactement les langages algébriques, c'est-à-dire ceux engendrés par une grammaire algébrique.\nL'importance des automates à pile vient de leur emploi en analyse syntaxique des langages de programmation, et plus généralement dans la transformation de définitions ou d'algorithmes récursifs en leurs analogues itératifs.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"AutomatePile2021","container-title":"Wikipédia","issued":{"date-parts":[["2021",10,29]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 187552887","source":"Wikipedia","title":"Automate à pile","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Automate_%C3%A0_pile&oldid=187552887"}, - {"id":"begue-shanklandEtudeScientifiqueMontre2024","abstract":"Menée par le Professeur des Universités Laurent Bègue Shankland1 auprès de 67 000 étudiant(e)s et élèves de grandes écoles entre 2023 et 2024, cette recherche d’une ampleur inédite indique que l’alcool est présent dans plus de la moitié des violences sexuelles rapportées depuis l‘arrivée dans l‘enseignement supérieur.","accessed":{"date-parts":[["2024",10,3]]},"author":[{"family":"Bègue-Shankland","given":"Laurent"},{"family":"Roché","given":"Sebastian"},{"family":"Arvers","given":"Philippe"}],"citation-key":"begue-shanklandEtudeScientifiqueMontre2024","issued":{"date-parts":[["2024",10]]},"language":"fr","publisher":"Université de Grenobles Aples","title":"Une étude scientifique montre que l'alcool est un facteur déterminant des violences sexistes et sexuelles en milieu étudiant","type":"document","URL":"https://www.enseignementsup-recherche.gouv.fr/fr/une-etude-scientifique-montre-que-l-alcool-est-un-facteur-determinant-des-violences-sexistes-et-97513"}, - {"id":"billaudProgrammationFonctionnelleSymbolique1989","accessed":{"date-parts":[["2024",3,28]]},"author":[{"family":"Billaud","given":"Michel"}],"citation-key":"billaudProgrammationFonctionnelleSymbolique1989","container-title":"Page personnelle de Michel Billaud","issued":{"date-parts":[["1989"]]},"title":"Programmation Fonctionnelle et Symbolique - Introduction","type":"webpage","URL":"https://www.mbillaud.fr/SITE-PERSO-LABRI/travaux/lisp89/1intro.html"}, - {"id":"brown10ThingsSoftware2023","abstract":"Understanding how human memory and learning works, the differences between beginners and experts, and practical steps developers can take to improve their learning, training, and recruitment.","accessed":{"date-parts":[["2024",3,14]]},"author":[{"family":"Brown","given":"Neil C. C."},{"family":"Hermans","given":"Felienne F. J."},{"family":"Margulieux","given":"Lauren E."}],"citation-key":"brown10ThingsSoftware2023","container-title":"Communications of the ACM","container-title-short":"Commun. ACM","DOI":"10.1145/3584859","ISSN":"0001-0782","issue":"1","issued":{"date-parts":[["2023",12,21]]},"page":"78–87","source":"ACM Digital Library","title":"10 Things Software Developers Should Learn about Learning","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/3584859","volume":"67"}, - {"id":"bustosRegretGenderaffirmationSurgery2021","abstract":"Supplemental Digital Content is available in the text.","accessed":{"date-parts":[["2024",5,14]]},"author":[{"family":"Bustos","given":"Valeria P."},{"family":"Bustos","given":"Samyd S."},{"family":"Mascaro","given":"Andres"},{"family":"Del Corral","given":"Gabriel"},{"family":"Forte","given":"Antonio J."},{"family":"Ciudad","given":"Pedro"},{"family":"Kim","given":"Esther A."},{"family":"Langstein","given":"Howard N."},{"family":"Manrique","given":"Oscar J."}],"citation-key":"bustosRegretGenderaffirmationSurgery2021","container-title":"Plastic and Reconstructive Surgery Global Open","container-title-short":"Plast Reconstr Surg Glob Open","DOI":"10.1097/GOX.0000000000003477","ISSN":"2169-7574","issue":"3","issued":{"date-parts":[["2021",3,19]]},"page":"e3477","PMCID":"PMC8099405","PMID":"33968550","source":"PubMed Central","title":"Regret after Gender-affirmation Surgery: A Systematic Review and Meta-analysis of Prevalence","title-short":"Regret after Gender-affirmation Surgery","type":"article-journal","URL":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8099405/","volume":"9"}, - {"id":"cainLectureProgrammingParadigms2018","accessed":{"date-parts":[["2024",2,20]]},"author":[{"family":"Cain","given":"Jerry"}],"citation-key":"cainLectureProgrammingParadigms2018","event-place":"Stanford","issued":{"date-parts":[["2018",7,19]]},"language":"English","publisher-place":"Stanford","title":"Lecture 1 | Programming Paradigms","type":"speech","URL":"https://www.youtube.com/watch?v=Ps8jOj7diA0&list=PL9D558D49CA734A02"}, - {"id":"chenQazxcdswe123Searchobsidiangoogle2024","abstract":"Search obsidian notes in google.","accessed":{"date-parts":[["2025",1,14]]},"author":[{"family":"Chen","given":"YuNing"}],"citation-key":"chenQazxcdswe123Searchobsidiangoogle2024","genre":"TypeScript","issued":{"date-parts":[["2024",7,1]]},"license":"GPL-3.0","original-date":{"date-parts":[["2023",3,17]]},"source":"GitHub","title":"qazxcdswe123/search-obsidian-in-google","type":"software","URL":"https://github.com/qazxcdswe123/search-obsidian-in-google"}, - {"id":"ComparisonMultiparadigmProgramming2024","abstract":"Programming languages can be grouped by the number and types of paradigms supported.","accessed":{"date-parts":[["2024",2,20]]},"citation-key":"ComparisonMultiparadigmProgramming2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,1]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1202029082","source":"Wikipedia","title":"Comparison of multi-paradigm programming languages","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Comparison_of_multi-paradigm_programming_languages&oldid=1202029082"}, - {"id":"ComparisonProgrammingParadigms2024","abstract":"This article attempts to set out the various similarities and differences between the various programming paradigms as a summary in both graphical and tabular format with links to the separate discussions concerning these similarities and differences in extant Wikipedia articles.","accessed":{"date-parts":[["2024",2,26]]},"citation-key":"ComparisonProgrammingParadigms2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,1]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1202049782","source":"Wikipedia","title":"Comparison of programming paradigms","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Comparison_of_programming_paradigms&oldid=1202049782"}, - {"id":"coriLogiqueMathematique12003","author":[{"family":"Cori","given":"René"},{"family":"Lascar","given":"Daniel"}],"citation-key":"coriLogiqueMathematique12003","event-place":"paris","issued":{"date-parts":[["2003"]]},"number-of-volumes":"2","publisher":"Dunod","publisher-place":"paris","title":"Logique mathématique 1. calcul propositionnel, algèbre de boole","type":"book","volume":"1"}, - {"id":"coriLogiqueMathematique22003","author":[{"family":"Cori","given":"René"},{"family":"Lascar","given":"Daniel"}],"citation-key":"coriLogiqueMathematique22003","event-place":"paris","issued":{"date-parts":[["2003"]]},"number-of-volumes":"2","publisher":"Dunod","publisher-place":"paris","title":"Logique mathématique 2. fonctions récursives, théorème de Gödel, théories des ensembles, théorie des modèles","type":"book","volume":"2"}, - {"id":"CountingSort2024","abstract":"In computer science, counting sort is an algorithm for sorting a collection of objects according to keys that are small positive integers; that is, it is an integer sorting algorithm. It operates by counting the number of objects that possess distinct key values, and applying prefix sum on those counts to determine the positions of each key value in the output sequence. Its running time is linear in the number of items and the difference between the maximum key value and the minimum key value, so it is only suitable for direct use in situations where the variation in keys is not significantly greater than the number of items. It is often used as a subroutine in radix sort, another sorting algorithm, which can handle larger keys more efficiently.\nCounting sort is not a comparison sort; it uses key values as indexes into an array and the Ω(n log n) lower bound for comparison sorting will not apply. Bucket sort may be used in lieu of counting sort, and entails a similar time analysis. However, compared to counting sort, bucket sort requires linked lists, dynamic arrays, or a large amount of pre-allocated memory to hold the sets of items within each bucket, whereas counting sort stores a single number (the count of items) per bucket.","accessed":{"date-parts":[["2024",5,12]]},"citation-key":"CountingSort2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,9]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1205345660","source":"Wikipedia","title":"Counting sort","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Counting_sort&oldid=1205345660"}, - {"id":"dahanRelationsEntreScience2015","abstract":"Depuis vingt-cinq ans, le changement climatique anthropogénique est appréhendé comme une question d’environnement global. Les sciences du climat jouent un rôle primordial dans la construction du problème, qui se veut résumé par la formule « science speaks truth to power », science et politique étant supposées séparées et étanches. Ce cadrage jusqu’ici dominant est aujourd’hui ébranlé par l’échec des négociations internationales : il est devenu manifeste que le consensus scientifique ne suffit pas à engendrer des décisions politiques globales significatives. À l’heure de la COP de Paris, alors que se discute la nécessité de changer de paradigme dans la négociation, cet article veut s’interroger sur l’évolution des relations entre science et politique dans le régime climatique, en revenant sur la vision du rôle de la science et en évoquant les critiques, propositions et perspectives qui se dessinent à propos des modèles d’expertise.","accessed":{"date-parts":[["2024",5,13]]},"author":[{"family":"Dahan","given":"Amy"},{"family":"Guillemot","given":"Hélène"}],"citation-key":"dahanRelationsEntreScience2015","container-title":"Natures Sciences Sociétés","container-title-short":"Nat. Sci. Soc.","DOI":"10.1051/nss/2015014","ISSN":"1240-1307, 1765-2979","issued":{"date-parts":[["2015"]]},"language":"fr","license":"© NSS-Dialogues, EDP Sciences 2015","page":"S6-S18","publisher":"EDP Sciences","source":"www.nss-journal.org","title":"Les relations entre science et politique dans le régime climatique : à la recherche d’un nouveau modèle d’expertise ?","title-short":"Les relations entre science et politique dans le régime climatique","type":"article-journal","URL":"https://www.nss-journal.org/articles/nss/abs/2015/02/nss150014/nss150014.html","volume":"23"}, - {"id":"dijkstraChapterNotesStructured1972","accessed":{"date-parts":[["2024",4,1]]},"author":[{"family":"Dijkstra","given":"Edsger W."}],"citation-key":"dijkstraChapterNotesStructured1972","container-title":"Structured programming","event-place":"GBR","ISBN":"978-0-12-200550-3","issued":{"date-parts":[["1972",1,1]]},"page":"1–82","publisher":"Academic Press Ltd.","publisher-place":"GBR","source":"ACM Digital Library","title":"Chapter I: Notes on structured programming","title-short":"Chapter I","type":"chapter"}, - {"id":"EffetBordInformatique2023","abstract":"En informatique, une fonction est dite à effet de bord (traduction mot à mot de l'anglais side effect, dont le sens est plus proche d'effet secondaire) si elle modifie un état en dehors de son environnement local, c'est-à-dire a une interaction observable avec le monde extérieur autre que retourner une valeur. Par exemple, les fonctions qui modifient une variable locale statique, une variable non locale ou un argument mutable passé par référence, les fonctions qui effectuent des opérations d'entrées-sorties ou les fonctions appelant d'autres fonctions à effet de bord. Souvent, ces effets compliquent la lisibilité du comportement des programmes et/ou nuisent à la réutilisabilité des fonctions et procédures. Un langage comme Haskell les restreint délibérément dans des composants nommés monades.\nPlus communément, un effet de bord apparaît la plupart du temps lorsqu'une modification d'un programme cohérent (valeurs et états pris conformes aux spécifications) aboutit à des valeurs ou des comportements non prévus, à cause de la non prise en compte de la portée, de l'ensemble de définition de variables, ou du contrat des fonctions.","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"EffetBordInformatique2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",8,30]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 207397507","source":"Wikipedia","title":"Effet de bord (informatique)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Effet_de_bord_(informatique)&oldid=207397507"}, - {"id":"EnregistrementStructureDonnees2023","abstract":"En programmation, un enregistrement est une structure de données qui rassemble plusieurs champs, ceux-ci contenant des valeurs qui peuvent être de types différents. Typiquement, le nombre de champ et leur séquence sont fixés. Les champs d'un enregistrement peuvent aussi être nommés \"membres\", en particulier dans la programmation orientée objet. Les champs peuvent encore être appelés \"éléments\", mais cela entraîne un risque de confusion avec les éléments d'une collection.\nPar exemple, une date peut être stockée en mémoire comme un enregistrement avec un champ numérique année, le mois représenté comme une chaîne de caractères, et un champ numérique pour le jour-du-mois.\nLes enregistrements se distinguent des tableaux (arrays) par le fait que le nombre de leurs champs est généralement fixé, que chaque champ a un nom et que chaque champ peut être de type différent.\nUn type enregistrement est un type de donnée qui décrit de telles variables. La majorité des langages de programmation utilisés aujourd'hui donne au programmeur la capacité de définir de nouveaux types d'enregistrements. La définition comprend la spécification du type de données de chaque champ et un identifiant (nom ou étiquette) par lequel on peut y accéder.\nLes enregistrements peuvent exister dans n'importe quelle forme de stockage de données (mémoire vive, bandes magnétiques, disques durs...). Les enregistrements sont fondamentaux pour la majorité des structures de données, en particulier les structures de données liées.\nUn objet dans la programmation orientée objet est essentiellement un enregistrement qui contient les procédures spécialisées pour cet enregistrement. Dans la majorité des langages orientés objet, les enregistrements sont des cas spécifiques des objets, et sont nommés plain old data structures, ou passive data structures.\nUn enregistrement peut être considéré comme l'équivalent informatique d'un n-uplet mathématique. Dans la même veine, il peut aussi être vu comme une version technologique d'un produit cartésien de deux ou plusieurs ensembles mathématiques.","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"EnregistrementStructureDonnees2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",9,12]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 207783466","source":"Wikipedia","title":"Enregistrement (structure de données)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Enregistrement_(structure_de_donn%C3%A9es)&oldid=207783466"}, - {"id":"entwanneVariablesScopesClosures2019","abstract":"Comprendre leur fonctionnement et en éviter les pièges","accessed":{"date-parts":[["2024",5,13]]},"author":[{"family":"entwanne","given":""}],"citation-key":"entwanneVariablesScopesClosures2019","container-title":"Zeste de Savoir","genre":"text","issued":{"date-parts":[["2019",7,23]]},"language":"fr","license":"Licence CC BY","publisher":"Zeste de Savoir","section":"Tutoriels","title":"Variables, scopes et closures en Python","type":"webpage","URL":"https://zestedesavoir.com/tutoriels/3163/variables-scopes-et-closures-en-python/"}, - {"id":"ExpressivePowerComputer2023","abstract":"In computer science, the expressive power (also called expressiveness or expressivity) of a language is the breadth of ideas that can be represented and communicated in that language. The more expressive a language is, the greater the variety and quantity of ideas it can be used to represent.\nFor example, the Web Ontology Language expression language profile (OWL2 EL) lacks ideas (such as negation) that can be expressed in OWL2 RL (rule language). OWL2 EL may therefore be said to have less expressive power than OWL2 RL. These restrictions allow for more efficient (polynomial time) reasoning in OWL2 EL than in OWL2 RL. So OWL2 EL trades some expressive power for more efficient reasoning (processing of the knowledge representation language).","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"ExpressivePowerComputer2023","container-title":"Wikipedia","issued":{"date-parts":[["2023",8,26]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1172391643","source":"Wikipedia","title":"Expressive power (computer science)","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Expressive_power_(computer_science)&oldid=1172391643"}, - {"id":"felleisenExpressivePowerProgramming1990","accessed":{"date-parts":[["2024",2,20]]},"author":[{"family":"Felleisen","given":"Matthias"}],"citation-key":"felleisenExpressivePowerProgramming1990","collection-editor":[{"family":"Goos","given":"G."},{"family":"Hartmanis","given":"J."},{"family":"Barstow","given":"D."},{"family":"Brauer","given":"W."},{"family":"Brinch Hansen","given":"P."},{"family":"Gries","given":"D."},{"family":"Luckham","given":"D."},{"family":"Moler","given":"C."},{"family":"Pnueli","given":"A."},{"family":"Seegmüller","given":"G."},{"family":"Stoer","given":"J."},{"family":"Wirth","given":"N."}],"container-title":"ESOP '90","DOI":"10.1007/3-540-52592-0_60","editor":[{"family":"Jones","given":"Neil"}],"event-place":"Berlin, Heidelberg","ISBN":"978-3-540-52592-9 978-3-540-47045-8","issued":{"date-parts":[["1990"]]},"page":"134–151","publisher":"Springer Berlin Heidelberg","publisher-place":"Berlin, Heidelberg","source":"DOI.org (Crossref)","title":"On the expressive power of programming languages","type":"chapter","URL":"http://link.springer.com/10.1007/3-540-52592-0_60","volume":"432"}, - {"id":"felleisenProgrammableProgrammingLanguage2018","abstract":"As the software industry enters the era of language-oriented programming, it needs programmable programming languages.","accessed":{"date-parts":[["2024",2,26]]},"author":[{"family":"Felleisen","given":"Matthias"},{"family":"Findler","given":"Robert Bruce"},{"family":"Flatt","given":"Matthew"},{"family":"Krishnamurthi","given":"Shriram"},{"family":"Barzilay","given":"Eli"},{"family":"McCarthy","given":"Jay"},{"family":"Tobin-Hochstadt","given":"Sam"}],"citation-key":"felleisenProgrammableProgrammingLanguage2018","container-title":"Communications of the ACM","container-title-short":"Commun. ACM","DOI":"10.1145/3127323","ISSN":"0001-0782, 1557-7317","issue":"3","issued":{"date-parts":[["2018",2,21]]},"language":"en","page":"62–71","source":"DOI.org (Crossref)","title":"A programmable programming language","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/3127323","volume":"61"}, - {"id":"FermetureInformatique2024","abstract":"Dans un langage de programmation, une fermeture ou clôture (en anglais : closure) est une fonction accompagnée de son environnement lexical. L'environnement lexical d'une fonction est l'ensemble des variables non locales qu'elle a capturées, soit par valeur (c'est-à-dire par copie des valeurs des variables), soit par référence (c'est-à-dire par copie des adresses mémoires des variables). Une fermeture est donc créée, entre autres, lorsqu'une fonction est définie dans le corps d'une autre fonction et utilise des paramètres ou des variables locales de cette dernière.\nUne fermeture peut être passée en argument d'une fonction dans l'environnement où elle a été créée (passée vers le bas) ou renvoyée comme valeur de retour (passée vers le haut). Dans ce cas, le problème posé alors par la fermeture est qu'elle fait référence à des données qui auraient typiquement été allouées sur la pile d'exécution et libérées à la sortie de l'environnement. Hors optimisations par le compilateur, le problème est généralement résolu par une allocation sur le tas de l'environnement.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"FermetureInformatique2024","container-title":"Wikipédia","issued":{"date-parts":[["2024",2,26]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 212836844","source":"Wikipedia","title":"Fermeture (informatique)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Fermeture_(informatique)&oldid=212836844"}, - {"id":"floydParadigmsProgramming1979","author":[{"family":"Floyd","given":"Robert W."}],"citation-key":"floydParadigmsProgramming1979","container-title":"Communication of the ACM","DOI":"10.1145/359138.359140","issue":"8","issued":{"date-parts":[["1979",8,1]]},"language":"English","page":"455–460","title":"The paradigms of programming","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/359138.359140","volume":"22"}, - {"id":"floydParadigmsProgramming1979a","author":[{"family":"Floyd","given":"Robert W"}],"citation-key":"floydParadigmsProgramming1979a","issue":"8","issued":{"date-parts":[["1979"]]},"language":"en","source":"Zotero","title":"The paradigms of programming","type":"article-journal","volume":"22"}, - {"id":"FonctionOrdreSuperieur2023","abstract":"En mathématiques et en informatique, les fonctions d'ordre supérieur sont des fonctions qui ont au moins une des propriétés suivantes :\n\nelles prennent une ou plusieurs fonctions en entrée ;\nelles renvoient une fonction.En mathématiques, on les appelle des opérateurs ou des fonctionnelles.\nL'opérateur de dérivation en calcul infinitésimal est un exemple classique, car elle associe une fonction (la dérivée) à une autre fonction (la fonction que l'on dérive).\nDans le lambda-calcul non typé, toutes les fonctions sont d'ordre supérieur. Dans le lambda-calcul typé, dont la plupart des langages de programmation fonctionnels sont issus, les fonctions d'ordre supérieur sont généralement celles dont le type contient\nplus d'une flèche (Flèches dans la programmation fonctionnelle).\nEn programmation fonctionnelle, les fonctions d'ordre supérieur qui retournent d'autres fonctions sont dites curryfiées.\nLa fonction map présente dans de nombreux langages de programmation fonctionnelle est un exemple de fonction d'ordre supérieur. Elle prend une fonction f comme argument, et retourne une nouvelle fonction qui prend une liste comme argument et applique f à chaque élément. Un autre exemple très courant est celui d'une fonction de tri qui prend en argument une fonction de comparaison ; on sépare ainsi l'algorithme de tri de la comparaison des éléments à trier.\nD'autres exemples de fonction d'ordre supérieur sont la composition de fonctions et l'intégration.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"FonctionOrdreSuperieur2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",6,22]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 205383055","source":"Wikipedia","title":"Fonction d'ordre supérieur","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Fonction_d%27ordre_sup%C3%A9rieur&oldid=205383055"}, - {"id":"FunctionComputerProgramming2024","abstract":"In computer programming, a function, subprogram, procedure, method, routine or subroutine is a callable unit that has a well-defined behavior and can be invoked by other software units to exhibit that behavior.\nCallable units provide a powerful programming tool. The primary purpose is to allow for the decomposition of a large and/or complicated problem into chunks that have relatively low cognitive load and to assign the chunks meaningful names (unless they are anonymous). Judicious application can reduce the cost of developing and maintaining software, while increasing its quality and reliability.Callable units are present at multiple levels of abstraction in the programming environment. For example, a programmer may write a function in source code that is compiled to machine code that implements similar semantics. There is a callable unit in the source code and an associated one in the machine code, but they are different kinds of callable units – with different implications and features.","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"FunctionComputerProgramming2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,26]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1210403496","source":"Wikipedia","title":"Function (computer programming)","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Function_(computer_programming)&oldid=1210403496"}, - {"id":"Gcode2023","abstract":"G-code (also RS-274) is the most widely used computer numerical control (CNC) and 3D printing programming language. It is used mainly in computer-aided manufacturing to control automated machine tools, as well as for 3D-printer slicer applications. The G stands for geometry. G-code has many variants.\nG-code instructions are provided to a machine controller (industrial computer) that tells the motors where to move, how fast to move, and what path to follow. The two most common situations are that, within a machine tool such as a lathe or mill, a cutting tool is moved according to these instructions through a toolpath cutting away material to leave only the finished workpiece and/or an unfinished workpiece is precisely positioned in any of up to nine axes around the three dimensions relative to a toolpath and, either or both can move relative to each other. The same concept also extends to noncutting tools such as forming or burnishing tools, photoplotting, additive methods such as 3D printing, and measuring instruments.","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"Gcode2023","container-title":"Wikipedia","issued":{"date-parts":[["2023",12,28]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1192191622","source":"Wikipedia","title":"G-code","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=G-code&oldid=1192191622"}, - {"id":"GrammaireNonContextuelle2023","abstract":"En linguistique et en informatique théorique, une grammaire algébrique, ou grammaire non contextuelle, aussi appelée grammaire hors-contexte ou grammaire « context-free » est une grammaire formelle dans laquelle chaque règle de production est de la forme\n\nX→α{\\displaystyle X\\to \\alpha }où X{\\displaystyle X} est un symbole non terminal et α{\\displaystyle \\alpha } est une chaîne composée de terminaux et/ou de non-terminaux. Le terme « non contextuel » provient du fait qu'un non terminal X{\\displaystyle X} peut être remplacé par α{\\displaystyle \\alpha }, sans tenir compte du contexte où il apparaît. Un langage formel est non contextuel (ou hors contexte, ou encore algébrique) s'il existe une grammaire non contextuelle qui l'engendre.\nPar opposition est contextuelle une règle de la forme\nc +X→c+α{\\displaystyle c~+X\\to c+\\alpha }\nen raison de la partie gauche de la règle qui stipule un contexte pour X. Une telle règle signifie que X, dans le cas (contexte) où il est précédé du symbole terminal c{\\displaystyle c} et du littéral +{\\displaystyle +}, peut être remplacé par α{\\displaystyle \\alpha }.\nAinsi, dans une grammaire non contextuelle, un symbole non terminal est toujours seul dans la partie gauche de toute règle, ce qui signifie que son environnement syntaxique (ou contexte) n'est pas considéré.\nLes grammaires algébriques sont suffisamment puissantes pour décrire la partie principale de la syntaxe de la plupart des langages de programmation, avec au besoin quelques extensions. La forme de Backus-Naur est la notation la plus communément utilisée pour décrire une grammaire non contextuelle décrivant un langage de programmation. Dans la hiérarchie de Chomsky, ces grammaires sont de type 2.\nSi on trouve plusieurs termes pour nommer une grammaire algébrique, c'est que le terme anglais « context-free » est malcommode à traduire. Tous les termes donnés plus haut sont employés et équivalents.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"GrammaireNonContextuelle2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",12,11]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 210452959","source":"Wikipedia","title":"Grammaire non contextuelle","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Grammaire_non_contextuelle&oldid=210452959"}, - {"id":"HierarchieChomsky2023","abstract":"En informatique théorique, en théorie des langages, et en calculabilité, la hiérarchie de Chomsky (parfois appelée hiérarchie de Chomsky-Schützenberger) est une classification des grammaires formelles (et par extension, des langages formels respectifs engendrés par les grammaires), esquissée par Noam Chomsky en 1956, et décrite de façon formelle en 1959.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"HierarchieChomsky2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",12,7]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 210331079","source":"Wikipedia","title":"Hiérarchie de Chomsky","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Hi%C3%A9rarchie_de_Chomsky&oldid=210331079"}, - {"id":"hofmannWhatPureFunctional2010","abstract":"Given an ML function f : (int->int)->int how can we rigorously specify that f is pure, i.e., produces no side-effects other than those arising from calling its functional argument? We show that existing methods based on preservation of invariants and relational parametricity are insufficient for this purpose and thus define a new notion that captures purity in the sense that for any functional F that is pure in this sense there exists a corresponding question-answer strategy. This research is motivated by an attempt to prove algorithms correct that take such supposedly pure functionals as input and apply them to stateful arguments in order to inspect intensional aspects of their behaviour.","author":[{"family":"Hofmann","given":"Martin"},{"family":"Karbyshev","given":"Aleksandr"},{"family":"Seidl","given":"Helmut"}],"citation-key":"hofmannWhatPureFunctional2010","container-title":"Automata, Languages and Programming","DOI":"10.1007/978-3-642-14162-1_17","editor":[{"family":"Abramsky","given":"Samson"},{"family":"Gavoille","given":"Cyril"},{"family":"Kirchner","given":"Claude"},{"family":"Meyer auf der Heide","given":"Friedhelm"},{"family":"Spirakis","given":"Paul G."}],"event-place":"Berlin, Heidelberg","ISBN":"978-3-642-14162-1","issued":{"date-parts":[["2010"]]},"language":"en","page":"199–210","publisher":"Springer","publisher-place":"Berlin, Heidelberg","source":"Springer Link","title":"What Is a Pure Functional?","type":"paper-conference"}, - {"id":"hughesWhyFunctionalProgramming1989","abstract":"As software becomes more and more complex, it is more and more important to structure it well. Well-structured software is easy to write, easy to debug, and provides a collection of modules that can be re-used to reduce future programming costs. Conventional languages place conceptual limits on the way problems can be modularised. Functional languages push those limits back. In this paper we show that two features of functional languages in particular, higher-order functions and lazy evaluation, can contribute greatly to modularity. As examples, we manipulate lists and trees, program several numerical algorithms, and implement the alpha-beta heuristics (an Artificial Intelligence algorithm used in game-playing programs). Since modularity is the key to successful programming, functional languages are vitally important to the real world.","accessed":{"date-parts":[["2024",3,30]]},"author":[{"family":"Hughes","given":"J."}],"citation-key":"hughesWhyFunctionalProgramming1989","container-title":"The Computer Journal","container-title-short":"The Computer Journal","DOI":"10.1093/comjnl/32.2.98","ISSN":"0010-4620","issue":"2","issued":{"date-parts":[["1989",1,1]]},"page":"98–107","source":"Silverchair","title":"Why Functional Programming Matters","type":"article-journal","URL":"https://doi.org/10.1093/comjnl/32.2.98","volume":"32"}, - {"id":"iversonNotationToolThought1980","accessed":{"date-parts":[["2024",2,20]]},"author":[{"family":"Iverson","given":"Kenneth E."}],"citation-key":"iversonNotationToolThought1980","container-title":"Communications of the ACM","container-title-short":"Commun. ACM","DOI":"10.1145/358896.358899","ISSN":"0001-0782, 1557-7317","issue":"8","issued":{"date-parts":[["1980",8]]},"language":"en","page":"444–465","source":"DOI.org (Crossref)","title":"Notation as a tool of thought","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/358896.358899","volume":"23"}, - {"id":"jeambonFaceLIA2024","author":[{"family":"Jeambon","given":"Valérie"},{"family":"Devouard","given":"Florence"}],"citation-key":"jeambonFaceLIA2024","issued":{"date-parts":[["2024"]]},"title":"Face a l'IA","type":"document"}, - {"id":"jenkinsWhatFunctionalProgramming2015","abstract":"The personal blog of Kris Jenkins, geek.","accessed":{"date-parts":[["2024",3,29]]},"author":[{"family":"Jenkins","given":"Kris"}],"citation-key":"jenkinsWhatFunctionalProgramming2015","container-title":"Kris Jenkins' Blog","issued":{"date-parts":[["2015",12,29]]},"language":"en","title":"What Is Functional Programming?","type":"webpage","URL":"http://blog.jenkster.com/2015/12/what-is-functional-programming.html#fnref-1"}, - {"id":"linEffectsWhiteNoise2022","abstract":"Several models have tentatively associated improving attention-deficit/hyperactivity disorder (ADHD) symptoms with arousal and external environmental stimulation. In order to further clarify the relationships between ADHD symptoms, arousal, and external stimulation, this study focused on exploring the “simultaneous” effects of white noise on intrinsic attentional performance and extrinsic on-task behaviors in preschoolers with and without ADHD. By using the computerized task (K-CPT 2), 104 preschoolers, including 52 ADHD children and 52 typically developing (TD) children, were tested and analyzed for their intrinsic attention (such as detectability, omission errors, commission errors, and reaction time). Simultaneously, these preschoolers’ external on-task behaviors were recorded for analysis through systematic observation. This study showed that white noise could effectively improve attention performance, including enhancing the ability to differentiate non-targets from targets and decreasing omission errors. It could also reduce the extrinsic hyperactive behaviors of preschoolers with ADHD. The findings of this study highlighted that white noise stimulation is a beneficial non-pharmacological treatment for preschoolers with ADHD. In contrast, for TD preschoolers, the results of this study showed that the external white noise stimuli were not only unhelpful but also a burden.","accessed":{"date-parts":[["2024",10,29]]},"author":[{"family":"Lin","given":"Hung-Yu"}],"citation-key":"linEffectsWhiteNoise2022","container-title":"International Journal of Environmental Research and Public Health","DOI":"10.3390/ijerph192215391","ISSN":"1660-4601","issue":"22","issued":{"date-parts":[["2022",1]]},"language":"en","license":"http://creativecommons.org/licenses/by/3.0/","page":"15391","source":"www.mdpi.com","title":"The Effects of White Noise on Attentional Performance and On-Task Behaviors in Preschoolers with ADHD","type":"article-journal","URL":"https://www.mdpi.com/1660-4601/19/22/15391","volume":"19"}, - {"id":"LogiqueCombinatoire2023","abstract":"En logique mathématique, la logique combinatoire est une théorie logique introduite par Moses Schönfinkel en 1920 lors d'une conférence[Laquelle ?] et développée dès 1929 par Haskell Brooks Curry pour supprimer le besoin de variables en mathématiques, pour formaliser rigoureusement la notion de fonction et pour minimiser le nombre d'opérateurs nécessaires pour définir le calcul des prédicats à la suite de Henry M. Sheffer. Plus récemment, elle a été utilisée en informatique comme modèle théorique de calcul et comme base pour la conception de langages de programmation fonctionnels.\nLe concept de base de la logique combinatoire est celui de combinateur qui est une fonction d'ordre supérieur ; elle utilise uniquement l'application de fonctions et éventuellement d'autres combinateurs pour définir de nouvelles fonctions d'ordre supérieur. Chaque combinateur simplement typable est une démonstration à la Hilbert en logique intuitionniste et vice-versa . On appelle ceci la correspondance de Curry-Howard","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"LogiqueCombinatoire2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",6,5]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 204935023","source":"Wikipedia","title":"Logique combinatoire","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Logique_combinatoire&oldid=204935023"}, - {"id":"marxCapitalParKarl","author":[{"family":"Marx","given":"Karl (1818-1883)"}],"citation-key":"marxCapitalParKarl","language":"fr","source":"Zotero","title":"Le capital / par Karl Marx ; traduction de M. J. Roy, entièrement revisée par l'auteur","type":"article-journal"}, - {"id":"merakchiAtheismMoralityWe2024","abstract":"Unless you’ve been failing your CAPTCHA tests lately, I’ll venture to boldly claim: you are a human. And while some may argue that the…","accessed":{"date-parts":[["2024",6,23]]},"author":[{"family":"Merakchi","given":"Hiba"}],"citation-key":"merakchiAtheismMoralityWe2024","container-title":"Medium","issued":{"date-parts":[["2024",2,25]]},"language":"en","title":"Atheism and morality: do we need God to be moral?","title-short":"Atheism and morality","type":"post-weblog","URL":"https://hiba-merakchi.medium.com/atheism-and-morality-do-we-need-god-to-be-moral-7dd51d28f640"}, - {"id":"merakchiHardProblemConsciousness2021","abstract":"Can materialism account for consciousness?","accessed":{"date-parts":[["2024",6,18]]},"author":[{"family":"Merakchi","given":"Hiba"}],"citation-key":"merakchiHardProblemConsciousness2021","container-title":"Medium","issued":{"date-parts":[["2021",12,23]]},"language":"en","title":"The hard problem of consciousness","type":"post-weblog","URL":"https://hiba-merakchi.medium.com/the-hard-problem-of-consciousness-6457d3be84de"}, - {"id":"michaelsonProgrammingParadigmsTuring2020","abstract":"The notion of programming paradigms, with associated programming languages and methodologies, is a well established tenet of Computer Science pedagogy, enshrined in international curricula. However, this notion sits ill with Kuhn's classic conceptualisation of a scientific paradigm as a dominant world view, which supersedes its predecessors through superior explanatory power. Furthermore, it is not at all clear how programming paradigms are to be characterised and differentiated. Indeed, on closer inspection, apparently disparate programming paradigms are very strongly connected. Rather, they should be viewed as different traditions of a unitary Computer Science paradigm of Turing complete computation complemented by Computational Thinking.","accessed":{"date-parts":[["2024",2,26]]},"author":[{"family":"Michaelson","given":"Greg"}],"citation-key":"michaelsonProgrammingParadigmsTuring2020","container-title":"The Art, Science, and Engineering of Programming","container-title-short":"Programming","DOI":"10.22152/programming-journal.org/2020/4/4","ISSN":"2473-7321","issue":"3","issued":{"date-parts":[["2020",2,14]]},"page":"4","source":"arXiv.org","title":"Programming Paradigms, Turing Completeness and Computational Thinking","type":"article-journal","URL":"http://arxiv.org/abs/2002.06178","volume":"4"}, - {"id":"minskyFormContentComputer1970","accessed":{"date-parts":[["2024",3,30]]},"author":[{"family":"Minsky","given":"Marvin"}],"citation-key":"minskyFormContentComputer1970","container-title":"Journal of the ACM","container-title-short":"J. ACM","DOI":"10.1145/321574.321575","ISSN":"0004-5411","issue":"2","issued":{"date-parts":[["1970",4,1]]},"page":"197–215","source":"ACM Digital Library","title":"Form and Content in Computer Science (1970 ACM turing lecture)","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/321574.321575","volume":"17"}, - {"id":"okasakiPurelyFunctionalData1999","abstract":"Most books on data structures assume an imperative language such as C or C++. However, data structures for these languages do not always translate well to functional languages such as Standard ML, Haskell, or Scheme. This book describes data structures from the point of view of functional languages, with examples, and presents design techniques that allow programmers to develop their own functional data structures. The author includes both classical data structures, such as red-black trees and binomial queues, and a host of new data structures developed exclusively for functional languages. All source code is given in Standard ML and Haskell, and most of the programs are easily adaptable to other functional languages. This handy reference for professional programmers working with functional languages can also be used as a tutorial or for self-study.","author":[{"family":"Okasaki","given":"Chris"}],"citation-key":"okasakiPurelyFunctionalData1999","ISBN":"978-0-521-66350-2","issued":{"date-parts":[["1999",6,13]]},"language":"en","number-of-pages":"236","publisher":"Cambridge University Press","source":"Google Books","title":"Purely Functional Data Structures","type":"book"}, - {"id":"ParadigmeProgrammation2023","abstract":"Le paradigme de programmation est la façon (parmi d'autres) d'approcher la programmation informatique et de formuler les solutions aux problèmes et leur formalisation dans un langage de programmation approprié. Ce n'est pas de la méthodologie contenant une méthode ; cette dernière organise le traitement des problèmes reconnus dans l'écosystème concerné pour aboutir à la solution conceptuelle et programme exécutable.","accessed":{"date-parts":[["2024",2,24]]},"citation-key":"ParadigmeProgrammation2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",7,11]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 205915300","source":"Wikipedia","title":"Paradigme (programmation)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Paradigme_(programmation)&oldid=205915300"}, - {"id":"perlisSpecialFeatureEpigrams1982","accessed":{"date-parts":[["2024",4,2]]},"author":[{"family":"Perlis","given":"Alan J."}],"citation-key":"perlisSpecialFeatureEpigrams1982","container-title":"ACM SIGPLAN Notices","container-title-short":"SIGPLAN Not.","DOI":"10.1145/947955.1083808","ISSN":"0362-1340","issue":"9","issued":{"date-parts":[["1982",9,1]]},"page":"7–13","source":"ACM Digital Library","title":"Special Feature: Epigrams on programming","title-short":"Special Feature","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/947955.1083808","volume":"17"}, - {"id":"ReactionOscillante2020","abstract":"Une réaction oscillante est un mélange complexe de composés chimiques dont la concentration d'un ou plusieurs composants présente des changements périodiques, jusqu'à épuisement de sa source d'énergie (généralement, un des réactifs). Dans les cas où l'un des réactifs a une couleur visible, la traversée d'un seuil de concentration peut conduire à un brusque changement de couleur.\nDes exemples de réactions oscillantes sont la réaction de Belooussov-Jabotinski, la réaction de Briggs-Rauscher, la réaction de Bray-Liebhafsky et la réaction oscillante de l'iode, ou, dans un genre un peu différent, la réaction du cœur battant de mercure. La concentration des produits et des réactifs chimiques d'une réaction oscillante peut être estimée en termes d'amortissement des oscillations.","accessed":{"date-parts":[["2024",5,17]]},"citation-key":"ReactionOscillante2020","container-title":"Wikipédia","issued":{"date-parts":[["2020",12,6]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 177361963","source":"Wikipedia","title":"Réaction oscillante","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=R%C3%A9action_oscillante&oldid=177361963"}, - {"id":"royProgrammingParadigmsDummies","author":[{"family":"Roy","given":"Peter Van"}],"citation-key":"royProgrammingParadigmsDummies","container-title":"Université Catholique de Louvain - UCLouvain","language":"en","source":"Zotero","title":"Programming Paradigms for Dummies: What Every Programmer Should Know","type":"article-journal"}, - {"id":"SalaireQualificationPersonnelle2024","abstract":"Le salaire à la qualification personnelle ou « salaire à vie » est une forme de rémunération dont le principe a principalement été théorisé par Bernard Friot et l'association d'éducation populaire Réseau Salariat. Il permet notamment de dissocier travail et emploi. Avec la cotisation sociale, il serait à la base d'un nouveau mode d’organisation socio-économique,,.","accessed":{"date-parts":[["2024",5,21]]},"citation-key":"SalaireQualificationPersonnelle2024","container-title":"Wikipédia","issued":{"date-parts":[["2024",1,31]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 212031190","source":"Wikipedia","title":"Salaire à la qualification personnelle","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Salaire_%C3%A0_la_qualification_personnelle&oldid=212031190"}, - {"id":"strategicservicesSimpleSabotageField","author":[{"family":"Strategic Services","given":""}],"citation-key":"strategicservicesSimpleSabotageField","number-of-pages":"20","title":"Simple sabotage field manual","type":"book"}, - {"id":"StructuredProgrammingWikipedia","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"StructuredProgrammingWikipedia","title":"Structured programming - Wikipedia","type":"webpage","URL":"https://en.wikipedia.org/wiki/Structured_programming?oldformat=true"}, - {"id":"StructuresDonneesEnregistrements","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"StructuresDonneesEnregistrements","language":"fr","title":"Structures de données/Enregistrements — Wikilivres","type":"webpage","URL":"https://fr.wikibooks.org/wiki/Structures_de_donn%C3%A9es/Enregistrements"}, - {"id":"toalProgrammingParadigms","accessed":{"date-parts":[["2024",3,29]]},"author":[{"family":"Toal","given":"Ray"}],"citation-key":"toalProgrammingParadigms","title":"Programming Paradigms","type":"webpage","URL":"https://cs.lmu.edu/~ray/notes/paradigms/"}, - {"id":"vanroyConceptsTechniquesModels2004","abstract":"This innovative text presents computer programming as a unified discipline in a way that is both practical and scientifically sound. The book focuses on techniques of lasting value and explains them precisely in terms of a simple abstract machine. The book presents all major programming paradigms in a uniform framework that shows their deep relationships and how and where to use them together. After an introduction to programming concepts, the book presents both well-known and lesser-known computation models (\"programming paradigms\"). Each model has its own set of techniques and each is included on the basis of its usefulness in practice. The general models include declarative programming, declarative concurrency, message-passing concurrency, explicit state, object-oriented programming, shared-state concurrency, and relational programming. Specialized models include graphical user interface programming, distributed programming, and constraint programming. Each model is based on its kernel language -- a simple core language that consists of a small number of programmer-significant elements. The kernel languages are introduced progressively, adding concepts one by one, thus showing the deep relationships between different models. The kernel languages are defined precisely in terms of a simple abstract machine. Because a wide variety of languages and programming paradigms can be modeled by a small set of closely related kernel languages, this approach allows programmer and student to grasp the underlying unity of programming. The book has many program fragments and exercises, all of which can be run on the Mozart Programming System, an Open Source software package that features an interactive incremental development environment.","author":[{"family":"Van Roy","given":"Peter"},{"family":"Haridi","given":"Seif"}],"citation-key":"vanroyConceptsTechniquesModels2004","edition":"1st","ISBN":"978-0-262-22069-9","issued":{"date-parts":[["2004",1]]},"number-of-pages":"936","publisher":"The MIT Press","source":"ACM Digital Library","title":"Concepts, Techniques, and Models of Computer Programming","type":"book"}, - {"id":"vanroyTaxonomiePrincipauxParadigmes","accessed":{"date-parts":[["2024",4,1]]},"author":[{"family":"Van Roy","given":"Peter"}],"citation-key":"vanroyTaxonomiePrincipauxParadigmes","title":"Une taxonomie des principaux paradigmes de programmation","type":"webpage","URL":"https://www.info.ucl.ac.be/~pvr/paradigmes.html"}, - {"id":"varoufakisConversationsEntreAdultes2017","abstract":"Pour la première fois, un ancien ministre dévoile les coulisses secrètes de l’Europe.\n\t\t\t\n\t\t\tC’était en janvier 2015 : à peine a-t-il été nommé ministre des Finances de la Grèce que Yanis Varoufakis déclenche une des batailles les plus spectaculaires et les plus controversées de l’histoire récente en cherchant à renégocier les rapports entre son pays et l’Union européenne. En dépit du soutien exceptionnel de la population grecque et de la logique imparable de ses arguments, il s’est heurté à un mur et a provoqué l’ire des élites politiques, financières et médiatiques de l’Europe.\n\t\t\tLa vérité de cet affrontement était inconnue jusqu’ici – justement parce que la direction de l’Union européenne se réunit à huis clos. Dans un récit personnel et explosif, Yanis Varoufakis, économiste d’envergure mondiale, explique comment les choses se passent très concrètement dans les couloirs de Bruxelles.\n\t\t\tIl révèle une histoire édifiante où se mêlent hypocrisie, trahisons, collusions d’intérêts et acrobaties politiques. Un récit qui ébranlera profondément l’establishment.\n\t\t\tAujourd’hui – comment en douter ? –, la répression tragique de la rébellion démocratique grecque est à l’image des politiques qui mènent à l’autoritarisme, au populisme et à l’instabilité qui menacent le monde occidental.\n\t\t\tConversations entre adultes est un vibrant appel à renouveler la démocratie européenne avant qu’il ne soit trop tard.\n\t\t\t\n\t\t\tYanis Varoufakis a été ministre des Finances du gouvernement Tsipras et a conduit les négociations sur la dette grecque jusqu’à sa démission au lendemain du référendum du 5 juillet 2015.\n\t\t\tNé à Athènes en 1961, il a enseigné en Grande-Bretagne, en Australie et aux États-Unis. Il est aujourd’hui le chef de file du mouvement DiEM25, qui promeut la relance de la démocratie en Europe et s’oppose au diktat de l’austérité.","author":[{"family":"Varoufakis","given":"Yanis"}],"citation-key":"varoufakisConversationsEntreAdultes2017","issued":{"date-parts":[["2017",9,29]]},"language":"fr","license":"Yanis Varoufakis, 2017.","note":"Item ID: _:n0","publisher":"Éditions Les Liens qui libèrent","title":"Conversations entre adultes","type":"book"}, - {"id":"WikiwandTuringcomplet2017","abstract":"En informatique et en logique, un système formel est dit complet au sens de Turing ou Turing-complet s’il possède un pouvoir expressif au moins équivalent à celui des machines de Turing. Dans un tel système, il est donc possible de programmer n'importe quelle machine de Turing.","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"WikiwandTuringcomplet2017","container-title":"Wikiwand","issued":{"date-parts":[["2017",2,2]]},"title":"Wikiwand - Turing-complet","type":"webpage","URL":"https://www.wikiwand.com/fr/Turing-complet"}, - {"id":"willettParadigmeTheorieModele1996","abstract":"L’auteur traite des termes paradigme, théorie, modèle et schéma. Il tente de clarifier le plus possible ces termes en traitant de l’essentiel et en mettant l’accent sur ce qui permet de les différencier. Il rend compte de certaines difficultés provoquées par la polysémie de ces termes. Il termine en soulevant certaines questions à propos de la communicologie.","accessed":{"date-parts":[["2024",4,3]]},"author":[{"family":"Willett","given":"Gilles"}],"citation-key":"willettParadigmeTheorieModele1996","container-title":"Communication et organisation. Revue scientifique francophone en Communication organisationnelle","DOI":"10.4000/communicationorganisation.1873","ISSN":"1168-5549","issue":"10","issued":{"date-parts":[["1996",11,1]]},"language":"fr","license":"https://creativecommons.org/licenses/by-nc-nd/4.0/","number":"10","publisher":"Presses universitaires de Bordeaux","source":"journals.openedition.org","title":"Paradigme, théorie, modèle, schéma : qu’est-ce donc ?","title-short":"Paradigme, théorie, modèle, schéma","type":"article-journal","URL":"https://journals.openedition.org/communicationorganisation/1873"} -] +[{"id":"abelsonStructureInterpretationComputer1996","accessed":{"date-parts":[["2024",3,29]]},"author":[{"family":"Abelson","given":"Harold"},{"family":"Sussman","given":"Gerald Jay"},{"family":"Sussman","given":"Julie"}],"citation-key":"abelsonStructureInterpretationComputer1996","edition":"2","event-place":"Cambridge, Massachusetts, London, England","issued":{"date-parts":[["1996"]]},"language":"en","publisher":"MIT Press","publisher-place":"Cambridge, Massachusetts, London, England","source":"Zotero","title":"Structure and Interpretation of Computer Programs","type":"book","URL":"http://mitpress.mit.edu/sicp"},{"id":"antoninPOURDESIGNMINIMAL","author":[{"family":"Antonin","given":"Peronnet"}],"citation-key":"antoninPOURDESIGNMINIMAL","language":"fr","source":"Zotero","title":"POUR UN DESIGN MINIMAL","type":"article-journal"},{"id":"antonszandorBibleSatanique1969","author":[{"family":"Anton Szandor","given":"Lavey"}],"citation-key":"antonszandorBibleSatanique1969","issued":{"date-parts":[["1969"]]},"title":"La Bible satanique","type":"book"},{"id":"AutomatePile2021","abstract":"Un automate à pile est une machine abstraite utilisée en informatique théorique et, plus précisément, en théorie des automates.\nUn automate à pile est une généralisation des automates finis : il dispose en plus d'une mémoire infinie organisée en pile (last-in/first-out ou LIFO). Un automate à pile prend en entrée un mot et réalise une série de transitions. Il effectue pour chaque lettre du mot une transition, dont le choix dépend de la lettre, de l'état de l'automate et du sommet de la pile ; il peut aussi modifier le contenu de la pile. Selon l'état de l'automate et de la pile à la fin du calcul, le mot est accepté ou refusé.\nLes langages reconnus par les automates à piles sont exactement les langages algébriques, c'est-à-dire ceux engendrés par une grammaire algébrique.\nL'importance des automates à pile vient de leur emploi en analyse syntaxique des langages de programmation, et plus généralement dans la transformation de définitions ou d'algorithmes récursifs en leurs analogues itératifs.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"AutomatePile2021","container-title":"Wikipédia","issued":{"date-parts":[["2021",10,29]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 187552887","source":"Wikipedia","title":"Automate à pile","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Automate_%C3%A0_pile&oldid=187552887"},{"id":"begue-shanklandEtudeScientifiqueMontre2024","abstract":"Menée par le Professeur des Universités Laurent Bègue Shankland1 auprès de 67 000 étudiant(e)s et élèves de grandes écoles entre 2023 et 2024, cette recherche d’une ampleur inédite indique que l’alcool est présent dans plus de la moitié des violences sexuelles rapportées depuis l‘arrivée dans l‘enseignement supérieur.","accessed":{"date-parts":[["2024",10,3]]},"author":[{"family":"Bègue-Shankland","given":"Laurent"},{"family":"Roché","given":"Sebastian"},{"family":"Arvers","given":"Philippe"}],"citation-key":"begue-shanklandEtudeScientifiqueMontre2024","issued":{"date-parts":[["2024",10]]},"language":"fr","publisher":"Université de Grenobles Aples","title":"Une étude scientifique montre que l'alcool est un facteur déterminant des violences sexistes et sexuelles en milieu étudiant","type":"document","URL":"https://www.enseignementsup-recherche.gouv.fr/fr/une-etude-scientifique-montre-que-l-alcool-est-un-facteur-determinant-des-violences-sexistes-et-97513"},{"id":"billaudProgrammationFonctionnelleSymbolique1989","accessed":{"date-parts":[["2024",3,28]]},"author":[{"family":"Billaud","given":"Michel"}],"citation-key":"billaudProgrammationFonctionnelleSymbolique1989","container-title":"Page personnelle de Michel Billaud","issued":{"date-parts":[["1989"]]},"title":"Programmation Fonctionnelle et Symbolique - Introduction","type":"webpage","URL":"https://www.mbillaud.fr/SITE-PERSO-LABRI/travaux/lisp89/1intro.html"},{"id":"brown10ThingsSoftware2023","abstract":"Understanding how human memory and learning works, the differences between beginners and experts, and practical steps developers can take to improve their learning, training, and recruitment.","accessed":{"date-parts":[["2024",3,14]]},"author":[{"family":"Brown","given":"Neil C. C."},{"family":"Hermans","given":"Felienne F. J."},{"family":"Margulieux","given":"Lauren E."}],"citation-key":"brown10ThingsSoftware2023","container-title":"Communications of the ACM","container-title-short":"Commun. ACM","DOI":"10.1145/3584859","ISSN":"0001-0782","issue":"1","issued":{"date-parts":[["2023",12,21]]},"page":"78–87","source":"ACM Digital Library","title":"10 Things Software Developers Should Learn about Learning","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/3584859","volume":"67"},{"id":"bustosRegretGenderaffirmationSurgery2021","abstract":"Supplemental Digital Content is available in the text.","accessed":{"date-parts":[["2024",5,14]]},"author":[{"family":"Bustos","given":"Valeria P."},{"family":"Bustos","given":"Samyd S."},{"family":"Mascaro","given":"Andres"},{"family":"Del Corral","given":"Gabriel"},{"family":"Forte","given":"Antonio J."},{"family":"Ciudad","given":"Pedro"},{"family":"Kim","given":"Esther A."},{"family":"Langstein","given":"Howard N."},{"family":"Manrique","given":"Oscar J."}],"citation-key":"bustosRegretGenderaffirmationSurgery2021","container-title":"Plastic and Reconstructive Surgery Global Open","container-title-short":"Plast Reconstr Surg Glob Open","DOI":"10.1097/GOX.0000000000003477","ISSN":"2169-7574","issue":"3","issued":{"date-parts":[["2021",3,19]]},"page":"e3477","PMCID":"PMC8099405","PMID":"33968550","source":"PubMed Central","title":"Regret after Gender-affirmation Surgery: A Systematic Review and Meta-analysis of Prevalence","title-short":"Regret after Gender-affirmation Surgery","type":"article-journal","URL":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8099405/","volume":"9"},{"id":"cainLectureProgrammingParadigms2018","accessed":{"date-parts":[["2024",2,20]]},"author":[{"family":"Cain","given":"Jerry"}],"citation-key":"cainLectureProgrammingParadigms2018","event-place":"Stanford","issued":{"date-parts":[["2018",7,19]]},"language":"English","publisher-place":"Stanford","title":"Lecture 1 | Programming Paradigms","type":"speech","URL":"https://www.youtube.com/watch?v=Ps8jOj7diA0&list=PL9D558D49CA734A02"},{"id":"chenQazxcdswe123Searchobsidiangoogle2024","abstract":"Search obsidian notes in google.","accessed":{"date-parts":[["2025",1,14]]},"author":[{"family":"Chen","given":"YuNing"}],"citation-key":"chenQazxcdswe123Searchobsidiangoogle2024","genre":"TypeScript","issued":{"date-parts":[["2024",7,1]]},"license":"GPL-3.0","original-date":{"date-parts":[["2023",3,17]]},"source":"GitHub","title":"qazxcdswe123/search-obsidian-in-google","type":"software","URL":"https://github.com/qazxcdswe123/search-obsidian-in-google"},{"id":"ComparisonMultiparadigmProgramming2024","abstract":"Programming languages can be grouped by the number and types of paradigms supported.","accessed":{"date-parts":[["2024",2,20]]},"citation-key":"ComparisonMultiparadigmProgramming2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,1]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1202029082","source":"Wikipedia","title":"Comparison of multi-paradigm programming languages","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Comparison_of_multi-paradigm_programming_languages&oldid=1202029082"},{"id":"ComparisonProgrammingParadigms2024","abstract":"This article attempts to set out the various similarities and differences between the various programming paradigms as a summary in both graphical and tabular format with links to the separate discussions concerning these similarities and differences in extant Wikipedia articles.","accessed":{"date-parts":[["2024",2,26]]},"citation-key":"ComparisonProgrammingParadigms2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,1]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1202049782","source":"Wikipedia","title":"Comparison of programming paradigms","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Comparison_of_programming_paradigms&oldid=1202049782"},{"id":"coriLogiqueMathematique12003","author":[{"family":"Cori","given":"René"},{"family":"Lascar","given":"Daniel"}],"citation-key":"coriLogiqueMathematique12003","event-place":"paris","issued":{"date-parts":[["2003"]]},"number-of-volumes":"2","publisher":"Dunod","publisher-place":"paris","title":"Logique mathématique 1. calcul propositionnel, algèbre de boole","type":"book","volume":"1"},{"id":"coriLogiqueMathematique22003","author":[{"family":"Cori","given":"René"},{"family":"Lascar","given":"Daniel"}],"citation-key":"coriLogiqueMathematique22003","event-place":"paris","issued":{"date-parts":[["2003"]]},"number-of-volumes":"2","publisher":"Dunod","publisher-place":"paris","title":"Logique mathématique 2. fonctions récursives, théorème de Gödel, théories des ensembles, théorie des modèles","type":"book","volume":"2"},{"id":"CountingSort2024","abstract":"In computer science, counting sort is an algorithm for sorting a collection of objects according to keys that are small positive integers; that is, it is an integer sorting algorithm. It operates by counting the number of objects that possess distinct key values, and applying prefix sum on those counts to determine the positions of each key value in the output sequence. Its running time is linear in the number of items and the difference between the maximum key value and the minimum key value, so it is only suitable for direct use in situations where the variation in keys is not significantly greater than the number of items. It is often used as a subroutine in radix sort, another sorting algorithm, which can handle larger keys more efficiently.\nCounting sort is not a comparison sort; it uses key values as indexes into an array and the Ω(n log n) lower bound for comparison sorting will not apply. Bucket sort may be used in lieu of counting sort, and entails a similar time analysis. However, compared to counting sort, bucket sort requires linked lists, dynamic arrays, or a large amount of pre-allocated memory to hold the sets of items within each bucket, whereas counting sort stores a single number (the count of items) per bucket.","accessed":{"date-parts":[["2024",5,12]]},"citation-key":"CountingSort2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,9]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1205345660","source":"Wikipedia","title":"Counting sort","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Counting_sort&oldid=1205345660"},{"id":"dahanRelationsEntreScience2015","abstract":"Depuis vingt-cinq ans, le changement climatique anthropogénique est appréhendé comme une question d’environnement global. Les sciences du climat jouent un rôle primordial dans la construction du problème, qui se veut résumé par la formule « science speaks truth to power », science et politique étant supposées séparées et étanches. Ce cadrage jusqu’ici dominant est aujourd’hui ébranlé par l’échec des négociations internationales : il est devenu manifeste que le consensus scientifique ne suffit pas à engendrer des décisions politiques globales significatives. À l’heure de la COP de Paris, alors que se discute la nécessité de changer de paradigme dans la négociation, cet article veut s’interroger sur l’évolution des relations entre science et politique dans le régime climatique, en revenant sur la vision du rôle de la science et en évoquant les critiques, propositions et perspectives qui se dessinent à propos des modèles d’expertise.","accessed":{"date-parts":[["2024",5,13]]},"author":[{"family":"Dahan","given":"Amy"},{"family":"Guillemot","given":"Hélène"}],"citation-key":"dahanRelationsEntreScience2015","container-title":"Natures Sciences Sociétés","container-title-short":"Nat. Sci. Soc.","DOI":"10.1051/nss/2015014","ISSN":"1240-1307, 1765-2979","issued":{"date-parts":[["2015"]]},"language":"fr","license":"© NSS-Dialogues, EDP Sciences 2015","page":"S6-S18","publisher":"EDP Sciences","source":"www.nss-journal.org","title":"Les relations entre science et politique dans le régime climatique : à la recherche d’un nouveau modèle d’expertise ?","title-short":"Les relations entre science et politique dans le régime climatique","type":"article-journal","URL":"https://www.nss-journal.org/articles/nss/abs/2015/02/nss150014/nss150014.html","volume":"23"},{"id":"dijkstraChapterNotesStructured1972","accessed":{"date-parts":[["2024",4,1]]},"author":[{"family":"Dijkstra","given":"Edsger W."}],"citation-key":"dijkstraChapterNotesStructured1972","container-title":"Structured programming","event-place":"GBR","ISBN":"978-0-12-200550-3","issued":{"date-parts":[["1972",1,1]]},"page":"1–82","publisher":"Academic Press Ltd.","publisher-place":"GBR","source":"ACM Digital Library","title":"Chapter I: Notes on structured programming","title-short":"Chapter I","type":"chapter"},{"id":"EffetBordInformatique2023","abstract":"En informatique, une fonction est dite à effet de bord (traduction mot à mot de l'anglais side effect, dont le sens est plus proche d'effet secondaire) si elle modifie un état en dehors de son environnement local, c'est-à-dire a une interaction observable avec le monde extérieur autre que retourner une valeur. Par exemple, les fonctions qui modifient une variable locale statique, une variable non locale ou un argument mutable passé par référence, les fonctions qui effectuent des opérations d'entrées-sorties ou les fonctions appelant d'autres fonctions à effet de bord. Souvent, ces effets compliquent la lisibilité du comportement des programmes et/ou nuisent à la réutilisabilité des fonctions et procédures. Un langage comme Haskell les restreint délibérément dans des composants nommés monades.\nPlus communément, un effet de bord apparaît la plupart du temps lorsqu'une modification d'un programme cohérent (valeurs et états pris conformes aux spécifications) aboutit à des valeurs ou des comportements non prévus, à cause de la non prise en compte de la portée, de l'ensemble de définition de variables, ou du contrat des fonctions.","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"EffetBordInformatique2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",8,30]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 207397507","source":"Wikipedia","title":"Effet de bord (informatique)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Effet_de_bord_(informatique)&oldid=207397507"},{"id":"EnregistrementStructureDonnees2023","abstract":"En programmation, un enregistrement est une structure de données qui rassemble plusieurs champs, ceux-ci contenant des valeurs qui peuvent être de types différents. Typiquement, le nombre de champ et leur séquence sont fixés. Les champs d'un enregistrement peuvent aussi être nommés \"membres\", en particulier dans la programmation orientée objet. Les champs peuvent encore être appelés \"éléments\", mais cela entraîne un risque de confusion avec les éléments d'une collection.\nPar exemple, une date peut être stockée en mémoire comme un enregistrement avec un champ numérique année, le mois représenté comme une chaîne de caractères, et un champ numérique pour le jour-du-mois.\nLes enregistrements se distinguent des tableaux (arrays) par le fait que le nombre de leurs champs est généralement fixé, que chaque champ a un nom et que chaque champ peut être de type différent.\nUn type enregistrement est un type de donnée qui décrit de telles variables. La majorité des langages de programmation utilisés aujourd'hui donne au programmeur la capacité de définir de nouveaux types d'enregistrements. La définition comprend la spécification du type de données de chaque champ et un identifiant (nom ou étiquette) par lequel on peut y accéder.\nLes enregistrements peuvent exister dans n'importe quelle forme de stockage de données (mémoire vive, bandes magnétiques, disques durs...). Les enregistrements sont fondamentaux pour la majorité des structures de données, en particulier les structures de données liées.\nUn objet dans la programmation orientée objet est essentiellement un enregistrement qui contient les procédures spécialisées pour cet enregistrement. Dans la majorité des langages orientés objet, les enregistrements sont des cas spécifiques des objets, et sont nommés plain old data structures, ou passive data structures.\nUn enregistrement peut être considéré comme l'équivalent informatique d'un n-uplet mathématique. Dans la même veine, il peut aussi être vu comme une version technologique d'un produit cartésien de deux ou plusieurs ensembles mathématiques.","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"EnregistrementStructureDonnees2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",9,12]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 207783466","source":"Wikipedia","title":"Enregistrement (structure de données)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Enregistrement_(structure_de_donn%C3%A9es)&oldid=207783466"},{"id":"entwanneVariablesScopesClosures2019","abstract":"Comprendre leur fonctionnement et en éviter les pièges","accessed":{"date-parts":[["2024",5,13]]},"author":[{"family":"entwanne","given":""}],"citation-key":"entwanneVariablesScopesClosures2019","container-title":"Zeste de Savoir","genre":"text","issued":{"date-parts":[["2019",7,23]]},"language":"fr","license":"Licence CC BY","publisher":"Zeste de Savoir","section":"Tutoriels","title":"Variables, scopes et closures en Python","type":"webpage","URL":"https://zestedesavoir.com/tutoriels/3163/variables-scopes-et-closures-en-python/"},{"id":"ExpressivePowerComputer2023","abstract":"In computer science, the expressive power (also called expressiveness or expressivity) of a language is the breadth of ideas that can be represented and communicated in that language. The more expressive a language is, the greater the variety and quantity of ideas it can be used to represent.\nFor example, the Web Ontology Language expression language profile (OWL2 EL) lacks ideas (such as negation) that can be expressed in OWL2 RL (rule language). OWL2 EL may therefore be said to have less expressive power than OWL2 RL. These restrictions allow for more efficient (polynomial time) reasoning in OWL2 EL than in OWL2 RL. So OWL2 EL trades some expressive power for more efficient reasoning (processing of the knowledge representation language).","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"ExpressivePowerComputer2023","container-title":"Wikipedia","issued":{"date-parts":[["2023",8,26]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1172391643","source":"Wikipedia","title":"Expressive power (computer science)","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Expressive_power_(computer_science)&oldid=1172391643"},{"id":"felleisenExpressivePowerProgramming1990","accessed":{"date-parts":[["2024",2,20]]},"author":[{"family":"Felleisen","given":"Matthias"}],"citation-key":"felleisenExpressivePowerProgramming1990","collection-editor":[{"family":"Goos","given":"G."},{"family":"Hartmanis","given":"J."},{"family":"Barstow","given":"D."},{"family":"Brauer","given":"W."},{"family":"Brinch Hansen","given":"P."},{"family":"Gries","given":"D."},{"family":"Luckham","given":"D."},{"family":"Moler","given":"C."},{"family":"Pnueli","given":"A."},{"family":"Seegmüller","given":"G."},{"family":"Stoer","given":"J."},{"family":"Wirth","given":"N."}],"container-title":"ESOP '90","DOI":"10.1007/3-540-52592-0_60","editor":[{"family":"Jones","given":"Neil"}],"event-place":"Berlin, Heidelberg","ISBN":"978-3-540-52592-9 978-3-540-47045-8","issued":{"date-parts":[["1990"]]},"page":"134–151","publisher":"Springer Berlin Heidelberg","publisher-place":"Berlin, Heidelberg","source":"DOI.org (Crossref)","title":"On the expressive power of programming languages","type":"chapter","URL":"http://link.springer.com/10.1007/3-540-52592-0_60","volume":"432"},{"id":"felleisenProgrammableProgrammingLanguage2018","abstract":"As the software industry enters the era of language-oriented programming, it needs programmable programming languages.","accessed":{"date-parts":[["2024",2,26]]},"author":[{"family":"Felleisen","given":"Matthias"},{"family":"Findler","given":"Robert Bruce"},{"family":"Flatt","given":"Matthew"},{"family":"Krishnamurthi","given":"Shriram"},{"family":"Barzilay","given":"Eli"},{"family":"McCarthy","given":"Jay"},{"family":"Tobin-Hochstadt","given":"Sam"}],"citation-key":"felleisenProgrammableProgrammingLanguage2018","container-title":"Communications of the ACM","container-title-short":"Commun. ACM","DOI":"10.1145/3127323","ISSN":"0001-0782, 1557-7317","issue":"3","issued":{"date-parts":[["2018",2,21]]},"language":"en","page":"62–71","source":"DOI.org (Crossref)","title":"A programmable programming language","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/3127323","volume":"61"},{"id":"FermetureInformatique2024","abstract":"Dans un langage de programmation, une fermeture ou clôture (en anglais : closure) est une fonction accompagnée de son environnement lexical. L'environnement lexical d'une fonction est l'ensemble des variables non locales qu'elle a capturées, soit par valeur (c'est-à-dire par copie des valeurs des variables), soit par référence (c'est-à-dire par copie des adresses mémoires des variables). Une fermeture est donc créée, entre autres, lorsqu'une fonction est définie dans le corps d'une autre fonction et utilise des paramètres ou des variables locales de cette dernière.\nUne fermeture peut être passée en argument d'une fonction dans l'environnement où elle a été créée (passée vers le bas) ou renvoyée comme valeur de retour (passée vers le haut). Dans ce cas, le problème posé alors par la fermeture est qu'elle fait référence à des données qui auraient typiquement été allouées sur la pile d'exécution et libérées à la sortie de l'environnement. Hors optimisations par le compilateur, le problème est généralement résolu par une allocation sur le tas de l'environnement.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"FermetureInformatique2024","container-title":"Wikipédia","issued":{"date-parts":[["2024",2,26]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 212836844","source":"Wikipedia","title":"Fermeture (informatique)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Fermeture_(informatique)&oldid=212836844"},{"id":"floydParadigmsProgramming1979","author":[{"family":"Floyd","given":"Robert W."}],"citation-key":"floydParadigmsProgramming1979","container-title":"Communication of the ACM","DOI":"10.1145/359138.359140","issue":"8","issued":{"date-parts":[["1979",8,1]]},"language":"English","page":"455–460","title":"The paradigms of programming","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/359138.359140","volume":"22"},{"id":"floydParadigmsProgramming1979a","author":[{"family":"Floyd","given":"Robert W"}],"citation-key":"floydParadigmsProgramming1979a","issue":"8","issued":{"date-parts":[["1979"]]},"language":"en","source":"Zotero","title":"The paradigms of programming","type":"article-journal","volume":"22"},{"id":"FonctionOrdreSuperieur2023","abstract":"En mathématiques et en informatique, les fonctions d'ordre supérieur sont des fonctions qui ont au moins une des propriétés suivantes :\n\nelles prennent une ou plusieurs fonctions en entrée ;\nelles renvoient une fonction.En mathématiques, on les appelle des opérateurs ou des fonctionnelles.\nL'opérateur de dérivation en calcul infinitésimal est un exemple classique, car elle associe une fonction (la dérivée) à une autre fonction (la fonction que l'on dérive).\nDans le lambda-calcul non typé, toutes les fonctions sont d'ordre supérieur. Dans le lambda-calcul typé, dont la plupart des langages de programmation fonctionnels sont issus, les fonctions d'ordre supérieur sont généralement celles dont le type contient\nplus d'une flèche (Flèches dans la programmation fonctionnelle).\nEn programmation fonctionnelle, les fonctions d'ordre supérieur qui retournent d'autres fonctions sont dites curryfiées.\nLa fonction map présente dans de nombreux langages de programmation fonctionnelle est un exemple de fonction d'ordre supérieur. Elle prend une fonction f comme argument, et retourne une nouvelle fonction qui prend une liste comme argument et applique f à chaque élément. Un autre exemple très courant est celui d'une fonction de tri qui prend en argument une fonction de comparaison ; on sépare ainsi l'algorithme de tri de la comparaison des éléments à trier.\nD'autres exemples de fonction d'ordre supérieur sont la composition de fonctions et l'intégration.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"FonctionOrdreSuperieur2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",6,22]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 205383055","source":"Wikipedia","title":"Fonction d'ordre supérieur","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Fonction_d%27ordre_sup%C3%A9rieur&oldid=205383055"},{"id":"FunctionComputerProgramming2024","abstract":"In computer programming, a function, subprogram, procedure, method, routine or subroutine is a callable unit that has a well-defined behavior and can be invoked by other software units to exhibit that behavior.\nCallable units provide a powerful programming tool. The primary purpose is to allow for the decomposition of a large and/or complicated problem into chunks that have relatively low cognitive load and to assign the chunks meaningful names (unless they are anonymous). Judicious application can reduce the cost of developing and maintaining software, while increasing its quality and reliability.Callable units are present at multiple levels of abstraction in the programming environment. For example, a programmer may write a function in source code that is compiled to machine code that implements similar semantics. There is a callable unit in the source code and an associated one in the machine code, but they are different kinds of callable units – with different implications and features.","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"FunctionComputerProgramming2024","container-title":"Wikipedia","issued":{"date-parts":[["2024",2,26]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1210403496","source":"Wikipedia","title":"Function (computer programming)","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=Function_(computer_programming)&oldid=1210403496"},{"id":"Gcode2023","abstract":"G-code (also RS-274) is the most widely used computer numerical control (CNC) and 3D printing programming language. It is used mainly in computer-aided manufacturing to control automated machine tools, as well as for 3D-printer slicer applications. The G stands for geometry. G-code has many variants.\nG-code instructions are provided to a machine controller (industrial computer) that tells the motors where to move, how fast to move, and what path to follow. The two most common situations are that, within a machine tool such as a lathe or mill, a cutting tool is moved according to these instructions through a toolpath cutting away material to leave only the finished workpiece and/or an unfinished workpiece is precisely positioned in any of up to nine axes around the three dimensions relative to a toolpath and, either or both can move relative to each other. The same concept also extends to noncutting tools such as forming or burnishing tools, photoplotting, additive methods such as 3D printing, and measuring instruments.","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"Gcode2023","container-title":"Wikipedia","issued":{"date-parts":[["2023",12,28]]},"language":"en","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 1192191622","source":"Wikipedia","title":"G-code","type":"entry-encyclopedia","URL":"https://en.wikipedia.org/w/index.php?title=G-code&oldid=1192191622"},{"id":"GrammaireNonContextuelle2023","abstract":"En linguistique et en informatique théorique, une grammaire algébrique, ou grammaire non contextuelle, aussi appelée grammaire hors-contexte ou grammaire « context-free » est une grammaire formelle dans laquelle chaque règle de production est de la forme\n\nX→α{\\displaystyle X\\to \\alpha }où X{\\displaystyle X} est un symbole non terminal et α{\\displaystyle \\alpha } est une chaîne composée de terminaux et/ou de non-terminaux. Le terme « non contextuel » provient du fait qu'un non terminal X{\\displaystyle X} peut être remplacé par α{\\displaystyle \\alpha }, sans tenir compte du contexte où il apparaît. Un langage formel est non contextuel (ou hors contexte, ou encore algébrique) s'il existe une grammaire non contextuelle qui l'engendre.\nPar opposition est contextuelle une règle de la forme\nc +X→c+α{\\displaystyle c~+X\\to c+\\alpha }\nen raison de la partie gauche de la règle qui stipule un contexte pour X. Une telle règle signifie que X, dans le cas (contexte) où il est précédé du symbole terminal c{\\displaystyle c} et du littéral +{\\displaystyle +}, peut être remplacé par α{\\displaystyle \\alpha }.\nAinsi, dans une grammaire non contextuelle, un symbole non terminal est toujours seul dans la partie gauche de toute règle, ce qui signifie que son environnement syntaxique (ou contexte) n'est pas considéré.\nLes grammaires algébriques sont suffisamment puissantes pour décrire la partie principale de la syntaxe de la plupart des langages de programmation, avec au besoin quelques extensions. La forme de Backus-Naur est la notation la plus communément utilisée pour décrire une grammaire non contextuelle décrivant un langage de programmation. Dans la hiérarchie de Chomsky, ces grammaires sont de type 2.\nSi on trouve plusieurs termes pour nommer une grammaire algébrique, c'est que le terme anglais « context-free » est malcommode à traduire. Tous les termes donnés plus haut sont employés et équivalents.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"GrammaireNonContextuelle2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",12,11]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 210452959","source":"Wikipedia","title":"Grammaire non contextuelle","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Grammaire_non_contextuelle&oldid=210452959"},{"id":"HierarchieChomsky2023","abstract":"En informatique théorique, en théorie des langages, et en calculabilité, la hiérarchie de Chomsky (parfois appelée hiérarchie de Chomsky-Schützenberger) est une classification des grammaires formelles (et par extension, des langages formels respectifs engendrés par les grammaires), esquissée par Noam Chomsky en 1956, et décrite de façon formelle en 1959.","accessed":{"date-parts":[["2024",3,31]]},"citation-key":"HierarchieChomsky2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",12,7]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 210331079","source":"Wikipedia","title":"Hiérarchie de Chomsky","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Hi%C3%A9rarchie_de_Chomsky&oldid=210331079"},{"id":"hofmannWhatPureFunctional2010","abstract":"Given an ML function f : (int->int)->int how can we rigorously specify that f is pure, i.e., produces no side-effects other than those arising from calling its functional argument? We show that existing methods based on preservation of invariants and relational parametricity are insufficient for this purpose and thus define a new notion that captures purity in the sense that for any functional F that is pure in this sense there exists a corresponding question-answer strategy. This research is motivated by an attempt to prove algorithms correct that take such supposedly pure functionals as input and apply them to stateful arguments in order to inspect intensional aspects of their behaviour.","author":[{"family":"Hofmann","given":"Martin"},{"family":"Karbyshev","given":"Aleksandr"},{"family":"Seidl","given":"Helmut"}],"citation-key":"hofmannWhatPureFunctional2010","container-title":"Automata, Languages and Programming","DOI":"10.1007/978-3-642-14162-1_17","editor":[{"family":"Abramsky","given":"Samson"},{"family":"Gavoille","given":"Cyril"},{"family":"Kirchner","given":"Claude"},{"family":"Meyer auf der Heide","given":"Friedhelm"},{"family":"Spirakis","given":"Paul G."}],"event-place":"Berlin, Heidelberg","ISBN":"978-3-642-14162-1","issued":{"date-parts":[["2010"]]},"language":"en","page":"199–210","publisher":"Springer","publisher-place":"Berlin, Heidelberg","source":"Springer Link","title":"What Is a Pure Functional?","type":"paper-conference"},{"id":"hughesWhyFunctionalProgramming1989","abstract":"As software becomes more and more complex, it is more and more important to structure it well. Well-structured software is easy to write, easy to debug, and provides a collection of modules that can be re-used to reduce future programming costs. Conventional languages place conceptual limits on the way problems can be modularised. Functional languages push those limits back. In this paper we show that two features of functional languages in particular, higher-order functions and lazy evaluation, can contribute greatly to modularity. As examples, we manipulate lists and trees, program several numerical algorithms, and implement the alpha-beta heuristics (an Artificial Intelligence algorithm used in game-playing programs). Since modularity is the key to successful programming, functional languages are vitally important to the real world.","accessed":{"date-parts":[["2024",3,30]]},"author":[{"family":"Hughes","given":"J."}],"citation-key":"hughesWhyFunctionalProgramming1989","container-title":"The Computer Journal","container-title-short":"The Computer Journal","DOI":"10.1093/comjnl/32.2.98","ISSN":"0010-4620","issue":"2","issued":{"date-parts":[["1989",1,1]]},"page":"98–107","source":"Silverchair","title":"Why Functional Programming Matters","type":"article-journal","URL":"https://doi.org/10.1093/comjnl/32.2.98","volume":"32"},{"id":"iversonNotationToolThought1980","accessed":{"date-parts":[["2024",2,20]]},"author":[{"family":"Iverson","given":"Kenneth E."}],"citation-key":"iversonNotationToolThought1980","container-title":"Communications of the ACM","container-title-short":"Commun. ACM","DOI":"10.1145/358896.358899","ISSN":"0001-0782, 1557-7317","issue":"8","issued":{"date-parts":[["1980",8]]},"language":"en","page":"444–465","source":"DOI.org (Crossref)","title":"Notation as a tool of thought","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/358896.358899","volume":"23"},{"id":"jeambonFaceLIA2024","author":[{"family":"Jeambon","given":"Valérie"},{"family":"Devouard","given":"Florence"}],"citation-key":"jeambonFaceLIA2024","issued":{"date-parts":[["2024"]]},"title":"Face a l'IA","type":"document"},{"id":"jenkinsWhatFunctionalProgramming2015","abstract":"The personal blog of Kris Jenkins, geek.","accessed":{"date-parts":[["2024",3,29]]},"author":[{"family":"Jenkins","given":"Kris"}],"citation-key":"jenkinsWhatFunctionalProgramming2015","container-title":"Kris Jenkins' Blog","issued":{"date-parts":[["2015",12,29]]},"language":"en","title":"What Is Functional Programming?","type":"webpage","URL":"http://blog.jenkster.com/2015/12/what-is-functional-programming.html#fnref-1"},{"id":"linEffectsWhiteNoise2022","abstract":"Several models have tentatively associated improving attention-deficit/hyperactivity disorder (ADHD) symptoms with arousal and external environmental stimulation. In order to further clarify the relationships between ADHD symptoms, arousal, and external stimulation, this study focused on exploring the “simultaneous” effects of white noise on intrinsic attentional performance and extrinsic on-task behaviors in preschoolers with and without ADHD. By using the computerized task (K-CPT 2), 104 preschoolers, including 52 ADHD children and 52 typically developing (TD) children, were tested and analyzed for their intrinsic attention (such as detectability, omission errors, commission errors, and reaction time). Simultaneously, these preschoolers’ external on-task behaviors were recorded for analysis through systematic observation. This study showed that white noise could effectively improve attention performance, including enhancing the ability to differentiate non-targets from targets and decreasing omission errors. It could also reduce the extrinsic hyperactive behaviors of preschoolers with ADHD. The findings of this study highlighted that white noise stimulation is a beneficial non-pharmacological treatment for preschoolers with ADHD. In contrast, for TD preschoolers, the results of this study showed that the external white noise stimuli were not only unhelpful but also a burden.","accessed":{"date-parts":[["2024",10,29]]},"author":[{"family":"Lin","given":"Hung-Yu"}],"citation-key":"linEffectsWhiteNoise2022","container-title":"International Journal of Environmental Research and Public Health","DOI":"10.3390/ijerph192215391","ISSN":"1660-4601","issue":"22","issued":{"date-parts":[["2022",1]]},"language":"en","license":"http://creativecommons.org/licenses/by/3.0/","page":"15391","source":"www.mdpi.com","title":"The Effects of White Noise on Attentional Performance and On-Task Behaviors in Preschoolers with ADHD","type":"article-journal","URL":"https://www.mdpi.com/1660-4601/19/22/15391","volume":"19"},{"id":"LogiqueCombinatoire2023","abstract":"En logique mathématique, la logique combinatoire est une théorie logique introduite par Moses Schönfinkel en 1920 lors d'une conférence[Laquelle ?] et développée dès 1929 par Haskell Brooks Curry pour supprimer le besoin de variables en mathématiques, pour formaliser rigoureusement la notion de fonction et pour minimiser le nombre d'opérateurs nécessaires pour définir le calcul des prédicats à la suite de Henry M. Sheffer. Plus récemment, elle a été utilisée en informatique comme modèle théorique de calcul et comme base pour la conception de langages de programmation fonctionnels.\nLe concept de base de la logique combinatoire est celui de combinateur qui est une fonction d'ordre supérieur ; elle utilise uniquement l'application de fonctions et éventuellement d'autres combinateurs pour définir de nouvelles fonctions d'ordre supérieur. Chaque combinateur simplement typable est une démonstration à la Hilbert en logique intuitionniste et vice-versa . On appelle ceci la correspondance de Curry-Howard","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"LogiqueCombinatoire2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",6,5]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 204935023","source":"Wikipedia","title":"Logique combinatoire","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Logique_combinatoire&oldid=204935023"},{"id":"marxCapitalParKarl","author":[{"family":"Marx","given":"Karl (1818-1883)"}],"citation-key":"marxCapitalParKarl","language":"fr","source":"Zotero","title":"Le capital / par Karl Marx ; traduction de M. J. Roy, entièrement revisée par l'auteur","type":"article-journal"},{"id":"merakchiAtheismMoralityWe2024","abstract":"Unless you’ve been failing your CAPTCHA tests lately, I’ll venture to boldly claim: you are a human. And while some may argue that the…","accessed":{"date-parts":[["2024",6,23]]},"author":[{"family":"Merakchi","given":"Hiba"}],"citation-key":"merakchiAtheismMoralityWe2024","container-title":"Medium","issued":{"date-parts":[["2024",2,25]]},"language":"en","title":"Atheism and morality: do we need God to be moral?","title-short":"Atheism and morality","type":"post-weblog","URL":"https://hiba-merakchi.medium.com/atheism-and-morality-do-we-need-god-to-be-moral-7dd51d28f640"},{"id":"merakchiHardProblemConsciousness2021","abstract":"Can materialism account for consciousness?","accessed":{"date-parts":[["2024",6,18]]},"author":[{"family":"Merakchi","given":"Hiba"}],"citation-key":"merakchiHardProblemConsciousness2021","container-title":"Medium","issued":{"date-parts":[["2021",12,23]]},"language":"en","title":"The hard problem of consciousness","type":"post-weblog","URL":"https://hiba-merakchi.medium.com/the-hard-problem-of-consciousness-6457d3be84de"},{"id":"michaelsonProgrammingParadigmsTuring2020","abstract":"The notion of programming paradigms, with associated programming languages and methodologies, is a well established tenet of Computer Science pedagogy, enshrined in international curricula. However, this notion sits ill with Kuhn's classic conceptualisation of a scientific paradigm as a dominant world view, which supersedes its predecessors through superior explanatory power. Furthermore, it is not at all clear how programming paradigms are to be characterised and differentiated. Indeed, on closer inspection, apparently disparate programming paradigms are very strongly connected. Rather, they should be viewed as different traditions of a unitary Computer Science paradigm of Turing complete computation complemented by Computational Thinking.","accessed":{"date-parts":[["2024",2,26]]},"author":[{"family":"Michaelson","given":"Greg"}],"citation-key":"michaelsonProgrammingParadigmsTuring2020","container-title":"The Art, Science, and Engineering of Programming","container-title-short":"Programming","DOI":"10.22152/programming-journal.org/2020/4/4","ISSN":"2473-7321","issue":"3","issued":{"date-parts":[["2020",2,14]]},"page":"4","source":"arXiv.org","title":"Programming Paradigms, Turing Completeness and Computational Thinking","type":"article-journal","URL":"http://arxiv.org/abs/2002.06178","volume":"4"},{"id":"minskyFormContentComputer1970","accessed":{"date-parts":[["2024",3,30]]},"author":[{"family":"Minsky","given":"Marvin"}],"citation-key":"minskyFormContentComputer1970","container-title":"Journal of the ACM","container-title-short":"J. ACM","DOI":"10.1145/321574.321575","ISSN":"0004-5411","issue":"2","issued":{"date-parts":[["1970",4,1]]},"page":"197–215","source":"ACM Digital Library","title":"Form and Content in Computer Science (1970 ACM turing lecture)","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/321574.321575","volume":"17"},{"id":"okasakiPurelyFunctionalData1999","abstract":"Most books on data structures assume an imperative language such as C or C++. However, data structures for these languages do not always translate well to functional languages such as Standard ML, Haskell, or Scheme. This book describes data structures from the point of view of functional languages, with examples, and presents design techniques that allow programmers to develop their own functional data structures. The author includes both classical data structures, such as red-black trees and binomial queues, and a host of new data structures developed exclusively for functional languages. All source code is given in Standard ML and Haskell, and most of the programs are easily adaptable to other functional languages. This handy reference for professional programmers working with functional languages can also be used as a tutorial or for self-study.","author":[{"family":"Okasaki","given":"Chris"}],"citation-key":"okasakiPurelyFunctionalData1999","ISBN":"978-0-521-66350-2","issued":{"date-parts":[["1999",6,13]]},"language":"en","number-of-pages":"236","publisher":"Cambridge University Press","source":"Google Books","title":"Purely Functional Data Structures","type":"book"},{"id":"ParadigmeProgrammation2023","abstract":"Le paradigme de programmation est la façon (parmi d'autres) d'approcher la programmation informatique et de formuler les solutions aux problèmes et leur formalisation dans un langage de programmation approprié. Ce n'est pas de la méthodologie contenant une méthode ; cette dernière organise le traitement des problèmes reconnus dans l'écosystème concerné pour aboutir à la solution conceptuelle et programme exécutable.","accessed":{"date-parts":[["2024",2,24]]},"citation-key":"ParadigmeProgrammation2023","container-title":"Wikipédia","issued":{"date-parts":[["2023",7,11]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 205915300","source":"Wikipedia","title":"Paradigme (programmation)","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Paradigme_(programmation)&oldid=205915300"},{"id":"perlisSpecialFeatureEpigrams1982","accessed":{"date-parts":[["2024",4,2]]},"author":[{"family":"Perlis","given":"Alan J."}],"citation-key":"perlisSpecialFeatureEpigrams1982","container-title":"ACM SIGPLAN Notices","container-title-short":"SIGPLAN Not.","DOI":"10.1145/947955.1083808","ISSN":"0362-1340","issue":"9","issued":{"date-parts":[["1982",9,1]]},"page":"7–13","source":"ACM Digital Library","title":"Special Feature: Epigrams on programming","title-short":"Special Feature","type":"article-journal","URL":"https://dl.acm.org/doi/10.1145/947955.1083808","volume":"17"},{"id":"ReactionOscillante2020","abstract":"Une réaction oscillante est un mélange complexe de composés chimiques dont la concentration d'un ou plusieurs composants présente des changements périodiques, jusqu'à épuisement de sa source d'énergie (généralement, un des réactifs). Dans les cas où l'un des réactifs a une couleur visible, la traversée d'un seuil de concentration peut conduire à un brusque changement de couleur.\nDes exemples de réactions oscillantes sont la réaction de Belooussov-Jabotinski, la réaction de Briggs-Rauscher, la réaction de Bray-Liebhafsky et la réaction oscillante de l'iode, ou, dans un genre un peu différent, la réaction du cœur battant de mercure. La concentration des produits et des réactifs chimiques d'une réaction oscillante peut être estimée en termes d'amortissement des oscillations.","accessed":{"date-parts":[["2024",5,17]]},"citation-key":"ReactionOscillante2020","container-title":"Wikipédia","issued":{"date-parts":[["2020",12,6]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 177361963","source":"Wikipedia","title":"Réaction oscillante","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=R%C3%A9action_oscillante&oldid=177361963"},{"id":"royProgrammingParadigmsDummies","author":[{"family":"Roy","given":"Peter Van"}],"citation-key":"royProgrammingParadigmsDummies","container-title":"Université Catholique de Louvain - UCLouvain","language":"en","source":"Zotero","title":"Programming Paradigms for Dummies: What Every Programmer Should Know","type":"article-journal"},{"id":"SalaireQualificationPersonnelle2024","abstract":"Le salaire à la qualification personnelle ou « salaire à vie » est une forme de rémunération dont le principe a principalement été théorisé par Bernard Friot et l'association d'éducation populaire Réseau Salariat. Il permet notamment de dissocier travail et emploi. Avec la cotisation sociale, il serait à la base d'un nouveau mode d’organisation socio-économique,,.","accessed":{"date-parts":[["2024",5,21]]},"citation-key":"SalaireQualificationPersonnelle2024","container-title":"Wikipédia","issued":{"date-parts":[["2024",1,31]]},"language":"fr","license":"Creative Commons Attribution-ShareAlike License","note":"Page Version ID: 212031190","source":"Wikipedia","title":"Salaire à la qualification personnelle","type":"entry-encyclopedia","URL":"https://fr.wikipedia.org/w/index.php?title=Salaire_%C3%A0_la_qualification_personnelle&oldid=212031190"},{"id":"strategicservicesSimpleSabotageField","author":[{"family":"Strategic Services","given":""}],"citation-key":"strategicservicesSimpleSabotageField","number-of-pages":"20","title":"Simple sabotage field manual","type":"book"},{"id":"StructuredProgrammingWikipedia","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"StructuredProgrammingWikipedia","title":"Structured programming - Wikipedia","type":"webpage","URL":"https://en.wikipedia.org/wiki/Structured_programming?oldformat=true"},{"id":"StructuresDonneesEnregistrements","accessed":{"date-parts":[["2024",3,28]]},"citation-key":"StructuresDonneesEnregistrements","language":"fr","title":"Structures de données/Enregistrements — Wikilivres","type":"webpage","URL":"https://fr.wikibooks.org/wiki/Structures_de_donn%C3%A9es/Enregistrements"},{"id":"toalProgrammingParadigms","accessed":{"date-parts":[["2024",3,29]]},"author":[{"family":"Toal","given":"Ray"}],"citation-key":"toalProgrammingParadigms","title":"Programming Paradigms","type":"webpage","URL":"https://cs.lmu.edu/~ray/notes/paradigms/"},{"id":"vanroyConceptsTechniquesModels2004","abstract":"This innovative text presents computer programming as a unified discipline in a way that is both practical and scientifically sound. The book focuses on techniques of lasting value and explains them precisely in terms of a simple abstract machine. The book presents all major programming paradigms in a uniform framework that shows their deep relationships and how and where to use them together. After an introduction to programming concepts, the book presents both well-known and lesser-known computation models (\"programming paradigms\"). Each model has its own set of techniques and each is included on the basis of its usefulness in practice. The general models include declarative programming, declarative concurrency, message-passing concurrency, explicit state, object-oriented programming, shared-state concurrency, and relational programming. Specialized models include graphical user interface programming, distributed programming, and constraint programming. Each model is based on its kernel language -- a simple core language that consists of a small number of programmer-significant elements. The kernel languages are introduced progressively, adding concepts one by one, thus showing the deep relationships between different models. The kernel languages are defined precisely in terms of a simple abstract machine. Because a wide variety of languages and programming paradigms can be modeled by a small set of closely related kernel languages, this approach allows programmer and student to grasp the underlying unity of programming. The book has many program fragments and exercises, all of which can be run on the Mozart Programming System, an Open Source software package that features an interactive incremental development environment.","author":[{"family":"Van Roy","given":"Peter"},{"family":"Haridi","given":"Seif"}],"citation-key":"vanroyConceptsTechniquesModels2004","edition":"1st","ISBN":"978-0-262-22069-9","issued":{"date-parts":[["2004",1]]},"number-of-pages":"936","publisher":"The MIT Press","source":"ACM Digital Library","title":"Concepts, Techniques, and Models of Computer Programming","type":"book"},{"id":"vanroyTaxonomiePrincipauxParadigmes","accessed":{"date-parts":[["2024",4,1]]},"author":[{"family":"Van Roy","given":"Peter"}],"citation-key":"vanroyTaxonomiePrincipauxParadigmes","title":"Une taxonomie des principaux paradigmes de programmation","type":"webpage","URL":"https://www.info.ucl.ac.be/~pvr/paradigmes.html"},{"id":"varoufakisConversationsEntreAdultes2017","abstract":"Pour la première fois, un ancien ministre dévoile les coulisses secrètes de l’Europe.\n\t\t\t\n\t\t\tC’était en janvier 2015 : à peine a-t-il été nommé ministre des Finances de la Grèce que Yanis Varoufakis déclenche une des batailles les plus spectaculaires et les plus controversées de l’histoire récente en cherchant à renégocier les rapports entre son pays et l’Union européenne. En dépit du soutien exceptionnel de la population grecque et de la logique imparable de ses arguments, il s’est heurté à un mur et a provoqué l’ire des élites politiques, financières et médiatiques de l’Europe.\n\t\t\tLa vérité de cet affrontement était inconnue jusqu’ici – justement parce que la direction de l’Union européenne se réunit à huis clos. Dans un récit personnel et explosif, Yanis Varoufakis, économiste d’envergure mondiale, explique comment les choses se passent très concrètement dans les couloirs de Bruxelles.\n\t\t\tIl révèle une histoire édifiante où se mêlent hypocrisie, trahisons, collusions d’intérêts et acrobaties politiques. Un récit qui ébranlera profondément l’establishment.\n\t\t\tAujourd’hui – comment en douter ? –, la répression tragique de la rébellion démocratique grecque est à l’image des politiques qui mènent à l’autoritarisme, au populisme et à l’instabilité qui menacent le monde occidental.\n\t\t\tConversations entre adultes est un vibrant appel à renouveler la démocratie européenne avant qu’il ne soit trop tard.\n\t\t\t\n\t\t\tYanis Varoufakis a été ministre des Finances du gouvernement Tsipras et a conduit les négociations sur la dette grecque jusqu’à sa démission au lendemain du référendum du 5 juillet 2015.\n\t\t\tNé à Athènes en 1961, il a enseigné en Grande-Bretagne, en Australie et aux États-Unis. Il est aujourd’hui le chef de file du mouvement DiEM25, qui promeut la relance de la démocratie en Europe et s’oppose au diktat de l’austérité.","author":[{"family":"Varoufakis","given":"Yanis"}],"citation-key":"varoufakisConversationsEntreAdultes2017","issued":{"date-parts":[["2017",9,29]]},"language":"fr","license":"Yanis Varoufakis, 2017.","note":"Item ID: _:n0","publisher":"Éditions Les Liens qui libèrent","title":"Conversations entre adultes","type":"book"},{"id":"WikiwandTuringcomplet2017","abstract":"En informatique et en logique, un système formel est dit complet au sens de Turing ou Turing-complet s’il possède un pouvoir expressif au moins équivalent à celui des machines de Turing. Dans un tel système, il est donc possible de programmer n'importe quelle machine de Turing.","accessed":{"date-parts":[["2024",4,1]]},"citation-key":"WikiwandTuringcomplet2017","container-title":"Wikiwand","issued":{"date-parts":[["2017",2,2]]},"title":"Wikiwand - Turing-complet","type":"webpage","URL":"https://www.wikiwand.com/fr/Turing-complet"},{"id":"willettParadigmeTheorieModele1996","abstract":"L’auteur traite des termes paradigme, théorie, modèle et schéma. Il tente de clarifier le plus possible ces termes en traitant de l’essentiel et en mettant l’accent sur ce qui permet de les différencier. Il rend compte de certaines difficultés provoquées par la polysémie de ces termes. Il termine en soulevant certaines questions à propos de la communicologie.","accessed":{"date-parts":[["2024",4,3]]},"author":[{"family":"Willett","given":"Gilles"}],"citation-key":"willettParadigmeTheorieModele1996","container-title":"Communication et organisation. Revue scientifique francophone en Communication organisationnelle","DOI":"10.4000/communicationorganisation.1873","ISSN":"1168-5549","issue":"10","issued":{"date-parts":[["1996",11,1]]},"language":"fr","license":"https://creativecommons.org/licenses/by-nc-nd/4.0/","number":"10","publisher":"Presses universitaires de Bordeaux","source":"journals.openedition.org","title":"Paradigme, théorie, modèle, schéma : qu’est-ce donc ?","title-short":"Paradigme, théorie, modèle, schéma","type":"article-journal","URL":"https://journals.openedition.org/communicationorganisation/1873"},{"id":"zotero-item-768","type":"book","citation-key":"zotero-item-768","collection-title":"Pléiade","language":"fr","publisher":"Gallimard","publisher-place":"Paris","title":"œuvres complètes","author":[{"family":"Spinoza","given":""}],"accessed":{"date-parts":[["2026",4,24]]},"issued":{"date-parts":[["2022"]]},"library":"My Library","citekey":"zotero-item-768"},{"id":"camerini-lettre12","type":"article-journal","citation-key":"camerini-lettre12","title":"La Lettre XII et ses cercles non-concentriques","author":[{"family":"Camerini","given":"Matteo"}],"accessed":{"date-parts":[["2026",4,24]]},"library":"My Library","citekey":"camerini-lettre12"},{"id":"ethique-rovere","type":"book","citation-key":"ethique-rovere","edition":"Maxime Rovere","ISBN":"978-2-08-151383-9","language":"fr","publisher":"Flammarion","publisher-place":"Paris","title":"Éthique","author":[{"family":"Spinoza","given":""}],"accessed":{"date-parts":[["2026",4,24]]},"issued":{"date-parts":[["2021",10,11]]},"original-date":{"date-parts":[["1677"]]},"library":"My Library","citekey":"ethique-rovere"},{"id":"barbarasSpinozaScienceMathematique2007","type":"book","abstract":"« Je considérerai les actions et les appétits humains comme s’il était question de lignes, de surfaces et de solides. » C’est une science de l’homme que construit Spinoza en ce début du XVIIe siècle. Une science nourrie des bouleversements dans les mathématiques, l’algèbre, la conception de l’infini. Écrite sur le modèle des Éléments d’Euclide, l’Éthique n’a rien d’artificiel. Sa forme coïncide, au contraire, avec la neuve radicalité d’une pensée qui donne au désir toute sa puissance. Cette ambitieuse lecture de la philosophie de Spinoza comme science du salut engendre un appétit renouvelé de savoir.","citation-key":"barbarasSpinozaScienceMathematique2007","collection-title":"CNRS Philosophie","ISBN":"978-2-271-14198-9","language":"fr","license":"https://www.openedition.org/12554","note":"container-title: Spinoza : La science mathématique du salut\ncontainer-title: Spinoza : La science mathématique du salut\ncontainer-title: Spinoza : La science mathématique du salut\ncollection-title: CNRS Philosophie","number-of-pages":"205","publisher":"CNRS Éditions","publisher-place":"Paris","source":"OpenEdition Books","title":"Spinoza : La science mathématique du salut","title-short":"Spinoza","URL":"https://books.openedition.org/editionscnrs/48687","author":[{"family":"Barbaras","given":"Françoise"}],"accessed":{"date-parts":[["2026",4,24]]},"issued":{"date-parts":[["2007"]]},"library":"My Library","citekey":"barbarasSpinozaScienceMathematique2007"}] \ No newline at end of file diff --git a/La lettre XII et ses cercles non-concentriques.md b/sources/0 - cours/LOGOS S2/le savoir en mathématiques/Fiche de lecture - La lettre XII et ses cercles non-concentriques.md similarity index 93% rename from La lettre XII et ses cercles non-concentriques.md rename to sources/0 - cours/LOGOS S2/le savoir en mathématiques/Fiche de lecture - La lettre XII et ses cercles non-concentriques.md index da3b6f7d..9fff8b1e 100644 --- a/La lettre XII et ses cercles non-concentriques.md +++ b/sources/0 - cours/LOGOS S2/le savoir en mathématiques/Fiche de lecture - La lettre XII et ses cercles non-concentriques.md @@ -19,7 +19,14 @@ author: - Point de vue historique - Conclusion -Dans cet article, Matteo Camerini nous propose d'étudier la *lettre sur l'infini* selon deux points de vue : d'abord "exégétique", en essayant — par le prisme des traductions française du passage des cercles non concentriques — de mieux cerner la conception de l'infini actuel selon Spinoza ; ensuite historique et philosophique, pour comprendre comment la position de Spinoza s'inspire mais se détache de celle de Descartes, mais aussi comment elle s'inscrit plus +L'article "La *Lettre XII* et ses cercles non-concentrique – Spinoza et l'infini actuel entre Descartes et Leibniz" présente une analyse philosophique et historique du texte de la *Lettre XII* de Spinoza. + +## Présentation de la *Lettre XII* + +La *Lettre XII* de Spinoza addressée à Lodewijk Meyer, un ami proche de Spinoza[^1]. La lettre précédente étant perdue, on ne peut que supposer les questions auxquelles elle réponds. Il est cependant probable que Spinoza y réponde à des questions de Meyer à propos des *Principia Philosophiae Cartesianae*[^2] + +Dans cet article, Matteo Camerini nous propose d'étudier la *lettre sur l'infini* selon deux points de vue : d'abord "exégétique", en essayant — par le prisme des traductions française du passage des cercles non concentriques — de mieux cerner la conception de l'infini actuel selon Spinoza ; ensuite historique et philosophique, pour comprendre comment la position de Spinoza s'inspire mais se détache de celle de Descartes, mais aussi comment elle s'inscrit dans l'histoire du concept d'infini actuel. + - #1 L'infini, un problème difficile et subtil - [ 1] présentation rapide du contenu de la lettre @@ -104,4 +111,11 @@ Dans cet article, Matteo Camerini nous propose d'étudier la *lettre sur l'infin - Leibniz: pas de portion minimale du continu qui ne possède en elle-même une infinité de *plis*, de différences supplémentaires. Comme pour Spinoza, chaque portion d'espace, aussi petite qu'elle soit, contient toujours une multitude d'ingalités, de différences, qui dépasse tout nombre. Pt de vue historique : transformation de la notion d'infini actuel au XVIIème : Descartes, Spinoza et Leibniz affirment une nouvelle perspective sur l'infini qui n'est plus "ce qui n'a pas de limites", mais qui peut se trouver même dans la plus petite partie de l'espace ou de la matière. -# Critique \ No newline at end of file +# Critique + +# Bibliographie + +[^1]: "Une grande amitié les lia, qui ne se démentit jamais". [@zotero-item-768] + + +[^2]: C'est ce qu'affirme Camerini [@camerini-lettre12, p] diff --git a/sources/0 - cours/LOGOS S2/le savoir en mathématiques/biblio.bib b/sources/0 - cours/LOGOS S2/le savoir en mathématiques/biblio.bib new file mode 100644 index 00000000..639e5a34 --- /dev/null +++ b/sources/0 - cours/LOGOS S2/le savoir en mathématiques/biblio.bib @@ -0,0 +1,40 @@ +@book{oeuvres-completes, + title = {{{\OE}uvres compl\`etes}}, + author = {Spinoza}, + year = 2022, + series = {{Pl\'eiade}}, + publisher = {Gallimard}, + address = {Paris}, + langid = {french} +} + + +@book{ethique-rovere, + title = {{\'Ethique}}, + author = {Spinoza}, + year = 2021, + month = nov, + edition = {Maxime Rovere}, + publisher = {Flammarion}, + address = {Paris}, + urldate = {2026-04-24}, + isbn = {978-2-08-151383-9}, + langid = {french} +} + +@book{barbarasSpinozaScienceMathematique2007, + title = {{Spinoza : La science math\'ematique du salut}}, + shorttitle = {{Spinoza}}, + author = {Barbaras, Fran{\c c}oise}, + year = 2007, + journal = {Spinoza : La science math\'ematique du salut}, + series = {{CNRS Philosophie}}, + publisher = {CNRS \'Editions}, + address = {Paris}, + urldate = {2026-04-24}, + copyright = {https://www.openedition.org/12554}, + isbn = {978-2-271-14198-9}, + langid = {french}, + keywords = {mathematique,salut,science,Spinoza} +} +