varVs=[],Bc=[];(()=>{letO="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(lete=0,t=0;e<O.length;e++)(e%2?Bc:Vs).push(t=t+O[e])})();functionNm(O){if(O<768)return!1;for(lete=0,t=Vs.length;;){leti=e+t>>1;if(O<Vs[i])t=i;elseif(O>=Bc[i])e=i+1;elsereturn!0;if(e==t)return!1}}functionMc(O){returnO>=127462&&O<=127487}varDc=8205;functionNc(O,e,t=!0,i=!0){return(t?Fc:Fm)(O,e,i)}functionFc(O,e,t){if(e==O.length)returne;e&&Hc(O.charCodeAt(e))&&Kc(O.charCodeAt(e-1))&&e--;leti=Rs(O,e);for(e+=Ic(i);e<O.length;){letr=Rs(O,e);if(i==Dc||r==Dc||t&&Nm(r))e+=Ic(r),i=r;elseif(Mc(r)){letn=0,s=e-2;for(;s>=0&&Mc(Rs(O,s));)n++,s-=2;if(n%2==0)break;e+=2}elsebreak}returne}functionFm(O,e,t){for(;e>0;){leti=Fc(O,e-2,t);if(i<e)returni;e--}return0}functionRs(O,e){lett=O.charCodeAt(e);if(!Kc(t)||e+1==O.length)returnt;leti=O.charCodeAt(e+1);returnHc(i)?(t-55296<<10)+(i-56320)+65536:t}functionHc(O){returnO>=56320&&O<57344}functionKc(O){returnO>=55296&&O<56320}functionIc(O){returnO<65536?1:2}varG=classO{lineAt(e){if(e<0||e>this.length)thrownewRangeError(`Invalid position ${e} in document of length ${this.length}`);returnthis.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)thrownewRangeError(`Invalid line number ${e} in ${this.lines}-line document`);returnthis.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=CO(this,e,t);letr=[];returnthis.decompose(0,e,r,2),i.length&&i.decompose(0,i.length,r,3),this.decompose(t,this.length,r,1),WO.from(r,this.length-(t-e)+i.length)}append(e){returnthis.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=CO(this,e,t);leti=[];returnthis.decompose(e,t,i,0),WO.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;lett=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),r=newhO(this),n=newhO(e);for(lets=t,a=t;;){if(r.next(s),n.next(s),s=0,r.lineBreak!=n.lineBreak||r.done!=n.done||r.value!=n.value)return!1;if(a+=r.value.length,r.done||a>=i)return!0}}iter(e=1){returnnewhO(this,e)}iterRange(e,t=this.length){returnnew_r(this,e,t)}iterLines(e,t){leti;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);letr=this.line(e).from;i=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}returnnewzr(i)}toString(){returnthis.sliceString(0)}toJSON(){lete=[];returnthis.flatten(e),e}constructor(){}staticof(e){if(e.length==0)thrownewRangeError("A document must have at least one line");returne.length==1&&!e[0]?O.empty:e.length<=32?newLe(e):WO.from(Le.split(e,[]))}},Le=classOextendsG{constructor(e,t=Hm(e)){super(),this.text=e,this.length=t}getlines(){returnthis.text.length}getchildren(){returnnull}lineInner(e,t,i,r){for(letn=0;;n++){lets=this.text[n],a=r+s.length;if((t?i:a)>=e)returnnew_
`){[e,t]=CO(this,e,t);let r="";for(let n=0,s=0;n<=t&&s<this.text.length;s++){let a=this.text[s],o=n+a.length;n>e&&s&&(r+=i),e<o&&t>n&&(r+=a.slice(Math.max(0,e-n),t-n)),n=o+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let i=[],r=-1;for(let n of e)i.push(n),r+=n.length+1,i.length==32&&(t.push(new O(i,r)),i=[],r=-1);return r>-1&&t.push(new O(i,r)),t}},WO=class O extends G{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let i of e)this.lines+=i.lines}lineInner(e,t,i,r){for(let n=0;;n++){let s=this.children[n],a=r+s.length,o=i+s.lines-1;if((t?o:a)>=e)return s.lineInner(e,t,i,r);r=a+1,i=o+1}}decompose(e,t,i,r){for(let n=0,s=0;s<=t&&n<this.children.length;n++){let a=this.children[n],o=s+a.length;if(e<=o&&t>=s){let l=r&((s<=e?1:0)|(o>=t?2:0));s>=e&&o<=t&&!l?i.push(a):a.decompose(e-s,t-s,i,l)}s=o+1}}replace(e,t,i){if([e,t]=CO(this,e,t),i.lines<this.lines)for(let r=0,n=0;r<this.children.length;r++){let s=this.children[r],a=n+s.length;if(e>=n&&t<=a){let o=s.replace(e-n,t-n,i),l=this.lines-s.lines+o.lines;if(o.lines<l>>4&&o.lines>l>>6){let c=this.children.slice();return c[r]=o,new O(c,this.length-(t-e)+i.length)}return super.replace(n,a,o)}n=a+1}return super.replace(e,t,i)}sliceString(e,t=this.length,i=`
`){[e,t]=CO(this,e,t);let r="";for(let n=0,s=0;n<this.children.length&&s<=t;n++){let a=this.children[n],o=s+a.length;s>e&&n&&(r+=i),e<o&&t>s&&(r+=a.sliceString(e-s,t-s,i)),s=o+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof O))return 0;let i=0,[r,n,s,a]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,n+=t){if(r==s||n==a)return i;let o=this.children[r],l=e.children[n];if(o!=l)return i+o.scanIdentical(l,t);i+=o.length+1}}static from(e,t=e.reduce((i,r)=>i+r.length+1,-1)){let i=0;for(let $ of e)i+=$.lines;if(i<32){let $=[];for(let u of e)u.flatten($);return new Le($,t)}let r=Math.max(32,i>>5),n=r<<1,s=r>>1,a=[],o=0,l=-1,c=[];function h($){let u;if($.lines>n&&$ instanceof O)for(let d of $.children)h(d);else $.lines>s&&(o>s||!o)?(f(),a.push($)):$ instanceof Le&&o&&(u=c[c.length-1])instanceof Le&&$.lines+u.lines<=32?(o+=$.lines,l+=$.length+1,c[c.length-1]=new Le(u.text.concat($.text),u.length+1+$.length)):(o+$.lines>r&&f(),o+=$.lines,l+=$.length+1,c.push($))}function f(){o!=0&&(a.push(c.length==1?c[0]:O.from(c,l)),l=-1,o=c.length=0)}for(let $ of e)h($);return f(),a.length==1?a[0]:new O(a,t)}};G.empty=new Le([""],0);function Hm(O){let e=-1;for(let t of O)e+=t.length+1;return e}function qr(O,e,t=0,i=1e9){for(let r=0,n=0,s=!0;n<O.length&&r<=i;n++){let a=O[n],o=r+a.length;o>=t&&(o>i&&(a=a.slice(0,i-r)),r<t&&(a=a.slice(t-r)),s?(e[e.length-1]+=a,s=!1):e.push(a)),r=o+1}return e}function Jc(O,e,t){return qr(O,[""],e,t)}var hO=class{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof Le?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,r=this.nodes[i],n=this.offsets[i],s=n>>1,a=r instanceof Le?r.text.length:r.children.length;if(s==(t>0?a:0)){if(i==0)return this.done=!0,this.value="",this;t>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((n&1)==(t>0?0:1)){if(this.offsets[i]+=t,e==0)return this.lineBreak=!0,this.value=`
`}getreadOnly(){returnthis.facet(hh)}phrase(e,...t){for(letiofthis.facet(O.phrases))if(Object.prototype.hasOwnProperty.call(i,e)){e=i[e];break}returnt.length&&(e=e.replace(/\$(\$|\d*)/g,(i,r)=>{if(r=="$")return"$";letn=+(r||1);return!n||n>t.length?i:t[n-1]})),e}languageDataAt(e,t,i=-1){letr=[];for(letnofthis.facet(sh))for(letsofn(this,t,i))Object.prototype.hasOwnProperty.call(s,e)&&r.push(s[e]);returnr}charCategorizer(e){returnog(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:t,from:i,length:r}=this.doc.lineAt(e),n=this.charCategorizer(e),s=e-i,a=e-i;for(;s>0;){leto=ue(t,s,!1);if(n(t.slice(o,s))!=K.Word)break;s=o}for(;a<r;){leto=ue(t,a);if(n(t.slice(a,o))!=K.Word)break;a=o}returns==a?null:P.range(s+i,a+i)}};M.allowMultipleSelections=Cs;M.tabSize=Y.define({combine:O=>O.length?O[0]:4});M.lineSeparator=ah;M.readOnly=hh;M.phrases=Y.define({compare(O,e){lett=Object.keys(O),i=Object.keys(e);returnt.length==i.length&&t.every(r=>O[r]==e[r])}});M.languageData=sh;M.changeFilter=oh;M.transactionFilter=lh;M.transactionExtender=ch;GO.reconfigure=q.define();functionxe(O,e,t={}){leti={};for(letrofO)for(letnofObject.keys(r)){lets=r[n],a=i[n];if(a===void0)i[n]=s;elseif(!(a===s||s===void0))if(Object.hasOwnProperty.call(t,n))i[n]=t[n](a,s);elsethrownewError("Config merge conflict for field "+n)}for(letrine)i[r]===void0&&(i[r]=e[r]);returni}varot=class{eq(e){returnthis==e}range(e,t=e){returnPi.create(e,t,this)}};ot.prototype.startSide=ot.prototype.endSide=0;ot.prototype.point=!1;ot.prototype.mapMode=pe.TrackDel;varPi=classO{constructor(e,t,i){this.from=e,this.to=t,this.value=i}staticcreate(e,t,i){returnnewO(e,t,i)}};functionMs(O,e){returnO.from-e.from||O.value.startSide-e.value.startSide}varDs=classO{constructor(e,t,i,r){this.from=e,this.to=t,this.value=i,this.maxPoint=r}getlength(){returnthis.to[this.to.length-1]}findIndex(e,t,i,r=0){letn=i?this.to:this.from;for(lets=r,a=n.length;;){if(s==a)returns;leto=s+a>>1,l=n[o]-e||(i?this.value[o].endSide:this.value[o].startSide)-t;if(o==s)returnl>=0?s:a;l>=0?a=o:s=o+1}}between(e,t,i,r){for(letn=this.findIndex(t,-1e9,!0),s=this.findIndex(i,1e9,!1,n);n<s;n++)if(r(this.from[n]+e,this.to[n]+e,this.value[n])===!1)return!1}map(e,t){leti=[],r=[],n=[],s=-1,a=-1;for(leto=0;o<this.value.length;o++){letl=this.value[o],c=this.from[o]+e,h=this.to[o]+e,f,$;if(c==h){letu=t.mapPos(c,l.startSide,l.mapMode);if(u==null||(f=$=u,l.startSide!=l.endSide&&($=t.mapPos(c,l.endSide),$<f)))continue}elseif(f=t.mapPos(c,l.startSide),$=t.mapPos(h,l.endSide),f>$||f==$&&l.startSide>0&&l.endSide<=0)continue;($-f||l.endSide-l.startSide)<0||(s<0&&(s=f),l.point&&(a=Math.max(a,$-f)),i.push(l),r.push(f-s),n.push($-s))}return{mapped:i.length?newO(r,n,i,a):null,pos:s}}},N=classO{constructor(e,t,i,r){this.chunkPos=e,this.chunk=t,this.nextLayer=i,this.maxPoint=r}staticcreate(e,t,i,r){returnnewO(e,t,i,r)}getlength(){lete=this.chunk.length-1;returne<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}getsize(){if(this.isEmpty)return0;lete=this.nextLayer.size;for(lettofthis.chunk)e+=t.value.length;returne}chunkEnd(e){returnthis.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:i=!1,filterFrom:r=0,filterTo:n=this.length}=e,s=e.filter;if(t.length==0&&!s)returnthis;if(i&&(t=t.slice().sort(Ms)),this.isEmpty)returnt.length?O.of(t):this;leta=newCr(this,null,-1).goto(0),o=0,l=[],c=newMe;for(;a.value||o<t.length;)if(o<t.length&&(a.from-t[o].from||a.startSide-t[o].value.startSide)>=0){leth=t[o++];c.addInner(h.from,h.to,h.value)||l.push(h)}elsea.rangeIndex==1&&a.chunkIndex<this.chunk.length&&(o==t.length||this.chunkEnd(a.chunkIndex)<t[o].from)&&(!s||r>this.chunkEnd(a.chunkIndex)||n<this.chunkPos[a.chunkIndex])&&c.addChunk(this.chunkPos[a.chunkIndex],this.chunk[a.chunkIndex])?a.nextChunk():((!s||r>a.to||n<a.from||s(a.from,a.to,a.value))&&(c.addInner(a.from,a.to,a.value)||l.push(Pi.create(a.from,a.to,a.value))),a.next());returnc.finishInner(this.nextLayer.isEmpty&&!l.length?O.empty:this.nextLayer.update({add:l,filter:s,filterFrom:r,filter
`+t.scrub(),n=this.advance(r);return n>-1&&n<r.length?this.complete(e,i,n):!1}finish(e,t){return(this.stage==2||this.stage==3)&&Sr(t.content,this.pos)==t.content.length?this.complete(e,t,t.content.length):!1}complete(e,t,i){return e.addLeafElement(t,L(y.LinkReference,this.start,this.start+i,this.elts)),!0}nextStage(e){return e?(this.pos=e.to-this.start,this.elts.push(e),this.stage++,!0):(e===!1&&(this.stage=-1),!1)}advance(e){for(;;){if(this.stage==-1)return-1;if(this.stage==0){if(!this.nextStage(Wp(e,this.pos,this.start,!0)))return-1;if(e.charCodeAt(this.pos)!=58)return this.stage=-1;this.elts.push(L(y.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else if(this.stage==1){if(!this.nextStage(_p(e,Sr(e,this.pos),this.start)))return-1}else if(this.stage==2){let t=Sr(e,this.pos),i=0;if(t>this.pos){let r=zp(e,t,this.start);if(r){let n=Nl(e,r.to-this.start);n>0&&(this.nextStage(r),i=n)}}return i||(i=Nl(e,this.pos)),i>0&&i<e.length?i:-1}else return Nl(e,this.pos)}}};function Nl(O,e){for(;e<O.length;e++){let t=O.charCodeAt(e);if(t==10)break;if(!at(t))return-1}return e}var Oc=class{nextLine(e,t,i){let r=t.depth<e.stack.length?-1:xp(t),n=t.next;if(r<0)return!1;let s=L(y.HeaderMark,e.lineStart+t.pos,e.lineStart+r);return e.nextLine(),e.addLeafElement(i,L(n==61?y.SetextHeading1:y.SetextHeading2,i.start,e.prevLineEnd(),[...e.parser.parseInline(i.content,i.start),s])),!0}finish(){return!1}},Zp={LinkReference(O,e){return e.content.charCodeAt(0)==91?new tc(e):null},SetextHeading(){return new Oc}},Kb=[(O,e)=>bp(e)>=0,(O,e)=>Xp(e)>=0,(O,e)=>Tp(e)>=0,(O,e)=>hc(e,O,!0)>=0,(O,e)=>fc(e,O,!0)>=0,(O,e)=>cc(e,O,!0)>=0,(O,e)=>Yp(e,O,!0)>=0],Jb={text:"",end:0},ic=class{constructor(e,t,i,r){this.parser=e,this.input=t,this.ranges=r,this.line=new Kl,this.atEnd=!1,this.reusePlaceholders=new Map,this.stoppedAt=null,this.rangeI=0,this.to=r[r.length-1].to,this.lineStart=this.absoluteLineStart=this.absoluteLineEnd=r[0].from,this.block=Xs.create(y.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=i.length?new oc(i,t):null,this.readLine()}get parsedPos(){return this.absoluteLineStart}advance(){if(this.stoppedAt!=null&&this.absoluteLineStart>this.stoppedAt)return this.finish();let{line:e}=this;for(;;){for(let i=0;;){let r=e.depth<this.stack.length?this.stack[this.stack.length-1]:null;for(;i<e.markers.length&&(!r||e.markers[i].from<r.end);){let n=e.markers[i++];this.addNode(n.type,n.from,n.to)}if(!r)break;this.finishContext()}if(e.pos<e.text.length)break;if(!this.nextLine())return this.finish()}if(this.fragments&&this.reuseFragment(e.basePos))return null;e:for(;;){for(let i of this.parser.blockParsers)if(i){let r=i(this,e);if(r!=!1){if(r==!0)return null;e.forward();continue e}}break}let t=new Hl(this.lineStart+e.pos,e.text.slice(e.pos));for(let i of this.parser.leafBlockParsers)if(i){let r=i(this,t);r&&t.parsers.push(r)}e:for(;this.nextLine()&&e.pos!=e.text.length;){if(e.indent<e.baseIndent+4){for(let i of this.parser.endLeafBlock)if(i(this,e,t))break e}for(let i of t.parsers)if(i.nextLine(this,e,t))return null;t.content+=`
`+e.scrub();for(let i of e.markers)t.marks.push(i)}return this.finishLeaf(t),null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}reuseFragment(e){if(!this.fragments.moveTo(this.absoluteLineStart+e,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let t=this.fragments.takeNodes(this);return t?(this.absoluteLineStart+=t,this.lineStart=Up(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0):!1}get depth(){return this.stack.length}parentType(e=this.depth-1){return this.parser.nodeSet.types[this.stack[e].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(e){let t=Jb;if(t.end=e,e>=this.to)t.text="";else if(t.text=this.lineChunkAt(e),t.end+=t.text.length,this.ranges.length>1){let i=this.absoluteLineStart,r=this.rangeI;for(;this.ranges[r].to<t.end;){r++;let n=this.ranges[r].from,s=this.lineChunkAt(n);t.end=n+s.length,t.text=t.text.slice(0,this.ranges[r-1].to-i)+s,i=t.end-t.text.length}}return t}readLine(){let{line:e}=this,{text:t,end:i}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=i,e.reset(t);e.depth<this.stack.length;e.depth++){let r=this.stack[e.depth],n=this.parser.skipContextMarkup[r.type];if(!n)throw new Error("Unhandled block context "+y[r.type]);if(!n(r,this,e))break;e.forward()}}lineChunkAt(e){let t=this.input.chunk(e),i;if(this.input.lineChunks)i=t==`
`?"":t;else{let r=t.indexOf(`
`);i=r<0?t:t.slice(0,r)}return e+i.length>this.to?i.slice(0,this.to-e):i}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(e,t,i=0){this.block=Xs.create(e,i,this.lineStart+t,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(e,t,i=0){this.startContext(this.parser.getNodeType(e),t,i)}addNode(e,t,i){typeof e=="number"&&(e=new D(this.parser.nodeSet.types[e],$i,$i,(i??this.prevLineEnd())-t)),this.block.addChild(e,t-this.block.from)}addElement(e){this.block.addChild(e.toTree(this.parser.nodeSet),e.from-this.block.from)}addLeafElement(e,t){this.addNode(this.buffer.writeElements(ac(t.children,e.marks),-t.from).finish(t.type,t.to-t.from),t.from)}finishContext(){let e=this.stack.pop(),t=this.stack[this.stack.length-1];t.addChild(e.toTree(this.parser.nodeSet),e.from-t.from),this.block=t}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(e){return this.ranges.length>1?vp(this.ranges,0,e.topNode,this.ranges[0].from,this.reusePlaceholders):e}finishLeaf(e){for(let i of e.parsers)if(i.finish(this,e))return;let t=ac(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(t,-e.start).finish(y.Paragraph,e.content.length),e.start)}elt(e,t,i,r){return typeof e=="string"?L(this.parser.getNodeType(e),t,i,r):new ys(e,t)}get buffer(){return new Ts(this.parser.nodeSet)}};function vp(O,e,t,i,r){let n=O[e].to,s=[],a=[],o=t.from+i;function l(c,h){for(;h?c>=n:c>n;){let f=O[e+1].from-n;i+=f,c+=f,e++,n=O[e].to}}for(let c=t.firstChild;c;c=c.nextSibling){l(c.from+i,!0);let h=c.from+i,f,$=r.get(c.tree);$?f=$:c.to+i>n?(f=vp(O,e,c,i,r),l(c.to+i,!1)):f=c.toTree(),s.push(f),a.push(h-o)}return l(t.to+i,!1),new D(t.type,s,a,t.to+i-o,t.tree?t.tree.propValues:void 0)}var Tr=class O extends Ht{constructor(e,t,i,r,n,s,a,o,l){super(),this.nodeSet=e,this.blockParsers=t,this.leafBlockParsers=i,this.blockNames=r,this.endLeafBlock=n,this.skipContextMarkup=s,this.inlineParsers=a,this.inlineNames=o,this.wrappers=l,this.nodeTypes=Object.create(null);for(let c of e.types)this.nodeTypes[c.name]=c.id}createParse(e,t,i){let r=new ic(this,e,t,i);for(let n of this.wrappers)r=n(r,e,t,i);return r}configure(e){let t=rc(e);if(!t)return this;let{nodeSet:i,skipContextMarkup:r}=this,n=this.blockParsers.slice(),s=this.leafBlockParsers.slice(),a=this.blockNames.slice(),o=this.inlineParsers.slice(),l=this.inlineNames.slice(),c=this.endLeafBlock.slice(),h=this.wrappers;if(Pr(t.defineNodes)){r=Object.assign({},r);let f=i.types.slice(),$;for(let u of t.defineNodes){let{name:d,block:p,composite:m,style:g}=typeof u=="string"?{name:u}:u;if(f.some(S=>S.name==d))continue;m&&(r[f.length]=(S,x,w)=>m(x,w,S.value));let X=f.length,T=m?["Block","BlockContext"]:p?X>=y.ATXHeading1&&X<=y.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;f.push(Qe.define({id:X,name:d,props:T&&[[V.group,T]]})),g&&($||($={}),Array.isArray(g)||g instanceof Ne?$[d]=g:Object.assign($,g))}i=new Nt(f),$&&(i=i.extend(H($)))}if(Pr(t.props)&&(i=i.extend(...t.props)),Pr(t.remove))for(let f of t.remove){let $=this.blockNames.indexOf(f),u=this.inlineNames.indexOf(f);$>-1&&(n[$]=s[$]=void 0),u>-1&&(o[u]=void 0)}if(Pr(t.parseBlock))for(let f of t.parseBlock){let $=a.indexOf(f.name);if($>-1)n[$]=f.parse,s[$]=f.leaf;else{let u=f.before?Ss(a,f.before):f.after?Ss(a,f.after)+1:a.length-1;n.splice(u,0,f.parse),s.splice(u,0,f.leaf),a.splice(u,0,f.name)}f.endLeaf&&c.push(f.endLeaf)}if(Pr(t.parseInline))for(let f of t.parseInline){let $=l.indexOf(f.name);if($>-1)o[$]=f.parse;else{let u=f.before?Ss(l,f.before):f.after?Ss(l,f.after)+1:l.length-1;o.splice(u,0,f.parse),l.splice(u,0,f.name)}}return t.wrap&&(h=h.concat(t.wrap)),new O(i,n,s,a,c,r,o,l,h)}getNodeType(e){let t=this.nodeTypes[e];if(t==null)throw new RangeError(`Unknownnodetype'${e}'`);return t}parseInline(e,t){let i=new sc(this,e,t);e:for(let r=t;r<i.end;){let n=i.char(r);for(let s of this.inlineParsers)if(s){let a=s(i,n,r);if(a>=0){r=a;continue e}}r++}return i.resolv