8 lines
131 KiB
JavaScript
8 lines
131 KiB
JavaScript
"use strict";var e=require("obsidian"),t=require("path"),n=require("@codemirror/view"),r=require("@codemirror/state"),i=require("@codemirror/language");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=o(t);function s(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{u(r.next(e))}catch(e){o(e)}}function s(e){try{u(r.throw(e))}catch(e){o(e)}}function u(e){e.done?i(e.value):function(e){return e instanceof n?e:new n((function(t){t(e)}))}(e.value).then(a,s)}u((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class u extends Map{constructor(e={}){if(super(),!(e.maxSize&&e.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");if("number"==typeof e.maxAge&&0===e.maxAge)throw new TypeError("`maxAge` must be a number greater than 0");this.maxSize=e.maxSize,this.maxAge=e.maxAge||Number.POSITIVE_INFINITY,this.onEviction=e.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_emitEvictions(e){if("function"==typeof this.onEviction)for(const[t,n]of e)this.onEviction(t,n.value)}_deleteIfExpired(e,t){return"number"==typeof t.expiry&&t.expiry<=Date.now()&&("function"==typeof this.onEviction&&this.onEviction(e,t.value),this.delete(e))}_getOrDeleteIfExpired(e,t){if(!1===this._deleteIfExpired(e,t))return t.value}_getItemValue(e,t){return t.expiry?this._getOrDeleteIfExpired(e,t):t.value}_peek(e,t){const n=t.get(e);return this._getItemValue(e,n)}_set(e,t){this.cache.set(e,t),this._size++,this._size>=this.maxSize&&(this._size=0,this._emitEvictions(this.oldCache),this.oldCache=this.cache,this.cache=new Map)}_moveToRecent(e,t){this.oldCache.delete(e),this._set(e,t)}*_entriesAscending(){for(const e of this.oldCache){const[t,n]=e;if(!this.cache.has(t)){!1===this._deleteIfExpired(t,n)&&(yield e)}}for(const e of this.cache){const[t,n]=e;!1===this._deleteIfExpired(t,n)&&(yield e)}}get(e){if(this.cache.has(e)){const t=this.cache.get(e);return this._getItemValue(e,t)}if(this.oldCache.has(e)){const t=this.oldCache.get(e);if(!1===this._deleteIfExpired(e,t))return this._moveToRecent(e,t),t.value}}set(e,t,{maxAge:n=this.maxAge}={}){const r="number"==typeof n&&n!==Number.POSITIVE_INFINITY?Date.now()+n:void 0;return this.cache.has(e)?this.cache.set(e,{value:t,expiry:r}):this._set(e,{value:t,expiry:r}),this}has(e){return this.cache.has(e)?!this._deleteIfExpired(e,this.cache.get(e)):!!this.oldCache.has(e)&&!this._deleteIfExpired(e,this.oldCache.get(e))}peek(e){return this.cache.has(e)?this._peek(e,this.cache):this.oldCache.has(e)?this._peek(e,this.oldCache):void 0}delete(e){const t=this.cache.delete(e);return t&&this._size--,this.oldCache.delete(e)||t}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}resize(e){if(!(e&&e>0))throw new TypeError("`maxSize` must be a number greater than 0");const t=[...this._entriesAscending()],n=t.length-e;n<0?(this.cache=new Map(t),this.oldCache=new Map,this._size=t.length):(n>0&&this._emitEvictions(t.slice(0,n)),this.oldCache=new Map(t.slice(n)),this.cache=new Map,this._size=0),this.maxSize=e}*keys(){for(const[e]of this)yield e}*values(){for(const[,e]of this)yield e}*[Symbol.iterator](){for(const e of this.cache){const[t,n]=e;!1===this._deleteIfExpired(t,n)&&(yield[t,n.value])}for(const e of this.oldCache){const[t,n]=e;if(!this.cache.has(t)){!1===this._deleteIfExpired(t,n)&&(yield[t,n.value])}}}*entriesDescending(){let e=[...this.cache];for(let t=e.length-1;t>=0;--t){const n=e[t],[r,i]=n;!1===this._deleteIfExpired(r,i)&&(yield[r,i.value])}e=[...this.oldCache];for(let t=e.length-1;t>=0;--t){const n=e[t],[r,i]=n;if(!this.cache.has(r)){!1===this._deleteIfExpired(r,i)&&(yield[r,i.value])}}}*entriesAscending(){for(const[e,t]of this._entriesAscending())yield[e,t.value]}get size(){if(!this._size)return this.oldCache.size;let e=0;for(const t of this.oldCache.keys())this.cache.has(t)||e++;return Math.min(this._size+e,this.maxSize)}entries(){return this.entriesAscending()}forEach(e,t=this){for(const[n,r]of this.entriesAscending())e.call(t,r,n,this)}get[Symbol.toStringTag](){return JSON.stringify([...this.entriesAscending()])}}function c(e){var t={exports:{}};return e(t,t.exports),t.exports}var l=c((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.defaults=t.composeannotation=t.collecttextnodes=t.build=void 0;const n={children:e=>e.children,annotatetextnode:(e,t)=>"text"===e.type?{offset:{end:e.position.end.offset,start:e.position.start.offset},text:t.substring(e.position.start.offset,e.position.end.offset)}:null,interpretmarkup:(e="")=>e};function r(e,t,r=n){const i=[];return function e(n){const o=r.annotatetextnode(n,t);null!==o&&i.push(o);const a=r.children(n);null!==a&&Array.isArray(a)&&a.forEach(e)}(e),i}function i(e,t,r=n){const i=[];let o={offset:{end:0,start:0}};for(const n of t){const t=e.substring(o.offset.end,n.offset.start);i.push({interpretAs:r.interpretmarkup(t),markup:t,offset:{end:n.offset.start,start:o.offset.end}}),i.push(n),o=n}const a=e.substring(o.offset.end,e.length);return i.push({interpretAs:r.interpretmarkup(a),markup:a,offset:{end:e.length,start:o.offset.end}}),{annotation:i}}t.defaults=n,t.collecttextnodes=r,t.composeannotation=i,t.build=function(e,t,o=n){return i(e,r(t(e),e,o),o)}})),f=c((function(e){!function(){var t;function n(e){for(var t,n,r,i,o=1,a=[].slice.call(arguments),s=0,u=e.length,c="",l=!1,f=!1,d=function(){return a[o++]},h=function(){for(var n="";/\d/.test(e[s]);)n+=e[s++],t=e[s];return n.length>0?parseInt(n):null};s<u;++s)if(t=e[s],l)switch(l=!1,"."==t?(f=!1,t=e[++s]):"0"==t&&"."==e[s+1]?(f=!0,t=e[s+=2]):f=!0,i=h(),t){case"b":c+=parseInt(d(),10).toString(2);break;case"c":c+="string"==typeof(n=d())||n instanceof String?n:String.fromCharCode(parseInt(n,10));break;case"d":c+=parseInt(d(),10);break;case"f":r=String(parseFloat(d()).toFixed(i||6)),c+=f?r:r.replace(/^0/,"");break;case"j":c+=JSON.stringify(d());break;case"o":c+="0"+parseInt(d(),10).toString(8);break;case"s":c+=d();break;case"x":c+="0x"+parseInt(d(),10).toString(16);break;case"X":c+="0x"+parseInt(d(),10).toString(16).toUpperCase();break;default:c+=t}else"%"===t?l=!0:c+=t;return c}(t=e.exports=n).format=n,t.vsprintf=function(e,t){return n.apply(null,[e].concat(t))},"undefined"!=typeof console&&"function"==typeof console.log&&(t.printf=function(){console.log(n.apply(null,arguments))})}()})),d=p(Error),h=d;function p(e){return t.displayName=e.displayName||e.name,t;function t(t){return t&&(t=f.apply(null,arguments)),new e(t)}}d.eval=p(EvalError),d.range=p(RangeError),d.reference=p(ReferenceError),d.syntax=p(SyntaxError),d.type=p(TypeError),d.uri=p(URIError),d.create=p;var g=function(e){var t,n=e||"yaml",r=[],i=-1;"string"!=typeof n&&"length"in n||(n=[n]);t=n.length;for(;++i<t;)r[i]=y(n[i]);return r},m={}.hasOwnProperty,v={yaml:"-",toml:"+"};function y(e){var t=e;if("string"==typeof t){if(!m.call(v,t))throw h("Missing matter definition for `%s`",t);t={type:t,marker:v[t]}}else if("object"!=typeof t)throw h("Expected matter to be an object, not `%j`",t);if(!m.call(t,"type"))throw h("Missing `type` in matter `%j`",t);if(!m.call(t,"fence")&&!m.call(t,"marker"))throw h("Missing `marker` or `fence` in matter `%j`",t);return t}var k=function(e){var t,n,r=g(e),i=r.length,o=-1,a={};for(;++o<i;)(n=b(t=r[o],"open").charCodeAt(0))in a?a[n].push(x(t)):a[n]=[x(t)];return{flow:a}};function x(e){var t,n=e.type,r=e.anywhere,i=n+"Value",o=n+"Fence",a=o+"Sequence",s={tokenize:function(e,n,r){var i=0;return function(n){if(n===t.charCodeAt(i))return e.enter(o),e.enter(a),s(n);return r(n)};function s(n){return i===t.length?(e.exit(a),-2===n||-1===n||32===n?(e.enter("whitespace"),u(n)):c(n)):n===t.charCodeAt(i)?(e.consume(n),i++,s):r(n)}function u(t){return-2===t||-1===t||32===t?(e.consume(t),u):(e.exit("whitespace"),c(t))}function c(t){return-5===t||-4===t||-3===t||null===t?(e.exit(o),n(t)):r(t)}},partial:!0};return{tokenize:function(o,a,u){var c=this;return function(i){var a=c.now();if(1!==a.column||!r&&1!==a.line)return u(i);return o.enter(n),t=b(e,"open"),o.attempt(s,l,u)(i)};function l(n){return t=b(e,"close"),h(n)}function f(e){return-5===e||-4===e||-3===e||null===e?h(e):(o.enter(i),d(e))}function d(e){return-5===e||-4===e||-3===e||null===e?(o.exit(i),h(e)):(o.consume(e),d)}function h(e){return null===e?u(e):(o.enter("lineEnding"),o.consume(e),o.exit("lineEnding"),o.attempt(s,p,f))}function p(e){return o.exit(n),a(e)}},concrete:!0}}function b(e,t){var n;return e.marker?(n=w(e.marker,t))+n+n:w(e.fence,t)}function w(e,t){return"string"==typeof e?e:e[t]}var E=k,S=function(e){var t,n=g(e),r=n.length,i=-1,o={},a={};for(;++i<r;)o[(t=n[i]).type]=C(t),a[t.type]=A,a[t.type+"Value"]=D;return{enter:o,exit:a}};function C(e){return function(t){this.enter({type:e.type,value:""},t),this.buffer()}}function A(e){var t=this.resume();this.exit(e).value=t.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,"")}function D(e){this.config.enter.data.call(this,e),this.config.exit.data.call(this,e)}var T=function(e){var t,n=[],r={},i=g(e),o=i.length,a=-1;for(;++a<o;)r[(t=i[a]).type]=q(t),n.push({atBreak:!0,character:L(t,"open").charAt(0)});return{unsafe:n,handlers:r}};function q(e){var t=L(e,"open"),n=L(e,"close");return function(e){return t+(e.value?"\n"+e.value:"")+"\n"+n}}function L(e,t){var n;return e.marker?(n=F(e.marker,t))+n+n:F(e.fence,t)}function F(e,t){return"string"==typeof e?e:e[t]}var I=function(e){var t=this.data();function n(e,n){t[e]?t[e].push(n):t[e]=[n]}n("micromarkExtensions",E(e)),n("fromMarkdownExtensions",S(e)),n("toMarkdownExtensions",T(e))};var P=R;function R(e){return e&&(e.value||e.alt||e.title||"children"in e&&V(e.children)||"length"in e&&V(e))||""}function V(e){for(var t=[],n=-1;++n<e.length;)t[n]=R(e[n]);return t.join("")}var O=Object.assign,B={}.hasOwnProperty;var z=function(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()},M=String.fromCharCode;var _=function(e,t){var n=parseInt(e,t);return n<9||11===n||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||65535==(65535&n)||65534==(65535&n)||n>1114111?"<22>":M(n)};var N=function(e){return e<-2};var U=function(e){return-2===e||-1===e||32===e};var j=function(e,t,n,r){var i=r?r-1:1/0,o=0;return function(r){if(U(r))return e.enter(n),a(r);return t(r)};function a(r){return U(r)&&o++<i?(e.consume(r),a):(e.exit(n),t(r))}},H=function(e){var t,n=e.attempt(this.parser.constructs.contentInitial,(function(t){if(null===t)return void e.consume(t);return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),j(e,n,"linePrefix")}),(function(t){return e.enter("paragraph"),r(t)}));return n;function r(n){var r=e.enter("chunkText",{contentType:"text",previous:t});return t&&(t.next=r),t=r,i(n)}function i(t){return null===t?(e.exit("chunkText"),e.exit("paragraph"),void e.consume(t)):N(t)?(e.consume(t),e.exit("chunkText"),r):(e.consume(t),i)}};var G=H,$=Object.defineProperty({tokenize:G},"__esModule",{value:!0});var W={tokenize:function(e,t,n){return j(e,(function(e){return null===e||N(e)?t(e):n(e)}),"linePrefix")},partial:!0},Q=function(e){var t,n,r,i=this,o=[],a=0,s={tokenize:function(e,r){var a=0;return t={},s;function s(r){return a<o.length?(i.containerState=o[a][1],e.attempt(o[a][0].continuation,u,c)(r)):n.currentConstruct&&n.currentConstruct.concrete?(t.flowContinue=!0,d(r)):(i.interrupt=n.currentConstruct&&n.currentConstruct.interruptible,i.containerState={},e.attempt(Y,f,d)(r))}function u(e){return a++,i.containerState._closeFlow?f(e):s(e)}function c(t){return n.currentConstruct&&n.currentConstruct.lazy?(i.containerState={},e.attempt(Y,f,e.attempt(J,f,e.check(W,f,l)))(t)):f(t)}function l(e){return a=o.length,t.lazy=!0,t.flowContinue=!0,d(e)}function f(e){return t.flowEnd=!0,d(e)}function d(e){return t.continued=a,i.interrupt=i.containerState=void 0,r(e)}},partial:!0};return u;function u(t){return a<o.length?(i.containerState=o[a][1],e.attempt(o[a][0].continuation,c,l)(t)):l(t)}function c(e){return a++,u(e)}function l(r){return t&&t.flowContinue?d(r):(i.interrupt=n&&n.currentConstruct&&n.currentConstruct.interruptible,i.containerState={},e.attempt(Y,f,d)(r))}function f(e){return o.push([i.currentConstruct,i.containerState]),i.containerState=void 0,l(e)}function d(t){return null===t?(m(0,!0),void e.consume(t)):(n=n||i.parser.flow(i.now()),e.enter("chunkFlow",{contentType:"flow",previous:r,_tokenizer:n}),h(t))}function h(t){return null===t?(g(e.exit("chunkFlow")),d(t)):N(t)?(e.consume(t),g(e.exit("chunkFlow")),e.check(s,p)):(e.consume(t),h)}function p(e){return m(t.continued,t&&t.flowEnd),a=0,u(e)}function g(e){r&&(r.next=e),r=e,n.lazy=t&&t.lazy,n.defineSkip(e.start),n.write(i.sliceStream(e))}function m(t,a){var s=o.length;for(n&&a&&(n.write([null]),r=n=void 0);s-- >t;)i.containerState=o[s][1],o[s][0].exit.call(i,e);o.length=t}},Y={tokenize:function(e,t,n){return j(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.indexOf("codeIndented")>-1?void 0:4)}},J={tokenize:function(e,t,n){return j(e,e.lazy(this.parser.constructs.flow,t,n),"linePrefix",this.parser.constructs.disable.null.indexOf("codeIndented")>-1?void 0:4)}};var Z=Q,K=Object.defineProperty({tokenize:Z},"__esModule",{value:!0});var X=function(e){for(var t=-1,n=0;++t<e.length;)n+="string"==typeof e[t]?e[t].length:1;return n};var ee=function(e,t){var n=e[e.length-1];return n&&n[1].type===t?X(n[2].sliceStream(n[1])):0},te=[].splice;var ne=function(e,t,n,r){var i,o=e.length,a=0;if(t=t<0?-t>o?0:o+t:t>o?o:t,n=n>0?n:0,r.length<1e4)(i=Array.from(r)).unshift(t,n),te.apply(e,i);else for(n&&te.apply(e,[t,n]);a<r.length;)(i=r.slice(a,a+1e4)).unshift(t,0),te.apply(e,i),a+=1e4,t+=1e4};var re=function(e){return O({},e)};function ie(e,t){for(var n,r,i,o,a,s,u=e[t][1],c=e[t][2],l=t-1,f=[],d=u._tokenizer||c.parser[u.contentType](u.start),h=d.events,p=[],g={};u;){for(;e[++l][1]!==u;);f.push(l),u._tokenizer||(n=c.sliceStream(u),u.next||n.push(null),r&&d.defineSkip(u.start),u.isInFirstContentOfListItem&&(d._gfmTasklistFirstContentOfListItem=!0),d.write(n),u.isInFirstContentOfListItem&&(d._gfmTasklistFirstContentOfListItem=void 0)),r=u,u=u.next}for(u=r,i=h.length;i--;)"enter"===h[i][0]?o=!0:o&&h[i][1].type===h[i-1][1].type&&h[i][1].start.line!==h[i][1].end.line&&(m(h.slice(i+1,a)),u._tokenizer=u.next=void 0,u=u.previous,a=i+1);for(d.events=u._tokenizer=u.next=void 0,m(h.slice(0,a)),i=-1,s=0;++i<p.length;)g[s+p[i][0]]=s+p[i][1],s+=p[i][1]-p[i][0]-1;return g;function m(t){var n=f.pop();p.unshift([n,n+t.length-1]),ne(e,n,2,t)}}var oe=function(e){for(var t,n,r,i,o,a,s,u={},c=-1;++c<e.length;){for(;c in u;)c=u[c];if(t=e[c],c&&"chunkFlow"===t[1].type&&"listItemPrefix"===e[c-1][1].type&&((r=0)<(a=t[1]._tokenizer.events).length&&"lineEndingBlank"===a[r][1].type&&(r+=2),r<a.length&&"content"===a[r][1].type))for(;++r<a.length&&"content"!==a[r][1].type;)"chunkText"===a[r][1].type&&(a[r][1].isInFirstContentOfListItem=!0,r++);if("enter"===t[0])t[1].contentType&&(O(u,ie(e,c)),c=u[c],s=!0);else if(t[1]._container||t[1]._movePreviousLineEndings){for(r=c,n=void 0;r--&&("lineEnding"===(i=e[r])[1].type||"lineEndingBlank"===i[1].type);)"enter"===i[0]&&(n&&(e[n][1].type="lineEndingBlank"),i[1].type="lineEnding",n=r);n&&(t[1].end=re(e[n][1].start),(o=e.slice(n,c)).unshift(t),ne(e,n,c-n+1,o))}}return!s},ae={tokenize:function(e,t){var n;return function(t){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),r(t)};function r(t){return null===t?i(t):N(t)?e.check(se,o,i)(t):(e.consume(t),r)}function i(n){return e.exit("chunkContent"),e.exit("content"),t(n)}function o(t){return e.consume(t),e.exit("chunkContent"),n=n.next=e.enter("chunkContent",{contentType:"content",previous:n}),r}},resolve:function(e){return oe(e),e},interruptible:!0,lazy:!0},se={tokenize:function(e,t,n){var r=this;return function(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),j(e,i,"linePrefix")};function i(i){return null===i||N(i)?n(i):r.parser.constructs.disable.null.indexOf("codeIndented")>-1||ee(r.events,"linePrefix")<4?e.interrupt(r.parser.constructs.flow,n,t)(i):t(i)}},partial:!0};var ue=ae;var ce=function(e){var t=this,n=e.attempt(W,(function(r){if(null===r)return void e.consume(r);return e.enter("lineEndingBlank"),e.consume(r),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}),e.attempt(this.parser.constructs.flowInitial,r,j(e,e.attempt(this.parser.constructs.flow,r,e.attempt(ue,r)),"linePrefix")));return n;function r(r){if(null!==r)return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),t.currentConstruct=void 0,n;e.consume(r)}},le=Object.defineProperty({tokenize:ce},"__esModule",{value:!0}),fe=he("text"),de=he("string");function he(e){return{tokenize:function(t){var n=this,r=this.parser.constructs[e],i=t.attempt(r,o,a);return o;function o(e){return u(e)?i(e):a(e)}function a(e){if(null!==e)return t.enter("data"),t.consume(e),s;t.consume(e)}function s(e){return u(e)?(t.exit("data"),i(e)):(t.consume(e),s)}function u(e){var t=r[e],i=-1;if(null===e)return!0;if(t)for(;++i<t.length;)if(!t[i].previous||t[i].previous.call(n,n.previous))return!0}},resolveAll:pe("text"===e?ge:void 0)}}function pe(e){return function(t,n){var r,i=-1;for(;++i<=t.length;)void 0===r?t[i]&&"data"===t[i][1].type&&(r=i,i++):t[i]&&"data"===t[i][1].type||(i!==r+2&&(t[r][1].end=t[i-1][1].end,t.splice(r+2,i-r-2),i=r+2),r=void 0);return e?e(t,n):t}}function ge(e,t){for(var n,r,i,o,a,s,u,c,l=-1;++l<=e.length;)if((l===e.length||"lineEnding"===e[l][1].type)&&"data"===e[l-1][1].type){for(r=e[l-1][1],o=(n=t.sliceStream(r)).length,a=-1,s=0,u=void 0;o--;)if("string"==typeof(i=n[o])){for(a=i.length;32===i.charCodeAt(a-1);)s++,a--;if(a)break;a=-1}else if(-2===i)u=!0,s++;else if(-1!==i){o++;break}s&&(c={type:l===e.length||u||s<2?"lineSuffix":"hardBreakTrailing",start:{line:r.end.line,column:r.end.column-s,offset:r.end.offset-s,_index:r.start._index+o,_bufferIndex:o?a:r.start._bufferIndex+a},end:re(r.end)},r.end=re(c.start),r.start.offset===r.end.offset?O(r,c):(e.splice(l,0,["enter",c,t],["exit",c,t]),l+=2)),l++}return e}var me={resolveAll:pe()},ve=de,ye=fe,ke=Object.defineProperty({resolver:me,string:ve,text:ye},"__esModule",{value:!0});var xe=function(e){return null==e?[]:"length"in e?e:[e]};function be(e,t){var n,r,i,o;for(n in t)for(o in r=B.call(e,n)?e[n]:e[n]={},i=t[n])r[o]=we(xe(i[o]),B.call(r,o)?r[o]:[])}function we(e,t){for(var n=-1,r=[];++n<e.length;)("after"===e[n].add?t:r).push(e[n]);return ne(t,0,0,r),t}var Ee=function(e){for(var t={},n=-1;++n<e.length;)be(t,e[n]);return t};var Se=function(e,t){return e.length?(ne(e,e.length,0,t),e):t};var Ce=function(e,t,n){for(var r,i=[],o=-1;++o<e.length;)(r=e[o].resolveAll)&&i.indexOf(r)<0&&(t=r(t,n),i.push(r));return t};var Ae=function(e){for(var t,n,r,i=-1,o=[];++i<e.length;){if("string"==typeof(t=e[i]))n=t;else if(-5===t)n="\r";else if(-4===t)n="\n";else if(-3===t)n="\r\n";else if(-2===t)n="\t";else if(-1===t){if(r)continue;n=" "}else n=M(t);r=-2===t,o.push(n)}return o.join("")};var De=function(e,t){var n,r=t.start._index,i=t.start._bufferIndex,o=t.end._index,a=t.end._bufferIndex;return r===o?n=[e[r].slice(i,a)]:(n=e.slice(r,o),i>-1&&(n[0]=n[0].slice(i)),a>0&&n.push(e[o].slice(0,a))),n};var Te=function(e,t,n){var r=n?re(n):{line:1,column:1,offset:0},i={},o=[],a=[],s=[],u={consume:function(e){N(e)?(r.line++,r.column=1,r.offset+=-3===e?2:1,y()):-1!==e&&(r.column++,r.offset++);r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===a[r._index].length&&(r._bufferIndex=-1,r._index++));c.previous=e},enter:function(e,t){var n=t||{};return n.type=e,n.start=d(),c.events.push(["enter",n,c]),s.push(n),n},exit:function(e){var t=s.pop();return t.end=d(),c.events.push(["exit",t,c]),t},attempt:m((function(e,t){v(e,t.from)})),check:m(g),interrupt:m(g,{interrupt:!0}),lazy:m(g,{lazy:!0})},c={previous:null,events:[],parser:e,sliceStream:f,sliceSerialize:function(e){return Ae(f(e))},now:d,defineSkip:function(e){i[e.line]=e.column,y()},write:function(e){if(a=Se(a,e),h(),null!==a[a.length-1])return[];return v(t,0),c.events=Ce(o,c.events,c),c.events}},l=t.tokenize.call(c,u);return t.resolveAll&&o.push(t),r._index=0,r._bufferIndex=-1,c;function f(e){return De(a,e)}function d(){return re(r)}function h(){for(var e,t;r._index<a.length;)if("string"==typeof(t=a[r._index]))for(e=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===e&&r._bufferIndex<t.length;)p(t.charCodeAt(r._bufferIndex));else p(t)}function p(e){l=l(e)}function g(e,t){t.restore()}function m(e,t){return function(n,i,o){var a,l,f,h;return n.tokenize||"length"in n?p(xe(n)):function(e){if(e in n||null in n)return p(n.null?xe(n[e]).concat(xe(n.null)):n[e])(e);return o(e)};function p(e){return a=e,g(e[l=0])}function g(e){return function(n){h=function(){var e=d(),t=c.previous,n=c.currentConstruct,i=c.events.length,o=Array.from(s);return{restore:a,from:i};function a(){r=e,c.previous=t,c.currentConstruct=n,c.events.length=i,s=o,y()}}(),f=e,e.partial||(c.currentConstruct=e);if(e.name&&c.parser.constructs.disable.null.indexOf(e.name)>-1)return v();return e.tokenize.call(t?O({},c,t):c,u,m,v)(n)}}function m(t){return e(f,h),i}function v(e){return h.restore(),++l<a.length?g(a[l]):o}}}function v(e,t){e.resolveAll&&o.indexOf(e)<0&&o.push(e),e.resolve&&ne(c.events,t,c.events.length-t,e.resolve(c.events.slice(t),c)),e.resolveTo&&(c.events=e.resolveTo(c.events,c))}function y(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}};var qe=function(e){return e<0||32===e};var Le=function(e){return function(t){return e.test(M(t))}},Fe=Le(/[!-\/:-@\[-`\{-~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/),Ie=Le(/\s/);var Pe=function(e){return null===e||qe(e)||Ie(e)?1:Fe(e)?2:void 0};var Re=function(e,t){return e.column+=t,e.offset+=t,e._bufferIndex+=t,e},Ve={name:"attention",tokenize:function(e,t){var n,r=Pe(this.previous);return function(t){return e.enter("attentionSequence"),n=t,i(t)};function i(o){var a,s,u,c;return o===n?(e.consume(o),i):(a=e.exit("attentionSequence"),u=!(s=Pe(o))||2===s&&r,c=!r||2===r&&s,a._open=42===n?u:u&&(r||!c),a._close=42===n?c:c&&(s||!u),t(o))}},resolveAll:function(e,t){var n,r,i,o,a,s,u,c,l=-1;for(;++l<e.length;)if("enter"===e[l][0]&&"attentionSequence"===e[l][1].type&&e[l][1]._close)for(n=l;n--;)if("exit"===e[n][0]&&"attentionSequence"===e[n][1].type&&e[n][1]._open&&t.sliceSerialize(e[n][1]).charCodeAt(0)===t.sliceSerialize(e[l][1]).charCodeAt(0)){if((e[n][1]._close||e[l][1]._open)&&(e[l][1].end.offset-e[l][1].start.offset)%3&&!((e[n][1].end.offset-e[n][1].start.offset+e[l][1].end.offset-e[l][1].start.offset)%3))continue;o={type:(s=e[n][1].end.offset-e[n][1].start.offset>1&&e[l][1].end.offset-e[l][1].start.offset>1?2:1)>1?"strongSequence":"emphasisSequence",start:Re(re(e[n][1].end),-s),end:re(e[n][1].end)},a={type:s>1?"strongSequence":"emphasisSequence",start:re(e[l][1].start),end:Re(re(e[l][1].start),s)},i={type:s>1?"strongText":"emphasisText",start:re(e[n][1].end),end:re(e[l][1].start)},r={type:s>1?"strong":"emphasis",start:re(o.start),end:re(a.end)},e[n][1].end=re(o.start),e[l][1].start=re(a.end),u=[],e[n][1].end.offset-e[n][1].start.offset&&(u=Se(u,[["enter",e[n][1],t],["exit",e[n][1],t]])),u=Se(u,[["enter",r,t],["enter",o,t],["exit",o,t],["enter",i,t]]),u=Se(u,Ce(t.parser.constructs.insideSpan.null,e.slice(n+1,l),t)),u=Se(u,[["exit",i,t],["enter",a,t],["exit",a,t],["exit",r,t]]),e[l][1].end.offset-e[l][1].start.offset?(c=2,u=Se(u,[["enter",e[l][1],t],["exit",e[l][1],t]])):c=0,ne(e,n-1,l-n+3,u),l=n+u.length-c-2;break}l=-1;for(;++l<e.length;)"attentionSequence"===e[l][1].type&&(e[l][1].type="data");return e}};var Oe=Ve,Be=Le(/[A-Za-z]/),ze=Le(/[\dA-Za-z]/),Me=Le(/[#-'*+\--9=?A-Z^-~]/);var _e=function(e){return e<32||127===e};var Ne={name:"autolink",tokenize:function(e,t,n){var r=1;return function(t){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(t),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),i};function i(t){return Be(t)?(e.consume(t),o):Me(t)?u(t):n(t)}function o(e){return 43===e||45===e||46===e||ze(e)?a(e):u(e)}function a(t){return 58===t?(e.consume(t),s):(43===t||45===t||46===t||ze(t))&&r++<32?(e.consume(t),a):u(t)}function s(t){return 62===t?(e.exit("autolinkProtocol"),d(t)):32===t||60===t||_e(t)?n(t):(e.consume(t),s)}function u(t){return 64===t?(e.consume(t),r=0,c):Me(t)?(e.consume(t),u):n(t)}function c(e){return ze(e)?l(e):n(e)}function l(t){return 46===t?(e.consume(t),r=0,c):62===t?(e.exit("autolinkProtocol").type="autolinkEmail",d(t)):f(t)}function f(t){return(45===t||ze(t))&&r++<63?(e.consume(t),45===t?f:l):n(t)}function d(n){return e.enter("autolinkMarker"),e.consume(n),e.exit("autolinkMarker"),e.exit("autolink"),t}}},Ue={name:"blockQuote",tokenize:function(e,t,n){var r=this;return function(t){if(62===t)return r.containerState.open||(e.enter("blockQuote",{_container:!0}),r.containerState.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(t),e.exit("blockQuoteMarker"),i;return n(t)};function i(n){return U(n)?(e.enter("blockQuotePrefixWhitespace"),e.consume(n),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(n))}},continuation:{tokenize:function(e,t,n){return j(e,e.attempt(Ue,t,n),"linePrefix",this.parser.constructs.disable.null.indexOf("codeIndented")>-1?void 0:4)}},exit:function(e){e.exit("blockQuote")}};var je=Ue,He=Le(/[!-/:-@[-`{-~]/);var Ge={name:"characterEscape",tokenize:function(e,t,n){return function(t){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(t),e.exit("escapeMarker"),r};function r(r){return He(r)?(e.enter("characterEscapeValue"),e.consume(r),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(r)}}},$e={AEli:"Æ",AElig:"Æ",AM:"&",AMP:"&",Aacut:"Á",Aacute:"Á",Abreve:"Ă",Acir:"Â",Acirc:"Â",Acy:"А",Afr:"𝔄",Agrav:"À",Agrave:"À",Alpha:"Α",Amacr:"Ā",And:"⩓",Aogon:"Ą",Aopf:"𝔸",ApplyFunction:"",Arin:"Å",Aring:"Å",Ascr:"𝒜",Assign:"≔",Atild:"Ã",Atilde:"Ã",Aum:"Ä",Auml:"Ä",Backslash:"∖",Barv:"⫧",Barwed:"⌆",Bcy:"Б",Because:"∵",Bernoullis:"ℬ",Beta:"Β",Bfr:"𝔅",Bopf:"𝔹",Breve:"˘",Bscr:"ℬ",Bumpeq:"≎",CHcy:"Ч",COP:"©",COPY:"©",Cacute:"Ć",Cap:"⋒",CapitalDifferentialD:"ⅅ",Cayleys:"ℭ",Ccaron:"Č",Ccedi:"Ç",Ccedil:"Ç",Ccirc:"Ĉ",Cconint:"∰",Cdot:"Ċ",Cedilla:"¸",CenterDot:"·",Cfr:"ℭ",Chi:"Χ",CircleDot:"⊙",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",Colon:"∷",Colone:"⩴",Congruent:"≡",Conint:"∯",ContourIntegral:"∮",Copf:"ℂ",Coproduct:"∐",CounterClockwiseContourIntegral:"∳",Cross:"⨯",Cscr:"𝒞",Cup:"⋓",CupCap:"≍",DD:"ⅅ",DDotrahd:"⤑",DJcy:"Ђ",DScy:"Ѕ",DZcy:"Џ",Dagger:"‡",Darr:"↡",Dashv:"⫤",Dcaron:"Ď",Dcy:"Д",Del:"∇",Delta:"Δ",Dfr:"𝔇",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",Diamond:"⋄",DifferentialD:"ⅆ",Dopf:"𝔻",Dot:"¨",DotDot:"⃜",DotEqual:"≐",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",Downarrow:"⇓",Dscr:"𝒟",Dstrok:"Đ",ENG:"Ŋ",ET:"Ð",ETH:"Ð",Eacut:"É",Eacute:"É",Ecaron:"Ě",Ecir:"Ê",Ecirc:"Ê",Ecy:"Э",Edot:"Ė",Efr:"𝔈",Egrav:"È",Egrave:"È",Element:"∈",Emacr:"Ē",EmptySmallSquare:"◻",EmptyVerySmallSquare:"▫",Eogon:"Ę",Eopf:"𝔼",Epsilon:"Ε",Equal:"⩵",EqualTilde:"≂",Equilibrium:"⇌",Escr:"ℰ",Esim:"⩳",Eta:"Η",Eum:"Ë",Euml:"Ë",Exists:"∃",ExponentialE:"ⅇ",Fcy:"Ф",Ffr:"𝔉",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",Fopf:"𝔽",ForAll:"∀",Fouriertrf:"ℱ",Fscr:"ℱ",GJcy:"Ѓ",G:">",GT:">",Gamma:"Γ",Gammad:"Ϝ",Gbreve:"Ğ",Gcedil:"Ģ",Gcirc:"Ĝ",Gcy:"Г",Gdot:"Ġ",Gfr:"𝔊",Gg:"⋙",Gopf:"𝔾",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",Gt:"≫",HARDcy:"Ъ",Hacek:"ˇ",Hat:"^",Hcirc:"Ĥ",Hfr:"ℌ",HilbertSpace:"ℋ",Hopf:"ℍ",HorizontalLine:"─",Hscr:"ℋ",Hstrok:"Ħ",HumpDownHump:"≎",HumpEqual:"≏",IEcy:"Е",IJlig:"IJ",IOcy:"Ё",Iacut:"Í",Iacute:"Í",Icir:"Î",Icirc:"Î",Icy:"И",Idot:"İ",Ifr:"ℑ",Igrav:"Ì",Igrave:"Ì",Im:"ℑ",Imacr:"Ī",ImaginaryI:"ⅈ",Implies:"⇒",Int:"∬",Integral:"∫",Intersection:"⋂",InvisibleComma:"",InvisibleTimes:"",Iogon:"Į",Iopf:"𝕀",Iota:"Ι",Iscr:"ℐ",Itilde:"Ĩ",Iukcy:"І",Ium:"Ï",Iuml:"Ï",Jcirc:"Ĵ",Jcy:"Й",Jfr:"𝔍",Jopf:"𝕁",Jscr:"𝒥",Jsercy:"Ј",Jukcy:"Є",KHcy:"Х",KJcy:"Ќ",Kappa:"Κ",Kcedil:"Ķ",Kcy:"К",Kfr:"𝔎",Kopf:"𝕂",Kscr:"𝒦",LJcy:"Љ",L:"<",LT:"<",Lacute:"Ĺ",Lambda:"Λ",Lang:"⟪",Laplacetrf:"ℒ",Larr:"↞",Lcaron:"Ľ",Lcedil:"Ļ",Lcy:"Л",LeftAngleBracket:"⟨",LeftArrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",LeftRightArrow:"↔",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",Leftarrow:"⇐",Leftrightarrow:"⇔",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",LessLess:"⪡",LessSlantEqual:"⩽",LessTilde:"≲",Lfr:"𝔏",Ll:"⋘",Lleftarrow:"⇚",Lmidot:"Ŀ",LongLeftArrow:"⟵",LongLeftRightArrow:"⟷",LongRightArrow:"⟶",Longleftarrow:"⟸",Longleftrightarrow:"⟺",Longrightarrow:"⟹",Lopf:"𝕃",LowerLeftArrow:"↙",LowerRightArrow:"↘",Lscr:"ℒ",Lsh:"↰",Lstrok:"Ł",Lt:"≪",Map:"⤅",Mcy:"М",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",MinusPlus:"∓",Mopf:"𝕄",Mscr:"ℳ",Mu:"Μ",NJcy:"Њ",Nacute:"Ń",Ncaron:"Ň",Ncedil:"Ņ",Ncy:"Н",NegativeMediumSpace:"",NegativeThickSpace:"",NegativeThinSpace:"",NegativeVeryThinSpace:"",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",Nfr:"𝔑",NoBreak:"",NonBreakingSpace:" ",Nopf:"ℕ",Not:"⫬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",Nscr:"𝒩",Ntild:"Ñ",Ntilde:"Ñ",Nu:"Ν",OElig:"Œ",Oacut:"Ó",Oacute:"Ó",Ocir:"Ô",Ocirc:"Ô",Ocy:"О",Odblac:"Ő",Ofr:"𝔒",Ograv:"Ò",Ograve:"Ò",Omacr:"Ō",Omega:"Ω",Omicron:"Ο",Oopf:"𝕆",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",Or:"⩔",Oscr:"𝒪",Oslas:"Ø",Oslash:"Ø",Otild:"Õ",Otilde:"Õ",Otimes:"⨷",Oum:"Ö",Ouml:"Ö",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",PartialD:"∂",Pcy:"П",Pfr:"𝔓",Phi:"Φ",Pi:"Π",PlusMinus:"±",Poincareplane:"ℌ",Popf:"ℙ",Pr:"⪻",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",Prime:"″",Product:"∏",Proportion:"∷",Proportional:"∝",Pscr:"𝒫",Psi:"Ψ",QUO:'"',QUOT:'"',Qfr:"𝔔",Qopf:"ℚ",Qscr:"𝒬",RBarr:"⤐",RE:"®",REG:"®",Racute:"Ŕ",Rang:"⟫",Rarr:"↠",Rarrtl:"⤖",Rcaron:"Ř",Rcedil:"Ŗ",Rcy:"Р",Re:"ℜ",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",Rfr:"ℜ",Rho:"Ρ",RightAngleBracket:"⟩",RightArrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",Rightarrow:"⇒",Ropf:"ℝ",RoundImplies:"⥰",Rrightarrow:"⇛",Rscr:"ℛ",Rsh:"↱",RuleDelayed:"⧴",SHCHcy:"Щ",SHcy:"Ш",SOFTcy:"Ь",Sacute:"Ś",Sc:"⪼",Scaron:"Š",Scedil:"Ş",Scirc:"Ŝ",Scy:"С",Sfr:"𝔖",ShortDownArrow:"↓",ShortLeftArrow:"←",ShortRightArrow:"→",ShortUpArrow:"↑",Sigma:"Σ",SmallCircle:"∘",Sopf:"𝕊",Sqrt:"√",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",Sscr:"𝒮",Star:"⋆",Sub:"⋐",Subset:"⋐",SubsetEqual:"⊆",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",SuchThat:"∋",Sum:"∑",Sup:"⋑",Superset:"⊃",SupersetEqual:"⊇",Supset:"⋑",THOR:"Þ",THORN:"Þ",TRADE:"™",TSHcy:"Ћ",TScy:"Ц",Tab:"\t",Tau:"Τ",Tcaron:"Ť",Tcedil:"Ţ",Tcy:"Т",Tfr:"𝔗",Therefore:"∴",Theta:"Θ",ThickSpace:" ",ThinSpace:" ",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",Topf:"𝕋",TripleDot:"⃛",Tscr:"𝒯",Tstrok:"Ŧ",Uacut:"Ú",Uacute:"Ú",Uarr:"↟",Uarrocir:"⥉",Ubrcy:"Ў",Ubreve:"Ŭ",Ucir:"Û",Ucirc:"Û",Ucy:"У",Udblac:"Ű",Ufr:"𝔘",Ugrav:"Ù",Ugrave:"Ù",Umacr:"Ū",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",Uopf:"𝕌",UpArrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",UpDownArrow:"↕",UpEquilibrium:"⥮",UpTee:"⊥",UpTeeArrow:"↥",Uparrow:"⇑",Updownarrow:"⇕",UpperLeftArrow:"↖",UpperRightArrow:"↗",Upsi:"ϒ",Upsilon:"Υ",Uring:"Ů",Uscr:"𝒰",Utilde:"Ũ",Uum:"Ü",Uuml:"Ü",VDash:"⊫",Vbar:"⫫",Vcy:"В",Vdash:"⊩",Vdashl:"⫦",Vee:"⋁",Verbar:"‖",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",Vopf:"𝕍",Vscr:"𝒱",Vvdash:"⊪",Wcirc:"Ŵ",Wedge:"⋀",Wfr:"𝔚",Wopf:"𝕎",Wscr:"𝒲",Xfr:"𝔛",Xi:"Ξ",Xopf:"𝕏",Xscr:"𝒳",YAcy:"Я",YIcy:"Ї",YUcy:"Ю",Yacut:"Ý",Yacute:"Ý",Ycirc:"Ŷ",Ycy:"Ы",Yfr:"𝔜",Yopf:"𝕐",Yscr:"𝒴",Yuml:"Ÿ",ZHcy:"Ж",Zacute:"Ź",Zcaron:"Ž",Zcy:"З",Zdot:"Ż",ZeroWidthSpace:"",Zeta:"Ζ",Zfr:"ℨ",Zopf:"ℤ",Zscr:"𝒵",aacut:"á",aacute:"á",abreve:"ă",ac:"∾",acE:"∾̳",acd:"∿",acir:"â",acirc:"â",acut:"´",acute:"´",acy:"а",aeli:"æ",aelig:"æ",af:"",afr:"𝔞",agrav:"à",agrave:"à",alefsym:"ℵ",aleph:"ℵ",alpha:"α",amacr:"ā",amalg:"⨿",am:"&",amp:"&",and:"∧",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",aogon:"ą",aopf:"𝕒",ap:"≈",apE:"⩰",apacir:"⩯",ape:"≊",apid:"≋",apos:"'",approx:"≈",approxeq:"≊",arin:"å",aring:"å",ascr:"𝒶",ast:"*",asymp:"≈",asympeq:"≍",atild:"ã",atilde:"ã",aum:"ä",auml:"ä",awconint:"∳",awint:"⨑",bNot:"⫭",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",barvee:"⊽",barwed:"⌅",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",beta:"β",beth:"ℶ",between:"≬",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bnot:"⌐",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxDL:"╗",boxDR:"╔",boxDl:"╖",boxDr:"╓",boxH:"═",boxHD:"╦",boxHU:"╩",boxHd:"╤",boxHu:"╧",boxUL:"╝",boxUR:"╚",boxUl:"╜",boxUr:"╙",boxV:"║",boxVH:"╬",boxVL:"╣",boxVR:"╠",boxVh:"╫",boxVl:"╢",boxVr:"╟",boxbox:"⧉",boxdL:"╕",boxdR:"╒",boxdl:"┐",boxdr:"┌",boxh:"─",boxhD:"╥",boxhU:"╨",boxhd:"┬",boxhu:"┴",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxuL:"╛",boxuR:"╘",boxul:"┘",boxur:"└",boxv:"│",boxvH:"╪",boxvL:"╡",boxvR:"╞",boxvh:"┼",boxvl:"┤",boxvr:"├",bprime:"‵",breve:"˘",brvba:"¦",brvbar:"¦",bscr:"𝒷",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",bumpeq:"≏",cacute:"ć",cap:"∩",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",caps:"∩︀",caret:"⁁",caron:"ˇ",ccaps:"⩍",ccaron:"č",ccedi:"ç",ccedil:"ç",ccirc:"ĉ",ccups:"⩌",ccupssm:"⩐",cdot:"ċ",cedi:"¸",cedil:"¸",cemptyv:"⦲",cen:"¢",cent:"¢",centerdot:"·",cfr:"𝔠",chcy:"ч",check:"✓",checkmark:"✓",chi:"χ",cir:"○",cirE:"⧃",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledR:"®",circledS:"Ⓢ",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",clubs:"♣",clubsuit:"♣",colon:":",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",conint:"∮",copf:"𝕔",coprod:"∐",cop:"©",copy:"©",copysr:"℗",crarr:"↵",cross:"✗",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cup:"∪",cupbrcap:"⩈",cupcap:"⩆",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curre:"¤",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dArr:"⇓",dHar:"⥥",dagger:"†",daleth:"ℸ",darr:"↓",dash:"‐",dashv:"⊣",dbkarow:"⤏",dblac:"˝",dcaron:"ď",dcy:"д",dd:"ⅆ",ddagger:"‡",ddarr:"⇊",ddotseq:"⩷",de:"°",deg:"°",delta:"δ",demptyv:"⦱",dfisht:"⥿",dfr:"𝔡",dharl:"⇃",dharr:"⇂",diam:"⋄",diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",digamma:"ϝ",disin:"⋲",div:"÷",divid:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",dopf:"𝕕",dot:"˙",doteq:"≐",doteqdot:"≑",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",downarrow:"↓",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",dscr:"𝒹",dscy:"ѕ",dsol:"⧶",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",dzcy:"џ",dzigrarr:"⟿",eDDot:"⩷",eDot:"≑",eacut:"é",eacute:"é",easter:"⩮",ecaron:"ě",ecir:"ê",ecirc:"ê",ecolon:"≕",ecy:"э",edot:"ė",ee:"ⅇ",efDot:"≒",efr:"𝔢",eg:"⪚",egrav:"è",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",emacr:"ē",empty:"∅",emptyset:"∅",emptyv:"∅",emsp13:" ",emsp14:" ",emsp:" ",eng:"ŋ",ensp:" ",eogon:"ę",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",equals:"=",equest:"≟",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erDot:"≓",erarr:"⥱",escr:"ℯ",esdot:"≐",esim:"≂",eta:"η",et:"ð",eth:"ð",eum:"ë",euml:"ë",euro:"€",excl:"!",exist:"∃",expectation:"ℰ",exponentiale:"ⅇ",fallingdotseq:"≒",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",ffr:"𝔣",filig:"fi",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",fopf:"𝕗",forall:"∀",fork:"⋔",forkv:"⫙",fpartint:"⨍",frac1:"¼",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac3:"¾",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",gE:"≧",gEl:"⪌",gacute:"ǵ",gamma:"γ",gammad:"ϝ",gap:"⪆",gbreve:"ğ",gcirc:"ĝ",gcy:"г",gdot:"ġ",ge:"≥",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",gfr:"𝔤",gg:"≫",ggg:"⋙",gimel:"ℷ",gjcy:"ѓ",gl:"≷",glE:"⪒",gla:"⪥",glj:"⪤",gnE:"≩",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gneq:"⪈",gneqq:"≩",gnsim:"⋧",gopf:"𝕘",grave:"`",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",g:">",gt:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",hArr:"⇔",hairsp:" ",half:"½",hamilt:"ℋ",hardcy:"ъ",harr:"↔",harrcir:"⥈",harrw:"↭",hbar:"ℏ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",horbar:"―",hscr:"𝒽",hslash:"ℏ",hstrok:"ħ",hybull:"⁃",hyphen:"‐",iacut:"í",iacute:"í",ic:"",icir:"î",icirc:"î",icy:"и",iecy:"е",iexc:"¡",iexcl:"¡",iff:"⇔",ifr:"𝔦",igrav:"ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",ijlig:"ij",imacr:"ī",image:"ℑ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",int:"∫",intcal:"⊺",integers:"ℤ",intercal:"⊺",intlarhk:"⨗",intprod:"⨼",iocy:"ё",iogon:"į",iopf:"𝕚",iota:"ι",iprod:"⨼",iques:"¿",iquest:"¿",iscr:"𝒾",isin:"∈",isinE:"⋹",isindot:"⋵",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"",itilde:"ĩ",iukcy:"і",ium:"ï",iuml:"ï",jcirc:"ĵ",jcy:"й",jfr:"𝔧",jmath:"ȷ",jopf:"𝕛",jscr:"𝒿",jsercy:"ј",jukcy:"є",kappa:"κ",kappav:"ϰ",kcedil:"ķ",kcy:"к",kfr:"𝔨",kgreen:"ĸ",khcy:"х",kjcy:"ќ",kopf:"𝕜",kscr:"𝓀",lAarr:"⇚",lArr:"⇐",lAtail:"⤛",lBarr:"⤎",lE:"≦",lEg:"⪋",lHar:"⥢",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",lambda:"λ",lang:"⟨",langd:"⦑",langle:"⟨",lap:"⪅",laqu:"«",laquo:"«",larr:"←",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",latail:"⤙",late:"⪭",lates:"⪭︀",lbarr:"⤌",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",lcaron:"ľ",lcedil:"ļ",lceil:"⌈",lcub:"{",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",leftarrow:"←",leftarrowtail:"↢",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",leftthreetimes:"⋋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",lessgtr:"≶",lesssim:"≲",lfisht:"⥼",lfloor:"⌊",lfr:"𝔩",lg:"≶",lgE:"⪑",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",ljcy:"љ",ll:"≪",llarr:"⇇",llcorner:"⌞",llhard:"⥫",lltri:"◺",lmidot:"ŀ",lmoust:"⎰",lmoustache:"⎰",lnE:"≨",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",longleftrightarrow:"⟷",longmapsto:"⟼",longrightarrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",lstrok:"ł",l:"<",lt:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltrPar:"⦖",ltri:"◃",ltrie:"⊴",ltrif:"◂",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",mDDot:"∺",mac:"¯",macr:"¯",male:"♂",malt:"✠",maltese:"✠",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",mcy:"м",mdash:"—",measuredangle:"∡",mfr:"𝔪",mho:"℧",micr:"µ",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middo:"·",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",mopf:"𝕞",mp:"∓",mscr:"𝓂",mstpos:"∾",mu:"μ",multimap:"⊸",mumap:"⊸",nGg:"⋙̸",nGt:"≫⃒",nGtv:"≫̸",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nLl:"⋘̸",nLt:"≪⃒",nLtv:"≪̸",nRightarrow:"⇏",nVDash:"⊯",nVdash:"⊮",nabla:"∇",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbs:" ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",ncaron:"ň",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",ncy:"н",ndash:"–",ne:"≠",neArr:"⇗",nearhk:"⤤",nearr:"↗",nearrow:"↗",nedot:"≐̸",nequiv:"≢",nesear:"⤨",nesim:"≂̸",nexist:"∄",nexists:"∄",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",ngsim:"≵",ngt:"≯",ngtr:"≯",nhArr:"⇎",nharr:"↮",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",njcy:"њ",nlArr:"⇍",nlE:"≦̸",nlarr:"↚",nldr:"‥",nle:"≰",nleftarrow:"↚",nleftrightarrow:"↮",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nlsim:"≴",nlt:"≮",nltri:"⋪",nltrie:"⋬",nmid:"∤",nopf:"𝕟",no:"¬",not:"¬",notin:"∉",notinE:"⋹̸",notindot:"⋵̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrArr:"⇏",nrarr:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nrightarrow:"↛",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",ntild:"ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",nu:"ν",num:"#",numero:"№",numsp:" ",nvDash:"⊭",nvHarr:"⤄",nvap:"≍⃒",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwArr:"⇖",nwarhk:"⤣",nwarr:"↖",nwarrow:"↖",nwnear:"⤧",oS:"Ⓢ",oacut:"ó",oacute:"ó",oast:"⊛",ocir:"ô",ocirc:"ô",ocy:"о",odash:"⊝",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",oelig:"œ",ofcir:"⦿",ofr:"𝔬",ogon:"˛",ograv:"ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",omacr:"ō",omega:"ω",omicron:"ο",omid:"⦶",ominus:"⊖",oopf:"𝕠",opar:"⦷",operp:"⦹",oplus:"⊕",or:"∨",orarr:"↻",ord:"º",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oscr:"ℴ",oslas:"ø",oslash:"ø",osol:"⊘",otild:"õ",otilde:"õ",otimes:"⊗",otimesas:"⨶",oum:"ö",ouml:"ö",ovbar:"⌽",par:"¶",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",pfr:"𝔭",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",plusm:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",pointint:"⨕",popf:"𝕡",poun:"£",pound:"£",pr:"≺",prE:"⪳",prap:"⪷",prcue:"≼",pre:"⪯",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",prime:"′",primes:"ℙ",prnE:"⪵",prnap:"⪹",prnsim:"⋨",prod:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",propto:"∝",prsim:"≾",prurel:"⊰",pscr:"𝓅",psi:"ψ",puncsp:" ",qfr:"𝔮",qint:"⨌",qopf:"𝕢",qprime:"⁗",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quo:'"',quot:'"',rAarr:"⇛",rArr:"⇒",rAtail:"⤜",rBarr:"⤏",rHar:"⥤",race:"∽̱",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",rangd:"⦒",range:"⦥",rangle:"⟩",raqu:"»",raquo:"»",rarr:"→",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",rarrtl:"↣",rarrw:"↝",ratail:"⤚",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",rcaron:"ř",rcedil:"ŗ",rceil:"⌉",rcub:"}",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",re:"®",reg:"®",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",rhard:"⇁",rharu:"⇀",rharul:"⥬",rho:"ρ",rhov:"ϱ",rightarrow:"→",rightarrowtail:"↣",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",rightthreetimes:"⋌",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",roplus:"⨮",rotimes:"⨵",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",rsaquo:"›",rscr:"𝓇",rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",ruluhar:"⥨",rx:"℞",sacute:"ś",sbquo:"‚",sc:"≻",scE:"⪴",scap:"⪸",scaron:"š",sccue:"≽",sce:"⪰",scedil:"ş",scirc:"ŝ",scnE:"⪶",scnap:"⪺",scnsim:"⋩",scpolint:"⨓",scsim:"≿",scy:"с",sdot:"⋅",sdotb:"⊡",sdote:"⩦",seArr:"⇘",searhk:"⤥",searr:"↘",searrow:"↘",sec:"§",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",sfr:"𝔰",sfrown:"⌢",sharp:"♯",shchcy:"щ",shcy:"ш",shortmid:"∣",shortparallel:"∥",sh:"",shy:"",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",softcy:"ь",sol:"/",solb:"⧄",solbar:"⌿",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",square:"□",squarf:"▪",squf:"▪",srarr:"→",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",subE:"⫅",subdot:"⪽",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",subseteq:"⊆",subseteqq:"⫅",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",sum:"∑",sung:"♪",sup:"⊃",sup1:"¹",sup2:"²",sup3:"³",supE:"⫆",supdot:"⪾",supdsub:"⫘",supe:"⊇",supedot:"⫄",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swArr:"⇙",swarhk:"⤦",swarr:"↙",swarrow:"↙",swnwar:"⤪",szli:"ß",szlig:"ß",target:"⌖",tau:"τ",tbrk:"⎴",tcaron:"ť",tcedil:"ţ",tcy:"т",tdot:"⃛",telrec:"⌕",tfr:"𝔱",there4:"∴",therefore:"∴",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",thinsp:" ",thkap:"≈",thksim:"∼",thor:"þ",thorn:"þ",tilde:"˜",time:"×",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",tscr:"𝓉",tscy:"ц",tshcy:"ћ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",uArr:"⇑",uHar:"⥣",uacut:"ú",uacute:"ú",uarr:"↑",ubrcy:"ў",ubreve:"ŭ",ucir:"û",ucirc:"û",ucy:"у",udarr:"⇅",udblac:"ű",udhar:"⥮",ufisht:"⥾",ufr:"𝔲",ugrav:"ù",ugrave:"ù",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",umacr:"ū",um:"¨",uml:"¨",uogon:"ų",uopf:"𝕦",uparrow:"↑",updownarrow:"↕",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",upsi:"υ",upsih:"ϒ",upsilon:"υ",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",uring:"ů",urtri:"◹",uscr:"𝓊",utdot:"⋰",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",uum:"ü",uuml:"ü",uwangle:"⦧",vArr:"⇕",vBar:"⫨",vBarv:"⫩",vDash:"⊨",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vcy:"в",vdash:"⊢",vee:"∨",veebar:"⊻",veeeq:"≚",vellip:"⋮",verbar:"|",vert:"|",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",vopf:"𝕧",vprop:"∝",vrtri:"⊳",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",vzigzag:"⦚",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",wedgeq:"≙",weierp:"℘",wfr:"𝔴",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",xfr:"𝔵",xhArr:"⟺",xharr:"⟷",xi:"ξ",xlArr:"⟸",xlarr:"⟵",xmap:"⟼",xnis:"⋻",xodot:"⨀",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrArr:"⟹",xrarr:"⟶",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",yacut:"ý",yacute:"ý",yacy:"я",ycirc:"ŷ",ycy:"ы",ye:"¥",yen:"¥",yfr:"𝔶",yicy:"ї",yopf:"𝕪",yscr:"𝓎",yucy:"ю",yum:"ÿ",yuml:"ÿ",zacute:"ź",zcaron:"ž",zcy:"з",zdot:"ż",zeetrf:"ℨ",zeta:"ζ",zfr:"𝔷",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",zscr:"𝓏",zwj:"",zwnj:""},We=function(e){return!!Qe.call($e,e)&&$e[e]},Qe={}.hasOwnProperty;var Ye=Le(/\d/),Je=Le(/[\dA-Fa-f]/);function Ze(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var Ke=Ze(We),Xe={name:"characterReference",tokenize:function(e,t,n){var r,i,o=this,a=0;return function(t){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(t),e.exit("characterReferenceMarker"),s};function s(t){return 35===t?(e.enter("characterReferenceMarkerNumeric"),e.consume(t),e.exit("characterReferenceMarkerNumeric"),u):(e.enter("characterReferenceValue"),r=31,i=ze,c(t))}function u(t){return 88===t||120===t?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(t),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),r=6,i=Je,c):(e.enter("characterReferenceValue"),r=7,i=Ye,c(t))}function c(s){var u;return 59===s&&a?(u=e.exit("characterReferenceValue"),i!==ze||Ke.default(o.sliceSerialize(u))?(e.enter("characterReferenceMarker"),e.consume(s),e.exit("characterReferenceMarker"),e.exit("characterReference"),t):n(s)):i(s)&&a++<r?(e.consume(s),c):n(s)}}};var et={name:"codeFenced",tokenize:function(e,t,n){var r,i=this,o={tokenize:function(e,t,n){var i=0;return j(e,o,"linePrefix",this.parser.constructs.disable.null.indexOf("codeIndented")>-1?void 0:4);function o(t){return e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),a(t)}function a(t){return t===r?(e.consume(t),i++,a):i<s?n(t):(e.exit("codeFencedFenceSequence"),j(e,u,"whitespace")(t))}function u(r){return null===r||N(r)?(e.exit("codeFencedFence"),t(r)):n(r)}},partial:!0},a=ee(this.events,"linePrefix"),s=0;return function(t){return e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),r=t,u(t)};function u(t){return t===r?(e.consume(t),s++,u):(e.exit("codeFencedFenceSequence"),s<3?n(t):j(e,c,"whitespace")(t))}function c(t){return null===t||N(t)?h(t):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),l(t))}function l(t){return null===t||qe(t)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),j(e,f,"whitespace")(t)):96===t&&t===r?n(t):(e.consume(t),l)}function f(t){return null===t||N(t)?h(t):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),d(t))}function d(t){return null===t||N(t)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),h(t)):96===t&&t===r?n(t):(e.consume(t),d)}function h(n){return e.exit("codeFencedFence"),i.interrupt?t(n):p(n)}function p(t){return null===t?m(t):N(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),e.attempt(o,m,a?j(e,p,"linePrefix",a+1):p)):(e.enter("codeFlowValue"),g(t))}function g(t){return null===t||N(t)?(e.exit("codeFlowValue"),p(t)):(e.consume(t),g)}function m(n){return e.exit("codeFenced"),t(n)}},concrete:!0};var tt={name:"codeIndented",tokenize:function(e,t,n){return e.attempt(nt,r,n);function r(n){return null===n?t(n):N(n)?e.attempt(nt,r,t)(n):(e.enter("codeFlowValue"),i(n))}function i(t){return null===t||N(t)?(e.exit("codeFlowValue"),r(t)):(e.consume(t),i)}},resolve:function(e,t){var n={type:"codeIndented",start:e[0][1].start,end:e[e.length-1][1].end};return ne(e,0,0,[["enter",n,t]]),ne(e,e.length,0,[["exit",n,t]]),e}},nt={tokenize:function(e,t,n){var r=this;return j(e,(function i(o){if(N(o))return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),j(e,i,"linePrefix",5);return ee(r.events,"linePrefix")<4?n(o):t(o)}),"linePrefix",5)},partial:!0};var rt={name:"codeText",tokenize:function(e,t,n){var r,i,o=0;return function(t){return e.enter("codeText"),e.enter("codeTextSequence"),a(t)};function a(t){return 96===t?(e.consume(t),o++,a):(e.exit("codeTextSequence"),s(t))}function s(t){return null===t?n(t):96===t?(i=e.enter("codeTextSequence"),r=0,c(t)):32===t?(e.enter("space"),e.consume(t),e.exit("space"),s):N(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),s):(e.enter("codeTextData"),u(t))}function u(t){return null===t||32===t||96===t||N(t)?(e.exit("codeTextData"),s(t)):(e.consume(t),u)}function c(n){return 96===n?(e.consume(n),r++,c):r===o?(e.exit("codeTextSequence"),e.exit("codeText"),t(n)):(i.type="codeTextData",u(n))}},resolve:function(e){var t,n,r=e.length-4,i=3;if(!("lineEnding"!==e[i][1].type&&"space"!==e[i][1].type||"lineEnding"!==e[r][1].type&&"space"!==e[r][1].type))for(t=i;++t<r;)if("codeTextData"===e[t][1].type){e[r][1].type=e[i][1].type="codeTextPadding",i+=2,r-=2;break}t=i-1,r++;for(;++t<=r;)void 0===n?t!==r&&"lineEnding"!==e[t][1].type&&(n=t):t!==r&&"lineEnding"!==e[t][1].type||(e[n][1].type="codeTextData",t!==n+2&&(e[n][1].end=e[t-1][1].end,e.splice(n+2,t-n-2),r-=t-n-2,t=n+2),n=void 0);return e},previous:function(e){return 96!==e||"characterEscape"===this.events[this.events.length-1][1].type}};var it=function(e,t,n,r,i,o,a,s,u){var c=u||1/0,l=0;return function(t){if(60===t)return e.enter(r),e.enter(i),e.enter(o),e.consume(t),e.exit(o),f;if(_e(t)||41===t)return n(t);return e.enter(r),e.enter(a),e.enter(s),e.enter("chunkString",{contentType:"string"}),p(t)};function f(n){return 62===n?(e.enter(o),e.consume(n),e.exit(o),e.exit(i),e.exit(r),t):(e.enter(s),e.enter("chunkString",{contentType:"string"}),d(n))}function d(t){return 62===t?(e.exit("chunkString"),e.exit(s),f(t)):null===t||60===t||N(t)?n(t):(e.consume(t),92===t?h:d)}function h(t){return 60===t||62===t||92===t?(e.consume(t),d):d(t)}function p(i){return 40===i?++l>c?n(i):(e.consume(i),p):41===i?l--?(e.consume(i),p):(e.exit("chunkString"),e.exit(s),e.exit(a),e.exit(r),t(i)):null===i||qe(i)?l?n(i):(e.exit("chunkString"),e.exit(s),e.exit(a),e.exit(r),t(i)):_e(i)?n(i):(e.consume(i),92===i?g:p)}function g(t){return 40===t||41===t||92===t?(e.consume(t),p):p(t)}};var ot=function(e,t,n,r,i,o){var a,s=this,u=0;return function(t){return e.enter(r),e.enter(i),e.consume(t),e.exit(i),e.enter(o),c};function c(f){return null===f||91===f||93===f&&!a||94===f&&!u&&"_hiddenFootnoteSupport"in s.parser.constructs||u>999?n(f):93===f?(e.exit(o),e.enter(i),e.consume(f),e.exit(i),e.exit(r),t):N(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),l(f))}function l(t){return null===t||91===t||93===t||N(t)||u++>999?(e.exit("chunkString"),c(t)):(e.consume(t),a=a||!U(t),92===t?f:l)}function f(t){return 91===t||92===t||93===t?(e.consume(t),u++,l):l(t)}};var at=function(e,t){var n;return function r(i){if(N(i))return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r;if(U(i))return j(e,r,n?"linePrefix":"lineSuffix")(i);return t(i)}};var st=function(e,t,n,r,i,o){var a;return function(t){return e.enter(r),e.enter(i),e.consume(t),e.exit(i),a=40===t?41:t,s};function s(n){return n===a?(e.enter(i),e.consume(n),e.exit(i),e.exit(r),t):(e.enter(o),u(n))}function u(t){return t===a?(e.exit(o),s(a)):null===t?n(t):N(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),j(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(t))}function c(t){return t===a||null===t||N(t)?(e.exit("chunkString"),u(t)):(e.consume(t),92===t?l:c)}function l(t){return t===a||92===t?(e.consume(t),c):c(t)}},ut={name:"definition",tokenize:function(e,t,n){var r,i=this;return function(t){return e.enter("definition"),ot.call(i,e,o,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(t)};function o(t){return r=z(i.sliceSerialize(i.events[i.events.length-1][1]).slice(1,-1)),58===t?(e.enter("definitionMarker"),e.consume(t),e.exit("definitionMarker"),at(e,it(e,e.attempt(ct,j(e,a,"whitespace"),j(e,a,"whitespace")),n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString"))):n(t)}function a(o){return null===o||N(o)?(e.exit("definition"),i.parser.defined.indexOf(r)<0&&i.parser.defined.push(r),t(o)):n(o)}}},ct={tokenize:function(e,t,n){return function(t){return qe(t)?at(e,r)(t):n(t)};function r(t){return 34===t||39===t||40===t?st(e,j(e,i,"whitespace"),n,"definitionTitle","definitionTitleMarker","definitionTitleString")(t):n(t)}function i(e){return null===e||N(e)?t(e):n(e)}},partial:!0};var lt={name:"headingAtx",tokenize:function(e,t,n){var r=this,i=0;return function(t){return e.enter("atxHeading"),e.enter("atxHeadingSequence"),o(t)};function o(s){return 35===s&&i++<6?(e.consume(s),o):null===s||qe(s)?(e.exit("atxHeadingSequence"),r.interrupt?t(s):a(s)):n(s)}function a(n){return 35===n?(e.enter("atxHeadingSequence"),s(n)):null===n||N(n)?(e.exit("atxHeading"),t(n)):U(n)?j(e,a,"whitespace")(n):(e.enter("atxHeadingText"),u(n))}function s(t){return 35===t?(e.consume(t),s):(e.exit("atxHeadingSequence"),a(t))}function u(t){return null===t||35===t||qe(t)?(e.exit("atxHeadingText"),a(t)):(e.consume(t),u)}},resolve:function(e,t){var n,r,i=e.length-2,o=3;"whitespace"===e[o][1].type&&(o+=2);i-2>o&&"whitespace"===e[i][1].type&&(i-=2);"atxHeadingSequence"===e[i][1].type&&(o===i-1||i-4>o&&"whitespace"===e[i-2][1].type)&&(i-=o+1===i?2:4);i>o&&(n={type:"atxHeadingText",start:e[o][1].start,end:e[i][1].end},r={type:"chunkText",start:e[o][1].start,end:e[i][1].end,contentType:"text"},ne(e,o,i-o+1,[["enter",n,t],["enter",r,t],["exit",r,t],["exit",n,t]]));return e}};var ft=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","source","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],dt=["pre","script","style","textarea"],ht={name:"htmlFlow",tokenize:function(e,t,n){var r,i,o,a,s,u=this;return function(t){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(t),c};function c(a){return 33===a?(e.consume(a),l):47===a?(e.consume(a),h):63===a?(e.consume(a),r=3,u.interrupt?t:P):Be(a)?(e.consume(a),o=M(a),i=!0,p):n(a)}function l(i){return 45===i?(e.consume(i),r=2,f):91===i?(e.consume(i),r=5,o="CDATA[",a=0,d):Be(i)?(e.consume(i),r=4,u.interrupt?t:P):n(i)}function f(r){return 45===r?(e.consume(r),u.interrupt?t:P):n(r)}function d(r){return r===o.charCodeAt(a++)?(e.consume(r),a===o.length?u.interrupt?t:A:d):n(r)}function h(t){return Be(t)?(e.consume(t),o=M(t),p):n(t)}function p(a){return null===a||47===a||62===a||qe(a)?47!==a&&i&&dt.indexOf(o.toLowerCase())>-1?(r=1,u.interrupt?t(a):A(a)):ft.indexOf(o.toLowerCase())>-1?(r=6,47===a?(e.consume(a),g):u.interrupt?t(a):A(a)):(r=7,u.interrupt?n(a):i?v(a):m(a)):45===a||ze(a)?(e.consume(a),o+=M(a),p):n(a)}function g(r){return 62===r?(e.consume(r),u.interrupt?t:A):n(r)}function m(t){return U(t)?(e.consume(t),m):S(t)}function v(t){return 47===t?(e.consume(t),S):58===t||95===t||Be(t)?(e.consume(t),y):U(t)?(e.consume(t),v):S(t)}function y(t){return 45===t||46===t||58===t||95===t||ze(t)?(e.consume(t),y):k(t)}function k(t){return 61===t?(e.consume(t),x):U(t)?(e.consume(t),k):v(t)}function x(t){return null===t||60===t||61===t||62===t||96===t?n(t):34===t||39===t?(e.consume(t),s=t,b):U(t)?(e.consume(t),x):(s=void 0,w(t))}function b(t){return t===s?(e.consume(t),E):null===t||N(t)?n(t):(e.consume(t),b)}function w(t){return null===t||34===t||39===t||60===t||61===t||62===t||96===t||qe(t)?k(t):(e.consume(t),w)}function E(e){return 47===e||62===e||U(e)?v(e):n(e)}function S(t){return 62===t?(e.consume(t),C):n(t)}function C(t){return U(t)?(e.consume(t),C):null===t||N(t)?A(t):n(t)}function A(t){return 45===t&&2===r?(e.consume(t),q):60===t&&1===r?(e.consume(t),L):62===t&&4===r?(e.consume(t),R):63===t&&3===r?(e.consume(t),P):93===t&&5===r?(e.consume(t),I):!N(t)||6!==r&&7!==r?null===t||N(t)?D(t):(e.consume(t),A):e.check(pt,R,D)(t)}function D(t){return e.exit("htmlFlowData"),T(t)}function T(t){return null===t?V(t):N(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),T):(e.enter("htmlFlowData"),A(t))}function q(t){return 45===t?(e.consume(t),P):A(t)}function L(t){return 47===t?(e.consume(t),o="",F):A(t)}function F(t){return 62===t&&dt.indexOf(o.toLowerCase())>-1?(e.consume(t),R):Be(t)&&o.length<8?(e.consume(t),o+=M(t),F):A(t)}function I(t){return 93===t?(e.consume(t),P):A(t)}function P(t){return 62===t?(e.consume(t),R):A(t)}function R(t){return null===t||N(t)?(e.exit("htmlFlowData"),V(t)):(e.consume(t),R)}function V(n){return e.exit("htmlFlow"),t(n)}},resolveTo:function(e){var t=e.length;for(;t--&&("enter"!==e[t][0]||"htmlFlow"!==e[t][1].type););t>1&&"linePrefix"===e[t-2][1].type&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2));return e},concrete:!0},pt={tokenize:function(e,t,n){return function(r){return e.exit("htmlFlowData"),e.enter("lineEndingBlank"),e.consume(r),e.exit("lineEndingBlank"),e.attempt(W,t,n)}},partial:!0};var gt={name:"htmlText",tokenize:function(e,t,n){var r,i,o,a,s=this;return function(t){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(t),u};function u(t){return 33===t?(e.consume(t),c):47===t?(e.consume(t),w):63===t?(e.consume(t),x):Be(t)?(e.consume(t),C):n(t)}function c(t){return 45===t?(e.consume(t),l):91===t?(e.consume(t),i="CDATA[",o=0,g):Be(t)?(e.consume(t),k):n(t)}function l(t){return 45===t?(e.consume(t),f):n(t)}function f(t){return null===t||62===t?n(t):45===t?(e.consume(t),d):h(t)}function d(e){return null===e||62===e?n(e):h(e)}function h(t){return null===t?n(t):45===t?(e.consume(t),p):N(t)?(a=h,P(t)):(e.consume(t),h)}function p(t){return 45===t?(e.consume(t),V):h(t)}function g(t){return t===i.charCodeAt(o++)?(e.consume(t),o===i.length?m:g):n(t)}function m(t){return null===t?n(t):93===t?(e.consume(t),v):N(t)?(a=m,P(t)):(e.consume(t),m)}function v(t){return 93===t?(e.consume(t),y):m(t)}function y(t){return 62===t?V(t):93===t?(e.consume(t),y):m(t)}function k(t){return null===t||62===t?V(t):N(t)?(a=k,P(t)):(e.consume(t),k)}function x(t){return null===t?n(t):63===t?(e.consume(t),b):N(t)?(a=x,P(t)):(e.consume(t),x)}function b(e){return 62===e?V(e):x(e)}function w(t){return Be(t)?(e.consume(t),E):n(t)}function E(t){return 45===t||ze(t)?(e.consume(t),E):S(t)}function S(t){return N(t)?(a=S,P(t)):U(t)?(e.consume(t),S):V(t)}function C(t){return 45===t||ze(t)?(e.consume(t),C):47===t||62===t||qe(t)?A(t):n(t)}function A(t){return 47===t?(e.consume(t),V):58===t||95===t||Be(t)?(e.consume(t),D):N(t)?(a=A,P(t)):U(t)?(e.consume(t),A):V(t)}function D(t){return 45===t||46===t||58===t||95===t||ze(t)?(e.consume(t),D):T(t)}function T(t){return 61===t?(e.consume(t),q):N(t)?(a=T,P(t)):U(t)?(e.consume(t),T):A(t)}function q(t){return null===t||60===t||61===t||62===t||96===t?n(t):34===t||39===t?(e.consume(t),r=t,L):N(t)?(a=q,P(t)):U(t)?(e.consume(t),q):(e.consume(t),r=void 0,I)}function L(t){return t===r?(e.consume(t),F):null===t?n(t):N(t)?(a=L,P(t)):(e.consume(t),L)}function F(e){return 62===e||47===e||qe(e)?A(e):n(e)}function I(t){return null===t||34===t||39===t||60===t||61===t||96===t?n(t):62===t||qe(t)?A(t):(e.consume(t),I)}function P(t){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),j(e,R,"linePrefix",s.parser.constructs.disable.null.indexOf("codeIndented")>-1?void 0:4)}function R(t){return e.enter("htmlTextData"),a(t)}function V(r){return 62===r?(e.consume(r),e.exit("htmlTextData"),e.exit("htmlText"),t):n(r)}}};var mt={name:"labelEnd",tokenize:function(e,t,n){var r,i,o=this,a=o.events.length;for(;a--;)if(("labelImage"===o.events[a][1].type||"labelLink"===o.events[a][1].type)&&!o.events[a][1]._balanced){r=o.events[a][1];break}return function(t){if(!r)return n(t);return r._inactive?u(t):(i=o.parser.defined.indexOf(z(o.sliceSerialize({start:r.end,end:o.now()})))>-1,e.enter("labelEnd"),e.enter("labelMarker"),e.consume(t),e.exit("labelMarker"),e.exit("labelEnd"),s)};function s(n){return 40===n?e.attempt(vt,t,i?t:u)(n):91===n?e.attempt(yt,t,i?e.attempt(kt,t,u):u)(n):i?t(n):u(n)}function u(e){return r._balanced=!0,n(e)}},resolveTo:function(e,t){var n,r,i,o,a,s,u,c=e.length,l=0;for(;c--;)if(o=e[c][1],a){if("link"===o.type||"labelLink"===o.type&&o._inactive)break;"enter"===e[c][0]&&"labelLink"===o.type&&(o._inactive=!0)}else if(s){if("enter"===e[c][0]&&("labelImage"===o.type||"labelLink"===o.type)&&!o._balanced&&(a=c,"labelLink"!==o.type)){l=2;break}}else"labelEnd"===o.type&&(s=c);return n={type:"labelLink"===e[a][1].type?"link":"image",start:re(e[a][1].start),end:re(e[e.length-1][1].end)},r={type:"label",start:re(e[a][1].start),end:re(e[s][1].end)},i={type:"labelText",start:re(e[a+l+2][1].end),end:re(e[s-2][1].start)},u=Se(u=[["enter",n,t],["enter",r,t]],e.slice(a+1,a+l+3)),u=Se(u,[["enter",i,t]]),u=Se(u,Ce(t.parser.constructs.insideSpan.null,e.slice(a+l+4,s-3),t)),u=Se(u,[["exit",i,t],e[s-2],e[s-1],["exit",r,t]]),u=Se(u,e.slice(s+1)),u=Se(u,[["exit",n,t]]),ne(e,a,e.length,u),e},resolveAll:function(e){var t,n=-1;for(;++n<e.length;)(t=e[n][1])._used||"labelImage"!==t.type&&"labelLink"!==t.type&&"labelEnd"!==t.type||(e.splice(n+1,"labelImage"===t.type?4:2),t.type="data",n++);return e}},vt={tokenize:function(e,t,n){return function(t){return e.enter("resource"),e.enter("resourceMarker"),e.consume(t),e.exit("resourceMarker"),at(e,r)};function r(t){return 41===t?a(t):it(e,i,n,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",3)(t)}function i(t){return qe(t)?at(e,o)(t):a(t)}function o(t){return 34===t||39===t||40===t?st(e,at(e,a),n,"resourceTitle","resourceTitleMarker","resourceTitleString")(t):a(t)}function a(r){return 41===r?(e.enter("resourceMarker"),e.consume(r),e.exit("resourceMarker"),e.exit("resource"),t):n(r)}}},yt={tokenize:function(e,t,n){var r=this;return function(t){return ot.call(r,e,i,n,"reference","referenceMarker","referenceString")(t)};function i(e){return r.parser.defined.indexOf(z(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))<0?n(e):t(e)}}},kt={tokenize:function(e,t,n){return function(t){return e.enter("reference"),e.enter("referenceMarker"),e.consume(t),e.exit("referenceMarker"),r};function r(r){return 93===r?(e.enter("referenceMarker"),e.consume(r),e.exit("referenceMarker"),e.exit("reference"),t):n(r)}}};var xt={name:"lineEnding",tokenize:function(e,t){return function(n){return e.enter("lineEnding"),e.consume(n),e.exit("lineEnding"),j(e,t,"linePrefix")}}};var bt={name:"thematicBreak",tokenize:function(e,t,n){var r,i=0;return function(t){return e.enter("thematicBreak"),r=t,o(t)};function o(s){return s===r?(e.enter("thematicBreakSequence"),a(s)):U(s)?j(e,o,"whitespace")(s):i<3||null!==s&&!N(s)?n(s):(e.exit("thematicBreak"),t(s))}function a(t){return t===r?(e.consume(t),i++,a):(e.exit("thematicBreakSequence"),o(t))}}};var wt=bt,Et={name:"list",tokenize:function(e,t,n){var r=this,i=ee(r.events,"linePrefix"),o=0;return function(t){var i=r.containerState.type||(42===t||43===t||45===t?"listUnordered":"listOrdered");if("listUnordered"===i?!r.containerState.marker||t===r.containerState.marker:Ye(t)){if(r.containerState.type||(r.containerState.type=i,e.enter(i,{_container:!0})),"listUnordered"===i)return e.enter("listItemPrefix"),42===t||45===t?e.check(wt,n,s)(t):s(t);if(!r.interrupt||49===t)return e.enter("listItemPrefix"),e.enter("listItemValue"),a(t)}return n(t)};function a(t){return Ye(t)&&++o<10?(e.consume(t),a):(!r.interrupt||o<2)&&(r.containerState.marker?t===r.containerState.marker:41===t||46===t)?(e.exit("listItemValue"),s(t)):n(t)}function s(t){return e.enter("listItemMarker"),e.consume(t),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||t,e.check(W,r.interrupt?n:u,e.attempt(St,l,c))}function u(e){return r.containerState.initialBlankLine=!0,i++,l(e)}function c(t){return U(t)?(e.enter("listItemPrefixWhitespace"),e.consume(t),e.exit("listItemPrefixWhitespace"),l):n(t)}function l(n){return r.containerState.size=i+X(r.sliceStream(e.exit("listItemPrefix"))),t(n)}},continuation:{tokenize:function(e,t,n){var r=this;return r.containerState._closeFlow=void 0,e.check(W,(function(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,j(e,t,"listItemIndent",r.containerState.size+1)(n)}),(function(n){if(r.containerState.furtherBlankLines||!U(n))return r.containerState.furtherBlankLines=r.containerState.initialBlankLine=void 0,i(n);return r.containerState.furtherBlankLines=r.containerState.initialBlankLine=void 0,e.attempt(Ct,t,i)(n)}));function i(i){return r.containerState._closeFlow=!0,r.interrupt=void 0,j(e,e.attempt(Et,t,n),"linePrefix",r.parser.constructs.disable.null.indexOf("codeIndented")>-1?void 0:4)(i)}}},exit:function(e){e.exit(this.containerState.type)}},St={tokenize:function(e,t,n){var r=this;return j(e,(function(e){return U(e)||!ee(r.events,"listItemPrefixWhitespace")?n(e):t(e)}),"listItemPrefixWhitespace",r.parser.constructs.disable.null.indexOf("codeIndented")>-1?void 0:5)},partial:!0},Ct={tokenize:function(e,t,n){var r=this;return j(e,(function(e){return ee(r.events,"listItemIndent")===r.containerState.size?t(e):n(e)}),"listItemIndent",r.containerState.size+1)},partial:!0};var At={name:"setextUnderline",tokenize:function(e,t,n){var r,i,o=this,a=o.events.length;for(;a--;)if("lineEnding"!==o.events[a][1].type&&"linePrefix"!==o.events[a][1].type&&"content"!==o.events[a][1].type){i="paragraph"===o.events[a][1].type;break}return function(t){if(!o.lazy&&(o.interrupt||i))return e.enter("setextHeadingLine"),e.enter("setextHeadingLineSequence"),r=t,s(t);return n(t)};function s(t){return t===r?(e.consume(t),s):(e.exit("setextHeadingLineSequence"),j(e,u,"lineSuffix")(t))}function u(r){return null===r||N(r)?(e.exit("setextHeadingLine"),t(r)):n(r)}},resolveTo:function(e,t){var n,r,i,o,a=e.length;for(;a--;)if("enter"===e[a][0]){if("content"===e[a][1].type){n=a;break}"paragraph"===e[a][1].type&&(r=a)}else"content"===e[a][1].type&&e.splice(a,1),i||"definition"!==e[a][1].type||(i=a);o={type:"setextHeading",start:re(e[r][1].start),end:re(e[e.length-1][1].end)},e[r][1].type="setextHeadingText",i?(e.splice(r,0,["enter",o,t]),e.splice(i+1,0,["exit",e[n][1],t]),e[n][1].end=re(e[i][1].end)):e[n][1]=o;return e.push(["exit",o,t]),e}};var Dt={38:Xe,92:Ge},Tt={"-5":xt,"-4":xt,"-3":xt,33:{name:"labelStartImage",tokenize:function(e,t,n){var r=this;return function(t){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(t),e.exit("labelImageMarker"),i};function i(t){return 91===t?(e.enter("labelMarker"),e.consume(t),e.exit("labelMarker"),e.exit("labelImage"),o):n(t)}function o(e){return 94===e&&"_hiddenFootnoteSupport"in r.parser.constructs?n(e):t(e)}},resolveAll:mt.resolveAll},38:Xe,42:Oe,60:[Ne,gt],91:{name:"labelStartLink",tokenize:function(e,t,n){var r=this;return function(t){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(t),e.exit("labelMarker"),e.exit("labelLink"),i};function i(e){return 94===e&&"_hiddenFootnoteSupport"in r.parser.constructs?n(e):t(e)}},resolveAll:mt.resolveAll},92:[{name:"hardBreakEscape",tokenize:function(e,t,n){return function(t){return e.enter("hardBreakEscape"),e.enter("escapeMarker"),e.consume(t),r};function r(r){return N(r)?(e.exit("escapeMarker"),e.exit("hardBreakEscape"),t(r)):n(r)}}},Ge],93:mt,95:Oe,96:rt},qt={91:ut},Lt={null:[]},Ft={42:Et,43:Et,45:Et,48:Et,49:Et,50:Et,51:Et,52:Et,53:Et,54:Et,55:Et,56:Et,57:Et,62:je},It={35:lt,42:wt,45:[At,wt],60:ht,61:At,95:wt,96:et,126:et},Pt={"-2":tt,"-1":tt,32:tt},Rt={null:[Oe,ke.resolver]},Vt=Dt,Ot=Tt,Bt=Object.defineProperty({contentInitial:qt,disable:Lt,document:Ft,flow:It,flowInitial:Pt,insideSpan:Rt,string:Vt,text:Ot},"__esModule",{value:!0});var zt=function(e){var t={defined:[],constructs:Ee([Bt].concat(xe((e||{}).extensions))),content:n($),document:n(K),flow:n(le),string:n(ke.string),text:n(ke.text)};return t;function n(e){return function(n){return Te(t,e,n)}}},Mt=/[\0\t\n\r]/g;var _t=function(){var e,t=!0,n=1,r="";return function(i,o,a){var s,u,c,l,f,d=[];i=r+i.toString(o),c=0,r="",t&&(65279===i.charCodeAt(0)&&c++,t=void 0);for(;c<i.length;){if(Mt.lastIndex=c,l=(s=Mt.exec(i))?s.index:i.length,f=i.charCodeAt(l),!s){r=i.slice(c);break}if(10===f&&c===l&&e)d.push(-3),e=void 0;else if(e&&(d.push(-5),e=void 0),c<l&&(d.push(i.slice(c,l)),n+=l-c),0===f)d.push(65533),n++;else if(9===f)for(u=4*Math.ceil(n/4),d.push(-2);n++<u;)d.push(-1);else 10===f?(d.push(-4),n=1):(e=!0,n=1);c=l+1}a&&(e&&d.push(-5),r&&d.push(r),d.push(null));return d}};var Nt=function(e){for(;!oe(e););return e},Ut={}.hasOwnProperty,jt=function(e){if(!e||"object"!=typeof e)return"";if(Ut.call(e,"position")||Ut.call(e,"type"))return Gt(e.position);if(Ut.call(e,"start")||Ut.call(e,"end"))return Gt(e);if(Ut.call(e,"line")||Ut.call(e,"column"))return Ht(e);return""};function Ht(e){return e&&"object"==typeof e||(e={}),$t(e.line)+":"+$t(e.column)}function Gt(e){return e&&"object"==typeof e||(e={}),Ht(e.start)+"-"+Ht(e.end)}function $t(e){return e&&"number"==typeof e?e:1}var Wt=function(e,t,n){"string"!=typeof t&&(n=t,t=void 0);return function(e){var t=e||{},n=function(e,t){var n=-1;for(;++n<t.length;)Qt(e,t[n]);return e}({transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:c(ce),autolinkProtocol:q,autolinkEmail:q,atxHeading:c(oe),blockQuote:c(ee),characterEscape:q,characterReference:q,codeFenced:c(te),codeFencedFenceInfo:l,codeFencedFenceMeta:l,codeIndented:c(te,l),codeText:c(ne,l),codeTextData:q,data:q,codeFlowValue:q,definition:c(re),definitionDestinationString:l,definitionLabelString:l,definitionTitleString:l,emphasis:c(ie),hardBreakEscape:c(ae),hardBreakTrailing:c(ae),htmlFlow:c(se,l),htmlFlowData:q,htmlText:c(se,l),htmlTextData:q,image:c(ue),label:l,link:c(ce),listItem:c(fe),listItemValue:m,listOrdered:c(le,g),listUnordered:c(le),paragraph:c(de),reference:Q,referenceString:l,resourceDestinationString:l,resourceTitleString:l,setextHeading:c(oe),strong:c(he),thematicBreak:c(ge)},exit:{atxHeading:d(),atxHeadingSequence:C,autolink:d(),autolinkEmail:X,autolinkProtocol:K,blockQuote:d(),characterEscapeValue:L,characterReferenceMarkerHexadecimal:J,characterReferenceMarkerNumeric:J,characterReferenceValue:Z,codeFenced:d(x),codeFencedFence:k,codeFencedFenceInfo:v,codeFencedFenceMeta:y,codeFlowValue:L,codeIndented:d(b),codeText:d(M),codeTextData:L,data:L,definition:d(),definitionDestinationString:S,definitionLabelString:w,definitionTitleString:E,emphasis:d(),hardBreakEscape:d(I),hardBreakTrailing:d(I),htmlFlow:d(R),htmlFlowData:L,htmlText:d(V),htmlTextData:L,image:d(U),label:H,labelText:j,lineEnding:F,link:d(N),listItem:d(),listOrdered:d(),listUnordered:d(),paragraph:d(),referenceString:Y,resourceDestinationString:G,resourceTitleString:$,resource:W,setextHeading:d(T),setextHeadingLineSequence:D,setextHeadingText:A,strong:d(),thematicBreak:d()}},t.mdastExtensions||[]),r={};return i;function i(e){for(var t,r={type:"root",children:[]},i=[],c=[],d=-1,g={stack:[r],tokenStack:i,config:n,enter:f,exit:h,buffer:l,resume:p,setData:a,getData:s};++d<e.length;)"listOrdered"!==e[d][1].type&&"listUnordered"!==e[d][1].type||("enter"===e[d][0]?c.push(d):d=o(e,c.pop(d),d));for(d=-1;++d<e.length;)t=n[e[d][0]],B.call(t,e[d][1].type)&&t[e[d][1].type].call(O({sliceSerialize:e[d][2].sliceSerialize},g),e[d][1]);if(i.length)throw new Error("Cannot close document, a token (`"+i[i.length-1].type+"`, "+jt({start:i[i.length-1].start,end:i[i.length-1].end})+") is still open");for(r.position={start:u(e.length?e[0][1].start:{line:1,column:1,offset:0}),end:u(e.length?e[e.length-2][1].end:{line:1,column:1,offset:0})},d=-1;++d<n.transforms.length;)r=n.transforms[d](r)||r;return r}function o(e,t,n){for(var r,i,o,a,s,c,l,f=t-1,d=-1,h=!1;++f<=n;)if("listUnordered"===(s=e[f])[1].type||"listOrdered"===s[1].type||"blockQuote"===s[1].type?("enter"===s[0]?d++:d--,l=void 0):"lineEndingBlank"===s[1].type?"enter"===s[0]&&(!r||l||d||c||(c=f),l=void 0):"linePrefix"===s[1].type||"listItemValue"===s[1].type||"listItemMarker"===s[1].type||"listItemPrefix"===s[1].type||"listItemPrefixWhitespace"===s[1].type||(l=void 0),!d&&"enter"===s[0]&&"listItemPrefix"===s[1].type||-1===d&&"exit"===s[0]&&("listUnordered"===s[1].type||"listOrdered"===s[1].type)){if(r){for(i=f,o=void 0;i--;)if("lineEnding"===(a=e[i])[1].type||"lineEndingBlank"===a[1].type){if("exit"===a[0])continue;o&&(e[o][1].type="lineEndingBlank",h=!0),a[1].type="lineEnding",o=i}else if("linePrefix"!==a[1].type&&"blockQuotePrefix"!==a[1].type&&"blockQuotePrefixWhitespace"!==a[1].type&&"blockQuoteMarker"!==a[1].type&&"listItemIndent"!==a[1].type)break;c&&(!o||c<o)&&(r._spread=!0),r.end=u(o?e[o][1].start:s[1].end),e.splice(o||f,0,["exit",r,s[2]]),f++,n++}"listItemPrefix"===s[1].type&&(r={type:"listItem",_spread:!1,start:u(s[1].start)},e.splice(f,0,["enter",r,s[2]]),f++,n++,c=void 0,l=!0)}return e[t][1]._spread=h,n}function a(e,t){r[e]=t}function s(e){return r[e]}function u(e){return{line:e.line,column:e.column,offset:e.offset}}function c(e,t){return n;function n(n){f.call(this,e(n),n),t&&t.call(this,n)}}function l(){this.stack.push({type:"fragment",children:[]})}function f(e,t){return this.stack[this.stack.length-1].children.push(e),this.stack.push(e),this.tokenStack.push(t),e.position={start:u(t.start)},e}function d(e){return t;function t(t){e&&e.call(this,t),h.call(this,t)}}function h(e){var t=this.stack.pop(),n=this.tokenStack.pop();if(!n)throw new Error("Cannot close `"+e.type+"` ("+jt({start:e.start,end:e.end})+"): it’s not open");if(n.type!==e.type)throw new Error("Cannot close `"+e.type+"` ("+jt({start:e.start,end:e.end})+"): a different token (`"+n.type+"`, "+jt({start:n.start,end:n.end})+") is open");return t.position.end=u(e.end),t}function p(){return P(this.stack.pop())}function g(){a("expectingFirstListItemValue",!0)}function m(e){s("expectingFirstListItemValue")&&(this.stack[this.stack.length-2].start=parseInt(this.sliceSerialize(e),10),a("expectingFirstListItemValue"))}function v(){var e=this.resume();this.stack[this.stack.length-1].lang=e}function y(){var e=this.resume();this.stack[this.stack.length-1].meta=e}function k(){s("flowCodeInside")||(this.buffer(),a("flowCodeInside",!0))}function x(){var e=this.resume();this.stack[this.stack.length-1].value=e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),a("flowCodeInside")}function b(){var e=this.resume();this.stack[this.stack.length-1].value=e}function w(e){var t=this.resume();this.stack[this.stack.length-1].label=t,this.stack[this.stack.length-1].identifier=z(this.sliceSerialize(e)).toLowerCase()}function E(){var e=this.resume();this.stack[this.stack.length-1].title=e}function S(){var e=this.resume();this.stack[this.stack.length-1].url=e}function C(e){this.stack[this.stack.length-1].depth||(this.stack[this.stack.length-1].depth=this.sliceSerialize(e).length)}function A(){a("setextHeadingSlurpLineEnding",!0)}function D(e){this.stack[this.stack.length-1].depth=61===this.sliceSerialize(e).charCodeAt(0)?1:2}function T(){a("setextHeadingSlurpLineEnding")}function q(e){var t=this.stack[this.stack.length-1].children,n=t[t.length-1];n&&"text"===n.type||((n=pe()).position={start:u(e.start)},this.stack[this.stack.length-1].children.push(n)),this.stack.push(n)}function L(e){var t=this.stack.pop();t.value+=this.sliceSerialize(e),t.position.end=u(e.end)}function F(e){var t=this.stack[this.stack.length-1];if(s("atHardBreak"))return t.children[t.children.length-1].position.end=u(e.end),void a("atHardBreak");!s("setextHeadingSlurpLineEnding")&&n.canContainEols.indexOf(t.type)>-1&&(q.call(this,e),L.call(this,e))}function I(){a("atHardBreak",!0)}function R(){var e=this.resume();this.stack[this.stack.length-1].value=e}function V(){var e=this.resume();this.stack[this.stack.length-1].value=e}function M(){var e=this.resume();this.stack[this.stack.length-1].value=e}function N(){var e=this.stack[this.stack.length-1];s("inReference")?(e.type+="Reference",e.referenceType=s("referenceType")||"shortcut",delete e.url,delete e.title):(delete e.identifier,delete e.label,delete e.referenceType),a("referenceType")}function U(){var e=this.stack[this.stack.length-1];s("inReference")?(e.type+="Reference",e.referenceType=s("referenceType")||"shortcut",delete e.url,delete e.title):(delete e.identifier,delete e.label,delete e.referenceType),a("referenceType")}function j(e){this.stack[this.stack.length-2].identifier=z(this.sliceSerialize(e)).toLowerCase()}function H(){var e=this.stack[this.stack.length-1],t=this.resume();this.stack[this.stack.length-1].label=t,a("inReference",!0),"link"===this.stack[this.stack.length-1].type?this.stack[this.stack.length-1].children=e.children:this.stack[this.stack.length-1].alt=t}function G(){var e=this.resume();this.stack[this.stack.length-1].url=e}function $(){var e=this.resume();this.stack[this.stack.length-1].title=e}function W(){a("inReference")}function Q(){a("referenceType","collapsed")}function Y(e){var t=this.resume();this.stack[this.stack.length-1].label=t,this.stack[this.stack.length-1].identifier=z(this.sliceSerialize(e)).toLowerCase(),a("referenceType","full")}function J(e){a("characterReferenceType",e.type)}function Z(e){var t,n,r=this.sliceSerialize(e),i=s("characterReferenceType");i?(t=_(r,"characterReferenceMarkerNumeric"===i?10:16),a("characterReferenceType")):t=We(r),(n=this.stack.pop()).value+=t,n.position.end=u(e.end)}function K(e){L.call(this,e),this.stack[this.stack.length-1].url=this.sliceSerialize(e)}function X(e){L.call(this,e),this.stack[this.stack.length-1].url="mailto:"+this.sliceSerialize(e)}function ee(){return{type:"blockquote",children:[]}}function te(){return{type:"code",lang:null,meta:null,value:""}}function ne(){return{type:"inlineCode",value:""}}function re(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function ie(){return{type:"emphasis",children:[]}}function oe(){return{type:"heading",depth:void 0,children:[]}}function ae(){return{type:"break"}}function se(){return{type:"html",value:""}}function ue(){return{type:"image",title:null,url:"",alt:null}}function ce(){return{type:"link",title:null,url:"",children:[]}}function le(e){return{type:"list",ordered:"listOrdered"===e.type,start:null,spread:e._spread,children:[]}}function fe(e){return{type:"listItem",spread:e._spread,checked:null,children:[]}}function de(){return{type:"paragraph",children:[]}}function he(){return{type:"strong",children:[]}}function pe(){return{type:"text",value:""}}function ge(){return{type:"thematicBreak"}}}(n)(Nt(zt(n).document().write(_t()(e,t,!0))))};function Qt(e,t){var n,r;for(n in t)r=B.call(e,n)?e[n]:e[n]={},"canContainEols"===n||"transforms"===n?e[n]=[].concat(r,t[n]):Object.assign(r,t[n])}var Yt=Wt,Jt=function(e){var t=this;this.Parser=function(n){return Yt(n,Object.assign({},t.data("settings"),e,{extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]}))}};var Zt=function(e){if(e)throw e}
|
||
/*!
|
||
* Determine if an object is a Buffer
|
||
*
|
||
* @author Feross Aboukhadijeh <https://feross.org>
|
||
* @license MIT
|
||
*/;var Kt=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},Xt=Object.prototype.hasOwnProperty,en=Object.prototype.toString,tn=Object.defineProperty,nn=Object.getOwnPropertyDescriptor,rn=function(e){return"function"==typeof Array.isArray?Array.isArray(e):"[object Array]"===en.call(e)},on=function(e){if(!e||"[object Object]"!==en.call(e))return!1;var t,n=Xt.call(e,"constructor"),r=e.constructor&&e.constructor.prototype&&Xt.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!n&&!r)return!1;for(t in e);return void 0===t||Xt.call(e,t)},an=function(e,t){tn&&"__proto__"===t.name?tn(e,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):e[t.name]=t.newValue},sn=function(e,t){if("__proto__"===t){if(!Xt.call(e,t))return;if(nn)return nn(e,t).value}return e[t]},un=function e(){var t,n,r,i,o,a,s=arguments[0],u=1,c=arguments.length,l=!1;for("boolean"==typeof s&&(l=s,s=arguments[1]||{},u=2),(null==s||"object"!=typeof s&&"function"!=typeof s)&&(s={});u<c;++u)if(null!=(t=arguments[u]))for(n in t)r=sn(s,n),s!==(i=sn(t,n))&&(l&&i&&(on(i)||(o=rn(i)))?(o?(o=!1,a=r&&rn(r)?r:[]):a=r&&on(r)?r:{},an(s,{name:n,newValue:e(l,a,i)})):void 0!==i&&an(s,{name:n,newValue:i}));return s},cn=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype},ln=[].slice,fn=function(e,t){var n;return function(){var t,o=ln.call(arguments,0),a=e.length>o.length;a&&o.push(r);try{t=e.apply(null,o)}catch(e){if(a&&n)throw e;return r(e)}a||(t&&"function"==typeof t.then?t.then(i,r):t instanceof Error?r(t):i(t))};function r(){n||(n=!0,t.apply(null,arguments))}function i(e){r(null,e)}};var dn=pn;pn.wrap=fn;var hn=[].slice;function pn(){var e=[],t={run:function(){var t=-1,n=hn.call(arguments,0,-1),r=arguments[arguments.length-1];if("function"!=typeof r)throw new Error("Expected function as last argument, not "+r);(function i(o){var a=e[++t],s=hn.call(arguments,0).slice(1),u=n.length,c=-1;if(o)r(o);else{for(;++c<u;)null!==s[c]&&void 0!==s[c]||(s[c]=n[c]);n=s,a?fn(a,i).apply(null,n):r.apply(null,[null].concat(n))}}).apply(null,[null].concat(n))},use:function(n){if("function"!=typeof n)throw new Error("Expected `fn` to be a function, not "+n);return e.push(n),t}};return t}var gn=yn;function mn(){}mn.prototype=Error.prototype,yn.prototype=new mn;var vn=yn.prototype;function yn(e,t,n){var r,i,o;"string"==typeof t&&(n=t,t=null),r=function(e){var t,n=[null,null];"string"==typeof e&&(-1===(t=e.indexOf(":"))?n[1]=e:(n[0]=e.slice(0,t),n[1]=e.slice(t+1)));return n}(n),i=jt(t)||"1:1",o={start:{line:null,column:null},end:{line:null,column:null}},t&&t.position&&(t=t.position),t&&(t.start?(o=t,t=t.start):o.start=t),e.stack&&(this.stack=e.stack,e=e.message),this.message=e,this.name=i,this.reason=e,this.line=t?t.line:null,this.column=t?t.column:null,this.location=o,this.source=r[0],this.ruleId=r[1]}vn.file="",vn.name="",vn.reason="",vn.message="",vn.stack="",vn.fatal=null,vn.column=null,vn.line=null;var kn=a.default,xn="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{};function bn(){throw new Error("setTimeout has not been defined")}function wn(){throw new Error("clearTimeout has not been defined")}var En=bn,Sn=wn;function Cn(e){if(En===setTimeout)return setTimeout(e,0);if((En===bn||!En)&&setTimeout)return En=setTimeout,setTimeout(e,0);try{return En(e,0)}catch(t){try{return En.call(null,e,0)}catch(t){return En.call(this,e,0)}}}"function"==typeof xn.setTimeout&&(En=setTimeout),"function"==typeof xn.clearTimeout&&(Sn=clearTimeout);var An,Dn=[],Tn=!1,qn=-1;function Ln(){Tn&&An&&(Tn=!1,An.length?Dn=An.concat(Dn):qn=-1,Dn.length&&Fn())}function Fn(){if(!Tn){var e=Cn(Ln);Tn=!0;for(var t=Dn.length;t;){for(An=Dn,Dn=[];++qn<t;)An&&An[qn].run();qn=-1,t=Dn.length}An=null,Tn=!1,function(e){if(Sn===clearTimeout)return clearTimeout(e);if((Sn===wn||!Sn)&&clearTimeout)return Sn=clearTimeout,clearTimeout(e);try{return Sn(e)}catch(t){try{return Sn.call(null,e)}catch(t){return Sn.call(this,e)}}}(e)}}function In(e,t){this.fun=e,this.array=t}In.prototype.run=function(){this.fun.apply(null,this.array)};function Pn(){}var Rn=Pn,Vn=Pn,On=Pn,Bn=Pn,zn=Pn,Mn=Pn,_n=Pn;var Nn=xn.performance||{},Un=Nn.now||Nn.mozNow||Nn.msNow||Nn.oNow||Nn.webkitNow||function(){return(new Date).getTime()};var jn=new Date;var Hn={nextTick:function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];Dn.push(new In(e,t)),1!==Dn.length||Tn||Cn(Fn)},title:"browser",browser:!0,env:{},argv:[],version:"",versions:{},on:Rn,addListener:Vn,once:On,off:Bn,removeListener:zn,removeAllListeners:Mn,emit:_n,binding:function(e){throw new Error("process.binding is not supported")},cwd:function(){return"/"},chdir:function(e){throw new Error("process.chdir is not supported")},umask:function(){return 0},hrtime:function(e){var t=.001*Un.call(Nn),n=Math.floor(t),r=Math.floor(t%1*1e9);return e&&(n-=e[0],(r-=e[1])<0&&(n--,r+=1e9)),[n,r]},platform:"browser",release:{},config:{},uptime:function(){return(new Date-jn)/1e3}},Gn=Qn,$n={}.hasOwnProperty,Wn=["history","path","basename","stem","extname","dirname"];function Qn(e){var t,n;if(e){if("string"==typeof e||Kt(e))e={contents:e};else if("message"in e&&"messages"in e)return e}else e={};if(!(this instanceof Qn))return new Qn(e);for(this.data={},this.messages=[],this.history=[],this.cwd=Hn.cwd(),n=-1;++n<Wn.length;)t=Wn[n],$n.call(e,t)&&(this[t]=e[t]);for(t in e)Wn.indexOf(t)<0&&(this[t]=e[t])}function Yn(e,t){if(e&&e.indexOf(kn.sep)>-1)throw new Error("`"+t+"` cannot be a path: did not expect `"+kn.sep+"`")}function Jn(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function Zn(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}Qn.prototype.toString=function(e){return(this.contents||"").toString(e)},Object.defineProperty(Qn.prototype,"path",{get:function(){return this.history[this.history.length-1]},set:function(e){Jn(e,"path"),this.path!==e&&this.history.push(e)}}),Object.defineProperty(Qn.prototype,"dirname",{get:function(){return"string"==typeof this.path?kn.dirname(this.path):void 0},set:function(e){Zn(this.path,"dirname"),this.path=kn.join(e||"",this.basename)}}),Object.defineProperty(Qn.prototype,"basename",{get:function(){return"string"==typeof this.path?kn.basename(this.path):void 0},set:function(e){Jn(e,"basename"),Yn(e,"basename"),this.path=kn.join(this.dirname||"",e)}}),Object.defineProperty(Qn.prototype,"extname",{get:function(){return"string"==typeof this.path?kn.extname(this.path):void 0},set:function(e){if(Yn(e,"extname"),Zn(this.path,"extname"),e){if(46!==e.charCodeAt(0))throw new Error("`extname` must start with `.`");if(e.indexOf(".",1)>-1)throw new Error("`extname` cannot contain multiple dots")}this.path=kn.join(this.dirname,this.stem+(e||""))}}),Object.defineProperty(Qn.prototype,"stem",{get:function(){return"string"==typeof this.path?kn.basename(this.path,this.extname):void 0},set:function(e){Jn(e,"stem"),Yn(e,"stem"),this.path=kn.join(this.dirname||"",e+(this.extname||""))}});var Kn=Gn;Gn.prototype.message=function(e,t,n){var r=new gn(e,t,n);this.path&&(r.name=this.path+":"+r.name,r.file=this.path);return r.fatal=!1,this.messages.push(r),r},Gn.prototype.info=function(){var e=this.message.apply(this,arguments);return e.fatal=null,e},Gn.prototype.fail=function(){var e=this.message.apply(this,arguments);throw e.fatal=!0,e};var Xn=Kn,er=function e(){var t,n=[],r=dn(),i={},o=-1;return a.data=function(e,n){if("string"==typeof e)return 2===arguments.length?(sr("data",t),i[e]=n,a):nr.call(i,e)&&i[e]||null;if(e)return sr("data",t),i=e,a;return i},a.freeze=s,a.attachers=n,a.use=function(e){var r;if(sr("use",t),null==e);else if("function"==typeof e)l.apply(null,arguments);else{if("object"!=typeof e)throw new Error("Expected usable value, not `"+e+"`");"length"in e?c(e):o(e)}r&&(i.settings=un(i.settings||{},r));return a;function o(e){c(e.plugins),e.settings&&(r=un(r||{},e.settings))}function s(e){if("function"==typeof e)l(e);else{if("object"!=typeof e)throw new Error("Expected usable value, not `"+e+"`");"length"in e?l.apply(null,e):o(e)}}function c(e){var t=-1;if(null==e);else{if("object"!=typeof e||!("length"in e))throw new Error("Expected a list of plugins, not `"+e+"`");for(;++t<e.length;)s(e[t])}}function l(e,t){var r=u(e);r?(cn(r[1])&&cn(t)&&(t=un(!0,r[1],t)),r[1]=t):n.push(tr.call(arguments))}},a.parse=function(e){var t,n=Xn(e);if(s(),or("parse",t=a.Parser),ir(t,"parse"))return new t(String(n),n).parse();return t(String(n),n)},a.stringify=function(e,t){var n,r=Xn(t);if(s(),ar("stringify",n=a.Compiler),ur(e),ir(n,"compile"))return new n(e,r).compile();return n(e,r)},a.run=c,a.runSync=function(e,t){var n,r;return c(e,t,i),cr("runSync","run",r),n;function i(e,t){r=!0,n=t,Zt(e)}},a.process=l,a.processSync=function(e){var t,n;return s(),or("processSync",a.Parser),ar("processSync",a.Compiler),l(t=Xn(e),r),cr("processSync","process",n),t;function r(e){n=!0,Zt(e)}},a;function a(){for(var t=e(),r=-1;++r<n.length;)t.use.apply(null,n[r]);return t.data(un(!0,{},i)),t}function s(){var e,i;if(t)return a;for(;++o<n.length;)!1!==(e=n[o])[1]&&(!0===e[1]&&(e[1]=void 0),"function"==typeof(i=e[0].apply(a,e.slice(1)))&&r.use(i));return t=!0,o=1/0,a}function u(e){for(var t=-1;++t<n.length;)if(n[t][0]===e)return n[t]}function c(e,t,n){if(ur(e),s(),n||"function"!=typeof t||(n=t,t=null),!n)return new Promise(i);function i(i,o){r.run(e,Xn(t),(function(t,r,a){r=r||e,t?o(t):i?i(r):n(null,r,a)}))}i(null,n)}function l(e,t){if(s(),or("process",a.Parser),ar("process",a.Compiler),!t)return new Promise(n);function n(n,r){var i=Xn(e);rr.run(a,{file:i},(function(e){e?r(e):n?n(i):t(null,i)}))}n(null,t)}}().freeze(),tr=[].slice,nr={}.hasOwnProperty,rr=dn().use((function(e,t){t.tree=e.parse(t.file)})).use((function(e,t,n){e.run(t.tree,t.file,(function(e,r,i){e?n(e):(t.tree=r,t.file=i,n())}))})).use((function(e,t){var n=e.stringify(t.tree,t.file);null==n||("string"==typeof n||Kt(n)?("value"in t.file&&(t.file.value=n),t.file.contents=n):t.file.result=n)}));function ir(e,t){return"function"==typeof e&&e.prototype&&(function(e){var t;for(t in e)return!0;return!1}(e.prototype)||t in e.prototype)}function or(e,t){if("function"!=typeof t)throw new Error("Cannot `"+e+"` without `Parser`")}function ar(e,t){if("function"!=typeof t)throw new Error("Cannot `"+e+"` without `Compiler`")}function sr(e,t){if(t)throw new Error("Cannot invoke `"+e+"` on a frozen processor.\nCreate a new processor first, by invoking it: use `processor()` instead of `processor`.")}function ur(e){if(!e||"string"!=typeof e.type)throw new Error("Expected node, got `"+e+"`")}function cr(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}var lr=c((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.defaults=t.build=void 0;const n={children:e=>l.defaults.children(e),annotatetextnode:(e,t)=>l.defaults.annotatetextnode(e,t),interpretmarkup:(e="")=>"\n".repeat((e.match(/\n/g)||[]).length),remarkoptions:{}};t.defaults=n,t.build=function(e,t=n){const r=er().use(Jt,t.remarkoptions).use(I,["yaml","toml"]);return l.build(e,r.parse,t)}}));const fr=/frontmatter|code|math|templater|blockid|hashtag|internal/;function dr(e){let t=0;if(0===e.length)return t;for(let n=0;n<e.length;n++){t=(t<<5)-t+e.charCodeAt(n),t&=t}return t}function hr(e){switch(e){case"COLLOQUIALISMS":case"REDUNDANCY":case"STYLE":return"lt-style";case"PUNCTUATION":case"TYPOS":return"lt-major"}return"lt-minor"}const pr=[];let gr="ok";const mr=/^\s*(-|\d+\.) $/m;function vr(t,n){return s(this,void 0,void 0,(function*(){const r=lr.build(t,Object.assign(Object.assign({},lr.defaults),{interpretmarkup(e=""){var t,n;if(/^`[^`]+`$/.test(e))return e;const r="\n".repeat(null!==(n=null===(t=e.match(/\n/g)||[])||void 0===t?void 0:t.length)&&void 0!==n?n:0);return mr.exec(e)?`${r}• `:r}})),i=n(),{enabledCategories:o,disabledCategories:a}=function(e){return{enabledCategories:e.ruleOtherCategories?e.ruleOtherCategories.split(","):[],disabledCategories:e.ruleOtherDisabledRules?e.ruleOtherDisabledRules.split(","):[]}}(i),u={data:JSON.stringify(r),language:"auto",enabledOnly:"false",level:i.pickyMode?"picky":"default"};let c,l;o.length&&(u.enabledCategories=o.join(",")),a.length&&(u.disabledCategories=a.join(",")),i.ruleOtherRules&&(u.enabledRules=i.ruleOtherRules),i.ruleOtherDisabledRules&&(u.disabledRules=i.ruleOtherDisabledRules),i.englishVeriety&&(u.preferredVariants=`${u.preferredVariants?`${u.preferredVariants},`:""}${i.englishVeriety}`),i.germanVeriety&&(u.preferredVariants=`${u.preferredVariants?`${u.preferredVariants},`:""}${i.germanVeriety}`),i.portugueseVeriety&&(u.preferredVariants=`${u.preferredVariants?`${u.preferredVariants},`:""}${i.portugueseVeriety}`),i.catalanVeriety&&(u.preferredVariants=`${u.preferredVariants?`${u.preferredVariants},`:""}${i.catalanVeriety}`),i.apikey&&i.username&&i.apikey.length>1&&i.username.length>1&&(u.username=i.username,u.apiKey=i.apikey),i.staticLanguage&&i.staticLanguage.length>0&&"auto"!==i.staticLanguage&&(u.language=i.staticLanguage),i.motherTongue&&i.motherTongue.length>0&&(u.motherTongue=i.motherTongue);try{c=yield fetch(`${i.serverUrl}/v2/check`,{method:"POST",body:Object.keys(u).map((e=>`${encodeURIComponent(e)}=${encodeURIComponent(u[e])}`)).join("&"),headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"}})}catch(t){const n="request-failed";return gr===n&&i.shouldAutoCheck||(new e.Notice("Request to LanguageTool server failed. Please check your connection and LanguageTool server URL",3e3),gr=n),Promise.reject(t)}if(!c.ok){const t="request-not-ok";return yield function(e,t){var n,r;return s(this,void 0,void 0,(function*(){let i=`${(new Date).toLocaleString()}:\n url used for request: ${e.url}\n Status: ${e.status}\n Body: ${(yield e.text()).slice(0,200)}\n Settings: ${JSON.stringify(Object.assign(Object.assign({},t),{username:"REDACTED",apikey:"REDACTED"}))}\n `;(t.username||t.apikey)&&(i=i.replaceAll(null!==(n=t.username)&&void 0!==n?n:"username","<<username>>").replaceAll(null!==(r=t.apikey)&&void 0!==r?r:"apiKey","<<apikey>>")),pr.push(i),pr.length>10&&pr.shift()}))}(c,i),gr===t&&i.shouldAutoCheck||(new e.Notice(`Request to LanguageTool failed\n${c.statusText}Check Plugin Settings for Logs`,3e3),gr=t),Promise.reject(new Error(`unexpected status ${c.status}, see network tab`))}try{l=yield c.json()}catch(t){const n="json-parse-error";return gr===n&&i.shouldAutoCheck||(new e.Notice("Error processing response from LanguageTool server",3e3),gr=n),Promise.reject(t)}return"ok"===gr&&i.shouldAutoCheck||(new e.Notice("LanguageTool detection restored",5e3),gr="ok"),l}))}const yr=3e3,kr={serverUrl:"https://api.languagetool.org",urlMode:"standard",glassBg:!1,shouldAutoCheck:!1,autoCheckDelay:yr,pickyMode:!1};function xr(e){return"standard"===e?"https://api.languagetool.org":"premium"===e?"https://api.languagetoolplus.com":""}class br extends e.PluginSettingTab{constructor(e,t){super(e,t),this.plugin=t}configureAutoCheckDelaySlider(e,t){const n=function(e){return"standard"===e?yr:"premium"===e?750:50}(t);this.plugin.settings.autoCheckDelay<n&&(this.plugin.settings.autoCheckDelay=yr),null==e||e.setLimits(n,5e3,50)}requestLanguages(){return s(this,void 0,void 0,(function*(){if(this.languages)return this.languages;const e=yield fetch(`${this.plugin.settings.serverUrl}/v2/languages`).then((e=>e.json()));return this.languages=e,this.languages}))}display(){const{containerEl:t}=this;let n=null,r=null;t.empty(),t.createEl("h2",{text:"Settings for LanguageTool"});const i=t.createEl("button",{text:"Copy failed Request Logs"});i.onclick=()=>s(this,void 0,void 0,(function*(){yield window.navigator.clipboard.writeText(pr.join("\n")),new e.Notice("Logs copied to clipboard")})),i.style.marginBottom="5px",new e.Setting(t).setName("Endpoint").setDesc("Endpoint that will be used to make requests to").then((e=>{e.controlEl.style.display="inline-grid";let t=null;e.addDropdown((e=>{n=e,e.addOptions({standard:"(Standard) api.languagetool.org",premium:"(Premium) api.languagetoolplus.com",custom:"Custom URL"}).setValue(this.plugin.settings.urlMode).onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.urlMode=e,this.plugin.settings.serverUrl=xr(e),null==t||t.setValue(this.plugin.settings.serverUrl),null==t||t.setDisabled("custom"!==e),this.configureAutoCheckDelaySlider(r,e),yield this.plugin.saveSettings()}))))})),e.addText((e=>{t=e,e.setPlaceholder("https://your-custom-url.com").setValue(this.plugin.settings.serverUrl).setDisabled("custom"===this.plugin.settings.urlMode).onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.serverUrl=e.replace(/\/v2\/check\/$/,"").replace(/\/$/,""),yield this.plugin.saveSettings()}))))}))})),new e.Setting(t).setName("API Username").setDesc("Enter a username/email for API Access").addText((e=>e.setPlaceholder("peterlustig@gmail.com").setValue(this.plugin.settings.username||"").onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.username=e.replace(/\s+/g,""),yield this.plugin.saveSettings()})))))).then((e=>{e.descEl.createEl("br"),e.descEl.createEl("a",{text:"Click here for information about Premium Access",href:"https://github.com/Clemens-E/obsidian-languagetool-plugin#premium-accounts"},(e=>{e.setAttr("target","_blank")}))}));let o,a,u,c,l,f=!1;new e.Setting(t).setName("API Key").setDesc("Enter an API Key").addText((t=>t.setValue(this.plugin.settings.apikey||"").onChange((t=>s(this,void 0,void 0,(function*(){if(this.plugin.settings.apikey=t.replace(/\s+/g,""),this.plugin.settings.apikey.length>0&&"premium"!==this.plugin.settings.urlMode&&!f){const r=new e.Modal(this.app);r.titleEl.createEl("span",{text:"Warning"}),r.contentEl.createEl("p",{text:"You have entered an API Key but you are not using the Premium Endpoint"}),r.contentEl.style.display="grid";const i=r.contentEl.createEl("div",{attr:{style:"justify-self:center"}});i.createEl("button",{text:"I know what I'm doing",attr:{style:"justify-self:flex-start; color:red;"}}).onclick=()=>{f=!0,r.close()},i.createEl("button",{text:"Change to Premium",attr:{style:"justify-self:flex-end"}}).onclick=()=>s(this,void 0,void 0,(function*(){return this.plugin.settings.urlMode="premium",null==n||n.setValue("premium"),this.plugin.settings.serverUrl=xr(t),yield this.plugin.saveSettings(),r.close()})),r.open()}yield this.plugin.saveSettings()})))))).then((e=>{e.descEl.createEl("br"),e.descEl.createEl("a",{text:"Click here for information about Premium Access",href:"https://github.com/Clemens-E/obsidian-languagetool-plugin#premium-accounts"},(e=>{e.setAttr("target","_blank")}))})),new e.Setting(t).setName("Autocheck Text").setDesc("Check text as you type").addToggle((e=>{e.setValue(this.plugin.settings.shouldAutoCheck).onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.shouldAutoCheck=e,yield this.plugin.saveSettings()}))))})),new e.Setting(t).setName("AutoCheck Delay (ms)").setDesc("Length of time to wait for AutoCheck after last key press").addSlider((e=>{r=e,n&&this.configureAutoCheckDelaySlider(r,n.getValue()),e.setValue(this.plugin.settings.autoCheckDelay).onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.autoCheckDelay=e,yield this.plugin.saveSettings()})))),e.setDynamicTooltip()})),new e.Setting(t).setName("Glass Background").setDesc("Use the secondary background color of the theme or a glass background").addToggle((e=>{e.setValue(this.plugin.settings.glassBg).onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.glassBg=e,yield this.plugin.saveSettings()}))))})),new e.Setting(t).setName("Static Language").setDesc("Set a static language that will always be used (LanguageTool tries to auto detect the language, this is usually not necessary)").addDropdown((e=>{o=e,this.requestLanguages().then((t=>{var n;e.addOption("auto","Auto Detect"),t.forEach((t=>e.addOption(t.longCode,t.name))),e.setValue(null!==(n=this.plugin.settings.staticLanguage)&&void 0!==n?n:"auto"),e.onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.staticLanguage=e,"auto"!==e&&(this.plugin.settings.englishVeriety=void 0,null==a||a.setValue("default"),this.plugin.settings.germanVeriety=void 0,null==u||u.setValue("default"),this.plugin.settings.portugueseVeriety=void 0,null==c||c.setValue("default"),this.plugin.settings.catalanVeriety=void 0,null==l||l.setValue("default")),yield this.plugin.saveSettings()}))))})).catch(console.error)})),new e.Setting(t).setName("Mother Tongue").setDesc("Set the language you are most comfortable with. This will be used to interpret the language you are writing in").addDropdown((e=>{this.requestLanguages().then((t=>{e.addOption("empty",""),t.forEach((t=>e.addOption(t.longCode,t.name))),e.onChange((t=>s(this,void 0,void 0,(function*(){var n;this.plugin.settings.motherTongue=t,e.setValue(null!==(n=this.plugin.settings.motherTongue)&&void 0!==n?n:""),yield this.plugin.saveSettings()}))))})).catch(console.error)})),t.createEl("h3",{text:"Language Varieties"}),t.createEl("p",{text:"Some languages have varieties depending on the country they are spoken in."}),new e.Setting(t).setName("Interpret English as").addDropdown((e=>{var t;a=e,e.addOptions({default:"---","en-US":"English (US)","en-GB":"English (British)","en-CA":"English (Canada)","en-AU":"English (Australia)","en-ZA":"English (South Africa)","en-NZ":"English (New Zealand)"}).setValue(null!==(t=this.plugin.settings.englishVeriety)&&void 0!==t?t:"default").onChange((e=>s(this,void 0,void 0,(function*(){"default"===e?this.plugin.settings.englishVeriety=void 0:(this.plugin.settings.staticLanguage="auto",null==o||o.setValue("auto"),this.plugin.settings.englishVeriety=e),yield this.plugin.saveSettings()}))))})),new e.Setting(t).setName("Interpret German as").addDropdown((e=>{var t;u=e,e.addOptions({default:"---","de-DE":"German (Germany)","de-CH":"German (Switzerland)","de-AT":"German (Austria)"}).setValue(null!==(t=this.plugin.settings.germanVeriety)&&void 0!==t?t:"default").onChange((e=>s(this,void 0,void 0,(function*(){"default"===e?this.plugin.settings.germanVeriety=void 0:(this.plugin.settings.staticLanguage="auto",null==o||o.setValue("auto"),this.plugin.settings.germanVeriety=e),yield this.plugin.saveSettings()}))))})),new e.Setting(t).setName("Interpret Portuguese as").addDropdown((e=>{var t;c=e,e.addOptions({default:"---","pt-BR":"Portuguese (Brazil)","pt-PT":"Portuguese (Portugal)","pt-AO":"Portuguese (Angola)","pt-MZ":"Portuguese (Mozambique)"}).setValue(null!==(t=this.plugin.settings.portugueseVeriety)&&void 0!==t?t:"default").onChange((e=>s(this,void 0,void 0,(function*(){"default"===e?this.plugin.settings.portugueseVeriety=void 0:(this.plugin.settings.staticLanguage="auto",null==o||o.setValue("auto"),this.plugin.settings.portugueseVeriety=e),yield this.plugin.saveSettings()}))))})),new e.Setting(t).setName("Interpret Catalan as").addDropdown((e=>{var t;l=e,e.addOptions({default:"---","ca-ES":"Catalan","ca-ES-valencia":"Catalan (Valencian)"}).setValue(null!==(t=this.plugin.settings.catalanVeriety)&&void 0!==t?t:"default").onChange((e=>s(this,void 0,void 0,(function*(){"default"===e?this.plugin.settings.catalanVeriety=void 0:(this.plugin.settings.staticLanguage="auto",null==o||o.setValue("auto"),this.plugin.settings.catalanVeriety=e),yield this.plugin.saveSettings()}))))})),t.createEl("h3",{text:"Rule Categories"}),new e.Setting(t).setName("Picky Mode").setDesc("Provides more style and tonality suggestions, detects long or complex sentences, recognizes colloquialism and redundancies, proactively suggests synonyms for commonly overused words").addToggle((e=>{e.setValue(this.plugin.settings.pickyMode).onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.pickyMode=e,yield this.plugin.saveSettings()}))))})),new e.Setting(t).setName("Other rule categories").setDesc("Enter a comma-separated list of categories").addText((e=>e.setPlaceholder("Eg. CATEGORY_1,CATEGORY_2").setValue(this.plugin.settings.ruleOtherCategories||"").onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.ruleOtherCategories=e.replace(/\s+/g,""),yield this.plugin.saveSettings()})))))).then((e=>{e.descEl.createEl("br"),e.descEl.createEl("a",{text:"Click here for a list of rules and categories",href:"https://community.languagetool.org/rule/list"},(e=>{e.setAttr("target","_blank")}))})),new e.Setting(t).setName("Enable Specific Rules").setDesc("Enter a comma-separated list of rules").addText((e=>e.setPlaceholder("Eg. RULE_1,RULE_2").setValue(this.plugin.settings.ruleOtherRules||"").onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.ruleOtherRules=e.replace(/\s+/g,""),yield this.plugin.saveSettings()})))))).then((e=>{e.descEl.createEl("br"),e.descEl.createEl("a",{text:"Click here for a list of rules and categories",href:"https://community.languagetool.org/rule/list"},(e=>{e.setAttr("target","_blank")}))})),new e.Setting(t).setName("Disable Specific Rules").setDesc("Enter a comma-separated list of rules").addText((e=>e.setPlaceholder("Eg. RULE_1,RULE_2").setValue(this.plugin.settings.ruleOtherDisabledRules||"").onChange((e=>s(this,void 0,void 0,(function*(){this.plugin.settings.ruleOtherDisabledRules=e.replace(/\s+/g,""),yield this.plugin.saveSettings()})))))).then((e=>{e.descEl.createEl("br"),e.descEl.createEl("a",{text:"Click here for a list of rules and categories",href:"https://community.languagetool.org/rule/list"},(e=>{e.setAttr("target","_blank")}))}))}}function wr(t){let r=-1,i=1/0,o=-1/0;return n.EditorView.inputHandler.of(((n,a,s,u)=>{if(!t.settings.shouldAutoCheck||!u.trim())return!1;const c=n.state.field(e.editorViewField);return i=Math.min(i,Math.min(a,s)),o=Math.max(o,Math.max(a,s)),clearTimeout(r),r=window.setTimeout((()=>{const e=n.lineBlockAt(i),r=n.lineBlockAt(o);t.runDetection(n,c,e.from,r.to).catch((e=>{console.error(e)}))}),t.settings.autoCheckDelay),!1}))}const Er=r.StateEffect.define(),Sr=r.StateEffect.define(),Cr=r.StateEffect.define(),Ar=r.StateEffect.define();function Dr(e,t,n,r){return!(e>=n&&e<=r)&&(!(t>=n&&t<=r)&&(!(n>=e&&n<=t)&&!(r>=e&&r<=t)))}const Tr=r.StateField.define({create:()=>({marks:n.Decoration.none,ignoredRanges:new Set}),update(e,t){e.marks=e.marks.map(t.changes),e.ignoredRanges.clear(),e.marks.between(0,t.newDoc.length,((t,n)=>{e.ignoredRanges.add(`${t},${n}`)})),t.docChanged&&t.selection&&e.marks.size&&(e.marks=e.marks.update({filter:(n,r)=>{const i=Dr(n,r,t.selection.main.from,t.selection.main.to);return i||e.ignoredRanges.delete(`${n},${r}`),i}}));for(const r of t.effects)if(r.is(Ar)){const{from:t,to:i}=r.value;e.ignoredRanges.add(`${t},${i}`),e.marks=e.marks.update({add:[n.Decoration.mark({}).range(t,i)]})}return e}}),qr=r.StateField.define({create:()=>n.Decoration.none,update(e,t){const{ignoredRanges:r}=t.state.field(Tr),o=new Set,a={};let s=null;e=e.map(t.changes);const u=e=>{if(void 0!==a[e])return a[e];s||(s=i.syntaxTree(t.state));const n=s.resolveInner(e,1).type.prop(i.tokenClassNodeProp);return n&&fr.test(n)?a[e]=!1:a[e]=!0,a[e]},c=(e,n,r)=>{if("TYPOS"===e.rule.category.id){const e=window.app.vault.getConfig("spellcheckDictionary"),i=t.state.sliceDoc(n,r);if(e&&e.includes(i))return!1}s||(s=i.syntaxTree(t.state));const o=s.resolve(t.newDoc.lineAt(n).from,1).type.prop(i.tokenClassNodeProp);return!(null==o?void 0:o.includes("table"))||"WHITESPACE_RULE"!==e.rule.id};t.docChanged&&t.selection&&e.size&&(e=e.update({filter:(e,n)=>Dr(e,n,t.selection.main.from,t.selection.main.to)}));for(const i of t.effects)if(i.is(Er)){const{from:t,to:a,match:s}=i.value,l=`${t},${a}`;!r.has(l)&&!o.has(l)&&u(t)&&u(a)&&c(s,t,a)&&(o.add(l),e=e.update({add:[n.Decoration.mark({class:`lt-underline ${hr(s.rule.category.id)}`,match:s}).range(t,a)]}))}else i.is(Sr)?e=n.Decoration.none:(i.is(Cr)||i.is(Ar))&&(e=e.update({filter:(e,t)=>Dr(e,t,i.value.from,i.value.to)}));return e},provide:e=>n.EditorView.decorations.from(e)});function Lr(t,n,r){const i=r.match,o=i.message,a=i.shortMessage,s=(i.replacements||[]).slice(0,3).map((e=>e.value)).filter((e=>e.trim())),u=i.rule.category.id,c=i.rule.id,l=t.settings.glassBg?"lt-predictions-container-glass":"lt-predictions-container";return createDiv({cls:[l,hr(u)]},(i=>{a&&i.createSpan({cls:"lt-title"},(e=>{e.createSpan({text:a})})),o&&i.createSpan({cls:"lt-message",text:o});const l=Cr.of({from:r.from,to:r.to}),f=Ar.of({from:r.from,to:r.to});i.createDiv({cls:"lt-bottom"},(t=>{s.length&&t.createDiv({cls:"lt-buttoncontainer"},(e=>{for(const t of s)e.createEl("button",{text:t},(e=>{e.onclick=()=>{n.dispatch({changes:[{from:r.from,to:r.to,insert:t}],effects:[l]})}}))})),t.createDiv({cls:"lt-info-container"},(t=>{t.createEl("button",{cls:"lt-info-button clickable-icon"},(t=>{e.setIcon(t,"info"),t.onclick=()=>{const e=document.getElementsByClassName("lt-info-box").item(0);if(!e)throw Error("Programming error: failed to create popup. Please notify the LanguageTool maintainer if this problem persists.");e.hasClass("hidden")?e.removeClass("hidden"):e.addClass("hidden")}})),t.createDiv({cls:"lt-info-box hidden"},(e=>{e.createDiv({cls:"lt-info",text:`Category: ${u}`}),e.createDiv({cls:"lt-info",text:`Rule: ${c}`})}))}))})),i.createDiv({cls:"lt-ignorecontainer"},(i=>{i.createEl("button",{cls:"lt-ignore-btn"},(i=>{"TYPOS"===u?(e.setIcon(i.createSpan(),"plus-with-circle"),i.createSpan({text:"Add to personal dictionary"}),i.onclick=()=>{const e=t.app.vault.getConfig("spellcheckDictionary")||[];t.app.vault.setConfig("spellcheckDictionary",[...e,n.state.sliceDoc(r.from,r.to)]),n.dispatch({effects:[l]})}):(e.setIcon(i.createSpan(),"cross"),i.createSpan({text:"Ignore suggestion"}),i.onclick=()=>{n.dispatch({effects:[f]})})}))}))}))}function Fr(e,t,n){const r=n.field(qr);if(0===r.size||n.selection.ranges.length>1)return[];let i=null;if(r.between(n.selection.main.from,n.selection.main.to,((e,t,n)=>{i={from:e,to:t,match:n.spec.match}})),null!==i){const{from:n,to:r}=i;if(e.length){const t=e[0];if(t.pos===n&&t.end===r)return e}return[{pos:n,end:r,above:!0,strictSide:!1,arrow:!1,create:e=>({dom:Lr(t,e,i)})}]}return[]}function Ir(e){return r.StateField.define({create:t=>Fr([],e,t),update:(t,n)=>Fr(t,e,n.state),provide:e=>n.showTooltip.computeN([e],(t=>t.field(e)))})}class Pr{get element(){return this.elem}constructor(t,n){const r=t.match.message,i=t.match.shortMessage,o=(t.match.replacements||[]).slice(0,3).map((e=>e.value)),a=t.match.rule.category.id;this.elem=createDiv({cls:[n,hr(a)]},(n=>{n.style.setProperty("left",`${t.position.left}px`),n.style.setProperty("top",`${t.position.bottom}px`),i&&n.createSpan({cls:"lt-title"},(e=>{e.createSpan({text:i})})),r&&n.createSpan({cls:"lt-message",text:r}),o.length&&n.createDiv({cls:"lt-buttoncontainer"},(e=>{for(const n of o)e.createEl("button",{text:n},(e=>{e.onclick=()=>{t.onClick(n)}}))})),n.createDiv({cls:"lt-ignorecontainer"},(n=>{n.createEl("button",{cls:"lt-ignore-btn"},(n=>{"TYPOS"===a?(e.setIcon(n.createSpan(),"plus-with-circle"),n.createSpan({text:"Add to personal dictionary"}),n.onclick=()=>{t.addToDictionary(t.matchedString)}):(e.setIcon(n.createSpan(),"cross"),n.createSpan({text:"Ignore suggestion"}),n.onclick=()=>{t.ignoreSuggestion()})}))}))})),document.body.append(this.elem);const s=this.elem.clientHeight,u=this.elem.clientWidth;t.position.bottom+s>window.innerHeight&&this.elem.style.setProperty("top",t.position.top-s+"px"),t.position.left+u>window.innerWidth&&this.elem.style.setProperty("left",window.innerWidth-u-15+"px")}destroy(){var e;null===(e=this.elem)||void 0===e||e.remove()}}function Rr(e,t){if(!e.getLine(t.line))return!1;const n=e.getTokenTypeAt(t);return!n||!fr.test(n)}function Vr(e,t,n,r){const i=t=>{var n;(null===(n=t.attributes)||void 0===n?void 0:n.isIgnored)||(e.delete(t),t.clear())};if(n&&r)return t.findMarks(n,r).forEach(i);t.getAllMarks().forEach(i)}class Or{constructor(e){this.onCodemirrorChange=(e,t)=>{if(this.openWidget&&(this.openWidget.destroy(),this.openWidget=void 0),this.markerMap.size>0&&t.origin&&"+"===t.origin[0]){const n=e.findMarksAt(t.from);n.length&&n.forEach((e=>e.clear()))}if(this.plugin.settings.shouldAutoCheck&&t.origin&&("+"===t.origin[0]||"paste"===t.origin)){const n=this.dirtyLines.has(e)?this.dirtyLines.get(e):[];t.text.forEach(((r,i)=>{const o=t.from.line+i;Rr(e,Object.assign(Object.assign({},t.from),{line:o}))&&n.push(o)})),this.dirtyLines.set(e,n),this.plugin.setStatusBarWorking(),this.checkLines(e)}},this.runAutoDetection=e=>s(this,void 0,void 0,(function*(){const t=this.dirtyLines.get(e);if(!t||0===t.length)return this.plugin.setStatusBarReady();this.dirtyLines.delete(e);const n=t.sort(((e,t)=>e-t)),r=n[n.length-1],i=e.getLine(r),o={line:n[0],ch:0},a={line:n[n.length-1],ch:i.length};try{yield this.runDetection(e,o,a)}catch(e){console.error(e),this.plugin.setStatusBarReady()}})),this.plugin=e,this.app=e.app}onload(){return s(this,void 0,void 0,(function*(){this.markerMap=new Map,this.hashLru=new u({maxSize:10}),this.dirtyLines=new WeakMap,this.checkLines=e.debounce(this.runAutoDetection,3e3,!0),this.initLegacyEditorHandler()}))}onunload(){this.openWidget&&(this.openWidget.destroy(),this.openWidget=void 0),this.app.workspace.iterateCodeMirrors((e=>{Vr(this.markerMap,e),e.off("change",this.onCodemirrorChange)}))}initLegacyEditorHandler(){this.plugin.registerCodeMirror((e=>{e.on("change",this.onCodemirrorChange)})),this.plugin.registerDomEvent(document,"pointerup",(t=>{var n,r;const i=this.app.workspace.getActiveViewOfType(e.MarkdownView);if(!i)return;if(t.target===(null===(n=this.openWidget)||void 0===n?void 0:n.element)||(null===(r=this.openWidget)||void 0===r?void 0:r.element.contains(t.target)))return;if(this.openWidget&&(this.openWidget.destroy(),this.openWidget=void 0),0===this.markerMap.size||t.target instanceof HTMLElement&&!t.target.hasClass("lt-underline"))return;const o=i.editor.cm;if(!o.getWrapperElement().contains(t.target))return;const a=o.coordsChar({left:t.clientX,top:t.clientY}),s=o.findMarksAt(a);if(0===s.length)return;const u=s[0],c=this.markerMap.get(u);if(!c)return;const{from:l,to:f}=u.find(),d=o.cursorCoords(l),h=o.getRange(l,f);this.openWidget=new Pr({match:c,matchedString:h,position:d,onClick:e=>{var t;o.replaceRange(e,l,f),u.clear(),null===(t=this.openWidget)||void 0===t||t.destroy(),this.openWidget=void 0},addToDictionary:e=>{var t;const n=this.app.vault.getConfig("spellcheckDictionary")||[];this.app.vault.setConfig("spellcheckDictionary",[...n,e]),u.clear(),null===(t=this.openWidget)||void 0===t||t.destroy(),this.openWidget=void 0},ignoreSuggestion:()=>{var e;o.markText(l,f,{clearOnEnter:!1,attributes:{isIgnored:"true"}}),u.clear(),null===(e=this.openWidget)||void 0===e||e.destroy(),this.openWidget=void 0}},this.plugin.settings.glassBg?"lt-predictions-container-glass":"lt-predictions-container")}))}runDetection(e,t,n){return s(this,void 0,void 0,(function*(){this.plugin.setStatusBarWorking();const r=e.getDoc(),i=t&&n?e.getRange(t,n):e.getValue(),o=t&&n?r.indexFromPos(t):0,a=dr(i);if(this.hashLru.has(a))return this.hashLru.get(a);let s;try{s=yield vr(i,(()=>this.plugin.settings)),this.hashLru.set(a,s)}catch(e){return this.plugin.setStatusBarReady(),Promise.reject(e)}if(t&&n?Vr(this.markerMap,e,t,n):Vr(this.markerMap,e),!s.matches)return this.plugin.setStatusBarReady();for(const t of s.matches){const n=r.posFromIndex(t.offset+o),i=e.findMarksAt(n);if(i&&i.length>0)continue;const a=r.posFromIndex(t.offset+o+t.length);if(!Rr(e,n)||!Rr(e,a)||!this.matchAllowed(e,t,n,a))continue;const s=e.markText(n,a,{className:`lt-underline ${hr(t.rule.category.id)}`,clearOnEnter:!1});this.markerMap.set(s,t)}this.plugin.setStatusBarReady()}))}matchAllowed(e,t,n,r){var i;const o=e.getRange(n,r);if("TYPOS"===t.rule.category.id){const e=this.app.vault.getConfig("spellcheckDictionary");if(e&&e.includes(o))return!1}const a=e.getLineTokens(n.line);return!a.length||!(null===(i=a[0].type)||void 0===i?void 0:i.includes("table"))||"WHITESPACE_RULE"!==t.rule.id}}class Br extends e.Plugin{constructor(){super(...arguments),this.isloading=!1,this.handleStatusBarClick=()=>{var t;const n=null===(t=this.statusBarText.parentElement)||void 0===t?void 0:t.getBoundingClientRect(),r=this.statusBarText.getBoundingClientRect();new e.Menu(this.app).addItem((t=>{t.setTitle("Check current document"),t.setIcon("checkbox-glyph"),t.onClick((()=>s(this,void 0,void 0,(function*(){const t=this.app.workspace.activeLeaf;if((null==t?void 0:t.view)instanceof e.MarkdownView&&"source"===t.view.getMode())try{this.isLegacyEditor?yield this.legacyPlugin.runDetection(t.view.editor.cm):yield this.runDetection(t.view.editor.cm,t.view)}catch(e){console.error(e)}}))))})).addItem((e=>{e.setTitle(this.settings.shouldAutoCheck?"Disable automatic checking":"Enable automatic checking"),e.setIcon("uppercase-lowercase-a"),e.onClick((()=>s(this,void 0,void 0,(function*(){this.settings.shouldAutoCheck=!this.settings.shouldAutoCheck,yield this.saveSettings()}))))})).addItem((t=>{t.setTitle("Clear suggestions"),t.setIcon("reset"),t.onClick((()=>{const t=this.app.workspace.getActiveViewOfType(e.MarkdownView);if(t)if(this.isLegacyEditor){const e=t.editor.cm;Vr(this.legacyPlugin.markerMap,e)}else{t.editor.cm.dispatch({effects:[Sr.of(null)]})}}))})).showAtPosition({x:r.right+5,y:((null==n?void 0:n.top)||0)-5})}}onload(){return s(this,void 0,void 0,(function*(){this.isLegacyEditor=Boolean(!this.app.isMobile&&this.app.vault.getConfig("legacyEditor")),yield this.loadSettings();let t=yield this.loadData();if(t&&0!==Object.keys(t).length||(t=this.settings),!t.urlMode||0===t.urlMode.length){const{serverUrl:t}=this.settings;this.settings.urlMode="https://api.languagetool.org"===t?"standard":"https://api.languagetoolplus.com"===t?"premium":"custom";try{yield this.saveSettings(),yield this.loadSettings(),new e.Notice("updated LanguageTool Settings, please confirm your server URL in the settings tab",1e4)}catch(e){console.error(e)}}if(this.settings.serverUrl.includes("/v2/check")){new e.Notice("invalid or outdated LanguageTool Settings, I'm trying to fix it.\nIf it does not work, simply reinstall the plugin",1e4),this.settings.serverUrl=this.settings.serverUrl.replace("/v2/check","");try{yield this.saveSettings()}catch(e){console.error(e)}}var r;this.addSettingTab(new br(this.app,this)),this.app.workspace.onLayoutReady((()=>{this.statusBarText=this.addStatusBarItem(),this.setStatusBarReady(),this.registerDomEvent(this.statusBarText,"click",this.handleStatusBarClick)})),this.isLegacyEditor?(this.legacyPlugin=new Or(this),yield this.legacyPlugin.onload()):(this.hashLru=new u({maxSize:10}),this.registerEditorExtension((r=this,[n.tooltips({position:"absolute",tooltipSpace:e=>{const t=e.dom.getBoundingClientRect();return{top:t.top,left:t.left,bottom:t.bottom,right:t.right}}}),Tr,qr,Ir(r),wr(r)]))),this.registerCommands()}))}onunload(){this.isLegacyEditor&&this.legacyPlugin.onunload(),this.hashLru.clear()}registerCommands(){this.addCommand({id:"ltcheck-text",name:"Check Text",editorCallback:(e,t)=>{if(this.isLegacyEditor){const t=e.cm;e.somethingSelected()?this.legacyPlugin.runDetection(t,t.getCursor("from"),t.getCursor("to")).catch((e=>{console.error(e)})):this.legacyPlugin.runDetection(t).catch((e=>{console.error(e)}))}else this.runDetection(e.cm,t).catch((e=>{console.error(e)}))}}),this.addCommand({id:"ltautocheck-text",name:"Toggle Automatic Checking",callback:()=>s(this,void 0,void 0,(function*(){this.settings.shouldAutoCheck=!this.settings.shouldAutoCheck,yield this.saveSettings()}))}),this.addCommand({id:"ltclear",name:"Clear Suggestions",editorCallback:e=>{if(this.isLegacyEditor){if(this.legacyPlugin.markerMap.size>0){const t=e.cm;Vr(this.legacyPlugin.markerMap,t)}}else{e.cm.dispatch({effects:[Sr.of(null)]})}}}),this.addCommand({id:"ltjump-to-next-suggestion",name:"Jump to next Suggestion",editorCheckCallback:(e,t)=>{const n=t.cm,r=t.posToOffset(t.getCursor());let i=null;if(n.state.field(qr).between(r+1,1/0,((e,t)=>{(!i||i.from>e)&&(i={from:e,to:t})})),e)return Boolean(i);i&&n.dispatch({selection:{anchor:i.from,head:i.to}})}}),this.addCommand({id:"ltjump-to-previous-suggestion",name:"Jump to previous Suggestion",editorCheckCallback:(e,t)=>{const n=t.cm,r=t.posToOffset(t.getCursor("from"));let i=null;if(n.state.field(qr).between(0,r-1,((e,t)=>{(!i||i.from<e)&&(i={from:e,to:t})})),e)return Boolean(i);i&&n.dispatch({selection:{anchor:i.from,head:i.to}})}}),this.addCommand(this.getApplySuggestionCommand(1)),this.addCommand(this.getApplySuggestionCommand(2)),this.addCommand(this.getApplySuggestionCommand(3))}getApplySuggestionCommand(e){return{id:`ltaccept-suggestion-${e}`,name:`Accept suggestion #${e} when the cursor is within a Language-Tool-Hint`,editorCheckCallback(t,n){var r,i,o,a,s;const u=n.cm,c=n.posToOffset(n.getCursor()),l=[];u.state.field(qr).between(c,c,((e,t,n)=>{l.push({from:e,to:t,value:n})}));const f=1===l.length&&(null===(s=null===(a=null===(o=null===(i=null===(r=l[0])||void 0===r?void 0:r.value)||void 0===i?void 0:i.spec)||void 0===o?void 0:o.match)||void 0===a?void 0:a.replacements)||void 0===s?void 0:s.length)>=e;if(t)return f;if(!f)return void console.error("Preconditions were not successfull to apply LT-suggestions.");const{from:d,to:h,value:p}=l[0],g={from:d,to:h,insert:p.spec.match.replacements[e-1].value};u.dispatch({changes:[g],effects:[Cr.of({from:d,to:h})]})}}}setStatusBarReady(){this.isloading=!1,this.statusBarText.empty(),this.statusBarText.createSpan({cls:"lt-status-bar-btn"},(e=>{e.createSpan({cls:"lt-status-bar-check-icon",text:"Aa"})}))}setStatusBarWorking(){this.isloading||(this.isloading=!0,this.statusBarText.empty(),this.statusBarText.createSpan({cls:["lt-status-bar-btn","lt-loading"]},(t=>{e.setIcon(t,"sync-small")})))}runDetection(e,t,n,r){var i,o;return s(this,void 0,void 0,(function*(){const a=null===(i=this.app.metadataCache.getFileCache(t.file))||void 0===i?void 0:i.frontmatter;if(null===(o=null==a?void 0:a.tags)||void 0===o?void 0:o.includes("lt-ignore"))return;this.setStatusBarWorking();const s=e.state.selection.main;let u=t.data,c=0,l=!1,f=0,d=0;void 0===n&&s&&s.from!==s.to&&(n=s.from,r=s.to),void 0!==n&&void 0!==r&&(u=e.state.sliceDoc(n,r),c=n,f=n,d=r,l=!0);const h=dr(u);let p;if(this.hashLru.has(h))p=this.hashLru.get(h);else try{p=yield vr(u,(()=>this.settings)),this.hashLru.set(h,p)}catch(e){return this.setStatusBarReady(),Promise.reject(e)}const g=[];if(l?g.push(Cr.of({from:f,to:d})):g.push(Sr.of(null)),p.matches)for(const e of p.matches){const t=e.offset+c,n=e.offset+c+e.length;g.push(Er.of({from:t,to:n,match:e}))}g.length&&e.dispatch({effects:g}),this.setStatusBarReady()}))}loadSettings(){return s(this,void 0,void 0,(function*(){this.settings=Object.assign({},kr,yield this.loadData())}))}saveSettings(){return s(this,void 0,void 0,(function*(){yield this.saveData(this.settings)}))}}module.exports=Br;
|