diff --git a/core/factory.php b/core/factory.php index 5102694..4a5db6f 100644 --- a/core/factory.php +++ b/core/factory.php @@ -171,7 +171,7 @@ class Editor ?> - + - + e?parseInt(e,36):1));for(let t=1;tt)return e[n-1]<=t;return!1}function n(e){return e>=127462&&e<=127487}function r(e,t,n=!0){return(n?i:a)(e,t)}function i(e,r){if(r==e.length)return r;r&&o(e.charCodeAt(r))&&s(e.charCodeAt(r-1))&&r--;let i=O(e,r);for(r+=c(i);r=0&&n(O(e,i));)t++,i-=2;if(t%2==0)break;r+=2}}}return r}function a(e,t){for(;t>0;){let n=i(e,t-2);if(n=56320&&e<57344}function s(e){return e>=55296&&e<56320}function O(e,t){let n=e.charCodeAt(t);if(!s(n)||t+1==e.length)return n;let r=e.charCodeAt(t+1);return o(r)?r-56320+(n-55296<<10)+65536:n}function l(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10),56320+(1023&e)))}function c(e){return e<65536?1:2}function u(e,t,n=e.length){let i=0;for(let a=0;athis.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(t,this.length,r,1),p.from(r,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){let n=[];return this.decompose(e,t,n,0),p.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=new g(this),n=new g(e);for(;;){if(t.next(),n.next(),t.lineBreak!=n.lineBreak||t.done!=n.done||t.value!=n.value)return!1;if(t.done)return!0}}iter(e=1){return new g(this,e)}iterRange(e,t=this.length){return new Q(this,e,t)}iterLines(e,t){let n;if(null==e)n=this.iter();else{null==t&&(t=this.lines+1);let r=this.line(e).from;n=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new b(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}static of(e){if(0==e.length)throw new RangeError("A document must have at least one line");return 1!=e.length||e[0]?e.length<=32?new d(e):p.from(d.split(e,[])):h.empty}}"undefined"!=typeof Symbol&&(h.prototype[Symbol.iterator]=function(){return this.iter()});class d extends h{constructor(e,t=function(e){let t=-1;for(let n of e)t+=n.length+1;return t}(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.text[i],o=r+a.length;if((t?n:o)>=e)return new x(r,o,n,a);r=o+1,n++}}decompose(e,t,n,r){let i=e<=0&&t>=this.length?this:new d(m(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(1&r){let e=n.pop(),t=f(i.text,e.text.slice(),0,i.length);if(t.length<=32)n.push(new d(t,e.length+i.length));else{let e=t.length>>1;n.push(new d(t.slice(0,e)),new d(t.slice(e)))}}else n.push(i)}replace(e,t,n){if(!(n instanceof d))return super.replace(e,t,n);let r=f(this.text,f(n.text,m(this.text,0,e)),t),i=this.length+n.length-(t-e);return r.length<=32?new d(r,i):p.from(d.split(r,[]),i)}sliceString(e,t=this.length,n="\n"){let r="";for(let i=0,a=0;i<=t&&ae&&a&&(r+=n),ei&&(r+=o.slice(Math.max(0,e-i),t-i)),i=s+1}return r}flatten(e){for(let t of this.text)e.push(t)}static split(e,t){let n=[],r=-1;for(let i of e)n.push(i),r+=i.length+1,32==n.length&&(t.push(new d(n,r)),n=[],r=-1);return r>-1&&t.push(new d(n,r)),t}}class p extends h{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let t of e)this.lines+=t.lines}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.children[i],o=r+a.length,s=n+a.lines-1;if((t?s:o)>=e)return a.lineInner(e,t,n,r);r=o+1,n=s+1}}decompose(e,t,n,r){for(let i=0,a=0;a<=t&&i=a){let i=r&((a<=e?1:0)|(s>=t?2:0));a>=e&&s<=t&&!i?n.push(o):o.decompose(e-a,t-a,n,i)}a=s+1}}replace(e,t,n){if(n.lines=i&&t<=o){let s=a.replace(e-i,t-i,n),O=this.lines-a.lines+s.lines;if(s.lines>4&&s.lines>O>>6){let i=this.children.slice();return i[r]=s,new p(i,this.length-(t-e)+n.length)}return super.replace(i,o,s)}i=o+1}return super.replace(e,t,n)}sliceString(e,t=this.length,n="\n"){let r="";for(let i=0,a=0;ie&&i&&(r+=n),ea&&(r+=o.sliceString(e-a,t-a,n)),a=s+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}static from(e,t=e.reduce(((e,t)=>e+t.length+1),-1)){let n=0;for(let t of e)n+=t.lines;if(n<32){let n=[];for(let t of e)t.flatten(n);return new d(n,t)}let r=Math.max(32,n>>5),i=r<<1,a=r>>1,o=[],s=0,O=-1,l=[];function c(e){let t;if(e.lines>i&&e instanceof p)for(let t of e.children)c(t);else e.lines>a&&(s>a||!s)?(u(),o.push(e)):e instanceof d&&s&&(t=l[l.length-1])instanceof d&&e.lines+t.lines<=32?(s+=e.lines,O+=e.length+1,l[l.length-1]=new d(t.text.concat(e.text),t.length+1+e.length)):(s+e.lines>r&&u(),s+=e.lines,O+=e.length+1,l.push(e))}function u(){0!=s&&(o.push(1==l.length?l[0]:p.from(l,O)),O=-1,s=l.length=0)}for(let t of e)c(t);return u(),1==o.length?o[0]:new p(o,t)}}function f(e,t,n=0,r=1e9){for(let i=0,a=0,o=!0;a=n&&(O>r&&(s=s.slice(0,r-i)),i0?1:(e instanceof d?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],i=this.offsets[n],a=i>>1,o=r instanceof d?r.text.length:r.children.length;if(a==(t>0?o:0)){if(0==n)return this.done=!0,this.value="",this;t>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&i)==(t>0?0:1)){if(this.offsets[n]+=t,0==e)return this.lineBreak=!0,this.value="\n",this;e--}else if(r instanceof d){let i=r.text[a+(t<0?-1:0)];if(this.offsets[n]+=t,i.length>Math.max(0,e))return this.value=0==e?i:t>0?i.slice(e):i.slice(0,i.length-e),this;e-=i.length}else{let i=r.children[a+(t<0?-1:0)];e>i.length?(e-=i.length,this.offsets[n]+=t):(t<0&&this.offsets[n]--,this.nodes.push(i),this.offsets.push(t>0?1:(i instanceof d?i.text.length:i.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class Q{constructor(e,t,n){this.value="",this.done=!1,this.cursor=new g(e,t>n?-1:1),this.pos=t>n?e.length:0,this.from=Math.min(t,n),this.to=Math.max(t,n)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let n=t<0?this.pos-this.from:this.to-this.pos;e>n&&(e=n),n-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=n?r:t<0?r.slice(r.length-n):r.slice(0,n),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}}class b{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:n,value:r}=this.inner.next(e);return t?(this.done=!0,this.value=""):n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}}class x{constructor(e,t,n,r){this.from=e,this.to=t,this.number=n,this.text=r}get length(){return this.to-this.from}}const w=/\r\n?|\n/;var k=function(e){return e[e.Simple=0]="Simple",e[e.TrackDel=1]="TrackDel",e[e.TrackBefore=2]="TrackBefore",e[e.TrackAfter=3]="TrackAfter",e}(k||(k={}));class y{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;te)return i+(e-r);i+=o}else{if(n!=k.Simple&&O>=e&&(n==k.TrackDel&&re||n==k.TrackBefore&&re))return null;if(O>e||O==e&&t<0&&!o)return e==r||t<0?i:i+s;i+=s}r=O}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return i}touchesRange(e,t=e){for(let n=0,r=0;n=0&&r<=t&&i>=e)return!(rt)||"cover";r=i}return!1}toString(){let e="";for(let t=0;t=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some((e=>"number"!=typeof e)))throw new RangeError("Invalid JSON representation of ChangeDesc");return new y(e)}}class P extends y{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return _(this,((t,n,r,i,a)=>e=e.replace(r,r+(n-t),a)),!1),e}mapDesc(e,t=!1){return X(this,e,t,!0)}invert(e){let t=this.sections.slice(),n=[];for(let r=0,i=0;r=0){t[r]=o,t[r+1]=a;let s=r>>1;for(;n.length0&&S(n,t,i.text),i.forward(e),o+=e}let O=e[a++];for(;o>1].toJSON()))}return e}static of(e,t,n){let r=[],i=[],a=0,o=null;function s(e=!1){if(!e&&!r.length)return;ao||e<0||o>t)throw new RangeError(`Invalid change range ${e} to ${o} (in doc of length ${t})`);let c=l?"string"==typeof l?h.of(l.split(n||w)):l:h.empty,u=c.length;if(e==o&&0==u)return;ea&&v(r,e-a,-1),v(r,o-e,u),S(i,r,c),a=o}}(e),s(!o),o}static empty(e){return new P(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],n=[];for(let r=0;rt&&"string"!=typeof e)))throw new RangeError("Invalid JSON representation of ChangeSet");if(1==i.length)t.push(i[0],0);else{for(;n.length=0&&n<=0&&n==e[i+1]?e[i]+=t:0==t&&0==e[i]?e[i+1]+=n:r?(e[i]+=t,e[i+1]+=n):e.push(t,n)}function S(e,t,n){if(0==n.length)return;let r=t.length-2>>1;if(r>1])),!(n||o==e.sections.length||e.sections[o+1]<0);)s=e.sections[o++],O=e.sections[o++];t(i,l,a,c,u),i=l,a=c}}}function X(e,t,n,r=!1){let i=[],a=r?[]:null,o=new R(e),s=new R(t);for(let e=0,t=0;;)if(-1==o.ins)e+=o.len,o.next();else if(-1==s.ins&&t=0&&(o.done||tt&&!o.done&&e+o.len=0)){if(o.done&&s.done)return a?new P(i,a):new y(i);throw new Error("Mismatched change set lengths")}{let n=0,r=e+o.len;for(;;)if(s.ins>=0&&t>e&&t+s.lent||o.ins>=0&&o.len>t)&&(e||r.length>n),a.forward2(t),o.forward(t)}}else v(r,0,o.ins,e),i&&S(i,r,o.text),o.next()}}class R{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return t>=e.length?h.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?h.empty:t[n].slice(this.off,null==e?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){-1==this.ins?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class W{constructor(e,t,n){this.from=e,this.to=t,this.flags=n}get anchor(){return 16&this.flags?this.to:this.from}get head(){return 16&this.flags?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return 4&this.flags?-1:8&this.flags?1:0}get bidiLevel(){let e=3&this.flags;return 3==e?null:e}get goalColumn(){let e=this.flags>>5;return 33554431==e?void 0:e}map(e,t=-1){let n=e.mapPos(this.from,t),r=e.mapPos(this.to,t);return n==this.from&&r==this.to?this:new W(n,r,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return q.range(e,t);let n=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return q.range(this.anchor,n)}eq(e){return this.anchor==e.anchor&&this.head==e.head}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||"number"!=typeof e.anchor||"number"!=typeof e.head)throw new RangeError("Invalid JSON representation for SelectionRange");return q.range(e.anchor,e.head)}}class q{constructor(e,t=0){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:q.create(this.ranges.map((n=>n.map(e,t))),this.mainIndex)}eq(e){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let t=0;te.toJSON())),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||"number"!=typeof e.main||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new q(e.ranges.map((e=>W.fromJSON(e))),e.main)}static single(e,t=e){return new q([q.range(e,t)],0)}static create(e,t=0){if(0==e.length)throw new RangeError("A selection needs at least one range");for(let n=0,r=0;re.from-t.from)),t=e.indexOf(n);for(let n=1;nr.head?q.range(o,a):q.range(a,o))}}return new q(e,t)}function Y(e,t){for(let n of e.ranges)if(n.to>t)throw new RangeError("Selection points outside of document")}let Z=0;class U{constructor(e,t,n,r,i){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=r,this.extensions=i,this.id=Z++,this.default=e([])}static define(e={}){return new U(e.combine||(e=>e),e.compareInput||((e,t)=>e===t),e.compare||(e.combine?(e,t)=>e===t:E),!!e.static,e.enables)}of(e){return new I([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new I(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new I(e,this,2,t)}from(e,t){return t||(t=e=>e),this.compute([e],(n=>t(n.field(e))))}}function E(e,t){return e==t||e.length==t.length&&e.every(((e,n)=>e===t[n]))}class I{constructor(e,t,n,r){this.dependencies=e,this.facet=t,this.type=n,this.value=r,this.id=Z++}dynamicSlot(e){var t;let n=this.value,r=this.facet.compareInput,i=e[this.id]>>1,a=2==this.type,o=!1,s=!1,O=[];for(let n of this.dependencies)"doc"==n?o=!0:"selection"==n?s=!0:0==(1&(null!==(t=e[n.id])&&void 0!==t?t:1))&&O.push(e[n.id]);return(e,t)=>{if(!t||t.reconfigured)return e.values[i]=n(e),1;{if(!(o&&t.docChanged||s&&(t.docChanged||t.selection)||O.some((t=>(1&J(e,t))>0))))return 0;let l=n(e),c=t.startState.values[i];return(a?function(e,t,n){if(e.length!=t.length)return!1;for(let r=0;re[t.id])),i=n.map((e=>e.type)),a=r.filter((e=>!(1&e))),o=e[t.id]>>1;return(e,n)=>{let s=n?n.reconfigured?n.startState.config.address[t.id]:o<<1:null,O=null==s;for(let t of a)1&J(e,t)&&(O=!0);if(!O)return 0;let l=[];for(let t=0;t>1}const A=U.define({static:!0});class G{constructor(e,t,n,r,i){this.id=e,this.createF=t,this.updateF=n,this.compareF=r,this.spec=i,this.provides=void 0}static define(e){let t=new G(Z++,e.create,e.update,e.compare||((e,t)=>e===t),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(A).find((e=>e.field==this));return((null==t?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return(e,n)=>{if(!n||n.reconfigured&&null==C(n.startState,this.id))return e.values[t]=this.create(e),1;let r,i=0;n.reconfigured?(r=n.startState.values[C(n.startState,this.id)],i=1):r=n.startState.values[t];let a=this.updateF(r,n);return i||this.compareF(r,a)||(i=1),i&&(e.values[t]=a),i}}init(e){return[this,A.of({field:this,create:e})]}get extension(){return this}}const j=2,L=1,N=0;function D(e){return t=>new F(t,e)}const M={fallback:D(3),default:D(j),extend:D(L),override:D(N)};class F{constructor(e,t){this.inner=e,this.prec=t}}class B{of(e){return new H(this,e)}reconfigure(e){return B.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class H{constructor(e,t){this.compartment=e,this.inner=t}}class K{constructor(e,t,n,r,i){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=r,this.staticValues=i,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,t,n){let r=[],i=Object.create(null),a=new Map;for(let n of function(e,t,n){let r=[[],[],[],[]],i=new Map;function a(e,o){let s=i.get(e);if(null!=s){if(s>=o)return;let t=r[s].indexOf(e);t>-1&&r[s].splice(t,1),e instanceof H&&n.delete(e.compartment)}if(i.set(e,o),Array.isArray(e))for(let t of e)a(t,o);else if(e instanceof H){if(n.has(e.compartment))throw new RangeError("Duplicate use of compartment in extensions");let r=t.get(e.compartment)||e.inner;n.set(e.compartment,r),a(r,o)}else if(e instanceof F)a(e.inner,e.prec);else if(e instanceof G)r[o].push(e),e.provides&&a(e.provides,o);else if(e instanceof I)r[o].push(e),e.facet.extensions&&a(e.facet.extensions,o);else{let t=e.extension;if(!t)throw new Error(`Unrecognized extension value in extension set (${e}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);a(t,o)}}return a(e,j),r.reduce(((e,t)=>e.concat(t)))}(e,t,a))n instanceof G?r.push(n):(i[n.facet.id]||(i[n.facet.id]=[])).push(n);let o=Object.create(null),s=[],O=[];for(let e of r)o[e.id]=O.length<<1,O.push((t=>e.slot(t)));for(let e in i){let t=i[e],r=t[0].facet;if(t.every((e=>0==e.type))){o[r.id]=s.length<<1|1;let e=r.combine(t.map((e=>e.value))),i=n?n.config.address[r.id]:null;if(null!=i){let t=ee(n,i);r.compare(e,t)&&(e=t)}s.push(e)}else{for(let e of t)0==e.type?(o[e.id]=s.length<<1|1,s.push(e.value)):(o[e.id]=O.length<<1,O.push((t=>e.dynamicSlot(t))));o[r.id]=O.length<<1,O.push((e=>V(e,r,t)))}}return new K(e,a,O.map((e=>e(o))),o,s)}}function J(e,t){if(1&t)return 2;let n=t>>1,r=e.status[n];if(4==r)throw new Error("Cyclic dependency between fields and/or facets");if(2&r)return r;e.status[n]=4;let i=e.config.dynamicSlots[n](e,e.applying);return e.status[n]=2|i}function ee(e,t){return 1&t?e.config.staticValues[t>>1]:e.values[t>>1]}const te=U.define(),ne=U.define({combine:e=>e.some((e=>e)),static:!0}),re=U.define({combine:e=>e.length?e[0]:void 0,static:!0}),ie=U.define(),ae=U.define(),oe=U.define(),se=U.define({combine:e=>!!e.length&&e[0]});class Oe{constructor(e,t){this.type=e,this.value=t}static define(){return new le}}class le{of(e){return new Oe(this,e)}}class ce{constructor(e){this.map=e}of(e){return new ue(this,e)}}class ue{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return void 0===t?void 0:t==this.value?this:new ue(this.type,t)}is(e){return this.type==e}static define(e={}){return new ce(e.map||(e=>e))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let r of e){let e=r.map(t);e&&n.push(e)}return n}}ue.reconfigure=ue.define(),ue.appendConfig=ue.define();class he{constructor(e,t,n,r,i,a){this.startState=e,this.changes=t,this.selection=n,this.effects=r,this.annotations=i,this.scrollIntoView=a,this._doc=null,this._state=null,n&&Y(n,t.newLength),i.some((e=>e.type==he.time))||(this.annotations=i.concat(he.time.of(Date.now())))}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(he.userEvent);return t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&"."==t[e.length])}}function de(e,t){let n=[];for(let r=0,i=0;;){let a,o;if(r=e[r]))a=e[r++],o=e[r++];else{if(!(i=0;i--){let a=n[i](e);a&&Object.keys(a).length&&(r=pe(e,fe(t,a,e.changes.newLength),!0))}return r==e?e:new he(t,e.changes,e.selection,r.effects,r.annotations,r.scrollIntoView)}(n?function(e){let t=e.startState,n=!0;for(let r of t.facet(ie)){let t=r(e);if(!1===t){n=!1;break}Array.isArray(t)&&(n=!0===n?t:de(n,t))}if(!0!==n){let r,i;if(!1===n)i=e.changes.invertedDesc,r=P.empty(t.doc.length);else{let t=e.changes.filter(n);r=t.changes,i=t.filtered.invertedDesc}e=new he(t,r,e.selection&&e.selection.map(i),ue.mapEffects(e.effects,i),e.annotations,e.scrollIntoView)}let r=t.facet(ae);for(let n=r.length-1;n>=0;n--){let i=r[n](e);e=i instanceof he?i:Array.isArray(i)&&1==i.length&&i[0]instanceof he?i[0]:me(t,Qe(i),!1)}return e}(i):i)}he.time=Oe.define(),he.userEvent=Oe.define(),he.addToHistory=Oe.define(),he.remote=Oe.define();const ge=[];function Qe(e){return null==e?ge:Array.isArray(e)?e:[e]}var $e=function(e){return e[e.Word=0]="Word",e[e.Space=1]="Space",e[e.Other=2]="Other",e}($e||($e={}));const be=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let xe;try{xe=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(e){}function we(e){return t=>{if(!/\S/.test(t))return $e.Space;if(function(e){if(xe)return xe.test(e);for(let t=0;t"€"&&(n.toUpperCase()!=n.toLowerCase()||be.test(n)))return!0}return!1}(t))return $e.Word;for(let n=0;n-1)return $e.Word;return $e.Other}}class ke{constructor(e,t,n,r=null){if(this.config=e,this.doc=t,this.selection=n,this.applying=null,this.status=e.statusTemplate.slice(),r&&r.startState.config==e)this.values=r.startState.values.slice();else if(this.values=e.dynamicSlots.map((e=>null)),r)for(let t in e.address){let n=e.address[t],i=r.startState.config.address[t];null!=i&&0==(1&n)&&(this.values[n>>1]=ee(r.startState,i))}this.applying=r,r&&(r._state=this);for(let e=0;er.set(t,e))),t=null),r.set(i.value.compartment,i.value.extension)):i.is(ue.reconfigure)?(t=null,n=i.value):i.is(ue.appendConfig)&&(t=null,n=Qe(n).concat(i.value));new ke(t||K.resolve(n,r,this),e.newDoc,e.newSelection,e)}replaceSelection(e){return"string"==typeof e&&(e=this.toText(e)),this.changeByRange((t=>({changes:{from:t.from,to:t.to,insert:e},range:q.cursor(t.from+e.length)})))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),r=this.changes(n.changes),i=[n.range],a=Qe(n.effects);for(let n=1;ni.spec.fromJSON(a,e))))}return ke.create({doc:e.doc,selection:q.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=K.resolve(e.extensions||[],new Map),n=e.doc instanceof h?e.doc:h.of((e.doc||"").split(t.staticFacet(ke.lineSeparator)||w)),r=e.selection?e.selection instanceof q?e.selection:q.single(e.selection.anchor,e.selection.head):q.single(0);return Y(r,n.length),t.staticFacet(ne)||(r=r.asSingle()),new ke(t,n,r)}get tabSize(){return this.facet(ke.tabSize)}get lineBreak(){return this.facet(ke.lineSeparator)||"\n"}get readOnly(){return this.facet(se)}phrase(e){for(let t of this.facet(ke.phrases))if(Object.prototype.hasOwnProperty.call(t,e))return t[e];return e}languageDataAt(e,t,n=-1){let r=[];for(let i of this.facet(te))for(let a of i(this,t,n))Object.prototype.hasOwnProperty.call(a,e)&&r.push(a[e]);return r}charCategorizer(e){return we(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:t,from:n,length:i}=this.doc.lineAt(e),a=this.charCategorizer(e),o=e-n,s=e-n;for(;o>0;){let e=r(t,o,!1);if(a(t.slice(e,o))!=$e.Word)break;o=e}for(;se.length?e[0]:4}),ke.lineSeparator=re,ke.readOnly=se,ke.phrases=U.define(),ke.languageData=te,ke.changeFilter=ie,ke.transactionFilter=ae,ke.transactionExtender=oe,B.reconfigure=ue.define();const Pe="undefined"==typeof Symbol?"__ͼ":Symbol.for("ͼ"),ve="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),Se="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:{};class _e{constructor(e,t){this.rules=[];let{finish:n}=t||{};function r(e){return/^@/.test(e)?[e]:e.split(/,\s*/)}function i(e,t,a,o){let s=[],O=/^@(\w+)\b/.exec(e[0]),l=O&&"keyframes"==O[1];if(O&&null==t)return a.push(e[0]+";");for(let n in t){let o=t[n];if(/&/.test(n))i(n.split(/,\s*/).map((t=>e.map((e=>t.replace(/&/,e))))).reduce(((e,t)=>e.concat(t))),o,a);else if(o&&"object"==typeof o){if(!O)throw new RangeError("The value of a property ("+n+") should be a primitive value.");i(r(n),o,s,l)}else null!=o&&s.push(n.replace(/_.*/,"").replace(/[A-Z]/g,(e=>"-"+e.toLowerCase()))+": "+o+";")}(s.length||l)&&a.push((!n||O||o?e:e.map(n)).join(", ")+" {"+s.join(" ")+"}")}for(let t in e)i(r(t),e[t],this.rules)}getRules(){return this.rules.join("\n")}static newName(){let e=Se[Pe]||1;return Se[Pe]=e+1,"ͼ"+e.toString(36)}static mount(e,t){(e[ve]||new Te(e)).mount(Array.isArray(t)?t:[t])}}let Xe=null;class Te{constructor(e){if(!e.head&&e.adoptedStyleSheets&&"undefined"!=typeof CSSStyleSheet){if(Xe)return e.adoptedStyleSheets=[Xe.sheet].concat(e.adoptedStyleSheets),e[ve]=Xe;this.sheet=new CSSStyleSheet,e.adoptedStyleSheets=[this.sheet].concat(e.adoptedStyleSheets),Xe=this}else{this.styleTag=(e.ownerDocument||e).createElement("style");let t=e.head||e;t.insertBefore(this.styleTag,t.firstChild)}this.modules=[],e[ve]=this}mount(e){let t=this.sheet,n=0,r=0;for(let i=0;i-1&&(this.modules.splice(o,1),r--,o=-1),-1==o){if(this.modules.splice(r++,0,a),t)for(let e=0;e>1,s=i[r]-e||(n?this.value[r].endSide:this.value[r].startSide)-t;if(r==a)return s>=0?a:o;s>=0?o=r:a=r+1}}between(e,t,n,r){for(let i=this.findIndex(t,-1e9,!0),a=this.findIndex(n,1e9,!1,i);il||O==l&&c.startSide>0&&c.endSide<=0)continue;(l-O||c.endSide-c.startSide)<0||(a<0&&(a=O),c.point&&(o=Math.max(o,l-O)),n.push(c),r.push(O-a),i.push(l-a))}return{mapped:n.length?new ze(r,i,n,o):null,pos:a}}}class Ye{constructor(e,t,n=Ye.empty,r){this.chunkPos=e,this.chunk=t,this.nextLayer=n,this.maxPoint=r}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:n=!1,filterFrom:r=0,filterTo:i=this.length}=e,a=e.filter;if(0==t.length&&!a)return this;if(n&&t.slice().sort(qe),this.isEmpty)return t.length?Ye.of(t):this;let o=new Ee(this,null,-1).goto(0),s=0,O=[],l=new Ze;for(;o.value||s=0){let e=t[s++];l.addInner(e.from,e.to,e.value)||O.push(e)}else 1==o.rangeIndex&&o.chunkIndexthis.chunkEnd(o.chunkIndex)||io.to||i=i&&e<=i+a.length&&!1===a.between(i,e-i,t-i,n))return}this.nextLayer.between(e,t,n)}}iter(e=0){return Ie.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Ie.from(e).goto(t)}static compare(e,t,n,r,i=-1){let a=e.filter((e=>e.maxPoint>=500||!e.isEmpty&&t.indexOf(e)<0&&e.maxPoint>=i)),o=t.filter((t=>t.maxPoint>=500||!t.isEmpty&&e.indexOf(t)<0&&t.maxPoint>=i)),s=Ue(a,o),O=new Ce(a,s,i),l=new Ce(o,s,i);n.iterGaps(((e,t,n)=>Ae(O,e,l,t,n,r))),n.empty&&0==n.length&&Ae(O,0,l,0,0,r)}static eq(e,t,n=0,r){null==r&&(r=1e9);let i=e.filter((e=>!e.isEmpty&&t.indexOf(e)<0)),a=t.filter((t=>!t.isEmpty&&e.indexOf(t)<0));if(i.length!=a.length)return!1;if(!i.length)return!0;let o=Ue(i,a),s=new Ce(i,o,0).goto(n),O=new Ce(a,o,0).goto(n);for(;;){if(s.to!=O.to||!Ge(s.active,O.active)||s.point&&(!O.point||!s.point.eq(O.point)))return!1;if(s.to>=r)return!0;s.next(),O.next()}}static spans(e,t,n,r,i=-1){let a=new Ce(e,null,i).goto(t),o=t,s=a.openStart;for(;;){let e=Math.min(a.to,n);if(a.point?(r.point(o,e,a.point,a.activeForPoint(a.to),s),s=a.openEnd(e)+(a.to>e?1:0)):e>o&&(r.span(o,e,a.active,s),s=a.openEnd(e)),a.to>n)break;o=a.to,a.next()}return s}static of(e,t=!1){let n=new Ze;for(let r of e instanceof We?[e]:t?function(e){if(e.length>1)for(let t=e[0],n=1;n0)return e.slice().sort(qe);t=r}return e}(e):e)n.add(r.from,r.to,r.value);return n.finish()}}Ye.empty=new Ye([],[],null,-1),Ye.empty.nextLayer=Ye.empty;class Ze{constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}finishChunk(e){this.chunks.push(new ze(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}add(e,t,n){this.addInner(e,t,n)||(this.nextLayer||(this.nextLayer=new Ze)).add(e,t,n)}addInner(e,t,n){let r=e-this.lastTo||n.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||n.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return!(r<0)&&(250==this.from.length&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=n,this.lastFrom=e,this.lastTo=t,this.value.push(n),n.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let n=t.value.length-1;return this.last=t.value[n],this.lastFrom=t.from[n]+e,this.lastTo=t.to[n]+e,!0}finish(){return this.finishInner(Ye.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return e;let t=new Ye(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function Ue(e,t){let n=new Map;for(let t of e)for(let e=0;e=this.minPoint)break}}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=n&&r.push(new Ee(a,t,n,i));return 1==r.length?r[0]:new Ie(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let n of this.heap)n.goto(e,t);for(let e=this.heap.length>>1;e>=0;e--)Ve(this.heap,e);return this.next(),this}forward(e,t){for(let n of this.heap)n.forward(e,t);for(let e=this.heap.length>>1;e>=0;e--)Ve(this.heap,e);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(0==this.heap.length)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),Ve(this.heap,0)}}}function Ve(e,t){for(let n=e[t];;){let r=1+(t<<1);if(r>=e.length)break;let i=e[r];if(r+1=0&&(i=e[r+1],r++),n.compare(i)<0)break;e[r]=n,e[t]=i,t=r}}class Ce{constructor(e,t,n){this.minPoint=n,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=Ie.from(e,t,n)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){je(this.active,e),je(this.activeTo,e),je(this.activeRank,e),this.minActive=Ne(this.active,this.activeTo)}addActive(e){let t=0,{value:n,to:r,rank:i}=this.cursor;for(;t-1&&(this.activeTo[i]-this.cursor.from||this.active[i].endSide-this.cursor.startSide)<0){if(this.activeTo[i]>e){this.to=this.activeTo[i],this.endSide=this.active[i].endSide;break}this.removeActive(i),n&&je(n,i)}else{if(!this.cursor.value){this.to=this.endSide=1e9;break}if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}{let i=this.cursor.value;if(i.point){if(!(t&&this.cursor.to==this.to&&this.cursor.frome&&this.forward(this.to,this.endSide);break}this.cursor.next()}else this.addActive(n),this.cursor.next()}}}if(n){let t=0;for(;t=0&&!(this.activeRank[n]e||this.activeTo[n]==e&&this.active[n].endSide>=this.point.endSide)&&t.push(this.active[n]);return t.reverse()}openEnd(e){let t=0;for(let n=this.activeTo.length-1;n>=0&&this.activeTo[n]>e;n--)t++;return t}}function Ae(e,t,n,r,i,a){e.goto(t),n.goto(r);let o=r+i,s=r,O=r-t;for(;;){let t=e.to+O-n.to||e.endSide-n.endSide,r=t<0?e.to+O:n.to,i=Math.min(r,o);if(e.point||n.point?e.point&&n.point&&(e.point==n.point||e.point.eq(n.point))&&Ge(e.activeForPoint(e.to+O),n.activeForPoint(n.to))||a.comparePoint(s,i,e.point,n.point):i>s&&!Ge(e.active,n.active)&&a.compareRange(s,i,e.active,n.active),r>o)break;s=r,t<=0&&e.next(),t>=0&&n.next()}}function Ge(e,t){if(e.length!=t.length)return!1;for(let n=0;n=t;n--)e[n+1]=e[n];e[t]=n}function Ne(e,t){let n=-1,r=1e9;for(let i=0;i",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"',229:"Q"},Fe="undefined"!=typeof navigator&&/Chrome\/(\d+)/.exec(navigator.userAgent),Be="undefined"!=typeof navigator&&/Apple Computer/.test(navigator.vendor),He="undefined"!=typeof navigator&&/Gecko\/\d+/.test(navigator.userAgent),Ke="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),Je="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),et=Fe&&(Ke||+Fe[1]<57)||He&&Ke,tt=0;tt<10;tt++)De[48+tt]=De[96+tt]=String(tt);for(tt=1;tt<=24;tt++)De[tt+111]="F"+tt;for(tt=65;tt<=90;tt++)De[tt]=String.fromCharCode(tt+32),Me[tt]=String.fromCharCode(tt);for(var nt in De)Me.hasOwnProperty(nt)||(Me[nt]=De[nt]);function rt(e){return e.getSelection?e.getSelection():document.getSelection()}function it(e,t){return!!t&&e.contains(1!=t.nodeType?t.parentNode:t)}function at(e,t){if(!t.anchorNode)return!1;try{return it(e,t.anchorNode)}catch(e){return!1}}function ot(e){return 3==e.nodeType?Qt(e,0,e.nodeValue.length).getClientRects():1==e.nodeType?e.getClientRects():[]}function st(e,t,n,r){return!!n&&(lt(e,t,n,r,-1)||lt(e,t,n,r,1))}function Ot(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t}function lt(e,t,n,r,i){for(;;){if(e==n&&t==r)return!0;if(t==(i<0?0:ct(e))){if("DIV"==e.nodeName)return!1;let n=e.parentNode;if(!n||1!=n.nodeType)return!1;t=Ot(e)+(i<0?0:1),e=n}else{if(1!=e.nodeType)return!1;if(1==(e=e.childNodes[t+(i<0?-1:0)]).nodeType&&"false"==e.contentEditable)return!1;t=i<0?ct(e):0}}}function ct(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}const ut={left:0,right:0,top:0,bottom:0};function ht(e,t){let n=t?e.left:e.right;return{left:n,right:n,top:e.top,bottom:e.bottom}}function dt(e){return{left:0,right:e.innerWidth,top:0,bottom:e.innerHeight}}class pt{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}}let ft,mt=null;function gt(e){if(e.setActive)return e.setActive();if(mt)return e.focus(mt);let t=[];for(let n=e;n&&(t.push(n,n.scrollTop,n.scrollLeft),n!=n.ownerDocument);n=n.parentNode);if(e.focus(null==mt?{get preventScroll(){return mt={preventScroll:!0},!0}}:void 0),!mt){mt=!1;for(let e=0;et)return n.domBoundsAround(e,t,O);if(c>=e&&-1==r&&(r=s,i=O),O>t&&n.dom.parentNode==this.dom){a=s,o=l;break}l=c,O=c+n.breakAfter}return{from:i,to:o<0?n+this.length:o,startDOM:(r?this.children[r-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:a=0?this.children[a].dom:null}}markDirty(e=!1){this.dirty|=2,this.markParentsDirty(e)}markParentsDirty(e){for(let t=this.parent;t;t=t.parent){if(e&&(t.dirty|=2),1&t.dirty)return;t.dirty|=1,e=!1}}setParent(e){this.parent!=e&&(this.parent=e,this.dirty&&this.markParentsDirty(!0))}setDOM(e){this.dom&&(this.dom.cmView=null),this.dom=e,e.cmView=this}get rootView(){for(let e=this;;){let t=e.parent;if(!t)return e;e=t}}replaceChildren(e,t,n=kt){this.markDirty();for(let n=e;nthis.pos||e==this.pos&&(t>0||0==this.i||this.children[this.i-1].breakAfter))return this.off=e-this.pos,this;let n=this.children[--this.i];this.pos-=n.length+n.breakAfter}}}let[_t,Xt]="undefined"!=typeof navigator?[navigator,document]:[{userAgent:"",vendor:"",platform:""},{documentElement:{style:{}}}];const Tt=/Edge\/(\d+)/.exec(_t.userAgent),Rt=/MSIE \d/.test(_t.userAgent),Wt=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(_t.userAgent),qt=!!(Rt||Wt||Tt),zt=!qt&&/gecko\/(\d+)/i.test(_t.userAgent),Yt=!qt&&/Chrome\/(\d+)/.exec(_t.userAgent),Zt="webkitFontSmoothing"in Xt.documentElement.style,Ut=!qt&&/Apple Computer/.test(_t.vendor);var Et={mac:/Mac/.test(_t.platform),ie:qt,ie_version:Rt?Xt.documentMode||6:Wt?+Wt[1]:Tt?+Tt[1]:0,gecko:zt,gecko_version:zt?+(/Firefox\/(\d+)/.exec(_t.userAgent)||[0,0])[1]:0,chrome:!!Yt,chrome_version:Yt?+Yt[1]:0,ios:Ut&&(/Mobile\/\w+/.test(_t.userAgent)||_t.maxTouchPoints>2),android:/Android\b/.test(_t.userAgent),webkit:Zt,safari:Ut,webkit_version:Zt?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0,tabSize:null!=Xt.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};const It=[];class Vt extends yt{become(e){return!1}getSide(){return 0}}Vt.prototype.children=It;class Ct extends Vt{constructor(e){super(),this.text=e}get length(){return this.text.length}createDOM(e){this.setDOM(e||document.createTextNode(this.text))}sync(e){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text)}reuseDOM(e){return 3==e.nodeType&&(this.createDOM(e),!0)}merge(e,t,n){return(!n||n instanceof Ct&&!(this.length-(t-e)+n.length>256))&&(this.text=this.text.slice(0,e)+(n?n.text:"")+this.text.slice(t),this.markDirty(),!0)}slice(e){let t=new Ct(this.text.slice(e));return this.text=this.text.slice(0,e),t}localPosFromDOM(e,t){return e==this.dom?t:t?this.text.length:0}domAtPos(e){return new wt(this.dom,e)}domBoundsAround(e,t,n){return{from:n,to:n+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,t){return Gt(this.dom,e,t)}}class At extends Vt{constructor(e,t=[],n=0){super(),this.mark=e,this.children=t,this.length=n;for(let e of t)e.setParent(this)}createDOM(){let e=document.createElement(this.mark.tagName);if(this.mark.class&&(e.className=this.mark.class),this.mark.attrs)for(let t in this.mark.attrs)e.setAttribute(t,this.mark.attrs[t]);this.setDOM(e)}sync(e){(!this.dom||4&this.dirty)&&this.createDOM(),super.sync(e)}merge(e,t,n,r,i){return(!n||!(!(n instanceof At&&n.mark.eq(this.mark))||e&&r<=0||te&&t.push(n=e&&(r=i),n=o,i++}let a=this.length-e;return this.length=e,r>-1&&this.replaceChildren(r,this.children.length),new At(this.mark,t,a)}domAtPos(e){return Dt(this.dom,this.children,e)}coordsAt(e,t){return Ft(this,e,t)}}function Gt(e,t,n){let r=e.nodeValue.length;t>r&&(t=r);let i=t,a=t,o=0;0==t&&n<0||t==r&&n>=0?Et.chrome||Et.gecko||(t?(i--,o=1):(a++,o=-1)):n<0?i--:a++;let s=Qt(e,i,a).getClientRects();if(!s.length)return ut;let O=s[(o?o<0:n>=0)?0:s.length-1];return Et.safari&&!o&&0==O.width&&(O=Array.prototype.find.call(s,(e=>e.width))||O),o?ht(O,o<0):O}class jt extends Vt{constructor(e,t,n){super(),this.widget=e,this.length=t,this.side=n}static create(e,t,n){return new(e.customView||jt)(e,t,n)}slice(e){let t=jt.create(this.widget,this.length-e,this.side);return this.length-=e,t}sync(){this.dom&&this.widget.updateDOM(this.dom)||(this.setDOM(this.widget.toDOM(this.editorView)),this.dom.contentEditable="false")}getSide(){return this.side}merge(e,t,n,r,i){return!(n&&(!(n instanceof jt&&this.widget.compare(n.widget))||e>0&&r<=0||t0?n.length-1:0;r=n[t],!(e>0?0==t:t==n.length-1||r.top0?-1:1);return 0==e&&t>0||e==this.length&&t<=0?r:ht(r,0==e)}}class Lt extends jt{domAtPos(e){return new wt(this.widget.text,e)}sync(){this.dom||this.setDOM(this.widget.toDOM())}localPosFromDOM(e,t){return t?3==e.nodeType?Math.min(t,this.length):this.length:0}ignoreMutation(){return!1}get overrideDOMText(){return null}coordsAt(e,t){return Gt(this.widget.text,e,t)}}function Nt(e,t,n,r,i,a){let o=e.childCursor(),{i:s,off:O}=o.findPos(n,1),{i:l,off:c}=o.findPos(t,-1),u=t-n;for(let e of r)u+=e.length;e.length+=u;let{children:h}=e;if(l==s&&c){let e=h[l];if(1==r.length&&e.merge(c,O,r[0],i,a))return;if(0==r.length)return void e.merge(c,O,null,i,a);let t=e.slice(O);t.merge(0,0,r[r.length-1],0,a)?r[r.length-1]=t:r.push(t),s++,a=O=0}if(O){let e=h[s];r.length&&e.merge(0,O,r[r.length-1],0,a)?(r.pop(),a=r.length?0:i):e.merge(0,O,null,0,0)}else si&&n0;r--){let n=t[r-1].dom;if(n.parentNode==e)return wt.after(n)}return new wt(e,0)}function Mt(e,t,n){let r,{children:i}=e;n>0&&t instanceof At&&i.length&&(r=i[i.length-1])instanceof At&&r.mark.eq(t.mark)?Mt(r,t.children[0],n-1):(i.push(t),t.setParent(e)),e.length+=t.length}function Ft(e,t,n){for(let r=0,i=0;i0?s>=t:s>t)&&(t0)){let e=0;if(s==r){if(o.getSide()<=0)continue;e=n=-o.getSide()}let i=o.coordsAt(t-r,n);return e&&i?ht(i,n<0):i}r=s}let r=e.dom.lastChild;if(!r)return e.dom.getBoundingClientRect();let i=ot(r);return i[i.length-1]}function Bt(e,t){for(let n in e)"class"==n&&t.class?t.class+=" "+e.class:"style"==n&&t.style?t.style+=";"+e.style:t[n]=e[n];return t}function Ht(e,t){if(e==t)return!0;if(!e||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!=r.length)return!1;for(let i of n)if(-1==r.indexOf(i)||e[i]!==t[i])return!1;return!0}function Kt(e,t,n){if(t)for(let r in t)n&&r in n||e.removeAttribute(r);if(n)for(let r in n)t&&t[r]==n[r]||e.setAttribute(r,n[r])}class Jt{eq(e){return!1}updateDOM(e){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}ignoreEvent(e){return!0}get customView(){return null}}var en=function(e){return e[e.Text=0]="Text",e[e.WidgetBefore=1]="WidgetBefore",e[e.WidgetAfter=2]="WidgetAfter",e[e.WidgetRange=3]="WidgetRange",e}(en||(en={}));class tn extends Re{constructor(e,t,n,r){super(),this.startSide=e,this.endSide=t,this.widget=n,this.spec=r}get heightRelevant(){return!1}static mark(e){return new nn(e)}static widget(e){let t=e.side||0;return e.block&&(t+=200000001*(t>0?1:-1)),new an(e,t,t,!!e.block,e.widget||null,!1)}static replace(e){let t=!!e.block,{start:n,end:r}=on(e);return new an(e,t?-2e8*(n?2:1):1e8*(n?-1:1),t?2e8*(r?2:1):1e8*(r?1:-1),t,e.widget||null,!0)}static line(e){return new rn(e)}static set(e,t=!1){return Ye.of(e,t)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}}tn.none=Ye.empty;class nn extends tn{constructor(e){let{start:t,end:n}=on(e);super(1e8*(t?-1:1),1e8*(n?1:-1),null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){return this==e||e instanceof nn&&this.tagName==e.tagName&&this.class==e.class&&Ht(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}nn.prototype.point=!1;class rn extends tn{constructor(e){super(-1e8,-1e8,null,e)}eq(e){return e instanceof rn&&Ht(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}rn.prototype.mapMode=k.TrackBefore,rn.prototype.point=!0;class an extends tn{constructor(e,t,n,r,i,a){super(t,n,i,e),this.block=r,this.isReplace=a,this.mapMode=r?t<0?k.TrackBefore:k.TrackAfter:k.TrackDel}get type(){return this.startSide=5}eq(e){return e instanceof an&&function(e,t){return e==t||!!(e&&t&&e.compare(t))}(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}function on(e){let{inclusiveStart:t,inclusiveEnd:n}=e;return null==t&&(t=e.inclusive),null==n&&(n=e.inclusive),{start:t||!1,end:n||!1}}function sn(e,t,n,r=0){let i=n.length-1;i>=0&&n[i]+r>e?n[i]=Math.max(n[i],t):n.push(e,t)}an.prototype.point=!0;class On extends yt{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(e,t,n,r,i,a){if(n){if(!(n instanceof On))return!1;this.dom||n.transferDOM(this)}return r&&this.setDeco(n?n.attrs:null),Nt(this,e,t,n?n.children:ln,i,a),!0}split(e){let t=new On;if(t.breakAfter=this.breakAfter,0==this.length)return t;let{i:n,off:r}=this.childPos(e);r&&(t.append(this.children[n].slice(r),0),this.children[n].merge(r,this.children[n].length,null,0,0),n++);for(let e=n;e0&&0==this.children[n-1].length;)this.children[n-1].parent=null,n--;return this.children.length=n,this.markDirty(),this.length=e,t}transferDOM(e){this.dom&&(e.setDOM(this.dom),e.prevAttrs=void 0===this.prevAttrs?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(e){Ht(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,t){Mt(this,e,t)}addLineDeco(e){let t=e.spec.attributes;t&&(this.attrs=Bt(t,this.attrs||{}))}domAtPos(e){return Dt(this.dom,this.children,e)}sync(e){(!this.dom||4&this.dirty)&&(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),void 0!==this.prevAttrs&&(Kt(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e);let t=this.dom.lastChild;for(;t&&yt.get(t)instanceof At;)t=t.lastChild;if(!t||"BR"!=t.nodeName&&yt.get(t)instanceof jt&&(!Et.ios||!this.children.some((e=>e instanceof Ct)))){let e=document.createElement("BR");e.cmIgnore=!0,this.dom.appendChild(e)}}measureTextSize(){if(0==this.children.length||this.length>20)return null;let e=0;for(let t of this.children){if(!(t instanceof Ct))return null;let n=ot(t.dom);if(1!=n.length)return null;e+=n[0].width}return{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length}}coordsAt(e,t){return Ft(this,e,t)}match(e){return!1}get type(){return en.Text}static find(e,t){for(let n=0,r=0;;n++){let i=e.children[n],a=r+i.length;if(a>=t){if(i instanceof On)return i;if(i.length)return null}r=a+i.breakAfter}}}const ln=[];class cn extends yt{constructor(e,t,n){super(),this.widget=e,this.length=t,this.type=n,this.breakAfter=0}merge(e,t,n,r,i,a){return!(n&&(!(n instanceof cn&&this.widget.compare(n.widget))||e>0&&i<=0||t0;){if(this.textOff==this.text.length){let{value:t,lineBreak:n,done:r}=this.cursor.next(this.skip);if(this.skip=0,r)throw new Error("Ran out of text content when drawing inline views");if(n){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.curLine=null,e--;continue}this.text=t,this.textOff=0}let r=Math.min(this.text.length-this.textOff,e,512);this.getLine().append(this.wrapMarks(new Ct(this.text.slice(this.textOff,this.textOff+r)),t),n),this.textOff+=r,e-=r,n=0}}span(e,t,n,r){this.buildText(t-e,n,r),this.pos=t,this.openStart<0&&(this.openStart=r)}point(e,t,n,r,i){let a=t-e;if(n instanceof an)if(n.block){let{type:e}=n;e!=en.WidgetAfter||this.posCovered()||this.getLine(),this.addWidget(new cn(n.widget||new hn("div"),a,e))}else{let e=this.wrapMarks(jt.create(n.widget||new hn("span"),a,n.startSide),r);this.getLine().append(e,i)}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(n);a&&(this.textOff+a<=this.text.length?this.textOff+=a:(this.skip+=a-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=t),this.openStart<0&&(this.openStart=i)}static build(e,t,n,r){let i=new un(e,t,n);return i.openEnd=Ye.spans(r,t,n,i),i.openStart<0&&(i.openStart=i.openEnd),i.finish(),i}}class hn extends Jt{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}}const dn=[],pn=U.define(),fn=U.define(),mn=U.define(),gn=U.define(),Qn=U.define(),$n=U.define(),bn=ue.define({map:(e,t)=>e.map(t)});function xn(e,t,n){let r=e.facet(gn);r.length?r[0](t):window.onerror&&window.onerror(String(t),n,void 0,void 0,t)}const wn=U.define({combine:e=>!e.length||e[0]});class kn{constructor(e,t){this.field=e,this.get=t}}class yn{from(e){return new kn(this,e)}static define(){return new yn}}yn.decorations=yn.define(),yn.atomicRanges=yn.define(),yn.scrollMargins=yn.define();let Pn=0;const vn=U.define();class Sn{constructor(e,t,n){this.id=e,this.create=t,this.fields=n,this.extension=vn.of(this)}static define(e,t){let{eventHandlers:n,provide:r,decorations:i}=t||{},a=[];if(r)for(let e of Array.isArray(r)?r:[r])a.push(e);return n&&a.push(_n.from((e=>({plugin:e,handlers:n})))),i&&a.push(yn.decorations.from(i)),new Sn(Pn++,e,a)}static fromClass(e,t){return Sn.define((t=>new e(t)),t)}}const _n=yn.define();class Xn{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}takeField(e,t){for(let{field:n,get:r}of this.spec.fields)n==e&&t.push(r(this.value))}update(e){if(this.value){if(this.mustUpdate){let e=this.mustUpdate;if(this.mustUpdate=null,!this.value.update)return this;try{this.value.update(e)}catch(t){if(xn(e.state,t,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(e){}return Xn.dummy}}}else try{this.value=this.spec.create(e)}catch(t){return xn(e.state,t,"CodeMirror plugin crashed"),Xn.dummy}return this}destroy(e){var t;if(null===(t=this.value)||void 0===t?void 0:t.destroy)try{this.value.destroy()}catch(t){xn(e.state,t,"CodeMirror plugin crashed")}}}Xn.dummy=new Xn(Sn.define((()=>({}))));const Tn=U.define({combine:e=>e.reduce(((e,t)=>Bt(t,e)),{})}),Rn=U.define({combine:e=>e.reduce(((e,t)=>Bt(t,e)),{})}),Wn=U.define(),qn=U.define();class zn{constructor(e,t,n,r){this.fromA=e,this.toA=t,this.fromB=n,this.toB=r}join(e){return new zn(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,n=this;for(;t>0;t--){let r=e[t-1];if(!(r.fromA>n.toA)){if(r.toAl)break;i+=2}if(!s)return n;new zn(s.fromA,s.toA,s.fromB,s.toB).addToSet(n),a=s.toA,o=s.toB}}}class Yn{constructor(e,t,n=dn){this.view=e,this.state=t,this.transactions=n,this.flags=0,this.startState=e.state,this.changes=P.empty(this.startState.doc.length);for(let e of n)this.changes=this.changes.compose(e.changes);let r=[];this.changes.iterChangedRanges(((e,t,n,i)=>r.push(new zn(e,t,n,i)))),this.changedRanges=r;let i=e.hasFocus;i!=e.inputState.notifiedFocused&&(e.inputState.notifiedFocused=i,this.flags|=1),this.docChanged&&(this.flags|=2)}get viewportChanged(){return(4&this.flags)>0}get heightChanged(){return(2&this.flags)>0}get geometryChanged(){return this.docChanged||(18&this.flags)>0}get focusChanged(){return(1&this.flags)>0}get docChanged(){return this.transactions.some((e=>e.docChanged))}get selectionSet(){return this.transactions.some((e=>e.selection))}get empty(){return 0==this.flags&&0==this.transactions.length}}class Zn extends yt{constructor(e){super(),this.view=e,this.compositionDeco=tn.none,this.decorations=[],this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.setDOM(e.contentDOM),this.children=[new On],this.children[0].setParent(this),this.updateInner([new zn(0,0,0,e.state.doc.length)],this.updateDeco(),0)}get root(){return this.view.root}get editorView(){return this.view}get length(){return this.view.state.doc.length}update(e){let t=e.changedRanges;this.minWidth>0&&t.length&&(t.every((({fromA:e,toA:t})=>tthis.minWidthTo))?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=0),this.view.inputState.composing<0?this.compositionDeco=tn.none:e.transactions.length&&(this.compositionDeco=function(e,t){let n=e.observer.selectionRange,r=n.focusNode&&In(n.focusNode,n.focusOffset,0);if(!r)return tn.none;let i,a,o=e.docView.nearest(r),s=r;if(o instanceof Vt){for(;o.parent instanceof Vt;)o=o.parent;i=o.posAtStart,a=i+o.length,s=o.dom}else{if(!(o instanceof On))return tn.none;{for(;s.parentNode!=o.dom;)s=s.parentNode;let e=s.previousSibling;for(;e&&!yt.get(e);)e=e.previousSibling;i=a=e?yt.get(e).posAtEnd:o.posAtStart}}let O=t.mapPos(i,1),l=Math.max(O,t.mapPos(a,-1)),c=r.nodeValue,{state:u}=e;if(l-Oe.isUserEvent("select.pointer")));return 0==this.dirty&&0==t.length&&!(12&e.flags)&&e.state.selection.main.from>=this.view.viewport.from&&e.state.selection.main.to<=this.view.viewport.to?(this.updateSelection(n,o),!1):(this.updateInner(t,i,e.startState.doc.length,n,o),!0)}updateInner(e,t,n,r=!1,i=!1){this.updateChildren(e,t,n);let{observer:a}=this.view;a.ignore((()=>{this.dom.style.height=this.view.viewState.domHeight+"px",this.dom.style.minWidth=this.minWidth?this.minWidth+"px":"";let e=Et.chrome||Et.ios?{node:a.selectionRange.focusNode,written:!1}:void 0;this.sync(e),this.dirty=0,e&&(e.written||a.selectionRange.focusNode!=e.node)&&(r=!0),this.updateSelection(r,i),this.dom.style.height=""}))}updateChildren(e,t,n){let r=this.childCursor(n);for(let n=e.length-1;;n--){let i=n>=0?e[n]:null;if(!i)break;let{fromA:a,toA:o,fromB:s,toB:O}=i,{content:l,breakAtStart:c,openStart:u,openEnd:h}=un.build(this.view.state.doc,s,O,t),{i:d,off:p}=r.findPos(o,1),{i:f,off:m}=r.findPos(a,-1);this.replaceRange(f,m,d,p,l,c,u,h)}}replaceRange(e,t,n,r,i,a,o,s){let O=this.children[e],l=i.length?i[i.length-1]:null,c=l?l.breakAfter:a;if(e==n&&!a&&!c&&i.length<2&&O.merge(t,r,i.length?l:null,0==t,o,s))return;let u=this.children[n];for(r0&&(!a&&i.length&&O.merge(t,O.length,i[0],!1,o,0)?O.breakAfter=i.shift().breakAfter:(tr.node.insertBefore(t,r.node.childNodes[r.offset]||null))),r=i=new wt(t,0),e=!0}var a;let o=this.view.observer.selectionRange;!e&&o.focusNode&&st(r.node,r.offset,o.anchorNode,o.anchorOffset)&&st(i.node,i.offset,o.focusNode,o.focusOffset)||(this.view.observer.ignore((()=>{let e=rt(this.root);if(n.empty){if(Et.gecko){let e=(t=r.node,a=r.offset,1!=t.nodeType?0:(a&&"false"==t.childNodes[a-1].contentEditable?1:0)|(an.head&&([r,i]=[i,r]),t.setEnd(i.node,i.offset),t.setStart(r.node,r.offset),e.removeAllRanges(),e.addRange(t)}var t,a})),this.view.observer.setSelectionRange(r,i)),this.impreciseAnchor=r.precise?null:new wt(o.anchorNode,o.anchorOffset),this.impreciseHead=i.precise?null:new wt(o.focusNode,o.focusOffset)}enforceCursorAssoc(){if(this.view.composing)return;let e=this.view.state.selection.main,t=rt(this.root);if(!e.empty||!e.assoc||!t.modify)return;let n=On.find(this,e.head);if(!n)return;let r=n.posAtStart;if(e.head==r||e.head==r+n.length)return;let i=this.coordsAt(e.head,-1),a=this.coordsAt(e.head,1);if(!i||!a||i.bottom>a.top)return;let o=this.domAtPos(e.head+e.assoc);t.collapse(o.node,o.offset),t.modify("move",e.assoc<0?"forward":"backward","lineboundary")}mayControlSelection(){return this.view.state.facet(wn)?this.root.activeElement==this.dom:at(this.dom,this.view.observer.selectionRange)}nearest(e){for(let t=e;t;){let e=yt.get(t);if(e&&e.rootView==this)return e;t=t.parentNode}return null}posFromDOM(e,t){let n=this.nearest(e);if(!n)throw new RangeError("Trying to find position for a DOM position outside of the document");return n.localPosFromDOM(e,t)+n.posAtStart}domAtPos(e){let{i:t,off:n}=this.childCursor().findPos(e,-1);for(;ta||e==a&&i.type!=en.WidgetBefore&&i.type!=en.WidgetAfter&&(!r||2==t||this.children[r-1].breakAfter||this.children[r-1].type==en.WidgetBefore&&t>-2))return i.coordsAt(e-a,t);n=a}}measureVisibleLineHeights(){let e=[],{from:t,to:n}=this.view.viewState.viewport,r=Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1;for(let i=0,a=0;an)break;if(i>=t){e.push(o.dom.getBoundingClientRect().height);let t=o.dom.scrollWidth;t>r&&(this.minWidth=r=t,this.minWidthFrom=i,this.minWidthTo=s)}i=s+o.breakAfter}return e}measureTextSize(){for(let e of this.children)if(e instanceof On){let t=e.measureTextSize();if(t)return t}let e,t,n=document.createElement("div");return n.className="cm-line",n.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore((()=>{this.dom.appendChild(n);let r=ot(n.firstChild)[0];e=n.getBoundingClientRect().height,t=r?r.width/27:7,n.remove()})),{lineHeight:e,charWidth:t}}childCursor(e=this.length){let t=this.children.length;return t&&(e-=this.children[--t].length),new St(this.children,e,t)}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let n=0,r=0;;r++){let i=r==t.viewports.length?null:t.viewports[r],a=i?i.from-1:this.length;if(a>n){let r=t.lineAt(a,0).bottom-t.lineAt(n,0).top;e.push(tn.replace({widget:new Un(r),block:!0,inclusive:!0}).range(n,a))}if(!i)break;n=i.to+1}return tn.set(e)}updateDeco(){return this.decorations=[...this.view.pluginField(yn.decorations),...this.view.state.facet(Wn),this.compositionDeco,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco]}scrollRangeIntoView(e){let t,n=this.coordsAt(e.head,e.empty?e.assoc:e.head>e.anchor?-1:1);if(!n)return;!e.empty&&(t=this.coordsAt(e.anchor,e.anchor>e.head?-1:1))&&(n={left:Math.min(n.left,t.left),top:Math.min(n.top,t.top),right:Math.max(n.right,t.right),bottom:Math.max(n.bottom,t.bottom)});let r=0,i=0,a=0,o=0;for(let e of this.view.pluginField(yn.scrollMargins))if(e){let{left:t,right:n,top:s,bottom:O}=e;null!=t&&(r=Math.max(r,t)),null!=n&&(i=Math.max(i,n)),null!=s&&(a=Math.max(a,s)),null!=O&&(o=Math.max(o,O))}!function(e,t,n){let r=e.ownerDocument,i=r.defaultView;for(let a=e.parentNode;a;)if(1==a.nodeType){let e,o=a==r.body;if(o)e=dt(i);else{if(a.scrollHeight<=a.clientHeight&&a.scrollWidth<=a.clientWidth){a=a.parentNode;continue}let t=a.getBoundingClientRect();e={left:t.left,right:t.left+a.clientWidth,top:t.top,bottom:t.top+a.clientHeight}}let s=0,O=0;if(t.top0&&t.bottom>e.bottom+O&&(O=t.bottom-e.bottom+O+5)):t.bottom>e.bottom&&(O=t.bottom-e.bottom+5,n<0&&t.top-O0&&t.right>e.right+s&&(s=t.right-e.right+s+5)):t.right>e.right&&(s=t.right-e.right+5,n<0&&t.left0&&n<=0)t=ct(e=e.childNodes[t-1]);else{if(!(1==e.nodeType&&t=0))return null;e=e.childNodes[t],t=0}}}class Vn{constructor(){this.changes=[]}compareRange(e,t){sn(e,t,this.changes)}comparePoint(e,t){sn(e,t,this.changes)}}var Cn=function(e){return e[e.LTR=0]="LTR",e[e.RTL=1]="RTL",e}(Cn||(Cn={}));const An=Cn.LTR,Gn=Cn.RTL;function jn(e){let t=[];for(let n=0;n=t){if(o.level==n)return a;(i<0||(0!=r?r<0?o.fromt:e[i].level>o.level))&&(i=a)}}if(i<0)throw new RangeError("Index out of range");return i}}const Kn=[];function Jn(e){return[new Hn(0,e,0)]}let er="";function tr(e,t,n,i,a){var o;let s=i.head-e.from,O=-1;if(0==s){if(!a||!e.length)return null;t[0].level!=n&&(s=t[0].side(!1,n),O=0)}else if(s==e.length){if(a)return null;let e=t[t.length-1];e.level!=n&&(s=e.side(!0,n),O=t.length-1)}O<0&&(O=Hn.find(t,s,null!==(o=i.bidiLevel)&&void 0!==o?o:-1,i.assoc));let l=t[O];s==l.side(a,n)&&(l=t[O+=a?1:-1],s=l.side(!a,n));let c=a==(l.dir==n),u=r(e.text,s,c);if(er=e.text.slice(Math.min(s,u),Math.max(s,u)),u!=l.side(a,n))return q.cursor(u+e.from,c?-1:1,l.level);let h=O==(a?t.length-1:0)?null:t[O+(a?1:-1)];return h||l.level==n?h&&h.levele?t.left-e:Math.max(0,e-t.right)}function rr(e,t){return t.top>e?t.top-e:Math.max(0,e-t.bottom)}function ir(e,t){return e.topt.top+1}function ar(e,t){return te.bottom?{top:e.top,left:e.left,right:e.right,bottom:t}:e}function sr(e,t,n){let r,i,a,o,s,O,l,c;for(let u=e.firstChild;u;u=u.nextSibling){let e=ot(u);for(let h=0;hf||o==f&&a>p)&&(r=u,i=d,a=p,o=f),0==p?n>d.bottom&&(!l||l.bottomd.top)&&(O=u,c=d):l&&ir(l,d)?l=or(l,d.bottom):c&&ir(c,d)&&(c=ar(c,d.top))}}if(l&&l.bottom>=n?(r=s,i=l):c&&c.top<=n&&(r=O,i=c),!r)return{node:e,offset:0};let u=Math.max(i.left,Math.min(i.right,t));return 3==r.nodeType?Or(r,u,n):a||"true"!=r.contentEditable?{node:e,offset:Array.prototype.indexOf.call(e.childNodes,r)+(t>=(i.left+i.right)/2?1:0)}:sr(r,u,n)}function Or(e,t,n){let r=e.nodeValue.length,i=-1,a=1e9,o=0;for(let s=0;sn?l.top-n:n-l.bottom)-1;if(l.left-1<=t&&l.right+1>=t&&c=(l.left+l.right)/2,r=n;if(Et.chrome||Et.gecko){Qt(e,s).getBoundingClientRect().left==l.right&&(r=!n)}if(c<=0)return{node:e,offset:s+(r?1:0)};i=s+(r?1:0),a=c}}}return{node:e,offset:i>-1?i:o>0?e.nodeValue.length:0}}function lr(e,{x:t,y:n},r,i=-1){let a,o=e.contentDOM.getBoundingClientRect(),s=e.defaultLineHeight/2;for(let t=!1;;){if(a=e.blockAtHeight(n,o.top),a.top>n||a.bottomn?-1:1,n=Math.min(a.bottom-s,Math.max(a.top+s,n)),t)return r?null:0;t=!0}if(a.type==en.Text)break;n=i>0?a.bottom+s:a.top-s}let O=a.from;if(t=Math.max(o.left+1,Math.min(o.right-1,t)),Oe.viewport.to)return e.viewport.to==e.state.doc.length?e.state.doc.length:cr(e,o,a,t,n);let l,c=e.root,u=c.elementFromPoint(t,n),h=-1;if(u&&e.contentDOM.contains(u)&&!(e.docView.nearest(u)instanceof jt))if(c.caretPositionFromPoint){let e=c.caretPositionFromPoint(t,n);e&&({offsetNode:l,offset:h}=e)}else if(c.caretRangeFromPoint){let e=c.caretRangeFromPoint(t,n);e&&(({startContainer:l,startOffset:h}=e),Et.safari&&function(e,t,n){let r;if(3!=e.nodeType||t!=(r=e.nodeValue.length))return!1;for(let t=e.nextSibling;t;t=t.nextSibling)if(1!=t.nodeType||"BR"!=t.nodeName)return!1;return Qt(e,r-1,r).getBoundingClientRect().left>n}(l,h,t)&&(l=void 0))}if(!l||!e.docView.dom.contains(l)){let r=On.find(e.docView,O);({node:l,offset:h}=sr(r.dom,t,n))}return e.docView.posFromDOM(l,h)}function cr(e,t,n,i,a){let o=Math.round((i-t.left)*e.defaultCharacterWidth);if(e.lineWrapping&&n.height>1.5*e.defaultLineHeight){o+=Math.floor((a-n.top)/e.defaultLineHeight)*e.viewState.heightOracle.lineLength}let s=e.state.sliceDoc(n.from,n.to);return n.from+function(e,t,n){for(let i=0,a=0;i=t)return i;a+=9==e.charCodeAt(i)?n-a%n:1,i=r(e,i)}return e.length}(s,o,e.state.tabSize)}function ur(e,t,n,r){let i=e.state.doc.lineAt(t.head),a=e.bidiSpans(i);for(let o=t,s=null;;){let t=tr(i,a,e.textDirection,o,n),O=er;if(!t){if(i.number==(n?e.state.doc.lines:1))return o;O="\n",i=e.state.doc.line(i.number+(n?1:-1)),a=e.bidiSpans(i),t=q.cursor(n?i.from:i.to)}if(s){if(!s(O))return o}else{if(!r)return t;s=r(O)}o=t}}function hr(e,t,n){let r=e.pluginField(yn.atomicRanges);for(;;){let e=!1;for(let i of r)i.between(n.from-1,n.from+1,((r,i,a)=>{n.from>r&&n.fromn.from?q.cursor(r,1):q.cursor(i,-1),e=!0)}));if(!e)return n}}class dr{constructor(e){this.lastKeyCode=0,this.lastKeyTime=0,this.pendingIOSKey=null,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastEscPress=0,this.lastContextMenu=0,this.scrollHandlers=[],this.registeredEvents=[],this.customHandlers=[],this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.rapidCompositionStart=!1,this.mouseSelection=null;for(let t in gr){let n=gr[t];e.contentDOM.addEventListener(t,(r=>{"keydown"==t&&this.keydown(e,r)||mr(e,r)&&!this.ignoreDuringComposition(r)&&(this.mustFlushObserver(r)&&e.observer.forceFlush(),this.runCustomHandlers(t,e,r)?r.preventDefault():n(e,r))})),this.registeredEvents.push(t)}this.notifiedFocused=e.hasFocus,this.ensureHandlers(e),Et.safari&&e.contentDOM.addEventListener("input",(()=>null))}setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}ensureHandlers(e){let t=this.customHandlers=e.pluginField(_n);for(let n of t)for(let t in n.handlers)this.registeredEvents.indexOf(t)<0&&"scroll"!=t&&(this.registeredEvents.push(t),e.contentDOM.addEventListener(t,(n=>{mr(e,n)&&this.runCustomHandlers(t,e,n)&&n.preventDefault()})))}runCustomHandlers(e,t,n){for(let r of this.customHandlers){let i=r.handlers[e],a=!1;if(i){try{a=i.call(r.plugin,n,t)}catch(e){xn(t.state,e)}if(a||n.defaultPrevented)return Et.android&&"keydown"==e&&13==n.keyCode&&t.observer.flushSoon(),!0}}return!1}runScrollHandlers(e,t){for(let n of this.customHandlers){let r=n.handlers.scroll;if(r)try{r.call(n.plugin,t,e)}catch(t){xn(e.state,t)}}}keydown(e,t){return this.lastKeyCode=t.keyCode,this.lastKeyTime=Date.now(),!!this.screenKeyEvent(e,t)||!(!Et.ios||13!=t.keyCode&&8!=t.keyCode||t.ctrlKey||t.altKey||t.metaKey||t.synthetic)&&(this.pendingIOSKey=13==t.keyCode?"enter":"backspace",setTimeout((()=>this.flushIOSKey(e)),250),!0)}flushIOSKey(e){if(!this.pendingIOSKey)return!1;let t=e.contentDOM,n=this.pendingIOSKey;return this.pendingIOSKey=null,"enter"==n?$t(t,"Enter",13):$t(t,"Backspace",8)}ignoreDuringComposition(e){return!!/^key/.test(e.type)&&(this.composing>0||!!(Et.safari&&Date.now()-this.compositionEndedAt<500)&&(this.compositionEndedAt=0,!0))}screenKeyEvent(e,t){let n=9==t.keyCode&&Date.now()=t.clientX&&n.top<=t.clientY&&n.bottom>=t.clientY)return!0}return!1}(t,n)&&null,!1===this.dragging&&(n.preventDefault(),this.select(n))}move(e){if(0==e.buttons)return this.destroy();!1===this.dragging&&this.select(this.lastEvent=e)}up(e){null==this.dragging&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.inputState.mouseSelection=null}select(e){let t=this.style.get(e,this.extend,this.multiple);t.eq(this.view.state.selection)&&t.main.assoc==this.view.state.selection.main.assoc||this.view.dispatch({selection:t,userEvent:"select.pointer",scrollIntoView:!0})}update(e){e.docChanged&&this.dragging&&(this.dragging=this.dragging.map(e.changes)),this.style.update(e)&&setTimeout((()=>this.select(this.lastEvent)),20)}}function mr(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let n,r=t.target;r!=e.contentDOM;r=r.parentNode)if(!r||11==r.nodeType||(n=yt.get(r))&&n.ignoreEvent(t))return!1;return!0}const gr=Object.create(null),Qr=Et.ie&&Et.ie_version<15||Et.ios&&Et.webkit_version<604;function $r(e,t){let n,{state:r}=e,i=1,a=r.toText(t),o=a.lines==r.selection.ranges.length,s=Rr&&r.selection.ranges.every((e=>e.empty))&&Rr==a.toString();if(s){let e=-1;n=r.changeByRange((n=>{let s=r.doc.lineAt(n.from);if(s.from==e)return{range:n};e=s.from;let O=r.toText((o?a.line(i++).text:t)+r.lineBreak);return{changes:{from:s.from,insert:O},range:q.cursor(n.from+O.length)}}))}else n=o?r.changeByRange((e=>{let t=a.line(i++);return{changes:{from:e.from,to:e.to,insert:t.text},range:q.cursor(e.from+t.length)}})):r.replaceSelection(a);e.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}gr.keydown=(e,t)=>{e.inputState.setSelectionOrigin("select")};let br=0;function xr(e,t,n,i){if(1==i)return q.cursor(t,n);if(2==i)return function(e,t,n=1){let i=e.charCategorizer(t),a=e.doc.lineAt(t),o=t-a.from;if(0==a.length)return q.cursor(t);0==o?n=1:o==a.length&&(n=-1);let s=o,O=o;n<0?s=r(a.text,o,!1):O=r(a.text,o);let l=i(a.text.slice(s,O));for(;s>0;){let e=r(a.text,s,!1);if(i(a.text.slice(e,s))!=l)break;s=e}for(;O{br=Date.now(),e.inputState.setSelectionOrigin("select.pointer")},gr.touchmove=e=>{e.inputState.setSelectionOrigin("select.pointer")},gr.mousedown=(e,t)=>{if(e.observer.flush(),br>Date.now()-2e3)return;let n=null;for(let r of e.state.facet(mn))if(n=r(e,t),n)break;n||0!=t.button||(n=function(e,t){let n=Pr(e,t),r=function(e){if(!vr)return e.detail;let t=Sr,n=Xr;return Sr=e,Xr=Date.now(),_r=!t||n>Date.now()-400&&Math.abs(t.clientX-e.clientX)<2&&Math.abs(t.clientY-e.clientY)<2?(_r+1)%3:1}(t),i=e.state.selection,a=n,o=t;return{update(e){e.changes&&(n&&(n.pos=e.changes.mapPos(n.pos)),i=i.map(e.changes),o=null)},get(t,s,O){let l;if(o&&t.clientX==o.clientX&&t.clientY==o.clientY?l=a:(l=a=Pr(e,t),o=t),!l||!n)return i;let c=xr(e,l.pos,l.bias,r);if(n.pos!=l.pos&&!s){let t=xr(e,n.pos,n.bias,r),i=Math.min(t.from,c.from),a=Math.max(t.to,c.to);c=igt(e.contentDOM))),e.inputState.startMouseSelection(e,t,n))};let wr=(e,t)=>e>=t.top&&e<=t.bottom,kr=(e,t,n)=>wr(t,n)&&e>=n.left&&e<=n.right;function yr(e,t,n,r){let i=On.find(e.docView,t);if(!i)return 1;let a=t-i.posAtStart;if(0==a)return 1;if(a==i.length)return-1;let o=i.coordsAt(a,-1);if(o&&kr(n,r,o))return-1;let s=i.coordsAt(a,1);return s&&kr(n,r,s)?1:o&&wr(r,o)?-1:1}function Pr(e,t){let n=e.posAtCoords({x:t.clientX,y:t.clientY},!1);return{pos:n,bias:yr(e,n,t.clientX,t.clientY)}}const vr=Et.ie&&Et.ie_version<=11;let Sr=null,_r=0,Xr=0;function Tr(e,t,n,r){let i=e.posAtCoords({x:t.clientX,y:t.clientY});if(null==i||!n)return;t.preventDefault();let{mouseSelection:a}=e.inputState,o=r&&a&&a.dragging&&a.dragMove?{from:a.dragging.from,to:a.dragging.to}:null,s={from:i,insert:n},O=e.state.changes(o?[o,s]:s);e.focus(),e.dispatch({changes:O,selection:{anchor:O.mapPos(i,-1),head:O.mapPos(i,1)},userEvent:o?"move.drop":"input.drop"})}gr.dragstart=(e,t)=>{let{selection:{main:n}}=e.state,{mouseSelection:r}=e.inputState;r&&(r.dragging=n),t.dataTransfer&&(t.dataTransfer.setData("Text",e.state.sliceDoc(n.from,n.to)),t.dataTransfer.effectAllowed="copyMove")},gr.drop=(e,t)=>{if(!t.dataTransfer)return;if(e.state.readOnly)return t.preventDefault();let n=t.dataTransfer.files;if(n&&n.length){t.preventDefault();let r=Array(n.length),i=0,a=()=>{++i==n.length&&Tr(e,t,r.filter((e=>null!=e)).join(e.state.lineBreak),!1)};for(let e=0;e{/[\x00-\x08\x0e-\x1f]{2}/.test(t.result)||(r[e]=t.result),a()},t.readAsText(n[e])}}else Tr(e,t,t.dataTransfer.getData("Text"),!0)},gr.paste=(e,t)=>{if(e.state.readOnly)return t.preventDefault();e.observer.flush();let n=Qr?null:t.clipboardData,r=n&&n.getData("text/plain");r?($r(e,r),t.preventDefault()):function(e){let t=e.dom.parentNode;if(!t)return;let n=t.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.focus(),setTimeout((()=>{e.focus(),n.remove(),$r(e,n.value)}),50)}(e)};let Rr=null;function Wr(e,t){if(e.docView.compositionDeco.size){e.inputState.rapidCompositionStart=t;try{e.update([])}finally{e.inputState.rapidCompositionStart=!1}}}gr.copy=gr.cut=(e,t)=>{let{text:n,ranges:r,linewise:i}=function(e){let t=[],n=[],r=!1;for(let r of e.selection.ranges)r.empty||(t.push(e.sliceDoc(r.from,r.to)),n.push(r));if(!t.length){let i=-1;for(let{from:r}of e.selection.ranges){let a=e.doc.lineAt(r);a.number>i&&(t.push(a.text),n.push({from:a.from,to:Math.min(e.doc.length,a.to+1)})),i=a.number}r=!0}return{text:t.join(e.lineBreak),ranges:n,linewise:r}}(e.state);if(!n)return;Rr=i?n:null;let a=Qr?null:t.clipboardData;a?(t.preventDefault(),a.clearData(),a.setData("text/plain",n)):function(e,t){let n=e.dom.parentNode;if(!n)return;let r=n.appendChild(document.createElement("textarea"));r.style.cssText="position: fixed; left: -10000px; top: 10px",r.value=t,r.focus(),r.selectionEnd=t.length,r.selectionStart=0,setTimeout((()=>{r.remove(),e.focus()}),50)}(e,n),"cut"!=t.type||e.state.readOnly||e.dispatch({changes:r,scrollIntoView:!0,userEvent:"delete.cut"})},gr.focus=gr.blur=e=>{setTimeout((()=>{e.hasFocus!=e.inputState.notifiedFocused&&e.update([])}),10)},gr.beforeprint=e=>{e.viewState.printing=!0,e.requestMeasure(),setTimeout((()=>{e.viewState.printing=!1,e.requestMeasure()}),2e3)},gr.compositionstart=gr.compositionupdate=e=>{null==e.inputState.compositionFirstChange&&(e.inputState.compositionFirstChange=!0),e.inputState.composing<0&&(e.docView.compositionDeco.size&&(e.observer.flush(),Wr(e,!0)),e.inputState.composing=0)},gr.compositionend=e=>{e.inputState.composing=-1,e.inputState.compositionEndedAt=Date.now(),e.inputState.compositionFirstChange=null,setTimeout((()=>{e.inputState.composing<0&&Wr(e,!1)}),50)},gr.contextmenu=e=>{e.inputState.lastContextMenu=Date.now()};const qr=["pre-wrap","normal","pre-line"];class zr{constructor(){this.doc=h.empty,this.lineWrapping=!1,this.direction=Cn.LTR,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.lineLength=30,this.heightChanged=!1}heightForGap(e,t){let n=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(n+=Math.ceil((t-e-n*this.lineLength*.5)/this.lineLength)),this.lineHeight*n}heightForLine(e){if(!this.lineWrapping)return this.lineHeight;return(1+Math.max(0,Math.ceil((e-this.lineLength)/(this.lineLength-5))))*this.lineHeight}setDoc(e){return this.doc=e,this}mustRefresh(e,t,n){let r=!1;for(let t=0;t-1!=this.lineWrapping||this.direction!=n}refresh(e,t,n,r,i,a){let o=qr.indexOf(e)>-1,s=Math.round(n)!=Math.round(this.lineHeight)||this.lineWrapping!=o||this.direction!=t;if(this.lineWrapping=o,this.direction=t,this.lineHeight=n,this.charWidth=r,this.lineLength=i,s){this.heightSamples={};for(let e=0;e0}set outdated(e){this.flags=(e?2:0)|-3&this.flags}setHeight(e,t){this.height!=t&&(Math.abs(this.height-t)>1e-4&&(e.heightChanged=!0),this.height=t)}replace(e,t,n){return Er.of(n)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,n,r){let i=this;for(let a=r.length-1;a>=0;a--){let{fromA:o,toA:s,fromB:O,toB:l}=r[a],c=i.lineAt(o,Ur.ByPosNoHeight,t,0,0),u=c.to>=s?c:i.lineAt(s,Ur.ByPosNoHeight,t,0,0);for(l+=u.to-s,s=u.to;a>0&&c.from<=r[a-1].toA;)o=r[a-1].fromA,O=r[a-1].fromB,a--,o2*i){let i=e[t-1];i.break?e.splice(--t,1,i.left,null,i.right):e.splice(--t,1,i.left,i.right),n+=1+i.break,r-=i.size}else{if(!(i>2*r))break;{let t=e[n];t.break?e.splice(n,1,t.left,null,t.right):e.splice(n,1,t.left,t.right),n+=2+t.break,i-=t.size}}else if(r0){let e=n[n.length-1];e instanceof Cr?n[n.length-1]=new Cr(e.length+r):n.push(null,new Cr(r-1))}if(e>0){let t=n[0];t instanceof Cr?n[0]=new Cr(e+t.length):n.unshift(new Cr(e-1),null)}return Er.of(n)}decomposeLeft(e,t){t.push(new Cr(e-1),null)}decomposeRight(e,t){t.push(null,new Cr(this.length-e-1))}updateHeight(e,t=0,n=!1,r){let i=t+this.length;if(r&&r.from<=t+this.length&&r.more){let n=[],a=Math.max(t,r.from);for(r.from>t&&n.push(new Cr(r.from-t-1).updateHeight(e,t));a<=i&&r.more;){let t=e.doc.lineAt(a).length;n.length&&n.push(null);let i=new Vr(t,r.heights[r.index++]);i.outdated=!1,n.push(i),a+=t+1}return a<=i&&n.push(null,new Cr(i-a).updateHeight(e,a)),e.heightChanged=!0,Er.of(n)}return(n||this.outdated)&&(this.setHeight(e,e.heightForGap(t,t+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}}class Ar extends Er{constructor(e,t,n){super(e.length+t+n.length,e.height+n.height,t|(e.outdated||n.outdated?2:0)),this.left=e,this.right=n,this.size=e.size+n.size}get break(){return 1&this.flags}blockAt(e,t,n,r){let i=n+this.left.height;return eo))return O;let l=t==Ur.ByPosNoHeight?Ur.ByPosNoHeight:Ur.ByPos;return s?O.join(this.right.lineAt(o,l,n,a,o)):this.left.lineAt(o,l,n,r,i).join(O)}forEachLine(e,t,n,r,i,a){let o=r+this.left.height,s=i+this.left.length+this.break;if(this.break)e=s&&this.right.forEachLine(e,t,n,o,s,a);else{let O=this.lineAt(s,Ur.ByPos,n,r,i);e=e&&O.from<=t&&a(O),t>O.to&&this.right.forEachLine(O.to+1,t,n,o,s,a)}}replace(e,t,n){let r=this.left.length+this.break;if(tthis.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,n));let i=[];e>0&&this.decomposeLeft(e,i);let a=i.length;for(let e of n)i.push(e);if(e>0&&Gr(i,a-1),t=n&&t.push(null)),e>n&&this.right.decomposeLeft(e-n,t)}decomposeRight(e,t){let n=this.left.length,r=n+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e2*t.size||t.size>2*e.size?Er.of(this.break?[e,null,t]:[e,t]):(this.left=e,this.right=t,this.height=e.height+t.height,this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,n=!1,r){let{left:i,right:a}=this,o=t+i.length+this.break,s=null;return r&&r.from<=t+i.length&&r.more?s=i=i.updateHeight(e,t,n,r):i.updateHeight(e,t,n),r&&r.from<=o+a.length&&r.more?s=a=a.updateHeight(e,o,n,r):a.updateHeight(e,o,n),s?this.balanced(i,a):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function Gr(e,t){let n,r;null==e[t]&&(n=e[t-1])instanceof Cr&&(r=e[t+1])instanceof Cr&&e.splice(t-1,3,new Cr(n.length+1+r.length))}class jr{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let e=Math.min(t,this.lineEnd),n=this.nodes[this.nodes.length-1];n instanceof Vr?n.length+=e-this.pos:(e>this.pos||!this.isCovered)&&this.nodes.push(new Vr(e-this.pos,-1)),this.writtenTo=e,t>e&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,n){if(e=5)&&this.addLineDeco(r,i)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenToe&&this.nodes.push(new Vr(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let n=new Cr(t-e);return this.oracle.doc.lineAt(e).to==t&&(n.flags|=4),n}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Vr)return e;let t=new Vr(0,-1);return this.nodes.push(t),t}addBlock(e){this.enterLine(),e.type!=en.WidgetAfter||this.isCovered||this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,e.type!=en.WidgetBefore&&(this.covering=e)}addLineDeco(e,t){let n=this.ensureLine();n.length+=t,n.collapsed+=t,n.widgetHeight=Math.max(n.widgetHeight,e),this.writtenTo=this.pos=this.pos+t}finish(e){let t=0==this.nodes.length?null:this.nodes[this.nodes.length-1];!(this.lineStart>-1)||t instanceof Vr||this.isCovered?(this.writtenToe.draw(!1)))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let n=0;n<=1;n++){let r=n?t.head:t.anchor;if(!e.some((({from:e,to:t})=>r>=e&&r<=t))){let{from:t,to:n}=this.lineAt(r,0);e.push(new Fr(t,n))}}this.viewports=e.sort(((e,t)=>e.from-t.from)),this.scaler=this.heightMap.height<=7e6?Jr:new ei(this.heightOracle.doc,this.heightMap,this.viewports)}update(e,t=null){let n=this.state;this.state=e.state;let r=this.state.facet(Wn),i=e.changedRanges,a=zn.extendWithRanges(i,function(e,t,n){let r=new Lr;return Ye.compare(e,t,n,r,0),r.changes}(e.startState.facet(Wn),r,e?e.changes:P.empty(this.state.doc.length))),o=this.heightMap.height;this.heightMap=this.heightMap.applyChanges(r,n.doc,this.heightOracle.setDoc(this.state.doc),a),this.heightMap.height!=o&&(e.flags|=2);let s=a.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.heads.to)||!this.viewportIsAppropriate(s))&&(s=this.getViewport(0,t)),s.eq(this.viewport)||(this.viewport=s,e.flags|=4),this.updateForViewport(),(this.lineGaps.length||this.viewport.to-this.viewport.from>15e3)&&(e.flags|=this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes)))),this.computeVisibleRanges(),t&&(this.scrollTo=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&(this.mustEnforceCursorAssoc=!0)}measure(e,t){let n=e.dom,r="",i=Cn.LTR;if(!t){let e=window.getComputedStyle(n);r=e.whiteSpace,i="rtl"==e.direction?Cn.RTL:Cn.LTR,this.paddingTop=parseInt(e.paddingTop)||0,this.paddingBottom=parseInt(e.paddingBottom)||0}let a=this.printing?{top:-1e8,bottom:1e8,left:-1e8,right:1e8}:function(e,t){let n=e.getBoundingClientRect(),r=Math.max(0,n.left),i=Math.min(innerWidth,n.right),a=Math.max(0,n.top),o=Math.min(innerHeight,n.bottom);for(let t=e.parentNode;t;)if(1==t.nodeType){let e=window.getComputedStyle(t);if((t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth)&&"visible"!=e.overflow){let e=t.getBoundingClientRect();r=Math.max(r,e.left),i=Math.min(i,e.right),a=Math.max(a,e.top),o=Math.min(o,e.bottom)}t="absolute"==e.position||"fixed"==e.position?t.offsetParent:t.parentNode}else{if(11!=t.nodeType)break;t=t.host}return{left:r-n.left,right:i-n.left,top:a-(n.top+t),bottom:o-(n.top+t)}}(n,this.paddingTop),o=a.top-this.pixelViewport.top,s=a.bottom-this.pixelViewport.bottom;if(this.pixelViewport=a,this.inView=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left,!this.inView)return 0;let O=e.measureVisibleLineHeights(),l=!1,c=0,u=0,h=this.heightOracle;if(!t){let t=e.dom.clientWidth;if(h.mustRefresh(O,r,i)||h.lineWrapping&&Math.abs(t-this.contentWidth)>h.charWidth){let{lineHeight:n,charWidth:a}=e.measureTextSize();l=h.refresh(r,i,n,a,t/a,O),l&&(e.minWidth=0,u|=16)}this.contentWidth!=t&&(this.contentWidth=t,u|=16),o>0&&s>0?c=Math.max(o,s):o<0&&s<0&&(c=Math.min(o,s))}if(h.heightChanged=!1,this.heightMap=this.heightMap.updateHeight(h,0,l,new Yr(this.viewport.from,O)),h.heightChanged&&(u|=2),!this.viewportIsAppropriate(this.viewport,c)||this.scrollTo&&(this.scrollTo.headthis.viewport.to)){let e=this.getViewport(c,this.scrollTo);e.from==this.viewport.from&&e.to==this.viewport.to||(this.viewport=e,u|=4)}return this.updateForViewport(),(this.lineGaps.length||this.viewport.to-this.viewport.from>15e3)&&(u|=this.updateLineGaps(this.ensureLineGaps(l?[]:this.lineGaps))),this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.enforceCursorAssoc()),u}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top,0)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom,0)}getViewport(e,t){let n=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,i=this.state.doc,{visibleTop:a,visibleBottom:o}=this,s=new Fr(r.lineAt(a-1e3*n,Ur.ByHeight,i,0,0).from,r.lineAt(o+1e3*(1-n),Ur.ByHeight,i,0,0).to);if(t)if(t.heads.to){let{bottom:e}=r.lineAt(t.head,Ur.ByPos,i,0,0);s=new Fr(r.lineAt(e-(o-a)-500,Ur.ByHeight,i,0,0).from,r.lineAt(e+500,Ur.ByHeight,i,0,0).to)}return s}mapViewport(e,t){let n=t.mapPos(e.from,-1),r=t.mapPos(e.to,1);return new Fr(this.heightMap.lineAt(n,Ur.ByPos,this.state.doc,0,0).from,this.heightMap.lineAt(r,Ur.ByPos,this.state.doc,0,0).to)}viewportIsAppropriate({from:e,to:t},n=0){let{top:r}=this.heightMap.lineAt(e,Ur.ByPos,this.state.doc,0,0),{bottom:i}=this.heightMap.lineAt(t,Ur.ByPos,this.state.doc,0,0),{visibleTop:a,visibleBottom:o}=this;return(0==e||r<=a-Math.max(10,Math.min(-n,250)))&&(t==this.state.doc.length||i>=o+Math.max(10,Math.min(n,250)))&&r>a-2e3&&i{if(n.length<1e4)return;let r,i,a=function(e,t,n){let r=[],i=e,a=0;Ye.spans(n.facet(Wn),e,t,{span(){},point(e,t){e>i&&(r.push({from:i,to:e}),a+=e-i),i=t}},20),i=n.from&&(r=o.from),o.from<=n.to&&o.to>=i&&(i=o.to);let s=r-1e4,O=i+1e4;s>n.from+5e3&&t.push(Kr(e,(e=>e.from==n.from&&e.to>s-5e3&&e.toe.to==n.to&&e.from>O-5e3&&e.frome.draw(this.heightOracle.lineWrapping)))),8)}computeVisibleRanges(){let e=this.state.facet(Wn);this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];Ye.spans(e,this.viewport.from,this.viewport.to,{span(e,n){t.push({from:e,to:n})},point(){}},20),this.visibleRanges=t}lineAt(e,t){return t+=this.paddingTop,ti(this.heightMap.lineAt(e,Ur.ByPos,this.state.doc,t,0),this.scaler,t)}lineAtHeight(e,t){return t+=this.paddingTop,ti(this.heightMap.lineAt(this.scaler.fromDOM(e,t),Ur.ByHeight,this.state.doc,t,0),this.scaler,t)}blockAtHeight(e,t){return t+=this.paddingTop,ti(this.heightMap.blockAt(this.scaler.fromDOM(e,t),this.state.doc,t,0),this.scaler,t)}forEachLine(e,t,n,r){return r+=this.paddingTop,this.heightMap.forEachLine(e,t,this.state.doc,r,0,1==this.scaler.scale?n:e=>n(ti(e,this.scaler,r)))}get contentHeight(){return this.domHeight+this.paddingTop+this.paddingBottom}get domHeight(){return this.scaler.toDOM(this.heightMap.height,this.paddingTop)}}class Fr{constructor(e,t){this.from=e,this.to=t}eq(e){return this.from==e.from&&this.to==e.to}}function Br({total:e,ranges:t},n){if(n<=0)return t[0].from;if(n>=1)return t[t.length-1].to;let r=Math.floor(e*n);for(let e=0;;e++){let{from:n,to:i}=t[e],a=i-n;if(r<=a)return n+r;r-=a}}function Hr(e,t){let n=0;for(let{from:r,to:i}of e.ranges){if(t<=i){n+=t-r;break}n+=i-r}return n/e.total}function Kr(e,t){for(let n of e)if(t(n))return n}const Jr={toDOM:e=>e,fromDOM:e=>e,scale:1};class ei{constructor(e,t,n){let r=0,i=0,a=0;this.viewports=n.map((({from:n,to:i})=>{let a=t.lineAt(n,Ur.ByPos,e,0,0).top,o=t.lineAt(i,Ur.ByPos,e,0,0).bottom;return r+=o-a,{from:n,to:i,top:a,bottom:o,domTop:0,domBottom:0}})),this.scale=(7e6-r)/(t.height-r);for(let e of this.viewports)e.domTop=a+(e.top-i)*this.scale,a=e.domBottom=e.domTop+(e.bottom-e.top),i=e.bottom}toDOM(e,t){e-=t;for(let n=0,r=0,i=0;;n++){let a=nti(e,t,n))):e.type)}const ni=U.define({combine:e=>e.join(" ")}),ri=U.define({combine:e=>e.indexOf(!0)>-1}),ii=_e.newName(),ai=_e.newName(),oi=_e.newName(),si={"&light":"."+ai,"&dark":"."+oi};function Oi(e,t,n){return new _e(t,{finish:t=>/&/.test(t)?t.replace(/&\w*/,(t=>{if("&"==t)return e;if(!n||!n[t])throw new RangeError(`Unsupported selector: ${t}`);return n[t]})):e+" "+t})}const li=Oi("."+ii,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0},".cm-content":{margin:0,flexGrow:2,minHeight:"100%",display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",padding:"4px 0",outline:"none"},".cm-lineWrapping":{whiteSpace:"pre-wrap",wordBreak:"break-word",overflowWrap:"anywhere"},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 4px"},".cm-selectionLayer":{zIndex:-1,contain:"size style"},".cm-selectionBackground":{position:"absolute"},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{zIndex:100,contain:"size style",pointerEvents:"none"},"&.cm-focused .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{visibility:"hidden"},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{visibility:"hidden"},"100%":{}},".cm-cursor":{position:"absolute",borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none",display:"none"},"&dark .cm-cursor":{borderLeftColor:"#444"},"&.cm-focused .cm-cursor":{display:"block"},"&light .cm-activeLine":{backgroundColor:"#f3f9ff"},"&dark .cm-activeLine":{backgroundColor:"#223039"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-placeholder":{color:"#888",display:"inline-block"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"3px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},si),ci={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},ui=Et.ie&&Et.ie_version<=11;class hi{constructor(e,t,n){this.view=e,this.onChange=t,this.onScrollChanged=n,this.active=!1,this.ignoreSelection=new pt,this.delayedFlush=-1,this.queue=[],this.lastFlush=0,this.scrollTargets=[],this.intersection=null,this.intersecting=!1,this._selectionRange=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver((t=>{for(let e of t)this.queue.push(e);this._selectionRange=null,(Et.ie&&Et.ie_version<=11||Et.ios&&e.composing)&&t.some((e=>"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length))?this.flushSoon():this.flush()})),ui&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.start(),this.onScroll=this.onScroll.bind(this),window.addEventListener("scroll",this.onScroll),"function"==typeof IntersectionObserver&&(this.intersection=new IntersectionObserver((e=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),e[e.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))}),{}),this.intersection.observe(this.dom)),this.listenForScroll()}onScroll(e){this.intersecting&&this.flush(),this.onScrollChanged(e)}onSelectionChange(e){this.lastFlush{this.delayedFlush=-1,this.flush()}),20))}forceFlush(){this.delayedFlush>=0&&(window.clearTimeout(this.delayedFlush),this.delayedFlush=-1,this.flush())}flush(){if(this.delayedFlush>=0)return;this.lastFlush=Date.now();let e=this.queue;for(let t of this.observer.takeRecords())e.push(t);e.length&&(this.queue=[]);let t=this.selectionRange,n=!this.ignoreSelection.eq(t)&&at(this.dom,t);if(0==e.length&&!n)return;let r=-1,i=-1,a=!1;for(let t of e){let e=this.readMutation(t);e&&(e.typeOver&&(a=!0),-1==r?({from:r,to:i}=e):(r=Math.min(e.from,r),i=Math.max(e.to,i)))}let o=this.view.state;(r>-1||n)&&this.onChange(r,i,a),this.view.state==o&&(this.view.docView.dirty&&(this.ignore((()=>this.view.docView.sync())),this.view.docView.dirty=0),n&&this.view.docView.updateSelection()),this.clearSelection()}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty("attributes"==e.type),"attributes"==e.type&&(t.dirty|=4),"childList"==e.type){let n=di(t,e.previousSibling||e.target.previousSibling,-1),r=di(t,e.nextSibling||e.target.nextSibling,1);return{from:n?t.posAfter(n):t.posAtStart,to:r?t.posBefore(r):t.posAtEnd,typeOver:!1}}return"characterData"==e.type?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}destroy(){this.stop(),this.intersection&&this.intersection.disconnect();for(let e of this.scrollTargets)e.removeEventListener("scroll",this.onScroll);window.removeEventListener("scroll",this.onScroll),clearTimeout(this.parentCheck)}}function di(e,t,n){for(;t;){let r=yt.get(t);if(r&&r.parent==e)return r;let i=t.parentNode;t=i!=e.dom?i:n>0?t.nextSibling:t.previousSibling}return null}function pi(e,t,n,r){let i,a,o,s=e.state.selection.main;if(t>-1&&!e.state.readOnly&&(o=e.docView.domBoundsAround(t,n,0))){let{from:t,to:n}=o,r=e.docView.impreciseHead||e.docView.impreciseAnchor?[]:function(e){let t=[];if(e.root.activeElement!=e.contentDOM)return t;let{anchorNode:n,anchorOffset:r,focusNode:i,focusOffset:a}=e.observer.selectionRange;n&&(t.push(new gi(n,r)),i==n&&a==r||t.push(new gi(i,a)));return t}(e),O=new fi(r,e);O.readRange(o.startDOM,o.endDOM),a=function(e,t){if(0==e.length)return null;let n=e[0].pos,r=2==e.length?e[1].pos:n;return n>-1&&r>-1?q.single(n+t,r+t):null}(r,t);let l=s.from,c=null;(8===e.inputState.lastKeyCode&&e.inputState.lastKeyTime>Date.now()-100||Et.android&&O.text.length0&&s>0&&e.charCodeAt(o-1)==t.charCodeAt(s-1);)o--,s--;if("end"==r){n-=o+Math.max(0,a-Math.min(o,s))-a}if(o=o?a-n:0,s=a+(s-o),o=a}else if(s=s?a-n:0,o=a+(o-s),s=a}return{from:a,toA:o,toB:s}}(e.state.sliceDoc(t,n),O.text,l-t,c);u&&(i={from:t+u.from,to:t+u.toA,insert:e.state.toText(O.text.slice(u.from,u.toB))})}else if(e.hasFocus||!e.state.facet(wn)){let t=e.observer.selectionRange,{impreciseHead:n,impreciseAnchor:r}=e.docView,i=n&&n.node==t.focusNode&&n.offset==t.focusOffset||!it(e.contentDOM,t.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(t.focusNode,t.focusOffset),o=r&&r.node==t.anchorNode&&r.offset==t.anchorOffset||!it(e.contentDOM,t.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(t.anchorNode,t.anchorOffset);i==s.head&&o==s.anchor||(a=q.single(o,i))}if(i||a)if(!i&&r&&!s.empty&&a&&a.main.empty?i={from:s.from,to:s.to,insert:e.state.doc.slice(s.from,s.to)}:i&&i.from>=s.from&&i.to<=s.to&&(i.from!=s.from||i.to!=s.to)&&s.to-s.from-(i.to-i.from)<=4&&(i={from:s.from,to:s.to,insert:e.state.doc.slice(s.from,i.from).append(i.insert).append(e.state.doc.slice(i.to,s.to))}),i){let t=e.state;if(Et.android&&(i.from==s.from&&i.to==s.to&&1==i.insert.length&&2==i.insert.lines&&$t(e.contentDOM,"Enter",13)||i.from==s.from-1&&i.to==s.to&&0==i.insert.length&&$t(e.contentDOM,"Backspace",8)||i.from==s.from&&i.to==s.to+1&&0==i.insert.length&&$t(e.contentDOM,"Delete",46))||Et.ios&&e.inputState.flushIOSKey(e))return;let n,r=i.insert.toString();if(e.state.facet($n).some((t=>t(e,i.from,i.to,r))))return;if(e.inputState.composing>=0&&e.inputState.composing++,i.from>=s.from&&i.to<=s.to&&i.to-i.from>=(s.to-s.from)/3&&(!a||a.main.empty&&a.main.from==i.from+i.insert.length)){let r=s.fromi.to?t.sliceDoc(i.to,s.to):"";n=t.replaceSelection(e.state.toText(r+i.insert.sliceString(0,void 0,e.state.lineBreak)+a))}else{let e=t.changes(i);n={changes:e,selection:a&&!t.selection.main.eq(a.main)&&a.main.to<=e.newLength?t.selection.replaceRange(a.main):void 0}}let o="input.type";e.composing&&(o+=".compose",e.inputState.compositionFirstChange&&(o+=".start",e.inputState.compositionFirstChange=!1)),e.dispatch(n,{scrollIntoView:!0,userEvent:o})}else if(a&&!a.main.eq(s)){let t=!1,n="select";e.inputState.lastSelectionTime>Date.now()-50&&("select"==e.inputState.lastSelectionOrigin&&(t=!0),n=e.inputState.lastSelectionOrigin),e.dispatch({selection:a,scrollIntoView:t,userEvent:n})}}class fi{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineBreak=t.state.lineBreak}readRange(e,t){if(!e)return;let n=e.parentNode;for(let r=e;;){this.findPointBefore(n,r),this.readNode(r);let e=r.nextSibling;if(e==t)break;let i=yt.get(r),a=yt.get(e);((i?i.breakAfter:mi(r))||(a?a.breakAfter:mi(e))&&("BR"!=r.nodeName||r.cmIgnore))&&(this.text+=this.lineBreak),r=e}this.findPointBefore(n,t)}readNode(e){if(e.cmIgnore)return;let t,n=yt.get(e),r=n&&n.overrideDOMText;null!=r?t=r.sliceString(0,void 0,this.lineBreak):3==e.nodeType?t=e.nodeValue:"BR"==e.nodeName?t=e.nextSibling?this.lineBreak:"":1==e.nodeType&&this.readRange(e.firstChild,null),null!=t&&(this.findPointIn(e,t.length),this.text+=t,Et.chrome&&13==this.view.inputState.lastKeyCode&&!e.nextSibling&&/\n\n$/.test(this.text)&&(this.text=this.text.slice(0,-1)))}findPointBefore(e,t){for(let n of this.points)n.node==e&&e.childNodes[n.offset]==t&&(n.pos=this.text.length)}findPointIn(e,t){for(let n of this.points)n.node==e&&(n.pos=this.text.length+Math.min(n.offset,t))}}function mi(e){return 1==e.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(e.nodeName)}class gi{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class Qi{constructor(e={}){this.plugins=[],this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.style.cssText="position: absolute; top: -10000px",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),this._dispatch=e.dispatch||(e=>this.update([e])),this.dispatch=this.dispatch.bind(this),this.root=e.root||document,this.viewState=new Mr(e.state||ke.create()),this.plugins=this.state.facet(vn).map((e=>new Xn(e).update(this))),this.observer=new hi(this,((e,t,n)=>{pi(this,e,t,n)}),(e=>{this.inputState.runScrollHandlers(this,e),this.observer.intersecting&&this.measure()})),this.inputState=new dr(this),this.docView=new Zn(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,window.addEventListener("resize",(()=>{-1==xi&&(xi=setTimeout(wi,50))})),this.requestMeasure(),e.parent&&e.parent.appendChild(this.dom)}get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return this.inputState.composing>0}dispatch(...e){this._dispatch(1==e.length&&e[0]instanceof he?e[0]:this.state.update(...e))}update(e){if(0!=this.updateState)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t,n=!1,r=this.state;for(let t of e){if(t.startState!=r)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");r=t.state}if(r.facet(ke.phrases)!=this.state.facet(ke.phrases))return this.setState(r);t=new Yn(this,r,e);let i=null;try{this.updateState=2;for(let t of e){if(i&&(i=i.map(t.changes)),t.scrollIntoView){let{main:e}=t.state.selection;i=e.empty?e:q.cursor(e.head,e.head>e.anchor?-1:1)}for(let e of t.effects)e.is(bn)&&(i=e.value)}this.viewState.update(t,i),this.bidiCache=yi.update(this.bidiCache,t.changes),t.empty||(this.updatePlugins(t),this.inputState.update(t)),n=this.docView.update(t),this.state.facet(qn)!=this.styleModules&&this.mountStyles(),this.updateAttrs(),this.showAnnouncements(e)}finally{this.updateState=0}if((n||i||this.viewState.mustEnforceCursorAssoc)&&this.requestMeasure(),!t.empty)for(let e of this.state.facet(Qn))e(t)}setState(e){if(0!=this.updateState)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");this.updateState=2;try{for(let e of this.plugins)e.destroy(this);this.viewState=new Mr(e),this.plugins=e.facet(vn).map((e=>new Xn(e).update(this))),this.docView=new Zn(this),this.inputState.ensureHandlers(this),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(vn),n=e.state.facet(vn);if(t!=n){let r=[];for(let i of n){let n=t.indexOf(i);if(n<0)r.push(new Xn(i));else{let t=this.plugins[n];t.mustUpdate=e,r.push(t)}}for(let t of this.plugins)t.mustUpdate!=e&&t.destroy(this);this.plugins=r,this.inputState.ensureHandlers(this)}else for(let t of this.plugins)t.mustUpdate=e;for(let e=0;e-1&&cancelAnimationFrame(this.measureScheduled),this.measureScheduled=-1,e&&this.observer.flush();let t=null;try{for(let e=0;;e++){this.updateState=1;let n=this.viewState.measure(this.docView,e>0),r=this.measureRequests;if(!n&&!r.length&&null==this.viewState.scrollTo)break;if(this.measureRequests=[],e>5)break;let i=r.map((e=>{try{return e.read(this)}catch(e){return xn(this.state,e),ki}})),a=new Yn(this,this.state);a.flags|=n,t?t.flags|=n:t=a,this.updateState=2,a.empty||(this.updatePlugins(a),this.inputState.update(a)),this.updateAttrs(),n&&this.docView.update(a);for(let e=0;e-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=requestAnimationFrame((()=>this.measure()))),e){if(null!=e.key)for(let t=0;tfunction(e,t,n){let r=e.state.charCategorizer(t),i=r(n);return e=>{let t=r(e);return i==$e.Space&&(i=t),i==t}}(this,e.head,t))))}moveToLineBoundary(e,t,n=!0){return function(e,t,n,r){let i=e.state.doc.lineAt(t.head),a=r&&e.lineWrapping?e.coordsAtPos(t.assoc<0&&t.head>i.from?t.head-1:t.head):null;if(a){let t=e.dom.getBoundingClientRect(),r=e.posAtCoords({x:n==(e.textDirection==Cn.LTR)?t.right-1:t.left+1,y:(a.top+a.bottom)/2});if(null!=r)return q.cursor(r,n?-1:1)}let o=On.find(e.docView,t.head),s=o?n?o.posAtEnd:o.posAtStart:n?i.to:i.from;return q.cursor(s,n?-1:1)}(this,e,t,n)}moveVertically(e,t,n){return hr(this,e,function(e,t,n,r){let i=t.head,a=n?1:-1;if(i==(n?e.state.doc.length:0))return q.cursor(i);let o,s=t.goalColumn,O=e.contentDOM.getBoundingClientRect(),l=e.coordsAtPos(i);if(l)null==s&&(s=l.left-O.left),o=a<0?l.top:l.bottom;else{let t=e.viewState.lineAt(i,e.dom.getBoundingClientRect().top);null==s&&(s=Math.min(O.right-O.left,e.defaultCharacterWidth*(i-t.from))),o=a<0?t.top:t.bottom}let c=O.left+s,u=null!=r?r:e.defaultLineHeight>>1;for(let t=0;;t+=10){let n=o+(u+t)*a,r=lr(e,{x:c,y:n},!1,a);if(nO.bottom||(a<0?ri))return q.cursor(r,void 0,void 0,s)}}(this,e,t,n))}scrollPosIntoView(e){this.viewState.scrollTo=q.cursor(e),this.requestMeasure()}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),lr(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let n=this.docView.coordsAt(e,t);if(!n||n.left==n.right)return n;let r=this.state.doc.lineAt(e),i=this.bidiSpans(r);return ht(n,i[Hn.find(i,e-r.from,-1,t)].dir==Cn.LTR==t>0)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.heightOracle.direction}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>$i)return Jn(e.length);let t=this.textDirection;for(let n of this.bidiCache)if(n.from==e.from&&n.dir==t)return n.order;let n=function(e,t){let n=e.length,r=t==An?1:2,i=t==An?2:1;if(!e||1==r&&!Bn.test(e))return Jn(n);for(let t=0,i=r,a=r;t=0;e-=3)if(Mn[e+1]==-a){let t=Mn[e+2],n=2&t?r:4&t?1&t?i:r:0;n&&(Kn[s]=Kn[Mn[e]]=n),O=e;break}}else{if(189==Mn.length)break;Mn[O++]=s,Mn[O++]=t,Mn[O++]=l}else if(2==(o=Kn[s])||1==o){let e=o==r;l=e?0:1;for(let t=O-3;t>=0;t-=3){let n=Mn[t+2];if(2&n)break;if(e)Mn[t+2]|=2;else{if(4&n)break;Mn[t+2]|=4}}}for(let e=0;et;){let e=n,r=2!=Kn[--n];for(;n>t&&r==(2!=Kn[n-1]);)n--;a.push(new Hn(n,e,r?2:1))}else a.push(new Hn(t,e,0))}else for(let e=0;eDate.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore((()=>{gt(this.contentDOM),this.docView.updateSelection()}))}destroy(){for(let e of this.plugins)e.destroy(this);this.inputState.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&cancelAnimationFrame(this.measureScheduled)}static domEventHandlers(e){return Sn.define((()=>({})),{eventHandlers:e})}static theme(e,t){let n=_e.newName(),r=[ni.of(n),qn.of(Oi(`.${n}`,e))];return t&&t.dark&&r.push(ri.of(!0)),r}static baseTheme(e){return M.fallback(qn.of(Oi("."+ii,e,si)))}}Qi.scrollTo=bn,Qi.styleModule=qn,Qi.inputHandler=$n,Qi.exceptionSink=gn,Qi.updateListener=Qn,Qi.editable=wn,Qi.mouseSelectionStyle=mn,Qi.dragMovesSelection=fn,Qi.clickAddsSelectionRange=pn,Qi.decorations=Wn,Qi.contentAttributes=Rn,Qi.editorAttributes=Tn,Qi.lineWrapping=Qi.contentAttributes.of({class:"cm-lineWrapping"}),Qi.announce=ue.define();const $i=4096;function bi(e,t){return null==e?t.getBoundingClientRect().top:e}let xi=-1;function wi(){xi=-1;let e=document.querySelectorAll(".cm-content");for(let t=0;tfunction(e,t,n,r){let i=function(e){var t=!(et&&(e.ctrlKey||e.altKey||e.metaKey)||(Be||Je)&&e.shiftKey&&e.key&&1==e.key.length)&&e.key||(e.shiftKey?Me:De)[e.keyCode]||e.key||"Unidentified";return"Esc"==t&&(t="Escape"),"Del"==t&&(t="Delete"),"Left"==t&&(t="ArrowLeft"),"Up"==t&&(t="ArrowUp"),"Right"==t&&(t="ArrowRight"),"Down"==t&&(t="ArrowDown"),t}(t),a=1==i.length&&" "!=i,o="",s=!1;Ti&&Ti.view==n&&Ti.scope==r&&(o=Ti.prefix+" ",(s=pr.indexOf(t.keyCode)<0)&&(Ti=null));let O,l=e=>{if(e){for(let t of e.commands)if(t(n))return!0;e.preventDefault&&(s=!0)}return!1},c=e[r];if(c){if(l(c[o+vi(i,t,!a)]))return!0;if(a&&(t.shiftKey||t.altKey||t.metaKey)&&(O=De[t.keyCode])&&O!=i){if(l(c[o+vi(O,t,!0)]))return!0}else if(a&&t.shiftKey&&l(c[o+vi(i,t,!0)]))return!0}return s}(function(e){let t=e.facet(_i),n=Xi.get(t);n||Xi.set(t,n=function(e,t=Pi){let n=Object.create(null),r=Object.create(null),i=(e,t)=>{let n=r[e];if(null==n)r[e]=t;else if(n!=t)throw new Error("Key binding "+e+" is used both as a regular binding and as a multi-stroke prefix")},a=(e,r,a,o)=>{let s=n[e]||(n[e]=Object.create(null)),O=r.split(/ (?!$)/).map((e=>function(e,t){const n=e.split(/-(?!$)/);let r,i,a,o,s=n[n.length-1];"Space"==s&&(s=" ");for(let e=0;e{let r=Ti={view:t,prefix:n,scope:e};return setTimeout((()=>{Ti==r&&(Ti=null)}),4e3),!0}]})}let l=O.join(" ");i(l,!1);let c=s[l]||(s[l]={preventDefault:!1,commands:[]});c.commands.push(a),o&&(c.preventDefault=!0)};for(let n of e){let e=n[t]||n.key;if(e)for(let t of n.scope?n.scope.split(" "):["editor"])a(t,e,n.run,n.preventDefault),n.shift&&a(t,"Shift-"+e,n.shift,n.preventDefault)}return n}(t.reduce(((e,t)=>e.concat(t)),[])));return n}(t.state),e,t,"editor")}),_i=U.define({enables:Si}),Xi=new WeakMap;let Ti=null;const Ri=!Et.ios,Wi=U.define({combine:e=>ye(e,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})});function qi(e={}){return[Wi.of(e),Yi,Ui]}class zi{constructor(e,t,n,r,i){this.left=e,this.top=t,this.width=n,this.height=r,this.className=i}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width>=0&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}}const Yi=Sn.fromClass(class{constructor(e){this.view=e,this.rangePieces=[],this.cursors=[],this.measureReq={read:this.readPos.bind(this),write:this.drawSel.bind(this)},this.selectionLayer=e.scrollDOM.appendChild(document.createElement("div")),this.selectionLayer.className="cm-selectionLayer",this.selectionLayer.setAttribute("aria-hidden","true"),this.cursorLayer=e.scrollDOM.appendChild(document.createElement("div")),this.cursorLayer.className="cm-cursorLayer",this.cursorLayer.setAttribute("aria-hidden","true"),e.requestMeasure(this.measureReq),this.setBlinkRate()}setBlinkRate(){this.cursorLayer.style.animationDuration=this.view.state.facet(Wi).cursorBlinkRate+"ms"}update(e){let t=e.startState.facet(Wi)!=e.state.facet(Wi);(t||e.selectionSet||e.geometryChanged||e.viewportChanged)&&this.view.requestMeasure(this.measureReq),e.transactions.some((e=>e.scrollIntoView))&&(this.cursorLayer.style.animationName="cm-blink"==this.cursorLayer.style.animationName?"cm-blink2":"cm-blink"),t&&this.setBlinkRate()}readPos(){let{state:e}=this.view,t=e.facet(Wi),n=e.selection.ranges.map((e=>e.empty?[]:function(e,t){if(t.to<=e.viewport.from||t.from>=e.viewport.to)return[];let n=Math.max(t.from,e.viewport.from),r=Math.min(t.to,e.viewport.to),i=e.textDirection==Cn.LTR,a=e.contentDOM,o=a.getBoundingClientRect(),s=Ei(e),O=window.getComputedStyle(a.firstChild),l=o.left+parseInt(O.paddingLeft),c=o.right-parseInt(O.paddingRight),u=Vi(e,n),h=Vi(e,r),d=u.type==en.Text?u:null,p=h.type==en.Text?h:null;e.lineWrapping&&(d&&(d=Ii(e,n,d)),p&&(p=Ii(e,r,p)));if(d&&p&&d.from==p.from)return m(g(t.from,t.to,d));{let n=d?g(t.from,null,d):Q(u,!1),r=p?g(null,t.to,p):Q(h,!0),i=[];return(d||u).to<(p||h).from-1?i.push(f(l,n.bottom,c,r.top)):n.bottomu&&r.from=a)break;s>i&&O(Math.max(e,i),null==t&&e<=u,Math.min(s,a),null==n&&s>=h,o.dir)}if(i=r.to+1,i>=a)break}return 0==s.length&&O(u,null==t,h,null==n,e.textDirection),{top:a,bottom:o,horizontal:s}}function Q(e,t){let n=o.top+(t?e.top:e.bottom);return{top:n,bottom:n,horizontal:[]}}}(this.view,e))).reduce(((e,t)=>e.concat(t))),r=[];for(let n of e.selection.ranges){let i=n==e.selection.main;if(n.empty?!i||Ri:t.drawRangeCursor){let e=Ci(this.view,n,i);e&&r.push(e)}}return{rangePieces:n,cursors:r}}drawSel({rangePieces:e,cursors:t}){if(e.length!=this.rangePieces.length||e.some(((e,t)=>!e.eq(this.rangePieces[t])))){this.selectionLayer.textContent="";for(let t of e)this.selectionLayer.appendChild(t.draw());this.rangePieces=e}if(t.length!=this.cursors.length||t.some(((e,t)=>!e.eq(this.cursors[t])))){let e=this.cursorLayer.children;if(e.length!==t.length){this.cursorLayer.textContent="";for(const e of t)this.cursorLayer.appendChild(e.draw())}else t.forEach(((t,n)=>t.adjust(e[n])));this.cursors=t}}destroy(){this.selectionLayer.remove(),this.cursorLayer.remove()}}),Zi={".cm-line":{"& ::selection":{backgroundColor:"transparent !important"},"&::selection":{backgroundColor:"transparent !important"}}};Ri&&(Zi[".cm-line"].caretColor="transparent !important");const Ui=M.override(Qi.theme(Zi));function Ei(e){let t=e.scrollDOM.getBoundingClientRect();return{left:(e.textDirection==Cn.LTR?t.left:t.right-e.scrollDOM.clientWidth)-e.scrollDOM.scrollLeft,top:t.top-e.scrollDOM.scrollTop}}function Ii(e,t,n){let r=q.cursor(t);return{from:Math.max(n.from,e.moveToLineBoundary(r,!1,!0).from),to:Math.min(n.to,e.moveToLineBoundary(r,!0,!0).from),type:en.Text}}function Vi(e,t){let n=e.visualLineAt(t);if(Array.isArray(n.type))for(let e of n.type)if(e.to>t||e.to==t&&(e.to==n.to||e.type==en.Text))return e;return n}function Ci(e,t,n){let r=e.coordsAtPos(t.head,t.assoc||1);if(!r)return null;let i=Ei(e);return new zi(r.left-i.left,r.top-i.top,-1,r.bottom-r.top,n?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary")}const Ai=tn.line({attributes:{class:"cm-activeLine"}}),Gi=Sn.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.docChanged||e.selectionSet)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=-1,n=[];for(let r of e.state.selection.ranges){if(!r.empty)return tn.none;let i=e.visualLineAt(r.head);i.from>t&&(n.push(Ai.range(i.from)),t=i.from)}return tn.set(n)}},{decorations:e=>e.decorations}),ji=1024;let Li=0;class Ni{constructor(e,t){this.from=e,this.to=t}}class Di{constructor(e={}){this.id=Li++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return"function"!=typeof e&&(e=Bi.match(e)),t=>{let n=e(t);return void 0===n?null:[this,n]}}}Di.closedBy=new Di({deserialize:e=>e.split(" ")}),Di.openedBy=new Di({deserialize:e=>e.split(" ")}),Di.group=new Di({deserialize:e=>e.split(" ")}),Di.contextHash=new Di({perNode:!0}),Di.lookAhead=new Di({perNode:!0}),Di.mounted=new Di({perNode:!0});class Mi{constructor(e,t,n){this.tree=e,this.overlay=t,this.parser=n}}const Fi=Object.create(null);class Bi{constructor(e,t,n,r=0){this.name=e,this.props=t,this.id=n,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):Fi,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(null==e.name?8:0),r=new Bi(e.name||"",t,e.id,n);if(e.props)for(let n of e.props)if(Array.isArray(n)||(n=n(r)),n){if(n[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[n[0].id]=n[1]}return r}prop(e){return this.props[e.id]}get isTop(){return(1&this.flags)>0}get isSkipped(){return(2&this.flags)>0}get isError(){return(4&this.flags)>0}get isAnonymous(){return(8&this.flags)>0}is(e){if("string"==typeof e){if(this.name==e)return!0;let t=this.prop(Di.group);return!!t&&t.indexOf(e)>-1}return this.id==e}static match(e){let t=Object.create(null);for(let n in e)for(let r of n.split(" "))t[r]=e[n];return e=>{for(let n=e.prop(Di.group),r=-1;r<(n?n.length:0);r++){let i=t[r<0?e.name:n[r]];if(i)return i}}}}Bi.none=new Bi("",Object.create(null),0,8);class Hi{constructor(e){this.types=e;for(let t=0;te.node;;){let o=!1;if(e.from<=i&&e.to>=r&&(e.type.isAnonymous||!1!==t(e.type,e.from,e.to,a))){if(e.firstChild())continue;e.type.isAnonymous||(o=!0)}for(;o&&n&&n(e.type,e.from,e.to,a),o=e.type.isAnonymous,!e.nextSibling();){if(!e.parent())return;o=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:ha(this.type,this.children,this.positions,0,this.children.length,0,this.length,((e,t,n)=>new Ji(this.type,e,t,n,this.propValues)),e.makeTree||((e,t,n)=>new Ji(Bi.none,e,t,n)))}static build(e){return function(e){var t;let{buffer:n,nodeSet:r,maxBufferLength:i=ji,reused:a=[],minRepeatType:o=r.types.length}=e,s=Array.isArray(n)?new ea(n,n.length):n,O=r.types,l=0,c=0;function u(e,t,n,g,Q){let{id:$,start:b,end:x,size:w}=s,k=c;for(;w<0;){if(s.next(),-1==w){let t=a[$];return n.push(t),void g.push(b-e)}if(-3==w)return void(l=$);if(-4==w)return void(c=$);throw new RangeError(`Unrecognized record size: ${w}`)}let y,P,v=O[$],S=b-e;if(x-b<=i&&(P=f(s.pos-t,Q))){let t=new Uint16Array(P.size-P.skip),n=s.pos-P.size,i=t.length;for(;s.pos>n;)i=m(P.start,t,i);y=new ta(t,x-P.start,r),S=P.start-e}else{let e=s.pos-w;s.next();let t=[],n=[],r=$>=o?$:-1,a=0,O=x;for(;s.pos>e;)r>=0&&s.id==r&&s.size>=0?(s.end<=O-i&&(d(t,n,b,a,s.end,O,r,k),a=t.length,O=s.end),s.next()):u(b,e,t,n,r);if(r>=0&&a>0&&a-1&&a>0){let e=h(v);y=ha(v,t,n,0,t.length,0,x-b,e,e)}else y=p(v,t,n,x-b,k-x)}n.push(y),g.push(S)}function h(e){return(t,n,r)=>{let i,a,o=0,s=t.length-1;if(s>=0&&(i=t[s])instanceof Ji){if(!s&&i.type==e&&i.length==r)return i;(a=i.prop(Di.lookAhead))&&(o=n[s]+i.length+a)}return p(e,t,n,r,o)}}function d(e,t,n,i,a,o,s,O){let l=[],c=[];for(;e.length>i;)l.push(e.pop()),c.push(t.pop()+n-a);e.push(p(r.types[s],l,c,o-a,O-o)),t.push(a-n)}function p(e,t,n,r,i=0,a){if(l){let e=[Di.contextHash,l];a=a?[e].concat(a):[e]}if(i>25){let e=[Di.lookAhead,i];a=a?[e].concat(a):[e]}return new Ji(e,t,n,r,a)}function f(e,t){let n=s.fork(),r=0,a=0,O=0,l=n.end-i,c={size:0,start:0,skip:0};e:for(let i=n.pos-e;n.pos>i;){let e=n.size;if(n.id==t&&e>=0){c.size=r,c.start=a,c.skip=O,O+=4,r+=4,n.next();continue}let s=n.pos-e;if(e<0||s=o?4:0,h=n.start;for(n.next();n.pos>s;){if(n.size<0){if(-3!=n.size)break e;u+=4}else n.id>=o&&(u+=4);n.next()}a=h,r+=e,O+=u}return(t<0||r==e)&&(c.size=r,c.start=a,c.skip=O),c.size>4?c:void 0}function m(e,t,n){let{id:r,start:i,end:a,size:O}=s;if(s.next(),O>=0&&r4){let r=s.pos-(O-4);for(;s.pos>r;)n=m(e,t,n)}t[--n]=o,t[--n]=a-e,t[--n]=i-e,t[--n]=r}else-3==O?l=r:-4==O&&(c=r);return n}let g=[],Q=[];for(;s.pos>0;)u(e.start||0,e.bufferStart||0,g,Q,-1);let $=null!==(t=e.length)&&void 0!==t?t:g.length?Q[0]+g[0].length:0;return new Ji(O[e.topID],g.reverse(),Q.reverse(),$)}(e)}}Ji.empty=new Ji(Bi.none,[],[],0);class ea{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new ea(this.buffer,this.index)}}class ta{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return Bi.none}toString(){let e=[];for(let t=0;t0));s=a[s+3]);return o}slice(e,t,n,r){let i=this.buffer,a=new Uint16Array(t-e);for(let r=e,o=0;r=t&&nt;case 1:return n<=t&&r>t;case 2:return r>t;case 4:return!0}}function ra(e,t){let n=e.childBefore(t);for(;n;){let t=n.lastChild;if(!t||t.to!=n.to)break;t.type.isError&&t.from==t.to?(e=n,n=t.prevSibling):n=t}return e}class ia{constructor(e,t,n,r){this.node=e,this._from=t,this.index=n,this._parent=r}get type(){return this.node.type}get name(){return this.node.type.name}get from(){return this._from}get to(){return this._from+this.node.length}nextChild(e,t,n,r,i=0){for(let a=this;;){for(let{children:o,positions:s}=a.node,O=t>0?o.length:-1;e!=O;e+=t){let O=o[e],l=s[e]+a._from;if(na(r,n,l,l+O.length))if(O instanceof ta){if(2&i)continue;let o=O.findChild(0,O.buffer.length,t,n-l,r);if(o>-1)return new sa(new oa(a,O,e,l),null,o)}else if(1&i||!O.type.isAnonymous||la(O)){let o;if(O.props&&(o=O.prop(Di.mounted))&&!o.overlay)return new ia(o.tree,l,e,a);let s=new ia(O,l,e,a);return 1&i||!s.type.isAnonymous?s:s.nextChild(t<0?O.children.length-1:0,t,n,r)}}if(1&i||!a.type.isAnonymous)return null;if(e=a.index>=0?a.index+t:t<0?-1:a._parent.node.children.length,a=a._parent,!a)return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this.node.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this.node.children.length-1,-1,e,-2)}enter(e,t,n=!0,r=!0){let i;if(n&&(i=this.node.prop(Di.mounted))&&i.overlay){let n=e-this.from;for(let{from:e,to:r}of i.overlay)if((t>0?e<=n:e=n:r>n))return new ia(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,r?0:2)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get cursor(){return new Oa(this)}get tree(){return this.node}toTree(){return this.node}resolve(e,t=0){return this.cursor.moveTo(e,t).node}enterUnfinishedNodesBefore(e){return ra(this,e)}getChild(e,t=null,n=null){let r=aa(this,e,t,n);return r.length?r[0]:null}getChildren(e,t=null,n=null){return aa(this,e,t,n)}toString(){return this.node.toString()}}function aa(e,t,n,r){let i=e.cursor,a=[];if(!i.firstChild())return a;if(null!=n)for(;!i.type.is(n);)if(!i.nextSibling())return a;for(;;){if(null!=r&&i.type.is(r))return a;if(i.type.is(t)&&a.push(i.node),!i.nextSibling())return null==r?a:[]}}class oa{constructor(e,t,n,r){this.parent=e,this.buffer=t,this.index=n,this.start=r}}class sa{constructor(e,t,n){this.context=e,this._parent=t,this.index=n,this.type=e.buffer.set.types[e.buffer.buffer[n]]}get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}child(e,t,n){let{buffer:r}=this.context,i=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,n);return i<0?null:new sa(this.context,this,i)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,t,n,r=!0){if(!r)return null;let{buffer:i}=this.context,a=i.findChild(this.index+4,i.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return a<0?null:new sa(this.context,this,a)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new sa(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new sa(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get cursor(){return new Oa(this)}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,r=this.index+4,i=n.buffer[this.index+3];if(i>r){let a=n.buffer[this.index+1],o=n.buffer[this.index+2];e.push(n.slice(r,i,a,o)),t.push(0)}return new Ji(this.type,e,t,this.to-this.from)}resolve(e,t=0){return this.cursor.moveTo(e,t).node}enterUnfinishedNodesBefore(e){return ra(this,e)}toString(){return this.context.buffer.childString(this.index)}getChild(e,t=null,n=null){let r=aa(this,e,t,n);return r.length?r[0]:null}getChildren(e,t=null,n=null){return aa(this,e,t,n)}}class Oa{constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof ia)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let t=e._parent;t;t=t._parent)this.stack.unshift(t.index);this.bufferNode=e,this.yieldBuf(e.index)}}get name(){return this.type.name}yieldNode(e){return!!e&&(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0)}yieldBuf(e,t){this.index=e;let{start:n,buffer:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=n+r.buffer[e+1],this.to=n+r.buffer[e+2],!0}yield(e){return!!e&&(e instanceof ia?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)))}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,n){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree.node.children.length-1:0,e,t,n,this.mode));let{buffer:r}=this.buffer,i=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,n);return!(i<0)&&(this.stack.push(this.index),this.yieldBuf(i))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,n=!0,r=!0){return this.buffer?!!r&&this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n,r))}parent(){if(!this.buffer)return this.yieldNode(1&this.mode?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=1&this.mode?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return!!this._tree._parent&&this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode));let{buffer:t}=this.buffer,n=this.stack.length-1;if(e<0){let e=n<0?0:this.stack[n]+4;if(this.index!=e)return this.yieldBuf(t.findChild(e,this.index,-1,0,4))}else{let e=t.buffer[this.index+3];if(e<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(e)}return n<0&&this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode))}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,n,{buffer:r}=this;if(r){if(e>0){if(this.index-1)for(let r=t+e,i=e<0?-1:n.node.children.length;r!=i;r+=e){let e=n.node.children[r];if(1&this.mode||e instanceof ta||!e.type.isAnonymous||la(e))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to=0;){for(let a=e;a;a=a._parent)if(a.index==r){if(r==this.index)return a;t=a,n=i+1;break e}r=this.stack[--i]}for(let e=n;ee instanceof ta||!e.type.isAnonymous||la(e)))}const ca=new WeakMap;function ua(e,t){if(!e.isAnonymous||t instanceof ta||t.type!=e)return 1;let n=ca.get(t);return null==n&&(n=t.children.reduce(((t,n)=>t+ua(e,n)),1),ca.set(t,n)),n}function ha(e,t,n,r,i,a,o,s,O){let l=0;for(let n=r;n=c)break;p+=t}if(l==i+1){if(p>c){let e=n[i];t(e.children,e.positions,0,e.children.length,r[i]+s);continue}u.push(n[i])}else{let t=r[l-1]+n[l-1].length-d;u.push(ha(e,n,r,i,l,d,t,null,O))}h.push(d+s-a)}}(t,n,r,i,0),(s||O)(u,h,o)}class da{constructor(e,t,n,r,i=!1,a=!1){this.from=e,this.to=t,this.tree=n,this.offset=r,this.open=(i?1:0)|(a?2:0)}get openStart(){return(1&this.open)>0}get openEnd(){return(2&this.open)>0}static addTree(e,t=[],n=!1){let r=[new da(0,e.length,e,0,!1,n)];for(let n of t)n.to>e.length&&r.push(n);return r}static applyChanges(e,t,n=128){if(!t.length)return e;let r=[],i=1,a=e.length?e[0]:null;for(let o=0,s=0,O=0;;o++){let l=o=n)for(;a&&a.from=t.from||c<=t.to||O){let e=Math.max(t.from,s)-O,n=Math.min(t.to,c)-O;t=e>=n?null:new da(e,n,t.tree,t.offset+O,o>0,!!l)}if(t&&r.push(t),a.to>c)break;a=inew Ni(e.from,e.to))):[new Ni(0,0)]:[new Ni(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let r=this.startParse(e,t,n);for(;;){let e=r.advance();if(e)return e}}}class fa{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function ma(e){return(t,n,r,i)=>new $a(t,e,n,r,i)}class ga{constructor(e,t,n,r){this.parser=e,this.parse=t,this.overlay=n,this.target=r}}class Qa{constructor(e,t,n,r,i,a,o){this.parser=e,this.predicate=t,this.mounts=n,this.index=r,this.start=i,this.target=a,this.prev=o,this.depth=0,this.ranges=[]}}class $a{constructor(e,t,n,r,i){this.nest=t,this.input=n,this.fragments=r,this.ranges=i,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let e=this.baseParse.advance();if(!e)return null;this.baseParse=null,this.baseTree=e,this.startInner()}if(this.innerDone==this.inner.length)return this.baseTree;let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let n=Object.assign(Object.create(null),e.target.props);n[Di.mounted.id]=new Mi(t,e.overlay,e.parser),e.target.props=n}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.inner[this.innerDone];return e?e.parse.parsedPos:this.input.length}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let t=this.innerDone;te.frag.from<=a.from&&e.frag.to>=a.to&&e.mount.overlay));if(e)for(let n of e.mount.overlay){let r=n.from+e.pos,i=n.to+e.pos;r>=a.from&&i<=a.to&&t.ranges.push({from:r,to:i})}}s=!1}else if(n&&(i=ba(n.ranges,a.from,a.to)))s=2!=i;else if(!a.type.isAnonymous&&a.fromnew Ni(e.from-a.from,e.to-a.from))):null,a.tree)),r.overlay?e.length&&(n={ranges:e,depth:0,prev:n}):s=!1}}else t&&(o=t.predicate(a))&&(!0===o&&(o=new Ni(a.from,a.to)),o.fromnew Ni(e.from-t.start,e.to-t.start))),t.target)),t=t.prev}n&&!--n.depth&&(n=n.prev)}}}}function ba(e,t,n){for(let r of e){if(r.from>=n)break;if(r.to>t)return r.from<=t&&r.to>=n?2:1}return 0}function xa(e,t,n,r,i,a){if(t=t.to);r++);let o=i.children[r],s=o.buffer;i.children[r]=function e(n,r,i,O){let l=n;for(;s[l+2]+a<=t.from;)l=s[l+3];let c=[],u=[];xa(o,n,l,c,u,O);let h=s[l+1]+a==t.from&&s[l+2]+a==t.to&&s[l]==t.type.id;c.push(h?t.toTree():e(l+4,s[l+3],o.set.types[s[l]],s[l+1])),u.push(s[l+1]-O),xa(o,s[l+3],r,c,u,O);let d=c.length-1;return new Ji(i,c,u,u[d]+c[d].length)}(0,s.length,Bi.none,0);for(let r=0;r<=n;r++)e.childAfter(t.from)}class ka{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.fullCursor()}moveTo(e){let{cursor:t}=this,n=e-this.offset;for(;!this.done&&t.from=e&&t.enter(n,1,!1,!1)||t.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(!(t.children.length&&0==t.positions[0]&&t.children[0]instanceof Ji))break;t=t.children[0]}return!1}}class ya{constructor(e){if(this.fragments=e,this.fragI=0,e.length){let t=this.curFrag=e[0];this.inner=new ka(t.tree,-t.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curFrag.to;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curFrag.to>=e.to&&this.inner.hasNode(e)}nextFrag(){if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let e=this.curFrag=this.fragments[this.fragI];this.inner=new ka(e.tree,-e.offset)}}findMounts(e,t){var n;let r=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let e=this.inner.cursor.node;e;e=e.parent){let i=null===(n=e.tree)||void 0===n?void 0:n.prop(Di.mounted);if(i&&i.parser==t)for(let t=this.fragI;t=e.to)break;n.tree==this.curFrag.tree&&r.push({frag:n,pos:e.from-n.offset,mount:i})}}}return r}}function Pa(e,t){let n=null,r=t;for(let i=1,a=0;i=s)break;e.to<=o||(n||(r=n=t.slice()),e.froms&&n.splice(a+1,0,new Ni(s,e.to))):e.to>s?n[a--]=new Ni(s,e.to):n.splice(a--,1))}}return r}function va(e,t,n,r){let i=0,a=0,o=!1,s=!1,O=-1e9,l=[];for(;;){let c=i==e.length?1e9:o?e[i].to:e[i].from,u=a==t.length?1e9:s?t[a].to:t[a].from;if(o!=s){let e=Math.max(O,n),t=Math.min(c,u,r);enew Ni(e.from+r,e.to+r))),l=va(t,o,s,O);for(let t=0,r=s;;t++){let o=t==l.length,s=o?O:l[t].from;if(s>r&&n.push(new da(r,s,i.tree,-e,a.from>=r,a.to<=s)),o)break;r=l[t].to}}else n.push(new da(s,O,i.tree,-e,a.from>=e,a.to<=o))}return n}const _a=new Di;function Xa(e){return U.define({combine:e?t=>t.concat(e):void 0})}class Ta{constructor(e,t,n,r=[]){this.data=e,this.topNode=n,ke.prototype.hasOwnProperty("tree")||Object.defineProperty(ke.prototype,"tree",{get(){return qa(this)}}),this.parser=t,this.extension=[Aa.of(this),ke.languageData.of(((e,t,n)=>e.facet(Ra(e,t,n))))].concat(r)}isActiveAt(e,t,n=-1){return Ra(e,t,n)==this.data}findRegions(e){let t=e.facet(Aa);if((null==t?void 0:t.data)==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let n=[],r=(e,t)=>{if(e.prop(_a)==this.data)return void n.push({from:t,to:t+e.length});let i=e.prop(Di.mounted);if(i){if(i.tree.prop(_a)==this.data){if(i.overlay)for(let e of i.overlay)n.push({from:e.from+t,to:e.to+t});else n.push({from:t,to:t+e.length});return}if(i.overlay){let e=n.length;if(r(i.tree,i.overlay[0].from+t),n.length>e)return}}for(let n=0;ne.isTop?t:void 0))]}))}configure(e){return new Wa(this.data,this.parser.configure(e))}get allowsNesting(){return this.parser.wrappers.length>0}}function qa(e){let t=e.field(Ta.state,!1);return t?t.tree:Ji.empty}class za{constructor(e,t=e.length){this.doc=e,this.length=t,this.cursorPos=0,this.string="",this.cursor=e.iter()}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let n=this.cursorPos-this.string.length;return e=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-n,t-n)}}let Ya=null;class Za{constructor(e,t,n=[],r,i,a,o,s){this.parser=e,this.state=t,this.fragments=n,this.tree=r,this.treeLen=i,this.viewport=a,this.skipped=o,this.scheduleOn=s,this.parse=null,this.tempSkipped=[]}startParse(){return this.parser.startParse(new za(this.state.doc),this.fragments)}work(e,t){return null!=t&&t>=this.state.doc.length&&(t=void 0),this.tree!=Ji.empty&&this.isDone(null!=t?t:this.state.doc.length)?(this.takeTree(),!0):this.withContext((()=>{var n;this.parse||(this.parse=this.startParse()),null!=t&&(null==this.parse.stoppedAt||this.parse.stoppedAt>t)&&tr)return!1}}))}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>this.treeLen&&((null==this.parse.stoppedAt||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext((()=>{for(;!(t=this.parse.advance()););})),this.tree=t,this.fragments=this.withoutTempSkipped(da.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Ya;Ya=this;try{return e()}finally{Ya=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Ua(e,t.from,t.to);return e}changes(e,t){let{fragments:n,tree:r,treeLen:i,viewport:a,skipped:o}=this;if(this.takeTree(),!e.empty){let t=[];if(e.iterChangedRanges(((e,n,r,i)=>t.push({fromA:e,toA:n,fromB:r,toB:i}))),n=da.applyChanges(n,t),r=Ji.empty,i=0,a={from:e.mapPos(a.from,-1),to:e.mapPos(a.to,1)},this.skipped.length){o=[];for(let t of this.skipped){let n=e.mapPos(t.from,1),r=e.mapPos(t.to,-1);ne.from&&(this.fragments=Ua(this.fragments,n,r),this.skipped.splice(t--,1))}return!(this.skipped.length>=t)&&(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends pa{createParse(t,n,r){let i=r[0].from,a=r[r.length-1].to,o={parsedPos:i,advance(){let t=Ya;if(t){for(let e of r)t.tempSkipped.push(e);e&&(t.scheduleOn=t.scheduleOn?Promise.all([t.scheduleOn,e]):e)}return this.parsedPos=a,new Ji(Bi.none,[],[],a-i)},stoppedAt:null,stopAt(){}};return o}}}movedPast(e){return this.treeLen=e}isDone(e){let t=this.fragments;return this.treeLen>=e&&t.length&&0==t[0].from&&t[0].to>=e}static get(){return Ya}}function Ua(e,t,n){return da.applyChanges(e,[{fromA:t,toA:n,fromB:t,toB:n}])}class Ea{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged)return this;let t=this.context.changes(e.changes,e.state),n=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(25,n)||t.takeTree(),new Ea(t)}static init(e){let t=new Za(e.facet(Aa).parser,e,[],Ji.empty,0,{from:0,to:e.doc.length},[],null);return t.work(25)||t.takeTree(),new Ea(t)}}Ta.state=G.define({create:Ea.init,update(e,t){for(let e of t.effects)if(e.is(Ta.setState))return e.value;return t.startState.facet(Aa)!=t.state.facet(Aa)?Ea.init(t.state):e.apply(t)}});let Ia="undefined"!=typeof window&&window.requestIdleCallback||((e,{timeout:t})=>setTimeout(e,t)),Va="undefined"!=typeof window&&window.cancelIdleCallback||clearTimeout;const Ca=Sn.fromClass(class{constructor(e){this.view=e,this.working=-1,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(Ta.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),e.docChanged&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working>-1)return;let{state:e}=this.view,t=e.field(Ta.state);t.tree==t.context.tree&&t.context.isDone(e.doc.length)||(this.working=Ia(this.work,{timeout:500}))}work(e){this.working=-1;let t=Date.now();if(this.chunkEnd=r+1e6)return;let a=Math.min(this.chunkBudget,e?Math.max(25,e.timeRemaining()):100),o=i.context.work(a,r+1e6);this.chunkBudget-=Date.now()-t,(o||this.chunkBudget<=0||i.context.movedPast(r))&&(i.context.takeTree(),this.view.dispatch({effects:Ta.setState.of(new Ea(i.context))})),!o&&this.chunkBudget>0&&this.scheduleWork(),this.checkAsyncSchedule(i.context)}checkAsyncSchedule(e){e.scheduleOn&&(e.scheduleOn.then((()=>this.scheduleWork())),e.scheduleOn=null)}destroy(){this.working>=0&&Va(this.working)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Aa=U.define({combine:e=>e.length?e[0]:null,enables:[Ta.state,Ca]});class Ga{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}class ja{constructor(e,t,n,r,i){this.name=e,this.alias=t,this.extensions=n,this.filename=r,this.loadFunc=i,this.support=void 0,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then((e=>this.support=e),(e=>{throw this.loading=null,e})))}static of(e){return new ja(e.name,(e.alias||[]).concat(e.name).map((e=>e.toLowerCase())),e.extensions||[],e.filename,e.load)}static matchFilename(e,t){for(let n of e)if(n.filename&&n.filename.test(t))return n;let n=/\.([^.]+)$/.exec(t);if(n)for(let t of e)if(t.extensions.indexOf(n[1])>-1)return t;return null}static matchLanguageName(e,t,n=!0){t=t.toLowerCase();for(let n of e)if(n.alias.some((e=>e==t)))return n;if(n)for(let n of e)for(let e of n.alias){let r=t.indexOf(e);if(r>-1&&(e.length>2||!/\w/.test(t[r-1])&&!/\w/.test(t[r+e.length])))return n}return null}}const La=U.define(),Na=U.define({combine:e=>{if(!e.length)return" ";if(!/^(?: +|\t+)$/.test(e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(e[0]));return e[0]}});function Da(e){let t=e.facet(Na);return 9==t.charCodeAt(0)?e.tabSize*t.length:t.length}function Ma(e,t){let n="",r=e.tabSize;if(9==e.facet(Na).charCodeAt(0))for(;t>=r;)n+="\t",t-=r;for(let e=0;e=n.from&&r<=n.to?(t<0?r-1&&(i+=a-this.countColumn(n,n.search(/\S|$/))),i}countColumn(e,t=e.length){return u(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:n,from:r}=this.lineAt(e,t),i=this.options.overrideIndentation;if(i){let e=i(r);if(e>-1)return e}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const Ha=new Di;function Ka(e){let t=e.type.prop(Ha);if(t)return t;let n,r=e.firstChild;if(r&&(n=r.type.prop(Di.closedBy))){let t=e.lastChild,r=t&&n.indexOf(t.name)>-1;return e=>io(e,!0,1,void 0,r&&!function(e){return e.pos==e.options.simulateBreak&&e.options.simulateDoubleBreak}(e)?t.from:void 0)}return null==e.parent?eo:null}function Ja(e,t,n){for(;e;e=e.parent){let r=Ka(e);if(r)return r(new to(n,t,e))}return null}function eo(){return 0}class to extends Ba{constructor(e,t,n){super(e.state,e.options),this.base=e,this.pos=t,this.node=n}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){let e=this.state.doc.lineAt(this.node.from);for(;;){let t=this.node.resolve(e.from);for(;t.parent&&t.parent.from==t.from;)t=t.parent;if(no(t,this.node))break;e=this.state.doc.lineAt(t.from)}return this.lineIndent(e.from)}continue(){let e=this.node.parent;return e?Ja(e,this.pos,this.base):0}}function no(e,t){for(let n=t;n;n=n.parent)if(e==n)return!0;return!1}function ro({closing:e,align:t=!0,units:n=1}){return r=>io(r,t,n,e)}function io(e,t,n,r,i){let a=e.textAfter,o=a.match(/^\s*/)[0].length,s=r&&a.slice(o,o+r.length)==r||i==e.pos+o,O=t?function(e){let t=e.node,n=t.childAfter(t.from),r=t.lastChild;if(!n)return null;let i=e.options.simulateBreak,a=e.state.doc.lineAt(n.from),o=null==i||i<=a.from?a.to:Math.min(a.to,i);for(let e=n.to;;){let i=t.childAfter(e);if(!i||i==r)return null;if(!i.type.isSkipped)return i.frome.baseIndent;function oo({except:e,units:t=1}={}){return n=>{let r=e&&e.test(n.textAfter);return n.baseIndent+(r?0:t*n.unit)}}const so=new Di;function Oo(e){let t=e.firstChild,n=e.lastChild;return t&&t.toye(e,{afterCursor:!0,brackets:co,maxScanDistance:1e4})}),ho=tn.mark({class:"cm-matchingBracket"}),po=tn.mark({class:"cm-nonmatchingBracket"}),fo=G.define({create:()=>tn.none,update(e,t){if(!t.docChanged&&!t.selection)return e;let n=[],r=t.state.facet(uo);for(let e of t.state.selection.ranges){if(!e.empty)continue;let i=$o(t.state,e.head,-1,r)||e.head>0&&$o(t.state,e.head-1,1,r)||r.afterCursor&&($o(t.state,e.head,1,r)||e.headQi.decorations.from(e)}),mo=[fo,lo];function go(e={}){return[uo.of(e),mo]}function Qo(e,t,n){let r=e.prop(t<0?Di.openedBy:Di.closedBy);if(r)return r;if(1==e.name.length){let r=n.indexOf(e.name);if(r>-1&&r%2==(t<0?1:0))return[n[r+t]]}return null}function $o(e,t,n,r={}){let i=r.maxScanDistance||1e4,a=r.brackets||co,o=qa(e),s=o.resolveInner(t,n);for(let r=s;r;r=r.parent){let i=Qo(r.type,n,a);if(i)return bo(e,t,n,r,i,a)}return function(e,t,n,r,i,a,o){let s=n<0?e.sliceDoc(t-1,t):e.sliceDoc(t,t+1),O=o.indexOf(s);if(O<0||O%2==0!=n>0)return null;let l={from:n<0?t-1:t,to:n>0?t+1:t},c=e.doc.iterRange(t,n>0?e.doc.length:0),u=0;for(let e=0;!c.next().done&&e<=a;){let a=c.value;n<0&&(e+=a.length);let s=t+e*n;for(let e=n>0?0:a.length-1,t=n>0?a.length:-1;e!=t;e+=n){let t=o.indexOf(a[e]);if(!(t<0||r.resolve(s+e,1).type!=i))if(t%2==0==n>0)u++;else{if(1==u)return{start:l,end:{from:s+e,to:s+e+1},matched:t>>1==O>>1};u--}}n>0&&(e+=a.length)}return c.done?{start:l,matched:!1}:null}(e,t,n,o,s.type,i,a)}function bo(e,t,n,r,i,a){let o=r.parent,s={from:r.from,to:r.to},O=0,l=null==o?void 0:o.cursor;if(l&&(n<0?l.childBefore(r.from):l.childAfter(r.to)))do{if(n<0?l.to<=r.from:l.from>=r.to){if(0==O&&i.indexOf(l.type.name)>-1)return{start:s,end:{from:l.from,to:l.to},matched:!0};if(Qo(l.type,n,a))O++;else if(Qo(l.type,-n,a)&&(O--,0==O))return{start:s,end:{from:l.from,to:l.to},matched:!1}}}while(n<0?l.prevSibling():l.nextSibling());return{start:s,matched:!1}}const xo={brackets:["(","[","{","'",'"'],before:")]}'\":;>"},wo=ue.define({map(e,t){let n=t.mapPos(e,-1,k.TrackAfter);return null==n?void 0:n}}),ko=ue.define({map:(e,t)=>t.mapPos(e)}),yo=new class extends Re{};yo.startSide=1,yo.endSide=-1;const Po=G.define({create:()=>Ye.empty,update(e,t){if(t.selection){let n=t.state.doc.lineAt(t.selection.main.head).from,r=t.startState.doc.lineAt(t.startState.selection.main.head).from;n!=t.changes.mapPos(r,-1)&&(e=Ye.empty)}e=e.map(t.changes);for(let n of t.effects)n.is(wo)?e=e.update({add:[yo.range(n.value,n.value+1)]}):n.is(ko)&&(e=e.update({filter:e=>e!=n.value}));return e}});const vo="()[]{}<>";function So(e){for(let t=0;t2||2==r.length&&1==c(O(r,0))||t!=i.from||n!=i.to)return!1;let a=function(e,t){let n=_o(e,e.selection.main.head),r=n.brackets||xo.brackets;for(let i of r){let a=So(O(i,0));if(t==i)return a==i?Yo(e,i,r.indexOf(i+i+i)>-1):qo(e,i,a,n.before||xo.before);if(t==a&&Ro(e,e.selection.main.from))return zo(e,i,a)}return null}(e.state,r);return!!a&&(e.dispatch(a),!0)}const To=[{key:"Backspace",run:({state:e,dispatch:t})=>{let n=_o(e,e.selection.main.head).brackets||xo.brackets,r=null,i=e.changeByRange((t=>{if(t.empty){let r=function(e,t){let n=e.sliceString(t-2,t);return c(O(n,0))==n.length?n:n.slice(1)}(e.doc,t.head);for(let i of n)if(i==r&&Wo(e.doc,t.head)==So(O(i,0)))return{changes:{from:t.head-i.length,to:t.head+i.length},range:q.cursor(t.head-i.length),userEvent:"delete.backward"}}return{range:r=t}}));return r||t(e.update(i,{scrollIntoView:!0})),!r}}];function Ro(e,t){let n=!1;return e.field(Po).between(0,e.doc.length,(e=>{e==t&&(n=!0)})),n}function Wo(e,t){let n=e.sliceString(t,t+2);return n.slice(0,c(O(n,0)))}function qo(e,t,n,r){let i=null,a=e.changeByRange((a=>{if(!a.empty)return{changes:[{insert:t,from:a.from},{insert:n,from:a.to}],effects:wo.of(a.to+t.length),range:q.range(a.anchor+t.length,a.head+t.length)};let o=Wo(e.doc,a.head);return!o||/\s/.test(o)||r.indexOf(o)>-1?{changes:{insert:t+n,from:a.head},effects:wo.of(a.head+t.length),range:q.cursor(a.head+t.length)}:{range:i=a}}));return i?null:e.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function zo(e,t,n){let r=null,i=e.selection.ranges.map((t=>t.empty&&Wo(e.doc,t.head)==n?q.cursor(t.head+n.length):r=t));return r?null:e.update({selection:q.create(i,e.selection.mainIndex),scrollIntoView:!0,effects:e.selection.ranges.map((({from:e})=>ko.of(e)))})}function Yo(e,t,n){let r=null,i=e.changeByRange((i=>{if(!i.empty)return{changes:[{insert:t,from:i.from},{insert:t,from:i.to}],effects:wo.of(i.to+t.length),range:q.range(i.anchor+t.length,i.head+t.length)};let a=i.head,o=Wo(e.doc,a);if(o==t){if(Zo(e,a))return{changes:{insert:t+t,from:a},effects:wo.of(a+t.length),range:q.cursor(a+t.length)};if(Ro(e,a)){let r=n&&e.sliceDoc(a,a+3*t.length)==t+t+t;return{range:q.cursor(a+t.length*(r?3:1)),effects:ko.of(a)}}}else{if(n&&e.sliceDoc(a-2*t.length,a)==t+t&&Zo(e,a-2*t.length))return{changes:{insert:t+t+t+t,from:a},effects:wo.of(a+t.length),range:q.cursor(a+t.length)};if(e.charCategorizer(a)(o)!=$e.Word){let n=e.sliceDoc(a-1,a);if(n!=t&&e.charCategorizer(a)(n)!=$e.Word)return{changes:{insert:t+t,from:a},effects:wo.of(a+t.length),range:q.cursor(a+t.length)}}}return{range:r=i}}));return r?null:e.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function Zo(e,t){let n=qa(e).resolveInner(t+1);return n.parent&&n.from==t}function Uo(e,t){return q.create(e.ranges.map(t),e.mainIndex)}function Eo(e,t){return e.update({selection:t,scrollIntoView:!0,userEvent:"select"})}function Io({state:e,dispatch:t},n){let r=Uo(e.selection,n);return!r.eq(e.selection)&&(t(Eo(e,r)),!0)}function Vo(e,t){return q.cursor(t?e.to:e.from)}function Co(e,t){return Io(e,(n=>n.empty?e.moveByChar(n,t):Vo(n,t)))}const Ao=e=>Co(e,e.textDirection!=Cn.LTR),Go=e=>Co(e,e.textDirection==Cn.LTR);function jo(e,t){return Io(e,(n=>n.empty?e.moveByGroup(n,t):Vo(n,t)))}function Lo(e,t,n){if(t.type.prop(n))return!0;let r=t.to-t.from;return r&&(r>2||/[^\s,.;:]/.test(e.sliceDoc(t.from,t.to)))||t.firstChild}function No(e,t,n){let r,i,a=qa(e).resolveInner(t.head),o=n?Di.closedBy:Di.openedBy;for(let r=t.head;;){let t=n?a.childAfter(r):a.childBefore(r);if(!t)break;Lo(e,t,o)?a=t:r=n?t.to:t.from}return i=a.type.prop(o)&&(r=n?$o(e,a.from,1):$o(e,a.to,-1))&&r.matched?n?r.end.to:r.end.from:n?a.to:a.from,q.cursor(i,n?-1:1)}function Do(e,t){return Io(e,(n=>{if(!n.empty)return Vo(n,t);let r=e.moveVertically(n,t);return r.head!=n.head?r:e.moveToLineBoundary(n,t)}))}const Mo=e=>Do(e,!1),Fo=e=>Do(e,!0);function Bo(e,t){return Io(e,(n=>n.empty?e.moveVertically(n,t,e.dom.clientHeight):Vo(n,t)))}const Ho=e=>Bo(e,!1),Ko=e=>Bo(e,!0);function Jo(e,t,n){let r=e.visualLineAt(t.head),i=e.moveToLineBoundary(t,n);if(i.head==t.head&&i.head!=(n?r.to:r.from)&&(i=e.moveToLineBoundary(t,n,!1)),!n&&i.head==r.from&&r.length){let n=/^\s*/.exec(e.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;n&&t.head!=r.from+n&&(i=q.cursor(r.from+n))}return i}const es=e=>Io(e,(t=>Jo(e,t,!0))),ts=e=>Io(e,(t=>Jo(e,t,!1)));function ns(e,t){let n=Uo(e.state.selection,(e=>{let n=t(e);return q.range(e.anchor,n.head,n.goalColumn)}));return!n.eq(e.state.selection)&&(e.dispatch(Eo(e.state,n)),!0)}function rs(e,t){return ns(e,(n=>e.moveByChar(n,t)))}const is=e=>rs(e,e.textDirection!=Cn.LTR),as=e=>rs(e,e.textDirection==Cn.LTR);function os(e,t){return ns(e,(n=>e.moveByGroup(n,t)))}function ss(e,t){return ns(e,(n=>e.moveVertically(n,t)))}const Os=e=>ss(e,!1),ls=e=>ss(e,!0);function cs(e,t){return ns(e,(n=>e.moveVertically(n,t,e.dom.clientHeight)))}const us=e=>cs(e,!1),hs=e=>cs(e,!0),ds=e=>ns(e,(t=>Jo(e,t,!0))),ps=e=>ns(e,(t=>Jo(e,t,!1))),fs=({state:e,dispatch:t})=>(t(Eo(e,{anchor:0})),!0),ms=({state:e,dispatch:t})=>(t(Eo(e,{anchor:e.doc.length})),!0),gs=({state:e,dispatch:t})=>(t(Eo(e,{anchor:e.selection.main.anchor,head:0})),!0),Qs=({state:e,dispatch:t})=>(t(Eo(e,{anchor:e.selection.main.anchor,head:e.doc.length})),!0);function $s({state:e,dispatch:t},n){if(e.readOnly)return!1;let r="delete.selection",i=e.changeByRange((e=>{let{from:t,to:i}=e;if(t==i){let e=n(t);et&&(r="delete.forward"),t=Math.min(t,e),i=Math.max(i,e)}return t==i?{range:e}:{changes:{from:t,to:i},range:q.cursor(t)}}));return!i.changes.empty&&(t(e.update(i,{scrollIntoView:!0,userEvent:r})),!0)}function bs(e,t,n){if(e instanceof Qi)for(let r of e.pluginField(yn.atomicRanges))r.between(t,t,((e,r)=>{et&&(t=n?r:e)}));return t}const xs=(e,t)=>$s(e,(n=>{let i,a,{state:o}=e,s=o.doc.lineAt(n);if(!t&&n>s.from&&nxs(e,!1),ks=e=>xs(e,!0),ys=(e,t)=>$s(e,(n=>{let i=n,{state:a}=e,o=a.doc.lineAt(i),s=a.charCategorizer(i);for(let e=null;;){if(i==(t?o.to:o.from)){i==n&&o.number!=(t?a.doc.lines:1)&&(i+=t?1:-1);break}let O=r(o.text,i-o.from,t)+o.from,l=o.text.slice(Math.min(i,O)-o.from,Math.max(i,O)-o.from),c=s(l);if(null!=e&&c!=e)break;" "==l&&i==n||(e=c),i=O}return bs(e,i,t)})),Ps=e=>ys(e,!1),vs=e=>$s(e,(t=>{let n=e.visualLineAt(t).to;return bs(e,t=i.number){let e=t[t.length-1];e.to=a.to,e.ranges.push(r)}else t.push({from:i.from,to:a.to,ranges:[r]});n=a.number+1}return t}function _s(e,t,n){if(e.readOnly)return!1;let r=[],i=[];for(let t of Ss(e)){if(n?t.to==e.doc.length:0==t.from)continue;let a=e.doc.lineAt(n?t.to+1:t.from-1),o=a.length+1;if(n){r.push({from:t.to,to:a.to},{from:t.from,insert:a.text+e.lineBreak});for(let n of t.ranges)i.push(q.range(Math.min(e.doc.length,n.anchor+o),Math.min(e.doc.length,n.head+o)))}else{r.push({from:a.from,to:t.from},{from:t.to,insert:e.lineBreak+a.text});for(let e of t.ranges)i.push(q.range(e.anchor-o,e.head-o))}}return!!r.length&&(t(e.update({changes:r,scrollIntoView:!0,selection:q.create(i,e.selection.mainIndex),userEvent:"move.line"})),!0)}function Xs(e,t,n){if(e.readOnly)return!1;let r=[];for(let t of Ss(e))n?r.push({from:t.from,insert:e.doc.slice(t.from,t.to)+e.lineBreak}):r.push({from:t.to,insert:e.lineBreak+e.doc.slice(t.from,t.to)});return t(e.update({changes:r,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const Ts=Rs(!1);function Rs(e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let r=t.changeByRange((n=>{let{from:r,to:i}=n,a=t.doc.lineAt(r),o=!e&&r==i&&function(e,t){if(/\(\)|\[\]|\{\}/.test(e.sliceDoc(t-1,t+1)))return{from:t,to:t};let n,r=qa(e).resolveInner(t),i=r.childBefore(t),a=r.childAfter(t);return i&&a&&i.to<=t&&a.from>=t&&(n=i.type.prop(Di.closedBy))&&n.indexOf(a.name)>-1&&e.doc.lineAt(i.to).from==e.doc.lineAt(a.from).from?{from:i.to,to:a.from}:null}(t,r);e&&(r=i=(i<=a.to?a:t.doc.lineAt(i)).to);let s=new Ba(t,{simulateBreak:r,simulateDoubleBreak:!!o}),O=Fa(s,r);for(null==O&&(O=/^\s*/.exec(t.doc.lineAt(r).text)[0].length);ia.from&&r{let i=[];for(let a=r.from;a<=r.to;){let o=e.doc.lineAt(a);o.number>n&&(r.empty||r.to>o.from)&&(t(o,i,r),n=o.number),a=o.to+1}let a=e.changes(i);return{changes:i,range:q.range(a.mapPos(r.anchor,1),a.mapPos(r.head,1))}}))}const qs=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(Ws(e,((t,n)=>{n.push({from:t.from,insert:e.facet(Na)})})),{userEvent:"input.indent"})),!0),zs=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(Ws(e,((t,n)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let i=u(r,e.tabSize),a=0,o=Ma(e,Math.max(0,i-Da(e)));for(;aIo(e,(t=>q.cursor(e.visualLineAt(t.head).from,1))),shift:e=>ns(e,(t=>q.cursor(e.visualLineAt(t.head).from)))},{key:"Ctrl-e",run:e=>Io(e,(t=>q.cursor(e.visualLineAt(t.head).to,-1))),shift:e=>ns(e,(t=>q.cursor(e.visualLineAt(t.head).to)))},{key:"Ctrl-d",run:ks},{key:"Ctrl-h",run:ws},{key:"Ctrl-k",run:vs},{key:"Ctrl-Alt-h",run:Ps},{key:"Ctrl-o",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange((e=>({changes:{from:e.from,to:e.to,insert:h.of(["",""])},range:q.cursor(e.from)})));return t(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}},{key:"Ctrl-t",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange((t=>{if(!t.empty||0==t.from||t.from==e.doc.length)return{range:t};let n=t.from,i=e.doc.lineAt(n),a=n==i.from?n-1:r(i.text,n-i.from,!1)+i.from,o=n==i.to?n+1:r(i.text,n-i.from,!0)+i.from;return{changes:{from:a,to:o,insert:e.doc.slice(n,o).append(e.doc.slice(a,n))},range:q.cursor(o)}}));return!n.changes.empty&&(t(e.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)}},{key:"Alt-<",run:fs},{key:"Alt->",run:ms},{key:"Ctrl-v",run:Ko},{key:"Alt-v",run:Ho}],Zs=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:e=>Io(e,(t=>No(e.state,t,e.textDirection!=Cn.LTR))),shift:e=>ns(e,(t=>No(e.state,t,e.textDirection!=Cn.LTR)))},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:e=>Io(e,(t=>No(e.state,t,e.textDirection==Cn.LTR))),shift:e=>ns(e,(t=>No(e.state,t,e.textDirection==Cn.LTR)))},{key:"Alt-ArrowUp",run:({state:e,dispatch:t})=>_s(e,t,!1)},{key:"Shift-Alt-ArrowUp",run:({state:e,dispatch:t})=>Xs(e,t,!1)},{key:"Alt-ArrowDown",run:({state:e,dispatch:t})=>_s(e,t,!0)},{key:"Shift-Alt-ArrowDown",run:({state:e,dispatch:t})=>Xs(e,t,!0)},{key:"Escape",run:({state:e,dispatch:t})=>{let n=e.selection,r=null;return n.ranges.length>1?r=q.create([n.main]):n.main.empty||(r=q.create([q.cursor(n.main.head)])),!!r&&(t(Eo(e,r)),!0)}},{key:"Mod-Enter",run:Rs(!0)},{key:"Alt-l",mac:"Ctrl-l",run:({state:e,dispatch:t})=>{let n=Ss(e).map((({from:t,to:n})=>q.range(t,Math.min(n+1,e.doc.length))));return t(e.update({selection:q.create(n),userEvent:"select"})),!0}},{key:"Mod-i",run:({state:e,dispatch:t})=>{let n=Uo(e.selection,(t=>{var n;let r=qa(e).resolveInner(t.head,1);for(;!(r.from=t.to||r.to>t.to&&r.from<=t.from)&&(null===(n=r.parent)||void 0===n?void 0:n.parent);)r=r.parent;return q.range(r.to,r.from)}));return t(Eo(e,n)),!0},preventDefault:!0},{key:"Mod-[",run:zs},{key:"Mod-]",run:qs},{key:"Mod-Alt-\\",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=Object.create(null),r=new Ba(e,{overrideIndentation:e=>{let t=n[e];return null==t?-1:t}}),i=Ws(e,((t,i,a)=>{let o=Fa(r,t.from);if(null==o)return;/\S/.test(t.text)||(o=0);let s=/^\s*/.exec(t.text)[0],O=Ma(e,o);(s!=O||a.from{if(e.state.readOnly)return!1;let{state:t}=e,n=t.changes(Ss(t).map((({from:e,to:n})=>(e>0?e--:ne.moveVertically(t,!0))).map(n);return e.dispatch({changes:n,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0}},{key:"Shift-Mod-\\",run:({state:e,dispatch:t})=>function(e,t,n){let r=!1,i=Uo(e.selection,(t=>{let i=$o(e,t.head,-1)||$o(e,t.head,1)||t.head>0&&$o(e,t.head-1,1)||t.headjo(e,e.textDirection!=Cn.LTR),shift:e=>os(e,e.textDirection!=Cn.LTR)},{mac:"Cmd-ArrowLeft",run:ts,shift:ps},{key:"ArrowRight",run:Go,shift:as,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:e=>jo(e,e.textDirection==Cn.LTR),shift:e=>os(e,e.textDirection==Cn.LTR)},{mac:"Cmd-ArrowRight",run:es,shift:ds},{key:"ArrowUp",run:Mo,shift:Os,preventDefault:!0},{mac:"Cmd-ArrowUp",run:fs,shift:gs},{mac:"Ctrl-ArrowUp",run:Ho,shift:us},{key:"ArrowDown",run:Fo,shift:ls,preventDefault:!0},{mac:"Cmd-ArrowDown",run:ms,shift:Qs},{mac:"Ctrl-ArrowDown",run:Ko,shift:hs},{key:"PageUp",run:Ho,shift:us},{key:"PageDown",run:Ko,shift:hs},{key:"Home",run:ts,shift:ps},{key:"Mod-Home",run:fs,shift:gs},{key:"End",run:es,shift:ds},{key:"Mod-End",run:ms,shift:Qs},{key:"Enter",run:Ts},{key:"Mod-a",run:({state:e,dispatch:t})=>(t(e.update({selection:{anchor:0,head:e.doc.length},userEvent:"select"})),!0)},{key:"Backspace",run:ws,shift:ws},{key:"Delete",run:ks,shift:ks},{key:"Mod-Backspace",mac:"Alt-Backspace",run:Ps},{key:"Mod-Delete",mac:"Alt-Delete",run:e=>ys(e,!0)},{mac:"Mod-Backspace",run:e=>$s(e,(t=>{let n=e.visualLineAt(t).from;return bs(e,t>n?n:Math.max(0,t-1),!1)}))},{mac:"Mod-Delete",run:vs}].concat(Ys.map((e=>({mac:e.key,run:e.run,shift:e.shift}))))),Us=Oe.define(),Es=Oe.define(),Is=U.define(),Vs=U.define({combine:e=>ye(e,{minDepth:100,newGroupDelay:500},{minDepth:Math.max,newGroupDelay:Math.min})}),Cs=G.define({create:()=>nO.empty,update(e,t){let n=t.state.facet(Vs),r=t.annotation(Us);if(r){let i=Ms.fromTransaction(t),a=r.side,o=0==a?e.undone:e.done;return o=i?Fs(o,o.length,n.minDepth,i):Ks(o,t.startState.selection),new nO(0==a?r.rest:o,0==a?o:r.rest)}let i=t.annotation(Es);if("full"!=i&&"before"!=i||(e=e.isolate()),!1===t.annotation(he.addToHistory))return t.changes.empty?e:e.addMapping(t.changes.desc);let a=Ms.fromTransaction(t),o=t.annotation(he.time),s=t.annotation(he.userEvent);return a?e=e.addChanges(a,o,s,n.newGroupDelay,n.minDepth):t.selection&&(e=e.addSelection(t.startState.selection,o,s,n.newGroupDelay)),"full"!=i&&"after"!=i||(e=e.isolate()),e},toJSON:e=>({done:e.done.map((e=>e.toJSON())),undone:e.undone.map((e=>e.toJSON()))}),fromJSON:e=>new nO(e.done.map(Ms.fromJSON),e.undone.map(Ms.fromJSON))});function As(e={}){return[Cs,Vs.of(e),Qi.domEventHandlers({beforeinput:(e,t)=>"historyUndo"==e.inputType?js(t):"historyRedo"==e.inputType&&Ls(t)})]}function Gs(e,t){return function({state:n,dispatch:r}){let i=n.field(Cs,!1);if(!i)return!1;let a=i.pop(e,n,t);return!!a&&(r(a),!0)}}const js=Gs(0,!1),Ls=Gs(1,!1),Ns=Gs(0,!0),Ds=Gs(1,!0);class Ms{constructor(e,t,n,r,i){this.changes=e,this.effects=t,this.mapped=n,this.startSelection=r,this.selectionsAfter=i}setSelAfter(e){return new Ms(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,n;return{changes:null===(e=this.changes)||void 0===e?void 0:e.toJSON(),mapped:null===(t=this.mapped)||void 0===t?void 0:t.toJSON(),startSelection:null===(n=this.startSelection)||void 0===n?void 0:n.toJSON(),selectionsAfter:this.selectionsAfter.map((e=>e.toJSON()))}}static fromJSON(e){return new Ms(e.changes&&P.fromJSON(e.changes),[],e.mapped&&y.fromJSON(e.mapped),e.startSelection&&q.fromJSON(e.startSelection),e.selectionsAfter.map(q.fromJSON))}static fromTransaction(e){let t=Hs;for(let n of e.startState.facet(Is)){let r=n(e);r.length&&(t=t.concat(r))}return!t.length&&e.changes.empty?null:new Ms(e.changes.invert(e.startState.doc),t,void 0,e.startState.selection,Hs)}static selection(e){return new Ms(void 0,Hs,void 0,void 0,e)}}function Fs(e,t,n,r){let i=t+1>n+20?t-n-1:0,a=e.slice(i,t);return a.push(r),a}function Bs(e,t){return e.length?t.length?e.concat(t):e:t}const Hs=[];function Ks(e,t){if(e.length){let n=e[e.length-1],r=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-200));return r.length&&r[r.length-1].eq(t)?e:(r.push(t),Fs(e,e.length-1,1e9,n.setSelAfter(r)))}return[Ms.selection([t])]}function Js(e){let t=e[e.length-1],n=e.slice();return n[e.length-1]=t.setSelAfter(t.selectionsAfter.slice(0,t.selectionsAfter.length-1)),n}function eO(e,t){if(!e.length)return e;let n=e.length,r=Hs;for(;n;){let i=tO(e[n-1],t,r);if(i.changes&&!i.changes.empty||i.effects.length){let t=e.slice(0,n);return t[n-1]=i,t}t=i.mapped,n--,r=i.selectionsAfter}return r.length?[Ms.selection(r)]:Hs}function tO(e,t,n){let r=Bs(e.selectionsAfter.length?e.selectionsAfter.map((e=>e.map(t))):Hs,n);if(!e.changes)return Ms.selection(r);let i=e.changes.map(t),a=t.mapDesc(e.changes,!0),o=e.mapped?e.mapped.composeDesc(a):a;return new Ms(i,ue.mapEffects(e.effects,t),o,e.startSelection.map(a),r)}class nO{constructor(e,t,n=0,r){this.done=e,this.undone=t,this.prevTime=n,this.prevUserEvent=r}isolate(){return this.prevTime?new nO(this.done,this.undone):this}addChanges(e,t,n,r,i){let a=this.done,o=a[a.length-1];return a=o&&o.changes&&!o.changes.empty&&e.changes&&(!o.selectionsAfter.length&&t-this.prevTimen.push(e,t))),t.iterChangedRanges(((e,t,i,a)=>{for(let e=0;e=t&&i<=o&&(r=!0)}})),r}(o.changes,e.changes)||"input.type.compose"==n)?Fs(a,a.length-1,i,new Ms(e.changes.compose(o.changes),Bs(e.effects,o.effects),o.mapped,o.startSelection,Hs)):Fs(a,a.length,i,e),new nO(a,Hs,t,n)}addSelection(e,t,n,r){let i=this.done.length?this.done[this.done.length-1].selectionsAfter:Hs;return i.length>0&&t-this.prevTimee.empty!=t.ranges[n].empty)).length}(i[i.length-1],e)?this:new nO(Ks(this.done,e),this.undone,t,n)}addMapping(e){return new nO(eO(this.done,e),eO(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,n){let r=0==e?this.done:this.undone;if(0==r.length)return null;let i=r[r.length-1];if(n&&i.selectionsAfter.length)return t.update({selection:i.selectionsAfter[i.selectionsAfter.length-1],annotations:Us.of({side:e,rest:Js(r)}),userEvent:0==e?"select.undo":"select.redo"});if(i.changes){let n=1==r.length?Hs:r.slice(0,r.length-1);return i.mapped&&(n=eO(n,i.mapped)),t.update({changes:i.changes,selection:i.startSelection,effects:i.effects,annotations:Us.of({side:e,rest:n}),filter:!1,userEvent:0==e?"undo":"redo"})}return null}}nO.empty=new nO(Hs,Hs);const rO=[{key:"Mod-z",run:js,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:Ls,preventDefault:!0},{key:"Mod-u",run:Ns,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:Ds,preventDefault:!0}];class iO{constructor(e,t,n,r,i,a,o){this.type=e,this.value=t,this.from=n,this.hash=r,this.end=i,this.children=a,this.positions=o,this.hashProp=[[Di.contextHash,r]]}static create(e,t,n,r,i){return new iO(e,t,n,r+(r<<8)+e+(t<<4)|0,i,[],[])}addChild(e,t){e.prop(Di.contextHash)!=this.hash&&(e=new Ji(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(t)}toTree(e,t=this.end){let n=this.children.length-1;return n>=0&&(t=Math.max(t,this.positions[n]+this.children[n].length+this.from)),new Ji(e.types[this.type],this.children,this.positions,t-this.from).balance({makeTree:(e,t,n)=>new Ji(Bi.none,e,t,n,this.hashProp)})}}var aO;!function(e){e[e.Document=1]="Document",e[e.CodeBlock=2]="CodeBlock",e[e.FencedCode=3]="FencedCode",e[e.Blockquote=4]="Blockquote",e[e.HorizontalRule=5]="HorizontalRule",e[e.BulletList=6]="BulletList",e[e.OrderedList=7]="OrderedList",e[e.ListItem=8]="ListItem",e[e.ATXHeading1=9]="ATXHeading1",e[e.ATXHeading2=10]="ATXHeading2",e[e.ATXHeading3=11]="ATXHeading3",e[e.ATXHeading4=12]="ATXHeading4",e[e.ATXHeading5=13]="ATXHeading5",e[e.ATXHeading6=14]="ATXHeading6",e[e.SetextHeading1=15]="SetextHeading1",e[e.SetextHeading2=16]="SetextHeading2",e[e.HTMLBlock=17]="HTMLBlock",e[e.LinkReference=18]="LinkReference",e[e.Paragraph=19]="Paragraph",e[e.CommentBlock=20]="CommentBlock",e[e.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",e[e.Escape=22]="Escape",e[e.Entity=23]="Entity",e[e.HardBreak=24]="HardBreak",e[e.Emphasis=25]="Emphasis",e[e.StrongEmphasis=26]="StrongEmphasis",e[e.Link=27]="Link",e[e.Image=28]="Image",e[e.InlineCode=29]="InlineCode",e[e.HTMLTag=30]="HTMLTag",e[e.Comment=31]="Comment",e[e.ProcessingInstruction=32]="ProcessingInstruction",e[e.URL=33]="URL",e[e.HeaderMark=34]="HeaderMark",e[e.QuoteMark=35]="QuoteMark",e[e.ListMark=36]="ListMark",e[e.LinkMark=37]="LinkMark",e[e.EmphasisMark=38]="EmphasisMark",e[e.CodeMark=39]="CodeMark",e[e.CodeText=40]="CodeText",e[e.CodeInfo=41]="CodeInfo",e[e.LinkTitle=42]="LinkTitle",e[e.LinkLabel=43]="LinkLabel"}(aO||(aO={}));class oO{constructor(e,t){this.start=e,this.content=t,this.marks=[],this.parsers=[]}}class sO{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return uO(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,t=0,n=0){for(let r=t;r=t.stack[n.depth+1].value+n.baseIndent)return!0;if(n.indent>=n.baseIndent+4)return!1;let r=(e.type==aO.OrderedList?QO:gO)(n,t,!1);return r>0&&(e.type!=aO.BulletList||fO(n,t,!1)<0)&&n.text.charCodeAt(n.pos+r-1)==e.value}const lO={[aO.Blockquote]:(e,t,n)=>62==n.next&&(n.markers.push(LO(aO.QuoteMark,t.lineStart+n.pos,t.lineStart+n.pos+1)),n.moveBase(n.pos+(cO(n.text.charCodeAt(n.pos+1))?2:1)),e.end=t.lineStart+n.text.length,!0),[aO.ListItem]:(e,t,n)=>!(n.indent-1)&&(n.moveBaseColumn(n.baseIndent+e.value),!0),[aO.OrderedList]:OO,[aO.BulletList]:OO,[aO.Document]:()=>!0};function cO(e){return 32==e||9==e||10==e||13==e}function uO(e,t=0){for(;tn&&cO(e.charCodeAt(t-1));)t--;return t}function dO(e){if(96!=e.next&&126!=e.next)return-1;let t=e.pos+1;for(;t-1&&e.depth==t.stack.length||r<3?-1:1}function mO(e,t){return e.block.type==t||e.stack.length>1&&e.stack[e.stack.length-2].type==t}function gO(e,t,n){return 45!=e.next&&43!=e.next&&42!=e.next||e.pos!=e.text.length-1&&!cO(e.text.charCodeAt(e.pos+1))||!(!n||mO(t,aO.BulletList)||e.skipSpace(e.pos+2)=48&&i<=57;){if(r++,r==e.text.length)return-1;i=e.text.charCodeAt(r)}return r==e.pos||r>e.pos+9||46!=i&&41!=i||re.pos+1||49!=e.next)?-1:r+1-e.pos}function $O(e){if(35!=e.next)return-1;let t=e.pos+1;for(;t6?-1:n}function bO(e){if(45!=e.next&&61!=e.next||e.indent>=e.baseIndent+4)return-1;let t=e.pos+1;for(;t/,kO=/\?>/,yO=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*/i.exec(r);if(a)return e.append(LO(aO.Comment,n,n+1+a[0].length));let o=/^\?[^]*?\?>/.exec(r);if(o)return e.append(LO(aO.ProcessingInstruction,n,n+1+o[0].length));let s=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(r);return s?e.append(LO(aO.HTMLTag,n,n+1+s[0].length)):-1},Emphasis(e,t,n){if(95!=t&&42!=t)return-1;let r=n+1;for(;e.char(r)==t;)r++;let i=e.slice(n-1,n),a=e.slice(r,r+1),o=KO.test(i),s=KO.test(a),O=/\s|^$/.test(i),l=/\s|^$/.test(a),c=!l&&(!s||O||o),u=!O&&(!o||l||s),h=c&&(42==t||!u||o),d=u&&(42==t||!c||s);return e.append(new BO(95==t?NO:DO,n,r,(h?1:0)|(d?2:0)))},HardBreak(e,t,n){if(92==t&&10==e.char(n+1))return e.append(LO(aO.HardBreak,n,n+2));if(32==t){let t=n+1;for(;32==e.char(t);)t++;if(10==e.char(t)&&t>=n+2)return e.append(LO(aO.HardBreak,n,t+1))}return-1},Link:(e,t,n)=>91==t?e.append(new BO(MO,n,n+1,1)):-1,Image:(e,t,n)=>33==t&&91==e.char(n+1)?e.append(new BO(FO,n,n+2,1)):-1,LinkEnd(e,t,n){if(93!=t)return-1;for(let t=e.parts.length-1;t>=0;t--){let r=e.parts[t];if(r instanceof BO&&(r.type==MO||r.type==FO)){if(!r.side||e.skipSpace(r.to)==n&&!/[(\[]/.test(e.slice(n+1,n+2)))return e.parts[t]=null,-1;let i=e.takeContent(t),a=e.parts[t]=el(e,i,r.type==MO?aO.Link:aO.Image,r.from,n+1);if(r.type==MO)for(let n=0;nt?LO(aO.URL,t+n,i+n):i==e.length&&null}}function nl(e,t,n){let r=e.charCodeAt(t);if(39!=r&&34!=r&&40!=r)return!1;let i=40==r?41:r;for(let r=t+1,a=!1;r=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,t){return this.text.slice(e-this.offset,t-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,t,n,r,i){return this.append(new BO(e,t,n,(r?1:0)|(i?2:0)))}addElement(e){return this.append(e)}resolveMarkers(e){for(let t=e;t=e;o--){let e=this.parts[o];if(e instanceof BO&&1&e.side&&e.type==n.type&&!(i&&(1&n.side||2&e.side)&&(e.to-e.from+a)%3==0&&((e.to-e.from)%3||a%3))){r=e;break}}if(!r)continue;let s=n.type.resolve,O=[],l=r.from,c=n.to;if(i){let e=Math.min(2,r.to-r.from,a);l=r.to-e,c=n.from+e,s=1==e?"Emphasis":"StrongEmphasis"}r.type.mark&&O.push(this.elt(r.type.mark,l,r.to));for(let e=o+1;e=0;t--){let n=this.parts[t];if(n instanceof BO&&n.type==e)return t}return null}takeContent(e){let t=this.resolveMarkers(e);return this.parts.length=e,t}skipSpace(e){return uO(this.text,e-this.offset)+this.offset}elt(e,t,n,r){return"string"==typeof e?LO(this.parser.getNodeType(e),t,n,r):new jO(e,t)}}function al(e,t){if(!t.length)return e;if(!e.length)return t;let n=e.slice(),r=0;for(let e of t){for(;r(e?e-1:0))return!1;if(this.fragmentEnd<0){let e=this.fragment.to;for(;e>0&&"\n"!=this.input.read(e-1,e);)e--;this.fragmentEnd=e?e-1:0}let n=this.cursor;n||(n=this.cursor=this.fragment.tree.cursor(),n.firstChild());let r=e+this.fragment.offset;for(;n.to<=r;)if(!n.parent())return!1;for(;;){if(n.from>=r)return this.fragment.from<=t;if(!n.childAfter(r))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(Di.contextHash)==e}takeNodes(e){let t=this.cursor,n=this.fragment.offset,r=e.absoluteLineStart,i=r,a=e.block.children.length,o=i,s=a;for(;;){if(t.to-n>=this.fragmentEnd){if(t.type.isAnonymous&&t.firstChild())continue;break}if(e.dontInject.add(t.tree),e.addNode(t.tree,t.from-n),t.type.is("Block")&&(ol.indexOf(t.type.id)<0?(i=t.to-n,a=e.block.children.length):(i=o,a=s,o=t.to-n,s=e.block.children.length)),!t.nextSibling())break}for(;e.block.children.length>a;)e.block.children.pop(),e.block.positions.pop();return i-r}}const Ol=new ZO(new Hi(VO),Object.keys(_O).map((e=>_O[e])),Object.keys(_O).map((e=>WO[e])),Object.keys(_O),qO,lO,Object.keys(JO).map((e=>JO[e])),Object.keys(JO),[]);function ll(e,t,n){let r=[];for(let i=e.firstChild,a=t;;i=i.nextSibling){let e=i?i.from:n;if(e>a&&r.push({from:a,to:e}),!i)break;a=i.to}return r}const cl={resolve:"Strikethrough",mark:"StrikethroughMark"},ul={defineNodes:["Strikethrough","StrikethroughMark"],parseInline:[{name:"Strikethrough",parse:(e,t,n)=>126!=t||126!=e.char(n+1)?-1:e.addDelimiter(cl,n,n+2,!0,!0),after:"Emphasis"}]};function hl(e,t,n=0,r,i=0){let a=0,o=!0,s=-1,O=-1,l=!1,c=()=>{r.push(e.elt("TableCell",i+s,i+O,e.parser.parseInline(t.slice(s,O),i+s)))};for(let u=n;u-1)&&a++,o=!1,r&&(s>-1&&c(),r.push(e.elt("TableDelimiter",u+i,u+i+1))),s=O=-1),l=!l&&92==n}return s>-1&&(a++,r&&c()),a}class dl{constructor(){this.rows=null}nextLine(e,t,n){if(null==this.rows){let r;if(this.rows=!1,(45==t.next||58==t.next||124==t.next)&&/^\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/.test(r=t.text.slice(t.pos))){let i=[];hl(e,n.content,0,i,n.start)==hl(e,r,t.pos)&&(this.rows=[e.elt("TableHeader",n.start,n.start+n.content.length,i),e.elt("TableDelimiter",e.lineStart+t.pos,e.lineStart+t.text.length)])}}else if(this.rows){let n=[];hl(e,t.text,t.pos,n,e.lineStart),this.rows.push(e.elt("TableRow",e.lineStart+t.pos,e.lineStart+t.text.length,n))}return!1}finish(e,t){return!!this.rows&&(this.emit(e,t),!0)}emit(e,t){e.addLeafElement(t,e.elt("Table",t.start,t.start+t.content.length,this.rows))}}const pl={defineNodes:[{name:"Table",block:!0},"TableHeader","TableRow","TableCell","TableDelimiter"],parseBlock:[{name:"Table",leaf:(e,t)=>function(e,t){for(let n=t;n/^\[[ xX]\]/.test(t.content)&&"ListItem"==e.parser.nodeSet.types[e.block.type].name?new fl:null,after:"SetextHeading"}]},gl=[pl,ml,ul];function Ql(e,t,n){return(r,i,a)=>{if(i!=e||r.char(a+1)==e)return-1;let o=[r.elt(n,a,a+1)];for(let i=a+1;it%3==0)).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,n=0){let r=e.parser.context;return new wl(e,[],t,n,n,0,[],0,r?new kl(r,r.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){let t=e>>19,n=65535&e,{parser:r}=this.p,i=r.dynamicPrecedence(n);if(i&&(this.score+=i),0==t)return na;)this.stack.pop();this.reduceContext(n,o)}storeNode(e,t,n,r=4,i=!1){if(0==e){let e=this,r=this.buffer.length;if(0==r&&e.parent&&(r=e.bufferBase-e.parent.bufferBase,e=e.parent),r>0&&0==e.buffer[r-4]&&e.buffer[r-1]>-1){if(t==n)return;if(e.buffer[r-2]>=t)return void(e.buffer[r-2]=n)}}if(i&&this.pos!=n){let i=this.buffer.length;if(i>0&&0!=this.buffer[i-4])for(;i>0&&this.buffer[i-2]>n;)this.buffer[i]=this.buffer[i-4],this.buffer[i+1]=this.buffer[i-3],this.buffer[i+2]=this.buffer[i-2],this.buffer[i+3]=this.buffer[i-1],i-=4,r>4&&(r-=4);this.buffer[i]=e,this.buffer[i+1]=t,this.buffer[i+2]=n,this.buffer[i+3]=r}else this.buffer.push(e,t,n,r)}shift(e,t,n){let r=this.pos;if(131072&e)this.pushState(65535&e,this.pos);else if(0==(262144&e)){let i=e,{parser:a}=this.p;(n>this.pos||t<=a.maxNode)&&(this.pos=n,a.stateFlag(i,1)||(this.reducePos=n)),this.pushState(i,r),this.shiftContext(t,r),t<=a.maxNode&&this.buffer.push(t,r,n,4)}else this.pos=n,this.shiftContext(t,r),t<=this.p.parser.maxNode&&this.buffer.push(t,r,n,4)}apply(e,t,n){65536&e?this.reduce(e):this.shift(e,t,n)}useNode(e,t){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let r=this.pos;this.reducePos=this.pos=r+e.length,this.pushState(t,r),this.buffer.push(n,r,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,t=e.buffer.length;for(;t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let n=e.buffer.slice(t),r=e.bufferBase+t;for(;e&&r==e.bufferBase;)e=e.parent;return new wl(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,r,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let n=e<=this.p.parser.maxNode;n&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,n?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new Pl(this);;){let n=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(0==(65536&n))return!0;if(0==n)return!1;t.reduce(n)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let n=[];for(let r,i=0;i1&t&&e==r))||n.push(t[e],r)}t=n}let n=[];for(let e=0;e>19,r=65535&e,i=this.stack.length-3*n;if(i<0||t.getGoto(this.stack[i],r,!0)<0)return!1;this.storeNode(0,this.reducePos,this.reducePos,4,!0),this.score-=100}return this.reduce(e),!0}forceAll(){for(;!this.p.parser.stateFlag(this.state,2)&&this.forceReduce(););return this}get deadEnd(){if(3!=this.stack.length)return!1;let{parser:e}=this.p;return 65535==e.data[e.stateSlot(this.state,1)]&&!e.stateSlot(this.state,4)}restart(){this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;tthis.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class kl{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}var yl;!function(e){e[e.Insert=200]="Insert",e[e.Delete=190]="Delete",e[e.Reduce=100]="Reduce",e[e.MaxNext=4]="MaxNext",e[e.MaxInsertStackDepth=300]="MaxInsertStackDepth",e[e.DampenInsertStackDepth=120]="DampenInsertStackDepth"}(yl||(yl={}));class Pl{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=65535&e,n=e>>19;0==n?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=3*(n-1);let r=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=r}}class vl{constructor(e,t,n){this.stack=e,this.pos=t,this.index=n,this.buffer=e.buffer,0==this.index&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new vl(e,t,t-e.bufferBase)}maybeNext(){let e=this.stack.parent;null!=e&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,0==this.index&&this.maybeNext()}fork(){return new vl(this.stack,this.pos,this.index)}}class Sl{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const _l=new Sl;class Xl{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=_l,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let n=this.range,r=this.rangeIndex,i=this.pos+e;for(;in.to:i>=n.to;){if(r==this.ranges.length-1)return null;let e=this.ranges[++r];i+=e.from-n.to,n=e}return i}peek(e){let t,n,r=this.chunkOff+e;if(r>=0&&r=this.chunk2Pos&&tr.to&&(this.chunk2=this.chunk2.slice(0,r.to-t)),n=this.chunk2.charCodeAt(0)}}return t>this.token.lookAhead&&(this.token.lookAhead=t),n}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(null==n||n=this.chunk2Pos&&this.posthis.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>this.token.lookAhead&&(this.token.lookAhead=this.pos),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,t){if(t?(this.token=t,t.start=t.lookAhead=e,t.value=t.extended=-1):this.token=_l,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let n="";for(let r of this.ranges){if(r.from>=t)break;r.to>e&&(n+=this.input.read(Math.max(r.from,e),Math.min(r.to,t)))}return n}}class Tl{constructor(e,t){this.data=e,this.id=t}token(e,t){!function(e,t,n,r){let i=0,a=1<0){let n=e[r];if(s.allows(n)&&(-1==t.token.value||t.token.value==n||o.overrides(n,t.token.value))){t.acceptToken(n);break}}for(let r=t.next,a=0,o=e[i+2];a>1,O=n+s+(s<<1),l=e[O],c=e[O+1];if(r=c)){i=e[O+2],t.advance();continue e}a=s+1}}break}}(this.data,e,t,this.id)}}Tl.prototype.contextual=Tl.prototype.fallback=Tl.prototype.extend=!1;class Rl{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function Wl(e,t=Uint16Array){if("string"!=typeof e)return e;let n=null;for(let r=0,i=0;r=92&&t--,t>=34&&t--;let i=t-32;if(i>=46&&(i-=46,n=!0),a+=i,n)break;a*=46}n?n[i++]=a:n=new t(a)}return n}const ql="undefined"!=typeof process&&/\bparse\b/.test(process.env.LOG);let zl=null;var Yl,Zl;function Ul(e,t,n){let r=e.fullCursor();for(r.moveTo(t);;)if(!(n<0?r.childBefore(t):r.childAfter(t)))for(;;){if((n<0?r.tot)&&!r.type.isError)return n<0?Math.max(0,Math.min(r.to-1,t-25)):Math.min(e.length,Math.max(r.from+1,t+25));if(n<0?r.prevSibling():r.nextSibling())break;if(!r.parent())return n<0?0:e.length}}!function(e){e[e.Margin=25]="Margin"}(Yl||(Yl={}));class El{constructor(e,t){this.fragments=e,this.nodeSet=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?Ul(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?Ul(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(ee)return this.nextStart=a,null;if(i instanceof Ji){if(a==e){if(a=Math.max(this.safeFrom,e)&&(this.trees.push(i),this.start.push(a),this.index.push(0))}else this.index[t]++,this.nextStart=a+i.length}}}class Il{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map((e=>new Sl))}getActions(e){let t=0,n=null,{parser:r}=e.p,{tokenizers:i}=r,a=r.stateSlot(e.state,3),o=e.curContext?e.curContext.hash:0,s=0;for(let r=0;rl.end+25&&(s=Math.max(l.lookAhead,s)),0!=l.value)){let r=t;if(l.extended>-1&&(t=this.addActions(e,l.extended,l.end,t)),t=this.addActions(e,l.value,l.end,t),!O.extend&&(n=l,t>r))break}}for(;this.actions.length>t;)this.actions.pop();return s&&e.setLookAhead(s),n||e.pos!=this.stream.end||(n=new Sl,n.value=e.p.parser.eofTerm,n.start=n.end=e.pos,t=this.addActions(e,n.value,n.end,t)),this.mainToken=n,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Sl,{pos:n,p:r}=e;return t.start=n,t.end=Math.min(n+1,r.stream.end),t.value=n==r.stream.end?r.parser.eofTerm:0,t}updateCachedToken(e,t,n){if(t.token(this.stream.reset(n.pos,e),n),e.value>-1){let{parser:t}=n.p;for(let r=0;r=0&&n.p.parser.dialect.allows(i>>1)){0==(1&i)?e.value=i>>1:e.extended=i>>1;break}}}else e.value=0,e.end=Math.min(n.p.stream.end,n.pos+1)}putAction(e,t,n,r){for(let t=0;t4*e.bufferLength?new El(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e,t,n=this.stacks,r=this.minStackPos,i=this.stacks=[];for(let a=0;ar)i.push(o);else{if(this.advanceStack(o,i,n))continue;{e||(e=[],t=[]),e.push(o);let n=this.tokens.getMainToken(o);t.push(n.value,n.end)}}break}}if(!i.length){let t=e&&function(e){let t=null;for(let n of e){let e=n.p.stoppedAt;(n.pos==n.p.stream.end||null!=e&&n.pos>e)&&n.p.parser.stateFlag(n.state,2)&&(!t||t.scoree)for(i.sort(((e,t)=>t.score-e.score));i.length>e;)i.pop();i.some((e=>e.reducePos>r))&&this.recovering--}else if(i.length>1)e:for(let e=0;e200&&r.buffer.length>200){if(!((t.score-r.score||t.buffer.length-r.buffer.length)>0)){i.splice(e--,1);continue e}i.splice(n--,1)}}}this.minStackPos=i[0].pos;for(let e=1;ethis.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let t=e.curContext&&e.curContext.tracker.strict,n=t?e.curContext.hash:0;for(let a=this.fragments.nodeAt(r);a;){let r=this.parser.nodeSet.types[a.type.id]==a.type?i.getGoto(e.state,a.type.id):-1;if(r>-1&&a.length&&(!t||(a.prop(Di.contextHash)||0)==n))return e.useNode(a,r),!0;if(!(a instanceof Ji)||0==a.children.length||a.positions[0]>0)break;let o=a.children[0];if(!(o instanceof Ji&&0==a.positions[0]))break;a=o}}let a=i.stateSlot(e.state,4);if(a>0)return e.reduce(a),!0;let o=this.tokens.getActions(e);for(let i=0;ir?t.push(c):n.push(c)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return Cl(e,t),!0}}runRecovery(e,t,n){let r=null,i=!1;for(let a=0;a ":"";if(o.deadEnd){if(i)continue;if(i=!0,o.restart(),this.advanceFully(o,n))continue}let c=o.split(),u=l;for(let e=0;c.forceReduce()&&e<10;e++){if(this.advanceFully(c,n))break;ql&&(u=this.stackID(c)+" -> ")}for(let e of o.recoverByInsert(s))this.advanceFully(e,n);this.stream.end>o.pos?(O==o.pos&&(O++,s=0),o.recoverByDelete(s,O),Cl(o,n)):(!r||r.scoree;class jl{constructor(e){this.start=e.start,this.shift=e.shift||Gl,this.reduce=e.reduce||Gl,this.reuse=e.reuse||Gl,this.hash=e.hash||(()=>0),this.strict=!1!==e.strict}}class Ll extends pa{constructor(e){if(super(),this.wrappers=[],13!=e.version)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (13)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let n=0;ne.topRules[t][1])),r=[];for(let e=0;e=0)i(r,e,t[n++]);else{let a=t[n+-r];for(let o=-r;o>0;o--)i(t[n++],e,a);n++}}}this.nodeSet=new Hi(t.map(((t,i)=>Bi.define({name:i>=this.minRepeatTerm?void 0:t,id:i,props:r[i],top:n.indexOf(i)>-1,error:0==i,skipped:e.skippedNodes&&e.skippedNodes.indexOf(i)>-1})))),this.strict=!1,this.bufferLength=ji;let a=Wl(e.tokenData);if(this.context=e.context,this.specialized=new Uint16Array(e.specialized?e.specialized.length:0),this.specializers=[],e.specialized)for(let t=0;t"number"==typeof e?new Tl(a,e):e)),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,n){let r=new Vl(this,e,t,n);for(let i of this.wrappers)r=i(r,e,t,n);return r}getGoto(e,t,n=!1){let r=this.goto;if(t>=r[0])return-1;for(let i=r[t+1];;){let t=r[i++],a=1&t,o=r[i++];if(a&&n)return o;for(let n=i+(t>>1);i0}validAction(e,t){if(t==this.stateSlot(e,4))return!0;for(let n=this.stateSlot(e,1);;n+=3){if(65535==this.data[n]){if(1!=this.data[n+1])return!1;n=Nl(this.data,n+2)}if(t==Nl(this.data,n+1))return!0}}nextStates(e){let t=[];for(let n=this.stateSlot(e,1);;n+=3){if(65535==this.data[n]){if(1!=this.data[n+1])break;n=Nl(this.data,n+2)}if(0==(1&this.data[n+2])){let e=this.data[n+1];t.some(((t,n)=>1&n&&t==e))||t.push(this.data[n],e)}}return t}overrides(e,t){let n=Dl(this.data,this.tokenPrecTable,t);return n<0||Dl(this.data,this.tokenPrecTable,e){let n=e.tokenizers.find((e=>e.from==t));return n?n.to:t}))),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),null!=e.strict&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),null!=e.bufferLength&&(t.bufferLength=e.bufferLength),t}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return null==t?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),n=t.map((()=>!1));if(e)for(let r of e.split(" ")){let e=t.indexOf(r);e>=0&&(n[e]=!0)}let r=null;for(let e=0;e=65&&e<=90||95==e||e>=97&&e<=122||e>=161}function Kl(e){return 9==e||10==e||13==e||32==e}let Jl=null,ec=null,tc=0;function nc(e,t){let n=e.pos+t;if(tc==n&&ec==e)return Jl;let r=e.peek(t);for(;Kl(r);)r=e.peek(++t);let i="";for(;Hl(r);)i+=String.fromCharCode(r),r=e.peek(++t);return ec=e,tc=n,Jl=i||(r==rc||r==ic?void 0:null)}const rc=63,ic=33;function ac(e,t){this.name=e,this.parent=t,this.hash=t?t.hash:0;for(let t=0;toc.indexOf(t)>-1?new ac(nc(r,1)||"",e):e,reduce:(e,t)=>18==t&&e?e.parent:e,reuse(e,t,n,r){let i=t.type.id;return 4==i||35==i?new ac(nc(r,1)||"",e):e},hash:e=>e?e.hash:0,strict:!1}),Oc=new Rl(((e,t)=>{if(60!=e.next)return void(e.next<0&&t.context&&e.acceptToken(56));e.advance();let n=47==e.next;n&&e.advance();let r=nc(e,0);if(void 0===r)return;if(!r)return e.acceptToken(n?11:4);let i=t.context?t.context.name:null;if(n){if(r==i)return e.acceptToken(8);if(i&&Fl[i])return e.acceptToken(56,-2);if(t.dialectEnabled(0))return e.acceptToken(9);for(let e=t.context;e;e=e.parent)if(e.name==r)return;e.acceptToken(10)}else{if("script"==r)return e.acceptToken(5);if("style"==r)return e.acceptToken(6);if("textarea"==r)return e.acceptToken(7);i&&Bl[i]&&Bl[i][r]?e.acceptToken(56,-1):e.acceptToken(4)}}),{contextual:!0}),lc=new Rl(((e,t)=>{let n=1;if(47==e.next){if(62!=e.peek(1))return;n=2}else if(62!=e.next)return;t.context&&Ml[t.context.name]&&e.acceptToken(12,n)})),cc=new Rl((e=>{for(let t=0,n=0;;n++){if(e.next<0){n&&e.acceptToken(57);break}if(e.next=="--\x3e".charCodeAt(t)){if(t++,3==t){n>3&&e.acceptToken(57,-2);break}}else t=0;e.advance()}}));function uc(e,t,n){let r=2+e.length;return new Rl((i=>{for(let a=0,o=0,s=0;;s++){if(i.next<0){s&&i.acceptToken(t);break}if(0==a&&60==i.next||1==a&&47==i.next||a>=2&&ao?i.acceptToken(t,-o):i.acceptToken(n,-(o-2));break}if((10==i.next||13==i.next)&&s){i.acceptToken(t,1);break}a=o=0}else o++;i.advance()}}))}const hc=uc("script",53,1),dc=uc("style",54,2),pc=uc("textarea",55,3),fc=Ll.deserialize({version:13,states:",fOVO!jOOO!TQ#tO'#CoO!YQ#tO'#CyO!_Q#tO'#C|O!dQ#tO'#DPO!iOXO'#CnO!tOYO'#CnO#PO[O'#CnO$YO!jO'#CnOOOW'#Cn'#CnO$aO$fO'#DSO$iQ#tO'#DUO$nQ#tO'#DVOOOW'#Dj'#DjOOOW'#DX'#DXQVO!jOOO$sQ&jO,59ZO${Q&jO,59eO%TQ&jO,59hO%]Q&zO,59kOOOX'#D]'#D]O%hOXO'#CwO%sOXO,59YOOOY'#D^'#D^O%{OYO'#CzO&WOYO,59YOOO['#D_'#D_O&`O[O'#C}O&kO[O,59YOOOW'#D`'#D`O&sO!jO,59YO&zQ#tO'#DQOOOW,59Y,59YOOOp'#Da'#DaO'PO$fO,59nOOOW,59n,59nO'XQ#tO,59pO'^Q#tO,59qOOOW-E7V-E7VO'cQ&zO'#CqOOQ`'#DY'#DYO'qQ&jO1G.uOOOX1G.u1G.uO'yQ&jO1G/POOOY1G/P1G/PO(RQ&jO1G/SOOO[1G/S1G/SO(ZQ&zO1G/VOOOW1G/V1G/VOOOW1G/X1G/XOOOX-E7Z-E7ZO(fQ#tO'#CxOOOW1G.t1G.tOOOY-E7[-E7[O(kQ#tO'#C{OOO[-E7]-E7]O(pQ#tO'#DOOOOW-E7^-E7^O(uQ#tO,59lOOOp-E7_-E7_OOOW1G/Y1G/YOOOW1G/[1G/[OOOW1G/]1G/]O(zQ,UO,59]OOQ`-E7W-E7WOOOX7+$a7+$aOOOY7+$k7+$kOOO[7+$n7+$nOOOW7+$q7+$qOOOW7+$s7+$sO)VQ#tO,59dO)[Q#tO,59gO)aQ#tO,59jOOOW1G/W1G/WO)fO7[O'#CtO)tOMhO'#CtOOQ`1G.w1G.wOOOW1G/O1G/OOOOW1G/R1G/ROOOW1G/U1G/UOOOO'#DZ'#DZO*SO7[O,59`OOQ`,59`,59`OOOO'#D['#D[O*bOMhO,59`OOOO-E7X-E7XOOQ`1G.z1G.zOOOO-E7Y-E7Y",stateData:"*x~O!]OS~OSSOTPOUQOVROX[OYZOZ]O^]O_]O`]Oa]Ow]Oz^O!cYO~Od`O~OdaO~OdbO~OdcO~O!VdOPkP!YkP~O!WgOQnP!YnP~O!XjORqP!YqP~OSSOTPOUQOVROWoOX[OYZOZ]O^]O_]O`]Oa]Ow]O!cYO~O!YpO~P#[O!ZqO!dsO~OdtO~OduO~OfwOjzO~OfwOj|O~OfwOj!OO~O[!ROfwOj!QO~O!VdOPkX!YkX~OP!TO!Y!UO~O!WgOQnX!YnX~OQ!WO!Y!UO~O!XjORqX!YqX~OR!YO!Y!UO~O!Y!UO~P#[Od![O~O!ZqO!d!^O~Oj!_O~Oj!`O~Og!aOfeXjeX[eX~OfwOj!cO~OfwOj!dO~OfwOj!eO~O[!gOfwOj!fO~Od!hO~Od!iO~Od!jO~Oj!kO~Oi!nO!_!lO!a!mO~Oj!oO~Oj!pO~Oj!qO~O_!rO`!rO!_!tO!`!rO~O_!uO`!uO!a!tO!b!uO~O_!rO`!rO!_!xO!`!rO~O_!uO`!uO!a!xO!b!uO~O`_a!cwz!c~",goto:"%i!_PPPPPPPPPPPPPPPPPP!`!fP!lPP!vPP!y!|#P#V#Y#]#c#f#i#o#u!`P!`!`P#{$R$e$k$q$w$}%T%ZPPPPPPPP%aX]OW_nXTOW_nax`abcy{}!PR!n!aRfTR!UfXUOW_nRiUR!UiXVOW_nRlVR!UlXWOW_nQpWR!UnXXOW_nQ_ORv_Qy`Q{aQ}bQ!PcX!by{}!PQ!s!lR!w!sQ!v!mR!y!vQeTR!SeQhUR!VhQkVR!XkQnWR!ZnQrYR!]rS^O_TmWn",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteCloseTag SelfCloseEndTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue EndTag ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:66,context:sc,nodeProps:[[Di.closedBy,-9,1,2,3,5,6,7,8,9,10,"EndTag",4,"EndTag SelfCloseEndTag",-4,19,29,32,35,"CloseTag"],[Di.group,-9,11,15,16,17,18,38,39,40,41,"Entity",14,"Entity TextContent",-3,27,30,33,"TextContent Entity"],[Di.openedBy,12,"StartTag",26,"StartTag StartCloseTag",-4,28,31,34,36,"OpenTag"]],skippedNodes:[0],repeatNodeCount:9,tokenData:"!#b!aR!WOX$kXY)sYZ)sZ]$k]^)s^p$kpq)sqr$krs*zsv$kvw+dwx2yx}$k}!O3f!O!P$k!P!Q7_!Q![$k![!]8u!]!^$k!^!_>b!_!`!!p!`!a8T!a!c$k!c!}8u!}#R$k#R#S8u#S#T$k#T#o8u#o$f$k$f$g&R$g%W$k%W%o8u%o%p$k%p&a8u&a&b$k&b1p8u1p4U$k4U4d8u4d4e$k4e$IS8u$IS$I`$k$I`$Ib8u$Ib$Kh$k$Kh%#t8u%#t&/x$k&/x&Et8u&Et&FV$k&FV;'S8u;'S;:jiW!``!bpOq(kqr?Rrs'gsv(kwx(]x!a(k!a!bKj!b~(k!R?YZ!``!bpOr(krs'gsv(kwx(]x}(k}!O?{!O!f(k!f!gAR!g#W(k#W#XGz#X~(k!R@SV!``!bpOr(krs'gsv(kwx(]x}(k}!O@i!O~(k!R@rT!``!bp!cPOr(krs'gsv(kwx(]x~(k!RAYV!``!bpOr(krs'gsv(kwx(]x!q(k!q!rAo!r~(k!RAvV!``!bpOr(krs'gsv(kwx(]x!e(k!e!fB]!f~(k!RBdV!``!bpOr(krs'gsv(kwx(]x!v(k!v!wBy!w~(k!RCQV!``!bpOr(krs'gsv(kwx(]x!{(k!{!|Cg!|~(k!RCnV!``!bpOr(krs'gsv(kwx(]x!r(k!r!sDT!s~(k!RD[V!``!bpOr(krs'gsv(kwx(]x!g(k!g!hDq!h~(k!RDxW!``!bpOrDqrsEbsvDqvwEvwxFfx!`Dq!`!aGb!a~DqqEgT!bpOvEbvxEvx!`Eb!`!aFX!a~EbPEyRO!`Ev!`!aFS!a~EvPFXOzPqF`Q!bpzPOv'gx~'gaFkV!``OrFfrsEvsvFfvwEvw!`Ff!`!aGQ!a~FfaGXR!``zPOr(]sv(]w~(]!RGkT!``!bpzPOr(krs'gsv(kwx(]x~(k!RHRV!``!bpOr(krs'gsv(kwx(]x#c(k#c#dHh#d~(k!RHoV!``!bpOr(krs'gsv(kwx(]x#V(k#V#WIU#W~(k!RI]V!``!bpOr(krs'gsv(kwx(]x#h(k#h#iIr#i~(k!RIyV!``!bpOr(krs'gsv(kwx(]x#m(k#m#nJ`#n~(k!RJgV!``!bpOr(krs'gsv(kwx(]x#d(k#d#eJ|#e~(k!RKTV!``!bpOr(krs'gsv(kwx(]x#X(k#X#YDq#Y~(k!RKqW!``!bpOrKjrsLZsvKjvwLowxNPx!aKj!a!b! g!b~KjqL`T!bpOvLZvxLox!aLZ!a!bM^!b~LZPLrRO!aLo!a!bL{!b~LoPMORO!`Lo!`!aMX!a~LoPM^OwPqMcT!bpOvLZvxLox!`LZ!`!aMr!a~LZqMyQ!bpwPOv'gx~'gaNUV!``OrNPrsLosvNPvwLow!aNP!a!bNk!b~NPaNpV!``OrNPrsLosvNPvwLow!`NP!`!a! V!a~NPa! ^R!``wPOr(]sv(]w~(]!R! nW!``!bpOrKjrsLZsvKjvwLowxNPx!`Kj!`!a!!W!a~Kj!R!!aT!``!bpwPOr(krs'gsv(kwx(]x~(k!V!!{VgS^P!``!bpOr&Rrs&qsv&Rwx'rx!^&R!^!_(k!_~&R",tokenizers:[hc,dc,pc,Oc,lc,cc,0,1,2,3,4,5],topRules:{Document:[0,13]},dialects:{noMatch:0},tokenPrec:446});function mc(e,t){let n=Object.create(null);for(let r of e.firstChild.getChildren("Attribute")){let e=r.getChild("AttributeName"),i=r.getChild("AttributeValue")||r.getChild("UnquotedAttributeValue");e&&(n[t.read(e.from,e.to)]=i?"AttributeValue"==i.name?t.read(i.from+1,i.to-1):t.read(i.from,i.to):"")}return n}function gc(e,t,n){let r;for(let i of n)if(!i.attrs||i.attrs(r||(r=mc(e.node.parent,t))))return{parser:i.parser};return null}function Qc(e){let t=[],n=[],r=[];for(let i of e){let e="script"==i.tag?t:"style"==i.tag?n:"textarea"==i.tag?r:null;if(!e)throw new RangeError("Only script, style, and textarea tags can host nested parsers");e.push(i)}return ma(((e,i)=>{let a=e.type.id;return 27==a?gc(e,i,t):30==a?gc(e,i,n):33==a?gc(e,i,r):null}))}const $c=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288];function bc(e){return e>=65&&e<=90||e>=97&&e<=122||e>=161}function xc(e){return e>=48&&e<=57}const wc=new Rl(((e,t)=>{for(let n=!1,r=0,i=0;;i++){let{next:a}=e;if(!(bc(a)||45==a||95==a||n&&xc(a))){n&&e.acceptToken(40==a?94:2==r&&t.canShift(2)?2:95);break}!n&&(45!=a||i>0)&&(n=!0),r===i&&45==a&&r++,e.advance()}})),kc=new Rl((e=>{if($c.includes(e.peek(-1))){let{next:t}=e;(bc(t)||95==t||35==t||46==t||91==t||58==t||45==t)&&e.acceptToken(93)}})),yc=new Rl((e=>{if(!$c.includes(e.peek(-1))){let{next:t}=e;if(37==t&&(e.advance(),e.acceptToken(1)),bc(t)){do{e.advance()}while(bc(e.next));e.acceptToken(1)}}})),Pc={__proto__:null,lang:32,"nth-child":32,"nth-last-child":32,"nth-of-type":32,dir:32,url:60,"url-prefix":60,domain:60,regexp:60,selector:134},vc={__proto__:null,"@import":114,"@media":138,"@charset":142,"@namespace":146,"@keyframes":152,"@supports":164},Sc={__proto__:null,not:128,only:128,from:158,to:160},_c=Ll.deserialize({version:13,states:"7WOYQ[OOOOQP'#Cd'#CdOOQP'#Cc'#CcO!ZQ[O'#CfO!}QXO'#CaO#UQ[O'#ChO#aQ[O'#DPO#fQ[O'#DTOOQP'#Ec'#EcO#kQdO'#DeO$VQ[O'#DrO#kQdO'#DtO$hQ[O'#DvO$sQ[O'#DyO$xQ[O'#EPO%WQ[O'#EROOQS'#Eb'#EbOOQS'#ES'#ESQYQ[OOOOQP'#Cg'#CgOOQP,59Q,59QO!ZQ[O,59QO%_Q[O'#EVO%yQWO,58{O&RQ[O,59SO#aQ[O,59kO#fQ[O,59oO%_Q[O,59sO%_Q[O,59uO%_Q[O,59vO'bQ[O'#D`OOQS,58{,58{OOQP'#Ck'#CkOOQO'#C}'#C}OOQP,59S,59SO'iQWO,59SO'nQWO,59SOOQP'#DR'#DROOQP,59k,59kOOQO'#DV'#DVO'sQ`O,59oOOQS'#Cp'#CpO#kQdO'#CqO'{QvO'#CsO)VQtO,5:POOQO'#Cx'#CxO'iQWO'#CwO)kQWO'#CyOOQS'#Ef'#EfOOQO'#Dh'#DhO)pQ[O'#DoO*OQWO'#EiO$xQ[O'#DmO*^QWO'#DpOOQO'#Ej'#EjO%|QWO,5:^O*cQpO,5:`OOQS'#Dx'#DxO*kQWO,5:bO*pQ[O,5:bOOQO'#D{'#D{O*xQWO,5:eO*}QWO,5:kO+VQWO,5:mOOQS-E8Q-E8QOOQP1G.l1G.lO+yQXO,5:qOOQO-E8T-E8TOOQS1G.g1G.gOOQP1G.n1G.nO'iQWO1G.nO'nQWO1G.nOOQP1G/V1G/VO,WQ`O1G/ZO,qQXO1G/_O-XQXO1G/aO-oQXO1G/bO.VQXO'#CdO.zQWO'#DaOOQS,59z,59zO/PQWO,59zO/XQ[O,59zO/`QdO'#CoO/gQ[O'#DOOOQP1G/Z1G/ZO#kQdO1G/ZO/nQpO,59]OOQS,59_,59_O#kQdO,59aO/vQWO1G/kOOQS,59c,59cO/{Q!bO,59eO0TQWO'#DhO0`QWO,5:TO0eQWO,5:ZO$xQ[O,5:VO$xQ[O'#EYO0mQWO,5;TO0xQWO,5:XO%_Q[O,5:[OOQS1G/x1G/xOOQS1G/z1G/zOOQS1G/|1G/|O1ZQWO1G/|O1`QdO'#D|OOQS1G0P1G0POOQS1G0V1G0VOOQS1G0X1G0XOOQP7+$Y7+$YOOQP7+$u7+$uO#kQdO7+$uO#kQdO,59{O1nQ[O'#EXO1xQWO1G/fOOQS1G/f1G/fO1xQWO1G/fO2QQtO'#ETO2uQdO'#EeO3PQWO,59ZO3UQXO'#EhO3]QWO,59jO3bQpO7+$uOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%V7+%VO3jQWO1G/PO#kQdO1G/oOOQO1G/u1G/uOOQO1G/q1G/qO3oQWO,5:tOOQO-E8W-E8WO3}QXO1G/vOOQS7+%h7+%hO4UQYO'#CsO%|QWO'#EZO4^QdO,5:hOOQS,5:h,5:hO4lQpO<O!c!}$w!}#O?[#O#P$w#P#Q?g#Q#R2U#R#T$w#T#U?r#U#c$w#c#d@q#d#o$w#o#pAQ#p#q2U#q#rA]#r#sAh#s#y$w#y#z%]#z$f$w$f$g%]$g#BY$w#BY#BZ%]#BZ$IS$w$IS$I_%]$I_$I|$w$I|$JO%]$JO$JT$w$JT$JU%]$JU$KV$w$KV$KW%]$KW&FU$w&FU&FV%]&FV~$wW$zQOy%Qz~%QW%VQoWOy%Qz~%Q~%bf#T~OX%QX^&v^p%Qpq&vqy%Qz#y%Q#y#z&v#z$f%Q$f$g&v$g#BY%Q#BY#BZ&v#BZ$IS%Q$IS$I_&v$I_$I|%Q$I|$JO&v$JO$JT%Q$JT$JU&v$JU$KV%Q$KV$KW&v$KW&FU%Q&FU&FV&v&FV~%Q~&}f#T~oWOX%QX^&v^p%Qpq&vqy%Qz#y%Q#y#z&v#z$f%Q$f$g&v$g#BY%Q#BY#BZ&v#BZ$IS%Q$IS$I_&v$I_$I|%Q$I|$JO&v$JO$JT%Q$JT$JU&v$JU$KV%Q$KV$KW&v$KW&FU%Q&FU&FV&v&FV~%Q^(fSOy%Qz#]%Q#]#^(r#^~%Q^(wSoWOy%Qz#a%Q#a#b)T#b~%Q^)YSoWOy%Qz#d%Q#d#e)f#e~%Q^)kSoWOy%Qz#c%Q#c#d)w#d~%Q^)|SoWOy%Qz#f%Q#f#g*Y#g~%Q^*_SoWOy%Qz#h%Q#h#i*k#i~%Q^*pSoWOy%Qz#T%Q#T#U*|#U~%Q^+RSoWOy%Qz#b%Q#b#c+_#c~%Q^+dSoWOy%Qz#h%Q#h#i+p#i~%Q^+wQ!VUoWOy%Qz~%Q~,QUOY+}Zr+}rs,ds#O+}#O#P,i#P~+}~,iOh~~,lPO~+}_,tWtPOy%Qz!Q%Q!Q![-^![!c%Q!c!i-^!i#T%Q#T#Z-^#Z~%Q^-cWoWOy%Qz!Q%Q!Q![-{![!c%Q!c!i-{!i#T%Q#T#Z-{#Z~%Q^.QWoWOy%Qz!Q%Q!Q![.j![!c%Q!c!i.j!i#T%Q#T#Z.j#Z~%Q^.qWfUoWOy%Qz!Q%Q!Q![/Z![!c%Q!c!i/Z!i#T%Q#T#Z/Z#Z~%Q^/bWfUoWOy%Qz!Q%Q!Q![/z![!c%Q!c!i/z!i#T%Q#T#Z/z#Z~%Q^0PWoWOy%Qz!Q%Q!Q![0i![!c%Q!c!i0i!i#T%Q#T#Z0i#Z~%Q^0pWfUoWOy%Qz!Q%Q!Q![1Y![!c%Q!c!i1Y!i#T%Q#T#Z1Y#Z~%Q^1_WoWOy%Qz!Q%Q!Q![1w![!c%Q!c!i1w!i#T%Q#T#Z1w#Z~%Q^2OQfUoWOy%Qz~%QY2XSOy%Qz!_%Q!_!`2e!`~%QY2lQzQoWOy%Qz~%QX2wQXPOy%Qz~%Q~3QUOY2}Zw2}wx,dx#O2}#O#P3d#P~2}~3gPO~2}_3oQbVOy%Qz~%Q~3zOa~_4RSUPjSOy%Qz!_%Q!_!`2e!`~%Q_4fUjS!PPOy%Qz!O%Q!O!P4x!P!Q%Q!Q![7_![~%Q^4}SoWOy%Qz!Q%Q!Q![5Z![~%Q^5bWoW#ZUOy%Qz!Q%Q!Q![5Z![!g%Q!g!h5z!h#X%Q#X#Y5z#Y~%Q^6PWoWOy%Qz{%Q{|6i|}%Q}!O6i!O!Q%Q!Q![6z![~%Q^6nSoWOy%Qz!Q%Q!Q![6z![~%Q^7RSoW#ZUOy%Qz!Q%Q!Q![6z![~%Q^7fYoW#ZUOy%Qz!O%Q!O!P5Z!P!Q%Q!Q![7_![!g%Q!g!h5z!h#X%Q#X#Y5z#Y~%Q_8ZQpVOy%Qz~%Q^8fUjSOy%Qz!O%Q!O!P4x!P!Q%Q!Q![7_![~%Q_8}S#WPOy%Qz!Q%Q!Q![5Z![~%Q~9`RjSOy%Qz{9i{~%Q~9nSoWOy9iyz9zz{:o{~9i~9}ROz9zz{:W{~9z~:ZTOz9zz{:W{!P9z!P!Q:j!Q~9z~:oOR~~:tUoWOy9iyz9zz{:o{!P9i!P!Q;W!Q~9i~;_QR~oWOy%Qz~%Q^;jY#ZUOy%Qz!O%Q!O!P5Z!P!Q%Q!Q![7_![!g%Q!g!h5z!h#X%Q#X#Y5z#Y~%QX<_S]POy%Qz![%Q![!]RUOy%Qz!c%Q!c!}>e!}#T%Q#T#o>e#o~%QX>lY!YPoWOy%Qz}%Q}!O>e!O!Q%Q!Q![>e![!c%Q!c!}>e!}#T%Q#T#o>e#o~%QX?aQxPOy%Qz~%Q^?lQvUOy%Qz~%QX?uSOy%Qz#b%Q#b#c@R#c~%QX@WSoWOy%Qz#W%Q#W#X@d#X~%QX@kQ!`PoWOy%Qz~%QX@tSOy%Qz#f%Q#f#g@d#g~%QXAVQ!RPOy%Qz~%Q_AbQ!QVOy%Qz~%QZAmS!PPOy%Qz!_%Q!_!`2e!`~%Q",tokenizers:[kc,yc,wc,0,1,2,3],topRules:{StyleSheet:[0,4]},specialized:[{term:94,get:e=>Pc[e]||-1},{term:56,get:e=>vc[e]||-1},{term:95,get:e=>Sc[e]||-1}],tokenPrec:1078});let Xc=0;class Tc{constructor(e,t,n){this.set=e,this.base=t,this.modified=n,this.id=Xc++}static define(e){if(null==e?void 0:e.base)throw new Error("Can not derive from a modified tag");let t=new Tc([],null,[]);if(t.set.push(t),e)for(let n of e.set)t.set.push(n);return t}static defineModifier(){let e=new Wc;return t=>t.modified.indexOf(e)>-1?t:Wc.get(t.base||t,t.modified.concat(e).sort(((e,t)=>e.id-t.id)))}}let Rc=0;class Wc{constructor(){this.instances=[],this.id=Rc++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find((n=>n.base==e&&function(e,t){return e.length==t.length&&e.every(((e,n)=>e==t[n]))}(t,n.modified)));if(n)return n;let r=[],i=new Tc(r,e,t);for(let e of t)e.instances.push(i);let a=qc(t);for(let t of e.set)for(let e of a)r.push(Wc.get(t,e));return i}}function qc(e){let t=[e];for(let n=0;n0&&t+3==e.length){i=1;break}let r=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(a);if(!r)throw new RangeError("Invalid path: "+e);if(n.push("*"==r[0]?null:'"'==r[0][0]?JSON.parse(r[0]):r[0]),t+=r[0].length,t==e.length)break;let o=e[t++];if(t==e.length&&"!"==o){i=0;break}if("/"!=o)throw new RangeError("Invalid path: "+e);a=e.slice(t)}let o=n.length-1,s=n[o];if(!s)throw new RangeError("Invalid path: "+e);let O=new Ic(r,i,o>0?n.slice(0,o):null);t[s]=O.sort(t[s])}}return Yc.add(t)}const Yc=new Di,Zc=U.define({combine:e=>e.length?Vc.combinedMatch(e):null}),Uc=U.define({combine:e=>e.length?e[0].match:null});function Ec(e){return e.facet(Zc)||e.facet(Uc)}class Ic{constructor(e,t,n,r){this.tags=e,this.mode=t,this.context=n,this.next=r}sort(e){return!e||e.depthe.scope))?void 0:Object.create(null);return(n,r)=>{let i=t&&t[n.id];if(void 0!==i)return i;let a=null;for(let t of e){let e=t.match(n,r);e&&(a=a?a+" "+e:e)}return t&&(t[n.id]=a),a}}static define(e,t){return new Vc(e,t||{})}static get(e,t,n){let r=Ec(e);return r&&r(t,n||Bi.none)}}class Cc{constructor(e){this.markCache=Object.create(null),this.tree=qa(e.state),this.decorations=this.buildDeco(e,Ec(e.state))}update(e){let t=qa(e.state),n=Ec(e.state),r=n!=e.startState.facet(Zc);t.length{n.add(e,t,this.markCache[r]||(this.markCache[r]=tn.mark({class:r})))}));return n.finish()}}const Ac=M.extend(Sn.fromClass(Cc,{decorations:e=>e.decorations})),Gc=[""];class jc{constructor(e,t,n){this.at=e,this.style=t,this.span=n,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,n,r,i,a){let{type:o,from:s,to:O}=e;if(s>=n||O<=t)return;Gc[i]=o.name,o.isTop&&(a=o);let l=r,c=o.prop(Yc),u=!1;for(;c;){if(!c.context||Nc(c.context,Gc,i)){for(let e of c.tags){let t=this.style(e,a);t&&(l&&(l+=" "),l+=t,1==c.mode?r+=(r?" ":"")+t:0==c.mode&&(u=!0))}break}c=c.next}if(this.startSpan(e.from,l),u)return;let h=e.tree&&e.tree.prop(Di.mounted);if(h&&h.overlay){let o=e.node.enter(h.overlay[0].from+s,1),c=e.firstChild();for(let u=0,d=s;;u++){let p=u=f)&&e.nextSibling()););if(!p||f>n)break;d=p.to+s,d>t&&(this.highlightRange(o.cursor,Math.max(t,p.from+s),Math.min(n,d),r,i,h.tree.type),this.startSpan(d,l))}c&&e.parent()}else if(e.firstChild()){do{if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,r,i+1,a),this.startSpan(Math.min(n,e.to),l)}}while(e.nextSibling());e.parent()}}}function Lc(e,t,n,r,i){let a=new jc(t,r,i);a.highlightRange(e.cursor(),t,n,"",0,e.type),a.flush(n)}function Nc(e,t,n){if(e.length>n-1)return!1;for(let r=n-1,i=e.length-1;i>=0;i--,r--){let n=e[i];if(n&&n!=t[r])return!1}return!0}const Dc=Tc.define,Mc=Dc(),Fc=Dc(),Bc=Dc(Fc),Hc=Dc(Fc),Kc=Dc(),Jc=Dc(Kc),eu=Dc(Kc),tu=Dc(),nu=Dc(tu),ru=Dc(),iu=Dc(),au=Dc(),ou=Dc(au),su=Dc(),Ou={comment:Mc,lineComment:Dc(Mc),blockComment:Dc(Mc),docComment:Dc(Mc),name:Fc,variableName:Dc(Fc),typeName:Bc,tagName:Dc(Bc),propertyName:Hc,attributeName:Dc(Hc),className:Dc(Fc),labelName:Dc(Fc),namespace:Dc(Fc),macroName:Dc(Fc),literal:Kc,string:Jc,docString:Dc(Jc),character:Dc(Jc),attributeValue:Dc(Jc),number:eu,integer:Dc(eu),float:Dc(eu),bool:Dc(Kc),regexp:Dc(Kc),escape:Dc(Kc),color:Dc(Kc),url:Dc(Kc),keyword:ru,self:Dc(ru),null:Dc(ru),atom:Dc(ru),unit:Dc(ru),modifier:Dc(ru),operatorKeyword:Dc(ru),controlKeyword:Dc(ru),definitionKeyword:Dc(ru),operator:iu,derefOperator:Dc(iu),arithmeticOperator:Dc(iu),logicOperator:Dc(iu),bitwiseOperator:Dc(iu),compareOperator:Dc(iu),updateOperator:Dc(iu),definitionOperator:Dc(iu),typeOperator:Dc(iu),controlOperator:Dc(iu),punctuation:au,separator:Dc(au),bracket:ou,angleBracket:Dc(ou),squareBracket:Dc(ou),paren:Dc(ou),brace:Dc(ou),content:tu,heading:nu,heading1:Dc(nu),heading2:Dc(nu),heading3:Dc(nu),heading4:Dc(nu),heading5:Dc(nu),heading6:Dc(nu),contentSeparator:Dc(tu),list:Dc(tu),quote:Dc(tu),emphasis:Dc(tu),strong:Dc(tu),link:Dc(tu),monospace:Dc(tu),strikethrough:Dc(tu),inserted:Dc(),deleted:Dc(),changed:Dc(),invalid:Dc(),meta:su,documentMeta:Dc(su),annotation:Dc(su),processingInstruction:Dc(su),definition:Tc.defineModifier(),constant:Tc.defineModifier(),function:Tc.defineModifier(),standard:Tc.defineModifier(),local:Tc.defineModifier(),special:Tc.defineModifier()},lu=Vc.define([{tag:Ou.link,class:"cmt-link"},{tag:Ou.heading,class:"cmt-heading"},{tag:Ou.emphasis,class:"cmt-emphasis"},{tag:Ou.strong,class:"cmt-strong"},{tag:Ou.keyword,class:"cmt-keyword"},{tag:Ou.atom,class:"cmt-atom"},{tag:Ou.bool,class:"cmt-bool"},{tag:Ou.url,class:"cmt-url"},{tag:Ou.labelName,class:"cmt-labelName"},{tag:Ou.inserted,class:"cmt-inserted"},{tag:Ou.deleted,class:"cmt-deleted"},{tag:Ou.literal,class:"cmt-literal"},{tag:Ou.string,class:"cmt-string"},{tag:Ou.number,class:"cmt-number"},{tag:[Ou.regexp,Ou.escape,Ou.special(Ou.string)],class:"cmt-string2"},{tag:Ou.variableName,class:"cmt-variableName"},{tag:Ou.local(Ou.variableName),class:"cmt-variableName cmt-local"},{tag:Ou.definition(Ou.variableName),class:"cmt-variableName cmt-definition"},{tag:Ou.special(Ou.variableName),class:"cmt-variableName2"},{tag:Ou.typeName,class:"cmt-typeName"},{tag:Ou.namespace,class:"cmt-namespace"},{tag:Ou.macroName,class:"cmt-macroName"},{tag:Ou.propertyName,class:"cmt-propertyName"},{tag:Ou.operator,class:"cmt-operator"},{tag:Ou.comment,class:"cmt-comment"},{tag:Ou.meta,class:"cmt-meta"},{tag:Ou.invalid,class:"cmt-invalid"},{tag:Ou.punctuation,class:"cmt-punctuation"}]);let cu=null;function uu(){if(!cu&&"object"==typeof document&&document.body){let e=[];for(let t in document.body.style)/[A-Z]|^-|^(item|length)$/.test(t)||e.push(t);cu=e.sort().map((e=>({type:"property",label:e})))}return cu||[]}const hu=["active","after","before","checked","default","disabled","empty","enabled","first-child","first-letter","first-line","first-of-type","focus","hover","in-range","indeterminate","invalid","lang","last-child","last-of-type","link","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-of-type","only-child","optional","out-of-range","placeholder","read-only","read-write","required","root","selection","target","valid","visited"].map((e=>({type:"class",label:e}))),du=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map((e=>({type:"keyword",label:e}))).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map((e=>({type:"constant",label:e})))),pu=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map((e=>({type:"type",label:e}))),fu=/^[\w-]*/,mu=e=>{let{state:t,pos:n}=e,r=qa(t).resolveInner(n,-1);if("PropertyName"==r.name)return{from:r.from,options:uu(),span:fu};if("ValueName"==r.name)return{from:r.from,options:du,span:fu};if("PseudoClassName"==r.name)return{from:r.from,options:hu,span:fu};if("TagName"==r.name){for(let{parent:e}=r;e;e=e.parent)if("Block"==e.name)return{from:r.from,options:uu(),span:fu};return{from:r.from,options:pu,span:fu}}if(!e.explicit)return null;let i=r.resolve(n),a=i.childBefore(n);return a&&":"==a.name&&"PseudoClassSelector"==i.name?{from:n,options:hu,span:fu}:a&&":"==a.name&&"Declaration"==i.name||"ArgList"==i.name?{from:n,options:du,span:fu}:"Block"==i.name?{from:n,options:uu(),span:fu}:null},gu=Wa.define({parser:_c.configure({props:[Ha.add({Declaration:oo()}),so.add({Block:Oo}),zc({"import charset namespace keyframes":Ou.definitionKeyword,"media supports":Ou.controlKeyword,"from to selector":Ou.keyword,NamespaceName:Ou.namespace,KeyframeName:Ou.labelName,TagName:Ou.tagName,ClassName:Ou.className,PseudoClassName:Ou.constant(Ou.className),IdName:Ou.labelName,"FeatureName PropertyName":Ou.propertyName,AttributeName:Ou.attributeName,NumberLiteral:Ou.number,KeywordQuery:Ou.keyword,UnaryQueryOp:Ou.operatorKeyword,"CallTag ValueName":Ou.atom,VariableName:Ou.variableName,Callee:Ou.operatorKeyword,Unit:Ou.unit,"UniversalSelector NestingSelector":Ou.definitionOperator,AtKeyword:Ou.keyword,MatchOp:Ou.compareOperator,"ChildOp SiblingOp, LogicOp":Ou.logicOperator,BinOp:Ou.arithmeticOperator,Important:Ou.modifier,Comment:Ou.blockComment,ParenthesizedContent:Ou.special(Ou.name),ColorLiteral:Ou.color,StringLiteral:Ou.string,":":Ou.punctuation,"PseudoOp #":Ou.derefOperator,"; ,":Ou.separator,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}}),Qu=gu.data.of({autocomplete:mu});function $u(){return new Ga(gu,Qu)}var bu=Object.freeze({__proto__:null,css:$u,cssCompletion:Qu,cssCompletionSource:mu,cssLanguage:gu});const xu=272,wu=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],ku=new jl({start:!1,shift:(e,t)=>4==t||5==t||277==t?e:278==t,strict:!1}),yu=new Rl(((e,t)=>{let{next:n}=e;(125==n||-1==n||t.context)&&t.canShift(275)&&e.acceptToken(275)}),{contextual:!0,fallback:!0}),Pu=new Rl(((e,t)=>{let n,{next:r}=e;wu.indexOf(r)>-1||(47!=r||47!=(n=e.peek(1))&&42!=n)&&125!=r&&59!=r&&-1!=r&&!t.context&&t.canShift(271)&&e.acceptToken(271)}),{contextual:!0}),vu=new Rl(((e,t)=>{let{next:n}=e;if((43==n||45==n)&&(e.advance(),n==e.next)){e.advance();let n=!t.context&&t.canShift(1);e.acceptToken(n?1:2)}}),{contextual:!0}),Su=new Rl((e=>{for(let t=!1,n=0;;n++){let{next:r}=e;if(r<0){n&&e.acceptToken(xu);break}if(96==r){n?e.acceptToken(xu):e.acceptToken(274,1);break}if(123==r&&t){1==n?e.acceptToken(273,1):e.acceptToken(xu,-1);break}if(10==r&&n){e.advance(),e.acceptToken(xu);break}92==r&&e.advance(),t=36==r,e.advance()}}));const _u={__proto__:null,export:16,as:21,from:25,default:30,async:35,function:36,this:46,true:54,false:54,void:60,typeof:64,null:78,super:80,new:114,await:131,yield:133,delete:134,class:144,extends:146,public:183,private:183,protected:183,readonly:185,in:204,instanceof:206,const:208,import:240,keyof:291,unique:295,infer:301,is:335,abstract:355,implements:357,type:359,let:362,var:364,interface:371,enum:375,namespace:381,module:383,declare:387,global:391,for:412,of:421,while:424,with:428,do:432,if:436,else:438,switch:442,case:448,try:454,catch:456,finally:458,return:462,throw:466,break:470,continue:474,debugger:478},Xu={__proto__:null,async:101,get:103,set:105,public:153,private:153,protected:153,static:155,abstract:157,readonly:161,new:339},Tu={__proto__:null,"<":121},Ru=Ll.deserialize({version:13,states:"$-tO`QYOOO&}Q!LdO'#CgO'UOSO'#DSO)^QYO'#DXO)nQYO'#DdO)uQYO'#DnO-lQYO'#DtOOQO'#EU'#EUO.PQWO'#ETO.UQWO'#ETO0TQ!LdO'#ImO2kQ!LdO'#InO3XQWO'#ErO3^QpO'#FXOOQ!LS'#Ez'#EzO3fO!bO'#EzO3tQWO'#F`O5RQWO'#F_OOQ!LS'#In'#InOOQ!LQ'#Im'#ImOOQQ'#JV'#JVO5WQWO'#HfO5]Q!LYO'#HgOOQQ'#I_'#I_OOQQ'#Hh'#HhQ`QYOOO)uQYO'#DfO5eQWO'#GSO5jQ#tO'#ClO5xQWO'#ESO6TQ#tO'#EyO6oQWO'#GSO6tQWO'#GWO7PQWO'#GWO7_QWO'#GZO7_QWO'#G[O7_QWO'#G^O5eQWO'#GaO8OQWO'#GdO9^QWO'#CcO9nQWO'#GqO9vQWO'#GwO9vQWO'#GyO`QYO'#G{O9vQWO'#G}O9vQWO'#HQO9{QWO'#HWO:QQ!LZO'#H[O)uQYO'#H^O:]Q!LZO'#H`O:hQ!LZO'#HbO5]Q!LYO'#HdO)uQYO'#IoOOOS'#Hj'#HjO:sOSO,59nOOQ!LS,59n,59nO=UQbO'#CgO=`QYO'#HkO=mQWO'#IpO?lQbO'#IpO'aQYO'#IpO?sQWO,59sO@ZQ&jO'#D^OASQWO'#EUOAaQWO'#IzOAlQWO'#IyOAtQWO,5:rOAyQWO'#IxOBQQWO'#DuO5jQ#tO'#ESOB`QWO'#ESOBkQ`O'#EyOOQ!LS,5:O,5:OOBsQYO,5:OODqQ!LdO,5:YOE_QWO,5:`OExQ!LYO'#IwO6tQWO'#IvOFPQWO'#IvOFXQWO,5:qOF^QWO'#IvOFlQYO,5:oOHiQWO'#EQOIsQWO,5:oOKSQWO'#DhOKZQYO'#DmOKeQ&jO,5:xO)uQYO,5:xOOQQ'#Ej'#EjOOQQ'#El'#ElO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yOOQQ'#Ep'#EpOKjQYO,5;ZOOQ!LS,5;`,5;`OOQ!LS,5;a,5;aOMgQWO,5;aOOQ!LS,5;b,5;bO)uQYO'#HuOMlQ!LYO,5;{ONWQWO,5:yO)uQYO,5;^ONpQpO'#JOON_QpO'#JOONwQpO'#JOO! YQpO,5;iOOQO,5;s,5;sO! hQYO'#FZOOOO'#Ht'#HtO3fO!bO,5;fO! oQpO'#F]OOQ!LS,5;f,5;fO!!]Q,UO'#CqOOQ!LS'#Ct'#CtO!!pQWO'#CtO!!uOSO'#CxO!#cQ#tO,5;xO!#jQWO,5;zO!$vQWO'#FjO!%TQWO'#FkO!%YQWO'#FoO!&[Q&jO'#FsO!&}Q,UO'#IhOOQ!LS'#Ih'#IhO!'XQWO'#IgO!'gQWO'#IfOOQ!LS'#Cr'#CrOOQ!LS'#Cy'#CyO!'oQWO'#C{OIxQWO'#FbOIxQWO'#FdO!'tQWO'#FfO!'yQWO'#FgO!(OQWO'#FmOIxQWO'#FrO!(TQWO'#EVO!(lQWO,5;yO`QYO,5>QOOQQ'#Ib'#IbOOQQ,5>R,5>ROOQQ-E;f-E;fO!*hQ!LdO,5:QOOQ!LQ'#Co'#CoO!+XQ#tO,5O,5>OO!7UQ`O,5?ZOOOS-E;h-E;hOOQ!LS1G/Y1G/YO!7ZQbO,5>VO)uQYO,5>VOOQO-E;i-E;iO!7eQWO,5?[O!7mQbO,5?[O!7tQWO,5?eOOQ!LS1G/_1G/_O!7|QpO'#DQOOQO'#Ir'#IrO)uQYO'#IrO!8kQpO'#IrO!9YQpO'#D_O!9kQ&jO'#D_O!;sQYO'#D_O!;zQWO'#IqO!gQ&jO'#DxOOQ!LS,5:a,5:aO)uQYO,5:aOHiQWO,5:aO!>nQWO,5:aO9{QWO,5:nO!,QQpO,5:nO!,YQ#tO,5:nO5jQ#tO,5:nOOQ!LS1G/j1G/jOOQ!LS1G/z1G/zOOQ!LQ'#EP'#EPO)uQYO,5?cO!>yQ!LYO,5?cO!?[Q!LYO,5?cO!?cQWO,5?bO!?kQWO'#HrO!?cQWO,5?bOOQ!LQ1G0]1G0]O6tQWO,5?bOOQ!LS1G0Z1G0ZO!@VQ!LdO1G0ZO!@vQ!LbO,5:lOOQ!LS'#Fi'#FiO!AdQ!LdO'#IhOFlQYO1G0ZO!CcQ#tO'#IsO!CmQWO,5:SO!CrQbO'#ItO)uQYO'#ItO!C|QWO,5:XOOQ!LS'#DQ'#DQOOQ!LS1G0d1G0dO!DRQWO1G0dO!FdQ!LdO1G0eO!FkQ!LdO1G0eO!IOQ!LdO1G0eO!IVQ!LdO1G0eO!K^Q!LdO1G0eO!KqQ!LdO1G0eO!NbQ!LdO1G0eO!NiQ!LdO1G0eO#!|Q!LdO1G0eO##TQ!LdO1G0eO#$xQ!LdO1G0eO#'rQ7^O'#CgO#)mQ7^O1G0uO#+hQ7^O'#InOOQ!LS1G0{1G0{O#+{Q!LdO,5>aOOQ!LQ-E;s-E;sO#,lQ!LdO1G0eOOQ!LS1G0e1G0eO#.nQ!LdO1G0xO#/_QpO,5;kO#/dQpO,5;lO#/iQpO'#FSO#/}QWO'#FROOQO'#JP'#JPOOQO'#Hs'#HsO#0SQpO1G1TOOQ!LS1G1T1G1TOOQO1G1^1G1^O#0bQ7^O'#ImO#0lQWO,5;uOKjQYO,5;uOOOO-E;r-E;rOOQ!LS1G1Q1G1QOOQ!LS,5;w,5;wO#0qQpO,5;wOOQ!LS,59`,59`OHiQWO'#IjOOOS'#Hi'#HiO#0vOSO,59dOOQ!LS,59d,59dO)uQYO1G1dOKeQ&jO'#HwO#1RQWO,5<]OOQ!LS,5},5>}O#9fQ!LYO,5>}OOQQ1G.r1G.rO9{QWO1G.rO!,QQpO1G.rO!,YQ#tO1G.rO#9tQWO1G0ZO#9yQWO'#CgO#:UQWO'#J[O#:^QWO,5=[O#:cQWO'#J[O#:hQWO'#ISO#:vQWO,5?uO#;OQbO1G0}OOQ!LS1G1P1G1PO5eQWO1G2uO#;VQWO1G2uO#;[QWO1G2uO#;aQWO1G2uOOQQ1G2u1G2uO#;fQ#tO1G2YO6tQWO'#IyO6tQWO'#EYO6tQWO'#H|O#;wQ!LYO,5?rOOQQ1G2^1G2^O!.yQWO1G2dOHiQWO1G2aO#RQYO,5=_O#>YQWO,5=_O6tQWO,5?wOOQQ1G2w1G2wO`QYO1G2wOOQQ1G2}1G2}OOQQ1G3P1G3PO9vQWO1G3RO#>_QYO1G3TO#BVQYO'#HSOOQQ1G3W1G3WO9{QWO1G3^O#BdQWO1G3^O5]Q!LYO1G3bOOQQ1G3d1G3dOOQ!LQ'#Fp'#FpO5]Q!LYO1G3fO5]Q!LYO1G3hOOOS1G4u1G4uO#BlQ`O,5;{O#BtQbO1G3qO#COQWO1G4vO#CWQWO1G5PO#C`QWO,5?^OKjQYO,5:tO6tQWO,5:tO9{QWO,59yOKjQYO,59yO!,QQpO,59yO#CeQ7^O,59yOOQO,5:t,5:tO#CoQ&jO'#HlO#DVQWO,5?]OOQ!LS1G/d1G/dO#D_Q&jO'#HqO#DsQWO,5?gOOQ!LQ1G0_1G0_O!9kQ&jO,59yO#D{QbO1G5QOOQO,5>[,5>[O6tQWO,5>[OOQO-E;n-E;nO#EVQ!LrO'#D}O!&VQ&jO'#DyOOQO'#Ho'#HoO#EqQ&jO,5:dOOQ!LS,5:d,5:dO#ExQ&jO'#DyO#FWQ&jO'#D}O#FlQ&jO'#D}O!&VQ&jO'#D}O#FvQWO1G/{O#F{Q`O1G/{OOQ!LS1G/{1G/{O)uQYO1G/{OHiQWO1G/{OOQ!LS1G0Y1G0YO9{QWO1G0YO!,QQpO1G0YO!,YQ#tO1G0YO#GSQ!LdO1G4}O)uQYO1G4}O#GdQ!LYO1G4}O#GuQWO1G4|O6tQWO,5>^OOQO,5>^,5>^O#G}QWO,5>^OOQO-E;p-E;pO#GuQWO1G4|O#H]Q!LdO,59gO#J[Q!LdO,5;|O#L^Q!LdO,5c,5>cO$%{QWO,5>cOOQ!LS1G1w1G1wP$&QQWO'#HwPOQ!LS-E;u-E;uO$&qQ#tO1G2SO$'dQ#tO1G2UO$'nQ#tO1G2WOOQ!LS1G1p1G1pO$'uQWO'#HvO$(TQWO,5?nO$(TQWO,5?nO$(]QWO,5?nO$(hQWO,5?nOOQO1G1r1G1rO$(vQ#tO1G1qO$)WQWO'#HxO$)hQWO,5?oOHiQWO,5?oO$)pQ`O,5?oOOQ!LS1G1u1G1uO5]Q!LYO,5<`O5]Q!LYO,5f,5>fOOQO-E;x-E;xOKeQ&jO,59iO)uQYO,59iO$*{QWO1G1lOIxQWO1G1sO$+QQ!LdO7+'POOQ!LS7+'P7+'POFlQYO7+'POOQ!LS7+%W7+%WO$+qQ`O'#JUO#FvQWO7+'tO$+{QWO7+'tO$,TQ`O7+'tOOQQ7+'t7+'tOHiQWO7+'tO)uQYO7+'tOHiQWO7+'tOOQO1G.v1G.vO$,_Q!LbO'#CgO$,oQ!LbO,5n,5>nOOQO-Eh,5>hOOQ!LQ-E;z-E;zOOQQ7+(O7+(OO$.`Q!LbO7+'{OHiQWO7+'{O$.jQ`O7+'|OOQQ7+'|7+'|OHiQWO7+'|O$.qQWO'#JXO$.|QWO,5j,5>jOOQO-E;|-E;|OOQQ7+(R7+(RO$/sQ&jO'#GiOOQQ1G2n1G2nOHiQWO1G2nO)uQYO1G2nOHiQWO1G2nO$/zQWO1G2nO$0YQ#tO1G2nO5]Q!LYO1G2qO#3lQWO1G2qO5RQWO1G2qO!,QQpO1G2qO!,YQ#tO1G2qO$0kQWO'#IQO$0vQWO,5?tO$1OQ&jO,5?tOOQ!LQ1G2r1G2rOOQQ7+$T7+$TO$1TQWO7+$TO5]Q!LYO7+$TO$1YQWO7+$TO)uQYO1G5cO)uQYO1G5dO$1_QYO1G2yO$1fQWO1G2yO$1kQYO1G2yO$1rQ!LYO1G5cOOQQ7+(c7+(cO5]Q!LYO7+(mO`QYO7+(oOOQQ'#J_'#J_OOQQ'#IT'#ITO$1|QYO,5=nOOQQ,5=n,5=nO)uQYO'#HTO$2ZQWO'#HVOOQQ7+(x7+(xO$2`QYO7+(xO6tQWO7+(xOOQQ7+(|7+(|OOQQ7+)Q7+)QOOQQ7+)S7+)SOOQO1G4x1G4xO$6ZQ7^O1G0`O$6eQWO1G0`OOQO1G/e1G/eO$6pQ7^O1G/eO9{QWO1G/eOKjQYO'#D_OOQO,5>W,5>WOOQO-E;j-E;jOOQO,5>],5>]OOQO-E;o-E;oO!,QQpO1G/eOOQO1G3v1G3vO9{QWO,5:eOOQO,5:i,5:iO)uQYO,5:iO$6zQ!LYO,5:iO$7VQ!LYO,5:iO!,QQpO,5:eOOQO-E;m-E;mOOQ!LS1G0O1G0OO!&VQ&jO,5:eO$7eQ!LrO,5:iO$8PQ&jO,5:eO!&VQ&jO,5:iO$8_Q&jO,5:iO$8sQ!LYO,5:iOOQ!LS7+%g7+%gO#FvQWO7+%gO#F{Q`O7+%gOOQ!LS7+%t7+%tO9{QWO7+%tO!,QQpO7+%tO$9XQ!LdO7+*iO)uQYO7+*iOOQO1G3x1G3xO6tQWO1G3xO$9iQWO7+*hO$9qQ!LdO1G2SO$;sQ!LdO1G2UO$=uQ!LdO1G1qO$?}Q#tO,5>XOOQO-E;k-E;kO$@XQbO,5>YO)uQYO,5>YOOQO-E;l-E;lO$@cQWO1G4zO$@kQ7^O1G0ZO$BrQ7^O1G0eO$ByQ7^O1G0eO$DzQ7^O1G0eO$ERQ7^O1G0eO$FvQ7^O1G0eO$GZQ7^O1G0eO$IhQ7^O1G0eO$IoQ7^O1G0eO$KpQ7^O1G0eO$KwQ7^O1G0eO$MlQ7^O1G0eO$NPQ!LdO<aOOOO7+&{7+&{OOOS1G4p1G4pOOQ!LS1G3}1G3}OIxQWO7+'rO%$yQWO,5>bO5eQWO,5>bOOQO-E;t-E;tO%%XQWO1G5YO%%XQWO1G5YO%%aQWO1G5YO%%lQ`O,5>dO%%vQWO,5>dOHiQWO,5>dOOQO-E;v-E;vO%%{Q`O1G5ZO%&VQWO1G5ZOOQO1G1z1G1zOOQO1G1{1G1{O5]Q!LYO1G1{O$)zQWO1G1{O5]Q!LYO1G1zO%&_QWO1G1|OHiQWO1G1|OOQO1G1}1G1}O5]Q!LYO1G2QO!,QQpO1G1zO#3gQWO1G1{O%&dQWO1G1|O%&lQWO1G1{OIxQWO7+*XOOQ!LS1G/T1G/TO%&wQWO1G/TOOQ!LS7+'W7+'WO%&|Q#tO7+'_O%'^Q!LdO<m,5>mO%)YQWO,5>mOOQO-ElOOQO-EgOOQO-E;y-E;yO#FvQWOAN@zOOQQAN@zAN@zOHiQWOAN@zO%iOOQO-E;{-E;{O%=uQ7^O1G5_O#3lQWO,5=UO5RQWO,5=UO!,QQpO,5=UOOQO-E;}-E;}OOQQ1G2o1G2oO$7eQ!LrO,5:iO!&VQ&jO,5=UO%>PQ&jO,5=UO%>_Q&jO,5:iOOQQ<sQWO<{Q`O<zAN>zO%ATQ!LdO<uAN>uO%-kQ!LdOAN>uOOQOAN>qAN>qO)uQYOAN>uO9{QWOAN>qO&#qQ!LYOAN>uO&#|Q7^O<yO}&mO!_'ja~Ou$qO|+tO!P$rO!}+vO#O+tO'S$]O}&fX!_&fX~O^!wi}!wi&}!wiz!wi!_!wi'_!wi!P!wi$x!wi!X!wi~P!(tO#P!ta}!ta!_!ta!u!ta!P!ta^!ta&}!taz!ta~P!#QO#P'[XP'[XY'[X^'[Xi'[Xs'[X!]'[X!`'[X!f'[X#S'[X#T'[X#U'[X#V'[X#W'[X#X'[X#Y'[X#Z'[X#]'[X#_'[X#a'[X#b'[X&}'[X']'[X!_'[Xz'[X!P'[X'_'[X$x'[X!X'[X~P!&cO},PO'W'gX~P!#QO'W,RO~O},SO!_'hX~P!(tO!_,VO~Oz,WO~OP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO']QOY#Ri^#Rii#Ri}#Ri!]#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'p#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~O#S#Ri~P!DWO#S!|O~P!DWOP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O']QOY#Ri^#Ri}#Ri!]#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'p#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~Oi#Ri~P!FrOi#OO~P!FrOP#ZOi#OOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO']QO^#Ri}#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'p#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~OY#Ri!]#Ri#X#Ri#Y#Ri#Z#Ri~P!I^OY#aO!]#QO#X#QO#Y#QO#Z#QO~P!I^OP#ZOY#aOi#OOr!xOs!xOu!yO!]#QO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO#X#QO#Y#QO#Z#QO#]#RO']QO^#Ri}#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~O'p#Ri~P!LUO'p!zO~P!LUOP#ZOY#aOi#OOr!xOs!xOu!yO!]#QO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO#X#QO#Y#QO#Z#QO#]#RO#_#TO']QO'p!zO^#Ri}#Ri#a#Ri#b#Ri&}#Ri'i#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~O'q#Ri~P!NpO'q!{O~P!NpOP#ZOY#aOi#OOr!xOs!xOu!yO!]#QO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO#X#QO#Y#QO#Z#QO#]#RO#_#TO#a#VO']QO'p!zO'q!{O~O^#Ri}#Ri#b#Ri&}#Ri'i#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~P##[OPZXYZXiZXrZXsZXuZX!]ZX!^ZX!`ZX!fZX!uZX#PcX#SZX#TZX#UZX#VZX#WZX#XZX#YZX#ZZX#]ZX#_ZX#aZX#bZX#gZX']ZX'iZX'pZX'qZX}ZX!OZX~O#eZX~P#%oOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO#_8vO#a8xO#b8yO']QO'i#XO'p!zO'q!{O~O#e,YO~P#'yOP'bXY'bXi'bXr'bXs'bXu'bX!]'bX!^'bX!`'bX!f'bX#S'bX#T'bX#U'bX#V'bX#W'bX#X'bX#Z'bX#]'bX#_'bX#a'bX#b'bX']'bX'i'bX'p'bX'q'bX}'bX~O!u8}O#g8}O#Y'bX#e'bX!O'bX~P#)tO^&ia}&ia&}&ia!_&ia'_&iaz&ia!P&ia$x&ia!X&ia~P!(tOP#RiY#Ri^#Rii#Ris#Ri}#Ri!]#Ri!^#Ri!`#Ri!f#Ri#S#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri']#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~P!#QO^#fi}#fi&}#fiz#fi!_#fi'_#fi!P#fi$x#fi!X#fi~P!(tO#r,[O~O#r,]O~O!X'eO!u,^O!P#vX#o#vX#r#vX#y#vX~O|,_O~O!P'hO#o,aO#r'gO#y,bO~O}8zO!O'aX~P#'yO!O,cO~O#y,eO~O&z'wO&{'vO&|,hO~O],kOj,kOz,lO~O}cX!XcX!_cX!_$]X'icX~P! wO!_,rO~P!#QO},sO!X!tO'i&hO!_'vX~O!_,xO~Oz$]X}$]X!X$dX~P! wO},zOz'wX~P!#QO!X,|O~Oz-OO~O|(XO'S$]O!_'vP~Oi-SO!X!tO!`$UO'X$`O'i&hO~O!X)XO~O!O-YO~P!%gO!T-ZO!U-ZO'T$_O'`(aO~Ou-]O'`(aO~O!r-^O~O'S$wO}&nX'W&nX~O}(qO'W'Ya~Or-cOs-cOu-dO'ioa'poa'qoa}oa!uoa~O'Woa#eoa~P#4xOr'{Ou'|O'i$Ua'p$Ua'q$Ua}$Ua!u$Ua~O'W$Ua#e$Ua~P#5nOr'{Ou'|O'i$Wa'p$Wa'q$Wa}$Wa!u$Wa~O'W$Wa#e$Wa~P#6aO]-eO~O#P-fO~O'W$fa}$fa#e$fa!u$fa~P!#QO#P-iO~OR-rO!P&]O!k-qO$x-pO~O'W-sO~O]#nOi#oOj#nOk#nOn#|Op9OOu#uO!P#vO!Z:QO!`#sO#O9UO#l$QO$V9QO$X9SO$[$RO']#pO~Og-uO'S-tO~P#8WO!X)XO!P'Va^'Va&}'Va~O#P-{O~OYZX}cX!OcX~O}-|O!O(OX~O!O.OO~OY.PO~O!P$hO'S$]O[&vX}&vX~O})eO['}a~O!_.SO~P!(tO].UO~OY.VO~O[.WO~OR-rO!P&]O!k-qO$x-pO'X$`O~O})qO^'za&}'za~O!u.^O~OR.aO!P#vO~O'`&|O!O'{P~OR.kO!P.gO!k.jO$x.iO'X$`O~OY.uO}.sO!O'|X~O!O.vO~O[.xO^$XO&}$XO~O].yO~O#Y.{O%j.|O~P0nO!u#bO#Y.{O%j.|O~O^.}O~P)uO^/PO~O%s/TOP%qiQ%qiW%qi]%qi^%qia%qib%qig%qii%qij%qik%qin%qip%qiu%qiw%qix%qiy%qi!P%qi!Z%qi!`%qi!c%qi!d%qi!e%qi!f%qi!g%qi!j%qi#[%qi#l%qi#p%qi$w%qi$y%qi${%qi$|%qi%P%qi%R%qi%U%qi%V%qi%X%qi%f%qi%l%qi%n%qi%p%qi%r%qi%u%qi%{%qi&P%qi&R%qi&T%qi&V%qi&X%qi&x%qi'S%qi']%qi'u%qi!O%qi_%qi%x%qi~O_/ZO!O/XO%x/YO~P`O!PSO!`/^O~O}#_O'_$Ta~Oz&_i}&_i~P!(tO}!ZOz'di~O}&YOz'mi~Oz/bO~O}!Ra!O!Ra~P#'yO]%{Oj%{O|/hO'`(aO}&`X!O&`X~P?xO}+RO!O'ea~O]&TOj&TO|)pO'`&|O}&eX!O&eX~O}+UO!O'oa~Oz'ni}'ni~P!(tO^$XO!X!tO!`$UO!f/sO!u/qO&}$XO'X$`O'i&hO~O!O/vO~P!=uO!T/wO!U/wO'T$_O'`(aO~O!S/yO!T/wO!U/wO!r/zO'T$_O'`(aO~O!o/{O!p/{O~P#FWO!P&]O~O!P&]O~P!#QO}'ki!_'ki^'ki&}'ki~P!(tO!u0UO}'ki!_'ki^'ki&}'ki~O}&mO!_'ji~Ou$qO!P$rO#O0WO'S$]O~O#PoaPoaYoa^oaioa!]oa!^oa!`oa!foa#Soa#Toa#Uoa#Voa#Woa#Xoa#Yoa#Zoa#]oa#_oa#aoa#boa&}oa']oa!_oazoa!Poa'_oa$xoa!Xoa~P#4xO#P$UaP$UaY$Ua^$Uai$Uas$Ua!]$Ua!^$Ua!`$Ua!f$Ua#S$Ua#T$Ua#U$Ua#V$Ua#W$Ua#X$Ua#Y$Ua#Z$Ua#]$Ua#_$Ua#a$Ua#b$Ua&}$Ua']$Ua!_$Uaz$Ua!P$Ua'_$Ua$x$Ua!X$Ua~P#5nO#P$WaP$WaY$Wa^$Wai$Was$Wa!]$Wa!^$Wa!`$Wa!f$Wa#S$Wa#T$Wa#U$Wa#V$Wa#W$Wa#X$Wa#Y$Wa#Z$Wa#]$Wa#_$Wa#a$Wa#b$Wa&}$Wa']$Wa!_$Waz$Wa!P$Wa'_$Wa$x$Wa!X$Wa~P#6aO#P$faP$faY$fa^$fai$fas$fa}$fa!]$fa!^$fa!`$fa!f$fa#S$fa#T$fa#U$fa#V$fa#W$fa#X$fa#Y$fa#Z$fa#]$fa#_$fa#a$fa#b$fa&}$fa']$fa!_$faz$fa!P$fa!u$fa'_$fa$x$fa!X$fa~P!#QO^!wq}!wq&}!wqz!wq!_!wq'_!wq!P!wq$x!wq!X!wq~P!(tO}&aX'W&aX~PIxO},PO'W'ga~O|0`O}&bX!_&bX~P)uO},SO!_'ha~O},SO!_'ha~P!(tO#e!ba!O!ba~PBzO#e!Ya}!Ya!O!Ya~P#'yO!P0sO#p]O#w0tO~O!O0xO~O'_0yO~P!#QO^$Qq}$Qq&}$Qqz$Qq!_$Qq'_$Qq!P$Qq$x$Qq!X$Qq~P!(tOz0zO~O],kOj,kO~Or'{Ou'|O'q(QO'i$pi'p$pi}$pi!u$pi~O'W$pi#e$pi~P$&YOr'{Ou'|O'i$ri'p$ri'q$ri}$ri!u$ri~O'W$ri#e$ri~P$&{O#e0{O~P!#QO|0}O'S$]O}&jX!_&jX~O},sO!_'va~O},sO!X!tO!_'va~O},sO!X!tO'i&hO!_'va~O'W$_i}$_i#e$_i!u$_i~P!#QO|1UO'S([Oz&lX}&lX~P!#oO},zOz'wa~O},zOz'wa~P!#QO!X!tO~O!X!tO#Y1`O~Oi1dO!X!tO'i&hO~O}'Zi'W'Zi~P!#QO!u1gO}'Zi'W'Zi~P!#QO!_1jO~O^$Rq}$Rq&}$Rqz$Rq!_$Rq'_$Rq!P$Rq$x$Rq!X$Rq~P!(tO}1nO!P'xX~P!#QO!P&]O$x1qO~O!P&]O$x1qO~P!#QO!P$]X$mZX^$]X&}$]X~P! wO$m1uOrfXufX!PfX'ifX'pfX'qfX^fX&}fX~O$m1uO~O'S)aO}&uX!O&uX~O}-|O!O(Oa~O[2OO~O]2RO~OR2TO!P&]O!k2SO$x1qO~O^$XO&}$XO~P!#QO!P#vO~P!#QO}2YO!u2[O!O'{X~O!O2]O~Ou(eO!S2fO!T2_O!U2_O!n2eO!o2dO!p2dO!r2cO'T$_O'`(aO~O!O2bO~P$/ROR2mO!P.gO!k2lO$x2kO~OR2mO!P.gO!k2lO$x2kO'X$`O~O'S(sO}&tX!O&tX~O}.sO!O'|a~O'`2vO~O]2xO~O[2zO~O!_2}O~P)uO^3PO~O^3PO~P)uO#Y3RO%j3SO~PEdO_/ZO!O3WO%x/YO~P`O!X3YO~O%}3ZOP%zqQ%zqW%zq]%zq^%zqa%zqb%zqg%zqi%zqj%zqk%zqn%zqp%zqu%zqw%zqx%zqy%zq!P%zq!Z%zq!`%zq!c%zq!d%zq!e%zq!f%zq!g%zq!j%zq#[%zq#l%zq#p%zq$w%zq$y%zq${%zq$|%zq%P%zq%R%zq%U%zq%V%zq%X%zq%f%zq%l%zq%n%zq%p%zq%r%zq%u%zq%{%zq&P%zq&R%zq&T%zq&V%zq&X%zq&x%zq'S%zq']%zq'u%zq!O%zq%s%zq_%zq%x%zq~O}!|i!O!|i~P#'yO!u3]O}!|i!O!|i~O}!Ri!O!Ri~P#'yO^$XO!u3dO&}$XO~O^$XO!X!tO!u3dO&}$XO~O^$XO!X!tO!`$UO!f3hO!u3dO&}$XO'X$`O'i&hO~O!T3iO!U3iO'T$_O'`(aO~O!S3lO!T3iO!U3iO!r3mO'T$_O'`(aO~O^$XO!X!tO!f3hO!u3dO&}$XO'i&hO~O}'kq!_'kq^'kq&}'kq~P!(tO}&mO!_'jq~O#P$piP$piY$pi^$pii$pis$pi!]$pi!^$pi!`$pi!f$pi#S$pi#T$pi#U$pi#V$pi#W$pi#X$pi#Y$pi#Z$pi#]$pi#_$pi#a$pi#b$pi&}$pi']$pi!_$piz$pi!P$pi'_$pi$x$pi!X$pi~P$&YO#P$riP$riY$ri^$rii$ris$ri!]$ri!^$ri!`$ri!f$ri#S$ri#T$ri#U$ri#V$ri#W$ri#X$ri#Y$ri#Z$ri#]$ri#_$ri#a$ri#b$ri&}$ri']$ri!_$riz$ri!P$ri'_$ri$x$ri!X$ri~P$&{O#P$_iP$_iY$_i^$_ii$_is$_i}$_i!]$_i!^$_i!`$_i!f$_i#S$_i#T$_i#U$_i#V$_i#W$_i#X$_i#Y$_i#Z$_i#]$_i#_$_i#a$_i#b$_i&}$_i']$_i!_$_iz$_i!P$_i!u$_i'_$_i$x$_i!X$_i~P!#QO}&aa'W&aa~P!#QO}&ba!_&ba~P!(tO},SO!_'hi~O#e!wi}!wi!O!wi~P#'yOP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO']QOY#Rii#Ri!]#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'p#Ri'q#Ri}#Ri!O#Ri~O#S#Ri~P$@xO#S8oO~P$@xOP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO']QOY#Ri!]#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'p#Ri'q#Ri}#Ri!O#Ri~Oi#Ri~P$CQOi8qO~P$CQOP#ZOi8qOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO']QO#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'p#Ri'q#Ri}#Ri!O#Ri~OY#Ri!]#Ri#X#Ri#Y#Ri#Z#Ri~P$EYOY8|O!]8sO#X8sO#Y8sO#Z8sO~P$EYOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO']QO#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'q#Ri}#Ri!O#Ri~O'p#Ri~P$GnO'p!zO~P$GnOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO#_8vO']QO'p!zO#a#Ri#b#Ri#e#Ri'i#Ri}#Ri!O#Ri~O'q#Ri~P$IvO'q!{O~P$IvOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO#_8vO#a8xO']QO'p!zO'q!{O~O#b#Ri#e#Ri'i#Ri}#Ri!O#Ri~P$LOO^#cy}#cy&}#cyz#cy!_#cy'_#cy!P#cy$x#cy!X#cy~P!(tOP#RiY#Rii#Ris#Ri!]#Ri!^#Ri!`#Ri!f#Ri#S#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri']#Ri}#Ri!O#Ri~P!#QO!^!vOP'[XY'[Xi'[Xr'[Xs'[Xu'[X!]'[X!`'[X!f'[X#S'[X#T'[X#U'[X#V'[X#W'[X#X'[X#Y'[X#Z'[X#]'[X#_'[X#a'[X#b'[X#e'[X']'[X'i'[X'p'[X'q'[X}'[X!O'[X~O#e#fi}#fi!O#fi~P#'yO!O3}O~O}&ia!O&ia~P#'yO!X!tO'i&hO}&ja!_&ja~O},sO!_'vi~O},sO!X!tO!_'vi~Oz&la}&la~P!#QO!X4UO~O},zOz'wi~P!#QO},zOz'wi~Oz4[O~O!X!tO#Y4bO~Oi4cO!X!tO'i&hO~Oz4eO~O'W$aq}$aq#e$aq!u$aq~P!#QO^$Ry}$Ry&}$Ryz$Ry!_$Ry'_$Ry!P$Ry$x$Ry!X$Ry~P!(tO}1nO!P'xa~O!P&]O$x4jO~O!P&]O$x4jO~P!#QO^!wy}!wy&}!wyz!wy!_!wy'_!wy!P!wy$x!wy!X!wy~P!(tOY4mO~O}-|O!O(Oi~O]4oO~O[4pO~O'`&|O}&qX!O&qX~O}2YO!O'{a~O!O4}O~P$/RO!S5QO!T5PO!U5PO!r/zO'T$_O'`(aO~O!o5RO!p5RO~P%*]O!T5PO!U5PO'T$_O'`(aO~O!P.gO~O!P.gO$x5TO~O!P.gO$x5TO~P!#QOR5YO!P.gO!k5XO$x5TO~OY5_O}&ta!O&ta~O}.sO!O'|i~O]5bO~O!_5cO~O!_5dO~O!_5eO~O!_5eO~P)uO^5gO~O!X5jO~O!_5lO~O}'ni!O'ni~P#'yO^$XO&}$XO~P!(tO^$XO!u5qO&}$XO~O^$XO!X!tO!u5qO&}$XO~O^$XO!X!tO!f5vO!u5qO&}$XO'i&hO~O!`$UO'X$`O~P%.`O!T5wO!U5wO'T$_O'`(aO~O}'ky!_'ky^'ky&}'ky~P!(tO#P$aqP$aqY$aq^$aqi$aqs$aq}$aq!]$aq!^$aq!`$aq!f$aq#S$aq#T$aq#U$aq#V$aq#W$aq#X$aq#Y$aq#Z$aq#]$aq#_$aq#a$aq#b$aq&}$aq']$aq!_$aqz$aq!P$aq!u$aq'_$aq$x$aq!X$aq~P!#QO}&bi!_&bi~P!(tO#e!wq}!wq!O!wq~P#'yOr-cOs-cOu-dOPoaYoaioa!]oa!^oa!`oa!foa#Soa#Toa#Uoa#Voa#Woa#Xoa#Yoa#Zoa#]oa#_oa#aoa#boa#eoa']oa'ioa'poa'qoa}oa!Ooa~Or'{Ou'|OP$UaY$Uai$Uas$Ua!]$Ua!^$Ua!`$Ua!f$Ua#S$Ua#T$Ua#U$Ua#V$Ua#W$Ua#X$Ua#Y$Ua#Z$Ua#]$Ua#_$Ua#a$Ua#b$Ua#e$Ua']$Ua'i$Ua'p$Ua'q$Ua}$Ua!O$Ua~Or'{Ou'|OP$WaY$Wai$Was$Wa!]$Wa!^$Wa!`$Wa!f$Wa#S$Wa#T$Wa#U$Wa#V$Wa#W$Wa#X$Wa#Y$Wa#Z$Wa#]$Wa#_$Wa#a$Wa#b$Wa#e$Wa']$Wa'i$Wa'p$Wa'q$Wa}$Wa!O$Wa~OP$faY$fai$fas$fa!]$fa!^$fa!`$fa!f$fa#S$fa#T$fa#U$fa#V$fa#W$fa#X$fa#Y$fa#Z$fa#]$fa#_$fa#a$fa#b$fa#e$fa']$fa}$fa!O$fa~P!#QO#e$Qq}$Qq!O$Qq~P#'yO#e$Rq}$Rq!O$Rq~P#'yO!O6RO~O'W$ty}$ty#e$ty!u$ty~P!#QO!X!tO}&ji!_&ji~O!X!tO'i&hO}&ji!_&ji~O},sO!_'vq~Oz&li}&li~P!#QO},zOz'wq~Oz6YO~P!#QOz6YO~O}'Zy'W'Zy~P!#QO}&oa!P&oa~P!#QO!P$lq^$lq&}$lq~P!#QO}-|O!O(Oq~O]6cO~O!P&]O$x6dO~O!P&]O$x6dO~P!#QO!u6eO}&qa!O&qa~O}2YO!O'{i~P#'yO!T6kO!U6kO'T$_O'`(aO~O!S6mO!T6kO!U6kO!r3mO'T$_O'`(aO~O!P.gO$x6pO~O!P.gO$x6pO~P!#QO'`6vO~O}.sO!O'|q~O!_6yO~O!_6yO~P)uO!_6{O~O!_6|O~O}!|y!O!|y~P#'yO^$XO!u7RO&}$XO~O^$XO!X!tO!u7RO&}$XO~O^$XO!X!tO!f7VO!u7RO&}$XO'i&hO~O#P$tyP$tyY$ty^$tyi$tys$ty}$ty!]$ty!^$ty!`$ty!f$ty#S$ty#T$ty#U$ty#V$ty#W$ty#X$ty#Y$ty#Z$ty#]$ty#_$ty#a$ty#b$ty&}$ty']$ty!_$tyz$ty!P$ty!u$ty'_$ty$x$ty!X$ty~P!#QO#e#cy}#cy!O#cy~P#'yOP$_iY$_ii$_is$_i!]$_i!^$_i!`$_i!f$_i#S$_i#T$_i#U$_i#V$_i#W$_i#X$_i#Y$_i#Z$_i#]$_i#_$_i#a$_i#b$_i#e$_i']$_i}$_i!O$_i~P!#QOr'{Ou'|O'q(QOP$piY$pii$pis$pi!]$pi!^$pi!`$pi!f$pi#S$pi#T$pi#U$pi#V$pi#W$pi#X$pi#Y$pi#Z$pi#]$pi#_$pi#a$pi#b$pi#e$pi']$pi'i$pi'p$pi}$pi!O$pi~Or'{Ou'|OP$riY$rii$ris$ri!]$ri!^$ri!`$ri!f$ri#S$ri#T$ri#U$ri#V$ri#W$ri#X$ri#Y$ri#Z$ri#]$ri#_$ri#a$ri#b$ri#e$ri']$ri'i$ri'p$ri'q$ri}$ri!O$ri~O#e$Ry}$Ry!O$Ry~P#'yO#e!wy}!wy!O!wy~P#'yO!X!tO}&jq!_&jq~O},sO!_'vy~Oz&lq}&lq~P!#QOz7]O~P!#QO}2YO!O'{q~O!T7hO!U7hO'T$_O'`(aO~O!P.gO$x7kO~O!P.gO$x7kO~P!#QO!_7nO~O%}7oOP%z!ZQ%z!ZW%z!Z]%z!Z^%z!Za%z!Zb%z!Zg%z!Zi%z!Zj%z!Zk%z!Zn%z!Zp%z!Zu%z!Zw%z!Zx%z!Zy%z!Z!P%z!Z!Z%z!Z!`%z!Z!c%z!Z!d%z!Z!e%z!Z!f%z!Z!g%z!Z!j%z!Z#[%z!Z#l%z!Z#p%z!Z$w%z!Z$y%z!Z${%z!Z$|%z!Z%P%z!Z%R%z!Z%U%z!Z%V%z!Z%X%z!Z%f%z!Z%l%z!Z%n%z!Z%p%z!Z%r%z!Z%u%z!Z%{%z!Z&P%z!Z&R%z!Z&T%z!Z&V%z!Z&X%z!Z&x%z!Z'S%z!Z']%z!Z'u%z!Z!O%z!Z%s%z!Z_%z!Z%x%z!Z~O^$XO!u7sO&}$XO~O^$XO!X!tO!u7sO&}$XO~OP$aqY$aqi$aqs$aq!]$aq!^$aq!`$aq!f$aq#S$aq#T$aq#U$aq#V$aq#W$aq#X$aq#Y$aq#Z$aq#]$aq#_$aq#a$aq#b$aq#e$aq']$aq}$aq!O$aq~P!#QO}&qq!O&qq~P#'yO^$XO!u8XO&}$XO~OP$tyY$tyi$tys$ty!]$ty!^$ty!`$ty!f$ty#S$ty#T$ty#U$ty#V$ty#W$ty#X$ty#Y$ty#Z$ty#]$ty#_$ty#a$ty#b$ty#e$ty']$ty}$ty!O$ty~P!#QO'_'aX~P.^O'_ZXzZX!_ZX%jZX!PZX$xZX!XZX~P$wO!XcX!_ZX!_cX'icX~P;OOP8iOQ8iO]bOa:OOb!gOgbOi8iOjbOkbOn8iOp8iOuROwbOxbOybO!PSO!Z8kO!`UO!c8iO!d8iO!e8iO!f8iO!g8iO!j!fO#l!iO#p]O'S'[O']QO'u9|O~O}8zO!O$Ta~O]#nOg#{Oi#oOj#nOk#nOn#|Op9POu#uO!P#vO!Z:RO!`#sO#O9VO#l$QO$V9RO$X9TO$[$RO'S&tO']#pO~O#['cO~P&(sO!OZX!OcX~P;OO#P8nO~O!X!tO#P8nO~O!u8}O~O!u9WO}'nX!O'nX~O!u8}O}'lX!O'lX~O#P9XO~O'W9ZO~P!#QO#P9`O~O#P9aO~O!X!tO#P9bO~O!X!tO#P9XO~O#e9cO~P#'yO#P9dO~O#P9eO~O#P9fO~O#P9gO~O#e9hO~P!#QO#e9iO~P!#QO#p~!^!n!p!}#O'u$V$X$[$m$w$x$y%P%R%U%V%X%Z~TS#p'u#Ty'P'Q#r'P'S'`~",goto:"#=a(SPPPPPPP(TP(eP*QPPPP-aPP-v2z4m5QP5QPPP5Q5QP5QP6nPP6sP7[PPPP;kPPPP;k>ZPPP>a@dP;kPBwPPPPDo;kPPPPPFh;kPPIgJdPPPJhPJpKqP;k;kNx!#q!(a!(a!+nPPP!+u;kPPPPPPPPPP!.iP!/zPP;k!1XP;kP;k;k;k;kP;k!3lPP!6cP!9U!9^!9b!9bP!6`P!9f!9fP!O#BZ$IS0h$IS$I_!>O$I_$I|0h$I|$I}!@g$I}$JO!@g$JO$JT0h$JT$JU!>O$JU$KV0h$KV$KW!>O$KW&FU0h&FU&FV!>O&FV?HT0h?HT?HU!>O?HU~0hW%YR#|WO!^%T!_#o%T#p~%T,T%jg#|W'P+{OX%TXY%cYZ%TZ[%c[p%Tpq%cq!^%T!_#o%T#p$f%T$f$g%c$g#BY%T#BY#BZ%c#BZ$IS%T$IS$I_%c$I_$JT%T$JT$JU%c$JU$KV%T$KV$KW%c$KW&FU%T&FU&FV%c&FV?HT%T?HT?HU%c?HU~%T,T'YR#|W'Q+{O!^%T!_#o%T#p~%T$T'jS#|W!f#{O!^%T!_!`'v!`#o%T#p~%T$O'}S#]#v#|WO!^%T!_!`(Z!`#o%T#p~%T$O(bR#]#v#|WO!^%T!_#o%T#p~%T'u(rZ#|W]!ROY(kYZ)eZr(krs*rs!^(k!^!_+U!_#O(k#O#P-b#P#o(k#o#p+U#p~(k&r)jV#|WOr)ers*Ps!^)e!^!_*a!_#o)e#o#p*a#p~)e&r*WR#w&j#|WO!^%T!_#o%T#p~%T&j*dROr*ars*ms~*a&j*rO#w&j'u*{R#w&j#|W]!RO!^%T!_#o%T#p~%T'm+ZV]!ROY+UYZ*aZr+Urs+ps#O+U#O#P+w#P~+U'm+wO#w&j]!R'm+zROr+Urs,Ts~+U'm,[U#w&j]!ROY,nZr,nrs-Vs#O,n#O#P-[#P~,n!R,sU]!ROY,nZr,nrs-Vs#O,n#O#P-[#P~,n!R-[O]!R!R-_PO~,n'u-gV#|WOr(krs-|s!^(k!^!_+U!_#o(k#o#p+U#p~(k'u.VZ#w&j#|W]!ROY.xYZ%TZr.xrs/rs!^.x!^!_,n!_#O.x#O#P0S#P#o.x#o#p,n#p~.x!Z/PZ#|W]!ROY.xYZ%TZr.xrs/rs!^.x!^!_,n!_#O.x#O#P0S#P#o.x#o#p,n#p~.x!Z/yR#|W]!RO!^%T!_#o%T#p~%T!Z0XT#|WO!^.x!^!_,n!_#o.x#o#p,n#p~.x&i0s_#|W#rS'S%k'`pOt%Ttu0hu}%T}!O1r!O!Q%T!Q![0h![!^%T!_!c%T!c!}0h!}#R%T#R#S0h#S#T%T#T#o0h#p$g%T$g~0h[1y_#|W#rSOt%Ttu1ru}%T}!O1r!O!Q%T!Q![1r![!^%T!_!c%T!c!}1r!}#R%T#R#S1r#S#T%T#T#o1r#p$g%T$g~1r$O3PS#U#v#|WO!^%T!_!`3]!`#o%T#p~%T$O3dR#|W#g#vO!^%T!_#o%T#p~%T%r3tU'q%j#|WOv%Tvw4Ww!^%T!_!`3]!`#o%T#p~%T$O4_S#|W#a#vO!^%T!_!`3]!`#o%T#p~%T'u4rZ#|W]!ROY4kYZ5eZw4kwx*rx!^4k!^!_6]!_#O4k#O#P8]#P#o4k#o#p6]#p~4k&r5jV#|WOw5ewx*Px!^5e!^!_6P!_#o5e#o#p6P#p~5e&j6SROw6Pwx*mx~6P'm6bV]!ROY6]YZ6PZw6]wx+px#O6]#O#P6w#P~6]'m6zROw6]wx7Tx~6]'m7[U#w&j]!ROY7nZw7nwx-Vx#O7n#O#P8V#P~7n!R7sU]!ROY7nZw7nwx-Vx#O7n#O#P8V#P~7n!R8YPO~7n'u8bV#|WOw4kwx8wx!^4k!^!_6]!_#o4k#o#p6]#p~4k'u9QZ#w&j#|W]!ROY9sYZ%TZw9swx/rx!^9s!^!_7n!_#O9s#O#P:m#P#o9s#o#p7n#p~9s!Z9zZ#|W]!ROY9sYZ%TZw9swx/rx!^9s!^!_7n!_#O9s#O#P:m#P#o9s#o#p7n#p~9s!Z:rT#|WO!^9s!^!_7n!_#o9s#o#p7n#p~9s%V;YR!`$}#|WO!^%T!_#o%T#p~%TZ;jR!_R#|WO!^%T!_#o%T#p~%T%R;|U'T!R#V#v#|WOz%Tz{<`{!^%T!_!`3]!`#o%T#p~%T$OU!P!Q%T!Q![>z![!^%T!_#o%T#p~%Ty>ZT#|WO!O%T!O!P>j!P!^%T!_#o%T#p~%Ty>qR|q#|WO!^%T!_#o%T#p~%Ty?RZ#|WjqO!Q%T!Q![>z![!^%T!_!g%T!g!h?t!h#R%T#R#S>z#S#X%T#X#Y?t#Y#o%T#p~%Ty?yZ#|WO{%T{|@l|}%T}!O@l!O!Q%T!Q![AW![!^%T!_#R%T#R#SAW#S#o%T#p~%Ty@qV#|WO!Q%T!Q![AW![!^%T!_#R%T#R#SAW#S#o%T#p~%TyA_V#|WjqO!Q%T!Q![AW![!^%T!_#R%T#R#SAW#S#o%T#p~%T,TA{`#|W#T#vOYB}YZ%TZzB}z{Ht{!PB}!P!Q!+m!Q!^B}!^!_EQ!_!`!,f!`!a!-e!a!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}XCU[#|WyPOYB}YZ%TZ!PB}!P!QCz!Q!^B}!^!_EQ!_!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}XDR_#|WyPO!^%T!_#Z%T#Z#[Cz#[#]%T#]#^Cz#^#a%T#a#bCz#b#g%T#g#hCz#h#i%T#i#jCz#j#m%T#m#nCz#n#o%T#p~%TPEVVyPOYEQZ!PEQ!P!QEl!Q!}EQ!}#OFT#O#PFp#P~EQPEqUyP#Z#[El#]#^El#a#bEl#g#hEl#i#jEl#m#nElPFWTOYFTZ#OFT#O#PFg#P#QEQ#Q~FTPFjQOYFTZ~FTPFsQOYEQZ~EQXGOY#|WOYFyYZ%TZ!^Fy!^!_FT!_#OFy#O#PGn#P#QB}#Q#oFy#o#pFT#p~FyXGsV#|WOYFyYZ%TZ!^Fy!^!_FT!_#oFy#o#pFT#p~FyXH_V#|WOYB}YZ%TZ!^B}!^!_EQ!_#oB}#o#pEQ#p~B},TH{^#|WyPOYHtYZIwZzHtz{LY{!PHt!P!Q!*Z!Q!^Ht!^!_Ne!_!}Ht!}#O!&U#O#P!)i#P#oHt#o#pNe#p~Ht,TI|V#|WOzIwz{Jc{!^Iw!^!_Ke!_#oIw#o#pKe#p~Iw,TJhX#|WOzIwz{Jc{!PIw!P!QKT!Q!^Iw!^!_Ke!_#oIw#o#pKe#p~Iw,TK[R#|WT+{O!^%T!_#o%T#p~%T+{KhROzKez{Kq{~Ke+{KtTOzKez{Kq{!PKe!P!QLT!Q~Ke+{LYOT+{,TLa^#|WyPOYHtYZIwZzHtz{LY{!PHt!P!QM]!Q!^Ht!^!_Ne!_!}Ht!}#O!&U#O#P!)i#P#oHt#o#pNe#p~Ht,TMf_#|WT+{yPO!^%T!_#Z%T#Z#[Cz#[#]%T#]#^Cz#^#a%T#a#bCz#b#g%T#g#hCz#h#i%T#i#jCz#j#m%T#m#nCz#n#o%T#p~%T+{NjYyPOYNeYZKeZzNez{! Y{!PNe!P!Q!%Q!Q!}Ne!}#O!!h#O#P!$n#P~Ne+{! _YyPOYNeYZKeZzNez{! Y{!PNe!P!Q! }!Q!}Ne!}#O!!h#O#P!$n#P~Ne+{!!UUT+{yP#Z#[El#]#^El#a#bEl#g#hEl#i#jEl#m#nEl+{!!kWOY!!hYZKeZz!!hz{!#T{#O!!h#O#P!$[#P#QNe#Q~!!h+{!#WYOY!!hYZKeZz!!hz{!#T{!P!!h!P!Q!#v!Q#O!!h#O#P!$[#P#QNe#Q~!!h+{!#{TT+{OYFTZ#OFT#O#PFg#P#QEQ#Q~FT+{!$_TOY!!hYZKeZz!!hz{!#T{~!!h+{!$qTOYNeYZKeZzNez{! Y{~Ne+{!%V_yPOzKez{Kq{#ZKe#Z#[!%Q#[#]Ke#]#^!%Q#^#aKe#a#b!%Q#b#gKe#g#h!%Q#h#iKe#i#j!%Q#j#mKe#m#n!%Q#n~Ke,T!&Z[#|WOY!&UYZIwZz!&Uz{!'P{!^!&U!^!_!!h!_#O!&U#O#P!(w#P#QHt#Q#o!&U#o#p!!h#p~!&U,T!'U^#|WOY!&UYZIwZz!&Uz{!'P{!P!&U!P!Q!(Q!Q!^!&U!^!_!!h!_#O!&U#O#P!(w#P#QHt#Q#o!&U#o#p!!h#p~!&U,T!(XY#|WT+{OYFyYZ%TZ!^Fy!^!_FT!_#OFy#O#PGn#P#QB}#Q#oFy#o#pFT#p~Fy,T!(|X#|WOY!&UYZIwZz!&Uz{!'P{!^!&U!^!_!!h!_#o!&U#o#p!!h#p~!&U,T!)nX#|WOYHtYZIwZzHtz{LY{!^Ht!^!_Ne!_#oHt#o#pNe#p~Ht,T!*bc#|WyPOzIwz{Jc{!^Iw!^!_Ke!_#ZIw#Z#[!*Z#[#]Iw#]#^!*Z#^#aIw#a#b!*Z#b#gIw#g#h!*Z#h#iIw#i#j!*Z#j#mIw#m#n!*Z#n#oIw#o#pKe#p~Iw,T!+tV#|WS+{OY!+mYZ%TZ!^!+m!^!_!,Z!_#o!+m#o#p!,Z#p~!+m+{!,`QS+{OY!,ZZ~!,Z$P!,o[#|W#g#vyPOYB}YZ%TZ!PB}!P!QCz!Q!^B}!^!_EQ!_!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}]!-n[#oS#|WyPOYB}YZ%TZ!PB}!P!QCz!Q!^B}!^!_EQ!_!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}y!.kd#|WjqO!O%T!O!P>z!P!Q%T!Q![!/y![!^%T!_!g%T!g!h?t!h#R%T#R#S!/y#S#U%T#U#V!1a#V#X%T#X#Y?t#Y#b%T#b#c!1P#c#d!2o#d#l%T#l#m!3w#m#o%T#p~%Ty!0Q_#|WjqO!O%T!O!P>z!P!Q%T!Q![!/y![!^%T!_!g%T!g!h?t!h#R%T#R#S!/y#S#X%T#X#Y?t#Y#b%T#b#c!1P#c#o%T#p~%Ty!1WR#|WjqO!^%T!_#o%T#p~%Ty!1fW#|WO!Q%T!Q!R!2O!R!S!2O!S!^%T!_#R%T#R#S!2O#S#o%T#p~%Ty!2VW#|WjqO!Q%T!Q!R!2O!R!S!2O!S!^%T!_#R%T#R#S!2O#S#o%T#p~%Ty!2tV#|WO!Q%T!Q!Y!3Z!Y!^%T!_#R%T#R#S!3Z#S#o%T#p~%Ty!3bV#|WjqO!Q%T!Q!Y!3Z!Y!^%T!_#R%T#R#S!3Z#S#o%T#p~%Ty!3|Z#|WO!Q%T!Q![!4o![!^%T!_!c%T!c!i!4o!i#R%T#R#S!4o#S#T%T#T#Z!4o#Z#o%T#p~%Ty!4vZ#|WjqO!Q%T!Q![!4o![!^%T!_!c%T!c!i!4o!i#R%T#R#S!4o#S#T%T#T#Z!4o#Z#o%T#p~%T%w!5rR!XV#|W#e%hO!^%T!_#o%T#p~%T!P!6SR^w#|WO!^%T!_#o%T#p~%T+c!6hR'Xd!]%Y#p&s'uP!P!Q!6q!^!_!6v!_!`!7TW!6vO$OW#v!6{P#W#v!_!`!7O#v!7TO#g#v#v!7YO#X#v%w!7aT!u%o#|WO!^%T!_!`'v!`!a!7p!a#o%T#p~%T$P!7wR#P#w#|WO!^%T!_#o%T#p~%T%w!8]T'W!s#X#v#yS#|WO!^%T!_!`!8l!`!a!8|!a#o%T#p~%T$O!8sR#X#v#|WO!^%T!_#o%T#p~%T$O!9TT#W#v#|WO!^%T!_!`3]!`!a!9d!a#o%T#p~%T$O!9kS#W#v#|WO!^%T!_!`3]!`#o%T#p~%T%w!:OV'i%o#|WO!O%T!O!P!:e!P!^%T!_!a%T!a!b!:u!b#o%T#p~%T$`!:lRs$W#|WO!^%T!_#o%T#p~%T$O!:|S#|W#b#vO!^%T!_!`3]!`#o%T#p~%T&e!;aRu&]#|WO!^%T!_#o%T#p~%TZ!;qRzR#|WO!^%T!_#o%T#p~%T$O!]r#|W'P+{#rS'S%k'`pOX%TXY%cYZ%TZ[%c[p%Tpq%cqt%Ttu0hu}%T}!O1r!O!Q%T!Q![0h![!^%T!_!c%T!c!}0h!}#R%T#R#S0h#S#T%T#T#o0h#p$f%T$f$g%c$g#BY0h#BY#BZ!>O#BZ$IS0h$IS$I_!>O$I_$JT0h$JT$JU!>O$JU$KV0h$KV$KW!>O$KW&FU0h&FU&FV!>O&FV?HT0h?HT?HU!>O?HU~0h,T!@t_#|W'Q+{#rS'S%k'`pOt%Ttu0hu}%T}!O1r!O!Q%T!Q![0h![!^%T!_!c%T!c!}0h!}#R%T#R#S0h#S#T%T#T#o0h#p$g%T$g~0h",tokenizers:[Pu,vu,Su,0,1,2,3,4,5,6,7,8,yu],topRules:{Script:[0,6]},dialects:{jsx:11129,ts:11131},dynamicPrecedences:{141:1,168:1},specialized:[{term:280,get:(e,t)=>function(e,t){return"extends"==e&&t.dialectEnabled(1)?3:-1}(e,t)<<1|1},{term:280,get:e=>_u[e]||-1},{term:292,get:e=>Xu[e]||-1},{term:59,get:e=>Tu[e]||-1}],tokenPrec:11151});function Wu(e){let t=Object.keys(e).join(""),n=/\w/.test(t);return n&&(t=t.replace(/\w/g,"")),`[${n?"\\w":""}${t.replace(/[^\w\s]/g,"\\$&")}]`}function qu(e){let t=e.map((e=>"string"==typeof e?{label:e}:e)),[n,r]=t.every((e=>/^\w+$/.test(e.label)))?[/\w*$/,/\w+$/]:function(e){let t=Object.create(null),n=Object.create(null);for(let{label:r}of e){t[r[0]]=!0;for(let e=1;e{let i=e.matchBefore(r);return i||e.explicit?{from:i?i.from:e.pos,options:t,span:n}:null}}function zu(e,t){return n=>{for(let t=qa(n.state).resolveInner(n.pos,-1);t;t=t.parent)if(e.indexOf(t.name)>-1)return null;return t(n)}}const Yu=Qi.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",maxHeight:"10em",listStyle:"none",margin:0,padding:0,"& > li":{cursor:"pointer",padding:"1px 1em 1px 3px",lineHeight:1.2},"& > li[aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"}}},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"300px"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class Zu{constructor(e,t,n,r){this.field=e,this.line=t,this.from=n,this.to=r}}class Uu{constructor(e,t,n){this.field=e,this.from=t,this.to=n}map(e){return new Uu(this.field,e.mapPos(this.from,-1),e.mapPos(this.to,1))}}class Eu{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let n=[],r=[t],i=e.doc.lineAt(t),a=/^\s*/.exec(i.text)[0];for(let i of this.lines){if(n.length){let n=a,o=/^\t*/.exec(i)[0].length;for(let t=0;tnew Uu(e.field,r[e.line]+e.from,r[e.line]+e.to)));return{text:n,ranges:o}}static parse(e){let t,n=[],r=[],i=[];for(let a of e.split(/\r\n?|\n/)){for(;t=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(a);){let e=t[1]?+t[1]:null,o=t[2]||t[3],s=-1;for(let t=0;t=s&&e.field++}i.push(new Zu(s,r.length,t.index,t.index+o.length)),a=a.slice(0,t.index)+o+a.slice(t.index+t[0].length)}r.push(a)}return new Eu(r,i)}}let Iu=tn.widget({widget:new class extends Jt{toDOM(){let e=document.createElement("span");return e.className="cm-snippetFieldPosition",e}ignoreEvent(){return!1}}}),Vu=tn.mark({class:"cm-snippetField"});class Cu{constructor(e,t){this.ranges=e,this.active=t,this.deco=tn.set(e.map((e=>(e.from==e.to?Iu:Vu).range(e.from,e.to))))}map(e){return new Cu(this.ranges.map((t=>t.map(e))),this.active)}selectionInsideField(e){return e.ranges.every((e=>this.ranges.some((t=>t.field==this.active&&t.from<=e.from&&t.to>=e.to))))}}const Au=ue.define({map:(e,t)=>e&&e.map(t)}),Gu=ue.define(),ju=G.define({create:()=>null,update(e,t){for(let n of t.effects){if(n.is(Au))return n.value;if(n.is(Gu)&&e)return new Cu(e.ranges,n.value)}return e&&t.docChanged&&(e=e.map(t.changes)),e&&t.selection&&!e.selectionInsideField(t.selection)&&(e=null),e},provide:e=>Qi.decorations.from(e,(e=>e?e.deco:tn.none))});function Lu(e,t){return q.create(e.filter((e=>e.field==t)).map((e=>q.range(e.from,e.to))))}function Nu(e){let t=Eu.parse(e);return(e,n,r,i)=>{let{text:a,ranges:o}=t.instantiate(e.state,r),s={changes:{from:r,to:i,insert:h.of(a)}};if(o.length&&(s.selection=Lu(o,0)),o.length>1){let t=new Cu(o,0),n=s.effects=[Au.of(t)];void 0===e.state.field(ju,!1)&&n.push(ue.appendConfig.of([ju.init((()=>t)),Bu,Ku,Yu]))}e.dispatch(e.state.update(s))}}function Du(e){return({state:t,dispatch:n})=>{let r=t.field(ju,!1);if(!r||e<0&&0==r.active)return!1;let i=r.active+e,a=e>0&&!r.ranges.some((t=>t.field==i+e));return n(t.update({selection:Lu(r.ranges,i),effects:Au.of(a?null:new Cu(r.ranges,i))})),!0}}const Mu=[{key:"Tab",run:Du(1),shift:Du(-1)},{key:"Escape",run:({state:e,dispatch:t})=>!!e.field(ju,!1)&&(t(e.update({effects:Au.of(null)})),!0)}],Fu=U.define({combine:e=>e.length?e[0]:Mu}),Bu=M.override(_i.compute([Fu],(e=>e.facet(Fu))));function Hu(e,t){return Object.assign(Object.assign({},t),{apply:Nu(e)})}const Ku=Qi.domEventHandlers({mousedown(e,t){let n,r=t.state.field(ju,!1);if(!r||null==(n=t.posAtCoords({x:e.clientX,y:e.clientY})))return!1;let i=r.ranges.find((e=>e.from<=n&&e.to>=n));return!(!i||i.field==r.active)&&(t.dispatch({selection:Lu(r.ranges,i.field),effects:Au.of(r.ranges.some((e=>e.field>i.field))?new Cu(r.ranges,i.field):null)}),!0)}}),Ju=[Hu("function ${name}(${params}) {\n\t${}\n}",{label:"function",detail:"definition",type:"keyword"}),Hu("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n\t${}\n}",{label:"for",detail:"loop",type:"keyword"}),Hu("for (let ${name} of ${collection}) {\n\t${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Hu("try {\n\t${}\n} catch (${error}) {\n\t${}\n}",{label:"try",detail:"block",type:"keyword"}),Hu("class ${name} {\n\tconstructor(${params}) {\n\t\t${}\n\t}\n}",{label:"class",detail:"definition",type:"keyword"}),Hu('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Hu('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],eh=Wa.define({parser:Ru.configure({props:[Ha.add({IfStatement:oo({except:/^\s*({|else\b)/}),TryStatement:oo({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:ao,SwitchBody:e=>{let t=e.textAfter,n=/^\s*\}/.test(t),r=/^\s*(case|default)\b/.test(t);return e.baseIndent+(n?0:r?1:2)*e.unit},Block:ro({closing:"}"}),ArrowFunction:e=>e.baseIndent+e.unit,"TemplateString BlockComment":()=>-1,"Statement Property":oo({except:/^{/}),JSXElement(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},JSXEscape(e){let t=/\s*\}/.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"JSXOpenTag JSXSelfClosingTag":e=>e.column(e.node.from)+e.unit}),so.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression":Oo,BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({"get set async static":Ou.modifier,"for while do if else switch try catch finally return throw break continue default case":Ou.controlKeyword,"in of await yield void typeof delete instanceof":Ou.operatorKeyword,"export import let var const function class extends":Ou.definitionKeyword,"with debugger from as new":Ou.keyword,TemplateString:Ou.special(Ou.string),Super:Ou.atom,BooleanLiteral:Ou.bool,this:Ou.self,null:Ou.null,Star:Ou.modifier,VariableName:Ou.variableName,"CallExpression/VariableName":Ou.function(Ou.variableName),VariableDefinition:Ou.definition(Ou.variableName),Label:Ou.labelName,PropertyName:Ou.propertyName,"CallExpression/MemberExpression/PropertyName":Ou.function(Ou.propertyName),"FunctionDeclaration/VariableDefinition":Ou.function(Ou.definition(Ou.variableName)),"ClassDeclaration/VariableDefinition":Ou.definition(Ou.className),PropertyNameDefinition:Ou.definition(Ou.propertyName),UpdateOp:Ou.updateOperator,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Number:Ou.number,String:Ou.string,ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,RegExp:Ou.regexp,Equals:Ou.definitionOperator,"Arrow : Spread":Ou.punctuation,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,", ;":Ou.separator,TypeName:Ou.typeName,TypeDefinition:Ou.definition(Ou.typeName),"type enum interface implements namespace module declare":Ou.definitionKeyword,"abstract global privacy readonly override":Ou.modifier,"is keyof unique infer":Ou.operatorKeyword,JSXAttributeValue:Ou.attributeValue,JSXText:Ou.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":Ou.angleBracket,"JSXIdentifier JSXNameSpacedName":Ou.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":Ou.attributeName})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),th=eh.configure({dialect:"ts"}),nh=eh.configure({dialect:"jsx"}),rh=eh.configure({dialect:"jsx ts"});function ih(e={}){let t=e.jsx?e.typescript?rh:nh:e.typescript?th:eh;return new Ga(t,eh.data.of({autocomplete:zu(["LineComment","BlockComment","String"],qu(Ju))}))}function ah(e,t,n,r){return n.line(e+r.line).from+t+(1==e?r.col-1:-1)}function oh(e,t,n){let r=ah(e.line,e.column,t,n),i={from:r,to:null!=e.endLine&&1!=e.endColumn?ah(e.endLine,e.endColumn,t,n):r,message:e.message,source:e.ruleId?"jshint:"+e.ruleId:"jshint",severity:1==e.severity?"warning":"error"};if(e.fix){let{range:t,text:a}=e.fix,o=t[0]+n.pos-r,s=t[1]+n.pos-r;i.actions=[{name:"fix",apply(e,t){e.dispatch({changes:{from:t+o,to:t+s,insert:a},scrollIntoView:!0})}}]}return i}var sh=Object.freeze({__proto__:null,esLint:function(e,t){return t||(t={parserOptions:{ecmaVersion:2019,sourceType:"module"},env:{browser:!0,node:!0,es6:!0,es2015:!0,es2017:!0,es2020:!0},rules:{}},e.getRules().forEach(((e,n)=>{e.meta.docs.recommended&&(t.rules[n]=2)}))),n=>{let{state:r}=n,i=[];for(let{from:n,to:a}of eh.findRegions(r)){let o=r.doc.lineAt(n),s={line:o.number-1,col:n-o.from,pos:n};for(let o of e.verify(r.sliceDoc(n,a),t))i.push(oh(o,r.doc,s))}return i}},javascript:ih,javascriptLanguage:eh,jsxLanguage:nh,snippets:Ju,tsxLanguage:rh,typescriptLanguage:th});const Oh=["_blank","_self","_top","_parent"],lh=["ascii","utf-8","utf-16","latin1","latin1"],ch=["get","post","put","delete"],uh=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],hh=["true","false"],dh={},ph={a:{attrs:{href:null,ping:null,type:null,media:null,target:Oh,hreflang:null}},abbr:dh,acronym:dh,address:dh,applet:dh,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:dh,aside:dh,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:dh,base:{attrs:{href:null,target:Oh}},basefont:dh,bdi:dh,bdo:dh,big:dh,blockquote:{attrs:{cite:null}},body:dh,br:dh,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:uh,formmethod:ch,formnovalidate:["novalidate"],formtarget:Oh,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:dh,center:dh,cite:dh,code:dh,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:dh,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:dh,dir:dh,div:dh,dl:dh,dt:dh,em:dh,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:dh,figure:dh,font:dh,footer:dh,form:{attrs:{action:null,name:null,"accept-charset":lh,autocomplete:["on","off"],enctype:uh,method:ch,novalidate:["novalidate"],target:Oh}},frame:dh,frameset:dh,h1:dh,h2:dh,h3:dh,h4:dh,h5:dh,h6:dh,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:dh,hgroup:dh,hr:dh,html:{attrs:{manifest:null}},i:dh,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:uh,formmethod:ch,formnovalidate:["novalidate"],formtarget:Oh,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:dh,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:dh,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:dh,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:lh,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:dh,noframes:dh,noscript:dh,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:dh,param:{attrs:{name:null,value:null}},pre:dh,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:dh,rt:dh,ruby:dh,s:dh,samp:dh,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:lh}},section:dh,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},small:dh,source:{attrs:{src:null,type:null,media:null}},span:dh,strike:dh,strong:dh,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:dh,summary:dh,sup:dh,table:dh,tbody:dh,td:{attrs:{colspan:null,rowspan:null,headers:null}},textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:dh,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:dh,time:{attrs:{datetime:null}},title:dh,tr:dh,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},tt:dh,u:dh,ul:{children:["li","script","template","ul","ol"]},var:dh,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:dh},fh={accesskey:null,class:null,contenteditable:hh,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:hh,autocorrect:hh,autocapitalize:hh,style:null,tabindex:null,title:null,translate:["yes","no"],onclick:null,rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":hh,"aria-autocomplete":["inline","list","both","none"],"aria-busy":hh,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":hh,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":hh,"aria-hidden":hh,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":hh,"aria-multiselectable":hh,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":hh,"aria-relevant":null,"aria-required":hh,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},mh=Object.keys(ph),gh=Object.keys(fh);function Qh(e,t){if(!t)return"";let n=t.firstChild,r=n&&n.getChild("TagName");return r?e.sliceString(r.from,r.to):""}function $h(e,t=!1){for(let n=e.parent;n;n=n.parent)if("Element"==n.name){if(!t)return n;t=!1}return null}function bh(e,t){let n=ph[Qh(e,$h(t,!0))];return(null==n?void 0:n.children)||mh}function xh(e,t){let n=[];for(let r=t;r=$h(r);){let i=Qh(e,r);if(i&&"CloseTag"==r.lastChild.name)break;i&&n.indexOf(i)<0&&("EndTag"==t.name||t.from>=r.firstChild.to)&&n.push(i)}return n}const wh=/^[:\-\.\w\u00b7-\uffff]+$/;function kh(e,t,n,r){let i=/\s*>/.test(e.sliceDoc(r,r+5))?"":">";return{from:n,to:r,options:bh(e.doc,t).map((e=>({label:e,type:"type"}))).concat(xh(e.doc,t).map(((e,t)=>({label:"/"+e,apply:"/"+e+i,type:"type",boost:99-t})))),span:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function yh(e,t,n,r){let i=/\s*>/.test(e.sliceDoc(r,r+5))?"":">";return{from:n,to:r,options:xh(e.doc,t).map(((e,t)=>({label:e,apply:e+i,type:"type",boost:99-t}))),span:wh}}function Ph(e){let{state:t,pos:n}=e,r=qa(t).resolveInner(n),i=r.resolve(n,-1);for(let e,t=n;r==i&&(e=i.childBefore(t));){let n=e.lastChild;if(!n||!n.type.isError||n.from({label:e,type:"property"}))),span:wh}}(t,i,"AttributeName"==i.name?i.from:n,n):"Is"==i.name||"AttributeValue"==i.name||"UnquotedAttributeValue"==i.name?function(e,t,n,r){var i;let a,o=null===(i=t.parent)||void 0===i?void 0:i.getChild("AttributeName"),s=[];if(o){let i=e.sliceDoc(o.from,o.to),O=fh[i];if(!O){let n=$h(t),r=n?ph[Qh(e.doc,n)]:null;O=(null==r?void 0:r.attrs)&&r.attrs[i]}if(O){let t=e.sliceDoc(n,r).toLowerCase(),i='"',o='"';/^['"]/.test(t)?(a='"'==t[0]?/^[^"]*$/:/^[^']*$/,i="",o=e.sliceDoc(r,r+1)==t[0]?"":t[0],t=t.slice(1),n++):a=/^[^\s<>='"]*$/;for(let e of O)s.push({label:e,apply:i+e+o,type:"constant"})}}return{from:n,to:r,options:s,span:a}}(t,i,"Is"==i.name?n:i.from,n):!e.explicit||"Element"!=r.name&&"Text"!=r.name&&"Document"!=r.name?null:function(e,t,n){let r=[],i=0;for(let n of bh(e.doc,t))r.push({label:"<"+n,type:"type"});for(let n of xh(e.doc,t))r.push({label:"",type:"type",boost:99-i++});return{from:n,to:n,options:r,span:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}(t,i,n)}const vh=Wa.define({parser:fc.configure({props:[Ha.add({Element(e){let t=/^(\s*)(<\/)?/.exec(e.textAfter);return e.node.to<=e.pos+t[0].length?e.continue():e.lineIndent(e.node.from)+(t[2]?0:e.unit)},"OpenTag CloseTag SelfClosingTag":e=>e.column(e.node.from)+e.unit,Document(e){if(e.pos+/\s*/.exec(e.textAfter)[0].length!e.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type),parser:eh.parser},{tag:"style",attrs:e=>(!e.lang||"css"==e.lang)&&(!e.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type)),parser:gu.parser}])}),languageData:{commentTokens:{block:{open:"\x3c!--",close:"--\x3e"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-._"}}),Sh=vh.data.of({autocomplete:Ph});function _h(e={}){let t=vh;return!1===e.matchClosingTags&&(t=t.configure({dialect:"noMatch"})),new Ga(t,[Sh,!1!==e.autoCloseTags?Xh:[],ih().support,$u().support])}const Xh=Qi.inputHandler.of(((e,t,n,r)=>{if(e.composing||e.state.readOnly||t!=n||">"!=r&&"/"!=r||!vh.isActiveAt(e.state,t,-1))return!1;let{state:i}=e,a=i.changeByRange((e=>{var t,n,a;let o,s=qa(i).resolveInner(e.head,-1);if("TagName"!=s.name&&"StartTag"!=s.name||(s=s.parent),">"==r&&"OpenTag"==s.name){if("CloseTag"!=(null===(n=null===(t=s.parent)||void 0===t?void 0:t.lastChild)||void 0===n?void 0:n.name)&&(o=Qh(i.doc,s.parent)))return{range:q.cursor(e.head+1),changes:{from:e.head,insert:`>`}}}else if("/"==r&&"OpenTag"==s.name){let t=s.parent,n=null==t?void 0:t.parent;if(t.from==e.head-1&&"CloseTag"!=(null===(a=n.lastChild)||void 0===a?void 0:a.name)&&(o=Qh(i.doc,n))){let t=`/${o}>`;return{range:q.cursor(e.head+t.length),changes:{from:e.head,insert:t}}}}return{range:e}}));return!a.changes.empty&&(e.dispatch(a,{userEvent:"input.type",scrollIntoView:!0}),!0)}));var Th=Object.freeze({__proto__:null,autoCloseTags:Xh,html:_h,htmlCompletion:Sh,htmlCompletionSource:Ph,htmlLanguage:vh});const Rh=Xa({block:{open:"\x3c!--",close:"--\x3e"}}),Wh=Ol.configure({props:[zc({"Blockquote/...":Ou.quote,HorizontalRule:Ou.contentSeparator,"ATXHeading1/... SetextHeading1/...":Ou.heading1,"ATXHeading2/... SetextHeading2/...":Ou.heading2,"ATXHeading3/...":Ou.heading3,"ATXHeading4/...":Ou.heading4,"ATXHeading5/...":Ou.heading5,"ATXHeading6/...":Ou.heading6,"Comment CommentBlock":Ou.comment,Escape:Ou.escape,Entity:Ou.character,"Emphasis/...":Ou.emphasis,"StrongEmphasis/...":Ou.strong,"Link/... Image/...":Ou.link,"OrderedList/... BulletList/...":Ou.list,"BlockQuote/...":Ou.quote,"InlineCode/... CodeBlock FencedCode":Ou.monospace,URL:Ou.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":Ou.processingInstruction,"CodeInfo LinkLabel":Ou.labelName,LinkTitle:Ou.string,Paragraph:Ou.content}),so.add((e=>{if(e.is("Block")&&!e.is("Document"))return(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})})),Ha.add({Document:()=>null}),_a.add({Document:Rh})]});function qh(e){return new Ta(Rh,e,e.nodeSet.types.find((e=>"Document"==e.name)))}const zh=qh(Wh),Yh=qh(Wh.configure([gl,bl,$l,xl,{props:[zc({"TableDelimiter SubscriptMark SuperscriptMark StrikethroughMark":Ou.processingInstruction,"TableHeader/...":Ou.heading,"Strikethrough/...":Ou.strikethrough,TaskMarker:Ou.atom,Task:Ou.list,Emoji:Ou.character,"Subscript Superscript":Ou.special(Ou.content),TableCell:Ou.content})]}]));function Zh(e,t){return t.sliceString(e.from,e.from+50)}class Uh{constructor(e,t,n,r,i,a,o){this.node=e,this.from=t,this.to=n,this.spaceBefore=r,this.spaceAfter=i,this.type=a,this.item=o}blank(e=!0){let t=this.spaceBefore;if("Blockquote"==this.node.name)t+=">";else for(let e=this.to-this.from-t.length-this.spaceAfter.length;e>0;e--)t+=" ";return t+(e?this.spaceAfter:"")}marker(e,t){let n="OrderedList"==this.node.name?String(+Ih(this.item,e)[2]+t):"";return this.spaceBefore+n+this.type+this.spaceAfter}}function Eh(e,t,n){let r=[];for(let t=e;t&&"Document"!=t.name;t=t.parent)"ListItem"!=t.name&&"Blockquote"!=t.name||r.push(t);let i=[],a=0;for(let e=r.length-1;e>=0;e--){let o,s=r[e],O=a;if("Blockquote"==s.name&&(o=/^\s*>( ?)/.exec(t.slice(a))))a+=o[0].length,i.push(new Uh(s,O,a,"",o[1],">",null));else if("ListItem"==s.name&&"OrderedList"==s.parent.name&&(o=/^(\s*)\d+([.)])(\s*)/.exec(Zh(s,n)))){let e=o[3],t=o[0].length;e.length>=4&&(e=e.slice(0,e.length-4),t-=4),a+=t,i.push(new Uh(s.parent,O,a,o[1],e,o[2],s))}else if("ListItem"==s.name&&"BulletList"==s.parent.name&&(o=/^(\s*)([-+*])(\s+)/.exec(Zh(s,n)))){let e=o[3],t=o[0].length;e.length>4&&(e=e.slice(0,e.length-4),t-=4),a+=t,i.push(new Uh(s.parent,O,a,o[1],e,o[2],s))}}return i}function Ih(e,t){return/^(\s*)(\d+)(?=[.)])/.exec(t.sliceString(e.from,e.from+10))}function Vh(e,t,n){for(let r=-1,i=e;;){if("ListItem"==i.name){let e=Ih(i,t),a=+e[2];if(r>=0){if(a!=r+1)return;n.push({from:i.from+e[1].length,to:i.from+e[0].length,insert:String(r+2)})}r=a}let e=i.nextSibling;if(!e)break;i=e}}const Ch=({state:e,dispatch:t})=>{let n=qa(e),{doc:r}=e,i=null,a=e.changeByRange((t=>{if(!t.empty||!Yh.isActiveAt(e,t.from))return i={range:t};let a=t.from,o=r.lineAt(a),s=Eh(n.resolveInner(a,-1),o.text,r);for(;s.length&&s[s.length-1].from>a-o.from;)s.pop();if(!s.length)return i={range:t};let O=s[s.length-1];if(O.to-O.spaceAfter.length>a-o.from)return i={range:t};if(O.item&&a>=O.to-O.spaceAfter.length&&!/\S/.test(o.text.slice(O.to,a-o.from))){if(O.node.firstChild.to>=a||o.from>0&&!/[^\s>]/.test(r.lineAt(o.from-1).text)){let e,t=s.length>1?s[s.length-2]:null,n="";t&&t.item?(e=o.from+t.from,n=t.marker(r,1)):e=o.from+(t?t.to:0);let i=[{from:e,to:a,insert:n}];return"OrderedList"==O.node.name&&Vh(O.item,r,i),t&&"OrderedList"==t.node.name&&Vh(t.item,r,i),{range:q.cursor(e+n.length),changes:i}}{let t="";for(let e=0,n=s.length-2;e<=n;e++)t+=s[e].blank(e]*/.exec(o.text)[0].length>=O.to)for(let e=0,t=s.length-1;e<=t;e++)c+=e!=t||u?s[e].blank():s[e].marker(r,1);let h=a;for(;h>o.from&&/\s/.test(o.text.charAt(h-o.from-1));)h--;return l.push({from:h,to:a,insert:c}),{range:q.cursor(h+c.length),changes:l}}));return!i&&(t(e.update(a,{scrollIntoView:!0,userEvent:"input"})),!0)};function Ah(e){return"QuoteMark"==e.name||"ListMark"==e.name}const Gh=({state:e,dispatch:t})=>{let n=qa(e),r=null,i=e.changeByRange((t=>{let i=t.from,{doc:a}=e;if(t.empty&&Yh.isActiveAt(e,t.from)){let e=a.lineAt(i),r=Eh(function(e,t){let n,r=e.resolveInner(t,-1),i=t;for(Ah(r)&&(i=r.from,r=r.parent);n=r.childBefore(i);)if(Ah(n))i=n.from;else{if("OrderedList"!=n.name&&"BulletList"!=n.name)break;r=n.lastChild,i=r.to}return r}(n,i),e.text,a);if(r.length){let n=r[r.length-1],a=n.to-n.spaceAfter.length+("OrderedList"==n.node.name?0:1);if(i-e.from>a&&!/\S/.test(e.text.slice(a,i-e.from)))return{range:q.cursor(e.from+a),changes:{from:e.from+a,to:i}};if(i-e.from==a){let r=e.from+n.from;if(n.item&&n.node.from{let r=n&&ja.matchLanguageName(e,n,!0);return r?r.support?r.support.language.parser:Za.getSkippingParser(r.load()):t?t.parser:null}}(t||[],a):void 0;return o.push(function(e){let{codeParser:t,htmlParser:n}=e,r=ma(((e,r)=>{let i=e.type.id;if(!t||i!=aO.CodeBlock&&i!=aO.FencedCode){if(n&&(i==aO.HTMLBlock||i==aO.HTMLTag))return{parser:n,overlay:ll(e.node,e.from,e.to)}}else{let n="";if(i=aO.FencedCode){let t=e.node.getChild(aO.CodeInfo);t&&(n=r.read(t.from,t.to))}let a=t(n);if(a)return{parser:a,overlay:e=>e.type.id==aO.CodeText}}return null}));return{wrap:r}}({codeParser:O,htmlParser:Lh.language.parser})),r&&s.push(M.extend(_i.of(jh))),new Ga(qh(i.configure(o)),s)}var Dh=Object.freeze({__proto__:null,commonmarkLanguage:zh,deleteMarkupBackward:Gh,insertNewlineContinueMarkup:Ch,markdown:Nh,markdownKeymap:jh,markdownLanguage:Yh});function Mh(e){return Promise.resolve().then((function(){return Jd})).then((t=>new Ga(t.StreamLanguage.define(e))))}function Fh(e){return Promise.resolve().then((function(){return Zp})).then((t=>t.sql({dialect:t[e]})))}const Bh=[ja.of({name:"C",extensions:["c","h","ino"],load:()=>Promise.resolve().then((function(){return Lp})).then((e=>e.cpp()))}),ja.of({name:"C++",alias:["cpp"],extensions:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],load:()=>Promise.resolve().then((function(){return Lp})).then((e=>e.cpp()))}),ja.of({name:"CQL",alias:["cassandra"],extensions:["cql"],load:()=>Fh("Cassandra")}),ja.of({name:"CSS",extensions:["css"],load:()=>Promise.resolve().then((function(){return bu})).then((e=>e.css()))}),ja.of({name:"HTML",alias:["xhtml"],extensions:["html","htm","handlebars","hbs"],load:()=>Promise.resolve().then((function(){return Th})).then((e=>e.html()))}),ja.of({name:"Java",extensions:["java"],load:()=>Promise.resolve().then((function(){return Fp})).then((e=>e.java()))}),ja.of({name:"JavaScript",alias:["ecmascript","js","node"],extensions:["js","mjs","cjs"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript()))}),ja.of({name:"JSON",alias:["json5"],extensions:["json","map"],load:()=>Promise.resolve().then((function(){return Kp})).then((e=>e.json()))}),ja.of({name:"JSX",extensions:["jsx"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript({jsx:!0})))}),ja.of({name:"MariaDB SQL",load:()=>Fh("MariaSQL")}),ja.of({name:"Markdown",extensions:["md","markdown","mkd"],load:()=>Promise.resolve().then((function(){return Dh})).then((e=>e.markdown()))}),ja.of({name:"MS SQL",load:()=>Fh("MSSQL")}),ja.of({name:"MySQL",load:()=>Fh("MySQL")}),ja.of({name:"PLSQL",extensions:["pls"],load:()=>Fh("PLSQL")}),ja.of({name:"PostgreSQL",load:()=>Fh("PostgreSQL")}),ja.of({name:"Python",extensions:["BUILD","bzl","py","pyw"],filename:/^(BUCK|BUILD)$/,load:()=>Promise.resolve().then((function(){return cf})).then((e=>e.python()))}),ja.of({name:"Rust",extensions:["rs"],load:()=>Promise.resolve().then((function(){return $f})).then((e=>e.rust()))}),ja.of({name:"SQL",extensions:["sql"],load:()=>Fh("StandardSQL")}),ja.of({name:"SQLite",load:()=>Fh("SQLite")}),ja.of({name:"TSX",extensions:["tsx"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript({jsx:!0,typescript:!0})))}),ja.of({name:"TypeScript",alias:["ts"],extensions:["ts"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript({typescript:!0})))}),ja.of({name:"XML",alias:["rss","wsdl","xsd"],extensions:["xml","xsl","xsd","svg"],load:()=>Promise.resolve().then((function(){return Gf})).then((e=>e.xml()))}),ja.of({name:"APL",extensions:["dyalog","apl"],load:()=>Promise.resolve().then((function(){return Hf})).then((e=>Mh(e.apl)))}),ja.of({name:"PGP",alias:["asciiarmor"],extensions:["asc","pgp","sig"],load:()=>Promise.resolve().then((function(){return em})).then((e=>Mh(e.asciiArmor)))}),ja.of({name:"ASN.1",extensions:["asn","asn1"],load:()=>Promise.resolve().then((function(){return rm})).then((e=>Mh(e.asn1({}))))}),ja.of({name:"Asterisk",filename:/^extensions\.conf$/i,load:()=>Promise.resolve().then((function(){return Om})).then((e=>Mh(e.asterisk)))}),ja.of({name:"Brainfuck",extensions:["b","bf"],load:()=>Promise.resolve().then((function(){return um})).then((e=>Mh(e.brainfuck)))}),ja.of({name:"Cobol",extensions:["cob","cpy"],load:()=>Promise.resolve().then((function(){return bm})).then((e=>Mh(e.cobol)))}),ja.of({name:"C#",alias:["csharp","cs"],extensions:["cs"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.csharp)))}),ja.of({name:"Clojure",extensions:["clj","cljc","cljx"],load:()=>Promise.resolve().then((function(){return qg})).then((e=>Mh(e.clojure)))}),ja.of({name:"ClojureScript",extensions:["cljs"],load:()=>Promise.resolve().then((function(){return qg})).then((e=>Mh(e.clojure)))}),ja.of({name:"Closure Stylesheets (GSS)",extensions:["gss"],load:()=>Promise.resolve().then((function(){return sQ})).then((e=>Mh(e.gss)))}),ja.of({name:"CMake",extensions:["cmake","cmake.in"],filename:/^CMakeLists\.txt$/,load:()=>Promise.resolve().then((function(){return uQ})).then((e=>Mh(e.cmake)))}),ja.of({name:"CoffeeScript",alias:["coffee","coffee-script"],extensions:["coffee"],load:()=>Promise.resolve().then((function(){return RQ})).then((e=>Mh(e.coffeeScript)))}),ja.of({name:"Common Lisp",alias:["lisp"],extensions:["cl","lisp","el"],load:()=>Promise.resolve().then((function(){return AQ})).then((e=>Mh(e.commonLisp)))}),ja.of({name:"Cypher",extensions:["cyp","cypher"],load:()=>Promise.resolve().then((function(){return JQ})).then((e=>Mh(e.cypher)))}),ja.of({name:"Cython",extensions:["pyx","pxd","pxi"],load:()=>Promise.resolve().then((function(){return l$})).then((e=>Mh(e.cython)))}),ja.of({name:"Crystal",extensions:["cr"],load:()=>Promise.resolve().then((function(){return Y$})).then((e=>Mh(e.crystal)))}),ja.of({name:"D",extensions:["d"],load:()=>Promise.resolve().then((function(){return J$})).then((e=>Mh(e.d)))}),ja.of({name:"Dart",extensions:["dart"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.dart)))}),ja.of({name:"diff",extensions:["diff","patch"],load:()=>Promise.resolve().then((function(){return nb})).then((e=>Mh(e.diff)))}),ja.of({name:"Dockerfile",filename:/^Dockerfile$/,load:()=>Promise.resolve().then((function(){return gb})).then((e=>Mh(e.dockerFile)))}),ja.of({name:"DTD",extensions:["dtd"],load:()=>Promise.resolve().then((function(){return wb})).then((e=>Mh(e.dtd)))}),ja.of({name:"Dylan",extensions:["dylan","dyl","intr"],load:()=>Promise.resolve().then((function(){return Ib})).then((e=>Mh(e.dylan)))}),ja.of({name:"EBNF",load:()=>Promise.resolve().then((function(){return Nb})).then((e=>Mh(e.ebnf)))}),ja.of({name:"ECL",extensions:["ecl"],load:()=>Promise.resolve().then((function(){return cx})).then((e=>Mh(e.ecl)))}),ja.of({name:"edn",extensions:["edn"],load:()=>Promise.resolve().then((function(){return qg})).then((e=>Mh(e.clojure)))}),ja.of({name:"Eiffel",extensions:["e"],load:()=>Promise.resolve().then((function(){return mx})).then((e=>Mh(e.eiffel)))}),ja.of({name:"Elm",extensions:["elm"],load:()=>Promise.resolve().then((function(){return zx})).then((e=>Mh(e.elm)))}),ja.of({name:"Erlang",extensions:["erl"],load:()=>Promise.resolve().then((function(){return uw})).then((e=>Mh(e.erlang)))}),ja.of({name:"Esper",load:()=>Promise.resolve().then((function(){return Ww})).then((e=>Mh(e.esper)))}),ja.of({name:"Factor",extensions:["factor"],load:()=>Promise.resolve().then((function(){return zw})).then((e=>Mh(e.factor)))}),ja.of({name:"FCL",load:()=>Promise.resolve().then((function(){return jw})).then((e=>Mh(e.fcl)))}),ja.of({name:"Forth",extensions:["forth","fth","4th"],load:()=>Promise.resolve().then((function(){return Bw})).then((e=>Mh(e.forth)))}),ja.of({name:"Fortran",extensions:["f","for","f77","f90","f95"],load:()=>Promise.resolve().then((function(){return ak})).then((e=>Mh(e.fortran)))}),ja.of({name:"F#",alias:["fsharp"],extensions:["fs"],load:()=>Promise.resolve().then((function(){return ck})).then((e=>Mh(e.fSharp)))}),ja.of({name:"Gas",extensions:["s"],load:()=>Promise.resolve().then((function(){return pk})).then((e=>Mh(e.gas)))}),ja.of({name:"Gherkin",extensions:["feature"],load:()=>Promise.resolve().then((function(){return mk})).then((e=>Mh(e.gherkin)))}),ja.of({name:"Go",extensions:["go"],load:()=>Promise.resolve().then((function(){return vk})).then((e=>Mh(e.go)))}),ja.of({name:"Groovy",extensions:["groovy","gradle"],filename:/^Jenkinsfile$/,load:()=>Promise.resolve().then((function(){return Ak})).then((e=>Mh(e.groovy)))}),ja.of({name:"Haskell",extensions:["hs"],load:()=>Promise.resolve().then((function(){return ay})).then((e=>Mh(e.haskell)))}),ja.of({name:"Haxe",extensions:["hx"],load:()=>Promise.resolve().then((function(){return OP})).then((e=>Mh(e.haxe)))}),ja.of({name:"HXML",extensions:["hxml"],load:()=>Promise.resolve().then((function(){return OP})).then((e=>Mh(e.hxml)))}),ja.of({name:"HTTP",load:()=>Promise.resolve().then((function(){return QP})).then((e=>Mh(e.http)))}),ja.of({name:"IDL",extensions:["pro"],load:()=>Promise.resolve().then((function(){return _P})).then((e=>Mh(e.idl)))}),ja.of({name:"JSON-LD",alias:["jsonld"],extensions:["jsonld"],load:()=>Promise.resolve().then((function(){return zP})).then((e=>Mh(e.jsonld)))}),ja.of({name:"Jinja2",extensions:["j2","jinja","jinja2"],load:()=>Promise.resolve().then((function(){return AP})).then((e=>Mh(e.jinja2)))}),ja.of({name:"Julia",extensions:["jl"],load:()=>Promise.resolve().then((function(){return cv})).then((e=>Mh(e.julia)))}),ja.of({name:"Kotlin",extensions:["kt"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.kotlin)))}),ja.of({name:"LESS",extensions:["less"],load:()=>Promise.resolve().then((function(){return sQ})).then((e=>Mh(e.less)))}),ja.of({name:"LiveScript",alias:["ls"],extensions:["ls"],load:()=>Promise.resolve().then((function(){return kv})).then((e=>Mh(e.liveScript)))}),ja.of({name:"Lua",extensions:["lua"],load:()=>Promise.resolve().then((function(){return zv})).then((e=>Mh(e.lua)))}),ja.of({name:"mIRC",load:()=>Promise.resolve().then((function(){return Lv})).then((e=>Mh(e.mirc)))}),ja.of({name:"Mathematica",extensions:["m","nb","wl","wls"],load:()=>Promise.resolve().then((function(){return nS})).then((e=>Mh(e.mathematica)))}),ja.of({name:"Modelica",extensions:["mo"],load:()=>Promise.resolve().then((function(){return $S})).then((e=>Mh(e.modelica)))}),ja.of({name:"MUMPS",extensions:["mps"],load:()=>Promise.resolve().then((function(){return XS})).then((e=>Mh(e.mumps)))}),ja.of({name:"mbox",extensions:["mbox"],load:()=>Promise.resolve().then((function(){return AS})).then((e=>Mh(e.mbox)))}),ja.of({name:"Nginx",filename:/nginx.*\.conf$/i,load:()=>Promise.resolve().then((function(){return JS})).then((e=>Mh(e.nginx)))}),ja.of({name:"NSIS",extensions:["nsh","nsi"],load:()=>Promise.resolve().then((function(){return t_})).then((e=>Mh(e.nsis)))}),ja.of({name:"NTriples",extensions:["nt","nq"],load:()=>Promise.resolve().then((function(){return g_})).then((e=>Mh(e.ntriples)))}),ja.of({name:"Objective-C",alias:["objective-c","objc"],extensions:["m"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.objectiveC)))}),ja.of({name:"Objective-C++",alias:["objective-c++","objc++"],extensions:["mm"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.objectiveCpp)))}),ja.of({name:"OCaml",extensions:["ml","mli","mll","mly"],load:()=>Promise.resolve().then((function(){return ck})).then((e=>Mh(e.oCaml)))}),ja.of({name:"Octave",extensions:["m"],load:()=>Promise.resolve().then((function(){return W_})).then((e=>Mh(e.octave)))}),ja.of({name:"Oz",extensions:["oz"],load:()=>Promise.resolve().then((function(){return H_})).then((e=>Mh(e.oz)))}),ja.of({name:"Pascal",extensions:["p","pas"],load:()=>Promise.resolve().then((function(){return aX})).then((e=>Mh(e.pascal)))}),ja.of({name:"Perl",extensions:["pl","pm"],load:()=>Promise.resolve().then((function(){return gX})).then((e=>Mh(e.perl)))}),ja.of({name:"Pig",extensions:["pig"],load:()=>Promise.resolve().then((function(){return TX})).then((e=>Mh(e.pig)))}),ja.of({name:"PowerShell",extensions:["ps1","psd1","psm1"],load:()=>Promise.resolve().then((function(){return HX})).then((e=>Mh(e.powerShell)))}),ja.of({name:"Properties files",alias:["ini","properties"],extensions:["properties","ini","in"],load:()=>Promise.resolve().then((function(){return KX})).then((e=>Mh(e.properties)))}),ja.of({name:"ProtoBuf",extensions:["proto"],load:()=>Promise.resolve().then((function(){return rT})).then((e=>Mh(e.protobuf)))}),ja.of({name:"Puppet",extensions:["pp"],load:()=>Promise.resolve().then((function(){return cT})).then((e=>Mh(e.puppet)))}),ja.of({name:"Q",extensions:["q"],load:()=>Promise.resolve().then((function(){return xT})).then((e=>Mh(e.q)))}),ja.of({name:"R",alias:["rscript"],extensions:["r","R"],load:()=>Promise.resolve().then((function(){return UT})).then((e=>Mh(e.r)))}),ja.of({name:"RPM Changes",load:()=>Promise.resolve().then((function(){return FT})).then((e=>Mh(e.rpmChanges)))}),ja.of({name:"RPM Spec",extensions:["spec"],load:()=>Promise.resolve().then((function(){return FT})).then((e=>Mh(e.rpmSpec)))}),ja.of({name:"Ruby",alias:["jruby","macruby","rake","rb","rbx"],extensions:["rb"],load:()=>Promise.resolve().then((function(){return uR})).then((e=>Mh(e.ruby)))}),ja.of({name:"SAS",extensions:["sas"],load:()=>Promise.resolve().then((function(){return QR})).then((e=>Mh(e.sas)))}),ja.of({name:"Scala",extensions:["scala"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.scala)))}),ja.of({name:"Scheme",extensions:["scm","ss"],load:()=>Promise.resolve().then((function(){return ER})).then((e=>Mh(e.scheme)))}),ja.of({name:"SCSS",extensions:["scss"],load:()=>Promise.resolve().then((function(){return sQ})).then((e=>Mh(e.sCSS)))}),ja.of({name:"Shell",alias:["bash","sh","zsh"],extensions:["sh","ksh","bash"],filename:/^PKGBUILD$/,load:()=>Promise.resolve().then((function(){return BR})).then((e=>Mh(e.shell)))}),ja.of({name:"Sieve",extensions:["siv","sieve"],load:()=>Promise.resolve().then((function(){return iW})).then((e=>Mh(e.sieve)))}),ja.of({name:"Smalltalk",extensions:["st"],load:()=>Promise.resolve().then((function(){return mW})).then((e=>Mh(e.smalltalk)))}),ja.of({name:"Solr",load:()=>Promise.resolve().then((function(){return yW})).then((e=>Mh(e.solr)))}),ja.of({name:"SML",extensions:["sml","sig","fun","smackspec"],load:()=>Promise.resolve().then((function(){return ck})).then((e=>Mh(e.sml)))}),ja.of({name:"SPARQL",alias:["sparul"],extensions:["rq","sparql"],load:()=>Promise.resolve().then((function(){return zW})).then((e=>Mh(e.sparql)))}),ja.of({name:"Spreadsheet",alias:["excel","formula"],load:()=>Promise.resolve().then((function(){return YW})).then((e=>Mh(e.spreadsheet)))}),ja.of({name:"SQL",extensions:["sql"],load:()=>Promise.resolve().then((function(){return Ww})).then((e=>Mh(e.standardSQL)))}),ja.of({name:"SQLite",load:()=>Promise.resolve().then((function(){return Ww})).then((e=>Mh(e.sqlite)))}),ja.of({name:"Squirrel",extensions:["nut"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.squirrel)))}),ja.of({name:"Stylus",extensions:["styl"],load:()=>Promise.resolve().then((function(){return Iq})).then((e=>Mh(e.stylus)))}),ja.of({name:"Swift",extensions:["swift"],load:()=>Promise.resolve().then((function(){return sz})).then((e=>Mh(e.swift)))}),ja.of({name:"sTeX",load:()=>Promise.resolve().then((function(){return uz})).then((e=>Mh(e.stex)))}),ja.of({name:"LaTeX",alias:["tex"],extensions:["text","ltx","tex"],load:()=>Promise.resolve().then((function(){return uz})).then((e=>Mh(e.stex)))}),ja.of({name:"SystemVerilog",extensions:["v","sv","svh"],load:()=>Promise.resolve().then((function(){return bz})).then((e=>Mh(e.verilog)))}),ja.of({name:"Tcl",extensions:["tcl"],load:()=>Promise.resolve().then((function(){return Tz})).then((e=>Mh(e.tcl)))}),ja.of({name:"Textile",extensions:["textile"],load:()=>Promise.resolve().then((function(){return Vz})).then((e=>Mh(e.textile)))}),ja.of({name:"TiddlyWiki",load:()=>Promise.resolve().then((function(){return fY})).then((e=>Mh(e.tiddlyWiki)))}),ja.of({name:"Tiki wiki",load:()=>Promise.resolve().then((function(){return XY})).then((e=>Mh(e.tiki)))}),ja.of({name:"TOML",extensions:["toml"],load:()=>Promise.resolve().then((function(){return TY})).then((e=>Mh(e.toml)))}),ja.of({name:"troff",extensions:["1","2","3","4","5","6","7","8","9"],load:()=>Promise.resolve().then((function(){return YY})).then((e=>Mh(e.troff)))}),ja.of({name:"TTCN",extensions:["ttcn","ttcn3","ttcnpp"],load:()=>Promise.resolve().then((function(){return lZ})).then((e=>Mh(e.ttcn)))}),ja.of({name:"TTCN_CFG",extensions:["cfg"],load:()=>Promise.resolve().then((function(){return yZ})).then((e=>Mh(e.ttcnCfg)))}),ja.of({name:"Turtle",extensions:["ttl"],load:()=>Promise.resolve().then((function(){return WZ})).then((e=>Mh(e.turtle)))}),ja.of({name:"Web IDL",extensions:["webidl"],load:()=>Promise.resolve().then((function(){return eU})).then((e=>Mh(e.webIDL)))}),ja.of({name:"VB.NET",extensions:["vb"],load:()=>Promise.resolve().then((function(){return SU})).then((e=>Mh(e.vb)))}),ja.of({name:"VBScript",extensions:["vbs"],load:()=>Promise.resolve().then((function(){return RU})).then((e=>Mh(e.vbScript)))}),ja.of({name:"Velocity",extensions:["vtl"],load:()=>Promise.resolve().then((function(){return GU})).then((e=>Mh(e.velocity)))}),ja.of({name:"Verilog",extensions:["v"],load:()=>Promise.resolve().then((function(){return bz})).then((e=>Mh(e.verilog)))}),ja.of({name:"VHDL",extensions:["vhd","vhdl"],load:()=>Promise.resolve().then((function(){return rE})).then((e=>Mh(e.vhdl)))}),ja.of({name:"XQuery",extensions:["xy","xquery"],load:()=>Promise.resolve().then((function(){return bE})).then((e=>Mh(e.xQuery)))}),ja.of({name:"Yacas",extensions:["ys"],load:()=>Promise.resolve().then((function(){return WE})).then((e=>Mh(e.yacas)))}),ja.of({name:"YAML",alias:["yml"],extensions:["yaml","yml"],load:()=>Promise.resolve().then((function(){return YE})).then((e=>Mh(e.yaml)))}),ja.of({name:"Z80",extensions:["z80"],load:()=>Promise.resolve().then((function(){return IE})).then((e=>Mh(e.z80)))}),ja.of({name:"mscgen",extensions:["mscgen","mscin","msc"],load:()=>Promise.resolve().then((function(){return ME})).then((e=>Mh(e.mscgen)))}),ja.of({name:"xu",extensions:["xu"],load:()=>Promise.resolve().then((function(){return ME})).then((e=>Mh(e.xu)))}),ja.of({name:"msgenny",extensions:["msgenny"],load:()=>Promise.resolve().then((function(){return ME})).then((e=>Mh(e.msgenny)))}),ja.of({name:"WebAssembly",extensions:["wat","wast"],load:()=>Promise.resolve().then((function(){return BE})).then((e=>Mh(e.wast)))})];class Hh extends Re{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}}Hh.prototype.elementClass="",Hh.prototype.toDOM=void 0,Hh.prototype.mapMode=k.TrackBefore,Hh.prototype.startSide=Hh.prototype.endSide=-1,Hh.prototype.point=!0;const Kh=U.define(),Jh=U.define(),ed=Qi.baseTheme({".cm-gutters":{display:"flex",height:"100%",boxSizing:"border-box",left:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#999",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",height:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"}}),td=U.define({combine:e=>e.some((e=>e))});function nd(e){let t=[rd,ed];return e&&!1===e.fixed&&t.push(td.of(!0)),t}const rd=Sn.fromClass(class{constructor(e){this.view=e,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.gutters=e.state.facet(Jh).map((t=>new sd(e,t)));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!e.state.facet(td),this.fixed&&(this.dom.style.position="sticky"),e.scrollDOM.insertBefore(this.dom,e.contentDOM),this.syncGutters()}update(e){this.updateGutters(e)&&this.syncGutters()}syncGutters(){let e=Ye.iter(this.view.state.facet(Kh),this.view.viewport.from),t=[],n=this.gutters.map((e=>new od(e,this.view.viewport)));this.view.viewportLines((r=>{let i;if(Array.isArray(r.type)){for(let e of r.type)if(e.type==en.Text){i=e;break}}else i=r.type==en.Text?r:void 0;if(i){t.length&&(t=[]),ad(e,t,r.from);for(let e of n)e.line(this.view,i,t)}}),0);for(let e of n)e.finish();this.dom.style.minHeight=this.view.contentHeight+"px",this.view.state.facet(td)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"")}updateGutters(e){let t=e.startState.facet(Jh),n=e.state.facet(Jh),r=e.docChanged||e.heightChanged||e.viewportChanged||!Ye.eq(e.startState.facet(Kh),e.state.facet(Kh),e.view.viewport.from,e.view.viewport.to);if(t==n)for(let t of this.gutters)t.update(e)&&(r=!0);else{r=!0;let i=[];for(let r of n){let n=t.indexOf(r);n<0?i.push(new sd(this.view,r)):(this.gutters[n].update(e),i.push(this.gutters[n]))}for(let e of this.gutters)e.dom.remove();for(let e of i)this.dom.appendChild(e.dom);this.gutters=i}return r}destroy(){this.dom.remove()}},{provide:yn.scrollMargins.from((e=>0!=e.gutters.length&&e.fixed?e.view.textDirection==Cn.LTR?{left:e.dom.offsetWidth}:{right:e.dom.offsetWidth}:null))});function id(e){return Array.isArray(e)?e:[e]}function ad(e,t,n){for(;e.value&&e.from<=n;)e.from==n&&t.push(e.value),e.next()}class od{constructor(e,t){this.gutter=e,this.localMarkers=[],this.i=0,this.height=0,this.cursor=Ye.iter(e.markers,t.from)}line(e,t,n){this.localMarkers.length&&(this.localMarkers=[]),ad(this.cursor,this.localMarkers,t.from);let r=n.length?this.localMarkers.concat(n):this.localMarkers,i=this.gutter.config.lineMarker(e,t,r);i&&r.unshift(i);let a=this.gutter;if(0==r.length&&!a.config.renderEmptyElements)return;let o=t.top-this.height;if(this.i==a.elements.length){let n=new Od(e,t.height,o,r);a.elements.push(n),a.dom.appendChild(n.dom)}else{let n=a.elements[this.i];(function(e,t){if(e.length!=t.length)return!1;for(let n=0;nthis.i;)e.dom.removeChild(e.elements.pop().dom)}}class sd{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let n in t.domEventHandlers)this.dom.addEventListener(n,(r=>{let i=e.visualLineAtHeight(r.clientY,e.contentDOM.getBoundingClientRect().top);t.domEventHandlers[n](e,i,r)&&r.preventDefault()}));this.markers=id(t.markers(e)),t.initialSpacer&&(this.spacer=new Od(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=id(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let t=this.config.updateSpacer(this.spacer.markers[0],e);t!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[t])}let n=e.view.viewport;return!Ye.eq(this.markers,t,n.from,n.to)}}class Od{constructor(e,t,n,r){this.height=-1,this.above=0,this.dom=document.createElement("div"),this.update(e,t,n,r)}update(e,t,n,r){if(this.height!=t&&(this.dom.style.height=(this.height=t)+"px"),this.above!=n&&(this.dom.style.marginTop=(this.above=n)?n+"px":""),this.markers!=r){this.markers=r;for(let e;e=this.dom.lastChild;)e.remove();let t="cm-gutterElement";for(let n of r){n.toDOM&&this.dom.appendChild(n.toDOM(e));let r=n.elementClass;r&&(t+=" "+r)}this.dom.className=t}}}const ld=U.define(),cd=U.define({combine:e=>ye(e,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let n=Object.assign({},e);for(let e in t){let r=n[e],i=t[e];n[e]=r?(e,t,n)=>r(e,t,n)||i(e,t,n):i}return n}})});class ud extends Hh{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(e){return document.createTextNode(this.number)}}function hd(e,t){return e.state.facet(cd).formatNumber(t,e.state)}const dd=Jh.compute([cd],(e=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers:e=>e.state.facet(ld),lineMarker:(e,t,n)=>n.some((e=>e.toDOM))?null:new ud(hd(e,e.state.doc.lineAt(t.from).number)),initialSpacer:e=>new ud(hd(e,fd(e.state.doc.lines))),updateSpacer(e,t){let n=hd(t.view,fd(t.view.state.doc.lines));return n==e.number?e:new ud(n)},domEventHandlers:e.facet(cd).domEventHandlers})));function pd(e={}){return[cd.of(e),nd(),dd]}function fd(e){let t=9;for(;t{let t=[],n=-1;for(let r of e.selection.ranges)if(r.empty){let i=e.doc.lineAt(r.head).from;i>n&&(n=i,t.push(md.range(i)))}return Ye.of(t)}));const Qd="function"==typeof String.prototype.normalize?e=>e.normalize("NFKD"):e=>e;class $d{constructor(e,t,n=0,r=e.length,i){this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=i?e=>i(Qd(e)):Qd,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return O(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=l(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=c(e);let r=this.normalize(t);for(let e=0,i=n;;e++){let a=r.charCodeAt(e),o=this.match(a,i);if(o)return this.value=o,this;if(e==r.length-1)break;i==n&&eye(e,bd,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})});function wd(e){let t=[vd,Pd];return e&&t.push(xd.of(e)),t}const kd=tn.mark({class:"cm-selectionMatch"}),yd=tn.mark({class:"cm-selectionMatch cm-selectionMatch-main"}),Pd=Sn.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(xd),{state:n}=e,r=n.selection;if(r.ranges.length>1)return tn.none;let i,a=r.main,o=null;if(a.empty){if(!t.highlightWordAroundCursor)return tn.none;let e=n.wordAt(a.head);if(!e)return tn.none;o=n.charCategorizer(a.head),i=n.sliceDoc(e.from,e.to)}else{let e=a.to-a.from;if(e200)return tn.none;if(i=n.sliceDoc(a.from,a.to).trim(),!i)return tn.none}let s=[];for(let r of e.visibleRanges){let e=new $d(n.doc,i,r.from,r.to);for(;!e.next().done;){let{from:r,to:i}=e.value;if((!o||(0==r||o(n.sliceDoc(r-1,r))!=$e.Word)&&(i==n.doc.length||o(n.sliceDoc(i,i+1))!=$e.Word))&&(o&&r<=a.from&&i>=a.to?s.push(yd.range(r,i)):(r>=a.to||i<=a.from)&&s.push(kd.range(r,i)),s.length>t.maxMatches))return tn.none}}return tn.set(s)}},{decorations:e=>e.decorations}),vd=Qi.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}});function Sd(e,t){return({state:n,dispatch:r})=>{let i=e(t,n.selection.ranges,n);return!!i&&(r(n.update(i)),!0)}}const _d=Sd(qd,0),Xd=Sd(Wd,0),Td=[{key:"Mod-/",run:e=>{let t=Rd(e.state);return t.line?_d(e):!!t.block&&Xd(e)}},{key:"Alt-A",run:Xd}];function Rd(e,t=e.selection.main.head){let n=e.languageDataAt("commentTokens",t);return n.length?n[0]:{}}function Wd(e,t,n){let r=t.map((e=>Rd(n,e.from).block));if(!r.every((e=>e)))return null;let i=t.map(((e,t)=>function(e,{open:t,close:n},r,i){let a,o,s=e.sliceDoc(r-50,r),O=e.sliceDoc(i,i+50),l=/\s*$/.exec(s)[0].length,c=/^\s*/.exec(O)[0].length,u=s.length-l;if(s.slice(u-t.length,u)==t&&O.slice(c,c+n.length)==n)return{open:{pos:r-l,margin:l&&1},close:{pos:i+c,margin:c&&1}};i-r<=100?a=o=e.sliceDoc(r,i):(a=e.sliceDoc(r,r+50),o=e.sliceDoc(i-50,i));let h=/^\s*/.exec(a)[0].length,d=/\s*$/.exec(o)[0].length,p=o.length-d-n.length;return a.slice(h,h+t.length)==t&&o.slice(p,p+n.length)==n?{open:{pos:r+h+t.length,margin:/\s/.test(a.charAt(h+t.length))?1:0},close:{pos:i-d-n.length,margin:/\s/.test(o.charAt(p-1))?1:0}}:null}(n,r[t],e.from,e.to)));if(2!=e&&!i.every((e=>e))){let e=0;return n.changeByRange((t=>{let{open:n,close:a}=r[e++];if(i[e])return{range:t};let o=n.length+1;return{changes:[{from:t.from,insert:n+" "},{from:t.to,insert:" "+a}],range:q.range(t.anchor+o,t.head+o)}}))}if(1!=e&&i.some((e=>e))){let e=[];for(let t,n=0;ni&&(e==a||a>s.from)){i=s.from;let e=Rd(n,t).line;if(!e)continue;let a=/^\s*/.exec(s.text)[0].length,O=a==s.length,l=s.text.slice(a,a+e.length)==e?a:-1;ae.comment<0&&(!e.empty||e.single)))){let e=[];for(let{line:t,token:n,indent:i,empty:a,single:o}of r)!o&&a||e.push({from:t.from+i,insert:n+" "});let t=n.changes(e);return{changes:t,selection:n.selection.map(t,1)}}if(1!=e&&r.some((e=>e.comment>=0))){let e=[];for(let{line:t,comment:n,token:i}of r)if(n>=0){let r=t.from+n,a=r+i.length;" "==t.text[a-t.from]&&a++,e.push({from:r,to:a})}return{changes:e}}return null}var zd=[{type:"undo",title:"撤销",innerHTML:''},{type:"redo",title:"重做",innerHTML:''},{type:"bold",title:"加粗",innerHTML:''},{type:"italic",title:"倾斜",innerHTML:''},{type:"delete",title:"删除",innerHTML:''},{type:"code-inline",title:"行内代码",innerHTML:''},{type:"hr",title:"横线",innerHTML:''},{type:"quote",title:"引用",innerHTML:''},{type:"title",title:"标题",innerHTML:''},{type:"ordered-list",title:"有序列表",innerHTML:''},{type:"unordered-list",title:"无序列表",innerHTML:''},{type:"link",title:"超链接",innerHTML:''},{type:"image",title:"插入图片",innerHTML:''},{type:"table",title:"表格",innerHTML:''},{type:"code-block",title:"代码块",innerHTML:''},{type:"html",title:"原生HTML",innerHTML:''},{type:"time",title:"当前时间",innerHTML:''},{type:"indent",title:"缩进",innerHTML:''},{type:"character",title:"实体符号",innerHTML:''},{type:"emoji",title:"符号表情",innerHTML:''},{type:"expression",title:"图片表情",innerHTML:''},{type:"task-no",title:"任务 - 未完成",innerHTML:''},{type:"task-yes",title:"任务 - 已完成",innerHTML:''},{type:"mtitle",title:"居中标题",innerHTML:''},{type:"dplayer",title:"M3U8/MP4视频",innerHTML:''},{type:"bilibili",title:"哔哩哔哩视频",innerHTML:''},{type:"netease-list",title:"网易云列表",innerHTML:''},{type:"netease-single",title:"网易云单首",innerHTML:''},{type:"abtn",title:"多彩按钮",innerHTML:''},{type:"anote",title:"便条按钮",innerHTML:''},{type:"dotted",title:"彩色虚线",innerHTML:''},{type:"hide",title:"回复可见",innerHTML:''},{type:"card-default",title:"默认卡片",innerHTML:''},{type:"message",title:"消息提示",innerHTML:''},{type:"progress",title:"进度条",innerHTML:''},{type:"callout",title:"标注",innerHTML:''},{type:"mp3",title:"外部音乐",innerHTML:''},{type:"tabs",title:"标签页",innerHTML:''},{type:"card-list",title:"卡片列表",innerHTML:''},{type:"timeline",title:"时间轴",innerHTML:''},{type:"copy",title:"复制文本",innerHTML:''},{type:"card-describe",title:"描述卡片",innerHTML:''},{type:"lamp",title:"跑马灯",innerHTML:''},{type:"collapse",title:"折叠面板",innerHTML:''},{type:"cloud",title:"云盘下载",innerHTML:''},{type:"gird",title:"宫格",innerHTML:''},{type:"alert",title:"提示",innerHTML:''},{type:"clean",title:"清屏",innerHTML:''},{type:"download",title:"下载",innerHTML:''},{type:"fullScreen",title:"全屏/取消全屏",innerHTML:''},{type:"preview",title:"预览/取消预览",innerHTML:''},{type:"draft",title:"保存草稿",innerHTML:''},{type:"publish",title:"发布文章",innerHTML:''},{type:"about",title:"关于",innerHTML:''}];const Yd=new HyperDown,Zd=window.JoeConfig.playerAPI;function Ud(e){if(!window.JoeConfig.canPreview)return $(".cm-preview-content").html("1. 预览已默认关闭
2. 点击上方预览按钮启用预览
3. 若编辑器卡顿可尝试关闭预览");-1!==e.indexOf(" ")&&(e=e.replace(/ /g," ")),-1!==(e=(e=(e=Yd.makeHtml(e)).replace(/\:\:\(\s*(呵呵|哈哈|吐舌|太开心|笑眼|花心|小乖|乖|捂嘴笑|滑稽|你懂的|不高兴|怒|汗|黑线|泪|真棒|喷|惊哭|阴险|鄙视|酷|啊|狂汗|what|疑问|酸爽|呀咩爹|委屈|惊讶|睡觉|笑尿|挖鼻|吐|犀利|小红脸|懒得理|勉强|爱心|心碎|玫瑰|礼物|彩虹|太阳|星星月亮|钱币|茶杯|蛋糕|大拇指|胜利|haha|OK|沙发|手纸|香蕉|便便|药丸|红领巾|蜡烛|音乐|灯泡|开心|钱|咦|呼|冷|生气|弱|吐血|狗头)\s*\)/g,(function(e,t){return t=encodeURI(t).replace(/%/g,""),``}))).replace(/\:\@\(\s*(高兴|小怒|脸红|内伤|装大款|赞一个|害羞|汗|吐血倒地|深思|不高兴|无语|亲亲|口水|尴尬|中指|想一想|哭泣|便便|献花|皱眉|傻笑|狂汗|吐|喷水|看不见|鼓掌|阴暗|长草|献黄瓜|邪恶|期待|得意|吐舌|喷血|无所谓|观察|暗地观察|肿包|中枪|大囧|呲牙|抠鼻|不说话|咽气|欢呼|锁眉|蜡烛|坐等|击掌|惊喜|喜极而泣|抽烟|不出所料|愤怒|无奈|黑线|投降|看热闹|扇耳光|小眼睛|中刀)\s*\)/g,(function(e,t){return t=encodeURI(t).replace(/%/g,""),``}))).indexOf("{lamp")&&(e=e.replace(/{lamp\/}/g,'')),-1!==e.indexOf("{x}")&&(e=e.replace(/{x}/g,'')),-1!==e.indexOf("{ }")&&(e=e.replace(/{ }/g,'')),-1!==e.indexOf("{mtitle")&&(e=e.replace(/{mtitle([^}]*)\/}/g,"")),-1!==e.indexOf("{dplayer")&&(e=e.replace(/{dplayer([^}]*)\/}/g,'')),-1!==e.indexOf("{bilibili")&&(e=e.replace(/{bilibili([^}]*)\/}/g,"")),-1!==e.indexOf("{music-list")&&(e=e.replace(/{music-list([^}]*)\/}/g,"")),-1!==e.indexOf("{music")&&(e=e.replace(/{music([^}]*)\/}/g,"")),-1!==e.indexOf("{mp3")&&(e=e.replace(/{mp3([^}]*)\/}/g,"")),-1!==e.indexOf("{abtn")&&(e=e.replace(/{abtn([^}]*)\/}/g,"")),-1!==e.indexOf("{anote")&&(e=e.replace(/{anote([^}]*)\/}/g,"")),-1!==e.indexOf("{copy")&&(e=e.replace(/{copy([^}]*)\/}/g,"")),-1!==e.indexOf("{dotted")&&(e=e.replace(/{dotted([^}]*)\/}/g,"")),-1!==e.indexOf("{message")&&(e=e.replace(/{message([^}]*)\/}/g,"")),-1!==e.indexOf("{progress")&&(e=e.replace(/{progress([^}]*)\/}/g,"")),-1!==e.indexOf("{cloud")&&(e=e.replace(/{cloud([^}]*)\/}/g,"")),-1!==e.indexOf("{hide")&&(e=e.replace(/{hide[^}]*}([\s\S]*?){\/hide}/g,"")),-1!==e.indexOf("{card-default")&&(e=e.replace(/{card-default([^}]*)}([\s\S]*?){\/card-default}/g,'
')),-1!==e.indexOf("{callout")&&(e=e.replace(/{callout([^}]*)}([\s\S]*?){\/callout}/g,'
')),-1!==e.indexOf("{card-describe")&&(e=e.replace(/{card-describe([^}]*)}([\s\S]*?){\/card-describe}/g,'
')),-1!==e.indexOf("{tabs")&&(e=e.replace(/{tabs}([\s\S]*?){\/tabs}/g,'
')),-1!==e.indexOf("{card-list")&&(e=e.replace(/{card-list}([\s\S]*?){\/card-list}/g,'
')),-1!==e.indexOf("{timeline")&&(e=e.replace(/{timeline}([\s\S]*?){\/timeline}/g,'
')),-1!==e.indexOf("{collapse")&&(e=e.replace(/{collapse}([\s\S]*?){\/collapse}/g,'
')),-1!==e.indexOf("{alert")&&(e=e.replace(/{alert([^}]*)}([\s\S]*?){\/alert}/g,'
')),-1!==e.indexOf("{gird")&&(e=e.replace(/{gird([^}]*)}([\s\S]*?){\/gird}/g,'
')),$(".cm-preview-content").html(e),$(".cm-preview-content p:empty").remove(),Prism.highlightAll()}class Ed extends class{constructor(){$("body").append('\n\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
×
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t
\n\t\t'),$(".cm-modal__wrapper-footer--cancle, .cm-modal__wrapper-header--close").on("click",(()=>$(".cm-modal").removeClass("active"))),$(".cm-modal__wrapper-footer--confirm").on("click",(()=>{this.options.confirm(),$(".cm-modal").removeClass("active")}))}_openModal(e={}){this.options=Object.assign({title:"提示",innerHtml:"内容",hasFooter:!0,confirm:()=>{},handler:()=>{}},e),$(".cm-modal__wrapper-header--text").html(this.options.title),$(".cm-modal__wrapper-bodyer").html(this.options.innerHtml),this.options.hasFooter?$(".cm-modal__wrapper-footer").show():$(".cm-modal__wrapper-footer").hide(),$(".cm-modal").addClass("active"),this.options.handler()}_getLineCh(e){const t=e.state.selection.main.head;return t-e.state.doc.lineAt(t).from}_replaceSelection(e,t){e.dispatch(e.state.replaceSelection(t))}_setCursor(e,t){e.dispatch({selection:{anchor:t}})}_getSelection(e){return e.state.sliceDoc(e.state.selection.main.from,e.state.selection.main.to)}_insetAmboText(e,t){const n=e.state.selection.main.head,r=this._getSelection(e);this._replaceSelection(e,` ${t+r+t} `),""===r&&this._setCursor(e,n+t.length+1),e.focus()}_createTableLists(e,t,n="",r){$.ajax({url:t,dataType:"json",success:t=>{let i="",a="";for(let e in t){const r=t[e].split(" ");i+=`
${e}
`,a+=`
${r.map((e=>`
${e}
`)).join(" ")}
`}this._openModal({title:r,hasFooter:!1,innerHtml:`
${i}
${a}`,handler:()=>{$(".cm-modal__wrapper-bodyer .tabbar-item").on("click",(function(){const e=$(this),t=e.attr("data-show"),n=$(".cm-modal__wrapper-bodyer .tabbar");e.addClass("active").siblings().removeClass("active"),n.stop().animate({scrollLeft:e[0].offsetLeft-n[0].offsetWidth/2+e[0].offsetWidth/2-15}),$(".cm-modal__wrapper-bodyer .lists").removeClass("active"),$(".cm-modal__wrapper-bodyer .lists[data-show='"+t+"']").addClass("active")}));const t=this;$(".cm-modal__wrapper-bodyer .lists-item").on("click",(function(){const n=$(this).attr("data-text");t._replaceSelection(e,` ${n} `),$(".cm-modal").removeClass("active"),e.focus()}))}})}})}_updateScroller(e,t){const n=e.scrollTop/(e.scrollHeight-e.offsetHeight);t.scrollTop=n*(t.scrollHeight-t.offsetHeight)}handleFullScreen(e){e.toggleClass("active"),$("body").toggleClass("fullscreen"),$(".cm-container").toggleClass("fullscreen"),$(".cm-preview").width(0)}handlePublish(){$("#btn-submit").click()}handleUndo(e){js(e),e.focus()}handleRedo(e){Ls(e),e.focus()}handleIndent(e){this._replaceSelection(e," "),e.focus()}handleTime(e){const t=new Date,n=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,0),i=String(t.getDate()).padStart(2,0),a=String(t.getHours()).padStart(2,0),o=String(t.getMinutes()).padStart(2,0),s=String(t.getSeconds()).padStart(2,0),O=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"][t.getDay()],l=`${this._getLineCh(e)?"\n":""}${n}-${r}-${i} ${a}:${o}:${s} ${O}\n`;this._replaceSelection(e,l),e.focus()}handleHr(e){const t=(this._getLineCh(e)?"\n":"")+"\n------------\n\n";this._replaceSelection(e,t),e.focus()}handleClean(e){e.dispatch({changes:{from:0,to:e.state.doc.length,insert:""}}),e.focus()}handleOrdered(e){const t=this._getSelection(e);if(""===t){const t=(this._getLineCh(e)?"\n\n":"")+"1. ";this._replaceSelection(e,t)}else{const n=t.split("\n");for(let e=0,t=n.length;e ");else{const n=t.split("\n");for(let e=0,t=n.length;e "+n[e];const r=(this._getLineCh(e)?"\n":"")+n.join("\n");this._replaceSelection(e,r)}e.focus()}handleDownload(e){const t=$("#title").val()||"新文章",n=document.createElement("a");let r=new Blob([e.state.doc.toString()]);n.download=t+".md",n.href=URL.createObjectURL(r),n.click(),URL.revokeObjectURL(r)}handleTitle(e,t){const n=$(`\n\t\t\t
\n\t\t\t\t${t.innerHTML}\n\t\t\t\t
\n\t\t\t\t\t
H1
\n\t\t\t\t\t
H2
\n\t\t\t\t\t
H3
\n\t\t\t\t\t
H4
\n\t\t\t\t\t
H5
\n\t\t\t\t\t
H6
\n\t\t\t\t
\n\t\t\t
\n\t\t`);n.on("click",(function(e){e.stopPropagation(),$(this).toggleClass("active")}));const r=this;n.on("click",".cm-tools__dropdown-item",(function(t){t.stopPropagation();const i=$(this).attr("data-text");r._getLineCh(e)?r._replaceSelection(e,"\n\n"+i):r._replaceSelection(e,i),n.removeClass("active"),e.focus()})),$(document).on("click",(()=>n.removeClass("active"))),$(".cm-tools").append(n)}handleLink(e){this._openModal({title:"插入链接",innerHtml:'\n
\n \n \n
\n
\n \n \n
\n ',confirm:()=>{const t=$(".cm-modal input[name='title']").val()||"Test",n=$(".cm-modal input[name='url']").val()||"http://";this._replaceSelection(e,` [${t}](${n}) `),e.focus()}})}handleImage(e){this._openModal({title:"插入图片",innerHtml:'\n
\n \n \n
\n
\n \n \n
\n ',confirm:()=>{const t=$(".cm-modal input[name='title']").val()||"Test",n=$(".cm-modal input[name='url']").val()||"http://";this._replaceSelection(e,` ![${t}](${n}) `),e.focus()}})}handleTable(e){this._openModal({title:"插入表格",innerHtml:'\n
\n \n \n \n \n
\n ',confirm:()=>{let t=$(".cm-modal input[name='row']").val(),n=$(".cm-modal input[name='column']").val();isNaN(t)&&(t=3),isNaN(n)&&(n=3);let r="",i="",a="";for(let e=0;e\n \n \n \n
\n \n \n
\n ',confirm:()=>{const t=`{gird column="${$(".cm-modal input[name='column']").val()}" gap="${$(".cm-modal input[name='gap']").val()}"}\n{gird-item}\n 宫格内容一\n{/gird-item}\n{gird-item}\n 宫格内容二\n{/gird-item}\n{gird-item}\n 宫格内容三\n{/gird-item}\n{/gird}`;this._getLineCh(e)?this._replaceSelection(e,"\n\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCodeBlock(e){const t="rss+atom+ssml+mathml+svg+html+markup+css+clike+javascript+abap+abnf+actionscript+ada+agda+al+antlr4+apacheconf+apex+apl+applescript+aql+arduino+arff+asciidoc+aspnet+asm6502+autohotkey+autoit+bash+basic+batch+bbcode+birb+bison+bnf+brainfuck+brightscript+bro+bsl+c+csharp+cpp+cfscript+chaiscript+cil+clojure+cmake+cobol+coffeescript+concurnas+csp+coq+crystal+css-extras+csv+cypher+d+dart+dataweave+dax+dhall+diff+django+dns-zone-file+docker+dot+ebnf+editorconfig+eiffel+ejs+elixir+elm+etlua+erb+erlang+excel-formula+fsharp+factor+false+firestore-security-rules+flow+fortran+ftl+gml+gcode+gdscript+gedcom+gherkin+git+glsl+go+graphql+groovy+haml+handlebars+haskell+haxe+hcl+hlsl+http+hpkp+hsts+ichigojam+icon+icu-message-format+idris+ignore+inform7+ini+io+j+java+javadoc+javadoclike+javastacktrace+jexl+jolie+jq+jsdoc+js-extras+json+json5+jsonp+jsstacktrace+js-templates+julia+keyman+kotlin+kumir+latex+latte+less+lilypond+liquid+lisp+livescript+llvm+log+lolcode+lua+makefile+markdown+markup-templating+matlab+mel+mizar+mongodb+monkey+moonscript+n1ql+n4js+nand2tetris-hdl+naniscript+nasm+neon+nevod+nginx+nim+nix+nsis+objectivec+ocaml+opencl+openqasm+oz+parigp+parser+pascal+pascaligo+psl+pcaxis+peoplecode+perl+php+phpdoc+php-extras+plsql+powerquery+powershell+processing+prolog+promql+properties+protobuf+pug+puppet+pure+purebasic+purescript+python+qsharp+q+qml+qore+r+racket+jsx+tsx+reason+regex+rego+renpy+rest+rip+roboconf+robotframework+ruby+rust+sas+sass+scss+scala+scheme+shell-session+smali+smalltalk+smarty+sml+solidity+solution-file+soy+sparql+splunk-spl+sqf+sql+squirrel+stan+iecst+stylus+swift+t4-templating+t4-cs+t4-vb+tap+tcl+tt2+textile+toml+turtle+twig+typescript+typoscript+unrealscript+uri+v+vala+vbnet+velocity+verilog+vhdl+vim+visual-basic+warpscript+wasm+wiki+xeora+xml-doc+xojo+xquery+yaml+yang+zig".split("+").sort(((e,t)=>e.localeCompare(t))),n=sessionStorage.getItem("selectType")||"";let r="";t.forEach((e=>{r+=``})),this._openModal({title:"插入代码块",innerHtml:`\n
\n \n \n
\n `,confirm:()=>{const t=$(".cm-modal select[name='type']").val();if(!t)return;const n=`\`\`\`${t}\ncode here...\n\`\`\``;this._getLineCh(e)?this._replaceSelection(e,"\n\n"+n):this._replaceSelection(e,n),e.focus(),sessionStorage.setItem("selectType",t)}})}handleAbout(){this._openModal({title:"关于",hasFooter:!1,innerHtml:"\n
    \n
  • 短代码功能正在开发中...
  • \n
  • 仅支持网络图片粘贴上传(截图等)
  • \n
  • 本编辑器仅供Joe主题使用,未经允许不得移植至其他主题!
  • \n
\n "})}handleTask(e,t){const n=t?"{x}":"{ }";this._replaceSelection(e,` ${n} `),e.focus()}handleNetease(e,t){this._openModal({title:t?"网易云歌单":"网易云单首",innerHtml:`\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n `,confirm:()=>{const n=$(".cm-modal input[name='id']").val(),r=$(".cm-modal input[name='color']").val(),i=$(".cm-modal select[name='autoplay']").val(),a=`\n{${t?"music-list":"music"} id="${n}" color="${r}" ${"1"===i?'autoplay="autoplay"':""}/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+a):this._replaceSelection(e,a),e.focus()}})}handleBilibili(e){this._openModal({title:"BiliBili视频",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{bilibili bvid="${$(".cm-modal input[name='bvid']").val()}" page="${$(".cm-modal input[name='page']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleDplayer(e){this._openModal({title:"M3U8/MP4视频",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{dplayer src="${$(".cm-modal input[name='src']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleDraft(){$("#btn-save").click()}handleExpression(e){$.ajax({url:window.JoeConfig.expressionAPI,dataType:"json",success:t=>{let n="",r="";for(let e in t){const i=t[e];n+=`
${e}
`,r+=`
${i.map((t=>`
${"颜文字"===e?t.icon:``}
`)).join(" ")}
`}this._openModal({title:"普通表情",hasFooter:!1,innerHtml:`
${n}
${r}`,handler:()=>{$(".cm-modal__wrapper-bodyer .tabbar-item").on("click",(function(){const e=$(this).attr("data-show");$(this).addClass("active").siblings().removeClass("active"),$(".cm-modal__wrapper-bodyer .lists").removeClass("active"),$(".cm-modal__wrapper-bodyer .lists[data-show='"+e+"']").addClass("active")}));const t=this;$(".cm-modal__wrapper-bodyer .lists-item").on("click",(function(){const n=$(this).attr("data-text");t._replaceSelection(e,` ${n} `),$(".cm-modal").removeClass("active"),e.focus()}))}})}})}handleMtitle(e){this._openModal({title:"居中标题",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{mtitle title="${$(".cm-modal input[name='text']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleHtml(e){const t=(this._getLineCh(e)?"\n":"")+'!!!\n

居中

\n

居右

\n颜色大小\n!!!\n';this._replaceSelection(e,t),e.focus()}handleHide(e){const t=(this._getLineCh(e)?"\n\n":"\n")+"{hide}\n需要隐藏的内容\n{/hide}\n\n";this._replaceSelection(e,t),e.focus()}handleAbtn(e){this._openModal({title:"多彩按钮",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tfontawesome.dashgame.com\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=` {abtn icon="${$(".cm-modal input[name='icon']").val()}" color="${$(".cm-modal input[name='color']").val()}" href="${$(".cm-modal input[name='href']").val()}" radius="${$(".cm-modal input[name='radius']").val()}" content="${$(".cm-modal input[name='content']").val()}"/} `;this._replaceSelection(e,t),e.focus()}})}handleAnote(e){this._openModal({title:"便条按钮",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tfontawesome.dashgame.com\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=` {anote icon="${$(".cm-modal input[name='icon']").val()}" href="${$(".cm-modal input[name='href']").val()}" type="${$(".cm-modal select[name='type']").val()}" content="${$(".cm-modal input[name='content']").val()}"/} `;this._replaceSelection(e,t),e.focus()}})}handleDotted(e){this._openModal({title:"彩色虚线",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{dotted startColor="${$(".cm-modal input[name='startColor']").val()}" endColor="${$(".cm-modal input[name='endColor']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCardDefault(e){this._openModal({title:"默认卡片",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{card-default label="${$(".cm-modal input[name='label']").val()}" width="${$(".cm-modal input[name='width']").val()}"}\n卡片内容\n{/card-default}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleMessage(e){this._openModal({title:"消息提示",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{message type="${$(".cm-modal select[name='type']").val()}" content="${$(".cm-modal textarea[name='content']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleProgress(e){this._openModal({title:"进度条",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{progress percentage="${$(".cm-modal input[name='percentage']").val()}" color="${$(".cm-modal input[name='color']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCallout(e){this._openModal({title:"插入标注",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{callout color="${$(".cm-modal input[name='color']").val()}"}\n标注内容\n{/callout}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleMp3(e){this._openModal({title:"插入音乐",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{mp3 name="${$(".cm-modal input[name='name']").val()}" url="${$(".cm-modal input[name='url']").val()}" cover="${$(".cm-modal input[name='cover']").val()}" theme="${$(".cm-modal input[name='theme']").val()}" ${"1"===$(".cm-modal select[name='autoplay']").val()?'autoplay="autoplay"':""}/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleTabs(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{tabs}\n{tabs-pane label="标签一"}\n 标签一内容\n{/tabs-pane}\n{tabs-pane label="标签二"}\n 标签二内容\n{/tabs-pane}\n{/tabs}\n\n';this._replaceSelection(e,t),e.focus()}handleCardList(e){const t=(this._getLineCh(e)?"\n\n":"\n")+"{card-list}\n{card-list-item}\n 列表一内容\n{/card-list-item}\n{card-list-item}\n 列表二内容\n{/card-list-item}\n{/card-list}\n\n";this._replaceSelection(e,t),e.focus()}handleTimeline(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{timeline}\n{timeline-item color="#19be6b"}\n 正式上线\n{/timeline-item}\n{timeline-item color="#ed4014"}\n 删库跑路\n{/timeline-item}\n{/timeline}\n\n';this._replaceSelection(e,t),e.focus()}handleCardDescribe(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{card-describe title="卡片描述"}\n卡片内容\n{/card-describe}\n\n';this._replaceSelection(e,t),e.focus()}handleCopy(e){this._openModal({title:"复制文本",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{copy showText="${$(".cm-modal input[name='showText']").val()}" copyText="${$(".cm-modal textarea[name='copyText']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleLamp(e){const t=(this._getLineCh(e)?"\n\n":"\n")+"{lamp/}\n\n";this._replaceSelection(e,t),e.focus()}handleCollapse(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{collapse}\n{collapse-item label="折叠标题一" open}\n 折叠内容一\n{/collapse-item}\n{collapse-item label="折叠标题二"}\n 折叠内容二\n{/collapse-item}\n{/collapse}\n\n';this._replaceSelection(e,t),e.focus()}handleAlert(e){this._openModal({title:"警告提示",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{alert type="${$(".cm-modal select[name='type']").val()}"}\n警告提示\n{/alert}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCloud(e){this._openModal({title:"网盘下载",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=$(".cm-modal select[name='type']").val(),n=`\n{cloud title="${$(".cm-modal input[name='title']").val()}" type="${t}" url="${$(".cm-modal input[name='url']").val()}" password="${$(".cm-modal input[name='password']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+n):this._replaceSelection(e,n),e.focus()}})}}{constructor(){super(),this.plugins=[lu,As(),go(),[Qi.inputHandler.of(Xo),Po],qi(),Gi,pd(),gd,wd()],this.keymaps=[{key:"Tab",run:({state:e,dispatch:t})=>e.selection.ranges.some((e=>!e.empty))?qs({state:e,dispatch:t}):(t(e.update(e.replaceSelection(" "))),!0),shift:zs}],this._isPasting=!1,this.init_ViewPort(),this.init_Editor(),this.init_Preview(),this.init_Tools(),this.init_Insert(),this.init_AutoSave()}init_ViewPort(){$('meta[name="viewport"]').length>0?$('meta[name="viewport"]').attr("content","width=device-width, user-scalable=no, initial-scale=1.0, shrink-to-fit=no, viewport-fit=cover"):$("head").append('')}init_Editor(){$("#text").before('\n\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t
\n\t\t'),Ud(null);let e=null,t=null;const n=new Qi({state:ke.create({doc:$("#text").val(),extensions:[...this.plugins,Nh({base:Yh,codeLanguages:Bh}),_i.of([...this.keymaps,...Zs,...Td,...rO,...To]),Qi.updateListener.of((n=>{n.docChanged&&e!==n.state.doc.toString()&&(e=n.state.doc.toString(),clearTimeout(t),t=setTimeout(Ud.bind(null,n.state.doc.toString()),350))})),Qi.domEventHandlers({paste:e=>{const t=e.clipboardData;if(!t||!t.items)return;const r=t.items;if(!r.length)return;let i=null;for(let t=0;t{const e=$.ajaxSettings.xhr();if(e.upload)return e.upload.addEventListener("progress",(e=>{let t=e.loaded/e.total*100;$(".cm-progress-left").width(t/2+"%"),$(".cm-progress-right").width(t/2+"%")}),!1),e},success:e=>{$(".cm-progress-left").width(0),$(".cm-progress-right").width(0),this._isPasting=!1;const t=`${super._getLineCh(n)?"\n":""}![${e[1].title}](${e[0]})\n`;super._replaceSelection(n,t),n.focus()},error:()=>{$(".cm-progress-left").width(0),$(".cm-progress-right").width(0),this._isPasting=!1}})},scroll:e=>{window.JoeConfig.canPreview&&e&&e.target&&"cm-scroller"===e.target.className&&(window.requestAnimationFrame?window.requestAnimationFrame((()=>super._updateScroller(e.target,document.querySelector(".cm-preview")))):super._updateScroller(e.target,document.querySelector(".cm-preview")))}})]})});$(".cm-mainer").prepend(n.dom),$("#text")[0].form&&$("#text")[0].form.addEventListener("submit",(()=>$("#text").val(n.state.doc.toString()))),this.cm=n}init_Preview(){const e=(e,t,n)=>{let r=t+(e-n);r<=0&&(r=0),r>=$(".cm-mainer").outerWidth()-16&&(r=$(".cm-mainer").outerWidth()-16),$(".cm-preview").width(r)};$(".cm-resize").on({mousedown:t=>{t.preventDefault(),t.stopPropagation();const n=$(".cm-preview").outerWidth(),r=t.clientX;return $(".cm-preview").addClass("move"),document.onmousemove=t=>{window.requestAnimationFrame?requestAnimationFrame((()=>e(r,n,t.clientX))):e(r,n,t.clientX)},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,$(".cm-preview").removeClass("move")},!1},touchstart:t=>{t.preventDefault(),t.stopPropagation();const n=$(".cm-preview").outerWidth(),r=t.originalEvent.targetTouches[0].clientX;return $(".cm-preview").addClass("move"),document.ontouchmove=t=>{window.requestAnimationFrame?requestAnimationFrame((()=>e(r,n,t.targetTouches[0].clientX))):e(r,n,t.targetTouches[0].clientX)},document.ontouchend=()=>{document.ontouchmove=null,document.ontouchend=null,$(".cm-preview").removeClass("move")},!1}})}init_Tools(){zd.forEach((e=>{if("title"===e.type)super.handleTitle(this.cm,e);else{const t=$(`
${e.innerHTML}
`);t.on("click",(n=>{switch(n.preventDefault(),e.type){case"fullScreen":super.handleFullScreen(t);break;case"publish":super.handlePublish();break;case"undo":super.handleUndo(this.cm);break;case"redo":super.handleRedo(this.cm);break;case"time":super.handleTime(this.cm);break;case"bold":super._insetAmboText(this.cm,"**");break;case"italic":super._insetAmboText(this.cm,"*");break;case"delete":super._insetAmboText(this.cm,"~~");break;case"code-inline":super._insetAmboText(this.cm,"`");break;case"indent":super.handleIndent(this.cm);break;case"hr":super.handleHr(this.cm);break;case"clean":super.handleClean(this.cm);break;case"ordered-list":super.handleOrdered(this.cm);break;case"unordered-list":super.handleUnordered(this.cm);break;case"quote":super.handleQuote(this.cm);break;case"download":super.handleDownload(this.cm);break;case"link":super.handleLink(this.cm);break;case"image":super.handleImage(this.cm);break;case"table":super.handleTable(this.cm);break;case"code-block":super.handleCodeBlock(this.cm);break;case"about":super.handleAbout();break;case"character":super._createTableLists(this.cm,JoeConfig.characterAPI,"星星符号","字符大全");break;case"emoji":super._createTableLists(this.cm,JoeConfig.emojiAPI,"表情","符号表情(需数据库支持)");break;case"task-no":super.handleTask(this.cm,!1);break;case"task-yes":super.handleTask(this.cm,!0);break;case"netease-list":super.handleNetease(this.cm,!0);break;case"netease-single":super.handleNetease(this.cm,!1);break;case"bilibili":super.handleBilibili(this.cm);break;case"dplayer":super.handleDplayer(this.cm);break;case"draft":super.handleDraft();break;case"expression":super.handleExpression(this.cm);break;case"mtitle":super.handleMtitle(this.cm);break;case"html":super.handleHtml(this.cm);break;case"abtn":super.handleAbtn(this.cm);break;case"anote":super.handleAnote(this.cm);break;case"dotted":super.handleDotted(this.cm);break;case"hide":super.handleHide(this.cm);break;case"card-default":super.handleCardDefault(this.cm);break;case"message":super.handleMessage(this.cm);break;case"progress":super.handleProgress(this.cm);break;case"callout":super.handleCallout(this.cm);break;case"mp3":super.handleMp3(this.cm);break;case"tabs":super.handleTabs(this.cm);break;case"card-list":super.handleCardList(this.cm);break;case"timeline":super.handleTimeline(this.cm);break;case"copy":super.handleCopy(this.cm);break;case"card-describe":super.handleCardDescribe(this.cm);break;case"lamp":super.handleLamp(this.cm);break;case"collapse":super.handleCollapse(this.cm);break;case"cloud":super.handleCloud(this.cm);break;case"gird":super.handleGird(this.cm);break;case"alert":super.handleAlert(this.cm);break;case"preview":t.toggleClass("active"),t.hasClass("active")?window.JoeConfig.canPreview=!0:window.JoeConfig.canPreview=!1,Ud(this.cm.state.doc.toString()),window.JoeConfig.canPreview&&super._updateScroller(document.querySelector(".cm-scroller"),document.querySelector(".cm-preview"))}})),$(".cm-tools").append(t)}}))}init_Insert(){Typecho.insertFileToEditor=(e,t,n)=>{const r=`${super._getLineCh(this.cm)?"\n":""}${n?"!":""}[${e}](${t})\n`;super._replaceSelection(this.cm,r),this.cm.focus()}}init_AutoSave(){if(1!==window.JoeConfig.autoSave)return;const e=$("#text")[0].form;let t=$(e).find('input[name="cid"]').val(),n=null,r=$(e).find('input[name="title"]').val(),i=$(e).find('textarea[name="text"]').val();setInterval((()=>{$(e).find('input[name="cid"]').val(t),$(e).find('textarea[name="text"]').val(this.cm.state.doc.toString());let a=$(e).find('input[name="title"]').val(),o=$(e).find('textarea[name="text"]').val();""!==a.trim()&&(r===a&&i===o||(r=a,i=o,$(".cm-autosave").addClass("active"),$.ajax({url:e.action,type:"POST",data:$(e).serialize()+"&do=save",dataType:"json",success:e=>{t=e.cid,n=setTimeout((()=>{$(".cm-autosave").removeClass("active"),clearTimeout(n)}),1e3)}})))}),5e3)}}function Id(e,t,n,r=0,i=0){null==t&&-1==(t=e.search(/[^\s\u00a0]/))&&(t=e.length);let a=i;for(let i=r;inew Ed));class Vd{constructor(e,t,n){this.string=e,this.tabSize=t,this.indentUnit=n,this.pos=0,this.start=0,this.lastColumnPos=0,this.lastColumnValue=0}eol(){return this.pos>=this.string.length}sol(){return 0==this.pos}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.post}eatSpace(){let e=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e}skipToEnd(){this.pos=this.string.length}skipTo(e){let t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0}backUp(e){this.pos-=e}column(){return this.lastColumnPosn?e.toLowerCase():e;return r(this.string.substr(this.pos,e.length))==r(e)?(!1!==t&&(this.pos+=e.length),!0):null}{let n=this.string.slice(this.pos).match(e);return n&&n.index>0?null:(n&&!1!==t&&(this.pos+=n[0].length),n)}}current(){return this.string.slice(this.start,this.pos)}}function Cd(e){if("object"!=typeof e)return e;let t={};for(let n in e){let r=e[n];t[n]=r instanceof Array?r.slice():r}return t}class Ad extends Ta{constructor(e){let t,n=Xa(e.languageData),r={token:(i=e).token,blankLine:i.blankLine||(()=>{}),startState:i.startState||(()=>!0),copyState:i.copyState||Cd,indent:i.indent||(()=>null),languageData:i.languageData||{}};var i;super(n,new class extends pa{createParse(e,n,r){return new Ld(t,e,n,r)}},function(e){let t=Bi.define({id:Md.length,name:"Document",props:[_a.add((()=>e))]});return Md.push(t),t}(n),[La.of(((e,t)=>this.getIndent(e,t)))]),t=this,this.streamParser=r,this.stateAfter=new Di({perNode:!0})}static define(e){return new Ad(e)}getIndent(e,t){let n=qa(e.state),r=n.resolve(t);for(;r&&r.type!=this.topNode;)r=r.parent;if(!r)return null;let i,a,o=Gd(this,n,0,r.from,t);if(o?(a=o.state,i=o.pos+1):(a=this.streamParser.startState(e.unit),i=0),t-i>1e4)return null;for(;i=r&&n+t.length<=i&&t.prop(e.stateAfter);if(a)return{state:e.streamParser.copyState(a),pos:n+t.length};for(let a=t.children.length-1;a>=0;a--){let o=t.children[a],s=n+t.positions[a],O=o instanceof Ji&&s=t.length)return t;i||t.type!=e.topNode||(i=!0);for(let a=t.children.length-1;a>=0;a--){let o,s=t.positions[a]+n,O=t.children[a];if(sn&&Gd(e,r.tree,0-r.offset,n,a);if(o&&(t=jd(e,r.tree,n+r.offset,o.pos+r.offset,!1)))return{state:o.state,tree:t}}return{state:e.streamParser.startState(r?Da(r):4),tree:Ji.empty}}(e,n,a,null==i?void 0:i.state);this.state=o,this.parsedPos=this.chunkStart=a+s.length,s.length&&(this.chunks.push(s),this.chunkPos.push(0)),i&&this.parsedPos=t?this.finish():e&&this.parsedPos>e.viewport.to?(e.skipUntilInView(this.parsedPos,t),this.finish()):null}stopAt(e){this.stoppedAt=e}lineAfter(e){let t=this.input.chunk(e);if(this.input.lineChunks)"\n"==t&&(t="");else{let e=t.indexOf("\n");e>-1&&(t=t.slice(0,e))}return e+t.length<=this.to?t:t.slice(0,this.to-e)}nextLine(){let e=this.parsedPos,t=this.lineAfter(e),n=e+t.length;for(let e=this.rangeIndex;;){let r=this.ranges[e].to;if(r>=n)break;if(t=t.slice(0,r-(n-t.length)),e++,e==this.ranges.length)break;let i=this.ranges[e].from,a=this.lineAfter(i);t+=a,n=i+a.length}return{line:t,end:n}}skipGapsTo(e,t,n){for(;;){let r=this.ranges[this.rangeIndex].to,i=e+t;if(n>0?r>i:r>=i)break;t+=this.ranges[++this.rangeIndex].from-r}return t}emitToken(e,t,n,r,i){if(this.ranges.length>1){t+=i=this.skipGapsTo(t,i,1);let e=this.chunk.length;n+=i=this.skipGapsTo(n,i,-1),r+=this.chunk.length-e}return this.chunk.push(e,t,n,r),i}parseLine(e){let{line:t,end:n}=this.nextLine(),r=0,{streamParser:i}=this.lang,a=new Vd(t,e?e.state.tabSize:4,e?Da(e.state):2);if(a.eol())i.blankLine(this.state,a.indentUnit);else for(;!a.eol();){let e=Nd(i.token,a,this.state);e&&(r=this.emitToken(Hd(e),this.parsedPos+a.start,this.parsedPos+a.pos,4,r))}this.parsedPos=n,this.parsedPost.start)return r}throw new Error("Stream parser failed to advance stream.")}const Dd=Object.create(null),Md=[Bi.none],Fd=new Hi(Md),Bd=[];function Hd(e){return e?Dd[e]||(Dd[e]=function(e){let t=null;for(let n of e.split(".")){let e=Ou[n];e?"function"==typeof e?t?t=e(t):Kd(n,`Modifier ${n} used at start of tag`):t?Kd(n,`Tag ${n} used as modifier`):t=e:Kd(n,`Unknown highlighting tag ${n}`)}if(!t)return 0;let n=e.replace(/ /g,"_"),r=Bi.define({id:Md.length,name:n,props:[zc({[n]:t})]});return Md.push(r),r.id}(e)):0}for(let[e,t]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","typeName"],["attribute","propertyName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])Dd[e]=Hd(t);function Kd(e,t){Bd.indexOf(e)>-1||Bd.push(e)}var Jd=Object.freeze({__proto__:null,StreamLanguage:Ad,StringStream:Vd});function ep(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57}function tp(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function np(e,t,n){for(let r=!1;;){if(e.next<0)return;if(e.next==t&&!r)return void e.advance();r=n&&!r&&92==e.next,e.advance()}}function rp(e,t){for(;95==e.next||ep(e.next);)null!=t&&(t+=String.fromCharCode(e.next)),e.advance();return t}function ip(e,t){for(;;){if(46==e.next){if(t)break;t=!0}else if(e.next<48||e.next>57)break;e.advance()}if(69==e.next||101==e.next)for(e.advance(),43!=e.next&&45!=e.next||e.advance();e.next>=48&&e.next<=57;)e.advance()}function ap(e){for(;!(e.next<0||10==e.next);)e.advance()}function op(e,t){for(let n=0;n!=&|~^/",specialVar:"?",identifierQuotes:'"',words:Op(cp,lp)};function hp(e){return new Rl((t=>{var n;let{next:r}=t;if(t.advance(),op(t.next,sp)){for(;op(t.next,sp);)t.advance();t.acceptToken(34)}else if(39==r||34==r&&e.doubleQuotedStrings)np(t,r,e.backslashEscapes),t.acceptToken(3);else if(35==r&&e.hashComments||47==r&&47==t.next&&e.slashComments)ap(t),t.acceptToken(1);else if(45!=r||45!=t.next||e.spaceAfterDashes&&32!=t.peek(2))if(47==r&&42==t.next){t.advance();for(let e=-1,n=1;!(t.next<0);)if(t.advance(),42==e&&47==t.next){if(n--,!n)break;e=-1}else 47==e&&42==t.next?(n++,e=-1):e=t.next;t.acceptToken(2)}else if(101!=r&&69!=r||39!=t.next)if(110!=r&&78!=r||39!=t.next||!e.charSetCasts){if(95==r&&e.charSetCasts)for(let n=0;;n++){if(39==t.next&&n>1){t.advance(),np(t,39,e.backslashEscapes),t.acceptToken(3);break}if(!ep(t.next))break;t.advance()}else if(40==r)t.acceptToken(7);else if(41==r)t.acceptToken(8);else if(123==r)t.acceptToken(9);else if(125==r)t.acceptToken(10);else if(91==r)t.acceptToken(11);else if(93==r)t.acceptToken(12);else if(59==r)t.acceptToken(13);else if(48==r&&(98==t.next||66==t.next)||(98==r||66==r)&&39==t.next){let e=39==t.next;for(t.advance();48==t.next||49==t.next;)t.advance();e&&39==t.next&&t.advance(),t.acceptToken(4)}else if(48==r&&(120==t.next||88==t.next)||(120==r||88==r)&&39==t.next){let e=39==t.next;for(t.advance();tp(t.next);)t.advance();e&&39==t.next&&t.advance(),t.acceptToken(4)}else if(46==r&&t.next>=48&&t.next<=57)ip(t,!0),t.acceptToken(4);else if(46==r)t.acceptToken(14);else if(r>=48&&r<=57)ip(t,!1),t.acceptToken(4);else if(op(r,e.operatorChars)){for(;op(t.next,e.operatorChars);)t.advance();t.acceptToken(15)}else if(op(r,e.specialVar))t.next==r&&t.advance(),function(e){if(39==e.next||34==e.next||96==e.next){let t=e.next;e.advance(),np(e,t,!1)}else rp(e)}(t),t.acceptToken(17);else if(op(r,e.identifierQuotes))np(t,r,!1),t.acceptToken(19);else if(58==r||44==r)t.acceptToken(16);else if(ep(r)){let i=rp(t,String.fromCharCode(r));t.acceptToken(null!==(n=e.words[i.toLowerCase()])&&void 0!==n?n:18)}}else t.advance(),np(t,39,e.backslashEscapes),t.acceptToken(3);else t.advance(),np(t,39,!0);else ap(t),t.acceptToken(1)}))}const dp=hp(up);function pp(e){let t=e.cursor.moveTo(e.from,-1);for(;/Comment/.test(t.name);)t.moveTo(t.from,-1);return t.node}function fp(e){let t=/^[`'"](.*)[`'"]$/.exec(e);return t?t[1]:e}function mp(e,t){return e?t.map((t=>Object.assign(Object.assign({},t),{label:e+t.label+e,apply:void 0}))):t}const gp=/^\w*$/,Qp=/^[`'"]?\w*[`'"]?$/;function $p(e,t,n){let r=Object.create(null);for(let t in e)r[t]=e[t].map((e=>"string"==typeof e?{label:e,type:"property"}:e));let i=(t||Object.keys(r).map((e=>({label:e,type:"type"})))).concat(n&&r[n]||[]);return e=>{let{parent:t,from:n,quoted:a,empty:o}=function(e,t){let n=qa(e).resolveInner(t,-1),r=!1;if("Identifier"==n.name||"QuotedIdentifier"==n.name){r=!1;let t=null,i=pp(n);if(i&&"."==i.name){let n=pp(i);(n&&"Identifier"==n.name||"QuotedIdentifier"==n.name)&&(t=fp(e.sliceDoc(n.from,n.to).toLowerCase()))}return{parent:t,from:n.from,quoted:"QuotedIdentifier"==n.name?e.sliceDoc(n.from,n.from+1):null}}if("."==n.name){let r=pp(n);if(r&&"Identifier"==r.name||"QuotedIdentifier"==r.name)return{parent:fp(e.sliceDoc(r.from,r.to).toLowerCase()),from:t,quoted:null}}else r=!0;return{parent:null,from:t,quoted:null,empty:r}}(e.state,e.pos);if(o&&!e.explicit)return null;let s=i;if(t){let e=r[t];if(!e)return null;s=e}return{from:n,to:a&&e.state.sliceDoc(e.pos,e.pos+1)==a?e.pos+1:void 0,options:mp(a,s),span:a?Qp:gp}}}function bp(e,t){let n=Object.keys(e).map((n=>({label:t?n.toUpperCase():n,type:21==e[n]?"type":20==e[n]?"keyword":"variable",boost:-1})));return zu(["QuotedIdentifier","SpecialVar","String","LineComment","BlockComment","."],qu(n))}let xp=Ll.deserialize({version:13,states:"%dQ]QQOOO#kQRO'#DQO#rQQO'#CuO%RQQO'#CvO%YQQO'#CwO%aQQO'#CxOOQQ'#DQ'#DQOOQQ'#C{'#C{O&lQRO'#CyOOQQ'#Ct'#CtOOQQ'#Cz'#CzQ]QQOOQOQQOOO&vQQO,59aO'RQQO,59aO'WQQO'#DQOOQQ,59b,59bO'eQQO,59bOOQQ,59c,59cO'lQQO,59cOOQQ,59d,59dO'sQQO,59dOOQQ-E6y-E6yOOQQ,59`,59`OOQQ-E6x-E6xOOQQ'#C|'#C|OOQQ1G.{1G.{O&vQQO1G.{OOQQ1G.|1G.|OOQQ1G.}1G.}OOQQ1G/O1G/OP'zQQO'#C{POQQ-E6z-E6zOOQQ7+$g7+$g",stateData:"(R~OrOSPOSQOS~ORUOSUOTUOUUOVROXSOZTO]XO^QO_UO`UOaPObPOcPOdUOeUOfUO~O^]ORtXStXTtXUtXVtXXtXZtX]tX_tX`tXatXbtXctXdtXetXftX~OqtX~P!dOa^Ob^Oc^O~ORUOSUOTUOUUOVROXSOZTO^QO_UO`UOa_Ob_Oc_OdUOeUOfUO~OW`O~P#}OYbO~P#}O[dO~P#}ORUOSUOTUOUUOVROXSOZTO^QO_UO`UOaPObPOcPOdUOeUOfUO~O]gOqmX~P%hOaiObiOciO~O^kO~OWtXYtX[tX~P!dOWlO~P#}OYmO~P#}O[nO~P#}O]gO~P#}O",goto:"#YuPPPPPPPPPPPPPPPPPPPPPPPPvzzzz!W![!b!vPPP!|TYOZeUORSTWZaceoT[OZQZORhZSWOZQaRQcSQeTZfWaceoQj]RqkeVORSTWZaceo",nodeNames:"⚠ LineComment BlockComment String Number Bool Null ( ) [ ] { } ; . Operator Punctuation SpecialVar Identifier QuotedIdentifier Keyword Type Builtin Script Statement CompositeIdentifier Parens Braces Brackets Statement",maxTerm:36,skippedNodes:[0,1,2],repeatNodeCount:3,tokenData:"RORO",tokenizers:[0,dp],topRules:{Script:[0,23]},tokenPrec:0}).configure({props:[Ha.add({Statement:oo()}),so.add({Statement:e=>({from:e.firstChild.to,to:e.to}),BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({Keyword:Ou.keyword,Type:Ou.typeName,Builtin:Ou.standard(Ou.name),Bool:Ou.bool,Null:Ou.null,Number:Ou.number,String:Ou.string,Identifier:Ou.name,QuotedIdentifier:Ou.special(Ou.string),SpecialVar:Ou.special(Ou.name),LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Operator:Ou.operator,"Semi Punctuation":Ou.punctuation,"( )":Ou.paren,"{ }":Ou.brace,"[ ]":Ou.squareBracket})]});class wp{constructor(e,t){this.dialect=e,this.language=t}get extension(){return this.language.extension}static define(e){let t=function(e,t,n,r){let i={};for(let t in up)i[t]=(e.hasOwnProperty(t)?e:up)[t];return t&&(i.words=Op(t,n||"",r)),i}(e,e.keywords,e.types,e.builtin),n=Wa.define({parser:xp.configure({tokenizers:[{from:dp,to:hp(t)}]}),languageData:{commentTokens:{line:"--",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}});return new wp(t,n)}}function kp(e,t=!1){return e.language.data.of({autocomplete:bp(e.dialect.words,t)})}function yp(e){return e.schema?(e.dialect||Pp).language.data.of({autocomplete:$p(e.schema,e.tables,e.defaultTable)}):[]}const Pp=wp.define({}),vp=wp.define({charSetCasts:!0,operatorChars:"+-*/<>=~!@#%^&|`?",specialVar:"",keywords:cp+"a abort abs absent access according ada admin aggregate alias also always analyse analyze array_agg array_max_cardinality asensitive assert assignment asymmetric atomic attach attribute attributes avg backward base64 begin_frame begin_partition bernoulli bit_length blocked bom c cache called cardinality catalog_name ceil ceiling chain char_length character_length character_set_catalog character_set_name character_set_schema characteristics characters checkpoint class class_origin cluster coalesce cobol collation_catalog collation_name collation_schema collect column_name columns command_function command_function_code comment comments committed concurrently condition_number configuration conflict connection_name constant constraint_catalog constraint_name constraint_schema contains content control conversion convert copy corr cost covar_pop covar_samp csv cume_dist current_catalog current_row current_schema cursor_name database datalink datatype datetime_interval_code datetime_interval_precision db debug defaults defined definer degree delimiter delimiters dense_rank depends derived detach detail dictionary disable discard dispatch dlnewcopy dlpreviouscopy dlurlcomplete dlurlcompleteonly dlurlcompletewrite dlurlpath dlurlpathonly dlurlpathwrite dlurlscheme dlurlserver dlvalue document dump dynamic_function dynamic_function_code element elsif empty enable encoding encrypted end_frame end_partition endexec enforced enum errcode error event every exclude excluding exclusive exp explain expression extension extract family file filter final first_value flag floor following force foreach fortran forward frame_row freeze fs functions fusion g generated granted greatest groups handler header hex hierarchy hint id ignore ilike immediately immutable implementation implicit import include including increment indent index indexes info inherit inherits inline insensitive instance instantiable instead integrity intersection invoker isnull k key_member key_type label lag last_value lead leakproof least length library like_regex link listen ln load location lock locked log logged lower m mapping matched materialized max max_cardinality maxvalue member merge message message_length message_octet_length message_text min minvalue mod mode more move multiset mumps name namespace nfc nfd nfkc nfkd nil normalize normalized nothing notice notify notnull nowait nth_value ntile nullable nullif nulls number occurrences_regex octet_length octets off offset oids operator options ordering others over overlay overriding owned owner p parallel parameter_mode parameter_name parameter_ordinal_position parameter_specific_catalog parameter_specific_name parameter_specific_schema parser partition pascal passing passthrough password percent percent_rank percentile_cont percentile_disc perform period permission pg_context pg_datatype_name pg_exception_context pg_exception_detail pg_exception_hint placing plans pli policy portion position position_regex power precedes preceding prepared print_strict_params procedural procedures program publication query quote raise range rank reassign recheck recovery refresh regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy regr_syy reindex rename repeatable replace replica requiring reset respect restart restore result_oid returned_cardinality returned_length returned_octet_length returned_sqlstate returning reverse routine_catalog routine_name routine_schema routines row_count row_number rowtype rule scale schema_name schemas scope scope_catalog scope_name scope_schema security selective self sensitive sequence sequences serializable server server_name setof share show simple skip slice snapshot source specific_name sqlcode sqlerror sqrt stable stacked standalone statement statistics stddev_pop stddev_samp stdin stdout storage strict strip structure style subclass_origin submultiset subscription substring substring_regex succeeds sum symmetric sysid system system_time t table_name tables tablesample tablespace temp template ties token top_level_count transaction_active transactions_committed transactions_rolled_back transform transforms translate translate_regex trigger_catalog trigger_name trigger_schema trim trim_array truncate trusted type types uescape unbounded uncommitted unencrypted unlink unlisten unlogged unnamed untyped upper uri use_column use_variable user_defined_type_catalog user_defined_type_code user_defined_type_name user_defined_type_schema vacuum valid validate validator value_of var_pop var_samp varbinary variable_conflict variadic verbose version versioning views volatile warning whitespace width_bucket window within wrapper xmlagg xmlattributes xmlbinary xmlcast xmlcomment xmlconcat xmldeclaration xmldocument xmlelement xmlexists xmlforest xmliterate xmlnamespaces xmlparse xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltext xmlvalidate yes",types:lp+"bigint int8 bigserial serial8 varbit bool box bytea cidr circle precision float8 inet int4 json jsonb line lseg macaddr macaddr8 money numeric path pg_lsn point polygon float4 int2 smallserial serial2 serial serial4 text without zone with timetz timestamptz tsquery tsvector txid_snapshot uuid xml"}),Sp="accessible algorithm analyze asensitive authors auto_increment autocommit avg avg_row_length binlog btree cache catalog_name chain change changed checkpoint checksum class_origin client_statistics coalesce code collations columns comment committed completion concurrent consistent contains contributors convert database databases day_hour day_microsecond day_minute day_second delay_key_write delayed delimiter des_key_file dev_pop dev_samp deviance directory disable discard distinctrow div dual dumpfile enable enclosed ends engine engines enum errors escaped even event events every explain extended fast field fields flush force found_rows fulltext grants handler hash high_priority hosts hour_microsecond hour_minute hour_second ignore ignore_server_ids import index index_statistics infile innodb insensitive insert_method install invoker iterate keys kill linear lines list load lock logs low_priority master master_heartbeat_period master_ssl_verify_server_cert masters max max_rows maxvalue message_text middleint migrate min min_rows minute_microsecond minute_second mod mode modify mutex mysql_errno no_write_to_binlog offline offset one online optimize optionally outfile pack_keys parser partition partitions password phase plugin plugins prev processlist profile profiles purge query quick range read_write rebuild recover regexp relaylog remove rename reorganize repair repeatable replace require resume rlike row_format rtree schedule schema_name schemas second_microsecond security sensitive separator serializable server share show slave slow snapshot soname spatial sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_no_cache sql_small_result ssl starting starts std stddev stddev_pop stddev_samp storage straight_join subclass_origin sum suspend table_name table_statistics tables tablespace terminated triggers truncate uncommitted uninstall unlock upgrade use use_frm user_resources user_statistics utc_date utc_time utc_timestamp variables views warnings xa xor year_month zerofill",_p=lp+"bool blob long longblob longtext medium mediumblob mediumint mediumtext tinyblob tinyint tinytext text bigint int1 int2 int3 int4 int8 float4 float8 varbinary varcharacter precision datetime year unsigned signed",Xp="charset clear connect edit ego exit go help nopager notee nowarning pager print prompt quit rehash source status system tee",Tp=wp.define({operatorChars:"*+-%<>!=&|^",charSetCasts:!0,doubleQuotedStrings:!0,hashComments:!0,spaceAfterDashes:!0,specialVar:"@?",identifierQuotes:"`",keywords:cp+"group_concat "+Sp,types:_p,builtin:Xp}),Rp=wp.define({operatorChars:"*+-%<>!=&|^",charSetCasts:!0,doubleQuotedStrings:!0,hashComments:!0,spaceAfterDashes:!0,specialVar:"@?",identifierQuotes:"`",keywords:cp+"always generated groupby_concat hard persistent shutdown soft virtual "+Sp,types:_p,builtin:Xp}),Wp=wp.define({keywords:cp+"trigger proc view index for add constraint key primary foreign collate clustered nonclustered declare exec go if use index holdlock nolock nowait paglock pivot readcommitted readcommittedlock readpast readuncommitted repeatableread rowlock serializable snapshot tablock tablockx unpivot updlock with",types:lp+"bigint smallint smallmoney tinyint money real text nvarchar ntext varbinary image cursor hierarchyid uniqueidentifier sql_variant xml table",builtin:"binary_checksum checksum connectionproperty context_info current_request_id error_line error_message error_number error_procedure error_severity error_state formatmessage get_filestream_transaction_context getansinull host_id host_name isnull isnumeric min_active_rowversion newid newsequentialid rowcount_big xact_state object_id",operatorChars:"*+-%<>!=^&|/",specialVar:"@"}),qp=wp.define({keywords:cp+"abort analyze attach autoincrement conflict database detach exclusive fail glob ignore index indexed instead isnull notnull offset plan pragma query raise regexp reindex rename replace temp vacuum virtual",types:lp+"bool blob long longblob longtext medium mediumblob mediumint mediumtext tinyblob tinyint tinytext text bigint int2 int8 year unsigned signed real",builtin:"auth backup bail binary changes check clone databases dbinfo dump echo eqp exit explain fullschema headers help import imposter indexes iotrace limit lint load log mode nullvalue once open output print prompt quit read restore save scanstats schema separator session shell show stats system tables testcase timeout timer trace vfsinfo vfslist vfsname width",operatorChars:"*+-%<>!=&|/~",identifierQuotes:'`"',specialVar:"@:?$"}),zp=wp.define({keywords:"add all allow alter and any apply as asc authorize batch begin by clustering columnfamily compact consistency count create custom delete desc distinct drop each_quorum exists filtering from grant if in index insert into key keyspace keyspaces level limit local_one local_quorum modify nan norecursive nosuperuser not of on one order password permission permissions primary quorum rename revoke schema select set storage superuser table three to token truncate ttl two type unlogged update use user users using values where with writetime infinity NaN",types:lp+"ascii bigint blob counter frozen inet list map static text timeuuid tuple uuid varint",slashComments:!0}),Yp=wp.define({keywords:cp+"abort accept access add all alter and any array arraylen as asc assert assign at attributes audit authorization avg base_table begin between binary_integer body boolean by case cast char char_base check close cluster clusters colauth column comment commit compress connect connected constant constraint crash create current currval cursor data_base database date dba deallocate debugoff debugon decimal declare default definition delay delete desc digits dispose distinct do drop else elseif elsif enable end entry escape exception exception_init exchange exclusive exists exit external fast fetch file for force form from function generic goto grant group having identified if immediate in increment index indexes indicator initial initrans insert interface intersect into is key level library like limited local lock log logging long loop master maxextents maxtrans member minextents minus mislabel mode modify multiset new next no noaudit nocompress nologging noparallel not nowait number_base object of off offline on online only open option or order out package parallel partition pctfree pctincrease pctused pls_integer positive positiven pragma primary prior private privileges procedure public raise range raw read rebuild record ref references refresh release rename replace resource restrict return returning returns reverse revoke rollback row rowid rowlabel rownum rows run savepoint schema segment select separate session set share snapshot some space split sql start statement storage subtype successful synonym tabauth table tables tablespace task terminate then to trigger truncate type union unique unlimited unrecoverable unusable update use using validate value values variable view views when whenever where while with work",builtin:"appinfo arraysize autocommit autoprint autorecovery autotrace blockterminator break btitle cmdsep colsep compatibility compute concat copycommit copytypecheck define describe echo editfile embedded escape exec execute feedback flagger flush heading headsep instance linesize lno loboffset logsource long longchunksize markup native newpage numformat numwidth pagesize pause pno recsep recsepchar release repfooter repheader serveroutput shiftinout show showmode size spool sqlblanklines sqlcase sqlcode sqlcontinue sqlnumber sqlpluscompatibility sqlprefix sqlprompt sqlterminator suffix tab term termout time timing trimout trimspool ttitle underline verify version wrap",types:lp+"ascii bfile bfilename bigserial bit blob dec number nvarchar nvarchar2 serial smallint string text uid varchar2 xml",operatorChars:"*/+-%<>!=~",doubleQuotedStrings:!0,charSetCasts:!0});var Zp=Object.freeze({__proto__:null,Cassandra:zp,MSSQL:Wp,MariaSQL:Rp,MySQL:Tp,PLSQL:Yp,PostgreSQL:vp,SQLDialect:wp,SQLite:qp,StandardSQL:Pp,keywordCompletion:kp,schemaCompletion:yp,sql:function(e={}){let t=e.dialect||Pp;return new Ga(t.language,[yp(e),kp(t,!!e.upperCaseKeywords)])}});const Up=new Rl((e=>{if(76==e.next||85==e.next?e.advance():117==e.next&&(e.advance(),56==e.next&&e.advance()),82!=e.next)return;if(e.advance(),34!=e.next)return;e.advance();let t="";for(;40!=e.next;){if(32==e.next||e.next<=13||41==e.next)return;t+=String.fromCharCode(e.next),e.advance()}for(e.advance();;){if(e.next<0)return e.acceptToken(1);if(41==e.next){let n=!0;for(let r=0;n&&r{if(62==e.next)62==e.peek(1)&&e.acceptToken(2,1);else{let t=!1,n=0;for(;;n++){if(e.next>=65&&e.next<=90)t=!0;else{if(e.next>=97&&e.next<=122)return;if(95!=e.next&&!(e.next>=48&&e.next<=57))break}e.advance()}t&&n>1&&e.acceptToken(3)}}),{extend:!0}),Ip={__proto__:null,bool:34,char:34,int:34,float:34,double:34,void:34,size_t:34,ssize_t:34,intptr_t:34,uintptr_t:34,charptr_t:34,int8_t:34,int16_t:34,int32_t:34,int64_t:34,uint8_t:34,uint16_t:34,uint32_t:34,uint64_t:34,char8_t:34,char16_t:34,char32_t:34,char64_t:34,const:68,volatile:70,restrict:72,_Atomic:74,mutable:76,constexpr:78,struct:82,__declspec:86,final:90,override:90,public:94,private:94,protected:94,virtual:154,extern:156,static:158,register:160,inline:162,__attribute__:166,__based:172,__restrict:174,__uptr:174,__sptr:174,_unaligned:174,__unaligned:174,noexcept:188,throw:192,template:248,typename:254,class:256,using:266,__cdecl:274,__clrcall:274,__stdcall:274,__fastcall:274,__thiscall:274,__vectorcall:274,case:284,default:286,if:298,else:304,switch:308,do:312,while:314,for:322,return:326,break:330,continue:334,goto:338,typedef:342,try:356,catch:360,namespace:366,static_assert:372,explicit:382,delete:392,operator:400,friend:420,union:422,enum:430,signed:434,unsigned:434,long:434,short:434,decltype:446,auto:448,sizeof:480,TRUE:734,true:734,FALSE:736,false:736,NULL:488,new:494,nullptr:508,this:510},Vp={__proto__:null,"<":139},Cp={__proto__:null,">":143},Ap={__proto__:null,operator:398,new:492,delete:500},Gp=Ll.deserialize({version:13,states:"$ArQ!QQVOOP&tOUOOO'fOWO'#CdO+PQUO'#CgO+ZQUO'#FdO-SQbO'#CwO-ZQUO'#CwO.yQUO'#JZO/QQUO'#CvO/]OpO'#DyO/eQ!dO'#DbOOQQ'#IV'#IVO/pQUO'#JxO1aQUO'#IZOOQQ'#IZ'#IZO4fQUO'#JlO7gQUO'#JlO9nQVO'#EZO:OQUO'#EZO:TQUOOO:]QVO'#EhO_,5>_O!VO!AqQVO,5>ZO!AxQbO,59cO!BWQVO'#EwOOQQ,5>R,5>RONYQVO,59VO!BhO`O,5:eO!BmQbO'#DcO!COQbO'#JaO!C^QbO,59|O!E`QUO'#CsO!GOQbO'#CwO!GTQUO'#CvO!JhQUO'#JZOOQQ-EOO#.XQUO,5;TO#.fQbO'#CwO#$wQUO'#EZO<}QUO'#EhO#.qQUO'#JpO!-wQUO'#EnO#/fQUO'#CtOOQQ,5;X,5;XO#2QQVO'#C{O#3oQUO'#K]O#5jQUO'#JsO#5qQUO'#JQO#6UQUO,5;YO#6ZQVO'#FpONYQVO'#HYO#8pQVO,5>^O?}QVO'#HrO#8zQUO,5>^O#8}QUO,5>^OOQQ,5>^,5>^O#9SQUO'#GdOOQR,5@k,5@kO#9[QUO,5@kO#9dQUO'#GfO#9lQUO,5;tO#:QQUO'#JyO#:YQUO,5;rO!'iQVO,5;|OOQR'#In'#InO#:_QVO,5qQVO,5;vOOQR,5;v,5;vOOQQ-ExQUO,5=zO#@xQUO'#JQO#BdQUO,5=}O#CQQUO'#EbO#DoQUO'#EcO#D|QUO'#EcO#EUQVO'#EdO#E`QUO'#EeO#E|QUO'#EfOOQQ'#Jr'#JrO#FdQUO,5>]OOQQ,5>],5>]O!-wQUO,59rO#FoQUO,5;wO!&zQUO,5:lOOQQ,5:o,5:oO#F|QUO,5;pO#GUQUO,5PO#6ZQVO'#FpOOQQ,5>P,5>PO$=ZQUO,5>PO$=`QUO,5>VO!5vQUO,5>VO$?cQUO,5>ZO$ApQVO,5>ZP$Aw{#tO,58|P$A|{#tO,58|P$BU{&jO,58|POOO,58|,58|POOO,5>k,5>kP$B^OSO,5>kOOOO-EYQUO,59gONYQVO'#ItO%>bQUO,5@wO!-wQUO'#IbO%>jQUO,5@_OOQQ1G0t1G0tOOQQ1G3x1G3xONYQVO1G3xO%>rQUO'#GeO%>zQUO'#KQOOQQ,5=O,5=OOOQR1G6V1G6VO%?VQUO,5=QO%?[QUO,5=RO%?aQVO'#EXO%FcQVO'#F[O%r,5>rOOQQ-EtOOQQ-E|,5>|OOQQ-E<`-E<`O''VQUO7+)dO''[QUO,5=PO#9SQUO'#IpO''jQUO,5@lOOQR1G2l1G2lOOQR1G2m1G2mO''uQUO'#JuO?}QVO'#HrO'(SQUO1G1_OOQQ1G1_1G1_O'(^QUO,5?TOOQQ,5?T,5?TOOQQ-EhQUO'#JnONYQVO'#EvOOQQ,59{,59{O'?VQUO,59{O%YO'IkQUO7+)aPOOO7+$S7+$SP'J[QUO'#K`P'JdQUO,5@yP'Ji{#tO7+$SO'JnQUO<},5>}OOQQ-EoO&/{QUO,5>oOOQQ-Ey,5>yOOQQ-E<]-E<]O(=wQUOG26UO!'iQVOG26UO(>OQUOG26UOOQRG26UG26UO!'iQVOG26fO(>TQUO<fQUO<kQUO<rQUO<XAN>XO(?zQUOAN>XO(@RQUOAN>XO%XO(@WQUO<VO)%jQVO,5>ZO)%qQbO,59cO)&PQbO,59cO)&_QbO,59cO!+xQVO,59VO)&mQUO'#CgO)(qQUO'#CgO)({QUO'#CgO)+^QUO'#CgO).TQUO'#CgO).eQUO'#CgO)/bQUO'#CgO)2hQUO'#CgO)2uQUO'#CgO)3PQUO,5=tO,qQbO'#CwO)3ZQbO'#CwO)3lQbO'#CwO)3}QbO'#CwO)4`QUO'#CvO)4kQUO,5:uO)5RQUO,5:uO)5RQUO,5:uO)5lQbO'#CwO)5wQbO'#CwO)6SQbO'#CwO)6_QbO'#CwO)5RQUO'#EZO)6jQUO'#EZODQQUO'#EiO)7qQUO'#EiO#3vQUO'#JsO!+xQVO'#HYO)8cQbO'#CwO)8qQbO'#CwO)9PQUO'#CvO)9UQUO'#CvO):tQUO'#JQO):{QUO,5=}O);zQUO'#EbO)=VQUO'#EfO)@SQUO,59pO)AzQUO,59pO)B[QUO,59pO)BcQUO,59pO$2wQUO,59pO$2wQUO,59pO)E]QUO,5=eO)GTQUO,5=eO)GeQUO,5=eO)GlQUO,5=eO$5dQUO,5=eO$5dQUO,5=eO)HuQUO,5=fO$8bQUO,5=fO$8bQUO,5=fO$8bQUO,5=fO)JOQUO,5=lO)LiQUO,5=lO)LyQUO,5=lO$:wQUO,5=lO)MQQUO,5>PO(C}QUO,5>VO)MeQUO,5>ZO)MrQUO'#CoO* hQUO1G3bO*#PQUO1G3bO*$tQUO1G3bO*${QUO1G3bO*&jQUO1G3bO*&qQUO1G3bO*(YQUO1G3bO*(gQUO1G3bO*(tQUO1G3bO**VQUO1G3bO(C}QUO1G3qO**jQUO1G3uO**wQUO1G.qO*+[QbO,59cO*+gQbO,59cO*+rQbO,59cO*+}QbO,59cO*,YQbO,59cO*,eQbO,59cO*,pQbO,59cO)4kQUO1G0aO*,{QUO1G0aO)5RQUO1G0aO)6jQUO1G0aO*-cQUO'#EaO*-yQUO1G0bO*/TQVO1G3jO*/[QUO,5:|O*0UQUO,5:|O*1RQUO,5;QO*3`QUO'#JZO*5aQUO1G/[O*7XQUO1G/[O*7iQUO1G/[O*7pQUO1G/[O*:jQUO1G3PO*SQUO1G3QO*@rQUO1G3WO*C]QUO1G3WO*CmQUO1G3WO*CtQVO1G3uO!+xQVO7+$[O*EeQUO'#CyO*EsQbO,59cO*CtQVO7+)aO)4kQUO7+%{O*,{QUO7+%{O*F|QUO7+%|O*G^QUO,5:{O!5vQUO,5:{O*GkQUO'#EbO*G{QUO7+)UO*HYQUO1G0hO*IVQVO1G6`O*IpQUO7+)aO*I}QUO<OO+%kQUO,5;TO#6ZQVO'#FpO+%uQUO'#JZO$2wQUO,59pO$5dQUO,5=eO$:wQUO,5=lO+&YQVO,5>ZO+&aQUO1G.pO+&hQbO'#CwO+&sQUO'#CrO+&xQVO1G3uO+'PQUO1G0aO+'ZQUO1G0bO+'bQUO,5@tO+'gQUO7+%{O'=bQUO'#EuO+'qQUO<cO'v'SO]xarxasxatxauxavxawxa}xa!Zxa#Qxa#Sxa'xxa(Vxa(Xxa(Yxa(Zxa!Qxa(hxa~O!S'TO|xaQxa!hxa~P)@mO!Sxa~P)@mO'vxalxarxasxatxauxavxawxa{xa!pxa!qxa!rxa!sxa!uxa!xxa#`xa'rxa~P)>cO},tO]%ma!S%ma!Z%ma!]%ma!^%ma!`%ma!b%ma!c%ma!e%ma!f%ma!g%ma!i%ma!j%ma'u%ma'w%ma'x%ma(Q%ma(V%ma(W%ma(X%ma(Y%ma(Z%ma!k%ma(h%ma~O'v'SO!Q%ma|%ma![%ma!Y%maQ%ma!h%ma~P)ClO'v'SO]%mar%mas%mat%mau%mav%maw%ma}%ma!Z%ma#Q%ma#S%ma'x%ma(V%ma(X%ma(Y%ma(Z%ma!Q%ma(h%ma~O!S'TO|%maQ%ma!h%ma~P)EvO!S%ma~P)EvO'v%mal%mar%mas%mat%mau%mav%maw%ma{%ma!p%ma!q%ma!r%ma!s%ma!u%ma!x%ma#`%ma'r%ma~P)ClO!S%na!]%na!^%na!`%na!b%na!c%na!e%na!f%na!g%na!i%na!j%na'u%na'w%na(W%na!k%na![%na!Y%na~P$5}O!S%ta!]%ta!^%ta!`%ta!b%ta!c%ta!e%ta!f%ta!g%ta!i%ta!j%ta'u%ta'w%ta'x%ta(W%ta!k%ta![%ta!Y%ta~P$8mO'v'SO]%tar%tas%tat%tau%tav%taw%ta}%ta!Z%ta#Q%ta#S%ta'x%ta(V%ta(X%ta(Y%ta(Z%ta!Q%ta(h%ta~O!S'TO|%taQ%ta!h%ta~P)K[O!S%ta~P)K[O!]7nO!^7eO!`7fO!j7mO'v&Xa~P$;YO'v&ca!k&ca(h&ca~P#NZO]cXlgXpiX!ScX~O]#pO!Z#aO!]7nO!`7fO'w#`O'x#`O(V#bO!b&Oi!c&Oi!e&Oi!f&Oi!g&Oi!i&Oi!j&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi(Y&Oi!k&Oi(h&Oi~O!^&Oi~P)NQO]#pO!Z#aO!]7nO'w#`O'x#`O!b&Oi!c&Oi!e&Oi!f&Oi!g&Oi!i&Oi!j&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi(Y&Oi!k&Oi(h&Oi~O!^&Oi!`&Oi(V&Oi~P* oO]#pO!Z#aO!]7nO!^7eO!`7fO!c7iO!e7kO!f7lO!g7lO!i7lO!j7mO'w#`O'x#`O(V#bO(Y#dO'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi!k&Oi(h&Oi~O!b7hO~P*#^O!b&Oi~P*#^O]#pO!Z#aO!]7nO!^7eO!`7fO!e7kO!f7lO!g7lO!i7lO!j7mO'w#`O'x#`O(V#bO!b&Oi!c&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi!k&Oi(h&Oi~O(Y#dO~P*%SO(Y&Oi~P*%SO]#pO!Z#aO!]7nO!^7eO!`7fO!j7mO'w#`O'x#`O(V#bO!b&Oi!c&Oi!e&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi(Y&Oi!k&Oi(h&Oi~O!f7lO!g7lO!i7lO~P*&xO!f&Oi!g&Oi!i&Oi~P*&xO!^7eO~P)NQO]#pO!Z#aO!]7nO!^7eO!`7fO!b7hO!c7iO!e7kO!f7lO!g7lO!i7lO!j7mO'w#`O'x#`O(V#bO(W#cO(X#cO(Y#dO~O'u&Oi'v&Oi(Q&Oi!k&Oi(h&Oi~P*({O'v&ci!k&ci(h&ci~P#NZO(Q#oO'u_i'v_i!k_i(h_i~P*({Od(kO#`(kO'y#qO~Od(kO#`(kO'y7qO~Od(kO#`(kO'y7vO~Od(kO#`(kO'y7uO~Od(kO#`(kO'y7pO~Od(kO#`(kO'y7rO~Od(kO#`(kO'y7tO~Or![Os![Ot![Ou![Ov![Ow![O~P)7qOr![Os![Ot![Ou![Ov![Ow![O~P!5vOr![Os![Ot![Ou![Ov![Ow![O})`O#Q)bO#S)cO'xP>k?XGp!!c!+W!3_P!;z!RPPPPPP!>oP!@iPPP!CVPP!EgP!G}!HR!HtP!HzPPPPP!H}P!H}PP!H}PPPPPPPP!IZ!LzPPPPP!L}P>S!N`PP>S#!y#%v#&T#'p#)gP#)gP#*V#*y#+m#*y#*y#*y#&T#&T#&T#,c#1aP#2P#&T#%v#%v#6w#6}>S>S>S#7Q#7e#9l#9t#9t#9{P#:]#:dPP#:d#:d#:k#9{P#:o#;`#;kP#;}#=w#>Q#>ZPP#>p#?Z#?w#@e#>pP#Ar#BOP#>pP#>pPP#BR#>p#>pP#>pP#>pP#>pP#>pP#EcP#Ev#Ev#Ev#Ev#>Z#>ZP#FTP#>Z#=wP#FX#FXP#Ff#=w#=w#I|P#Ja#Jl#Jr#JrP#=w#KhPP#=w#LS#LS!G}!G}!G}!G}!G}!G}PP!G}!>o!>oP#LVP#NS#Nj!>o!>o!>oPP#Np#Ns#Nv$ O9w6d$$]$&a$(R6dPP6d$)y6dP6d6d6dP6dPP$-U6dP$)y$-b6dPPPPPPPPPPP)UP$0m$0s$3w$4W$4^$5Z$5a$5w$6R$7a$8p$9O$9j$9p$:Q$:d$:l$:r$:|$;[$;e$;m$;s$ MacroName LineComment BlockComment PreprocDirective #include String EscapeSequence SystemLibString Identifier ArgumentList ( ConditionalExpression AssignmentExpression CallExpression PrimitiveType FieldExpression FieldIdentifier DestructorName TemplateMethod ScopedFieldIdentifier NamespaceIdentifier TemplateType TypeIdentifier ScopedTypeIdentifier ScopedNamespaceIdentifier :: NamespaceIdentifier TypeIdentifier TemplateArgumentList < TypeDescriptor const volatile restrict _Atomic mutable constexpr StructSpecifier struct MsDeclspecModifier __declspec ) VirtualSpecifier BaseClassClause Access , FieldDeclarationList { FieldDeclaration Attribute AttributeName Identifier AttributeArgs } [ ] UpdateOp ArithOp ArithOp ArithOp LogicOp BitOp BitOp BitOp CompareOp CompareOp CompareOp > CompareOp BitOp UpdateOp Number CharLiteral AttributeArgs virtual extern static register inline AttributeSpecifier __attribute__ PointerDeclarator MsBasedModifier __based MsPointerModifier FunctionDeclarator ParameterList ParameterDeclaration PointerDeclarator FunctionDeclarator Noexcept noexcept ThrowSpecifier throw TrailingReturnType AbstractPointerDeclarator AbstractFunctionDeclarator AbstractArrayDeclarator AbstractParenthesizedDeclarator AbstractReferenceDeclarator ArrayDeclarator ParenthesizedDeclarator ReferenceDeclarator ScopedIdentifier Identifier OperatorName TemplateFunction StructuredBindingDeclarator OptionalParameterDeclaration VariadicParameterDeclaration VariadicDeclarator ReferenceDeclarator ArrayDeclarator ParenthesizedDeclarator ReferenceDeclarator BitfieldClause InitializerList InitializerPair SubscriptDesignator FieldDesignator TemplateDeclaration template TemplateParameterList TypeParameterDeclaration typename class OptionalTypeParameterDeclaration VariadicTypeParameterDeclaration TemplateTemplateParameterDeclaration AliasDeclaration using Declaration InitDeclarator FunctionDefinition MsCallModifier CompoundStatement LinkageSpecification DeclarationList CaseStatement case default LabeledStatement StatementIdentifier ExpressionStatement CommaExpression IfStatement if ConditionClause Declaration else SwitchStatement switch DoStatement do while ParenthesizedExpression WhileStatement ForStatement for ReturnStatement return BreakStatement break ContinueStatement continue GotoStatement goto TypeDefinition typedef PointerDeclarator FunctionDeclarator ArrayDeclarator ParenthesizedDeclarator ForRangeLoop TryStatement try CatchClause catch ThrowStatement NamespaceDefinition namespace UsingDeclaration StaticAssertDeclaration static_assert ConcatenatedString TemplateInstantiation FunctionDefinition ExplicitFunctionSpecifier explicit FieldInitializerList FieldInitializer DefaultMethodClause DeleteMethodClause delete FunctionDefinition OperatorCast operator operator Declaration FunctionDefinition FunctionDefinition FunctionDefinition FunctionDefinition Declaration FunctionDefinition Declaration FriendDeclaration friend union AccessSpecifier UnionSpecifier EnumSpecifier enum SizedTypeSpecifier TypeSize EnumeratorList Enumerator ClassSpecifier DependentType Decltype decltype auto ParameterPackExpansion ParameterPackExpansion FieldIdentifier PointerExpression SubscriptExpression BinaryExpression ArithOp LogicOp BitOp UnaryExpression LogicOp BitOp UpdateExpression CastExpression SizeofExpression sizeof CompoundLiteralExpression True False NULL NewExpression new new NewDeclarator DeleteExpression delete LambdaExpression LambdaCaptureSpecifier ParameterPackExpansion nullptr this #define PreprocArg #if #ifdef #ifndef #else #endif #elif PreprocDirectiveName Macro Program",maxTerm:373,nodeProps:[[Di.group,-30,1,8,11,14,15,16,18,74,75,106,109,158,187,228,229,230,234,237,238,239,241,242,243,244,245,249,251,253,254,255,"Expression",-12,17,24,25,26,40,213,214,216,220,221,222,224,"Type",-16,138,141,144,146,148,153,155,159,160,162,164,166,168,176,177,181,"Statement"]],skippedNodes:[0,3,4,5,6,7,10,256,257,258,259,260,261,262,263,264,265,302],repeatNodeCount:36,tokenData:"%Dt&iR!UOX$eXY'mYZ,iZ]$e]^)k^p$epq'mqr-Prs.ost/^tu$euv!/wvw!1gwx!3Yxy!3wyz!4lz{!5a{|!6[|}!8Q}!O!8u!O!P!:n!P!Q!Nh!Q!R#1{!R![#Ek![!]$.n!]!^$0^!^!_$1R!_!`$;p!`!a$^#q#r%@S#r#s%@w#s~$e!l$nW(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!j%_U(]W&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W!b%vS&k!bOY%qZ#O%q#O#P&S#P~%q!b&XV&k!bOY%qYZ%qZ]%q]^&n^#O%q#O#P&S#P~%q!b&sT&k!bOY%qYZ%qZ#O%q#O#P&S#P~%q!d'ZU'pQ&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S&i'z^(]W'pQ'n$Z&k!b)T#SOX$eXY'mYZ(vZ]$e]^)k^p$epq'mqr$ers%Wsw$ewx'Sx#O$e#O#P*r#P~$e$Z({T'n$ZXY(vYZ(v]^(vpq(v#O#P)[$Z)_QYZ(v]^)e$Z)hPYZ(v%w)v^(]W'pQ'n$Z&k!bOX$eXY)kYZ(vZ]$e]^)k^p$epq)kqr$ers%Wsw$ewx'Sx#O$e#O#P*r#P~$e%m*wV&k!bOY%qYZ+^Z]%q]^,T^#O%q#O#P&S#P~%q%m+eY'n$Z&k!bOX%qXY+^YZ(vZ]%q]^+^^p%qpq+^q#O%q#O#P*r#P~%q%m,YT&k!bOY%qYZ+^Z#O%q#O#P&S#P~%q${,pT)Qp'n$ZXY(vYZ(v]^(vpq(v#O#P)[%s-[Y&TP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`-z!`#O$e#O#P&S#P~$e%s.VW!e$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&e.zU(]W'qQ'o$w&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W%w/gd(]W'pQ&k!bOX$eXY/^Zp$epq/^qr$ers%Wsw$ewx'Sx!c$e!c!}0u!}#O$e#O#P&S#P#T$e#T#W0u#W#X2S#X#Y:f#Y#]0u#]#^Hl#^#o0u#o~$e%w1Q`(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w2_b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y3g#Y#o0u#o~$e%w3rb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#Z4z#Z#o0u#o~$e%w5Vb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#]0u#]#^6_#^#o0u#o~$e%w6jb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#b0u#b#c7r#c#o0u#o~$e%w7}b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y9V#Y#o0u#o~$e%w9d`(]W'pQ&j$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w:qd(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#`0u#`#a}#Z#o0u#o~$e%w?[`(]W'pQ&k!b&q$Z&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w@ib(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#YAq#Y#o0u#o~$e%wBO`(]W'pQ&k!b&o$Z&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%wC]b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#XDe#X#o0u#o~$e%wDpb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#]0u#]#^Ex#^#o0u#o~$e%wFTb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#ZG]#Z#o0u#o~$e%wGj`(]W'pQ&k!b&p$Z&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%wHwd(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#ZJV#Z#b0u#b#c!'e#c#o0u#o~$e%wJdd(]W'pQ&l$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#XKr#X#b0u#b#c! y#c#o0u#o~$e%wK}b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#YMV#Y#o0u#o~$e%wMbb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#ZNj#Z#o0u#o~$e%wNw`(]W'pQ&m$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w!!Ub(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#X!#^#X#o0u#o~$e%w!#ib(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y!$q#Y#o0u#o~$e%w!$|b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#Z!&U#Z#o0u#o~$e%w!&c`(]W'pQ&n$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w!'pb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#V0u#V#W!(x#W#o0u#o~$e%w!)Tb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#`0u#`#a!*]#a#o0u#o~$e%w!*hb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#i0u#i#j!+p#j#o0u#o~$e%w!+{b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#X!-T#X#o0u#o~$e%w!-`b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y!.h#Y#o0u#o~$e%w!.u`(]W'pQV$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%s!0SY(]W'pQ!`$V&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!0}W!k$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s!1rZ(Y$V(]W'pQ&k!bOY$eZr$ers%Wsv$evw!2ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!2pW(X$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%o!3eU(^S'pQ([$V&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S&i!4SW(]W'pQ]&_&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!}!4wW|a(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s!5lY(V$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!6g[(]W'pQ!^$V&k!bOY$eZr$ers%Wsw$ewx'Sx{$e{|!7]|!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!7hW(]W!]$V'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%w!8]W!Q$Z(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s!9Q](]W'pQ!^$V&k!bOY$eZr$ers%Wsw$ewx'Sx}$e}!O!7]!O!_$e!_!`!0r!`!a!9y!a#O$e#O#P&S#P~$e%s!:UW'x$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%w!:y[(]W'pQ'w$V&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P!;o!P!Q$e!Q![!=]![#O$e#O#P&S#P~$e%w!;xY(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P!r!P!Q$e!Q![#Ek![!g$e!g!h!HO!h!i!L}!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#U$e#U#V#Gt#V#X$e#X#Y!HO#Y#Z!L}#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j#l$e#l#m$*s#m~$e%k#4iW'pQ&k!bOY'SZr'Srs%qs!Q'S!Q![#5R![#O'S#O#P&S#P~'S%k#5[n'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx#4bx!O'S!O!P#7Y!P!Q'S!Q![#5R![!g'S!g!h!BQ!h!i!Fm!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#X'S#X#Y!BQ#Y#Z!Fm#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k#7cl'pQ!l$V&k!bOY'SZr'Srs%qs!Q'S!Q![#9Z![!c'S!c!g#9Z!g!h#<_!h!i#9Z!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X#9Z#X#Y#<_#Y#Z#9Z#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k#9dn'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx#;bx!Q'S!Q![#9Z![!c'S!c!g#9Z!g!h#<_!h!i#9Z!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X#9Z#X#Y#<_#Y#Z#9Z#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k#;i['pQ&k!bOY'SZr'Srs%qs!Q'S!Q![#9Z![!c'S!c!i#9Z!i#O'S#O#P&S#P#T'S#T#Z#9Z#Z~'S%k#}n(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![#@{![!c$e!c!g#@{!g!h#CU!h!i#@{!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#@{#X#Y#CU#Y#Z#@{#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%s#AWn(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#;bx!Q$e!Q![#@{![!c$e!c!g#@{!g!h#CU!h!i#@{!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#@{#X#Y#CU#Y#Z#@{#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%s#Car(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#;bx{$e{|!JR|!Q$e!Q![#@{![!c$e!c!g#@{!g!h#CU!h!i#@{!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#@{#X#Y#CU#Y#Z#@{#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j?Ar$e?Ar?As!JR?As~$e%s#Evn(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#4bx!O$e!O!P#>r!P!Q$e!Q![#Ek![!g$e!g!h!HO!h!i!L}!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#X$e#X#Y!HO#Y#Z!L}#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%s#G}](]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P#Hv!P!Q$e!Q!R#Io!R![#Ek![#O$e#O#P&S#P~$e%s#IPY(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![!=]![#O$e#O#P&S#P~$e%s#Izr(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#4bx!O$e!O!P#>r!P!Q$e!Q![#Ek![!g$e!g!h!HO!h!i!L}!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#U$e#U#V#LU#V#X$e#X#Y!HO#Y#Z!L}#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j#l$e#l#m#L}#m~$e%s#L_Y(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![#Ek![#O$e#O#P&S#P~$e%s#MW^(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![#NS![!c$e!c!i#NS!i#O$e#O#P&S#P#T$e#T#Z#NS#Z~$e%s#N_p(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx$!cx!O$e!O!P#>r!P!Q$e!Q![#NS![!c$e!c!g#NS!g!h$(W!h!i#NS!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#NS#X#Y$(W#Y#Z#NS#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%k$!j['pQ&k!bOY'SZr'Srs%qs!Q'S!Q![$#`![!c'S!c!i$#`!i#O'S#O#P&S#P#T'S#T#Z$#`#Z~'S%k$#ip'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx$!cx!O'S!O!P#7Y!P!Q'S!Q![$#`![!c'S!c!g$#`!g!h$%m!h!i$#`!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X$#`#X#Y$%m#Y#Z$#`#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k$%vt'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx$!cx{'S{|!C{|!O'S!O!P#7Y!P!Q'S!Q![$#`![!c'S!c!g$#`!g!h$%m!h!i$#`!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X$#`#X#Y$%m#Y#Z$#`#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j?Ar'S?Ar?As!C{?As~'S%s$(ct(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx$!cx{$e{|!JR|!O$e!O!P#>r!P!Q$e!Q![#NS![!c$e!c!g#NS!g!h$(W!h!i#NS!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#NS#X#Y$(W#Y#Z#NS#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j?Ar$e?Ar?As!JR?As~$e%s$*|a(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P#Hv!P!Q$e!Q!R$,R!R![#NS![!c$e!c!i#NS!i#O$e#O#P&S#P#T$e#T#Z#NS#Z~$e%s$,^t(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx$!cx!O$e!O!P#>r!P!Q$e!Q![#NS![!c$e!c!g#NS!g!h$(W!h!i#NS!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#U#NS#U#V#NS#V#X#NS#X#Y$(W#Y#Z#NS#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j#l$e#l#m#L}#m~$e%w$.yY'v$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx![$e![!]$/i!]#O$e#O#P&S#P~$e%w$/tWl$Z(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s$0iW(Z$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&e$1^[p$V(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!^$2S!^!_$8|!_!`$:u!`!a$8X!a#O$2S#O#P$4h#P~$2S#^$2]Y(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!`$2S!`!a$8X!a#O$2S#O#P$4h#P~$2S#[$3SW(]W&k!bOY$2{Zw$2{wx$3lx!`$2{!`!a$6`!a#O$2{#O#P$4h#P~$2{#S$3qU&k!bOY$3lZ!`$3l!`!a$4T!a#O$3l#O#P$4h#P~$3l#S$4[SYp&k!bOY%qZ#O%q#O#P&S#P~%q#S$4mV&k!bOY$3lYZ$3lZ]$3l]^$5S^#O$3l#O#P$5n#P~$3l#S$5XV&k!bOY$3lYZ%qZ!`$3l!`!a$4T!a#O$3l#O#P$4h#P~$3l#S$5sX&k!bOY$3lYZ%qZ]$3l]^$5S^!`$3l!`!a$4T!a#O$3l#O#P$4h#P~$3l#[$6iUYp(]W&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W#U$7SW'pQ&k!bOY$6{Zr$6{rs$3ls!`$6{!`!a$7l!a#O$6{#O#P$4h#P~$6{#U$7uUYp'pQ&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S#^$8dWYp(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&e$9XZ(]W'pQ&k!b!j$VOY$2SZr$2Srs$2{sw$2Swx$6{x!_$2S!_!`$9z!`!a$8X!a#O$2S#O#P$4h#P~$2S&e$:VY!k$V(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!`$2S!`!a$8X!a#O$2S#O#P$4h#P~$2S&e$;QY!f$V(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!`$2S!`!a$8X!a#O$2S#O#P$4h#P~$2S%s$;{Y(hP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`-z!`#O$e#O#P&S#P~$e%s$^!a#O$e#O#P&S#P~$e%s$=tW!f$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s$>iY(]W'pQ&k!b!j$VOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e!m$?dW'uP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&i$@]`(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#o$?|#o~$e&i$An`(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers$Bpsw$ewx$C]x!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#o$?|#o~$e&c$ByU(]W'o$w&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W%k$CfU'pQ([$V&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S%s$DTX!Z$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!}$e!}#O$Dp#O#P&S#P~$e!m$D{W(SP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%w$Ej_&k!bOY$FiYZ$F|Z]$Fi]^$Gu^!Q$Fi!Q![$H]![!w$Fi!w!x$Ia!x#O$Fi#O#P% e#P#i$Fi#i#j$Lc#j#l$Fi#l#m%!R#m~$Fi!l$FpSXY&k!bOY%qZ#O%q#O#P&S#P~%q%w$GVYXY'n$Z&k!bOX%qXY+^YZ(vZ]%q]^+^^p%qpq+^q#O%q#O#P*r#P~%q%w$G|TXY&k!bOY%qYZ+^Z#O%q#O#P&S#P~%q!l$HdUXY&k!bOY%qZ!Q%q!Q![$Hv![#O%q#O#P&S#P~%q!l$H}UXY&k!bOY%qZ!Q%q!Q![$Fi![#O%q#O#P&S#P~%q!l$IfY&k!bOY%qZ!Q%q!Q![$JU![!c%q!c!i$JU!i#O%q#O#P&S#P#T%q#T#Z$JU#Z~%q!l$JZY&k!bOY%qZ!Q%q!Q![$Jy![!c%q!c!i$Jy!i#O%q#O#P&S#P#T%q#T#Z$Jy#Z~%q!l$KOY&k!bOY%qZ!Q%q!Q![$Kn![!c%q!c!i$Kn!i#O%q#O#P&S#P#T%q#T#Z$Kn#Z~%q!l$KsY&k!bOY%qZ!Q%q!Q![$Lc![!c%q!c!i$Lc!i#O%q#O#P&S#P#T%q#T#Z$Lc#Z~%q!l$LhY&k!bOY%qZ!Q%q!Q![$MW![!c%q!c!i$MW!i#O%q#O#P&S#P#T%q#T#Z$MW#Z~%q!l$M]Y&k!bOY%qZ!Q%q!Q![$M{![!c%q!c!i$M{!i#O%q#O#P&S#P#T%q#T#Z$M{#Z~%q!l$NQY&k!bOY%qZ!Q%q!Q![$Np![!c%q!c!i$Np!i#O%q#O#P&S#P#T%q#T#Z$Np#Z~%q!l$NuY&k!bOY%qZ!Q%q!Q![$Fi![!c%q!c!i$Fi!i#O%q#O#P&S#P#T%q#T#Z$Fi#Z~%q!l% lVXY&k!bOY%qYZ%qZ]%q]^&n^#O%q#O#P&S#P~%q!l%!WY&k!bOY%qZ!Q%q!Q![%!v![!c%q!c!i%!v!i#O%q#O#P&S#P#T%q#T#Z%!v#Z~%q!l%!{Y&k!bOY%qZ!Q%q!Q![%#k![!c%q!c!i%#k!i#O%q#O#P&S#P#T%q#T#Z%#k#Z~%q!l%#rYXY&k!bOY%qZ!Q%q!Q![%#k![!c%q!c!i%#k!i#O%q#O#P&S#P#T%q#T#Z%#k#Z~%q%w%$mX![#u(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P#Q%%Y#Q~$e#Q%%eW(_d(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s%&YY(]W'pQ&k!b!c$VOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e&i%'Xb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#d$?|#d#e%(a#e#o$?|#o~$e&i%(pb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#X$?|#X#Y%)x#Y#o$?|#o~$e&i%*Xb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#f$?|#f#g%+a#g#o$?|#o~$e&i%+pa(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#U%,u#U#o$?|#o~$e&i%-Ub(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#h$?|#h#i%.^#i#o$?|#o~$e&i%.mb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#c$?|#c#d%/u#d#o$?|#o~$e&i%0Ub(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#f$?|#f#g%1^#g#o$?|#o~$e&i%1ms(]W'pQ!W$U'rq'yS&k!bOY$eZq$eqr%3zrs%Wsu$euv%3zvw%5jwx'Sxy%6hyz$ez{%3z{|%3z|}$e}!O%7a!O!P$e!P!Q%3z!Q![$?|![!^$e!^!_%8_!_!`%3z!`!a%9]!a!c$e!c!}$?|!}#O%:Z#O#P&S#P#Q$e#Q#R%3z#R#S$?|#S#T$e#T#o$?|#o#p$e#p#q%;P#q#r$e#r#s%4u#s~$e!q%4VY(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`#O$e#O#P&S#P~$e!q%5QW(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!q%5uZ(]W'pQ#`T&k!bOY$eZr$ers%Wsv$evw%4uwx'Sx!_$e!_!`%4u!`#O$e#O#P&S#P~$e!q%6qY(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sxy$eyz%4uz#O$e#O#P&S#P~$e!q%7lZ(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`!a%4u!a#O$e#O#P&S#P~$e!q%8jZ(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!^$e!^!_%3z!_!`%4u!`#O$e#O#P&S#P~$e!q%9hZ(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`!a%3z!a#O$e#O#P&S#P~$e!q%:dX(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P#Q%4u#Q~$e!q%;[[(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`#O$e#O#P&S#P#p$e#p#q%4u#q~$e&i%i[(]W'pQ!b$V&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P#p$e#p#q%?_#q~$e%s%?jW(W$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!}%@_W!Ya(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!q%ASa(]W'pQ&UP&k!bOX$eXY%BXZp$epq%BXqr$ers%Wsw$ewx'Sx!c$e!c!}%Cg!}#O$e#O#P&S#P#R$e#R#S%Cg#S#T$e#T#o%Cg#o~$e!q%Bba(]W'pQ&k!bOX$eXY%BXZp$epq%BXqr$ers%Wsw$ewx'Sx!c$e!c!}%Cg!}#O$e#O#P&S#P#R$e#R#S%Cg#S#T$e#T#o%Cg#o~$e!q%Cr`(]W'pQdT&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![%Cg![!c$e!c!}%Cg!}#O$e#O#P&S#P#R$e#R#S%Cg#S#T$e#T#o%Cg#o~$e",tokenizers:[Up,Ep,0,1,2,3,4,5,6,7],topRules:{Program:[0,266]},dynamicPrecedences:{84:1,91:1,98:1,104:-10,105:1,110:-1,116:-10,117:1,172:1,175:-10,221:-1,225:2,226:2,265:-10,319:3,363:1,364:3,365:1,366:1},specialized:[{term:310,get:e=>Ip[e]||-1},{term:32,get:e=>Vp[e]||-1},{term:70,get:e=>Cp[e]||-1},{term:317,get:e=>Ap[e]||-1}],tokenPrec:22135}),jp=Wa.define({parser:Gp.configure({props:[Ha.add({IfStatement:oo({except:/^\s*({|else\b)/}),TryStatement:oo({except:/^\s*({|catch)\b/}),LabeledStatement:ao,CaseStatement:e=>e.baseIndent+e.unit,BlockComment:()=>-1,Statement:oo({except:/^{/})}),so.add({"DeclarationList CompoundStatement EnumeratorList FieldDeclarationList InitializerList":Oo,BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({"typedef struct union enum class typename decltype auto template operator friend noexcept namespace using __attribute__ __declspec __based":Ou.definitionKeyword,"extern MsCallModifier MsPointerModifier extern static register inline const volatile restrict _Atomic mutable constexpr virtual explicit VirtualSpecifier Access":Ou.modifier,"if else switch for while do case default return break continue goto throw try catch":Ou.controlKeyword,"new sizeof delete static_assert":Ou.operatorKeyword,"NULL nullptr":Ou.null,this:Ou.self,"True False":Ou.bool,"TypeSize PrimitiveType":Ou.standard(Ou.typeName),TypeIdentifier:Ou.typeName,FieldIdentifier:Ou.propertyName,"CallExpression/FieldExpression/FieldIdentifier":Ou.function(Ou.propertyName),StatementIdentifier:Ou.labelName,Identifier:Ou.variableName,"CallExpression/Identifier":Ou.function(Ou.variableName),"CallExpression/ScopedIdentifier/Identifier":Ou.function(Ou.variableName),DestructorName:Ou.name,NamespaceIdentifier:Ou.namespace,OperatorName:Ou.operator,ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,AssignOp:Ou.definitionOperator,UpdateOp:Ou.updateOperator,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Number:Ou.number,String:Ou.string,"RawString SystemLibString":Ou.special(Ou.string),CharLiteral:Ou.character,EscapeSequence:Ou.escape,PreProcArg:Ou.meta,"PreprocDirectiveName #include #ifdef #ifndef #if #define #else #endif #elif":Ou.processingInstruction,MacroName:Ou.special(Ou.name),"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,"< >":Ou.angleBracket,". ->":Ou.derefOperator,", ;":Ou.separator})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\})$/}});var Lp=Object.freeze({__proto__:null,cpp:function(){return new Ga(jp)},cppLanguage:jp});const Np={__proto__:null,true:34,false:34,null:40,void:44,byte:46,short:46,int:46,long:46,char:46,float:46,double:46,boolean:46,extends:60,super:62,class:74,this:76,new:82,public:98,protected:100,private:102,abstract:104,static:106,final:108,strictfp:110,default:112,synchronized:114,native:116,transient:118,volatile:120,throws:148,implements:158,interface:164,enum:174,instanceof:234,open:263,module:265,requires:270,transitive:272,exports:274,to:276,opens:278,uses:280,provides:282,with:284,package:288,import:292,if:304,else:306,while:310,for:314,var:321,assert:328,switch:332,case:338,do:342,break:346,continue:350,return:354,throw:360,try:364,catch:368,finally:376},Dp=Ll.deserialize({version:13,states:"# rQ]QPOOO&qQQO'#HYO(uQQO'#CbOOQO'#Cb'#CbO(|QPO'#CaOOQO'#H_'#H_OOQO'#Ct'#CtO*iQPO'#D^O+SQQO'#HfOOQO'#Hf'#HfO-hQQO'#HaO-oQQO'#HaOOQO'#Ha'#HaOOQO'#H`'#H`O/pQPO'#DTO/}QPO'#GjO2uQPO'#D^O2|QPO'#DyO(|QPO'#EZO3oQPO'#EZOOQO'#DU'#DUO4}QQO'#H]O7UQQO'#EdO7]QPO'#EcO7bQPO'#EeOOQO'#H^'#H^O5eQQO'#H^O8eQQO'#FfO8lQPO'#EvO8qQPO'#E{O8qQPO'#E}OOQO'#H]'#H]OOQO'#HU'#HUOOQO'#Ge'#GeOOQO'#HT'#HTO:OQPO'#FgOOQO'#HS'#HSOOQO'#Gd'#GdQ]QPOOOOQO'#Hl'#HlO:TQPO'#HlO:YQPO'#DzO:YQPO'#EUO:YQPO'#EPO:bQPO'#HiO:sQQO'#EeO(|QPO'#C`O:{QPO'#C`O(|QPO'#FaO;QQPO'#FcO;]QPO'#FiO;]QPO'#FlO:YQPO'#FqO;bQPO'#FnO8qQPO'#FuO;]QPO'#FwO]QPO'#F|O;gQPO'#GOO;rQPO'#GQO;}QPO'#GSO;]QPO'#GUO8qQPO'#GVOW,5>WO!$iQPO,5:fO!$wQPO,5:pO!%PQPO,5:kO!%[QPO,5>TOKpQPO,5>TO! bQPO,59UO!%gQQO,58zO!%oQQO,5;{O!%wQQO,5;}O(|QPO,5;}O8qQPO'#DTO]QPO,5YO!-jQPO,5:VO:YQPO'#GlO!-qQPO,5>XOOQO1G1w1G1wOOQO1G.w1G.wO!.[QPO'#CxO!.zQPO'#HfO!/UQPO'#CyO!/dQPO'#HeO!/lQPO,59cOOQO1G.{1G.{OEPQPO1G.{O!0SQPO,59dO!0aQQO'#HYO!0rQQO'#CbOOQO,5:a,5:aO:YQPO,5:bOOQO,5:`,5:`O!1TQQO,5:`OOQO1G/Z1G/ZO!1YQPO,5:aO!1kQPO'#GoO!2OQPO,5>aOOQO1G/y1G/yO!2WQPO'#DuO!2iQPO'#D^O!2pQPO1G/yO!!aQPO'#GmO!2uQPO1G1WO8qQPO1G1WO:YQPO'#GuO!2}QPO,5>hOOQO1G0}1G0}OOQO1G0P1G0PO!3VQPO'#E[OOQO1G0a1G0aO!3vQPO1G1wON}QPO1G0aO!$iQPO1G0QO!$wQPO1G0[O!%PQPO1G0VOOQO1G/[1G/[O!3{QQO1G.pO7]QPO1G0iO(|QPO1G0iO:bQPO'#HiO!5oQQO1G.pOOQO1G.p1G.pO!5tQQO1G0hOOQO1G0k1G0kO!5{QPO1G0kO!6WQQO1G.oO!6nQQO'#HjO!6{QPO,59rO!8[QQO1G0oO!9sQQO1G0oO!;RQQO1G0oO!;`QQO1G0oO!aQQO1G0|OOQO1G0|1G0|OOQO1G1m1G1mO! VQPO'#DpO!@bQPO'#DZO!!aQPO'#D{O!!aQPO'#D|OOQO1G0Q1G0QO!@iQPO1G0QO!@nQPO1G0QO!@vQPO1G0QO!ARQPO'#EWOOQO1G0[1G0[O!AfQPO1G0[O!AkQPO'#ESO!!aQPO'#EROOQO1G0V1G0VO!BeQPO1G0VO!BjQPO1G0VO!BrQPO'#EgO!ByQPO'#EgOOQO'#Gt'#GtO!CRQQO1G0lO!DrQQO1G3oO7]QPO1G3oO!FqQPO'#FVOOQO1G.f1G.fOOQO1G1g1G1gO!FxQPO1G1iOOQO1G1i1G1iO!GTQQO1G1iO!G]QPO1G1oOOQO1G1r1G1rO)UQPO'#D^O+SQQO,5<`O!KQQPO,5<`O!KcQPO,5<[O!KjQPO,5<[OOQO1G1t1G1tOOQO1G1y1G1yOOQO1G1{1G1{O8qQPO1G1{O# ZQPO'#FyOOQO1G1}1G1}O;]QPO1G2SOOQO1G2U1G2UOOQO1G2W1G2WOOQO1G2Y1G2YOOQO1G2[1G2[OOQO1G2]1G2]O# bQQO'#HYO#!]QQO'#CbO+SQQO'#HfO##WQQOOO##tQQO'#EdO##cQQO'#H^OKpQPO'#GcO##{QPO,5<|OOQO'#G|'#G|O#$TQPO1G2_O#(OQPO'#GZOPOOQO1G.}1G.}OOQO7+$g7+$gOOQO1G/z1G/zO#0WQQO1G/zOOQO1G/|1G/|O#0]QPO1G/zOOQO1G/{1G/{O:YQPO1G/|OOQO,5=Z,5=ZOOQO-E:m-E:mOOQO7+%e7+%eOOQO,5=X,5=XOOQO-E:k-E:kO8qQPO7+&rOOQO7+&r7+&rOOQO,5=a,5=aOOQO-E:s-E:sO#0bQPO'#ETO#0pQPO'#ETOOQO'#Gs'#GsO#1XQPO,5:vOOQO,5:v,5:vOOQO7+'c7+'cOOQO7+%{7+%{OOQO7+%l7+%lO!@iQPO7+%lO!@nQPO7+%lO!@vQPO7+%lOOQO7+%v7+%vO!AfQPO7+%vOOQO7+%q7+%qO!BeQPO7+%qO!BjQPO7+%qOOQO7+&T7+&TOOQO'#Ed'#EdO7]QPO7+&TO7]QPO,5>TO#1xQPO7+$[OOQO7+&S7+&SOOQO7+&V7+&VO8qQPO'#GhO#2WQPO,5>UOOQO1G/^1G/^O8qQPO7+&jO#2cQQO,59dO#3fQPO'#DqO! VQPO'#DqO#3qQPO'#HrO#3yQPO,5:[O#4dQQO'#HbO#5PQQO'#CtO! SQPO'#HqO#5oQPO'#DoO#5yQPO'#HqO#6[QPO'#DoO#6dQPO'#HzO#6iQPO'#E_OOQO'#Hk'#HkOOQO'#Gi'#GiO#6qQPO,59uOOQO,59u,59uO#6xQPO'#HlOOQO,5:g,5:gO#8`QPO'#HwOOQO'#EO'#EOOOQO,5:h,5:hO#8kQPO'#EXO:YQPO'#EXO#8|QPO'#HxO#9XQPO,5:rO! SQPO'#HqO!!aQPO'#HqO#9aQPO'#DoOOQO'#Gq'#GqO#9hQPO,5:nOOQO,5:n,5:nOOQO,5:m,5:mOOQO,5;R,5;RO#:bQQO,5;RO#:iQPO,5;ROOQO-E:r-E:rOOQO7+&W7+&WOOQO7+)Z7+)ZO#:pQQO7+)ZOOQO'#Gx'#GxO#<^QPO,5;qOOQO,5;q,5;qO#PQPO'#HlO8qQPO'#FzO#>XQPO7+'nO#>^QPO,5<}O! SQPO,5<}O#>cQPO1G2hO#?iQPO1G2hOOQO1G2h1G2hOOQO-E:z-E:zOOQO7+'y7+'yO!1kQPO'#G]OkOOQO1G.n1G.nOOQO<S,5>SOOQO,5=Q,5=QOOQO-E:d-E:dO#DgQPO7+%fOOQO7+%f7+%fOOQO7+%h7+%hOOQO<^OOQO1G/v1G/vO#HcQPO'#HnO#HjQPO,59wO#HoQPO,5>]O! SQPO,59wO#HzQPO,5:ZO#6iQPO,5:yO! SQPO,5>]O!!aQPO,5>]O#6dQPO,5>fOOQO,5:Z,5:ZOL]QPO'#DsOOQO,5>f,5>fO#ISQPO'#E`OOQO,5:y,5:yO#LQQPO,5:yO!!aQPO'#DwOOQO-E:g-E:gOOQO1G/a1G/aOOQO,5:x,5:xO!!aQPO'#GpO#LVQPO,5>cOOQO,5:s,5:sO#LbQPO,5:sO#LpQPO,5:sO#MRQPO'#GrO#MiQPO,5>dO#MtQPO'#EYOOQO1G0^1G0^O#M{QPO1G0^O! SQPO,5:oOOQO-E:o-E:oOOQO1G0Y1G0YOOQO1G0m1G0mO#NQQQO1G0mOOQO<jOOQO1G1X1G1XO$$lQPO'#FSOOQO,5=c,5=cOOQO-E:u-E:uO$$qQPO'#GkO$%OQPO,5>[OOQO1G/t1G/tOOQO<rAN>rO!@iQPOAN>rOOQOAN>wAN>wOOQOAN?ZAN?ZO7]QPOAN?ZO$%gQPO,5:^OOQO1G/w1G/wOOQO,5=Y,5=YOOQO-E:l-E:lO$%rQPO,5>`OOQO1G/c1G/cOOQO1G3w1G3wO$&TQPO1G/cOOQO1G/u1G/uOOQO1G0e1G0eO#LQQPO1G0eO#6dQPO'#HtO$&YQPO1G3wO! SQPO1G3wOOQO1G4Q1G4QOJsQPO'#DuOJSQPO'#D^OOQO,5:z,5:zO$&eQPO,5:zO$&eQPO,5:zO$&lQQO'#H]O$&sQQO'#H^O$&}QQO'#EaO$'YQPO'#EaOOQO,5:c,5:cOOQO,5=[,5=[OOQO-E:n-E:nOOQO1G0_1G0_O$'bQPO1G0_OOQO,5=^,5=^OOQO-E:p-E:pO$'pQPO,5:tOOQO7+%x7+%xOOQO7+&X7+&XOOQO1G1^1G1^O$'wQQO1G1^OOQO-E:w-E:wO$(PQQO'#IRO$'zQPO1G1^O#NgQPO1G1^O(|QPO1G1^OOQOAN@ZAN@ZO$([QQO<mO$+YQPO7+&xO$+_QQO'#ISOOQOAN@lAN@lO$+jQQOAN@lOOQOAN@hAN@hO$+qQPOAN@hO$+vQQO<nOOQOG26WG26WOOQOG26SG26SOOQO<hO!RwO!SwO!TwO!UwO!VwO!WwO!XwO!YxO![wO!]wO!^wO~Of!Qag!Qau!Qa!t!Qa!y!Qa$f!Qa%{!Qa%}!Qa&m!Qa&W!Qa~P?^O#x$pO~Or$rO~Ot$sO%ySO~Ot!kO%yqa%{qa%}qa&oqaYqavqa&gqa&jqa!Oqa&Vqapqa~OWqa#^qa#`qa#bqa#cqa#dqa#eqa#fqa#gqa#iqa#mqa#pqa&Wqa#nqarqa{qa~PAXOt!kO%ySOp&bX!O&bX!a&bX~OY&bX#n&bX~PCVO!a$vOp!_X!O!_XY!_X~Op$wO!O&aX~O!O$yO~Ou$zO~Of[Og[O%y0aO%{!dO%}UO&Z$}O~O&V&XP~PDdO%ySO%{!dO%}UO~OWhXW%|XY%|XZ%|XthXt%|X!a%|X#[%|X#^%|X#`%|X#b%|X#c%|X#d%|X#e%|X#f%|X#g%|X#i%|X#m%|X#p%|X%yhX%{hX%}hX&V%|X&WhX&W%|X&g%|X&ohX&o%|X&q!`X~OYhXY!`Xp!`XvhX&ghX&jhX~PE[OWUXW&UXYUXZUXtUXt&UX!aUX#[UX#^UX#`UX#bUX#cUX#dUX#eUX#fUX#gUX#iUX#mUX#pUX%y&UX%{&UX%}&UX&VUX&WUX&W&UX&gUX&oUX&o&UX&q!`X~OY!`XY&UXp!`Xv&UX&g&UX&j&UX~PGoOf[Og[O%ySO%{!dO%}UOf!QXg!QX%{!QX%}!QX~P?^Ot!kOv%XO%ySO%{%UO%}%TO&j%WO~OW!tOY&YX&g&YX&o&YX~PJsOY%ZO~P7gOf[Og[O%{!dO%}UO~Op%]OY&iX~OY%_O~Of[Og[O%ySO%{!dO%}UOY&iP~P?^OY%eO&g%cO&o#cO~Op%fO&q#sOY&pX~OY%hO~O%ySOf%^ag%^au%^a!R%^a!S%^a!T%^a!U%^a!V%^a!W%^a!X%^a!Y%^a![%^a!]%^a!^%^a!t%^a!y%^a$f%^a%{%^a%}%^a&m%^a&W%^a~O{%iO~P]O|%jO~Ot!kO%ySO%{!oO%}!oO~Oo%vOv%wO%{RO%}!aO&W!uO~Oy%uO~P! bOy%yO%{RO%}!aO&W!uO~OY&^P~P8qOf[Og[O%ySO%{!dO%}UO~O|aO~P8qOW!tOt!kO%ySO&o&YX~O#p#pO!O#qa#^#qa#`#qa#b#qa#c#qa#d#qa#e#qa#f#qa#g#qa#i#qa#m#qa&V#qa&W#qa&g#qaY#qa#n#qar#qap#qa{#qa~On&^O|&]O!q&_O&W&[O~O|&dO!q&_O~On&hO|&gO&W&[O~OZ#eOt&lO%ySO~OW$kO|&rO~OW$kO!O&tO~OW&uO!O&vO~O$f!UO%{0cO%}0bO!O&^P~P-vO!O'RO#n'SO~P7gO|'TO~O$a'VO~O!O'WO~O!O'XO~O!O'YO~P7gO!O'[O~P7gOZ$UO_TO`TOaTObTOcTOdTOf[Og[Oo}OviOy|O%ySO%{'^O%}']O~P?^O%O'gO%S'hOZ${a_${a`${aa${ab${ac${ad${af${ag${ao${au${av${ay${a|${a!O${a!R${a!S${a!T${a!U${a!V${a!W${a!X${a!Y${a!Z${a![${a!]${a!^${a!t${a!y${a#d${a#p${a#r${a#s${a#w${a#x${a$U${a$W${a$^${a$a${a$c${a$f${a$j${a$l${a$q${a$s${a$u${a$w${a$z${a$|${a%s${a%y${a%{${a%}${a&m${a{${a$_${a$o${a~O|'nOY&sP~P8qO|qa!qqa&wqa~PAXOW$kO!O'uO~Or'vO~Ot!kO%ySOp&ba!O&ba!a&baY&ba#n&ba~O|'wO~P8qOp$wO!O&aa~Of[Og[O%y0aO%{!dO%}UO~O&Z(OO~P!-yOt!kO%ySOp&YX&V&YXY&YX&g&YX!O&YX~O|&YX!q&YX~P!.cOn(QOo(QOpmX&VmX~Op(RO&V&XX~O&V(TO~Ot!kOv(VO%ySO%{RO%}!aO~OYla&gla&ola~P!/qOW%|XY!`Xp!`Xt!`X%y!`X~OWUXY!`Xp!`Xt!`X%y!`X~OW(YO~Ot!kO%ySO%{!oO%}!oO&j([O~Of[Og[O%ySO%{!dO%}UO~P?^Op%]OY&ia~Ot!kO%ySO%{!oO%}!oO&j%WO~O%ySO~P1eOY(_O~OY(bO&g%cO~Op%fOY&pa~Of[Og[OuyO{(jO!t{O%ySO%{!dO%}UO&mbO~P?^O!O(kO~OW^iZ#WXt^i!O^i!a^i#[^i#^^i#`^i#b^i#c^i#d^i#e^i#f^i#g^i#i^i#m^i#p^i&V^i&W^i&g^i&o^iY^i#n^ir^ip^i{^i~OW(zO~Or({O~P7gOy(|O%{RO%}!aO~O!O]iY]i#n]ir]ip]i{]i~P7gOp(}OY&^X!O&^X~P7gOY)PO~O#p#pO!O#]i#^#]i#`#]i#b#]i#c#]i#d#]i#e#]i#i#]i#m#]i&V#]i&W#]i&g#]iY#]i#n#]ir#]ip#]i{#]i~O#f#nO#g#nO~P!7QO#^#iO#e#mO#f#nO#g#nO#i#rO#p#pO&V#gO&W#gO!O#]i#`#]i#b#]i#c#]i#m#]i&g#]iY#]i#n#]ir#]ip#]i{#]i~O#d#lO~P!8fO#^#iO#e#mO#f#nO#g#nO#i#rO#p#pO&V#gO&W#gO!O#]i#b#]i#c#]i#m#]iY#]i#n#]ir#]ip#]i{#]i~O#`#jO#d#lO&g#hO~P!9zO#d#]i~P!8fO#p#pO!O#]i#`#]i#b#]i#c#]i#d#]i#e#]i#m#]i&g#]iY#]i#n#]ir#]ip#]i{#]i~O#^#iO#f#nO#g#nO#i#rO&V#gO&W#gO~P!;gO#f#]i#g#]i~P!7QO#n)QO~P7gO#^&YX#`&YX#b&YX#c&YX#d&YX#e&YX#f&YX#g&YX#i&YX#m&YX#p&YX&W&YX#n&YXr&YX{&YX~P!.cO!O#jiY#ji#n#jir#jip#ji{#ji~P7gOf[Og[OuyO|aO!O)`O!RwO!SwO!TwO!UwO!V)dO!WwO!XwO!YxO![wO!]wO!^wO!t{O!yzO%ySO%{)WO%})XO&W&[O&mbO~O{)cO~P!>wO|&]O~O|&]O!q&_O~On&^O|&]O!q&_O~O%ySO%{!oO%}!oO{&lP!O&lP~P?^O|&dO~Of[Og[OuyO{)rO!O)pO!t{O!yzO%ySO%{!dO%}UO&W&[O&mbO~P?^O|&gO~On&hO|&gO~Or)tO~P8qOt)vO%ySO~Ot&lO|'wO%ySOW#Yi!O#Yi#^#Yi#`#Yi#b#Yi#c#Yi#d#Yi#e#Yi#f#Yi#g#Yi#i#Yi#m#Yi#p#Yi&V#Yi&W#Yi&g#Yi&o#YiY#Yi#n#Yir#Yip#Yi{#Yi~O|&]OW&]it&]i!O&]i#^&]i#`&]i#b&]i#c&]i#d&]i#e&]i#f&]i#g&]i#i&]i#m&]i#p&]i&V&]i&W&]i&g&]i&o&]iY&]i#n&]ir&]ip&]i{&]i~O#{*OO#}*PO$P*PO$Q*QO$R*RO~O{)}O~P!F`O$X*SO%{RO%}!aO~OW*TO!O*UO~O$_*VOZ$]i_$]i`$]ia$]ib$]ic$]id$]if$]ig$]io$]iu$]iv$]iy$]i|$]i!O$]i!R$]i!S$]i!T$]i!U$]i!V$]i!W$]i!X$]i!Y$]i!Z$]i![$]i!]$]i!^$]i!t$]i!y$]i#d$]i#p$]i#r$]i#s$]i#w$]i#x$]i$U$]i$W$]i$^$]i$a$]i$c$]i$f$]i$j$]i$l$]i$q$]i$s$]i$u$]i$w$]i$z$]i$|$]i%s$]i%y$]i%{$]i%}$]i&m$]i{$]i$o$]i~Of[Og[O$f#`O%{!dO%}UO~O!O*ZO~P8qO!O*[O~OZ^O_TO`TOaTObTOcTOdTOf[Og[Oo}OuyOviOy|O|aO!OtO!RwO!SwO!TwO!UwO!VwO!WwO!XwO!Y*aO!Z!^O![wO!]wO!^wO!t{O!yzO#dnO#pmO#rnO#snO#w!PO#x!OO$U!QO$W!RO$^!SO$a!TO$c!VO$f!UO$j!WO$l!XO$o*bO$q!YO$s!ZO$u![O$w!]O$z!_O$|!`O%ySO%{QO%}PO&mbO~O{*`O~P!KoOWhXW%|XY%|XZ%|XthXt%|X!O%|X%yhX%{hX%}hX&WhX&ohX&o%|X~OWUXW&UXYUXZUXtUXt&UX!OUX%y&UX%{&UX%}&UX&W&UX&oUX&o&UX~OW#aOt#bO&o#cO~OW&QXY%VXt&QX!O%VX&o&QX~OZ#WX~P##cOY*hO!O*fO~O%O'gO%S'hOZ${i_${i`${ia${ib${ic${id${if${ig${io${iu${iv${iy${i|${i!O${i!R${i!S${i!T${i!U${i!V${i!W${i!X${i!Y${i!Z${i![${i!]${i!^${i!t${i!y${i#d${i#p${i#r${i#s${i#w${i#x${i$U${i$W${i$^${i$a${i$c${i$f${i$j${i$l${i$q${i$s${i$u${i$w${i$z${i$|${i%s${i%y${i%{${i%}${i&m${i{${i$_${i$o${i~OZ*kO~O%O'gO%S'hOZ%Ti_%Ti`%Tia%Tib%Tic%Tid%Tif%Tig%Tio%Tiu%Tiv%Tiy%Ti|%Ti!O%Ti!R%Ti!S%Ti!T%Ti!U%Ti!V%Ti!W%Ti!X%Ti!Y%Ti!Z%Ti![%Ti!]%Ti!^%Ti!t%Ti!y%Ti#d%Ti#p%Ti#r%Ti#s%Ti#w%Ti#x%Ti$U%Ti$W%Ti$^%Ti$a%Ti$c%Ti$f%Ti$j%Ti$l%Ti$q%Ti$s%Ti$u%Ti$w%Ti$z%Ti$|%Ti%s%Ti%y%Ti%{%Ti%}%Ti&m%Ti{%Ti$_%Ti$o%Ti~OW&QXt&QX#^&QX#`&QX#b&QX#c&QX#d&QX#e&QX#f&QX#g&QX#i&QX#m&QX#p&QX&V&QX&W&QX&g&QX&o&QX~O!a*pO#[#dOY&QXZ#WX~P#,OOY&OXp&OX{&OX!O&OX~P7gO|'nO{&rP~P8qOY&OXf%XXg%XX%y%XX%{%XX%}%XXp&OX{&OX!O&OX~Op*sOY&sX~OY*uO~O|'wO{&dP~P8qOp&cX!O&cX{&cXY&cX~P7gO&ZTa~P<^On(QOo(QOpma&Vma~Op(RO&V&Xa~OW*}O~Ov+OO~Ot!kO%ySO%{+SO%}+RO~Of[Og[Ou#]O!t#_O%{!dO%}UO&m#[O~Of[Og[OuyO{+XO!t{O%ySO%{!dO%}UO&mbO~P?^Ov+dO%{RO%}!aO&W!uO~Op(}OY&^a!O&^a~O#^la#`la#bla#cla#dla#ela#fla#gla#ila#mla#pla&Wla#nlarla{la~P>hOn+iOp!eX&V!eX~Op+kO&V&fX~O&V+mO~OW&UXt&UX%y&UX%{&UX%}&UX&W&UX~OZ!`X~P#4OOWhXthX%yhX%{hX%}hX&WhX~OZ!`X~P#4kOf[Og[Ou#]O!t#_O!y#^O&W&[O&m#[O~O%{)WO%})XO~P#5WOf[Og[O%ySO%{)WO%})XO~O|aO!O+wO~OZ+xO~O|+zO!l+}O~O{,PO~P!>wO|aOf&`Xg&`Xu&`X!R&`X!S&`X!T&`X!U&`X!V&`X!W&`X!X&`X!Y&`X![&`X!]&`X!^&`X!t&`X!y&`X%y&`X%{&`X%}&`X&W&`X&m&`X~Op,RO|&kX!O&kX~OZ#eO|&]Op!{X{!{X!O!{X~Op,WO{&lX!O&lX~O{,ZO!O,YO~O&W&[O~P3TOf[Og[OuyO{,_O!O)pO!t{O!yzO%ySO%{!dO%}UO&W&[O&mbO~P?^Or,`O~P7gOr,`O~P8qO|&]OW&]qt&]q!O&]q#^&]q#`&]q#b&]q#c&]q#d&]q#e&]q#f&]q#g&]q#i&]q#m&]q#p&]q&V&]q&W&]q&g&]q&o&]qY&]q#n&]qr&]qp&]q{&]q~O{,dO~P!F`O!V,hO#|,hO%{RO%}!aO~O!O,kO~O$X,lO%{RO%}!aO~O!a$vO#n,nOp!_X!O!_X~O!O,pO~P7gO!O,pO~P8qO!O,sO~P7gO{,uO~P!KoO!Z#yO#n,vO~O!O,xO~O!a,yO~OY,|OZ$UO_TO`TOaTObTOcTOdTOf[Og[Oo}OviOy|O%ySO%{'^O%}']O~P?^OY,|O!O,}O~O%O'gO%S'hOZ%Tq_%Tq`%Tqa%Tqb%Tqc%Tqd%Tqf%Tqg%Tqo%Tqu%Tqv%Tqy%Tq|%Tq!O%Tq!R%Tq!S%Tq!T%Tq!U%Tq!V%Tq!W%Tq!X%Tq!Y%Tq!Z%Tq![%Tq!]%Tq!^%Tq!t%Tq!y%Tq#d%Tq#p%Tq#r%Tq#s%Tq#w%Tq#x%Tq$U%Tq$W%Tq$^%Tq$a%Tq$c%Tq$f%Tq$j%Tq$l%Tq$q%Tq$s%Tq$u%Tq$w%Tq$z%Tq$|%Tq%s%Tq%y%Tq%{%Tq%}%Tq&m%Tq{%Tq$_%Tq$o%Tq~O|'nO~P8qOp-YO{&rX~O{-[O~Op*sOY&sa~Op-`O{&dX~O{-bO~Ov-cO~Op!`Xt!`X!O!`X!a!`X%y!`X~OZ%|X~P#DlOZUX~P#DlO!O-dO~OZ-eO~OW^yZ#WXt^y!O^y!a^y#[^y#^^y#`^y#b^y#c^y#d^y#e^y#f^y#g^y#i^y#m^y#p^y&V^y&W^y&g^y&o^yY^y#n^yr^yp^y{^y~OY%[ap%[a!O%[a~P7gO!O#lyY#ly#n#lyr#lyp#ly{#ly~P7gOn+iOp!ea&V!ea~Op+kO&V&fa~OZ+xO~PCVO!O-rO~O!l+}O|&ea!O&ea~O|aO!O-uO~OZ^O_TO`TOaTObTOcTOdTOf[Og[Oo.TOuyOv.SOy|O{.OO|aO!OtO!Z!^O!t{O!yzO#dnO#pmO#rnO#snO#w!PO#x!OO$U!QO$W!RO$^!SO$a!TO$c!VO$f!UO$j!WO$l!XO$q!YO$s!ZO$u![O$w!]O$z!_O$|!`O%ySO%{QO%}PO&W!uO&mbO~P?^O|+zO~Op,RO|&ka!O&ka~O|&]Op!{a{!{a!O!{a~OZ#eO|&]Op!{a{!{a!O!{a~O%ySO%{!oO%}!oOp%fX{%fX!O%fX~P?^Op,WO{&la!O&la~O{!|X~P!>wO{._O~Or.`O~P7gOW$kO!O.aO~OW$kO$O.fO%{RO%}!aO!O&uP~OW$kO$S.gO~O!O.hO~O!a$vO#n.jOp!_X!O!_X~OY.lO~O!O.mO~P7gO#n.nO~P7gO!a.pO~OY.qOZ$UO_TO`TOaTObTOcTOdTOf[Og[Oo}OviOy|O%ySO%{'^O%}']O~P?^OW!wOt&TX%y&TX%{&TX%}&TX&w&TX~O&W!uO~P$!}Ot!kO%ySO&w.sO%{%QX%}%QX~OY&OXp&OX~P7gO|'nOp%jX{%jX~P8qOp-YO{&ra~O!a.yO~O|'wOp%_X{%_X~P8qOp-`O{&da~OY.|O~O!O.}O~OZ/OO~O&g%cOp!fa&V!fa~Ot!kO%ySO|&ha!O&ha!l&ha~O!O/TO~O!l+}O|&ei!O&ei~O{/YO~P]OW/[O~P3vOZ#eO!O&QX~P#,OOW$POZ#eO&o#cO~Oo/^Ov/^O~O|&]Op!{i{!{i!O!{i~O{!|a~P!>wOW$kO!O/`O~OW$kOp/aO!O&uX~OY/eO~P7gOY/gO~OY%Vq!O%Vq~P7gO&w.sO%{%Qa%}%Qa~OY/lO~Ot!kO!O/oO!Y/pO%ySO~OY/qO~O&g%cOp!fi&V!fi~Ot!kO%ySO|&hi!O&hi!l&hi~O!l+}O|&eq!O&eq~O{/sO~P]Oo/uOv%wOy%uO%{RO%}!aO&W!uO~O!O/vO~Op/aO!O&ua~O!O/zO~OW$kOp/aO!O&vX~OY/|O~P7gOY/}O~OY%Vy!O%Vy~P7gOt!kO%ySO%{%qa%}%qa&w%qa~OY0OO~Ot!kO!O0PO!Y0QO%ySO~Oo0TO%{RO%}!aO~OW(zOZ#eO~O!O0VO~OW$kOp%na!O%na~Op/aO!O&va~O!O0XO~Ot!kO!O0XO!Y0YO%ySO~O!O0[O~O!O0]O~O!O0_O~O!O0`O~O#n%|XY%|Xr%|Xp%|X{%|X~P$tO#nUXYUXrUXpUX{UX~P&xO`#e~",goto:"#&b&wPPPP&x']*l-oP']PP.T.X/mPPPPPP1XPP2q5b7{:f;Oa!A]1X!By!Fe!ISPP!Km!KpP!My!NP# m# |#!S##S##l#$g#$p#$s#%PP#%S#%`P#%g#%nP#%qP#%zP#%}#&Q#&T#&X#&_srOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/Z'kpOVW^_amnv!W!Y!]!_!e!l!p!u!w!z!{#Q#U#X#Z#b#d#e#i#j#k#l#m#n#o#r#s#t#u#w#}$U$V$W$X$Y$Z$h$l$u$v${$|%R%S%[%]%`%a%c%e%j&V&[&]&^&_&d&g&h&l&m&o&z&{&}'S'T'_'n'w(Q(R(b(f(i(})Q)R)T)Y)[)b)m)n)q)v*V*X*Z*[*_*b*e*f*k*p+V+i+k+n+q+t+u+x+z+},R,W,Y,],n,p,y,}-R-Y-`-q-z-|-}.P.Q.^.j.m.p.r.y.|/S/X/Z/j/n/p/q0Q0S0Y0d#rfO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Yt!cS!O!Q!R!h!j$T$p*O*P*Q*R,g,i.f.g/a0aQ#YbS%Y!{-|Q%m#[U%r#a$P/[Q%y#cW'a$h*f,}.rU'k$k&u*TQ'l$lS(W%S/XU(w%t+c/tQ(|%zQ+U(fQ+a(zQ-]*sR-g+Vu!cS!O!Q!R!h!j$T$p*O*P*Q*R,g,i.f.g/a0aT$m!b'}#uoO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Y#tjO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0YX'b$h*f,}.r#}iO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0Y%tYOV^acmnv|!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*p+i+u+x+z+},R,Y,n,p,y,}-Y-`-}.P.Q.^.j.m.p.r.y/Z/p0Q0Y0dQ%Q!wQ(U%RV-P*k-T.s%tYOV^acmnv|!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*p+i+u+x+z+},R,Y,n,p,y,}-Y-`-}.P.Q.^.j.m.p.r.y/Z/p0Q0Y0dV-P*k-T.s%tZOV^acmnv|!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*p+i+u+x+z+},R,Y,n,p,y,}-Y-`-}.P.Q.^.j.m.p.r.y/Z/p0Q0Y0dV-Q*k-T.sS!vY-PS$O|%uS%t#a$PQ%z#cQ+c(zQ.U+zR/t/[$eXO^amnv!W!Y!]!_!u#X#b#d#e#i#j#k#l#m#n#o#r#s#w$U$V$W$X$Y$Z$h$l$v%c%e&^&_&h&l&}'S'T'n'w(Q(R(b(})Q)v*V*Z*[*_*b*f*p+i+z+},R,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YQ%O!uR*{(R%u]OV^acmnv!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$U$V$W$X$Y$Z$h$l$v${%]%c%e%j&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*k*p+i+u+x+z+},R,Y,n,p,y,}-T-Y-`-}.P.Q.^.j.m.p.r.s.y/Z/p0Q0Y0d!o!mW!e!n!p!{#Z#u$n$u$|%S%[%`&V&{'_(f)R)Y)m*X*e+V+n+q+t,]-R-q-z-|.|/S/X/j/n/q0S#|iO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YQ$V!SQ$W!TQ$]!XQ$f!^R*c'VQ#fgS&p#}(yQ(v%sQ)z&qQ+`(xQ,U)iQ-k+bQ.Z,VQ/Q-lS/].S.TQ/w/^Q0U/uR0Z0TQ&`#zW(m%n&a&b&cQ)y&pU+Y(n(o(pQ,T)iQ,b)zS-h+Z+[S.Y,U,VQ/P-iR/_.ZX)`&])b,Y.^rcOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZW!}^#Q%]+xQ&|$XW'c$h*f,}.rS(g%j(iW)Z&])b,Y.^S)j&d,WS)o&g)qR-T*kh!rW!U#Z#`&{(f)Y)m*X+V+q,]Q'{$wQ(X%WR+P([#rlOamnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Yv!pW!U!{#Z#`$w%W%[%`&{'_([(f*X*e+V-S-|.vQ#S^Q#zyQ#{zQ#|{Q%n#]Q%o#^Q%p#_Q(d%fS)S&[+kY)^&])Z)b,Y.^S)i&d,WQ+j)TW+n)Y)m+q,]Q+v)[Q,V)jT-x+t-zU'y$v'w-`R)x&oW)`&])b,Y.^T)p&g)qQ&c#zQ&k#|Q(p%nQ(u%pY)[&])Z)b,Y.^V)n&g)o)qQ)U&[R-o+kQ+h)SR-n+j#tlO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0YQ+y)^S-q+n-xR-{+vT#Q^+xU#O^#Q+xR(]%]Q+|)_Q-s+pQ-w+sQ/V-yR/r/WrtOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZQ$i!`Q&Y#sQ'Z$fQ'j$jW)`&])b,Y.^Q*m'hQ+w)]Q,Q)dQ-U*lR-u+rrrOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZS(h%j(iW)`&])b,Y.^T)p&g)qQ&b#zS(o%n&cR+[(pQ&a#zQ&f#{U(n%n&b&cQ(r%oS+Z(o(pR-i+[Q)h&_R)s&hQ&j#|S(t%p&kR+_(uQ&i#|U(s%p&j&kS+^(t(uR-j+_S(h%j(iT)p&g)qrrOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZW)`&])b,Y.^T)p&g)qQ&e#{S(q%o&fR+](rQ)k&dR.[,WR,[)lQ%k#YR(l%mT(h%j(iQ+{)_S-v+s+|R/U-wR.Q+zWi$h*f,}.r#ujO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Y#|gO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YU%s#a$P/[S(x%t/tQ+b(zR-l+cT&n#}&o!]#ik!|$[$d$g%x%{%|&P&Q&R&S&U&X'm'x)u*Y*]+e+g,a,r,w-W.i.o/f/i!V#jk!|$[$d$g%x%{%|&Q&U&X'm'x)u*Y*]+e+g,a,r,w-W.i.o/f/i#ulO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Ya'o$l'n*p-Y.y/p0Q0YQ'q$lR-^*sQ&s$QQ's$oR*v'tT){&r)|stOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZrsOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZQ$a!ZR$c![R$Y!VrtOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZR&}$XR$Z!VR'U$]T*^'T*_X'e$i'f'j*nR*l'gQ-S*kR.v-TQ'i$iQ*j'fQ*o'jR-V*nR$j!`Q'd$hV,{*f,}.rQvOQ#XaW#xv#X.P/ZQ.P+zR/Z.QrVOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/Zl!gV!l!z#U#t${%R%a&m&z)T+u-}0d!j!lW!e!p!{#Z#u$u$|%S%[%`&V&{'_(f)R)Y)m*X*e+V+n+q+t,]-R-q-z-|.|/S/X/j/n/q0SQ!z^Q#U_#^#tmn!W!]!_#b#d#e#i#j#k#l#m#n#o#s$U$l$v%c%e&^&_&h&l&}'S'n'w(Q(b(})Q)v*Z*[*b*p+i+},R,n,p,y-Y-`.j.m.p.y/p0Q0YS${!u(RQ%R!wj%a#Q%]%j&]&d&g(i)b)q*k,W,Y.^S&m#}&oY&z$X$h*f,}.rS)T&[+kS+u)[)nQ-}+xR0d#rQ(S%OR*|(S^!nW!{#u&V&{'_)Rx$n!e#Z$|%S%[%`(f)Y)m*X*e+V+q+t,]-R-z-|/X/j[$t!n$n$u/S/n0SS$u!p+nQ/S-qQ/n.|R0S/qQ)O%|R+f)OQ)b&]S,O)b.^R.^,Y!l`O^av!Y#Q#X#w$V$W$X$Y$Z$h%]%j&]&d&g'T(i)b)q*V*_*f*k+x+z,W,Y,}.P.Q.^.r/ZY!fV!z%a&z-}T#V`!fQ-a*wR.{-aQ$x!rR'|$xQ%d#RS(a%d/RR/R-mQ+l)UR-p+lQ%^#OR(^%^Q,S)fR.X,SQ)q&gR,^)qQ,X)kR.],XQ(i%jR+W(iQ&o#}R)w&oQ%g#SR(e%gQ-Z*qR.x-ZQ*t'qR-_*tQ)|&rR,c)|Q,g*OR.c,gQ/b.dS/y/b/{R/{/dQ*_'TR,t*_Q'f$iS*i'f*nR*n'jQ.t-RR/k.tQ*g'dR-O*g`uOav#X+z.P.Q/ZQ$^!YQ&Z#wQ&x$VQ&y$WQ'P$YQ'Q$ZS*^'T*_R,m*V'YqOVW^_amnv!W!Y!]!_!e!l!p!u!w!z!{#Q#U#X#Z#b#d#e#i#j#k#l#m#n#o#r#s#t#u#w#}$U$V$W$X$Y$Z$h$u$v${$|%R%S%[%]%`%a%c%e%j&V&[&]&^&_&d&g&h&l&m&o&z&{&}'S'T'_'w(Q(R(b(f(i(})Q)R)T)Y)[)b)m)n)q)v*V*X*Z*[*_*b*e*f*k+V+i+k+n+q+t+u+x+z+},R,W,Y,],n,p,y,}-R-`-q-z-|-}.P.Q.^.j.m.p.r.|/S/X/Z/j/n/q0S0da'p$l'n*p-Y.y/p0Q0YQ!bSQ$Q!OQ$R!QQ$S!RQ$o!hQ$q!jQ&w$TQ't$pQ'}0aS,e*O*QQ,i*PQ,j*RQ.b,gS.d,i.fQ/d.gR/x/a%oROS^abmnv!O!Q!R!W!Y!]!_!h!j!{#X#[#a#b#c#d#e#i#j#k#l#m#n#o#s#w$P$T$U$V$W$X$Y$Z$h$k$l$p$v%S%e%t%z&l&u&}'S'T'n'w(b(f(z(})Q)v*O*P*Q*R*T*V*Z*[*_*b*f*p*s+V+c+z,g,i,n,p,y,}-Y-`-|.P.Q.f.g.j.m.p.r.y/X/Z/[/a/p/t0Q0Y0aQ'r$lQ*q'nS-X*p.yQ.w-YQ0R/pQ0W0QR0^0YrkOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZS!|^$UQ#pmQ#vnQ$[!WQ$d!]Q$g!_Q%x#bQ%{#dY%|#e$X*Z,p.mQ&O#iQ&P#jQ&Q#kQ&R#lQ&S#mQ&T#nQ&U#oQ&X#s^'m$l'n-Y.y/p0Q0YU'x$v'w-`Q(c%eQ)u&lQ*Y&}Q*]'SQ+Q(bQ+e(}Q+g)QQ,a)vQ,r*[Q,w*bQ-W*pQ.i,nQ.o,yQ/f.jR/i.p#reO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0YW'`$h*f,}.rR.R+zrWOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZW!eV#t${&zQ!{^Q#Zc!|#umn!W!]!_#b#d#e#i#j#k#l#m#n#o#s$U$l$v%e&l&}'S'n'w(b(})Q)v*Z*[*b*p,n,p,y-Y-`.j.m.p.y/p0Q0Yd$|!u%c&^&_&h(Q(R+i+},RQ%S!zQ%[!}S%`#Q%]Q&V#rQ&{$XW'_$h*f,}.rS(f%j(iQ)R0dW)Y&])b,Y.^S)m&g)qQ*X&|Q*e'cQ+V(gQ+q)ZS+t)[)nQ,])oS-R*k-TQ-z+uQ-|+xQ/X-}R/j.s%t]OV^acmnv!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$U$V$W$X$Y$Z$h$l$v${%]%c%e%j&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*k*p+i+u+x+z+},R,Y,n,p,y,}-T-Y-`-}.P.Q.^.j.m.p.r.s.y/Z/p0Q0Y0dQ#}|Q&q$OR(y%u&PUOV^acmnv|!W!Y!]!_!u!w!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%R%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*k*p+i+u+x+z+},R,Y,n,p,y,}-T-Y-`-}.P.Q.^.j.m.p.r.s.y/Z/p0Q0Y0dR%P!u#zhOamnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YQ#R^Q%O!uQ&W#rQ(`%cQ)e&^U)f&_&h+}Q*z(QQ*{(RQ-m+iR.W,RQ(P$}R*y(O#|dO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YT%q#a/[Q%}#eQ'O$XQ,q*ZQ.k,pR/h.mX)a&])b,Y.^!{_OV^`av!Y!f!z#Q#X#w$V$W$X$Y$Z$h%]%a%j&]&d&g&z'T(i)b)q*V*_*f*k+x+z,W,Y,}-}.P.Q.^.r/ZU!sW!U&{U%l#Z#`*XS+T(f)mQ+o)YS-f+V,]R-t+qj!qW!U#Z#`$w%W([(f)Y)m+V+q,]U%V!{%`-|Q(Z%[Q*W&{Q*d'_Q,o*XQ,z*eQ.u-SR/m.vQ'z$vQ*w'wR.z-`R*x'w[)]&]&g)b)q,Y.^T+r)Z)oR)V&[W+p)Y)m+q,]Q-y+tR/W-zS#P^+xR%b#QS)g&_&hR.V+}R)l&dW)_&])b,Y.^R+s)ZR#T^R*r'nR'r$lT,f*O,gQ.e,iR/c.fR/c.g",nodeNames:"⚠ LineComment BlockComment Program ModuleDeclaration MarkerAnnotation Identifier ScopedIdentifier . Annotation ) ( AnnotationArgumentList AssignmentExpression FieldAccess IntegerLiteral FloatingPointLiteral BooleanLiteral CharacterLiteral StringLiteral null ClassLiteral void PrimitiveType TypeName ScopedTypeName GenericType TypeArguments AnnotatedType Wildcard extends super , ArrayType ] Dimension [ class this ParenthesizedExpression ObjectCreationExpression new ArgumentList } { ClassBody ; FieldDeclaration Modifiers public protected private abstract static final strictfp default synchronized native transient volatile VariableDeclarator Definition AssignOp ArrayInitializer MethodDeclaration TypeParameters TypeParameter TypeBound FormalParameters ReceiverParameter FormalParameter SpreadParameter Throws throws Block ClassDeclaration Superclass SuperInterfaces implements InterfaceTypeList InterfaceDeclaration interface ExtendsInterfaces InterfaceBody ConstantDeclaration EnumDeclaration enum EnumBody EnumConstant EnumBodyDeclarations AnnotationTypeDeclaration AnnotationTypeBody AnnotationTypeElementDeclaration StaticInitializer ConstructorDeclaration ConstructorBody ExplicitConstructorInvocation ArrayAccess MethodInvocation MethodName MethodReference ArrayCreationExpression Dimension AssignOp BinaryExpression CompareOp CompareOp LogicOp BitOp BitOp LogicOp ArithOp ArithOp ArithOp BitOp InstanceofExpression instanceof LambdaExpression InferredParameters TernaryExpression LogicOp : UpdateExpression UpdateOp UnaryExpression LogicOp BitOp CastExpression ElementValueArrayInitializer ElementValuePair open module ModuleBody ModuleDirective requires transitive exports to opens uses provides with PackageDeclaration package ImportDeclaration import Asterisk ExpressionStatement LabeledStatement Label IfStatement if else WhileStatement while ForStatement for ForSpec LocalVariableDeclaration var EnhancedForStatement ForSpec AssertStatement assert SwitchStatement switch SwitchBlock SwitchLabel case DoStatement do BreakStatement break ContinueStatement continue ReturnStatement return SynchronizedStatement ThrowStatement throw TryStatement try CatchClause catch CatchFormalParameter CatchType FinallyClause finally TryWithResourcesStatement ResourceSpecification Resource",maxTerm:269,nodeProps:[[Di.group,-26,4,46,75,76,81,86,91,143,145,148,149,151,154,156,159,161,163,165,170,172,174,176,178,179,181,189,"Statement",-24,6,13,14,15,16,17,18,19,20,21,38,39,40,98,99,101,102,105,116,118,120,123,125,128,"Expression",-7,22,23,24,25,26,28,33,"Type"],[Di.openedBy,10,"(",43,"{"],[Di.closedBy,11,")",44,"}"]],skippedNodes:[0,1,2],repeatNodeCount:27,tokenData:"7q~R{X^#xpq#xqr$mrs$ztu%ruv&Wvw&ewx&uxy(Pyz(Uz{(Z{|(e|}(u}!O(z!O!P)_!P!Q+j!Q!R,x!R![.n![!]3Z!]!^3h!^!_3m!_!`4Q!`!a4Y!a!b4p!b!c4w!c!}6W!}#O6l#P#Q6q#Q#R6v#R#S%r#T#o%r#o#p7O#p#q7T#q#r7g#r#s7l#y#z#x$f$g#x#BY#BZ#x$IS$I_#x$I|$JO#x$JT$JU#x$KV$KW#x&FU&FV#x~#}Y%u~X^#xpq#x#y#z#x$f$g#x#BY#BZ#x$IS$I_#x$I|$JO#x$JT$JU#x$KV$KW#x&FU&FV#xR$rP#rP!_!`$uQ$zO#^Q~$}UOY$zZr$zrs%as#O$z#O#P%f#P~$z~%fOc~~%iROY$zYZ$zZ~$z~%wT%{~tu%r!Q![%r!c!}%r#R#S%r#T#o%r~&]P#f~!_!`&`Q&eO#[Q~&jQ&g~vw&p!_!`&`~&uO#`~~&xTOY'XZw'Xx#O'X#O#P's#P~'X~'[UOY'XZw'Xwx'nx#O'X#O#P's#P~'X~'sOb~~'vROY'XYZ'XZ~'X~(UOZ~~(ZOY~R(bP$XP#eQ!_!`&`~(jQ#d~{|(p!_!`&`~(uO#p~~(zOp~~)PR#d~}!O(p!_!`&`!`!a)Y~)_O&q~~)dQWU!O!P)j!Q![)u~)mP!O!P)p~)uO&j~P)zW`P!Q![)u!f!g*d!g!h*i!h!i*d#R#S+d#W#X*d#X#Y*i#Y#Z*dP*iO`PP*lR{|*u}!O*u!Q![*{P*xP!Q![*{P+QU`P!Q![*{!f!g*d!h!i*d#R#S*u#W#X*d#Y#Z*dP+gP!Q![)u~+oR#eQz{+x!P!Q,m!_!`&`~+{ROz+xz{,U{~+x~,XTOz+xz{,U{!P+x!P!Q,h!Q~+x~,mOQ~~,rQP~OY,mZ~,m~,}a_~!O!P.S!Q![.n!d!e/q!f!g*d!g!h*i!h!i*d!n!o/f!q!r0`!z!{0w#R#S/k#U#V/q#W#X*d#X#Y*i#Y#Z*d#`#a/f#c#d0`#l#m0wP.XV`P!Q![)u!f!g*d!g!h*i!h!i*d#W#X*d#X#Y*i#Y#Z*d~.sZ_~!O!P.S!Q![.n!f!g*d!g!h*i!h!i*d!n!o/f#R#S/k#W#X*d#X#Y*i#Y#Z*d#`#a/f~/kO_~~/nP!Q![.n~/tQ!Q!R/z!R!S/z~0PT_~!Q!R/z!R!S/z!n!o/f#R#S/q#`#a/f~0cP!Q!Y0f~0kS_~!Q!Y0f!n!o/f#R#S0`#`#a/f~0zS!O!P1W!Q![1y!c!i1y#T#Z1yP1ZR!Q![1d!c!i1d#T#Z1dP1gU!Q![1d!c!i1d!r!s*i#R#S1W#T#Z1d#d#e*i~2OX_~!O!P2k!Q![1y!c!i1y!n!o/f!r!s*i#R#S2}#T#Z1y#`#a/f#d#e*iP2nT!Q![1d!c!i1d!r!s*i#T#Z1d#d#e*i~3QR!Q![1y!c!i1y#T#Z1y~3`P#n~![!]3c~3hO&o~~3mO!O~~3rQ&W~!^!_3x!_!`$u~3}P#g~!_!`&`~4VP!a~!_!`$u~4_Q&V~!_!`$u!`!a4e~4jQ#g~!_!`&`!`!a3xV4wO&ZT#mQ~4|P%y~#]#^5P~5SP#b#c5V~5YP#h#i5]~5`P#X#Y5c~5fP#f#g5i~5lP#Y#Z5o~5rP#T#U5u~5xP#V#W5{~6OP#X#Y6R~6WO&m~~6]T%}~tu6W!Q![6W!c!}6W#R#S6W#T#o6W~6qOt~~6vOr~Q6{P#bQ!_!`&`~7TO|~V7[Q&wT#bQ!_!`&`#p#q7bQ7gO#cQ~7lO{~~7qO#s~",tokenizers:[0,1,2],topRules:{Program:[0,3]},dynamicPrecedences:{26:1,228:-1,236:-1},specialized:[{term:227,get:e=>Np[e]||-1}],tokenPrec:7012}),Mp=Wa.define({parser:Dp.configure({props:[Ha.add({IfStatement:oo({except:/^\s*({|else\b)/}),TryStatement:oo({except:/^\s*({|catch|finally)\b/}),LabeledStatement:ao,SwitchBlock:e=>{let t=e.textAfter,n=/^\s*\}/.test(t),r=/^\s*(case|default)\b/.test(t);return e.baseIndent+(n?0:r?1:2)*e.unit},BlockComment:()=>-1,Statement:oo({except:/^{/})}),so.add({"Block SwitchBlock ClassBody ElementValueArrayInitializer ModuleBody EnumBody ConstructorBody InterfaceBody ArrayInitializer":Oo,BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({null:Ou.null,instanceof:Ou.operatorKeyword,this:Ou.self,"new super assert open to with void":Ou.keyword,"class interface extends implements module package import enum":Ou.definitionKeyword,"switch while for if else case default do break continue return try catch finally throw":Ou.controlKeyword,"requires exports opens uses provides public private protected static transitive abstract final strictfp synchronized native transient volatile throws":Ou.modifier,IntegerLiteral:Ou.integer,FloatLiteral:Ou.float,StringLiteral:Ou.string,CharacterLiteral:Ou.character,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,BooleanLiteral:Ou.bool,PrimitiveType:Ou.standard(Ou.typeName),TypeName:Ou.typeName,Identifier:Ou.variableName,"MethodName/Identifier":Ou.function(Ou.variableName),Definition:Ou.definition(Ou.variableName),ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,AssignOp:Ou.definitionOperator,UpdateOp:Ou.updateOperator,Asterisk:Ou.punctuation,Label:Ou.labelName,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,", ;":Ou.separator})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\})$/}});var Fp=Object.freeze({__proto__:null,java:function(){return new Ga(Mp)},javaLanguage:Mp});const Bp=Ll.deserialize({version:13,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#CjOOQO'#Cp'#CpQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CrOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59U,59UO!iQPO,59UOVQPO,59QOqQPO'#CkO!nQPO,59^OOQO1G.k1G.kOVQPO'#ClO!vQPO,59aOOQO1G.p1G.pOOQO1G.l1G.lOOQO,59V,59VOOQO-E6i-E6iOOQO,59W,59WOOQO-E6j-E6j",stateData:"#O~OcOS~OQSORSOSSOTSOWQO]ROePO~OVXOeUO~O[[O~PVOg^O~Oh_OVfX~OVaO~OhbO[iX~O[dO~Oh_OVfa~OhbO[ia~O",goto:"!kjPPPPPPkPPkqwPPk{!RPPP!XP!ePP!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName ] [ Array",maxTerm:25,nodeProps:[[Di.openedBy,7,"{",12,"["],[Di.closedBy,8,"}",13,"]"]],skippedNodes:[0],repeatNodeCount:2,tokenData:"(p~RaXY!WYZ!W]^!Wpq!Wrs!]|}$i}!O$n!Q!R$w!R![&V![!]&h!}#O&m#P#Q&r#Y#Z&w#b#c'f#h#i'}#o#p(f#q#r(k~!]Oc~~!`Upq!]qr!]rs!rs#O!]#O#P!w#P~!]~!wOe~~!zXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#g~#jR!Q![#s!c!i#s#T#Z#s~#vR!Q![$P!c!i$P#T#Z$P~$SR!Q![$]!c!i$]#T#Z$]~$`R!Q![!]!c!i!]#T#Z!]~$nOh~~$qQ!Q!R$w!R![&V~$|RT~!O!P%V!g!h%k#X#Y%k~%YP!Q![%]~%bRT~!Q![%]!g!h%k#X#Y%k~%nR{|%w}!O%w!Q![%}~%zP!Q![%}~&SPT~!Q![%}~&[ST~!O!P%V!Q![&V!g!h%k#X#Y%k~&mOg~~&rO]~~&wO[~~&zP#T#U&}~'QP#`#a'T~'WP#g#h'Z~'^P#X#Y'a~'fOR~~'iP#i#j'l~'oP#`#a'r~'uP#`#a'x~'}OS~~(QP#f#g(T~(WP#i#j(Z~(^P#X#Y(a~(fOQ~~(kOW~~(pOV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0});const Hp=Wa.define({parser:Bp.configure({props:[Ha.add({Object:oo({except:/^\s*\}/}),Array:oo({except:/^\s*\]/})}),so.add({"Object Array":Oo}),zc({String:Ou.string,Number:Ou.number,"True False":Ou.bool,PropertyName:Ou.propertyName,null:Ou.null,",":Ou.separator,"[ ]":Ou.squareBracket,"{ }":Ou.brace})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});var Kp=Object.freeze({__proto__:null,json:function(){return new Ga(Hp)},jsonLanguage:Hp,jsonParseLinter:()=>e=>{try{JSON.parse(e.state.doc.toString())}catch(t){if(!(t instanceof SyntaxError))throw t;const n=function(e,t){let n;return(n=e.message.match(/at position (\d+)/))?Math.min(+n[1],t.length):(n=e.message.match(/at line (\d+) column (\d+)/))?Math.min(t.line(+n[1]).from+ +n[2]-1,t.length):0}(t,e.state.doc);return[{from:n,message:t.message,severity:"error",to:n}]}return[]}});const Jp=[21,47,48,228,63,121,52,55,203,60,61,56,59,71],ef=new Rl(((e,t)=>{if(e.next<0)e.acceptToken(167);else if(10!=e.next&&13!=e.next);else if(t.context.depth<0)e.acceptToken(165,1);else{e.advance();let t=0;for(;32==e.next||9==e.next;)e.advance(),t++;let n=10==e.next||13==e.next||35==e.next;e.acceptToken(n?166:164,-t)}}),{contextual:!0,fallback:!0}),tf=new Rl(((e,t)=>{let n=t.context.depth;if(n<0)return;let r=e.peek(-1);if((10==r||13==r)&&t.context.depth>=0){let t=0,r=0;for(;;){if(32==e.next)t++;else{if(9!=e.next)break;t+=8-t%8}e.advance(),r++}t!=n&&10!=e.next&&13!=e.next&&35!=e.next&&(te.depth<0&&Jp.indexOf(t)>-1?e.parent:e,shift:(e,t,n,r)=>162==t?new nf(e,n.pos-r.pos):163==t?e.parent:22==t||53==t||57==t?new nf(e,-1):e,hash:e=>e.hash}),af=new Rl((e=>{for(let t=0;t<5;t++){if(e.next!="print".charCodeAt(t))return;e.advance()}if(!/\w/.test(String.fromCharCode(e.next)))for(let t=0;;t++){let n=e.peek(t);if(32!=n&&9!=n)return void(40!=n&&46!=n&&10!=n&&13!=n&&35!=n&&e.acceptToken(1))}})),of={__proto__:null,await:40,or:48,and:50,in:54,not:56,is:58,if:64,else:66,lambda:70,yield:88,from:90,async:98,for:100,None:152,True:154,False:154,del:168,pass:172,break:176,continue:180,return:184,raise:192,import:196,as:198,global:202,nonlocal:204,assert:208,elif:218,while:222,try:228,except:230,finally:232,with:236,def:240,class:250},sf=Ll.deserialize({version:13,states:"!?pO`Q$IXOOO%cQ$I[O'#GaOOQ$IS'#Cm'#CmOOQ$IS'#Cn'#CnO'RQ$IWO'#ClO(tQ$I[O'#G`OOQ$IS'#Ga'#GaOOQ$IS'#DR'#DROOQ$IS'#G`'#G`O)bQ$IWO'#CqO)rQ$IWO'#DbO*SQ$IWO'#DfOOQ$IS'#Ds'#DsO*gO`O'#DsO*oOpO'#DsO*wO!bO'#DtO+SO#tO'#DtO+_O&jO'#DtO+jO,UO'#DtO-lQ$I[O'#GQOOQ$IS'#GQ'#GQO'RQ$IWO'#GPO/OQ$I[O'#GPOOQ$IS'#E]'#E]O/gQ$IWO'#E^OOQ$IS'#GO'#GOO/qQ$IWO'#F}OOQ$IV'#F}'#F}O/|Q$IWO'#FPOOQ$IS'#Fr'#FrO0RQ$IWO'#FOOOQ$IV'#H]'#H]OOQ$IV'#F|'#F|OOQ$IT'#FR'#FRQ`Q$IXOOO'RQ$IWO'#CoO0aQ$IWO'#CzO0hQ$IWO'#DOO0vQ$IWO'#GeO1WQ$I[O'#EQO'RQ$IWO'#EROOQ$IS'#ET'#ETOOQ$IS'#EV'#EVOOQ$IS'#EX'#EXO1lQ$IWO'#EZO2SQ$IWO'#E_O/|Q$IWO'#EaO2gQ$I[O'#EaO/|Q$IWO'#EdO/gQ$IWO'#EgO/gQ$IWO'#EkO/gQ$IWO'#EnO2rQ$IWO'#EpO2yQ$IWO'#EuO3UQ$IWO'#EqO/gQ$IWO'#EuO/|Q$IWO'#EwO/|Q$IWO'#E|OOQ$IS'#Cc'#CcOOQ$IS'#Cd'#CdOOQ$IS'#Ce'#CeOOQ$IS'#Cf'#CfOOQ$IS'#Cg'#CgOOQ$IS'#Ch'#ChOOQ$IS'#Cj'#CjO'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O3ZQ$IWO'#DmOOQ$IS,5:W,5:WO3nQ$IWO'#GoOOQ$IS,5:Z,5:ZO3{Q%1`O,5:ZO4QQ$I[O,59WO0aQ$IWO,59_O0aQ$IWO,59_O0aQ$IWO,59_O6pQ$IWO,59_O6uQ$IWO,59_O6|Q$IWO,59gO7TQ$IWO'#G`O8ZQ$IWO'#G_OOQ$IS'#G_'#G_OOQ$IS'#DX'#DXO8rQ$IWO,59]O'RQ$IWO,59]O9QQ$IWO,59]O9VQ$IWO,5:PO'RQ$IWO,5:POOQ$IS,59|,59|O9eQ$IWO,59|O9jQ$IWO,5:VO'RQ$IWO,5:VO'RQ$IWO,5:TOOQ$IS,5:Q,5:QO9{Q$IWO,5:QO:QQ$IWO,5:UOOOO'#FZ'#FZO:VO`O,5:_OOQ$IS,5:_,5:_OOOO'#F['#F[O:_OpO,5:_O:gQ$IWO'#DuOOOO'#F]'#F]O:wO!bO,5:`OOQ$IS,5:`,5:`OOOO'#F`'#F`O;SO#tO,5:`OOOO'#Fa'#FaO;_O&jO,5:`OOOO'#Fb'#FbO;jO,UO,5:`OOQ$IS'#Fc'#FcO;uQ$I[O,5:dO>gQ$I[O,5mQ$IZO<TAN>TO#FVQ$IWO<aAN>aO/gQ$IWO1G1^O#FgQ$I[O1G1^P#FqQ$IWO'#FWOOQ$IS1G1d1G1dP#GOQ$IWO'#F^O#G]Q$IWO7+(mOOOO-E9]-E9]O#GsQ$IWO7+'qOOQ$ISAN?VAN?VO#H^Q$IWO,5P#q#r&?]#r#s&@Z#s$g$}$g~&!_v#P#o'P#o#pCU#p#q'P#q#r?[#r~'P9['^Z%q7[%hS%kW%n`%w!bOr'Prs&Rsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'P8z(WZ%q7[%kWOr(yrs)wsw(ywx;bx#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8z)UZ%q7[%hS%kW%w!bOr(yrs)wsw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8z*QZ%q7[%hS%w!bOr(yrs*ssw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8z*|Z%q7[%hS%w!bOr(yrs+osw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8r+xX%q7[%hS%w!bOw+owx,ex#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+o8r,jX%q7[Ow+owx-Vx#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+o8r-[X%q7[Ow+owx-wx#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+o7[-|R%q7[O#o-w#p#q-w#r~-w8r.[T%q7[O#o+o#o#p.k#p#q+o#q#r.k#r~+o!f.rV%hS%w!bOw.kwx/Xx#O.k#O#P0W#P#o.k#o#p0^#p~.k!f/[VOw.kwx/qx#O.k#O#P0W#P#o.k#o#p0^#p~.k!f/tUOw.kx#O.k#O#P0W#P#o.k#o#p0^#p~.k!f0ZPO~.k!f0cV%hSOw0xwx1^x#O0x#O#P2P#P#o0x#o#p.k#p~0xS0}T%hSOw0xwx1^x#O0x#O#P2P#P~0xS1aTOw0xwx1px#O0x#O#P2P#P~0xS1sSOw0xx#O0x#O#P2P#P~0xS2SPO~0x8z2[T%q7[O#o(y#o#p2k#p#q(y#q#r2k#r~(y!n2tX%hS%kW%w!bOr2krs3asw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k!n3hX%hS%w!bOr2krs4Tsw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k!n4[X%hS%w!bOr2krs.ksw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k!n4|X%kWOr2krs3asw2kwx5ix#O2k#O#P7h#P#o2k#o#p7n#p~2k!n5nX%kWOr2krs3asw2kwx6Zx#O2k#O#P7h#P#o2k#o#p7n#p~2kW6`T%kWOr6Zrs6os#O6Z#O#P7b#P~6ZW6rTOr6Zrs7Rs#O6Z#O#P7b#P~6ZW7USOr6Zs#O6Z#O#P7b#P~6ZW7ePO~6Z!n7kPO~2k!n7uX%hS%kWOr8brs9Osw8bwx:Ux#O8b#O#P;[#P#o8b#o#p2k#p~8b[8iV%hS%kWOr8brs9Osw8bwx:Ux#O8b#O#P;[#P~8b[9TV%hSOr8brs9jsw8bwx:Ux#O8b#O#P;[#P~8b[9oV%hSOr8brs0xsw8bwx:Ux#O8b#O#P;[#P~8b[:ZV%kWOr8brs9Osw8bwx:px#O8b#O#P;[#P~8b[:uV%kWOr8brs9Osw8bwx6Zx#O8b#O#P;[#P~8b[;_PO~8b8z;iZ%q7[%kWOr(yrs)wsw(ywx<[x#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y7db#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[7d=TX%q7[Or<[rs=ps#O<[#O#P>b#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[7d=uX%q7[Or<[rs-ws#O<[#O#P>b#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[7d>gT%q7[O#o<[#o#p6Z#p#q<[#q#r6Z#r~<[9[>{T%q7[O#o'P#o#p?[#p#q'P#q#r?[#r~'P#O?gX%hS%kW%n`%w!bOr?[rs@Ssw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[#O@]X%hS%n`%w!bOr?[rs@xsw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[#OARX%hS%n`%w!bOr?[rsAnsw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[!vAwV%hS%n`%w!bOwAnwx/Xx#OAn#O#PB^#P#oAn#o#pBd#p~An!vBaPO~An!vBiV%hSOw0xwx1^x#O0x#O#P2P#P#o0x#o#pAn#p~0x#OCRPO~?[#OC]X%hS%kWOr8brs9Osw8bwx:Ux#O8b#O#P;[#P#o8b#o#p?[#p~8b9[DTZ%q7[%hS%n`%w!bOr'PrsDvsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'P9SERX%q7[%hS%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~Dv9SEsT%q7[O#oDv#o#pAn#p#qDv#q#rAn#r~Dve#P#o!+X#o#p!@}#p#q!+X#q#r!>y#r~!+XDe!+h_%q7[%hS%kW%f,X%n`%w!bOY!+XYZ'PZ]!+X]^'P^r!+Xrs!,gsw!+Xwx!-gx#O!+X#O#P!>e#P#o!+X#o#p!@}#p#q!+X#q#r!>y#r~!+XDe!,tZ%q7[%hS%f,X%n`%w!bOr'PrsCxsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PDT!-p_%q7[%kW%f,XOY!.oYZ(yZ]!.o]^(y^r!.ors!/{sw!.owx!;Rx#O!.o#O#P!0y#P#o!.o#o#p!6m#p#q!.o#q#r!1_#r~!.oDT!.|_%q7[%hS%kW%f,X%w!bOY!.oYZ(yZ]!.o]^(y^r!.ors!/{sw!.owx!-gx#O!.o#O#P!0y#P#o!.o#o#p!6m#p#q!.o#q#r!1_#r~!.oDT!0WZ%q7[%hS%f,X%w!bOr(yrs*ssw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(yDT!1OT%q7[O#o!.o#o#p!1_#p#q!.o#q#r!1_#r~!.o-w!1j]%hS%kW%f,X%w!bOY!1_YZ2kZ]!1_]^2k^r!1_rs!2csw!1_wx!3Xx#O!1_#O#P!6g#P#o!1_#o#p!6m#p~!1_-w!2lX%hS%f,X%w!bOr2krs4Tsw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k-w!3`]%kW%f,XOY!1_YZ2kZ]!1_]^2k^r!1_rs!2csw!1_wx!4Xx#O!1_#O#P!6g#P#o!1_#o#p!6m#p~!1_-w!4`]%kW%f,XOY!1_YZ2kZ]!1_]^2k^r!1_rs!2csw!1_wx!5Xx#O!1_#O#P!6g#P#o!1_#o#p!6m#p~!1_,a!5`X%kW%f,XOY!5XYZ6ZZ]!5X]^6Z^r!5Xrs!5{s#O!5X#O#P!6a#P~!5X,a!6QT%f,XOr6Zrs7Rs#O6Z#O#P7b#P~6Z,a!6dPO~!5X-w!6jPO~!1_-w!6v]%hS%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!9Xx#O!7o#O#P!:{#P#o!7o#o#p!1_#p~!7o,e!7xZ%hS%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!9Xx#O!7o#O#P!:{#P~!7o,e!8rV%hS%f,XOr8brs9jsw8bwx:Ux#O8b#O#P;[#P~8b,e!9`Z%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!:Rx#O!7o#O#P!:{#P~!7o,e!:YZ%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!5Xx#O!7o#O#P!:{#P~!7o,e!;OPO~!7oDT!;[_%q7[%kW%f,XOY!.oYZ(yZ]!.o]^(y^r!.ors!/{sw!.owx!P#P#o!b#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[Bm!>UT%q7[O#o!jT%q7[O#o!+X#o#p!>y#p#q!+X#q#r!>y#r~!+X.X!?W]%hS%kW%f,X%n`%w!bOY!>yYZ?[Z]!>y]^?[^r!>yrs!@Psw!>ywx!3Xx#O!>y#O#P!@w#P#o!>y#o#p!@}#p~!>y.X!@[X%hS%f,X%n`%w!bOr?[rs@xsw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[.X!@zPO~!>y.X!AW]%hS%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!9Xx#O!7o#O#P!:{#P#o!7o#o#p!>y#p~!7oGZ!B^Z%q7[%hS%f,X%n`%w!bOr'Prs!CPsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PGZ!C`X%l#|%q7[%hS%j,X%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~DvMg!D`_Q1s%q7[%hS%kW%n`%tp%w!b%y#tOY!C{YZ$}Z]!C{]^$}^r!C{rs!E_sw!C{wx#Hqx#O!C{#O#P$(i#P#o!C{#o#p$*{#p#q!C{#q#r$)]#r~!C{JP!El_Q1s%q7[%hS%n`%w!bOY!FkYZ'PZ]!Fk]^'P^r!Fkrs#Eksw!Fkwx!Gyx#O!Fk#O#P#=u#P#o!Fk#o#p#Di#p#q!Fk#q#r#>i#r~!FkJP!Fz_Q1s%q7[%hS%kW%n`%w!bOY!FkYZ'PZ]!Fk]^'P^r!Fkrs!E_sw!Fkwx!Gyx#O!Fk#O#P#=u#P#o!Fk#o#p#Di#p#q!Fk#q#r#>i#r~!FkIo!HS_Q1s%q7[%kWOY!IRYZ(yZ]!IR]^(y^r!IRrs!J_sw!IRwx#8wx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIo!I`_Q1s%q7[%hS%kW%w!bOY!IRYZ(yZ]!IR]^(y^r!IRrs!J_sw!IRwx!Gyx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIo!Jj_Q1s%q7[%hS%w!bOY!IRYZ(yZ]!IR]^(y^r!IRrs!Kisw!IRwx!Gyx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIo!Kt_Q1s%q7[%hS%w!bOY!IRYZ(yZ]!IR]^(y^r!IRrs!Lssw!IRwx!Gyx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIg!MO]Q1s%q7[%hS%w!bOY!LsYZ+oZ]!Ls]^+o^w!Lswx!Mwx#O!Ls#O#P#!y#P#o!Ls#o#p#&m#p#q!Ls#q#r##m#r~!LsIg!NO]Q1s%q7[OY!LsYZ+oZ]!Ls]^+o^w!Lswx!Nwx#O!Ls#O#P#!y#P#o!Ls#o#p#&m#p#q!Ls#q#r##m#r~!LsIg# O]Q1s%q7[OY!LsYZ+oZ]!Ls]^+o^w!Lswx# wx#O!Ls#O#P#!y#P#o!Ls#o#p#&m#p#q!Ls#q#r##m#r~!LsHP#!OXQ1s%q7[OY# wYZ-wZ]# w]^-w^#o# w#o#p#!k#p#q# w#q#r#!k#r~# w1s#!pRQ1sOY#!kZ]#!k^~#!kIg##QXQ1s%q7[OY!LsYZ+oZ]!Ls]^+o^#o!Ls#o#p##m#p#q!Ls#q#r##m#r~!Ls3Z##vZQ1s%hS%w!bOY##mYZ.kZ]##m]^.k^w##mwx#$ix#O##m#O#P#&X#P#o##m#o#p#&m#p~##m3Z#$nZQ1sOY##mYZ.kZ]##m]^.k^w##mwx#%ax#O##m#O#P#&X#P#o##m#o#p#&m#p~##m3Z#%fZQ1sOY##mYZ.kZ]##m]^.k^w##mwx#!kx#O##m#O#P#&X#P#o##m#o#p#&m#p~##m3Z#&^TQ1sOY##mYZ.kZ]##m]^.k^~##m3Z#&tZQ1s%hSOY#'gYZ0xZ]#'g]^0x^w#'gwx#(Zx#O#'g#O#P#)m#P#o#'g#o#p##m#p~#'g1w#'nXQ1s%hSOY#'gYZ0xZ]#'g]^0x^w#'gwx#(Zx#O#'g#O#P#)m#P~#'g1w#(`XQ1sOY#'gYZ0xZ]#'g]^0x^w#'gwx#({x#O#'g#O#P#)m#P~#'g1w#)QXQ1sOY#'gYZ0xZ]#'g]^0x^w#'gwx#!kx#O#'g#O#P#)m#P~#'g1w#)rTQ1sOY#'gYZ0xZ]#'g]^0x^~#'gIo#*YXQ1s%q7[OY!IRYZ(yZ]!IR]^(y^#o!IR#o#p#*u#p#q!IR#q#r#*u#r~!IR3c#+Q]Q1s%hS%kW%w!bOY#*uYZ2kZ]#*u]^2k^r#*urs#+ysw#*uwx#-}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#,S]Q1s%hS%w!bOY#*uYZ2kZ]#*u]^2k^r#*urs#,{sw#*uwx#-}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#-U]Q1s%hS%w!bOY#*uYZ2kZ]#*u]^2k^r#*urs##msw#*uwx#-}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#.U]Q1s%kWOY#*uYZ2kZ]#*u]^2k^r#*urs#+ysw#*uwx#.}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#/U]Q1s%kWOY#*uYZ2kZ]#*u]^2k^r#*urs#+ysw#*uwx#/}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u1{#0UXQ1s%kWOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#0qs#O#/}#O#P#2T#P~#/}1{#0vXQ1sOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#1cs#O#/}#O#P#2T#P~#/}1{#1hXQ1sOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#!ks#O#/}#O#P#2T#P~#/}1{#2YTQ1sOY#/}YZ6ZZ]#/}]^6Z^~#/}3c#2nTQ1sOY#*uYZ2kZ]#*u]^2k^~#*u3c#3W]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p#*u#p~#4P2P#4YZQ1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P~#4P2P#5SZQ1s%hSOY#4PYZ8bZ]#4P]^8b^r#4Prs#5usw#4Pwx#6ox#O#4P#O#P#8c#P~#4P2P#5|ZQ1s%hSOY#4PYZ8bZ]#4P]^8b^r#4Prs#'gsw#4Pwx#6ox#O#4P#O#P#8c#P~#4P2P#6vZQ1s%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#7ix#O#4P#O#P#8c#P~#4P2P#7pZQ1s%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#/}x#O#4P#O#P#8c#P~#4P2P#8hTQ1sOY#4PYZ8bZ]#4P]^8b^~#4PIo#9Q_Q1s%q7[%kWOY!IRYZ(yZ]!IR]^(y^r!IRrs!J_sw!IRwx#:Px#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRHX#:Y]Q1s%q7[%kWOY#:PYZ<[Z]#:P]^<[^r#:Prs#;Rs#O#:P#O#P#=R#P#o#:P#o#p#/}#p#q#:P#q#r#/}#r~#:PHX#;Y]Q1s%q7[OY#:PYZ<[Z]#:P]^<[^r#:Prs#i#p#q!Fk#q#r#>i#r~!Fk3s#>v]Q1s%hS%kW%n`%w!bOY#>iYZ?[Z]#>i]^?[^r#>irs#?osw#>iwx#-}x#O#>i#O#P#DT#P#o#>i#o#p#Di#p~#>i3s#?z]Q1s%hS%n`%w!bOY#>iYZ?[Z]#>i]^?[^r#>irs#@ssw#>iwx#-}x#O#>i#O#P#DT#P#o#>i#o#p#Di#p~#>i3s#AO]Q1s%hS%n`%w!bOY#>iYZ?[Z]#>i]^?[^r#>irs#Awsw#>iwx#-}x#O#>i#O#P#DT#P#o#>i#o#p#Di#p~#>i3k#BSZQ1s%hS%n`%w!bOY#AwYZAnZ]#Aw]^An^w#Awwx#$ix#O#Aw#O#P#Bu#P#o#Aw#o#p#CZ#p~#Aw3k#BzTQ1sOY#AwYZAnZ]#Aw]^An^~#Aw3k#CbZQ1s%hSOY#'gYZ0xZ]#'g]^0x^w#'gwx#(Zx#O#'g#O#P#)m#P#o#'g#o#p#Aw#p~#'g3s#DYTQ1sOY#>iYZ?[Z]#>i]^?[^~#>i3s#Dr]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p#>i#p~#4PJP#Ex_Q1s%q7[%hS%n`%w!bOY!FkYZ'PZ]!Fk]^'P^r!Fkrs#Fwsw!Fkwx!Gyx#O!Fk#O#P#=u#P#o!Fk#o#p#Di#p#q!Fk#q#r#>i#r~!FkIw#GU]Q1s%q7[%hS%n`%w!bOY#FwYZDvZ]#Fw]^Dv^w#Fwwx!Mwx#O#Fw#O#P#G}#P#o#Fw#o#p#CZ#p#q#Fw#q#r#Aw#r~#FwIw#HUXQ1s%q7[OY#FwYZDvZ]#Fw]^Dv^#o#Fw#o#p#Aw#p#q#Fw#q#r#Aw#r~#FwMV#IO_Q1s%q7[%kW%tp%y#tOY#I}YZGQZ]#I}]^GQ^r#I}rs!J_sw#I}wx$%]x#O#I}#O#P#K_#P#o#I}#o#p$$Z#p#q#I}#q#r#LR#r~#I}MV#J`_Q1s%q7[%hS%kW%tp%w!b%y#tOY#I}YZGQZ]#I}]^GQ^r#I}rs!J_sw#I}wx#Hqx#O#I}#O#P#K_#P#o#I}#o#p$$Z#p#q#I}#q#r#LR#r~#I}MV#KfXQ1s%q7[OY#I}YZGQZ]#I}]^GQ^#o#I}#o#p#LR#p#q#I}#q#r#LR#r~#I}6y#Lb]Q1s%hS%kW%tp%w!b%y#tOY#LRYZHhZ]#LR]^Hh^r#LRrs#+ysw#LRwx#MZx#O#LR#O#P$#u#P#o#LR#o#p$$Z#p~#LR6y#Mf]Q1s%kW%tp%y#tOY#LRYZHhZ]#LR]^Hh^r#LRrs#+ysw#LRwx#N_x#O#LR#O#P$#u#P#o#LR#o#p$$Z#p~#LR6y#Nj]Q1s%kW%tp%y#tOY#LRYZHhZ]#LR]^Hh^r#LRrs#+ysw#LRwx$ cx#O#LR#O#P$#u#P#o#LR#o#p$$Z#p~#LR5c$ n]Q1s%kW%tp%y#tOY$ cYZJ|Z]$ c]^J|^r$ crs#0qsw$ cwx$ cx#O$ c#O#P$!g#P#o$ c#o#p$!{#p~$ c5c$!lTQ1sOY$ cYZJ|Z]$ c]^J|^~$ c5c$#SZQ1s%kWOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#0qs#O#/}#O#P#2T#P#o#/}#o#p$ c#p~#/}6y$#zTQ1sOY#LRYZHhZ]#LR]^Hh^~#LR6y$$d]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p#LR#p~#4PMV$%j_Q1s%q7[%kW%tp%y#tOY#I}YZGQZ]#I}]^GQ^r#I}rs!J_sw#I}wx$&ix#O#I}#O#P#K_#P#o#I}#o#p$$Z#p#q#I}#q#r#LR#r~#I}Ko$&v_Q1s%q7[%kW%tp%y#tOY$&iYZN[Z]$&i]^N[^r$&irs#;Rsw$&iwx$&ix#O$&i#O#P$'u#P#o$&i#o#p$!{#p#q$&i#q#r$ c#r~$&iKo$'|XQ1s%q7[OY$&iYZN[Z]$&i]^N[^#o$&i#o#p$ c#p#q$&i#q#r$ c#r~$&iMg$(pXQ1s%q7[OY!C{YZ$}Z]!C{]^$}^#o!C{#o#p$)]#p#q!C{#q#r$)]#r~!C{7Z$)n]Q1s%hS%kW%n`%tp%w!b%y#tOY$)]YZ!!SZ]$)]]^!!S^r$)]rs#?osw$)]wx#MZx#O$)]#O#P$*g#P#o$)]#o#p$*{#p~$)]7Z$*lTQ1sOY$)]YZ!!SZ]$)]]^!!S^~$)]7Z$+U]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p$)]#p~#4PGz$,b]$}Q%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx!_$}!_!`$-Z!`#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}Gz$-nZ!s,W%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}Gz$.t]$wQ%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx!_$}!_!`$-Z!`#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}G{$/|_%r`%q7[%kW%f,X%tp%y#tOY$0{YZGQZ]$0{]^GQ^r$0{rs$2]sw$0{wx$Jex#O$0{#O#P$Fw#P#o$0{#o#p$Ic#p#q$0{#q#r$G]#r~$0{Gk$1^_%q7[%hS%kW%f,X%tp%w!b%y#tOY$0{YZGQZ]$0{]^GQ^r$0{rs$2]sw$0{wx$Ewx#O$0{#O#P$Fw#P#o$0{#o#p$Ic#p#q$0{#q#r$G]#r~$0{DT$2h_%q7[%hS%f,X%w!bOY$3gYZ(yZ]$3g]^(y^r$3grs$Basw$3gwx$4sx#O$3g#O#P$5o#P#o$3g#o#p$={#p#q$3g#q#r$6T#r~$3gDT$3t_%q7[%hS%kW%f,X%w!bOY$3gYZ(yZ]$3g]^(y^r$3grs$2]sw$3gwx$4sx#O$3g#O#P$5o#P#o$3g#o#p$={#p#q$3g#q#r$6T#r~$3gDT$4|Z%q7[%kW%f,XOr(yrs)wsw(ywx;bx#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(yDT$5tT%q7[O#o$3g#o#p$6T#p#q$3g#q#r$6T#r~$3g-w$6`]%hS%kW%f,X%w!bOY$6TYZ2kZ]$6T]^2k^r$6Trs$7Xsw$6Twx$=Rx#O$6T#O#P$=u#P#o$6T#o#p$={#p~$6T-w$7b]%hS%f,X%w!bOY$6TYZ2kZ]$6T]^2k^r$6Trs$8Zsw$6Twx$=Rx#O$6T#O#P$=u#P#o$6T#o#p$={#p~$6T-w$8d]%hS%f,X%w!bOY$6TYZ2kZ]$6T]^2k^r$6Trs$9]sw$6Twx$=Rx#O$6T#O#P$=u#P#o$6T#o#p$={#p~$6T-o$9fZ%hS%f,X%w!bOY$9]YZ.kZ]$9]]^.k^w$9]wx$:Xx#O$9]#O#P$:s#P#o$9]#o#p$:y#p~$9]-o$:^V%f,XOw.kwx/qx#O.k#O#P0W#P#o.k#o#p0^#p~.k-o$:vPO~$9]-o$;QZ%hS%f,XOY$;sYZ0xZ]$;s]^0x^w$;swx$U]%hS%kW%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$?ysw$>}wx$Amx#O$>}#O#P$BZ#P#o$>}#o#p$6T#p~$>},e$?WZ%hS%kW%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$?ysw$>}wx$Amx#O$>}#O#P$BZ#P~$>},e$@QZ%hS%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$@ssw$>}wx$Amx#O$>}#O#P$BZ#P~$>},e$@zZ%hS%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$;ssw$>}wx$Amx#O$>}#O#P$BZ#P~$>},e$AtV%kW%f,XOr8brs9Osw8bwx:px#O8b#O#P;[#P~8b,e$B^PO~$>}DT$Bl_%q7[%hS%f,X%w!bOY$3gYZ(yZ]$3g]^(y^r$3grs$Cksw$3gwx$4sx#O$3g#O#P$5o#P#o$3g#o#p$={#p#q$3g#q#r$6T#r~$3gC{$Cv]%q7[%hS%f,X%w!bOY$CkYZ+oZ]$Ck]^+o^w$Ckwx$Dox#O$Ck#O#P$Ec#P#o$Ck#o#p$:y#p#q$Ck#q#r$9]#r~$CkC{$DvX%q7[%f,XOw+owx-Vx#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+oC{$EhT%q7[O#o$Ck#o#p$9]#p#q$Ck#q#r$9]#r~$CkGk$FUZ%q7[%kW%f,X%tp%y#tOrGQrs)wswGQwxM^x#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQGk$F|T%q7[O#o$0{#o#p$G]#p#q$0{#q#r$G]#r~$0{1_$Gl]%hS%kW%f,X%tp%w!b%y#tOY$G]YZHhZ]$G]]^Hh^r$G]rs$7Xsw$G]wx$Hex#O$G]#O#P$I]#P#o$G]#o#p$Ic#p~$G]1_$HpX%kW%f,X%tp%y#tOrHhrs3aswHhwxJWx#OHh#O#PLd#P#oHh#o#pLj#p~Hh1_$I`PO~$G]1_$Il]%hS%kW%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$?ysw$>}wx$Amx#O$>}#O#P$BZ#P#o$>}#o#p$G]#p~$>}Gk$JrZ%q7[%kW%f,X%tp%y#tOrGQrs)wswGQwx$Kex#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQGk$KtZ%i!f%q7[%kW%g,X%tp%y#tOrN[rs=OswN[wxN[x#ON[#O#P! Y#P#oN[#o#pKx#p#qN[#q#rJ|#r~N[G{$LzZf,X%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}e#P#o!+X#o#p!@}#p#q!+X#q#r!>y#r~!+XDe&'hZ%q7[%hS%f,X%n`%w!bOr'Prs&(Zsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PD]&(hX%q7[%hS%j,X%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~DvGk&)b_%q7[%kW%f,X%tp%y#tOY$0{YZGQZ]$0{]^GQ^r$0{rs$2]sw$0{wx&*ax#O$0{#O#P$Fw#P#o$0{#o#p$Ic#p#q$0{#q#r$G]#r~$0{Gk&*nZ%q7[%kW%f,X%tp%y#tOrGQrs)wswGQwx&+ax#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQFT&+nZ%q7[%kW%g,X%tp%y#tOrN[rs=OswN[wxN[x#ON[#O#P! Y#P#oN[#o#pKx#p#qN[#q#rJ|#r~N[Mg&,vc%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&%}sw$}wx&)Tx!Q$}!Q![&!_![!c$}!c!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_Mg&.hg%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&0Psw$}wx&2wx!Q$}!Q![&!_![!c$}!c!t&!_!t!u&5u!u!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#f&!_#f#g&5u#g#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_De&0^Z%q7[%hS%n`%w!b%s,XOr'Prs&1Psw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PDe&1[Z%q7[%hS%n`%w!bOr'Prs&1}sw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PD]&2[X%q7[%hS%x,X%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~DvGk&3UZ%q7[%kW%tp%y#t%m,XOrGQrs)wswGQwx&3wx#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQGk&4SZ%q7[%kW%tp%y#tOrGQrs)wswGQwx&4ux#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQFT&5SZ%q7[%kW%v,X%tp%y#tOrN[rs=OswN[wxN[x#ON[#O#P! Y#P#oN[#o#pKx#p#qN[#q#rJ|#r~N[Mg&6[c%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&0Psw$}wx&2wx!Q$}!Q![&!_![!c$}!c!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_Mg&7|k%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&%}sw$}wx&)Tx!Q$}!Q![&!_![!c$}!c!h&!_!h!i&5u!i!t&!_!t!u&,a!u!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#U&!_#U#V&,a#V#Y&!_#Y#Z&5u#Z#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_G{&:UZ!V,X%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}d]$uQ%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx!_$}!_!`$-Z!`#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}of[e]||-1}],tokenPrec:6589});function Of(e,t){let n=e.lineIndent(t.from),r=e.lineAt(e.pos,-1),i=r.from+r.text.length;return!/\S/.test(r.text)&&e.node.ton?null:n+e.unit}const lf=Wa.define({parser:sf.configure({props:[Ha.add({Body:e=>{var t;return null!==(t=Of(e,e.node))&&void 0!==t?t:e.continue()},IfStatement:e=>/^\s*(else:|elif )/.test(e.textAfter)?e.baseIndent:e.continue(),TryStatement:e=>/^\s*(except |finally:)/.test(e.textAfter)?e.baseIndent:e.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":ro({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":ro({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":ro({closing:"]"}),Script:e=>{if(e.pos+/\s*/.exec(e.textAfter)[0].length>=e.node.to){let t=null;for(let n=e.node,r=n.to;n=n.lastChild,n&&n.to==r;)"Body"==n.type.name&&(t=n);if(t){let n=Of(e,t);if(null!=n)return n}}return e.continue()}}),so.add({"Body ArrayExpression DictionaryExpression":Oo}),zc({"async '*' '**' FormatConversion":Ou.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield":Ou.controlKeyword,"in not and or is del":Ou.operatorKeyword,"import from def class global nonlocal lambda":Ou.definitionKeyword,"with as print":Ou.keyword,self:Ou.self,Boolean:Ou.bool,None:Ou.null,VariableName:Ou.variableName,"CallExpression/VariableName":Ou.function(Ou.variableName),"FunctionDefinition/VariableName":Ou.function(Ou.definition(Ou.variableName)),"ClassDefinition/VariableName":Ou.definition(Ou.className),PropertyName:Ou.propertyName,"CallExpression/MemberExpression/PropertyName":Ou.function(Ou.propertyName),Comment:Ou.lineComment,Number:Ou.number,String:Ou.string,FormatString:Ou.special(Ou.string),UpdateOp:Ou.updateOperator,ArithOp:Ou.arithmeticOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,AssignOp:Ou.definitionOperator,Ellipsis:Ou.punctuation,At:Ou.meta,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,", ;":Ou.separator})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""']},commentTokens:{line:"#"},indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/}});var cf=Object.freeze({__proto__:null,python:function(){return new Ga(lf)},pythonLanguage:lf});function uf(e){return e>=48&&e<=57}function hf(e){return uf(e)||95==e}const df=new Rl(((e,t)=>{if(uf(e.next)){let t=!1;do{e.advance()}while(hf(e.next));if(46==e.next)if(t=!0,e.advance(),uf(e.next))do{e.advance()}while(hf(e.next));else if(46==e.next||e.next>127||/\w/.test(String.fromCharCode(e.next)))return;if(101==e.next||69==e.next){if(t=!0,e.advance(),43!=e.next&&45!=e.next||e.advance(),!hf(e.next))return;do{e.advance()}while(hf(e.next))}if(102==e.next){let n=e.peek(1);if(!(51==n&&50==e.peek(2)||54==n&&52==e.peek(2)))return;e.advance(3),t=!0}t&&e.acceptToken(5)}else if(98==e.next||114==e.next){if(98==e.next&&e.advance(),114!=e.next)return;e.advance();let t=0;for(;35==e.next;)t++,e.advance();if(34!=e.next)return;e.advance();e:for(;;){if(e.next<0)return;let n=34==e.next;if(e.advance(),n){for(let n=0;n{124==e.next&&e.acceptToken(1,1)})),ff=new Rl((e=>{60==e.next?e.acceptToken(2,1):62==e.next&&e.acceptToken(3,1)})),mf={__proto__:null,self:28,super:32,crate:34,impl:46,true:72,false:72,pub:88,in:92,const:96,unsafe:104,async:108,move:110,if:114,let:118,ref:142,mut:144,_:198,else:200,match:204,as:248,return:252,await:262,break:270,continue:276,while:312,loop:316,for:320,macro_rules:327,mod:334,extern:342,struct:346,where:364,union:379,enum:382,type:390,default:395,fn:396,trait:412,use:420,static:438,dyn:476},gf=Ll.deserialize({version:13,states:"$3tQ]Q_OOP$wOWOOO&sQWO'#CnO)WQWO'#IaOOQP'#Ia'#IaOOQQ'#If'#IfO)hO`O'#C}OOQR'#Ii'#IiO)sQWO'#IvOOQO'#Hk'#HkO)xQWO'#DpOOQR'#Ix'#IxO)xQWO'#DpO*ZQWO'#DpOOQO'#Iw'#IwO,SQWO'#J`O,ZQWO'#EiOOQV'#Hp'#HpO,cQYO'#F{OOQV'#El'#ElOOQV'#Em'#EmOOQV'#En'#EnO.YQ_O'#EkO0_Q_O'#EoO2gQWOOO4QQ_O'#FPO7hQWO'#J`OOQV'#FY'#FYO7{Q_O'#F^O:WQ_O'#FaOOQO'#F`'#F`O=sQ_O'#FcO=}Q_O'#FbO@VQWO'#FgOOQO'#J`'#J`OOQV'#Ip'#IpOA]Q_O'#IoOEPQWO'#IoOOQV'#Fw'#FwOF[QWO'#JuOFcQWO'#F|OOQO'#IO'#IOOGrQWO'#GhOOQV'#In'#InOOQV'#Im'#ImOOQV'#Hj'#HjQGyQ_OOOKeQ_O'#DUOKlQYO'#CqOOQP'#I`'#I`OOQV'#Hg'#HgQ]Q_OOOLuQWO'#IaONsQYO'#DXO!!eQWO'#JuO!!lQWO'#JuO!!vQ_O'#DfO!%]Q_O'#E}O!(sQ_O'#FWO!,ZQWO'#FZO!.^QXO'#FbO!.cQ_O'#EeO!!vQ_O'#FmO!0uQWO'#FoO!0zQWO'#FoO!1PQ^O'#FqO!1WQWO'#JuO!1_QWO'#FtO!1dQWO'#FxO!2WQWO'#JjO!2_QWO'#GOO!2_QWO'#G`O!2_QWO'#GbO!2_QWO'#GsOOQO'#Ju'#JuO!2dQWO'#GhO!2lQYO'#GpO!2_QWO'#GqO!3uQ^O'#GtO!3|QWO'#GuO!4hQWO'#HOP!4sOpO'#CcPOOO)CDO)CDOOOOO'#Hi'#HiO!5OO`O,59iOOQV,59i,59iO!5ZQYO,5?bOOQO-E;i-E;iOOQO,5:[,5:[OOQP,59Z,59ZO)xQWO,5:[O)xQWO,5:[O!5oQWO,5?lO!5zQYO,5;qO!6PQYO,5;TO!6hQWO,59QO!7kQXO'#CnO!7rQXO'#IaO!8vQWO'#CoO,^QWO'#EiOOQV-E;n-E;nO!9XQWO'#FsOOQV,5PQYO,5ZQ_O'#HsO$>hQXO,5@QOOQV1G1i1G1iOOQP,5:e,5:eO$>pQXO,5PQYO,5=vO$KuQWO'#KRO$LQQWO,5=xOOQR,5=y,5=yO$LVQWO,5=zO$>PQYO,5>PO$>PQYO,5>POOQO1G.w1G.wO$>PQYO1G.wO$LbQYO,5=pO$LjQZO,59^OOQR,59^,59^O$>PQYO,5=wO$N|QZO,5=}OOQR,5=},5=}O%#`QWO1G/_O!6PQYO1G/_O#E|QYO1G2vO%#eQWO1G2vO%#sQYO1G2vOOQV1G/i1G/iO%$|QWO,5:SO%%UQ_O1G/lO%*_QWO1G1^O%*uQWO1G1hOOQO1G1h1G1hO$>PQYO1G1hO%+]Q^O'#EgOOQV1G0k1G0kOOQV1G1s1G1sO!!vQ_O1G1sO!0zQWO1G1uO!1PQ^O1G1wO!.cQ_O1G1wOOQP,5:j,5:jO$>PQYO1G/^OOQO'#Cn'#CnO%+jQWO1G1zOOQV1G2O1G2OO%+rQWO'#CnO%+zQWO1G3TO%,PQWO1G3TO%,UQYO'#GQO%,gQWO'#G]O%,xQYO'#G_O%.[QYO'#GXOOQV1G2U1G2UO%/kQWO1G2UO%/pQWO1G2UO$@uQWO1G2UOOQV1G2f1G2fO%/kQWO1G2fO#CdQWO1G2fO%/xQWO'#GdOOQV1G2h1G2hO%0ZQWO1G2hO#CoQWO1G2hO%0`QYO'#GSO$>PQYO1G2lO$AWQWO1G2lOOQV1G2y1G2yO%1lQWO1G2yO%3[Q^O'#GkO%3fQWO1G2nO#DYQWO1G2nO%3tQYO,5PQYO1G2vOOQV1G2w1G2wO%5hQWO1G2wO%5mQWO1G2wO#G{QWO1G2wOOQV1G2z1G2zO.YQ_O1G2zO$>PQYO1G2zO%5uQWO1G2zOOQO,5>l,5>lOOQO-EPQYO1G3UPOOO-E;d-E;dPOOO1G.i1G.iOOQO7+*h7+*hO%6yQYO'#IdO%7bQYO'#IgO%7mQYO'#IgO%7uQYO'#IgO%8QQYO,59eOOQO7+%b7+%bOOQP7+$a7+$aOOQV,5:p,5:pO%8VQ!fO,5:pO%8^Q!fO'#JTOOQS'#EZ'#EZOOQS'#E['#E[OOQS'#E]'#E]OOQS'#JT'#JTO%;PQWO'#EYOOQS'#Eb'#EbOOQS'#JR'#JROOQS'#Hn'#HnOOQV,5:q,5:qO%;UQ!fO,5:qO%;]Q!fO,5:oOOQV,5:o,5:oOOQV7+'e7+'eOOQV7+&Z7+&ZO%;dQ[O,59TO%;xQ^O,59TO%^OOQO-E;p-E;pO%?iQWO7+'OO%?pQ_O7+'OOOQO7+'O7+'OOOQO7+'P7+'PO%ArQWO7+'POOQO7+'W7+'WOOQP1G0V1G0VO%AzQXO1G/tO!MoQWO1G/tO%B{QXO1G0RO%CsQ^O'#HlO%DTQWO,5?fOOQP1G/u1G/uO%D`QWO1G/uO%DeQWO'#D_OOQO'#Dt'#DtO%DpQWO'#DtO%DuQWO'#I|OOQO'#I{'#I{O%D}QWO,5:_O%ESQWO'#DtO%EXQWO'#DtOOQP1G0Q1G0QOOQP1G0S1G0SOOQP1G0X1G0XO%EaQXO1G1jO%ElQXO'#FeOOQP,5>_,5>_O!1PQ^O'#FeOOQP-E;q-E;qO$>PQYO1G1jOOQO7+'S7+'SOOQO,5PQYO7+$xOOQV7+'j7+'jO%F{QWO7+(oO%GQQWO7+(oOOQV7+'p7+'pO%/kQWO7+'pO%GVQWO7+'pO%G_QWO7+'pOOQV7+(Q7+(QO%/kQWO7+(QO#CdQWO7+(QOOQV7+(S7+(SO%0ZQWO7+(SO#CoQWO7+(SO$>PQYO7+(WO%GmQWO7+(WO#GxQYO7+(cO%GrQWO7+(YO#DYQWO7+(YOOQV7+(c7+(cO%5hQWO7+(cO%5mQWO7+(cO#G{QWO7+(cOOQV7+(g7+(gO$>PQYO7+(pO%HQQWO7+(pO!1dQWO7+(pOOQV7+$v7+$vO%HVQWO7+$vO%H[QZO1G3ZO%JnQWO1G4kOOQO1G4k1G4kOOQR1G.}1G.}O#-zQWO1G.}O%JsQWO'#KQOOQO'#HW'#HWO%KUQWO'#HXO%KaQWO'#KQOOQO'#KP'#KPO%KiQWO,5=qO%KnQYO'#H[O%LzQWO'#GmO%MVQYO'#CtO%MaQWO'#GmO$>PQYO1G3ZOOQR1G3g1G3gO#7TQWO1G3ZO%MfQZO1G3bO$>PQYO1G3bO& uQYO'#IVO&!VQWO,5@mOOQR1G3d1G3dOOQR1G3f1G3fO%?pQ_O1G3fOOQR1G3k1G3kO&!_QYO7+$cO&!gQYO'#KOOOQQ'#J}'#J}O&!oQYO1G3[O&!tQZO1G3cOOQQ7+$y7+$yO&%TQWO7+$yO&%YQWO7+(bOOQV7+(b7+(bO%5hQWO7+(bO$>PQYO7+(bO#E|QYO7+(bO&%bQWO7+(bO!.cQ_O1G/nO&%pQWO7+%WO$?OQWO7+'SO&%xQWO'#EhO&&TQ^O'#EhOOQU'#Ho'#HoO&&TQ^O,5;ROOQV,5;R,5;RO&&_QWO,5;RO&&dQ^O,5;RO!0zQWO7+'_OOQV7+'a7+'aO&&qQWO7+'cO&&yQWO7+'cO&'QQWO7+$xO&)uQ!fO7+'fO&)|Q!fO7+'fOOQV7+(o7+(oO!1dQWO7+(oO&*TQYO,5PQYO'#JrOOQO'#Jq'#JqO&,zQWO,5PQYO'#GUO&.tQYO'#JkOOQQ,5PQYO7+(YO&3[QYO'#HxO&3pQYO1G2WOOQQ1G2W1G2WOOQQ,5PQYO,5PQYO7+(fO&4lQWO'#IRO&4vQWO,5@hOOQO1G3Q1G3QOOQO1G2}1G2}OOQO1G3P1G3POOQO1G3R1G3ROOQO1G3S1G3SOOQO1G3O1G3OO&5OQWO7+(pO$>PQYO,59fO&5ZQ^O'#ISO&6QQYO,5?ROOQR1G/P1G/POOQV1G0[1G0[OOQS-E;l-E;lO&6YQ!bO,5:rO&6_Q!fO,5:tOOQV1G0]1G0]OOQV1G0Z1G0ZOOQO1G.o1G.oO&6fQWO'#KTOOQO'#KS'#KSO&6nQWO1G.oOOQV<]O&9QQWO,5>]OOQO-E;o-E;oOOQO<WOOQO-E;j-E;jOOQP7+%a7+%aO!1PQ^O,5:`O&:rQWO'#HmO&;WQWO,5?hOOQP1G/y1G/yOOQO,5:`,5:`O&;`QWO,5:`O%ESQWO,5:`O$>PQYO,5`,5>`OOQO-E;r-E;rOOQV7+'l7+'lO&PQYO<PQYO<PQYO<PQYO7+(uOOQO7+*V7+*VOOQR7+$i7+$iO&=rQWO,5@lOOQO'#Gm'#GmO&=zQWO'#GmO&>VQYO'#IUO&=rQWO,5@lOOQR1G3]1G3]O&?rQYO,5=vO&ARQYO,5=XO&A]QWO,5=XOOQO,5=X,5=XOOQR7+(u7+(uO&AbQZO7+(uO&CtQZO7+(|O&FTQWO,5>qOOQO-EPQYO<PQYO,5PQYO,5@^O&IuQYO'#H|O&K[QWO,5@^OOQO1G2e1G2eO%,bQWO,5PQYO,5PO&NtQYO,5@VOOQV<PQYO,5=WO'!xQWO,5@cO'#QQWO,5@cO'#`Q^O'#IPO'!xQWO,5@cOOQO1G2q1G2qO'$rQWO,5=WO'$zQWO<oO'%eQYO,5>dO'%sQYO,5>dOOQQ,5>d,5>dOOQQ-E;v-E;vOOQQ7+'r7+'rO'&OQYO1G2]O$>PQYO1G2^OOQV<m,5>mOOQO-EnOOQQ,5>n,5>nO''TQYO,5>nOOQQ-EX,5>XOOQO-E;k-E;kO!1PQ^O1G/zOOQO1G/z1G/zO'+SQWO1G/zO'+XQXO1G1kO$>PQYO1G1kO'+dQWO7+'[OOQVANA`ANA`O'+nQWOANA`O$>PQYOANA`O'+vQWOANA`OOQVAN>OAN>OO%?pQ_OAN>OO',UQWOANAuOOQVAN@vAN@vO',ZQWOAN@vOOQVANAWANAWOOQVANAYANAYOOQVANA^ANA^O',`QWOANA^OOQVANAiANAiO%5hQWOANAiO%5mQWOANAiO',hQWOANA`OOQVANAvANAvO%?pQ_OANAvO',vQWOANAvO$>PQYOANAvOOQR<pOOQO'#HY'#HYO'-ZQWO'#HZOOQO,5>p,5>pOOQO-EPQYO<o,5>oOOQQ-EPQYOANAhO'-uQWO1G1rO'.iQ^O1G0nO%?pQ_O1G0nO'0_QWO,5;UO'0fQWO1G0nP'0kQWO'#ERP&&TQ^O'#HpOOQV7+&X7+&XO'0vQWO7+&XO&&yQWOAN@iO'0{QWOAN>OO!5oQWO,5a,5>aO'1SQWOAN@lO'1XQWOAN@lOOQS-E;s-E;sOOQVAN@lAN@lO'1aQWOAN@lOOQVANAuANAuO'1iQWO1G5vO'1qQWO1G2dO$>PQYO1G2dO&*nQWO,5>gOOQO,5>g,5>gOOQO-E;y-E;yO'1|QWO1G5xO'2UQWO1G5xO&+`QYO,5>hO'2aQWO,5>hO$>PQYO,5>hOOQO-E;z-E;zO'2lQWO'#JnOOQO1G2a1G2aOOQO,5>f,5>fOOQO-E;x-E;xO&*TQYO,5iOOQO,5>i,5>iOOQO-E;{-E;{OOQQ,5>c,5>cOOQQ-E;u-E;uO'4TQWO1G2sO'4eQWO1G2rO'4pQWO1G5}O'4xQ^O,5>kOOQO'#Go'#GoOOQO,5>k,5>kO'6UQWO,5>kOOQO-E;}-E;}O$>PQYO1G2rO'6dQYO7+'xO'6oQWOANAlOOQVANAlANAlO%?pQ_OANAlO'6vQWOANAvOOQS7+%z7+%zO'6}QWO7+%zO'7YQ!fO7+%zOOQO,5>r,5>rOOQO-EPQYOG26zO'8eQWOG23jOOQVG27aG27aOOQVG26bG26bOOQVG26xG26xOOQVG27TG27TO%5hQWOG27TO'8lQWOG27bOOQVG27bG27bO%?pQ_OG27bO'8sQWOG27bOOQO1G4[1G4[OOQO7+(_7+(_OOQRANA{ANA{OOQVG27SG27SO%5hQWOG27SO&3}QWOG27SO'9OQ^O7+&YO':iQWO7+'^O';]Q^O7+&YO%?pQ_O7+&YP%?pQ_O,5;SP'PQYO1G4SO%,bQWO'#HyO'=nQWO,5@YO'=|QWO7+(VO%?pQ_O7+(VOOQO1G4T1G4TOOQO1G4V1G4VO'>WQWO1G4VO'>fQWO7+(^OOQVG27WG27WO'>qQWOG27WOOQS<xQWO<e,5>eOOQO-E;w-E;wO'F[QWO<a#>m#>z#?Q#?Y#?a#?k#?qPPPPPPP#?w#CTP#GS#Kn#Mi$ h$'UP$'XPPP$*`$*i$*{$0V$2e$2n$4gP!)Y$5a$8u$;l$?W$?a$?f$?iPPP$?l$BcP$BsPPPPPPPPPP$CXP$Eg$Ej$Em$Es$Ev$Ey$E|$FP$FV$Ha$Hd$Hg$Hj$Hm$Hp$Hs$Hv$Hy$H|$IP$KV$KY$K]#*l$Ki$Ko$Kr$Ku$Ky$K}$LQ$LT$LW$LZQ!tPT'V!s'Wi!SOlm!P!T$T$W$y%b)T*e/fQ'h#QQ,l'kQ1d,kR7q5X(SSOY[bfgilmop!O!P!T!Y!Z![!_!`!c!p!q!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r$y%X%_%b&U&Y&[&b&u&z&|'P'a'k'm'n'|(V(X(a(c(d(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m+y,k,o,r,y-Q-S-f-l-s.|/]/a/c/f0d0f0l0|1O1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m:nS(y$v-nQ*o&eQ*s&hQ-j(xQ-x)YW0Y+P0X4]7ZR4[0Z&{!RObfgilmop!O!P!T!Y!Z![!_!`!c!p#Q#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r$y%_%b&U&Y&[&b&u'k'|(V(X(a(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,r,y-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m#r]Ofgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9of#[b#Q$y'k(a)R)T*Y,k-s5X!h$bo!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t$b%k!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n!W;Q!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR;T%n$_%u!Q!n$O$u%o%p%q&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n$e%l!Q!n$O$u%n%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n'hZOY[fgilmop!O!P!T!Y!Z![!_!`!c!p!|!}#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r%_%b%i%j&U&Y&[&b&u'a'|(V(X(c(d(e(i(n(o(q({)h)o)p*e*h*j*k+Y+m,r,y-Q-S-f-l.h.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:g:h:l:m:n:{:|;P$^%l!Q!n$O$u%n%o%p%q%y%{&P&p&r(p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nQ&j!hQ&k!iQ&l!jQ&m!kQ&s!oQ)Z%QQ)[%RQ)]%SQ)^%TQ)a%WQ+_&oS,Q']1YQ.V)_S/q*t4VR4p0r+}TOY[bfgilmop!O!P!Q!T!Y!Z![!_!`!c!n!p!q!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$O$T$W$`$a$e$g$h$q$r$u$y%X%_%b%i%j%n%o%p%q%y%{&P&U&Y&[&b&o&p&r&u&z&|'P']'a'k'm'n'|(V(X(a(c(d(e(i(n(o(p(q({)R)T)h)o)p)r)w)x)}*O*Q*U*Y*Z*]*d*e*h*j*k*m*v*w+T+U+Y+g+m+n+y+|,k,o,r,y-Q-S-f-h-l-s-u.T._.h.o.s.w.x.|/Y/Z/]/a/c/f/z/|0_0d0f0l0q0v0|0}1O1X1Y1i1s1z1}2b2i2k2n2t2w3W3`3b3g3i3l3w3}4O4T4W4Y4a4e4g4j4v4x5O5X5a5e5i5l5y5{6W6_6b6f6u6{6}7X7c7h7l7t7y8S8_8`8n8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:g:h:l:m:n:{:|;PQ'[!xQ'g#PQ)k%gU)q%m*S*VR.e)jQ,S']R5R1Y#t%s!Q!n$O$u%p%q&P&p&r(p)w)x)}*Q*U*Z*]*d*m*v+U+g+n+|-h-u.T._.s.w.x/Y/Z/z/|0_0q0v0}1X1z2b2i2k2n2w3W3w3}4O4W4g4v5e5i5{6W6_6u6{6}7h7y8nQ)w%oQ+^&oQ,T']l,_'b'c'd,Y,e,f/l/m1`3p3s5V5W7pS.p)r2tQ.}*OQ/P*RQ/p*tS0P*w4TQ0`+T[0n+Y.i0f4j6O7cQ2w.oS4f0d2sQ4o0rQ5S1YQ6Y3SQ7P4RQ7T4VQ7^4aR9a8o&pVOfgilmop!O!P!T!Y!Z![!_!`!c!p#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r%_%b&U&Y&[&b&u']'|(V(X(a(e(i(n(o(q({)h*e*h*j*k+Y+m,j,k,r,y-S-f-l.|/]/a/c/f0d0f0l0|1Y1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mU&g!g%P%[m,_'b'c'd,Y,e,f/l/m1`3p3s5V5W7p$nsOfgilm!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y'|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:R:S:V:W:X:Y:Z:[:]:^:_:`:a:lS$tp:PS&O!W#bS&Q!X#cQ&`!bQ*^&RQ*`&VS*c&[:mQ*g&^Q,S']Q-i(vQ/h*iQ0o+ZS2g.W0pQ3^/^Q3_/_Q3h/gQ3j/jQ5R1YU5g2S2h4nU7v5h5j5wQ8d6iS8|7w7xS9f8}9OR9p9gi{Ob!O!P!T$y%_%b)R)T)h-shxOb!O!P!T$y%_%b)R)T)h-sW/u*u/s3y6vQ/|*vW0Z+P0X4]7ZQ3}/zQ6}4OR8n6{!h$do!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tQ&d!dQ&f!fQ&n!mW&x!q%X&|1OQ'S!rQ)W$}Q)X%OQ)`%VU)c%Y'T'UQ*r&hS+r&z'PS-X(j1tQ-t)VQ-w)YS.`)d)eS0w+b/rQ1R+yQ1V+zS1w-^-_Q2l.aQ3u/oQ5b1yR5m2W${sOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m$zsOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR3^/^V&T!Y!`*h!i$lo!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t!k$^o!c!p$e$g$h$q$r&U&b&u(a(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t!i$co!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t&e^Ofgilmop!O!P!T!Y!Z![!_!`!c!p#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r%_%b&U&Y&[&b&u'|(V(X(e(i(n(o(q({)h*e*h*j*k+Y+m,r,y-S-f-l.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR(k$fQ-Z(jR5_1tQ(R#|S(z$v-nS-Y(j1tQ-k(xW/t*u/s3y6vS1x-^-_Q3x/uR5c1yQ'e#Oh,b'b'c'd,Y,e,f/l/m1`3p3s5WQ,m'lQ,p'oQ.t)tR8f6kQ'f#Oh,b'b'c'd,Y,e,f/l/m1`3p3s5WQ,n'lQ,p'oQ.t)tR8f6ki,b'b'c'd,Y,e,f/l/m1`3p3s5WR*f&]X/b*e/c/f3g!}aOb!O!P!T#z$v$y%_%b'|(x)R)T)h)r*e*u*v+P+Y,r-n-s.i/a/c/f/s/z0X0f1i2t3g3y4O4]4j6O6f6v6{7Z7cQ3a/`Q6d3cQ8a6eR9^8b${rOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m#nfOfglmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o!T9|!Y!_!`*h*k/]3i9|9}:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:l:m#rfOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o!X9|!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m$srOfglmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:l:m#U#oh#d$P$Q$V$s%^&W&X'p's't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9i}:W&S&]/j3]6i:c:d:j:k:o:q:r:s:t:u:v:w:x:y:};O;S#W#ph#d$P$Q$V$s%^&W&X'p'q's't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9i!P:X&S&]/j3]6i:c:d:j:k:o:p:q:r:s:t:u:v:w:x:y:};O;S#S#qh#d$P$Q$V$s%^&W&X'p't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9i{:Y&S&]/j3]6i:c:d:j:k:o:r:s:t:u:v:w:x:y:};O;S#Q#rh#d$P$Q$V$s%^&W&X'p'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iy:Z&S&]/j3]6i:c:d:j:k:o:s:t:u:v:w:x:y:};O;S#O#sh#d$P$Q$V$s%^&W&X'p'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iw:[&S&]/j3]6i:c:d:j:k:o:t:u:v:w:x:y:};O;S!|#th#d$P$Q$V$s%^&W&X'p'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iu:]&S&]/j3]6i:c:d:j:k:o:u:v:w:x:y:};O;S!x#vh#d$P$Q$V$s%^&W&X'p'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iq:_&S&]/j3]6i:c:d:j:k:o:w:x:y:};O;S!v#wh#d$P$Q$V$s%^&W&X'p'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9io:`&S&]/j3]6i:c:d:j:k:o:x:y:};O;S$]#{h#`#d$P$Q$V$s%^&S&W&X&]'p'q'r's't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m/j0y1j1m2O3Q3]4y5[5f6c6i6j7W7j7m7z8Q8q8x9S9c9i:c:d:j:k:o:p:q:r:s:t:u:v:w:x:y:};O;S${jOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m$v!aOfgilmp!O!P!T!Y!Z!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ&Y![Q&Z!]R:l:S#rpOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9oQ&[!^!W:P!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR:m;RR$moR-e(qR$wqT(|$v-nQ/e*eS3e/c/fR6h3gQ3o/lQ3r/mQ6n3pR6q3sQ$zwQ)U${Q*p&fQ+e&qQ+h&sQ-v)XW.Y)a+i+j+kS/W*[+fW2c.V.Z.[.]U3X/X/[0xU5t2d2e2fS6]3Y3[S8O5u5vS8X6[6^Q9Q8PS9U8Y8ZR9j9V^|O!O!P!T%_%b)hX)Q$y)R)T-sQ&r!nQ*]&PQ*{&jQ+O&kQ+S&lQ+V&mQ+[&nQ+k&sQ-|)ZQ.P)[Q.S)]Q.U)^Q.X)`Q.])aQ2T-tQ2f.VR4W0UU+`&o*t4VR4q0rQ+X&mQ+j&sS.[)a+k^0u+^+_/p/q4o4p7TS2e.V.]S4S0Q0RR5v2fS0Q*w4TQ0`+TR7^4aU+c&o*t4VR4r0rQ*y&jQ*}&kQ+R&lQ+f&qQ+i&sS-z)Z*{S.O)[+OS.R)]+SU.Z)a+j+kQ/X*[Q0W*zQ0p+ZQ2Y-{Q2Z-|Q2^.PQ2`.SU2d.V.[.]Q2h.WS3[/[0xS5h2S4nQ5o2[S5u2e2fQ6^3YS7x5j5wQ8P5vQ8Y6[Q8}7wQ9V8ZR9g9OQ0S*wR7R4TQ*x&jQ*|&kU-y)Z*y*{U-})[*}+OS2X-z-|S2].O.PQ4Z0YQ5n2ZQ5p2^R7Y4[Q/v*uQ3v/sQ6w3yR8k6vQ*z&jS-{)Z*{Q2[-|Q4Z0YR7Y4[Q+Q&lU.Q)]+R+SS2_.R.SR5q2`Q0[+PQ4X0XQ7[4]R8s7ZQ+Z&nS.W)`+[S2S-t.XR5j2TQ0h+YQ4h0fQ7e4jR8t7cQ.l)rQ0h+YQ2q.iQ4h0fQ6R2tQ7e4jQ8U6OR8t7cQ0h+YR4h0fX'O!q%X&|1OX&{!q%X&|1OW'O!q%X&|1OS+t&z'PR1T+y_|O!O!P!T%_%b)hQ%a!PS)g%_%bR.c)h$^%u!Q!n$O$u%o%p%q&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nQ*T%yR*W%{$c%n!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nW)s%m%x*S*VQ.d)iR2|.uR.l)rR6R2tQ'W!sR+}'WQ!TOQ$TlQ$WmQ%b!P[%|!T$T$W%b)T/fQ)T$yR/f*e$b%i!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n[)m%i)o.h:g:{;PQ)o%jQ.h)pQ:g%nQ:{:hR;P:|Q!vUR'Y!vS!OO!TU%]!O%_)hQ%_!PR)h%b#rYOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9oh!yY!|#U$`'a'm(c,o-Q9z:T:nQ!|[f#Ub#Q$y'k(a)R)T*Y,k-s5X!h$`o!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tQ'a!}Q'm#ZQ(c$aQ,o'nQ-Q(d!W9z!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ:T9{R:n:UQ-T(fR1q-TQ1u-ZR5`1uQ,Y'bQ,e'cQ,f'dW1^,Y,e,f5WR5W1`Q/c*eS3d/c3gR3g/ffbO!O!P!T$y%_%b)R)T)h-sp#Wb'|(x.i/a/s/z0X0f1i6O6f6v6{7Z7cQ'|#zS(x$v-nQ.i)rW/a*e/c/f3gQ/s*uQ/z*vQ0X+PQ0f+YQ1i,rQ6O2tQ6v3yQ6{4OQ7Z4]R7c4jQ,s'}Q1h,qT1k,s1hS(W$Q(ZQ(]$VU,w(W(],|R,|(_Q(r$mR-g(rQ-o(}R2Q-oQ3p/lQ3s/mT6o3p3sQ)R$yS-q)R-sR-s)TQ4b0`R7_4b`0s+]+^+_+`+c/p/q7TR4s0sQ8p7PR9b8pQ4U0SR7S4UQ3z/vQ6s3vT6x3z6sQ4P/{Q6y3|U7O4P6y8lR8l6zQ4^0[Q7V4XT7]4^7VhzOb!O!P!T$y%_%b)R)T)h-sQ$|xW%Zz$|%f)u$b%f!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nR)u%nS4k0h0mS7b4h4iT7g4k7bW&z!q%X&|1OS+q&z+yR+y'PQ1P+vR4|1PU1Z,R,S,TR5T1ZS3T/P7TR6Z3TQ2u.lQ5}2qT6S2u5}Q.y)yR3P.yQ5Y1dR7r5Y^_O!O!P!T%_%b)hY#Xb$y)R)T-s$l#_fgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['|(V(X({*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!h$io!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tW'i#Q'k,k5XQ-O(aR/U*Y&z!RObfgilmop!O!P!T!Y!Z![!_!`!c!p#Q#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r$y%_%b&U&Y&[&b&u'k'|(V(X(a(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,r,y-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m[!{Y[#U#Z9z9{W&{!q%X&|1O['`!|!}'m'n:T:US(b$`$aS+s&z'PU,W'a,o:nS-P(c(dQ1S+yR1o-QS%t!Q&oQ&q!nQ(U$OQ(v$uS)v%o.oQ)y%pQ)|%qS*[&P&rQ+d&pQ,R']Q-c(pQ.k)rU.v)w)x2wS.})}*OQ/O*QQ/S*UQ/V*ZQ/[*]Q/_*dQ/k*mQ/{*vS0R*w4TQ0`+TQ0b+UQ0x+gQ0z+nQ1W+|Q1|-hQ2U-uQ2a.TQ2j._Q2{.sQ2}.wQ3O.xQ3Y/YQ3Z/ZS3|/z/|Q4`0_Q4n0qQ4u0vQ4z0}Q5P1XQ5Q1YQ5d1zQ5s2bQ5w2iQ5z2kQ5|2nQ6Q2tQ6[3WQ6t3wQ6z3}Q6|4OQ7U4WQ7^4aQ7a4gQ7i4vQ7u5eQ7w5iQ8T5{Q8W6WQ8Z6_Q8j6uS8m6{6}Q8v7hQ9O7yR9`8n$^%m!Q!n$O$u%o%p%q&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nQ)i%nQ*S%yR*V%{$y%h!Q!n$O$u%i%j%n%o%p%q%y%{&P&o&p&r'](p)o)p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.h.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n:g:h:{:|;P'tWOY[bfgilmop!O!P!T!Y!Z![!_!`!c!p!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r$y%_%b&U&Y&[&b&u'a'k'm'n'|(V(X(a(c(d(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,o,r,y-Q-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m:n$x%g!Q!n$O$u%i%j%n%o%p%q%y%{&P&o&p&r'](p)o)p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.h.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n:g:h:{:|;P_&y!q%X&z&|'P+y1OR,U']$zrOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!j$]o!c!p$e$g$h$q$r&U&b&u(a(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tQ,S']Q1c,jQ1d,kQ5R1YR7q5X_}O!O!P!T%_%b)h^|O!O!P!T%_%b)hQ#YbX)Q$y)R)T-sbhO!O!T3`6b8_8`9]9oS#`f9|Q#dgQ$PiQ$QlQ$VmQ$spW%^!P%_%b)hU&S!Y!`*hQ&W!ZQ&X![Q&]!_Q'p#eQ'q#oS'r#p:XQ's#qQ't#rQ'u#sQ'v#tQ'w#uQ'x#vQ'y#wQ'z#xQ'{#yQ'}#zQ(T#}Q(Z$TQ(_$WQ*a&YQ*b&[Q,q'|Q,v(VQ,x(XQ-m({Q/j*kQ0y+mQ1j,rQ1m,yQ2O-lQ3Q.|Q3]/]Q4y0|Q5[1iQ5f1}Q6c3bQ6i3iQ6j3lQ7W4YQ7j4xQ7m5OQ7z5lQ8Q5yQ8q7XQ8x7lQ9S8SQ9c8rQ9i9TQ:c:OQ:d:PQ:j:RQ:k:SQ:o:VQ:p:WQ:q:YQ:r:ZQ:s:[Q:t:]Q:u:^Q:v:_Q:w:`Q:x:aQ:y:bQ:}:lQ;O:mR;S9}^tO!O!P!T%_%b)h$`#afgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['|(V(X({*h*k+m,r,y-l.|/]0|1i1}3b3i3l4Y4x5O5l5y7X7l8S8r9T9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ6a3`Q8^6bQ9Y8_Q9[8`Q9n9]R9t9oQ&V!YQ&^!`R/g*hQ$joQ&a!cQ&t!pU(f$e$g(iS(m$h0dQ(t$qQ(u$rQ*_&UQ*l&bQ+o&uQ-R(eS-a(n4eQ-b(oQ-d(qW/`*e/c/f3gQ/i*jW0e+Y0f4j7cQ1p-SQ1{-fQ3c/aQ4m0lQ5^1sQ7s5aQ8b6fR8{7t!h$_o!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tR-O(a'uXOY[bfgilmop!O!P!T!Y!Z![!_!`!c!p!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r$y%_%b&U&Y&[&b&u'a'k'm'n'|(V(X(a(c(d(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,o,r,y-Q-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m:n$zqOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!i$fo!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t&d^Ofgilmop!O!P!T!Y!Z![!_!`!c!p#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r%_%b&U&Y&[&b&u'|(V(X(e(i(n(o(q({)h*e*h*j*k+Y+m,r,y-S-f-l.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m[!zY[$`$a9z9{['_!|!}(c(d:T:UW)n%i%j:g:hU,V'a-Q:nW.g)o)p:{:|T2p.h;PQ(h$eQ(l$gR-V(iV(g$e$g(iR-](jR-[(j$znOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!i$ko!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t`,c'b'c'd,Y,e,f1`5WX3n/l/m3p3sh,b'b'c'd,Y,e,f/l/m1`3p3s5WQ7o5VR8z7p^uO!O!P!T%_%b)h$`#afgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['|(V(X({*h*k+m,r,y-l.|/]0|1i1}3b3i3l4Y4x5O5l5y7X7l8S8r9T9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ6`3`Q8]6bQ9X8_Q9Z8`Q9m9]R9s9oR(P#zR(O#zQ$SlR([$TR$ooR$noR)P$vR)O$vQ(}$vR2P-nhwOb!O!P!T$y%_%b)R)T)h-s$l!lz!Q!n$O$u$|%f%n%o%p%q%y%{&P&o&p&r'](p)r)u)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nR${xR0a+TR0V*wR0T*wR7Q4RR/x*uR/w*uR0O*vR/}*vR0^+PR0]+P%XyObxz!O!P!Q!T!n$O$u$y$|%_%b%f%n%o%p%q%y%{&P&o&p&r'](p)R)T)h)r)u)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-s-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nR0j+YR0i+YQ'R!qQ)b%XQ+v&|R4{1OX'Q!q%X&|1OR+x&|R+w&|T/R*R4VT/Q*R4VR.n)rR.m)rR)z%pR1f,kR1e,k",nodeNames:"⚠ | < > RawString Float LineComment BlockComment SourceFile ] InnerAttribute ! [ MetaItem self Metavariable super crate Identifier ScopedIdentifier :: QualifiedScope AbstractType impl SelfType MetaType TypeIdentifier ScopedTypeIdentifier ScopeIdentifier TypeArgList TypeBinding = Lifetime String Escape Char Boolean Integer } { Block ; ConstItem Vis pub ( in ) const BoundIdentifier : UnsafeBlock unsafe AsyncBlock async move IfExpression if LetDeclaration let LiteralPattern ArithOp MetaPattern SelfPattern ScopedIdentifier TuplePattern ScopedTypeIdentifier , StructPattern FieldPatternList FieldPattern ref mut FieldIdentifier .. RefPattern SlicePattern CapturedPattern ReferencePattern & MutPattern RangePattern ... OrPattern MacroPattern ParenthesizedTokens BracketedTokens BracedTokens TokenBinding Identifier TokenRepetition ArithOp BitOp LogicOp UpdateOp CompareOp -> => ArithOp _ else MatchExpression match MatchBlock MatchArm Attribute Guard UnaryExpression ArithOp DerefOp LogicOp ReferenceExpression TryExpression BinaryExpression ArithOp ArithOp BitOp BitOp BitOp BitOp LogicOp LogicOp AssignmentExpression TypeCastExpression as ReturnExpression return RangeExpression CallExpression ArgList AwaitExpression await FieldExpression GenericFunction BreakExpression break LoopLabel ContinueExpression continue IndexExpression ArrayExpression TupleExpression MacroInvocation UnitExpression ClosureExpression ParamList Parameter Parameter ParenthesizedExpression StructExpression FieldInitializerList ShorthandFieldInitializer FieldInitializer BaseFieldInitializer MatchArm WhileExpression while LoopExpression loop ForExpression for MacroInvocation MacroDefinition macro_rules MacroRule EmptyStatement ModItem mod DeclarationList AttributeItem ForeignModItem extern StructItem struct TypeParamList ConstrainedTypeParameter TraitBounds HigherRankedTraitBound RemovedTraitBound OptionalTypeParameter ConstParameter WhereClause where LifetimeClause TypeBoundClause FieldDeclarationList FieldDeclaration OrderedFieldDeclarationList UnionItem union EnumItem enum EnumVariantList EnumVariant TypeItem type FunctionItem default fn ParamList Parameter SelfParameter VariadicParameter VariadicParameter ImplItem TraitItem trait AssociatedType LetDeclaration UseDeclaration use ScopedIdentifier UseAsClause ScopedIdentifier UseList ScopedUseList UseWildcard ExternCrateDeclaration StaticItem static ExpressionStatement ExpressionStatement GenericType FunctionType ForLifetimes ParamList VariadicParameter Parameter VariadicParameter Parameter ReferenceType PointerType TupleType UnitType ArrayType MacroInvocation EmptyType DynamicType dyn BoundedType",maxTerm:361,nodeProps:[[Di.group,-42,4,5,14,15,16,17,18,19,33,35,36,37,40,51,53,56,101,107,111,112,113,122,123,125,127,128,130,132,133,134,137,139,140,141,142,143,144,148,149,155,157,159,"Expression",-16,22,24,25,26,27,222,223,230,231,232,233,234,235,236,237,239,"Type",-20,42,161,162,165,166,169,170,172,188,190,194,196,204,205,207,208,209,217,218,220,"Statement",-17,49,60,62,63,64,65,68,74,75,76,77,78,80,81,83,84,99,"Pattern"],[Di.openedBy,9,"[",38,"{",47,"("],[Di.closedBy,12,"]",39,"}",45,")"]],skippedNodes:[0,6,7,240],repeatNodeCount:33,tokenData:"#?|_R!VOX$hXY1_YZ2ZZ]$h]^1_^p$hpq1_qr2srs4qst5Ztu6Vuv9lvw;jwx=nxy!!ayz!#]z{!$X{|!&R|}!'T}!O!(P!O!P!*Q!P!Q!-|!Q!R!6X!R![!7|![!]!Jw!]!^!Lu!^!_!Mq!_!`# x!`!a##y!a!b#&Q!b!c#&|!c!}#'x!}#O#)o#O#P#*k#P#Q#1b#Q#R#2^#R#S#'x#S#T$h#T#U#'x#U#V#3`#V#f#'x#f#g#6s#g#o#'x#o#p#y!X!Y$h!Y!Z!<}!Z#O$h#O#P%x#P#g$h#g#h!?y#h~$h_!;O_'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!S$h!S!T!;}!T!W$h!W!X!<}!X#O$h#O#P%x#P~$h_!Q]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!S$h!S!T!<}!T#O$h#O#P%x#P~$h_!?Q]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!U$h!U!V!<}!V#O$h#O#P%x#P~$h_!@Q]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P#]$h#]#^!@y#^~$h_!AQ]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P#n$h#n#o!Ay#o~$h_!BQ]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P#X$h#X#Y!<}#Y~$h_!CQ_'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!R!DP!R!S!DP!S#O$h#O#P%x#P#R$h#R#S!DP#S~$h_!DYcuX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!R!DP!R!S!DP!S#O$h#O#P%x#P#R$h#R#S!DP#S#]$h#]#^!9_#^#i$h#i#j!9_#j~$h_!El^'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!Y!Fh!Y#O$h#O#P%x#P#R$h#R#S!Fh#S~$h_!FqbuX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!Y!Fh!Y#O$h#O#P%x#P#R$h#R#S!Fh#S#]$h#]#^!9_#^#i$h#i#j!9_#j~$h_!HQb'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![!IY![!c$h!c!i!IY!i#O$h#O#P%x#P#R$h#R#S!IY#S#T$h#T#Z!IY#Z~$h_!IcfuX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![!IY![!c$h!c!i!IY!i#O$h#O#P%x#P#R$h#R#S!IY#S#T$h#T#Z!IY#Z#]$h#]#^!9_#^#i$h#i#j!9_#j~$h_!KQ]!SX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![$h![!]!Ky!]#O$h#O#P%x#P~$h_!LSZdX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_!MOZyX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_!Mz^#RX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!^$h!^!_!Nv!_!`3u!`#O$h#O#P%x#P~$h_# P]'yX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`:n!`#O$h#O#P%x#P~$h_#!R^oX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`3u!`!a#!}!a#O$h#O#P%x#P~$h_##WZ#TX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#$S^#RX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`3u!`!a#%O!a#O$h#O#P%x#P~$h_#%X]'zX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`:n!`#O$h#O#P%x#P~$h_#&ZZ(RX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$hV#'VZ'qP'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#(Th'`Q'PS!{W'UPOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![#'x![!c$h!c!}#'x!}#O$h#O#P%x#P#R$h#R#S#'x#S#T$h#T#o#'x#o${$h${$|#'x$|4w$h4w5b#'x5b5i$h5i6S#'x6S~$h_#)xZ[X'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$hU#*pX'PSOz#+]z{#+s{!P#+]!P!Q#,X!Q#i#+]#i#j#,j#j#l#+]#l#m#.Y#m~#+]U#+dTrQ'PSOz%xz{&^{!P%x!P!Q'S!Q~%xU#+xTrQOz&pz{&^{!P&p!P!Q({!Q~&pU#,^SrQOz&p{!P&p!P!Q'c!Q~&pU#,o['PSOz%xz{&^{!P%x!P!Q'S!Q![#-e![!c%x!c!i#-e!i#T%x#T#Z#-e#Z#o%x#o#p#/r#p~%xU#-jY'PSOz%xz{&^{!P%x!P!Q'S!Q![#.Y![!c%x!c!i#.Y!i#T%x#T#Z#.Y#Z~%xU#._Y'PSOz%xz{&^{!P%x!P!Q'S!Q![#.}![!c%x!c!i#.}!i#T%x#T#Z#.}#Z~%xU#/SY'PSOz%xz{&^{!P%x!P!Q'S!Q![#+]![!c%x!c!i#+]!i#T%x#T#Z#+]#Z~%xU#/wY'PSOz%xz{&^{!P%x!P!Q'S!Q![#0g![!c%x!c!i#0g!i#T%x#T#Z#0g#Z~%xU#0l['PSOz%xz{&^{!P%x!P!Q'S!Q![#0g![!c%x!c!i#0g!i#T%x#T#Z#0g#Z#q%x#q#r#+]#r~%x_#1kZXX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#2g]'{X'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`:n!`#O$h#O#P%x#P~$h_#3kj'`Q'PS!{W'UPOY$hYZ%bZr$hrs#5]sw$hwx#5sxz$hz{)Q{!P$h!P!Q*p!Q![#'x![!c$h!c!}#'x!}#O$h#O#P%x#P#R$h#R#S#'x#S#T$h#T#o#'x#o${$h${$|#'x$|4w$h4w5b#'x5b5i$h5i6S#'x6S~$h]#5dT'PS'_XOz%xz{&^{!P%x!P!Q'S!Q~%x_#5z]'`Q'PSOY?dYZA`Zr?drsBdsw?dwx@dxz?dz{CO{!P?d!P!QDv!Q#O?d#O#PId#P~?d_#7Oi'`Q'PS!{W'UPOY$hYZ%bZr$hrs%xst#8mtz$hz{)Q{!P$h!P!Q*p!Q![#'x![!c$h!c!}#'x!}#O$h#O#P%x#P#R$h#R#S#'x#S#T$h#T#o#'x#o${$h${$|#'x$|4w$h4w5b#'x5b5i$h5i6S#'x6S~$hV#8tg'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!c$h!c!}#:]!}#O$h#O#P%x#P#R$h#R#S#:]#S#T$h#T#o#:]#o${$h${$|#:]$|4w$h4w5b#:]5b5i$h5i6S#:]6S~$hV#:fh'`Q'PS'UPOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![#:]![!c$h!c!}#:]!}#O$h#O#P%x#P#R$h#R#S#:]#S#T$h#T#o#:]#o${$h${$|#:]$|4w$h4w5b#:]5b5i$h5i6S#:]6S~$h_#U#q~$h_#>_Z'|X'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#?ZZvX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h",tokenizers:[pf,ff,df,0,1,2,3],topRules:{SourceFile:[0,8]},specialized:[{term:282,get:e=>mf[e]||-1}],tokenPrec:15890}),Qf=Wa.define({parser:gf.configure({props:[Ha.add({IfExpression:oo({except:/^\s*({|else\b)/}),"String BlockComment":()=>-1,"Statement MatchArm":oo()}),so.add((e=>/(Block|edTokens|List)$/.test(e.name)?Oo:"BlockComment"==e.name?e=>({from:e.from+2,to:e.to-2}):void 0)),zc({"const macro_rules mod struct union enum type fn impl trait let use crate static":Ou.definitionKeyword,"pub unsafe async mut extern default move":Ou.modifier,"for if else loop while match continue break return await":Ou.controlKeyword,"as in ref":Ou.operatorKeyword,"where _ crate super dyn":Ou.keyword,self:Ou.self,String:Ou.string,RawString:Ou.special(Ou.string),Boolean:Ou.bool,Identifier:Ou.variableName,"CallExpression/Identifier":Ou.function(Ou.variableName),BoundIdentifier:Ou.definition(Ou.variableName),LoopLabel:Ou.labelName,FieldIdentifier:Ou.propertyName,"CallExpression/FieldExpression/FieldIdentifier":Ou.function(Ou.propertyName),Lifetime:Ou.special(Ou.variableName),ScopeIdentifier:Ou.namespace,TypeIdentifier:Ou.typeName,"MacroInvocation/Identifier MacroInvocation/ScopedIdentifier/Identifier":Ou.macroName,"MacroInvocation/TypeIdentifier MacroInvocation/ScopedIdentifier/TypeIdentifier":Ou.macroName,'"!"':Ou.macroName,UpdateOp:Ou.updateOperator,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Integer:Ou.integer,Float:Ou.float,ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,"=":Ou.definitionOperator,".. ... => ->":Ou.punctuation,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,"&":Ou.operator,", ; ::":Ou.separator})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:\{|\})$/}});var $f=Object.freeze({__proto__:null,rust:function(){return new Ga(Qf)},rustLanguage:Qf});function bf(e){return 45==e||46==e||58==e||e>=65&&e<=90||95==e||e>=97&&e<=122||e>=161}function xf(e){return 9==e||10==e||13==e||32==e}let wf=null,kf=null,yf=0;function Pf(e,t){let n=e.pos+t;if(kf==e&&yf==n)return wf;for(;xf(e.peek(t));)t++;let r="";for(;;){let n=e.peek(t);if(!bf(n))break;r+=String.fromCharCode(n),t++}return kf=e,yf=n,wf=r||null}function vf(e,t){this.name=e,this.parent=t,this.hash=t?t.hash:0;for(let t=0;t1==t?new vf(Pf(r,1)||"",e):e,reduce:(e,t)=>10==t&&e?e.parent:e,reuse(e,t,n,r){let i=t.type.id;return 1==i||12==i?new vf(Pf(r,1)||"",e):e},hash:e=>e?e.hash:0,strict:!1}),_f=new Rl(((e,t)=>{if(60==e.next)if(e.advance(),47==e.next){e.advance();let n=Pf(e,0);if(!n)return e.acceptToken(5);if(t.context&&n==t.context.name)return e.acceptToken(2);for(let r=t.context;r;r=r.parent)if(r.name==n)return e.acceptToken(3,-2);e.acceptToken(4)}else if(33!=e.next&&63!=e.next)return e.acceptToken(1)}),{contextual:!0});function Xf(e,t){return new Rl((n=>{for(let r=0,i=0;;i++){if(n.next<0){i&&n.acceptToken(e);break}if(n.next==t.charCodeAt(r)){if(r++,r==t.length){i>t.length&&n.acceptToken(e,1-t.length);break}}else r=0;n.advance()}}))}const Tf=Xf(36,"--\x3e"),Rf=Xf(37,"?>"),Wf=Xf(38,"?>"),qf=Ll.deserialize({version:13,states:"-OOQOaOOOcObO'#CcOkOdO'#CdOOOP'#Cv'#CvOsOaO'#DTO!XOaOOOOOQ'#Cw'#CwO!aObO,58}OOOP,58},58}OOOS'#Cx'#CxO!iOdO,59OOOOP,59O,59OOOOP-E6t-E6tO!qO`O'#ChO#kOqO'#CfOOOP'#Cf'#CfO#rOaO'#CyQ$TOPOOO$YOaOOOOOQ-E6u-E6uOOOP1G.i1G.iOOOS-E6v-E6vOOOP1G.j1G.jOOOO'#Cz'#CzO$hO`O,59SO$pO!bO,59SO%OOhO'#CqO%WO`O'#CrOOOP'#D]'#D]OOOP'#C}'#C}O%`OqO,59QO%gO`O'#CsOOOP,59Q,59QOOOP,59e,59eOOOP-E6w-E6wO$TOPOOOOOO-E6x-E6xO%oO!bO1G.nO%oO!bO1G.nO%}O`O'#CjO&VO!bO'#C{O&eO!bO1G.nOOOP1G.n1G.nOOOP1G.{1G.{OOOW'#DO'#DOO&pOhO,59]OOOP,59],59]O&xO`O,59^O'QO`O,59^OOOP-E6{-E6{OOOP1G.l1G.lO'YO`O,59_O'bO`O,59_O'jO!bO7+$YO'xO!bO7+$YOOOP7+$Y7+$YOOOP7+$g7+$gO(TO`O,59UO(]O`O,59UO(eO!bO,59gOOOO-E6y-E6yOOOW-E6|-E6|OOOP1G.w1G.wO(sO`O1G.xO(sO`O1G.xOOOP1G.x1G.xO({O`O1G.yO({O`O1G.yOOOP1G.y1G.yO)TO!bO<U!a!b>q!b!c$k!c!}+z!}#P$k#P#Q?}#Q#R$k#R#S+z#S#T$k#T#o+z#o%W$k%W%o+z%o%p$k%p&a+z&a&b$k&b1p+z1p4U$k4U4d+z4d4e$k4e$IS+z$IS$I`$k$I`$Ib+z$Ib$Kh$k$Kh%#t+z%#t&/x$k&/x&Et+z&Et&FV$k&FV;'S+z;'S;:j/S;:j?&r$k?&r?Ah+z?Ah?BY$k?BY?Mn+z?Mn~$kY$rUdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$kQ%ZRdQOv%Uw!^%U!_~%UW%iR!OWOr%dsv%dw~%d_%{]dQ!OWzTOX$kXY%rYZ%rZ]$k]^%r^p$kpq%rqr$krs%Usv$kw!^$k!^!_%d!_~$kZ&{R}XdQOv%Uw!^%U!_~%U~'XTOp'hqs'hst(Pt!]'h!^~'h~'kTOp'hqs'ht!]'h!]!^'z!^~'h~(POb~~(SROp(]q!](]!^~(]~(`SOp(]q!](]!]!^(l!^~(]~(qOc~Z(xWdQ!OWOr$krs%Usv$kw}$k}!O)b!O!^$k!^!_%d!_~$kZ)iWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!a*R!a~$kZ*[UxPdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$k^*uWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!a+_!a~$k^+hUhSdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$k_,V}_S]PdQ!OWOr$krs%Usv$kw}$k}!O+z!O!P+z!P!Q$k!Q![+z![!]+z!]!^$k!^!_%d!_!c$k!c!}+z!}#R$k#R#S+z#S#T$k#T#o+z#o$}$k$}%O+z%O%W$k%W%o+z%o%p$k%p&a+z&a&b$k&b1p+z1p4U+z4U4d+z4d4e$k4e$IS+z$IS$I`$k$I`$Ib+z$Ib$Je$k$Je$Jg+z$Jg$Kh$k$Kh%#t+z%#t&/x$k&/x&Et+z&Et&FV$k&FV;'S+z;'S;:j/S;:j?&r$k?&r?Ah+z?Ah?BY$k?BY?Mn+z?Mn~$k_/ZWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_;=`$k;=`<%l+z<%l~$kZ/xU!OWOq%dqr0[sv%dw!a%d!a!b=X!b~%dZ0aZ!OWOr%dsv%dw}%d}!O1S!O!f%d!f!g1x!g!}%d!}#O5s#O#W%d#W#X:k#X~%dZ1XT!OWOr%dsv%dw}%d}!O1h!O~%dZ1oRyR!OWOr%dsv%dw~%dX1}T!OWOr%dsv%dw!q%d!q!r2^!r~%dX2cT!OWOr%dsv%dw!e%d!e!f2r!f~%dX2wT!OWOr%dsv%dw!v%d!v!w3W!w~%dX3]T!OWOr%dsv%dw!{%d!{!|3l!|~%dX3qT!OWOr%dsv%dw!r%d!r!s4Q!s~%dX4VT!OWOr%dsv%dw!g%d!g!h4f!h~%dX4kV!OWOr4frs5Qsv4fvw5Qw!`4f!`!a5c!a~4fP5TRO!`5Q!`!a5^!a~5QP5cOXPX5jRXP!OWOr%dsv%dw~%dY5xV!OWOr%dsv%dw!e%d!e!f6_!f#V%d#V#W8w#W~%dY6dT!OWOr%dsv%dw!f%d!f!g6s!g~%dY6xT!OWOr%dsv%dw!c%d!c!d7X!d~%dY7^T!OWOr%dsv%dw!v%d!v!w7m!w~%dY7rT!OWOr%dsv%dw!c%d!c!d8R!d~%dY8WT!OWOr%dsv%dw!}%d!}#O8g#O~%dY8nR!OW!RQOr%dsv%dw~%dY8|T!OWOr%dsv%dw#W%d#W#X9]#X~%dY9bT!OWOr%dsv%dw#T%d#T#U9q#U~%dY9vT!OWOr%dsv%dw#h%d#h#i:V#i~%dY:[T!OWOr%dsv%dw#T%d#T#U8R#U~%dX:pT!OWOr%dsv%dw#c%d#c#d;P#d~%dX;UT!OWOr%dsv%dw#V%d#V#W;e#W~%dX;jT!OWOr%dsv%dw#h%d#h#i;y#i~%dX_UZTdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$kZ>xWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!a?b!a~$kZ?kU{PdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$kZ@UWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_#P$k#P#Q@n#Q~$kZ@uWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!aA_!a~$kZAhU!QPdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$k",tokenizers:[_f,Tf,Rf,Wf,0,1,2,3],topRules:{Document:[0,6]},tokenPrec:0});function zf(e,t){let n=t&&t.getChild("TagName");return n?e.sliceString(n.from,n.to):""}function Yf(e,t){let n=t&&t.firstChild;return n&&"OpenTag"==n.name?zf(e,n):""}function Zf(e){for(let t=e&&e.parent;t;t=t.parent)if("Element"==t.name)return t;return null}class Uf{constructor(e,t,n){this.attrs=t,this.attrValues=n,this.children=[],this.name=e.name,this.completion=Object.assign(Object.assign({type:"type"},e.completion||{}),{label:this.name}),this.openCompletion=Object.assign(Object.assign({},this.completion),{label:"<"+this.name}),this.closeCompletion=Object.assign(Object.assign({},this.completion),{label:"",boost:2}),this.closeNameCompletion=Object.assign(Object.assign({},this.completion),{label:this.name+">"}),this.text=e.textContent?e.textContent.map((e=>({label:e,type:"text"}))):[]}}const Ef=/^[:\-\.\w\u00b7-\uffff]*$/;function If(e){return Object.assign(Object.assign({type:"property"},e.completion||{}),{label:e.name})}function Vf(e){return"string"==typeof e?{label:`"${e}"`,type:"constant"}:/^"/.test(e.label)?e:Object.assign(Object.assign({},e),{label:`"${e.label}"`})}function Cf(e,t){let n=[],r=[],i=Object.create(null);for(let e of t){let t=If(e);n.push(t),e.global&&r.push(t),e.values&&(i[e.name]=e.values.map(Vf))}let a=[],o=[],s=Object.create(null);for(let t of e){let e=r,O=i;t.attributes&&(e=e.concat(t.attributes.map((e=>"string"==typeof e?n.find((t=>t.label==e))||{label:e,type:"property"}:(e.values&&(O==i&&(O=Object.create(O)),O[e.name]=e.values.map(Vf)),If(e))))));let l=new Uf(t,e,O);s[l.name]=l,a.push(l),t.top&&o.push(l)}o.length||(o=a);for(let t=0;t{var t;let{doc:n}=e.state,O=function(e,t){var n;let r=qa(e).resolveInner(t,-1),i=null;for(let e=r;!i&&e.parent;e=e.parent)"OpenTag"!=e.name&&"CloseTag"!=e.name&&"SelfClosingTag"!=e.name&&"MismatchedCloseTag"!=e.name||(i=e);if(i&&(i.to>t||i.lastChild.type.isError)){let e=i.parent;if("TagName"==r.name)return"CloseTag"==i.name||"MismatchedCloseTag"==i.name?{type:"closeTag",from:r.from,context:e}:{type:"openTag",from:r.from,context:Zf(e)};if("AttributeName"==r.name)return{type:"attrName",from:r.from,context:i};if("AttributeValue"==r.name)return{type:"attrValue",from:r.from,context:i};let n=r==i||"Attribute"==r.name?r.childBefore(t):r;return"StartTag"==(null==n?void 0:n.name)?{type:"openTag",from:t,context:Zf(e)}:"StartCloseTag"==(null==n?void 0:n.name)&&n.to<=t?{type:"closeTag",from:t,context:e}:"Is"==(null==n?void 0:n.name)?{type:"attrValue",from:t,context:i}:n?{type:"attrName",from:t,context:i}:null}if("StartCloseTag"==r.name)return{type:"closeTag",from:t,context:r.parent};for(;r.parent&&r.to==t&&!(null===(n=r.lastChild)||void 0===n?void 0:n.type.isError);)r=r.parent;return"Element"==r.name||"Text"==r.name||"Document"==r.name?{type:"tag",from:t,context:"Element"==r.name?r:Zf(r)}:null}(e.state,e.pos);if(!O||"tag"==O.type&&!e.explicit)return null;let{type:l,from:c,context:u}=O;if("openTag"==l){let e=o,t=Yf(n,u);if(t){let n=s[t];e=(null==n?void 0:n.children)||a}return{from:c,options:e.map((e=>e.completion)),span:Ef}}if("closeTag"==l){let r=Yf(n,u);return r?{from:c,to:e.pos+(">"==n.sliceString(e.pos,e.pos+1)?1:0),options:[(null===(t=s[r])||void 0===t?void 0:t.closeNameCompletion)||{label:r+">",type:"type"}],span:Ef}:null}if("attrName"==l){let e=s[zf(n,u)];return{from:c,options:(null==e?void 0:e.attrs)||r,span:Ef}}if("attrValue"==l){let t=function(e,t,n){let r=t&&t.getChildren("Attribute").find((e=>e.from<=n&&e.to>=n)),i=r&&r.getChild("AttributeName");return i?e.sliceString(i.from,i.to):""}(n,u,c);if(!t)return null;let r=s[zf(n,u)],a=((null==r?void 0:r.attrValues)||i)[t];return a&&a.length?{from:c,to:e.pos+('"'==n.sliceString(e.pos,e.pos+1)?1:0),options:a,span:/^"[^"]*"?$/}:null}if("tag"==l){let t=Yf(n,u),r=s[t],i=[],O=u&&u.lastChild;!t||O&&"CloseTag"==O.name&&zf(n,O)==t||i.push(r?r.closeCompletion:{label:"",type:"type",boost:2});let l=i.concat(((null==r?void 0:r.children)||(u?a:o)).map((e=>e.openCompletion)));if(u&&(null==r?void 0:r.text.length)){let t=u.firstChild;t.to>e.pos-20&&!/\S/.test(e.state.sliceDoc(t.to,e.pos))&&(l=l.concat(r.text))}return{from:c,options:l,span:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}return null}}const Af=Wa.define({parser:qf.configure({props:[Ha.add({Element(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"OpenTag CloseTag SelfClosingTag":e=>e.column(e.node.from)+e.unit}),so.add({Element(e){let t=e.firstChild,n=e.lastChild;return t&&"OpenTag"==t.name?{from:t.to,to:"CloseTag"==n.name?n.from:e.to}:null}}),zc({Text:Ou.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":Ou.angleBracket,TagName:Ou.tagName,"MismatchedCloseTag/Tagname":[Ou.tagName,Ou.invalid],AttributeName:Ou.attributeName,AttributeValue:Ou.attributeValue,Is:Ou.definitionOperator,"EntityReference CharacterReference":Ou.character,Comment:Ou.blockComment,ProcessingInst:Ou.processingInstruction,DoctypeDecl:Ou.documentMeta,Cdata:Ou.special(Ou.string)})]}),languageData:{commentTokens:{block:{open:"\x3c!--",close:"--\x3e"}},indentOnInput:/^\s*<\/$/}});var Gf=Object.freeze({__proto__:null,completeFromSchema:Cf,xml:function(e={}){return new Ga(Af,Af.data.of({autocomplete:Cf(e.elements||[],e.attributes||[])}))},xmlLanguage:Af}),jf={"+":["conjugate","add"],"−":["negate","subtract"],"×":["signOf","multiply"],"÷":["reciprocal","divide"],"⌈":["ceiling","greaterOf"],"⌊":["floor","lesserOf"],"∣":["absolute","residue"],"⍳":["indexGenerate","indexOf"],"?":["roll","deal"],"⋆":["exponentiate","toThePowerOf"],"⍟":["naturalLog","logToTheBase"],"○":["piTimes","circularFuncs"],"!":["factorial","binomial"],"⌹":["matrixInverse","matrixDivide"],"<":[null,"lessThan"],"≤":[null,"lessThanOrEqual"],"=":[null,"equals"],">":[null,"greaterThan"],"≥":[null,"greaterThanOrEqual"],"≠":[null,"notEqual"],"≡":["depth","match"],"≢":[null,"notMatch"],"∈":["enlist","membership"],"⍷":[null,"find"],"∪":["unique","union"],"∩":[null,"intersection"],"∼":["not","without"],"∨":[null,"or"],"∧":[null,"and"],"⍱":[null,"nor"],"⍲":[null,"nand"],"⍴":["shapeOf","reshape"],",":["ravel","catenate"],"⍪":[null,"firstAxisCatenate"],"⌽":["reverse","rotate"],"⊖":["axis1Reverse","axis1Rotate"],"⍉":["transpose",null],"↑":["first","take"],"↓":[null,"drop"],"⊂":["enclose","partitionWithAxis"],"⊃":["diclose","pick"],"⌷":[null,"index"],"⍋":["gradeUp",null],"⍒":["gradeDown",null],"⊤":["encode",null],"⊥":["decode",null],"⍕":["format","formatByExample"],"⍎":["execute",null],"⊣":["stop","left"],"⊢":["pass","right"]},Lf=/[\.\/⌿⍀¨⍣]/,Nf=/⍬/,Df=/[\+−×÷⌈⌊∣⍳\?⋆⍟○!⌹<≤=>≥≠≡≢∈⍷∪∩∼∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⌷⍋⍒⊤⊥⍕⍎⊣⊢]/,Mf=/←/,Ff=/[⍝#].*$/;const Bf={startState:function(){return{prev:!1,func:!1,op:!1,string:!1,escape:!1}},token:function(e,t){var n;return e.eatSpace()?null:'"'===(n=e.next())||"'"===n?(e.eatWhile(function(e){var t;return t=!1,function(n){return t=n,n!==e||"\\"===t}}(n)),e.next(),t.prev=!0,"string"):/[\[{\(]/.test(n)?(t.prev=!1,null):/[\]}\)]/.test(n)?(t.prev=!0,null):Nf.test(n)?(t.prev=!1,"atom"):/[¯\d]/.test(n)?(t.func?(t.func=!1,t.prev=!1):t.prev=!0,e.eatWhile(/[\w\.]/),"number"):Lf.test(n)||Mf.test(n)?"operator":Df.test(n)?(t.func=!0,t.prev=!1,jf[n]?"variableName.function.standard":"variableName.function"):Ff.test(n)?(e.skipToEnd(),"comment"):"∘"===n&&"."===e.peek()?(e.next(),"variableName.function"):(e.eatWhile(/[\w\$_]/),t.prev=!0,"keyword")}};var Hf=Object.freeze({__proto__:null,apl:Bf});function Kf(e){var t=e.match(/^\s*\S/);return e.skipToEnd(),t?"error":null}const Jf={token:function(e,t){var n;if("top"==t.state)return e.sol()&&(n=e.match(/^-----BEGIN (.*)?-----\s*$/))?(t.state="headers",t.type=n[1],"tag"):Kf(e);if("headers"==t.state){if(e.sol()&&e.match(/^\w+:/))return t.state="header","atom";var r=Kf(e);return r&&(t.state="body"),r}return"header"==t.state?(e.skipToEnd(),t.state="headers","string"):"body"==t.state?e.sol()&&(n=e.match(/^-----END (.*)?-----\s*$/))?n[1]!=t.type?"error":(t.state="end","tag"):e.eatWhile(/[A-Za-z0-9+\/=]/)?null:(e.next(),"error"):"end"==t.state?Kf(e):void 0},blankLine:function(e){"headers"==e.state&&(e.state="body")},startState:function(){return{state:"top",type:null}}};var em=Object.freeze({__proto__:null,asciiArmor:Jf});function tm(e){for(var t={},n=e.split(" "),r=0;r?$/.test(n)?(t.extenExten=!0,t.extenStart=!1,"strong"):(t.extenStart=!1,e.skipToEnd(),"error")):t.extenExten?(t.extenExten=!1,t.extenPriority=!0,e.eatWhile(/[^,]/),t.extenInclude&&(e.skipToEnd(),t.extenPriority=!1,t.extenInclude=!1),t.extenSame&&(t.extenPriority=!1,t.extenSame=!1,t.extenApplication=!0),"tag"):t.extenPriority?(t.extenPriority=!1,t.extenApplication=!0,e.next(),t.extenSame?null:(e.eatWhile(/[^,]/),"number")):t.extenApplication?(e.eatWhile(/,/),","===(n=e.current())?null:(e.eatWhile(/\w/),n=e.current().toLowerCase(),t.extenApplication=!1,-1!==om.indexOf(n)?"def":null)):function(e,t){var n="",r=e.next();if(t.blockComment)return"-"==r&&e.match("-;",!0)?t.blockComment=!1:e.skipTo("--;")?(e.next(),e.next(),e.next(),t.blockComment=!1):e.skipToEnd(),"comment";if(";"==r)return e.match("--",!0)&&!e.match("-",!1)?(t.blockComment=!0,"comment"):(e.skipToEnd(),"comment");if("["==r)return e.skipTo("]"),e.eat("]"),"header";if('"'==r)return e.skipTo('"'),"string";if("'"==r)return e.skipTo("'"),"string.special";if("#"==r&&(e.eatWhile(/\w/),n=e.current(),-1!==am.indexOf(n)))return e.skipToEnd(),"strong";if("$"==r&&"{"==e.peek())return e.skipTo("}"),e.eat("}"),"variableName.special";if(e.eatWhile(/\w/),n=e.current(),-1!==im.indexOf(n)){switch(t.extenStart=!0,n){case"same":t.extenSame=!0;break;case"include":case"switch":case"ignorepat":t.extenInclude=!0}return"atom"}}(e,t)},languageData:{commentTokens:{line:";",block:{open:";--",close:"--;"}}}};var Om=Object.freeze({__proto__:null,asterisk:sm}),lm="><+-.,[]".split("");const cm={startState:function(){return{commentLine:!1,left:0,right:0,commentLoop:!1}},token:function(e,t){if(e.eatSpace())return null;e.sol()&&(t.commentLine=!1);var n=e.next().toString();return-1===lm.indexOf(n)?(t.commentLine=!0,e.eol()&&(t.commentLine=!1),"comment"):!0===t.commentLine?(e.eol()&&(t.commentLine=!1),"comment"):"]"===n||"["===n?("["===n?t.left++:t.right++,"bracket"):"+"===n||"-"===n?"keyword":"<"===n||">"===n?"atom":"."===n||","===n?"def":void(e.eol()&&(t.commentLine=!1))}};var um=Object.freeze({__proto__:null,brainfuck:cm}),hm="string",dm="atom";function pm(e){for(var t={},n=e.split(" "),r=0;r >= "),Qm={digit:/\d/,digit_or_colon:/[\d:]/,hex:/[0-9a-f]/i,sign:/[+-]/,exponent:/e/i,keyword_char:/[^\s\(\[\;\)\]]/,symbol:/[\w*+\-]/};const $m={startState:function(){return{indentStack:null,indentation:0,mode:!1}},token:function(e,t){if(null==t.indentStack&&e.sol()&&(t.indentation=6),e.eatSpace())return null;var n=null;if("string"===t.mode){for(var r=!1;null!=(r=e.next());)if('"'==r||"'"==r){t.mode=!1;break}n=hm}else{var i=e.next(),a=e.column();if(a>=0&&a<=5)n="def";else if(a>=72&&a<=79)e.skipToEnd(),n="header";else if("*"==i&&6==a)e.skipToEnd(),n="comment";else if('"'==i||"'"==i)t.mode="string",n=hm;else if("'"!=i||Qm.digit_or_colon.test(e.peek()))if("."==i)n="link";else if(function(e,t){return"0"===e&&t.eat(/x/i)?(t.eatWhile(Qm.hex),!0):("+"!=e&&"-"!=e||!Qm.digit.test(t.peek())||(t.eat(Qm.sign),e=t.next()),!!Qm.digit.test(e)&&(t.eat(e),t.eatWhile(Qm.digit),"."==t.peek()&&(t.eat("."),t.eatWhile(Qm.digit)),t.eat(Qm.exponent)&&(t.eat(Qm.sign),t.eatWhile(Qm.digit)),!0))}(i,e))n="number";else{if(e.current().match(Qm.symbol))for(;a<71&&void 0!==e.eat(Qm.symbol);)a++;n=mm&&mm.propertyIsEnumerable(e.current().toUpperCase())?"keyword":gm&&gm.propertyIsEnumerable(e.current().toUpperCase())?"builtin":fm&&fm.propertyIsEnumerable(e.current().toUpperCase())?dm:null}else n=dm}return n},indent:function(e){return null==e.indentStack?e.indentation:e.indentStack.indent}};var bm=Object.freeze({__proto__:null,cobol:$m});function xm(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.info=r,this.align=i,this.prev=a}function wm(e,t,n,r){var i=e.indented;return e.context&&"statement"==e.context.type&&"statement"!=n&&(i=e.context.indented),e.context=new xm(i,t,n,r,null,e.context)}function km(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}function ym(e,t,n){return"variable"==t.prevToken||"type"==t.prevToken||(!!/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(e.string.slice(0,n))||(!(!t.typeAtEndOfLine||e.column()!=e.indentation())||void 0))}function Pm(e){for(;;){if(!e||"top"==e.type)return!0;if("}"==e.type&&"namespace"!=e.prev.info)return!1;e=e.prev}}function vm(e){var t,n,r=e.statementIndentUnit,i=e.dontAlignCalls,a=e.keywords||{},o=e.types||{},s=e.builtin||{},O=e.blockKeywords||{},l=e.defKeywords||{},c=e.atoms||{},u=e.hooks||{},h=e.multiLineStrings,d=!1!==e.indentStatements,p=!1!==e.indentSwitch,f=e.namespaceSeparator,m=e.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,g=e.numberStart||/[\d\.]/,Q=e.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,$=e.isOperatorChar||/[+\-*&%=<>!?|\/]/,b=e.isIdentifierChar||/[\w\$_\xa1-\uffff]/,x=e.isReservedIdentifier||!1;function w(e,r){var i=e.next();if(u[i]){var d=u[i](e,r);if(!1!==d)return d}if('"'==i||"'"==i)return r.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return(a||!i&&!h)&&(n.tokenize=null),"string"}}(i),r.tokenize(e,r);if(g.test(i)){if(e.backUp(1),e.match(Q))return"number";e.next()}if(m.test(i))return t=i,null;if("/"==i){if(e.eat("*"))return r.tokenize=k,k(e,r);if(e.eat("/"))return e.skipToEnd(),"comment"}if($.test(i)){for(;!e.match(/^\/[\/*]/,!1)&&e.eat($););return"operator"}if(e.eatWhile(b),f)for(;e.match(f);)e.eatWhile(b);var p=e.current();return _m(a,p)?(_m(O,p)&&(t="newstatement"),_m(l,p)&&(n=!0),"keyword"):_m(o,p)?"type":_m(s,p)||x&&x(p)?(_m(O,p)&&(t="newstatement"),"builtin"):_m(c,p)?"atom":"variable"}function k(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function y(t,n){e.typeFirstDefinitions&&t.eol()&&Pm(n.context)&&(n.typeAtEndOfLine=ym(t,n,t.pos))}return{startState:function(e){return{tokenize:null,context:new xm(-e,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(r,i){var a=i.context;if(r.sol()&&(null==a.align&&(a.align=!1),i.indented=r.indentation(),i.startOfLine=!0),r.eatSpace())return y(r,i),null;t=n=null;var o=(i.tokenize||w)(r,i);if("comment"==o||"meta"==o)return o;if(null==a.align&&(a.align=!0),";"==t||":"==t||","==t&&r.match(/^\s*(?:\/\/.*)?$/,!1))for(;"statement"==i.context.type;)km(i);else if("{"==t)wm(i,r.column(),"}");else if("["==t)wm(i,r.column(),"]");else if("("==t)wm(i,r.column(),")");else if("}"==t){for(;"statement"==a.type;)a=km(i);for("}"==a.type&&(a=km(i));"statement"==a.type;)a=km(i)}else t==a.type?km(i):d&&(("}"==a.type||"top"==a.type)&&";"!=t||"statement"==a.type&&"newstatement"==t)&&wm(i,r.column(),"statement",r.current());if("variable"==o&&("def"==i.prevToken||e.typeFirstDefinitions&&ym(r,i,r.start)&&Pm(i.context)&&r.match(/^\s*\(/,!1))&&(o="def"),u.token){var s=u.token(r,i,o);void 0!==s&&(o=s)}return"def"==o&&!1===e.styleDefs&&(o="variable"),i.startOfLine=!1,i.prevToken=n?"def":o||t,y(r,i),o},indent:function(t,n,a){if(t.tokenize!=w&&null!=t.tokenize||t.typeAtEndOfLine)return null;var o=t.context,s=n&&n.charAt(0),O=s==o.type;if("statement"==o.type&&"}"==s&&(o=o.prev),e.dontIndentStatements)for(;"statement"==o.type&&e.dontIndentStatements.test(o.info);)o=o.prev;if(u.indent){var l=u.indent(t,o,n,a.unit);if("number"==typeof l)return l}var c=o.prev&&"switch"==o.prev.info;if(e.allmanIndentation&&/[{(]/.test(s)){for(;"top"!=o.type&&"}"!=o.type;)o=o.prev;return o.indented}return"statement"==o.type?o.indented+("{"==s?0:r||a.unit):!o.align||i&&")"==o.type?")"!=o.type||O?o.indented+(O?0:a.unit)+(O||!c||/^(?:case|default)\b/.test(n)?0:a.unit):o.indented+(r||a.unit):o.column+(O?0:1)},languageData:{indentOnInput:p?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:Object.keys(a).concat(Object.keys(o)).concat(Object.keys(s)).concat(Object.keys(c)),...e.languageData}}}function Sm(e){for(var t={},n=e.split(" "),r=0;r!?|\/#:@]/,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},'"':function(e,t){return!!e.match('""')&&(t.tokenize=Hm,t.tokenize(e,t))},"'":function(e){return e.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},"=":function(e,t){var n=t.context;return!("}"!=n.type||!n.align||!e.eat(">"))&&(t.context=new xm(n.indented,n.column,n.type,n.info,null,n.prev),"operator")},"/":function(e,t){return!!e.eat("*")&&(t.tokenize=Km(1),t.tokenize(e,t))}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}});const eg=vm({keywords:Sm("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam"),types:Sm("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:Sm("catch class do else finally for if where try while enum"),defKeywords:Sm("class val var object interface fun"),atoms:Sm("true false null this"),hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},"*":function(e,t){return"."==t.prevToken?"variable":"operator"},'"':function(e,t){var n;return t.tokenize=(n=e.match('""'),function(e,t){for(var r,i=!1,a=!1;!e.eol();){if(!n&&!i&&e.match('"')){a=!0;break}if(n&&e.match('"""')){a=!0;break}r=e.next(),!i&&"$"==r&&e.match("{")&&e.skipTo("}"),i=!i&&"\\"==r&&!n}return!a&&n||(t.tokenize=null),"string"}),t.tokenize(e,t)},"/":function(e,t){return!!e.eat("*")&&(t.tokenize=Km(1),t.tokenize(e,t))},indent:function(e,t,n,r){var i=n&&n.charAt(0);return"}"!=e.prevToken&&")"!=e.prevToken||""!=n?"operator"==e.prevToken&&"}"!=n&&"}"!=e.context.type||"variable"==e.prevToken&&"."==i||("}"==e.prevToken||")"==e.prevToken)&&"."==i?2*r+t.indented:t.align&&"}"==t.type?t.indented+(e.context.type==(n||"").charAt(0)?0:r):void 0:e.indented}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}}),tg=vm({keywords:Sm("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:Sm("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:Sm("for while do if else struct"),builtin:Sm("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:Sm("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":Im}}),ng=vm({keywords:Sm(Xm+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:Ym,blockKeywords:Sm(Um),atoms:Sm("null true false"),hooks:{"#":Im}}),rg=vm({keywords:Sm(Xm+" "+Rm),types:Zm,builtin:Sm(Wm),blockKeywords:Sm(Um+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:Sm(Em+" @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:Sm("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:Cm,hooks:{"#":Im,"*":Vm}}),ig=vm({keywords:Sm(Xm+" "+Rm+" "+Tm),types:Zm,builtin:Sm(Wm),blockKeywords:Sm(Um+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:Sm(Em+" @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:Sm("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:Cm,hooks:{"#":Im,"*":Vm,u:Gm,U:Gm,L:Gm,R:Gm,0:Am,1:Am,2:Am,3:Am,4:Am,5:Am,6:Am,7:Am,8:Am,9:Am,token:function(e,t,n){if("variable"==n&&"("==e.peek()&&(";"==t.prevToken||null==t.prevToken||"}"==t.prevToken)&&jm(e.current()))return"def"}},namespaceSeparator:"::"}),ag=vm({keywords:Sm("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:Ym,blockKeywords:Sm("case catch class else for foreach if switch try while"),defKeywords:Sm("function local class"),typeFirstDefinitions:!0,atoms:Sm("true false null"),hooks:{"#":Im}});var og=null;function sg(e){return function(t,n){for(var r,i=!1,a=!1;!t.eol();){if(!i&&t.match('"')&&("single"==e||t.match('""'))){a=!0;break}if(!i&&t.match("``")){og=sg(e),a=!0;break}r=t.next(),i="single"==e&&!i&&"\\"==r}return a&&(n.tokenize=null),"string"}}const Og=vm({keywords:Sm("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(e){var t=e.charAt(0);return t===t.toUpperCase()&&t!==t.toLowerCase()},blockKeywords:Sm("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:Sm("class dynamic function interface module object package value"),builtin:Sm("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:Sm("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},'"':function(e,t){return t.tokenize=sg(e.match('""')?"triple":"single"),t.tokenize(e,t)},"`":function(e,t){return!(!og||!e.match("`"))&&(t.tokenize=og,og=null,t.tokenize(e,t))},"'":function(e){return e.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},token:function(e,t,n){if(("variable"==n||"type"==n)&&"."==t.prevToken)return"variableName.special"}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}});function lg(e){(e.interpolationStack||(e.interpolationStack=[])).push(e.tokenize)}function cg(e){return(e.interpolationStack||(e.interpolationStack=[])).pop()}function ug(e,t,n,r){var i=!1;if(t.eat(e)){if(!t.eat(e))return"string";i=!0}function a(t,n){for(var a=!1;!t.eol();){if(!r&&!a&&"$"==t.peek())return lg(n),n.tokenize=hg,"string";var o=t.next();if(o==e&&!a&&(!i||t.match(e+e))){n.tokenize=null;break}a=!r&&!a&&"\\"==o}return"string"}return n.tokenize=a,a(t,n)}function hg(e,t){return e.eat("$"),e.eat("{")?t.tokenize=null:t.tokenize=dg,null}function dg(e,t){return e.eatWhile(/[\w_]/),t.tokenize=cg(t),"variable"}const pg=vm({keywords:Sm("this super static final const abstract class extends external factory implements mixin get native set typedef with enum throw rethrow assert break case continue default in return new deferred async await covariant try catch finally do else for if switch while import library export part of show hide is as extension on yield late required"),blockKeywords:Sm("try catch finally do else for if switch while"),builtin:Sm("void bool num int double dynamic var String Null Never"),atoms:Sm("true false null"),hooks:{"@":function(e){return e.eatWhile(/[\w\$_\.]/),"meta"},"'":function(e,t){return ug("'",e,t,!1)},'"':function(e,t){return ug('"',e,t,!1)},r:function(e,t){var n=e.peek();return("'"==n||'"'==n)&&ug(e.next(),e,t,!0)},"}":function(e,t){return function(e){return e.interpolationStack?e.interpolationStack.length:0}(t)>0&&(t.tokenize=cg(t),null)},"/":function(e,t){return!!e.eat("*")&&(t.tokenize=Km(1),t.tokenize(e,t))},token:function(e,t,n){if("variable"==n&&RegExp("^[_$]*[A-Z][a-zA-Z0-9_$]*$","g").test(e.current()))return"type"}}});var fg=Object.freeze({__proto__:null,clike:vm,c:Dm,cpp:Mm,java:Fm,csharp:Bm,scala:Jm,kotlin:eg,shader:tg,nesC:ng,objectiveC:rg,objectiveCpp:ig,squirrel:ag,ceylon:Og,dart:pg}),mg=["false","nil","true"],gg=[".","catch","def","do","if","monitor-enter","monitor-exit","new","quote","recur","set!","throw","try","var"],Qg=["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-namespace-maps*","*print-readably*","*read-eval*","*reader-resolver*","*source-path*","*suppress-read*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Eduction","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods","..","/","<","<=","=","==",">",">=","EMPTY-NODE","Inst","StackTraceElement->vec","Throwable->map","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","any?","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc","assoc!","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","boolean?","booleans","bound-fn","bound-fn*","bound?","bounded-count","butlast","byte","byte-array","bytes","bytes?","case","cast","cat","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","completing","concat","cond","cond->","cond->>","condp","conj","conj!","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","dedupe","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj","disj!","dissoc","dissoc!","distinct","distinct?","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","double?","doubles","drop","drop-last","drop-while","eduction","empty","empty?","ensure","ensure-reduced","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","halt-when","hash","hash-combine","hash-map","hash-ordered-coll","hash-set","hash-unordered-coll","ident?","identical?","identity","if-let","if-not","if-some","ifn?","import","in-ns","inc","inc'","indexed?","init-proxy","inst-ms","inst-ms*","inst?","instance?","int","int-array","int?","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-entry?","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mix-collection-hash","mod","munge","name","namespace","namespace-munge","nat-int?","neg-int?","neg?","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop","pop!","pop-thread-bindings","pos-int?","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","qualified-ident?","qualified-keyword?","qualified-symbol?","quot","rand","rand-int","rand-nth","random-sample","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","reader-conditional","reader-conditional?","realized?","record?","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","reset-vals!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","run!","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seqable?","seque","sequence","sequential?","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","simple-ident?","simple-keyword?","simple-symbol?","slurp","some","some->","some->>","some-fn","some?","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","swap-vals!","symbol","symbol?","sync","tagged-literal","tagged-literal?","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","time","to-array","to-array-2d","trampoline","transduce","transient","tree-seq","true?","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","unreduced","unsigned-bit-shift-right","update","update-in","update-proxy","uri?","use","uuid?","val","vals","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","volatile!","volatile?","vreset!","vswap!","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"],$g=Tg(mg),bg=Tg(gg),xg=Tg(Qg),wg=Tg(["->","->>","as->","binding","bound-fn","case","catch","comment","cond","cond->","cond->>","condp","def","definterface","defmethod","defn","defmacro","defprotocol","defrecord","defstruct","deftype","do","doseq","dotimes","doto","extend","extend-protocol","extend-type","fn","for","future","if","if-let","if-not","if-some","let","letfn","locking","loop","ns","proxy","reify","struct-map","some->","some->>","try","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn"]),kg=/^(?:[\\\[\]\s"(),;@^`{}~]|$)/,yg=/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,Pg=/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,vg=/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~.][^\\\[\]\s"(),;@^`{}~.\/]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~.][^\\\[\]\s"(),;@^`{}~.\/]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/;function Sg(e,t){if(e.eatSpace()||e.eat(","))return["space",null];if(e.match(yg))return[null,"number"];if(e.match(Pg))return[null,"string.special"];if(e.eat(/^"/))return(t.tokenize=_g)(e,t);if(e.eat(/^[(\[{]/))return["open","bracket"];if(e.eat(/^[)\]}]/))return["close","bracket"];if(e.eat(/^;/))return e.skipToEnd(),["space","comment"];if(e.eat(/^[#'@^`~]/))return[null,"meta"];var n=e.match(vg),r=n&&n[0];return r?"comment"===r&&"("===t.lastToken?(t.tokenize=Xg)(e,t):Rg(r,$g)||":"===r.charAt(0)?["symbol","atom"]:Rg(r,bg)||Rg(r,xg)?["symbol","keyword"]:"("===t.lastToken?["symbol","builtin"]:["symbol","variable"]:(e.next(),e.eatWhile((function(e){return!Rg(e,kg)})),[null,"error"])}function _g(e,t){for(var n,r=!1;n=e.next();){if('"'===n&&!r){t.tokenize=Sg;break}r=!r&&"\\"===n}return[null,"string"]}function Xg(e,t){for(var n,r=1;n=e.next();)if(")"===n&&r--,"("===n&&r++,0===r){e.backUp(1),t.tokenize=Sg;break}return["space","comment"]}function Tg(e){for(var t={},n=0;n*\/]/.test(n)?$(null,"select-op"):"."==n&&e.match(/^-?[_a-z][_a-z0-9-]*/i)?$("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(n)?$(null,n):e.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(e.current())&&(t.tokenize=w),$("variableName.function","variable")):/[\w\\\-]/.test(n)?(e.eatWhile(/[\w\\\-]/),$("property","word")):$(null,null):/[\d.]/.test(e.peek())?(e.eatWhile(/[\w.%]/),$("number","unit")):e.match(/^-[\w\\\-]*/)?(e.eatWhile(/[\w\\\-]/),e.match(/^\s*:/,!1)?$("def","variable-definition"):$("variableName","variable")):e.match(/^\w+-/)?$("meta","meta"):void 0}function x(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){")"==e&&t.backUp(1);break}i=!i&&"\\"==r}return(r==e||!i&&")"!=e)&&(n.tokenize=null),$("string","string")}}function w(e,t){return e.next(),e.match(/^\s*[\"\')]/,!1)?t.tokenize=null:t.tokenize=x(")"),$(null,"(")}function k(e,t,n){this.type=e,this.indent=t,this.prev=n}function y(e,t,n,r){return e.context=new k(n,t.indentation()+(!1===r?0:t.indentUnit),e.context),n}function P(e){return e.context.prev&&(e.context=e.context.prev),e.context.type}function v(e,t,n){return X[n.context.type](e,t,n)}function S(e,t,n,r){for(var i=r||1;i>0;i--)n.context=n.context.prev;return v(e,t,n)}function _(e){var t=e.current().toLowerCase();n=p.hasOwnProperty(t)?"atom":d.hasOwnProperty(t)?"keyword":"variable"}var X={top:function(e,t,r){if("{"==e)return y(r,t,"block");if("}"==e&&r.context.prev)return P(r);if(g&&/@component/i.test(e))return y(r,t,"atComponentBlock");if(/^@(-moz-)?document$/i.test(e))return y(r,t,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(e))return y(r,t,"atBlock");if(/^@(font-face|counter-style)/i.test(e))return r.stateArg=e,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(e))return"keyframes";if(e&&"@"==e.charAt(0))return y(r,t,"at");if("hash"==e)n="builtin";else if("word"==e)n="tag";else{if("variable-definition"==e)return"maybeprop";if("interpolation"==e)return y(r,t,"interpolation");if(":"==e)return"pseudo";if(f&&"("==e)return y(r,t,"parens")}return r.context.type},block:function(e,t,r){if("word"==e){var i=t.current().toLowerCase();return l.hasOwnProperty(i)?(n="property","maybeprop"):c.hasOwnProperty(i)?(n=Q?"string.special":"property","maybeprop"):f?(n=t.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(n="error","maybeprop")}return"meta"==e?"block":f||"hash"!=e&&"qualifier"!=e?X.top(e,t,r):(n="error","block")},maybeprop:function(e,t,n){return":"==e?y(n,t,"prop"):v(e,t,n)},prop:function(e,t,r){if(";"==e)return P(r);if("{"==e&&f)return y(r,t,"propBlock");if("}"==e||"{"==e)return S(e,t,r);if("("==e)return y(r,t,"parens");if("hash"!=e||/^#([0-9a-fA-f]{3,4}|[0-9a-fA-f]{6}|[0-9a-fA-f]{8})$/.test(t.current())){if("word"==e)_(t);else if("interpolation"==e)return y(r,t,"interpolation")}else n="error";return"prop"},propBlock:function(e,t,r){return"}"==e?P(r):"word"==e?(n="property","maybeprop"):r.context.type},parens:function(e,t,n){return"{"==e||"}"==e?S(e,t,n):")"==e?P(n):"("==e?y(n,t,"parens"):"interpolation"==e?y(n,t,"interpolation"):("word"==e&&_(t),"parens")},pseudo:function(e,t,r){return"meta"==e?"pseudo":"word"==e?(n="variableName.constant",r.context.type):v(e,t,r)},documentTypes:function(e,t,r){return"word"==e&&a.hasOwnProperty(t.current())?(n="tag",r.context.type):X.atBlock(e,t,r)},atBlock:function(e,t,r){if("("==e)return y(r,t,"atBlock_parens");if("}"==e||";"==e)return S(e,t,r);if("{"==e)return P(r)&&y(r,t,f?"block":"top");if("interpolation"==e)return y(r,t,"interpolation");if("word"==e){var i=t.current().toLowerCase();n="only"==i||"not"==i||"and"==i||"or"==i?"keyword":o.hasOwnProperty(i)?"attribute":s.hasOwnProperty(i)?"property":O.hasOwnProperty(i)?"keyword":l.hasOwnProperty(i)?"property":c.hasOwnProperty(i)?Q?"string.special":"property":p.hasOwnProperty(i)?"atom":d.hasOwnProperty(i)?"keyword":"error"}return r.context.type},atComponentBlock:function(e,t,r){return"}"==e?S(e,t,r):"{"==e?P(r)&&y(r,t,f?"block":"top",!1):("word"==e&&(n="error"),r.context.type)},atBlock_parens:function(e,t,n){return")"==e?P(n):"{"==e||"}"==e?S(e,t,n,2):X.atBlock(e,t,n)},restricted_atBlock_before:function(e,t,r){return"{"==e?y(r,t,"restricted_atBlock"):"word"==e&&"@counter-style"==r.stateArg?(n="variable","restricted_atBlock_before"):v(e,t,r)},restricted_atBlock:function(e,t,r){return"}"==e?(r.stateArg=null,P(r)):"word"==e?(n="@font-face"==r.stateArg&&!u.hasOwnProperty(t.current().toLowerCase())||"@counter-style"==r.stateArg&&!h.hasOwnProperty(t.current().toLowerCase())?"error":"property","maybeprop"):"restricted_atBlock"},keyframes:function(e,t,r){return"word"==e?(n="variable","keyframes"):"{"==e?y(r,t,"top"):v(e,t,r)},at:function(e,t,r){return";"==e?P(r):"{"==e||"}"==e?S(e,t,r):("word"==e?n="tag":"hash"==e&&(n="builtin"),"at")},interpolation:function(e,t,r){return"}"==e?P(r):"{"==e||";"==e?S(e,t,r):("word"==e?n="variable":"variable"!=e&&"("!=e&&")"!=e&&(n="error"),"interpolation")}};return{startState:function(){return{tokenize:null,state:r?"block":"top",stateArg:null,context:new k(r?"block":"top",0,null)}},token:function(e,r){if(!r.tokenize&&e.eatSpace())return null;var i=(r.tokenize||b)(e,r);return i&&"object"==typeof i&&(t=i[1],i=i[0]),n=i,"comment"!=t&&(r.state=X[r.state](t,e,r)),n},indent:function(e,t,n){var r=e.context,i=t&&t.charAt(0),a=r.indent;return"prop"!=r.type||"}"!=i&&")"!=i||(r=r.prev),r.prev&&("}"!=i||"block"!=r.type&&"top"!=r.type&&"interpolation"!=r.type&&"restricted_atBlock"!=r.type?(")"!=i||"parens"!=r.type&&"atBlock_parens"!=r.type)&&("{"!=i||"at"!=r.type&&"atBlock"!=r.type)||(a=Math.max(0,r.indent-n.unit)):a=(r=r.prev).indent),a},languageData:{indentOnInput:/^\s*\}$/,commentTokens:{line:m,block:{open:"/*",close:"*/"}},autocomplete:eQ}}}function Yg(e){for(var t={},n=0;n|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|\~|!|\?|(or|and|\|\||&&|\?)=)/,fQ=/^(?:[()\[\]{},:`=;]|\.\.?\.?)/,mQ=/^[_A-Za-z$][_A-Za-z$0-9]*/,gQ=/^@[_A-Za-z$][_A-Za-z$0-9]*/,QQ=dQ(["and","or","not","is","isnt","in","instanceof","typeof"]),$Q=["for","while","loop","if","unless","else","switch","try","catch","finally","class"],bQ=dQ($Q.concat(["break","by","continue","debugger","delete","do","in","of","new","return","then","this","@","throw","when","until","extends"]));$Q=dQ($Q);var xQ=/^('{3}|\"{3}|['\"])/,wQ=/^(\/{3}|\/)/,kQ=dQ(["Infinity","NaN","undefined","null","true","false","on","off","yes","no"]);function yQ(e,t){if(e.sol()){null===t.scope.align&&(t.scope.align=!1);var n=t.scope.offset;if(e.eatSpace()){var r=e.indentation();return r>n&&"coffee"==t.scope.type?"indent":r0&&_Q(e,t)}if(e.eatSpace())return null;var i=e.peek();if(e.match("####"))return e.skipToEnd(),"comment";if(e.match("###"))return t.tokenize=vQ,t.tokenize(e,t);if("#"===i)return e.skipToEnd(),"comment";if(e.match(/^-?[0-9\.]/,!1)){var a=!1;if(e.match(/^-?\d*\.\d+(e[\+\-]?\d+)?/i)&&(a=!0),e.match(/^-?\d+\.\d*/)&&(a=!0),e.match(/^-?\.\d+/)&&(a=!0),a)return"."==e.peek()&&e.backUp(1),"number";var o=!1;if(e.match(/^-?0x[0-9a-f]+/i)&&(o=!0),e.match(/^-?[1-9]\d*(e[\+\-]?\d+)?/)&&(o=!0),e.match(/^-?0(?![\dx])/i)&&(o=!0),o)return"number"}if(e.match(xQ))return t.tokenize=PQ(e.current(),!1,"string"),t.tokenize(e,t);if(e.match(wQ)){if("/"!=e.current()||e.match(/^.*\//,!1))return t.tokenize=PQ(e.current(),!0,"string.special"),t.tokenize(e,t);e.backUp(1)}return e.match(pQ)||e.match(QQ)?"operator":e.match(fQ)?"punctuation":e.match(kQ)?"atom":e.match(gQ)||t.prop&&e.match(mQ)?"property":e.match(bQ)?"keyword":e.match(mQ)?"variable":(e.next(),hQ)}function PQ(e,t,n){return function(r,i){for(;!r.eol();)if(r.eatWhile(/[^'"\/\\]/),r.eat("\\")){if(r.next(),t&&r.eol())return n}else{if(r.match(e))return i.tokenize=yQ,n;r.eat(/['"\/]/)}return t&&(i.tokenize=yQ),n}}function vQ(e,t){for(;!e.eol();){if(e.eatWhile(/[^#]/),e.match("###")){t.tokenize=yQ;break}e.eatWhile("#")}return"comment"}function SQ(e,t,n="coffee"){for(var r=0,i=!1,a=null,o=t.scope;o;o=o.prev)if("coffee"===o.type||"}"==o.type){r=o.offset+e.indentUnit;break}"coffee"!==n?(i=null,a=e.column()+e.current().length):t.scope.align&&(t.scope.align=!1),t.scope={offset:r,type:n,prev:t.scope,align:i,alignOffset:a}}function _Q(e,t){if(t.scope.prev){if("coffee"===t.scope.type){for(var n=e.indentation(),r=!1,i=t.scope;i;i=i.prev)if(n===i.offset){r=!0;break}if(!r)return!0;for(;t.scope.prev&&t.scope.offset!==n;)t.scope=t.scope.prev;return!1}return t.scope=t.scope.prev,!1}}const XQ={startState:function(){return{tokenize:yQ,scope:{offset:0,type:"coffee",prev:null,align:!1},prop:!1,dedent:0}},token:function(e,t){var n=null===t.scope.align&&t.scope;n&&e.sol()&&(n.align=!1);var r=function(e,t){var n=t.tokenize(e,t),r=e.current();"return"===r&&(t.dedent=!0),(("->"===r||"=>"===r)&&e.eol()||"indent"===n)&&SQ(e,t);var i="[({".indexOf(r);if(-1!==i&&SQ(e,t,"])}".slice(i,i+1)),$Q.exec(r)&&SQ(e,t),"then"==r&&_Q(e,t),"dedent"===n&&_Q(e,t))return hQ;if(-1!==(i="])}".indexOf(r))){for(;"coffee"==t.scope.type&&t.scope.prev;)t.scope=t.scope.prev;t.scope.type==r&&(t.scope=t.scope.prev)}return t.dedent&&e.eol()&&("coffee"==t.scope.type&&t.scope.prev&&(t.scope=t.scope.prev),t.dedent=!1),"indent"==n||"dedent"==n?null:n}(e,t);return r&&"comment"!=r&&(n&&(n.align=!0),t.prop="punctuation"==r&&"."==e.current()),r},indent:function(e,t){if(e.tokenize!=yQ)return 0;var n=e.scope,r=t&&"])}".indexOf(t.charAt(0))>-1;if(r)for(;"coffee"==n.type&&n.prev;)n=n.prev;var i=r&&n.type===t.charAt(0);return n.align?n.alignOffset-(i?1:0):(i?n.prev:n).offset},languageData:{commentTokens:{line:"#"}}};var TQ,RQ=Object.freeze({__proto__:null,coffeeScript:XQ}),WQ=/^(block|let*|return-from|catch|load-time-value|setq|eval-when|locally|symbol-macrolet|flet|macrolet|tagbody|function|multiple-value-call|the|go|multiple-value-prog1|throw|if|progn|unwind-protect|labels|progv|let|quote)$/,qQ=/^with|^def|^do|^prog|case$|^cond$|bind$|when$|unless$/,zQ=/^(?:[+\-]?(?:\d+|\d*\.\d+)(?:[efd][+\-]?\d+)?|[+\-]?\d+(?:\/[+\-]?\d+)?|#b[+\-]?[01]+|#o[+\-]?[0-7]+|#x[+\-]?[\da-f]+)/,YQ=/[^\s'`,@()\[\]";]/;function ZQ(e){for(var t;t=e.next();)if("\\"==t)e.next();else if(!YQ.test(t)){e.backUp(1);break}return e.current()}function UQ(e,t){if(e.eatSpace())return TQ="ws",null;if(e.match(zQ))return"number";var n;if("\\"==(n=e.next())&&(n=e.next()),'"'==n)return(t.tokenize=EQ)(e,t);if("("==n)return TQ="open","bracket";if(")"==n||"]"==n)return TQ="close","bracket";if(";"==n)return e.skipToEnd(),TQ="ws","comment";if(/['`,@]/.test(n))return null;if("|"==n)return e.skipTo("|")?(e.next(),"variableName"):(e.skipToEnd(),"error");if("#"==n)return"("==(n=e.next())?(TQ="open","bracket"):/[+\-=\.']/.test(n)||/\d/.test(n)&&e.match(/^\d*#/)?null:"|"==n?(t.tokenize=IQ)(e,t):":"==n?(ZQ(e),"meta"):"\\"==n?(e.next(),ZQ(e),"string.special"):"error";var r=ZQ(e);return"."==r?null:(TQ="symbol","nil"==r||"t"==r||":"==r.charAt(0)?"atom":"open"==t.lastType&&(WQ.test(r)||qQ.test(r))?"keyword":"&"==r.charAt(0)?"variableName.special":"variableName")}function EQ(e,t){for(var n,r=!1;n=e.next();){if('"'==n&&!r){t.tokenize=UQ;break}r=!r&&"\\"==n}return"string"}function IQ(e,t){for(var n,r;n=e.next();){if("#"==n&&"|"==r){t.tokenize=UQ;break}r=n}return TQ="ws","comment"}const VQ={startState:function(){return{ctx:{prev:null,start:0,indentTo:0},lastType:null,tokenize:UQ}},token:function(e,t){e.sol()&&"number"!=typeof t.ctx.indentTo&&(t.ctx.indentTo=t.ctx.start+1),TQ=null;var n=t.tokenize(e,t);return"ws"!=TQ&&(null==t.ctx.indentTo?"symbol"==TQ&&qQ.test(e.current())?t.ctx.indentTo=t.ctx.start+e.indentUnit:t.ctx.indentTo="next":"next"==t.ctx.indentTo&&(t.ctx.indentTo=e.column()),t.lastType=TQ),"open"==TQ?t.ctx={prev:t.ctx,start:e.column(),indentTo:null}:"close"==TQ&&(t.ctx=t.ctx.prev||t.ctx),n},indent:function(e){var t=e.ctx.indentTo;return"number"==typeof t?t:e.ctx.start+1},languageData:{commentTokens:{line:";;",block:{open:"#|",close:"|#"}},closeBrackets:{brackets:["(","[","{",'"']}}};var CQ,AQ=Object.freeze({__proto__:null,commonLisp:VQ}),GQ=function(e){return new RegExp("^(?:"+e.join("|")+")$","i")},jQ=function(e){var t=e.next();if('"'===t)return e.match(/^.*?"/),"string";if("'"===t)return e.match(/^.*?'/),"string";if(/[{}\(\),\.;\[\]]/.test(t))return CQ=t,"punctuation";if("/"===t&&e.eat("/"))return e.skipToEnd(),"comment";if(HQ.test(t))return e.eatWhile(HQ),null;if(e.eatWhile(/[_\w\d]/),e.eat(":"))return e.eatWhile(/[\w\d_\-]/),"atom";var n=e.current();return DQ.test(n)?"builtin":MQ.test(n)?"def":FQ.test(n)||BQ.test(n)?"keyword":"variable"},LQ=function(e,t,n){return e.context={prev:e.context,indent:e.indent,col:n,type:t}},NQ=function(e){return e.indent=e.context.indent,e.context=e.context.prev},DQ=GQ(["abs","acos","allShortestPaths","asin","atan","atan2","avg","ceil","coalesce","collect","cos","cot","count","degrees","e","endnode","exp","extract","filter","floor","haversin","head","id","keys","labels","last","left","length","log","log10","lower","ltrim","max","min","node","nodes","percentileCont","percentileDisc","pi","radians","rand","range","reduce","rel","relationship","relationships","replace","reverse","right","round","rtrim","shortestPath","sign","sin","size","split","sqrt","startnode","stdev","stdevp","str","substring","sum","tail","tan","timestamp","toFloat","toInt","toString","trim","type","upper"]),MQ=GQ(["all","and","any","contains","exists","has","in","none","not","or","single","xor"]),FQ=GQ(["as","asc","ascending","assert","by","case","commit","constraint","create","csv","cypher","delete","desc","descending","detach","distinct","drop","else","end","ends","explain","false","fieldterminator","foreach","from","headers","in","index","is","join","limit","load","match","merge","null","on","optional","order","periodic","profile","remove","return","scan","set","skip","start","starts","then","true","union","unique","unwind","using","when","where","with","call","yield"]),BQ=GQ(["access","active","assign","all","alter","as","catalog","change","copy","create","constraint","constraints","current","database","databases","dbms","default","deny","drop","element","elements","exists","from","grant","graph","graphs","if","index","indexes","label","labels","management","match","name","names","new","node","nodes","not","of","on","or","password","populated","privileges","property","read","relationship","relationships","remove","replace","required","revoke","role","roles","set","show","start","status","stop","suspended","to","traverse","type","types","user","users","with","write"]),HQ=/[*+\-<>=&|~%^]/;const KQ={startState:function(){return{tokenize:jQ,context:null,indent:0,col:0}},token:function(e,t){if(e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"!==n&&t.context&&null==t.context.align&&"pattern"!==t.context.type&&(t.context.align=!0),"("===CQ)LQ(t,")",e.column());else if("["===CQ)LQ(t,"]",e.column());else if("{"===CQ)LQ(t,"}",e.column());else if(/[\]\}\)]/.test(CQ)){for(;t.context&&"pattern"===t.context.type;)NQ(t);t.context&&CQ===t.context.type&&NQ(t)}else"."===CQ&&t.context&&"pattern"===t.context.type?NQ(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?LQ(t,"pattern",e.column()):"pattern"!==t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"===i.type;)i=i.prev;var a=i&&r===i.type;return i?"keywords"===i.type?null:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0}};var JQ=Object.freeze({__proto__:null,cypher:KQ});function e$(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var t$=e$(["and","or","not","is"]),n$=["as","assert","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","lambda","pass","raise","return","try","while","with","yield","in"],r$=["abs","all","any","bin","bool","bytearray","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip","__import__","NotImplemented","Ellipsis","__debug__"];function i$(e){return e.scopes[e.scopes.length-1]}function a$(e){for(var t="error",n=e.delimiters||e.singleDelimiters||/^[\(\)\[\]\{\}@,:`=;\.\\]/,r=[e.singleOperators,e.doubleOperators,e.doubleDelimiters,e.tripleDelimiters,e.operators||/^([-+*/%\/&|^]=?|[<>=]+|\/\/=?|\*\*=?|!=|[~!@]|\.\.\.)/],i=0;ir?f(e,t):i0&&m(e,t)&&(a+=" error"),a}return p(e,t)}function p(i,a,o){if(i.eatSpace())return null;if(!o&&i.match(/^#.*/))return"comment";if(i.match(/^[0-9\.]/,!1)){var s=!1;if(i.match(/^[\d_]*\.\d+(e[\+\-]?\d+)?/i)&&(s=!0),i.match(/^[\d_]+\.\d*/)&&(s=!0),i.match(/^\.\d+/)&&(s=!0),s)return i.eat(/J/i),"number";var O=!1;if(i.match(/^0x[0-9a-f_]+/i)&&(O=!0),i.match(/^0b[01_]+/i)&&(O=!0),i.match(/^0o[0-7_]+/i)&&(O=!0),i.match(/^[1-9][\d_]*(e[\+\-]?[\d_]+)?/)&&(i.eat(/J/i),O=!0),i.match(/^0(?![\dx])/i)&&(O=!0),O)return i.eat(/L/i),"number"}if(i.match(c))return-1!==i.current().toLowerCase().indexOf("f")?(a.tokenize=function(n,r){for(;"rubf".indexOf(n.charAt(0).toLowerCase())>=0;)n=n.substr(1);var i=1==n.length,a="string";function o(e){return function(t,n){var r=p(t,n,!0);return"punctuation"==r&&("{"==t.current()?n.tokenize=o(e+1):"}"==t.current()&&(n.tokenize=e>1?o(e-1):s)),r}}function s(s,O){for(;!s.eol();)if(s.eatWhile(/[^'"\{\}\\]/),s.eat("\\")){if(s.next(),i&&s.eol())return a}else{if(s.match(n))return O.tokenize=r,a;if(s.match("{{"))return a;if(s.match("{",!1))return O.tokenize=o(0),s.current()?a:O.tokenize(s,O);if(s.match("}}"))return a;if(s.match("}"))return t;s.eat(/['"]/)}if(i){if(e.singleLineStringErrors)return t;O.tokenize=r}return a}return s.isString=!0,s}(i.current(),a.tokenize),a.tokenize(i,a)):(a.tokenize=function(n,r){for(;"rubf".indexOf(n.charAt(0).toLowerCase())>=0;)n=n.substr(1);var i=1==n.length,a="string";function o(o,s){for(;!o.eol();)if(o.eatWhile(/[^'"\\]/),o.eat("\\")){if(o.next(),i&&o.eol())return a}else{if(o.match(n))return s.tokenize=r,a;o.eat(/['"]/)}if(i){if(e.singleLineStringErrors)return t;s.tokenize=r}return a}return o.isString=!0,o}(i.current(),a.tokenize),a.tokenize(i,a));for(var d=0;d1&&i$(t).offset>n;){if("py"!=i$(t).type)return!0;t.scopes.pop()}return i$(t).offset!=n}function g(e,n){e.sol()&&(n.beginningOfLine=!0,n.dedent=!1);var r=n.tokenize(e,n),i=e.current();if(n.beginningOfLine&&"@"==i)return e.match(l,!1)?"meta":O?"operator":t;if(/\S/.test(i)&&(n.beginningOfLine=!1),"variable"!=r&&"builtin"!=r||"meta"!=n.lastToken||(r="meta"),"pass"!=i&&"return"!=i||(n.dedent=!0),"lambda"==i&&(n.lambda=!0),":"==i&&!n.lambda&&"py"==i$(n).type&&e.match(/^\s*(?:#|$)/,!1)&&f(e,n),1==i.length&&!/string|comment/.test(r)){var o="[({".indexOf(i);if(-1!=o&&function(e,t,n){var r=e.match(/^[\s\[\{\(]*(?:#|$)/,!1)?null:e.column()+1;t.scopes.push({offset:t.indent+(a||e.indentUnit),type:n,align:r})}(e,n,"])}".slice(o,o+1)),-1!=(o="])}".indexOf(i))){if(i$(n).type!=i)return t;n.indent=n.scopes.pop().offset-(a||e.indentUnit)}}return n.dedent&&e.eol()&&"py"==i$(n).type&&n.scopes.length>1&&n.scopes.pop(),r}return{startState:function(){return{tokenize:d,scopes:[{offset:0,type:"py",align:null}],indent:0,lastToken:null,lambda:!1,dedent:0}},token:function(e,n){var r=n.errorToken;r&&(n.errorToken=!1);var i=g(e,n);return i&&"comment"!=i&&(n.lastToken="keyword"==i||"punctuation"==i?e.current():i),"punctuation"==i&&(i=null),e.eol()&&n.lambda&&(n.lambda=!1),r?t:i},indent:function(e,t,n){if(e.tokenize!=d)return e.tokenize.isString?null:0;var r=i$(e),i=r.type==t.charAt(0)||"py"==r.type&&!e.dedent&&/^(else:|elif |except |finally:)/.test(t);return null!=r.align?r.align-(i?1:0):r.offset-(i?a||n.unit:0)},languageData:{autocomplete:n$.concat(r$),indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/,commentTokens:{line:"#"},closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""']}}}}const o$=a$({}),s$=a$({extra_keywords:(O$="by cdef cimport cpdef ctypedef enum except extern gil include nogil property public readonly struct union DEF IF ELIF ELSE",O$.split(" "))});var O$,l$=Object.freeze({__proto__:null,mkPython:a$,python:o$,cython:s$});function c$(e,t){return new RegExp((t?"":"^")+"(?:"+e.join("|")+")"+(t?"$":"\\b"))}function u$(e,t,n){return n.tokenize.push(e),e(t,n)}var h$=/^(?:[-+/%|&^]|\*\*?|[<>]{2})/,d$=/^(?:[=!]~|===|<=>|[<>=!]=?|[|&]{2}|~)/,p$=/^(?:\[\][?=]?)/,f$=/^(?:\.(?:\.{2})?|->|[?:])/,m$=/^[a-z_\u009F-\uFFFF][a-zA-Z0-9_\u009F-\uFFFF]*/,g$=/^[A-Z_\u009F-\uFFFF][a-zA-Z0-9_\u009F-\uFFFF]*/,Q$=c$(["abstract","alias","as","asm","begin","break","case","class","def","do","else","elsif","end","ensure","enum","extend","for","fun","if","include","instance_sizeof","lib","macro","module","next","of","out","pointerof","private","protected","rescue","return","require","select","sizeof","struct","super","then","type","typeof","uninitialized","union","unless","until","when","while","with","yield","__DIR__","__END_LINE__","__FILE__","__LINE__"]),$$=c$(["true","false","nil","self"]),b$=c$(["def","fun","macro","class","module","struct","lib","enum","union","do","for"]),x$=c$(["if","unless","case","while","until","begin","then"]),w$=["end","else","elsif","rescue","ensure"],k$=c$(w$),y$=["\\)","\\}","\\]"],P$=new RegExp("^(?:"+y$.join("|")+")$"),v$={def:R$,fun:R$,macro:function(e,t){if(e.eatSpace())return null;var n;if(n=e.match(m$)){if("def"==n)return"keyword";e.eat(/[?!]/)}return t.tokenize.pop(),"def"},class:W$,module:W$,struct:W$,lib:W$,enum:W$,union:W$},S$={"[":"]","{":"}","(":")","<":">"};function _$(e,t){if(e.eatSpace())return null;if("\\"!=t.lastToken&&e.match("{%",!1))return u$(T$("%","%"),e,t);if("\\"!=t.lastToken&&e.match("{{",!1))return u$(T$("{","}"),e,t);if("#"==e.peek())return e.skipToEnd(),"comment";var n;if(e.match(m$))return e.eat(/[?!]/),n=e.current(),e.eat(":")?"atom":"."==t.lastToken?"property":Q$.test(n)?(b$.test(n)?"fun"==n&&t.blocks.indexOf("lib")>=0||"def"==n&&"abstract"==t.lastToken||(t.blocks.push(n),t.currentIndent+=1):"operator"!=t.lastStyle&&t.lastStyle||!x$.test(n)?"end"==n&&(t.blocks.pop(),t.currentIndent-=1):(t.blocks.push(n),t.currentIndent+=1),v$.hasOwnProperty(n)&&t.tokenize.push(v$[n]),"keyword"):$$.test(n)?"atom":"variable";if(e.eat("@"))return"["==e.peek()?u$(X$("[","]","meta"),e,t):(e.eat("@"),e.match(m$)||e.match(g$),"propertyName");if(e.match(g$))return"tag";if(e.eat(":"))return e.eat('"')?u$(q$('"',"atom",!1),e,t):e.match(m$)||e.match(g$)||e.match(h$)||e.match(d$)||e.match(p$)?"atom":(e.eat(":"),"operator");if(e.eat('"'))return u$(q$('"',"string",!0),e,t);if("%"==e.peek()){var r,i="string",a=!0;if(e.match("%r"))i="string.special",r=e.next();else if(e.match("%w"))a=!1,r=e.next();else if(e.match("%q"))a=!1,r=e.next();else if(r=e.match(/^%([^\w\s=])/))r=r[1];else{if(e.match(/^%[a-zA-Z_\u009F-\uFFFF][\w\u009F-\uFFFF]*/))return"meta";if(e.eat("%"))return"operator"}return S$.hasOwnProperty(r)&&(r=S$[r]),u$(q$(r,i,a),e,t)}return(n=e.match(/^<<-('?)([A-Z]\w*)\1/))?u$(function(e,t){return function(n,r){if(n.sol()&&(n.eatSpace(),n.match(e)))return r.tokenize.pop(),"string";for(var i=!1;n.peek();)if(i)n.next(),i=!1;else{if(n.match("{%",!1))return r.tokenize.push(T$("%","%")),"string";if(n.match("{{",!1))return r.tokenize.push(T$("{","}")),"string";if(t&&n.match("#{",!1))return r.tokenize.push(X$("#{","}","meta")),"string";i=t&&"\\"==n.next()}return"string"}}(n[2],!n[1]),e,t):e.eat("'")?(e.match(/^(?:[^']|\\(?:[befnrtv0'"]|[0-7]{3}|u(?:[0-9a-fA-F]{4}|\{[0-9a-fA-F]{1,6}\})))/),e.eat("'"),"atom"):e.eat("0")?(e.eat("x")?e.match(/^[0-9a-fA-F_]+/):e.eat("o")?e.match(/^[0-7_]+/):e.eat("b")&&e.match(/^[01_]+/),"number"):e.eat(/^\d/)?(e.match(/^[\d_]*(?:\.[\d_]+)?(?:[eE][+-]?\d+)?/),"number"):e.match(h$)?(e.eat("="),"operator"):e.match(d$)||e.match(f$)?"operator":(n=e.match(/[({[]/,!1))?u$(X$(n=n[0],S$[n],null),e,t):e.eat("\\")?(e.next(),"meta"):(e.next(),null)}function X$(e,t,n,r){return function(i,a){if(!r&&i.match(e))return a.tokenize[a.tokenize.length-1]=X$(e,t,n,!0),a.currentIndent+=1,n;var o=_$(i,a);return i.current()===t&&(a.tokenize.pop(),a.currentIndent-=1,o=n),o}}function T$(e,t,n){return function(r,i){return!n&&r.match("{"+e)?(i.currentIndent+=1,i.tokenize[i.tokenize.length-1]=T$(e,t,!0),"meta"):r.match(t+"}")?(i.currentIndent-=1,i.tokenize.pop(),"meta"):_$(r,i)}}function R$(e,t){return e.eatSpace()?null:(e.match(m$)?e.eat(/[!?]/):e.match(h$)||e.match(d$)||e.match(p$),t.tokenize.pop(),"def")}function W$(e,t){return e.eatSpace()?null:(e.match(g$),t.tokenize.pop(),"def")}function q$(e,t,n){return function(r,i){for(var a=!1;r.peek();)if(a)r.next(),a=!1;else{if(r.match("{%",!1))return i.tokenize.push(T$("%","%")),t;if(r.match("{{",!1))return i.tokenize.push(T$("{","}")),t;if(n&&r.match("#{",!1))return i.tokenize.push(X$("#{","}","meta")),t;var o=r.next();if(o==e)return i.tokenize.pop(),t;a=n&&"\\"==o}return t}}const z$={startState:function(){return{tokenize:[_$],currentIndent:0,lastToken:null,lastStyle:null,blocks:[]}},token:function(e,t){var n=t.tokenize[t.tokenize.length-1](e,t),r=e.current();return n&&"comment"!=n&&(t.lastToken=r,t.lastStyle=n),n},indent:function(e,t,n){return t=t.replace(/^\s*(?:\{%)?\s*|\s*(?:%\})?\s*$/g,""),k$.test(t)||P$.test(t)?n.unit*(e.currentIndent-1):n.unit*e.currentIndent},languageData:{indentOnInput:c$(y$.concat(w$),!0),commentTokens:{line:"#"}}};var Y$=Object.freeze({__proto__:null,crystal:z$});function Z$(e){for(var t={},n=e.split(" "),r=0;r!?|\/]/;function N$(e,t){var n=e.next();if(G$[n]){var r=G$[n](e,t);if(!1!==r)return r}if('"'==n||"'"==n||"`"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return(a||!i&&!j$)&&(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\:\.]/.test(n))return E$=n,null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n){if(e.eat("+"))return t.tokenize=M$,M$(e,t);if(e.eat("*"))return t.tokenize=D$,D$(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(L$.test(n))return e.eatWhile(L$),"operator";e.eatWhile(/[\w\$_\xa1-\uffff]/);var i=e.current();return I$.propertyIsEnumerable(i)?(C$.propertyIsEnumerable(i)&&(E$="newstatement"),"keyword"):V$.propertyIsEnumerable(i)?(C$.propertyIsEnumerable(i)&&(E$="newstatement"),"builtin"):A$.propertyIsEnumerable(i)?"atom":"variable"}function D$(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function M$(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="+"==n}return"comment"}function F$(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function B$(e,t,n){var r=e.indented;return e.context&&"statement"==e.context.type&&(r=e.context.indented),e.context=new F$(r,t,n,null,e.context)}function H$(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}const K$={startState:function(e){return{tokenize:null,context:new F$(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;E$=null;var r=(t.tokenize||N$)(e,t);if("comment"==r||"meta"==r)return r;if(null==n.align&&(n.align=!0),";"!=E$&&":"!=E$&&","!=E$||"statement"!=n.type)if("{"==E$)B$(t,e.column(),"}");else if("["==E$)B$(t,e.column(),"]");else if("("==E$)B$(t,e.column(),")");else if("}"==E$){for(;"statement"==n.type;)n=H$(t);for("}"==n.type&&(n=H$(t));"statement"==n.type;)n=H$(t)}else E$==n.type?H$(t):(("}"==n.type||"top"==n.type)&&";"!=E$||"statement"==n.type&&"newstatement"==E$)&&B$(t,e.column(),"statement");else H$(t);return t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=N$&&null!=e.tokenize)return null;var r=e.context,i=t&&t.charAt(0);"statement"==r.type&&"}"==i&&(r=r.prev);var a=i==r.type;return"statement"==r.type?r.indented+("{"==i?0:n.unit):r.align?r.column+(a?0:1):r.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var J$=Object.freeze({__proto__:null,d:K$}),eb={"+":"inserted","-":"deleted","@":"meta"};const tb={token:function(e){var t=e.string.search(/[\t ]+?$/);if(!e.sol()||0===t)return e.skipToEnd(),("error "+(eb[e.string.charAt(0)]||"")).replace(/ $/,"");var n=eb[e.peek()]||e.skipToEnd();return-1===t?e.skipToEnd():e.pos=t,n}};var nb=Object.freeze({__proto__:null,diff:tb});function rb(e){ib(e,"start");var t={},n=e.languageData||{},r=!1;for(var i in e)if(i!=n&&e.hasOwnProperty(i))for(var a=t[i]=[],o=e[i],s=0;s2&&o.token&&"string"!=typeof o.token){n.pending=[];for(var l=2;l-1)return null;var i=n.indent.length-1,a=e[n.state];e:for(;;){for(var o=0;o"),Qb("meta",n);if("#"==n&&e.eatWhile(/[\w]/))return Qb("atom","tag");if("|"==n)return Qb("keyword","separator");if(n.match(/[\(\)\[\]\-\.,\+\?>]/))return Qb(null,n);if(n.match(/[\[\]]/))return Qb("rule",n);if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){n.tokenize=$b;break}i=!i&&"\\"==r}return Qb("string","tag")}}(n),t.tokenize(e,t);if(e.eatWhile(/[a-zA-Z\?\+\d]/)){var r=e.current();return null!==r.substr(r.length-1,r.length).match(/\?|\+/)&&e.backUp(1),Qb("tag","tag")}return"%"==n||"*"==n?Qb("number","number"):(e.eatWhile(/[\w\\\-_%.{,]/),Qb(null,null))}return e.eatWhile(/[\-]/)?(t.tokenize=bb,bb(e,t)):e.eatWhile(/[\w]/)?Qb("keyword","doindent"):void 0}function bb(e,t){for(var n,r=0;null!=(n=e.next());){if(r>=2&&">"==n){t.tokenize=$b;break}r="-"==n?r+1:0}return Qb("comment","comment")}const xb={startState:function(){return{tokenize:$b,baseIndent:0,stack:[]}},token:function(e,t){if(e.eatSpace())return null;var n=t.tokenize(e,t),r=t.stack[t.stack.length-1];return"["==e.current()||"doindent"===mb||"["==mb?t.stack.push("rule"):"endtag"===mb?t.stack[t.stack.length-1]="endtag":"]"==e.current()||"]"==mb||">"==mb&&"rule"==r?t.stack.pop():"["==mb&&t.stack.push("["),n},indent:function(e,t,n){var r=e.stack.length;return"]"===t.charAt(0)?r--:">"===t.substr(t.length-1,t.length)&&("<"===t.substr(0,1)||"doindent"==mb&&t.length>1||("doindent"==mb?r--:">"==mb&&t.length>1||"tag"==mb&&">"!==t||("tag"==mb&&"rule"==e.stack[e.stack.length-1]?r--:"tag"==mb?r++:">"===t&&"rule"==e.stack[e.stack.length-1]&&">"===mb?r--:">"===t&&"rule"==e.stack[e.stack.length-1]||("<"!==t.substr(0,1)&&">"===t.substr(0,1)?r-=1:">"===t||(r-=1)))),null!=mb&&"]"!=mb||r--),e.baseIndent+r*n.unit},languageData:{indentOnInput:/^\s*[\]>]$/}};var wb=Object.freeze({__proto__:null,dtd:xb});function kb(e,t){for(var n=0;n",symbolGlobal:"\\*"+vb+"\\*",symbolConstant:"\\$"+vb},Xb={symbolKeyword:"atom",symbolClass:"tag",symbolGlobal:"variableName.standard",symbolConstant:"variableName.constant"};for(var Tb in _b)_b.hasOwnProperty(Tb)&&(_b[Tb]=new RegExp("^"+_b[Tb]));_b.keyword=[/^with(?:out)?-[-_a-zA-Z?!*@<>$%]+/];var Rb={keyword:"keyword",definition:"def",simpleDefinition:"def",signalingCalls:"builtin"},Wb={},qb={};function zb(e,t,n){return t.tokenize=n,n(e,t)}function Yb(e,t){var n=e.peek();if("'"==n||'"'==n)return e.next(),zb(e,t,Ub(n,"string"));if("/"==n){if(e.next(),e.eat("*"))return zb(e,t,Zb);if(e.eat("/"))return e.skipToEnd(),"comment";e.backUp(1)}else if(/[+\-\d\.]/.test(n)){if(e.match(/^[+-]?[0-9]*\.[0-9]*([esdx][+-]?[0-9]+)?/i)||e.match(/^[+-]?[0-9]+([esdx][+-]?[0-9]+)/i)||e.match(/^[+-]?\d+/))return"number"}else{if("#"==n)return e.next(),'"'==(n=e.peek())?(e.next(),zb(e,t,Ub('"',"string"))):"b"==n?(e.next(),e.eatWhile(/[01]/),"number"):"x"==n?(e.next(),e.eatWhile(/[\da-f]/i),"number"):"o"==n?(e.next(),e.eatWhile(/[0-7]/),"number"):"#"==n?(e.next(),"punctuation"):"["==n||"("==n?(e.next(),"bracket"):e.match(/f|t|all-keys|include|key|next|rest/i)?"atom":(e.eatWhile(/[-a-zA-Z]/),"error");if("~"==n)return e.next(),"="==(n=e.peek())?(e.next(),"="==(n=e.peek())?(e.next(),"operator"):"operator"):"operator";if(":"==n){if(e.next(),"="==(n=e.peek()))return e.next(),"operator";if(":"==n)return e.next(),"punctuation"}else{if(-1!="[](){}".indexOf(n))return e.next(),"bracket";if(-1!=".,".indexOf(n))return e.next(),"punctuation";if(e.match("end"))return"keyword"}}for(var r in _b)if(_b.hasOwnProperty(r)){var i=_b[r];if(i instanceof Array&&yb(i,(function(t){return e.match(t)}))||e.match(i))return Xb[r]}return/[+\-*\/^=<>&|]/.test(n)?(e.next(),"operator"):e.match("define")?"def":(e.eatWhile(/[\w\-]/),Wb.hasOwnProperty(e.current())?qb[e.current()]:e.current().match(Sb)?"variable":(e.next(),"variableName.standard"))}function Zb(e,t){for(var n,r=!1,i=!1,a=0;n=e.next();){if("/"==n&&r){if(!(a>0)){t.tokenize=Yb;break}a--}else"*"==n&&i&&a++;r="*"==n,i="/"==n}return"comment"}function Ub(e,t){return function(n,r){for(var i,a=!1,o=!1;null!=(i=n.next());){if(i==e&&!a){o=!0;break}a=!a&&"\\"==i}return!o&&a||(r.tokenize=Yb),t}}kb(["keyword","definition","simpleDefinition","signalingCalls"],(function(e){kb(Pb[e],(function(t){Wb[t]=e,qb[t]=Rb[e]}))}));const Eb={startState:function(){return{tokenize:Yb,currentIndent:0}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"/*",close:"*/"}}}};var Ib=Object.freeze({__proto__:null,dylan:Eb}),Vb=0,Cb=1,Ab=0,Gb=1,jb=2;const Lb={startState:function(){return{stringType:null,commentType:null,braced:0,lhs:!0,localState:null,stack:[],inDefinition:!1}},token:function(e,t){if(e){switch(0===t.stack.length&&('"'==e.peek()||"'"==e.peek()?(t.stringType=e.peek(),e.next(),t.stack.unshift(Gb)):e.match("/*")?(t.stack.unshift(Ab),t.commentType=Vb):e.match("(*")&&(t.stack.unshift(Ab),t.commentType=Cb)),t.stack[0]){case Gb:for(;t.stack[0]===Gb&&!e.eol();)e.peek()===t.stringType?(e.next(),t.stack.shift()):"\\"===e.peek()?(e.next(),e.next()):e.match(/^.[^\\\"\']*/);return t.lhs?"property":"string";case Ab:for(;t.stack[0]===Ab&&!e.eol();)t.commentType===Vb&&e.match("*/")||t.commentType===Cb&&e.match("*)")?(t.stack.shift(),t.commentType=null):e.match(/^.[^\*]*/);return"comment";case jb:for(;t.stack[0]===jb&&!e.eol();)e.match(/^[^\]\\]+/)||e.match(".")||t.stack.shift();return"operator"}var n=e.peek();switch(n){case"[":return e.next(),t.stack.unshift(jb),"bracket";case":":case"|":case";":return e.next(),"operator";case"%":if(e.match("%%"))return"header";if(e.match(/[%][A-Za-z]+/))return"keyword";if(e.match(/[%][}]/))return"bracket";break;case"/":if(e.match(/[\/][A-Za-z]+/))return"keyword";case"\\":if(e.match(/[\][a-z]+/))return"string.special";case".":if(e.match("."))return"atom";case"*":case"-":case"+":case"^":if(e.match(n))return"atom";case"$":if(e.match("$$"))return"builtin";if(e.match(/[$][0-9]+/))return"variableName.special";case"<":if(e.match(/<<[a-zA-Z_]+>>/))return"builtin"}return e.match("//")?(e.skipToEnd(),"comment"):e.match("return")?"operator":e.match(/^[a-zA-Z_][a-zA-Z0-9_]*/)?e.match(/(?=[\(.])/)?"variable":e.match(/(?=[\s\n]*[:=])/)?"def":"variableName.special":-1!=["[","]","(",")"].indexOf(e.peek())?(e.next(),"bracket"):(e.eatSpace()||e.next(),null)}}};var Nb=Object.freeze({__proto__:null,ebnf:Lb});function Db(e){for(var t={},n=e.split(" "),r=0;r!?|\/]/;function ix(e,t){var n=e.next();if(nx[n]){var r=nx[n](e,t);if(!1!==r)return r}if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=ix),"string"}}(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\:\.]/.test(n))return Mb=n,null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n){if(e.eat("*"))return t.tokenize=ax,ax(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(rx.test(n))return e.eatWhile(rx),"operator";e.eatWhile(/[\w\$_]/);var i=e.current().toLowerCase();if(Fb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"keyword";if(Bb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"variable";if(Hb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"modifier";if(Kb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"type";if(Jb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"builtin";for(var a=i.length-1;a>=0&&(!isNaN(i[a])||"_"==i[a]);)--a;if(a>0){var o=i.substr(0,a+1);if(Kb.propertyIsEnumerable(o))return ex.propertyIsEnumerable(o)&&(Mb="newstatement"),"type"}return tx.propertyIsEnumerable(i)?"atom":null}function ax(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=ix;break}r="*"==n}return"comment"}function ox(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function sx(e,t,n){return e.context=new ox(e.indented,t,n,null,e.context)}function Ox(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}const lx={startState:function(e){return{tokenize:null,context:new ox(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;Mb=null;var r=(t.tokenize||ix)(e,t);if("comment"==r||"meta"==r)return r;if(null==n.align&&(n.align=!0),";"!=Mb&&":"!=Mb||"statement"!=n.type)if("{"==Mb)sx(t,e.column(),"}");else if("["==Mb)sx(t,e.column(),"]");else if("("==Mb)sx(t,e.column(),")");else if("}"==Mb){for(;"statement"==n.type;)n=Ox(t);for("}"==n.type&&(n=Ox(t));"statement"==n.type;)n=Ox(t)}else Mb==n.type?Ox(t):("}"==n.type||"top"==n.type||"statement"==n.type&&"newstatement"==Mb)&&sx(t,e.column(),"statement");else Ox(t);return t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=ix&&null!=e.tokenize)return 0;var r=e.context,i=t&&t.charAt(0);"statement"==r.type&&"}"==i&&(r=r.prev);var a=i==r.type;return"statement"==r.type?r.indented+("{"==i?0:n.unit):r.align?r.column+(a?0:1):r.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/}};var cx=Object.freeze({__proto__:null,ecl:lx});function ux(e){for(var t={},n=0,r=e.length;n>"]);function px(e,t){if(e.eatSpace())return null;var n=e.next();return'"'==n||"'"==n?function(e,t,n){return n.tokenize.push(e),e(t,n)}(function(e,t,n){return function(r,i){for(var a,o=!1;null!=(a=r.next());){if(a==e&&(n||!o)){i.tokenize.pop();break}o=!o&&"%"==a}return t}}(n,"string"),e,t):"-"==n&&e.eat("-")?(e.skipToEnd(),"comment"):":"==n&&e.eat("=")?"operator":/[0-9]/.test(n)?(e.eatWhile(/[xXbBCc0-9\.]/),e.eat(/[\?\!]/),"variable"):/[a-zA-Z_0-9]/.test(n)?(e.eatWhile(/[a-zA-Z_0-9]/),e.eat(/[\?\!]/),"variable"):/[=+\-\/*^%<>~]/.test(n)?(e.eatWhile(/[=+\-\/*^%<>~]/),"operator"):null}const fx={startState:function(){return{tokenize:[px]}},token:function(e,t){var n=t.tokenize[t.tokenize.length-1](e,t);if("variable"==n){var r=e.current();n=hx.propertyIsEnumerable(e.current())?"keyword":dx.propertyIsEnumerable(e.current())?"operator":/^[A-Z][A-Z_0-9]*$/g.test(r)?"tag":/^0[bB][0-1]+$/g.test(r)||/^0[cC][0-7]+$/g.test(r)||/^0[xX][a-fA-F0-9]+$/g.test(r)||/^([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)$/g.test(r)||/^[0-9]+$/g.test(r)?"number":"variable"}return n},languageData:{commentTokens:{line:"--"}}};var mx=Object.freeze({__proto__:null,eiffel:fx});function gx(e,t,n){return t(n),n(e,t)}var Qx=/[a-z]/,$x=/[A-Z]/,bx=/[a-zA-Z0-9_]/,xx=/[0-9]/,wx=/[0-9A-Fa-f]/,kx=/[-&*+.\\/<>=?^|:]/,yx=/[(),[\]{}]/,Px=/[ \v\f]/;function vx(){return function(e,t){if(e.eatWhile(Px))return null;var n=e.next();if(yx.test(n))return"{"===n&&e.eat("-")?gx(e,t,Sx(1)):"["===n&&e.match("glsl|")?gx(e,t,Rx):"builtin";if("'"===n)return gx(e,t,Tx);if('"'===n)return e.eat('"')?e.eat('"')?gx(e,t,_x):"string":gx(e,t,Xx);if($x.test(n))return e.eatWhile(bx),"type";if(Qx.test(n)){var r=1===e.pos;return e.eatWhile(bx),r?"def":"variable"}if(xx.test(n)){if("0"===n){if(e.eat(/[xX]/))return e.eatWhile(wx),"number"}else e.eatWhile(xx);return e.eat(".")&&e.eatWhile(xx),e.eat(/[eE]/)&&(e.eat(/[-+]/),e.eatWhile(xx)),"number"}return kx.test(n)?"-"===n&&e.eat("-")?(e.skipToEnd(),"comment"):(e.eatWhile(kx),"keyword"):"_"===n?"keyword":"error"}}function Sx(e){return 0==e?vx():function(t,n){for(;!t.eol();){var r=t.next();if("{"==r&&t.eat("-"))++e;else if("-"==r&&t.eat("}")&&0===--e)return n(vx()),"comment"}return n(Sx(e)),"comment"}}function _x(e,t){for(;!e.eol();){if('"'===e.next()&&e.eat('"')&&e.eat('"'))return t(vx()),"string"}return"string"}function Xx(e,t){for(;e.skipTo('\\"');)e.next(),e.next();return e.skipTo('"')?(e.next(),t(vx()),"string"):(e.skipToEnd(),t(vx()),"error")}function Tx(e,t){for(;e.skipTo("\\'");)e.next(),e.next();return e.skipTo("'")?(e.next(),t(vx()),"string"):(e.skipToEnd(),t(vx()),"error")}function Rx(e,t){for(;!e.eol();){if("|"===e.next()&&e.eat("]"))return t(vx()),"string"}return"string"}var Wx={case:1,of:1,as:1,if:1,then:1,else:1,let:1,in:1,type:1,alias:1,module:1,where:1,import:1,exposing:1,port:1};const qx={startState:function(){return{f:vx()}},copyState:function(e){return{f:e.f}},token:function(e,t){var n=t.f(e,(function(e){t.f=e})),r=e.current();return Wx.hasOwnProperty(r)?"keyword":n}};var zx=Object.freeze({__proto__:null,elm:qx}),Yx=["-type","-spec","-export_type","-opaque"],Zx=["after","begin","catch","case","cond","end","fun","if","let","of","query","receive","try","when"],Ux=/[\->,;]/,Ex=["->",";",","],Ix=["and","andalso","band","bnot","bor","bsl","bsr","bxor","div","not","or","orelse","rem","xor"],Vx=/[\+\-\*\/<>=\|:!]/,Cx=["=","+","-","*","/",">",">=","<","=<","=:=","==","=/=","/=","||","<-","!"],Ax=/[<\(\[\{]/,Gx=["<<","(","[","{"],jx=/[>\)\]\}]/,Lx=["}","]",")",">>"],Nx=["is_atom","is_binary","is_bitstring","is_boolean","is_float","is_function","is_integer","is_list","is_number","is_pid","is_port","is_record","is_reference","is_tuple","atom","binary","bitstring","boolean","function","integer","list","number","pid","port","record","reference","tuple"],Dx=["abs","adler32","adler32_combine","alive","apply","atom_to_binary","atom_to_list","binary_to_atom","binary_to_existing_atom","binary_to_list","binary_to_term","bit_size","bitstring_to_list","byte_size","check_process_code","contact_binary","crc32","crc32_combine","date","decode_packet","delete_module","disconnect_node","element","erase","exit","float","float_to_list","garbage_collect","get","get_keys","group_leader","halt","hd","integer_to_list","internal_bif","iolist_size","iolist_to_binary","is_alive","is_atom","is_binary","is_bitstring","is_boolean","is_float","is_function","is_integer","is_list","is_number","is_pid","is_port","is_process_alive","is_record","is_reference","is_tuple","length","link","list_to_atom","list_to_binary","list_to_bitstring","list_to_existing_atom","list_to_float","list_to_integer","list_to_pid","list_to_tuple","load_module","make_ref","module_loaded","monitor_node","node","node_link","node_unlink","nodes","notalive","now","open_port","pid_to_list","port_close","port_command","port_connect","port_control","pre_loaded","process_flag","process_info","processes","purge_module","put","register","registered","round","self","setelement","size","spawn","spawn_link","spawn_monitor","spawn_opt","split_binary","statistics","term_to_binary","time","throw","tl","trunc","tuple_size","tuple_to_list","unlink","unregister","whereis"],Mx=/[\w@Ø-ÞÀ-Öß-öø-ÿ]/,Fx=/[0-7]{1,3}|[bdefnrstv\\"']|\^[a-zA-Z]|x[0-9a-zA-Z]{2}|x{[0-9a-zA-Z]+}/;function Bx(e,t,n){if(1==e.current().length&&t.test(e.current())){for(e.backUp(1);t.test(e.peek());)if(e.next(),tw(e.current(),n))return!0;e.backUp(e.current().length-1)}return!1}function Hx(e,t,n){if(1==e.current().length&&t.test(e.current())){for(;t.test(e.peek());)e.next();for(;01&&"fun"===e[t].type&&"fun"===e[t-1].token)return e.slice(0,t-1);switch(e[t].token){case"}":return ow(e,{g:["{"]});case"]":return ow(e,{i:["["]});case")":return ow(e,{i:["("]});case">>":return ow(e,{i:["<<"]});case"end":return ow(e,{i:["begin","case","fun","if","receive","try"]});case",":return ow(e,{e:["begin","try","when","->",",","(","[","{","<<"]});case"->":return ow(e,{r:["when"],m:["try","if","case","receive"]});case";":return ow(e,{E:["case","fun","if","receive","try","when"]});case"catch":return ow(e,{e:["try"]});case"of":return ow(e,{e:["case"]});case"after":return ow(e,{e:["receive","try"]});default:return e}}(e.tokenStack))}(e,function(e,t){return rw(t.current(),t.column(),t.indentation(),e)}(n,t)),n){case"atom":case"boolean":return"atom";case"attribute":return"attribute";case"builtin":return"builtin";default:return null;case"comment":return"comment";case"error":return"error";case"fun":return"meta";case"function":return"tag";case"guard":return"property";case"keyword":return"keyword";case"macro":return"macroName";case"number":return"number";case"operator":return"operator";case"record":return"bracket";case"string":return"string";case"type":return"def";case"variable":return"variable"}}function rw(e,t,n,r){return{token:e,column:t,indent:n,type:r}}function iw(e){return rw(e,0,0,e)}function aw(e,t){var n=e.tokenStack.length,r=t||1;return!(n({tokenStack:[],in_string:!1,in_atom:!1}),token:function(e,t){if(t.in_string)return t.in_string=!Kx(e),nw(t,e,"string");if(t.in_atom)return t.in_atom=!Jx(e),nw(t,e,"atom");if(e.eatSpace())return nw(t,e,"whitespace");if(!aw(t)&&e.match(/-\s*[a-zß-öø-ÿ][\wØ-ÞÀ-Öß-öø-ÿ]*/))return tw(e.current(),Yx)?nw(t,e,"type"):nw(t,e,"attribute");var n=e.next();if("%"==n)return e.skipToEnd(),nw(t,e,"comment");if(":"==n)return nw(t,e,"colon");if("?"==n)return e.eatSpace(),e.eatWhile(Mx),nw(t,e,"macro");if("#"==n)return e.eatSpace(),e.eatWhile(Mx),nw(t,e,"record");if("$"==n)return"\\"!=e.next()||e.match(Fx)?nw(t,e,"number"):nw(t,e,"error");if("."==n)return nw(t,e,"dot");if("'"==n){if(!(t.in_atom=!Jx(e))){if(e.match(/\s*\/\s*[0-9]/,!1))return e.match(/\s*\/\s*[0-9]/,!0),nw(t,e,"fun");if(e.match(/\s*\(/,!1)||e.match(/\s*:/,!1))return nw(t,e,"function")}return nw(t,e,"atom")}if('"'==n)return t.in_string=!Kx(e),nw(t,e,"string");if(/[A-Z_Ø-ÞÀ-Ö]/.test(n))return e.eatWhile(Mx),nw(t,e,"variable");if(/[a-z_ß-öø-ÿ]/.test(n)){if(e.eatWhile(Mx),e.match(/\s*\/\s*[0-9]/,!1))return e.match(/\s*\/\s*[0-9]/,!0),nw(t,e,"fun");var r=e.current();return tw(r,Zx)?nw(t,e,"keyword"):tw(r,Ix)?nw(t,e,"operator"):e.match(/\s*\(/,!1)?!tw(r,Dx)||":"==aw(t).token&&"erlang"!=aw(t,2).token?tw(r,Nx)?nw(t,e,"guard"):nw(t,e,"function"):nw(t,e,"builtin"):":"==function(e){var t=e.match(/^\s*([^\s%])/,!1);return t?t[1]:""}(e)?nw(t,e,"erlang"==r?"builtin":"function"):tw(r,["true","false"])?nw(t,e,"boolean"):nw(t,e,"atom")}var i=/[0-9]/;return i.test(n)?(e.eatWhile(i),e.eat("#")?e.eatWhile(/[0-9a-zA-Z]/)||e.backUp(1):e.eat(".")&&(e.eatWhile(i)?e.eat(/[eE]/)&&(e.eat(/[-+]/)?e.eatWhile(i)||e.backUp(2):e.eatWhile(i)||e.backUp(1)):e.backUp(1)),nw(t,e,"number")):Bx(e,Ax,Gx)?nw(t,e,"open_paren"):Bx(e,jx,Lx)?nw(t,e,"close_paren"):Hx(e,Ux,Ex)?nw(t,e,"separator"):Hx(e,Vx,Cx)?nw(t,e,"operator"):nw(t,e,null)},indent:function(e,t,n){var r,i=function(e){var t=e.match(/,|[a-z]+|\}|\]|\)|>>|\|+|\(/);return lw(t)&&0===t.index?t[0]:""}(t),a=aw(e,1),o=aw(e,2);return e.in_string||e.in_atom?null:o?"when"==a.token?a.column+n.unit:"when"===i&&"function"===o.type?o.indent+n.unit:"("===i&&"fun"===a.token?a.column+3:"catch"===i&&(r=sw(e,["try"]))?r.column:tw(i,["end","after","of"])?(r=sw(e,["begin","case","fun","if","receive","try"]))?r.column:null:tw(i,Lx)?(r=sw(e,Gx))?r.column:null:tw(a.token,[",","|","||"])||tw(i,[",","|","||"])?(r=function(e){var t=e.tokenStack.slice(0,-1),n=Ow(t,"type",["open_paren"]);return!!lw(t[n])&&t[n]}(e),r?r.column+r.token.length:n.unit):"->"==a.token?tw(o.token,["receive","case","if","try"])?o.column+n.unit+n.unit:o.column+n.unit:tw(a.token,Gx)?a.column+a.token.length:(r=function(e){var t=e.tokenStack,n=Ow(t,"type",["open_paren","separator","keyword"]),r=Ow(t,"type",["operator"]);return lw(n)&&lw(r)&&n!=&|~^\/]/,o=e.support||{},s=e.hooks||{},O=e.dateSQL||{date:!0,time:!0,timestamp:!0},l=!1!==e.backslashStringEscapes,c=e.brackets||/^[\{}\(\)\[\]]/,u=e.punctuation||/^[;.,:]/;function h(e,l){var h=e.next();if(s[h]){var f=s[h](e,l);if(!1!==f)return f}if(o.hexNumber&&("0"==h&&e.match(/^[xX][0-9a-fA-F]+/)||("x"==h||"X"==h)&&e.match(/^'[0-9a-fA-F]+'/)))return"number";if(o.binaryNumber&&(("b"==h||"B"==h)&&e.match(/^'[01]+'/)||"0"==h&&e.match(/^b[01]+/)))return"number";if(h.charCodeAt(0)>47&&h.charCodeAt(0)<58)return e.match(/^[0-9]*(\.[0-9]+)?([eE][-+]?[0-9]+)?/),o.decimallessFloat&&e.match(/^\.(?!\.)/),"number";if("?"==h&&(e.eatSpace()||e.eol()||e.eat(";")))return"macroName";if("'"==h||'"'==h&&o.doubleQuote)return l.tokenize=d(h),l.tokenize(e,l);if((o.nCharCast&&("n"==h||"N"==h)||o.charsetCast&&"_"==h&&e.match(/[a-z][a-z0-9]*/i))&&("'"==e.peek()||'"'==e.peek()))return"keyword";if(o.escapeConstant&&("e"==h||"E"==h)&&("'"==e.peek()||'"'==e.peek()&&o.doubleQuote))return l.tokenize=function(e,t){return(t.tokenize=d(e.next(),!0))(e,t)},"keyword";if(o.commentSlashSlash&&"/"==h&&e.eat("/"))return e.skipToEnd(),"comment";if(o.commentHash&&"#"==h||"-"==h&&e.eat("-")&&(!o.commentSpaceRequired||e.eat(" ")))return e.skipToEnd(),"comment";if("/"==h&&e.eat("*"))return l.tokenize=p(1),l.tokenize(e,l);if("."!=h){if(a.test(h))return e.eatWhile(a),"operator";if(c.test(h))return"bracket";if(u.test(h))return e.eatWhile(u),"punctuation";if("{"==h&&(e.match(/^( )*(d|D|t|T|ts|TS)( )*'[^']*'( )*}/)||e.match(/^( )*(d|D|t|T|ts|TS)( )*"[^"]*"( )*}/)))return"number";e.eatWhile(/^[_\w\d]/);var m=e.current().toLowerCase();return O.hasOwnProperty(m)&&(e.match(/^( )+'[^']*'/)||e.match(/^( )+"[^"]*"/))?"number":n.hasOwnProperty(m)?"atom":r.hasOwnProperty(m)?"builtin":i.hasOwnProperty(m)?"keyword":t.hasOwnProperty(m)?"string.special":null}return o.zerolessFloat&&e.match(/^(?:\d+(?:e[+-]?\d+)?)/i)?"number":e.match(/^\.+/)?null:o.ODBCdotTable&&e.match(/^[\w\d_$#]+/)?"type":void 0}function d(e,t){return function(n,r){for(var i,a=!1;null!=(i=n.next());){if(i==e&&!a){r.tokenize=h;break}a=(l||t)&&!a&&"\\"==i}return"string"}}function p(e){return function(t,n){var r=t.match(/^.*?(\/\*|\*\/)/);return r?"/*"==r[1]?n.tokenize=p(e+1):n.tokenize=e>1?p(e-1):h:t.skipToEnd(),"comment"}}function f(e,t,n){t.context={prev:t.context,indent:e.indentation(),col:e.column(),type:n}}return{startState:function(){return{tokenize:h,context:null}},token:function(e,t){if(e.sol()&&t.context&&null==t.context.align&&(t.context.align=!1),t.tokenize==h&&e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"==n)return n;t.context&&null==t.context.align&&(t.context.align=!0);var r=e.current();return"("==r?f(e,t,")"):"["==r?f(e,t,"]"):t.context&&t.context.type==r&&function(e){e.indent=e.context.indent,e.context=e.context.prev}(t),n},indent:function(e,t,n){var r=e.context;if(!r)return null;var i=t.charAt(0)==r.type;return r.align?r.col+(i?0:1):r.indent+(i?0:n.unit)},languageData:{commentTokens:{line:o.commentSlashSlash?"//":o.commentHash?"#":"--",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}}}function dw(e){for(var t;null!=(t=e.next());)if("`"==t&&!e.eat("`"))return"string.special";return e.backUp(e.current().length-1),e.eatWhile(/\w/)?"string.special":null}function pw(e){return e.eat("@")&&(e.match("session."),e.match("local."),e.match("global.")),e.eat("'")?(e.match(/^.*'/),"string.special"):e.eat('"')?(e.match(/^.*"/),"string.special"):e.eat("`")?(e.match(/^.*`/),"string.special"):e.match(/^[0-9a-zA-Z$\.\_]+/)?"string.special":null}function fw(e){return e.eat("N")?"atom":e.match(/^[a-zA-Z.#!?]/)?"string.special":null}var mw="alter and as asc between by count create delete desc distinct drop from group having in insert into is join like not on or order select set table union update values where limit ";function gw(e){for(var t={},n=e.split(" "),r=0;r!=^\&|\/]/,brackets:/^[\{}\(\)]/,punctuation:/^[;.,:/]/,backslashStringEscapes:!1,dateSQL:gw("date datetimeoffset datetime2 smalldatetime datetime time"),hooks:{"@":pw}}),xw=hw({client:gw("charset clear connect edit ego exit go help nopager notee nowarning pager print prompt quit rehash source status system tee"),keywords:gw(mw+"accessible action add after algorithm all analyze asensitive at authors auto_increment autocommit avg avg_row_length before binary binlog both btree cache call cascade cascaded case catalog_name chain change changed character check checkpoint checksum class_origin client_statistics close coalesce code collate collation collations column columns comment commit committed completion concurrent condition connection consistent constraint contains continue contributors convert cross current current_date current_time current_timestamp current_user cursor data database databases day_hour day_microsecond day_minute day_second deallocate dec declare default delay_key_write delayed delimiter des_key_file describe deterministic dev_pop dev_samp deviance diagnostics directory disable discard distinctrow div dual dumpfile each elseif enable enclosed end ends engine engines enum errors escape escaped even event events every execute exists exit explain extended fast fetch field fields first flush for force foreign found_rows full fulltext function general get global grant grants group group_concat handler hash help high_priority hosts hour_microsecond hour_minute hour_second if ignore ignore_server_ids import index index_statistics infile inner innodb inout insensitive insert_method install interval invoker isolation iterate key keys kill language last leading leave left level limit linear lines list load local localtime localtimestamp lock logs low_priority master master_heartbeat_period master_ssl_verify_server_cert masters match max max_rows maxvalue message_text middleint migrate min min_rows minute_microsecond minute_second mod mode modifies modify mutex mysql_errno natural next no no_write_to_binlog offline offset one online open optimize option optionally out outer outfile pack_keys parser partition partitions password phase plugin plugins prepare preserve prev primary privileges procedure processlist profile profiles purge query quick range read read_write reads real rebuild recover references regexp relaylog release remove rename reorganize repair repeatable replace require resignal restrict resume return returns revoke right rlike rollback rollup row row_format rtree savepoint schedule schema schema_name schemas second_microsecond security sensitive separator serializable server session share show signal slave slow smallint snapshot soname spatial specific sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_no_cache sql_small_result sqlexception sqlstate sqlwarning ssl start starting starts status std stddev stddev_pop stddev_samp storage straight_join subclass_origin sum suspend table_name table_statistics tables tablespace temporary terminated to trailing transaction trigger triggers truncate uncommitted undo uninstall unique unlock upgrade usage use use_frm user user_resources user_statistics using utc_date utc_time utc_timestamp value variables varying view views warnings when while with work write xa xor year_month zerofill begin do then else loop repeat"),builtin:gw("bool boolean bit blob decimal double float long longblob longtext medium mediumblob mediumint mediumtext time timestamp tinyblob tinyint tinytext text bigint int int1 int2 int3 int4 int8 integer float float4 float8 double char varbinary varchar varcharacter precision date datetime year unsigned signed numeric"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=&|^]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber doubleQuote nCharCast charsetCast commentHash commentSpaceRequired"),hooks:{"@":pw,"`":dw,"\\":fw}}),ww=hw({client:gw("charset clear connect edit ego exit go help nopager notee nowarning pager print prompt quit rehash source status system tee"),keywords:gw(mw+"accessible action add after algorithm all always analyze asensitive at authors auto_increment autocommit avg avg_row_length before binary binlog both btree cache call cascade cascaded case catalog_name chain change changed character check checkpoint checksum class_origin client_statistics close coalesce code collate collation collations column columns comment commit committed completion concurrent condition connection consistent constraint contains continue contributors convert cross current current_date current_time current_timestamp current_user cursor data database databases day_hour day_microsecond day_minute day_second deallocate dec declare default delay_key_write delayed delimiter des_key_file describe deterministic dev_pop dev_samp deviance diagnostics directory disable discard distinctrow div dual dumpfile each elseif enable enclosed end ends engine engines enum errors escape escaped even event events every execute exists exit explain extended fast fetch field fields first flush for force foreign found_rows full fulltext function general generated get global grant grants group groupby_concat handler hard hash help high_priority hosts hour_microsecond hour_minute hour_second if ignore ignore_server_ids import index index_statistics infile inner innodb inout insensitive insert_method install interval invoker isolation iterate key keys kill language last leading leave left level limit linear lines list load local localtime localtimestamp lock logs low_priority master master_heartbeat_period master_ssl_verify_server_cert masters match max max_rows maxvalue message_text middleint migrate min min_rows minute_microsecond minute_second mod mode modifies modify mutex mysql_errno natural next no no_write_to_binlog offline offset one online open optimize option optionally out outer outfile pack_keys parser partition partitions password persistent phase plugin plugins prepare preserve prev primary privileges procedure processlist profile profiles purge query quick range read read_write reads real rebuild recover references regexp relaylog release remove rename reorganize repair repeatable replace require resignal restrict resume return returns revoke right rlike rollback rollup row row_format rtree savepoint schedule schema schema_name schemas second_microsecond security sensitive separator serializable server session share show shutdown signal slave slow smallint snapshot soft soname spatial specific sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_no_cache sql_small_result sqlexception sqlstate sqlwarning ssl start starting starts status std stddev stddev_pop stddev_samp storage straight_join subclass_origin sum suspend table_name table_statistics tables tablespace temporary terminated to trailing transaction trigger triggers truncate uncommitted undo uninstall unique unlock upgrade usage use use_frm user user_resources user_statistics using utc_date utc_time utc_timestamp value variables varying view views virtual warnings when while with work write xa xor year_month zerofill begin do then else loop repeat"),builtin:gw("bool boolean bit blob decimal double float long longblob longtext medium mediumblob mediumint mediumtext time timestamp tinyblob tinyint tinytext text bigint int int1 int2 int3 int4 int8 integer float float4 float8 double char varbinary varchar varcharacter precision date datetime year unsigned signed numeric"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=&|^]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber doubleQuote nCharCast charsetCast commentHash commentSpaceRequired"),hooks:{"@":pw,"`":dw,"\\":fw}}),kw=hw({client:gw("auth backup bail binary changes check clone databases dbinfo dump echo eqp exit explain fullschema headers help import imposter indexes iotrace limit lint load log mode nullvalue once open output print prompt quit read restore save scanstats schema separator session shell show stats system tables testcase timeout timer trace vfsinfo vfslist vfsname width"),keywords:gw(mw+"abort action add after all analyze attach autoincrement before begin cascade case cast check collate column commit conflict constraint cross current_date current_time current_timestamp database default deferrable deferred detach each else end escape except exclusive exists explain fail for foreign full glob if ignore immediate index indexed initially inner instead intersect isnull key left limit match natural no notnull null of offset outer plan pragma primary query raise recursive references regexp reindex release rename replace restrict right rollback row savepoint temp temporary then to transaction trigger unique using vacuum view virtual when with without"),builtin:gw("bool boolean bit blob decimal double float long longblob longtext medium mediumblob mediumint mediumtext time timestamp tinyblob tinyint tinytext text clob bigint int int2 int8 integer float double char varchar date datetime year unsigned signed numeric real"),atoms:gw("null current_date current_time current_timestamp"),operatorChars:/^[*+\-%<>!=&|/~]/,dateSQL:gw("date time timestamp datetime"),support:gw("decimallessFloat zerolessFloat"),identifierQuote:'"',hooks:{"@":pw,":":pw,"?":pw,$:pw,'"':function(e){for(var t;null!=(t=e.next());)if('"'==t&&!e.eat('"'))return"string.special";return e.backUp(e.current().length-1),e.eatWhile(/\w/)?"string.special":null},"`":dw}}),yw=hw({client:{},keywords:gw("add all allow alter and any apply as asc authorize batch begin by clustering columnfamily compact consistency count create custom delete desc distinct drop each_quorum exists filtering from grant if in index insert into key keyspace keyspaces level limit local_one local_quorum modify nan norecursive nosuperuser not of on one order password permission permissions primary quorum rename revoke schema select set storage superuser table three to token truncate ttl two type unlogged update use user users using values where with writetime"),builtin:gw("ascii bigint blob boolean counter decimal double float frozen inet int list map static text timestamp timeuuid tuple uuid varchar varint"),atoms:gw("false true infinity NaN"),operatorChars:/^[<>=]/,dateSQL:{},support:gw("commentSlashSlash decimallessFloat"),hooks:{}}),Pw=hw({client:gw("appinfo arraysize autocommit autoprint autorecovery autotrace blockterminator break btitle cmdsep colsep compatibility compute concat copycommit copytypecheck define describe echo editfile embedded escape exec execute feedback flagger flush heading headsep instance linesize lno loboffset logsource long longchunksize markup native newpage numformat numwidth pagesize pause pno recsep recsepchar release repfooter repheader serveroutput shiftinout show showmode size spool sqlblanklines sqlcase sqlcode sqlcontinue sqlnumber sqlpluscompatibility sqlprefix sqlprompt sqlterminator suffix tab term termout time timing trimout trimspool ttitle underline verify version wrap"),keywords:gw("abort accept access add all alter and any array arraylen as asc assert assign at attributes audit authorization avg base_table begin between binary_integer body boolean by case cast char char_base check close cluster clusters colauth column comment commit compress connect connected constant constraint crash create current currval cursor data_base database date dba deallocate debugoff debugon decimal declare default definition delay delete desc digits dispose distinct do drop else elseif elsif enable end entry escape exception exception_init exchange exclusive exists exit external fast fetch file for force form from function generic goto grant group having identified if immediate in increment index indexes indicator initial initrans insert interface intersect into is key level library like limited local lock log logging long loop master maxextents maxtrans member minextents minus mislabel mode modify multiset new next no noaudit nocompress nologging noparallel not nowait number_base object of off offline on online only open option or order out package parallel partition pctfree pctincrease pctused pls_integer positive positiven pragma primary prior private privileges procedure public raise range raw read rebuild record ref references refresh release rename replace resource restrict return returning returns reverse revoke rollback row rowid rowlabel rownum rows run savepoint schema segment select separate session set share snapshot some space split sql start statement storage subtype successful synonym tabauth table tables tablespace task terminate then to trigger truncate type union unique unlimited unrecoverable unusable update use using validate value values variable view views when whenever where while with work"),builtin:gw("abs acos add_months ascii asin atan atan2 average bfile bfilename bigserial bit blob ceil character chartorowid chr clob concat convert cos cosh count dec decode deref dual dump dup_val_on_index empty error exp false float floor found glb greatest hextoraw initcap instr instrb int integer isopen last_day least length lengthb ln lower lpad ltrim lub make_ref max min mlslabel mod months_between natural naturaln nchar nclob new_time next_day nextval nls_charset_decl_len nls_charset_id nls_charset_name nls_initcap nls_lower nls_sort nls_upper nlssort no_data_found notfound null number numeric nvarchar2 nvl others power rawtohex real reftohex round rowcount rowidtochar rowtype rpad rtrim serial sign signtype sin sinh smallint soundex sqlcode sqlerrm sqrt stddev string substr substrb sum sysdate tan tanh to_char text to_date to_label to_multi_byte to_number to_single_byte translate true trunc uid unlogged upper user userenv varchar varchar2 variance varying vsize xml"),operatorChars:/^[*\/+\-%<>!=~]/,dateSQL:gw("date time timestamp"),support:gw("doubleQuote nCharCast zerolessFloat binaryNumber hexNumber")}),vw=hw({keywords:gw("select alter $elem$ $key$ $value$ add after all analyze and archive as asc before between binary both bucket buckets by cascade case cast change cluster clustered clusterstatus collection column columns comment compute concatenate continue create cross cursor data database databases dbproperties deferred delete delimited desc describe directory disable distinct distribute drop else enable end escaped exclusive exists explain export extended external fetch fields fileformat first format formatted from full function functions grant group having hold_ddltime idxproperties if import in index indexes inpath inputdriver inputformat insert intersect into is items join keys lateral left like limit lines load local location lock locks mapjoin materialized minus msck no_drop nocompress not of offline on option or order out outer outputdriver outputformat overwrite partition partitioned partitions percent plus preserve procedure purge range rcfile read readonly reads rebuild recordreader recordwriter recover reduce regexp rename repair replace restrict revoke right rlike row schema schemas semi sequencefile serde serdeproperties set shared show show_database sort sorted ssl statistics stored streamtable table tables tablesample tblproperties temporary terminated textfile then tmp to touch transform trigger unarchive undo union uniquejoin unlock update use using utc utc_tmestamp view when where while with admin authorization char compact compactions conf cube current current_date current_timestamp day decimal defined dependency directories elem_type exchange file following for grouping hour ignore inner interval jar less logical macro minute month more none noscan over owner partialscan preceding pretty principals protection reload rewrite role roles rollup rows second server sets skewed transactions truncate unbounded unset uri user values window year"),builtin:gw("bool boolean long timestamp tinyint smallint bigint int float double date datetime unsigned string array struct map uniontype key_type utctimestamp value_type varchar"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=]/,dateSQL:gw("date timestamp"),support:gw("ODBCdotTable doubleQuote binaryNumber hexNumber")}),Sw=hw({client:gw("source"),keywords:gw(mw+"a abort abs absent absolute access according action ada add admin after aggregate alias all allocate also alter always analyse analyze and any are array array_agg array_max_cardinality as asc asensitive assert assertion assignment asymmetric at atomic attach attribute attributes authorization avg backward base64 before begin begin_frame begin_partition bernoulli between bigint binary bit bit_length blob blocked bom boolean both breadth by c cache call called cardinality cascade cascaded case cast catalog catalog_name ceil ceiling chain char char_length character character_length character_set_catalog character_set_name character_set_schema characteristics characters check checkpoint class class_origin clob close cluster coalesce cobol collate collation collation_catalog collation_name collation_schema collect column column_name columns command_function command_function_code comment comments commit committed concurrently condition condition_number configuration conflict connect connection connection_name constant constraint constraint_catalog constraint_name constraint_schema constraints constructor contains content continue control conversion convert copy corr corresponding cost count covar_pop covar_samp create cross csv cube cume_dist current current_catalog current_date current_default_transform_group current_path current_role current_row current_schema current_time current_timestamp current_transform_group_for_type current_user cursor cursor_name cycle data database datalink datatype date datetime_interval_code datetime_interval_precision day db deallocate debug dec decimal declare default defaults deferrable deferred defined definer degree delete delimiter delimiters dense_rank depends depth deref derived desc describe descriptor detach detail deterministic diagnostics dictionary disable discard disconnect dispatch distinct dlnewcopy dlpreviouscopy dlurlcomplete dlurlcompleteonly dlurlcompletewrite dlurlpath dlurlpathonly dlurlpathwrite dlurlscheme dlurlserver dlvalue do document domain double drop dump dynamic dynamic_function dynamic_function_code each element else elseif elsif empty enable encoding encrypted end end_frame end_partition endexec enforced enum equals errcode error escape event every except exception exclude excluding exclusive exec execute exists exit exp explain expression extension external extract false family fetch file filter final first first_value flag float floor following for force foreach foreign fortran forward found frame_row free freeze from fs full function functions fusion g general generated get global go goto grant granted greatest group grouping groups handler having header hex hierarchy hint hold hour id identity if ignore ilike immediate immediately immutable implementation implicit import in include including increment indent index indexes indicator info inherit inherits initially inline inner inout input insensitive insert instance instantiable instead int integer integrity intersect intersection interval into invoker is isnull isolation join k key key_member key_type label lag language large last last_value lateral lead leading leakproof least left length level library like like_regex limit link listen ln load local localtime localtimestamp location locator lock locked log logged loop lower m map mapping match matched materialized max max_cardinality maxvalue member merge message message_length message_octet_length message_text method min minute minvalue mod mode modifies module month more move multiset mumps name names namespace national natural nchar nclob nesting new next nfc nfd nfkc nfkd nil no none normalize normalized not nothing notice notify notnull nowait nth_value ntile null nullable nullif nulls number numeric object occurrences_regex octet_length octets of off offset oids old on only open operator option options or order ordering ordinality others out outer output over overlaps overlay overriding owned owner p pad parallel parameter parameter_mode parameter_name parameter_ordinal_position parameter_specific_catalog parameter_specific_name parameter_specific_schema parser partial partition pascal passing passthrough password path percent percent_rank percentile_cont percentile_disc perform period permission pg_context pg_datatype_name pg_exception_context pg_exception_detail pg_exception_hint placing plans pli policy portion position position_regex power precedes preceding precision prepare prepared preserve primary print_strict_params prior privileges procedural procedure procedures program public publication query quote raise range rank read reads real reassign recheck recovery recursive ref references referencing refresh regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy regr_syy reindex relative release rename repeatable replace replica requiring reset respect restart restore restrict result result_oid return returned_cardinality returned_length returned_octet_length returned_sqlstate returning returns reverse revoke right role rollback rollup routine routine_catalog routine_name routine_schema routines row row_count row_number rows rowtype rule savepoint scale schema schema_name schemas scope scope_catalog scope_name scope_schema scroll search second section security select selective self sensitive sequence sequences serializable server server_name session session_user set setof sets share show similar simple size skip slice smallint snapshot some source space specific specific_name specifictype sql sqlcode sqlerror sqlexception sqlstate sqlwarning sqrt stable stacked standalone start state statement static statistics stddev_pop stddev_samp stdin stdout storage strict strip structure style subclass_origin submultiset subscription substring substring_regex succeeds sum symmetric sysid system system_time system_user t table table_name tables tablesample tablespace temp template temporary text then ties time timestamp timezone_hour timezone_minute to token top_level_count trailing transaction transaction_active transactions_committed transactions_rolled_back transform transforms translate translate_regex translation treat trigger trigger_catalog trigger_name trigger_schema trim trim_array true truncate trusted type types uescape unbounded uncommitted under unencrypted union unique unknown unlink unlisten unlogged unnamed unnest until untyped update upper uri usage use_column use_variable user user_defined_type_catalog user_defined_type_code user_defined_type_name user_defined_type_schema using vacuum valid validate validator value value_of values var_pop var_samp varbinary varchar variable_conflict variadic varying verbose version versioning view views volatile warning when whenever where while whitespace width_bucket window with within without work wrapper write xml xmlagg xmlattributes xmlbinary xmlcast xmlcomment xmlconcat xmldeclaration xmldocument xmlelement xmlexists xmlforest xmliterate xmlnamespaces xmlparse xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltext xmlvalidate year yes zone"),builtin:gw("bigint int8 bigserial serial8 bit varying varbit boolean bool box bytea character char varchar cidr circle date double precision float8 inet integer int int4 interval json jsonb line lseg macaddr macaddr8 money numeric decimal path pg_lsn point polygon real float4 smallint int2 smallserial serial2 serial serial4 text time without zone with timetz timestamp timestamptz tsquery tsvector txid_snapshot uuid xml"),atoms:gw("false true null unknown"),operatorChars:/^[*\/+\-%<>!=&|^\/#@?~]/,backslashStringEscapes:!1,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber nCharCast charsetCast escapeConstant")}),_w=hw({keywords:gw("ancestor and asc by contains desc descendant distinct from group has in is limit offset on order select superset where"),atoms:gw("false true"),builtin:gw("blob datetime first key __key__ string integer double boolean null"),operatorChars:/^[*+\-%<>!=]/}),Xw=hw({client:gw("source"),keywords:gw("abort absolute access action active add admin after aggregate all also alter always analyse analyze and any array as asc assertion assignment asymmetric at authorization backward before begin between bigint binary bit boolean both by cache called cascade cascaded case cast chain char character characteristics check checkpoint class close cluster coalesce codegen collate column comment commit committed concurrency concurrently configuration connection constraint constraints contains content continue conversion copy cost cpu_rate_limit create createdb createexttable createrole createuser cross csv cube current current_catalog current_date current_role current_schema current_time current_timestamp current_user cursor cycle data database day deallocate dec decimal declare decode default defaults deferrable deferred definer delete delimiter delimiters deny desc dictionary disable discard distinct distributed do document domain double drop dxl each else enable encoding encrypted end enum errors escape every except exchange exclude excluding exclusive execute exists explain extension external extract false family fetch fields filespace fill filter first float following for force foreign format forward freeze from full function global grant granted greatest group group_id grouping handler hash having header hold host hour identity if ignore ilike immediate immutable implicit in including inclusive increment index indexes inherit inherits initially inline inner inout input insensitive insert instead int integer intersect interval into invoker is isnull isolation join key language large last leading least left level like limit list listen load local localtime localtimestamp location lock log login mapping master match maxvalue median merge minute minvalue missing mode modifies modify month move name names national natural nchar new newline next no nocreatedb nocreateexttable nocreaterole nocreateuser noinherit nologin none noovercommit nosuperuser not nothing notify notnull nowait null nullif nulls numeric object of off offset oids old on only operator option options or order ordered others out outer over overcommit overlaps overlay owned owner parser partial partition partitions passing password percent percentile_cont percentile_disc placing plans position preceding precision prepare prepared preserve primary prior privileges procedural procedure protocol queue quote randomly range read readable reads real reassign recheck recursive ref references reindex reject relative release rename repeatable replace replica reset resource restart restrict returning returns revoke right role rollback rollup rootpartition row rows rule savepoint scatter schema scroll search second security segment select sequence serializable session session_user set setof sets share show similar simple smallint some split sql stable standalone start statement statistics stdin stdout storage strict strip subpartition subpartitions substring superuser symmetric sysid system table tablespace temp template temporary text then threshold ties time timestamp to trailing transaction treat trigger trim true truncate trusted type unbounded uncommitted unencrypted union unique unknown unlisten until update user using vacuum valid validation validator value values varchar variadic varying verbose version view volatile web when where whitespace window with within without work writable write xml xmlattributes xmlconcat xmlelement xmlexists xmlforest xmlparse xmlpi xmlroot xmlserialize year yes zone"),builtin:gw("bigint int8 bigserial serial8 bit varying varbit boolean bool box bytea character char varchar cidr circle date double precision float float8 inet integer int int4 interval json jsonb line lseg macaddr macaddr8 money numeric decimal path pg_lsn point polygon real float4 smallint int2 smallserial serial2 serial serial4 text time without zone with timetz timestamp timestamptz tsquery tsvector txid_snapshot uuid xml"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=&|^\/#@?~]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber nCharCast charsetCast")}),Tw=hw({keywords:gw("add after all alter analyze and anti archive array as asc at between bucket buckets by cache cascade case cast change clear cluster clustered codegen collection column columns comment commit compact compactions compute concatenate cost create cross cube current current_date current_timestamp database databases data dbproperties defined delete delimited deny desc describe dfs directories distinct distribute drop else end escaped except exchange exists explain export extended external false fields fileformat first following for format formatted from full function functions global grant group grouping having if ignore import in index indexes inner inpath inputformat insert intersect interval into is items join keys last lateral lazy left like limit lines list load local location lock locks logical macro map minus msck natural no not null nulls of on optimize option options or order out outer outputformat over overwrite partition partitioned partitions percent preceding principals purge range recordreader recordwriter recover reduce refresh regexp rename repair replace reset restrict revoke right rlike role roles rollback rollup row rows schema schemas select semi separated serde serdeproperties set sets show skewed sort sorted start statistics stored stratify struct table tables tablesample tblproperties temp temporary terminated then to touch transaction transactions transform true truncate unarchive unbounded uncache union unlock unset use using values view when where window with"),builtin:gw("tinyint smallint int bigint boolean float double string binary timestamp decimal array map struct uniontype delimited serde sequencefile textfile rcfile inputformat outputformat"),atoms:gw("false true null"),operatorChars:/^[*\/+\-%<>!=~&|^]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable doubleQuote zerolessFloat")}),Rw=hw({client:gw("source"),keywords:gw("alter and as asc between by count create delete desc distinct drop from group having in insert into is join like not on or order select set table union update values where limit after all and as at asc avedev avg between by case cast coalesce count create current_timestamp day days delete define desc distinct else end escape events every exists false first from full group having hour hours in inner insert instanceof into irstream is istream join last lastweekday left limit like max match_recognize matches median measures metadatasql min minute minutes msec millisecond milliseconds not null offset on or order outer output partition pattern prev prior regexp retain-union retain-intersection right rstream sec second seconds select set some snapshot sql stddev sum then true unidirectional until update variable weekday when where window"),builtin:{},atoms:gw("false true null"),operatorChars:/^[*+\-%<>!=&|^\/#@?~]/,dateSQL:gw("time"),support:gw("decimallessFloat zerolessFloat binaryNumber hexNumber")});var Ww=Object.freeze({__proto__:null,sql:hw,standardSQL:$w,msSQL:bw,mySQL:xw,mariaDB:ww,sqlite:kw,cassandra:yw,plSQL:Pw,hive:vw,pgSQL:Sw,gql:_w,gpSQL:Xw,sparkSQL:Tw,esper:Rw});const qw=rb({start:[{regex:/#?!.*/,token:"comment"},{regex:/"""/,token:"string",next:"string3"},{regex:/(STRING:)(\s)/,token:["keyword",null],next:"string2"},{regex:/\S*?"/,token:"string",next:"string"},{regex:/(?:0x[\d,a-f]+)|(?:0o[0-7]+)|(?:0b[0,1]+)|(?:\-?\d+.?\d*)(?=\s)/,token:"number"},{regex:/((?:GENERIC)|\:?\:)(\s+)(\S+)(\s+)(\()/,token:["keyword",null,"def",null,"bracket"],next:"stack"},{regex:/(M\:)(\s+)(\S+)(\s+)(\S+)/,token:["keyword",null,"def",null,"tag"]},{regex:/USING\:/,token:"keyword",next:"vocabulary"},{regex:/(USE\:|IN\:)(\s+)(\S+)(?=\s|$)/,token:["keyword",null,"tag"]},{regex:/(\S+\:)(\s+)(\S+)(?=\s|$)/,token:["keyword",null,"def"]},{regex:/(?:;|\\|t|f|if|loop|while|until|do|PRIVATE>|\.\*\?]+(?=\s|$)/,token:"builtin"},{regex:/[\)><]+\S+(?=\s|$)/,token:"builtin"},{regex:/(?:[\+\-\=\/\*<>])(?=\s|$)/,token:"keyword"},{regex:/\S+/,token:"variable"},{regex:/\s+|./,token:null}],vocabulary:[{regex:/;/,token:"keyword",next:"start"},{regex:/\S+/,token:"tag"},{regex:/\s+|./,token:null}],string:[{regex:/(?:[^\\]|\\.)*?"/,token:"string",next:"start"},{regex:/.*/,token:"string"}],string2:[{regex:/^;/,token:"keyword",next:"start"},{regex:/.*/,token:"string"}],string3:[{regex:/(?:[^\\]|\\.)*?"""/,token:"string",next:"start"},{regex:/.*/,token:"string"}],stack:[{regex:/\)/,token:"bracket",next:"start"},{regex:/--/,token:"bracket"},{regex:/\S+/,token:"meta"},{regex:/\s+|./,token:null}],languageData:{dontIndentStates:["start","vocabulary","string","string3","stack"],commentTokens:{line:"!"}}});var zw=Object.freeze({__proto__:null,factor:qw}),Yw={term:!0,method:!0,accu:!0,rule:!0,then:!0,is:!0,and:!0,or:!0,if:!0,default:!0},Zw={var_input:!0,var_output:!0,fuzzify:!0,defuzzify:!0,function_block:!0,ruleblock:!0},Uw={end_ruleblock:!0,end_defuzzify:!0,end_function_block:!0,end_fuzzify:!0,end_var:!0},Ew={true:!0,false:!0,nan:!0,real:!0,min:!0,max:!0,cog:!0,cogs:!0},Iw=/[+\-*&^%:=<>!|\/]/;function Vw(e,t){var n=e.next();if(/[\d\.]/.test(n))return"."==n?e.match(/^[0-9]+([eE][\-+]?[0-9]+)?/):"0"==n?e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^0[0-7]+/):e.match(/^[0-9]*\.?[0-9]*([eE][\-+]?[0-9]+)?/),"number";if("/"==n||"("==n){if(e.eat("*"))return t.tokenize=Cw,Cw(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(Iw.test(n))return e.eatWhile(Iw),"operator";e.eatWhile(/[\w\$_\xa1-\uffff]/);var r=e.current().toLowerCase();return Yw.propertyIsEnumerable(r)||Zw.propertyIsEnumerable(r)||Uw.propertyIsEnumerable(r)?"keyword":Ew.propertyIsEnumerable(r)?"atom":"variable"}function Cw(e,t){for(var n,r=!1;n=e.next();){if(("/"==n||")"==n)&&r){t.tokenize=Vw;break}r="*"==n}return"comment"}function Aw(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}const Gw={startState:function(e){return{tokenize:null,context:new Aw(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;var r=(t.tokenize||Vw)(e,t);if("comment"==r)return r;null==n.align&&(n.align=!0);var i=e.current().toLowerCase();return Zw.propertyIsEnumerable(i)?function(e,t,n){e.context=new Aw(e.indented,t,n,null,e.context)}(t,e.column(),"end_block"):Uw.propertyIsEnumerable(i)&&function(e){if(e.context.prev)"end_block"==e.context.type&&(e.indented=e.context.indented),e.context=e.context.prev}(t),t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=Vw&&null!=e.tokenize)return 0;var r=e.context,i=Uw.propertyIsEnumerable(t);return r.align?r.column+(i?0:1):r.indented+(i?0:n.unit)},languageData:{commentTokens:{line:"//",block:{open:"(*",close:"*)"}}}};var jw=Object.freeze({__proto__:null,fcl:Gw});function Lw(e){var t=[];return e.split(" ").forEach((function(e){t.push({name:e})})),t}var Nw=Lw("INVERT AND OR XOR 2* 2/ LSHIFT RSHIFT 0= = 0< < > U< MIN MAX 2DROP 2DUP 2OVER 2SWAP ?DUP DEPTH DROP DUP OVER ROT SWAP >R R> R@ + - 1+ 1- ABS NEGATE S>D * M* UM* FM/MOD SM/REM UM/MOD */ */MOD / /MOD MOD HERE , @ ! CELL+ CELLS C, C@ C! CHARS 2@ 2! ALIGN ALIGNED +! ALLOT CHAR [CHAR] [ ] BL FIND EXECUTE IMMEDIATE COUNT LITERAL STATE ; DOES> >BODY EVALUATE SOURCE >IN <# # #S #> HOLD SIGN BASE >NUMBER HEX DECIMAL FILL MOVE . CR EMIT SPACE SPACES TYPE U. .R U.R ACCEPT TRUE FALSE <> U> 0<> 0> NIP TUCK ROLL PICK 2>R 2R@ 2R> WITHIN UNUSED MARKER I J TO COMPILE, [COMPILE] SAVE-INPUT RESTORE-INPUT PAD ERASE 2LITERAL DNEGATE D- D+ D0< D0= D2* D2/ D< D= DMAX DMIN D>S DABS M+ M*/ D. D.R 2ROT DU< CATCH THROW FREE RESIZE ALLOCATE CS-PICK CS-ROLL GET-CURRENT SET-CURRENT FORTH-WORDLIST GET-ORDER SET-ORDER PREVIOUS SEARCH-WORDLIST WORDLIST FIND ALSO ONLY FORTH DEFINITIONS ORDER -TRAILING /STRING SEARCH COMPARE CMOVE CMOVE> BLANK SLITERAL"),Dw=Lw("IF ELSE THEN BEGIN WHILE REPEAT UNTIL RECURSE [IF] [ELSE] [THEN] ?DO DO LOOP +LOOP UNLOOP LEAVE EXIT AGAIN CASE OF ENDOF ENDCASE");function Mw(e,t){var n;for(n=e.length-1;n>=0;n--)if(e[n].name===t.toUpperCase())return e[n]}const Fw={startState:function(){return{state:"",base:10,coreWordList:Nw,immediateWordList:Dw,wordList:[]}},token:function(e,t){var n;if(e.eatSpace())return null;if(""===t.state){if(e.match(/^(\]|:NONAME)(\s|$)/i))return t.state=" compilation","builtin";if(n=e.match(/^(\:)\s+(\S+)(\s|$)+/))return t.wordList.push({name:n[2].toUpperCase()}),t.state=" compilation","def";if(n=e.match(/^(VARIABLE|2VARIABLE|CONSTANT|2CONSTANT|CREATE|POSTPONE|VALUE|WORD)\s+(\S+)(\s|$)+/i))return t.wordList.push({name:n[2].toUpperCase()}),"def";if(n=e.match(/^(\'|\[\'\])\s+(\S+)(\s|$)+/))return"builtin"}else{if(e.match(/^(\;|\[)(\s)/))return t.state="",e.backUp(1),"builtin";if(e.match(/^(\;|\[)($)/))return t.state="","builtin";if(e.match(/^(POSTPONE)\s+\S+(\s|$)+/))return"builtin"}return(n=e.match(/^(\S+)(\s+|$)/))?void 0!==Mw(t.wordList,n[1])?"variable":"\\"===n[1]?(e.skipToEnd(),"comment"):void 0!==Mw(t.coreWordList,n[1])?"builtin":void 0!==Mw(t.immediateWordList,n[1])?"keyword":"("===n[1]?(e.eatWhile((function(e){return")"!==e})),e.eat(")"),"comment"):".("===n[1]?(e.eatWhile((function(e){return")"!==e})),e.eat(")"),"string"):'S"'===n[1]||'."'===n[1]||'C"'===n[1]?(e.eatWhile((function(e){return'"'!==e})),e.eat('"'),"string"):n[1]-68719476735?"number":"atom":void 0}};var Bw=Object.freeze({__proto__:null,forth:Fw});function Hw(e){for(var t={},n=0;n\/\:]/,nk=new RegExp("(.and.|.or.|.eq.|.lt.|.le.|.gt.|.ge.|.ne.|.not.|.eqv.|.neqv.)","i");function rk(e,t){if(e.match(nk))return"operator";var n=e.next();if("!"==n)return e.skipToEnd(),"comment";if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if(/[\[\]\(\),]/.test(n))return null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if(tk.test(n))return e.eatWhile(tk),"operator";e.eatWhile(/[\w\$_]/);var r=e.current().toLowerCase();return Kw.hasOwnProperty(r)?"keyword":Jw.hasOwnProperty(r)||ek.hasOwnProperty(r)?"builtin":"variable"}const ik={startState:function(){return{tokenize:null}},token:function(e,t){if(e.eatSpace())return null;var n=(t.tokenize||rk)(e,t);return n}};var ak=Object.freeze({__proto__:null,fortran:ik});function ok(e){var t={as:"keyword",do:"keyword",else:"keyword",end:"keyword",exception:"keyword",fun:"keyword",functor:"keyword",if:"keyword",in:"keyword",include:"keyword",let:"keyword",of:"keyword",open:"keyword",rec:"keyword",struct:"keyword",then:"keyword",type:"keyword",val:"keyword",while:"keyword",with:"keyword"},n=e.extraWords||{};for(var r in n)n.hasOwnProperty(r)&&(t[r]=e.extraWords[r]);var i=[];for(var a in t)i.push(a);function o(n,r){var i=n.next();if('"'===i)return r.tokenize=s,r.tokenize(n,r);if("{"===i&&n.eat("|"))return r.longString=!0,r.tokenize=l,r.tokenize(n,r);if("("===i&&n.eat("*"))return r.commentLevel++,r.tokenize=O,r.tokenize(n,r);if("~"===i||"?"===i)return n.eatWhile(/\w/),"variableName.special";if("`"===i)return n.eatWhile(/\w/),"quote";if("/"===i&&e.slashComments&&n.eat("/"))return n.skipToEnd(),"comment";if(/\d/.test(i))return"0"===i&&n.eat(/[bB]/)&&n.eatWhile(/[01]/),"0"===i&&n.eat(/[xX]/)&&n.eatWhile(/[0-9a-fA-F]/),"0"===i&&n.eat(/[oO]/)?n.eatWhile(/[0-7]/):(n.eatWhile(/[\d_]/),n.eat(".")&&n.eatWhile(/[\d]/),n.eat(/[eE]/)&&n.eatWhile(/[\d\-+]/)),"number";if(/[+\-*&%=<>!?|@\.~:]/.test(i))return"operator";if(/[\w\xa1-\uffff]/.test(i)){n.eatWhile(/[\w\xa1-\uffff]/);var a=n.current();return t.hasOwnProperty(a)?t[a]:"variable"}return null}function s(e,t){for(var n,r=!1,i=!1;null!=(n=e.next());){if('"'===n&&!i){r=!0;break}i=!i&&"\\"===n}return r&&!i&&(t.tokenize=o),"string"}function O(e,t){for(var n,r;t.commentLevel>0&&null!=(r=e.next());)"("===n&&"*"===r&&t.commentLevel++,"*"===n&&")"===r&&t.commentLevel--,n=r;return t.commentLevel<=0&&(t.tokenize=o),"comment"}function l(e,t){for(var n,r;t.longString&&null!=(r=e.next());)"|"===n&&"}"===r&&(t.longString=!1),n=r;return t.longString||(t.tokenize=o),"string"}return{startState:function(){return{tokenize:o,commentLevel:0,longString:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{autocomplete:i,commentTokens:{line:e.slashComments?"//":void 0,block:{open:"(*",close:"*)"}}}}}const sk=ok({extraWords:{and:"keyword",assert:"keyword",begin:"keyword",class:"keyword",constraint:"keyword",done:"keyword",downto:"keyword",external:"keyword",function:"keyword",initializer:"keyword",lazy:"keyword",match:"keyword",method:"keyword",module:"keyword",mutable:"keyword",new:"keyword",nonrec:"keyword",object:"keyword",private:"keyword",sig:"keyword",to:"keyword",try:"keyword",value:"keyword",virtual:"keyword",when:"keyword",raise:"builtin",failwith:"builtin",true:"builtin",false:"builtin",asr:"builtin",land:"builtin",lor:"builtin",lsl:"builtin",lsr:"builtin",lxor:"builtin",mod:"builtin",or:"builtin",raise_notrace:"builtin",trace:"builtin",exit:"builtin",print_string:"builtin",print_endline:"builtin",int:"type",float:"type",bool:"type",char:"type",string:"type",unit:"type",List:"builtin"}}),Ok=ok({extraWords:{abstract:"keyword",assert:"keyword",base:"keyword",begin:"keyword",class:"keyword",default:"keyword",delegate:"keyword","do!":"keyword",done:"keyword",downcast:"keyword",downto:"keyword",elif:"keyword",extern:"keyword",finally:"keyword",for:"keyword",function:"keyword",global:"keyword",inherit:"keyword",inline:"keyword",interface:"keyword",internal:"keyword",lazy:"keyword","let!":"keyword",match:"keyword",member:"keyword",module:"keyword",mutable:"keyword",namespace:"keyword",new:"keyword",null:"keyword",override:"keyword",private:"keyword",public:"keyword","return!":"keyword",return:"keyword",select:"keyword",static:"keyword",to:"keyword",try:"keyword",upcast:"keyword","use!":"keyword",use:"keyword",void:"keyword",when:"keyword","yield!":"keyword",yield:"keyword",atomic:"keyword",break:"keyword",checked:"keyword",component:"keyword",const:"keyword",constraint:"keyword",constructor:"keyword",continue:"keyword",eager:"keyword",event:"keyword",external:"keyword",fixed:"keyword",method:"keyword",mixin:"keyword",object:"keyword",parallel:"keyword",process:"keyword",protected:"keyword",pure:"keyword",sealed:"keyword",tailcall:"keyword",trait:"keyword",virtual:"keyword",volatile:"keyword",List:"builtin",Seq:"builtin",Map:"builtin",Set:"builtin",Option:"builtin",int:"builtin",string:"builtin",not:"builtin",true:"builtin",false:"builtin",raise:"builtin",failwith:"builtin"},slashComments:!0}),lk=ok({extraWords:{abstype:"keyword",and:"keyword",andalso:"keyword",case:"keyword",datatype:"keyword",fn:"keyword",handle:"keyword",infix:"keyword",infixr:"keyword",local:"keyword",nonfix:"keyword",op:"keyword",orelse:"keyword",raise:"keyword",withtype:"keyword",eqtype:"keyword",sharing:"keyword",sig:"keyword",signature:"keyword",structure:"keyword",where:"keyword",true:"keyword",false:"keyword",int:"builtin",real:"builtin",string:"builtin",char:"builtin",bool:"builtin"},slashComments:!0});var ck=Object.freeze({__proto__:null,oCaml:sk,fSharp:Ok,sml:lk});function uk(e){var t=[],n="",r={".abort":"builtin",".align":"builtin",".altmacro":"builtin",".ascii":"builtin",".asciz":"builtin",".balign":"builtin",".balignw":"builtin",".balignl":"builtin",".bundle_align_mode":"builtin",".bundle_lock":"builtin",".bundle_unlock":"builtin",".byte":"builtin",".cfi_startproc":"builtin",".comm":"builtin",".data":"builtin",".def":"builtin",".desc":"builtin",".dim":"builtin",".double":"builtin",".eject":"builtin",".else":"builtin",".elseif":"builtin",".end":"builtin",".endef":"builtin",".endfunc":"builtin",".endif":"builtin",".equ":"builtin",".equiv":"builtin",".eqv":"builtin",".err":"builtin",".error":"builtin",".exitm":"builtin",".extern":"builtin",".fail":"builtin",".file":"builtin",".fill":"builtin",".float":"builtin",".func":"builtin",".global":"builtin",".gnu_attribute":"builtin",".hidden":"builtin",".hword":"builtin",".ident":"builtin",".if":"builtin",".incbin":"builtin",".include":"builtin",".int":"builtin",".internal":"builtin",".irp":"builtin",".irpc":"builtin",".lcomm":"builtin",".lflags":"builtin",".line":"builtin",".linkonce":"builtin",".list":"builtin",".ln":"builtin",".loc":"builtin",".loc_mark_labels":"builtin",".local":"builtin",".long":"builtin",".macro":"builtin",".mri":"builtin",".noaltmacro":"builtin",".nolist":"builtin",".octa":"builtin",".offset":"builtin",".org":"builtin",".p2align":"builtin",".popsection":"builtin",".previous":"builtin",".print":"builtin",".protected":"builtin",".psize":"builtin",".purgem":"builtin",".pushsection":"builtin",".quad":"builtin",".reloc":"builtin",".rept":"builtin",".sbttl":"builtin",".scl":"builtin",".section":"builtin",".set":"builtin",".short":"builtin",".single":"builtin",".size":"builtin",".skip":"builtin",".sleb128":"builtin",".space":"builtin",".stab":"builtin",".string":"builtin",".struct":"builtin",".subsection":"builtin",".symver":"builtin",".tag":"builtin",".text":"builtin",".title":"builtin",".type":"builtin",".uleb128":"builtin",".val":"builtin",".version":"builtin",".vtable_entry":"builtin",".vtable_inherit":"builtin",".warning":"builtin",".weak":"builtin",".weakref":"builtin",".word":"builtin"},i={};function a(e,t){for(var n,r=!1;null!=(n=e.next());){if("/"===n&&r){t.tokenize=null;break}r="*"===n}return"comment"}return"x86"===e?(n="#",i.ax="variable",i.eax="variableName.special",i.rax="variableName.special",i.bx="variable",i.ebx="variableName.special",i.rbx="variableName.special",i.cx="variable",i.ecx="variableName.special",i.rcx="variableName.special",i.dx="variable",i.edx="variableName.special",i.rdx="variableName.special",i.si="variable",i.esi="variableName.special",i.rsi="variableName.special",i.di="variable",i.edi="variableName.special",i.rdi="variableName.special",i.sp="variable",i.esp="variableName.special",i.rsp="variableName.special",i.bp="variable",i.ebp="variableName.special",i.rbp="variableName.special",i.ip="variable",i.eip="variableName.special",i.rip="variableName.special",i.cs="keyword",i.ds="keyword",i.ss="keyword",i.es="keyword",i.fs="keyword",i.gs="keyword"):"arm"!==e&&"armv6"!==e||(n="@",r.syntax="builtin",i.r0="variable",i.r1="variable",i.r2="variable",i.r3="variable",i.r4="variable",i.r5="variable",i.r6="variable",i.r7="variable",i.r8="variable",i.r9="variable",i.r10="variable",i.r11="variable",i.r12="variable",i.sp="variableName.special",i.lr="variableName.special",i.pc="variableName.special",i.r13=i.sp,i.r14=i.lr,i.r15=i.pc,t.push((function(e,t){if("#"===e)return t.eatWhile(/\w/),"number"}))),{startState:function(){return{tokenize:null}},token:function(e,o){if(o.tokenize)return o.tokenize(e,o);if(e.eatSpace())return null;var s,O,l=e.next();if("/"===l&&e.eat("*"))return o.tokenize=a,a(e,o);if(l===n)return e.skipToEnd(),"comment";if('"'===l)return function(e,t){for(var n,r=!1;null!=(n=e.next());){if(n===t&&!r)return!1;r=!r&&"\\"===n}}(e,'"'),"string";if("."===l)return e.eatWhile(/\w/),O=e.current().toLowerCase(),(s=r[O])||null;if("="===l)return e.eatWhile(/\w/),"tag";if("{"===l)return"bracket";if("}"===l)return"bracket";if(/\d/.test(l))return"0"===l&&e.eat("x")?(e.eatWhile(/[0-9a-fA-F]/),"number"):(e.eatWhile(/\d/),"number");if(/\w/.test(l))return e.eatWhile(/\w/),e.eat(":")?"tag":(O=e.current().toLowerCase(),(s=i[O])||null);for(var c=0;c]*>?/)?"variable":(e.next(),e.eatWhile(/[^@"<#]/),null)}}}),gk={break:!0,case:!0,chan:!0,const:!0,continue:!0,default:!0,defer:!0,else:!0,fallthrough:!0,for:!0,func:!0,go:!0,goto:!0,if:!0,import:!0,interface:!0,map:!0,package:!0,range:!0,return:!0,select:!0,struct:!0,switch:!0,type:!0,var:!0,bool:!0,byte:!0,complex64:!0,complex128:!0,float32:!0,float64:!0,int8:!0,int16:!0,int32:!0,int64:!0,string:!0,uint8:!0,uint16:!0,uint32:!0,uint64:!0,int:!0,uint:!0,uintptr:!0,error:!0,rune:!0},Qk={true:!0,false:!0,iota:!0,nil:!0,append:!0,cap:!0,close:!0,complex:!0,copy:!0,delete:!0,imag:!0,len:!0,make:!0,new:!0,panic:!0,print:!0,println:!0,real:!0,recover:!0},$k=/[+\-*&^%:=<>!|\/]/;function bk(e,t){var n=e.next();if('"'==n||"'"==n||"`"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"`"!=e&&"\\"==r}return(a||!i&&"`"!=e)&&(n.tokenize=bk),"string"}}(n),t.tokenize(e,t);if(/[\d\.]/.test(n))return"."==n?e.match(/^[0-9]+([eE][\-+]?[0-9]+)?/):"0"==n?e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^0[0-7]+/):e.match(/^[0-9]*\.?[0-9]*([eE][\-+]?[0-9]+)?/),"number";if(/[\[\]{}\(\),;\:\.]/.test(n))return fk=n,null;if("/"==n){if(e.eat("*"))return t.tokenize=xk,xk(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if($k.test(n))return e.eatWhile($k),"operator";e.eatWhile(/[\w\$_\xa1-\uffff]/);var r=e.current();return gk.propertyIsEnumerable(r)?("case"!=r&&"default"!=r||(fk="case"),"keyword"):Qk.propertyIsEnumerable(r)?"atom":"variable"}function xk(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=bk;break}r="*"==n}return"comment"}function wk(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function kk(e,t,n){return e.context=new wk(e.indented,t,n,null,e.context)}function yk(e){if(e.context.prev){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}}const Pk={startState:function(e){return{tokenize:null,context:new wk(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0,"case"==n.type&&(n.type="}")),e.eatSpace())return null;fk=null;var r=(t.tokenize||bk)(e,t);return"comment"==r||(null==n.align&&(n.align=!0),"{"==fk?kk(t,e.column(),"}"):"["==fk?kk(t,e.column(),"]"):"("==fk?kk(t,e.column(),")"):"case"==fk?n.type="case":("}"==fk&&"}"==n.type||fk==n.type)&&yk(t),t.startOfLine=!1),r},indent:function(e,t,n){if(e.tokenize!=bk&&null!=e.tokenize)return null;var r=e.context,i=t&&t.charAt(0);if("case"==r.type&&/^(?:case|default)\b/.test(t))return e.context.type="}",r.indented;var a=i==r.type;return r.align?r.column+(a?0:1):r.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s([{}]|case |default\s*:)$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var vk=Object.freeze({__proto__:null,go:Pk});function Sk(e){for(var t={},n=e.split(" "),r=0;r"))return _k="->",null;if(/[+\-*&%=<>!?|\/~]/.test(n))return e.eatWhile(/[+\-*&%=<>|~]/),"operator";if(e.eatWhile(/[\w\$_]/),"@"==n)return e.eatWhile(/[\w\$_\.]/),"meta";if("."==t.lastToken)return"property";if(e.eat(":"))return _k="proplabel","property";var r=e.current();return Wk.propertyIsEnumerable(r)?"atom":Xk.propertyIsEnumerable(r)?(Tk.propertyIsEnumerable(r)?_k="newstatement":Rk.propertyIsEnumerable(r)&&(_k="standalone"),"keyword"):"variable"}function zk(e,t,n){var r=!1;if("/"!=e&&t.eat(e)){if(!t.eat(e))return"string";r=!0}function i(t,n){for(var i,a=!1,o=!r;null!=(i=t.next());){if(i==e&&!a){if(!r)break;if(t.match(e+e)){o=!0;break}}if('"'==e&&"$"==i&&!a&&t.eat("{"))return n.tokenize.push(Yk()),"string";a=!a&&"\\"==i}return o&&n.tokenize.pop(),"string"}return n.tokenize.push(i),i(t,n)}function Yk(){var e=1;function t(t,n){if("}"==t.peek()){if(0==--e)return n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n)}else"{"==t.peek()&&e++;return qk(t,n)}return t.isBase=!0,t}function Zk(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize.pop();break}r="*"==n}return"comment"}function Uk(e,t){return!e||"operator"==e||"->"==e||/[\.\[\{\(,;:]/.test(e)||"newstatement"==e||"keyword"==e||"proplabel"==e||"standalone"==e&&!t}function Ek(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function Ik(e,t,n){return e.context=new Ek(e.indented,t,n,null,e.context)}function Vk(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}qk.isBase=!0;const Ck={startState:function(e){return{tokenize:[qk],context:new Ek(-e,0,"top",!1),indented:0,startOfLine:!0,lastToken:null}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0,"statement"!=n.type||Uk(t.lastToken,!0)||(Vk(t),n=t.context)),e.eatSpace())return null;_k=null;var r=t.tokenize[t.tokenize.length-1](e,t);if("comment"==r)return r;if(null==n.align&&(n.align=!0),";"!=_k&&":"!=_k||"statement"!=n.type)if("->"==_k&&"statement"==n.type&&"}"==n.prev.type)Vk(t),t.context.align=!1;else if("{"==_k)Ik(t,e.column(),"}");else if("["==_k)Ik(t,e.column(),"]");else if("("==_k)Ik(t,e.column(),")");else if("}"==_k){for(;"statement"==n.type;)n=Vk(t);for("}"==n.type&&(n=Vk(t));"statement"==n.type;)n=Vk(t)}else _k==n.type?Vk(t):("}"==n.type||"top"==n.type||"statement"==n.type&&"newstatement"==_k)&&Ik(t,e.column(),"statement");else Vk(t);return t.startOfLine=!1,t.lastToken=_k||r,r},indent:function(e,t,n){if(!e.tokenize[e.tokenize.length-1].isBase)return null;var r=t&&t.charAt(0),i=e.context;"statement"!=i.type||Uk(e.lastToken,!0)||(i=i.prev);var a=r==i.type;return"statement"==i.type?i.indented+("{"==r?0:n.unit):i.align?i.column+(a?0:1):i.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""']}}};var Ak=Object.freeze({__proto__:null,groovy:Ck});function Gk(e,t,n){return t(n),n(e,t)}var jk=/[a-z_]/,Lk=/[A-Z]/,Nk=/\d/,Dk=/[0-9A-Fa-f]/,Mk=/[0-7]/,Fk=/[a-z_A-Z0-9'\xa1-\uffff]/,Bk=/[-!#$%&*+.\/<=>?@\\^|~:]/,Hk=/[(),;[\]`{}]/,Kk=/[ \t\v\f]/;function Jk(e,t){if(e.eatWhile(Kk))return null;var n=e.next();if(Hk.test(n)){if("{"==n&&e.eat("-")){var r="comment";return e.eat("#")&&(r="meta"),Gk(e,t,ey(r,1))}return null}if("'"==n)return e.eat("\\"),e.next(),e.eat("'")?"string":"error";if('"'==n)return Gk(e,t,ty);if(Lk.test(n))return e.eatWhile(Fk),e.eat(".")?"qualifier":"type";if(jk.test(n))return e.eatWhile(Fk),"variable";if(Nk.test(n)){if("0"==n){if(e.eat(/[xX]/))return e.eatWhile(Dk),"integer";if(e.eat(/[oO]/))return e.eatWhile(Mk),"number"}e.eatWhile(Nk);r="number";return e.match(/^\.\d+/)&&(r="number"),e.eat(/[eE]/)&&(r="number",e.eat(/[-+]/),e.eatWhile(Nk)),r}return"."==n&&e.eat(".")?"keyword":Bk.test(n)?"-"==n&&e.eat(/-/)&&(e.eatWhile(/-/),!e.eat(Bk))?(e.skipToEnd(),"comment"):(e.eatWhile(Bk),"variable"):"error"}function ey(e,t){return 0==t?Jk:function(n,r){for(var i=t;!n.eol();){var a=n.next();if("{"==a&&n.eat("-"))++i;else if("-"==a&&n.eat("}")&&0==--i)return r(Jk),e}return r(ey(e,i)),e}}function ty(e,t){for(;!e.eol();){var n=e.next();if('"'==n)return t(Jk),"string";if("\\"==n){if(e.eol()||e.eat(Kk))return t(ny),"string";e.eat("&")||e.next()}}return t(Jk),"error"}function ny(e,t){return e.eat("\\")?Gk(e,t,ty):(e.next(),t(Jk),"error")}var ry=function(){var e={};function t(t){return function(){for(var n=0;n","@","~","=>"),t("builtin")("!!","$!","$","&&","+","++","-",".","/","/=","<","<*","<=","<$>","<*>","=<<","==",">",">=",">>",">>=","^","^^","||","*","*>","**"),t("builtin")("Applicative","Bool","Bounded","Char","Double","EQ","Either","Enum","Eq","False","FilePath","Float","Floating","Fractional","Functor","GT","IO","IOError","Int","Integer","Integral","Just","LT","Left","Maybe","Monad","Nothing","Num","Ord","Ordering","Rational","Read","ReadS","Real","RealFloat","RealFrac","Right","Show","ShowS","String","True"),t("builtin")("abs","acos","acosh","all","and","any","appendFile","asTypeOf","asin","asinh","atan","atan2","atanh","break","catch","ceiling","compare","concat","concatMap","const","cos","cosh","curry","cycle","decodeFloat","div","divMod","drop","dropWhile","either","elem","encodeFloat","enumFrom","enumFromThen","enumFromThenTo","enumFromTo","error","even","exp","exponent","fail","filter","flip","floatDigits","floatRadix","floatRange","floor","fmap","foldl","foldl1","foldr","foldr1","fromEnum","fromInteger","fromIntegral","fromRational","fst","gcd","getChar","getContents","getLine","head","id","init","interact","ioError","isDenormalized","isIEEE","isInfinite","isNaN","isNegativeZero","iterate","last","lcm","length","lex","lines","log","logBase","lookup","map","mapM","mapM_","max","maxBound","maximum","maybe","min","minBound","minimum","mod","negate","not","notElem","null","odd","or","otherwise","pi","pred","print","product","properFraction","pure","putChar","putStr","putStrLn","quot","quotRem","read","readFile","readIO","readList","readLn","readParen","reads","readsPrec","realToFrac","recip","rem","repeat","replicate","return","reverse","round","scaleFloat","scanl","scanl1","scanr","scanr1","seq","sequence","sequence_","show","showChar","showList","showParen","showString","shows","showsPrec","significand","signum","sin","sinh","snd","span","splitAt","sqrt","subtract","succ","sum","tail","take","takeWhile","tan","tanh","toEnum","toInteger","toRational","truncate","uncurry","undefined","unlines","until","unwords","unzip","unzip3","userError","words","writeFile","zip","zip3","zipWith","zipWith3"),e}();const iy={startState:function(){return{f:Jk}},copyState:function(e){return{f:e.f}},token:function(e,t){var n=t.f(e,(function(e){t.f=e})),r=e.current();return ry.hasOwnProperty(r)?ry[r]:n},languageData:{commentTokens:{line:"--",block:{open:"{-",close:"-}"}}}};var ay=Object.freeze({__proto__:null,haskell:iy});function oy(e){return{type:e,style:"keyword"}}var sy,Oy=oy("keyword a"),ly=oy("keyword b"),cy=oy("keyword c"),uy=oy("operator"),hy={type:"atom",style:"atom"},dy={type:"attribute",style:"attribute"},py=oy("typedef"),fy={if:Oy,while:Oy,else:ly,do:ly,try:ly,return:cy,break:cy,continue:cy,new:cy,throw:cy,var:oy("var"),inline:dy,static:dy,using:oy("import"),public:dy,private:dy,cast:oy("cast"),import:oy("import"),macro:oy("macro"),function:oy("function"),catch:oy("catch"),untyped:oy("untyped"),callback:oy("cb"),for:oy("for"),switch:oy("switch"),case:oy("case"),default:oy("default"),in:uy,never:oy("property_access"),trace:oy("trace"),class:py,abstract:py,enum:py,interface:py,typedef:py,extends:py,implements:py,dynamic:py,true:hy,false:hy,null:hy},my=/[+\-*&%=<>!?|]/;function gy(e,t,n){return t.tokenize=n,n(e,t)}function Qy(e,t){for(var n,r=!1;null!=(n=e.next());){if(n==t&&!r)return!0;r=!r&&"\\"==n}}function $y(e,t,n){return py=e,sy=n,t}function by(e,t){var n=e.next();if('"'==n||"'"==n)return gy(e,t,function(e){return function(t,n){return Qy(t,e)&&(n.tokenize=by),$y("string","string")}}(n));if(/[\[\]{}\(\),;\:\.]/.test(n))return $y(n);if("0"==n&&e.eat(/x/i))return e.eatWhile(/[\da-f]/i),$y("number","number");if(/\d/.test(n)||"-"==n&&e.eat(/\d/))return e.match(/^\d*(?:\.\d*(?!\.))?(?:[eE][+\-]?\d+)?/),$y("number","number");if(t.reAllowed&&"~"==n&&e.eat(/\//))return Qy(e,"/"),e.eatWhile(/[gimsu]/),$y("regexp","string.special");if("/"==n)return e.eat("*")?gy(e,t,xy):e.eat("/")?(e.skipToEnd(),$y("comment","comment")):(e.eatWhile(my),$y("operator",null,e.current()));if("#"==n)return e.skipToEnd(),$y("conditional","meta");if("@"==n)return e.eat(/:/),e.eatWhile(/[\w_]/),$y("metadata","meta");if(my.test(n))return e.eatWhile(my),$y("operator",null,e.current());if(/[A-Z]/.test(n))return e.eatWhile(/[\w_<>]/),$y("type","type",r=e.current());e.eatWhile(/[\w_]/);var r=e.current(),i=fy.propertyIsEnumerable(r)&&fy[r];return i&&t.kwAllowed?$y(i.type,i.style,r):$y("variable","variable",r)}function xy(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=by;break}r="*"==n}return $y("comment","comment")}var wy={atom:!0,number:!0,variable:!0,string:!0,regexp:!0};function ky(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.prev=i,this.info=a,null!=r&&(this.align=r)}function yy(e,t){for(var n=e.localVars;n;n=n.next)if(n.name==t)return!0}function Py(e,t){if(/[a-z]/.test(t.charAt(0)))return!1;for(var n=e.importedtypes.length,r=0;r=0;e--)Sy.cc.push(arguments[e])}function Xy(){return _y.apply(null,arguments),!0}function Ty(e,t){for(var n=t;n;n=n.next)if(n.name==e)return!0;return!1}function Ry(e){var t=Sy.state;if(t.context){if(Sy.marked="def",Ty(e,t.localVars))return;t.localVars={name:e,next:t.localVars}}else if(t.globalVars){if(Ty(e,t.globalVars))return;t.globalVars={name:e,next:t.globalVars}}}var Wy={name:"this",next:null};function qy(){Sy.state.context||(Sy.state.localVars=Wy),Sy.state.context={prev:Sy.state.context,vars:Sy.state.localVars}}function zy(){Sy.state.localVars=Sy.state.context.vars,Sy.state.context=Sy.state.context.prev}function Yy(e,t){var n=function(){var n=Sy.state;n.lexical=new ky(n.indented,Sy.stream.column(),e,null,n.lexical,t)};return n.lex=!0,n}function Zy(){var e=Sy.state;e.lexical.prev&&(")"==e.lexical.type&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}function Uy(e){return function t(n){return n==e?Xy():";"==e?_y():Xy(t)}}function Ey(e){return"@"==e?Xy(Gy):"var"==e?Xy(Yy("vardef"),Ky,Uy(";"),Zy):"keyword a"==e?Xy(Yy("form"),Iy,Ey,Zy):"keyword b"==e?Xy(Yy("form"),Ey,Zy):"{"==e?Xy(Yy("}"),qy,Hy,Zy,zy):";"==e?Xy():"attribute"==e?Xy(Ay):"function"==e?Xy(nP):"for"==e?Xy(Yy("form"),Uy("("),Yy(")"),eP,Uy(")"),Zy,Ey,Zy):"variable"==e?Xy(Yy("stat"),Dy):"switch"==e?Xy(Yy("form"),Iy,Yy("}","switch"),Uy("{"),Hy,Zy,Zy):"case"==e?Xy(Iy,Uy(":")):"default"==e?Xy(Uy(":")):"catch"==e?Xy(Yy("form"),qy,Uy("("),oP,Uy(")"),Ey,Zy,zy):"import"==e?Xy(Ly,Uy(";")):"typedef"==e?Xy(Ny):_y(Yy("stat"),Iy,Uy(";"),Zy)}function Iy(e){return wy.hasOwnProperty(e)||"type"==e?Xy(Cy):"function"==e?Xy(nP):"keyword c"==e?Xy(Vy):"("==e?Xy(Yy(")"),Vy,Uy(")"),Zy,Cy):"operator"==e?Xy(Iy):"["==e?Xy(Yy("]"),By(Vy,"]"),Zy,Cy):"{"==e?Xy(Yy("}"),By(Fy,"}"),Zy,Cy):Xy()}function Vy(e){return e.match(/[;\}\)\],]/)?_y():_y(Iy)}function Cy(e,t){return"operator"==e&&/\+\+|--/.test(t)?Xy(Cy):"operator"==e||":"==e?Xy(Iy):";"!=e?"("==e?Xy(Yy(")"),By(Iy,")"),Zy,Cy):"."==e?Xy(My,Cy):"["==e?Xy(Yy("]"),Iy,Uy("]"),Zy,Cy):void 0:void 0}function Ay(e){return"attribute"==e?Xy(Ay):"function"==e?Xy(nP):"var"==e?Xy(Ky):void 0}function Gy(e){return":"==e||"variable"==e?Xy(Gy):"("==e?Xy(Yy(")"),By(jy,")"),Zy,Ey):void 0}function jy(e){if("variable"==e)return Xy()}function Ly(e,t){return"variable"==e&&/[A-Z]/.test(t.charAt(0))?(vy(t),Xy()):"variable"==e||"property"==e||"."==e||"*"==t?Xy(Ly):void 0}function Ny(e,t){return"variable"==e&&/[A-Z]/.test(t.charAt(0))?(vy(t),Xy()):"type"==e&&/[A-Z]/.test(t.charAt(0))?Xy():void 0}function Dy(e){return":"==e?Xy(Zy,Ey):_y(Cy,Uy(";"),Zy)}function My(e){if("variable"==e)return Sy.marked="property",Xy()}function Fy(e){if("variable"==e&&(Sy.marked="property"),wy.hasOwnProperty(e))return Xy(Uy(":"),Iy)}function By(e,t){function n(r){return","==r?Xy(e,n):r==t?Xy():Xy(Uy(t))}return function(r){return r==t?Xy():_y(e,n)}}function Hy(e){return"}"==e?Xy():_y(Ey,Hy)}function Ky(e,t){return"variable"==e?(Ry(t),Xy(rP,Jy)):Xy()}function Jy(e,t){return"="==t?Xy(Iy,Jy):","==e?Xy(Ky):void 0}function eP(e,t){return"variable"==e?(Ry(t),Xy(tP,Iy)):_y()}function tP(e,t){if("in"==t)return Xy()}function nP(e,t){return"variable"==e||"type"==e?(Ry(t),Xy(nP)):"new"==t?Xy(nP):"("==e?Xy(Yy(")"),qy,By(oP,")"),Zy,rP,Ey,zy):void 0}function rP(e){if(":"==e)return Xy(iP)}function iP(e){return"type"==e||"variable"==e?Xy():"{"==e?Xy(Yy("}"),By(aP,"}"),Zy):void 0}function aP(e){if("variable"==e)return Xy(rP)}function oP(e,t){if("variable"==e)return Ry(t),Xy(rP)}zy.lex=!0,Zy.lex=!0;const sP={startState:function(e){return{tokenize:by,reAllowed:!0,kwAllowed:!0,cc:[],lexical:new ky(-e,0,"block",!1),importedtypes:["Int","Float","String","Void","Std","Bool","Dynamic","Array"],context:null,indented:0}},token:function(e,t){if(e.sol()&&(t.lexical.hasOwnProperty("align")||(t.lexical.align=!1),t.indented=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);return"comment"==py?n:(t.reAllowed=!("operator"!=py&&"keyword c"!=py&&!py.match(/^[\[{}\(,;:]$/)),t.kwAllowed="."!=py,function(e,t,n,r,i){var a=e.cc;for(Sy.state=e,Sy.stream=i,Sy.marked=null,Sy.cc=a,e.lexical.hasOwnProperty("align")||(e.lexical.align=!0);;)if((a.length?a.pop():Ey)(n,r)){for(;a.length&&a[a.length-1].lex;)a.pop()();return Sy.marked?Sy.marked:"variable"==n&&yy(e,r)?"variableName.local":"variable"==n&&Py(e,r)?"variableName.special":t}}(t,n,py,sy,e))},indent:function(e,t,n){if(e.tokenize!=by)return 0;var r=t&&t.charAt(0),i=e.lexical;"stat"==i.type&&"}"==r&&(i=i.prev);var a=i.type,o=r==a;return"vardef"==a?i.indented+4:"form"==a&&"{"==r?i.indented:"stat"==a||"form"==a?i.indented+n.unit:"switch"!=i.info||o?i.align?i.column+(o?0:1):i.indented+(o?0:n.unit):i.indented+(/^(?:case|default)\b/.test(t)?n.unit:2*n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var OP=Object.freeze({__proto__:null,haxe:sP,hxml:{startState:function(){return{define:!1,inString:!1}},token:function(e,t){var n=e.peek(),r=e.sol();if("#"==n)return e.skipToEnd(),"comment";if(r&&"-"==n){var i="variable-2";return e.eat(/-/),"-"==e.peek()&&(e.eat(/-/),i="keyword a"),"D"==e.peek()&&(e.eat(/[D]/),i="keyword c",t.define=!0),e.eatWhile(/[A-Z]/i),i}n=e.peek();return 0==t.inString&&"'"==n&&(t.inString=!0,e.next()),1==t.inString?(e.skipTo("'")||e.skipToEnd(),"'"==e.peek()&&(e.next(),t.inString=!1),"string"):(e.next(),null)},languageData:{commentTokens:{line:"#"}}}});function lP(e,t){return e.skipToEnd(),t.cur=fP,"error"}function cP(e,t){return e.match(/^HTTP\/\d\.\d/)?(t.cur=uP,"keyword"):e.match(/^[A-Z]+/)&&/[ \t]/.test(e.peek())?(t.cur=dP,"keyword"):lP(e,t)}function uP(e,t){var n=e.match(/^\d+/);if(!n)return lP(e,t);t.cur=hP;var r=Number(n[0]);return r>=100&&r<400?"atom":"error"}function hP(e,t){return e.skipToEnd(),t.cur=fP,null}function dP(e,t){return e.eatWhile(/\S/),t.cur=pP,"string.special"}function pP(e,t){return e.match(/^HTTP\/\d\.\d$/)?(t.cur=fP,"keyword"):lP(e,t)}function fP(e){return e.sol()&&!e.eat(/[ \t]/)?e.match(/^.*?:/)?"atom":(e.skipToEnd(),"error"):(e.skipToEnd(),"string")}function mP(e){return e.skipToEnd(),null}const gP={token:function(e,t){var n=t.cur;return n!=fP&&n!=mP&&e.eatSpace()?null:n(e,t)},blankLine:function(e){e.cur=mP},startState:function(){return{cur:cP}}};var QP=Object.freeze({__proto__:null,http:gP});function $P(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var bP=["a_correlate","abs","acos","adapt_hist_equal","alog","alog2","alog10","amoeba","annotate","app_user_dir","app_user_dir_query","arg_present","array_equal","array_indices","arrow","ascii_template","asin","assoc","atan","axis","axis","bandpass_filter","bandreject_filter","barplot","bar_plot","beseli","beselj","beselk","besely","beta","biginteger","bilinear","bin_date","binary_template","bindgen","binomial","bit_ffs","bit_population","blas_axpy","blk_con","boolarr","boolean","boxplot","box_cursor","breakpoint","broyden","bubbleplot","butterworth","bytarr","byte","byteorder","bytscl","c_correlate","calendar","caldat","call_external","call_function","call_method","call_procedure","canny","catch","cd","cdf","ceil","chebyshev","check_math","chisqr_cvf","chisqr_pdf","choldc","cholsol","cindgen","cir_3pnt","clipboard","close","clust_wts","cluster","cluster_tree","cmyk_convert","code_coverage","color_convert","color_exchange","color_quan","color_range_map","colorbar","colorize_sample","colormap_applicable","colormap_gradient","colormap_rotation","colortable","comfit","command_line_args","common","compile_opt","complex","complexarr","complexround","compute_mesh_normals","cond","congrid","conj","constrained_min","contour","contour","convert_coord","convol","convol_fft","coord2to3","copy_lun","correlate","cos","cosh","cpu","cramer","createboxplotdata","create_cursor","create_struct","create_view","crossp","crvlength","ct_luminance","cti_test","cursor","curvefit","cv_coord","cvttobm","cw_animate","cw_animate_getp","cw_animate_load","cw_animate_run","cw_arcball","cw_bgroup","cw_clr_index","cw_colorsel","cw_defroi","cw_field","cw_filesel","cw_form","cw_fslider","cw_light_editor","cw_light_editor_get","cw_light_editor_set","cw_orient","cw_palette_editor","cw_palette_editor_get","cw_palette_editor_set","cw_pdmenu","cw_rgbslider","cw_tmpl","cw_zoom","db_exists","dblarr","dcindgen","dcomplex","dcomplexarr","define_key","define_msgblk","define_msgblk_from_file","defroi","defsysv","delvar","dendro_plot","dendrogram","deriv","derivsig","determ","device","dfpmin","diag_matrix","dialog_dbconnect","dialog_message","dialog_pickfile","dialog_printersetup","dialog_printjob","dialog_read_image","dialog_write_image","dictionary","digital_filter","dilate","dindgen","dissolve","dist","distance_measure","dlm_load","dlm_register","doc_library","double","draw_roi","edge_dog","efont","eigenql","eigenvec","ellipse","elmhes","emboss","empty","enable_sysrtn","eof","eos","erase","erf","erfc","erfcx","erode","errorplot","errplot","estimator_filter","execute","exit","exp","expand","expand_path","expint","extract","extract_slice","f_cvf","f_pdf","factorial","fft","file_basename","file_chmod","file_copy","file_delete","file_dirname","file_expand_path","file_gunzip","file_gzip","file_info","file_lines","file_link","file_mkdir","file_move","file_poll_input","file_readlink","file_same","file_search","file_tar","file_test","file_untar","file_unzip","file_which","file_zip","filepath","findgen","finite","fix","flick","float","floor","flow3","fltarr","flush","format_axis_values","forward_function","free_lun","fstat","fulstr","funct","function","fv_test","fx_root","fz_roots","gamma","gamma_ct","gauss_cvf","gauss_pdf","gauss_smooth","gauss2dfit","gaussfit","gaussian_function","gaussint","get_drive_list","get_dxf_objects","get_kbrd","get_login_info","get_lun","get_screen_size","getenv","getwindows","greg2jul","grib","grid_input","grid_tps","grid3","griddata","gs_iter","h_eq_ct","h_eq_int","hanning","hash","hdf","hdf5","heap_free","heap_gc","heap_nosave","heap_refcount","heap_save","help","hilbert","hist_2d","hist_equal","histogram","hls","hough","hqr","hsv","i18n_multibytetoutf8","i18n_multibytetowidechar","i18n_utf8tomultibyte","i18n_widechartomultibyte","ibeta","icontour","iconvertcoord","idelete","identity","idl_base64","idl_container","idl_validname","idlexbr_assistant","idlitsys_createtool","idlunit","iellipse","igamma","igetcurrent","igetdata","igetid","igetproperty","iimage","image","image_cont","image_statistics","image_threshold","imaginary","imap","indgen","int_2d","int_3d","int_tabulated","intarr","interpol","interpolate","interval_volume","invert","ioctl","iopen","ir_filter","iplot","ipolygon","ipolyline","iputdata","iregister","ireset","iresolve","irotate","isa","isave","iscale","isetcurrent","isetproperty","ishft","isocontour","isosurface","isurface","itext","itranslate","ivector","ivolume","izoom","journal","json_parse","json_serialize","jul2greg","julday","keyword_set","krig2d","kurtosis","kw_test","l64indgen","la_choldc","la_cholmprove","la_cholsol","la_determ","la_eigenproblem","la_eigenql","la_eigenvec","la_elmhes","la_gm_linear_model","la_hqr","la_invert","la_least_square_equality","la_least_squares","la_linear_equation","la_ludc","la_lumprove","la_lusol","la_svd","la_tridc","la_trimprove","la_triql","la_trired","la_trisol","label_date","label_region","ladfit","laguerre","lambda","lambdap","lambertw","laplacian","least_squares_filter","leefilt","legend","legendre","linbcg","lindgen","linfit","linkimage","list","ll_arc_distance","lmfit","lmgr","lngamma","lnp_test","loadct","locale_get","logical_and","logical_or","logical_true","lon64arr","lonarr","long","long64","lsode","lu_complex","ludc","lumprove","lusol","m_correlate","machar","make_array","make_dll","make_rt","map","mapcontinents","mapgrid","map_2points","map_continents","map_grid","map_image","map_patch","map_proj_forward","map_proj_image","map_proj_info","map_proj_init","map_proj_inverse","map_set","matrix_multiply","matrix_power","max","md_test","mean","meanabsdev","mean_filter","median","memory","mesh_clip","mesh_decimate","mesh_issolid","mesh_merge","mesh_numtriangles","mesh_obj","mesh_smooth","mesh_surfacearea","mesh_validate","mesh_volume","message","min","min_curve_surf","mk_html_help","modifyct","moment","morph_close","morph_distance","morph_gradient","morph_hitormiss","morph_open","morph_thin","morph_tophat","multi","n_elements","n_params","n_tags","ncdf","newton","noise_hurl","noise_pick","noise_scatter","noise_slur","norm","obj_class","obj_destroy","obj_hasmethod","obj_isa","obj_new","obj_valid","objarr","on_error","on_ioerror","online_help","openr","openu","openw","oplot","oploterr","orderedhash","p_correlate","parse_url","particle_trace","path_cache","path_sep","pcomp","plot","plot3d","plot","plot_3dbox","plot_field","ploterr","plots","polar_contour","polar_surface","polyfill","polyshade","pnt_line","point_lun","polarplot","poly","poly_2d","poly_area","poly_fit","polyfillv","polygon","polyline","polywarp","popd","powell","pref_commit","pref_get","pref_set","prewitt","primes","print","printf","printd","pro","product","profile","profiler","profiles","project_vol","ps_show_fonts","psafm","pseudo","ptr_free","ptr_new","ptr_valid","ptrarr","pushd","qgrid3","qhull","qromb","qromo","qsimp","query_*","query_ascii","query_bmp","query_csv","query_dicom","query_gif","query_image","query_jpeg","query_jpeg2000","query_mrsid","query_pict","query_png","query_ppm","query_srf","query_tiff","query_video","query_wav","r_correlate","r_test","radon","randomn","randomu","ranks","rdpix","read","readf","read_ascii","read_binary","read_bmp","read_csv","read_dicom","read_gif","read_image","read_interfile","read_jpeg","read_jpeg2000","read_mrsid","read_pict","read_png","read_ppm","read_spr","read_srf","read_sylk","read_tiff","read_video","read_wav","read_wave","read_x11_bitmap","read_xwd","reads","readu","real_part","rebin","recall_commands","recon3","reduce_colors","reform","region_grow","register_cursor","regress","replicate","replicate_inplace","resolve_all","resolve_routine","restore","retall","return","reverse","rk4","roberts","rot","rotate","round","routine_filepath","routine_info","rs_test","s_test","save","savgol","scale3","scale3d","scatterplot","scatterplot3d","scope_level","scope_traceback","scope_varfetch","scope_varname","search2d","search3d","sem_create","sem_delete","sem_lock","sem_release","set_plot","set_shading","setenv","sfit","shade_surf","shade_surf_irr","shade_volume","shift","shift_diff","shmdebug","shmmap","shmunmap","shmvar","show3","showfont","signum","simplex","sin","sindgen","sinh","size","skewness","skip_lun","slicer3","slide_image","smooth","sobel","socket","sort","spawn","sph_4pnt","sph_scat","spher_harm","spl_init","spl_interp","spline","spline_p","sprsab","sprsax","sprsin","sprstp","sqrt","standardize","stddev","stop","strarr","strcmp","strcompress","streamline","streamline","stregex","stretch","string","strjoin","strlen","strlowcase","strmatch","strmessage","strmid","strpos","strput","strsplit","strtrim","struct_assign","struct_hide","strupcase","surface","surface","surfr","svdc","svdfit","svsol","swap_endian","swap_endian_inplace","symbol","systime","t_cvf","t_pdf","t3d","tag_names","tan","tanh","tek_color","temporary","terminal_size","tetra_clip","tetra_surface","tetra_volume","text","thin","thread","threed","tic","time_test2","timegen","timer","timestamp","timestamptovalues","tm_test","toc","total","trace","transpose","tri_surf","triangulate","trigrid","triql","trired","trisol","truncate_lun","ts_coef","ts_diff","ts_fcast","ts_smooth","tv","tvcrs","tvlct","tvrd","tvscl","typename","uindgen","uint","uintarr","ul64indgen","ulindgen","ulon64arr","ulonarr","ulong","ulong64","uniq","unsharp_mask","usersym","value_locate","variance","vector","vector_field","vel","velovect","vert_t3d","voigt","volume","voronoi","voxel_proj","wait","warp_tri","watershed","wdelete","wf_draw","where","widget_base","widget_button","widget_combobox","widget_control","widget_displaycontextmenu","widget_draw","widget_droplist","widget_event","widget_info","widget_label","widget_list","widget_propertysheet","widget_slider","widget_tab","widget_table","widget_text","widget_tree","widget_tree_move","widget_window","wiener_filter","window","window","write_bmp","write_csv","write_gif","write_image","write_jpeg","write_jpeg2000","write_nrif","write_pict","write_png","write_ppm","write_spr","write_srf","write_sylk","write_tiff","write_video","write_wav","write_wave","writeu","wset","wshow","wtn","wv_applet","wv_cwt","wv_cw_wavelet","wv_denoise","wv_dwt","wv_fn_coiflet","wv_fn_daubechies","wv_fn_gaussian","wv_fn_haar","wv_fn_morlet","wv_fn_paul","wv_fn_symlet","wv_import_data","wv_import_wavelet","wv_plot3d_wps","wv_plot_multires","wv_pwt","wv_tool_denoise","xbm_edit","xdisplayfile","xdxf","xfont","xinteranimate","xloadct","xmanager","xmng_tmpl","xmtool","xobjview","xobjview_rotate","xobjview_write_image","xpalette","xpcolor","xplot3d","xregistered","xroi","xsq_test","xsurface","xvaredit","xvolume","xvolume_rotate","xvolume_write_image","xyouts","zlib_compress","zlib_uncompress","zoom","zoom_24"],xP=$P(bP),wP=["begin","end","endcase","endfor","endwhile","endif","endrep","endforeach","break","case","continue","for","foreach","goto","if","then","else","repeat","until","switch","while","do","pro","function"],kP=$P(wP),yP=new RegExp("^[_a-z¡-￿][_a-z0-9¡-￿]*","i"),PP=/[+\-*&=<>\/@#~$]/,vP=new RegExp("(and|or|eq|lt|le|gt|ge|ne|not)","i");const SP={token:function(e){return function(e){if(e.eatSpace())return null;if(e.match(";"))return e.skipToEnd(),"comment";if(e.match(/^[0-9\.+-]/,!1)){if(e.match(/^[+-]?0x[0-9a-fA-F]+/))return"number";if(e.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?/))return"number";if(e.match(/^[+-]?\d+([EeDd][+-]?\d+)?/))return"number"}return e.match(/^"([^"]|(""))*"/)||e.match(/^'([^']|(''))*'/)?"string":e.match(kP)?"keyword":e.match(xP)?"builtin":e.match(yP)?"variable":e.match(PP)||e.match(vP)?"operator":(e.next(),null)}(e)},languageData:{autocomplete:bP.concat(wP)}};var _P=Object.freeze({__proto__:null,idl:SP});function XP(e){var t,n,r=e.statementIndent,i=e.jsonld,a=e.json||i,o=e.typescript,s=e.wordCharacters||/[\w$\xa1-\uffff]/,O=function(){function e(e){return{type:e,style:"keyword"}}var t=e("keyword a"),n=e("keyword b"),r=e("keyword c"),i=e("keyword d"),a=e("operator"),o={type:"atom",style:"atom"};return{if:e("if"),while:t,with:t,else:n,do:n,try:n,finally:n,return:i,break:i,continue:i,new:e("new"),delete:r,void:r,throw:r,debugger:e("debugger"),var:e("var"),const:e("var"),let:e("var"),function:e("function"),catch:e("catch"),for:e("for"),switch:e("switch"),case:e("case"),default:e("default"),in:a,typeof:a,instanceof:a,true:o,false:o,null:o,undefined:o,NaN:o,Infinity:o,this:e("this"),class:e("class"),super:e("atom"),yield:r,export:e("export"),import:e("import"),extends:r,await:r}}(),l=/[+\-*&%=<>!?|~^@]/,c=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function u(e,r,i){return t=e,n=i,r}function h(e,t){var n=e.next();if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){var r,a=!1;if(i&&"@"==t.peek()&&t.match(c))return n.tokenize=h,u("jsonld-keyword","meta");for(;null!=(r=t.next())&&(r!=e||a);)a=!a&&"\\"==r;return a||(n.tokenize=h),u("string","string")}}(n),t.tokenize(e,t);if("."==n&&e.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return u("number","number");if("."==n&&e.match(".."))return u("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(n))return u(n);if("="==n&&e.eat(">"))return u("=>","operator");if("0"==n&&e.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return u("number","number");if(/\d/.test(n))return e.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),u("number","number");if("/"==n)return e.eat("*")?(t.tokenize=d,d(e,t)):e.eat("/")?(e.skipToEnd(),u("comment","comment")):function(e,t,n){return t.tokenize==h&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(t.lastType)||"quasi"==t.lastType&&/\{\s*$/.test(e.string.slice(0,e.pos-(n||0)))}(e,t,1)?(function(e){for(var t,n=!1,r=!1;null!=(t=e.next());){if(!n){if("/"==t&&!r)return;"["==t?r=!0:r&&"]"==t&&(r=!1)}n=!n&&"\\"==t}}(e),e.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),u("regexp","string.special")):(e.eat("="),u("operator","operator",e.current()));if("`"==n)return t.tokenize=p,p(e,t);if("#"==n&&"!"==e.peek())return e.skipToEnd(),u("meta","meta");if("#"==n&&e.eatWhile(s))return u("variable","property");if("<"==n&&e.match("!--")||"-"==n&&e.match("->")&&!/\S/.test(e.string.slice(0,e.start)))return e.skipToEnd(),u("comment","comment");if(l.test(n))return">"==n&&t.lexical&&">"==t.lexical.type||(e.eat("=")?"!"!=n&&"="!=n||e.eat("="):/[<>*+\-|&?]/.test(n)&&(e.eat(n),">"==n&&e.eat(n))),"?"==n&&e.eat(".")?u("."):u("operator","operator",e.current());if(s.test(n)){e.eatWhile(s);var r=e.current();if("."!=t.lastType){if(O.propertyIsEnumerable(r)){var a=O[r];return u(a.type,a.style,r)}if("async"==r&&e.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return u("async","keyword",r)}return u("variable","variable",r)}}function d(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=h;break}r="*"==n}return u("comment","comment")}function p(e,t){for(var n,r=!1;null!=(n=e.next());){if(!r&&("`"==n||"$"==n&&e.eat("{"))){t.tokenize=h;break}r=!r&&"\\"==n}return u("quasi","string.special",e.current())}function f(e,t){t.fatArrowAt&&(t.fatArrowAt=null);var n=e.string.indexOf("=>",e.start);if(!(n<0)){if(o){var r=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(e.string.slice(e.start,n));r&&(n=r.index)}for(var i=0,a=!1,O=n-1;O>=0;--O){var l=e.string.charAt(O),c="([{}])".indexOf(l);if(c>=0&&c<3){if(!i){++O;break}if(0==--i){"("==l&&(a=!0);break}}else if(c>=3&&c<6)++i;else if(s.test(l))a=!0;else if(/["'\/`]/.test(l))for(;;--O){if(0==O)return;if(e.string.charAt(O-1)==l&&"\\"!=e.string.charAt(O-2)){O--;break}}else if(a&&!i){++O;break}}a&&!i&&(t.fatArrowAt=O)}}var m={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function g(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.prev=i,this.info=a,null!=r&&(this.align=r)}function Q(e,t){for(var n=e.localVars;n;n=n.next)if(n.name==t)return!0;for(var r=e.context;r;r=r.prev)for(n=r.vars;n;n=n.next)if(n.name==t)return!0}var $={state:null,column:null,marked:null,cc:null};function b(){for(var e=arguments.length-1;e>=0;e--)$.cc.push(arguments[e])}function x(){return b.apply(null,arguments),!0}function w(e,t){for(var n=t;n;n=n.next)if(n.name==e)return!0;return!1}function k(t){var n=$.state;if($.marked="def",n.context)if("var"==n.lexical.info&&n.context&&n.context.block){var r=y(t,n.context);if(null!=r)return void(n.context=r)}else if(!w(t,n.localVars))return void(n.localVars=new S(t,n.localVars));e.globalVars&&!w(t,n.globalVars)&&(n.globalVars=new S(t,n.globalVars))}function y(e,t){if(t){if(t.block){var n=y(e,t.prev);return n?n==t.prev?t:new v(n,t.vars,!0):null}return w(e,t.vars)?t:new v(t.prev,new S(e,t.vars),!1)}return null}function P(e){return"public"==e||"private"==e||"protected"==e||"abstract"==e||"readonly"==e}function v(e,t,n){this.prev=e,this.vars=t,this.block=n}function S(e,t){this.name=e,this.next=t}var _=new S("this",new S("arguments",null));function X(){$.state.context=new v($.state.context,$.state.localVars,!1),$.state.localVars=_}function T(){$.state.context=new v($.state.context,$.state.localVars,!0),$.state.localVars=null}function R(){$.state.localVars=$.state.context.vars,$.state.context=$.state.context.prev}function W(e,t){var n=function(){var n=$.state,r=n.indented;if("stat"==n.lexical.type)r=n.lexical.indented;else for(var i=n.lexical;i&&")"==i.type&&i.align;i=i.prev)r=i.indented;n.lexical=new g(r,$.stream.column(),e,null,n.lexical,t)};return n.lex=!0,n}function q(){var e=$.state;e.lexical.prev&&(")"==e.lexical.type&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}function z(e){return function t(n){return n==e?x():";"==e||"}"==n||")"==n||"]"==n?b():x(t)}}function Y(e,t){return"var"==e?x(W("vardef",t),$e,z(";"),q):"keyword a"==e?x(W("form"),I,Y,q):"keyword b"==e?x(W("form"),Y,q):"keyword d"==e?$.stream.match(/^\s*$/,!1)?x():x(W("stat"),C,z(";"),q):"debugger"==e?x(z(";")):"{"==e?x(W("}"),T,re,q,R):";"==e?x():"if"==e?("else"==$.state.lexical.info&&$.state.cc[$.state.cc.length-1]==q&&$.state.cc.pop()(),x(W("form"),I,Y,q,Pe)):"function"==e?x(Xe):"for"==e?x(W("form"),T,ve,Y,R,q):"class"==e||o&&"interface"==t?($.marked="keyword",x(W("form","class"==e?e:t),ze,q)):"variable"==e?o&&"declare"==t?($.marked="keyword",x(Y)):o&&("module"==t||"enum"==t||"type"==t)&&$.stream.match(/^\s*\w/,!1)?($.marked="keyword","enum"==t?x(Ne):"type"==t?x(Re,z("operator"),Oe,z(";")):x(W("form"),be,z("{"),W("}"),re,q,q)):o&&"namespace"==t?($.marked="keyword",x(W("form"),U,Y,q)):o&&"abstract"==t?($.marked="keyword",x(Y)):x(W("stat"),B):"switch"==e?x(W("form"),I,z("{"),W("}","switch"),T,re,q,q,R):"case"==e?x(U,z(":")):"default"==e?x(z(":")):"catch"==e?x(W("form"),X,Z,Y,q,R):"export"==e?x(W("stat"),Ee,q):"import"==e?x(W("stat"),Ve,q):"async"==e?x(Y):"@"==t?x(U,Y):b(W("stat"),U,z(";"),q)}function Z(e){if("("==e)return x(We,z(")"))}function U(e,t){return V(e,t,!1)}function E(e,t){return V(e,t,!0)}function I(e){return"("!=e?b():x(W(")"),C,z(")"),q)}function V(e,t,n){if($.state.fatArrowAt==$.stream.start){var r=n?D:N;if("("==e)return x(X,W(")"),te(We,")"),q,z("=>"),r,R);if("variable"==e)return b(X,be,z("=>"),r,R)}var i=n?G:A;return m.hasOwnProperty(e)?x(i):"function"==e?x(Xe,i):"class"==e||o&&"interface"==t?($.marked="keyword",x(W("form"),qe,q)):"keyword c"==e||"async"==e?x(n?E:U):"("==e?x(W(")"),C,z(")"),q,i):"operator"==e||"spread"==e?x(n?E:U):"["==e?x(W("]"),Le,q,i):"{"==e?ne(K,"}",null,i):"quasi"==e?b(j,i):"new"==e?x(function(e){return function(t){return"."==t?x(e?F:M):"variable"==t&&o?x(me,e?G:A):b(e?E:U)}}(n)):x()}function C(e){return e.match(/[;\}\)\],]/)?b():b(U)}function A(e,t){return","==e?x(C):G(e,t,!1)}function G(e,t,n){var r=0==n?A:G,i=0==n?U:E;return"=>"==e?x(X,n?D:N,R):"operator"==e?/\+\+|--/.test(t)||o&&"!"==t?x(r):o&&"<"==t&&$.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?x(W(">"),te(Oe,">"),q,r):"?"==t?x(U,z(":"),i):x(i):"quasi"==e?b(j,r):";"!=e?"("==e?ne(E,")","call",r):"."==e?x(H,r):"["==e?x(W("]"),C,z("]"),q,r):o&&"as"==t?($.marked="keyword",x(Oe,r)):"regexp"==e?($.state.lastType=$.marked="operator",$.stream.backUp($.stream.pos-$.stream.start-1),x(i)):void 0:void 0}function j(e,t){return"quasi"!=e?b():"${"!=t.slice(t.length-2)?x(j):x(C,L)}function L(e){if("}"==e)return $.marked="string.special",$.state.tokenize=p,x(j)}function N(e){return f($.stream,$.state),b("{"==e?Y:U)}function D(e){return f($.stream,$.state),b("{"==e?Y:E)}function M(e,t){if("target"==t)return $.marked="keyword",x(A)}function F(e,t){if("target"==t)return $.marked="keyword",x(G)}function B(e){return":"==e?x(q,Y):b(A,z(";"),q)}function H(e){if("variable"==e)return $.marked="property",x()}function K(e,t){return"async"==e?($.marked="property",x(K)):"variable"==e||"keyword"==$.style?($.marked="property","get"==t||"set"==t?x(J):(o&&$.state.fatArrowAt==$.stream.start&&(n=$.stream.match(/^\s*:\s*/,!1))&&($.state.fatArrowAt=$.stream.pos+n[0].length),x(ee))):"number"==e||"string"==e?($.marked=i?"property":$.style+" property",x(ee)):"jsonld-keyword"==e?x(ee):o&&P(t)?($.marked="keyword",x(K)):"["==e?x(U,ie,z("]"),ee):"spread"==e?x(E,ee):"*"==t?($.marked="keyword",x(K)):":"==e?b(ee):void 0;var n}function J(e){return"variable"!=e?b(ee):($.marked="property",x(Xe))}function ee(e){return":"==e?x(E):"("==e?b(Xe):void 0}function te(e,t,n){function r(i,a){if(n?n.indexOf(i)>-1:","==i){var o=$.state.lexical;return"call"==o.info&&(o.pos=(o.pos||0)+1),x((function(n,r){return n==t||r==t?b():b(e)}),r)}return i==t||a==t?x():n&&n.indexOf(";")>-1?b(e):x(z(t))}return function(n,i){return n==t||i==t?x():b(e,r)}}function ne(e,t,n){for(var r=3;r"),Oe):"quasi"==e?b(he,fe):void 0}function le(e){if("=>"==e)return x(Oe)}function ce(e){return e.match(/[\}\)\]]/)?x():","==e||";"==e?x(ce):b(ue,ce)}function ue(e,t){return"variable"==e||"keyword"==$.style?($.marked="property",x(ue)):"?"==t||"number"==e||"string"==e?x(ue):":"==e?x(Oe):"["==e?x(z("variable"),ae,z("]"),ue):"("==e?b(Te,ue):e.match(/[;\}\)\],]/)?void 0:x()}function he(e,t){return"quasi"!=e?b():"${"!=t.slice(t.length-2)?x(he):x(Oe,de)}function de(e){if("}"==e)return $.marked="string-2",$.state.tokenize=p,x(he)}function pe(e,t){return"variable"==e&&$.stream.match(/^\s*[?:]/,!1)||"?"==t?x(pe):":"==e?x(Oe):"spread"==e?x(pe):b(Oe)}function fe(e,t){return"<"==t?x(W(">"),te(Oe,">"),q,fe):"|"==t||"."==e||"&"==t?x(Oe):"["==e?x(Oe,z("]"),fe):"extends"==t||"implements"==t?($.marked="keyword",x(Oe)):"?"==t?x(Oe,z(":"),Oe):void 0}function me(e,t){if("<"==t)return x(W(">"),te(Oe,">"),q,fe)}function ge(){return b(Oe,Qe)}function Qe(e,t){if("="==t)return x(Oe)}function $e(e,t){return"enum"==t?($.marked="keyword",x(Ne)):b(be,ie,ke,ye)}function be(e,t){return o&&P(t)?($.marked="keyword",x(be)):"variable"==e?(k(t),x()):"spread"==e?x(be):"["==e?ne(we,"]"):"{"==e?ne(xe,"}"):void 0}function xe(e,t){return"variable"!=e||$.stream.match(/^\s*:/,!1)?("variable"==e&&($.marked="property"),"spread"==e?x(be):"}"==e?b():"["==e?x(U,z("]"),z(":"),xe):x(z(":"),be,ke)):(k(t),x(ke))}function we(){return b(be,ke)}function ke(e,t){if("="==t)return x(E)}function ye(e){if(","==e)return x($e)}function Pe(e,t){if("keyword b"==e&&"else"==t)return x(W("form","else"),Y,q)}function ve(e,t){return"await"==t?x(ve):"("==e?x(W(")"),Se,q):void 0}function Se(e){return"var"==e?x($e,_e):"variable"==e?x(_e):b(_e)}function _e(e,t){return")"==e?x():";"==e?x(_e):"in"==t||"of"==t?($.marked="keyword",x(U,_e)):b(U,_e)}function Xe(e,t){return"*"==t?($.marked="keyword",x(Xe)):"variable"==e?(k(t),x(Xe)):"("==e?x(X,W(")"),te(We,")"),q,oe,Y,R):o&&"<"==t?x(W(">"),te(ge,">"),q,Xe):void 0}function Te(e,t){return"*"==t?($.marked="keyword",x(Te)):"variable"==e?(k(t),x(Te)):"("==e?x(X,W(")"),te(We,")"),q,oe,R):o&&"<"==t?x(W(">"),te(ge,">"),q,Te):void 0}function Re(e,t){return"keyword"==e||"variable"==e?($.marked="type",x(Re)):"<"==t?x(W(">"),te(ge,">"),q):void 0}function We(e,t){return"@"==t&&x(U,We),"spread"==e?x(We):o&&P(t)?($.marked="keyword",x(We)):o&&"this"==e?x(ie,ke):b(be,ie,ke)}function qe(e,t){return"variable"==e?ze(e,t):Ye(e,t)}function ze(e,t){if("variable"==e)return k(t),x(Ye)}function Ye(e,t){return"<"==t?x(W(">"),te(ge,">"),q,Ye):"extends"==t||"implements"==t||o&&","==e?("implements"==t&&($.marked="keyword"),x(o?Oe:U,Ye)):"{"==e?x(W("}"),Ze,q):void 0}function Ze(e,t){return"async"==e||"variable"==e&&("static"==t||"get"==t||"set"==t||o&&P(t))&&$.stream.match(/^\s+[\w$\xa1-\uffff]/,!1)?($.marked="keyword",x(Ze)):"variable"==e||"keyword"==$.style?($.marked="property",x(Ue,Ze)):"number"==e||"string"==e?x(Ue,Ze):"["==e?x(U,ie,z("]"),Ue,Ze):"*"==t?($.marked="keyword",x(Ze)):o&&"("==e?b(Te,Ze):";"==e||","==e?x(Ze):"}"==e?x():"@"==t?x(U,Ze):void 0}function Ue(e,t){if("!"==t||"?"==t)return x(Ue);if(":"==e)return x(Oe,ke);if("="==t)return x(E);var n=$.state.lexical.prev;return b(n&&"interface"==n.info?Te:Xe)}function Ee(e,t){return"*"==t?($.marked="keyword",x(je,z(";"))):"default"==t?($.marked="keyword",x(U,z(";"))):"{"==e?x(te(Ie,"}"),je,z(";")):b(Y)}function Ie(e,t){return"as"==t?($.marked="keyword",x(z("variable"))):"variable"==e?b(E,Ie):void 0}function Ve(e){return"string"==e?x():"("==e?b(U):"."==e?b(A):b(Ce,Ae,je)}function Ce(e,t){return"{"==e?ne(Ce,"}"):("variable"==e&&k(t),"*"==t&&($.marked="keyword"),x(Ge))}function Ae(e){if(","==e)return x(Ce,Ae)}function Ge(e,t){if("as"==t)return $.marked="keyword",x(Ce)}function je(e,t){if("from"==t)return $.marked="keyword",x(U)}function Le(e){return"]"==e?x():b(te(E,"]"))}function Ne(){return b(W("form"),be,z("{"),W("}"),te(De,"}"),q,q)}function De(){return b(be,ke)}return R.lex=!0,q.lex=!0,{startState:function(t){var n={tokenize:h,lastType:"sof",cc:[],lexical:new g(-t,0,"block",!1),localVars:e.localVars,context:e.localVars&&new v(null,null,!1),indented:0};return e.globalVars&&"object"==typeof e.globalVars&&(n.globalVars=e.globalVars),n},token:function(e,r){if(e.sol()&&(r.lexical.hasOwnProperty("align")||(r.lexical.align=!1),r.indented=e.indentation(),f(e,r)),r.tokenize!=d&&e.eatSpace())return null;var i=r.tokenize(e,r);return"comment"==t?i:(r.lastType="operator"!=t||"++"!=n&&"--"!=n?t:"incdec",function(e,t,n,r,i){var o=e.cc;for($.state=e,$.stream=i,$.marked=null,$.cc=o,$.style=t,e.lexical.hasOwnProperty("align")||(e.lexical.align=!0);;)if((o.length?o.pop():a?U:Y)(n,r)){for(;o.length&&o[o.length-1].lex;)o.pop()();return $.marked?$.marked:"variable"==n&&Q(e,r)?"variableName.local":t}}(r,i,t,n,e))},indent:function(t,n,i){if(t.tokenize==d||t.tokenize==p)return null;if(t.tokenize!=h)return 0;var a,o=n&&n.charAt(0),s=t.lexical;if(!/^\s*else\b/.test(n))for(var O=t.cc.length-1;O>=0;--O){var c=t.cc[O];if(c==q)s=s.prev;else if(c!=Pe&&c!=R)break}for(;("stat"==s.type||"form"==s.type)&&("}"==o||(a=t.cc[t.cc.length-1])&&(a==A||a==G)&&!/^[,\.=+\-*:?[\(]/.test(n));)s=s.prev;r&&")"==s.type&&"stat"==s.prev.type&&(s=s.prev);var u=s.type,f=o==u;return"vardef"==u?s.indented+("operator"==t.lastType||","==t.lastType?s.info.length+1:0):"form"==u&&"{"==o?s.indented:"form"==u?s.indented+i.unit:"stat"==u?s.indented+(function(e,t){return"operator"==e.lastType||","==e.lastType||l.test(t.charAt(0))||/[,.]/.test(t.charAt(0))}(t,n)?r||i.unit:0):"switch"!=s.info||f||0==e.doubleIndentSwitch?s.align?s.column+(f?0:1):s.indented+(f?0:i.unit):s.indented+(/^(?:case|default)\b/.test(n)?i.unit:2*i.unit)},languageData:{indentOnInput:/^\s*(?:case .*?:|default:|\{|\})$/,commentTokens:a?void 0:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]},wordChars:"$"}}}const TP=XP({}),RP=XP({json:!0}),WP=XP({jsonld:!0}),qP=XP({typescript:!0});var zP=Object.freeze({__proto__:null,javascript:TP,json:RP,jsonld:WP,typescript:qP}),YP=["and","as","block","endblock","by","cycle","debug","else","elif","extends","filter","endfilter","firstof","for","endfor","if","endif","ifchanged","endifchanged","ifequal","endifequal","ifnotequal","endifnotequal","in","include","load","not","now","or","parsed","regroup","reversed","spaceless","endspaceless","ssi","templatetag","openblock","closeblock","openvariable","closevariable","openbrace","closebrace","opencomment","closecomment","widthratio","url","with","endwith","get_current_language","trans","endtrans","noop","blocktrans","endblocktrans","get_available_languages","get_current_language_bidi","plural"],ZP=/^[+\-*&%=<>!?|~^]/,UP=/^[:\[\(\{]/,EP=["true","false"],IP=/^(\d[+\-\*\/])?\d+(\.\d+)?/;function VP(e,t){var n=e.peek();if(t.incomment)return e.skipTo("#}")?(e.eatWhile(/\#|}/),t.incomment=!1):e.skipToEnd(),"comment";if(t.intag){if(t.operator){if(t.operator=!1,e.match(EP))return"atom";if(e.match(IP))return"number"}if(t.sign){if(t.sign=!1,e.match(EP))return"atom";if(e.match(IP))return"number"}if(t.instring)return n==t.instring&&(t.instring=!1),e.next(),"string";if("'"==n||'"'==n)return t.instring=n,e.next(),"string";if(e.match(t.intag+"}")||e.eat("-")&&e.match(t.intag+"}"))return t.intag=!1,"tag";if(e.match(ZP))return t.operator=!0,"operator";if(e.match(UP))t.sign=!0;else if(e.eat(" ")||e.sol()){if(e.match(YP))return"keyword";if(e.match(EP))return"atom";if(e.match(IP))return"number";e.sol()&&e.next()}else e.next();return"variable"}if(e.eat("{")){if(e.eat("#"))return t.incomment=!0,e.skipTo("#}")?(e.eatWhile(/\#|}/),t.incomment=!1):e.skipToEnd(),"comment";if(n=e.eat(/\{|%/))return t.intag=n,"{"==n&&(t.intag="}"),e.eat("-"),"tag"}e.next()}YP=new RegExp("(("+YP.join(")|(")+"))\\b"),EP=new RegExp("(("+EP.join(")|(")+"))\\b");const CP={startState:function(){return{tokenize:VP}},token:function(e,t){return t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"{#",close:"#}"}}}};var AP=Object.freeze({__proto__:null,jinja2:CP});function GP(e,t){return void 0===t&&(t="\\b"),new RegExp("^(("+e.join(")|(")+"))"+t)}var jP=GP(["[<>]:","[<>=]=","<<=?",">>>?=?","=>","->","\\/\\/","[\\\\%*+\\-<>!=\\/^|&\\u00F7\\u22BB]=?","\\?","\\$","~",":","\\u00D7","\\u2208","\\u2209","\\u220B","\\u220C","\\u2218","\\u221A","\\u221B","\\u2229","\\u222A","\\u2260","\\u2264","\\u2265","\\u2286","\\u2288","\\u228A","\\u22C5","\\b(in|isa)\\b(?!.?\\()"],""),LP=/^[;,()[\]{}]/,NP=/^[_A-Za-z\u00A1-\u2217\u2219-\uFFFF][\w\u00A1-\u2217\u2219-\uFFFF]*!*/,DP=GP(["\\\\[0-7]{1,3}","\\\\x[A-Fa-f0-9]{1,2}","\\\\[abefnrtv0%?'\"\\\\]","([^\\u0027\\u005C\\uD800-\\uDFFF]|[\\uD800-\\uDFFF][\\uDC00-\\uDFFF])"],"'"),MP=["if","else","elseif","while","for","begin","let","end","do","try","catch","finally","return","break","continue","global","local","const","export","import","importall","using","function","where","macro","module","baremodule","struct","type","mutable","immutable","quote","typealias","abstract","primitive","bitstype"],FP=["true","false","nothing","NaN","Inf"],BP=GP(["begin","function","type","struct","immutable","let","macro","for","while","quote","if","else","elseif","try","finally","catch","do"]),HP=GP(["end","else","elseif","catch","finally"]),KP=GP(MP),JP=GP(FP),ev=/^@[_A-Za-z][\w]*/,tv=/^:[_A-Za-z\u00A1-\uFFFF][\w\u00A1-\uFFFF]*!*/,nv=/^(`|([_A-Za-z\u00A1-\uFFFF]*"("")?))/;function rv(e){return e.nestedArrays>0}function iv(e,t){return void 0===t&&(t=0),e.scopes.length<=t?null:e.scopes[e.scopes.length-(t+1)]}function av(e,t){if(e.match("#=",!1))return t.tokenize=sv,t.tokenize(e,t);var n=t.leavingExpr;if(e.sol()&&(n=!1),t.leavingExpr=!1,n&&e.match(/^'+/))return"operator";if(e.match(/\.{4,}/))return"error";if(e.match(/\.{1,3}/))return"operator";if(e.eatSpace())return null;var r,i=e.peek();if("#"===i)return e.skipToEnd(),"comment";if("["===i&&(t.scopes.push("["),t.nestedArrays++),"("===i&&(t.scopes.push("("),t.nestedGenerators++),rv(t)&&"]"===i){for(;t.scopes.length&&"["!==iv(t);)t.scopes.pop();t.scopes.pop(),t.nestedArrays--,t.leavingExpr=!0}if(function(e){return e.nestedGenerators>0}(t)&&")"===i){for(;t.scopes.length&&"("!==iv(t);)t.scopes.pop();t.scopes.pop(),t.nestedGenerators--,t.leavingExpr=!0}if(rv(t)){if("end"==t.lastToken&&e.match(":"))return"operator";if(e.match("end"))return"number"}if((r=e.match(BP,!1))&&t.scopes.push(r[0]),e.match(HP,!1)&&t.scopes.pop(),e.match(/^::(?![:\$])/))return t.tokenize=ov,t.tokenize(e,t);if(!n&&e.match(tv)||e.match(/:([<>]:|<<=?|>>>?=?|->|\/\/|\.{2,3}|[\.\\%*+\-<>!\/^|&]=?|[~\?\$])/))return"builtin";if(e.match(jP))return"operator";if(e.match(/^\.?\d/,!1)){var a=RegExp(/^im\b/),o=!1;if(e.match(/^0x\.[0-9a-f_]+p[\+\-]?[_\d]+/i)&&(o=!0),e.match(/^0x[0-9a-f_]+/i)&&(o=!0),e.match(/^0b[01_]+/i)&&(o=!0),e.match(/^0o[0-7_]+/i)&&(o=!0),e.match(/^(?:(?:\d[_\d]*)?\.(?!\.)(?:\d[_\d]*)?|\d[_\d]*\.(?!\.)(?:\d[_\d]*))?([Eef][\+\-]?[_\d]+)?/i)&&(o=!0),e.match(/^\d[_\d]*(e[\+\-]?\d+)?/i)&&(o=!0),o)return e.match(a),t.leavingExpr=!0,"number"}if(e.match("'"))return t.tokenize=Ov,t.tokenize(e,t);if(e.match(nv))return t.tokenize=function(e){'"""'===e.substr(-3)?e='"""':'"'===e.substr(-1)&&(e='"');function t(t,n){if(t.eat("\\"))t.next();else{if(t.match(e))return n.tokenize=av,n.leavingExpr=!0,"string";t.eat(/[`"]/)}return t.eatWhile(/[^\\`"]/),"string"}return t}(e.current()),t.tokenize(e,t);if(e.match(ev))return"meta";if(e.match(LP))return null;if(e.match(KP))return"keyword";if(e.match(JP))return"builtin";var s=t.isDefinition||"function"==t.lastToken||"macro"==t.lastToken||"type"==t.lastToken||"struct"==t.lastToken||"immutable"==t.lastToken;return e.match(NP)?s?"."===e.peek()?(t.isDefinition=!0,"variable"):(t.isDefinition=!1,"def"):(t.leavingExpr=!0,"variable"):(e.next(),"error")}function ov(e,t){return e.match(/.*?(?=[,;{}()=\s]|$)/),e.match("{")?t.nestedParameters++:e.match("}")&&t.nestedParameters>0&&t.nestedParameters--,t.nestedParameters>0?e.match(/.*?(?={|})/)||e.next():0==t.nestedParameters&&(t.tokenize=av),"builtin"}function sv(e,t){return e.match("#=")&&t.nestedComments++,e.match(/.*?(?=(#=|=#))/)||e.skipToEnd(),e.match("=#")&&(t.nestedComments--,0==t.nestedComments&&(t.tokenize=av)),"comment"}function Ov(e,t){var n,r=!1;if(e.match(DP))r=!0;else if(n=e.match(/\\u([a-f0-9]{1,4})(?=')/i)){((i=parseInt(n[1],16))<=55295||i>=57344)&&(r=!0,e.next())}else if(n=e.match(/\\U([A-Fa-f0-9]{5,8})(?=')/)){var i;(i=parseInt(n[1],16))<=1114111&&(r=!0,e.next())}return r?(t.leavingExpr=!0,t.tokenize=av,"string"):(e.match(/^[^']+(?=')/)||e.skipToEnd(),e.match("'")&&(t.tokenize=av),"error")}const lv={startState:function(){return{tokenize:av,scopes:[],lastToken:null,leavingExpr:!1,isDefinition:!1,nestedArrays:0,nestedComments:0,nestedGenerators:0,nestedParameters:0,firstParenPos:-1}},token:function(e,t){var n=t.tokenize(e,t),r=e.current();return r&&n&&(t.lastToken=r),n},indent:function(e,t,n){var r=0;return("]"===t||")"===t||/^end\b/.test(t)||/^else/.test(t)||/^catch\b/.test(t)||/^elseif\b/.test(t)||/^finally/.test(t))&&(r=-1),(e.scopes.length+r)*n.unit},languageData:{indentOnInput:/^\s*(end|else|catch|finally)\b$/,commentTokens:{line:"#",block:{open:"#=",close:"=#"}},closeBrackets:{brackets:["(","[","{",'"']},autocomplete:MP.concat(FP)}};var cv=Object.freeze({__proto__:null,julia:lv}),uv=function(e,t){var n=t.next||"start";if(n){t.next=t.next;var r=mv[n];if(r.splice){for(var i=0;i|\\b(?:e(?:lse|xport)|d(?:o|efault)|t(?:ry|hen)|finally|import(?:\\s*all)?|const|var|let|new|catch(?:\\s*"+hv+")?))\\s*$"),pv="(?![$\\w]|-[A-Za-z]|\\s*:(?![:=]))",fv={token:"string",regex:".+"},mv={start:[{token:"docComment",regex:"/\\*",next:"comment"},{token:"comment",regex:"#.*"},{token:"keyword",regex:"(?:t(?:h(?:is|row|en)|ry|ypeof!?)|c(?:on(?:tinue|st)|a(?:se|tch)|lass)|i(?:n(?:stanceof)?|mp(?:ort(?:\\s+all)?|lements)|[fs])|d(?:e(?:fault|lete|bugger)|o)|f(?:or(?:\\s+own)?|inally|unction)|s(?:uper|witch)|e(?:lse|x(?:tends|port)|val)|a(?:nd|rguments)|n(?:ew|ot)|un(?:less|til)|w(?:hile|ith)|o[fr]|return|break|let|var|loop)"+pv},{token:"atom",regex:"(?:true|false|yes|no|on|off|null|void|undefined)"+pv},{token:"invalid",regex:"(?:p(?:ackage|r(?:ivate|otected)|ublic)|i(?:mplements|nterface)|enum|static|yield)"+pv},{token:"className.standard",regex:"(?:R(?:e(?:gExp|ferenceError)|angeError)|S(?:tring|yntaxError)|E(?:rror|valError)|Array|Boolean|Date|Function|Number|Object|TypeError|URIError)"+pv},{token:"variableName.function.standard",regex:"(?:is(?:NaN|Finite)|parse(?:Int|Float)|Math|JSON|(?:en|de)codeURI(?:Component)?)"+pv},{token:"variableName.standard",regex:"(?:t(?:hat|il|o)|f(?:rom|allthrough)|it|by|e)"+pv},{token:"variableName",regex:hv+"\\s*:(?![:=])"},{token:"variableName",regex:hv},{token:"operatorKeyword",regex:"(?:\\.{3}|\\s+\\?)"},{token:"keyword",regex:"(?:@+|::|\\.\\.)",next:"key"},{token:"operatorKeyword",regex:"\\.\\s*",next:"key"},{token:"string",regex:"\\\\\\S[^\\s,;)}\\]]*"},{token:"docString",regex:"'''",next:"qdoc"},{token:"docString",regex:'"""',next:"qqdoc"},{token:"string",regex:"'",next:"qstring"},{token:"string",regex:'"',next:"qqstring"},{token:"string",regex:"`",next:"js"},{token:"string",regex:"<\\[",next:"words"},{token:"regexp",regex:"//",next:"heregex"},{token:"regexp",regex:"\\/(?:[^[\\/\\n\\\\]*(?:(?:\\\\.|\\[[^\\]\\n\\\\]*(?:\\\\.[^\\]\\n\\\\]*)*\\])[^[\\/\\n\\\\]*)*)\\/[gimy$]{0,4}",next:"key"},{token:"number",regex:"(?:0x[\\da-fA-F][\\da-fA-F_]*|(?:[2-9]|[12]\\d|3[0-6])r[\\da-zA-Z][\\da-zA-Z_]*|(?:\\d[\\d_]*(?:\\.\\d[\\d_]*)?|\\.\\d[\\d_]*)(?:e[+-]?\\d[\\d_]*)?[\\w$]*)"},{token:"paren",regex:"[({[]"},{token:"paren",regex:"[)}\\]]",next:"key"},{token:"operatorKeyword",regex:"\\S+"},{token:"content",regex:"\\s+"}],heregex:[{token:"regexp",regex:".*?//[gimy$?]{0,4}",next:"start"},{token:"regexp",regex:"\\s*#{"},{token:"comment",regex:"\\s+(?:#.*)?"},{token:"regexp",regex:"\\S+"}],key:[{token:"operatorKeyword",regex:"[.?@!]+"},{token:"variableName",regex:hv,next:"start"},{token:"content",regex:"",next:"start"}],comment:[{token:"docComment",regex:".*?\\*/",next:"start"},{token:"docComment",regex:".+"}],qdoc:[{token:"string",regex:".*?'''",next:"key"},fv],qqdoc:[{token:"string",regex:'.*?"""',next:"key"},fv],qstring:[{token:"string",regex:"[^\\\\']*(?:\\\\.[^\\\\']*)*'",next:"key"},fv],qqstring:[{token:"string",regex:'[^\\\\"]*(?:\\\\.[^\\\\"]*)*"',next:"key"},fv],js:[{token:"string",regex:"[^\\\\`]*(?:\\\\.[^\\\\`]*)*`",next:"key"},fv],words:[{token:"string",regex:".*?\\]>",next:"key"},fv]};for(var gv in mv){var Qv=mv[gv];if(Qv.splice)for(var $v=0,bv=Qv.length;$v!?^\/\|]/;function Vv(e,t,n){return t.tokenize=n,n(e,t)}function Cv(e,t){var n=t.beforeParams;t.beforeParams=!1;var r=e.next();if(/[\[\]{}\(\),\.]/.test(r))return"("==r&&n?t.inParams=!0:")"==r&&(t.inParams=!1),null;if(/\d/.test(r))return e.eatWhile(/[\w\.]/),"number";if("\\"==r)return e.eat("\\"),e.eat(/./),"number";if("/"==r&&e.eat("*"))return Vv(e,t,Av);if(";"==r&&e.match(/ *\( *\(/))return Vv(e,t,Gv);if(";"!=r||t.inParams){if('"'==r)return e.eat(/"/),"keyword";if("$"==r)return e.eatWhile(/[$_a-z0-9A-Z\.:]/),Zv&&Zv.propertyIsEnumerable(e.current().toLowerCase())?"keyword":(t.beforeParams=!0,"builtin");if("%"==r)return e.eatWhile(/[^,\s()]/),t.beforeParams=!0,"string";if(Iv.test(r))return e.eatWhile(Iv),"operator";e.eatWhile(/[\w\$_{}]/);var i=e.current().toLowerCase();return Uv&&Uv.propertyIsEnumerable(i)?"keyword":Ev&&Ev.propertyIsEnumerable(i)?(t.beforeParams=!0,"keyword"):null}return e.skipToEnd(),"comment"}function Av(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=Cv;break}r="*"==n}return"comment"}function Gv(e,t){for(var n,r=0;n=e.next();){if(";"==n&&2==r){t.tokenize=Cv;break}")"==n?r++:" "!=n&&(r=0)}return"meta"}const jv={startState:function(){return{tokenize:Cv,beforeParams:!1,inParams:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)}};var Lv=Object.freeze({__proto__:null,mirc:jv}),Nv="[a-zA-Z\\$][a-zA-Z0-9\\$]*",Dv="(?:\\.\\d+|\\d+\\.\\d*|\\d+)",Mv="(?:`(?:`?"+Dv+")?)",Fv=new RegExp("(?:(?:\\d+)(?:\\^\\^(?:\\.\\w+|\\w+\\.\\w*|\\w+)"+Mv+"?(?:\\*\\^[+-]?\\d+)?))"),Bv=new RegExp("(?:"+Dv+Mv+"?(?:\\*\\^[+-]?\\d+)?)"),Hv=new RegExp("(?:`?)(?:"+Nv+")(?:`(?:"+Nv+"))*(?:`?)");function Kv(e,t){var n;return'"'===(n=e.next())?(t.tokenize=Jv,t.tokenize(e,t)):"("===n&&e.eat("*")?(t.commentLevel++,t.tokenize=eS,t.tokenize(e,t)):(e.backUp(1),e.match(Fv,!0,!1)||e.match(Bv,!0,!1)?"number":e.match(/(?:In|Out)\[[0-9]*\]/,!0,!1)?"atom":e.match(/([a-zA-Z\$][a-zA-Z0-9\$]*(?:`[a-zA-Z0-9\$]+)*::usage)/,!0,!1)?"meta":e.match(/([a-zA-Z\$][a-zA-Z0-9\$]*(?:`[a-zA-Z0-9\$]+)*::[a-zA-Z\$][a-zA-Z0-9\$]*):?/,!0,!1)?"string.special":e.match(/([a-zA-Z\$][a-zA-Z0-9\$]*\s*:)(?:(?:[a-zA-Z\$][a-zA-Z0-9\$]*)|(?:[^:=>~@\^\&\*\)\[\]'\?,\|])).*/,!0,!1)||e.match(/[a-zA-Z\$][a-zA-Z0-9\$]*_+[a-zA-Z\$][a-zA-Z0-9\$]*/,!0,!1)||e.match(/[a-zA-Z\$][a-zA-Z0-9\$]*_+/,!0,!1)||e.match(/_+[a-zA-Z\$][a-zA-Z0-9\$]*/,!0,!1)?"variableName.special":e.match(/\\\[[a-zA-Z\$][a-zA-Z0-9\$]*\]/,!0,!1)?"character":e.match(/(?:\[|\]|{|}|\(|\))/,!0,!1)?"bracket":e.match(/(?:#[a-zA-Z\$][a-zA-Z0-9\$]*|#+[0-9]?)/,!0,!1)?"variableName.constant":e.match(Hv,!0,!1)?"keyword":e.match(/(?:\\|\+|\-|\*|\/|,|;|\.|:|@|~|=|>|<|&|\||_|`|'|\^|\?|!|%)/,!0,!1)?"operator":(e.next(),"error"))}function Jv(e,t){for(var n,r=!1,i=!1;null!=(n=e.next());){if('"'===n&&!i){r=!0;break}i=!i&&"\\"===n}return r&&!i&&(t.tokenize=Kv),"string"}function eS(e,t){for(var n,r;t.commentLevel>0&&null!=(r=e.next());)"("===n&&"*"===r&&t.commentLevel++,"*"===n&&")"===r&&t.commentLevel--,n=r;return t.commentLevel<=0&&(t.tokenize=Kv),"comment"}const tS={startState:function(){return{tokenize:Kv,commentLevel:0}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"(*",close:"*)"}}}};var nS=Object.freeze({__proto__:null,mathematica:tS});function rS(e){for(var t={},n=e.split(" "),r=0;r+\-\/^\[\]]/,lS=/(:=|<=|>=|==|<>|\.\+|\.\-|\.\*|\.\/|\.\^)/,cS=/[0-9]/,uS=/[_a-zA-Z]/;function hS(e,t){return e.skipToEnd(),t.tokenize=null,"comment"}function dS(e,t){for(var n,r=!1;n=e.next();){if(r&&"/"==n){t.tokenize=null;break}r="*"==n}return"comment"}function pS(e,t){for(var n,r=!1;null!=(n=e.next());){if('"'==n&&!r){t.tokenize=null,t.sol=!1;break}r=!r&&"\\"==n}return"string"}function fS(e,t){for(e.eatWhile(cS);e.eat(cS)||e.eat(uS););var n=e.current();return!t.sol||"package"!=n&&"model"!=n&&"when"!=n&&"connector"!=n?t.sol&&"end"==n&&t.level>0&&t.level--:t.level++,t.tokenize=null,t.sol=!1,iS.propertyIsEnumerable(n)?"keyword":aS.propertyIsEnumerable(n)?"builtin":oS.propertyIsEnumerable(n)?"atom":"variable"}function mS(e,t){for(;e.eat(/[^']/););return t.tokenize=null,t.sol=!1,e.eat("'")?"variable":"error"}function gS(e,t){return e.eatWhile(cS),e.eat(".")&&e.eatWhile(cS),(e.eat("e")||e.eat("E"))&&(e.eat("-")||e.eat("+"),e.eatWhile(cS)),t.tokenize=null,t.sol=!1,"number"}const QS={startState:function(){return{tokenize:null,level:0,sol:!0}},token:function(e,t){if(null!=t.tokenize)return t.tokenize(e,t);if(e.sol()&&(t.sol=!0),e.eatSpace())return t.tokenize=null,null;var n=e.next();if("/"==n&&e.eat("/"))t.tokenize=hS;else if("/"==n&&e.eat("*"))t.tokenize=dS;else{if(lS.test(n+e.peek()))return e.next(),t.tokenize=null,"operator";if(OS.test(n))return t.tokenize=null,"operator";if(uS.test(n))t.tokenize=fS;else if("'"==n&&e.peek()&&"'"!=e.peek())t.tokenize=mS;else if('"'==n)t.tokenize=pS;else{if(!cS.test(n))return t.tokenize=null,"error";t.tokenize=gS}}return t.tokenize(e,t)},indent:function(e,t,n){if(null!=e.tokenize)return null;var r=e.level;return/(algorithm)/.test(t)&&r--,/(equation)/.test(t)&&r--,/(initial algorithm)/.test(t)&&r--,/(initial equation)/.test(t)&&r--,/(end)/.test(t)&&r--,r>0?n.unit*r:0},languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:sS}};var $S=Object.freeze({__proto__:null,modelica:QS});function bS(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var xS=new RegExp("^[\\+\\-\\*/&#!_?\\\\<>=\\'\\[\\]]"),wS=new RegExp("^(('=)|(<=)|(>=)|('>)|('<)|([[)|(]])|(^$))"),kS=new RegExp("^[\\.,:]"),yS=new RegExp("[()]"),PS=new RegExp("^[%A-Za-z][A-Za-z0-9]*"),vS=bS(["\\$ascii","\\$char","\\$data","\\$ecode","\\$estack","\\$etrap","\\$extract","\\$find","\\$fnumber","\\$get","\\$horolog","\\$io","\\$increment","\\$job","\\$justify","\\$length","\\$name","\\$next","\\$order","\\$piece","\\$qlength","\\$qsubscript","\\$query","\\$quit","\\$random","\\$reverse","\\$select","\\$stack","\\$test","\\$text","\\$translate","\\$view","\\$x","\\$y","\\$a","\\$c","\\$d","\\$e","\\$ec","\\$es","\\$et","\\$f","\\$fn","\\$g","\\$h","\\$i","\\$j","\\$l","\\$n","\\$na","\\$o","\\$p","\\$q","\\$ql","\\$qs","\\$r","\\$re","\\$s","\\$st","\\$t","\\$tr","\\$v","\\$z"]),SS=bS(["break","close","do","else","for","goto","halt","hang","if","job","kill","lock","merge","new","open","quit","read","set","tcommit","trollback","tstart","use","view","write","xecute","b","c","d","e","f","g","h","i","j","k","l","m","n","o","q","r","s","tc","tro","ts","u","v","w","x"]);const _S={startState:function(){return{label:!1,commandMode:0}},token:function(e,t){var n=function(e,t){e.sol()&&(t.label=!0,t.commandMode=0);var n=e.peek();return" "==n||"\t"==n?(t.label=!1,0==t.commandMode?t.commandMode=1:(t.commandMode<0||2==t.commandMode)&&(t.commandMode=0)):"."!=n&&t.commandMode>0&&(t.commandMode=":"==n?-1:2),"("!==n&&"\t"!==n||(t.label=!1),";"===n?(e.skipToEnd(),"comment"):e.match(/^[-+]?\d+(\.\d+)?([eE][-+]?\d+)?/)?"number":'"'==n?e.skipTo('"')?(e.next(),"string"):(e.skipToEnd(),"error"):e.match(wS)||e.match(xS)?"operator":e.match(kS)?null:yS.test(n)?(e.next(),"bracket"):t.commandMode>0&&e.match(SS)?"controlKeyword":e.match(vS)?"builtin":e.match(PS)?"variable":"$"===n||"^"===n?(e.next(),"builtin"):"@"===n?(e.next(),"string.special"):/[\w%]/.test(n)?(e.eatWhile(/[\w%]/),"variable"):(e.next(),"error")}(e,t);return t.label?"tag":n}};var XS=Object.freeze({__proto__:null,mumps:_S}),TS=["From","Sender","Reply-To","To","Cc","Bcc","Message-ID","In-Reply-To","References","Resent-From","Resent-Sender","Resent-To","Resent-Cc","Resent-Bcc","Resent-Message-ID","Return-Path","Received"],RS=["Date","Subject","Comments","Keywords","Resent-Date"],WS=/^[ \t]/,qS=/^From /,zS=new RegExp("^("+TS.join("|")+"): "),YS=new RegExp("^("+RS.join("|")+"): "),ZS=/^[^:]+:/,US=/^[^ ]+@[^ ]+/,ES=/^.*?(?=[^ ]+?@[^ ]+)/,IS=/^<.*?>/,VS=/^.*?(?=<.*>)/;const CS={startState:function(){return{inSeparator:!1,inHeader:!1,emailPermitted:!1,header:null,inHeaders:!1}},token:function(e,t){if(e.sol()){if(t.inSeparator=!1,t.inHeader&&e.match(WS))return null;if(t.inHeader=!1,t.header=null,e.match(qS))return t.inHeaders=!0,t.inSeparator=!0,"atom";var n,r=!1;return(n=e.match(YS))||(r=!0)&&(n=e.match(zS))?(t.inHeaders=!0,t.inHeader=!0,t.emailPermitted=r,t.header=n[1],"atom"):t.inHeaders&&(n=e.match(ZS))?(t.inHeader=!0,t.emailPermitted=!0,t.header=n[1],"atom"):(t.inHeaders=!1,e.skipToEnd(),null)}if(t.inSeparator)return e.match(US)?"link":(e.match(ES)||e.skipToEnd(),"atom");if(t.inHeader){var i=function(e){return"Subject"===e?"header":"string"}(t.header);if(t.emailPermitted){if(e.match(IS))return i+" link";if(e.match(VS))return i}return e.skipToEnd(),i}return e.skipToEnd(),null},blankLine:function(e){e.inHeaders=e.inSeparator=e.inHeader=!1},languageData:{autocomplete:TS.concat(RS)}};var AS=Object.freeze({__proto__:null,mbox:CS});function GS(e){for(var t={},n=e.split(" "),r=0;r*\/]/.test(r)?MS(null,"select-op"):/[;{}:\[\]]/.test(r)?MS(null,r):(e.eatWhile(/[\w\\\-]/),MS("variable","variable")):MS(null,"compare"):void MS(null,"compare")}function BS(e,t){for(var n,r=!1;null!=(n=e.next());){if(r&&"/"==n){t.tokenize=FS;break}r="*"==n}return MS("comment","comment")}function HS(e,t){for(var n,r=0;null!=(n=e.next());){if(r>=2&&">"==n){t.tokenize=FS;break}r="-"==n?r+1:0}return MS("comment","comment")}const KS={startState:function(){return{tokenize:FS,baseIndent:0,stack:[]}},token:function(e,t){if(e.eatSpace())return null;jS=null;var n=t.tokenize(e,t),r=t.stack[t.stack.length-1];return"hash"==jS&&"rule"==r?n="atom":"variable"==n&&("rule"==r?n="number":r&&"@media{"!=r||(n="tag")),"rule"==r&&/^[\{\};]$/.test(jS)&&t.stack.pop(),"{"==jS?"@media"==r?t.stack[t.stack.length-1]="@media{":t.stack.push("{"):"}"==jS?t.stack.pop():"@media"==jS?t.stack.push("@media"):"{"==r&&"comment"!=jS&&t.stack.push("rule"),n},indent:function(e,t,n){var r=e.stack.length;return/^\}/.test(t)&&(r-="rule"==e.stack[e.stack.length-1]?2:1),e.baseIndent+r*n.unit},languageData:{indentOnInput:/^\s*\}$/}};var JS=Object.freeze({__proto__:null,nginx:KS});const e_=rb({start:[{regex:/(?:[+-]?)(?:0x[\d,a-f]+)|(?:0o[0-7]+)|(?:0b[0,1]+)|(?:\d+.?\d*)/,token:"number"},{regex:/"(?:[^\\"]|\\.)*"?/,token:"string"},{regex:/'(?:[^\\']|\\.)*'?/,token:"string"},{regex:/`(?:[^\\`]|\\.)*`?/,token:"string"},{regex:/^\s*(?:\!(include|addincludedir|addplugindir|appendfile|cd|delfile|echo|error|execute|packhdr|pragma|finalize|getdllversion|gettlbversion|system|tempfile|warning|verbose|define|undef|insertmacro|macro|macroend|makensis|searchparse|searchreplace))\b/,token:"keyword"},{regex:/^\s*(?:\!(if(?:n?def)?|ifmacron?def|macro))\b/,token:"keyword",indent:!0},{regex:/^\s*(?:\!(else|endif|macroend))\b/,token:"keyword",dedent:!0},{regex:/^\s*(?:Abort|AddBrandingImage|AddSize|AllowRootDirInstall|AllowSkipFiles|AutoCloseWindow|BGFont|BGGradient|BrandingText|BringToFront|Call|CallInstDLL|Caption|ChangeUI|CheckBitmap|ClearErrors|CompletedText|ComponentText|CopyFiles|CRCCheck|CreateDirectory|CreateFont|CreateShortCut|Delete|DeleteINISec|DeleteINIStr|DeleteRegKey|DeleteRegValue|DetailPrint|DetailsButtonText|DirText|DirVar|DirVerify|EnableWindow|EnumRegKey|EnumRegValue|Exch|Exec|ExecShell|ExecShellWait|ExecWait|ExpandEnvStrings|File|FileBufSize|FileClose|FileErrorText|FileOpen|FileRead|FileReadByte|FileReadUTF16LE|FileReadWord|FileWriteUTF16LE|FileSeek|FileWrite|FileWriteByte|FileWriteWord|FindClose|FindFirst|FindNext|FindWindow|FlushINI|GetCurInstType|GetCurrentAddress|GetDlgItem|GetDLLVersion|GetDLLVersionLocal|GetErrorLevel|GetFileTime|GetFileTimeLocal|GetFullPathName|GetFunctionAddress|GetInstDirError|GetKnownFolderPath|GetLabelAddress|GetTempFileName|Goto|HideWindow|Icon|IfAbort|IfErrors|IfFileExists|IfRebootFlag|IfRtlLanguage|IfShellVarContextAll|IfSilent|InitPluginsDir|InstallButtonText|InstallColors|InstallDir|InstallDirRegKey|InstProgressFlags|InstType|InstTypeGetText|InstTypeSetText|Int64Cmp|Int64CmpU|Int64Fmt|IntCmp|IntCmpU|IntFmt|IntOp|IntPtrCmp|IntPtrCmpU|IntPtrOp|IsWindow|LangString|LicenseBkColor|LicenseData|LicenseForceSelection|LicenseLangString|LicenseText|LoadAndSetImage|LoadLanguageFile|LockWindow|LogSet|LogText|ManifestDPIAware|ManifestLongPathAware|ManifestMaxVersionTested|ManifestSupportedOS|MessageBox|MiscButtonText|Name|Nop|OutFile|Page|PageCallbacks|PEAddResource|PEDllCharacteristics|PERemoveResource|PESubsysVer|Pop|Push|Quit|ReadEnvStr|ReadINIStr|ReadRegDWORD|ReadRegStr|Reboot|RegDLL|Rename|RequestExecutionLevel|ReserveFile|Return|RMDir|SearchPath|SectionGetFlags|SectionGetInstTypes|SectionGetSize|SectionGetText|SectionIn|SectionSetFlags|SectionSetInstTypes|SectionSetSize|SectionSetText|SendMessage|SetAutoClose|SetBrandingImage|SetCompress|SetCompressor|SetCompressorDictSize|SetCtlColors|SetCurInstType|SetDatablockOptimize|SetDateSave|SetDetailsPrint|SetDetailsView|SetErrorLevel|SetErrors|SetFileAttributes|SetFont|SetOutPath|SetOverwrite|SetRebootFlag|SetRegView|SetShellVarContext|SetSilent|ShowInstDetails|ShowUninstDetails|ShowWindow|SilentInstall|SilentUnInstall|Sleep|SpaceTexts|StrCmp|StrCmpS|StrCpy|StrLen|SubCaption|Unicode|UninstallButtonText|UninstallCaption|UninstallIcon|UninstallSubCaption|UninstallText|UninstPage|UnRegDLL|Var|VIAddVersionKey|VIFileVersion|VIProductVersion|WindowIcon|WriteINIStr|WriteRegBin|WriteRegDWORD|WriteRegExpandStr|WriteRegMultiStr|WriteRegNone|WriteRegStr|WriteUninstaller|XPStyle)\b/,token:"keyword"},{regex:/^\s*(?:Function|PageEx|Section(?:Group)?)\b/,token:"keyword",indent:!0},{regex:/^\s*(?:(Function|PageEx|Section(?:Group)?)End)\b/,token:"keyword",dedent:!0},{regex:/\b(?:ARCHIVE|FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_NORMAL|FILE_ATTRIBUTE_OFFLINE|FILE_ATTRIBUTE_READONLY|FILE_ATTRIBUTE_SYSTEM|FILE_ATTRIBUTE_TEMPORARY|HIDDEN|HKCC|HKCR(32|64)?|HKCU(32|64)?|HKDD|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_DYN_DATA|HKEY_LOCAL_MACHINE|HKEY_PERFORMANCE_DATA|HKEY_USERS|HKLM(32|64)?|HKPD|HKU|IDABORT|IDCANCEL|IDD_DIR|IDD_INST|IDD_INSTFILES|IDD_LICENSE|IDD_SELCOM|IDD_UNINST|IDD_VERIFY|IDIGNORE|IDNO|IDOK|IDRETRY|IDYES|MB_ABORTRETRYIGNORE|MB_DEFBUTTON1|MB_DEFBUTTON2|MB_DEFBUTTON3|MB_DEFBUTTON4|MB_ICONEXCLAMATION|MB_ICONINFORMATION|MB_ICONQUESTION|MB_ICONSTOP|MB_OK|MB_OKCANCEL|MB_RETRYCANCEL|MB_RIGHT|MB_RTLREADING|MB_SETFOREGROUND|MB_TOPMOST|MB_USERICON|MB_YESNO|MB_YESNOCANCEL|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SW_HIDE|SW_SHOWDEFAULT|SW_SHOWMAXIMIZED|SW_SHOWMINIMIZED|SW_SHOWNORMAL|SYSTEM|TEMPORARY)\b/,token:"atom"},{regex:/\b(?:admin|all|auto|both|bottom|bzip2|components|current|custom|directory|false|force|hide|highest|ifdiff|ifnewer|instfiles|lastused|leave|left|license|listonly|lzma|nevershow|none|normal|notset|off|on|right|show|silent|silentlog|textonly|top|true|try|un\.components|un\.custom|un\.directory|un\.instfiles|un\.license|uninstConfirm|user|Win10|Win7|Win8|WinVista|zlib)\b/,token:"builtin"},{regex:/\$\{(?:And(?:If(?:Not)?|Unless)|Break|Case(?:Else)?|Continue|Default|Do(?:Until|While)?|Else(?:If(?:Not)?|Unless)?|End(?:If|Select|Switch)|Exit(?:Do|For|While)|For(?:Each)?|If(?:Cmd|Not(?:Then)?|Then)?|Loop(?:Until|While)?|Or(?:If(?:Not)?|Unless)|Select|Switch|Unless|While)\}/,token:"controlKeyword",indent:!0},{regex:/\$\{(?:BannerTrimPath|DirState|DriveSpace|Get(BaseName|Drives|ExeName|ExePath|FileAttributes|FileExt|FileName|FileVersion|Options|OptionsS|Parameters|Parent|Root|Size|Time)|Locate|RefreshShellIcons)\}/,token:"modifier",dedent:!0},{regex:/\$\{(?:Memento(?:Section(?:Done|End|Restore|Save)?|UnselectedSection))\}/,token:"controlKeyword",dedent:!0},{regex:/\$\{(?:Config(?:Read|ReadS|Write|WriteS)|File(?:Join|ReadFromEnd|Recode)|Line(?:Find|Read|Sum)|Text(?:Compare|CompareS)|TrimNewLines)\}/,token:"keyword",dedent:!0},{regex:/\$\{(?:(?:At(?:Least|Most)|Is)(?:ServicePack|Win(?:7|8|10|95|98|200(?:0|3|8(?:R2)?)|ME|NT4|Vista|XP))|Is(?:NT|Server))\}/,token:"variable",dedent:!0},{regex:/\$\{(?:StrFilterS?|Version(?:Compare|Convert)|Word(?:AddS?|Find(?:(?:2|3)X)?S?|InsertS?|ReplaceS?))\}/,token:"keyword",dedent:!0},{regex:/\$\{(?:RunningX64)\}/,token:"variable",dedent:!0},{regex:/\$\{(?:Disable|Enable)X64FSRedirection\}/,token:"keyword",dedent:!0},{regex:/(#|;).*/,token:"comment"},{regex:/\/\*/,token:"comment",next:"comment"},{regex:/[-+\/*=<>!]+/,token:"operator"},{regex:/\$\w+/,token:"variable"},{regex:/\${[\w\.:-]+}/,token:"variableName.constant"},{regex:/\$\([\w\.:-]+\)/,token:"atom"}],comment:[{regex:/.*?\*\//,token:"comment",next:"start"},{regex:/.*/,token:"comment"}],languageData:{indentOnInput:/^\s*((Function|PageEx|Section|Section(Group)?)End|(\!(endif|macroend))|\$\{(End(If|Unless|While)|Loop(Until)|Next)\})$/,commentTokens:{line:"#",block:{open:"/*",close:"*/"}}}});var t_=Object.freeze({__proto__:null,nsis:e_}),n_=0,r_=1,i_=2,a_=3,o_=4,s_=5,O_=6,l_=7,c_=8,u_=9,h_=10,d_=11,p_=12;function f_(e,t){var n,r=e.location;n=r==n_&&"<"==t?r_:r==n_&&"_"==t?i_:r==a_&&"<"==t?o_:r==s_&&"<"==t?O_:r==s_&&"_"==t?l_:r==s_&&'"'==t?c_:r==r_&&">"==t||r==i_&&" "==t?a_:r==o_&&">"==t?s_:r==O_&&">"==t||r==l_&&" "==t||r==c_&&'"'==t||r==u_&&" "==t||r==h_&&">"==t?d_:r==c_&&"@"==t?u_:r==c_&&"^"==t?h_:" "!=t||r!=n_&&r!=a_&&r!=s_&&r!=d_?r==d_&&"."==t?n_:p_:r,e.location=n}const m_={startState:function(){return{location:n_,uris:[],anchors:[],bnodes:[],langs:[],types:[]}},token:function(e,t){var n=e.next();if("<"==n){f_(t,n);var r="";return e.eatWhile((function(e){return"#"!=e&&">"!=e&&(r+=e,!0)})),t.uris.push(r),e.match("#",!1)?"variable":(e.next(),f_(t,">"),"variable")}if("#"==n){var i="";return e.eatWhile((function(e){return">"!=e&&" "!=e&&(i+=e,!0)})),t.anchors.push(i),"url"}if(">"==n)return f_(t,">"),"variable";if("_"==n){f_(t,n);var a="";return e.eatWhile((function(e){return" "!=e&&(a+=e,!0)})),t.bnodes.push(a),e.next(),f_(t," "),"builtin"}if('"'==n)return f_(t,n),e.eatWhile((function(e){return'"'!=e})),e.next(),"@"!=e.peek()&&"^"!=e.peek()&&f_(t,'"'),"string";if("@"==n){f_(t,"@");var o="";return e.eatWhile((function(e){return" "!=e&&(o+=e,!0)})),t.langs.push(o),e.next(),f_(t," "),"string.special"}if("^"==n){e.next(),f_(t,"^");var s="";return e.eatWhile((function(e){return">"!=e&&(s+=e,!0)})),t.types.push(s),e.next(),f_(t,">"),"variable"}" "==n&&f_(t,n),"."==n&&f_(t,n)}};var g_=Object.freeze({__proto__:null,ntriples:m_});function Q_(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var $_=new RegExp("^[\\+\\-\\*/&|\\^~<>!@'\\\\]"),b_=new RegExp("^[\\(\\[\\{\\},:=;\\.]"),x_=new RegExp("^((==)|(~=)|(<=)|(>=)|(<<)|(>>)|(\\.[\\+\\-\\*/\\^\\\\]))"),w_=new RegExp("^((!=)|(\\+=)|(\\-=)|(\\*=)|(/=)|(&=)|(\\|=)|(\\^=))"),k_=new RegExp("^((>>=)|(<<=))"),y_=new RegExp("^[\\]\\)]"),P_=new RegExp("^[_A-Za-z¡-￿][_A-Za-z0-9¡-￿]*"),v_=Q_(["error","eval","function","abs","acos","atan","asin","cos","cosh","exp","log","prod","sum","log10","max","min","sign","sin","sinh","sqrt","tan","reshape","break","zeros","default","margin","round","ones","rand","syn","ceil","floor","size","clear","zeros","eye","mean","std","cov","det","eig","inv","norm","rank","trace","expm","logm","sqrtm","linspace","plot","title","xlabel","ylabel","legend","text","grid","meshgrid","mesh","num2str","fft","ifft","arrayfun","cellfun","input","fliplr","flipud","ismember"]),S_=Q_(["return","case","switch","else","elseif","end","endif","endfunction","if","otherwise","do","for","while","try","catch","classdef","properties","events","methods","global","persistent","endfor","endwhile","printf","sprintf","disp","until","continue","pkg"]);function __(e,t){return e.sol()||"'"!==e.peek()?(t.tokenize=T_,T_(e,t)):(e.next(),t.tokenize=T_,"operator")}function X_(e,t){return e.match(/^.*%}/)?(t.tokenize=T_,"comment"):(e.skipToEnd(),"comment")}function T_(e,t){if(e.eatSpace())return null;if(e.match("%{"))return t.tokenize=X_,e.skipToEnd(),"comment";if(e.match(/^[%#]/))return e.skipToEnd(),"comment";if(e.match(/^[0-9\.+-]/,!1)){if(e.match(/^[+-]?0x[0-9a-fA-F]+[ij]?/))return e.tokenize=T_,"number";if(e.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?[ij]?/))return"number";if(e.match(/^[+-]?\d+([EeDd][+-]?\d+)?[ij]?/))return"number"}if(e.match(Q_(["nan","NaN","inf","Inf"])))return"number";var n=e.match(/^"(?:[^"]|"")*("|$)/)||e.match(/^'(?:[^']|'')*('|$)/);return n?n[1]?"string":"error":e.match(S_)?"keyword":e.match(v_)?"builtin":e.match(P_)?"variable":e.match($_)||e.match(x_)?"operator":e.match(b_)||e.match(w_)||e.match(k_)?null:e.match(y_)?(t.tokenize=__,null):(e.next(),"error")}const R_={startState:function(){return{tokenize:T_}},token:function(e,t){var n=t.tokenize(e,t);return"number"!==n&&"variable"!==n||(t.tokenize=__),n},languageData:{commentTokens:{line:"%"}}};var W_=Object.freeze({__proto__:null,octave:R_});function q_(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var z_=/[\^@!\|<>#~\.\*\-\+\\/,=]/,Y_=/(<-)|(:=)|(=<)|(>=)|(<=)|(<:)|(>:)|(=:)|(\\=)|(\\=:)|(!!)|(==)|(::)/,Z_=/(:::)|(\.\.\.)|(=<:)|(>=:)/,U_=["in","then","else","of","elseof","elsecase","elseif","catch","finally","with","require","prepare","import","export","define","do"],E_=["end"],I_=q_(["true","false","nil","unit"]),V_=q_(["andthen","at","attr","declare","feat","from","lex","mod","div","mode","orelse","parser","prod","prop","scanner","self","syn","token"]),C_=q_(["local","proc","fun","case","class","if","cond","or","dis","choice","not","thread","try","raise","lock","for","suchthat","meth","functor"]),A_=q_(U_),G_=q_(E_);function j_(e,t){if(e.eatSpace())return null;if(e.match(/[{}]/))return"bracket";if(e.match("[]"))return"keyword";if(e.match(Z_)||e.match(Y_))return"operator";if(e.match(I_))return"atom";var n=e.match(C_);if(n)return t.doInCurrentLine?t.doInCurrentLine=!1:t.currentIndent++,"proc"==n[0]||"fun"==n[0]?t.tokenize=D_:"class"==n[0]?t.tokenize=L_:"meth"==n[0]&&(t.tokenize=N_),"keyword";if(e.match(A_)||e.match(V_))return"keyword";if(e.match(G_))return t.currentIndent--,"keyword";var r=e.next();if('"'==r||"'"==r)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=j_),"string"}}(r),t.tokenize(e,t);if(/[~\d]/.test(r)){if("~"==r){if(!/^[0-9]/.test(e.peek()))return null;if("0"==e.next()&&e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^[0-9]*(\.[0-9]+)?([eE][~+]?[0-9]+)?/))return"number"}return"0"==r&&e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^[0-9]*(\.[0-9]+)?([eE][~+]?[0-9]+)?/)?"number":null}return"%"==r?(e.skipToEnd(),"comment"):"/"==r&&e.eat("*")?(t.tokenize=M_,M_(e,t)):z_.test(r)?"operator":(e.eatWhile(/\w/),"variable")}function L_(e,t){return e.eatSpace()?null:(e.match(/([A-Z][A-Za-z0-9_]*)|(`.+`)/),t.tokenize=j_,"type")}function N_(e,t){return e.eatSpace()?null:(e.match(/([a-zA-Z][A-Za-z0-9_]*)|(`.+`)/),t.tokenize=j_,"def")}function D_(e,t){return e.eatSpace()?null:!t.hasPassedFirstStage&&e.eat("{")?(t.hasPassedFirstStage=!0,"bracket"):t.hasPassedFirstStage?(e.match(/([A-Z][A-Za-z0-9_]*)|(`.+`)|\$/),t.hasPassedFirstStage=!1,t.tokenize=j_,"def"):(t.tokenize=j_,null)}function M_(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=j_;break}r="*"==n}return"comment"}const F_={startState:function(){return{tokenize:j_,currentIndent:0,doInCurrentLine:!1,hasPassedFirstStage:!1}},token:function(e,t){return e.sol()&&(t.doInCurrentLine=0),t.tokenize(e,t)},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,"");return r.match(G_)||r.match(A_)||r.match(/(\[])/)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit},languageData:{indentOnInut:(B_=U_.concat(E_),new RegExp("[\\[\\]]|("+B_.join("|")+")$")),commentTokens:{line:"%",block:{open:"/*",close:"*/"}}}};var B_,H_=Object.freeze({__proto__:null,oz:F_});var K_=function(e){for(var t={},n=e.split(" "),r=0;r!?|\/]/;function tX(e,t){var n=e.next();if("#"==n&&t.startOfLine)return e.skipToEnd(),"meta";if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if("("==n&&e.eat("*"))return t.tokenize=nX,nX(e,t);if("{"==n)return t.tokenize=rX,rX(e,t);if(/[\[\]\(\),;\:\.]/.test(n))return null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n&&e.eat("/"))return e.skipToEnd(),"comment";if(eX.test(n))return e.eatWhile(eX),"operator";e.eatWhile(/[\w\$_]/);var r=e.current();return K_.propertyIsEnumerable(r)?"keyword":J_.propertyIsEnumerable(r)?"atom":"variable"}function nX(e,t){for(var n,r=!1;n=e.next();){if(")"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function rX(e,t){for(var n;n=e.next();)if("}"==n){t.tokenize=null;break}return"comment"}const iX={startState:function(){return{tokenize:null}},token:function(e,t){if(e.eatSpace())return null;var n=(t.tokenize||tX)(e,t);return n},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{block:{open:"(*",close:"*)"}}}};var aX=Object.freeze({__proto__:null,pascal:iX});function oX(e,t){return e.string.charAt(e.pos+(t||0))}function sX(e,t){if(t){var n=e.pos-t;return e.string.substr(n>=0?n:0,t)}return e.string.substr(0,e.pos-1)}function OX(e,t){var n=e.string.length,r=n-e.pos+1;return e.string.substr(e.pos,t&&t=(n=e.string.length-1)?e.pos=n:e.pos=r}var cX={"->":4,"++":4,"--":4,"**":4,"=~":4,"!~":4,"*":4,"/":4,"%":4,x:4,"+":4,"-":4,".":4,"<<":4,">>":4,"<":4,">":4,"<=":4,">=":4,lt:4,gt:4,le:4,ge:4,"==":4,"!=":4,"<=>":4,eq:4,ne:4,cmp:4,"~~":4,"&":4,"|":4,"^":4,"&&":4,"||":4,"//":4,"..":4,"...":4,"?":4,":":4,"=":4,"+=":4,"-=":4,"*=":4,",":4,"=>":4,"::":4,not:4,and:4,or:4,xor:4,BEGIN:[5,1],END:[5,1],PRINT:[5,1],PRINTF:[5,1],GETC:[5,1],READ:[5,1],READLINE:[5,1],DESTROY:[5,1],TIE:[5,1],TIEHANDLE:[5,1],UNTIE:[5,1],STDIN:5,STDIN_TOP:5,STDOUT:5,STDOUT_TOP:5,STDERR:5,STDERR_TOP:5,$ARG:5,$_:5,"@ARG":5,"@_":5,$LIST_SEPARATOR:5,'$"':5,$PROCESS_ID:5,$PID:5,$$:5,$REAL_GROUP_ID:5,$GID:5,"$(":5,$EFFECTIVE_GROUP_ID:5,$EGID:5,"$)":5,$PROGRAM_NAME:5,$0:5,$SUBSCRIPT_SEPARATOR:5,$SUBSEP:5,"$;":5,$REAL_USER_ID:5,$UID:5,"$<":5,$EFFECTIVE_USER_ID:5,$EUID:5,"$>":5,$a:5,$b:5,$COMPILING:5,"$^C":5,$DEBUGGING:5,"$^D":5,"${^ENCODING}":5,$ENV:5,"%ENV":5,$SYSTEM_FD_MAX:5,"$^F":5,"@F":5,"${^GLOBAL_PHASE}":5,"$^H":5,"%^H":5,"@INC":5,"%INC":5,$INPLACE_EDIT:5,"$^I":5,"$^M":5,$OSNAME:5,"$^O":5,"${^OPEN}":5,$PERLDB:5,"$^P":5,$SIG:5,"%SIG":5,$BASETIME:5,"$^T":5,"${^TAINT}":5,"${^UNICODE}":5,"${^UTF8CACHE}":5,"${^UTF8LOCALE}":5,$PERL_VERSION:5,"$^V":5,"${^WIN32_SLOPPY_STAT}":5,$EXECUTABLE_NAME:5,"$^X":5,$1:5,$MATCH:5,"$&":5,"${^MATCH}":5,$PREMATCH:5,"$`":5,"${^PREMATCH}":5,$POSTMATCH:5,"$'":5,"${^POSTMATCH}":5,$LAST_PAREN_MATCH:5,"$+":5,$LAST_SUBMATCH_RESULT:5,"$^N":5,"@LAST_MATCH_END":5,"@+":5,"%LAST_PAREN_MATCH":5,"%+":5,"@LAST_MATCH_START":5,"@-":5,"%LAST_MATCH_START":5,"%-":5,$LAST_REGEXP_CODE_RESULT:5,"$^R":5,"${^RE_DEBUG_FLAGS}":5,"${^RE_TRIE_MAXBUF}":5,$ARGV:5,"@ARGV":5,ARGV:5,ARGVOUT:5,$OUTPUT_FIELD_SEPARATOR:5,$OFS:5,"$,":5,$INPUT_LINE_NUMBER:5,$NR:5,"$.":5,$INPUT_RECORD_SEPARATOR:5,$RS:5,"$/":5,$OUTPUT_RECORD_SEPARATOR:5,$ORS:5,"$\\":5,$OUTPUT_AUTOFLUSH:5,"$|":5,$ACCUMULATOR:5,"$^A":5,$FORMAT_FORMFEED:5,"$^L":5,$FORMAT_PAGE_NUMBER:5,"$%":5,$FORMAT_LINES_LEFT:5,"$-":5,$FORMAT_LINE_BREAK_CHARACTERS:5,"$:":5,$FORMAT_LINES_PER_PAGE:5,"$=":5,$FORMAT_TOP_NAME:5,"$^":5,$FORMAT_NAME:5,"$~":5,"${^CHILD_ERROR_NATIVE}":5,$EXTENDED_OS_ERROR:5,"$^E":5,$EXCEPTIONS_BEING_CAUGHT:5,"$^S":5,$WARNING:5,"$^W":5,"${^WARNING_BITS}":5,$OS_ERROR:5,$ERRNO:5,"$!":5,"%OS_ERROR":5,"%ERRNO":5,"%!":5,$CHILD_ERROR:5,"$?":5,$EVAL_ERROR:5,"$@":5,$OFMT:5,"$#":5,"$*":5,$ARRAY_BASE:5,"$[":5,$OLD_PERL_VERSION:5,"$]":5,if:[1,1],elsif:[1,1],else:[1,1],while:[1,1],unless:[1,1],for:[1,1],foreach:[1,1],abs:1,accept:1,alarm:1,atan2:1,bind:1,binmode:1,bless:1,bootstrap:1,break:1,caller:1,chdir:1,chmod:1,chomp:1,chop:1,chown:1,chr:1,chroot:1,close:1,closedir:1,connect:1,continue:[1,1],cos:1,crypt:1,dbmclose:1,dbmopen:1,default:1,defined:1,delete:1,die:1,do:1,dump:1,each:1,endgrent:1,endhostent:1,endnetent:1,endprotoent:1,endpwent:1,endservent:1,eof:1,eval:1,exec:1,exists:1,exit:1,exp:1,fcntl:1,fileno:1,flock:1,fork:1,format:1,formline:1,getc:1,getgrent:1,getgrgid:1,getgrnam:1,gethostbyaddr:1,gethostbyname:1,gethostent:1,getlogin:1,getnetbyaddr:1,getnetbyname:1,getnetent:1,getpeername:1,getpgrp:1,getppid:1,getpriority:1,getprotobyname:1,getprotobynumber:1,getprotoent:1,getpwent:1,getpwnam:1,getpwuid:1,getservbyname:1,getservbyport:1,getservent:1,getsockname:1,getsockopt:1,given:1,glob:1,gmtime:1,goto:1,grep:1,hex:1,import:1,index:1,int:1,ioctl:1,join:1,keys:1,kill:1,last:1,lc:1,lcfirst:1,length:1,link:1,listen:1,local:2,localtime:1,lock:1,log:1,lstat:1,m:null,map:1,mkdir:1,msgctl:1,msgget:1,msgrcv:1,msgsnd:1,my:2,new:1,next:1,no:1,oct:1,open:1,opendir:1,ord:1,our:2,pack:1,package:1,pipe:1,pop:1,pos:1,print:1,printf:1,prototype:1,push:1,q:null,qq:null,qr:null,quotemeta:null,qw:null,qx:null,rand:1,read:1,readdir:1,readline:1,readlink:1,readpipe:1,recv:1,redo:1,ref:1,rename:1,require:1,reset:1,return:1,reverse:1,rewinddir:1,rindex:1,rmdir:1,s:null,say:1,scalar:1,seek:1,seekdir:1,select:1,semctl:1,semget:1,semop:1,send:1,setgrent:1,sethostent:1,setnetent:1,setpgrp:1,setpriority:1,setprotoent:1,setpwent:1,setservent:1,setsockopt:1,shift:1,shmctl:1,shmget:1,shmread:1,shmwrite:1,shutdown:1,sin:1,sleep:1,socket:1,socketpair:1,sort:1,splice:1,split:1,sprintf:1,sqrt:1,srand:1,stat:1,state:1,study:1,sub:1,substr:1,symlink:1,syscall:1,sysopen:1,sysread:1,sysseek:1,system:1,syswrite:1,tell:1,telldir:1,tie:1,tied:1,time:1,times:1,tr:null,truncate:1,uc:1,ucfirst:1,umask:1,undef:1,unlink:1,unpack:1,unshift:1,untie:1,use:1,utime:1,values:1,vec:1,wait:1,waitpid:1,wantarray:1,warn:1,when:1,write:1,y:null},uX="string.special",hX=/[goseximacplud]/;function dX(e,t,n,r,i){return t.chain=null,t.style=null,t.tail=null,t.tokenize=function(e,t){for(var a,o=!1,s=0;a=e.next();){if(a===n[s]&&!o)return void 0!==n[++s]?(t.chain=n[s],t.style=r,t.tail=i):i&&e.eatWhile(i),t.tokenize=fX,r;o=!o&&"\\"==a}return r},t.tokenize(e,t)}function pX(e,t,n){return t.tokenize=function(e,t){return e.string==n&&(t.tokenize=fX),e.skipToEnd(),"string"},t.tokenize(e,t)}function fX(e,t){if(e.eatSpace())return null;if(t.chain)return dX(e,t,t.chain,t.style,t.tail);if(e.match(/^\-?[\d\.]/,!1)&&e.match(/^(\-?(\d*\.\d+(e[+-]?\d+)?|\d+\.\d*)|0x[\da-fA-F]+|0b[01]+|\d+(e[+-]?\d+)?)/))return"number";if(e.match(/^<<(?=[_a-zA-Z])/))return e.eatWhile(/\w/),pX(e,t,e.current().substr(2));if(e.sol()&&e.match(/^\=item(?!\w)/))return pX(e,t,"=cut");var n=e.next();if('"'==n||"'"==n){if(sX(e,3)=="<<"+n){var r=e.pos;e.eatWhile(/\w/);var i=e.current().substr(1);if(i&&e.eat(n))return pX(e,t,i);e.pos=r}return dX(e,t,[n],"string")}if("q"==n&&(!(a=oX(e,-2))||!/\w/.test(a)))if("x"==(a=oX(e,0))){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],uX,hX);if("["==a)return lX(e,2),dX(e,t,["]"],uX,hX);if("{"==a)return lX(e,2),dX(e,t,["}"],uX,hX);if("<"==a)return lX(e,2),dX(e,t,[">"],uX,hX);if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],uX,hX)}else if("q"==a){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],"string");if("["==a)return lX(e,2),dX(e,t,["]"],"string");if("{"==a)return lX(e,2),dX(e,t,["}"],"string");if("<"==a)return lX(e,2),dX(e,t,[">"],"string");if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],"string")}else if("w"==a){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],"bracket");if("["==a)return lX(e,2),dX(e,t,["]"],"bracket");if("{"==a)return lX(e,2),dX(e,t,["}"],"bracket");if("<"==a)return lX(e,2),dX(e,t,[">"],"bracket");if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],"bracket")}else if("r"==a){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],uX,hX);if("["==a)return lX(e,2),dX(e,t,["]"],uX,hX);if("{"==a)return lX(e,2),dX(e,t,["}"],uX,hX);if("<"==a)return lX(e,2),dX(e,t,[">"],uX,hX);if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],uX,hX)}else if(/[\^'"!~\/(\[{<]/.test(a)){if("("==a)return lX(e,1),dX(e,t,[")"],"string");if("["==a)return lX(e,1),dX(e,t,["]"],"string");if("{"==a)return lX(e,1),dX(e,t,["}"],"string");if("<"==a)return lX(e,1),dX(e,t,[">"],"string");if(/[\^'"!~\/]/.test(a))return dX(e,t,[e.eat(a)],"string")}if("m"==n&&((!(a=oX(e,-2))||!/\w/.test(a))&&(a=e.eat(/[(\[{<\^'"!~\/]/)))){if(/[\^'"!~\/]/.test(a))return dX(e,t,[a],uX,hX);if("("==a)return dX(e,t,[")"],uX,hX);if("["==a)return dX(e,t,["]"],uX,hX);if("{"==a)return dX(e,t,["}"],uX,hX);if("<"==a)return dX(e,t,[">"],uX,hX)}if("s"==n&&(!(a=/[\/>\]})\w]/.test(oX(e,-2)))&&(a=e.eat(/[(\[{<\^'"!~\/]/))))return dX(e,t,"["==a?["]","]"]:"{"==a?["}","}"]:"<"==a?[">",">"]:"("==a?[")",")"]:[a,a],uX,hX);if("y"==n&&(!(a=/[\/>\]})\w]/.test(oX(e,-2)))&&(a=e.eat(/[(\[{<\^'"!~\/]/))))return dX(e,t,"["==a?["]","]"]:"{"==a?["}","}"]:"<"==a?[">",">"]:"("==a?[")",")"]:[a,a],uX,hX);if("t"==n&&(!(a=/[\/>\]})\w]/.test(oX(e,-2)))&&(a=e.eat("r"))&&(a=e.eat(/[(\[{<\^'"!~\/]/))))return dX(e,t,"["==a?["]","]"]:"{"==a?["}","}"]:"<"==a?[">",">"]:"("==a?[")",")"]:[a,a],uX,hX);if("`"==n)return dX(e,t,[n],"builtin");if("/"==n)return/~\s*$/.test(sX(e))?dX(e,t,[n],uX,hX):"operator";if("$"==n){r=e.pos;if(e.eatWhile(/\d/)||e.eat("{")&&e.eatWhile(/\d/)&&e.eat("}"))return"builtin";e.pos=r}if(/[$@%]/.test(n)){r=e.pos;if(e.eat("^")&&e.eat(/[A-Z]/)||!/[@$%&]/.test(oX(e,-2))&&e.eat(/[=|\\\-#?@;:&`~\^!\[\]*'"$+.,\/<>()]/)){var a=e.current();if(cX[a])return"builtin"}e.pos=r}if(/[$@%&]/.test(n)&&(e.eatWhile(/[\w$]/)||e.eat("{")&&e.eatWhile(/[\w$]/)&&e.eat("}"))){a=e.current();return cX[a]?"builtin":"variable"}if("#"==n&&"$"!=oX(e,-2))return e.skipToEnd(),"comment";if(/[:+\-\^*$&%@=<>!?|\/~\.]/.test(n)){r=e.pos;if(e.eatWhile(/[:+\-\^*$&%@=<>!?|\/~\.]/),cX[e.current()])return"operator";e.pos=r}if("_"==n&&1==e.pos){if("_END__"==OX(e,6))return dX(e,t,["\0"],"comment");if("_DATA__"==OX(e,7))return dX(e,t,["\0"],"builtin");if("_C__"==OX(e,7))return dX(e,t,["\0"],"string")}if(/\w/.test(n)){r=e.pos;if("{"==oX(e,-2)&&("}"==oX(e,0)||e.eatWhile(/\w/)&&"}"==oX(e,0)))return"string";e.pos=r}if(/[A-Z]/.test(n)){var o=oX(e,-2);r=e.pos;if(e.eatWhile(/[A-Z_]/),!/[\da-z]/.test(oX(e,0)))return(a=cX[e.current()])?(a[1]&&(a=a[0]),":"!=o?1==a?"keyword":2==a?"def":3==a?"atom":4==a?"operator":5==a?"builtin":"meta":"meta"):"meta";e.pos=r}if(/[a-zA-Z_]/.test(n)){o=oX(e,-2);return e.eatWhile(/\w/),(a=cX[e.current()])?(a[1]&&(a=a[0]),":"!=o?1==a?"keyword":2==a?"def":3==a?"atom":4==a?"operator":5==a?"builtin":"meta":"meta"):"meta"}return null}const mX={startState:function(){return{tokenize:fX,chain:null,style:null,tail:null}},token:function(e,t){return(t.tokenize||fX)(e,t)},languageData:{commentTokens:{line:"#"},wordChars:"$"}};var gX=Object.freeze({__proto__:null,perl:mX});function QX(e){for(var t={},n=e.split(" "),r=0;r=&?:\/!|]/;function vX(e,t,n){return t.tokenize=n,n(e,t)}function SX(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=_X;break}r="*"==n}return"comment"}function _X(e,t){var n=e.next();return'"'==n||"'"==n?vX(e,t,function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=_X),"error"}}(n)):/[\[\]{}\(\),;\.]/.test(n)?null:/\d/.test(n)?(e.eatWhile(/[\w\.]/),"number"):"/"==n?e.eat("*")?vX(e,t,SX):(e.eatWhile(PX),"operator"):"-"==n?e.eat("-")?(e.skipToEnd(),"comment"):(e.eatWhile(PX),"operator"):PX.test(n)?(e.eatWhile(PX),"operator"):(e.eatWhile(/[\w\$_]/),kX&&kX.propertyIsEnumerable(e.current().toUpperCase())&&!e.eat(")")&&!e.eat(".")?"keyword":wX&&wX.propertyIsEnumerable(e.current().toUpperCase())?"builtin":yX&&yX.propertyIsEnumerable(e.current().toUpperCase())?"type":"variable")}const XX={startState:function(){return{tokenize:_X,startOfLine:!0}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{autocomplete:($X+xX+bX).split(" ")}};var TX=Object.freeze({__proto__:null,pig:XX});function RX(e,t){for(var n=void 0!==(t=t||{}).prefix?t.prefix:"^",r=void 0!==t.suffix?t.suffix:"\\b",i=0;i/],{suffix:""}),UX=RX([/Add-(Computer|Content|History|Member|PSSnapin|Type)/,/Checkpoint-Computer/,/Clear-(Content|EventLog|History|Host|Item(Property)?|Variable)/,/Compare-Object/,/Complete-Transaction/,/Connect-PSSession/,/ConvertFrom-(Csv|Json|SecureString|StringData)/,/Convert-Path/,/ConvertTo-(Csv|Html|Json|SecureString|Xml)/,/Copy-Item(Property)?/,/Debug-Process/,/Disable-(ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)/,/Disconnect-PSSession/,/Enable-(ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)/,/(Enter|Exit)-PSSession/,/Export-(Alias|Clixml|Console|Counter|Csv|FormatData|ModuleMember|PSSession)/,/ForEach-Object/,/Format-(Custom|List|Table|Wide)/,new RegExp("Get-(Acl|Alias|AuthenticodeSignature|ChildItem|Command|ComputerRestorePoint|Content|ControlPanelItem|Counter|Credential|Culture|Date|Event|EventLog|EventSubscriber|ExecutionPolicy|FormatData|Help|History|Host|HotFix|Item|ItemProperty|Job|Location|Member|Module|PfxCertificate|Process|PSBreakpoint|PSCallStack|PSDrive|PSProvider|PSSession|PSSessionConfiguration|PSSnapin|Random|Service|TraceSource|Transaction|TypeData|UICulture|Unique|Variable|Verb|WinEvent|WmiObject)"),/Group-Object/,/Import-(Alias|Clixml|Counter|Csv|LocalizedData|Module|PSSession)/,/ImportSystemModules/,/Invoke-(Command|Expression|History|Item|RestMethod|WebRequest|WmiMethod)/,/Join-Path/,/Limit-EventLog/,/Measure-(Command|Object)/,/Move-Item(Property)?/,new RegExp("New-(Alias|Event|EventLog|Item(Property)?|Module|ModuleManifest|Object|PSDrive|PSSession|PSSessionConfigurationFile|PSSessionOption|PSTransportOption|Service|TimeSpan|Variable|WebServiceProxy|WinEvent)"),/Out-(Default|File|GridView|Host|Null|Printer|String)/,/Pause/,/(Pop|Push)-Location/,/Read-Host/,/Receive-(Job|PSSession)/,/Register-(EngineEvent|ObjectEvent|PSSessionConfiguration|WmiEvent)/,/Remove-(Computer|Event|EventLog|Item(Property)?|Job|Module|PSBreakpoint|PSDrive|PSSession|PSSnapin|TypeData|Variable|WmiObject)/,/Rename-(Computer|Item(Property)?)/,/Reset-ComputerMachinePassword/,/Resolve-Path/,/Restart-(Computer|Service)/,/Restore-Computer/,/Resume-(Job|Service)/,/Save-Help/,/Select-(Object|String|Xml)/,/Send-MailMessage/,new RegExp("Set-(Acl|Alias|AuthenticodeSignature|Content|Date|ExecutionPolicy|Item(Property)?|Location|PSBreakpoint|PSDebug|PSSessionConfiguration|Service|StrictMode|TraceSource|Variable|WmiInstance)"),/Show-(Command|ControlPanelItem|EventLog)/,/Sort-Object/,/Split-Path/,/Start-(Job|Process|Service|Sleep|Transaction|Transcript)/,/Stop-(Computer|Job|Process|Service|Transcript)/,/Suspend-(Job|Service)/,/TabExpansion2/,/Tee-Object/,/Test-(ComputerSecureChannel|Connection|ModuleManifest|Path|PSSessionConfigurationFile)/,/Trace-Command/,/Unblock-File/,/Undo-Transaction/,/Unregister-(Event|PSSessionConfiguration)/,/Update-(FormatData|Help|List|TypeData)/,/Use-Transaction/,/Wait-(Event|Job|Process)/,/Where-Object/,/Write-(Debug|Error|EventLog|Host|Output|Progress|Verbose|Warning)/,/cd|help|mkdir|more|oss|prompt/,/ac|asnp|cat|cd|chdir|clc|clear|clhy|cli|clp|cls|clv|cnsn|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|dnsn|ebp/,/echo|epal|epcsv|epsn|erase|etsn|exsn|fc|fl|foreach|ft|fw|gal|gbp|gc|gci|gcm|gcs|gdr|ghy|gi|gjb|gl|gm|gmo|gp|gps/,/group|gsn|gsnp|gsv|gu|gv|gwmi|h|history|icm|iex|ihy|ii|ipal|ipcsv|ipmo|ipsn|irm|ise|iwmi|iwr|kill|lp|ls|man|md/,/measure|mi|mount|move|mp|mv|nal|ndr|ni|nmo|npssc|nsn|nv|ogv|oh|popd|ps|pushd|pwd|r|rbp|rcjb|rcsn|rd|rdr|ren|ri/,/rjb|rm|rmdir|rmo|rni|rnp|rp|rsn|rsnp|rujb|rv|rvpa|rwmi|sajb|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls/,/sort|sp|spjb|spps|spsv|start|sujb|sv|swmi|tee|trcm|type|where|wjb|write/],{prefix:"",suffix:""}),EX=RX([/[$?^_]|Args|ConfirmPreference|ConsoleFileName|DebugPreference|Error|ErrorActionPreference|ErrorView|ExecutionContext/,/FormatEnumerationLimit|Home|Host|Input|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount/,/MaximumHistoryCount|MaximumVariableCount|MyInvocation|NestedPromptLevel|OutputEncoding|Pid|Profile|ProgressPreference/,/PSBoundParameters|PSCommandPath|PSCulture|PSDefaultParameterValues|PSEmailServer|PSHome|PSScriptRoot|PSSessionApplicationName/,/PSSessionConfigurationName|PSSessionOption|PSUICulture|PSVersionTable|Pwd|ShellId|StackTrace|VerbosePreference/,/WarningPreference|WhatIfPreference/,/Event|EventArgs|EventSubscriber|Sender/,/Matches|Ofs|ForEach|LastExitCode|PSCmdlet|PSItem|PSSenderInfo|This/,/true|false|null/],{prefix:"\\$",suffix:""}),IX={keyword:zX,number:/^((0x[\da-f]+)|((\d+\.\d+|\d\.|\.\d+|\d+)(e[\+\-]?\d+)?))[ld]?([kmgtp]b)?/i,operator:ZX,builtin:RX([/[A-Z]:|%|\?/i,UX,EX],{suffix:WX}),punctuation:/[\[\]{},;`\\\.]|@[({]/,variable:/^[A-Za-z\_][A-Za-z\-\_\d]*\b/};function VX(e,t){var n=t.returnStack[t.returnStack.length-1];if(n&&n.shouldReturnFrom(t))return t.tokenize=n.tokenize,t.returnStack.pop(),t.tokenize(e,t);if(e.eatSpace())return null;if(e.eat("("))return t.bracketNesting+=1,"punctuation";if(e.eat(")"))return t.bracketNesting-=1,"punctuation";for(var r in IX)if(e.match(IX[r]))return r;var i=e.next();if("'"===i)return function(e,t){var n;for(;null!=(n=e.peek());)if(e.next(),"'"===n&&!e.eat("'"))return t.tokenize=VX,"string";return"error"}(e,t);if("$"===i)return DX(e,t);if('"'===i)return CX(e,t);if("<"===i&&e.eat("#"))return t.tokenize=NX,NX(e,t);if("#"===i)return e.skipToEnd(),"comment";if("@"===i){var a=e.eat(/["']/);if(a&&e.eol())return t.tokenize=FX,t.startQuote=a[0],FX(e,t);if(e.eol())return"error";if(e.peek().match(/[({]/))return"punctuation";if(e.peek().match(qX))return DX(e,t)}return"error"}function CX(e,t){for(var n;null!=(n=e.peek());){if("$"===n)return t.tokenize=AX,"string";if(e.next(),"`"!==n){if('"'===n&&!e.eat('"'))return t.tokenize=VX,"string"}else e.next()}return"error"}function AX(e,t){return LX(e,t,CX)}function GX(e,t){return t.tokenize=FX,t.startQuote='"',FX(e,t)}function jX(e,t){return LX(e,t,GX)}function LX(e,t,n){if(e.match("$(")){var r=t.bracketNesting;return t.returnStack.push({shouldReturnFrom:function(e){return e.bracketNesting===r},tokenize:n}),t.tokenize=VX,t.bracketNesting+=1,"punctuation"}return e.next(),t.returnStack.push({shouldReturnFrom:function(){return!0},tokenize:n}),t.tokenize=DX,t.tokenize(e,t)}function NX(e,t){for(var n,r=!1;null!=(n=e.next());){if(r&&">"==n){t.tokenize=VX;break}r="#"===n}return"comment"}function DX(e,t){var n=e.peek();return e.eat("{")?(t.tokenize=MX,MX(e,t)):null!=n&&n.match(qX)?(e.eatWhile(qX),t.tokenize=VX,"variable"):(t.tokenize=VX,"error")}function MX(e,t){for(var n;null!=(n=e.next());)if("}"===n){t.tokenize=VX;break}return"variable"}function FX(e,t){var n=t.startQuote;if(e.sol()&&e.match(new RegExp(n+"@")))t.tokenize=VX;else if('"'===n)for(;!e.eol();){var r=e.peek();if("$"===r)return t.tokenize=jX,"string";e.next(),"`"===r&&e.next()}else e.skipToEnd();return"string"}const BX={startState:function(){return{returnStack:[],bracketNesting:0,tokenize:VX}},token:function(e,t){return t.tokenize(e,t)},languageData:{commentTokens:{line:"#",block:{open:"<#",close:"#>"}}}};var HX=Object.freeze({__proto__:null,powerShell:BX});var KX=Object.freeze({__proto__:null,properties:{token:function(e,t){var n=e.sol()||t.afterSection,r=e.eol();if(t.afterSection=!1,n&&(t.nextMultiline?(t.inMultiline=!0,t.nextMultiline=!1):t.position="def"),r&&!t.nextMultiline&&(t.inMultiline=!1,t.position="def"),n)for(;e.eatSpace(););var i=e.next();return!n||"#"!==i&&"!"!==i&&";"!==i?n&&"["===i?(t.afterSection=!0,e.skipTo("]"),e.eat("]"),"header"):"="===i||":"===i?(t.position="quote",null):("\\"===i&&"quote"===t.position&&e.eol()&&(t.nextMultiline=!0),t.position):(t.position="comment",e.skipToEnd(),"comment")},startState:function(){return{position:"def",nextMultiline:!1,inMultiline:!1,afterSection:!1}}}});var JX=["package","message","import","syntax","required","optional","repeated","reserved","default","extensions","packed","bool","bytes","double","enum","float","string","int32","int64","uint32","uint64","sint32","sint64","fixed32","fixed64","sfixed32","sfixed64","option","service","rpc","returns"],eT=function(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}(JX),tT=new RegExp("^[_A-Za-z¡-￿][_A-Za-z0-9¡-￿]*");const nT={token:function(e){if(e.eatSpace())return null;if(e.match("//"))return e.skipToEnd(),"comment";if(e.match(/^[0-9\.+-]/,!1)){if(e.match(/^[+-]?0x[0-9a-fA-F]+/))return"number";if(e.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?/))return"number";if(e.match(/^[+-]?\d+([EeDd][+-]?\d+)?/))return"number"}return e.match(/^"([^"]|(""))*"/)||e.match(/^'([^']|(''))*'/)?"string":e.match(eT)?"keyword":e.match(tT)?"variable":(e.next(),null)},languageData:{autocomplete:JX}};var rT=Object.freeze({__proto__:null,protobuf:nT}),iT={},aT=/({)?([a-z][a-z0-9_]*)?((::[a-z][a-z0-9_]*)*::)?[a-zA-Z0-9_]+(})?/;function oT(e,t){for(var n=t.split(" "),r=0;r.*/,!1),i=e.match(/(\s+)?[\w:_]+(\s+)?{/,!1),a=e.match(/(\s+)?[@]{1,2}[\w:_]+(\s+)?{/,!1),o=e.next();if("$"===o)return e.match(aT)?t.continueString?"variableName.special":"variable":"error";if(t.continueString)return e.backUp(1),sT(e,t);if(t.inDefinition){if(e.match(/(\s+)?[\w:_]+(\s+)?/))return"def";e.match(/\s+{/),t.inDefinition=!1}return t.inInclude?(e.match(/(\s+)?\S+(\s+)?/),t.inInclude=!1,"def"):e.match(/(\s+)?\w+\(/)?(e.backUp(1),"def"):r?(e.match(/(\s+)?\w+/),"tag"):n&&iT.hasOwnProperty(n)?(e.backUp(1),e.match(/[\w]+/),e.match(/\s+\S+\s+{/,!1)&&(t.inDefinition=!0),"include"==n&&(t.inInclude=!0),iT[n]):/(^|\s+)[A-Z][\w:_]+/.test(n)?(e.backUp(1),e.match(/(^|\s+)[A-Z][\w:_]+/),"def"):i?(e.match(/(\s+)?[\w:_]+/),"def"):a?(e.match(/(\s+)?[@]{1,2}/),"atom"):"#"==o?(e.skipToEnd(),"comment"):"'"==o||'"'==o?(t.pending=o,sT(e,t)):"{"==o||"}"==o?"bracket":"/"==o?(e.match(/^[^\/]*\//),"string.special"):o.match(/[0-9]/)?(e.eatWhile(/[0-9]+/),"number"):"="==o?(">"==e.peek()&&e.next(),"operator"):(e.eatWhile(/[\w-]/),null)}(e,t)}};var lT,cT=Object.freeze({__proto__:null,puppet:OT}),uT=new RegExp("^("+["abs","acos","aj","aj0","all","and","any","asc","asin","asof","atan","attr","avg","avgs","bin","by","ceiling","cols","cor","cos","count","cov","cross","csv","cut","delete","deltas","desc","dev","differ","distinct","div","do","each","ej","enlist","eval","except","exec","exit","exp","fby","fills","first","fkeys","flip","floor","from","get","getenv","group","gtime","hclose","hcount","hdel","hopen","hsym","iasc","idesc","if","ij","in","insert","inter","inv","key","keys","last","like","list","lj","load","log","lower","lsq","ltime","ltrim","mavg","max","maxs","mcount","md5","mdev","med","meta","min","mins","mmax","mmin","mmu","mod","msum","neg","next","not","null","or","over","parse","peach","pj","plist","prd","prds","prev","prior","rand","rank","ratios","raze","read0","read1","reciprocal","reverse","rload","rotate","rsave","rtrim","save","scan","select","set","setenv","show","signum","sin","sqrt","ss","ssr","string","sublist","sum","sums","sv","system","tables","tan","til","trim","txf","type","uj","ungroup","union","update","upper","upsert","value","var","view","views","vs","wavg","where","where","while","within","wj","wj1","wsum","xasc","xbar","xcol","xcols","xdesc","xexp","xgroup","xkey","xlog","xprev","xrank"].join("|")+")$"),hT=/[|/&^!+:\\\-*%$=~#;@><,?_\'\"\[\(\]\)\s{}]/;function dT(e,t){var n=e.sol(),r=e.next();if(lT=null,n){if("/"==r)return(t.tokenize=pT)(e,t);if("\\"==r)return e.eol()||/\s/.test(e.peek())?(e.skipToEnd(),/^\\\s*$/.test(e.current())?(t.tokenize=mT)(e):t.tokenize=dT,"comment"):(t.tokenize=dT,"builtin")}if(/\s/.test(r))return"/"==e.peek()?(e.skipToEnd(),"comment"):"null";if('"'==r)return(t.tokenize=gT)(e,t);if("`"==r)return e.eatWhile(/[A-Za-z\d_:\/.]/),"macroName";if("."==r&&/\d/.test(e.peek())||/\d/.test(r)){var i=null;return e.backUp(1),e.match(/^\d{4}\.\d{2}(m|\.\d{2}([DT](\d{2}(:\d{2}(:\d{2}(\.\d{1,9})?)?)?)?)?)/)||e.match(/^\d+D(\d{2}(:\d{2}(:\d{2}(\.\d{1,9})?)?)?)/)||e.match(/^\d{2}:\d{2}(:\d{2}(\.\d{1,9})?)?/)||e.match(/^\d+[ptuv]{1}/)?i="temporal":(e.match(/^0[NwW]{1}/)||e.match(/^0x[\da-fA-F]*/)||e.match(/^[01]+[b]{1}/)||e.match(/^\d+[chijn]{1}/)||e.match(/-?\d*(\.\d*)?(e[+\-]?\d+)?(e|f)?/))&&(i="number"),!i||(r=e.peek())&&!hT.test(r)?(e.next(),"error"):i}return/[A-Za-z]|\./.test(r)?(e.eatWhile(/[A-Za-z._\d]/),uT.test(e.current())?"keyword":"variable"):/[|/&^!+:\\\-*%$=~#;@><\.,?_\']/.test(r)||/[{}\(\[\]\)]/.test(r)?null:"error"}function pT(e,t){return e.skipToEnd(),/\/\s*$/.test(e.current())?(t.tokenize=fT)(e,t):t.tokenize=dT,"comment"}function fT(e,t){var n=e.sol()&&"\\"==e.peek();return e.skipToEnd(),n&&/^\\\s*$/.test(e.current())&&(t.tokenize=dT),"comment"}function mT(e){return e.skipToEnd(),"comment"}function gT(e,t){for(var n,r=!1,i=!1;n=e.next();){if('"'==n&&!r){i=!0;break}r=!r&&"\\"==n}return i&&(t.tokenize=dT),"string"}function QT(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function $T(e){e.indent=e.context.indent,e.context=e.context.prev}const bT={startState:function(){return{tokenize:dT,context:null,indent:0,col:0}},token:function(e,t){e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation());var n=t.tokenize(e,t);if("comment"!=n&&t.context&&null==t.context.align&&"pattern"!=t.context.type&&(t.context.align=!0),"("==lT)QT(t,")",e.column());else if("["==lT)QT(t,"]",e.column());else if("{"==lT)QT(t,"}",e.column());else if(/[\]\}\)]/.test(lT)){for(;t.context&&"pattern"==t.context.type;)$T(t);t.context&&lT==t.context.type&&$T(t)}else"."==lT&&t.context&&"pattern"==t.context.type?$T(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?QT(t,"pattern",e.column()):"pattern"!=t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"==i.type;)i=i.prev;var a=i&&r==i.type;return i?"pattern"==i.type?i.col:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0}};var xT=Object.freeze({__proto__:null,q:bT});function wT(e){for(var t={},n=0;n=!&|~$:]/;function WT(e,t){kT=null;var n=e.next();if("#"==n)return e.skipToEnd(),"comment";if("0"==n&&e.eat("x"))return e.eatWhile(/[\da-f]/i),"number";if("."==n&&e.eat(/\d/))return e.match(/\d*(?:e[+\-]?\d+)?/),"number";if(/\d/.test(n))return e.match(/\d*(?:\.\d+)?(?:e[+\-]\d+)?L?/),"number";if("'"==n||'"'==n)return t.tokenize=function(e){return function(t,n){if(t.eat("\\")){var r=t.next();return"x"==r?t.match(/^[a-f0-9]{2}/i):("u"==r||"U"==r)&&t.eat("{")&&t.skipTo("}")?t.next():"u"==r?t.match(/^[a-f0-9]{4}/i):"U"==r?t.match(/^[a-f0-9]{8}/i):/[0-7]/.test(r)&&t.match(/^[0-7]{1,2}/),"string.special"}for(var i;null!=(i=t.next());){if(i==e){n.tokenize=WT;break}if("\\"==i){t.backUp(1);break}}return"string"}}(n),"string";if("`"==n)return e.match(/[^`]+`/),"string.special";if("."==n&&e.match(/.(?:[.]|\d+)/))return"keyword";if(/[a-zA-Z\.]/.test(n)){e.eatWhile(/[\w\.]/);var r=e.current();return ST.propertyIsEnumerable(r)?"atom":XT.propertyIsEnumerable(r)?(TT.propertyIsEnumerable(r)&&!e.match(/\s*if(\s+|$)/,!1)&&(kT="block"),"keyword"):_T.propertyIsEnumerable(r)?"builtin":"variable"}return"%"==n?(e.skipTo("%")&&e.next(),"variableName.special"):"<"==n&&e.eat("-")||"<"==n&&e.match("<-")||"-"==n&&e.match(/>>?/)||"="==n&&t.ctx.argList?"operator":RT.test(n)?("$"==n||e.eatWhile(RT),"operator"):/[\(\){}\[\];]/.test(n)?(kT=n,";"==n?"punctuation":null):null}function qT(e,t,n){e.ctx={type:t,indent:e.indent,flags:0,column:n.column(),prev:e.ctx}}function zT(e,t){var n=e.ctx;e.ctx={type:n.type,indent:n.indent,flags:n.flags|t,column:n.column,prev:n.prev}}function YT(e){e.indent=e.ctx.indent,e.ctx=e.ctx.prev}const ZT={startState:function(e){return{tokenize:WT,ctx:{type:"top",indent:-e,flags:2},indent:0,afterIdent:!1}},token:function(e,t){if(e.sol()&&(0==(3&t.ctx.flags)&&(t.ctx.flags|=2),4&t.ctx.flags&&YT(t),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);return"comment"!=n&&0==(2&t.ctx.flags)&&zT(t,1),";"!=kT&&"{"!=kT&&"}"!=kT||"block"!=t.ctx.type||YT(t),"{"==kT?qT(t,"}",e):"("==kT?(qT(t,")",e),t.afterIdent&&(t.ctx.argList=!0)):"["==kT?qT(t,"]",e):"block"==kT?qT(t,"block",e):kT==t.ctx.type?YT(t):"block"==t.ctx.type&&"comment"!=n&&zT(t,4),t.afterIdent="variable"==n||"keyword"==n,n},indent:function(e,t,n){if(e.tokenize!=WT)return 0;var r=t&&t.charAt(0),i=e.ctx,a=r==i.type;return 4&i.flags&&(i=i.prev),"block"==i.type?i.indent+("{"==r?0:n.unit):1&i.flags?i.column+(a?0:1):i.indent+(a?0:n.unit)},languageData:{wordChars:".",commentTokens:{line:"#"},autocomplete:yT.concat(PT,vT)}};var UT=Object.freeze({__proto__:null,r:ZT}),ET=/^-+$/,IT=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ?\d{1,2} \d{2}:\d{2}(:\d{2})? [A-Z]{3,4} \d{4} - /,VT=/^[\w+.-]+@[\w.-]+/;const CT={token:function(e){if(e.sol()){if(e.match(ET))return"tag";if(e.match(IT))return"tag"}return e.match(VT)?"string":(e.next(),null)}};var AT=/^(i386|i586|i686|x86_64|ppc64le|ppc64|ppc|ia64|s390x|s390|sparc64|sparcv9|sparc|noarch|alphaev6|alpha|hppa|mipsel)/,GT=/^[a-zA-Z0-9()]+:/,jT=/^%(debug_package|package|description|prep|build|install|files|clean|changelog|preinstall|preun|postinstall|postun|pretrans|posttrans|pre|post|triggerin|triggerun|verifyscript|check|triggerpostun|triggerprein|trigger)/,LT=/^%(ifnarch|ifarch|if)/,NT=/^%(else|endif)/,DT=/^(\!|\?|\<\=|\<|\>\=|\>|\=\=|\&\&|\|\|)/;const MT={startState:function(){return{controlFlow:!1,macroParameters:!1,section:!1}},token:function(e,t){if("#"==e.peek())return e.skipToEnd(),"comment";if(e.sol()){if(e.match(GT))return"header";if(e.match(jT))return"atom"}if(e.match(/^\$\w+/))return"def";if(e.match(/^\$\{\w+\}/))return"def";if(e.match(NT))return"keyword";if(e.match(LT))return t.controlFlow=!0,"keyword";if(t.controlFlow){if(e.match(DT))return"operator";if(e.match(/^(\d+)/))return"number";e.eol()&&(t.controlFlow=!1)}if(e.match(AT))return e.eol()&&(t.controlFlow=!1),"number";if(e.match(/^%[\w]+/))return e.match("(")&&(t.macroParameters=!0),"keyword";if(t.macroParameters){if(e.match(/^\d+/))return"number";if(e.match(")"))return t.macroParameters=!1,"keyword"}return e.match(/^%\{\??[\w \-\:\!]+\}/)?(e.eol()&&(t.controlFlow=!1),"def"):(e.next(),null)}};var FT=Object.freeze({__proto__:null,rpmChanges:CT,rpmSpec:MT});function BT(e){for(var t={},n=0,r=e.length;n-1)r++;else if("]})".indexOf(t)>-1){if(--r<0)break}else if("/"==t&&0==r){i=!0;break}a="\\"==t}return e.backUp(e.pos-n),i}(e)?iR(OR(a,"string.special",!0),e,t):"operator";if("%"==a){var o="string",s=!0;e.eat("s")?o="atom":e.eat(/[WQ]/)?o="string":e.eat(/[r]/)?o="string.special":e.eat(/[wxq]/)&&(o="string",s=!1);var O=e.eat(/[^\w\s=]/);return O?(nR.propertyIsEnumerable(O)&&(O=nR[O]),iR(OR(O,o,s,!0),e,t)):"operator"}if("#"==a)return e.skipToEnd(),"comment";if("<"==a&&(n=e.match(/^<([-~])[\`\"\']?([a-zA-Z_?]\w*)[\`\"\']?(?:;|$)/)))return iR((r=n[2],i=n[1],function(e,t){return i&&e.eatSpace(),e.match(r)?t.tokenize.pop():e.skipToEnd(),"string"}),e,t);if("0"==a)return e.eat("x")?e.eatWhile(/[\da-fA-F]/):e.eat("b")?e.eatWhile(/[01]/):e.eatWhile(/[0-7]/),"number";if(/\d/.test(a))return e.match(/^[\d_]*(?:\.[\d_]+)?(?:[eE][+\-]?[\d_]+)?/),"number";if("?"==a){for(;e.match(/^\\[CM]-/););return e.eat("\\")?e.eatWhile(/\w/):e.next(),"string"}if(":"==a)return e.eat("'")?iR(OR("'","atom",!1),e,t):e.eat('"')?iR(OR('"',"atom",!0),e,t):e.eat(/[\<\>]/)?(e.eat(/[\<\>]/),"atom"):e.eat(/[\+\-\*\/\&\|\:\!]/)?"atom":e.eat(/[a-zA-Z$@_\xa1-\uffff]/)?(e.eatWhile(/[\w$\xa1-\uffff]/),e.eat(/[\?\!\=]/),"atom"):"operator";if("@"==a&&e.match(/^@?[a-zA-Z_\xa1-\uffff]/))return e.eat("@"),e.eatWhile(/[\w\xa1-\uffff]/),"propertyName";if("$"==a)return e.eat(/[a-zA-Z_]/)?e.eatWhile(/[\w]/):e.eat(/\d/)?e.eat(/\d/):e.next(),"variableName.special";if(/[a-zA-Z_\xa1-\uffff]/.test(a))return e.eatWhile(/[\w\xa1-\uffff]/),e.eat(/[\?\!]/),e.eat(":")?"atom":"variable";if("|"!=a||!t.varList&&"{"!=t.lastTok&&"do"!=t.lastTok){if(/[\(\)\[\]{}\\;]/.test(a))return HT=a,null;if("-"==a&&e.eat(">"))return"operator";if(/[=+\-\/*:\.^%<>~|]/.test(a)){var l=e.eatWhile(/[=+\-\/*:\.^%<>~|]/);return"."!=a||l||(HT="."),"operator"}return null}return HT="|",null}function oR(e){return e||(e=1),function(t,n){if("}"==t.peek()){if(1==e)return n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n);n.tokenize[n.tokenize.length-1]=oR(e-1)}else"{"==t.peek()&&(n.tokenize[n.tokenize.length-1]=oR(e+1));return aR(t,n)}}function sR(){var e=!1;return function(t,n){return e?(n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n)):(e=!0,aR(t,n))}}function OR(e,t,n,r){return function(i,a){var o,s=!1;for("read-quoted-paused"===a.context.type&&(a.context=a.context.prev,i.eat("}"));null!=(o=i.next());){if(o==e&&(r||!s)){a.tokenize.pop();break}if(n&&"#"==o&&!s){if(i.eat("{")){"}"==e&&(a.context={prev:a.context,type:"read-quoted-paused"}),a.tokenize.push(oR());break}if(/[@\$]/.test(i.peek())){a.tokenize.push(sR());break}}s=!s&&"\\"==o}return t}}function lR(e,t){return e.sol()&&e.match("=end")&&e.eol()&&t.tokenize.pop(),e.skipToEnd(),"comment"}const cR={startState:function(e){return{tokenize:[aR],indented:0,context:{type:"top",indented:-e},continuedLine:!1,lastTok:null,varList:!1}},token:function(e,t){HT=null,e.sol()&&(t.indented=e.indentation());var n,r=t.tokenize[t.tokenize.length-1](e,t),i=HT;if("variable"==r){var a=e.current();"keyword"==(r="."==t.lastTok?"property":JT.propertyIsEnumerable(e.current())?"keyword":/^[A-Z]/.test(a)?"tag":"def"==t.lastTok||"class"==t.lastTok||t.varList?"def":"variable")&&(i=a,eR.propertyIsEnumerable(a)?n="indent":tR.propertyIsEnumerable(a)?n="dedent":"if"!=a&&"unless"!=a||e.column()!=e.indentation()?"do"==a&&t.context.indented=|!=|<>)/,fR=/[=\(:\),{}.*<>+\-\/^\[\]]/;function mR(e,t,n){if(n)for(var r=t.split(" "),i=0;iinteger char-alphabetic? char-ci<=? char-ci=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt #f floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string=? string>? string? substring symbol->string symbol? #t tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?"),vR=yR("define let letrec let* lambda define-macro defmacro let-syntax letrec-syntax let-values let*-values define-syntax syntax-rules define-values when unless");function SR(e,t,n){this.indent=e,this.type=t,this.prev=n}function _R(e,t,n){e.indentStack=new SR(t,n,e.indentStack)}var XR=new RegExp(/^(?:[-+]i|[-+][01]+#*(?:\/[01]+#*)?i|[-+]?[01]+#*(?:\/[01]+#*)?@[-+]?[01]+#*(?:\/[01]+#*)?|[-+]?[01]+#*(?:\/[01]+#*)?[-+](?:[01]+#*(?:\/[01]+#*)?)?i|[-+]?[01]+#*(?:\/[01]+#*)?)(?=[()\s;"]|$)/i),TR=new RegExp(/^(?:[-+]i|[-+][0-7]+#*(?:\/[0-7]+#*)?i|[-+]?[0-7]+#*(?:\/[0-7]+#*)?@[-+]?[0-7]+#*(?:\/[0-7]+#*)?|[-+]?[0-7]+#*(?:\/[0-7]+#*)?[-+](?:[0-7]+#*(?:\/[0-7]+#*)?)?i|[-+]?[0-7]+#*(?:\/[0-7]+#*)?)(?=[()\s;"]|$)/i),RR=new RegExp(/^(?:[-+]i|[-+][\da-f]+#*(?:\/[\da-f]+#*)?i|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?@[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?[-+](?:[\da-f]+#*(?:\/[\da-f]+#*)?)?i|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?)(?=[()\s;"]|$)/i),WR=new RegExp(/^(?:[-+]i|[-+](?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)i|[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)@[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)|[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)[-+](?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)?i|(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*))(?=[()\s;"]|$)/i);function qR(e){return e.match(XR)}function zR(e){return e.match(TR)}function YR(e,t){return!0===t&&e.backUp(1),e.match(WR)}function ZR(e){return e.match(RR)}const UR={startState:function(){return{indentStack:null,indentation:0,mode:!1,sExprComment:!1,sExprQuote:!1}},token:function(e,t){if(null==t.indentStack&&e.sol()&&(t.indentation=e.indentation()),e.eatSpace())return null;var n=null;switch(t.mode){case"string":for(var r=!1;null!=(i=e.next());){if('"'==i&&!r){t.mode=!1;break}r=!r&&"\\"==i}n=bR;break;case"comment":for(var i,a=!1;null!=(i=e.next());){if("#"==i&&a){t.mode=!1;break}a="|"==i}n=$R;break;case"s-expr-comment":if(t.mode=!1,"("!=e.peek()&&"["!=e.peek()){e.eatWhile(/[^\s\(\)\[\]]/),n=$R;break}t.sExprComment=0;default:var o=e.next();if('"'==o)t.mode="string",n=bR;else if("'"==o)"("==e.peek()||"["==e.peek()?("number"!=typeof t.sExprQuote&&(t.sExprQuote=0),n=xR):(e.eatWhile(/[\w_\-!$%&*+\.\/:<=>?@\^~]/),n=xR);else if("#"==o)if(e.eat("|"))t.mode="comment",n=$R;else if(e.eat(/[tf]/i))n=xR;else if(e.eat(";"))t.mode="s-expr-comment",n=$R;else{var s=null,O=!1,l=!0;e.eat(/[ei]/i)?O=!0:e.backUp(1),e.match(/^#b/i)?s=qR:e.match(/^#o/i)?s=zR:e.match(/^#x/i)?s=ZR:e.match(/^#d/i)?s=YR:e.match(/^[-+0-9.]/,!1)?(l=!1,s=YR):O||e.eat("#"),null!=s&&(l&&!O&&e.match(/^#[ei]/i),s(e)&&(n=wR))}else if(/^[-+0-9.]/.test(o)&&YR(e,!0))n=wR;else if(";"==o)e.skipToEnd(),n=$R;else if("("==o||"["==o){for(var c,u="",h=e.column();null!=(c=e.eat(/[^\s\(\[\;\)\]]/));)u+=c;u.length>0&&vR.propertyIsEnumerable(u)?_R(t,h+2,o):(e.eatSpace(),e.eol()||";"==e.peek()?_R(t,h+1,o):_R(t,h+e.current().length,o)),e.backUp(e.current().length-1),"number"==typeof t.sExprComment&&t.sExprComment++,"number"==typeof t.sExprQuote&&t.sExprQuote++,n=kR}else")"==o||"]"==o?(n=kR,null!=t.indentStack&&t.indentStack.type==(")"==o?"(":"[")&&(!function(e){e.indentStack=e.indentStack.prev}(t),"number"==typeof t.sExprComment&&0==--t.sExprComment&&(n=$R,t.sExprComment=!1),"number"==typeof t.sExprQuote&&0==--t.sExprQuote&&(n=xR,t.sExprQuote=!1))):(e.eatWhile(/[\w_\-!$%&*+\.\/:<=>?@\^~]/),n=PR&&PR.propertyIsEnumerable(e.current())?"builtin":"variable")}return"number"==typeof t.sExprComment?$R:"number"==typeof t.sExprQuote?xR:n},indent:function(e){return null==e.indentStack?e.indentation:e.indentStack.indent},languageData:{closeBrackets:{brackets:["(","[","{",'"']},commentTokens:{line:";;"}}};var ER=Object.freeze({__proto__:null,scheme:UR}),IR={};function VR(e,t){for(var n=0;n1&&e.eat("$");var n=e.next();return/['"({]/.test(n)?(t.tokens[0]=LR(n,"("==n?"quote":"{"==n?"def":"string"),MR(e,t)):(/\d/.test(n)||e.eatWhile(/\w/),t.tokens.shift(),"def")};function MR(e,t){return(t.tokens[0]||jR)(e,t)}const FR={startState:function(){return{tokens:[]}},token:function(e,t){return MR(e,t)},languageData:{autocomplete:CR.concat(AR,GR),closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"#"}}};var BR=Object.freeze({__proto__:null,shell:FR});function HR(e){for(var t={},n=e.split(" "),r=0;r=@%|&?!.,:;^]/,oW=/true|false|nil|self|super|thisContext/,sW=function(e,t){this.next=e,this.parent=t},OW=function(e,t,n){this.name=e,this.context=t,this.eos=n},lW=function(){this.context=new sW(cW,null),this.expectVariable=!0,this.indentation=0,this.userIndentationDelta=0};lW.prototype.userIndent=function(e,t){this.userIndentationDelta=e>0?e/t-this.indentation:0};var cW=function(e,t,n){var r=new OW(null,t,!1),i=e.next();return'"'===i?r=uW(e,new sW(uW,t)):"'"===i?r=hW(e,new sW(hW,t)):"#"===i?"'"===e.peek()?(e.next(),r=dW(e,new sW(dW,t))):e.eatWhile(/[^\s.{}\[\]()]/)?r.name="string.special":r.name="meta":"$"===i?("<"===e.next()&&(e.eatWhile(/[^\s>]/),e.next()),r.name="string.special"):"|"===i&&n.expectVariable?r.context=new sW(pW,t):/[\[\]{}()]/.test(i)?(r.name="bracket",r.eos=/[\[{(]/.test(i),"["===i?n.indentation++:"]"===i&&(n.indentation=Math.max(0,n.indentation-1))):aW.test(i)?(e.eatWhile(aW),r.name="operator",r.eos=";"!==i):/\d/.test(i)?(e.eatWhile(/[\w\d]/),r.name="number"):/[\w_]/.test(i)?(e.eatWhile(/[\w\d_]/),r.name=n.expectVariable?oW.test(e.current())?"keyword":"variable":null):r.eos=n.expectVariable,r},uW=function(e,t){return e.eatWhile(/[^"]/),new OW("comment",e.eat('"')?t.parent:t,!0)},hW=function(e,t){return e.eatWhile(/[^']/),new OW("string",e.eat("'")?t.parent:t,!1)},dW=function(e,t){return e.eatWhile(/[^']/),new OW("string.special",e.eat("'")?t.parent:t,!1)},pW=function(e,t){var n=new OW(null,t,!1);return"|"===e.next()?(n.context=t.parent,n.eos=!0):(e.eatWhile(/[^|]/),n.name="variable"),n};const fW={startState:function(){return new lW},token:function(e,t){if(t.userIndent(e.indentation(),e.indentUnit),e.eatSpace())return null;var n=t.context.next(e,t.context,t);return t.context=n.context,t.expectVariable=n.eos,n.name},blankLine:function(e,t){e.userIndent(0,t)},indent:function(e,t,n){var r=e.context.next===cW&&t&&"]"===t.charAt(0)?-1:e.userIndentationDelta;return(e.indentation+r)*n.unit},languageData:{indentOnInput:/^\s*\]$/}};var mW=Object.freeze({__proto__:null,smalltalk:fW}),gW=/[^\s\|\!\+\-\*\?\~\^\&\:\(\)\[\]\{\}\"\\]/,QW=/[\|\!\+\-\*\?\~\^\&]/,$W=/^(OR|AND|NOT|TO)$/i;function bW(e){return function(t,n){for(var r=e;(e=t.peek())&&null!=e.match(gW);)r+=t.next();return n.tokenize=xW,$W.test(r)?"operator":function(e){return parseFloat(e).toString()===e}(r)?"number":":"==t.peek()?"propertyName":"string"}}function xW(e,t){var n=e.next();return'"'==n?t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next())&&(r!=e||i);)i=!i&&"\\"==r;return i||(n.tokenize=xW),"string"}}(n):QW.test(n)?t.tokenize=function(e){return function(t,n){return"|"==e?t.eat(/\|/):"&"==e&&t.eat(/\&/),n.tokenize=xW,"operator"}}(n):gW.test(n)&&(t.tokenize=bW(n)),t.tokenize!=xW?t.tokenize(e,t):null}const wW={startState:function(){return{tokenize:xW}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)}};var kW,yW=Object.freeze({__proto__:null,solr:wW});function PW(e){return new RegExp("^(?:"+e.join("|")+")$","i")}var vW=PW(["str","lang","langmatches","datatype","bound","sameterm","isiri","isuri","iri","uri","bnode","count","sum","min","max","avg","sample","group_concat","rand","abs","ceil","floor","round","concat","substr","strlen","replace","ucase","lcase","encode_for_uri","contains","strstarts","strends","strbefore","strafter","year","month","day","hours","minutes","seconds","timezone","tz","now","uuid","struuid","md5","sha1","sha256","sha384","sha512","coalesce","if","strlang","strdt","isnumeric","regex","exists","isblank","isliteral","a","bind"]),SW=PW(["base","prefix","select","distinct","reduced","construct","describe","ask","from","named","where","order","limit","offset","filter","optional","graph","by","asc","desc","as","having","undef","values","group","minus","in","not","service","silent","using","insert","delete","union","true","false","with","data","copy","to","move","add","create","drop","clear","load"]),_W=/[*+\-<>=&|\^\/!\?]/;function XW(e,t){var n=e.next();if(kW=null,"$"==n||"?"==n)return"?"==n&&e.match(/\s/,!1)?"operator":(e.match(/^[A-Za-z0-9_\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][A-Za-z0-9_\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]*/),"variableName.local");if("<"!=n||e.match(/^[\s\u00a0=]/,!1)){if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){n.tokenize=XW;break}i=!i&&"\\"==r}return"string"}}(n),t.tokenize(e,t);if(/[{}\(\),\.;\[\]]/.test(n))return kW=n,"bracket";if("#"==n)return e.skipToEnd(),"comment";if("^"===n)return"^"===(n=e.peek())?e.eat("^"):e.eatWhile(_W),"operator";if(_W.test(n))return e.eatWhile(_W),"operator";if(":"==n)return TW(e),"atom";if("@"==n)return e.eatWhile(/[a-z\d\-]/i),"meta";if(e.eatWhile(/[_\w\d]/),e.eat(":"))return TW(e),"atom";var r=e.current();return vW.test(r)?"builtin":SW.test(r)?"keyword":"variable"}return e.match(/^[^\s\u00a0>]*>?/),"atom"}function TW(e){e.match(/(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])+/i)}function RW(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function WW(e){e.indent=e.context.indent,e.context=e.context.prev}const qW={startState:function(){return{tokenize:XW,context:null,indent:0,col:0}},token:function(e,t){if(e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"!=n&&t.context&&null==t.context.align&&"pattern"!=t.context.type&&(t.context.align=!0),"("==kW)RW(t,")",e.column());else if("["==kW)RW(t,"]",e.column());else if("{"==kW)RW(t,"}",e.column());else if(/[\]\}\)]/.test(kW)){for(;t.context&&"pattern"==t.context.type;)WW(t);t.context&&kW==t.context.type&&(WW(t),"}"==kW&&t.context&&"pattern"==t.context.type&&WW(t))}else"."==kW&&t.context&&"pattern"==t.context.type?WW(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?RW(t,"pattern",e.column()):"pattern"!=t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"==i.type;)i=i.prev;var a=i&&r==i.type;return i?"pattern"==i.type?i.col:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0},languageData:{commentTokens:{line:"#"}}};var zW=Object.freeze({__proto__:null,sparql:qW});var YW=Object.freeze({__proto__:null,spreadsheet:{startState:function(){return{stringType:null,stack:[]}},token:function(e,t){if(e){switch(0===t.stack.length&&('"'!=e.peek()&&"'"!=e.peek()||(t.stringType=e.peek(),e.next(),t.stack.unshift("string"))),t.stack[0]){case"string":for(;"string"===t.stack[0]&&!e.eol();)e.peek()===t.stringType?(e.next(),t.stack.shift()):"\\"===e.peek()?(e.next(),e.next()):e.match(/^.[^\\\"\']*/);return"string";case"characterClass":for(;"characterClass"===t.stack[0]&&!e.eol();)e.match(/^[^\]\\]+/)||e.match(/^\\./)||t.stack.shift();return"operator"}var n=e.peek();switch(n){case"[":return e.next(),t.stack.unshift("characterClass"),"bracket";case":":return e.next(),"operator";case"\\":return e.match(/\\[a-z]+/)?"string.special":(e.next(),"atom");case".":case",":case";":case"*":case"-":case"+":case"^":case"<":case"/":case"=":return e.next(),"atom";case"$":return e.next(),"builtin"}return e.match(/\d+/)?e.match(/^\w+/)?"error":"number":e.match(/^[a-zA-Z_]\w*/)?e.match(/(?=[\(.])/,!1)?"keyword":"variable":-1!=["[","]","(",")","{","}"].indexOf(n)?(e.next(),"bracket"):(e.eatSpace()||e.next(),null)}}}}),ZW=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","bgsound","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","nobr","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","track","u","ul","var","video"],UW=["domain","regexp","url-prefix","url"],EW=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],IW=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],VW=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode","font-smoothing","osx-font-smoothing"],CW=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],AW=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],GW=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],jW=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","spell-out","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","x-large","x-small","xor","xx-large","xx-small","bicubic","optimizespeed","grayscale","row","row-reverse","wrap","wrap-reverse","column-reverse","flex-start","flex-end","space-between","space-around","unset"],LW=["in","and","or","not","is not","is a","is","isnt","defined","if unless"],NW=["for","if","else","unless","from","to"],DW=["null","true","false","href","title","type","not-allowed","readonly","disabled"],MW=ZW.concat(UW,EW,IW,VW,CW,GW,jW,AW,LW,NW,DW,["@font-face","@keyframes","@media","@viewport","@page","@host","@supports","@block","@css"]);function FW(e){return e=e.sort((function(e,t){return t>e})),new RegExp("^(("+e.join(")|(")+"))\\b")}function BW(e){for(var t={},n=0;n]=?|\?:|\~)/,dq=FW(LW),pq=BW(NW),fq=new RegExp(/^\-(moz|ms|o|webkit)-/i),mq=BW(DW),gq="",Qq={};function $q(e,t){if(gq=e.string.match(/(^[\w-]+\s*=\s*$)|(^\s*[\w-]+\s*=\s*[\w-])|(^\s*(\.|#|@|\$|\&|\[|\d|\+|::?|\{|\>|~|\/)?\s*[\w-]*([a-z0-9-]|\*|\/\*)(\(|,)?)/),t.context.line.firstWord=gq?gq[0].replace(/^\s*/,""):"",t.context.line.indent=e.indentation(),HW=e.peek(),e.match("//"))return e.skipToEnd(),["comment","comment"];if(e.match("/*"))return t.tokenize=bq,bq(e,t);if('"'==HW||"'"==HW)return e.next(),t.tokenize=xq(HW),t.tokenize(e,t);if("@"==HW)return e.next(),e.eatWhile(/[\w\\-]/),["def",e.current()];if("#"==HW){if(e.next(),e.match(/^[0-9a-f]{3}([0-9a-f]([0-9a-f]{2}){0,2})?\b(?!-)/i))return["atom","atom"];if(e.match(/^[a-z][\w-]*/i))return["builtin","hash"]}return e.match(fq)?["meta","vendor-prefixes"]:e.match(/^-?[0-9]?\.?[0-9]/)?(e.eatWhile(/[a-z%]/i),["number","unit"]):"!"==HW?(e.next(),[e.match(/^(important|optional)/i)?"keyword":"operator","important"]):"."==HW&&e.match(/^\.[a-z][\w-]*/i)?["qualifier","qualifier"]:e.match(Oq)?("("==e.peek()&&(t.tokenize=wq),["property","word"]):e.match(/^[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","mixin"]):e.match(/^(\+|-)[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","block-mixin"]):e.string.match(/^\s*&/)&&e.match(/^[-_]+[a-z][\w-]*/)?["qualifier","qualifier"]:e.match(/^(\/|&)(-|_|:|\.|#|[a-z])/)?(e.backUp(1),["variableName.special","reference"]):e.match(/^&{1}\s*$/)?["variableName.special","reference"]:e.match(dq)?["operator","operator"]:e.match(/^\$?[-_]*[a-z0-9]+[\w-]*/i)?e.match(/^(\.|\[)[\w-\'\"\]]+/i,!1)&&!Sq(e.current())?(e.match("."),["variable","variable-name"]):["variable","word"]:e.match(hq)?["operator",e.current()]:/[:;,{}\[\]\(\)]/.test(HW)?(e.next(),[null,HW]):(e.next(),[null,null])}function bq(e,t){for(var n,r=!1;null!=(n=e.next());){if(r&&"/"==n){t.tokenize=null;break}r="*"==n}return["comment","comment"]}function xq(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){")"==e&&t.backUp(1);break}i=!i&&"\\"==r}return(r==e||!i&&")"!=e)&&(n.tokenize=null),["string","string"]}}function wq(e,t){return e.next(),e.match(/\s*[\"\')]/,!1)?t.tokenize=null:t.tokenize=xq(")"),[null,"("]}function kq(e,t,n,r){this.type=e,this.indent=t,this.prev=n,this.line=r||{firstWord:"",indent:0}}function yq(e,t,n,r){return r=r>=0?r:t.indentUnit,e.context=new kq(n,t.indentation()+r,e.context),n}function Pq(e,t,n){var r=e.context.indent-t.indentUnit;return n=n||!1,e.context=e.context.prev,n&&(e.context.indent=r),e.context.type}function vq(e,t,n,r){for(var i=r||1;i>0;i--)n.context=n.context.prev;return function(e,t,n){return Qq[n.context.type](e,t,n)}(e,t,n)}function Sq(e){return e.toLowerCase()in tq}function _q(e){return(e=e.toLowerCase())in rq||e in uq}function Xq(e){return e.toLowerCase()in pq}function Tq(e){return e.toLowerCase().match(fq)}function Rq(e){var t=e.toLowerCase(),n="variable";return Sq(e)?n="tag":Xq(e)?n="block-keyword":_q(e)?n="property":t in aq||t in mq?n="atom":"return"==t||t in oq?n="keyword":e.match(/^[A-Z]/)&&(n="string"),n}function Wq(e,t){return Zq(t)&&("{"==e||"]"==e||"hash"==e||"qualifier"==e)||"block-mixin"==e}function qq(e,t){return"{"==e&&t.match(/^\s*\$?[\w-]+/i,!1)}function zq(e,t){return":"==e&&t.match(/^[a-z-]+/,!1)}function Yq(e){return e.sol()||e.string.match(new RegExp("^\\s*"+e.current().replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")))}function Zq(e){return e.eol()||e.match(/^\s*$/,!1)}function Uq(e){var t=/^\s*[-_]*[a-z0-9]+[\w-]*/i,n="string"==typeof e?e.match(t):e.string.match(t);return n?n[0].replace(/^\s*/,""):""}Qq.block=function(e,t,n){if("comment"==e&&Yq(t)||","==e&&Zq(t)||"mixin"==e)return yq(n,t,"block",0);if(qq(e,t))return yq(n,t,"interpolation");if(Zq(t)&&"]"==e&&!/^\s*(\.|#|:|\[|\*|&)/.test(t.string)&&!Sq(Uq(t)))return yq(n,t,"block",0);if(Wq(e,t))return yq(n,t,"block");if("}"==e&&Zq(t))return yq(n,t,"block",0);if("variable-name"==e)return t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/)||Xq(Uq(t))?yq(n,t,"variableName"):yq(n,t,"variableName",0);if("="==e)return Zq(t)||Xq(Uq(t))?yq(n,t,"block"):yq(n,t,"block",0);if("*"==e&&(Zq(t)||t.match(/\s*(,|\.|#|\[|:|{)/,!1)))return eq="tag",yq(n,t,"block");if(zq(e,t))return yq(n,t,"pseudo");if(/@(font-face|media|supports|(-moz-)?document)/.test(e))return yq(n,t,Zq(t)?"block":"atBlock");if(/@(-(moz|ms|o|webkit)-)?keyframes$/.test(e))return yq(n,t,"keyframes");if(/@extends?/.test(e))return yq(n,t,"extend",0);if(e&&"@"==e.charAt(0))return t.indentation()>0&&_q(t.current().slice(1))?(eq="variable","block"):/(@import|@require|@charset)/.test(e)?yq(n,t,"block",0):yq(n,t,"block");if("reference"==e&&Zq(t))return yq(n,t,"block");if("("==e)return yq(n,t,"parens");if("vendor-prefixes"==e)return yq(n,t,"vendorPrefixes");if("word"==e){var r=t.current();if("property"==(eq=Rq(r)))return Yq(t)?yq(n,t,"block",0):(eq="atom","block");if("tag"==eq){if(/embed|menu|pre|progress|sub|table/.test(r)&&_q(Uq(t)))return eq="atom","block";if(t.string.match(new RegExp("\\[\\s*"+r+"|"+r+"\\s*\\]")))return eq="atom","block";if(nq.test(r)&&(Yq(t)&&t.string.match(/=/)||!Yq(t)&&!t.string.match(/^(\s*\.|#|\&|\[|\/|>|\*)/)&&!Sq(Uq(t))))return eq="variable",Xq(Uq(t))?"block":yq(n,t,"block",0);if(Zq(t))return yq(n,t,"block")}if("block-keyword"==eq)return eq="keyword",t.current(/(if|unless)/)&&!Yq(t)?"block":yq(n,t,"block");if("return"==r)return yq(n,t,"block",0);if("variable"==eq&&t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/))return yq(n,t,"block")}return n.context.type},Qq.parens=function(e,t,n){if("("==e)return yq(n,t,"parens");if(")"==e)return"parens"==n.context.prev.type?Pq(n,t):t.string.match(/^[a-z][\w-]*\(/i)&&Zq(t)||Xq(Uq(t))||/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(Uq(t))||!t.string.match(/^-?[a-z][\w-\.\[\]\'\"]*\s*=/)&&Sq(Uq(t))?yq(n,t,"block"):t.string.match(/^[\$-]?[a-z][\w-\.\[\]\'\"]*\s*=/)||t.string.match(/^\s*(\(|\)|[0-9])/)||t.string.match(/^\s+[a-z][\w-]*\(/i)||t.string.match(/^\s+[\$-]?[a-z]/i)?yq(n,t,"block",0):Zq(t)?yq(n,t,"block"):yq(n,t,"block",0);if(e&&"@"==e.charAt(0)&&_q(t.current().slice(1))&&(eq="variable"),"word"==e){var r=t.current();"tag"==(eq=Rq(r))&&nq.test(r)&&(eq="variable"),"property"!=eq&&"to"!=r||(eq="atom")}return"variable-name"==e?yq(n,t,"variableName"):zq(e,t)?yq(n,t,"pseudo"):n.context.type},Qq.vendorPrefixes=function(e,t,n){return"word"==e?(eq="property",yq(n,t,"block",0)):Pq(n,t)},Qq.pseudo=function(e,t,n){return _q(Uq(t.string))?vq(e,t,n):(t.match(/^[a-z-]+/),eq="variableName.special",Zq(t)?yq(n,t,"block"):Pq(n,t))},Qq.atBlock=function(e,t,n){if("("==e)return yq(n,t,"atBlock_parens");if(Wq(e,t))return yq(n,t,"block");if(qq(e,t))return yq(n,t,"interpolation");if("word"==e){var r=t.current().toLowerCase();if("tag"==(eq=/^(only|not|and|or)$/.test(r)?"keyword":sq.hasOwnProperty(r)?"tag":cq.hasOwnProperty(r)?"attribute":lq.hasOwnProperty(r)?"property":iq.hasOwnProperty(r)?"string.special":Rq(t.current()))&&Zq(t))return yq(n,t,"block")}return"operator"==e&&/^(not|and|or)$/.test(t.current())&&(eq="keyword"),n.context.type},Qq.atBlock_parens=function(e,t,n){if("{"==e||"}"==e)return n.context.type;if(")"==e)return Zq(t)?yq(n,t,"block"):yq(n,t,"atBlock");if("word"==e){var r=t.current().toLowerCase();return eq=Rq(r),/^(max|min)/.test(r)&&(eq="property"),"tag"==eq&&(eq=nq.test(r)?"variable":"atom"),n.context.type}return Qq.atBlock(e,t,n)},Qq.keyframes=function(e,t,n){return"0"==t.indentation()&&("}"==e&&Yq(t)||"]"==e||"hash"==e||"qualifier"==e||Sq(t.current()))?vq(e,t,n):"{"==e?yq(n,t,"keyframes"):"}"==e?Yq(t)?Pq(n,t,!0):yq(n,t,"keyframes"):"unit"==e&&/^[0-9]+\%$/.test(t.current())?yq(n,t,"keyframes"):"word"==e&&"block-keyword"==(eq=Rq(t.current()))?(eq="keyword",yq(n,t,"keyframes")):/@(font-face|media|supports|(-moz-)?document)/.test(e)?yq(n,t,Zq(t)?"block":"atBlock"):"mixin"==e?yq(n,t,"block",0):n.context.type},Qq.interpolation=function(e,t,n){return"{"==e&&Pq(n,t)&&yq(n,t,"block"),"}"==e?t.string.match(/^\s*(\.|#|:|\[|\*|&|>|~|\+|\/)/i)||t.string.match(/^\s*[a-z]/i)&&Sq(Uq(t))?yq(n,t,"block"):!t.string.match(/^(\{|\s*\&)/)||t.match(/\s*[\w-]/,!1)?yq(n,t,"block",0):yq(n,t,"block"):"variable-name"==e?yq(n,t,"variableName",0):("word"==e&&"tag"==(eq=Rq(t.current()))&&(eq="atom"),n.context.type)},Qq.extend=function(e,t,n){return"["==e||"="==e?"extend":"]"==e?Pq(n,t):"word"==e?(eq=Rq(t.current()),"extend"):Pq(n,t)},Qq.variableName=function(e,t,n){return"string"==e||"["==e||"]"==e||t.current().match(/^(\.|\$)/)?(t.current().match(/^\.[\w-]+/i)&&(eq="variable"),"variableName"):vq(e,t,n)};const Eq={startState:function(){return{tokenize:null,state:"block",context:new kq("block",0,null)}},token:function(e,t){return!t.tokenize&&e.eatSpace()?null:((KW=(t.tokenize||$q)(e,t))&&"object"==typeof KW&&(JW=KW[1],KW=KW[0]),eq=KW,t.state=Qq[t.state](JW,e,t),eq)},indent:function(e,t,n){var r=e.context,i=t&&t.charAt(0),a=r.indent,o=Uq(t),s=n.lineIndent(n.pos),O=e.context.prev?e.context.prev.line.firstWord:"",l=e.context.prev?e.context.prev.line.indent:s;return r.prev&&("}"==i&&("block"==r.type||"atBlock"==r.type||"keyframes"==r.type)||")"==i&&("parens"==r.type||"atBlock_parens"==r.type)||"{"==i&&"at"==r.type)?a=r.indent-n.unit:/(\})/.test(i)||(/@|\$|\d/.test(i)||/^\{/.test(t)||/^\s*\/(\/|\*)/.test(t)||/^\s*\/\*/.test(O)||/^\s*[\w-\.\[\]\'\"]+\s*(\?|:|\+)?=/i.test(t)||/^(\+|-)?[a-z][\w-]*\(/i.test(t)||/^return/.test(t)||Xq(o)?a=s:/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(i)||Sq(o)?a=/\,\s*$/.test(O)?l:e.sol()||!/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(O)&&!Sq(O)?s:s<=l?l:l+n.unit:/,\s*$/.test(t)||!Tq(o)&&!_q(o)||(a=Xq(O)?s<=l?l:l+n.unit:/^\{/.test(O)?s<=l?s:l+n.unit:Tq(O)||_q(O)?s>=l?l:s:/^(\.|#|:|\[|\*|&|@|\+|\-|>|~|\/)/.test(O)||/=\s*$/.test(O)||Sq(O)||/^\$[\w-\.\[\]\'\"]/.test(O)?l+n.unit:s)),a},languageData:{indentOnInput:/^\s*\}$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:MW}};var Iq=Object.freeze({__proto__:null,stylus:Eq});function Vq(e){for(var t={},n=0;n~^?!".indexOf(i)>-1)return e.next(),"operator";if(":;,.(){}[]".indexOf(i)>-1)return e.next(),e.match(".."),"punctuation";if(r=e.match(/("""|"|')/)){var a=tz.bind(null,r[0]);return t.tokenize.push(a),a(e,t)}if(e.match(Fq)){var o=e.current();return jq.hasOwnProperty(o)?"type":Gq.hasOwnProperty(o)?"atom":Cq.hasOwnProperty(o)?(Aq.hasOwnProperty(o)&&(t.prev="define"),"keyword"):"define"==n?"def":"variable"}return e.next(),null}function ez(){var e=0;return function(t,n,r){var i=Jq(t,n,r);if("punctuation"==i)if("("==t.current())++e;else if(")"==t.current()){if(0==e)return t.backUp(1),n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n);--e}return i}}function tz(e,t,n){for(var r,i=1==e.length,a=!1;r=t.peek();)if(a){if(t.next(),"("==r)return n.tokenize.push(ez()),"string";a=!1}else{if(t.match(e))return n.tokenize.pop(),"string";t.next(),a="\\"==r}return i&&n.tokenize.pop(),"string"}function nz(e,t){for(var n;e.match(/^[^/*]+/,!0),n=e.next();)"/"===n&&e.eat("*")?t.tokenize.push(nz):"*"===n&&e.eat("/")&&t.tokenize.pop();return"comment"}function rz(e,t,n){this.prev=e,this.align=t,this.indented=n}function iz(e,t){var n=t.match(/^\s*($|\/[\/\*])/,!1)?null:t.column()+1;e.context=new rz(e.context,n,e.indented)}function az(e){e.context&&(e.indented=e.context.indented,e.context=e.context.prev)}const oz={startState:function(){return{prev:null,context:null,indented:0,tokenize:[]}},token:function(e,t){var n=t.prev;t.prev=null;var r=(t.tokenize[t.tokenize.length-1]||Jq)(e,t,n);if(r&&"comment"!=r?t.prev||(t.prev=r):t.prev=n,"punctuation"==r){var i=/[\(\[\{]|([\]\)\}])/.exec(e.current());i&&(i[1]?az:iz)(t,e)}return r},indent:function(e,t,n){var r=e.context;if(!r)return 0;var i=/^[\]\}\)]/.test(t);return null!=r.align?r.align-(i?1:0):r.indented+(i?0:n.unit)},languageData:{indentOnInput:/^\s*[\)\}\]]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}};var sz=Object.freeze({__proto__:null,swift:oz});function Oz(e){function t(e,t){e.cmdState.push(t)}function n(e){return e.cmdState.length>0?e.cmdState[e.cmdState.length-1]:null}function r(e,t,n){return function(){this.name=e,this.bracketNo=0,this.style=t,this.styles=n,this.argument=null,this.styleIdentifier=function(){return this.styles[this.bracketNo-1]||null},this.openBracket=function(){return this.bracketNo++,"bracket"},this.closeBracket=function(){}}}var i={};function a(e,t){e.f=t}function o(e,r){var o;if(e.match(/^\\[a-zA-Z@]+/)){var l=e.current().slice(1);return t(r,o=new(o=i.hasOwnProperty(l)?i[l]:i.DEFAULT)),a(r,O),o.style}if(e.match(/^\\[$&%#{}_]/))return"tag";if(e.match(/^\\[,;!\/\\]/))return"tag";if(e.match("\\["))return a(r,(function(e,t){return s(e,t,"\\]")})),"keyword";if(e.match("\\("))return a(r,(function(e,t){return s(e,t,"\\)")})),"keyword";if(e.match("$$"))return a(r,(function(e,t){return s(e,t,"$$")})),"keyword";if(e.match("$"))return a(r,(function(e,t){return s(e,t,"$")})),"keyword";var c=e.next();return"%"==c?(e.skipToEnd(),"comment"):"}"==c||"]"==c?(o=n(r))?(o.closeBracket(c),a(r,O),"bracket"):"error":"{"==c||"["==c?(t(r,o=new(o=i.DEFAULT)),"bracket"):/\d/.test(c)?(e.eatWhile(/[\w.%]/),"atom"):(e.eatWhile(/[\w\-_]/),o=function(e){for(var t=e.cmdState,n=t.length-1;n>=0;n--){var r=t[n];if("DEFAULT"!=r.name)return r}return{styleIdentifier:function(){return null}}}(r),"begin"==o.name&&(o.argument=e.current()),o.styleIdentifier())}function s(e,t,n){if(e.eatSpace())return null;if(n&&e.match(n))return a(t,o),"keyword";if(e.match(/^\\[a-zA-Z@]+/))return"tag";if(e.match(/^[a-zA-Z]+/))return"variableName.special";if(e.match(/^\\[$&%#{}_]/))return"tag";if(e.match(/^\\[,;!\/]/))return"tag";if(e.match(/^[\^_&]/))return"tag";if(e.match(/^[+\-<>|=,\/@!*:;'"`~#?]/))return null;if(e.match(/^(\d+\.\d*|\d*\.\d+|\d+)/))return"number";var r=e.next();return"{"==r||"}"==r||"["==r||"]"==r||"("==r||")"==r?"bracket":"%"==r?(e.skipToEnd(),"comment"):"error"}function O(e,t){var r=e.peek();return"{"==r||"["==r?(n(t).openBracket(r),e.eat(r),a(t,o),"bracket"):/[ \t\r]/.test(r)?(e.eat(r),null):(a(t,o),function(e){var t=e.cmdState.pop();t&&t.closeBracket()}(t),o(e,t))}return i.importmodule=r("importmodule","tag",["string","builtin"]),i.documentclass=r("documentclass","tag",["","atom"]),i.usepackage=r("usepackage","tag",["atom"]),i.begin=r("begin","tag",["atom"]),i.end=r("end","tag",["atom"]),i.label=r("label","tag",["atom"]),i.ref=r("ref","tag",["atom"]),i.eqref=r("eqref","tag",["atom"]),i.cite=r("cite","tag",["atom"]),i.bibitem=r("bibitem","tag",["atom"]),i.Bibitem=r("Bibitem","tag",["atom"]),i.RBibitem=r("RBibitem","tag",["atom"]),i.DEFAULT=function(){this.name="DEFAULT",this.style="tag",this.styleIdentifier=this.openBracket=this.closeBracket=function(){}},{startState:function(){return{cmdState:[],f:e?function(e,t){return s(e,t)}:o}},copyState:function(e){return{cmdState:e.cmdState.slice(),f:e.f}},token:function(e,t){return t.f(e,t)},blankLine:function(e){e.f=o,e.cmdState.length=0},languageData:{commentTokens:{line:"%"}}}}const lz=Oz(!1),cz=Oz(!0);var uz=Object.freeze({__proto__:null,stex:lz,stexMath:cz});function hz(e){var t=e.statementIndentUnit,n=e.dontAlignCalls,r=e.noIndentKeywords||[],i=e.multiLineStrings,a=e.hooks||{};function o(e){for(var t={},n=e.split(" "),r=0;r=0)return o}var s=e.context,O=r&&r.charAt(0);"statement"==s.type&&"}"==O&&(s=s.prev);var l=!1,c=r.match(Q);return c&&(l=T(c[0],s.type)),"statement"==s.type?s.indented+("{"==O?0:t||i.unit):$.test(s.type)&&s.align&&!n?s.column+(l?0:1):")"!=s.type||l?s.indented+(l?0:i.unit):s.indented+(t||i.unit)},languageData:{indentOnInput:function(){var e=[];for(var t in x)if(x[t]){var n=x[t].split(";");for(var r in n)e.push(n[r])}return new RegExp("[{}()\\[\\]]|("+e.join("|")+")$")}(),commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}}}const dz=hz({});var pz={"|":"link",">":"property",$:"variable",$$:"variable","?$":"qualifier","?*":"qualifier","-":"contentSeparator","/":"property","/-":"property","@":"variableName.special","@-":"variableName.special","@++":"variableName.special","@+=":"variableName.special","@+=-":"variableName.special","@--":"variableName.special","@-=":"variableName.special","%+":"tag","%-":"tag","%":"tag",">>":"tag","<<":"tag","<>":"tag","#":"tag","^":"attribute","^^":"attribute","^!":"attribute","*":"variable","**":"variable","\\":"keyword",'"':"comment"},fz={"/":"beh-hier",">":"beh-hier","-":"phys-hier","|":"pipe","?":"when","@":"stage","\\":"keyword"},mz=/^([~!@#\$%\^&\*-\+=\?\/\\\|'"<>]+)([\d\w_]*)/,gz=/^[! ] */,Qz=/^\/[\/\*]/;const $z=hz({hooks:{electricInput:!1,token:function(e,t){var n,r=void 0;if(e.sol()&&!t.tlvInBlockComment){"\\"==e.peek()&&(r="def",e.skipToEnd(),e.string.match(/\\SV/)?t.tlvCodeActive=!1:e.string.match(/\\TLV/)&&(t.tlvCodeActive=!0)),t.tlvCodeActive&&0==e.pos&&0==t.indented&&(n=e.match(gz,!1))&&(t.indented=n[0].length);var i=t.indented,a=i/3;if(a<=t.tlvIndentationStyle.length){var o=e.string.length==i,s=3*a;if(s0||(t.tlvIndentationStyle[a]=fz[l],a++))}if(!o)for(;t.tlvIndentationStyle.length>a;)t.tlvIndentationStyle.pop()}t.tlvNextIndent=i}if(t.tlvCodeActive)if(void 0!==r);else if(t.tlvInBlockComment)e.match(/^.*?\*\//)?t.tlvInBlockComment=!1:e.skipToEnd(),r="comment";else if((n=e.match(Qz))&&!t.tlvInBlockComment)"//"==n[0]?e.skipToEnd():t.tlvInBlockComment=!0,r="comment";else if(n=e.match(mz)){var c=n[1],u=n[2];pz.hasOwnProperty(c)&&(u.length>0||e.eol())?r=pz[c]:e.backUp(e.current().length-1)}else e.match(/^\t+/)?r="invalid":e.match(/^[\[\]{}\(\);\:]+/)?r="meta":(n=e.match(/^[mM]4([\+_])?[\w\d_]*/))?r="+"==n[1]?"keyword.special":"keyword":e.match(/^ +/)?e.eol()&&(r="error"):e.match(/^[\w\d_]+/)?r="number":e.next();else e.match(/^[mM]4([\w\d_]*)/)&&(r="keyword");return r},indent:function(e){return 1==e.tlvCodeActive?e.tlvNextIndent:-1},startState:function(e){e.tlvIndentationStyle=[],e.tlvCodeActive=!0,e.tlvNextIndent=-1,e.tlvInBlockComment=!1}}});var bz=Object.freeze({__proto__:null,verilog:dz,tlv:$z});function xz(e){for(var t={},n=e.split(" "),r=0;r!?^\/\|]/;function Pz(e,t,n){return t.tokenize=n,n(e,t)}function vz(e,t){var n=t.beforeParams;t.beforeParams=!1;var r=e.next();if('"'!=r&&"'"!=r||!t.inParams){if(/[\[\]{}\(\),;\.]/.test(r))return"("==r&&n?t.inParams=!0:")"==r&&(t.inParams=!1),null;if(/\d/.test(r))return e.eatWhile(/[\w\.]/),"number";if("#"==r)return e.eat("*")?Pz(e,t,Sz):"#"==r&&e.match(/ *\[ *\[/)?Pz(e,t,_z):(e.skipToEnd(),"comment");if('"'==r)return e.skipTo(/"/),"comment";if("$"==r)return e.eatWhile(/[$_a-z0-9A-Z\.{:]/),e.eatWhile(/}/),t.beforeParams=!0,"builtin";if(yz.test(r))return e.eatWhile(yz),"comment";e.eatWhile(/[\w\$_{}\xa1-\uffff]/);var i=e.current().toLowerCase();return wz&&wz.propertyIsEnumerable(i)?"keyword":kz&&kz.propertyIsEnumerable(i)?(t.beforeParams=!0,"keyword"):null}return Pz(e,t,function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return a&&(n.tokenize=vz),"string"}}(r))}function Sz(e,t){for(var n,r=!1;n=e.next();){if("#"==n&&r){t.tokenize=vz;break}r="*"==n}return"comment"}function _z(e,t){for(var n,r=0;n=e.next();){if("#"==n&&2==r){t.tokenize=vz;break}"]"==n?r++:" "!=n&&(r=0)}return"meta"}const Xz={startState:function(){return{tokenize:vz,beforeParams:!1,inParams:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{line:"#"}}};var Tz=Object.freeze({__proto__:null,tcl:Xz}),Rz={addition:"inserted",attributes:"propertyName",bold:"strong",cite:"keyword",code:"monospace",definitionList:"list",deletion:"deleted",div:"punctuation",em:"emphasis",footnote:"variable",footCite:"qualifier",header:"heading",html:"comment",image:"atom",italic:"emphasis",link:"link",linkDefinition:"link",list1:"list",list2:"list.special",list3:"list",notextile:"string.special",pre:"operator",p:"content",quote:"bracket",span:"quote",specialChar:"character",strong:"strong",sub:"content.special",sup:"content.special",table:"variableName.special",tableHeading:"operator"};function Wz(e,t,n){if("_"===n)return e.eat("_")?qz(e,t,"italic",/__/,2):qz(e,t,"em",/_/,1);if("*"===n)return e.eat("*")?qz(e,t,"bold",/\*\*/,2):qz(e,t,"strong",/\*/,1);if("["===n)return e.match(/\d+\]/)&&(t.footCite=!0),zz(t);if("("===n&&e.match(/^(r|tm|c)\)/))return Rz.specialChar;if("<"===n&&e.match(/(\w+)[^>]+>[^<]+<\/\1>/))return Rz.html;if("?"===n&&e.eat("?"))return qz(e,t,"cite",/\?\?/,2);if("="===n&&e.eat("="))return qz(e,t,"notextile",/==/,2);if("-"===n&&!e.eat("-"))return qz(e,t,"deletion",/-/,1);if("+"===n)return qz(e,t,"addition",/\+/,1);if("~"===n)return qz(e,t,"sub",/~/,1);if("^"===n)return qz(e,t,"sup",/\^/,1);if("%"===n)return qz(e,t,"span",/%/,1);if("@"===n)return qz(e,t,"code",/@/,1);if("!"===n){var r=qz(e,t,"image",/(?:\([^\)]+\))?!/,1);return e.match(/^:\S+/),r}return zz(t)}function qz(e,t,n,r,i){var a=e.pos>i?e.string.charAt(e.pos-i-1):null,o=e.peek();if(t[n]){if((!o||/\W/.test(o))&&a&&/\S/.test(a)){var s=zz(t);return t[n]=!1,s}}else(!a||/\W/.test(a))&&o&&/\S/.test(o)&&e.match(new RegExp("^.*\\S"+r.source+"(?:\\W|$)"),!1)&&(t[n]=!0,t.mode=Ez.attributes);return zz(t)}function zz(e){var t=Yz(e);if(t)return t;var n=[];return e.layoutType&&n.push(Rz[e.layoutType]),n=n.concat(function(e){for(var t=[],n=1;n]+)?>(?:[^<]+<\/\1>)?/,link:/[^"]+":\S/,linkDefinition:/\[[^\s\]]+\]\S+/,list:/(?:#+|\*+)/,notextile:"notextile",para:"p",pre:"pre",table:"table",tableCellAttributes:/[\/\\]\d+/,tableHeading:/\|_\./,tableText:/[^"_\*\[\(\?\+~\^%@|-]+/,text:/[^!"_=\*\[\(<\?\+~\^%@-]+/},attributes:{align:/(?:<>|<|>|=)/,selector:/\([^\(][^\)]+\)/,lang:/\[[^\[\]]+\]/,pad:/(?:\(+|\)+){1,2}/,css:/\{[^\}]+\}/},createRe:function(e){switch(e){case"drawTable":return Zz.makeRe("^",Zz.single.drawTable,"$");case"html":return Zz.makeRe("^",Zz.single.html,"(?:",Zz.single.html,")*","$");case"linkDefinition":return Zz.makeRe("^",Zz.single.linkDefinition,"$");case"listLayout":return Zz.makeRe("^",Zz.single.list,Uz("allAttributes"),"*\\s+");case"tableCellAttributes":return Zz.makeRe("^",Zz.choiceRe(Zz.single.tableCellAttributes,Uz("allAttributes")),"+\\.");case"type":return Zz.makeRe("^",Uz("allTypes"));case"typeLayout":return Zz.makeRe("^",Uz("allTypes"),Uz("allAttributes"),"*\\.\\.?","(\\s+|$)");case"attributes":return Zz.makeRe("^",Uz("allAttributes"),"+");case"allTypes":return Zz.choiceRe(Zz.single.div,Zz.single.foot,Zz.single.header,Zz.single.bc,Zz.single.bq,Zz.single.notextile,Zz.single.pre,Zz.single.table,Zz.single.para);case"allAttributes":return Zz.choiceRe(Zz.attributes.selector,Zz.attributes.css,Zz.attributes.lang,Zz.attributes.align,Zz.attributes.pad);default:return Zz.makeRe("^",Zz.single[e])}},makeRe:function(){for(var e="",t=0;t$/,Hz=/^$/,Kz=/^\{\{\{$/,Jz=/^\}\}\}$/,eY=/.*?\}\}\}/;function tY(e,t,n){return t.tokenize=n,n(e,t)}function nY(e,t){var n=e.sol(),r=e.peek();if(t.block=!1,n&&/[<\/\*{}\-]/.test(r)){if(e.match(Kz))return t.block=!0,tY(e,t,aY);if(e.match(Dz))return"quote";if(e.match(Lz)||e.match(Nz))return"comment";if(e.match(Mz)||e.match(Fz)||e.match(Bz)||e.match(Hz))return"comment";if(e.match(jz))return"contentSeparator"}if(e.next(),n&&/[\/\*!#;:>|]/.test(r)){if("!"==r)return e.skipToEnd(),"header";if("*"==r)return e.eatWhile("*"),"comment";if("#"==r)return e.eatWhile("#"),"comment";if(";"==r)return e.eatWhile(";"),"comment";if(":"==r)return e.eatWhile(":"),"comment";if(">"==r)return e.eatWhile(">"),"quote";if("|"==r)return"header"}if("{"==r&&e.match("{{"))return tY(e,t,aY);if(/[hf]/i.test(r)&&/[ti]/i.test(e.peek())&&e.match(/\b(ttps?|tp|ile):\/\/[\-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$]/i))return"link";if('"'==r)return"string";if("~"==r)return"brace";if(/[\[\]]/.test(r)&&e.match(r))return"brace";if("@"==r)return e.eatWhile(Gz),"link";if(/\d/.test(r))return e.eatWhile(/\d/),"number";if("/"==r){if(e.eat("%"))return tY(e,t,rY);if(e.eat("/"))return tY(e,t,oY)}if("_"==r&&e.eat("_"))return tY(e,t,sY);if("-"==r&&e.eat("-")){if(" "!=e.peek())return tY(e,t,OY);if(" "==e.peek())return"brace"}return"'"==r&&e.eat("'")?tY(e,t,iY):"<"==r&&e.eat("<")?tY(e,t,lY):(e.eatWhile(/[\w\$_]/),Cz.propertyIsEnumerable(e.current())?"keyword":null)}function rY(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=nY;break}r="%"==n}return"comment"}function iY(e,t){for(var n,r=!1;n=e.next();){if("'"==n&&r){t.tokenize=nY;break}r="'"==n}return"strong"}function aY(e,t){var n=t.block;return n&&e.current()?"comment":!n&&e.match(eY)||n&&e.sol()&&e.match(Jz)?(t.tokenize=nY,"comment"):(e.next(),"comment")}function oY(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=nY;break}r="/"==n}return"emphasis"}function sY(e,t){for(var n,r=!1;n=e.next();){if("_"==n&&r){t.tokenize=nY;break}r="_"==n}return"link"}function OY(e,t){for(var n,r=!1;n=e.next();){if("-"==n&&r){t.tokenize=nY;break}r="-"==n}return"deleted"}function lY(e,t){if("<<"==e.current())return"meta";var n=e.next();return n?">"==n&&">"==e.peek()?(e.next(),t.tokenize=nY,"meta"):(e.eatWhile(/[\w\$_]/),Az.propertyIsEnumerable(e.current())?"keyword":null):(t.tokenize=nY,null)}const cY={startState:function(){return{tokenize:nY}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)}};var uY,hY,dY,pY,fY=Object.freeze({__proto__:null,tiddlyWiki:cY});function mY(e,t,n){return function(r,i){for(;!r.eol();){if(r.match(t)){i.tokenize=QY;break}r.next()}return n&&(i.tokenize=n),e}}function gY(e){return function(t,n){for(;!t.eol();)t.next();return n.tokenize=QY,e}}function QY(e,t){function n(n){return t.tokenize=n,n(e,t)}var r=e.sol(),i=e.next();switch(i){case"{":return e.eat("/"),e.eatSpace(),e.eatWhile(/[^\s\u00a0=\"\'\/?(}]/),t.tokenize=$Y,"tag";case"_":if(e.eat("_"))return n(mY("strong","__",QY));break;case"'":if(e.eat("'"))return n(mY("em","''",QY));break;case"(":if(e.eat("("))return n(mY("link","))",QY));break;case"[":return n(mY("url","]",QY));case"|":if(e.eat("|"))return n(mY("comment","||"));break;case"-":if(e.eat("="))return n(mY("header string","=-",QY));if(e.eat("-"))return n(mY("error tw-deleted","--",QY));break;case"=":if(e.match("=="))return n(mY("tw-underline","===",QY));break;case":":if(e.eat(":"))return n(mY("comment","::"));break;case"^":return n(mY("tw-box","^"));case"~":if(e.match("np~"))return n(mY("meta","~/np~"))}if(r)switch(i){case"!":return e.match("!!!!!")||e.match("!!!!")||e.match("!!!")||e.match("!!"),n(gY("header string"));case"*":case"#":case"+":return n(gY("tw-listitem bracket"))}return null}function $Y(e,t){var n=e.next(),r=e.peek();return"}"==n?(t.tokenize=QY,"tag"):"("==n||")"==n?"bracket":"="==n?(hY="equals",">"==r&&(e.next(),r=e.peek()),/[\'\"]/.test(r)||(t.tokenize=function(e,t){for(;!e.eol();){var n=e.next(),r=e.peek();if(" "==n||","==n||/[ )}]/.test(r)){t.tokenize=$Y;break}}return"string"}),"operator"):/[\'\"]/.test(n)?(t.tokenize=function(e){return function(t,n){for(;!t.eol();)if(t.next()==e){n.tokenize=$Y;break}return"string"}}(n),t.tokenize(e,t)):(e.eatWhile(/[^\s\u00a0=\"\'\/?]/),"keyword")}function bY(){for(var e=arguments.length-1;e>=0;e--)dY.cc.push(arguments[e])}function xY(){return bY.apply(null,arguments),!0}function wY(e,t){var n=dY.context&&dY.context.noIndent;dY.context={prev:dY.context,pluginName:e,indent:dY.indented,startOfLine:t,noIndent:n}}function kY(){dY.context&&(dY.context=dY.context.prev)}function yY(e){if("openPlugin"==e)return dY.pluginName=uY,xY(PY,function(e){return function(t){return"selfclosePlugin"==t||"endPlugin"==t?xY():"endPlugin"==t?(wY(dY.pluginName,e),xY()):xY()}}(dY.startOfLine));if("closePlugin"==e){var t=!1;return dY.context?(t=dY.context.pluginName!=uY,kY()):t=!0,t&&(pY="error"),xY(function(e){return function(t){return e&&(pY="error"),"endPlugin"==t?xY():bY()}}(t))}return"string"==e?(dY.context&&"!cdata"==dY.context.name||wY("!cdata"),dY.tokenize==QY&&kY(),xY()):xY()}function PY(e){return"keyword"==e?(pY="attribute",xY(PY)):"equals"==e?xY(vY,PY):bY()}function vY(e){return"keyword"==e?(pY="string",xY()):"string"==e?xY(SY):bY()}function SY(e){return"string"==e?xY(SY):bY()}const _Y={startState:function(){return{tokenize:QY,cc:[],indented:0,startOfLine:!0,pluginName:null,context:null}},token:function(e,t){if(e.sol()&&(t.startOfLine=!0,t.indented=e.indentation()),e.eatSpace())return null;pY=hY=uY=null;var n=t.tokenize(e,t);if((n||hY)&&"comment"!=n)for(dY=t;;){if((t.cc.pop()||yY)(hY||n))break}return t.startOfLine=!1,pY||n},indent:function(e,t,n){var r=e.context;if(r&&r.noIndent)return 0;for(r&&/^{\//.test(t)&&(r=r.prev);r&&!r.startOfLine;)r=r.prev;return r?r.indent+n.unit:0}};var XY=Object.freeze({__proto__:null,tiki:_Y});var TY=Object.freeze({__proto__:null,toml:{startState:function(){return{inString:!1,stringType:"",lhs:!0,inArray:0}},token:function(e,t){if(t.inString||'"'!=e.peek()&&"'"!=e.peek()||(t.stringType=e.peek(),e.next(),t.inString=!0),e.sol()&&0===t.inArray&&(t.lhs=!0),t.inString){for(;t.inString&&!e.eol();)e.peek()===t.stringType?(e.next(),t.inString=!1):"\\"===e.peek()?(e.next(),e.next()):e.match(/^.[^\\\"\']*/);return t.lhs?"property":"string"}return t.inArray&&"]"===e.peek()?(e.next(),t.inArray--,"bracket"):t.lhs&&"["===e.peek()&&e.skipTo("]")?(e.next(),"]"===e.peek()&&e.next(),"atom"):"#"===e.peek()?(e.skipToEnd(),"comment"):e.eatSpace()?null:t.lhs&&e.eatWhile((function(e){return"="!=e&&" "!=e}))?"property":t.lhs&&"="===e.peek()?(e.next(),t.lhs=!1,null):!t.lhs&&e.match(/^\d\d\d\d[\d\-\:\.T]*Z/)?"atom":t.lhs||!e.match("true")&&!e.match("false")?t.lhs||"["!==e.peek()?!t.lhs&&e.match(/^\-?\d+(?:\.\d+)?/)?"number":(e.eatSpace()||e.next(),null):(t.inArray++,e.next(),"bracket"):"atom"}}}),RY={};function WY(e){if(e.eatSpace())return null;var t=e.sol(),n=e.next();if("\\"===n)return e.match("fB")||e.match("fR")||e.match("fI")||e.match("u")||e.match("d")||e.match("%")||e.match("&")?"string":e.match("m[")?(e.skipTo("]"),e.next(),"string"):e.match("s+")||e.match("s-")?(e.eatWhile(/[\d-]/),"string"):e.match("(")||e.match("*(")?(e.eatWhile(/[\w-]/),"string"):"string";if(t&&("."===n||"'"===n)&&e.eat("\\")&&e.eat('"'))return e.skipToEnd(),"comment";if(t&&"."===n){if(e.match("B ")||e.match("I ")||e.match("R "))return"attribute";if(e.match("TH ")||e.match("SH ")||e.match("SS ")||e.match("HP "))return e.skipToEnd(),"quote";if(e.match(/[A-Z]/)&&e.match(/[A-Z]/)||e.match(/[a-z]/)&&e.match(/[a-z]/))return"attribute"}e.eatWhile(/[\w-]/);var r=e.current();return RY.hasOwnProperty(r)?RY[r]:null}function qY(e,t){return(t.tokens[0]||WY)(e,t)}const zY={startState:function(){return{tokens:[]}},token:function(e,t){return qY(e,t)}};var YY=Object.freeze({__proto__:null,troff:zY});function ZY(e){for(var t={},n=e.split(" "),r=0;r!\/]/;function rZ(e,t){var n=e.next();if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){var o=t.peek();o&&("b"!=(o=o.toLowerCase())&&"h"!=o&&"o"!=o||t.next()),a=!0;break}i=!i&&"\\"==r}return(a||!i&&!tZ)&&(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\\:\?\.]/.test(n))return VY=n,"punctuation";if("#"==n)return e.skipToEnd(),"atom";if("%"==n)return e.eatWhile(/\b/),"atom";if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n){if(e.eat("*"))return t.tokenize=iZ,iZ(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(nZ.test(n))return"@"==n&&(e.match("try")||e.match("catch")||e.match("lazy"))?"keyword":(e.eatWhile(nZ),"operator");e.eatWhile(/[\w\$_\xa1-\uffff]/);var r=e.current();return CY.propertyIsEnumerable(r)?"keyword":AY.propertyIsEnumerable(r)?"builtin":GY.propertyIsEnumerable(r)||LY.propertyIsEnumerable(r)||NY.propertyIsEnumerable(r)||jY.propertyIsEnumerable(r)||DY.propertyIsEnumerable(r)||MY.propertyIsEnumerable(r)?"def":FY.propertyIsEnumerable(r)||BY.propertyIsEnumerable(r)||HY.propertyIsEnumerable(r)?"string":KY.propertyIsEnumerable(r)?"typeName.standard":JY.propertyIsEnumerable(r)?"modifier":eZ.propertyIsEnumerable(r)?"atom":"variable"}function iZ(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function aZ(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function oZ(e,t,n){var r=e.indented;return e.context&&"statement"==e.context.type&&(r=e.context.indented),e.context=new aZ(r,t,n,null,e.context)}function sZ(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}const OZ={startState:function(){return{tokenize:null,context:new aZ(0,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;VY=null;var r=(t.tokenize||rZ)(e,t);if("comment"==r)return r;if(null==n.align&&(n.align=!0),";"!=VY&&":"!=VY&&","!=VY||"statement"!=n.type)if("{"==VY)oZ(t,e.column(),"}");else if("["==VY)oZ(t,e.column(),"]");else if("("==VY)oZ(t,e.column(),")");else if("}"==VY){for(;"statement"==n.type;)n=sZ(t);for("}"==n.type&&(n=sZ(t));"statement"==n.type;)n=sZ(t)}else VY==n.type?sZ(t):(("}"==n.type||"top"==n.type)&&";"!=VY||"statement"==n.type&&"newstatement"==VY)&&oZ(t,e.column(),"statement");else sZ(t);return t.startOfLine=!1,r},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:EY}};var lZ=Object.freeze({__proto__:null,ttcn:OZ});function cZ(e){for(var t={},n=e.split(" "),r=0;r=&|]/;function _Z(e,t){var n=e.next();if(kZ=null,"<"!=n||e.match(/^[\s\u00a0=]/,!1)){if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){n.tokenize=_Z;break}i=!i&&"\\"==r}return"string"}}(n),t.tokenize(e,t);if(/[{}\(\),\.;\[\]]/.test(n))return kZ=n,null;if("#"==n)return e.skipToEnd(),"comment";if(SZ.test(n))return e.eatWhile(SZ),null;if(":"==n)return"operator";if(e.eatWhile(/[_\w\d]/),":"==e.peek())return"variableName.special";var r=e.current();return vZ.test(r)?"meta":n>="A"&&n<="Z"?"comment":"keyword"}return e.match(/^[^\s\u00a0>]*>?/),"atom"}function XZ(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function TZ(e){e.indent=e.context.indent,e.context=e.context.prev}const RZ={startState:function(){return{tokenize:_Z,context:null,indent:0,col:0}},token:function(e,t){if(e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"!=n&&t.context&&null==t.context.align&&"pattern"!=t.context.type&&(t.context.align=!0),"("==kZ)XZ(t,")",e.column());else if("["==kZ)XZ(t,"]",e.column());else if("{"==kZ)XZ(t,"}",e.column());else if(/[\]\}\)]/.test(kZ)){for(;t.context&&"pattern"==t.context.type;)TZ(t);t.context&&kZ==t.context.type&&TZ(t)}else"."==kZ&&t.context&&"pattern"==t.context.type?TZ(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?XZ(t,"pattern",e.column()):"pattern"!=t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"==i.type;)i=i.prev;var a=i&&r==i.type;return i?"pattern"==i.type?i.col:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0},languageData:{commentTokens:{line:"#"}}};var WZ=Object.freeze({__proto__:null,turtle:RZ});function qZ(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var zZ=["Clamp","Constructor","EnforceRange","Exposed","ImplicitThis","Global","PrimaryGlobal","LegacyArrayClass","LegacyUnenumerableNamedProperties","LenientThis","NamedConstructor","NewObject","NoInterfaceObject","OverrideBuiltins","PutForwards","Replaceable","SameObject","TreatNonObjectAsNull","TreatNullAs","EmptyString","Unforgeable","Unscopeable"],YZ=qZ(zZ),ZZ=["unsigned","short","long","unrestricted","float","double","boolean","byte","octet","Promise","ArrayBuffer","DataView","Int8Array","Int16Array","Int32Array","Uint8Array","Uint16Array","Uint32Array","Uint8ClampedArray","Float32Array","Float64Array","ByteString","DOMString","USVString","sequence","object","RegExp","Error","DOMException","FrozenArray","any","void"],UZ=qZ(ZZ),EZ=["attribute","callback","const","deleter","dictionary","enum","getter","implements","inherit","interface","iterable","legacycaller","maplike","partial","required","serializer","setlike","setter","static","stringifier","typedef","optional","readonly","or"],IZ=qZ(EZ),VZ=["true","false","Infinity","NaN","null"],CZ=qZ(VZ),AZ=qZ(["callback","dictionary","enum","interface"]),GZ=qZ(["typedef"]),jZ=/^[:<=>?]/,LZ=/^-?([1-9][0-9]*|0[Xx][0-9A-Fa-f]+|0[0-7]*)/,NZ=/^-?(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)/,DZ=/^_?[A-Za-z][0-9A-Z_a-z-]*/,MZ=/^_?[A-Za-z][0-9A-Z_a-z-]*(?=\s*;)/,FZ=/^"[^"]*"/,BZ=/^\/\*.*?\*\//,HZ=/^\/\*.*/,KZ=/^.*?\*\//;const JZ={startState:function(){return{inComment:!1,lastToken:"",startDef:!1,endDef:!1}},token:function(e,t){var n=function(e,t){if(e.eatSpace())return null;if(t.inComment)return e.match(KZ)?(t.inComment=!1,"comment"):(e.skipToEnd(),"comment");if(e.match("//"))return e.skipToEnd(),"comment";if(e.match(BZ))return"comment";if(e.match(HZ))return t.inComment=!0,"comment";if(e.match(/^-?[0-9\.]/,!1)&&(e.match(LZ)||e.match(NZ)))return"number";if(e.match(FZ))return"string";if(t.startDef&&e.match(DZ))return"def";if(t.endDef&&e.match(MZ))return t.endDef=!1,"def";if(e.match(IZ))return"keyword";if(e.match(UZ)){var n=t.lastToken,r=(e.match(/^\s*(.+?)\b/,!1)||[])[1];return":"===n||"implements"===n||"implements"===r||"="===r?"builtin":"type"}return e.match(YZ)?"builtin":e.match(CZ)?"atom":e.match(DZ)?"variable":e.match(jZ)?"operator":(e.next(),null)}(e,t);if(n){var r=e.current();t.lastToken=r,"keyword"===n?(t.startDef=AZ.test(r),t.endDef=t.endDef||GZ.test(r)):t.startDef=!1}return n},languageData:{autocomplete:zZ.concat(ZZ).concat(EZ).concat(VZ)}};var eU=Object.freeze({__proto__:null,webIDL:JZ}),tU="error";function nU(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var rU=new RegExp("^[\\+\\-\\*/%&\\\\|\\^~<>!]"),iU=new RegExp("^[\\(\\)\\[\\]\\{\\}@,:`=;\\.]"),aU=new RegExp("^((==)|(<>)|(<=)|(>=)|(<>)|(<<)|(>>)|(//)|(\\*\\*))"),oU=new RegExp("^((\\+=)|(\\-=)|(\\*=)|(%=)|(/=)|(&=)|(\\|=)|(\\^=))"),sU=new RegExp("^((//=)|(>>=)|(<<=)|(\\*\\*=))"),OU=new RegExp("^[_A-Za-z][_A-Za-z0-9]*"),lU=["class","module","sub","enum","select","while","if","function","get","set","property","try","structure","synclock","using","with"],cU=["else","elseif","case","catch","finally"],uU=["next","loop"],hU=["and","andalso","or","orelse","xor","in","not","is","isnot","like"],dU=nU(hU),pU=["#const","#else","#elseif","#end","#if","#region","addhandler","addressof","alias","as","byref","byval","cbool","cbyte","cchar","cdate","cdbl","cdec","cint","clng","cobj","compare","const","continue","csbyte","cshort","csng","cstr","cuint","culng","cushort","declare","default","delegate","dim","directcast","each","erase","error","event","exit","explicit","false","for","friend","gettype","goto","handles","implements","imports","infer","inherits","interface","isfalse","istrue","lib","me","mod","mustinherit","mustoverride","my","mybase","myclass","namespace","narrowing","new","nothing","notinheritable","notoverridable","of","off","on","operator","option","optional","out","overloads","overridable","overrides","paramarray","partial","private","protected","public","raiseevent","readonly","redim","removehandler","resume","return","shadows","shared","static","step","stop","strict","then","throw","to","true","trycast","typeof","until","until","when","widening","withevents","writeonly"],fU=["object","boolean","char","string","byte","sbyte","short","ushort","int16","uint16","integer","uinteger","int32","uint32","long","ulong","int64","uint64","decimal","single","double","float","date","datetime","intptr","uintptr"],mU=nU(pU),gU=nU(fU),QU=nU(lU),$U=nU(cU),bU=nU(uU),xU=nU(["end"]),wU=nU(["do"]);function kU(e,t){t.currentIndent++}function yU(e,t){t.currentIndent--}function PU(e,t){if(e.eatSpace())return null;if("'"===e.peek())return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.a-f]/i,!1)){var n=!1;if((e.match(/^\d*\.\d+F?/i)||e.match(/^\d+\.\d*F?/)||e.match(/^\.\d+F?/))&&(n=!0),n)return e.eat(/J/i),"number";var r=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?r=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),r=!0):e.match(/^0(?![\dx])/i)&&(r=!0),r)return e.eat(/L/i),"number"}return e.match('"')?(t.tokenize=function(e){var t=1==e.length,n="string";return function(r,i){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return i.tokenize=PU,n;r.eat(/['"]/)}return t&&(i.tokenize=PU),n}}(e.current()),t.tokenize(e,t)):e.match(sU)||e.match(oU)?null:e.match(aU)||e.match(rU)||e.match(dU)?"operator":e.match(iU)?null:e.match(wU)?(kU(0,t),t.doInCurrentLine=!0,"keyword"):e.match(QU)?(t.doInCurrentLine?t.doInCurrentLine=!1:kU(0,t),"keyword"):e.match($U)?"keyword":e.match(xU)?(yU(0,t),yU(0,t),"keyword"):e.match(bU)?(yU(0,t),"keyword"):e.match(gU)||e.match(mU)?"keyword":e.match(OU)?"variable":(e.next(),tU)}const vU={startState:function(){return{tokenize:PU,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1}},token:function(e,t){e.sol()&&(t.currentIndent+=t.nextLineIndent,t.nextLineIndent=0,t.doInCurrentLine=0);var n=function(e,t){var n=t.tokenize(e,t),r=e.current();if("."===r)return"variable"===(n=t.tokenize(e,t))?"variable":tU;var i="[({".indexOf(r);return-1!==i&&kU(0,t),-1!==(i="])}".indexOf(r))&&yU(0,t)?tU:n}(e,t);return t.lastToken={style:n,content:e.current()},n},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,"");return r.match(bU)||r.match(xU)||r.match($U)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit},languageData:{closeBrackets:{brackets:["(","[","{",'"']},commentTokens:{line:"'"},autocomplete:lU.concat(cU).concat(uU).concat(hU).concat(pU).concat(fU)}};var SU=Object.freeze({__proto__:null,vb:vU});function _U(e){var t="error";function n(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var r=new RegExp("^[\\+\\-\\*/&\\\\\\^<>=]"),i=new RegExp("^((<>)|(<=)|(>=))"),a=new RegExp("^[\\.,]"),o=new RegExp("^[\\(\\)]"),s=new RegExp("^[A-Za-z][_A-Za-z0-9]*"),O=n(["and","or","not","xor","is","mod","eqv","imp"]),l=["WScript","err","debug","RegExp"],c=["clear","execute","raise","replace","test","write","writeline","close","open","state","eof","update","addnew","end","createobject","quit"].concat(["description","firstindex","global","helpcontext","helpfile","ignorecase","length","number","pattern","source","value","count"]);l=l.concat(["vbBlack","vbRed","vbGreen","vbYellow","vbBlue","vbMagenta","vbCyan","vbWhite","vbBinaryCompare","vbTextCompare","vbSunday","vbMonday","vbTuesday","vbWednesday","vbThursday","vbFriday","vbSaturday","vbUseSystemDayOfWeek","vbFirstJan1","vbFirstFourDays","vbFirstFullWeek","vbGeneralDate","vbLongDate","vbShortDate","vbLongTime","vbShortTime","vbObjectError","vbOKOnly","vbOKCancel","vbAbortRetryIgnore","vbYesNoCancel","vbYesNo","vbRetryCancel","vbCritical","vbQuestion","vbExclamation","vbInformation","vbDefaultButton1","vbDefaultButton2","vbDefaultButton3","vbDefaultButton4","vbApplicationModal","vbSystemModal","vbOK","vbCancel","vbAbort","vbRetry","vbIgnore","vbYes","vbNo","vbCr","VbCrLf","vbFormFeed","vbLf","vbNewLine","vbNullChar","vbNullString","vbTab","vbVerticalTab","vbUseDefault","vbTrue","vbFalse","vbEmpty","vbNull","vbInteger","vbLong","vbSingle","vbDouble","vbCurrency","vbDate","vbString","vbObject","vbError","vbBoolean","vbVariant","vbDataObject","vbDecimal","vbByte","vbArray"]),e.isASP&&(l=l.concat(["server","response","request","session","application"]),c=c.concat(["addheader","appendtolog","binarywrite","end","flush","redirect","binaryread","remove","removeall","lock","unlock","abandon","getlasterror","htmlencode","mappath","transfer","urlencode"],["buffer","cachecontrol","charset","contenttype","expires","expiresabsolute","isclientconnected","pics","status","clientcertificate","cookies","form","querystring","servervariables","totalbytes","contents","staticobjects","codepage","lcid","sessionid","timeout","scripttimeout"]));var u=n(["dim","redim","then","until","randomize","byval","byref","new","property","exit","in","const","private","public","get","set","let","stop","on error resume next","on error goto 0","option explicit","call","me"]),h=n(["true","false","nothing","empty","null"]),d=n(["abs","array","asc","atn","cbool","cbyte","ccur","cdate","cdbl","chr","cint","clng","cos","csng","cstr","date","dateadd","datediff","datepart","dateserial","datevalue","day","escape","eval","execute","exp","filter","formatcurrency","formatdatetime","formatnumber","formatpercent","getlocale","getobject","getref","hex","hour","inputbox","instr","instrrev","int","fix","isarray","isdate","isempty","isnull","isnumeric","isobject","join","lbound","lcase","left","len","loadpicture","log","ltrim","rtrim","trim","maths","mid","minute","month","monthname","msgbox","now","oct","replace","rgb","right","rnd","round","scriptengine","scriptenginebuildversion","scriptenginemajorversion","scriptengineminorversion","second","setlocale","sgn","sin","space","split","sqr","strcomp","string","strreverse","tan","time","timer","timeserial","timevalue","typename","ubound","ucase","unescape","vartype","weekday","weekdayname","year"]),p=n(l),f=n(c),m=n(["class","sub","select","while","if","function","property","with","for"]),g=n(["else","elseif","case"]),Q=n(["next","loop","wend"]),$=n(["end"]),b=n(["do"]),x=n(["on error resume next","exit"]),w=n(["rem"]);function k(e,t){t.currentIndent++}function y(e,t){t.currentIndent--}function P(e,n){if(e.eatSpace())return null;if("'"===e.peek())return e.skipToEnd(),"comment";if(e.match(w))return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.]/i,!1)&&!e.match(/^((&H)|(&O))?[0-9\.]+[a-z_]/i,!1)){var l=!1;if((e.match(/^\d*\.\d+/i)||e.match(/^\d+\.\d*/)||e.match(/^\.\d+/))&&(l=!0),l)return e.eat(/J/i),"number";var c=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?c=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),c=!0):e.match(/^0(?![\dx])/i)&&(c=!0),c)return e.eat(/L/i),"number"}return e.match('"')?(n.tokenize=function(e){var t=1==e.length,n="string";return function(r,i){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return i.tokenize=P,n;r.eat(/['"]/)}return t&&(i.tokenize=P),n}}(e.current()),n.tokenize(e,n)):e.match(i)||e.match(r)||e.match(O)?"operator":e.match(a)?null:e.match(o)?"bracket":e.match(x)?(n.doInCurrentLine=!0,"keyword"):e.match(b)?(k(0,n),n.doInCurrentLine=!0,"keyword"):e.match(m)?(n.doInCurrentLine?n.doInCurrentLine=!1:k(0,n),"keyword"):e.match(g)?"keyword":e.match($)?(y(0,n),y(0,n),"keyword"):e.match(Q)?(n.doInCurrentLine?n.doInCurrentLine=!1:y(0,n),"keyword"):e.match(u)?"keyword":e.match(h)?"atom":e.match(f)?"variableName.special":e.match(d)||e.match(p)?"builtin":e.match(s)?"variable":(e.next(),t)}return{startState:function(){return{tokenize:P,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1,ignoreKeyword:!1}},token:function(e,n){e.sol()&&(n.currentIndent+=n.nextLineIndent,n.nextLineIndent=0,n.doInCurrentLine=0);var r=function(e,n){var r=n.tokenize(e,n),i=e.current();return"."===i?(r=n.tokenize(e,n),i=e.current(),!r||"variable"!==r.substr(0,8)&&"builtin"!==r&&"keyword"!==r?t:("builtin"!==r&&"keyword"!==r||(r="variable"),c.indexOf(i.substr(1))>-1&&(r="keyword"),r)):r}(e,n);return n.lastToken={style:r,content:e.current()},null===r&&(r=null),r},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,"");return r.match(Q)||r.match($)||r.match(g)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit}}}const XU=_U({}),TU=_U({isASP:!0});var RU=Object.freeze({__proto__:null,vbScript:XU,vbScriptASP:TU});function WU(e){for(var t={},n=e.split(" "),r=0;r!?:\/|]/;function UU(e,t,n){return t.tokenize=n,n(e,t)}function EU(e,t){var n=t.beforeParams;t.beforeParams=!1;var r=e.next();if("'"==r&&!t.inString&&t.inParams)return t.lastTokenWasBuiltin=!1,UU(e,t,IU(r));if('"'!=r){if(/[\[\]{}\(\),;\.]/.test(r))return"("==r&&n?t.inParams=!0:")"==r&&(t.inParams=!1,t.lastTokenWasBuiltin=!0),null;if(/\d/.test(r))return t.lastTokenWasBuiltin=!1,e.eatWhile(/[\w\.]/),"number";if("#"==r&&e.eat("*"))return t.lastTokenWasBuiltin=!1,UU(e,t,VU);if("#"==r&&e.match(/ *\[ *\[/))return t.lastTokenWasBuiltin=!1,UU(e,t,CU);if("#"==r&&e.eat("#"))return t.lastTokenWasBuiltin=!1,e.skipToEnd(),"comment";if("$"==r)return e.eat("!"),e.eatWhile(/[\w\d\$_\.{}-]/),YU&&YU.propertyIsEnumerable(e.current())?"keyword":(t.lastTokenWasBuiltin=!0,t.beforeParams=!0,"builtin");if(ZU.test(r))return t.lastTokenWasBuiltin=!1,e.eatWhile(ZU),"operator";e.eatWhile(/[\w\$_{}@]/);var i=e.current();return qU&&qU.propertyIsEnumerable(i)?"keyword":zU&&zU.propertyIsEnumerable(i)||e.current().match(/^#@?[a-z0-9_]+ *$/i)&&"("==e.peek()&&(!zU||!zU.propertyIsEnumerable(i.toLowerCase()))?(t.beforeParams=!0,t.lastTokenWasBuiltin=!1,"keyword"):t.inString?(t.lastTokenWasBuiltin=!1,"string"):e.pos>i.length&&"."==e.string.charAt(e.pos-i.length-1)&&t.lastTokenWasBuiltin?"builtin":(t.lastTokenWasBuiltin=!1,null)}return t.lastTokenWasBuiltin=!1,t.inString?(t.inString=!1,"string"):t.inParams?UU(e,t,IU(r)):void 0}function IU(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}if('"'==e&&"$"==t.peek()&&!i){n.inString=!0,a=!0;break}i=!i&&"\\"==r}return a&&(n.tokenize=EU),"string"}}function VU(e,t){for(var n,r=!1;n=e.next();){if("#"==n&&r){t.tokenize=EU;break}r="*"==n}return"comment"}function CU(e,t){for(var n,r=0;n=e.next();){if("#"==n&&2==r){t.tokenize=EU;break}"]"==n?r++:" "!=n&&(r=0)}return"meta"}const AU={startState:function(){return{tokenize:EU,beforeParams:!1,inParams:!1,inString:!1,lastTokenWasBuiltin:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{line:"##",block:{open:"#*",close:"*#"}}}};var GU=Object.freeze({__proto__:null,velocity:AU});function jU(e){for(var t={},n=e.split(","),r=0;r",">=","<","<=",".","|","?","and","or","div","idiv","mod","*","/","+","-"];for(o=0,s=l.length;o\"\'\/?]/);)s+=o;return aE(e,t,function(e,t){return function(n,r){return n.eatSpace(),t&&n.eat(">")?(QE(r),r.tokenize=oE,"tag"):(n.eat("/")||gE(r,{type:"tag",name:e,tokenize:oE}),n.eat(">")?(r.tokenize=oE,"tag"):(r.tokenize=cE,"tag"))}}(s,a))}if("{"==n)return gE(t,{type:"codeblock"}),null;if("}"==n)return QE(t),null;if(pE(t))return">"==n?"tag":"/"==n&&e.eat(">")?(QE(t),"tag"):"variable";if(/\d/.test(n))return e.match(/^\d*(?:\.\d*)?(?:E[+\-]?\d+)?/),"atom";if("("===n&&e.eat(":"))return gE(t,{type:"comment"}),aE(e,t,sE);if(i||'"'!==n&&"'"!==n){if("$"===n)return aE(e,t,lE);if(":"===n&&e.eat("="))return"keyword";if("("===n)return gE(t,{type:"paren"}),null;if(")"===n)return QE(t),null;if("["===n)return gE(t,{type:"bracket"}),null;if("]"===n)return QE(t),null;var O=iE.propertyIsEnumerable(n)&&iE[n];if(i&&'"'===n)for(;'"'!==e.next(););if(i&&"'"===n)for(;"'"!==e.next(););O||e.eatWhile(/[\w\$_-]/);var l=e.eat(":");!e.eat(":")&&l&&e.eatWhile(/[\w\$_-]/),e.match(/^[ \t]*\(/,!1)&&(r=!0);var c=e.current();return O=iE.propertyIsEnumerable(c)&&iE[c],r&&!O&&(O={type:"function_call",style:"def"}),function(e){return mE(e,"xmlconstructor")}(t)?(QE(t),"variable"):("element"!=c&&"attribute"!=c&&"axis_specifier"!=O.type||gE(t,{type:"xmlconstructor"}),O?O.style:"variable")}return aE(e,t,OE(n))}function sE(e,t){for(var n,r=!1,i=!1,a=0;n=e.next();){if(")"==n&&r){if(!(a>0)){QE(t);break}a--}else":"==n&&i&&a++;r=":"==n,i="("==n}return"comment"}function OE(e,t){return function(n,r){var i;if(function(e){return mE(e,"string")}(r)&&n.current()==e)return QE(r),t&&(r.tokenize=t),"string";if(gE(r,{type:"string",name:e,tokenize:OE(e,t)}),n.match("{",!1)&&fE(r))return r.tokenize=oE,"string";for(;i=n.next();){if(i==e){QE(r),t&&(r.tokenize=t);break}if(n.match("{",!1)&&fE(r))return r.tokenize=oE,"string"}return"string"}}function lE(e,t){var n=/[\w\$_-]/;if(e.eat('"')){for(;'"'!==e.next(););e.eat(":")}else e.eatWhile(n),e.match(":=",!1)||e.eat(":");return e.eatWhile(n),t.tokenize=oE,"variable"}function cE(e,t){var n=e.next();return"/"==n&&e.eat(">")?(fE(t)&&QE(t),pE(t)&&QE(t),"tag"):">"==n?(fE(t)&&QE(t),"tag"):"="==n?null:'"'==n||"'"==n?aE(e,t,OE(n,cE)):(fE(t)||gE(t,{type:"attribute",tokenize:cE}),e.eat(/[a-zA-Z_:]/),e.eatWhile(/[-a-zA-Z0-9_:.]/),e.eatSpace(),(e.match(">",!1)||e.match("/",!1))&&(QE(t),t.tokenize=oE),"attribute")}function uE(e,t){for(var n;n=e.next();)if("-"==n&&e.match("->",!0))return t.tokenize=oE,"comment"}function hE(e,t){for(var n;n=e.next();)if("]"==n&&e.match("]",!0))return t.tokenize=oE,"comment"}function dE(e,t){for(var n;n=e.next();)if("?"==n&&e.match(">",!0))return t.tokenize=oE,"processingInstruction"}function pE(e){return mE(e,"tag")}function fE(e){return mE(e,"attribute")}function mE(e,t){return e.stack.length&&e.stack[e.stack.length-1].type==t}function gE(e,t){e.stack.push(t)}function QE(e){e.stack.pop();var t=e.stack.length&&e.stack[e.stack.length-1].tokenize;e.tokenize=t||oE}const $E={startState:function(){return{tokenize:oE,cc:[],stack:[]}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"(:",close:":)"}}}};var bE=Object.freeze({__proto__:null,xQuery:$E});var xE=function(e){for(var t={},n=e.split(" "),r=0;r|<|&|\||_|`|'|\^|\?|!|%|#)/,!0,!1)?"operator":"error"}function _E(e,t){for(var n,r=!1,i=!1;null!=(n=e.next());){if('"'===n&&!i){r=!0;break}i=!i&&"\\"===n}return r&&!i&&(t.tokenize=SE),"string"}function XE(e,t){for(var n,r;null!=(r=e.next());){if("*"===n&&"/"===r){t.tokenize=SE;break}n=r}return"comment"}function TE(e){var t=null;return e.scopes.length>0&&(t=e.scopes[e.scopes.length-1]),t}const RE={startState:function(){return{tokenize:SE,scopes:[]}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},indent:function(e,t,n){if(e.tokenize!==SE&&null!==e.tokenize)return null;var r=0;return"]"!==t&&"];"!==t&&"}"!==t&&"};"!==t&&");"!==t||(r=-1),(e.scopes.length+r)*n.unit},languageData:{electricInput:/[{}\[\]()\;]/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var WE=Object.freeze({__proto__:null,yacas:RE}),qE=new RegExp("\\b(("+["true","false","on","off","yes","no"].join(")|(")+"))$","i");const zE={token:function(e,t){var n=e.peek(),r=t.escaped;if(t.escaped=!1,"#"==n&&(0==e.pos||/\s/.test(e.string.charAt(e.pos-1))))return e.skipToEnd(),"comment";if(e.match(/^('([^']|\\.)*'?|"([^"]|\\.)*"?)/))return"string";if(t.literal&&e.indentation()>t.keyCol)return e.skipToEnd(),"string";if(t.literal&&(t.literal=!1),e.sol()){if(t.keyCol=0,t.pair=!1,t.pairStart=!1,e.match("---"))return"def";if(e.match("..."))return"def";if(e.match(/^\s*-\s+/))return"meta"}if(e.match(/^(\{|\}|\[|\])/))return"{"==n?t.inlinePairs++:"}"==n?t.inlinePairs--:"["==n?t.inlineList++:t.inlineList--,"meta";if(t.inlineList>0&&!r&&","==n)return e.next(),"meta";if(t.inlinePairs>0&&!r&&","==n)return t.keyCol=0,t.pair=!1,t.pairStart=!1,e.next(),"meta";if(t.pairStart){if(e.match(/^\s*(\||\>)\s*/))return t.literal=!0,"meta";if(e.match(/^\s*(\&|\*)[a-z0-9\._-]+\b/i))return"variable";if(0==t.inlinePairs&&e.match(/^\s*-?[0-9\.\,]+\s?$/))return"number";if(t.inlinePairs>0&&e.match(/^\s*-?[0-9\.\,]+\s?(?=(,|}))/))return"number";if(e.match(qE))return"keyword"}return!t.pair&&e.match(/^\s*(?:[,\[\]{}&*!|>'"%@`][^\s'":]|[^,\[\]{}#&*!|>'"%@`])[^#]*?(?=\s*:($|\s))/)?(t.pair=!0,t.keyCol=e.indentation(),"atom"):t.pair&&e.match(/^:\s*/)?(t.pairStart=!0,"meta"):(t.pairStart=!1,t.escaped="\\"==n,e.next(),null)},startState:function(){return{pair:!1,pairStart:!1,keyCol:0,inlinePairs:0,inlineList:0,literal:!1,escaped:!1}},languageData:{commentTokens:{line:"#"}}};var YE=Object.freeze({__proto__:null,yaml:zE});function ZE(e){var t,n;e?(t=/^(exx?|(ld|cp)([di]r?)?|[lp]ea|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|[de]i|halt|im|in([di]mr?|ir?|irx|2r?)|ot(dmr?|[id]rx|imr?)|out(0?|[di]r?|[di]2r?)|tst(io)?|slp)(\.([sl]?i)?[sl])?\b/i,n=/^(((call|j[pr]|rst|ret[in]?)(\.([sl]?i)?[sl])?)|(rs|st)mix)\b/i):(t=/^(exx?|(ld|cp|in)([di]r?)?|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|rst|[de]i|halt|im|ot[di]r|out[di]?)\b/i,n=/^(call|j[pr]|ret[in]?|b_?(call|jump))\b/i);var r=/^(af?|bc?|c|de?|e|hl?|l|i[xy]?|r|sp)\b/i,i=/^(n?[zc]|p[oe]?|m)\b/i,a=/^([hl][xy]|i[xy][hl]|slia|sll)\b/i,o=/^([\da-f]+h|[0-7]+o|[01]+b|\d+d?)\b/i;return{startState:function(){return{context:0}},token:function(s,O){if(s.column()||(O.context=0),s.eatSpace())return null;var l;if(s.eatWhile(/\w/)){if(e&&s.eat(".")&&s.eatWhile(/\w/),l=s.current(),!s.indentation())return s.match(o)?"number":null;if((1==O.context||4==O.context)&&r.test(l))return O.context=4,"variable";if(2==O.context&&i.test(l))return O.context=4,"variableName.special";if(t.test(l))return O.context=1,"keyword";if(n.test(l))return O.context=2,"keyword";if(4==O.context&&o.test(l))return"number";if(a.test(l))return"error"}else{if(s.eat(";"))return s.skipToEnd(),"comment";if(s.eat('"')){for(;(l=s.next())&&'"'!=l;)"\\"==l&&s.next();return"string"}if(s.eat("'")){if(s.match(/\\?.'/))return"number"}else if(s.eat(".")||s.sol()&&s.eat("#")){if(O.context=5,s.eatWhile(/\w/))return"def"}else if(s.eat("$")){if(s.eatWhile(/[\da-f]/i))return"number"}else if(s.eat("%")){if(s.eatWhile(/[01]/))return"number"}else s.next()}return null}}}const UE=ZE(!1),EE=ZE(!0);var IE=Object.freeze({__proto__:null,z80:UE,ez80:EE});function VE(e){return{startState:NE,copyState:DE,token:(t=e,function(e,n){if(e.match(LE(t.brackets),!0,!0))return"bracket";if(!n.inComment){if(e.match(/\/\*[^\*\/]*/,!0,!0))return n.inComment=!0,"comment";if(e.match(LE(t.singlecomment),!0,!0))return e.skipToEnd(),"comment"}if(n.inComment)return e.match(/[^\*\/]*\*\//,!0,!0)?n.inComment=!1:e.skipToEnd(),"comment";if(!n.inString&&e.match(/\"(\\\"|[^\"])*/,!0,!0))return n.inString=!0,"string";if(n.inString)return e.match(/[^\"]*\"/,!0,!0)?n.inString=!1:e.skipToEnd(),"string";if(t.keywords&&e.match(jE(t.keywords),!0,!0))return"keyword";if(e.match(jE(t.options),!0,!0))return"keyword";if(e.match(jE(t.arcsWords),!0,!0))return"keyword";if(e.match(LE(t.arcsOthers),!0,!0))return"keyword";if(t.operators&&e.match(LE(t.operators),!0,!0))return"operator";if(t.constants&&e.match(LE(t.constants),!0,!0))return"variable";if(!t.inAttributeList&&t.attributes&&e.match("[",!0,!0))return t.inAttributeList=!0,"bracket";if(t.inAttributeList){if(null!==t.attributes&&e.match(jE(t.attributes),!0,!0))return"attribute";if(e.match("]",!0,!0))return t.inAttributeList=!1,"bracket"}return e.next(),null}),languageData:{commentTokens:{line:"#",block:{open:"/*",close:"*/"}}}};var t}const CE=VE({keywords:["msc"],options:["hscale","width","arcgradient","wordwraparcs"],constants:["true","false","on","off"],attributes:["label","idurl","id","url","linecolor","linecolour","textcolor","textcolour","textbgcolor","textbgcolour","arclinecolor","arclinecolour","arctextcolor","arctextcolour","arctextbgcolor","arctextbgcolour","arcskip"],brackets:["\\{","\\}"],arcsWords:["note","abox","rbox","box"],arcsOthers:["\\|\\|\\|","\\.\\.\\.","---","--","<->","==","<<=>>","<=>","\\.\\.","<<>>","::","<:>","->","=>>","=>",">>",":>","<-","<<=","<=","<<","<:","x-","-x"],singlecomment:["//","#"],operators:["="]}),AE=VE({keywords:null,options:["hscale","width","arcgradient","wordwraparcs","wordwrapentities","watermark"],constants:["true","false","on","off","auto"],attributes:null,brackets:["\\{","\\}"],arcsWords:["note","abox","rbox","box","alt","else","opt","break","par","seq","strict","neg","critical","ignore","consider","assert","loop","ref","exc"],arcsOthers:["\\|\\|\\|","\\.\\.\\.","---","--","<->","==","<<=>>","<=>","\\.\\.","<<>>","::","<:>","->","=>>","=>",">>",":>","<-","<<=","<=","<<","<:","x-","-x"],singlecomment:["//","#"],operators:["="]}),GE=VE({keywords:["msc","xu"],options:["hscale","width","arcgradient","wordwraparcs","wordwrapentities","watermark"],constants:["true","false","on","off","auto"],attributes:["label","idurl","id","url","linecolor","linecolour","textcolor","textcolour","textbgcolor","textbgcolour","arclinecolor","arclinecolour","arctextcolor","arctextcolour","arctextbgcolor","arctextbgcolour","arcskip","title","deactivate","activate","activation"],brackets:["\\{","\\}"],arcsWords:["note","abox","rbox","box","alt","else","opt","break","par","seq","strict","neg","critical","ignore","consider","assert","loop","ref","exc"],arcsOthers:["\\|\\|\\|","\\.\\.\\.","---","--","<->","==","<<=>>","<=>","\\.\\.","<<>>","::","<:>","->","=>>","=>",">>",":>","<-","<<=","<=","<<","<:","x-","-x"],singlecomment:["//","#"],operators:["="]});function jE(e){return new RegExp("^\\b("+e.join("|")+")\\b","i")}function LE(e){return new RegExp("^(?:"+e.join("|")+")","i")}function NE(){return{inComment:!1,inString:!1,inAttributeList:!1,inScript:!1}}function DE(e){return{inComment:e.inComment,inString:e.inString,inAttributeList:e.inAttributeList,inScript:e.inScript}}var ME=Object.freeze({__proto__:null,mscgen:CE,msgenny:AE,xu:GE});const FE=rb({start:[{regex:new RegExp(["align","block","br(_if|_table|_on_(cast|data|func|i31|null))?","call(_indirect|_ref)?","current_memory","\\bdata\\b","catch(_all)?","delegate","drop","elem","else","end","export","\\bextern\\b","\\bfunc\\b","global(\\.(get|set))?","if","import","local(\\.(get|set|tee))?","loop","module","mut","nop","offset","param","result","rethrow","return(_call(_indirect|_ref)?)?","select","start","table(\\.(size|get|set|size|grow|fill|init|copy))?","then","throw","try","type","unreachable","unwind","i(32|64)\\.(store(8|16)|(load(8|16)_[su]))","i64\\.(load32_[su]|store32)","[fi](32|64)\\.(const|load|store)","f(32|64)\\.(abs|add|ceil|copysign|div|eq|floor|[gl][et]|max|min|mul|nearest|neg?|sqrt|sub|trunc)","i(32|64)\\.(a[dn]d|c[lt]z|(div|rem)_[su]|eqz?|[gl][te]_[su]|mul|ne|popcnt|rot[lr]|sh(l|r_[su])|sub|x?or)","i64\\.extend_[su]_i32","i32\\.wrap_i64","i(32|64)\\.trunc_f(32|64)_[su]","f(32|64)\\.convert_i(32|64)_[su]","f64\\.promote_f32","f32\\.demote_f64","f32\\.reinterpret_i32","i32\\.reinterpret_f32","f64\\.reinterpret_i64","i64\\.reinterpret_f64","memory(\\.((atomic\\.(notify|wait(32|64)))|grow|size))?","i64.atomic\\.(load32_u|store32|rmw32\\.(a[dn]d|sub|x?or|(cmp)?xchg)_u)","i(32|64)\\.atomic\\.(load((8|16)_u)?|store(8|16)?|rmw(\\.(a[dn]d|sub|x?or|(cmp)?xchg)|(8|16)\\.(a[dn]d|sub|x?or|(cmp)?xchg)_u))","v128\\.load(8x8|16x4|32x2)_[su]","v128\\.load(8|16|32|64)_splat","v128\\.(load|store)(8|16|32|64)_lane","v128\\.load(32|64)_zero","v128.(load|store|const|not|andnot|and|or|xor|bitselect|any_true)","i(8x16|16x8)\\.(extract_lane_[su]|(add|sub)_sat_[su]|avgr_u)","i(8x16|16x8|32x4|64x2)\\.(neg|add|sub|abs|shl|shr_[su]|all_true|bitmask|eq|ne|[lg][te]_s)","(i(8x16|16x8|32x4|64x2)|f(32x4|64x2)).(splat|replace_lane)","i(8x16|16x8|32x4)\\.(([lg][te]_u)|((min|max)_[su]))","f(32x4|64x2)\\.(neg|add|sub|abs|nearest|eq|ne|[lg][te]|sqrt|mul|div|min|max|ceil|floor|trunc)","[fi](32x4|64x2)\\.extract_lane","i8x16\\.(shuffle|swizzle|popcnt|narrow_i16x8_[su])","i16x8\\.(narrow_i32x4_[su]|mul|extadd_pairwise_i8x16_[su]|q15mulr_sat_s)","i16x8\\.(extend|extmul)_(low|high)_i8x16_[su]","i32x4\\.(mul|dot_i16x8_s|trunc_sat_f64x2_[su]_zero)","i32x4\\.((extend|extmul)_(low|high)_i16x8_|trunc_sat_f32x4_|extadd_pairwise_i16x8_)[su]","i64x2\\.(mul|(extend|extmul)_(low|high)_i32x4_[su])","f32x4\\.(convert_i32x4_[su]|demote_f64x2_zero)","f64x2\\.(promote_low_f32x4|convert_low_i32x4_[su])","\\bany\\b","array\\.len","(array|struct)(\\.(new_(default_)?with_rtt|get(_[su])?|set))?","\\beq\\b","field","i31\\.(new|get_[su])","\\bnull\\b","ref(\\.(([ai]s_(data|func|i31))|cast|eq|func|(is_|as_non_)?null|test))?","rtt(\\.(canon|sub))?"].join("|")),token:"keyword"},{regex:/\b((any|data|eq|extern|i31|func)ref|[fi](32|64)|i(8|16))\b/,token:"atom"},{regex:/\b(funcref|externref|[fi](32|64))\b/,token:"atom"},{regex:/\$([a-zA-Z0-9_`\+\-\*\/\\\^~=<>!\?@#$%&|:\.]+)/,token:"variable"},{regex:/"(?:[^"\\\x00-\x1f\x7f]|\\[nt\\'"]|\\[0-9a-fA-F][0-9a-fA-F])*"/,token:"string"},{regex:/\(;.*?/,token:"comment",next:"comment"},{regex:/;;.*$/,token:"comment"},{regex:/\(/,indent:!0},{regex:/\)/,dedent:!0}],comment:[{regex:/.*?;\)/,token:"comment",next:"start"},{regex:/.*/,token:"comment"}],meta:{dontIndentStates:["comment"]}});var BE=Object.freeze({__proto__:null,wast:FE})}(); +!function(){"use strict";let e="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map((e=>e?parseInt(e,36):1));for(let t=1;tt)return e[n-1]<=t;return!1}function n(e){return e>=127462&&e<=127487}function r(e,t,n=!0){return(n?i:a)(e,t)}function i(e,r){if(r==e.length)return r;r&&o(e.charCodeAt(r))&&s(e.charCodeAt(r-1))&&r--;let i=O(e,r);for(r+=c(i);r=0&&n(O(e,i));)t++,i-=2;if(t%2==0)break;r+=2}}}return r}function a(e,t){for(;t>0;){let n=i(e,t-2);if(n=56320&&e<57344}function s(e){return e>=55296&&e<56320}function O(e,t){let n=e.charCodeAt(t);if(!s(n)||t+1==e.length)return n;let r=e.charCodeAt(t+1);return o(r)?r-56320+(n-55296<<10)+65536:n}function l(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10),56320+(1023&e)))}function c(e){return e<65536?1:2}function u(e,t,n=e.length){let i=0;for(let a=0;athis.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(t,this.length,r,1),p.from(r,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){let n=[];return this.decompose(e,t,n,0),p.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),r=new g(this),i=new g(e);for(let e=t,a=t;;){if(r.next(e),i.next(e),e=0,r.lineBreak!=i.lineBreak||r.done!=i.done||r.value!=i.value)return!1;if(a+=r.value.length,r.done||a>=n)return!0}}iter(e=1){return new g(this,e)}iterRange(e,t=this.length){return new Q(this,e,t)}iterLines(e,t){let n;if(null==e)n=this.iter();else{null==t&&(t=this.lines+1);let r=this.line(e).from;n=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new b(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}static of(e){if(0==e.length)throw new RangeError("A document must have at least one line");return 1!=e.length||e[0]?e.length<=32?new d(e):p.from(d.split(e,[])):h.empty}}class d extends h{constructor(e,t=function(e){let t=-1;for(let n of e)t+=n.length+1;return t}(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.text[i],o=r+a.length;if((t?n:o)>=e)return new x(r,o,n,a);r=o+1,n++}}decompose(e,t,n,r){let i=e<=0&&t>=this.length?this:new d(m(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(1&r){let e=n.pop(),t=f(i.text,e.text.slice(),0,i.length);if(t.length<=32)n.push(new d(t,e.length+i.length));else{let e=t.length>>1;n.push(new d(t.slice(0,e)),new d(t.slice(e)))}}else n.push(i)}replace(e,t,n){if(!(n instanceof d))return super.replace(e,t,n);let r=f(this.text,f(n.text,m(this.text,0,e)),t),i=this.length+n.length-(t-e);return r.length<=32?new d(r,i):p.from(d.split(r,[]),i)}sliceString(e,t=this.length,n="\n"){let r="";for(let i=0,a=0;i<=t&&ae&&a&&(r+=n),ei&&(r+=o.slice(Math.max(0,e-i),t-i)),i=s+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let n=[],r=-1;for(let i of e)n.push(i),r+=i.length+1,32==n.length&&(t.push(new d(n,r)),n=[],r=-1);return r>-1&&t.push(new d(n,r)),t}}class p extends h{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let t of e)this.lines+=t.lines}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.children[i],o=r+a.length,s=n+a.lines-1;if((t?s:o)>=e)return a.lineInner(e,t,n,r);r=o+1,n=s+1}}decompose(e,t,n,r){for(let i=0,a=0;a<=t&&i=a){let i=r&((a<=e?1:0)|(s>=t?2:0));a>=e&&s<=t&&!i?n.push(o):o.decompose(e-a,t-a,n,i)}a=s+1}}replace(e,t,n){if(n.lines=i&&t<=o){let s=a.replace(e-i,t-i,n),O=this.lines-a.lines+s.lines;if(s.lines>4&&s.lines>O>>6){let i=this.children.slice();return i[r]=s,new p(i,this.length-(t-e)+n.length)}return super.replace(i,o,s)}i=o+1}return super.replace(e,t,n)}sliceString(e,t=this.length,n="\n"){let r="";for(let i=0,a=0;ie&&i&&(r+=n),ea&&(r+=o.sliceString(e-a,t-a,n)),a=s+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof p))return 0;let n=0,[r,i,a,o]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,i+=t){if(r==a||i==o)return n;let s=this.children[r],O=e.children[i];if(s!=O)return n+s.scanIdentical(O,t);n+=s.length+1}}static from(e,t=e.reduce(((e,t)=>e+t.length+1),-1)){let n=0;for(let t of e)n+=t.lines;if(n<32){let n=[];for(let t of e)t.flatten(n);return new d(n,t)}let r=Math.max(32,n>>5),i=r<<1,a=r>>1,o=[],s=0,O=-1,l=[];function c(e){let t;if(e.lines>i&&e instanceof p)for(let t of e.children)c(t);else e.lines>a&&(s>a||!s)?(u(),o.push(e)):e instanceof d&&s&&(t=l[l.length-1])instanceof d&&e.lines+t.lines<=32?(s+=e.lines,O+=e.length+1,l[l.length-1]=new d(t.text.concat(e.text),t.length+1+e.length)):(s+e.lines>r&&u(),s+=e.lines,O+=e.length+1,l.push(e))}function u(){0!=s&&(o.push(1==l.length?l[0]:p.from(l,O)),O=-1,s=l.length=0)}for(let t of e)c(t);return u(),1==o.length?o[0]:new p(o,t)}}function f(e,t,n=0,r=1e9){for(let i=0,a=0,o=!0;a=n&&(O>r&&(s=s.slice(0,r-i)),i0?1:(e instanceof d?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],i=this.offsets[n],a=i>>1,o=r instanceof d?r.text.length:r.children.length;if(a==(t>0?o:0)){if(0==n)return this.done=!0,this.value="",this;t>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&i)==(t>0?0:1)){if(this.offsets[n]+=t,0==e)return this.lineBreak=!0,this.value="\n",this;e--}else if(r instanceof d){let i=r.text[a+(t<0?-1:0)];if(this.offsets[n]+=t,i.length>Math.max(0,e))return this.value=0==e?i:t>0?i.slice(e):i.slice(0,i.length-e),this;e-=i.length}else{let i=r.children[a+(t<0?-1:0)];e>i.length?(e-=i.length,this.offsets[n]+=t):(t<0&&this.offsets[n]--,this.nodes.push(i),this.offsets.push(t>0?1:(i instanceof d?i.text.length:i.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class Q{constructor(e,t,n){this.value="",this.done=!1,this.cursor=new g(e,t>n?-1:1),this.pos=t>n?e.length:0,this.from=Math.min(t,n),this.to=Math.max(t,n)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let n=t<0?this.pos-this.from:this.to-this.pos;e>n&&(e=n),n-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=n?r:t<0?r.slice(r.length-n):r.slice(0,n),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}}class b{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:n,value:r}=this.inner.next(e);return t?(this.done=!0,this.value=""):n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}}"undefined"!=typeof Symbol&&(h.prototype[Symbol.iterator]=function(){return this.iter()},g.prototype[Symbol.iterator]=Q.prototype[Symbol.iterator]=b.prototype[Symbol.iterator]=function(){return this});class x{constructor(e,t,n,r){this.from=e,this.to=t,this.number=n,this.text=r}get length(){return this.to-this.from}}const w=/\r\n?|\n/;var k=function(e){return e[e.Simple=0]="Simple",e[e.TrackDel=1]="TrackDel",e[e.TrackBefore=2]="TrackBefore",e[e.TrackAfter=3]="TrackAfter",e}(k||(k={}));class y{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;te)return i+(e-r);i+=o}else{if(n!=k.Simple&&O>=e&&(n==k.TrackDel&&re||n==k.TrackBefore&&re))return null;if(O>e||O==e&&t<0&&!o)return e==r||t<0?i:i+s;i+=s}r=O}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return i}touchesRange(e,t=e){for(let n=0,r=0;n=0&&r<=t&&i>=e)return!(rt)||"cover";r=i}return!1}toString(){let e="";for(let t=0;t=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some((e=>"number"!=typeof e)))throw new RangeError("Invalid JSON representation of ChangeDesc");return new y(e)}}class P extends y{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return _(this,((t,n,r,i,a)=>e=e.replace(r,r+(n-t),a)),!1),e}mapDesc(e,t=!1){return X(this,e,t,!0)}invert(e){let t=this.sections.slice(),n=[];for(let r=0,i=0;r=0){t[r]=o,t[r+1]=a;let s=r>>1;for(;n.length0&&S(n,t,i.text),i.forward(e),o+=e}let O=e[a++];for(;o>1].toJSON()))}return e}static of(e,t,n){let r=[],i=[],a=0,o=null;function s(e=!1){if(!e&&!r.length)return;ao||e<0||o>t)throw new RangeError(`Invalid change range ${e} to ${o} (in doc of length ${t})`);let c=l?"string"==typeof l?h.of(l.split(n||w)):l:h.empty,u=c.length;if(e==o&&0==u)return;ea&&v(r,e-a,-1),v(r,o-e,u),S(i,r,c),a=o}}(e),s(!o),o}static empty(e){return new P(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],n=[];for(let r=0;rt&&"string"!=typeof e)))throw new RangeError("Invalid JSON representation of ChangeSet");if(1==i.length)t.push(i[0],0);else{for(;n.length=0&&n<=0&&n==e[i+1]?e[i]+=t:0==t&&0==e[i]?e[i+1]+=n:r?(e[i]+=t,e[i+1]+=n):e.push(t,n)}function S(e,t,n){if(0==n.length)return;let r=t.length-2>>1;if(r>1])),!(n||o==e.sections.length||e.sections[o+1]<0);)s=e.sections[o++],O=e.sections[o++];t(i,l,a,c,u),i=l,a=c}}}function X(e,t,n,r=!1){let i=[],a=r?[]:null,o=new R(e),s=new R(t);for(let e=0,t=0;;)if(-1==o.ins)e+=o.len,o.next();else if(-1==s.ins&&t=0&&(o.done||tt&&!o.done&&e+o.len=0)){if(o.done&&s.done)return a?new P(i,a):new y(i);throw new Error("Mismatched change set lengths")}{let n=0,r=e+o.len;for(;;)if(s.ins>=0&&t>e&&t+s.lent||o.ins>=0&&o.len>t)&&(e||r.length>n),a.forward2(t),o.forward(t)}}else v(r,0,o.ins,e),i&&S(i,r,o.text),o.next()}}class R{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return t>=e.length?h.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?h.empty:t[n].slice(this.off,null==e?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){-1==this.ins?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class W{constructor(e,t,n){this.from=e,this.to=t,this.flags=n}get anchor(){return 16&this.flags?this.to:this.from}get head(){return 16&this.flags?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return 4&this.flags?-1:8&this.flags?1:0}get bidiLevel(){let e=3&this.flags;return 3==e?null:e}get goalColumn(){let e=this.flags>>5;return 33554431==e?void 0:e}map(e,t=-1){let n=e.mapPos(this.from,t),r=e.mapPos(this.to,t);return n==this.from&&r==this.to?this:new W(n,r,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return q.range(e,t);let n=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return q.range(this.anchor,n)}eq(e){return this.anchor==e.anchor&&this.head==e.head}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||"number"!=typeof e.anchor||"number"!=typeof e.head)throw new RangeError("Invalid JSON representation for SelectionRange");return q.range(e.anchor,e.head)}}class q{constructor(e,t=0){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:q.create(this.ranges.map((n=>n.map(e,t))),this.mainIndex)}eq(e){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let t=0;te.toJSON())),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||"number"!=typeof e.main||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new q(e.ranges.map((e=>W.fromJSON(e))),e.main)}static single(e,t=e){return new q([q.range(e,t)],0)}static create(e,t=0){if(0==e.length)throw new RangeError("A selection needs at least one range");for(let n=0,r=0;re.from-t.from)),t=e.indexOf(n);for(let n=1;nr.head?q.range(o,a):q.range(a,o))}}return new q(e,t)}function Y(e,t){for(let n of e.ranges)if(n.to>t)throw new RangeError("Selection points outside of document")}let Z=0;class U{constructor(e,t,n,r,i){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=r,this.extensions=i,this.id=Z++,this.default=e([])}static define(e={}){return new U(e.combine||(e=>e),e.compareInput||((e,t)=>e===t),e.compare||(e.combine?(e,t)=>e===t:E),!!e.static,e.enables)}of(e){return new I([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new I(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new I(e,this,2,t)}from(e,t){return t||(t=e=>e),this.compute([e],(n=>t(n.field(e))))}}function E(e,t){return e==t||e.length==t.length&&e.every(((e,n)=>e===t[n]))}class I{constructor(e,t,n,r){this.dependencies=e,this.facet=t,this.type=n,this.value=r,this.id=Z++}dynamicSlot(e){var t;let n=this.value,r=this.facet.compareInput,i=e[this.id]>>1,a=2==this.type,o=!1,s=!1,O=[];for(let n of this.dependencies)"doc"==n?o=!0:"selection"==n?s=!0:0==(1&(null!==(t=e[n.id])&&void 0!==t?t:1))&&O.push(e[n.id]);return(e,t)=>{if(!t||t.reconfigured)return e.values[i]=n(e),1;{if(!(o&&t.docChanged||s&&(t.docChanged||t.selection)||O.some((t=>(1&J(e,t))>0))))return 0;let l=n(e),c=t.startState.values[i];return(a?function(e,t,n){if(e.length!=t.length)return!1;for(let r=0;re[t.id])),i=n.map((e=>e.type)),a=r.filter((e=>!(1&e))),o=e[t.id]>>1;return(e,n)=>{let s=n?n.reconfigured?n.startState.config.address[t.id]:o<<1:null,O=null==s;for(let t of a)1&J(e,t)&&(O=!0);if(!O)return 0;let l=[];for(let t=0;t>1}const A=U.define({static:!0});class G{constructor(e,t,n,r,i){this.id=e,this.createF=t,this.updateF=n,this.compareF=r,this.spec=i,this.provides=void 0}static define(e){let t=new G(Z++,e.create,e.update,e.compare||((e,t)=>e===t),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(A).find((e=>e.field==this));return((null==t?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return(e,n)=>{if(!n||n.reconfigured&&null==C(n.startState,this.id))return e.values[t]=this.create(e),1;let r,i=0;n.reconfigured?(r=n.startState.values[C(n.startState,this.id)],i=1):r=n.startState.values[t];let a=this.updateF(r,n);return i||this.compareF(r,a)||(i=1),i&&(e.values[t]=a),i}}init(e){return[this,A.of({field:this,create:e})]}get extension(){return this}}const j=2,L=1,N=0;function D(e){return t=>new F(t,e)}const M={fallback:D(3),default:D(j),extend:D(L),override:D(N)};class F{constructor(e,t){this.inner=e,this.prec=t}}class B{of(e){return new H(this,e)}reconfigure(e){return B.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class H{constructor(e,t){this.compartment=e,this.inner=t}}class K{constructor(e,t,n,r,i){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=r,this.staticValues=i,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,t,n){let r=[],i=Object.create(null),a=new Map;for(let n of function(e,t,n){let r=[[],[],[],[]],i=new Map;function a(e,o){let s=i.get(e);if(null!=s){if(s>=o)return;let t=r[s].indexOf(e);t>-1&&r[s].splice(t,1),e instanceof H&&n.delete(e.compartment)}if(i.set(e,o),Array.isArray(e))for(let t of e)a(t,o);else if(e instanceof H){if(n.has(e.compartment))throw new RangeError("Duplicate use of compartment in extensions");let r=t.get(e.compartment)||e.inner;n.set(e.compartment,r),a(r,o)}else if(e instanceof F)a(e.inner,e.prec);else if(e instanceof G)r[o].push(e),e.provides&&a(e.provides,o);else if(e instanceof I)r[o].push(e),e.facet.extensions&&a(e.facet.extensions,o);else{let t=e.extension;if(!t)throw new Error(`Unrecognized extension value in extension set (${e}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);a(t,o)}}return a(e,j),r.reduce(((e,t)=>e.concat(t)))}(e,t,a))n instanceof G?r.push(n):(i[n.facet.id]||(i[n.facet.id]=[])).push(n);let o=Object.create(null),s=[],O=[];for(let e of r)o[e.id]=O.length<<1,O.push((t=>e.slot(t)));for(let e in i){let t=i[e],r=t[0].facet;if(t.every((e=>0==e.type))){o[r.id]=s.length<<1|1;let e=r.combine(t.map((e=>e.value))),i=n?n.config.address[r.id]:null;if(null!=i){let t=ee(n,i);r.compare(e,t)&&(e=t)}s.push(e)}else{for(let e of t)0==e.type?(o[e.id]=s.length<<1|1,s.push(e.value)):(o[e.id]=O.length<<1,O.push((t=>e.dynamicSlot(t))));o[r.id]=O.length<<1,O.push((e=>V(e,r,t)))}}return new K(e,a,O.map((e=>e(o))),o,s)}}function J(e,t){if(1&t)return 2;let n=t>>1,r=e.status[n];if(4==r)throw new Error("Cyclic dependency between fields and/or facets");if(2&r)return r;e.status[n]=4;let i=e.config.dynamicSlots[n](e,e.applying);return e.status[n]=2|i}function ee(e,t){return 1&t?e.config.staticValues[t>>1]:e.values[t>>1]}const te=U.define(),ne=U.define({combine:e=>e.some((e=>e)),static:!0}),re=U.define({combine:e=>e.length?e[0]:void 0,static:!0}),ie=U.define(),ae=U.define(),oe=U.define(),se=U.define({combine:e=>!!e.length&&e[0]});class Oe{constructor(e,t){this.type=e,this.value=t}static define(){return new le}}class le{of(e){return new Oe(this,e)}}class ce{constructor(e){this.map=e}of(e){return new ue(this,e)}}class ue{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return void 0===t?void 0:t==this.value?this:new ue(this.type,t)}is(e){return this.type==e}static define(e={}){return new ce(e.map||(e=>e))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let r of e){let e=r.map(t);e&&n.push(e)}return n}}ue.reconfigure=ue.define(),ue.appendConfig=ue.define();class he{constructor(e,t,n,r,i,a){this.startState=e,this.changes=t,this.selection=n,this.effects=r,this.annotations=i,this.scrollIntoView=a,this._doc=null,this._state=null,n&&Y(n,t.newLength),i.some((e=>e.type==he.time))||(this.annotations=i.concat(he.time.of(Date.now())))}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(he.userEvent);return t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&"."==t[e.length])}}function de(e,t){let n=[];for(let r=0,i=0;;){let a,o;if(r=e[r]))a=e[r++],o=e[r++];else{if(!(i=0;i--){let a=n[i](e);a&&Object.keys(a).length&&(r=pe(e,fe(t,a,e.changes.newLength),!0))}return r==e?e:new he(t,e.changes,e.selection,r.effects,r.annotations,r.scrollIntoView)}(n?function(e){let t=e.startState,n=!0;for(let r of t.facet(ie)){let t=r(e);if(!1===t){n=!1;break}Array.isArray(t)&&(n=!0===n?t:de(n,t))}if(!0!==n){let r,i;if(!1===n)i=e.changes.invertedDesc,r=P.empty(t.doc.length);else{let t=e.changes.filter(n);r=t.changes,i=t.filtered.invertedDesc}e=new he(t,r,e.selection&&e.selection.map(i),ue.mapEffects(e.effects,i),e.annotations,e.scrollIntoView)}let r=t.facet(ae);for(let n=r.length-1;n>=0;n--){let i=r[n](e);e=i instanceof he?i:Array.isArray(i)&&1==i.length&&i[0]instanceof he?i[0]:me(t,Qe(i),!1)}return e}(i):i)}he.time=Oe.define(),he.userEvent=Oe.define(),he.addToHistory=Oe.define(),he.remote=Oe.define();const ge=[];function Qe(e){return null==e?ge:Array.isArray(e)?e:[e]}var $e=function(e){return e[e.Word=0]="Word",e[e.Space=1]="Space",e[e.Other=2]="Other",e}($e||($e={}));const be=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let xe;try{xe=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(e){}function we(e){return t=>{if(!/\S/.test(t))return $e.Space;if(function(e){if(xe)return xe.test(e);for(let t=0;t"€"&&(n.toUpperCase()!=n.toLowerCase()||be.test(n)))return!0}return!1}(t))return $e.Word;for(let n=0;n-1)return $e.Word;return $e.Other}}class ke{constructor(e,t,n,r=null){if(this.config=e,this.doc=t,this.selection=n,this.applying=null,this.status=e.statusTemplate.slice(),r&&r.startState.config==e)this.values=r.startState.values.slice();else if(this.values=e.dynamicSlots.map((e=>null)),r)for(let t in e.address){let n=e.address[t],i=r.startState.config.address[t];null!=i&&0==(1&n)&&(this.values[n>>1]=ee(r.startState,i))}this.applying=r,r&&(r._state=this);for(let e=0;er.set(t,e))),t=null),r.set(i.value.compartment,i.value.extension)):i.is(ue.reconfigure)?(t=null,n=i.value):i.is(ue.appendConfig)&&(t=null,n=Qe(n).concat(i.value));new ke(t||K.resolve(n,r,this),e.newDoc,e.newSelection,e)}replaceSelection(e){return"string"==typeof e&&(e=this.toText(e)),this.changeByRange((t=>({changes:{from:t.from,to:t.to,insert:e},range:q.cursor(t.from+e.length)})))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),r=this.changes(n.changes),i=[n.range],a=Qe(n.effects);for(let n=1;ni.spec.fromJSON(a,e))))}return ke.create({doc:e.doc,selection:q.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=K.resolve(e.extensions||[],new Map),n=e.doc instanceof h?e.doc:h.of((e.doc||"").split(t.staticFacet(ke.lineSeparator)||w)),r=e.selection?e.selection instanceof q?e.selection:q.single(e.selection.anchor,e.selection.head):q.single(0);return Y(r,n.length),t.staticFacet(ne)||(r=r.asSingle()),new ke(t,n,r)}get tabSize(){return this.facet(ke.tabSize)}get lineBreak(){return this.facet(ke.lineSeparator)||"\n"}get readOnly(){return this.facet(se)}phrase(e){for(let t of this.facet(ke.phrases))if(Object.prototype.hasOwnProperty.call(t,e))return t[e];return e}languageDataAt(e,t,n=-1){let r=[];for(let i of this.facet(te))for(let a of i(this,t,n))Object.prototype.hasOwnProperty.call(a,e)&&r.push(a[e]);return r}charCategorizer(e){return we(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:t,from:n,length:i}=this.doc.lineAt(e),a=this.charCategorizer(e),o=e-n,s=e-n;for(;o>0;){let e=r(t,o,!1);if(a(t.slice(e,o))!=$e.Word)break;o=e}for(;se.length?e[0]:4}),ke.lineSeparator=re,ke.readOnly=se,ke.phrases=U.define(),ke.languageData=te,ke.changeFilter=ie,ke.transactionFilter=ae,ke.transactionExtender=oe,B.reconfigure=ue.define();const Pe="undefined"==typeof Symbol?"__ͼ":Symbol.for("ͼ"),ve="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),Se="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:{};class _e{constructor(e,t){this.rules=[];let{finish:n}=t||{};function r(e){return/^@/.test(e)?[e]:e.split(/,\s*/)}function i(e,t,a,o){let s=[],O=/^@(\w+)\b/.exec(e[0]),l=O&&"keyframes"==O[1];if(O&&null==t)return a.push(e[0]+";");for(let n in t){let o=t[n];if(/&/.test(n))i(n.split(/,\s*/).map((t=>e.map((e=>t.replace(/&/,e))))).reduce(((e,t)=>e.concat(t))),o,a);else if(o&&"object"==typeof o){if(!O)throw new RangeError("The value of a property ("+n+") should be a primitive value.");i(r(n),o,s,l)}else null!=o&&s.push(n.replace(/_.*/,"").replace(/[A-Z]/g,(e=>"-"+e.toLowerCase()))+": "+o+";")}(s.length||l)&&a.push((!n||O||o?e:e.map(n)).join(", ")+" {"+s.join(" ")+"}")}for(let t in e)i(r(t),e[t],this.rules)}getRules(){return this.rules.join("\n")}static newName(){let e=Se[Pe]||1;return Se[Pe]=e+1,"ͼ"+e.toString(36)}static mount(e,t){(e[ve]||new Te(e)).mount(Array.isArray(t)?t:[t])}}let Xe=null;class Te{constructor(e){if(!e.head&&e.adoptedStyleSheets&&"undefined"!=typeof CSSStyleSheet){if(Xe)return e.adoptedStyleSheets=[Xe.sheet].concat(e.adoptedStyleSheets),e[ve]=Xe;this.sheet=new CSSStyleSheet,e.adoptedStyleSheets=[this.sheet].concat(e.adoptedStyleSheets),Xe=this}else{this.styleTag=(e.ownerDocument||e).createElement("style");let t=e.head||e;t.insertBefore(this.styleTag,t.firstChild)}this.modules=[],e[ve]=this}mount(e){let t=this.sheet,n=0,r=0;for(let i=0;i-1&&(this.modules.splice(o,1),r--,o=-1),-1==o){if(this.modules.splice(r++,0,a),t)for(let e=0;e>1,s=i[r]-e||(n?this.value[r].endSide:this.value[r].startSide)-t;if(r==a)return s>=0?a:o;s>=0?o=r:a=r+1}}between(e,t,n,r){for(let i=this.findIndex(t,-1e9,!0),a=this.findIndex(n,1e9,!1,i);il||O==l&&c.startSide>0&&c.endSide<=0)continue;(l-O||c.endSide-c.startSide)<0||(a<0&&(a=O),c.point&&(o=Math.max(o,l-O)),n.push(c),r.push(O-a),i.push(l-a))}return{mapped:n.length?new ze(r,i,n,o):null,pos:a}}}class Ye{constructor(e,t,n=Ye.empty,r){this.chunkPos=e,this.chunk=t,this.nextLayer=n,this.maxPoint=r}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:n=!1,filterFrom:r=0,filterTo:i=this.length}=e,a=e.filter;if(0==t.length&&!a)return this;if(n&&t.slice().sort(qe),this.isEmpty)return t.length?Ye.of(t):this;let o=new Ee(this,null,-1).goto(0),s=0,O=[],l=new Ze;for(;o.value||s=0){let e=t[s++];l.addInner(e.from,e.to,e.value)||O.push(e)}else 1==o.rangeIndex&&o.chunkIndexthis.chunkEnd(o.chunkIndex)||io.to||i=i&&e<=i+a.length&&!1===a.between(i,e-i,t-i,n))return}this.nextLayer.between(e,t,n)}}iter(e=0){return Ie.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Ie.from(e).goto(t)}static compare(e,t,n,r,i=-1){let a=e.filter((e=>e.maxPoint>=500||!e.isEmpty&&t.indexOf(e)<0&&e.maxPoint>=i)),o=t.filter((t=>t.maxPoint>=500||!t.isEmpty&&e.indexOf(t)<0&&t.maxPoint>=i)),s=Ue(a,o),O=new Ce(a,s,i),l=new Ce(o,s,i);n.iterGaps(((e,t,n)=>Ae(O,e,l,t,n,r))),n.empty&&0==n.length&&Ae(O,0,l,0,0,r)}static eq(e,t,n=0,r){null==r&&(r=1e9);let i=e.filter((e=>!e.isEmpty&&t.indexOf(e)<0)),a=t.filter((t=>!t.isEmpty&&e.indexOf(t)<0));if(i.length!=a.length)return!1;if(!i.length)return!0;let o=Ue(i,a),s=new Ce(i,o,0).goto(n),O=new Ce(a,o,0).goto(n);for(;;){if(s.to!=O.to||!Ge(s.active,O.active)||s.point&&(!O.point||!s.point.eq(O.point)))return!1;if(s.to>=r)return!0;s.next(),O.next()}}static spans(e,t,n,r,i=-1){let a=new Ce(e,null,i).goto(t),o=t,s=a.openStart;for(;;){let e=Math.min(a.to,n);if(a.point?(r.point(o,e,a.point,a.activeForPoint(a.to),s),s=a.openEnd(e)+(a.to>e?1:0)):e>o&&(r.span(o,e,a.active,s),s=a.openEnd(e)),a.to>n)break;o=a.to,a.next()}return s}static of(e,t=!1){let n=new Ze;for(let r of e instanceof We?[e]:t?function(e){if(e.length>1)for(let t=e[0],n=1;n0)return e.slice().sort(qe);t=r}return e}(e):e)n.add(r.from,r.to,r.value);return n.finish()}}Ye.empty=new Ye([],[],null,-1),Ye.empty.nextLayer=Ye.empty;class Ze{constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}finishChunk(e){this.chunks.push(new ze(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}add(e,t,n){this.addInner(e,t,n)||(this.nextLayer||(this.nextLayer=new Ze)).add(e,t,n)}addInner(e,t,n){let r=e-this.lastTo||n.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||n.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return!(r<0)&&(250==this.from.length&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=n,this.lastFrom=e,this.lastTo=t,this.value.push(n),n.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let n=t.value.length-1;return this.last=t.value[n],this.lastFrom=t.from[n]+e,this.lastTo=t.to[n]+e,!0}finish(){return this.finishInner(Ye.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return e;let t=new Ye(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function Ue(e,t){let n=new Map;for(let t of e)for(let e=0;e=this.minPoint)break}}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=n&&r.push(new Ee(a,t,n,i));return 1==r.length?r[0]:new Ie(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let n of this.heap)n.goto(e,t);for(let e=this.heap.length>>1;e>=0;e--)Ve(this.heap,e);return this.next(),this}forward(e,t){for(let n of this.heap)n.forward(e,t);for(let e=this.heap.length>>1;e>=0;e--)Ve(this.heap,e);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(0==this.heap.length)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),Ve(this.heap,0)}}}function Ve(e,t){for(let n=e[t];;){let r=1+(t<<1);if(r>=e.length)break;let i=e[r];if(r+1=0&&(i=e[r+1],r++),n.compare(i)<0)break;e[r]=n,e[t]=i,t=r}}class Ce{constructor(e,t,n){this.minPoint=n,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=Ie.from(e,t,n)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){je(this.active,e),je(this.activeTo,e),je(this.activeRank,e),this.minActive=Ne(this.active,this.activeTo)}addActive(e){let t=0,{value:n,to:r,rank:i}=this.cursor;for(;t-1&&(this.activeTo[i]-this.cursor.from||this.active[i].endSide-this.cursor.startSide)<0){if(this.activeTo[i]>e){this.to=this.activeTo[i],this.endSide=this.active[i].endSide;break}this.removeActive(i),n&&je(n,i)}else{if(!this.cursor.value){this.to=this.endSide=1e9;break}if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}{let i=this.cursor.value;if(i.point){if(!(t&&this.cursor.to==this.to&&this.cursor.frome&&this.forward(this.to,this.endSide);break}this.cursor.next()}else this.addActive(n),this.cursor.next()}}}if(n){let t=0;for(;t=0&&!(this.activeRank[n]e||this.activeTo[n]==e&&this.active[n].endSide>=this.point.endSide)&&t.push(this.active[n]);return t.reverse()}openEnd(e){let t=0;for(let n=this.activeTo.length-1;n>=0&&this.activeTo[n]>e;n--)t++;return t}}function Ae(e,t,n,r,i,a){e.goto(t),n.goto(r);let o=r+i,s=r,O=r-t;for(;;){let t=e.to+O-n.to||e.endSide-n.endSide,r=t<0?e.to+O:n.to,i=Math.min(r,o);if(e.point||n.point?e.point&&n.point&&(e.point==n.point||e.point.eq(n.point))&&Ge(e.activeForPoint(e.to+O),n.activeForPoint(n.to))||a.comparePoint(s,i,e.point,n.point):i>s&&!Ge(e.active,n.active)&&a.compareRange(s,i,e.active,n.active),r>o)break;s=r,t<=0&&e.next(),t>=0&&n.next()}}function Ge(e,t){if(e.length!=t.length)return!1;for(let n=0;n=t;n--)e[n+1]=e[n];e[t]=n}function Ne(e,t){let n=-1,r=1e9;for(let i=0;i",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"',229:"Q"},Fe="undefined"!=typeof navigator&&/Chrome\/(\d+)/.exec(navigator.userAgent),Be="undefined"!=typeof navigator&&/Apple Computer/.test(navigator.vendor),He="undefined"!=typeof navigator&&/Gecko\/\d+/.test(navigator.userAgent),Ke="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),Je="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),et=Fe&&(Ke||+Fe[1]<57)||He&&Ke,tt=0;tt<10;tt++)De[48+tt]=De[96+tt]=String(tt);for(tt=1;tt<=24;tt++)De[tt+111]="F"+tt;for(tt=65;tt<=90;tt++)De[tt]=String.fromCharCode(tt+32),Me[tt]=String.fromCharCode(tt);for(var nt in De)Me.hasOwnProperty(nt)||(Me[nt]=De[nt]);function rt(e){let t;return t=11==e.nodeType?e.getSelection?e:e.ownerDocument:e,t.getSelection()}function it(e,t){return!!t&&e.contains(1!=t.nodeType?t.parentNode:t)}function at(e,t){if(!t.anchorNode)return!1;try{return it(e,t.anchorNode)}catch(e){return!1}}function ot(e){return 3==e.nodeType?Qt(e,0,e.nodeValue.length).getClientRects():1==e.nodeType?e.getClientRects():[]}function st(e,t,n,r){return!!n&&(lt(e,t,n,r,-1)||lt(e,t,n,r,1))}function Ot(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t}function lt(e,t,n,r,i){for(;;){if(e==n&&t==r)return!0;if(t==(i<0?0:ct(e))){if("DIV"==e.nodeName)return!1;let n=e.parentNode;if(!n||1!=n.nodeType)return!1;t=Ot(e)+(i<0?0:1),e=n}else{if(1!=e.nodeType)return!1;if(1==(e=e.childNodes[t+(i<0?-1:0)]).nodeType&&"false"==e.contentEditable)return!1;t=i<0?ct(e):0}}}function ct(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}const ut={left:0,right:0,top:0,bottom:0};function ht(e,t){let n=t?e.left:e.right;return{left:n,right:n,top:e.top,bottom:e.bottom}}function dt(e){return{left:0,right:e.innerWidth,top:0,bottom:e.innerHeight}}class pt{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}}let ft,mt=null;function gt(e){if(e.setActive)return e.setActive();if(mt)return e.focus(mt);let t=[];for(let n=e;n&&(t.push(n,n.scrollTop,n.scrollLeft),n!=n.ownerDocument);n=n.parentNode);if(e.focus(null==mt?{get preventScroll(){return mt={preventScroll:!0},!0}}:void 0),!mt){mt=!1;for(let e=0;et)return n.domBoundsAround(e,t,O);if(c>=e&&-1==r&&(r=s,i=O),O>t&&n.dom.parentNode==this.dom){a=s,o=l;break}l=c,O=c+n.breakAfter}return{from:i,to:o<0?n+this.length:o,startDOM:(r?this.children[r-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:a=0?this.children[a].dom:null}}markDirty(e=!1){this.dirty|=2,this.markParentsDirty(e)}markParentsDirty(e){for(let t=this.parent;t;t=t.parent){if(e&&(t.dirty|=2),1&t.dirty)return;t.dirty|=1,e=!1}}setParent(e){this.parent!=e&&(this.parent=e,this.dirty&&this.markParentsDirty(!0))}setDOM(e){this.dom&&(this.dom.cmView=null),this.dom=e,e.cmView=this}get rootView(){for(let e=this;;){let t=e.parent;if(!t)return e;e=t}}replaceChildren(e,t,n=kt){this.markDirty();for(let n=e;nthis.pos||e==this.pos&&(t>0||0==this.i||this.children[this.i-1].breakAfter))return this.off=e-this.pos,this;let n=this.children[--this.i];this.pos-=n.length+n.breakAfter}}}let[_t,Xt]="undefined"!=typeof navigator?[navigator,document]:[{userAgent:"",vendor:"",platform:""},{documentElement:{style:{}}}];const Tt=/Edge\/(\d+)/.exec(_t.userAgent),Rt=/MSIE \d/.test(_t.userAgent),Wt=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(_t.userAgent),qt=!!(Rt||Wt||Tt),zt=!qt&&/gecko\/(\d+)/i.test(_t.userAgent),Yt=!qt&&/Chrome\/(\d+)/.exec(_t.userAgent),Zt="webkitFontSmoothing"in Xt.documentElement.style,Ut=!qt&&/Apple Computer/.test(_t.vendor);var Et={mac:/Mac/.test(_t.platform),ie:qt,ie_version:Rt?Xt.documentMode||6:Wt?+Wt[1]:Tt?+Tt[1]:0,gecko:zt,gecko_version:zt?+(/Firefox\/(\d+)/.exec(_t.userAgent)||[0,0])[1]:0,chrome:!!Yt,chrome_version:Yt?+Yt[1]:0,ios:Ut&&(/Mobile\/\w+/.test(_t.userAgent)||_t.maxTouchPoints>2),android:/Android\b/.test(_t.userAgent),webkit:Zt,safari:Ut,webkit_version:Zt?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0,tabSize:null!=Xt.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};const It=[];class Vt extends yt{become(e){return!1}getSide(){return 0}}Vt.prototype.children=It;class Ct extends Vt{constructor(e){super(),this.text=e}get length(){return this.text.length}createDOM(e){this.setDOM(e||document.createTextNode(this.text))}sync(e){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text)}reuseDOM(e){return 3==e.nodeType&&(this.createDOM(e),!0)}merge(e,t,n){return(!n||n instanceof Ct&&!(this.length-(t-e)+n.length>256))&&(this.text=this.text.slice(0,e)+(n?n.text:"")+this.text.slice(t),this.markDirty(),!0)}slice(e){let t=new Ct(this.text.slice(e));return this.text=this.text.slice(0,e),t}localPosFromDOM(e,t){return e==this.dom?t:t?this.text.length:0}domAtPos(e){return new wt(this.dom,e)}domBoundsAround(e,t,n){return{from:n,to:n+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,t){return Gt(this.dom,e,t)}}class At extends Vt{constructor(e,t=[],n=0){super(),this.mark=e,this.children=t,this.length=n;for(let e of t)e.setParent(this)}createDOM(){let e=document.createElement(this.mark.tagName);if(this.mark.class&&(e.className=this.mark.class),this.mark.attrs)for(let t in this.mark.attrs)e.setAttribute(t,this.mark.attrs[t]);this.setDOM(e)}sync(e){(!this.dom||4&this.dirty)&&this.createDOM(),super.sync(e)}merge(e,t,n,r,i){return(!n||!(!(n instanceof At&&n.mark.eq(this.mark))||e&&r<=0||te&&t.push(n=e&&(r=i),n=o,i++}let a=this.length-e;return this.length=e,r>-1&&this.replaceChildren(r,this.children.length),new At(this.mark,t,a)}domAtPos(e){return Dt(this.dom,this.children,e)}coordsAt(e,t){return Ft(this,e,t)}}function Gt(e,t,n){let r=e.nodeValue.length;t>r&&(t=r);let i=t,a=t,o=0;0==t&&n<0||t==r&&n>=0?Et.chrome||Et.gecko||(t?(i--,o=1):(a++,o=-1)):n<0?i--:a++;let s=Qt(e,i,a).getClientRects();if(!s.length)return ut;let O=s[(o?o<0:n>=0)?0:s.length-1];return Et.safari&&!o&&0==O.width&&(O=Array.prototype.find.call(s,(e=>e.width))||O),o?ht(O,o<0):O}class jt extends Vt{constructor(e,t,n){super(),this.widget=e,this.length=t,this.side=n}static create(e,t,n){return new(e.customView||jt)(e,t,n)}slice(e){let t=jt.create(this.widget,this.length-e,this.side);return this.length-=e,t}sync(){this.dom&&this.widget.updateDOM(this.dom)||(this.setDOM(this.widget.toDOM(this.editorView)),this.dom.contentEditable="false")}getSide(){return this.side}merge(e,t,n,r,i){return!(n&&(!(n instanceof jt&&this.widget.compare(n.widget))||e>0&&r<=0||t0?n.length-1:0;r=n[t],!(e>0?0==t:t==n.length-1||r.top0?-1:1);return 0==e&&t>0||e==this.length&&t<=0?r:ht(r,0==e)}}class Lt extends jt{domAtPos(e){return new wt(this.widget.text,e)}sync(){this.dom||this.setDOM(this.widget.toDOM())}localPosFromDOM(e,t){return t?3==e.nodeType?Math.min(t,this.length):this.length:0}ignoreMutation(){return!1}get overrideDOMText(){return null}coordsAt(e,t){return Gt(this.widget.text,e,t)}}function Nt(e,t,n,r,i,a){let o=e.childCursor(),{i:s,off:O}=o.findPos(n,1),{i:l,off:c}=o.findPos(t,-1),u=t-n;for(let e of r)u+=e.length;e.length+=u;let{children:h}=e;if(l==s&&c){let e=h[l];if(1==r.length&&e.merge(c,O,r[0],i,a))return;if(0==r.length)return void e.merge(c,O,null,i,a);let t=e.slice(O);t.merge(0,0,r[r.length-1],0,a)?r[r.length-1]=t:r.push(t),s++,a=O=0}if(O){let e=h[s];r.length&&e.merge(0,O,r[r.length-1],0,a)?(r.pop(),a=r.length?0:i):e.merge(0,O,null,0,0)}else si&&n0;r--){let n=t[r-1].dom;if(n.parentNode==e)return wt.after(n)}return new wt(e,0)}function Mt(e,t,n){let r,{children:i}=e;n>0&&t instanceof At&&i.length&&(r=i[i.length-1])instanceof At&&r.mark.eq(t.mark)?Mt(r,t.children[0],n-1):(i.push(t),t.setParent(e)),e.length+=t.length}function Ft(e,t,n){for(let r=0,i=0;i0?s>=t:s>t)&&(t0)){let e=0;if(s==r){if(o.getSide()<=0)continue;e=n=-o.getSide()}let i=o.coordsAt(t-r,n);return e&&i?ht(i,n<0):i}r=s}let r=e.dom.lastChild;if(!r)return e.dom.getBoundingClientRect();let i=ot(r);return i[i.length-1]}function Bt(e,t){for(let n in e)"class"==n&&t.class?t.class+=" "+e.class:"style"==n&&t.style?t.style+=";"+e.style:t[n]=e[n];return t}function Ht(e,t){if(e==t)return!0;if(!e||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!=r.length)return!1;for(let i of n)if(-1==r.indexOf(i)||e[i]!==t[i])return!1;return!0}function Kt(e,t,n){if(t)for(let r in t)n&&r in n||e.removeAttribute(r);if(n)for(let r in n)t&&t[r]==n[r]||e.setAttribute(r,n[r])}class Jt{eq(e){return!1}updateDOM(e){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}ignoreEvent(e){return!0}get customView(){return null}}var en=function(e){return e[e.Text=0]="Text",e[e.WidgetBefore=1]="WidgetBefore",e[e.WidgetAfter=2]="WidgetAfter",e[e.WidgetRange=3]="WidgetRange",e}(en||(en={}));class tn extends Re{constructor(e,t,n,r){super(),this.startSide=e,this.endSide=t,this.widget=n,this.spec=r}get heightRelevant(){return!1}static mark(e){return new nn(e)}static widget(e){let t=e.side||0;return e.block&&(t+=200000001*(t>0?1:-1)),new an(e,t,t,!!e.block,e.widget||null,!1)}static replace(e){let t=!!e.block,{start:n,end:r}=on(e);return new an(e,t?-2e8*(n?2:1):1e8*(n?-1:1),t?2e8*(r?2:1):1e8*(r?1:-1),t,e.widget||null,!0)}static line(e){return new rn(e)}static set(e,t=!1){return Ye.of(e,t)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}}tn.none=Ye.empty;class nn extends tn{constructor(e){let{start:t,end:n}=on(e);super(1e8*(t?-1:1),1e8*(n?1:-1),null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){return this==e||e instanceof nn&&this.tagName==e.tagName&&this.class==e.class&&Ht(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}nn.prototype.point=!1;class rn extends tn{constructor(e){super(-1e8,-1e8,null,e)}eq(e){return e instanceof rn&&Ht(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}rn.prototype.mapMode=k.TrackBefore,rn.prototype.point=!0;class an extends tn{constructor(e,t,n,r,i,a){super(t,n,i,e),this.block=r,this.isReplace=a,this.mapMode=r?t<0?k.TrackBefore:k.TrackAfter:k.TrackDel}get type(){return this.startSide=5}eq(e){return e instanceof an&&function(e,t){return e==t||!!(e&&t&&e.compare(t))}(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}function on(e){let{inclusiveStart:t,inclusiveEnd:n}=e;return null==t&&(t=e.inclusive),null==n&&(n=e.inclusive),{start:t||!1,end:n||!1}}function sn(e,t,n,r=0){let i=n.length-1;i>=0&&n[i]+r>e?n[i]=Math.max(n[i],t):n.push(e,t)}an.prototype.point=!0;class On extends yt{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(e,t,n,r,i,a){if(n){if(!(n instanceof On))return!1;this.dom||n.transferDOM(this)}return r&&this.setDeco(n?n.attrs:null),Nt(this,e,t,n?n.children:ln,i,a),!0}split(e){let t=new On;if(t.breakAfter=this.breakAfter,0==this.length)return t;let{i:n,off:r}=this.childPos(e);r&&(t.append(this.children[n].slice(r),0),this.children[n].merge(r,this.children[n].length,null,0,0),n++);for(let e=n;e0&&0==this.children[n-1].length;)this.children[n-1].parent=null,n--;return this.children.length=n,this.markDirty(),this.length=e,t}transferDOM(e){this.dom&&(e.setDOM(this.dom),e.prevAttrs=void 0===this.prevAttrs?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(e){Ht(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,t){Mt(this,e,t)}addLineDeco(e){let t=e.spec.attributes;t&&(this.attrs=Bt(t,this.attrs||{}))}domAtPos(e){return Dt(this.dom,this.children,e)}sync(e){(!this.dom||4&this.dirty)&&(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),void 0!==this.prevAttrs&&(Kt(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e);let t=this.dom.lastChild;for(;t&&yt.get(t)instanceof At;)t=t.lastChild;if(!t||"BR"!=t.nodeName&&yt.get(t)instanceof jt&&(!Et.ios||!this.children.some((e=>e instanceof Ct)))){let e=document.createElement("BR");e.cmIgnore=!0,this.dom.appendChild(e)}}measureTextSize(){if(0==this.children.length||this.length>20)return null;let e=0;for(let t of this.children){if(!(t instanceof Ct))return null;let n=ot(t.dom);if(1!=n.length)return null;e+=n[0].width}return{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length}}coordsAt(e,t){return Ft(this,e,t)}match(e){return!1}get type(){return en.Text}static find(e,t){for(let n=0,r=0;;n++){let i=e.children[n],a=r+i.length;if(a>=t){if(i instanceof On)return i;if(i.length)return null}r=a+i.breakAfter}}}const ln=[];class cn extends yt{constructor(e,t,n){super(),this.widget=e,this.length=t,this.type=n,this.breakAfter=0}merge(e,t,n,r,i,a){return!(n&&(!(n instanceof cn&&this.widget.compare(n.widget))||e>0&&i<=0||t0;){if(this.textOff==this.text.length){let{value:t,lineBreak:n,done:r}=this.cursor.next(this.skip);if(this.skip=0,r)throw new Error("Ran out of text content when drawing inline views");if(n){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.curLine=null,e--;continue}this.text=t,this.textOff=0}let r=Math.min(this.text.length-this.textOff,e,512);this.getLine().append(this.wrapMarks(new Ct(this.text.slice(this.textOff,this.textOff+r)),t),n),this.textOff+=r,e-=r,n=0}}span(e,t,n,r){this.buildText(t-e,n,r),this.pos=t,this.openStart<0&&(this.openStart=r)}point(e,t,n,r,i){let a=t-e;if(n instanceof an)if(n.block){let{type:e}=n;e!=en.WidgetAfter||this.posCovered()||this.getLine(),this.addWidget(new cn(n.widget||new hn("div"),a,e))}else{let e=this.wrapMarks(jt.create(n.widget||new hn("span"),a,n.startSide),r);this.getLine().append(e,i)}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(n);a&&(this.textOff+a<=this.text.length?this.textOff+=a:(this.skip+=a-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=t),this.openStart<0&&(this.openStart=i)}static build(e,t,n,r){let i=new un(e,t,n);return i.openEnd=Ye.spans(r,t,n,i),i.openStart<0&&(i.openStart=i.openEnd),i.finish(),i}}class hn extends Jt{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}}const dn=[],pn=U.define(),fn=U.define(),mn=U.define(),gn=U.define(),Qn=U.define(),$n=U.define(),bn=ue.define({map:(e,t)=>e.map(t)});function xn(e,t,n){let r=e.facet(gn);r.length?r[0](t):window.onerror&&window.onerror(String(t),n,void 0,void 0,t)}const wn=U.define({combine:e=>!e.length||e[0]});class kn{constructor(e,t){this.field=e,this.get=t}}class yn{from(e){return new kn(this,e)}static define(){return new yn}}yn.decorations=yn.define(),yn.atomicRanges=yn.define(),yn.scrollMargins=yn.define();let Pn=0;const vn=U.define();class Sn{constructor(e,t,n){this.id=e,this.create=t,this.fields=n,this.extension=vn.of(this)}static define(e,t){let{eventHandlers:n,provide:r,decorations:i}=t||{},a=[];if(r)for(let e of Array.isArray(r)?r:[r])a.push(e);return n&&a.push(_n.from((e=>({plugin:e,handlers:n})))),i&&a.push(yn.decorations.from(i)),new Sn(Pn++,e,a)}static fromClass(e,t){return Sn.define((t=>new e(t)),t)}}const _n=yn.define();class Xn{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}takeField(e,t){for(let{field:n,get:r}of this.spec.fields)n==e&&t.push(r(this.value))}update(e){if(this.value){if(this.mustUpdate){let e=this.mustUpdate;if(this.mustUpdate=null,!this.value.update)return this;try{this.value.update(e)}catch(t){if(xn(e.state,t,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(e){}return Xn.dummy}}}else try{this.value=this.spec.create(e)}catch(t){return xn(e.state,t,"CodeMirror plugin crashed"),Xn.dummy}return this}destroy(e){var t;if(null===(t=this.value)||void 0===t?void 0:t.destroy)try{this.value.destroy()}catch(t){xn(e.state,t,"CodeMirror plugin crashed")}}}Xn.dummy=new Xn(Sn.define((()=>({}))));const Tn=U.define({combine:e=>e.reduce(((e,t)=>Bt(t,e)),{})}),Rn=U.define({combine:e=>e.reduce(((e,t)=>Bt(t,e)),{})}),Wn=U.define(),qn=U.define();class zn{constructor(e,t,n,r){this.fromA=e,this.toA=t,this.fromB=n,this.toB=r}join(e){return new zn(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,n=this;for(;t>0;t--){let r=e[t-1];if(!(r.fromA>n.toA)){if(r.toAl)break;i+=2}if(!s)return n;new zn(s.fromA,s.toA,s.fromB,s.toB).addToSet(n),a=s.toA,o=s.toB}}}class Yn{constructor(e,t,n=dn){this.view=e,this.state=t,this.transactions=n,this.flags=0,this.startState=e.state,this.changes=P.empty(this.startState.doc.length);for(let e of n)this.changes=this.changes.compose(e.changes);let r=[];this.changes.iterChangedRanges(((e,t,n,i)=>r.push(new zn(e,t,n,i)))),this.changedRanges=r;let i=e.hasFocus;i!=e.inputState.notifiedFocused&&(e.inputState.notifiedFocused=i,this.flags|=1),this.docChanged&&(this.flags|=2)}get viewportChanged(){return(4&this.flags)>0}get heightChanged(){return(2&this.flags)>0}get geometryChanged(){return this.docChanged||(10&this.flags)>0}get focusChanged(){return(1&this.flags)>0}get docChanged(){return this.transactions.some((e=>e.docChanged))}get selectionSet(){return this.transactions.some((e=>e.selection))}get empty(){return 0==this.flags&&0==this.transactions.length}}class Zn extends yt{constructor(e){super(),this.view=e,this.compositionDeco=tn.none,this.decorations=[],this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.setDOM(e.contentDOM),this.children=[new On],this.children[0].setParent(this),this.updateInner([new zn(0,0,0,e.state.doc.length)],this.updateDeco(),0)}get root(){return this.view.root}get editorView(){return this.view}get length(){return this.view.state.doc.length}update(e){let t=e.changedRanges;this.minWidth>0&&t.length&&(t.every((({fromA:e,toA:t})=>tthis.minWidthTo))?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=0),this.view.inputState.composing<0?this.compositionDeco=tn.none:e.transactions.length&&(this.compositionDeco=function(e,t){let n=e.observer.selectionRange,r=n.focusNode&&In(n.focusNode,n.focusOffset,0);if(!r)return tn.none;let i,a,o=e.docView.nearest(r),s=r;if(o instanceof Vt){for(;o.parent instanceof Vt;)o=o.parent;i=o.posAtStart,a=i+o.length,s=o.dom}else{if(!(o instanceof On))return tn.none;{for(;s.parentNode!=o.dom;)s=s.parentNode;let e=s.previousSibling;for(;e&&!yt.get(e);)e=e.previousSibling;i=a=e?yt.get(e).posAtEnd:o.posAtStart}}let O=t.mapPos(i,1),l=Math.max(O,t.mapPos(a,-1)),c=r.nodeValue,{state:u}=e;if(l-Oe.isUserEvent("select.pointer")));return 0==this.dirty&&0==t.length&&!(4&e.flags)&&e.state.selection.main.from>=this.view.viewport.from&&e.state.selection.main.to<=this.view.viewport.to?(this.updateSelection(n,o),!1):(this.updateInner(t,i,e.startState.doc.length,n,o),!0)}updateInner(e,t,n,r=!1,i=!1){this.updateChildren(e,t,n);let{observer:a}=this.view;a.ignore((()=>{this.dom.style.height=this.view.viewState.domHeight+"px",this.dom.style.minWidth=this.minWidth?this.minWidth+"px":"";let e=Et.chrome||Et.ios?{node:a.selectionRange.focusNode,written:!1}:void 0;this.sync(e),this.dirty=0,e&&(e.written||a.selectionRange.focusNode!=e.node)&&(r=!0),this.updateSelection(r,i),this.dom.style.height=""}));let o=[];if(this.view.viewport.from||this.view.viewport.to=0?e[n]:null;if(!i)break;let{fromA:a,toA:o,fromB:s,toB:O}=i,{content:l,breakAtStart:c,openStart:u,openEnd:h}=un.build(this.view.state.doc,s,O,t),{i:d,off:p}=r.findPos(o,1),{i:f,off:m}=r.findPos(a,-1);this.replaceRange(f,m,d,p,l,c,u,h)}}replaceRange(e,t,n,r,i,a,o,s){let O=this.children[e],l=i.length?i[i.length-1]:null,c=l?l.breakAfter:a;if(e==n&&!a&&!c&&i.length<2&&O.merge(t,r,i.length?l:null,0==t,o,s))return;let u=this.children[n];for(r0&&(!a&&i.length&&O.merge(t,O.length,i[0],!1,o,0)?O.breakAfter=i.shift().breakAfter:(tr.node.insertBefore(t,r.node.childNodes[r.offset]||null))),r=i=new wt(t,0),e=!0}var a;let o=this.view.observer.selectionRange;!e&&o.focusNode&&st(r.node,r.offset,o.anchorNode,o.anchorOffset)&&st(i.node,i.offset,o.focusNode,o.focusOffset)||(this.view.observer.ignore((()=>{let e=rt(this.root);if(n.empty){if(Et.gecko){let e=(t=r.node,a=r.offset,1!=t.nodeType?0:(a&&"false"==t.childNodes[a-1].contentEditable?1:0)|(an.head&&([r,i]=[i,r]),t.setEnd(i.node,i.offset),t.setStart(r.node,r.offset),e.removeAllRanges(),e.addRange(t)}var t,a})),this.view.observer.setSelectionRange(r,i)),this.impreciseAnchor=r.precise?null:new wt(o.anchorNode,o.anchorOffset),this.impreciseHead=i.precise?null:new wt(o.focusNode,o.focusOffset)}enforceCursorAssoc(){if(this.view.composing)return;let e=this.view.state.selection.main,t=rt(this.root);if(!e.empty||!e.assoc||!t.modify)return;let n=On.find(this,e.head);if(!n)return;let r=n.posAtStart;if(e.head==r||e.head==r+n.length)return;let i=this.coordsAt(e.head,-1),a=this.coordsAt(e.head,1);if(!i||!a||i.bottom>a.top)return;let o=this.domAtPos(e.head+e.assoc);t.collapse(o.node,o.offset),t.modify("move",e.assoc<0?"forward":"backward","lineboundary")}mayControlSelection(){return this.view.state.facet(wn)?this.root.activeElement==this.dom:at(this.dom,this.view.observer.selectionRange)}nearest(e){for(let t=e;t;){let e=yt.get(t);if(e&&e.rootView==this)return e;t=t.parentNode}return null}posFromDOM(e,t){let n=this.nearest(e);if(!n)throw new RangeError("Trying to find position for a DOM position outside of the document");return n.localPosFromDOM(e,t)+n.posAtStart}domAtPos(e){let{i:t,off:n}=this.childCursor().findPos(e,-1);for(;ta||e==a&&i.type!=en.WidgetBefore&&i.type!=en.WidgetAfter&&(!r||2==t||this.children[r-1].breakAfter||this.children[r-1].type==en.WidgetBefore&&t>-2))return i.coordsAt(e-a,t);n=a}}measureVisibleLineHeights(){let e=[],{from:t,to:n}=this.view.viewState.viewport,r=Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1;for(let i=0,a=0;an)break;if(i>=t){e.push(o.dom.getBoundingClientRect().height);let t=o.dom.scrollWidth;t>r&&(this.minWidth=r=t,this.minWidthFrom=i,this.minWidthTo=s)}i=s+o.breakAfter}return e}measureTextSize(){for(let e of this.children)if(e instanceof On){let t=e.measureTextSize();if(t)return t}let e,t,n=document.createElement("div");return n.className="cm-line",n.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore((()=>{this.dom.appendChild(n);let r=ot(n.firstChild)[0];e=n.getBoundingClientRect().height,t=r?r.width/27:7,n.remove()})),{lineHeight:e,charWidth:t}}childCursor(e=this.length){let t=this.children.length;return t&&(e-=this.children[--t].length),new St(this.children,e,t)}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let n=0,r=0;;r++){let i=r==t.viewports.length?null:t.viewports[r],a=i?i.from-1:this.length;if(a>n){let r=t.lineAt(a,0).bottom-t.lineAt(n,0).top;e.push(tn.replace({widget:new Un(r),block:!0,inclusive:!0}).range(n,a))}if(!i)break;n=i.to+1}return tn.set(e)}updateDeco(){return this.decorations=[...this.view.pluginField(yn.decorations),...this.view.state.facet(Wn),this.compositionDeco,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco]}scrollRangeIntoView(e){let t,n=this.coordsAt(e.head,e.empty?e.assoc:e.head>e.anchor?-1:1);if(!n)return;!e.empty&&(t=this.coordsAt(e.anchor,e.anchor>e.head?-1:1))&&(n={left:Math.min(n.left,t.left),top:Math.min(n.top,t.top),right:Math.max(n.right,t.right),bottom:Math.max(n.bottom,t.bottom)});let r=0,i=0,a=0,o=0;for(let e of this.view.pluginField(yn.scrollMargins))if(e){let{left:t,right:n,top:s,bottom:O}=e;null!=t&&(r=Math.max(r,t)),null!=n&&(i=Math.max(i,n)),null!=s&&(a=Math.max(a,s)),null!=O&&(o=Math.max(o,O))}!function(e,t,n){let r=e.ownerDocument,i=r.defaultView;for(let a=e.parentNode;a;)if(1==a.nodeType){let e,o=a==r.body;if(o)e=dt(i);else{if(a.scrollHeight<=a.clientHeight&&a.scrollWidth<=a.clientWidth){a=a.parentNode;continue}let t=a.getBoundingClientRect();e={left:t.left,right:t.left+a.clientWidth,top:t.top,bottom:t.top+a.clientHeight}}let s=0,O=0;if(t.top0&&t.bottom>e.bottom+O&&(O=t.bottom-e.bottom+O+5)):t.bottom>e.bottom&&(O=t.bottom-e.bottom+5,n<0&&t.top-O0&&t.right>e.right+s&&(s=t.right-e.right+s+5)):t.right>e.right&&(s=t.right-e.right+5,n<0&&t.left0&&n<=0)t=ct(e=e.childNodes[t-1]);else{if(!(1==e.nodeType&&t=0))return null;e=e.childNodes[t],t=0}}}class Vn{constructor(){this.changes=[]}compareRange(e,t){sn(e,t,this.changes)}comparePoint(e,t){sn(e,t,this.changes)}}var Cn=function(e){return e[e.LTR=0]="LTR",e[e.RTL=1]="RTL",e}(Cn||(Cn={}));const An=Cn.LTR,Gn=Cn.RTL;function jn(e){let t=[];for(let n=0;n=t){if(o.level==n)return a;(i<0||(0!=r?r<0?o.fromt:e[i].level>o.level))&&(i=a)}}if(i<0)throw new RangeError("Index out of range");return i}}const Kn=[];function Jn(e){return[new Hn(0,e,0)]}let er="";function tr(e,t,n,i,a){var o;let s=i.head-e.from,O=-1;if(0==s){if(!a||!e.length)return null;t[0].level!=n&&(s=t[0].side(!1,n),O=0)}else if(s==e.length){if(a)return null;let e=t[t.length-1];e.level!=n&&(s=e.side(!0,n),O=t.length-1)}O<0&&(O=Hn.find(t,s,null!==(o=i.bidiLevel)&&void 0!==o?o:-1,i.assoc));let l=t[O];s==l.side(a,n)&&(l=t[O+=a?1:-1],s=l.side(!a,n));let c=a==(l.dir==n),u=r(e.text,s,c);if(er=e.text.slice(Math.min(s,u),Math.max(s,u)),u!=l.side(a,n))return q.cursor(u+e.from,c?-1:1,l.level);let h=O==(a?t.length-1:0)?null:t[O+(a?1:-1)];return h||l.level==n?h&&h.levele?t.left-e:Math.max(0,e-t.right)}function rr(e,t){return t.top>e?t.top-e:Math.max(0,e-t.bottom)}function ir(e,t){return e.topt.top+1}function ar(e,t){return te.bottom?{top:e.top,left:e.left,right:e.right,bottom:t}:e}function sr(e,t,n){let r,i,a,o,s,O,l,c;for(let u=e.firstChild;u;u=u.nextSibling){let e=ot(u);for(let h=0;hf||o==f&&a>p)&&(r=u,i=d,a=p,o=f),0==p?n>d.bottom&&(!l||l.bottomd.top)&&(O=u,c=d):l&&ir(l,d)?l=or(l,d.bottom):c&&ir(c,d)&&(c=ar(c,d.top))}}if(l&&l.bottom>=n?(r=s,i=l):c&&c.top<=n&&(r=O,i=c),!r)return{node:e,offset:0};let u=Math.max(i.left,Math.min(i.right,t));return 3==r.nodeType?Or(r,u,n):a||"true"!=r.contentEditable?{node:e,offset:Array.prototype.indexOf.call(e.childNodes,r)+(t>=(i.left+i.right)/2?1:0)}:sr(r,u,n)}function Or(e,t,n){let r=e.nodeValue.length,i=-1,a=1e9,o=0;for(let s=0;sn?l.top-n:n-l.bottom)-1;if(l.left-1<=t&&l.right+1>=t&&c=(l.left+l.right)/2,r=n;if(Et.chrome||Et.gecko){Qt(e,s).getBoundingClientRect().left==l.right&&(r=!n)}if(c<=0)return{node:e,offset:s+(r?1:0)};i=s+(r?1:0),a=c}}}return{node:e,offset:i>-1?i:o>0?e.nodeValue.length:0}}function lr(e,{x:t,y:n},r,i=-1){let a,o=e.contentDOM.getBoundingClientRect(),s=e.defaultLineHeight/2;for(let t=!1;;){if(a=e.blockAtHeight(n,o.top),a.top>n||a.bottomn?-1:1,n=Math.min(a.bottom-s,Math.max(a.top+s,n)),t)return r?null:0;t=!0}if(a.type==en.Text)break;n=i>0?a.bottom+s:a.top-s}let O=a.from;if(t=Math.max(o.left+1,Math.min(o.right-1,t)),Oe.viewport.to)return e.viewport.to==e.state.doc.length?e.state.doc.length:cr(e,o,a,t,n);let l,c=e.dom.ownerDocument,u=(e.root.elementFromPoint?e.root:c).elementFromPoint(t,n),h=-1;if(u&&e.contentDOM.contains(u)&&!(e.docView.nearest(u)instanceof jt))if(c.caretPositionFromPoint){let e=c.caretPositionFromPoint(t,n);e&&({offsetNode:l,offset:h}=e)}else if(c.caretRangeFromPoint){let e=c.caretRangeFromPoint(t,n);e&&(({startContainer:l,startOffset:h}=e),Et.safari&&function(e,t,n){let r;if(3!=e.nodeType||t!=(r=e.nodeValue.length))return!1;for(let t=e.nextSibling;t;t=t.nextSibling)if(1!=t.nodeType||"BR"!=t.nodeName)return!1;return Qt(e,r-1,r).getBoundingClientRect().left>n}(l,h,t)&&(l=void 0))}if(!l||!e.docView.dom.contains(l)){let r=On.find(e.docView,O);({node:l,offset:h}=sr(r.dom,t,n))}return e.docView.posFromDOM(l,h)}function cr(e,t,n,i,a){let o=Math.round((i-t.left)*e.defaultCharacterWidth);if(e.lineWrapping&&n.height>1.5*e.defaultLineHeight){o+=Math.floor((a-n.top)/e.defaultLineHeight)*e.viewState.heightOracle.lineLength}let s=e.state.sliceDoc(n.from,n.to);return n.from+function(e,t,n,i){for(let i=0,a=0;;){if(a>=t)return i;if(i==e.length)break;a+=9==e.charCodeAt(i)?n-a%n:1,i=r(e,i)}return!0===i?-1:e.length}(s,o,e.state.tabSize)}function ur(e,t,n,r){let i=e.state.doc.lineAt(t.head),a=e.bidiSpans(i);for(let o=t,s=null;;){let t=tr(i,a,e.textDirection,o,n),O=er;if(!t){if(i.number==(n?e.state.doc.lines:1))return o;O="\n",i=e.state.doc.line(i.number+(n?1:-1)),a=e.bidiSpans(i),t=q.cursor(n?i.from:i.to)}if(s){if(!s(O))return o}else{if(!r)return t;s=r(O)}o=t}}function hr(e,t,n){let r=e.pluginField(yn.atomicRanges);for(;;){let e=!1;for(let i of r)i.between(n.from-1,n.from+1,((r,i,a)=>{n.from>r&&n.fromn.from?q.cursor(r,1):q.cursor(i,-1),e=!0)}));if(!e)return n}}class dr{constructor(e){this.lastKeyCode=0,this.lastKeyTime=0,this.pendingIOSKey=null,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastEscPress=0,this.lastContextMenu=0,this.scrollHandlers=[],this.registeredEvents=[],this.customHandlers=[],this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.rapidCompositionStart=!1,this.mouseSelection=null;for(let t in gr){let n=gr[t];e.contentDOM.addEventListener(t,(r=>{"keydown"==t&&this.keydown(e,r)||mr(e,r)&&!this.ignoreDuringComposition(r)&&(this.mustFlushObserver(r)&&e.observer.forceFlush(),this.runCustomHandlers(t,e,r)?r.preventDefault():n(e,r))})),this.registeredEvents.push(t)}this.notifiedFocused=e.hasFocus,this.ensureHandlers(e),Et.safari&&e.contentDOM.addEventListener("input",(()=>null))}setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}ensureHandlers(e){let t=this.customHandlers=e.pluginField(_n);for(let n of t)for(let t in n.handlers)this.registeredEvents.indexOf(t)<0&&"scroll"!=t&&(this.registeredEvents.push(t),e.contentDOM.addEventListener(t,(n=>{mr(e,n)&&this.runCustomHandlers(t,e,n)&&n.preventDefault()})))}runCustomHandlers(e,t,n){for(let r of this.customHandlers){let i=r.handlers[e],a=!1;if(i){try{a=i.call(r.plugin,n,t)}catch(e){xn(t.state,e)}if(a||n.defaultPrevented)return Et.android&&"keydown"==e&&13==n.keyCode&&t.observer.flushSoon(),!0}}return!1}runScrollHandlers(e,t){for(let n of this.customHandlers){let r=n.handlers.scroll;if(r)try{r.call(n.plugin,t,e)}catch(t){xn(e.state,t)}}}keydown(e,t){return this.lastKeyCode=t.keyCode,this.lastKeyTime=Date.now(),!!this.screenKeyEvent(e,t)||!(!Et.ios||13!=t.keyCode&&8!=t.keyCode||t.ctrlKey||t.altKey||t.metaKey||t.synthetic)&&(this.pendingIOSKey=13==t.keyCode?"enter":"backspace",setTimeout((()=>this.flushIOSKey(e)),250),!0)}flushIOSKey(e){if(!this.pendingIOSKey)return!1;let t=e.contentDOM,n=this.pendingIOSKey;return this.pendingIOSKey=null,"enter"==n?$t(t,"Enter",13):$t(t,"Backspace",8)}ignoreDuringComposition(e){return!!/^key/.test(e.type)&&(this.composing>0||!!(Et.safari&&Date.now()-this.compositionEndedAt<500)&&(this.compositionEndedAt=0,!0))}screenKeyEvent(e,t){let n=9==t.keyCode&&Date.now()=t.clientX&&n.top<=t.clientY&&n.bottom>=t.clientY)return!0}return!1}(t,n)&&null,!1===this.dragging&&(n.preventDefault(),this.select(n))}move(e){if(0==e.buttons)return this.destroy();!1===this.dragging&&this.select(this.lastEvent=e)}up(e){null==this.dragging&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.inputState.mouseSelection=null}select(e){let t=this.style.get(e,this.extend,this.multiple);t.eq(this.view.state.selection)&&t.main.assoc==this.view.state.selection.main.assoc||this.view.dispatch({selection:t,userEvent:"select.pointer",scrollIntoView:!0})}update(e){e.docChanged&&this.dragging&&(this.dragging=this.dragging.map(e.changes)),this.style.update(e)&&setTimeout((()=>this.select(this.lastEvent)),20)}}function mr(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let n,r=t.target;r!=e.contentDOM;r=r.parentNode)if(!r||11==r.nodeType||(n=yt.get(r))&&n.ignoreEvent(t))return!1;return!0}const gr=Object.create(null),Qr=Et.ie&&Et.ie_version<15||Et.ios&&Et.webkit_version<604;function $r(e,t){let n,{state:r}=e,i=1,a=r.toText(t),o=a.lines==r.selection.ranges.length,s=null!=Rr&&r.selection.ranges.every((e=>e.empty))&&Rr==a.toString();if(s){let e=-1;n=r.changeByRange((n=>{let s=r.doc.lineAt(n.from);if(s.from==e)return{range:n};e=s.from;let O=r.toText((o?a.line(i++).text:t)+r.lineBreak);return{changes:{from:s.from,insert:O},range:q.cursor(n.from+O.length)}}))}else n=o?r.changeByRange((e=>{let t=a.line(i++);return{changes:{from:e.from,to:e.to,insert:t.text},range:q.cursor(e.from+t.length)}})):r.replaceSelection(a);e.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}gr.keydown=(e,t)=>{e.inputState.setSelectionOrigin("select")};let br=0;function xr(e,t,n,i){if(1==i)return q.cursor(t,n);if(2==i)return function(e,t,n=1){let i=e.charCategorizer(t),a=e.doc.lineAt(t),o=t-a.from;if(0==a.length)return q.cursor(t);0==o?n=1:o==a.length&&(n=-1);let s=o,O=o;n<0?s=r(a.text,o,!1):O=r(a.text,o);let l=i(a.text.slice(s,O));for(;s>0;){let e=r(a.text,s,!1);if(i(a.text.slice(e,s))!=l)break;s=e}for(;O{br=Date.now(),e.inputState.setSelectionOrigin("select.pointer")},gr.touchmove=e=>{e.inputState.setSelectionOrigin("select.pointer")},gr.mousedown=(e,t)=>{if(e.observer.flush(),br>Date.now()-2e3)return;let n=null;for(let r of e.state.facet(mn))if(n=r(e,t),n)break;n||0!=t.button||(n=function(e,t){let n=Pr(e,t),r=function(e){if(!vr)return e.detail;let t=Sr,n=Xr;return Sr=e,Xr=Date.now(),_r=!t||n>Date.now()-400&&Math.abs(t.clientX-e.clientX)<2&&Math.abs(t.clientY-e.clientY)<2?(_r+1)%3:1}(t),i=e.state.selection,a=n,o=t;return{update(e){e.changes&&(n&&(n.pos=e.changes.mapPos(n.pos)),i=i.map(e.changes),o=null)},get(t,s,O){let l;if(o&&t.clientX==o.clientX&&t.clientY==o.clientY?l=a:(l=a=Pr(e,t),o=t),!l||!n)return i;let c=xr(e,l.pos,l.bias,r);if(n.pos!=l.pos&&!s){let t=xr(e,n.pos,n.bias,r),i=Math.min(t.from,c.from),a=Math.max(t.to,c.to);c=igt(e.contentDOM))),e.inputState.startMouseSelection(e,t,n))};let wr=(e,t)=>e>=t.top&&e<=t.bottom,kr=(e,t,n)=>wr(t,n)&&e>=n.left&&e<=n.right;function yr(e,t,n,r){let i=On.find(e.docView,t);if(!i)return 1;let a=t-i.posAtStart;if(0==a)return 1;if(a==i.length)return-1;let o=i.coordsAt(a,-1);if(o&&kr(n,r,o))return-1;let s=i.coordsAt(a,1);return s&&kr(n,r,s)?1:o&&wr(r,o)?-1:1}function Pr(e,t){let n=e.posAtCoords({x:t.clientX,y:t.clientY},!1);return{pos:n,bias:yr(e,n,t.clientX,t.clientY)}}const vr=Et.ie&&Et.ie_version<=11;let Sr=null,_r=0,Xr=0;function Tr(e,t,n,r){let i=e.posAtCoords({x:t.clientX,y:t.clientY});if(null==i||!n)return;t.preventDefault();let{mouseSelection:a}=e.inputState,o=r&&a&&a.dragging&&a.dragMove?{from:a.dragging.from,to:a.dragging.to}:null,s={from:i,insert:n},O=e.state.changes(o?[o,s]:s);e.focus(),e.dispatch({changes:O,selection:{anchor:O.mapPos(i,-1),head:O.mapPos(i,1)},userEvent:o?"move.drop":"input.drop"})}gr.dragstart=(e,t)=>{let{selection:{main:n}}=e.state,{mouseSelection:r}=e.inputState;r&&(r.dragging=n),t.dataTransfer&&(t.dataTransfer.setData("Text",e.state.sliceDoc(n.from,n.to)),t.dataTransfer.effectAllowed="copyMove")},gr.drop=(e,t)=>{if(!t.dataTransfer)return;if(e.state.readOnly)return t.preventDefault();let n=t.dataTransfer.files;if(n&&n.length){t.preventDefault();let r=Array(n.length),i=0,a=()=>{++i==n.length&&Tr(e,t,r.filter((e=>null!=e)).join(e.state.lineBreak),!1)};for(let e=0;e{/[\x00-\x08\x0e-\x1f]{2}/.test(t.result)||(r[e]=t.result),a()},t.readAsText(n[e])}}else Tr(e,t,t.dataTransfer.getData("Text"),!0)},gr.paste=(e,t)=>{if(e.state.readOnly)return t.preventDefault();e.observer.flush();let n=Qr?null:t.clipboardData;n?($r(e,n.getData("text/plain")),t.preventDefault()):function(e){let t=e.dom.parentNode;if(!t)return;let n=t.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.focus(),setTimeout((()=>{e.focus(),n.remove(),$r(e,n.value)}),50)}(e)};let Rr=null;function Wr(e,t){if(e.docView.compositionDeco.size){e.inputState.rapidCompositionStart=t;try{e.update([])}finally{e.inputState.rapidCompositionStart=!1}}}gr.copy=gr.cut=(e,t)=>{let{text:n,ranges:r,linewise:i}=function(e){let t=[],n=[],r=!1;for(let r of e.selection.ranges)r.empty||(t.push(e.sliceDoc(r.from,r.to)),n.push(r));if(!t.length){let i=-1;for(let{from:r}of e.selection.ranges){let a=e.doc.lineAt(r);a.number>i&&(t.push(a.text),n.push({from:a.from,to:Math.min(e.doc.length,a.to+1)})),i=a.number}r=!0}return{text:t.join(e.lineBreak),ranges:n,linewise:r}}(e.state);if(!n&&!i)return;Rr=i?n:null;let a=Qr?null:t.clipboardData;a?(t.preventDefault(),a.clearData(),a.setData("text/plain",n)):function(e,t){let n=e.dom.parentNode;if(!n)return;let r=n.appendChild(document.createElement("textarea"));r.style.cssText="position: fixed; left: -10000px; top: 10px",r.value=t,r.focus(),r.selectionEnd=t.length,r.selectionStart=0,setTimeout((()=>{r.remove(),e.focus()}),50)}(e,n),"cut"!=t.type||e.state.readOnly||e.dispatch({changes:r,scrollIntoView:!0,userEvent:"delete.cut"})},gr.focus=gr.blur=e=>{setTimeout((()=>{e.hasFocus!=e.inputState.notifiedFocused&&e.update([])}),10)},gr.beforeprint=e=>{e.viewState.printing=!0,e.requestMeasure(),setTimeout((()=>{e.viewState.printing=!1,e.requestMeasure()}),2e3)},gr.compositionstart=gr.compositionupdate=e=>{null==e.inputState.compositionFirstChange&&(e.inputState.compositionFirstChange=!0),e.inputState.composing<0&&(e.docView.compositionDeco.size&&(e.observer.flush(),Wr(e,!0)),e.inputState.composing=0)},gr.compositionend=e=>{e.inputState.composing=-1,e.inputState.compositionEndedAt=Date.now(),e.inputState.compositionFirstChange=null,setTimeout((()=>{e.inputState.composing<0&&Wr(e,!1)}),50)},gr.contextmenu=e=>{e.inputState.lastContextMenu=Date.now()};const qr=["pre-wrap","normal","pre-line"];class zr{constructor(){this.doc=h.empty,this.lineWrapping=!1,this.direction=Cn.LTR,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.lineLength=30,this.heightChanged=!1}heightForGap(e,t){let n=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(n+=Math.ceil((t-e-n*this.lineLength*.5)/this.lineLength)),this.lineHeight*n}heightForLine(e){if(!this.lineWrapping)return this.lineHeight;return(1+Math.max(0,Math.ceil((e-this.lineLength)/(this.lineLength-5))))*this.lineHeight}setDoc(e){return this.doc=e,this}mustRefresh(e,t,n){let r=!1;for(let t=0;t-1!=this.lineWrapping||this.direction!=n}refresh(e,t,n,r,i,a){let o=qr.indexOf(e)>-1,s=Math.round(n)!=Math.round(this.lineHeight)||this.lineWrapping!=o||this.direction!=t;if(this.lineWrapping=o,this.direction=t,this.lineHeight=n,this.charWidth=r,this.lineLength=i,s){this.heightSamples={};for(let e=0;e0}set outdated(e){this.flags=(e?2:0)|-3&this.flags}setHeight(e,t){this.height!=t&&(Math.abs(this.height-t)>1e-4&&(e.heightChanged=!0),this.height=t)}replace(e,t,n){return Er.of(n)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,n,r){let i=this;for(let a=r.length-1;a>=0;a--){let{fromA:o,toA:s,fromB:O,toB:l}=r[a],c=i.lineAt(o,Ur.ByPosNoHeight,t,0,0),u=c.to>=s?c:i.lineAt(s,Ur.ByPosNoHeight,t,0,0);for(l+=u.to-s,s=u.to;a>0&&c.from<=r[a-1].toA;)o=r[a-1].fromA,O=r[a-1].fromB,a--,o2*i){let i=e[t-1];i.break?e.splice(--t,1,i.left,null,i.right):e.splice(--t,1,i.left,i.right),n+=1+i.break,r-=i.size}else{if(!(i>2*r))break;{let t=e[n];t.break?e.splice(n,1,t.left,null,t.right):e.splice(n,1,t.left,t.right),n+=2+t.break,i-=t.size}}else if(r0){let e=n[n.length-1];e instanceof Cr?n[n.length-1]=new Cr(e.length+r):n.push(null,new Cr(r-1))}if(e>0){let t=n[0];t instanceof Cr?n[0]=new Cr(e+t.length):n.unshift(new Cr(e-1),null)}return Er.of(n)}decomposeLeft(e,t){t.push(new Cr(e-1),null)}decomposeRight(e,t){t.push(null,new Cr(this.length-e-1))}updateHeight(e,t=0,n=!1,r){let i=t+this.length;if(r&&r.from<=t+this.length&&r.more){let n=[],a=Math.max(t,r.from);for(r.from>t&&n.push(new Cr(r.from-t-1).updateHeight(e,t));a<=i&&r.more;){let t=e.doc.lineAt(a).length;n.length&&n.push(null);let i=new Vr(t,r.heights[r.index++]);i.outdated=!1,n.push(i),a+=t+1}return a<=i&&n.push(null,new Cr(i-a).updateHeight(e,a)),e.heightChanged=!0,Er.of(n)}return(n||this.outdated)&&(this.setHeight(e,e.heightForGap(t,t+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}}class Ar extends Er{constructor(e,t,n){super(e.length+t+n.length,e.height+n.height,t|(e.outdated||n.outdated?2:0)),this.left=e,this.right=n,this.size=e.size+n.size}get break(){return 1&this.flags}blockAt(e,t,n,r){let i=n+this.left.height;return eo))return O;let l=t==Ur.ByPosNoHeight?Ur.ByPosNoHeight:Ur.ByPos;return s?O.join(this.right.lineAt(o,l,n,a,o)):this.left.lineAt(o,l,n,r,i).join(O)}forEachLine(e,t,n,r,i,a){let o=r+this.left.height,s=i+this.left.length+this.break;if(this.break)e=s&&this.right.forEachLine(e,t,n,o,s,a);else{let O=this.lineAt(s,Ur.ByPos,n,r,i);e=e&&O.from<=t&&a(O),t>O.to&&this.right.forEachLine(O.to+1,t,n,o,s,a)}}replace(e,t,n){let r=this.left.length+this.break;if(tthis.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,n));let i=[];e>0&&this.decomposeLeft(e,i);let a=i.length;for(let e of n)i.push(e);if(e>0&&Gr(i,a-1),t=n&&t.push(null)),e>n&&this.right.decomposeLeft(e-n,t)}decomposeRight(e,t){let n=this.left.length,r=n+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e2*t.size||t.size>2*e.size?Er.of(this.break?[e,null,t]:[e,t]):(this.left=e,this.right=t,this.height=e.height+t.height,this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,n=!1,r){let{left:i,right:a}=this,o=t+i.length+this.break,s=null;return r&&r.from<=t+i.length&&r.more?s=i=i.updateHeight(e,t,n,r):i.updateHeight(e,t,n),r&&r.from<=o+a.length&&r.more?s=a=a.updateHeight(e,o,n,r):a.updateHeight(e,o,n),s?this.balanced(i,a):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function Gr(e,t){let n,r;null==e[t]&&(n=e[t-1])instanceof Cr&&(r=e[t+1])instanceof Cr&&e.splice(t-1,3,new Cr(n.length+1+r.length))}class jr{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let e=Math.min(t,this.lineEnd),n=this.nodes[this.nodes.length-1];n instanceof Vr?n.length+=e-this.pos:(e>this.pos||!this.isCovered)&&this.nodes.push(new Vr(e-this.pos,-1)),this.writtenTo=e,t>e&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,n){if(e=5)&&this.addLineDeco(r,i)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenToe&&this.nodes.push(new Vr(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let n=new Cr(t-e);return this.oracle.doc.lineAt(e).to==t&&(n.flags|=4),n}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Vr)return e;let t=new Vr(0,-1);return this.nodes.push(t),t}addBlock(e){this.enterLine(),e.type!=en.WidgetAfter||this.isCovered||this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,e.type!=en.WidgetBefore&&(this.covering=e)}addLineDeco(e,t){let n=this.ensureLine();n.length+=t,n.collapsed+=t,n.widgetHeight=Math.max(n.widgetHeight,e),this.writtenTo=this.pos=this.pos+t}finish(e){let t=0==this.nodes.length?null:this.nodes[this.nodes.length-1];!(this.lineStart>-1)||t instanceof Vr||this.isCovered?(this.writtenToe.draw(!1)))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let n=0;n<=1;n++){let r=n?t.head:t.anchor;if(!e.some((({from:e,to:t})=>r>=e&&r<=t))){let{from:t,to:n}=this.lineAt(r,0);e.push(new Fr(t,n))}}this.viewports=e.sort(((e,t)=>e.from-t.from)),this.scaler=this.heightMap.height<=7e6?Jr:new ei(this.heightOracle.doc,this.heightMap,this.viewports)}update(e,t=null){let n=this.state;this.state=e.state;let r=this.state.facet(Wn),i=e.changedRanges,a=zn.extendWithRanges(i,function(e,t,n){let r=new Lr;return Ye.compare(e,t,n,r,0),r.changes}(e.startState.facet(Wn),r,e?e.changes:P.empty(this.state.doc.length))),o=this.heightMap.height;this.heightMap=this.heightMap.applyChanges(r,n.doc,this.heightOracle.setDoc(this.state.doc),a),this.heightMap.height!=o&&(e.flags|=2);let s=a.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.heads.to)||!this.viewportIsAppropriate(s))&&(s=this.getViewport(0,t)),this.viewport=s,this.updateForViewport(),(this.lineGaps.length||this.viewport.to-this.viewport.from>15e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(),t&&(this.scrollTo=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&(this.mustEnforceCursorAssoc=!0)}measure(e,t){let n=e.dom,r="",i=Cn.LTR,a=0;if(!t){let e=window.getComputedStyle(n);r=e.whiteSpace,i="rtl"==e.direction?Cn.RTL:Cn.LTR;let t=parseInt(e.paddingTop)||0,o=parseInt(e.paddingBottom)||0;this.paddingTop==t&&this.paddingBottom==o||(a|=8,this.paddingTop=t,this.paddingBottom=o)}let o=this.printing?{top:-1e8,bottom:1e8,left:-1e8,right:1e8}:function(e,t){let n=e.getBoundingClientRect(),r=Math.max(0,n.left),i=Math.min(innerWidth,n.right),a=Math.max(0,n.top),o=Math.min(innerHeight,n.bottom);for(let t=e.parentNode;t;)if(1==t.nodeType){let e=window.getComputedStyle(t);if((t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth)&&"visible"!=e.overflow){let e=t.getBoundingClientRect();r=Math.max(r,e.left),i=Math.min(i,e.right),a=Math.max(a,e.top),o=Math.min(o,e.bottom)}t="absolute"==e.position||"fixed"==e.position?t.offsetParent:t.parentNode}else{if(11!=t.nodeType)break;t=t.host}return{left:r-n.left,right:i-n.left,top:a-(n.top+t),bottom:o-(n.top+t)}}(n,this.paddingTop),s=o.top-this.pixelViewport.top,O=o.bottom-this.pixelViewport.bottom;if(this.pixelViewport=o,this.inView=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left,!this.inView)return 0;let l=e.measureVisibleLineHeights(),c=!1,u=0,h=this.heightOracle;if(!t){let t=e.dom.clientWidth;if(h.mustRefresh(l,r,i)||h.lineWrapping&&Math.abs(t-this.contentWidth)>h.charWidth){let{lineHeight:n,charWidth:o}=e.measureTextSize();c=h.refresh(r,i,n,o,t/o,l),c&&(e.minWidth=0,a|=8)}this.contentWidth!=t&&(this.contentWidth=t,a|=8),s>0&&O>0?u=Math.max(s,O):s<0&&O<0&&(u=Math.min(s,O))}return h.heightChanged=!1,this.heightMap=this.heightMap.updateHeight(h,0,c,new Yr(this.viewport.from,l)),h.heightChanged&&(a|=2),(!this.viewportIsAppropriate(this.viewport,u)||this.scrollTo&&(this.scrollTo.headthis.viewport.to))&&(this.viewport=this.getViewport(u,this.scrollTo)),this.updateForViewport(),(this.lineGaps.length||this.viewport.to-this.viewport.from>15e3)&&this.updateLineGaps(this.ensureLineGaps(c?[]:this.lineGaps)),a|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.enforceCursorAssoc()),a}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top,0)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom,0)}getViewport(e,t){let n=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,i=this.state.doc,{visibleTop:a,visibleBottom:o}=this,s=new Fr(r.lineAt(a-1e3*n,Ur.ByHeight,i,0,0).from,r.lineAt(o+1e3*(1-n),Ur.ByHeight,i,0,0).to);if(t)if(t.heads.to){let{bottom:e}=r.lineAt(t.head,Ur.ByPos,i,0,0);s=new Fr(r.lineAt(e-(o-a)-500,Ur.ByHeight,i,0,0).from,r.lineAt(e+500,Ur.ByHeight,i,0,0).to)}return s}mapViewport(e,t){let n=t.mapPos(e.from,-1),r=t.mapPos(e.to,1);return new Fr(this.heightMap.lineAt(n,Ur.ByPos,this.state.doc,0,0).from,this.heightMap.lineAt(r,Ur.ByPos,this.state.doc,0,0).to)}viewportIsAppropriate({from:e,to:t},n=0){let{top:r}=this.heightMap.lineAt(e,Ur.ByPos,this.state.doc,0,0),{bottom:i}=this.heightMap.lineAt(t,Ur.ByPos,this.state.doc,0,0),{visibleTop:a,visibleBottom:o}=this;return(0==e||r<=a-Math.max(10,Math.min(-n,250)))&&(t==this.state.doc.length||i>=o+Math.max(10,Math.min(n,250)))&&r>a-2e3&&i{if(n.length<1e4)return;let r,i,a=function(e,t,n){let r=[],i=e,a=0;Ye.spans(n.facet(Wn),e,t,{span(){},point(e,t){e>i&&(r.push({from:i,to:e}),a+=e-i),i=t}},20),i=n.from&&(r=o.from),o.from<=n.to&&o.to>=i&&(i=o.to);let s=r-1e4,O=i+1e4;s>n.from+5e3&&t.push(Kr(e,(e=>e.from==n.from&&e.to>s-5e3&&e.toe.to==n.to&&e.from>O-5e3&&e.frome.draw(this.heightOracle.lineWrapping)))))}computeVisibleRanges(){let e=this.state.facet(Wn);this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];Ye.spans(e,this.viewport.from,this.viewport.to,{span(e,n){t.push({from:e,to:n})},point(){}},20);let n=t.length!=this.visibleRanges.length||this.visibleRanges.some(((e,n)=>e.from!=t[n].from||e.to!=t[n].to));return this.visibleRanges=t,n?4:0}lineAt(e,t){return t+=this.paddingTop,ti(this.heightMap.lineAt(e,Ur.ByPos,this.state.doc,t,0),this.scaler,t)}lineAtHeight(e,t){return t+=this.paddingTop,ti(this.heightMap.lineAt(this.scaler.fromDOM(e,t),Ur.ByHeight,this.state.doc,t,0),this.scaler,t)}blockAtHeight(e,t){return t+=this.paddingTop,ti(this.heightMap.blockAt(this.scaler.fromDOM(e,t),this.state.doc,t,0),this.scaler,t)}forEachLine(e,t,n,r){return r+=this.paddingTop,this.heightMap.forEachLine(e,t,this.state.doc,r,0,1==this.scaler.scale?n:e=>n(ti(e,this.scaler,r)))}get contentHeight(){return this.domHeight+this.paddingTop+this.paddingBottom}get domHeight(){return this.scaler.toDOM(this.heightMap.height,this.paddingTop)}}class Fr{constructor(e,t){this.from=e,this.to=t}}function Br({total:e,ranges:t},n){if(n<=0)return t[0].from;if(n>=1)return t[t.length-1].to;let r=Math.floor(e*n);for(let e=0;;e++){let{from:n,to:i}=t[e],a=i-n;if(r<=a)return n+r;r-=a}}function Hr(e,t){let n=0;for(let{from:r,to:i}of e.ranges){if(t<=i){n+=t-r;break}n+=i-r}return n/e.total}function Kr(e,t){for(let n of e)if(t(n))return n}const Jr={toDOM:e=>e,fromDOM:e=>e,scale:1};class ei{constructor(e,t,n){let r=0,i=0,a=0;this.viewports=n.map((({from:n,to:i})=>{let a=t.lineAt(n,Ur.ByPos,e,0,0).top,o=t.lineAt(i,Ur.ByPos,e,0,0).bottom;return r+=o-a,{from:n,to:i,top:a,bottom:o,domTop:0,domBottom:0}})),this.scale=(7e6-r)/(t.height-r);for(let e of this.viewports)e.domTop=a+(e.top-i)*this.scale,a=e.domBottom=e.domTop+(e.bottom-e.top),i=e.bottom}toDOM(e,t){e-=t;for(let n=0,r=0,i=0;;n++){let a=nti(e,t,n))):e.type)}const ni=U.define({combine:e=>e.join(" ")}),ri=U.define({combine:e=>e.indexOf(!0)>-1}),ii=_e.newName(),ai=_e.newName(),oi=_e.newName(),si={"&light":"."+ai,"&dark":"."+oi};function Oi(e,t,n){return new _e(t,{finish:t=>/&/.test(t)?t.replace(/&\w*/,(t=>{if("&"==t)return e;if(!n||!n[t])throw new RangeError(`Unsupported selector: ${t}`);return n[t]})):e+" "+t})}const li=Oi("."+ii,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0},".cm-content":{margin:0,flexGrow:2,minHeight:"100%",display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",padding:"4px 0",outline:"none"},".cm-lineWrapping":{whiteSpace:"pre-wrap",wordBreak:"break-word",overflowWrap:"anywhere"},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 4px"},".cm-selectionLayer":{zIndex:-1,contain:"size style"},".cm-selectionBackground":{position:"absolute"},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{zIndex:100,contain:"size style",pointerEvents:"none"},"&.cm-focused .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{visibility:"hidden"},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{visibility:"hidden"},"100%":{}},".cm-cursor":{position:"absolute",borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none",display:"none"},"&dark .cm-cursor":{borderLeftColor:"#444"},"&.cm-focused .cm-cursor":{display:"block"},"&light .cm-activeLine":{backgroundColor:"#f3f9ff"},"&dark .cm-activeLine":{backgroundColor:"#223039"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-placeholder":{color:"#888",display:"inline-block"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"3px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},si),ci={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},ui=Et.ie&&Et.ie_version<=11;class hi{constructor(e,t,n){this.view=e,this.onChange=t,this.onScrollChanged=n,this.active=!1,this.ignoreSelection=new pt,this.delayedFlush=-1,this.queue=[],this.lastFlush=0,this.scrollTargets=[],this.intersection=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this._selectionRange=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver((t=>{for(let e of t)this.queue.push(e);this._selectionRange=null,(Et.ie&&Et.ie_version<=11||Et.ios&&e.composing)&&t.some((e=>"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length))?this.flushSoon():this.flush()})),ui&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.start(),this.onScroll=this.onScroll.bind(this),window.addEventListener("scroll",this.onScroll),"function"==typeof IntersectionObserver&&(this.intersection=new IntersectionObserver((e=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),e[e.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))}),{}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver((e=>{e[e.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))}),{})),this.listenForScroll()}onScroll(e){this.intersecting&&this.flush(),this.onScrollChanged(e)}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some(((t,n)=>t!=e[n])))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){this.lastFlush{this.delayedFlush=-1,this.flush()}),20))}forceFlush(){this.delayedFlush>=0&&(window.clearTimeout(this.delayedFlush),this.delayedFlush=-1,this.flush())}flush(){if(this.delayedFlush>=0)return;this.lastFlush=Date.now();let e=this.queue;for(let t of this.observer.takeRecords())e.push(t);e.length&&(this.queue=[]);let t=this.selectionRange,n=!this.ignoreSelection.eq(t)&&at(this.dom,t);if(0==e.length&&!n)return;let r=-1,i=-1,a=!1;for(let t of e){let e=this.readMutation(t);e&&(e.typeOver&&(a=!0),-1==r?({from:r,to:i}=e):(r=Math.min(e.from,r),i=Math.max(e.to,i)))}let o=this.view.state;(r>-1||n)&&this.onChange(r,i,a),this.view.state==o&&(this.view.docView.dirty&&(this.ignore((()=>this.view.docView.sync())),this.view.docView.dirty=0),n&&this.view.docView.updateSelection()),this.clearSelection()}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty("attributes"==e.type),"attributes"==e.type&&(t.dirty|=4),"childList"==e.type){let n=di(t,e.previousSibling||e.target.previousSibling,-1),r=di(t,e.nextSibling||e.target.nextSibling,1);return{from:n?t.posAfter(n):t.posAtStart,to:r?t.posBefore(r):t.posAtEnd,typeOver:!1}}return"characterData"==e.type?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}destroy(){this.stop(),this.intersection&&this.intersection.disconnect(),this.gapIntersection&&this.gapIntersection.disconnect();for(let e of this.scrollTargets)e.removeEventListener("scroll",this.onScroll);window.removeEventListener("scroll",this.onScroll),clearTimeout(this.parentCheck)}}function di(e,t,n){for(;t;){let r=yt.get(t);if(r&&r.parent==e)return r;let i=t.parentNode;t=i!=e.dom?i:n>0?t.nextSibling:t.previousSibling}return null}function pi(e,t,n,r){let i,a,o,s=e.state.selection.main;if(t>-1&&!e.state.readOnly&&(o=e.docView.domBoundsAround(t,n,0))){let{from:t,to:n}=o,r=e.docView.impreciseHead||e.docView.impreciseAnchor?[]:function(e){let t=[];if(e.root.activeElement!=e.contentDOM)return t;let{anchorNode:n,anchorOffset:r,focusNode:i,focusOffset:a}=e.observer.selectionRange;n&&(t.push(new gi(n,r)),i==n&&a==r||t.push(new gi(i,a)));return t}(e),O=new fi(r,e);O.readRange(o.startDOM,o.endDOM),a=function(e,t){if(0==e.length)return null;let n=e[0].pos,r=2==e.length?e[1].pos:n;return n>-1&&r>-1?q.single(n+t,r+t):null}(r,t);let l=s.from,c=null;(8===e.inputState.lastKeyCode&&e.inputState.lastKeyTime>Date.now()-100||Et.android&&O.text.length0&&s>0&&e.charCodeAt(o-1)==t.charCodeAt(s-1);)o--,s--;if("end"==r){n-=o+Math.max(0,a-Math.min(o,s))-a}if(o=o?a-n:0,s=a+(s-o),o=a}else if(s=s?a-n:0,o=a+(o-s),s=a}return{from:a,toA:o,toB:s}}(e.state.sliceDoc(t,n),O.text,l-t,c);u&&(i={from:t+u.from,to:t+u.toA,insert:e.state.toText(O.text.slice(u.from,u.toB))})}else if(e.hasFocus||!e.state.facet(wn)){let t=e.observer.selectionRange,{impreciseHead:n,impreciseAnchor:r}=e.docView,i=n&&n.node==t.focusNode&&n.offset==t.focusOffset||!it(e.contentDOM,t.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(t.focusNode,t.focusOffset),o=r&&r.node==t.anchorNode&&r.offset==t.anchorOffset||!it(e.contentDOM,t.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(t.anchorNode,t.anchorOffset);i==s.head&&o==s.anchor||(a=q.single(o,i))}if(i||a)if(!i&&r&&!s.empty&&a&&a.main.empty?i={from:s.from,to:s.to,insert:e.state.doc.slice(s.from,s.to)}:i&&i.from>=s.from&&i.to<=s.to&&(i.from!=s.from||i.to!=s.to)&&s.to-s.from-(i.to-i.from)<=4&&(i={from:s.from,to:s.to,insert:e.state.doc.slice(s.from,i.from).append(i.insert).append(e.state.doc.slice(i.to,s.to))}),i){let t=e.state;if(Et.android&&(i.from==s.from&&i.to==s.to&&1==i.insert.length&&2==i.insert.lines&&$t(e.contentDOM,"Enter",13)||i.from==s.from-1&&i.to==s.to&&0==i.insert.length&&$t(e.contentDOM,"Backspace",8)||i.from==s.from&&i.to==s.to+1&&0==i.insert.length&&$t(e.contentDOM,"Delete",46))||Et.ios&&e.inputState.flushIOSKey(e))return;let n,r=i.insert.toString();if(e.state.facet($n).some((t=>t(e,i.from,i.to,r))))return;if(e.inputState.composing>=0&&e.inputState.composing++,i.from>=s.from&&i.to<=s.to&&i.to-i.from>=(s.to-s.from)/3&&(!a||a.main.empty&&a.main.from==i.from+i.insert.length)){let r=s.fromi.to?t.sliceDoc(i.to,s.to):"";n=t.replaceSelection(e.state.toText(r+i.insert.sliceString(0,void 0,e.state.lineBreak)+a))}else{let e=t.changes(i);n={changes:e,selection:a&&!t.selection.main.eq(a.main)&&a.main.to<=e.newLength?t.selection.replaceRange(a.main):void 0}}let o="input.type";e.composing&&(o+=".compose",e.inputState.compositionFirstChange&&(o+=".start",e.inputState.compositionFirstChange=!1)),e.dispatch(n,{scrollIntoView:!0,userEvent:o})}else if(a&&!a.main.eq(s)){let t=!1,n="select";e.inputState.lastSelectionTime>Date.now()-50&&("select"==e.inputState.lastSelectionOrigin&&(t=!0),n=e.inputState.lastSelectionOrigin),e.dispatch({selection:a,scrollIntoView:t,userEvent:n})}}class fi{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineBreak=t.state.lineBreak}readRange(e,t){if(!e)return;let n=e.parentNode;for(let r=e;;){this.findPointBefore(n,r),this.readNode(r);let e=r.nextSibling;if(e==t)break;let i=yt.get(r),a=yt.get(e);(i&&a?i.breakAfter:(i?i.breakAfter:mi(r))||mi(e)&&("BR"!=r.nodeName||r.cmIgnore))&&(this.text+=this.lineBreak),r=e}this.findPointBefore(n,t)}readNode(e){if(e.cmIgnore)return;let t,n=yt.get(e),r=n&&n.overrideDOMText;null!=r?t=r.sliceString(0,void 0,this.lineBreak):3==e.nodeType?t=e.nodeValue:"BR"==e.nodeName?t=e.nextSibling?this.lineBreak:"":1==e.nodeType&&this.readRange(e.firstChild,null),null!=t&&(this.findPointIn(e,t.length),this.text+=t,Et.chrome&&13==this.view.inputState.lastKeyCode&&!e.nextSibling&&/\n\n$/.test(this.text)&&(this.text=this.text.slice(0,-1)))}findPointBefore(e,t){for(let n of this.points)n.node==e&&e.childNodes[n.offset]==t&&(n.pos=this.text.length)}findPointIn(e,t){for(let n of this.points)n.node==e&&(n.pos=this.text.length+Math.min(n.offset,t))}}function mi(e){return 1==e.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(e.nodeName)}class gi{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class Qi{constructor(e={}){this.plugins=[],this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.style.cssText="position: absolute; top: -10000px",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),this._dispatch=e.dispatch||(e=>this.update([e])),this.dispatch=this.dispatch.bind(this),this.root=e.root||document,this.viewState=new Mr(e.state||ke.create()),this.plugins=this.state.facet(vn).map((e=>new Xn(e).update(this))),this.observer=new hi(this,((e,t,n)=>{pi(this,e,t,n)}),(e=>{this.inputState.runScrollHandlers(this,e),this.observer.intersecting&&this.measure()})),this.inputState=new dr(this),this.docView=new Zn(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,window.addEventListener("resize",(()=>{-1==xi&&(xi=setTimeout(wi,50))})),this.requestMeasure(),e.parent&&e.parent.appendChild(this.dom)}get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return this.inputState.composing>0}dispatch(...e){this._dispatch(1==e.length&&e[0]instanceof he?e[0]:this.state.update(...e))}update(e){if(0!=this.updateState)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t,n=!1,r=this.state;for(let t of e){if(t.startState!=r)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");r=t.state}if(this.destroyed)return void(this.viewState.state=r);if(r.facet(ke.phrases)!=this.state.facet(ke.phrases))return this.setState(r);t=new Yn(this,r,e);let i=null;try{this.updateState=2;for(let t of e){if(i&&(i=i.map(t.changes)),t.scrollIntoView){let{main:e}=t.state.selection;i=e.empty?e:q.cursor(e.head,e.head>e.anchor?-1:1)}for(let e of t.effects)e.is(bn)&&(i=e.value)}this.viewState.update(t,i),this.bidiCache=yi.update(this.bidiCache,t.changes),t.empty||(this.updatePlugins(t),this.inputState.update(t)),n=this.docView.update(t),this.state.facet(qn)!=this.styleModules&&this.mountStyles(),this.updateAttrs(),this.showAnnouncements(e)}finally{this.updateState=0}if((n||i||this.viewState.mustEnforceCursorAssoc)&&this.requestMeasure(),!t.empty)for(let e of this.state.facet(Qn))e(t)}setState(e){if(0!=this.updateState)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed)this.viewState.state=e;else{this.updateState=2;try{for(let e of this.plugins)e.destroy(this);this.viewState=new Mr(e),this.plugins=e.facet(vn).map((e=>new Xn(e).update(this))),this.docView=new Zn(this),this.inputState.ensureHandlers(this),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}this.requestMeasure()}}updatePlugins(e){let t=e.startState.facet(vn),n=e.state.facet(vn);if(t!=n){let r=[];for(let i of n){let n=t.indexOf(i);if(n<0)r.push(new Xn(i));else{let t=this.plugins[n];t.mustUpdate=e,r.push(t)}}for(let t of this.plugins)t.mustUpdate!=e&&t.destroy(this);this.plugins=r,this.inputState.ensureHandlers(this)}else for(let t of this.plugins)t.mustUpdate=e;for(let e=0;e-1&&cancelAnimationFrame(this.measureScheduled),this.measureScheduled=-1,e&&this.observer.flush();let t=null;try{for(let e=0;;e++){this.updateState=1;let n=this.viewport,r=this.viewState.measure(this.docView,e>0);if(!r&&!this.measureRequests.length&&null==this.viewState.scrollTo)break;if(e>5)break;let i=[];4&r||([this.measureRequests,i]=[i,this.measureRequests]);let a=i.map((e=>{try{return e.read(this)}catch(e){return xn(this.state,e),ki}})),o=new Yn(this,this.state);o.flags|=r,t?t.flags|=r:t=o,this.updateState=2,o.empty||(this.updatePlugins(o),this.inputState.update(o)),this.updateAttrs(),r&&this.docView.update(o);for(let e=0;e-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=requestAnimationFrame((()=>this.measure()))),e){if(null!=e.key)for(let t=0;tfunction(e,t,n){let r=e.state.charCategorizer(t),i=r(n);return e=>{let t=r(e);return i==$e.Space&&(i=t),i==t}}(this,e.head,t))))}moveToLineBoundary(e,t,n=!0){return function(e,t,n,r){let i=e.state.doc.lineAt(t.head),a=r&&e.lineWrapping?e.coordsAtPos(t.assoc<0&&t.head>i.from?t.head-1:t.head):null;if(a){let t=e.dom.getBoundingClientRect(),r=e.posAtCoords({x:n==(e.textDirection==Cn.LTR)?t.right-1:t.left+1,y:(a.top+a.bottom)/2});if(null!=r)return q.cursor(r,n?-1:1)}let o=On.find(e.docView,t.head),s=o?n?o.posAtEnd:o.posAtStart:n?i.to:i.from;return q.cursor(s,n?-1:1)}(this,e,t,n)}moveVertically(e,t,n){return hr(this,e,function(e,t,n,r){let i=t.head,a=n?1:-1;if(i==(n?e.state.doc.length:0))return q.cursor(i);let o,s=t.goalColumn,O=e.contentDOM.getBoundingClientRect(),l=e.coordsAtPos(i);if(l)null==s&&(s=l.left-O.left),o=a<0?l.top:l.bottom;else{let t=e.viewState.lineAt(i,e.dom.getBoundingClientRect().top);null==s&&(s=Math.min(O.right-O.left,e.defaultCharacterWidth*(i-t.from))),o=a<0?t.top:t.bottom}let c=O.left+s,u=null!=r?r:e.defaultLineHeight>>1;for(let t=0;;t+=10){let n=o+(u+t)*a,r=lr(e,{x:c,y:n},!1,a);if(nO.bottom||(a<0?ri))return q.cursor(r,void 0,void 0,s)}}(this,e,t,n))}scrollPosIntoView(e){this.viewState.scrollTo=q.cursor(e),this.requestMeasure()}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),lr(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let n=this.docView.coordsAt(e,t);if(!n||n.left==n.right)return n;let r=this.state.doc.lineAt(e),i=this.bidiSpans(r);return ht(n,i[Hn.find(i,e-r.from,-1,t)].dir==Cn.LTR==t>0)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.heightOracle.direction}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>$i)return Jn(e.length);let t=this.textDirection;for(let n of this.bidiCache)if(n.from==e.from&&n.dir==t)return n.order;let n=function(e,t){let n=e.length,r=t==An?1:2,i=t==An?2:1;if(!e||1==r&&!Bn.test(e))return Jn(n);for(let t=0,i=r,a=r;t=0;e-=3)if(Mn[e+1]==-a){let t=Mn[e+2],n=2&t?r:4&t?1&t?i:r:0;n&&(Kn[s]=Kn[Mn[e]]=n),O=e;break}}else{if(189==Mn.length)break;Mn[O++]=s,Mn[O++]=t,Mn[O++]=l}else if(2==(o=Kn[s])||1==o){let e=o==r;l=e?0:1;for(let t=O-3;t>=0;t-=3){let n=Mn[t+2];if(2&n)break;if(e)Mn[t+2]|=2;else{if(4&n)break;Mn[t+2]|=4}}}for(let e=0;et;){let e=n,r=2!=Kn[--n];for(;n>t&&r==(2!=Kn[n-1]);)n--;a.push(new Hn(n,e,r?2:1))}else a.push(new Hn(t,e,0))}else for(let e=0;eDate.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore((()=>{gt(this.contentDOM),this.docView.updateSelection()}))}destroy(){for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static domEventHandlers(e){return Sn.define((()=>({})),{eventHandlers:e})}static theme(e,t){let n=_e.newName(),r=[ni.of(n),qn.of(Oi(`.${n}`,e))];return t&&t.dark&&r.push(ri.of(!0)),r}static baseTheme(e){return M.fallback(qn.of(Oi("."+ii,e,si)))}}Qi.scrollTo=bn,Qi.styleModule=qn,Qi.inputHandler=$n,Qi.exceptionSink=gn,Qi.updateListener=Qn,Qi.editable=wn,Qi.mouseSelectionStyle=mn,Qi.dragMovesSelection=fn,Qi.clickAddsSelectionRange=pn,Qi.decorations=Wn,Qi.contentAttributes=Rn,Qi.editorAttributes=Tn,Qi.lineWrapping=Qi.contentAttributes.of({class:"cm-lineWrapping"}),Qi.announce=ue.define();const $i=4096;function bi(e,t){return null==e?t.getBoundingClientRect().top:e}let xi=-1;function wi(){xi=-1;let e=document.querySelectorAll(".cm-content");for(let t=0;tfunction(e,t,n,r){let i=function(e){var t=!(et&&(e.ctrlKey||e.altKey||e.metaKey)||(Be||Je)&&e.shiftKey&&e.key&&1==e.key.length)&&e.key||(e.shiftKey?Me:De)[e.keyCode]||e.key||"Unidentified";return"Esc"==t&&(t="Escape"),"Del"==t&&(t="Delete"),"Left"==t&&(t="ArrowLeft"),"Up"==t&&(t="ArrowUp"),"Right"==t&&(t="ArrowRight"),"Down"==t&&(t="ArrowDown"),t}(t),a=1==i.length&&" "!=i,o="",s=!1;Ti&&Ti.view==n&&Ti.scope==r&&(o=Ti.prefix+" ",(s=pr.indexOf(t.keyCode)<0)&&(Ti=null));let O,l=e=>{if(e){for(let t of e.commands)if(t(n))return!0;e.preventDefault&&(s=!0)}return!1},c=e[r];if(c){if(l(c[o+vi(i,t,!a)]))return!0;if(a&&(t.shiftKey||t.altKey||t.metaKey)&&(O=De[t.keyCode])&&O!=i){if(l(c[o+vi(O,t,!0)]))return!0}else if(a&&t.shiftKey&&l(c[o+vi(i,t,!0)]))return!0}return s}(function(e){let t=e.facet(_i),n=Xi.get(t);n||Xi.set(t,n=function(e,t=Pi){let n=Object.create(null),r=Object.create(null),i=(e,t)=>{let n=r[e];if(null==n)r[e]=t;else if(n!=t)throw new Error("Key binding "+e+" is used both as a regular binding and as a multi-stroke prefix")},a=(e,r,a,o)=>{let s=n[e]||(n[e]=Object.create(null)),O=r.split(/ (?!$)/).map((e=>function(e,t){const n=e.split(/-(?!$)/);let r,i,a,o,s=n[n.length-1];"Space"==s&&(s=" ");for(let e=0;e{let r=Ti={view:t,prefix:n,scope:e};return setTimeout((()=>{Ti==r&&(Ti=null)}),4e3),!0}]})}let l=O.join(" ");i(l,!1);let c=s[l]||(s[l]={preventDefault:!1,commands:[]});c.commands.push(a),o&&(c.preventDefault=!0)};for(let n of e){let e=n[t]||n.key;if(e)for(let t of n.scope?n.scope.split(" "):["editor"])a(t,e,n.run,n.preventDefault),n.shift&&a(t,"Shift-"+e,n.shift,n.preventDefault)}return n}(t.reduce(((e,t)=>e.concat(t)),[])));return n}(t.state),e,t,"editor")}),_i=U.define({enables:Si}),Xi=new WeakMap;let Ti=null;const Ri=!Et.ios,Wi=U.define({combine:e=>ye(e,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})});function qi(e={}){return[Wi.of(e),Yi,Ui]}class zi{constructor(e,t,n,r,i){this.left=e,this.top=t,this.width=n,this.height=r,this.className=i}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width>=0&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}}const Yi=Sn.fromClass(class{constructor(e){this.view=e,this.rangePieces=[],this.cursors=[],this.measureReq={read:this.readPos.bind(this),write:this.drawSel.bind(this)},this.selectionLayer=e.scrollDOM.appendChild(document.createElement("div")),this.selectionLayer.className="cm-selectionLayer",this.selectionLayer.setAttribute("aria-hidden","true"),this.cursorLayer=e.scrollDOM.appendChild(document.createElement("div")),this.cursorLayer.className="cm-cursorLayer",this.cursorLayer.setAttribute("aria-hidden","true"),e.requestMeasure(this.measureReq),this.setBlinkRate()}setBlinkRate(){this.cursorLayer.style.animationDuration=this.view.state.facet(Wi).cursorBlinkRate+"ms"}update(e){let t=e.startState.facet(Wi)!=e.state.facet(Wi);(t||e.selectionSet||e.geometryChanged||e.viewportChanged)&&this.view.requestMeasure(this.measureReq),e.transactions.some((e=>e.scrollIntoView))&&(this.cursorLayer.style.animationName="cm-blink"==this.cursorLayer.style.animationName?"cm-blink2":"cm-blink"),t&&this.setBlinkRate()}readPos(){let{state:e}=this.view,t=e.facet(Wi),n=e.selection.ranges.map((e=>e.empty?[]:function(e,t){if(t.to<=e.viewport.from||t.from>=e.viewport.to)return[];let n=Math.max(t.from,e.viewport.from),r=Math.min(t.to,e.viewport.to),i=e.textDirection==Cn.LTR,a=e.contentDOM,o=a.getBoundingClientRect(),s=Ei(e),O=window.getComputedStyle(a.firstChild),l=o.left+parseInt(O.paddingLeft),c=o.right-parseInt(O.paddingRight),u=Vi(e,n),h=Vi(e,r),d=u.type==en.Text?u:null,p=h.type==en.Text?h:null;e.lineWrapping&&(d&&(d=Ii(e,n,d)),p&&(p=Ii(e,r,p)));if(d&&p&&d.from==p.from)return m(g(t.from,t.to,d));{let n=d?g(t.from,null,d):Q(u,!1),r=p?g(null,t.to,p):Q(h,!0),i=[];return(d||u).to<(p||h).from-1?i.push(f(l,n.bottom,c,r.top)):n.bottomu&&r.from=a)break;s>i&&O(Math.max(e,i),null==t&&e<=u,Math.min(s,a),null==n&&s>=h,o.dir)}if(i=r.to+1,i>=a)break}return 0==s.length&&O(u,null==t,h,null==n,e.textDirection),{top:a,bottom:o,horizontal:s}}function Q(e,t){let n=o.top+(t?e.top:e.bottom);return{top:n,bottom:n,horizontal:[]}}}(this.view,e))).reduce(((e,t)=>e.concat(t))),r=[];for(let n of e.selection.ranges){let i=n==e.selection.main;if(n.empty?!i||Ri:t.drawRangeCursor){let e=Ci(this.view,n,i);e&&r.push(e)}}return{rangePieces:n,cursors:r}}drawSel({rangePieces:e,cursors:t}){if(e.length!=this.rangePieces.length||e.some(((e,t)=>!e.eq(this.rangePieces[t])))){this.selectionLayer.textContent="";for(let t of e)this.selectionLayer.appendChild(t.draw());this.rangePieces=e}if(t.length!=this.cursors.length||t.some(((e,t)=>!e.eq(this.cursors[t])))){let e=this.cursorLayer.children;if(e.length!==t.length){this.cursorLayer.textContent="";for(const e of t)this.cursorLayer.appendChild(e.draw())}else t.forEach(((t,n)=>t.adjust(e[n])));this.cursors=t}}destroy(){this.selectionLayer.remove(),this.cursorLayer.remove()}}),Zi={".cm-line":{"& ::selection":{backgroundColor:"transparent !important"},"&::selection":{backgroundColor:"transparent !important"}}};Ri&&(Zi[".cm-line"].caretColor="transparent !important");const Ui=M.override(Qi.theme(Zi));function Ei(e){let t=e.scrollDOM.getBoundingClientRect();return{left:(e.textDirection==Cn.LTR?t.left:t.right-e.scrollDOM.clientWidth)-e.scrollDOM.scrollLeft,top:t.top-e.scrollDOM.scrollTop}}function Ii(e,t,n){let r=q.cursor(t);return{from:Math.max(n.from,e.moveToLineBoundary(r,!1,!0).from),to:Math.min(n.to,e.moveToLineBoundary(r,!0,!0).from),type:en.Text}}function Vi(e,t){let n=e.visualLineAt(t);if(Array.isArray(n.type))for(let e of n.type)if(e.to>t||e.to==t&&(e.to==n.to||e.type==en.Text))return e;return n}function Ci(e,t,n){let r=e.coordsAtPos(t.head,t.assoc||1);if(!r)return null;let i=Ei(e);return new zi(r.left-i.left,r.top-i.top,-1,r.bottom-r.top,n?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary")}const Ai=tn.line({attributes:{class:"cm-activeLine"}}),Gi=Sn.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.docChanged||e.selectionSet)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=-1,n=[];for(let r of e.state.selection.ranges){if(!r.empty)return tn.none;let i=e.visualLineAt(r.head);i.from>t&&(n.push(Ai.range(i.from)),t=i.from)}return tn.set(n)}},{decorations:e=>e.decorations}),ji=1024;let Li=0;class Ni{constructor(e,t){this.from=e,this.to=t}}class Di{constructor(e={}){this.id=Li++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return"function"!=typeof e&&(e=Bi.match(e)),t=>{let n=e(t);return void 0===n?null:[this,n]}}}Di.closedBy=new Di({deserialize:e=>e.split(" ")}),Di.openedBy=new Di({deserialize:e=>e.split(" ")}),Di.group=new Di({deserialize:e=>e.split(" ")}),Di.contextHash=new Di({perNode:!0}),Di.lookAhead=new Di({perNode:!0}),Di.mounted=new Di({perNode:!0});class Mi{constructor(e,t,n){this.tree=e,this.overlay=t,this.parser=n}}const Fi=Object.create(null);class Bi{constructor(e,t,n,r=0){this.name=e,this.props=t,this.id=n,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):Fi,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(null==e.name?8:0),r=new Bi(e.name||"",t,e.id,n);if(e.props)for(let n of e.props)if(Array.isArray(n)||(n=n(r)),n){if(n[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[n[0].id]=n[1]}return r}prop(e){return this.props[e.id]}get isTop(){return(1&this.flags)>0}get isSkipped(){return(2&this.flags)>0}get isError(){return(4&this.flags)>0}get isAnonymous(){return(8&this.flags)>0}is(e){if("string"==typeof e){if(this.name==e)return!0;let t=this.prop(Di.group);return!!t&&t.indexOf(e)>-1}return this.id==e}static match(e){let t=Object.create(null);for(let n in e)for(let r of n.split(" "))t[r]=e[n];return e=>{for(let n=e.prop(Di.group),r=-1;r<(n?n.length:0);r++){let i=t[r<0?e.name:n[r]];if(i)return i}}}}Bi.none=new Bi("",Object.create(null),0,8);class Hi{constructor(e){this.types=e;for(let t=0;te.node;;){let o=!1;if(e.from<=i&&e.to>=r&&(e.type.isAnonymous||!1!==t(e.type,e.from,e.to,a))){if(e.firstChild())continue;e.type.isAnonymous||(o=!0)}for(;o&&n&&n(e.type,e.from,e.to,a),o=e.type.isAnonymous,!e.nextSibling();){if(!e.parent())return;o=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:ha(this.type,this.children,this.positions,0,this.children.length,0,this.length,((e,t,n)=>new Ji(this.type,e,t,n,this.propValues)),e.makeTree||((e,t,n)=>new Ji(Bi.none,e,t,n)))}static build(e){return function(e){var t;let{buffer:n,nodeSet:r,maxBufferLength:i=ji,reused:a=[],minRepeatType:o=r.types.length}=e,s=Array.isArray(n)?new ea(n,n.length):n,O=r.types,l=0,c=0;function u(e,t,n,g,Q){let{id:$,start:b,end:x,size:w}=s,k=c;for(;w<0;){if(s.next(),-1==w){let t=a[$];return n.push(t),void g.push(b-e)}if(-3==w)return void(l=$);if(-4==w)return void(c=$);throw new RangeError(`Unrecognized record size: ${w}`)}let y,P,v=O[$],S=b-e;if(x-b<=i&&(P=f(s.pos-t,Q))){let t=new Uint16Array(P.size-P.skip),n=s.pos-P.size,i=t.length;for(;s.pos>n;)i=m(P.start,t,i);y=new ta(t,x-P.start,r),S=P.start-e}else{let e=s.pos-w;s.next();let t=[],n=[],r=$>=o?$:-1,a=0,O=x;for(;s.pos>e;)r>=0&&s.id==r&&s.size>=0?(s.end<=O-i&&(d(t,n,b,a,s.end,O,r,k),a=t.length,O=s.end),s.next()):u(b,e,t,n,r);if(r>=0&&a>0&&a-1&&a>0){let e=h(v);y=ha(v,t,n,0,t.length,0,x-b,e,e)}else y=p(v,t,n,x-b,k-x)}n.push(y),g.push(S)}function h(e){return(t,n,r)=>{let i,a,o=0,s=t.length-1;if(s>=0&&(i=t[s])instanceof Ji){if(!s&&i.type==e&&i.length==r)return i;(a=i.prop(Di.lookAhead))&&(o=n[s]+i.length+a)}return p(e,t,n,r,o)}}function d(e,t,n,i,a,o,s,O){let l=[],c=[];for(;e.length>i;)l.push(e.pop()),c.push(t.pop()+n-a);e.push(p(r.types[s],l,c,o-a,O-o)),t.push(a-n)}function p(e,t,n,r,i=0,a){if(l){let e=[Di.contextHash,l];a=a?[e].concat(a):[e]}if(i>25){let e=[Di.lookAhead,i];a=a?[e].concat(a):[e]}return new Ji(e,t,n,r,a)}function f(e,t){let n=s.fork(),r=0,a=0,O=0,l=n.end-i,c={size:0,start:0,skip:0};e:for(let i=n.pos-e;n.pos>i;){let e=n.size;if(n.id==t&&e>=0){c.size=r,c.start=a,c.skip=O,O+=4,r+=4,n.next();continue}let s=n.pos-e;if(e<0||s=o?4:0,h=n.start;for(n.next();n.pos>s;){if(n.size<0){if(-3!=n.size)break e;u+=4}else n.id>=o&&(u+=4);n.next()}a=h,r+=e,O+=u}return(t<0||r==e)&&(c.size=r,c.start=a,c.skip=O),c.size>4?c:void 0}function m(e,t,n){let{id:r,start:i,end:a,size:O}=s;if(s.next(),O>=0&&r4){let r=s.pos-(O-4);for(;s.pos>r;)n=m(e,t,n)}t[--n]=o,t[--n]=a-e,t[--n]=i-e,t[--n]=r}else-3==O?l=r:-4==O&&(c=r);return n}let g=[],Q=[];for(;s.pos>0;)u(e.start||0,e.bufferStart||0,g,Q,-1);let $=null!==(t=e.length)&&void 0!==t?t:g.length?Q[0]+g[0].length:0;return new Ji(O[e.topID],g.reverse(),Q.reverse(),$)}(e)}}Ji.empty=new Ji(Bi.none,[],[],0);class ea{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new ea(this.buffer,this.index)}}class ta{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return Bi.none}toString(){let e=[];for(let t=0;t0));s=a[s+3]);return o}slice(e,t,n,r){let i=this.buffer,a=new Uint16Array(t-e);for(let r=e,o=0;r=t&&nt;case 1:return n<=t&&r>t;case 2:return r>t;case 4:return!0}}function ra(e,t){let n=e.childBefore(t);for(;n;){let t=n.lastChild;if(!t||t.to!=n.to)break;t.type.isError&&t.from==t.to?(e=n,n=t.prevSibling):n=t}return e}class ia{constructor(e,t,n,r){this.node=e,this._from=t,this.index=n,this._parent=r}get type(){return this.node.type}get name(){return this.node.type.name}get from(){return this._from}get to(){return this._from+this.node.length}nextChild(e,t,n,r,i=0){for(let a=this;;){for(let{children:o,positions:s}=a.node,O=t>0?o.length:-1;e!=O;e+=t){let O=o[e],l=s[e]+a._from;if(na(r,n,l,l+O.length))if(O instanceof ta){if(2&i)continue;let o=O.findChild(0,O.buffer.length,t,n-l,r);if(o>-1)return new sa(new oa(a,O,e,l),null,o)}else if(1&i||!O.type.isAnonymous||la(O)){let o;if(O.props&&(o=O.prop(Di.mounted))&&!o.overlay)return new ia(o.tree,l,e,a);let s=new ia(O,l,e,a);return 1&i||!s.type.isAnonymous?s:s.nextChild(t<0?O.children.length-1:0,t,n,r)}}if(1&i||!a.type.isAnonymous)return null;if(e=a.index>=0?a.index+t:t<0?-1:a._parent.node.children.length,a=a._parent,!a)return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this.node.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this.node.children.length-1,-1,e,-2)}enter(e,t,n=!0,r=!0){let i;if(n&&(i=this.node.prop(Di.mounted))&&i.overlay){let n=e-this.from;for(let{from:e,to:r}of i.overlay)if((t>0?e<=n:e=n:r>n))return new ia(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,r?0:2)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get cursor(){return new Oa(this)}get tree(){return this.node}toTree(){return this.node}resolve(e,t=0){return this.cursor.moveTo(e,t).node}enterUnfinishedNodesBefore(e){return ra(this,e)}getChild(e,t=null,n=null){let r=aa(this,e,t,n);return r.length?r[0]:null}getChildren(e,t=null,n=null){return aa(this,e,t,n)}toString(){return this.node.toString()}}function aa(e,t,n,r){let i=e.cursor,a=[];if(!i.firstChild())return a;if(null!=n)for(;!i.type.is(n);)if(!i.nextSibling())return a;for(;;){if(null!=r&&i.type.is(r))return a;if(i.type.is(t)&&a.push(i.node),!i.nextSibling())return null==r?a:[]}}class oa{constructor(e,t,n,r){this.parent=e,this.buffer=t,this.index=n,this.start=r}}class sa{constructor(e,t,n){this.context=e,this._parent=t,this.index=n,this.type=e.buffer.set.types[e.buffer.buffer[n]]}get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}child(e,t,n){let{buffer:r}=this.context,i=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,n);return i<0?null:new sa(this.context,this,i)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,t,n,r=!0){if(!r)return null;let{buffer:i}=this.context,a=i.findChild(this.index+4,i.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return a<0?null:new sa(this.context,this,a)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new sa(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new sa(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get cursor(){return new Oa(this)}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,r=this.index+4,i=n.buffer[this.index+3];if(i>r){let a=n.buffer[this.index+1],o=n.buffer[this.index+2];e.push(n.slice(r,i,a,o)),t.push(0)}return new Ji(this.type,e,t,this.to-this.from)}resolve(e,t=0){return this.cursor.moveTo(e,t).node}enterUnfinishedNodesBefore(e){return ra(this,e)}toString(){return this.context.buffer.childString(this.index)}getChild(e,t=null,n=null){let r=aa(this,e,t,n);return r.length?r[0]:null}getChildren(e,t=null,n=null){return aa(this,e,t,n)}}class Oa{constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof ia)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let t=e._parent;t;t=t._parent)this.stack.unshift(t.index);this.bufferNode=e,this.yieldBuf(e.index)}}get name(){return this.type.name}yieldNode(e){return!!e&&(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0)}yieldBuf(e,t){this.index=e;let{start:n,buffer:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=n+r.buffer[e+1],this.to=n+r.buffer[e+2],!0}yield(e){return!!e&&(e instanceof ia?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)))}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,n){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree.node.children.length-1:0,e,t,n,this.mode));let{buffer:r}=this.buffer,i=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,n);return!(i<0)&&(this.stack.push(this.index),this.yieldBuf(i))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,n=!0,r=!0){return this.buffer?!!r&&this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n,r))}parent(){if(!this.buffer)return this.yieldNode(1&this.mode?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=1&this.mode?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return!!this._tree._parent&&this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode));let{buffer:t}=this.buffer,n=this.stack.length-1;if(e<0){let e=n<0?0:this.stack[n]+4;if(this.index!=e)return this.yieldBuf(t.findChild(e,this.index,-1,0,4))}else{let e=t.buffer[this.index+3];if(e<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(e)}return n<0&&this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode))}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,n,{buffer:r}=this;if(r){if(e>0){if(this.index-1)for(let r=t+e,i=e<0?-1:n.node.children.length;r!=i;r+=e){let e=n.node.children[r];if(1&this.mode||e instanceof ta||!e.type.isAnonymous||la(e))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to=0;){for(let a=e;a;a=a._parent)if(a.index==r){if(r==this.index)return a;t=a,n=i+1;break e}r=this.stack[--i]}for(let e=n;ee instanceof ta||!e.type.isAnonymous||la(e)))}const ca=new WeakMap;function ua(e,t){if(!e.isAnonymous||t instanceof ta||t.type!=e)return 1;let n=ca.get(t);return null==n&&(n=t.children.reduce(((t,n)=>t+ua(e,n)),1),ca.set(t,n)),n}function ha(e,t,n,r,i,a,o,s,O){let l=0;for(let n=r;n=c)break;p+=t}if(l==i+1){if(p>c){let e=n[i];t(e.children,e.positions,0,e.children.length,r[i]+s);continue}u.push(n[i])}else{let t=r[l-1]+n[l-1].length-d;u.push(ha(e,n,r,i,l,d,t,null,O))}h.push(d+s-a)}}(t,n,r,i,0),(s||O)(u,h,o)}class da{constructor(e,t,n,r,i=!1,a=!1){this.from=e,this.to=t,this.tree=n,this.offset=r,this.open=(i?1:0)|(a?2:0)}get openStart(){return(1&this.open)>0}get openEnd(){return(2&this.open)>0}static addTree(e,t=[],n=!1){let r=[new da(0,e.length,e,0,!1,n)];for(let n of t)n.to>e.length&&r.push(n);return r}static applyChanges(e,t,n=128){if(!t.length)return e;let r=[],i=1,a=e.length?e[0]:null;for(let o=0,s=0,O=0;;o++){let l=o=n)for(;a&&a.from=t.from||c<=t.to||O){let e=Math.max(t.from,s)-O,n=Math.min(t.to,c)-O;t=e>=n?null:new da(e,n,t.tree,t.offset+O,o>0,!!l)}if(t&&r.push(t),a.to>c)break;a=inew Ni(e.from,e.to))):[new Ni(0,0)]:[new Ni(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let r=this.startParse(e,t,n);for(;;){let e=r.advance();if(e)return e}}}class fa{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function ma(e){return(t,n,r,i)=>new $a(t,e,n,r,i)}class ga{constructor(e,t,n,r){this.parser=e,this.parse=t,this.overlay=n,this.target=r}}class Qa{constructor(e,t,n,r,i,a,o){this.parser=e,this.predicate=t,this.mounts=n,this.index=r,this.start=i,this.target=a,this.prev=o,this.depth=0,this.ranges=[]}}class $a{constructor(e,t,n,r,i){this.nest=t,this.input=n,this.fragments=r,this.ranges=i,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let e=this.baseParse.advance();if(!e)return null;this.baseParse=null,this.baseTree=e,this.startInner()}if(this.innerDone==this.inner.length)return this.baseTree;let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let n=Object.assign(Object.create(null),e.target.props);n[Di.mounted.id]=new Mi(t,e.overlay,e.parser),e.target.props=n}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.inner[this.innerDone];return e?e.parse.parsedPos:this.input.length}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let t=this.innerDone;te.frag.from<=r.from&&e.frag.to>=r.to&&e.mount.overlay));if(e)for(let n of e.mount.overlay){let i=n.from+e.pos,a=n.to+e.pos;i>=r.from&&a<=r.to&&t.ranges.push({from:i,to:a})}}s=!1}else if(n&&(a=ba(n.ranges,r.from,r.to)))s=2!=a;else if(!r.type.isAnonymous&&r.fromnew Ni(e.from-r.from,e.to-r.from))):null,r.tree)),i.overlay?e.length&&(n={ranges:e,depth:0,prev:n}):s=!1}}else t&&(o=t.predicate(r))&&(!0===o&&(o=new Ni(r.from,r.to)),o.fromnew Ni(e.from-t.start,e.to-t.start))),t.target)),t=t.prev}n&&!--n.depth&&(n=n.prev)}}}}function ba(e,t,n){for(let r of e){if(r.from>=n)break;if(r.to>t)return r.from<=t&&r.to>=n?2:1}return 0}function xa(e,t,n,r,i,a){if(t=t.to);r++);let o=i.children[r],s=o.buffer;i.children[r]=function e(n,r,i,O){let l=n;for(;s[l+2]+a<=t.from;)l=s[l+3];let c=[],u=[];xa(o,n,l,c,u,O);let h=s[l+1]+a==t.from&&s[l+2]+a==t.to&&s[l]==t.type.id;c.push(h?t.toTree():e(l+4,s[l+3],o.set.types[s[l]],s[l+1])),u.push(s[l+1]-O),xa(o,s[l+3],r,c,u,O);let d=c.length-1;return new Ji(i,c,u,u[d]+c[d].length)}(0,s.length,Bi.none,0);for(let r=0;r<=n;r++)e.childAfter(t.from)}class ka{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.fullCursor()}moveTo(e){let{cursor:t}=this,n=e-this.offset;for(;!this.done&&t.from=e&&t.enter(n,1,!1,!1)||t.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(!(t.children.length&&0==t.positions[0]&&t.children[0]instanceof Ji))break;t=t.children[0]}return!1}}class ya{constructor(e){if(this.fragments=e,this.fragI=0,e.length){let t=this.curFrag=e[0];this.inner=new ka(t.tree,-t.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curFrag.to;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curFrag.to>=e.to&&this.inner.hasNode(e)}nextFrag(){if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let e=this.curFrag=this.fragments[this.fragI];this.inner=new ka(e.tree,-e.offset)}}findMounts(e,t){var n;let r=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let e=this.inner.cursor.node;e;e=e.parent){let i=null===(n=e.tree)||void 0===n?void 0:n.prop(Di.mounted);if(i&&i.parser==t)for(let t=this.fragI;t=e.to)break;n.tree==this.curFrag.tree&&r.push({frag:n,pos:e.from-n.offset,mount:i})}}}return r}}function Pa(e,t){let n=null,r=t;for(let i=1,a=0;i=s)break;e.to<=o||(n||(r=n=t.slice()),e.froms&&n.splice(a+1,0,new Ni(s,e.to))):e.to>s?n[a--]=new Ni(s,e.to):n.splice(a--,1))}}return r}function va(e,t,n,r){let i=0,a=0,o=!1,s=!1,O=-1e9,l=[];for(;;){let c=i==e.length?1e9:o?e[i].to:e[i].from,u=a==t.length?1e9:s?t[a].to:t[a].from;if(o!=s){let e=Math.max(O,n),t=Math.min(c,u,r);enew Ni(e.from+r,e.to+r))),l=va(t,o,s,O);for(let t=0,r=s;;t++){let o=t==l.length,s=o?O:l[t].from;if(s>r&&n.push(new da(r,s,i.tree,-e,a.from>=r,a.to<=s)),o)break;r=l[t].to}}else n.push(new da(s,O,i.tree,-e,a.from>=e,a.to<=o))}return n}const _a=new Di;function Xa(e){return U.define({combine:e?t=>t.concat(e):void 0})}class Ta{constructor(e,t,n,r=[]){this.data=e,this.topNode=n,ke.prototype.hasOwnProperty("tree")||Object.defineProperty(ke.prototype,"tree",{get(){return qa(this)}}),this.parser=t,this.extension=[Aa.of(this),ke.languageData.of(((e,t,n)=>e.facet(Ra(e,t,n))))].concat(r)}isActiveAt(e,t,n=-1){return Ra(e,t,n)==this.data}findRegions(e){let t=e.facet(Aa);if((null==t?void 0:t.data)==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let n=[],r=(e,t)=>{if(e.prop(_a)==this.data)return void n.push({from:t,to:t+e.length});let i=e.prop(Di.mounted);if(i){if(i.tree.prop(_a)==this.data){if(i.overlay)for(let e of i.overlay)n.push({from:e.from+t,to:e.to+t});else n.push({from:t,to:t+e.length});return}if(i.overlay){let e=n.length;if(r(i.tree,i.overlay[0].from+t),n.length>e)return}}for(let n=0;ne.isTop?t:void 0))]}))}configure(e){return new Wa(this.data,this.parser.configure(e))}get allowsNesting(){return this.parser.wrappers.length>0}}function qa(e){let t=e.field(Ta.state,!1);return t?t.tree:Ji.empty}class za{constructor(e,t=e.length){this.doc=e,this.length=t,this.cursorPos=0,this.string="",this.cursor=e.iter()}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let n=this.cursorPos-this.string.length;return e=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-n,t-n)}}let Ya=null;class Za{constructor(e,t,n=[],r,i,a,o,s){this.parser=e,this.state=t,this.fragments=n,this.tree=r,this.treeLen=i,this.viewport=a,this.skipped=o,this.scheduleOn=s,this.parse=null,this.tempSkipped=[]}startParse(){return this.parser.startParse(new za(this.state.doc),this.fragments)}work(e,t){return null!=t&&t>=this.state.doc.length&&(t=void 0),this.tree!=Ji.empty&&this.isDone(null!=t?t:this.state.doc.length)?(this.takeTree(),!0):this.withContext((()=>{var n;this.parse||(this.parse=this.startParse()),null!=t&&(null==this.parse.stoppedAt||this.parse.stoppedAt>t)&&tr)return!1}}))}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>this.treeLen&&((null==this.parse.stoppedAt||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext((()=>{for(;!(t=this.parse.advance()););})),this.tree=t,this.fragments=this.withoutTempSkipped(da.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Ya;Ya=this;try{return e()}finally{Ya=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Ua(e,t.from,t.to);return e}changes(e,t){let{fragments:n,tree:r,treeLen:i,viewport:a,skipped:o}=this;if(this.takeTree(),!e.empty){let t=[];if(e.iterChangedRanges(((e,n,r,i)=>t.push({fromA:e,toA:n,fromB:r,toB:i}))),n=da.applyChanges(n,t),r=Ji.empty,i=0,a={from:e.mapPos(a.from,-1),to:e.mapPos(a.to,1)},this.skipped.length){o=[];for(let t of this.skipped){let n=e.mapPos(t.from,1),r=e.mapPos(t.to,-1);ne.from&&(this.fragments=Ua(this.fragments,n,r),this.skipped.splice(t--,1))}return!(this.skipped.length>=t)&&(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends pa{createParse(t,n,r){let i=r[0].from,a=r[r.length-1].to,o={parsedPos:i,advance(){let t=Ya;if(t){for(let e of r)t.tempSkipped.push(e);e&&(t.scheduleOn=t.scheduleOn?Promise.all([t.scheduleOn,e]):e)}return this.parsedPos=a,new Ji(Bi.none,[],[],a-i)},stoppedAt:null,stopAt(){}};return o}}}movedPast(e){return this.treeLen=e}isDone(e){let t=this.fragments;return this.treeLen>=e&&t.length&&0==t[0].from&&t[0].to>=e}static get(){return Ya}}function Ua(e,t,n){return da.applyChanges(e,[{fromA:t,toA:n,fromB:t,toB:n}])}class Ea{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged)return this;let t=this.context.changes(e.changes,e.state),n=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(25,n)||t.takeTree(),new Ea(t)}static init(e){let t=new Za(e.facet(Aa).parser,e,[],Ji.empty,0,{from:0,to:e.doc.length},[],null);return t.work(25)||t.takeTree(),new Ea(t)}}Ta.state=G.define({create:Ea.init,update(e,t){for(let e of t.effects)if(e.is(Ta.setState))return e.value;return t.startState.facet(Aa)!=t.state.facet(Aa)?Ea.init(t.state):e.apply(t)}});let Ia="undefined"!=typeof window&&window.requestIdleCallback||((e,{timeout:t})=>setTimeout(e,t)),Va="undefined"!=typeof window&&window.cancelIdleCallback||clearTimeout;const Ca=Sn.fromClass(class{constructor(e){this.view=e,this.working=-1,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(Ta.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),e.docChanged&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working>-1)return;let{state:e}=this.view,t=e.field(Ta.state);t.tree==t.context.tree&&t.context.isDone(e.doc.length)||(this.working=Ia(this.work,{timeout:500}))}work(e){this.working=-1;let t=Date.now();if(this.chunkEnd=r+1e6)return;let a=Math.min(this.chunkBudget,e?Math.max(25,e.timeRemaining()):100),o=i.context.work(a,r+1e6);this.chunkBudget-=Date.now()-t,(o||this.chunkBudget<=0||i.context.movedPast(r))&&(i.context.takeTree(),this.view.dispatch({effects:Ta.setState.of(new Ea(i.context))})),!o&&this.chunkBudget>0&&this.scheduleWork(),this.checkAsyncSchedule(i.context)}checkAsyncSchedule(e){e.scheduleOn&&(e.scheduleOn.then((()=>this.scheduleWork())),e.scheduleOn=null)}destroy(){this.working>=0&&Va(this.working)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Aa=U.define({combine:e=>e.length?e[0]:null,enables:[Ta.state,Ca]});class Ga{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}class ja{constructor(e,t,n,r,i){this.name=e,this.alias=t,this.extensions=n,this.filename=r,this.loadFunc=i,this.support=void 0,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then((e=>this.support=e),(e=>{throw this.loading=null,e})))}static of(e){return new ja(e.name,(e.alias||[]).concat(e.name).map((e=>e.toLowerCase())),e.extensions||[],e.filename,e.load)}static matchFilename(e,t){for(let n of e)if(n.filename&&n.filename.test(t))return n;let n=/\.([^.]+)$/.exec(t);if(n)for(let t of e)if(t.extensions.indexOf(n[1])>-1)return t;return null}static matchLanguageName(e,t,n=!0){t=t.toLowerCase();for(let n of e)if(n.alias.some((e=>e==t)))return n;if(n)for(let n of e)for(let e of n.alias){let r=t.indexOf(e);if(r>-1&&(e.length>2||!/\w/.test(t[r-1])&&!/\w/.test(t[r+e.length])))return n}return null}}const La=U.define(),Na=U.define({combine:e=>{if(!e.length)return" ";if(!/^(?: +|\t+)$/.test(e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(e[0]));return e[0]}});function Da(e){let t=e.facet(Na);return 9==t.charCodeAt(0)?e.tabSize*t.length:t.length}function Ma(e,t){let n="",r=e.tabSize;if(9==e.facet(Na).charCodeAt(0))for(;t>=r;)n+="\t",t-=r;for(let e=0;e=n.from&&r<=n.to?(t<0?r-1&&(i+=a-this.countColumn(n,n.search(/\S|$/))),i}countColumn(e,t=e.length){return u(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:n,from:r}=this.lineAt(e,t),i=this.options.overrideIndentation;if(i){let e=i(r);if(e>-1)return e}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const Ha=new Di;function Ka(e){let t=e.type.prop(Ha);if(t)return t;let n,r=e.firstChild;if(r&&(n=r.type.prop(Di.closedBy))){let t=e.lastChild,r=t&&n.indexOf(t.name)>-1;return e=>io(e,!0,1,void 0,r&&!function(e){return e.pos==e.options.simulateBreak&&e.options.simulateDoubleBreak}(e)?t.from:void 0)}return null==e.parent?eo:null}function Ja(e,t,n){for(;e;e=e.parent){let r=Ka(e);if(r)return r(new to(n,t,e))}return null}function eo(){return 0}class to extends Ba{constructor(e,t,n){super(e.state,e.options),this.base=e,this.pos=t,this.node=n}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){let e=this.state.doc.lineAt(this.node.from);for(;;){let t=this.node.resolve(e.from);for(;t.parent&&t.parent.from==t.from;)t=t.parent;if(no(t,this.node))break;e=this.state.doc.lineAt(t.from)}return this.lineIndent(e.from)}continue(){let e=this.node.parent;return e?Ja(e,this.pos,this.base):0}}function no(e,t){for(let n=t;n;n=n.parent)if(e==n)return!0;return!1}function ro({closing:e,align:t=!0,units:n=1}){return r=>io(r,t,n,e)}function io(e,t,n,r,i){let a=e.textAfter,o=a.match(/^\s*/)[0].length,s=r&&a.slice(o,o+r.length)==r||i==e.pos+o,O=t?function(e){let t=e.node,n=t.childAfter(t.from),r=t.lastChild;if(!n)return null;let i=e.options.simulateBreak,a=e.state.doc.lineAt(n.from),o=null==i||i<=a.from?a.to:Math.min(a.to,i);for(let e=n.to;;){let i=t.childAfter(e);if(!i||i==r)return null;if(!i.type.isSkipped)return i.frome.baseIndent;function oo({except:e,units:t=1}={}){return n=>{let r=e&&e.test(n.textAfter);return n.baseIndent+(r?0:t*n.unit)}}const so=new Di;function Oo(e){let t=e.firstChild,n=e.lastChild;return t&&t.toye(e,{afterCursor:!0,brackets:co,maxScanDistance:1e4})}),ho=tn.mark({class:"cm-matchingBracket"}),po=tn.mark({class:"cm-nonmatchingBracket"}),fo=G.define({create:()=>tn.none,update(e,t){if(!t.docChanged&&!t.selection)return e;let n=[],r=t.state.facet(uo);for(let e of t.state.selection.ranges){if(!e.empty)continue;let i=$o(t.state,e.head,-1,r)||e.head>0&&$o(t.state,e.head-1,1,r)||r.afterCursor&&($o(t.state,e.head,1,r)||e.headQi.decorations.from(e)}),mo=[fo,lo];function go(e={}){return[uo.of(e),mo]}function Qo(e,t,n){let r=e.prop(t<0?Di.openedBy:Di.closedBy);if(r)return r;if(1==e.name.length){let r=n.indexOf(e.name);if(r>-1&&r%2==(t<0?1:0))return[n[r+t]]}return null}function $o(e,t,n,r={}){let i=r.maxScanDistance||1e4,a=r.brackets||co,o=qa(e),s=o.resolveInner(t,n);for(let r=s;r;r=r.parent){let i=Qo(r.type,n,a);if(i&&r.from0)return null;let l={from:n<0?t-1:t,to:n>0?t+1:t},c=e.doc.iterRange(t,n>0?e.doc.length:0),u=0;for(let e=0;!c.next().done&&e<=a;){let a=c.value;n<0&&(e+=a.length);let s=t+e*n;for(let e=n>0?0:a.length-1,t=n>0?a.length:-1;e!=t;e+=n){let t=o.indexOf(a[e]);if(!(t<0||r.resolve(s+e,1).type!=i))if(t%2==0==n>0)u++;else{if(1==u)return{start:l,end:{from:s+e,to:s+e+1},matched:t>>1==O>>1};u--}}n>0&&(e+=a.length)}return c.done?{start:l,matched:!1}:null}(e,t,n,o,s.type,i,a)}function bo(e,t,n,r,i,a){let o=r.parent,s={from:r.from,to:r.to},O=0,l=null==o?void 0:o.cursor;if(l&&(n<0?l.childBefore(r.from):l.childAfter(r.to)))do{if(n<0?l.to<=r.from:l.from>=r.to){if(0==O&&i.indexOf(l.type.name)>-1&&l.from"},wo=ue.define({map(e,t){let n=t.mapPos(e,-1,k.TrackAfter);return null==n?void 0:n}}),ko=ue.define({map:(e,t)=>t.mapPos(e)}),yo=new class extends Re{};yo.startSide=1,yo.endSide=-1;const Po=G.define({create:()=>Ye.empty,update(e,t){if(t.selection){let n=t.state.doc.lineAt(t.selection.main.head).from,r=t.startState.doc.lineAt(t.startState.selection.main.head).from;n!=t.changes.mapPos(r,-1)&&(e=Ye.empty)}e=e.map(t.changes);for(let n of t.effects)n.is(wo)?e=e.update({add:[yo.range(n.value,n.value+1)]}):n.is(ko)&&(e=e.update({filter:e=>e!=n.value}));return e}});const vo="()[]{}<>";function So(e){for(let t=0;t2||2==r.length&&1==c(O(r,0))||t!=i.from||n!=i.to)return!1;let a=function(e,t){let n=_o(e,e.selection.main.head),r=n.brackets||xo.brackets;for(let i of r){let a=So(O(i,0));if(t==i)return a==i?Yo(e,i,r.indexOf(i+i+i)>-1):qo(e,i,a,n.before||xo.before);if(t==a&&Ro(e,e.selection.main.from))return zo(e,i,a)}return null}(e.state,r);return!!a&&(e.dispatch(a),!0)}const To=[{key:"Backspace",run:({state:e,dispatch:t})=>{let n=_o(e,e.selection.main.head).brackets||xo.brackets,r=null,i=e.changeByRange((t=>{if(t.empty){let r=function(e,t){let n=e.sliceString(t-2,t);return c(O(n,0))==n.length?n:n.slice(1)}(e.doc,t.head);for(let i of n)if(i==r&&Wo(e.doc,t.head)==So(O(i,0)))return{changes:{from:t.head-i.length,to:t.head+i.length},range:q.cursor(t.head-i.length),userEvent:"delete.backward"}}return{range:r=t}}));return r||t(e.update(i,{scrollIntoView:!0})),!r}}];function Ro(e,t){let n=!1;return e.field(Po).between(0,e.doc.length,(e=>{e==t&&(n=!0)})),n}function Wo(e,t){let n=e.sliceString(t,t+2);return n.slice(0,c(O(n,0)))}function qo(e,t,n,r){let i=null,a=e.changeByRange((a=>{if(!a.empty)return{changes:[{insert:t,from:a.from},{insert:n,from:a.to}],effects:wo.of(a.to+t.length),range:q.range(a.anchor+t.length,a.head+t.length)};let o=Wo(e.doc,a.head);return!o||/\s/.test(o)||r.indexOf(o)>-1?{changes:{insert:t+n,from:a.head},effects:wo.of(a.head+t.length),range:q.cursor(a.head+t.length)}:{range:i=a}}));return i?null:e.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function zo(e,t,n){let r=null,i=e.selection.ranges.map((t=>t.empty&&Wo(e.doc,t.head)==n?q.cursor(t.head+n.length):r=t));return r?null:e.update({selection:q.create(i,e.selection.mainIndex),scrollIntoView:!0,effects:e.selection.ranges.map((({from:e})=>ko.of(e)))})}function Yo(e,t,n){let r=null,i=e.changeByRange((i=>{if(!i.empty)return{changes:[{insert:t,from:i.from},{insert:t,from:i.to}],effects:wo.of(i.to+t.length),range:q.range(i.anchor+t.length,i.head+t.length)};let a=i.head,o=Wo(e.doc,a);if(o==t){if(Zo(e,a))return{changes:{insert:t+t,from:a},effects:wo.of(a+t.length),range:q.cursor(a+t.length)};if(Ro(e,a)){let r=n&&e.sliceDoc(a,a+3*t.length)==t+t+t;return{range:q.cursor(a+t.length*(r?3:1)),effects:ko.of(a)}}}else{if(n&&e.sliceDoc(a-2*t.length,a)==t+t&&Zo(e,a-2*t.length))return{changes:{insert:t+t+t+t,from:a},effects:wo.of(a+t.length),range:q.cursor(a+t.length)};if(e.charCategorizer(a)(o)!=$e.Word){let n=e.sliceDoc(a-1,a);if(n!=t&&e.charCategorizer(a)(n)!=$e.Word)return{changes:{insert:t+t,from:a},effects:wo.of(a+t.length),range:q.cursor(a+t.length)}}}return{range:r=i}}));return r?null:e.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function Zo(e,t){let n=qa(e).resolveInner(t+1);return n.parent&&n.from==t}function Uo(e,t){return q.create(e.ranges.map(t),e.mainIndex)}function Eo(e,t){return e.update({selection:t,scrollIntoView:!0,userEvent:"select"})}function Io({state:e,dispatch:t},n){let r=Uo(e.selection,n);return!r.eq(e.selection)&&(t(Eo(e,r)),!0)}function Vo(e,t){return q.cursor(t?e.to:e.from)}function Co(e,t){return Io(e,(n=>n.empty?e.moveByChar(n,t):Vo(n,t)))}const Ao=e=>Co(e,e.textDirection!=Cn.LTR),Go=e=>Co(e,e.textDirection==Cn.LTR);function jo(e,t){return Io(e,(n=>n.empty?e.moveByGroup(n,t):Vo(n,t)))}function Lo(e,t,n){if(t.type.prop(n))return!0;let r=t.to-t.from;return r&&(r>2||/[^\s,.;:]/.test(e.sliceDoc(t.from,t.to)))||t.firstChild}function No(e,t,n){let r,i,a=qa(e).resolveInner(t.head),o=n?Di.closedBy:Di.openedBy;for(let r=t.head;;){let t=n?a.childAfter(r):a.childBefore(r);if(!t)break;Lo(e,t,o)?a=t:r=n?t.to:t.from}return i=a.type.prop(o)&&(r=n?$o(e,a.from,1):$o(e,a.to,-1))&&r.matched?n?r.end.to:r.end.from:n?a.to:a.from,q.cursor(i,n?-1:1)}function Do(e,t){return Io(e,(n=>{if(!n.empty)return Vo(n,t);let r=e.moveVertically(n,t);return r.head!=n.head?r:e.moveToLineBoundary(n,t)}))}const Mo=e=>Do(e,!1),Fo=e=>Do(e,!0);function Bo(e,t){return Io(e,(n=>n.empty?e.moveVertically(n,t,e.dom.clientHeight):Vo(n,t)))}const Ho=e=>Bo(e,!1),Ko=e=>Bo(e,!0);function Jo(e,t,n){let r=e.visualLineAt(t.head),i=e.moveToLineBoundary(t,n);if(i.head==t.head&&i.head!=(n?r.to:r.from)&&(i=e.moveToLineBoundary(t,n,!1)),!n&&i.head==r.from&&r.length){let n=/^\s*/.exec(e.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;n&&t.head!=r.from+n&&(i=q.cursor(r.from+n))}return i}const es=e=>Io(e,(t=>Jo(e,t,!0))),ts=e=>Io(e,(t=>Jo(e,t,!1)));function ns(e,t){let n=Uo(e.state.selection,(e=>{let n=t(e);return q.range(e.anchor,n.head,n.goalColumn)}));return!n.eq(e.state.selection)&&(e.dispatch(Eo(e.state,n)),!0)}function rs(e,t){return ns(e,(n=>e.moveByChar(n,t)))}const is=e=>rs(e,e.textDirection!=Cn.LTR),as=e=>rs(e,e.textDirection==Cn.LTR);function os(e,t){return ns(e,(n=>e.moveByGroup(n,t)))}function ss(e,t){return ns(e,(n=>e.moveVertically(n,t)))}const Os=e=>ss(e,!1),ls=e=>ss(e,!0);function cs(e,t){return ns(e,(n=>e.moveVertically(n,t,e.dom.clientHeight)))}const us=e=>cs(e,!1),hs=e=>cs(e,!0),ds=e=>ns(e,(t=>Jo(e,t,!0))),ps=e=>ns(e,(t=>Jo(e,t,!1))),fs=({state:e,dispatch:t})=>(t(Eo(e,{anchor:0})),!0),ms=({state:e,dispatch:t})=>(t(Eo(e,{anchor:e.doc.length})),!0),gs=({state:e,dispatch:t})=>(t(Eo(e,{anchor:e.selection.main.anchor,head:0})),!0),Qs=({state:e,dispatch:t})=>(t(Eo(e,{anchor:e.selection.main.anchor,head:e.doc.length})),!0);function $s({state:e,dispatch:t},n){if(e.readOnly)return!1;let r="delete.selection",i=e.changeByRange((e=>{let{from:t,to:i}=e;if(t==i){let e=n(t);et&&(r="delete.forward"),t=Math.min(t,e),i=Math.max(i,e)}return t==i?{range:e}:{changes:{from:t,to:i},range:q.cursor(t)}}));return!i.changes.empty&&(t(e.update(i,{scrollIntoView:!0,userEvent:r})),!0)}function bs(e,t,n){if(e instanceof Qi)for(let r of e.pluginField(yn.atomicRanges))r.between(t,t,((e,r)=>{et&&(t=n?r:e)}));return t}const xs=(e,t)=>$s(e,(n=>{let i,a,{state:o}=e,s=o.doc.lineAt(n);if(!t&&n>s.from&&nxs(e,!1),ks=e=>xs(e,!0),ys=(e,t)=>$s(e,(n=>{let i=n,{state:a}=e,o=a.doc.lineAt(i),s=a.charCategorizer(i);for(let e=null;;){if(i==(t?o.to:o.from)){i==n&&o.number!=(t?a.doc.lines:1)&&(i+=t?1:-1);break}let O=r(o.text,i-o.from,t)+o.from,l=o.text.slice(Math.min(i,O)-o.from,Math.max(i,O)-o.from),c=s(l);if(null!=e&&c!=e)break;" "==l&&i==n||(e=c),i=O}return bs(e,i,t)})),Ps=e=>ys(e,!1),vs=e=>$s(e,(t=>{let n=e.visualLineAt(t).to;return bs(e,t=i.number){let e=t[t.length-1];e.to=a.to,e.ranges.push(r)}else t.push({from:i.from,to:a.to,ranges:[r]});n=a.number+1}return t}function _s(e,t,n){if(e.readOnly)return!1;let r=[],i=[];for(let t of Ss(e)){if(n?t.to==e.doc.length:0==t.from)continue;let a=e.doc.lineAt(n?t.to+1:t.from-1),o=a.length+1;if(n){r.push({from:t.to,to:a.to},{from:t.from,insert:a.text+e.lineBreak});for(let n of t.ranges)i.push(q.range(Math.min(e.doc.length,n.anchor+o),Math.min(e.doc.length,n.head+o)))}else{r.push({from:a.from,to:t.from},{from:t.to,insert:e.lineBreak+a.text});for(let e of t.ranges)i.push(q.range(e.anchor-o,e.head-o))}}return!!r.length&&(t(e.update({changes:r,scrollIntoView:!0,selection:q.create(i,e.selection.mainIndex),userEvent:"move.line"})),!0)}function Xs(e,t,n){if(e.readOnly)return!1;let r=[];for(let t of Ss(e))n?r.push({from:t.from,insert:e.doc.slice(t.from,t.to)+e.lineBreak}):r.push({from:t.to,insert:e.lineBreak+e.doc.slice(t.from,t.to)});return t(e.update({changes:r,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const Ts=Rs(!1);function Rs(e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let r=t.changeByRange((n=>{let{from:r,to:i}=n,a=t.doc.lineAt(r),o=!e&&r==i&&function(e,t){if(/\(\)|\[\]|\{\}/.test(e.sliceDoc(t-1,t+1)))return{from:t,to:t};let n,r=qa(e).resolveInner(t),i=r.childBefore(t),a=r.childAfter(t);return i&&a&&i.to<=t&&a.from>=t&&(n=i.type.prop(Di.closedBy))&&n.indexOf(a.name)>-1&&e.doc.lineAt(i.to).from==e.doc.lineAt(a.from).from?{from:i.to,to:a.from}:null}(t,r);e&&(r=i=(i<=a.to?a:t.doc.lineAt(i)).to);let s=new Ba(t,{simulateBreak:r,simulateDoubleBreak:!!o}),O=Fa(s,r);for(null==O&&(O=/^\s*/.exec(t.doc.lineAt(r).text)[0].length);ia.from&&r{let i=[];for(let a=r.from;a<=r.to;){let o=e.doc.lineAt(a);o.number>n&&(r.empty||r.to>o.from)&&(t(o,i,r),n=o.number),a=o.to+1}let a=e.changes(i);return{changes:i,range:q.range(a.mapPos(r.anchor,1),a.mapPos(r.head,1))}}))}const qs=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(Ws(e,((t,n)=>{n.push({from:t.from,insert:e.facet(Na)})})),{userEvent:"input.indent"})),!0),zs=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(Ws(e,((t,n)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let i=u(r,e.tabSize),a=0,o=Ma(e,Math.max(0,i-Da(e)));for(;aIo(e,(t=>q.cursor(e.visualLineAt(t.head).from,1))),shift:e=>ns(e,(t=>q.cursor(e.visualLineAt(t.head).from)))},{key:"Ctrl-e",run:e=>Io(e,(t=>q.cursor(e.visualLineAt(t.head).to,-1))),shift:e=>ns(e,(t=>q.cursor(e.visualLineAt(t.head).to)))},{key:"Ctrl-d",run:ks},{key:"Ctrl-h",run:ws},{key:"Ctrl-k",run:vs},{key:"Ctrl-Alt-h",run:Ps},{key:"Ctrl-o",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange((e=>({changes:{from:e.from,to:e.to,insert:h.of(["",""])},range:q.cursor(e.from)})));return t(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}},{key:"Ctrl-t",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange((t=>{if(!t.empty||0==t.from||t.from==e.doc.length)return{range:t};let n=t.from,i=e.doc.lineAt(n),a=n==i.from?n-1:r(i.text,n-i.from,!1)+i.from,o=n==i.to?n+1:r(i.text,n-i.from,!0)+i.from;return{changes:{from:a,to:o,insert:e.doc.slice(n,o).append(e.doc.slice(a,n))},range:q.cursor(o)}}));return!n.changes.empty&&(t(e.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)}},{key:"Alt-<",run:fs},{key:"Alt->",run:ms},{key:"Ctrl-v",run:Ko},{key:"Alt-v",run:Ho}],Zs=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:e=>Io(e,(t=>No(e.state,t,e.textDirection!=Cn.LTR))),shift:e=>ns(e,(t=>No(e.state,t,e.textDirection!=Cn.LTR)))},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:e=>Io(e,(t=>No(e.state,t,e.textDirection==Cn.LTR))),shift:e=>ns(e,(t=>No(e.state,t,e.textDirection==Cn.LTR)))},{key:"Alt-ArrowUp",run:({state:e,dispatch:t})=>_s(e,t,!1)},{key:"Shift-Alt-ArrowUp",run:({state:e,dispatch:t})=>Xs(e,t,!1)},{key:"Alt-ArrowDown",run:({state:e,dispatch:t})=>_s(e,t,!0)},{key:"Shift-Alt-ArrowDown",run:({state:e,dispatch:t})=>Xs(e,t,!0)},{key:"Escape",run:({state:e,dispatch:t})=>{let n=e.selection,r=null;return n.ranges.length>1?r=q.create([n.main]):n.main.empty||(r=q.create([q.cursor(n.main.head)])),!!r&&(t(Eo(e,r)),!0)}},{key:"Mod-Enter",run:Rs(!0)},{key:"Alt-l",mac:"Ctrl-l",run:({state:e,dispatch:t})=>{let n=Ss(e).map((({from:t,to:n})=>q.range(t,Math.min(n+1,e.doc.length))));return t(e.update({selection:q.create(n),userEvent:"select"})),!0}},{key:"Mod-i",run:({state:e,dispatch:t})=>{let n=Uo(e.selection,(t=>{var n;let r=qa(e).resolveInner(t.head,1);for(;!(r.from=t.to||r.to>t.to&&r.from<=t.from)&&(null===(n=r.parent)||void 0===n?void 0:n.parent);)r=r.parent;return q.range(r.to,r.from)}));return t(Eo(e,n)),!0},preventDefault:!0},{key:"Mod-[",run:zs},{key:"Mod-]",run:qs},{key:"Mod-Alt-\\",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=Object.create(null),r=new Ba(e,{overrideIndentation:e=>{let t=n[e];return null==t?-1:t}}),i=Ws(e,((t,i,a)=>{let o=Fa(r,t.from);if(null==o)return;/\S/.test(t.text)||(o=0);let s=/^\s*/.exec(t.text)[0],O=Ma(e,o);(s!=O||a.from{if(e.state.readOnly)return!1;let{state:t}=e,n=t.changes(Ss(t).map((({from:e,to:n})=>(e>0?e--:ne.moveVertically(t,!0))).map(n);return e.dispatch({changes:n,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0}},{key:"Shift-Mod-\\",run:({state:e,dispatch:t})=>function(e,t,n){let r=!1,i=Uo(e.selection,(t=>{let i=$o(e,t.head,-1)||$o(e,t.head,1)||t.head>0&&$o(e,t.head-1,1)||t.headjo(e,e.textDirection!=Cn.LTR),shift:e=>os(e,e.textDirection!=Cn.LTR)},{mac:"Cmd-ArrowLeft",run:ts,shift:ps},{key:"ArrowRight",run:Go,shift:as,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:e=>jo(e,e.textDirection==Cn.LTR),shift:e=>os(e,e.textDirection==Cn.LTR)},{mac:"Cmd-ArrowRight",run:es,shift:ds},{key:"ArrowUp",run:Mo,shift:Os,preventDefault:!0},{mac:"Cmd-ArrowUp",run:fs,shift:gs},{mac:"Ctrl-ArrowUp",run:Ho,shift:us},{key:"ArrowDown",run:Fo,shift:ls,preventDefault:!0},{mac:"Cmd-ArrowDown",run:ms,shift:Qs},{mac:"Ctrl-ArrowDown",run:Ko,shift:hs},{key:"PageUp",run:Ho,shift:us},{key:"PageDown",run:Ko,shift:hs},{key:"Home",run:ts,shift:ps},{key:"Mod-Home",run:fs,shift:gs},{key:"End",run:es,shift:ds},{key:"Mod-End",run:ms,shift:Qs},{key:"Enter",run:Ts},{key:"Mod-a",run:({state:e,dispatch:t})=>(t(e.update({selection:{anchor:0,head:e.doc.length},userEvent:"select"})),!0)},{key:"Backspace",run:ws,shift:ws},{key:"Delete",run:ks,shift:ks},{key:"Mod-Backspace",mac:"Alt-Backspace",run:Ps},{key:"Mod-Delete",mac:"Alt-Delete",run:e=>ys(e,!0)},{mac:"Mod-Backspace",run:e=>$s(e,(t=>{let n=e.visualLineAt(t).from;return bs(e,t>n?n:Math.max(0,t-1),!1)}))},{mac:"Mod-Delete",run:vs}].concat(Ys.map((e=>({mac:e.key,run:e.run,shift:e.shift}))))),Us=Oe.define(),Es=Oe.define(),Is=U.define(),Vs=U.define({combine:e=>ye(e,{minDepth:100,newGroupDelay:500},{minDepth:Math.max,newGroupDelay:Math.min})}),Cs=G.define({create:()=>nO.empty,update(e,t){let n=t.state.facet(Vs),r=t.annotation(Us);if(r){let i=Ms.fromTransaction(t),a=r.side,o=0==a?e.undone:e.done;return o=i?Fs(o,o.length,n.minDepth,i):Ks(o,t.startState.selection),new nO(0==a?r.rest:o,0==a?o:r.rest)}let i=t.annotation(Es);if("full"!=i&&"before"!=i||(e=e.isolate()),!1===t.annotation(he.addToHistory))return t.changes.empty?e:e.addMapping(t.changes.desc);let a=Ms.fromTransaction(t),o=t.annotation(he.time),s=t.annotation(he.userEvent);return a?e=e.addChanges(a,o,s,n.newGroupDelay,n.minDepth):t.selection&&(e=e.addSelection(t.startState.selection,o,s,n.newGroupDelay)),"full"!=i&&"after"!=i||(e=e.isolate()),e},toJSON:e=>({done:e.done.map((e=>e.toJSON())),undone:e.undone.map((e=>e.toJSON()))}),fromJSON:e=>new nO(e.done.map(Ms.fromJSON),e.undone.map(Ms.fromJSON))});function As(e={}){return[Cs,Vs.of(e),Qi.domEventHandlers({beforeinput:(e,t)=>"historyUndo"==e.inputType?js(t):"historyRedo"==e.inputType&&Ls(t)})]}function Gs(e,t){return function({state:n,dispatch:r}){let i=n.field(Cs,!1);if(!i)return!1;let a=i.pop(e,n,t);return!!a&&(r(a),!0)}}const js=Gs(0,!1),Ls=Gs(1,!1),Ns=Gs(0,!0),Ds=Gs(1,!0);class Ms{constructor(e,t,n,r,i){this.changes=e,this.effects=t,this.mapped=n,this.startSelection=r,this.selectionsAfter=i}setSelAfter(e){return new Ms(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,n;return{changes:null===(e=this.changes)||void 0===e?void 0:e.toJSON(),mapped:null===(t=this.mapped)||void 0===t?void 0:t.toJSON(),startSelection:null===(n=this.startSelection)||void 0===n?void 0:n.toJSON(),selectionsAfter:this.selectionsAfter.map((e=>e.toJSON()))}}static fromJSON(e){return new Ms(e.changes&&P.fromJSON(e.changes),[],e.mapped&&y.fromJSON(e.mapped),e.startSelection&&q.fromJSON(e.startSelection),e.selectionsAfter.map(q.fromJSON))}static fromTransaction(e){let t=Hs;for(let n of e.startState.facet(Is)){let r=n(e);r.length&&(t=t.concat(r))}return!t.length&&e.changes.empty?null:new Ms(e.changes.invert(e.startState.doc),t,void 0,e.startState.selection,Hs)}static selection(e){return new Ms(void 0,Hs,void 0,void 0,e)}}function Fs(e,t,n,r){let i=t+1>n+20?t-n-1:0,a=e.slice(i,t);return a.push(r),a}function Bs(e,t){return e.length?t.length?e.concat(t):e:t}const Hs=[];function Ks(e,t){if(e.length){let n=e[e.length-1],r=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-200));return r.length&&r[r.length-1].eq(t)?e:(r.push(t),Fs(e,e.length-1,1e9,n.setSelAfter(r)))}return[Ms.selection([t])]}function Js(e){let t=e[e.length-1],n=e.slice();return n[e.length-1]=t.setSelAfter(t.selectionsAfter.slice(0,t.selectionsAfter.length-1)),n}function eO(e,t){if(!e.length)return e;let n=e.length,r=Hs;for(;n;){let i=tO(e[n-1],t,r);if(i.changes&&!i.changes.empty||i.effects.length){let t=e.slice(0,n);return t[n-1]=i,t}t=i.mapped,n--,r=i.selectionsAfter}return r.length?[Ms.selection(r)]:Hs}function tO(e,t,n){let r=Bs(e.selectionsAfter.length?e.selectionsAfter.map((e=>e.map(t))):Hs,n);if(!e.changes)return Ms.selection(r);let i=e.changes.map(t),a=t.mapDesc(e.changes,!0),o=e.mapped?e.mapped.composeDesc(a):a;return new Ms(i,ue.mapEffects(e.effects,t),o,e.startSelection.map(a),r)}class nO{constructor(e,t,n=0,r){this.done=e,this.undone=t,this.prevTime=n,this.prevUserEvent=r}isolate(){return this.prevTime?new nO(this.done,this.undone):this}addChanges(e,t,n,r,i){let a=this.done,o=a[a.length-1];return a=o&&o.changes&&!o.changes.empty&&e.changes&&(!o.selectionsAfter.length&&t-this.prevTimen.push(e,t))),t.iterChangedRanges(((e,t,i,a)=>{for(let e=0;e=t&&i<=o&&(r=!0)}})),r}(o.changes,e.changes)||"input.type.compose"==n)?Fs(a,a.length-1,i,new Ms(e.changes.compose(o.changes),Bs(e.effects,o.effects),o.mapped,o.startSelection,Hs)):Fs(a,a.length,i,e),new nO(a,Hs,t,n)}addSelection(e,t,n,r){let i=this.done.length?this.done[this.done.length-1].selectionsAfter:Hs;return i.length>0&&t-this.prevTimee.empty!=t.ranges[n].empty)).length}(i[i.length-1],e)?this:new nO(Ks(this.done,e),this.undone,t,n)}addMapping(e){return new nO(eO(this.done,e),eO(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,n){let r=0==e?this.done:this.undone;if(0==r.length)return null;let i=r[r.length-1];if(n&&i.selectionsAfter.length)return t.update({selection:i.selectionsAfter[i.selectionsAfter.length-1],annotations:Us.of({side:e,rest:Js(r)}),userEvent:0==e?"select.undo":"select.redo"});if(i.changes){let n=1==r.length?Hs:r.slice(0,r.length-1);return i.mapped&&(n=eO(n,i.mapped)),t.update({changes:i.changes,selection:i.startSelection,effects:i.effects,annotations:Us.of({side:e,rest:n}),filter:!1,userEvent:0==e?"undo":"redo"})}return null}}nO.empty=new nO(Hs,Hs);const rO=[{key:"Mod-z",run:js,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:Ls,preventDefault:!0},{key:"Mod-u",run:Ns,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:Ds,preventDefault:!0}];class iO{constructor(e,t,n,r,i,a,o){this.type=e,this.value=t,this.from=n,this.hash=r,this.end=i,this.children=a,this.positions=o,this.hashProp=[[Di.contextHash,r]]}static create(e,t,n,r,i){return new iO(e,t,n,r+(r<<8)+e+(t<<4)|0,i,[],[])}addChild(e,t){e.prop(Di.contextHash)!=this.hash&&(e=new Ji(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(t)}toTree(e,t=this.end){let n=this.children.length-1;return n>=0&&(t=Math.max(t,this.positions[n]+this.children[n].length+this.from)),new Ji(e.types[this.type],this.children,this.positions,t-this.from).balance({makeTree:(e,t,n)=>new Ji(Bi.none,e,t,n,this.hashProp)})}}var aO;!function(e){e[e.Document=1]="Document",e[e.CodeBlock=2]="CodeBlock",e[e.FencedCode=3]="FencedCode",e[e.Blockquote=4]="Blockquote",e[e.HorizontalRule=5]="HorizontalRule",e[e.BulletList=6]="BulletList",e[e.OrderedList=7]="OrderedList",e[e.ListItem=8]="ListItem",e[e.ATXHeading1=9]="ATXHeading1",e[e.ATXHeading2=10]="ATXHeading2",e[e.ATXHeading3=11]="ATXHeading3",e[e.ATXHeading4=12]="ATXHeading4",e[e.ATXHeading5=13]="ATXHeading5",e[e.ATXHeading6=14]="ATXHeading6",e[e.SetextHeading1=15]="SetextHeading1",e[e.SetextHeading2=16]="SetextHeading2",e[e.HTMLBlock=17]="HTMLBlock",e[e.LinkReference=18]="LinkReference",e[e.Paragraph=19]="Paragraph",e[e.CommentBlock=20]="CommentBlock",e[e.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",e[e.Escape=22]="Escape",e[e.Entity=23]="Entity",e[e.HardBreak=24]="HardBreak",e[e.Emphasis=25]="Emphasis",e[e.StrongEmphasis=26]="StrongEmphasis",e[e.Link=27]="Link",e[e.Image=28]="Image",e[e.InlineCode=29]="InlineCode",e[e.HTMLTag=30]="HTMLTag",e[e.Comment=31]="Comment",e[e.ProcessingInstruction=32]="ProcessingInstruction",e[e.URL=33]="URL",e[e.HeaderMark=34]="HeaderMark",e[e.QuoteMark=35]="QuoteMark",e[e.ListMark=36]="ListMark",e[e.LinkMark=37]="LinkMark",e[e.EmphasisMark=38]="EmphasisMark",e[e.CodeMark=39]="CodeMark",e[e.CodeText=40]="CodeText",e[e.CodeInfo=41]="CodeInfo",e[e.LinkTitle=42]="LinkTitle",e[e.LinkLabel=43]="LinkLabel"}(aO||(aO={}));class oO{constructor(e,t){this.start=e,this.content=t,this.marks=[],this.parsers=[]}}class sO{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return uO(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,t=0,n=0){for(let r=t;r=t.stack[n.depth+1].value+n.baseIndent)return!0;if(n.indent>=n.baseIndent+4)return!1;let r=(e.type==aO.OrderedList?QO:gO)(n,t,!1);return r>0&&(e.type!=aO.BulletList||fO(n,t,!1)<0)&&n.text.charCodeAt(n.pos+r-1)==e.value}const lO={[aO.Blockquote]:(e,t,n)=>62==n.next&&(n.markers.push(LO(aO.QuoteMark,t.lineStart+n.pos,t.lineStart+n.pos+1)),n.moveBase(n.pos+(cO(n.text.charCodeAt(n.pos+1))?2:1)),e.end=t.lineStart+n.text.length,!0),[aO.ListItem]:(e,t,n)=>!(n.indent-1)&&(n.moveBaseColumn(n.baseIndent+e.value),!0),[aO.OrderedList]:OO,[aO.BulletList]:OO,[aO.Document]:()=>!0};function cO(e){return 32==e||9==e||10==e||13==e}function uO(e,t=0){for(;tn&&cO(e.charCodeAt(t-1));)t--;return t}function dO(e){if(96!=e.next&&126!=e.next)return-1;let t=e.pos+1;for(;t-1&&e.depth==t.stack.length||r<3?-1:1}function mO(e,t){return e.block.type==t||e.stack.length>1&&e.stack[e.stack.length-2].type==t}function gO(e,t,n){return 45!=e.next&&43!=e.next&&42!=e.next||e.pos!=e.text.length-1&&!cO(e.text.charCodeAt(e.pos+1))||!(!n||mO(t,aO.BulletList)||e.skipSpace(e.pos+2)=48&&i<=57;){if(r++,r==e.text.length)return-1;i=e.text.charCodeAt(r)}return r==e.pos||r>e.pos+9||46!=i&&41!=i||re.pos+1||49!=e.next)?-1:r+1-e.pos}function $O(e){if(35!=e.next)return-1;let t=e.pos+1;for(;t6?-1:n}function bO(e){if(45!=e.next&&61!=e.next||e.indent>=e.baseIndent+4)return-1;let t=e.pos+1;for(;t/,kO=/\?>/,yO=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*/i.exec(r);if(a)return e.append(LO(aO.Comment,n,n+1+a[0].length));let o=/^\?[^]*?\?>/.exec(r);if(o)return e.append(LO(aO.ProcessingInstruction,n,n+1+o[0].length));let s=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(r);return s?e.append(LO(aO.HTMLTag,n,n+1+s[0].length)):-1},Emphasis(e,t,n){if(95!=t&&42!=t)return-1;let r=n+1;for(;e.char(r)==t;)r++;let i=e.slice(n-1,n),a=e.slice(r,r+1),o=KO.test(i),s=KO.test(a),O=/\s|^$/.test(i),l=/\s|^$/.test(a),c=!l&&(!s||O||o),u=!O&&(!o||l||s),h=c&&(42==t||!u||o),d=u&&(42==t||!c||s);return e.append(new BO(95==t?NO:DO,n,r,(h?1:0)|(d?2:0)))},HardBreak(e,t,n){if(92==t&&10==e.char(n+1))return e.append(LO(aO.HardBreak,n,n+2));if(32==t){let t=n+1;for(;32==e.char(t);)t++;if(10==e.char(t)&&t>=n+2)return e.append(LO(aO.HardBreak,n,t+1))}return-1},Link:(e,t,n)=>91==t?e.append(new BO(MO,n,n+1,1)):-1,Image:(e,t,n)=>33==t&&91==e.char(n+1)?e.append(new BO(FO,n,n+2,1)):-1,LinkEnd(e,t,n){if(93!=t)return-1;for(let t=e.parts.length-1;t>=0;t--){let r=e.parts[t];if(r instanceof BO&&(r.type==MO||r.type==FO)){if(!r.side||e.skipSpace(r.to)==n&&!/[(\[]/.test(e.slice(n+1,n+2)))return e.parts[t]=null,-1;let i=e.takeContent(t),a=e.parts[t]=el(e,i,r.type==MO?aO.Link:aO.Image,r.from,n+1);if(r.type==MO)for(let n=0;nt?LO(aO.URL,t+n,i+n):i==e.length&&null}}function nl(e,t,n){let r=e.charCodeAt(t);if(39!=r&&34!=r&&40!=r)return!1;let i=40==r?41:r;for(let r=t+1,a=!1;r=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,t){return this.text.slice(e-this.offset,t-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,t,n,r,i){return this.append(new BO(e,t,n,(r?1:0)|(i?2:0)))}addElement(e){return this.append(e)}resolveMarkers(e){for(let t=e;t=e;o--){let e=this.parts[o];if(e instanceof BO&&1&e.side&&e.type==n.type&&!(i&&(1&n.side||2&e.side)&&(e.to-e.from+a)%3==0&&((e.to-e.from)%3||a%3))){r=e;break}}if(!r)continue;let s=n.type.resolve,O=[],l=r.from,c=n.to;if(i){let e=Math.min(2,r.to-r.from,a);l=r.to-e,c=n.from+e,s=1==e?"Emphasis":"StrongEmphasis"}r.type.mark&&O.push(this.elt(r.type.mark,l,r.to));for(let e=o+1;e=0;t--){let n=this.parts[t];if(n instanceof BO&&n.type==e)return t}return null}takeContent(e){let t=this.resolveMarkers(e);return this.parts.length=e,t}skipSpace(e){return uO(this.text,e-this.offset)+this.offset}elt(e,t,n,r){return"string"==typeof e?LO(this.parser.getNodeType(e),t,n,r):new jO(e,t)}}function al(e,t){if(!t.length)return e;if(!e.length)return t;let n=e.slice(),r=0;for(let e of t){for(;r(e?e-1:0))return!1;if(this.fragmentEnd<0){let e=this.fragment.to;for(;e>0&&"\n"!=this.input.read(e-1,e);)e--;this.fragmentEnd=e?e-1:0}let n=this.cursor;n||(n=this.cursor=this.fragment.tree.cursor(),n.firstChild());let r=e+this.fragment.offset;for(;n.to<=r;)if(!n.parent())return!1;for(;;){if(n.from>=r)return this.fragment.from<=t;if(!n.childAfter(r))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(Di.contextHash)==e}takeNodes(e){let t=this.cursor,n=this.fragment.offset,r=e.absoluteLineStart,i=r,a=e.block.children.length,o=i,s=a;for(;;){if(t.to-n>=this.fragmentEnd){if(t.type.isAnonymous&&t.firstChild())continue;break}if(e.dontInject.add(t.tree),e.addNode(t.tree,t.from-n),t.type.is("Block")&&(ol.indexOf(t.type.id)<0?(i=t.to-n,a=e.block.children.length):(i=o,a=s,o=t.to-n,s=e.block.children.length)),!t.nextSibling())break}for(;e.block.children.length>a;)e.block.children.pop(),e.block.positions.pop();return i-r}}const Ol=new ZO(new Hi(VO),Object.keys(_O).map((e=>_O[e])),Object.keys(_O).map((e=>WO[e])),Object.keys(_O),qO,lO,Object.keys(JO).map((e=>JO[e])),Object.keys(JO),[]);function ll(e,t,n){let r=[];for(let i=e.firstChild,a=t;;i=i.nextSibling){let e=i?i.from:n;if(e>a&&r.push({from:a,to:e}),!i)break;a=i.to}return r}const cl={resolve:"Strikethrough",mark:"StrikethroughMark"},ul={defineNodes:["Strikethrough","StrikethroughMark"],parseInline:[{name:"Strikethrough",parse:(e,t,n)=>126!=t||126!=e.char(n+1)?-1:e.addDelimiter(cl,n,n+2,!0,!0),after:"Emphasis"}]};function hl(e,t,n=0,r,i=0){let a=0,o=!0,s=-1,O=-1,l=!1,c=()=>{r.push(e.elt("TableCell",i+s,i+O,e.parser.parseInline(t.slice(s,O),i+s)))};for(let u=n;u-1)&&a++,o=!1,r&&(s>-1&&c(),r.push(e.elt("TableDelimiter",u+i,u+i+1))),s=O=-1),l=!l&&92==n}return s>-1&&(a++,r&&c()),a}class dl{constructor(){this.rows=null}nextLine(e,t,n){if(null==this.rows){let r;if(this.rows=!1,(45==t.next||58==t.next||124==t.next)&&/^\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/.test(r=t.text.slice(t.pos))){let i=[];hl(e,n.content,0,i,n.start)==hl(e,r,t.pos)&&(this.rows=[e.elt("TableHeader",n.start,n.start+n.content.length,i),e.elt("TableDelimiter",e.lineStart+t.pos,e.lineStart+t.text.length)])}}else if(this.rows){let n=[];hl(e,t.text,t.pos,n,e.lineStart),this.rows.push(e.elt("TableRow",e.lineStart+t.pos,e.lineStart+t.text.length,n))}return!1}finish(e,t){return!!this.rows&&(this.emit(e,t),!0)}emit(e,t){e.addLeafElement(t,e.elt("Table",t.start,t.start+t.content.length,this.rows))}}const pl={defineNodes:[{name:"Table",block:!0},"TableHeader","TableRow","TableCell","TableDelimiter"],parseBlock:[{name:"Table",leaf:(e,t)=>function(e,t){for(let n=t;n/^\[[ xX]\]/.test(t.content)&&"ListItem"==e.parser.nodeSet.types[e.block.type].name?new fl:null,after:"SetextHeading"}]},gl=[pl,ml,ul];function Ql(e,t,n){return(r,i,a)=>{if(i!=e||r.char(a+1)==e)return-1;let o=[r.elt(n,a,a+1)];for(let i=a+1;it%3==0)).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,n=0){let r=e.parser.context;return new wl(e,[],t,n,n,0,[],0,r?new kl(r,r.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){let t=e>>19,n=65535&e,{parser:r}=this.p,i=r.dynamicPrecedence(n);if(i&&(this.score+=i),0==t)return na;)this.stack.pop();this.reduceContext(n,o)}storeNode(e,t,n,r=4,i=!1){if(0==e){let e=this,r=this.buffer.length;if(0==r&&e.parent&&(r=e.bufferBase-e.parent.bufferBase,e=e.parent),r>0&&0==e.buffer[r-4]&&e.buffer[r-1]>-1){if(t==n)return;if(e.buffer[r-2]>=t)return void(e.buffer[r-2]=n)}}if(i&&this.pos!=n){let i=this.buffer.length;if(i>0&&0!=this.buffer[i-4])for(;i>0&&this.buffer[i-2]>n;)this.buffer[i]=this.buffer[i-4],this.buffer[i+1]=this.buffer[i-3],this.buffer[i+2]=this.buffer[i-2],this.buffer[i+3]=this.buffer[i-1],i-=4,r>4&&(r-=4);this.buffer[i]=e,this.buffer[i+1]=t,this.buffer[i+2]=n,this.buffer[i+3]=r}else this.buffer.push(e,t,n,r)}shift(e,t,n){let r=this.pos;if(131072&e)this.pushState(65535&e,this.pos);else if(0==(262144&e)){let i=e,{parser:a}=this.p;(n>this.pos||t<=a.maxNode)&&(this.pos=n,a.stateFlag(i,1)||(this.reducePos=n)),this.pushState(i,r),this.shiftContext(t,r),t<=a.maxNode&&this.buffer.push(t,r,n,4)}else this.pos=n,this.shiftContext(t,r),t<=this.p.parser.maxNode&&this.buffer.push(t,r,n,4)}apply(e,t,n){65536&e?this.reduce(e):this.shift(e,t,n)}useNode(e,t){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let r=this.pos;this.reducePos=this.pos=r+e.length,this.pushState(t,r),this.buffer.push(n,r,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,t=e.buffer.length;for(;t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let n=e.buffer.slice(t),r=e.bufferBase+t;for(;e&&r==e.bufferBase;)e=e.parent;return new wl(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,r,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let n=e<=this.p.parser.maxNode;n&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,n?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new Pl(this);;){let n=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(0==(65536&n))return!0;if(0==n)return!1;t.reduce(n)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let n=[];for(let r,i=0;i1&t&&e==r))||n.push(t[e],r)}t=n}let n=[];for(let e=0;e>19,r=65535&e,i=this.stack.length-3*n;if(i<0||t.getGoto(this.stack[i],r,!1)<0)return!1;this.storeNode(0,this.reducePos,this.reducePos,4,!0),this.score-=100}return this.reduce(e),!0}forceAll(){for(;!this.p.parser.stateFlag(this.state,2)&&this.forceReduce(););return this}get deadEnd(){if(3!=this.stack.length)return!1;let{parser:e}=this.p;return 65535==e.data[e.stateSlot(this.state,1)]&&!e.stateSlot(this.state,4)}restart(){this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;tthis.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class kl{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}var yl;!function(e){e[e.Insert=200]="Insert",e[e.Delete=190]="Delete",e[e.Reduce=100]="Reduce",e[e.MaxNext=4]="MaxNext",e[e.MaxInsertStackDepth=300]="MaxInsertStackDepth",e[e.DampenInsertStackDepth=120]="DampenInsertStackDepth"}(yl||(yl={}));class Pl{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=65535&e,n=e>>19;0==n?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=3*(n-1);let r=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=r}}class vl{constructor(e,t,n){this.stack=e,this.pos=t,this.index=n,this.buffer=e.buffer,0==this.index&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new vl(e,t,t-e.bufferBase)}maybeNext(){let e=this.stack.parent;null!=e&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,0==this.index&&this.maybeNext()}fork(){return new vl(this.stack,this.pos,this.index)}}class Sl{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const _l=new Sl;class Xl{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=_l,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let n=this.range,r=this.rangeIndex,i=this.pos+e;for(;in.to:i>=n.to;){if(r==this.ranges.length-1)return null;let e=this.ranges[++r];i+=e.from-n.to,n=e}return i}peek(e){let t,n,r=this.chunkOff+e;if(r>=0&&r=this.chunk2Pos&&tr.to&&(this.chunk2=this.chunk2.slice(0,r.to-t)),n=this.chunk2.charCodeAt(0)}}return t>this.token.lookAhead&&(this.token.lookAhead=t),n}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(null==n||n=this.chunk2Pos&&this.posthis.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>this.token.lookAhead&&(this.token.lookAhead=this.pos),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,t){if(t?(this.token=t,t.start=t.lookAhead=e,t.value=t.extended=-1):this.token=_l,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let n="";for(let r of this.ranges){if(r.from>=t)break;r.to>e&&(n+=this.input.read(Math.max(r.from,e),Math.min(r.to,t)))}return n}}class Tl{constructor(e,t){this.data=e,this.id=t}token(e,t){!function(e,t,n,r){let i=0,a=1<0){let n=e[r];if(s.allows(n)&&(-1==t.token.value||t.token.value==n||o.overrides(n,t.token.value))){t.acceptToken(n);break}}for(let r=t.next,a=0,o=e[i+2];a>1,O=n+s+(s<<1),l=e[O],c=e[O+1];if(r=c)){i=e[O+2],t.advance();continue e}a=s+1}}break}}(this.data,e,t,this.id)}}Tl.prototype.contextual=Tl.prototype.fallback=Tl.prototype.extend=!1;class Rl{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function Wl(e,t=Uint16Array){if("string"!=typeof e)return e;let n=null;for(let r=0,i=0;r=92&&t--,t>=34&&t--;let i=t-32;if(i>=46&&(i-=46,n=!0),a+=i,n)break;a*=46}n?n[i++]=a:n=new t(a)}return n}const ql="undefined"!=typeof process&&/\bparse\b/.test(process.env.LOG);let zl=null;var Yl,Zl;function Ul(e,t,n){let r=e.fullCursor();for(r.moveTo(t);;)if(!(n<0?r.childBefore(t):r.childAfter(t)))for(;;){if((n<0?r.tot)&&!r.type.isError)return n<0?Math.max(0,Math.min(r.to-1,t-25)):Math.min(e.length,Math.max(r.from+1,t+25));if(n<0?r.prevSibling():r.nextSibling())break;if(!r.parent())return n<0?0:e.length}}!function(e){e[e.Margin=25]="Margin"}(Yl||(Yl={}));class El{constructor(e,t){this.fragments=e,this.nodeSet=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?Ul(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?Ul(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(ee)return this.nextStart=a,null;if(i instanceof Ji){if(a==e){if(a=Math.max(this.safeFrom,e)&&(this.trees.push(i),this.start.push(a),this.index.push(0))}else this.index[t]++,this.nextStart=a+i.length}}}class Il{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map((e=>new Sl))}getActions(e){let t=0,n=null,{parser:r}=e.p,{tokenizers:i}=r,a=r.stateSlot(e.state,3),o=e.curContext?e.curContext.hash:0,s=0;for(let r=0;rl.end+25&&(s=Math.max(l.lookAhead,s)),0!=l.value)){let r=t;if(l.extended>-1&&(t=this.addActions(e,l.extended,l.end,t)),t=this.addActions(e,l.value,l.end,t),!O.extend&&(n=l,t>r))break}}for(;this.actions.length>t;)this.actions.pop();return s&&e.setLookAhead(s),n||e.pos!=this.stream.end||(n=new Sl,n.value=e.p.parser.eofTerm,n.start=n.end=e.pos,t=this.addActions(e,n.value,n.end,t)),this.mainToken=n,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Sl,{pos:n,p:r}=e;return t.start=n,t.end=Math.min(n+1,r.stream.end),t.value=n==r.stream.end?r.parser.eofTerm:0,t}updateCachedToken(e,t,n){if(t.token(this.stream.reset(n.pos,e),n),e.value>-1){let{parser:t}=n.p;for(let r=0;r=0&&n.p.parser.dialect.allows(i>>1)){0==(1&i)?e.value=i>>1:e.extended=i>>1;break}}}else e.value=0,e.end=Math.min(n.p.stream.end,n.pos+1)}putAction(e,t,n,r){for(let t=0;t4*e.bufferLength?new El(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e,t,n=this.stacks,r=this.minStackPos,i=this.stacks=[];for(let a=0;ar)i.push(o);else{if(this.advanceStack(o,i,n))continue;{e||(e=[],t=[]),e.push(o);let n=this.tokens.getMainToken(o);t.push(n.value,n.end)}}break}}if(!i.length){let t=e&&function(e){let t=null;for(let n of e){let e=n.p.stoppedAt;(n.pos==n.p.stream.end||null!=e&&n.pos>e)&&n.p.parser.stateFlag(n.state,2)&&(!t||t.scoree)for(i.sort(((e,t)=>t.score-e.score));i.length>e;)i.pop();i.some((e=>e.reducePos>r))&&this.recovering--}else if(i.length>1)e:for(let e=0;e200&&r.buffer.length>200){if(!((t.score-r.score||t.buffer.length-r.buffer.length)>0)){i.splice(e--,1);continue e}i.splice(n--,1)}}}this.minStackPos=i[0].pos;for(let e=1;ethis.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let t=e.curContext&&e.curContext.tracker.strict,n=t?e.curContext.hash:0;for(let a=this.fragments.nodeAt(r);a;){let r=this.parser.nodeSet.types[a.type.id]==a.type?i.getGoto(e.state,a.type.id):-1;if(r>-1&&a.length&&(!t||(a.prop(Di.contextHash)||0)==n))return e.useNode(a,r),!0;if(!(a instanceof Ji)||0==a.children.length||a.positions[0]>0)break;let o=a.children[0];if(!(o instanceof Ji&&0==a.positions[0]))break;a=o}}let a=i.stateSlot(e.state,4);if(a>0)return e.reduce(a),!0;let o=this.tokens.getActions(e);for(let i=0;ir?t.push(c):n.push(c)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return Cl(e,t),!0}}runRecovery(e,t,n){let r=null,i=!1;for(let a=0;a ":"";if(o.deadEnd){if(i)continue;if(i=!0,o.restart(),this.advanceFully(o,n))continue}let c=o.split(),u=l;for(let e=0;c.forceReduce()&&e<10;e++){if(this.advanceFully(c,n))break;ql&&(u=this.stackID(c)+" -> ")}for(let e of o.recoverByInsert(s))this.advanceFully(e,n);this.stream.end>o.pos?(O==o.pos&&(O++,s=0),o.recoverByDelete(s,O),Cl(o,n)):(!r||r.scoree;class jl{constructor(e){this.start=e.start,this.shift=e.shift||Gl,this.reduce=e.reduce||Gl,this.reuse=e.reuse||Gl,this.hash=e.hash||(()=>0),this.strict=!1!==e.strict}}class Ll extends pa{constructor(e){if(super(),this.wrappers=[],13!=e.version)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (13)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let n=0;ne.topRules[t][1])),r=[];for(let e=0;e=0)i(r,e,t[n++]);else{let a=t[n+-r];for(let o=-r;o>0;o--)i(t[n++],e,a);n++}}}this.nodeSet=new Hi(t.map(((t,i)=>Bi.define({name:i>=this.minRepeatTerm?void 0:t,id:i,props:r[i],top:n.indexOf(i)>-1,error:0==i,skipped:e.skippedNodes&&e.skippedNodes.indexOf(i)>-1})))),this.strict=!1,this.bufferLength=ji;let a=Wl(e.tokenData);if(this.context=e.context,this.specialized=new Uint16Array(e.specialized?e.specialized.length:0),this.specializers=[],e.specialized)for(let t=0;t"number"==typeof e?new Tl(a,e):e)),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,n){let r=new Vl(this,e,t,n);for(let i of this.wrappers)r=i(r,e,t,n);return r}getGoto(e,t,n=!1){let r=this.goto;if(t>=r[0])return-1;for(let i=r[t+1];;){let t=r[i++],a=1&t,o=r[i++];if(a&&n)return o;for(let n=i+(t>>1);i0}validAction(e,t){if(t==this.stateSlot(e,4))return!0;for(let n=this.stateSlot(e,1);;n+=3){if(65535==this.data[n]){if(1!=this.data[n+1])return!1;n=Nl(this.data,n+2)}if(t==Nl(this.data,n+1))return!0}}nextStates(e){let t=[];for(let n=this.stateSlot(e,1);;n+=3){if(65535==this.data[n]){if(1!=this.data[n+1])break;n=Nl(this.data,n+2)}if(0==(1&this.data[n+2])){let e=this.data[n+1];t.some(((t,n)=>1&n&&t==e))||t.push(this.data[n],e)}}return t}overrides(e,t){let n=Dl(this.data,this.tokenPrecTable,t);return n<0||Dl(this.data,this.tokenPrecTable,e){let n=e.tokenizers.find((e=>e.from==t));return n?n.to:t}))),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),null!=e.strict&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),null!=e.bufferLength&&(t.bufferLength=e.bufferLength),t}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return null==t?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),n=t.map((()=>!1));if(e)for(let r of e.split(" ")){let e=t.indexOf(r);e>=0&&(n[e]=!0)}let r=null;for(let e=0;e=65&&e<=90||95==e||e>=97&&e<=122||e>=161}function Kl(e){return 9==e||10==e||13==e||32==e}let Jl=null,ec=null,tc=0;function nc(e,t){let n=e.pos+t;if(tc==n&&ec==e)return Jl;let r=e.peek(t);for(;Kl(r);)r=e.peek(++t);let i="";for(;Hl(r);)i+=String.fromCharCode(r),r=e.peek(++t);return ec=e,tc=n,Jl=i||(r==rc||r==ic?void 0:null)}const rc=63,ic=33;function ac(e,t){this.name=e,this.parent=t,this.hash=t?t.hash:0;for(let t=0;toc.indexOf(t)>-1?new ac(nc(r,1)||"",e):e,reduce:(e,t)=>18==t&&e?e.parent:e,reuse(e,t,n,r){let i=t.type.id;return 4==i||35==i?new ac(nc(r,1)||"",e):e},hash:e=>e?e.hash:0,strict:!1}),Oc=new Rl(((e,t)=>{if(60!=e.next)return void(e.next<0&&t.context&&e.acceptToken(56));e.advance();let n=47==e.next;n&&e.advance();let r=nc(e,0);if(void 0===r)return;if(!r)return e.acceptToken(n?11:4);let i=t.context?t.context.name:null;if(n){if(r==i)return e.acceptToken(8);if(i&&Fl[i])return e.acceptToken(56,-2);if(t.dialectEnabled(0))return e.acceptToken(9);for(let e=t.context;e;e=e.parent)if(e.name==r)return;e.acceptToken(10)}else{if("script"==r)return e.acceptToken(5);if("style"==r)return e.acceptToken(6);if("textarea"==r)return e.acceptToken(7);i&&Bl[i]&&Bl[i][r]?e.acceptToken(56,-1):e.acceptToken(4)}}),{contextual:!0}),lc=new Rl(((e,t)=>{let n=1;if(47==e.next){if(62!=e.peek(1))return;n=2}else if(62!=e.next)return;t.context&&Ml[t.context.name]&&e.acceptToken(12,n)})),cc=new Rl((e=>{for(let t=0,n=0;;n++){if(e.next<0){n&&e.acceptToken(57);break}if(e.next=="--\x3e".charCodeAt(t)){if(t++,3==t){n>3&&e.acceptToken(57,-2);break}}else t=0;e.advance()}}));function uc(e,t,n){let r=2+e.length;return new Rl((i=>{for(let a=0,o=0,s=0;;s++){if(i.next<0){s&&i.acceptToken(t);break}if(0==a&&60==i.next||1==a&&47==i.next||a>=2&&ao?i.acceptToken(t,-o):i.acceptToken(n,-(o-2));break}if((10==i.next||13==i.next)&&s){i.acceptToken(t,1);break}a=o=0}else o++;i.advance()}}))}const hc=uc("script",53,1),dc=uc("style",54,2),pc=uc("textarea",55,3),fc=Ll.deserialize({version:13,states:",fOVO!jOOO!TQ#tO'#CoO!YQ#tO'#CyO!_Q#tO'#C|O!dQ#tO'#DPO!iOXO'#CnO!tOYO'#CnO#PO[O'#CnO$YO!jO'#CnOOOW'#Cn'#CnO$aO$fO'#DSO$iQ#tO'#DUO$nQ#tO'#DVOOOW'#Dj'#DjOOOW'#DX'#DXQVO!jOOO$sQ&jO,59ZO${Q&jO,59eO%TQ&jO,59hO%]Q&zO,59kOOOX'#D]'#D]O%hOXO'#CwO%sOXO,59YOOOY'#D^'#D^O%{OYO'#CzO&WOYO,59YOOO['#D_'#D_O&`O[O'#C}O&kO[O,59YOOOW'#D`'#D`O&sO!jO,59YO&zQ#tO'#DQOOOW,59Y,59YOOOp'#Da'#DaO'PO$fO,59nOOOW,59n,59nO'XQ#tO,59pO'^Q#tO,59qOOOW-E7V-E7VO'cQ&zO'#CqOOQ`'#DY'#DYO'qQ&jO1G.uOOOX1G.u1G.uO'yQ&jO1G/POOOY1G/P1G/PO(RQ&jO1G/SOOO[1G/S1G/SO(ZQ&zO1G/VOOOW1G/V1G/VOOOW1G/X1G/XOOOX-E7Z-E7ZO(fQ#tO'#CxOOOW1G.t1G.tOOOY-E7[-E7[O(kQ#tO'#C{OOO[-E7]-E7]O(pQ#tO'#DOOOOW-E7^-E7^O(uQ#tO,59lOOOp-E7_-E7_OOOW1G/Y1G/YOOOW1G/[1G/[OOOW1G/]1G/]O(zQ,UO,59]OOQ`-E7W-E7WOOOX7+$a7+$aOOOY7+$k7+$kOOO[7+$n7+$nOOOW7+$q7+$qOOOW7+$s7+$sO)VQ#tO,59dO)[Q#tO,59gO)aQ#tO,59jOOOW1G/W1G/WO)fO7[O'#CtO)tOMhO'#CtOOQ`1G.w1G.wOOOW1G/O1G/OOOOW1G/R1G/ROOOW1G/U1G/UOOOO'#DZ'#DZO*SO7[O,59`OOQ`,59`,59`OOOO'#D['#D[O*bOMhO,59`OOOO-E7X-E7XOOQ`1G.z1G.zOOOO-E7Y-E7Y",stateData:"*x~O!]OS~OSSOTPOUQOVROX[OYZOZ]O^]O_]O`]Oa]Ow]Oz^O!cYO~Od`O~OdaO~OdbO~OdcO~O!VdOPkP!YkP~O!WgOQnP!YnP~O!XjORqP!YqP~OSSOTPOUQOVROWoOX[OYZOZ]O^]O_]O`]Oa]Ow]O!cYO~O!YpO~P#[O!ZqO!dsO~OdtO~OduO~OfwOjzO~OfwOj|O~OfwOj!OO~O[!ROfwOj!QO~O!VdOPkX!YkX~OP!TO!Y!UO~O!WgOQnX!YnX~OQ!WO!Y!UO~O!XjORqX!YqX~OR!YO!Y!UO~O!Y!UO~P#[Od![O~O!ZqO!d!^O~Oj!_O~Oj!`O~Og!aOfeXjeX[eX~OfwOj!cO~OfwOj!dO~OfwOj!eO~O[!gOfwOj!fO~Od!hO~Od!iO~Od!jO~Oj!kO~Oi!nO!_!lO!a!mO~Oj!oO~Oj!pO~Oj!qO~O_!rO`!rO!_!tO!`!rO~O_!uO`!uO!a!tO!b!uO~O_!rO`!rO!_!xO!`!rO~O_!uO`!uO!a!xO!b!uO~O`_a!cwz!c~",goto:"%i!_PPPPPPPPPPPPPPPPPP!`!fP!lPP!vPP!y!|#P#V#Y#]#c#f#i#o#u!`P!`!`P#{$R$e$k$q$w$}%T%ZPPPPPPPP%aX]OW_nXTOW_nax`abcy{}!PR!n!aRfTR!UfXUOW_nRiUR!UiXVOW_nRlVR!UlXWOW_nQpWR!UnXXOW_nQ_ORv_Qy`Q{aQ}bQ!PcX!by{}!PQ!s!lR!w!sQ!v!mR!y!vQeTR!SeQhUR!VhQkVR!XkQnWR!ZnQrYR!]rS^O_TmWn",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteCloseTag SelfCloseEndTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue EndTag ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:66,context:sc,nodeProps:[[Di.closedBy,-9,1,2,3,5,6,7,8,9,10,"EndTag",4,"EndTag SelfCloseEndTag",-4,19,29,32,35,"CloseTag"],[Di.group,-9,11,15,16,17,18,38,39,40,41,"Entity",14,"Entity TextContent",-3,27,30,33,"TextContent Entity"],[Di.openedBy,12,"StartTag",26,"StartTag StartCloseTag",-4,28,31,34,36,"OpenTag"]],skippedNodes:[0],repeatNodeCount:9,tokenData:"!#b!aR!WOX$kXY)sYZ)sZ]$k]^)s^p$kpq)sqr$krs*zsv$kvw+dwx2yx}$k}!O3f!O!P$k!P!Q7_!Q![$k![!]8u!]!^$k!^!_>b!_!`!!p!`!a8T!a!c$k!c!}8u!}#R$k#R#S8u#S#T$k#T#o8u#o$f$k$f$g&R$g%W$k%W%o8u%o%p$k%p&a8u&a&b$k&b1p8u1p4U$k4U4d8u4d4e$k4e$IS8u$IS$I`$k$I`$Ib8u$Ib$Kh$k$Kh%#t8u%#t&/x$k&/x&Et8u&Et&FV$k&FV;'S8u;'S;:jiW!``!bpOq(kqr?Rrs'gsv(kwx(]x!a(k!a!bKj!b~(k!R?YZ!``!bpOr(krs'gsv(kwx(]x}(k}!O?{!O!f(k!f!gAR!g#W(k#W#XGz#X~(k!R@SV!``!bpOr(krs'gsv(kwx(]x}(k}!O@i!O~(k!R@rT!``!bp!cPOr(krs'gsv(kwx(]x~(k!RAYV!``!bpOr(krs'gsv(kwx(]x!q(k!q!rAo!r~(k!RAvV!``!bpOr(krs'gsv(kwx(]x!e(k!e!fB]!f~(k!RBdV!``!bpOr(krs'gsv(kwx(]x!v(k!v!wBy!w~(k!RCQV!``!bpOr(krs'gsv(kwx(]x!{(k!{!|Cg!|~(k!RCnV!``!bpOr(krs'gsv(kwx(]x!r(k!r!sDT!s~(k!RD[V!``!bpOr(krs'gsv(kwx(]x!g(k!g!hDq!h~(k!RDxW!``!bpOrDqrsEbsvDqvwEvwxFfx!`Dq!`!aGb!a~DqqEgT!bpOvEbvxEvx!`Eb!`!aFX!a~EbPEyRO!`Ev!`!aFS!a~EvPFXOzPqF`Q!bpzPOv'gx~'gaFkV!``OrFfrsEvsvFfvwEvw!`Ff!`!aGQ!a~FfaGXR!``zPOr(]sv(]w~(]!RGkT!``!bpzPOr(krs'gsv(kwx(]x~(k!RHRV!``!bpOr(krs'gsv(kwx(]x#c(k#c#dHh#d~(k!RHoV!``!bpOr(krs'gsv(kwx(]x#V(k#V#WIU#W~(k!RI]V!``!bpOr(krs'gsv(kwx(]x#h(k#h#iIr#i~(k!RIyV!``!bpOr(krs'gsv(kwx(]x#m(k#m#nJ`#n~(k!RJgV!``!bpOr(krs'gsv(kwx(]x#d(k#d#eJ|#e~(k!RKTV!``!bpOr(krs'gsv(kwx(]x#X(k#X#YDq#Y~(k!RKqW!``!bpOrKjrsLZsvKjvwLowxNPx!aKj!a!b! g!b~KjqL`T!bpOvLZvxLox!aLZ!a!bM^!b~LZPLrRO!aLo!a!bL{!b~LoPMORO!`Lo!`!aMX!a~LoPM^OwPqMcT!bpOvLZvxLox!`LZ!`!aMr!a~LZqMyQ!bpwPOv'gx~'gaNUV!``OrNPrsLosvNPvwLow!aNP!a!bNk!b~NPaNpV!``OrNPrsLosvNPvwLow!`NP!`!a! V!a~NPa! ^R!``wPOr(]sv(]w~(]!R! nW!``!bpOrKjrsLZsvKjvwLowxNPx!`Kj!`!a!!W!a~Kj!R!!aT!``!bpwPOr(krs'gsv(kwx(]x~(k!V!!{VgS^P!``!bpOr&Rrs&qsv&Rwx'rx!^&R!^!_(k!_~&R",tokenizers:[hc,dc,pc,Oc,lc,cc,0,1,2,3,4,5],topRules:{Document:[0,13]},dialects:{noMatch:0},tokenPrec:446});function mc(e,t){let n=Object.create(null);for(let r of e.firstChild.getChildren("Attribute")){let e=r.getChild("AttributeName"),i=r.getChild("AttributeValue")||r.getChild("UnquotedAttributeValue");e&&(n[t.read(e.from,e.to)]=i?"AttributeValue"==i.name?t.read(i.from+1,i.to-1):t.read(i.from,i.to):"")}return n}function gc(e,t,n){let r;for(let i of n)if(!i.attrs||i.attrs(r||(r=mc(e.node.parent,t))))return{parser:i.parser};return null}function Qc(e){let t=[],n=[],r=[];for(let i of e){let e="script"==i.tag?t:"style"==i.tag?n:"textarea"==i.tag?r:null;if(!e)throw new RangeError("Only script, style, and textarea tags can host nested parsers");e.push(i)}return ma(((e,i)=>{let a=e.type.id;return 27==a?gc(e,i,t):30==a?gc(e,i,n):33==a?gc(e,i,r):null}))}const $c=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288];function bc(e){return e>=65&&e<=90||e>=97&&e<=122||e>=161}function xc(e){return e>=48&&e<=57}const wc=new Rl(((e,t)=>{for(let n=!1,r=0,i=0;;i++){let{next:a}=e;if(!(bc(a)||45==a||95==a||n&&xc(a))){n&&e.acceptToken(40==a?94:2==r&&t.canShift(2)?2:95);break}!n&&(45!=a||i>0)&&(n=!0),r===i&&45==a&&r++,e.advance()}})),kc=new Rl((e=>{if($c.includes(e.peek(-1))){let{next:t}=e;(bc(t)||95==t||35==t||46==t||91==t||58==t||45==t)&&e.acceptToken(93)}})),yc=new Rl((e=>{if(!$c.includes(e.peek(-1))){let{next:t}=e;if(37==t&&(e.advance(),e.acceptToken(1)),bc(t)){do{e.advance()}while(bc(e.next));e.acceptToken(1)}}})),Pc={__proto__:null,lang:32,"nth-child":32,"nth-last-child":32,"nth-of-type":32,dir:32,url:60,"url-prefix":60,domain:60,regexp:60,selector:134},vc={__proto__:null,"@import":114,"@media":138,"@charset":142,"@namespace":146,"@keyframes":152,"@supports":164},Sc={__proto__:null,not:128,only:128,from:158,to:160},_c=Ll.deserialize({version:13,states:"7WOYQ[OOOOQP'#Cd'#CdOOQP'#Cc'#CcO!ZQ[O'#CfO!}QXO'#CaO#UQ[O'#ChO#aQ[O'#DPO#fQ[O'#DTOOQP'#Ec'#EcO#kQdO'#DeO$VQ[O'#DrO#kQdO'#DtO$hQ[O'#DvO$sQ[O'#DyO$xQ[O'#EPO%WQ[O'#EROOQS'#Eb'#EbOOQS'#ES'#ESQYQ[OOOOQP'#Cg'#CgOOQP,59Q,59QO!ZQ[O,59QO%_Q[O'#EVO%yQWO,58{O&RQ[O,59SO#aQ[O,59kO#fQ[O,59oO%_Q[O,59sO%_Q[O,59uO%_Q[O,59vO'bQ[O'#D`OOQS,58{,58{OOQP'#Ck'#CkOOQO'#C}'#C}OOQP,59S,59SO'iQWO,59SO'nQWO,59SOOQP'#DR'#DROOQP,59k,59kOOQO'#DV'#DVO'sQ`O,59oOOQS'#Cp'#CpO#kQdO'#CqO'{QvO'#CsO)VQtO,5:POOQO'#Cx'#CxO'iQWO'#CwO)kQWO'#CyOOQS'#Ef'#EfOOQO'#Dh'#DhO)pQ[O'#DoO*OQWO'#EiO$xQ[O'#DmO*^QWO'#DpOOQO'#Ej'#EjO%|QWO,5:^O*cQpO,5:`OOQS'#Dx'#DxO*kQWO,5:bO*pQ[O,5:bOOQO'#D{'#D{O*xQWO,5:eO*}QWO,5:kO+VQWO,5:mOOQS-E8Q-E8QOOQP1G.l1G.lO+yQXO,5:qOOQO-E8T-E8TOOQS1G.g1G.gOOQP1G.n1G.nO'iQWO1G.nO'nQWO1G.nOOQP1G/V1G/VO,WQ`O1G/ZO,qQXO1G/_O-XQXO1G/aO-oQXO1G/bO.VQXO'#CdO.zQWO'#DaOOQS,59z,59zO/PQWO,59zO/XQ[O,59zO/`QdO'#CoO/gQ[O'#DOOOQP1G/Z1G/ZO#kQdO1G/ZO/nQpO,59]OOQS,59_,59_O#kQdO,59aO/vQWO1G/kOOQS,59c,59cO/{Q!bO,59eO0TQWO'#DhO0`QWO,5:TO0eQWO,5:ZO$xQ[O,5:VO$xQ[O'#EYO0mQWO,5;TO0xQWO,5:XO%_Q[O,5:[OOQS1G/x1G/xOOQS1G/z1G/zOOQS1G/|1G/|O1ZQWO1G/|O1`QdO'#D|OOQS1G0P1G0POOQS1G0V1G0VOOQS1G0X1G0XOOQP7+$Y7+$YOOQP7+$u7+$uO#kQdO7+$uO#kQdO,59{O1nQ[O'#EXO1xQWO1G/fOOQS1G/f1G/fO1xQWO1G/fO2QQtO'#ETO2uQdO'#EeO3PQWO,59ZO3UQXO'#EhO3]QWO,59jO3bQpO7+$uOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%V7+%VO3jQWO1G/PO#kQdO1G/oOOQO1G/u1G/uOOQO1G/q1G/qO3oQWO,5:tOOQO-E8W-E8WO3}QXO1G/vOOQS7+%h7+%hO4UQYO'#CsO%|QWO'#EZO4^QdO,5:hOOQS,5:h,5:hO4lQpO<O!c!}$w!}#O?[#O#P$w#P#Q?g#Q#R2U#R#T$w#T#U?r#U#c$w#c#d@q#d#o$w#o#pAQ#p#q2U#q#rA]#r#sAh#s#y$w#y#z%]#z$f$w$f$g%]$g#BY$w#BY#BZ%]#BZ$IS$w$IS$I_%]$I_$I|$w$I|$JO%]$JO$JT$w$JT$JU%]$JU$KV$w$KV$KW%]$KW&FU$w&FU&FV%]&FV~$wW$zQOy%Qz~%QW%VQoWOy%Qz~%Q~%bf#T~OX%QX^&v^p%Qpq&vqy%Qz#y%Q#y#z&v#z$f%Q$f$g&v$g#BY%Q#BY#BZ&v#BZ$IS%Q$IS$I_&v$I_$I|%Q$I|$JO&v$JO$JT%Q$JT$JU&v$JU$KV%Q$KV$KW&v$KW&FU%Q&FU&FV&v&FV~%Q~&}f#T~oWOX%QX^&v^p%Qpq&vqy%Qz#y%Q#y#z&v#z$f%Q$f$g&v$g#BY%Q#BY#BZ&v#BZ$IS%Q$IS$I_&v$I_$I|%Q$I|$JO&v$JO$JT%Q$JT$JU&v$JU$KV%Q$KV$KW&v$KW&FU%Q&FU&FV&v&FV~%Q^(fSOy%Qz#]%Q#]#^(r#^~%Q^(wSoWOy%Qz#a%Q#a#b)T#b~%Q^)YSoWOy%Qz#d%Q#d#e)f#e~%Q^)kSoWOy%Qz#c%Q#c#d)w#d~%Q^)|SoWOy%Qz#f%Q#f#g*Y#g~%Q^*_SoWOy%Qz#h%Q#h#i*k#i~%Q^*pSoWOy%Qz#T%Q#T#U*|#U~%Q^+RSoWOy%Qz#b%Q#b#c+_#c~%Q^+dSoWOy%Qz#h%Q#h#i+p#i~%Q^+wQ!VUoWOy%Qz~%Q~,QUOY+}Zr+}rs,ds#O+}#O#P,i#P~+}~,iOh~~,lPO~+}_,tWtPOy%Qz!Q%Q!Q![-^![!c%Q!c!i-^!i#T%Q#T#Z-^#Z~%Q^-cWoWOy%Qz!Q%Q!Q![-{![!c%Q!c!i-{!i#T%Q#T#Z-{#Z~%Q^.QWoWOy%Qz!Q%Q!Q![.j![!c%Q!c!i.j!i#T%Q#T#Z.j#Z~%Q^.qWfUoWOy%Qz!Q%Q!Q![/Z![!c%Q!c!i/Z!i#T%Q#T#Z/Z#Z~%Q^/bWfUoWOy%Qz!Q%Q!Q![/z![!c%Q!c!i/z!i#T%Q#T#Z/z#Z~%Q^0PWoWOy%Qz!Q%Q!Q![0i![!c%Q!c!i0i!i#T%Q#T#Z0i#Z~%Q^0pWfUoWOy%Qz!Q%Q!Q![1Y![!c%Q!c!i1Y!i#T%Q#T#Z1Y#Z~%Q^1_WoWOy%Qz!Q%Q!Q![1w![!c%Q!c!i1w!i#T%Q#T#Z1w#Z~%Q^2OQfUoWOy%Qz~%QY2XSOy%Qz!_%Q!_!`2e!`~%QY2lQzQoWOy%Qz~%QX2wQXPOy%Qz~%Q~3QUOY2}Zw2}wx,dx#O2}#O#P3d#P~2}~3gPO~2}_3oQbVOy%Qz~%Q~3zOa~_4RSUPjSOy%Qz!_%Q!_!`2e!`~%Q_4fUjS!PPOy%Qz!O%Q!O!P4x!P!Q%Q!Q![7_![~%Q^4}SoWOy%Qz!Q%Q!Q![5Z![~%Q^5bWoW#ZUOy%Qz!Q%Q!Q![5Z![!g%Q!g!h5z!h#X%Q#X#Y5z#Y~%Q^6PWoWOy%Qz{%Q{|6i|}%Q}!O6i!O!Q%Q!Q![6z![~%Q^6nSoWOy%Qz!Q%Q!Q![6z![~%Q^7RSoW#ZUOy%Qz!Q%Q!Q![6z![~%Q^7fYoW#ZUOy%Qz!O%Q!O!P5Z!P!Q%Q!Q![7_![!g%Q!g!h5z!h#X%Q#X#Y5z#Y~%Q_8ZQpVOy%Qz~%Q^8fUjSOy%Qz!O%Q!O!P4x!P!Q%Q!Q![7_![~%Q_8}S#WPOy%Qz!Q%Q!Q![5Z![~%Q~9`RjSOy%Qz{9i{~%Q~9nSoWOy9iyz9zz{:o{~9i~9}ROz9zz{:W{~9z~:ZTOz9zz{:W{!P9z!P!Q:j!Q~9z~:oOR~~:tUoWOy9iyz9zz{:o{!P9i!P!Q;W!Q~9i~;_QR~oWOy%Qz~%Q^;jY#ZUOy%Qz!O%Q!O!P5Z!P!Q%Q!Q![7_![!g%Q!g!h5z!h#X%Q#X#Y5z#Y~%QX<_S]POy%Qz![%Q![!]RUOy%Qz!c%Q!c!}>e!}#T%Q#T#o>e#o~%QX>lY!YPoWOy%Qz}%Q}!O>e!O!Q%Q!Q![>e![!c%Q!c!}>e!}#T%Q#T#o>e#o~%QX?aQxPOy%Qz~%Q^?lQvUOy%Qz~%QX?uSOy%Qz#b%Q#b#c@R#c~%QX@WSoWOy%Qz#W%Q#W#X@d#X~%QX@kQ!`PoWOy%Qz~%QX@tSOy%Qz#f%Q#f#g@d#g~%QXAVQ!RPOy%Qz~%Q_AbQ!QVOy%Qz~%QZAmS!PPOy%Qz!_%Q!_!`2e!`~%Q",tokenizers:[kc,yc,wc,0,1,2,3],topRules:{StyleSheet:[0,4]},specialized:[{term:94,get:e=>Pc[e]||-1},{term:56,get:e=>vc[e]||-1},{term:95,get:e=>Sc[e]||-1}],tokenPrec:1078});let Xc=0;class Tc{constructor(e,t,n){this.set=e,this.base=t,this.modified=n,this.id=Xc++}static define(e){if(null==e?void 0:e.base)throw new Error("Can not derive from a modified tag");let t=new Tc([],null,[]);if(t.set.push(t),e)for(let n of e.set)t.set.push(n);return t}static defineModifier(){let e=new Wc;return t=>t.modified.indexOf(e)>-1?t:Wc.get(t.base||t,t.modified.concat(e).sort(((e,t)=>e.id-t.id)))}}let Rc=0;class Wc{constructor(){this.instances=[],this.id=Rc++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find((n=>n.base==e&&function(e,t){return e.length==t.length&&e.every(((e,n)=>e==t[n]))}(t,n.modified)));if(n)return n;let r=[],i=new Tc(r,e,t);for(let e of t)e.instances.push(i);let a=qc(t);for(let t of e.set)for(let e of a)r.push(Wc.get(t,e));return i}}function qc(e){let t=[e];for(let n=0;n0&&t+3==e.length){i=1;break}let r=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(a);if(!r)throw new RangeError("Invalid path: "+e);if(n.push("*"==r[0]?null:'"'==r[0][0]?JSON.parse(r[0]):r[0]),t+=r[0].length,t==e.length)break;let o=e[t++];if(t==e.length&&"!"==o){i=0;break}if("/"!=o)throw new RangeError("Invalid path: "+e);a=e.slice(t)}let o=n.length-1,s=n[o];if(!s)throw new RangeError("Invalid path: "+e);let O=new Ic(r,i,o>0?n.slice(0,o):null);t[s]=O.sort(t[s])}}return Yc.add(t)}const Yc=new Di,Zc=U.define({combine:e=>e.length?Vc.combinedMatch(e):null}),Uc=U.define({combine:e=>e.length?e[0].match:null});function Ec(e){return e.facet(Zc)||e.facet(Uc)}class Ic{constructor(e,t,n,r){this.tags=e,this.mode=t,this.context=n,this.next=r}sort(e){return!e||e.depthe.scope))?void 0:Object.create(null);return(n,r)=>{let i=t&&t[n.id];if(void 0!==i)return i;let a=null;for(let t of e){let e=t.match(n,r);e&&(a=a?a+" "+e:e)}return t&&(t[n.id]=a),a}}static define(e,t){return new Vc(e,t||{})}static get(e,t,n){let r=Ec(e);return r&&r(t,n||Bi.none)}}class Cc{constructor(e){this.markCache=Object.create(null),this.tree=qa(e.state),this.decorations=this.buildDeco(e,Ec(e.state))}update(e){let t=qa(e.state),n=Ec(e.state),r=n!=e.startState.facet(Zc);t.length{n.add(e,t,this.markCache[r]||(this.markCache[r]=tn.mark({class:r})))}));return n.finish()}}const Ac=M.extend(Sn.fromClass(Cc,{decorations:e=>e.decorations})),Gc=[""];class jc{constructor(e,t,n){this.at=e,this.style=t,this.span=n,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,n,r,i,a){let{type:o,from:s,to:O}=e;if(s>=n||O<=t)return;Gc[i]=o.name,o.isTop&&(a=o);let l=r,c=o.prop(Yc),u=!1;for(;c;){if(!c.context||Nc(c.context,Gc,i)){for(let e of c.tags){let t=this.style(e,a);t&&(l&&(l+=" "),l+=t,1==c.mode?r+=(r?" ":"")+t:0==c.mode&&(u=!0))}break}c=c.next}if(this.startSpan(e.from,l),u)return;let h=e.tree&&e.tree.prop(Di.mounted);if(h&&h.overlay){let o=e.node.enter(h.overlay[0].from+s,1),c=e.firstChild();for(let u=0,d=s;;u++){let p=u=f)&&e.nextSibling()););if(!p||f>n)break;d=p.to+s,d>t&&(this.highlightRange(o.cursor,Math.max(t,p.from+s),Math.min(n,d),r,i,h.tree.type),this.startSpan(d,l))}c&&e.parent()}else if(e.firstChild()){do{if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,r,i+1,a),this.startSpan(Math.min(n,e.to),l)}}while(e.nextSibling());e.parent()}}}function Lc(e,t,n,r,i){let a=new jc(t,r,i);a.highlightRange(e.cursor(),t,n,"",0,e.type),a.flush(n)}function Nc(e,t,n){if(e.length>n-1)return!1;for(let r=n-1,i=e.length-1;i>=0;i--,r--){let n=e[i];if(n&&n!=t[r])return!1}return!0}const Dc=Tc.define,Mc=Dc(),Fc=Dc(),Bc=Dc(Fc),Hc=Dc(Fc),Kc=Dc(),Jc=Dc(Kc),eu=Dc(Kc),tu=Dc(),nu=Dc(tu),ru=Dc(),iu=Dc(),au=Dc(),ou=Dc(au),su=Dc(),Ou={comment:Mc,lineComment:Dc(Mc),blockComment:Dc(Mc),docComment:Dc(Mc),name:Fc,variableName:Dc(Fc),typeName:Bc,tagName:Dc(Bc),propertyName:Hc,attributeName:Dc(Hc),className:Dc(Fc),labelName:Dc(Fc),namespace:Dc(Fc),macroName:Dc(Fc),literal:Kc,string:Jc,docString:Dc(Jc),character:Dc(Jc),attributeValue:Dc(Jc),number:eu,integer:Dc(eu),float:Dc(eu),bool:Dc(Kc),regexp:Dc(Kc),escape:Dc(Kc),color:Dc(Kc),url:Dc(Kc),keyword:ru,self:Dc(ru),null:Dc(ru),atom:Dc(ru),unit:Dc(ru),modifier:Dc(ru),operatorKeyword:Dc(ru),controlKeyword:Dc(ru),definitionKeyword:Dc(ru),operator:iu,derefOperator:Dc(iu),arithmeticOperator:Dc(iu),logicOperator:Dc(iu),bitwiseOperator:Dc(iu),compareOperator:Dc(iu),updateOperator:Dc(iu),definitionOperator:Dc(iu),typeOperator:Dc(iu),controlOperator:Dc(iu),punctuation:au,separator:Dc(au),bracket:ou,angleBracket:Dc(ou),squareBracket:Dc(ou),paren:Dc(ou),brace:Dc(ou),content:tu,heading:nu,heading1:Dc(nu),heading2:Dc(nu),heading3:Dc(nu),heading4:Dc(nu),heading5:Dc(nu),heading6:Dc(nu),contentSeparator:Dc(tu),list:Dc(tu),quote:Dc(tu),emphasis:Dc(tu),strong:Dc(tu),link:Dc(tu),monospace:Dc(tu),strikethrough:Dc(tu),inserted:Dc(),deleted:Dc(),changed:Dc(),invalid:Dc(),meta:su,documentMeta:Dc(su),annotation:Dc(su),processingInstruction:Dc(su),definition:Tc.defineModifier(),constant:Tc.defineModifier(),function:Tc.defineModifier(),standard:Tc.defineModifier(),local:Tc.defineModifier(),special:Tc.defineModifier()},lu=Vc.define([{tag:Ou.link,class:"cmt-link"},{tag:Ou.heading,class:"cmt-heading"},{tag:Ou.emphasis,class:"cmt-emphasis"},{tag:Ou.strong,class:"cmt-strong"},{tag:Ou.keyword,class:"cmt-keyword"},{tag:Ou.atom,class:"cmt-atom"},{tag:Ou.bool,class:"cmt-bool"},{tag:Ou.url,class:"cmt-url"},{tag:Ou.labelName,class:"cmt-labelName"},{tag:Ou.inserted,class:"cmt-inserted"},{tag:Ou.deleted,class:"cmt-deleted"},{tag:Ou.literal,class:"cmt-literal"},{tag:Ou.string,class:"cmt-string"},{tag:Ou.number,class:"cmt-number"},{tag:[Ou.regexp,Ou.escape,Ou.special(Ou.string)],class:"cmt-string2"},{tag:Ou.variableName,class:"cmt-variableName"},{tag:Ou.local(Ou.variableName),class:"cmt-variableName cmt-local"},{tag:Ou.definition(Ou.variableName),class:"cmt-variableName cmt-definition"},{tag:Ou.special(Ou.variableName),class:"cmt-variableName2"},{tag:Ou.typeName,class:"cmt-typeName"},{tag:Ou.namespace,class:"cmt-namespace"},{tag:Ou.macroName,class:"cmt-macroName"},{tag:Ou.propertyName,class:"cmt-propertyName"},{tag:Ou.operator,class:"cmt-operator"},{tag:Ou.comment,class:"cmt-comment"},{tag:Ou.meta,class:"cmt-meta"},{tag:Ou.invalid,class:"cmt-invalid"},{tag:Ou.punctuation,class:"cmt-punctuation"}]);let cu=null;function uu(){if(!cu&&"object"==typeof document&&document.body){let e=[];for(let t in document.body.style)/[A-Z]|^-|^(item|length)$/.test(t)||e.push(t);cu=e.sort().map((e=>({type:"property",label:e})))}return cu||[]}const hu=["active","after","before","checked","default","disabled","empty","enabled","first-child","first-letter","first-line","first-of-type","focus","hover","in-range","indeterminate","invalid","lang","last-child","last-of-type","link","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-of-type","only-child","optional","out-of-range","placeholder","read-only","read-write","required","root","selection","target","valid","visited"].map((e=>({type:"class",label:e}))),du=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map((e=>({type:"keyword",label:e}))).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map((e=>({type:"constant",label:e})))),pu=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map((e=>({type:"type",label:e}))),fu=/^[\w-]*/,mu=e=>{let{state:t,pos:n}=e,r=qa(t).resolveInner(n,-1);if("PropertyName"==r.name)return{from:r.from,options:uu(),span:fu};if("ValueName"==r.name)return{from:r.from,options:du,span:fu};if("PseudoClassName"==r.name)return{from:r.from,options:hu,span:fu};if("TagName"==r.name){for(let{parent:e}=r;e;e=e.parent)if("Block"==e.name)return{from:r.from,options:uu(),span:fu};return{from:r.from,options:pu,span:fu}}if(!e.explicit)return null;let i=r.resolve(n),a=i.childBefore(n);return a&&":"==a.name&&"PseudoClassSelector"==i.name?{from:n,options:hu,span:fu}:a&&":"==a.name&&"Declaration"==i.name||"ArgList"==i.name?{from:n,options:du,span:fu}:"Block"==i.name?{from:n,options:uu(),span:fu}:null},gu=Wa.define({parser:_c.configure({props:[Ha.add({Declaration:oo()}),so.add({Block:Oo}),zc({"import charset namespace keyframes":Ou.definitionKeyword,"media supports":Ou.controlKeyword,"from to selector":Ou.keyword,NamespaceName:Ou.namespace,KeyframeName:Ou.labelName,TagName:Ou.tagName,ClassName:Ou.className,PseudoClassName:Ou.constant(Ou.className),IdName:Ou.labelName,"FeatureName PropertyName":Ou.propertyName,AttributeName:Ou.attributeName,NumberLiteral:Ou.number,KeywordQuery:Ou.keyword,UnaryQueryOp:Ou.operatorKeyword,"CallTag ValueName":Ou.atom,VariableName:Ou.variableName,Callee:Ou.operatorKeyword,Unit:Ou.unit,"UniversalSelector NestingSelector":Ou.definitionOperator,AtKeyword:Ou.keyword,MatchOp:Ou.compareOperator,"ChildOp SiblingOp, LogicOp":Ou.logicOperator,BinOp:Ou.arithmeticOperator,Important:Ou.modifier,Comment:Ou.blockComment,ParenthesizedContent:Ou.special(Ou.name),ColorLiteral:Ou.color,StringLiteral:Ou.string,":":Ou.punctuation,"PseudoOp #":Ou.derefOperator,"; ,":Ou.separator,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}}),Qu=gu.data.of({autocomplete:mu});function $u(){return new Ga(gu,Qu)}var bu=Object.freeze({__proto__:null,css:$u,cssCompletion:Qu,cssCompletionSource:mu,cssLanguage:gu});const xu=272,wu=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],ku=new jl({start:!1,shift:(e,t)=>4==t||5==t||277==t?e:278==t,strict:!1}),yu=new Rl(((e,t)=>{let{next:n}=e;(125==n||-1==n||t.context)&&t.canShift(275)&&e.acceptToken(275)}),{contextual:!0,fallback:!0}),Pu=new Rl(((e,t)=>{let n,{next:r}=e;wu.indexOf(r)>-1||(47!=r||47!=(n=e.peek(1))&&42!=n)&&125!=r&&59!=r&&-1!=r&&!t.context&&t.canShift(271)&&e.acceptToken(271)}),{contextual:!0}),vu=new Rl(((e,t)=>{let{next:n}=e;if((43==n||45==n)&&(e.advance(),n==e.next)){e.advance();let n=!t.context&&t.canShift(1);e.acceptToken(n?1:2)}}),{contextual:!0}),Su=new Rl((e=>{for(let t=!1,n=0;;n++){let{next:r}=e;if(r<0){n&&e.acceptToken(xu);break}if(96==r){n?e.acceptToken(xu):e.acceptToken(274,1);break}if(123==r&&t){1==n?e.acceptToken(273,1):e.acceptToken(xu,-1);break}if(10==r&&n){e.advance(),e.acceptToken(xu);break}92==r&&e.advance(),t=36==r,e.advance()}}));const _u={__proto__:null,export:16,as:21,from:25,default:30,async:35,function:36,this:46,true:54,false:54,void:60,typeof:64,null:78,super:80,new:114,await:131,yield:133,delete:134,class:144,extends:146,public:183,private:183,protected:183,readonly:185,in:204,instanceof:206,const:208,import:240,keyof:291,unique:295,infer:301,is:335,abstract:355,implements:357,type:359,let:362,var:364,interface:371,enum:375,namespace:381,module:383,declare:387,global:391,for:412,of:421,while:424,with:428,do:432,if:436,else:438,switch:442,case:448,try:454,catch:456,finally:458,return:462,throw:466,break:470,continue:474,debugger:478},Xu={__proto__:null,async:101,get:103,set:105,public:153,private:153,protected:153,static:155,abstract:157,readonly:161,new:339},Tu={__proto__:null,"<":121},Ru=Ll.deserialize({version:13,states:"$-tO`QYOOO&}Q!LdO'#CgO'UOSO'#DSO)^QYO'#DXO)nQYO'#DdO)uQYO'#DnO-lQYO'#DtOOQO'#EU'#EUO.PQWO'#ETO.UQWO'#ETO0TQ!LdO'#ImO2kQ!LdO'#InO3XQWO'#ErO3^QpO'#FXOOQ!LS'#Ez'#EzO3fO!bO'#EzO3tQWO'#F`O5RQWO'#F_OOQ!LS'#In'#InOOQ!LQ'#Im'#ImOOQQ'#JV'#JVO5WQWO'#HfO5]Q!LYO'#HgOOQQ'#I_'#I_OOQQ'#Hh'#HhQ`QYOOO)uQYO'#DfO5eQWO'#GSO5jQ#tO'#ClO5xQWO'#ESO6TQ#tO'#EyO6oQWO'#GSO6tQWO'#GWO7PQWO'#GWO7_QWO'#GZO7_QWO'#G[O7_QWO'#G^O5eQWO'#GaO8OQWO'#GdO9^QWO'#CcO9nQWO'#GqO9vQWO'#GwO9vQWO'#GyO`QYO'#G{O9vQWO'#G}O9vQWO'#HQO9{QWO'#HWO:QQ!LZO'#H[O)uQYO'#H^O:]Q!LZO'#H`O:hQ!LZO'#HbO5]Q!LYO'#HdO)uQYO'#IoOOOS'#Hj'#HjO:sOSO,59nOOQ!LS,59n,59nO=UQbO'#CgO=`QYO'#HkO=mQWO'#IpO?lQbO'#IpO'aQYO'#IpO?sQWO,59sO@ZQ&jO'#D^OASQWO'#EUOAaQWO'#IzOAlQWO'#IyOAtQWO,5:rOAyQWO'#IxOBQQWO'#DuO5jQ#tO'#ESOB`QWO'#ESOBkQ`O'#EyOOQ!LS,5:O,5:OOBsQYO,5:OODqQ!LdO,5:YOE_QWO,5:`OExQ!LYO'#IwO6tQWO'#IvOFPQWO'#IvOFXQWO,5:qOF^QWO'#IvOFlQYO,5:oOHiQWO'#EQOIsQWO,5:oOKSQWO'#DhOKZQYO'#DmOKeQ&jO,5:xO)uQYO,5:xOOQQ'#Ej'#EjOOQQ'#El'#ElO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yO)uQYO,5:yOOQQ'#Ep'#EpOKjQYO,5;ZOOQ!LS,5;`,5;`OOQ!LS,5;a,5;aOMgQWO,5;aOOQ!LS,5;b,5;bO)uQYO'#HuOMlQ!LYO,5;{ONWQWO,5:yO)uQYO,5;^ONpQpO'#JOON_QpO'#JOONwQpO'#JOO! YQpO,5;iOOQO,5;s,5;sO! hQYO'#FZOOOO'#Ht'#HtO3fO!bO,5;fO! oQpO'#F]OOQ!LS,5;f,5;fO!!]Q,UO'#CqOOQ!LS'#Ct'#CtO!!pQWO'#CtO!!uOSO'#CxO!#cQ#tO,5;xO!#jQWO,5;zO!$vQWO'#FjO!%TQWO'#FkO!%YQWO'#FoO!&[Q&jO'#FsO!&}Q,UO'#IhOOQ!LS'#Ih'#IhO!'XQWO'#IgO!'gQWO'#IfOOQ!LS'#Cr'#CrOOQ!LS'#Cy'#CyO!'oQWO'#C{OIxQWO'#FbOIxQWO'#FdO!'tQWO'#FfO!'yQWO'#FgO!(OQWO'#FmOIxQWO'#FrO!(TQWO'#EVO!(lQWO,5;yO`QYO,5>QOOQQ'#Ib'#IbOOQQ,5>R,5>ROOQQ-E;f-E;fO!*hQ!LdO,5:QOOQ!LQ'#Co'#CoO!+XQ#tO,5O,5>OO!7UQ`O,5?ZOOOS-E;h-E;hOOQ!LS1G/Y1G/YO!7ZQbO,5>VO)uQYO,5>VOOQO-E;i-E;iO!7eQWO,5?[O!7mQbO,5?[O!7tQWO,5?eOOQ!LS1G/_1G/_O!7|QpO'#DQOOQO'#Ir'#IrO)uQYO'#IrO!8kQpO'#IrO!9YQpO'#D_O!9kQ&jO'#D_O!;sQYO'#D_O!;zQWO'#IqO!gQ&jO'#DxOOQ!LS,5:a,5:aO)uQYO,5:aOHiQWO,5:aO!>nQWO,5:aO9{QWO,5:nO!,QQpO,5:nO!,YQ#tO,5:nO5jQ#tO,5:nOOQ!LS1G/j1G/jOOQ!LS1G/z1G/zOOQ!LQ'#EP'#EPO)uQYO,5?cO!>yQ!LYO,5?cO!?[Q!LYO,5?cO!?cQWO,5?bO!?kQWO'#HrO!?cQWO,5?bOOQ!LQ1G0]1G0]O6tQWO,5?bOOQ!LS1G0Z1G0ZO!@VQ!LdO1G0ZO!@vQ!LbO,5:lOOQ!LS'#Fi'#FiO!AdQ!LdO'#IhOFlQYO1G0ZO!CcQ#tO'#IsO!CmQWO,5:SO!CrQbO'#ItO)uQYO'#ItO!C|QWO,5:XOOQ!LS'#DQ'#DQOOQ!LS1G0d1G0dO!DRQWO1G0dO!FdQ!LdO1G0eO!FkQ!LdO1G0eO!IOQ!LdO1G0eO!IVQ!LdO1G0eO!K^Q!LdO1G0eO!KqQ!LdO1G0eO!NbQ!LdO1G0eO!NiQ!LdO1G0eO#!|Q!LdO1G0eO##TQ!LdO1G0eO#$xQ!LdO1G0eO#'rQ7^O'#CgO#)mQ7^O1G0uO#+hQ7^O'#InOOQ!LS1G0{1G0{O#+{Q!LdO,5>aOOQ!LQ-E;s-E;sO#,lQ!LdO1G0eOOQ!LS1G0e1G0eO#.nQ!LdO1G0xO#/_QpO,5;kO#/dQpO,5;lO#/iQpO'#FSO#/}QWO'#FROOQO'#JP'#JPOOQO'#Hs'#HsO#0SQpO1G1TOOQ!LS1G1T1G1TOOQO1G1^1G1^O#0bQ7^O'#ImO#0lQWO,5;uOKjQYO,5;uOOOO-E;r-E;rOOQ!LS1G1Q1G1QOOQ!LS,5;w,5;wO#0qQpO,5;wOOQ!LS,59`,59`OHiQWO'#IjOOOS'#Hi'#HiO#0vOSO,59dOOQ!LS,59d,59dO)uQYO1G1dOKeQ&jO'#HwO#1RQWO,5<]OOQ!LS,5},5>}O#9fQ!LYO,5>}OOQQ1G.r1G.rO9{QWO1G.rO!,QQpO1G.rO!,YQ#tO1G.rO#9tQWO1G0ZO#9yQWO'#CgO#:UQWO'#J[O#:^QWO,5=[O#:cQWO'#J[O#:hQWO'#ISO#:vQWO,5?uO#;OQbO1G0}OOQ!LS1G1P1G1PO5eQWO1G2uO#;VQWO1G2uO#;[QWO1G2uO#;aQWO1G2uOOQQ1G2u1G2uO#;fQ#tO1G2YO6tQWO'#IyO6tQWO'#EYO6tQWO'#H|O#;wQ!LYO,5?rOOQQ1G2^1G2^O!.yQWO1G2dOHiQWO1G2aO#RQYO,5=_O#>YQWO,5=_O6tQWO,5?wOOQQ1G2w1G2wO`QYO1G2wOOQQ1G2}1G2}OOQQ1G3P1G3PO9vQWO1G3RO#>_QYO1G3TO#BVQYO'#HSOOQQ1G3W1G3WO9{QWO1G3^O#BdQWO1G3^O5]Q!LYO1G3bOOQQ1G3d1G3dOOQ!LQ'#Fp'#FpO5]Q!LYO1G3fO5]Q!LYO1G3hOOOS1G4u1G4uO#BlQ`O,5;{O#BtQbO1G3qO#COQWO1G4vO#CWQWO1G5PO#C`QWO,5?^OKjQYO,5:tO6tQWO,5:tO9{QWO,59yOKjQYO,59yO!,QQpO,59yO#CeQ7^O,59yOOQO,5:t,5:tO#CoQ&jO'#HlO#DVQWO,5?]OOQ!LS1G/d1G/dO#D_Q&jO'#HqO#DsQWO,5?gOOQ!LQ1G0_1G0_O!9kQ&jO,59yO#D{QbO1G5QOOQO,5>[,5>[O6tQWO,5>[OOQO-E;n-E;nO#EVQ!LrO'#D}O!&VQ&jO'#DyOOQO'#Ho'#HoO#EqQ&jO,5:dOOQ!LS,5:d,5:dO#ExQ&jO'#DyO#FWQ&jO'#D}O#FlQ&jO'#D}O!&VQ&jO'#D}O#FvQWO1G/{O#F{Q`O1G/{OOQ!LS1G/{1G/{O)uQYO1G/{OHiQWO1G/{OOQ!LS1G0Y1G0YO9{QWO1G0YO!,QQpO1G0YO!,YQ#tO1G0YO#GSQ!LdO1G4}O)uQYO1G4}O#GdQ!LYO1G4}O#GuQWO1G4|O6tQWO,5>^OOQO,5>^,5>^O#G}QWO,5>^OOQO-E;p-E;pO#GuQWO1G4|O#H]Q!LdO,59gO#J[Q!LdO,5;|O#L^Q!LdO,5c,5>cO$%{QWO,5>cOOQ!LS1G1w1G1wP$&QQWO'#HwPOQ!LS-E;u-E;uO$&qQ#tO1G2SO$'dQ#tO1G2UO$'nQ#tO1G2WOOQ!LS1G1p1G1pO$'uQWO'#HvO$(TQWO,5?nO$(TQWO,5?nO$(]QWO,5?nO$(hQWO,5?nOOQO1G1r1G1rO$(vQ#tO1G1qO$)WQWO'#HxO$)hQWO,5?oOHiQWO,5?oO$)pQ`O,5?oOOQ!LS1G1u1G1uO5]Q!LYO,5<`O5]Q!LYO,5f,5>fOOQO-E;x-E;xOKeQ&jO,59iO)uQYO,59iO$*{QWO1G1lOIxQWO1G1sO$+QQ!LdO7+'POOQ!LS7+'P7+'POFlQYO7+'POOQ!LS7+%W7+%WO$+qQ`O'#JUO#FvQWO7+'tO$+{QWO7+'tO$,TQ`O7+'tOOQQ7+'t7+'tOHiQWO7+'tO)uQYO7+'tOHiQWO7+'tOOQO1G.v1G.vO$,_Q!LbO'#CgO$,oQ!LbO,5n,5>nOOQO-Eh,5>hOOQ!LQ-E;z-E;zOOQQ7+(O7+(OO$.`Q!LbO7+'{OHiQWO7+'{O$.jQ`O7+'|OOQQ7+'|7+'|OHiQWO7+'|O$.qQWO'#JXO$.|QWO,5j,5>jOOQO-E;|-E;|OOQQ7+(R7+(RO$/sQ&jO'#GiOOQQ1G2n1G2nOHiQWO1G2nO)uQYO1G2nOHiQWO1G2nO$/zQWO1G2nO$0YQ#tO1G2nO5]Q!LYO1G2qO#3lQWO1G2qO5RQWO1G2qO!,QQpO1G2qO!,YQ#tO1G2qO$0kQWO'#IQO$0vQWO,5?tO$1OQ&jO,5?tOOQ!LQ1G2r1G2rOOQQ7+$T7+$TO$1TQWO7+$TO5]Q!LYO7+$TO$1YQWO7+$TO)uQYO1G5cO)uQYO1G5dO$1_QYO1G2yO$1fQWO1G2yO$1kQYO1G2yO$1rQ!LYO1G5cOOQQ7+(c7+(cO5]Q!LYO7+(mO`QYO7+(oOOQQ'#J_'#J_OOQQ'#IT'#ITO$1|QYO,5=nOOQQ,5=n,5=nO)uQYO'#HTO$2ZQWO'#HVOOQQ7+(x7+(xO$2`QYO7+(xO6tQWO7+(xOOQQ7+(|7+(|OOQQ7+)Q7+)QOOQQ7+)S7+)SOOQO1G4x1G4xO$6ZQ7^O1G0`O$6eQWO1G0`OOQO1G/e1G/eO$6pQ7^O1G/eO9{QWO1G/eOKjQYO'#D_OOQO,5>W,5>WOOQO-E;j-E;jOOQO,5>],5>]OOQO-E;o-E;oO!,QQpO1G/eOOQO1G3v1G3vO9{QWO,5:eOOQO,5:i,5:iO)uQYO,5:iO$6zQ!LYO,5:iO$7VQ!LYO,5:iO!,QQpO,5:eOOQO-E;m-E;mOOQ!LS1G0O1G0OO!&VQ&jO,5:eO$7eQ!LrO,5:iO$8PQ&jO,5:eO!&VQ&jO,5:iO$8_Q&jO,5:iO$8sQ!LYO,5:iOOQ!LS7+%g7+%gO#FvQWO7+%gO#F{Q`O7+%gOOQ!LS7+%t7+%tO9{QWO7+%tO!,QQpO7+%tO$9XQ!LdO7+*iO)uQYO7+*iOOQO1G3x1G3xO6tQWO1G3xO$9iQWO7+*hO$9qQ!LdO1G2SO$;sQ!LdO1G2UO$=uQ!LdO1G1qO$?}Q#tO,5>XOOQO-E;k-E;kO$@XQbO,5>YO)uQYO,5>YOOQO-E;l-E;lO$@cQWO1G4zO$@kQ7^O1G0ZO$BrQ7^O1G0eO$ByQ7^O1G0eO$DzQ7^O1G0eO$ERQ7^O1G0eO$FvQ7^O1G0eO$GZQ7^O1G0eO$IhQ7^O1G0eO$IoQ7^O1G0eO$KpQ7^O1G0eO$KwQ7^O1G0eO$MlQ7^O1G0eO$NPQ!LdO<aOOOO7+&{7+&{OOOS1G4p1G4pOOQ!LS1G3}1G3}OIxQWO7+'rO%$yQWO,5>bO5eQWO,5>bOOQO-E;t-E;tO%%XQWO1G5YO%%XQWO1G5YO%%aQWO1G5YO%%lQ`O,5>dO%%vQWO,5>dOHiQWO,5>dOOQO-E;v-E;vO%%{Q`O1G5ZO%&VQWO1G5ZOOQO1G1z1G1zOOQO1G1{1G1{O5]Q!LYO1G1{O$)zQWO1G1{O5]Q!LYO1G1zO%&_QWO1G1|OHiQWO1G1|OOQO1G1}1G1}O5]Q!LYO1G2QO!,QQpO1G1zO#3gQWO1G1{O%&dQWO1G1|O%&lQWO1G1{OIxQWO7+*XOOQ!LS1G/T1G/TO%&wQWO1G/TOOQ!LS7+'W7+'WO%&|Q#tO7+'_O%'^Q!LdO<m,5>mO%)YQWO,5>mOOQO-ElOOQO-EgOOQO-E;y-E;yO#FvQWOAN@zOOQQAN@zAN@zOHiQWOAN@zO%iOOQO-E;{-E;{O%=uQ7^O1G5_O#3lQWO,5=UO5RQWO,5=UO!,QQpO,5=UOOQO-E;}-E;}OOQQ1G2o1G2oO$7eQ!LrO,5:iO!&VQ&jO,5=UO%>PQ&jO,5=UO%>_Q&jO,5:iOOQQ<sQWO<{Q`O<zAN>zO%ATQ!LdO<uAN>uO%-kQ!LdOAN>uOOQOAN>qAN>qO)uQYOAN>uO9{QWOAN>qO&#qQ!LYOAN>uO&#|Q7^O<yO}&mO!_'ja~Ou$qO|+tO!P$rO!}+vO#O+tO'S$]O}&fX!_&fX~O^!wi}!wi&}!wiz!wi!_!wi'_!wi!P!wi$x!wi!X!wi~P!(tO#P!ta}!ta!_!ta!u!ta!P!ta^!ta&}!taz!ta~P!#QO#P'[XP'[XY'[X^'[Xi'[Xs'[X!]'[X!`'[X!f'[X#S'[X#T'[X#U'[X#V'[X#W'[X#X'[X#Y'[X#Z'[X#]'[X#_'[X#a'[X#b'[X&}'[X']'[X!_'[Xz'[X!P'[X'_'[X$x'[X!X'[X~P!&cO},PO'W'gX~P!#QO'W,RO~O},SO!_'hX~P!(tO!_,VO~Oz,WO~OP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO']QOY#Ri^#Rii#Ri}#Ri!]#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'p#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~O#S#Ri~P!DWO#S!|O~P!DWOP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O']QOY#Ri^#Ri}#Ri!]#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'p#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~Oi#Ri~P!FrOi#OO~P!FrOP#ZOi#OOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO']QO^#Ri}#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'p#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~OY#Ri!]#Ri#X#Ri#Y#Ri#Z#Ri~P!I^OY#aO!]#QO#X#QO#Y#QO#Z#QO~P!I^OP#ZOY#aOi#OOr!xOs!xOu!yO!]#QO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO#X#QO#Y#QO#Z#QO#]#RO']QO^#Ri}#Ri#_#Ri#a#Ri#b#Ri&}#Ri'i#Ri'q#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~O'p#Ri~P!LUO'p!zO~P!LUOP#ZOY#aOi#OOr!xOs!xOu!yO!]#QO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO#X#QO#Y#QO#Z#QO#]#RO#_#TO']QO'p!zO^#Ri}#Ri#a#Ri#b#Ri&}#Ri'i#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~O'q#Ri~P!NpO'q!{O~P!NpOP#ZOY#aOi#OOr!xOs!xOu!yO!]#QO!^!vO!`!wO!f#ZO#S!|O#T!}O#U!}O#V!}O#W#PO#X#QO#Y#QO#Z#QO#]#RO#_#TO#a#VO']QO'p!zO'q!{O~O^#Ri}#Ri#b#Ri&}#Ri'i#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~P##[OPZXYZXiZXrZXsZXuZX!]ZX!^ZX!`ZX!fZX!uZX#PcX#SZX#TZX#UZX#VZX#WZX#XZX#YZX#ZZX#]ZX#_ZX#aZX#bZX#gZX']ZX'iZX'pZX'qZX}ZX!OZX~O#eZX~P#%oOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO#_8vO#a8xO#b8yO']QO'i#XO'p!zO'q!{O~O#e,YO~P#'yOP'bXY'bXi'bXr'bXs'bXu'bX!]'bX!^'bX!`'bX!f'bX#S'bX#T'bX#U'bX#V'bX#W'bX#X'bX#Z'bX#]'bX#_'bX#a'bX#b'bX']'bX'i'bX'p'bX'q'bX}'bX~O!u8}O#g8}O#Y'bX#e'bX!O'bX~P#)tO^&ia}&ia&}&ia!_&ia'_&iaz&ia!P&ia$x&ia!X&ia~P!(tOP#RiY#Ri^#Rii#Ris#Ri}#Ri!]#Ri!^#Ri!`#Ri!f#Ri#S#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri&}#Ri']#Riz#Ri!_#Ri'_#Ri!P#Ri$x#Ri!X#Ri~P!#QO^#fi}#fi&}#fiz#fi!_#fi'_#fi!P#fi$x#fi!X#fi~P!(tO#r,[O~O#r,]O~O!X'eO!u,^O!P#vX#o#vX#r#vX#y#vX~O|,_O~O!P'hO#o,aO#r'gO#y,bO~O}8zO!O'aX~P#'yO!O,cO~O#y,eO~O&z'wO&{'vO&|,hO~O],kOj,kOz,lO~O}cX!XcX!_cX!_$]X'icX~P! wO!_,rO~P!#QO},sO!X!tO'i&hO!_'vX~O!_,xO~Oz$]X}$]X!X$dX~P! wO},zOz'wX~P!#QO!X,|O~Oz-OO~O|(XO'S$]O!_'vP~Oi-SO!X!tO!`$UO'X$`O'i&hO~O!X)XO~O!O-YO~P!%gO!T-ZO!U-ZO'T$_O'`(aO~Ou-]O'`(aO~O!r-^O~O'S$wO}&nX'W&nX~O}(qO'W'Ya~Or-cOs-cOu-dO'ioa'poa'qoa}oa!uoa~O'Woa#eoa~P#4xOr'{Ou'|O'i$Ua'p$Ua'q$Ua}$Ua!u$Ua~O'W$Ua#e$Ua~P#5nOr'{Ou'|O'i$Wa'p$Wa'q$Wa}$Wa!u$Wa~O'W$Wa#e$Wa~P#6aO]-eO~O#P-fO~O'W$fa}$fa#e$fa!u$fa~P!#QO#P-iO~OR-rO!P&]O!k-qO$x-pO~O'W-sO~O]#nOi#oOj#nOk#nOn#|Op9OOu#uO!P#vO!Z:QO!`#sO#O9UO#l$QO$V9QO$X9SO$[$RO']#pO~Og-uO'S-tO~P#8WO!X)XO!P'Va^'Va&}'Va~O#P-{O~OYZX}cX!OcX~O}-|O!O(OX~O!O.OO~OY.PO~O!P$hO'S$]O[&vX}&vX~O})eO['}a~O!_.SO~P!(tO].UO~OY.VO~O[.WO~OR-rO!P&]O!k-qO$x-pO'X$`O~O})qO^'za&}'za~O!u.^O~OR.aO!P#vO~O'`&|O!O'{P~OR.kO!P.gO!k.jO$x.iO'X$`O~OY.uO}.sO!O'|X~O!O.vO~O[.xO^$XO&}$XO~O].yO~O#Y.{O%j.|O~P0nO!u#bO#Y.{O%j.|O~O^.}O~P)uO^/PO~O%s/TOP%qiQ%qiW%qi]%qi^%qia%qib%qig%qii%qij%qik%qin%qip%qiu%qiw%qix%qiy%qi!P%qi!Z%qi!`%qi!c%qi!d%qi!e%qi!f%qi!g%qi!j%qi#[%qi#l%qi#p%qi$w%qi$y%qi${%qi$|%qi%P%qi%R%qi%U%qi%V%qi%X%qi%f%qi%l%qi%n%qi%p%qi%r%qi%u%qi%{%qi&P%qi&R%qi&T%qi&V%qi&X%qi&x%qi'S%qi']%qi'u%qi!O%qi_%qi%x%qi~O_/ZO!O/XO%x/YO~P`O!PSO!`/^O~O}#_O'_$Ta~Oz&_i}&_i~P!(tO}!ZOz'di~O}&YOz'mi~Oz/bO~O}!Ra!O!Ra~P#'yO]%{Oj%{O|/hO'`(aO}&`X!O&`X~P?xO}+RO!O'ea~O]&TOj&TO|)pO'`&|O}&eX!O&eX~O}+UO!O'oa~Oz'ni}'ni~P!(tO^$XO!X!tO!`$UO!f/sO!u/qO&}$XO'X$`O'i&hO~O!O/vO~P!=uO!T/wO!U/wO'T$_O'`(aO~O!S/yO!T/wO!U/wO!r/zO'T$_O'`(aO~O!o/{O!p/{O~P#FWO!P&]O~O!P&]O~P!#QO}'ki!_'ki^'ki&}'ki~P!(tO!u0UO}'ki!_'ki^'ki&}'ki~O}&mO!_'ji~Ou$qO!P$rO#O0WO'S$]O~O#PoaPoaYoa^oaioa!]oa!^oa!`oa!foa#Soa#Toa#Uoa#Voa#Woa#Xoa#Yoa#Zoa#]oa#_oa#aoa#boa&}oa']oa!_oazoa!Poa'_oa$xoa!Xoa~P#4xO#P$UaP$UaY$Ua^$Uai$Uas$Ua!]$Ua!^$Ua!`$Ua!f$Ua#S$Ua#T$Ua#U$Ua#V$Ua#W$Ua#X$Ua#Y$Ua#Z$Ua#]$Ua#_$Ua#a$Ua#b$Ua&}$Ua']$Ua!_$Uaz$Ua!P$Ua'_$Ua$x$Ua!X$Ua~P#5nO#P$WaP$WaY$Wa^$Wai$Was$Wa!]$Wa!^$Wa!`$Wa!f$Wa#S$Wa#T$Wa#U$Wa#V$Wa#W$Wa#X$Wa#Y$Wa#Z$Wa#]$Wa#_$Wa#a$Wa#b$Wa&}$Wa']$Wa!_$Waz$Wa!P$Wa'_$Wa$x$Wa!X$Wa~P#6aO#P$faP$faY$fa^$fai$fas$fa}$fa!]$fa!^$fa!`$fa!f$fa#S$fa#T$fa#U$fa#V$fa#W$fa#X$fa#Y$fa#Z$fa#]$fa#_$fa#a$fa#b$fa&}$fa']$fa!_$faz$fa!P$fa!u$fa'_$fa$x$fa!X$fa~P!#QO^!wq}!wq&}!wqz!wq!_!wq'_!wq!P!wq$x!wq!X!wq~P!(tO}&aX'W&aX~PIxO},PO'W'ga~O|0`O}&bX!_&bX~P)uO},SO!_'ha~O},SO!_'ha~P!(tO#e!ba!O!ba~PBzO#e!Ya}!Ya!O!Ya~P#'yO!P0sO#p]O#w0tO~O!O0xO~O'_0yO~P!#QO^$Qq}$Qq&}$Qqz$Qq!_$Qq'_$Qq!P$Qq$x$Qq!X$Qq~P!(tOz0zO~O],kOj,kO~Or'{Ou'|O'q(QO'i$pi'p$pi}$pi!u$pi~O'W$pi#e$pi~P$&YOr'{Ou'|O'i$ri'p$ri'q$ri}$ri!u$ri~O'W$ri#e$ri~P$&{O#e0{O~P!#QO|0}O'S$]O}&jX!_&jX~O},sO!_'va~O},sO!X!tO!_'va~O},sO!X!tO'i&hO!_'va~O'W$_i}$_i#e$_i!u$_i~P!#QO|1UO'S([Oz&lX}&lX~P!#oO},zOz'wa~O},zOz'wa~P!#QO!X!tO~O!X!tO#Y1`O~Oi1dO!X!tO'i&hO~O}'Zi'W'Zi~P!#QO!u1gO}'Zi'W'Zi~P!#QO!_1jO~O^$Rq}$Rq&}$Rqz$Rq!_$Rq'_$Rq!P$Rq$x$Rq!X$Rq~P!(tO}1nO!P'xX~P!#QO!P&]O$x1qO~O!P&]O$x1qO~P!#QO!P$]X$mZX^$]X&}$]X~P! wO$m1uOrfXufX!PfX'ifX'pfX'qfX^fX&}fX~O$m1uO~O'S)aO}&uX!O&uX~O}-|O!O(Oa~O[2OO~O]2RO~OR2TO!P&]O!k2SO$x1qO~O^$XO&}$XO~P!#QO!P#vO~P!#QO}2YO!u2[O!O'{X~O!O2]O~Ou(eO!S2fO!T2_O!U2_O!n2eO!o2dO!p2dO!r2cO'T$_O'`(aO~O!O2bO~P$/ROR2mO!P.gO!k2lO$x2kO~OR2mO!P.gO!k2lO$x2kO'X$`O~O'S(sO}&tX!O&tX~O}.sO!O'|a~O'`2vO~O]2xO~O[2zO~O!_2}O~P)uO^3PO~O^3PO~P)uO#Y3RO%j3SO~PEdO_/ZO!O3WO%x/YO~P`O!X3YO~O%}3ZOP%zqQ%zqW%zq]%zq^%zqa%zqb%zqg%zqi%zqj%zqk%zqn%zqp%zqu%zqw%zqx%zqy%zq!P%zq!Z%zq!`%zq!c%zq!d%zq!e%zq!f%zq!g%zq!j%zq#[%zq#l%zq#p%zq$w%zq$y%zq${%zq$|%zq%P%zq%R%zq%U%zq%V%zq%X%zq%f%zq%l%zq%n%zq%p%zq%r%zq%u%zq%{%zq&P%zq&R%zq&T%zq&V%zq&X%zq&x%zq'S%zq']%zq'u%zq!O%zq%s%zq_%zq%x%zq~O}!|i!O!|i~P#'yO!u3]O}!|i!O!|i~O}!Ri!O!Ri~P#'yO^$XO!u3dO&}$XO~O^$XO!X!tO!u3dO&}$XO~O^$XO!X!tO!`$UO!f3hO!u3dO&}$XO'X$`O'i&hO~O!T3iO!U3iO'T$_O'`(aO~O!S3lO!T3iO!U3iO!r3mO'T$_O'`(aO~O^$XO!X!tO!f3hO!u3dO&}$XO'i&hO~O}'kq!_'kq^'kq&}'kq~P!(tO}&mO!_'jq~O#P$piP$piY$pi^$pii$pis$pi!]$pi!^$pi!`$pi!f$pi#S$pi#T$pi#U$pi#V$pi#W$pi#X$pi#Y$pi#Z$pi#]$pi#_$pi#a$pi#b$pi&}$pi']$pi!_$piz$pi!P$pi'_$pi$x$pi!X$pi~P$&YO#P$riP$riY$ri^$rii$ris$ri!]$ri!^$ri!`$ri!f$ri#S$ri#T$ri#U$ri#V$ri#W$ri#X$ri#Y$ri#Z$ri#]$ri#_$ri#a$ri#b$ri&}$ri']$ri!_$riz$ri!P$ri'_$ri$x$ri!X$ri~P$&{O#P$_iP$_iY$_i^$_ii$_is$_i}$_i!]$_i!^$_i!`$_i!f$_i#S$_i#T$_i#U$_i#V$_i#W$_i#X$_i#Y$_i#Z$_i#]$_i#_$_i#a$_i#b$_i&}$_i']$_i!_$_iz$_i!P$_i!u$_i'_$_i$x$_i!X$_i~P!#QO}&aa'W&aa~P!#QO}&ba!_&ba~P!(tO},SO!_'hi~O#e!wi}!wi!O!wi~P#'yOP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO']QOY#Rii#Ri!]#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'p#Ri'q#Ri}#Ri!O#Ri~O#S#Ri~P$@xO#S8oO~P$@xOP#ZOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO']QOY#Ri!]#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'p#Ri'q#Ri}#Ri!O#Ri~Oi#Ri~P$CQOi8qO~P$CQOP#ZOi8qOr!xOs!xOu!yO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO']QO#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'p#Ri'q#Ri}#Ri!O#Ri~OY#Ri!]#Ri#X#Ri#Y#Ri#Z#Ri~P$EYOY8|O!]8sO#X8sO#Y8sO#Z8sO~P$EYOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO']QO#_#Ri#a#Ri#b#Ri#e#Ri'i#Ri'q#Ri}#Ri!O#Ri~O'p#Ri~P$GnO'p!zO~P$GnOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO#_8vO']QO'p!zO#a#Ri#b#Ri#e#Ri'i#Ri}#Ri!O#Ri~O'q#Ri~P$IvO'q!{O~P$IvOP#ZOY8|Oi8qOr!xOs!xOu!yO!]8sO!^!vO!`!wO!f#ZO#S8oO#T8pO#U8pO#V8pO#W8rO#X8sO#Y8sO#Z8sO#]8tO#_8vO#a8xO']QO'p!zO'q!{O~O#b#Ri#e#Ri'i#Ri}#Ri!O#Ri~P$LOO^#cy}#cy&}#cyz#cy!_#cy'_#cy!P#cy$x#cy!X#cy~P!(tOP#RiY#Rii#Ris#Ri!]#Ri!^#Ri!`#Ri!f#Ri#S#Ri#T#Ri#U#Ri#V#Ri#W#Ri#X#Ri#Y#Ri#Z#Ri#]#Ri#_#Ri#a#Ri#b#Ri#e#Ri']#Ri}#Ri!O#Ri~P!#QO!^!vOP'[XY'[Xi'[Xr'[Xs'[Xu'[X!]'[X!`'[X!f'[X#S'[X#T'[X#U'[X#V'[X#W'[X#X'[X#Y'[X#Z'[X#]'[X#_'[X#a'[X#b'[X#e'[X']'[X'i'[X'p'[X'q'[X}'[X!O'[X~O#e#fi}#fi!O#fi~P#'yO!O3}O~O}&ia!O&ia~P#'yO!X!tO'i&hO}&ja!_&ja~O},sO!_'vi~O},sO!X!tO!_'vi~Oz&la}&la~P!#QO!X4UO~O},zOz'wi~P!#QO},zOz'wi~Oz4[O~O!X!tO#Y4bO~Oi4cO!X!tO'i&hO~Oz4eO~O'W$aq}$aq#e$aq!u$aq~P!#QO^$Ry}$Ry&}$Ryz$Ry!_$Ry'_$Ry!P$Ry$x$Ry!X$Ry~P!(tO}1nO!P'xa~O!P&]O$x4jO~O!P&]O$x4jO~P!#QO^!wy}!wy&}!wyz!wy!_!wy'_!wy!P!wy$x!wy!X!wy~P!(tOY4mO~O}-|O!O(Oi~O]4oO~O[4pO~O'`&|O}&qX!O&qX~O}2YO!O'{a~O!O4}O~P$/RO!S5QO!T5PO!U5PO!r/zO'T$_O'`(aO~O!o5RO!p5RO~P%*]O!T5PO!U5PO'T$_O'`(aO~O!P.gO~O!P.gO$x5TO~O!P.gO$x5TO~P!#QOR5YO!P.gO!k5XO$x5TO~OY5_O}&ta!O&ta~O}.sO!O'|i~O]5bO~O!_5cO~O!_5dO~O!_5eO~O!_5eO~P)uO^5gO~O!X5jO~O!_5lO~O}'ni!O'ni~P#'yO^$XO&}$XO~P!(tO^$XO!u5qO&}$XO~O^$XO!X!tO!u5qO&}$XO~O^$XO!X!tO!f5vO!u5qO&}$XO'i&hO~O!`$UO'X$`O~P%.`O!T5wO!U5wO'T$_O'`(aO~O}'ky!_'ky^'ky&}'ky~P!(tO#P$aqP$aqY$aq^$aqi$aqs$aq}$aq!]$aq!^$aq!`$aq!f$aq#S$aq#T$aq#U$aq#V$aq#W$aq#X$aq#Y$aq#Z$aq#]$aq#_$aq#a$aq#b$aq&}$aq']$aq!_$aqz$aq!P$aq!u$aq'_$aq$x$aq!X$aq~P!#QO}&bi!_&bi~P!(tO#e!wq}!wq!O!wq~P#'yOr-cOs-cOu-dOPoaYoaioa!]oa!^oa!`oa!foa#Soa#Toa#Uoa#Voa#Woa#Xoa#Yoa#Zoa#]oa#_oa#aoa#boa#eoa']oa'ioa'poa'qoa}oa!Ooa~Or'{Ou'|OP$UaY$Uai$Uas$Ua!]$Ua!^$Ua!`$Ua!f$Ua#S$Ua#T$Ua#U$Ua#V$Ua#W$Ua#X$Ua#Y$Ua#Z$Ua#]$Ua#_$Ua#a$Ua#b$Ua#e$Ua']$Ua'i$Ua'p$Ua'q$Ua}$Ua!O$Ua~Or'{Ou'|OP$WaY$Wai$Was$Wa!]$Wa!^$Wa!`$Wa!f$Wa#S$Wa#T$Wa#U$Wa#V$Wa#W$Wa#X$Wa#Y$Wa#Z$Wa#]$Wa#_$Wa#a$Wa#b$Wa#e$Wa']$Wa'i$Wa'p$Wa'q$Wa}$Wa!O$Wa~OP$faY$fai$fas$fa!]$fa!^$fa!`$fa!f$fa#S$fa#T$fa#U$fa#V$fa#W$fa#X$fa#Y$fa#Z$fa#]$fa#_$fa#a$fa#b$fa#e$fa']$fa}$fa!O$fa~P!#QO#e$Qq}$Qq!O$Qq~P#'yO#e$Rq}$Rq!O$Rq~P#'yO!O6RO~O'W$ty}$ty#e$ty!u$ty~P!#QO!X!tO}&ji!_&ji~O!X!tO'i&hO}&ji!_&ji~O},sO!_'vq~Oz&li}&li~P!#QO},zOz'wq~Oz6YO~P!#QOz6YO~O}'Zy'W'Zy~P!#QO}&oa!P&oa~P!#QO!P$lq^$lq&}$lq~P!#QO}-|O!O(Oq~O]6cO~O!P&]O$x6dO~O!P&]O$x6dO~P!#QO!u6eO}&qa!O&qa~O}2YO!O'{i~P#'yO!T6kO!U6kO'T$_O'`(aO~O!S6mO!T6kO!U6kO!r3mO'T$_O'`(aO~O!P.gO$x6pO~O!P.gO$x6pO~P!#QO'`6vO~O}.sO!O'|q~O!_6yO~O!_6yO~P)uO!_6{O~O!_6|O~O}!|y!O!|y~P#'yO^$XO!u7RO&}$XO~O^$XO!X!tO!u7RO&}$XO~O^$XO!X!tO!f7VO!u7RO&}$XO'i&hO~O#P$tyP$tyY$ty^$tyi$tys$ty}$ty!]$ty!^$ty!`$ty!f$ty#S$ty#T$ty#U$ty#V$ty#W$ty#X$ty#Y$ty#Z$ty#]$ty#_$ty#a$ty#b$ty&}$ty']$ty!_$tyz$ty!P$ty!u$ty'_$ty$x$ty!X$ty~P!#QO#e#cy}#cy!O#cy~P#'yOP$_iY$_ii$_is$_i!]$_i!^$_i!`$_i!f$_i#S$_i#T$_i#U$_i#V$_i#W$_i#X$_i#Y$_i#Z$_i#]$_i#_$_i#a$_i#b$_i#e$_i']$_i}$_i!O$_i~P!#QOr'{Ou'|O'q(QOP$piY$pii$pis$pi!]$pi!^$pi!`$pi!f$pi#S$pi#T$pi#U$pi#V$pi#W$pi#X$pi#Y$pi#Z$pi#]$pi#_$pi#a$pi#b$pi#e$pi']$pi'i$pi'p$pi}$pi!O$pi~Or'{Ou'|OP$riY$rii$ris$ri!]$ri!^$ri!`$ri!f$ri#S$ri#T$ri#U$ri#V$ri#W$ri#X$ri#Y$ri#Z$ri#]$ri#_$ri#a$ri#b$ri#e$ri']$ri'i$ri'p$ri'q$ri}$ri!O$ri~O#e$Ry}$Ry!O$Ry~P#'yO#e!wy}!wy!O!wy~P#'yO!X!tO}&jq!_&jq~O},sO!_'vy~Oz&lq}&lq~P!#QOz7]O~P!#QO}2YO!O'{q~O!T7hO!U7hO'T$_O'`(aO~O!P.gO$x7kO~O!P.gO$x7kO~P!#QO!_7nO~O%}7oOP%z!ZQ%z!ZW%z!Z]%z!Z^%z!Za%z!Zb%z!Zg%z!Zi%z!Zj%z!Zk%z!Zn%z!Zp%z!Zu%z!Zw%z!Zx%z!Zy%z!Z!P%z!Z!Z%z!Z!`%z!Z!c%z!Z!d%z!Z!e%z!Z!f%z!Z!g%z!Z!j%z!Z#[%z!Z#l%z!Z#p%z!Z$w%z!Z$y%z!Z${%z!Z$|%z!Z%P%z!Z%R%z!Z%U%z!Z%V%z!Z%X%z!Z%f%z!Z%l%z!Z%n%z!Z%p%z!Z%r%z!Z%u%z!Z%{%z!Z&P%z!Z&R%z!Z&T%z!Z&V%z!Z&X%z!Z&x%z!Z'S%z!Z']%z!Z'u%z!Z!O%z!Z%s%z!Z_%z!Z%x%z!Z~O^$XO!u7sO&}$XO~O^$XO!X!tO!u7sO&}$XO~OP$aqY$aqi$aqs$aq!]$aq!^$aq!`$aq!f$aq#S$aq#T$aq#U$aq#V$aq#W$aq#X$aq#Y$aq#Z$aq#]$aq#_$aq#a$aq#b$aq#e$aq']$aq}$aq!O$aq~P!#QO}&qq!O&qq~P#'yO^$XO!u8XO&}$XO~OP$tyY$tyi$tys$ty!]$ty!^$ty!`$ty!f$ty#S$ty#T$ty#U$ty#V$ty#W$ty#X$ty#Y$ty#Z$ty#]$ty#_$ty#a$ty#b$ty#e$ty']$ty}$ty!O$ty~P!#QO'_'aX~P.^O'_ZXzZX!_ZX%jZX!PZX$xZX!XZX~P$wO!XcX!_ZX!_cX'icX~P;OOP8iOQ8iO]bOa:OOb!gOgbOi8iOjbOkbOn8iOp8iOuROwbOxbOybO!PSO!Z8kO!`UO!c8iO!d8iO!e8iO!f8iO!g8iO!j!fO#l!iO#p]O'S'[O']QO'u9|O~O}8zO!O$Ta~O]#nOg#{Oi#oOj#nOk#nOn#|Op9POu#uO!P#vO!Z:RO!`#sO#O9VO#l$QO$V9RO$X9TO$[$RO'S&tO']#pO~O#['cO~P&(sO!OZX!OcX~P;OO#P8nO~O!X!tO#P8nO~O!u8}O~O!u9WO}'nX!O'nX~O!u8}O}'lX!O'lX~O#P9XO~O'W9ZO~P!#QO#P9`O~O#P9aO~O!X!tO#P9bO~O!X!tO#P9XO~O#e9cO~P#'yO#P9dO~O#P9eO~O#P9fO~O#P9gO~O#e9hO~P!#QO#e9iO~P!#QO#p~!^!n!p!}#O'u$V$X$[$m$w$x$y%P%R%U%V%X%Z~TS#p'u#Ty'P'Q#r'P'S'`~",goto:"#=a(SPPPPPPP(TP(eP*QPPPP-aPP-v2z4m5QP5QPPP5Q5QP5QP6nPP6sP7[PPPP;kPPPP;k>ZPPP>a@dP;kPBwPPPPDo;kPPPPPFh;kPPIgJdPPPJhPJpKqP;k;kNx!#q!(a!(a!+nPPP!+u;kPPPPPPPPPP!.iP!/zPP;k!1XP;kP;k;k;k;kP;k!3lPP!6cP!9U!9^!9b!9bP!6`P!9f!9fP!O#BZ$IS0h$IS$I_!>O$I_$I|0h$I|$I}!@g$I}$JO!@g$JO$JT0h$JT$JU!>O$JU$KV0h$KV$KW!>O$KW&FU0h&FU&FV!>O&FV?HT0h?HT?HU!>O?HU~0hW%YR#|WO!^%T!_#o%T#p~%T,T%jg#|W'P+{OX%TXY%cYZ%TZ[%c[p%Tpq%cq!^%T!_#o%T#p$f%T$f$g%c$g#BY%T#BY#BZ%c#BZ$IS%T$IS$I_%c$I_$JT%T$JT$JU%c$JU$KV%T$KV$KW%c$KW&FU%T&FU&FV%c&FV?HT%T?HT?HU%c?HU~%T,T'YR#|W'Q+{O!^%T!_#o%T#p~%T$T'jS#|W!f#{O!^%T!_!`'v!`#o%T#p~%T$O'}S#]#v#|WO!^%T!_!`(Z!`#o%T#p~%T$O(bR#]#v#|WO!^%T!_#o%T#p~%T'u(rZ#|W]!ROY(kYZ)eZr(krs*rs!^(k!^!_+U!_#O(k#O#P-b#P#o(k#o#p+U#p~(k&r)jV#|WOr)ers*Ps!^)e!^!_*a!_#o)e#o#p*a#p~)e&r*WR#w&j#|WO!^%T!_#o%T#p~%T&j*dROr*ars*ms~*a&j*rO#w&j'u*{R#w&j#|W]!RO!^%T!_#o%T#p~%T'm+ZV]!ROY+UYZ*aZr+Urs+ps#O+U#O#P+w#P~+U'm+wO#w&j]!R'm+zROr+Urs,Ts~+U'm,[U#w&j]!ROY,nZr,nrs-Vs#O,n#O#P-[#P~,n!R,sU]!ROY,nZr,nrs-Vs#O,n#O#P-[#P~,n!R-[O]!R!R-_PO~,n'u-gV#|WOr(krs-|s!^(k!^!_+U!_#o(k#o#p+U#p~(k'u.VZ#w&j#|W]!ROY.xYZ%TZr.xrs/rs!^.x!^!_,n!_#O.x#O#P0S#P#o.x#o#p,n#p~.x!Z/PZ#|W]!ROY.xYZ%TZr.xrs/rs!^.x!^!_,n!_#O.x#O#P0S#P#o.x#o#p,n#p~.x!Z/yR#|W]!RO!^%T!_#o%T#p~%T!Z0XT#|WO!^.x!^!_,n!_#o.x#o#p,n#p~.x&i0s_#|W#rS'S%k'`pOt%Ttu0hu}%T}!O1r!O!Q%T!Q![0h![!^%T!_!c%T!c!}0h!}#R%T#R#S0h#S#T%T#T#o0h#p$g%T$g~0h[1y_#|W#rSOt%Ttu1ru}%T}!O1r!O!Q%T!Q![1r![!^%T!_!c%T!c!}1r!}#R%T#R#S1r#S#T%T#T#o1r#p$g%T$g~1r$O3PS#U#v#|WO!^%T!_!`3]!`#o%T#p~%T$O3dR#|W#g#vO!^%T!_#o%T#p~%T%r3tU'q%j#|WOv%Tvw4Ww!^%T!_!`3]!`#o%T#p~%T$O4_S#|W#a#vO!^%T!_!`3]!`#o%T#p~%T'u4rZ#|W]!ROY4kYZ5eZw4kwx*rx!^4k!^!_6]!_#O4k#O#P8]#P#o4k#o#p6]#p~4k&r5jV#|WOw5ewx*Px!^5e!^!_6P!_#o5e#o#p6P#p~5e&j6SROw6Pwx*mx~6P'm6bV]!ROY6]YZ6PZw6]wx+px#O6]#O#P6w#P~6]'m6zROw6]wx7Tx~6]'m7[U#w&j]!ROY7nZw7nwx-Vx#O7n#O#P8V#P~7n!R7sU]!ROY7nZw7nwx-Vx#O7n#O#P8V#P~7n!R8YPO~7n'u8bV#|WOw4kwx8wx!^4k!^!_6]!_#o4k#o#p6]#p~4k'u9QZ#w&j#|W]!ROY9sYZ%TZw9swx/rx!^9s!^!_7n!_#O9s#O#P:m#P#o9s#o#p7n#p~9s!Z9zZ#|W]!ROY9sYZ%TZw9swx/rx!^9s!^!_7n!_#O9s#O#P:m#P#o9s#o#p7n#p~9s!Z:rT#|WO!^9s!^!_7n!_#o9s#o#p7n#p~9s%V;YR!`$}#|WO!^%T!_#o%T#p~%TZ;jR!_R#|WO!^%T!_#o%T#p~%T%R;|U'T!R#V#v#|WOz%Tz{<`{!^%T!_!`3]!`#o%T#p~%T$OU!P!Q%T!Q![>z![!^%T!_#o%T#p~%Ty>ZT#|WO!O%T!O!P>j!P!^%T!_#o%T#p~%Ty>qR|q#|WO!^%T!_#o%T#p~%Ty?RZ#|WjqO!Q%T!Q![>z![!^%T!_!g%T!g!h?t!h#R%T#R#S>z#S#X%T#X#Y?t#Y#o%T#p~%Ty?yZ#|WO{%T{|@l|}%T}!O@l!O!Q%T!Q![AW![!^%T!_#R%T#R#SAW#S#o%T#p~%Ty@qV#|WO!Q%T!Q![AW![!^%T!_#R%T#R#SAW#S#o%T#p~%TyA_V#|WjqO!Q%T!Q![AW![!^%T!_#R%T#R#SAW#S#o%T#p~%T,TA{`#|W#T#vOYB}YZ%TZzB}z{Ht{!PB}!P!Q!+m!Q!^B}!^!_EQ!_!`!,f!`!a!-e!a!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}XCU[#|WyPOYB}YZ%TZ!PB}!P!QCz!Q!^B}!^!_EQ!_!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}XDR_#|WyPO!^%T!_#Z%T#Z#[Cz#[#]%T#]#^Cz#^#a%T#a#bCz#b#g%T#g#hCz#h#i%T#i#jCz#j#m%T#m#nCz#n#o%T#p~%TPEVVyPOYEQZ!PEQ!P!QEl!Q!}EQ!}#OFT#O#PFp#P~EQPEqUyP#Z#[El#]#^El#a#bEl#g#hEl#i#jEl#m#nElPFWTOYFTZ#OFT#O#PFg#P#QEQ#Q~FTPFjQOYFTZ~FTPFsQOYEQZ~EQXGOY#|WOYFyYZ%TZ!^Fy!^!_FT!_#OFy#O#PGn#P#QB}#Q#oFy#o#pFT#p~FyXGsV#|WOYFyYZ%TZ!^Fy!^!_FT!_#oFy#o#pFT#p~FyXH_V#|WOYB}YZ%TZ!^B}!^!_EQ!_#oB}#o#pEQ#p~B},TH{^#|WyPOYHtYZIwZzHtz{LY{!PHt!P!Q!*Z!Q!^Ht!^!_Ne!_!}Ht!}#O!&U#O#P!)i#P#oHt#o#pNe#p~Ht,TI|V#|WOzIwz{Jc{!^Iw!^!_Ke!_#oIw#o#pKe#p~Iw,TJhX#|WOzIwz{Jc{!PIw!P!QKT!Q!^Iw!^!_Ke!_#oIw#o#pKe#p~Iw,TK[R#|WT+{O!^%T!_#o%T#p~%T+{KhROzKez{Kq{~Ke+{KtTOzKez{Kq{!PKe!P!QLT!Q~Ke+{LYOT+{,TLa^#|WyPOYHtYZIwZzHtz{LY{!PHt!P!QM]!Q!^Ht!^!_Ne!_!}Ht!}#O!&U#O#P!)i#P#oHt#o#pNe#p~Ht,TMf_#|WT+{yPO!^%T!_#Z%T#Z#[Cz#[#]%T#]#^Cz#^#a%T#a#bCz#b#g%T#g#hCz#h#i%T#i#jCz#j#m%T#m#nCz#n#o%T#p~%T+{NjYyPOYNeYZKeZzNez{! Y{!PNe!P!Q!%Q!Q!}Ne!}#O!!h#O#P!$n#P~Ne+{! _YyPOYNeYZKeZzNez{! Y{!PNe!P!Q! }!Q!}Ne!}#O!!h#O#P!$n#P~Ne+{!!UUT+{yP#Z#[El#]#^El#a#bEl#g#hEl#i#jEl#m#nEl+{!!kWOY!!hYZKeZz!!hz{!#T{#O!!h#O#P!$[#P#QNe#Q~!!h+{!#WYOY!!hYZKeZz!!hz{!#T{!P!!h!P!Q!#v!Q#O!!h#O#P!$[#P#QNe#Q~!!h+{!#{TT+{OYFTZ#OFT#O#PFg#P#QEQ#Q~FT+{!$_TOY!!hYZKeZz!!hz{!#T{~!!h+{!$qTOYNeYZKeZzNez{! Y{~Ne+{!%V_yPOzKez{Kq{#ZKe#Z#[!%Q#[#]Ke#]#^!%Q#^#aKe#a#b!%Q#b#gKe#g#h!%Q#h#iKe#i#j!%Q#j#mKe#m#n!%Q#n~Ke,T!&Z[#|WOY!&UYZIwZz!&Uz{!'P{!^!&U!^!_!!h!_#O!&U#O#P!(w#P#QHt#Q#o!&U#o#p!!h#p~!&U,T!'U^#|WOY!&UYZIwZz!&Uz{!'P{!P!&U!P!Q!(Q!Q!^!&U!^!_!!h!_#O!&U#O#P!(w#P#QHt#Q#o!&U#o#p!!h#p~!&U,T!(XY#|WT+{OYFyYZ%TZ!^Fy!^!_FT!_#OFy#O#PGn#P#QB}#Q#oFy#o#pFT#p~Fy,T!(|X#|WOY!&UYZIwZz!&Uz{!'P{!^!&U!^!_!!h!_#o!&U#o#p!!h#p~!&U,T!)nX#|WOYHtYZIwZzHtz{LY{!^Ht!^!_Ne!_#oHt#o#pNe#p~Ht,T!*bc#|WyPOzIwz{Jc{!^Iw!^!_Ke!_#ZIw#Z#[!*Z#[#]Iw#]#^!*Z#^#aIw#a#b!*Z#b#gIw#g#h!*Z#h#iIw#i#j!*Z#j#mIw#m#n!*Z#n#oIw#o#pKe#p~Iw,T!+tV#|WS+{OY!+mYZ%TZ!^!+m!^!_!,Z!_#o!+m#o#p!,Z#p~!+m+{!,`QS+{OY!,ZZ~!,Z$P!,o[#|W#g#vyPOYB}YZ%TZ!PB}!P!QCz!Q!^B}!^!_EQ!_!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}]!-n[#oS#|WyPOYB}YZ%TZ!PB}!P!QCz!Q!^B}!^!_EQ!_!}B}!}#OFy#O#PHY#P#oB}#o#pEQ#p~B}y!.kd#|WjqO!O%T!O!P>z!P!Q%T!Q![!/y![!^%T!_!g%T!g!h?t!h#R%T#R#S!/y#S#U%T#U#V!1a#V#X%T#X#Y?t#Y#b%T#b#c!1P#c#d!2o#d#l%T#l#m!3w#m#o%T#p~%Ty!0Q_#|WjqO!O%T!O!P>z!P!Q%T!Q![!/y![!^%T!_!g%T!g!h?t!h#R%T#R#S!/y#S#X%T#X#Y?t#Y#b%T#b#c!1P#c#o%T#p~%Ty!1WR#|WjqO!^%T!_#o%T#p~%Ty!1fW#|WO!Q%T!Q!R!2O!R!S!2O!S!^%T!_#R%T#R#S!2O#S#o%T#p~%Ty!2VW#|WjqO!Q%T!Q!R!2O!R!S!2O!S!^%T!_#R%T#R#S!2O#S#o%T#p~%Ty!2tV#|WO!Q%T!Q!Y!3Z!Y!^%T!_#R%T#R#S!3Z#S#o%T#p~%Ty!3bV#|WjqO!Q%T!Q!Y!3Z!Y!^%T!_#R%T#R#S!3Z#S#o%T#p~%Ty!3|Z#|WO!Q%T!Q![!4o![!^%T!_!c%T!c!i!4o!i#R%T#R#S!4o#S#T%T#T#Z!4o#Z#o%T#p~%Ty!4vZ#|WjqO!Q%T!Q![!4o![!^%T!_!c%T!c!i!4o!i#R%T#R#S!4o#S#T%T#T#Z!4o#Z#o%T#p~%T%w!5rR!XV#|W#e%hO!^%T!_#o%T#p~%T!P!6SR^w#|WO!^%T!_#o%T#p~%T+c!6hR'Xd!]%Y#p&s'uP!P!Q!6q!^!_!6v!_!`!7TW!6vO$OW#v!6{P#W#v!_!`!7O#v!7TO#g#v#v!7YO#X#v%w!7aT!u%o#|WO!^%T!_!`'v!`!a!7p!a#o%T#p~%T$P!7wR#P#w#|WO!^%T!_#o%T#p~%T%w!8]T'W!s#X#v#yS#|WO!^%T!_!`!8l!`!a!8|!a#o%T#p~%T$O!8sR#X#v#|WO!^%T!_#o%T#p~%T$O!9TT#W#v#|WO!^%T!_!`3]!`!a!9d!a#o%T#p~%T$O!9kS#W#v#|WO!^%T!_!`3]!`#o%T#p~%T%w!:OV'i%o#|WO!O%T!O!P!:e!P!^%T!_!a%T!a!b!:u!b#o%T#p~%T$`!:lRs$W#|WO!^%T!_#o%T#p~%T$O!:|S#|W#b#vO!^%T!_!`3]!`#o%T#p~%T&e!;aRu&]#|WO!^%T!_#o%T#p~%TZ!;qRzR#|WO!^%T!_#o%T#p~%T$O!]r#|W'P+{#rS'S%k'`pOX%TXY%cYZ%TZ[%c[p%Tpq%cqt%Ttu0hu}%T}!O1r!O!Q%T!Q![0h![!^%T!_!c%T!c!}0h!}#R%T#R#S0h#S#T%T#T#o0h#p$f%T$f$g%c$g#BY0h#BY#BZ!>O#BZ$IS0h$IS$I_!>O$I_$JT0h$JT$JU!>O$JU$KV0h$KV$KW!>O$KW&FU0h&FU&FV!>O&FV?HT0h?HT?HU!>O?HU~0h,T!@t_#|W'Q+{#rS'S%k'`pOt%Ttu0hu}%T}!O1r!O!Q%T!Q![0h![!^%T!_!c%T!c!}0h!}#R%T#R#S0h#S#T%T#T#o0h#p$g%T$g~0h",tokenizers:[Pu,vu,Su,0,1,2,3,4,5,6,7,8,yu],topRules:{Script:[0,6]},dialects:{jsx:11129,ts:11131},dynamicPrecedences:{141:1,168:1},specialized:[{term:280,get:(e,t)=>function(e,t){return"extends"==e&&t.dialectEnabled(1)?3:-1}(e,t)<<1|1},{term:280,get:e=>_u[e]||-1},{term:292,get:e=>Xu[e]||-1},{term:59,get:e=>Tu[e]||-1}],tokenPrec:11151});function Wu(e){let t=Object.keys(e).join(""),n=/\w/.test(t);return n&&(t=t.replace(/\w/g,"")),`[${n?"\\w":""}${t.replace(/[^\w\s]/g,"\\$&")}]`}function qu(e){let t=e.map((e=>"string"==typeof e?{label:e}:e)),[n,r]=t.every((e=>/^\w+$/.test(e.label)))?[/\w*$/,/\w+$/]:function(e){let t=Object.create(null),n=Object.create(null);for(let{label:r}of e){t[r[0]]=!0;for(let e=1;e{let i=e.matchBefore(r);return i||e.explicit?{from:i?i.from:e.pos,options:t,span:n}:null}}function zu(e,t){return n=>{for(let t=qa(n.state).resolveInner(n.pos,-1);t;t=t.parent)if(e.indexOf(t.name)>-1)return null;return t(n)}}const Yu=Qi.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",maxHeight:"10em",listStyle:"none",margin:0,padding:0,"& > li":{cursor:"pointer",padding:"1px 1em 1px 3px",lineHeight:1.2},"& > li[aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"}}},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"300px"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class Zu{constructor(e,t,n,r){this.field=e,this.line=t,this.from=n,this.to=r}}class Uu{constructor(e,t,n){this.field=e,this.from=t,this.to=n}map(e){return new Uu(this.field,e.mapPos(this.from,-1),e.mapPos(this.to,1))}}class Eu{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let n=[],r=[t],i=e.doc.lineAt(t),a=/^\s*/.exec(i.text)[0];for(let i of this.lines){if(n.length){let n=a,o=/^\t*/.exec(i)[0].length;for(let t=0;tnew Uu(e.field,r[e.line]+e.from,r[e.line]+e.to)));return{text:n,ranges:o}}static parse(e){let t,n=[],r=[],i=[];for(let a of e.split(/\r\n?|\n/)){for(;t=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(a);){let e=t[1]?+t[1]:null,o=t[2]||t[3],s=-1;for(let t=0;t=s&&e.field++}i.push(new Zu(s,r.length,t.index,t.index+o.length)),a=a.slice(0,t.index)+o+a.slice(t.index+t[0].length)}r.push(a)}return new Eu(r,i)}}let Iu=tn.widget({widget:new class extends Jt{toDOM(){let e=document.createElement("span");return e.className="cm-snippetFieldPosition",e}ignoreEvent(){return!1}}}),Vu=tn.mark({class:"cm-snippetField"});class Cu{constructor(e,t){this.ranges=e,this.active=t,this.deco=tn.set(e.map((e=>(e.from==e.to?Iu:Vu).range(e.from,e.to))))}map(e){return new Cu(this.ranges.map((t=>t.map(e))),this.active)}selectionInsideField(e){return e.ranges.every((e=>this.ranges.some((t=>t.field==this.active&&t.from<=e.from&&t.to>=e.to))))}}const Au=ue.define({map:(e,t)=>e&&e.map(t)}),Gu=ue.define(),ju=G.define({create:()=>null,update(e,t){for(let n of t.effects){if(n.is(Au))return n.value;if(n.is(Gu)&&e)return new Cu(e.ranges,n.value)}return e&&t.docChanged&&(e=e.map(t.changes)),e&&t.selection&&!e.selectionInsideField(t.selection)&&(e=null),e},provide:e=>Qi.decorations.from(e,(e=>e?e.deco:tn.none))});function Lu(e,t){return q.create(e.filter((e=>e.field==t)).map((e=>q.range(e.from,e.to))))}function Nu(e){let t=Eu.parse(e);return(e,n,r,i)=>{let{text:a,ranges:o}=t.instantiate(e.state,r),s={changes:{from:r,to:i,insert:h.of(a)}};if(o.length&&(s.selection=Lu(o,0)),o.length>1){let t=new Cu(o,0),n=s.effects=[Au.of(t)];void 0===e.state.field(ju,!1)&&n.push(ue.appendConfig.of([ju.init((()=>t)),Bu,Ku,Yu]))}e.dispatch(e.state.update(s))}}function Du(e){return({state:t,dispatch:n})=>{let r=t.field(ju,!1);if(!r||e<0&&0==r.active)return!1;let i=r.active+e,a=e>0&&!r.ranges.some((t=>t.field==i+e));return n(t.update({selection:Lu(r.ranges,i),effects:Au.of(a?null:new Cu(r.ranges,i))})),!0}}const Mu=[{key:"Tab",run:Du(1),shift:Du(-1)},{key:"Escape",run:({state:e,dispatch:t})=>!!e.field(ju,!1)&&(t(e.update({effects:Au.of(null)})),!0)}],Fu=U.define({combine:e=>e.length?e[0]:Mu}),Bu=M.override(_i.compute([Fu],(e=>e.facet(Fu))));function Hu(e,t){return Object.assign(Object.assign({},t),{apply:Nu(e)})}const Ku=Qi.domEventHandlers({mousedown(e,t){let n,r=t.state.field(ju,!1);if(!r||null==(n=t.posAtCoords({x:e.clientX,y:e.clientY})))return!1;let i=r.ranges.find((e=>e.from<=n&&e.to>=n));return!(!i||i.field==r.active)&&(t.dispatch({selection:Lu(r.ranges,i.field),effects:Au.of(r.ranges.some((e=>e.field>i.field))?new Cu(r.ranges,i.field):null)}),!0)}}),Ju=[Hu("function ${name}(${params}) {\n\t${}\n}",{label:"function",detail:"definition",type:"keyword"}),Hu("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n\t${}\n}",{label:"for",detail:"loop",type:"keyword"}),Hu("for (let ${name} of ${collection}) {\n\t${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Hu("try {\n\t${}\n} catch (${error}) {\n\t${}\n}",{label:"try",detail:"block",type:"keyword"}),Hu("class ${name} {\n\tconstructor(${params}) {\n\t\t${}\n\t}\n}",{label:"class",detail:"definition",type:"keyword"}),Hu('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Hu('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],eh=Wa.define({parser:Ru.configure({props:[Ha.add({IfStatement:oo({except:/^\s*({|else\b)/}),TryStatement:oo({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:ao,SwitchBody:e=>{let t=e.textAfter,n=/^\s*\}/.test(t),r=/^\s*(case|default)\b/.test(t);return e.baseIndent+(n?0:r?1:2)*e.unit},Block:ro({closing:"}"}),ArrowFunction:e=>e.baseIndent+e.unit,"TemplateString BlockComment":()=>-1,"Statement Property":oo({except:/^{/}),JSXElement(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},JSXEscape(e){let t=/\s*\}/.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"JSXOpenTag JSXSelfClosingTag":e=>e.column(e.node.from)+e.unit}),so.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression":Oo,BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({"get set async static":Ou.modifier,"for while do if else switch try catch finally return throw break continue default case":Ou.controlKeyword,"in of await yield void typeof delete instanceof":Ou.operatorKeyword,"export import let var const function class extends":Ou.definitionKeyword,"with debugger from as new":Ou.keyword,TemplateString:Ou.special(Ou.string),Super:Ou.atom,BooleanLiteral:Ou.bool,this:Ou.self,null:Ou.null,Star:Ou.modifier,VariableName:Ou.variableName,"CallExpression/VariableName":Ou.function(Ou.variableName),VariableDefinition:Ou.definition(Ou.variableName),Label:Ou.labelName,PropertyName:Ou.propertyName,"CallExpression/MemberExpression/PropertyName":Ou.function(Ou.propertyName),"FunctionDeclaration/VariableDefinition":Ou.function(Ou.definition(Ou.variableName)),"ClassDeclaration/VariableDefinition":Ou.definition(Ou.className),PropertyNameDefinition:Ou.definition(Ou.propertyName),UpdateOp:Ou.updateOperator,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Number:Ou.number,String:Ou.string,ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,RegExp:Ou.regexp,Equals:Ou.definitionOperator,"Arrow : Spread":Ou.punctuation,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,", ;":Ou.separator,TypeName:Ou.typeName,TypeDefinition:Ou.definition(Ou.typeName),"type enum interface implements namespace module declare":Ou.definitionKeyword,"abstract global privacy readonly override":Ou.modifier,"is keyof unique infer":Ou.operatorKeyword,JSXAttributeValue:Ou.attributeValue,JSXText:Ou.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":Ou.angleBracket,"JSXIdentifier JSXNameSpacedName":Ou.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":Ou.attributeName})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),th=eh.configure({dialect:"ts"}),nh=eh.configure({dialect:"jsx"}),rh=eh.configure({dialect:"jsx ts"});function ih(e={}){let t=e.jsx?e.typescript?rh:nh:e.typescript?th:eh;return new Ga(t,eh.data.of({autocomplete:zu(["LineComment","BlockComment","String"],qu(Ju))}))}function ah(e,t,n,r){return n.line(e+r.line).from+t+(1==e?r.col-1:-1)}function oh(e,t,n){let r=ah(e.line,e.column,t,n),i={from:r,to:null!=e.endLine&&1!=e.endColumn?ah(e.endLine,e.endColumn,t,n):r,message:e.message,source:e.ruleId?"jshint:"+e.ruleId:"jshint",severity:1==e.severity?"warning":"error"};if(e.fix){let{range:t,text:a}=e.fix,o=t[0]+n.pos-r,s=t[1]+n.pos-r;i.actions=[{name:"fix",apply(e,t){e.dispatch({changes:{from:t+o,to:t+s,insert:a},scrollIntoView:!0})}}]}return i}var sh=Object.freeze({__proto__:null,esLint:function(e,t){return t||(t={parserOptions:{ecmaVersion:2019,sourceType:"module"},env:{browser:!0,node:!0,es6:!0,es2015:!0,es2017:!0,es2020:!0},rules:{}},e.getRules().forEach(((e,n)=>{e.meta.docs.recommended&&(t.rules[n]=2)}))),n=>{let{state:r}=n,i=[];for(let{from:n,to:a}of eh.findRegions(r)){let o=r.doc.lineAt(n),s={line:o.number-1,col:n-o.from,pos:n};for(let o of e.verify(r.sliceDoc(n,a),t))i.push(oh(o,r.doc,s))}return i}},javascript:ih,javascriptLanguage:eh,jsxLanguage:nh,snippets:Ju,tsxLanguage:rh,typescriptLanguage:th});const Oh=["_blank","_self","_top","_parent"],lh=["ascii","utf-8","utf-16","latin1","latin1"],ch=["get","post","put","delete"],uh=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],hh=["true","false"],dh={},ph={a:{attrs:{href:null,ping:null,type:null,media:null,target:Oh,hreflang:null}},abbr:dh,acronym:dh,address:dh,applet:dh,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:dh,aside:dh,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:dh,base:{attrs:{href:null,target:Oh}},basefont:dh,bdi:dh,bdo:dh,big:dh,blockquote:{attrs:{cite:null}},body:dh,br:dh,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:uh,formmethod:ch,formnovalidate:["novalidate"],formtarget:Oh,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:dh,center:dh,cite:dh,code:dh,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:dh,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:dh,dir:dh,div:dh,dl:dh,dt:dh,em:dh,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:dh,figure:dh,font:dh,footer:dh,form:{attrs:{action:null,name:null,"accept-charset":lh,autocomplete:["on","off"],enctype:uh,method:ch,novalidate:["novalidate"],target:Oh}},frame:dh,frameset:dh,h1:dh,h2:dh,h3:dh,h4:dh,h5:dh,h6:dh,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:dh,hgroup:dh,hr:dh,html:{attrs:{manifest:null}},i:dh,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:uh,formmethod:ch,formnovalidate:["novalidate"],formtarget:Oh,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:dh,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:dh,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:dh,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:lh,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:dh,noframes:dh,noscript:dh,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:dh,param:{attrs:{name:null,value:null}},pre:dh,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:dh,rt:dh,ruby:dh,s:dh,samp:dh,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:lh}},section:dh,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},small:dh,source:{attrs:{src:null,type:null,media:null}},span:dh,strike:dh,strong:dh,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:dh,summary:dh,sup:dh,table:dh,tbody:dh,td:{attrs:{colspan:null,rowspan:null,headers:null}},textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:dh,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:dh,time:{attrs:{datetime:null}},title:dh,tr:dh,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},tt:dh,u:dh,ul:{children:["li","script","template","ul","ol"]},var:dh,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:dh},fh={accesskey:null,class:null,contenteditable:hh,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:hh,autocorrect:hh,autocapitalize:hh,style:null,tabindex:null,title:null,translate:["yes","no"],onclick:null,rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":hh,"aria-autocomplete":["inline","list","both","none"],"aria-busy":hh,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":hh,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":hh,"aria-hidden":hh,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":hh,"aria-multiselectable":hh,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":hh,"aria-relevant":null,"aria-required":hh,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},mh=Object.keys(ph),gh=Object.keys(fh);function Qh(e,t){if(!t)return"";let n=t.firstChild,r=n&&n.getChild("TagName");return r?e.sliceString(r.from,r.to):""}function $h(e,t=!1){for(let n=e.parent;n;n=n.parent)if("Element"==n.name){if(!t)return n;t=!1}return null}function bh(e,t){let n=ph[Qh(e,$h(t,!0))];return(null==n?void 0:n.children)||mh}function xh(e,t){let n=[];for(let r=t;r=$h(r);){let i=Qh(e,r);if(i&&"CloseTag"==r.lastChild.name)break;i&&n.indexOf(i)<0&&("EndTag"==t.name||t.from>=r.firstChild.to)&&n.push(i)}return n}const wh=/^[:\-\.\w\u00b7-\uffff]+$/;function kh(e,t,n,r){let i=/\s*>/.test(e.sliceDoc(r,r+5))?"":">";return{from:n,to:r,options:bh(e.doc,t).map((e=>({label:e,type:"type"}))).concat(xh(e.doc,t).map(((e,t)=>({label:"/"+e,apply:"/"+e+i,type:"type",boost:99-t})))),span:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function yh(e,t,n,r){let i=/\s*>/.test(e.sliceDoc(r,r+5))?"":">";return{from:n,to:r,options:xh(e.doc,t).map(((e,t)=>({label:e,apply:e+i,type:"type",boost:99-t}))),span:wh}}function Ph(e){let{state:t,pos:n}=e,r=qa(t).resolveInner(n),i=r.resolve(n,-1);for(let e,t=n;r==i&&(e=i.childBefore(t));){let n=e.lastChild;if(!n||!n.type.isError||n.from({label:e,type:"property"}))),span:wh}}(t,i,"AttributeName"==i.name?i.from:n,n):"Is"==i.name||"AttributeValue"==i.name||"UnquotedAttributeValue"==i.name?function(e,t,n,r){var i;let a,o=null===(i=t.parent)||void 0===i?void 0:i.getChild("AttributeName"),s=[];if(o){let i=e.sliceDoc(o.from,o.to),O=fh[i];if(!O){let n=$h(t),r=n?ph[Qh(e.doc,n)]:null;O=(null==r?void 0:r.attrs)&&r.attrs[i]}if(O){let t=e.sliceDoc(n,r).toLowerCase(),i='"',o='"';/^['"]/.test(t)?(a='"'==t[0]?/^[^"]*$/:/^[^']*$/,i="",o=e.sliceDoc(r,r+1)==t[0]?"":t[0],t=t.slice(1),n++):a=/^[^\s<>='"]*$/;for(let e of O)s.push({label:e,apply:i+e+o,type:"constant"})}}return{from:n,to:r,options:s,span:a}}(t,i,"Is"==i.name?n:i.from,n):!e.explicit||"Element"!=r.name&&"Text"!=r.name&&"Document"!=r.name?null:function(e,t,n){let r=[],i=0;for(let n of bh(e.doc,t))r.push({label:"<"+n,type:"type"});for(let n of xh(e.doc,t))r.push({label:"",type:"type",boost:99-i++});return{from:n,to:n,options:r,span:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}(t,i,n)}const vh=Wa.define({parser:fc.configure({props:[Ha.add({Element(e){let t=/^(\s*)(<\/)?/.exec(e.textAfter);return e.node.to<=e.pos+t[0].length?e.continue():e.lineIndent(e.node.from)+(t[2]?0:e.unit)},"OpenTag CloseTag SelfClosingTag":e=>e.column(e.node.from)+e.unit,Document(e){if(e.pos+/\s*/.exec(e.textAfter)[0].length!e.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type),parser:eh.parser},{tag:"style",attrs:e=>(!e.lang||"css"==e.lang)&&(!e.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type)),parser:gu.parser}])}),languageData:{commentTokens:{block:{open:"\x3c!--",close:"--\x3e"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-._"}}),Sh=vh.data.of({autocomplete:Ph});function _h(e={}){let t=vh;return!1===e.matchClosingTags&&(t=t.configure({dialect:"noMatch"})),new Ga(t,[Sh,!1!==e.autoCloseTags?Xh:[],ih().support,$u().support])}const Xh=Qi.inputHandler.of(((e,t,n,r)=>{if(e.composing||e.state.readOnly||t!=n||">"!=r&&"/"!=r||!vh.isActiveAt(e.state,t,-1))return!1;let{state:i}=e,a=i.changeByRange((e=>{var t,n,a;let o,s=qa(i).resolveInner(e.head,-1);if("TagName"!=s.name&&"StartTag"!=s.name||(s=s.parent),">"==r&&"OpenTag"==s.name){if("CloseTag"!=(null===(n=null===(t=s.parent)||void 0===t?void 0:t.lastChild)||void 0===n?void 0:n.name)&&(o=Qh(i.doc,s.parent)))return{range:q.cursor(e.head+1),changes:{from:e.head,insert:`>`}}}else if("/"==r&&"OpenTag"==s.name){let t=s.parent,n=null==t?void 0:t.parent;if(t.from==e.head-1&&"CloseTag"!=(null===(a=n.lastChild)||void 0===a?void 0:a.name)&&(o=Qh(i.doc,n))){let t=`/${o}>`;return{range:q.cursor(e.head+t.length),changes:{from:e.head,insert:t}}}}return{range:e}}));return!a.changes.empty&&(e.dispatch(a,{userEvent:"input.type",scrollIntoView:!0}),!0)}));var Th=Object.freeze({__proto__:null,autoCloseTags:Xh,html:_h,htmlCompletion:Sh,htmlCompletionSource:Ph,htmlLanguage:vh});const Rh=Xa({block:{open:"\x3c!--",close:"--\x3e"}}),Wh=Ol.configure({props:[zc({"Blockquote/...":Ou.quote,HorizontalRule:Ou.contentSeparator,"ATXHeading1/... SetextHeading1/...":Ou.heading1,"ATXHeading2/... SetextHeading2/...":Ou.heading2,"ATXHeading3/...":Ou.heading3,"ATXHeading4/...":Ou.heading4,"ATXHeading5/...":Ou.heading5,"ATXHeading6/...":Ou.heading6,"Comment CommentBlock":Ou.comment,Escape:Ou.escape,Entity:Ou.character,"Emphasis/...":Ou.emphasis,"StrongEmphasis/...":Ou.strong,"Link/... Image/...":Ou.link,"OrderedList/... BulletList/...":Ou.list,"BlockQuote/...":Ou.quote,"InlineCode/... CodeBlock FencedCode":Ou.monospace,URL:Ou.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":Ou.processingInstruction,"CodeInfo LinkLabel":Ou.labelName,LinkTitle:Ou.string,Paragraph:Ou.content}),so.add((e=>{if(e.is("Block")&&!e.is("Document"))return(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})})),Ha.add({Document:()=>null}),_a.add({Document:Rh})]});function qh(e){return new Ta(Rh,e,e.nodeSet.types.find((e=>"Document"==e.name)))}const zh=qh(Wh),Yh=qh(Wh.configure([gl,bl,$l,xl,{props:[zc({"TableDelimiter SubscriptMark SuperscriptMark StrikethroughMark":Ou.processingInstruction,"TableHeader/...":Ou.heading,"Strikethrough/...":Ou.strikethrough,TaskMarker:Ou.atom,Task:Ou.list,Emoji:Ou.character,"Subscript Superscript":Ou.special(Ou.content),TableCell:Ou.content})]}]));function Zh(e,t){return t.sliceString(e.from,e.from+50)}class Uh{constructor(e,t,n,r,i,a,o){this.node=e,this.from=t,this.to=n,this.spaceBefore=r,this.spaceAfter=i,this.type=a,this.item=o}blank(e=!0){let t=this.spaceBefore;if("Blockquote"==this.node.name)t+=">";else for(let e=this.to-this.from-t.length-this.spaceAfter.length;e>0;e--)t+=" ";return t+(e?this.spaceAfter:"")}marker(e,t){let n="OrderedList"==this.node.name?String(+Ih(this.item,e)[2]+t):"";return this.spaceBefore+n+this.type+this.spaceAfter}}function Eh(e,t,n){let r=[];for(let t=e;t&&"Document"!=t.name;t=t.parent)"ListItem"!=t.name&&"Blockquote"!=t.name||r.push(t);let i=[],a=0;for(let e=r.length-1;e>=0;e--){let o,s=r[e],O=a;if("Blockquote"==s.name&&(o=/^\s*>( ?)/.exec(t.slice(a))))a+=o[0].length,i.push(new Uh(s,O,a,"",o[1],">",null));else if("ListItem"==s.name&&"OrderedList"==s.parent.name&&(o=/^(\s*)\d+([.)])(\s*)/.exec(Zh(s,n)))){let e=o[3],t=o[0].length;e.length>=4&&(e=e.slice(0,e.length-4),t-=4),a+=t,i.push(new Uh(s.parent,O,a,o[1],e,o[2],s))}else if("ListItem"==s.name&&"BulletList"==s.parent.name&&(o=/^(\s*)([-+*])(\s+)/.exec(Zh(s,n)))){let e=o[3],t=o[0].length;e.length>4&&(e=e.slice(0,e.length-4),t-=4),a+=t,i.push(new Uh(s.parent,O,a,o[1],e,o[2],s))}}return i}function Ih(e,t){return/^(\s*)(\d+)(?=[.)])/.exec(t.sliceString(e.from,e.from+10))}function Vh(e,t,n){for(let r=-1,i=e;;){if("ListItem"==i.name){let e=Ih(i,t),a=+e[2];if(r>=0){if(a!=r+1)return;n.push({from:i.from+e[1].length,to:i.from+e[0].length,insert:String(r+2)})}r=a}let e=i.nextSibling;if(!e)break;i=e}}const Ch=({state:e,dispatch:t})=>{let n=qa(e),{doc:r}=e,i=null,a=e.changeByRange((t=>{if(!t.empty||!Yh.isActiveAt(e,t.from))return i={range:t};let a=t.from,o=r.lineAt(a),s=Eh(n.resolveInner(a,-1),o.text,r);for(;s.length&&s[s.length-1].from>a-o.from;)s.pop();if(!s.length)return i={range:t};let O=s[s.length-1];if(O.to-O.spaceAfter.length>a-o.from)return i={range:t};if(O.item&&a>=O.to-O.spaceAfter.length&&!/\S/.test(o.text.slice(O.to,a-o.from))){if(O.node.firstChild.to>=a||o.from>0&&!/[^\s>]/.test(r.lineAt(o.from-1).text)){let e,t=s.length>1?s[s.length-2]:null,n="";t&&t.item?(e=o.from+t.from,n=t.marker(r,1)):e=o.from+(t?t.to:0);let i=[{from:e,to:a,insert:n}];return"OrderedList"==O.node.name&&Vh(O.item,r,i),t&&"OrderedList"==t.node.name&&Vh(t.item,r,i),{range:q.cursor(e+n.length),changes:i}}{let t="";for(let e=0,n=s.length-2;e<=n;e++)t+=s[e].blank(e]*/.exec(o.text)[0].length>=O.to)for(let e=0,t=s.length-1;e<=t;e++)c+=e!=t||u?s[e].blank():s[e].marker(r,1);let h=a;for(;h>o.from&&/\s/.test(o.text.charAt(h-o.from-1));)h--;return l.push({from:h,to:a,insert:c}),{range:q.cursor(h+c.length),changes:l}}));return!i&&(t(e.update(a,{scrollIntoView:!0,userEvent:"input"})),!0)};function Ah(e){return"QuoteMark"==e.name||"ListMark"==e.name}const Gh=({state:e,dispatch:t})=>{let n=qa(e),r=null,i=e.changeByRange((t=>{let i=t.from,{doc:a}=e;if(t.empty&&Yh.isActiveAt(e,t.from)){let e=a.lineAt(i),r=Eh(function(e,t){let n,r=e.resolveInner(t,-1),i=t;for(Ah(r)&&(i=r.from,r=r.parent);n=r.childBefore(i);)if(Ah(n))i=n.from;else{if("OrderedList"!=n.name&&"BulletList"!=n.name)break;r=n.lastChild,i=r.to}return r}(n,i),e.text,a);if(r.length){let n=r[r.length-1],a=n.to-n.spaceAfter.length+("OrderedList"==n.node.name?0:1);if(i-e.from>a&&!/\S/.test(e.text.slice(a,i-e.from)))return{range:q.cursor(e.from+a),changes:{from:e.from+a,to:i}};if(i-e.from==a){let r=e.from+n.from;if(n.item&&n.node.from{let r=n&&ja.matchLanguageName(e,n,!0);return r?r.support?r.support.language.parser:Za.getSkippingParser(r.load()):t?t.parser:null}}(t||[],a):void 0;return o.push(function(e){let{codeParser:t,htmlParser:n}=e,r=ma(((e,r)=>{let i=e.type.id;if(!t||i!=aO.CodeBlock&&i!=aO.FencedCode){if(n&&(i==aO.HTMLBlock||i==aO.HTMLTag))return{parser:n,overlay:ll(e.node,e.from,e.to)}}else{let n="";if(i=aO.FencedCode){let t=e.node.getChild(aO.CodeInfo);t&&(n=r.read(t.from,t.to))}let a=t(n);if(a)return{parser:a,overlay:e=>e.type.id==aO.CodeText}}return null}));return{wrap:r}}({codeParser:O,htmlParser:Lh.language.parser})),r&&s.push(M.extend(_i.of(jh))),new Ga(qh(i.configure(o)),s)}var Dh=Object.freeze({__proto__:null,commonmarkLanguage:zh,deleteMarkupBackward:Gh,insertNewlineContinueMarkup:Ch,markdown:Nh,markdownKeymap:jh,markdownLanguage:Yh});function Mh(e){return Promise.resolve().then((function(){return Jd})).then((t=>new Ga(t.StreamLanguage.define(e))))}function Fh(e){return Promise.resolve().then((function(){return Zp})).then((t=>t.sql({dialect:t[e]})))}const Bh=[ja.of({name:"C",extensions:["c","h","ino"],load:()=>Promise.resolve().then((function(){return Lp})).then((e=>e.cpp()))}),ja.of({name:"C++",alias:["cpp"],extensions:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],load:()=>Promise.resolve().then((function(){return Lp})).then((e=>e.cpp()))}),ja.of({name:"CQL",alias:["cassandra"],extensions:["cql"],load:()=>Fh("Cassandra")}),ja.of({name:"CSS",extensions:["css"],load:()=>Promise.resolve().then((function(){return bu})).then((e=>e.css()))}),ja.of({name:"HTML",alias:["xhtml"],extensions:["html","htm","handlebars","hbs"],load:()=>Promise.resolve().then((function(){return Th})).then((e=>e.html()))}),ja.of({name:"Java",extensions:["java"],load:()=>Promise.resolve().then((function(){return Fp})).then((e=>e.java()))}),ja.of({name:"JavaScript",alias:["ecmascript","js","node"],extensions:["js","mjs","cjs"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript()))}),ja.of({name:"JSON",alias:["json5"],extensions:["json","map"],load:()=>Promise.resolve().then((function(){return Kp})).then((e=>e.json()))}),ja.of({name:"JSX",extensions:["jsx"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript({jsx:!0})))}),ja.of({name:"MariaDB SQL",load:()=>Fh("MariaSQL")}),ja.of({name:"Markdown",extensions:["md","markdown","mkd"],load:()=>Promise.resolve().then((function(){return Dh})).then((e=>e.markdown()))}),ja.of({name:"MS SQL",load:()=>Fh("MSSQL")}),ja.of({name:"MySQL",load:()=>Fh("MySQL")}),ja.of({name:"PLSQL",extensions:["pls"],load:()=>Fh("PLSQL")}),ja.of({name:"PostgreSQL",load:()=>Fh("PostgreSQL")}),ja.of({name:"Python",extensions:["BUILD","bzl","py","pyw"],filename:/^(BUCK|BUILD)$/,load:()=>Promise.resolve().then((function(){return cf})).then((e=>e.python()))}),ja.of({name:"Rust",extensions:["rs"],load:()=>Promise.resolve().then((function(){return $f})).then((e=>e.rust()))}),ja.of({name:"SQL",extensions:["sql"],load:()=>Fh("StandardSQL")}),ja.of({name:"SQLite",load:()=>Fh("SQLite")}),ja.of({name:"TSX",extensions:["tsx"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript({jsx:!0,typescript:!0})))}),ja.of({name:"TypeScript",alias:["ts"],extensions:["ts"],load:()=>Promise.resolve().then((function(){return sh})).then((e=>e.javascript({typescript:!0})))}),ja.of({name:"XML",alias:["rss","wsdl","xsd"],extensions:["xml","xsl","xsd","svg"],load:()=>Promise.resolve().then((function(){return Gf})).then((e=>e.xml()))}),ja.of({name:"APL",extensions:["dyalog","apl"],load:()=>Promise.resolve().then((function(){return Hf})).then((e=>Mh(e.apl)))}),ja.of({name:"PGP",alias:["asciiarmor"],extensions:["asc","pgp","sig"],load:()=>Promise.resolve().then((function(){return em})).then((e=>Mh(e.asciiArmor)))}),ja.of({name:"ASN.1",extensions:["asn","asn1"],load:()=>Promise.resolve().then((function(){return rm})).then((e=>Mh(e.asn1({}))))}),ja.of({name:"Asterisk",filename:/^extensions\.conf$/i,load:()=>Promise.resolve().then((function(){return Om})).then((e=>Mh(e.asterisk)))}),ja.of({name:"Brainfuck",extensions:["b","bf"],load:()=>Promise.resolve().then((function(){return um})).then((e=>Mh(e.brainfuck)))}),ja.of({name:"Cobol",extensions:["cob","cpy"],load:()=>Promise.resolve().then((function(){return bm})).then((e=>Mh(e.cobol)))}),ja.of({name:"C#",alias:["csharp","cs"],extensions:["cs"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.csharp)))}),ja.of({name:"Clojure",extensions:["clj","cljc","cljx"],load:()=>Promise.resolve().then((function(){return qg})).then((e=>Mh(e.clojure)))}),ja.of({name:"ClojureScript",extensions:["cljs"],load:()=>Promise.resolve().then((function(){return qg})).then((e=>Mh(e.clojure)))}),ja.of({name:"Closure Stylesheets (GSS)",extensions:["gss"],load:()=>Promise.resolve().then((function(){return sQ})).then((e=>Mh(e.gss)))}),ja.of({name:"CMake",extensions:["cmake","cmake.in"],filename:/^CMakeLists\.txt$/,load:()=>Promise.resolve().then((function(){return uQ})).then((e=>Mh(e.cmake)))}),ja.of({name:"CoffeeScript",alias:["coffee","coffee-script"],extensions:["coffee"],load:()=>Promise.resolve().then((function(){return RQ})).then((e=>Mh(e.coffeeScript)))}),ja.of({name:"Common Lisp",alias:["lisp"],extensions:["cl","lisp","el"],load:()=>Promise.resolve().then((function(){return AQ})).then((e=>Mh(e.commonLisp)))}),ja.of({name:"Cypher",extensions:["cyp","cypher"],load:()=>Promise.resolve().then((function(){return JQ})).then((e=>Mh(e.cypher)))}),ja.of({name:"Cython",extensions:["pyx","pxd","pxi"],load:()=>Promise.resolve().then((function(){return l$})).then((e=>Mh(e.cython)))}),ja.of({name:"Crystal",extensions:["cr"],load:()=>Promise.resolve().then((function(){return Y$})).then((e=>Mh(e.crystal)))}),ja.of({name:"D",extensions:["d"],load:()=>Promise.resolve().then((function(){return J$})).then((e=>Mh(e.d)))}),ja.of({name:"Dart",extensions:["dart"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.dart)))}),ja.of({name:"diff",extensions:["diff","patch"],load:()=>Promise.resolve().then((function(){return nb})).then((e=>Mh(e.diff)))}),ja.of({name:"Dockerfile",filename:/^Dockerfile$/,load:()=>Promise.resolve().then((function(){return gb})).then((e=>Mh(e.dockerFile)))}),ja.of({name:"DTD",extensions:["dtd"],load:()=>Promise.resolve().then((function(){return wb})).then((e=>Mh(e.dtd)))}),ja.of({name:"Dylan",extensions:["dylan","dyl","intr"],load:()=>Promise.resolve().then((function(){return Ib})).then((e=>Mh(e.dylan)))}),ja.of({name:"EBNF",load:()=>Promise.resolve().then((function(){return Nb})).then((e=>Mh(e.ebnf)))}),ja.of({name:"ECL",extensions:["ecl"],load:()=>Promise.resolve().then((function(){return cx})).then((e=>Mh(e.ecl)))}),ja.of({name:"edn",extensions:["edn"],load:()=>Promise.resolve().then((function(){return qg})).then((e=>Mh(e.clojure)))}),ja.of({name:"Eiffel",extensions:["e"],load:()=>Promise.resolve().then((function(){return mx})).then((e=>Mh(e.eiffel)))}),ja.of({name:"Elm",extensions:["elm"],load:()=>Promise.resolve().then((function(){return zx})).then((e=>Mh(e.elm)))}),ja.of({name:"Erlang",extensions:["erl"],load:()=>Promise.resolve().then((function(){return uw})).then((e=>Mh(e.erlang)))}),ja.of({name:"Esper",load:()=>Promise.resolve().then((function(){return Ww})).then((e=>Mh(e.esper)))}),ja.of({name:"Factor",extensions:["factor"],load:()=>Promise.resolve().then((function(){return zw})).then((e=>Mh(e.factor)))}),ja.of({name:"FCL",load:()=>Promise.resolve().then((function(){return jw})).then((e=>Mh(e.fcl)))}),ja.of({name:"Forth",extensions:["forth","fth","4th"],load:()=>Promise.resolve().then((function(){return Bw})).then((e=>Mh(e.forth)))}),ja.of({name:"Fortran",extensions:["f","for","f77","f90","f95"],load:()=>Promise.resolve().then((function(){return ak})).then((e=>Mh(e.fortran)))}),ja.of({name:"F#",alias:["fsharp"],extensions:["fs"],load:()=>Promise.resolve().then((function(){return ck})).then((e=>Mh(e.fSharp)))}),ja.of({name:"Gas",extensions:["s"],load:()=>Promise.resolve().then((function(){return pk})).then((e=>Mh(e.gas)))}),ja.of({name:"Gherkin",extensions:["feature"],load:()=>Promise.resolve().then((function(){return mk})).then((e=>Mh(e.gherkin)))}),ja.of({name:"Go",extensions:["go"],load:()=>Promise.resolve().then((function(){return vk})).then((e=>Mh(e.go)))}),ja.of({name:"Groovy",extensions:["groovy","gradle"],filename:/^Jenkinsfile$/,load:()=>Promise.resolve().then((function(){return Ak})).then((e=>Mh(e.groovy)))}),ja.of({name:"Haskell",extensions:["hs"],load:()=>Promise.resolve().then((function(){return ay})).then((e=>Mh(e.haskell)))}),ja.of({name:"Haxe",extensions:["hx"],load:()=>Promise.resolve().then((function(){return OP})).then((e=>Mh(e.haxe)))}),ja.of({name:"HXML",extensions:["hxml"],load:()=>Promise.resolve().then((function(){return OP})).then((e=>Mh(e.hxml)))}),ja.of({name:"HTTP",load:()=>Promise.resolve().then((function(){return QP})).then((e=>Mh(e.http)))}),ja.of({name:"IDL",extensions:["pro"],load:()=>Promise.resolve().then((function(){return _P})).then((e=>Mh(e.idl)))}),ja.of({name:"JSON-LD",alias:["jsonld"],extensions:["jsonld"],load:()=>Promise.resolve().then((function(){return zP})).then((e=>Mh(e.jsonld)))}),ja.of({name:"Jinja2",extensions:["j2","jinja","jinja2"],load:()=>Promise.resolve().then((function(){return AP})).then((e=>Mh(e.jinja2)))}),ja.of({name:"Julia",extensions:["jl"],load:()=>Promise.resolve().then((function(){return cv})).then((e=>Mh(e.julia)))}),ja.of({name:"Kotlin",extensions:["kt"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.kotlin)))}),ja.of({name:"LESS",extensions:["less"],load:()=>Promise.resolve().then((function(){return sQ})).then((e=>Mh(e.less)))}),ja.of({name:"LiveScript",alias:["ls"],extensions:["ls"],load:()=>Promise.resolve().then((function(){return kv})).then((e=>Mh(e.liveScript)))}),ja.of({name:"Lua",extensions:["lua"],load:()=>Promise.resolve().then((function(){return zv})).then((e=>Mh(e.lua)))}),ja.of({name:"mIRC",load:()=>Promise.resolve().then((function(){return Lv})).then((e=>Mh(e.mirc)))}),ja.of({name:"Mathematica",extensions:["m","nb","wl","wls"],load:()=>Promise.resolve().then((function(){return nS})).then((e=>Mh(e.mathematica)))}),ja.of({name:"Modelica",extensions:["mo"],load:()=>Promise.resolve().then((function(){return $S})).then((e=>Mh(e.modelica)))}),ja.of({name:"MUMPS",extensions:["mps"],load:()=>Promise.resolve().then((function(){return XS})).then((e=>Mh(e.mumps)))}),ja.of({name:"mbox",extensions:["mbox"],load:()=>Promise.resolve().then((function(){return AS})).then((e=>Mh(e.mbox)))}),ja.of({name:"Nginx",filename:/nginx.*\.conf$/i,load:()=>Promise.resolve().then((function(){return JS})).then((e=>Mh(e.nginx)))}),ja.of({name:"NSIS",extensions:["nsh","nsi"],load:()=>Promise.resolve().then((function(){return t_})).then((e=>Mh(e.nsis)))}),ja.of({name:"NTriples",extensions:["nt","nq"],load:()=>Promise.resolve().then((function(){return g_})).then((e=>Mh(e.ntriples)))}),ja.of({name:"Objective-C",alias:["objective-c","objc"],extensions:["m"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.objectiveC)))}),ja.of({name:"Objective-C++",alias:["objective-c++","objc++"],extensions:["mm"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.objectiveCpp)))}),ja.of({name:"OCaml",extensions:["ml","mli","mll","mly"],load:()=>Promise.resolve().then((function(){return ck})).then((e=>Mh(e.oCaml)))}),ja.of({name:"Octave",extensions:["m"],load:()=>Promise.resolve().then((function(){return W_})).then((e=>Mh(e.octave)))}),ja.of({name:"Oz",extensions:["oz"],load:()=>Promise.resolve().then((function(){return H_})).then((e=>Mh(e.oz)))}),ja.of({name:"Pascal",extensions:["p","pas"],load:()=>Promise.resolve().then((function(){return aX})).then((e=>Mh(e.pascal)))}),ja.of({name:"Perl",extensions:["pl","pm"],load:()=>Promise.resolve().then((function(){return gX})).then((e=>Mh(e.perl)))}),ja.of({name:"Pig",extensions:["pig"],load:()=>Promise.resolve().then((function(){return TX})).then((e=>Mh(e.pig)))}),ja.of({name:"PowerShell",extensions:["ps1","psd1","psm1"],load:()=>Promise.resolve().then((function(){return HX})).then((e=>Mh(e.powerShell)))}),ja.of({name:"Properties files",alias:["ini","properties"],extensions:["properties","ini","in"],load:()=>Promise.resolve().then((function(){return KX})).then((e=>Mh(e.properties)))}),ja.of({name:"ProtoBuf",extensions:["proto"],load:()=>Promise.resolve().then((function(){return rT})).then((e=>Mh(e.protobuf)))}),ja.of({name:"Puppet",extensions:["pp"],load:()=>Promise.resolve().then((function(){return cT})).then((e=>Mh(e.puppet)))}),ja.of({name:"Q",extensions:["q"],load:()=>Promise.resolve().then((function(){return xT})).then((e=>Mh(e.q)))}),ja.of({name:"R",alias:["rscript"],extensions:["r","R"],load:()=>Promise.resolve().then((function(){return UT})).then((e=>Mh(e.r)))}),ja.of({name:"RPM Changes",load:()=>Promise.resolve().then((function(){return FT})).then((e=>Mh(e.rpmChanges)))}),ja.of({name:"RPM Spec",extensions:["spec"],load:()=>Promise.resolve().then((function(){return FT})).then((e=>Mh(e.rpmSpec)))}),ja.of({name:"Ruby",alias:["jruby","macruby","rake","rb","rbx"],extensions:["rb"],load:()=>Promise.resolve().then((function(){return uR})).then((e=>Mh(e.ruby)))}),ja.of({name:"SAS",extensions:["sas"],load:()=>Promise.resolve().then((function(){return QR})).then((e=>Mh(e.sas)))}),ja.of({name:"Scala",extensions:["scala"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.scala)))}),ja.of({name:"Scheme",extensions:["scm","ss"],load:()=>Promise.resolve().then((function(){return ER})).then((e=>Mh(e.scheme)))}),ja.of({name:"SCSS",extensions:["scss"],load:()=>Promise.resolve().then((function(){return sQ})).then((e=>Mh(e.sCSS)))}),ja.of({name:"Shell",alias:["bash","sh","zsh"],extensions:["sh","ksh","bash"],filename:/^PKGBUILD$/,load:()=>Promise.resolve().then((function(){return BR})).then((e=>Mh(e.shell)))}),ja.of({name:"Sieve",extensions:["siv","sieve"],load:()=>Promise.resolve().then((function(){return iW})).then((e=>Mh(e.sieve)))}),ja.of({name:"Smalltalk",extensions:["st"],load:()=>Promise.resolve().then((function(){return mW})).then((e=>Mh(e.smalltalk)))}),ja.of({name:"Solr",load:()=>Promise.resolve().then((function(){return yW})).then((e=>Mh(e.solr)))}),ja.of({name:"SML",extensions:["sml","sig","fun","smackspec"],load:()=>Promise.resolve().then((function(){return ck})).then((e=>Mh(e.sml)))}),ja.of({name:"SPARQL",alias:["sparul"],extensions:["rq","sparql"],load:()=>Promise.resolve().then((function(){return zW})).then((e=>Mh(e.sparql)))}),ja.of({name:"Spreadsheet",alias:["excel","formula"],load:()=>Promise.resolve().then((function(){return YW})).then((e=>Mh(e.spreadsheet)))}),ja.of({name:"SQL",extensions:["sql"],load:()=>Promise.resolve().then((function(){return Ww})).then((e=>Mh(e.standardSQL)))}),ja.of({name:"SQLite",load:()=>Promise.resolve().then((function(){return Ww})).then((e=>Mh(e.sqlite)))}),ja.of({name:"Squirrel",extensions:["nut"],load:()=>Promise.resolve().then((function(){return fg})).then((e=>Mh(e.squirrel)))}),ja.of({name:"Stylus",extensions:["styl"],load:()=>Promise.resolve().then((function(){return Iq})).then((e=>Mh(e.stylus)))}),ja.of({name:"Swift",extensions:["swift"],load:()=>Promise.resolve().then((function(){return sz})).then((e=>Mh(e.swift)))}),ja.of({name:"sTeX",load:()=>Promise.resolve().then((function(){return uz})).then((e=>Mh(e.stex)))}),ja.of({name:"LaTeX",alias:["tex"],extensions:["text","ltx","tex"],load:()=>Promise.resolve().then((function(){return uz})).then((e=>Mh(e.stex)))}),ja.of({name:"SystemVerilog",extensions:["v","sv","svh"],load:()=>Promise.resolve().then((function(){return bz})).then((e=>Mh(e.verilog)))}),ja.of({name:"Tcl",extensions:["tcl"],load:()=>Promise.resolve().then((function(){return Tz})).then((e=>Mh(e.tcl)))}),ja.of({name:"Textile",extensions:["textile"],load:()=>Promise.resolve().then((function(){return Vz})).then((e=>Mh(e.textile)))}),ja.of({name:"TiddlyWiki",load:()=>Promise.resolve().then((function(){return fY})).then((e=>Mh(e.tiddlyWiki)))}),ja.of({name:"Tiki wiki",load:()=>Promise.resolve().then((function(){return XY})).then((e=>Mh(e.tiki)))}),ja.of({name:"TOML",extensions:["toml"],load:()=>Promise.resolve().then((function(){return TY})).then((e=>Mh(e.toml)))}),ja.of({name:"troff",extensions:["1","2","3","4","5","6","7","8","9"],load:()=>Promise.resolve().then((function(){return YY})).then((e=>Mh(e.troff)))}),ja.of({name:"TTCN",extensions:["ttcn","ttcn3","ttcnpp"],load:()=>Promise.resolve().then((function(){return lZ})).then((e=>Mh(e.ttcn)))}),ja.of({name:"TTCN_CFG",extensions:["cfg"],load:()=>Promise.resolve().then((function(){return yZ})).then((e=>Mh(e.ttcnCfg)))}),ja.of({name:"Turtle",extensions:["ttl"],load:()=>Promise.resolve().then((function(){return WZ})).then((e=>Mh(e.turtle)))}),ja.of({name:"Web IDL",extensions:["webidl"],load:()=>Promise.resolve().then((function(){return eU})).then((e=>Mh(e.webIDL)))}),ja.of({name:"VB.NET",extensions:["vb"],load:()=>Promise.resolve().then((function(){return SU})).then((e=>Mh(e.vb)))}),ja.of({name:"VBScript",extensions:["vbs"],load:()=>Promise.resolve().then((function(){return RU})).then((e=>Mh(e.vbScript)))}),ja.of({name:"Velocity",extensions:["vtl"],load:()=>Promise.resolve().then((function(){return GU})).then((e=>Mh(e.velocity)))}),ja.of({name:"Verilog",extensions:["v"],load:()=>Promise.resolve().then((function(){return bz})).then((e=>Mh(e.verilog)))}),ja.of({name:"VHDL",extensions:["vhd","vhdl"],load:()=>Promise.resolve().then((function(){return rE})).then((e=>Mh(e.vhdl)))}),ja.of({name:"XQuery",extensions:["xy","xquery"],load:()=>Promise.resolve().then((function(){return bE})).then((e=>Mh(e.xQuery)))}),ja.of({name:"Yacas",extensions:["ys"],load:()=>Promise.resolve().then((function(){return WE})).then((e=>Mh(e.yacas)))}),ja.of({name:"YAML",alias:["yml"],extensions:["yaml","yml"],load:()=>Promise.resolve().then((function(){return YE})).then((e=>Mh(e.yaml)))}),ja.of({name:"Z80",extensions:["z80"],load:()=>Promise.resolve().then((function(){return IE})).then((e=>Mh(e.z80)))}),ja.of({name:"mscgen",extensions:["mscgen","mscin","msc"],load:()=>Promise.resolve().then((function(){return ME})).then((e=>Mh(e.mscgen)))}),ja.of({name:"xu",extensions:["xu"],load:()=>Promise.resolve().then((function(){return ME})).then((e=>Mh(e.xu)))}),ja.of({name:"msgenny",extensions:["msgenny"],load:()=>Promise.resolve().then((function(){return ME})).then((e=>Mh(e.msgenny)))}),ja.of({name:"WebAssembly",extensions:["wat","wast"],load:()=>Promise.resolve().then((function(){return BE})).then((e=>Mh(e.wast)))})];class Hh extends Re{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}}Hh.prototype.elementClass="",Hh.prototype.toDOM=void 0,Hh.prototype.mapMode=k.TrackBefore,Hh.prototype.startSide=Hh.prototype.endSide=-1,Hh.prototype.point=!0;const Kh=U.define(),Jh=U.define(),ed=Qi.baseTheme({".cm-gutters":{display:"flex",height:"100%",boxSizing:"border-box",left:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#999",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",height:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"}}),td=U.define({combine:e=>e.some((e=>e))});function nd(e){let t=[rd,ed];return e&&!1===e.fixed&&t.push(td.of(!0)),t}const rd=Sn.fromClass(class{constructor(e){this.view=e,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.gutters=e.state.facet(Jh).map((t=>new sd(e,t)));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!e.state.facet(td),this.fixed&&(this.dom.style.position="sticky"),e.scrollDOM.insertBefore(this.dom,e.contentDOM),this.syncGutters()}update(e){this.updateGutters(e)&&this.syncGutters()}syncGutters(){let e=Ye.iter(this.view.state.facet(Kh),this.view.viewport.from),t=[],n=this.gutters.map((e=>new od(e,this.view.viewport)));this.view.viewportLines((r=>{let i;if(Array.isArray(r.type)){for(let e of r.type)if(e.type==en.Text){i=e;break}}else i=r.type==en.Text?r:void 0;if(i){t.length&&(t=[]),ad(e,t,r.from);for(let e of n)e.line(this.view,i,t)}}),0);for(let e of n)e.finish();this.dom.style.minHeight=this.view.contentHeight+"px",this.view.state.facet(td)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"")}updateGutters(e){let t=e.startState.facet(Jh),n=e.state.facet(Jh),r=e.docChanged||e.heightChanged||e.viewportChanged||!Ye.eq(e.startState.facet(Kh),e.state.facet(Kh),e.view.viewport.from,e.view.viewport.to);if(t==n)for(let t of this.gutters)t.update(e)&&(r=!0);else{r=!0;let i=[];for(let r of n){let n=t.indexOf(r);n<0?i.push(new sd(this.view,r)):(this.gutters[n].update(e),i.push(this.gutters[n]))}for(let e of this.gutters)e.dom.remove();for(let e of i)this.dom.appendChild(e.dom);this.gutters=i}return r}destroy(){this.dom.remove()}},{provide:yn.scrollMargins.from((e=>0!=e.gutters.length&&e.fixed?e.view.textDirection==Cn.LTR?{left:e.dom.offsetWidth}:{right:e.dom.offsetWidth}:null))});function id(e){return Array.isArray(e)?e:[e]}function ad(e,t,n){for(;e.value&&e.from<=n;)e.from==n&&t.push(e.value),e.next()}class od{constructor(e,t){this.gutter=e,this.localMarkers=[],this.i=0,this.height=0,this.cursor=Ye.iter(e.markers,t.from)}line(e,t,n){this.localMarkers.length&&(this.localMarkers=[]),ad(this.cursor,this.localMarkers,t.from);let r=n.length?this.localMarkers.concat(n):this.localMarkers,i=this.gutter.config.lineMarker(e,t,r);i&&r.unshift(i);let a=this.gutter;if(0==r.length&&!a.config.renderEmptyElements)return;let o=t.top-this.height;if(this.i==a.elements.length){let n=new Od(e,t.height,o,r);a.elements.push(n),a.dom.appendChild(n.dom)}else{let n=a.elements[this.i];(function(e,t){if(e.length!=t.length)return!1;for(let n=0;nthis.i;)e.dom.removeChild(e.elements.pop().dom)}}class sd{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let n in t.domEventHandlers)this.dom.addEventListener(n,(r=>{let i=e.visualLineAtHeight(r.clientY,e.contentDOM.getBoundingClientRect().top);t.domEventHandlers[n](e,i,r)&&r.preventDefault()}));this.markers=id(t.markers(e)),t.initialSpacer&&(this.spacer=new Od(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=id(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let t=this.config.updateSpacer(this.spacer.markers[0],e);t!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[t])}let n=e.view.viewport;return!Ye.eq(this.markers,t,n.from,n.to)}}class Od{constructor(e,t,n,r){this.height=-1,this.above=0,this.dom=document.createElement("div"),this.update(e,t,n,r)}update(e,t,n,r){if(this.height!=t&&(this.dom.style.height=(this.height=t)+"px"),this.above!=n&&(this.dom.style.marginTop=(this.above=n)?n+"px":""),this.markers!=r){this.markers=r;for(let e;e=this.dom.lastChild;)e.remove();let t="cm-gutterElement";for(let n of r){n.toDOM&&this.dom.appendChild(n.toDOM(e));let r=n.elementClass;r&&(t+=" "+r)}this.dom.className=t}}}const ld=U.define(),cd=U.define({combine:e=>ye(e,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let n=Object.assign({},e);for(let e in t){let r=n[e],i=t[e];n[e]=r?(e,t,n)=>r(e,t,n)||i(e,t,n):i}return n}})});class ud extends Hh{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(e){return document.createTextNode(this.number)}}function hd(e,t){return e.state.facet(cd).formatNumber(t,e.state)}const dd=Jh.compute([cd],(e=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers:e=>e.state.facet(ld),lineMarker:(e,t,n)=>n.some((e=>e.toDOM))?null:new ud(hd(e,e.state.doc.lineAt(t.from).number)),initialSpacer:e=>new ud(hd(e,fd(e.state.doc.lines))),updateSpacer(e,t){let n=hd(t.view,fd(t.view.state.doc.lines));return n==e.number?e:new ud(n)},domEventHandlers:e.facet(cd).domEventHandlers})));function pd(e={}){return[cd.of(e),nd(),dd]}function fd(e){let t=9;for(;t{let t=[],n=-1;for(let r of e.selection.ranges)if(r.empty){let i=e.doc.lineAt(r.head).from;i>n&&(n=i,t.push(md.range(i)))}return Ye.of(t)}));const Qd="function"==typeof String.prototype.normalize?e=>e.normalize("NFKD"):e=>e;class $d{constructor(e,t,n=0,r=e.length,i){this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=i?e=>i(Qd(e)):Qd,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return O(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=l(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=c(e);let r=this.normalize(t);for(let e=0,i=n;;e++){let a=r.charCodeAt(e),o=this.match(a,i);if(o)return this.value=o,this;if(e==r.length-1)break;i==n&&eye(e,bd,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})});function wd(e){let t=[vd,Pd];return e&&t.push(xd.of(e)),t}const kd=tn.mark({class:"cm-selectionMatch"}),yd=tn.mark({class:"cm-selectionMatch cm-selectionMatch-main"}),Pd=Sn.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(xd),{state:n}=e,r=n.selection;if(r.ranges.length>1)return tn.none;let i,a=r.main,o=null;if(a.empty){if(!t.highlightWordAroundCursor)return tn.none;let e=n.wordAt(a.head);if(!e)return tn.none;o=n.charCategorizer(a.head),i=n.sliceDoc(e.from,e.to)}else{let e=a.to-a.from;if(e200)return tn.none;if(i=n.sliceDoc(a.from,a.to).trim(),!i)return tn.none}let s=[];for(let r of e.visibleRanges){let e=new $d(n.doc,i,r.from,r.to);for(;!e.next().done;){let{from:r,to:i}=e.value;if((!o||(0==r||o(n.sliceDoc(r-1,r))!=$e.Word)&&(i==n.doc.length||o(n.sliceDoc(i,i+1))!=$e.Word))&&(o&&r<=a.from&&i>=a.to?s.push(yd.range(r,i)):(r>=a.to||i<=a.from)&&s.push(kd.range(r,i)),s.length>t.maxMatches))return tn.none}}return tn.set(s)}},{decorations:e=>e.decorations}),vd=Qi.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}});function Sd(e,t){return({state:n,dispatch:r})=>{let i=e(t,n.selection.ranges,n);return!!i&&(r(n.update(i)),!0)}}const _d=Sd(qd,0),Xd=Sd(Wd,0),Td=[{key:"Mod-/",run:e=>{let t=Rd(e.state);return t.line?_d(e):!!t.block&&Xd(e)}},{key:"Alt-A",run:Xd}];function Rd(e,t=e.selection.main.head){let n=e.languageDataAt("commentTokens",t);return n.length?n[0]:{}}function Wd(e,t,n){let r=t.map((e=>Rd(n,e.from).block));if(!r.every((e=>e)))return null;let i=t.map(((e,t)=>function(e,{open:t,close:n},r,i){let a,o,s=e.sliceDoc(r-50,r),O=e.sliceDoc(i,i+50),l=/\s*$/.exec(s)[0].length,c=/^\s*/.exec(O)[0].length,u=s.length-l;if(s.slice(u-t.length,u)==t&&O.slice(c,c+n.length)==n)return{open:{pos:r-l,margin:l&&1},close:{pos:i+c,margin:c&&1}};i-r<=100?a=o=e.sliceDoc(r,i):(a=e.sliceDoc(r,r+50),o=e.sliceDoc(i-50,i));let h=/^\s*/.exec(a)[0].length,d=/\s*$/.exec(o)[0].length,p=o.length-d-n.length;return a.slice(h,h+t.length)==t&&o.slice(p,p+n.length)==n?{open:{pos:r+h+t.length,margin:/\s/.test(a.charAt(h+t.length))?1:0},close:{pos:i-d-n.length,margin:/\s/.test(o.charAt(p-1))?1:0}}:null}(n,r[t],e.from,e.to)));if(2!=e&&!i.every((e=>e))){let e=0;return n.changeByRange((t=>{let{open:n,close:a}=r[e++];if(i[e])return{range:t};let o=n.length+1;return{changes:[{from:t.from,insert:n+" "},{from:t.to,insert:" "+a}],range:q.range(t.anchor+o,t.head+o)}}))}if(1!=e&&i.some((e=>e))){let e=[];for(let t,n=0;ni&&(e==a||a>s.from)){i=s.from;let e=Rd(n,t).line;if(!e)continue;let a=/^\s*/.exec(s.text)[0].length,O=a==s.length,l=s.text.slice(a,a+e.length)==e?a:-1;ae.comment<0&&(!e.empty||e.single)))){let e=[];for(let{line:t,token:n,indent:i,empty:a,single:o}of r)!o&&a||e.push({from:t.from+i,insert:n+" "});let t=n.changes(e);return{changes:t,selection:n.selection.map(t,1)}}if(1!=e&&r.some((e=>e.comment>=0))){let e=[];for(let{line:t,comment:n,token:i}of r)if(n>=0){let r=t.from+n,a=r+i.length;" "==t.text[a-t.from]&&a++,e.push({from:r,to:a})}return{changes:e}}return null}var zd=[{type:"undo",title:"撤销",innerHTML:''},{type:"redo",title:"重做",innerHTML:''},{type:"bold",title:"加粗",innerHTML:''},{type:"italic",title:"倾斜",innerHTML:''},{type:"delete",title:"删除",innerHTML:''},{type:"code-inline",title:"行内代码",innerHTML:''},{type:"hr",title:"横线",innerHTML:''},{type:"quote",title:"引用",innerHTML:''},{type:"title",title:"标题",innerHTML:''},{type:"ordered-list",title:"有序列表",innerHTML:''},{type:"unordered-list",title:"无序列表",innerHTML:''},{type:"link",title:"超链接",innerHTML:''},{type:"image",title:"插入图片",innerHTML:''},{type:"table",title:"表格",innerHTML:''},{type:"code-block",title:"代码块",innerHTML:''},{type:"html",title:"原生HTML",innerHTML:''},{type:"time",title:"当前时间",innerHTML:''},{type:"indent",title:"缩进",innerHTML:''},{type:"character",title:"实体符号",innerHTML:''},{type:"emoji",title:"符号表情",innerHTML:''},{type:"expression",title:"图片表情",innerHTML:''},{type:"task-no",title:"任务 - 未完成",innerHTML:''},{type:"task-yes",title:"任务 - 已完成",innerHTML:''},{type:"mtitle",title:"居中标题",innerHTML:''},{type:"dplayer",title:"M3U8/MP4视频",innerHTML:''},{type:"bilibili",title:"哔哩哔哩视频",innerHTML:''},{type:"netease-list",title:"网易云列表",innerHTML:''},{type:"netease-single",title:"网易云单首",innerHTML:''},{type:"abtn",title:"多彩按钮",innerHTML:''},{type:"anote",title:"便条按钮",innerHTML:''},{type:"dotted",title:"彩色虚线",innerHTML:''},{type:"hide",title:"回复可见",innerHTML:''},{type:"card-default",title:"默认卡片",innerHTML:''},{type:"message",title:"消息提示",innerHTML:''},{type:"progress",title:"进度条",innerHTML:''},{type:"callout",title:"标注",innerHTML:''},{type:"mp3",title:"外部音乐",innerHTML:''},{type:"tabs",title:"标签页",innerHTML:''},{type:"card-list",title:"卡片列表",innerHTML:''},{type:"timeline",title:"时间轴",innerHTML:''},{type:"copy",title:"复制文本",innerHTML:''},{type:"card-describe",title:"描述卡片",innerHTML:''},{type:"lamp",title:"跑马灯",innerHTML:''},{type:"collapse",title:"折叠面板",innerHTML:''},{type:"cloud",title:"云盘下载",innerHTML:''},{type:"gird",title:"宫格",innerHTML:''},{type:"alert",title:"提示",innerHTML:''},{type:"clean",title:"清屏",innerHTML:''},{type:"download",title:"下载",innerHTML:''},{type:"fullScreen",title:"全屏/取消全屏",innerHTML:''},{type:"preview",title:"预览/取消预览",innerHTML:''},{type:"draft",title:"保存草稿",innerHTML:''},{type:"publish",title:"发布文章",innerHTML:''},{type:"about",title:"关于",innerHTML:''}];const Yd=new HyperDown,Zd=window.JoeConfig.playerAPI;function Ud(e){if(!window.JoeConfig.canPreview)return $(".cm-preview-content").html("1. 预览已默认关闭
2. 点击上方预览按钮启用预览
3. 若编辑器卡顿可尝试关闭预览");-1!==e.indexOf(" ")&&(e=e.replace(/ /g," ")),-1!==(e=(e=(e=Yd.makeHtml(e)).replace(/\:\:\(\s*(呵呵|哈哈|吐舌|太开心|笑眼|花心|小乖|乖|捂嘴笑|滑稽|你懂的|不高兴|怒|汗|黑线|泪|真棒|喷|惊哭|阴险|鄙视|酷|啊|狂汗|what|疑问|酸爽|呀咩爹|委屈|惊讶|睡觉|笑尿|挖鼻|吐|犀利|小红脸|懒得理|勉强|爱心|心碎|玫瑰|礼物|彩虹|太阳|星星月亮|钱币|茶杯|蛋糕|大拇指|胜利|haha|OK|沙发|手纸|香蕉|便便|药丸|红领巾|蜡烛|音乐|灯泡|开心|钱|咦|呼|冷|生气|弱|吐血|狗头)\s*\)/g,(function(e,t){return t=encodeURI(t).replace(/%/g,""),``}))).replace(/\:\@\(\s*(高兴|小怒|脸红|内伤|装大款|赞一个|害羞|汗|吐血倒地|深思|不高兴|无语|亲亲|口水|尴尬|中指|想一想|哭泣|便便|献花|皱眉|傻笑|狂汗|吐|喷水|看不见|鼓掌|阴暗|长草|献黄瓜|邪恶|期待|得意|吐舌|喷血|无所谓|观察|暗地观察|肿包|中枪|大囧|呲牙|抠鼻|不说话|咽气|欢呼|锁眉|蜡烛|坐等|击掌|惊喜|喜极而泣|抽烟|不出所料|愤怒|无奈|黑线|投降|看热闹|扇耳光|小眼睛|中刀)\s*\)/g,(function(e,t){return t=encodeURI(t).replace(/%/g,""),``}))).indexOf("{lamp")&&(e=e.replace(/{lamp\/}/g,'')),-1!==e.indexOf("{x}")&&(e=e.replace(/{x}/g,'')),-1!==e.indexOf("{ }")&&(e=e.replace(/{ }/g,'')),-1!==e.indexOf("{mtitle")&&(e=e.replace(/{mtitle([^}]*)\/}/g,"")),-1!==e.indexOf("{dplayer")&&(e=e.replace(/{dplayer([^}]*)\/}/g,'')),-1!==e.indexOf("{bilibili")&&(e=e.replace(/{bilibili([^}]*)\/}/g,"")),-1!==e.indexOf("{music-list")&&(e=e.replace(/{music-list([^}]*)\/}/g,"")),-1!==e.indexOf("{music")&&(e=e.replace(/{music([^}]*)\/}/g,"")),-1!==e.indexOf("{mp3")&&(e=e.replace(/{mp3([^}]*)\/}/g,"")),-1!==e.indexOf("{abtn")&&(e=e.replace(/{abtn([^}]*)\/}/g,"")),-1!==e.indexOf("{anote")&&(e=e.replace(/{anote([^}]*)\/}/g,"")),-1!==e.indexOf("{copy")&&(e=e.replace(/{copy([^}]*)\/}/g,"")),-1!==e.indexOf("{dotted")&&(e=e.replace(/{dotted([^}]*)\/}/g,"")),-1!==e.indexOf("{message")&&(e=e.replace(/{message([^}]*)\/}/g,"")),-1!==e.indexOf("{progress")&&(e=e.replace(/{progress([^}]*)\/}/g,"")),-1!==e.indexOf("{cloud")&&(e=e.replace(/{cloud([^}]*)\/}/g,"")),-1!==e.indexOf("{hide")&&(e=e.replace(/{hide[^}]*}([\s\S]*?){\/hide}/g,"")),-1!==e.indexOf("{card-default")&&(e=e.replace(/{card-default([^}]*)}([\s\S]*?){\/card-default}/g,'
')),-1!==e.indexOf("{callout")&&(e=e.replace(/{callout([^}]*)}([\s\S]*?){\/callout}/g,'
')),-1!==e.indexOf("{card-describe")&&(e=e.replace(/{card-describe([^}]*)}([\s\S]*?){\/card-describe}/g,'
')),-1!==e.indexOf("{tabs")&&(e=e.replace(/{tabs}([\s\S]*?){\/tabs}/g,'
')),-1!==e.indexOf("{card-list")&&(e=e.replace(/{card-list}([\s\S]*?){\/card-list}/g,'
')),-1!==e.indexOf("{timeline")&&(e=e.replace(/{timeline}([\s\S]*?){\/timeline}/g,'
')),-1!==e.indexOf("{collapse")&&(e=e.replace(/{collapse}([\s\S]*?){\/collapse}/g,'
')),-1!==e.indexOf("{alert")&&(e=e.replace(/{alert([^}]*)}([\s\S]*?){\/alert}/g,'
')),-1!==e.indexOf("{gird")&&(e=e.replace(/{gird([^}]*)}([\s\S]*?){\/gird}/g,'
')),$(".cm-preview-content").html(e),$(".cm-preview-content p:empty").remove(),Prism.highlightAll()}class Ed extends class{constructor(){$("body").append('\n\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
×
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t
\n\t\t'),$(".cm-modal__wrapper-footer--cancle, .cm-modal__wrapper-header--close").on("click",(()=>$(".cm-modal").removeClass("active"))),$(".cm-modal__wrapper-footer--confirm").on("click",(()=>{this.options.confirm(),$(".cm-modal").removeClass("active")}))}_openModal(e={}){this.options=Object.assign({title:"提示",innerHtml:"内容",hasFooter:!0,confirm:()=>{},handler:()=>{}},e),$(".cm-modal__wrapper-header--text").html(this.options.title),$(".cm-modal__wrapper-bodyer").html(this.options.innerHtml),this.options.hasFooter?$(".cm-modal__wrapper-footer").show():$(".cm-modal__wrapper-footer").hide(),$(".cm-modal").addClass("active"),this.options.handler()}_getLineCh(e){const t=e.state.selection.main.head;return t-e.state.doc.lineAt(t).from}_replaceSelection(e,t){e.dispatch(e.state.replaceSelection(t))}_setCursor(e,t){e.dispatch({selection:{anchor:t}})}_getSelection(e){return e.state.sliceDoc(e.state.selection.main.from,e.state.selection.main.to)}_insetAmboText(e,t){const n=e.state.selection.main.head,r=this._getSelection(e);this._replaceSelection(e,` ${t+r+t} `),""===r&&this._setCursor(e,n+t.length+1),e.focus()}_createTableLists(e,t,n="",r){$.ajax({url:t,dataType:"json",success:t=>{let i="",a="";for(let e in t){const r=t[e].split(" ");i+=`
${e}
`,a+=`
${r.map((e=>`
${e}
`)).join(" ")}
`}this._openModal({title:r,hasFooter:!1,innerHtml:`
${i}
${a}`,handler:()=>{$(".cm-modal__wrapper-bodyer .tabbar-item").on("click",(function(){const e=$(this),t=e.attr("data-show"),n=$(".cm-modal__wrapper-bodyer .tabbar");e.addClass("active").siblings().removeClass("active"),n.stop().animate({scrollLeft:e[0].offsetLeft-n[0].offsetWidth/2+e[0].offsetWidth/2-15}),$(".cm-modal__wrapper-bodyer .lists").removeClass("active"),$(".cm-modal__wrapper-bodyer .lists[data-show='"+t+"']").addClass("active")}));const t=this;$(".cm-modal__wrapper-bodyer .lists-item").on("click",(function(){const n=$(this).attr("data-text");t._replaceSelection(e,` ${n} `),$(".cm-modal").removeClass("active"),e.focus()}))}})}})}_updateScroller(e,t){const n=e.scrollTop/(e.scrollHeight-e.offsetHeight);t.scrollTop=n*(t.scrollHeight-t.offsetHeight)}handleFullScreen(e){e.toggleClass("active"),$("body").toggleClass("fullscreen"),$(".cm-container").toggleClass("fullscreen"),$(".cm-preview").width(0)}handlePublish(){$("#btn-submit").click()}handleUndo(e){js(e),e.focus()}handleRedo(e){Ls(e),e.focus()}handleIndent(e){this._replaceSelection(e," "),e.focus()}handleTime(e){const t=new Date,n=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,0),i=String(t.getDate()).padStart(2,0),a=String(t.getHours()).padStart(2,0),o=String(t.getMinutes()).padStart(2,0),s=String(t.getSeconds()).padStart(2,0),O=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"][t.getDay()],l=`${this._getLineCh(e)?"\n":""}${n}-${r}-${i} ${a}:${o}:${s} ${O}\n`;this._replaceSelection(e,l),e.focus()}handleHr(e){const t=(this._getLineCh(e)?"\n":"")+"\n------------\n\n";this._replaceSelection(e,t),e.focus()}handleClean(e){e.dispatch({changes:{from:0,to:e.state.doc.length,insert:""}}),e.focus()}handleOrdered(e){const t=this._getSelection(e);if(""===t){const t=(this._getLineCh(e)?"\n\n":"")+"1. ";this._replaceSelection(e,t)}else{const n=t.split("\n");for(let e=0,t=n.length;e ");else{const n=t.split("\n");for(let e=0,t=n.length;e "+n[e];const r=(this._getLineCh(e)?"\n":"")+n.join("\n");this._replaceSelection(e,r)}e.focus()}handleDownload(e){const t=$("#title").val()||"新文章",n=document.createElement("a");let r=new Blob([e.state.doc.toString()]);n.download=t+".md",n.href=URL.createObjectURL(r),n.click(),URL.revokeObjectURL(r)}handleTitle(e,t){const n=$(`\n\t\t\t
\n\t\t\t\t${t.innerHTML}\n\t\t\t\t
\n\t\t\t\t\t
H1
\n\t\t\t\t\t
H2
\n\t\t\t\t\t
H3
\n\t\t\t\t\t
H4
\n\t\t\t\t\t
H5
\n\t\t\t\t\t
H6
\n\t\t\t\t
\n\t\t\t
\n\t\t`);n.on("click",(function(e){e.stopPropagation(),$(this).toggleClass("active")}));const r=this;n.on("click",".cm-tools__dropdown-item",(function(t){t.stopPropagation();const i=$(this).attr("data-text");r._getLineCh(e)?r._replaceSelection(e,"\n\n"+i):r._replaceSelection(e,i),n.removeClass("active"),e.focus()})),$(document).on("click",(()=>n.removeClass("active"))),$(".cm-tools").append(n)}handleLink(e){this._openModal({title:"插入链接",innerHtml:'\n
\n \n \n
\n
\n \n \n
\n ',confirm:()=>{const t=$(".cm-modal input[name='title']").val()||"Test",n=$(".cm-modal input[name='url']").val()||"http://";this._replaceSelection(e,` [${t}](${n}) `),e.focus()}})}handleImage(e){this._openModal({title:"插入图片",innerHtml:'\n
\n \n \n
\n
\n \n \n
\n ',confirm:()=>{const t=$(".cm-modal input[name='title']").val()||"Test",n=$(".cm-modal input[name='url']").val()||"http://";this._replaceSelection(e,` ![${t}](${n}) `),e.focus()}})}handleTable(e){this._openModal({title:"插入表格",innerHtml:'\n
\n \n \n \n \n
\n ',confirm:()=>{let t=$(".cm-modal input[name='row']").val(),n=$(".cm-modal input[name='column']").val();isNaN(t)&&(t=3),isNaN(n)&&(n=3);let r="",i="",a="";for(let e=0;e\n \n \n \n
\n \n \n
\n ',confirm:()=>{const t=`{gird column="${$(".cm-modal input[name='column']").val()}" gap="${$(".cm-modal input[name='gap']").val()}"}\n{gird-item}\n 宫格内容一\n{/gird-item}\n{gird-item}\n 宫格内容二\n{/gird-item}\n{gird-item}\n 宫格内容三\n{/gird-item}\n{/gird}`;this._getLineCh(e)?this._replaceSelection(e,"\n\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCodeBlock(e){const t="rss+atom+ssml+mathml+svg+html+markup+css+clike+javascript+abap+abnf+actionscript+ada+agda+al+antlr4+apacheconf+apex+apl+applescript+aql+arduino+arff+asciidoc+aspnet+asm6502+autohotkey+autoit+bash+basic+batch+bbcode+birb+bison+bnf+brainfuck+brightscript+bro+bsl+c+csharp+cpp+cfscript+chaiscript+cil+clojure+cmake+cobol+coffeescript+concurnas+csp+coq+crystal+css-extras+csv+cypher+d+dart+dataweave+dax+dhall+diff+django+dns-zone-file+docker+dot+ebnf+editorconfig+eiffel+ejs+elixir+elm+etlua+erb+erlang+excel-formula+fsharp+factor+false+firestore-security-rules+flow+fortran+ftl+gml+gcode+gdscript+gedcom+gherkin+git+glsl+go+graphql+groovy+haml+handlebars+haskell+haxe+hcl+hlsl+http+hpkp+hsts+ichigojam+icon+icu-message-format+idris+ignore+inform7+ini+io+j+java+javadoc+javadoclike+javastacktrace+jexl+jolie+jq+jsdoc+js-extras+json+json5+jsonp+jsstacktrace+js-templates+julia+keyman+kotlin+kumir+latex+latte+less+lilypond+liquid+lisp+livescript+llvm+log+lolcode+lua+makefile+markdown+markup-templating+matlab+mel+mizar+mongodb+monkey+moonscript+n1ql+n4js+nand2tetris-hdl+naniscript+nasm+neon+nevod+nginx+nim+nix+nsis+objectivec+ocaml+opencl+openqasm+oz+parigp+parser+pascal+pascaligo+psl+pcaxis+peoplecode+perl+php+phpdoc+php-extras+plsql+powerquery+powershell+processing+prolog+promql+properties+protobuf+pug+puppet+pure+purebasic+purescript+python+qsharp+q+qml+qore+r+racket+jsx+tsx+reason+regex+rego+renpy+rest+rip+roboconf+robotframework+ruby+rust+sas+sass+scss+scala+scheme+shell-session+smali+smalltalk+smarty+sml+solidity+solution-file+soy+sparql+splunk-spl+sqf+sql+squirrel+stan+iecst+stylus+swift+t4-templating+t4-cs+t4-vb+tap+tcl+tt2+textile+toml+turtle+twig+typescript+typoscript+unrealscript+uri+v+vala+vbnet+velocity+verilog+vhdl+vim+visual-basic+warpscript+wasm+wiki+xeora+xml-doc+xojo+xquery+yaml+yang+zig".split("+").sort(((e,t)=>e.localeCompare(t))),n=sessionStorage.getItem("selectType")||"";let r="";t.forEach((e=>{r+=``})),this._openModal({title:"插入代码块",innerHtml:`\n
\n \n \n
\n `,confirm:()=>{const t=$(".cm-modal select[name='type']").val();if(!t)return;const n=`\`\`\`${t}\ncode here...\n\`\`\``;this._getLineCh(e)?this._replaceSelection(e,"\n\n"+n):this._replaceSelection(e,n),e.focus(),sessionStorage.setItem("selectType",t)}})}handleAbout(){this._openModal({title:"关于",hasFooter:!1,innerHtml:"\n
    \n
  • 短代码功能正在开发中...
  • \n
  • 仅支持网络图片粘贴上传(截图等)
  • \n
  • 本编辑器仅供Joe主题使用,未经允许不得移植至其他主题!
  • \n
\n "})}handleTask(e,t){const n=t?"{x}":"{ }";this._replaceSelection(e,` ${n} `),e.focus()}handleNetease(e,t){this._openModal({title:t?"网易云歌单":"网易云单首",innerHtml:`\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n `,confirm:()=>{const n=$(".cm-modal input[name='id']").val(),r=$(".cm-modal input[name='color']").val(),i=$(".cm-modal select[name='autoplay']").val(),a=`\n{${t?"music-list":"music"} id="${n}" color="${r}" ${"1"===i?'autoplay="autoplay"':""}/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+a):this._replaceSelection(e,a),e.focus()}})}handleBilibili(e){this._openModal({title:"BiliBili视频",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{bilibili bvid="${$(".cm-modal input[name='bvid']").val()}" page="${$(".cm-modal input[name='page']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleDplayer(e){this._openModal({title:"M3U8/MP4视频",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{dplayer src="${$(".cm-modal input[name='src']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleDraft(){$("#btn-save").click()}handleExpression(e){$.ajax({url:window.JoeConfig.expressionAPI,dataType:"json",success:t=>{let n="",r="";for(let e in t){const i=t[e];n+=`
${e}
`,r+=`
${i.map((t=>`
${"颜文字"===e?t.icon:``}
`)).join(" ")}
`}this._openModal({title:"普通表情",hasFooter:!1,innerHtml:`
${n}
${r}`,handler:()=>{$(".cm-modal__wrapper-bodyer .tabbar-item").on("click",(function(){const e=$(this).attr("data-show");$(this).addClass("active").siblings().removeClass("active"),$(".cm-modal__wrapper-bodyer .lists").removeClass("active"),$(".cm-modal__wrapper-bodyer .lists[data-show='"+e+"']").addClass("active")}));const t=this;$(".cm-modal__wrapper-bodyer .lists-item").on("click",(function(){const n=$(this).attr("data-text");t._replaceSelection(e,` ${n} `),$(".cm-modal").removeClass("active"),e.focus()}))}})}})}handleMtitle(e){this._openModal({title:"居中标题",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{mtitle title="${$(".cm-modal input[name='text']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleHtml(e){const t=(this._getLineCh(e)?"\n":"")+'!!!\n

居中

\n

居右

\n颜色大小\n!!!\n';this._replaceSelection(e,t),e.focus()}handleHide(e){const t=(this._getLineCh(e)?"\n\n":"\n")+"{hide}\n需要隐藏的内容\n{/hide}\n\n";this._replaceSelection(e,t),e.focus()}handleAbtn(e){this._openModal({title:"多彩按钮",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tfontawesome.dashgame.com\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=` {abtn icon="${$(".cm-modal input[name='icon']").val()}" color="${$(".cm-modal input[name='color']").val()}" href="${$(".cm-modal input[name='href']").val()}" radius="${$(".cm-modal input[name='radius']").val()}" content="${$(".cm-modal input[name='content']").val()}"/} `;this._replaceSelection(e,t),e.focus()}})}handleAnote(e){this._openModal({title:"便条按钮",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tfontawesome.dashgame.com\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=` {anote icon="${$(".cm-modal input[name='icon']").val()}" href="${$(".cm-modal input[name='href']").val()}" type="${$(".cm-modal select[name='type']").val()}" content="${$(".cm-modal input[name='content']").val()}"/} `;this._replaceSelection(e,t),e.focus()}})}handleDotted(e){this._openModal({title:"彩色虚线",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{dotted startColor="${$(".cm-modal input[name='startColor']").val()}" endColor="${$(".cm-modal input[name='endColor']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCardDefault(e){this._openModal({title:"默认卡片",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{card-default label="${$(".cm-modal input[name='label']").val()}" width="${$(".cm-modal input[name='width']").val()}"}\n卡片内容\n{/card-default}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleMessage(e){this._openModal({title:"消息提示",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{message type="${$(".cm-modal select[name='type']").val()}" content="${$(".cm-modal textarea[name='content']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleProgress(e){this._openModal({title:"进度条",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{progress percentage="${$(".cm-modal input[name='percentage']").val()}" color="${$(".cm-modal input[name='color']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCallout(e){this._openModal({title:"插入标注",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{callout color="${$(".cm-modal input[name='color']").val()}"}\n标注内容\n{/callout}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleMp3(e){this._openModal({title:"插入音乐",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{mp3 name="${$(".cm-modal input[name='name']").val()}" url="${$(".cm-modal input[name='url']").val()}" cover="${$(".cm-modal input[name='cover']").val()}" theme="${$(".cm-modal input[name='theme']").val()}" ${"1"===$(".cm-modal select[name='autoplay']").val()?'autoplay="autoplay"':""}/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleTabs(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{tabs}\n{tabs-pane label="标签一"}\n 标签一内容\n{/tabs-pane}\n{tabs-pane label="标签二"}\n 标签二内容\n{/tabs-pane}\n{/tabs}\n\n';this._replaceSelection(e,t),e.focus()}handleCardList(e){const t=(this._getLineCh(e)?"\n\n":"\n")+"{card-list}\n{card-list-item}\n 列表一内容\n{/card-list-item}\n{card-list-item}\n 列表二内容\n{/card-list-item}\n{/card-list}\n\n";this._replaceSelection(e,t),e.focus()}handleTimeline(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{timeline}\n{timeline-item color="#19be6b"}\n 正式上线\n{/timeline-item}\n{timeline-item color="#ed4014"}\n 删库跑路\n{/timeline-item}\n{/timeline}\n\n';this._replaceSelection(e,t),e.focus()}handleCardDescribe(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{card-describe title="卡片描述"}\n卡片内容\n{/card-describe}\n\n';this._replaceSelection(e,t),e.focus()}handleCopy(e){this._openModal({title:"复制文本",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{copy showText="${$(".cm-modal input[name='showText']").val()}" copyText="${$(".cm-modal textarea[name='copyText']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleLamp(e){const t=(this._getLineCh(e)?"\n\n":"\n")+"{lamp/}\n\n";this._replaceSelection(e,t),e.focus()}handleCollapse(e){const t=(this._getLineCh(e)?"\n\n":"\n")+'{collapse}\n{collapse-item label="折叠标题一" open}\n 折叠内容一\n{/collapse-item}\n{collapse-item label="折叠标题二"}\n 折叠内容二\n{/collapse-item}\n{/collapse}\n\n';this._replaceSelection(e,t),e.focus()}handleAlert(e){this._openModal({title:"警告提示",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=`\n{alert type="${$(".cm-modal select[name='type']").val()}"}\n警告提示\n{/alert}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+t):this._replaceSelection(e,t),e.focus()}})}handleCloud(e){this._openModal({title:"网盘下载",innerHtml:'\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n ',confirm:()=>{const t=$(".cm-modal select[name='type']").val(),n=`\n{cloud title="${$(".cm-modal input[name='title']").val()}" type="${t}" url="${$(".cm-modal input[name='url']").val()}" password="${$(".cm-modal input[name='password']").val()}"/}\n\n`;this._getLineCh(e)?this._replaceSelection(e,"\n"+n):this._replaceSelection(e,n),e.focus()}})}}{constructor(){super(),this.plugins=[lu,As(),go(),[Qi.inputHandler.of(Xo),Po],qi(),Gi,pd(),gd,wd()],this.keymaps=[{key:"Tab",run:({state:e,dispatch:t})=>e.selection.ranges.some((e=>!e.empty))?qs({state:e,dispatch:t}):(t(e.update(e.replaceSelection(" "))),!0),shift:zs}],this._isPasting=!1,this.init_ViewPort(),this.init_Editor(),this.init_Preview(),this.init_Tools(),this.init_Insert(),this.init_AutoSave()}init_ViewPort(){$('meta[name="viewport"]').length>0?$('meta[name="viewport"]').attr("content","width=device-width, user-scalable=no, initial-scale=1.0, shrink-to-fit=no, viewport-fit=cover"):$("head").append('')}init_Editor(){$("#text").before('\n\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t
\n\t\t'),Ud(null);let e=null,t=null;const n=new Qi({state:ke.create({doc:$("#text").val(),extensions:[...this.plugins,Nh({base:Yh,codeLanguages:Bh}),_i.of([...this.keymaps,...Zs,...Td,...rO,...To]),Qi.updateListener.of((n=>{n.docChanged&&e!==n.state.doc.toString()&&(e=n.state.doc.toString(),clearTimeout(t),t=setTimeout(Ud.bind(null,n.state.doc.toString()),350))})),Qi.domEventHandlers({paste:e=>{const t=e.clipboardData;if(!t||!t.items)return;const r=t.items;if(!r.length)return;let i=null;for(let t=0;t{const e=$.ajaxSettings.xhr();if(e.upload)return e.upload.addEventListener("progress",(e=>{let t=e.loaded/e.total*100;$(".cm-progress-left").width(t/2+"%"),$(".cm-progress-right").width(t/2+"%")}),!1),e},success:e=>{$(".cm-progress-left").width(0),$(".cm-progress-right").width(0),this._isPasting=!1;const t=`${super._getLineCh(n)?"\n":""}![${e[1].title}](${e[0]})\n`;super._replaceSelection(n,t),n.focus()},error:()=>{$(".cm-progress-left").width(0),$(".cm-progress-right").width(0),this._isPasting=!1}})},scroll:e=>{window.JoeConfig.canPreview&&e&&e.target&&"cm-scroller"===e.target.className&&(window.requestAnimationFrame?window.requestAnimationFrame((()=>super._updateScroller(e.target,document.querySelector(".cm-preview")))):super._updateScroller(e.target,document.querySelector(".cm-preview")))}})]})});$(".cm-mainer").prepend(n.dom),$("#text")[0].form&&$("#text")[0].form.addEventListener("submit",(()=>$("#text").val(n.state.doc.toString()))),this.cm=n}init_Preview(){const e=(e,t,n)=>{let r=t+(e-n);r<=0&&(r=0),r>=$(".cm-mainer").outerWidth()-16&&(r=$(".cm-mainer").outerWidth()-16),$(".cm-preview").width(r)};$(".cm-resize").on({mousedown:t=>{t.preventDefault(),t.stopPropagation();const n=$(".cm-preview").outerWidth(),r=t.clientX;return $(".cm-preview").addClass("move"),document.onmousemove=t=>{window.requestAnimationFrame?requestAnimationFrame((()=>e(r,n,t.clientX))):e(r,n,t.clientX)},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,$(".cm-preview").removeClass("move")},!1},touchstart:t=>{t.preventDefault(),t.stopPropagation();const n=$(".cm-preview").outerWidth(),r=t.originalEvent.targetTouches[0].clientX;return $(".cm-preview").addClass("move"),document.ontouchmove=t=>{window.requestAnimationFrame?requestAnimationFrame((()=>e(r,n,t.targetTouches[0].clientX))):e(r,n,t.targetTouches[0].clientX)},document.ontouchend=()=>{document.ontouchmove=null,document.ontouchend=null,$(".cm-preview").removeClass("move")},!1}})}init_Tools(){zd.forEach((e=>{if("title"===e.type)super.handleTitle(this.cm,e);else{const t=$(`
${e.innerHTML}
`);t.on("click",(n=>{switch(n.preventDefault(),e.type){case"fullScreen":super.handleFullScreen(t);break;case"publish":super.handlePublish();break;case"undo":super.handleUndo(this.cm);break;case"redo":super.handleRedo(this.cm);break;case"time":super.handleTime(this.cm);break;case"bold":super._insetAmboText(this.cm,"**");break;case"italic":super._insetAmboText(this.cm,"*");break;case"delete":super._insetAmboText(this.cm,"~~");break;case"code-inline":super._insetAmboText(this.cm,"`");break;case"indent":super.handleIndent(this.cm);break;case"hr":super.handleHr(this.cm);break;case"clean":super.handleClean(this.cm);break;case"ordered-list":super.handleOrdered(this.cm);break;case"unordered-list":super.handleUnordered(this.cm);break;case"quote":super.handleQuote(this.cm);break;case"download":super.handleDownload(this.cm);break;case"link":super.handleLink(this.cm);break;case"image":super.handleImage(this.cm);break;case"table":super.handleTable(this.cm);break;case"code-block":super.handleCodeBlock(this.cm);break;case"about":super.handleAbout();break;case"character":super._createTableLists(this.cm,JoeConfig.characterAPI,"星星符号","字符大全");break;case"emoji":super._createTableLists(this.cm,JoeConfig.emojiAPI,"表情","符号表情(需数据库支持)");break;case"task-no":super.handleTask(this.cm,!1);break;case"task-yes":super.handleTask(this.cm,!0);break;case"netease-list":super.handleNetease(this.cm,!0);break;case"netease-single":super.handleNetease(this.cm,!1);break;case"bilibili":super.handleBilibili(this.cm);break;case"dplayer":super.handleDplayer(this.cm);break;case"draft":super.handleDraft();break;case"expression":super.handleExpression(this.cm);break;case"mtitle":super.handleMtitle(this.cm);break;case"html":super.handleHtml(this.cm);break;case"abtn":super.handleAbtn(this.cm);break;case"anote":super.handleAnote(this.cm);break;case"dotted":super.handleDotted(this.cm);break;case"hide":super.handleHide(this.cm);break;case"card-default":super.handleCardDefault(this.cm);break;case"message":super.handleMessage(this.cm);break;case"progress":super.handleProgress(this.cm);break;case"callout":super.handleCallout(this.cm);break;case"mp3":super.handleMp3(this.cm);break;case"tabs":super.handleTabs(this.cm);break;case"card-list":super.handleCardList(this.cm);break;case"timeline":super.handleTimeline(this.cm);break;case"copy":super.handleCopy(this.cm);break;case"card-describe":super.handleCardDescribe(this.cm);break;case"lamp":super.handleLamp(this.cm);break;case"collapse":super.handleCollapse(this.cm);break;case"cloud":super.handleCloud(this.cm);break;case"gird":super.handleGird(this.cm);break;case"alert":super.handleAlert(this.cm);break;case"preview":t.toggleClass("active"),t.hasClass("active")?window.JoeConfig.canPreview=!0:window.JoeConfig.canPreview=!1,Ud(this.cm.state.doc.toString()),window.JoeConfig.canPreview&&super._updateScroller(document.querySelector(".cm-scroller"),document.querySelector(".cm-preview"))}})),$(".cm-tools").append(t)}}))}init_Insert(){Typecho.insertFileToEditor=(e,t,n)=>{const r=`${super._getLineCh(this.cm)?"\n":""}${n?"!":""}[${e}](${t})\n`;super._replaceSelection(this.cm,r),this.cm.focus()}}init_AutoSave(){if(1!==window.JoeConfig.autoSave)return;const e=$("#text")[0].form;let t=$(e).find('input[name="cid"]').val(),n=null,r=$(e).find('input[name="title"]').val(),i=$(e).find('textarea[name="text"]').val();setInterval((()=>{$(e).find('input[name="cid"]').val(t),$(e).find('textarea[name="text"]').val(this.cm.state.doc.toString());let a=$(e).find('input[name="title"]').val(),o=$(e).find('textarea[name="text"]').val();""!==a.trim()&&(r===a&&i===o||(r=a,i=o,$(".cm-autosave").addClass("active"),$.ajax({url:e.action,type:"POST",data:$(e).serialize()+"&do=save",dataType:"json",success:e=>{t=e.cid,n=setTimeout((()=>{$(".cm-autosave").removeClass("active"),clearTimeout(n)}),1e3)}})))}),5e3)}}function Id(e,t,n,r=0,i=0){null==t&&-1==(t=e.search(/[^\s\u00a0]/))&&(t=e.length);let a=i;for(let i=r;inew Ed));class Vd{constructor(e,t,n){this.string=e,this.tabSize=t,this.indentUnit=n,this.pos=0,this.start=0,this.lastColumnPos=0,this.lastColumnValue=0}eol(){return this.pos>=this.string.length}sol(){return 0==this.pos}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.post}eatSpace(){let e=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e}skipToEnd(){this.pos=this.string.length}skipTo(e){let t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0}backUp(e){this.pos-=e}column(){return this.lastColumnPosn?e.toLowerCase():e;return r(this.string.substr(this.pos,e.length))==r(e)?(!1!==t&&(this.pos+=e.length),!0):null}{let n=this.string.slice(this.pos).match(e);return n&&n.index>0?null:(n&&!1!==t&&(this.pos+=n[0].length),n)}}current(){return this.string.slice(this.start,this.pos)}}function Cd(e){if("object"!=typeof e)return e;let t={};for(let n in e){let r=e[n];t[n]=r instanceof Array?r.slice():r}return t}class Ad extends Ta{constructor(e){let t,n=Xa(e.languageData),r={token:(i=e).token,blankLine:i.blankLine||(()=>{}),startState:i.startState||(()=>!0),copyState:i.copyState||Cd,indent:i.indent||(()=>null),languageData:i.languageData||{}};var i;super(n,new class extends pa{createParse(e,n,r){return new Ld(t,e,n,r)}},function(e){let t=Bi.define({id:Md.length,name:"Document",props:[_a.add((()=>e))]});return Md.push(t),t}(n),[La.of(((e,t)=>this.getIndent(e,t)))]),t=this,this.streamParser=r,this.stateAfter=new Di({perNode:!0})}static define(e){return new Ad(e)}getIndent(e,t){let n=qa(e.state),r=n.resolve(t);for(;r&&r.type!=this.topNode;)r=r.parent;if(!r)return null;let i,a,o=Gd(this,n,0,r.from,t);if(o?(a=o.state,i=o.pos+1):(a=this.streamParser.startState(e.unit),i=0),t-i>1e4)return null;for(;i=r&&n+t.length<=i&&t.prop(e.stateAfter);if(a)return{state:e.streamParser.copyState(a),pos:n+t.length};for(let a=t.children.length-1;a>=0;a--){let o=t.children[a],s=n+t.positions[a],O=o instanceof Ji&&s=t.length)return t;i||t.type!=e.topNode||(i=!0);for(let a=t.children.length-1;a>=0;a--){let o,s=t.positions[a]+n,O=t.children[a];if(sn&&Gd(e,r.tree,0-r.offset,n,a);if(o&&(t=jd(e,r.tree,n+r.offset,o.pos+r.offset,!1)))return{state:o.state,tree:t}}return{state:e.streamParser.startState(r?Da(r):4),tree:Ji.empty}}(e,n,a,null==i?void 0:i.state);this.state=o,this.parsedPos=this.chunkStart=a+s.length,s.length&&(this.chunks.push(s),this.chunkPos.push(0)),i&&this.parsedPos=t?this.finish():e&&this.parsedPos>e.viewport.to?(e.skipUntilInView(this.parsedPos,t),this.finish()):null}stopAt(e){this.stoppedAt=e}lineAfter(e){let t=this.input.chunk(e);if(this.input.lineChunks)"\n"==t&&(t="");else{let e=t.indexOf("\n");e>-1&&(t=t.slice(0,e))}return e+t.length<=this.to?t:t.slice(0,this.to-e)}nextLine(){let e=this.parsedPos,t=this.lineAfter(e),n=e+t.length;for(let e=this.rangeIndex;;){let r=this.ranges[e].to;if(r>=n)break;if(t=t.slice(0,r-(n-t.length)),e++,e==this.ranges.length)break;let i=this.ranges[e].from,a=this.lineAfter(i);t+=a,n=i+a.length}return{line:t,end:n}}skipGapsTo(e,t,n){for(;;){let r=this.ranges[this.rangeIndex].to,i=e+t;if(n>0?r>i:r>=i)break;t+=this.ranges[++this.rangeIndex].from-r}return t}emitToken(e,t,n,r,i){if(this.ranges.length>1){t+=i=this.skipGapsTo(t,i,1);let e=this.chunk.length;n+=i=this.skipGapsTo(n,i,-1),r+=this.chunk.length-e}return this.chunk.push(e,t,n,r),i}parseLine(e){let{line:t,end:n}=this.nextLine(),r=0,{streamParser:i}=this.lang,a=new Vd(t,e?e.state.tabSize:4,e?Da(e.state):2);if(a.eol())i.blankLine(this.state,a.indentUnit);else for(;!a.eol();){let e=Nd(i.token,a,this.state);e&&(r=this.emitToken(Hd(e),this.parsedPos+a.start,this.parsedPos+a.pos,4,r))}this.parsedPos=n,this.parsedPost.start)return r}throw new Error("Stream parser failed to advance stream.")}const Dd=Object.create(null),Md=[Bi.none],Fd=new Hi(Md),Bd=[];function Hd(e){return e?Dd[e]||(Dd[e]=function(e){let t=null;for(let n of e.split(".")){let e=Ou[n];e?"function"==typeof e?t?t=e(t):Kd(n,`Modifier ${n} used at start of tag`):t?Kd(n,`Tag ${n} used as modifier`):t=e:Kd(n,`Unknown highlighting tag ${n}`)}if(!t)return 0;let n=e.replace(/ /g,"_"),r=Bi.define({id:Md.length,name:n,props:[zc({[n]:t})]});return Md.push(r),r.id}(e)):0}for(let[e,t]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","typeName"],["attribute","propertyName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])Dd[e]=Hd(t);function Kd(e,t){Bd.indexOf(e)>-1||Bd.push(e)}var Jd=Object.freeze({__proto__:null,StreamLanguage:Ad,StringStream:Vd});function ep(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57}function tp(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function np(e,t,n){for(let r=!1;;){if(e.next<0)return;if(e.next==t&&!r)return void e.advance();r=n&&!r&&92==e.next,e.advance()}}function rp(e,t){for(;95==e.next||ep(e.next);)null!=t&&(t+=String.fromCharCode(e.next)),e.advance();return t}function ip(e,t){for(;;){if(46==e.next){if(t)break;t=!0}else if(e.next<48||e.next>57)break;e.advance()}if(69==e.next||101==e.next)for(e.advance(),43!=e.next&&45!=e.next||e.advance();e.next>=48&&e.next<=57;)e.advance()}function ap(e){for(;!(e.next<0||10==e.next);)e.advance()}function op(e,t){for(let n=0;n!=&|~^/",specialVar:"?",identifierQuotes:'"',words:Op(cp,lp)};function hp(e){return new Rl((t=>{var n;let{next:r}=t;if(t.advance(),op(t.next,sp)){for(;op(t.next,sp);)t.advance();t.acceptToken(34)}else if(39==r||34==r&&e.doubleQuotedStrings)np(t,r,e.backslashEscapes),t.acceptToken(3);else if(35==r&&e.hashComments||47==r&&47==t.next&&e.slashComments)ap(t),t.acceptToken(1);else if(45!=r||45!=t.next||e.spaceAfterDashes&&32!=t.peek(2))if(47==r&&42==t.next){t.advance();for(let e=-1,n=1;!(t.next<0);)if(t.advance(),42==e&&47==t.next){if(n--,!n)break;e=-1}else 47==e&&42==t.next?(n++,e=-1):e=t.next;t.acceptToken(2)}else if(101!=r&&69!=r||39!=t.next)if(110!=r&&78!=r||39!=t.next||!e.charSetCasts){if(95==r&&e.charSetCasts)for(let n=0;;n++){if(39==t.next&&n>1){t.advance(),np(t,39,e.backslashEscapes),t.acceptToken(3);break}if(!ep(t.next))break;t.advance()}else if(40==r)t.acceptToken(7);else if(41==r)t.acceptToken(8);else if(123==r)t.acceptToken(9);else if(125==r)t.acceptToken(10);else if(91==r)t.acceptToken(11);else if(93==r)t.acceptToken(12);else if(59==r)t.acceptToken(13);else if(48==r&&(98==t.next||66==t.next)||(98==r||66==r)&&39==t.next){let e=39==t.next;for(t.advance();48==t.next||49==t.next;)t.advance();e&&39==t.next&&t.advance(),t.acceptToken(4)}else if(48==r&&(120==t.next||88==t.next)||(120==r||88==r)&&39==t.next){let e=39==t.next;for(t.advance();tp(t.next);)t.advance();e&&39==t.next&&t.advance(),t.acceptToken(4)}else if(46==r&&t.next>=48&&t.next<=57)ip(t,!0),t.acceptToken(4);else if(46==r)t.acceptToken(14);else if(r>=48&&r<=57)ip(t,!1),t.acceptToken(4);else if(op(r,e.operatorChars)){for(;op(t.next,e.operatorChars);)t.advance();t.acceptToken(15)}else if(op(r,e.specialVar))t.next==r&&t.advance(),function(e){if(39==e.next||34==e.next||96==e.next){let t=e.next;e.advance(),np(e,t,!1)}else rp(e)}(t),t.acceptToken(17);else if(op(r,e.identifierQuotes))np(t,r,!1),t.acceptToken(19);else if(58==r||44==r)t.acceptToken(16);else if(ep(r)){let i=rp(t,String.fromCharCode(r));t.acceptToken(null!==(n=e.words[i.toLowerCase()])&&void 0!==n?n:18)}}else t.advance(),np(t,39,e.backslashEscapes),t.acceptToken(3);else t.advance(),np(t,39,!0);else ap(t),t.acceptToken(1)}))}const dp=hp(up);function pp(e){let t=e.cursor.moveTo(e.from,-1);for(;/Comment/.test(t.name);)t.moveTo(t.from,-1);return t.node}function fp(e){let t=/^[`'"](.*)[`'"]$/.exec(e);return t?t[1]:e}function mp(e,t){return e?t.map((t=>Object.assign(Object.assign({},t),{label:e+t.label+e,apply:void 0}))):t}const gp=/^\w*$/,Qp=/^[`'"]?\w*[`'"]?$/;function $p(e,t,n){let r=Object.create(null);for(let t in e)r[t]=e[t].map((e=>"string"==typeof e?{label:e,type:"property"}:e));let i=(t||Object.keys(r).map((e=>({label:e,type:"type"})))).concat(n&&r[n]||[]);return e=>{let{parent:t,from:n,quoted:a,empty:o}=function(e,t){let n=qa(e).resolveInner(t,-1),r=!1;if("Identifier"==n.name||"QuotedIdentifier"==n.name){r=!1;let t=null,i=pp(n);if(i&&"."==i.name){let n=pp(i);(n&&"Identifier"==n.name||"QuotedIdentifier"==n.name)&&(t=fp(e.sliceDoc(n.from,n.to).toLowerCase()))}return{parent:t,from:n.from,quoted:"QuotedIdentifier"==n.name?e.sliceDoc(n.from,n.from+1):null}}if("."==n.name){let r=pp(n);if(r&&"Identifier"==r.name||"QuotedIdentifier"==r.name)return{parent:fp(e.sliceDoc(r.from,r.to).toLowerCase()),from:t,quoted:null}}else r=!0;return{parent:null,from:t,quoted:null,empty:r}}(e.state,e.pos);if(o&&!e.explicit)return null;let s=i;if(t){let e=r[t];if(!e)return null;s=e}return{from:n,to:a&&e.state.sliceDoc(e.pos,e.pos+1)==a?e.pos+1:void 0,options:mp(a,s),span:a?Qp:gp}}}function bp(e,t){let n=Object.keys(e).map((n=>({label:t?n.toUpperCase():n,type:21==e[n]?"type":20==e[n]?"keyword":"variable",boost:-1})));return zu(["QuotedIdentifier","SpecialVar","String","LineComment","BlockComment","."],qu(n))}let xp=Ll.deserialize({version:13,states:"%dQ]QQOOO#kQRO'#DQO#rQQO'#CuO%RQQO'#CvO%YQQO'#CwO%aQQO'#CxOOQQ'#DQ'#DQOOQQ'#C{'#C{O&lQRO'#CyOOQQ'#Ct'#CtOOQQ'#Cz'#CzQ]QQOOQOQQOOO&vQQO,59aO'RQQO,59aO'WQQO'#DQOOQQ,59b,59bO'eQQO,59bOOQQ,59c,59cO'lQQO,59cOOQQ,59d,59dO'sQQO,59dOOQQ-E6y-E6yOOQQ,59`,59`OOQQ-E6x-E6xOOQQ'#C|'#C|OOQQ1G.{1G.{O&vQQO1G.{OOQQ1G.|1G.|OOQQ1G.}1G.}OOQQ1G/O1G/OP'zQQO'#C{POQQ-E6z-E6zOOQQ7+$g7+$g",stateData:"(R~OrOSPOSQOS~ORUOSUOTUOUUOVROXSOZTO]XO^QO_UO`UOaPObPOcPOdUOeUOfUO~O^]ORtXStXTtXUtXVtXXtXZtX]tX_tX`tXatXbtXctXdtXetXftX~OqtX~P!dOa^Ob^Oc^O~ORUOSUOTUOUUOVROXSOZTO^QO_UO`UOa_Ob_Oc_OdUOeUOfUO~OW`O~P#}OYbO~P#}O[dO~P#}ORUOSUOTUOUUOVROXSOZTO^QO_UO`UOaPObPOcPOdUOeUOfUO~O]gOqmX~P%hOaiObiOciO~O^kO~OWtXYtX[tX~P!dOWlO~P#}OYmO~P#}O[nO~P#}O]gO~P#}O",goto:"#YuPPPPPPPPPPPPPPPPPPPPPPPPvzzzz!W![!b!vPPP!|TYOZeUORSTWZaceoT[OZQZORhZSWOZQaRQcSQeTZfWaceoQj]RqkeVORSTWZaceo",nodeNames:"⚠ LineComment BlockComment String Number Bool Null ( ) [ ] { } ; . Operator Punctuation SpecialVar Identifier QuotedIdentifier Keyword Type Builtin Script Statement CompositeIdentifier Parens Braces Brackets Statement",maxTerm:36,skippedNodes:[0,1,2],repeatNodeCount:3,tokenData:"RORO",tokenizers:[0,dp],topRules:{Script:[0,23]},tokenPrec:0}).configure({props:[Ha.add({Statement:oo()}),so.add({Statement:e=>({from:e.firstChild.to,to:e.to}),BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({Keyword:Ou.keyword,Type:Ou.typeName,Builtin:Ou.standard(Ou.name),Bool:Ou.bool,Null:Ou.null,Number:Ou.number,String:Ou.string,Identifier:Ou.name,QuotedIdentifier:Ou.special(Ou.string),SpecialVar:Ou.special(Ou.name),LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Operator:Ou.operator,"Semi Punctuation":Ou.punctuation,"( )":Ou.paren,"{ }":Ou.brace,"[ ]":Ou.squareBracket})]});class wp{constructor(e,t){this.dialect=e,this.language=t}get extension(){return this.language.extension}static define(e){let t=function(e,t,n,r){let i={};for(let t in up)i[t]=(e.hasOwnProperty(t)?e:up)[t];return t&&(i.words=Op(t,n||"",r)),i}(e,e.keywords,e.types,e.builtin),n=Wa.define({parser:xp.configure({tokenizers:[{from:dp,to:hp(t)}]}),languageData:{commentTokens:{line:"--",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}});return new wp(t,n)}}function kp(e,t=!1){return e.language.data.of({autocomplete:bp(e.dialect.words,t)})}function yp(e){return e.schema?(e.dialect||Pp).language.data.of({autocomplete:$p(e.schema,e.tables,e.defaultTable)}):[]}const Pp=wp.define({}),vp=wp.define({charSetCasts:!0,operatorChars:"+-*/<>=~!@#%^&|`?",specialVar:"",keywords:cp+"a abort abs absent access according ada admin aggregate alias also always analyse analyze array_agg array_max_cardinality asensitive assert assignment asymmetric atomic attach attribute attributes avg backward base64 begin_frame begin_partition bernoulli bit_length blocked bom c cache called cardinality catalog_name ceil ceiling chain char_length character_length character_set_catalog character_set_name character_set_schema characteristics characters checkpoint class class_origin cluster coalesce cobol collation_catalog collation_name collation_schema collect column_name columns command_function command_function_code comment comments committed concurrently condition_number configuration conflict connection_name constant constraint_catalog constraint_name constraint_schema contains content control conversion convert copy corr cost covar_pop covar_samp csv cume_dist current_catalog current_row current_schema cursor_name database datalink datatype datetime_interval_code datetime_interval_precision db debug defaults defined definer degree delimiter delimiters dense_rank depends derived detach detail dictionary disable discard dispatch dlnewcopy dlpreviouscopy dlurlcomplete dlurlcompleteonly dlurlcompletewrite dlurlpath dlurlpathonly dlurlpathwrite dlurlscheme dlurlserver dlvalue document dump dynamic_function dynamic_function_code element elsif empty enable encoding encrypted end_frame end_partition endexec enforced enum errcode error event every exclude excluding exclusive exp explain expression extension extract family file filter final first_value flag floor following force foreach fortran forward frame_row freeze fs functions fusion g generated granted greatest groups handler header hex hierarchy hint id ignore ilike immediately immutable implementation implicit import include including increment indent index indexes info inherit inherits inline insensitive instance instantiable instead integrity intersection invoker isnull k key_member key_type label lag last_value lead leakproof least length library like_regex link listen ln load location lock locked log logged lower m mapping matched materialized max max_cardinality maxvalue member merge message message_length message_octet_length message_text min minvalue mod mode more move multiset mumps name namespace nfc nfd nfkc nfkd nil normalize normalized nothing notice notify notnull nowait nth_value ntile nullable nullif nulls number occurrences_regex octet_length octets off offset oids operator options ordering others over overlay overriding owned owner p parallel parameter_mode parameter_name parameter_ordinal_position parameter_specific_catalog parameter_specific_name parameter_specific_schema parser partition pascal passing passthrough password percent percent_rank percentile_cont percentile_disc perform period permission pg_context pg_datatype_name pg_exception_context pg_exception_detail pg_exception_hint placing plans pli policy portion position position_regex power precedes preceding prepared print_strict_params procedural procedures program publication query quote raise range rank reassign recheck recovery refresh regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy regr_syy reindex rename repeatable replace replica requiring reset respect restart restore result_oid returned_cardinality returned_length returned_octet_length returned_sqlstate returning reverse routine_catalog routine_name routine_schema routines row_count row_number rowtype rule scale schema_name schemas scope scope_catalog scope_name scope_schema security selective self sensitive sequence sequences serializable server server_name setof share show simple skip slice snapshot source specific_name sqlcode sqlerror sqrt stable stacked standalone statement statistics stddev_pop stddev_samp stdin stdout storage strict strip structure style subclass_origin submultiset subscription substring substring_regex succeeds sum symmetric sysid system system_time t table_name tables tablesample tablespace temp template ties token top_level_count transaction_active transactions_committed transactions_rolled_back transform transforms translate translate_regex trigger_catalog trigger_name trigger_schema trim trim_array truncate trusted type types uescape unbounded uncommitted unencrypted unlink unlisten unlogged unnamed untyped upper uri use_column use_variable user_defined_type_catalog user_defined_type_code user_defined_type_name user_defined_type_schema vacuum valid validate validator value_of var_pop var_samp varbinary variable_conflict variadic verbose version versioning views volatile warning whitespace width_bucket window within wrapper xmlagg xmlattributes xmlbinary xmlcast xmlcomment xmlconcat xmldeclaration xmldocument xmlelement xmlexists xmlforest xmliterate xmlnamespaces xmlparse xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltext xmlvalidate yes",types:lp+"bigint int8 bigserial serial8 varbit bool box bytea cidr circle precision float8 inet int4 json jsonb line lseg macaddr macaddr8 money numeric path pg_lsn point polygon float4 int2 smallserial serial2 serial serial4 text without zone with timetz timestamptz tsquery tsvector txid_snapshot uuid xml"}),Sp="accessible algorithm analyze asensitive authors auto_increment autocommit avg avg_row_length binlog btree cache catalog_name chain change changed checkpoint checksum class_origin client_statistics coalesce code collations columns comment committed completion concurrent consistent contains contributors convert database databases day_hour day_microsecond day_minute day_second delay_key_write delayed delimiter des_key_file dev_pop dev_samp deviance directory disable discard distinctrow div dual dumpfile enable enclosed ends engine engines enum errors escaped even event events every explain extended fast field fields flush force found_rows fulltext grants handler hash high_priority hosts hour_microsecond hour_minute hour_second ignore ignore_server_ids import index index_statistics infile innodb insensitive insert_method install invoker iterate keys kill linear lines list load lock logs low_priority master master_heartbeat_period master_ssl_verify_server_cert masters max max_rows maxvalue message_text middleint migrate min min_rows minute_microsecond minute_second mod mode modify mutex mysql_errno no_write_to_binlog offline offset one online optimize optionally outfile pack_keys parser partition partitions password phase plugin plugins prev processlist profile profiles purge query quick range read_write rebuild recover regexp relaylog remove rename reorganize repair repeatable replace require resume rlike row_format rtree schedule schema_name schemas second_microsecond security sensitive separator serializable server share show slave slow snapshot soname spatial sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_no_cache sql_small_result ssl starting starts std stddev stddev_pop stddev_samp storage straight_join subclass_origin sum suspend table_name table_statistics tables tablespace terminated triggers truncate uncommitted uninstall unlock upgrade use use_frm user_resources user_statistics utc_date utc_time utc_timestamp variables views warnings xa xor year_month zerofill",_p=lp+"bool blob long longblob longtext medium mediumblob mediumint mediumtext tinyblob tinyint tinytext text bigint int1 int2 int3 int4 int8 float4 float8 varbinary varcharacter precision datetime year unsigned signed",Xp="charset clear connect edit ego exit go help nopager notee nowarning pager print prompt quit rehash source status system tee",Tp=wp.define({operatorChars:"*+-%<>!=&|^",charSetCasts:!0,doubleQuotedStrings:!0,hashComments:!0,spaceAfterDashes:!0,specialVar:"@?",identifierQuotes:"`",keywords:cp+"group_concat "+Sp,types:_p,builtin:Xp}),Rp=wp.define({operatorChars:"*+-%<>!=&|^",charSetCasts:!0,doubleQuotedStrings:!0,hashComments:!0,spaceAfterDashes:!0,specialVar:"@?",identifierQuotes:"`",keywords:cp+"always generated groupby_concat hard persistent shutdown soft virtual "+Sp,types:_p,builtin:Xp}),Wp=wp.define({keywords:cp+"trigger proc view index for add constraint key primary foreign collate clustered nonclustered declare exec go if use index holdlock nolock nowait paglock pivot readcommitted readcommittedlock readpast readuncommitted repeatableread rowlock serializable snapshot tablock tablockx unpivot updlock with",types:lp+"bigint smallint smallmoney tinyint money real text nvarchar ntext varbinary image cursor hierarchyid uniqueidentifier sql_variant xml table",builtin:"binary_checksum checksum connectionproperty context_info current_request_id error_line error_message error_number error_procedure error_severity error_state formatmessage get_filestream_transaction_context getansinull host_id host_name isnull isnumeric min_active_rowversion newid newsequentialid rowcount_big xact_state object_id",operatorChars:"*+-%<>!=^&|/",specialVar:"@"}),qp=wp.define({keywords:cp+"abort analyze attach autoincrement conflict database detach exclusive fail glob ignore index indexed instead isnull notnull offset plan pragma query raise regexp reindex rename replace temp vacuum virtual",types:lp+"bool blob long longblob longtext medium mediumblob mediumint mediumtext tinyblob tinyint tinytext text bigint int2 int8 year unsigned signed real",builtin:"auth backup bail binary changes check clone databases dbinfo dump echo eqp exit explain fullschema headers help import imposter indexes iotrace limit lint load log mode nullvalue once open output print prompt quit read restore save scanstats schema separator session shell show stats system tables testcase timeout timer trace vfsinfo vfslist vfsname width",operatorChars:"*+-%<>!=&|/~",identifierQuotes:'`"',specialVar:"@:?$"}),zp=wp.define({keywords:"add all allow alter and any apply as asc authorize batch begin by clustering columnfamily compact consistency count create custom delete desc distinct drop each_quorum exists filtering from grant if in index insert into key keyspace keyspaces level limit local_one local_quorum modify nan norecursive nosuperuser not of on one order password permission permissions primary quorum rename revoke schema select set storage superuser table three to token truncate ttl two type unlogged update use user users using values where with writetime infinity NaN",types:lp+"ascii bigint blob counter frozen inet list map static text timeuuid tuple uuid varint",slashComments:!0}),Yp=wp.define({keywords:cp+"abort accept access add all alter and any array arraylen as asc assert assign at attributes audit authorization avg base_table begin between binary_integer body boolean by case cast char char_base check close cluster clusters colauth column comment commit compress connect connected constant constraint crash create current currval cursor data_base database date dba deallocate debugoff debugon decimal declare default definition delay delete desc digits dispose distinct do drop else elseif elsif enable end entry escape exception exception_init exchange exclusive exists exit external fast fetch file for force form from function generic goto grant group having identified if immediate in increment index indexes indicator initial initrans insert interface intersect into is key level library like limited local lock log logging long loop master maxextents maxtrans member minextents minus mislabel mode modify multiset new next no noaudit nocompress nologging noparallel not nowait number_base object of off offline on online only open option or order out package parallel partition pctfree pctincrease pctused pls_integer positive positiven pragma primary prior private privileges procedure public raise range raw read rebuild record ref references refresh release rename replace resource restrict return returning returns reverse revoke rollback row rowid rowlabel rownum rows run savepoint schema segment select separate session set share snapshot some space split sql start statement storage subtype successful synonym tabauth table tables tablespace task terminate then to trigger truncate type union unique unlimited unrecoverable unusable update use using validate value values variable view views when whenever where while with work",builtin:"appinfo arraysize autocommit autoprint autorecovery autotrace blockterminator break btitle cmdsep colsep compatibility compute concat copycommit copytypecheck define describe echo editfile embedded escape exec execute feedback flagger flush heading headsep instance linesize lno loboffset logsource long longchunksize markup native newpage numformat numwidth pagesize pause pno recsep recsepchar release repfooter repheader serveroutput shiftinout show showmode size spool sqlblanklines sqlcase sqlcode sqlcontinue sqlnumber sqlpluscompatibility sqlprefix sqlprompt sqlterminator suffix tab term termout time timing trimout trimspool ttitle underline verify version wrap",types:lp+"ascii bfile bfilename bigserial bit blob dec number nvarchar nvarchar2 serial smallint string text uid varchar2 xml",operatorChars:"*/+-%<>!=~",doubleQuotedStrings:!0,charSetCasts:!0});var Zp=Object.freeze({__proto__:null,Cassandra:zp,MSSQL:Wp,MariaSQL:Rp,MySQL:Tp,PLSQL:Yp,PostgreSQL:vp,SQLDialect:wp,SQLite:qp,StandardSQL:Pp,keywordCompletion:kp,schemaCompletion:yp,sql:function(e={}){let t=e.dialect||Pp;return new Ga(t.language,[yp(e),kp(t,!!e.upperCaseKeywords)])}});const Up=new Rl((e=>{if(76==e.next||85==e.next?e.advance():117==e.next&&(e.advance(),56==e.next&&e.advance()),82!=e.next)return;if(e.advance(),34!=e.next)return;e.advance();let t="";for(;40!=e.next;){if(32==e.next||e.next<=13||41==e.next)return;t+=String.fromCharCode(e.next),e.advance()}for(e.advance();;){if(e.next<0)return e.acceptToken(1);if(41==e.next){let n=!0;for(let r=0;n&&r{if(62==e.next)62==e.peek(1)&&e.acceptToken(2,1);else{let t=!1,n=0;for(;;n++){if(e.next>=65&&e.next<=90)t=!0;else{if(e.next>=97&&e.next<=122)return;if(95!=e.next&&!(e.next>=48&&e.next<=57))break}e.advance()}t&&n>1&&e.acceptToken(3)}}),{extend:!0}),Ip={__proto__:null,bool:34,char:34,int:34,float:34,double:34,void:34,size_t:34,ssize_t:34,intptr_t:34,uintptr_t:34,charptr_t:34,int8_t:34,int16_t:34,int32_t:34,int64_t:34,uint8_t:34,uint16_t:34,uint32_t:34,uint64_t:34,char8_t:34,char16_t:34,char32_t:34,char64_t:34,const:68,volatile:70,restrict:72,_Atomic:74,mutable:76,constexpr:78,struct:82,__declspec:86,final:90,override:90,public:94,private:94,protected:94,virtual:154,extern:156,static:158,register:160,inline:162,__attribute__:166,__based:172,__restrict:174,__uptr:174,__sptr:174,_unaligned:174,__unaligned:174,noexcept:188,throw:192,template:248,typename:254,class:256,using:266,__cdecl:274,__clrcall:274,__stdcall:274,__fastcall:274,__thiscall:274,__vectorcall:274,case:284,default:286,if:298,else:304,switch:308,do:312,while:314,for:322,return:326,break:330,continue:334,goto:338,typedef:342,try:356,catch:360,namespace:366,static_assert:372,explicit:382,delete:392,operator:400,friend:420,union:422,enum:430,signed:434,unsigned:434,long:434,short:434,decltype:446,auto:448,sizeof:480,TRUE:734,true:734,FALSE:736,false:736,NULL:488,new:494,nullptr:508,this:510},Vp={__proto__:null,"<":139},Cp={__proto__:null,">":143},Ap={__proto__:null,operator:398,new:492,delete:500},Gp=Ll.deserialize({version:13,states:"$ArQ!QQVOOP&tOUOOO'fOWO'#CdO+PQUO'#CgO+ZQUO'#FdO-SQbO'#CwO-ZQUO'#CwO.yQUO'#JZO/QQUO'#CvO/]OpO'#DyO/eQ!dO'#DbOOQQ'#IV'#IVO/pQUO'#JxO1aQUO'#IZOOQQ'#IZ'#IZO4fQUO'#JlO7gQUO'#JlO9nQVO'#EZO:OQUO'#EZO:TQUOOO:]QVO'#EhO_,5>_O!VO!AqQVO,5>ZO!AxQbO,59cO!BWQVO'#EwOOQQ,5>R,5>RONYQVO,59VO!BhO`O,5:eO!BmQbO'#DcO!COQbO'#JaO!C^QbO,59|O!E`QUO'#CsO!GOQbO'#CwO!GTQUO'#CvO!JhQUO'#JZOOQQ-EOO#.XQUO,5;TO#.fQbO'#CwO#$wQUO'#EZO<}QUO'#EhO#.qQUO'#JpO!-wQUO'#EnO#/fQUO'#CtOOQQ,5;X,5;XO#2QQVO'#C{O#3oQUO'#K]O#5jQUO'#JsO#5qQUO'#JQO#6UQUO,5;YO#6ZQVO'#FpONYQVO'#HYO#8pQVO,5>^O?}QVO'#HrO#8zQUO,5>^O#8}QUO,5>^OOQQ,5>^,5>^O#9SQUO'#GdOOQR,5@k,5@kO#9[QUO,5@kO#9dQUO'#GfO#9lQUO,5;tO#:QQUO'#JyO#:YQUO,5;rO!'iQVO,5;|OOQR'#In'#InO#:_QVO,5qQVO,5;vOOQR,5;v,5;vOOQQ-ExQUO,5=zO#@xQUO'#JQO#BdQUO,5=}O#CQQUO'#EbO#DoQUO'#EcO#D|QUO'#EcO#EUQVO'#EdO#E`QUO'#EeO#E|QUO'#EfOOQQ'#Jr'#JrO#FdQUO,5>]OOQQ,5>],5>]O!-wQUO,59rO#FoQUO,5;wO!&zQUO,5:lOOQQ,5:o,5:oO#F|QUO,5;pO#GUQUO,5PO#6ZQVO'#FpOOQQ,5>P,5>PO$=ZQUO,5>PO$=`QUO,5>VO!5vQUO,5>VO$?cQUO,5>ZO$ApQVO,5>ZP$Aw{#tO,58|P$A|{#tO,58|P$BU{&jO,58|POOO,58|,58|POOO,5>k,5>kP$B^OSO,5>kOOOO-EYQUO,59gONYQVO'#ItO%>bQUO,5@wO!-wQUO'#IbO%>jQUO,5@_OOQQ1G0t1G0tOOQQ1G3x1G3xONYQVO1G3xO%>rQUO'#GeO%>zQUO'#KQOOQQ,5=O,5=OOOQR1G6V1G6VO%?VQUO,5=QO%?[QUO,5=RO%?aQVO'#EXO%FcQVO'#F[O%r,5>rOOQQ-EtOOQQ-E|,5>|OOQQ-E<`-E<`O''VQUO7+)dO''[QUO,5=PO#9SQUO'#IpO''jQUO,5@lOOQR1G2l1G2lOOQR1G2m1G2mO''uQUO'#JuO?}QVO'#HrO'(SQUO1G1_OOQQ1G1_1G1_O'(^QUO,5?TOOQQ,5?T,5?TOOQQ-EhQUO'#JnONYQVO'#EvOOQQ,59{,59{O'?VQUO,59{O%YO'IkQUO7+)aPOOO7+$S7+$SP'J[QUO'#K`P'JdQUO,5@yP'Ji{#tO7+$SO'JnQUO<},5>}OOQQ-EoO&/{QUO,5>oOOQQ-Ey,5>yOOQQ-E<]-E<]O(=wQUOG26UO!'iQVOG26UO(>OQUOG26UOOQRG26UG26UO!'iQVOG26fO(>TQUO<fQUO<kQUO<rQUO<XAN>XO(?zQUOAN>XO(@RQUOAN>XO%XO(@WQUO<VO)%jQVO,5>ZO)%qQbO,59cO)&PQbO,59cO)&_QbO,59cO!+xQVO,59VO)&mQUO'#CgO)(qQUO'#CgO)({QUO'#CgO)+^QUO'#CgO).TQUO'#CgO).eQUO'#CgO)/bQUO'#CgO)2hQUO'#CgO)2uQUO'#CgO)3PQUO,5=tO,qQbO'#CwO)3ZQbO'#CwO)3lQbO'#CwO)3}QbO'#CwO)4`QUO'#CvO)4kQUO,5:uO)5RQUO,5:uO)5RQUO,5:uO)5lQbO'#CwO)5wQbO'#CwO)6SQbO'#CwO)6_QbO'#CwO)5RQUO'#EZO)6jQUO'#EZODQQUO'#EiO)7qQUO'#EiO#3vQUO'#JsO!+xQVO'#HYO)8cQbO'#CwO)8qQbO'#CwO)9PQUO'#CvO)9UQUO'#CvO):tQUO'#JQO):{QUO,5=}O);zQUO'#EbO)=VQUO'#EfO)@SQUO,59pO)AzQUO,59pO)B[QUO,59pO)BcQUO,59pO$2wQUO,59pO$2wQUO,59pO)E]QUO,5=eO)GTQUO,5=eO)GeQUO,5=eO)GlQUO,5=eO$5dQUO,5=eO$5dQUO,5=eO)HuQUO,5=fO$8bQUO,5=fO$8bQUO,5=fO$8bQUO,5=fO)JOQUO,5=lO)LiQUO,5=lO)LyQUO,5=lO$:wQUO,5=lO)MQQUO,5>PO(C}QUO,5>VO)MeQUO,5>ZO)MrQUO'#CoO* hQUO1G3bO*#PQUO1G3bO*$tQUO1G3bO*${QUO1G3bO*&jQUO1G3bO*&qQUO1G3bO*(YQUO1G3bO*(gQUO1G3bO*(tQUO1G3bO**VQUO1G3bO(C}QUO1G3qO**jQUO1G3uO**wQUO1G.qO*+[QbO,59cO*+gQbO,59cO*+rQbO,59cO*+}QbO,59cO*,YQbO,59cO*,eQbO,59cO*,pQbO,59cO)4kQUO1G0aO*,{QUO1G0aO)5RQUO1G0aO)6jQUO1G0aO*-cQUO'#EaO*-yQUO1G0bO*/TQVO1G3jO*/[QUO,5:|O*0UQUO,5:|O*1RQUO,5;QO*3`QUO'#JZO*5aQUO1G/[O*7XQUO1G/[O*7iQUO1G/[O*7pQUO1G/[O*:jQUO1G3PO*SQUO1G3QO*@rQUO1G3WO*C]QUO1G3WO*CmQUO1G3WO*CtQVO1G3uO!+xQVO7+$[O*EeQUO'#CyO*EsQbO,59cO*CtQVO7+)aO)4kQUO7+%{O*,{QUO7+%{O*F|QUO7+%|O*G^QUO,5:{O!5vQUO,5:{O*GkQUO'#EbO*G{QUO7+)UO*HYQUO1G0hO*IVQVO1G6`O*IpQUO7+)aO*I}QUO<OO+%kQUO,5;TO#6ZQVO'#FpO+%uQUO'#JZO$2wQUO,59pO$5dQUO,5=eO$:wQUO,5=lO+&YQVO,5>ZO+&aQUO1G.pO+&hQbO'#CwO+&sQUO'#CrO+&xQVO1G3uO+'PQUO1G0aO+'ZQUO1G0bO+'bQUO,5@tO+'gQUO7+%{O'=bQUO'#EuO+'qQUO<cO'v'SO]xarxasxatxauxavxawxa}xa!Zxa#Qxa#Sxa'xxa(Vxa(Xxa(Yxa(Zxa!Qxa(hxa~O!S'TO|xaQxa!hxa~P)@mO!Sxa~P)@mO'vxalxarxasxatxauxavxawxa{xa!pxa!qxa!rxa!sxa!uxa!xxa#`xa'rxa~P)>cO},tO]%ma!S%ma!Z%ma!]%ma!^%ma!`%ma!b%ma!c%ma!e%ma!f%ma!g%ma!i%ma!j%ma'u%ma'w%ma'x%ma(Q%ma(V%ma(W%ma(X%ma(Y%ma(Z%ma!k%ma(h%ma~O'v'SO!Q%ma|%ma![%ma!Y%maQ%ma!h%ma~P)ClO'v'SO]%mar%mas%mat%mau%mav%maw%ma}%ma!Z%ma#Q%ma#S%ma'x%ma(V%ma(X%ma(Y%ma(Z%ma!Q%ma(h%ma~O!S'TO|%maQ%ma!h%ma~P)EvO!S%ma~P)EvO'v%mal%mar%mas%mat%mau%mav%maw%ma{%ma!p%ma!q%ma!r%ma!s%ma!u%ma!x%ma#`%ma'r%ma~P)ClO!S%na!]%na!^%na!`%na!b%na!c%na!e%na!f%na!g%na!i%na!j%na'u%na'w%na(W%na!k%na![%na!Y%na~P$5}O!S%ta!]%ta!^%ta!`%ta!b%ta!c%ta!e%ta!f%ta!g%ta!i%ta!j%ta'u%ta'w%ta'x%ta(W%ta!k%ta![%ta!Y%ta~P$8mO'v'SO]%tar%tas%tat%tau%tav%taw%ta}%ta!Z%ta#Q%ta#S%ta'x%ta(V%ta(X%ta(Y%ta(Z%ta!Q%ta(h%ta~O!S'TO|%taQ%ta!h%ta~P)K[O!S%ta~P)K[O!]7nO!^7eO!`7fO!j7mO'v&Xa~P$;YO'v&ca!k&ca(h&ca~P#NZO]cXlgXpiX!ScX~O]#pO!Z#aO!]7nO!`7fO'w#`O'x#`O(V#bO!b&Oi!c&Oi!e&Oi!f&Oi!g&Oi!i&Oi!j&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi(Y&Oi!k&Oi(h&Oi~O!^&Oi~P)NQO]#pO!Z#aO!]7nO'w#`O'x#`O!b&Oi!c&Oi!e&Oi!f&Oi!g&Oi!i&Oi!j&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi(Y&Oi!k&Oi(h&Oi~O!^&Oi!`&Oi(V&Oi~P* oO]#pO!Z#aO!]7nO!^7eO!`7fO!c7iO!e7kO!f7lO!g7lO!i7lO!j7mO'w#`O'x#`O(V#bO(Y#dO'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi!k&Oi(h&Oi~O!b7hO~P*#^O!b&Oi~P*#^O]#pO!Z#aO!]7nO!^7eO!`7fO!e7kO!f7lO!g7lO!i7lO!j7mO'w#`O'x#`O(V#bO!b&Oi!c&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi!k&Oi(h&Oi~O(Y#dO~P*%SO(Y&Oi~P*%SO]#pO!Z#aO!]7nO!^7eO!`7fO!j7mO'w#`O'x#`O(V#bO!b&Oi!c&Oi!e&Oi'u&Oi'v&Oi(Q&Oi(W&Oi(X&Oi(Y&Oi!k&Oi(h&Oi~O!f7lO!g7lO!i7lO~P*&xO!f&Oi!g&Oi!i&Oi~P*&xO!^7eO~P)NQO]#pO!Z#aO!]7nO!^7eO!`7fO!b7hO!c7iO!e7kO!f7lO!g7lO!i7lO!j7mO'w#`O'x#`O(V#bO(W#cO(X#cO(Y#dO~O'u&Oi'v&Oi(Q&Oi!k&Oi(h&Oi~P*({O'v&ci!k&ci(h&ci~P#NZO(Q#oO'u_i'v_i!k_i(h_i~P*({Od(kO#`(kO'y#qO~Od(kO#`(kO'y7qO~Od(kO#`(kO'y7vO~Od(kO#`(kO'y7uO~Od(kO#`(kO'y7pO~Od(kO#`(kO'y7rO~Od(kO#`(kO'y7tO~Or![Os![Ot![Ou![Ov![Ow![O~P)7qOr![Os![Ot![Ou![Ov![Ow![O~P!5vOr![Os![Ot![Ou![Ov![Ow![O})`O#Q)bO#S)cO'xP>k?XGp!!c!+W!3_P!;z!RPPPPPP!>oP!@iPPP!CVPP!EgP!G}!HR!HtP!HzPPPPP!H}P!H}PP!H}PPPPPPPP!IZ!LzPPPPP!L}P>S!N`PP>S#!y#%v#&T#'p#)gP#)gP#*V#*y#+m#*y#*y#*y#&T#&T#&T#,c#1aP#2P#&T#%v#%v#6w#6}>S>S>S#7Q#7e#9l#9t#9t#9{P#:]#:dPP#:d#:d#:k#9{P#:o#;`#;kP#;}#=w#>Q#>ZPP#>p#?Z#?w#@e#>pP#Ar#BOP#>pP#>pPP#BR#>p#>pP#>pP#>pP#>pP#>pP#EcP#Ev#Ev#Ev#Ev#>Z#>ZP#FTP#>Z#=wP#FX#FXP#Ff#=w#=w#I|P#Ja#Jl#Jr#JrP#=w#KhPP#=w#LS#LS!G}!G}!G}!G}!G}!G}PP!G}!>o!>oP#LVP#NS#Nj!>o!>o!>oPP#Np#Ns#Nv$ O9w6d$$]$&a$(R6dPP6d$)y6dP6d6d6dP6dPP$-U6dP$)y$-b6dPPPPPPPPPPP)UP$0m$0s$3w$4W$4^$5Z$5a$5w$6R$7a$8p$9O$9j$9p$:Q$:d$:l$:r$:|$;[$;e$;m$;s$ MacroName LineComment BlockComment PreprocDirective #include String EscapeSequence SystemLibString Identifier ArgumentList ( ConditionalExpression AssignmentExpression CallExpression PrimitiveType FieldExpression FieldIdentifier DestructorName TemplateMethod ScopedFieldIdentifier NamespaceIdentifier TemplateType TypeIdentifier ScopedTypeIdentifier ScopedNamespaceIdentifier :: NamespaceIdentifier TypeIdentifier TemplateArgumentList < TypeDescriptor const volatile restrict _Atomic mutable constexpr StructSpecifier struct MsDeclspecModifier __declspec ) VirtualSpecifier BaseClassClause Access , FieldDeclarationList { FieldDeclaration Attribute AttributeName Identifier AttributeArgs } [ ] UpdateOp ArithOp ArithOp ArithOp LogicOp BitOp BitOp BitOp CompareOp CompareOp CompareOp > CompareOp BitOp UpdateOp Number CharLiteral AttributeArgs virtual extern static register inline AttributeSpecifier __attribute__ PointerDeclarator MsBasedModifier __based MsPointerModifier FunctionDeclarator ParameterList ParameterDeclaration PointerDeclarator FunctionDeclarator Noexcept noexcept ThrowSpecifier throw TrailingReturnType AbstractPointerDeclarator AbstractFunctionDeclarator AbstractArrayDeclarator AbstractParenthesizedDeclarator AbstractReferenceDeclarator ArrayDeclarator ParenthesizedDeclarator ReferenceDeclarator ScopedIdentifier Identifier OperatorName TemplateFunction StructuredBindingDeclarator OptionalParameterDeclaration VariadicParameterDeclaration VariadicDeclarator ReferenceDeclarator ArrayDeclarator ParenthesizedDeclarator ReferenceDeclarator BitfieldClause InitializerList InitializerPair SubscriptDesignator FieldDesignator TemplateDeclaration template TemplateParameterList TypeParameterDeclaration typename class OptionalTypeParameterDeclaration VariadicTypeParameterDeclaration TemplateTemplateParameterDeclaration AliasDeclaration using Declaration InitDeclarator FunctionDefinition MsCallModifier CompoundStatement LinkageSpecification DeclarationList CaseStatement case default LabeledStatement StatementIdentifier ExpressionStatement CommaExpression IfStatement if ConditionClause Declaration else SwitchStatement switch DoStatement do while ParenthesizedExpression WhileStatement ForStatement for ReturnStatement return BreakStatement break ContinueStatement continue GotoStatement goto TypeDefinition typedef PointerDeclarator FunctionDeclarator ArrayDeclarator ParenthesizedDeclarator ForRangeLoop TryStatement try CatchClause catch ThrowStatement NamespaceDefinition namespace UsingDeclaration StaticAssertDeclaration static_assert ConcatenatedString TemplateInstantiation FunctionDefinition ExplicitFunctionSpecifier explicit FieldInitializerList FieldInitializer DefaultMethodClause DeleteMethodClause delete FunctionDefinition OperatorCast operator operator Declaration FunctionDefinition FunctionDefinition FunctionDefinition FunctionDefinition Declaration FunctionDefinition Declaration FriendDeclaration friend union AccessSpecifier UnionSpecifier EnumSpecifier enum SizedTypeSpecifier TypeSize EnumeratorList Enumerator ClassSpecifier DependentType Decltype decltype auto ParameterPackExpansion ParameterPackExpansion FieldIdentifier PointerExpression SubscriptExpression BinaryExpression ArithOp LogicOp BitOp UnaryExpression LogicOp BitOp UpdateExpression CastExpression SizeofExpression sizeof CompoundLiteralExpression True False NULL NewExpression new new NewDeclarator DeleteExpression delete LambdaExpression LambdaCaptureSpecifier ParameterPackExpansion nullptr this #define PreprocArg #if #ifdef #ifndef #else #endif #elif PreprocDirectiveName Macro Program",maxTerm:373,nodeProps:[[Di.group,-30,1,8,11,14,15,16,18,74,75,106,109,158,187,228,229,230,234,237,238,239,241,242,243,244,245,249,251,253,254,255,"Expression",-12,17,24,25,26,40,213,214,216,220,221,222,224,"Type",-16,138,141,144,146,148,153,155,159,160,162,164,166,168,176,177,181,"Statement"]],skippedNodes:[0,3,4,5,6,7,10,256,257,258,259,260,261,262,263,264,265,302],repeatNodeCount:36,tokenData:"%Dt&iR!UOX$eXY'mYZ,iZ]$e]^)k^p$epq'mqr-Prs.ost/^tu$euv!/wvw!1gwx!3Yxy!3wyz!4lz{!5a{|!6[|}!8Q}!O!8u!O!P!:n!P!Q!Nh!Q!R#1{!R![#Ek![!]$.n!]!^$0^!^!_$1R!_!`$;p!`!a$^#q#r%@S#r#s%@w#s~$e!l$nW(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!j%_U(]W&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W!b%vS&k!bOY%qZ#O%q#O#P&S#P~%q!b&XV&k!bOY%qYZ%qZ]%q]^&n^#O%q#O#P&S#P~%q!b&sT&k!bOY%qYZ%qZ#O%q#O#P&S#P~%q!d'ZU'pQ&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S&i'z^(]W'pQ'n$Z&k!b)T#SOX$eXY'mYZ(vZ]$e]^)k^p$epq'mqr$ers%Wsw$ewx'Sx#O$e#O#P*r#P~$e$Z({T'n$ZXY(vYZ(v]^(vpq(v#O#P)[$Z)_QYZ(v]^)e$Z)hPYZ(v%w)v^(]W'pQ'n$Z&k!bOX$eXY)kYZ(vZ]$e]^)k^p$epq)kqr$ers%Wsw$ewx'Sx#O$e#O#P*r#P~$e%m*wV&k!bOY%qYZ+^Z]%q]^,T^#O%q#O#P&S#P~%q%m+eY'n$Z&k!bOX%qXY+^YZ(vZ]%q]^+^^p%qpq+^q#O%q#O#P*r#P~%q%m,YT&k!bOY%qYZ+^Z#O%q#O#P&S#P~%q${,pT)Qp'n$ZXY(vYZ(v]^(vpq(v#O#P)[%s-[Y&TP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`-z!`#O$e#O#P&S#P~$e%s.VW!e$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&e.zU(]W'qQ'o$w&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W%w/gd(]W'pQ&k!bOX$eXY/^Zp$epq/^qr$ers%Wsw$ewx'Sx!c$e!c!}0u!}#O$e#O#P&S#P#T$e#T#W0u#W#X2S#X#Y:f#Y#]0u#]#^Hl#^#o0u#o~$e%w1Q`(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w2_b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y3g#Y#o0u#o~$e%w3rb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#Z4z#Z#o0u#o~$e%w5Vb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#]0u#]#^6_#^#o0u#o~$e%w6jb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#b0u#b#c7r#c#o0u#o~$e%w7}b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y9V#Y#o0u#o~$e%w9d`(]W'pQ&j$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w:qd(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#`0u#`#a}#Z#o0u#o~$e%w?[`(]W'pQ&k!b&q$Z&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w@ib(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#YAq#Y#o0u#o~$e%wBO`(]W'pQ&k!b&o$Z&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%wC]b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#XDe#X#o0u#o~$e%wDpb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#]0u#]#^Ex#^#o0u#o~$e%wFTb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#ZG]#Z#o0u#o~$e%wGj`(]W'pQ&k!b&p$Z&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%wHwd(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#ZJV#Z#b0u#b#c!'e#c#o0u#o~$e%wJdd(]W'pQ&l$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#XKr#X#b0u#b#c! y#c#o0u#o~$e%wK}b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#YMV#Y#o0u#o~$e%wMbb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#ZNj#Z#o0u#o~$e%wNw`(]W'pQ&m$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w!!Ub(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#X!#^#X#o0u#o~$e%w!#ib(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y!$q#Y#o0u#o~$e%w!$|b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#Y0u#Y#Z!&U#Z#o0u#o~$e%w!&c`(]W'pQ&n$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%w!'pb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#V0u#V#W!(x#W#o0u#o~$e%w!)Tb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#`0u#`#a!*]#a#o0u#o~$e%w!*hb(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#i0u#i#j!+p#j#o0u#o~$e%w!+{b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#W0u#W#X!-T#X#o0u#o~$e%w!-`b(]W'pQ&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#X0u#X#Y!.h#Y#o0u#o~$e%w!.u`(]W'pQV$Z&k!b&r$ZOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![0u![!c$e!c!}0u!}#O$e#O#P&S#P#R$e#R#S0u#S#T$e#T#o0u#o~$e%s!0SY(]W'pQ!`$V&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!0}W!k$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s!1rZ(Y$V(]W'pQ&k!bOY$eZr$ers%Wsv$evw!2ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!2pW(X$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%o!3eU(^S'pQ([$V&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S&i!4SW(]W'pQ]&_&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!}!4wW|a(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s!5lY(V$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!6g[(]W'pQ!^$V&k!bOY$eZr$ers%Wsw$ewx'Sx{$e{|!7]|!_$e!_!`!0r!`#O$e#O#P&S#P~$e%s!7hW(]W!]$V'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%w!8]W!Q$Z(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s!9Q](]W'pQ!^$V&k!bOY$eZr$ers%Wsw$ewx'Sx}$e}!O!7]!O!_$e!_!`!0r!`!a!9y!a#O$e#O#P&S#P~$e%s!:UW'x$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%w!:y[(]W'pQ'w$V&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P!;o!P!Q$e!Q![!=]![#O$e#O#P&S#P~$e%w!;xY(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P!r!P!Q$e!Q![#Ek![!g$e!g!h!HO!h!i!L}!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#U$e#U#V#Gt#V#X$e#X#Y!HO#Y#Z!L}#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j#l$e#l#m$*s#m~$e%k#4iW'pQ&k!bOY'SZr'Srs%qs!Q'S!Q![#5R![#O'S#O#P&S#P~'S%k#5[n'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx#4bx!O'S!O!P#7Y!P!Q'S!Q![#5R![!g'S!g!h!BQ!h!i!Fm!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#X'S#X#Y!BQ#Y#Z!Fm#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k#7cl'pQ!l$V&k!bOY'SZr'Srs%qs!Q'S!Q![#9Z![!c'S!c!g#9Z!g!h#<_!h!i#9Z!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X#9Z#X#Y#<_#Y#Z#9Z#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k#9dn'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx#;bx!Q'S!Q![#9Z![!c'S!c!g#9Z!g!h#<_!h!i#9Z!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X#9Z#X#Y#<_#Y#Z#9Z#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k#;i['pQ&k!bOY'SZr'Srs%qs!Q'S!Q![#9Z![!c'S!c!i#9Z!i#O'S#O#P&S#P#T'S#T#Z#9Z#Z~'S%k#}n(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![#@{![!c$e!c!g#@{!g!h#CU!h!i#@{!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#@{#X#Y#CU#Y#Z#@{#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%s#AWn(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#;bx!Q$e!Q![#@{![!c$e!c!g#@{!g!h#CU!h!i#@{!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#@{#X#Y#CU#Y#Z#@{#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%s#Car(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#;bx{$e{|!JR|!Q$e!Q![#@{![!c$e!c!g#@{!g!h#CU!h!i#@{!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#@{#X#Y#CU#Y#Z#@{#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j?Ar$e?Ar?As!JR?As~$e%s#Evn(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#4bx!O$e!O!P#>r!P!Q$e!Q![#Ek![!g$e!g!h!HO!h!i!L}!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#X$e#X#Y!HO#Y#Z!L}#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%s#G}](]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P#Hv!P!Q$e!Q!R#Io!R![#Ek![#O$e#O#P&S#P~$e%s#IPY(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![!=]![#O$e#O#P&S#P~$e%s#Izr(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx#4bx!O$e!O!P#>r!P!Q$e!Q![#Ek![!g$e!g!h!HO!h!i!L}!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#U$e#U#V#LU#V#X$e#X#Y!HO#Y#Z!L}#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j#l$e#l#m#L}#m~$e%s#L_Y(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![#Ek![#O$e#O#P&S#P~$e%s#MW^(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![#NS![!c$e!c!i#NS!i#O$e#O#P&S#P#T$e#T#Z#NS#Z~$e%s#N_p(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx$!cx!O$e!O!P#>r!P!Q$e!Q![#NS![!c$e!c!g#NS!g!h$(W!h!i#NS!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#NS#X#Y$(W#Y#Z#NS#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j~$e%k$!j['pQ&k!bOY'SZr'Srs%qs!Q'S!Q![$#`![!c'S!c!i$#`!i#O'S#O#P&S#P#T'S#T#Z$#`#Z~'S%k$#ip'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx$!cx!O'S!O!P#7Y!P!Q'S!Q![$#`![!c'S!c!g$#`!g!h$%m!h!i$#`!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X$#`#X#Y$%m#Y#Z$#`#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j~'S%k$%vt'pQ!l$V&k!bOY'SZr'Srs%qsw'Swx$!cx{'S{|!C{|!O'S!O!P#7Y!P!Q'S!Q![$#`![!c'S!c!g$#`!g!h$%m!h!i$#`!i!n'S!n!o!Fm!o!r'S!r!s!BQ!s!w'S!w!x!Fm!x#O'S#O#P&S#P#T'S#T#X$#`#X#Y$%m#Y#Z$#`#Z#`'S#`#a!Fm#a#d'S#d#e!BQ#e#i'S#i#j!Fm#j?Ar'S?Ar?As!C{?As~'S%s$(ct(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx$!cx{$e{|!JR|!O$e!O!P#>r!P!Q$e!Q![#NS![!c$e!c!g#NS!g!h$(W!h!i#NS!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#X#NS#X#Y$(W#Y#Z#NS#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j?Ar$e?Ar?As!JR?As~$e%s$*|a(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!O$e!O!P#Hv!P!Q$e!Q!R$,R!R![#NS![!c$e!c!i#NS!i#O$e#O#P&S#P#T$e#T#Z#NS#Z~$e%s$,^t(]W'pQ!l$V&k!bOY$eZr$ers%Wsw$ewx$!cx!O$e!O!P#>r!P!Q$e!Q![#NS![!c$e!c!g#NS!g!h$(W!h!i#NS!i!n$e!n!o!L}!o!r$e!r!s!HO!s!w$e!w!x!L}!x#O$e#O#P&S#P#T$e#T#U#NS#U#V#NS#V#X#NS#X#Y$(W#Y#Z#NS#Z#`$e#`#a!L}#a#d$e#d#e!HO#e#i$e#i#j!L}#j#l$e#l#m#L}#m~$e%w$.yY'v$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx![$e![!]$/i!]#O$e#O#P&S#P~$e%w$/tWl$Z(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s$0iW(Z$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&e$1^[p$V(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!^$2S!^!_$8|!_!`$:u!`!a$8X!a#O$2S#O#P$4h#P~$2S#^$2]Y(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!`$2S!`!a$8X!a#O$2S#O#P$4h#P~$2S#[$3SW(]W&k!bOY$2{Zw$2{wx$3lx!`$2{!`!a$6`!a#O$2{#O#P$4h#P~$2{#S$3qU&k!bOY$3lZ!`$3l!`!a$4T!a#O$3l#O#P$4h#P~$3l#S$4[SYp&k!bOY%qZ#O%q#O#P&S#P~%q#S$4mV&k!bOY$3lYZ$3lZ]$3l]^$5S^#O$3l#O#P$5n#P~$3l#S$5XV&k!bOY$3lYZ%qZ!`$3l!`!a$4T!a#O$3l#O#P$4h#P~$3l#S$5sX&k!bOY$3lYZ%qZ]$3l]^$5S^!`$3l!`!a$4T!a#O$3l#O#P$4h#P~$3l#[$6iUYp(]W&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W#U$7SW'pQ&k!bOY$6{Zr$6{rs$3ls!`$6{!`!a$7l!a#O$6{#O#P$4h#P~$6{#U$7uUYp'pQ&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S#^$8dWYp(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&e$9XZ(]W'pQ&k!b!j$VOY$2SZr$2Srs$2{sw$2Swx$6{x!_$2S!_!`$9z!`!a$8X!a#O$2S#O#P$4h#P~$2S&e$:VY!k$V(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!`$2S!`!a$8X!a#O$2S#O#P$4h#P~$2S&e$;QY!f$V(]W'pQ&k!bOY$2SZr$2Srs$2{sw$2Swx$6{x!`$2S!`!a$8X!a#O$2S#O#P$4h#P~$2S%s$;{Y(hP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`-z!`#O$e#O#P&S#P~$e%s$^!a#O$e#O#P&S#P~$e%s$=tW!f$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s$>iY(]W'pQ&k!b!j$VOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e!m$?dW'uP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e&i$@]`(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#o$?|#o~$e&i$An`(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers$Bpsw$ewx$C]x!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#o$?|#o~$e&c$ByU(]W'o$w&k!bOY%WZw%Wwx%qx#O%W#O#P&S#P~%W%k$CfU'pQ([$V&k!bOY'SZr'Srs%qs#O'S#O#P&S#P~'S%s$DTX!Z$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx!}$e!}#O$Dp#O#P&S#P~$e!m$D{W(SP(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%w$Ej_&k!bOY$FiYZ$F|Z]$Fi]^$Gu^!Q$Fi!Q![$H]![!w$Fi!w!x$Ia!x#O$Fi#O#P% e#P#i$Fi#i#j$Lc#j#l$Fi#l#m%!R#m~$Fi!l$FpSXY&k!bOY%qZ#O%q#O#P&S#P~%q%w$GVYXY'n$Z&k!bOX%qXY+^YZ(vZ]%q]^+^^p%qpq+^q#O%q#O#P*r#P~%q%w$G|TXY&k!bOY%qYZ+^Z#O%q#O#P&S#P~%q!l$HdUXY&k!bOY%qZ!Q%q!Q![$Hv![#O%q#O#P&S#P~%q!l$H}UXY&k!bOY%qZ!Q%q!Q![$Fi![#O%q#O#P&S#P~%q!l$IfY&k!bOY%qZ!Q%q!Q![$JU![!c%q!c!i$JU!i#O%q#O#P&S#P#T%q#T#Z$JU#Z~%q!l$JZY&k!bOY%qZ!Q%q!Q![$Jy![!c%q!c!i$Jy!i#O%q#O#P&S#P#T%q#T#Z$Jy#Z~%q!l$KOY&k!bOY%qZ!Q%q!Q![$Kn![!c%q!c!i$Kn!i#O%q#O#P&S#P#T%q#T#Z$Kn#Z~%q!l$KsY&k!bOY%qZ!Q%q!Q![$Lc![!c%q!c!i$Lc!i#O%q#O#P&S#P#T%q#T#Z$Lc#Z~%q!l$LhY&k!bOY%qZ!Q%q!Q![$MW![!c%q!c!i$MW!i#O%q#O#P&S#P#T%q#T#Z$MW#Z~%q!l$M]Y&k!bOY%qZ!Q%q!Q![$M{![!c%q!c!i$M{!i#O%q#O#P&S#P#T%q#T#Z$M{#Z~%q!l$NQY&k!bOY%qZ!Q%q!Q![$Np![!c%q!c!i$Np!i#O%q#O#P&S#P#T%q#T#Z$Np#Z~%q!l$NuY&k!bOY%qZ!Q%q!Q![$Fi![!c%q!c!i$Fi!i#O%q#O#P&S#P#T%q#T#Z$Fi#Z~%q!l% lVXY&k!bOY%qYZ%qZ]%q]^&n^#O%q#O#P&S#P~%q!l%!WY&k!bOY%qZ!Q%q!Q![%!v![!c%q!c!i%!v!i#O%q#O#P&S#P#T%q#T#Z%!v#Z~%q!l%!{Y&k!bOY%qZ!Q%q!Q![%#k![!c%q!c!i%#k!i#O%q#O#P&S#P#T%q#T#Z%#k#Z~%q!l%#rYXY&k!bOY%qZ!Q%q!Q![%#k![!c%q!c!i%#k!i#O%q#O#P&S#P#T%q#T#Z%#k#Z~%q%w%$mX![#u(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P#Q%%Y#Q~$e#Q%%eW(_d(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e%s%&YY(]W'pQ&k!b!c$VOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P~$e&i%'Xb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#d$?|#d#e%(a#e#o$?|#o~$e&i%(pb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#X$?|#X#Y%)x#Y#o$?|#o~$e&i%*Xb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#f$?|#f#g%+a#g#o$?|#o~$e&i%+pa(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#U%,u#U#o$?|#o~$e&i%-Ub(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#h$?|#h#i%.^#i#o$?|#o~$e&i%.mb(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#c$?|#c#d%/u#d#o$?|#o~$e&i%0Ub(]W'pQ!W$U'rq'yS&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![$?|![!c$e!c!}$?|!}#O$e#O#P&S#P#R$e#R#S$?|#S#T$e#T#f$?|#f#g%1^#g#o$?|#o~$e&i%1ms(]W'pQ!W$U'rq'yS&k!bOY$eZq$eqr%3zrs%Wsu$euv%3zvw%5jwx'Sxy%6hyz$ez{%3z{|%3z|}$e}!O%7a!O!P$e!P!Q%3z!Q![$?|![!^$e!^!_%8_!_!`%3z!`!a%9]!a!c$e!c!}$?|!}#O%:Z#O#P&S#P#Q$e#Q#R%3z#R#S$?|#S#T$e#T#o$?|#o#p$e#p#q%;P#q#r$e#r#s%4u#s~$e!q%4VY(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`#O$e#O#P&S#P~$e!q%5QW(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!q%5uZ(]W'pQ#`T&k!bOY$eZr$ers%Wsv$evw%4uwx'Sx!_$e!_!`%4u!`#O$e#O#P&S#P~$e!q%6qY(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sxy$eyz%4uz#O$e#O#P&S#P~$e!q%7lZ(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`!a%4u!a#O$e#O#P&S#P~$e!q%8jZ(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!^$e!^!_%3z!_!`%4u!`#O$e#O#P&S#P~$e!q%9hZ(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`!a%3z!a#O$e#O#P&S#P~$e!q%:dX(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P#Q%4u#Q~$e!q%;[[(]W'pQ#`T&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`%4u!`#O$e#O#P&S#P#p$e#p#q%4u#q~$e&i%i[(]W'pQ!b$V&k!bOY$eZr$ers%Wsw$ewx'Sx!_$e!_!`!0r!`#O$e#O#P&S#P#p$e#p#q%?_#q~$e%s%?jW(W$V(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!}%@_W!Ya(]W'pQ&k!bOY$eZr$ers%Wsw$ewx'Sx#O$e#O#P&S#P~$e!q%ASa(]W'pQ&UP&k!bOX$eXY%BXZp$epq%BXqr$ers%Wsw$ewx'Sx!c$e!c!}%Cg!}#O$e#O#P&S#P#R$e#R#S%Cg#S#T$e#T#o%Cg#o~$e!q%Bba(]W'pQ&k!bOX$eXY%BXZp$epq%BXqr$ers%Wsw$ewx'Sx!c$e!c!}%Cg!}#O$e#O#P&S#P#R$e#R#S%Cg#S#T$e#T#o%Cg#o~$e!q%Cr`(]W'pQdT&k!bOY$eZr$ers%Wsw$ewx'Sx!Q$e!Q![%Cg![!c$e!c!}%Cg!}#O$e#O#P&S#P#R$e#R#S%Cg#S#T$e#T#o%Cg#o~$e",tokenizers:[Up,Ep,0,1,2,3,4,5,6,7],topRules:{Program:[0,266]},dynamicPrecedences:{84:1,91:1,98:1,104:-10,105:1,110:-1,116:-10,117:1,172:1,175:-10,221:-1,225:2,226:2,265:-10,319:3,363:1,364:3,365:1,366:1},specialized:[{term:310,get:e=>Ip[e]||-1},{term:32,get:e=>Vp[e]||-1},{term:70,get:e=>Cp[e]||-1},{term:317,get:e=>Ap[e]||-1}],tokenPrec:22135}),jp=Wa.define({parser:Gp.configure({props:[Ha.add({IfStatement:oo({except:/^\s*({|else\b)/}),TryStatement:oo({except:/^\s*({|catch)\b/}),LabeledStatement:ao,CaseStatement:e=>e.baseIndent+e.unit,BlockComment:()=>-1,Statement:oo({except:/^{/})}),so.add({"DeclarationList CompoundStatement EnumeratorList FieldDeclarationList InitializerList":Oo,BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({"typedef struct union enum class typename decltype auto template operator friend noexcept namespace using __attribute__ __declspec __based":Ou.definitionKeyword,"extern MsCallModifier MsPointerModifier extern static register inline const volatile restrict _Atomic mutable constexpr virtual explicit VirtualSpecifier Access":Ou.modifier,"if else switch for while do case default return break continue goto throw try catch":Ou.controlKeyword,"new sizeof delete static_assert":Ou.operatorKeyword,"NULL nullptr":Ou.null,this:Ou.self,"True False":Ou.bool,"TypeSize PrimitiveType":Ou.standard(Ou.typeName),TypeIdentifier:Ou.typeName,FieldIdentifier:Ou.propertyName,"CallExpression/FieldExpression/FieldIdentifier":Ou.function(Ou.propertyName),StatementIdentifier:Ou.labelName,Identifier:Ou.variableName,"CallExpression/Identifier":Ou.function(Ou.variableName),"CallExpression/ScopedIdentifier/Identifier":Ou.function(Ou.variableName),DestructorName:Ou.name,NamespaceIdentifier:Ou.namespace,OperatorName:Ou.operator,ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,AssignOp:Ou.definitionOperator,UpdateOp:Ou.updateOperator,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Number:Ou.number,String:Ou.string,"RawString SystemLibString":Ou.special(Ou.string),CharLiteral:Ou.character,EscapeSequence:Ou.escape,PreProcArg:Ou.meta,"PreprocDirectiveName #include #ifdef #ifndef #if #define #else #endif #elif":Ou.processingInstruction,MacroName:Ou.special(Ou.name),"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,"< >":Ou.angleBracket,". ->":Ou.derefOperator,", ;":Ou.separator})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\})$/}});var Lp=Object.freeze({__proto__:null,cpp:function(){return new Ga(jp)},cppLanguage:jp});const Np={__proto__:null,true:34,false:34,null:40,void:44,byte:46,short:46,int:46,long:46,char:46,float:46,double:46,boolean:46,extends:60,super:62,class:74,this:76,new:82,public:98,protected:100,private:102,abstract:104,static:106,final:108,strictfp:110,default:112,synchronized:114,native:116,transient:118,volatile:120,throws:148,implements:158,interface:164,enum:174,instanceof:234,open:263,module:265,requires:270,transitive:272,exports:274,to:276,opens:278,uses:280,provides:282,with:284,package:288,import:292,if:304,else:306,while:310,for:314,var:321,assert:328,switch:332,case:338,do:342,break:346,continue:350,return:354,throw:360,try:364,catch:368,finally:376},Dp=Ll.deserialize({version:13,states:"# rQ]QPOOO&qQQO'#HYO(uQQO'#CbOOQO'#Cb'#CbO(|QPO'#CaOOQO'#H_'#H_OOQO'#Ct'#CtO*iQPO'#D^O+SQQO'#HfOOQO'#Hf'#HfO-hQQO'#HaO-oQQO'#HaOOQO'#Ha'#HaOOQO'#H`'#H`O/pQPO'#DTO/}QPO'#GjO2uQPO'#D^O2|QPO'#DyO(|QPO'#EZO3oQPO'#EZOOQO'#DU'#DUO4}QQO'#H]O7UQQO'#EdO7]QPO'#EcO7bQPO'#EeOOQO'#H^'#H^O5eQQO'#H^O8eQQO'#FfO8lQPO'#EvO8qQPO'#E{O8qQPO'#E}OOQO'#H]'#H]OOQO'#HU'#HUOOQO'#Ge'#GeOOQO'#HT'#HTO:OQPO'#FgOOQO'#HS'#HSOOQO'#Gd'#GdQ]QPOOOOQO'#Hl'#HlO:TQPO'#HlO:YQPO'#DzO:YQPO'#EUO:YQPO'#EPO:bQPO'#HiO:sQQO'#EeO(|QPO'#C`O:{QPO'#C`O(|QPO'#FaO;QQPO'#FcO;]QPO'#FiO;]QPO'#FlO:YQPO'#FqO;bQPO'#FnO8qQPO'#FuO;]QPO'#FwO]QPO'#F|O;gQPO'#GOO;rQPO'#GQO;}QPO'#GSO;]QPO'#GUO8qQPO'#GVOW,5>WO!$iQPO,5:fO!$wQPO,5:pO!%PQPO,5:kO!%[QPO,5>TOKpQPO,5>TO! bQPO,59UO!%gQQO,58zO!%oQQO,5;{O!%wQQO,5;}O(|QPO,5;}O8qQPO'#DTO]QPO,5YO!-jQPO,5:VO:YQPO'#GlO!-qQPO,5>XOOQO1G1w1G1wOOQO1G.w1G.wO!.[QPO'#CxO!.zQPO'#HfO!/UQPO'#CyO!/dQPO'#HeO!/lQPO,59cOOQO1G.{1G.{OEPQPO1G.{O!0SQPO,59dO!0aQQO'#HYO!0rQQO'#CbOOQO,5:a,5:aO:YQPO,5:bOOQO,5:`,5:`O!1TQQO,5:`OOQO1G/Z1G/ZO!1YQPO,5:aO!1kQPO'#GoO!2OQPO,5>aOOQO1G/y1G/yO!2WQPO'#DuO!2iQPO'#D^O!2pQPO1G/yO!!aQPO'#GmO!2uQPO1G1WO8qQPO1G1WO:YQPO'#GuO!2}QPO,5>hOOQO1G0}1G0}OOQO1G0P1G0PO!3VQPO'#E[OOQO1G0a1G0aO!3vQPO1G1wON}QPO1G0aO!$iQPO1G0QO!$wQPO1G0[O!%PQPO1G0VOOQO1G/[1G/[O!3{QQO1G.pO7]QPO1G0iO(|QPO1G0iO:bQPO'#HiO!5oQQO1G.pOOQO1G.p1G.pO!5tQQO1G0hOOQO1G0k1G0kO!5{QPO1G0kO!6WQQO1G.oO!6nQQO'#HjO!6{QPO,59rO!8[QQO1G0oO!9sQQO1G0oO!;RQQO1G0oO!;`QQO1G0oO!aQQO1G0|OOQO1G0|1G0|OOQO1G1m1G1mO! VQPO'#DpO!@bQPO'#DZO!!aQPO'#D{O!!aQPO'#D|OOQO1G0Q1G0QO!@iQPO1G0QO!@nQPO1G0QO!@vQPO1G0QO!ARQPO'#EWOOQO1G0[1G0[O!AfQPO1G0[O!AkQPO'#ESO!!aQPO'#EROOQO1G0V1G0VO!BeQPO1G0VO!BjQPO1G0VO!BrQPO'#EgO!ByQPO'#EgOOQO'#Gt'#GtO!CRQQO1G0lO!DrQQO1G3oO7]QPO1G3oO!FqQPO'#FVOOQO1G.f1G.fOOQO1G1g1G1gO!FxQPO1G1iOOQO1G1i1G1iO!GTQQO1G1iO!G]QPO1G1oOOQO1G1r1G1rO)UQPO'#D^O+SQQO,5<`O!KQQPO,5<`O!KcQPO,5<[O!KjQPO,5<[OOQO1G1t1G1tOOQO1G1y1G1yOOQO1G1{1G1{O8qQPO1G1{O# ZQPO'#FyOOQO1G1}1G1}O;]QPO1G2SOOQO1G2U1G2UOOQO1G2W1G2WOOQO1G2Y1G2YOOQO1G2[1G2[OOQO1G2]1G2]O# bQQO'#HYO#!]QQO'#CbO+SQQO'#HfO##WQQOOO##tQQO'#EdO##cQQO'#H^OKpQPO'#GcO##{QPO,5<|OOQO'#G|'#G|O#$TQPO1G2_O#(OQPO'#GZOPOOQO1G.}1G.}OOQO7+$g7+$gOOQO1G/z1G/zO#0WQQO1G/zOOQO1G/|1G/|O#0]QPO1G/zOOQO1G/{1G/{O:YQPO1G/|OOQO,5=Z,5=ZOOQO-E:m-E:mOOQO7+%e7+%eOOQO,5=X,5=XOOQO-E:k-E:kO8qQPO7+&rOOQO7+&r7+&rOOQO,5=a,5=aOOQO-E:s-E:sO#0bQPO'#ETO#0pQPO'#ETOOQO'#Gs'#GsO#1XQPO,5:vOOQO,5:v,5:vOOQO7+'c7+'cOOQO7+%{7+%{OOQO7+%l7+%lO!@iQPO7+%lO!@nQPO7+%lO!@vQPO7+%lOOQO7+%v7+%vO!AfQPO7+%vOOQO7+%q7+%qO!BeQPO7+%qO!BjQPO7+%qOOQO7+&T7+&TOOQO'#Ed'#EdO7]QPO7+&TO7]QPO,5>TO#1xQPO7+$[OOQO7+&S7+&SOOQO7+&V7+&VO8qQPO'#GhO#2WQPO,5>UOOQO1G/^1G/^O8qQPO7+&jO#2cQQO,59dO#3fQPO'#DqO! VQPO'#DqO#3qQPO'#HrO#3yQPO,5:[O#4dQQO'#HbO#5PQQO'#CtO! SQPO'#HqO#5oQPO'#DoO#5yQPO'#HqO#6[QPO'#DoO#6dQPO'#HzO#6iQPO'#E_OOQO'#Hk'#HkOOQO'#Gi'#GiO#6qQPO,59uOOQO,59u,59uO#6xQPO'#HlOOQO,5:g,5:gO#8`QPO'#HwOOQO'#EO'#EOOOQO,5:h,5:hO#8kQPO'#EXO:YQPO'#EXO#8|QPO'#HxO#9XQPO,5:rO! SQPO'#HqO!!aQPO'#HqO#9aQPO'#DoOOQO'#Gq'#GqO#9hQPO,5:nOOQO,5:n,5:nOOQO,5:m,5:mOOQO,5;R,5;RO#:bQQO,5;RO#:iQPO,5;ROOQO-E:r-E:rOOQO7+&W7+&WOOQO7+)Z7+)ZO#:pQQO7+)ZOOQO'#Gx'#GxO#<^QPO,5;qOOQO,5;q,5;qO#PQPO'#HlO8qQPO'#FzO#>XQPO7+'nO#>^QPO,5<}O! SQPO,5<}O#>cQPO1G2hO#?iQPO1G2hOOQO1G2h1G2hOOQO-E:z-E:zOOQO7+'y7+'yO!1kQPO'#G]OkOOQO1G.n1G.nOOQO<S,5>SOOQO,5=Q,5=QOOQO-E:d-E:dO#DgQPO7+%fOOQO7+%f7+%fOOQO7+%h7+%hOOQO<^OOQO1G/v1G/vO#HcQPO'#HnO#HjQPO,59wO#HoQPO,5>]O! SQPO,59wO#HzQPO,5:ZO#6iQPO,5:yO! SQPO,5>]O!!aQPO,5>]O#6dQPO,5>fOOQO,5:Z,5:ZOL]QPO'#DsOOQO,5>f,5>fO#ISQPO'#E`OOQO,5:y,5:yO#LQQPO,5:yO!!aQPO'#DwOOQO-E:g-E:gOOQO1G/a1G/aOOQO,5:x,5:xO!!aQPO'#GpO#LVQPO,5>cOOQO,5:s,5:sO#LbQPO,5:sO#LpQPO,5:sO#MRQPO'#GrO#MiQPO,5>dO#MtQPO'#EYOOQO1G0^1G0^O#M{QPO1G0^O! SQPO,5:oOOQO-E:o-E:oOOQO1G0Y1G0YOOQO1G0m1G0mO#NQQQO1G0mOOQO<jOOQO1G1X1G1XO$$lQPO'#FSOOQO,5=c,5=cOOQO-E:u-E:uO$$qQPO'#GkO$%OQPO,5>[OOQO1G/t1G/tOOQO<rAN>rO!@iQPOAN>rOOQOAN>wAN>wOOQOAN?ZAN?ZO7]QPOAN?ZO$%gQPO,5:^OOQO1G/w1G/wOOQO,5=Y,5=YOOQO-E:l-E:lO$%rQPO,5>`OOQO1G/c1G/cOOQO1G3w1G3wO$&TQPO1G/cOOQO1G/u1G/uOOQO1G0e1G0eO#LQQPO1G0eO#6dQPO'#HtO$&YQPO1G3wO! SQPO1G3wOOQO1G4Q1G4QOJsQPO'#DuOJSQPO'#D^OOQO,5:z,5:zO$&eQPO,5:zO$&eQPO,5:zO$&lQQO'#H]O$&sQQO'#H^O$&}QQO'#EaO$'YQPO'#EaOOQO,5:c,5:cOOQO,5=[,5=[OOQO-E:n-E:nOOQO1G0_1G0_O$'bQPO1G0_OOQO,5=^,5=^OOQO-E:p-E:pO$'pQPO,5:tOOQO7+%x7+%xOOQO7+&X7+&XOOQO1G1^1G1^O$'wQQO1G1^OOQO-E:w-E:wO$(PQQO'#IRO$'zQPO1G1^O#NgQPO1G1^O(|QPO1G1^OOQOAN@ZAN@ZO$([QQO<mO$+YQPO7+&xO$+_QQO'#ISOOQOAN@lAN@lO$+jQQOAN@lOOQOAN@hAN@hO$+qQPOAN@hO$+vQQO<nOOQOG26WG26WOOQOG26SG26SOOQO<hO!RwO!SwO!TwO!UwO!VwO!WwO!XwO!YxO![wO!]wO!^wO~Of!Qag!Qau!Qa!t!Qa!y!Qa$f!Qa%{!Qa%}!Qa&m!Qa&W!Qa~P?^O#x$pO~Or$rO~Ot$sO%ySO~Ot!kO%yqa%{qa%}qa&oqaYqavqa&gqa&jqa!Oqa&Vqapqa~OWqa#^qa#`qa#bqa#cqa#dqa#eqa#fqa#gqa#iqa#mqa#pqa&Wqa#nqarqa{qa~PAXOt!kO%ySOp&bX!O&bX!a&bX~OY&bX#n&bX~PCVO!a$vOp!_X!O!_XY!_X~Op$wO!O&aX~O!O$yO~Ou$zO~Of[Og[O%y0aO%{!dO%}UO&Z$}O~O&V&XP~PDdO%ySO%{!dO%}UO~OWhXW%|XY%|XZ%|XthXt%|X!a%|X#[%|X#^%|X#`%|X#b%|X#c%|X#d%|X#e%|X#f%|X#g%|X#i%|X#m%|X#p%|X%yhX%{hX%}hX&V%|X&WhX&W%|X&g%|X&ohX&o%|X&q!`X~OYhXY!`Xp!`XvhX&ghX&jhX~PE[OWUXW&UXYUXZUXtUXt&UX!aUX#[UX#^UX#`UX#bUX#cUX#dUX#eUX#fUX#gUX#iUX#mUX#pUX%y&UX%{&UX%}&UX&VUX&WUX&W&UX&gUX&oUX&o&UX&q!`X~OY!`XY&UXp!`Xv&UX&g&UX&j&UX~PGoOf[Og[O%ySO%{!dO%}UOf!QXg!QX%{!QX%}!QX~P?^Ot!kOv%XO%ySO%{%UO%}%TO&j%WO~OW!tOY&YX&g&YX&o&YX~PJsOY%ZO~P7gOf[Og[O%{!dO%}UO~Op%]OY&iX~OY%_O~Of[Og[O%ySO%{!dO%}UOY&iP~P?^OY%eO&g%cO&o#cO~Op%fO&q#sOY&pX~OY%hO~O%ySOf%^ag%^au%^a!R%^a!S%^a!T%^a!U%^a!V%^a!W%^a!X%^a!Y%^a![%^a!]%^a!^%^a!t%^a!y%^a$f%^a%{%^a%}%^a&m%^a&W%^a~O{%iO~P]O|%jO~Ot!kO%ySO%{!oO%}!oO~Oo%vOv%wO%{RO%}!aO&W!uO~Oy%uO~P! bOy%yO%{RO%}!aO&W!uO~OY&^P~P8qOf[Og[O%ySO%{!dO%}UO~O|aO~P8qOW!tOt!kO%ySO&o&YX~O#p#pO!O#qa#^#qa#`#qa#b#qa#c#qa#d#qa#e#qa#f#qa#g#qa#i#qa#m#qa&V#qa&W#qa&g#qaY#qa#n#qar#qap#qa{#qa~On&^O|&]O!q&_O&W&[O~O|&dO!q&_O~On&hO|&gO&W&[O~OZ#eOt&lO%ySO~OW$kO|&rO~OW$kO!O&tO~OW&uO!O&vO~O$f!UO%{0cO%}0bO!O&^P~P-vO!O'RO#n'SO~P7gO|'TO~O$a'VO~O!O'WO~O!O'XO~O!O'YO~P7gO!O'[O~P7gOZ$UO_TO`TOaTObTOcTOdTOf[Og[Oo}OviOy|O%ySO%{'^O%}']O~P?^O%O'gO%S'hOZ${a_${a`${aa${ab${ac${ad${af${ag${ao${au${av${ay${a|${a!O${a!R${a!S${a!T${a!U${a!V${a!W${a!X${a!Y${a!Z${a![${a!]${a!^${a!t${a!y${a#d${a#p${a#r${a#s${a#w${a#x${a$U${a$W${a$^${a$a${a$c${a$f${a$j${a$l${a$q${a$s${a$u${a$w${a$z${a$|${a%s${a%y${a%{${a%}${a&m${a{${a$_${a$o${a~O|'nOY&sP~P8qO|qa!qqa&wqa~PAXOW$kO!O'uO~Or'vO~Ot!kO%ySOp&ba!O&ba!a&baY&ba#n&ba~O|'wO~P8qOp$wO!O&aa~Of[Og[O%y0aO%{!dO%}UO~O&Z(OO~P!-yOt!kO%ySOp&YX&V&YXY&YX&g&YX!O&YX~O|&YX!q&YX~P!.cOn(QOo(QOpmX&VmX~Op(RO&V&XX~O&V(TO~Ot!kOv(VO%ySO%{RO%}!aO~OYla&gla&ola~P!/qOW%|XY!`Xp!`Xt!`X%y!`X~OWUXY!`Xp!`Xt!`X%y!`X~OW(YO~Ot!kO%ySO%{!oO%}!oO&j([O~Of[Og[O%ySO%{!dO%}UO~P?^Op%]OY&ia~Ot!kO%ySO%{!oO%}!oO&j%WO~O%ySO~P1eOY(_O~OY(bO&g%cO~Op%fOY&pa~Of[Og[OuyO{(jO!t{O%ySO%{!dO%}UO&mbO~P?^O!O(kO~OW^iZ#WXt^i!O^i!a^i#[^i#^^i#`^i#b^i#c^i#d^i#e^i#f^i#g^i#i^i#m^i#p^i&V^i&W^i&g^i&o^iY^i#n^ir^ip^i{^i~OW(zO~Or({O~P7gOy(|O%{RO%}!aO~O!O]iY]i#n]ir]ip]i{]i~P7gOp(}OY&^X!O&^X~P7gOY)PO~O#p#pO!O#]i#^#]i#`#]i#b#]i#c#]i#d#]i#e#]i#i#]i#m#]i&V#]i&W#]i&g#]iY#]i#n#]ir#]ip#]i{#]i~O#f#nO#g#nO~P!7QO#^#iO#e#mO#f#nO#g#nO#i#rO#p#pO&V#gO&W#gO!O#]i#`#]i#b#]i#c#]i#m#]i&g#]iY#]i#n#]ir#]ip#]i{#]i~O#d#lO~P!8fO#^#iO#e#mO#f#nO#g#nO#i#rO#p#pO&V#gO&W#gO!O#]i#b#]i#c#]i#m#]iY#]i#n#]ir#]ip#]i{#]i~O#`#jO#d#lO&g#hO~P!9zO#d#]i~P!8fO#p#pO!O#]i#`#]i#b#]i#c#]i#d#]i#e#]i#m#]i&g#]iY#]i#n#]ir#]ip#]i{#]i~O#^#iO#f#nO#g#nO#i#rO&V#gO&W#gO~P!;gO#f#]i#g#]i~P!7QO#n)QO~P7gO#^&YX#`&YX#b&YX#c&YX#d&YX#e&YX#f&YX#g&YX#i&YX#m&YX#p&YX&W&YX#n&YXr&YX{&YX~P!.cO!O#jiY#ji#n#jir#jip#ji{#ji~P7gOf[Og[OuyO|aO!O)`O!RwO!SwO!TwO!UwO!V)dO!WwO!XwO!YxO![wO!]wO!^wO!t{O!yzO%ySO%{)WO%})XO&W&[O&mbO~O{)cO~P!>wO|&]O~O|&]O!q&_O~On&^O|&]O!q&_O~O%ySO%{!oO%}!oO{&lP!O&lP~P?^O|&dO~Of[Og[OuyO{)rO!O)pO!t{O!yzO%ySO%{!dO%}UO&W&[O&mbO~P?^O|&gO~On&hO|&gO~Or)tO~P8qOt)vO%ySO~Ot&lO|'wO%ySOW#Yi!O#Yi#^#Yi#`#Yi#b#Yi#c#Yi#d#Yi#e#Yi#f#Yi#g#Yi#i#Yi#m#Yi#p#Yi&V#Yi&W#Yi&g#Yi&o#YiY#Yi#n#Yir#Yip#Yi{#Yi~O|&]OW&]it&]i!O&]i#^&]i#`&]i#b&]i#c&]i#d&]i#e&]i#f&]i#g&]i#i&]i#m&]i#p&]i&V&]i&W&]i&g&]i&o&]iY&]i#n&]ir&]ip&]i{&]i~O#{*OO#}*PO$P*PO$Q*QO$R*RO~O{)}O~P!F`O$X*SO%{RO%}!aO~OW*TO!O*UO~O$_*VOZ$]i_$]i`$]ia$]ib$]ic$]id$]if$]ig$]io$]iu$]iv$]iy$]i|$]i!O$]i!R$]i!S$]i!T$]i!U$]i!V$]i!W$]i!X$]i!Y$]i!Z$]i![$]i!]$]i!^$]i!t$]i!y$]i#d$]i#p$]i#r$]i#s$]i#w$]i#x$]i$U$]i$W$]i$^$]i$a$]i$c$]i$f$]i$j$]i$l$]i$q$]i$s$]i$u$]i$w$]i$z$]i$|$]i%s$]i%y$]i%{$]i%}$]i&m$]i{$]i$o$]i~Of[Og[O$f#`O%{!dO%}UO~O!O*ZO~P8qO!O*[O~OZ^O_TO`TOaTObTOcTOdTOf[Og[Oo}OuyOviOy|O|aO!OtO!RwO!SwO!TwO!UwO!VwO!WwO!XwO!Y*aO!Z!^O![wO!]wO!^wO!t{O!yzO#dnO#pmO#rnO#snO#w!PO#x!OO$U!QO$W!RO$^!SO$a!TO$c!VO$f!UO$j!WO$l!XO$o*bO$q!YO$s!ZO$u![O$w!]O$z!_O$|!`O%ySO%{QO%}PO&mbO~O{*`O~P!KoOWhXW%|XY%|XZ%|XthXt%|X!O%|X%yhX%{hX%}hX&WhX&ohX&o%|X~OWUXW&UXYUXZUXtUXt&UX!OUX%y&UX%{&UX%}&UX&W&UX&oUX&o&UX~OW#aOt#bO&o#cO~OW&QXY%VXt&QX!O%VX&o&QX~OZ#WX~P##cOY*hO!O*fO~O%O'gO%S'hOZ${i_${i`${ia${ib${ic${id${if${ig${io${iu${iv${iy${i|${i!O${i!R${i!S${i!T${i!U${i!V${i!W${i!X${i!Y${i!Z${i![${i!]${i!^${i!t${i!y${i#d${i#p${i#r${i#s${i#w${i#x${i$U${i$W${i$^${i$a${i$c${i$f${i$j${i$l${i$q${i$s${i$u${i$w${i$z${i$|${i%s${i%y${i%{${i%}${i&m${i{${i$_${i$o${i~OZ*kO~O%O'gO%S'hOZ%Ti_%Ti`%Tia%Tib%Tic%Tid%Tif%Tig%Tio%Tiu%Tiv%Tiy%Ti|%Ti!O%Ti!R%Ti!S%Ti!T%Ti!U%Ti!V%Ti!W%Ti!X%Ti!Y%Ti!Z%Ti![%Ti!]%Ti!^%Ti!t%Ti!y%Ti#d%Ti#p%Ti#r%Ti#s%Ti#w%Ti#x%Ti$U%Ti$W%Ti$^%Ti$a%Ti$c%Ti$f%Ti$j%Ti$l%Ti$q%Ti$s%Ti$u%Ti$w%Ti$z%Ti$|%Ti%s%Ti%y%Ti%{%Ti%}%Ti&m%Ti{%Ti$_%Ti$o%Ti~OW&QXt&QX#^&QX#`&QX#b&QX#c&QX#d&QX#e&QX#f&QX#g&QX#i&QX#m&QX#p&QX&V&QX&W&QX&g&QX&o&QX~O!a*pO#[#dOY&QXZ#WX~P#,OOY&OXp&OX{&OX!O&OX~P7gO|'nO{&rP~P8qOY&OXf%XXg%XX%y%XX%{%XX%}%XXp&OX{&OX!O&OX~Op*sOY&sX~OY*uO~O|'wO{&dP~P8qOp&cX!O&cX{&cXY&cX~P7gO&ZTa~P<^On(QOo(QOpma&Vma~Op(RO&V&Xa~OW*}O~Ov+OO~Ot!kO%ySO%{+SO%}+RO~Of[Og[Ou#]O!t#_O%{!dO%}UO&m#[O~Of[Og[OuyO{+XO!t{O%ySO%{!dO%}UO&mbO~P?^Ov+dO%{RO%}!aO&W!uO~Op(}OY&^a!O&^a~O#^la#`la#bla#cla#dla#ela#fla#gla#ila#mla#pla&Wla#nlarla{la~P>hOn+iOp!eX&V!eX~Op+kO&V&fX~O&V+mO~OW&UXt&UX%y&UX%{&UX%}&UX&W&UX~OZ!`X~P#4OOWhXthX%yhX%{hX%}hX&WhX~OZ!`X~P#4kOf[Og[Ou#]O!t#_O!y#^O&W&[O&m#[O~O%{)WO%})XO~P#5WOf[Og[O%ySO%{)WO%})XO~O|aO!O+wO~OZ+xO~O|+zO!l+}O~O{,PO~P!>wO|aOf&`Xg&`Xu&`X!R&`X!S&`X!T&`X!U&`X!V&`X!W&`X!X&`X!Y&`X![&`X!]&`X!^&`X!t&`X!y&`X%y&`X%{&`X%}&`X&W&`X&m&`X~Op,RO|&kX!O&kX~OZ#eO|&]Op!{X{!{X!O!{X~Op,WO{&lX!O&lX~O{,ZO!O,YO~O&W&[O~P3TOf[Og[OuyO{,_O!O)pO!t{O!yzO%ySO%{!dO%}UO&W&[O&mbO~P?^Or,`O~P7gOr,`O~P8qO|&]OW&]qt&]q!O&]q#^&]q#`&]q#b&]q#c&]q#d&]q#e&]q#f&]q#g&]q#i&]q#m&]q#p&]q&V&]q&W&]q&g&]q&o&]qY&]q#n&]qr&]qp&]q{&]q~O{,dO~P!F`O!V,hO#|,hO%{RO%}!aO~O!O,kO~O$X,lO%{RO%}!aO~O!a$vO#n,nOp!_X!O!_X~O!O,pO~P7gO!O,pO~P8qO!O,sO~P7gO{,uO~P!KoO!Z#yO#n,vO~O!O,xO~O!a,yO~OY,|OZ$UO_TO`TOaTObTOcTOdTOf[Og[Oo}OviOy|O%ySO%{'^O%}']O~P?^OY,|O!O,}O~O%O'gO%S'hOZ%Tq_%Tq`%Tqa%Tqb%Tqc%Tqd%Tqf%Tqg%Tqo%Tqu%Tqv%Tqy%Tq|%Tq!O%Tq!R%Tq!S%Tq!T%Tq!U%Tq!V%Tq!W%Tq!X%Tq!Y%Tq!Z%Tq![%Tq!]%Tq!^%Tq!t%Tq!y%Tq#d%Tq#p%Tq#r%Tq#s%Tq#w%Tq#x%Tq$U%Tq$W%Tq$^%Tq$a%Tq$c%Tq$f%Tq$j%Tq$l%Tq$q%Tq$s%Tq$u%Tq$w%Tq$z%Tq$|%Tq%s%Tq%y%Tq%{%Tq%}%Tq&m%Tq{%Tq$_%Tq$o%Tq~O|'nO~P8qOp-YO{&rX~O{-[O~Op*sOY&sa~Op-`O{&dX~O{-bO~Ov-cO~Op!`Xt!`X!O!`X!a!`X%y!`X~OZ%|X~P#DlOZUX~P#DlO!O-dO~OZ-eO~OW^yZ#WXt^y!O^y!a^y#[^y#^^y#`^y#b^y#c^y#d^y#e^y#f^y#g^y#i^y#m^y#p^y&V^y&W^y&g^y&o^yY^y#n^yr^yp^y{^y~OY%[ap%[a!O%[a~P7gO!O#lyY#ly#n#lyr#lyp#ly{#ly~P7gOn+iOp!ea&V!ea~Op+kO&V&fa~OZ+xO~PCVO!O-rO~O!l+}O|&ea!O&ea~O|aO!O-uO~OZ^O_TO`TOaTObTOcTOdTOf[Og[Oo.TOuyOv.SOy|O{.OO|aO!OtO!Z!^O!t{O!yzO#dnO#pmO#rnO#snO#w!PO#x!OO$U!QO$W!RO$^!SO$a!TO$c!VO$f!UO$j!WO$l!XO$q!YO$s!ZO$u![O$w!]O$z!_O$|!`O%ySO%{QO%}PO&W!uO&mbO~P?^O|+zO~Op,RO|&ka!O&ka~O|&]Op!{a{!{a!O!{a~OZ#eO|&]Op!{a{!{a!O!{a~O%ySO%{!oO%}!oOp%fX{%fX!O%fX~P?^Op,WO{&la!O&la~O{!|X~P!>wO{._O~Or.`O~P7gOW$kO!O.aO~OW$kO$O.fO%{RO%}!aO!O&uP~OW$kO$S.gO~O!O.hO~O!a$vO#n.jOp!_X!O!_X~OY.lO~O!O.mO~P7gO#n.nO~P7gO!a.pO~OY.qOZ$UO_TO`TOaTObTOcTOdTOf[Og[Oo}OviOy|O%ySO%{'^O%}']O~P?^OW!wOt&TX%y&TX%{&TX%}&TX&w&TX~O&W!uO~P$!}Ot!kO%ySO&w.sO%{%QX%}%QX~OY&OXp&OX~P7gO|'nOp%jX{%jX~P8qOp-YO{&ra~O!a.yO~O|'wOp%_X{%_X~P8qOp-`O{&da~OY.|O~O!O.}O~OZ/OO~O&g%cOp!fa&V!fa~Ot!kO%ySO|&ha!O&ha!l&ha~O!O/TO~O!l+}O|&ei!O&ei~O{/YO~P]OW/[O~P3vOZ#eO!O&QX~P#,OOW$POZ#eO&o#cO~Oo/^Ov/^O~O|&]Op!{i{!{i!O!{i~O{!|a~P!>wOW$kO!O/`O~OW$kOp/aO!O&uX~OY/eO~P7gOY/gO~OY%Vq!O%Vq~P7gO&w.sO%{%Qa%}%Qa~OY/lO~Ot!kO!O/oO!Y/pO%ySO~OY/qO~O&g%cOp!fi&V!fi~Ot!kO%ySO|&hi!O&hi!l&hi~O!l+}O|&eq!O&eq~O{/sO~P]Oo/uOv%wOy%uO%{RO%}!aO&W!uO~O!O/vO~Op/aO!O&ua~O!O/zO~OW$kOp/aO!O&vX~OY/|O~P7gOY/}O~OY%Vy!O%Vy~P7gOt!kO%ySO%{%qa%}%qa&w%qa~OY0OO~Ot!kO!O0PO!Y0QO%ySO~Oo0TO%{RO%}!aO~OW(zOZ#eO~O!O0VO~OW$kOp%na!O%na~Op/aO!O&va~O!O0XO~Ot!kO!O0XO!Y0YO%ySO~O!O0[O~O!O0]O~O!O0_O~O!O0`O~O#n%|XY%|Xr%|Xp%|X{%|X~P$tO#nUXYUXrUXpUX{UX~P&xO`#e~",goto:"#&b&wPPPP&x']*l-oP']PP.T.X/mPPPPPP1XPP2q5b7{:f;Oa!A]1X!By!Fe!ISPP!Km!KpP!My!NP# m# |#!S##S##l#$g#$p#$s#%PP#%S#%`P#%g#%nP#%qP#%zP#%}#&Q#&T#&X#&_srOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/Z'kpOVW^_amnv!W!Y!]!_!e!l!p!u!w!z!{#Q#U#X#Z#b#d#e#i#j#k#l#m#n#o#r#s#t#u#w#}$U$V$W$X$Y$Z$h$l$u$v${$|%R%S%[%]%`%a%c%e%j&V&[&]&^&_&d&g&h&l&m&o&z&{&}'S'T'_'n'w(Q(R(b(f(i(})Q)R)T)Y)[)b)m)n)q)v*V*X*Z*[*_*b*e*f*k*p+V+i+k+n+q+t+u+x+z+},R,W,Y,],n,p,y,}-R-Y-`-q-z-|-}.P.Q.^.j.m.p.r.y.|/S/X/Z/j/n/p/q0Q0S0Y0d#rfO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Yt!cS!O!Q!R!h!j$T$p*O*P*Q*R,g,i.f.g/a0aQ#YbS%Y!{-|Q%m#[U%r#a$P/[Q%y#cW'a$h*f,}.rU'k$k&u*TQ'l$lS(W%S/XU(w%t+c/tQ(|%zQ+U(fQ+a(zQ-]*sR-g+Vu!cS!O!Q!R!h!j$T$p*O*P*Q*R,g,i.f.g/a0aT$m!b'}#uoO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Y#tjO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0YX'b$h*f,}.r#}iO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0Y%tYOV^acmnv|!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*p+i+u+x+z+},R,Y,n,p,y,}-Y-`-}.P.Q.^.j.m.p.r.y/Z/p0Q0Y0dQ%Q!wQ(U%RV-P*k-T.s%tYOV^acmnv|!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*p+i+u+x+z+},R,Y,n,p,y,}-Y-`-}.P.Q.^.j.m.p.r.y/Z/p0Q0Y0dV-P*k-T.s%tZOV^acmnv|!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*p+i+u+x+z+},R,Y,n,p,y,}-Y-`-}.P.Q.^.j.m.p.r.y/Z/p0Q0Y0dV-Q*k-T.sS!vY-PS$O|%uS%t#a$PQ%z#cQ+c(zQ.U+zR/t/[$eXO^amnv!W!Y!]!_!u#X#b#d#e#i#j#k#l#m#n#o#r#s#w$U$V$W$X$Y$Z$h$l$v%c%e&^&_&h&l&}'S'T'n'w(Q(R(b(})Q)v*V*Z*[*_*b*f*p+i+z+},R,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YQ%O!uR*{(R%u]OV^acmnv!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$U$V$W$X$Y$Z$h$l$v${%]%c%e%j&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*k*p+i+u+x+z+},R,Y,n,p,y,}-T-Y-`-}.P.Q.^.j.m.p.r.s.y/Z/p0Q0Y0d!o!mW!e!n!p!{#Z#u$n$u$|%S%[%`&V&{'_(f)R)Y)m*X*e+V+n+q+t,]-R-q-z-|.|/S/X/j/n/q0S#|iO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YQ$V!SQ$W!TQ$]!XQ$f!^R*c'VQ#fgS&p#}(yQ(v%sQ)z&qQ+`(xQ,U)iQ-k+bQ.Z,VQ/Q-lS/].S.TQ/w/^Q0U/uR0Z0TQ&`#zW(m%n&a&b&cQ)y&pU+Y(n(o(pQ,T)iQ,b)zS-h+Z+[S.Y,U,VQ/P-iR/_.ZX)`&])b,Y.^rcOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZW!}^#Q%]+xQ&|$XW'c$h*f,}.rS(g%j(iW)Z&])b,Y.^S)j&d,WS)o&g)qR-T*kh!rW!U#Z#`&{(f)Y)m*X+V+q,]Q'{$wQ(X%WR+P([#rlOamnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Yv!pW!U!{#Z#`$w%W%[%`&{'_([(f*X*e+V-S-|.vQ#S^Q#zyQ#{zQ#|{Q%n#]Q%o#^Q%p#_Q(d%fS)S&[+kY)^&])Z)b,Y.^S)i&d,WQ+j)TW+n)Y)m+q,]Q+v)[Q,V)jT-x+t-zU'y$v'w-`R)x&oW)`&])b,Y.^T)p&g)qQ&c#zQ&k#|Q(p%nQ(u%pY)[&])Z)b,Y.^V)n&g)o)qQ)U&[R-o+kQ+h)SR-n+j#tlO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0YQ+y)^S-q+n-xR-{+vT#Q^+xU#O^#Q+xR(]%]Q+|)_Q-s+pQ-w+sQ/V-yR/r/WrtOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZQ$i!`Q&Y#sQ'Z$fQ'j$jW)`&])b,Y.^Q*m'hQ+w)]Q,Q)dQ-U*lR-u+rrrOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZS(h%j(iW)`&])b,Y.^T)p&g)qQ&b#zS(o%n&cR+[(pQ&a#zQ&f#{U(n%n&b&cQ(r%oS+Z(o(pR-i+[Q)h&_R)s&hQ&j#|S(t%p&kR+_(uQ&i#|U(s%p&j&kS+^(t(uR-j+_S(h%j(iT)p&g)qrrOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZW)`&])b,Y.^T)p&g)qQ&e#{S(q%o&fR+](rQ)k&dR.[,WR,[)lQ%k#YR(l%mT(h%j(iQ+{)_S-v+s+|R/U-wR.Q+zWi$h*f,}.r#ujO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Y#|gO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YU%s#a$P/[S(x%t/tQ+b(zR-l+cT&n#}&o!]#ik!|$[$d$g%x%{%|&P&Q&R&S&U&X'm'x)u*Y*]+e+g,a,r,w-W.i.o/f/i!V#jk!|$[$d$g%x%{%|&Q&U&X'm'x)u*Y*]+e+g,a,r,w-W.i.o/f/i#ulO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p+z,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0Ya'o$l'n*p-Y.y/p0Q0YQ'q$lR-^*sQ&s$QQ's$oR*v'tT){&r)|stOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZrsOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZQ$a!ZR$c![R$Y!VrtOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZR&}$XR$Z!VR'U$]T*^'T*_X'e$i'f'j*nR*l'gQ-S*kR.v-TQ'i$iQ*j'fQ*o'jR-V*nR$j!`Q'd$hV,{*f,}.rQvOQ#XaW#xv#X.P/ZQ.P+zR/Z.QrVOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/Zl!gV!l!z#U#t${%R%a&m&z)T+u-}0d!j!lW!e!p!{#Z#u$u$|%S%[%`&V&{'_(f)R)Y)m*X*e+V+n+q+t,]-R-q-z-|.|/S/X/j/n/q0SQ!z^Q#U_#^#tmn!W!]!_#b#d#e#i#j#k#l#m#n#o#s$U$l$v%c%e&^&_&h&l&}'S'n'w(Q(b(})Q)v*Z*[*b*p+i+},R,n,p,y-Y-`.j.m.p.y/p0Q0YS${!u(RQ%R!wj%a#Q%]%j&]&d&g(i)b)q*k,W,Y.^S&m#}&oY&z$X$h*f,}.rS)T&[+kS+u)[)nQ-}+xR0d#rQ(S%OR*|(S^!nW!{#u&V&{'_)Rx$n!e#Z$|%S%[%`(f)Y)m*X*e+V+q+t,]-R-z-|/X/j[$t!n$n$u/S/n0SS$u!p+nQ/S-qQ/n.|R0S/qQ)O%|R+f)OQ)b&]S,O)b.^R.^,Y!l`O^av!Y#Q#X#w$V$W$X$Y$Z$h%]%j&]&d&g'T(i)b)q*V*_*f*k+x+z,W,Y,}.P.Q.^.r/ZY!fV!z%a&z-}T#V`!fQ-a*wR.{-aQ$x!rR'|$xQ%d#RS(a%d/RR/R-mQ+l)UR-p+lQ%^#OR(^%^Q,S)fR.X,SQ)q&gR,^)qQ,X)kR.],XQ(i%jR+W(iQ&o#}R)w&oQ%g#SR(e%gQ-Z*qR.x-ZQ*t'qR-_*tQ)|&rR,c)|Q,g*OR.c,gQ/b.dS/y/b/{R/{/dQ*_'TR,t*_Q'f$iS*i'f*nR*n'jQ.t-RR/k.tQ*g'dR-O*g`uOav#X+z.P.Q/ZQ$^!YQ&Z#wQ&x$VQ&y$WQ'P$YQ'Q$ZS*^'T*_R,m*V'YqOVW^_amnv!W!Y!]!_!e!l!p!u!w!z!{#Q#U#X#Z#b#d#e#i#j#k#l#m#n#o#r#s#t#u#w#}$U$V$W$X$Y$Z$h$u$v${$|%R%S%[%]%`%a%c%e%j&V&[&]&^&_&d&g&h&l&m&o&z&{&}'S'T'_'w(Q(R(b(f(i(})Q)R)T)Y)[)b)m)n)q)v*V*X*Z*[*_*b*e*f*k+V+i+k+n+q+t+u+x+z+},R,W,Y,],n,p,y,}-R-`-q-z-|-}.P.Q.^.j.m.p.r.|/S/X/Z/j/n/q0S0da'p$l'n*p-Y.y/p0Q0YQ!bSQ$Q!OQ$R!QQ$S!RQ$o!hQ$q!jQ&w$TQ't$pQ'}0aS,e*O*QQ,i*PQ,j*RQ.b,gS.d,i.fQ/d.gR/x/a%oROS^abmnv!O!Q!R!W!Y!]!_!h!j!{#X#[#a#b#c#d#e#i#j#k#l#m#n#o#s#w$P$T$U$V$W$X$Y$Z$h$k$l$p$v%S%e%t%z&l&u&}'S'T'n'w(b(f(z(})Q)v*O*P*Q*R*T*V*Z*[*_*b*f*p*s+V+c+z,g,i,n,p,y,}-Y-`-|.P.Q.f.g.j.m.p.r.y/X/Z/[/a/p/t0Q0Y0aQ'r$lQ*q'nS-X*p.yQ.w-YQ0R/pQ0W0QR0^0YrkOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZS!|^$UQ#pmQ#vnQ$[!WQ$d!]Q$g!_Q%x#bQ%{#dY%|#e$X*Z,p.mQ&O#iQ&P#jQ&Q#kQ&R#lQ&S#mQ&T#nQ&U#oQ&X#s^'m$l'n-Y.y/p0Q0YU'x$v'w-`Q(c%eQ)u&lQ*Y&}Q*]'SQ+Q(bQ+e(}Q+g)QQ,a)vQ,r*[Q,w*bQ-W*pQ.i,nQ.o,yQ/f.jR/i.p#reO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*p,n,p,y-Y-`.P.Q.j.m.p.y/Z/p0Q0YW'`$h*f,}.rR.R+zrWOav!Y#X#w$V$W$Y$Z'T*V*_+z.P.Q/ZW!eV#t${&zQ!{^Q#Zc!|#umn!W!]!_#b#d#e#i#j#k#l#m#n#o#s$U$l$v%e&l&}'S'n'w(b(})Q)v*Z*[*b*p,n,p,y-Y-`.j.m.p.y/p0Q0Yd$|!u%c&^&_&h(Q(R+i+},RQ%S!zQ%[!}S%`#Q%]Q&V#rQ&{$XW'_$h*f,}.rS(f%j(iQ)R0dW)Y&])b,Y.^S)m&g)qQ*X&|Q*e'cQ+V(gQ+q)ZS+t)[)nQ,])oS-R*k-TQ-z+uQ-|+xQ/X-}R/j.s%t]OV^acmnv!W!Y!]!_!u!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$U$V$W$X$Y$Z$h$l$v${%]%c%e%j&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*k*p+i+u+x+z+},R,Y,n,p,y,}-T-Y-`-}.P.Q.^.j.m.p.r.s.y/Z/p0Q0Y0dQ#}|Q&q$OR(y%u&PUOV^acmnv|!W!Y!]!_!u!w!z!}#Q#X#b#d#e#i#j#k#l#m#n#o#r#s#t#w$O$U$V$W$X$Y$Z$h$l$v${%R%]%c%e%j%u&]&^&_&g&h&l&z&|&}'S'T'c'n'w(Q(R(b(g(i(})Q)Z)[)b)n)o)q)v*V*Z*[*_*b*f*k*p+i+u+x+z+},R,Y,n,p,y,}-T-Y-`-}.P.Q.^.j.m.p.r.s.y/Z/p0Q0Y0dR%P!u#zhOamnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YQ#R^Q%O!uQ&W#rQ(`%cQ)e&^U)f&_&h+}Q*z(QQ*{(RQ-m+iR.W,RQ(P$}R*y(O#|dO^amnv!W!Y!]!_#X#b#d#e#i#j#k#l#m#n#o#s#w$U$V$W$X$Y$Z$h$l$v%e&l&}'S'T'n'w(b(})Q)v*V*Z*[*_*b*f*p+z,n,p,y,}-Y-`.P.Q.j.m.p.r.y/Z/p0Q0YT%q#a/[Q%}#eQ'O$XQ,q*ZQ.k,pR/h.mX)a&])b,Y.^!{_OV^`av!Y!f!z#Q#X#w$V$W$X$Y$Z$h%]%a%j&]&d&g&z'T(i)b)q*V*_*f*k+x+z,W,Y,}-}.P.Q.^.r/ZU!sW!U&{U%l#Z#`*XS+T(f)mQ+o)YS-f+V,]R-t+qj!qW!U#Z#`$w%W([(f)Y)m+V+q,]U%V!{%`-|Q(Z%[Q*W&{Q*d'_Q,o*XQ,z*eQ.u-SR/m.vQ'z$vQ*w'wR.z-`R*x'w[)]&]&g)b)q,Y.^T+r)Z)oR)V&[W+p)Y)m+q,]Q-y+tR/W-zS#P^+xR%b#QS)g&_&hR.V+}R)l&dW)_&])b,Y.^R+s)ZR#T^R*r'nR'r$lT,f*O,gQ.e,iR/c.fR/c.g",nodeNames:"⚠ LineComment BlockComment Program ModuleDeclaration MarkerAnnotation Identifier ScopedIdentifier . Annotation ) ( AnnotationArgumentList AssignmentExpression FieldAccess IntegerLiteral FloatingPointLiteral BooleanLiteral CharacterLiteral StringLiteral null ClassLiteral void PrimitiveType TypeName ScopedTypeName GenericType TypeArguments AnnotatedType Wildcard extends super , ArrayType ] Dimension [ class this ParenthesizedExpression ObjectCreationExpression new ArgumentList } { ClassBody ; FieldDeclaration Modifiers public protected private abstract static final strictfp default synchronized native transient volatile VariableDeclarator Definition AssignOp ArrayInitializer MethodDeclaration TypeParameters TypeParameter TypeBound FormalParameters ReceiverParameter FormalParameter SpreadParameter Throws throws Block ClassDeclaration Superclass SuperInterfaces implements InterfaceTypeList InterfaceDeclaration interface ExtendsInterfaces InterfaceBody ConstantDeclaration EnumDeclaration enum EnumBody EnumConstant EnumBodyDeclarations AnnotationTypeDeclaration AnnotationTypeBody AnnotationTypeElementDeclaration StaticInitializer ConstructorDeclaration ConstructorBody ExplicitConstructorInvocation ArrayAccess MethodInvocation MethodName MethodReference ArrayCreationExpression Dimension AssignOp BinaryExpression CompareOp CompareOp LogicOp BitOp BitOp LogicOp ArithOp ArithOp ArithOp BitOp InstanceofExpression instanceof LambdaExpression InferredParameters TernaryExpression LogicOp : UpdateExpression UpdateOp UnaryExpression LogicOp BitOp CastExpression ElementValueArrayInitializer ElementValuePair open module ModuleBody ModuleDirective requires transitive exports to opens uses provides with PackageDeclaration package ImportDeclaration import Asterisk ExpressionStatement LabeledStatement Label IfStatement if else WhileStatement while ForStatement for ForSpec LocalVariableDeclaration var EnhancedForStatement ForSpec AssertStatement assert SwitchStatement switch SwitchBlock SwitchLabel case DoStatement do BreakStatement break ContinueStatement continue ReturnStatement return SynchronizedStatement ThrowStatement throw TryStatement try CatchClause catch CatchFormalParameter CatchType FinallyClause finally TryWithResourcesStatement ResourceSpecification Resource",maxTerm:269,nodeProps:[[Di.group,-26,4,46,75,76,81,86,91,143,145,148,149,151,154,156,159,161,163,165,170,172,174,176,178,179,181,189,"Statement",-24,6,13,14,15,16,17,18,19,20,21,38,39,40,98,99,101,102,105,116,118,120,123,125,128,"Expression",-7,22,23,24,25,26,28,33,"Type"],[Di.openedBy,10,"(",43,"{"],[Di.closedBy,11,")",44,"}"]],skippedNodes:[0,1,2],repeatNodeCount:27,tokenData:"7q~R{X^#xpq#xqr$mrs$ztu%ruv&Wvw&ewx&uxy(Pyz(Uz{(Z{|(e|}(u}!O(z!O!P)_!P!Q+j!Q!R,x!R![.n![!]3Z!]!^3h!^!_3m!_!`4Q!`!a4Y!a!b4p!b!c4w!c!}6W!}#O6l#P#Q6q#Q#R6v#R#S%r#T#o%r#o#p7O#p#q7T#q#r7g#r#s7l#y#z#x$f$g#x#BY#BZ#x$IS$I_#x$I|$JO#x$JT$JU#x$KV$KW#x&FU&FV#x~#}Y%u~X^#xpq#x#y#z#x$f$g#x#BY#BZ#x$IS$I_#x$I|$JO#x$JT$JU#x$KV$KW#x&FU&FV#xR$rP#rP!_!`$uQ$zO#^Q~$}UOY$zZr$zrs%as#O$z#O#P%f#P~$z~%fOc~~%iROY$zYZ$zZ~$z~%wT%{~tu%r!Q![%r!c!}%r#R#S%r#T#o%r~&]P#f~!_!`&`Q&eO#[Q~&jQ&g~vw&p!_!`&`~&uO#`~~&xTOY'XZw'Xx#O'X#O#P's#P~'X~'[UOY'XZw'Xwx'nx#O'X#O#P's#P~'X~'sOb~~'vROY'XYZ'XZ~'X~(UOZ~~(ZOY~R(bP$XP#eQ!_!`&`~(jQ#d~{|(p!_!`&`~(uO#p~~(zOp~~)PR#d~}!O(p!_!`&`!`!a)Y~)_O&q~~)dQWU!O!P)j!Q![)u~)mP!O!P)p~)uO&j~P)zW`P!Q![)u!f!g*d!g!h*i!h!i*d#R#S+d#W#X*d#X#Y*i#Y#Z*dP*iO`PP*lR{|*u}!O*u!Q![*{P*xP!Q![*{P+QU`P!Q![*{!f!g*d!h!i*d#R#S*u#W#X*d#Y#Z*dP+gP!Q![)u~+oR#eQz{+x!P!Q,m!_!`&`~+{ROz+xz{,U{~+x~,XTOz+xz{,U{!P+x!P!Q,h!Q~+x~,mOQ~~,rQP~OY,mZ~,m~,}a_~!O!P.S!Q![.n!d!e/q!f!g*d!g!h*i!h!i*d!n!o/f!q!r0`!z!{0w#R#S/k#U#V/q#W#X*d#X#Y*i#Y#Z*d#`#a/f#c#d0`#l#m0wP.XV`P!Q![)u!f!g*d!g!h*i!h!i*d#W#X*d#X#Y*i#Y#Z*d~.sZ_~!O!P.S!Q![.n!f!g*d!g!h*i!h!i*d!n!o/f#R#S/k#W#X*d#X#Y*i#Y#Z*d#`#a/f~/kO_~~/nP!Q![.n~/tQ!Q!R/z!R!S/z~0PT_~!Q!R/z!R!S/z!n!o/f#R#S/q#`#a/f~0cP!Q!Y0f~0kS_~!Q!Y0f!n!o/f#R#S0`#`#a/f~0zS!O!P1W!Q![1y!c!i1y#T#Z1yP1ZR!Q![1d!c!i1d#T#Z1dP1gU!Q![1d!c!i1d!r!s*i#R#S1W#T#Z1d#d#e*i~2OX_~!O!P2k!Q![1y!c!i1y!n!o/f!r!s*i#R#S2}#T#Z1y#`#a/f#d#e*iP2nT!Q![1d!c!i1d!r!s*i#T#Z1d#d#e*i~3QR!Q![1y!c!i1y#T#Z1y~3`P#n~![!]3c~3hO&o~~3mO!O~~3rQ&W~!^!_3x!_!`$u~3}P#g~!_!`&`~4VP!a~!_!`$u~4_Q&V~!_!`$u!`!a4e~4jQ#g~!_!`&`!`!a3xV4wO&ZT#mQ~4|P%y~#]#^5P~5SP#b#c5V~5YP#h#i5]~5`P#X#Y5c~5fP#f#g5i~5lP#Y#Z5o~5rP#T#U5u~5xP#V#W5{~6OP#X#Y6R~6WO&m~~6]T%}~tu6W!Q![6W!c!}6W#R#S6W#T#o6W~6qOt~~6vOr~Q6{P#bQ!_!`&`~7TO|~V7[Q&wT#bQ!_!`&`#p#q7bQ7gO#cQ~7lO{~~7qO#s~",tokenizers:[0,1,2],topRules:{Program:[0,3]},dynamicPrecedences:{26:1,228:-1,236:-1},specialized:[{term:227,get:e=>Np[e]||-1}],tokenPrec:7012}),Mp=Wa.define({parser:Dp.configure({props:[Ha.add({IfStatement:oo({except:/^\s*({|else\b)/}),TryStatement:oo({except:/^\s*({|catch|finally)\b/}),LabeledStatement:ao,SwitchBlock:e=>{let t=e.textAfter,n=/^\s*\}/.test(t),r=/^\s*(case|default)\b/.test(t);return e.baseIndent+(n?0:r?1:2)*e.unit},BlockComment:()=>-1,Statement:oo({except:/^{/})}),so.add({"Block SwitchBlock ClassBody ElementValueArrayInitializer ModuleBody EnumBody ConstructorBody InterfaceBody ArrayInitializer":Oo,BlockComment:e=>({from:e.from+2,to:e.to-2})}),zc({null:Ou.null,instanceof:Ou.operatorKeyword,this:Ou.self,"new super assert open to with void":Ou.keyword,"class interface extends implements module package import enum":Ou.definitionKeyword,"switch while for if else case default do break continue return try catch finally throw":Ou.controlKeyword,"requires exports opens uses provides public private protected static transitive abstract final strictfp synchronized native transient volatile throws":Ou.modifier,IntegerLiteral:Ou.integer,FloatLiteral:Ou.float,StringLiteral:Ou.string,CharacterLiteral:Ou.character,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,BooleanLiteral:Ou.bool,PrimitiveType:Ou.standard(Ou.typeName),TypeName:Ou.typeName,Identifier:Ou.variableName,"MethodName/Identifier":Ou.function(Ou.variableName),Definition:Ou.definition(Ou.variableName),ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,AssignOp:Ou.definitionOperator,UpdateOp:Ou.updateOperator,Asterisk:Ou.punctuation,Label:Ou.labelName,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,", ;":Ou.separator})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\})$/}});var Fp=Object.freeze({__proto__:null,java:function(){return new Ga(Mp)},javaLanguage:Mp});const Bp=Ll.deserialize({version:13,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#CjOOQO'#Cp'#CpQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CrOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59U,59UO!iQPO,59UOVQPO,59QOqQPO'#CkO!nQPO,59^OOQO1G.k1G.kOVQPO'#ClO!vQPO,59aOOQO1G.p1G.pOOQO1G.l1G.lOOQO,59V,59VOOQO-E6i-E6iOOQO,59W,59WOOQO-E6j-E6j",stateData:"#O~OcOS~OQSORSOSSOTSOWQO]ROePO~OVXOeUO~O[[O~PVOg^O~Oh_OVfX~OVaO~OhbO[iX~O[dO~Oh_OVfa~OhbO[ia~O",goto:"!kjPPPPPPkPPkqwPPk{!RPPP!XP!ePP!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName ] [ Array",maxTerm:25,nodeProps:[[Di.openedBy,7,"{",12,"["],[Di.closedBy,8,"}",13,"]"]],skippedNodes:[0],repeatNodeCount:2,tokenData:"(p~RaXY!WYZ!W]^!Wpq!Wrs!]|}$i}!O$n!Q!R$w!R![&V![!]&h!}#O&m#P#Q&r#Y#Z&w#b#c'f#h#i'}#o#p(f#q#r(k~!]Oc~~!`Upq!]qr!]rs!rs#O!]#O#P!w#P~!]~!wOe~~!zXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#g~#jR!Q![#s!c!i#s#T#Z#s~#vR!Q![$P!c!i$P#T#Z$P~$SR!Q![$]!c!i$]#T#Z$]~$`R!Q![!]!c!i!]#T#Z!]~$nOh~~$qQ!Q!R$w!R![&V~$|RT~!O!P%V!g!h%k#X#Y%k~%YP!Q![%]~%bRT~!Q![%]!g!h%k#X#Y%k~%nR{|%w}!O%w!Q![%}~%zP!Q![%}~&SPT~!Q![%}~&[ST~!O!P%V!Q![&V!g!h%k#X#Y%k~&mOg~~&rO]~~&wO[~~&zP#T#U&}~'QP#`#a'T~'WP#g#h'Z~'^P#X#Y'a~'fOR~~'iP#i#j'l~'oP#`#a'r~'uP#`#a'x~'}OS~~(QP#f#g(T~(WP#i#j(Z~(^P#X#Y(a~(fOQ~~(kOW~~(pOV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0});const Hp=Wa.define({parser:Bp.configure({props:[Ha.add({Object:oo({except:/^\s*\}/}),Array:oo({except:/^\s*\]/})}),so.add({"Object Array":Oo}),zc({String:Ou.string,Number:Ou.number,"True False":Ou.bool,PropertyName:Ou.propertyName,null:Ou.null,",":Ou.separator,"[ ]":Ou.squareBracket,"{ }":Ou.brace})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});var Kp=Object.freeze({__proto__:null,json:function(){return new Ga(Hp)},jsonLanguage:Hp,jsonParseLinter:()=>e=>{try{JSON.parse(e.state.doc.toString())}catch(t){if(!(t instanceof SyntaxError))throw t;const n=function(e,t){let n;return(n=e.message.match(/at position (\d+)/))?Math.min(+n[1],t.length):(n=e.message.match(/at line (\d+) column (\d+)/))?Math.min(t.line(+n[1]).from+ +n[2]-1,t.length):0}(t,e.state.doc);return[{from:n,message:t.message,severity:"error",to:n}]}return[]}});const Jp=[21,47,48,228,63,121,52,55,203,60,61,56,59,71],ef=new Rl(((e,t)=>{if(e.next<0)e.acceptToken(167);else if(10!=e.next&&13!=e.next);else if(t.context.depth<0)e.acceptToken(165,1);else{e.advance();let t=0;for(;32==e.next||9==e.next;)e.advance(),t++;let n=10==e.next||13==e.next||35==e.next;e.acceptToken(n?166:164,-t)}}),{contextual:!0,fallback:!0}),tf=new Rl(((e,t)=>{let n=t.context.depth;if(n<0)return;let r=e.peek(-1);if((10==r||13==r)&&t.context.depth>=0){let t=0,r=0;for(;;){if(32==e.next)t++;else{if(9!=e.next)break;t+=8-t%8}e.advance(),r++}t!=n&&10!=e.next&&13!=e.next&&35!=e.next&&(te.depth<0&&Jp.indexOf(t)>-1?e.parent:e,shift:(e,t,n,r)=>162==t?new nf(e,n.pos-r.pos):163==t?e.parent:22==t||53==t||57==t?new nf(e,-1):e,hash:e=>e.hash}),af=new Rl((e=>{for(let t=0;t<5;t++){if(e.next!="print".charCodeAt(t))return;e.advance()}if(!/\w/.test(String.fromCharCode(e.next)))for(let t=0;;t++){let n=e.peek(t);if(32!=n&&9!=n)return void(40!=n&&46!=n&&10!=n&&13!=n&&35!=n&&e.acceptToken(1))}})),of={__proto__:null,await:40,or:48,and:50,in:54,not:56,is:58,if:64,else:66,lambda:70,yield:88,from:90,async:98,for:100,None:152,True:154,False:154,del:168,pass:172,break:176,continue:180,return:184,raise:192,import:196,as:198,global:202,nonlocal:204,assert:208,elif:218,while:222,try:228,except:230,finally:232,with:236,def:240,class:250},sf=Ll.deserialize({version:13,states:"!?pO`Q$IXOOO%cQ$I[O'#GaOOQ$IS'#Cm'#CmOOQ$IS'#Cn'#CnO'RQ$IWO'#ClO(tQ$I[O'#G`OOQ$IS'#Ga'#GaOOQ$IS'#DR'#DROOQ$IS'#G`'#G`O)bQ$IWO'#CqO)rQ$IWO'#DbO*SQ$IWO'#DfOOQ$IS'#Ds'#DsO*gO`O'#DsO*oOpO'#DsO*wO!bO'#DtO+SO#tO'#DtO+_O&jO'#DtO+jO,UO'#DtO-lQ$I[O'#GQOOQ$IS'#GQ'#GQO'RQ$IWO'#GPO/OQ$I[O'#GPOOQ$IS'#E]'#E]O/gQ$IWO'#E^OOQ$IS'#GO'#GOO/qQ$IWO'#F}OOQ$IV'#F}'#F}O/|Q$IWO'#FPOOQ$IS'#Fr'#FrO0RQ$IWO'#FOOOQ$IV'#H]'#H]OOQ$IV'#F|'#F|OOQ$IT'#FR'#FRQ`Q$IXOOO'RQ$IWO'#CoO0aQ$IWO'#CzO0hQ$IWO'#DOO0vQ$IWO'#GeO1WQ$I[O'#EQO'RQ$IWO'#EROOQ$IS'#ET'#ETOOQ$IS'#EV'#EVOOQ$IS'#EX'#EXO1lQ$IWO'#EZO2SQ$IWO'#E_O/|Q$IWO'#EaO2gQ$I[O'#EaO/|Q$IWO'#EdO/gQ$IWO'#EgO/gQ$IWO'#EkO/gQ$IWO'#EnO2rQ$IWO'#EpO2yQ$IWO'#EuO3UQ$IWO'#EqO/gQ$IWO'#EuO/|Q$IWO'#EwO/|Q$IWO'#E|OOQ$IS'#Cc'#CcOOQ$IS'#Cd'#CdOOQ$IS'#Ce'#CeOOQ$IS'#Cf'#CfOOQ$IS'#Cg'#CgOOQ$IS'#Ch'#ChOOQ$IS'#Cj'#CjO'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O'RQ$IWO,58|O3ZQ$IWO'#DmOOQ$IS,5:W,5:WO3nQ$IWO'#GoOOQ$IS,5:Z,5:ZO3{Q%1`O,5:ZO4QQ$I[O,59WO0aQ$IWO,59_O0aQ$IWO,59_O0aQ$IWO,59_O6pQ$IWO,59_O6uQ$IWO,59_O6|Q$IWO,59gO7TQ$IWO'#G`O8ZQ$IWO'#G_OOQ$IS'#G_'#G_OOQ$IS'#DX'#DXO8rQ$IWO,59]O'RQ$IWO,59]O9QQ$IWO,59]O9VQ$IWO,5:PO'RQ$IWO,5:POOQ$IS,59|,59|O9eQ$IWO,59|O9jQ$IWO,5:VO'RQ$IWO,5:VO'RQ$IWO,5:TOOQ$IS,5:Q,5:QO9{Q$IWO,5:QO:QQ$IWO,5:UOOOO'#FZ'#FZO:VO`O,5:_OOQ$IS,5:_,5:_OOOO'#F['#F[O:_OpO,5:_O:gQ$IWO'#DuOOOO'#F]'#F]O:wO!bO,5:`OOQ$IS,5:`,5:`OOOO'#F`'#F`O;SO#tO,5:`OOOO'#Fa'#FaO;_O&jO,5:`OOOO'#Fb'#FbO;jO,UO,5:`OOQ$IS'#Fc'#FcO;uQ$I[O,5:dO>gQ$I[O,5mQ$IZO<TAN>TO#FVQ$IWO<aAN>aO/gQ$IWO1G1^O#FgQ$I[O1G1^P#FqQ$IWO'#FWOOQ$IS1G1d1G1dP#GOQ$IWO'#F^O#G]Q$IWO7+(mOOOO-E9]-E9]O#GsQ$IWO7+'qOOQ$ISAN?VAN?VO#H^Q$IWO,5P#q#r&?]#r#s&@Z#s$g$}$g~&!_v#P#o'P#o#pCU#p#q'P#q#r?[#r~'P9['^Z%q7[%hS%kW%n`%w!bOr'Prs&Rsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'P8z(WZ%q7[%kWOr(yrs)wsw(ywx;bx#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8z)UZ%q7[%hS%kW%w!bOr(yrs)wsw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8z*QZ%q7[%hS%w!bOr(yrs*ssw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8z*|Z%q7[%hS%w!bOr(yrs+osw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y8r+xX%q7[%hS%w!bOw+owx,ex#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+o8r,jX%q7[Ow+owx-Vx#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+o8r-[X%q7[Ow+owx-wx#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+o7[-|R%q7[O#o-w#p#q-w#r~-w8r.[T%q7[O#o+o#o#p.k#p#q+o#q#r.k#r~+o!f.rV%hS%w!bOw.kwx/Xx#O.k#O#P0W#P#o.k#o#p0^#p~.k!f/[VOw.kwx/qx#O.k#O#P0W#P#o.k#o#p0^#p~.k!f/tUOw.kx#O.k#O#P0W#P#o.k#o#p0^#p~.k!f0ZPO~.k!f0cV%hSOw0xwx1^x#O0x#O#P2P#P#o0x#o#p.k#p~0xS0}T%hSOw0xwx1^x#O0x#O#P2P#P~0xS1aTOw0xwx1px#O0x#O#P2P#P~0xS1sSOw0xx#O0x#O#P2P#P~0xS2SPO~0x8z2[T%q7[O#o(y#o#p2k#p#q(y#q#r2k#r~(y!n2tX%hS%kW%w!bOr2krs3asw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k!n3hX%hS%w!bOr2krs4Tsw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k!n4[X%hS%w!bOr2krs.ksw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k!n4|X%kWOr2krs3asw2kwx5ix#O2k#O#P7h#P#o2k#o#p7n#p~2k!n5nX%kWOr2krs3asw2kwx6Zx#O2k#O#P7h#P#o2k#o#p7n#p~2kW6`T%kWOr6Zrs6os#O6Z#O#P7b#P~6ZW6rTOr6Zrs7Rs#O6Z#O#P7b#P~6ZW7USOr6Zs#O6Z#O#P7b#P~6ZW7ePO~6Z!n7kPO~2k!n7uX%hS%kWOr8brs9Osw8bwx:Ux#O8b#O#P;[#P#o8b#o#p2k#p~8b[8iV%hS%kWOr8brs9Osw8bwx:Ux#O8b#O#P;[#P~8b[9TV%hSOr8brs9jsw8bwx:Ux#O8b#O#P;[#P~8b[9oV%hSOr8brs0xsw8bwx:Ux#O8b#O#P;[#P~8b[:ZV%kWOr8brs9Osw8bwx:px#O8b#O#P;[#P~8b[:uV%kWOr8brs9Osw8bwx6Zx#O8b#O#P;[#P~8b[;_PO~8b8z;iZ%q7[%kWOr(yrs)wsw(ywx<[x#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(y7db#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[7d=TX%q7[Or<[rs=ps#O<[#O#P>b#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[7d=uX%q7[Or<[rs-ws#O<[#O#P>b#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[7d>gT%q7[O#o<[#o#p6Z#p#q<[#q#r6Z#r~<[9[>{T%q7[O#o'P#o#p?[#p#q'P#q#r?[#r~'P#O?gX%hS%kW%n`%w!bOr?[rs@Ssw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[#O@]X%hS%n`%w!bOr?[rs@xsw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[#OARX%hS%n`%w!bOr?[rsAnsw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[!vAwV%hS%n`%w!bOwAnwx/Xx#OAn#O#PB^#P#oAn#o#pBd#p~An!vBaPO~An!vBiV%hSOw0xwx1^x#O0x#O#P2P#P#o0x#o#pAn#p~0x#OCRPO~?[#OC]X%hS%kWOr8brs9Osw8bwx:Ux#O8b#O#P;[#P#o8b#o#p?[#p~8b9[DTZ%q7[%hS%n`%w!bOr'PrsDvsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'P9SERX%q7[%hS%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~Dv9SEsT%q7[O#oDv#o#pAn#p#qDv#q#rAn#r~Dve#P#o!+X#o#p!@}#p#q!+X#q#r!>y#r~!+XDe!+h_%q7[%hS%kW%f,X%n`%w!bOY!+XYZ'PZ]!+X]^'P^r!+Xrs!,gsw!+Xwx!-gx#O!+X#O#P!>e#P#o!+X#o#p!@}#p#q!+X#q#r!>y#r~!+XDe!,tZ%q7[%hS%f,X%n`%w!bOr'PrsCxsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PDT!-p_%q7[%kW%f,XOY!.oYZ(yZ]!.o]^(y^r!.ors!/{sw!.owx!;Rx#O!.o#O#P!0y#P#o!.o#o#p!6m#p#q!.o#q#r!1_#r~!.oDT!.|_%q7[%hS%kW%f,X%w!bOY!.oYZ(yZ]!.o]^(y^r!.ors!/{sw!.owx!-gx#O!.o#O#P!0y#P#o!.o#o#p!6m#p#q!.o#q#r!1_#r~!.oDT!0WZ%q7[%hS%f,X%w!bOr(yrs*ssw(ywx(Px#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(yDT!1OT%q7[O#o!.o#o#p!1_#p#q!.o#q#r!1_#r~!.o-w!1j]%hS%kW%f,X%w!bOY!1_YZ2kZ]!1_]^2k^r!1_rs!2csw!1_wx!3Xx#O!1_#O#P!6g#P#o!1_#o#p!6m#p~!1_-w!2lX%hS%f,X%w!bOr2krs4Tsw2kwx4wx#O2k#O#P7h#P#o2k#o#p7n#p~2k-w!3`]%kW%f,XOY!1_YZ2kZ]!1_]^2k^r!1_rs!2csw!1_wx!4Xx#O!1_#O#P!6g#P#o!1_#o#p!6m#p~!1_-w!4`]%kW%f,XOY!1_YZ2kZ]!1_]^2k^r!1_rs!2csw!1_wx!5Xx#O!1_#O#P!6g#P#o!1_#o#p!6m#p~!1_,a!5`X%kW%f,XOY!5XYZ6ZZ]!5X]^6Z^r!5Xrs!5{s#O!5X#O#P!6a#P~!5X,a!6QT%f,XOr6Zrs7Rs#O6Z#O#P7b#P~6Z,a!6dPO~!5X-w!6jPO~!1_-w!6v]%hS%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!9Xx#O!7o#O#P!:{#P#o!7o#o#p!1_#p~!7o,e!7xZ%hS%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!9Xx#O!7o#O#P!:{#P~!7o,e!8rV%hS%f,XOr8brs9jsw8bwx:Ux#O8b#O#P;[#P~8b,e!9`Z%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!:Rx#O!7o#O#P!:{#P~!7o,e!:YZ%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!5Xx#O!7o#O#P!:{#P~!7o,e!;OPO~!7oDT!;[_%q7[%kW%f,XOY!.oYZ(yZ]!.o]^(y^r!.ors!/{sw!.owx!P#P#o!b#P#o<[#o#p6Z#p#q<[#q#r6Z#r~<[Bm!>UT%q7[O#o!jT%q7[O#o!+X#o#p!>y#p#q!+X#q#r!>y#r~!+X.X!?W]%hS%kW%f,X%n`%w!bOY!>yYZ?[Z]!>y]^?[^r!>yrs!@Psw!>ywx!3Xx#O!>y#O#P!@w#P#o!>y#o#p!@}#p~!>y.X!@[X%hS%f,X%n`%w!bOr?[rs@xsw?[wx4wx#O?[#O#PCO#P#o?[#o#pCU#p~?[.X!@zPO~!>y.X!AW]%hS%kW%f,XOY!7oYZ8bZ]!7o]^8b^r!7ors!8ksw!7owx!9Xx#O!7o#O#P!:{#P#o!7o#o#p!>y#p~!7oGZ!B^Z%q7[%hS%f,X%n`%w!bOr'Prs!CPsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PGZ!C`X%l#|%q7[%hS%j,X%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~DvMg!D`_Q1s%q7[%hS%kW%n`%tp%w!b%y#tOY!C{YZ$}Z]!C{]^$}^r!C{rs!E_sw!C{wx#Hqx#O!C{#O#P$(i#P#o!C{#o#p$*{#p#q!C{#q#r$)]#r~!C{JP!El_Q1s%q7[%hS%n`%w!bOY!FkYZ'PZ]!Fk]^'P^r!Fkrs#Eksw!Fkwx!Gyx#O!Fk#O#P#=u#P#o!Fk#o#p#Di#p#q!Fk#q#r#>i#r~!FkJP!Fz_Q1s%q7[%hS%kW%n`%w!bOY!FkYZ'PZ]!Fk]^'P^r!Fkrs!E_sw!Fkwx!Gyx#O!Fk#O#P#=u#P#o!Fk#o#p#Di#p#q!Fk#q#r#>i#r~!FkIo!HS_Q1s%q7[%kWOY!IRYZ(yZ]!IR]^(y^r!IRrs!J_sw!IRwx#8wx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIo!I`_Q1s%q7[%hS%kW%w!bOY!IRYZ(yZ]!IR]^(y^r!IRrs!J_sw!IRwx!Gyx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIo!Jj_Q1s%q7[%hS%w!bOY!IRYZ(yZ]!IR]^(y^r!IRrs!Kisw!IRwx!Gyx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIo!Kt_Q1s%q7[%hS%w!bOY!IRYZ(yZ]!IR]^(y^r!IRrs!Lssw!IRwx!Gyx#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRIg!MO]Q1s%q7[%hS%w!bOY!LsYZ+oZ]!Ls]^+o^w!Lswx!Mwx#O!Ls#O#P#!y#P#o!Ls#o#p#&m#p#q!Ls#q#r##m#r~!LsIg!NO]Q1s%q7[OY!LsYZ+oZ]!Ls]^+o^w!Lswx!Nwx#O!Ls#O#P#!y#P#o!Ls#o#p#&m#p#q!Ls#q#r##m#r~!LsIg# O]Q1s%q7[OY!LsYZ+oZ]!Ls]^+o^w!Lswx# wx#O!Ls#O#P#!y#P#o!Ls#o#p#&m#p#q!Ls#q#r##m#r~!LsHP#!OXQ1s%q7[OY# wYZ-wZ]# w]^-w^#o# w#o#p#!k#p#q# w#q#r#!k#r~# w1s#!pRQ1sOY#!kZ]#!k^~#!kIg##QXQ1s%q7[OY!LsYZ+oZ]!Ls]^+o^#o!Ls#o#p##m#p#q!Ls#q#r##m#r~!Ls3Z##vZQ1s%hS%w!bOY##mYZ.kZ]##m]^.k^w##mwx#$ix#O##m#O#P#&X#P#o##m#o#p#&m#p~##m3Z#$nZQ1sOY##mYZ.kZ]##m]^.k^w##mwx#%ax#O##m#O#P#&X#P#o##m#o#p#&m#p~##m3Z#%fZQ1sOY##mYZ.kZ]##m]^.k^w##mwx#!kx#O##m#O#P#&X#P#o##m#o#p#&m#p~##m3Z#&^TQ1sOY##mYZ.kZ]##m]^.k^~##m3Z#&tZQ1s%hSOY#'gYZ0xZ]#'g]^0x^w#'gwx#(Zx#O#'g#O#P#)m#P#o#'g#o#p##m#p~#'g1w#'nXQ1s%hSOY#'gYZ0xZ]#'g]^0x^w#'gwx#(Zx#O#'g#O#P#)m#P~#'g1w#(`XQ1sOY#'gYZ0xZ]#'g]^0x^w#'gwx#({x#O#'g#O#P#)m#P~#'g1w#)QXQ1sOY#'gYZ0xZ]#'g]^0x^w#'gwx#!kx#O#'g#O#P#)m#P~#'g1w#)rTQ1sOY#'gYZ0xZ]#'g]^0x^~#'gIo#*YXQ1s%q7[OY!IRYZ(yZ]!IR]^(y^#o!IR#o#p#*u#p#q!IR#q#r#*u#r~!IR3c#+Q]Q1s%hS%kW%w!bOY#*uYZ2kZ]#*u]^2k^r#*urs#+ysw#*uwx#-}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#,S]Q1s%hS%w!bOY#*uYZ2kZ]#*u]^2k^r#*urs#,{sw#*uwx#-}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#-U]Q1s%hS%w!bOY#*uYZ2kZ]#*u]^2k^r#*urs##msw#*uwx#-}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#.U]Q1s%kWOY#*uYZ2kZ]#*u]^2k^r#*urs#+ysw#*uwx#.}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u3c#/U]Q1s%kWOY#*uYZ2kZ]#*u]^2k^r#*urs#+ysw#*uwx#/}x#O#*u#O#P#2i#P#o#*u#o#p#2}#p~#*u1{#0UXQ1s%kWOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#0qs#O#/}#O#P#2T#P~#/}1{#0vXQ1sOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#1cs#O#/}#O#P#2T#P~#/}1{#1hXQ1sOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#!ks#O#/}#O#P#2T#P~#/}1{#2YTQ1sOY#/}YZ6ZZ]#/}]^6Z^~#/}3c#2nTQ1sOY#*uYZ2kZ]#*u]^2k^~#*u3c#3W]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p#*u#p~#4P2P#4YZQ1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P~#4P2P#5SZQ1s%hSOY#4PYZ8bZ]#4P]^8b^r#4Prs#5usw#4Pwx#6ox#O#4P#O#P#8c#P~#4P2P#5|ZQ1s%hSOY#4PYZ8bZ]#4P]^8b^r#4Prs#'gsw#4Pwx#6ox#O#4P#O#P#8c#P~#4P2P#6vZQ1s%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#7ix#O#4P#O#P#8c#P~#4P2P#7pZQ1s%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#/}x#O#4P#O#P#8c#P~#4P2P#8hTQ1sOY#4PYZ8bZ]#4P]^8b^~#4PIo#9Q_Q1s%q7[%kWOY!IRYZ(yZ]!IR]^(y^r!IRrs!J_sw!IRwx#:Px#O!IR#O#P#*R#P#o!IR#o#p#2}#p#q!IR#q#r#*u#r~!IRHX#:Y]Q1s%q7[%kWOY#:PYZ<[Z]#:P]^<[^r#:Prs#;Rs#O#:P#O#P#=R#P#o#:P#o#p#/}#p#q#:P#q#r#/}#r~#:PHX#;Y]Q1s%q7[OY#:PYZ<[Z]#:P]^<[^r#:Prs#i#p#q!Fk#q#r#>i#r~!Fk3s#>v]Q1s%hS%kW%n`%w!bOY#>iYZ?[Z]#>i]^?[^r#>irs#?osw#>iwx#-}x#O#>i#O#P#DT#P#o#>i#o#p#Di#p~#>i3s#?z]Q1s%hS%n`%w!bOY#>iYZ?[Z]#>i]^?[^r#>irs#@ssw#>iwx#-}x#O#>i#O#P#DT#P#o#>i#o#p#Di#p~#>i3s#AO]Q1s%hS%n`%w!bOY#>iYZ?[Z]#>i]^?[^r#>irs#Awsw#>iwx#-}x#O#>i#O#P#DT#P#o#>i#o#p#Di#p~#>i3k#BSZQ1s%hS%n`%w!bOY#AwYZAnZ]#Aw]^An^w#Awwx#$ix#O#Aw#O#P#Bu#P#o#Aw#o#p#CZ#p~#Aw3k#BzTQ1sOY#AwYZAnZ]#Aw]^An^~#Aw3k#CbZQ1s%hSOY#'gYZ0xZ]#'g]^0x^w#'gwx#(Zx#O#'g#O#P#)m#P#o#'g#o#p#Aw#p~#'g3s#DYTQ1sOY#>iYZ?[Z]#>i]^?[^~#>i3s#Dr]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p#>i#p~#4PJP#Ex_Q1s%q7[%hS%n`%w!bOY!FkYZ'PZ]!Fk]^'P^r!Fkrs#Fwsw!Fkwx!Gyx#O!Fk#O#P#=u#P#o!Fk#o#p#Di#p#q!Fk#q#r#>i#r~!FkIw#GU]Q1s%q7[%hS%n`%w!bOY#FwYZDvZ]#Fw]^Dv^w#Fwwx!Mwx#O#Fw#O#P#G}#P#o#Fw#o#p#CZ#p#q#Fw#q#r#Aw#r~#FwIw#HUXQ1s%q7[OY#FwYZDvZ]#Fw]^Dv^#o#Fw#o#p#Aw#p#q#Fw#q#r#Aw#r~#FwMV#IO_Q1s%q7[%kW%tp%y#tOY#I}YZGQZ]#I}]^GQ^r#I}rs!J_sw#I}wx$%]x#O#I}#O#P#K_#P#o#I}#o#p$$Z#p#q#I}#q#r#LR#r~#I}MV#J`_Q1s%q7[%hS%kW%tp%w!b%y#tOY#I}YZGQZ]#I}]^GQ^r#I}rs!J_sw#I}wx#Hqx#O#I}#O#P#K_#P#o#I}#o#p$$Z#p#q#I}#q#r#LR#r~#I}MV#KfXQ1s%q7[OY#I}YZGQZ]#I}]^GQ^#o#I}#o#p#LR#p#q#I}#q#r#LR#r~#I}6y#Lb]Q1s%hS%kW%tp%w!b%y#tOY#LRYZHhZ]#LR]^Hh^r#LRrs#+ysw#LRwx#MZx#O#LR#O#P$#u#P#o#LR#o#p$$Z#p~#LR6y#Mf]Q1s%kW%tp%y#tOY#LRYZHhZ]#LR]^Hh^r#LRrs#+ysw#LRwx#N_x#O#LR#O#P$#u#P#o#LR#o#p$$Z#p~#LR6y#Nj]Q1s%kW%tp%y#tOY#LRYZHhZ]#LR]^Hh^r#LRrs#+ysw#LRwx$ cx#O#LR#O#P$#u#P#o#LR#o#p$$Z#p~#LR5c$ n]Q1s%kW%tp%y#tOY$ cYZJ|Z]$ c]^J|^r$ crs#0qsw$ cwx$ cx#O$ c#O#P$!g#P#o$ c#o#p$!{#p~$ c5c$!lTQ1sOY$ cYZJ|Z]$ c]^J|^~$ c5c$#SZQ1s%kWOY#/}YZ6ZZ]#/}]^6Z^r#/}rs#0qs#O#/}#O#P#2T#P#o#/}#o#p$ c#p~#/}6y$#zTQ1sOY#LRYZHhZ]#LR]^Hh^~#LR6y$$d]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p#LR#p~#4PMV$%j_Q1s%q7[%kW%tp%y#tOY#I}YZGQZ]#I}]^GQ^r#I}rs!J_sw#I}wx$&ix#O#I}#O#P#K_#P#o#I}#o#p$$Z#p#q#I}#q#r#LR#r~#I}Ko$&v_Q1s%q7[%kW%tp%y#tOY$&iYZN[Z]$&i]^N[^r$&irs#;Rsw$&iwx$&ix#O$&i#O#P$'u#P#o$&i#o#p$!{#p#q$&i#q#r$ c#r~$&iKo$'|XQ1s%q7[OY$&iYZN[Z]$&i]^N[^#o$&i#o#p$ c#p#q$&i#q#r$ c#r~$&iMg$(pXQ1s%q7[OY!C{YZ$}Z]!C{]^$}^#o!C{#o#p$)]#p#q!C{#q#r$)]#r~!C{7Z$)n]Q1s%hS%kW%n`%tp%w!b%y#tOY$)]YZ!!SZ]$)]]^!!S^r$)]rs#?osw$)]wx#MZx#O$)]#O#P$*g#P#o$)]#o#p$*{#p~$)]7Z$*lTQ1sOY$)]YZ!!SZ]$)]]^!!S^~$)]7Z$+U]Q1s%hS%kWOY#4PYZ8bZ]#4P]^8b^r#4Prs#4{sw#4Pwx#6ox#O#4P#O#P#8c#P#o#4P#o#p$)]#p~#4PGz$,b]$}Q%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx!_$}!_!`$-Z!`#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}Gz$-nZ!s,W%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}Gz$.t]$wQ%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx!_$}!_!`$-Z!`#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}G{$/|_%r`%q7[%kW%f,X%tp%y#tOY$0{YZGQZ]$0{]^GQ^r$0{rs$2]sw$0{wx$Jex#O$0{#O#P$Fw#P#o$0{#o#p$Ic#p#q$0{#q#r$G]#r~$0{Gk$1^_%q7[%hS%kW%f,X%tp%w!b%y#tOY$0{YZGQZ]$0{]^GQ^r$0{rs$2]sw$0{wx$Ewx#O$0{#O#P$Fw#P#o$0{#o#p$Ic#p#q$0{#q#r$G]#r~$0{DT$2h_%q7[%hS%f,X%w!bOY$3gYZ(yZ]$3g]^(y^r$3grs$Basw$3gwx$4sx#O$3g#O#P$5o#P#o$3g#o#p$={#p#q$3g#q#r$6T#r~$3gDT$3t_%q7[%hS%kW%f,X%w!bOY$3gYZ(yZ]$3g]^(y^r$3grs$2]sw$3gwx$4sx#O$3g#O#P$5o#P#o$3g#o#p$={#p#q$3g#q#r$6T#r~$3gDT$4|Z%q7[%kW%f,XOr(yrs)wsw(ywx;bx#O(y#O#P2V#P#o(y#o#p7n#p#q(y#q#r2k#r~(yDT$5tT%q7[O#o$3g#o#p$6T#p#q$3g#q#r$6T#r~$3g-w$6`]%hS%kW%f,X%w!bOY$6TYZ2kZ]$6T]^2k^r$6Trs$7Xsw$6Twx$=Rx#O$6T#O#P$=u#P#o$6T#o#p$={#p~$6T-w$7b]%hS%f,X%w!bOY$6TYZ2kZ]$6T]^2k^r$6Trs$8Zsw$6Twx$=Rx#O$6T#O#P$=u#P#o$6T#o#p$={#p~$6T-w$8d]%hS%f,X%w!bOY$6TYZ2kZ]$6T]^2k^r$6Trs$9]sw$6Twx$=Rx#O$6T#O#P$=u#P#o$6T#o#p$={#p~$6T-o$9fZ%hS%f,X%w!bOY$9]YZ.kZ]$9]]^.k^w$9]wx$:Xx#O$9]#O#P$:s#P#o$9]#o#p$:y#p~$9]-o$:^V%f,XOw.kwx/qx#O.k#O#P0W#P#o.k#o#p0^#p~.k-o$:vPO~$9]-o$;QZ%hS%f,XOY$;sYZ0xZ]$;s]^0x^w$;swx$U]%hS%kW%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$?ysw$>}wx$Amx#O$>}#O#P$BZ#P#o$>}#o#p$6T#p~$>},e$?WZ%hS%kW%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$?ysw$>}wx$Amx#O$>}#O#P$BZ#P~$>},e$@QZ%hS%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$@ssw$>}wx$Amx#O$>}#O#P$BZ#P~$>},e$@zZ%hS%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$;ssw$>}wx$Amx#O$>}#O#P$BZ#P~$>},e$AtV%kW%f,XOr8brs9Osw8bwx:px#O8b#O#P;[#P~8b,e$B^PO~$>}DT$Bl_%q7[%hS%f,X%w!bOY$3gYZ(yZ]$3g]^(y^r$3grs$Cksw$3gwx$4sx#O$3g#O#P$5o#P#o$3g#o#p$={#p#q$3g#q#r$6T#r~$3gC{$Cv]%q7[%hS%f,X%w!bOY$CkYZ+oZ]$Ck]^+o^w$Ckwx$Dox#O$Ck#O#P$Ec#P#o$Ck#o#p$:y#p#q$Ck#q#r$9]#r~$CkC{$DvX%q7[%f,XOw+owx-Vx#O+o#O#P.V#P#o+o#o#p0^#p#q+o#q#r.k#r~+oC{$EhT%q7[O#o$Ck#o#p$9]#p#q$Ck#q#r$9]#r~$CkGk$FUZ%q7[%kW%f,X%tp%y#tOrGQrs)wswGQwxM^x#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQGk$F|T%q7[O#o$0{#o#p$G]#p#q$0{#q#r$G]#r~$0{1_$Gl]%hS%kW%f,X%tp%w!b%y#tOY$G]YZHhZ]$G]]^Hh^r$G]rs$7Xsw$G]wx$Hex#O$G]#O#P$I]#P#o$G]#o#p$Ic#p~$G]1_$HpX%kW%f,X%tp%y#tOrHhrs3aswHhwxJWx#OHh#O#PLd#P#oHh#o#pLj#p~Hh1_$I`PO~$G]1_$Il]%hS%kW%f,XOY$>}YZ8bZ]$>}]^8b^r$>}rs$?ysw$>}wx$Amx#O$>}#O#P$BZ#P#o$>}#o#p$G]#p~$>}Gk$JrZ%q7[%kW%f,X%tp%y#tOrGQrs)wswGQwx$Kex#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQGk$KtZ%i!f%q7[%kW%g,X%tp%y#tOrN[rs=OswN[wxN[x#ON[#O#P! Y#P#oN[#o#pKx#p#qN[#q#rJ|#r~N[G{$LzZf,X%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}e#P#o!+X#o#p!@}#p#q!+X#q#r!>y#r~!+XDe&'hZ%q7[%hS%f,X%n`%w!bOr'Prs&(Zsw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PD]&(hX%q7[%hS%j,X%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~DvGk&)b_%q7[%kW%f,X%tp%y#tOY$0{YZGQZ]$0{]^GQ^r$0{rs$2]sw$0{wx&*ax#O$0{#O#P$Fw#P#o$0{#o#p$Ic#p#q$0{#q#r$G]#r~$0{Gk&*nZ%q7[%kW%f,X%tp%y#tOrGQrs)wswGQwx&+ax#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQFT&+nZ%q7[%kW%g,X%tp%y#tOrN[rs=OswN[wxN[x#ON[#O#P! Y#P#oN[#o#pKx#p#qN[#q#rJ|#r~N[Mg&,vc%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&%}sw$}wx&)Tx!Q$}!Q![&!_![!c$}!c!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_Mg&.hg%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&0Psw$}wx&2wx!Q$}!Q![&!_![!c$}!c!t&!_!t!u&5u!u!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#f&!_#f#g&5u#g#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_De&0^Z%q7[%hS%n`%w!b%s,XOr'Prs&1Psw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PDe&1[Z%q7[%hS%n`%w!bOr'Prs&1}sw'Pwx(Px#O'P#O#P>v#P#o'P#o#pCU#p#q'P#q#r?[#r~'PD]&2[X%q7[%hS%x,X%n`%w!bOwDvwx,ex#ODv#O#PEn#P#oDv#o#pBd#p#qDv#q#rAn#r~DvGk&3UZ%q7[%kW%tp%y#t%m,XOrGQrs)wswGQwx&3wx#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQGk&4SZ%q7[%kW%tp%y#tOrGQrs)wswGQwx&4ux#OGQ#O#PHS#P#oGQ#o#pLj#p#qGQ#q#rHh#r~GQFT&5SZ%q7[%kW%v,X%tp%y#tOrN[rs=OswN[wxN[x#ON[#O#P! Y#P#oN[#o#pKx#p#qN[#q#rJ|#r~N[Mg&6[c%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&0Psw$}wx&2wx!Q$}!Q![&!_![!c$}!c!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_Mg&7|k%q7[%hS%kW%e&j%n`%tp%w!b%y#t%Q,XOr$}rs&%}sw$}wx&)Tx!Q$}!Q![&!_![!c$}!c!h&!_!h!i&5u!i!t&!_!t!u&,a!u!}&!_!}#O$}#O#P! n#P#R$}#R#S&!_#S#T$}#T#U&!_#U#V&,a#V#Y&!_#Y#Z&5u#Z#o&!_#o#p!#U#p#q$}#q#r!!S#r$g$}$g~&!_G{&:UZ!V,X%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}d]$uQ%q7[%hS%kW%n`%tp%w!b%y#tOr$}rs&Rsw$}wxFSx!_$}!_!`$-Z!`#O$}#O#P! n#P#o$}#o#p!#U#p#q$}#q#r!!S#r~$}of[e]||-1}],tokenPrec:6589});function Of(e,t){let n=e.lineIndent(t.from),r=e.lineAt(e.pos,-1),i=r.from+r.text.length;return!/\S/.test(r.text)&&e.node.ton?null:n+e.unit}const lf=Wa.define({parser:sf.configure({props:[Ha.add({Body:e=>{var t;return null!==(t=Of(e,e.node))&&void 0!==t?t:e.continue()},IfStatement:e=>/^\s*(else:|elif )/.test(e.textAfter)?e.baseIndent:e.continue(),TryStatement:e=>/^\s*(except |finally:)/.test(e.textAfter)?e.baseIndent:e.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":ro({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":ro({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":ro({closing:"]"}),Script:e=>{if(e.pos+/\s*/.exec(e.textAfter)[0].length>=e.node.to){let t=null;for(let n=e.node,r=n.to;n=n.lastChild,n&&n.to==r;)"Body"==n.type.name&&(t=n);if(t){let n=Of(e,t);if(null!=n)return n}}return e.continue()}}),so.add({"Body ArrayExpression DictionaryExpression":Oo}),zc({"async '*' '**' FormatConversion":Ou.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield":Ou.controlKeyword,"in not and or is del":Ou.operatorKeyword,"import from def class global nonlocal lambda":Ou.definitionKeyword,"with as print":Ou.keyword,self:Ou.self,Boolean:Ou.bool,None:Ou.null,VariableName:Ou.variableName,"CallExpression/VariableName":Ou.function(Ou.variableName),"FunctionDefinition/VariableName":Ou.function(Ou.definition(Ou.variableName)),"ClassDefinition/VariableName":Ou.definition(Ou.className),PropertyName:Ou.propertyName,"CallExpression/MemberExpression/PropertyName":Ou.function(Ou.propertyName),Comment:Ou.lineComment,Number:Ou.number,String:Ou.string,FormatString:Ou.special(Ou.string),UpdateOp:Ou.updateOperator,ArithOp:Ou.arithmeticOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,AssignOp:Ou.definitionOperator,Ellipsis:Ou.punctuation,At:Ou.meta,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,", ;":Ou.separator})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""']},commentTokens:{line:"#"},indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/}});var cf=Object.freeze({__proto__:null,python:function(){return new Ga(lf)},pythonLanguage:lf});function uf(e){return e>=48&&e<=57}function hf(e){return uf(e)||95==e}const df=new Rl(((e,t)=>{if(uf(e.next)){let t=!1;do{e.advance()}while(hf(e.next));if(46==e.next)if(t=!0,e.advance(),uf(e.next))do{e.advance()}while(hf(e.next));else if(46==e.next||e.next>127||/\w/.test(String.fromCharCode(e.next)))return;if(101==e.next||69==e.next){if(t=!0,e.advance(),43!=e.next&&45!=e.next||e.advance(),!hf(e.next))return;do{e.advance()}while(hf(e.next))}if(102==e.next){let n=e.peek(1);if(!(51==n&&50==e.peek(2)||54==n&&52==e.peek(2)))return;e.advance(3),t=!0}t&&e.acceptToken(5)}else if(98==e.next||114==e.next){if(98==e.next&&e.advance(),114!=e.next)return;e.advance();let t=0;for(;35==e.next;)t++,e.advance();if(34!=e.next)return;e.advance();e:for(;;){if(e.next<0)return;let n=34==e.next;if(e.advance(),n){for(let n=0;n{124==e.next&&e.acceptToken(1,1)})),ff=new Rl((e=>{60==e.next?e.acceptToken(2,1):62==e.next&&e.acceptToken(3,1)})),mf={__proto__:null,self:28,super:32,crate:34,impl:46,true:72,false:72,pub:88,in:92,const:96,unsafe:104,async:108,move:110,if:114,let:118,ref:142,mut:144,_:198,else:200,match:204,as:248,return:252,await:262,break:270,continue:276,while:312,loop:316,for:320,macro_rules:327,mod:334,extern:342,struct:346,where:364,union:379,enum:382,type:390,default:395,fn:396,trait:412,use:420,static:438,dyn:476},gf=Ll.deserialize({version:13,states:"$3tQ]Q_OOP$wOWOOO&sQWO'#CnO)WQWO'#IaOOQP'#Ia'#IaOOQQ'#If'#IfO)hO`O'#C}OOQR'#Ii'#IiO)sQWO'#IvOOQO'#Hk'#HkO)xQWO'#DpOOQR'#Ix'#IxO)xQWO'#DpO*ZQWO'#DpOOQO'#Iw'#IwO,SQWO'#J`O,ZQWO'#EiOOQV'#Hp'#HpO,cQYO'#F{OOQV'#El'#ElOOQV'#Em'#EmOOQV'#En'#EnO.YQ_O'#EkO0_Q_O'#EoO2gQWOOO4QQ_O'#FPO7hQWO'#J`OOQV'#FY'#FYO7{Q_O'#F^O:WQ_O'#FaOOQO'#F`'#F`O=sQ_O'#FcO=}Q_O'#FbO@VQWO'#FgOOQO'#J`'#J`OOQV'#Ip'#IpOA]Q_O'#IoOEPQWO'#IoOOQV'#Fw'#FwOF[QWO'#JuOFcQWO'#F|OOQO'#IO'#IOOGrQWO'#GhOOQV'#In'#InOOQV'#Im'#ImOOQV'#Hj'#HjQGyQ_OOOKeQ_O'#DUOKlQYO'#CqOOQP'#I`'#I`OOQV'#Hg'#HgQ]Q_OOOLuQWO'#IaONsQYO'#DXO!!eQWO'#JuO!!lQWO'#JuO!!vQ_O'#DfO!%]Q_O'#E}O!(sQ_O'#FWO!,ZQWO'#FZO!.^QXO'#FbO!.cQ_O'#EeO!!vQ_O'#FmO!0uQWO'#FoO!0zQWO'#FoO!1PQ^O'#FqO!1WQWO'#JuO!1_QWO'#FtO!1dQWO'#FxO!2WQWO'#JjO!2_QWO'#GOO!2_QWO'#G`O!2_QWO'#GbO!2_QWO'#GsOOQO'#Ju'#JuO!2dQWO'#GhO!2lQYO'#GpO!2_QWO'#GqO!3uQ^O'#GtO!3|QWO'#GuO!4hQWO'#HOP!4sOpO'#CcPOOO)CDO)CDOOOOO'#Hi'#HiO!5OO`O,59iOOQV,59i,59iO!5ZQYO,5?bOOQO-E;i-E;iOOQO,5:[,5:[OOQP,59Z,59ZO)xQWO,5:[O)xQWO,5:[O!5oQWO,5?lO!5zQYO,5;qO!6PQYO,5;TO!6hQWO,59QO!7kQXO'#CnO!7rQXO'#IaO!8vQWO'#CoO,^QWO'#EiOOQV-E;n-E;nO!9XQWO'#FsOOQV,5PQYO,5ZQ_O'#HsO$>hQXO,5@QOOQV1G1i1G1iOOQP,5:e,5:eO$>pQXO,5PQYO,5=vO$KuQWO'#KRO$LQQWO,5=xOOQR,5=y,5=yO$LVQWO,5=zO$>PQYO,5>PO$>PQYO,5>POOQO1G.w1G.wO$>PQYO1G.wO$LbQYO,5=pO$LjQZO,59^OOQR,59^,59^O$>PQYO,5=wO$N|QZO,5=}OOQR,5=},5=}O%#`QWO1G/_O!6PQYO1G/_O#E|QYO1G2vO%#eQWO1G2vO%#sQYO1G2vOOQV1G/i1G/iO%$|QWO,5:SO%%UQ_O1G/lO%*_QWO1G1^O%*uQWO1G1hOOQO1G1h1G1hO$>PQYO1G1hO%+]Q^O'#EgOOQV1G0k1G0kOOQV1G1s1G1sO!!vQ_O1G1sO!0zQWO1G1uO!1PQ^O1G1wO!.cQ_O1G1wOOQP,5:j,5:jO$>PQYO1G/^OOQO'#Cn'#CnO%+jQWO1G1zOOQV1G2O1G2OO%+rQWO'#CnO%+zQWO1G3TO%,PQWO1G3TO%,UQYO'#GQO%,gQWO'#G]O%,xQYO'#G_O%.[QYO'#GXOOQV1G2U1G2UO%/kQWO1G2UO%/pQWO1G2UO$@uQWO1G2UOOQV1G2f1G2fO%/kQWO1G2fO#CdQWO1G2fO%/xQWO'#GdOOQV1G2h1G2hO%0ZQWO1G2hO#CoQWO1G2hO%0`QYO'#GSO$>PQYO1G2lO$AWQWO1G2lOOQV1G2y1G2yO%1lQWO1G2yO%3[Q^O'#GkO%3fQWO1G2nO#DYQWO1G2nO%3tQYO,5PQYO1G2vOOQV1G2w1G2wO%5hQWO1G2wO%5mQWO1G2wO#G{QWO1G2wOOQV1G2z1G2zO.YQ_O1G2zO$>PQYO1G2zO%5uQWO1G2zOOQO,5>l,5>lOOQO-EPQYO1G3UPOOO-E;d-E;dPOOO1G.i1G.iOOQO7+*h7+*hO%6yQYO'#IdO%7bQYO'#IgO%7mQYO'#IgO%7uQYO'#IgO%8QQYO,59eOOQO7+%b7+%bOOQP7+$a7+$aOOQV,5:p,5:pO%8VQ!fO,5:pO%8^Q!fO'#JTOOQS'#EZ'#EZOOQS'#E['#E[OOQS'#E]'#E]OOQS'#JT'#JTO%;PQWO'#EYOOQS'#Eb'#EbOOQS'#JR'#JROOQS'#Hn'#HnOOQV,5:q,5:qO%;UQ!fO,5:qO%;]Q!fO,5:oOOQV,5:o,5:oOOQV7+'e7+'eOOQV7+&Z7+&ZO%;dQ[O,59TO%;xQ^O,59TO%^OOQO-E;p-E;pO%?iQWO7+'OO%?pQ_O7+'OOOQO7+'O7+'OOOQO7+'P7+'PO%ArQWO7+'POOQO7+'W7+'WOOQP1G0V1G0VO%AzQXO1G/tO!MoQWO1G/tO%B{QXO1G0RO%CsQ^O'#HlO%DTQWO,5?fOOQP1G/u1G/uO%D`QWO1G/uO%DeQWO'#D_OOQO'#Dt'#DtO%DpQWO'#DtO%DuQWO'#I|OOQO'#I{'#I{O%D}QWO,5:_O%ESQWO'#DtO%EXQWO'#DtOOQP1G0Q1G0QOOQP1G0S1G0SOOQP1G0X1G0XO%EaQXO1G1jO%ElQXO'#FeOOQP,5>_,5>_O!1PQ^O'#FeOOQP-E;q-E;qO$>PQYO1G1jOOQO7+'S7+'SOOQO,5PQYO7+$xOOQV7+'j7+'jO%F{QWO7+(oO%GQQWO7+(oOOQV7+'p7+'pO%/kQWO7+'pO%GVQWO7+'pO%G_QWO7+'pOOQV7+(Q7+(QO%/kQWO7+(QO#CdQWO7+(QOOQV7+(S7+(SO%0ZQWO7+(SO#CoQWO7+(SO$>PQYO7+(WO%GmQWO7+(WO#GxQYO7+(cO%GrQWO7+(YO#DYQWO7+(YOOQV7+(c7+(cO%5hQWO7+(cO%5mQWO7+(cO#G{QWO7+(cOOQV7+(g7+(gO$>PQYO7+(pO%HQQWO7+(pO!1dQWO7+(pOOQV7+$v7+$vO%HVQWO7+$vO%H[QZO1G3ZO%JnQWO1G4kOOQO1G4k1G4kOOQR1G.}1G.}O#-zQWO1G.}O%JsQWO'#KQOOQO'#HW'#HWO%KUQWO'#HXO%KaQWO'#KQOOQO'#KP'#KPO%KiQWO,5=qO%KnQYO'#H[O%LzQWO'#GmO%MVQYO'#CtO%MaQWO'#GmO$>PQYO1G3ZOOQR1G3g1G3gO#7TQWO1G3ZO%MfQZO1G3bO$>PQYO1G3bO& uQYO'#IVO&!VQWO,5@mOOQR1G3d1G3dOOQR1G3f1G3fO%?pQ_O1G3fOOQR1G3k1G3kO&!_QYO7+$cO&!gQYO'#KOOOQQ'#J}'#J}O&!oQYO1G3[O&!tQZO1G3cOOQQ7+$y7+$yO&%TQWO7+$yO&%YQWO7+(bOOQV7+(b7+(bO%5hQWO7+(bO$>PQYO7+(bO#E|QYO7+(bO&%bQWO7+(bO!.cQ_O1G/nO&%pQWO7+%WO$?OQWO7+'SO&%xQWO'#EhO&&TQ^O'#EhOOQU'#Ho'#HoO&&TQ^O,5;ROOQV,5;R,5;RO&&_QWO,5;RO&&dQ^O,5;RO!0zQWO7+'_OOQV7+'a7+'aO&&qQWO7+'cO&&yQWO7+'cO&'QQWO7+$xO&)uQ!fO7+'fO&)|Q!fO7+'fOOQV7+(o7+(oO!1dQWO7+(oO&*TQYO,5PQYO'#JrOOQO'#Jq'#JqO&,zQWO,5PQYO'#GUO&.tQYO'#JkOOQQ,5PQYO7+(YO&3[QYO'#HxO&3pQYO1G2WOOQQ1G2W1G2WOOQQ,5PQYO,5PQYO7+(fO&4lQWO'#IRO&4vQWO,5@hOOQO1G3Q1G3QOOQO1G2}1G2}OOQO1G3P1G3POOQO1G3R1G3ROOQO1G3S1G3SOOQO1G3O1G3OO&5OQWO7+(pO$>PQYO,59fO&5ZQ^O'#ISO&6QQYO,5?ROOQR1G/P1G/POOQV1G0[1G0[OOQS-E;l-E;lO&6YQ!bO,5:rO&6_Q!fO,5:tOOQV1G0]1G0]OOQV1G0Z1G0ZOOQO1G.o1G.oO&6fQWO'#KTOOQO'#KS'#KSO&6nQWO1G.oOOQV<]O&9QQWO,5>]OOQO-E;o-E;oOOQO<WOOQO-E;j-E;jOOQP7+%a7+%aO!1PQ^O,5:`O&:rQWO'#HmO&;WQWO,5?hOOQP1G/y1G/yOOQO,5:`,5:`O&;`QWO,5:`O%ESQWO,5:`O$>PQYO,5`,5>`OOQO-E;r-E;rOOQV7+'l7+'lO&PQYO<PQYO<PQYO<PQYO7+(uOOQO7+*V7+*VOOQR7+$i7+$iO&=rQWO,5@lOOQO'#Gm'#GmO&=zQWO'#GmO&>VQYO'#IUO&=rQWO,5@lOOQR1G3]1G3]O&?rQYO,5=vO&ARQYO,5=XO&A]QWO,5=XOOQO,5=X,5=XOOQR7+(u7+(uO&AbQZO7+(uO&CtQZO7+(|O&FTQWO,5>qOOQO-EPQYO<PQYO,5PQYO,5@^O&IuQYO'#H|O&K[QWO,5@^OOQO1G2e1G2eO%,bQWO,5PQYO,5PO&NtQYO,5@VOOQV<PQYO,5=WO'!xQWO,5@cO'#QQWO,5@cO'#`Q^O'#IPO'!xQWO,5@cOOQO1G2q1G2qO'$rQWO,5=WO'$zQWO<oO'%eQYO,5>dO'%sQYO,5>dOOQQ,5>d,5>dOOQQ-E;v-E;vOOQQ7+'r7+'rO'&OQYO1G2]O$>PQYO1G2^OOQV<m,5>mOOQO-EnOOQQ,5>n,5>nO''TQYO,5>nOOQQ-EX,5>XOOQO-E;k-E;kO!1PQ^O1G/zOOQO1G/z1G/zO'+SQWO1G/zO'+XQXO1G1kO$>PQYO1G1kO'+dQWO7+'[OOQVANA`ANA`O'+nQWOANA`O$>PQYOANA`O'+vQWOANA`OOQVAN>OAN>OO%?pQ_OAN>OO',UQWOANAuOOQVAN@vAN@vO',ZQWOAN@vOOQVANAWANAWOOQVANAYANAYOOQVANA^ANA^O',`QWOANA^OOQVANAiANAiO%5hQWOANAiO%5mQWOANAiO',hQWOANA`OOQVANAvANAvO%?pQ_OANAvO',vQWOANAvO$>PQYOANAvOOQR<pOOQO'#HY'#HYO'-ZQWO'#HZOOQO,5>p,5>pOOQO-EPQYO<o,5>oOOQQ-EPQYOANAhO'-uQWO1G1rO'.iQ^O1G0nO%?pQ_O1G0nO'0_QWO,5;UO'0fQWO1G0nP'0kQWO'#ERP&&TQ^O'#HpOOQV7+&X7+&XO'0vQWO7+&XO&&yQWOAN@iO'0{QWOAN>OO!5oQWO,5a,5>aO'1SQWOAN@lO'1XQWOAN@lOOQS-E;s-E;sOOQVAN@lAN@lO'1aQWOAN@lOOQVANAuANAuO'1iQWO1G5vO'1qQWO1G2dO$>PQYO1G2dO&*nQWO,5>gOOQO,5>g,5>gOOQO-E;y-E;yO'1|QWO1G5xO'2UQWO1G5xO&+`QYO,5>hO'2aQWO,5>hO$>PQYO,5>hOOQO-E;z-E;zO'2lQWO'#JnOOQO1G2a1G2aOOQO,5>f,5>fOOQO-E;x-E;xO&*TQYO,5iOOQO,5>i,5>iOOQO-E;{-E;{OOQQ,5>c,5>cOOQQ-E;u-E;uO'4TQWO1G2sO'4eQWO1G2rO'4pQWO1G5}O'4xQ^O,5>kOOQO'#Go'#GoOOQO,5>k,5>kO'6UQWO,5>kOOQO-E;}-E;}O$>PQYO1G2rO'6dQYO7+'xO'6oQWOANAlOOQVANAlANAlO%?pQ_OANAlO'6vQWOANAvOOQS7+%z7+%zO'6}QWO7+%zO'7YQ!fO7+%zOOQO,5>r,5>rOOQO-EPQYOG26zO'8eQWOG23jOOQVG27aG27aOOQVG26bG26bOOQVG26xG26xOOQVG27TG27TO%5hQWOG27TO'8lQWOG27bOOQVG27bG27bO%?pQ_OG27bO'8sQWOG27bOOQO1G4[1G4[OOQO7+(_7+(_OOQRANA{ANA{OOQVG27SG27SO%5hQWOG27SO&3}QWOG27SO'9OQ^O7+&YO':iQWO7+'^O';]Q^O7+&YO%?pQ_O7+&YP%?pQ_O,5;SP'PQYO1G4SO%,bQWO'#HyO'=nQWO,5@YO'=|QWO7+(VO%?pQ_O7+(VOOQO1G4T1G4TOOQO1G4V1G4VO'>WQWO1G4VO'>fQWO7+(^OOQVG27WG27WO'>qQWOG27WOOQS<xQWO<e,5>eOOQO-E;w-E;wO'F[QWO<a#>m#>z#?Q#?Y#?a#?k#?qPPPPPPP#?w#CTP#GS#Kn#Mi$ h$'UP$'XPPP$*`$*i$*{$0V$2e$2n$4gP!)Y$5a$8u$;l$?W$?a$?f$?iPPP$?l$BcP$BsPPPPPPPPPP$CXP$Eg$Ej$Em$Es$Ev$Ey$E|$FP$FV$Ha$Hd$Hg$Hj$Hm$Hp$Hs$Hv$Hy$H|$IP$KV$KY$K]#*l$Ki$Ko$Kr$Ku$Ky$K}$LQ$LT$LW$LZQ!tPT'V!s'Wi!SOlm!P!T$T$W$y%b)T*e/fQ'h#QQ,l'kQ1d,kR7q5X(SSOY[bfgilmop!O!P!T!Y!Z![!_!`!c!p!q!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r$y%X%_%b&U&Y&[&b&u&z&|'P'a'k'm'n'|(V(X(a(c(d(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m+y,k,o,r,y-Q-S-f-l-s.|/]/a/c/f0d0f0l0|1O1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m:nS(y$v-nQ*o&eQ*s&hQ-j(xQ-x)YW0Y+P0X4]7ZR4[0Z&{!RObfgilmop!O!P!T!Y!Z![!_!`!c!p#Q#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r$y%_%b&U&Y&[&b&u'k'|(V(X(a(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,r,y-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m#r]Ofgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9of#[b#Q$y'k(a)R)T*Y,k-s5X!h$bo!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t$b%k!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n!W;Q!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR;T%n$_%u!Q!n$O$u%o%p%q&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n$e%l!Q!n$O$u%n%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n'hZOY[fgilmop!O!P!T!Y!Z![!_!`!c!p!|!}#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r%_%b%i%j&U&Y&[&b&u'a'|(V(X(c(d(e(i(n(o(q({)h)o)p*e*h*j*k+Y+m,r,y-Q-S-f-l.h.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:g:h:l:m:n:{:|;P$^%l!Q!n$O$u%n%o%p%q%y%{&P&p&r(p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nQ&j!hQ&k!iQ&l!jQ&m!kQ&s!oQ)Z%QQ)[%RQ)]%SQ)^%TQ)a%WQ+_&oS,Q']1YQ.V)_S/q*t4VR4p0r+}TOY[bfgilmop!O!P!Q!T!Y!Z![!_!`!c!n!p!q!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$O$T$W$`$a$e$g$h$q$r$u$y%X%_%b%i%j%n%o%p%q%y%{&P&U&Y&[&b&o&p&r&u&z&|'P']'a'k'm'n'|(V(X(a(c(d(e(i(n(o(p(q({)R)T)h)o)p)r)w)x)}*O*Q*U*Y*Z*]*d*e*h*j*k*m*v*w+T+U+Y+g+m+n+y+|,k,o,r,y-Q-S-f-h-l-s-u.T._.h.o.s.w.x.|/Y/Z/]/a/c/f/z/|0_0d0f0l0q0v0|0}1O1X1Y1i1s1z1}2b2i2k2n2t2w3W3`3b3g3i3l3w3}4O4T4W4Y4a4e4g4j4v4x5O5X5a5e5i5l5y5{6W6_6b6f6u6{6}7X7c7h7l7t7y8S8_8`8n8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:g:h:l:m:n:{:|;PQ'[!xQ'g#PQ)k%gU)q%m*S*VR.e)jQ,S']R5R1Y#t%s!Q!n$O$u%p%q&P&p&r(p)w)x)}*Q*U*Z*]*d*m*v+U+g+n+|-h-u.T._.s.w.x/Y/Z/z/|0_0q0v0}1X1z2b2i2k2n2w3W3w3}4O4W4g4v5e5i5{6W6_6u6{6}7h7y8nQ)w%oQ+^&oQ,T']l,_'b'c'd,Y,e,f/l/m1`3p3s5V5W7pS.p)r2tQ.}*OQ/P*RQ/p*tS0P*w4TQ0`+T[0n+Y.i0f4j6O7cQ2w.oS4f0d2sQ4o0rQ5S1YQ6Y3SQ7P4RQ7T4VQ7^4aR9a8o&pVOfgilmop!O!P!T!Y!Z![!_!`!c!p#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r%_%b&U&Y&[&b&u']'|(V(X(a(e(i(n(o(q({)h*e*h*j*k+Y+m,j,k,r,y-S-f-l.|/]/a/c/f0d0f0l0|1Y1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mU&g!g%P%[m,_'b'c'd,Y,e,f/l/m1`3p3s5V5W7p$nsOfgilm!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y'|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:R:S:V:W:X:Y:Z:[:]:^:_:`:a:lS$tp:PS&O!W#bS&Q!X#cQ&`!bQ*^&RQ*`&VS*c&[:mQ*g&^Q,S']Q-i(vQ/h*iQ0o+ZS2g.W0pQ3^/^Q3_/_Q3h/gQ3j/jQ5R1YU5g2S2h4nU7v5h5j5wQ8d6iS8|7w7xS9f8}9OR9p9gi{Ob!O!P!T$y%_%b)R)T)h-shxOb!O!P!T$y%_%b)R)T)h-sW/u*u/s3y6vQ/|*vW0Z+P0X4]7ZQ3}/zQ6}4OR8n6{!h$do!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tQ&d!dQ&f!fQ&n!mW&x!q%X&|1OQ'S!rQ)W$}Q)X%OQ)`%VU)c%Y'T'UQ*r&hS+r&z'PS-X(j1tQ-t)VQ-w)YS.`)d)eS0w+b/rQ1R+yQ1V+zS1w-^-_Q2l.aQ3u/oQ5b1yR5m2W${sOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m$zsOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR3^/^V&T!Y!`*h!i$lo!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t!k$^o!c!p$e$g$h$q$r&U&b&u(a(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t!i$co!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t&e^Ofgilmop!O!P!T!Y!Z![!_!`!c!p#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r%_%b&U&Y&[&b&u'|(V(X(e(i(n(o(q({)h*e*h*j*k+Y+m,r,y-S-f-l.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR(k$fQ-Z(jR5_1tQ(R#|S(z$v-nS-Y(j1tQ-k(xW/t*u/s3y6vS1x-^-_Q3x/uR5c1yQ'e#Oh,b'b'c'd,Y,e,f/l/m1`3p3s5WQ,m'lQ,p'oQ.t)tR8f6kQ'f#Oh,b'b'c'd,Y,e,f/l/m1`3p3s5WQ,n'lQ,p'oQ.t)tR8f6ki,b'b'c'd,Y,e,f/l/m1`3p3s5WR*f&]X/b*e/c/f3g!}aOb!O!P!T#z$v$y%_%b'|(x)R)T)h)r*e*u*v+P+Y,r-n-s.i/a/c/f/s/z0X0f1i2t3g3y4O4]4j6O6f6v6{7Z7cQ3a/`Q6d3cQ8a6eR9^8b${rOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m#nfOfglmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o!T9|!Y!_!`*h*k/]3i9|9}:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:l:m#rfOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o!X9|!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m$srOfglmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:l:m#U#oh#d$P$Q$V$s%^&W&X'p's't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9i}:W&S&]/j3]6i:c:d:j:k:o:q:r:s:t:u:v:w:x:y:};O;S#W#ph#d$P$Q$V$s%^&W&X'p'q's't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9i!P:X&S&]/j3]6i:c:d:j:k:o:p:q:r:s:t:u:v:w:x:y:};O;S#S#qh#d$P$Q$V$s%^&W&X'p't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9i{:Y&S&]/j3]6i:c:d:j:k:o:r:s:t:u:v:w:x:y:};O;S#Q#rh#d$P$Q$V$s%^&W&X'p'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iy:Z&S&]/j3]6i:c:d:j:k:o:s:t:u:v:w:x:y:};O;S#O#sh#d$P$Q$V$s%^&W&X'p'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iw:[&S&]/j3]6i:c:d:j:k:o:t:u:v:w:x:y:};O;S!|#th#d$P$Q$V$s%^&W&X'p'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iu:]&S&]/j3]6i:c:d:j:k:o:u:v:w:x:y:};O;S!x#vh#d$P$Q$V$s%^&W&X'p'y'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9iq:_&S&]/j3]6i:c:d:j:k:o:w:x:y:};O;S!v#wh#d$P$Q$V$s%^&W&X'p'z'{'}(T(Z(_*a*b,q,v,x-m0y1j1m2O3Q4y5[5f6c6j7W7j7m7z8Q8q8x9S9c9io:`&S&]/j3]6i:c:d:j:k:o:x:y:};O;S$]#{h#`#d$P$Q$V$s%^&S&W&X&]'p'q'r's't'u'v'w'x'y'z'{'}(T(Z(_*a*b,q,v,x-m/j0y1j1m2O3Q3]4y5[5f6c6i6j7W7j7m7z8Q8q8x9S9c9i:c:d:j:k:o:p:q:r:s:t:u:v:w:x:y:};O;S${jOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m$v!aOfgilmp!O!P!T!Y!Z!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ&Y![Q&Z!]R:l:S#rpOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9oQ&[!^!W:P!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mR:m;RR$moR-e(qR$wqT(|$v-nQ/e*eS3e/c/fR6h3gQ3o/lQ3r/mQ6n3pR6q3sQ$zwQ)U${Q*p&fQ+e&qQ+h&sQ-v)XW.Y)a+i+j+kS/W*[+fW2c.V.Z.[.]U3X/X/[0xU5t2d2e2fS6]3Y3[S8O5u5vS8X6[6^Q9Q8PS9U8Y8ZR9j9V^|O!O!P!T%_%b)hX)Q$y)R)T-sQ&r!nQ*]&PQ*{&jQ+O&kQ+S&lQ+V&mQ+[&nQ+k&sQ-|)ZQ.P)[Q.S)]Q.U)^Q.X)`Q.])aQ2T-tQ2f.VR4W0UU+`&o*t4VR4q0rQ+X&mQ+j&sS.[)a+k^0u+^+_/p/q4o4p7TS2e.V.]S4S0Q0RR5v2fS0Q*w4TQ0`+TR7^4aU+c&o*t4VR4r0rQ*y&jQ*}&kQ+R&lQ+f&qQ+i&sS-z)Z*{S.O)[+OS.R)]+SU.Z)a+j+kQ/X*[Q0W*zQ0p+ZQ2Y-{Q2Z-|Q2^.PQ2`.SU2d.V.[.]Q2h.WS3[/[0xS5h2S4nQ5o2[S5u2e2fQ6^3YS7x5j5wQ8P5vQ8Y6[Q8}7wQ9V8ZR9g9OQ0S*wR7R4TQ*x&jQ*|&kU-y)Z*y*{U-})[*}+OS2X-z-|S2].O.PQ4Z0YQ5n2ZQ5p2^R7Y4[Q/v*uQ3v/sQ6w3yR8k6vQ*z&jS-{)Z*{Q2[-|Q4Z0YR7Y4[Q+Q&lU.Q)]+R+SS2_.R.SR5q2`Q0[+PQ4X0XQ7[4]R8s7ZQ+Z&nS.W)`+[S2S-t.XR5j2TQ0h+YQ4h0fQ7e4jR8t7cQ.l)rQ0h+YQ2q.iQ4h0fQ6R2tQ7e4jQ8U6OR8t7cQ0h+YR4h0fX'O!q%X&|1OX&{!q%X&|1OW'O!q%X&|1OS+t&z'PR1T+y_|O!O!P!T%_%b)hQ%a!PS)g%_%bR.c)h$^%u!Q!n$O$u%o%p%q&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nQ*T%yR*W%{$c%n!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nW)s%m%x*S*VQ.d)iR2|.uR.l)rR6R2tQ'W!sR+}'WQ!TOQ$TlQ$WmQ%b!P[%|!T$T$W%b)T/fQ)T$yR/f*e$b%i!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n[)m%i)o.h:g:{;PQ)o%jQ.h)pQ:g%nQ:{:hR;P:|Q!vUR'Y!vS!OO!TU%]!O%_)hQ%_!PR)h%b#rYOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h+m,r,y-l.|0|1i1}3`3b3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9oh!yY!|#U$`'a'm(c,o-Q9z:T:nQ!|[f#Ub#Q$y'k(a)R)T*Y,k-s5X!h$`o!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tQ'a!}Q'm#ZQ(c$aQ,o'nQ-Q(d!W9z!Y!_!`*h*k/]3i9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ:T9{R:n:UQ-T(fR1q-TQ1u-ZR5`1uQ,Y'bQ,e'cQ,f'dW1^,Y,e,f5WR5W1`Q/c*eS3d/c3gR3g/ffbO!O!P!T$y%_%b)R)T)h-sp#Wb'|(x.i/a/s/z0X0f1i6O6f6v6{7Z7cQ'|#zS(x$v-nQ.i)rW/a*e/c/f3gQ/s*uQ/z*vQ0X+PQ0f+YQ1i,rQ6O2tQ6v3yQ6{4OQ7Z4]R7c4jQ,s'}Q1h,qT1k,s1hS(W$Q(ZQ(]$VU,w(W(],|R,|(_Q(r$mR-g(rQ-o(}R2Q-oQ3p/lQ3s/mT6o3p3sQ)R$yS-q)R-sR-s)TQ4b0`R7_4b`0s+]+^+_+`+c/p/q7TR4s0sQ8p7PR9b8pQ4U0SR7S4UQ3z/vQ6s3vT6x3z6sQ4P/{Q6y3|U7O4P6y8lR8l6zQ4^0[Q7V4XT7]4^7VhzOb!O!P!T$y%_%b)R)T)h-sQ$|xW%Zz$|%f)u$b%f!Q!n$O$u%o%p%q%y%{&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nR)u%nS4k0h0mS7b4h4iT7g4k7bW&z!q%X&|1OS+q&z+yR+y'PQ1P+vR4|1PU1Z,R,S,TR5T1ZS3T/P7TR6Z3TQ2u.lQ5}2qT6S2u5}Q.y)yR3P.yQ5Y1dR7r5Y^_O!O!P!T%_%b)hY#Xb$y)R)T-s$l#_fgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['|(V(X({*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!h$io!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tW'i#Q'k,k5XQ-O(aR/U*Y&z!RObfgilmop!O!P!T!Y!Z![!_!`!c!p#Q#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r$y%_%b&U&Y&[&b&u'k'|(V(X(a(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,r,y-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m[!{Y[#U#Z9z9{W&{!q%X&|1O['`!|!}'m'n:T:US(b$`$aS+s&z'PU,W'a,o:nS-P(c(dQ1S+yR1o-QS%t!Q&oQ&q!nQ(U$OQ(v$uS)v%o.oQ)y%pQ)|%qS*[&P&rQ+d&pQ,R']Q-c(pQ.k)rU.v)w)x2wS.})}*OQ/O*QQ/S*UQ/V*ZQ/[*]Q/_*dQ/k*mQ/{*vS0R*w4TQ0`+TQ0b+UQ0x+gQ0z+nQ1W+|Q1|-hQ2U-uQ2a.TQ2j._Q2{.sQ2}.wQ3O.xQ3Y/YQ3Z/ZS3|/z/|Q4`0_Q4n0qQ4u0vQ4z0}Q5P1XQ5Q1YQ5d1zQ5s2bQ5w2iQ5z2kQ5|2nQ6Q2tQ6[3WQ6t3wQ6z3}Q6|4OQ7U4WQ7^4aQ7a4gQ7i4vQ7u5eQ7w5iQ8T5{Q8W6WQ8Z6_Q8j6uS8m6{6}Q8v7hQ9O7yR9`8n$^%m!Q!n$O$u%o%p%q&P&o&p&r'](p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nQ)i%nQ*S%yR*V%{$y%h!Q!n$O$u%i%j%n%o%p%q%y%{&P&o&p&r'](p)o)p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.h.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n:g:h:{:|;P'tWOY[bfgilmop!O!P!T!Y!Z![!_!`!c!p!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r$y%_%b&U&Y&[&b&u'a'k'm'n'|(V(X(a(c(d(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,o,r,y-Q-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m:n$x%g!Q!n$O$u%i%j%n%o%p%q%y%{&P&o&p&r'](p)o)p)r)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.h.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8n:g:h:{:|;P_&y!q%X&z&|'P+y1OR,U']$zrOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!j$]o!c!p$e$g$h$q$r&U&b&u(a(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tQ,S']Q1c,jQ1d,kQ5R1YR7q5X_}O!O!P!T%_%b)h^|O!O!P!T%_%b)hQ#YbX)Q$y)R)T-sbhO!O!T3`6b8_8`9]9oS#`f9|Q#dgQ$PiQ$QlQ$VmQ$spW%^!P%_%b)hU&S!Y!`*hQ&W!ZQ&X![Q&]!_Q'p#eQ'q#oS'r#p:XQ's#qQ't#rQ'u#sQ'v#tQ'w#uQ'x#vQ'y#wQ'z#xQ'{#yQ'}#zQ(T#}Q(Z$TQ(_$WQ*a&YQ*b&[Q,q'|Q,v(VQ,x(XQ-m({Q/j*kQ0y+mQ1j,rQ1m,yQ2O-lQ3Q.|Q3]/]Q4y0|Q5[1iQ5f1}Q6c3bQ6i3iQ6j3lQ7W4YQ7j4xQ7m5OQ7z5lQ8Q5yQ8q7XQ8x7lQ9S8SQ9c8rQ9i9TQ:c:OQ:d:PQ:j:RQ:k:SQ:o:VQ:p:WQ:q:YQ:r:ZQ:s:[Q:t:]Q:u:^Q:v:_Q:w:`Q:x:aQ:y:bQ:}:lQ;O:mR;S9}^tO!O!P!T%_%b)h$`#afgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['|(V(X({*h*k+m,r,y-l.|/]0|1i1}3b3i3l4Y4x5O5l5y7X7l8S8r9T9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ6a3`Q8^6bQ9Y8_Q9[8`Q9n9]R9t9oQ&V!YQ&^!`R/g*hQ$joQ&a!cQ&t!pU(f$e$g(iS(m$h0dQ(t$qQ(u$rQ*_&UQ*l&bQ+o&uQ-R(eS-a(n4eQ-b(oQ-d(qW/`*e/c/f3gQ/i*jW0e+Y0f4j7cQ1p-SQ1{-fQ3c/aQ4m0lQ5^1sQ7s5aQ8b6fR8{7t!h$_o!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7tR-O(a'uXOY[bfgilmop!O!P!T!Y!Z![!_!`!c!p!|!}#Q#U#Z#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$`$a$e$g$h$q$r$y%_%b&U&Y&[&b&u'a'k'm'n'|(V(X(a(c(d(e(i(n(o(q({)R)T)h*Y*e*h*j*k+Y+m,k,o,r,y-Q-S-f-l-s.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5X5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9z9{9|9}:O:P:R:S:T:U:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m:n$zqOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!i$fo!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t&d^Ofgilmop!O!P!T!Y!Z![!_!`!c!p#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W$e$g$h$q$r%_%b&U&Y&[&b&u'|(V(X(e(i(n(o(q({)h*e*h*j*k+Y+m,r,y-S-f-l.|/]/a/c/f0d0f0l0|1i1s1}3`3b3g3i3l4Y4e4j4x5O5a5l5y6b6f7X7c7l7t8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m[!zY[$`$a9z9{['_!|!}(c(d:T:UW)n%i%j:g:hU,V'a-Q:nW.g)o)p:{:|T2p.h;PQ(h$eQ(l$gR-V(iV(g$e$g(iR-](jR-[(j$znOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['|(V(X({)h*h*k+m,r,y-l.|/]0|1i1}3`3b3i3l4Y4x5O5l5y6b7X7l8S8_8`8r9T9]9o9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:m!i$ko!c!p$e$g$h$q$r&U&b&u(e(i(n(o(q*e*j+Y-S-f/a/c/f0d0f0l1s3g4e4j5a6f7c7t`,c'b'c'd,Y,e,f1`5WX3n/l/m3p3sh,b'b'c'd,Y,e,f/l/m1`3p3s5WQ7o5VR8z7p^uO!O!P!T%_%b)h$`#afgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['|(V(X({*h*k+m,r,y-l.|/]0|1i1}3b3i3l4Y4x5O5l5y7X7l8S8r9T9|9}:O:P:R:S:V:W:X:Y:Z:[:]:^:_:`:a:b:l:mQ6`3`Q8]6bQ9X8_Q9Z8`Q9m9]R9s9oR(P#zR(O#zQ$SlR([$TR$ooR$noR)P$vR)O$vQ(}$vR2P-nhwOb!O!P!T$y%_%b)R)T)h-s$l!lz!Q!n$O$u$|%f%n%o%p%q%y%{&P&o&p&r'](p)r)u)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nR${xR0a+TR0V*wR0T*wR7Q4RR/x*uR/w*uR0O*vR/}*vR0^+PR0]+P%XyObxz!O!P!Q!T!n$O$u$y$|%_%b%f%n%o%p%q%y%{&P&o&p&r'](p)R)T)h)r)u)w)x)}*O*Q*U*Z*]*d*m*v*w+T+U+g+n+|-h-s-u.T._.o.s.w.x/Y/Z/z/|0_0q0v0}1X1Y1z2b2i2k2n2t2w3W3w3}4O4T4W4a4g4v5e5i5{6W6_6u6{6}7h7y8nR0j+YR0i+YQ'R!qQ)b%XQ+v&|R4{1OX'Q!q%X&|1OR+x&|R+w&|T/R*R4VT/Q*R4VR.n)rR.m)rR)z%pR1f,kR1e,k",nodeNames:"⚠ | < > RawString Float LineComment BlockComment SourceFile ] InnerAttribute ! [ MetaItem self Metavariable super crate Identifier ScopedIdentifier :: QualifiedScope AbstractType impl SelfType MetaType TypeIdentifier ScopedTypeIdentifier ScopeIdentifier TypeArgList TypeBinding = Lifetime String Escape Char Boolean Integer } { Block ; ConstItem Vis pub ( in ) const BoundIdentifier : UnsafeBlock unsafe AsyncBlock async move IfExpression if LetDeclaration let LiteralPattern ArithOp MetaPattern SelfPattern ScopedIdentifier TuplePattern ScopedTypeIdentifier , StructPattern FieldPatternList FieldPattern ref mut FieldIdentifier .. RefPattern SlicePattern CapturedPattern ReferencePattern & MutPattern RangePattern ... OrPattern MacroPattern ParenthesizedTokens BracketedTokens BracedTokens TokenBinding Identifier TokenRepetition ArithOp BitOp LogicOp UpdateOp CompareOp -> => ArithOp _ else MatchExpression match MatchBlock MatchArm Attribute Guard UnaryExpression ArithOp DerefOp LogicOp ReferenceExpression TryExpression BinaryExpression ArithOp ArithOp BitOp BitOp BitOp BitOp LogicOp LogicOp AssignmentExpression TypeCastExpression as ReturnExpression return RangeExpression CallExpression ArgList AwaitExpression await FieldExpression GenericFunction BreakExpression break LoopLabel ContinueExpression continue IndexExpression ArrayExpression TupleExpression MacroInvocation UnitExpression ClosureExpression ParamList Parameter Parameter ParenthesizedExpression StructExpression FieldInitializerList ShorthandFieldInitializer FieldInitializer BaseFieldInitializer MatchArm WhileExpression while LoopExpression loop ForExpression for MacroInvocation MacroDefinition macro_rules MacroRule EmptyStatement ModItem mod DeclarationList AttributeItem ForeignModItem extern StructItem struct TypeParamList ConstrainedTypeParameter TraitBounds HigherRankedTraitBound RemovedTraitBound OptionalTypeParameter ConstParameter WhereClause where LifetimeClause TypeBoundClause FieldDeclarationList FieldDeclaration OrderedFieldDeclarationList UnionItem union EnumItem enum EnumVariantList EnumVariant TypeItem type FunctionItem default fn ParamList Parameter SelfParameter VariadicParameter VariadicParameter ImplItem TraitItem trait AssociatedType LetDeclaration UseDeclaration use ScopedIdentifier UseAsClause ScopedIdentifier UseList ScopedUseList UseWildcard ExternCrateDeclaration StaticItem static ExpressionStatement ExpressionStatement GenericType FunctionType ForLifetimes ParamList VariadicParameter Parameter VariadicParameter Parameter ReferenceType PointerType TupleType UnitType ArrayType MacroInvocation EmptyType DynamicType dyn BoundedType",maxTerm:361,nodeProps:[[Di.group,-42,4,5,14,15,16,17,18,19,33,35,36,37,40,51,53,56,101,107,111,112,113,122,123,125,127,128,130,132,133,134,137,139,140,141,142,143,144,148,149,155,157,159,"Expression",-16,22,24,25,26,27,222,223,230,231,232,233,234,235,236,237,239,"Type",-20,42,161,162,165,166,169,170,172,188,190,194,196,204,205,207,208,209,217,218,220,"Statement",-17,49,60,62,63,64,65,68,74,75,76,77,78,80,81,83,84,99,"Pattern"],[Di.openedBy,9,"[",38,"{",47,"("],[Di.closedBy,12,"]",39,"}",45,")"]],skippedNodes:[0,6,7,240],repeatNodeCount:33,tokenData:"#?|_R!VOX$hXY1_YZ2ZZ]$h]^1_^p$hpq1_qr2srs4qst5Ztu6Vuv9lvw;jwx=nxy!!ayz!#]z{!$X{|!&R|}!'T}!O!(P!O!P!*Q!P!Q!-|!Q!R!6X!R![!7|![!]!Jw!]!^!Lu!^!_!Mq!_!`# x!`!a##y!a!b#&Q!b!c#&|!c!}#'x!}#O#)o#O#P#*k#P#Q#1b#Q#R#2^#R#S#'x#S#T$h#T#U#'x#U#V#3`#V#f#'x#f#g#6s#g#o#'x#o#p#y!X!Y$h!Y!Z!<}!Z#O$h#O#P%x#P#g$h#g#h!?y#h~$h_!;O_'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!S$h!S!T!;}!T!W$h!W!X!<}!X#O$h#O#P%x#P~$h_!Q]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!S$h!S!T!<}!T#O$h#O#P%x#P~$h_!?Q]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!U$h!U!V!<}!V#O$h#O#P%x#P~$h_!@Q]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P#]$h#]#^!@y#^~$h_!AQ]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P#n$h#n#o!Ay#o~$h_!BQ]'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P#X$h#X#Y!<}#Y~$h_!CQ_'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!R!DP!R!S!DP!S#O$h#O#P%x#P#R$h#R#S!DP#S~$h_!DYcuX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!R!DP!R!S!DP!S#O$h#O#P%x#P#R$h#R#S!DP#S#]$h#]#^!9_#^#i$h#i#j!9_#j~$h_!El^'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!Y!Fh!Y#O$h#O#P%x#P#R$h#R#S!Fh#S~$h_!FqbuX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!Y!Fh!Y#O$h#O#P%x#P#R$h#R#S!Fh#S#]$h#]#^!9_#^#i$h#i#j!9_#j~$h_!HQb'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![!IY![!c$h!c!i!IY!i#O$h#O#P%x#P#R$h#R#S!IY#S#T$h#T#Z!IY#Z~$h_!IcfuX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![!IY![!c$h!c!i!IY!i#O$h#O#P%x#P#R$h#R#S!IY#S#T$h#T#Z!IY#Z#]$h#]#^!9_#^#i$h#i#j!9_#j~$h_!KQ]!SX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![$h![!]!Ky!]#O$h#O#P%x#P~$h_!LSZdX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_!MOZyX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_!Mz^#RX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!^$h!^!_!Nv!_!`3u!`#O$h#O#P%x#P~$h_# P]'yX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`:n!`#O$h#O#P%x#P~$h_#!R^oX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`3u!`!a#!}!a#O$h#O#P%x#P~$h_##WZ#TX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#$S^#RX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`3u!`!a#%O!a#O$h#O#P%x#P~$h_#%X]'zX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`:n!`#O$h#O#P%x#P~$h_#&ZZ(RX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$hV#'VZ'qP'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#(Th'`Q'PS!{W'UPOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![#'x![!c$h!c!}#'x!}#O$h#O#P%x#P#R$h#R#S#'x#S#T$h#T#o#'x#o${$h${$|#'x$|4w$h4w5b#'x5b5i$h5i6S#'x6S~$h_#)xZ[X'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$hU#*pX'PSOz#+]z{#+s{!P#+]!P!Q#,X!Q#i#+]#i#j#,j#j#l#+]#l#m#.Y#m~#+]U#+dTrQ'PSOz%xz{&^{!P%x!P!Q'S!Q~%xU#+xTrQOz&pz{&^{!P&p!P!Q({!Q~&pU#,^SrQOz&p{!P&p!P!Q'c!Q~&pU#,o['PSOz%xz{&^{!P%x!P!Q'S!Q![#-e![!c%x!c!i#-e!i#T%x#T#Z#-e#Z#o%x#o#p#/r#p~%xU#-jY'PSOz%xz{&^{!P%x!P!Q'S!Q![#.Y![!c%x!c!i#.Y!i#T%x#T#Z#.Y#Z~%xU#._Y'PSOz%xz{&^{!P%x!P!Q'S!Q![#.}![!c%x!c!i#.}!i#T%x#T#Z#.}#Z~%xU#/SY'PSOz%xz{&^{!P%x!P!Q'S!Q![#+]![!c%x!c!i#+]!i#T%x#T#Z#+]#Z~%xU#/wY'PSOz%xz{&^{!P%x!P!Q'S!Q![#0g![!c%x!c!i#0g!i#T%x#T#Z#0g#Z~%xU#0l['PSOz%xz{&^{!P%x!P!Q'S!Q![#0g![!c%x!c!i#0g!i#T%x#T#Z#0g#Z#q%x#q#r#+]#r~%x_#1kZXX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#2g]'{X'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!_$h!_!`:n!`#O$h#O#P%x#P~$h_#3kj'`Q'PS!{W'UPOY$hYZ%bZr$hrs#5]sw$hwx#5sxz$hz{)Q{!P$h!P!Q*p!Q![#'x![!c$h!c!}#'x!}#O$h#O#P%x#P#R$h#R#S#'x#S#T$h#T#o#'x#o${$h${$|#'x$|4w$h4w5b#'x5b5i$h5i6S#'x6S~$h]#5dT'PS'_XOz%xz{&^{!P%x!P!Q'S!Q~%x_#5z]'`Q'PSOY?dYZA`Zr?drsBdsw?dwx@dxz?dz{CO{!P?d!P!QDv!Q#O?d#O#PId#P~?d_#7Oi'`Q'PS!{W'UPOY$hYZ%bZr$hrs%xst#8mtz$hz{)Q{!P$h!P!Q*p!Q![#'x![!c$h!c!}#'x!}#O$h#O#P%x#P#R$h#R#S#'x#S#T$h#T#o#'x#o${$h${$|#'x$|4w$h4w5b#'x5b5i$h5i6S#'x6S~$hV#8tg'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q!c$h!c!}#:]!}#O$h#O#P%x#P#R$h#R#S#:]#S#T$h#T#o#:]#o${$h${$|#:]$|4w$h4w5b#:]5b5i$h5i6S#:]6S~$hV#:fh'`Q'PS'UPOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q![#:]![!c$h!c!}#:]!}#O$h#O#P%x#P#R$h#R#S#:]#S#T$h#T#o#:]#o${$h${$|#:]$|4w$h4w5b#:]5b5i$h5i6S#:]6S~$h_#U#q~$h_#>_Z'|X'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h_#?ZZvX'`Q'PSOY$hYZ%bZr$hrs%xsz$hz{)Q{!P$h!P!Q*p!Q#O$h#O#P%x#P~$h",tokenizers:[pf,ff,df,0,1,2,3],topRules:{SourceFile:[0,8]},specialized:[{term:282,get:e=>mf[e]||-1}],tokenPrec:15890}),Qf=Wa.define({parser:gf.configure({props:[Ha.add({IfExpression:oo({except:/^\s*({|else\b)/}),"String BlockComment":()=>-1,"Statement MatchArm":oo()}),so.add((e=>/(Block|edTokens|List)$/.test(e.name)?Oo:"BlockComment"==e.name?e=>({from:e.from+2,to:e.to-2}):void 0)),zc({"const macro_rules mod struct union enum type fn impl trait let use crate static":Ou.definitionKeyword,"pub unsafe async mut extern default move":Ou.modifier,"for if else loop while match continue break return await":Ou.controlKeyword,"as in ref":Ou.operatorKeyword,"where _ crate super dyn":Ou.keyword,self:Ou.self,String:Ou.string,RawString:Ou.special(Ou.string),Boolean:Ou.bool,Identifier:Ou.variableName,"CallExpression/Identifier":Ou.function(Ou.variableName),BoundIdentifier:Ou.definition(Ou.variableName),LoopLabel:Ou.labelName,FieldIdentifier:Ou.propertyName,"CallExpression/FieldExpression/FieldIdentifier":Ou.function(Ou.propertyName),Lifetime:Ou.special(Ou.variableName),ScopeIdentifier:Ou.namespace,TypeIdentifier:Ou.typeName,"MacroInvocation/Identifier MacroInvocation/ScopedIdentifier/Identifier":Ou.macroName,"MacroInvocation/TypeIdentifier MacroInvocation/ScopedIdentifier/TypeIdentifier":Ou.macroName,'"!"':Ou.macroName,UpdateOp:Ou.updateOperator,LineComment:Ou.lineComment,BlockComment:Ou.blockComment,Integer:Ou.integer,Float:Ou.float,ArithOp:Ou.arithmeticOperator,LogicOp:Ou.logicOperator,BitOp:Ou.bitwiseOperator,CompareOp:Ou.compareOperator,"=":Ou.definitionOperator,".. ... => ->":Ou.punctuation,"( )":Ou.paren,"[ ]":Ou.squareBracket,"{ }":Ou.brace,".":Ou.derefOperator,"&":Ou.operator,", ; ::":Ou.separator})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:\{|\})$/}});var $f=Object.freeze({__proto__:null,rust:function(){return new Ga(Qf)},rustLanguage:Qf});function bf(e){return 45==e||46==e||58==e||e>=65&&e<=90||95==e||e>=97&&e<=122||e>=161}function xf(e){return 9==e||10==e||13==e||32==e}let wf=null,kf=null,yf=0;function Pf(e,t){let n=e.pos+t;if(kf==e&&yf==n)return wf;for(;xf(e.peek(t));)t++;let r="";for(;;){let n=e.peek(t);if(!bf(n))break;r+=String.fromCharCode(n),t++}return kf=e,yf=n,wf=r||null}function vf(e,t){this.name=e,this.parent=t,this.hash=t?t.hash:0;for(let t=0;t1==t?new vf(Pf(r,1)||"",e):e,reduce:(e,t)=>10==t&&e?e.parent:e,reuse(e,t,n,r){let i=t.type.id;return 1==i||12==i?new vf(Pf(r,1)||"",e):e},hash:e=>e?e.hash:0,strict:!1}),_f=new Rl(((e,t)=>{if(60==e.next)if(e.advance(),47==e.next){e.advance();let n=Pf(e,0);if(!n)return e.acceptToken(5);if(t.context&&n==t.context.name)return e.acceptToken(2);for(let r=t.context;r;r=r.parent)if(r.name==n)return e.acceptToken(3,-2);e.acceptToken(4)}else if(33!=e.next&&63!=e.next)return e.acceptToken(1)}),{contextual:!0});function Xf(e,t){return new Rl((n=>{for(let r=0,i=0;;i++){if(n.next<0){i&&n.acceptToken(e);break}if(n.next==t.charCodeAt(r)){if(r++,r==t.length){i>t.length&&n.acceptToken(e,1-t.length);break}}else r=0;n.advance()}}))}const Tf=Xf(36,"--\x3e"),Rf=Xf(37,"?>"),Wf=Xf(38,"?>"),qf=Ll.deserialize({version:13,states:"-OOQOaOOOcObO'#CcOkOdO'#CdOOOP'#Cv'#CvOsOaO'#DTO!XOaOOOOOQ'#Cw'#CwO!aObO,58}OOOP,58},58}OOOS'#Cx'#CxO!iOdO,59OOOOP,59O,59OOOOP-E6t-E6tO!qO`O'#ChO#kOqO'#CfOOOP'#Cf'#CfO#rOaO'#CyQ$TOPOOO$YOaOOOOOQ-E6u-E6uOOOP1G.i1G.iOOOS-E6v-E6vOOOP1G.j1G.jOOOO'#Cz'#CzO$hO`O,59SO$pO!bO,59SO%OOhO'#CqO%WO`O'#CrOOOP'#D]'#D]OOOP'#C}'#C}O%`OqO,59QO%gO`O'#CsOOOP,59Q,59QOOOP,59e,59eOOOP-E6w-E6wO$TOPOOOOOO-E6x-E6xO%oO!bO1G.nO%oO!bO1G.nO%}O`O'#CjO&VO!bO'#C{O&eO!bO1G.nOOOP1G.n1G.nOOOP1G.{1G.{OOOW'#DO'#DOO&pOhO,59]OOOP,59],59]O&xO`O,59^O'QO`O,59^OOOP-E6{-E6{OOOP1G.l1G.lO'YO`O,59_O'bO`O,59_O'jO!bO7+$YO'xO!bO7+$YOOOP7+$Y7+$YOOOP7+$g7+$gO(TO`O,59UO(]O`O,59UO(eO!bO,59gOOOO-E6y-E6yOOOW-E6|-E6|OOOP1G.w1G.wO(sO`O1G.xO(sO`O1G.xOOOP1G.x1G.xO({O`O1G.yO({O`O1G.yOOOP1G.y1G.yO)TO!bO<U!a!b>q!b!c$k!c!}+z!}#P$k#P#Q?}#Q#R$k#R#S+z#S#T$k#T#o+z#o%W$k%W%o+z%o%p$k%p&a+z&a&b$k&b1p+z1p4U$k4U4d+z4d4e$k4e$IS+z$IS$I`$k$I`$Ib+z$Ib$Kh$k$Kh%#t+z%#t&/x$k&/x&Et+z&Et&FV$k&FV;'S+z;'S;:j/S;:j?&r$k?&r?Ah+z?Ah?BY$k?BY?Mn+z?Mn~$kY$rUdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$kQ%ZRdQOv%Uw!^%U!_~%UW%iR!OWOr%dsv%dw~%d_%{]dQ!OWzTOX$kXY%rYZ%rZ]$k]^%r^p$kpq%rqr$krs%Usv$kw!^$k!^!_%d!_~$kZ&{R}XdQOv%Uw!^%U!_~%U~'XTOp'hqs'hst(Pt!]'h!^~'h~'kTOp'hqs'ht!]'h!]!^'z!^~'h~(POb~~(SROp(]q!](]!^~(]~(`SOp(]q!](]!]!^(l!^~(]~(qOc~Z(xWdQ!OWOr$krs%Usv$kw}$k}!O)b!O!^$k!^!_%d!_~$kZ)iWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!a*R!a~$kZ*[UxPdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$k^*uWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!a+_!a~$k^+hUhSdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$k_,V}_S]PdQ!OWOr$krs%Usv$kw}$k}!O+z!O!P+z!P!Q$k!Q![+z![!]+z!]!^$k!^!_%d!_!c$k!c!}+z!}#R$k#R#S+z#S#T$k#T#o+z#o$}$k$}%O+z%O%W$k%W%o+z%o%p$k%p&a+z&a&b$k&b1p+z1p4U+z4U4d+z4d4e$k4e$IS+z$IS$I`$k$I`$Ib+z$Ib$Je$k$Je$Jg+z$Jg$Kh$k$Kh%#t+z%#t&/x$k&/x&Et+z&Et&FV$k&FV;'S+z;'S;:j/S;:j?&r$k?&r?Ah+z?Ah?BY$k?BY?Mn+z?Mn~$k_/ZWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_;=`$k;=`<%l+z<%l~$kZ/xU!OWOq%dqr0[sv%dw!a%d!a!b=X!b~%dZ0aZ!OWOr%dsv%dw}%d}!O1S!O!f%d!f!g1x!g!}%d!}#O5s#O#W%d#W#X:k#X~%dZ1XT!OWOr%dsv%dw}%d}!O1h!O~%dZ1oRyR!OWOr%dsv%dw~%dX1}T!OWOr%dsv%dw!q%d!q!r2^!r~%dX2cT!OWOr%dsv%dw!e%d!e!f2r!f~%dX2wT!OWOr%dsv%dw!v%d!v!w3W!w~%dX3]T!OWOr%dsv%dw!{%d!{!|3l!|~%dX3qT!OWOr%dsv%dw!r%d!r!s4Q!s~%dX4VT!OWOr%dsv%dw!g%d!g!h4f!h~%dX4kV!OWOr4frs5Qsv4fvw5Qw!`4f!`!a5c!a~4fP5TRO!`5Q!`!a5^!a~5QP5cOXPX5jRXP!OWOr%dsv%dw~%dY5xV!OWOr%dsv%dw!e%d!e!f6_!f#V%d#V#W8w#W~%dY6dT!OWOr%dsv%dw!f%d!f!g6s!g~%dY6xT!OWOr%dsv%dw!c%d!c!d7X!d~%dY7^T!OWOr%dsv%dw!v%d!v!w7m!w~%dY7rT!OWOr%dsv%dw!c%d!c!d8R!d~%dY8WT!OWOr%dsv%dw!}%d!}#O8g#O~%dY8nR!OW!RQOr%dsv%dw~%dY8|T!OWOr%dsv%dw#W%d#W#X9]#X~%dY9bT!OWOr%dsv%dw#T%d#T#U9q#U~%dY9vT!OWOr%dsv%dw#h%d#h#i:V#i~%dY:[T!OWOr%dsv%dw#T%d#T#U8R#U~%dX:pT!OWOr%dsv%dw#c%d#c#d;P#d~%dX;UT!OWOr%dsv%dw#V%d#V#W;e#W~%dX;jT!OWOr%dsv%dw#h%d#h#i;y#i~%dX_UZTdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$kZ>xWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!a?b!a~$kZ?kU{PdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$kZ@UWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_#P$k#P#Q@n#Q~$kZ@uWdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_!`$k!`!aA_!a~$kZAhU!QPdQ!OWOr$krs%Usv$kw!^$k!^!_%d!_~$k",tokenizers:[_f,Tf,Rf,Wf,0,1,2,3],topRules:{Document:[0,6]},tokenPrec:0});function zf(e,t){let n=t&&t.getChild("TagName");return n?e.sliceString(n.from,n.to):""}function Yf(e,t){let n=t&&t.firstChild;return n&&"OpenTag"==n.name?zf(e,n):""}function Zf(e){for(let t=e&&e.parent;t;t=t.parent)if("Element"==t.name)return t;return null}class Uf{constructor(e,t,n){this.attrs=t,this.attrValues=n,this.children=[],this.name=e.name,this.completion=Object.assign(Object.assign({type:"type"},e.completion||{}),{label:this.name}),this.openCompletion=Object.assign(Object.assign({},this.completion),{label:"<"+this.name}),this.closeCompletion=Object.assign(Object.assign({},this.completion),{label:"",boost:2}),this.closeNameCompletion=Object.assign(Object.assign({},this.completion),{label:this.name+">"}),this.text=e.textContent?e.textContent.map((e=>({label:e,type:"text"}))):[]}}const Ef=/^[:\-\.\w\u00b7-\uffff]*$/;function If(e){return Object.assign(Object.assign({type:"property"},e.completion||{}),{label:e.name})}function Vf(e){return"string"==typeof e?{label:`"${e}"`,type:"constant"}:/^"/.test(e.label)?e:Object.assign(Object.assign({},e),{label:`"${e.label}"`})}function Cf(e,t){let n=[],r=[],i=Object.create(null);for(let e of t){let t=If(e);n.push(t),e.global&&r.push(t),e.values&&(i[e.name]=e.values.map(Vf))}let a=[],o=[],s=Object.create(null);for(let t of e){let e=r,O=i;t.attributes&&(e=e.concat(t.attributes.map((e=>"string"==typeof e?n.find((t=>t.label==e))||{label:e,type:"property"}:(e.values&&(O==i&&(O=Object.create(O)),O[e.name]=e.values.map(Vf)),If(e))))));let l=new Uf(t,e,O);s[l.name]=l,a.push(l),t.top&&o.push(l)}o.length||(o=a);for(let t=0;t{var t;let{doc:n}=e.state,O=function(e,t){var n;let r=qa(e).resolveInner(t,-1),i=null;for(let e=r;!i&&e.parent;e=e.parent)"OpenTag"!=e.name&&"CloseTag"!=e.name&&"SelfClosingTag"!=e.name&&"MismatchedCloseTag"!=e.name||(i=e);if(i&&(i.to>t||i.lastChild.type.isError)){let e=i.parent;if("TagName"==r.name)return"CloseTag"==i.name||"MismatchedCloseTag"==i.name?{type:"closeTag",from:r.from,context:e}:{type:"openTag",from:r.from,context:Zf(e)};if("AttributeName"==r.name)return{type:"attrName",from:r.from,context:i};if("AttributeValue"==r.name)return{type:"attrValue",from:r.from,context:i};let n=r==i||"Attribute"==r.name?r.childBefore(t):r;return"StartTag"==(null==n?void 0:n.name)?{type:"openTag",from:t,context:Zf(e)}:"StartCloseTag"==(null==n?void 0:n.name)&&n.to<=t?{type:"closeTag",from:t,context:e}:"Is"==(null==n?void 0:n.name)?{type:"attrValue",from:t,context:i}:n?{type:"attrName",from:t,context:i}:null}if("StartCloseTag"==r.name)return{type:"closeTag",from:t,context:r.parent};for(;r.parent&&r.to==t&&!(null===(n=r.lastChild)||void 0===n?void 0:n.type.isError);)r=r.parent;return"Element"==r.name||"Text"==r.name||"Document"==r.name?{type:"tag",from:t,context:"Element"==r.name?r:Zf(r)}:null}(e.state,e.pos);if(!O||"tag"==O.type&&!e.explicit)return null;let{type:l,from:c,context:u}=O;if("openTag"==l){let e=o,t=Yf(n,u);if(t){let n=s[t];e=(null==n?void 0:n.children)||a}return{from:c,options:e.map((e=>e.completion)),span:Ef}}if("closeTag"==l){let r=Yf(n,u);return r?{from:c,to:e.pos+(">"==n.sliceString(e.pos,e.pos+1)?1:0),options:[(null===(t=s[r])||void 0===t?void 0:t.closeNameCompletion)||{label:r+">",type:"type"}],span:Ef}:null}if("attrName"==l){let e=s[zf(n,u)];return{from:c,options:(null==e?void 0:e.attrs)||r,span:Ef}}if("attrValue"==l){let t=function(e,t,n){let r=t&&t.getChildren("Attribute").find((e=>e.from<=n&&e.to>=n)),i=r&&r.getChild("AttributeName");return i?e.sliceString(i.from,i.to):""}(n,u,c);if(!t)return null;let r=s[zf(n,u)],a=((null==r?void 0:r.attrValues)||i)[t];return a&&a.length?{from:c,to:e.pos+('"'==n.sliceString(e.pos,e.pos+1)?1:0),options:a,span:/^"[^"]*"?$/}:null}if("tag"==l){let t=Yf(n,u),r=s[t],i=[],O=u&&u.lastChild;!t||O&&"CloseTag"==O.name&&zf(n,O)==t||i.push(r?r.closeCompletion:{label:"",type:"type",boost:2});let l=i.concat(((null==r?void 0:r.children)||(u?a:o)).map((e=>e.openCompletion)));if(u&&(null==r?void 0:r.text.length)){let t=u.firstChild;t.to>e.pos-20&&!/\S/.test(e.state.sliceDoc(t.to,e.pos))&&(l=l.concat(r.text))}return{from:c,options:l,span:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}return null}}const Af=Wa.define({parser:qf.configure({props:[Ha.add({Element(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"OpenTag CloseTag SelfClosingTag":e=>e.column(e.node.from)+e.unit}),so.add({Element(e){let t=e.firstChild,n=e.lastChild;return t&&"OpenTag"==t.name?{from:t.to,to:"CloseTag"==n.name?n.from:e.to}:null}}),zc({Text:Ou.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":Ou.angleBracket,TagName:Ou.tagName,"MismatchedCloseTag/Tagname":[Ou.tagName,Ou.invalid],AttributeName:Ou.attributeName,AttributeValue:Ou.attributeValue,Is:Ou.definitionOperator,"EntityReference CharacterReference":Ou.character,Comment:Ou.blockComment,ProcessingInst:Ou.processingInstruction,DoctypeDecl:Ou.documentMeta,Cdata:Ou.special(Ou.string)})]}),languageData:{commentTokens:{block:{open:"\x3c!--",close:"--\x3e"}},indentOnInput:/^\s*<\/$/}});var Gf=Object.freeze({__proto__:null,completeFromSchema:Cf,xml:function(e={}){return new Ga(Af,Af.data.of({autocomplete:Cf(e.elements||[],e.attributes||[])}))},xmlLanguage:Af}),jf={"+":["conjugate","add"],"−":["negate","subtract"],"×":["signOf","multiply"],"÷":["reciprocal","divide"],"⌈":["ceiling","greaterOf"],"⌊":["floor","lesserOf"],"∣":["absolute","residue"],"⍳":["indexGenerate","indexOf"],"?":["roll","deal"],"⋆":["exponentiate","toThePowerOf"],"⍟":["naturalLog","logToTheBase"],"○":["piTimes","circularFuncs"],"!":["factorial","binomial"],"⌹":["matrixInverse","matrixDivide"],"<":[null,"lessThan"],"≤":[null,"lessThanOrEqual"],"=":[null,"equals"],">":[null,"greaterThan"],"≥":[null,"greaterThanOrEqual"],"≠":[null,"notEqual"],"≡":["depth","match"],"≢":[null,"notMatch"],"∈":["enlist","membership"],"⍷":[null,"find"],"∪":["unique","union"],"∩":[null,"intersection"],"∼":["not","without"],"∨":[null,"or"],"∧":[null,"and"],"⍱":[null,"nor"],"⍲":[null,"nand"],"⍴":["shapeOf","reshape"],",":["ravel","catenate"],"⍪":[null,"firstAxisCatenate"],"⌽":["reverse","rotate"],"⊖":["axis1Reverse","axis1Rotate"],"⍉":["transpose",null],"↑":["first","take"],"↓":[null,"drop"],"⊂":["enclose","partitionWithAxis"],"⊃":["diclose","pick"],"⌷":[null,"index"],"⍋":["gradeUp",null],"⍒":["gradeDown",null],"⊤":["encode",null],"⊥":["decode",null],"⍕":["format","formatByExample"],"⍎":["execute",null],"⊣":["stop","left"],"⊢":["pass","right"]},Lf=/[\.\/⌿⍀¨⍣]/,Nf=/⍬/,Df=/[\+−×÷⌈⌊∣⍳\?⋆⍟○!⌹<≤=>≥≠≡≢∈⍷∪∩∼∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⌷⍋⍒⊤⊥⍕⍎⊣⊢]/,Mf=/←/,Ff=/[⍝#].*$/;const Bf={startState:function(){return{prev:!1,func:!1,op:!1,string:!1,escape:!1}},token:function(e,t){var n;return e.eatSpace()?null:'"'===(n=e.next())||"'"===n?(e.eatWhile(function(e){var t;return t=!1,function(n){return t=n,n!==e||"\\"===t}}(n)),e.next(),t.prev=!0,"string"):/[\[{\(]/.test(n)?(t.prev=!1,null):/[\]}\)]/.test(n)?(t.prev=!0,null):Nf.test(n)?(t.prev=!1,"atom"):/[¯\d]/.test(n)?(t.func?(t.func=!1,t.prev=!1):t.prev=!0,e.eatWhile(/[\w\.]/),"number"):Lf.test(n)||Mf.test(n)?"operator":Df.test(n)?(t.func=!0,t.prev=!1,jf[n]?"variableName.function.standard":"variableName.function"):Ff.test(n)?(e.skipToEnd(),"comment"):"∘"===n&&"."===e.peek()?(e.next(),"variableName.function"):(e.eatWhile(/[\w\$_]/),t.prev=!0,"keyword")}};var Hf=Object.freeze({__proto__:null,apl:Bf});function Kf(e){var t=e.match(/^\s*\S/);return e.skipToEnd(),t?"error":null}const Jf={token:function(e,t){var n;if("top"==t.state)return e.sol()&&(n=e.match(/^-----BEGIN (.*)?-----\s*$/))?(t.state="headers",t.type=n[1],"tag"):Kf(e);if("headers"==t.state){if(e.sol()&&e.match(/^\w+:/))return t.state="header","atom";var r=Kf(e);return r&&(t.state="body"),r}return"header"==t.state?(e.skipToEnd(),t.state="headers","string"):"body"==t.state?e.sol()&&(n=e.match(/^-----END (.*)?-----\s*$/))?n[1]!=t.type?"error":(t.state="end","tag"):e.eatWhile(/[A-Za-z0-9+\/=]/)?null:(e.next(),"error"):"end"==t.state?Kf(e):void 0},blankLine:function(e){"headers"==e.state&&(e.state="body")},startState:function(){return{state:"top",type:null}}};var em=Object.freeze({__proto__:null,asciiArmor:Jf});function tm(e){for(var t={},n=e.split(" "),r=0;r?$/.test(n)?(t.extenExten=!0,t.extenStart=!1,"strong"):(t.extenStart=!1,e.skipToEnd(),"error")):t.extenExten?(t.extenExten=!1,t.extenPriority=!0,e.eatWhile(/[^,]/),t.extenInclude&&(e.skipToEnd(),t.extenPriority=!1,t.extenInclude=!1),t.extenSame&&(t.extenPriority=!1,t.extenSame=!1,t.extenApplication=!0),"tag"):t.extenPriority?(t.extenPriority=!1,t.extenApplication=!0,e.next(),t.extenSame?null:(e.eatWhile(/[^,]/),"number")):t.extenApplication?(e.eatWhile(/,/),","===(n=e.current())?null:(e.eatWhile(/\w/),n=e.current().toLowerCase(),t.extenApplication=!1,-1!==om.indexOf(n)?"def":null)):function(e,t){var n="",r=e.next();if(t.blockComment)return"-"==r&&e.match("-;",!0)?t.blockComment=!1:e.skipTo("--;")?(e.next(),e.next(),e.next(),t.blockComment=!1):e.skipToEnd(),"comment";if(";"==r)return e.match("--",!0)&&!e.match("-",!1)?(t.blockComment=!0,"comment"):(e.skipToEnd(),"comment");if("["==r)return e.skipTo("]"),e.eat("]"),"header";if('"'==r)return e.skipTo('"'),"string";if("'"==r)return e.skipTo("'"),"string.special";if("#"==r&&(e.eatWhile(/\w/),n=e.current(),-1!==am.indexOf(n)))return e.skipToEnd(),"strong";if("$"==r&&"{"==e.peek())return e.skipTo("}"),e.eat("}"),"variableName.special";if(e.eatWhile(/\w/),n=e.current(),-1!==im.indexOf(n)){switch(t.extenStart=!0,n){case"same":t.extenSame=!0;break;case"include":case"switch":case"ignorepat":t.extenInclude=!0}return"atom"}}(e,t)},languageData:{commentTokens:{line:";",block:{open:";--",close:"--;"}}}};var Om=Object.freeze({__proto__:null,asterisk:sm}),lm="><+-.,[]".split("");const cm={startState:function(){return{commentLine:!1,left:0,right:0,commentLoop:!1}},token:function(e,t){if(e.eatSpace())return null;e.sol()&&(t.commentLine=!1);var n=e.next().toString();return-1===lm.indexOf(n)?(t.commentLine=!0,e.eol()&&(t.commentLine=!1),"comment"):!0===t.commentLine?(e.eol()&&(t.commentLine=!1),"comment"):"]"===n||"["===n?("["===n?t.left++:t.right++,"bracket"):"+"===n||"-"===n?"keyword":"<"===n||">"===n?"atom":"."===n||","===n?"def":void(e.eol()&&(t.commentLine=!1))}};var um=Object.freeze({__proto__:null,brainfuck:cm}),hm="string",dm="atom";function pm(e){for(var t={},n=e.split(" "),r=0;r >= "),Qm={digit:/\d/,digit_or_colon:/[\d:]/,hex:/[0-9a-f]/i,sign:/[+-]/,exponent:/e/i,keyword_char:/[^\s\(\[\;\)\]]/,symbol:/[\w*+\-]/};const $m={startState:function(){return{indentStack:null,indentation:0,mode:!1}},token:function(e,t){if(null==t.indentStack&&e.sol()&&(t.indentation=6),e.eatSpace())return null;var n=null;if("string"===t.mode){for(var r=!1;null!=(r=e.next());)if('"'==r||"'"==r){t.mode=!1;break}n=hm}else{var i=e.next(),a=e.column();if(a>=0&&a<=5)n="def";else if(a>=72&&a<=79)e.skipToEnd(),n="header";else if("*"==i&&6==a)e.skipToEnd(),n="comment";else if('"'==i||"'"==i)t.mode="string",n=hm;else if("'"!=i||Qm.digit_or_colon.test(e.peek()))if("."==i)n="link";else if(function(e,t){return"0"===e&&t.eat(/x/i)?(t.eatWhile(Qm.hex),!0):("+"!=e&&"-"!=e||!Qm.digit.test(t.peek())||(t.eat(Qm.sign),e=t.next()),!!Qm.digit.test(e)&&(t.eat(e),t.eatWhile(Qm.digit),"."==t.peek()&&(t.eat("."),t.eatWhile(Qm.digit)),t.eat(Qm.exponent)&&(t.eat(Qm.sign),t.eatWhile(Qm.digit)),!0))}(i,e))n="number";else{if(e.current().match(Qm.symbol))for(;a<71&&void 0!==e.eat(Qm.symbol);)a++;n=mm&&mm.propertyIsEnumerable(e.current().toUpperCase())?"keyword":gm&&gm.propertyIsEnumerable(e.current().toUpperCase())?"builtin":fm&&fm.propertyIsEnumerable(e.current().toUpperCase())?dm:null}else n=dm}return n},indent:function(e){return null==e.indentStack?e.indentation:e.indentStack.indent}};var bm=Object.freeze({__proto__:null,cobol:$m});function xm(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.info=r,this.align=i,this.prev=a}function wm(e,t,n,r){var i=e.indented;return e.context&&"statement"==e.context.type&&"statement"!=n&&(i=e.context.indented),e.context=new xm(i,t,n,r,null,e.context)}function km(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}function ym(e,t,n){return"variable"==t.prevToken||"type"==t.prevToken||(!!/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(e.string.slice(0,n))||(!(!t.typeAtEndOfLine||e.column()!=e.indentation())||void 0))}function Pm(e){for(;;){if(!e||"top"==e.type)return!0;if("}"==e.type&&"namespace"!=e.prev.info)return!1;e=e.prev}}function vm(e){var t,n,r=e.statementIndentUnit,i=e.dontAlignCalls,a=e.keywords||{},o=e.types||{},s=e.builtin||{},O=e.blockKeywords||{},l=e.defKeywords||{},c=e.atoms||{},u=e.hooks||{},h=e.multiLineStrings,d=!1!==e.indentStatements,p=!1!==e.indentSwitch,f=e.namespaceSeparator,m=e.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,g=e.numberStart||/[\d\.]/,Q=e.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,$=e.isOperatorChar||/[+\-*&%=<>!?|\/]/,b=e.isIdentifierChar||/[\w\$_\xa1-\uffff]/,x=e.isReservedIdentifier||!1;function w(e,r){var i=e.next();if(u[i]){var d=u[i](e,r);if(!1!==d)return d}if('"'==i||"'"==i)return r.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return(a||!i&&!h)&&(n.tokenize=null),"string"}}(i),r.tokenize(e,r);if(g.test(i)){if(e.backUp(1),e.match(Q))return"number";e.next()}if(m.test(i))return t=i,null;if("/"==i){if(e.eat("*"))return r.tokenize=k,k(e,r);if(e.eat("/"))return e.skipToEnd(),"comment"}if($.test(i)){for(;!e.match(/^\/[\/*]/,!1)&&e.eat($););return"operator"}if(e.eatWhile(b),f)for(;e.match(f);)e.eatWhile(b);var p=e.current();return _m(a,p)?(_m(O,p)&&(t="newstatement"),_m(l,p)&&(n=!0),"keyword"):_m(o,p)?"type":_m(s,p)||x&&x(p)?(_m(O,p)&&(t="newstatement"),"builtin"):_m(c,p)?"atom":"variable"}function k(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function y(t,n){e.typeFirstDefinitions&&t.eol()&&Pm(n.context)&&(n.typeAtEndOfLine=ym(t,n,t.pos))}return{startState:function(e){return{tokenize:null,context:new xm(-e,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(r,i){var a=i.context;if(r.sol()&&(null==a.align&&(a.align=!1),i.indented=r.indentation(),i.startOfLine=!0),r.eatSpace())return y(r,i),null;t=n=null;var o=(i.tokenize||w)(r,i);if("comment"==o||"meta"==o)return o;if(null==a.align&&(a.align=!0),";"==t||":"==t||","==t&&r.match(/^\s*(?:\/\/.*)?$/,!1))for(;"statement"==i.context.type;)km(i);else if("{"==t)wm(i,r.column(),"}");else if("["==t)wm(i,r.column(),"]");else if("("==t)wm(i,r.column(),")");else if("}"==t){for(;"statement"==a.type;)a=km(i);for("}"==a.type&&(a=km(i));"statement"==a.type;)a=km(i)}else t==a.type?km(i):d&&(("}"==a.type||"top"==a.type)&&";"!=t||"statement"==a.type&&"newstatement"==t)&&wm(i,r.column(),"statement",r.current());if("variable"==o&&("def"==i.prevToken||e.typeFirstDefinitions&&ym(r,i,r.start)&&Pm(i.context)&&r.match(/^\s*\(/,!1))&&(o="def"),u.token){var s=u.token(r,i,o);void 0!==s&&(o=s)}return"def"==o&&!1===e.styleDefs&&(o="variable"),i.startOfLine=!1,i.prevToken=n?"def":o||t,y(r,i),o},indent:function(t,n,a){if(t.tokenize!=w&&null!=t.tokenize||t.typeAtEndOfLine)return null;var o=t.context,s=n&&n.charAt(0),O=s==o.type;if("statement"==o.type&&"}"==s&&(o=o.prev),e.dontIndentStatements)for(;"statement"==o.type&&e.dontIndentStatements.test(o.info);)o=o.prev;if(u.indent){var l=u.indent(t,o,n,a.unit);if("number"==typeof l)return l}var c=o.prev&&"switch"==o.prev.info;if(e.allmanIndentation&&/[{(]/.test(s)){for(;"top"!=o.type&&"}"!=o.type;)o=o.prev;return o.indented}return"statement"==o.type?o.indented+("{"==s?0:r||a.unit):!o.align||i&&")"==o.type?")"!=o.type||O?o.indented+(O?0:a.unit)+(O||!c||/^(?:case|default)\b/.test(n)?0:a.unit):o.indented+(r||a.unit):o.column+(O?0:1)},languageData:{indentOnInput:p?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:Object.keys(a).concat(Object.keys(o)).concat(Object.keys(s)).concat(Object.keys(c)),...e.languageData}}}function Sm(e){for(var t={},n=e.split(" "),r=0;r!?|\/#:@]/,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},'"':function(e,t){return!!e.match('""')&&(t.tokenize=Hm,t.tokenize(e,t))},"'":function(e){return e.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},"=":function(e,t){var n=t.context;return!("}"!=n.type||!n.align||!e.eat(">"))&&(t.context=new xm(n.indented,n.column,n.type,n.info,null,n.prev),"operator")},"/":function(e,t){return!!e.eat("*")&&(t.tokenize=Km(1),t.tokenize(e,t))}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}});const eg=vm({keywords:Sm("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam"),types:Sm("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:Sm("catch class do else finally for if where try while enum"),defKeywords:Sm("class val var object interface fun"),atoms:Sm("true false null this"),hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},"*":function(e,t){return"."==t.prevToken?"variable":"operator"},'"':function(e,t){var n;return t.tokenize=(n=e.match('""'),function(e,t){for(var r,i=!1,a=!1;!e.eol();){if(!n&&!i&&e.match('"')){a=!0;break}if(n&&e.match('"""')){a=!0;break}r=e.next(),!i&&"$"==r&&e.match("{")&&e.skipTo("}"),i=!i&&"\\"==r&&!n}return!a&&n||(t.tokenize=null),"string"}),t.tokenize(e,t)},"/":function(e,t){return!!e.eat("*")&&(t.tokenize=Km(1),t.tokenize(e,t))},indent:function(e,t,n,r){var i=n&&n.charAt(0);return"}"!=e.prevToken&&")"!=e.prevToken||""!=n?"operator"==e.prevToken&&"}"!=n&&"}"!=e.context.type||"variable"==e.prevToken&&"."==i||("}"==e.prevToken||")"==e.prevToken)&&"."==i?2*r+t.indented:t.align&&"}"==t.type?t.indented+(e.context.type==(n||"").charAt(0)?0:r):void 0:e.indented}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}}),tg=vm({keywords:Sm("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:Sm("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:Sm("for while do if else struct"),builtin:Sm("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:Sm("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":Im}}),ng=vm({keywords:Sm(Xm+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:Ym,blockKeywords:Sm(Um),atoms:Sm("null true false"),hooks:{"#":Im}}),rg=vm({keywords:Sm(Xm+" "+Rm),types:Zm,builtin:Sm(Wm),blockKeywords:Sm(Um+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:Sm(Em+" @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:Sm("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:Cm,hooks:{"#":Im,"*":Vm}}),ig=vm({keywords:Sm(Xm+" "+Rm+" "+Tm),types:Zm,builtin:Sm(Wm),blockKeywords:Sm(Um+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:Sm(Em+" @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:Sm("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:Cm,hooks:{"#":Im,"*":Vm,u:Gm,U:Gm,L:Gm,R:Gm,0:Am,1:Am,2:Am,3:Am,4:Am,5:Am,6:Am,7:Am,8:Am,9:Am,token:function(e,t,n){if("variable"==n&&"("==e.peek()&&(";"==t.prevToken||null==t.prevToken||"}"==t.prevToken)&&jm(e.current()))return"def"}},namespaceSeparator:"::"}),ag=vm({keywords:Sm("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:Ym,blockKeywords:Sm("case catch class else for foreach if switch try while"),defKeywords:Sm("function local class"),typeFirstDefinitions:!0,atoms:Sm("true false null"),hooks:{"#":Im}});var og=null;function sg(e){return function(t,n){for(var r,i=!1,a=!1;!t.eol();){if(!i&&t.match('"')&&("single"==e||t.match('""'))){a=!0;break}if(!i&&t.match("``")){og=sg(e),a=!0;break}r=t.next(),i="single"==e&&!i&&"\\"==r}return a&&(n.tokenize=null),"string"}}const Og=vm({keywords:Sm("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(e){var t=e.charAt(0);return t===t.toUpperCase()&&t!==t.toLowerCase()},blockKeywords:Sm("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:Sm("class dynamic function interface module object package value"),builtin:Sm("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:Sm("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},'"':function(e,t){return t.tokenize=sg(e.match('""')?"triple":"single"),t.tokenize(e,t)},"`":function(e,t){return!(!og||!e.match("`"))&&(t.tokenize=og,og=null,t.tokenize(e,t))},"'":function(e){return e.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},token:function(e,t,n){if(("variable"==n||"type"==n)&&"."==t.prevToken)return"variableName.special"}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}});function lg(e){(e.interpolationStack||(e.interpolationStack=[])).push(e.tokenize)}function cg(e){return(e.interpolationStack||(e.interpolationStack=[])).pop()}function ug(e,t,n,r){var i=!1;if(t.eat(e)){if(!t.eat(e))return"string";i=!0}function a(t,n){for(var a=!1;!t.eol();){if(!r&&!a&&"$"==t.peek())return lg(n),n.tokenize=hg,"string";var o=t.next();if(o==e&&!a&&(!i||t.match(e+e))){n.tokenize=null;break}a=!r&&!a&&"\\"==o}return"string"}return n.tokenize=a,a(t,n)}function hg(e,t){return e.eat("$"),e.eat("{")?t.tokenize=null:t.tokenize=dg,null}function dg(e,t){return e.eatWhile(/[\w_]/),t.tokenize=cg(t),"variable"}const pg=vm({keywords:Sm("this super static final const abstract class extends external factory implements mixin get native set typedef with enum throw rethrow assert break case continue default in return new deferred async await covariant try catch finally do else for if switch while import library export part of show hide is as extension on yield late required"),blockKeywords:Sm("try catch finally do else for if switch while"),builtin:Sm("void bool num int double dynamic var String Null Never"),atoms:Sm("true false null"),hooks:{"@":function(e){return e.eatWhile(/[\w\$_\.]/),"meta"},"'":function(e,t){return ug("'",e,t,!1)},'"':function(e,t){return ug('"',e,t,!1)},r:function(e,t){var n=e.peek();return("'"==n||'"'==n)&&ug(e.next(),e,t,!0)},"}":function(e,t){return function(e){return e.interpolationStack?e.interpolationStack.length:0}(t)>0&&(t.tokenize=cg(t),null)},"/":function(e,t){return!!e.eat("*")&&(t.tokenize=Km(1),t.tokenize(e,t))},token:function(e,t,n){if("variable"==n&&RegExp("^[_$]*[A-Z][a-zA-Z0-9_$]*$","g").test(e.current()))return"type"}}});var fg=Object.freeze({__proto__:null,clike:vm,c:Dm,cpp:Mm,java:Fm,csharp:Bm,scala:Jm,kotlin:eg,shader:tg,nesC:ng,objectiveC:rg,objectiveCpp:ig,squirrel:ag,ceylon:Og,dart:pg}),mg=["false","nil","true"],gg=[".","catch","def","do","if","monitor-enter","monitor-exit","new","quote","recur","set!","throw","try","var"],Qg=["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-namespace-maps*","*print-readably*","*read-eval*","*reader-resolver*","*source-path*","*suppress-read*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Eduction","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods","..","/","<","<=","=","==",">",">=","EMPTY-NODE","Inst","StackTraceElement->vec","Throwable->map","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","any?","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc","assoc!","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","boolean?","booleans","bound-fn","bound-fn*","bound?","bounded-count","butlast","byte","byte-array","bytes","bytes?","case","cast","cat","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","completing","concat","cond","cond->","cond->>","condp","conj","conj!","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","dedupe","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj","disj!","dissoc","dissoc!","distinct","distinct?","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","double?","doubles","drop","drop-last","drop-while","eduction","empty","empty?","ensure","ensure-reduced","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","halt-when","hash","hash-combine","hash-map","hash-ordered-coll","hash-set","hash-unordered-coll","ident?","identical?","identity","if-let","if-not","if-some","ifn?","import","in-ns","inc","inc'","indexed?","init-proxy","inst-ms","inst-ms*","inst?","instance?","int","int-array","int?","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-entry?","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mix-collection-hash","mod","munge","name","namespace","namespace-munge","nat-int?","neg-int?","neg?","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop","pop!","pop-thread-bindings","pos-int?","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","qualified-ident?","qualified-keyword?","qualified-symbol?","quot","rand","rand-int","rand-nth","random-sample","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","reader-conditional","reader-conditional?","realized?","record?","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","reset-vals!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","run!","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seqable?","seque","sequence","sequential?","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","simple-ident?","simple-keyword?","simple-symbol?","slurp","some","some->","some->>","some-fn","some?","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","swap-vals!","symbol","symbol?","sync","tagged-literal","tagged-literal?","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","time","to-array","to-array-2d","trampoline","transduce","transient","tree-seq","true?","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","unreduced","unsigned-bit-shift-right","update","update-in","update-proxy","uri?","use","uuid?","val","vals","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","volatile!","volatile?","vreset!","vswap!","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"],$g=Tg(mg),bg=Tg(gg),xg=Tg(Qg),wg=Tg(["->","->>","as->","binding","bound-fn","case","catch","comment","cond","cond->","cond->>","condp","def","definterface","defmethod","defn","defmacro","defprotocol","defrecord","defstruct","deftype","do","doseq","dotimes","doto","extend","extend-protocol","extend-type","fn","for","future","if","if-let","if-not","if-some","let","letfn","locking","loop","ns","proxy","reify","struct-map","some->","some->>","try","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn"]),kg=/^(?:[\\\[\]\s"(),;@^`{}~]|$)/,yg=/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,Pg=/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,vg=/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~.][^\\\[\]\s"(),;@^`{}~.\/]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~.][^\\\[\]\s"(),;@^`{}~.\/]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/;function Sg(e,t){if(e.eatSpace()||e.eat(","))return["space",null];if(e.match(yg))return[null,"number"];if(e.match(Pg))return[null,"string.special"];if(e.eat(/^"/))return(t.tokenize=_g)(e,t);if(e.eat(/^[(\[{]/))return["open","bracket"];if(e.eat(/^[)\]}]/))return["close","bracket"];if(e.eat(/^;/))return e.skipToEnd(),["space","comment"];if(e.eat(/^[#'@^`~]/))return[null,"meta"];var n=e.match(vg),r=n&&n[0];return r?"comment"===r&&"("===t.lastToken?(t.tokenize=Xg)(e,t):Rg(r,$g)||":"===r.charAt(0)?["symbol","atom"]:Rg(r,bg)||Rg(r,xg)?["symbol","keyword"]:"("===t.lastToken?["symbol","builtin"]:["symbol","variable"]:(e.next(),e.eatWhile((function(e){return!Rg(e,kg)})),[null,"error"])}function _g(e,t){for(var n,r=!1;n=e.next();){if('"'===n&&!r){t.tokenize=Sg;break}r=!r&&"\\"===n}return[null,"string"]}function Xg(e,t){for(var n,r=1;n=e.next();)if(")"===n&&r--,"("===n&&r++,0===r){e.backUp(1),t.tokenize=Sg;break}return["space","comment"]}function Tg(e){for(var t={},n=0;n*\/]/.test(n)?$(null,"select-op"):"."==n&&e.match(/^-?[_a-z][_a-z0-9-]*/i)?$("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(n)?$(null,n):e.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(e.current())&&(t.tokenize=w),$("variableName.function","variable")):/[\w\\\-]/.test(n)?(e.eatWhile(/[\w\\\-]/),$("property","word")):$(null,null):/[\d.]/.test(e.peek())?(e.eatWhile(/[\w.%]/),$("number","unit")):e.match(/^-[\w\\\-]*/)?(e.eatWhile(/[\w\\\-]/),e.match(/^\s*:/,!1)?$("def","variable-definition"):$("variableName","variable")):e.match(/^\w+-/)?$("meta","meta"):void 0}function x(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){")"==e&&t.backUp(1);break}i=!i&&"\\"==r}return(r==e||!i&&")"!=e)&&(n.tokenize=null),$("string","string")}}function w(e,t){return e.next(),e.match(/^\s*[\"\')]/,!1)?t.tokenize=null:t.tokenize=x(")"),$(null,"(")}function k(e,t,n){this.type=e,this.indent=t,this.prev=n}function y(e,t,n,r){return e.context=new k(n,t.indentation()+(!1===r?0:t.indentUnit),e.context),n}function P(e){return e.context.prev&&(e.context=e.context.prev),e.context.type}function v(e,t,n){return X[n.context.type](e,t,n)}function S(e,t,n,r){for(var i=r||1;i>0;i--)n.context=n.context.prev;return v(e,t,n)}function _(e){var t=e.current().toLowerCase();n=p.hasOwnProperty(t)?"atom":d.hasOwnProperty(t)?"keyword":"variable"}var X={top:function(e,t,r){if("{"==e)return y(r,t,"block");if("}"==e&&r.context.prev)return P(r);if(g&&/@component/i.test(e))return y(r,t,"atComponentBlock");if(/^@(-moz-)?document$/i.test(e))return y(r,t,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(e))return y(r,t,"atBlock");if(/^@(font-face|counter-style)/i.test(e))return r.stateArg=e,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(e))return"keyframes";if(e&&"@"==e.charAt(0))return y(r,t,"at");if("hash"==e)n="builtin";else if("word"==e)n="tag";else{if("variable-definition"==e)return"maybeprop";if("interpolation"==e)return y(r,t,"interpolation");if(":"==e)return"pseudo";if(f&&"("==e)return y(r,t,"parens")}return r.context.type},block:function(e,t,r){if("word"==e){var i=t.current().toLowerCase();return l.hasOwnProperty(i)?(n="property","maybeprop"):c.hasOwnProperty(i)?(n=Q?"string.special":"property","maybeprop"):f?(n=t.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(n="error","maybeprop")}return"meta"==e?"block":f||"hash"!=e&&"qualifier"!=e?X.top(e,t,r):(n="error","block")},maybeprop:function(e,t,n){return":"==e?y(n,t,"prop"):v(e,t,n)},prop:function(e,t,r){if(";"==e)return P(r);if("{"==e&&f)return y(r,t,"propBlock");if("}"==e||"{"==e)return S(e,t,r);if("("==e)return y(r,t,"parens");if("hash"!=e||/^#([0-9a-fA-f]{3,4}|[0-9a-fA-f]{6}|[0-9a-fA-f]{8})$/.test(t.current())){if("word"==e)_(t);else if("interpolation"==e)return y(r,t,"interpolation")}else n="error";return"prop"},propBlock:function(e,t,r){return"}"==e?P(r):"word"==e?(n="property","maybeprop"):r.context.type},parens:function(e,t,n){return"{"==e||"}"==e?S(e,t,n):")"==e?P(n):"("==e?y(n,t,"parens"):"interpolation"==e?y(n,t,"interpolation"):("word"==e&&_(t),"parens")},pseudo:function(e,t,r){return"meta"==e?"pseudo":"word"==e?(n="variableName.constant",r.context.type):v(e,t,r)},documentTypes:function(e,t,r){return"word"==e&&a.hasOwnProperty(t.current())?(n="tag",r.context.type):X.atBlock(e,t,r)},atBlock:function(e,t,r){if("("==e)return y(r,t,"atBlock_parens");if("}"==e||";"==e)return S(e,t,r);if("{"==e)return P(r)&&y(r,t,f?"block":"top");if("interpolation"==e)return y(r,t,"interpolation");if("word"==e){var i=t.current().toLowerCase();n="only"==i||"not"==i||"and"==i||"or"==i?"keyword":o.hasOwnProperty(i)?"attribute":s.hasOwnProperty(i)?"property":O.hasOwnProperty(i)?"keyword":l.hasOwnProperty(i)?"property":c.hasOwnProperty(i)?Q?"string.special":"property":p.hasOwnProperty(i)?"atom":d.hasOwnProperty(i)?"keyword":"error"}return r.context.type},atComponentBlock:function(e,t,r){return"}"==e?S(e,t,r):"{"==e?P(r)&&y(r,t,f?"block":"top",!1):("word"==e&&(n="error"),r.context.type)},atBlock_parens:function(e,t,n){return")"==e?P(n):"{"==e||"}"==e?S(e,t,n,2):X.atBlock(e,t,n)},restricted_atBlock_before:function(e,t,r){return"{"==e?y(r,t,"restricted_atBlock"):"word"==e&&"@counter-style"==r.stateArg?(n="variable","restricted_atBlock_before"):v(e,t,r)},restricted_atBlock:function(e,t,r){return"}"==e?(r.stateArg=null,P(r)):"word"==e?(n="@font-face"==r.stateArg&&!u.hasOwnProperty(t.current().toLowerCase())||"@counter-style"==r.stateArg&&!h.hasOwnProperty(t.current().toLowerCase())?"error":"property","maybeprop"):"restricted_atBlock"},keyframes:function(e,t,r){return"word"==e?(n="variable","keyframes"):"{"==e?y(r,t,"top"):v(e,t,r)},at:function(e,t,r){return";"==e?P(r):"{"==e||"}"==e?S(e,t,r):("word"==e?n="tag":"hash"==e&&(n="builtin"),"at")},interpolation:function(e,t,r){return"}"==e?P(r):"{"==e||";"==e?S(e,t,r):("word"==e?n="variable":"variable"!=e&&"("!=e&&")"!=e&&(n="error"),"interpolation")}};return{startState:function(){return{tokenize:null,state:r?"block":"top",stateArg:null,context:new k(r?"block":"top",0,null)}},token:function(e,r){if(!r.tokenize&&e.eatSpace())return null;var i=(r.tokenize||b)(e,r);return i&&"object"==typeof i&&(t=i[1],i=i[0]),n=i,"comment"!=t&&(r.state=X[r.state](t,e,r)),n},indent:function(e,t,n){var r=e.context,i=t&&t.charAt(0),a=r.indent;return"prop"!=r.type||"}"!=i&&")"!=i||(r=r.prev),r.prev&&("}"!=i||"block"!=r.type&&"top"!=r.type&&"interpolation"!=r.type&&"restricted_atBlock"!=r.type?(")"!=i||"parens"!=r.type&&"atBlock_parens"!=r.type)&&("{"!=i||"at"!=r.type&&"atBlock"!=r.type)||(a=Math.max(0,r.indent-n.unit)):a=(r=r.prev).indent),a},languageData:{indentOnInput:/^\s*\}$/,commentTokens:{line:m,block:{open:"/*",close:"*/"}},autocomplete:eQ}}}function Yg(e){for(var t={},n=0;n|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|\~|!|\?|(or|and|\|\||&&|\?)=)/,fQ=/^(?:[()\[\]{},:`=;]|\.\.?\.?)/,mQ=/^[_A-Za-z$][_A-Za-z$0-9]*/,gQ=/^@[_A-Za-z$][_A-Za-z$0-9]*/,QQ=dQ(["and","or","not","is","isnt","in","instanceof","typeof"]),$Q=["for","while","loop","if","unless","else","switch","try","catch","finally","class"],bQ=dQ($Q.concat(["break","by","continue","debugger","delete","do","in","of","new","return","then","this","@","throw","when","until","extends"]));$Q=dQ($Q);var xQ=/^('{3}|\"{3}|['\"])/,wQ=/^(\/{3}|\/)/,kQ=dQ(["Infinity","NaN","undefined","null","true","false","on","off","yes","no"]);function yQ(e,t){if(e.sol()){null===t.scope.align&&(t.scope.align=!1);var n=t.scope.offset;if(e.eatSpace()){var r=e.indentation();return r>n&&"coffee"==t.scope.type?"indent":r0&&_Q(e,t)}if(e.eatSpace())return null;var i=e.peek();if(e.match("####"))return e.skipToEnd(),"comment";if(e.match("###"))return t.tokenize=vQ,t.tokenize(e,t);if("#"===i)return e.skipToEnd(),"comment";if(e.match(/^-?[0-9\.]/,!1)){var a=!1;if(e.match(/^-?\d*\.\d+(e[\+\-]?\d+)?/i)&&(a=!0),e.match(/^-?\d+\.\d*/)&&(a=!0),e.match(/^-?\.\d+/)&&(a=!0),a)return"."==e.peek()&&e.backUp(1),"number";var o=!1;if(e.match(/^-?0x[0-9a-f]+/i)&&(o=!0),e.match(/^-?[1-9]\d*(e[\+\-]?\d+)?/)&&(o=!0),e.match(/^-?0(?![\dx])/i)&&(o=!0),o)return"number"}if(e.match(xQ))return t.tokenize=PQ(e.current(),!1,"string"),t.tokenize(e,t);if(e.match(wQ)){if("/"!=e.current()||e.match(/^.*\//,!1))return t.tokenize=PQ(e.current(),!0,"string.special"),t.tokenize(e,t);e.backUp(1)}return e.match(pQ)||e.match(QQ)?"operator":e.match(fQ)?"punctuation":e.match(kQ)?"atom":e.match(gQ)||t.prop&&e.match(mQ)?"property":e.match(bQ)?"keyword":e.match(mQ)?"variable":(e.next(),hQ)}function PQ(e,t,n){return function(r,i){for(;!r.eol();)if(r.eatWhile(/[^'"\/\\]/),r.eat("\\")){if(r.next(),t&&r.eol())return n}else{if(r.match(e))return i.tokenize=yQ,n;r.eat(/['"\/]/)}return t&&(i.tokenize=yQ),n}}function vQ(e,t){for(;!e.eol();){if(e.eatWhile(/[^#]/),e.match("###")){t.tokenize=yQ;break}e.eatWhile("#")}return"comment"}function SQ(e,t,n="coffee"){for(var r=0,i=!1,a=null,o=t.scope;o;o=o.prev)if("coffee"===o.type||"}"==o.type){r=o.offset+e.indentUnit;break}"coffee"!==n?(i=null,a=e.column()+e.current().length):t.scope.align&&(t.scope.align=!1),t.scope={offset:r,type:n,prev:t.scope,align:i,alignOffset:a}}function _Q(e,t){if(t.scope.prev){if("coffee"===t.scope.type){for(var n=e.indentation(),r=!1,i=t.scope;i;i=i.prev)if(n===i.offset){r=!0;break}if(!r)return!0;for(;t.scope.prev&&t.scope.offset!==n;)t.scope=t.scope.prev;return!1}return t.scope=t.scope.prev,!1}}const XQ={startState:function(){return{tokenize:yQ,scope:{offset:0,type:"coffee",prev:null,align:!1},prop:!1,dedent:0}},token:function(e,t){var n=null===t.scope.align&&t.scope;n&&e.sol()&&(n.align=!1);var r=function(e,t){var n=t.tokenize(e,t),r=e.current();"return"===r&&(t.dedent=!0),(("->"===r||"=>"===r)&&e.eol()||"indent"===n)&&SQ(e,t);var i="[({".indexOf(r);if(-1!==i&&SQ(e,t,"])}".slice(i,i+1)),$Q.exec(r)&&SQ(e,t),"then"==r&&_Q(e,t),"dedent"===n&&_Q(e,t))return hQ;if(-1!==(i="])}".indexOf(r))){for(;"coffee"==t.scope.type&&t.scope.prev;)t.scope=t.scope.prev;t.scope.type==r&&(t.scope=t.scope.prev)}return t.dedent&&e.eol()&&("coffee"==t.scope.type&&t.scope.prev&&(t.scope=t.scope.prev),t.dedent=!1),"indent"==n||"dedent"==n?null:n}(e,t);return r&&"comment"!=r&&(n&&(n.align=!0),t.prop="punctuation"==r&&"."==e.current()),r},indent:function(e,t){if(e.tokenize!=yQ)return 0;var n=e.scope,r=t&&"])}".indexOf(t.charAt(0))>-1;if(r)for(;"coffee"==n.type&&n.prev;)n=n.prev;var i=r&&n.type===t.charAt(0);return n.align?n.alignOffset-(i?1:0):(i?n.prev:n).offset},languageData:{commentTokens:{line:"#"}}};var TQ,RQ=Object.freeze({__proto__:null,coffeeScript:XQ}),WQ=/^(block|let*|return-from|catch|load-time-value|setq|eval-when|locally|symbol-macrolet|flet|macrolet|tagbody|function|multiple-value-call|the|go|multiple-value-prog1|throw|if|progn|unwind-protect|labels|progv|let|quote)$/,qQ=/^with|^def|^do|^prog|case$|^cond$|bind$|when$|unless$/,zQ=/^(?:[+\-]?(?:\d+|\d*\.\d+)(?:[efd][+\-]?\d+)?|[+\-]?\d+(?:\/[+\-]?\d+)?|#b[+\-]?[01]+|#o[+\-]?[0-7]+|#x[+\-]?[\da-f]+)/,YQ=/[^\s'`,@()\[\]";]/;function ZQ(e){for(var t;t=e.next();)if("\\"==t)e.next();else if(!YQ.test(t)){e.backUp(1);break}return e.current()}function UQ(e,t){if(e.eatSpace())return TQ="ws",null;if(e.match(zQ))return"number";var n;if("\\"==(n=e.next())&&(n=e.next()),'"'==n)return(t.tokenize=EQ)(e,t);if("("==n)return TQ="open","bracket";if(")"==n||"]"==n)return TQ="close","bracket";if(";"==n)return e.skipToEnd(),TQ="ws","comment";if(/['`,@]/.test(n))return null;if("|"==n)return e.skipTo("|")?(e.next(),"variableName"):(e.skipToEnd(),"error");if("#"==n)return"("==(n=e.next())?(TQ="open","bracket"):/[+\-=\.']/.test(n)||/\d/.test(n)&&e.match(/^\d*#/)?null:"|"==n?(t.tokenize=IQ)(e,t):":"==n?(ZQ(e),"meta"):"\\"==n?(e.next(),ZQ(e),"string.special"):"error";var r=ZQ(e);return"."==r?null:(TQ="symbol","nil"==r||"t"==r||":"==r.charAt(0)?"atom":"open"==t.lastType&&(WQ.test(r)||qQ.test(r))?"keyword":"&"==r.charAt(0)?"variableName.special":"variableName")}function EQ(e,t){for(var n,r=!1;n=e.next();){if('"'==n&&!r){t.tokenize=UQ;break}r=!r&&"\\"==n}return"string"}function IQ(e,t){for(var n,r;n=e.next();){if("#"==n&&"|"==r){t.tokenize=UQ;break}r=n}return TQ="ws","comment"}const VQ={startState:function(){return{ctx:{prev:null,start:0,indentTo:0},lastType:null,tokenize:UQ}},token:function(e,t){e.sol()&&"number"!=typeof t.ctx.indentTo&&(t.ctx.indentTo=t.ctx.start+1),TQ=null;var n=t.tokenize(e,t);return"ws"!=TQ&&(null==t.ctx.indentTo?"symbol"==TQ&&qQ.test(e.current())?t.ctx.indentTo=t.ctx.start+e.indentUnit:t.ctx.indentTo="next":"next"==t.ctx.indentTo&&(t.ctx.indentTo=e.column()),t.lastType=TQ),"open"==TQ?t.ctx={prev:t.ctx,start:e.column(),indentTo:null}:"close"==TQ&&(t.ctx=t.ctx.prev||t.ctx),n},indent:function(e){var t=e.ctx.indentTo;return"number"==typeof t?t:e.ctx.start+1},languageData:{commentTokens:{line:";;",block:{open:"#|",close:"|#"}},closeBrackets:{brackets:["(","[","{",'"']}}};var CQ,AQ=Object.freeze({__proto__:null,commonLisp:VQ}),GQ=function(e){return new RegExp("^(?:"+e.join("|")+")$","i")},jQ=function(e){var t=e.next();if('"'===t)return e.match(/^.*?"/),"string";if("'"===t)return e.match(/^.*?'/),"string";if(/[{}\(\),\.;\[\]]/.test(t))return CQ=t,"punctuation";if("/"===t&&e.eat("/"))return e.skipToEnd(),"comment";if(HQ.test(t))return e.eatWhile(HQ),null;if(e.eatWhile(/[_\w\d]/),e.eat(":"))return e.eatWhile(/[\w\d_\-]/),"atom";var n=e.current();return DQ.test(n)?"builtin":MQ.test(n)?"def":FQ.test(n)||BQ.test(n)?"keyword":"variable"},LQ=function(e,t,n){return e.context={prev:e.context,indent:e.indent,col:n,type:t}},NQ=function(e){return e.indent=e.context.indent,e.context=e.context.prev},DQ=GQ(["abs","acos","allShortestPaths","asin","atan","atan2","avg","ceil","coalesce","collect","cos","cot","count","degrees","e","endnode","exp","extract","filter","floor","haversin","head","id","keys","labels","last","left","length","log","log10","lower","ltrim","max","min","node","nodes","percentileCont","percentileDisc","pi","radians","rand","range","reduce","rel","relationship","relationships","replace","reverse","right","round","rtrim","shortestPath","sign","sin","size","split","sqrt","startnode","stdev","stdevp","str","substring","sum","tail","tan","timestamp","toFloat","toInt","toString","trim","type","upper"]),MQ=GQ(["all","and","any","contains","exists","has","in","none","not","or","single","xor"]),FQ=GQ(["as","asc","ascending","assert","by","case","commit","constraint","create","csv","cypher","delete","desc","descending","detach","distinct","drop","else","end","ends","explain","false","fieldterminator","foreach","from","headers","in","index","is","join","limit","load","match","merge","null","on","optional","order","periodic","profile","remove","return","scan","set","skip","start","starts","then","true","union","unique","unwind","using","when","where","with","call","yield"]),BQ=GQ(["access","active","assign","all","alter","as","catalog","change","copy","create","constraint","constraints","current","database","databases","dbms","default","deny","drop","element","elements","exists","from","grant","graph","graphs","if","index","indexes","label","labels","management","match","name","names","new","node","nodes","not","of","on","or","password","populated","privileges","property","read","relationship","relationships","remove","replace","required","revoke","role","roles","set","show","start","status","stop","suspended","to","traverse","type","types","user","users","with","write"]),HQ=/[*+\-<>=&|~%^]/;const KQ={startState:function(){return{tokenize:jQ,context:null,indent:0,col:0}},token:function(e,t){if(e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"!==n&&t.context&&null==t.context.align&&"pattern"!==t.context.type&&(t.context.align=!0),"("===CQ)LQ(t,")",e.column());else if("["===CQ)LQ(t,"]",e.column());else if("{"===CQ)LQ(t,"}",e.column());else if(/[\]\}\)]/.test(CQ)){for(;t.context&&"pattern"===t.context.type;)NQ(t);t.context&&CQ===t.context.type&&NQ(t)}else"."===CQ&&t.context&&"pattern"===t.context.type?NQ(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?LQ(t,"pattern",e.column()):"pattern"!==t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"===i.type;)i=i.prev;var a=i&&r===i.type;return i?"keywords"===i.type?null:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0}};var JQ=Object.freeze({__proto__:null,cypher:KQ});function e$(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var t$=e$(["and","or","not","is"]),n$=["as","assert","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","lambda","pass","raise","return","try","while","with","yield","in"],r$=["abs","all","any","bin","bool","bytearray","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip","__import__","NotImplemented","Ellipsis","__debug__"];function i$(e){return e.scopes[e.scopes.length-1]}function a$(e){for(var t="error",n=e.delimiters||e.singleDelimiters||/^[\(\)\[\]\{\}@,:`=;\.\\]/,r=[e.singleOperators,e.doubleOperators,e.doubleDelimiters,e.tripleDelimiters,e.operators||/^([-+*/%\/&|^]=?|[<>=]+|\/\/=?|\*\*=?|!=|[~!@]|\.\.\.)/],i=0;ir?f(e,t):i0&&m(e,t)&&(a+=" error"),a}return p(e,t)}function p(i,a,o){if(i.eatSpace())return null;if(!o&&i.match(/^#.*/))return"comment";if(i.match(/^[0-9\.]/,!1)){var s=!1;if(i.match(/^[\d_]*\.\d+(e[\+\-]?\d+)?/i)&&(s=!0),i.match(/^[\d_]+\.\d*/)&&(s=!0),i.match(/^\.\d+/)&&(s=!0),s)return i.eat(/J/i),"number";var O=!1;if(i.match(/^0x[0-9a-f_]+/i)&&(O=!0),i.match(/^0b[01_]+/i)&&(O=!0),i.match(/^0o[0-7_]+/i)&&(O=!0),i.match(/^[1-9][\d_]*(e[\+\-]?[\d_]+)?/)&&(i.eat(/J/i),O=!0),i.match(/^0(?![\dx])/i)&&(O=!0),O)return i.eat(/L/i),"number"}if(i.match(c))return-1!==i.current().toLowerCase().indexOf("f")?(a.tokenize=function(n,r){for(;"rubf".indexOf(n.charAt(0).toLowerCase())>=0;)n=n.substr(1);var i=1==n.length,a="string";function o(e){return function(t,n){var r=p(t,n,!0);return"punctuation"==r&&("{"==t.current()?n.tokenize=o(e+1):"}"==t.current()&&(n.tokenize=e>1?o(e-1):s)),r}}function s(s,O){for(;!s.eol();)if(s.eatWhile(/[^'"\{\}\\]/),s.eat("\\")){if(s.next(),i&&s.eol())return a}else{if(s.match(n))return O.tokenize=r,a;if(s.match("{{"))return a;if(s.match("{",!1))return O.tokenize=o(0),s.current()?a:O.tokenize(s,O);if(s.match("}}"))return a;if(s.match("}"))return t;s.eat(/['"]/)}if(i){if(e.singleLineStringErrors)return t;O.tokenize=r}return a}return s.isString=!0,s}(i.current(),a.tokenize),a.tokenize(i,a)):(a.tokenize=function(n,r){for(;"rubf".indexOf(n.charAt(0).toLowerCase())>=0;)n=n.substr(1);var i=1==n.length,a="string";function o(o,s){for(;!o.eol();)if(o.eatWhile(/[^'"\\]/),o.eat("\\")){if(o.next(),i&&o.eol())return a}else{if(o.match(n))return s.tokenize=r,a;o.eat(/['"]/)}if(i){if(e.singleLineStringErrors)return t;s.tokenize=r}return a}return o.isString=!0,o}(i.current(),a.tokenize),a.tokenize(i,a));for(var d=0;d1&&i$(t).offset>n;){if("py"!=i$(t).type)return!0;t.scopes.pop()}return i$(t).offset!=n}function g(e,n){e.sol()&&(n.beginningOfLine=!0,n.dedent=!1);var r=n.tokenize(e,n),i=e.current();if(n.beginningOfLine&&"@"==i)return e.match(l,!1)?"meta":O?"operator":t;if(/\S/.test(i)&&(n.beginningOfLine=!1),"variable"!=r&&"builtin"!=r||"meta"!=n.lastToken||(r="meta"),"pass"!=i&&"return"!=i||(n.dedent=!0),"lambda"==i&&(n.lambda=!0),":"==i&&!n.lambda&&"py"==i$(n).type&&e.match(/^\s*(?:#|$)/,!1)&&f(e,n),1==i.length&&!/string|comment/.test(r)){var o="[({".indexOf(i);if(-1!=o&&function(e,t,n){var r=e.match(/^[\s\[\{\(]*(?:#|$)/,!1)?null:e.column()+1;t.scopes.push({offset:t.indent+(a||e.indentUnit),type:n,align:r})}(e,n,"])}".slice(o,o+1)),-1!=(o="])}".indexOf(i))){if(i$(n).type!=i)return t;n.indent=n.scopes.pop().offset-(a||e.indentUnit)}}return n.dedent&&e.eol()&&"py"==i$(n).type&&n.scopes.length>1&&n.scopes.pop(),r}return{startState:function(){return{tokenize:d,scopes:[{offset:0,type:"py",align:null}],indent:0,lastToken:null,lambda:!1,dedent:0}},token:function(e,n){var r=n.errorToken;r&&(n.errorToken=!1);var i=g(e,n);return i&&"comment"!=i&&(n.lastToken="keyword"==i||"punctuation"==i?e.current():i),"punctuation"==i&&(i=null),e.eol()&&n.lambda&&(n.lambda=!1),r?t:i},indent:function(e,t,n){if(e.tokenize!=d)return e.tokenize.isString?null:0;var r=i$(e),i=r.type==t.charAt(0)||"py"==r.type&&!e.dedent&&/^(else:|elif |except |finally:)/.test(t);return null!=r.align?r.align-(i?1:0):r.offset-(i?a||n.unit:0)},languageData:{autocomplete:n$.concat(r$),indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/,commentTokens:{line:"#"},closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""']}}}}const o$=a$({}),s$=a$({extra_keywords:(O$="by cdef cimport cpdef ctypedef enum except extern gil include nogil property public readonly struct union DEF IF ELIF ELSE",O$.split(" "))});var O$,l$=Object.freeze({__proto__:null,mkPython:a$,python:o$,cython:s$});function c$(e,t){return new RegExp((t?"":"^")+"(?:"+e.join("|")+")"+(t?"$":"\\b"))}function u$(e,t,n){return n.tokenize.push(e),e(t,n)}var h$=/^(?:[-+/%|&^]|\*\*?|[<>]{2})/,d$=/^(?:[=!]~|===|<=>|[<>=!]=?|[|&]{2}|~)/,p$=/^(?:\[\][?=]?)/,f$=/^(?:\.(?:\.{2})?|->|[?:])/,m$=/^[a-z_\u009F-\uFFFF][a-zA-Z0-9_\u009F-\uFFFF]*/,g$=/^[A-Z_\u009F-\uFFFF][a-zA-Z0-9_\u009F-\uFFFF]*/,Q$=c$(["abstract","alias","as","asm","begin","break","case","class","def","do","else","elsif","end","ensure","enum","extend","for","fun","if","include","instance_sizeof","lib","macro","module","next","of","out","pointerof","private","protected","rescue","return","require","select","sizeof","struct","super","then","type","typeof","uninitialized","union","unless","until","when","while","with","yield","__DIR__","__END_LINE__","__FILE__","__LINE__"]),$$=c$(["true","false","nil","self"]),b$=c$(["def","fun","macro","class","module","struct","lib","enum","union","do","for"]),x$=c$(["if","unless","case","while","until","begin","then"]),w$=["end","else","elsif","rescue","ensure"],k$=c$(w$),y$=["\\)","\\}","\\]"],P$=new RegExp("^(?:"+y$.join("|")+")$"),v$={def:R$,fun:R$,macro:function(e,t){if(e.eatSpace())return null;var n;if(n=e.match(m$)){if("def"==n)return"keyword";e.eat(/[?!]/)}return t.tokenize.pop(),"def"},class:W$,module:W$,struct:W$,lib:W$,enum:W$,union:W$},S$={"[":"]","{":"}","(":")","<":">"};function _$(e,t){if(e.eatSpace())return null;if("\\"!=t.lastToken&&e.match("{%",!1))return u$(T$("%","%"),e,t);if("\\"!=t.lastToken&&e.match("{{",!1))return u$(T$("{","}"),e,t);if("#"==e.peek())return e.skipToEnd(),"comment";var n;if(e.match(m$))return e.eat(/[?!]/),n=e.current(),e.eat(":")?"atom":"."==t.lastToken?"property":Q$.test(n)?(b$.test(n)?"fun"==n&&t.blocks.indexOf("lib")>=0||"def"==n&&"abstract"==t.lastToken||(t.blocks.push(n),t.currentIndent+=1):"operator"!=t.lastStyle&&t.lastStyle||!x$.test(n)?"end"==n&&(t.blocks.pop(),t.currentIndent-=1):(t.blocks.push(n),t.currentIndent+=1),v$.hasOwnProperty(n)&&t.tokenize.push(v$[n]),"keyword"):$$.test(n)?"atom":"variable";if(e.eat("@"))return"["==e.peek()?u$(X$("[","]","meta"),e,t):(e.eat("@"),e.match(m$)||e.match(g$),"propertyName");if(e.match(g$))return"tag";if(e.eat(":"))return e.eat('"')?u$(q$('"',"atom",!1),e,t):e.match(m$)||e.match(g$)||e.match(h$)||e.match(d$)||e.match(p$)?"atom":(e.eat(":"),"operator");if(e.eat('"'))return u$(q$('"',"string",!0),e,t);if("%"==e.peek()){var r,i="string",a=!0;if(e.match("%r"))i="string.special",r=e.next();else if(e.match("%w"))a=!1,r=e.next();else if(e.match("%q"))a=!1,r=e.next();else if(r=e.match(/^%([^\w\s=])/))r=r[1];else{if(e.match(/^%[a-zA-Z_\u009F-\uFFFF][\w\u009F-\uFFFF]*/))return"meta";if(e.eat("%"))return"operator"}return S$.hasOwnProperty(r)&&(r=S$[r]),u$(q$(r,i,a),e,t)}return(n=e.match(/^<<-('?)([A-Z]\w*)\1/))?u$(function(e,t){return function(n,r){if(n.sol()&&(n.eatSpace(),n.match(e)))return r.tokenize.pop(),"string";for(var i=!1;n.peek();)if(i)n.next(),i=!1;else{if(n.match("{%",!1))return r.tokenize.push(T$("%","%")),"string";if(n.match("{{",!1))return r.tokenize.push(T$("{","}")),"string";if(t&&n.match("#{",!1))return r.tokenize.push(X$("#{","}","meta")),"string";i=t&&"\\"==n.next()}return"string"}}(n[2],!n[1]),e,t):e.eat("'")?(e.match(/^(?:[^']|\\(?:[befnrtv0'"]|[0-7]{3}|u(?:[0-9a-fA-F]{4}|\{[0-9a-fA-F]{1,6}\})))/),e.eat("'"),"atom"):e.eat("0")?(e.eat("x")?e.match(/^[0-9a-fA-F_]+/):e.eat("o")?e.match(/^[0-7_]+/):e.eat("b")&&e.match(/^[01_]+/),"number"):e.eat(/^\d/)?(e.match(/^[\d_]*(?:\.[\d_]+)?(?:[eE][+-]?\d+)?/),"number"):e.match(h$)?(e.eat("="),"operator"):e.match(d$)||e.match(f$)?"operator":(n=e.match(/[({[]/,!1))?u$(X$(n=n[0],S$[n],null),e,t):e.eat("\\")?(e.next(),"meta"):(e.next(),null)}function X$(e,t,n,r){return function(i,a){if(!r&&i.match(e))return a.tokenize[a.tokenize.length-1]=X$(e,t,n,!0),a.currentIndent+=1,n;var o=_$(i,a);return i.current()===t&&(a.tokenize.pop(),a.currentIndent-=1,o=n),o}}function T$(e,t,n){return function(r,i){return!n&&r.match("{"+e)?(i.currentIndent+=1,i.tokenize[i.tokenize.length-1]=T$(e,t,!0),"meta"):r.match(t+"}")?(i.currentIndent-=1,i.tokenize.pop(),"meta"):_$(r,i)}}function R$(e,t){return e.eatSpace()?null:(e.match(m$)?e.eat(/[!?]/):e.match(h$)||e.match(d$)||e.match(p$),t.tokenize.pop(),"def")}function W$(e,t){return e.eatSpace()?null:(e.match(g$),t.tokenize.pop(),"def")}function q$(e,t,n){return function(r,i){for(var a=!1;r.peek();)if(a)r.next(),a=!1;else{if(r.match("{%",!1))return i.tokenize.push(T$("%","%")),t;if(r.match("{{",!1))return i.tokenize.push(T$("{","}")),t;if(n&&r.match("#{",!1))return i.tokenize.push(X$("#{","}","meta")),t;var o=r.next();if(o==e)return i.tokenize.pop(),t;a=n&&"\\"==o}return t}}const z$={startState:function(){return{tokenize:[_$],currentIndent:0,lastToken:null,lastStyle:null,blocks:[]}},token:function(e,t){var n=t.tokenize[t.tokenize.length-1](e,t),r=e.current();return n&&"comment"!=n&&(t.lastToken=r,t.lastStyle=n),n},indent:function(e,t,n){return t=t.replace(/^\s*(?:\{%)?\s*|\s*(?:%\})?\s*$/g,""),k$.test(t)||P$.test(t)?n.unit*(e.currentIndent-1):n.unit*e.currentIndent},languageData:{indentOnInput:c$(y$.concat(w$),!0),commentTokens:{line:"#"}}};var Y$=Object.freeze({__proto__:null,crystal:z$});function Z$(e){for(var t={},n=e.split(" "),r=0;r!?|\/]/;function N$(e,t){var n=e.next();if(G$[n]){var r=G$[n](e,t);if(!1!==r)return r}if('"'==n||"'"==n||"`"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return(a||!i&&!j$)&&(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\:\.]/.test(n))return E$=n,null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n){if(e.eat("+"))return t.tokenize=M$,M$(e,t);if(e.eat("*"))return t.tokenize=D$,D$(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(L$.test(n))return e.eatWhile(L$),"operator";e.eatWhile(/[\w\$_\xa1-\uffff]/);var i=e.current();return I$.propertyIsEnumerable(i)?(C$.propertyIsEnumerable(i)&&(E$="newstatement"),"keyword"):V$.propertyIsEnumerable(i)?(C$.propertyIsEnumerable(i)&&(E$="newstatement"),"builtin"):A$.propertyIsEnumerable(i)?"atom":"variable"}function D$(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function M$(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="+"==n}return"comment"}function F$(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function B$(e,t,n){var r=e.indented;return e.context&&"statement"==e.context.type&&(r=e.context.indented),e.context=new F$(r,t,n,null,e.context)}function H$(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}const K$={startState:function(e){return{tokenize:null,context:new F$(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;E$=null;var r=(t.tokenize||N$)(e,t);if("comment"==r||"meta"==r)return r;if(null==n.align&&(n.align=!0),";"!=E$&&":"!=E$&&","!=E$||"statement"!=n.type)if("{"==E$)B$(t,e.column(),"}");else if("["==E$)B$(t,e.column(),"]");else if("("==E$)B$(t,e.column(),")");else if("}"==E$){for(;"statement"==n.type;)n=H$(t);for("}"==n.type&&(n=H$(t));"statement"==n.type;)n=H$(t)}else E$==n.type?H$(t):(("}"==n.type||"top"==n.type)&&";"!=E$||"statement"==n.type&&"newstatement"==E$)&&B$(t,e.column(),"statement");else H$(t);return t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=N$&&null!=e.tokenize)return null;var r=e.context,i=t&&t.charAt(0);"statement"==r.type&&"}"==i&&(r=r.prev);var a=i==r.type;return"statement"==r.type?r.indented+("{"==i?0:n.unit):r.align?r.column+(a?0:1):r.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var J$=Object.freeze({__proto__:null,d:K$}),eb={"+":"inserted","-":"deleted","@":"meta"};const tb={token:function(e){var t=e.string.search(/[\t ]+?$/);if(!e.sol()||0===t)return e.skipToEnd(),("error "+(eb[e.string.charAt(0)]||"")).replace(/ $/,"");var n=eb[e.peek()]||e.skipToEnd();return-1===t?e.skipToEnd():e.pos=t,n}};var nb=Object.freeze({__proto__:null,diff:tb});function rb(e){ib(e,"start");var t={},n=e.languageData||{},r=!1;for(var i in e)if(i!=n&&e.hasOwnProperty(i))for(var a=t[i]=[],o=e[i],s=0;s2&&o.token&&"string"!=typeof o.token){n.pending=[];for(var l=2;l-1)return null;var i=n.indent.length-1,a=e[n.state];e:for(;;){for(var o=0;o"),Qb("meta",n);if("#"==n&&e.eatWhile(/[\w]/))return Qb("atom","tag");if("|"==n)return Qb("keyword","separator");if(n.match(/[\(\)\[\]\-\.,\+\?>]/))return Qb(null,n);if(n.match(/[\[\]]/))return Qb("rule",n);if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){n.tokenize=$b;break}i=!i&&"\\"==r}return Qb("string","tag")}}(n),t.tokenize(e,t);if(e.eatWhile(/[a-zA-Z\?\+\d]/)){var r=e.current();return null!==r.substr(r.length-1,r.length).match(/\?|\+/)&&e.backUp(1),Qb("tag","tag")}return"%"==n||"*"==n?Qb("number","number"):(e.eatWhile(/[\w\\\-_%.{,]/),Qb(null,null))}return e.eatWhile(/[\-]/)?(t.tokenize=bb,bb(e,t)):e.eatWhile(/[\w]/)?Qb("keyword","doindent"):void 0}function bb(e,t){for(var n,r=0;null!=(n=e.next());){if(r>=2&&">"==n){t.tokenize=$b;break}r="-"==n?r+1:0}return Qb("comment","comment")}const xb={startState:function(){return{tokenize:$b,baseIndent:0,stack:[]}},token:function(e,t){if(e.eatSpace())return null;var n=t.tokenize(e,t),r=t.stack[t.stack.length-1];return"["==e.current()||"doindent"===mb||"["==mb?t.stack.push("rule"):"endtag"===mb?t.stack[t.stack.length-1]="endtag":"]"==e.current()||"]"==mb||">"==mb&&"rule"==r?t.stack.pop():"["==mb&&t.stack.push("["),n},indent:function(e,t,n){var r=e.stack.length;return"]"===t.charAt(0)?r--:">"===t.substr(t.length-1,t.length)&&("<"===t.substr(0,1)||"doindent"==mb&&t.length>1||("doindent"==mb?r--:">"==mb&&t.length>1||"tag"==mb&&">"!==t||("tag"==mb&&"rule"==e.stack[e.stack.length-1]?r--:"tag"==mb?r++:">"===t&&"rule"==e.stack[e.stack.length-1]&&">"===mb?r--:">"===t&&"rule"==e.stack[e.stack.length-1]||("<"!==t.substr(0,1)&&">"===t.substr(0,1)?r-=1:">"===t||(r-=1)))),null!=mb&&"]"!=mb||r--),e.baseIndent+r*n.unit},languageData:{indentOnInput:/^\s*[\]>]$/}};var wb=Object.freeze({__proto__:null,dtd:xb});function kb(e,t){for(var n=0;n",symbolGlobal:"\\*"+vb+"\\*",symbolConstant:"\\$"+vb},Xb={symbolKeyword:"atom",symbolClass:"tag",symbolGlobal:"variableName.standard",symbolConstant:"variableName.constant"};for(var Tb in _b)_b.hasOwnProperty(Tb)&&(_b[Tb]=new RegExp("^"+_b[Tb]));_b.keyword=[/^with(?:out)?-[-_a-zA-Z?!*@<>$%]+/];var Rb={keyword:"keyword",definition:"def",simpleDefinition:"def",signalingCalls:"builtin"},Wb={},qb={};function zb(e,t,n){return t.tokenize=n,n(e,t)}function Yb(e,t){var n=e.peek();if("'"==n||'"'==n)return e.next(),zb(e,t,Ub(n,"string"));if("/"==n){if(e.next(),e.eat("*"))return zb(e,t,Zb);if(e.eat("/"))return e.skipToEnd(),"comment";e.backUp(1)}else if(/[+\-\d\.]/.test(n)){if(e.match(/^[+-]?[0-9]*\.[0-9]*([esdx][+-]?[0-9]+)?/i)||e.match(/^[+-]?[0-9]+([esdx][+-]?[0-9]+)/i)||e.match(/^[+-]?\d+/))return"number"}else{if("#"==n)return e.next(),'"'==(n=e.peek())?(e.next(),zb(e,t,Ub('"',"string"))):"b"==n?(e.next(),e.eatWhile(/[01]/),"number"):"x"==n?(e.next(),e.eatWhile(/[\da-f]/i),"number"):"o"==n?(e.next(),e.eatWhile(/[0-7]/),"number"):"#"==n?(e.next(),"punctuation"):"["==n||"("==n?(e.next(),"bracket"):e.match(/f|t|all-keys|include|key|next|rest/i)?"atom":(e.eatWhile(/[-a-zA-Z]/),"error");if("~"==n)return e.next(),"="==(n=e.peek())?(e.next(),"="==(n=e.peek())?(e.next(),"operator"):"operator"):"operator";if(":"==n){if(e.next(),"="==(n=e.peek()))return e.next(),"operator";if(":"==n)return e.next(),"punctuation"}else{if(-1!="[](){}".indexOf(n))return e.next(),"bracket";if(-1!=".,".indexOf(n))return e.next(),"punctuation";if(e.match("end"))return"keyword"}}for(var r in _b)if(_b.hasOwnProperty(r)){var i=_b[r];if(i instanceof Array&&yb(i,(function(t){return e.match(t)}))||e.match(i))return Xb[r]}return/[+\-*\/^=<>&|]/.test(n)?(e.next(),"operator"):e.match("define")?"def":(e.eatWhile(/[\w\-]/),Wb.hasOwnProperty(e.current())?qb[e.current()]:e.current().match(Sb)?"variable":(e.next(),"variableName.standard"))}function Zb(e,t){for(var n,r=!1,i=!1,a=0;n=e.next();){if("/"==n&&r){if(!(a>0)){t.tokenize=Yb;break}a--}else"*"==n&&i&&a++;r="*"==n,i="/"==n}return"comment"}function Ub(e,t){return function(n,r){for(var i,a=!1,o=!1;null!=(i=n.next());){if(i==e&&!a){o=!0;break}a=!a&&"\\"==i}return!o&&a||(r.tokenize=Yb),t}}kb(["keyword","definition","simpleDefinition","signalingCalls"],(function(e){kb(Pb[e],(function(t){Wb[t]=e,qb[t]=Rb[e]}))}));const Eb={startState:function(){return{tokenize:Yb,currentIndent:0}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"/*",close:"*/"}}}};var Ib=Object.freeze({__proto__:null,dylan:Eb}),Vb=0,Cb=1,Ab=0,Gb=1,jb=2;const Lb={startState:function(){return{stringType:null,commentType:null,braced:0,lhs:!0,localState:null,stack:[],inDefinition:!1}},token:function(e,t){if(e){switch(0===t.stack.length&&('"'==e.peek()||"'"==e.peek()?(t.stringType=e.peek(),e.next(),t.stack.unshift(Gb)):e.match("/*")?(t.stack.unshift(Ab),t.commentType=Vb):e.match("(*")&&(t.stack.unshift(Ab),t.commentType=Cb)),t.stack[0]){case Gb:for(;t.stack[0]===Gb&&!e.eol();)e.peek()===t.stringType?(e.next(),t.stack.shift()):"\\"===e.peek()?(e.next(),e.next()):e.match(/^.[^\\\"\']*/);return t.lhs?"property":"string";case Ab:for(;t.stack[0]===Ab&&!e.eol();)t.commentType===Vb&&e.match("*/")||t.commentType===Cb&&e.match("*)")?(t.stack.shift(),t.commentType=null):e.match(/^.[^\*]*/);return"comment";case jb:for(;t.stack[0]===jb&&!e.eol();)e.match(/^[^\]\\]+/)||e.match(".")||t.stack.shift();return"operator"}var n=e.peek();switch(n){case"[":return e.next(),t.stack.unshift(jb),"bracket";case":":case"|":case";":return e.next(),"operator";case"%":if(e.match("%%"))return"header";if(e.match(/[%][A-Za-z]+/))return"keyword";if(e.match(/[%][}]/))return"bracket";break;case"/":if(e.match(/[\/][A-Za-z]+/))return"keyword";case"\\":if(e.match(/[\][a-z]+/))return"string.special";case".":if(e.match("."))return"atom";case"*":case"-":case"+":case"^":if(e.match(n))return"atom";case"$":if(e.match("$$"))return"builtin";if(e.match(/[$][0-9]+/))return"variableName.special";case"<":if(e.match(/<<[a-zA-Z_]+>>/))return"builtin"}return e.match("//")?(e.skipToEnd(),"comment"):e.match("return")?"operator":e.match(/^[a-zA-Z_][a-zA-Z0-9_]*/)?e.match(/(?=[\(.])/)?"variable":e.match(/(?=[\s\n]*[:=])/)?"def":"variableName.special":-1!=["[","]","(",")"].indexOf(e.peek())?(e.next(),"bracket"):(e.eatSpace()||e.next(),null)}}};var Nb=Object.freeze({__proto__:null,ebnf:Lb});function Db(e){for(var t={},n=e.split(" "),r=0;r!?|\/]/;function ix(e,t){var n=e.next();if(nx[n]){var r=nx[n](e,t);if(!1!==r)return r}if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=ix),"string"}}(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\:\.]/.test(n))return Mb=n,null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n){if(e.eat("*"))return t.tokenize=ax,ax(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(rx.test(n))return e.eatWhile(rx),"operator";e.eatWhile(/[\w\$_]/);var i=e.current().toLowerCase();if(Fb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"keyword";if(Bb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"variable";if(Hb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"modifier";if(Kb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"type";if(Jb.propertyIsEnumerable(i))return ex.propertyIsEnumerable(i)&&(Mb="newstatement"),"builtin";for(var a=i.length-1;a>=0&&(!isNaN(i[a])||"_"==i[a]);)--a;if(a>0){var o=i.substr(0,a+1);if(Kb.propertyIsEnumerable(o))return ex.propertyIsEnumerable(o)&&(Mb="newstatement"),"type"}return tx.propertyIsEnumerable(i)?"atom":null}function ax(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=ix;break}r="*"==n}return"comment"}function ox(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function sx(e,t,n){return e.context=new ox(e.indented,t,n,null,e.context)}function Ox(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}const lx={startState:function(e){return{tokenize:null,context:new ox(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;Mb=null;var r=(t.tokenize||ix)(e,t);if("comment"==r||"meta"==r)return r;if(null==n.align&&(n.align=!0),";"!=Mb&&":"!=Mb||"statement"!=n.type)if("{"==Mb)sx(t,e.column(),"}");else if("["==Mb)sx(t,e.column(),"]");else if("("==Mb)sx(t,e.column(),")");else if("}"==Mb){for(;"statement"==n.type;)n=Ox(t);for("}"==n.type&&(n=Ox(t));"statement"==n.type;)n=Ox(t)}else Mb==n.type?Ox(t):("}"==n.type||"top"==n.type||"statement"==n.type&&"newstatement"==Mb)&&sx(t,e.column(),"statement");else Ox(t);return t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=ix&&null!=e.tokenize)return 0;var r=e.context,i=t&&t.charAt(0);"statement"==r.type&&"}"==i&&(r=r.prev);var a=i==r.type;return"statement"==r.type?r.indented+("{"==i?0:n.unit):r.align?r.column+(a?0:1):r.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/}};var cx=Object.freeze({__proto__:null,ecl:lx});function ux(e){for(var t={},n=0,r=e.length;n>"]);function px(e,t){if(e.eatSpace())return null;var n=e.next();return'"'==n||"'"==n?function(e,t,n){return n.tokenize.push(e),e(t,n)}(function(e,t,n){return function(r,i){for(var a,o=!1;null!=(a=r.next());){if(a==e&&(n||!o)){i.tokenize.pop();break}o=!o&&"%"==a}return t}}(n,"string"),e,t):"-"==n&&e.eat("-")?(e.skipToEnd(),"comment"):":"==n&&e.eat("=")?"operator":/[0-9]/.test(n)?(e.eatWhile(/[xXbBCc0-9\.]/),e.eat(/[\?\!]/),"variable"):/[a-zA-Z_0-9]/.test(n)?(e.eatWhile(/[a-zA-Z_0-9]/),e.eat(/[\?\!]/),"variable"):/[=+\-\/*^%<>~]/.test(n)?(e.eatWhile(/[=+\-\/*^%<>~]/),"operator"):null}const fx={startState:function(){return{tokenize:[px]}},token:function(e,t){var n=t.tokenize[t.tokenize.length-1](e,t);if("variable"==n){var r=e.current();n=hx.propertyIsEnumerable(e.current())?"keyword":dx.propertyIsEnumerable(e.current())?"operator":/^[A-Z][A-Z_0-9]*$/g.test(r)?"tag":/^0[bB][0-1]+$/g.test(r)||/^0[cC][0-7]+$/g.test(r)||/^0[xX][a-fA-F0-9]+$/g.test(r)||/^([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)$/g.test(r)||/^[0-9]+$/g.test(r)?"number":"variable"}return n},languageData:{commentTokens:{line:"--"}}};var mx=Object.freeze({__proto__:null,eiffel:fx});function gx(e,t,n){return t(n),n(e,t)}var Qx=/[a-z]/,$x=/[A-Z]/,bx=/[a-zA-Z0-9_]/,xx=/[0-9]/,wx=/[0-9A-Fa-f]/,kx=/[-&*+.\\/<>=?^|:]/,yx=/[(),[\]{}]/,Px=/[ \v\f]/;function vx(){return function(e,t){if(e.eatWhile(Px))return null;var n=e.next();if(yx.test(n))return"{"===n&&e.eat("-")?gx(e,t,Sx(1)):"["===n&&e.match("glsl|")?gx(e,t,Rx):"builtin";if("'"===n)return gx(e,t,Tx);if('"'===n)return e.eat('"')?e.eat('"')?gx(e,t,_x):"string":gx(e,t,Xx);if($x.test(n))return e.eatWhile(bx),"type";if(Qx.test(n)){var r=1===e.pos;return e.eatWhile(bx),r?"def":"variable"}if(xx.test(n)){if("0"===n){if(e.eat(/[xX]/))return e.eatWhile(wx),"number"}else e.eatWhile(xx);return e.eat(".")&&e.eatWhile(xx),e.eat(/[eE]/)&&(e.eat(/[-+]/),e.eatWhile(xx)),"number"}return kx.test(n)?"-"===n&&e.eat("-")?(e.skipToEnd(),"comment"):(e.eatWhile(kx),"keyword"):"_"===n?"keyword":"error"}}function Sx(e){return 0==e?vx():function(t,n){for(;!t.eol();){var r=t.next();if("{"==r&&t.eat("-"))++e;else if("-"==r&&t.eat("}")&&0===--e)return n(vx()),"comment"}return n(Sx(e)),"comment"}}function _x(e,t){for(;!e.eol();){if('"'===e.next()&&e.eat('"')&&e.eat('"'))return t(vx()),"string"}return"string"}function Xx(e,t){for(;e.skipTo('\\"');)e.next(),e.next();return e.skipTo('"')?(e.next(),t(vx()),"string"):(e.skipToEnd(),t(vx()),"error")}function Tx(e,t){for(;e.skipTo("\\'");)e.next(),e.next();return e.skipTo("'")?(e.next(),t(vx()),"string"):(e.skipToEnd(),t(vx()),"error")}function Rx(e,t){for(;!e.eol();){if("|"===e.next()&&e.eat("]"))return t(vx()),"string"}return"string"}var Wx={case:1,of:1,as:1,if:1,then:1,else:1,let:1,in:1,type:1,alias:1,module:1,where:1,import:1,exposing:1,port:1};const qx={startState:function(){return{f:vx()}},copyState:function(e){return{f:e.f}},token:function(e,t){var n=t.f(e,(function(e){t.f=e})),r=e.current();return Wx.hasOwnProperty(r)?"keyword":n}};var zx=Object.freeze({__proto__:null,elm:qx}),Yx=["-type","-spec","-export_type","-opaque"],Zx=["after","begin","catch","case","cond","end","fun","if","let","of","query","receive","try","when"],Ux=/[\->,;]/,Ex=["->",";",","],Ix=["and","andalso","band","bnot","bor","bsl","bsr","bxor","div","not","or","orelse","rem","xor"],Vx=/[\+\-\*\/<>=\|:!]/,Cx=["=","+","-","*","/",">",">=","<","=<","=:=","==","=/=","/=","||","<-","!"],Ax=/[<\(\[\{]/,Gx=["<<","(","[","{"],jx=/[>\)\]\}]/,Lx=["}","]",")",">>"],Nx=["is_atom","is_binary","is_bitstring","is_boolean","is_float","is_function","is_integer","is_list","is_number","is_pid","is_port","is_record","is_reference","is_tuple","atom","binary","bitstring","boolean","function","integer","list","number","pid","port","record","reference","tuple"],Dx=["abs","adler32","adler32_combine","alive","apply","atom_to_binary","atom_to_list","binary_to_atom","binary_to_existing_atom","binary_to_list","binary_to_term","bit_size","bitstring_to_list","byte_size","check_process_code","contact_binary","crc32","crc32_combine","date","decode_packet","delete_module","disconnect_node","element","erase","exit","float","float_to_list","garbage_collect","get","get_keys","group_leader","halt","hd","integer_to_list","internal_bif","iolist_size","iolist_to_binary","is_alive","is_atom","is_binary","is_bitstring","is_boolean","is_float","is_function","is_integer","is_list","is_number","is_pid","is_port","is_process_alive","is_record","is_reference","is_tuple","length","link","list_to_atom","list_to_binary","list_to_bitstring","list_to_existing_atom","list_to_float","list_to_integer","list_to_pid","list_to_tuple","load_module","make_ref","module_loaded","monitor_node","node","node_link","node_unlink","nodes","notalive","now","open_port","pid_to_list","port_close","port_command","port_connect","port_control","pre_loaded","process_flag","process_info","processes","purge_module","put","register","registered","round","self","setelement","size","spawn","spawn_link","spawn_monitor","spawn_opt","split_binary","statistics","term_to_binary","time","throw","tl","trunc","tuple_size","tuple_to_list","unlink","unregister","whereis"],Mx=/[\w@Ø-ÞÀ-Öß-öø-ÿ]/,Fx=/[0-7]{1,3}|[bdefnrstv\\"']|\^[a-zA-Z]|x[0-9a-zA-Z]{2}|x{[0-9a-zA-Z]+}/;function Bx(e,t,n){if(1==e.current().length&&t.test(e.current())){for(e.backUp(1);t.test(e.peek());)if(e.next(),tw(e.current(),n))return!0;e.backUp(e.current().length-1)}return!1}function Hx(e,t,n){if(1==e.current().length&&t.test(e.current())){for(;t.test(e.peek());)e.next();for(;01&&"fun"===e[t].type&&"fun"===e[t-1].token)return e.slice(0,t-1);switch(e[t].token){case"}":return ow(e,{g:["{"]});case"]":return ow(e,{i:["["]});case")":return ow(e,{i:["("]});case">>":return ow(e,{i:["<<"]});case"end":return ow(e,{i:["begin","case","fun","if","receive","try"]});case",":return ow(e,{e:["begin","try","when","->",",","(","[","{","<<"]});case"->":return ow(e,{r:["when"],m:["try","if","case","receive"]});case";":return ow(e,{E:["case","fun","if","receive","try","when"]});case"catch":return ow(e,{e:["try"]});case"of":return ow(e,{e:["case"]});case"after":return ow(e,{e:["receive","try"]});default:return e}}(e.tokenStack))}(e,function(e,t){return rw(t.current(),t.column(),t.indentation(),e)}(n,t)),n){case"atom":case"boolean":return"atom";case"attribute":return"attribute";case"builtin":return"builtin";default:return null;case"comment":return"comment";case"error":return"error";case"fun":return"meta";case"function":return"tag";case"guard":return"property";case"keyword":return"keyword";case"macro":return"macroName";case"number":return"number";case"operator":return"operator";case"record":return"bracket";case"string":return"string";case"type":return"def";case"variable":return"variable"}}function rw(e,t,n,r){return{token:e,column:t,indent:n,type:r}}function iw(e){return rw(e,0,0,e)}function aw(e,t){var n=e.tokenStack.length,r=t||1;return!(n({tokenStack:[],in_string:!1,in_atom:!1}),token:function(e,t){if(t.in_string)return t.in_string=!Kx(e),nw(t,e,"string");if(t.in_atom)return t.in_atom=!Jx(e),nw(t,e,"atom");if(e.eatSpace())return nw(t,e,"whitespace");if(!aw(t)&&e.match(/-\s*[a-zß-öø-ÿ][\wØ-ÞÀ-Öß-öø-ÿ]*/))return tw(e.current(),Yx)?nw(t,e,"type"):nw(t,e,"attribute");var n=e.next();if("%"==n)return e.skipToEnd(),nw(t,e,"comment");if(":"==n)return nw(t,e,"colon");if("?"==n)return e.eatSpace(),e.eatWhile(Mx),nw(t,e,"macro");if("#"==n)return e.eatSpace(),e.eatWhile(Mx),nw(t,e,"record");if("$"==n)return"\\"!=e.next()||e.match(Fx)?nw(t,e,"number"):nw(t,e,"error");if("."==n)return nw(t,e,"dot");if("'"==n){if(!(t.in_atom=!Jx(e))){if(e.match(/\s*\/\s*[0-9]/,!1))return e.match(/\s*\/\s*[0-9]/,!0),nw(t,e,"fun");if(e.match(/\s*\(/,!1)||e.match(/\s*:/,!1))return nw(t,e,"function")}return nw(t,e,"atom")}if('"'==n)return t.in_string=!Kx(e),nw(t,e,"string");if(/[A-Z_Ø-ÞÀ-Ö]/.test(n))return e.eatWhile(Mx),nw(t,e,"variable");if(/[a-z_ß-öø-ÿ]/.test(n)){if(e.eatWhile(Mx),e.match(/\s*\/\s*[0-9]/,!1))return e.match(/\s*\/\s*[0-9]/,!0),nw(t,e,"fun");var r=e.current();return tw(r,Zx)?nw(t,e,"keyword"):tw(r,Ix)?nw(t,e,"operator"):e.match(/\s*\(/,!1)?!tw(r,Dx)||":"==aw(t).token&&"erlang"!=aw(t,2).token?tw(r,Nx)?nw(t,e,"guard"):nw(t,e,"function"):nw(t,e,"builtin"):":"==function(e){var t=e.match(/^\s*([^\s%])/,!1);return t?t[1]:""}(e)?nw(t,e,"erlang"==r?"builtin":"function"):tw(r,["true","false"])?nw(t,e,"boolean"):nw(t,e,"atom")}var i=/[0-9]/;return i.test(n)?(e.eatWhile(i),e.eat("#")?e.eatWhile(/[0-9a-zA-Z]/)||e.backUp(1):e.eat(".")&&(e.eatWhile(i)?e.eat(/[eE]/)&&(e.eat(/[-+]/)?e.eatWhile(i)||e.backUp(2):e.eatWhile(i)||e.backUp(1)):e.backUp(1)),nw(t,e,"number")):Bx(e,Ax,Gx)?nw(t,e,"open_paren"):Bx(e,jx,Lx)?nw(t,e,"close_paren"):Hx(e,Ux,Ex)?nw(t,e,"separator"):Hx(e,Vx,Cx)?nw(t,e,"operator"):nw(t,e,null)},indent:function(e,t,n){var r,i=function(e){var t=e.match(/,|[a-z]+|\}|\]|\)|>>|\|+|\(/);return lw(t)&&0===t.index?t[0]:""}(t),a=aw(e,1),o=aw(e,2);return e.in_string||e.in_atom?null:o?"when"==a.token?a.column+n.unit:"when"===i&&"function"===o.type?o.indent+n.unit:"("===i&&"fun"===a.token?a.column+3:"catch"===i&&(r=sw(e,["try"]))?r.column:tw(i,["end","after","of"])?(r=sw(e,["begin","case","fun","if","receive","try"]))?r.column:null:tw(i,Lx)?(r=sw(e,Gx))?r.column:null:tw(a.token,[",","|","||"])||tw(i,[",","|","||"])?(r=function(e){var t=e.tokenStack.slice(0,-1),n=Ow(t,"type",["open_paren"]);return!!lw(t[n])&&t[n]}(e),r?r.column+r.token.length:n.unit):"->"==a.token?tw(o.token,["receive","case","if","try"])?o.column+n.unit+n.unit:o.column+n.unit:tw(a.token,Gx)?a.column+a.token.length:(r=function(e){var t=e.tokenStack,n=Ow(t,"type",["open_paren","separator","keyword"]),r=Ow(t,"type",["operator"]);return lw(n)&&lw(r)&&n!=&|~^\/]/,o=e.support||{},s=e.hooks||{},O=e.dateSQL||{date:!0,time:!0,timestamp:!0},l=!1!==e.backslashStringEscapes,c=e.brackets||/^[\{}\(\)\[\]]/,u=e.punctuation||/^[;.,:]/;function h(e,l){var h=e.next();if(s[h]){var f=s[h](e,l);if(!1!==f)return f}if(o.hexNumber&&("0"==h&&e.match(/^[xX][0-9a-fA-F]+/)||("x"==h||"X"==h)&&e.match(/^'[0-9a-fA-F]+'/)))return"number";if(o.binaryNumber&&(("b"==h||"B"==h)&&e.match(/^'[01]+'/)||"0"==h&&e.match(/^b[01]+/)))return"number";if(h.charCodeAt(0)>47&&h.charCodeAt(0)<58)return e.match(/^[0-9]*(\.[0-9]+)?([eE][-+]?[0-9]+)?/),o.decimallessFloat&&e.match(/^\.(?!\.)/),"number";if("?"==h&&(e.eatSpace()||e.eol()||e.eat(";")))return"macroName";if("'"==h||'"'==h&&o.doubleQuote)return l.tokenize=d(h),l.tokenize(e,l);if((o.nCharCast&&("n"==h||"N"==h)||o.charsetCast&&"_"==h&&e.match(/[a-z][a-z0-9]*/i))&&("'"==e.peek()||'"'==e.peek()))return"keyword";if(o.escapeConstant&&("e"==h||"E"==h)&&("'"==e.peek()||'"'==e.peek()&&o.doubleQuote))return l.tokenize=function(e,t){return(t.tokenize=d(e.next(),!0))(e,t)},"keyword";if(o.commentSlashSlash&&"/"==h&&e.eat("/"))return e.skipToEnd(),"comment";if(o.commentHash&&"#"==h||"-"==h&&e.eat("-")&&(!o.commentSpaceRequired||e.eat(" ")))return e.skipToEnd(),"comment";if("/"==h&&e.eat("*"))return l.tokenize=p(1),l.tokenize(e,l);if("."!=h){if(a.test(h))return e.eatWhile(a),"operator";if(c.test(h))return"bracket";if(u.test(h))return e.eatWhile(u),"punctuation";if("{"==h&&(e.match(/^( )*(d|D|t|T|ts|TS)( )*'[^']*'( )*}/)||e.match(/^( )*(d|D|t|T|ts|TS)( )*"[^"]*"( )*}/)))return"number";e.eatWhile(/^[_\w\d]/);var m=e.current().toLowerCase();return O.hasOwnProperty(m)&&(e.match(/^( )+'[^']*'/)||e.match(/^( )+"[^"]*"/))?"number":n.hasOwnProperty(m)?"atom":r.hasOwnProperty(m)?"builtin":i.hasOwnProperty(m)?"keyword":t.hasOwnProperty(m)?"string.special":null}return o.zerolessFloat&&e.match(/^(?:\d+(?:e[+-]?\d+)?)/i)?"number":e.match(/^\.+/)?null:o.ODBCdotTable&&e.match(/^[\w\d_$#]+/)?"type":void 0}function d(e,t){return function(n,r){for(var i,a=!1;null!=(i=n.next());){if(i==e&&!a){r.tokenize=h;break}a=(l||t)&&!a&&"\\"==i}return"string"}}function p(e){return function(t,n){var r=t.match(/^.*?(\/\*|\*\/)/);return r?"/*"==r[1]?n.tokenize=p(e+1):n.tokenize=e>1?p(e-1):h:t.skipToEnd(),"comment"}}function f(e,t,n){t.context={prev:t.context,indent:e.indentation(),col:e.column(),type:n}}return{startState:function(){return{tokenize:h,context:null}},token:function(e,t){if(e.sol()&&t.context&&null==t.context.align&&(t.context.align=!1),t.tokenize==h&&e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"==n)return n;t.context&&null==t.context.align&&(t.context.align=!0);var r=e.current();return"("==r?f(e,t,")"):"["==r?f(e,t,"]"):t.context&&t.context.type==r&&function(e){e.indent=e.context.indent,e.context=e.context.prev}(t),n},indent:function(e,t,n){var r=e.context;if(!r)return null;var i=t.charAt(0)==r.type;return r.align?r.col+(i?0:1):r.indent+(i?0:n.unit)},languageData:{commentTokens:{line:o.commentSlashSlash?"//":o.commentHash?"#":"--",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}}}function dw(e){for(var t;null!=(t=e.next());)if("`"==t&&!e.eat("`"))return"string.special";return e.backUp(e.current().length-1),e.eatWhile(/\w/)?"string.special":null}function pw(e){return e.eat("@")&&(e.match("session."),e.match("local."),e.match("global.")),e.eat("'")?(e.match(/^.*'/),"string.special"):e.eat('"')?(e.match(/^.*"/),"string.special"):e.eat("`")?(e.match(/^.*`/),"string.special"):e.match(/^[0-9a-zA-Z$\.\_]+/)?"string.special":null}function fw(e){return e.eat("N")?"atom":e.match(/^[a-zA-Z.#!?]/)?"string.special":null}var mw="alter and as asc between by count create delete desc distinct drop from group having in insert into is join like not on or order select set table union update values where limit ";function gw(e){for(var t={},n=e.split(" "),r=0;r!=^\&|\/]/,brackets:/^[\{}\(\)]/,punctuation:/^[;.,:/]/,backslashStringEscapes:!1,dateSQL:gw("date datetimeoffset datetime2 smalldatetime datetime time"),hooks:{"@":pw}}),xw=hw({client:gw("charset clear connect edit ego exit go help nopager notee nowarning pager print prompt quit rehash source status system tee"),keywords:gw(mw+"accessible action add after algorithm all analyze asensitive at authors auto_increment autocommit avg avg_row_length before binary binlog both btree cache call cascade cascaded case catalog_name chain change changed character check checkpoint checksum class_origin client_statistics close coalesce code collate collation collations column columns comment commit committed completion concurrent condition connection consistent constraint contains continue contributors convert cross current current_date current_time current_timestamp current_user cursor data database databases day_hour day_microsecond day_minute day_second deallocate dec declare default delay_key_write delayed delimiter des_key_file describe deterministic dev_pop dev_samp deviance diagnostics directory disable discard distinctrow div dual dumpfile each elseif enable enclosed end ends engine engines enum errors escape escaped even event events every execute exists exit explain extended fast fetch field fields first flush for force foreign found_rows full fulltext function general get global grant grants group group_concat handler hash help high_priority hosts hour_microsecond hour_minute hour_second if ignore ignore_server_ids import index index_statistics infile inner innodb inout insensitive insert_method install interval invoker isolation iterate key keys kill language last leading leave left level limit linear lines list load local localtime localtimestamp lock logs low_priority master master_heartbeat_period master_ssl_verify_server_cert masters match max max_rows maxvalue message_text middleint migrate min min_rows minute_microsecond minute_second mod mode modifies modify mutex mysql_errno natural next no no_write_to_binlog offline offset one online open optimize option optionally out outer outfile pack_keys parser partition partitions password phase plugin plugins prepare preserve prev primary privileges procedure processlist profile profiles purge query quick range read read_write reads real rebuild recover references regexp relaylog release remove rename reorganize repair repeatable replace require resignal restrict resume return returns revoke right rlike rollback rollup row row_format rtree savepoint schedule schema schema_name schemas second_microsecond security sensitive separator serializable server session share show signal slave slow smallint snapshot soname spatial specific sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_no_cache sql_small_result sqlexception sqlstate sqlwarning ssl start starting starts status std stddev stddev_pop stddev_samp storage straight_join subclass_origin sum suspend table_name table_statistics tables tablespace temporary terminated to trailing transaction trigger triggers truncate uncommitted undo uninstall unique unlock upgrade usage use use_frm user user_resources user_statistics using utc_date utc_time utc_timestamp value variables varying view views warnings when while with work write xa xor year_month zerofill begin do then else loop repeat"),builtin:gw("bool boolean bit blob decimal double float long longblob longtext medium mediumblob mediumint mediumtext time timestamp tinyblob tinyint tinytext text bigint int int1 int2 int3 int4 int8 integer float float4 float8 double char varbinary varchar varcharacter precision date datetime year unsigned signed numeric"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=&|^]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber doubleQuote nCharCast charsetCast commentHash commentSpaceRequired"),hooks:{"@":pw,"`":dw,"\\":fw}}),ww=hw({client:gw("charset clear connect edit ego exit go help nopager notee nowarning pager print prompt quit rehash source status system tee"),keywords:gw(mw+"accessible action add after algorithm all always analyze asensitive at authors auto_increment autocommit avg avg_row_length before binary binlog both btree cache call cascade cascaded case catalog_name chain change changed character check checkpoint checksum class_origin client_statistics close coalesce code collate collation collations column columns comment commit committed completion concurrent condition connection consistent constraint contains continue contributors convert cross current current_date current_time current_timestamp current_user cursor data database databases day_hour day_microsecond day_minute day_second deallocate dec declare default delay_key_write delayed delimiter des_key_file describe deterministic dev_pop dev_samp deviance diagnostics directory disable discard distinctrow div dual dumpfile each elseif enable enclosed end ends engine engines enum errors escape escaped even event events every execute exists exit explain extended fast fetch field fields first flush for force foreign found_rows full fulltext function general generated get global grant grants group groupby_concat handler hard hash help high_priority hosts hour_microsecond hour_minute hour_second if ignore ignore_server_ids import index index_statistics infile inner innodb inout insensitive insert_method install interval invoker isolation iterate key keys kill language last leading leave left level limit linear lines list load local localtime localtimestamp lock logs low_priority master master_heartbeat_period master_ssl_verify_server_cert masters match max max_rows maxvalue message_text middleint migrate min min_rows minute_microsecond minute_second mod mode modifies modify mutex mysql_errno natural next no no_write_to_binlog offline offset one online open optimize option optionally out outer outfile pack_keys parser partition partitions password persistent phase plugin plugins prepare preserve prev primary privileges procedure processlist profile profiles purge query quick range read read_write reads real rebuild recover references regexp relaylog release remove rename reorganize repair repeatable replace require resignal restrict resume return returns revoke right rlike rollback rollup row row_format rtree savepoint schedule schema schema_name schemas second_microsecond security sensitive separator serializable server session share show shutdown signal slave slow smallint snapshot soft soname spatial specific sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_no_cache sql_small_result sqlexception sqlstate sqlwarning ssl start starting starts status std stddev stddev_pop stddev_samp storage straight_join subclass_origin sum suspend table_name table_statistics tables tablespace temporary terminated to trailing transaction trigger triggers truncate uncommitted undo uninstall unique unlock upgrade usage use use_frm user user_resources user_statistics using utc_date utc_time utc_timestamp value variables varying view views virtual warnings when while with work write xa xor year_month zerofill begin do then else loop repeat"),builtin:gw("bool boolean bit blob decimal double float long longblob longtext medium mediumblob mediumint mediumtext time timestamp tinyblob tinyint tinytext text bigint int int1 int2 int3 int4 int8 integer float float4 float8 double char varbinary varchar varcharacter precision date datetime year unsigned signed numeric"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=&|^]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber doubleQuote nCharCast charsetCast commentHash commentSpaceRequired"),hooks:{"@":pw,"`":dw,"\\":fw}}),kw=hw({client:gw("auth backup bail binary changes check clone databases dbinfo dump echo eqp exit explain fullschema headers help import imposter indexes iotrace limit lint load log mode nullvalue once open output print prompt quit read restore save scanstats schema separator session shell show stats system tables testcase timeout timer trace vfsinfo vfslist vfsname width"),keywords:gw(mw+"abort action add after all analyze attach autoincrement before begin cascade case cast check collate column commit conflict constraint cross current_date current_time current_timestamp database default deferrable deferred detach each else end escape except exclusive exists explain fail for foreign full glob if ignore immediate index indexed initially inner instead intersect isnull key left limit match natural no notnull null of offset outer plan pragma primary query raise recursive references regexp reindex release rename replace restrict right rollback row savepoint temp temporary then to transaction trigger unique using vacuum view virtual when with without"),builtin:gw("bool boolean bit blob decimal double float long longblob longtext medium mediumblob mediumint mediumtext time timestamp tinyblob tinyint tinytext text clob bigint int int2 int8 integer float double char varchar date datetime year unsigned signed numeric real"),atoms:gw("null current_date current_time current_timestamp"),operatorChars:/^[*+\-%<>!=&|/~]/,dateSQL:gw("date time timestamp datetime"),support:gw("decimallessFloat zerolessFloat"),identifierQuote:'"',hooks:{"@":pw,":":pw,"?":pw,$:pw,'"':function(e){for(var t;null!=(t=e.next());)if('"'==t&&!e.eat('"'))return"string.special";return e.backUp(e.current().length-1),e.eatWhile(/\w/)?"string.special":null},"`":dw}}),yw=hw({client:{},keywords:gw("add all allow alter and any apply as asc authorize batch begin by clustering columnfamily compact consistency count create custom delete desc distinct drop each_quorum exists filtering from grant if in index insert into key keyspace keyspaces level limit local_one local_quorum modify nan norecursive nosuperuser not of on one order password permission permissions primary quorum rename revoke schema select set storage superuser table three to token truncate ttl two type unlogged update use user users using values where with writetime"),builtin:gw("ascii bigint blob boolean counter decimal double float frozen inet int list map static text timestamp timeuuid tuple uuid varchar varint"),atoms:gw("false true infinity NaN"),operatorChars:/^[<>=]/,dateSQL:{},support:gw("commentSlashSlash decimallessFloat"),hooks:{}}),Pw=hw({client:gw("appinfo arraysize autocommit autoprint autorecovery autotrace blockterminator break btitle cmdsep colsep compatibility compute concat copycommit copytypecheck define describe echo editfile embedded escape exec execute feedback flagger flush heading headsep instance linesize lno loboffset logsource long longchunksize markup native newpage numformat numwidth pagesize pause pno recsep recsepchar release repfooter repheader serveroutput shiftinout show showmode size spool sqlblanklines sqlcase sqlcode sqlcontinue sqlnumber sqlpluscompatibility sqlprefix sqlprompt sqlterminator suffix tab term termout time timing trimout trimspool ttitle underline verify version wrap"),keywords:gw("abort accept access add all alter and any array arraylen as asc assert assign at attributes audit authorization avg base_table begin between binary_integer body boolean by case cast char char_base check close cluster clusters colauth column comment commit compress connect connected constant constraint crash create current currval cursor data_base database date dba deallocate debugoff debugon decimal declare default definition delay delete desc digits dispose distinct do drop else elseif elsif enable end entry escape exception exception_init exchange exclusive exists exit external fast fetch file for force form from function generic goto grant group having identified if immediate in increment index indexes indicator initial initrans insert interface intersect into is key level library like limited local lock log logging long loop master maxextents maxtrans member minextents minus mislabel mode modify multiset new next no noaudit nocompress nologging noparallel not nowait number_base object of off offline on online only open option or order out package parallel partition pctfree pctincrease pctused pls_integer positive positiven pragma primary prior private privileges procedure public raise range raw read rebuild record ref references refresh release rename replace resource restrict return returning returns reverse revoke rollback row rowid rowlabel rownum rows run savepoint schema segment select separate session set share snapshot some space split sql start statement storage subtype successful synonym tabauth table tables tablespace task terminate then to trigger truncate type union unique unlimited unrecoverable unusable update use using validate value values variable view views when whenever where while with work"),builtin:gw("abs acos add_months ascii asin atan atan2 average bfile bfilename bigserial bit blob ceil character chartorowid chr clob concat convert cos cosh count dec decode deref dual dump dup_val_on_index empty error exp false float floor found glb greatest hextoraw initcap instr instrb int integer isopen last_day least length lengthb ln lower lpad ltrim lub make_ref max min mlslabel mod months_between natural naturaln nchar nclob new_time next_day nextval nls_charset_decl_len nls_charset_id nls_charset_name nls_initcap nls_lower nls_sort nls_upper nlssort no_data_found notfound null number numeric nvarchar2 nvl others power rawtohex real reftohex round rowcount rowidtochar rowtype rpad rtrim serial sign signtype sin sinh smallint soundex sqlcode sqlerrm sqrt stddev string substr substrb sum sysdate tan tanh to_char text to_date to_label to_multi_byte to_number to_single_byte translate true trunc uid unlogged upper user userenv varchar varchar2 variance varying vsize xml"),operatorChars:/^[*\/+\-%<>!=~]/,dateSQL:gw("date time timestamp"),support:gw("doubleQuote nCharCast zerolessFloat binaryNumber hexNumber")}),vw=hw({keywords:gw("select alter $elem$ $key$ $value$ add after all analyze and archive as asc before between binary both bucket buckets by cascade case cast change cluster clustered clusterstatus collection column columns comment compute concatenate continue create cross cursor data database databases dbproperties deferred delete delimited desc describe directory disable distinct distribute drop else enable end escaped exclusive exists explain export extended external fetch fields fileformat first format formatted from full function functions grant group having hold_ddltime idxproperties if import in index indexes inpath inputdriver inputformat insert intersect into is items join keys lateral left like limit lines load local location lock locks mapjoin materialized minus msck no_drop nocompress not of offline on option or order out outer outputdriver outputformat overwrite partition partitioned partitions percent plus preserve procedure purge range rcfile read readonly reads rebuild recordreader recordwriter recover reduce regexp rename repair replace restrict revoke right rlike row schema schemas semi sequencefile serde serdeproperties set shared show show_database sort sorted ssl statistics stored streamtable table tables tablesample tblproperties temporary terminated textfile then tmp to touch transform trigger unarchive undo union uniquejoin unlock update use using utc utc_tmestamp view when where while with admin authorization char compact compactions conf cube current current_date current_timestamp day decimal defined dependency directories elem_type exchange file following for grouping hour ignore inner interval jar less logical macro minute month more none noscan over owner partialscan preceding pretty principals protection reload rewrite role roles rollup rows second server sets skewed transactions truncate unbounded unset uri user values window year"),builtin:gw("bool boolean long timestamp tinyint smallint bigint int float double date datetime unsigned string array struct map uniontype key_type utctimestamp value_type varchar"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=]/,dateSQL:gw("date timestamp"),support:gw("ODBCdotTable doubleQuote binaryNumber hexNumber")}),Sw=hw({client:gw("source"),keywords:gw(mw+"a abort abs absent absolute access according action ada add admin after aggregate alias all allocate also alter always analyse analyze and any are array array_agg array_max_cardinality as asc asensitive assert assertion assignment asymmetric at atomic attach attribute attributes authorization avg backward base64 before begin begin_frame begin_partition bernoulli between bigint binary bit bit_length blob blocked bom boolean both breadth by c cache call called cardinality cascade cascaded case cast catalog catalog_name ceil ceiling chain char char_length character character_length character_set_catalog character_set_name character_set_schema characteristics characters check checkpoint class class_origin clob close cluster coalesce cobol collate collation collation_catalog collation_name collation_schema collect column column_name columns command_function command_function_code comment comments commit committed concurrently condition condition_number configuration conflict connect connection connection_name constant constraint constraint_catalog constraint_name constraint_schema constraints constructor contains content continue control conversion convert copy corr corresponding cost count covar_pop covar_samp create cross csv cube cume_dist current current_catalog current_date current_default_transform_group current_path current_role current_row current_schema current_time current_timestamp current_transform_group_for_type current_user cursor cursor_name cycle data database datalink datatype date datetime_interval_code datetime_interval_precision day db deallocate debug dec decimal declare default defaults deferrable deferred defined definer degree delete delimiter delimiters dense_rank depends depth deref derived desc describe descriptor detach detail deterministic diagnostics dictionary disable discard disconnect dispatch distinct dlnewcopy dlpreviouscopy dlurlcomplete dlurlcompleteonly dlurlcompletewrite dlurlpath dlurlpathonly dlurlpathwrite dlurlscheme dlurlserver dlvalue do document domain double drop dump dynamic dynamic_function dynamic_function_code each element else elseif elsif empty enable encoding encrypted end end_frame end_partition endexec enforced enum equals errcode error escape event every except exception exclude excluding exclusive exec execute exists exit exp explain expression extension external extract false family fetch file filter final first first_value flag float floor following for force foreach foreign fortran forward found frame_row free freeze from fs full function functions fusion g general generated get global go goto grant granted greatest group grouping groups handler having header hex hierarchy hint hold hour id identity if ignore ilike immediate immediately immutable implementation implicit import in include including increment indent index indexes indicator info inherit inherits initially inline inner inout input insensitive insert instance instantiable instead int integer integrity intersect intersection interval into invoker is isnull isolation join k key key_member key_type label lag language large last last_value lateral lead leading leakproof least left length level library like like_regex limit link listen ln load local localtime localtimestamp location locator lock locked log logged loop lower m map mapping match matched materialized max max_cardinality maxvalue member merge message message_length message_octet_length message_text method min minute minvalue mod mode modifies module month more move multiset mumps name names namespace national natural nchar nclob nesting new next nfc nfd nfkc nfkd nil no none normalize normalized not nothing notice notify notnull nowait nth_value ntile null nullable nullif nulls number numeric object occurrences_regex octet_length octets of off offset oids old on only open operator option options or order ordering ordinality others out outer output over overlaps overlay overriding owned owner p pad parallel parameter parameter_mode parameter_name parameter_ordinal_position parameter_specific_catalog parameter_specific_name parameter_specific_schema parser partial partition pascal passing passthrough password path percent percent_rank percentile_cont percentile_disc perform period permission pg_context pg_datatype_name pg_exception_context pg_exception_detail pg_exception_hint placing plans pli policy portion position position_regex power precedes preceding precision prepare prepared preserve primary print_strict_params prior privileges procedural procedure procedures program public publication query quote raise range rank read reads real reassign recheck recovery recursive ref references referencing refresh regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy regr_syy reindex relative release rename repeatable replace replica requiring reset respect restart restore restrict result result_oid return returned_cardinality returned_length returned_octet_length returned_sqlstate returning returns reverse revoke right role rollback rollup routine routine_catalog routine_name routine_schema routines row row_count row_number rows rowtype rule savepoint scale schema schema_name schemas scope scope_catalog scope_name scope_schema scroll search second section security select selective self sensitive sequence sequences serializable server server_name session session_user set setof sets share show similar simple size skip slice smallint snapshot some source space specific specific_name specifictype sql sqlcode sqlerror sqlexception sqlstate sqlwarning sqrt stable stacked standalone start state statement static statistics stddev_pop stddev_samp stdin stdout storage strict strip structure style subclass_origin submultiset subscription substring substring_regex succeeds sum symmetric sysid system system_time system_user t table table_name tables tablesample tablespace temp template temporary text then ties time timestamp timezone_hour timezone_minute to token top_level_count trailing transaction transaction_active transactions_committed transactions_rolled_back transform transforms translate translate_regex translation treat trigger trigger_catalog trigger_name trigger_schema trim trim_array true truncate trusted type types uescape unbounded uncommitted under unencrypted union unique unknown unlink unlisten unlogged unnamed unnest until untyped update upper uri usage use_column use_variable user user_defined_type_catalog user_defined_type_code user_defined_type_name user_defined_type_schema using vacuum valid validate validator value value_of values var_pop var_samp varbinary varchar variable_conflict variadic varying verbose version versioning view views volatile warning when whenever where while whitespace width_bucket window with within without work wrapper write xml xmlagg xmlattributes xmlbinary xmlcast xmlcomment xmlconcat xmldeclaration xmldocument xmlelement xmlexists xmlforest xmliterate xmlnamespaces xmlparse xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltext xmlvalidate year yes zone"),builtin:gw("bigint int8 bigserial serial8 bit varying varbit boolean bool box bytea character char varchar cidr circle date double precision float8 inet integer int int4 interval json jsonb line lseg macaddr macaddr8 money numeric decimal path pg_lsn point polygon real float4 smallint int2 smallserial serial2 serial serial4 text time without zone with timetz timestamp timestamptz tsquery tsvector txid_snapshot uuid xml"),atoms:gw("false true null unknown"),operatorChars:/^[*\/+\-%<>!=&|^\/#@?~]/,backslashStringEscapes:!1,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber nCharCast charsetCast escapeConstant")}),_w=hw({keywords:gw("ancestor and asc by contains desc descendant distinct from group has in is limit offset on order select superset where"),atoms:gw("false true"),builtin:gw("blob datetime first key __key__ string integer double boolean null"),operatorChars:/^[*+\-%<>!=]/}),Xw=hw({client:gw("source"),keywords:gw("abort absolute access action active add admin after aggregate all also alter always analyse analyze and any array as asc assertion assignment asymmetric at authorization backward before begin between bigint binary bit boolean both by cache called cascade cascaded case cast chain char character characteristics check checkpoint class close cluster coalesce codegen collate column comment commit committed concurrency concurrently configuration connection constraint constraints contains content continue conversion copy cost cpu_rate_limit create createdb createexttable createrole createuser cross csv cube current current_catalog current_date current_role current_schema current_time current_timestamp current_user cursor cycle data database day deallocate dec decimal declare decode default defaults deferrable deferred definer delete delimiter delimiters deny desc dictionary disable discard distinct distributed do document domain double drop dxl each else enable encoding encrypted end enum errors escape every except exchange exclude excluding exclusive execute exists explain extension external extract false family fetch fields filespace fill filter first float following for force foreign format forward freeze from full function global grant granted greatest group group_id grouping handler hash having header hold host hour identity if ignore ilike immediate immutable implicit in including inclusive increment index indexes inherit inherits initially inline inner inout input insensitive insert instead int integer intersect interval into invoker is isnull isolation join key language large last leading least left level like limit list listen load local localtime localtimestamp location lock log login mapping master match maxvalue median merge minute minvalue missing mode modifies modify month move name names national natural nchar new newline next no nocreatedb nocreateexttable nocreaterole nocreateuser noinherit nologin none noovercommit nosuperuser not nothing notify notnull nowait null nullif nulls numeric object of off offset oids old on only operator option options or order ordered others out outer over overcommit overlaps overlay owned owner parser partial partition partitions passing password percent percentile_cont percentile_disc placing plans position preceding precision prepare prepared preserve primary prior privileges procedural procedure protocol queue quote randomly range read readable reads real reassign recheck recursive ref references reindex reject relative release rename repeatable replace replica reset resource restart restrict returning returns revoke right role rollback rollup rootpartition row rows rule savepoint scatter schema scroll search second security segment select sequence serializable session session_user set setof sets share show similar simple smallint some split sql stable standalone start statement statistics stdin stdout storage strict strip subpartition subpartitions substring superuser symmetric sysid system table tablespace temp template temporary text then threshold ties time timestamp to trailing transaction treat trigger trim true truncate trusted type unbounded uncommitted unencrypted union unique unknown unlisten until update user using vacuum valid validation validator value values varchar variadic varying verbose version view volatile web when where whitespace window with within without work writable write xml xmlattributes xmlconcat xmlelement xmlexists xmlforest xmlparse xmlpi xmlroot xmlserialize year yes zone"),builtin:gw("bigint int8 bigserial serial8 bit varying varbit boolean bool box bytea character char varchar cidr circle date double precision float float8 inet integer int int4 interval json jsonb line lseg macaddr macaddr8 money numeric decimal path pg_lsn point polygon real float4 smallint int2 smallserial serial2 serial serial4 text time without zone with timetz timestamp timestamptz tsquery tsvector txid_snapshot uuid xml"),atoms:gw("false true null unknown"),operatorChars:/^[*+\-%<>!=&|^\/#@?~]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable decimallessFloat zerolessFloat binaryNumber hexNumber nCharCast charsetCast")}),Tw=hw({keywords:gw("add after all alter analyze and anti archive array as asc at between bucket buckets by cache cascade case cast change clear cluster clustered codegen collection column columns comment commit compact compactions compute concatenate cost create cross cube current current_date current_timestamp database databases data dbproperties defined delete delimited deny desc describe dfs directories distinct distribute drop else end escaped except exchange exists explain export extended external false fields fileformat first following for format formatted from full function functions global grant group grouping having if ignore import in index indexes inner inpath inputformat insert intersect interval into is items join keys last lateral lazy left like limit lines list load local location lock locks logical macro map minus msck natural no not null nulls of on optimize option options or order out outer outputformat over overwrite partition partitioned partitions percent preceding principals purge range recordreader recordwriter recover reduce refresh regexp rename repair replace reset restrict revoke right rlike role roles rollback rollup row rows schema schemas select semi separated serde serdeproperties set sets show skewed sort sorted start statistics stored stratify struct table tables tablesample tblproperties temp temporary terminated then to touch transaction transactions transform true truncate unarchive unbounded uncache union unlock unset use using values view when where window with"),builtin:gw("tinyint smallint int bigint boolean float double string binary timestamp decimal array map struct uniontype delimited serde sequencefile textfile rcfile inputformat outputformat"),atoms:gw("false true null"),operatorChars:/^[*\/+\-%<>!=~&|^]/,dateSQL:gw("date time timestamp"),support:gw("ODBCdotTable doubleQuote zerolessFloat")}),Rw=hw({client:gw("source"),keywords:gw("alter and as asc between by count create delete desc distinct drop from group having in insert into is join like not on or order select set table union update values where limit after all and as at asc avedev avg between by case cast coalesce count create current_timestamp day days delete define desc distinct else end escape events every exists false first from full group having hour hours in inner insert instanceof into irstream is istream join last lastweekday left limit like max match_recognize matches median measures metadatasql min minute minutes msec millisecond milliseconds not null offset on or order outer output partition pattern prev prior regexp retain-union retain-intersection right rstream sec second seconds select set some snapshot sql stddev sum then true unidirectional until update variable weekday when where window"),builtin:{},atoms:gw("false true null"),operatorChars:/^[*+\-%<>!=&|^\/#@?~]/,dateSQL:gw("time"),support:gw("decimallessFloat zerolessFloat binaryNumber hexNumber")});var Ww=Object.freeze({__proto__:null,sql:hw,standardSQL:$w,msSQL:bw,mySQL:xw,mariaDB:ww,sqlite:kw,cassandra:yw,plSQL:Pw,hive:vw,pgSQL:Sw,gql:_w,gpSQL:Xw,sparkSQL:Tw,esper:Rw});const qw=rb({start:[{regex:/#?!.*/,token:"comment"},{regex:/"""/,token:"string",next:"string3"},{regex:/(STRING:)(\s)/,token:["keyword",null],next:"string2"},{regex:/\S*?"/,token:"string",next:"string"},{regex:/(?:0x[\d,a-f]+)|(?:0o[0-7]+)|(?:0b[0,1]+)|(?:\-?\d+.?\d*)(?=\s)/,token:"number"},{regex:/((?:GENERIC)|\:?\:)(\s+)(\S+)(\s+)(\()/,token:["keyword",null,"def",null,"bracket"],next:"stack"},{regex:/(M\:)(\s+)(\S+)(\s+)(\S+)/,token:["keyword",null,"def",null,"tag"]},{regex:/USING\:/,token:"keyword",next:"vocabulary"},{regex:/(USE\:|IN\:)(\s+)(\S+)(?=\s|$)/,token:["keyword",null,"tag"]},{regex:/(\S+\:)(\s+)(\S+)(?=\s|$)/,token:["keyword",null,"def"]},{regex:/(?:;|\\|t|f|if|loop|while|until|do|PRIVATE>|\.\*\?]+(?=\s|$)/,token:"builtin"},{regex:/[\)><]+\S+(?=\s|$)/,token:"builtin"},{regex:/(?:[\+\-\=\/\*<>])(?=\s|$)/,token:"keyword"},{regex:/\S+/,token:"variable"},{regex:/\s+|./,token:null}],vocabulary:[{regex:/;/,token:"keyword",next:"start"},{regex:/\S+/,token:"tag"},{regex:/\s+|./,token:null}],string:[{regex:/(?:[^\\]|\\.)*?"/,token:"string",next:"start"},{regex:/.*/,token:"string"}],string2:[{regex:/^;/,token:"keyword",next:"start"},{regex:/.*/,token:"string"}],string3:[{regex:/(?:[^\\]|\\.)*?"""/,token:"string",next:"start"},{regex:/.*/,token:"string"}],stack:[{regex:/\)/,token:"bracket",next:"start"},{regex:/--/,token:"bracket"},{regex:/\S+/,token:"meta"},{regex:/\s+|./,token:null}],languageData:{dontIndentStates:["start","vocabulary","string","string3","stack"],commentTokens:{line:"!"}}});var zw=Object.freeze({__proto__:null,factor:qw}),Yw={term:!0,method:!0,accu:!0,rule:!0,then:!0,is:!0,and:!0,or:!0,if:!0,default:!0},Zw={var_input:!0,var_output:!0,fuzzify:!0,defuzzify:!0,function_block:!0,ruleblock:!0},Uw={end_ruleblock:!0,end_defuzzify:!0,end_function_block:!0,end_fuzzify:!0,end_var:!0},Ew={true:!0,false:!0,nan:!0,real:!0,min:!0,max:!0,cog:!0,cogs:!0},Iw=/[+\-*&^%:=<>!|\/]/;function Vw(e,t){var n=e.next();if(/[\d\.]/.test(n))return"."==n?e.match(/^[0-9]+([eE][\-+]?[0-9]+)?/):"0"==n?e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^0[0-7]+/):e.match(/^[0-9]*\.?[0-9]*([eE][\-+]?[0-9]+)?/),"number";if("/"==n||"("==n){if(e.eat("*"))return t.tokenize=Cw,Cw(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(Iw.test(n))return e.eatWhile(Iw),"operator";e.eatWhile(/[\w\$_\xa1-\uffff]/);var r=e.current().toLowerCase();return Yw.propertyIsEnumerable(r)||Zw.propertyIsEnumerable(r)||Uw.propertyIsEnumerable(r)?"keyword":Ew.propertyIsEnumerable(r)?"atom":"variable"}function Cw(e,t){for(var n,r=!1;n=e.next();){if(("/"==n||")"==n)&&r){t.tokenize=Vw;break}r="*"==n}return"comment"}function Aw(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}const Gw={startState:function(e){return{tokenize:null,context:new Aw(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;var r=(t.tokenize||Vw)(e,t);if("comment"==r)return r;null==n.align&&(n.align=!0);var i=e.current().toLowerCase();return Zw.propertyIsEnumerable(i)?function(e,t,n){e.context=new Aw(e.indented,t,n,null,e.context)}(t,e.column(),"end_block"):Uw.propertyIsEnumerable(i)&&function(e){if(e.context.prev)"end_block"==e.context.type&&(e.indented=e.context.indented),e.context=e.context.prev}(t),t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=Vw&&null!=e.tokenize)return 0;var r=e.context,i=Uw.propertyIsEnumerable(t);return r.align?r.column+(i?0:1):r.indented+(i?0:n.unit)},languageData:{commentTokens:{line:"//",block:{open:"(*",close:"*)"}}}};var jw=Object.freeze({__proto__:null,fcl:Gw});function Lw(e){var t=[];return e.split(" ").forEach((function(e){t.push({name:e})})),t}var Nw=Lw("INVERT AND OR XOR 2* 2/ LSHIFT RSHIFT 0= = 0< < > U< MIN MAX 2DROP 2DUP 2OVER 2SWAP ?DUP DEPTH DROP DUP OVER ROT SWAP >R R> R@ + - 1+ 1- ABS NEGATE S>D * M* UM* FM/MOD SM/REM UM/MOD */ */MOD / /MOD MOD HERE , @ ! CELL+ CELLS C, C@ C! CHARS 2@ 2! ALIGN ALIGNED +! ALLOT CHAR [CHAR] [ ] BL FIND EXECUTE IMMEDIATE COUNT LITERAL STATE ; DOES> >BODY EVALUATE SOURCE >IN <# # #S #> HOLD SIGN BASE >NUMBER HEX DECIMAL FILL MOVE . CR EMIT SPACE SPACES TYPE U. .R U.R ACCEPT TRUE FALSE <> U> 0<> 0> NIP TUCK ROLL PICK 2>R 2R@ 2R> WITHIN UNUSED MARKER I J TO COMPILE, [COMPILE] SAVE-INPUT RESTORE-INPUT PAD ERASE 2LITERAL DNEGATE D- D+ D0< D0= D2* D2/ D< D= DMAX DMIN D>S DABS M+ M*/ D. D.R 2ROT DU< CATCH THROW FREE RESIZE ALLOCATE CS-PICK CS-ROLL GET-CURRENT SET-CURRENT FORTH-WORDLIST GET-ORDER SET-ORDER PREVIOUS SEARCH-WORDLIST WORDLIST FIND ALSO ONLY FORTH DEFINITIONS ORDER -TRAILING /STRING SEARCH COMPARE CMOVE CMOVE> BLANK SLITERAL"),Dw=Lw("IF ELSE THEN BEGIN WHILE REPEAT UNTIL RECURSE [IF] [ELSE] [THEN] ?DO DO LOOP +LOOP UNLOOP LEAVE EXIT AGAIN CASE OF ENDOF ENDCASE");function Mw(e,t){var n;for(n=e.length-1;n>=0;n--)if(e[n].name===t.toUpperCase())return e[n]}const Fw={startState:function(){return{state:"",base:10,coreWordList:Nw,immediateWordList:Dw,wordList:[]}},token:function(e,t){var n;if(e.eatSpace())return null;if(""===t.state){if(e.match(/^(\]|:NONAME)(\s|$)/i))return t.state=" compilation","builtin";if(n=e.match(/^(\:)\s+(\S+)(\s|$)+/))return t.wordList.push({name:n[2].toUpperCase()}),t.state=" compilation","def";if(n=e.match(/^(VARIABLE|2VARIABLE|CONSTANT|2CONSTANT|CREATE|POSTPONE|VALUE|WORD)\s+(\S+)(\s|$)+/i))return t.wordList.push({name:n[2].toUpperCase()}),"def";if(n=e.match(/^(\'|\[\'\])\s+(\S+)(\s|$)+/))return"builtin"}else{if(e.match(/^(\;|\[)(\s)/))return t.state="",e.backUp(1),"builtin";if(e.match(/^(\;|\[)($)/))return t.state="","builtin";if(e.match(/^(POSTPONE)\s+\S+(\s|$)+/))return"builtin"}return(n=e.match(/^(\S+)(\s+|$)/))?void 0!==Mw(t.wordList,n[1])?"variable":"\\"===n[1]?(e.skipToEnd(),"comment"):void 0!==Mw(t.coreWordList,n[1])?"builtin":void 0!==Mw(t.immediateWordList,n[1])?"keyword":"("===n[1]?(e.eatWhile((function(e){return")"!==e})),e.eat(")"),"comment"):".("===n[1]?(e.eatWhile((function(e){return")"!==e})),e.eat(")"),"string"):'S"'===n[1]||'."'===n[1]||'C"'===n[1]?(e.eatWhile((function(e){return'"'!==e})),e.eat('"'),"string"):n[1]-68719476735?"number":"atom":void 0}};var Bw=Object.freeze({__proto__:null,forth:Fw});function Hw(e){for(var t={},n=0;n\/\:]/,nk=new RegExp("(.and.|.or.|.eq.|.lt.|.le.|.gt.|.ge.|.ne.|.not.|.eqv.|.neqv.)","i");function rk(e,t){if(e.match(nk))return"operator";var n=e.next();if("!"==n)return e.skipToEnd(),"comment";if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if(/[\[\]\(\),]/.test(n))return null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if(tk.test(n))return e.eatWhile(tk),"operator";e.eatWhile(/[\w\$_]/);var r=e.current().toLowerCase();return Kw.hasOwnProperty(r)?"keyword":Jw.hasOwnProperty(r)||ek.hasOwnProperty(r)?"builtin":"variable"}const ik={startState:function(){return{tokenize:null}},token:function(e,t){if(e.eatSpace())return null;var n=(t.tokenize||rk)(e,t);return n}};var ak=Object.freeze({__proto__:null,fortran:ik});function ok(e){var t={as:"keyword",do:"keyword",else:"keyword",end:"keyword",exception:"keyword",fun:"keyword",functor:"keyword",if:"keyword",in:"keyword",include:"keyword",let:"keyword",of:"keyword",open:"keyword",rec:"keyword",struct:"keyword",then:"keyword",type:"keyword",val:"keyword",while:"keyword",with:"keyword"},n=e.extraWords||{};for(var r in n)n.hasOwnProperty(r)&&(t[r]=e.extraWords[r]);var i=[];for(var a in t)i.push(a);function o(n,r){var i=n.next();if('"'===i)return r.tokenize=s,r.tokenize(n,r);if("{"===i&&n.eat("|"))return r.longString=!0,r.tokenize=l,r.tokenize(n,r);if("("===i&&n.eat("*"))return r.commentLevel++,r.tokenize=O,r.tokenize(n,r);if("~"===i||"?"===i)return n.eatWhile(/\w/),"variableName.special";if("`"===i)return n.eatWhile(/\w/),"quote";if("/"===i&&e.slashComments&&n.eat("/"))return n.skipToEnd(),"comment";if(/\d/.test(i))return"0"===i&&n.eat(/[bB]/)&&n.eatWhile(/[01]/),"0"===i&&n.eat(/[xX]/)&&n.eatWhile(/[0-9a-fA-F]/),"0"===i&&n.eat(/[oO]/)?n.eatWhile(/[0-7]/):(n.eatWhile(/[\d_]/),n.eat(".")&&n.eatWhile(/[\d]/),n.eat(/[eE]/)&&n.eatWhile(/[\d\-+]/)),"number";if(/[+\-*&%=<>!?|@\.~:]/.test(i))return"operator";if(/[\w\xa1-\uffff]/.test(i)){n.eatWhile(/[\w\xa1-\uffff]/);var a=n.current();return t.hasOwnProperty(a)?t[a]:"variable"}return null}function s(e,t){for(var n,r=!1,i=!1;null!=(n=e.next());){if('"'===n&&!i){r=!0;break}i=!i&&"\\"===n}return r&&!i&&(t.tokenize=o),"string"}function O(e,t){for(var n,r;t.commentLevel>0&&null!=(r=e.next());)"("===n&&"*"===r&&t.commentLevel++,"*"===n&&")"===r&&t.commentLevel--,n=r;return t.commentLevel<=0&&(t.tokenize=o),"comment"}function l(e,t){for(var n,r;t.longString&&null!=(r=e.next());)"|"===n&&"}"===r&&(t.longString=!1),n=r;return t.longString||(t.tokenize=o),"string"}return{startState:function(){return{tokenize:o,commentLevel:0,longString:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{autocomplete:i,commentTokens:{line:e.slashComments?"//":void 0,block:{open:"(*",close:"*)"}}}}}const sk=ok({extraWords:{and:"keyword",assert:"keyword",begin:"keyword",class:"keyword",constraint:"keyword",done:"keyword",downto:"keyword",external:"keyword",function:"keyword",initializer:"keyword",lazy:"keyword",match:"keyword",method:"keyword",module:"keyword",mutable:"keyword",new:"keyword",nonrec:"keyword",object:"keyword",private:"keyword",sig:"keyword",to:"keyword",try:"keyword",value:"keyword",virtual:"keyword",when:"keyword",raise:"builtin",failwith:"builtin",true:"builtin",false:"builtin",asr:"builtin",land:"builtin",lor:"builtin",lsl:"builtin",lsr:"builtin",lxor:"builtin",mod:"builtin",or:"builtin",raise_notrace:"builtin",trace:"builtin",exit:"builtin",print_string:"builtin",print_endline:"builtin",int:"type",float:"type",bool:"type",char:"type",string:"type",unit:"type",List:"builtin"}}),Ok=ok({extraWords:{abstract:"keyword",assert:"keyword",base:"keyword",begin:"keyword",class:"keyword",default:"keyword",delegate:"keyword","do!":"keyword",done:"keyword",downcast:"keyword",downto:"keyword",elif:"keyword",extern:"keyword",finally:"keyword",for:"keyword",function:"keyword",global:"keyword",inherit:"keyword",inline:"keyword",interface:"keyword",internal:"keyword",lazy:"keyword","let!":"keyword",match:"keyword",member:"keyword",module:"keyword",mutable:"keyword",namespace:"keyword",new:"keyword",null:"keyword",override:"keyword",private:"keyword",public:"keyword","return!":"keyword",return:"keyword",select:"keyword",static:"keyword",to:"keyword",try:"keyword",upcast:"keyword","use!":"keyword",use:"keyword",void:"keyword",when:"keyword","yield!":"keyword",yield:"keyword",atomic:"keyword",break:"keyword",checked:"keyword",component:"keyword",const:"keyword",constraint:"keyword",constructor:"keyword",continue:"keyword",eager:"keyword",event:"keyword",external:"keyword",fixed:"keyword",method:"keyword",mixin:"keyword",object:"keyword",parallel:"keyword",process:"keyword",protected:"keyword",pure:"keyword",sealed:"keyword",tailcall:"keyword",trait:"keyword",virtual:"keyword",volatile:"keyword",List:"builtin",Seq:"builtin",Map:"builtin",Set:"builtin",Option:"builtin",int:"builtin",string:"builtin",not:"builtin",true:"builtin",false:"builtin",raise:"builtin",failwith:"builtin"},slashComments:!0}),lk=ok({extraWords:{abstype:"keyword",and:"keyword",andalso:"keyword",case:"keyword",datatype:"keyword",fn:"keyword",handle:"keyword",infix:"keyword",infixr:"keyword",local:"keyword",nonfix:"keyword",op:"keyword",orelse:"keyword",raise:"keyword",withtype:"keyword",eqtype:"keyword",sharing:"keyword",sig:"keyword",signature:"keyword",structure:"keyword",where:"keyword",true:"keyword",false:"keyword",int:"builtin",real:"builtin",string:"builtin",char:"builtin",bool:"builtin"},slashComments:!0});var ck=Object.freeze({__proto__:null,oCaml:sk,fSharp:Ok,sml:lk});function uk(e){var t=[],n="",r={".abort":"builtin",".align":"builtin",".altmacro":"builtin",".ascii":"builtin",".asciz":"builtin",".balign":"builtin",".balignw":"builtin",".balignl":"builtin",".bundle_align_mode":"builtin",".bundle_lock":"builtin",".bundle_unlock":"builtin",".byte":"builtin",".cfi_startproc":"builtin",".comm":"builtin",".data":"builtin",".def":"builtin",".desc":"builtin",".dim":"builtin",".double":"builtin",".eject":"builtin",".else":"builtin",".elseif":"builtin",".end":"builtin",".endef":"builtin",".endfunc":"builtin",".endif":"builtin",".equ":"builtin",".equiv":"builtin",".eqv":"builtin",".err":"builtin",".error":"builtin",".exitm":"builtin",".extern":"builtin",".fail":"builtin",".file":"builtin",".fill":"builtin",".float":"builtin",".func":"builtin",".global":"builtin",".gnu_attribute":"builtin",".hidden":"builtin",".hword":"builtin",".ident":"builtin",".if":"builtin",".incbin":"builtin",".include":"builtin",".int":"builtin",".internal":"builtin",".irp":"builtin",".irpc":"builtin",".lcomm":"builtin",".lflags":"builtin",".line":"builtin",".linkonce":"builtin",".list":"builtin",".ln":"builtin",".loc":"builtin",".loc_mark_labels":"builtin",".local":"builtin",".long":"builtin",".macro":"builtin",".mri":"builtin",".noaltmacro":"builtin",".nolist":"builtin",".octa":"builtin",".offset":"builtin",".org":"builtin",".p2align":"builtin",".popsection":"builtin",".previous":"builtin",".print":"builtin",".protected":"builtin",".psize":"builtin",".purgem":"builtin",".pushsection":"builtin",".quad":"builtin",".reloc":"builtin",".rept":"builtin",".sbttl":"builtin",".scl":"builtin",".section":"builtin",".set":"builtin",".short":"builtin",".single":"builtin",".size":"builtin",".skip":"builtin",".sleb128":"builtin",".space":"builtin",".stab":"builtin",".string":"builtin",".struct":"builtin",".subsection":"builtin",".symver":"builtin",".tag":"builtin",".text":"builtin",".title":"builtin",".type":"builtin",".uleb128":"builtin",".val":"builtin",".version":"builtin",".vtable_entry":"builtin",".vtable_inherit":"builtin",".warning":"builtin",".weak":"builtin",".weakref":"builtin",".word":"builtin"},i={};function a(e,t){for(var n,r=!1;null!=(n=e.next());){if("/"===n&&r){t.tokenize=null;break}r="*"===n}return"comment"}return"x86"===e?(n="#",i.ax="variable",i.eax="variableName.special",i.rax="variableName.special",i.bx="variable",i.ebx="variableName.special",i.rbx="variableName.special",i.cx="variable",i.ecx="variableName.special",i.rcx="variableName.special",i.dx="variable",i.edx="variableName.special",i.rdx="variableName.special",i.si="variable",i.esi="variableName.special",i.rsi="variableName.special",i.di="variable",i.edi="variableName.special",i.rdi="variableName.special",i.sp="variable",i.esp="variableName.special",i.rsp="variableName.special",i.bp="variable",i.ebp="variableName.special",i.rbp="variableName.special",i.ip="variable",i.eip="variableName.special",i.rip="variableName.special",i.cs="keyword",i.ds="keyword",i.ss="keyword",i.es="keyword",i.fs="keyword",i.gs="keyword"):"arm"!==e&&"armv6"!==e||(n="@",r.syntax="builtin",i.r0="variable",i.r1="variable",i.r2="variable",i.r3="variable",i.r4="variable",i.r5="variable",i.r6="variable",i.r7="variable",i.r8="variable",i.r9="variable",i.r10="variable",i.r11="variable",i.r12="variable",i.sp="variableName.special",i.lr="variableName.special",i.pc="variableName.special",i.r13=i.sp,i.r14=i.lr,i.r15=i.pc,t.push((function(e,t){if("#"===e)return t.eatWhile(/\w/),"number"}))),{startState:function(){return{tokenize:null}},token:function(e,o){if(o.tokenize)return o.tokenize(e,o);if(e.eatSpace())return null;var s,O,l=e.next();if("/"===l&&e.eat("*"))return o.tokenize=a,a(e,o);if(l===n)return e.skipToEnd(),"comment";if('"'===l)return function(e,t){for(var n,r=!1;null!=(n=e.next());){if(n===t&&!r)return!1;r=!r&&"\\"===n}}(e,'"'),"string";if("."===l)return e.eatWhile(/\w/),O=e.current().toLowerCase(),(s=r[O])||null;if("="===l)return e.eatWhile(/\w/),"tag";if("{"===l)return"bracket";if("}"===l)return"bracket";if(/\d/.test(l))return"0"===l&&e.eat("x")?(e.eatWhile(/[0-9a-fA-F]/),"number"):(e.eatWhile(/\d/),"number");if(/\w/.test(l))return e.eatWhile(/\w/),e.eat(":")?"tag":(O=e.current().toLowerCase(),(s=i[O])||null);for(var c=0;c]*>?/)?"variable":(e.next(),e.eatWhile(/[^@"<#]/),null)}}}),gk={break:!0,case:!0,chan:!0,const:!0,continue:!0,default:!0,defer:!0,else:!0,fallthrough:!0,for:!0,func:!0,go:!0,goto:!0,if:!0,import:!0,interface:!0,map:!0,package:!0,range:!0,return:!0,select:!0,struct:!0,switch:!0,type:!0,var:!0,bool:!0,byte:!0,complex64:!0,complex128:!0,float32:!0,float64:!0,int8:!0,int16:!0,int32:!0,int64:!0,string:!0,uint8:!0,uint16:!0,uint32:!0,uint64:!0,int:!0,uint:!0,uintptr:!0,error:!0,rune:!0},Qk={true:!0,false:!0,iota:!0,nil:!0,append:!0,cap:!0,close:!0,complex:!0,copy:!0,delete:!0,imag:!0,len:!0,make:!0,new:!0,panic:!0,print:!0,println:!0,real:!0,recover:!0},$k=/[+\-*&^%:=<>!|\/]/;function bk(e,t){var n=e.next();if('"'==n||"'"==n||"`"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"`"!=e&&"\\"==r}return(a||!i&&"`"!=e)&&(n.tokenize=bk),"string"}}(n),t.tokenize(e,t);if(/[\d\.]/.test(n))return"."==n?e.match(/^[0-9]+([eE][\-+]?[0-9]+)?/):"0"==n?e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^0[0-7]+/):e.match(/^[0-9]*\.?[0-9]*([eE][\-+]?[0-9]+)?/),"number";if(/[\[\]{}\(\),;\:\.]/.test(n))return fk=n,null;if("/"==n){if(e.eat("*"))return t.tokenize=xk,xk(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if($k.test(n))return e.eatWhile($k),"operator";e.eatWhile(/[\w\$_\xa1-\uffff]/);var r=e.current();return gk.propertyIsEnumerable(r)?("case"!=r&&"default"!=r||(fk="case"),"keyword"):Qk.propertyIsEnumerable(r)?"atom":"variable"}function xk(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=bk;break}r="*"==n}return"comment"}function wk(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function kk(e,t,n){return e.context=new wk(e.indented,t,n,null,e.context)}function yk(e){if(e.context.prev){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}}const Pk={startState:function(e){return{tokenize:null,context:new wk(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0,"case"==n.type&&(n.type="}")),e.eatSpace())return null;fk=null;var r=(t.tokenize||bk)(e,t);return"comment"==r||(null==n.align&&(n.align=!0),"{"==fk?kk(t,e.column(),"}"):"["==fk?kk(t,e.column(),"]"):"("==fk?kk(t,e.column(),")"):"case"==fk?n.type="case":("}"==fk&&"}"==n.type||fk==n.type)&&yk(t),t.startOfLine=!1),r},indent:function(e,t,n){if(e.tokenize!=bk&&null!=e.tokenize)return null;var r=e.context,i=t&&t.charAt(0);if("case"==r.type&&/^(?:case|default)\b/.test(t))return e.context.type="}",r.indented;var a=i==r.type;return r.align?r.column+(a?0:1):r.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s([{}]|case |default\s*:)$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var vk=Object.freeze({__proto__:null,go:Pk});function Sk(e){for(var t={},n=e.split(" "),r=0;r"))return _k="->",null;if(/[+\-*&%=<>!?|\/~]/.test(n))return e.eatWhile(/[+\-*&%=<>|~]/),"operator";if(e.eatWhile(/[\w\$_]/),"@"==n)return e.eatWhile(/[\w\$_\.]/),"meta";if("."==t.lastToken)return"property";if(e.eat(":"))return _k="proplabel","property";var r=e.current();return Wk.propertyIsEnumerable(r)?"atom":Xk.propertyIsEnumerable(r)?(Tk.propertyIsEnumerable(r)?_k="newstatement":Rk.propertyIsEnumerable(r)&&(_k="standalone"),"keyword"):"variable"}function zk(e,t,n){var r=!1;if("/"!=e&&t.eat(e)){if(!t.eat(e))return"string";r=!0}function i(t,n){for(var i,a=!1,o=!r;null!=(i=t.next());){if(i==e&&!a){if(!r)break;if(t.match(e+e)){o=!0;break}}if('"'==e&&"$"==i&&!a&&t.eat("{"))return n.tokenize.push(Yk()),"string";a=!a&&"\\"==i}return o&&n.tokenize.pop(),"string"}return n.tokenize.push(i),i(t,n)}function Yk(){var e=1;function t(t,n){if("}"==t.peek()){if(0==--e)return n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n)}else"{"==t.peek()&&e++;return qk(t,n)}return t.isBase=!0,t}function Zk(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize.pop();break}r="*"==n}return"comment"}function Uk(e,t){return!e||"operator"==e||"->"==e||/[\.\[\{\(,;:]/.test(e)||"newstatement"==e||"keyword"==e||"proplabel"==e||"standalone"==e&&!t}function Ek(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function Ik(e,t,n){return e.context=new Ek(e.indented,t,n,null,e.context)}function Vk(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}qk.isBase=!0;const Ck={startState:function(e){return{tokenize:[qk],context:new Ek(-e,0,"top",!1),indented:0,startOfLine:!0,lastToken:null}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0,"statement"!=n.type||Uk(t.lastToken,!0)||(Vk(t),n=t.context)),e.eatSpace())return null;_k=null;var r=t.tokenize[t.tokenize.length-1](e,t);if("comment"==r)return r;if(null==n.align&&(n.align=!0),";"!=_k&&":"!=_k||"statement"!=n.type)if("->"==_k&&"statement"==n.type&&"}"==n.prev.type)Vk(t),t.context.align=!1;else if("{"==_k)Ik(t,e.column(),"}");else if("["==_k)Ik(t,e.column(),"]");else if("("==_k)Ik(t,e.column(),")");else if("}"==_k){for(;"statement"==n.type;)n=Vk(t);for("}"==n.type&&(n=Vk(t));"statement"==n.type;)n=Vk(t)}else _k==n.type?Vk(t):("}"==n.type||"top"==n.type||"statement"==n.type&&"newstatement"==_k)&&Ik(t,e.column(),"statement");else Vk(t);return t.startOfLine=!1,t.lastToken=_k||r,r},indent:function(e,t,n){if(!e.tokenize[e.tokenize.length-1].isBase)return null;var r=t&&t.charAt(0),i=e.context;"statement"!=i.type||Uk(e.lastToken,!0)||(i=i.prev);var a=r==i.type;return"statement"==i.type?i.indented+("{"==r?0:n.unit):i.align?i.column+(a?0:1):i.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""']}}};var Ak=Object.freeze({__proto__:null,groovy:Ck});function Gk(e,t,n){return t(n),n(e,t)}var jk=/[a-z_]/,Lk=/[A-Z]/,Nk=/\d/,Dk=/[0-9A-Fa-f]/,Mk=/[0-7]/,Fk=/[a-z_A-Z0-9'\xa1-\uffff]/,Bk=/[-!#$%&*+.\/<=>?@\\^|~:]/,Hk=/[(),;[\]`{}]/,Kk=/[ \t\v\f]/;function Jk(e,t){if(e.eatWhile(Kk))return null;var n=e.next();if(Hk.test(n)){if("{"==n&&e.eat("-")){var r="comment";return e.eat("#")&&(r="meta"),Gk(e,t,ey(r,1))}return null}if("'"==n)return e.eat("\\"),e.next(),e.eat("'")?"string":"error";if('"'==n)return Gk(e,t,ty);if(Lk.test(n))return e.eatWhile(Fk),e.eat(".")?"qualifier":"type";if(jk.test(n))return e.eatWhile(Fk),"variable";if(Nk.test(n)){if("0"==n){if(e.eat(/[xX]/))return e.eatWhile(Dk),"integer";if(e.eat(/[oO]/))return e.eatWhile(Mk),"number"}e.eatWhile(Nk);r="number";return e.match(/^\.\d+/)&&(r="number"),e.eat(/[eE]/)&&(r="number",e.eat(/[-+]/),e.eatWhile(Nk)),r}return"."==n&&e.eat(".")?"keyword":Bk.test(n)?"-"==n&&e.eat(/-/)&&(e.eatWhile(/-/),!e.eat(Bk))?(e.skipToEnd(),"comment"):(e.eatWhile(Bk),"variable"):"error"}function ey(e,t){return 0==t?Jk:function(n,r){for(var i=t;!n.eol();){var a=n.next();if("{"==a&&n.eat("-"))++i;else if("-"==a&&n.eat("}")&&0==--i)return r(Jk),e}return r(ey(e,i)),e}}function ty(e,t){for(;!e.eol();){var n=e.next();if('"'==n)return t(Jk),"string";if("\\"==n){if(e.eol()||e.eat(Kk))return t(ny),"string";e.eat("&")||e.next()}}return t(Jk),"error"}function ny(e,t){return e.eat("\\")?Gk(e,t,ty):(e.next(),t(Jk),"error")}var ry=function(){var e={};function t(t){return function(){for(var n=0;n","@","~","=>"),t("builtin")("!!","$!","$","&&","+","++","-",".","/","/=","<","<*","<=","<$>","<*>","=<<","==",">",">=",">>",">>=","^","^^","||","*","*>","**"),t("builtin")("Applicative","Bool","Bounded","Char","Double","EQ","Either","Enum","Eq","False","FilePath","Float","Floating","Fractional","Functor","GT","IO","IOError","Int","Integer","Integral","Just","LT","Left","Maybe","Monad","Nothing","Num","Ord","Ordering","Rational","Read","ReadS","Real","RealFloat","RealFrac","Right","Show","ShowS","String","True"),t("builtin")("abs","acos","acosh","all","and","any","appendFile","asTypeOf","asin","asinh","atan","atan2","atanh","break","catch","ceiling","compare","concat","concatMap","const","cos","cosh","curry","cycle","decodeFloat","div","divMod","drop","dropWhile","either","elem","encodeFloat","enumFrom","enumFromThen","enumFromThenTo","enumFromTo","error","even","exp","exponent","fail","filter","flip","floatDigits","floatRadix","floatRange","floor","fmap","foldl","foldl1","foldr","foldr1","fromEnum","fromInteger","fromIntegral","fromRational","fst","gcd","getChar","getContents","getLine","head","id","init","interact","ioError","isDenormalized","isIEEE","isInfinite","isNaN","isNegativeZero","iterate","last","lcm","length","lex","lines","log","logBase","lookup","map","mapM","mapM_","max","maxBound","maximum","maybe","min","minBound","minimum","mod","negate","not","notElem","null","odd","or","otherwise","pi","pred","print","product","properFraction","pure","putChar","putStr","putStrLn","quot","quotRem","read","readFile","readIO","readList","readLn","readParen","reads","readsPrec","realToFrac","recip","rem","repeat","replicate","return","reverse","round","scaleFloat","scanl","scanl1","scanr","scanr1","seq","sequence","sequence_","show","showChar","showList","showParen","showString","shows","showsPrec","significand","signum","sin","sinh","snd","span","splitAt","sqrt","subtract","succ","sum","tail","take","takeWhile","tan","tanh","toEnum","toInteger","toRational","truncate","uncurry","undefined","unlines","until","unwords","unzip","unzip3","userError","words","writeFile","zip","zip3","zipWith","zipWith3"),e}();const iy={startState:function(){return{f:Jk}},copyState:function(e){return{f:e.f}},token:function(e,t){var n=t.f(e,(function(e){t.f=e})),r=e.current();return ry.hasOwnProperty(r)?ry[r]:n},languageData:{commentTokens:{line:"--",block:{open:"{-",close:"-}"}}}};var ay=Object.freeze({__proto__:null,haskell:iy});function oy(e){return{type:e,style:"keyword"}}var sy,Oy=oy("keyword a"),ly=oy("keyword b"),cy=oy("keyword c"),uy=oy("operator"),hy={type:"atom",style:"atom"},dy={type:"attribute",style:"attribute"},py=oy("typedef"),fy={if:Oy,while:Oy,else:ly,do:ly,try:ly,return:cy,break:cy,continue:cy,new:cy,throw:cy,var:oy("var"),inline:dy,static:dy,using:oy("import"),public:dy,private:dy,cast:oy("cast"),import:oy("import"),macro:oy("macro"),function:oy("function"),catch:oy("catch"),untyped:oy("untyped"),callback:oy("cb"),for:oy("for"),switch:oy("switch"),case:oy("case"),default:oy("default"),in:uy,never:oy("property_access"),trace:oy("trace"),class:py,abstract:py,enum:py,interface:py,typedef:py,extends:py,implements:py,dynamic:py,true:hy,false:hy,null:hy},my=/[+\-*&%=<>!?|]/;function gy(e,t,n){return t.tokenize=n,n(e,t)}function Qy(e,t){for(var n,r=!1;null!=(n=e.next());){if(n==t&&!r)return!0;r=!r&&"\\"==n}}function $y(e,t,n){return py=e,sy=n,t}function by(e,t){var n=e.next();if('"'==n||"'"==n)return gy(e,t,function(e){return function(t,n){return Qy(t,e)&&(n.tokenize=by),$y("string","string")}}(n));if(/[\[\]{}\(\),;\:\.]/.test(n))return $y(n);if("0"==n&&e.eat(/x/i))return e.eatWhile(/[\da-f]/i),$y("number","number");if(/\d/.test(n)||"-"==n&&e.eat(/\d/))return e.match(/^\d*(?:\.\d*(?!\.))?(?:[eE][+\-]?\d+)?/),$y("number","number");if(t.reAllowed&&"~"==n&&e.eat(/\//))return Qy(e,"/"),e.eatWhile(/[gimsu]/),$y("regexp","string.special");if("/"==n)return e.eat("*")?gy(e,t,xy):e.eat("/")?(e.skipToEnd(),$y("comment","comment")):(e.eatWhile(my),$y("operator",null,e.current()));if("#"==n)return e.skipToEnd(),$y("conditional","meta");if("@"==n)return e.eat(/:/),e.eatWhile(/[\w_]/),$y("metadata","meta");if(my.test(n))return e.eatWhile(my),$y("operator",null,e.current());if(/[A-Z]/.test(n))return e.eatWhile(/[\w_<>]/),$y("type","type",r=e.current());e.eatWhile(/[\w_]/);var r=e.current(),i=fy.propertyIsEnumerable(r)&&fy[r];return i&&t.kwAllowed?$y(i.type,i.style,r):$y("variable","variable",r)}function xy(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=by;break}r="*"==n}return $y("comment","comment")}var wy={atom:!0,number:!0,variable:!0,string:!0,regexp:!0};function ky(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.prev=i,this.info=a,null!=r&&(this.align=r)}function yy(e,t){for(var n=e.localVars;n;n=n.next)if(n.name==t)return!0}function Py(e,t){if(/[a-z]/.test(t.charAt(0)))return!1;for(var n=e.importedtypes.length,r=0;r=0;e--)Sy.cc.push(arguments[e])}function Xy(){return _y.apply(null,arguments),!0}function Ty(e,t){for(var n=t;n;n=n.next)if(n.name==e)return!0;return!1}function Ry(e){var t=Sy.state;if(t.context){if(Sy.marked="def",Ty(e,t.localVars))return;t.localVars={name:e,next:t.localVars}}else if(t.globalVars){if(Ty(e,t.globalVars))return;t.globalVars={name:e,next:t.globalVars}}}var Wy={name:"this",next:null};function qy(){Sy.state.context||(Sy.state.localVars=Wy),Sy.state.context={prev:Sy.state.context,vars:Sy.state.localVars}}function zy(){Sy.state.localVars=Sy.state.context.vars,Sy.state.context=Sy.state.context.prev}function Yy(e,t){var n=function(){var n=Sy.state;n.lexical=new ky(n.indented,Sy.stream.column(),e,null,n.lexical,t)};return n.lex=!0,n}function Zy(){var e=Sy.state;e.lexical.prev&&(")"==e.lexical.type&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}function Uy(e){return function t(n){return n==e?Xy():";"==e?_y():Xy(t)}}function Ey(e){return"@"==e?Xy(Gy):"var"==e?Xy(Yy("vardef"),Ky,Uy(";"),Zy):"keyword a"==e?Xy(Yy("form"),Iy,Ey,Zy):"keyword b"==e?Xy(Yy("form"),Ey,Zy):"{"==e?Xy(Yy("}"),qy,Hy,Zy,zy):";"==e?Xy():"attribute"==e?Xy(Ay):"function"==e?Xy(nP):"for"==e?Xy(Yy("form"),Uy("("),Yy(")"),eP,Uy(")"),Zy,Ey,Zy):"variable"==e?Xy(Yy("stat"),Dy):"switch"==e?Xy(Yy("form"),Iy,Yy("}","switch"),Uy("{"),Hy,Zy,Zy):"case"==e?Xy(Iy,Uy(":")):"default"==e?Xy(Uy(":")):"catch"==e?Xy(Yy("form"),qy,Uy("("),oP,Uy(")"),Ey,Zy,zy):"import"==e?Xy(Ly,Uy(";")):"typedef"==e?Xy(Ny):_y(Yy("stat"),Iy,Uy(";"),Zy)}function Iy(e){return wy.hasOwnProperty(e)||"type"==e?Xy(Cy):"function"==e?Xy(nP):"keyword c"==e?Xy(Vy):"("==e?Xy(Yy(")"),Vy,Uy(")"),Zy,Cy):"operator"==e?Xy(Iy):"["==e?Xy(Yy("]"),By(Vy,"]"),Zy,Cy):"{"==e?Xy(Yy("}"),By(Fy,"}"),Zy,Cy):Xy()}function Vy(e){return e.match(/[;\}\)\],]/)?_y():_y(Iy)}function Cy(e,t){return"operator"==e&&/\+\+|--/.test(t)?Xy(Cy):"operator"==e||":"==e?Xy(Iy):";"!=e?"("==e?Xy(Yy(")"),By(Iy,")"),Zy,Cy):"."==e?Xy(My,Cy):"["==e?Xy(Yy("]"),Iy,Uy("]"),Zy,Cy):void 0:void 0}function Ay(e){return"attribute"==e?Xy(Ay):"function"==e?Xy(nP):"var"==e?Xy(Ky):void 0}function Gy(e){return":"==e||"variable"==e?Xy(Gy):"("==e?Xy(Yy(")"),By(jy,")"),Zy,Ey):void 0}function jy(e){if("variable"==e)return Xy()}function Ly(e,t){return"variable"==e&&/[A-Z]/.test(t.charAt(0))?(vy(t),Xy()):"variable"==e||"property"==e||"."==e||"*"==t?Xy(Ly):void 0}function Ny(e,t){return"variable"==e&&/[A-Z]/.test(t.charAt(0))?(vy(t),Xy()):"type"==e&&/[A-Z]/.test(t.charAt(0))?Xy():void 0}function Dy(e){return":"==e?Xy(Zy,Ey):_y(Cy,Uy(";"),Zy)}function My(e){if("variable"==e)return Sy.marked="property",Xy()}function Fy(e){if("variable"==e&&(Sy.marked="property"),wy.hasOwnProperty(e))return Xy(Uy(":"),Iy)}function By(e,t){function n(r){return","==r?Xy(e,n):r==t?Xy():Xy(Uy(t))}return function(r){return r==t?Xy():_y(e,n)}}function Hy(e){return"}"==e?Xy():_y(Ey,Hy)}function Ky(e,t){return"variable"==e?(Ry(t),Xy(rP,Jy)):Xy()}function Jy(e,t){return"="==t?Xy(Iy,Jy):","==e?Xy(Ky):void 0}function eP(e,t){return"variable"==e?(Ry(t),Xy(tP,Iy)):_y()}function tP(e,t){if("in"==t)return Xy()}function nP(e,t){return"variable"==e||"type"==e?(Ry(t),Xy(nP)):"new"==t?Xy(nP):"("==e?Xy(Yy(")"),qy,By(oP,")"),Zy,rP,Ey,zy):void 0}function rP(e){if(":"==e)return Xy(iP)}function iP(e){return"type"==e||"variable"==e?Xy():"{"==e?Xy(Yy("}"),By(aP,"}"),Zy):void 0}function aP(e){if("variable"==e)return Xy(rP)}function oP(e,t){if("variable"==e)return Ry(t),Xy(rP)}zy.lex=!0,Zy.lex=!0;const sP={startState:function(e){return{tokenize:by,reAllowed:!0,kwAllowed:!0,cc:[],lexical:new ky(-e,0,"block",!1),importedtypes:["Int","Float","String","Void","Std","Bool","Dynamic","Array"],context:null,indented:0}},token:function(e,t){if(e.sol()&&(t.lexical.hasOwnProperty("align")||(t.lexical.align=!1),t.indented=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);return"comment"==py?n:(t.reAllowed=!("operator"!=py&&"keyword c"!=py&&!py.match(/^[\[{}\(,;:]$/)),t.kwAllowed="."!=py,function(e,t,n,r,i){var a=e.cc;for(Sy.state=e,Sy.stream=i,Sy.marked=null,Sy.cc=a,e.lexical.hasOwnProperty("align")||(e.lexical.align=!0);;)if((a.length?a.pop():Ey)(n,r)){for(;a.length&&a[a.length-1].lex;)a.pop()();return Sy.marked?Sy.marked:"variable"==n&&yy(e,r)?"variableName.local":"variable"==n&&Py(e,r)?"variableName.special":t}}(t,n,py,sy,e))},indent:function(e,t,n){if(e.tokenize!=by)return 0;var r=t&&t.charAt(0),i=e.lexical;"stat"==i.type&&"}"==r&&(i=i.prev);var a=i.type,o=r==a;return"vardef"==a?i.indented+4:"form"==a&&"{"==r?i.indented:"stat"==a||"form"==a?i.indented+n.unit:"switch"!=i.info||o?i.align?i.column+(o?0:1):i.indented+(o?0:n.unit):i.indented+(/^(?:case|default)\b/.test(t)?n.unit:2*n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var OP=Object.freeze({__proto__:null,haxe:sP,hxml:{startState:function(){return{define:!1,inString:!1}},token:function(e,t){var n=e.peek(),r=e.sol();if("#"==n)return e.skipToEnd(),"comment";if(r&&"-"==n){var i="variable-2";return e.eat(/-/),"-"==e.peek()&&(e.eat(/-/),i="keyword a"),"D"==e.peek()&&(e.eat(/[D]/),i="keyword c",t.define=!0),e.eatWhile(/[A-Z]/i),i}n=e.peek();return 0==t.inString&&"'"==n&&(t.inString=!0,e.next()),1==t.inString?(e.skipTo("'")||e.skipToEnd(),"'"==e.peek()&&(e.next(),t.inString=!1),"string"):(e.next(),null)},languageData:{commentTokens:{line:"#"}}}});function lP(e,t){return e.skipToEnd(),t.cur=fP,"error"}function cP(e,t){return e.match(/^HTTP\/\d\.\d/)?(t.cur=uP,"keyword"):e.match(/^[A-Z]+/)&&/[ \t]/.test(e.peek())?(t.cur=dP,"keyword"):lP(e,t)}function uP(e,t){var n=e.match(/^\d+/);if(!n)return lP(e,t);t.cur=hP;var r=Number(n[0]);return r>=100&&r<400?"atom":"error"}function hP(e,t){return e.skipToEnd(),t.cur=fP,null}function dP(e,t){return e.eatWhile(/\S/),t.cur=pP,"string.special"}function pP(e,t){return e.match(/^HTTP\/\d\.\d$/)?(t.cur=fP,"keyword"):lP(e,t)}function fP(e){return e.sol()&&!e.eat(/[ \t]/)?e.match(/^.*?:/)?"atom":(e.skipToEnd(),"error"):(e.skipToEnd(),"string")}function mP(e){return e.skipToEnd(),null}const gP={token:function(e,t){var n=t.cur;return n!=fP&&n!=mP&&e.eatSpace()?null:n(e,t)},blankLine:function(e){e.cur=mP},startState:function(){return{cur:cP}}};var QP=Object.freeze({__proto__:null,http:gP});function $P(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var bP=["a_correlate","abs","acos","adapt_hist_equal","alog","alog2","alog10","amoeba","annotate","app_user_dir","app_user_dir_query","arg_present","array_equal","array_indices","arrow","ascii_template","asin","assoc","atan","axis","axis","bandpass_filter","bandreject_filter","barplot","bar_plot","beseli","beselj","beselk","besely","beta","biginteger","bilinear","bin_date","binary_template","bindgen","binomial","bit_ffs","bit_population","blas_axpy","blk_con","boolarr","boolean","boxplot","box_cursor","breakpoint","broyden","bubbleplot","butterworth","bytarr","byte","byteorder","bytscl","c_correlate","calendar","caldat","call_external","call_function","call_method","call_procedure","canny","catch","cd","cdf","ceil","chebyshev","check_math","chisqr_cvf","chisqr_pdf","choldc","cholsol","cindgen","cir_3pnt","clipboard","close","clust_wts","cluster","cluster_tree","cmyk_convert","code_coverage","color_convert","color_exchange","color_quan","color_range_map","colorbar","colorize_sample","colormap_applicable","colormap_gradient","colormap_rotation","colortable","comfit","command_line_args","common","compile_opt","complex","complexarr","complexround","compute_mesh_normals","cond","congrid","conj","constrained_min","contour","contour","convert_coord","convol","convol_fft","coord2to3","copy_lun","correlate","cos","cosh","cpu","cramer","createboxplotdata","create_cursor","create_struct","create_view","crossp","crvlength","ct_luminance","cti_test","cursor","curvefit","cv_coord","cvttobm","cw_animate","cw_animate_getp","cw_animate_load","cw_animate_run","cw_arcball","cw_bgroup","cw_clr_index","cw_colorsel","cw_defroi","cw_field","cw_filesel","cw_form","cw_fslider","cw_light_editor","cw_light_editor_get","cw_light_editor_set","cw_orient","cw_palette_editor","cw_palette_editor_get","cw_palette_editor_set","cw_pdmenu","cw_rgbslider","cw_tmpl","cw_zoom","db_exists","dblarr","dcindgen","dcomplex","dcomplexarr","define_key","define_msgblk","define_msgblk_from_file","defroi","defsysv","delvar","dendro_plot","dendrogram","deriv","derivsig","determ","device","dfpmin","diag_matrix","dialog_dbconnect","dialog_message","dialog_pickfile","dialog_printersetup","dialog_printjob","dialog_read_image","dialog_write_image","dictionary","digital_filter","dilate","dindgen","dissolve","dist","distance_measure","dlm_load","dlm_register","doc_library","double","draw_roi","edge_dog","efont","eigenql","eigenvec","ellipse","elmhes","emboss","empty","enable_sysrtn","eof","eos","erase","erf","erfc","erfcx","erode","errorplot","errplot","estimator_filter","execute","exit","exp","expand","expand_path","expint","extract","extract_slice","f_cvf","f_pdf","factorial","fft","file_basename","file_chmod","file_copy","file_delete","file_dirname","file_expand_path","file_gunzip","file_gzip","file_info","file_lines","file_link","file_mkdir","file_move","file_poll_input","file_readlink","file_same","file_search","file_tar","file_test","file_untar","file_unzip","file_which","file_zip","filepath","findgen","finite","fix","flick","float","floor","flow3","fltarr","flush","format_axis_values","forward_function","free_lun","fstat","fulstr","funct","function","fv_test","fx_root","fz_roots","gamma","gamma_ct","gauss_cvf","gauss_pdf","gauss_smooth","gauss2dfit","gaussfit","gaussian_function","gaussint","get_drive_list","get_dxf_objects","get_kbrd","get_login_info","get_lun","get_screen_size","getenv","getwindows","greg2jul","grib","grid_input","grid_tps","grid3","griddata","gs_iter","h_eq_ct","h_eq_int","hanning","hash","hdf","hdf5","heap_free","heap_gc","heap_nosave","heap_refcount","heap_save","help","hilbert","hist_2d","hist_equal","histogram","hls","hough","hqr","hsv","i18n_multibytetoutf8","i18n_multibytetowidechar","i18n_utf8tomultibyte","i18n_widechartomultibyte","ibeta","icontour","iconvertcoord","idelete","identity","idl_base64","idl_container","idl_validname","idlexbr_assistant","idlitsys_createtool","idlunit","iellipse","igamma","igetcurrent","igetdata","igetid","igetproperty","iimage","image","image_cont","image_statistics","image_threshold","imaginary","imap","indgen","int_2d","int_3d","int_tabulated","intarr","interpol","interpolate","interval_volume","invert","ioctl","iopen","ir_filter","iplot","ipolygon","ipolyline","iputdata","iregister","ireset","iresolve","irotate","isa","isave","iscale","isetcurrent","isetproperty","ishft","isocontour","isosurface","isurface","itext","itranslate","ivector","ivolume","izoom","journal","json_parse","json_serialize","jul2greg","julday","keyword_set","krig2d","kurtosis","kw_test","l64indgen","la_choldc","la_cholmprove","la_cholsol","la_determ","la_eigenproblem","la_eigenql","la_eigenvec","la_elmhes","la_gm_linear_model","la_hqr","la_invert","la_least_square_equality","la_least_squares","la_linear_equation","la_ludc","la_lumprove","la_lusol","la_svd","la_tridc","la_trimprove","la_triql","la_trired","la_trisol","label_date","label_region","ladfit","laguerre","lambda","lambdap","lambertw","laplacian","least_squares_filter","leefilt","legend","legendre","linbcg","lindgen","linfit","linkimage","list","ll_arc_distance","lmfit","lmgr","lngamma","lnp_test","loadct","locale_get","logical_and","logical_or","logical_true","lon64arr","lonarr","long","long64","lsode","lu_complex","ludc","lumprove","lusol","m_correlate","machar","make_array","make_dll","make_rt","map","mapcontinents","mapgrid","map_2points","map_continents","map_grid","map_image","map_patch","map_proj_forward","map_proj_image","map_proj_info","map_proj_init","map_proj_inverse","map_set","matrix_multiply","matrix_power","max","md_test","mean","meanabsdev","mean_filter","median","memory","mesh_clip","mesh_decimate","mesh_issolid","mesh_merge","mesh_numtriangles","mesh_obj","mesh_smooth","mesh_surfacearea","mesh_validate","mesh_volume","message","min","min_curve_surf","mk_html_help","modifyct","moment","morph_close","morph_distance","morph_gradient","morph_hitormiss","morph_open","morph_thin","morph_tophat","multi","n_elements","n_params","n_tags","ncdf","newton","noise_hurl","noise_pick","noise_scatter","noise_slur","norm","obj_class","obj_destroy","obj_hasmethod","obj_isa","obj_new","obj_valid","objarr","on_error","on_ioerror","online_help","openr","openu","openw","oplot","oploterr","orderedhash","p_correlate","parse_url","particle_trace","path_cache","path_sep","pcomp","plot","plot3d","plot","plot_3dbox","plot_field","ploterr","plots","polar_contour","polar_surface","polyfill","polyshade","pnt_line","point_lun","polarplot","poly","poly_2d","poly_area","poly_fit","polyfillv","polygon","polyline","polywarp","popd","powell","pref_commit","pref_get","pref_set","prewitt","primes","print","printf","printd","pro","product","profile","profiler","profiles","project_vol","ps_show_fonts","psafm","pseudo","ptr_free","ptr_new","ptr_valid","ptrarr","pushd","qgrid3","qhull","qromb","qromo","qsimp","query_*","query_ascii","query_bmp","query_csv","query_dicom","query_gif","query_image","query_jpeg","query_jpeg2000","query_mrsid","query_pict","query_png","query_ppm","query_srf","query_tiff","query_video","query_wav","r_correlate","r_test","radon","randomn","randomu","ranks","rdpix","read","readf","read_ascii","read_binary","read_bmp","read_csv","read_dicom","read_gif","read_image","read_interfile","read_jpeg","read_jpeg2000","read_mrsid","read_pict","read_png","read_ppm","read_spr","read_srf","read_sylk","read_tiff","read_video","read_wav","read_wave","read_x11_bitmap","read_xwd","reads","readu","real_part","rebin","recall_commands","recon3","reduce_colors","reform","region_grow","register_cursor","regress","replicate","replicate_inplace","resolve_all","resolve_routine","restore","retall","return","reverse","rk4","roberts","rot","rotate","round","routine_filepath","routine_info","rs_test","s_test","save","savgol","scale3","scale3d","scatterplot","scatterplot3d","scope_level","scope_traceback","scope_varfetch","scope_varname","search2d","search3d","sem_create","sem_delete","sem_lock","sem_release","set_plot","set_shading","setenv","sfit","shade_surf","shade_surf_irr","shade_volume","shift","shift_diff","shmdebug","shmmap","shmunmap","shmvar","show3","showfont","signum","simplex","sin","sindgen","sinh","size","skewness","skip_lun","slicer3","slide_image","smooth","sobel","socket","sort","spawn","sph_4pnt","sph_scat","spher_harm","spl_init","spl_interp","spline","spline_p","sprsab","sprsax","sprsin","sprstp","sqrt","standardize","stddev","stop","strarr","strcmp","strcompress","streamline","streamline","stregex","stretch","string","strjoin","strlen","strlowcase","strmatch","strmessage","strmid","strpos","strput","strsplit","strtrim","struct_assign","struct_hide","strupcase","surface","surface","surfr","svdc","svdfit","svsol","swap_endian","swap_endian_inplace","symbol","systime","t_cvf","t_pdf","t3d","tag_names","tan","tanh","tek_color","temporary","terminal_size","tetra_clip","tetra_surface","tetra_volume","text","thin","thread","threed","tic","time_test2","timegen","timer","timestamp","timestamptovalues","tm_test","toc","total","trace","transpose","tri_surf","triangulate","trigrid","triql","trired","trisol","truncate_lun","ts_coef","ts_diff","ts_fcast","ts_smooth","tv","tvcrs","tvlct","tvrd","tvscl","typename","uindgen","uint","uintarr","ul64indgen","ulindgen","ulon64arr","ulonarr","ulong","ulong64","uniq","unsharp_mask","usersym","value_locate","variance","vector","vector_field","vel","velovect","vert_t3d","voigt","volume","voronoi","voxel_proj","wait","warp_tri","watershed","wdelete","wf_draw","where","widget_base","widget_button","widget_combobox","widget_control","widget_displaycontextmenu","widget_draw","widget_droplist","widget_event","widget_info","widget_label","widget_list","widget_propertysheet","widget_slider","widget_tab","widget_table","widget_text","widget_tree","widget_tree_move","widget_window","wiener_filter","window","window","write_bmp","write_csv","write_gif","write_image","write_jpeg","write_jpeg2000","write_nrif","write_pict","write_png","write_ppm","write_spr","write_srf","write_sylk","write_tiff","write_video","write_wav","write_wave","writeu","wset","wshow","wtn","wv_applet","wv_cwt","wv_cw_wavelet","wv_denoise","wv_dwt","wv_fn_coiflet","wv_fn_daubechies","wv_fn_gaussian","wv_fn_haar","wv_fn_morlet","wv_fn_paul","wv_fn_symlet","wv_import_data","wv_import_wavelet","wv_plot3d_wps","wv_plot_multires","wv_pwt","wv_tool_denoise","xbm_edit","xdisplayfile","xdxf","xfont","xinteranimate","xloadct","xmanager","xmng_tmpl","xmtool","xobjview","xobjview_rotate","xobjview_write_image","xpalette","xpcolor","xplot3d","xregistered","xroi","xsq_test","xsurface","xvaredit","xvolume","xvolume_rotate","xvolume_write_image","xyouts","zlib_compress","zlib_uncompress","zoom","zoom_24"],xP=$P(bP),wP=["begin","end","endcase","endfor","endwhile","endif","endrep","endforeach","break","case","continue","for","foreach","goto","if","then","else","repeat","until","switch","while","do","pro","function"],kP=$P(wP),yP=new RegExp("^[_a-z¡-￿][_a-z0-9¡-￿]*","i"),PP=/[+\-*&=<>\/@#~$]/,vP=new RegExp("(and|or|eq|lt|le|gt|ge|ne|not)","i");const SP={token:function(e){return function(e){if(e.eatSpace())return null;if(e.match(";"))return e.skipToEnd(),"comment";if(e.match(/^[0-9\.+-]/,!1)){if(e.match(/^[+-]?0x[0-9a-fA-F]+/))return"number";if(e.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?/))return"number";if(e.match(/^[+-]?\d+([EeDd][+-]?\d+)?/))return"number"}return e.match(/^"([^"]|(""))*"/)||e.match(/^'([^']|(''))*'/)?"string":e.match(kP)?"keyword":e.match(xP)?"builtin":e.match(yP)?"variable":e.match(PP)||e.match(vP)?"operator":(e.next(),null)}(e)},languageData:{autocomplete:bP.concat(wP)}};var _P=Object.freeze({__proto__:null,idl:SP});function XP(e){var t,n,r=e.statementIndent,i=e.jsonld,a=e.json||i,o=e.typescript,s=e.wordCharacters||/[\w$\xa1-\uffff]/,O=function(){function e(e){return{type:e,style:"keyword"}}var t=e("keyword a"),n=e("keyword b"),r=e("keyword c"),i=e("keyword d"),a=e("operator"),o={type:"atom",style:"atom"};return{if:e("if"),while:t,with:t,else:n,do:n,try:n,finally:n,return:i,break:i,continue:i,new:e("new"),delete:r,void:r,throw:r,debugger:e("debugger"),var:e("var"),const:e("var"),let:e("var"),function:e("function"),catch:e("catch"),for:e("for"),switch:e("switch"),case:e("case"),default:e("default"),in:a,typeof:a,instanceof:a,true:o,false:o,null:o,undefined:o,NaN:o,Infinity:o,this:e("this"),class:e("class"),super:e("atom"),yield:r,export:e("export"),import:e("import"),extends:r,await:r}}(),l=/[+\-*&%=<>!?|~^@]/,c=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function u(e,r,i){return t=e,n=i,r}function h(e,t){var n=e.next();if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){var r,a=!1;if(i&&"@"==t.peek()&&t.match(c))return n.tokenize=h,u("jsonld-keyword","meta");for(;null!=(r=t.next())&&(r!=e||a);)a=!a&&"\\"==r;return a||(n.tokenize=h),u("string","string")}}(n),t.tokenize(e,t);if("."==n&&e.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return u("number","number");if("."==n&&e.match(".."))return u("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(n))return u(n);if("="==n&&e.eat(">"))return u("=>","operator");if("0"==n&&e.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return u("number","number");if(/\d/.test(n))return e.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),u("number","number");if("/"==n)return e.eat("*")?(t.tokenize=d,d(e,t)):e.eat("/")?(e.skipToEnd(),u("comment","comment")):function(e,t,n){return t.tokenize==h&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(t.lastType)||"quasi"==t.lastType&&/\{\s*$/.test(e.string.slice(0,e.pos-(n||0)))}(e,t,1)?(function(e){for(var t,n=!1,r=!1;null!=(t=e.next());){if(!n){if("/"==t&&!r)return;"["==t?r=!0:r&&"]"==t&&(r=!1)}n=!n&&"\\"==t}}(e),e.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),u("regexp","string.special")):(e.eat("="),u("operator","operator",e.current()));if("`"==n)return t.tokenize=p,p(e,t);if("#"==n&&"!"==e.peek())return e.skipToEnd(),u("meta","meta");if("#"==n&&e.eatWhile(s))return u("variable","property");if("<"==n&&e.match("!--")||"-"==n&&e.match("->")&&!/\S/.test(e.string.slice(0,e.start)))return e.skipToEnd(),u("comment","comment");if(l.test(n))return">"==n&&t.lexical&&">"==t.lexical.type||(e.eat("=")?"!"!=n&&"="!=n||e.eat("="):/[<>*+\-|&?]/.test(n)&&(e.eat(n),">"==n&&e.eat(n))),"?"==n&&e.eat(".")?u("."):u("operator","operator",e.current());if(s.test(n)){e.eatWhile(s);var r=e.current();if("."!=t.lastType){if(O.propertyIsEnumerable(r)){var a=O[r];return u(a.type,a.style,r)}if("async"==r&&e.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return u("async","keyword",r)}return u("variable","variable",r)}}function d(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=h;break}r="*"==n}return u("comment","comment")}function p(e,t){for(var n,r=!1;null!=(n=e.next());){if(!r&&("`"==n||"$"==n&&e.eat("{"))){t.tokenize=h;break}r=!r&&"\\"==n}return u("quasi","string.special",e.current())}function f(e,t){t.fatArrowAt&&(t.fatArrowAt=null);var n=e.string.indexOf("=>",e.start);if(!(n<0)){if(o){var r=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(e.string.slice(e.start,n));r&&(n=r.index)}for(var i=0,a=!1,O=n-1;O>=0;--O){var l=e.string.charAt(O),c="([{}])".indexOf(l);if(c>=0&&c<3){if(!i){++O;break}if(0==--i){"("==l&&(a=!0);break}}else if(c>=3&&c<6)++i;else if(s.test(l))a=!0;else if(/["'\/`]/.test(l))for(;;--O){if(0==O)return;if(e.string.charAt(O-1)==l&&"\\"!=e.string.charAt(O-2)){O--;break}}else if(a&&!i){++O;break}}a&&!i&&(t.fatArrowAt=O)}}var m={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function g(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.prev=i,this.info=a,null!=r&&(this.align=r)}function Q(e,t){for(var n=e.localVars;n;n=n.next)if(n.name==t)return!0;for(var r=e.context;r;r=r.prev)for(n=r.vars;n;n=n.next)if(n.name==t)return!0}var $={state:null,column:null,marked:null,cc:null};function b(){for(var e=arguments.length-1;e>=0;e--)$.cc.push(arguments[e])}function x(){return b.apply(null,arguments),!0}function w(e,t){for(var n=t;n;n=n.next)if(n.name==e)return!0;return!1}function k(t){var n=$.state;if($.marked="def",n.context)if("var"==n.lexical.info&&n.context&&n.context.block){var r=y(t,n.context);if(null!=r)return void(n.context=r)}else if(!w(t,n.localVars))return void(n.localVars=new S(t,n.localVars));e.globalVars&&!w(t,n.globalVars)&&(n.globalVars=new S(t,n.globalVars))}function y(e,t){if(t){if(t.block){var n=y(e,t.prev);return n?n==t.prev?t:new v(n,t.vars,!0):null}return w(e,t.vars)?t:new v(t.prev,new S(e,t.vars),!1)}return null}function P(e){return"public"==e||"private"==e||"protected"==e||"abstract"==e||"readonly"==e}function v(e,t,n){this.prev=e,this.vars=t,this.block=n}function S(e,t){this.name=e,this.next=t}var _=new S("this",new S("arguments",null));function X(){$.state.context=new v($.state.context,$.state.localVars,!1),$.state.localVars=_}function T(){$.state.context=new v($.state.context,$.state.localVars,!0),$.state.localVars=null}function R(){$.state.localVars=$.state.context.vars,$.state.context=$.state.context.prev}function W(e,t){var n=function(){var n=$.state,r=n.indented;if("stat"==n.lexical.type)r=n.lexical.indented;else for(var i=n.lexical;i&&")"==i.type&&i.align;i=i.prev)r=i.indented;n.lexical=new g(r,$.stream.column(),e,null,n.lexical,t)};return n.lex=!0,n}function q(){var e=$.state;e.lexical.prev&&(")"==e.lexical.type&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}function z(e){return function t(n){return n==e?x():";"==e||"}"==n||")"==n||"]"==n?b():x(t)}}function Y(e,t){return"var"==e?x(W("vardef",t),$e,z(";"),q):"keyword a"==e?x(W("form"),I,Y,q):"keyword b"==e?x(W("form"),Y,q):"keyword d"==e?$.stream.match(/^\s*$/,!1)?x():x(W("stat"),C,z(";"),q):"debugger"==e?x(z(";")):"{"==e?x(W("}"),T,re,q,R):";"==e?x():"if"==e?("else"==$.state.lexical.info&&$.state.cc[$.state.cc.length-1]==q&&$.state.cc.pop()(),x(W("form"),I,Y,q,Pe)):"function"==e?x(Xe):"for"==e?x(W("form"),T,ve,Y,R,q):"class"==e||o&&"interface"==t?($.marked="keyword",x(W("form","class"==e?e:t),ze,q)):"variable"==e?o&&"declare"==t?($.marked="keyword",x(Y)):o&&("module"==t||"enum"==t||"type"==t)&&$.stream.match(/^\s*\w/,!1)?($.marked="keyword","enum"==t?x(Ne):"type"==t?x(Re,z("operator"),Oe,z(";")):x(W("form"),be,z("{"),W("}"),re,q,q)):o&&"namespace"==t?($.marked="keyword",x(W("form"),U,Y,q)):o&&"abstract"==t?($.marked="keyword",x(Y)):x(W("stat"),B):"switch"==e?x(W("form"),I,z("{"),W("}","switch"),T,re,q,q,R):"case"==e?x(U,z(":")):"default"==e?x(z(":")):"catch"==e?x(W("form"),X,Z,Y,q,R):"export"==e?x(W("stat"),Ee,q):"import"==e?x(W("stat"),Ve,q):"async"==e?x(Y):"@"==t?x(U,Y):b(W("stat"),U,z(";"),q)}function Z(e){if("("==e)return x(We,z(")"))}function U(e,t){return V(e,t,!1)}function E(e,t){return V(e,t,!0)}function I(e){return"("!=e?b():x(W(")"),C,z(")"),q)}function V(e,t,n){if($.state.fatArrowAt==$.stream.start){var r=n?D:N;if("("==e)return x(X,W(")"),te(We,")"),q,z("=>"),r,R);if("variable"==e)return b(X,be,z("=>"),r,R)}var i=n?G:A;return m.hasOwnProperty(e)?x(i):"function"==e?x(Xe,i):"class"==e||o&&"interface"==t?($.marked="keyword",x(W("form"),qe,q)):"keyword c"==e||"async"==e?x(n?E:U):"("==e?x(W(")"),C,z(")"),q,i):"operator"==e||"spread"==e?x(n?E:U):"["==e?x(W("]"),Le,q,i):"{"==e?ne(K,"}",null,i):"quasi"==e?b(j,i):"new"==e?x(function(e){return function(t){return"."==t?x(e?F:M):"variable"==t&&o?x(me,e?G:A):b(e?E:U)}}(n)):x()}function C(e){return e.match(/[;\}\)\],]/)?b():b(U)}function A(e,t){return","==e?x(C):G(e,t,!1)}function G(e,t,n){var r=0==n?A:G,i=0==n?U:E;return"=>"==e?x(X,n?D:N,R):"operator"==e?/\+\+|--/.test(t)||o&&"!"==t?x(r):o&&"<"==t&&$.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?x(W(">"),te(Oe,">"),q,r):"?"==t?x(U,z(":"),i):x(i):"quasi"==e?b(j,r):";"!=e?"("==e?ne(E,")","call",r):"."==e?x(H,r):"["==e?x(W("]"),C,z("]"),q,r):o&&"as"==t?($.marked="keyword",x(Oe,r)):"regexp"==e?($.state.lastType=$.marked="operator",$.stream.backUp($.stream.pos-$.stream.start-1),x(i)):void 0:void 0}function j(e,t){return"quasi"!=e?b():"${"!=t.slice(t.length-2)?x(j):x(C,L)}function L(e){if("}"==e)return $.marked="string.special",$.state.tokenize=p,x(j)}function N(e){return f($.stream,$.state),b("{"==e?Y:U)}function D(e){return f($.stream,$.state),b("{"==e?Y:E)}function M(e,t){if("target"==t)return $.marked="keyword",x(A)}function F(e,t){if("target"==t)return $.marked="keyword",x(G)}function B(e){return":"==e?x(q,Y):b(A,z(";"),q)}function H(e){if("variable"==e)return $.marked="property",x()}function K(e,t){return"async"==e?($.marked="property",x(K)):"variable"==e||"keyword"==$.style?($.marked="property","get"==t||"set"==t?x(J):(o&&$.state.fatArrowAt==$.stream.start&&(n=$.stream.match(/^\s*:\s*/,!1))&&($.state.fatArrowAt=$.stream.pos+n[0].length),x(ee))):"number"==e||"string"==e?($.marked=i?"property":$.style+" property",x(ee)):"jsonld-keyword"==e?x(ee):o&&P(t)?($.marked="keyword",x(K)):"["==e?x(U,ie,z("]"),ee):"spread"==e?x(E,ee):"*"==t?($.marked="keyword",x(K)):":"==e?b(ee):void 0;var n}function J(e){return"variable"!=e?b(ee):($.marked="property",x(Xe))}function ee(e){return":"==e?x(E):"("==e?b(Xe):void 0}function te(e,t,n){function r(i,a){if(n?n.indexOf(i)>-1:","==i){var o=$.state.lexical;return"call"==o.info&&(o.pos=(o.pos||0)+1),x((function(n,r){return n==t||r==t?b():b(e)}),r)}return i==t||a==t?x():n&&n.indexOf(";")>-1?b(e):x(z(t))}return function(n,i){return n==t||i==t?x():b(e,r)}}function ne(e,t,n){for(var r=3;r"),Oe):"quasi"==e?b(he,fe):void 0}function le(e){if("=>"==e)return x(Oe)}function ce(e){return e.match(/[\}\)\]]/)?x():","==e||";"==e?x(ce):b(ue,ce)}function ue(e,t){return"variable"==e||"keyword"==$.style?($.marked="property",x(ue)):"?"==t||"number"==e||"string"==e?x(ue):":"==e?x(Oe):"["==e?x(z("variable"),ae,z("]"),ue):"("==e?b(Te,ue):e.match(/[;\}\)\],]/)?void 0:x()}function he(e,t){return"quasi"!=e?b():"${"!=t.slice(t.length-2)?x(he):x(Oe,de)}function de(e){if("}"==e)return $.marked="string-2",$.state.tokenize=p,x(he)}function pe(e,t){return"variable"==e&&$.stream.match(/^\s*[?:]/,!1)||"?"==t?x(pe):":"==e?x(Oe):"spread"==e?x(pe):b(Oe)}function fe(e,t){return"<"==t?x(W(">"),te(Oe,">"),q,fe):"|"==t||"."==e||"&"==t?x(Oe):"["==e?x(Oe,z("]"),fe):"extends"==t||"implements"==t?($.marked="keyword",x(Oe)):"?"==t?x(Oe,z(":"),Oe):void 0}function me(e,t){if("<"==t)return x(W(">"),te(Oe,">"),q,fe)}function ge(){return b(Oe,Qe)}function Qe(e,t){if("="==t)return x(Oe)}function $e(e,t){return"enum"==t?($.marked="keyword",x(Ne)):b(be,ie,ke,ye)}function be(e,t){return o&&P(t)?($.marked="keyword",x(be)):"variable"==e?(k(t),x()):"spread"==e?x(be):"["==e?ne(we,"]"):"{"==e?ne(xe,"}"):void 0}function xe(e,t){return"variable"!=e||$.stream.match(/^\s*:/,!1)?("variable"==e&&($.marked="property"),"spread"==e?x(be):"}"==e?b():"["==e?x(U,z("]"),z(":"),xe):x(z(":"),be,ke)):(k(t),x(ke))}function we(){return b(be,ke)}function ke(e,t){if("="==t)return x(E)}function ye(e){if(","==e)return x($e)}function Pe(e,t){if("keyword b"==e&&"else"==t)return x(W("form","else"),Y,q)}function ve(e,t){return"await"==t?x(ve):"("==e?x(W(")"),Se,q):void 0}function Se(e){return"var"==e?x($e,_e):"variable"==e?x(_e):b(_e)}function _e(e,t){return")"==e?x():";"==e?x(_e):"in"==t||"of"==t?($.marked="keyword",x(U,_e)):b(U,_e)}function Xe(e,t){return"*"==t?($.marked="keyword",x(Xe)):"variable"==e?(k(t),x(Xe)):"("==e?x(X,W(")"),te(We,")"),q,oe,Y,R):o&&"<"==t?x(W(">"),te(ge,">"),q,Xe):void 0}function Te(e,t){return"*"==t?($.marked="keyword",x(Te)):"variable"==e?(k(t),x(Te)):"("==e?x(X,W(")"),te(We,")"),q,oe,R):o&&"<"==t?x(W(">"),te(ge,">"),q,Te):void 0}function Re(e,t){return"keyword"==e||"variable"==e?($.marked="type",x(Re)):"<"==t?x(W(">"),te(ge,">"),q):void 0}function We(e,t){return"@"==t&&x(U,We),"spread"==e?x(We):o&&P(t)?($.marked="keyword",x(We)):o&&"this"==e?x(ie,ke):b(be,ie,ke)}function qe(e,t){return"variable"==e?ze(e,t):Ye(e,t)}function ze(e,t){if("variable"==e)return k(t),x(Ye)}function Ye(e,t){return"<"==t?x(W(">"),te(ge,">"),q,Ye):"extends"==t||"implements"==t||o&&","==e?("implements"==t&&($.marked="keyword"),x(o?Oe:U,Ye)):"{"==e?x(W("}"),Ze,q):void 0}function Ze(e,t){return"async"==e||"variable"==e&&("static"==t||"get"==t||"set"==t||o&&P(t))&&$.stream.match(/^\s+[\w$\xa1-\uffff]/,!1)?($.marked="keyword",x(Ze)):"variable"==e||"keyword"==$.style?($.marked="property",x(Ue,Ze)):"number"==e||"string"==e?x(Ue,Ze):"["==e?x(U,ie,z("]"),Ue,Ze):"*"==t?($.marked="keyword",x(Ze)):o&&"("==e?b(Te,Ze):";"==e||","==e?x(Ze):"}"==e?x():"@"==t?x(U,Ze):void 0}function Ue(e,t){if("!"==t||"?"==t)return x(Ue);if(":"==e)return x(Oe,ke);if("="==t)return x(E);var n=$.state.lexical.prev;return b(n&&"interface"==n.info?Te:Xe)}function Ee(e,t){return"*"==t?($.marked="keyword",x(je,z(";"))):"default"==t?($.marked="keyword",x(U,z(";"))):"{"==e?x(te(Ie,"}"),je,z(";")):b(Y)}function Ie(e,t){return"as"==t?($.marked="keyword",x(z("variable"))):"variable"==e?b(E,Ie):void 0}function Ve(e){return"string"==e?x():"("==e?b(U):"."==e?b(A):b(Ce,Ae,je)}function Ce(e,t){return"{"==e?ne(Ce,"}"):("variable"==e&&k(t),"*"==t&&($.marked="keyword"),x(Ge))}function Ae(e){if(","==e)return x(Ce,Ae)}function Ge(e,t){if("as"==t)return $.marked="keyword",x(Ce)}function je(e,t){if("from"==t)return $.marked="keyword",x(U)}function Le(e){return"]"==e?x():b(te(E,"]"))}function Ne(){return b(W("form"),be,z("{"),W("}"),te(De,"}"),q,q)}function De(){return b(be,ke)}return R.lex=!0,q.lex=!0,{startState:function(t){var n={tokenize:h,lastType:"sof",cc:[],lexical:new g(-t,0,"block",!1),localVars:e.localVars,context:e.localVars&&new v(null,null,!1),indented:0};return e.globalVars&&"object"==typeof e.globalVars&&(n.globalVars=e.globalVars),n},token:function(e,r){if(e.sol()&&(r.lexical.hasOwnProperty("align")||(r.lexical.align=!1),r.indented=e.indentation(),f(e,r)),r.tokenize!=d&&e.eatSpace())return null;var i=r.tokenize(e,r);return"comment"==t?i:(r.lastType="operator"!=t||"++"!=n&&"--"!=n?t:"incdec",function(e,t,n,r,i){var o=e.cc;for($.state=e,$.stream=i,$.marked=null,$.cc=o,$.style=t,e.lexical.hasOwnProperty("align")||(e.lexical.align=!0);;)if((o.length?o.pop():a?U:Y)(n,r)){for(;o.length&&o[o.length-1].lex;)o.pop()();return $.marked?$.marked:"variable"==n&&Q(e,r)?"variableName.local":t}}(r,i,t,n,e))},indent:function(t,n,i){if(t.tokenize==d||t.tokenize==p)return null;if(t.tokenize!=h)return 0;var a,o=n&&n.charAt(0),s=t.lexical;if(!/^\s*else\b/.test(n))for(var O=t.cc.length-1;O>=0;--O){var c=t.cc[O];if(c==q)s=s.prev;else if(c!=Pe&&c!=R)break}for(;("stat"==s.type||"form"==s.type)&&("}"==o||(a=t.cc[t.cc.length-1])&&(a==A||a==G)&&!/^[,\.=+\-*:?[\(]/.test(n));)s=s.prev;r&&")"==s.type&&"stat"==s.prev.type&&(s=s.prev);var u=s.type,f=o==u;return"vardef"==u?s.indented+("operator"==t.lastType||","==t.lastType?s.info.length+1:0):"form"==u&&"{"==o?s.indented:"form"==u?s.indented+i.unit:"stat"==u?s.indented+(function(e,t){return"operator"==e.lastType||","==e.lastType||l.test(t.charAt(0))||/[,.]/.test(t.charAt(0))}(t,n)?r||i.unit:0):"switch"!=s.info||f||0==e.doubleIndentSwitch?s.align?s.column+(f?0:1):s.indented+(f?0:i.unit):s.indented+(/^(?:case|default)\b/.test(n)?i.unit:2*i.unit)},languageData:{indentOnInput:/^\s*(?:case .*?:|default:|\{|\})$/,commentTokens:a?void 0:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]},wordChars:"$"}}}const TP=XP({}),RP=XP({json:!0}),WP=XP({jsonld:!0}),qP=XP({typescript:!0});var zP=Object.freeze({__proto__:null,javascript:TP,json:RP,jsonld:WP,typescript:qP}),YP=["and","as","block","endblock","by","cycle","debug","else","elif","extends","filter","endfilter","firstof","for","endfor","if","endif","ifchanged","endifchanged","ifequal","endifequal","ifnotequal","endifnotequal","in","include","load","not","now","or","parsed","regroup","reversed","spaceless","endspaceless","ssi","templatetag","openblock","closeblock","openvariable","closevariable","openbrace","closebrace","opencomment","closecomment","widthratio","url","with","endwith","get_current_language","trans","endtrans","noop","blocktrans","endblocktrans","get_available_languages","get_current_language_bidi","plural"],ZP=/^[+\-*&%=<>!?|~^]/,UP=/^[:\[\(\{]/,EP=["true","false"],IP=/^(\d[+\-\*\/])?\d+(\.\d+)?/;function VP(e,t){var n=e.peek();if(t.incomment)return e.skipTo("#}")?(e.eatWhile(/\#|}/),t.incomment=!1):e.skipToEnd(),"comment";if(t.intag){if(t.operator){if(t.operator=!1,e.match(EP))return"atom";if(e.match(IP))return"number"}if(t.sign){if(t.sign=!1,e.match(EP))return"atom";if(e.match(IP))return"number"}if(t.instring)return n==t.instring&&(t.instring=!1),e.next(),"string";if("'"==n||'"'==n)return t.instring=n,e.next(),"string";if(e.match(t.intag+"}")||e.eat("-")&&e.match(t.intag+"}"))return t.intag=!1,"tag";if(e.match(ZP))return t.operator=!0,"operator";if(e.match(UP))t.sign=!0;else if(e.eat(" ")||e.sol()){if(e.match(YP))return"keyword";if(e.match(EP))return"atom";if(e.match(IP))return"number";e.sol()&&e.next()}else e.next();return"variable"}if(e.eat("{")){if(e.eat("#"))return t.incomment=!0,e.skipTo("#}")?(e.eatWhile(/\#|}/),t.incomment=!1):e.skipToEnd(),"comment";if(n=e.eat(/\{|%/))return t.intag=n,"{"==n&&(t.intag="}"),e.eat("-"),"tag"}e.next()}YP=new RegExp("(("+YP.join(")|(")+"))\\b"),EP=new RegExp("(("+EP.join(")|(")+"))\\b");const CP={startState:function(){return{tokenize:VP}},token:function(e,t){return t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"{#",close:"#}"}}}};var AP=Object.freeze({__proto__:null,jinja2:CP});function GP(e,t){return void 0===t&&(t="\\b"),new RegExp("^(("+e.join(")|(")+"))"+t)}var jP=GP(["[<>]:","[<>=]=","<<=?",">>>?=?","=>","->","\\/\\/","[\\\\%*+\\-<>!=\\/^|&\\u00F7\\u22BB]=?","\\?","\\$","~",":","\\u00D7","\\u2208","\\u2209","\\u220B","\\u220C","\\u2218","\\u221A","\\u221B","\\u2229","\\u222A","\\u2260","\\u2264","\\u2265","\\u2286","\\u2288","\\u228A","\\u22C5","\\b(in|isa)\\b(?!.?\\()"],""),LP=/^[;,()[\]{}]/,NP=/^[_A-Za-z\u00A1-\u2217\u2219-\uFFFF][\w\u00A1-\u2217\u2219-\uFFFF]*!*/,DP=GP(["\\\\[0-7]{1,3}","\\\\x[A-Fa-f0-9]{1,2}","\\\\[abefnrtv0%?'\"\\\\]","([^\\u0027\\u005C\\uD800-\\uDFFF]|[\\uD800-\\uDFFF][\\uDC00-\\uDFFF])"],"'"),MP=["if","else","elseif","while","for","begin","let","end","do","try","catch","finally","return","break","continue","global","local","const","export","import","importall","using","function","where","macro","module","baremodule","struct","type","mutable","immutable","quote","typealias","abstract","primitive","bitstype"],FP=["true","false","nothing","NaN","Inf"],BP=GP(["begin","function","type","struct","immutable","let","macro","for","while","quote","if","else","elseif","try","finally","catch","do"]),HP=GP(["end","else","elseif","catch","finally"]),KP=GP(MP),JP=GP(FP),ev=/^@[_A-Za-z][\w]*/,tv=/^:[_A-Za-z\u00A1-\uFFFF][\w\u00A1-\uFFFF]*!*/,nv=/^(`|([_A-Za-z\u00A1-\uFFFF]*"("")?))/;function rv(e){return e.nestedArrays>0}function iv(e,t){return void 0===t&&(t=0),e.scopes.length<=t?null:e.scopes[e.scopes.length-(t+1)]}function av(e,t){if(e.match("#=",!1))return t.tokenize=sv,t.tokenize(e,t);var n=t.leavingExpr;if(e.sol()&&(n=!1),t.leavingExpr=!1,n&&e.match(/^'+/))return"operator";if(e.match(/\.{4,}/))return"error";if(e.match(/\.{1,3}/))return"operator";if(e.eatSpace())return null;var r,i=e.peek();if("#"===i)return e.skipToEnd(),"comment";if("["===i&&(t.scopes.push("["),t.nestedArrays++),"("===i&&(t.scopes.push("("),t.nestedGenerators++),rv(t)&&"]"===i){for(;t.scopes.length&&"["!==iv(t);)t.scopes.pop();t.scopes.pop(),t.nestedArrays--,t.leavingExpr=!0}if(function(e){return e.nestedGenerators>0}(t)&&")"===i){for(;t.scopes.length&&"("!==iv(t);)t.scopes.pop();t.scopes.pop(),t.nestedGenerators--,t.leavingExpr=!0}if(rv(t)){if("end"==t.lastToken&&e.match(":"))return"operator";if(e.match("end"))return"number"}if((r=e.match(BP,!1))&&t.scopes.push(r[0]),e.match(HP,!1)&&t.scopes.pop(),e.match(/^::(?![:\$])/))return t.tokenize=ov,t.tokenize(e,t);if(!n&&e.match(tv)||e.match(/:([<>]:|<<=?|>>>?=?|->|\/\/|\.{2,3}|[\.\\%*+\-<>!\/^|&]=?|[~\?\$])/))return"builtin";if(e.match(jP))return"operator";if(e.match(/^\.?\d/,!1)){var a=RegExp(/^im\b/),o=!1;if(e.match(/^0x\.[0-9a-f_]+p[\+\-]?[_\d]+/i)&&(o=!0),e.match(/^0x[0-9a-f_]+/i)&&(o=!0),e.match(/^0b[01_]+/i)&&(o=!0),e.match(/^0o[0-7_]+/i)&&(o=!0),e.match(/^(?:(?:\d[_\d]*)?\.(?!\.)(?:\d[_\d]*)?|\d[_\d]*\.(?!\.)(?:\d[_\d]*))?([Eef][\+\-]?[_\d]+)?/i)&&(o=!0),e.match(/^\d[_\d]*(e[\+\-]?\d+)?/i)&&(o=!0),o)return e.match(a),t.leavingExpr=!0,"number"}if(e.match("'"))return t.tokenize=Ov,t.tokenize(e,t);if(e.match(nv))return t.tokenize=function(e){'"""'===e.substr(-3)?e='"""':'"'===e.substr(-1)&&(e='"');function t(t,n){if(t.eat("\\"))t.next();else{if(t.match(e))return n.tokenize=av,n.leavingExpr=!0,"string";t.eat(/[`"]/)}return t.eatWhile(/[^\\`"]/),"string"}return t}(e.current()),t.tokenize(e,t);if(e.match(ev))return"meta";if(e.match(LP))return null;if(e.match(KP))return"keyword";if(e.match(JP))return"builtin";var s=t.isDefinition||"function"==t.lastToken||"macro"==t.lastToken||"type"==t.lastToken||"struct"==t.lastToken||"immutable"==t.lastToken;return e.match(NP)?s?"."===e.peek()?(t.isDefinition=!0,"variable"):(t.isDefinition=!1,"def"):(t.leavingExpr=!0,"variable"):(e.next(),"error")}function ov(e,t){return e.match(/.*?(?=[,;{}()=\s]|$)/),e.match("{")?t.nestedParameters++:e.match("}")&&t.nestedParameters>0&&t.nestedParameters--,t.nestedParameters>0?e.match(/.*?(?={|})/)||e.next():0==t.nestedParameters&&(t.tokenize=av),"builtin"}function sv(e,t){return e.match("#=")&&t.nestedComments++,e.match(/.*?(?=(#=|=#))/)||e.skipToEnd(),e.match("=#")&&(t.nestedComments--,0==t.nestedComments&&(t.tokenize=av)),"comment"}function Ov(e,t){var n,r=!1;if(e.match(DP))r=!0;else if(n=e.match(/\\u([a-f0-9]{1,4})(?=')/i)){((i=parseInt(n[1],16))<=55295||i>=57344)&&(r=!0,e.next())}else if(n=e.match(/\\U([A-Fa-f0-9]{5,8})(?=')/)){var i;(i=parseInt(n[1],16))<=1114111&&(r=!0,e.next())}return r?(t.leavingExpr=!0,t.tokenize=av,"string"):(e.match(/^[^']+(?=')/)||e.skipToEnd(),e.match("'")&&(t.tokenize=av),"error")}const lv={startState:function(){return{tokenize:av,scopes:[],lastToken:null,leavingExpr:!1,isDefinition:!1,nestedArrays:0,nestedComments:0,nestedGenerators:0,nestedParameters:0,firstParenPos:-1}},token:function(e,t){var n=t.tokenize(e,t),r=e.current();return r&&n&&(t.lastToken=r),n},indent:function(e,t,n){var r=0;return("]"===t||")"===t||/^end\b/.test(t)||/^else/.test(t)||/^catch\b/.test(t)||/^elseif\b/.test(t)||/^finally/.test(t))&&(r=-1),(e.scopes.length+r)*n.unit},languageData:{indentOnInput:/^\s*(end|else|catch|finally)\b$/,commentTokens:{line:"#",block:{open:"#=",close:"=#"}},closeBrackets:{brackets:["(","[","{",'"']},autocomplete:MP.concat(FP)}};var cv=Object.freeze({__proto__:null,julia:lv}),uv=function(e,t){var n=t.next||"start";if(n){t.next=t.next;var r=mv[n];if(r.splice){for(var i=0;i|\\b(?:e(?:lse|xport)|d(?:o|efault)|t(?:ry|hen)|finally|import(?:\\s*all)?|const|var|let|new|catch(?:\\s*"+hv+")?))\\s*$"),pv="(?![$\\w]|-[A-Za-z]|\\s*:(?![:=]))",fv={token:"string",regex:".+"},mv={start:[{token:"docComment",regex:"/\\*",next:"comment"},{token:"comment",regex:"#.*"},{token:"keyword",regex:"(?:t(?:h(?:is|row|en)|ry|ypeof!?)|c(?:on(?:tinue|st)|a(?:se|tch)|lass)|i(?:n(?:stanceof)?|mp(?:ort(?:\\s+all)?|lements)|[fs])|d(?:e(?:fault|lete|bugger)|o)|f(?:or(?:\\s+own)?|inally|unction)|s(?:uper|witch)|e(?:lse|x(?:tends|port)|val)|a(?:nd|rguments)|n(?:ew|ot)|un(?:less|til)|w(?:hile|ith)|o[fr]|return|break|let|var|loop)"+pv},{token:"atom",regex:"(?:true|false|yes|no|on|off|null|void|undefined)"+pv},{token:"invalid",regex:"(?:p(?:ackage|r(?:ivate|otected)|ublic)|i(?:mplements|nterface)|enum|static|yield)"+pv},{token:"className.standard",regex:"(?:R(?:e(?:gExp|ferenceError)|angeError)|S(?:tring|yntaxError)|E(?:rror|valError)|Array|Boolean|Date|Function|Number|Object|TypeError|URIError)"+pv},{token:"variableName.function.standard",regex:"(?:is(?:NaN|Finite)|parse(?:Int|Float)|Math|JSON|(?:en|de)codeURI(?:Component)?)"+pv},{token:"variableName.standard",regex:"(?:t(?:hat|il|o)|f(?:rom|allthrough)|it|by|e)"+pv},{token:"variableName",regex:hv+"\\s*:(?![:=])"},{token:"variableName",regex:hv},{token:"operatorKeyword",regex:"(?:\\.{3}|\\s+\\?)"},{token:"keyword",regex:"(?:@+|::|\\.\\.)",next:"key"},{token:"operatorKeyword",regex:"\\.\\s*",next:"key"},{token:"string",regex:"\\\\\\S[^\\s,;)}\\]]*"},{token:"docString",regex:"'''",next:"qdoc"},{token:"docString",regex:'"""',next:"qqdoc"},{token:"string",regex:"'",next:"qstring"},{token:"string",regex:'"',next:"qqstring"},{token:"string",regex:"`",next:"js"},{token:"string",regex:"<\\[",next:"words"},{token:"regexp",regex:"//",next:"heregex"},{token:"regexp",regex:"\\/(?:[^[\\/\\n\\\\]*(?:(?:\\\\.|\\[[^\\]\\n\\\\]*(?:\\\\.[^\\]\\n\\\\]*)*\\])[^[\\/\\n\\\\]*)*)\\/[gimy$]{0,4}",next:"key"},{token:"number",regex:"(?:0x[\\da-fA-F][\\da-fA-F_]*|(?:[2-9]|[12]\\d|3[0-6])r[\\da-zA-Z][\\da-zA-Z_]*|(?:\\d[\\d_]*(?:\\.\\d[\\d_]*)?|\\.\\d[\\d_]*)(?:e[+-]?\\d[\\d_]*)?[\\w$]*)"},{token:"paren",regex:"[({[]"},{token:"paren",regex:"[)}\\]]",next:"key"},{token:"operatorKeyword",regex:"\\S+"},{token:"content",regex:"\\s+"}],heregex:[{token:"regexp",regex:".*?//[gimy$?]{0,4}",next:"start"},{token:"regexp",regex:"\\s*#{"},{token:"comment",regex:"\\s+(?:#.*)?"},{token:"regexp",regex:"\\S+"}],key:[{token:"operatorKeyword",regex:"[.?@!]+"},{token:"variableName",regex:hv,next:"start"},{token:"content",regex:"",next:"start"}],comment:[{token:"docComment",regex:".*?\\*/",next:"start"},{token:"docComment",regex:".+"}],qdoc:[{token:"string",regex:".*?'''",next:"key"},fv],qqdoc:[{token:"string",regex:'.*?"""',next:"key"},fv],qstring:[{token:"string",regex:"[^\\\\']*(?:\\\\.[^\\\\']*)*'",next:"key"},fv],qqstring:[{token:"string",regex:'[^\\\\"]*(?:\\\\.[^\\\\"]*)*"',next:"key"},fv],js:[{token:"string",regex:"[^\\\\`]*(?:\\\\.[^\\\\`]*)*`",next:"key"},fv],words:[{token:"string",regex:".*?\\]>",next:"key"},fv]};for(var gv in mv){var Qv=mv[gv];if(Qv.splice)for(var $v=0,bv=Qv.length;$v!?^\/\|]/;function Vv(e,t,n){return t.tokenize=n,n(e,t)}function Cv(e,t){var n=t.beforeParams;t.beforeParams=!1;var r=e.next();if(/[\[\]{}\(\),\.]/.test(r))return"("==r&&n?t.inParams=!0:")"==r&&(t.inParams=!1),null;if(/\d/.test(r))return e.eatWhile(/[\w\.]/),"number";if("\\"==r)return e.eat("\\"),e.eat(/./),"number";if("/"==r&&e.eat("*"))return Vv(e,t,Av);if(";"==r&&e.match(/ *\( *\(/))return Vv(e,t,Gv);if(";"!=r||t.inParams){if('"'==r)return e.eat(/"/),"keyword";if("$"==r)return e.eatWhile(/[$_a-z0-9A-Z\.:]/),Zv&&Zv.propertyIsEnumerable(e.current().toLowerCase())?"keyword":(t.beforeParams=!0,"builtin");if("%"==r)return e.eatWhile(/[^,\s()]/),t.beforeParams=!0,"string";if(Iv.test(r))return e.eatWhile(Iv),"operator";e.eatWhile(/[\w\$_{}]/);var i=e.current().toLowerCase();return Uv&&Uv.propertyIsEnumerable(i)?"keyword":Ev&&Ev.propertyIsEnumerable(i)?(t.beforeParams=!0,"keyword"):null}return e.skipToEnd(),"comment"}function Av(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=Cv;break}r="*"==n}return"comment"}function Gv(e,t){for(var n,r=0;n=e.next();){if(";"==n&&2==r){t.tokenize=Cv;break}")"==n?r++:" "!=n&&(r=0)}return"meta"}const jv={startState:function(){return{tokenize:Cv,beforeParams:!1,inParams:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)}};var Lv=Object.freeze({__proto__:null,mirc:jv}),Nv="[a-zA-Z\\$][a-zA-Z0-9\\$]*",Dv="(?:\\.\\d+|\\d+\\.\\d*|\\d+)",Mv="(?:`(?:`?"+Dv+")?)",Fv=new RegExp("(?:(?:\\d+)(?:\\^\\^(?:\\.\\w+|\\w+\\.\\w*|\\w+)"+Mv+"?(?:\\*\\^[+-]?\\d+)?))"),Bv=new RegExp("(?:"+Dv+Mv+"?(?:\\*\\^[+-]?\\d+)?)"),Hv=new RegExp("(?:`?)(?:"+Nv+")(?:`(?:"+Nv+"))*(?:`?)");function Kv(e,t){var n;return'"'===(n=e.next())?(t.tokenize=Jv,t.tokenize(e,t)):"("===n&&e.eat("*")?(t.commentLevel++,t.tokenize=eS,t.tokenize(e,t)):(e.backUp(1),e.match(Fv,!0,!1)||e.match(Bv,!0,!1)?"number":e.match(/(?:In|Out)\[[0-9]*\]/,!0,!1)?"atom":e.match(/([a-zA-Z\$][a-zA-Z0-9\$]*(?:`[a-zA-Z0-9\$]+)*::usage)/,!0,!1)?"meta":e.match(/([a-zA-Z\$][a-zA-Z0-9\$]*(?:`[a-zA-Z0-9\$]+)*::[a-zA-Z\$][a-zA-Z0-9\$]*):?/,!0,!1)?"string.special":e.match(/([a-zA-Z\$][a-zA-Z0-9\$]*\s*:)(?:(?:[a-zA-Z\$][a-zA-Z0-9\$]*)|(?:[^:=>~@\^\&\*\)\[\]'\?,\|])).*/,!0,!1)||e.match(/[a-zA-Z\$][a-zA-Z0-9\$]*_+[a-zA-Z\$][a-zA-Z0-9\$]*/,!0,!1)||e.match(/[a-zA-Z\$][a-zA-Z0-9\$]*_+/,!0,!1)||e.match(/_+[a-zA-Z\$][a-zA-Z0-9\$]*/,!0,!1)?"variableName.special":e.match(/\\\[[a-zA-Z\$][a-zA-Z0-9\$]*\]/,!0,!1)?"character":e.match(/(?:\[|\]|{|}|\(|\))/,!0,!1)?"bracket":e.match(/(?:#[a-zA-Z\$][a-zA-Z0-9\$]*|#+[0-9]?)/,!0,!1)?"variableName.constant":e.match(Hv,!0,!1)?"keyword":e.match(/(?:\\|\+|\-|\*|\/|,|;|\.|:|@|~|=|>|<|&|\||_|`|'|\^|\?|!|%)/,!0,!1)?"operator":(e.next(),"error"))}function Jv(e,t){for(var n,r=!1,i=!1;null!=(n=e.next());){if('"'===n&&!i){r=!0;break}i=!i&&"\\"===n}return r&&!i&&(t.tokenize=Kv),"string"}function eS(e,t){for(var n,r;t.commentLevel>0&&null!=(r=e.next());)"("===n&&"*"===r&&t.commentLevel++,"*"===n&&")"===r&&t.commentLevel--,n=r;return t.commentLevel<=0&&(t.tokenize=Kv),"comment"}const tS={startState:function(){return{tokenize:Kv,commentLevel:0}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"(*",close:"*)"}}}};var nS=Object.freeze({__proto__:null,mathematica:tS});function rS(e){for(var t={},n=e.split(" "),r=0;r+\-\/^\[\]]/,lS=/(:=|<=|>=|==|<>|\.\+|\.\-|\.\*|\.\/|\.\^)/,cS=/[0-9]/,uS=/[_a-zA-Z]/;function hS(e,t){return e.skipToEnd(),t.tokenize=null,"comment"}function dS(e,t){for(var n,r=!1;n=e.next();){if(r&&"/"==n){t.tokenize=null;break}r="*"==n}return"comment"}function pS(e,t){for(var n,r=!1;null!=(n=e.next());){if('"'==n&&!r){t.tokenize=null,t.sol=!1;break}r=!r&&"\\"==n}return"string"}function fS(e,t){for(e.eatWhile(cS);e.eat(cS)||e.eat(uS););var n=e.current();return!t.sol||"package"!=n&&"model"!=n&&"when"!=n&&"connector"!=n?t.sol&&"end"==n&&t.level>0&&t.level--:t.level++,t.tokenize=null,t.sol=!1,iS.propertyIsEnumerable(n)?"keyword":aS.propertyIsEnumerable(n)?"builtin":oS.propertyIsEnumerable(n)?"atom":"variable"}function mS(e,t){for(;e.eat(/[^']/););return t.tokenize=null,t.sol=!1,e.eat("'")?"variable":"error"}function gS(e,t){return e.eatWhile(cS),e.eat(".")&&e.eatWhile(cS),(e.eat("e")||e.eat("E"))&&(e.eat("-")||e.eat("+"),e.eatWhile(cS)),t.tokenize=null,t.sol=!1,"number"}const QS={startState:function(){return{tokenize:null,level:0,sol:!0}},token:function(e,t){if(null!=t.tokenize)return t.tokenize(e,t);if(e.sol()&&(t.sol=!0),e.eatSpace())return t.tokenize=null,null;var n=e.next();if("/"==n&&e.eat("/"))t.tokenize=hS;else if("/"==n&&e.eat("*"))t.tokenize=dS;else{if(lS.test(n+e.peek()))return e.next(),t.tokenize=null,"operator";if(OS.test(n))return t.tokenize=null,"operator";if(uS.test(n))t.tokenize=fS;else if("'"==n&&e.peek()&&"'"!=e.peek())t.tokenize=mS;else if('"'==n)t.tokenize=pS;else{if(!cS.test(n))return t.tokenize=null,"error";t.tokenize=gS}}return t.tokenize(e,t)},indent:function(e,t,n){if(null!=e.tokenize)return null;var r=e.level;return/(algorithm)/.test(t)&&r--,/(equation)/.test(t)&&r--,/(initial algorithm)/.test(t)&&r--,/(initial equation)/.test(t)&&r--,/(end)/.test(t)&&r--,r>0?n.unit*r:0},languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:sS}};var $S=Object.freeze({__proto__:null,modelica:QS});function bS(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var xS=new RegExp("^[\\+\\-\\*/&#!_?\\\\<>=\\'\\[\\]]"),wS=new RegExp("^(('=)|(<=)|(>=)|('>)|('<)|([[)|(]])|(^$))"),kS=new RegExp("^[\\.,:]"),yS=new RegExp("[()]"),PS=new RegExp("^[%A-Za-z][A-Za-z0-9]*"),vS=bS(["\\$ascii","\\$char","\\$data","\\$ecode","\\$estack","\\$etrap","\\$extract","\\$find","\\$fnumber","\\$get","\\$horolog","\\$io","\\$increment","\\$job","\\$justify","\\$length","\\$name","\\$next","\\$order","\\$piece","\\$qlength","\\$qsubscript","\\$query","\\$quit","\\$random","\\$reverse","\\$select","\\$stack","\\$test","\\$text","\\$translate","\\$view","\\$x","\\$y","\\$a","\\$c","\\$d","\\$e","\\$ec","\\$es","\\$et","\\$f","\\$fn","\\$g","\\$h","\\$i","\\$j","\\$l","\\$n","\\$na","\\$o","\\$p","\\$q","\\$ql","\\$qs","\\$r","\\$re","\\$s","\\$st","\\$t","\\$tr","\\$v","\\$z"]),SS=bS(["break","close","do","else","for","goto","halt","hang","if","job","kill","lock","merge","new","open","quit","read","set","tcommit","trollback","tstart","use","view","write","xecute","b","c","d","e","f","g","h","i","j","k","l","m","n","o","q","r","s","tc","tro","ts","u","v","w","x"]);const _S={startState:function(){return{label:!1,commandMode:0}},token:function(e,t){var n=function(e,t){e.sol()&&(t.label=!0,t.commandMode=0);var n=e.peek();return" "==n||"\t"==n?(t.label=!1,0==t.commandMode?t.commandMode=1:(t.commandMode<0||2==t.commandMode)&&(t.commandMode=0)):"."!=n&&t.commandMode>0&&(t.commandMode=":"==n?-1:2),"("!==n&&"\t"!==n||(t.label=!1),";"===n?(e.skipToEnd(),"comment"):e.match(/^[-+]?\d+(\.\d+)?([eE][-+]?\d+)?/)?"number":'"'==n?e.skipTo('"')?(e.next(),"string"):(e.skipToEnd(),"error"):e.match(wS)||e.match(xS)?"operator":e.match(kS)?null:yS.test(n)?(e.next(),"bracket"):t.commandMode>0&&e.match(SS)?"controlKeyword":e.match(vS)?"builtin":e.match(PS)?"variable":"$"===n||"^"===n?(e.next(),"builtin"):"@"===n?(e.next(),"string.special"):/[\w%]/.test(n)?(e.eatWhile(/[\w%]/),"variable"):(e.next(),"error")}(e,t);return t.label?"tag":n}};var XS=Object.freeze({__proto__:null,mumps:_S}),TS=["From","Sender","Reply-To","To","Cc","Bcc","Message-ID","In-Reply-To","References","Resent-From","Resent-Sender","Resent-To","Resent-Cc","Resent-Bcc","Resent-Message-ID","Return-Path","Received"],RS=["Date","Subject","Comments","Keywords","Resent-Date"],WS=/^[ \t]/,qS=/^From /,zS=new RegExp("^("+TS.join("|")+"): "),YS=new RegExp("^("+RS.join("|")+"): "),ZS=/^[^:]+:/,US=/^[^ ]+@[^ ]+/,ES=/^.*?(?=[^ ]+?@[^ ]+)/,IS=/^<.*?>/,VS=/^.*?(?=<.*>)/;const CS={startState:function(){return{inSeparator:!1,inHeader:!1,emailPermitted:!1,header:null,inHeaders:!1}},token:function(e,t){if(e.sol()){if(t.inSeparator=!1,t.inHeader&&e.match(WS))return null;if(t.inHeader=!1,t.header=null,e.match(qS))return t.inHeaders=!0,t.inSeparator=!0,"atom";var n,r=!1;return(n=e.match(YS))||(r=!0)&&(n=e.match(zS))?(t.inHeaders=!0,t.inHeader=!0,t.emailPermitted=r,t.header=n[1],"atom"):t.inHeaders&&(n=e.match(ZS))?(t.inHeader=!0,t.emailPermitted=!0,t.header=n[1],"atom"):(t.inHeaders=!1,e.skipToEnd(),null)}if(t.inSeparator)return e.match(US)?"link":(e.match(ES)||e.skipToEnd(),"atom");if(t.inHeader){var i=function(e){return"Subject"===e?"header":"string"}(t.header);if(t.emailPermitted){if(e.match(IS))return i+" link";if(e.match(VS))return i}return e.skipToEnd(),i}return e.skipToEnd(),null},blankLine:function(e){e.inHeaders=e.inSeparator=e.inHeader=!1},languageData:{autocomplete:TS.concat(RS)}};var AS=Object.freeze({__proto__:null,mbox:CS});function GS(e){for(var t={},n=e.split(" "),r=0;r*\/]/.test(r)?MS(null,"select-op"):/[;{}:\[\]]/.test(r)?MS(null,r):(e.eatWhile(/[\w\\\-]/),MS("variable","variable")):MS(null,"compare"):void MS(null,"compare")}function BS(e,t){for(var n,r=!1;null!=(n=e.next());){if(r&&"/"==n){t.tokenize=FS;break}r="*"==n}return MS("comment","comment")}function HS(e,t){for(var n,r=0;null!=(n=e.next());){if(r>=2&&">"==n){t.tokenize=FS;break}r="-"==n?r+1:0}return MS("comment","comment")}const KS={startState:function(){return{tokenize:FS,baseIndent:0,stack:[]}},token:function(e,t){if(e.eatSpace())return null;jS=null;var n=t.tokenize(e,t),r=t.stack[t.stack.length-1];return"hash"==jS&&"rule"==r?n="atom":"variable"==n&&("rule"==r?n="number":r&&"@media{"!=r||(n="tag")),"rule"==r&&/^[\{\};]$/.test(jS)&&t.stack.pop(),"{"==jS?"@media"==r?t.stack[t.stack.length-1]="@media{":t.stack.push("{"):"}"==jS?t.stack.pop():"@media"==jS?t.stack.push("@media"):"{"==r&&"comment"!=jS&&t.stack.push("rule"),n},indent:function(e,t,n){var r=e.stack.length;return/^\}/.test(t)&&(r-="rule"==e.stack[e.stack.length-1]?2:1),e.baseIndent+r*n.unit},languageData:{indentOnInput:/^\s*\}$/}};var JS=Object.freeze({__proto__:null,nginx:KS});const e_=rb({start:[{regex:/(?:[+-]?)(?:0x[\d,a-f]+)|(?:0o[0-7]+)|(?:0b[0,1]+)|(?:\d+.?\d*)/,token:"number"},{regex:/"(?:[^\\"]|\\.)*"?/,token:"string"},{regex:/'(?:[^\\']|\\.)*'?/,token:"string"},{regex:/`(?:[^\\`]|\\.)*`?/,token:"string"},{regex:/^\s*(?:\!(include|addincludedir|addplugindir|appendfile|cd|delfile|echo|error|execute|packhdr|pragma|finalize|getdllversion|gettlbversion|system|tempfile|warning|verbose|define|undef|insertmacro|macro|macroend|makensis|searchparse|searchreplace))\b/,token:"keyword"},{regex:/^\s*(?:\!(if(?:n?def)?|ifmacron?def|macro))\b/,token:"keyword",indent:!0},{regex:/^\s*(?:\!(else|endif|macroend))\b/,token:"keyword",dedent:!0},{regex:/^\s*(?:Abort|AddBrandingImage|AddSize|AllowRootDirInstall|AllowSkipFiles|AutoCloseWindow|BGFont|BGGradient|BrandingText|BringToFront|Call|CallInstDLL|Caption|ChangeUI|CheckBitmap|ClearErrors|CompletedText|ComponentText|CopyFiles|CRCCheck|CreateDirectory|CreateFont|CreateShortCut|Delete|DeleteINISec|DeleteINIStr|DeleteRegKey|DeleteRegValue|DetailPrint|DetailsButtonText|DirText|DirVar|DirVerify|EnableWindow|EnumRegKey|EnumRegValue|Exch|Exec|ExecShell|ExecShellWait|ExecWait|ExpandEnvStrings|File|FileBufSize|FileClose|FileErrorText|FileOpen|FileRead|FileReadByte|FileReadUTF16LE|FileReadWord|FileWriteUTF16LE|FileSeek|FileWrite|FileWriteByte|FileWriteWord|FindClose|FindFirst|FindNext|FindWindow|FlushINI|GetCurInstType|GetCurrentAddress|GetDlgItem|GetDLLVersion|GetDLLVersionLocal|GetErrorLevel|GetFileTime|GetFileTimeLocal|GetFullPathName|GetFunctionAddress|GetInstDirError|GetKnownFolderPath|GetLabelAddress|GetTempFileName|Goto|HideWindow|Icon|IfAbort|IfErrors|IfFileExists|IfRebootFlag|IfRtlLanguage|IfShellVarContextAll|IfSilent|InitPluginsDir|InstallButtonText|InstallColors|InstallDir|InstallDirRegKey|InstProgressFlags|InstType|InstTypeGetText|InstTypeSetText|Int64Cmp|Int64CmpU|Int64Fmt|IntCmp|IntCmpU|IntFmt|IntOp|IntPtrCmp|IntPtrCmpU|IntPtrOp|IsWindow|LangString|LicenseBkColor|LicenseData|LicenseForceSelection|LicenseLangString|LicenseText|LoadAndSetImage|LoadLanguageFile|LockWindow|LogSet|LogText|ManifestDPIAware|ManifestLongPathAware|ManifestMaxVersionTested|ManifestSupportedOS|MessageBox|MiscButtonText|Name|Nop|OutFile|Page|PageCallbacks|PEAddResource|PEDllCharacteristics|PERemoveResource|PESubsysVer|Pop|Push|Quit|ReadEnvStr|ReadINIStr|ReadRegDWORD|ReadRegStr|Reboot|RegDLL|Rename|RequestExecutionLevel|ReserveFile|Return|RMDir|SearchPath|SectionGetFlags|SectionGetInstTypes|SectionGetSize|SectionGetText|SectionIn|SectionSetFlags|SectionSetInstTypes|SectionSetSize|SectionSetText|SendMessage|SetAutoClose|SetBrandingImage|SetCompress|SetCompressor|SetCompressorDictSize|SetCtlColors|SetCurInstType|SetDatablockOptimize|SetDateSave|SetDetailsPrint|SetDetailsView|SetErrorLevel|SetErrors|SetFileAttributes|SetFont|SetOutPath|SetOverwrite|SetRebootFlag|SetRegView|SetShellVarContext|SetSilent|ShowInstDetails|ShowUninstDetails|ShowWindow|SilentInstall|SilentUnInstall|Sleep|SpaceTexts|StrCmp|StrCmpS|StrCpy|StrLen|SubCaption|Unicode|UninstallButtonText|UninstallCaption|UninstallIcon|UninstallSubCaption|UninstallText|UninstPage|UnRegDLL|Var|VIAddVersionKey|VIFileVersion|VIProductVersion|WindowIcon|WriteINIStr|WriteRegBin|WriteRegDWORD|WriteRegExpandStr|WriteRegMultiStr|WriteRegNone|WriteRegStr|WriteUninstaller|XPStyle)\b/,token:"keyword"},{regex:/^\s*(?:Function|PageEx|Section(?:Group)?)\b/,token:"keyword",indent:!0},{regex:/^\s*(?:(Function|PageEx|Section(?:Group)?)End)\b/,token:"keyword",dedent:!0},{regex:/\b(?:ARCHIVE|FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_NORMAL|FILE_ATTRIBUTE_OFFLINE|FILE_ATTRIBUTE_READONLY|FILE_ATTRIBUTE_SYSTEM|FILE_ATTRIBUTE_TEMPORARY|HIDDEN|HKCC|HKCR(32|64)?|HKCU(32|64)?|HKDD|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_DYN_DATA|HKEY_LOCAL_MACHINE|HKEY_PERFORMANCE_DATA|HKEY_USERS|HKLM(32|64)?|HKPD|HKU|IDABORT|IDCANCEL|IDD_DIR|IDD_INST|IDD_INSTFILES|IDD_LICENSE|IDD_SELCOM|IDD_UNINST|IDD_VERIFY|IDIGNORE|IDNO|IDOK|IDRETRY|IDYES|MB_ABORTRETRYIGNORE|MB_DEFBUTTON1|MB_DEFBUTTON2|MB_DEFBUTTON3|MB_DEFBUTTON4|MB_ICONEXCLAMATION|MB_ICONINFORMATION|MB_ICONQUESTION|MB_ICONSTOP|MB_OK|MB_OKCANCEL|MB_RETRYCANCEL|MB_RIGHT|MB_RTLREADING|MB_SETFOREGROUND|MB_TOPMOST|MB_USERICON|MB_YESNO|MB_YESNOCANCEL|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SW_HIDE|SW_SHOWDEFAULT|SW_SHOWMAXIMIZED|SW_SHOWMINIMIZED|SW_SHOWNORMAL|SYSTEM|TEMPORARY)\b/,token:"atom"},{regex:/\b(?:admin|all|auto|both|bottom|bzip2|components|current|custom|directory|false|force|hide|highest|ifdiff|ifnewer|instfiles|lastused|leave|left|license|listonly|lzma|nevershow|none|normal|notset|off|on|right|show|silent|silentlog|textonly|top|true|try|un\.components|un\.custom|un\.directory|un\.instfiles|un\.license|uninstConfirm|user|Win10|Win7|Win8|WinVista|zlib)\b/,token:"builtin"},{regex:/\$\{(?:And(?:If(?:Not)?|Unless)|Break|Case(?:Else)?|Continue|Default|Do(?:Until|While)?|Else(?:If(?:Not)?|Unless)?|End(?:If|Select|Switch)|Exit(?:Do|For|While)|For(?:Each)?|If(?:Cmd|Not(?:Then)?|Then)?|Loop(?:Until|While)?|Or(?:If(?:Not)?|Unless)|Select|Switch|Unless|While)\}/,token:"controlKeyword",indent:!0},{regex:/\$\{(?:BannerTrimPath|DirState|DriveSpace|Get(BaseName|Drives|ExeName|ExePath|FileAttributes|FileExt|FileName|FileVersion|Options|OptionsS|Parameters|Parent|Root|Size|Time)|Locate|RefreshShellIcons)\}/,token:"modifier",dedent:!0},{regex:/\$\{(?:Memento(?:Section(?:Done|End|Restore|Save)?|UnselectedSection))\}/,token:"controlKeyword",dedent:!0},{regex:/\$\{(?:Config(?:Read|ReadS|Write|WriteS)|File(?:Join|ReadFromEnd|Recode)|Line(?:Find|Read|Sum)|Text(?:Compare|CompareS)|TrimNewLines)\}/,token:"keyword",dedent:!0},{regex:/\$\{(?:(?:At(?:Least|Most)|Is)(?:ServicePack|Win(?:7|8|10|95|98|200(?:0|3|8(?:R2)?)|ME|NT4|Vista|XP))|Is(?:NT|Server))\}/,token:"variable",dedent:!0},{regex:/\$\{(?:StrFilterS?|Version(?:Compare|Convert)|Word(?:AddS?|Find(?:(?:2|3)X)?S?|InsertS?|ReplaceS?))\}/,token:"keyword",dedent:!0},{regex:/\$\{(?:RunningX64)\}/,token:"variable",dedent:!0},{regex:/\$\{(?:Disable|Enable)X64FSRedirection\}/,token:"keyword",dedent:!0},{regex:/(#|;).*/,token:"comment"},{regex:/\/\*/,token:"comment",next:"comment"},{regex:/[-+\/*=<>!]+/,token:"operator"},{regex:/\$\w+/,token:"variable"},{regex:/\${[\w\.:-]+}/,token:"variableName.constant"},{regex:/\$\([\w\.:-]+\)/,token:"atom"}],comment:[{regex:/.*?\*\//,token:"comment",next:"start"},{regex:/.*/,token:"comment"}],languageData:{indentOnInput:/^\s*((Function|PageEx|Section|Section(Group)?)End|(\!(endif|macroend))|\$\{(End(If|Unless|While)|Loop(Until)|Next)\})$/,commentTokens:{line:"#",block:{open:"/*",close:"*/"}}}});var t_=Object.freeze({__proto__:null,nsis:e_}),n_=0,r_=1,i_=2,a_=3,o_=4,s_=5,O_=6,l_=7,c_=8,u_=9,h_=10,d_=11,p_=12;function f_(e,t){var n,r=e.location;n=r==n_&&"<"==t?r_:r==n_&&"_"==t?i_:r==a_&&"<"==t?o_:r==s_&&"<"==t?O_:r==s_&&"_"==t?l_:r==s_&&'"'==t?c_:r==r_&&">"==t||r==i_&&" "==t?a_:r==o_&&">"==t?s_:r==O_&&">"==t||r==l_&&" "==t||r==c_&&'"'==t||r==u_&&" "==t||r==h_&&">"==t?d_:r==c_&&"@"==t?u_:r==c_&&"^"==t?h_:" "!=t||r!=n_&&r!=a_&&r!=s_&&r!=d_?r==d_&&"."==t?n_:p_:r,e.location=n}const m_={startState:function(){return{location:n_,uris:[],anchors:[],bnodes:[],langs:[],types:[]}},token:function(e,t){var n=e.next();if("<"==n){f_(t,n);var r="";return e.eatWhile((function(e){return"#"!=e&&">"!=e&&(r+=e,!0)})),t.uris.push(r),e.match("#",!1)?"variable":(e.next(),f_(t,">"),"variable")}if("#"==n){var i="";return e.eatWhile((function(e){return">"!=e&&" "!=e&&(i+=e,!0)})),t.anchors.push(i),"url"}if(">"==n)return f_(t,">"),"variable";if("_"==n){f_(t,n);var a="";return e.eatWhile((function(e){return" "!=e&&(a+=e,!0)})),t.bnodes.push(a),e.next(),f_(t," "),"builtin"}if('"'==n)return f_(t,n),e.eatWhile((function(e){return'"'!=e})),e.next(),"@"!=e.peek()&&"^"!=e.peek()&&f_(t,'"'),"string";if("@"==n){f_(t,"@");var o="";return e.eatWhile((function(e){return" "!=e&&(o+=e,!0)})),t.langs.push(o),e.next(),f_(t," "),"string.special"}if("^"==n){e.next(),f_(t,"^");var s="";return e.eatWhile((function(e){return">"!=e&&(s+=e,!0)})),t.types.push(s),e.next(),f_(t,">"),"variable"}" "==n&&f_(t,n),"."==n&&f_(t,n)}};var g_=Object.freeze({__proto__:null,ntriples:m_});function Q_(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var $_=new RegExp("^[\\+\\-\\*/&|\\^~<>!@'\\\\]"),b_=new RegExp("^[\\(\\[\\{\\},:=;\\.]"),x_=new RegExp("^((==)|(~=)|(<=)|(>=)|(<<)|(>>)|(\\.[\\+\\-\\*/\\^\\\\]))"),w_=new RegExp("^((!=)|(\\+=)|(\\-=)|(\\*=)|(/=)|(&=)|(\\|=)|(\\^=))"),k_=new RegExp("^((>>=)|(<<=))"),y_=new RegExp("^[\\]\\)]"),P_=new RegExp("^[_A-Za-z¡-￿][_A-Za-z0-9¡-￿]*"),v_=Q_(["error","eval","function","abs","acos","atan","asin","cos","cosh","exp","log","prod","sum","log10","max","min","sign","sin","sinh","sqrt","tan","reshape","break","zeros","default","margin","round","ones","rand","syn","ceil","floor","size","clear","zeros","eye","mean","std","cov","det","eig","inv","norm","rank","trace","expm","logm","sqrtm","linspace","plot","title","xlabel","ylabel","legend","text","grid","meshgrid","mesh","num2str","fft","ifft","arrayfun","cellfun","input","fliplr","flipud","ismember"]),S_=Q_(["return","case","switch","else","elseif","end","endif","endfunction","if","otherwise","do","for","while","try","catch","classdef","properties","events","methods","global","persistent","endfor","endwhile","printf","sprintf","disp","until","continue","pkg"]);function __(e,t){return e.sol()||"'"!==e.peek()?(t.tokenize=T_,T_(e,t)):(e.next(),t.tokenize=T_,"operator")}function X_(e,t){return e.match(/^.*%}/)?(t.tokenize=T_,"comment"):(e.skipToEnd(),"comment")}function T_(e,t){if(e.eatSpace())return null;if(e.match("%{"))return t.tokenize=X_,e.skipToEnd(),"comment";if(e.match(/^[%#]/))return e.skipToEnd(),"comment";if(e.match(/^[0-9\.+-]/,!1)){if(e.match(/^[+-]?0x[0-9a-fA-F]+[ij]?/))return e.tokenize=T_,"number";if(e.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?[ij]?/))return"number";if(e.match(/^[+-]?\d+([EeDd][+-]?\d+)?[ij]?/))return"number"}if(e.match(Q_(["nan","NaN","inf","Inf"])))return"number";var n=e.match(/^"(?:[^"]|"")*("|$)/)||e.match(/^'(?:[^']|'')*('|$)/);return n?n[1]?"string":"error":e.match(S_)?"keyword":e.match(v_)?"builtin":e.match(P_)?"variable":e.match($_)||e.match(x_)?"operator":e.match(b_)||e.match(w_)||e.match(k_)?null:e.match(y_)?(t.tokenize=__,null):(e.next(),"error")}const R_={startState:function(){return{tokenize:T_}},token:function(e,t){var n=t.tokenize(e,t);return"number"!==n&&"variable"!==n||(t.tokenize=__),n},languageData:{commentTokens:{line:"%"}}};var W_=Object.freeze({__proto__:null,octave:R_});function q_(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var z_=/[\^@!\|<>#~\.\*\-\+\\/,=]/,Y_=/(<-)|(:=)|(=<)|(>=)|(<=)|(<:)|(>:)|(=:)|(\\=)|(\\=:)|(!!)|(==)|(::)/,Z_=/(:::)|(\.\.\.)|(=<:)|(>=:)/,U_=["in","then","else","of","elseof","elsecase","elseif","catch","finally","with","require","prepare","import","export","define","do"],E_=["end"],I_=q_(["true","false","nil","unit"]),V_=q_(["andthen","at","attr","declare","feat","from","lex","mod","div","mode","orelse","parser","prod","prop","scanner","self","syn","token"]),C_=q_(["local","proc","fun","case","class","if","cond","or","dis","choice","not","thread","try","raise","lock","for","suchthat","meth","functor"]),A_=q_(U_),G_=q_(E_);function j_(e,t){if(e.eatSpace())return null;if(e.match(/[{}]/))return"bracket";if(e.match("[]"))return"keyword";if(e.match(Z_)||e.match(Y_))return"operator";if(e.match(I_))return"atom";var n=e.match(C_);if(n)return t.doInCurrentLine?t.doInCurrentLine=!1:t.currentIndent++,"proc"==n[0]||"fun"==n[0]?t.tokenize=D_:"class"==n[0]?t.tokenize=L_:"meth"==n[0]&&(t.tokenize=N_),"keyword";if(e.match(A_)||e.match(V_))return"keyword";if(e.match(G_))return t.currentIndent--,"keyword";var r=e.next();if('"'==r||"'"==r)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=j_),"string"}}(r),t.tokenize(e,t);if(/[~\d]/.test(r)){if("~"==r){if(!/^[0-9]/.test(e.peek()))return null;if("0"==e.next()&&e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^[0-9]*(\.[0-9]+)?([eE][~+]?[0-9]+)?/))return"number"}return"0"==r&&e.match(/^[xX][0-9a-fA-F]+/)||e.match(/^[0-9]*(\.[0-9]+)?([eE][~+]?[0-9]+)?/)?"number":null}return"%"==r?(e.skipToEnd(),"comment"):"/"==r&&e.eat("*")?(t.tokenize=M_,M_(e,t)):z_.test(r)?"operator":(e.eatWhile(/\w/),"variable")}function L_(e,t){return e.eatSpace()?null:(e.match(/([A-Z][A-Za-z0-9_]*)|(`.+`)/),t.tokenize=j_,"type")}function N_(e,t){return e.eatSpace()?null:(e.match(/([a-zA-Z][A-Za-z0-9_]*)|(`.+`)/),t.tokenize=j_,"def")}function D_(e,t){return e.eatSpace()?null:!t.hasPassedFirstStage&&e.eat("{")?(t.hasPassedFirstStage=!0,"bracket"):t.hasPassedFirstStage?(e.match(/([A-Z][A-Za-z0-9_]*)|(`.+`)|\$/),t.hasPassedFirstStage=!1,t.tokenize=j_,"def"):(t.tokenize=j_,null)}function M_(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=j_;break}r="*"==n}return"comment"}const F_={startState:function(){return{tokenize:j_,currentIndent:0,doInCurrentLine:!1,hasPassedFirstStage:!1}},token:function(e,t){return e.sol()&&(t.doInCurrentLine=0),t.tokenize(e,t)},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,"");return r.match(G_)||r.match(A_)||r.match(/(\[])/)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit},languageData:{indentOnInut:(B_=U_.concat(E_),new RegExp("[\\[\\]]|("+B_.join("|")+")$")),commentTokens:{line:"%",block:{open:"/*",close:"*/"}}}};var B_,H_=Object.freeze({__proto__:null,oz:F_});var K_=function(e){for(var t={},n=e.split(" "),r=0;r!?|\/]/;function tX(e,t){var n=e.next();if("#"==n&&t.startOfLine)return e.skipToEnd(),"meta";if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if("("==n&&e.eat("*"))return t.tokenize=nX,nX(e,t);if("{"==n)return t.tokenize=rX,rX(e,t);if(/[\[\]\(\),;\:\.]/.test(n))return null;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n&&e.eat("/"))return e.skipToEnd(),"comment";if(eX.test(n))return e.eatWhile(eX),"operator";e.eatWhile(/[\w\$_]/);var r=e.current();return K_.propertyIsEnumerable(r)?"keyword":J_.propertyIsEnumerable(r)?"atom":"variable"}function nX(e,t){for(var n,r=!1;n=e.next();){if(")"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function rX(e,t){for(var n;n=e.next();)if("}"==n){t.tokenize=null;break}return"comment"}const iX={startState:function(){return{tokenize:null}},token:function(e,t){if(e.eatSpace())return null;var n=(t.tokenize||tX)(e,t);return n},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{block:{open:"(*",close:"*)"}}}};var aX=Object.freeze({__proto__:null,pascal:iX});function oX(e,t){return e.string.charAt(e.pos+(t||0))}function sX(e,t){if(t){var n=e.pos-t;return e.string.substr(n>=0?n:0,t)}return e.string.substr(0,e.pos-1)}function OX(e,t){var n=e.string.length,r=n-e.pos+1;return e.string.substr(e.pos,t&&t=(n=e.string.length-1)?e.pos=n:e.pos=r}var cX={"->":4,"++":4,"--":4,"**":4,"=~":4,"!~":4,"*":4,"/":4,"%":4,x:4,"+":4,"-":4,".":4,"<<":4,">>":4,"<":4,">":4,"<=":4,">=":4,lt:4,gt:4,le:4,ge:4,"==":4,"!=":4,"<=>":4,eq:4,ne:4,cmp:4,"~~":4,"&":4,"|":4,"^":4,"&&":4,"||":4,"//":4,"..":4,"...":4,"?":4,":":4,"=":4,"+=":4,"-=":4,"*=":4,",":4,"=>":4,"::":4,not:4,and:4,or:4,xor:4,BEGIN:[5,1],END:[5,1],PRINT:[5,1],PRINTF:[5,1],GETC:[5,1],READ:[5,1],READLINE:[5,1],DESTROY:[5,1],TIE:[5,1],TIEHANDLE:[5,1],UNTIE:[5,1],STDIN:5,STDIN_TOP:5,STDOUT:5,STDOUT_TOP:5,STDERR:5,STDERR_TOP:5,$ARG:5,$_:5,"@ARG":5,"@_":5,$LIST_SEPARATOR:5,'$"':5,$PROCESS_ID:5,$PID:5,$$:5,$REAL_GROUP_ID:5,$GID:5,"$(":5,$EFFECTIVE_GROUP_ID:5,$EGID:5,"$)":5,$PROGRAM_NAME:5,$0:5,$SUBSCRIPT_SEPARATOR:5,$SUBSEP:5,"$;":5,$REAL_USER_ID:5,$UID:5,"$<":5,$EFFECTIVE_USER_ID:5,$EUID:5,"$>":5,$a:5,$b:5,$COMPILING:5,"$^C":5,$DEBUGGING:5,"$^D":5,"${^ENCODING}":5,$ENV:5,"%ENV":5,$SYSTEM_FD_MAX:5,"$^F":5,"@F":5,"${^GLOBAL_PHASE}":5,"$^H":5,"%^H":5,"@INC":5,"%INC":5,$INPLACE_EDIT:5,"$^I":5,"$^M":5,$OSNAME:5,"$^O":5,"${^OPEN}":5,$PERLDB:5,"$^P":5,$SIG:5,"%SIG":5,$BASETIME:5,"$^T":5,"${^TAINT}":5,"${^UNICODE}":5,"${^UTF8CACHE}":5,"${^UTF8LOCALE}":5,$PERL_VERSION:5,"$^V":5,"${^WIN32_SLOPPY_STAT}":5,$EXECUTABLE_NAME:5,"$^X":5,$1:5,$MATCH:5,"$&":5,"${^MATCH}":5,$PREMATCH:5,"$`":5,"${^PREMATCH}":5,$POSTMATCH:5,"$'":5,"${^POSTMATCH}":5,$LAST_PAREN_MATCH:5,"$+":5,$LAST_SUBMATCH_RESULT:5,"$^N":5,"@LAST_MATCH_END":5,"@+":5,"%LAST_PAREN_MATCH":5,"%+":5,"@LAST_MATCH_START":5,"@-":5,"%LAST_MATCH_START":5,"%-":5,$LAST_REGEXP_CODE_RESULT:5,"$^R":5,"${^RE_DEBUG_FLAGS}":5,"${^RE_TRIE_MAXBUF}":5,$ARGV:5,"@ARGV":5,ARGV:5,ARGVOUT:5,$OUTPUT_FIELD_SEPARATOR:5,$OFS:5,"$,":5,$INPUT_LINE_NUMBER:5,$NR:5,"$.":5,$INPUT_RECORD_SEPARATOR:5,$RS:5,"$/":5,$OUTPUT_RECORD_SEPARATOR:5,$ORS:5,"$\\":5,$OUTPUT_AUTOFLUSH:5,"$|":5,$ACCUMULATOR:5,"$^A":5,$FORMAT_FORMFEED:5,"$^L":5,$FORMAT_PAGE_NUMBER:5,"$%":5,$FORMAT_LINES_LEFT:5,"$-":5,$FORMAT_LINE_BREAK_CHARACTERS:5,"$:":5,$FORMAT_LINES_PER_PAGE:5,"$=":5,$FORMAT_TOP_NAME:5,"$^":5,$FORMAT_NAME:5,"$~":5,"${^CHILD_ERROR_NATIVE}":5,$EXTENDED_OS_ERROR:5,"$^E":5,$EXCEPTIONS_BEING_CAUGHT:5,"$^S":5,$WARNING:5,"$^W":5,"${^WARNING_BITS}":5,$OS_ERROR:5,$ERRNO:5,"$!":5,"%OS_ERROR":5,"%ERRNO":5,"%!":5,$CHILD_ERROR:5,"$?":5,$EVAL_ERROR:5,"$@":5,$OFMT:5,"$#":5,"$*":5,$ARRAY_BASE:5,"$[":5,$OLD_PERL_VERSION:5,"$]":5,if:[1,1],elsif:[1,1],else:[1,1],while:[1,1],unless:[1,1],for:[1,1],foreach:[1,1],abs:1,accept:1,alarm:1,atan2:1,bind:1,binmode:1,bless:1,bootstrap:1,break:1,caller:1,chdir:1,chmod:1,chomp:1,chop:1,chown:1,chr:1,chroot:1,close:1,closedir:1,connect:1,continue:[1,1],cos:1,crypt:1,dbmclose:1,dbmopen:1,default:1,defined:1,delete:1,die:1,do:1,dump:1,each:1,endgrent:1,endhostent:1,endnetent:1,endprotoent:1,endpwent:1,endservent:1,eof:1,eval:1,exec:1,exists:1,exit:1,exp:1,fcntl:1,fileno:1,flock:1,fork:1,format:1,formline:1,getc:1,getgrent:1,getgrgid:1,getgrnam:1,gethostbyaddr:1,gethostbyname:1,gethostent:1,getlogin:1,getnetbyaddr:1,getnetbyname:1,getnetent:1,getpeername:1,getpgrp:1,getppid:1,getpriority:1,getprotobyname:1,getprotobynumber:1,getprotoent:1,getpwent:1,getpwnam:1,getpwuid:1,getservbyname:1,getservbyport:1,getservent:1,getsockname:1,getsockopt:1,given:1,glob:1,gmtime:1,goto:1,grep:1,hex:1,import:1,index:1,int:1,ioctl:1,join:1,keys:1,kill:1,last:1,lc:1,lcfirst:1,length:1,link:1,listen:1,local:2,localtime:1,lock:1,log:1,lstat:1,m:null,map:1,mkdir:1,msgctl:1,msgget:1,msgrcv:1,msgsnd:1,my:2,new:1,next:1,no:1,oct:1,open:1,opendir:1,ord:1,our:2,pack:1,package:1,pipe:1,pop:1,pos:1,print:1,printf:1,prototype:1,push:1,q:null,qq:null,qr:null,quotemeta:null,qw:null,qx:null,rand:1,read:1,readdir:1,readline:1,readlink:1,readpipe:1,recv:1,redo:1,ref:1,rename:1,require:1,reset:1,return:1,reverse:1,rewinddir:1,rindex:1,rmdir:1,s:null,say:1,scalar:1,seek:1,seekdir:1,select:1,semctl:1,semget:1,semop:1,send:1,setgrent:1,sethostent:1,setnetent:1,setpgrp:1,setpriority:1,setprotoent:1,setpwent:1,setservent:1,setsockopt:1,shift:1,shmctl:1,shmget:1,shmread:1,shmwrite:1,shutdown:1,sin:1,sleep:1,socket:1,socketpair:1,sort:1,splice:1,split:1,sprintf:1,sqrt:1,srand:1,stat:1,state:1,study:1,sub:1,substr:1,symlink:1,syscall:1,sysopen:1,sysread:1,sysseek:1,system:1,syswrite:1,tell:1,telldir:1,tie:1,tied:1,time:1,times:1,tr:null,truncate:1,uc:1,ucfirst:1,umask:1,undef:1,unlink:1,unpack:1,unshift:1,untie:1,use:1,utime:1,values:1,vec:1,wait:1,waitpid:1,wantarray:1,warn:1,when:1,write:1,y:null},uX="string.special",hX=/[goseximacplud]/;function dX(e,t,n,r,i){return t.chain=null,t.style=null,t.tail=null,t.tokenize=function(e,t){for(var a,o=!1,s=0;a=e.next();){if(a===n[s]&&!o)return void 0!==n[++s]?(t.chain=n[s],t.style=r,t.tail=i):i&&e.eatWhile(i),t.tokenize=fX,r;o=!o&&"\\"==a}return r},t.tokenize(e,t)}function pX(e,t,n){return t.tokenize=function(e,t){return e.string==n&&(t.tokenize=fX),e.skipToEnd(),"string"},t.tokenize(e,t)}function fX(e,t){if(e.eatSpace())return null;if(t.chain)return dX(e,t,t.chain,t.style,t.tail);if(e.match(/^\-?[\d\.]/,!1)&&e.match(/^(\-?(\d*\.\d+(e[+-]?\d+)?|\d+\.\d*)|0x[\da-fA-F]+|0b[01]+|\d+(e[+-]?\d+)?)/))return"number";if(e.match(/^<<(?=[_a-zA-Z])/))return e.eatWhile(/\w/),pX(e,t,e.current().substr(2));if(e.sol()&&e.match(/^\=item(?!\w)/))return pX(e,t,"=cut");var n=e.next();if('"'==n||"'"==n){if(sX(e,3)=="<<"+n){var r=e.pos;e.eatWhile(/\w/);var i=e.current().substr(1);if(i&&e.eat(n))return pX(e,t,i);e.pos=r}return dX(e,t,[n],"string")}if("q"==n&&(!(a=oX(e,-2))||!/\w/.test(a)))if("x"==(a=oX(e,0))){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],uX,hX);if("["==a)return lX(e,2),dX(e,t,["]"],uX,hX);if("{"==a)return lX(e,2),dX(e,t,["}"],uX,hX);if("<"==a)return lX(e,2),dX(e,t,[">"],uX,hX);if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],uX,hX)}else if("q"==a){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],"string");if("["==a)return lX(e,2),dX(e,t,["]"],"string");if("{"==a)return lX(e,2),dX(e,t,["}"],"string");if("<"==a)return lX(e,2),dX(e,t,[">"],"string");if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],"string")}else if("w"==a){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],"bracket");if("["==a)return lX(e,2),dX(e,t,["]"],"bracket");if("{"==a)return lX(e,2),dX(e,t,["}"],"bracket");if("<"==a)return lX(e,2),dX(e,t,[">"],"bracket");if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],"bracket")}else if("r"==a){if("("==(a=oX(e,1)))return lX(e,2),dX(e,t,[")"],uX,hX);if("["==a)return lX(e,2),dX(e,t,["]"],uX,hX);if("{"==a)return lX(e,2),dX(e,t,["}"],uX,hX);if("<"==a)return lX(e,2),dX(e,t,[">"],uX,hX);if(/[\^'"!~\/]/.test(a))return lX(e,1),dX(e,t,[e.eat(a)],uX,hX)}else if(/[\^'"!~\/(\[{<]/.test(a)){if("("==a)return lX(e,1),dX(e,t,[")"],"string");if("["==a)return lX(e,1),dX(e,t,["]"],"string");if("{"==a)return lX(e,1),dX(e,t,["}"],"string");if("<"==a)return lX(e,1),dX(e,t,[">"],"string");if(/[\^'"!~\/]/.test(a))return dX(e,t,[e.eat(a)],"string")}if("m"==n&&((!(a=oX(e,-2))||!/\w/.test(a))&&(a=e.eat(/[(\[{<\^'"!~\/]/)))){if(/[\^'"!~\/]/.test(a))return dX(e,t,[a],uX,hX);if("("==a)return dX(e,t,[")"],uX,hX);if("["==a)return dX(e,t,["]"],uX,hX);if("{"==a)return dX(e,t,["}"],uX,hX);if("<"==a)return dX(e,t,[">"],uX,hX)}if("s"==n&&(!(a=/[\/>\]})\w]/.test(oX(e,-2)))&&(a=e.eat(/[(\[{<\^'"!~\/]/))))return dX(e,t,"["==a?["]","]"]:"{"==a?["}","}"]:"<"==a?[">",">"]:"("==a?[")",")"]:[a,a],uX,hX);if("y"==n&&(!(a=/[\/>\]})\w]/.test(oX(e,-2)))&&(a=e.eat(/[(\[{<\^'"!~\/]/))))return dX(e,t,"["==a?["]","]"]:"{"==a?["}","}"]:"<"==a?[">",">"]:"("==a?[")",")"]:[a,a],uX,hX);if("t"==n&&(!(a=/[\/>\]})\w]/.test(oX(e,-2)))&&(a=e.eat("r"))&&(a=e.eat(/[(\[{<\^'"!~\/]/))))return dX(e,t,"["==a?["]","]"]:"{"==a?["}","}"]:"<"==a?[">",">"]:"("==a?[")",")"]:[a,a],uX,hX);if("`"==n)return dX(e,t,[n],"builtin");if("/"==n)return/~\s*$/.test(sX(e))?dX(e,t,[n],uX,hX):"operator";if("$"==n){r=e.pos;if(e.eatWhile(/\d/)||e.eat("{")&&e.eatWhile(/\d/)&&e.eat("}"))return"builtin";e.pos=r}if(/[$@%]/.test(n)){r=e.pos;if(e.eat("^")&&e.eat(/[A-Z]/)||!/[@$%&]/.test(oX(e,-2))&&e.eat(/[=|\\\-#?@;:&`~\^!\[\]*'"$+.,\/<>()]/)){var a=e.current();if(cX[a])return"builtin"}e.pos=r}if(/[$@%&]/.test(n)&&(e.eatWhile(/[\w$]/)||e.eat("{")&&e.eatWhile(/[\w$]/)&&e.eat("}"))){a=e.current();return cX[a]?"builtin":"variable"}if("#"==n&&"$"!=oX(e,-2))return e.skipToEnd(),"comment";if(/[:+\-\^*$&%@=<>!?|\/~\.]/.test(n)){r=e.pos;if(e.eatWhile(/[:+\-\^*$&%@=<>!?|\/~\.]/),cX[e.current()])return"operator";e.pos=r}if("_"==n&&1==e.pos){if("_END__"==OX(e,6))return dX(e,t,["\0"],"comment");if("_DATA__"==OX(e,7))return dX(e,t,["\0"],"builtin");if("_C__"==OX(e,7))return dX(e,t,["\0"],"string")}if(/\w/.test(n)){r=e.pos;if("{"==oX(e,-2)&&("}"==oX(e,0)||e.eatWhile(/\w/)&&"}"==oX(e,0)))return"string";e.pos=r}if(/[A-Z]/.test(n)){var o=oX(e,-2);r=e.pos;if(e.eatWhile(/[A-Z_]/),!/[\da-z]/.test(oX(e,0)))return(a=cX[e.current()])?(a[1]&&(a=a[0]),":"!=o?1==a?"keyword":2==a?"def":3==a?"atom":4==a?"operator":5==a?"builtin":"meta":"meta"):"meta";e.pos=r}if(/[a-zA-Z_]/.test(n)){o=oX(e,-2);return e.eatWhile(/\w/),(a=cX[e.current()])?(a[1]&&(a=a[0]),":"!=o?1==a?"keyword":2==a?"def":3==a?"atom":4==a?"operator":5==a?"builtin":"meta":"meta"):"meta"}return null}const mX={startState:function(){return{tokenize:fX,chain:null,style:null,tail:null}},token:function(e,t){return(t.tokenize||fX)(e,t)},languageData:{commentTokens:{line:"#"},wordChars:"$"}};var gX=Object.freeze({__proto__:null,perl:mX});function QX(e){for(var t={},n=e.split(" "),r=0;r=&?:\/!|]/;function vX(e,t,n){return t.tokenize=n,n(e,t)}function SX(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=_X;break}r="*"==n}return"comment"}function _X(e,t){var n=e.next();return'"'==n||"'"==n?vX(e,t,function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return!a&&i||(n.tokenize=_X),"error"}}(n)):/[\[\]{}\(\),;\.]/.test(n)?null:/\d/.test(n)?(e.eatWhile(/[\w\.]/),"number"):"/"==n?e.eat("*")?vX(e,t,SX):(e.eatWhile(PX),"operator"):"-"==n?e.eat("-")?(e.skipToEnd(),"comment"):(e.eatWhile(PX),"operator"):PX.test(n)?(e.eatWhile(PX),"operator"):(e.eatWhile(/[\w\$_]/),kX&&kX.propertyIsEnumerable(e.current().toUpperCase())&&!e.eat(")")&&!e.eat(".")?"keyword":wX&&wX.propertyIsEnumerable(e.current().toUpperCase())?"builtin":yX&&yX.propertyIsEnumerable(e.current().toUpperCase())?"type":"variable")}const XX={startState:function(){return{tokenize:_X,startOfLine:!0}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{autocomplete:($X+xX+bX).split(" ")}};var TX=Object.freeze({__proto__:null,pig:XX});function RX(e,t){for(var n=void 0!==(t=t||{}).prefix?t.prefix:"^",r=void 0!==t.suffix?t.suffix:"\\b",i=0;i/],{suffix:""}),UX=RX([/Add-(Computer|Content|History|Member|PSSnapin|Type)/,/Checkpoint-Computer/,/Clear-(Content|EventLog|History|Host|Item(Property)?|Variable)/,/Compare-Object/,/Complete-Transaction/,/Connect-PSSession/,/ConvertFrom-(Csv|Json|SecureString|StringData)/,/Convert-Path/,/ConvertTo-(Csv|Html|Json|SecureString|Xml)/,/Copy-Item(Property)?/,/Debug-Process/,/Disable-(ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)/,/Disconnect-PSSession/,/Enable-(ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)/,/(Enter|Exit)-PSSession/,/Export-(Alias|Clixml|Console|Counter|Csv|FormatData|ModuleMember|PSSession)/,/ForEach-Object/,/Format-(Custom|List|Table|Wide)/,new RegExp("Get-(Acl|Alias|AuthenticodeSignature|ChildItem|Command|ComputerRestorePoint|Content|ControlPanelItem|Counter|Credential|Culture|Date|Event|EventLog|EventSubscriber|ExecutionPolicy|FormatData|Help|History|Host|HotFix|Item|ItemProperty|Job|Location|Member|Module|PfxCertificate|Process|PSBreakpoint|PSCallStack|PSDrive|PSProvider|PSSession|PSSessionConfiguration|PSSnapin|Random|Service|TraceSource|Transaction|TypeData|UICulture|Unique|Variable|Verb|WinEvent|WmiObject)"),/Group-Object/,/Import-(Alias|Clixml|Counter|Csv|LocalizedData|Module|PSSession)/,/ImportSystemModules/,/Invoke-(Command|Expression|History|Item|RestMethod|WebRequest|WmiMethod)/,/Join-Path/,/Limit-EventLog/,/Measure-(Command|Object)/,/Move-Item(Property)?/,new RegExp("New-(Alias|Event|EventLog|Item(Property)?|Module|ModuleManifest|Object|PSDrive|PSSession|PSSessionConfigurationFile|PSSessionOption|PSTransportOption|Service|TimeSpan|Variable|WebServiceProxy|WinEvent)"),/Out-(Default|File|GridView|Host|Null|Printer|String)/,/Pause/,/(Pop|Push)-Location/,/Read-Host/,/Receive-(Job|PSSession)/,/Register-(EngineEvent|ObjectEvent|PSSessionConfiguration|WmiEvent)/,/Remove-(Computer|Event|EventLog|Item(Property)?|Job|Module|PSBreakpoint|PSDrive|PSSession|PSSnapin|TypeData|Variable|WmiObject)/,/Rename-(Computer|Item(Property)?)/,/Reset-ComputerMachinePassword/,/Resolve-Path/,/Restart-(Computer|Service)/,/Restore-Computer/,/Resume-(Job|Service)/,/Save-Help/,/Select-(Object|String|Xml)/,/Send-MailMessage/,new RegExp("Set-(Acl|Alias|AuthenticodeSignature|Content|Date|ExecutionPolicy|Item(Property)?|Location|PSBreakpoint|PSDebug|PSSessionConfiguration|Service|StrictMode|TraceSource|Variable|WmiInstance)"),/Show-(Command|ControlPanelItem|EventLog)/,/Sort-Object/,/Split-Path/,/Start-(Job|Process|Service|Sleep|Transaction|Transcript)/,/Stop-(Computer|Job|Process|Service|Transcript)/,/Suspend-(Job|Service)/,/TabExpansion2/,/Tee-Object/,/Test-(ComputerSecureChannel|Connection|ModuleManifest|Path|PSSessionConfigurationFile)/,/Trace-Command/,/Unblock-File/,/Undo-Transaction/,/Unregister-(Event|PSSessionConfiguration)/,/Update-(FormatData|Help|List|TypeData)/,/Use-Transaction/,/Wait-(Event|Job|Process)/,/Where-Object/,/Write-(Debug|Error|EventLog|Host|Output|Progress|Verbose|Warning)/,/cd|help|mkdir|more|oss|prompt/,/ac|asnp|cat|cd|chdir|clc|clear|clhy|cli|clp|cls|clv|cnsn|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|dnsn|ebp/,/echo|epal|epcsv|epsn|erase|etsn|exsn|fc|fl|foreach|ft|fw|gal|gbp|gc|gci|gcm|gcs|gdr|ghy|gi|gjb|gl|gm|gmo|gp|gps/,/group|gsn|gsnp|gsv|gu|gv|gwmi|h|history|icm|iex|ihy|ii|ipal|ipcsv|ipmo|ipsn|irm|ise|iwmi|iwr|kill|lp|ls|man|md/,/measure|mi|mount|move|mp|mv|nal|ndr|ni|nmo|npssc|nsn|nv|ogv|oh|popd|ps|pushd|pwd|r|rbp|rcjb|rcsn|rd|rdr|ren|ri/,/rjb|rm|rmdir|rmo|rni|rnp|rp|rsn|rsnp|rujb|rv|rvpa|rwmi|sajb|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls/,/sort|sp|spjb|spps|spsv|start|sujb|sv|swmi|tee|trcm|type|where|wjb|write/],{prefix:"",suffix:""}),EX=RX([/[$?^_]|Args|ConfirmPreference|ConsoleFileName|DebugPreference|Error|ErrorActionPreference|ErrorView|ExecutionContext/,/FormatEnumerationLimit|Home|Host|Input|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount/,/MaximumHistoryCount|MaximumVariableCount|MyInvocation|NestedPromptLevel|OutputEncoding|Pid|Profile|ProgressPreference/,/PSBoundParameters|PSCommandPath|PSCulture|PSDefaultParameterValues|PSEmailServer|PSHome|PSScriptRoot|PSSessionApplicationName/,/PSSessionConfigurationName|PSSessionOption|PSUICulture|PSVersionTable|Pwd|ShellId|StackTrace|VerbosePreference/,/WarningPreference|WhatIfPreference/,/Event|EventArgs|EventSubscriber|Sender/,/Matches|Ofs|ForEach|LastExitCode|PSCmdlet|PSItem|PSSenderInfo|This/,/true|false|null/],{prefix:"\\$",suffix:""}),IX={keyword:zX,number:/^((0x[\da-f]+)|((\d+\.\d+|\d\.|\.\d+|\d+)(e[\+\-]?\d+)?))[ld]?([kmgtp]b)?/i,operator:ZX,builtin:RX([/[A-Z]:|%|\?/i,UX,EX],{suffix:WX}),punctuation:/[\[\]{},;`\\\.]|@[({]/,variable:/^[A-Za-z\_][A-Za-z\-\_\d]*\b/};function VX(e,t){var n=t.returnStack[t.returnStack.length-1];if(n&&n.shouldReturnFrom(t))return t.tokenize=n.tokenize,t.returnStack.pop(),t.tokenize(e,t);if(e.eatSpace())return null;if(e.eat("("))return t.bracketNesting+=1,"punctuation";if(e.eat(")"))return t.bracketNesting-=1,"punctuation";for(var r in IX)if(e.match(IX[r]))return r;var i=e.next();if("'"===i)return function(e,t){var n;for(;null!=(n=e.peek());)if(e.next(),"'"===n&&!e.eat("'"))return t.tokenize=VX,"string";return"error"}(e,t);if("$"===i)return DX(e,t);if('"'===i)return CX(e,t);if("<"===i&&e.eat("#"))return t.tokenize=NX,NX(e,t);if("#"===i)return e.skipToEnd(),"comment";if("@"===i){var a=e.eat(/["']/);if(a&&e.eol())return t.tokenize=FX,t.startQuote=a[0],FX(e,t);if(e.eol())return"error";if(e.peek().match(/[({]/))return"punctuation";if(e.peek().match(qX))return DX(e,t)}return"error"}function CX(e,t){for(var n;null!=(n=e.peek());){if("$"===n)return t.tokenize=AX,"string";if(e.next(),"`"!==n){if('"'===n&&!e.eat('"'))return t.tokenize=VX,"string"}else e.next()}return"error"}function AX(e,t){return LX(e,t,CX)}function GX(e,t){return t.tokenize=FX,t.startQuote='"',FX(e,t)}function jX(e,t){return LX(e,t,GX)}function LX(e,t,n){if(e.match("$(")){var r=t.bracketNesting;return t.returnStack.push({shouldReturnFrom:function(e){return e.bracketNesting===r},tokenize:n}),t.tokenize=VX,t.bracketNesting+=1,"punctuation"}return e.next(),t.returnStack.push({shouldReturnFrom:function(){return!0},tokenize:n}),t.tokenize=DX,t.tokenize(e,t)}function NX(e,t){for(var n,r=!1;null!=(n=e.next());){if(r&&">"==n){t.tokenize=VX;break}r="#"===n}return"comment"}function DX(e,t){var n=e.peek();return e.eat("{")?(t.tokenize=MX,MX(e,t)):null!=n&&n.match(qX)?(e.eatWhile(qX),t.tokenize=VX,"variable"):(t.tokenize=VX,"error")}function MX(e,t){for(var n;null!=(n=e.next());)if("}"===n){t.tokenize=VX;break}return"variable"}function FX(e,t){var n=t.startQuote;if(e.sol()&&e.match(new RegExp(n+"@")))t.tokenize=VX;else if('"'===n)for(;!e.eol();){var r=e.peek();if("$"===r)return t.tokenize=jX,"string";e.next(),"`"===r&&e.next()}else e.skipToEnd();return"string"}const BX={startState:function(){return{returnStack:[],bracketNesting:0,tokenize:VX}},token:function(e,t){return t.tokenize(e,t)},languageData:{commentTokens:{line:"#",block:{open:"<#",close:"#>"}}}};var HX=Object.freeze({__proto__:null,powerShell:BX});var KX=Object.freeze({__proto__:null,properties:{token:function(e,t){var n=e.sol()||t.afterSection,r=e.eol();if(t.afterSection=!1,n&&(t.nextMultiline?(t.inMultiline=!0,t.nextMultiline=!1):t.position="def"),r&&!t.nextMultiline&&(t.inMultiline=!1,t.position="def"),n)for(;e.eatSpace(););var i=e.next();return!n||"#"!==i&&"!"!==i&&";"!==i?n&&"["===i?(t.afterSection=!0,e.skipTo("]"),e.eat("]"),"header"):"="===i||":"===i?(t.position="quote",null):("\\"===i&&"quote"===t.position&&e.eol()&&(t.nextMultiline=!0),t.position):(t.position="comment",e.skipToEnd(),"comment")},startState:function(){return{position:"def",nextMultiline:!1,inMultiline:!1,afterSection:!1}}}});var JX=["package","message","import","syntax","required","optional","repeated","reserved","default","extensions","packed","bool","bytes","double","enum","float","string","int32","int64","uint32","uint64","sint32","sint64","fixed32","fixed64","sfixed32","sfixed64","option","service","rpc","returns"],eT=function(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}(JX),tT=new RegExp("^[_A-Za-z¡-￿][_A-Za-z0-9¡-￿]*");const nT={token:function(e){if(e.eatSpace())return null;if(e.match("//"))return e.skipToEnd(),"comment";if(e.match(/^[0-9\.+-]/,!1)){if(e.match(/^[+-]?0x[0-9a-fA-F]+/))return"number";if(e.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?/))return"number";if(e.match(/^[+-]?\d+([EeDd][+-]?\d+)?/))return"number"}return e.match(/^"([^"]|(""))*"/)||e.match(/^'([^']|(''))*'/)?"string":e.match(eT)?"keyword":e.match(tT)?"variable":(e.next(),null)},languageData:{autocomplete:JX}};var rT=Object.freeze({__proto__:null,protobuf:nT}),iT={},aT=/({)?([a-z][a-z0-9_]*)?((::[a-z][a-z0-9_]*)*::)?[a-zA-Z0-9_]+(})?/;function oT(e,t){for(var n=t.split(" "),r=0;r.*/,!1),i=e.match(/(\s+)?[\w:_]+(\s+)?{/,!1),a=e.match(/(\s+)?[@]{1,2}[\w:_]+(\s+)?{/,!1),o=e.next();if("$"===o)return e.match(aT)?t.continueString?"variableName.special":"variable":"error";if(t.continueString)return e.backUp(1),sT(e,t);if(t.inDefinition){if(e.match(/(\s+)?[\w:_]+(\s+)?/))return"def";e.match(/\s+{/),t.inDefinition=!1}return t.inInclude?(e.match(/(\s+)?\S+(\s+)?/),t.inInclude=!1,"def"):e.match(/(\s+)?\w+\(/)?(e.backUp(1),"def"):r?(e.match(/(\s+)?\w+/),"tag"):n&&iT.hasOwnProperty(n)?(e.backUp(1),e.match(/[\w]+/),e.match(/\s+\S+\s+{/,!1)&&(t.inDefinition=!0),"include"==n&&(t.inInclude=!0),iT[n]):/(^|\s+)[A-Z][\w:_]+/.test(n)?(e.backUp(1),e.match(/(^|\s+)[A-Z][\w:_]+/),"def"):i?(e.match(/(\s+)?[\w:_]+/),"def"):a?(e.match(/(\s+)?[@]{1,2}/),"atom"):"#"==o?(e.skipToEnd(),"comment"):"'"==o||'"'==o?(t.pending=o,sT(e,t)):"{"==o||"}"==o?"bracket":"/"==o?(e.match(/^[^\/]*\//),"string.special"):o.match(/[0-9]/)?(e.eatWhile(/[0-9]+/),"number"):"="==o?(">"==e.peek()&&e.next(),"operator"):(e.eatWhile(/[\w-]/),null)}(e,t)}};var lT,cT=Object.freeze({__proto__:null,puppet:OT}),uT=new RegExp("^("+["abs","acos","aj","aj0","all","and","any","asc","asin","asof","atan","attr","avg","avgs","bin","by","ceiling","cols","cor","cos","count","cov","cross","csv","cut","delete","deltas","desc","dev","differ","distinct","div","do","each","ej","enlist","eval","except","exec","exit","exp","fby","fills","first","fkeys","flip","floor","from","get","getenv","group","gtime","hclose","hcount","hdel","hopen","hsym","iasc","idesc","if","ij","in","insert","inter","inv","key","keys","last","like","list","lj","load","log","lower","lsq","ltime","ltrim","mavg","max","maxs","mcount","md5","mdev","med","meta","min","mins","mmax","mmin","mmu","mod","msum","neg","next","not","null","or","over","parse","peach","pj","plist","prd","prds","prev","prior","rand","rank","ratios","raze","read0","read1","reciprocal","reverse","rload","rotate","rsave","rtrim","save","scan","select","set","setenv","show","signum","sin","sqrt","ss","ssr","string","sublist","sum","sums","sv","system","tables","tan","til","trim","txf","type","uj","ungroup","union","update","upper","upsert","value","var","view","views","vs","wavg","where","where","while","within","wj","wj1","wsum","xasc","xbar","xcol","xcols","xdesc","xexp","xgroup","xkey","xlog","xprev","xrank"].join("|")+")$"),hT=/[|/&^!+:\\\-*%$=~#;@><,?_\'\"\[\(\]\)\s{}]/;function dT(e,t){var n=e.sol(),r=e.next();if(lT=null,n){if("/"==r)return(t.tokenize=pT)(e,t);if("\\"==r)return e.eol()||/\s/.test(e.peek())?(e.skipToEnd(),/^\\\s*$/.test(e.current())?(t.tokenize=mT)(e):t.tokenize=dT,"comment"):(t.tokenize=dT,"builtin")}if(/\s/.test(r))return"/"==e.peek()?(e.skipToEnd(),"comment"):"null";if('"'==r)return(t.tokenize=gT)(e,t);if("`"==r)return e.eatWhile(/[A-Za-z\d_:\/.]/),"macroName";if("."==r&&/\d/.test(e.peek())||/\d/.test(r)){var i=null;return e.backUp(1),e.match(/^\d{4}\.\d{2}(m|\.\d{2}([DT](\d{2}(:\d{2}(:\d{2}(\.\d{1,9})?)?)?)?)?)/)||e.match(/^\d+D(\d{2}(:\d{2}(:\d{2}(\.\d{1,9})?)?)?)/)||e.match(/^\d{2}:\d{2}(:\d{2}(\.\d{1,9})?)?/)||e.match(/^\d+[ptuv]{1}/)?i="temporal":(e.match(/^0[NwW]{1}/)||e.match(/^0x[\da-fA-F]*/)||e.match(/^[01]+[b]{1}/)||e.match(/^\d+[chijn]{1}/)||e.match(/-?\d*(\.\d*)?(e[+\-]?\d+)?(e|f)?/))&&(i="number"),!i||(r=e.peek())&&!hT.test(r)?(e.next(),"error"):i}return/[A-Za-z]|\./.test(r)?(e.eatWhile(/[A-Za-z._\d]/),uT.test(e.current())?"keyword":"variable"):/[|/&^!+:\\\-*%$=~#;@><\.,?_\']/.test(r)||/[{}\(\[\]\)]/.test(r)?null:"error"}function pT(e,t){return e.skipToEnd(),/\/\s*$/.test(e.current())?(t.tokenize=fT)(e,t):t.tokenize=dT,"comment"}function fT(e,t){var n=e.sol()&&"\\"==e.peek();return e.skipToEnd(),n&&/^\\\s*$/.test(e.current())&&(t.tokenize=dT),"comment"}function mT(e){return e.skipToEnd(),"comment"}function gT(e,t){for(var n,r=!1,i=!1;n=e.next();){if('"'==n&&!r){i=!0;break}r=!r&&"\\"==n}return i&&(t.tokenize=dT),"string"}function QT(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function $T(e){e.indent=e.context.indent,e.context=e.context.prev}const bT={startState:function(){return{tokenize:dT,context:null,indent:0,col:0}},token:function(e,t){e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation());var n=t.tokenize(e,t);if("comment"!=n&&t.context&&null==t.context.align&&"pattern"!=t.context.type&&(t.context.align=!0),"("==lT)QT(t,")",e.column());else if("["==lT)QT(t,"]",e.column());else if("{"==lT)QT(t,"}",e.column());else if(/[\]\}\)]/.test(lT)){for(;t.context&&"pattern"==t.context.type;)$T(t);t.context&&lT==t.context.type&&$T(t)}else"."==lT&&t.context&&"pattern"==t.context.type?$T(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?QT(t,"pattern",e.column()):"pattern"!=t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"==i.type;)i=i.prev;var a=i&&r==i.type;return i?"pattern"==i.type?i.col:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0}};var xT=Object.freeze({__proto__:null,q:bT});function wT(e){for(var t={},n=0;n=!&|~$:]/;function WT(e,t){kT=null;var n=e.next();if("#"==n)return e.skipToEnd(),"comment";if("0"==n&&e.eat("x"))return e.eatWhile(/[\da-f]/i),"number";if("."==n&&e.eat(/\d/))return e.match(/\d*(?:e[+\-]?\d+)?/),"number";if(/\d/.test(n))return e.match(/\d*(?:\.\d+)?(?:e[+\-]\d+)?L?/),"number";if("'"==n||'"'==n)return t.tokenize=function(e){return function(t,n){if(t.eat("\\")){var r=t.next();return"x"==r?t.match(/^[a-f0-9]{2}/i):("u"==r||"U"==r)&&t.eat("{")&&t.skipTo("}")?t.next():"u"==r?t.match(/^[a-f0-9]{4}/i):"U"==r?t.match(/^[a-f0-9]{8}/i):/[0-7]/.test(r)&&t.match(/^[0-7]{1,2}/),"string.special"}for(var i;null!=(i=t.next());){if(i==e){n.tokenize=WT;break}if("\\"==i){t.backUp(1);break}}return"string"}}(n),"string";if("`"==n)return e.match(/[^`]+`/),"string.special";if("."==n&&e.match(/.(?:[.]|\d+)/))return"keyword";if(/[a-zA-Z\.]/.test(n)){e.eatWhile(/[\w\.]/);var r=e.current();return ST.propertyIsEnumerable(r)?"atom":XT.propertyIsEnumerable(r)?(TT.propertyIsEnumerable(r)&&!e.match(/\s*if(\s+|$)/,!1)&&(kT="block"),"keyword"):_T.propertyIsEnumerable(r)?"builtin":"variable"}return"%"==n?(e.skipTo("%")&&e.next(),"variableName.special"):"<"==n&&e.eat("-")||"<"==n&&e.match("<-")||"-"==n&&e.match(/>>?/)||"="==n&&t.ctx.argList?"operator":RT.test(n)?("$"==n||e.eatWhile(RT),"operator"):/[\(\){}\[\];]/.test(n)?(kT=n,";"==n?"punctuation":null):null}function qT(e,t,n){e.ctx={type:t,indent:e.indent,flags:0,column:n.column(),prev:e.ctx}}function zT(e,t){var n=e.ctx;e.ctx={type:n.type,indent:n.indent,flags:n.flags|t,column:n.column,prev:n.prev}}function YT(e){e.indent=e.ctx.indent,e.ctx=e.ctx.prev}const ZT={startState:function(e){return{tokenize:WT,ctx:{type:"top",indent:-e,flags:2},indent:0,afterIdent:!1}},token:function(e,t){if(e.sol()&&(0==(3&t.ctx.flags)&&(t.ctx.flags|=2),4&t.ctx.flags&&YT(t),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);return"comment"!=n&&0==(2&t.ctx.flags)&&zT(t,1),";"!=kT&&"{"!=kT&&"}"!=kT||"block"!=t.ctx.type||YT(t),"{"==kT?qT(t,"}",e):"("==kT?(qT(t,")",e),t.afterIdent&&(t.ctx.argList=!0)):"["==kT?qT(t,"]",e):"block"==kT?qT(t,"block",e):kT==t.ctx.type?YT(t):"block"==t.ctx.type&&"comment"!=n&&zT(t,4),t.afterIdent="variable"==n||"keyword"==n,n},indent:function(e,t,n){if(e.tokenize!=WT)return 0;var r=t&&t.charAt(0),i=e.ctx,a=r==i.type;return 4&i.flags&&(i=i.prev),"block"==i.type?i.indent+("{"==r?0:n.unit):1&i.flags?i.column+(a?0:1):i.indent+(a?0:n.unit)},languageData:{wordChars:".",commentTokens:{line:"#"},autocomplete:yT.concat(PT,vT)}};var UT=Object.freeze({__proto__:null,r:ZT}),ET=/^-+$/,IT=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ?\d{1,2} \d{2}:\d{2}(:\d{2})? [A-Z]{3,4} \d{4} - /,VT=/^[\w+.-]+@[\w.-]+/;const CT={token:function(e){if(e.sol()){if(e.match(ET))return"tag";if(e.match(IT))return"tag"}return e.match(VT)?"string":(e.next(),null)}};var AT=/^(i386|i586|i686|x86_64|ppc64le|ppc64|ppc|ia64|s390x|s390|sparc64|sparcv9|sparc|noarch|alphaev6|alpha|hppa|mipsel)/,GT=/^[a-zA-Z0-9()]+:/,jT=/^%(debug_package|package|description|prep|build|install|files|clean|changelog|preinstall|preun|postinstall|postun|pretrans|posttrans|pre|post|triggerin|triggerun|verifyscript|check|triggerpostun|triggerprein|trigger)/,LT=/^%(ifnarch|ifarch|if)/,NT=/^%(else|endif)/,DT=/^(\!|\?|\<\=|\<|\>\=|\>|\=\=|\&\&|\|\|)/;const MT={startState:function(){return{controlFlow:!1,macroParameters:!1,section:!1}},token:function(e,t){if("#"==e.peek())return e.skipToEnd(),"comment";if(e.sol()){if(e.match(GT))return"header";if(e.match(jT))return"atom"}if(e.match(/^\$\w+/))return"def";if(e.match(/^\$\{\w+\}/))return"def";if(e.match(NT))return"keyword";if(e.match(LT))return t.controlFlow=!0,"keyword";if(t.controlFlow){if(e.match(DT))return"operator";if(e.match(/^(\d+)/))return"number";e.eol()&&(t.controlFlow=!1)}if(e.match(AT))return e.eol()&&(t.controlFlow=!1),"number";if(e.match(/^%[\w]+/))return e.match("(")&&(t.macroParameters=!0),"keyword";if(t.macroParameters){if(e.match(/^\d+/))return"number";if(e.match(")"))return t.macroParameters=!1,"keyword"}return e.match(/^%\{\??[\w \-\:\!]+\}/)?(e.eol()&&(t.controlFlow=!1),"def"):(e.next(),null)}};var FT=Object.freeze({__proto__:null,rpmChanges:CT,rpmSpec:MT});function BT(e){for(var t={},n=0,r=e.length;n-1)r++;else if("]})".indexOf(t)>-1){if(--r<0)break}else if("/"==t&&0==r){i=!0;break}a="\\"==t}return e.backUp(e.pos-n),i}(e)?iR(OR(a,"string.special",!0),e,t):"operator";if("%"==a){var o="string",s=!0;e.eat("s")?o="atom":e.eat(/[WQ]/)?o="string":e.eat(/[r]/)?o="string.special":e.eat(/[wxq]/)&&(o="string",s=!1);var O=e.eat(/[^\w\s=]/);return O?(nR.propertyIsEnumerable(O)&&(O=nR[O]),iR(OR(O,o,s,!0),e,t)):"operator"}if("#"==a)return e.skipToEnd(),"comment";if("<"==a&&(n=e.match(/^<([-~])[\`\"\']?([a-zA-Z_?]\w*)[\`\"\']?(?:;|$)/)))return iR((r=n[2],i=n[1],function(e,t){return i&&e.eatSpace(),e.match(r)?t.tokenize.pop():e.skipToEnd(),"string"}),e,t);if("0"==a)return e.eat("x")?e.eatWhile(/[\da-fA-F]/):e.eat("b")?e.eatWhile(/[01]/):e.eatWhile(/[0-7]/),"number";if(/\d/.test(a))return e.match(/^[\d_]*(?:\.[\d_]+)?(?:[eE][+\-]?[\d_]+)?/),"number";if("?"==a){for(;e.match(/^\\[CM]-/););return e.eat("\\")?e.eatWhile(/\w/):e.next(),"string"}if(":"==a)return e.eat("'")?iR(OR("'","atom",!1),e,t):e.eat('"')?iR(OR('"',"atom",!0),e,t):e.eat(/[\<\>]/)?(e.eat(/[\<\>]/),"atom"):e.eat(/[\+\-\*\/\&\|\:\!]/)?"atom":e.eat(/[a-zA-Z$@_\xa1-\uffff]/)?(e.eatWhile(/[\w$\xa1-\uffff]/),e.eat(/[\?\!\=]/),"atom"):"operator";if("@"==a&&e.match(/^@?[a-zA-Z_\xa1-\uffff]/))return e.eat("@"),e.eatWhile(/[\w\xa1-\uffff]/),"propertyName";if("$"==a)return e.eat(/[a-zA-Z_]/)?e.eatWhile(/[\w]/):e.eat(/\d/)?e.eat(/\d/):e.next(),"variableName.special";if(/[a-zA-Z_\xa1-\uffff]/.test(a))return e.eatWhile(/[\w\xa1-\uffff]/),e.eat(/[\?\!]/),e.eat(":")?"atom":"variable";if("|"!=a||!t.varList&&"{"!=t.lastTok&&"do"!=t.lastTok){if(/[\(\)\[\]{}\\;]/.test(a))return HT=a,null;if("-"==a&&e.eat(">"))return"operator";if(/[=+\-\/*:\.^%<>~|]/.test(a)){var l=e.eatWhile(/[=+\-\/*:\.^%<>~|]/);return"."!=a||l||(HT="."),"operator"}return null}return HT="|",null}function oR(e){return e||(e=1),function(t,n){if("}"==t.peek()){if(1==e)return n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n);n.tokenize[n.tokenize.length-1]=oR(e-1)}else"{"==t.peek()&&(n.tokenize[n.tokenize.length-1]=oR(e+1));return aR(t,n)}}function sR(){var e=!1;return function(t,n){return e?(n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n)):(e=!0,aR(t,n))}}function OR(e,t,n,r){return function(i,a){var o,s=!1;for("read-quoted-paused"===a.context.type&&(a.context=a.context.prev,i.eat("}"));null!=(o=i.next());){if(o==e&&(r||!s)){a.tokenize.pop();break}if(n&&"#"==o&&!s){if(i.eat("{")){"}"==e&&(a.context={prev:a.context,type:"read-quoted-paused"}),a.tokenize.push(oR());break}if(/[@\$]/.test(i.peek())){a.tokenize.push(sR());break}}s=!s&&"\\"==o}return t}}function lR(e,t){return e.sol()&&e.match("=end")&&e.eol()&&t.tokenize.pop(),e.skipToEnd(),"comment"}const cR={startState:function(e){return{tokenize:[aR],indented:0,context:{type:"top",indented:-e},continuedLine:!1,lastTok:null,varList:!1}},token:function(e,t){HT=null,e.sol()&&(t.indented=e.indentation());var n,r=t.tokenize[t.tokenize.length-1](e,t),i=HT;if("variable"==r){var a=e.current();"keyword"==(r="."==t.lastTok?"property":JT.propertyIsEnumerable(e.current())?"keyword":/^[A-Z]/.test(a)?"tag":"def"==t.lastTok||"class"==t.lastTok||t.varList?"def":"variable")&&(i=a,eR.propertyIsEnumerable(a)?n="indent":tR.propertyIsEnumerable(a)?n="dedent":"if"!=a&&"unless"!=a||e.column()!=e.indentation()?"do"==a&&t.context.indented=|!=|<>)/,fR=/[=\(:\),{}.*<>+\-\/^\[\]]/;function mR(e,t,n){if(n)for(var r=t.split(" "),i=0;iinteger char-alphabetic? char-ci<=? char-ci=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt #f floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string=? string>? string? substring symbol->string symbol? #t tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?"),vR=yR("define let letrec let* lambda define-macro defmacro let-syntax letrec-syntax let-values let*-values define-syntax syntax-rules define-values when unless");function SR(e,t,n){this.indent=e,this.type=t,this.prev=n}function _R(e,t,n){e.indentStack=new SR(t,n,e.indentStack)}var XR=new RegExp(/^(?:[-+]i|[-+][01]+#*(?:\/[01]+#*)?i|[-+]?[01]+#*(?:\/[01]+#*)?@[-+]?[01]+#*(?:\/[01]+#*)?|[-+]?[01]+#*(?:\/[01]+#*)?[-+](?:[01]+#*(?:\/[01]+#*)?)?i|[-+]?[01]+#*(?:\/[01]+#*)?)(?=[()\s;"]|$)/i),TR=new RegExp(/^(?:[-+]i|[-+][0-7]+#*(?:\/[0-7]+#*)?i|[-+]?[0-7]+#*(?:\/[0-7]+#*)?@[-+]?[0-7]+#*(?:\/[0-7]+#*)?|[-+]?[0-7]+#*(?:\/[0-7]+#*)?[-+](?:[0-7]+#*(?:\/[0-7]+#*)?)?i|[-+]?[0-7]+#*(?:\/[0-7]+#*)?)(?=[()\s;"]|$)/i),RR=new RegExp(/^(?:[-+]i|[-+][\da-f]+#*(?:\/[\da-f]+#*)?i|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?@[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?[-+](?:[\da-f]+#*(?:\/[\da-f]+#*)?)?i|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?)(?=[()\s;"]|$)/i),WR=new RegExp(/^(?:[-+]i|[-+](?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)i|[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)@[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)|[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)[-+](?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)?i|(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*))(?=[()\s;"]|$)/i);function qR(e){return e.match(XR)}function zR(e){return e.match(TR)}function YR(e,t){return!0===t&&e.backUp(1),e.match(WR)}function ZR(e){return e.match(RR)}const UR={startState:function(){return{indentStack:null,indentation:0,mode:!1,sExprComment:!1,sExprQuote:!1}},token:function(e,t){if(null==t.indentStack&&e.sol()&&(t.indentation=e.indentation()),e.eatSpace())return null;var n=null;switch(t.mode){case"string":for(var r=!1;null!=(i=e.next());){if('"'==i&&!r){t.mode=!1;break}r=!r&&"\\"==i}n=bR;break;case"comment":for(var i,a=!1;null!=(i=e.next());){if("#"==i&&a){t.mode=!1;break}a="|"==i}n=$R;break;case"s-expr-comment":if(t.mode=!1,"("!=e.peek()&&"["!=e.peek()){e.eatWhile(/[^\s\(\)\[\]]/),n=$R;break}t.sExprComment=0;default:var o=e.next();if('"'==o)t.mode="string",n=bR;else if("'"==o)"("==e.peek()||"["==e.peek()?("number"!=typeof t.sExprQuote&&(t.sExprQuote=0),n=xR):(e.eatWhile(/[\w_\-!$%&*+\.\/:<=>?@\^~]/),n=xR);else if("#"==o)if(e.eat("|"))t.mode="comment",n=$R;else if(e.eat(/[tf]/i))n=xR;else if(e.eat(";"))t.mode="s-expr-comment",n=$R;else{var s=null,O=!1,l=!0;e.eat(/[ei]/i)?O=!0:e.backUp(1),e.match(/^#b/i)?s=qR:e.match(/^#o/i)?s=zR:e.match(/^#x/i)?s=ZR:e.match(/^#d/i)?s=YR:e.match(/^[-+0-9.]/,!1)?(l=!1,s=YR):O||e.eat("#"),null!=s&&(l&&!O&&e.match(/^#[ei]/i),s(e)&&(n=wR))}else if(/^[-+0-9.]/.test(o)&&YR(e,!0))n=wR;else if(";"==o)e.skipToEnd(),n=$R;else if("("==o||"["==o){for(var c,u="",h=e.column();null!=(c=e.eat(/[^\s\(\[\;\)\]]/));)u+=c;u.length>0&&vR.propertyIsEnumerable(u)?_R(t,h+2,o):(e.eatSpace(),e.eol()||";"==e.peek()?_R(t,h+1,o):_R(t,h+e.current().length,o)),e.backUp(e.current().length-1),"number"==typeof t.sExprComment&&t.sExprComment++,"number"==typeof t.sExprQuote&&t.sExprQuote++,n=kR}else")"==o||"]"==o?(n=kR,null!=t.indentStack&&t.indentStack.type==(")"==o?"(":"[")&&(!function(e){e.indentStack=e.indentStack.prev}(t),"number"==typeof t.sExprComment&&0==--t.sExprComment&&(n=$R,t.sExprComment=!1),"number"==typeof t.sExprQuote&&0==--t.sExprQuote&&(n=xR,t.sExprQuote=!1))):(e.eatWhile(/[\w_\-!$%&*+\.\/:<=>?@\^~]/),n=PR&&PR.propertyIsEnumerable(e.current())?"builtin":"variable")}return"number"==typeof t.sExprComment?$R:"number"==typeof t.sExprQuote?xR:n},indent:function(e){return null==e.indentStack?e.indentation:e.indentStack.indent},languageData:{closeBrackets:{brackets:["(","[","{",'"']},commentTokens:{line:";;"}}};var ER=Object.freeze({__proto__:null,scheme:UR}),IR={};function VR(e,t){for(var n=0;n1&&e.eat("$");var n=e.next();return/['"({]/.test(n)?(t.tokens[0]=LR(n,"("==n?"quote":"{"==n?"def":"string"),MR(e,t)):(/\d/.test(n)||e.eatWhile(/\w/),t.tokens.shift(),"def")};function MR(e,t){return(t.tokens[0]||jR)(e,t)}const FR={startState:function(){return{tokens:[]}},token:function(e,t){return MR(e,t)},languageData:{autocomplete:CR.concat(AR,GR),closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"#"}}};var BR=Object.freeze({__proto__:null,shell:FR});function HR(e){for(var t={},n=e.split(" "),r=0;r=@%|&?!.,:;^]/,oW=/true|false|nil|self|super|thisContext/,sW=function(e,t){this.next=e,this.parent=t},OW=function(e,t,n){this.name=e,this.context=t,this.eos=n},lW=function(){this.context=new sW(cW,null),this.expectVariable=!0,this.indentation=0,this.userIndentationDelta=0};lW.prototype.userIndent=function(e,t){this.userIndentationDelta=e>0?e/t-this.indentation:0};var cW=function(e,t,n){var r=new OW(null,t,!1),i=e.next();return'"'===i?r=uW(e,new sW(uW,t)):"'"===i?r=hW(e,new sW(hW,t)):"#"===i?"'"===e.peek()?(e.next(),r=dW(e,new sW(dW,t))):e.eatWhile(/[^\s.{}\[\]()]/)?r.name="string.special":r.name="meta":"$"===i?("<"===e.next()&&(e.eatWhile(/[^\s>]/),e.next()),r.name="string.special"):"|"===i&&n.expectVariable?r.context=new sW(pW,t):/[\[\]{}()]/.test(i)?(r.name="bracket",r.eos=/[\[{(]/.test(i),"["===i?n.indentation++:"]"===i&&(n.indentation=Math.max(0,n.indentation-1))):aW.test(i)?(e.eatWhile(aW),r.name="operator",r.eos=";"!==i):/\d/.test(i)?(e.eatWhile(/[\w\d]/),r.name="number"):/[\w_]/.test(i)?(e.eatWhile(/[\w\d_]/),r.name=n.expectVariable?oW.test(e.current())?"keyword":"variable":null):r.eos=n.expectVariable,r},uW=function(e,t){return e.eatWhile(/[^"]/),new OW("comment",e.eat('"')?t.parent:t,!0)},hW=function(e,t){return e.eatWhile(/[^']/),new OW("string",e.eat("'")?t.parent:t,!1)},dW=function(e,t){return e.eatWhile(/[^']/),new OW("string.special",e.eat("'")?t.parent:t,!1)},pW=function(e,t){var n=new OW(null,t,!1);return"|"===e.next()?(n.context=t.parent,n.eos=!0):(e.eatWhile(/[^|]/),n.name="variable"),n};const fW={startState:function(){return new lW},token:function(e,t){if(t.userIndent(e.indentation(),e.indentUnit),e.eatSpace())return null;var n=t.context.next(e,t.context,t);return t.context=n.context,t.expectVariable=n.eos,n.name},blankLine:function(e,t){e.userIndent(0,t)},indent:function(e,t,n){var r=e.context.next===cW&&t&&"]"===t.charAt(0)?-1:e.userIndentationDelta;return(e.indentation+r)*n.unit},languageData:{indentOnInput:/^\s*\]$/}};var mW=Object.freeze({__proto__:null,smalltalk:fW}),gW=/[^\s\|\!\+\-\*\?\~\^\&\:\(\)\[\]\{\}\"\\]/,QW=/[\|\!\+\-\*\?\~\^\&]/,$W=/^(OR|AND|NOT|TO)$/i;function bW(e){return function(t,n){for(var r=e;(e=t.peek())&&null!=e.match(gW);)r+=t.next();return n.tokenize=xW,$W.test(r)?"operator":function(e){return parseFloat(e).toString()===e}(r)?"number":":"==t.peek()?"propertyName":"string"}}function xW(e,t){var n=e.next();return'"'==n?t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next())&&(r!=e||i);)i=!i&&"\\"==r;return i||(n.tokenize=xW),"string"}}(n):QW.test(n)?t.tokenize=function(e){return function(t,n){return"|"==e?t.eat(/\|/):"&"==e&&t.eat(/\&/),n.tokenize=xW,"operator"}}(n):gW.test(n)&&(t.tokenize=bW(n)),t.tokenize!=xW?t.tokenize(e,t):null}const wW={startState:function(){return{tokenize:xW}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)}};var kW,yW=Object.freeze({__proto__:null,solr:wW});function PW(e){return new RegExp("^(?:"+e.join("|")+")$","i")}var vW=PW(["str","lang","langmatches","datatype","bound","sameterm","isiri","isuri","iri","uri","bnode","count","sum","min","max","avg","sample","group_concat","rand","abs","ceil","floor","round","concat","substr","strlen","replace","ucase","lcase","encode_for_uri","contains","strstarts","strends","strbefore","strafter","year","month","day","hours","minutes","seconds","timezone","tz","now","uuid","struuid","md5","sha1","sha256","sha384","sha512","coalesce","if","strlang","strdt","isnumeric","regex","exists","isblank","isliteral","a","bind"]),SW=PW(["base","prefix","select","distinct","reduced","construct","describe","ask","from","named","where","order","limit","offset","filter","optional","graph","by","asc","desc","as","having","undef","values","group","minus","in","not","service","silent","using","insert","delete","union","true","false","with","data","copy","to","move","add","create","drop","clear","load"]),_W=/[*+\-<>=&|\^\/!\?]/;function XW(e,t){var n=e.next();if(kW=null,"$"==n||"?"==n)return"?"==n&&e.match(/\s/,!1)?"operator":(e.match(/^[A-Za-z0-9_\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][A-Za-z0-9_\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]*/),"variableName.local");if("<"!=n||e.match(/^[\s\u00a0=]/,!1)){if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){n.tokenize=XW;break}i=!i&&"\\"==r}return"string"}}(n),t.tokenize(e,t);if(/[{}\(\),\.;\[\]]/.test(n))return kW=n,"bracket";if("#"==n)return e.skipToEnd(),"comment";if("^"===n)return"^"===(n=e.peek())?e.eat("^"):e.eatWhile(_W),"operator";if(_W.test(n))return e.eatWhile(_W),"operator";if(":"==n)return TW(e),"atom";if("@"==n)return e.eatWhile(/[a-z\d\-]/i),"meta";if(e.eatWhile(/[_\w\d]/),e.eat(":"))return TW(e),"atom";var r=e.current();return vW.test(r)?"builtin":SW.test(r)?"keyword":"variable"}return e.match(/^[^\s\u00a0>]*>?/),"atom"}function TW(e){e.match(/(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])+/i)}function RW(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function WW(e){e.indent=e.context.indent,e.context=e.context.prev}const qW={startState:function(){return{tokenize:XW,context:null,indent:0,col:0}},token:function(e,t){if(e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"!=n&&t.context&&null==t.context.align&&"pattern"!=t.context.type&&(t.context.align=!0),"("==kW)RW(t,")",e.column());else if("["==kW)RW(t,"]",e.column());else if("{"==kW)RW(t,"}",e.column());else if(/[\]\}\)]/.test(kW)){for(;t.context&&"pattern"==t.context.type;)WW(t);t.context&&kW==t.context.type&&(WW(t),"}"==kW&&t.context&&"pattern"==t.context.type&&WW(t))}else"."==kW&&t.context&&"pattern"==t.context.type?WW(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?RW(t,"pattern",e.column()):"pattern"!=t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"==i.type;)i=i.prev;var a=i&&r==i.type;return i?"pattern"==i.type?i.col:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0},languageData:{commentTokens:{line:"#"}}};var zW=Object.freeze({__proto__:null,sparql:qW});var YW=Object.freeze({__proto__:null,spreadsheet:{startState:function(){return{stringType:null,stack:[]}},token:function(e,t){if(e){switch(0===t.stack.length&&('"'!=e.peek()&&"'"!=e.peek()||(t.stringType=e.peek(),e.next(),t.stack.unshift("string"))),t.stack[0]){case"string":for(;"string"===t.stack[0]&&!e.eol();)e.peek()===t.stringType?(e.next(),t.stack.shift()):"\\"===e.peek()?(e.next(),e.next()):e.match(/^.[^\\\"\']*/);return"string";case"characterClass":for(;"characterClass"===t.stack[0]&&!e.eol();)e.match(/^[^\]\\]+/)||e.match(/^\\./)||t.stack.shift();return"operator"}var n=e.peek();switch(n){case"[":return e.next(),t.stack.unshift("characterClass"),"bracket";case":":return e.next(),"operator";case"\\":return e.match(/\\[a-z]+/)?"string.special":(e.next(),"atom");case".":case",":case";":case"*":case"-":case"+":case"^":case"<":case"/":case"=":return e.next(),"atom";case"$":return e.next(),"builtin"}return e.match(/\d+/)?e.match(/^\w+/)?"error":"number":e.match(/^[a-zA-Z_]\w*/)?e.match(/(?=[\(.])/,!1)?"keyword":"variable":-1!=["[","]","(",")","{","}"].indexOf(n)?(e.next(),"bracket"):(e.eatSpace()||e.next(),null)}}}}),ZW=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","bgsound","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","nobr","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","track","u","ul","var","video"],UW=["domain","regexp","url-prefix","url"],EW=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],IW=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],VW=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode","font-smoothing","osx-font-smoothing"],CW=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],AW=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],GW=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],jW=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","spell-out","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","x-large","x-small","xor","xx-large","xx-small","bicubic","optimizespeed","grayscale","row","row-reverse","wrap","wrap-reverse","column-reverse","flex-start","flex-end","space-between","space-around","unset"],LW=["in","and","or","not","is not","is a","is","isnt","defined","if unless"],NW=["for","if","else","unless","from","to"],DW=["null","true","false","href","title","type","not-allowed","readonly","disabled"],MW=ZW.concat(UW,EW,IW,VW,CW,GW,jW,AW,LW,NW,DW,["@font-face","@keyframes","@media","@viewport","@page","@host","@supports","@block","@css"]);function FW(e){return e=e.sort((function(e,t){return t>e})),new RegExp("^(("+e.join(")|(")+"))\\b")}function BW(e){for(var t={},n=0;n]=?|\?:|\~)/,dq=FW(LW),pq=BW(NW),fq=new RegExp(/^\-(moz|ms|o|webkit)-/i),mq=BW(DW),gq="",Qq={};function $q(e,t){if(gq=e.string.match(/(^[\w-]+\s*=\s*$)|(^\s*[\w-]+\s*=\s*[\w-])|(^\s*(\.|#|@|\$|\&|\[|\d|\+|::?|\{|\>|~|\/)?\s*[\w-]*([a-z0-9-]|\*|\/\*)(\(|,)?)/),t.context.line.firstWord=gq?gq[0].replace(/^\s*/,""):"",t.context.line.indent=e.indentation(),HW=e.peek(),e.match("//"))return e.skipToEnd(),["comment","comment"];if(e.match("/*"))return t.tokenize=bq,bq(e,t);if('"'==HW||"'"==HW)return e.next(),t.tokenize=xq(HW),t.tokenize(e,t);if("@"==HW)return e.next(),e.eatWhile(/[\w\\-]/),["def",e.current()];if("#"==HW){if(e.next(),e.match(/^[0-9a-f]{3}([0-9a-f]([0-9a-f]{2}){0,2})?\b(?!-)/i))return["atom","atom"];if(e.match(/^[a-z][\w-]*/i))return["builtin","hash"]}return e.match(fq)?["meta","vendor-prefixes"]:e.match(/^-?[0-9]?\.?[0-9]/)?(e.eatWhile(/[a-z%]/i),["number","unit"]):"!"==HW?(e.next(),[e.match(/^(important|optional)/i)?"keyword":"operator","important"]):"."==HW&&e.match(/^\.[a-z][\w-]*/i)?["qualifier","qualifier"]:e.match(Oq)?("("==e.peek()&&(t.tokenize=wq),["property","word"]):e.match(/^[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","mixin"]):e.match(/^(\+|-)[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","block-mixin"]):e.string.match(/^\s*&/)&&e.match(/^[-_]+[a-z][\w-]*/)?["qualifier","qualifier"]:e.match(/^(\/|&)(-|_|:|\.|#|[a-z])/)?(e.backUp(1),["variableName.special","reference"]):e.match(/^&{1}\s*$/)?["variableName.special","reference"]:e.match(dq)?["operator","operator"]:e.match(/^\$?[-_]*[a-z0-9]+[\w-]*/i)?e.match(/^(\.|\[)[\w-\'\"\]]+/i,!1)&&!Sq(e.current())?(e.match("."),["variable","variable-name"]):["variable","word"]:e.match(hq)?["operator",e.current()]:/[:;,{}\[\]\(\)]/.test(HW)?(e.next(),[null,HW]):(e.next(),[null,null])}function bq(e,t){for(var n,r=!1;null!=(n=e.next());){if(r&&"/"==n){t.tokenize=null;break}r="*"==n}return["comment","comment"]}function xq(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){")"==e&&t.backUp(1);break}i=!i&&"\\"==r}return(r==e||!i&&")"!=e)&&(n.tokenize=null),["string","string"]}}function wq(e,t){return e.next(),e.match(/\s*[\"\')]/,!1)?t.tokenize=null:t.tokenize=xq(")"),[null,"("]}function kq(e,t,n,r){this.type=e,this.indent=t,this.prev=n,this.line=r||{firstWord:"",indent:0}}function yq(e,t,n,r){return r=r>=0?r:t.indentUnit,e.context=new kq(n,t.indentation()+r,e.context),n}function Pq(e,t,n){var r=e.context.indent-t.indentUnit;return n=n||!1,e.context=e.context.prev,n&&(e.context.indent=r),e.context.type}function vq(e,t,n,r){for(var i=r||1;i>0;i--)n.context=n.context.prev;return function(e,t,n){return Qq[n.context.type](e,t,n)}(e,t,n)}function Sq(e){return e.toLowerCase()in tq}function _q(e){return(e=e.toLowerCase())in rq||e in uq}function Xq(e){return e.toLowerCase()in pq}function Tq(e){return e.toLowerCase().match(fq)}function Rq(e){var t=e.toLowerCase(),n="variable";return Sq(e)?n="tag":Xq(e)?n="block-keyword":_q(e)?n="property":t in aq||t in mq?n="atom":"return"==t||t in oq?n="keyword":e.match(/^[A-Z]/)&&(n="string"),n}function Wq(e,t){return Zq(t)&&("{"==e||"]"==e||"hash"==e||"qualifier"==e)||"block-mixin"==e}function qq(e,t){return"{"==e&&t.match(/^\s*\$?[\w-]+/i,!1)}function zq(e,t){return":"==e&&t.match(/^[a-z-]+/,!1)}function Yq(e){return e.sol()||e.string.match(new RegExp("^\\s*"+e.current().replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")))}function Zq(e){return e.eol()||e.match(/^\s*$/,!1)}function Uq(e){var t=/^\s*[-_]*[a-z0-9]+[\w-]*/i,n="string"==typeof e?e.match(t):e.string.match(t);return n?n[0].replace(/^\s*/,""):""}Qq.block=function(e,t,n){if("comment"==e&&Yq(t)||","==e&&Zq(t)||"mixin"==e)return yq(n,t,"block",0);if(qq(e,t))return yq(n,t,"interpolation");if(Zq(t)&&"]"==e&&!/^\s*(\.|#|:|\[|\*|&)/.test(t.string)&&!Sq(Uq(t)))return yq(n,t,"block",0);if(Wq(e,t))return yq(n,t,"block");if("}"==e&&Zq(t))return yq(n,t,"block",0);if("variable-name"==e)return t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/)||Xq(Uq(t))?yq(n,t,"variableName"):yq(n,t,"variableName",0);if("="==e)return Zq(t)||Xq(Uq(t))?yq(n,t,"block"):yq(n,t,"block",0);if("*"==e&&(Zq(t)||t.match(/\s*(,|\.|#|\[|:|{)/,!1)))return eq="tag",yq(n,t,"block");if(zq(e,t))return yq(n,t,"pseudo");if(/@(font-face|media|supports|(-moz-)?document)/.test(e))return yq(n,t,Zq(t)?"block":"atBlock");if(/@(-(moz|ms|o|webkit)-)?keyframes$/.test(e))return yq(n,t,"keyframes");if(/@extends?/.test(e))return yq(n,t,"extend",0);if(e&&"@"==e.charAt(0))return t.indentation()>0&&_q(t.current().slice(1))?(eq="variable","block"):/(@import|@require|@charset)/.test(e)?yq(n,t,"block",0):yq(n,t,"block");if("reference"==e&&Zq(t))return yq(n,t,"block");if("("==e)return yq(n,t,"parens");if("vendor-prefixes"==e)return yq(n,t,"vendorPrefixes");if("word"==e){var r=t.current();if("property"==(eq=Rq(r)))return Yq(t)?yq(n,t,"block",0):(eq="atom","block");if("tag"==eq){if(/embed|menu|pre|progress|sub|table/.test(r)&&_q(Uq(t)))return eq="atom","block";if(t.string.match(new RegExp("\\[\\s*"+r+"|"+r+"\\s*\\]")))return eq="atom","block";if(nq.test(r)&&(Yq(t)&&t.string.match(/=/)||!Yq(t)&&!t.string.match(/^(\s*\.|#|\&|\[|\/|>|\*)/)&&!Sq(Uq(t))))return eq="variable",Xq(Uq(t))?"block":yq(n,t,"block",0);if(Zq(t))return yq(n,t,"block")}if("block-keyword"==eq)return eq="keyword",t.current(/(if|unless)/)&&!Yq(t)?"block":yq(n,t,"block");if("return"==r)return yq(n,t,"block",0);if("variable"==eq&&t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/))return yq(n,t,"block")}return n.context.type},Qq.parens=function(e,t,n){if("("==e)return yq(n,t,"parens");if(")"==e)return"parens"==n.context.prev.type?Pq(n,t):t.string.match(/^[a-z][\w-]*\(/i)&&Zq(t)||Xq(Uq(t))||/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(Uq(t))||!t.string.match(/^-?[a-z][\w-\.\[\]\'\"]*\s*=/)&&Sq(Uq(t))?yq(n,t,"block"):t.string.match(/^[\$-]?[a-z][\w-\.\[\]\'\"]*\s*=/)||t.string.match(/^\s*(\(|\)|[0-9])/)||t.string.match(/^\s+[a-z][\w-]*\(/i)||t.string.match(/^\s+[\$-]?[a-z]/i)?yq(n,t,"block",0):Zq(t)?yq(n,t,"block"):yq(n,t,"block",0);if(e&&"@"==e.charAt(0)&&_q(t.current().slice(1))&&(eq="variable"),"word"==e){var r=t.current();"tag"==(eq=Rq(r))&&nq.test(r)&&(eq="variable"),"property"!=eq&&"to"!=r||(eq="atom")}return"variable-name"==e?yq(n,t,"variableName"):zq(e,t)?yq(n,t,"pseudo"):n.context.type},Qq.vendorPrefixes=function(e,t,n){return"word"==e?(eq="property",yq(n,t,"block",0)):Pq(n,t)},Qq.pseudo=function(e,t,n){return _q(Uq(t.string))?vq(e,t,n):(t.match(/^[a-z-]+/),eq="variableName.special",Zq(t)?yq(n,t,"block"):Pq(n,t))},Qq.atBlock=function(e,t,n){if("("==e)return yq(n,t,"atBlock_parens");if(Wq(e,t))return yq(n,t,"block");if(qq(e,t))return yq(n,t,"interpolation");if("word"==e){var r=t.current().toLowerCase();if("tag"==(eq=/^(only|not|and|or)$/.test(r)?"keyword":sq.hasOwnProperty(r)?"tag":cq.hasOwnProperty(r)?"attribute":lq.hasOwnProperty(r)?"property":iq.hasOwnProperty(r)?"string.special":Rq(t.current()))&&Zq(t))return yq(n,t,"block")}return"operator"==e&&/^(not|and|or)$/.test(t.current())&&(eq="keyword"),n.context.type},Qq.atBlock_parens=function(e,t,n){if("{"==e||"}"==e)return n.context.type;if(")"==e)return Zq(t)?yq(n,t,"block"):yq(n,t,"atBlock");if("word"==e){var r=t.current().toLowerCase();return eq=Rq(r),/^(max|min)/.test(r)&&(eq="property"),"tag"==eq&&(eq=nq.test(r)?"variable":"atom"),n.context.type}return Qq.atBlock(e,t,n)},Qq.keyframes=function(e,t,n){return"0"==t.indentation()&&("}"==e&&Yq(t)||"]"==e||"hash"==e||"qualifier"==e||Sq(t.current()))?vq(e,t,n):"{"==e?yq(n,t,"keyframes"):"}"==e?Yq(t)?Pq(n,t,!0):yq(n,t,"keyframes"):"unit"==e&&/^[0-9]+\%$/.test(t.current())?yq(n,t,"keyframes"):"word"==e&&"block-keyword"==(eq=Rq(t.current()))?(eq="keyword",yq(n,t,"keyframes")):/@(font-face|media|supports|(-moz-)?document)/.test(e)?yq(n,t,Zq(t)?"block":"atBlock"):"mixin"==e?yq(n,t,"block",0):n.context.type},Qq.interpolation=function(e,t,n){return"{"==e&&Pq(n,t)&&yq(n,t,"block"),"}"==e?t.string.match(/^\s*(\.|#|:|\[|\*|&|>|~|\+|\/)/i)||t.string.match(/^\s*[a-z]/i)&&Sq(Uq(t))?yq(n,t,"block"):!t.string.match(/^(\{|\s*\&)/)||t.match(/\s*[\w-]/,!1)?yq(n,t,"block",0):yq(n,t,"block"):"variable-name"==e?yq(n,t,"variableName",0):("word"==e&&"tag"==(eq=Rq(t.current()))&&(eq="atom"),n.context.type)},Qq.extend=function(e,t,n){return"["==e||"="==e?"extend":"]"==e?Pq(n,t):"word"==e?(eq=Rq(t.current()),"extend"):Pq(n,t)},Qq.variableName=function(e,t,n){return"string"==e||"["==e||"]"==e||t.current().match(/^(\.|\$)/)?(t.current().match(/^\.[\w-]+/i)&&(eq="variable"),"variableName"):vq(e,t,n)};const Eq={startState:function(){return{tokenize:null,state:"block",context:new kq("block",0,null)}},token:function(e,t){return!t.tokenize&&e.eatSpace()?null:((KW=(t.tokenize||$q)(e,t))&&"object"==typeof KW&&(JW=KW[1],KW=KW[0]),eq=KW,t.state=Qq[t.state](JW,e,t),eq)},indent:function(e,t,n){var r=e.context,i=t&&t.charAt(0),a=r.indent,o=Uq(t),s=n.lineIndent(n.pos),O=e.context.prev?e.context.prev.line.firstWord:"",l=e.context.prev?e.context.prev.line.indent:s;return r.prev&&("}"==i&&("block"==r.type||"atBlock"==r.type||"keyframes"==r.type)||")"==i&&("parens"==r.type||"atBlock_parens"==r.type)||"{"==i&&"at"==r.type)?a=r.indent-n.unit:/(\})/.test(i)||(/@|\$|\d/.test(i)||/^\{/.test(t)||/^\s*\/(\/|\*)/.test(t)||/^\s*\/\*/.test(O)||/^\s*[\w-\.\[\]\'\"]+\s*(\?|:|\+)?=/i.test(t)||/^(\+|-)?[a-z][\w-]*\(/i.test(t)||/^return/.test(t)||Xq(o)?a=s:/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(i)||Sq(o)?a=/\,\s*$/.test(O)?l:e.sol()||!/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(O)&&!Sq(O)?s:s<=l?l:l+n.unit:/,\s*$/.test(t)||!Tq(o)&&!_q(o)||(a=Xq(O)?s<=l?l:l+n.unit:/^\{/.test(O)?s<=l?s:l+n.unit:Tq(O)||_q(O)?s>=l?l:s:/^(\.|#|:|\[|\*|&|@|\+|\-|>|~|\/)/.test(O)||/=\s*$/.test(O)||Sq(O)||/^\$[\w-\.\[\]\'\"]/.test(O)?l+n.unit:s)),a},languageData:{indentOnInput:/^\s*\}$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:MW}};var Iq=Object.freeze({__proto__:null,stylus:Eq});function Vq(e){for(var t={},n=0;n~^?!".indexOf(i)>-1)return e.next(),"operator";if(":;,.(){}[]".indexOf(i)>-1)return e.next(),e.match(".."),"punctuation";if(r=e.match(/("""|"|')/)){var a=tz.bind(null,r[0]);return t.tokenize.push(a),a(e,t)}if(e.match(Fq)){var o=e.current();return jq.hasOwnProperty(o)?"type":Gq.hasOwnProperty(o)?"atom":Cq.hasOwnProperty(o)?(Aq.hasOwnProperty(o)&&(t.prev="define"),"keyword"):"define"==n?"def":"variable"}return e.next(),null}function ez(){var e=0;return function(t,n,r){var i=Jq(t,n,r);if("punctuation"==i)if("("==t.current())++e;else if(")"==t.current()){if(0==e)return t.backUp(1),n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n);--e}return i}}function tz(e,t,n){for(var r,i=1==e.length,a=!1;r=t.peek();)if(a){if(t.next(),"("==r)return n.tokenize.push(ez()),"string";a=!1}else{if(t.match(e))return n.tokenize.pop(),"string";t.next(),a="\\"==r}return i&&n.tokenize.pop(),"string"}function nz(e,t){for(var n;e.match(/^[^/*]+/,!0),n=e.next();)"/"===n&&e.eat("*")?t.tokenize.push(nz):"*"===n&&e.eat("/")&&t.tokenize.pop();return"comment"}function rz(e,t,n){this.prev=e,this.align=t,this.indented=n}function iz(e,t){var n=t.match(/^\s*($|\/[\/\*])/,!1)?null:t.column()+1;e.context=new rz(e.context,n,e.indented)}function az(e){e.context&&(e.indented=e.context.indented,e.context=e.context.prev)}const oz={startState:function(){return{prev:null,context:null,indented:0,tokenize:[]}},token:function(e,t){var n=t.prev;t.prev=null;var r=(t.tokenize[t.tokenize.length-1]||Jq)(e,t,n);if(r&&"comment"!=r?t.prev||(t.prev=r):t.prev=n,"punctuation"==r){var i=/[\(\[\{]|([\]\)\}])/.exec(e.current());i&&(i[1]?az:iz)(t,e)}return r},indent:function(e,t,n){var r=e.context;if(!r)return 0;var i=/^[\]\}\)]/.test(t);return null!=r.align?r.align-(i?1:0):r.indented+(i?0:n.unit)},languageData:{indentOnInput:/^\s*[\)\}\]]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}};var sz=Object.freeze({__proto__:null,swift:oz});function Oz(e){function t(e,t){e.cmdState.push(t)}function n(e){return e.cmdState.length>0?e.cmdState[e.cmdState.length-1]:null}function r(e,t,n){return function(){this.name=e,this.bracketNo=0,this.style=t,this.styles=n,this.argument=null,this.styleIdentifier=function(){return this.styles[this.bracketNo-1]||null},this.openBracket=function(){return this.bracketNo++,"bracket"},this.closeBracket=function(){}}}var i={};function a(e,t){e.f=t}function o(e,r){var o;if(e.match(/^\\[a-zA-Z@]+/)){var l=e.current().slice(1);return t(r,o=new(o=i.hasOwnProperty(l)?i[l]:i.DEFAULT)),a(r,O),o.style}if(e.match(/^\\[$&%#{}_]/))return"tag";if(e.match(/^\\[,;!\/\\]/))return"tag";if(e.match("\\["))return a(r,(function(e,t){return s(e,t,"\\]")})),"keyword";if(e.match("\\("))return a(r,(function(e,t){return s(e,t,"\\)")})),"keyword";if(e.match("$$"))return a(r,(function(e,t){return s(e,t,"$$")})),"keyword";if(e.match("$"))return a(r,(function(e,t){return s(e,t,"$")})),"keyword";var c=e.next();return"%"==c?(e.skipToEnd(),"comment"):"}"==c||"]"==c?(o=n(r))?(o.closeBracket(c),a(r,O),"bracket"):"error":"{"==c||"["==c?(t(r,o=new(o=i.DEFAULT)),"bracket"):/\d/.test(c)?(e.eatWhile(/[\w.%]/),"atom"):(e.eatWhile(/[\w\-_]/),o=function(e){for(var t=e.cmdState,n=t.length-1;n>=0;n--){var r=t[n];if("DEFAULT"!=r.name)return r}return{styleIdentifier:function(){return null}}}(r),"begin"==o.name&&(o.argument=e.current()),o.styleIdentifier())}function s(e,t,n){if(e.eatSpace())return null;if(n&&e.match(n))return a(t,o),"keyword";if(e.match(/^\\[a-zA-Z@]+/))return"tag";if(e.match(/^[a-zA-Z]+/))return"variableName.special";if(e.match(/^\\[$&%#{}_]/))return"tag";if(e.match(/^\\[,;!\/]/))return"tag";if(e.match(/^[\^_&]/))return"tag";if(e.match(/^[+\-<>|=,\/@!*:;'"`~#?]/))return null;if(e.match(/^(\d+\.\d*|\d*\.\d+|\d+)/))return"number";var r=e.next();return"{"==r||"}"==r||"["==r||"]"==r||"("==r||")"==r?"bracket":"%"==r?(e.skipToEnd(),"comment"):"error"}function O(e,t){var r=e.peek();return"{"==r||"["==r?(n(t).openBracket(r),e.eat(r),a(t,o),"bracket"):/[ \t\r]/.test(r)?(e.eat(r),null):(a(t,o),function(e){var t=e.cmdState.pop();t&&t.closeBracket()}(t),o(e,t))}return i.importmodule=r("importmodule","tag",["string","builtin"]),i.documentclass=r("documentclass","tag",["","atom"]),i.usepackage=r("usepackage","tag",["atom"]),i.begin=r("begin","tag",["atom"]),i.end=r("end","tag",["atom"]),i.label=r("label","tag",["atom"]),i.ref=r("ref","tag",["atom"]),i.eqref=r("eqref","tag",["atom"]),i.cite=r("cite","tag",["atom"]),i.bibitem=r("bibitem","tag",["atom"]),i.Bibitem=r("Bibitem","tag",["atom"]),i.RBibitem=r("RBibitem","tag",["atom"]),i.DEFAULT=function(){this.name="DEFAULT",this.style="tag",this.styleIdentifier=this.openBracket=this.closeBracket=function(){}},{startState:function(){return{cmdState:[],f:e?function(e,t){return s(e,t)}:o}},copyState:function(e){return{cmdState:e.cmdState.slice(),f:e.f}},token:function(e,t){return t.f(e,t)},blankLine:function(e){e.f=o,e.cmdState.length=0},languageData:{commentTokens:{line:"%"}}}}const lz=Oz(!1),cz=Oz(!0);var uz=Object.freeze({__proto__:null,stex:lz,stexMath:cz});function hz(e){var t=e.statementIndentUnit,n=e.dontAlignCalls,r=e.noIndentKeywords||[],i=e.multiLineStrings,a=e.hooks||{};function o(e){for(var t={},n=e.split(" "),r=0;r=0)return o}var s=e.context,O=r&&r.charAt(0);"statement"==s.type&&"}"==O&&(s=s.prev);var l=!1,c=r.match(Q);return c&&(l=T(c[0],s.type)),"statement"==s.type?s.indented+("{"==O?0:t||i.unit):$.test(s.type)&&s.align&&!n?s.column+(l?0:1):")"!=s.type||l?s.indented+(l?0:i.unit):s.indented+(t||i.unit)},languageData:{indentOnInput:function(){var e=[];for(var t in x)if(x[t]){var n=x[t].split(";");for(var r in n)e.push(n[r])}return new RegExp("[{}()\\[\\]]|("+e.join("|")+")$")}(),commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}}}const dz=hz({});var pz={"|":"link",">":"property",$:"variable",$$:"variable","?$":"qualifier","?*":"qualifier","-":"contentSeparator","/":"property","/-":"property","@":"variableName.special","@-":"variableName.special","@++":"variableName.special","@+=":"variableName.special","@+=-":"variableName.special","@--":"variableName.special","@-=":"variableName.special","%+":"tag","%-":"tag","%":"tag",">>":"tag","<<":"tag","<>":"tag","#":"tag","^":"attribute","^^":"attribute","^!":"attribute","*":"variable","**":"variable","\\":"keyword",'"':"comment"},fz={"/":"beh-hier",">":"beh-hier","-":"phys-hier","|":"pipe","?":"when","@":"stage","\\":"keyword"},mz=/^([~!@#\$%\^&\*-\+=\?\/\\\|'"<>]+)([\d\w_]*)/,gz=/^[! ] */,Qz=/^\/[\/\*]/;const $z=hz({hooks:{electricInput:!1,token:function(e,t){var n,r=void 0;if(e.sol()&&!t.tlvInBlockComment){"\\"==e.peek()&&(r="def",e.skipToEnd(),e.string.match(/\\SV/)?t.tlvCodeActive=!1:e.string.match(/\\TLV/)&&(t.tlvCodeActive=!0)),t.tlvCodeActive&&0==e.pos&&0==t.indented&&(n=e.match(gz,!1))&&(t.indented=n[0].length);var i=t.indented,a=i/3;if(a<=t.tlvIndentationStyle.length){var o=e.string.length==i,s=3*a;if(s0||(t.tlvIndentationStyle[a]=fz[l],a++))}if(!o)for(;t.tlvIndentationStyle.length>a;)t.tlvIndentationStyle.pop()}t.tlvNextIndent=i}if(t.tlvCodeActive)if(void 0!==r);else if(t.tlvInBlockComment)e.match(/^.*?\*\//)?t.tlvInBlockComment=!1:e.skipToEnd(),r="comment";else if((n=e.match(Qz))&&!t.tlvInBlockComment)"//"==n[0]?e.skipToEnd():t.tlvInBlockComment=!0,r="comment";else if(n=e.match(mz)){var c=n[1],u=n[2];pz.hasOwnProperty(c)&&(u.length>0||e.eol())?r=pz[c]:e.backUp(e.current().length-1)}else e.match(/^\t+/)?r="invalid":e.match(/^[\[\]{}\(\);\:]+/)?r="meta":(n=e.match(/^[mM]4([\+_])?[\w\d_]*/))?r="+"==n[1]?"keyword.special":"keyword":e.match(/^ +/)?e.eol()&&(r="error"):e.match(/^[\w\d_]+/)?r="number":e.next();else e.match(/^[mM]4([\w\d_]*)/)&&(r="keyword");return r},indent:function(e){return 1==e.tlvCodeActive?e.tlvNextIndent:-1},startState:function(e){e.tlvIndentationStyle=[],e.tlvCodeActive=!0,e.tlvNextIndent=-1,e.tlvInBlockComment=!1}}});var bz=Object.freeze({__proto__:null,verilog:dz,tlv:$z});function xz(e){for(var t={},n=e.split(" "),r=0;r!?^\/\|]/;function Pz(e,t,n){return t.tokenize=n,n(e,t)}function vz(e,t){var n=t.beforeParams;t.beforeParams=!1;var r=e.next();if('"'!=r&&"'"!=r||!t.inParams){if(/[\[\]{}\(\),;\.]/.test(r))return"("==r&&n?t.inParams=!0:")"==r&&(t.inParams=!1),null;if(/\d/.test(r))return e.eatWhile(/[\w\.]/),"number";if("#"==r)return e.eat("*")?Pz(e,t,Sz):"#"==r&&e.match(/ *\[ *\[/)?Pz(e,t,_z):(e.skipToEnd(),"comment");if('"'==r)return e.skipTo(/"/),"comment";if("$"==r)return e.eatWhile(/[$_a-z0-9A-Z\.{:]/),e.eatWhile(/}/),t.beforeParams=!0,"builtin";if(yz.test(r))return e.eatWhile(yz),"comment";e.eatWhile(/[\w\$_{}\xa1-\uffff]/);var i=e.current().toLowerCase();return wz&&wz.propertyIsEnumerable(i)?"keyword":kz&&kz.propertyIsEnumerable(i)?(t.beforeParams=!0,"keyword"):null}return Pz(e,t,function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}i=!i&&"\\"==r}return a&&(n.tokenize=vz),"string"}}(r))}function Sz(e,t){for(var n,r=!1;n=e.next();){if("#"==n&&r){t.tokenize=vz;break}r="*"==n}return"comment"}function _z(e,t){for(var n,r=0;n=e.next();){if("#"==n&&2==r){t.tokenize=vz;break}"]"==n?r++:" "!=n&&(r=0)}return"meta"}const Xz={startState:function(){return{tokenize:vz,beforeParams:!1,inParams:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{line:"#"}}};var Tz=Object.freeze({__proto__:null,tcl:Xz}),Rz={addition:"inserted",attributes:"propertyName",bold:"strong",cite:"keyword",code:"monospace",definitionList:"list",deletion:"deleted",div:"punctuation",em:"emphasis",footnote:"variable",footCite:"qualifier",header:"heading",html:"comment",image:"atom",italic:"emphasis",link:"link",linkDefinition:"link",list1:"list",list2:"list.special",list3:"list",notextile:"string.special",pre:"operator",p:"content",quote:"bracket",span:"quote",specialChar:"character",strong:"strong",sub:"content.special",sup:"content.special",table:"variableName.special",tableHeading:"operator"};function Wz(e,t,n){if("_"===n)return e.eat("_")?qz(e,t,"italic",/__/,2):qz(e,t,"em",/_/,1);if("*"===n)return e.eat("*")?qz(e,t,"bold",/\*\*/,2):qz(e,t,"strong",/\*/,1);if("["===n)return e.match(/\d+\]/)&&(t.footCite=!0),zz(t);if("("===n&&e.match(/^(r|tm|c)\)/))return Rz.specialChar;if("<"===n&&e.match(/(\w+)[^>]+>[^<]+<\/\1>/))return Rz.html;if("?"===n&&e.eat("?"))return qz(e,t,"cite",/\?\?/,2);if("="===n&&e.eat("="))return qz(e,t,"notextile",/==/,2);if("-"===n&&!e.eat("-"))return qz(e,t,"deletion",/-/,1);if("+"===n)return qz(e,t,"addition",/\+/,1);if("~"===n)return qz(e,t,"sub",/~/,1);if("^"===n)return qz(e,t,"sup",/\^/,1);if("%"===n)return qz(e,t,"span",/%/,1);if("@"===n)return qz(e,t,"code",/@/,1);if("!"===n){var r=qz(e,t,"image",/(?:\([^\)]+\))?!/,1);return e.match(/^:\S+/),r}return zz(t)}function qz(e,t,n,r,i){var a=e.pos>i?e.string.charAt(e.pos-i-1):null,o=e.peek();if(t[n]){if((!o||/\W/.test(o))&&a&&/\S/.test(a)){var s=zz(t);return t[n]=!1,s}}else(!a||/\W/.test(a))&&o&&/\S/.test(o)&&e.match(new RegExp("^.*\\S"+r.source+"(?:\\W|$)"),!1)&&(t[n]=!0,t.mode=Ez.attributes);return zz(t)}function zz(e){var t=Yz(e);if(t)return t;var n=[];return e.layoutType&&n.push(Rz[e.layoutType]),n=n.concat(function(e){for(var t=[],n=1;n]+)?>(?:[^<]+<\/\1>)?/,link:/[^"]+":\S/,linkDefinition:/\[[^\s\]]+\]\S+/,list:/(?:#+|\*+)/,notextile:"notextile",para:"p",pre:"pre",table:"table",tableCellAttributes:/[\/\\]\d+/,tableHeading:/\|_\./,tableText:/[^"_\*\[\(\?\+~\^%@|-]+/,text:/[^!"_=\*\[\(<\?\+~\^%@-]+/},attributes:{align:/(?:<>|<|>|=)/,selector:/\([^\(][^\)]+\)/,lang:/\[[^\[\]]+\]/,pad:/(?:\(+|\)+){1,2}/,css:/\{[^\}]+\}/},createRe:function(e){switch(e){case"drawTable":return Zz.makeRe("^",Zz.single.drawTable,"$");case"html":return Zz.makeRe("^",Zz.single.html,"(?:",Zz.single.html,")*","$");case"linkDefinition":return Zz.makeRe("^",Zz.single.linkDefinition,"$");case"listLayout":return Zz.makeRe("^",Zz.single.list,Uz("allAttributes"),"*\\s+");case"tableCellAttributes":return Zz.makeRe("^",Zz.choiceRe(Zz.single.tableCellAttributes,Uz("allAttributes")),"+\\.");case"type":return Zz.makeRe("^",Uz("allTypes"));case"typeLayout":return Zz.makeRe("^",Uz("allTypes"),Uz("allAttributes"),"*\\.\\.?","(\\s+|$)");case"attributes":return Zz.makeRe("^",Uz("allAttributes"),"+");case"allTypes":return Zz.choiceRe(Zz.single.div,Zz.single.foot,Zz.single.header,Zz.single.bc,Zz.single.bq,Zz.single.notextile,Zz.single.pre,Zz.single.table,Zz.single.para);case"allAttributes":return Zz.choiceRe(Zz.attributes.selector,Zz.attributes.css,Zz.attributes.lang,Zz.attributes.align,Zz.attributes.pad);default:return Zz.makeRe("^",Zz.single[e])}},makeRe:function(){for(var e="",t=0;t$/,Hz=/^$/,Kz=/^\{\{\{$/,Jz=/^\}\}\}$/,eY=/.*?\}\}\}/;function tY(e,t,n){return t.tokenize=n,n(e,t)}function nY(e,t){var n=e.sol(),r=e.peek();if(t.block=!1,n&&/[<\/\*{}\-]/.test(r)){if(e.match(Kz))return t.block=!0,tY(e,t,aY);if(e.match(Dz))return"quote";if(e.match(Lz)||e.match(Nz))return"comment";if(e.match(Mz)||e.match(Fz)||e.match(Bz)||e.match(Hz))return"comment";if(e.match(jz))return"contentSeparator"}if(e.next(),n&&/[\/\*!#;:>|]/.test(r)){if("!"==r)return e.skipToEnd(),"header";if("*"==r)return e.eatWhile("*"),"comment";if("#"==r)return e.eatWhile("#"),"comment";if(";"==r)return e.eatWhile(";"),"comment";if(":"==r)return e.eatWhile(":"),"comment";if(">"==r)return e.eatWhile(">"),"quote";if("|"==r)return"header"}if("{"==r&&e.match("{{"))return tY(e,t,aY);if(/[hf]/i.test(r)&&/[ti]/i.test(e.peek())&&e.match(/\b(ttps?|tp|ile):\/\/[\-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$]/i))return"link";if('"'==r)return"string";if("~"==r)return"brace";if(/[\[\]]/.test(r)&&e.match(r))return"brace";if("@"==r)return e.eatWhile(Gz),"link";if(/\d/.test(r))return e.eatWhile(/\d/),"number";if("/"==r){if(e.eat("%"))return tY(e,t,rY);if(e.eat("/"))return tY(e,t,oY)}if("_"==r&&e.eat("_"))return tY(e,t,sY);if("-"==r&&e.eat("-")){if(" "!=e.peek())return tY(e,t,OY);if(" "==e.peek())return"brace"}return"'"==r&&e.eat("'")?tY(e,t,iY):"<"==r&&e.eat("<")?tY(e,t,lY):(e.eatWhile(/[\w\$_]/),Cz.propertyIsEnumerable(e.current())?"keyword":null)}function rY(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=nY;break}r="%"==n}return"comment"}function iY(e,t){for(var n,r=!1;n=e.next();){if("'"==n&&r){t.tokenize=nY;break}r="'"==n}return"strong"}function aY(e,t){var n=t.block;return n&&e.current()?"comment":!n&&e.match(eY)||n&&e.sol()&&e.match(Jz)?(t.tokenize=nY,"comment"):(e.next(),"comment")}function oY(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=nY;break}r="/"==n}return"emphasis"}function sY(e,t){for(var n,r=!1;n=e.next();){if("_"==n&&r){t.tokenize=nY;break}r="_"==n}return"link"}function OY(e,t){for(var n,r=!1;n=e.next();){if("-"==n&&r){t.tokenize=nY;break}r="-"==n}return"deleted"}function lY(e,t){if("<<"==e.current())return"meta";var n=e.next();return n?">"==n&&">"==e.peek()?(e.next(),t.tokenize=nY,"meta"):(e.eatWhile(/[\w\$_]/),Az.propertyIsEnumerable(e.current())?"keyword":null):(t.tokenize=nY,null)}const cY={startState:function(){return{tokenize:nY}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)}};var uY,hY,dY,pY,fY=Object.freeze({__proto__:null,tiddlyWiki:cY});function mY(e,t,n){return function(r,i){for(;!r.eol();){if(r.match(t)){i.tokenize=QY;break}r.next()}return n&&(i.tokenize=n),e}}function gY(e){return function(t,n){for(;!t.eol();)t.next();return n.tokenize=QY,e}}function QY(e,t){function n(n){return t.tokenize=n,n(e,t)}var r=e.sol(),i=e.next();switch(i){case"{":return e.eat("/"),e.eatSpace(),e.eatWhile(/[^\s\u00a0=\"\'\/?(}]/),t.tokenize=$Y,"tag";case"_":if(e.eat("_"))return n(mY("strong","__",QY));break;case"'":if(e.eat("'"))return n(mY("em","''",QY));break;case"(":if(e.eat("("))return n(mY("link","))",QY));break;case"[":return n(mY("url","]",QY));case"|":if(e.eat("|"))return n(mY("comment","||"));break;case"-":if(e.eat("="))return n(mY("header string","=-",QY));if(e.eat("-"))return n(mY("error tw-deleted","--",QY));break;case"=":if(e.match("=="))return n(mY("tw-underline","===",QY));break;case":":if(e.eat(":"))return n(mY("comment","::"));break;case"^":return n(mY("tw-box","^"));case"~":if(e.match("np~"))return n(mY("meta","~/np~"))}if(r)switch(i){case"!":return e.match("!!!!!")||e.match("!!!!")||e.match("!!!")||e.match("!!"),n(gY("header string"));case"*":case"#":case"+":return n(gY("tw-listitem bracket"))}return null}function $Y(e,t){var n=e.next(),r=e.peek();return"}"==n?(t.tokenize=QY,"tag"):"("==n||")"==n?"bracket":"="==n?(hY="equals",">"==r&&(e.next(),r=e.peek()),/[\'\"]/.test(r)||(t.tokenize=function(e,t){for(;!e.eol();){var n=e.next(),r=e.peek();if(" "==n||","==n||/[ )}]/.test(r)){t.tokenize=$Y;break}}return"string"}),"operator"):/[\'\"]/.test(n)?(t.tokenize=function(e){return function(t,n){for(;!t.eol();)if(t.next()==e){n.tokenize=$Y;break}return"string"}}(n),t.tokenize(e,t)):(e.eatWhile(/[^\s\u00a0=\"\'\/?]/),"keyword")}function bY(){for(var e=arguments.length-1;e>=0;e--)dY.cc.push(arguments[e])}function xY(){return bY.apply(null,arguments),!0}function wY(e,t){var n=dY.context&&dY.context.noIndent;dY.context={prev:dY.context,pluginName:e,indent:dY.indented,startOfLine:t,noIndent:n}}function kY(){dY.context&&(dY.context=dY.context.prev)}function yY(e){if("openPlugin"==e)return dY.pluginName=uY,xY(PY,function(e){return function(t){return"selfclosePlugin"==t||"endPlugin"==t?xY():"endPlugin"==t?(wY(dY.pluginName,e),xY()):xY()}}(dY.startOfLine));if("closePlugin"==e){var t=!1;return dY.context?(t=dY.context.pluginName!=uY,kY()):t=!0,t&&(pY="error"),xY(function(e){return function(t){return e&&(pY="error"),"endPlugin"==t?xY():bY()}}(t))}return"string"==e?(dY.context&&"!cdata"==dY.context.name||wY("!cdata"),dY.tokenize==QY&&kY(),xY()):xY()}function PY(e){return"keyword"==e?(pY="attribute",xY(PY)):"equals"==e?xY(vY,PY):bY()}function vY(e){return"keyword"==e?(pY="string",xY()):"string"==e?xY(SY):bY()}function SY(e){return"string"==e?xY(SY):bY()}const _Y={startState:function(){return{tokenize:QY,cc:[],indented:0,startOfLine:!0,pluginName:null,context:null}},token:function(e,t){if(e.sol()&&(t.startOfLine=!0,t.indented=e.indentation()),e.eatSpace())return null;pY=hY=uY=null;var n=t.tokenize(e,t);if((n||hY)&&"comment"!=n)for(dY=t;;){if((t.cc.pop()||yY)(hY||n))break}return t.startOfLine=!1,pY||n},indent:function(e,t,n){var r=e.context;if(r&&r.noIndent)return 0;for(r&&/^{\//.test(t)&&(r=r.prev);r&&!r.startOfLine;)r=r.prev;return r?r.indent+n.unit:0}};var XY=Object.freeze({__proto__:null,tiki:_Y});var TY=Object.freeze({__proto__:null,toml:{startState:function(){return{inString:!1,stringType:"",lhs:!0,inArray:0}},token:function(e,t){if(t.inString||'"'!=e.peek()&&"'"!=e.peek()||(t.stringType=e.peek(),e.next(),t.inString=!0),e.sol()&&0===t.inArray&&(t.lhs=!0),t.inString){for(;t.inString&&!e.eol();)e.peek()===t.stringType?(e.next(),t.inString=!1):"\\"===e.peek()?(e.next(),e.next()):e.match(/^.[^\\\"\']*/);return t.lhs?"property":"string"}return t.inArray&&"]"===e.peek()?(e.next(),t.inArray--,"bracket"):t.lhs&&"["===e.peek()&&e.skipTo("]")?(e.next(),"]"===e.peek()&&e.next(),"atom"):"#"===e.peek()?(e.skipToEnd(),"comment"):e.eatSpace()?null:t.lhs&&e.eatWhile((function(e){return"="!=e&&" "!=e}))?"property":t.lhs&&"="===e.peek()?(e.next(),t.lhs=!1,null):!t.lhs&&e.match(/^\d\d\d\d[\d\-\:\.T]*Z/)?"atom":t.lhs||!e.match("true")&&!e.match("false")?t.lhs||"["!==e.peek()?!t.lhs&&e.match(/^\-?\d+(?:\.\d+)?/)?"number":(e.eatSpace()||e.next(),null):(t.inArray++,e.next(),"bracket"):"atom"}}}),RY={};function WY(e){if(e.eatSpace())return null;var t=e.sol(),n=e.next();if("\\"===n)return e.match("fB")||e.match("fR")||e.match("fI")||e.match("u")||e.match("d")||e.match("%")||e.match("&")?"string":e.match("m[")?(e.skipTo("]"),e.next(),"string"):e.match("s+")||e.match("s-")?(e.eatWhile(/[\d-]/),"string"):e.match("(")||e.match("*(")?(e.eatWhile(/[\w-]/),"string"):"string";if(t&&("."===n||"'"===n)&&e.eat("\\")&&e.eat('"'))return e.skipToEnd(),"comment";if(t&&"."===n){if(e.match("B ")||e.match("I ")||e.match("R "))return"attribute";if(e.match("TH ")||e.match("SH ")||e.match("SS ")||e.match("HP "))return e.skipToEnd(),"quote";if(e.match(/[A-Z]/)&&e.match(/[A-Z]/)||e.match(/[a-z]/)&&e.match(/[a-z]/))return"attribute"}e.eatWhile(/[\w-]/);var r=e.current();return RY.hasOwnProperty(r)?RY[r]:null}function qY(e,t){return(t.tokens[0]||WY)(e,t)}const zY={startState:function(){return{tokens:[]}},token:function(e,t){return qY(e,t)}};var YY=Object.freeze({__proto__:null,troff:zY});function ZY(e){for(var t={},n=e.split(" "),r=0;r!\/]/;function rZ(e,t){var n=e.next();if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){var o=t.peek();o&&("b"!=(o=o.toLowerCase())&&"h"!=o&&"o"!=o||t.next()),a=!0;break}i=!i&&"\\"==r}return(a||!i&&!tZ)&&(n.tokenize=null),"string"}}(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\\:\?\.]/.test(n))return VY=n,"punctuation";if("#"==n)return e.skipToEnd(),"atom";if("%"==n)return e.eatWhile(/\b/),"atom";if(/\d/.test(n))return e.eatWhile(/[\w\.]/),"number";if("/"==n){if(e.eat("*"))return t.tokenize=iZ,iZ(e,t);if(e.eat("/"))return e.skipToEnd(),"comment"}if(nZ.test(n))return"@"==n&&(e.match("try")||e.match("catch")||e.match("lazy"))?"keyword":(e.eatWhile(nZ),"operator");e.eatWhile(/[\w\$_\xa1-\uffff]/);var r=e.current();return CY.propertyIsEnumerable(r)?"keyword":AY.propertyIsEnumerable(r)?"builtin":GY.propertyIsEnumerable(r)||LY.propertyIsEnumerable(r)||NY.propertyIsEnumerable(r)||jY.propertyIsEnumerable(r)||DY.propertyIsEnumerable(r)||MY.propertyIsEnumerable(r)?"def":FY.propertyIsEnumerable(r)||BY.propertyIsEnumerable(r)||HY.propertyIsEnumerable(r)?"string":KY.propertyIsEnumerable(r)?"typeName.standard":JY.propertyIsEnumerable(r)?"modifier":eZ.propertyIsEnumerable(r)?"atom":"variable"}function iZ(e,t){for(var n,r=!1;n=e.next();){if("/"==n&&r){t.tokenize=null;break}r="*"==n}return"comment"}function aZ(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function oZ(e,t,n){var r=e.indented;return e.context&&"statement"==e.context.type&&(r=e.context.indented),e.context=new aZ(r,t,n,null,e.context)}function sZ(e){var t=e.context.type;return")"!=t&&"]"!=t&&"}"!=t||(e.indented=e.context.indented),e.context=e.context.prev}const OZ={startState:function(){return{tokenize:null,context:new aZ(0,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(null==n.align&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;VY=null;var r=(t.tokenize||rZ)(e,t);if("comment"==r)return r;if(null==n.align&&(n.align=!0),";"!=VY&&":"!=VY&&","!=VY||"statement"!=n.type)if("{"==VY)oZ(t,e.column(),"}");else if("["==VY)oZ(t,e.column(),"]");else if("("==VY)oZ(t,e.column(),")");else if("}"==VY){for(;"statement"==n.type;)n=sZ(t);for("}"==n.type&&(n=sZ(t));"statement"==n.type;)n=sZ(t)}else VY==n.type?sZ(t):(("}"==n.type||"top"==n.type)&&";"!=VY||"statement"==n.type&&"newstatement"==VY)&&oZ(t,e.column(),"statement");else sZ(t);return t.startOfLine=!1,r},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:EY}};var lZ=Object.freeze({__proto__:null,ttcn:OZ});function cZ(e){for(var t={},n=e.split(" "),r=0;r=&|]/;function _Z(e,t){var n=e.next();if(kZ=null,"<"!=n||e.match(/^[\s\u00a0=]/,!1)){if('"'==n||"'"==n)return t.tokenize=function(e){return function(t,n){for(var r,i=!1;null!=(r=t.next());){if(r==e&&!i){n.tokenize=_Z;break}i=!i&&"\\"==r}return"string"}}(n),t.tokenize(e,t);if(/[{}\(\),\.;\[\]]/.test(n))return kZ=n,null;if("#"==n)return e.skipToEnd(),"comment";if(SZ.test(n))return e.eatWhile(SZ),null;if(":"==n)return"operator";if(e.eatWhile(/[_\w\d]/),":"==e.peek())return"variableName.special";var r=e.current();return vZ.test(r)?"meta":n>="A"&&n<="Z"?"comment":"keyword"}return e.match(/^[^\s\u00a0>]*>?/),"atom"}function XZ(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function TZ(e){e.indent=e.context.indent,e.context=e.context.prev}const RZ={startState:function(){return{tokenize:_Z,context:null,indent:0,col:0}},token:function(e,t){if(e.sol()&&(t.context&&null==t.context.align&&(t.context.align=!1),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);if("comment"!=n&&t.context&&null==t.context.align&&"pattern"!=t.context.type&&(t.context.align=!0),"("==kZ)XZ(t,")",e.column());else if("["==kZ)XZ(t,"]",e.column());else if("{"==kZ)XZ(t,"}",e.column());else if(/[\]\}\)]/.test(kZ)){for(;t.context&&"pattern"==t.context.type;)TZ(t);t.context&&kZ==t.context.type&&TZ(t)}else"."==kZ&&t.context&&"pattern"==t.context.type?TZ(t):/atom|string|variable/.test(n)&&t.context&&(/[\}\]]/.test(t.context.type)?XZ(t,"pattern",e.column()):"pattern"!=t.context.type||t.context.align||(t.context.align=!0,t.context.col=e.column()));return n},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&"pattern"==i.type;)i=i.prev;var a=i&&r==i.type;return i?"pattern"==i.type?i.col:i.align?i.col+(a?0:1):i.indent+(a?0:n.unit):0},languageData:{commentTokens:{line:"#"}}};var WZ=Object.freeze({__proto__:null,turtle:RZ});function qZ(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var zZ=["Clamp","Constructor","EnforceRange","Exposed","ImplicitThis","Global","PrimaryGlobal","LegacyArrayClass","LegacyUnenumerableNamedProperties","LenientThis","NamedConstructor","NewObject","NoInterfaceObject","OverrideBuiltins","PutForwards","Replaceable","SameObject","TreatNonObjectAsNull","TreatNullAs","EmptyString","Unforgeable","Unscopeable"],YZ=qZ(zZ),ZZ=["unsigned","short","long","unrestricted","float","double","boolean","byte","octet","Promise","ArrayBuffer","DataView","Int8Array","Int16Array","Int32Array","Uint8Array","Uint16Array","Uint32Array","Uint8ClampedArray","Float32Array","Float64Array","ByteString","DOMString","USVString","sequence","object","RegExp","Error","DOMException","FrozenArray","any","void"],UZ=qZ(ZZ),EZ=["attribute","callback","const","deleter","dictionary","enum","getter","implements","inherit","interface","iterable","legacycaller","maplike","partial","required","serializer","setlike","setter","static","stringifier","typedef","optional","readonly","or"],IZ=qZ(EZ),VZ=["true","false","Infinity","NaN","null"],CZ=qZ(VZ),AZ=qZ(["callback","dictionary","enum","interface"]),GZ=qZ(["typedef"]),jZ=/^[:<=>?]/,LZ=/^-?([1-9][0-9]*|0[Xx][0-9A-Fa-f]+|0[0-7]*)/,NZ=/^-?(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)/,DZ=/^_?[A-Za-z][0-9A-Z_a-z-]*/,MZ=/^_?[A-Za-z][0-9A-Z_a-z-]*(?=\s*;)/,FZ=/^"[^"]*"/,BZ=/^\/\*.*?\*\//,HZ=/^\/\*.*/,KZ=/^.*?\*\//;const JZ={startState:function(){return{inComment:!1,lastToken:"",startDef:!1,endDef:!1}},token:function(e,t){var n=function(e,t){if(e.eatSpace())return null;if(t.inComment)return e.match(KZ)?(t.inComment=!1,"comment"):(e.skipToEnd(),"comment");if(e.match("//"))return e.skipToEnd(),"comment";if(e.match(BZ))return"comment";if(e.match(HZ))return t.inComment=!0,"comment";if(e.match(/^-?[0-9\.]/,!1)&&(e.match(LZ)||e.match(NZ)))return"number";if(e.match(FZ))return"string";if(t.startDef&&e.match(DZ))return"def";if(t.endDef&&e.match(MZ))return t.endDef=!1,"def";if(e.match(IZ))return"keyword";if(e.match(UZ)){var n=t.lastToken,r=(e.match(/^\s*(.+?)\b/,!1)||[])[1];return":"===n||"implements"===n||"implements"===r||"="===r?"builtin":"type"}return e.match(YZ)?"builtin":e.match(CZ)?"atom":e.match(DZ)?"variable":e.match(jZ)?"operator":(e.next(),null)}(e,t);if(n){var r=e.current();t.lastToken=r,"keyword"===n?(t.startDef=AZ.test(r),t.endDef=t.endDef||GZ.test(r)):t.startDef=!1}return n},languageData:{autocomplete:zZ.concat(ZZ).concat(EZ).concat(VZ)}};var eU=Object.freeze({__proto__:null,webIDL:JZ}),tU="error";function nU(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var rU=new RegExp("^[\\+\\-\\*/%&\\\\|\\^~<>!]"),iU=new RegExp("^[\\(\\)\\[\\]\\{\\}@,:`=;\\.]"),aU=new RegExp("^((==)|(<>)|(<=)|(>=)|(<>)|(<<)|(>>)|(//)|(\\*\\*))"),oU=new RegExp("^((\\+=)|(\\-=)|(\\*=)|(%=)|(/=)|(&=)|(\\|=)|(\\^=))"),sU=new RegExp("^((//=)|(>>=)|(<<=)|(\\*\\*=))"),OU=new RegExp("^[_A-Za-z][_A-Za-z0-9]*"),lU=["class","module","sub","enum","select","while","if","function","get","set","property","try","structure","synclock","using","with"],cU=["else","elseif","case","catch","finally"],uU=["next","loop"],hU=["and","andalso","or","orelse","xor","in","not","is","isnot","like"],dU=nU(hU),pU=["#const","#else","#elseif","#end","#if","#region","addhandler","addressof","alias","as","byref","byval","cbool","cbyte","cchar","cdate","cdbl","cdec","cint","clng","cobj","compare","const","continue","csbyte","cshort","csng","cstr","cuint","culng","cushort","declare","default","delegate","dim","directcast","each","erase","error","event","exit","explicit","false","for","friend","gettype","goto","handles","implements","imports","infer","inherits","interface","isfalse","istrue","lib","me","mod","mustinherit","mustoverride","my","mybase","myclass","namespace","narrowing","new","nothing","notinheritable","notoverridable","of","off","on","operator","option","optional","out","overloads","overridable","overrides","paramarray","partial","private","protected","public","raiseevent","readonly","redim","removehandler","resume","return","shadows","shared","static","step","stop","strict","then","throw","to","true","trycast","typeof","until","until","when","widening","withevents","writeonly"],fU=["object","boolean","char","string","byte","sbyte","short","ushort","int16","uint16","integer","uinteger","int32","uint32","long","ulong","int64","uint64","decimal","single","double","float","date","datetime","intptr","uintptr"],mU=nU(pU),gU=nU(fU),QU=nU(lU),$U=nU(cU),bU=nU(uU),xU=nU(["end"]),wU=nU(["do"]);function kU(e,t){t.currentIndent++}function yU(e,t){t.currentIndent--}function PU(e,t){if(e.eatSpace())return null;if("'"===e.peek())return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.a-f]/i,!1)){var n=!1;if((e.match(/^\d*\.\d+F?/i)||e.match(/^\d+\.\d*F?/)||e.match(/^\.\d+F?/))&&(n=!0),n)return e.eat(/J/i),"number";var r=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?r=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),r=!0):e.match(/^0(?![\dx])/i)&&(r=!0),r)return e.eat(/L/i),"number"}return e.match('"')?(t.tokenize=function(e){var t=1==e.length,n="string";return function(r,i){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return i.tokenize=PU,n;r.eat(/['"]/)}return t&&(i.tokenize=PU),n}}(e.current()),t.tokenize(e,t)):e.match(sU)||e.match(oU)?null:e.match(aU)||e.match(rU)||e.match(dU)?"operator":e.match(iU)?null:e.match(wU)?(kU(0,t),t.doInCurrentLine=!0,"keyword"):e.match(QU)?(t.doInCurrentLine?t.doInCurrentLine=!1:kU(0,t),"keyword"):e.match($U)?"keyword":e.match(xU)?(yU(0,t),yU(0,t),"keyword"):e.match(bU)?(yU(0,t),"keyword"):e.match(gU)||e.match(mU)?"keyword":e.match(OU)?"variable":(e.next(),tU)}const vU={startState:function(){return{tokenize:PU,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1}},token:function(e,t){e.sol()&&(t.currentIndent+=t.nextLineIndent,t.nextLineIndent=0,t.doInCurrentLine=0);var n=function(e,t){var n=t.tokenize(e,t),r=e.current();if("."===r)return"variable"===(n=t.tokenize(e,t))?"variable":tU;var i="[({".indexOf(r);return-1!==i&&kU(0,t),-1!==(i="])}".indexOf(r))&&yU(0,t)?tU:n}(e,t);return t.lastToken={style:n,content:e.current()},n},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,"");return r.match(bU)||r.match(xU)||r.match($U)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit},languageData:{closeBrackets:{brackets:["(","[","{",'"']},commentTokens:{line:"'"},autocomplete:lU.concat(cU).concat(uU).concat(hU).concat(pU).concat(fU)}};var SU=Object.freeze({__proto__:null,vb:vU});function _U(e){var t="error";function n(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var r=new RegExp("^[\\+\\-\\*/&\\\\\\^<>=]"),i=new RegExp("^((<>)|(<=)|(>=))"),a=new RegExp("^[\\.,]"),o=new RegExp("^[\\(\\)]"),s=new RegExp("^[A-Za-z][_A-Za-z0-9]*"),O=n(["and","or","not","xor","is","mod","eqv","imp"]),l=["WScript","err","debug","RegExp"],c=["clear","execute","raise","replace","test","write","writeline","close","open","state","eof","update","addnew","end","createobject","quit"].concat(["description","firstindex","global","helpcontext","helpfile","ignorecase","length","number","pattern","source","value","count"]);l=l.concat(["vbBlack","vbRed","vbGreen","vbYellow","vbBlue","vbMagenta","vbCyan","vbWhite","vbBinaryCompare","vbTextCompare","vbSunday","vbMonday","vbTuesday","vbWednesday","vbThursday","vbFriday","vbSaturday","vbUseSystemDayOfWeek","vbFirstJan1","vbFirstFourDays","vbFirstFullWeek","vbGeneralDate","vbLongDate","vbShortDate","vbLongTime","vbShortTime","vbObjectError","vbOKOnly","vbOKCancel","vbAbortRetryIgnore","vbYesNoCancel","vbYesNo","vbRetryCancel","vbCritical","vbQuestion","vbExclamation","vbInformation","vbDefaultButton1","vbDefaultButton2","vbDefaultButton3","vbDefaultButton4","vbApplicationModal","vbSystemModal","vbOK","vbCancel","vbAbort","vbRetry","vbIgnore","vbYes","vbNo","vbCr","VbCrLf","vbFormFeed","vbLf","vbNewLine","vbNullChar","vbNullString","vbTab","vbVerticalTab","vbUseDefault","vbTrue","vbFalse","vbEmpty","vbNull","vbInteger","vbLong","vbSingle","vbDouble","vbCurrency","vbDate","vbString","vbObject","vbError","vbBoolean","vbVariant","vbDataObject","vbDecimal","vbByte","vbArray"]),e.isASP&&(l=l.concat(["server","response","request","session","application"]),c=c.concat(["addheader","appendtolog","binarywrite","end","flush","redirect","binaryread","remove","removeall","lock","unlock","abandon","getlasterror","htmlencode","mappath","transfer","urlencode"],["buffer","cachecontrol","charset","contenttype","expires","expiresabsolute","isclientconnected","pics","status","clientcertificate","cookies","form","querystring","servervariables","totalbytes","contents","staticobjects","codepage","lcid","sessionid","timeout","scripttimeout"]));var u=n(["dim","redim","then","until","randomize","byval","byref","new","property","exit","in","const","private","public","get","set","let","stop","on error resume next","on error goto 0","option explicit","call","me"]),h=n(["true","false","nothing","empty","null"]),d=n(["abs","array","asc","atn","cbool","cbyte","ccur","cdate","cdbl","chr","cint","clng","cos","csng","cstr","date","dateadd","datediff","datepart","dateserial","datevalue","day","escape","eval","execute","exp","filter","formatcurrency","formatdatetime","formatnumber","formatpercent","getlocale","getobject","getref","hex","hour","inputbox","instr","instrrev","int","fix","isarray","isdate","isempty","isnull","isnumeric","isobject","join","lbound","lcase","left","len","loadpicture","log","ltrim","rtrim","trim","maths","mid","minute","month","monthname","msgbox","now","oct","replace","rgb","right","rnd","round","scriptengine","scriptenginebuildversion","scriptenginemajorversion","scriptengineminorversion","second","setlocale","sgn","sin","space","split","sqr","strcomp","string","strreverse","tan","time","timer","timeserial","timevalue","typename","ubound","ucase","unescape","vartype","weekday","weekdayname","year"]),p=n(l),f=n(c),m=n(["class","sub","select","while","if","function","property","with","for"]),g=n(["else","elseif","case"]),Q=n(["next","loop","wend"]),$=n(["end"]),b=n(["do"]),x=n(["on error resume next","exit"]),w=n(["rem"]);function k(e,t){t.currentIndent++}function y(e,t){t.currentIndent--}function P(e,n){if(e.eatSpace())return null;if("'"===e.peek())return e.skipToEnd(),"comment";if(e.match(w))return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.]/i,!1)&&!e.match(/^((&H)|(&O))?[0-9\.]+[a-z_]/i,!1)){var l=!1;if((e.match(/^\d*\.\d+/i)||e.match(/^\d+\.\d*/)||e.match(/^\.\d+/))&&(l=!0),l)return e.eat(/J/i),"number";var c=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?c=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),c=!0):e.match(/^0(?![\dx])/i)&&(c=!0),c)return e.eat(/L/i),"number"}return e.match('"')?(n.tokenize=function(e){var t=1==e.length,n="string";return function(r,i){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return i.tokenize=P,n;r.eat(/['"]/)}return t&&(i.tokenize=P),n}}(e.current()),n.tokenize(e,n)):e.match(i)||e.match(r)||e.match(O)?"operator":e.match(a)?null:e.match(o)?"bracket":e.match(x)?(n.doInCurrentLine=!0,"keyword"):e.match(b)?(k(0,n),n.doInCurrentLine=!0,"keyword"):e.match(m)?(n.doInCurrentLine?n.doInCurrentLine=!1:k(0,n),"keyword"):e.match(g)?"keyword":e.match($)?(y(0,n),y(0,n),"keyword"):e.match(Q)?(n.doInCurrentLine?n.doInCurrentLine=!1:y(0,n),"keyword"):e.match(u)?"keyword":e.match(h)?"atom":e.match(f)?"variableName.special":e.match(d)||e.match(p)?"builtin":e.match(s)?"variable":(e.next(),t)}return{startState:function(){return{tokenize:P,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1,ignoreKeyword:!1}},token:function(e,n){e.sol()&&(n.currentIndent+=n.nextLineIndent,n.nextLineIndent=0,n.doInCurrentLine=0);var r=function(e,n){var r=n.tokenize(e,n),i=e.current();return"."===i?(r=n.tokenize(e,n),i=e.current(),!r||"variable"!==r.substr(0,8)&&"builtin"!==r&&"keyword"!==r?t:("builtin"!==r&&"keyword"!==r||(r="variable"),c.indexOf(i.substr(1))>-1&&(r="keyword"),r)):r}(e,n);return n.lastToken={style:r,content:e.current()},null===r&&(r=null),r},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,"");return r.match(Q)||r.match($)||r.match(g)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit}}}const XU=_U({}),TU=_U({isASP:!0});var RU=Object.freeze({__proto__:null,vbScript:XU,vbScriptASP:TU});function WU(e){for(var t={},n=e.split(" "),r=0;r!?:\/|]/;function UU(e,t,n){return t.tokenize=n,n(e,t)}function EU(e,t){var n=t.beforeParams;t.beforeParams=!1;var r=e.next();if("'"==r&&!t.inString&&t.inParams)return t.lastTokenWasBuiltin=!1,UU(e,t,IU(r));if('"'!=r){if(/[\[\]{}\(\),;\.]/.test(r))return"("==r&&n?t.inParams=!0:")"==r&&(t.inParams=!1,t.lastTokenWasBuiltin=!0),null;if(/\d/.test(r))return t.lastTokenWasBuiltin=!1,e.eatWhile(/[\w\.]/),"number";if("#"==r&&e.eat("*"))return t.lastTokenWasBuiltin=!1,UU(e,t,VU);if("#"==r&&e.match(/ *\[ *\[/))return t.lastTokenWasBuiltin=!1,UU(e,t,CU);if("#"==r&&e.eat("#"))return t.lastTokenWasBuiltin=!1,e.skipToEnd(),"comment";if("$"==r)return e.eat("!"),e.eatWhile(/[\w\d\$_\.{}-]/),YU&&YU.propertyIsEnumerable(e.current())?"keyword":(t.lastTokenWasBuiltin=!0,t.beforeParams=!0,"builtin");if(ZU.test(r))return t.lastTokenWasBuiltin=!1,e.eatWhile(ZU),"operator";e.eatWhile(/[\w\$_{}@]/);var i=e.current();return qU&&qU.propertyIsEnumerable(i)?"keyword":zU&&zU.propertyIsEnumerable(i)||e.current().match(/^#@?[a-z0-9_]+ *$/i)&&"("==e.peek()&&(!zU||!zU.propertyIsEnumerable(i.toLowerCase()))?(t.beforeParams=!0,t.lastTokenWasBuiltin=!1,"keyword"):t.inString?(t.lastTokenWasBuiltin=!1,"string"):e.pos>i.length&&"."==e.string.charAt(e.pos-i.length-1)&&t.lastTokenWasBuiltin?"builtin":(t.lastTokenWasBuiltin=!1,null)}return t.lastTokenWasBuiltin=!1,t.inString?(t.inString=!1,"string"):t.inParams?UU(e,t,IU(r)):void 0}function IU(e){return function(t,n){for(var r,i=!1,a=!1;null!=(r=t.next());){if(r==e&&!i){a=!0;break}if('"'==e&&"$"==t.peek()&&!i){n.inString=!0,a=!0;break}i=!i&&"\\"==r}return a&&(n.tokenize=EU),"string"}}function VU(e,t){for(var n,r=!1;n=e.next();){if("#"==n&&r){t.tokenize=EU;break}r="*"==n}return"comment"}function CU(e,t){for(var n,r=0;n=e.next();){if("#"==n&&2==r){t.tokenize=EU;break}"]"==n?r++:" "!=n&&(r=0)}return"meta"}const AU={startState:function(){return{tokenize:EU,beforeParams:!1,inParams:!1,inString:!1,lastTokenWasBuiltin:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{line:"##",block:{open:"#*",close:"*#"}}}};var GU=Object.freeze({__proto__:null,velocity:AU});function jU(e){for(var t={},n=e.split(","),r=0;r",">=","<","<=",".","|","?","and","or","div","idiv","mod","*","/","+","-"];for(o=0,s=l.length;o\"\'\/?]/);)s+=o;return aE(e,t,function(e,t){return function(n,r){return n.eatSpace(),t&&n.eat(">")?(QE(r),r.tokenize=oE,"tag"):(n.eat("/")||gE(r,{type:"tag",name:e,tokenize:oE}),n.eat(">")?(r.tokenize=oE,"tag"):(r.tokenize=cE,"tag"))}}(s,a))}if("{"==n)return gE(t,{type:"codeblock"}),null;if("}"==n)return QE(t),null;if(pE(t))return">"==n?"tag":"/"==n&&e.eat(">")?(QE(t),"tag"):"variable";if(/\d/.test(n))return e.match(/^\d*(?:\.\d*)?(?:E[+\-]?\d+)?/),"atom";if("("===n&&e.eat(":"))return gE(t,{type:"comment"}),aE(e,t,sE);if(i||'"'!==n&&"'"!==n){if("$"===n)return aE(e,t,lE);if(":"===n&&e.eat("="))return"keyword";if("("===n)return gE(t,{type:"paren"}),null;if(")"===n)return QE(t),null;if("["===n)return gE(t,{type:"bracket"}),null;if("]"===n)return QE(t),null;var O=iE.propertyIsEnumerable(n)&&iE[n];if(i&&'"'===n)for(;'"'!==e.next(););if(i&&"'"===n)for(;"'"!==e.next(););O||e.eatWhile(/[\w\$_-]/);var l=e.eat(":");!e.eat(":")&&l&&e.eatWhile(/[\w\$_-]/),e.match(/^[ \t]*\(/,!1)&&(r=!0);var c=e.current();return O=iE.propertyIsEnumerable(c)&&iE[c],r&&!O&&(O={type:"function_call",style:"def"}),function(e){return mE(e,"xmlconstructor")}(t)?(QE(t),"variable"):("element"!=c&&"attribute"!=c&&"axis_specifier"!=O.type||gE(t,{type:"xmlconstructor"}),O?O.style:"variable")}return aE(e,t,OE(n))}function sE(e,t){for(var n,r=!1,i=!1,a=0;n=e.next();){if(")"==n&&r){if(!(a>0)){QE(t);break}a--}else":"==n&&i&&a++;r=":"==n,i="("==n}return"comment"}function OE(e,t){return function(n,r){var i;if(function(e){return mE(e,"string")}(r)&&n.current()==e)return QE(r),t&&(r.tokenize=t),"string";if(gE(r,{type:"string",name:e,tokenize:OE(e,t)}),n.match("{",!1)&&fE(r))return r.tokenize=oE,"string";for(;i=n.next();){if(i==e){QE(r),t&&(r.tokenize=t);break}if(n.match("{",!1)&&fE(r))return r.tokenize=oE,"string"}return"string"}}function lE(e,t){var n=/[\w\$_-]/;if(e.eat('"')){for(;'"'!==e.next(););e.eat(":")}else e.eatWhile(n),e.match(":=",!1)||e.eat(":");return e.eatWhile(n),t.tokenize=oE,"variable"}function cE(e,t){var n=e.next();return"/"==n&&e.eat(">")?(fE(t)&&QE(t),pE(t)&&QE(t),"tag"):">"==n?(fE(t)&&QE(t),"tag"):"="==n?null:'"'==n||"'"==n?aE(e,t,OE(n,cE)):(fE(t)||gE(t,{type:"attribute",tokenize:cE}),e.eat(/[a-zA-Z_:]/),e.eatWhile(/[-a-zA-Z0-9_:.]/),e.eatSpace(),(e.match(">",!1)||e.match("/",!1))&&(QE(t),t.tokenize=oE),"attribute")}function uE(e,t){for(var n;n=e.next();)if("-"==n&&e.match("->",!0))return t.tokenize=oE,"comment"}function hE(e,t){for(var n;n=e.next();)if("]"==n&&e.match("]",!0))return t.tokenize=oE,"comment"}function dE(e,t){for(var n;n=e.next();)if("?"==n&&e.match(">",!0))return t.tokenize=oE,"processingInstruction"}function pE(e){return mE(e,"tag")}function fE(e){return mE(e,"attribute")}function mE(e,t){return e.stack.length&&e.stack[e.stack.length-1].type==t}function gE(e,t){e.stack.push(t)}function QE(e){e.stack.pop();var t=e.stack.length&&e.stack[e.stack.length-1].tokenize;e.tokenize=t||oE}const $E={startState:function(){return{tokenize:oE,cc:[],stack:[]}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{block:{open:"(:",close:":)"}}}};var bE=Object.freeze({__proto__:null,xQuery:$E});var xE=function(e){for(var t={},n=e.split(" "),r=0;r|<|&|\||_|`|'|\^|\?|!|%|#)/,!0,!1)?"operator":"error"}function _E(e,t){for(var n,r=!1,i=!1;null!=(n=e.next());){if('"'===n&&!i){r=!0;break}i=!i&&"\\"===n}return r&&!i&&(t.tokenize=SE),"string"}function XE(e,t){for(var n,r;null!=(r=e.next());){if("*"===n&&"/"===r){t.tokenize=SE;break}n=r}return"comment"}function TE(e){var t=null;return e.scopes.length>0&&(t=e.scopes[e.scopes.length-1]),t}const RE={startState:function(){return{tokenize:SE,scopes:[]}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},indent:function(e,t,n){if(e.tokenize!==SE&&null!==e.tokenize)return null;var r=0;return"]"!==t&&"];"!==t&&"}"!==t&&"};"!==t&&");"!==t||(r=-1),(e.scopes.length+r)*n.unit},languageData:{electricInput:/[{}\[\]()\;]/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};var WE=Object.freeze({__proto__:null,yacas:RE}),qE=new RegExp("\\b(("+["true","false","on","off","yes","no"].join(")|(")+"))$","i");const zE={token:function(e,t){var n=e.peek(),r=t.escaped;if(t.escaped=!1,"#"==n&&(0==e.pos||/\s/.test(e.string.charAt(e.pos-1))))return e.skipToEnd(),"comment";if(e.match(/^('([^']|\\.)*'?|"([^"]|\\.)*"?)/))return"string";if(t.literal&&e.indentation()>t.keyCol)return e.skipToEnd(),"string";if(t.literal&&(t.literal=!1),e.sol()){if(t.keyCol=0,t.pair=!1,t.pairStart=!1,e.match("---"))return"def";if(e.match("..."))return"def";if(e.match(/^\s*-\s+/))return"meta"}if(e.match(/^(\{|\}|\[|\])/))return"{"==n?t.inlinePairs++:"}"==n?t.inlinePairs--:"["==n?t.inlineList++:t.inlineList--,"meta";if(t.inlineList>0&&!r&&","==n)return e.next(),"meta";if(t.inlinePairs>0&&!r&&","==n)return t.keyCol=0,t.pair=!1,t.pairStart=!1,e.next(),"meta";if(t.pairStart){if(e.match(/^\s*(\||\>)\s*/))return t.literal=!0,"meta";if(e.match(/^\s*(\&|\*)[a-z0-9\._-]+\b/i))return"variable";if(0==t.inlinePairs&&e.match(/^\s*-?[0-9\.\,]+\s?$/))return"number";if(t.inlinePairs>0&&e.match(/^\s*-?[0-9\.\,]+\s?(?=(,|}))/))return"number";if(e.match(qE))return"keyword"}return!t.pair&&e.match(/^\s*(?:[,\[\]{}&*!|>'"%@`][^\s'":]|[^,\[\]{}#&*!|>'"%@`])[^#]*?(?=\s*:($|\s))/)?(t.pair=!0,t.keyCol=e.indentation(),"atom"):t.pair&&e.match(/^:\s*/)?(t.pairStart=!0,"meta"):(t.pairStart=!1,t.escaped="\\"==n,e.next(),null)},startState:function(){return{pair:!1,pairStart:!1,keyCol:0,inlinePairs:0,inlineList:0,literal:!1,escaped:!1}},languageData:{commentTokens:{line:"#"}}};var YE=Object.freeze({__proto__:null,yaml:zE});function ZE(e){var t,n;e?(t=/^(exx?|(ld|cp)([di]r?)?|[lp]ea|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|[de]i|halt|im|in([di]mr?|ir?|irx|2r?)|ot(dmr?|[id]rx|imr?)|out(0?|[di]r?|[di]2r?)|tst(io)?|slp)(\.([sl]?i)?[sl])?\b/i,n=/^(((call|j[pr]|rst|ret[in]?)(\.([sl]?i)?[sl])?)|(rs|st)mix)\b/i):(t=/^(exx?|(ld|cp|in)([di]r?)?|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|rst|[de]i|halt|im|ot[di]r|out[di]?)\b/i,n=/^(call|j[pr]|ret[in]?|b_?(call|jump))\b/i);var r=/^(af?|bc?|c|de?|e|hl?|l|i[xy]?|r|sp)\b/i,i=/^(n?[zc]|p[oe]?|m)\b/i,a=/^([hl][xy]|i[xy][hl]|slia|sll)\b/i,o=/^([\da-f]+h|[0-7]+o|[01]+b|\d+d?)\b/i;return{startState:function(){return{context:0}},token:function(s,O){if(s.column()||(O.context=0),s.eatSpace())return null;var l;if(s.eatWhile(/\w/)){if(e&&s.eat(".")&&s.eatWhile(/\w/),l=s.current(),!s.indentation())return s.match(o)?"number":null;if((1==O.context||4==O.context)&&r.test(l))return O.context=4,"variable";if(2==O.context&&i.test(l))return O.context=4,"variableName.special";if(t.test(l))return O.context=1,"keyword";if(n.test(l))return O.context=2,"keyword";if(4==O.context&&o.test(l))return"number";if(a.test(l))return"error"}else{if(s.eat(";"))return s.skipToEnd(),"comment";if(s.eat('"')){for(;(l=s.next())&&'"'!=l;)"\\"==l&&s.next();return"string"}if(s.eat("'")){if(s.match(/\\?.'/))return"number"}else if(s.eat(".")||s.sol()&&s.eat("#")){if(O.context=5,s.eatWhile(/\w/))return"def"}else if(s.eat("$")){if(s.eatWhile(/[\da-f]/i))return"number"}else if(s.eat("%")){if(s.eatWhile(/[01]/))return"number"}else s.next()}return null}}}const UE=ZE(!1),EE=ZE(!0);var IE=Object.freeze({__proto__:null,z80:UE,ez80:EE});function VE(e){return{startState:NE,copyState:DE,token:(t=e,function(e,n){if(e.match(LE(t.brackets),!0,!0))return"bracket";if(!n.inComment){if(e.match(/\/\*[^\*\/]*/,!0,!0))return n.inComment=!0,"comment";if(e.match(LE(t.singlecomment),!0,!0))return e.skipToEnd(),"comment"}if(n.inComment)return e.match(/[^\*\/]*\*\//,!0,!0)?n.inComment=!1:e.skipToEnd(),"comment";if(!n.inString&&e.match(/\"(\\\"|[^\"])*/,!0,!0))return n.inString=!0,"string";if(n.inString)return e.match(/[^\"]*\"/,!0,!0)?n.inString=!1:e.skipToEnd(),"string";if(t.keywords&&e.match(jE(t.keywords),!0,!0))return"keyword";if(e.match(jE(t.options),!0,!0))return"keyword";if(e.match(jE(t.arcsWords),!0,!0))return"keyword";if(e.match(LE(t.arcsOthers),!0,!0))return"keyword";if(t.operators&&e.match(LE(t.operators),!0,!0))return"operator";if(t.constants&&e.match(LE(t.constants),!0,!0))return"variable";if(!t.inAttributeList&&t.attributes&&e.match("[",!0,!0))return t.inAttributeList=!0,"bracket";if(t.inAttributeList){if(null!==t.attributes&&e.match(jE(t.attributes),!0,!0))return"attribute";if(e.match("]",!0,!0))return t.inAttributeList=!1,"bracket"}return e.next(),null}),languageData:{commentTokens:{line:"#",block:{open:"/*",close:"*/"}}}};var t}const CE=VE({keywords:["msc"],options:["hscale","width","arcgradient","wordwraparcs"],constants:["true","false","on","off"],attributes:["label","idurl","id","url","linecolor","linecolour","textcolor","textcolour","textbgcolor","textbgcolour","arclinecolor","arclinecolour","arctextcolor","arctextcolour","arctextbgcolor","arctextbgcolour","arcskip"],brackets:["\\{","\\}"],arcsWords:["note","abox","rbox","box"],arcsOthers:["\\|\\|\\|","\\.\\.\\.","---","--","<->","==","<<=>>","<=>","\\.\\.","<<>>","::","<:>","->","=>>","=>",">>",":>","<-","<<=","<=","<<","<:","x-","-x"],singlecomment:["//","#"],operators:["="]}),AE=VE({keywords:null,options:["hscale","width","arcgradient","wordwraparcs","wordwrapentities","watermark"],constants:["true","false","on","off","auto"],attributes:null,brackets:["\\{","\\}"],arcsWords:["note","abox","rbox","box","alt","else","opt","break","par","seq","strict","neg","critical","ignore","consider","assert","loop","ref","exc"],arcsOthers:["\\|\\|\\|","\\.\\.\\.","---","--","<->","==","<<=>>","<=>","\\.\\.","<<>>","::","<:>","->","=>>","=>",">>",":>","<-","<<=","<=","<<","<:","x-","-x"],singlecomment:["//","#"],operators:["="]}),GE=VE({keywords:["msc","xu"],options:["hscale","width","arcgradient","wordwraparcs","wordwrapentities","watermark"],constants:["true","false","on","off","auto"],attributes:["label","idurl","id","url","linecolor","linecolour","textcolor","textcolour","textbgcolor","textbgcolour","arclinecolor","arclinecolour","arctextcolor","arctextcolour","arctextbgcolor","arctextbgcolour","arcskip","title","deactivate","activate","activation"],brackets:["\\{","\\}"],arcsWords:["note","abox","rbox","box","alt","else","opt","break","par","seq","strict","neg","critical","ignore","consider","assert","loop","ref","exc"],arcsOthers:["\\|\\|\\|","\\.\\.\\.","---","--","<->","==","<<=>>","<=>","\\.\\.","<<>>","::","<:>","->","=>>","=>",">>",":>","<-","<<=","<=","<<","<:","x-","-x"],singlecomment:["//","#"],operators:["="]});function jE(e){return new RegExp("^\\b("+e.join("|")+")\\b","i")}function LE(e){return new RegExp("^(?:"+e.join("|")+")","i")}function NE(){return{inComment:!1,inString:!1,inAttributeList:!1,inScript:!1}}function DE(e){return{inComment:e.inComment,inString:e.inString,inAttributeList:e.inAttributeList,inScript:e.inScript}}var ME=Object.freeze({__proto__:null,mscgen:CE,msgenny:AE,xu:GE});const FE=rb({start:[{regex:new RegExp(["align","block","br(_if|_table|_on_(cast|data|func|i31|null))?","call(_indirect|_ref)?","current_memory","\\bdata\\b","catch(_all)?","delegate","drop","elem","else","end","export","\\bextern\\b","\\bfunc\\b","global(\\.(get|set))?","if","import","local(\\.(get|set|tee))?","loop","module","mut","nop","offset","param","result","rethrow","return(_call(_indirect|_ref)?)?","select","start","table(\\.(size|get|set|size|grow|fill|init|copy))?","then","throw","try","type","unreachable","unwind","i(32|64)\\.(store(8|16)|(load(8|16)_[su]))","i64\\.(load32_[su]|store32)","[fi](32|64)\\.(const|load|store)","f(32|64)\\.(abs|add|ceil|copysign|div|eq|floor|[gl][et]|max|min|mul|nearest|neg?|sqrt|sub|trunc)","i(32|64)\\.(a[dn]d|c[lt]z|(div|rem)_[su]|eqz?|[gl][te]_[su]|mul|ne|popcnt|rot[lr]|sh(l|r_[su])|sub|x?or)","i64\\.extend_[su]_i32","i32\\.wrap_i64","i(32|64)\\.trunc_f(32|64)_[su]","f(32|64)\\.convert_i(32|64)_[su]","f64\\.promote_f32","f32\\.demote_f64","f32\\.reinterpret_i32","i32\\.reinterpret_f32","f64\\.reinterpret_i64","i64\\.reinterpret_f64","memory(\\.((atomic\\.(notify|wait(32|64)))|grow|size))?","i64.atomic\\.(load32_u|store32|rmw32\\.(a[dn]d|sub|x?or|(cmp)?xchg)_u)","i(32|64)\\.atomic\\.(load((8|16)_u)?|store(8|16)?|rmw(\\.(a[dn]d|sub|x?or|(cmp)?xchg)|(8|16)\\.(a[dn]d|sub|x?or|(cmp)?xchg)_u))","v128\\.load(8x8|16x4|32x2)_[su]","v128\\.load(8|16|32|64)_splat","v128\\.(load|store)(8|16|32|64)_lane","v128\\.load(32|64)_zero","v128.(load|store|const|not|andnot|and|or|xor|bitselect|any_true)","i(8x16|16x8)\\.(extract_lane_[su]|(add|sub)_sat_[su]|avgr_u)","i(8x16|16x8|32x4|64x2)\\.(neg|add|sub|abs|shl|shr_[su]|all_true|bitmask|eq|ne|[lg][te]_s)","(i(8x16|16x8|32x4|64x2)|f(32x4|64x2)).(splat|replace_lane)","i(8x16|16x8|32x4)\\.(([lg][te]_u)|((min|max)_[su]))","f(32x4|64x2)\\.(neg|add|sub|abs|nearest|eq|ne|[lg][te]|sqrt|mul|div|min|max|ceil|floor|trunc)","[fi](32x4|64x2)\\.extract_lane","i8x16\\.(shuffle|swizzle|popcnt|narrow_i16x8_[su])","i16x8\\.(narrow_i32x4_[su]|mul|extadd_pairwise_i8x16_[su]|q15mulr_sat_s)","i16x8\\.(extend|extmul)_(low|high)_i8x16_[su]","i32x4\\.(mul|dot_i16x8_s|trunc_sat_f64x2_[su]_zero)","i32x4\\.((extend|extmul)_(low|high)_i16x8_|trunc_sat_f32x4_|extadd_pairwise_i16x8_)[su]","i64x2\\.(mul|(extend|extmul)_(low|high)_i32x4_[su])","f32x4\\.(convert_i32x4_[su]|demote_f64x2_zero)","f64x2\\.(promote_low_f32x4|convert_low_i32x4_[su])","\\bany\\b","array\\.len","(array|struct)(\\.(new_(default_)?with_rtt|get(_[su])?|set))?","\\beq\\b","field","i31\\.(new|get_[su])","\\bnull\\b","ref(\\.(([ai]s_(data|func|i31))|cast|eq|func|(is_|as_non_)?null|test))?","rtt(\\.(canon|sub))?"].join("|")),token:"keyword"},{regex:/\b((any|data|eq|extern|i31|func)ref|[fi](32|64)|i(8|16))\b/,token:"atom"},{regex:/\b(funcref|externref|[fi](32|64))\b/,token:"atom"},{regex:/\$([a-zA-Z0-9_`\+\-\*\/\\\^~=<>!\?@#$%&|:\.]+)/,token:"variable"},{regex:/"(?:[^"\\\x00-\x1f\x7f]|\\[nt\\'"]|\\[0-9a-fA-F][0-9a-fA-F])*"/,token:"string"},{regex:/\(;.*?/,token:"comment",next:"comment"},{regex:/;;.*$/,token:"comment"},{regex:/\(/,indent:!0},{regex:/\)/,dedent:!0}],comment:[{regex:/.*?;\)/,token:"comment",next:"start"},{regex:/.*/,token:"comment"}],meta:{dontIndentStates:["comment"]}});var BE=Object.freeze({__proto__:null,wast:FE})}(); diff --git a/typecho/write/package.json b/typecho/write/package.json index ab163b7..39960ed 100644 --- a/typecho/write/package.json +++ b/typecho/write/package.json @@ -11,14 +11,14 @@ "@codemirror/history": "^0.19.0", "@codemirror/lang-markdown": "^0.19.1", "@codemirror/language-data": "^0.19.0", - "@codemirror/matchbrackets": "^0.19.2", + "@codemirror/matchbrackets": "^0.19.3", "@codemirror/search": "^0.19.2", "@codemirror/state": "^0.19.2", - "@codemirror/view": "^0.19.7" + "@codemirror/view": "^0.19.9" }, "devDependencies": { "@rollup/plugin-node-resolve": "^13.0.5", - "rollup": "^2.57.0", + "rollup": "^2.58.0", "rollup-plugin-terser": "^7.0.2" } }