/**
 * Minified by jsDelivr using Terser v5.37.0.
 * Original file: /npm/lake-codemirror@2.0.2/lib/codemirror.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
let rangeFrom=[],rangeTo=[];function isExtendingChar(O){if(O<768)return!1;for(let e=0,t=rangeFrom.length;;){let i=e+t>>1;if(O<rangeFrom[i])t=i;else{if(!(O>=rangeTo[i]))return!0;e=i+1}if(e==t)return!1}}function isRegionalIndicator(O){return O>=127462&&O<=127487}(()=>{let O="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((O=>O?parseInt(O,36):1));for(let e=0,t=0;e<O.length;e++)(e%2?rangeTo:rangeFrom).push(t+=O[e])})();const ZWJ=8205;function findClusterBreak$1(O,e,t=!0,i=!0){return(t?nextClusterBreak:prevClusterBreak)(O,e,i)}function nextClusterBreak(O,e,t){if(e==O.length)return e;e&&surrogateLow$1(O.charCodeAt(e))&&surrogateHigh$1(O.charCodeAt(e-1))&&e--;let i=codePointAt$1(O,e);for(e+=codePointSize$1(i);e<O.length;){let n=codePointAt$1(O,e);if(i==ZWJ||n==ZWJ||t&&isExtendingChar(n))e+=codePointSize$1(n),i=n;else{if(!isRegionalIndicator(n))break;{let t=0,i=e-2;for(;i>=0&&isRegionalIndicator(codePointAt$1(O,i));)t++,i-=2;if(t%2==0)break;e+=2}}}return e}function prevClusterBreak(O,e,t){for(;e>0;){let i=nextClusterBreak(O,e-2,t);if(i<e)return i;e--}return 0}function codePointAt$1(O,e){let t=O.charCodeAt(e);if(!surrogateHigh$1(t)||e+1==O.length)return t;let i=O.charCodeAt(e+1);return surrogateLow$1(i)?i-56320+(t-55296<<10)+65536:t}function surrogateLow$1(O){return O>=56320&&O<57344}function surrogateHigh$1(O){return O>=55296&&O<56320}function codePointSize$1(O){return O<65536?1:2}class Text{lineAt(O){if(O<0||O>this.length)throw new RangeError(`Invalid position ${O} in document of length ${this.length}`);return this.lineInner(O,!1,1,0)}line(O){if(O<1||O>this.lines)throw new RangeError(`Invalid line number ${O} in ${this.lines}-line document`);return this.lineInner(O,!0,1,0)}replace(O,e,t){[O,e]=clip(this,O,e);let i=[];return this.decompose(0,O,i,2),t.length&&t.decompose(0,t.length,i,3),this.decompose(e,this.length,i,1),TextNode.from(i,this.length-(e-O)+t.length)}append(O){return this.replace(this.length,this.length,O)}slice(O,e=this.length){[O,e]=clip(this,O,e);let t=[];return this.decompose(O,e,t,0),TextNode.from(t,e-O)}eq(O){if(O==this)return!0;if(O.length!=this.length||O.lines!=this.lines)return!1;let e=this.scanIdentical(O,1),t=this.length-this.scanIdentical(O,-1),i=new RawTextCursor(this),n=new RawTextCursor(O);for(let O=e,r=e;;){if(i.next(O),n.next(O),O=0,i.lineBreak!=n.lineBreak||i.done!=n.done||i.value!=n.value)return!1;if(r+=i.value.length,i.done||r>=t)return!0}}iter(O=1){return new RawTextCursor(this,O)}iterRange(O,e=this.length){return new PartialTextCursor(this,O,e)}iterLines(O,e){let t;if(null==O)t=this.iter();else{null==e&&(e=this.lines+1);let i=this.line(O).from;t=this.iterRange(i,Math.max(i,e==this.lines+1?this.length:e<=1?0:this.line(e-1).to))}return new LineCursor(t)}toString(){return this.sliceString(0)}toJSON(){let O=[];return this.flatten(O),O}constructor(){}static of(O){if(0==O.length)throw new RangeError("A document must have at least one line");return 1!=O.length||O[0]?O.length<=32?new TextLeaf(O):TextNode.from(TextLeaf.split(O,[])):Text.empty}}class TextLeaf extends Text{constructor(O,e=textLength(O)){super(),this.text=O,this.length=e}get lines(){return this.text.length}get children(){return null}lineInner(O,e,t,i){for(let n=0;;n++){let r=this.text[n],a=i+r.length;if((e?t:a)>=O)return new Line$1(i,a,t,r);i=a+1,t++}}decompose(O,e,t,i){let n=O<=0&&e>=this.length?this:new TextLeaf(sliceText(this.text,O,e),Math.min(e,this.length)-Math.max(0,O));if(1&i){let O=t.pop(),e=appendText(n.text,O.text.slice(),0,n.length);if(e.length<=32)t.push(new TextLeaf(e,O.length+n.length));else{let O=e.length>>1;t.push(new TextLeaf(e.slice(0,O)),new TextLeaf(e.slice(O)))}}else t.push(n)}replace(O,e,t){if(!(t instanceof TextLeaf))return super.replace(O,e,t);[O,e]=clip(this,O,e);let i=appendText(this.text,appendText(t.text,sliceText(this.text,0,O)),e),n=this.length+t.length-(e-O);return i.length<=32?new TextLeaf(i,n):TextNode.from(TextLeaf.split(i,[]),n)}sliceString(O,e=this.length,t="\n"){[O,e]=clip(this,O,e);let i="";for(let n=0,r=0;n<=e&&r<this.text.length;r++){let a=this.text[r],s=n+a.length;n>O&&r&&(i+=t),O<s&&e>n&&(i+=a.slice(Math.max(0,O-n),e-n)),n=s+1}return i}flatten(O){for(let e of this.text)O.push(e)}scanIdentical(){return 0}static split(O,e){let t=[],i=-1;for(let n of O)t.push(n),i+=n.length+1,32==t.length&&(e.push(new TextLeaf(t,i)),t=[],i=-1);return i>-1&&e.push(new TextLeaf(t,i)),e}}class TextNode extends Text{constructor(O,e){super(),this.children=O,this.length=e,this.lines=0;for(let e of O)this.lines+=e.lines}lineInner(O,e,t,i){for(let n=0;;n++){let r=this.children[n],a=i+r.length,s=t+r.lines-1;if((e?s:a)>=O)return r.lineInner(O,e,t,i);i=a+1,t=s+1}}decompose(O,e,t,i){for(let n=0,r=0;r<=e&&n<this.children.length;n++){let a=this.children[n],s=r+a.length;if(O<=s&&e>=r){let n=i&((r<=O?1:0)|(s>=e?2:0));r>=O&&s<=e&&!n?t.push(a):a.decompose(O-r,e-r,t,n)}r=s+1}}replace(O,e,t){if([O,e]=clip(this,O,e),t.lines<this.lines)for(let i=0,n=0;i<this.children.length;i++){let r=this.children[i],a=n+r.length;if(O>=n&&e<=a){let s=r.replace(O-n,e-n,t),o=this.lines-r.lines+s.lines;if(s.lines<o>>4&&s.lines>o>>6){let n=this.children.slice();return n[i]=s,new TextNode(n,this.length-(e-O)+t.length)}return super.replace(n,a,s)}n=a+1}return super.replace(O,e,t)}sliceString(O,e=this.length,t="\n"){[O,e]=clip(this,O,e);let i="";for(let n=0,r=0;n<this.children.length&&r<=e;n++){let a=this.children[n],s=r+a.length;r>O&&n&&(i+=t),O<s&&e>r&&(i+=a.sliceString(O-r,e-r,t)),r=s+1}return i}flatten(O){for(let e of this.children)e.flatten(O)}scanIdentical(O,e){if(!(O instanceof TextNode))return 0;let t=0,[i,n,r,a]=e>0?[0,0,this.children.length,O.children.length]:[this.children.length-1,O.children.length-1,-1,-1];for(;;i+=e,n+=e){if(i==r||n==a)return t;let s=this.children[i],o=O.children[n];if(s!=o)return t+s.scanIdentical(o,e);t+=s.length+1}}static from(O,e=O.reduce(((O,e)=>O+e.length+1),-1)){let t=0;for(let e of O)t+=e.lines;if(t<32){let t=[];for(let e of O)e.flatten(t);return new TextLeaf(t,e)}let i=Math.max(32,t>>5),n=i<<1,r=i>>1,a=[],s=0,o=-1,l=[];function Q(O){let e;if(O.lines>n&&O instanceof TextNode)for(let e of O.children)Q(e);else O.lines>r&&(s>r||!s)?(c(),a.push(O)):O instanceof TextLeaf&&s&&(e=l[l.length-1])instanceof TextLeaf&&O.lines+e.lines<=32?(s+=O.lines,o+=O.length+1,l[l.length-1]=new TextLeaf(e.text.concat(O.text),e.length+1+O.length)):(s+O.lines>i&&c(),s+=O.lines,o+=O.length+1,l.push(O))}function c(){0!=s&&(a.push(1==l.length?l[0]:TextNode.from(l,o)),o=-1,s=l.length=0)}for(let e of O)Q(e);return c(),1==a.length?a[0]:new TextNode(a,e)}}function textLength(O){let e=-1;for(let t of O)e+=t.length+1;return e}function appendText(O,e,t=0,i=1e9){for(let n=0,r=0,a=!0;r<O.length&&n<=i;r++){let s=O[r],o=n+s.length;o>=t&&(o>i&&(s=s.slice(0,i-n)),n<t&&(s=s.slice(t-n)),a?(e[e.length-1]+=s,a=!1):e.push(s)),n=o+1}return e}function sliceText(O,e,t){return appendText(O,[""],e,t)}Text.empty=new TextLeaf([""],0);class RawTextCursor{constructor(O,e=1){this.dir=e,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[O],this.offsets=[e>0?1:(O instanceof TextLeaf?O.text.length:O.children.length)<<1]}nextInner(O,e){for(this.done=this.lineBreak=!1;;){let t=this.nodes.length-1,i=this.nodes[t],n=this.offsets[t],r=n>>1,a=i instanceof TextLeaf?i.text.length:i.children.length;if(r==(e>0?a:0)){if(0==t)return this.done=!0,this.value="",this;e>0&&this.offsets[t-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&n)==(e>0?0:1)){if(this.offsets[t]+=e,0==O)return this.lineBreak=!0,this.value="\n",this;O--}else if(i instanceof TextLeaf){let n=i.text[r+(e<0?-1:0)];if(this.offsets[t]+=e,n.length>Math.max(0,O))return this.value=0==O?n:e>0?n.slice(O):n.slice(0,n.length-O),this;O-=n.length}else{let n=i.children[r+(e<0?-1:0)];O>n.length?(O-=n.length,this.offsets[t]+=e):(e<0&&this.offsets[t]--,this.nodes.push(n),this.offsets.push(e>0?1:(n instanceof TextLeaf?n.text.length:n.children.length)<<1))}}}next(O=0){return O<0&&(this.nextInner(-O,-this.dir),O=this.value.length),this.nextInner(O,this.dir)}}class PartialTextCursor{constructor(O,e,t){this.value="",this.done=!1,this.cursor=new RawTextCursor(O,e>t?-1:1),this.pos=e>t?O.length:0,this.from=Math.min(e,t),this.to=Math.max(e,t)}nextInner(O,e){if(e<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;O+=Math.max(0,e<0?this.pos-this.to:this.from-this.pos);let t=e<0?this.pos-this.from:this.to-this.pos;O>t&&(O=t),t-=O;let{value:i}=this.cursor.next(O);return this.pos+=(i.length+O)*e,this.value=i.length<=t?i:e<0?i.slice(i.length-t):i.slice(0,t),this.done=!this.value,this}next(O=0){return O<0?O=Math.max(O,this.from-this.pos):O>0&&(O=Math.min(O,this.to-this.pos)),this.nextInner(O,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}}class LineCursor{constructor(O){this.inner=O,this.afterBreak=!0,this.value="",this.done=!1}next(O=0){let{done:e,lineBreak:t,value:i}=this.inner.next(O);return e&&this.afterBreak?(this.value="",this.afterBreak=!1):e?(this.done=!0,this.value=""):t?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=i,this.afterBreak=!1),this}get lineBreak(){return!1}}"undefined"!=typeof Symbol&&(Text.prototype[Symbol.iterator]=function(){return this.iter()},RawTextCursor.prototype[Symbol.iterator]=PartialTextCursor.prototype[Symbol.iterator]=LineCursor.prototype[Symbol.iterator]=function(){return this});let Line$1=class{constructor(O,e,t,i){this.from=O,this.to=e,this.number=t,this.text=i}get length(){return this.to-this.from}};function clip(O,e,t){return[e=Math.max(0,Math.min(O.length,e)),Math.max(e,Math.min(O.length,t))]}function findClusterBreak(O,e,t=!0,i=!0){return findClusterBreak$1(O,e,t,i)}function surrogateLow(O){return O>=56320&&O<57344}function surrogateHigh(O){return O>=55296&&O<56320}function codePointAt(O,e){let t=O.charCodeAt(e);if(!surrogateHigh(t)||e+1==O.length)return t;let i=O.charCodeAt(e+1);return surrogateLow(i)?i-56320+(t-55296<<10)+65536:t}function codePointSize(O){return O<65536?1:2}const DefaultSplit=/\r\n?|\n/;var MapMode=function(O){return O[O.Simple=0]="Simple",O[O.TrackDel=1]="TrackDel",O[O.TrackBefore=2]="TrackBefore",O[O.TrackAfter=3]="TrackAfter",O}(MapMode||(MapMode={}));class ChangeDesc{constructor(O){this.sections=O}get length(){let O=0;for(let e=0;e<this.sections.length;e+=2)O+=this.sections[e];return O}get newLength(){let O=0;for(let e=0;e<this.sections.length;e+=2){let t=this.sections[e+1];O+=t<0?this.sections[e]:t}return O}get empty(){return 0==this.sections.length||2==this.sections.length&&this.sections[1]<0}iterGaps(O){for(let e=0,t=0,i=0;e<this.sections.length;){let n=this.sections[e++],r=this.sections[e++];r<0?(O(t,i,n),i+=n):i+=r,t+=n}}iterChangedRanges(O,e=!1){iterChanges(this,O,e)}get invertedDesc(){let O=[];for(let e=0;e<this.sections.length;){let t=this.sections[e++],i=this.sections[e++];i<0?O.push(t,i):O.push(i,t)}return new ChangeDesc(O)}composeDesc(O){return this.empty?O:O.empty?this:composeSets(this,O)}mapDesc(O,e=!1){return O.empty?this:mapSet(this,O,e)}mapPos(O,e=-1,t=MapMode.Simple){let i=0,n=0;for(let r=0;r<this.sections.length;){let a=this.sections[r++],s=this.sections[r++],o=i+a;if(s<0){if(o>O)return n+(O-i);n+=a}else{if(t!=MapMode.Simple&&o>=O&&(t==MapMode.TrackDel&&i<O&&o>O||t==MapMode.TrackBefore&&i<O||t==MapMode.TrackAfter&&o>O))return null;if(o>O||o==O&&e<0&&!a)return O==i||e<0?n:n+s;n+=s}i=o}if(O>i)throw new RangeError(`Position ${O} is out of range for changeset of length ${i}`);return n}touchesRange(O,e=O){for(let t=0,i=0;t<this.sections.length&&i<=e;){let n=i+this.sections[t++];if(this.sections[t++]>=0&&i<=e&&n>=O)return!(i<O&&n>e)||"cover";i=n}return!1}toString(){let O="";for(let e=0;e<this.sections.length;){let t=this.sections[e++],i=this.sections[e++];O+=(O?" ":"")+t+(i>=0?":"+i:"")}return O}toJSON(){return this.sections}static fromJSON(O){if(!Array.isArray(O)||O.length%2||O.some((O=>"number"!=typeof O)))throw new RangeError("Invalid JSON representation of ChangeDesc");return new ChangeDesc(O)}static create(O){return new ChangeDesc(O)}}class ChangeSet extends ChangeDesc{constructor(O,e){super(O),this.inserted=e}apply(O){if(this.length!=O.length)throw new RangeError("Applying change set to a document with the wrong length");return iterChanges(this,((e,t,i,n,r)=>O=O.replace(i,i+(t-e),r)),!1),O}mapDesc(O,e=!1){return mapSet(this,O,e,!0)}invert(O){let e=this.sections.slice(),t=[];for(let i=0,n=0;i<e.length;i+=2){let r=e[i],a=e[i+1];if(a>=0){e[i]=a,e[i+1]=r;let s=i>>1;for(;t.length<s;)t.push(Text.empty);t.push(r?O.slice(n,n+r):Text.empty)}n+=r}return new ChangeSet(e,t)}compose(O){return this.empty?O:O.empty?this:composeSets(this,O,!0)}map(O,e=!1){return O.empty?this:mapSet(this,O,e,!0)}iterChanges(O,e=!1){iterChanges(this,O,e)}get desc(){return ChangeDesc.create(this.sections)}filter(O){let e=[],t=[],i=[],n=new SectionIter(this);O:for(let r=0,a=0;;){let s=r==O.length?1e9:O[r++];for(;a<s||a==s&&0==n.len;){if(n.done)break O;let O=Math.min(n.len,s-a);addSection(i,O,-1);let r=-1==n.ins?-1:0==n.off?n.ins:0;addSection(e,O,r),r>0&&addInsert(t,e,n.text),n.forward(O),a+=O}let o=O[r++];for(;a<o;){if(n.done)break O;let O=Math.min(n.len,o-a);addSection(e,O,-1),addSection(i,O,-1==n.ins?-1:0==n.off?n.ins:0),n.forward(O),a+=O}}return{changes:new ChangeSet(e,t),filtered:ChangeDesc.create(i)}}toJSON(){let O=[];for(let e=0;e<this.sections.length;e+=2){let t=this.sections[e],i=this.sections[e+1];i<0?O.push(t):0==i?O.push([t]):O.push([t].concat(this.inserted[e>>1].toJSON()))}return O}static of(O,e,t){let i=[],n=[],r=0,a=null;function s(O=!1){if(!O&&!i.length)return;r<e&&addSection(i,e-r,-1);let t=new ChangeSet(i,n);a=a?a.compose(t.map(a)):t,i=[],n=[],r=0}return function O(o){if(Array.isArray(o))for(let e of o)O(e);else if(o instanceof ChangeSet){if(o.length!=e)throw new RangeError(`Mismatched change set length (got ${o.length}, expected ${e})`);s(),a=a?a.compose(o.map(a)):o}else{let{from:O,to:a=O,insert:l}=o;if(O>a||O<0||a>e)throw new RangeError(`Invalid change range ${O} to ${a} (in doc of length ${e})`);let Q=l?"string"==typeof l?Text.of(l.split(t||DefaultSplit)):l:Text.empty,c=Q.length;if(O==a&&0==c)return;O<r&&s(),O>r&&addSection(i,O-r,-1),addSection(i,a-O,c),addInsert(n,i,Q),r=a}}(O),s(!a),a}static empty(O){return new ChangeSet(O?[O,-1]:[],[])}static fromJSON(O){if(!Array.isArray(O))throw new RangeError("Invalid JSON representation of ChangeSet");let e=[],t=[];for(let i=0;i<O.length;i++){let n=O[i];if("number"==typeof n)e.push(n,-1);else{if(!Array.isArray(n)||"number"!=typeof n[0]||n.some(((O,e)=>e&&"string"!=typeof O)))throw new RangeError("Invalid JSON representation of ChangeSet");if(1==n.length)e.push(n[0],0);else{for(;t.length<i;)t.push(Text.empty);t[i]=Text.of(n.slice(1)),e.push(n[0],t[i].length)}}}return new ChangeSet(e,t)}static createSet(O,e){return new ChangeSet(O,e)}}function addSection(O,e,t,i=!1){if(0==e&&t<=0)return;let n=O.length-2;n>=0&&t<=0&&t==O[n+1]?O[n]+=e:n>=0&&0==e&&0==O[n]?O[n+1]+=t:i?(O[n]+=e,O[n+1]+=t):O.push(e,t)}function addInsert(O,e,t){if(0==t.length)return;let i=e.length-2>>1;if(i<O.length)O[O.length-1]=O[O.length-1].append(t);else{for(;O.length<i;)O.push(Text.empty);O.push(t)}}function iterChanges(O,e,t){let i=O.inserted;for(let n=0,r=0,a=0;a<O.sections.length;){let s=O.sections[a++],o=O.sections[a++];if(o<0)n+=s,r+=s;else{let l=n,Q=r,c=Text.empty;for(;l+=s,Q+=o,o&&i&&(c=c.append(i[a-2>>1])),!(t||a==O.sections.length||O.sections[a+1]<0);)s=O.sections[a++],o=O.sections[a++];e(n,l,r,Q,c),n=l,r=Q}}}function mapSet(O,e,t,i=!1){let n=[],r=i?[]:null,a=new SectionIter(O),s=new SectionIter(e);for(let O=-1;;){if(a.done&&s.len||s.done&&a.len)throw new Error("Mismatched change set lengths");if(-1==a.ins&&-1==s.ins){let O=Math.min(a.len,s.len);addSection(n,O,-1),a.forward(O),s.forward(O)}else if(s.ins>=0&&(a.ins<0||O==a.i||0==a.off&&(s.len<a.len||s.len==a.len&&!t))){let e=s.len;for(addSection(n,s.ins,-1);e;){let t=Math.min(a.len,e);a.ins>=0&&O<a.i&&a.len<=t&&(addSection(n,0,a.ins),r&&addInsert(r,n,a.text),O=a.i),a.forward(t),e-=t}s.next()}else{if(!(a.ins>=0)){if(a.done&&s.done)return r?ChangeSet.createSet(n,r):ChangeDesc.create(n);throw new Error("Mismatched change set lengths")}{let e=0,t=a.len;for(;t;)if(-1==s.ins){let O=Math.min(t,s.len);e+=O,t-=O,s.forward(O)}else{if(!(0==s.ins&&s.len<t))break;t-=s.len,s.next()}addSection(n,e,O<a.i?a.ins:0),r&&O<a.i&&addInsert(r,n,a.text),O=a.i,a.forward(a.len-t)}}}}function composeSets(O,e,t=!1){let i=[],n=t?[]:null,r=new SectionIter(O),a=new SectionIter(e);for(let O=!1;;){if(r.done&&a.done)return n?ChangeSet.createSet(i,n):ChangeDesc.create(i);if(0==r.ins)addSection(i,r.len,0,O),r.next();else if(0!=a.len||a.done){if(r.done||a.done)throw new Error("Mismatched change set lengths");{let e=Math.min(r.len2,a.len),t=i.length;if(-1==r.ins){let t=-1==a.ins?-1:a.off?0:a.ins;addSection(i,e,t,O),n&&t&&addInsert(n,i,a.text)}else-1==a.ins?(addSection(i,r.off?0:r.len,e,O),n&&addInsert(n,i,r.textBit(e))):(addSection(i,r.off?0:r.len,a.off?0:a.ins,O),n&&!a.off&&addInsert(n,i,a.text));O=(r.ins>e||a.ins>=0&&a.len>e)&&(O||i.length>t),r.forward2(e),a.forward(e)}}else addSection(i,0,a.ins,O),n&&addInsert(n,i,a.text),a.next()}}class SectionIter{constructor(O){this.set=O,this.i=0,this.next()}next(){let{sections:O}=this.set;this.i<O.length?(this.len=O[this.i++],this.ins=O[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return-2==this.ins}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:O}=this.set,e=this.i-2>>1;return e>=O.length?Text.empty:O[e]}textBit(O){let{inserted:e}=this.set,t=this.i-2>>1;return t>=e.length&&!O?Text.empty:e[t].slice(this.off,null==O?void 0:this.off+O)}forward(O){O==this.len?this.next():(this.len-=O,this.off+=O)}forward2(O){-1==this.ins?this.forward(O):O==this.ins?this.next():(this.ins-=O,this.off+=O)}}class SelectionRange{constructor(O,e,t){this.from=O,this.to=e,this.flags=t}get anchor(){return 32&this.flags?this.to:this.from}get head(){return 32&this.flags?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return 8&this.flags?-1:16&this.flags?1:0}get bidiLevel(){let O=7&this.flags;return 7==O?null:O}get goalColumn(){let O=this.flags>>6;return 16777215==O?void 0:O}map(O,e=-1){let t,i;return this.empty?t=i=O.mapPos(this.from,e):(t=O.mapPos(this.from,1),i=O.mapPos(this.to,-1)),t==this.from&&i==this.to?this:new SelectionRange(t,i,this.flags)}extend(O,e=O){if(O<=this.anchor&&e>=this.anchor)return EditorSelection.range(O,e);let t=Math.abs(O-this.anchor)>Math.abs(e-this.anchor)?O:e;return EditorSelection.range(this.anchor,t)}eq(O,e=!1){return!(this.anchor!=O.anchor||this.head!=O.head||e&&this.empty&&this.assoc!=O.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(O){if(!O||"number"!=typeof O.anchor||"number"!=typeof O.head)throw new RangeError("Invalid JSON representation for SelectionRange");return EditorSelection.range(O.anchor,O.head)}static create(O,e,t){return new SelectionRange(O,e,t)}}class EditorSelection{constructor(O,e){this.ranges=O,this.mainIndex=e}map(O,e=-1){return O.empty?this:EditorSelection.create(this.ranges.map((t=>t.map(O,e))),this.mainIndex)}eq(O,e=!1){if(this.ranges.length!=O.ranges.length||this.mainIndex!=O.mainIndex)return!1;for(let t=0;t<this.ranges.length;t++)if(!this.ranges[t].eq(O.ranges[t],e))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return 1==this.ranges.length?this:new EditorSelection([this.main],0)}addRange(O,e=!0){return EditorSelection.create([O].concat(this.ranges),e?0:this.mainIndex+1)}replaceRange(O,e=this.mainIndex){let t=this.ranges.slice();return t[e]=O,EditorSelection.create(t,this.mainIndex)}toJSON(){return{ranges:this.ranges.map((O=>O.toJSON())),main:this.mainIndex}}static fromJSON(O){if(!O||!Array.isArray(O.ranges)||"number"!=typeof O.main||O.main>=O.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new EditorSelection(O.ranges.map((O=>SelectionRange.fromJSON(O))),O.main)}static single(O,e=O){return new EditorSelection([EditorSelection.range(O,e)],0)}static create(O,e=0){if(0==O.length)throw new RangeError("A selection needs at least one range");for(let t=0,i=0;i<O.length;i++){let n=O[i];if(n.empty?n.from<=t:n.from<t)return EditorSelection.normalized(O.slice(),e);t=n.to}return new EditorSelection(O,e)}static cursor(O,e=0,t,i){return SelectionRange.create(O,O,(0==e?0:e<0?8:16)|(null==t?7:Math.min(6,t))|(null!=i?i:16777215)<<6)}static range(O,e,t,i){let n=(null!=t?t:16777215)<<6|(null==i?7:Math.min(6,i));return e<O?SelectionRange.create(e,O,48|n):SelectionRange.create(O,e,(e>O?8:0)|n)}static normalized(O,e=0){let t=O[e];O.sort(((O,e)=>O.from-e.from)),e=O.indexOf(t);for(let t=1;t<O.length;t++){let i=O[t],n=O[t-1];if(i.empty?i.from<=n.to:i.from<n.to){let r=n.from,a=Math.max(i.to,n.to);t<=e&&e--,O.splice(--t,2,i.anchor>i.head?EditorSelection.range(a,r):EditorSelection.range(r,a))}}return new EditorSelection(O,e)}}function checkSelection(O,e){for(let t of O.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let nextID=0;class Facet{constructor(O,e,t,i,n){this.combine=O,this.compareInput=e,this.compare=t,this.isStatic=i,this.id=nextID++,this.default=O([]),this.extensions="function"==typeof n?n(this):n}get reader(){return this}static define(O={}){return new Facet(O.combine||(O=>O),O.compareInput||((O,e)=>O===e),O.compare||(O.combine?(O,e)=>O===e:sameArray$1),!!O.static,O.enables)}of(O){return new FacetProvider([],this,0,O)}compute(O,e){if(this.isStatic)throw new Error("Can't compute a static facet");return new FacetProvider(O,this,1,e)}computeN(O,e){if(this.isStatic)throw new Error("Can't compute a static facet");return new FacetProvider(O,this,2,e)}from(O,e){return e||(e=O=>O),this.compute([O],(t=>e(t.field(O))))}}function sameArray$1(O,e){return O==e||O.length==e.length&&O.every(((O,t)=>O===e[t]))}class FacetProvider{constructor(O,e,t,i){this.dependencies=O,this.facet=e,this.type=t,this.value=i,this.id=nextID++}dynamicSlot(O){var e;let t=this.value,i=this.facet.compareInput,n=this.id,r=O[n]>>1,a=2==this.type,s=!1,o=!1,l=[];for(let t of this.dependencies)"doc"==t?s=!0:"selection"==t?o=!0:1&(null!==(e=O[t.id])&&void 0!==e?e:1)||l.push(O[t.id]);return{create:O=>(O.values[r]=t(O),1),update(O,e){if(s&&e.docChanged||o&&(e.docChanged||e.selection)||ensureAll(O,l)){let e=t(O);if(a?!compareArray(e,O.values[r],i):!i(e,O.values[r]))return O.values[r]=e,1}return 0},reconfigure:(O,e)=>{let s,o=e.config.address[n];if(null!=o){let n=getAddr(e,o);if(this.dependencies.every((t=>t instanceof Facet?e.facet(t)===O.facet(t):!(t instanceof StateField)||e.field(t,!1)==O.field(t,!1)))||(a?compareArray(s=t(O),n,i):i(s=t(O),n)))return O.values[r]=n,0}else s=t(O);return O.values[r]=s,1}}}}function compareArray(O,e,t){if(O.length!=e.length)return!1;for(let i=0;i<O.length;i++)if(!t(O[i],e[i]))return!1;return!0}function ensureAll(O,e){let t=!1;for(let i of e)1&ensureAddr(O,i)&&(t=!0);return t}function dynamicFacetSlot(O,e,t){let i=t.map((e=>O[e.id])),n=t.map((O=>O.type)),r=i.filter((O=>!(1&O))),a=O[e.id]>>1;function s(O){let t=[];for(let e=0;e<i.length;e++){let r=getAddr(O,i[e]);if(2==n[e])for(let O of r)t.push(O);else t.push(r)}return e.combine(t)}return{create(O){for(let e of i)ensureAddr(O,e);return O.values[a]=s(O),1},update(O,t){if(!ensureAll(O,r))return 0;let i=s(O);return e.compare(i,O.values[a])?0:(O.values[a]=i,1)},reconfigure(O,n){let r=ensureAll(O,i),o=n.config.facets[e.id],l=n.facet(e);if(o&&!r&&sameArray$1(t,o))return O.values[a]=l,0;let Q=s(O);return e.compare(Q,l)?(O.values[a]=l,0):(O.values[a]=Q,1)}}}const initField=Facet.define({static:!0});class StateField{constructor(O,e,t,i,n){this.id=O,this.createF=e,this.updateF=t,this.compareF=i,this.spec=n,this.provides=void 0}static define(O){let e=new StateField(nextID++,O.create,O.update,O.compare||((O,e)=>O===e),O);return O.provide&&(e.provides=O.provide(e)),e}create(O){let e=O.facet(initField).find((O=>O.field==this));return((null==e?void 0:e.create)||this.createF)(O)}slot(O){let e=O[this.id]>>1;return{create:O=>(O.values[e]=this.create(O),1),update:(O,t)=>{let i=O.values[e],n=this.updateF(i,t);return this.compareF(i,n)?0:(O.values[e]=n,1)},reconfigure:(O,t)=>null!=t.config.address[this.id]?(O.values[e]=t.field(this),0):(O.values[e]=this.create(O),1)}}init(O){return[this,initField.of({field:this,create:O})]}get extension(){return this}}const Prec_={lowest:4,low:3,default:2,high:1,highest:0};function prec(O){return e=>new PrecExtension(e,O)}const Prec={highest:prec(Prec_.highest),high:prec(Prec_.high),default:prec(Prec_.default),low:prec(Prec_.low),lowest:prec(Prec_.lowest)};class PrecExtension{constructor(O,e){this.inner=O,this.prec=e}}class Compartment{of(O){return new CompartmentInstance(this,O)}reconfigure(O){return Compartment.reconfigure.of({compartment:this,extension:O})}get(O){return O.config.compartments.get(this)}}class CompartmentInstance{constructor(O,e){this.compartment=O,this.inner=e}}class Configuration{constructor(O,e,t,i,n,r){for(this.base=O,this.compartments=e,this.dynamicSlots=t,this.address=i,this.staticValues=n,this.facets=r,this.statusTemplate=[];this.statusTemplate.length<t.length;)this.statusTemplate.push(0)}staticFacet(O){let e=this.address[O.id];return null==e?O.default:this.staticValues[e>>1]}static resolve(O,e,t){let i=[],n=Object.create(null),r=new Map;for(let t of flatten(O,e,r))t instanceof StateField?i.push(t):(n[t.facet.id]||(n[t.facet.id]=[])).push(t);let a=Object.create(null),s=[],o=[];for(let O of i)a[O.id]=o.length<<1,o.push((e=>O.slot(e)));let l=null==t?void 0:t.config.facets;for(let O in n){let e=n[O],i=e[0].facet,r=l&&l[O]||[];if(e.every((O=>0==O.type)))if(a[i.id]=s.length<<1|1,sameArray$1(r,e))s.push(t.facet(i));else{let O=i.combine(e.map((O=>O.value)));s.push(t&&i.compare(O,t.facet(i))?t.facet(i):O)}else{for(let O of e)0==O.type?(a[O.id]=s.length<<1|1,s.push(O.value)):(a[O.id]=o.length<<1,o.push((e=>O.dynamicSlot(e))));a[i.id]=o.length<<1,o.push((O=>dynamicFacetSlot(O,i,e)))}}let Q=o.map((O=>O(a)));return new Configuration(O,r,Q,a,s,n)}}function flatten(O,e,t){let i=[[],[],[],[],[]],n=new Map;return function O(r,a){let s=n.get(r);if(null!=s){if(s<=a)return;let O=i[s].indexOf(r);O>-1&&i[s].splice(O,1),r instanceof CompartmentInstance&&t.delete(r.compartment)}if(n.set(r,a),Array.isArray(r))for(let e of r)O(e,a);else if(r instanceof CompartmentInstance){if(t.has(r.compartment))throw new RangeError("Duplicate use of compartment in extensions");let i=e.get(r.compartment)||r.inner;t.set(r.compartment,i),O(i,a)}else if(r instanceof PrecExtension)O(r.inner,r.prec);else if(r instanceof StateField)i[a].push(r),r.provides&&O(r.provides,a);else if(r instanceof FacetProvider)i[a].push(r),r.facet.extensions&&O(r.facet.extensions,Prec_.default);else{let e=r.extension;if(!e)throw new Error(`Unrecognized extension value in extension set (${r}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);O(e,a)}}(O,Prec_.default),i.reduce(((O,e)=>O.concat(e)))}function ensureAddr(O,e){if(1&e)return 2;let t=e>>1,i=O.status[t];if(4==i)throw new Error("Cyclic dependency between fields and/or facets");if(2&i)return i;O.status[t]=4;let n=O.computeSlot(O,O.config.dynamicSlots[t]);return O.status[t]=2|n}function getAddr(O,e){return 1&e?O.config.staticValues[e>>1]:O.values[e>>1]}const languageData=Facet.define(),allowMultipleSelections=Facet.define({combine:O=>O.some((O=>O)),static:!0}),lineSeparator=Facet.define({combine:O=>O.length?O[0]:void 0,static:!0}),changeFilter=Facet.define(),transactionFilter=Facet.define(),transactionExtender=Facet.define(),readOnly=Facet.define({combine:O=>!!O.length&&O[0]});class Annotation{constructor(O,e){this.type=O,this.value=e}static define(){return new AnnotationType}}class AnnotationType{of(O){return new Annotation(this,O)}}class StateEffectType{constructor(O){this.map=O}of(O){return new StateEffect(this,O)}}class StateEffect{constructor(O,e){this.type=O,this.value=e}map(O){let e=this.type.map(this.value,O);return void 0===e?void 0:e==this.value?this:new StateEffect(this.type,e)}is(O){return this.type==O}static define(O={}){return new StateEffectType(O.map||(O=>O))}static mapEffects(O,e){if(!O.length)return O;let t=[];for(let i of O){let O=i.map(e);O&&t.push(O)}return t}}StateEffect.reconfigure=StateEffect.define(),StateEffect.appendConfig=StateEffect.define();class Transaction{constructor(O,e,t,i,n,r){this.startState=O,this.changes=e,this.selection=t,this.effects=i,this.annotations=n,this.scrollIntoView=r,this._doc=null,this._state=null,t&&checkSelection(t,e.newLength),n.some((O=>O.type==Transaction.time))||(this.annotations=n.concat(Transaction.time.of(Date.now())))}static create(O,e,t,i,n,r){return new Transaction(O,e,t,i,n,r)}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(O){for(let e of this.annotations)if(e.type==O)return e.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(O){let e=this.annotation(Transaction.userEvent);return!(!e||!(e==O||e.length>O.length&&e.slice(0,O.length)==O&&"."==e[O.length]))}}function joinRanges(O,e){let t=[];for(let i=0,n=0;;){let r,a;if(i<O.length&&(n==e.length||e[n]>=O[i]))r=O[i++],a=O[i++];else{if(!(n<e.length))return t;r=e[n++],a=e[n++]}!t.length||t[t.length-1]<r?t.push(r,a):t[t.length-1]<a&&(t[t.length-1]=a)}}function mergeTransaction(O,e,t){var i;let n,r,a;return t?(n=e.changes,r=ChangeSet.empty(e.changes.length),a=O.changes.compose(e.changes)):(n=e.changes.map(O.changes),r=O.changes.mapDesc(e.changes,!0),a=O.changes.compose(n)),{changes:a,selection:e.selection?e.selection.map(r):null===(i=O.selection)||void 0===i?void 0:i.map(n),effects:StateEffect.mapEffects(O.effects,n).concat(StateEffect.mapEffects(e.effects,r)),annotations:O.annotations.length?O.annotations.concat(e.annotations):e.annotations,scrollIntoView:O.scrollIntoView||e.scrollIntoView}}function resolveTransactionInner(O,e,t){let i=e.selection,n=asArray(e.annotations);return e.userEvent&&(n=n.concat(Transaction.userEvent.of(e.userEvent))),{changes:e.changes instanceof ChangeSet?e.changes:ChangeSet.of(e.changes||[],t,O.facet(lineSeparator)),selection:i&&(i instanceof EditorSelection?i:EditorSelection.single(i.anchor,i.head)),effects:asArray(e.effects),annotations:n,scrollIntoView:!!e.scrollIntoView}}function resolveTransaction(O,e,t){let i=resolveTransactionInner(O,e.length?e[0]:{},O.doc.length);e.length&&!1===e[0].filter&&(t=!1);for(let n=1;n<e.length;n++){!1===e[n].filter&&(t=!1);let r=!!e[n].sequential;i=mergeTransaction(i,resolveTransactionInner(O,e[n],r?i.changes.newLength:O.doc.length),r)}let n=Transaction.create(O,i.changes,i.selection,i.effects,i.annotations,i.scrollIntoView);return extendTransaction(t?filterTransaction(n):n)}function filterTransaction(O){let e=O.startState,t=!0;for(let i of e.facet(changeFilter)){let e=i(O);if(!1===e){t=!1;break}Array.isArray(e)&&(t=!0===t?e:joinRanges(t,e))}if(!0!==t){let i,n;if(!1===t)n=O.changes.invertedDesc,i=ChangeSet.empty(e.doc.length);else{let e=O.changes.filter(t);i=e.changes,n=e.filtered.mapDesc(e.changes).invertedDesc}O=Transaction.create(e,i,O.selection&&O.selection.map(n),StateEffect.mapEffects(O.effects,n),O.annotations,O.scrollIntoView)}let i=e.facet(transactionFilter);for(let t=i.length-1;t>=0;t--){let n=i[t](O);O=n instanceof Transaction?n:Array.isArray(n)&&1==n.length&&n[0]instanceof Transaction?n[0]:resolveTransaction(e,asArray(n),!1)}return O}function extendTransaction(O){let e=O.startState,t=e.facet(transactionExtender),i=O;for(let n=t.length-1;n>=0;n--){let r=t[n](O);r&&Object.keys(r).length&&(i=mergeTransaction(i,resolveTransactionInner(e,r,O.changes.newLength),!0))}return i==O?O:Transaction.create(e,O.changes,O.selection,i.effects,i.annotations,i.scrollIntoView)}Transaction.time=Annotation.define(),Transaction.userEvent=Annotation.define(),Transaction.addToHistory=Annotation.define(),Transaction.remote=Annotation.define();const none$2=[];function asArray(O){return null==O?none$2:Array.isArray(O)?O:[O]}var CharCategory=function(O){return O[O.Word=0]="Word",O[O.Space=1]="Space",O[O.Other=2]="Other",O}(CharCategory||(CharCategory={}));const nonASCIISingleCaseWordChar=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let wordChar;try{wordChar=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(O){}function hasWordChar(O){if(wordChar)return wordChar.test(O);for(let e=0;e<O.length;e++){let t=O[e];if(/\w/.test(t)||t>""&&(t.toUpperCase()!=t.toLowerCase()||nonASCIISingleCaseWordChar.test(t)))return!0}return!1}function makeCategorizer(O){return e=>{if(!/\S/.test(e))return CharCategory.Space;if(hasWordChar(e))return CharCategory.Word;for(let t=0;t<O.length;t++)if(e.indexOf(O[t])>-1)return CharCategory.Word;return CharCategory.Other}}class EditorState{constructor(O,e,t,i,n,r){this.config=O,this.doc=e,this.selection=t,this.values=i,this.status=O.statusTemplate.slice(),this.computeSlot=n,r&&(r._state=this);for(let O=0;O<this.config.dynamicSlots.length;O++)ensureAddr(this,O<<1);this.computeSlot=null}field(O,e=!0){let t=this.config.address[O.id];if(null!=t)return ensureAddr(this,t),getAddr(this,t);if(e)throw new RangeError("Field is not present in this state")}update(...O){return resolveTransaction(this,O,!0)}applyTransaction(O){let e,t=this.config,{base:i,compartments:n}=t;for(let e of O.effects)e.is(Compartment.reconfigure)?(t&&(n=new Map,t.compartments.forEach(((O,e)=>n.set(e,O))),t=null),n.set(e.value.compartment,e.value.extension)):e.is(StateEffect.reconfigure)?(t=null,i=e.value):e.is(StateEffect.appendConfig)&&(t=null,i=asArray(i).concat(e.value));if(t)e=O.startState.values.slice();else{t=Configuration.resolve(i,n,this),e=new EditorState(t,this.doc,this.selection,t.dynamicSlots.map((()=>null)),((O,e)=>e.reconfigure(O,this)),null).values}let r=O.startState.facet(allowMultipleSelections)?O.newSelection:O.newSelection.asSingle();new EditorState(t,O.newDoc,r,e,((e,t)=>t.update(e,O)),O)}replaceSelection(O){return"string"==typeof O&&(O=this.toText(O)),this.changeByRange((e=>({changes:{from:e.from,to:e.to,insert:O},range:EditorSelection.cursor(e.from+O.length)})))}changeByRange(O){let e=this.selection,t=O(e.ranges[0]),i=this.changes(t.changes),n=[t.range],r=asArray(t.effects);for(let t=1;t<e.ranges.length;t++){let a=O(e.ranges[t]),s=this.changes(a.changes),o=s.map(i);for(let O=0;O<t;O++)n[O]=n[O].map(o);let l=i.mapDesc(s,!0);n.push(a.range.map(l)),i=i.compose(o),r=StateEffect.mapEffects(r,o).concat(StateEffect.mapEffects(asArray(a.effects),l))}return{changes:i,selection:EditorSelection.create(n,e.mainIndex),effects:r}}changes(O=[]){return O instanceof ChangeSet?O:ChangeSet.of(O,this.doc.length,this.facet(EditorState.lineSeparator))}toText(O){return Text.of(O.split(this.facet(EditorState.lineSeparator)||DefaultSplit))}sliceDoc(O=0,e=this.doc.length){return this.doc.sliceString(O,e,this.lineBreak)}facet(O){let e=this.config.address[O.id];return null==e?O.default:(ensureAddr(this,e),getAddr(this,e))}toJSON(O){let e={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(O)for(let t in O){let i=O[t];i instanceof StateField&&null!=this.config.address[i.id]&&(e[t]=i.spec.toJSON(this.field(O[t]),this))}return e}static fromJSON(O,e={},t){if(!O||"string"!=typeof O.doc)throw new RangeError("Invalid JSON representation for EditorState");let i=[];if(t)for(let e in t)if(Object.prototype.hasOwnProperty.call(O,e)){let n=t[e],r=O[e];i.push(n.init((O=>n.spec.fromJSON(r,O))))}return EditorState.create({doc:O.doc,selection:EditorSelection.fromJSON(O.selection),extensions:e.extensions?i.concat([e.extensions]):i})}static create(O={}){let e=Configuration.resolve(O.extensions||[],new Map),t=O.doc instanceof Text?O.doc:Text.of((O.doc||"").split(e.staticFacet(EditorState.lineSeparator)||DefaultSplit)),i=O.selection?O.selection instanceof EditorSelection?O.selection:EditorSelection.single(O.selection.anchor,O.selection.head):EditorSelection.single(0);return checkSelection(i,t.length),e.staticFacet(allowMultipleSelections)||(i=i.asSingle()),new EditorState(e,t,i,e.dynamicSlots.map((()=>null)),((O,e)=>e.create(O)),null)}get tabSize(){return this.facet(EditorState.tabSize)}get lineBreak(){return this.facet(EditorState.lineSeparator)||"\n"}get readOnly(){return this.facet(readOnly)}phrase(O,...e){for(let e of this.facet(EditorState.phrases))if(Object.prototype.hasOwnProperty.call(e,O)){O=e[O];break}return e.length&&(O=O.replace(/\$(\$|\d*)/g,((O,t)=>{if("$"==t)return"$";let i=+(t||1);return!i||i>e.length?O:e[i-1]}))),O}languageDataAt(O,e,t=-1){let i=[];for(let n of this.facet(languageData))for(let r of n(this,e,t))Object.prototype.hasOwnProperty.call(r,O)&&i.push(r[O]);return i}charCategorizer(O){return makeCategorizer(this.languageDataAt("wordChars",O).join(""))}wordAt(O){let{text:e,from:t,length:i}=this.doc.lineAt(O),n=this.charCategorizer(O),r=O-t,a=O-t;for(;r>0;){let O=findClusterBreak(e,r,!1);if(n(e.slice(O,r))!=CharCategory.Word)break;r=O}for(;a<i;){let O=findClusterBreak(e,a);if(n(e.slice(a,O))!=CharCategory.Word)break;a=O}return r==a?null:EditorSelection.range(r+t,a+t)}}function combineConfig(O,e,t={}){let i={};for(let e of O)for(let O of Object.keys(e)){let n=e[O],r=i[O];if(void 0===r)i[O]=n;else if(r===n||void 0===n);else{if(!Object.hasOwnProperty.call(t,O))throw new Error("Config merge conflict for field "+O);i[O]=t[O](r,n)}}for(let O in e)void 0===i[O]&&(i[O]=e[O]);return i}EditorState.allowMultipleSelections=allowMultipleSelections,EditorState.tabSize=Facet.define({combine:O=>O.length?O[0]:4}),EditorState.lineSeparator=lineSeparator,EditorState.readOnly=readOnly,EditorState.phrases=Facet.define({compare(O,e){let t=Object.keys(O),i=Object.keys(e);return t.length==i.length&&t.every((t=>O[t]==e[t]))}}),EditorState.languageData=languageData,EditorState.changeFilter=changeFilter,EditorState.transactionFilter=transactionFilter,EditorState.transactionExtender=transactionExtender,Compartment.reconfigure=StateEffect.define();class RangeValue{eq(O){return this==O}range(O,e=O){return Range$1.create(O,e,this)}}RangeValue.prototype.startSide=RangeValue.prototype.endSide=0,RangeValue.prototype.point=!1,RangeValue.prototype.mapMode=MapMode.TrackDel;let Range$1=class O{constructor(O,e,t){this.from=O,this.to=e,this.value=t}static create(e,t,i){return new O(e,t,i)}};function cmpRange(O,e){return O.from-e.from||O.value.startSide-e.value.startSide}class Chunk{constructor(O,e,t,i){this.from=O,this.to=e,this.value=t,this.maxPoint=i}get length(){return this.to[this.to.length-1]}findIndex(O,e,t,i=0){let n=t?this.to:this.from;for(let r=i,a=n.length;;){if(r==a)return r;let i=r+a>>1,s=n[i]-O||(t?this.value[i].endSide:this.value[i].startSide)-e;if(i==r)return s>=0?r:a;s>=0?a=i:r=i+1}}between(O,e,t,i){for(let n=this.findIndex(e,-1e9,!0),r=this.findIndex(t,1e9,!1,n);n<r;n++)if(!1===i(this.from[n]+O,this.to[n]+O,this.value[n]))return!1}map(O,e){let t=[],i=[],n=[],r=-1,a=-1;for(let s=0;s<this.value.length;s++){let o,l,Q=this.value[s],c=this.from[s]+O,h=this.to[s]+O;if(c==h){let O=e.mapPos(c,Q.startSide,Q.mapMode);if(null==O)continue;if(o=l=O,Q.startSide!=Q.endSide&&(l=e.mapPos(c,Q.endSide),l<o))continue}else if(o=e.mapPos(c,Q.startSide),l=e.mapPos(h,Q.endSide),o>l||o==l&&Q.startSide>0&&Q.endSide<=0)continue;(l-o||Q.endSide-Q.startSide)<0||(r<0&&(r=o),Q.point&&(a=Math.max(a,l-o)),t.push(Q),i.push(o-r),n.push(l-r))}return{mapped:t.length?new Chunk(i,n,t,a):null,pos:r}}}class RangeSet{constructor(O,e,t,i){this.chunkPos=O,this.chunk=e,this.nextLayer=t,this.maxPoint=i}static create(O,e,t,i){return new RangeSet(O,e,t,i)}get length(){let O=this.chunk.length-1;return O<0?0:Math.max(this.chunkEnd(O),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let O=this.nextLayer.size;for(let e of this.chunk)O+=e.value.length;return O}chunkEnd(O){return this.chunkPos[O]+this.chunk[O].length}update(O){let{add:e=[],sort:t=!1,filterFrom:i=0,filterTo:n=this.length}=O,r=O.filter;if(0==e.length&&!r)return this;if(t&&(e=e.slice().sort(cmpRange)),this.isEmpty)return e.length?RangeSet.of(e):this;let a=new LayerCursor(this,null,-1).goto(0),s=0,o=[],l=new RangeSetBuilder;for(;a.value||s<e.length;)if(s<e.length&&(a.from-e[s].from||a.startSide-e[s].value.startSide)>=0){let O=e[s++];l.addInner(O.from,O.to,O.value)||o.push(O)}else 1==a.rangeIndex&&a.chunkIndex<this.chunk.length&&(s==e.length||this.chunkEnd(a.chunkIndex)<e[s].from)&&(!r||i>this.chunkEnd(a.chunkIndex)||n<this.chunkPos[a.chunkIndex])&&l.addChunk(this.chunkPos[a.chunkIndex],this.chunk[a.chunkIndex])?a.nextChunk():((!r||i>a.to||n<a.from||r(a.from,a.to,a.value))&&(l.addInner(a.from,a.to,a.value)||o.push(Range$1.create(a.from,a.to,a.value))),a.next());return l.finishInner(this.nextLayer.isEmpty&&!o.length?RangeSet.empty:this.nextLayer.update({add:o,filter:r,filterFrom:i,filterTo:n}))}map(O){if(O.empty||this.isEmpty)return this;let e=[],t=[],i=-1;for(let n=0;n<this.chunk.length;n++){let r=this.chunkPos[n],a=this.chunk[n],s=O.touchesRange(r,r+a.length);if(!1===s)i=Math.max(i,a.maxPoint),e.push(a),t.push(O.mapPos(r));else if(!0===s){let{mapped:n,pos:s}=a.map(r,O);n&&(i=Math.max(i,n.maxPoint),e.push(n),t.push(s))}}let n=this.nextLayer.map(O);return 0==e.length?n:new RangeSet(t,e,n||RangeSet.empty,i)}between(O,e,t){if(!this.isEmpty){for(let i=0;i<this.chunk.length;i++){let n=this.chunkPos[i],r=this.chunk[i];if(e>=n&&O<=n+r.length&&!1===r.between(n,O-n,e-n,t))return}this.nextLayer.between(O,e,t)}}iter(O=0){return HeapCursor.from([this]).goto(O)}get isEmpty(){return this.nextLayer==this}static iter(O,e=0){return HeapCursor.from(O).goto(e)}static compare(O,e,t,i,n=-1){let r=O.filter((O=>O.maxPoint>0||!O.isEmpty&&O.maxPoint>=n)),a=e.filter((O=>O.maxPoint>0||!O.isEmpty&&O.maxPoint>=n)),s=findSharedChunks(r,a,t),o=new SpanCursor(r,s,n),l=new SpanCursor(a,s,n);t.iterGaps(((O,e,t)=>compare(o,O,l,e,t,i))),t.empty&&0==t.length&&compare(o,0,l,0,0,i)}static eq(O,e,t=0,i){null==i&&(i=999999999);let n=O.filter((O=>!O.isEmpty&&e.indexOf(O)<0)),r=e.filter((e=>!e.isEmpty&&O.indexOf(e)<0));if(n.length!=r.length)return!1;if(!n.length)return!0;let a=findSharedChunks(n,r),s=new SpanCursor(n,a,0).goto(t),o=new SpanCursor(r,a,0).goto(t);for(;;){if(s.to!=o.to||!sameValues(s.active,o.active)||s.point&&(!o.point||!s.point.eq(o.point)))return!1;if(s.to>i)return!0;s.next(),o.next()}}static spans(O,e,t,i,n=-1){let r=new SpanCursor(O,null,n).goto(e),a=e,s=r.openStart;for(;;){let O=Math.min(r.to,t);if(r.point){let t=r.activeForPoint(r.to),n=r.pointFrom<e?t.length+1:r.point.startSide<0?t.length:Math.min(t.length,s);i.point(a,O,r.point,t,n,r.pointRank),s=Math.min(r.openEnd(O),t.length)}else O>a&&(i.span(a,O,r.active,s),s=r.openEnd(O));if(r.to>t)return s+(r.point&&r.to>t?1:0);a=r.to,r.next()}}static of(O,e=!1){let t=new RangeSetBuilder;for(let i of O instanceof Range$1?[O]:e?lazySort(O):O)t.add(i.from,i.to,i.value);return t.finish()}static join(O){if(!O.length)return RangeSet.empty;let e=O[O.length-1];for(let t=O.length-2;t>=0;t--)for(let i=O[t];i!=RangeSet.empty;i=i.nextLayer)e=new RangeSet(i.chunkPos,i.chunk,e,Math.max(i.maxPoint,e.maxPoint));return e}}function lazySort(O){if(O.length>1)for(let e=O[0],t=1;t<O.length;t++){let i=O[t];if(cmpRange(e,i)>0)return O.slice().sort(cmpRange);e=i}return O}RangeSet.empty=new RangeSet([],[],null,-1),RangeSet.empty.nextLayer=RangeSet.empty;class RangeSetBuilder{finishChunk(O){this.chunks.push(new Chunk(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,O&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(O,e,t){this.addInner(O,e,t)||(this.nextLayer||(this.nextLayer=new RangeSetBuilder)).add(O,e,t)}addInner(O,e,t){let i=O-this.lastTo||t.startSide-this.last.endSide;if(i<=0&&(O-this.lastFrom||t.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return!(i<0)&&(250==this.from.length&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=O),this.from.push(O-this.chunkStart),this.to.push(e-this.chunkStart),this.last=t,this.lastFrom=O,this.lastTo=e,this.value.push(t),t.point&&(this.maxPoint=Math.max(this.maxPoint,e-O)),!0)}addChunk(O,e){if((O-this.lastTo||e.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,e.maxPoint),this.chunks.push(e),this.chunkPos.push(O);let t=e.value.length-1;return this.last=e.value[t],this.lastFrom=e.from[t]+O,this.lastTo=e.to[t]+O,!0}finish(){return this.finishInner(RangeSet.empty)}finishInner(O){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return O;let e=RangeSet.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(O):O,this.setMaxPoint);return this.from=null,e}}function findSharedChunks(O,e,t){let i=new Map;for(let e of O)for(let O=0;O<e.chunk.length;O++)e.chunk[O].maxPoint<=0&&i.set(e.chunk[O],e.chunkPos[O]);let n=new Set;for(let O of e)for(let e=0;e<O.chunk.length;e++){let r=i.get(O.chunk[e]);null==r||(t?t.mapPos(r):r)!=O.chunkPos[e]||(null==t?void 0:t.touchesRange(r,r+O.chunk[e].length))||n.add(O.chunk[e])}return n}class LayerCursor{constructor(O,e,t,i=0){this.layer=O,this.skip=e,this.minPoint=t,this.rank=i}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(O,e=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(O,e,!1),this}gotoInner(O,e,t){for(;this.chunkIndex<this.layer.chunk.length;){let e=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(e)||this.layer.chunkEnd(this.chunkIndex)<O||e.maxPoint<this.minPoint))break;this.chunkIndex++,t=!1}if(this.chunkIndex<this.layer.chunk.length){let i=this.layer.chunk[this.chunkIndex].findIndex(O-this.layer.chunkPos[this.chunkIndex],e,!0);(!t||this.rangeIndex<i)&&this.setRangeIndex(i)}this.next()}forward(O,e){(this.to-O||this.endSide-e)<0&&this.gotoInner(O,e,!0)}next(){for(;;){if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}{let O=this.layer.chunkPos[this.chunkIndex],e=this.layer.chunk[this.chunkIndex],t=O+e.from[this.rangeIndex];if(this.from=t,this.to=O+e.to[this.rangeIndex],this.value=e.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}}setRangeIndex(O){if(O==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=O}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(O){return this.from-O.from||this.startSide-O.startSide||this.rank-O.rank||this.to-O.to||this.endSide-O.endSide}}class HeapCursor{constructor(O){this.heap=O}static from(O,e=null,t=-1){let i=[];for(let n=0;n<O.length;n++)for(let r=O[n];!r.isEmpty;r=r.nextLayer)r.maxPoint>=t&&i.push(new LayerCursor(r,e,t,n));return 1==i.length?i[0]:new HeapCursor(i)}get startSide(){return this.value?this.value.startSide:0}goto(O,e=-1e9){for(let t of this.heap)t.goto(O,e);for(let O=this.heap.length>>1;O>=0;O--)heapBubble(this.heap,O);return this.next(),this}forward(O,e){for(let t of this.heap)t.forward(O,e);for(let O=this.heap.length>>1;O>=0;O--)heapBubble(this.heap,O);(this.to-O||this.value.endSide-e)<0&&this.next()}next(){if(0==this.heap.length)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let O=this.heap[0];this.from=O.from,this.to=O.to,this.value=O.value,this.rank=O.rank,O.value&&O.next(),heapBubble(this.heap,0)}}}function heapBubble(O,e){for(let t=O[e];;){let i=1+(e<<1);if(i>=O.length)break;let n=O[i];if(i+1<O.length&&n.compare(O[i+1])>=0&&(n=O[i+1],i++),t.compare(n)<0)break;O[i]=t,O[e]=n,e=i}}class SpanCursor{constructor(O,e,t){this.minPoint=t,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=HeapCursor.from(O,e,t)}goto(O,e=-1e9){return this.cursor.goto(O,e),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=O,this.endSide=e,this.openStart=-1,this.next(),this}forward(O,e){for(;this.minActive>-1&&(this.activeTo[this.minActive]-O||this.active[this.minActive].endSide-e)<0;)this.removeActive(this.minActive);this.cursor.forward(O,e)}removeActive(O){remove(this.active,O),remove(this.activeTo,O),remove(this.activeRank,O),this.minActive=findMinIndex(this.active,this.activeTo)}addActive(O){let e=0,{value:t,to:i,rank:n}=this.cursor;for(;e<this.activeRank.length&&(n-this.activeRank[e]||i-this.activeTo[e])>0;)e++;insert(this.active,e,t),insert(this.activeTo,e,i),insert(this.activeRank,e,n),O&&insert(O,e,this.cursor.from),this.minActive=findMinIndex(this.active,this.activeTo)}next(){let O=this.to,e=this.point;this.point=null;let t=this.openStart<0?[]:null;for(;;){let i=this.minActive;if(i>-1&&(this.activeTo[i]-this.cursor.from||this.active[i].endSide-this.cursor.startSide)<0){if(this.activeTo[i]>O){this.to=this.activeTo[i],this.endSide=this.active[i].endSide;break}this.removeActive(i),t&&remove(t,i)}else{if(!this.cursor.value){this.to=this.endSide=1e9;break}if(this.cursor.from>O){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}{let O=this.cursor.value;if(O.point){if(!(e&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)){this.point=O,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=O.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}this.cursor.next()}else this.addActive(t),this.cursor.next()}}}if(t){this.openStart=0;for(let e=t.length-1;e>=0&&t[e]<O;e--)this.openStart++}}activeForPoint(O){if(!this.active.length)return this.active;let e=[];for(let t=this.active.length-1;t>=0&&!(this.activeRank[t]<this.pointRank);t--)(this.activeTo[t]>O||this.activeTo[t]==O&&this.active[t].endSide>=this.point.endSide)&&e.push(this.active[t]);return e.reverse()}openEnd(O){let e=0;for(let t=this.activeTo.length-1;t>=0&&this.activeTo[t]>O;t--)e++;return e}}function compare(O,e,t,i,n,r){O.goto(e),t.goto(i);let a=i+n,s=i,o=i-e;for(;;){let e=O.to+o-t.to,i=e||O.endSide-t.endSide,n=i<0?O.to+o:t.to,l=Math.min(n,a);if(O.point||t.point?O.point&&t.point&&(O.point==t.point||O.point.eq(t.point))&&sameValues(O.activeForPoint(O.to),t.activeForPoint(t.to))||r.comparePoint(s,l,O.point,t.point):l>s&&!sameValues(O.active,t.active)&&r.compareRange(s,l,O.active,t.active),n>a)break;(e||O.openEnd!=t.openEnd)&&r.boundChange&&r.boundChange(n),s=n,i<=0&&O.next(),i>=0&&t.next()}}function sameValues(O,e){if(O.length!=e.length)return!1;for(let t=0;t<O.length;t++)if(O[t]!=e[t]&&!O[t].eq(e[t]))return!1;return!0}function remove(O,e){for(let t=e,i=O.length-1;t<i;t++)O[t]=O[t+1];O.pop()}function insert(O,e,t){for(let t=O.length-1;t>=e;t--)O[t+1]=O[t];O[e]=t}function findMinIndex(O,e){let t=-1,i=1e9;for(let n=0;n<e.length;n++)(e[n]-i||O[n].endSide-O[t].endSide)<0&&(t=n,i=e[n]);return t}function countColumn(O,e,t=O.length){let i=0;for(let n=0;n<t&&n<O.length;)9==O.charCodeAt(n)?(i+=e-i%e,n++):(i++,n=findClusterBreak(O,n));return i}function findColumn$1(O,e,t,i){for(let i=0,n=0;;){if(n>=e)return i;if(i==O.length)break;n+=9==O.charCodeAt(i)?t-n%t:1,i=findClusterBreak(O,i)}return!0===i?-1:O.length}const C="ͼ",COUNT="undefined"==typeof Symbol?"__ͼ":Symbol.for(C),SET="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),top="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:{};class StyleModule{constructor(O,e){this.rules=[];let{finish:t}=e||{};function i(O){return/^@/.test(O)?[O]:O.split(/,\s*/)}function n(O,e,r,a){let s=[],o=/^@(\w+)\b/.exec(O[0]),l=o&&"keyframes"==o[1];if(o&&null==e)return r.push(O[0]+";");for(let t in e){let a=e[t];if(/&/.test(t))n(t.split(/,\s*/).map((e=>O.map((O=>e.replace(/&/,O))))).reduce(((O,e)=>O.concat(e))),a,r);else if(a&&"object"==typeof a){if(!o)throw new RangeError("The value of a property ("+t+") should be a primitive value.");n(i(t),a,s,l)}else null!=a&&s.push(t.replace(/_.*/,"").replace(/[A-Z]/g,(O=>"-"+O.toLowerCase()))+": "+a+";")}(s.length||l)&&r.push((!t||o||a?O:O.map(t)).join(", ")+" {"+s.join(" ")+"}")}for(let e in O)n(i(e),O[e],this.rules)}getRules(){return this.rules.join("\n")}static newName(){let O=top[COUNT]||1;return top[COUNT]=O+1,C+O.toString(36)}static mount(O,e,t){let i=O[SET],n=t&&t.nonce;i?n&&i.setNonce(n):i=new StyleSet(O,n),i.mount(Array.isArray(e)?e:[e],O)}}let adoptedSet=new Map;class StyleSet{constructor(O,e){let t=O.ownerDocument||O,i=t.defaultView;if(!O.head&&O.adoptedStyleSheets&&i.CSSStyleSheet){let e=adoptedSet.get(t);if(e)return O[SET]=e;this.sheet=new i.CSSStyleSheet,adoptedSet.set(t,this)}else this.styleTag=t.createElement("style"),e&&this.styleTag.setAttribute("nonce",e);this.modules=[],O[SET]=this}mount(O,e){let t=this.sheet,i=0,n=0;for(let e=0;e<O.length;e++){let r=O[e],a=this.modules.indexOf(r);if(a<n&&a>-1&&(this.modules.splice(a,1),n--,a=-1),-1==a){if(this.modules.splice(n++,0,r),t)for(let O=0;O<r.rules.length;O++)t.insertRule(r.rules[O],i++)}else{for(;n<a;)i+=this.modules[n++].rules.length;i+=r.rules.length,n++}}if(t)e.adoptedStyleSheets.indexOf(this.sheet)<0&&(e.adoptedStyleSheets=[this.sheet,...e.adoptedStyleSheets]);else{let O="";for(let e=0;e<this.modules.length;e++)O+=this.modules[e].getRules()+"\n";this.styleTag.textContent=O;let t=e.head||e;this.styleTag.parentNode!=t&&t.insertBefore(this.styleTag,t.firstChild)}}setNonce(O){this.styleTag&&this.styleTag.getAttribute("nonce")!=O&&this.styleTag.setAttribute("nonce",O)}}for(var base={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},shift={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},mac="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),ie$1="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),i=0;i<10;i++)base[48+i]=base[96+i]=String(i);for(i=1;i<=24;i++)base[i+111]="F"+i;for(i=65;i<=90;i++)base[i]=String.fromCharCode(i+32),shift[i]=String.fromCharCode(i);for(var code in base)shift.hasOwnProperty(code)||(shift[code]=base[code]);function keyName(O){var e=!(mac&&O.metaKey&&O.shiftKey&&!O.ctrlKey&&!O.altKey||ie$1&&O.shiftKey&&O.key&&1==O.key.length||"Unidentified"==O.key)&&O.key||(O.shiftKey?shift:base)[O.keyCode]||O.key||"Unidentified";return"Esc"==e&&(e="Escape"),"Del"==e&&(e="Delete"),"Left"==e&&(e="ArrowLeft"),"Up"==e&&(e="ArrowUp"),"Right"==e&&(e="ArrowRight"),"Down"==e&&(e="ArrowDown"),e}function getSelection(O){let e;return e=11==O.nodeType?O.getSelection?O:O.ownerDocument:O,e.getSelection()}function contains(O,e){return!!e&&(O==e||O.contains(1!=e.nodeType?e.parentNode:e))}function hasSelection(O,e){if(!e.anchorNode)return!1;try{return contains(O,e.anchorNode)}catch(O){return!1}}function clientRectsFor(O){return 3==O.nodeType?textRange(O,0,O.nodeValue.length).getClientRects():1==O.nodeType?O.getClientRects():[]}function isEquivalentPosition(O,e,t,i){return!!t&&(scanFor(O,e,t,i,-1)||scanFor(O,e,t,i,1))}function domIndex(O){for(var e=0;;e++)if(!(O=O.previousSibling))return e}function isBlockElement(O){return 1==O.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(O.nodeName)}function scanFor(O,e,t,i,n){for(;;){if(O==t&&e==i)return!0;if(e==(n<0?0:maxOffset(O))){if("DIV"==O.nodeName)return!1;let t=O.parentNode;if(!t||1!=t.nodeType)return!1;e=domIndex(O)+(n<0?0:1),O=t}else{if(1!=O.nodeType)return!1;if(1==(O=O.childNodes[e+(n<0?-1:0)]).nodeType&&"false"==O.contentEditable)return!1;e=n<0?maxOffset(O):0}}}function maxOffset(O){return 3==O.nodeType?O.nodeValue.length:O.childNodes.length}function flattenRect(O,e){let t=e?O.left:O.right;return{left:t,right:t,top:O.top,bottom:O.bottom}}function windowRect(O){let e=O.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:O.innerWidth,top:0,bottom:O.innerHeight}}function getScale(O,e){let t=e.width/O.offsetWidth,i=e.height/O.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-O.offsetWidth)<1)&&(t=1),(i>.995&&i<1.005||!isFinite(i)||Math.abs(e.height-O.offsetHeight)<1)&&(i=1),{scaleX:t,scaleY:i}}function scrollRectIntoView(O,e,t,i,n,r,a,s){let o=O.ownerDocument,l=o.defaultView||window;for(let Q=O,c=!1;Q&&!c;)if(1==Q.nodeType){let O,h=Q==o.body,$=1,d=1;if(h)O=windowRect(l);else{if(/^(fixed|sticky)$/.test(getComputedStyle(Q).position)&&(c=!0),Q.scrollHeight<=Q.clientHeight&&Q.scrollWidth<=Q.clientWidth){Q=Q.assignedSlot||Q.parentNode;continue}let e=Q.getBoundingClientRect();({scaleX:$,scaleY:d}=getScale(Q,e)),O={left:e.left,right:e.left+Q.clientWidth*$,top:e.top,bottom:e.top+Q.clientHeight*d}}let p=0,u=0;if("nearest"==n)e.top<O.top?(u=-(O.top-e.top+a),t>0&&e.bottom>O.bottom+u&&(u=e.bottom-O.bottom+u+a)):e.bottom>O.bottom&&(u=e.bottom-O.bottom+a,t<0&&e.top-u<O.top&&(u=-(O.top+u-e.top+a)));else{let i=e.bottom-e.top,r=O.bottom-O.top;u=("center"==n&&i<=r?e.top+i/2-r/2:"start"==n||"center"==n&&t<0?e.top-a:e.bottom-r+a)-O.top}if("nearest"==i)e.left<O.left?(p=-(O.left-e.left+r),t>0&&e.right>O.right+p&&(p=e.right-O.right+p+r)):e.right>O.right&&(p=e.right-O.right+r,t<0&&e.left<O.left+p&&(p=-(O.left+p-e.left+r)));else{p=("center"==i?e.left+(e.right-e.left)/2-(O.right-O.left)/2:"start"==i==s?e.left-r:e.right-(O.right-O.left)+r)-O.left}if(p||u)if(h)l.scrollBy(p,u);else{let O=0,t=0;if(u){let O=Q.scrollTop;Q.scrollTop+=u/d,t=(Q.scrollTop-O)*d}if(p){let e=Q.scrollLeft;Q.scrollLeft+=p/$,O=(Q.scrollLeft-e)*$}e={left:e.left-O,top:e.top-t,right:e.right-O,bottom:e.bottom-t},O&&Math.abs(O-p)<1&&(i="nearest"),t&&Math.abs(t-u)<1&&(n="nearest")}if(h)break;Q=Q.assignedSlot||Q.parentNode}else{if(11!=Q.nodeType)break;Q=Q.host}}function scrollableParents(O){let e,t,i=O.ownerDocument;for(let n=O.parentNode;n&&!(n==i.body||e&&t);)if(1==n.nodeType)!t&&n.scrollHeight>n.clientHeight&&(t=n),!e&&n.scrollWidth>n.clientWidth&&(e=n),n=n.assignedSlot||n.parentNode;else{if(11!=n.nodeType)break;n=n.host}return{x:e,y:t}}class DOMSelectionState{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(O){return this.anchorNode==O.anchorNode&&this.anchorOffset==O.anchorOffset&&this.focusNode==O.focusNode&&this.focusOffset==O.focusOffset}setRange(O){let{anchorNode:e,focusNode:t}=O;this.set(e,Math.min(O.anchorOffset,e?maxOffset(e):0),t,Math.min(O.focusOffset,t?maxOffset(t):0))}set(O,e,t,i){this.anchorNode=O,this.anchorOffset=e,this.focusNode=t,this.focusOffset=i}}let scratchRange,preventScrollSupported=null;function focusPreventScroll(O){if(O.setActive)return O.setActive();if(preventScrollSupported)return O.focus(preventScrollSupported);let e=[];for(let t=O;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(O.focus(null==preventScrollSupported?{get preventScroll(){return preventScrollSupported={preventScroll:!0},!0}}:void 0),!preventScrollSupported){preventScrollSupported=!1;for(let O=0;O<e.length;){let t=e[O++],i=e[O++],n=e[O++];t.scrollTop!=i&&(t.scrollTop=i),t.scrollLeft!=n&&(t.scrollLeft=n)}}}function textRange(O,e,t=e){let i=scratchRange||(scratchRange=document.createRange());return i.setEnd(O,t),i.setStart(O,e),i}function dispatchKey(O,e,t,i){let n={key:e,code:e,keyCode:t,which:t,cancelable:!0};i&&({altKey:n.altKey,ctrlKey:n.ctrlKey,shiftKey:n.shiftKey,metaKey:n.metaKey}=i);let r=new KeyboardEvent("keydown",n);r.synthetic=!0,O.dispatchEvent(r);let a=new KeyboardEvent("keyup",n);return a.synthetic=!0,O.dispatchEvent(a),r.defaultPrevented||a.defaultPrevented}function getRoot(O){for(;O;){if(O&&(9==O.nodeType||11==O.nodeType&&O.host))return O;O=O.assignedSlot||O.parentNode}return null}function clearAttributes(O){for(;O.attributes.length;)O.removeAttributeNode(O.attributes[0])}function atElementStart(O,e){let t=e.focusNode,i=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=i)return!1;for(i=Math.min(i,maxOffset(t));;)if(i){if(1!=t.nodeType)return!1;let O=t.childNodes[i-1];"false"==O.contentEditable?i--:(t=O,i=maxOffset(t))}else{if(t==O)return!0;i=domIndex(t),t=t.parentNode}}function isScrolledToBottom(O){return O.scrollTop>Math.max(1,O.scrollHeight-O.clientHeight-4)}function textNodeBefore(O,e){for(let t=O,i=e;;){if(3==t.nodeType&&i>0)return{node:t,offset:i};if(1==t.nodeType&&i>0){if("false"==t.contentEditable)return null;t=t.childNodes[i-1],i=maxOffset(t)}else{if(!t.parentNode||isBlockElement(t))return null;i=domIndex(t),t=t.parentNode}}}function textNodeAfter(O,e){for(let t=O,i=e;;){if(3==t.nodeType&&i<t.nodeValue.length)return{node:t,offset:i};if(1==t.nodeType&&i<t.childNodes.length){if("false"==t.contentEditable)return null;t=t.childNodes[i],i=0}else{if(!t.parentNode||isBlockElement(t))return null;i=domIndex(t)+1,t=t.parentNode}}}class DOMPos{constructor(O,e,t=!0){this.node=O,this.offset=e,this.precise=t}static before(O,e){return new DOMPos(O.parentNode,domIndex(O),e)}static after(O,e){return new DOMPos(O.parentNode,domIndex(O)+1,e)}}const noChildren=[];class ContentView{constructor(){this.parent=null,this.dom=null,this.flags=2}get overrideDOMText(){return null}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(O){let e=this.posAtStart;for(let t of this.children){if(t==O)return e;e+=t.length+t.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(O){return this.posBefore(O)+O.length}sync(O,e){if(2&this.flags){let t,i=this.dom,n=null;for(let r of this.children){if(7&r.flags){if(!r.dom&&(t=n?n.nextSibling:i.firstChild)){let O=ContentView.get(t);(!O||!O.parent&&O.canReuseDOM(r))&&r.reuseDOM(t)}r.sync(O,e),r.flags&=-8}if(t=n?n.nextSibling:i.firstChild,e&&!e.written&&e.node==i&&t!=r.dom&&(e.written=!0),r.dom.parentNode==i)for(;t&&t!=r.dom;)t=rm$1(t);else i.insertBefore(r.dom,t);n=r.dom}for(t=n?n.nextSibling:i.firstChild,t&&e&&e.node==i&&(e.written=!0);t;)t=rm$1(t)}else if(1&this.flags)for(let t of this.children)7&t.flags&&(t.sync(O,e),t.flags&=-8)}reuseDOM(O){}localPosFromDOM(O,e){let t;if(O==this.dom)t=this.dom.childNodes[e];else{let i=0==maxOffset(O)?0:0==e?-1:1;for(;;){let e=O.parentNode;if(e==this.dom)break;0==i&&e.firstChild!=e.lastChild&&(i=O==e.firstChild?-1:1),O=e}t=i<0?O:O.nextSibling}if(t==this.dom.firstChild)return 0;for(;t&&!ContentView.get(t);)t=t.nextSibling;if(!t)return this.length;for(let O=0,e=0;;O++){let i=this.children[O];if(i.dom==t)return e;e+=i.length+i.breakAfter}}domBoundsAround(O,e,t=0){let i=-1,n=-1,r=-1,a=-1;for(let s=0,o=t,l=t;s<this.children.length;s++){let t=this.children[s],Q=o+t.length;if(o<O&&Q>e)return t.domBoundsAround(O,e,o);if(Q>=O&&-1==i&&(i=s,n=o),o>e&&t.dom.parentNode==this.dom){r=s,a=l;break}l=Q,o=Q+t.breakAfter}return{from:n,to:a<0?t+this.length:a,startDOM:(i?this.children[i-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:r<this.children.length&&r>=0?this.children[r].dom:null}}markDirty(O=!1){this.flags|=2,this.markParentsDirty(O)}markParentsDirty(O){for(let e=this.parent;e;e=e.parent){if(O&&(e.flags|=2),1&e.flags)return;e.flags|=1,O=!1}}setParent(O){this.parent!=O&&(this.parent=O,7&this.flags&&this.markParentsDirty(!0))}setDOM(O){this.dom!=O&&(this.dom&&(this.dom.cmView=null),this.dom=O,O.cmView=this)}get rootView(){for(let O=this;;){let e=O.parent;if(!e)return O;O=e}}replaceChildren(O,e,t=noChildren){this.markDirty();for(let i=O;i<e;i++){let O=this.children[i];O.parent==this&&t.indexOf(O)<0&&O.destroy()}t.length<250?this.children.splice(O,e-O,...t):this.children=[].concat(this.children.slice(0,O),t,this.children.slice(e));for(let O=0;O<t.length;O++)t[O].setParent(this)}ignoreMutation(O){return!1}ignoreEvent(O){return!1}childCursor(O=this.length){return new ChildCursor(this.children,O,this.children.length)}childPos(O,e=1){return this.childCursor().findPos(O,e)}toString(){let O=this.constructor.name.replace("View","");return O+(this.children.length?"("+this.children.join()+")":this.length?"["+("Text"==O?this.text:this.length)+"]":"")+(this.breakAfter?"#":"")}static get(O){return O.cmView}get isEditable(){return!0}get isWidget(){return!1}get isHidden(){return!1}merge(O,e,t,i,n,r){return!1}become(O){return!1}canReuseDOM(O){return O.constructor==this.constructor&&!(8&(this.flags|O.flags))}getSide(){return 0}destroy(){for(let O of this.children)O.parent==this&&O.destroy();this.parent=null}}function rm$1(O){let e=O.nextSibling;return O.parentNode.removeChild(O),e}ContentView.prototype.breakAfter=0;class ChildCursor{constructor(O,e,t){this.children=O,this.pos=e,this.i=t,this.off=0}findPos(O,e=1){for(;;){if(O>this.pos||O==this.pos&&(e>0||0==this.i||this.children[this.i-1].breakAfter))return this.off=O-this.pos,this;let t=this.children[--this.i];this.pos-=t.length+t.breakAfter}}}function replaceRange(O,e,t,i,n,r,a,s,o){let{children:l}=O,Q=l.length?l[e]:null,c=r.length?r[r.length-1]:null,h=c?c.breakAfter:a;if(!(e==i&&Q&&!a&&!h&&r.length<2&&Q.merge(t,n,r.length?c:null,0==t,s,o))){if(i<l.length){let O=l[i];O&&(n<O.length||O.breakAfter&&(null==c?void 0:c.breakAfter))?(e==i&&(O=O.split(n),n=0),!h&&c&&O.merge(0,n,c,!0,0,o)?r[r.length-1]=O:((n||O.children.length&&!O.children[0].length)&&O.merge(0,n,null,!1,0,o),r.push(O))):(null==O?void 0:O.breakAfter)&&(c?c.breakAfter=1:a=1),i++}for(Q&&(Q.breakAfter=a,t>0&&(!a&&r.length&&Q.merge(t,Q.length,r[0],!1,s,0)?Q.breakAfter=r.shift().breakAfter:(t<Q.length||Q.children.length&&0==Q.children[Q.children.length-1].length)&&Q.merge(t,Q.length,null,!1,s,0),e++));e<i&&r.length;)if(l[i-1].become(r[r.length-1]))i--,r.pop(),o=r.length?0:s;else{if(!l[e].become(r[0]))break;e++,r.shift(),s=r.length?0:o}!r.length&&e&&i<l.length&&!l[e-1].breakAfter&&l[i].merge(0,0,l[e-1],!1,s,o)&&e--,(e<i||r.length)&&O.replaceChildren(e,i,r)}}function mergeChildrenInto(O,e,t,i,n,r){let a=O.childCursor(),{i:s,off:o}=a.findPos(t,1),{i:l,off:Q}=a.findPos(e,-1),c=e-t;for(let O of i)c+=O.length;O.length+=c,replaceRange(O,l,Q,s,o,i,0,n,r)}let nav="undefined"!=typeof navigator?navigator:{userAgent:"",vendor:"",platform:""},doc="undefined"!=typeof document?document:{documentElement:{style:{}}};const ie_edge=/Edge\/(\d+)/.exec(nav.userAgent),ie_upto10=/MSIE \d/.test(nav.userAgent),ie_11up=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(nav.userAgent),ie=!!(ie_upto10||ie_11up||ie_edge),gecko=!ie&&/gecko\/(\d+)/i.test(nav.userAgent),chrome=!ie&&/Chrome\/(\d+)/.exec(nav.userAgent),webkit="webkitFontSmoothing"in doc.documentElement.style,safari=!ie&&/Apple Computer/.test(nav.vendor),ios=safari&&(/Mobile\/\w+/.test(nav.userAgent)||nav.maxTouchPoints>2);var browser={mac:ios||/Mac/.test(nav.platform),windows:/Win/.test(nav.platform),linux:/Linux|X11/.test(nav.platform),ie:ie,ie_version:ie_upto10?doc.documentMode||6:ie_11up?+ie_11up[1]:ie_edge?+ie_edge[1]:0,gecko:gecko,gecko_version:gecko?+(/Firefox\/(\d+)/.exec(nav.userAgent)||[0,0])[1]:0,chrome:!!chrome,chrome_version:chrome?+chrome[1]:0,ios:ios,android:/Android\b/.test(nav.userAgent),webkit:webkit,safari:safari,webkit_version:webkit?+(/\bAppleWebKit\/(\d+)/.exec(nav.userAgent)||[0,0])[1]:0,tabSize:null!=doc.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};const MaxJoinLen=256;class TextView extends ContentView{constructor(O){super(),this.text=O}get length(){return this.text.length}createDOM(O){this.setDOM(O||document.createTextNode(this.text))}sync(O,e){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text)}reuseDOM(O){3==O.nodeType&&this.createDOM(O)}merge(O,e,t){return!(8&this.flags||t&&(!(t instanceof TextView)||this.length-(e-O)+t.length>256||8&t.flags))&&(this.text=this.text.slice(0,O)+(t?t.text:"")+this.text.slice(e),this.markDirty(),!0)}split(O){let e=new TextView(this.text.slice(O));return this.text=this.text.slice(0,O),this.markDirty(),e.flags|=8&this.flags,e}localPosFromDOM(O,e){return O==this.dom?e:e?this.text.length:0}domAtPos(O){return new DOMPos(this.dom,O)}domBoundsAround(O,e,t){return{from:t,to:t+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(O,e){return textCoords(this.dom,O,e)}}class MarkView extends ContentView{constructor(O,e=[],t=0){super(),this.mark=O,this.children=e,this.length=t;for(let O of e)O.setParent(this)}setAttrs(O){if(clearAttributes(O),this.mark.class&&(O.className=this.mark.class),this.mark.attrs)for(let e in this.mark.attrs)O.setAttribute(e,this.mark.attrs[e]);return O}canReuseDOM(O){return super.canReuseDOM(O)&&!(8&(this.flags|O.flags))}reuseDOM(O){O.nodeName==this.mark.tagName.toUpperCase()&&(this.setDOM(O),this.flags|=6)}sync(O,e){this.dom?4&this.flags&&this.setAttrs(this.dom):this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))),super.sync(O,e)}merge(O,e,t,i,n,r){return(!t||!(!(t instanceof MarkView&&t.mark.eq(this.mark))||O&&n<=0||e<this.length&&r<=0))&&(mergeChildrenInto(this,O,e,t?t.children.slice():[],n-1,r-1),this.markDirty(),!0)}split(O){let e=[],t=0,i=-1,n=0;for(let r of this.children){let a=t+r.length;a>O&&e.push(t<O?r.split(O-t):r),i<0&&t>=O&&(i=n),t=a,n++}let r=this.length-O;return this.length=O,i>-1&&(this.children.length=i,this.markDirty()),new MarkView(this.mark,e,r)}domAtPos(O){return inlineDOMAtPos(this,O)}coordsAt(O,e){return coordsInChildren(this,O,e)}}function textCoords(O,e,t){let i=O.nodeValue.length;e>i&&(e=i);let n=e,r=e,a=0;0==e&&t<0||e==i&&t>=0?browser.chrome||browser.gecko||(e?(n--,a=1):r<i&&(r++,a=-1)):t<0?n--:r<i&&r++;let s=textRange(O,n,r).getClientRects();if(!s.length)return null;let o=s[(a?a<0:t>=0)?0:s.length-1];return browser.safari&&!a&&0==o.width&&(o=Array.prototype.find.call(s,(O=>O.width))||o),a?flattenRect(o,a<0):o||null}class WidgetView extends ContentView{static create(O,e,t){return new WidgetView(O,e,t)}constructor(O,e,t){super(),this.widget=O,this.length=e,this.side=t,this.prevWidget=null}split(O){let e=WidgetView.create(this.widget,this.length-O,this.side);return this.length-=O,e}sync(O){this.dom&&this.widget.updateDOM(this.dom,O)||(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(O)),this.widget.editable||(this.dom.contentEditable="false"))}getSide(){return this.side}merge(O,e,t,i,n,r){return!(t&&(!(t instanceof WidgetView&&this.widget.compare(t.widget))||O>0&&n<=0||e<this.length&&r<=0))&&(this.length=O+(t?t.length:0)+(this.length-e),!0)}become(O){return O instanceof WidgetView&&O.side==this.side&&this.widget.constructor==O.widget.constructor&&(this.widget.compare(O.widget)||this.markDirty(!0),this.dom&&!this.prevWidget&&(this.prevWidget=this.widget),this.widget=O.widget,this.length=O.length,!0)}ignoreMutation(){return!0}ignoreEvent(O){return this.widget.ignoreEvent(O)}get overrideDOMText(){if(0==this.length)return Text.empty;let O=this;for(;O.parent;)O=O.parent;let{view:e}=O,t=e&&e.state.doc,i=this.posAtStart;return t?t.slice(i,i+this.length):Text.empty}domAtPos(O){return(this.length?0==O:this.side>0)?DOMPos.before(this.dom):DOMPos.after(this.dom,O==this.length)}domBoundsAround(){return null}coordsAt(O,e){let t=this.widget.coordsAt(this.dom,O,e);if(t)return t;let i=this.dom.getClientRects(),n=null;if(!i.length)return null;let r=this.side?this.side<0:O>0;for(let e=r?i.length-1:0;n=i[e],!(O>0?0==e:e==i.length-1||n.top<n.bottom);e+=r?-1:1);return flattenRect(n,!r)}get isEditable(){return!1}get isWidget(){return!0}get isHidden(){return this.widget.isHidden}destroy(){super.destroy(),this.dom&&this.widget.destroy(this.dom)}}class WidgetBufferView extends ContentView{constructor(O){super(),this.side=O}get length(){return 0}merge(){return!1}become(O){return O instanceof WidgetBufferView&&O.side==this.side}split(){return new WidgetBufferView(this.side)}sync(){if(!this.dom){let O=document.createElement("img");O.className="cm-widgetBuffer",O.setAttribute("aria-hidden","true"),this.setDOM(O)}}getSide(){return this.side}domAtPos(O){return this.side>0?DOMPos.before(this.dom):DOMPos.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(O){return this.dom.getBoundingClientRect()}get overrideDOMText(){return Text.empty}get isHidden(){return!0}}function inlineDOMAtPos(O,e){let t=O.dom,{children:i}=O,n=0;for(let O=0;n<i.length;n++){let r=i[n],a=O+r.length;if(!(a==O&&r.getSide()<=0)){if(e>O&&e<a&&r.dom.parentNode==t)return r.domAtPos(e-O);if(e<=O)break;O=a}}for(let O=n;O>0;O--){let e=i[O-1];if(e.dom.parentNode==t)return e.domAtPos(e.length)}for(let O=n;O<i.length;O++){let e=i[O];if(e.dom.parentNode==t)return e.domAtPos(0)}return new DOMPos(t,0)}function joinInlineInto(O,e,t){let i,{children:n}=O;t>0&&e instanceof MarkView&&n.length&&(i=n[n.length-1])instanceof MarkView&&i.mark.eq(e.mark)?joinInlineInto(i,e.children[0],t-1):(n.push(e),e.setParent(O)),O.length+=e.length}function coordsInChildren(O,e,t){let i=null,n=-1,r=null,a=-1;!function O(e,s){for(let o=0,l=0;o<e.children.length&&l<=s;o++){let Q=e.children[o],c=l+Q.length;c>=s&&(Q.children.length?O(Q,s-l):(!r||r.isHidden&&t>0)&&(c>s||l==c&&Q.getSide()>0)?(r=Q,a=s-l):(l<s||l==c&&Q.getSide()<0&&!Q.isHidden)&&(i=Q,n=s-l)),l=c}}(O,e);let s=(t<0?i:r)||i||r;return s?s.coordsAt(Math.max(0,s==i?n:a),t):fallbackRect(O)}function fallbackRect(O){let e=O.dom.lastChild;if(!e)return O.dom.getBoundingClientRect();let t=clientRectsFor(e);return t[t.length-1]||null}function combineAttrs(O,e){for(let t in O)"class"==t&&e.class?e.class+=" "+O.class:"style"==t&&e.style?e.style+=";"+O.style:e[t]=O[t];return e}TextView.prototype.children=WidgetView.prototype.children=WidgetBufferView.prototype.children=noChildren;const noAttrs=Object.create(null);function attrsEq(O,e,t){if(O==e)return!0;O||(O=noAttrs),e||(e=noAttrs);let i=Object.keys(O),n=Object.keys(e);if(i.length-(t&&i.indexOf(t)>-1?1:0)!=n.length-(t&&n.indexOf(t)>-1?1:0))return!1;for(let r of i)if(r!=t&&(-1==n.indexOf(r)||O[r]!==e[r]))return!1;return!0}function updateAttrs(O,e,t){let i=!1;if(e)for(let n in e)t&&n in t||(i=!0,"style"==n?O.style.cssText="":O.removeAttribute(n));if(t)for(let n in t)e&&e[n]==t[n]||(i=!0,"style"==n?O.style.cssText=t[n]:O.setAttribute(n,t[n]));return i}function getAttrs$1(O){let e=Object.create(null);for(let t=0;t<O.attributes.length;t++){let i=O.attributes[t];e[i.name]=i.value}return e}class WidgetType{eq(O){return!1}updateDOM(O,e){return!1}compare(O){return this==O||this.constructor==O.constructor&&this.eq(O)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(O){return!0}coordsAt(O,e,t){return null}get isHidden(){return!1}get editable(){return!1}destroy(O){}}var BlockType=function(O){return O[O.Text=0]="Text",O[O.WidgetBefore=1]="WidgetBefore",O[O.WidgetAfter=2]="WidgetAfter",O[O.WidgetRange=3]="WidgetRange",O}(BlockType||(BlockType={}));class Decoration extends RangeValue{constructor(O,e,t,i){super(),this.startSide=O,this.endSide=e,this.widget=t,this.spec=i}get heightRelevant(){return!1}static mark(O){return new MarkDecoration(O)}static widget(O){let e=Math.max(-1e4,Math.min(1e4,O.side||0)),t=!!O.block;return e+=t&&!O.inlineOrder?e>0?3e8:-4e8:e>0?1e8:-1e8,new PointDecoration(O,e,e,t,O.widget||null,!1)}static replace(O){let e,t,i=!!O.block;if(O.isBlockGap)e=-5e8,t=4e8;else{let{start:n,end:r}=getInclusive(O,i);e=(n?i?-3e8:-1:5e8)-1,t=1+(r?i?2e8:1:-6e8)}return new PointDecoration(O,e,t,i,O.widget||null,!0)}static line(O){return new LineDecoration(O)}static set(O,e=!1){return RangeSet.of(O,e)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}}Decoration.none=RangeSet.empty;class MarkDecoration extends Decoration{constructor(O){let{start:e,end:t}=getInclusive(O);super(e?-1:5e8,t?1:-6e8,null,O),this.tagName=O.tagName||"span",this.class=O.class||"",this.attrs=O.attributes||null}eq(O){var e,t;return this==O||O instanceof MarkDecoration&&this.tagName==O.tagName&&(this.class||(null===(e=this.attrs)||void 0===e?void 0:e.class))==(O.class||(null===(t=O.attrs)||void 0===t?void 0:t.class))&&attrsEq(this.attrs,O.attrs,"class")}range(O,e=O){if(O>=e)throw new RangeError("Mark decorations may not be empty");return super.range(O,e)}}MarkDecoration.prototype.point=!1;class LineDecoration extends Decoration{constructor(O){super(-2e8,-2e8,null,O)}eq(O){return O instanceof LineDecoration&&this.spec.class==O.spec.class&&attrsEq(this.spec.attributes,O.spec.attributes)}range(O,e=O){if(e!=O)throw new RangeError("Line decoration ranges must be zero-length");return super.range(O,e)}}LineDecoration.prototype.mapMode=MapMode.TrackBefore,LineDecoration.prototype.point=!0;class PointDecoration extends Decoration{constructor(O,e,t,i,n,r){super(e,t,n,O),this.block=i,this.isReplace=r,this.mapMode=i?e<=0?MapMode.TrackBefore:MapMode.TrackAfter:MapMode.TrackDel}get type(){return this.startSide!=this.endSide?BlockType.WidgetRange:this.startSide<=0?BlockType.WidgetBefore:BlockType.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(O){return O instanceof PointDecoration&&widgetsEq(this.widget,O.widget)&&this.block==O.block&&this.startSide==O.startSide&&this.endSide==O.endSide}range(O,e=O){if(this.isReplace&&(O>e||O==e&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&e!=O)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(O,e)}}function getInclusive(O,e=!1){let{inclusiveStart:t,inclusiveEnd:i}=O;return null==t&&(t=O.inclusive),null==i&&(i=O.inclusive),{start:null!=t?t:e,end:null!=i?i:e}}function widgetsEq(O,e){return O==e||!!(O&&e&&O.compare(e))}function addRange(O,e,t,i=0){let n=t.length-1;n>=0&&t[n]+i>=O?t[n]=Math.max(t[n],e):t.push(O,e)}PointDecoration.prototype.point=!0;class LineView extends ContentView{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(O,e,t,i,n,r){if(t){if(!(t instanceof LineView))return!1;this.dom||t.transferDOM(this)}return i&&this.setDeco(t?t.attrs:null),mergeChildrenInto(this,O,e,t?t.children.slice():[],n,r),!0}split(O){let e=new LineView;if(e.breakAfter=this.breakAfter,0==this.length)return e;let{i:t,off:i}=this.childPos(O);i&&(e.append(this.children[t].split(i),0),this.children[t].merge(i,this.children[t].length,null,!1,0,0),t++);for(let O=t;O<this.children.length;O++)e.append(this.children[O],0);for(;t>0&&0==this.children[t-1].length;)this.children[--t].destroy();return this.children.length=t,this.markDirty(),this.length=O,e}transferDOM(O){this.dom&&(this.markDirty(),O.setDOM(this.dom),O.prevAttrs=void 0===this.prevAttrs?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(O){attrsEq(this.attrs,O)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=O)}append(O,e){joinInlineInto(this,O,e)}addLineDeco(O){let e=O.spec.attributes,t=O.spec.class;e&&(this.attrs=combineAttrs(e,this.attrs||{})),t&&(this.attrs=combineAttrs({class:t},this.attrs||{}))}domAtPos(O){return inlineDOMAtPos(this,O)}reuseDOM(O){"DIV"==O.nodeName&&(this.setDOM(O),this.flags|=6)}sync(O,e){var t;this.dom?4&this.flags&&(clearAttributes(this.dom),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0):(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),void 0!==this.prevAttrs&&(updateAttrs(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(O,e);let i=this.dom.lastChild;for(;i&&ContentView.get(i)instanceof MarkView;)i=i.lastChild;if(!(i&&this.length&&("BR"==i.nodeName||0!=(null===(t=ContentView.get(i))||void 0===t?void 0:t.isEditable)||browser.ios&&this.children.some((O=>O instanceof TextView))))){let O=document.createElement("BR");O.cmIgnore=!0,this.dom.appendChild(O)}}measureTextSize(){if(0==this.children.length||this.length>20)return null;let O,e=0;for(let t of this.children){if(!(t instanceof TextView)||/[^ -~]/.test(t.text))return null;let i=clientRectsFor(t.dom);if(1!=i.length)return null;e+=i[0].width,O=i[0].height}return e?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length,textHeight:O}:null}coordsAt(O,e){let t=coordsInChildren(this,O,e);if(!this.children.length&&t&&this.parent){let{heightOracle:O}=this.parent.view.viewState,e=t.bottom-t.top;if(Math.abs(e-O.lineHeight)<2&&O.textHeight<e){let i=(e-O.textHeight)/2;return{top:t.top+i,bottom:t.bottom-i,left:t.left,right:t.left}}}return t}become(O){return O instanceof LineView&&0==this.children.length&&0==O.children.length&&attrsEq(this.attrs,O.attrs)&&this.breakAfter==O.breakAfter}covers(){return!0}static find(O,e){for(let t=0,i=0;t<O.children.length;t++){let n=O.children[t],r=i+n.length;if(r>=e){if(n instanceof LineView)return n;if(r>e)break}i=r+n.breakAfter}return null}}class BlockWidgetView extends ContentView{constructor(O,e,t){super(),this.widget=O,this.length=e,this.deco=t,this.breakAfter=0,this.prevWidget=null}merge(O,e,t,i,n,r){return!(t&&(!(t instanceof BlockWidgetView&&this.widget.compare(t.widget))||O>0&&n<=0||e<this.length&&r<=0))&&(this.length=O+(t?t.length:0)+(this.length-e),!0)}domAtPos(O){return 0==O?DOMPos.before(this.dom):DOMPos.after(this.dom,O==this.length)}split(O){let e=this.length-O;this.length=O;let t=new BlockWidgetView(this.widget,e,this.deco);return t.breakAfter=this.breakAfter,t}get children(){return noChildren}sync(O){this.dom&&this.widget.updateDOM(this.dom,O)||(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(O)),this.widget.editable||(this.dom.contentEditable="false"))}get overrideDOMText(){return this.parent?this.parent.view.state.doc.slice(this.posAtStart,this.posAtEnd):Text.empty}domBoundsAround(){return null}become(O){return O instanceof BlockWidgetView&&O.widget.constructor==this.widget.constructor&&(O.widget.compare(this.widget)||this.markDirty(!0),this.dom&&!this.prevWidget&&(this.prevWidget=this.widget),this.widget=O.widget,this.length=O.length,this.deco=O.deco,this.breakAfter=O.breakAfter,!0)}ignoreMutation(){return!0}ignoreEvent(O){return this.widget.ignoreEvent(O)}get isEditable(){return!1}get isWidget(){return!0}coordsAt(O,e){let t=this.widget.coordsAt(this.dom,O,e);return t||(this.widget instanceof BlockGapWidget?null:flattenRect(this.dom.getBoundingClientRect(),this.length?0==O:e<=0))}destroy(){super.destroy(),this.dom&&this.widget.destroy(this.dom)}covers(O){let{startSide:e,endSide:t}=this.deco;return e!=t&&(O<0?e<0:t>0)}}class BlockGapWidget extends WidgetType{constructor(O){super(),this.height=O}toDOM(){let O=document.createElement("div");return O.className="cm-gap",this.updateDOM(O),O}eq(O){return O.height==this.height}updateDOM(O){return O.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}class ContentBuilder{constructor(O,e,t,i){this.doc=O,this.pos=e,this.end=t,this.disallowBlockEffectsFor=i,this.content=[],this.curLine=null,this.breakAtStart=0,this.pendingBuffer=0,this.bufferMarks=[],this.atCursorPos=!0,this.openStart=-1,this.openEnd=-1,this.text="",this.textOff=0,this.cursor=O.iter(),this.skip=e}posCovered(){if(0==this.content.length)return!this.breakAtStart&&this.doc.lineAt(this.pos).from!=this.pos;let O=this.content[this.content.length-1];return!(O.breakAfter||O instanceof BlockWidgetView&&O.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new LineView),this.atCursorPos=!0),this.curLine}flushBuffer(O=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(wrapMarks(new WidgetBufferView(-1),O),O.length),this.pendingBuffer=0)}addBlockWidget(O){this.flushBuffer(),this.curLine=null,this.content.push(O)}finish(O){this.pendingBuffer&&O<=this.bufferMarks.length?this.flushBuffer():this.pendingBuffer=0,this.posCovered()||O&&this.content.length&&this.content[this.content.length-1]instanceof BlockWidgetView||this.getLine()}buildText(O,e,t){for(;O>0;){if(this.textOff==this.text.length){let{value:e,lineBreak:t,done:i}=this.cursor.next(this.skip);if(this.skip=0,i)throw new Error("Ran out of text content when drawing inline views");if(t){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.flushBuffer(),this.curLine=null,this.atCursorPos=!0,O--;continue}this.text=e,this.textOff=0}let i=Math.min(this.text.length-this.textOff,O,512);this.flushBuffer(e.slice(e.length-t)),this.getLine().append(wrapMarks(new TextView(this.text.slice(this.textOff,this.textOff+i)),e),t),this.atCursorPos=!0,this.textOff+=i,O-=i,t=0}}span(O,e,t,i){this.buildText(e-O,t,i),this.pos=e,this.openStart<0&&(this.openStart=i)}point(O,e,t,i,n,r){if(this.disallowBlockEffectsFor[r]&&t instanceof PointDecoration){if(t.block)throw new RangeError("Block decorations may not be specified via plugins");if(e>this.doc.lineAt(this.pos).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}let a=e-O;if(t instanceof PointDecoration)if(t.block)t.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new BlockWidgetView(t.widget||NullWidget.block,a,t));else{let r=WidgetView.create(t.widget||NullWidget.inline,a,a?0:t.startSide),s=this.atCursorPos&&!r.isEditable&&n<=i.length&&(O<e||t.startSide>0),o=!r.isEditable&&(O<e||n>i.length||t.startSide<=0),l=this.getLine();2!=this.pendingBuffer||s||r.isEditable||(this.pendingBuffer=0),this.flushBuffer(i),s&&(l.append(wrapMarks(new WidgetBufferView(1),i),n),n=i.length+Math.max(0,n-i.length)),l.append(wrapMarks(r,i),n),this.atCursorPos=o,this.pendingBuffer=o?O<e||n>i.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=i.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(t);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=e),this.openStart<0&&(this.openStart=n)}static build(O,e,t,i,n){let r=new ContentBuilder(O,e,t,n);return r.openEnd=RangeSet.spans(i,e,t,r),r.openStart<0&&(r.openStart=r.openEnd),r.finish(r.openEnd),r}}function wrapMarks(O,e){for(let t of e)O=new MarkView(t,[O],O.length);return O}class NullWidget extends WidgetType{constructor(O){super(),this.tag=O}eq(O){return O.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(O){return O.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}NullWidget.inline=new NullWidget("span"),NullWidget.block=new NullWidget("div");var Direction=function(O){return O[O.LTR=0]="LTR",O[O.RTL=1]="RTL",O}(Direction||(Direction={}));const LTR=Direction.LTR,RTL=Direction.RTL;function dec(O){let e=[];for(let t=0;t<O.length;t++)e.push(1<<+O[t]);return e}const LowTypes=dec("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),ArabicTypes=dec("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),Brackets=Object.create(null),BracketStack=[];for(let O of["()","[]","{}"]){let e=O.charCodeAt(0),t=O.charCodeAt(1);Brackets[e]=t,Brackets[t]=-e}function charType(O){return O<=247?LowTypes[O]:1424<=O&&O<=1524?2:1536<=O&&O<=1785?ArabicTypes[O-1536]:1774<=O&&O<=2220?4:8192<=O&&O<=8204?256:64336<=O&&O<=65023?4:1}const BidiRE=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class BidiSpan{get dir(){return this.level%2?RTL:LTR}constructor(O,e,t){this.from=O,this.to=e,this.level=t}side(O,e){return this.dir==e==O?this.to:this.from}forward(O,e){return O==(this.dir==e)}static find(O,e,t,i){let n=-1;for(let r=0;r<O.length;r++){let a=O[r];if(a.from<=e&&a.to>=e){if(a.level==t)return r;(n<0||(0!=i?i<0?a.from<e:a.to>e:O[n].level>a.level))&&(n=r)}}if(n<0)throw new RangeError("Index out of range");return n}}function isolatesEq(O,e){if(O.length!=e.length)return!1;for(let t=0;t<O.length;t++){let i=O[t],n=e[t];if(i.from!=n.from||i.to!=n.to||i.direction!=n.direction||!isolatesEq(i.inner,n.inner))return!1}return!0}const types=[];function computeCharTypes(O,e,t,i,n){for(let r=0;r<=i.length;r++){let a=r?i[r-1].to:e,s=r<i.length?i[r].from:t,o=r?256:n;for(let e=a,t=o,i=o;e<s;e++){let n=charType(O.charCodeAt(e));512==n?n=t:8==n&&4==i&&(n=16),types[e]=4==n?2:n,7&n&&(i=n),t=n}for(let O=a,e=o,i=o;O<s;O++){let n=types[O];if(128==n)O<s-1&&e==types[O+1]&&24&e?n=types[O]=e:types[O]=256;else if(64==n){let n=O+1;for(;n<s&&64==types[n];)n++;let r=O&&8==e||n<t&&8==types[n]?1==i?1:8:256;for(let e=O;e<n;e++)types[e]=r;O=n-1}else 8==n&&1==i&&(types[O]=1);e=n,7&n&&(i=n)}}}function processBracketPairs(O,e,t,i,n){let r=1==n?2:1;for(let a=0,s=0,o=0;a<=i.length;a++){let l=a?i[a-1].to:e,Q=a<i.length?i[a].from:t;for(let e,t,i,a=l;a<Q;a++)if(t=Brackets[e=O.charCodeAt(a)])if(t<0){for(let O=s-3;O>=0;O-=3)if(BracketStack[O+1]==-t){let e=BracketStack[O+2],t=2&e?n:4&e?1&e?r:n:0;t&&(types[a]=types[BracketStack[O]]=t),s=O;break}}else{if(189==BracketStack.length)break;BracketStack[s++]=a,BracketStack[s++]=e,BracketStack[s++]=o}else if(2==(i=types[a])||1==i){let O=i==n;o=O?0:1;for(let e=s-3;e>=0;e-=3){let t=BracketStack[e+2];if(2&t)break;if(O)BracketStack[e+2]|=2;else{if(4&t)break;BracketStack[e+2]|=4}}}}}function processNeutrals(O,e,t,i){for(let n=0,r=i;n<=t.length;n++){let a=n?t[n-1].to:O,s=n<t.length?t[n].from:e;for(let o=a;o<s;){let a=types[o];if(256==a){let a=o+1;for(;;)if(a==s){if(n==t.length)break;a=t[n++].to,s=n<t.length?t[n].from:e}else{if(256!=types[a])break;a++}let l=1==r,Q=l==(1==(a<e?types[a]:i))?l?1:2:i;for(let e=a,i=n,r=i?t[i-1].to:O;e>o;)e==r&&(e=t[--i].from,r=i?t[i-1].to:O),types[--e]=Q;o=a}else r=a,o++}}}function emitSpans(O,e,t,i,n,r,a){let s=i%2?2:1;if(i%2==n%2)for(let o=e,l=0;o<t;){let e=!0,Q=!1;if(l==r.length||o<r[l].from){let O=types[o];O!=s&&(e=!1,Q=16==O)}let c=e||1!=s?null:[],h=e?i:i+1,$=o;O:for(;;)if(l<r.length&&$==r[l].from){if(Q)break O;let d=r[l];if(!e)for(let O=d.to,e=l+1;;){if(O==t)break O;if(!(e<r.length&&r[e].from==O)){if(types[O]==s)break O;break}O=r[e++].to}if(l++,c)c.push(d);else{d.from>o&&a.push(new BidiSpan(o,d.from,h)),computeSectionOrder(O,d.direction==LTR!=!(h%2)?i+1:i,n,d.inner,d.from,d.to,a),o=d.to}$=d.to}else{if($==t||(e?types[$]!=s:types[$]==s))break;$++}c?emitSpans(O,o,$,i+1,n,c,a):o<$&&a.push(new BidiSpan(o,$,h)),o=$}else for(let o=t,l=r.length;o>e;){let t=!0,Q=!1;if(!l||o>r[l-1].to){let O=types[o-1];O!=s&&(t=!1,Q=16==O)}let c=t||1!=s?null:[],h=t?i:i+1,$=o;O:for(;;)if(l&&$==r[l-1].to){if(Q)break O;let d=r[--l];if(!t)for(let O=d.from,t=l;;){if(O==e)break O;if(!t||r[t-1].to!=O){if(types[O-1]==s)break O;break}O=r[--t].from}if(c)c.push(d);else{d.to<o&&a.push(new BidiSpan(d.to,o,h)),computeSectionOrder(O,d.direction==LTR!=!(h%2)?i+1:i,n,d.inner,d.from,d.to,a),o=d.from}$=d.from}else{if($==e||(t?types[$-1]!=s:types[$-1]==s))break;$--}c?emitSpans(O,$,o,i+1,n,c,a):$<o&&a.push(new BidiSpan($,o,h)),o=$}}function computeSectionOrder(O,e,t,i,n,r,a){let s=e%2?2:1;computeCharTypes(O,n,r,i,s),processBracketPairs(O,n,r,i,s),processNeutrals(n,r,i,s),emitSpans(O,n,r,e,t,i,a)}function computeOrder(O,e,t){if(!O)return[new BidiSpan(0,0,e==RTL?1:0)];if(e==LTR&&!t.length&&!BidiRE.test(O))return trivialOrder(O.length);if(t.length)for(;O.length>types.length;)types[types.length]=256;let i=[],n=e==LTR?0:1;return computeSectionOrder(O,n,n,t,0,O.length,i),i}function trivialOrder(O){return[new BidiSpan(0,O,0)]}let movedOver="";function moveVisually(O,e,t,i,n){var r;let a=i.head-O.from,s=BidiSpan.find(e,a,null!==(r=i.bidiLevel)&&void 0!==r?r:-1,i.assoc),o=e[s],l=o.side(n,t);if(a==l){let O=s+=n?1:-1;if(O<0||O>=e.length)return null;o=e[s=O],a=o.side(!n,t),l=o.side(n,t)}let Q=findClusterBreak(O.text,a,o.forward(n,t));(Q<o.from||Q>o.to)&&(Q=l),movedOver=O.text.slice(Math.min(a,Q),Math.max(a,Q));let c=s==(n?e.length-1:0)?null:e[s+(n?1:-1)];return c&&Q==l&&c.level+(n?0:1)<o.level?EditorSelection.cursor(c.side(!n,t)+O.from,c.forward(n,t)?1:-1,c.level):EditorSelection.cursor(Q+O.from,o.forward(n,t)?-1:1,o.level)}function autoDirection(O,e,t){for(let i=e;i<t;i++){let e=charType(O.charCodeAt(i));if(1==e)return LTR;if(2==e||4==e)return RTL}return LTR}const clickAddsSelectionRange=Facet.define(),dragMovesSelection$1=Facet.define(),mouseSelectionStyle=Facet.define(),exceptionSink=Facet.define(),updateListener=Facet.define(),inputHandler=Facet.define(),focusChangeEffect=Facet.define(),clipboardInputFilter=Facet.define(),clipboardOutputFilter=Facet.define(),perLineTextDirection=Facet.define({combine:O=>O.some((O=>O))}),nativeSelectionHidden=Facet.define({combine:O=>O.some((O=>O))}),scrollHandler=Facet.define();class ScrollTarget{constructor(O,e="nearest",t="nearest",i=5,n=5,r=!1){this.range=O,this.y=e,this.x=t,this.yMargin=i,this.xMargin=n,this.isSnapshot=r}map(O){return O.empty?this:new ScrollTarget(this.range.map(O),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(O){return this.range.to<=O.doc.length?this:new ScrollTarget(EditorSelection.cursor(O.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const scrollIntoView=StateEffect.define({map:(O,e)=>O.map(e)}),setEditContextFormatting=StateEffect.define();function logException(O,e,t){let i=O.facet(exceptionSink);i.length?i[0](e):window.onerror?window.onerror(String(e),t,void 0,void 0,e):t?console.error(t+":",e):console.error(e)}const editable=Facet.define({combine:O=>!O.length||O[0]});let nextPluginID=0;const viewPlugin=Facet.define();class ViewPlugin{constructor(O,e,t,i,n){this.id=O,this.create=e,this.domEventHandlers=t,this.domEventObservers=i,this.extension=n(this)}static define(O,e){const{eventHandlers:t,eventObservers:i,provide:n,decorations:r}=e||{};return new ViewPlugin(nextPluginID++,O,t,i,(O=>{let e=[viewPlugin.of(O)];return r&&e.push(decorations.of((e=>{let t=e.plugin(O);return t?r(t):Decoration.none}))),n&&e.push(n(O)),e}))}static fromClass(O,e){return ViewPlugin.define((e=>new O(e)),e)}}class PluginInstance{constructor(O){this.spec=O,this.mustUpdate=null,this.value=null}update(O){if(this.value){if(this.mustUpdate){let O=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(O)}catch(e){if(logException(O.state,e,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(O){}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.create(O)}catch(e){logException(O.state,e,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(O){var e;if(null===(e=this.value)||void 0===e?void 0:e.destroy)try{this.value.destroy()}catch(e){logException(O.state,e,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const editorAttributes=Facet.define(),contentAttributes=Facet.define(),decorations=Facet.define(),outerDecorations=Facet.define(),atomicRanges=Facet.define(),bidiIsolatedRanges=Facet.define();function getIsolatedRanges(O,e){let t=O.state.facet(bidiIsolatedRanges);if(!t.length)return t;let i=t.map((e=>e instanceof Function?e(O):e)),n=[];return RangeSet.spans(i,e.from,e.to,{point(){},span(O,t,i,r){let a=O-e.from,s=t-e.from,o=n;for(let O=i.length-1;O>=0;O--,r--){let t,n=i[O].spec.bidiIsolate;if(null==n&&(n=autoDirection(e.text,a,s)),r>0&&o.length&&(t=o[o.length-1]).to==a&&t.direction==n)t.to=s,o=t.inner;else{let O={from:a,to:s,direction:n,inner:[]};o.push(O),o=O.inner}}}}),n}const scrollMargins=Facet.define();function getScrollMargins(O){let e=0,t=0,i=0,n=0;for(let r of O.state.facet(scrollMargins)){let a=r(O);a&&(null!=a.left&&(e=Math.max(e,a.left)),null!=a.right&&(t=Math.max(t,a.right)),null!=a.top&&(i=Math.max(i,a.top)),null!=a.bottom&&(n=Math.max(n,a.bottom)))}return{left:e,right:t,top:i,bottom:n}}const styleModule=Facet.define();class ChangedRange{constructor(O,e,t,i){this.fromA=O,this.toA=e,this.fromB=t,this.toB=i}join(O){return new ChangedRange(Math.min(this.fromA,O.fromA),Math.max(this.toA,O.toA),Math.min(this.fromB,O.fromB),Math.max(this.toB,O.toB))}addToSet(O){let e=O.length,t=this;for(;e>0;e--){let i=O[e-1];if(!(i.fromA>t.toA)){if(i.toA<t.fromA)break;t=t.join(i),O.splice(e-1,1)}}return O.splice(e,0,t),O}static extendWithRanges(O,e){if(0==e.length)return O;let t=[];for(let i=0,n=0,r=0,a=0;;i++){let s=i==O.length?null:O[i],o=r-a,l=s?s.fromB:1e9;for(;n<e.length&&e[n]<l;){let O=e[n],i=e[n+1],r=Math.max(a,O),s=Math.min(l,i);if(r<=s&&new ChangedRange(r+o,s+o,r,s).addToSet(t),i>l)break;n+=2}if(!s)return t;new ChangedRange(s.fromA,s.toA,s.fromB,s.toB).addToSet(t),r=s.toA,a=s.toB}}}class ViewUpdate{constructor(O,e,t){this.view=O,this.state=e,this.transactions=t,this.flags=0,this.startState=O.state,this.changes=ChangeSet.empty(this.startState.doc.length);for(let O of t)this.changes=this.changes.compose(O.changes);let i=[];this.changes.iterChangedRanges(((O,e,t,n)=>i.push(new ChangedRange(O,e,t,n)))),this.changedRanges=i}static create(O,e,t){return new ViewUpdate(O,e,t)}get viewportChanged(){return(4&this.flags)>0}get viewportMoved(){return(8&this.flags)>0}get heightChanged(){return(2&this.flags)>0}get geometryChanged(){return this.docChanged||(18&this.flags)>0}get focusChanged(){return(1&this.flags)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some((O=>O.selection))}get empty(){return 0==this.flags&&0==this.transactions.length}}class DocView extends ContentView{get length(){return this.view.state.doc.length}constructor(O){super(),this.view=O,this.decorations=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.markedForComposition=new Set,this.editContextFormatting=Decoration.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.setDOM(O.contentDOM),this.children=[new LineView],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new ChangedRange(0,0,0,O.state.doc.length)],0,null)}update(O){var e;let t=O.changedRanges;this.minWidth>0&&t.length&&(t.every((({fromA:O,toA:e})=>e<this.minWidthFrom||O>this.minWidthTo))?(this.minWidthFrom=O.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=O.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(O);let i=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&((null===(e=this.domChanged)||void 0===e?void 0:e.newSel)?i=this.domChanged.newSel.head:touchesComposition(O.changes,this.hasComposition)||O.selectionSet||(i=O.state.selection.main.head));let n=i>-1?findCompositionRange(this.view,O.changes,i):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:e,to:i}=this.hasComposition;t=new ChangedRange(e,i,O.changes.mapPos(e,-1),O.changes.mapPos(i,1)).addToSet(t.slice())}this.hasComposition=n?{from:n.range.fromB,to:n.range.toB}:null,(browser.ie||browser.chrome)&&!n&&O&&O.state.doc.lines!=O.startState.doc.lines&&(this.forceSelection=!0);let r=findChangedDeco(this.decorations,this.updateDeco(),O.changes);return t=ChangedRange.extendWithRanges(t,r),!!(7&this.flags||0!=t.length)&&(this.updateInner(t,O.startState.doc.length,n),O.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(O,e,t){this.view.viewState.mustMeasureContent=!0,this.updateChildren(O,e,t);let{observer:i}=this.view;i.ignore((()=>{this.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let O=browser.chrome||browser.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,O),this.flags&=-8,O&&(O.written||i.selectionRange.focusNode!=O.node)&&(this.forceSelection=!0),this.dom.style.height=""})),this.markedForComposition.forEach((O=>O.flags&=-9));let n=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let O of this.children)O instanceof BlockWidgetView&&O.widget instanceof BlockGapWidget&&n.push(O.dom);i.updateGaps(n)}updateChildren(O,e,t){let i=t?t.range.addToSet(O.slice()):O,n=this.childCursor(e);for(let O=i.length-1;;O--){let e=O>=0?i[O]:null;if(!e)break;let r,a,s,o,{fromA:l,toA:Q,fromB:c,toB:h}=e;if(t&&t.range.fromB<h&&t.range.toB>c){let O=ContentBuilder.build(this.view.state.doc,c,t.range.fromB,this.decorations,this.dynamicDecorationMap),e=ContentBuilder.build(this.view.state.doc,t.range.toB,h,this.decorations,this.dynamicDecorationMap);a=O.breakAtStart,s=O.openStart,o=e.openEnd;let i=this.compositionView(t);e.breakAtStart?i.breakAfter=1:e.content.length&&i.merge(i.length,i.length,e.content[0],!1,e.openStart,0)&&(i.breakAfter=e.content[0].breakAfter,e.content.shift()),O.content.length&&i.merge(0,0,O.content[O.content.length-1],!0,0,O.openEnd)&&O.content.pop(),r=O.content.concat(i).concat(e.content)}else({content:r,breakAtStart:a,openStart:s,openEnd:o}=ContentBuilder.build(this.view.state.doc,c,h,this.decorations,this.dynamicDecorationMap));let{i:$,off:d}=n.findPos(Q,1),{i:p,off:u}=n.findPos(l,-1);replaceRange(this,p,u,$,d,r,a,s,o)}t&&this.fixCompositionDOM(t)}updateEditContextFormatting(O){this.editContextFormatting=this.editContextFormatting.map(O.changes);for(let e of O.transactions)for(let O of e.effects)O.is(setEditContextFormatting)&&(this.editContextFormatting=O.value)}compositionView(O){let e=new TextView(O.text.nodeValue);e.flags|=8;for(let{deco:t}of O.marks)e=new MarkView(t,[e],e.length);let t=new LineView;return t.append(e,0),t}fixCompositionDOM(O){let e=(O,e)=>{e.flags|=8|(e.children.some((O=>7&O.flags))?1:0),this.markedForComposition.add(e);let t=ContentView.get(O);t&&t!=e&&(t.dom=null),e.setDOM(O)},t=this.childPos(O.range.fromB,1),i=this.children[t.i];e(O.line,i);for(let n=O.marks.length-1;n>=-1;n--)t=i.childPos(t.off,1),i=i.children[t.i],e(n>=0?O.marks[n].node:O.text,i)}updateSelection(O=!1,e=!1){!O&&this.view.observer.selectionRange.focusNode||this.view.observer.readSelectionRange();let t=this.view.root.activeElement,i=t==this.dom,n=!i&&!(this.view.state.facet(editable)||this.dom.tabIndex>-1)&&hasSelection(this.dom,this.view.observer.selectionRange)&&!(t&&this.dom.contains(t));if(!(i||e||n))return;let r=this.forceSelection;this.forceSelection=!1;let a=this.view.state.selection.main,s=this.moveToLine(this.domAtPos(a.anchor)),o=a.empty?s:this.moveToLine(this.domAtPos(a.head));if(browser.gecko&&a.empty&&!this.hasComposition&&betweenUneditable(s)){let O=document.createTextNode("");this.view.observer.ignore((()=>s.node.insertBefore(O,s.node.childNodes[s.offset]||null))),s=o=new DOMPos(O,0),r=!0}let l=this.view.observer.selectionRange;!r&&l.focusNode&&(isEquivalentPosition(s.node,s.offset,l.anchorNode,l.anchorOffset)&&isEquivalentPosition(o.node,o.offset,l.focusNode,l.focusOffset)||this.suppressWidgetCursorChange(l,a))||(this.view.observer.ignore((()=>{browser.android&&browser.chrome&&this.dom.contains(l.focusNode)&&inUneditable(l.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let O=getSelection(this.view.root);if(O)if(a.empty){if(browser.gecko){let O=nextToUneditable(s.node,s.offset);if(O&&3!=O){let e=(1==O?textNodeBefore:textNodeAfter)(s.node,s.offset);e&&(s=new DOMPos(e.node,e.offset))}}O.collapse(s.node,s.offset),null!=a.bidiLevel&&void 0!==O.caretBidiLevel&&(O.caretBidiLevel=a.bidiLevel)}else if(O.extend){O.collapse(s.node,s.offset);try{O.extend(o.node,o.offset)}catch(O){}}else{let e=document.createRange();a.anchor>a.head&&([s,o]=[o,s]),e.setEnd(o.node,o.offset),e.setStart(s.node,s.offset),O.removeAllRanges(),O.addRange(e)}else;n&&this.view.root.activeElement==this.dom&&(this.dom.blur(),t&&t.focus())})),this.view.observer.setSelectionRange(s,o)),this.impreciseAnchor=s.precise?null:new DOMPos(l.anchorNode,l.anchorOffset),this.impreciseHead=o.precise?null:new DOMPos(l.focusNode,l.focusOffset)}suppressWidgetCursorChange(O,e){return this.hasComposition&&e.empty&&isEquivalentPosition(O.focusNode,O.focusOffset,O.anchorNode,O.anchorOffset)&&this.posFromDOM(O.focusNode,O.focusOffset)==e.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:O}=this,e=O.state.selection.main,t=getSelection(O.root),{anchorNode:i,anchorOffset:n}=O.observer.selectionRange;if(!(t&&e.empty&&e.assoc&&t.modify))return;let r=LineView.find(this,e.head);if(!r)return;let a=r.posAtStart;if(e.head==a||e.head==a+r.length)return;let s=this.coordsAt(e.head,-1),o=this.coordsAt(e.head,1);if(!s||!o||s.bottom>o.top)return;let l=this.domAtPos(e.head+e.assoc);t.collapse(l.node,l.offset),t.modify("move",e.assoc<0?"forward":"backward","lineboundary"),O.observer.readSelectionRange();let Q=O.observer.selectionRange;O.docView.posFromDOM(Q.anchorNode,Q.anchorOffset)!=e.from&&t.collapse(i,n)}moveToLine(O){let e,t=this.dom;if(O.node!=t)return O;for(let i=O.offset;!e&&i<t.childNodes.length;i++){let O=ContentView.get(t.childNodes[i]);O instanceof LineView&&(e=O.domAtPos(0))}for(let i=O.offset-1;!e&&i>=0;i--){let O=ContentView.get(t.childNodes[i]);O instanceof LineView&&(e=O.domAtPos(O.length))}return e?new DOMPos(e.node,e.offset,!0):O}nearest(O){for(let e=O;e;){let O=ContentView.get(e);if(O&&O.rootView==this)return O;e=e.parentNode}return null}posFromDOM(O,e){let t=this.nearest(O);if(!t)throw new RangeError("Trying to find position for a DOM position outside of the document");return t.localPosFromDOM(O,e)+t.posAtStart}domAtPos(O){let{i:e,off:t}=this.childCursor().findPos(O,-1);for(;e<this.children.length-1;){let O=this.children[e];if(t<O.length||O instanceof LineView)break;e++,t=0}return this.children[e].domAtPos(t)}coordsAt(O,e){let t=null,i=0;for(let n=this.length,r=this.children.length-1;r>=0;r--){let a=this.children[r],s=n-a.breakAfter,o=s-a.length;if(s<O)break;if(o<=O&&(o<O||a.covers(-1))&&(s>O||a.covers(1))&&(!t||a instanceof LineView&&!(t instanceof LineView&&e>=0)))t=a,i=o;else if(t&&o==O&&s==O&&a instanceof BlockWidgetView&&Math.abs(e)<2){if(a.deco.startSide<0)break;r&&(t=null)}n=o}return t?t.coordsAt(O-i,e):null}coordsForChar(O){let{i:e,off:t}=this.childPos(O,1),i=this.children[e];if(!(i instanceof LineView))return null;for(;i.children.length;){let{i:O,off:e}=i.childPos(t,1);for(;;O++){if(O==i.children.length)return null;if((i=i.children[O]).length)break}t=e}if(!(i instanceof TextView))return null;let n=findClusterBreak(i.text,t);if(n==t)return null;let r=textRange(i.dom,t,n).getClientRects();for(let O=0;O<r.length;O++){let e=r[O];if(O==r.length-1||e.top<e.bottom&&e.left<e.right)return e}return null}measureVisibleLineHeights(O){let e=[],{from:t,to:i}=O,n=this.view.contentDOM.clientWidth,r=n>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,a=-1,s=this.view.textDirection==Direction.LTR;for(let O=0,o=0;o<this.children.length;o++){let l=this.children[o],Q=O+l.length;if(Q>i)break;if(O>=t){let t=l.dom.getBoundingClientRect();if(e.push(t.height),r){let e=l.dom.lastChild,i=e?clientRectsFor(e):[];if(i.length){let e=i[i.length-1],r=s?e.right-t.left:t.right-e.left;r>a&&(a=r,this.minWidth=n,this.minWidthFrom=O,this.minWidthTo=Q)}}}O=Q+l.breakAfter}return e}textDirectionAt(O){let{i:e}=this.childPos(O,1);return"rtl"==getComputedStyle(this.children[e].dom).direction?Direction.RTL:Direction.LTR}measureTextSize(){for(let O of this.children)if(O instanceof LineView){let e=O.measureTextSize();if(e)return e}let O,e,t,i=document.createElement("div");return i.className="cm-line",i.style.width="99999px",i.style.position="absolute",i.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore((()=>{this.dom.appendChild(i);let n=clientRectsFor(i.firstChild)[0];O=i.getBoundingClientRect().height,e=n?n.width/27:7,t=n?n.height:O,i.remove()})),{lineHeight:O,charWidth:e,textHeight:t}}childCursor(O=this.length){let e=this.children.length;return e&&(O-=this.children[--e].length),new ChildCursor(this.children,O,e)}computeBlockGapDeco(){let O=[],e=this.view.viewState;for(let t=0,i=0;;i++){let n=i==e.viewports.length?null:e.viewports[i],r=n?n.from-1:this.length;if(r>t){let i=(e.lineBlockAt(r).bottom-e.lineBlockAt(t).top)/this.view.scaleY;O.push(Decoration.replace({widget:new BlockGapWidget(i),block:!0,inclusive:!0,isBlockGap:!0}).range(t,r))}if(!n)break;t=n.to+1}return Decoration.set(O)}updateDeco(){let O=1,e=this.view.state.facet(decorations).map((e=>(this.dynamicDecorationMap[O++]="function"==typeof e)?e(this.view):e)),t=!1,i=this.view.state.facet(outerDecorations).map(((O,e)=>{let i="function"==typeof O;return i&&(t=!0),i?O(this.view):O}));for(i.length&&(this.dynamicDecorationMap[O++]=t,e.push(RangeSet.join(i))),this.decorations=[this.editContextFormatting,...e,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];O<this.decorations.length;)this.dynamicDecorationMap[O++]=!1;return this.decorations}scrollIntoView(O){if(O.isSnapshot){let e=this.view.viewState.lineBlockAt(O.range.head);return this.view.scrollDOM.scrollTop=e.top-O.yMargin,void(this.view.scrollDOM.scrollLeft=O.xMargin)}for(let e of this.view.state.facet(scrollHandler))try{if(e(this.view,O.range,O))return!0}catch(O){logException(this.view.state,O,"scroll handler")}let e,{range:t}=O,i=this.coordsAt(t.head,t.empty?t.assoc:t.head>t.anchor?-1:1);if(!i)return;!t.empty&&(e=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(i={left:Math.min(i.left,e.left),top:Math.min(i.top,e.top),right:Math.max(i.right,e.right),bottom:Math.max(i.bottom,e.bottom)});let n=getScrollMargins(this.view),r={left:i.left-n.left,top:i.top-n.top,right:i.right+n.right,bottom:i.bottom+n.bottom},{offsetWidth:a,offsetHeight:s}=this.view.scrollDOM;scrollRectIntoView(this.view.scrollDOM,r,t.head<t.anchor?-1:1,O.x,O.y,Math.max(Math.min(O.xMargin,a),-a),Math.max(Math.min(O.yMargin,s),-s),this.view.textDirection==Direction.LTR)}}function betweenUneditable(O){return 1==O.node.nodeType&&O.node.firstChild&&(0==O.offset||"false"==O.node.childNodes[O.offset-1].contentEditable)&&(O.offset==O.node.childNodes.length||"false"==O.node.childNodes[O.offset].contentEditable)}function findCompositionNode(O,e){let t=O.observer.selectionRange;if(!t.focusNode)return null;let i=textNodeBefore(t.focusNode,t.focusOffset),n=textNodeAfter(t.focusNode,t.focusOffset),r=i||n;if(n&&i&&n.node!=i.node){let e=ContentView.get(n.node);if(!e||e instanceof TextView&&e.text!=n.node.nodeValue)r=n;else if(O.docView.lastCompositionAfterCursor){let O=ContentView.get(i.node);!O||O instanceof TextView&&O.text!=i.node.nodeValue||(r=n)}}if(O.docView.lastCompositionAfterCursor=r!=i,!r)return null;let a=e-r.offset;return{from:a,to:a+r.node.nodeValue.length,node:r.node}}function findCompositionRange(O,e,t){let i=findCompositionNode(O,t);if(!i)return null;let{node:n,from:r,to:a}=i,s=n.nodeValue;if(/[\n\r]/.test(s))return null;if(O.state.doc.sliceString(i.from,i.to)!=s)return null;let o=e.invertedDesc,l=new ChangedRange(o.mapPos(r),o.mapPos(a),r,a),Q=[];for(let e=n.parentNode;;e=e.parentNode){let t=ContentView.get(e);if(t instanceof MarkView)Q.push({node:e,deco:t.mark});else{if(t instanceof LineView||"DIV"==e.nodeName&&e.parentNode==O.contentDOM)return{range:l,text:n,marks:Q,line:e};if(e==O.contentDOM)return null;Q.push({node:e,deco:new MarkDecoration({inclusive:!0,attributes:getAttrs$1(e),tagName:e.tagName.toLowerCase()})})}}}function nextToUneditable(O,e){return 1!=O.nodeType?0:(e&&"false"==O.childNodes[e-1].contentEditable?1:0)|(e<O.childNodes.length&&"false"==O.childNodes[e].contentEditable?2:0)}let DecorationComparator$1=class{constructor(){this.changes=[]}compareRange(O,e){addRange(O,e,this.changes)}comparePoint(O,e){addRange(O,e,this.changes)}boundChange(O){addRange(O,O,this.changes)}};function findChangedDeco(O,e,t){let i=new DecorationComparator$1;return RangeSet.compare(O,e,t,i),i.changes}function inUneditable(O,e){for(let t=O;t&&t!=e;t=t.assignedSlot||t.parentNode)if(1==t.nodeType&&"false"==t.contentEditable)return!0;return!1}function touchesComposition(O,e){let t=!1;return e&&O.iterChangedRanges(((O,i)=>{O<e.to&&i>e.from&&(t=!0)})),t}function groupAt(O,e,t=1){let i=O.charCategorizer(e),n=O.doc.lineAt(e),r=e-n.from;if(0==n.length)return EditorSelection.cursor(e);0==r?t=1:r==n.length&&(t=-1);let a=r,s=r;t<0?a=findClusterBreak(n.text,r,!1):s=findClusterBreak(n.text,r);let o=i(n.text.slice(a,s));for(;a>0;){let O=findClusterBreak(n.text,a,!1);if(i(n.text.slice(O,a))!=o)break;a=O}for(;s<n.length;){let O=findClusterBreak(n.text,s);if(i(n.text.slice(s,O))!=o)break;s=O}return EditorSelection.range(a+n.from,s+n.from)}function getdx(O,e){return e.left>O?e.left-O:Math.max(0,O-e.right)}function getdy(O,e){return e.top>O?e.top-O:Math.max(0,O-e.bottom)}function yOverlap(O,e){return O.top<e.bottom-1&&O.bottom>e.top+1}function upTop(O,e){return e<O.top?{top:e,left:O.left,right:O.right,bottom:O.bottom}:O}function upBot(O,e){return e>O.bottom?{top:O.top,left:O.left,right:O.right,bottom:e}:O}function domPosAtCoords(O,e,t){let i,n,r,a,s,o,l,Q,c=!1;for(let h=O.firstChild;h;h=h.nextSibling){let O=clientRectsFor(h);for(let $=0;$<O.length;$++){let d=O[$];n&&yOverlap(n,d)&&(d=upTop(upBot(d,n.bottom),n.top));let p=getdx(e,d),u=getdy(t,d);if(0==p&&0==u)return 3==h.nodeType?domPosInText(h,e,t):domPosAtCoords(h,e,t);if(!i||a>u||a==u&&r>p){i=h,n=d,r=p,a=u;let s=u?t<d.top?-1:1:p?e<d.left?-1:1:0;c=!s||(s>0?$<O.length-1:$>0)}0==p?t>d.bottom&&(!l||l.bottom<d.bottom)?(s=h,l=d):t<d.top&&(!Q||Q.top>d.top)&&(o=h,Q=d):l&&yOverlap(l,d)?l=upBot(l,d.bottom):Q&&yOverlap(Q,d)&&(Q=upTop(Q,d.top))}}if(l&&l.bottom>=t?(i=s,n=l):Q&&Q.top<=t&&(i=o,n=Q),!i)return{node:O,offset:0};let h=Math.max(n.left,Math.min(n.right,e));return 3==i.nodeType?domPosInText(i,h,t):c&&"false"!=i.contentEditable?domPosAtCoords(i,h,t):{node:O,offset:Array.prototype.indexOf.call(O.childNodes,i)+(e>=(n.left+n.right)/2?1:0)}}function domPosInText(O,e,t){let i=O.nodeValue.length,n=-1,r=1e9,a=0;for(let s=0;s<i;s++){let i=textRange(O,s,s+1).getClientRects();for(let o=0;o<i.length;o++){let l=i[o];if(l.top==l.bottom)continue;a||(a=e-l.left);let Q=(l.top>t?l.top-t:t-l.bottom)-1;if(l.left-1<=e&&l.right+1>=e&&Q<r){let t=e>=(l.left+l.right)/2,i=t;if(browser.chrome||browser.gecko){textRange(O,s).getBoundingClientRect().left==l.right&&(i=!t)}if(Q<=0)return{node:O,offset:s+(i?1:0)};n=s+(i?1:0),r=Q}}}return{node:O,offset:n>-1?n:a>0?O.nodeValue.length:0}}function posAtCoords(O,e,t,i=-1){var n,r;let a,s=O.contentDOM.getBoundingClientRect(),o=s.top+O.viewState.paddingTop,{docHeight:l}=O.viewState,{x:Q,y:c}=e,h=c-o;if(h<0)return 0;if(h>l)return O.state.doc.length;for(let e=O.viewState.heightOracle.textHeight/2,n=!1;a=O.elementAtHeight(h),a.type!=BlockType.Text;)for(;h=i>0?a.bottom+e:a.top-e,!(h>=0&&h<=l);){if(n)return t?null:0;n=!0,i=-i}c=o+h;let $=a.from;if($<O.viewport.from)return 0==O.viewport.from?0:t?null:posAtCoordsImprecise(O,s,a,Q,c);if($>O.viewport.to)return O.viewport.to==O.state.doc.length?O.state.doc.length:t?null:posAtCoordsImprecise(O,s,a,Q,c);let d=O.dom.ownerDocument,p=O.root.elementFromPoint?O.root:d,u=p.elementFromPoint(Q,c);u&&!O.contentDOM.contains(u)&&(u=null),u||(Q=Math.max(s.left+1,Math.min(s.right-1,Q)),u=p.elementFromPoint(Q,c),u&&!O.contentDOM.contains(u)&&(u=null));let f,g=-1;if(u&&0!=(null===(n=O.docView.nearest(u))||void 0===n?void 0:n.isEditable)){if(d.caretPositionFromPoint){let O=d.caretPositionFromPoint(Q,c);O&&({offsetNode:f,offset:g}=O)}else if(d.caretRangeFromPoint){let e=d.caretRangeFromPoint(Q,c);e&&(({startContainer:f,startOffset:g}=e),(!O.contentDOM.contains(f)||browser.safari&&isSuspiciousSafariCaretResult(f,g,Q)||browser.chrome&&isSuspiciousChromeCaretResult(f,g,Q))&&(f=void 0))}f&&(g=Math.min(maxOffset(f),g))}if(!f||!O.docView.dom.contains(f)){let e=LineView.find(O.docView,$);if(!e)return h>a.top+a.height/2?a.to:a.from;({node:f,offset:g}=domPosAtCoords(e.dom,Q,c))}let S=O.docView.nearest(f);if(!S)return null;if(S.isWidget&&1==(null===(r=S.dom)||void 0===r?void 0:r.nodeType)){let O=S.dom.getBoundingClientRect();return e.y<O.top||e.y<=O.bottom&&e.x<=(O.left+O.right)/2?S.posAtStart:S.posAtEnd}return S.localPosFromDOM(f,g)+S.posAtStart}function posAtCoordsImprecise(O,e,t,i,n){let r=Math.round((i-e.left)*O.defaultCharacterWidth);if(O.lineWrapping&&t.height>1.5*O.defaultLineHeight){let e=O.viewState.heightOracle.textHeight;r+=Math.floor((n-t.top-.5*(O.defaultLineHeight-e))/e)*O.viewState.heightOracle.lineLength}let a=O.state.sliceDoc(t.from,t.to);return t.from+findColumn$1(a,r,O.state.tabSize)}function isSuspiciousSafariCaretResult(O,e,t){let i;if(3!=O.nodeType||e!=(i=O.nodeValue.length))return!1;for(let e=O.nextSibling;e;e=e.nextSibling)if(1!=e.nodeType||"BR"!=e.nodeName)return!1;return textRange(O,i-1,i).getBoundingClientRect().left>t}function isSuspiciousChromeCaretResult(O,e,t){if(0!=e)return!1;for(let e=O;;){let O=e.parentNode;if(!O||1!=O.nodeType||O.firstChild!=e)return!1;if(O.classList.contains("cm-line"))break;e=O}return t-(1==O.nodeType?O.getBoundingClientRect():textRange(O,0,Math.max(O.nodeValue.length,1)).getBoundingClientRect()).left>5}function blockAt(O,e){let t=O.lineBlockAt(e);if(Array.isArray(t.type))for(let O of t.type)if(O.to>e||O.to==e&&(O.to==t.to||O.type==BlockType.Text))return O;return t}function moveToLineBoundary(O,e,t,i){let n=blockAt(O,e.head),r=i&&n.type==BlockType.Text&&(O.lineWrapping||n.widgetLineBreaks)?O.coordsAtPos(e.assoc<0&&e.head>n.from?e.head-1:e.head):null;if(r){let e=O.dom.getBoundingClientRect(),i=O.textDirectionAt(n.from),a=O.posAtCoords({x:t==(i==Direction.LTR)?e.right-1:e.left+1,y:(r.top+r.bottom)/2});if(null!=a)return EditorSelection.cursor(a,t?-1:1)}return EditorSelection.cursor(t?n.to:n.from,t?-1:1)}function moveByChar(O,e,t,i){let n=O.state.doc.lineAt(e.head),r=O.bidiSpans(n),a=O.textDirectionAt(n.from);for(let s=e,o=null;;){let e=moveVisually(n,r,a,s,t),l=movedOver;if(!e){if(n.number==(t?O.state.doc.lines:1))return s;l="\n",n=O.state.doc.line(n.number+(t?1:-1)),r=O.bidiSpans(n),e=O.visualLineSide(n,!t)}if(o){if(!o(l))return s}else{if(!i)return e;o=i(l)}s=e}}function byGroup(O,e,t){let i=O.state.charCategorizer(e),n=i(t);return O=>{let e=i(O);return n==CharCategory.Space&&(n=e),n==e}}function moveVertically(O,e,t,i){let n=e.head,r=t?1:-1;if(n==(t?O.state.doc.length:0))return EditorSelection.cursor(n,e.assoc);let a,s=e.goalColumn,o=O.contentDOM.getBoundingClientRect(),l=O.coordsAtPos(n,e.assoc||-1),Q=O.documentTop;if(l)null==s&&(s=l.left-o.left),a=r<0?l.top:l.bottom;else{let e=O.viewState.lineBlockAt(n);null==s&&(s=Math.min(o.right-o.left,O.defaultCharacterWidth*(n-e.from))),a=(r<0?e.top:e.bottom)+Q}let c=o.left+s,h=null!=i?i:O.viewState.heightOracle.textHeight>>1;for(let e=0;;e+=10){let t=a+(h+e)*r,i=posAtCoords(O,{x:c,y:t},!1,r);if(t<o.top||t>o.bottom||(r<0?i<n:i>n)){let e=O.docView.coordsForChar(i),n=!e||t<e.top?-1:1;return EditorSelection.cursor(i,n,void 0,s)}}}function skipAtomicRanges(O,e,t){for(;;){let i=0;for(let n of O)n.between(e-1,e+1,((O,n,r)=>{if(e>O&&e<n){let r=i||t||(e-O<n-e?-1:1);e=r<0?O:n,i=r}}));if(!i)return e}}function skipAtoms(O,e,t){let i=skipAtomicRanges(O.state.facet(atomicRanges).map((e=>e(O))),t.from,e.head>t.from?-1:1);return i==t.from?t:EditorSelection.cursor(i,i<t.from?1:-1)}const LineBreakPlaceholder="￿";class DOMReader{constructor(O,e){this.points=O,this.text="",this.lineSeparator=e.facet(EditorState.lineSeparator)}append(O){this.text+=O}lineBreak(){this.text+="￿"}readRange(O,e){if(!O)return this;let t=O.parentNode;for(let i=O;;){this.findPointBefore(t,i);let O=this.text.length;this.readNode(i);let n=i.nextSibling;if(n==e)break;let r=ContentView.get(i),a=ContentView.get(n);(r&&a?r.breakAfter:(r?r.breakAfter:isBlockElement(i))||isBlockElement(n)&&("BR"!=i.nodeName||i.cmIgnore)&&this.text.length>O)&&this.lineBreak(),i=n}return this.findPointBefore(t,e),this}readTextNode(O){let e=O.nodeValue;for(let t of this.points)t.node==O&&(t.pos=this.text.length+Math.min(t.offset,e.length));for(let t=0,i=this.lineSeparator?null:/\r\n?|\n/g;;){let n,r=-1,a=1;if(this.lineSeparator?(r=e.indexOf(this.lineSeparator,t),a=this.lineSeparator.length):(n=i.exec(e))&&(r=n.index,a=n[0].length),this.append(e.slice(t,r<0?e.length:r)),r<0)break;if(this.lineBreak(),a>1)for(let e of this.points)e.node==O&&e.pos>this.text.length&&(e.pos-=a-1);t=r+a}}readNode(O){if(O.cmIgnore)return;let e=ContentView.get(O),t=e&&e.overrideDOMText;if(null!=t){this.findPointInside(O,t.length);for(let O=t.iter();!O.next().done;)O.lineBreak?this.lineBreak():this.append(O.value)}else 3==O.nodeType?this.readTextNode(O):"BR"==O.nodeName?O.nextSibling&&this.lineBreak():1==O.nodeType&&this.readRange(O.firstChild,null)}findPointBefore(O,e){for(let t of this.points)t.node==O&&O.childNodes[t.offset]==e&&(t.pos=this.text.length)}findPointInside(O,e){for(let t of this.points)(3==O.nodeType?t.node==O:O.contains(t.node))&&(t.pos=this.text.length+(isAtEnd(O,t.node,t.offset)?e:0))}}function isAtEnd(O,e,t){for(;;){if(!e||t<maxOffset(e))return!1;if(e==O)return!0;t=domIndex(e)+1,e=e.parentNode}}class DOMPoint{constructor(O,e){this.node=O,this.offset=e,this.pos=-1}}class DOMChange{constructor(O,e,t,i){this.typeOver=i,this.bounds=null,this.text="",this.domChanged=e>-1;let{impreciseHead:n,impreciseAnchor:r}=O.docView;if(O.state.readOnly&&e>-1)this.newSel=null;else if(e>-1&&(this.bounds=O.docView.domBoundsAround(e,t,0))){let e=n||r?[]:selectionPoints(O),t=new DOMReader(e,O.state);t.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=t.text,this.newSel=selectionFromPoints(e,this.bounds.from)}else{let e=O.observer.selectionRange,t=n&&n.node==e.focusNode&&n.offset==e.focusOffset||!contains(O.contentDOM,e.focusNode)?O.state.selection.main.head:O.docView.posFromDOM(e.focusNode,e.focusOffset),i=r&&r.node==e.anchorNode&&r.offset==e.anchorOffset||!contains(O.contentDOM,e.anchorNode)?O.state.selection.main.anchor:O.docView.posFromDOM(e.anchorNode,e.anchorOffset),a=O.viewport;if((browser.ios||browser.chrome)&&O.state.selection.main.empty&&t!=i&&(a.from>0||a.to<O.state.doc.length)){let e=Math.min(t,i),n=Math.max(t,i),r=a.from-e,s=a.to-n;0!=r&&1!=r&&0!=e||0!=s&&-1!=s&&n!=O.state.doc.length||(t=0,i=O.state.doc.length)}this.newSel=EditorSelection.single(i,t)}}}function applyDOMChange(O,e){let t,{newSel:i}=e,n=O.state.selection.main,r=O.inputState.lastKeyTime>Date.now()-100?O.inputState.lastKeyCode:-1;if(e.bounds){let{from:i,to:a}=e.bounds,s=n.from,o=null;(8===r||browser.android&&e.text.length<a-i)&&(s=n.to,o="end");let l=findDiff(O.state.doc.sliceString(i,a,"￿"),e.text,s-i,o);l&&(browser.chrome&&13==r&&l.toB==l.from+2&&"￿￿"==e.text.slice(l.from,l.toB)&&l.toB--,t={from:i+l.from,to:i+l.toA,insert:Text.of(e.text.slice(l.from,l.toB).split("￿"))})}else i&&(!O.hasFocus&&O.state.facet(editable)||i.main.eq(n))&&(i=null);if(!t&&!i)return!1;if(!t&&e.typeOver&&!n.empty&&i&&i.main.empty?t={from:n.from,to:n.to,insert:O.state.doc.slice(n.from,n.to)}:(browser.mac||browser.android)&&t&&t.from==t.to&&t.from==n.head-1&&/^\. ?$/.test(t.insert.toString())&&"off"==O.contentDOM.getAttribute("autocorrect")?(i&&2==t.insert.length&&(i=EditorSelection.single(i.main.anchor-1,i.main.head-1)),t={from:t.from,to:t.to,insert:Text.of([t.insert.toString().replace("."," ")])}):t&&t.from>=n.from&&t.to<=n.to&&(t.from!=n.from||t.to!=n.to)&&n.to-n.from-(t.to-t.from)<=4?t={from:n.from,to:n.to,insert:O.state.doc.slice(n.from,t.from).append(t.insert).append(O.state.doc.slice(t.to,n.to))}:browser.chrome&&t&&t.from==t.to&&t.from==n.head&&"\n "==t.insert.toString()&&O.lineWrapping&&(i&&(i=EditorSelection.single(i.main.anchor-1,i.main.head-1)),t={from:n.from,to:n.to,insert:Text.of([" "])}),t)return applyDOMChangeInner(O,t,i,r);if(i&&!i.main.eq(n)){let e=!1,t="select";return O.inputState.lastSelectionTime>Date.now()-50&&("select"==O.inputState.lastSelectionOrigin&&(e=!0),t=O.inputState.lastSelectionOrigin),O.dispatch({selection:i,scrollIntoView:e,userEvent:t}),!0}return!1}function applyDOMChangeInner(O,e,t,i=-1){if(browser.ios&&O.inputState.flushIOSKey(e))return!0;let n=O.state.selection.main;if(browser.android&&(e.to==n.to&&(e.from==n.from||e.from==n.from-1&&" "==O.state.sliceDoc(e.from,n.from))&&1==e.insert.length&&2==e.insert.lines&&dispatchKey(O.contentDOM,"Enter",13)||(e.from==n.from-1&&e.to==n.to&&0==e.insert.length||8==i&&e.insert.length<e.to-e.from&&e.to>n.head)&&dispatchKey(O.contentDOM,"Backspace",8)||e.from==n.from&&e.to==n.to+1&&0==e.insert.length&&dispatchKey(O.contentDOM,"Delete",46)))return!0;let r,a=e.insert.toString();O.inputState.composing>=0&&O.inputState.composing++;let s=()=>r||(r=applyDefaultInsert(O,e,t));return O.state.facet(inputHandler).some((t=>t(O,e.from,e.to,a,s)))||O.dispatch(s()),!0}function applyDefaultInsert(O,e,t){let i,n=O.state,r=n.selection.main;if(e.from>=r.from&&e.to<=r.to&&e.to-e.from>=(r.to-r.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&O.inputState.composing<0){let t=r.from<e.from?n.sliceDoc(r.from,e.from):"",a=r.to>e.to?n.sliceDoc(e.to,r.to):"";i=n.replaceSelection(O.state.toText(t+e.insert.sliceString(0,void 0,O.state.lineBreak)+a))}else{let a=n.changes(e),s=t&&t.main.to<=a.newLength?t.main:void 0;if(n.selection.ranges.length>1&&O.inputState.composing>=0&&e.to<=r.to&&e.to>=r.to-10){let o,l=O.state.sliceDoc(e.from,e.to),Q=t&&findCompositionNode(O,t.main.head);if(Q){let O=e.insert.length-(e.to-e.from);o={from:Q.from,to:Q.to-O}}else o=O.state.doc.lineAt(r.head);let c=r.to-e.to,h=r.to-r.from;i=n.changeByRange((t=>{if(t.from==r.from&&t.to==r.to)return{changes:a,range:s||t.map(a)};let i=t.to-c,Q=i-l.length;if(t.to-t.from!=h||O.state.sliceDoc(Q,i)!=l||t.to>=o.from&&t.from<=o.to)return{range:t};let $=n.changes({from:Q,to:i,insert:e.insert}),d=t.to-r.to;return{changes:$,range:s?EditorSelection.range(Math.max(0,s.anchor+d),Math.max(0,s.head+d)):t.map($)}}))}else i={changes:a,selection:s&&n.selection.replaceRange(s)}}let a="input.type";return(O.composing||O.inputState.compositionPendingChange&&O.inputState.compositionEndedAt>Date.now()-50)&&(O.inputState.compositionPendingChange=!1,a+=".compose",O.inputState.compositionFirstChange&&(a+=".start",O.inputState.compositionFirstChange=!1)),n.update(i,{userEvent:a,scrollIntoView:!0})}function findDiff(O,e,t,i){let n=Math.min(O.length,e.length),r=0;for(;r<n&&O.charCodeAt(r)==e.charCodeAt(r);)r++;if(r==n&&O.length==e.length)return null;let a=O.length,s=e.length;for(;a>0&&s>0&&O.charCodeAt(a-1)==e.charCodeAt(s-1);)a--,s--;if("end"==i){t-=a+Math.max(0,r-Math.min(a,s))-r}if(a<r&&O.length<e.length){r-=t<=r&&t>=a?r-t:0,s=r+(s-a),a=r}else if(s<r){r-=t<=r&&t>=s?r-t:0,a=r+(a-s),s=r}return{from:r,toA:a,toB:s}}function selectionPoints(O){let e=[];if(O.root.activeElement!=O.contentDOM)return e;let{anchorNode:t,anchorOffset:i,focusNode:n,focusOffset:r}=O.observer.selectionRange;return t&&(e.push(new DOMPoint(t,i)),n==t&&r==i||e.push(new DOMPoint(n,r))),e}function selectionFromPoints(O,e){if(0==O.length)return null;let t=O[0].pos,i=2==O.length?O[1].pos:t;return t>-1&&i>-1?EditorSelection.single(t+e,i+e):null}class InputState{setSelectionOrigin(O){this.lastSelectionOrigin=O,this.lastSelectionTime=Date.now()}constructor(O){this.view=O,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=O.hasFocus,browser.safari&&O.contentDOM.addEventListener("input",(()=>null)),browser.gecko&&firefoxCopyCutHack(O.contentDOM.ownerDocument)}handleEvent(O){eventBelongsToEditor(this.view,O)&&!this.ignoreDuringComposition(O)&&("keydown"==O.type&&this.keydown(O)||this.runHandlers(O.type,O))}runHandlers(O,e){let t=this.handlers[O];if(t){for(let O of t.observers)O(this.view,e);for(let O of t.handlers){if(e.defaultPrevented)break;if(O(this.view,e)){e.preventDefault();break}}}}ensureHandlers(O){let e=computeHandlers(O),t=this.handlers,i=this.view.contentDOM;for(let O in e)if("scroll"!=O){let n=!e[O].handlers.length,r=t[O];r&&n!=!r.handlers.length&&(i.removeEventListener(O,this.handleEvent),r=null),r||i.addEventListener(O,this.handleEvent,{passive:n})}for(let O in t)"scroll"==O||e[O]||i.removeEventListener(O,this.handleEvent);this.handlers=e}keydown(O){if(this.lastKeyCode=O.keyCode,this.lastKeyTime=Date.now(),9==O.keyCode&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&27!=O.keyCode&&modifierCodes.indexOf(O.keyCode)<0&&(this.tabFocusMode=-1),browser.android&&browser.chrome&&!O.synthetic&&(13==O.keyCode||8==O.keyCode))return this.view.observer.delayAndroidKey(O.key,O.keyCode),!0;let e;return!browser.ios||O.synthetic||O.altKey||O.metaKey||!((e=PendingKeys.find((e=>e.keyCode==O.keyCode)))&&!O.ctrlKey||EmacsyPendingKeys.indexOf(O.key)>-1&&O.ctrlKey&&!O.shiftKey)?(229!=O.keyCode&&this.view.observer.forceFlush(),!1):(this.pendingIOSKey=e||O,setTimeout((()=>this.flushIOSKey()),250),!0)}flushIOSKey(O){let e=this.pendingIOSKey;return!!e&&(!("Enter"==e.key&&O&&O.from<O.to&&/^\S+$/.test(O.insert.toString()))&&(this.pendingIOSKey=void 0,dispatchKey(this.view.contentDOM,e.key,e.keyCode,e instanceof KeyboardEvent?e:void 0)))}ignoreDuringComposition(O){return!!/^key/.test(O.type)&&(this.composing>0||!!(browser.safari&&!browser.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100)&&(this.compositionPendingKey=!1,!0))}startMouseSelection(O){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=O}update(O){this.view.observer.update(O),this.mouseSelection&&this.mouseSelection.update(O),this.draggedContent&&O.docChanged&&(this.draggedContent=this.draggedContent.map(O.changes)),O.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function bindHandler(O,e){return(t,i)=>{try{return e.call(O,i,t)}catch(O){logException(t.state,O)}}}function computeHandlers(O){let e=Object.create(null);function t(O){return e[O]||(e[O]={observers:[],handlers:[]})}for(let e of O){let O=e.spec;if(O&&O.domEventHandlers)for(let i in O.domEventHandlers){let n=O.domEventHandlers[i];n&&t(i).handlers.push(bindHandler(e.value,n))}if(O&&O.domEventObservers)for(let i in O.domEventObservers){let n=O.domEventObservers[i];n&&t(i).observers.push(bindHandler(e.value,n))}}for(let O in handlers)t(O).handlers.push(handlers[O]);for(let O in observers)t(O).observers.push(observers[O]);return e}const PendingKeys=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],EmacsyPendingKeys="dthko",modifierCodes=[16,17,18,20,91,92,224,225],dragScrollMargin=6;function dragScrollSpeed(O){return.7*Math.max(0,O)+8}function dist(O,e){return Math.max(Math.abs(O.clientX-e.clientX),Math.abs(O.clientY-e.clientY))}class MouseSelection{constructor(O,e,t,i){this.view=O,this.startEvent=e,this.style=t,this.mustSelect=i,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=e,this.scrollParents=scrollableParents(O.contentDOM),this.atoms=O.state.facet(atomicRanges).map((e=>e(O)));let n=O.contentDOM.ownerDocument;n.addEventListener("mousemove",this.move=this.move.bind(this)),n.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=e.shiftKey,this.multiple=O.state.facet(EditorState.allowMultipleSelections)&&addsSelectionRange(O,e),this.dragging=!(!isInPrimarySelection(O,e)||1!=getClickType(e))&&null}start(O){!1===this.dragging&&this.select(O)}move(O){if(0==O.buttons)return this.destroy();if(this.dragging||null==this.dragging&&dist(this.startEvent,O)<10)return;this.select(this.lastEvent=O);let e=0,t=0,i=0,n=0,r=this.view.win.innerWidth,a=this.view.win.innerHeight;this.scrollParents.x&&({left:i,right:r}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:n,bottom:a}=this.scrollParents.y.getBoundingClientRect());let s=getScrollMargins(this.view);O.clientX-s.left<=i+6?e=-dragScrollSpeed(i-O.clientX):O.clientX+s.right>=r-6&&(e=dragScrollSpeed(O.clientX-r)),O.clientY-s.top<=n+6?t=-dragScrollSpeed(n-O.clientY):O.clientY+s.bottom>=a-6&&(t=dragScrollSpeed(O.clientY-a)),this.setScrollSpeed(e,t)}up(O){null==this.dragging&&this.select(this.lastEvent),this.dragging||O.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let O=this.view.contentDOM.ownerDocument;O.removeEventListener("mousemove",this.move),O.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(O,e){this.scrollSpeed={x:O,y:e},O||e?this.scrolling<0&&(this.scrolling=setInterval((()=>this.scroll()),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:O,y:e}=this.scrollSpeed;O&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=O,O=0),e&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=e,e=0),(O||e)&&this.view.win.scrollBy(O,e),!1===this.dragging&&this.select(this.lastEvent)}skipAtoms(O){let e=null;for(let t=0;t<O.ranges.length;t++){let i=O.ranges[t],n=null;if(i.empty){let O=skipAtomicRanges(this.atoms,i.from,0);O!=i.from&&(n=EditorSelection.cursor(O,-1))}else{let O=skipAtomicRanges(this.atoms,i.from,-1),e=skipAtomicRanges(this.atoms,i.to,1);O==i.from&&e==i.to||(n=EditorSelection.range(i.from==i.anchor?O:e,i.from==i.head?O:e))}n&&(e||(e=O.ranges.slice()),e[t]=n)}return e?EditorSelection.create(e,O.mainIndex):O}select(O){let{view:e}=this,t=this.skipAtoms(this.style.get(O,this.extend,this.multiple));!this.mustSelect&&t.eq(e.state.selection,!1===this.dragging)||this.view.dispatch({selection:t,userEvent:"select.pointer"}),this.mustSelect=!1}update(O){O.transactions.some((O=>O.isUserEvent("input.type")))?this.destroy():this.style.update(O)&&setTimeout((()=>this.select(this.lastEvent)),20)}}function addsSelectionRange(O,e){let t=O.state.facet(clickAddsSelectionRange);return t.length?t[0](e):browser.mac?e.metaKey:e.ctrlKey}function dragMovesSelection(O,e){let t=O.state.facet(dragMovesSelection$1);return t.length?t[0](e):browser.mac?!e.altKey:!e.ctrlKey}function isInPrimarySelection(O,e){let{main:t}=O.state.selection;if(t.empty)return!1;let i=getSelection(O.root);if(!i||0==i.rangeCount)return!0;let n=i.getRangeAt(0).getClientRects();for(let O=0;O<n.length;O++){let t=n[O];if(t.left<=e.clientX&&t.right>=e.clientX&&t.top<=e.clientY&&t.bottom>=e.clientY)return!0}return!1}function eventBelongsToEditor(O,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t,i=e.target;i!=O.contentDOM;i=i.parentNode)if(!i||11==i.nodeType||(t=ContentView.get(i))&&t.ignoreEvent(e))return!1;return!0}const handlers=Object.create(null),observers=Object.create(null),brokenClipboardAPI=browser.ie&&browser.ie_version<15||browser.ios&&browser.webkit_version<604;function capturePaste(O){let e=O.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout((()=>{O.focus(),t.remove(),doPaste(O,t.value)}),50)}function textFilter(O,e,t){for(let i of O.facet(e))t=i(t,O);return t}function doPaste(O,e){e=textFilter(O.state,clipboardInputFilter,e);let t,{state:i}=O,n=1,r=i.toText(e),a=r.lines==i.selection.ranges.length;if(null!=lastLinewiseCopy&&i.selection.ranges.every((O=>O.empty))&&lastLinewiseCopy==r.toString()){let O=-1;t=i.changeByRange((t=>{let s=i.doc.lineAt(t.from);if(s.from==O)return{range:t};O=s.from;let o=i.toText((a?r.line(n++).text:e)+i.lineBreak);return{changes:{from:s.from,insert:o},range:EditorSelection.cursor(t.from+o.length)}}))}else t=a?i.changeByRange((O=>{let e=r.line(n++);return{changes:{from:O.from,to:O.to,insert:e.text},range:EditorSelection.cursor(O.from+e.length)}})):i.replaceSelection(r);O.dispatch(t,{userEvent:"input.paste",scrollIntoView:!0})}function rangeForClick(O,e,t,i){if(1==i)return EditorSelection.cursor(e,t);if(2==i)return groupAt(O.state,e,t);{let t=LineView.find(O.docView,e),i=O.state.doc.lineAt(t?t.posAtEnd:e),n=t?t.posAtStart:i.from,r=t?t.posAtEnd:i.to;return r<O.state.doc.length&&r==i.to&&r++,EditorSelection.range(n,r)}}observers.scroll=O=>{O.inputState.lastScrollTop=O.scrollDOM.scrollTop,O.inputState.lastScrollLeft=O.scrollDOM.scrollLeft},handlers.keydown=(O,e)=>(O.inputState.setSelectionOrigin("select"),27==e.keyCode&&0!=O.inputState.tabFocusMode&&(O.inputState.tabFocusMode=Date.now()+2e3),!1),observers.touchstart=(O,e)=>{O.inputState.lastTouchTime=Date.now(),O.inputState.setSelectionOrigin("select.pointer")},observers.touchmove=O=>{O.inputState.setSelectionOrigin("select.pointer")},handlers.mousedown=(O,e)=>{if(O.observer.flush(),O.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let i of O.state.facet(mouseSelectionStyle))if(t=i(O,e),t)break;if(t||0!=e.button||(t=basicMouseSelection(O,e)),t){let i=!O.hasFocus;O.inputState.startMouseSelection(new MouseSelection(O,e,t,i)),i&&O.observer.ignore((()=>{focusPreventScroll(O.contentDOM);let e=O.root.activeElement;e&&!e.contains(O.contentDOM)&&e.blur()}));let n=O.inputState.mouseSelection;if(n)return n.start(e),!1===n.dragging}return!1};let inside=(O,e,t)=>e>=t.top&&e<=t.bottom&&O>=t.left&&O<=t.right;function findPositionSide(O,e,t,i){let n=LineView.find(O.docView,e);if(!n)return 1;let r=e-n.posAtStart;if(0==r)return 1;if(r==n.length)return-1;let a=n.coordsAt(r,-1);if(a&&inside(t,i,a))return-1;let s=n.coordsAt(r,1);return s&&inside(t,i,s)?1:a&&a.bottom>=i?-1:1}function queryPos(O,e){let t=O.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:findPositionSide(O,t,e.clientX,e.clientY)}}const BadMouseDetail=browser.ie&&browser.ie_version<=11;let lastMouseDown=null,lastMouseDownCount=0,lastMouseDownTime=0;function getClickType(O){if(!BadMouseDetail)return O.detail;let e=lastMouseDown,t=lastMouseDownTime;return lastMouseDown=O,lastMouseDownTime=Date.now(),lastMouseDownCount=!e||t>Date.now()-400&&Math.abs(e.clientX-O.clientX)<2&&Math.abs(e.clientY-O.clientY)<2?(lastMouseDownCount+1)%3:1}function basicMouseSelection(O,e){let t=queryPos(O,e),i=getClickType(e),n=O.state.selection;return{update(O){O.docChanged&&(t.pos=O.changes.mapPos(t.pos),n=n.map(O.changes))},get(e,r,a){let s,o=queryPos(O,e),l=rangeForClick(O,o.pos,o.bias,i);if(t.pos!=o.pos&&!r){let e=rangeForClick(O,t.pos,t.bias,i),n=Math.min(e.from,l.from),r=Math.max(e.to,l.to);l=n<l.from?EditorSelection.range(n,r):EditorSelection.range(r,n)}return r?n.replaceRange(n.main.extend(l.from,l.to)):a&&1==i&&n.ranges.length>1&&(s=removeRangeAround(n,o.pos))?s:a?n.addRange(l):EditorSelection.create([l])}}}function removeRangeAround(O,e){for(let t=0;t<O.ranges.length;t++){let{from:i,to:n}=O.ranges[t];if(i<=e&&n>=e)return EditorSelection.create(O.ranges.slice(0,t).concat(O.ranges.slice(t+1)),O.mainIndex==t?0:O.mainIndex-(O.mainIndex>t?1:0))}return null}function dropText(O,e,t,i){if(!(t=textFilter(O.state,clipboardInputFilter,t)))return;let n=O.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:r}=O.inputState,a=i&&r&&dragMovesSelection(O,e)?{from:r.from,to:r.to}:null,s={from:n,insert:t},o=O.state.changes(a?[a,s]:s);O.focus(),O.dispatch({changes:o,selection:{anchor:o.mapPos(n,-1),head:o.mapPos(n,1)},userEvent:a?"move.drop":"input.drop"}),O.inputState.draggedContent=null}function captureCopy(O,e){let t=O.dom.parentNode;if(!t)return;let i=t.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.value=e,i.focus(),i.selectionEnd=e.length,i.selectionStart=0,setTimeout((()=>{i.remove(),O.focus()}),50)}function copiedRange(O){let e=[],t=[],i=!1;for(let i of O.selection.ranges)i.empty||(e.push(O.sliceDoc(i.from,i.to)),t.push(i));if(!e.length){let n=-1;for(let{from:i}of O.selection.ranges){let r=O.doc.lineAt(i);r.number>n&&(e.push(r.text),t.push({from:r.from,to:Math.min(O.doc.length,r.to+1)})),n=r.number}i=!0}return{text:textFilter(O,clipboardOutputFilter,e.join(O.lineBreak)),ranges:t,linewise:i}}handlers.dragstart=(O,e)=>{let{selection:{main:t}}=O.state;if(e.target.draggable){let i=O.docView.nearest(e.target);if(i&&i.isWidget){let O=i.posAtStart,e=O+i.length;(O>=t.to||e<=t.from)&&(t=EditorSelection.range(O,e))}}let{inputState:i}=O;return i.mouseSelection&&(i.mouseSelection.dragging=!0),i.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",textFilter(O.state,clipboardOutputFilter,O.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1},handlers.dragend=O=>(O.inputState.draggedContent=null,!1),handlers.drop=(O,e)=>{if(!e.dataTransfer)return!1;if(O.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let i=Array(t.length),n=0,r=()=>{++n==t.length&&dropText(O,e,i.filter((O=>null!=O)).join(O.state.lineBreak),!1)};for(let O=0;O<t.length;O++){let e=new FileReader;e.onerror=r,e.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(e.result)||(i[O]=e.result),r()},e.readAsText(t[O])}return!0}{let t=e.dataTransfer.getData("Text");if(t)return dropText(O,e,t,!0),!0}return!1},handlers.paste=(O,e)=>{if(O.state.readOnly)return!0;O.observer.flush();let t=brokenClipboardAPI?null:e.clipboardData;return t?(doPaste(O,t.getData("text/plain")||t.getData("text/uri-list")),!0):(capturePaste(O),!1)};let lastLinewiseCopy=null;handlers.copy=handlers.cut=(O,e)=>{let{text:t,ranges:i,linewise:n}=copiedRange(O.state);if(!t&&!n)return!1;lastLinewiseCopy=n?t:null,"cut"!=e.type||O.state.readOnly||O.dispatch({changes:i,scrollIntoView:!0,userEvent:"delete.cut"});let r=brokenClipboardAPI?null:e.clipboardData;return r?(r.clearData(),r.setData("text/plain",t),!0):(captureCopy(O,t),!1)};const isFocusChange=Annotation.define();function focusChangeTransaction(O,e){let t=[];for(let i of O.facet(focusChangeEffect)){let n=i(O,e);n&&t.push(n)}return t?O.update({effects:t,annotations:isFocusChange.of(!0)}):null}function updateForFocusChange(O){setTimeout((()=>{let e=O.hasFocus;if(e!=O.inputState.notifiedFocused){let t=focusChangeTransaction(O.state,e);t?O.dispatch(t):O.update([])}}),10)}observers.focus=O=>{O.inputState.lastFocusTime=Date.now(),O.scrollDOM.scrollTop||!O.inputState.lastScrollTop&&!O.inputState.lastScrollLeft||(O.scrollDOM.scrollTop=O.inputState.lastScrollTop,O.scrollDOM.scrollLeft=O.inputState.lastScrollLeft),updateForFocusChange(O)},observers.blur=O=>{O.observer.clearSelectionRange(),updateForFocusChange(O)},observers.compositionstart=observers.compositionupdate=O=>{O.observer.editContext||(null==O.inputState.compositionFirstChange&&(O.inputState.compositionFirstChange=!0),O.inputState.composing<0&&(O.inputState.composing=0))},observers.compositionend=O=>{O.observer.editContext||(O.inputState.composing=-1,O.inputState.compositionEndedAt=Date.now(),O.inputState.compositionPendingKey=!0,O.inputState.compositionPendingChange=O.observer.pendingRecords().length>0,O.inputState.compositionFirstChange=null,browser.chrome&&browser.android?O.observer.flushSoon():O.inputState.compositionPendingChange?Promise.resolve().then((()=>O.observer.flush())):setTimeout((()=>{O.inputState.composing<0&&O.docView.hasComposition&&O.update([])}),50))},observers.contextmenu=O=>{O.inputState.lastContextMenu=Date.now()},handlers.beforeinput=(O,e)=>{var t,i;if("insertReplacementText"==e.inputType&&O.observer.editContext){let i=null===(t=e.dataTransfer)||void 0===t?void 0:t.getData("text/plain"),n=e.getTargetRanges();if(i&&n.length){let e=n[0],t=O.posAtDOM(e.startContainer,e.startOffset),r=O.posAtDOM(e.endContainer,e.endOffset);return applyDOMChangeInner(O,{from:t,to:r,insert:O.state.toText(i)},null),!0}}let n;if(browser.chrome&&browser.android&&(n=PendingKeys.find((O=>O.inputType==e.inputType)))&&(O.observer.delayAndroidKey(n.key,n.keyCode),"Backspace"==n.key||"Delete"==n.key)){let e=(null===(i=window.visualViewport)||void 0===i?void 0:i.height)||0;setTimeout((()=>{var t;((null===(t=window.visualViewport)||void 0===t?void 0:t.height)||0)>e+10&&O.hasFocus&&(O.contentDOM.blur(),O.focus())}),100)}return browser.ios&&"deleteContentForward"==e.inputType&&O.observer.flushSoon(),browser.safari&&"insertText"==e.inputType&&O.inputState.composing>=0&&setTimeout((()=>observers.compositionend(O,e)),20),!1};const appliedFirefoxHack=new Set;function firefoxCopyCutHack(O){appliedFirefoxHack.has(O)||(appliedFirefoxHack.add(O),O.addEventListener("copy",(()=>{})),O.addEventListener("cut",(()=>{})))}const wrappingWhiteSpace=["pre-wrap","normal","pre-line","break-spaces"];let heightChangeFlag=!1;function clearHeightChangeFlag(){heightChangeFlag=!1}class HeightOracle{constructor(O){this.lineWrapping=O,this.doc=Text.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(O,e){let t=this.doc.lineAt(e).number-this.doc.lineAt(O).number+1;return this.lineWrapping&&(t+=Math.max(0,Math.ceil((e-O-t*this.lineLength*.5)/this.lineLength))),this.lineHeight*t}heightForLine(O){if(!this.lineWrapping)return this.lineHeight;return(1+Math.max(0,Math.ceil((O-this.lineLength)/(this.lineLength-5))))*this.lineHeight}setDoc(O){return this.doc=O,this}mustRefreshForWrapping(O){return wrappingWhiteSpace.indexOf(O)>-1!=this.lineWrapping}mustRefreshForHeights(O){let e=!1;for(let t=0;t<O.length;t++){let i=O[t];i<0?t++:this.heightSamples[Math.floor(10*i)]||(e=!0,this.heightSamples[Math.floor(10*i)]=!0)}return e}refresh(O,e,t,i,n,r){let a=wrappingWhiteSpace.indexOf(O)>-1,s=Math.round(e)!=Math.round(this.lineHeight)||this.lineWrapping!=a;if(this.lineWrapping=a,this.lineHeight=e,this.charWidth=t,this.textHeight=i,this.lineLength=n,s){this.heightSamples={};for(let O=0;O<r.length;O++){let e=r[O];e<0?O++:this.heightSamples[Math.floor(10*e)]=!0}}return s}}class MeasuredHeights{constructor(O,e){this.from=O,this.heights=e,this.index=0}get more(){return this.index<this.heights.length}}class BlockInfo{constructor(O,e,t,i,n){this.from=O,this.length=e,this.top=t,this.height=i,this._content=n}get type(){return"number"==typeof this._content?BlockType.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof PointDecoration?this._content.widget:null}get widgetLineBreaks(){return"number"==typeof this._content?this._content:0}join(O){let e=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(O._content)?O._content:[O]);return new BlockInfo(this.from,this.length+O.length,this.top,this.height+O.height,e)}}var QueryType=function(O){return O[O.ByPos=0]="ByPos",O[O.ByHeight=1]="ByHeight",O[O.ByPosNoHeight=2]="ByPosNoHeight",O}(QueryType||(QueryType={}));const Epsilon=.001;class HeightMap{constructor(O,e,t=2){this.length=O,this.height=e,this.flags=t}get outdated(){return(2&this.flags)>0}set outdated(O){this.flags=(O?2:0)|-3&this.flags}setHeight(O){this.height!=O&&(Math.abs(this.height-O)>.001&&(heightChangeFlag=!0),this.height=O)}replace(O,e,t){return HeightMap.of(t)}decomposeLeft(O,e){e.push(this)}decomposeRight(O,e){e.push(this)}applyChanges(O,e,t,i){let n=this,r=t.doc;for(let a=i.length-1;a>=0;a--){let{fromA:s,toA:o,fromB:l,toB:Q}=i[a],c=n.lineAt(s,QueryType.ByPosNoHeight,t.setDoc(e),0,0),h=c.to>=o?c:n.lineAt(o,QueryType.ByPosNoHeight,t,0,0);for(Q+=h.to-o,o=h.to;a>0&&c.from<=i[a-1].toA;)s=i[a-1].fromA,l=i[a-1].fromB,a--,s<c.from&&(c=n.lineAt(s,QueryType.ByPosNoHeight,t,0,0));l+=c.from-s,s=c.from;let $=NodeBuilder.build(t.setDoc(r),O,l,Q);n=replace(n,n.replace(s,o,$))}return n.updateHeight(t,0)}static empty(){return new HeightMapText(0,0)}static of(O){if(1==O.length)return O[0];let e=0,t=O.length,i=0,n=0;for(;;)if(e==t)if(i>2*n){let n=O[e-1];n.break?O.splice(--e,1,n.left,null,n.right):O.splice(--e,1,n.left,n.right),t+=1+n.break,i-=n.size}else{if(!(n>2*i))break;{let e=O[t];e.break?O.splice(t,1,e.left,null,e.right):O.splice(t,1,e.left,e.right),t+=2+e.break,n-=e.size}}else if(i<n){let t=O[e++];t&&(i+=t.size)}else{let e=O[--t];e&&(n+=e.size)}let r=0;return null==O[e-1]?(r=1,e--):null==O[e]&&(r=1,t++),new HeightMapBranch(HeightMap.of(O.slice(0,e)),r,HeightMap.of(O.slice(t)))}}function replace(O,e){return O==e?O:(O.constructor!=e.constructor&&(heightChangeFlag=!0),e)}HeightMap.prototype.size=1;class HeightMapBlock extends HeightMap{constructor(O,e,t){super(O,e),this.deco=t}blockAt(O,e,t,i){return new BlockInfo(i,this.length,t,this.height,this.deco||0)}lineAt(O,e,t,i,n){return this.blockAt(0,t,i,n)}forEachLine(O,e,t,i,n,r){O<=n+this.length&&e>=n&&r(this.blockAt(0,t,i,n))}updateHeight(O,e=0,t=!1,i){return i&&i.from<=e&&i.more&&this.setHeight(i.heights[i.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class HeightMapText extends HeightMapBlock{constructor(O,e){super(O,e,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(O,e,t,i){return new BlockInfo(i,this.length,t,this.height,this.breaks)}replace(O,e,t){let i=t[0];return 1==t.length&&(i instanceof HeightMapText||i instanceof HeightMapGap&&4&i.flags)&&Math.abs(this.length-i.length)<10?(i instanceof HeightMapGap?i=new HeightMapText(i.length,this.height):i.height=this.height,this.outdated||(i.outdated=!1),i):HeightMap.of(t)}updateHeight(O,e=0,t=!1,i){return i&&i.from<=e&&i.more?this.setHeight(i.heights[i.index++]):(t||this.outdated)&&this.setHeight(Math.max(this.widgetHeight,O.heightForLine(this.length-this.collapsed))+this.breaks*O.lineHeight),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class HeightMapGap extends HeightMap{constructor(O){super(O,0)}heightMetrics(O,e){let t,i=O.doc.lineAt(e).number,n=O.doc.lineAt(e+this.length).number,r=n-i+1,a=0;if(O.lineWrapping){let e=Math.min(this.height,O.lineHeight*r);t=e/r,this.length>r+1&&(a=(this.height-e)/(this.length-r-1))}else t=this.height/r;return{firstLine:i,lastLine:n,perLine:t,perChar:a}}blockAt(O,e,t,i){let{firstLine:n,lastLine:r,perLine:a,perChar:s}=this.heightMetrics(e,i);if(e.lineWrapping){let n=i+(O<e.lineHeight?0:Math.round(Math.max(0,Math.min(1,(O-t)/this.height))*this.length)),r=e.doc.lineAt(n),o=a+r.length*s,l=Math.max(t,O-o/2);return new BlockInfo(r.from,r.length,l,o,0)}{let i=Math.max(0,Math.min(r-n,Math.floor((O-t)/a))),{from:s,length:o}=e.doc.line(n+i);return new BlockInfo(s,o,t+a*i,a,0)}}lineAt(O,e,t,i,n){if(e==QueryType.ByHeight)return this.blockAt(O,t,i,n);if(e==QueryType.ByPosNoHeight){let{from:e,to:i}=t.doc.lineAt(O);return new BlockInfo(e,i-e,0,0,0)}let{firstLine:r,perLine:a,perChar:s}=this.heightMetrics(t,n),o=t.doc.lineAt(O),l=a+o.length*s,Q=o.number-r,c=i+a*Q+s*(o.from-n-Q);return new BlockInfo(o.from,o.length,Math.max(i,Math.min(c,i+this.height-l)),l,0)}forEachLine(O,e,t,i,n,r){O=Math.max(O,n),e=Math.min(e,n+this.length);let{firstLine:a,perLine:s,perChar:o}=this.heightMetrics(t,n);for(let l=O,Q=i;l<=e;){let e=t.doc.lineAt(l);if(l==O){let t=e.number-a;Q+=s*t+o*(O-n-t)}let i=s+o*e.length;r(new BlockInfo(e.from,e.length,Q,i,0)),Q+=i,l=e.to+1}}replace(O,e,t){let i=this.length-e;if(i>0){let O=t[t.length-1];O instanceof HeightMapGap?t[t.length-1]=new HeightMapGap(O.length+i):t.push(null,new HeightMapGap(i-1))}if(O>0){let e=t[0];e instanceof HeightMapGap?t[0]=new HeightMapGap(O+e.length):t.unshift(new HeightMapGap(O-1),null)}return HeightMap.of(t)}decomposeLeft(O,e){e.push(new HeightMapGap(O-1),null)}decomposeRight(O,e){e.push(null,new HeightMapGap(this.length-O-1))}updateHeight(O,e=0,t=!1,i){let n=e+this.length;if(i&&i.from<=e+this.length&&i.more){let t=[],r=Math.max(e,i.from),a=-1;for(i.from>e&&t.push(new HeightMapGap(i.from-e-1).updateHeight(O,e));r<=n&&i.more;){let e=O.doc.lineAt(r).length;t.length&&t.push(null);let n=i.heights[i.index++];-1==a?a=n:Math.abs(n-a)>=.001&&(a=-2);let s=new HeightMapText(e,n);s.outdated=!1,t.push(s),r+=e+1}r<=n&&t.push(null,new HeightMapGap(n-r).updateHeight(O,r));let s=HeightMap.of(t);return(a<0||Math.abs(s.height-this.height)>=.001||Math.abs(a-this.heightMetrics(O,e).perLine)>=.001)&&(heightChangeFlag=!0),replace(this,s)}return(t||this.outdated)&&(this.setHeight(O.heightForGap(e,e+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}}class HeightMapBranch extends HeightMap{constructor(O,e,t){super(O.length+e+t.length,O.height+t.height,e|(O.outdated||t.outdated?2:0)),this.left=O,this.right=t,this.size=O.size+t.size}get break(){return 1&this.flags}blockAt(O,e,t,i){let n=t+this.left.height;return O<n?this.left.blockAt(O,e,t,i):this.right.blockAt(O,e,n,i+this.left.length+this.break)}lineAt(O,e,t,i,n){let r=i+this.left.height,a=n+this.left.length+this.break,s=e==QueryType.ByHeight?O<r:O<a,o=s?this.left.lineAt(O,e,t,i,n):this.right.lineAt(O,e,t,r,a);if(this.break||(s?o.to<a:o.from>a))return o;let l=e==QueryType.ByPosNoHeight?QueryType.ByPosNoHeight:QueryType.ByPos;return s?o.join(this.right.lineAt(a,l,t,r,a)):this.left.lineAt(a,l,t,i,n).join(o)}forEachLine(O,e,t,i,n,r){let a=i+this.left.height,s=n+this.left.length+this.break;if(this.break)O<s&&this.left.forEachLine(O,e,t,i,n,r),e>=s&&this.right.forEachLine(O,e,t,a,s,r);else{let o=this.lineAt(s,QueryType.ByPos,t,i,n);O<o.from&&this.left.forEachLine(O,o.from-1,t,i,n,r),o.to>=O&&o.from<=e&&r(o),e>o.to&&this.right.forEachLine(o.to+1,e,t,a,s,r)}}replace(O,e,t){let i=this.left.length+this.break;if(e<i)return this.balanced(this.left.replace(O,e,t),this.right);if(O>this.left.length)return this.balanced(this.left,this.right.replace(O-i,e-i,t));let n=[];O>0&&this.decomposeLeft(O,n);let r=n.length;for(let O of t)n.push(O);if(O>0&&mergeGaps(n,r-1),e<this.length){let O=n.length;this.decomposeRight(e,n),mergeGaps(n,O)}return HeightMap.of(n)}decomposeLeft(O,e){let t=this.left.length;if(O<=t)return this.left.decomposeLeft(O,e);e.push(this.left),this.break&&(t++,O>=t&&e.push(null)),O>t&&this.right.decomposeLeft(O-t,e)}decomposeRight(O,e){let t=this.left.length,i=t+this.break;if(O>=i)return this.right.decomposeRight(O-i,e);O<t&&this.left.decomposeRight(O,e),this.break&&O<i&&e.push(null),e.push(this.right)}balanced(O,e){return O.size>2*e.size||e.size>2*O.size?HeightMap.of(this.break?[O,null,e]:[O,e]):(this.left=replace(this.left,O),this.right=replace(this.right,e),this.setHeight(O.height+e.height),this.outdated=O.outdated||e.outdated,this.size=O.size+e.size,this.length=O.length+this.break+e.length,this)}updateHeight(O,e=0,t=!1,i){let{left:n,right:r}=this,a=e+n.length+this.break,s=null;return i&&i.from<=e+n.length&&i.more?s=n=n.updateHeight(O,e,t,i):n.updateHeight(O,e,t),i&&i.from<=a+r.length&&i.more?s=r=r.updateHeight(O,a,t,i):r.updateHeight(O,a,t),s?this.balanced(n,r):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function mergeGaps(O,e){let t,i;null==O[e]&&(t=O[e-1])instanceof HeightMapGap&&(i=O[e+1])instanceof HeightMapGap&&O.splice(e-1,3,new HeightMapGap(t.length+1+i.length))}const relevantWidgetHeight=5;class NodeBuilder{constructor(O,e){this.pos=O,this.oracle=e,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=O}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(O,e){if(this.lineStart>-1){let O=Math.min(e,this.lineEnd),t=this.nodes[this.nodes.length-1];t instanceof HeightMapText?t.length+=O-this.pos:(O>this.pos||!this.isCovered)&&this.nodes.push(new HeightMapText(O-this.pos,-1)),this.writtenTo=O,e>O&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=e}point(O,e,t){if(O<e||t.heightRelevant){let i=t.widget?t.widget.estimatedHeight:0,n=t.widget?t.widget.lineBreaks:0;i<0&&(i=this.oracle.lineHeight);let r=e-O;t.block?this.addBlock(new HeightMapBlock(r,i,t)):(r||n||i>=5)&&this.addLineDeco(i,n,r)}else e>O&&this.span(O,e);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:O,to:e}=this.oracle.doc.lineAt(this.pos);this.lineStart=O,this.lineEnd=e,this.writtenTo<O&&((this.writtenTo<O-1||null==this.nodes[this.nodes.length-1])&&this.nodes.push(this.blankContent(this.writtenTo,O-1)),this.nodes.push(null)),this.pos>O&&this.nodes.push(new HeightMapText(this.pos-O,-1)),this.writtenTo=this.pos}blankContent(O,e){let t=new HeightMapGap(e-O);return this.oracle.doc.lineAt(O).to==e&&(t.flags|=4),t}ensureLine(){this.enterLine();let O=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(O instanceof HeightMapText)return O;let e=new HeightMapText(0,-1);return this.nodes.push(e),e}addBlock(O){this.enterLine();let e=O.deco;e&&e.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(O),this.writtenTo=this.pos=this.pos+O.length,e&&e.endSide>0&&(this.covering=O)}addLineDeco(O,e,t){let i=this.ensureLine();i.length+=t,i.collapsed+=t,i.widgetHeight=Math.max(i.widgetHeight,O),i.breaks+=e,this.writtenTo=this.pos=this.pos+t}finish(O){let e=0==this.nodes.length?null:this.nodes[this.nodes.length-1];!(this.lineStart>-1)||e instanceof HeightMapText||this.isCovered?(this.writtenTo<this.pos||null==e)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos)):this.nodes.push(new HeightMapText(0,-1));let t=O;for(let O of this.nodes)O instanceof HeightMapText&&O.updateHeight(this.oracle,t),t+=O?O.length:1;return this.nodes}static build(O,e,t,i){let n=new NodeBuilder(t,O);return RangeSet.spans(e,t,i,n,0),n.finish(t)}}function heightRelevantDecoChanges(O,e,t){let i=new DecorationComparator;return RangeSet.compare(O,e,t,i,0),i.changes}class DecorationComparator{constructor(){this.changes=[]}compareRange(){}comparePoint(O,e,t,i){(O<e||t&&t.heightRelevant||i&&i.heightRelevant)&&addRange(O,e,this.changes,5)}}function visiblePixelRange(O,e){let t=O.getBoundingClientRect(),i=O.ownerDocument,n=i.defaultView||window,r=Math.max(0,t.left),a=Math.min(n.innerWidth,t.right),s=Math.max(0,t.top),o=Math.min(n.innerHeight,t.bottom);for(let e=O.parentNode;e&&e!=i.body;)if(1==e.nodeType){let t=e,i=window.getComputedStyle(t);if((t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth)&&"visible"!=i.overflow){let i=t.getBoundingClientRect();r=Math.max(r,i.left),a=Math.min(a,i.right),s=Math.max(s,i.top),o=Math.min(e==O.parentNode?n.innerHeight:o,i.bottom)}e="absolute"==i.position||"fixed"==i.position?t.offsetParent:t.parentNode}else{if(11!=e.nodeType)break;e=e.host}return{left:r-t.left,right:Math.max(r,a)-t.left,top:s-(t.top+e),bottom:Math.max(s,o)-(t.top+e)}}function inWindow(O){let e=O.getBoundingClientRect(),t=O.ownerDocument.defaultView||window;return e.left<t.innerWidth&&e.right>0&&e.top<t.innerHeight&&e.bottom>0}function fullPixelRange(O,e){let t=O.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class LineGap{constructor(O,e,t,i){this.from=O,this.to=e,this.size=t,this.displaySize=i}static same(O,e){if(O.length!=e.length)return!1;for(let t=0;t<O.length;t++){let i=O[t],n=e[t];if(i.from!=n.from||i.to!=n.to||i.size!=n.size)return!1}return!0}draw(O,e){return Decoration.replace({widget:new LineGapWidget(this.displaySize*(e?O.scaleY:O.scaleX),e)}).range(this.from,this.to)}}class LineGapWidget extends WidgetType{constructor(O,e){super(),this.size=O,this.vertical=e}eq(O){return O.size==this.size&&O.vertical==this.vertical}toDOM(){let O=document.createElement("div");return this.vertical?O.style.height=this.size+"px":(O.style.width=this.size+"px",O.style.height="2px",O.style.display="inline-block"),O}get estimatedHeight(){return this.vertical?this.size:-1}}class ViewState{constructor(O){this.state=O,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scrollTop=0,this.scrolledToBottom=!1,this.scaleX=1,this.scaleY=1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=IdScaler,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=Direction.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let e=O.facet(contentAttributes).some((O=>"function"!=typeof O&&"cm-lineWrapping"==O.class));this.heightOracle=new HeightOracle(e),this.stateDeco=O.facet(decorations).filter((O=>"function"!=typeof O)),this.heightMap=HeightMap.empty().applyChanges(this.stateDeco,Text.empty,this.heightOracle.setDoc(O.doc),[new ChangedRange(0,0,0,O.doc.length)]);for(let O=0;O<2&&(this.viewport=this.getViewport(0,null),this.updateForViewport());O++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Decoration.set(this.lineGaps.map((O=>O.draw(this,!1)))),this.computeVisibleRanges()}updateForViewport(){let O=[this.viewport],{main:e}=this.state.selection;for(let t=0;t<=1;t++){let i=t?e.head:e.anchor;if(!O.some((({from:O,to:e})=>i>=O&&i<=e))){let{from:e,to:t}=this.lineBlockAt(i);O.push(new Viewport(e,t))}}return this.viewports=O.sort(((O,e)=>O.from-e.from)),this.updateScaler()}updateScaler(){let O=this.scaler;return this.scaler=this.heightMap.height<=7e6?IdScaler:new BigScaler(this.heightOracle,this.heightMap,this.viewports),O.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,(O=>{this.viewportLines.push(scaleBlock(O,this.scaler))}))}update(O,e=null){this.state=O.state;let t=this.stateDeco;this.stateDeco=this.state.facet(decorations).filter((O=>"function"!=typeof O));let i=O.changedRanges,n=ChangedRange.extendWithRanges(i,heightRelevantDecoChanges(t,this.stateDeco,O?O.changes:ChangeSet.empty(this.state.doc.length))),r=this.heightMap.height,a=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);clearHeightChangeFlag(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,O.startState.doc,this.heightOracle.setDoc(this.state.doc),n),(this.heightMap.height!=r||heightChangeFlag)&&(O.flags|=2),a?(this.scrollAnchorPos=O.changes.mapPos(a.from,-1),this.scrollAnchorHeight=a.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=this.heightMap.height);let s=n.length?this.mapViewport(this.viewport,O.changes):this.viewport;(e&&(e.range.head<s.from||e.range.head>s.to)||!this.viewportIsAppropriate(s))&&(s=this.getViewport(0,e));let o=s.from!=this.viewport.from||s.to!=this.viewport.to;this.viewport=s,O.flags|=this.updateForViewport(),(o||!O.changes.empty||2&O.flags)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,O.changes))),O.flags|=this.computeVisibleRanges(O.changes),e&&(this.scrollTarget=e),!this.mustEnforceCursorAssoc&&O.selectionSet&&O.view.lineWrapping&&O.state.selection.main.empty&&O.state.selection.main.assoc&&!O.state.facet(nativeSelectionHidden)&&(this.mustEnforceCursorAssoc=!0)}measure(O){let e=O.contentDOM,t=window.getComputedStyle(e),i=this.heightOracle,n=t.whiteSpace;this.defaultTextDirection="rtl"==t.direction?Direction.RTL:Direction.LTR;let r=this.heightOracle.mustRefreshForWrapping(n),a=e.getBoundingClientRect(),s=r||this.mustMeasureContent||this.contentDOMHeight!=a.height;this.contentDOMHeight=a.height,this.mustMeasureContent=!1;let o=0,l=0;if(a.width&&a.height){let{scaleX:O,scaleY:t}=getScale(e,a);(O>.005&&Math.abs(this.scaleX-O)>.005||t>.005&&Math.abs(this.scaleY-t)>.005)&&(this.scaleX=O,this.scaleY=t,o|=16,r=s=!0)}let Q=(parseInt(t.paddingTop)||0)*this.scaleY,c=(parseInt(t.paddingBottom)||0)*this.scaleY;this.paddingTop==Q&&this.paddingBottom==c||(this.paddingTop=Q,this.paddingBottom=c,o|=18),this.editorWidth!=O.scrollDOM.clientWidth&&(i.lineWrapping&&(s=!0),this.editorWidth=O.scrollDOM.clientWidth,o|=16);let h=O.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=h&&(this.scrollAnchorHeight=-1,this.scrollTop=h),this.scrolledToBottom=isScrolledToBottom(O.scrollDOM);let $=(this.printing?fullPixelRange:visiblePixelRange)(e,this.paddingTop),d=$.top-this.pixelViewport.top,p=$.bottom-this.pixelViewport.bottom;this.pixelViewport=$;let u=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(u!=this.inView&&(this.inView=u,u&&(s=!0)),!this.inView&&!this.scrollTarget&&!inWindow(O.dom))return 0;let f=a.width;if(this.contentDOMWidth==f&&this.editorHeight==O.scrollDOM.clientHeight||(this.contentDOMWidth=a.width,this.editorHeight=O.scrollDOM.clientHeight,o|=16),s){let e=O.docView.measureVisibleLineHeights(this.viewport);if(i.mustRefreshForHeights(e)&&(r=!0),r||i.lineWrapping&&Math.abs(f-this.contentDOMWidth)>i.charWidth){let{lineHeight:t,charWidth:a,textHeight:s}=O.docView.measureTextSize();r=t>0&&i.refresh(n,t,a,s,f/a,e),r&&(O.docView.minWidth=0,o|=16)}d>0&&p>0?l=Math.max(d,p):d<0&&p<0&&(l=Math.min(d,p)),clearHeightChangeFlag();for(let t of this.viewports){let n=t.from==this.viewport.from?e:O.docView.measureVisibleLineHeights(t);this.heightMap=(r?HeightMap.empty().applyChanges(this.stateDeco,Text.empty,this.heightOracle,[new ChangedRange(0,0,0,O.state.doc.length)]):this.heightMap).updateHeight(i,0,r,new MeasuredHeights(t.from,n))}heightChangeFlag&&(o|=2)}let g=!this.viewportIsAppropriate(this.viewport,l)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return g&&(2&o&&(o|=this.updateScaler()),this.viewport=this.getViewport(l,this.scrollTarget),o|=this.updateForViewport()),(2&o||g)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(r?[]:this.lineGaps,O)),o|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,O.docView.enforceCursorAssoc()),o}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(O,e){let t=.5-Math.max(-.5,Math.min(.5,O/1e3/2)),i=this.heightMap,n=this.heightOracle,{visibleTop:r,visibleBottom:a}=this,s=new Viewport(i.lineAt(r-1e3*t,QueryType.ByHeight,n,0,0).from,i.lineAt(a+1e3*(1-t),QueryType.ByHeight,n,0,0).to);if(e){let{head:O}=e.range;if(O<s.from||O>s.to){let t,r=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),a=i.lineAt(O,QueryType.ByPos,n,0,0);t="center"==e.y?(a.top+a.bottom)/2-r/2:"start"==e.y||"nearest"==e.y&&O<s.from?a.top:a.bottom-r,s=new Viewport(i.lineAt(t-500,QueryType.ByHeight,n,0,0).from,i.lineAt(t+r+500,QueryType.ByHeight,n,0,0).to)}}return s}mapViewport(O,e){let t=e.mapPos(O.from,-1),i=e.mapPos(O.to,1);return new Viewport(this.heightMap.lineAt(t,QueryType.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(i,QueryType.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:O,to:e},t=0){if(!this.inView)return!0;let{top:i}=this.heightMap.lineAt(O,QueryType.ByPos,this.heightOracle,0,0),{bottom:n}=this.heightMap.lineAt(e,QueryType.ByPos,this.heightOracle,0,0),{visibleTop:r,visibleBottom:a}=this;return(0==O||i<=r-Math.max(10,Math.min(-t,250)))&&(e==this.state.doc.length||n>=a+Math.max(10,Math.min(t,250)))&&i>r-2e3&&n<a+2e3}mapLineGaps(O,e){if(!O.length||e.empty)return O;let t=[];for(let i of O)e.touchesRange(i.from,i.to)||t.push(new LineGap(e.mapPos(i.from),e.mapPos(i.to),i.size,i.displaySize));return t}ensureLineGaps(O,e){let t=this.heightOracle.lineWrapping,i=t?1e4:2e3,n=i>>1,r=i<<1;if(this.defaultTextDirection!=Direction.LTR&&!t)return[];let a=[],s=(i,r,o,l)=>{if(r-i<n)return;let Q=this.state.selection.main,c=[Q.from];Q.empty||c.push(Q.to);for(let O of c)if(O>i&&O<r)return s(i,O-10,o,l),void s(O+10,r,o,l);let h=find(O,(O=>O.from>=o.from&&O.to<=o.to&&Math.abs(O.from-i)<n&&Math.abs(O.to-r)<n&&!c.some((e=>O.from<e&&O.to>e))));if(!h){if(r<o.to&&e&&t&&e.visibleRanges.some((O=>O.from<=r&&O.to>=r))){let O=e.moveToLineBoundary(EditorSelection.cursor(r),!1,!0).head;O>i&&(r=O)}let O=this.gapSize(o,i,r,l);h=new LineGap(i,r,O,t||O<2e6?O:2e6)}a.push(h)},o=e=>{if(e.length<r||e.type!=BlockType.Text)return;let n=lineStructure(e.from,e.to,this.stateDeco);if(n.total<r)return;let a,o,l=this.scrollTarget?this.scrollTarget.range.head:null;if(t){let O,t,r=i/this.heightOracle.lineLength*this.heightOracle.lineHeight;if(null!=l){let i=findFraction(n,l),a=((this.visibleBottom-this.visibleTop)/2+r)/e.height;O=i-a,t=i+a}else O=(this.visibleTop-e.top-r)/e.height,t=(this.visibleBottom-e.top+r)/e.height;a=findPosition(n,O),o=findPosition(n,t)}else{let t=n.total*this.heightOracle.charWidth,r=i*this.heightOracle.charWidth,s=0;if(t>2e6)for(let t of O)t.from>=e.from&&t.from<e.to&&t.size!=t.displaySize&&t.from*this.heightOracle.charWidth+s<this.pixelViewport.left&&(s=t.size-t.displaySize);let Q,c,h=this.pixelViewport.left+s,$=this.pixelViewport.right+s;if(null!=l){let O=findFraction(n,l),e=(($-h)/2+r)/t;Q=O-e,c=O+e}else Q=(h-r)/t,c=($+r)/t;a=findPosition(n,Q),o=findPosition(n,c)}a>e.from&&s(e.from,a,e,n),o<e.to&&s(o,e.to,e,n)};for(let O of this.viewportLines)Array.isArray(O.type)?O.type.forEach(o):o(O);return a}gapSize(O,e,t,i){let n=findFraction(i,t)-findFraction(i,e);return this.heightOracle.lineWrapping?O.height*n:i.total*this.heightOracle.charWidth*n}updateLineGaps(O){LineGap.same(O,this.lineGaps)||(this.lineGaps=O,this.lineGapDeco=Decoration.set(O.map((O=>O.draw(this,this.heightOracle.lineWrapping)))))}computeVisibleRanges(O){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];RangeSet.spans(e,this.viewport.from,this.viewport.to,{span(O,e){t.push({from:O,to:e})},point(){}},20);let i=0;if(t.length!=this.visibleRanges.length)i=12;else for(let e=0;e<t.length&&!(8&i);e++){let n=this.visibleRanges[e],r=t[e];n.from==r.from&&n.to==r.to||(i|=4,O&&O.mapPos(n.from,-1)==r.from&&O.mapPos(n.to,1)==r.to||(i|=8))}return this.visibleRanges=t,i}lineBlockAt(O){return O>=this.viewport.from&&O<=this.viewport.to&&this.viewportLines.find((e=>e.from<=O&&e.to>=O))||scaleBlock(this.heightMap.lineAt(O,QueryType.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(O){return O>=this.viewportLines[0].top&&O<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find((e=>e.top<=O&&e.bottom>=O))||scaleBlock(this.heightMap.lineAt(this.scaler.fromDOM(O),QueryType.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(O){let e=this.lineBlockAtHeight(O+8);return e.from>=this.viewport.from||this.viewportLines[0].top-O>200?e:this.viewportLines[0]}elementAtHeight(O){return scaleBlock(this.heightMap.blockAt(this.scaler.fromDOM(O),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class Viewport{constructor(O,e){this.from=O,this.to=e}}function lineStructure(O,e,t){let i=[],n=O,r=0;return RangeSet.spans(t,O,e,{span(){},point(O,e){O>n&&(i.push({from:n,to:O}),r+=O-n),n=e}},20),n<e&&(i.push({from:n,to:e}),r+=e-n),{total:r,ranges:i}}function findPosition({total:O,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let i=Math.floor(O*t);for(let O=0;;O++){let{from:t,to:n}=e[O],r=n-t;if(i<=r)return t+i;i-=r}}function findFraction(O,e){let t=0;for(let{from:i,to:n}of O.ranges){if(e<=n){t+=e-i;break}t+=n-i}return t/O.total}function find(O,e){for(let t of O)if(e(t))return t}const IdScaler={toDOM:O=>O,fromDOM:O=>O,scale:1,eq(O){return O==this}};class BigScaler{constructor(O,e,t){let i=0,n=0,r=0;this.viewports=t.map((({from:t,to:n})=>{let r=e.lineAt(t,QueryType.ByPos,O,0,0).top,a=e.lineAt(n,QueryType.ByPos,O,0,0).bottom;return i+=a-r,{from:t,to:n,top:r,bottom:a,domTop:0,domBottom:0}})),this.scale=(7e6-i)/(e.height-i);for(let O of this.viewports)O.domTop=r+(O.top-n)*this.scale,r=O.domBottom=O.domTop+(O.bottom-O.top),n=O.bottom}toDOM(O){for(let e=0,t=0,i=0;;e++){let n=e<this.viewports.length?this.viewports[e]:null;if(!n||O<n.top)return i+(O-t)*this.scale;if(O<=n.bottom)return n.domTop+(O-n.top);t=n.bottom,i=n.domBottom}}fromDOM(O){for(let e=0,t=0,i=0;;e++){let n=e<this.viewports.length?this.viewports[e]:null;if(!n||O<n.domTop)return t+(O-i)/this.scale;if(O<=n.domBottom)return n.top+(O-n.domTop);t=n.bottom,i=n.domBottom}}eq(O){return O instanceof BigScaler&&(this.scale==O.scale&&this.viewports.length==O.viewports.length&&this.viewports.every(((e,t)=>e.from==O.viewports[t].from&&e.to==O.viewports[t].to)))}}function scaleBlock(O,e){if(1==e.scale)return O;let t=e.toDOM(O.top),i=e.toDOM(O.bottom);return new BlockInfo(O.from,O.length,t,i-t,Array.isArray(O._content)?O._content.map((O=>scaleBlock(O,e))):O._content)}const theme=Facet.define({combine:O=>O.join(" ")}),darkTheme=Facet.define({combine:O=>O.indexOf(!0)>-1}),baseThemeID=StyleModule.newName(),baseLightID=StyleModule.newName(),baseDarkID=StyleModule.newName(),lightDarkIDs={"&light":"."+baseLightID,"&dark":"."+baseDarkID};function buildTheme(O,e,t){return new StyleModule(e,{finish:e=>/&/.test(e)?e.replace(/&\w*/,(e=>{if("&"==e)return O;if(!t||!t[e])throw new RangeError(`Unsupported selector: ${e}`);return t[e]})):O+" "+e})}const baseTheme$1=buildTheme("."+baseThemeID,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",insetInlineStart:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:'url(\'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>\')',backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},lightDarkIDs),observeOptions={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},useCharData=browser.ie&&browser.ie_version<=11;class DOMObserver{constructor(O){this.view=O,this.active=!1,this.editContext=null,this.selectionRange=new DOMSelectionState,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=O.contentDOM,this.observer=new MutationObserver((e=>{for(let O of e)this.queue.push(O);(browser.ie&&browser.ie_version<=11||browser.ios&&O.composing)&&e.some((O=>"childList"==O.type&&O.removedNodes.length||"characterData"==O.type&&O.oldValue.length>O.target.nodeValue.length))?this.flushSoon():this.flush()})),!window.EditContext||!1===O.constructor.EDIT_CONTEXT||browser.chrome&&browser.chrome_version<126||(this.editContext=new EditContextManager(O),O.state.facet(editable)&&(O.contentDOM.editContext=this.editContext.editContext)),useCharData&&(this.onCharData=O=>{this.queue.push({target:O.target,type:"characterData",oldValue:O.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),"function"==typeof ResizeObserver&&(this.resizeScroll=new ResizeObserver((()=>{var O;(null===(O=this.view.docView)||void 0===O?void 0:O.lastUpdate)<Date.now()-75&&this.onResize()})),this.resizeScroll.observe(O.scrollDOM)),this.addWindowListeners(this.win=O.win),this.start(),"function"==typeof IntersectionObserver&&(this.intersection=new IntersectionObserver((O=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),O.length>0&&O[O.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))}),{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver((O=>{O.length>0&&O[O.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))}),{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(O){this.view.inputState.runHandlers("scroll",O),this.intersecting&&this.view.measure()}onScroll(O){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(O)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout((()=>{this.resizeTimeout=-1,this.view.requestMeasure()}),50))}onPrint(O){("change"!=O.type&&O.type||O.matches)&&(this.view.viewState.printing=!0,this.view.measure(),setTimeout((()=>{this.view.viewState.printing=!1,this.view.requestMeasure()}),500))}updateGaps(O){if(this.gapIntersection&&(O.length!=this.gaps.length||this.gaps.some(((e,t)=>e!=O[t])))){this.gapIntersection.disconnect();for(let e of O)this.gapIntersection.observe(e);this.gaps=O}}onSelectionChange(O){let e=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:t}=this,i=this.selectionRange;if(t.state.facet(editable)?t.root.activeElement!=this.dom:!hasSelection(this.dom,i))return;let n=i.anchorNode&&t.docView.nearest(i.anchorNode);n&&n.ignoreEvent(O)?e||(this.selectionChanged=!1):(browser.ie&&browser.ie_version<=11||browser.android&&browser.chrome)&&!t.state.selection.main.empty&&i.focusNode&&isEquivalentPosition(i.focusNode,i.focusOffset,i.anchorNode,i.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:O}=this,e=getSelection(O.root);if(!e)return!1;let t=browser.safari&&11==O.root.nodeType&&O.root.activeElement==this.dom&&safariSelectionRangeHack(this.view,e)||e;if(!t||this.selectionRange.eq(t))return!1;let i=hasSelection(this.dom,t);return i&&!this.selectionChanged&&O.inputState.lastFocusTime>Date.now()-200&&O.inputState.lastTouchTime<Date.now()-300&&atElementStart(this.dom,t)?(this.view.inputState.lastFocusTime=0,O.docView.updateSelection(),!1):(this.selectionRange.setRange(t),i&&(this.selectionChanged=!0),!0)}setSelectionRange(O,e){this.selectionRange.set(O.node,O.offset,e.node,e.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let O=0,e=null;for(let t=this.dom;t;)if(1==t.nodeType)!e&&O<this.scrollTargets.length&&this.scrollTargets[O]==t?O++:e||(e=this.scrollTargets.slice(0,O)),e&&e.push(t),t=t.assignedSlot||t.parentNode;else{if(11!=t.nodeType)break;t=t.host}if(O<this.scrollTargets.length&&!e&&(e=this.scrollTargets.slice(0,O)),e){for(let O of this.scrollTargets)O.removeEventListener("scroll",this.onScroll);for(let O of this.scrollTargets=e)O.addEventListener("scroll",this.onScroll)}}ignore(O){if(!this.active)return O();try{return this.stop(),O()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,observeOptions),useCharData&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),useCharData&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(O,e){var t;if(!this.delayedAndroidKey){let O=()=>{let O=this.delayedAndroidKey;if(O){this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=O.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&O.force&&dispatchKey(this.dom,O.key,O.keyCode)}};this.flushingAndroidKey=this.view.win.requestAnimationFrame(O)}this.delayedAndroidKey&&"Enter"!=O||(this.delayedAndroidKey={key:O,keyCode:e,force:this.lastChange<Date.now()-50||!!(null===(t=this.delayedAndroidKey)||void 0===t?void 0:t.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame((()=>{this.delayedFlush=-1,this.flush()})))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let O of this.observer.takeRecords())this.queue.push(O);return this.queue}processRecords(){let O=this.pendingRecords();O.length&&(this.queue=[]);let e=-1,t=-1,i=!1;for(let n of O){let O=this.readMutation(n);O&&(O.typeOver&&(i=!0),-1==e?({from:e,to:t}=O):(e=Math.min(O.from,e),t=Math.max(O.to,t)))}return{from:e,to:t,typeOver:i}}readChange(){let{from:O,to:e,typeOver:t}=this.processRecords(),i=this.selectionChanged&&hasSelection(this.dom,this.selectionRange);if(O<0&&!i)return null;O>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let n=new DOMChange(this.view,O,e,t);return this.view.docView.domChanged={newSel:n.newSel?n.newSel.main:null},n}flush(O=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;O&&this.readSelectionRange();let e=this.readChange();if(!e)return this.view.requestMeasure(),!1;let t=this.view.state,i=applyDOMChange(this.view,e);return this.view.state==t&&(e.domChanged||e.newSel&&!e.newSel.main.eq(this.view.state.selection.main))&&this.view.update([]),i}readMutation(O){let e=this.view.docView.nearest(O.target);if(!e||e.ignoreMutation(O))return null;if(e.markDirty("attributes"==O.type),"attributes"==O.type&&(e.flags|=4),"childList"==O.type){let t=findChild(e,O.previousSibling||O.target.previousSibling,-1),i=findChild(e,O.nextSibling||O.target.nextSibling,1);return{from:t?e.posAfter(t):e.posAtStart,to:i?e.posBefore(i):e.posAtEnd,typeOver:!1}}return"characterData"==O.type?{from:e.posAtStart,to:e.posAtEnd,typeOver:O.target.nodeValue==O.oldValue}:null}setWindow(O){O!=this.win&&(this.removeWindowListeners(this.win),this.win=O,this.addWindowListeners(this.win))}addWindowListeners(O){O.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):O.addEventListener("beforeprint",this.onPrint),O.addEventListener("scroll",this.onScroll),O.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(O){O.removeEventListener("scroll",this.onScroll),O.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):O.removeEventListener("beforeprint",this.onPrint),O.document.removeEventListener("selectionchange",this.onSelectionChange)}update(O){this.editContext&&(this.editContext.update(O),O.startState.facet(editable)!=O.state.facet(editable)&&(O.view.contentDOM.editContext=O.state.facet(editable)?this.editContext.editContext:null))}destroy(){var O,e,t;this.stop(),null===(O=this.intersection)||void 0===O||O.disconnect(),null===(e=this.gapIntersection)||void 0===e||e.disconnect(),null===(t=this.resizeScroll)||void 0===t||t.disconnect();for(let O of this.scrollTargets)O.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function findChild(O,e,t){for(;e;){let i=ContentView.get(e);if(i&&i.parent==O)return i;let n=e.parentNode;e=n!=O.dom?n:t>0?e.nextSibling:e.previousSibling}return null}function buildSelectionRangeFromRange(O,e){let t=e.startContainer,i=e.startOffset,n=e.endContainer,r=e.endOffset,a=O.docView.domAtPos(O.state.selection.main.anchor);return isEquivalentPosition(a.node,a.offset,n,r)&&([t,i,n,r]=[n,r,t,i]),{anchorNode:t,anchorOffset:i,focusNode:n,focusOffset:r}}function safariSelectionRangeHack(O,e){if(e.getComposedRanges){let t=e.getComposedRanges(O.root)[0];if(t)return buildSelectionRangeFromRange(O,t)}let t=null;function i(O){O.preventDefault(),O.stopImmediatePropagation(),t=O.getTargetRanges()[0]}return O.contentDOM.addEventListener("beforeinput",i,!0),O.dom.ownerDocument.execCommand("indent"),O.contentDOM.removeEventListener("beforeinput",i,!0),t?buildSelectionRangeFromRange(O,t):null}class EditContextManager{constructor(O){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(O.state);let e=this.editContext=new window.EditContext({text:O.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,O.state.selection.main.anchor))),selectionEnd:this.toContextPos(O.state.selection.main.head)});this.handlers.textupdate=e=>{let t=O.state.selection.main,{anchor:i,head:n}=t,r=this.toEditorPos(e.updateRangeStart),a=this.toEditorPos(e.updateRangeEnd);O.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:e.updateRangeStart,editorBase:r,drifted:!1});let s={from:r,to:a,insert:Text.of(e.text.split("\n"))};if(s.from==this.from&&i<this.from?s.from=i:s.to==this.to&&i>this.to&&(s.to=i),s.from!=s.to||s.insert.length){if((browser.mac||browser.android)&&s.from==n-1&&/^\. ?$/.test(e.text)&&"off"==O.contentDOM.getAttribute("autocorrect")&&(s={from:r,to:a,insert:Text.of([e.text.replace("."," ")])}),this.pendingContextChange=s,!O.state.readOnly){let t=this.to-this.from+(s.to-s.from+s.insert.length);applyDOMChangeInner(O,s,EditorSelection.single(this.toEditorPos(e.selectionStart,t),this.toEditorPos(e.selectionEnd,t)))}this.pendingContextChange&&(this.revertPending(O.state),this.setSelection(O.state))}else{let i=EditorSelection.single(this.toEditorPos(e.selectionStart),this.toEditorPos(e.selectionEnd));i.main.eq(t)||O.dispatch({selection:i,userEvent:"select"})}},this.handlers.characterboundsupdate=t=>{let i=[],n=null;for(let e=this.toEditorPos(t.rangeStart),r=this.toEditorPos(t.rangeEnd);e<r;e++){let t=O.coordsForChar(e);n=t&&new DOMRect(t.left,t.top,t.right-t.left,t.bottom-t.top)||n||new DOMRect,i.push(n)}e.updateCharacterBounds(t.rangeStart,i)},this.handlers.textformatupdate=e=>{let t=[];for(let O of e.getTextFormats()){let e=O.underlineStyle,i=O.underlineThickness;if("None"!=e&&"None"!=i){let n=this.toEditorPos(O.rangeStart),r=this.toEditorPos(O.rangeEnd);if(n<r){let O=`text-decoration: underline ${"Dashed"==e?"dashed ":"Squiggle"==e?"wavy ":""}${"Thin"==i?1:2}px`;t.push(Decoration.mark({attributes:{style:O}}).range(n,r))}}}O.dispatch({effects:setEditContextFormatting.of(Decoration.set(t))})},this.handlers.compositionstart=()=>{O.inputState.composing<0&&(O.inputState.composing=0,O.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(O.inputState.composing=-1,O.inputState.compositionFirstChange=null,this.composing){let{drifted:e}=this.composing;this.composing=null,e&&this.reset(O.state)}};for(let O in this.handlers)e.addEventListener(O,this.handlers[O]);this.measureReq={read:O=>{this.editContext.updateControlBounds(O.contentDOM.getBoundingClientRect());let e=getSelection(O.root);e&&e.rangeCount&&this.editContext.updateSelectionBounds(e.getRangeAt(0).getBoundingClientRect())}}}applyEdits(O){let e=0,t=!1,i=this.pendingContextChange;return O.changes.iterChanges(((n,r,a,s,o)=>{if(t)return;let l=o.length-(r-n);if(i&&r>=i.to){if(i.from==n&&i.to==r&&i.insert.eq(o))return i=this.pendingContextChange=null,e+=l,void(this.to+=l);i=null,this.revertPending(O.state)}if(n+=e,(r+=e)<=this.from)this.from+=l,this.to+=l;else if(n<this.to){if(n<this.from||r>this.to||this.to-this.from+o.length>3e4)return void(t=!0);this.editContext.updateText(this.toContextPos(n),this.toContextPos(r),o.toString()),this.to+=l}e+=l})),i&&!t&&this.revertPending(O.state),!t}update(O){let e=this.pendingContextChange;this.composing&&(this.composing.drifted||O.transactions.some((O=>!O.isUserEvent("input.type")&&O.changes.touchesRange(this.from,this.to))))?(this.composing.drifted=!0,this.composing.editorBase=O.changes.mapPos(this.composing.editorBase)):this.applyEdits(O)&&this.rangeIsValid(O.state)?(O.docChanged||O.selectionSet||e)&&this.setSelection(O.state):(this.pendingContextChange=null,this.reset(O.state)),(O.geometryChanged||O.docChanged||O.selectionSet)&&O.view.requestMeasure(this.measureReq)}resetRange(O){let{head:e}=O.selection.main;this.from=Math.max(0,e-1e4),this.to=Math.min(O.doc.length,e+1e4)}reset(O){this.resetRange(O),this.editContext.updateText(0,this.editContext.text.length,O.doc.sliceString(this.from,this.to)),this.setSelection(O)}revertPending(O){let e=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(e.from),this.toContextPos(e.from+e.insert.length),O.doc.sliceString(e.from,e.to))}setSelection(O){let{main:e}=O.selection,t=this.toContextPos(Math.max(this.from,Math.min(this.to,e.anchor))),i=this.toContextPos(e.head);this.editContext.selectionStart==t&&this.editContext.selectionEnd==i||this.editContext.updateSelection(t,i)}rangeIsValid(O){let{head:e}=O.selection.main;return!(this.from>0&&e-this.from<500||this.to<O.doc.length&&this.to-e<500||this.to-this.from>3e4)}toEditorPos(O,e=this.to-this.from){O=Math.min(O,e);let t=this.composing;return t&&t.drifted?t.editorBase+(O-t.contextBase):O+this.from}toContextPos(O){let e=this.composing;return e&&e.drifted?e.contextBase+(O-e.editorBase):O-this.from}destroy(){for(let O in this.handlers)this.editContext.removeEventListener(O,this.handlers[O])}}class EditorView{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}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(O={}){var e;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),O.parent&&O.parent.appendChild(this.dom);let{dispatch:t}=O;this.dispatchTransactions=O.dispatchTransactions||t&&(O=>O.forEach((O=>t(O,this))))||(O=>this.update(O)),this.dispatch=this.dispatch.bind(this),this._root=O.root||getRoot(O.parent)||document,this.viewState=new ViewState(O.state||EditorState.create(O)),O.scrollTo&&O.scrollTo.is(scrollIntoView)&&(this.viewState.scrollTarget=O.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(viewPlugin).map((O=>new PluginInstance(O)));for(let O of this.plugins)O.update(this);this.observer=new DOMObserver(this),this.inputState=new InputState(this),this.inputState.ensureHandlers(this.plugins),this.docView=new DocView(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),(null===(e=document.fonts)||void 0===e?void 0:e.ready)&&document.fonts.ready.then((()=>this.requestMeasure()))}dispatch(...O){let e=1==O.length&&O[0]instanceof Transaction?O:1==O.length&&Array.isArray(O[0])?O[0]:[this.state.update(...O)];this.dispatchTransactions(e,this)}update(O){if(0!=this.updateState)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let e,t=!1,i=!1,n=this.state;for(let e of O){if(e.startState!=n)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");n=e.state}if(this.destroyed)return void(this.viewState.state=n);let r=this.hasFocus,a=0,s=null;O.some((O=>O.annotation(isFocusChange)))?(this.inputState.notifiedFocused=r,a=1):r!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=r,s=focusChangeTransaction(n,r),s||(a=1));let o=this.observer.delayedAndroidKey,l=null;if(o?(this.observer.clearDelayedAndroidKey(),l=this.observer.readChange(),(l&&!this.state.doc.eq(n.doc)||!this.state.selection.eq(n.selection))&&(l=null)):this.observer.clear(),n.facet(EditorState.phrases)!=this.state.facet(EditorState.phrases))return this.setState(n);e=ViewUpdate.create(this,n,O),e.flags|=a;let Q=this.viewState.scrollTarget;try{this.updateState=2;for(let e of O){if(Q&&(Q=Q.map(e.changes)),e.scrollIntoView){let{main:O}=e.state.selection;Q=new ScrollTarget(O.empty?O:EditorSelection.cursor(O.head,O.head>O.anchor?-1:1))}for(let O of e.effects)O.is(scrollIntoView)&&(Q=O.value.clip(this.state))}this.viewState.update(e,Q),this.bidiCache=CachedOrder.update(this.bidiCache,e.changes),e.empty||(this.updatePlugins(e),this.inputState.update(e)),t=this.docView.update(e),this.state.facet(styleModule)!=this.styleModules&&this.mountStyles(),i=this.updateAttrs(),this.showAnnouncements(O),this.docView.updateSelection(t,O.some((O=>O.isUserEvent("select.pointer"))))}finally{this.updateState=0}if(e.startState.facet(theme)!=e.state.facet(theme)&&(this.viewState.mustMeasureContent=!0),(t||i||Q||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!e.empty)for(let O of this.state.facet(updateListener))try{O(e)}catch(O){logException(this.state,O,"update listener")}(s||l)&&Promise.resolve().then((()=>{s&&this.state==s.startState&&this.dispatch(s),l&&!applyDOMChange(this,l)&&o.force&&dispatchKey(this.contentDOM,o.key,o.keyCode)}))}setState(O){if(0!=this.updateState)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed)return void(this.viewState.state=O);this.updateState=2;let e=this.hasFocus;try{for(let O of this.plugins)O.destroy(this);this.viewState=new ViewState(O),this.plugins=O.facet(viewPlugin).map((O=>new PluginInstance(O))),this.pluginMap.clear();for(let O of this.plugins)O.update(this);this.docView.destroy(),this.docView=new DocView(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}e&&this.focus(),this.requestMeasure()}updatePlugins(O){let e=O.startState.facet(viewPlugin),t=O.state.facet(viewPlugin);if(e!=t){let i=[];for(let n of t){let t=e.indexOf(n);if(t<0)i.push(new PluginInstance(n));else{let e=this.plugins[t];e.mustUpdate=O,i.push(e)}}for(let e of this.plugins)e.mustUpdate!=O&&e.destroy(this);this.plugins=i,this.pluginMap.clear()}else for(let e of this.plugins)e.mustUpdate=O;for(let O=0;O<this.plugins.length;O++)this.plugins[O].update(this);e!=t&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let O of this.plugins){let e=O.value;if(e&&e.docViewUpdate)try{e.docViewUpdate(this)}catch(O){logException(this.state,O,"doc view update listener")}}}measure(O=!0){if(this.destroyed)return;if(this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey)return this.measureScheduled=-1,void this.requestMeasure();this.measureScheduled=0,O&&this.observer.forceFlush();let e=null,t=this.scrollDOM,i=t.scrollTop*this.scaleY,{scrollAnchorPos:n,scrollAnchorHeight:r}=this.viewState;Math.abs(i-this.viewState.scrollTop)>1&&(r=-1),this.viewState.scrollAnchorHeight=-1;try{for(let O=0;;O++){if(r<0)if(isScrolledToBottom(t))n=-1,r=this.viewState.heightMap.height;else{let O=this.viewState.scrollAnchorAt(i);n=O.from,r=O.top}this.updateState=1;let a=this.viewState.measure(this);if(!a&&!this.measureRequests.length&&null==this.viewState.scrollTarget)break;if(O>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let s=[];4&a||([this.measureRequests,s]=[s,this.measureRequests]);let o=s.map((O=>{try{return O.read(this)}catch(O){return logException(this.state,O),BadMeasure}})),l=ViewUpdate.create(this,this.state,[]),Q=!1;l.flags|=a,e?e.flags|=a:e=l,this.updateState=2,l.empty||(this.updatePlugins(l),this.inputState.update(l),this.updateAttrs(),Q=this.docView.update(l),Q&&this.docViewUpdate());for(let O=0;O<s.length;O++)if(o[O]!=BadMeasure)try{let e=s[O];e.write&&e.write(o[O],this)}catch(O){logException(this.state,O)}if(Q&&this.docView.updateSelection(!0),!l.viewportChanged&&0==this.measureRequests.length){if(this.viewState.editorHeight){if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,r=-1;continue}{let O=(n<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(n).top)-r;if(O>1||O<-1){i+=O,t.scrollTop=i/this.scaleY,r=-1;continue}}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(e&&!e.empty)for(let O of this.state.facet(updateListener))O(e)}get themeClasses(){return baseThemeID+" "+(this.state.facet(darkTheme)?baseDarkID:baseLightID)+" "+this.state.facet(theme)}updateAttrs(){let O=attrsFromFacet(this,editorAttributes,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),e={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(editable)?"true":"false",class:"cm-content",style:`${browser.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(e["aria-readonly"]="true"),attrsFromFacet(this,contentAttributes,e);let t=this.observer.ignore((()=>{let t=updateAttrs(this.contentDOM,this.contentAttrs,e),i=updateAttrs(this.dom,this.editorAttrs,O);return t||i}));return this.editorAttrs=O,this.contentAttrs=e,t}showAnnouncements(O){let e=!0;for(let t of O)for(let O of t.effects)if(O.is(EditorView.announce)){e&&(this.announceDOM.textContent=""),e=!1,this.announceDOM.appendChild(document.createElement("div")).textContent=O.value}}mountStyles(){this.styleModules=this.state.facet(styleModule);let O=this.state.facet(EditorView.cspNonce);StyleModule.mount(this.root,this.styleModules.concat(baseTheme$1).reverse(),O?{nonce:O}:void 0)}readMeasured(){if(2==this.updateState)throw new Error("Reading the editor layout isn't allowed during an update");0==this.updateState&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(O){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame((()=>this.measure()))),O){if(this.measureRequests.indexOf(O)>-1)return;if(null!=O.key)for(let e=0;e<this.measureRequests.length;e++)if(this.measureRequests[e].key===O.key)return void(this.measureRequests[e]=O);this.measureRequests.push(O)}}plugin(O){let e=this.pluginMap.get(O);return(void 0===e||e&&e.spec!=O)&&this.pluginMap.set(O,e=this.plugins.find((e=>e.spec==O))||null),e&&e.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(O){return this.readMeasured(),this.viewState.elementAtHeight(O)}lineBlockAtHeight(O){return this.readMeasured(),this.viewState.lineBlockAtHeight(O)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(O){return this.viewState.lineBlockAt(O)}get contentHeight(){return this.viewState.contentHeight}moveByChar(O,e,t){return skipAtoms(this,O,moveByChar(this,O,e,t))}moveByGroup(O,e){return skipAtoms(this,O,moveByChar(this,O,e,(e=>byGroup(this,O.head,e))))}visualLineSide(O,e){let t=this.bidiSpans(O),i=this.textDirectionAt(O.from),n=t[e?t.length-1:0];return EditorSelection.cursor(n.side(e,i)+O.from,n.forward(!e,i)?1:-1)}moveToLineBoundary(O,e,t=!0){return moveToLineBoundary(this,O,e,t)}moveVertically(O,e,t){return skipAtoms(this,O,moveVertically(this,O,e,t))}domAtPos(O){return this.docView.domAtPos(O)}posAtDOM(O,e=0){return this.docView.posFromDOM(O,e)}posAtCoords(O,e=!0){return this.readMeasured(),posAtCoords(this,O,e)}coordsAtPos(O,e=1){this.readMeasured();let t=this.docView.coordsAt(O,e);if(!t||t.left==t.right)return t;let i=this.state.doc.lineAt(O),n=this.bidiSpans(i);return flattenRect(t,n[BidiSpan.find(n,O-i.from,-1,e)].dir==Direction.LTR==e>0)}coordsForChar(O){return this.readMeasured(),this.docView.coordsForChar(O)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(O){return!this.state.facet(perLineTextDirection)||O<this.viewport.from||O>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(O))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(O){if(O.length>MaxBidiLine)return trivialOrder(O.length);let e,t=this.textDirectionAt(O.from);for(let i of this.bidiCache)if(i.from==O.from&&i.dir==t&&(i.fresh||isolatesEq(i.isolates,e=getIsolatedRanges(this,O))))return i.order;e||(e=getIsolatedRanges(this,O));let i=computeOrder(O.text,t,e);return this.bidiCache.push(new CachedOrder(O.from,O.to,t,e,!0,i)),i}get hasFocus(){var O;return(this.dom.ownerDocument.hasFocus()||browser.safari&&(null===(O=this.inputState)||void 0===O?void 0:O.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore((()=>{focusPreventScroll(this.contentDOM),this.docView.updateSelection()}))}setRoot(O){this._root!=O&&(this._root=O,this.observer.setWindow((9==O.nodeType?O:O.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let O of this.plugins)O.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(O,e={}){return scrollIntoView.of(new ScrollTarget("number"==typeof O?EditorSelection.cursor(O):O,e.y,e.x,e.yMargin,e.xMargin))}scrollSnapshot(){let{scrollTop:O,scrollLeft:e}=this.scrollDOM,t=this.viewState.scrollAnchorAt(O);return scrollIntoView.of(new ScrollTarget(EditorSelection.cursor(t.from),"start","start",t.top-O,e,!0))}setTabFocusMode(O){null==O?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:"boolean"==typeof O?this.inputState.tabFocusMode=O?0:-1:0!=this.inputState.tabFocusMode&&(this.inputState.tabFocusMode=Date.now()+O)}static domEventHandlers(O){return ViewPlugin.define((()=>({})),{eventHandlers:O})}static domEventObservers(O){return ViewPlugin.define((()=>({})),{eventObservers:O})}static theme(O,e){let t=StyleModule.newName(),i=[theme.of(t),styleModule.of(buildTheme(`.${t}`,O))];return e&&e.dark&&i.push(darkTheme.of(!0)),i}static baseTheme(O){return Prec.lowest(styleModule.of(buildTheme("."+baseThemeID,O,lightDarkIDs)))}static findFromDOM(O){var e;let t=O.querySelector(".cm-content"),i=t&&ContentView.get(t)||ContentView.get(O);return(null===(e=null==i?void 0:i.rootView)||void 0===e?void 0:e.view)||null}}EditorView.styleModule=styleModule,EditorView.inputHandler=inputHandler,EditorView.clipboardInputFilter=clipboardInputFilter,EditorView.clipboardOutputFilter=clipboardOutputFilter,EditorView.scrollHandler=scrollHandler,EditorView.focusChangeEffect=focusChangeEffect,EditorView.perLineTextDirection=perLineTextDirection,EditorView.exceptionSink=exceptionSink,EditorView.updateListener=updateListener,EditorView.editable=editable,EditorView.mouseSelectionStyle=mouseSelectionStyle,EditorView.dragMovesSelection=dragMovesSelection$1,EditorView.clickAddsSelectionRange=clickAddsSelectionRange,EditorView.decorations=decorations,EditorView.outerDecorations=outerDecorations,EditorView.atomicRanges=atomicRanges,EditorView.bidiIsolatedRanges=bidiIsolatedRanges,EditorView.scrollMargins=scrollMargins,EditorView.darkTheme=darkTheme,EditorView.cspNonce=Facet.define({combine:O=>O.length?O[0]:""}),EditorView.contentAttributes=contentAttributes,EditorView.editorAttributes=editorAttributes,EditorView.lineWrapping=EditorView.contentAttributes.of({class:"cm-lineWrapping"}),EditorView.announce=StateEffect.define();const MaxBidiLine=4096,BadMeasure={};class CachedOrder{constructor(O,e,t,i,n,r){this.from=O,this.to=e,this.dir=t,this.isolates=i,this.fresh=n,this.order=r}static update(O,e){if(e.empty&&!O.some((O=>O.fresh)))return O;let t=[],i=O.length?O[O.length-1].dir:Direction.LTR;for(let n=Math.max(0,O.length-10);n<O.length;n++){let r=O[n];r.dir!=i||e.touchesRange(r.from,r.to)||t.push(new CachedOrder(e.mapPos(r.from,1),e.mapPos(r.to,-1),r.dir,r.isolates,!1,r.order))}return t}}function attrsFromFacet(O,e,t){for(let i=O.state.facet(e),n=i.length-1;n>=0;n--){let e=i[n],r="function"==typeof e?e(O):e;r&&combineAttrs(r,t)}return t}const currentPlatform=browser.mac?"mac":browser.windows?"win":browser.linux?"linux":"key";function normalizeKeyName(O,e){const t=O.split(/-(?!$)/);let i,n,r,a,s=t[t.length-1];"Space"==s&&(s=" ");for(let O=0;O<t.length-1;++O){const s=t[O];if(/^(cmd|meta|m)$/i.test(s))a=!0;else if(/^a(lt)?$/i.test(s))i=!0;else if(/^(c|ctrl|control)$/i.test(s))n=!0;else if(/^s(hift)?$/i.test(s))r=!0;else{if(!/^mod$/i.test(s))throw new Error("Unrecognized modifier name: "+s);"mac"==e?a=!0:n=!0}}return i&&(s="Alt-"+s),n&&(s="Ctrl-"+s),a&&(s="Meta-"+s),r&&(s="Shift-"+s),s}function modifiers(O,e,t){return e.altKey&&(O="Alt-"+O),e.ctrlKey&&(O="Ctrl-"+O),e.metaKey&&(O="Meta-"+O),!1!==t&&e.shiftKey&&(O="Shift-"+O),O}const handleKeyEvents=Prec.default(EditorView.domEventHandlers({keydown:(O,e)=>runHandlers(getKeymap(e.state),O,e,"editor")})),keymap=Facet.define({enables:handleKeyEvents}),Keymaps=new WeakMap;function getKeymap(O){let e=O.facet(keymap),t=Keymaps.get(e);return t||Keymaps.set(e,t=buildKeymap(e.reduce(((O,e)=>O.concat(e)),[]))),t}let storedPrefix=null;const PrefixTimeout=4e3;function buildKeymap(O,e=currentPlatform){let t=Object.create(null),i=Object.create(null),n=(O,e)=>{let t=i[O];if(null==t)i[O]=e;else if(t!=e)throw new Error("Key binding "+O+" is used both as a regular binding and as a multi-stroke prefix")},r=(O,i,r,a,s)=>{var o,l;let Q=t[O]||(t[O]=Object.create(null)),c=i.split(/ (?!$)/).map((O=>normalizeKeyName(O,e)));for(let e=1;e<c.length;e++){let t=c.slice(0,e).join(" ");n(t,!0),Q[t]||(Q[t]={preventDefault:!0,stopPropagation:!1,run:[e=>{let i=storedPrefix={view:e,prefix:t,scope:O};return setTimeout((()=>{storedPrefix==i&&(storedPrefix=null)}),PrefixTimeout),!0}]})}let h=c.join(" ");n(h,!1);let $=Q[h]||(Q[h]={preventDefault:!1,stopPropagation:!1,run:(null===(l=null===(o=Q._any)||void 0===o?void 0:o.run)||void 0===l?void 0:l.slice())||[]});r&&$.run.push(r),a&&($.preventDefault=!0),s&&($.stopPropagation=!0)};for(let i of O){let O=i.scope?i.scope.split(" "):["editor"];if(i.any)for(let e of O){let O=t[e]||(t[e]=Object.create(null));O._any||(O._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:n}=i;for(let e in O)O[e].run.push((O=>n(O,currentKeyEvent)))}let n=i[e]||i.key;if(n)for(let e of O)r(e,n,i.run,i.preventDefault,i.stopPropagation),i.shift&&r(e,"Shift-"+n,i.shift,i.preventDefault,i.stopPropagation)}return t}let currentKeyEvent=null;function runHandlers(O,e,t,i){currentKeyEvent=e;let n=keyName(e),r=codePointSize(codePointAt(n,0))==n.length&&" "!=n,a="",s=!1,o=!1,l=!1;storedPrefix&&storedPrefix.view==t&&storedPrefix.scope==i&&(a=storedPrefix.prefix+" ",modifierCodes.indexOf(e.keyCode)<0&&(o=!0,storedPrefix=null));let Q,c,h=new Set,$=O=>{if(O){for(let e of O.run)if(!h.has(e)&&(h.add(e),e(t)))return O.stopPropagation&&(l=!0),!0;O.preventDefault&&(O.stopPropagation&&(l=!0),o=!0)}return!1},d=O[i];return d&&($(d[a+modifiers(n,e,!r)])?s=!0:r&&(e.altKey||e.metaKey||e.ctrlKey)&&!(browser.windows&&e.ctrlKey&&e.altKey)&&(Q=base[e.keyCode])&&Q!=n?($(d[a+modifiers(Q,e,!0)])||e.shiftKey&&(c=shift[e.keyCode])!=n&&c!=Q&&$(d[a+modifiers(c,e,!1)]))&&(s=!0):r&&e.shiftKey&&$(d[a+modifiers(n,e,!0)])&&(s=!0),!s&&$(d._any)&&(s=!0)),o&&(s=!0),s&&l&&e.stopPropagation(),currentKeyEvent=null,s}const CanHidePrimary=!(browser.ios&&browser.webkit&&browser.webkit_version<534),themeSpec={".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"}},".cm-content":{"& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}};CanHidePrimary&&(themeSpec[".cm-line"].caretColor=themeSpec[".cm-content"].caretColor="transparent !important");class GutterMarker extends RangeValue{compare(O){return this==O||this.constructor==O.constructor&&this.eq(O)}eq(O){return!1}destroy(O){}}GutterMarker.prototype.elementClass="",GutterMarker.prototype.toDOM=void 0,GutterMarker.prototype.mapMode=MapMode.TrackBefore,GutterMarker.prototype.startSide=GutterMarker.prototype.endSide=-1,GutterMarker.prototype.point=!0;const DefaultBufferLength=1024;let nextPropID=0;class Range{constructor(O,e){this.from=O,this.to=e}}class NodeProp{constructor(O={}){this.id=nextPropID++,this.perNode=!!O.perNode,this.deserialize=O.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(O){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return"function"!=typeof O&&(O=NodeType.match(O)),e=>{let t=O(e);return void 0===t?null:[this,t]}}}NodeProp.closedBy=new NodeProp({deserialize:O=>O.split(" ")}),NodeProp.openedBy=new NodeProp({deserialize:O=>O.split(" ")}),NodeProp.group=new NodeProp({deserialize:O=>O.split(" ")}),NodeProp.isolate=new NodeProp({deserialize:O=>{if(O&&"rtl"!=O&&"ltr"!=O&&"auto"!=O)throw new RangeError("Invalid value for isolate: "+O);return O||"auto"}}),NodeProp.contextHash=new NodeProp({perNode:!0}),NodeProp.lookAhead=new NodeProp({perNode:!0}),NodeProp.mounted=new NodeProp({perNode:!0});class MountedTree{constructor(O,e,t){this.tree=O,this.overlay=e,this.parser=t}static get(O){return O&&O.props&&O.props[NodeProp.mounted.id]}}const noProps=Object.create(null);class NodeType{constructor(O,e,t,i=0){this.name=O,this.props=e,this.id=t,this.flags=i}static define(O){let e=O.props&&O.props.length?Object.create(null):noProps,t=(O.top?1:0)|(O.skipped?2:0)|(O.error?4:0)|(null==O.name?8:0),i=new NodeType(O.name||"",e,O.id,t);if(O.props)for(let t of O.props)if(Array.isArray(t)||(t=t(i)),t){if(t[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");e[t[0].id]=t[1]}return i}prop(O){return this.props[O.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(O){if("string"==typeof O){if(this.name==O)return!0;let e=this.prop(NodeProp.group);return!!e&&e.indexOf(O)>-1}return this.id==O}static match(O){let e=Object.create(null);for(let t in O)for(let i of t.split(" "))e[i]=O[t];return O=>{for(let t=O.prop(NodeProp.group),i=-1;i<(t?t.length:0);i++){let n=e[i<0?O.name:t[i]];if(n)return n}}}}NodeType.none=new NodeType("",Object.create(null),0,8);class NodeSet{constructor(O){this.types=O;for(let e=0;e<O.length;e++)if(O[e].id!=e)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...O){let e=[];for(let t of this.types){let i=null;for(let e of O){let O=e(t);O&&(i||(i=Object.assign({},t.props)),i[O[0].id]=O[1])}e.push(i?new NodeType(t.name,i,t.id,t.flags):t)}return new NodeSet(e)}}const CachedNode=new WeakMap,CachedInnerNode=new WeakMap;var IterMode;!function(O){O[O.ExcludeBuffers=1]="ExcludeBuffers",O[O.IncludeAnonymous=2]="IncludeAnonymous",O[O.IgnoreMounts=4]="IgnoreMounts",O[O.IgnoreOverlays=8]="IgnoreOverlays"}(IterMode||(IterMode={}));class Tree{constructor(O,e,t,i,n){if(this.type=O,this.children=e,this.positions=t,this.length=i,this.props=null,n&&n.length){this.props=Object.create(null);for(let[O,e]of n)this.props["number"==typeof O?O:O.id]=e}}toString(){let O=MountedTree.get(this);if(O&&!O.overlay)return O.tree.toString();let e="";for(let O of this.children){let t=O.toString();t&&(e&&(e+=","),e+=t)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(e.length?"("+e+")":""):e}cursor(O=0){return new TreeCursor(this.topNode,O)}cursorAt(O,e=0,t=0){let i=CachedNode.get(this)||this.topNode,n=new TreeCursor(i);return n.moveTo(O,e),CachedNode.set(this,n._tree),n}get topNode(){return new TreeNode(this,0,0,null)}resolve(O,e=0){let t=resolveNode(CachedNode.get(this)||this.topNode,O,e,!1);return CachedNode.set(this,t),t}resolveInner(O,e=0){let t=resolveNode(CachedInnerNode.get(this)||this.topNode,O,e,!0);return CachedInnerNode.set(this,t),t}resolveStack(O,e=0){return stackIterator(this,O,e)}iterate(O){let{enter:e,leave:t,from:i=0,to:n=this.length}=O,r=O.mode||0,a=(r&IterMode.IncludeAnonymous)>0;for(let O=this.cursor(r|IterMode.IncludeAnonymous);;){let r=!1;if(O.from<=n&&O.to>=i&&(!a&&O.type.isAnonymous||!1!==e(O))){if(O.firstChild())continue;r=!0}for(;r&&t&&(a||!O.type.isAnonymous)&&t(O),!O.nextSibling();){if(!O.parent())return;r=!0}}}prop(O){return O.perNode?this.props?this.props[O.id]:void 0:this.type.prop(O)}get propValues(){let O=[];if(this.props)for(let e in this.props)O.push([+e,this.props[e]]);return O}balance(O={}){return this.children.length<=8?this:balanceRange(NodeType.none,this.children,this.positions,0,this.children.length,0,this.length,((O,e,t)=>new Tree(this.type,O,e,t,this.propValues)),O.makeTree||((O,e,t)=>new Tree(NodeType.none,O,e,t)))}static build(O){return buildTree(O)}}Tree.empty=new Tree(NodeType.none,[],[],0);class FlatBufferCursor{constructor(O,e){this.buffer=O,this.index=e}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 FlatBufferCursor(this.buffer,this.index)}}class TreeBuffer{constructor(O,e,t){this.buffer=O,this.length=e,this.set=t}get type(){return NodeType.none}toString(){let O=[];for(let e=0;e<this.buffer.length;)O.push(this.childString(e)),e=this.buffer[e+3];return O.join(",")}childString(O){let e=this.buffer[O],t=this.buffer[O+3],i=this.set.types[e],n=i.name;if(/\W/.test(n)&&!i.isError&&(n=JSON.stringify(n)),t==(O+=4))return n;let r=[];for(;O<t;)r.push(this.childString(O)),O=this.buffer[O+3];return n+"("+r.join(",")+")"}findChild(O,e,t,i,n){let{buffer:r}=this,a=-1;for(let s=O;s!=e&&!(checkSide(n,i,r[s+1],r[s+2])&&(a=s,t>0));s=r[s+3]);return a}slice(O,e,t){let i=this.buffer,n=new Uint16Array(e-O),r=0;for(let a=O,s=0;a<e;){n[s++]=i[a++],n[s++]=i[a++]-t;let e=n[s++]=i[a++]-t;n[s++]=i[a++]-O,r=Math.max(r,e)}return new TreeBuffer(n,r,this.set)}}function checkSide(O,e,t,i){switch(O){case-2:return t<e;case-1:return i>=e&&t<e;case 0:return t<e&&i>e;case 1:return t<=e&&i>e;case 2:return i>e;case 4:return!0}}function resolveNode(O,e,t,i){for(var n;O.from==O.to||(t<1?O.from>=e:O.from>e)||(t>-1?O.to<=e:O.to<e);){let e=!i&&O instanceof TreeNode&&O.index<0?null:O.parent;if(!e)return O;O=e}let r=i?0:IterMode.IgnoreOverlays;if(i)for(let i=O,a=i.parent;a;i=a,a=i.parent)i instanceof TreeNode&&i.index<0&&(null===(n=a.enter(e,t,r))||void 0===n?void 0:n.from)!=i.from&&(O=a);for(;;){let i=O.enter(e,t,r);if(!i)return O;O=i}}class BaseNode{cursor(O=0){return new TreeCursor(this,O)}getChild(O,e=null,t=null){let i=getChildren(this,O,e,t);return i.length?i[0]:null}getChildren(O,e=null,t=null){return getChildren(this,O,e,t)}resolve(O,e=0){return resolveNode(this,O,e,!1)}resolveInner(O,e=0){return resolveNode(this,O,e,!0)}matchContext(O){return matchNodeContext(this.parent,O)}enterUnfinishedNodesBefore(O){let e=this.childBefore(O),t=this;for(;e;){let O=e.lastChild;if(!O||O.to!=e.to)break;O.type.isError&&O.from==O.to?(t=e,e=O.prevSibling):e=O}return t}get node(){return this}get next(){return this.parent}}class TreeNode extends BaseNode{constructor(O,e,t,i){super(),this._tree=O,this.from=e,this.index=t,this._parent=i}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(O,e,t,i,n=0){for(let r=this;;){for(let{children:a,positions:s}=r._tree,o=e>0?a.length:-1;O!=o;O+=e){let o=a[O],l=s[O]+r.from;if(checkSide(i,t,l,l+o.length))if(o instanceof TreeBuffer){if(n&IterMode.ExcludeBuffers)continue;let a=o.findChild(0,o.buffer.length,e,t-l,i);if(a>-1)return new BufferNode(new BufferContext(r,o,O,l),null,a)}else if(n&IterMode.IncludeAnonymous||!o.type.isAnonymous||hasChild(o)){let a;if(!(n&IterMode.IgnoreMounts)&&(a=MountedTree.get(o))&&!a.overlay)return new TreeNode(a.tree,l,O,r);let s=new TreeNode(o,l,O,r);return n&IterMode.IncludeAnonymous||!s.type.isAnonymous?s:s.nextChild(e<0?o.children.length-1:0,e,t,i)}}if(n&IterMode.IncludeAnonymous||!r.type.isAnonymous)return null;if(O=r.index>=0?r.index+e:e<0?-1:r._parent._tree.children.length,r=r._parent,!r)return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(O){return this.nextChild(0,1,O,2)}childBefore(O){return this.nextChild(this._tree.children.length-1,-1,O,-2)}enter(O,e,t=0){let i;if(!(t&IterMode.IgnoreOverlays)&&(i=MountedTree.get(this._tree))&&i.overlay){let t=O-this.from;for(let{from:O,to:n}of i.overlay)if((e>0?O<=t:O<t)&&(e<0?n>=t:n>t))return new TreeNode(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,O,e,t)}nextSignificantParent(){let O=this;for(;O.type.isAnonymous&&O._parent;)O=O._parent;return O}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function getChildren(O,e,t,i){let n=O.cursor(),r=[];if(!n.firstChild())return r;if(null!=t)for(let O=!1;!O;)if(O=n.type.is(t),!n.nextSibling())return r;for(;;){if(null!=i&&n.type.is(i))return r;if(n.type.is(e)&&r.push(n.node),!n.nextSibling())return null==i?r:[]}}function matchNodeContext(O,e,t=e.length-1){for(let i=O;t>=0;i=i.parent){if(!i)return!1;if(!i.type.isAnonymous){if(e[t]&&e[t]!=i.name)return!1;t--}}return!0}class BufferContext{constructor(O,e,t,i){this.parent=O,this.buffer=e,this.index=t,this.start=i}}class BufferNode extends BaseNode{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(O,e,t){super(),this.context=O,this._parent=e,this.index=t,this.type=O.buffer.set.types[O.buffer.buffer[t]]}child(O,e,t){let{buffer:i}=this.context,n=i.findChild(this.index+4,i.buffer[this.index+3],O,e-this.context.start,t);return n<0?null:new BufferNode(this.context,this,n)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(O){return this.child(1,O,2)}childBefore(O){return this.child(-1,O,-2)}enter(O,e,t=0){if(t&IterMode.ExcludeBuffers)return null;let{buffer:i}=this.context,n=i.findChild(this.index+4,i.buffer[this.index+3],e>0?1:-1,O-this.context.start,e);return n<0?null:new BufferNode(this.context,this,n)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(O){return this._parent?null:this.context.parent.nextChild(this.context.index+O,O,0,4)}get nextSibling(){let{buffer:O}=this.context,e=O.buffer[this.index+3];return e<(this._parent?O.buffer[this._parent.index+3]:O.buffer.length)?new BufferNode(this.context,this._parent,e):this.externalSibling(1)}get prevSibling(){let{buffer:O}=this.context,e=this._parent?this._parent.index+4:0;return this.index==e?this.externalSibling(-1):new BufferNode(this.context,this._parent,O.findChild(e,this.index,-1,0,4))}get tree(){return null}toTree(){let O=[],e=[],{buffer:t}=this.context,i=this.index+4,n=t.buffer[this.index+3];if(n>i){let r=t.buffer[this.index+1];O.push(t.slice(i,n,r)),e.push(0)}return new Tree(this.type,O,e,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function iterStack(O){if(!O.length)return null;let e=0,t=O[0];for(let i=1;i<O.length;i++){let n=O[i];(n.from>t.from||n.to<t.to)&&(t=n,e=i)}let i=t instanceof TreeNode&&t.index<0?null:t.parent,n=O.slice();return i?n[e]=i:n.splice(e,1),new StackIterator(n,t)}class StackIterator{constructor(O,e){this.heads=O,this.node=e}get next(){return iterStack(this.heads)}}function stackIterator(O,e,t){let i=O.resolveInner(e,t),n=null;for(let O=i instanceof TreeNode?i:i.context.parent;O;O=O.parent)if(O.index<0){let r=O.parent;(n||(n=[i])).push(r.resolve(e,t)),O=r}else{let r=MountedTree.get(O.tree);if(r&&r.overlay&&r.overlay[0].from<=e&&r.overlay[r.overlay.length-1].to>=e){let a=new TreeNode(r.tree,r.overlay[0].from+O.from,-1,O);(n||(n=[i])).push(resolveNode(a,e,t,!1))}}return n?iterStack(n):i}class TreeCursor{get name(){return this.type.name}constructor(O,e=0){if(this.mode=e,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,O instanceof TreeNode)this.yieldNode(O);else{this._tree=O.context.parent,this.buffer=O.context;for(let e=O._parent;e;e=e._parent)this.stack.unshift(e.index);this.bufferNode=O,this.yieldBuf(O.index)}}yieldNode(O){return!!O&&(this._tree=O,this.type=O.type,this.from=O.from,this.to=O.to,!0)}yieldBuf(O,e){this.index=O;let{start:t,buffer:i}=this.buffer;return this.type=e||i.set.types[i.buffer[O]],this.from=t+i.buffer[O+1],this.to=t+i.buffer[O+2],!0}yield(O){return!!O&&(O instanceof TreeNode?(this.buffer=null,this.yieldNode(O)):(this.buffer=O.context,this.yieldBuf(O.index,O.type)))}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(O,e,t){if(!this.buffer)return this.yield(this._tree.nextChild(O<0?this._tree._tree.children.length-1:0,O,e,t,this.mode));let{buffer:i}=this.buffer,n=i.findChild(this.index+4,i.buffer[this.index+3],O,e-this.buffer.start,t);return!(n<0)&&(this.stack.push(this.index),this.yieldBuf(n))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(O){return this.enterChild(1,O,2)}childBefore(O){return this.enterChild(-1,O,-2)}enter(O,e,t=this.mode){return this.buffer?!(t&IterMode.ExcludeBuffers)&&this.enterChild(1,O,e):this.yield(this._tree.enter(O,e,t))}parent(){if(!this.buffer)return this.yieldNode(this.mode&IterMode.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let O=this.mode&IterMode.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(O)}sibling(O){if(!this.buffer)return!!this._tree._parent&&this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+O,O,0,4,this.mode));let{buffer:e}=this.buffer,t=this.stack.length-1;if(O<0){let O=t<0?0:this.stack[t]+4;if(this.index!=O)return this.yieldBuf(e.findChild(O,this.index,-1,0,4))}else{let O=e.buffer[this.index+3];if(O<(t<0?e.buffer.length:e.buffer[this.stack[t]+3]))return this.yieldBuf(O)}return t<0&&this.yield(this.buffer.parent.nextChild(this.buffer.index+O,O,0,4,this.mode))}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(O){let e,t,{buffer:i}=this;if(i){if(O>0){if(this.index<i.buffer.buffer.length)return!1}else for(let O=0;O<this.index;O++)if(i.buffer.buffer[O+3]<this.index)return!1;({index:e,parent:t}=i)}else({index:e,_parent:t}=this._tree);for(;t;({index:e,_parent:t}=t))if(e>-1)for(let i=e+O,n=O<0?-1:t._tree.children.length;i!=n;i+=O){let O=t._tree.children[i];if(this.mode&IterMode.IncludeAnonymous||O instanceof TreeBuffer||!O.type.isAnonymous||hasChild(O))return!1}return!0}move(O,e){if(e&&this.enterChild(O,0,4))return!0;for(;;){if(this.sibling(O))return!0;if(this.atLastNode(O)||!this.parent())return!1}}next(O=!0){return this.move(1,O)}prev(O=!0){return this.move(-1,O)}moveTo(O,e=0){for(;(this.from==this.to||(e<1?this.from>=O:this.from>O)||(e>-1?this.to<=O:this.to<O))&&this.parent(););for(;this.enterChild(1,O,e););return this}get node(){if(!this.buffer)return this._tree;let O=this.bufferNode,e=null,t=0;if(O&&O.context==this.buffer)O:for(let i=this.index,n=this.stack.length;n>=0;){for(let r=O;r;r=r._parent)if(r.index==i){if(i==this.index)return r;e=r,t=n+1;break O}i=this.stack[--n]}for(let O=t;O<this.stack.length;O++)e=new BufferNode(this.buffer,e,this.stack[O]);return this.bufferNode=new BufferNode(this.buffer,e,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(O,e){for(let t=0;;){let i=!1;if(this.type.isAnonymous||!1!==O(this)){if(this.firstChild()){t++;continue}this.type.isAnonymous||(i=!0)}for(;;){if(i&&e&&e(this),i=this.type.isAnonymous,!t)return;if(this.nextSibling())break;this.parent(),t--,i=!0}}}matchContext(O){if(!this.buffer)return matchNodeContext(this.node.parent,O);let{buffer:e}=this.buffer,{types:t}=e.set;for(let i=O.length-1,n=this.stack.length-1;i>=0;n--){if(n<0)return matchNodeContext(this._tree,O,i);let r=t[e.buffer[this.stack[n]]];if(!r.isAnonymous){if(O[i]&&O[i]!=r.name)return!1;i--}}return!0}}function hasChild(O){return O.children.some((O=>O instanceof TreeBuffer||!O.type.isAnonymous||hasChild(O)))}function buildTree(O){var e;let{buffer:t,nodeSet:i,maxBufferLength:n=DefaultBufferLength,reused:r=[],minRepeatType:a=i.types.length}=O,s=Array.isArray(t)?new FlatBufferCursor(t,t.length):t,o=i.types,l=0,Q=0;function c(O,e,t,u,f,g){let{id:S,start:P,end:m,size:X}=s,y=Q,x=l;for(;X<0;){if(s.next(),-1==X){let e=r[S];return t.push(e),void u.push(P-O)}if(-3==X)return void(l=S);if(-4==X)return void(Q=S);throw new RangeError(`Unrecognized record size: ${X}`)}let T,b,w=o[S],k=P-O;if(m-P<=n&&(b=function(O,e){let t=s.fork(),i=0,r=0,o=0,l=t.end-n,Q={size:0,start:0,skip:0};O:for(let n=t.pos-O;t.pos>n;){let O=t.size;if(t.id==e&&O>=0){Q.size=i,Q.start=r,Q.skip=o,o+=4,i+=4,t.next();continue}let s=t.pos-O;if(O<0||s<n||t.start<l)break;let c=t.id>=a?4:0,h=t.start;for(t.next();t.pos>s;){if(t.size<0){if(-3!=t.size)break O;c+=4}else t.id>=a&&(c+=4);t.next()}r=h,i+=O,o+=c}(e<0||i==O)&&(Q.size=i,Q.start=r,Q.skip=o);return Q.size>4?Q:void 0}(s.pos-e,f))){let e=new Uint16Array(b.size-b.skip),t=s.pos-b.size,n=e.length;for(;s.pos>t;)n=p(b.start,e,n);T=new TreeBuffer(e,m-b.start,i),k=b.start-O}else{let O=s.pos-X;s.next();let e=[],t=[],i=S>=a?S:-1,r=0,o=m;for(;s.pos>O;)i>=0&&s.id==i&&s.size>=0?(s.end<=o-n&&($(e,t,P,r,s.end,o,i,y,x),r=e.length,o=s.end),s.next()):g>2500?h(P,O,e,t):c(P,O,e,t,i,g+1);if(i>=0&&r>0&&r<e.length&&$(e,t,P,r,P,o,i,y,x),e.reverse(),t.reverse(),i>-1&&r>0){let O=function(O,e){return(t,i,n)=>{let r,a,s=0,o=t.length-1;if(o>=0&&(r=t[o])instanceof Tree){if(!o&&r.type==O&&r.length==n)return r;(a=r.prop(NodeProp.lookAhead))&&(s=i[o]+r.length+a)}return d(O,t,i,n,s,e)}}(w,x);T=balanceRange(w,e,t,0,e.length,0,m-P,O,O)}else T=d(w,e,t,m-P,y-m,x)}t.push(T),u.push(k)}function h(O,e,t,r){let a=[],o=0,l=-1;for(;s.pos>e;){let{id:O,start:e,end:t,size:i}=s;if(i>4)s.next();else{if(l>-1&&e<l)break;l<0&&(l=t-n),a.push(O,e,t),o++,s.next()}}if(o){let e=new Uint16Array(4*o),n=a[a.length-2];for(let O=a.length-3,t=0;O>=0;O-=3)e[t++]=a[O],e[t++]=a[O+1]-n,e[t++]=a[O+2]-n,e[t++]=t;t.push(new TreeBuffer(e,a[2]-n,i)),r.push(n-O)}}function $(O,e,t,n,r,a,s,o,l){let Q=[],c=[];for(;O.length>n;)Q.push(O.pop()),c.push(e.pop()+t-r);O.push(d(i.types[s],Q,c,a-r,o-a,l)),e.push(r-t)}function d(O,e,t,i,n,r,a){if(r){let O=[NodeProp.contextHash,r];a=a?[O].concat(a):[O]}if(n>25){let O=[NodeProp.lookAhead,n];a=a?[O].concat(a):[O]}return new Tree(O,e,t,i,a)}function p(O,e,t){let{id:i,start:n,end:r,size:o}=s;if(s.next(),o>=0&&i<a){let a=t;if(o>4){let i=s.pos-(o-4);for(;s.pos>i;)t=p(O,e,t)}e[--t]=a,e[--t]=r-O,e[--t]=n-O,e[--t]=i}else-3==o?l=i:-4==o&&(Q=i);return t}let u=[],f=[];for(;s.pos>0;)c(O.start||0,O.bufferStart||0,u,f,-1,0);let g=null!==(e=O.length)&&void 0!==e?e:u.length?f[0]+u[0].length:0;return new Tree(o[O.topID],u.reverse(),f.reverse(),g)}const nodeSizeCache=new WeakMap;function nodeSize(O,e){if(!O.isAnonymous||e instanceof TreeBuffer||e.type!=O)return 1;let t=nodeSizeCache.get(e);if(null==t){t=1;for(let i of e.children){if(i.type!=O||!(i instanceof Tree)){t=1;break}t+=nodeSize(O,i)}nodeSizeCache.set(e,t)}return t}function balanceRange(O,e,t,i,n,r,a,s,o){let l=0;for(let t=i;t<n;t++)l+=nodeSize(O,e[t]);let Q=Math.ceil(1.5*l/8),c=[],h=[];return function e(t,i,n,a,s){for(let l=n;l<a;){let n=l,$=i[l],d=nodeSize(O,t[l]);for(l++;l<a;l++){let e=nodeSize(O,t[l]);if(d+e>=Q)break;d+=e}if(l==n+1){if(d>Q){let O=t[n];e(O.children,O.positions,0,O.children.length,i[n]+s);continue}c.push(t[n])}else{let e=i[l-1]+t[l-1].length-$;c.push(balanceRange(O,t,i,n,l,$,e,null,o))}h.push($+s-r)}}(e,t,i,n,0),(s||o)(c,h,a)}class NodeWeakMap{constructor(){this.map=new WeakMap}setBuffer(O,e,t){let i=this.map.get(O);i||this.map.set(O,i=new Map),i.set(e,t)}getBuffer(O,e){let t=this.map.get(O);return t&&t.get(e)}set(O,e){O instanceof BufferNode?this.setBuffer(O.context.buffer,O.index,e):O instanceof TreeNode&&this.map.set(O.tree,e)}get(O){return O instanceof BufferNode?this.getBuffer(O.context.buffer,O.index):O instanceof TreeNode?this.map.get(O.tree):void 0}cursorSet(O,e){O.buffer?this.setBuffer(O.buffer.buffer,O.index,e):this.map.set(O.tree,e)}cursorGet(O){return O.buffer?this.getBuffer(O.buffer.buffer,O.index):this.map.get(O.tree)}}class TreeFragment{constructor(O,e,t,i,n=!1,r=!1){this.from=O,this.to=e,this.tree=t,this.offset=i,this.open=(n?1:0)|(r?2:0)}get openStart(){return(1&this.open)>0}get openEnd(){return(2&this.open)>0}static addTree(O,e=[],t=!1){let i=[new TreeFragment(0,O.length,O,0,!1,t)];for(let t of e)t.to>O.length&&i.push(t);return i}static applyChanges(O,e,t=128){if(!e.length)return O;let i=[],n=1,r=O.length?O[0]:null;for(let a=0,s=0,o=0;;a++){let l=a<e.length?e[a]:null,Q=l?l.fromA:1e9;if(Q-s>=t)for(;r&&r.from<Q;){let e=r;if(s>=e.from||Q<=e.to||o){let O=Math.max(e.from,s)-o,t=Math.min(e.to,Q)-o;e=O>=t?null:new TreeFragment(O,t,e.tree,e.offset+o,a>0,!!l)}if(e&&i.push(e),r.to>Q)break;r=n<O.length?O[n++]:null}if(!l)break;s=l.toA,o=l.toA-l.toB}return i}}class Parser{startParse(O,e,t){return"string"==typeof O&&(O=new StringInput(O)),t=t?t.length?t.map((O=>new Range(O.from,O.to))):[new Range(0,0)]:[new Range(0,O.length)],this.createParse(O,e||[],t)}parse(O,e,t){let i=this.startParse(O,e,t);for(;;){let O=i.advance();if(O)return O}}}class StringInput{constructor(O){this.string=O}get length(){return this.string.length}chunk(O){return this.string.slice(O)}get lineChunks(){return!1}read(O,e){return this.string.slice(O,e)}}function parseMixed(O){return(e,t,i,n)=>new MixedParse(e,O,t,i,n)}class InnerParse{constructor(O,e,t,i,n){this.parser=O,this.parse=e,this.overlay=t,this.target=i,this.from=n}}function checkRanges(O){if(!O.length||O.some((O=>O.from>=O.to)))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(O))}class ActiveOverlay{constructor(O,e,t,i,n,r,a){this.parser=O,this.predicate=e,this.mounts=t,this.index=i,this.start=n,this.target=r,this.prev=a,this.depth=0,this.ranges=[]}}const stoppedInner=new NodeProp({perNode:!0});class MixedParse{constructor(O,e,t,i,n){this.nest=e,this.input=t,this.fragments=i,this.ranges=n,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=O}advance(){if(this.baseParse){let O=this.baseParse.advance();if(!O)return null;if(this.baseParse=null,this.baseTree=O,this.startInner(),null!=this.stoppedAt)for(let O of this.inner)O.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let O=this.baseTree;return null!=this.stoppedAt&&(O=new Tree(O.type,O.children,O.positions,O.length,O.propValues.concat([[stoppedInner,this.stoppedAt]]))),O}let O=this.inner[this.innerDone],e=O.parse.advance();if(e){this.innerDone++;let t=Object.assign(Object.create(null),O.target.props);t[NodeProp.mounted.id]=new MountedTree(e,O.overlay,O.parser),O.target.props=t}return null}get parsedPos(){if(this.baseParse)return 0;let O=this.input.length;for(let e=this.innerDone;e<this.inner.length;e++)this.inner[e].from<O&&(O=Math.min(O,this.inner[e].parse.parsedPos));return O}stopAt(O){if(this.stoppedAt=O,this.baseParse)this.baseParse.stopAt(O);else for(let e=this.innerDone;e<this.inner.length;e++)this.inner[e].parse.stopAt(O)}startInner(){let O=new FragmentCursor$2(this.fragments),e=null,t=null,i=new TreeCursor(new TreeNode(this.baseTree,this.ranges[0].from,0,null),IterMode.IncludeAnonymous|IterMode.IgnoreMounts);O:for(let n,r;;){let a,s=!0;if(null!=this.stoppedAt&&i.from>=this.stoppedAt)s=!1;else if(O.hasNode(i)){if(e){let O=e.mounts.find((O=>O.frag.from<=i.from&&O.frag.to>=i.to&&O.mount.overlay));if(O)for(let t of O.mount.overlay){let n=t.from+O.pos,r=t.to+O.pos;n>=i.from&&r<=i.to&&!e.ranges.some((O=>O.from<r&&O.to>n))&&e.ranges.push({from:n,to:r})}}s=!1}else if(t&&(r=checkCover(t.ranges,i.from,i.to)))s=2!=r;else if(!i.type.isAnonymous&&(n=this.nest(i,this.input))&&(i.from<i.to||!n.overlay)){i.tree||materialize(i);let r=O.findMounts(i.from,n.parser);if("function"==typeof n.overlay)e=new ActiveOverlay(n.parser,n.overlay,r,this.inner.length,i.from,i.tree,e);else{let O=punchRanges(this.ranges,n.overlay||(i.from<i.to?[new Range(i.from,i.to)]:[]));O.length&&checkRanges(O),!O.length&&n.overlay||this.inner.push(new InnerParse(n.parser,O.length?n.parser.startParse(this.input,enterFragments(r,O),O):n.parser.startParse(""),n.overlay?n.overlay.map((O=>new Range(O.from-i.from,O.to-i.from))):null,i.tree,O.length?O[0].from:i.from)),n.overlay?O.length&&(t={ranges:O,depth:0,prev:t}):s=!1}}else if(e&&(a=e.predicate(i))&&(!0===a&&(a=new Range(i.from,i.to)),a.from<a.to)){let O=e.ranges.length-1;O>=0&&e.ranges[O].to==a.from?e.ranges[O]={from:e.ranges[O].from,to:a.to}:e.ranges.push(a)}if(s&&i.firstChild())e&&e.depth++,t&&t.depth++;else for(;!i.nextSibling();){if(!i.parent())break O;if(e&&! --e.depth){let O=punchRanges(this.ranges,e.ranges);O.length&&(checkRanges(O),this.inner.splice(e.index,0,new InnerParse(e.parser,e.parser.startParse(this.input,enterFragments(e.mounts,O),O),e.ranges.map((O=>new Range(O.from-e.start,O.to-e.start))),e.target,O[0].from))),e=e.prev}t&&! --t.depth&&(t=t.prev)}}}}function checkCover(O,e,t){for(let i of O){if(i.from>=t)break;if(i.to>e)return i.from<=e&&i.to>=t?2:1}return 0}function sliceBuf(O,e,t,i,n,r){if(e<t){let a=O.buffer[e+1];i.push(O.slice(e,t,a)),n.push(a-r)}}function materialize(O){let{node:e}=O,t=[],i=e.context.buffer;do{t.push(O.index),O.parent()}while(!O.tree);let n=O.tree,r=n.children.indexOf(i),a=n.children[r],s=a.buffer,o=[r];n.children[r]=function O(i,n,r,l,Q,c){let h=t[c],$=[],d=[];sliceBuf(a,i,h,$,d,l);let p=s[h+1],u=s[h+2];o.push($.length);let f=c?O(h+4,s[h+3],a.set.types[s[h]],p,u-p,c-1):e.toTree();return $.push(f),d.push(p-l),sliceBuf(a,s[h+3],n,$,d,l),new Tree(r,$,d,Q)}(0,s.length,NodeType.none,0,a.length,t.length-1);for(let e of o){let t=O.tree.children[e],i=O.tree.positions[e];O.yield(new TreeNode(t,i+O.from,e,O._tree))}}class StructureCursor{constructor(O,e){this.offset=e,this.done=!1,this.cursor=O.cursor(IterMode.IncludeAnonymous|IterMode.IgnoreMounts)}moveTo(O){let{cursor:e}=this,t=O-this.offset;for(;!this.done&&e.from<t;)e.to>=O&&e.enter(t,1,IterMode.IgnoreOverlays|IterMode.ExcludeBuffers)||e.next(!1)||(this.done=!0)}hasNode(O){if(this.moveTo(O.from),!this.done&&this.cursor.from+this.offset==O.from&&this.cursor.tree)for(let e=this.cursor.tree;;){if(e==O.tree)return!0;if(!(e.children.length&&0==e.positions[0]&&e.children[0]instanceof Tree))break;e=e.children[0]}return!1}}let FragmentCursor$2=class{constructor(O){var e;if(this.fragments=O,this.curTo=0,this.fragI=0,O.length){let t=this.curFrag=O[0];this.curTo=null!==(e=t.tree.prop(stoppedInner))&&void 0!==e?e:t.to,this.inner=new StructureCursor(t.tree,-t.offset)}else this.curFrag=this.inner=null}hasNode(O){for(;this.curFrag&&O.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=O.from&&this.curTo>=O.to&&this.inner.hasNode(O)}nextFrag(){var O;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let e=this.curFrag=this.fragments[this.fragI];this.curTo=null!==(O=e.tree.prop(stoppedInner))&&void 0!==O?O:e.to,this.inner=new StructureCursor(e.tree,-e.offset)}}findMounts(O,e){var t;let i=[];if(this.inner){this.inner.cursor.moveTo(O,1);for(let O=this.inner.cursor.node;O;O=O.parent){let n=null===(t=O.tree)||void 0===t?void 0:t.prop(NodeProp.mounted);if(n&&n.parser==e)for(let e=this.fragI;e<this.fragments.length;e++){let t=this.fragments[e];if(t.from>=O.to)break;t.tree==this.curFrag.tree&&i.push({frag:t,pos:O.from-t.offset,mount:n})}}}return i}};function punchRanges(O,e){let t=null,i=e;for(let n=1,r=0;n<O.length;n++){let a=O[n-1].to,s=O[n].from;for(;r<i.length;r++){let O=i[r];if(O.from>=s)break;O.to<=a||(t||(i=t=e.slice()),O.from<a?(t[r]=new Range(O.from,a),O.to>s&&t.splice(r+1,0,new Range(s,O.to))):O.to>s?t[r--]=new Range(s,O.to):t.splice(r--,1))}}return i}function findCoverChanges(O,e,t,i){let n=0,r=0,a=!1,s=!1,o=-1e9,l=[];for(;;){let Q=n==O.length?1e9:a?O[n].to:O[n].from,c=r==e.length?1e9:s?e[r].to:e[r].from;if(a!=s){let O=Math.max(o,t),e=Math.min(Q,c,i);O<e&&l.push(new Range(O,e))}if(o=Math.min(Q,c),1e9==o)break;Q==o&&(a?(a=!1,n++):a=!0),c==o&&(s?(s=!1,r++):s=!0)}return l}function enterFragments(O,e){let t=[];for(let{pos:i,mount:n,frag:r}of O){let O=i+(n.overlay?n.overlay[0].from:0),a=O+n.tree.length,s=Math.max(r.from,O),o=Math.min(r.to,a);if(n.overlay){let a=findCoverChanges(e,n.overlay.map((O=>new Range(O.from+i,O.to+i))),s,o);for(let e=0,i=s;;e++){let s=e==a.length,l=s?o:a[e].from;if(l>i&&t.push(new TreeFragment(i,l,n.tree,-O,r.from>=i||r.openStart,r.to<=l||r.openEnd)),s)break;i=a[e].to}}else t.push(new TreeFragment(s,o,n.tree,-O,r.from>=O||r.openStart,r.to<=a||r.openEnd))}return t}let nextTagID=0,Tag$1=class O{constructor(O,e,t,i){this.name=O,this.set=e,this.base=t,this.modified=i,this.id=nextTagID++}toString(){let{name:O}=this;for(let e of this.modified)e.name&&(O=`${e.name}(${O})`);return O}static define(e,t){let i="string"==typeof e?e:"?";if(e instanceof O&&(t=e),null==t?void 0:t.base)throw new Error("Can not derive from a modified tag");let n=new O(i,[],null,[]);if(n.set.push(n),t)for(let O of t.set)n.set.push(O);return n}static defineModifier(O){let e=new Modifier(O);return O=>O.modified.indexOf(e)>-1?O:Modifier.get(O.base||O,O.modified.concat(e).sort(((O,e)=>O.id-e.id)))}},nextModifierID=0;class Modifier{constructor(O){this.name=O,this.instances=[],this.id=nextModifierID++}static get(O,e){if(!e.length)return O;let t=e[0].instances.find((t=>t.base==O&&sameArray(e,t.modified)));if(t)return t;let i=[],n=new Tag$1(O.name,i,O,e);for(let O of e)O.instances.push(n);let r=powerSet(e);for(let e of O.set)if(!e.modified.length)for(let O of r)i.push(Modifier.get(e,O));return n}}function sameArray(O,e){return O.length==e.length&&O.every(((O,t)=>O==e[t]))}function powerSet(O){let e=[[]];for(let t=0;t<O.length;t++)for(let i=0,n=e.length;i<n;i++)e.push(e[i].concat(O[t]));return e.sort(((O,e)=>e.length-O.length))}function styleTags(O){let e=Object.create(null);for(let t in O){let i=O[t];Array.isArray(i)||(i=[i]);for(let O of t.split(" "))if(O){let t=[],n=2,r=O;for(let e=0;;){if("..."==r&&e>0&&e+3==O.length){n=1;break}let i=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(r);if(!i)throw new RangeError("Invalid path: "+O);if(t.push("*"==i[0]?"":'"'==i[0][0]?JSON.parse(i[0]):i[0]),e+=i[0].length,e==O.length)break;let a=O[e++];if(e==O.length&&"!"==a){n=0;break}if("/"!=a)throw new RangeError("Invalid path: "+O);r=O.slice(e)}let a=t.length-1,s=t[a];if(!s)throw new RangeError("Invalid path: "+O);let o=new Rule(i,n,a>0?t.slice(0,a):null);e[s]=o.sort(e[s])}}return ruleNodeProp.add(e)}const ruleNodeProp=new NodeProp;class Rule{constructor(O,e,t,i){this.tags=O,this.mode=e,this.context=t,this.next=i}get opaque(){return 0==this.mode}get inherit(){return 1==this.mode}sort(O){return!O||O.depth<this.depth?(this.next=O,this):(O.next=this.sort(O.next),O)}get depth(){return this.context?this.context.length:0}}function tagHighlighter(O,e){let t=Object.create(null);for(let e of O)if(Array.isArray(e.tag))for(let O of e.tag)t[O.id]=e.class;else t[e.tag.id]=e.class;let{scope:i,all:n=null}=e||{};return{style:O=>{let e=n;for(let i of O)for(let O of i.set){let i=t[O.id];if(i){e=e?e+" "+i:i;break}}return e},scope:i}}function highlightTags(O,e){let t=null;for(let i of O){let O=i.style(e);O&&(t=t?t+" "+O:O)}return t}function highlightTree(O,e,t,i=0,n=O.length){let r=new HighlightBuilder(i,Array.isArray(e)?e:[e],t);r.highlightRange(O.cursor(),i,n,"",r.highlighters),r.flush(n)}Rule.empty=new Rule([],2,null);class HighlightBuilder{constructor(O,e,t){this.at=O,this.highlighters=e,this.span=t,this.class=""}startSpan(O,e){e!=this.class&&(this.flush(O),O>this.at&&(this.at=O),this.class=e)}flush(O){O>this.at&&this.class&&this.span(this.at,O,this.class)}highlightRange(O,e,t,i,n){let{type:r,from:a,to:s}=O;if(a>=t||s<=e)return;r.isTop&&(n=this.highlighters.filter((O=>!O.scope||O.scope(r))));let o=i,l=getStyleTags(O)||Rule.empty,Q=highlightTags(n,l.tags);if(Q&&(o&&(o+=" "),o+=Q,1==l.mode&&(i+=(i?" ":"")+Q)),this.startSpan(Math.max(e,a),o),l.opaque)return;let c=O.tree&&O.tree.prop(NodeProp.mounted);if(c&&c.overlay){let r=O.node.enter(c.overlay[0].from+a,1),l=this.highlighters.filter((O=>!O.scope||O.scope(c.tree.type))),Q=O.firstChild();for(let h=0,$=a;;h++){let d=h<c.overlay.length?c.overlay[h]:null,p=d?d.from+a:s,u=Math.max(e,$),f=Math.min(t,p);if(u<f&&Q)for(;O.from<f&&(this.highlightRange(O,u,f,i,n),this.startSpan(Math.min(f,O.to),o),!(O.to>=p)&&O.nextSibling()););if(!d||p>t)break;$=d.to+a,$>e&&(this.highlightRange(r.cursor(),Math.max(e,d.from+a),Math.min(t,$),"",l),this.startSpan(Math.min(t,$),o))}Q&&O.parent()}else if(O.firstChild()){c&&(i="");do{if(!(O.to<=e)){if(O.from>=t)break;this.highlightRange(O,e,t,i,n),this.startSpan(Math.min(t,O.to),o)}}while(O.nextSibling());O.parent()}}}function getStyleTags(O){let e=O.type.prop(ruleNodeProp);for(;e&&e.context&&!O.matchContext(e.context);)e=e.next;return e||null}const t=Tag$1.define,comment=t(),name=t(),typeName=t(name),propertyName=t(name),literal=t(),string=t(literal),number=t(literal),content=t(),heading=t(content),keyword=t(),operator=t(),punctuation=t(),bracket=t(punctuation),meta=t(),tags$1={comment:comment,lineComment:t(comment),blockComment:t(comment),docComment:t(comment),name:name,variableName:t(name),typeName:typeName,tagName:t(typeName),propertyName:propertyName,attributeName:t(propertyName),className:t(name),labelName:t(name),namespace:t(name),macroName:t(name),literal:literal,string:string,docString:t(string),character:t(string),attributeValue:t(string),number:number,integer:t(number),float:t(number),bool:t(literal),regexp:t(literal),escape:t(literal),color:t(literal),url:t(literal),keyword:keyword,self:t(keyword),null:t(keyword),atom:t(keyword),unit:t(keyword),modifier:t(keyword),operatorKeyword:t(keyword),controlKeyword:t(keyword),definitionKeyword:t(keyword),moduleKeyword:t(keyword),operator:operator,derefOperator:t(operator),arithmeticOperator:t(operator),logicOperator:t(operator),bitwiseOperator:t(operator),compareOperator:t(operator),updateOperator:t(operator),definitionOperator:t(operator),typeOperator:t(operator),controlOperator:t(operator),punctuation:punctuation,separator:t(punctuation),bracket:bracket,angleBracket:t(bracket),squareBracket:t(bracket),paren:t(bracket),brace:t(bracket),content:content,heading:heading,heading1:t(heading),heading2:t(heading),heading3:t(heading),heading4:t(heading),heading5:t(heading),heading6:t(heading),contentSeparator:t(content),list:t(content),quote:t(content),emphasis:t(content),strong:t(content),link:t(content),monospace:t(content),strikethrough:t(content),inserted:t(),deleted:t(),changed:t(),invalid:t(),meta:meta,documentMeta:t(meta),annotation:t(meta),processingInstruction:t(meta),definition:Tag$1.defineModifier("definition"),constant:Tag$1.defineModifier("constant"),function:Tag$1.defineModifier("function"),standard:Tag$1.defineModifier("standard"),local:Tag$1.defineModifier("local"),special:Tag$1.defineModifier("special")};for(let O in tags$1){let e=tags$1[O];e instanceof Tag$1&&(e.name=O)}var _a;tagHighlighter([{tag:tags$1.link,class:"tok-link"},{tag:tags$1.heading,class:"tok-heading"},{tag:tags$1.emphasis,class:"tok-emphasis"},{tag:tags$1.strong,class:"tok-strong"},{tag:tags$1.keyword,class:"tok-keyword"},{tag:tags$1.atom,class:"tok-atom"},{tag:tags$1.bool,class:"tok-bool"},{tag:tags$1.url,class:"tok-url"},{tag:tags$1.labelName,class:"tok-labelName"},{tag:tags$1.inserted,class:"tok-inserted"},{tag:tags$1.deleted,class:"tok-deleted"},{tag:tags$1.literal,class:"tok-literal"},{tag:tags$1.string,class:"tok-string"},{tag:tags$1.number,class:"tok-number"},{tag:[tags$1.regexp,tags$1.escape,tags$1.special(tags$1.string)],class:"tok-string2"},{tag:tags$1.variableName,class:"tok-variableName"},{tag:tags$1.local(tags$1.variableName),class:"tok-variableName tok-local"},{tag:tags$1.definition(tags$1.variableName),class:"tok-variableName tok-definition"},{tag:tags$1.special(tags$1.variableName),class:"tok-variableName2"},{tag:tags$1.definition(tags$1.propertyName),class:"tok-propertyName tok-definition"},{tag:tags$1.typeName,class:"tok-typeName"},{tag:tags$1.namespace,class:"tok-namespace"},{tag:tags$1.className,class:"tok-className"},{tag:tags$1.macroName,class:"tok-macroName"},{tag:tags$1.propertyName,class:"tok-propertyName"},{tag:tags$1.operator,class:"tok-operator"},{tag:tags$1.comment,class:"tok-comment"},{tag:tags$1.meta,class:"tok-meta"},{tag:tags$1.invalid,class:"tok-invalid"},{tag:tags$1.punctuation,class:"tok-punctuation"}]);const languageDataProp=new NodeProp;function defineLanguageFacet(O){return Facet.define({combine:O?e=>e.concat(O):void 0})}const sublanguageProp=new NodeProp;class Language{constructor(O,e,t=[],i=""){this.data=O,this.name=i,EditorState.prototype.hasOwnProperty("tree")||Object.defineProperty(EditorState.prototype,"tree",{get(){return syntaxTree(this)}}),this.parser=e,this.extension=[language.of(this),EditorState.languageData.of(((O,e,t)=>{let i=topNodeAt(O,e,t),n=i.type.prop(languageDataProp);if(!n)return[];let r=O.facet(n),a=i.type.prop(sublanguageProp);if(a){let n=i.resolve(e-i.from,t);for(let e of a)if(e.test(n,O)){let t=O.facet(e.facet);return"replace"==e.type?t:t.concat(r)}}return r}))].concat(t)}isActiveAt(O,e,t=-1){return topNodeAt(O,e,t).type.prop(languageDataProp)==this.data}findRegions(O){let e=O.facet(language);if((null==e?void 0:e.data)==this.data)return[{from:0,to:O.doc.length}];if(!e||!e.allowsNesting)return[];let t=[],i=(O,e)=>{if(O.prop(languageDataProp)==this.data)return void t.push({from:e,to:e+O.length});let n=O.prop(NodeProp.mounted);if(n){if(n.tree.prop(languageDataProp)==this.data){if(n.overlay)for(let O of n.overlay)t.push({from:O.from+e,to:O.to+e});else t.push({from:e,to:e+O.length});return}if(n.overlay){let O=t.length;if(i(n.tree,n.overlay[0].from+e),t.length>O)return}}for(let t=0;t<O.children.length;t++){let n=O.children[t];n instanceof Tree&&i(n,O.positions[t]+e)}};return i(syntaxTree(O),0),t}get allowsNesting(){return!0}}function topNodeAt(O,e,t){let i=O.facet(language),n=syntaxTree(O).topNode;if(!i||i.allowsNesting)for(let O=n;O;O=O.enter(e,t,IterMode.ExcludeBuffers))O.type.isTop&&(n=O);return n}Language.setState=StateEffect.define();class LRLanguage extends Language{constructor(O,e,t){super(O,e,[],t),this.parser=e}static define(O){let e=defineLanguageFacet(O.languageData);return new LRLanguage(e,O.parser.configure({props:[languageDataProp.add((O=>O.isTop?e:void 0))]}),O.name)}configure(O,e){return new LRLanguage(this.data,this.parser.configure(O),e||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function syntaxTree(O){let e=O.field(Language.state,!1);return e?e.tree:Tree.empty}class DocInput{constructor(O){this.doc=O,this.cursorPos=0,this.string="",this.cursor=O.iter()}get length(){return this.doc.length}syncTo(O){return this.string=this.cursor.next(O-this.cursorPos).value,this.cursorPos=O+this.string.length,this.cursorPos-this.string.length}chunk(O){return this.syncTo(O),this.string}get lineChunks(){return!0}read(O,e){let t=this.cursorPos-this.string.length;return O<t||e>=this.cursorPos?this.doc.sliceString(O,e):this.string.slice(O-t,e-t)}}let currentContext=null;class ParseContext{constructor(O,e,t=[],i,n,r,a,s){this.parser=O,this.state=e,this.fragments=t,this.tree=i,this.treeLen=n,this.viewport=r,this.skipped=a,this.scheduleOn=s,this.parse=null,this.tempSkipped=[]}static create(O,e,t){return new ParseContext(O,e,[],Tree.empty,0,t,[],null)}startParse(){return this.parser.startParse(new DocInput(this.state.doc),this.fragments)}work(O,e){return null!=e&&e>=this.state.doc.length&&(e=void 0),this.tree!=Tree.empty&&this.isDone(null!=e?e:this.state.doc.length)?(this.takeTree(),!0):this.withContext((()=>{var t;if("number"==typeof O){let e=Date.now()+O;O=()=>Date.now()>e}for(this.parse||(this.parse=this.startParse()),null!=e&&(null==this.parse.stoppedAt||this.parse.stoppedAt>e)&&e<this.state.doc.length&&this.parse.stopAt(e);;){let i=this.parse.advance();if(i){if(this.fragments=this.withoutTempSkipped(TreeFragment.addTree(i,this.fragments,null!=this.parse.stoppedAt)),this.treeLen=null!==(t=this.parse.stoppedAt)&&void 0!==t?t:this.state.doc.length,this.tree=i,this.parse=null,!(this.treeLen<(null!=e?e:this.state.doc.length)))return!0;this.parse=this.startParse()}if(O())return!1}}))}takeTree(){let O,e;this.parse&&(O=this.parse.parsedPos)>=this.treeLen&&((null==this.parse.stoppedAt||this.parse.stoppedAt>O)&&this.parse.stopAt(O),this.withContext((()=>{for(;!(e=this.parse.advance()););})),this.treeLen=O,this.tree=e,this.fragments=this.withoutTempSkipped(TreeFragment.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(O){let e=currentContext;currentContext=this;try{return O()}finally{currentContext=e}}withoutTempSkipped(O){for(let e;e=this.tempSkipped.pop();)O=cutFragments(O,e.from,e.to);return O}changes(O,e){let{fragments:t,tree:i,treeLen:n,viewport:r,skipped:a}=this;if(this.takeTree(),!O.empty){let e=[];if(O.iterChangedRanges(((O,t,i,n)=>e.push({fromA:O,toA:t,fromB:i,toB:n}))),t=TreeFragment.applyChanges(t,e),i=Tree.empty,n=0,r={from:O.mapPos(r.from,-1),to:O.mapPos(r.to,1)},this.skipped.length){a=[];for(let e of this.skipped){let t=O.mapPos(e.from,1),i=O.mapPos(e.to,-1);t<i&&a.push({from:t,to:i})}}}return new ParseContext(this.parser,e,t,i,n,r,a,this.scheduleOn)}updateViewport(O){if(this.viewport.from==O.from&&this.viewport.to==O.to)return!1;this.viewport=O;let e=this.skipped.length;for(let e=0;e<this.skipped.length;e++){let{from:t,to:i}=this.skipped[e];t<O.to&&i>O.from&&(this.fragments=cutFragments(this.fragments,t,i),this.skipped.splice(e--,1))}return!(this.skipped.length>=e)&&(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(O,e){this.skipped.push({from:O,to:e})}static getSkippingParser(O){return new class extends Parser{createParse(e,t,i){let n=i[0].from,r=i[i.length-1].to;return{parsedPos:n,advance(){let e=currentContext;if(e){for(let O of i)e.tempSkipped.push(O);O&&(e.scheduleOn=e.scheduleOn?Promise.all([e.scheduleOn,O]):O)}return this.parsedPos=r,new Tree(NodeType.none,[],[],r-n)},stoppedAt:null,stopAt(){}}}}}isDone(O){O=Math.min(O,this.state.doc.length);let e=this.fragments;return this.treeLen>=O&&e.length&&0==e[0].from&&e[0].to>=O}static get(){return currentContext}}function cutFragments(O,e,t){return TreeFragment.applyChanges(O,[{fromA:e,toA:t,fromB:e,toB:t}])}class LanguageState{constructor(O){this.context=O,this.tree=O.tree}apply(O){if(!O.docChanged&&this.tree==this.context.tree)return this;let e=this.context.changes(O.changes,O.state),t=this.context.treeLen==O.startState.doc.length?void 0:Math.max(O.changes.mapPos(this.context.treeLen),e.viewport.to);return e.work(20,t)||e.takeTree(),new LanguageState(e)}static init(O){let e=Math.min(3e3,O.doc.length),t=ParseContext.create(O.facet(language).parser,O,{from:0,to:e});return t.work(20,e)||t.takeTree(),new LanguageState(t)}}Language.state=StateField.define({create:LanguageState.init,update(O,e){for(let O of e.effects)if(O.is(Language.setState))return O.value;return e.startState.facet(language)!=e.state.facet(language)?LanguageState.init(e.state):O.apply(e)}});let requestIdle=O=>{let e=setTimeout((()=>O()),500);return()=>clearTimeout(e)};"undefined"!=typeof requestIdleCallback&&(requestIdle=O=>{let e=-1,t=setTimeout((()=>{e=requestIdleCallback(O,{timeout:400})}),100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const isInputPending="undefined"!=typeof navigator&&(null===(_a=navigator.scheduling)||void 0===_a?void 0:_a.isInputPending)?()=>navigator.scheduling.isInputPending():null,parseWorker=ViewPlugin.fromClass(class{constructor(O){this.view=O,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(O){let e=this.view.state.field(Language.state).context;(e.updateViewport(O.view.viewport)||this.view.viewport.to>e.treeLen)&&this.scheduleWork(),(O.docChanged||O.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(e)}scheduleWork(){if(this.working)return;let{state:O}=this.view,e=O.field(Language.state);e.tree==e.context.tree&&e.context.isDone(O.doc.length)||(this.working=requestIdle(this.work))}work(O){this.working=null;let e=Date.now();if(this.chunkEnd<e&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=e+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:t,viewport:{to:i}}=this.view,n=t.field(Language.state);if(n.tree==n.context.tree&&n.context.isDone(i+1e5))return;let r=Date.now()+Math.min(this.chunkBudget,100,O&&!isInputPending?Math.max(25,O.timeRemaining()-5):1e9),a=n.context.treeLen<i&&t.doc.length>i+1e3,s=n.context.work((()=>isInputPending&&isInputPending()||Date.now()>r),i+(a?0:1e5));this.chunkBudget-=Date.now()-e,(s||this.chunkBudget<=0)&&(n.context.takeTree(),this.view.dispatch({effects:Language.setState.of(new LanguageState(n.context))})),this.chunkBudget>0&&(!s||a)&&this.scheduleWork(),this.checkAsyncSchedule(n.context)}checkAsyncSchedule(O){O.scheduleOn&&(this.workScheduled++,O.scheduleOn.then((()=>this.scheduleWork())).catch((O=>logException(this.view.state,O))).then((()=>this.workScheduled--)),O.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),language=Facet.define({combine:O=>O.length?O[0]:null,enables:O=>[Language.state,parseWorker,EditorView.contentAttributes.compute([O],(e=>{let t=e.facet(O);return t&&t.name?{"data-language":t.name}:{}}))]});class LanguageSupport{constructor(O,e=[]){this.language=O,this.support=e,this.extension=[O,e]}}class LanguageDescription{constructor(O,e,t,i,n,r=void 0){this.name=O,this.alias=e,this.extensions=t,this.filename=i,this.loadFunc=n,this.support=r,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then((O=>this.support=O),(O=>{throw this.loading=null,O})))}static of(O){let{load:e,support:t}=O;if(!e){if(!t)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");e=()=>Promise.resolve(t)}return new LanguageDescription(O.name,(O.alias||[]).concat(O.name).map((O=>O.toLowerCase())),O.extensions||[],O.filename,e,t)}static matchFilename(O,e){for(let t of O)if(t.filename&&t.filename.test(e))return t;let t=/\.([^.]+)$/.exec(e);if(t)for(let e of O)if(e.extensions.indexOf(t[1])>-1)return e;return null}static matchLanguageName(O,e,t=!0){e=e.toLowerCase();for(let t of O)if(t.alias.some((O=>O==e)))return t;if(t)for(let t of O)for(let O of t.alias){let i=e.indexOf(O);if(i>-1&&(O.length>2||!/\w/.test(e[i-1])&&!/\w/.test(e[i+O.length])))return t}return null}}const indentService=Facet.define(),indentUnit=Facet.define({combine:O=>{if(!O.length)return"  ";let e=O[0];if(!e||/\S/.test(e)||Array.from(e).some((O=>O!=e[0])))throw new Error("Invalid indent unit: "+JSON.stringify(O[0]));return e}});function getIndentUnit(O){let e=O.facet(indentUnit);return 9==e.charCodeAt(0)?O.tabSize*e.length:e.length}function indentString(O,e){let t="",i=O.tabSize,n=O.facet(indentUnit)[0];if("\t"==n){for(;e>=i;)t+="\t",e-=i;n=" "}for(let O=0;O<e;O++)t+=n;return t}function getIndentation(O,e){O instanceof EditorState&&(O=new IndentContext(O));for(let t of O.state.facet(indentService)){let i=t(O,e);if(void 0!==i)return i}let t=syntaxTree(O.state);return t.length>=e?syntaxIndentation(O,t,e):null}class IndentContext{constructor(O,e={}){this.state=O,this.options=e,this.unit=getIndentUnit(O)}lineAt(O,e=1){let t=this.state.doc.lineAt(O),{simulateBreak:i,simulateDoubleBreak:n}=this.options;return null!=i&&i>=t.from&&i<=t.to?n&&i==O?{text:"",from:O}:(e<0?i<O:i<=O)?{text:t.text.slice(i-t.from),from:i}:{text:t.text.slice(0,i-t.from),from:t.from}:t}textAfterPos(O,e=1){if(this.options.simulateDoubleBreak&&O==this.options.simulateBreak)return"";let{text:t,from:i}=this.lineAt(O,e);return t.slice(O-i,Math.min(t.length,O+100-i))}column(O,e=1){let{text:t,from:i}=this.lineAt(O,e),n=this.countColumn(t,O-i),r=this.options.overrideIndentation?this.options.overrideIndentation(i):-1;return r>-1&&(n+=r-this.countColumn(t,t.search(/\S|$/))),n}countColumn(O,e=O.length){return countColumn(O,this.state.tabSize,e)}lineIndent(O,e=1){let{text:t,from:i}=this.lineAt(O,e),n=this.options.overrideIndentation;if(n){let O=n(i);if(O>-1)return O}return this.countColumn(t,t.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const indentNodeProp=new NodeProp;function syntaxIndentation(O,e,t){let i=e.resolveStack(t),n=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(n!=i.node){let O=[];for(let e=n;e&&(e.from!=i.node.from||e.type!=i.node.type);e=e.parent)O.push(e);for(let e=O.length-1;e>=0;e--)i={node:O[e],next:i}}return indentFor(i,O,t)}function indentFor(O,e,t){for(let i=O;i;i=i.next){let O=indentStrategy(i.node);if(O)return O(TreeIndentContext.create(e,t,i))}return 0}function ignoreClosed(O){return O.pos==O.options.simulateBreak&&O.options.simulateDoubleBreak}function indentStrategy(O){let e=O.type.prop(indentNodeProp);if(e)return e;let t,i=O.firstChild;if(i&&(t=i.type.prop(NodeProp.closedBy))){let e=O.lastChild,i=e&&t.indexOf(e.name)>-1;return O=>delimitedStrategy(O,!0,1,void 0,i&&!ignoreClosed(O)?e.from:void 0)}return null==O.parent?topIndent$1:null}function topIndent$1(){return 0}class TreeIndentContext extends IndentContext{constructor(O,e,t){super(O.state,O.options),this.base=O,this.pos=e,this.context=t}get node(){return this.context.node}static create(O,e,t){return new TreeIndentContext(O,e,t)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(O){let e=this.state.doc.lineAt(O.from);for(;;){let t=O.resolve(e.from);for(;t.parent&&t.parent.from==t.from;)t=t.parent;if(isParent(t,O))break;e=this.state.doc.lineAt(t.from)}return this.lineIndent(e.from)}continue(){return indentFor(this.context.next,this.base,this.pos)}}function isParent(O,e){for(let t=e;t;t=t.parent)if(O==t)return!0;return!1}function bracketedAligned(O){let e=O.node,t=e.childAfter(e.from),i=e.lastChild;if(!t)return null;let n=O.options.simulateBreak,r=O.state.doc.lineAt(t.from),a=null==n||n<=r.from?r.to:Math.min(r.to,n);for(let O=t.to;;){let n=e.childAfter(O);if(!n||n==i)return null;if(!n.type.isSkipped){if(n.from>=a)return null;let O=/^ */.exec(r.text.slice(t.to-r.from))[0].length;return{from:t.from,to:t.to+O}}O=n.to}}function delimitedIndent({closing:O,align:e=!0,units:t=1}){return i=>delimitedStrategy(i,e,t,O)}function delimitedStrategy(O,e,t,i,n){let r=O.textAfter,a=r.match(/^\s*/)[0].length,s=i&&r.slice(a,a+i.length)==i||n==O.pos+a,o=e?bracketedAligned(O):null;return o?s?O.column(o.from):O.column(o.to):O.baseIndent+(s?0:O.unit*t)}const flatIndent=O=>O.baseIndent;function continuedIndent({except:O,units:e=1}={}){return t=>{let i=O&&O.test(t.textAfter);return t.baseIndent+(i?0:e*t.unit)}}const foldService=Facet.define(),foldNodeProp=new NodeProp;function foldInside(O){let e=O.firstChild,t=O.lastChild;return e&&e.to<t.from?{from:e.to,to:t.type.isError?O.to:t.from}:null}class HighlightStyle{constructor(O,e){let t;function i(O){let e=StyleModule.newName();return(t||(t=Object.create(null)))["."+e]=O,e}this.specs=O;const n="string"==typeof e.all?e.all:e.all?i(e.all):void 0,r=e.scope;this.scope=r instanceof Language?O=>O.prop(languageDataProp)==r.data:r?O=>O==r:void 0,this.style=tagHighlighter(O.map((O=>({tag:O.tag,class:O.class||i(Object.assign({},O,{tag:null}))}))),{all:n}).style,this.module=t?new StyleModule(t):null,this.themeType=e.themeType}static define(O,e){return new HighlightStyle(O,e||{})}}const highlighterFacet=Facet.define(),fallbackHighlighter=Facet.define({combine:O=>O.length?[O[0]]:null});function getHighlighters(O){let e=O.facet(highlighterFacet);return e.length?e:O.facet(fallbackHighlighter)}function syntaxHighlighting(O,e){let t,i=[treeHighlighter];return O instanceof HighlightStyle&&(O.module&&i.push(EditorView.styleModule.of(O.module)),t=O.themeType),(null==e?void 0:e.fallback)?i.push(fallbackHighlighter.of(O)):t?i.push(highlighterFacet.computeN([EditorView.darkTheme],(e=>e.facet(EditorView.darkTheme)==("dark"==t)?[O]:[]))):i.push(highlighterFacet.of(O)),i}class TreeHighlighter{constructor(O){this.markCache=Object.create(null),this.tree=syntaxTree(O.state),this.decorations=this.buildDeco(O,getHighlighters(O.state)),this.decoratedTo=O.viewport.to}update(O){let e=syntaxTree(O.state),t=getHighlighters(O.state),i=t!=getHighlighters(O.startState),{viewport:n}=O.view,r=O.changes.mapPos(this.decoratedTo,1);e.length<n.to&&!i&&e.type==this.tree.type&&r>=n.to?(this.decorations=this.decorations.map(O.changes),this.decoratedTo=r):(e!=this.tree||O.viewportChanged||i)&&(this.tree=e,this.decorations=this.buildDeco(O.view,t),this.decoratedTo=n.to)}buildDeco(O,e){if(!e||!this.tree.length)return Decoration.none;let t=new RangeSetBuilder;for(let{from:i,to:n}of O.visibleRanges)highlightTree(this.tree,e,((O,e,i)=>{t.add(O,e,this.markCache[i]||(this.markCache[i]=Decoration.mark({class:i})))}),i,n);return t.finish()}}const treeHighlighter=Prec.high(ViewPlugin.fromClass(TreeHighlighter,{decorations:O=>O.decorations}));tags$1.meta,tags$1.link,tags$1.heading,tags$1.emphasis,tags$1.strong,tags$1.strikethrough,tags$1.keyword,tags$1.atom,tags$1.bool,tags$1.url,tags$1.contentSeparator,tags$1.labelName,tags$1.literal,tags$1.inserted,tags$1.string,tags$1.deleted,tags$1.regexp,tags$1.escape,tags$1.string,tags$1.variableName,tags$1.variableName,tags$1.typeName,tags$1.namespace,tags$1.className,tags$1.variableName,tags$1.macroName,tags$1.propertyName,tags$1.comment,tags$1.invalid;const DefaultScanDist=1e4,DefaultBrackets="()[]{}",bracketMatchingHandle=new NodeProp;function matchingNodes(O,e,t){let i=O.prop(e<0?NodeProp.openedBy:NodeProp.closedBy);if(i)return i;if(1==O.name.length){let i=t.indexOf(O.name);if(i>-1&&i%2==(e<0?1:0))return[t[i+e]]}return null}function findHandle(O){let e=O.type.prop(bracketMatchingHandle);return e?e(O.node):O}function matchBrackets(O,e,t,i={}){let n=i.maxScanDistance||1e4,r=i.brackets||"()[]{}",a=syntaxTree(O),s=a.resolveInner(e,t);for(let i=s;i;i=i.parent){let n=matchingNodes(i.type,t,r);if(n&&i.from<i.to){let a=findHandle(i);if(a&&(t>0?e>=a.from&&e<a.to:e>a.from&&e<=a.to))return matchMarkedBrackets(O,e,t,i,a,n,r)}}return matchPlainBrackets(O,e,t,a,s.type,n,r)}function matchMarkedBrackets(O,e,t,i,n,r,a){let s=i.parent,o={from:n.from,to:n.to},l=0,Q=null==s?void 0:s.cursor();if(Q&&(t<0?Q.childBefore(i.from):Q.childAfter(i.to)))do{if(t<0?Q.to<=i.from:Q.from>=i.to){if(0==l&&r.indexOf(Q.type.name)>-1&&Q.from<Q.to){let O=findHandle(Q);return{start:o,end:O?{from:O.from,to:O.to}:void 0,matched:!0}}if(matchingNodes(Q.type,t,a))l++;else if(matchingNodes(Q.type,-t,a)){if(0==l){let O=findHandle(Q);return{start:o,end:O&&O.from<O.to?{from:O.from,to:O.to}:void 0,matched:!1}}l--}}}while(t<0?Q.prevSibling():Q.nextSibling());return{start:o,matched:!1}}function matchPlainBrackets(O,e,t,i,n,r,a){let s=t<0?O.sliceDoc(e-1,e):O.sliceDoc(e,e+1),o=a.indexOf(s);if(o<0||o%2==0!=t>0)return null;let l={from:t<0?e-1:e,to:t>0?e+1:e},Q=O.doc.iterRange(e,t>0?O.doc.length:0),c=0;for(let O=0;!Q.next().done&&O<=r;){let r=Q.value;t<0&&(O+=r.length);let s=e+O*t;for(let O=t>0?0:r.length-1,e=t>0?r.length:-1;O!=e;O+=t){let e=a.indexOf(r[O]);if(!(e<0||i.resolveInner(s+O,1).type!=n))if(e%2==0==t>0)c++;else{if(1==c)return{start:l,end:{from:s+O,to:s+O+1},matched:e>>1==o>>1};c--}}t>0&&(O+=r.length)}return Q.done?{start:l,matched:!1}:null}const noTokens=Object.create(null),typeArray=[NodeType.none],warned=[],byTag=Object.create(null),defaultTable=Object.create(null);for(let[O,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])defaultTable[O]=createTokenType(noTokens,e);function warnForPart(O,e){warned.indexOf(O)>-1||(warned.push(O),console.warn(e))}function createTokenType(O,e){let t=[];for(let i of e.split(" ")){let e=[];for(let t of i.split(".")){let i=O[t]||tags$1[t];i?"function"==typeof i?e.length?e=e.map(i):warnForPart(t,`Modifier ${t} used at start of tag`):e.length?warnForPart(t,`Tag ${t} used as modifier`):e=Array.isArray(i)?i:[i]:warnForPart(t,`Unknown highlighting tag ${t}`)}for(let O of e)t.push(O)}if(!t.length)return 0;let i=e.replace(/ /g,"_"),n=i+" "+t.map((O=>O.id)),r=byTag[n];if(r)return r.id;let a=byTag[n]=NodeType.define({id:typeArray.length,name:i,props:[styleTags({[i]:t})]});return typeArray.push(a),a.id}Direction.RTL,Direction.LTR;const toggleComment=O=>{let{state:e}=O,t=e.doc.lineAt(e.selection.main.from),i=getConfig(O.state,t.from);return i.line?toggleLineComment(O):!!i.block&&toggleBlockCommentByLine(O)};function command(O,e){return({state:t,dispatch:i})=>{if(t.readOnly)return!1;let n=O(e,t);return!!n&&(i(t.update(n)),!0)}}const toggleLineComment=command(changeLineComment,0),toggleBlockComment=command(changeBlockComment,0),toggleBlockCommentByLine=command(((O,e)=>changeBlockComment(O,e,selectedLineRanges(e))),0);function getConfig(O,e){let t=O.languageDataAt("commentTokens",e);return t.length?t[0]:{}}const SearchMargin=50;function findBlockComment(O,{open:e,close:t},i,n){let r,a,s=O.sliceDoc(i-50,i),o=O.sliceDoc(n,n+50),l=/\s*$/.exec(s)[0].length,Q=/^\s*/.exec(o)[0].length,c=s.length-l;if(s.slice(c-e.length,c)==e&&o.slice(Q,Q+t.length)==t)return{open:{pos:i-l,margin:l&&1},close:{pos:n+Q,margin:Q&&1}};n-i<=100?r=a=O.sliceDoc(i,n):(r=O.sliceDoc(i,i+50),a=O.sliceDoc(n-50,n));let h=/^\s*/.exec(r)[0].length,$=/\s*$/.exec(a)[0].length,d=a.length-$-t.length;return r.slice(h,h+e.length)==e&&a.slice(d,d+t.length)==t?{open:{pos:i+h+e.length,margin:/\s/.test(r.charAt(h+e.length))?1:0},close:{pos:n-$-t.length,margin:/\s/.test(a.charAt(d-1))?1:0}}:null}function selectedLineRanges(O){let e=[];for(let t of O.selection.ranges){let i=O.doc.lineAt(t.from),n=t.to<=i.to?i:O.doc.lineAt(t.to);n.from>i.from&&n.from==t.to&&(n=t.to==i.to+1?i:O.doc.lineAt(t.to-1));let r=e.length-1;r>=0&&e[r].to>i.from?e[r].to=n.to:e.push({from:i.from+/^\s*/.exec(i.text)[0].length,to:n.to})}return e}function changeBlockComment(O,e,t=e.selection.ranges){let i=t.map((O=>getConfig(e,O.from).block));if(!i.every((O=>O)))return null;let n=t.map(((O,t)=>findBlockComment(e,i[t],O.from,O.to)));if(2!=O&&!n.every((O=>O)))return{changes:e.changes(t.map(((O,e)=>n[e]?[]:[{from:O.from,insert:i[e].open+" "},{from:O.to,insert:" "+i[e].close}])))};if(1!=O&&n.some((O=>O))){let O=[];for(let e,t=0;t<n.length;t++)if(e=n[t]){let n=i[t],{open:r,close:a}=e;O.push({from:r.pos-n.open.length,to:r.pos+r.margin},{from:a.pos-a.margin,to:a.pos+n.close.length})}return{changes:O}}return null}function changeLineComment(O,e,t=e.selection.ranges){let i=[],n=-1;for(let{from:O,to:r}of t){let t=i.length,a=1e9,s=getConfig(e,O).line;if(s){for(let t=O;t<=r;){let o=e.doc.lineAt(t);if(o.from>n&&(O==r||r>o.from)){n=o.from;let O=/^\s*/.exec(o.text)[0].length,e=O==o.length,t=o.text.slice(O,O+s.length)==s?O:-1;O<o.text.length&&O<a&&(a=O),i.push({line:o,comment:t,token:s,indent:O,empty:e,single:!1})}t=o.to+1}if(a<1e9)for(let O=t;O<i.length;O++)i[O].indent<i[O].line.text.length&&(i[O].indent=a);i.length==t+1&&(i[t].single=!0)}}if(2!=O&&i.some((O=>O.comment<0&&(!O.empty||O.single)))){let O=[];for(let{line:e,token:t,indent:n,empty:r,single:a}of i)!a&&r||O.push({from:e.from+n,insert:t+" "});let t=e.changes(O);return{changes:t,selection:e.selection.map(t,1)}}if(1!=O&&i.some((O=>O.comment>=0))){let O=[];for(let{line:e,comment:t,token:n}of i)if(t>=0){let i=e.from+t,r=i+n.length;" "==e.text[r-e.from]&&r++,O.push({from:i,to:r})}return{changes:O}}return null}const fromHistory=Annotation.define(),isolateHistory=Annotation.define(),invertedEffects=Facet.define(),historyConfig=Facet.define({combine:O=>combineConfig(O,{minDepth:100,newGroupDelay:500,joinToEvent:(O,e)=>e},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(O,e)=>(t,i)=>O(t,i)||e(t,i)})}),historyField_=StateField.define({create:()=>HistoryState.empty,update(O,e){let t=e.state.facet(historyConfig),i=e.annotation(fromHistory);if(i){let n=HistEvent.fromTransaction(e,i.selection),r=i.side,a=0==r?O.undone:O.done;return a=n?updateBranch(a,a.length,t.minDepth,n):addSelection(a,e.startState.selection),new HistoryState(0==r?i.rest:a,0==r?a:i.rest)}let n=e.annotation(isolateHistory);if("full"!=n&&"before"!=n||(O=O.isolate()),!1===e.annotation(Transaction.addToHistory))return e.changes.empty?O:O.addMapping(e.changes.desc);let r=HistEvent.fromTransaction(e),a=e.annotation(Transaction.time),s=e.annotation(Transaction.userEvent);return r?O=O.addChanges(r,a,s,t,e):e.selection&&(O=O.addSelection(e.startState.selection,a,s,t.newGroupDelay)),"full"!=n&&"after"!=n||(O=O.isolate()),O},toJSON:O=>({done:O.done.map((O=>O.toJSON())),undone:O.undone.map((O=>O.toJSON()))}),fromJSON:O=>new HistoryState(O.done.map(HistEvent.fromJSON),O.undone.map(HistEvent.fromJSON))});function history(O={}){return[historyField_,historyConfig.of(O),EditorView.domEventHandlers({beforeinput(O,e){let t="historyUndo"==O.inputType?undo:"historyRedo"==O.inputType?redo:null;return!!t&&(O.preventDefault(),t(e))}})]}function cmd(O,e){return function({state:t,dispatch:i}){if(!e&&t.readOnly)return!1;let n=t.field(historyField_,!1);if(!n)return!1;let r=n.pop(O,t,e);return!!r&&(i(r),!0)}}const undo=cmd(0,!1),redo=cmd(1,!1),undoSelection=cmd(0,!0),redoSelection=cmd(1,!0);class HistEvent{constructor(O,e,t,i,n){this.changes=O,this.effects=e,this.mapped=t,this.startSelection=i,this.selectionsAfter=n}setSelAfter(O){return new HistEvent(this.changes,this.effects,this.mapped,this.startSelection,O)}toJSON(){var O,e,t;return{changes:null===(O=this.changes)||void 0===O?void 0:O.toJSON(),mapped:null===(e=this.mapped)||void 0===e?void 0:e.toJSON(),startSelection:null===(t=this.startSelection)||void 0===t?void 0:t.toJSON(),selectionsAfter:this.selectionsAfter.map((O=>O.toJSON()))}}static fromJSON(O){return new HistEvent(O.changes&&ChangeSet.fromJSON(O.changes),[],O.mapped&&ChangeDesc.fromJSON(O.mapped),O.startSelection&&EditorSelection.fromJSON(O.startSelection),O.selectionsAfter.map(EditorSelection.fromJSON))}static fromTransaction(O,e){let t=none$1;for(let e of O.startState.facet(invertedEffects)){let i=e(O);i.length&&(t=t.concat(i))}return!t.length&&O.changes.empty?null:new HistEvent(O.changes.invert(O.startState.doc),t,void 0,e||O.startState.selection,none$1)}static selection(O){return new HistEvent(void 0,none$1,void 0,void 0,O)}}function updateBranch(O,e,t,i){let n=e+1>t+20?e-t-1:0,r=O.slice(n,e);return r.push(i),r}function isAdjacent(O,e){let t=[],i=!1;return O.iterChangedRanges(((O,e)=>t.push(O,e))),e.iterChangedRanges(((O,e,n,r)=>{for(let O=0;O<t.length;){let e=t[O++],a=t[O++];r>=e&&n<=a&&(i=!0)}})),i}function eqSelectionShape(O,e){return O.ranges.length==e.ranges.length&&0===O.ranges.filter(((O,t)=>O.empty!=e.ranges[t].empty)).length}function conc(O,e){return O.length?e.length?O.concat(e):O:e}const none$1=[],MaxSelectionsPerEvent=200;function addSelection(O,e){if(O.length){let t=O[O.length-1],i=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-MaxSelectionsPerEvent));return i.length&&i[i.length-1].eq(e)?O:(i.push(e),updateBranch(O,O.length-1,1e9,t.setSelAfter(i)))}return[HistEvent.selection([e])]}function popSelection(O){let e=O[O.length-1],t=O.slice();return t[O.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function addMappingToBranch(O,e){if(!O.length)return O;let t=O.length,i=none$1;for(;t;){let n=mapEvent(O[t-1],e,i);if(n.changes&&!n.changes.empty||n.effects.length){let e=O.slice(0,t);return e[t-1]=n,e}e=n.mapped,t--,i=n.selectionsAfter}return i.length?[HistEvent.selection(i)]:none$1}function mapEvent(O,e,t){let i=conc(O.selectionsAfter.length?O.selectionsAfter.map((O=>O.map(e))):none$1,t);if(!O.changes)return HistEvent.selection(i);let n=O.changes.map(e),r=e.mapDesc(O.changes,!0),a=O.mapped?O.mapped.composeDesc(r):r;return new HistEvent(n,StateEffect.mapEffects(O.effects,e),a,O.startSelection.map(r),i)}const joinableUserEvent=/^(input\.type|delete)($|\.)/;class HistoryState{constructor(O,e,t=0,i=void 0){this.done=O,this.undone=e,this.prevTime=t,this.prevUserEvent=i}isolate(){return this.prevTime?new HistoryState(this.done,this.undone):this}addChanges(O,e,t,i,n){let r=this.done,a=r[r.length-1];return r=a&&a.changes&&!a.changes.empty&&O.changes&&(!t||joinableUserEvent.test(t))&&(!a.selectionsAfter.length&&e-this.prevTime<i.newGroupDelay&&i.joinToEvent(n,isAdjacent(a.changes,O.changes))||"input.type.compose"==t)?updateBranch(r,r.length-1,i.minDepth,new HistEvent(O.changes.compose(a.changes),conc(StateEffect.mapEffects(O.effects,a.changes),a.effects),a.mapped,a.startSelection,none$1)):updateBranch(r,r.length,i.minDepth,O),new HistoryState(r,none$1,e,t)}addSelection(O,e,t,i){let n=this.done.length?this.done[this.done.length-1].selectionsAfter:none$1;return n.length>0&&e-this.prevTime<i&&t==this.prevUserEvent&&t&&/^select($|\.)/.test(t)&&eqSelectionShape(n[n.length-1],O)?this:new HistoryState(addSelection(this.done,O),this.undone,e,t)}addMapping(O){return new HistoryState(addMappingToBranch(this.done,O),addMappingToBranch(this.undone,O),this.prevTime,this.prevUserEvent)}pop(O,e,t){let i=0==O?this.done:this.undone;if(0==i.length)return null;let n=i[i.length-1],r=n.selectionsAfter[0]||e.selection;if(t&&n.selectionsAfter.length)return e.update({selection:n.selectionsAfter[n.selectionsAfter.length-1],annotations:fromHistory.of({side:O,rest:popSelection(i),selection:r}),userEvent:0==O?"select.undo":"select.redo",scrollIntoView:!0});if(n.changes){let t=1==i.length?none$1:i.slice(0,i.length-1);return n.mapped&&(t=addMappingToBranch(t,n.mapped)),e.update({changes:n.changes,selection:n.startSelection,effects:n.effects,annotations:fromHistory.of({side:O,rest:t,selection:r}),filter:!1,userEvent:0==O?"undo":"redo",scrollIntoView:!0})}return null}}HistoryState.empty=new HistoryState(none$1,none$1);const historyKeymap=[{key:"Mod-z",run:undo,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:redo,preventDefault:!0},{linux:"Ctrl-Shift-z",run:redo,preventDefault:!0},{key:"Mod-u",run:undoSelection,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:redoSelection,preventDefault:!0}];function updateSel(O,e){return EditorSelection.create(O.ranges.map(e),O.mainIndex)}function setSel(O,e){return O.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function moveSel({state:O,dispatch:e},t){let i=updateSel(O.selection,t);return!i.eq(O.selection,!0)&&(e(setSel(O,i)),!0)}function rangeEnd(O,e){return EditorSelection.cursor(e?O.to:O.from)}function cursorByChar(O,e){return moveSel(O,(t=>t.empty?O.moveByChar(t,e):rangeEnd(t,e)))}function ltrAtCursor(O){return O.textDirectionAt(O.state.selection.main.head)==Direction.LTR}const cursorCharLeft=O=>cursorByChar(O,!ltrAtCursor(O)),cursorCharRight=O=>cursorByChar(O,ltrAtCursor(O));function cursorByGroup(O,e){return moveSel(O,(t=>t.empty?O.moveByGroup(t,e):rangeEnd(t,e)))}const cursorGroupLeft=O=>cursorByGroup(O,!ltrAtCursor(O)),cursorGroupRight=O=>cursorByGroup(O,ltrAtCursor(O));function interestingNode(O,e,t){if(e.type.prop(t))return!0;let i=e.to-e.from;return i&&(i>2||/[^\s,.;:]/.test(O.sliceDoc(e.from,e.to)))||e.firstChild}function moveBySyntax(O,e,t){let i,n,r=syntaxTree(O).resolveInner(e.head),a=t?NodeProp.closedBy:NodeProp.openedBy;for(let i=e.head;;){let e=t?r.childAfter(i):r.childBefore(i);if(!e)break;interestingNode(O,e,a)?r=e:i=t?e.to:e.from}return n=r.type.prop(a)&&(i=t?matchBrackets(O,r.from,1):matchBrackets(O,r.to,-1))&&i.matched?t?i.end.to:i.end.from:t?r.to:r.from,EditorSelection.cursor(n,t?-1:1)}const cursorSyntaxLeft=O=>moveSel(O,(e=>moveBySyntax(O.state,e,!ltrAtCursor(O)))),cursorSyntaxRight=O=>moveSel(O,(e=>moveBySyntax(O.state,e,ltrAtCursor(O))));function cursorByLine(O,e){return moveSel(O,(t=>{if(!t.empty)return rangeEnd(t,e);let i=O.moveVertically(t,e);return i.head!=t.head?i:O.moveToLineBoundary(t,e)}))}const cursorLineUp=O=>cursorByLine(O,!1),cursorLineDown=O=>cursorByLine(O,!0);function pageInfo(O){let e,t=O.scrollDOM.clientHeight<O.scrollDOM.scrollHeight-2,i=0,n=0;if(t){for(let e of O.state.facet(EditorView.scrollMargins)){let t=e(O);(null==t?void 0:t.top)&&(i=Math.max(null==t?void 0:t.top,i)),(null==t?void 0:t.bottom)&&(n=Math.max(null==t?void 0:t.bottom,n))}e=O.scrollDOM.clientHeight-i-n}else e=(O.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:i,marginBottom:n,selfScroll:t,height:Math.max(O.defaultLineHeight,e-5)}}function cursorByPage(O,e){let t,i=pageInfo(O),{state:n}=O,r=updateSel(n.selection,(t=>t.empty?O.moveVertically(t,e,i.height):rangeEnd(t,e)));if(r.eq(n.selection))return!1;if(i.selfScroll){let e=O.coordsAtPos(n.selection.main.head),a=O.scrollDOM.getBoundingClientRect(),s=a.top+i.marginTop,o=a.bottom-i.marginBottom;e&&e.top>s&&e.bottom<o&&(t=EditorView.scrollIntoView(r.main.head,{y:"start",yMargin:e.top-s}))}return O.dispatch(setSel(n,r),{effects:t}),!0}const cursorPageUp=O=>cursorByPage(O,!1),cursorPageDown=O=>cursorByPage(O,!0);function moveByLineBoundary(O,e,t){let i=O.lineBlockAt(e.head),n=O.moveToLineBoundary(e,t);if(n.head==e.head&&n.head!=(t?i.to:i.from)&&(n=O.moveToLineBoundary(e,t,!1)),!t&&n.head==i.from&&i.length){let t=/^\s*/.exec(O.state.sliceDoc(i.from,Math.min(i.from+100,i.to)))[0].length;t&&e.head!=i.from+t&&(n=EditorSelection.cursor(i.from+t))}return n}const cursorLineBoundaryForward=O=>moveSel(O,(e=>moveByLineBoundary(O,e,!0))),cursorLineBoundaryBackward=O=>moveSel(O,(e=>moveByLineBoundary(O,e,!1))),cursorLineBoundaryLeft=O=>moveSel(O,(e=>moveByLineBoundary(O,e,!ltrAtCursor(O)))),cursorLineBoundaryRight=O=>moveSel(O,(e=>moveByLineBoundary(O,e,ltrAtCursor(O)))),cursorLineStart=O=>moveSel(O,(e=>EditorSelection.cursor(O.lineBlockAt(e.head).from,1))),cursorLineEnd=O=>moveSel(O,(e=>EditorSelection.cursor(O.lineBlockAt(e.head).to,-1)));function toMatchingBracket(O,e,t){let i=!1,n=updateSel(O.selection,(e=>{let t=matchBrackets(O,e.head,-1)||matchBrackets(O,e.head,1)||e.head>0&&matchBrackets(O,e.head-1,1)||e.head<O.doc.length&&matchBrackets(O,e.head+1,-1);if(!t||!t.end)return e;i=!0;let n=t.start.from==e.head?t.end.to:t.end.from;return EditorSelection.cursor(n)}));return!!i&&(e(setSel(O,n)),!0)}const cursorMatchingBracket=({state:O,dispatch:e})=>toMatchingBracket(O,e);function extendSel(O,e){let t=updateSel(O.state.selection,(O=>{let t=e(O);return EditorSelection.range(O.anchor,t.head,t.goalColumn,t.bidiLevel||void 0)}));return!t.eq(O.state.selection)&&(O.dispatch(setSel(O.state,t)),!0)}function selectByChar(O,e){return extendSel(O,(t=>O.moveByChar(t,e)))}const selectCharLeft=O=>selectByChar(O,!ltrAtCursor(O)),selectCharRight=O=>selectByChar(O,ltrAtCursor(O));function selectByGroup(O,e){return extendSel(O,(t=>O.moveByGroup(t,e)))}const selectGroupLeft=O=>selectByGroup(O,!ltrAtCursor(O)),selectGroupRight=O=>selectByGroup(O,ltrAtCursor(O)),selectSyntaxLeft=O=>extendSel(O,(e=>moveBySyntax(O.state,e,!ltrAtCursor(O)))),selectSyntaxRight=O=>extendSel(O,(e=>moveBySyntax(O.state,e,ltrAtCursor(O))));function selectByLine(O,e){return extendSel(O,(t=>O.moveVertically(t,e)))}const selectLineUp=O=>selectByLine(O,!1),selectLineDown=O=>selectByLine(O,!0);function selectByPage(O,e){return extendSel(O,(t=>O.moveVertically(t,e,pageInfo(O).height)))}const selectPageUp=O=>selectByPage(O,!1),selectPageDown=O=>selectByPage(O,!0),selectLineBoundaryForward=O=>extendSel(O,(e=>moveByLineBoundary(O,e,!0))),selectLineBoundaryBackward=O=>extendSel(O,(e=>moveByLineBoundary(O,e,!1))),selectLineBoundaryLeft=O=>extendSel(O,(e=>moveByLineBoundary(O,e,!ltrAtCursor(O)))),selectLineBoundaryRight=O=>extendSel(O,(e=>moveByLineBoundary(O,e,ltrAtCursor(O)))),selectLineStart=O=>extendSel(O,(e=>EditorSelection.cursor(O.lineBlockAt(e.head).from))),selectLineEnd=O=>extendSel(O,(e=>EditorSelection.cursor(O.lineBlockAt(e.head).to))),cursorDocStart=({state:O,dispatch:e})=>(e(setSel(O,{anchor:0})),!0),cursorDocEnd=({state:O,dispatch:e})=>(e(setSel(O,{anchor:O.doc.length})),!0),selectDocStart=({state:O,dispatch:e})=>(e(setSel(O,{anchor:O.selection.main.anchor,head:0})),!0),selectDocEnd=({state:O,dispatch:e})=>(e(setSel(O,{anchor:O.selection.main.anchor,head:O.doc.length})),!0),selectAll=({state:O,dispatch:e})=>(e(O.update({selection:{anchor:0,head:O.doc.length},userEvent:"select"})),!0),selectLine=({state:O,dispatch:e})=>{let t=selectedLineBlocks(O).map((({from:e,to:t})=>EditorSelection.range(e,Math.min(t+1,O.doc.length))));return e(O.update({selection:EditorSelection.create(t),userEvent:"select"})),!0},selectParentSyntax=({state:O,dispatch:e})=>{let t=updateSel(O.selection,(e=>{let t=syntaxTree(O),i=t.resolveStack(e.from,1);if(e.empty){let O=t.resolveStack(e.from,-1);O.node.from>=i.node.from&&O.node.to<=i.node.to&&(i=O)}for(let O=i;O;O=O.next){let{node:t}=O;if((t.from<e.from&&t.to>=e.to||t.to>e.to&&t.from<=e.from)&&O.next)return EditorSelection.range(t.to,t.from)}return e}));return!t.eq(O.selection)&&(e(setSel(O,t)),!0)},simplifySelection=({state:O,dispatch:e})=>{let t=O.selection,i=null;return t.ranges.length>1?i=EditorSelection.create([t.main]):t.main.empty||(i=EditorSelection.create([EditorSelection.cursor(t.main.head)])),!!i&&(e(setSel(O,i)),!0)};function deleteBy(O,e){if(O.state.readOnly)return!1;let t="delete.selection",{state:i}=O,n=i.changeByRange((i=>{let{from:n,to:r}=i;if(n==r){let a=e(i);a<n?(t="delete.backward",a=skipAtomic(O,a,!1)):a>n&&(t="delete.forward",a=skipAtomic(O,a,!0)),n=Math.min(n,a),r=Math.max(r,a)}else n=skipAtomic(O,n,!1),r=skipAtomic(O,r,!0);return n==r?{range:i}:{changes:{from:n,to:r},range:EditorSelection.cursor(n,n<i.head?-1:1)}}));return!n.changes.empty&&(O.dispatch(i.update(n,{scrollIntoView:!0,userEvent:t,effects:"delete.selection"==t?EditorView.announce.of(i.phrase("Selection deleted")):void 0})),!0)}function skipAtomic(O,e,t){if(O instanceof EditorView)for(let i of O.state.facet(EditorView.atomicRanges).map((e=>e(O))))i.between(e,e,((O,i)=>{O<e&&i>e&&(e=t?i:O)}));return e}const deleteByChar=(O,e,t)=>deleteBy(O,(i=>{let n,r,a=i.from,{state:s}=O,o=s.doc.lineAt(a);if(t&&!e&&a>o.from&&a<o.from+200&&!/[^ \t]/.test(n=o.text.slice(0,a-o.from))){if("\t"==n[n.length-1])return a-1;let O=countColumn(n,s.tabSize)%getIndentUnit(s)||getIndentUnit(s);for(let e=0;e<O&&" "==n[n.length-1-e];e++)a--;r=a}else r=findClusterBreak(o.text,a-o.from,e,e)+o.from,r==a&&o.number!=(e?s.doc.lines:1)?r+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(o.text.slice(r-o.from,a-o.from))&&(r=findClusterBreak(o.text,r-o.from,!1,!1)+o.from);return r})),deleteCharBackward=O=>deleteByChar(O,!1,!0),deleteCharForward=O=>deleteByChar(O,!0,!1),deleteByGroup=(O,e)=>deleteBy(O,(t=>{let i=t.head,{state:n}=O,r=n.doc.lineAt(i),a=n.charCategorizer(i);for(let O=null;;){if(i==(e?r.to:r.from)){i==t.head&&r.number!=(e?n.doc.lines:1)&&(i+=e?1:-1);break}let s=findClusterBreak(r.text,i-r.from,e)+r.from,o=r.text.slice(Math.min(i,s)-r.from,Math.max(i,s)-r.from),l=a(o);if(null!=O&&l!=O)break;" "==o&&i==t.head||(O=l),i=s}return i})),deleteGroupBackward=O=>deleteByGroup(O,!1),deleteGroupForward=O=>deleteByGroup(O,!0),deleteToLineEnd=O=>deleteBy(O,(e=>{let t=O.lineBlockAt(e.head).to;return e.head<t?t:Math.min(O.state.doc.length,e.head+1)})),deleteLineBoundaryBackward=O=>deleteBy(O,(e=>{let t=O.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)})),deleteLineBoundaryForward=O=>deleteBy(O,(e=>{let t=O.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(O.state.doc.length,e.head+1)})),splitLine=({state:O,dispatch:e})=>{if(O.readOnly)return!1;let t=O.changeByRange((O=>({changes:{from:O.from,to:O.to,insert:Text.of(["",""])},range:EditorSelection.cursor(O.from)})));return e(O.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},transposeChars=({state:O,dispatch:e})=>{if(O.readOnly)return!1;let t=O.changeByRange((e=>{if(!e.empty||0==e.from||e.from==O.doc.length)return{range:e};let t=e.from,i=O.doc.lineAt(t),n=t==i.from?t-1:findClusterBreak(i.text,t-i.from,!1)+i.from,r=t==i.to?t+1:findClusterBreak(i.text,t-i.from,!0)+i.from;return{changes:{from:n,to:r,insert:O.doc.slice(t,r).append(O.doc.slice(n,t))},range:EditorSelection.cursor(r)}}));return!t.changes.empty&&(e(O.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function selectedLineBlocks(O){let e=[],t=-1;for(let i of O.selection.ranges){let n=O.doc.lineAt(i.from),r=O.doc.lineAt(i.to);if(i.empty||i.to!=r.from||(r=O.doc.lineAt(i.to-1)),t>=n.number){let O=e[e.length-1];O.to=r.to,O.ranges.push(i)}else e.push({from:n.from,to:r.to,ranges:[i]});t=r.number+1}return e}function moveLine(O,e,t){if(O.readOnly)return!1;let i=[],n=[];for(let e of selectedLineBlocks(O)){if(t?e.to==O.doc.length:0==e.from)continue;let r=O.doc.lineAt(t?e.to+1:e.from-1),a=r.length+1;if(t){i.push({from:e.to,to:r.to},{from:e.from,insert:r.text+O.lineBreak});for(let t of e.ranges)n.push(EditorSelection.range(Math.min(O.doc.length,t.anchor+a),Math.min(O.doc.length,t.head+a)))}else{i.push({from:r.from,to:e.from},{from:e.to,insert:O.lineBreak+r.text});for(let O of e.ranges)n.push(EditorSelection.range(O.anchor-a,O.head-a))}}return!!i.length&&(e(O.update({changes:i,scrollIntoView:!0,selection:EditorSelection.create(n,O.selection.mainIndex),userEvent:"move.line"})),!0)}const moveLineUp=({state:O,dispatch:e})=>moveLine(O,e,!1),moveLineDown=({state:O,dispatch:e})=>moveLine(O,e,!0);function copyLine(O,e,t){if(O.readOnly)return!1;let i=[];for(let e of selectedLineBlocks(O))t?i.push({from:e.from,insert:O.doc.slice(e.from,e.to)+O.lineBreak}):i.push({from:e.to,insert:O.lineBreak+O.doc.slice(e.from,e.to)});return e(O.update({changes:i,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const copyLineUp=({state:O,dispatch:e})=>copyLine(O,e,!1),copyLineDown=({state:O,dispatch:e})=>copyLine(O,e,!0),deleteLine=O=>{if(O.state.readOnly)return!1;let{state:e}=O,t=e.changes(selectedLineBlocks(e).map((({from:O,to:t})=>(O>0?O--:t<e.doc.length&&t++,{from:O,to:t})))),i=updateSel(e.selection,(e=>{let t;if(O.lineWrapping){let i=O.lineBlockAt(e.head),n=O.coordsAtPos(e.head,e.assoc||1);n&&(t=i.bottom+O.documentTop-n.bottom+O.defaultLineHeight/2)}return O.moveVertically(e,!0,t)})).map(t);return O.dispatch({changes:t,selection:i,scrollIntoView:!0,userEvent:"delete.line"}),!0};function isBetweenBrackets(O,e){if(/\(\)|\[\]|\{\}/.test(O.sliceDoc(e-1,e+1)))return{from:e,to:e};let t,i=syntaxTree(O).resolveInner(e),n=i.childBefore(e),r=i.childAfter(e);return n&&r&&n.to<=e&&r.from>=e&&(t=n.type.prop(NodeProp.closedBy))&&t.indexOf(r.name)>-1&&O.doc.lineAt(n.to).from==O.doc.lineAt(r.from).from&&!/\S/.test(O.sliceDoc(n.to,r.from))?{from:n.to,to:r.from}:null}const insertNewlineAndIndent=newlineAndIndent(!1),insertBlankLine=newlineAndIndent(!0);function newlineAndIndent(O){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let i=e.changeByRange((t=>{let{from:i,to:n}=t,r=e.doc.lineAt(i),a=!O&&i==n&&isBetweenBrackets(e,i);O&&(i=n=(n<=r.to?r:e.doc.lineAt(n)).to);let s=new IndentContext(e,{simulateBreak:i,simulateDoubleBreak:!!a}),o=getIndentation(s,i);for(null==o&&(o=countColumn(/^\s*/.exec(e.doc.lineAt(i).text)[0],e.tabSize));n<r.to&&/\s/.test(r.text[n-r.from]);)n++;a?({from:i,to:n}=a):i>r.from&&i<r.from+100&&!/\S/.test(r.text.slice(0,i))&&(i=r.from);let l=["",indentString(e,o)];return a&&l.push(indentString(e,s.lineIndent(r.from,-1))),{changes:{from:i,to:n,insert:Text.of(l)},range:EditorSelection.cursor(i+1+l[1].length)}}));return t(e.update(i,{scrollIntoView:!0,userEvent:"input"})),!0}}function changeBySelectedLine(O,e){let t=-1;return O.changeByRange((i=>{let n=[];for(let r=i.from;r<=i.to;){let a=O.doc.lineAt(r);a.number>t&&(i.empty||i.to>a.from)&&(e(a,n,i),t=a.number),r=a.to+1}let r=O.changes(n);return{changes:n,range:EditorSelection.range(r.mapPos(i.anchor,1),r.mapPos(i.head,1))}}))}const indentSelection=({state:O,dispatch:e})=>{if(O.readOnly)return!1;let t=Object.create(null),i=new IndentContext(O,{overrideIndentation:O=>{let e=t[O];return null==e?-1:e}}),n=changeBySelectedLine(O,((e,n,r)=>{let a=getIndentation(i,e.from);if(null==a)return;/\S/.test(e.text)||(a=0);let s=/^\s*/.exec(e.text)[0],o=indentString(O,a);(s!=o||r.from<e.from+s.length)&&(t[e.from]=a,n.push({from:e.from,to:e.from+s.length,insert:o}))}));return n.changes.empty||e(O.update(n,{userEvent:"indent"})),!0},indentMore=({state:O,dispatch:e})=>!O.readOnly&&(e(O.update(changeBySelectedLine(O,((e,t)=>{t.push({from:e.from,insert:O.facet(indentUnit)})})),{userEvent:"input.indent"})),!0),indentLess=({state:O,dispatch:e})=>!O.readOnly&&(e(O.update(changeBySelectedLine(O,((e,t)=>{let i=/^\s*/.exec(e.text)[0];if(!i)return;let n=countColumn(i,O.tabSize),r=0,a=indentString(O,Math.max(0,n-getIndentUnit(O)));for(;r<i.length&&r<a.length&&i.charCodeAt(r)==a.charCodeAt(r);)r++;t.push({from:e.from+r,to:e.from+i.length,insert:a.slice(r)})})),{userEvent:"delete.dedent"})),!0),toggleTabFocusMode=O=>(O.setTabFocusMode(),!0),emacsStyleKeymap=[{key:"Ctrl-b",run:cursorCharLeft,shift:selectCharLeft,preventDefault:!0},{key:"Ctrl-f",run:cursorCharRight,shift:selectCharRight},{key:"Ctrl-p",run:cursorLineUp,shift:selectLineUp},{key:"Ctrl-n",run:cursorLineDown,shift:selectLineDown},{key:"Ctrl-a",run:cursorLineStart,shift:selectLineStart},{key:"Ctrl-e",run:cursorLineEnd,shift:selectLineEnd},{key:"Ctrl-d",run:deleteCharForward},{key:"Ctrl-h",run:deleteCharBackward},{key:"Ctrl-k",run:deleteToLineEnd},{key:"Ctrl-Alt-h",run:deleteGroupBackward},{key:"Ctrl-o",run:splitLine},{key:"Ctrl-t",run:transposeChars},{key:"Ctrl-v",run:cursorPageDown}],standardKeymap=[{key:"ArrowLeft",run:cursorCharLeft,shift:selectCharLeft,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:cursorGroupLeft,shift:selectGroupLeft,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:cursorLineBoundaryLeft,shift:selectLineBoundaryLeft,preventDefault:!0},{key:"ArrowRight",run:cursorCharRight,shift:selectCharRight,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:cursorGroupRight,shift:selectGroupRight,preventDefault:!0},{mac:"Cmd-ArrowRight",run:cursorLineBoundaryRight,shift:selectLineBoundaryRight,preventDefault:!0},{key:"ArrowUp",run:cursorLineUp,shift:selectLineUp,preventDefault:!0},{mac:"Cmd-ArrowUp",run:cursorDocStart,shift:selectDocStart},{mac:"Ctrl-ArrowUp",run:cursorPageUp,shift:selectPageUp},{key:"ArrowDown",run:cursorLineDown,shift:selectLineDown,preventDefault:!0},{mac:"Cmd-ArrowDown",run:cursorDocEnd,shift:selectDocEnd},{mac:"Ctrl-ArrowDown",run:cursorPageDown,shift:selectPageDown},{key:"PageUp",run:cursorPageUp,shift:selectPageUp},{key:"PageDown",run:cursorPageDown,shift:selectPageDown},{key:"Home",run:cursorLineBoundaryBackward,shift:selectLineBoundaryBackward,preventDefault:!0},{key:"Mod-Home",run:cursorDocStart,shift:selectDocStart},{key:"End",run:cursorLineBoundaryForward,shift:selectLineBoundaryForward,preventDefault:!0},{key:"Mod-End",run:cursorDocEnd,shift:selectDocEnd},{key:"Enter",run:insertNewlineAndIndent,shift:insertNewlineAndIndent},{key:"Mod-a",run:selectAll},{key:"Backspace",run:deleteCharBackward,shift:deleteCharBackward},{key:"Delete",run:deleteCharForward},{key:"Mod-Backspace",mac:"Alt-Backspace",run:deleteGroupBackward},{key:"Mod-Delete",mac:"Alt-Delete",run:deleteGroupForward},{mac:"Mod-Backspace",run:deleteLineBoundaryBackward},{mac:"Mod-Delete",run:deleteLineBoundaryForward}].concat(emacsStyleKeymap.map((O=>({mac:O.key,run:O.run,shift:O.shift})))),defaultKeymap=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:cursorSyntaxLeft,shift:selectSyntaxLeft},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:cursorSyntaxRight,shift:selectSyntaxRight},{key:"Alt-ArrowUp",run:moveLineUp},{key:"Shift-Alt-ArrowUp",run:copyLineUp},{key:"Alt-ArrowDown",run:moveLineDown},{key:"Shift-Alt-ArrowDown",run:copyLineDown},{key:"Escape",run:simplifySelection},{key:"Mod-Enter",run:insertBlankLine},{key:"Alt-l",mac:"Ctrl-l",run:selectLine},{key:"Mod-i",run:selectParentSyntax,preventDefault:!0},{key:"Mod-[",run:indentLess},{key:"Mod-]",run:indentMore},{key:"Mod-Alt-\\",run:indentSelection},{key:"Shift-Mod-k",run:deleteLine},{key:"Shift-Mod-\\",run:cursorMatchingBracket},{key:"Mod-/",run:toggleComment},{key:"Alt-A",run:toggleBlockComment},{key:"Ctrl-m",mac:"Shift-Alt-m",run:toggleTabFocusMode}].concat(standardKeymap),indentWithTab={key:"Tab",run:indentMore,shift:indentLess};class Stack{constructor(O,e,t,i,n,r,a,s,o,l=0,Q){this.p=O,this.stack=e,this.state=t,this.reducePos=i,this.pos=n,this.score=r,this.buffer=a,this.bufferBase=s,this.curContext=o,this.lookAhead=l,this.parent=Q}toString(){return`[${this.stack.filter(((O,e)=>e%3==0)).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(O,e,t=0){let i=O.parser.context;return new Stack(O,[],e,t,t,0,[],0,i?new StackContext(i,i.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(O,e){this.stack.push(this.state,e,this.bufferBase+this.buffer.length),this.state=O}reduce(O){var e;let t=O>>19,i=65535&O,{parser:n}=this.p,r=this.reducePos<this.pos-25;r&&this.setLookAhead(this.pos);let a=n.dynamicPrecedence(i);if(a&&(this.score+=a),0==t)return this.pushState(n.getGoto(this.state,i,!0),this.reducePos),i<n.minRepeatTerm&&this.storeNode(i,this.reducePos,this.reducePos,r?8:4,!0),void this.reduceContext(i,this.reducePos);let s=this.stack.length-3*(t-1)-(262144&O?6:0),o=s?this.stack[s-2]:this.p.ranges[0].from,l=this.reducePos-o;l>=2e3&&!(null===(e=this.p.parser.nodeSet.types[i])||void 0===e?void 0:e.isAnonymous)&&(o==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=l):this.p.lastBigReductionSize<l&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=o,this.p.lastBigReductionSize=l));let Q=s?this.stack[s-1]:0,c=this.bufferBase+this.buffer.length-Q;if(i<n.minRepeatTerm||131072&O){let O=n.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(i,o,O,c+4,!0)}if(262144&O)this.state=this.stack[s];else{let O=this.stack[s-3];this.state=n.getGoto(O,i,!0)}for(;this.stack.length>s;)this.stack.pop();this.reduceContext(i,o)}storeNode(O,e,t,i=4,n=!1){if(0==O&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let O=this,i=this.buffer.length;if(0==i&&O.parent&&(i=O.bufferBase-O.parent.bufferBase,O=O.parent),i>0&&0==O.buffer[i-4]&&O.buffer[i-1]>-1){if(e==t)return;if(O.buffer[i-2]>=e)return void(O.buffer[i-2]=t)}}if(n&&this.pos!=t){let n=this.buffer.length;if(n>0&&0!=this.buffer[n-4]){let O=!1;for(let e=n;e>0&&this.buffer[e-2]>t;e-=4)if(this.buffer[e-1]>=0){O=!0;break}if(O)for(;n>0&&this.buffer[n-2]>t;)this.buffer[n]=this.buffer[n-4],this.buffer[n+1]=this.buffer[n-3],this.buffer[n+2]=this.buffer[n-2],this.buffer[n+3]=this.buffer[n-1],n-=4,i>4&&(i-=4)}this.buffer[n]=O,this.buffer[n+1]=e,this.buffer[n+2]=t,this.buffer[n+3]=i}else this.buffer.push(O,e,t,i)}shift(O,e,t,i){if(131072&O)this.pushState(65535&O,this.pos);else if(262144&O)this.pos=i,this.shiftContext(e,t),e<=this.p.parser.maxNode&&this.buffer.push(e,t,i,4);else{let n=O,{parser:r}=this.p;(i>this.pos||e<=r.maxNode)&&(this.pos=i,r.stateFlag(n,1)||(this.reducePos=i)),this.pushState(n,t),this.shiftContext(e,t),e<=r.maxNode&&this.buffer.push(e,t,i,4)}}apply(O,e,t,i){65536&O?this.reduce(O):this.shift(O,e,t,i)}useNode(O,e){let t=this.p.reused.length-1;(t<0||this.p.reused[t]!=O)&&(this.p.reused.push(O),t++);let i=this.pos;this.reducePos=this.pos=i+O.length,this.pushState(e,i),this.buffer.push(t,i,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,O,this,this.p.stream.reset(this.pos-O.length)))}split(){let O=this,e=O.buffer.length;for(;e>0&&O.buffer[e-2]>O.reducePos;)e-=4;let t=O.buffer.slice(e),i=O.bufferBase+e;for(;O&&i==O.bufferBase;)O=O.parent;return new Stack(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,t,i,this.curContext,this.lookAhead,O)}recoverByDelete(O,e){let t=O<=this.p.parser.maxNode;t&&this.storeNode(O,this.pos,e,4),this.storeNode(0,this.pos,e,t?8:4),this.pos=this.reducePos=e,this.score-=190}canShift(O){for(let e=new SimulatedStack(this);;){let t=this.p.parser.stateSlot(e.state,4)||this.p.parser.hasAction(e.state,O);if(0==t)return!1;if(!(65536&t))return!0;e.reduce(t)}}recoverByInsert(O){if(this.stack.length>=300)return[];let e=this.p.parser.nextStates(this.state);if(e.length>8||this.stack.length>=120){let t=[];for(let i,n=0;n<e.length;n+=2)(i=e[n+1])!=this.state&&this.p.parser.hasAction(i,O)&&t.push(e[n],i);if(this.stack.length<120)for(let O=0;t.length<8&&O<e.length;O+=2){let i=e[O+1];t.some(((O,e)=>1&e&&O==i))||t.push(e[O],i)}e=t}let t=[];for(let O=0;O<e.length&&t.length<4;O+=2){let i=e[O+1];if(i==this.state)continue;let n=this.split();n.pushState(i,this.pos),n.storeNode(0,n.pos,n.pos,4,!0),n.shiftContext(e[O],this.pos),n.reducePos=this.pos,n.score-=200,t.push(n)}return t}forceReduce(){let{parser:O}=this.p,e=O.stateSlot(this.state,5);if(!(65536&e))return!1;if(!O.validAction(this.state,e)){let t=e>>19,i=65535&e,n=this.stack.length-3*t;if(n<0||O.getGoto(this.stack[n],i,!1)<0){let O=this.findForcedReduction();if(null==O)return!1;e=O}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(e),!0}findForcedReduction(){let{parser:O}=this.p,e=[],t=(i,n)=>{if(!e.includes(i))return e.push(i),O.allActions(i,(e=>{if(393216&e);else if(65536&e){let t=(e>>19)-n;if(t>1){let i=65535&e,n=this.stack.length-3*t;if(n>=0&&O.getGoto(this.stack[n],i,!1)>=0)return t<<19|65536|i}}else{let O=t(e,n+1);if(null!=O)return O}}))};return t(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(3!=this.stack.length)return!1;let{parser:O}=this.p;return 65535==O.data[O.stateSlot(this.state,1)]&&!O.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(O){if(this.state!=O.state||this.stack.length!=O.stack.length)return!1;for(let e=0;e<this.stack.length;e+=3)if(this.stack[e]!=O.stack[e])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(O){return this.p.parser.dialect.flags[O]}shiftContext(O,e){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,O,this,this.p.stream.reset(e)))}reduceContext(O,e){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,O,this,this.p.stream.reset(e)))}emitContext(){let O=this.buffer.length-1;(O<0||-3!=this.buffer[O])&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let O=this.buffer.length-1;(O<0||-4!=this.buffer[O])&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(O){if(O!=this.curContext.context){let e=new StackContext(this.curContext.tracker,O);e.hash!=this.curContext.hash&&this.emitContext(),this.curContext=e}}setLookAhead(O){O>this.lookAhead&&(this.emitLookAhead(),this.lookAhead=O)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class StackContext{constructor(O,e){this.tracker=O,this.context=e,this.hash=O.strict?O.hash(e):0}}class SimulatedStack{constructor(O){this.start=O,this.state=O.state,this.stack=O.stack,this.base=this.stack.length}reduce(O){let e=65535&O,t=O>>19;0==t?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=3*(t-1);let i=this.start.p.parser.getGoto(this.stack[this.base-3],e,!0);this.state=i}}class StackBufferCursor{constructor(O,e,t){this.stack=O,this.pos=e,this.index=t,this.buffer=O.buffer,0==this.index&&this.maybeNext()}static create(O,e=O.bufferBase+O.buffer.length){return new StackBufferCursor(O,e,e-O.bufferBase)}maybeNext(){let O=this.stack.parent;null!=O&&(this.index=this.stack.bufferBase-O.bufferBase,this.stack=O,this.buffer=O.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 StackBufferCursor(this.stack,this.pos,this.index)}}function decodeArray(O,e=Uint16Array){if("string"!=typeof O)return O;let t=null;for(let i=0,n=0;i<O.length;){let r=0;for(;;){let e=O.charCodeAt(i++),t=!1;if(126==e){r=65535;break}e>=92&&e--,e>=34&&e--;let n=e-32;if(n>=46&&(n-=46,t=!0),r+=n,t)break;r*=46}t?t[n++]=r:t=new e(r)}return t}class CachedToken{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const nullToken=new CachedToken;class InputStream{constructor(O,e){this.input=O,this.ranges=e,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=nullToken,this.rangeIndex=0,this.pos=this.chunkPos=e[0].from,this.range=e[0],this.end=e[e.length-1].to,this.readNext()}resolveOffset(O,e){let t=this.range,i=this.rangeIndex,n=this.pos+O;for(;n<t.from;){if(!i)return null;let O=this.ranges[--i];n-=t.from-O.to,t=O}for(;e<0?n>t.to:n>=t.to;){if(i==this.ranges.length-1)return null;let O=this.ranges[++i];n+=O.from-t.to,t=O}return n}clipPos(O){if(O>=this.range.from&&O<this.range.to)return O;for(let e of this.ranges)if(e.to>O)return Math.max(O,e.from);return this.end}peek(O){let e,t,i=this.chunkOff+O;if(i>=0&&i<this.chunk.length)e=this.pos+O,t=this.chunk.charCodeAt(i);else{let i=this.resolveOffset(O,1);if(null==i)return-1;if(e=i,e>=this.chunk2Pos&&e<this.chunk2Pos+this.chunk2.length)t=this.chunk2.charCodeAt(e-this.chunk2Pos);else{let O=this.rangeIndex,i=this.range;for(;i.to<=e;)i=this.ranges[++O];this.chunk2=this.input.chunk(this.chunk2Pos=e),e+this.chunk2.length>i.to&&(this.chunk2=this.chunk2.slice(0,i.to-e)),t=this.chunk2.charCodeAt(0)}}return e>=this.token.lookAhead&&(this.token.lookAhead=e+1),t}acceptToken(O,e=0){let t=e?this.resolveOffset(e,-1):this.pos;if(null==t||t<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=O,this.token.end=t}acceptTokenTo(O,e){this.token.value=O,this.token.end=e}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:O,chunkPos:e}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=O,this.chunk2Pos=e,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let O=this.input.chunk(this.pos),e=this.pos+O.length;this.chunk=e>this.range.to?O.slice(0,this.range.to-this.pos):O,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(O=1){for(this.chunkOff+=O;this.pos+O>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();O-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=O,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),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(O,e){if(e?(this.token=e,e.start=O,e.lookAhead=O+1,e.value=e.extended=-1):this.token=nullToken,this.pos!=O){if(this.pos=O,O==this.end)return this.setDone(),this;for(;O<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;O>=this.range.to;)this.range=this.ranges[++this.rangeIndex];O>=this.chunkPos&&O<this.chunkPos+this.chunk.length?this.chunkOff=O-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(O,e){if(O>=this.chunkPos&&e<=this.chunkPos+this.chunk.length)return this.chunk.slice(O-this.chunkPos,e-this.chunkPos);if(O>=this.chunk2Pos&&e<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(O-this.chunk2Pos,e-this.chunk2Pos);if(O>=this.range.from&&e<=this.range.to)return this.input.read(O,e);let t="";for(let i of this.ranges){if(i.from>=e)break;i.to>O&&(t+=this.input.read(Math.max(i.from,O),Math.min(i.to,e)))}return t}}class TokenGroup{constructor(O,e){this.data=O,this.id=e}token(O,e){let{parser:t}=e.p;readToken(this.data,O,e,this.id,t.data,t.tokenPrecTable)}}TokenGroup.prototype.contextual=TokenGroup.prototype.fallback=TokenGroup.prototype.extend=!1;class LocalTokenGroup{constructor(O,e,t){this.precTable=e,this.elseToken=t,this.data="string"==typeof O?decodeArray(O):O}token(O,e){let t=O.pos,i=0;for(;;){let t=O.next<0,n=O.resolveOffset(1,1);if(readToken(this.data,O,e,0,this.data,this.precTable),O.token.value>-1)break;if(null==this.elseToken)return;if(t||i++,null==n)break;O.reset(n,O.token)}i&&(O.reset(t,O.token),O.acceptToken(this.elseToken,i))}}LocalTokenGroup.prototype.contextual=TokenGroup.prototype.fallback=TokenGroup.prototype.extend=!1;class ExternalTokenizer{constructor(O,e={}){this.token=O,this.contextual=!!e.contextual,this.fallback=!!e.fallback,this.extend=!!e.extend}}function readToken(O,e,t,i,n,r){let a=0,s=1<<i,{dialect:o}=t.p.parser;O:for(;s&O[a];){let t=O[a+1];for(let i=a+3;i<t;i+=2)if((O[i+1]&s)>0){let t=O[i];if(o.allows(t)&&(-1==e.token.value||e.token.value==t||overrides(t,e.token.value,n,r))){e.acceptToken(t);break}}let i=e.next,l=0,Q=O[a+2];if(!(e.next<0&&Q>l&&65535==O[t+3*Q-3])){for(;l<Q;){let n=l+Q>>1,r=t+n+(n<<1),s=O[r],o=O[r+1]||65536;if(i<s)Q=n;else{if(!(i>=o)){a=O[r+2],e.advance();continue O}l=n+1}}break}a=O[t+3*Q-1]}}function findOffset(O,e,t){for(let i,n=e;65535!=(i=O[n]);n++)if(i==t)return n-e;return-1}function overrides(O,e,t,i){let n=findOffset(t,i,e);return n<0||findOffset(t,i,O)<n}const verbose="undefined"!=typeof process&&process.env&&/\bparse\b/.test(process.env.LOG);let stackIDs=null;function cutAt(O,e,t){let i=O.cursor(IterMode.IncludeAnonymous);for(i.moveTo(e);;)if(!(t<0?i.childBefore(e):i.childAfter(e)))for(;;){if((t<0?i.to<e:i.from>e)&&!i.type.isError)return t<0?Math.max(0,Math.min(i.to-1,e-25)):Math.min(O.length,Math.max(i.from+1,e+25));if(t<0?i.prevSibling():i.nextSibling())break;if(!i.parent())return t<0?0:O.length}}let FragmentCursor$1=class{constructor(O,e){this.fragments=O,this.nodeSet=e,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let O=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(O){for(this.safeFrom=O.openStart?cutAt(O.tree,O.from+O.offset,1)-O.offset:O.from,this.safeTo=O.openEnd?cutAt(O.tree,O.to+O.offset,-1)-O.offset:O.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(O.tree),this.start.push(-O.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(O){if(O<this.nextStart)return null;for(;this.fragment&&this.safeTo<=O;)this.nextFragment();if(!this.fragment)return null;for(;;){let e=this.trees.length-1;if(e<0)return this.nextFragment(),null;let t=this.trees[e],i=this.index[e];if(i==t.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let n=t.children[i],r=this.start[e]+t.positions[i];if(r>O)return this.nextStart=r,null;if(n instanceof Tree){if(r==O){if(r<this.safeFrom)return null;let O=r+n.length;if(O<=this.safeTo){let e=n.prop(NodeProp.lookAhead);if(!e||O+e<this.fragment.to)return n}}this.index[e]++,r+n.length>=Math.max(this.safeFrom,O)&&(this.trees.push(n),this.start.push(r),this.index.push(0))}else this.index[e]++,this.nextStart=r+n.length}}};class TokenCache{constructor(O,e){this.stream=e,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=O.tokenizers.map((O=>new CachedToken))}getActions(O){let e=0,t=null,{parser:i}=O.p,{tokenizers:n}=i,r=i.stateSlot(O.state,3),a=O.curContext?O.curContext.hash:0,s=0;for(let i=0;i<n.length;i++){if(!(1<<i&r))continue;let o=n[i],l=this.tokens[i];if((!t||o.fallback)&&((o.contextual||l.start!=O.pos||l.mask!=r||l.context!=a)&&(this.updateCachedToken(l,o,O),l.mask=r,l.context=a),l.lookAhead>l.end+25&&(s=Math.max(l.lookAhead,s)),0!=l.value)){let i=e;if(l.extended>-1&&(e=this.addActions(O,l.extended,l.end,e)),e=this.addActions(O,l.value,l.end,e),!o.extend&&(t=l,e>i))break}}for(;this.actions.length>e;)this.actions.pop();return s&&O.setLookAhead(s),t||O.pos!=this.stream.end||(t=new CachedToken,t.value=O.p.parser.eofTerm,t.start=t.end=O.pos,e=this.addActions(O,t.value,t.end,e)),this.mainToken=t,this.actions}getMainToken(O){if(this.mainToken)return this.mainToken;let e=new CachedToken,{pos:t,p:i}=O;return e.start=t,e.end=Math.min(t+1,i.stream.end),e.value=t==i.stream.end?i.parser.eofTerm:0,e}updateCachedToken(O,e,t){let i=this.stream.clipPos(t.pos);if(e.token(this.stream.reset(i,O),t),O.value>-1){let{parser:e}=t.p;for(let i=0;i<e.specialized.length;i++)if(e.specialized[i]==O.value){let n=e.specializers[i](this.stream.read(O.start,O.end),t);if(n>=0&&t.p.parser.dialect.allows(n>>1)){1&n?O.extended=n>>1:O.value=n>>1;break}}}else O.value=0,O.end=this.stream.clipPos(i+1)}putAction(O,e,t,i){for(let e=0;e<i;e+=3)if(this.actions[e]==O)return i;return this.actions[i++]=O,this.actions[i++]=e,this.actions[i++]=t,i}addActions(O,e,t,i){let{state:n}=O,{parser:r}=O.p,{data:a}=r;for(let O=0;O<2;O++)for(let s=r.stateSlot(n,O?2:1);;s+=3){if(65535==a[s]){if(1!=a[s+1]){0==i&&2==a[s+1]&&(i=this.putAction(pair(a,s+2),e,t,i));break}s=pair(a,s+2)}a[s]==e&&(i=this.putAction(pair(a,s+1),e,t,i))}return i}}class Parse{constructor(O,e,t,i){this.parser=O,this.input=e,this.ranges=i,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new InputStream(e,i),this.tokens=new TokenCache(O,this.stream),this.topTerm=O.top[1];let{from:n}=i[0];this.stacks=[Stack.start(this,O.top[0],n)],this.fragments=t.length&&this.stream.end-n>4*O.bufferLength?new FragmentCursor$1(t,O.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let O,e,t=this.stacks,i=this.minStackPos,n=this.stacks=[];if(this.bigReductionCount>300&&1==t.length){let[O]=t;for(;O.forceReduce()&&O.stack.length&&O.stack[O.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let r=0;r<t.length;r++){let a=t[r];for(;;){if(this.tokens.mainToken=null,a.pos>i)n.push(a);else{if(this.advanceStack(a,n,t))continue;{O||(O=[],e=[]),O.push(a);let t=this.tokens.getMainToken(a);e.push(t.value,t.end)}}break}}if(!n.length){let e=O&&findFinished(O);if(e)return verbose&&console.log("Finish with "+this.stackID(e)),this.stackToTree(e);if(this.parser.strict)throw verbose&&O&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+i);this.recovering||(this.recovering=5)}if(this.recovering&&O){let t=null!=this.stoppedAt&&O[0].pos>this.stoppedAt?O[0]:this.runRecovery(O,e,n);if(t)return verbose&&console.log("Force-finish "+this.stackID(t)),this.stackToTree(t.forceAll())}if(this.recovering){let O=1==this.recovering?1:3*this.recovering;if(n.length>O)for(n.sort(((O,e)=>e.score-O.score));n.length>O;)n.pop();n.some((O=>O.reducePos>i))&&this.recovering--}else if(n.length>1){O:for(let O=0;O<n.length-1;O++){let e=n[O];for(let t=O+1;t<n.length;t++){let i=n[t];if(e.sameState(i)||e.buffer.length>500&&i.buffer.length>500){if(!((e.score-i.score||e.buffer.length-i.buffer.length)>0)){n.splice(O--,1);continue O}n.splice(t--,1)}}}n.length>12&&n.splice(12,n.length-12)}this.minStackPos=n[0].pos;for(let O=1;O<n.length;O++)n[O].pos<this.minStackPos&&(this.minStackPos=n[O].pos);return null}stopAt(O){if(null!=this.stoppedAt&&this.stoppedAt<O)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=O}advanceStack(O,e,t){let i=O.pos,{parser:n}=this,r=verbose?this.stackID(O)+" -> ":"";if(null!=this.stoppedAt&&i>this.stoppedAt)return O.forceReduce()?O:null;if(this.fragments){let e=O.curContext&&O.curContext.tracker.strict,t=e?O.curContext.hash:0;for(let a=this.fragments.nodeAt(i);a;){let i=this.parser.nodeSet.types[a.type.id]==a.type?n.getGoto(O.state,a.type.id):-1;if(i>-1&&a.length&&(!e||(a.prop(NodeProp.contextHash)||0)==t))return O.useNode(a,i),verbose&&console.log(r+this.stackID(O)+` (via reuse of ${n.getName(a.type.id)})`),!0;if(!(a instanceof Tree)||0==a.children.length||a.positions[0]>0)break;let s=a.children[0];if(!(s instanceof Tree&&0==a.positions[0]))break;a=s}}let a=n.stateSlot(O.state,4);if(a>0)return O.reduce(a),verbose&&console.log(r+this.stackID(O)+` (via always-reduce ${n.getName(65535&a)})`),!0;if(O.stack.length>=8400)for(;O.stack.length>6e3&&O.forceReduce(););let s=this.tokens.getActions(O);for(let a=0;a<s.length;){let o=s[a++],l=s[a++],Q=s[a++],c=a==s.length||!t,h=c?O:O.split(),$=this.tokens.mainToken;if(h.apply(o,l,$?$.start:h.pos,Q),verbose&&console.log(r+this.stackID(h)+` (via ${65536&o?`reduce of ${n.getName(65535&o)}`:"shift"} for ${n.getName(l)} @ ${i}${h==O?"":", split"})`),c)return!0;h.pos>i?e.push(h):t.push(h)}return!1}advanceFully(O,e){let t=O.pos;for(;;){if(!this.advanceStack(O,null,null))return!1;if(O.pos>t)return pushStackDedup(O,e),!0}}runRecovery(O,e,t){let i=null,n=!1;for(let r=0;r<O.length;r++){let a=O[r],s=e[r<<1],o=e[1+(r<<1)],l=verbose?this.stackID(a)+" -> ":"";if(a.deadEnd){if(n)continue;if(n=!0,a.restart(),verbose&&console.log(l+this.stackID(a)+" (restarted)"),this.advanceFully(a,t))continue}let Q=a.split(),c=l;for(let O=0;Q.forceReduce()&&O<10;O++){if(verbose&&console.log(c+this.stackID(Q)+" (via force-reduce)"),this.advanceFully(Q,t))break;verbose&&(c=this.stackID(Q)+" -> ")}for(let O of a.recoverByInsert(s))verbose&&console.log(l+this.stackID(O)+" (via recover-insert)"),this.advanceFully(O,t);this.stream.end>a.pos?(o==a.pos&&(o++,s=0),a.recoverByDelete(s,o),verbose&&console.log(l+this.stackID(a)+` (via recover-delete ${this.parser.getName(s)})`),pushStackDedup(a,t)):(!i||i.score<a.score)&&(i=a)}return i}stackToTree(O){return O.close(),Tree.build({buffer:StackBufferCursor.create(O),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:O.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(O){let e=(stackIDs||(stackIDs=new WeakMap)).get(O);return e||stackIDs.set(O,e=String.fromCodePoint(this.nextStackID++)),e+O}}function pushStackDedup(O,e){for(let t=0;t<e.length;t++){let i=e[t];if(i.pos==O.pos&&i.sameState(O))return void(e[t].score<O.score&&(e[t]=O))}e.push(O)}class Dialect{constructor(O,e,t){this.source=O,this.flags=e,this.disabled=t}allows(O){return!this.disabled||0==this.disabled[O]}}const id=O=>O;class ContextTracker{constructor(O){this.start=O.start,this.shift=O.shift||id,this.reduce=O.reduce||id,this.reuse=O.reuse||id,this.hash=O.hash||(()=>0),this.strict=!1!==O.strict}}class LRParser extends Parser{constructor(O){if(super(),this.wrappers=[],14!=O.version)throw new RangeError(`Parser version (${O.version}) doesn't match runtime version (14)`);let e=O.nodeNames.split(" ");this.minRepeatTerm=e.length;for(let t=0;t<O.repeatNodeCount;t++)e.push("");let t=Object.keys(O.topRules).map((e=>O.topRules[e][1])),i=[];for(let O=0;O<e.length;O++)i.push([]);function n(O,e,t){i[O].push([e,e.deserialize(String(t))])}if(O.nodeProps)for(let e of O.nodeProps){let O=e[0];"string"==typeof O&&(O=NodeProp[O]);for(let t=1;t<e.length;){let i=e[t++];if(i>=0)n(i,O,e[t++]);else{let r=e[t+-i];for(let a=-i;a>0;a--)n(e[t++],O,r);t++}}}this.nodeSet=new NodeSet(e.map(((e,n)=>NodeType.define({name:n>=this.minRepeatTerm?void 0:e,id:n,props:i[n],top:t.indexOf(n)>-1,error:0==n,skipped:O.skippedNodes&&O.skippedNodes.indexOf(n)>-1})))),O.propSources&&(this.nodeSet=this.nodeSet.extend(...O.propSources)),this.strict=!1,this.bufferLength=DefaultBufferLength;let r=decodeArray(O.tokenData);this.context=O.context,this.specializerSpecs=O.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let O=0;O<this.specializerSpecs.length;O++)this.specialized[O]=this.specializerSpecs[O].term;this.specializers=this.specializerSpecs.map(getSpecializer),this.states=decodeArray(O.states,Uint32Array),this.data=decodeArray(O.stateData),this.goto=decodeArray(O.goto),this.maxTerm=O.maxTerm,this.tokenizers=O.tokenizers.map((O=>"number"==typeof O?new TokenGroup(r,O):O)),this.topRules=O.topRules,this.dialects=O.dialects||{},this.dynamicPrecedences=O.dynamicPrecedences||null,this.tokenPrecTable=O.tokenPrec,this.termNames=O.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(O,e,t){let i=new Parse(this,O,e,t);for(let n of this.wrappers)i=n(i,O,e,t);return i}getGoto(O,e,t=!1){let i=this.goto;if(e>=i[0])return-1;for(let n=i[e+1];;){let e=i[n++],r=1&e,a=i[n++];if(r&&t)return a;for(let t=n+(e>>1);n<t;n++)if(i[n]==O)return a;if(r)return-1}}hasAction(O,e){let t=this.data;for(let i=0;i<2;i++)for(let n,r=this.stateSlot(O,i?2:1);;r+=3){if(65535==(n=t[r])){if(1!=t[r+1]){if(2==t[r+1])return pair(t,r+2);break}n=t[r=pair(t,r+2)]}if(n==e||0==n)return pair(t,r+1)}return 0}stateSlot(O,e){return this.states[6*O+e]}stateFlag(O,e){return(this.stateSlot(O,0)&e)>0}validAction(O,e){return!!this.allActions(O,(O=>O==e||null))}allActions(O,e){let t=this.stateSlot(O,4),i=t?e(t):void 0;for(let t=this.stateSlot(O,1);null==i;t+=3){if(65535==this.data[t]){if(1!=this.data[t+1])break;t=pair(this.data,t+2)}i=e(pair(this.data,t+1))}return i}nextStates(O){let e=[];for(let t=this.stateSlot(O,1);;t+=3){if(65535==this.data[t]){if(1!=this.data[t+1])break;t=pair(this.data,t+2)}if(!(1&this.data[t+2])){let O=this.data[t+1];e.some(((e,t)=>1&t&&e==O))||e.push(this.data[t],O)}}return e}configure(O){let e=Object.assign(Object.create(LRParser.prototype),this);if(O.props&&(e.nodeSet=this.nodeSet.extend(...O.props)),O.top){let t=this.topRules[O.top];if(!t)throw new RangeError(`Invalid top rule name ${O.top}`);e.top=t}return O.tokenizers&&(e.tokenizers=this.tokenizers.map((e=>{let t=O.tokenizers.find((O=>O.from==e));return t?t.to:e}))),O.specializers&&(e.specializers=this.specializers.slice(),e.specializerSpecs=this.specializerSpecs.map(((t,i)=>{let n=O.specializers.find((O=>O.from==t.external));if(!n)return t;let r=Object.assign(Object.assign({},t),{external:n.to});return e.specializers[i]=getSpecializer(r),r}))),O.contextTracker&&(e.context=O.contextTracker),O.dialect&&(e.dialect=this.parseDialect(O.dialect)),null!=O.strict&&(e.strict=O.strict),O.wrap&&(e.wrappers=e.wrappers.concat(O.wrap)),null!=O.bufferLength&&(e.bufferLength=O.bufferLength),e}hasWrappers(){return this.wrappers.length>0}getName(O){return this.termNames?this.termNames[O]:String(O<=this.maxNode&&this.nodeSet.types[O].name||O)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(O){let e=this.dynamicPrecedences;return null==e?0:e[O]||0}parseDialect(O){let e=Object.keys(this.dialects),t=e.map((()=>!1));if(O)for(let i of O.split(" ")){let O=e.indexOf(i);O>=0&&(t[O]=!0)}let i=null;for(let O=0;O<e.length;O++)if(!t[O])for(let t,n=this.dialects[e[O]];65535!=(t=this.data[n++]);)(i||(i=new Uint8Array(this.maxTerm+1)))[t]=1;return new Dialect(O,t,i)}static deserialize(O){return new LRParser(O)}}function pair(O,e){return O[e]|O[e+1]<<16}function findFinished(O){let e=null;for(let t of O){let O=t.p.stoppedAt;(t.pos==t.p.stream.end||null!=O&&t.pos>O)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.score<t.score)&&(e=t)}return e}function getSpecializer(O){if(O.external){let e=O.extend?1:0;return(t,i)=>O.external(t,i)<<1|e}return O.get}const RawString$1=1,templateArgsEndFallback=2,MacroName=3,R=82,L=76,u=117,U=85,a=97,z=122,A=65,Z=90,Underscore=95,Zero$1=48,Quote$1=34,ParenL$2=40,ParenR$1=41,Space$1=32,GreaterThan$1=62,rawString=new ExternalTokenizer((O=>{if(O.next==L||O.next==U?O.advance():O.next==u&&(O.advance(),56==O.next&&O.advance()),O.next!=R)return;if(O.advance(),34!=O.next)return;O.advance();let e="";for(;40!=O.next;){if(32==O.next||O.next<=13||41==O.next)return;e+=String.fromCharCode(O.next),O.advance()}for(O.advance();;){if(O.next<0)return O.acceptToken(1);if(41==O.next){let t=!0;for(let i=0;t&&i<e.length;i++)O.peek(i+1)!=e.charCodeAt(i)&&(t=!1);if(t&&34==O.peek(e.length+1))return O.acceptToken(1,2+e.length)}O.advance()}})),fallback=new ExternalTokenizer((O=>{if(62==O.next)62==O.peek(1)&&O.acceptToken(2,1);else{let e=!1,t=0;for(;;t++){if(O.next>=A&&O.next<=Z)e=!0;else{if(O.next>=a&&O.next<=z)return;if(95!=O.next&&!(O.next>=48&&O.next<=57))break}O.advance()}e&&t>1&&O.acceptToken(3)}}),{extend:!0}),cppHighlighting=styleTags({"typedef struct union enum class typename decltype auto template operator friend noexcept namespace using requires concept import export module __attribute__ __declspec __based":tags$1.definitionKeyword,"extern MsCallModifier MsPointerModifier extern static register thread_local inline const volatile restrict _Atomic mutable constexpr constinit consteval virtual explicit VirtualSpecifier Access":tags$1.modifier,"if else switch for while do case default return break continue goto throw try catch":tags$1.controlKeyword,"co_return co_yield co_await":tags$1.controlKeyword,"new sizeof delete static_assert":tags$1.operatorKeyword,"NULL nullptr":tags$1.null,this:tags$1.self,"True False":tags$1.bool,"TypeSize PrimitiveType":tags$1.standard(tags$1.typeName),TypeIdentifier:tags$1.typeName,FieldIdentifier:tags$1.propertyName,"CallExpression/FieldExpression/FieldIdentifier":tags$1.function(tags$1.propertyName),"ModuleName/Identifier":tags$1.namespace,PartitionName:tags$1.labelName,StatementIdentifier:tags$1.labelName,"Identifier DestructorName":tags$1.variableName,"CallExpression/Identifier":tags$1.function(tags$1.variableName),"CallExpression/ScopedIdentifier/Identifier":tags$1.function(tags$1.variableName),"FunctionDeclarator/Identifier FunctionDeclarator/DestructorName":tags$1.function(tags$1.definition(tags$1.variableName)),NamespaceIdentifier:tags$1.namespace,OperatorName:tags$1.operator,ArithOp:tags$1.arithmeticOperator,LogicOp:tags$1.logicOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,AssignOp:tags$1.definitionOperator,UpdateOp:tags$1.updateOperator,LineComment:tags$1.lineComment,BlockComment:tags$1.blockComment,Number:tags$1.number,String:tags$1.string,"RawString SystemLibString":tags$1.special(tags$1.string),CharLiteral:tags$1.character,EscapeSequence:tags$1.escape,"UserDefinedLiteral/Identifier":tags$1.literal,PreProcArg:tags$1.meta,"PreprocDirectiveName #include #ifdef #ifndef #if #define #else #endif #elif":tags$1.processingInstruction,MacroName:tags$1.special(tags$1.name),"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace,"< >":tags$1.angleBracket,". ->":tags$1.derefOperator,", ;":tags$1.separator}),spec_identifier$6={__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,constinit:80,consteval:82,struct:86,__declspec:90,final:148,override:148,public:152,private:152,protected:152,virtual:154,extern:160,static:162,register:164,inline:166,thread_local:168,__attribute__:172,__based:178,__restrict:180,__uptr:180,__sptr:180,_unaligned:180,__unaligned:180,noexcept:194,requires:198,TRUE:784,true:784,FALSE:786,false:786,typename:218,class:220,template:234,throw:248,__cdecl:256,__clrcall:256,__stdcall:256,__fastcall:256,__thiscall:256,__vectorcall:256,try:260,catch:264,export:282,import:286,case:296,default:298,if:308,else:314,switch:318,do:322,while:324,for:330,return:334,break:338,continue:342,goto:346,co_return:350,co_yield:354,using:362,typedef:366,namespace:380,new:398,delete:400,co_await:402,concept:406,enum:410,static_assert:414,friend:422,union:424,explicit:430,operator:444,module:456,signed:518,unsigned:518,long:518,short:518,decltype:528,auto:530,sizeof:566,NULL:572,nullptr:586,this:588},spec_={__proto__:null,"<":131},spec_templateArgsEnd={__proto__:null,">":135},spec_scopedIdentifier={__proto__:null,operator:388,new:576,delete:582},parser$e=LRParser.deserialize({version:14,states:"$:|Q!QQVOOP'gOUOOO(XOWO'#CdO,RQUO'#CgO,]QUO'#FjO-sQbO'#CwO.UQUO'#CwO0TQUO'#KZO0[QUO'#CvO0gOpO'#DvO0oQ!dO'#D]OOQR'#JO'#JOO5XQVO'#GUO5fQUO'#JVOOQQ'#JV'#JVO8zQUO'#KmO<eQUO'#KmO>{QVO'#E^O?]QUO'#E^OOQQ'#Ed'#EdOOQQ'#Ee'#EeO?bQVO'#EfO@XQVO'#EiOBUQUO'#FPOBvQUO'#FhOOQR'#Fj'#FjOB{QUO'#FjOOQR'#LQ'#LQOOQR'#LP'#LPOETQVO'#KQOFxQUO'#LVOGVQUO'#KqOGkQUO'#LVOH]QUO'#LXOOQR'#HU'#HUOOQR'#HV'#HVOOQR'#HW'#HWOOQR'#K|'#K|OOQR'#J_'#J_Q!QQVOOOHkQVO'#FOOIWQUO'#EhOI_QUOOOKZQVO'#HgOKkQUO'#HgONVQUO'#KqONaQUO'#KqOOQQ'#Kq'#KqO!!_QUO'#KqOOQQ'#Jq'#JqO!!lQUO'#HxOOQQ'#KZ'#KZO!&^QUO'#KZO!&zQUO'#KQO!(zQVO'#I]O!(zQVO'#I`OCQQUO'#KQOOQQ'#Ip'#IpOOQQ'#KQ'#KQO!,}QUO'#KZOOQR'#KY'#KYO!-UQUO'#DYO!/mQUO'#KnOOQQ'#Kn'#KnO!/tQUO'#KnO!/{QUO'#ETO!0QQUO'#EWO!0VQUO'#FRO8zQUO'#FPO!QQVO'#F^O!0[Q#vO'#F`O!0gQUO'#FkO!0oQUO'#FpO!0tQVO'#FrO!0oQUO'#FuO!3sQUO'#FvO!3xQVO'#FxO!4SQUO'#FzO!4XQUO'#F|O!4^QUO'#GOO!4cQVO'#GQO!(zQVO'#GSO!4jQUO'#GpO!4xQUO'#GYO!(zQVO'#FeO!6VQUO'#FeO!6[QVO'#G`O!6cQUO'#GaO!6nQUO'#GnO!6sQUO'#GrO!6xQUO'#GzO!7jQ&lO'#HiO!:mQUO'#GuO!:}QUO'#HXO!;YQUO'#HZO!;bQUO'#DWO!;bQUO'#HuO!;bQUO'#HvO!;yQUO'#HwO!<[QUO'#H|O!=PQUO'#H}O!>uQVO'#IbO!(zQVO'#IdO!?PQUO'#IgO!?WQVO'#IjP!@}{,UO'#CbP!6n{,UO'#CbP!AY{7[O'#CbP!6n{,UO'#CbP!A_{,UO'#CbP!AjOSO'#IzPOOO)CEn)CEnOOOO'#I|'#I|O!AtOWO,59OOOQR,59O,59OO!(zQVO,59UOOQQ,59W,59WO!(zQVO,5;ROOQR,5<U,5<UO!BPQUO,59YO!(zQVO,5>qOOQR'#IX'#IXOOQR'#IY'#IYOOQR'#IZ'#IZOOQR'#I['#I[O!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!(zQVO,5>rO!DOQVO,5>zOOQQ,5?W,5?WO!EqQVO'#ChO!IjQUO'#CyOOQQ,59c,59cOOQQ,59b,59bOOQQ,5<},5<}O!IwQ&lO,5=mO!?PQUO,5?RO!LkQVO,5?UO!LrQbO,59cO!L}QVO'#FYOOQQ,5?P,5?PO!M_QVO,59VO!MfO`O,5:bO!MkQbO'#D^O!M|QbO'#K^O!N[QbO,59wO!NdQbO'#CwO!NuQUO'#CwO!NzQUO'#KZO# UQUO'#CvOOQR-E<|-E<|O# aQUO,5AoO# hQVO'#EfO@XQVO'#EiOBUQUO,5;kOOQR,5<p,5<pO#$aQUO'#KQO#$hQUO'#KQO!(zQVO'#IUO8zQUO,5;kO#${Q&lO'#HiO#(SQUO'#CsO#*wQbO'#CwO#*|QUO'#CvO#.jQUO'#KZOOQQ-E=T-E=TO#0}QUO,5AXO#1XQUO'#KZO#1cQUO,5AXOOQR,5Ao,5AoOOQQ,5>l,5>lO#3gQUO'#CgO#4]QUO,5>pO#6OQUO'#IeOOQR'#I}'#I}O#6WQUO,5:xO#6tQUO,5:xO#7eQUO,5:xO#8YQUO'#CtO!0QQUO'#ClOOQQ'#JW'#JWO#6tQUO,5:xO#8bQUO,5;QO!4xQUO'#C}O#9kQUO,5;QO#9pQUO,5>QO#:|QUO'#C}O#;dQUO,5>{O#;iQUO'#KwO#<rQUO,5;TO#<zQVO,5;TO#=UQUO,5;TOOQQ,5;T,5;TO#>}QUO'#L[O#?UQUO,5>UO#?ZQbO'#CwO#?fQUO'#GcO#?kQUO'#E^O#@[QUO,5;kO#@sQUO'#K}O#@{QUO,5;rOKkQUO'#HfOBUQUO'#HgO#AQQUO'#KqO!6nQUO'#HjO#AxQUO'#CtO!0tQVO,5<SOOQQ'#Cg'#CgOOQR'#Jh'#JhO#A}QVO,5=`OOQQ,5?Z,5?ZO#DWQbO'#CwO#DcQUO'#GcOOQQ'#Ji'#JiOOQQ-E=g-E=gOGVQUO,5AqOGkQUO,5AqO#DhQUO,5AsO#DsQUO'#G|OOQR,5Aq,5AqO#DhQUO,5AqO#EOQUO'#HOO#EWQUO,5AsOOQR,5As,5AsOOQR,5At,5AtO#EfQVO,5AtOOQR-E=]-E=]O#G`QVO,5;jOOQR,5;j,5;jO#IaQUO'#EjO#JfQUO'#EwO#K]QVO'#ExO#MoQUO'#EvO#MwQUO'#EyO#NvQUO'#EzOOQQ'#Kz'#KzO$ mQUO,5;SO$!sQUO'#EvOOQQ,5;S,5;SO$#pQUO,5;SO$%cQUO,5:yO$'|QVO,5>PO$(WQUO'#E[O$(eQUO,5>ROOQQ,5>S,5>SO$,RQVO'#C{OOQQ-E=o-E=oOOQQ,5>d,5>dOOQQ,59`,59`O$,]QUO,5>wO$.]QUO,5>zO!6nQUO,59tO$.pQUO,5;qO$.}QUO,5<{O!0QQUO,5:oOOQQ,5:r,5:rO$/YQUO,5;mO$/_QUO'#KmOBUQUO,5;kOOQR,5;x,5;xO$0OQUO'#FbO$0^QUO'#FbO$0cQUO,5;zO$3|QVO'#FmO!0tQVO,5<VO!0oQUO,5<VO!0VQUO,5<[O$4TQVO'#GUO$7PQUO,5<^O!0tQVO,5<aO$:gQVO,5<bO$:tQUO,5<dOOQR,5<d,5<dO$;}QUO,5<dOOQR,5<f,5<fOOQR,5<h,5<hOOQQ'#Fi'#FiO$<SQUO,5<jO$<XQUO,5<lOOQR,5<l,5<lO$=_QUO,5<nO$>eQUO,5<rO$>pQUO,5=[O$>uQUO,5=[O!4xQUO,5<tO$>}QUO,5<tO$?cQUO,5<PO$@iQVO,5<PO$BzQUO,5<zOOQR,5<z,5<zOOQR,5<{,5<{O$>uQUO,5<{O$DQQUO,5<{O$D]QUO,5=YO!(zQVO,5=^O!(zQVO,5=fO#NeQUO,5=mOOQQ,5>T,5>TO$FbQUO,5>TO$FlQUO,5>TO$FqQUO,5>TO$FvQUO,5>TO!6nQUO,5>TO$HtQUO'#KZO$H{QUO,5=oO$IWQUO,5=aOKkQUO,5=oO$JQQUO,5=sOOQR,5=s,5=sO$JYQUO,5=sO$LeQVO'#H[OOQQ,5=u,5=uO!;]QUO,5=uO%#`QUO'#KjO%#gQUO'#K[O%#{QUO'#KjO%$VQUO'#DyO%$hQUO'#D|O%'eQUO'#K[OOQQ'#K['#K[O%)WQUO'#K[O%#gQUO'#K[O%)]QUO'#K[OOQQ,59r,59rOOQQ,5>a,5>aOOQQ,5>b,5>bO%)eQUO'#HzO%)mQUO,5>cOOQQ,5>c,5>cO%-XQUO,5>cO%-dQUO,5>hO%1OQVO,5>iO%1VQUO,5>|O# hQVO'#EfO%4]QUO,5>|OOQQ,5>|,5>|O%4|QUO,5?OO%7QQUO,5?RO!<[QUO,5?RO%8|QUO,5?UO%<iQVO,5?UP!A_{,UO,58|P%<p{,UO,58|P%=O{7[O,58|P%=U{,UO,58|PO{O'#Ju'#JuP%=Z{,UO'#LcPOOO'#Lc'#LcP%=a{,UO'#LcPOOO,58|,58|POOO,5?f,5?fP%=fOSO,5?fOOOO-E<z-E<zOOQR1G.j1G.jO%=mQUO1G.pO%>sQUO1G0mOOQQ1G0m1G0mO%@PQUO'#CoO%B`QbO'#CwO%BkQUO'#CrO%BpQUO'#CrO%BuQUO1G.tO#AxQUO'#CqOOQQ1G.t1G.tO%DxQUO1G4]O%FOQUO1G4^O%GqQUO1G4^O%IdQUO1G4^O%KVQUO1G4^O%LxQUO1G4^O%NkQUO1G4^O&!^QUO1G4^O&$PQUO1G4^O&%rQUO1G4^O&'eQUO1G4^O&)WQUO1G4^O&*yQUO'#KPO&,SQUO'#KPO&,[QUO,59SOOQQ,5=P,5=PO&.dQUO,5=PO&.nQUO,5=PO&.sQUO,5=PO&.xQUO,5=PO!6nQUO,5=PO#NeQUO1G3XO&/SQUO1G4mO!<[QUO1G4mO&1OQUO1G4pO&2qQVO1G4pOOQQ1G.}1G.}OOQQ1G.|1G.|OOQQ1G2i1G2iO!IwQ&lO1G3XO&2xQUO'#LOO@XQVO'#EiO&4RQUO'#F]OOQQ'#Ja'#JaO&4WQUO'#FZO&4cQUO'#LOO&4kQUO,5;tO&4pQUO1G.qOOQQ1G.q1G.qOOQR1G/|1G/|O&6cQ!dO'#JPO&6hQbO,59xO&8yQ!eO'#D`O&9QQ!dO'#JRO&9VQbO,5@xO&9VQbO,5@xOOQR1G/c1G/cO&9bQbO1G/cO&9gQ&lO'#GeO&:eQbO,59cOOQR1G7Z1G7ZO#@[QUO1G1VO&:pQUO1G1^OBUQUO1G1VO&=RQUO'#CyO#*wQbO,59cO&@tQUO1G6sOOQR-E<{-E<{O&BWQUO1G0dO#6WQUO1G0dOOQQ-E=U-E=UO#6tQUO1G0dOOQQ1G0l1G0lO&B{QUO,59iOOQQ1G3l1G3lO&CcQUO,59iO&CyQUO,59iO!M_QVO1G4gO!(zQVO'#JYO&DeQUO,5AcOOQQ1G0o1G0oO!(zQVO1G0oO!6nQUO'#JnO&DmQUO,5AvOOQQ1G3p1G3pOOQR1G1V1G1VO&HjQVO'#FOO!M_QVO,5;sOOQQ,5;s,5;sOBUQUO'#JcO&JfQUO,5AiO&JnQVO'#E[OOQR1G1^1G1^O&M]QUO'#L[OOQR1G1n1G1nOOQR-E=f-E=fOOQR1G7]1G7]O#DhQUO1G7]OGVQUO1G7]O#DhQUO1G7_OOQR1G7_1G7_O&MeQUO'#G}O&MmQUO'#LWOOQQ,5=h,5=hO&M{QUO,5=jO&NQQUO,5=kOOQR1G7`1G7`O#EfQVO1G7`O&NVQUO1G7`O' ]QVO,5=kOOQR1G1U1G1UO$.vQUO'#E]O'!RQUO'#E]OOQQ'#Ky'#KyO'!lQUO'#KxO'!wQUO,5;UO'#PQUO'#ElO'#dQUO'#ElO'#wQUO'#EtOOQQ'#J['#J[O'#|QUO,5;cO'$sQUO,5;cO'%nQUO,5;dO'&tQVO,5;dOOQQ,5;d,5;dO''OQVO,5;dO'&tQVO,5;dO''VQUO,5;bO'(SQUO,5;eO'(_QUO'#KpO'(gQUO,5:vO'(lQUO,5;fOOQQ1G0n1G0nOOQQ'#J]'#J]O''VQUO,5;bO!4xQUO'#E}OOQQ,5;b,5;bO')gQUO'#E`O'+aQUO'#E{OHrQUO1G0nO'+fQUO'#EbOOQQ'#JX'#JXO'-OQUO'#KrOOQQ'#Kr'#KrO'-xQUO1G0eO'.pQUO1G3kO'/vQVO1G3kOOQQ1G3k1G3kO'0QQVO1G3kO'0XQUO'#L_O'1eQUO'#KXO'1sQUO'#KWO'2OQUO,59gO'2WQUO1G/`O'2]QUO'#FPOOQR1G1]1G1]OOQR1G2g1G2gO$>uQUO1G2gO'2gQUO1G2gO'2rQUO1G0ZOOQR'#J`'#J`O'2wQVO1G1XO'8pQUO'#FTO'8uQUO1G1VO!6nQUO'#JdO'9TQUO,5;|O$0^QUO,5;|OOQQ'#Fc'#FcOOQQ,5;|,5;|O'9cQUO1G1fOOQR1G1f1G1fO'9kQUO,5<XO$.vQUO'#FWOBUQUO'#FWO'9rQUO,5<XO!(zQVO,5<XO'9zQUO,5<XO':PQVO1G1qO!0tQVO1G1qOOQR1G1v1G1vO'?oQUO1G1xOOQR1G1{1G1{O'?tQUO1G1|OBUQUO1G2]O'@}QVO1G1|O'CcQUO1G1|O'ChQUO'#GWO8zQUO1G2]OOQR1G2O1G2OOOQR1G2U1G2UOOQR1G2W1G2WOOQR1G2Y1G2YO'CmQUO1G2^O!4xQUO1G2^OOQR1G2v1G2vO'CuQUO1G2vO$>}QUO1G2`OOQQ'#Cu'#CuO'CzQUO'#G[O'DuQUO'#G[O'DzQUO'#LRO'EYQUO'#G_OOQQ'#LS'#LSO'EhQUO1G2`O'EmQVO1G1kO'HOQVO'#GUOBUQUO'#FWOOQR'#Je'#JeO'EmQVO1G1kO'HYQUO'#FvOOQR1G2f1G2fO'H_QUO1G2gO'HdQUO'#JgO'2gQUO1G2gO!(zQVO1G2tO'HlQUO1G2xO'IuQUO1G3QO'J{QUO1G3XOOQQ1G3o1G3oO'KaQUO1G3oOOQR1G3Z1G3ZO'KfQUO'#KZO'2]QUO'#LTOGkQUO'#LVOOQR'#Gy'#GyO#DhQUO'#LXOOQR'#HQ'#HQO'KpQUO'#GvO'#wQUO'#GuOOQR1G2{1G2{O'LmQUO1G2{O'MdQUO1G3ZO'MoQUO1G3_O'MtQUO1G3_OOQR1G3_1G3_O'M|QUO'#H]OOQR'#H]'#H]O( VQUO'#H]O!(zQVO'#H`O!(zQVO'#H_OOQR'#LZ'#LZO( [QUO'#LZOOQR'#Jk'#JkO( aQVO,5=vOOQQ,5=v,5=vO( hQUO'#H^O( pQUO'#HZOOQQ1G3a1G3aO( zQUO,5@vOOQQ,5@v,5@vO%)WQUO,5@vO%)]QUO,5@vO%$VQUO,5:eO(%iQUO'#KkO(%wQUO'#KkOOQQ,5:e,5:eOOQQ'#JS'#JSO(&SQUO'#D}O(&^QUO'#KqOGkQUO'#LVO('YQUO'#D}OOQQ'#Hp'#HpOOQQ'#Hr'#HrOOQQ'#Hs'#HsOOQQ'#Kl'#KlOOQQ'#JU'#JUO('dQUO,5:hOOQQ,5:h,5:hO((aQUO'#LVO((nQUO'#HtO()UQUO,5@vO()]QUO'#H{O()hQUO'#L^O()pQUO,5>fO()uQUO'#L]OOQQ1G3}1G3}O(-lQUO1G3}O(-sQUO1G3}O(-zQUO1G4TO(/QQUO1G4TO(/VQUO,5A|O!6nQUO1G4hO!(zQVO'#IiOOQQ1G4m1G4mO(/[QUO1G4mO(1_QVO1G4pPOOO1G.h1G.hP!A_{,UO1G.hP(3_QUO'#LeP(3j{,UO1G.hP(3o{7[O1G.hPO{O-E=s-E=sPOOO,5A},5A}P(3w{,UO,5A}POOO1G5Q1G5QO!(zQVO7+$[O(3|QUO'#CyOOQQ,59^,59^O(4XQbO,59cO(4dQbO,59^OOQQ,59],59]OOQQ7+)w7+)wO!M_QVO'#JtO(4oQUO,5@kOOQQ1G.n1G.nOOQQ1G2k1G2kO(4wQUO1G2kO(4|QUO7+(sOOQQ7+*X7+*XO(7bQUO7+*XO(7iQUO7+*XO(1_QVO7+*[O#NeQUO7+(sO(7vQVO'#JbO(8ZQUO,5AjO(8cQUO,5;vOOQQ'#Co'#CoOOQQ,5;w,5;wO!(zQVO'#F[OOQQ-E=_-E=_O!M_QVO,5;uOOQQ1G1`1G1`OOQQ,5?k,5?kOOQQ-E<}-E<}OOQR'#Dg'#DgOOQR'#Di'#DiOOQR'#Dl'#DlO(9lQ!eO'#K_O(9sQMkO'#K_O(9zQ!eO'#K_OOQR'#K_'#K_OOQR'#JQ'#JQO(:RQ!eO,59zOOQQ,59z,59zO(:YQbO,5?mOOQQ-E=P-E=PO(:hQbO1G6dOOQR7+$}7+$}OOQR7+&q7+&qOOQR7+&x7+&xO'8uQUO7+&qO(:sQUO7+&OO#6WQUO7+&OO(;hQUO1G/TO(<OQUO1G/TO(<jQUO7+*ROOQQ7+*V7+*VO(>]QUO,5?tOOQQ-E=W-E=WO(?fQUO7+&ZOOQQ,5@Y,5@YOOQQ-E=l-E=lO(?kQUO'#LOO@XQVO'#EiO(@wQUO1G1_OOQQ1G1_1G1_O(BQQUO,5?}OOQQ,5?},5?}OOQQ-E=a-E=aO(BfQUO'#KpOOQR7+,w7+,wO#DhQUO7+,wOOQR7+,y7+,yO(BsQUO,5=iO#DsQUO'#JjO(CUQUO,5ArOOQR1G3U1G3UOOQR1G3V1G3VO(CdQUO7+,zOOQR7+,z7+,zO(E[QUO,5:wO(FyQUO'#EwO!(zQVO,5;VO(GlQUO,5:wO(GvQUO'#EpO(HXQUO'#EzOOQQ,5;Z,5;ZO#K]QVO'#ExO(HoQUO,5:wO(HvQUO'#EyO#GgQUO'#JZO(J`QUO,5AdOOQQ1G0p1G0pO(JkQUO,5;WO!<[QUO,5;^O(KUQUO,5;_O(KdQUO,5;WO(MvQUO,5;`OOQQ-E=Y-E=YO(NOQUO1G0}OOQQ1G1O1G1OO(NyQUO1G1OO)!PQVO1G1OO)!WQVO1G1OO)!bQUO1G0|OOQQ1G0|1G0|OOQQ1G1P1G1PO)#_QUO'#JoO)#iQUO,5A[OOQQ1G0b1G0bOOQQ-E=Z-E=ZO)#qQUO,5;iO!<[QUO,5;iO)$nQVO,5:zO)$uQUO,5;gO$ mQUO7+&YOOQQ7+&Y7+&YO!(zQVO'#EfO)$|QUO,5:|OOQQ'#Ks'#KsOOQQ-E=V-E=VOOQQ,5A^,5A^OOQQ'#Jl'#JlO)(qQUO7+&PPOQQ7+&P7+&POOQQ7+)V7+)VO))iQUO7+)VO)*oQVO7+)VOOQQ,5>m,5>mO$)YQVO'#JsO)*vQUO,5@rOOQQ1G/R1G/ROOQQ7+$z7+$zO)+RQUO7+(RO)+WQUO7+(ROOQR7+(R7+(RO$>uQUO7+(ROOQQ7+%u7+%uOOQR-E=^-E=^O!0VQUO,5;oOOQQ,5@O,5@OOOQQ-E=b-E=bO$0^QUO1G1hOOQQ1G1h1G1hOOQR7+'Q7+'QOOQR1G1s1G1sOBUQUO,5;rO)+tQUO,5<YO)+{QUO1G1sO)-UQUO1G1sO!0tQVO7+']O)-ZQVO7+']O)2yQUO7+'dO)3OQVO7+'hO)5dQUO7+'wO)5nQUO7+'hO)6tQVO7+'hOKkQUO7+'wO$>hQUO,5<rO!4xQUO7+'xO)6{QUO7+'xOOQR7+(b7+(bO)7QQUO7+'zO)7VQUO,5<vO'CzQUO,5<vO)7}QUO,5<vO'CzQUO,5<vOOQQ,5<w,5<wO)8`QVO,5<xO'EYQUO'#JfO)8jQUO,5AmO)8rQUO,5<yOOQR7+'z7+'zO)8}QVO7+'VO)5gQUO'#K}OOQR-E=c-E=cO);`QVO,5<bOOQQ,5@R,5@RO!6nQUO,5@ROOQQ-E=e-E=eO)=wQUO7+(`O)>}QUO7+(dO)?SQVO7+(dOOQQ7+(l7+(lOOQQ7+)Z7+)ZO)?[QUO'#KjO)?fQUO'#KjOOQR,5=b,5=bO)?sQUO,5=bO!;bQUO,5=bO!;bQUO,5=bO!;bQUO,5=bOOQR7+(g7+(gOOQR7+(u7+(uOOQR7+(y7+(yOOQR,5=w,5=wO)?xQUO,5=zO)AOQUO,5=yOOQR,5Au,5AuOOQR-E=i-E=iOOQQ1G3b1G3bO)BUQUO,5=xO)BZQVO'#EfOOQQ1G6b1G6bO%)WQUO1G6bO%)]QUO1G6bOOQQ1G0P1G0POOQQ-E=Q-E=QO)DrQUO,5AVO(%iQUO'#JTO)D}QUO,5AVO)D}QUO,5AVO)EVQUO,5:iO8zQUO,5:iOOQQ,5>],5>]O)EaQUO,5AqO)EhQUO'#EVO)FrQUO'#EVO)G]QUO,5:iO)GgQUO'#HlO)GgQUO'#HmOOQQ'#Ko'#KoO)HUQUO'#KoO!(zQVO'#HnOOQQ,5:i,5:iO)HvQUO,5:iO!M_QVO,5:iOOQQ-E=S-E=SOOQQ1G0S1G0SOOQQ,5>`,5>`O)H{QUO1G6bO!(zQVO,5>gO)LjQUO'#JrO)LuQUO,5AxOOQQ1G4Q1G4QO)L}QUO,5AwOOQQ,5Aw,5AwOOQQ7+)i7+)iO*!lQUO7+)iOOQQ7+)o7+)oO*'kQVO1G7hO*)mQUO7+*SO*)rQUO,5?TO**xQUO7+*[POOO7+$S7+$SP*,kQUO'#LfP*,sQUO,5BPP*,x{,UO7+$SPOOO1G7i1G7iO*,}QUO<<GvOOQQ1G.x1G.xOOQQ'#IT'#ITO*.pQUO,5@`OOQQ,5@`,5@`OOQQ-E=r-E=rOOQQ7+(V7+(VOOQQ<<Ms<<MsO*/yQUO<<MsO*1|QUO<<MvO*3oQUO<<L_O*4TQUO,5?|OOQQ,5?|,5?|OOQQ-E=`-E=`OOQQ1G1b1G1bO*5^QUO,5;vO*6dQUO1G1aOOQQ1G1a1G1aOOQR,5@y,5@yO*7mQ!eO,5@yO*7tQMkO,5@yO*7{Q!eO,5@yOOQR-E=O-E=OOOQQ1G/f1G/fO*8SQ!eO'#DwOOQQ1G5X1G5XOOQR<<J]<<J]O*8ZQUO<<IjO*9OQUO7+$oOOQQ<<Iu<<IuO(7vQVO,5;ROOQR<=!c<=!cOOQQ1G3T1G3TOOQQ,5@U,5@UOOQQ-E=h-E=hOOQR<=!f<=!fO*9{QUO1G0cO*:SQUO'#EzO*:dQUO1G0cO*:kQUO'#I}O*<RQUO1G0qO!(zQVO1G0qOOQQ,5;[,5;[OOQQ,5;],5;]OOQQ,5?u,5?uOOQQ-E=X-E=XO!<[QUO1G0xO*=bQUO1G0xOOQQ1G0y1G0yO*=sQUO'#ElOOQQ1G0z1G0zOOQQ7+&j7+&jO*>XQUO7+&jO*?_QVO7+&jOOQQ7+&h7+&hOOQQ,5@Z,5@ZOOQQ-E=m-E=mO*@ZQUO1G1TO*@eQUO1G1TO*AOQUO1G0fOOQQ1G0f1G0fO*BUQUO'#K{O*B^QUO1G1ROOQQ<<It<<ItOOQQ'#Hb'#HbO'+fQUO,5={OOQQ'#Hd'#HdO'+fQUO,5=}OOQQ-E=j-E=jPOQQ<<Ik<<IkPOQQ-E=k-E=kOOQQ<<Lq<<LqO*BcQUO'#LaO*CoQUO'#L`OOQQ,5@_,5@_OOQQ-E=q-E=qOOQR<<Km<<KmO$>uQUO<<KmO*C}QUO<<KmOOQR1G1Z1G1ZOOQQ7+'S7+'SO!M_QVO1G1tO*DSQUO1G1tOOQR7+'_7+'_OOQR<<Jw<<JwO!0tQVO<<JwOOQR<<KO<<KOO*D_QUO<<KSO*EeQVO<<KSOKkQUO<<KcO!M_QVO<<KcO*ElQUO<<KSO!0tQVO<<KSO*FuQUO<<KSO*FzQUO<<KcO*GVQUO<<KdOOQR<<Kd<<KdOOQR<<Kf<<KfO*G[QUO1G2bO)7VQUO1G2bO'CzQUO1G2bO*GmQUO1G2dO*HsQVO1G2dOOQQ1G2d1G2dO*H}QVO1G2dO*IUQUO,5@QOOQQ-E=d-E=dOOQQ1G2e1G2eO*IdQUO1G1|O*JmQVO1G1|O*JtQUO1G1|OOQQ1G5m1G5mOOQR<<Kz<<KzOOQR<<LO<<LOO*JyQVO<<LOO*KUQUO<<LOOOQR1G2|1G2|O*KZQUO1G2|O*KbQUO1G3eOOQR1G3d1G3dOOQQ7++|7++|O%)WQUO7++|O*KmQUO1G6qO*KmQUO1G6qO(%iQUO,5?oO*KuQUO,5?oOOQQ-E=R-E=RO*LQQUO1G0TOOQQ1G0T1G0TO*L[QUO1G0TO!M_QVO1G0TO*LaQUO1G0TOOQQ1G3w1G3wO*LkQUO,5:qO)EhQUO,5:qO*MXQUO,5:qO)EhQUO,5:qO$#uQUO,5:uO*MvQVO,5>VO)GgQUO'#JpO*NQQUO1G0TO*NcQVO1G0TOOQQ1G3u1G3uO*NjQUO,5>WO*NuQUO,5>XO+ dQUO,5>YO+!jQUO1G0TO%)]QUO7++|O+#pQUO1G4ROOQQ,5@^,5@^OOQQ-E=p-E=pOOQQ<<MT<<MTOOQQ<<Mn<<MnO+$yQUO1G4oP+&|QUO'#JvP+'UQUO,5BQPO{O1G7k1G7kPOOO<<Gn<<GnOOQQANC_ANC_OOQR1G6e1G6eO+'^Q!eO,5:cOOQQ,5:c,5:cO+'eQUO1G0mO+(qQUO7+&]O+*QQUO7+&dO+*cQUO,5;WOOQQ<<JU<<JUO+*qQUO7+&oOOQQ7+&Q7+&QO!4xQUO'#J^O++lQUO,5AgOOQQ7+&m7+&mOOQQ1G3g1G3gO++tQUO1G3iOOQQ,5>n,5>nO+/iQUOANAXOOQRANAXANAXO+/nQUO7+'`OOQRAN@cAN@cO+0zQVOAN@nO+1RQUOAN@nO!0tQVOAN@nO+2[QUOAN@nO+2aQUOAN@}O+2lQUOAN@}O+3rQUOAN@}OOQRAN@nAN@nO!M_QVOAN@}OOQRANAOANAOO+3wQUO7+'|O)7VQUO7+'|OOQQ7+(O7+(OO+4YQUO7+(OO+5`QVO7+(OO+5gQVO7+'hO+5nQUOANAjOOQR7+(h7+(hOOQR7+)P7+)PO+5sQUO7+)PO+5xQUO7+)POOQQ<= h<= hO+6QQUO7+,]O+6YQUO1G5ZOOQQ1G5Z1G5ZO+6eQUO7+%oOOQQ7+%o7+%oO+6vQUO7+%oO*NcQVO7+%oOOQQ7+)a7+)aO+6{QUO7+%oO+8RQUO7+%oO!M_QVO7+%oO+8]QUO1G0]O*LkQUO1G0]O)EhQUO1G0]OOQQ1G0a1G0aO+8zQUO1G3qO+:QQVO1G3qOOQQ1G3q1G3qO+:[QVO1G3qO+:cQUO,5@[OOQQ-E=n-E=nOOQQ1G3r1G3rO%)WQUO<= hOOQQ7+*Z7+*ZPOQQ,5@b,5@bPOQQ-E=t-E=tOOQQ1G/}1G/}OOQQ,5?x,5?xOOQQ-E=[-E=[OOQRG26sG26sO+:zQUOG26YO!0tQVOG26YO+<TQUOG26YOOQRG26YG26YO!M_QVOG26iO!0tQVOG26iO+<YQUOG26iO+=`QUOG26iO+=eQUO<<KhOOQQ<<Kj<<KjOOQRG27UG27UOOQR<<Lk<<LkO+=vQUO<<LkOOQQ7+*u7+*uOOQQ<<IZ<<IZO+={QUO<<IZO!M_QVO<<IZO+>QQUO<<IZO+?WQUO<<IZO*NcQVO<<IZOOQQ<<L{<<L{O+?iQUO7+%wO*LkQUO7+%wOOQQ7+)]7+)]O+@WQUO7+)]O+A^QVO7+)]OOQQANESANESO!0tQVOLD+tOOQRLD+tLD+tO+AeQUOLD,TO+BkQUOLD,TOOQRLD,TLD,TO!0tQVOLD,TOOQRANBVANBVOOQQAN>uAN>uO+BpQUOAN>uO+CvQUOAN>uO!M_QVOAN>uO+C{QUO<<IcOOQQ<<Lw<<LwOOQR!$( `!$( `O!0tQVO!$( oOOQR!$( o!$( oOOQQG24aG24aO+DjQUOG24aO+EpQUOG24aOOQR!)9EZ!)9EZOOQQLD){LD){O+EuQUO'#CgO(dQUO'#CgO+IrQUO'#CyO+LcQUO'#CyO!E{QUO'#CyO+M[QUO'#CyO+MoQUO'#CyO,#bQUO'#CyO,#rQUO'#CyO,$PQUO'#CyO,$[QbO,59cO,$gQbO,59cO,$rQbO,59cO,$}QbO'#CwO,%`QbO'#CwO,%qQbO'#CwO,&SQUO'#CgO,(gQUO'#CgO,(tQUO'#CgO,+iQUO'#CgO,.lQUO'#CgO,.|QUO'#CgO,2uQUO'#CgO,2|QUO'#CgO,3|QUO'#CgO,6VQUO,5:xO#?kQUO,5:xO#?kQUO,5:xO#=ZQUO'#L[O,6sQbO'#CwO,7OQbO'#CwO,7ZQbO'#CwO,7fQbO'#CwO#6tQUO'#E^O,7qQUO'#E^O,9OQUO'#HgO,9pQbO'#CwO,9{QbO'#CwO,:WQUO'#CvO,:]QUO'#CvO,:bQUO'#CoO,:pQbO,59cO,:{QbO,59cO,;WQbO,59cO,;cQbO,59cO,;nQbO,59cO,;yQbO,59cO,<UQbO,59cO,6VQUO1G0dO,<aQUO1G0dO#?kQUO1G0dO,7qQUO1G0dO,>nQUO'#KZO,?OQUO'#CyO,?^QbO,59cO,6VQUO7+&OO,<aQUO7+&OO,?iQUO'#EwO,@[QUO'#EzO,@{QUO'#E^O,AQQUO'#GcO,AVQUO'#CvO,A[QUO'#CwO,AaQUO'#CwO,AfQUO'#CvO,AkQUO'#GcO,ApQUO'#KZO,B^QUO'#KZO,BhQUO'#CvO,BsQUO'#CvO,COQUO'#CvO,<aQUO,5:xO,7qQUO,5:xO,7qQUO,5:xO,CZQUO'#KZO,CnQbO'#CwO,CyQUO'#CrO,DOQUO'#E^",stateData:",Dt~O(nOSSOSTOSRPQVPQ'ePQ'gPQ'hPQ'iPQ'jPQ'kPQ'lPQ'mPQ~O*ZOS~OPmO]eOa!]Od!POlTOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!TxO!VfO!X!XO!Y!WO!i!YO!opO!r!`O!s!aO!t!aO!u!bO!v!aO!x!cO!{!dO#V#QO#a#VO#b#TO#i#OO#p!xO#t!fO#v!eO$R!gO$T!hO$Y!vO$Z!wO$`!iO$e!jO$g!kO$h!lO$k!mO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO${!tO$}!uO%U!yO%_#ZO%`#[O%a#YO%c!zO%e#UO%g!{O%l#SO%o!|O%v!}O%|#PO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(rRO)PYO)SaO)U|O)V{O)WiO)X!ZO)YXO)hcO)idO~OR#bOV#]O'e#^O'g#_O'h#`O'i#`O'j#aO'k#aO'l#_O'm#_O~OX#dO(p#dO(q#fO~O]ZX]iXdiXlgXpZXpiXriXsiXtiXuiXviXwiXxiXyiX}iX!TiX!VZX!ViX!XZX!YZX![ZX!^ZX!_ZX!aZX!bZX!cZX!eZX!fZX!gZX!hZX!riX!siX!tiX!uiX!viX!xiX!{iX%viX&riX&siX(riX(uZX(v$]X(wZX(xZX)SZX)SiX)TZX)UZX)UiX)VZX)ViX)WZX)XZX)jZX~O)WiX!UZX~P(dO]#}O!V#lO!X#{O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO(w#kO(x#kO)S#mO)T#oO)U#nO)V#pO)W#jO)X#|O~Od$RO%Y$SO'[$TO'_$UO(y$OO~Ol$VO~O!T$WO](}Xd(}Xr(}Xs(}Xt(}Xu(}Xv(}Xw(}Xx(}Xy(}X}(}X!V(}X!r(}X!s(}X!t(}X!u(}X!v(}X!x(}X!{(}X%v(}X&r(}X&s(}X(r(}X)S(}X)U(}X)V(}X)W(}X~Ol$VO~P.ZOl$VO!g$YO)j$YO~OX$ZO)Z$ZO~O!R$[O)X)QP)])QP~OPmO]$eOa!]Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!TxO!V$fO!X!XO!Y!WO!i!YO!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO#V#QO#a#VO#b#TO#v!eO$Y!vO$Z!wO$`!iO$e!jO$g!kO$h!lO$k!mO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO)PYO)S$kO)V$kO)WiO)X!ZO)YXO)hcO)idO~Ol$_O#t$lO(rRO~P0zO](]Xa'yXd(]Xl'yXl(]Xr'yXr(]Xs'yXs(]Xt'yXt(]Xu'yXu(]Xv'yXv(]Xw'yXw(]Xx'yXx(]Xy'yXy(]X{'yX}'yX!V(]X!o(]X!r'yX!r(]X!s'yX!s(]X!t'yX!t(]X!u'yX!u(]X!v'yX!v(]X!x'yX!x(]X!{(]X#a'yX#b'yX%e'yX%l'yX%o(]X%v(]X&m'yX&r'yX&s'yX(r'yX(r(]X)S(]X)U(]X)V(]X~Oa!TOl$oOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO#a#VO#b#TO%e#UO%l#SO&m!RO&r#WO&s!TO(r$nO~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O}!_O!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO&r#WO&s$wO])aXd)aXl)aX!V)aX!{)aX%v)aX(r)aX)S)aX)U)aX)V)aX~O)W$vO~P:nOPmO]eOd!POr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!VfO!X!XO!Y!WO!i!YO!{!dO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO)SaO)U|O)V{O)X!ZO)YXO)hcO)idO~Oa%QOl:zO!|%RO(r$xO~P<lO)S%SO~Oa!]Ol$_O{#RO#a#VO#b#TO%e#UO%l#SO&m!RO&r#WO&s!TO(r:}O~P<lOPmO]$eOa%QOl:zO!V$fO!W%_O!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S$kO)V%]O)X!ZO)YXO)hcO)idO)j%[O~O]%hOd!POl%bO!V%kO!{!dO%v$mO(r;OO)S%dO)U%iO)V%iO~O(v%mO~O)W#jO~O(r%nO](tX!V(tX!X(tX!Y(tX![(tX!^(tX!_(tX!a(tX!b(tX!c(tX!e(tX!f(tX!h(tX(u(tX(w(tX(x(tX)S(tX)T(tX)U(tX)V(tX)W(tX)X(tX!g(tX)j(tX!O(tX!W(tX(v(tX!U(tXQ(tX!d(tX~OP%oO(oQO~PCQO]%hOd!POr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!V%kO!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO!{!dO%o!|O%v!}O)S;`O)U|O)V|O~Ol%rO!o%wO(r$xO~PE_O!TxO#v!eO(v%yO)j%|O])eX!V)eX~O]%hOd!POl%rO!V%kO!{!dO%v!}O(r$xO)S;`O)U|O)V|O~O!TxO#v!eO)W&PO)j&QO~O!U&TO~P!QO]&YO!TxO!V&WO)S&VO)U&ZO)V&ZO~Op&UO~PHrO]&cO!V&bO~OPmO]eOd!PO!VfO!X!XO!Y!WO!i!YO!{!dO#V#QO%_#ZO%`#[O%a#YO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO)SaO)U|O)V{O)X!ZO)YXO)hcO)idO~Oa%QOl:zO%v$mO(r$xO~PIgO]%hOd!POl;[O!V%kO!{!dO%v$mO(r$xO)S;`O)U|O)V|O~Op&fO](tX])eX!V(tX!V)eX!X(tX!Y(tX![(tX!^(tX!_(tX!a(tX!b(tX!c(tX!e(tX!f(tX!h(tX(u(tX(w(tX(x(tX)S(tX)T(tX)U(tX)V(tX)W(tX)X(tX!O(tX!O)eX!U(tX~O!g$YO)j$YO~PL]O!g(tX)j(tX~PL]O](tX!V(tX!X(tX!Y(tX![(tX!^(tX!_(tX!a(tX!b(tX!c(tX!e(tX!f(tX!h(tX(u(tX(w(tX(x(tX)S(tX)T(tX)U(tX)V(tX)W(tX)X(tX!g(tX)j(tX!O(tX!U(tX~O])eX!V)eX!O)eX~PNkOa&hO&m!RO]&lXd&lXl&lXr&lXs&lXt&lXu&lXv&lXw&lXx&lXy&lX}&lX!V&lX!r&lX!s&lX!t&lX!u&lX!v&lX!x&lX!{&lX%v&lX&r&lX&s&lX(r&lX)S&lX)U&lX)V&lX)W&lX!O&lX!T&lX!X&lX!Y&lX![&lX!^&lX!_&lX!a&lX!b&lX!c&lX!e&lX!f&lX!h&lX(u&lX(w&lX(x&lX)T&lX)X&lX!g&lX)j&lX!W&lXQ&lX!d&lX(v&lX!U&lX#v&lX~Op&fOl(}X!O(}XQ(}X!d(}X!h(}X)X(}X)j(}X~P.ZO!g$YO)j$YO](tX!V(tX!X(tX!Y(tX![(tX!^(tX!_(tX!a(tX!b(tX!c(tX!e(tX!f(tX!h(tX(u(tX(w(tX(x(tX)S(tX)T(tX)U(tX)V(tX)W(tX)X(tX!O(tX!W(tX(v(tX!U(tXQ(tX!d(tX~OPmO]$eOa%QOl:zO!V$fO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S$kO)V$kO)X!ZO)YXO)hcO)idO~O](}Xd(}Xl(}Xr(}Xs(}Xt(}Xu(}Xv(}Xw(}Xx(}Xy(}X}(}X!V(}X!r(}X!s(}X!t(}X!u(}X!v(}X!x(}X!{(}X%v(}X&r(}X&s(}X(r(}X)S(}X)U(}X)V(}X)W(}X!O(}XQ(}X!d(}X!h(}X)X(}X)j(}X~O]#}O~P!*qO]&lO~O])bXa)bXd)bXl)bXr)bXs)bXt)bXu)bXv)bXw)bXx)bXy)bX{)bX})bX!V)bX!o)bX!r)bX!s)bX!t)bX!u)bX!v)bX!x)bX!{)bX#a)bX#b)bX%e)bX%l)bX%o)bX%v)bX&m)bX&r)bX&s)bX(r)bX)S)bX)U)bX)V)bX~O(oQO~P!-ZO%U&nO~P!-ZO]&oO~O]#}O~O!TxO~O$W&wO(r%nO(v&vO~O]&xOw&zO~O]&xO~OPmO]$eOa%QOl:zO!TxO!V$fO!X!XO!Y!WO!i!YO#V#QO#p!xO#v!eO$Y!vO$Z!wO$`!iO$e!jO$g!kO$h!lO$k!mO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r:mO)PYO)S$kO)V$kO)WiO)X!ZO)YXO)hcO)idO~O]'PO~O!T$WO)W'RO~P!(zO)W'TO~O)W'UO~O(r'VO~O)W'YO~P!(zOl;^O%U'^O%e'^O(r;PO~Oa!TOl$oOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO#a#VO#b#TO%e#UO%l#SO&m!RO&r#WO&s!TO(r$nO~O(v'bO~O)W'dO~P!(zO!TxO(r%nO)j'fO~O(r%nO~O]'iO~O]'jOd%nXl%nX!V%nX!{%nX%v%nX(r%nX)S%nX)U%nX)V%nX~O]'nO!V'oO!X'lO!g'lO%Z'lO%['lO%]'lO%^'lO%_'pO%`'pO%a'lO(x'mO)j'lO)x'qO~P8zO]%hOa!TOd!POr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!V%kO!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO!{!dO#a#VO#b#TO%e#UO%l#SO&m!RO&r#WO&s!TO)S;`O)U|O)V|O~Ol;_Op&UO%v$mO(r;QO~P!8jO(r%nO(v'vO)W'wO~O]&cO!T'yO~Ol$oO}!_O!T(QO!l(VO(r$nO(v(PO)PYO~Ol$oO{(^O!T(ZO#b(^O(r$nO~Oa!TOl$oO{#RO#a#VO#b#TO%e#UO%l#SO&m!RO&r#WO&s!TO(r$nO~O](`O~OPmOa%QOl:zO!V$fO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S$kO)V$kO)YXO)hcO)idO~O](bO)X(cO~P!=UO]#}O~P!<[OPmO]$eOa%QOl:zO!V(iO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S$kO)V$kO)X!ZO)YXO)hcO)idO~OY(jO(oQO(r%nO~O'f(mO~OS(qOT(nO*W(pO~O]#}O(n(tO~Q'nXX#dO(p#dO(q(vO~Od)QOl({O&r#WO(r(zO~O!Y'Sa!['Sa!^'Sa!_'Sa!a'Sa!b'Sa!c'Sa!e'Sa!f'Sa!h'Sa(u'Sa)S'Sa)T'Sa)U'Sa)V'Sa)W'Sa)X'Sa!g'Sa)j'Sa!O'Sa!W'Sa(v'Sa!U'SaQ'Sa!d'Sa~OPmOa%QOl:zO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)YXO)hcO)idO]'Sa!V'Sa!X'Sa(w'Sa(x'Sa~P!B_O!T$WO!O(sP~P!(zO]nX]%WXdnXlmXpnXp%WXrnXsnXtnXunXvnXwnXxnXynX}nX!TnX!VnX!V%WX!X%WX!Y%WX![%WX!^%WX!_%WX!a%WX!b%WX!c%WX!e%WX!f%WX!gmX!h%WX!rnX!snX!tnX!unX!vnX!xnX!{nX%vnX&rnX&snX(rnX(u%WX(w%WX(x%WX)SnX)S%WX)T%WX)UnX)U%WX)VnX)V%WX)W%WX)X%WX)jmX!O%WX~O)WnX!OnX!U%WX~P!E{O])dO!V)eO!X)bO!g)bO%Z)bO%[)bO%])bO%^)bO%_)fO%`)fO%a)bO(x)cO)j)bO)x)gO~P8zOPmO]$eOa%QOl:zO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S$kO)V$kO)X!ZO)YXO)hcO)idO~O!V)lO~P!JwOd)oO%Y)pO(y$OO~O!T$WO!V)rO(w)sO!U)rP~P!JwO!T$WO~P!(zO)[)zO~Ol){O]!QX!h!QX)X!QX)]!QX~O])}O!h*OO)X)QX)])QX~O)X*SO)]*RO~Od$RO%Y*TO'[$TO'_$UO(y$OO~Ol*UO~Ol*UO!O(}X~P.ZOl*UO!g$YO)j$YO~O)W*VO~P:nOPmO]$eOa!]Ol$_Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO!V$fO!X!XO!Y!WO!i!YO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r:}O)S$kO)V$kO)X!ZO)YXO)hcO)idO~Op&fO~P!&zOp&fO!W(tX(v(tXQ(tX!d(tX~PNkO]'nO!V'oO!X'lO!g'lO%Z'lO%['lO%]'lO%^'lO%_'pO%`'pO%a'lO(x'mO)j'lO)x'qO~O]iXdiXlgXpiXriXsiXtiXuiXviXwiXxiXyiX}iX!ViX!riX!siX!tiX!uiX!viX!xiX!{iX%viX&riX&siX(riX)SiX)UiX)ViX!TiX!hiX)XiX)jiX!OiX~O!liX(viX)WiX!XiX!YiX![iX!^iX!_iX!aiX!biX!ciX!eiX!fiX(uiX(wiX(xiX)TiX!giX!WiXQiX!diX!UiX#viX#TiX#ViX#piXaiX{iX!oiX#aiX#biX#iiX#tiX${iX%ciX%eiX%kiX%liX%oiX&miX)PiX~P#%yO(y*ZO~Ol*[O~O](}Xd(}Xr(}Xs(}Xt(}Xu(}Xv(}Xw(}Xx(}Xy(}X}(}X!V(}X!r(}X!s(}X!t(}X!u(}X!v(}X!x(}X!{(}X%v(}X&r(}X&s(}X(r(}X)S(}X)U(}X)V(}X)W(}X!T(}X!X(}X!Y(}X![(}X!^(}X!_(}X!a(}X!b(}X!c(}X!e(}X!f(}X!h(}X(u(}X(w(}X(x(}X)T(}X)X(}X!g(}X)j(}X!O(}X!W(}XQ(}X!d(}X(v(}X!U(}X#v(}X~Ol*[O~P#+ROr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O}!_O!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO])aad)aal)aa!V)aa!{)aa%v)aa(r)aa)S)aa)U)aa)V)aaQ)aa!d)aa!h)aa)X)aa)j)aa!O)aa!T)aa(v)aa)W)aa~O&r#WO&s$wO~P#.qOp&fOl(}X~P#+RO&r)aa~P#.qO]ZXlgXpZXpiX!TiX!VZX!XZX!YZX![ZX!^ZX!_ZX!aZX!bZX!cZX!eZX!fZX!gZX!hZX(uZX(wZX(xZX)SZX)TZX)UZX)VZX)WZX)XZX)jZX!OZX~O!WZX(vZX!UZXQZX!dZX~P#1jO]#}O!V#lO!X#{O(w#kO(x#kO~O!Y&xa![&xa!^&xa!_&xa!a&xa!b&xa!c&xa!e&xa!f&xa!g&xa!h&xa(u&xa)S&xa)T&xa)U&xa)V&xa)W&xa)X&xa)j&xa!O&xa!W&xa(v&xa!U&xaQ&xa!d&xa~P#3zOl;hO!T$WO~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O~PKkOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!|%RO~PKkO]&cO!V&bO!O#Qa!T#Qa!h#Qa#v#Qa)W#Qa)j#QaQ#Qa!d#Qa(v#Qa~Op&fO!T$WO~O!O*cO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O*cO~O]&cO!O*eO!V&bO~O]&YOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!V&WO&r#WO&s$wO)S&VO)U&ZO)V&ZO~O!OqXQqX!dqX!hqX)XqX)WqX~P#9{O!O*hO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h*iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!W)kX~P#3zO!W*kO!h*lO~O!W*kO!h*lO~P!(zO!W*kO~Op&fO!g$YO!h*mO)j$YO](tX!V(tX!W(tX!W*OX!X(tX!Y(tX![(tX!^(tX!_(tX!a(tX!b(tX!c(tX!e(tX!f(tX(u(tX(w(tX(x(tX)S(tX)T(tX)U(tX)V(tX)X(tX~O!h(tX~P#=ZO!W*oO~Od$RO%Y*TO(y:rO~Ol;kO~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!|%RO~PBUO]*vO!T*qO!V&bO!h*tO#v!eO)j*rO)W)qX~O!h*tO)W)qX~O)W*wO~Op&fO])eX!T)eX!V)eX!h)eX#v)eX)W)eX)j)eX!O)eXQ)eX!d)eX(v)eX~Op&fO~OP%oO(oQO]%ha!V%ha!X%ha!Y%ha![%ha!^%ha!_%ha!a%ha!b%ha!c%ha!e%ha!f%ha!h%ha(r%ha(u%ha(w%ha(x%ha)S%ha)T%ha)U%ha)V%ha)W%ha)X%ha!g%ha)j%ha!O%ha!W%ha(v%ha!U%haQ%ha!d%ha~Od$RO%Y$SO(y:oO~Ol:wO~O!TxO#v!eO)j%|O~Ol<[O&r#WO(r;gO~O$Z+TO%`+UO~O!TxO#v!eO)W+VO)j+WO~OPmO]$eOa%QOl:zO!V$fO!X!XO!Y!WO!i!YO#V#QO$Z+TO%_#ZO%`+YO%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S$kO)V$kO)X!ZO)YXO)hcO)idO~O!U+ZO~P!QOa!TOl$oOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO#a+aO#b+bO#i+cO%e#UO%l#SO&m!RO&r#WO&s!TO(r$nO)PYO~OQ)lP!d)lP~P#GgO]&YOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!V&WO)S&VO)U&ZO)V&ZO~O!O#kX!T#kX#v#kX)W#kX)j#kXQ#kX!d#kX!h#kX)X#kX!x#kX(v#kX~P#IkOPmO]$eOa%QOl:zOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!V$fO!W+iO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S+jO)V$kO)X!ZO)YXO)hcO)idO~O]&cO!V+kO~O]&YO!V&WO)PYO)S&VO)U&ZO)V&ZO)X+nO!O)dP~P8zO]&YO!V&WO)S&VO)U&ZO)V&ZO~O!O#nX!T#nX#v#nX)W#nX)j#nXQ#nX!d#nX!h#nX)X#nX!x#nX(v#nX~P#NeO!TxO])nX!V)nX~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O#T+vO#p+wO(x+tO)U+rO)V+rO~O]#jX!T#jX!V#jX!O#jX#v#jX)W#jX)j#jXQ#jX!d#jX!h#jX)X#jX!x#jX(v#jX~P$ xO#V+yO~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!l+zO#T+vO#V+yO#p+wO(x+tO)U+zO)V+zO])fP!T)fP!V)fP#v)fP(v)fP)j)fP!O)fP!h)fP)W)fP~O!x)fPQ)fP!d)fP~P$#uOPmO]$eOa%QOl:zOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!V$fO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)V$kO)X!ZO)YXO)hcO)idO~O!W,QO)S,RO~P$%pO)PYO)X+nO!O)dP~P8zO]&cO!V&bO!O&Za!T&Za!h&Za#v&Za)W&Za)j&ZaQ&Za!d&Za(v&Za~OPmO]$eOa!]Ol:|Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO!V$fO!X!XO!Y!WO!i!YO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r;RO)S$kO)V$kO)X!ZO)YXO)hcO)idO~OQ(zP!d(zP~P$)YO]#}O!V#lO(w#kO(x#kO!X'Pa!Y'Pa!['Pa!^'Pa!_'Pa!a'Pa!b'Pa!c'Pa!e'Pa!f'Pa!h'Pa(u'Pa)S'Pa)T'Pa)U'Pa)V'Pa)W'Pa)X'Pa!g'Pa)j'Pa!O'Pa!W'Pa(v'Pa!U'PaQ'Pa!d'Pa~O]#}O!V#lO!X#{O(w#kO(x#kO~P!B_O!TxO#t!fO)PYO~P8zO!TxO(r%nO)j,[O~O#x,aO~OQ)aX!d)aX!h)aX)X)aX)j)aX!O)aX!T)aX(v)aX)W)aX~P:nO(v,eO(w,cO)P$UX)W$UX~O(r,fO~O)PYO)W,iO~OPmO]$eOa!]Ol:{Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!V$fO!X!XO!Y!WO!i!YO!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO)PYO)S$kO)V$kO)WiO)X!ZO)YXO)hcO)idO~O(r;SO~P$0kOPmO]$eOa%QOl:zO!TxO!V$fO!X!XO!Y!WO!i!YO#V#QO#v!eO$Y!vO$Z!wO$`!iO$e!jO$g!kO$h!lO$k!mO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r:mO)PYO)S$kO)V$kO)WiO)X!ZO)YXO)hcO)idO~O$h,sO~OPmO]$eOa!]Ol:{Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!V$fO!X!XO!Y!WO!i!YO!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO#V#QO#a#VO#b#TO$}!uO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO)PYO)S$kO)V$kO)X!ZO)YXO)hcO)idO~O${,yO(r:}O)W,wO~P$7UO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)W,{O)X#|O~P#3zO)W,{O~O)W,|O~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W,}O)X#|O~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W-OO)X#|O~P#3zOp&fO)PYO)j-QO~O)W-RO~Ol;^O(r;PO~O]-YO!{!dO&r#WO&s$wO(r-UO)S-VO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO(v-]O)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!TxO$`!iO$e!jO$g!kO$h!lO$k-bO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO$}!uO(r:nOd$Xa!o$Xa!{$Xa#i$Xa#p$Xa#t$Xa#v$Xa$R$Xa$T$Xa$Y$Xa$Z$Xa${$Xa%U$Xa%c$Xa%g$Xa%o$Xa%|$Xa(k$Xa)U$Xa!U$Xa$c$Xa~P$0kO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W-cO)X#|O~P#3zOl-eO!TxO)j,[O~O)j-gO~O]&]a!X&]a!Y&]a![&]a!^&]a!_&]a!a&]a!b&]a!c&]a!e&]a!f&]a!h&]a(u&]a(w&]a(x&]a)T&]a)U&]a)V&]a)W&]a)X&]a!g&]a)j&]a!O&]a!W&]a!T&]a#v&]a(v&]a!U&]aQ&]a!d&]a~O)S-kO!V&]a~P$DbO!O-kO~O!W-kO~O!V-lO)S&]a~P$DbO](}Xd(}Xr(}Xs(}Xt(}Xu(}Xv(}Xw(}Xx(}Xy(}X}(}X!V(}X!r(}X!s(}X!t(}X!u(}X!v(}X!x(}X!{(}X%v(}X&r(}X&s(}X(r(}X)S(}X)U(}X)V(}X~Ol;mO~P$GQO]&cO!V&bO)W-mO~Ol;cO!o-pO#V+yO#i-uO#t!fO${,yO%c!zO%k-tO%o!|O%v!}O(r;TO)PYO~P!8jO!n-yO(r,fO~O)PYO)W-{O~OPmO]$eOa%QOl:zO!T.QO!V$fO!X!XO!Y!WO!i!YO#V.XO#a.WO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO(x.PO)S$kO)V$kO)W-}O)X!ZO)YXO)hcO)idO~O!U.VO~P$JbO])^Xd)^Xr)^Xs)^Xt)^Xu)^Xv)^Xw)^Xx)^Xy)^X})^X!T)^X!V)^X!l)^X!r)^X!s)^X!t)^X!u)^X!v)^X!x)^X!{)^X%v)^X&r)^X&s)^X(r)^X(v)^X)S)^X)U)^X)V)^X)W)^X!O)^X!h)^X)X)^X!X)^X!Y)^X![)^X!^)^X!_)^X!a)^X!b)^X!c)^X!e)^X!f)^X(u)^X(w)^X(x)^X)T)^X!g)^X)j)^X!W)^XQ)^X!d)^X#T)^X#V)^X#p)^X#v)^Xa)^X{)^X!o)^X#a)^X#b)^X#i)^X#t)^X${)^X%c)^X%e)^X%k)^X%l)^X%o)^X&m)^X)P)^X!U)^X~Ol*[O~P$LlOl$oO!T(QO!l.^O(r$nO(v(PO)PYO~Op&fOl)^X~P$LlOl$oO!n.cO!o.cO(r$nO)PYO~Ol;dO!U.nO!n.pO!o.oO#i-uO${!tO$}!uO%g!{O%k-tO%o!|O%v!}O(r;VO)PYO~P!8jO!T(QO!l.^O(v(PO])OXd)OXl)OXr)OXs)OXt)OXu)OXv)OXw)OXx)OXy)OX})OX!V)OX!r)OX!s)OX!t)OX!u)OX!v)OX!x)OX!{)OX%v)OX&r)OX&s)OX(r)OX)S)OX)U)OX)V)OX~O)W)OX!O)OX!X)OX!Y)OX![)OX!^)OX!_)OX!a)OX!b)OX!c)OX!e)OX!f)OX!h)OX(u)OX(w)OX(x)OX)T)OX)X)OX!g)OX)j)OX!W)OXQ)OX!d)OX!U)OX#v)OX~P%%eO!T(QO~O!T(QO(v(PO~O(r%nO!U*QP~O!T(ZO(v.uO]&kad&kal&kar&kas&kat&kau&kav&kaw&kax&kay&ka}&ka!V&ka!r&ka!s&ka!t&ka!u&ka!v&ka!x&ka!{&ka%v&ka&r&ka&s&ka(r&ka)S&ka)U&ka)V&ka)W&ka!O&ka!X&ka!Y&ka![&ka!^&ka!_&ka!a&ka!b&ka!c&ka!e&ka!f&ka!h&ka(u&ka(w&ka(x&ka)T&ka)X&ka!g&ka)j&ka!W&kaQ&ka!d&ka!U&ka#v&ka~Ol$oO!T(ZO(r$nO~O&r#WO&s$wO]&pad&pal&par&pas&pat&pau&pav&paw&pax&pay&pa}&pa!V&pa!r&pa!s&pa!t&pa!u&pa!v&pa!x&pa!{&pa%v&pa(r&pa)S&pa)U&pa)V&pa)W&pa!O&pa!T&pa!X&pa!Y&pa![&pa!^&pa!_&pa!a&pa!b&pa!c&pa!e&pa!f&pa!h&pa(u&pa(w&pa(x&pa)T&pa)X&pa!g&pa)j&pa!W&paQ&pa!d&pa(v&pa!U&pa#v&pa~O&s.zO~P!(zO!Y#qO![#rO!f#zO)S#mO!^'Ua!_'Ua!a'Ua!b'Ua!c'Ua!e'Ua!h'Ua(u'Ua)T'Ua)U'Ua)V'Ua)W'Ua)X'Ua!g'Ua)j'Ua!O'Ua!W'Ua(v'Ua!U'UaQ'Ua!d'Ua~P#3zO!V'dX!X'dX!Y'dX!['dX!^'dX!_'dX!a'dX!b'dX!c'dX!e'dX!f'dX!h'dX(u'dX(w'dX(x'dX)S'dX)T'dX)U'dX)V'dX)X'dX!O'dX~O].|O)W'dX!g'dX)j'dX!W'dX(v'dX!U'dXQ'dX!d'dX~P%2xO!Y#qO![#rO!f#zO)S#mO!^'Wa!_'Wa!a'Wa!b'Wa!c'Wa!e'Wa!h'Wa(u'Wa)T'Wa)U'Wa)V'Wa)W'Wa)X'Wa!g'Wa)j'Wa!O'Wa!W'Wa(v'Wa!U'WaQ'Wa!d'Wa~P#3zO]#}O!T$WO!V.}O&r#WO&s$wO~O!X'Za!Y'Za!['Za!^'Za!_'Za!a'Za!b'Za!c'Za!e'Za!f'Za!h'Za(u'Za(w'Za(x'Za)S'Za)T'Za)U'Za)V'Za)W'Za)X'Za!g'Za)j'Za!O'Za!W'Za(v'Za!U'ZaQ'Za!d'Za~P%6oO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!h'^a)W'^a!g'^a)j'^a!O'^a!W'^a(v'^a!U'^aQ'^a!d'^a~P#3zOPmO]$eOa%QOl:zO!V$fO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)S$kO)V%]O)X!ZO)YXO)hcO)idO)j%[O~O!W/QO~P%:oOS(qOT(nO]#}O*W(pO~O]/TO'f/UO*W/RO~OS/YOT(nO*W/XO~O]#}O~Q'na!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO(v/[O)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O)W#Zi!O#Zi~P#3zO]cXlgXpcXpiX!VcX!XcX!YcX![cX!^cX!_cX!acX!bcX!ccX!ecX!fcX!gcX!hcX(ucX(wcX(xcX)ScX)TcX)UcX)VcX)WcX)XcX)jcX!OcX!WcX(vcX!TcX#vcX!UcXQcX!dcX~Od/^O%Y*TO(y/]O~Ol/_O~Ol/`O~Op&fO]bi!Vbi!Xbi!Ybi![bi!^bi!_bi!abi!bbi!cbi!ebi!fbi!gbi!hbi(ubi(wbi(xbi)Sbi)Tbi)Ubi)Vbi)Wbi)Xbi)jbi!Obi!Wbi(vbi!UbiQbi!dbi~O!W/bO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO![#rO)S#mO!Y&zi!^&zi!_&zi!a&zi!b&zi!c&zi!e&zi!f&zi!h&zi(u&zi)T&zi)U&zi)V&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y&zi![&zi!^&zi!_&zi!a&zi!b&zi!c&zi!e&zi!f&zi!h&zi(u&zi)S&zi)T&zi)U&zi)V&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO)S#mO)V#pO!h&zi(u&zi)T&zi)U&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO)S#mO)U#nO)V#pO!h&zi(u&zi)T&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO)S#mO)V#pO!^&zi!h&zi(u&zi)T&zi)U&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!a#xO!b#yO!c#yO!e#yO!f#zO)S#mO)V#pO!^&zi!_&zi!h&zi(u&zi)T&zi)U&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!a#xO!b#yO!c#yO!e#yO!f#zO)S#mO!^&zi!_&zi!h&zi(u&zi)T&zi)U&zi)V&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!b#yO!c#yO!e#yO!f#zO)S#mO!^&zi!_&zi!a&zi!h&zi(u&zi)T&zi)U&zi)V&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!f#zO)S#mO!^&zi!_&zi!a&zi!b&zi!c&zi!e&zi!h&zi(u&zi)T&zi)U&zi)V&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO)S#mO!^&zi!_&zi!a&zi!b&zi!c&zi!e&zi!f&zi!h&zi(u&zi)T&zi)U&zi)V&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO)S#mO)T#oO)U#nO)V#pO!h&zi(u&zi)W&zi)X&zi!g&zi)j&zi!O&zi!W&zi(v&zi!U&ziQ&zi!d&zi~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h/cO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!O(sX~P#3zO!h/cO!O(sX~O!O/eO~O]%Xap%Xa!X%Xa!Y%Xa![%Xa!^%Xa!_%Xa!a%Xa!b%Xa!c%Xa!e%Xa!f%Xa!h%Xa(u%Xa(w%Xa(x%Xa)T%Xa)U%Xa)V%Xa)W%Xa)X%Xa!g%Xa)j%Xa!O%Xa!W%Xa!T%Xa#v%Xa(v%Xa!U%XaQ%Xa!d%Xa~O)S/fO!V%Xa~P&,aO!O/fO~O!W/fO~O!V/gO)S%Xa~P&,aO!X'Zi!Y'Zi!['Zi!^'Zi!_'Zi!a'Zi!b'Zi!c'Zi!e'Zi!f'Zi!h'Zi(u'Zi(w'Zi(x'Zi)S'Zi)T'Zi)U'Zi)V'Zi)W'Zi)X'Zi!g'Zi)j'Zi!O'Zi!W'Zi(v'Zi!U'ZiQ'Zi!d'Zi~P%6oO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!h'^i)W'^i!g'^i)j'^i!O'^i!W'^i(v'^i!U'^iQ'^i!d'^i~P#3zO!W/lO~P%:oO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h/nO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!U)rX~P#3zO(r/qO~O!V/sO(w)sO)j/uO~O!h/nO!U)rX~O!U/vO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO)S#mO)T#oO)U#nO)V#pO)X#|O!h_i(u_i)W_i!g_i)j_i!O_i!W_i(v_i!U_iQ_i!d_i~P#3zO!R/wO~Ol){O]!Qa!h!Qa)X!Qa)]!Qa~OP0PO]0OOl0PO!R0PO!T/|O!V/}O!X0PO!Y0PO![0PO!^0PO!_0PO!a0PO!b0PO!c0PO!e0PO!f0PO!g0PO!h0PO!i0PO(oQO(v0PO(w0PO(x0PO)S/yO)T/zO)U/zO)V/{O)W0PO)X0PO)YXO~O!O0SO~P&6yO!R$[O~O!h*OO)X)Qa)])Qa~O)]0WO~O])dO!V)eO!X)bO!g)bO%Z)bO%[)bO%])bO%^)bO%_)fO%`)fO%a)bO(x)cO)j)bO)x)gO~Od)oO%Y*TO(y$OO~O)W0YO~O]nXdnXlmXpnXrnXsnXtnXunXvnXwnXxnXynX}nX!VnX!rnX!snX!tnX!unX!vnX!xnX!{nX%vnX&rnX&snX(rnX)SnX)UnX)VnX!TnX!hnX)XnX!OnXQnX!dnX~O!lnX(vnX)WnX!XnX!YnX![nX!^nX!_nX!anX!bnX!cnX!enX!fnX(unX(wnX(xnX)TnX!gnX)jnX!WnX!UnX#vnX#TnX#VnX#pnXanX{nX!onX#anX#bnX#inX#tnX${nX%cnX%enX%knX%lnX%onX&mnX)PnX~P&:uOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O}!_O!r!aO!s!aO!t!aO!u!aO!v!aO!x!cO~O])aid)ail)ai!V)ai!{)ai%v)ai(r)ai)S)ai)U)ai)V)aiQ)ai!d)ai!h)ai)X)ai)j)ai!O)ai!T)ai&r)ai(v)ai)W)ai~P&?sO]&cO!V&bO!O#Qi!T#Qi!h#Qi#v#Qi)W#Qi)j#QiQ#Qi!d#Qi(v#Qi~O!OqaQqa!dqa!hqa)Xqa)Wqa~P#9{O!OqaQqa!dqa!hqa)Xqa)Wqa~P#IkO]&cO!V+kO!OqaQqa!dqa!hqa)Xqa)Wqa~O!h*iO!W)ka~O!h*mO!W*Oa~OPmOa!]Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O{#RO}!_O!X!XO!Y!WO!i!YO!s!aO!t!aO!v!aO!x!cO#V#QO#a#VO#b#TO#v!eO$Y!vO$Z!wO$`!iO$e!jO$g!kO$h!lO$k!mO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO%_#ZO%`#[O%a#YO%e#UO%l#SO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO)PYO)WiO)X!ZO)YXO)hcO)idO~O]eOd!POlTO!T*qO!U&TO!V0hO!opO!r!`O!u!bO!{!dO#i#OO#p!xO#t!fO$R!gO$T!hO${!tO$}!uO%U!yO%c!zO%g!{O%o!|O%v!}O%|#PO(rRO(w)sO)SaO)U|O)V{O~P&DuO!h*tO)W)qa~OPmO]$eOa!]Ol:|O{#RO!T$WO!V$fO!X!XO!Y!WO!i!YO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r;UO)PYO)S$kO)V$kO)X0nO)YXO)hcO)idO!O(sP!O)dP~P&?sO!h*mO!W*OX~O]#}O!T$WO~O!h0sO!T)zX#v)zX)j)zX~O)W0uO~O)W0vO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W0xO)X#|O~P#3zO)W0vO~P!?WO]1SOd!POl%bO!V1QO!{!dO%v$mO(r$xO)S0zO)X0}O~O)U1OO)V1OO)j0{OQ#PX!d#PX!h#PX!O#PX~P' dO!h1TOQ)lX!d)lX~OQ1VO!d1VO~O)X1YO)j1XOQ#`X!d#`X!h#`X~P!<[O)X1YO)j1XOQ#`X!d#`X!h#`X~P!;bOp&UO~O!O#ka!T#ka#v#ka)W#ka)j#kaQ#ka!d#ka!h#ka)X#ka!x#ka(v#ka~P#IkO]&cO!V+kO!O#ka!T#ka#v#ka)W#ka)j#kaQ#ka!d#ka!h#ka)X#ka!x#ka(v#ka~O!W1_O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W1_O)S1aO~P$%pO!W1_O~P!(zO]#ja!T#ja!V#ja!O#ja#v#ja)W#ja)j#jaQ#ja!d#ja!h#ja)X#ja!x#ja(v#ja~P$ xO]&cO!O1eO!V+kO~O!h1fO!O)dX~O!O1hO~O]&cO!V+kO!O#na!T#na#v#na)W#na)j#naQ#na!d#na!h#na)X#na!x#na(v#na~O]1lOr#SXs#SXt#SXu#SXv#SXw#SXx#SXy#SX!T#SX!V#SX#T#SX#p#SX(x#SX)U#SX)V#SX!l#SX!x#SX#V#SX#v#SX(v#SX)j#SX!O#SX!h#SX)W#SXQ#SX!d#SX)X#SX~O]1mO~O]1pOl$oO!V$fO#V#QO(r$nO)hcO)idO~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!l+zO#T+vO#V+yO#p+wO(x+tO)U+zO)V+zO~O])fX!T)fX!V)fX!x)fX#v)fX(v)fX)j)fX!O)fX!h)fX)W)fXQ)fX!d)fX~P'+}O!x!cO]#Ri!T#Ri!V#Ri#v#Ri(v#Ri)j#Ri!O#Ri!h#Ri)W#RiQ#Ri!d#Ri~O!W1xO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W1xO)S1zO~P$%pO!W1xO~P!(zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|OQ*RX!d*RX!h*RX~P#3zO)X1{OQ({X!d({X!h({X~O!h1|OQ(zX!d(zX~OQ2OO!d2OO~O!O2PO~O#t$lO)PYO~P8zOl-eO!TxO)j2TO~O!O2UO~O#x,aOP#ui]#uia#uid#uil#uir#uis#uit#uiu#uiv#uiw#uix#uiy#ui{#ui}#ui!T#ui!V#ui!X#ui!Y#ui!i#ui!o#ui!r#ui!s#ui!t#ui!u#ui!v#ui!x#ui!{#ui#V#ui#a#ui#b#ui#i#ui#p#ui#t#ui#v#ui$R#ui$T#ui$Y#ui$Z#ui$`#ui$e#ui$g#ui$h#ui$k#ui$m#ui$o#ui$q#ui$s#ui$u#ui$w#ui${#ui$}#ui%U#ui%_#ui%`#ui%a#ui%c#ui%e#ui%g#ui%l#ui%o#ui%v#ui%|#ui&m#ui&r#ui&s#ui'Q#ui'R#ui'V#ui'Y#ui'a#ui'b#ui(k#ui(o#ui(r#ui)P#ui)S#ui)U#ui)V#ui)W#ui)X#ui)Y#ui)h#ui)i#ui!U#ui$c#ui!n#ui%k#ui~O]&cO~O]&cO!TxO!V&bO#v!eO~O(v2ZO(w,cO)P$Ua)W$Ua~O)PYO)W2]O~O!O2^O~P,]O!O2^O)W#jO~O!O2^O~O$c2cOP$_i]$_ia$_id$_il$_ir$_is$_it$_iu$_iv$_iw$_ix$_iy$_i{$_i}$_i!T$_i!V$_i!X$_i!Y$_i!i$_i!o$_i!r$_i!s$_i!t$_i!u$_i!v$_i!x$_i!{$_i#V$_i#a$_i#b$_i#i$_i#p$_i#t$_i#v$_i$R$_i$T$_i$Y$_i$Z$_i$`$_i$e$_i$g$_i$h$_i$k$_i$m$_i$o$_i$q$_i$s$_i$u$_i$w$_i${$_i$}$_i%U$_i%_$_i%`$_i%a$_i%c$_i%e$_i%g$_i%l$_i%o$_i%v$_i%|$_i&m$_i&r$_i&s$_i'Q$_i'R$_i'V$_i'Y$_i'a$_i'b$_i(k$_i(o$_i(r$_i)P$_i)S$_i)U$_i)V$_i)W$_i)X$_i)Y$_i)h$_i)i$_i!U$_i~O]1pO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)W2fO)X#|O~P#3zOPmO]$eOa!]Ol:{O{#RO!V$fO!X!XO!Y!WO!i!YO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r:}O)S$kO)V$kO)W2iO)X!ZO)YXO)hcO)idO~P&?sO)W2fO~O(r-UO~O)PYO)j2lO~O)W2nO~O]-YOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!{!dO!|%RO(r-UO)S-VO~O)S2sO~O]&cO!V2uO!h2vO)W)uX~O]-YO!{!dO(r-UO)S-VO~O)W2yO~O!TxO$`!iO$e!jO$g!kO$h!lO$k-bO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO$}!uO(r:nOd$Xi!o$Xi!{$Xi#i$Xi#p$Xi#t$Xi#v$Xi$R$Xi$T$Xi$Y$Xi$Z$Xi${$Xi%U$Xi%c$Xi%g$Xi%o$Xi%|$Xi(k$Xi)U$Xi!U$Xi$c$Xi~P$0kOl:{O(r:nO~P0zO]2}O~O)W2SO~O!u3PO(r%nO~O!O3SO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h3TO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O3UO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO]&cO!V+kO!T%ui#v%ui)W%ui)j%ui~O!W3VO~Ol:yO)W(}X~P$GQOa!TOl$oO{3]O#a#VO#b3[O#t!fO%e#UO%l3^O&m!RO&r#WO&s!TO(r$nO)PYO~P&?sOl;cO!o-pO#i-uO#t!fO${,yO%c!zO%k-tO%o!|O%v!}O(r;TO)PYO~P!8jO]&cO!V&bO)W3`O~O)W3aO~O)PYO)W3aO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)W3bO)X#|O~P#3zO)W3bO~O)W3eO~O!U3gO~P$JbOl$oO(r$nO~O]3iO!T'yO~P'+iO!T(QO!l3lO(v(PO])Oad)Oal)Oar)Oas)Oat)Oau)Oav)Oaw)Oax)Oay)Oa})Oa!V)Oa!r)Oa!s)Oa!t)Oa!u)Oa!v)Oa!x)Oa!{)Oa%v)Oa&r)Oa&s)Oa(r)Oa)S)Oa)U)Oa)V)Oa)W)Oa!O)Oa!X)Oa!Y)Oa![)Oa!^)Oa!_)Oa!a)Oa!b)Oa!c)Oa!e)Oa!f)Oa!h)Oa(u)Oa(w)Oa(x)Oa)T)Oa)X)Oa!g)Oa)j)Oa!W)OaQ)Oa!d)Oa!U)Oa#v)Oa~Ol$oO!n.cO!o.cO(r$nO~O!h3pO)X3rO!T)_X~O!o3tO)PYO~P8zO)W3uO~PGVO]3zOl({O!T$WO!{!dO%v$mO&r#WO(r(zO(v4OO)S3wO)U3{O)V3{O~O)W4PO)j4RO~P(&eOl;dO!U4TO!n.pO!o.oO#i-uO${!tO$}!uO%g!{O%k-tO%o!|O%v!}O(r;VO)PYO~P!8jOl;dO%v!}O(r;VO~P!8jO(v4UO~Ol$oO!T(QO(r$nO(v(PO)PYO~O!l3lO~P((sO)j4WO!U&oX!h&oX~O!h4XO!U*QX~O!U4ZO~Oa4]Ol$oO&m!RO(r$nO~O!T(ZO]&kid&kil&kir&kis&kit&kiu&kiv&kiw&kix&kiy&ki}&ki!V&ki!r&ki!s&ki!t&ki!u&ki!v&ki!x&ki!{&ki%v&ki&r&ki&s&ki(r&ki)S&ki)U&ki)V&ki)W&ki!O&ki!X&ki!Y&ki![&ki!^&ki!_&ki!a&ki!b&ki!c&ki!e&ki!f&ki!h&ki(u&ki(w&ki(x&ki)T&ki)X&ki!g&ki)j&ki!W&kiQ&ki!d&ki!U&ki#v&ki~O(v&ki~P(*TO(v.uO~P(*TO!O4`O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O4`O~O!O4aO~O]#}O!T$WO!V'Zi!X'Zi!Y'Zi!['Zi!^'Zi!_'Zi!a'Zi!b'Zi!c'Zi!e'Zi!f'Zi!h'Zi(u'Zi(w'Zi(x'Zi)S'Zi)T'Zi)U'Zi)V'Zi)W'Zi)X'Zi!g'Zi)j'Zi!O'Zi!W'Zi(v'Zi!U'ZiQ'Zi!d'Zi~OPmOa%QOl:zO!X!XO!Y!WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)X!ZO)YXO)hcO)idO]#]ap#]a!T#]a!V#]a)S#]a)U#]a)V#]a~O(r%nO)X4fO!O*YP~O*W4eO~O'f4hO*W4eO~O*W4iO~OlmXpnXp&wX~Od4kO%Y*TO(y/]O~Od4kO%Y*TO(y4lO~O!h/cO!O(sa~O!W4pO~O]&cO!V+kO!T%uq#v%uq)W%uq)j%uq~O]#}O!T$WO!X'Zq!Y'Zq!['Zq!^'Zq!_'Zq!a'Zq!b'Zq!c'Zq!e'Zq!f'Zq!h'Zq(u'Zq(w'Zq(x'Zq)S'Zq)T'Zq)U'Zq)V'Zq)W'Zq)X'Zq!g'Zq)j'Zq!O'Zq!W'Zq(v'Zq!U'ZqQ'Zq!d'Zq~O!V'Zq~P(5bO!V.}O&r#WO&s$wO~P(5bO!T$WO!V)rO(w)sO!U(UX!h(UX~P!JwO!h/nO!U)ra~O!W4xO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h*iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!U4|O~P&6yO!W4|O~P&6yO!O4|O~P&6yO!O5RO~P&6yO]5SO!h'ua)X'ua)]'ua~O!h*OO)X)Qi)])Qi~O]&cO!V&bO!O#Qq!T#Qq!h#Qq#v#Qq)W#Qq)j#QqQ#Qq!d#Qq(v#Qq~O!OqiQqi!dqi!hqi)Xqi)Wqi~P#IkO]&cO!V+kO!OqiQqi!dqi!hqi)Xqi)Wqi~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!h'Tq)W'Tq!g'Tq)j'Tq!O'Tq!W'Tq(v'Tq!U'TqQ'Tq!d'Tq~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!W'|a!h'|a~P#3zO!W5XO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h5YO(u#gO)S#mO)T#oO)U#nO)V#pO)W#jO)X#|O!U)rX~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!h#{i)W#{i~P#3zO]*vO!T$WO!V&bO)j*rO!h(Va)W(Va~O!h1fO]'dX!O)dX~P%2xO)X5[O!T%qa!h%qa#v%qa)j%qa~O!h0sO!T)za#v)za)j)za~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W5_O)X#|O~P#3zO]1SOd!POl;[O!V1QO!{!dO%v$mO(r$xO)S;xO)U5aO)V5aO~OQ#Pa!d#Pa!h#Pa!O#Pa~P(DjO]1SOd!POr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!V1QO!{!dO!|%RO%v$mO(r$xOQ#kX!d#kX!h#kX!O#kX~Ol%bO)S0zO)U;yO)V;yO~P(ElO]&cOQ#Pa!d#Pa!h#Pa!O#Pa~O!V&bO)j5eO~P(GZO(r%nOQ#dX!d#dX!h#dX!O#dX~O)U;yO)V;yOQ#nX!d#nX!h#nX!O#nX~P' dO!V+kO~P(GZO]1SOa!TOd!POl;]O{#RO!V1QO!{!dO#a#VO#b#TO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO(r;QO)PYO)S;xO)U5aO)V5aO)X+nO!O)dP~P&?sO!h1TOQ)la!d)la~Op&fO)j5jOQ#`al(}X!d#`a!h#`a)X(}X~P$GQO(r-UOQ#ga!d#ga!h#ga~Op&fO)j5jOQ#`a])^Xd)^Xl)^Xr)^Xs)^Xt)^Xu)^Xv)^Xw)^Xx)^Xy)^X})^X!T)^X!V)^X!d#`a!h#`a!l)^X!r)^X!s)^X!t)^X!u)^X!v)^X!x)^X!{)^X%v)^X&r)^X&s)^X(r)^X(v)^X)S)^X)U)^X)V)^X)X)^X~O#a5mO#b5mO~O]&cO!V+kO!O#ki!T#ki#v#ki)W#ki)j#kiQ#ki!d#ki!h#ki)X#ki!x#ki(v#ki~O!W5oO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W5oO~P!(zO!W5oO)S5qO~P$%pO]#ji!T#ji!V#ji!O#ji#v#ji)W#ji)j#jiQ#ji!d#ji!h#ji)X#ji!x#ji(v#ji~P$ xO)PYO)X5sO~P8zO!h1fO!O)da~O&r#WO&s$wO!T#qa!x#qa#v#qa(v#qa)j#qa!O#qa!h#qa)W#qaQ#qa!d#qa)X#qa~P#NeO!O5xO~P!(zO!O)oP~P!4xO)T6OO)U5|O]#Ua!T#Ua!V#Ua)S#Ua)V#Uar#Uas#Uat#Uau#Uav#Uaw#Uax#Uay#Ua!l#Ua!x#Ua#T#Ua#V#Ua#p#Ua#v#Ua(v#Ua(x#Ua)j#Uaa#Uad#Ual#Ua{#Ua}#Ua!o#Ua!r#Ua!s#Ua!t#Ua!u#Ua!v#Ua!{#Ua#a#Ua#b#Ua#i#Ua#t#Ua${#Ua%c#Ua%e#Ua%k#Ua%l#Ua%o#Ua%v#Ua&m#Ua&r#Ua&s#Ua(r#Ua)P#Ua)W#Ua!O#Ua!h#UaQ#Ua!d#Ua~O!x!cO]#Rq!T#Rq!V#Rq#v#Rq(v#Rq)j#Rq!O#Rq!h#Rq)W#RqQ#Rq!d#Rq~O!W6TO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W6TO~P!(zO!h1|OQ(za!d(za~O)W6YO~Ol-eO!TxO)j6ZO~O]*vO!T$WO!V&bO!h*tO)W)qX~O)j6_O~P)+cO!O6aO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O6aO~O$c6cOP$_q]$_qa$_qd$_ql$_qr$_qs$_qt$_qu$_qv$_qw$_qx$_qy$_q{$_q}$_q!T$_q!V$_q!X$_q!Y$_q!i$_q!o$_q!r$_q!s$_q!t$_q!u$_q!v$_q!x$_q!{$_q#V$_q#a$_q#b$_q#i$_q#p$_q#t$_q#v$_q$R$_q$T$_q$Y$_q$Z$_q$`$_q$e$_q$g$_q$h$_q$k$_q$m$_q$o$_q$q$_q$s$_q$u$_q$w$_q${$_q$}$_q%U$_q%_$_q%`$_q%a$_q%c$_q%e$_q%g$_q%l$_q%o$_q%v$_q%|$_q&m$_q&r$_q&s$_q'Q$_q'R$_q'V$_q'Y$_q'a$_q'b$_q(k$_q(o$_q(r$_q)P$_q)S$_q)U$_q)V$_q)W$_q)X$_q)Y$_q)h$_q)i$_q!U$_q~O)W6dO~OPmO]$eOa!]Ol:{O{#RO!V$fO!X!XO!Y!WO!i!YO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r:}O)S$kO)V$kO)W6fO)X!ZO)YXO)hcO)idO~P&?sO(v6hO)j*rO~P)+cO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W6fO)X#|O~P#3zO!O6jO~P!(zO)W6nO~O)W6oO~O]-YOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!{!dO(r-UO)S-VO~O]&cO!V2uO!h%Oa)W%Oa!O%Oa~O!W6uO)S6vO~P$%pO!h2vO)W)ua~O]&cO!O6yO!V2uO~O!TxO$`!iO$e!jO$g!kO$h!lO$k-bO$m!nO$o!oO$q!pO$s!qO$u!rO$w!sO$}!uO(r:nOd$Xq!o$Xq!{$Xq#i$Xq#p$Xq#t$Xq#v$Xq$R$Xq$T$Xq$Y$Xq$Z$Xq${$Xq%U$Xq%c$Xq%g$Xq%o$Xq%|$Xq(k$Xq)U$Xq!U$Xq$c$Xq~P$0kOPmO]$eOa!]Ol:{O{#RO!V$fO!X!XO!Y!WO!i!YO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r:}O)PYO)S$kO)V$kO)W6{O)X!ZO)YXO)hcO)idO~P&?sO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W7OO)X#|O~P#3zO)W7PO~OP7QO(oQO~Ol*[O)W)^X~P$GQOp&fOl(}X)W)^X~P$GQO)W7SO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O)W&Sa~P#3zO!U7UO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO)W7VO~OPmO]$eOa!]Ol:|O{#RO!V$fO!X!XO!Y!WO!i!YO#V#QO#a#VO#b#TO%_#ZO%`#[O%a#YO%e#UO%l#SO%v$mO&m!RO&r#WO&s!TO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r;UO)PYO)S$kO)V$kO)X0nO)YXO)hcO)idO!O)dP~P&?sO!h3pO)X7ZO!T)_a~O!h3pO!T)_a~O)W7`O)j7bO~P(&eO)W7dO~PGVO]3zOl({Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!{!dO!|%RO%v$mO&r#WO(r(zO)S3wO)U3{O)V3{O~O)S7hO~O]&cO!T*qO!V7jO!h7kO#v!eO(v4OO~O)W7`O)j7mO~P)FwO]3zOl({O!{!dO%v$mO&r#WO(r(zO)S3wO)U3{O)V3{O~Op&fO])cX!T)cX!V)cX!h)cX#v)cX(v)cX)W)cX)j)cX!O)cX~O)W7`O~O!T(QO!l7sO(v(PO])Oid)Oil)Oir)Ois)Oit)Oiu)Oiv)Oiw)Oix)Oiy)Oi})Oi!V)Oi!r)Oi!s)Oi!t)Oi!u)Oi!v)Oi!x)Oi!{)Oi%v)Oi&r)Oi&s)Oi(r)Oi)S)Oi)U)Oi)V)Oi)W)Oi!O)Oi!X)Oi!Y)Oi![)Oi!^)Oi!_)Oi!a)Oi!b)Oi!c)Oi!e)Oi!f)Oi!h)Oi(u)Oi(w)Oi(x)Oi)T)Oi)X)Oi!g)Oi)j)Oi!W)OiQ)Oi!d)Oi!U)Oi#v)Oi~O(r%nO!U(fX!h(fX~O!h4XO!U*Qa~Op&fO]*Pad*Pal*Par*Pas*Pat*Pau*Pav*Paw*Pax*Pay*Pa}*Pa!T*Pa!V*Pa!r*Pa!s*Pa!t*Pa!u*Pa!v*Pa!x*Pa!{*Pa%v*Pa&r*Pa&s*Pa(r*Pa)S*Pa)U*Pa)V*Pa)W*Pa!O*Pa!X*Pa!Y*Pa![*Pa!^*Pa!_*Pa!a*Pa!b*Pa!c*Pa!e*Pa!f*Pa!h*Pa(u*Pa(w*Pa(x*Pa)T*Pa)X*Pa!g*Pa)j*Pa!W*PaQ*Pa!d*Pa(v*Pa!U*Pa#v*Pa~O!T(ZO]&kqd&kql&kqr&kqs&kqt&kqu&kqv&kqw&kqx&kqy&kq}&kq!V&kq!r&kq!s&kq!t&kq!u&kq!v&kq!x&kq!{&kq%v&kq&r&kq&s&kq(r&kq)S&kq)U&kq)V&kq)W&kq!O&kq!X&kq!Y&kq![&kq!^&kq!_&kq!a&kq!b&kq!c&kq!e&kq!f&kq!h&kq(u&kq(w&kq(x&kq)T&kq)X&kq!g&kq)j&kq!W&kqQ&kq!d&kq(v&kq!U&kq#v&kq~OPmOa%QOl:zO!T$WO!i!YO#V#QO%_#ZO%`#[O%a#YO%v$mO'Q!WO'R!WO'V#XO'Y![O'a![O'b![O(oQO(r$xO)YXO)hcO)idO~O]*Ui!V*Ui!X*Ui!Y*Ui![*Ui!^*Ui!_*Ui!a*Ui!b*Ui!c*Ui!e*Ui!f*Ui!h*Ui(u*Ui(w*Ui(x*Ui)S*Ui)T*Ui)U*Ui)V*Ui)W*Ui)X*Ui!g*Ui)j*Ui!O*Ui!W*Ui(v*Ui!U*UiQ*Ui!d*Ui~P*&WO!O7xO~O!W7yO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!h'^q)W'^q!g'^q)j'^q!O'^q!W'^q(v'^q!U'^qQ'^q!d'^q~P#3zO!h7zO!O*YX~O!O7|O~O*W7}O~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!h^y)W^y!g^y)j^y!O^y!W^y(v^y!U^yQ^y!d^y~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!O(ha!h(ha~P#3zO]#}O!T$WO!V'Zy!X'Zy!Y'Zy!['Zy!^'Zy!_'Zy!a'Zy!b'Zy!c'Zy!e'Zy!f'Zy!h'Zy(u'Zy(w'Zy(x'Zy)S'Zy)T'Zy)U'Zy)V'Zy)W'Zy)X'Zy!g'Zy)j'Zy!O'Zy!W'Zy(v'Zy!U'ZyQ'Zy!d'Zy~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!h'^y)W'^y!g'^y)j'^y!O'^y!W'^y(v'^y!U'^yQ'^y!d'^y~P#3zO]&cO!V+kO!T%uy#v%uy)W%uy)j%uy~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!U(Ua!h(Ua~P#3zO!W4xO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!U#}i!h#}i~P#3zO!U8PO~P&6yO!W8PO~P&6yO!O8PO~P&6yO!O8RO~P&6yO]&cO!V&bO!O#Qy!T#Qy!h#Qy#v#Qy)W#Qy)j#QyQ#Qy!d#Qy(v#Qy~O]&cO!V+kO!OqqQqq!dqq!hqq)Xqq)Wqq~O]&cOQ#Pi!d#Pi!h#Pi!O#Pi~O!V+kO~P*9jOQ#nX!d#nX!h#nX!O#nX~P(DjO!V&bO~P*9jOQ(OX](OXd'qXl'qXr(OXs(OXt(OXu(OXv(OXw(OXx(OXy(OX!V(OX!d(OX!h(OX!{'qX%v'qX(r'qX)S(OX)U(OX)V(OX!O(OX~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|OQ#_i!d#_i!h#_i!O#_i~P#3zO&r#WO&s$wOQ#fi!d#fi!h#fi~O(r-UO)X1YO)j1XOQ#`X!d#`X!h#`X~O!W8WO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W8WO~P!(zO!T#qi!x#qi#v#qi(v#qi)j#qi!O#qi!h#qi)W#qiQ#qi!d#qi)X#qi~O]&cO!V+kO~P*?fO]&YO!V&WO&r#WO&s$wO)S&VO)U&ZO)V&ZO~P*?fO!O8YO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!h8ZO!O)oX~O!O8]O~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|OQ*TX!d*TX!h*TX~P#3zO)X8`OQ*SX!d*SX!h*SX~O)W8bO~O!O$bi!h#{a)W#{a~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W8eO)X#|O~P#3zO!O8gO~P!(zO!O8gO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O8gO~O]&cO!V&bO(v8mO~O)W8nO~O]&cO!V2uO!h%Oi)W%Oi!O%Oi~O!W8qO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W8qO)S8sO~P$%pO!W8qO~P!(zO]&cO!V2uO!h(Ya)W(Ya~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)W8tO)X#|O~P#3zO)W2iO~P!(zO)W8tO~OP%oO!O8uO(oQO~O!O8uO~O)W8vO~P%%eO#T8yO(x.PO)W8wO~O!h3pO!T)_i~O)X8}O!T'wa!h'wa~O)W9PO)j9RO~P)FwO)W9PO~O)W9PO)j9VO~P(&eOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O~P)GgO]&cO!V7jO!T!ya!h!ya#v!ya(v!ya)W!ya)j!ya!O!ya~O!W9^O)S9_O~P$%pO!T$WO!h7kO(v4OO)W9PO)j9VO~O!T$WO~P#EfO]&cO!O9bO!V7jO~O]&cO!V7jO!T&aa!h&aa#v&aa(v&aa)W&aa)j&aa!O&aa~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O)W&ba~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W9PO)X#|O~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!U&oi!h&oi~P#3zO!V.}O]']i!T']i!X']i!Y']i![']i!^']i!_']i!a']i!b']i!c']i!e']i!f']i!h']i(u']i(w']i(x']i)S']i)T']i)U']i)V']i)W']i)X']i!g']i)j']i!O']i!W']i(v']i!U']iQ']i!d']i~O(r%nO)X9eO~O!h7zO!O*Ya~O!O9gO~P&6yO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!U(Ua)W#Zi~P#3zO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|OQ#_q!d#_q!h#_q!O#_q~P#3zO&r#WO&s$wOQ#fq!d#fq!h#fq~O)j5jOQ#`a!d#`a!h#`a~O]&cO!V+kO!T#qq!x#qq#v#qq(v#qq)j#qq!O#qq!h#qq)W#qqQ#qq!d#qq)X#qq~O!h8ZO!O)oa~O)U5|O]&Vi!T&Vi!V&Vi)S&Vi)T&Vi)V&Vir&Vis&Vit&Viu&Viv&Viw&Vix&Viy&Vi!l&Vi!x&Vi#T&Vi#V&Vi#p&Vi#v&Vi(v&Vi(x&Vi)j&Via&Vid&Vil&Vi{&Vi}&Vi!o&Vi!r&Vi!s&Vi!t&Vi!u&Vi!v&Vi!{&Vi#a&Vi#b&Vi#i&Vi#t&Vi${&Vi%c&Vi%e&Vi%k&Vi%l&Vi%o&Vi%v&Vi&m&Vi&r&Vi&s&Vi(r&Vi)P&Vi)W&Vi!O&Vi!h&ViQ&Vi!d&Vi~O)W9jO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O!O$bq!h#{i)W#{i~P#3zO!O9lO~P!(zO!O9lO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O9lO~O]&cO!V&bO(v9oO~O!O9pO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O9pO~O]&cO!V2uO!h%Oq)W%Oq!O%Oq~O!W9tO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W9tO~P!(zO)W6fO~P!(zO)W9uO~O)W9vO~O(x.PO)W9vO~O!h3pO!T)_q~O)X9xO!T'wi!h'wi~O!T$WO!h7kO(v4OO)W9yO)j9{O~O)W9yO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W9yO)X#|O~P#3zO)W9yO)j:OO~P)FwO]&cO!V7jO!T!yi!h!yi#v!yi(v!yi)W!yi)j!yi!O!yi~O!W:SO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W:SO)S:UO~P$%pO!W:SO~P!(zO]&cO!V7jO!T(da!h(da(v(da)W(da)j(da~O!O:WO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO!h#iO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O:WO~O!O:]O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O:]O~O]&cO!V2uO!h%Oy)W%Oy!O%Oy~O)W:^O~O)W:_O~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W:_O)X#|O~P#3zO!T$WO!h7kO(v4OO)W:_O)j:bO~O]&cO!V7jO!T!yq!h!yq#v!yq(v!yq)W!yq)j!yq!O!yq~O!W:dO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!W:dO~P!(zO!O:fO!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)X#|O~P#3zO!O:fO~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W:hO)X#|O~P#3zO)W:hO~O]&cO!V7jO!T!yy!h!yy#v!yy(v!yy)W!yy)j!yy!O!yy~O!Y#qO![#rO!^#uO!_#vO!a#xO!b#yO!c#yO!e#yO!f#zO(u#gO)S#mO)T#oO)U#nO)V#pO)W:lO)X#|O~P#3zO)W:lO~O]ZXlgXpZXpiX!TiX!VZX!XZX!YZX![ZX!^ZX!_ZX!aZX!bZX!cZX!eZX!fZX!gZX!hZX(uZX(v$]X(wZX(xZX)SZX)TZX)UZX)VZX)WZX)XZX)jZX~O]%WXlmXpnXp%WX!TnX!V%WX!X%WX!Y%WX![%WX!^%WX!_%WX!a%WX!b%WX!c%WX!e%WX!f%WX!gmX!h%WX(u%WX(w%WX(x%WX)S%WX)T%WX)U%WX)V%WX)X%WX)jmX!O%WXQ%WX!d%WX~O)W%WX!W%WX(v%WX!U%WX~P+GrO]nX]%WXdnXlmXpnXp%WXrnXsnXtnXunXvnXwnXxnXynX}nX!VnX!V%WX!rnX!snX!tnX!unX!vnX!xnX!{nX%vnX&rnX&snX(rnX)SnX)UnX)VnX!OnX!O%WX!hnX)XnX~O)WnX)jnX~P+JSO]%WXlmXpnXp%WX!V%WX!h%WXQ%WX!d%WX!O%WX~O!T%WX#v%WX)W%WX)j%WX(v%WX~P+LmOQnXQ%WX!TnX!X%WX!Y%WX![%WX!^%WX!_%WX!a%WX!b%WX!c%WX!dnX!d%WX!e%WX!f%WX!gmX!h%WX(u%WX(w%WX(x%WX)S%WX)T%WX)U%WX)V%WX)X%WX)jmX~P+JSO]nX]%WXlmXpnXp%WXrnXsnXtnXunXvnXwnXxnXynX}nX!V%WX!rnX!snX!tnX!unX!vnX!xnX!{nX%vnX&rnX&snX(rnX)SnX)UnX)VnX~O!TnX(vnX)WnX)jnX~P, eOdnX!VnX)W%WX~P, eOlmXpnX)W%WX~Od)oO%Y)pO(y:oO~Od)oO%Y)pO(y:tO~Od)oO%Y)pO(y:pO~Od$RO%Y*TO'[$TO'_$UO(y:oO~Od$RO%Y*TO'[$TO'_$UO(y:qO~Od$RO%Y*TO'[$TO'_$UO(y:sO~O]iXriXsiXtiXuiXviXwiXxiXyiX!OiX!ViX&riX&siX)SiX)UiX)ViXdiX}iX!riX!siX!tiX!uiX!viX!xiX!{iX%viX(riX~P#1jO]ZXlgXpZXpiX!VZX!hZX)WZX)jZX~O!TZX#vZX(vZX~P,'{OlgXpiX)PiX)WZX)jiX~O]ZX]iXdiXlgXpZXpiXriXsiXtiXuiXviXwiXxiXyiX}iX!VZX!ViX!riX!siX!tiX!uiX!viX!xiX!{iX%viX&riX&siX(riX)SiX)UiX)ViX!OZX!OiX!hiX)XiX)jiX~O)WZX~P,)VO]ZX]iXlgXpZXpiXriXsiXtiXuiXviXwiXxiXyiX!TiX!VZX!ViX!XZX!YZX![ZX!^ZX!_ZX!aZX!bZX!cZX!eZX!fZX!gZX!hZX!hiX&riX&siX(uZX(wZX(xZX)SZX)SiX)TZX)UZX)UiX)VZX)ViX)XZX)XiX)jZX~OQZXQiX!dZX!diX~P,+pO]iXdiXriXsiXtiXuiXviXwiXxiXyiX}iX!ViX!riX!siX!tiX!uiX!viX!xiX!{iX%viX&riX&siX(riX)SiX)UiX)ViX~P#1jO]ZX]iXdiXlgXpZXpiXriXsiXtiXuiXviXwiXxiXyiX}iX!VZX!ViX!riX!siX!tiX!uiX!viX!xiX!{iX%viX&riX&siX(riX)SiX)UiX)ViX~O)WiX~P,0rOdiX}iX!OZX!OiX!riX!siX!tiX!uiX!viX!xiX!{iX%viX(riX)jiX~P,+pO]ZX]iXlgXpZXpiXriXsiXtiXuiXviXwiXxiXyiX}iX!TiX!VZX!riX!siX!tiX!uiX!viX!xiX!{iX%viX&riX&siX(riX(viX)SiX)UiX)ViX)WiX)jiX~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O~PBUOd$RO%Y*TO(y:oO~Od$RO%Y*TO(y:pO~Od$RO%Y*TO(y:vO~Od$RO%Y*TO(y:uO~O]%hOd!POl%bOr!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O!V%kO!{!dO!|%RO%v$mO(r$xO)S;aO)U;bO)V;bO~O]%hOd!POl%bO!V%kO!{!dO%v$mO(r$xO)S;aO)U;bO)V;bO~Od$RO%Y$SO(y:pO~Od$RO%Y$SO(y:tO~Ol:yO~Ol:xO~O]cXlgXpiX!TcX~Od)oO%Y*TO(y:oO~Od)oO%Y*TO(y:pO~Od)oO%Y*TO(y:qO~Od)oO%Y*TO(y:rO~Od)oO%Y*TO(y:sO~Od)oO%Y*TO(y:uO~Od)oO%Y*TO(y:vO~Or!^Os!^Ot!^Ou!^Ov!^Ow!^Ox!^Oy!^O~P,9OO](}Xr(}Xs(}Xt(}Xu(}Xv(}Xw(}Xx(}Xy(}X}(}X!r(}X!s(}X!t(}X!u(}X!v(}X!x(}X!{(}X%v(}X&r(}X&s(}X(r(}X)S(}X)U(}X)V(}X)j(}X~Ol:xO!T(}X(v(}X)W(}X~P,<}O]&wXlmXpnX!T&wX~Od4kO%Y*TO(y;tO~Ol;[O)S;xO)U5aO)V5aO~P(ElOd!POl%bO!{!dO%v$mO(r$xO~O]1SO!V1QO)S0zO)U;yO)V;yOQ#nX!d#nX!h#nX!O#nX~P,?yO)S;YO~Ol;hO~Ol;iO~Ol;jO~Ol;lO~Ol;mO~Ol;nO~Ol;lO!T$WOQ(}X!d(}X!h(}X)X(}X!O(}X)j(}X~P$GQOl;jO!T$WO~P$GQOl;hO!g$YO)j$YO~Ol;jO!g$YO)j$YO~Ol;lO!g$YO)j$YO~Ol;iO!O(}X!h(}X)X(}X)j(}X~P$GQOd/^O%Y*TO(y;tO~Ol;uO~O)S<YO~OV'e'h'i'g(o)Y!R(rST%Z!Y!['jd%[!i'R!f]'f*Z'k(w!^!_'l'm'l~",goto:"%5]*ZPPPPPP*[P*_PP.T4iP7j7j:tP:t>OP>i>{?aFXMX!&]!,sP!3m!4b!5VP!5qPPPPPPPP!6[P!7tPP!9V!:oP!:uPPPPPP!:xP!:xPP!:xPPPPPPPPP!;U!>lP!>oPP!?]!@QPPPPP!@UP>l!AgPP>l!Cn!Eo!E}!Gd!ITP!I`P!Io!Io!MP#!`##v#'S#*^!Eo#*hPP!Eo#*o#*u#*h#*h#*xP#*|#+k#+k#+k#+k!ITP#,U#,g#.|P#/bP#0}P#1R#1Z#2O#2Z#4i#4q#4q#1RP#1RP#4x#5OP#5YPP#5u#6d#7U#5uP#7v#8SP#5uP#5uPP#5u#5uP#5uP#5uP#5uP#5uP#5uP#5uP#8V#5Y#8sP#9YP#9o#9o#9o#9o#9|#1RP#:d#?`#?}PPPPPPPP#@uP#ATP#ATP#Aa#Dn#9OPP#@}#EQP#Ee#Ep#Ev#Ev#@}#FlP#1R#1R#1R#1R#1RP!Io#GW#G_#G_#G_#Gc!Ly#Gm!Ly#Gq!E}!E}!E}#Gt#L^!E}>l>l>l$#V!@Q!@Q!@Q!@Q!@Q!@Q!6[!6[!6[$#jP$%V$%e!6[$%kPP!6[$'y$'|#@l$(P:t7j$+V$-Q$.q$0a7jPP7j$2T7jP7j7jP7jP$5Z7jP7jPP7j$5gPPPPPPPPP*[P$8o$8u$;^$=d$=j$>Q$>[$>g$>v$>|$@[$AZ$Ab$Ai$Ao$Aw$BR$BX$Bd$Bj$Bs$B{$CW$C^$Ch$Cn$Cx$DP$D`$Df$DlP$Dr$Dz$ER$Ea$F}$GT$GZ$Gb$GkPPPPPPPP$Gq$GuPPPPP$Nw$'y$Nz%$S%&[P%&i%&lPPPPPPPPPP%&x%'{%(R%(V%)|%+Z%+|%,T%.d%.jPPP%.t%/P%/S%/Y%0a%0d%0n%0x%0|%2Q%2s%2y#@uP%3d%3t%3w%4X%4e%4i%4o%4u$'y$'|$'|%4x%4{P%5V%5YR#cP'`mO[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fU%om%p7QQ&m!`Q(j#]d0P)}/|/}0O0R4}5O5P5S8QR7Q3Tb}Oaewx{!g&S*q&v$i[!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0{1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fS%`f0h#d%jgnp|#O$g$|$}%S%d%h%i%w&s't'u(Q*Y*`*b*t+],l,v-_-p-w.f.m.o0]0y0z1O1S2_2j5a6g;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<YS%qm!YS&u!h#PQ']!tQ'g!yQ'h!zQ(j#`Q(k#]Q(l#^Q*x%kQ,W&lQ,]&nQ-S'^Q-d'fQ-k'qS.r(Z4XQ/f)gQ0e*mQ2Q,[Q2X,cQ3O-eQ4b.|Q4f/TQ5f0}Q6[2TQ6}3PQ8a6ZQ9e7zR;Z1Q$|#hS!]$y%Q%T%Z&j&k'Q'X'Z'a'c(a(e(h(w(x)R)S)T)U)V)W)X)Y)Z)[)])^)_)k)q)x+X+g,O,S,j,u-h-i-|.y/p0`0b0g0i0w1`1y2a2h3R3c3d4c4d4j4m4s4u4y4z5d5p5w6U6e6i6s6z7q7r7t8S8T8c8f8j8r9T9[9k9q9|:T:Y:`:iQ&p!dQ(g#ZQ(s#bQ)j$T[*s%e*W0k2`2g2{Q,^&oQ/O(fQ/S(kQ/Z(tS/i)i/PQ0r+QS4q/j/kR8O4r'a![O[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f'a!VO[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fQ)O#kS+Q%y0sQ/r)sk3}.g3s3w3z3{7c7e7f7h7k9X9Y:RQ)Q#kk3|.g3s3w3z3{7c7e7f7h7k9X9Y:Rl)P#k.g3s3w3z3{7c7e7f7h7k9X9Y:RT+Q%y0s[UOwx!g&S*qW$`[e$e(b#l$p_!f!u!}#R#S#T#U#V#Z$S$T$l%U&U&Y&c&m'_'}(P(U(^(g)j)p+[+a+b+t+y,X,k,z-Q-o-t.W.X._.`.d.q.u1T1X1f1k1m2l3[3]3^3p3t5j5}6P7[8Z![%cg$g%d%i&s*Y*t+],l,v-_0z1O2_;W;X;Y;a;b;o;p;q;r;v;w;y<W<X<YY%snp%w-p.fl(|#k.g3s3w3z3{7c7e7f7h7k9X9Y:RS;e't-wU;f(Q.m.o&|;{af{|!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$f$k$|$}%S%]%h%m&Q&W&b&y&|'O'i'j'u'y(`(i)l)r*`*b*h*i*l*r+W+Y+h+j+k,P,R,n,q-g.P.Q.U.}/Q/[/c/l/n/s/u0]0h0y0{1Q1a1b1l1p1z2c2i2j2u4O4R4W4a5Y5a5e5q6_6c6f6g6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f;`;xQ;|1Sd;}&x'P'b,w-]-^-a2f2z2}W<O&f*v1|3iQ<P#O[<Q!t'^'f,[2T6ZT<]%y0s[VOwx!g&S*qW$a[e$e(bQ$p.u!j$q_!f!u!}#V#Z$S$T$l%U&U&Y&c&m'_(g)j)p+[+a+t,X,k,z-Q-o.d1T1X1f1k1m2l3t5j8Z&^$zaf{!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$f$k%]%m&Q&W&b&y&|'O'i'j'y(`(i)l)r*h*i*l*r+W+Y+h+j+k,P,R,n,q-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z2c2i2u4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f![%cg$g%d%i&s*Y*t+],l,v-_0z1O2_;W;X;Y;a;b;o;p;q;r;v;w;y<W<X<YY%snp%w-p.fQ'r#O|'|#R#S#T#U'}(P(U(^+b+y.W.X._.`.q3[3]3^3p5}6P7[l(|#k.g3s3w3z3{7c7e7f7h7k9X9Y:RS-n't-wQ3W-tU;s(Q.m.on;{|$|$}%S%h'u*`*b0]0y2j5a6g;`;x[<Q!t'^'f,[2T6ZW<R&f*v1|3id<S&x'P'b,w-]-^-a2f2z2}Q<Z1ST<]%y0s!Q!UO[ewx!g$e&S&f&x'P'b(b*q*v,w-]-^-a1|2f2z2}3i!v$t_!f!u!}#O#V#Z$S$T$l%U&U&Y&c&m'_'t(Q(g)j)p+[+t,X,k,z-Q-o-w.d.m.o1S1T1X1f1k1m2l3t5j8Z&^%Paf{!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$f$k%]%m&Q&W&b&y&|'O'i'j'y(`(i)l)r*h*i*l*r+W+Y+h+j+k,P,R,n,q-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z2c2i2u4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f$Q%lgnp|#k$g$|$}%S%d%h%i%w%y&s'^'f'u*Y*`*b*t+],[,l,v-_-p.f.g0]0s0y0z1O2T2_2j3s3w3z3{5a6Z6g7c7e7f7h7k9X9Y:R;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<YQ'[!tz(O#R#S#T#U'}(P(U(^+y.W.X._.`.q3[3]3^3p5}6P7[f-Z'`-T-V-Y2p2q2s2v6q6r8pQ1W+aQ1Z+bQ2k,yQ3X-tQ4[.uQ5l1YR8V5m!Q!UO[ewx!g$e&S&f&x'P'b(b*q*v,w-]-^-a1|2f2z2}3i!x$t_!f!u!}#O#V#Z$S$T$l%U&U&Y&c&m'_'t(Q(g)j)p+[+a+t,X,k,z-Q-o-w.d.m.o1S1T1X1f1k1m2l3t5j8Z&^%Paf{!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$f$k%]%m&Q&W&b&y&|'O'i'j'y(`(i)l)r*h*i*l*r+W+Y+h+j+k,P,R,n,q-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z2c2i2u4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f$S%lgnp|!t#k$g$|$}%S%d%h%i%w%y&s'^'f'u*Y*`*b*t+],[,l,v-_-p.f.g0]0s0y0z1O2T2_2j3s3w3z3{5a6Z6g7c7e7f7h7k9X9Y:R;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<Y|(O#R#S#T#U'}(P(U(^+b+y.W.X._.`.q3[3]3^3p5}6P7[Q3X-tR4[.u[WOwx!g&S*qW$b[e$e(b#l$p_!f!u!}#R#S#T#U#V#Z$S$T$l%U&U&Y&c&m'_'}(P(U(^(g)j)p+[+a+b+t+y,X,k,z-Q-o-t.W.X._.`.d.q.u1T1X1f1k1m2l3[3]3^3p3t5j5}6P7[8Z![%cg$g%d%i&s*Y*t+],l,v-_0z1O2_;W;X;Y;a;b;o;p;q;r;v;w;y<W<X<YY%snp%w-p.fl(|#k.g3s3w3z3{7c7e7f7h7k9X9Y:RS;e't-wU;f(Q.m.on;{|$|$}%S%h'u*`*b0]0y2j5a6g;`;xQ;|1SQ<P#O[<Q!t'^'f,[2T6Z&^<Taf{!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$f$k%]%m&Q&W&b&y&|'O'i'j'y(`(i)l)r*h*i*l*r+W+Y+h+j+k,P,R,n,q-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z2c2i2u4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fd<U&x'P'b,w-]-^-a2f2z2}W<V&f*v1|3iT<]%y0sp$PT$_$o%b%r({:z:{:|;[;];^;_;c;d<[o)m$V*U*[/_:w:x:y;h;i;j;k;l;m;n;up$QT$_$o%b%r({:z:{:|;[;];^;_;c;d<[o)n$V*U*[/_:w:x:y;h;i;j;k;l;m;n;u^&e}!O$i$j%`%j;Zd&i!U$t%P%l'[(O1W1Z3X4[V/a)O)P3}S%Ye$eQ,T&fQ.{(bQ2m-QQ5y1mQ6V1|Q6m2lR9h8Z#}!TO[_ewx!f!g!u!}#O#V#Z$S$T$e$l%U&S&U&Y&c&f&m&x'P'_'b't(Q(b(g)j)p*q*v+[+a+t,X,k,w,z-Q-]-^-a-o-t-w.d.m.o1S1T1X1f1k1m1|2f2l2z2}3i3t5j8Z#[^O[_`wx!f!g!}#O$S$d$l$s$u&S&U&Y&c&m&r&x'P'b't(Q)p*]*q*v+[,X,k,w,z-]-^-a-o-t-w.d.m.o1S1T1f2f2z2}3i3t_(U#R#S#T+b3[3]3^#}ZO[wx!g!k#R#S#T%m&S&U&Y&c&m&w&x&y&|'O'P'['b't'x'}(P(Q(U*q*v+[+b,X,h,k,q-P-]-^-a-o-t-w-z._.d.m.q1S1T1f2c2k2z2}3[3]3^3i6c6j8g9l9p:W:]:fQ$]YR0T*OR*Q$]e0P)}/|/}0O0R4}5O5P5S8Q'`!YO[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fe0P)}/|/}0O0R4}5O5P5S8QR5T0T^(T#R#S#T+b3[3]3^Y.]'}(R(U(V7TU3k.Z.^.qS7X3l4VR9c7s^(S#R#S#T+b3[3]3^[.['}(R(T(U(V7TW3j.Z.].^.qU7W3k3l4VS8z7X7sR:V9cT.k(Q.md]Owx!g&S't(Q*q-w.m!v^[_`!f!}#O$S$d$l$s$u&U&Y&c&m&r&x'P'b)p*]*v+[,X,k,w,z-]-^-a-o-t.d.o1S1T1f2f2z2}3i3tQ%tnT1u+}1v!jbOaenpwx{|!g#O$|$}%S%h%w&S't'u(Q*`*b*q-p-w.f.m.o0]0y1S2j5a6g;`;xf-W'`-T-V-Y2p2q2s2v6q6r8pj3x.g3s3w3z3{7c7e7f7h7k9X9Y:Rr;zg$g%d%i&s*Y*t,l,v-_2_;W;X;Y;o;q;vi<^+]0z1O;a;b;p;r;w;y<W<X<Y!O&^y%X&V&Y&Z'k)h*d*f+]+e+x/m0^0y0z1O1S1j5a5v;x;yz&az%O%W%e&d's*W*_,b-x0Z0[0k0|2`2g2{5V5b6l8iS'{#Q.Xn+l&X*g+f+m+p-j/h0_1R1^4t5W5`5u8XQ2W,a^2t-X2r2x6p6w8o9se7i3y7_7g7o7p9U9W9`:Q:cS+^&U1TY+n&Y&c*v1S3iR5s1f#w!POaegnpwx{|!g#O$g$|$}%S%d%h%i%w&S&s't'u(Q*Y*`*b*q*t+],l,v-_-p-w.f.m.o0]0y0z1O1S2_2j5a6g;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<Y`oOwx!g&S't*q-w#U!Paeg{|#O$g$|$}%S%d%h%i&s'u*Y*`*b*t+],l,v-_0]0y0z1O1S2_2j5a6g;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<YU%vnp-pQ*}%wS.e(Q.mT3v.f.oW+r&^+l+s1cV+z&a+{7iQ+x&`U+z&a+{7iQ-w'tT.S'y.U'`![O[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fX1r+y.X5}6P'W!VO[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/[/c/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fW1r+y.X5}6PR2e,s!WjO[wx!g!k%m&S&y&|'O'b*q,q-]-^-a2c2z6c6j8g9l9p:W:]:fY%Ve$e(b1p3iQ'S!nS(y#i5YQ,m&xQ,x'PS.O'y.UQ2b,nQ6k2iQ6|2}Q8h6fR9m8e'W![O[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/[/c/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fX1r+y.X5}6P'ayO[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k+y,P,R,n,q,w-]-^-a-g.P.Q.U.X.}/[/c/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W5Y5e5q5}6P6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fQ&`yS't#O-uR1[+cS+^&U1TR5n1[Q1P+]R5g1OR1P+]T+^&U1Tz&[%X&V&Y&Z'k)h*d*f+]+e/m0^0y0z1O1S1j5a5v;x;yQ&]yR1n+x!P&[y%X&V&Y&Z'k)h*d*f+]+e+x/m0^0y0z1O1S1j5a5v;x;yQ+u&^S+|&a7iS1d+l+sQ1t+{R5r1c!WkO[wx!g!k%m&S&y&|'O'b*q,q-]-^-a2c2z6c6j8g9l9p:W:]:fS%zo.eS&Oq-rQ&_yQ&q!eQ'e!yQ*p%eU*{%v%{3vS+P%x%}Q+q&]Q,Y&mS,Z&n'gQ,r&{S0X*W,bS0o*|*}Q0q+OQ1o+xS2S,]-fQ5U0ZQ5Z0pQ5{1nQ6Y2RQ6]2WQ7n3yQ9S7_R:P9U[uOwx!g&S*qQ,Y&mQ-v'tQ3Y-tR3_-wxlOwx!g!k%m&S&y'O*q,q2c6c6j8g9l9p:W:]:fU$h[&|-^S%zo.eS&Oq-rQ*p%eU*{%v%{3vS+P%x%}S0X*W,bS0o*|*}Q0q+OQ5U0ZQ5Z0pQ7n3yQ9S7_R:P9UT,_&q,`]uOwx!g&S*q[uOwx!g&S*qQ,Y&mQ,n&xQ,w'PW-`'b-]-a2zQ-v'tQ3Y-tQ3_-wR6{2}[%fg$g,l,v-_2_R0l*t^$XV!U$a$z%P<R<SQ'S!nS)`#}*vS)v$W*qQ)y$YY*s%e*W0k2g2{Q/O(fS/i)i/PS0a*h4aS0j*r6_Q0r+QQ4Q.gQ4n/cS4q/j/kS4v/n5YQ4{/uQ6`2`U7a3s3y4RQ8O4rQ8k6hY9Q7_7b7c7l7mQ9r8mW9z9O9R9U9VQ:Z9oU:a9{9}:OR:j:bS)v$W*qT4v/n5YZ)t$W)u*q/n5YQ&w!hR'x#PS,g&v'vQ2[,eR6^2ZxlOwx!g!k%m&S&y'O*q,q2c6c6j8g9l9p:W:]:fV$h[&|-^!XkO[wx!g!k%m&S&y&|'O'b*q,q-]-^-a2c2z6c6j8g9l9p:W:]:f!WhO[wx!g!k%m&S&y&|'O'b*q,q-]-^-a2c2z6c6j8g9l9p:W:]:fR'W!q!WkO[wx!g!k%m&S&y&|'O'b*q,q-]-^-a2c2z6c6j8g9l9p:W:]:fR,n&xQ&y!iQ&{!jQ'O!lR,q&zR,o&xxlOwx!g!k%m&S&y'O*q,q2c6c6j8g9l9p:W:]:fX-`'b-]-a2z[uOwx!g&S*qQ,z'PQ-v'tS.k(Q.mR3_-w[uOwx!g&S*qQ,z'PW-`'b-]-a2zT.k(Q.mg-Z'`-T-V-Y2p2q2s2v6q6r8pylOwx!g!k%m&S&y'O*q,q2c6c6j8g9l9p:W:]:fb!OOaewx{!g&S*q&|$j[f!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f#d%jgnp|#O$g$|$}%S%d%h%i%w&s't'u(Q*Y*`*b*t+],l,v-_-p-w.f.m.o0]0y0z1O1S2_2j5a6g;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<YQ']!tQ-S'^Q-d'fQ2Q,[Q6[2TR8a6Zj$RT$_%b%r:z:{:|;[;];^;_;c;di)o$V*U:w:x:y;h;i;j;k;l;m;nj$RT$_%b%r:z:{:|;[;];^;_;c;dh)o$V*U:w:x:y;h;i;j;k;l;m;nS/^({<[V4k/_/`;u[uOwx!g&S*qQ-v'tR3_-w[uOwx!g&S*qT.k(Q.m'`!YO[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fR7R3T[uOwx!g&S*qQ-v'tS.k(Q.mR3_-w[pOwx!g&S*qQ%wnS-p't-wT.f(Q.mS%{o.eS*|%v3vR0p*}Q+R%yR5]0sS%zo.eS&Oq-rU*{%v%{3vS+P%x%}S0o*|*}Q0q+OQ5Z0pQ7n3yQ9S7_R:P9U`qOwx!g&S(Q*q.mS%xn-pU%}p.f.oQ+O%wT-r't-wS'z#Q.XR.Y'{T.R'y.US.S'y.UQ8x7UR9w8yT5}1q8_R6P1q#d!Pgnp|#O$g$|$}%S%d%h%i%w&s't'u(Q*Y*`*b*t+],l,v-_-p-w.f.m.o0]0y0z1O1S2_2j5a6g;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<Yb!QOaewx{!g&S*q&}![[f!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f#d!Pgnp|#O$g$|$}%S%d%h%i%w&s't'u(Q*Y*`*b*t+],l,v-_-p-w.f.m.o0]0y0z1O1S2_2j5a6g;W;X;Y;`;a;b;o;p;q;r;v;w;x;y<W<X<Yb!QOaewx{!g&S*q&|![[f!W!X!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#{#}$U$W$Y$e$f$k%]%m&Q&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W4a5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fk3|.g3s3w3z3{7c7e7f7h7k9X9Y:RQ4Q.gS7a3s3yU9Q7_7c7lS9z9O9UR:a9}#|!TO[_ewx!f!g!u!}#O#V#Z$S$T$e$l%U&S&U&Y&c&f&m&x'P'_'b't(Q(b(g)j)p*q*v+[+a+t,X,k,w,z-Q-]-^-a-o-t-w.d.m.o1S1T1X1f1k1m1|2f2l2z2}3i3t5j8ZR4].uQ(]#US.v([(^S4^.w.xR7w4_Q.s(ZR7u4X#|!TO[_ewx!f!g!u!}#O#V#Z$S$T$e$l%U&S&U&Y&c&f&m&x'P'_'b't(Q(b(g)j)p*q*v+[+a+t,X,k,w,z-Q-]-^-a-o-t-w.d.m.o1S1T1X1f1k1m1|2f2l2z2}3i3t5j8Zp$w`$d$s%X&r'`(_(f)i*d-T/k1j5k5v8Uq(}#k%y.g0s3s3w3z3{7c7e7f7h7k9X9Y:RR,U&fR6W1|'X!VO[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/[/c/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:f$q#rS%T%Z'Q'X'Z'a'c(a(e(h(w(x)R)S)U)V)W)X)Y)Z)[)])^)_)k)q)x+X+g,O,S,j,u-h-i-|.y/p0`0b0g0i0w1`1y2a2h3R3c3d4c4d4j4m4s4u4y4z5d5p5w6U6e6i6s6z7q7r7t8S8T8c8f8j8r9T9[9k9q9|:T:Y:`:i$]#sS%T%Z'Q'X'Z'a'c(h(w(x)R)V)^)_)k)q)x+X+g,O,S,j,u-h-i-|.y/p0`0b0g0i0w1`1y2a2h3R3c3d4c4d4j4m4s4u4y4z5d5p5w6U6e6i6s6z7q7r7t8S8T8c8f8j8r9T9[9k9q9|:T:Y:`:i$Z#tS%T%Z'Q'X'Z'a'c(h(w(x)R)^)_)k)q)x+X+g,O,S,j,u-h-i-|.y/p0`0b0g0i0w1`1y2a2h3R3c3d4c4d4j4m4s4u4y4z5d5p5w6U6e6i6s6z7q7r7t8S8T8c8f8j8r9T9[9k9q9|:T:Y:`:i$c#wS%T%Z'Q'X'Z'a'c(h(w(x)R)U)V)W)X)^)_)k)q)x+X+g,O,S,j,u-h-i-|.y/p0`0b0g0i0w1`1y2a2h3R3c3d4c4d4j4m4s4u4y4z5d5p5w6U6e6i6s6z7q7r7t8S8T8c8f8j8r9T9[9k9q9|:T:Y:`:i'X![O[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/[/c/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fQ/P(fQ/j)iQ4r/kR9d7y']![O[aefwx{!W!X!g!k!n!r!s!v!x#X#Y#[#g#i#l#q#r#s#t#u#v#w#x#y#z#}$U$W$Y$e$f$k%]%m&Q&S&W&b&f&x&y&|'O'P'b'i'j'y(`(b(i)l)r*h*i*l*q*r*v+W+Y+h+j+k,P,R,n,q,w-]-^-a-g.P.Q.U.}/Q/[/c/l/n/s/u0h0{1Q1a1b1l1p1z1|2c2f2i2u2z2}3i4O4R4W5Y5e5q6_6c6f6h6j6t6v6{7b7j7m8e8g8m8s8t9R9V9]9_9l9o9p9{:O:U:W:]:b:fQ#eQR(u#eU$|a;`;xb%Ue$e&f(b-Q1m1|2l8ZQ'_!u!Q*^$|%U'_*`*f+h,P0]0^1b2p6q6t7e8p9X9]:R;W;o;p;v;w<WS*`$}%SQ*f%XS+h&W1QQ,P&bQ0]*bQ0^*dQ1b+kQ2p-VS6q2q2sQ6t2uQ7e3wQ8p6rS9X7f7hQ9]7jQ:R9YQ;W%dS;o;X;YS;p<X<YQ;v;qQ;w;rT<W0z;a[[Owx!g&S*ql$c[&|'}+[,X,h,k-P-^-o-z._.d.ql&|!k%m&y'O,q2c6c6j8g9l9p:W:]:f^'}#R#S#T+b3[3]3^`+[&U&Y&c*v1S1T1f3iS,X&m-tQ,h&wU,k&x'P2}S-P'[2kW-^'b-]-a2zS-o't-wQ-z'xQ._(PS.d(Q.mR.q(UQ)|$[R/x)|Q0R)}Q4}/|Q5O/}Q5P0OY5Q0R4}5O5P8QR8Q5SQ*P$]S0U*P0VR0V*QS.`(P._S3n.`7[R7[3pQ3q.aS7Y3o3rU7^3q7Y8{R8{7ZQ.m(QR4S.m!|_O[wx!f!g!}#O$S$l&S&U&Y&c&m&x'P'b't(Q)p*q*v+[,X,k,w,z-]-^-a-o-t-w.d.m.o1S1T1f2f2z2}3i3tU$r_$u*]U$u`$d&rR*]$sU$}a;`;xd*a$}*b2q6r7f9Y;X;q;r<XQ*b%SQ2q-VQ6r2sQ7f3wQ9Y7hQ;X%dQ;q;YQ;r<YT<X0z;aS+{&a7iR1s+{S*j%Z/pR0c*jQ1U+_R5i1UU+e&V0z;xR1]+eQ+s&^Q1c+lT1i+s1cQ8[5yR9i8[QwOS&Rw&ST&Sx*qQ,`&qR2V,`W)u$W*q/n5YR/t)uU/o)q)v0gR4w/o[*u%e%f*W2`2g2{R0m*uQ,d&uR2Y,dQ-a'bQ2z-]T2|-a2zQ2w-XR6x2wQ-f'gQ2R,]T3Q-f2RS%pm7QR*z%pdnOwx!g&S't(Q*q-w.mR%unQ0t+RR5^0tQ.U'yR3f.UQ1v+}R6Q1vU*n%`*x;ZR0f*nS1g+n0nR5t1gQ7l3yQ9O7_U9a7l9O9}R9}9U$O!SO[_ewx!f!g!u!}#O#V#Z$S$T$e$l%U&S&U&Y&c&f&m&x'P'_'b't(Q(b(g)j)p*q*v+[+a+t,X,k,w,z-Q-]-^-a-o-t-w.d.m.o.u1S1T1X1f1k1m1|2f2l2z2}3i3t5j8ZR&g!SQ4Y.sR7v4YQ1},UR6X1}S/d)_)`R4o/dW(o#a(j(k/SR/W(oQ7{4fR9f7{T)a#}*v!USO[wx!g!k%m&S&y&|'O'b,q-]-^-a2c2z6c6j8g9l9p:W:]:fj$ya{$k%]+j,R1a1z5q6v8s9_:UY%Te$e(b1p3iY%Zf$f(i)l*lQ&j!WQ&k!XQ'Q!nQ'X!rQ'Z!sQ'a!vQ'c!xQ(a#XQ(e#YS(h#[+YQ(w#gQ(x#iQ)R#lQ)S#qQ)T#rQ)U#sQ)V#tQ)W#uQ)X#vQ)Y#wQ)Z#xQ)[#yQ)]#zQ)^#{S)_#}*vQ)k$UQ)q$WQ)x$YQ+X&QS+g&W1QQ,O&bQ,S&fQ,j&xQ,u'PQ-h'iQ-i'jS-|'y.UQ.y(`S/p)r0hS0`*h4aQ0b*iQ0g*qQ0i*rQ0w+WS1`+h+kQ1y,PQ2a,nS2h,w6{Q3R-gQ3c.PQ3d.QQ4c.}Q4d/QQ4j/[Q4m/cQ4s/lQ4u/nQ4y/sQ4z/uQ5d0{Q5p1bQ5w1lQ6U1|S6e2f8tQ6i2iQ6s2uQ6z2}Q7q4OQ7r4RQ7t4WQ8S5YQ8T5eQ8c6_Q8f6fQ8j6hQ8r6tS9T7b7mQ9[7jQ9k8eQ9q8mS9|9R9VQ:T9]Q:Y9oS:`9{:OR:i:bR,V&fd]Owx!g&S't(Q*q-w.m!v^[_`!f!}#O$S$d$l$s$u&U&Y&c&m&r&x'P'b)p*]*v+[,X,k,w,z-]-^-a-o-t.d.o1S1T1f2f2z2}3i3t#r${ae!u$e$|$}%S%U%X%d&W&b&f'_(b*`*b*d*f+h+k,P-Q-V0]0^1Q1b1m1|2l2p2q2s2u3w6q6r6t7e7f7h7j8Z8p9X9Y9]:R;W;X;Y;`;a;o;p;q;r;v;w<W<X<YQ%tnS+d&V+eW+r&^+l+s1cU+z&a+{7iQ1k+tT5c0z;x``Owx!g&S't*q-wS$d[-oQ$s_b%Xe$e&f(b-Q1m1|2l8Z!h&r!f!}#O$S$l&U&Y&c&m&x'P'b(Q)p*v+[,X,k,w,z-]-^-a-t.d.m.o1S1T1f2f2z2}3i3tQ'`!uS(_#V+aQ(f#ZS)i$T(gQ*d%UQ-T'_Q/k)jQ1j+tQ5k1XQ5v1kR8U5jS(W#R3]S(X#S3^V(Y#T+b3[R$^Ye0Q)}/|/}0O0R4}5O5P5S8QW(R#R#S#T+bQ([#US.Z'}(US.a(P._Q.x(^W1r+y.X5}6PQ3Z-tQ3h.WQ3o.`Q4V.qU7T3[3]3^Q7]3pR8|7[Q.b(PR3m._T.l(Q.mdgOwx!g&S&m't*q-t-wU$g[,X-oQ&s!fQ'k!}Q'u#OQ)h$SQ*Y$l`+]&U&Y&c*v1S1T1f3iQ,l&xQ,v'PY-_'b-]-a2z2}S.g(Q.mQ/m)pQ0y+[S2_,k-^S2j,w,zS3s.d.oQ6g2fR7c3td]Owx!g&S't(Q*q-w.m!v^[_`!f!}#O$S$d$l$s$u&U&Y&c&m&r&x'P'b)p*]*v+[,X,k,w,z-]-^-a-o-t.d.o1S1T1f2f2z2}3i3tR%tnQ3y.gQ7_3sQ7g3wQ7o3zQ7p3{Q9U7cU9W7e7f7hQ9`7kS:Q9X9YR:c:RZ+o&Y&c*v1S3ipzOnpwx!g%w&S't(Q*q-p-w.f.m.o[%Oa%d0z;`;a;xU%We%h1SQ%eg^&d{|%i1O5a;b;yQ's#OQ*W$gb*_$|$}%S;W;X;Y<W<X<YQ,b&sQ-x'uQ0Z*Y[0[*`*b;o;p;q;rQ0k*tQ0|+]Q2`,lQ2g,vS2{-_2_U5V0];v;wQ5b0yQ6l2jR8i6gQ+}&aR9Z7iS1q+y.XQ8^5}R8_6P[%^f$f(i)l)r0hR0d*lR+`&UQ+_&UR5h1TS&Xy+xQ*g%XU+f&V0z;xS+m&Y1SW+p&Z1O5a;yQ-j'kQ/h)hS0_*d*fQ1R+]Q1^+eQ4t/mQ5W0^Q5`0yQ5u1jR8X5vR5z1mYvOwx&S*qR&t!gW%gg,l,v-_T*X$g2_T)w$W*q[uOwx!g&S*qQ&}!kQ*y%mQ,p&yQ,t'OQ2d,qQ6b2cQ8d6cQ8l6jQ9n8gQ:X9lQ:[9pQ:e:WQ:g:]R:k:fxlOwx!g!k%m&S&y'O*q,q2c6c6j8g9l9p:W:]:fU$h[&|-^X-`'b-]-a2zQ-['`R2o-TS-X'`-TQ2r-VQ2x-YU6p2p2q2sQ6w2vS8o6q6rR9s8p[rOwx!g&S*qS-q't-wT.h(Q.mR+S%y[sOwx!g&S*qS-s't-wT.i(Q.m[tOwx!g&S*qT.j(Q.mT.T'y.UX%af%k0h1QQ.w([R4_.xR.t(ZR(d#XQ(r#aS/R(j(kR4e/SR/V(lR4g/T",nodeNames:"⚠ RawString > 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 constinit consteval StructSpecifier struct MsDeclspecModifier __declspec ) Attribute AttributeName Identifier AttributeArgs { } [ ] UpdateOp ArithOp ArithOp ArithOp LogicOp BitOp BitOp BitOp CompareOp CompareOp CompareOp > CompareOp BitOp UpdateOp , Number CharLiteral AttributeArgs VirtualSpecifier BaseClassClause Access virtual FieldDeclarationList FieldDeclaration extern static register inline thread_local AttributeSpecifier __attribute__ PointerDeclarator MsBasedModifier __based MsPointerModifier FunctionDeclarator ParameterList ParameterDeclaration PointerDeclarator FunctionDeclarator Noexcept noexcept RequiresClause requires True False ParenthesizedExpression CommaExpression LambdaExpression LambdaCaptureSpecifier TemplateParameterList OptionalParameterDeclaration TypeParameterDeclaration typename class VariadicParameterDeclaration VariadicDeclarator ReferenceDeclarator OptionalTypeParameterDeclaration VariadicTypeParameterDeclaration TemplateTemplateParameterDeclaration template AbstractFunctionDeclarator AbstractPointerDeclarator AbstractArrayDeclarator AbstractParenthesizedDeclarator AbstractReferenceDeclarator ThrowSpecifier throw TrailingReturnType CompoundStatement FunctionDefinition MsCallModifier TryStatement try CatchClause catch LinkageSpecification Declaration InitDeclarator InitializerList InitializerPair SubscriptDesignator FieldDesignator ExportDeclaration export ImportDeclaration import ModuleName PartitionName HeaderName CaseStatement case default LabeledStatement StatementIdentifier ExpressionStatement IfStatement if ConditionClause Declaration else SwitchStatement switch DoStatement do while WhileStatement ForStatement for ReturnStatement return BreakStatement break ContinueStatement continue GotoStatement goto CoReturnStatement co_return CoYieldStatement co_yield AttributeStatement ForRangeLoop AliasDeclaration using TypeDefinition typedef PointerDeclarator FunctionDeclarator ArrayDeclarator ParenthesizedDeclarator ThrowStatement NamespaceDefinition namespace ScopedIdentifier Identifier OperatorName operator ArithOp BitOp CompareOp LogicOp new delete co_await ConceptDefinition concept UsingDeclaration enum StaticAssertDeclaration static_assert ConcatenatedString TemplateDeclaration FriendDeclaration friend union FunctionDefinition ExplicitFunctionSpecifier explicit FieldInitializerList FieldInitializer DefaultMethodClause DeleteMethodClause FunctionDefinition OperatorCast operator TemplateInstantiation FunctionDefinition FunctionDefinition Declaration ModuleDeclaration module RequiresExpression RequirementList SimpleRequirement TypeRequirement CompoundRequirement ReturnTypeRequirement ConstraintConjuction LogicOp ConstraintDisjunction LogicOp ArrayDeclarator ParenthesizedDeclarator ReferenceDeclarator TemplateFunction OperatorName StructuredBindingDeclarator ArrayDeclarator ParenthesizedDeclarator ReferenceDeclarator BitfieldClause FunctionDefinition FunctionDefinition Declaration FunctionDefinition Declaration AccessSpecifier UnionSpecifier ClassSpecifier EnumSpecifier SizedTypeSpecifier TypeSize EnumeratorList Enumerator DependentType Decltype decltype auto PlaceholderTypeSpecifier ParameterPackExpansion ParameterPackExpansion FieldIdentifier PointerExpression SubscriptExpression BinaryExpression ArithOp LogicOp LogicOp BitOp UnaryExpression LogicOp BitOp UpdateExpression CastExpression SizeofExpression sizeof CoAwaitExpression CompoundLiteralExpression NULL NewExpression new NewDeclarator DeleteExpression delete ParameterPackExpansion nullptr this UserDefinedLiteral ParamPack #define PreprocArg #if #ifdef #ifndef #else #endif #elif PreprocDirectiveName Macro Program",maxTerm:425,nodeProps:[["group",-35,1,8,11,14,15,16,18,71,72,100,101,102,104,191,208,229,242,243,270,271,272,277,280,281,282,284,285,286,287,290,292,293,294,295,296,"Expression",-13,17,24,25,26,42,255,256,257,258,262,263,265,266,"Type",-19,126,129,147,150,152,153,158,160,163,164,166,168,170,172,174,176,178,179,188,"Statement"],["isolate",-4,4,5,8,10,""]],propSources:[cppHighlighting],skippedNodes:[0,3,4,5,6,7,10,297,298,299,300,301,302,303,304,305,306,347,348],repeatNodeCount:41,tokenData:"&*r7ZR!UOX$eXY({YZ.gZ]$e]^+P^p$epq({qr.}rs0}st2ktu$euv!7dvw!9bwx!;exy!<Yyz!=Tz{!>O{|!?R|}!AV}!O!BQ!O!P!DX!P!Q#+y!Q!R#Az!R![$(x![!]$Ag!]!^$Cc!^!_$D^!_!`%1W!`!a%2X!a!b%5_!b!c$e!c!n%6Y!n!o%7q!o!w%6Y!w!x%7q!x!}%6Y!}#O%:n#O#P%<g#P#Q%Kz#Q#R%Ms#R#S%6Y#S#T$e#T#i%6Y#i#j%Nv#j#o%6Y#o#p&!e#p#q&#`#q#r&%f#r#s&&a#s;'S$e;'S;=`(u<%lO$e&t$nY)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e&r%eW)ZW'f&jOY%^Zw%^wx%}x#O%^#O#P&f#P;'S%^;'S;=`'x<%lO%^&j&SU'f&jOY%}Z#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}&j&kX'f&jOY%}YZ%}Z]%}]^'W^#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}&j']V'f&jOY%}YZ%}Z#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}&j'uP;=`<%l%}&r'{P;=`<%l%^&l(VW(pQ'f&jOY(OZr(Ors%}s#O(O#O#P&f#P;'S(O;'S;=`(o<%lO(O&l(rP;=`<%l(O&t(xP;=`<%l$e7Z)Y`)ZW(pQ(n.o'f&j*Z)`OX$eXY({YZ*[Z]$e]^+P^p$epq({qr$ers%^sw$ewx(Ox#O$e#O#P,^#P;'S$e;'S;=`(u<%lO$e.o*aT(n.oXY*[YZ*[]^*[pq*[#O#P*p.o*sQYZ*[]^*y.o*|PYZ*[4e+[`)ZW(pQ(n.o'f&jOX$eXY+PYZ*[Z]$e]^+P^p$epq+Pqr$ers%^sw$ewx(Ox#O$e#O#P,^#P;'S$e;'S;=`(u<%lO$e4Z,cX'f&jOY%}YZ-OZ]%}]^-{^#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}4Z-V[(n.o'f&jOX%}XY-OYZ*[Z]%}]^-O^p%}pq-Oq#O%}#O#P,^#P;'S%};'S;=`'r<%lO%}4Z.QV'f&jOY%}YZ-OZ#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}7P.nT*W)`(n.oXY*[YZ*[]^*[pq*[#O#P*p3o/[[%^!b'QP)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!_$e!_!`0Q!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o0_Y%]!b!a,g)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e6e1YY)ZW(qQ(o/]'f&jOY%^Zr%^rs1xsw%^wx%}x#O%^#O#P&f#P;'S%^;'S;=`'x<%lO%^(U2RW)x!b)ZW'f&jOY%^Zw%^wx%}x#O%^#O#P&f#P;'S%^;'S;=`'x<%lO%^4e2tf)ZW(pQ'f&jOX$eXY2kZp$epq2kqr$ers%^sw$ewx(Ox!c$e!c!}4Y!}#O$e#O#P&f#P#T$e#T#W4Y#W#X5m#X#Y>u#Y#]4Y#]#^NZ#^#o4Y#o;'S$e;'S;=`(u<%lO$e4e4eb)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e4e5xd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#X4Y#X#Y7W#Y#o4Y#o;'S$e;'S;=`(u<%lO$e4e7cd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#Y4Y#Y#Z8q#Z#o4Y#o;'S$e;'S;=`(u<%lO$e4e8|d)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#]4Y#]#^:[#^#o4Y#o;'S$e;'S;=`(u<%lO$e4e:gd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#b4Y#b#c;u#c#o4Y#o;'S$e;'S;=`(u<%lO$e4e<Qd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#X4Y#X#Y=`#Y#o4Y#o;'S$e;'S;=`(u<%lO$e4e=mb)ZW(pQ'e.o'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e4e?Qf)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#`4Y#`#a@f#a#b4Y#b#cHV#c#o4Y#o;'S$e;'S;=`(u<%lO$e4e@qf)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#]4Y#]#^BV#^#g4Y#g#hEV#h#o4Y#o;'S$e;'S;=`(u<%lO$e4eBbd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#Y4Y#Y#ZCp#Z#o4Y#o;'S$e;'S;=`(u<%lO$e4eC}b)ZW(pQ'f&j'l.o'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e4eEbd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#X4Y#X#YFp#Y#o4Y#o;'S$e;'S;=`(u<%lO$e4eF}b)ZW(pQ'j.o'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e4eHbd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#W4Y#W#XIp#X#o4Y#o;'S$e;'S;=`(u<%lO$e4eI{d)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#]4Y#]#^KZ#^#o4Y#o;'S$e;'S;=`(u<%lO$e4eKfd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#Y4Y#Y#ZLt#Z#o4Y#o;'S$e;'S;=`(u<%lO$e4eMRb)ZW(pQ'f&j'k.o'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e4eNff)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#Y4Y#Y#Z! z#Z#b4Y#b#c!.[#c#o4Y#o;'S$e;'S;=`(u<%lO$e4e!!Xf)ZW(pQ'g.o'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#W4Y#W#X!#m#X#b4Y#b#c!(W#c#o4Y#o;'S$e;'S;=`(u<%lO$e4e!#xd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#X4Y#X#Y!%W#Y#o4Y#o;'S$e;'S;=`(u<%lO$e4e!%cd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#Y4Y#Y#Z!&q#Z#o4Y#o;'S$e;'S;=`(u<%lO$e4e!'Ob)ZW(pQ'h.o'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e4e!(cd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#W4Y#W#X!)q#X#o4Y#o;'S$e;'S;=`(u<%lO$e4e!)|d)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#X4Y#X#Y!+[#Y#o4Y#o;'S$e;'S;=`(u<%lO$e4e!+gd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#Y4Y#Y#Z!,u#Z#o4Y#o;'S$e;'S;=`(u<%lO$e4e!-Sb)ZW(pQ'i.o'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e4e!.gd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#V4Y#V#W!/u#W#o4Y#o;'S$e;'S;=`(u<%lO$e4e!0Qd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#`4Y#`#a!1`#a#o4Y#o;'S$e;'S;=`(u<%lO$e4e!1kd)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#i4Y#i#j!2y#j#o4Y#o;'S$e;'S;=`(u<%lO$e4e!3Ud)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#W4Y#W#X!4d#X#o4Y#o;'S$e;'S;=`(u<%lO$e4e!4od)ZW(pQ'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#X4Y#X#Y!5}#Y#o4Y#o;'S$e;'S;=`(u<%lO$e4e!6[b)ZW(pQV.o'f&j'm.oOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![4Y![!c$e!c!}4Y!}#O$e#O#P&f#P#R$e#R#S4Y#S#T$e#T#o4Y#o;'S$e;'S;=`(u<%lO$e3o!7q[)ZW(pQ%Z!b![,g'f&jOY$eZr$ers%^sw$ewx(Ox!_$e!_!`!8g!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!8rY!g-y)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!9o])V,g)ZW(pQ%[!b'f&jOY$eZr$ers%^sv$evw!:hwx(Ox!_$e!_!`!8g!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!:uY)U,g%^!b)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2X!;pW)[S(pQ)Y,g'f&jOY(OZr(Ors%}s#O(O#O#P&f#P;'S(O;'S;=`(o<%lO(O6i!<eY)ZW(pQ]6_'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e'V!=`Y!Oa)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!>][)S,g)ZW(pQ%Z!b'f&jOY$eZr$ers%^sw$ewx(Ox!_$e!_!`!8g!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!?`^)ZW(pQ%Z!b!Y,g'f&jOY$eZr$ers%^sw$ewx(Ox{$e{|!@[|!_$e!_!`!8g!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!@gY)ZW!X-y(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2a!AbY!h,k)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!B__)ZW(pQ%Z!b!Y,g'f&jOY$eZr$ers%^sw$ewx(Ox}$e}!O!@[!O!_$e!_!`!8g!`!a!C^!a#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o!CiY(x-y)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2a!Dd^)ZW(pQ'f&j(w,gOY$eZr$ers%^sw$ewx(Ox!O$e!O!P!E`!P!Q$e!Q![!GY![#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2a!Ei[)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!O$e!O!P!F_!P#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2a!FjY)X,k)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2]!Gen)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx!Icx!Q$e!Q![!GY![!g$e!g!h#$w!h!i#*Y!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#X$e#X#Y#$w#Y#Z#*Y#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2T!IjY(pQ'f&jOY(OZr(Ors%}s!Q(O!Q![!JY![#O(O#O#P&f#P;'S(O;'S;=`(o<%lO(O2T!Jcn(pQ!i,g'f&jOY(OZr(Ors%}sw(Owx!Icx!Q(O!Q![!JY![!g(O!g!h!La!h!i##`!i!n(O!n!o##`!o!r(O!r!s!La!s!w(O!w!x##`!x#O(O#O#P&f#P#X(O#X#Y!La#Y#Z##`#Z#`(O#`#a##`#a#d(O#d#e!La#e#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2T!Ljl(pQ!i,g'f&jOY(OZr(Ors%}s{(O{|!Nb|}(O}!O!Nb!O!Q(O!Q![# e![!c(O!c!h# e!h!i# e!i!n(O!n!o##`!o!w(O!w!x##`!x#O(O#O#P&f#P#T(O#T#Y# e#Y#Z# e#Z#`(O#`#a##`#a#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2T!Ni^(pQ'f&jOY(OZr(Ors%}s!Q(O!Q![# e![!c(O!c!i# e!i#O(O#O#P&f#P#T(O#T#Z# e#Z;'S(O;'S;=`(o<%lO(O2T# nj(pQ!i,g'f&jOY(OZr(Ors%}sw(Owx!Nbx!Q(O!Q![# e![!c(O!c!h# e!h!i# e!i!n(O!n!o##`!o!w(O!w!x##`!x#O(O#O#P&f#P#T(O#T#Y# e#Y#Z# e#Z#`(O#`#a##`#a#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2T##id(pQ!i,g'f&jOY(OZr(Ors%}s!h(O!h!i##`!i!n(O!n!o##`!o!w(O!w!x##`!x#O(O#O#P&f#P#Y(O#Y#Z##`#Z#`(O#`#a##`#a#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2]#%Sn)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx(Ox{$e{|#'Q|}$e}!O#'Q!O!Q$e!Q![#(]![!c$e!c!h#(]!h!i#(]!i!n$e!n!o#*Y!o!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#Y#(]#Y#Z#(]#Z#`$e#`#a#*Y#a#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2]#'Z`)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![#(]![!c$e!c!i#(]!i#O$e#O#P&f#P#T$e#T#Z#(]#Z;'S$e;'S;=`(u<%lO$e2]#(hj)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx!Nbx!Q$e!Q![#(]![!c$e!c!h#(]!h!i#(]!i!n$e!n!o#*Y!o!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#Y#(]#Y#Z#(]#Z#`$e#`#a#*Y#a#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2]#*ef)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx(Ox!h$e!h!i#*Y!i!n$e!n!o#*Y!o!w$e!w!x#*Y!x#O$e#O#P&f#P#Y$e#Y#Z#*Y#Z#`$e#`#a#*Y#a#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e7Z#,W`)ZW(pQ%Z!b![,g'f&jOY$eZr$ers%^sw$ewx(Oxz$ez{#-Y{!P$e!P!Q#:s!Q!_$e!_!`!8g!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e7Z#-c])ZW(pQ'f&jOY#-YYZ#.[Zr#-Yrs#/csw#-Ywx#5wxz#-Yz{#8j{#O#-Y#O#P#2`#P;'S#-Y;'S;=`#:m<%lO#-Y1e#._TOz#.[z{#.n{;'S#.[;'S;=`#/]<%lO#.[1e#.qVOz#.[z{#.n{!P#.[!P!Q#/W!Q;'S#.[;'S;=`#/]<%lO#.[1e#/]OT1e1e#/`P;=`<%l#.[7X#/jZ)ZW'f&jOY#/cYZ#.[Zw#/cwx#0]xz#/cz{#4O{#O#/c#O#P#2`#P;'S#/c;'S;=`#5q<%lO#/c7P#0bX'f&jOY#0]YZ#.[Zz#0]z{#0}{#O#0]#O#P#2`#P;'S#0];'S;=`#3x<%lO#0]7P#1SZ'f&jOY#0]YZ#.[Zz#0]z{#0}{!P#0]!P!Q#1u!Q#O#0]#O#P#2`#P;'S#0];'S;=`#3x<%lO#0]7P#1|UT1e'f&jOY%}Z#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}7P#2eZ'f&jOY#0]YZ#0]Z]#0]]^#3W^z#0]z{#0}{#O#0]#O#P#2`#P;'S#0];'S;=`#3x<%lO#0]7P#3]X'f&jOY#0]YZ#0]Zz#0]z{#0}{#O#0]#O#P#2`#P;'S#0];'S;=`#3x<%lO#0]7P#3{P;=`<%l#0]7X#4V])ZW'f&jOY#/cYZ#.[Zw#/cwx#0]xz#/cz{#4O{!P#/c!P!Q#5O!Q#O#/c#O#P#2`#P;'S#/c;'S;=`#5q<%lO#/c7X#5XW)ZWT1e'f&jOY%^Zw%^wx%}x#O%^#O#P&f#P;'S%^;'S;=`'x<%lO%^7X#5tP;=`<%l#/c7R#6OZ(pQ'f&jOY#5wYZ#.[Zr#5wrs#0]sz#5wz{#6q{#O#5w#O#P#2`#P;'S#5w;'S;=`#8d<%lO#5w7R#6x](pQ'f&jOY#5wYZ#.[Zr#5wrs#0]sz#5wz{#6q{!P#5w!P!Q#7q!Q#O#5w#O#P#2`#P;'S#5w;'S;=`#8d<%lO#5w7R#7zW(pQT1e'f&jOY(OZr(Ors%}s#O(O#O#P&f#P;'S(O;'S;=`(o<%lO(O7R#8gP;=`<%l#5w7Z#8s_)ZW(pQ'f&jOY#-YYZ#.[Zr#-Yrs#/csw#-Ywx#5wxz#-Yz{#8j{!P#-Y!P!Q#9r!Q#O#-Y#O#P#2`#P;'S#-Y;'S;=`#:m<%lO#-Y7Z#9}Y)ZW(pQT1e'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e7Z#:pP;=`<%l#-Y7Z#;OY)ZW(pQS1e'f&jOY#:sZr#:srs#;nsw#:swx#@{x#O#:s#O#P#<z#P;'S#:s;'S;=`#At<%lO#:s7X#;wW)ZWS1e'f&jOY#;nZw#;nwx#<ax#O#;n#O#P#<z#P;'S#;n;'S;=`#@u<%lO#;n7P#<hUS1e'f&jOY#<aZ#O#<a#O#P#<z#P;'S#<a;'S;=`#>[<%lO#<a7P#=RXS1e'f&jOY#<aYZ%}Z]#<a]^#=n^#O#<a#O#P#>b#P;'S#<a;'S;=`#>[<%lO#<a7P#=uVS1e'f&jOY#<aYZ%}Z#O#<a#O#P#<z#P;'S#<a;'S;=`#>[<%lO#<a7P#>_P;=`<%l#<a7P#>i]S1e'f&jOY#<aYZ%}Z]#<a]^#=n^#O#<a#O#P#>b#P#b#<a#b#c#<a#c#f#<a#f#g#?b#g;'S#<a;'S;=`#>[<%lO#<a7P#?iUS1e'f&jOY#<aZ#O#<a#O#P#?{#P;'S#<a;'S;=`#>[<%lO#<a7P#@SZS1e'f&jOY#<aYZ%}Z]#<a]^#=n^#O#<a#O#P#>b#P#b#<a#b#c#<a#c;'S#<a;'S;=`#>[<%lO#<a7X#@xP;=`<%l#;n7R#AUW(pQS1e'f&jOY#@{Zr#@{rs#<as#O#@{#O#P#<z#P;'S#@{;'S;=`#An<%lO#@{7R#AqP;=`<%l#@{7Z#AwP;=`<%l#:s2]#BVt)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx#Dgx!O$e!O!P$ m!P!Q$e!Q![$(x![!g$e!g!h#$w!h!i#*Y!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#U$e#U#V$+X#V#X$e#X#Y#$w#Y#Z#*Y#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j#l$e#l#m$=`#m;'S$e;'S;=`(u<%lO$e2T#DnY(pQ'f&jOY(OZr(Ors%}s!Q(O!Q![#E^![#O(O#O#P&f#P;'S(O;'S;=`(o<%lO(O2T#Egp(pQ!i,g'f&jOY(OZr(Ors%}sw(Owx#Dgx!O(O!O!P#Gk!P!Q(O!Q![#E^![!g(O!g!h!La!h!i##`!i!n(O!n!o##`!o!r(O!r!s!La!s!w(O!w!x##`!x#O(O#O#P&f#P#X(O#X#Y!La#Y#Z##`#Z#`(O#`#a##`#a#d(O#d#e!La#e#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2T#Gtn(pQ!i,g'f&jOY(OZr(Ors%}s!Q(O!Q![#Ir![!c(O!c!g#Ir!g!h#MS!h!i#Ir!i!n(O!n!o##`!o!r(O!r!s!La!s!w(O!w!x##`!x#O(O#O#P&f#P#T(O#T#X#Ir#X#Y#MS#Y#Z#Ir#Z#`(O#`#a##`#a#d(O#d#e!La#e#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2T#I{p(pQ!i,g'f&jOY(OZr(Ors%}sw(Owx#LPx!Q(O!Q![#Ir![!c(O!c!g#Ir!g!h#MS!h!i#Ir!i!n(O!n!o##`!o!r(O!r!s!La!s!w(O!w!x##`!x#O(O#O#P&f#P#T(O#T#X#Ir#X#Y#MS#Y#Z#Ir#Z#`(O#`#a##`#a#d(O#d#e!La#e#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2T#LW^(pQ'f&jOY(OZr(Ors%}s!Q(O!Q![#Ir![!c(O!c!i#Ir!i#O(O#O#P&f#P#T(O#T#Z#Ir#Z;'S(O;'S;=`(o<%lO(O2T#M]t(pQ!i,g'f&jOY(OZr(Ors%}sw(Owx#LPx{(O{|!Nb|}(O}!O!Nb!O!Q(O!Q![#Ir![!c(O!c!g#Ir!g!h#MS!h!i#Ir!i!n(O!n!o##`!o!r(O!r!s!La!s!w(O!w!x##`!x#O(O#O#P&f#P#T(O#T#X#Ir#X#Y#MS#Y#Z#Ir#Z#`(O#`#a##`#a#d(O#d#e!La#e#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2]$ xp)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![$#|![!c$e!c!g$#|!g!h$&]!h!i$#|!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#X$#|#X#Y$&]#Y#Z$#|#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2]$$Xp)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx#LPx!Q$e!Q![$#|![!c$e!c!g$#|!g!h$&]!h!i$#|!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#X$#|#X#Y$&]#Y#Z$#|#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2]$&ht)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx#LPx{$e{|#'Q|}$e}!O#'Q!O!Q$e!Q![$#|![!c$e!c!g$#|!g!h$&]!h!i$#|!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#X$#|#X#Y$&]#Y#Z$#|#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2]$)Tp)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx#Dgx!O$e!O!P$ m!P!Q$e!Q![$(x![!g$e!g!h#$w!h!i#*Y!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#X$e#X#Y#$w#Y#Z#*Y#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2]$+b_)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!O$e!O!P$,a!P!Q$e!Q!R$-`!R![$(x![#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2]$,j[)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![!GY![#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2]$-kt)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx#Dgx!O$e!O!P$ m!P!Q$e!Q![$(x![!g$e!g!h#$w!h!i#*Y!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#U$e#U#V$/{#V#X$e#X#Y#$w#Y#Z#*Y#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j#l$e#l#m$0z#m;'S$e;'S;=`(u<%lO$e2]$0U[)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![$(x![#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2]$1T`)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![$2V![!c$e!c!i$2V!i#O$e#O#P&f#P#T$e#T#Z$2V#Z;'S$e;'S;=`(u<%lO$e2]$2br)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx$4lx!O$e!O!P$ m!P!Q$e!Q![$2V![!c$e!c!g$2V!g!h$:p!h!i$2V!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#X$2V#X#Y$:p#Y#Z$2V#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2T$4s^(pQ'f&jOY(OZr(Ors%}s!Q(O!Q![$5o![!c(O!c!i$5o!i#O(O#O#P&f#P#T(O#T#Z$5o#Z;'S(O;'S;=`(o<%lO(O2T$5xr(pQ!i,g'f&jOY(OZr(Ors%}sw(Owx$4lx!O(O!O!P#Gk!P!Q(O!Q![$5o![!c(O!c!g$5o!g!h$8S!h!i$5o!i!n(O!n!o##`!o!r(O!r!s!La!s!w(O!w!x##`!x#O(O#O#P&f#P#T(O#T#X$5o#X#Y$8S#Y#Z$5o#Z#`(O#`#a##`#a#d(O#d#e!La#e#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2T$8]u(pQ!i,g'f&jOY(OZr(Ors%}sw(Owx$4lx{(O{|!Nb|}(O}!O!Nb!O!P#Gk!P!Q(O!Q![$5o![!c(O!c!g$5o!g!h$8S!h!i$5o!i!n(O!n!o##`!o!r(O!r!s!La!s!w(O!w!x##`!x#O(O#O#P&f#P#T(O#T#X$5o#X#Y$8S#Y#Z$5o#Z#`(O#`#a##`#a#d(O#d#e!La#e#i(O#i#j##`#j;'S(O;'S;=`(o<%lO(O2]$:{u)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx$4lx{$e{|#'Q|}$e}!O#'Q!O!P$ m!P!Q$e!Q![$2V![!c$e!c!g$2V!g!h$:p!h!i$2V!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#X$2V#X#Y$:p#Y#Z$2V#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j;'S$e;'S;=`(u<%lO$e2]$=ic)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!O$e!O!P$,a!P!Q$e!Q!R$>t!R![$2V![!c$e!c!i$2V!i#O$e#O#P&f#P#T$e#T#Z$2V#Z;'S$e;'S;=`(u<%lO$e2]$?Pv)ZW(pQ!i,g'f&jOY$eZr$ers%^sw$ewx$4lx!O$e!O!P$ m!P!Q$e!Q![$2V![!c$e!c!g$2V!g!h$:p!h!i$2V!i!n$e!n!o#*Y!o!r$e!r!s#$w!s!w$e!w!x#*Y!x#O$e#O#P&f#P#T$e#T#U$2V#U#V$2V#V#X$2V#X#Y$:p#Y#Z$2V#Z#`$e#`#a#*Y#a#d$e#d#e#$w#e#i$e#i#j#*Y#j#l$e#l#m$0z#m;'S$e;'S;=`(u<%lO$e4e$Ar[(v-X)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox![$e![!]$Bh!]#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3s$BsYl-})ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e2]$CnY)W,g)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e7V$Dk_p,g%]!b)ZW(pQ'f&jOY$EjYZ$FlZr$Ejrs$GZsw$Ejwx%)Px!^$Ej!^!_%+w!_!`%.U!`!a%0]!a#O$Ej#O#P$Ib#P;'S$Ej;'S;=`%+q<%lO$Ej*[$Es])ZW(pQ'f&jOY$EjYZ$FlZr$Ejrs$GZsw$Ejwx%)Px!`$Ej!`!a%*t!a#O$Ej#O#P$Ib#P;'S$Ej;'S;=`%+q<%lO$Ejp$FoTO!`$Fl!`!a$GO!a;'S$Fl;'S;=`$GT<%lO$Flp$GTO$Wpp$GWP;=`<%l$Fl*Y$GbZ)ZW'f&jOY$GZYZ$FlZw$GZwx$HTx!`$GZ!`!a%(U!a#O$GZ#O#P$Ib#P;'S$GZ;'S;=`%(y<%lO$GZ*Q$HYX'f&jOY$HTYZ$FlZ!`$HT!`!a$Hu!a#O$HT#O#P$Ib#P;'S$HT;'S;=`$Mx<%lO$HT*Q$IOU$WpY#t'f&jOY%}Z#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}*Q$Ig['f&jOY$HTYZ$HTZ]$HT]^$J]^!`$HT!`!a$NO!a#O$HT#O#P%&n#P;'S$HT;'S;=`%'f;=`<%l%$z<%lO$HT*Q$JbX'f&jOY$HTYZ$J}Z!`$HT!`!a$Hu!a#O$HT#O#P$Ib#P;'S$HT;'S;=`$Mx<%lO$HT'[$KSX'f&jOY$J}YZ$FlZ!`$J}!`!a$Ko!a#O$J}#O#P$LY#P;'S$J};'S;=`$Mr<%lO$J}'[$KvU$Wp'f&jOY%}Z#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}'[$L_Z'f&jOY$J}YZ$J}Z]$J}]^$MQ^!`$J}!`!a$Ko!a#O$J}#O#P$LY#P;'S$J};'S;=`$Mr<%lO$J}'[$MVX'f&jOY$J}YZ$J}Z!`$J}!`!a$Ko!a#O$J}#O#P$LY#P;'S$J};'S;=`$Mr<%lO$J}'[$MuP;=`<%l$J}*Q$M{P;=`<%l$HT*Q$NVW$Wp'f&jOY$NoZ!`$No!`!a% ^!a#O$No#O#P% w#P;'S$No;'S;=`%#^<%lO$No)`$NtW'f&jOY$NoZ!`$No!`!a% ^!a#O$No#O#P% w#P;'S$No;'S;=`%#^<%lO$No)`% eUY#t'f&jOY%}Z#O%}#O#P&f#P;'S%};'S;=`'r<%lO%})`% |Y'f&jOY$NoYZ$NoZ]$No]^%!l^#O$No#O#P%#d#P;'S$No;'S;=`%$[;=`<%l%$z<%lO$No)`%!qX'f&jOY$NoYZ%}Z!`$No!`!a% ^!a#O$No#O#P% w#P;'S$No;'S;=`%#^<%lO$No)`%#aP;=`<%l$No)`%#iZ'f&jOY$NoYZ%}Z]$No]^%!l^!`$No!`!a% ^!a#O$No#O#P% w#P;'S$No;'S;=`%#^<%lO$No)`%$_XOY%$zZ!`%$z!`!a%%g!a#O%$z#O#P%%l#P;'S%$z;'S;=`%&h;=`<%l$No<%lO%$z#t%$}WOY%$zZ!`%$z!`!a%%g!a#O%$z#O#P%%l#P;'S%$z;'S;=`%&h<%lO%$z#t%%lOY#t#t%%oRO;'S%$z;'S;=`%%x;=`O%$z#t%%{XOY%$zZ!`%$z!`!a%%g!a#O%$z#O#P%%l#P;'S%$z;'S;=`%&h;=`<%l%$z<%lO%$z#t%&kP;=`<%l%$z*Q%&sZ'f&jOY$HTYZ$J}Z]$HT]^$J]^!`$HT!`!a$Hu!a#O$HT#O#P$Ib#P;'S$HT;'S;=`$Mx<%lO$HT*Q%'iXOY%$zZ!`%$z!`!a%%g!a#O%$z#O#P%%l#P;'S%$z;'S;=`%&h;=`<%l$HT<%lO%$z*Y%(aW$WpY#t)ZW'f&jOY%^Zw%^wx%}x#O%^#O#P&f#P;'S%^;'S;=`'x<%lO%^*Y%(|P;=`<%l$GZ*S%)WZ(pQ'f&jOY%)PYZ$FlZr%)Prs$HTs!`%)P!`!a%)y!a#O%)P#O#P$Ib#P;'S%)P;'S;=`%*n<%lO%)P*S%*UW$WpY#t(pQ'f&jOY(OZr(Ors%}s#O(O#O#P&f#P;'S(O;'S;=`(o<%lO(O*S%*qP;=`<%l%)P*[%+RY$WpY#t)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e*[%+tP;=`<%l$Ej7V%,U^)ZW(pQ%[!b!f,g'f&jOY$EjYZ$FlZr$Ejrs$GZsw$Ejwx%)Px!_$Ej!_!`%-Q!`!a%*t!a#O$Ej#O#P$Ib#P;'S$Ej;'S;=`%+q<%lO$Ej7V%-]]!g-y)ZW(pQ'f&jOY$EjYZ$FlZr$Ejrs$GZsw$Ejwx%)Px!`$Ej!`!a%*t!a#O$Ej#O#P$Ib#P;'S$Ej;'S;=`%+q<%lO$Ej7V%.c]%]!b!b,g)ZW(pQ'f&jOY$EjYZ$FlZr$Ejrs$GZsw$Ejwx%)Px!`$Ej!`!a%/[!a#O$Ej#O#P$Ib#P;'S$Ej;'S;=`%+q<%lO$Ej7V%/mY%]!b!b,g$WpY#t)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e)j%0hYY#t)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o%1c[)j!c)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!_$e!_!`0Q!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o%2f]%]!b)ZW(pQ!d,g'f&jOY$eZr$ers%^sw$ewx(Ox!_$e!_!`%3_!`!a%4[!a#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o%3lY%]!b!b,g)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o%4i[)ZW(pQ%[!b!f,g'f&jOY$eZr$ers%^sw$ewx(Ox!_$e!_!`!8g!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e&u%5jY(uP)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e7Z%6ib)ZW(yS(pQ!R,f(r%y'f&jOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![%6Y![!c$e!c!}%6Y!}#O$e#O#P&f#P#R$e#R#S%6Y#S#T$e#T#o%6Y#o;'S$e;'S;=`(u<%lO$e7Z%8Qb)ZW(yS(pQ!R,f(r%y'f&jOY$eZr$ers%9Ysw$ewx%9{x!Q$e!Q![%6Y![!c$e!c!}%6Y!}#O$e#O#P&f#P#R$e#R#S%6Y#S#T$e#T#o%6Y#o;'S$e;'S;=`(u<%lO$e5P%9cW)ZW(o/]'f&jOY%^Zw%^wx%}x#O%^#O#P&f#P;'S%^;'S;=`'x<%lO%^2T%:UW(pQ)Y,g'f&jOY(OZr(Ors%}s#O(O#O#P&f#P;'S(O;'S;=`(o<%lO(O3o%:yZ!V-y)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox!}$e!}#O%;l#O#P&f#P;'S$e;'S;=`(u<%lO$e&u%;wY)PP)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e4e%<la'f&jOY%=qYZ%>[Z]%=q]^%?Z^!Q%=q!Q![%?w![!w%=q!w!x%AX!x#O%=q#O#P%H_#P#i%=q#i#j%Ds#j#l%=q#l#m%IR#m;'S%=q;'S;=`%Kt<%lO%=q&t%=xUXY'f&jOY%}Z#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}4e%>e[XY(n.o'f&jOX%}XY-OYZ*[Z]%}]^-O^p%}pq-Oq#O%}#O#P,^#P;'S%};'S;=`'r<%lO%}4e%?bVXY'f&jOY%}YZ-OZ#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}&t%@OWXY'f&jOY%}Z!Q%}!Q![%@h![#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}&t%@oWXY'f&jOY%}Z!Q%}!Q![%=q![#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}&t%A^['f&jOY%}Z!Q%}!Q![%BS![!c%}!c!i%BS!i#O%}#O#P&f#P#T%}#T#Z%BS#Z;'S%};'S;=`'r<%lO%}&t%BX['f&jOY%}Z!Q%}!Q![%B}![!c%}!c!i%B}!i#O%}#O#P&f#P#T%}#T#Z%B}#Z;'S%};'S;=`'r<%lO%}&t%CS['f&jOY%}Z!Q%}!Q![%Cx![!c%}!c!i%Cx!i#O%}#O#P&f#P#T%}#T#Z%Cx#Z;'S%};'S;=`'r<%lO%}&t%C}['f&jOY%}Z!Q%}!Q![%Ds![!c%}!c!i%Ds!i#O%}#O#P&f#P#T%}#T#Z%Ds#Z;'S%};'S;=`'r<%lO%}&t%Dx['f&jOY%}Z!Q%}!Q![%En![!c%}!c!i%En!i#O%}#O#P&f#P#T%}#T#Z%En#Z;'S%};'S;=`'r<%lO%}&t%Es['f&jOY%}Z!Q%}!Q![%Fi![!c%}!c!i%Fi!i#O%}#O#P&f#P#T%}#T#Z%Fi#Z;'S%};'S;=`'r<%lO%}&t%Fn['f&jOY%}Z!Q%}!Q![%Gd![!c%}!c!i%Gd!i#O%}#O#P&f#P#T%}#T#Z%Gd#Z;'S%};'S;=`'r<%lO%}&t%Gi['f&jOY%}Z!Q%}!Q![%=q![!c%}!c!i%=q!i#O%}#O#P&f#P#T%}#T#Z%=q#Z;'S%};'S;=`'r<%lO%}&t%HfXXY'f&jOY%}YZ%}Z]%}]^'W^#O%}#O#P&f#P;'S%};'S;=`'r<%lO%}&t%IW['f&jOY%}Z!Q%}!Q![%I|![!c%}!c!i%I|!i#O%}#O#P&f#P#T%}#T#Z%I|#Z;'S%};'S;=`'r<%lO%}&t%JR['f&jOY%}Z!Q%}!Q![%Jw![!c%}!c!i%Jw!i#O%}#O#P&f#P#T%}#T#Z%Jw#Z;'S%};'S;=`'r<%lO%}&t%KO[XY'f&jOY%}Z!Q%}!Q![%Jw![!c%}!c!i%Jw!i#O%}#O#P&f#P#T%}#T#Z%Jw#Z;'S%};'S;=`'r<%lO%}&t%KwP;=`<%l%=q2a%LVZ!W,V)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P#Q%Lx#Q;'S$e;'S;=`(u<%lO$e'Y%MTY)]d)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o%NQ[)ZW(pQ%[!b'f&j!_,gOY$eZr$ers%^sw$ewx(Ox!_$e!_!`!8g!`#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e7Z& Vd)ZW(yS(pQ!R,f(r%y'f&jOY$eZr$ers%9Ysw$ewx%9{x!Q$e!Q!Y%6Y!Y!Z%7q!Z![%6Y![!c$e!c!}%6Y!}#O$e#O#P&f#P#R$e#R#S%6Y#S#T$e#T#o%6Y#o;'S$e;'S;=`(u<%lO$e2]&!pY!T,g)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e3o&#m^)ZW(pQ%[!b'f&j!^,gOY$eZr$ers%^sw$ewx(Ox!_$e!_!`!8g!`#O$e#O#P&f#P#p$e#p#q&$i#q;'S$e;'S;=`(u<%lO$e3o&$vY)T,g%^!b)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e'V&%qY!Ua)ZW(pQ'f&jOY$eZr$ers%^sw$ewx(Ox#O$e#O#P&f#P;'S$e;'S;=`(u<%lO$e(]&&nc)ZW(pQ%[!b'RP'f&jOX$eXY&'yZp$epq&'yqr$ers%^sw$ewx(Ox!c$e!c!}&)_!}#O$e#O#P&f#P#R$e#R#S&)_#S#T$e#T#o&)_#o;'S$e;'S;=`(u<%lO$e&y&(Sc)ZW(pQ'f&jOX$eXY&'yZp$epq&'yqr$ers%^sw$ewx(Ox!c$e!c!}&)_!}#O$e#O#P&f#P#R$e#R#S&)_#S#T$e#T#o&)_#o;'S$e;'S;=`(u<%lO$e&y&)jb)ZW(pQdT'f&jOY$eZr$ers%^sw$ewx(Ox!Q$e!Q![&)_![!c$e!c!}&)_!}#O$e#O#P&f#P#R$e#R#S&)_#S#T$e#T#o&)_#o;'S$e;'S;=`(u<%lO$e",tokenizers:[rawString,fallback,0,1,2,3,4,5,6,7,8,9],topRules:{Program:[0,307]},dynamicPrecedences:{87:1,94:1,119:1,184:1,187:-10,240:-10,241:1,244:-1,246:-10,247:1,262:-1,267:2,268:2,306:-10,365:3,417:1,418:3,419:1,420:1},specialized:[{term:356,get:O=>spec_identifier$6[O]||-1},{term:32,get:O=>spec_[O]||-1},{term:66,get:O=>spec_templateArgsEnd[O]||-1},{term:363,get:O=>spec_scopedIdentifier[O]||-1}],tokenPrec:24891}),cppLanguage=LRLanguage.define({name:"cpp",parser:parser$e.configure({props:[indentNodeProp.add({IfStatement:continuedIndent({except:/^\s*({|else\b)/}),TryStatement:continuedIndent({except:/^\s*({|catch)\b/}),LabeledStatement:flatIndent,CaseStatement:O=>O.baseIndent+O.unit,BlockComment:()=>null,CompoundStatement:delimitedIndent({closing:"}"}),Statement:continuedIndent({except:/^{/})}),foldNodeProp.add({"DeclarationList CompoundStatement EnumeratorList FieldDeclarationList InitializerList":foldInside,BlockComment:O=>({from:O.from+2,to:O.to-2})})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\})$/,closeBrackets:{stringPrefixes:["L","u","U","u8","LR","UR","uR","u8R","R"]}}});function cpp(){return new LanguageSupport(cppLanguage)}const descendantOp=99,Unit=1,callee=100,identifier$3=101,VariableName=2,space$4=[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],colon=58,parenL=40,underscore=95,bracketL$1=91,dash$1=45,period=46,hash$1=35,percent=37,ampersand=38,backslash$1=92,newline$4=10;function isAlpha$1(O){return O>=65&&O<=90||O>=97&&O<=122||O>=161}function isDigit(O){return O>=48&&O<=57}const identifiers=new ExternalTokenizer(((O,e)=>{for(let t=!1,i=0,n=0;;n++){let{next:r}=O;if(isAlpha$1(r)||45==r||95==r||t&&isDigit(r))!t&&(45!=r||n>0)&&(t=!0),i===n&&45==r&&i++,O.advance();else{if(92!=r||10==O.peek(1)){t&&O.acceptToken(40==r?100:2==i&&e.canShift(2)?2:101);break}O.advance(),O.next>-1&&O.advance(),t=!0}}})),descendant=new ExternalTokenizer((O=>{if(space$4.includes(O.peek(-1))){let{next:e}=O;(isAlpha$1(e)||95==e||35==e||46==e||91==e||58==e&&isAlpha$1(O.peek(1))||45==e||38==e)&&O.acceptToken(99)}})),unitToken=new ExternalTokenizer((O=>{if(!space$4.includes(O.peek(-1))){let{next:e}=O;if(37==e&&(O.advance(),O.acceptToken(1)),isAlpha$1(e)){do{O.advance()}while(isAlpha$1(O.next)||isDigit(O.next));O.acceptToken(1)}}})),cssHighlighting=styleTags({"AtKeyword import charset namespace keyframes media supports":tags$1.definitionKeyword,"from to selector":tags$1.keyword,NamespaceName:tags$1.namespace,KeyframeName:tags$1.labelName,KeyframeRangeName:tags$1.operatorKeyword,TagName:tags$1.tagName,ClassName:tags$1.className,PseudoClassName:tags$1.constant(tags$1.className),IdName:tags$1.labelName,"FeatureName PropertyName":tags$1.propertyName,AttributeName:tags$1.attributeName,NumberLiteral:tags$1.number,KeywordQuery:tags$1.keyword,UnaryQueryOp:tags$1.operatorKeyword,"CallTag ValueName":tags$1.atom,VariableName:tags$1.variableName,Callee:tags$1.operatorKeyword,Unit:tags$1.unit,"UniversalSelector NestingSelector":tags$1.definitionOperator,MatchOp:tags$1.compareOperator,"ChildOp SiblingOp, LogicOp":tags$1.logicOperator,BinOp:tags$1.arithmeticOperator,Important:tags$1.modifier,Comment:tags$1.blockComment,ColorLiteral:tags$1.color,"ParenthesizedContent StringLiteral":tags$1.string,":":tags$1.punctuation,"PseudoOp #":tags$1.derefOperator,"; ,":tags$1.separator,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),spec_callee={__proto__:null,lang:32,"nth-child":32,"nth-last-child":32,"nth-of-type":32,"nth-last-of-type":32,dir:32,"host-context":32,url:60,"url-prefix":60,domain:60,regexp:60,selector:138},spec_AtKeyword={__proto__:null,"@import":118,"@media":142,"@charset":146,"@namespace":150,"@keyframes":156,"@supports":168},spec_identifier$5={__proto__:null,not:132,only:132},parser$d=LRParser.deserialize({version:14,states:":jQYQ[OOO#_Q[OOP#fOWOOOOQP'#Cd'#CdOOQP'#Cc'#CcO#kQ[O'#CfO$_QXO'#CaO$fQ[O'#ChO$qQ[O'#DTO$vQ[O'#DWOOQP'#Em'#EmO${QdO'#DgO%jQ[O'#DtO${QdO'#DvO%{Q[O'#DxO&WQ[O'#D{O&`Q[O'#ERO&nQ[O'#ETOOQS'#El'#ElOOQS'#EW'#EWQYQ[OOO&uQXO'#CdO'jQWO'#DcO'oQWO'#EsO'zQ[O'#EsQOQWOOP(UO#tO'#C_POOO)C@[)C@[OOQP'#Cg'#CgOOQP,59Q,59QO#kQ[O,59QO(aQ[O'#E[O({QWO,58{O)TQ[O,59SO$qQ[O,59oO$vQ[O,59rO(aQ[O,59uO(aQ[O,59wO(aQ[O,59xO)`Q[O'#DbOOQS,58{,58{OOQP'#Ck'#CkOOQO'#DR'#DROOQP,59S,59SO)gQWO,59SO)lQWO,59SOOQP'#DV'#DVOOQP,59o,59oOOQO'#DX'#DXO)qQ`O,59rOOQS'#Cp'#CpO${QdO'#CqO)yQvO'#CsO+ZQtO,5:ROOQO'#Cx'#CxO)lQWO'#CwO+oQWO'#CyO+tQ[O'#DOOOQS'#Ep'#EpOOQO'#Dj'#DjO+|Q[O'#DqO,[QWO'#EtO&`Q[O'#DoO,jQWO'#DrOOQO'#Eu'#EuO)OQWO,5:`O,oQpO,5:bOOQS'#Dz'#DzO,wQWO,5:dO,|Q[O,5:dOOQO'#D}'#D}O-UQWO,5:gO-ZQWO,5:mO-cQWO,5:oOOQS-E8U-E8UO-kQdO,59}O-{Q[O'#E^O.YQWO,5;_O.YQWO,5;_POOO'#EV'#EVP.eO#tO,58yPOOO,58y,58yOOQP1G.l1G.lO/[QXO,5:vOOQO-E8Y-E8YOOQS1G.g1G.gOOQP1G.n1G.nO)gQWO1G.nO)lQWO1G.nOOQP1G/Z1G/ZO/iQ`O1G/^O0SQXO1G/aO0jQXO1G/cO1QQXO1G/dO1hQWO,59|O1mQ[O'#DSO1tQdO'#CoOOQP1G/^1G/^O${QdO1G/^O1{QpO,59]OOQS,59_,59_O${QdO,59aO2TQWO1G/mOOQS,59c,59cO2YQ!bO,59eOOQS'#DP'#DPOOQS'#EY'#EYO2eQ[O,59jOOQS,59j,59jO2mQWO'#DjO2xQWO,5:VO2}QWO,5:]O&`Q[O,5:XO&`Q[O'#E_O3VQWO,5;`O3bQWO,5:ZO(aQ[O,5:^OOQS1G/z1G/zOOQS1G/|1G/|OOQS1G0O1G0OO3sQWO1G0OO3xQdO'#EOOOQS1G0R1G0ROOQS1G0X1G0XOOQS1G0Z1G0ZO4TQtO1G/iOOQO1G/i1G/iOOQO,5:x,5:xO4kQ[O,5:xOOQO-E8[-E8[O4xQWO1G0yPOOO-E8T-E8TPOOO1G.e1G.eOOQP7+$Y7+$YOOQP7+$x7+$xO${QdO7+$xOOQS1G/h1G/hO5TQXO'#ErO5[QWO,59nO5aQtO'#EXO6XQdO'#EoO6cQWO,59ZO6hQpO7+$xOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%X7+%XOOQS1G/P1G/PO6pQWO1G/POOQS-E8W-E8WOOQS1G/U1G/UO${QdO1G/qOOQO1G/w1G/wOOQO1G/s1G/sO6uQWO,5:yOOQO-E8]-E8]O7TQXO1G/xOOQS7+%j7+%jO7[QYO'#CsOOQO'#EQ'#EQO7gQ`O'#EPOOQO'#EP'#EPO7rQWO'#E`O7zQdO,5:jOOQS,5:j,5:jO8VQtO'#E]O${QdO'#E]O9WQdO7+%TOOQO7+%T7+%TOOQO1G0d1G0dO9kQpO<<HdO9sQWO,5;^OOQP1G/Y1G/YOOQS-E8V-E8VO${QdO'#EZO9{QWO,5;ZOOQT1G.u1G.uOOQP<<Hd<<HdOOQS7+$k7+$kO:TQdO7+%]OOQO7+%d7+%dOOQO,5:k,5:kO3{QdO'#EaO7rQWO,5:zOOQS,5:z,5:zOOQS-E8^-E8^OOQS1G0U1G0UO:[QtO,5:wOOQS-E8Z-E8ZOOQO<<Ho<<HoOOQPAN>OAN>OO;]QdO,5:uOOQO-E8X-E8XOOQO<<Hw<<HwOOQO,5:{,5:{OOQO-E8_-E8_OOQS1G0f1G0f",stateData:";o~O#ZOS#[QQ~OUYOXYO]VO^VOqXOxWO![aO!]ZO!i[O!k]O!m^O!p_O!v`O#XRO#bTO~OQfOUYOXYO]VO^VOqXOxWO![aO!]ZO!i[O!k]O!m^O!p_O!v`O#XeO#bTO~O#U#gP~P!ZO#[jO~O#XlO~O]qO^qOqsOtoOxrO!OtO!RvO#VuO#bnO~O!TwO~P#pO`}O#WzO#XyO~O#X!OO~O#X!QO~OQ![Ob!TOf![Oh![On!YOq!ZO#W!WO#X!SO#e!UO~Ob!^O!d!`O!g!aO#X!]O!T#hP~Oh!fOn!YO#X!eO~Oh!hO#X!hO~Ob!^O!d!`O!g!aO#X!]O~O!Y#hP~P%jO]WX]!WX^WXqWXtWXxWX!OWX!RWX!TWX#VWX#bWX~O]!mO~O!Y!nO#U#gX!S#gX~O#U#gX!S#gX~P!ZO#]!qO#^!qO#_!sO~OUYOXYO]VO^VOqXOxWO#XRO#bTO~OtoO!TwO~O`!zO#WzO#XyO~O!S#gP~P!ZOb#RO~Ob#SO~Op#TO|#UO~OP#WObgXjgX!YgX!dgX!ggX#XgXagXQgXfgXhgXngXqgXtgX!XgX#UgX#WgX#egXpgX!SgX~Ob!^Oj#XO!d!`O!g!aO#X!]O!Y#hP~Ob#[O~Op#`O#X#]O~Ob!^O!d!`O!g!aO#X#aO~Ot#eO!b#dO!T#hX!Y#hX~Ob#hO~Oj#XO!Y#jO~O!Y#kO~Oh#lOn!YO~O!T#mO~O!TwO!b#dO~O!TwO!Y#pO~O!X#rO!Y!Va#U!Va!S!Va~P${O!Y#QX#U#QX!S#QX~P!ZO!Y!nO#U#ga!S#ga~O#]!qO#^!qO#_#xO~O]qO^qOqsOxrO!OtO!RvO#VuO#bnO~Ot#Oa!T#Oaa#Oa~P.pOp#zO|#{O~O]qO^qOqsOxrO#bnO~Ot}i!O}i!R}i!T}i#V}ia}i~P/qOt!Pi!O!Pi!R!Pi!T!Pi#V!Pia!Pi~P/qOt!Qi!O!Qi!R!Qi!T!Qi#V!Qia!Qi~P/qO!S#|O~Oa#fP~P(aOa#cP~P${Oa$TOj#XO~O!Y$VO~Oa$WOh$XOo$XO~Op$ZO#X#]O~O]!`Xa!^X!b!^X~O]$[O~Oa$]O!b#dO~Ot#eO!T#ha!Y#ha~O!b#dOt!ca!T!ca!Y!caa!ca~O!Y$bO~O!S$iO#X$dO#e$cO~Oj#XOt$kO!X$mO!Y!Vi#U!Vi!S!Vi~P${O!Y#Qa#U#Qa!S#Qa~P!ZO!Y!nO#U#gi!S#gi~Oa#fX~P#pOa$qO~Oj#XOQ!{Xa!{Xb!{Xf!{Xh!{Xn!{Xq!{Xt!{X#W!{X#X!{X#e!{X~Ot$sOa#cX~P${Oa$uO~Oj#XOp$vO~Oa$wO~O!b#dOt#Ra!T#Ra!Y#Ra~Oa$yO~P.pOP#WOtgX!TgX~O#e$cOt!sX!T!sX~Ot${O!TwO~O!S%PO#X$dO#e$cO~Oj#XOQ#PXb#PXf#PXh#PXn#PXq#PXt#PX!X#PX!Y#PX#U#PX#W#PX#X#PX#e#PX!S#PX~Ot$kO!X%SO!Y!Vq#U!Vq!S!Vq~P${Oj#XOp%TO~OtoOa#fa~Ot$sOa#ca~Oa%WO~P${Oj#XOQ#Pab#Paf#Pah#Pan#Paq#Pat#Pa!X#Pa!Y#Pa#U#Pa#W#Pa#X#Pa#e#Pa!S#Pa~Oa!}at!}a~P${O#Zo#[#ej!R#e~",goto:"-g#jPPP#kP#nP#w$WP#w$g#wPP$mPPP$s$|$|P%`P$|P$|%z&^PPPP$|&vP&z'Q#wP'W#w'^P#wP#w#wPPP'd'y(WPP#nPP(_(_(i(_P(_P(_(_P#nP#nP#nP(l#nP(o(r(u(|#nP#nP)R)X)h)v)|*S*^*d*n*t*zPPPPPPPPPP+Q+ZP+v+yP,o,r,x-RRkQ_bOPdhw!n#tkYOPdhotuvw!n#R#h#tkSOPdhotuvw!n#R#h#tQmTR!tnQ{VR!xqQ!x}Q#Z!XR#y!zq![Z]!T!m#S#U#X#q#{$Q$[$k$l$s$x%Up![Z]!T!m#S#U#X#q#{$Q$[$k$l$s$x%UU$f#m$h${R$z$eq!XZ]!T!m#S#U#X#q#{$Q$[$k$l$s$x%Up![Z]!T!m#S#U#X#q#{$Q$[$k$l$s$x%UQ!f^R#l!gT#^!Z#_Q|VR!yqQ!x|R#y!yQ!PWR!{rQ!RXR!|sQxUQ!wpQ#i!cQ#o!jQ#p!kQ$}$gR%Z$|SgPwQ!phQ#s!nR$n#tZfPhw!n#ta!b[`a!V!^!`#d#eR#b!^R!g^R!i_R#n!iS$g#m$hR%X${V$e#m$h${Q!rjR#w!rQdOShPwU!ldh#tR#t!nQ$Q#SU$r$Q$x%UQ$x$[R%U$sQ#_!ZR$Y#_Q$t$QR%V$tQpUS!vp$pR$p#}Q$l#qR%R$lQ!ogS#u!o#vR#v!pQ#f!_R$`#fQ$h#mR%O$hQ$|$gR%Y$|_cOPdhw!n#t^UOPdhw!n#tQ!uoQ!}tQ#OuQ#PvQ#}#RR$a#hR$R#SQ!VZQ!d]Q#V!TQ#q!m[$P#S$Q$[$s$x%UQ$S#UQ$U#XS$j#q$lQ$o#{R%Q$kR$O#RQiPR#QwQ!c[Q!kaR#Y!VU!_[a!VQ!j`Q#c!^Q#g!`Q$^#dR$_#e",nodeNames:"⚠ Unit VariableName Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NestingSelector ClassSelector ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee CallLiteral CallTag ParenthesizedContent ] [ LineNames LineName , PseudoClassName ArgList IdSelector # IdName AttributeSelector AttributeName MatchOp ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp } { Block Declaration PropertyName Important ; ImportStatement AtKeyword import KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports AtRule Styles",maxTerm:117,nodeProps:[["isolate",-2,3,24,""],["openedBy",17,"(",32,"[",50,"{"],["closedBy",18,")",33,"]",51,"}"]],propSources:[cssHighlighting],skippedNodes:[0,3,87],repeatNodeCount:11,tokenData:"J^~R!^OX$}X^%u^p$}pq%uqr)Xrs.Rst/utu6duv$}vw7^wx7oxy9^yz9oz{9t{|:_|}?Q}!O?c!O!P@Q!P!Q@i!Q![Ab![!]B]!]!^CX!^!_$}!_!`Cj!`!aC{!a!b$}!b!cDw!c!}$}!}#OFa#O#P$}#P#QFr#Q#R6d#R#T$}#T#UGT#U#c$}#c#dHf#d#o$}#o#pH{#p#q6d#q#rI^#r#sIo#s#y$}#y#z%u#z$f$}$f$g%u$g#BY$}#BY#BZ%u#BZ$IS$}$IS$I_%u$I_$I|$}$I|$JO%u$JO$JT$}$JT$JU%u$JU$KV$}$KV$KW%u$KW&FU$}&FU&FV%u&FV;'S$};'S;=`JW<%lO$}`%QSOy%^z;'S%^;'S;=`%o<%lO%^`%cSo`Oy%^z;'S%^;'S;=`%o<%lO%^`%rP;=`<%l%^~%zh#Z~OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^~'mh#Z~o`OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^l)[UOy%^z#]%^#]#^)n#^;'S%^;'S;=`%o<%lO%^l)sUo`Oy%^z#a%^#a#b*V#b;'S%^;'S;=`%o<%lO%^l*[Uo`Oy%^z#d%^#d#e*n#e;'S%^;'S;=`%o<%lO%^l*sUo`Oy%^z#c%^#c#d+V#d;'S%^;'S;=`%o<%lO%^l+[Uo`Oy%^z#f%^#f#g+n#g;'S%^;'S;=`%o<%lO%^l+sUo`Oy%^z#h%^#h#i,V#i;'S%^;'S;=`%o<%lO%^l,[Uo`Oy%^z#T%^#T#U,n#U;'S%^;'S;=`%o<%lO%^l,sUo`Oy%^z#b%^#b#c-V#c;'S%^;'S;=`%o<%lO%^l-[Uo`Oy%^z#h%^#h#i-n#i;'S%^;'S;=`%o<%lO%^l-uS!X[o`Oy%^z;'S%^;'S;=`%o<%lO%^~.UWOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o<%lO.R~.sOh~~.vRO;'S.R;'S;=`/P;=`O.R~/SXOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o;=`<%l.R<%lO.R~/rP;=`<%l.Rn/zYxQOy%^z!Q%^!Q![0j![!c%^!c!i0j!i#T%^#T#Z0j#Z;'S%^;'S;=`%o<%lO%^l0oYo`Oy%^z!Q%^!Q![1_![!c%^!c!i1_!i#T%^#T#Z1_#Z;'S%^;'S;=`%o<%lO%^l1dYo`Oy%^z!Q%^!Q![2S![!c%^!c!i2S!i#T%^#T#Z2S#Z;'S%^;'S;=`%o<%lO%^l2ZYf[o`Oy%^z!Q%^!Q![2y![!c%^!c!i2y!i#T%^#T#Z2y#Z;'S%^;'S;=`%o<%lO%^l3QYf[o`Oy%^z!Q%^!Q![3p![!c%^!c!i3p!i#T%^#T#Z3p#Z;'S%^;'S;=`%o<%lO%^l3uYo`Oy%^z!Q%^!Q![4e![!c%^!c!i4e!i#T%^#T#Z4e#Z;'S%^;'S;=`%o<%lO%^l4lYf[o`Oy%^z!Q%^!Q![5[![!c%^!c!i5[!i#T%^#T#Z5[#Z;'S%^;'S;=`%o<%lO%^l5aYo`Oy%^z!Q%^!Q![6P![!c%^!c!i6P!i#T%^#T#Z6P#Z;'S%^;'S;=`%o<%lO%^l6WSf[o`Oy%^z;'S%^;'S;=`%o<%lO%^d6gUOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^d7QS|So`Oy%^z;'S%^;'S;=`%o<%lO%^b7cSXQOy%^z;'S%^;'S;=`%o<%lO%^~7rWOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W<%lO7o~8_RO;'S7o;'S;=`8h;=`O7o~8kXOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W;=`<%l7o<%lO7o~9ZP;=`<%l7on9cSb^Oy%^z;'S%^;'S;=`%o<%lO%^~9tOa~n9{UUQjWOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^n:fWjW!RQOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^l;TUo`Oy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^l;nYo`#e[Oy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^l<cYo`Oy%^z{%^{|=R|}%^}!O=R!O!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l=WUo`Oy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l=qUo`#e[Oy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l>[[o`#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^n?VSt^Oy%^z;'S%^;'S;=`%o<%lO%^l?hWjWOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^n@VU#bQOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjWOy%^z{@}{;'S%^;'S;=`%o<%lO%^~AUSo`#[~Oy%^z;'S%^;'S;=`%o<%lO%^lAg[#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^bBbU]QOy%^z![%^![!]Bt!];'S%^;'S;=`%o<%lO%^bB{S^Qo`Oy%^z;'S%^;'S;=`%o<%lO%^nC^S!Y^Oy%^z;'S%^;'S;=`%o<%lO%^dCoS|SOy%^z;'S%^;'S;=`%o<%lO%^bDQU!OQOy%^z!`%^!`!aDd!a;'S%^;'S;=`%o<%lO%^bDkS!OQo`Oy%^z;'S%^;'S;=`%o<%lO%^bDzWOy%^z!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bEk[![Qo`Oy%^z}%^}!OEd!O!Q%^!Q![Ed![!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^nFfSq^Oy%^z;'S%^;'S;=`%o<%lO%^nFwSp^Oy%^z;'S%^;'S;=`%o<%lO%^bGWUOy%^z#b%^#b#cGj#c;'S%^;'S;=`%o<%lO%^bGoUo`Oy%^z#W%^#W#XHR#X;'S%^;'S;=`%o<%lO%^bHYS!bQo`Oy%^z;'S%^;'S;=`%o<%lO%^bHiUOy%^z#f%^#f#gHR#g;'S%^;'S;=`%o<%lO%^fIQS!TUOy%^z;'S%^;'S;=`%o<%lO%^nIcS!S^Oy%^z;'S%^;'S;=`%o<%lO%^fItU!RQOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^`JZP;=`<%l$}",tokenizers:[descendant,unitToken,identifiers,1,2,3,4,new LocalTokenGroup("m~RRYZ[z{a~~g~aO#^~~dP!P!Qg~lO#_~~",28,105)],topRules:{StyleSheet:[0,4],Styles:[1,86]},specialized:[{term:100,get:O=>spec_callee[O]||-1},{term:58,get:O=>spec_AtKeyword[O]||-1},{term:101,get:O=>spec_identifier$5[O]||-1}],tokenPrec:1219});let _properties=null;function properties(){if(!_properties&&"object"==typeof document&&document.body){let{style:O}=document.body,e=[],t=new Set;for(let i in O)"cssText"!=i&&"cssFloat"!=i&&"string"==typeof O[i]&&(/[A-Z]/.test(i)&&(i=i.replace(/[A-Z]/g,(O=>"-"+O.toLowerCase()))),t.has(i)||(e.push(i),t.add(i)));_properties=e.sort().map((O=>({type:"property",label:O,apply:O+": "})))}return _properties||[]}const pseudoClasses=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map((O=>({type:"class",label:O}))),values=["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((O=>({type:"keyword",label:O}))).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((O=>({type:"constant",label:O})))),tags=["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((O=>({type:"type",label:O}))),atRules=["@charset","@color-profile","@container","@counter-style","@font-face","@font-feature-values","@font-palette-values","@import","@keyframes","@layer","@media","@namespace","@page","@position-try","@property","@scope","@starting-style","@supports","@view-transition"].map((O=>({type:"keyword",label:O}))),identifier$2=/^(\w[\w-]*|-\w[\w-]*|)$/,variable=/^-(-[\w-]*)?$/;function isVarArg(O,e){var t;if(("("==O.name||O.type.isError)&&(O=O.parent||O),"ArgList"!=O.name)return!1;let i=null===(t=O.parent)||void 0===t?void 0:t.firstChild;return"Callee"==(null==i?void 0:i.name)&&"var"==e.sliceString(i.from,i.to)}const VariablesByNode=new NodeWeakMap,declSelector=["Declaration"];function astTop(O){for(let e=O;;){if(e.type.isTop)return e;if(!(e=e.parent))return O}}function variableNames(O,e,t){if(e.to-e.from>4096){let i=VariablesByNode.get(e);if(i)return i;let n=[],r=new Set,a=e.cursor(IterMode.IncludeAnonymous);if(a.firstChild())do{for(let e of variableNames(O,a.node,t))r.has(e.label)||(r.add(e.label),n.push(e))}while(a.nextSibling());return VariablesByNode.set(e,n),n}{let i=[],n=new Set;return e.cursor().iterate((e=>{var r;if(t(e)&&e.matchContext(declSelector)&&":"==(null===(r=e.node.nextSibling)||void 0===r?void 0:r.name)){let t=O.sliceString(e.from,e.to);n.has(t)||(n.add(t),i.push({label:t,type:"variable"}))}})),i}}const defineCSSCompletionSource=O=>e=>{let{state:t,pos:i}=e,n=syntaxTree(t).resolveInner(i,-1),r=n.type.isError&&n.from==n.to-1&&"-"==t.doc.sliceString(n.from,n.to);if("PropertyName"==n.name||(r||"TagName"==n.name)&&/^(Block|Styles)$/.test(n.resolve(n.to).name))return{from:n.from,options:properties(),validFor:identifier$2};if("ValueName"==n.name)return{from:n.from,options:values,validFor:identifier$2};if("PseudoClassName"==n.name)return{from:n.from,options:pseudoClasses,validFor:identifier$2};if(O(n)||(e.explicit||r)&&isVarArg(n,t.doc))return{from:O(n)||r?n.from:i,options:variableNames(t.doc,astTop(n),O),validFor:variable};if("TagName"==n.name){for(let{parent:O}=n;O;O=O.parent)if("Block"==O.name)return{from:n.from,options:properties(),validFor:identifier$2};return{from:n.from,options:tags,validFor:identifier$2}}if("AtKeyword"==n.name)return{from:n.from,options:atRules,validFor:identifier$2};if(!e.explicit)return null;let a=n.resolve(i),s=a.childBefore(i);return s&&":"==s.name&&"PseudoClassSelector"==a.name?{from:i,options:pseudoClasses,validFor:identifier$2}:s&&":"==s.name&&"Declaration"==a.name||"ArgList"==a.name?{from:i,options:values,validFor:identifier$2}:"Block"==a.name||"Styles"==a.name?{from:i,options:properties(),validFor:identifier$2}:null},cssCompletionSource=defineCSSCompletionSource((O=>"VariableName"==O.name)),cssLanguage=LRLanguage.define({name:"css",parser:parser$d.configure({props:[indentNodeProp.add({Declaration:continuedIndent()}),foldNodeProp.add({"Block KeyframeList":foldInside})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function css(){return new LanguageSupport(cssLanguage,cssLanguage.data.of({autocomplete:cssCompletionSource}))}const insertedSemi=177,space$1$1=179,identifier$1=184,String$2=12,closeParen$1=13,Number$1=17,Rune=20,closeBrace$1=25,closeBracket=53,IncDecOp=95,_return$1=142,_break$1=144,_continue$1=145,fallthrough=148,newline$3=10,carriageReturn$1=13,space$3=32,tab$1=9,slash$2=47,closeParen=41,closeBrace=125,semicolon$2=new ExternalTokenizer(((O,e)=>{for(let t=0,i=O.next;(e.context&&(i<0||10==i||13==i||47==i&&47==O.peek(t+1))||41==i||125==i)&&O.acceptToken(177),32==i||9==i;)i=O.peek(++t)}),{contextual:!0});let trackedTokens=new Set([95,184,20,12,17,144,145,142,148,13,53,25]);const trackTokens=new ContextTracker({start:!1,shift:(O,e)=>179==e?O:trackedTokens.has(e)}),goHighlighting=styleTags({"func interface struct chan map const type var":tags$1.definitionKeyword,"import package":tags$1.moduleKeyword,"switch for go select return break continue goto fallthrough case if else defer":tags$1.controlKeyword,range:tags$1.keyword,Bool:tags$1.bool,String:tags$1.string,Rune:tags$1.character,Number:tags$1.number,Nil:tags$1.null,VariableName:tags$1.variableName,DefName:tags$1.definition(tags$1.variableName),TypeName:tags$1.typeName,LabelName:tags$1.labelName,FieldName:tags$1.propertyName,"FunctionDecl/DefName":tags$1.function(tags$1.definition(tags$1.variableName)),"TypeSpec/DefName":tags$1.definition(tags$1.typeName),"CallExpr/VariableName":tags$1.function(tags$1.variableName),LineComment:tags$1.lineComment,BlockComment:tags$1.blockComment,LogicOp:tags$1.logicOperator,ArithOp:tags$1.arithmeticOperator,BitOp:tags$1.bitwiseOperator,"DerefOp .":tags$1.derefOperator,"UpdateOp IncDecOp":tags$1.updateOperator,CompareOp:tags$1.compareOperator,"= :=":tags$1.definitionOperator,"<-":tags$1.operator,'~ "*"':tags$1.modifier,"; ,":tags$1.separator,"... :":tags$1.punctuation,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),spec_identifier$4={__proto__:null,package:10,import:18,true:380,false:380,nil:383,struct:48,func:68,interface:78,chan:94,map:118,make:157,new:159,const:204,type:212,var:224,if:236,else:238,switch:242,case:248,default:250,for:260,range:266,go:270,select:274,return:284,break:288,continue:290,goto:292,fallthrough:296,defer:300},parser$c=LRParser.deserialize({version:14,states:"!=xO#{QQOOP$SOQOOO&UQTO'#CbO&]QRO'#FlO]QQOOOOQP'#Cn'#CnOOQP'#Co'#CoO&eQQO'#C|O(kQQO'#C{O)]QRO'#GiO+tQQO'#D_OOQP'#Ge'#GeO+{QQO'#GeO.aQTO'#GaO.hQQO'#D`OOQP'#Gm'#GmO.mQRO'#GdO/hQQO'#DgOOQP'#Gd'#GdO/uQQO'#DrO2bQQO'#DsO4QQTO'#GqO,^QTO'#GaO4XQQO'#DxO4^QQO'#D{OOQO'#EQ'#EQOOQO'#ER'#EROOQO'#ES'#ESOOQO'#ET'#ETO4cQQO'#EPO5}QQO'#EPOOQP'#Ga'#GaO6UQQO'#E`O6^QQO'#EcOOQP'#G`'#G`O6cQQO'#EsOOQP'#G_'#G_O&]QRO'#FnOOQO'#Fn'#FnO9QQQO'#G^QOQQOOO&]QROOO9XQQO'#C`O9^QSO'#CdO9lQQO'#C}O9tQQO'#DSO9yQQO'#D[O:kQQO'#CsO:pQQO'#DhO:uQQO'#EeO:}QQO'#EiO;VQQO'#EoO;_QQO'#EuO<uQQO'#ExO<|QQO'#FRO4cQQO'#FWO=WQQO'#FYO=]QRO'#F_O=jQRO'#FaO=uQQO'#FaOOQP'#Fe'#FeO4cQQO'#FgP=zOWO'#C^POOO)CAz)CAzOOQO'#G]'#G]OOQO,5<W,5<WOOQO-E9j-E9jO?TQTO'#CqOOQO'#C|'#C|OOQP,59g,59gO?tQQO'#D_O@fQSO'#FuO@kQQO'#C}O@pQQO'#D[O9XQQO'#FqO@uQRO,5=TOAyQQO,59yOCVQSO,5:[O@kQQO'#C}OCaQQO'#DjOOQP,59^,59^OOQO,5<a,5<aO?tQQO'#DeOOQO,5:e,5:eOOQO-E9s-E9sOOQP,59z,59zOOQP,59|,59|OCqQSO,5:QO(kQQO,5:ROC{QQO,5:RO&]QRO'#FxOOQO'#Fx'#FxOFjQQO'#GpOFwQQO,5:^OF|QQO,5:_OHdQQO,5:`OHlQQO,5:aOHvQRO'#FyOIaQRO,5=]OIuQQO'#DzOOQP,5:d,5:dOOQO'#EV'#EVOOQO'#EW'#EWOOQO'#EX'#EXOOQO'#EZ'#EZOOQO'#E['#E[O4cQQO,5:pO4cQQO,5:pO4cQQO,5:pO4cQQO,5:pO4cQQO,5:pO4cQQO,5:wOOQP,5:x,5:xO?tQQO'#EOOOQP,5:g,5:gOOQP,5:k,5:kO9yQQO,59vO4cQQO,5:zO4cQQO,5:}OI|QRO,5;_OOQO,5<Y,5<YOOQO-E9l-E9lO]QQOOOOQP'#Cb'#CbOOQP,58z,58zOOQP'#Cf'#CfOJWQQO'#CfOJ]QSO'#CkOOQP,59O,59OOJkQQO'#DPOLZQQO,5<UOLbQQO,59iOLsQQO,5<TOMpQQO'#DUOOQP,59n,59nOOQP,59v,59vONfQQO,59vONmQQO'#CwOOQP,59_,59_O?tQQO,5:SONxQRO'#EgO! VQQO'#EhOOQP,5;P,5;PO! |QQO'#EkO!!WQQO'#EnOOQP,5;T,5;TO!!`QRO'#EqO!!mQQO'#ErOOQP,5;Z,5;ZO!!uQTO'#CbO!!|QTO,5;aO&]QRO,5;aO!#WQQO,5;jO!$yQTO,5;dO!%WQQO'#EzOOQP,5;d,5;dO&]QRO,5;dO!%cQSO,5;mO!%mQQO'#E`O!%uQQO'#EcO!%zQQO'#FTO!&UQQO'#FTOOQP,5;m,5;mO!&ZQQO,5;mO!&`QTO,5;rO!&mQQO'#F[OOQP,5;t,5;tO!&xQTO'#GqOOQP,5;y,5;yOOQP'#Et'#EtOOQP,5;{,5;{O!']QTO,5<RPOOO'#Fk'#FkP!'jOWO,58xPOOO,58x,58xO!'uQQO,59yO!'zQQO'#GgOOQP,59i,59iO(kQQO,59vOOQP,5<],5<]OOQP-E9o-E9oOOQP1G/e1G/eOOQP1G/v1G/vO!([QSO'#DlO!(lQQO'#DlO!(wQQO'#DkOOQO'#Go'#GoO!(|QQO'#GoO!)UQQO,5:UO!)ZQQO'#GnO!)fQQO,5:PPOQO'#Cq'#CqO(kQQO1G/lOOQP1G/m1G/mO(kQQO1G/mOOQO,5<d,5<dOOQO-E9v-E9vOOQP1G/x1G/xO!)kQSO1G/yOOQP'#Cy'#CyOOQP1G/z1G/zO?tQQO1G/}O!)xQSO1G/{O!*YQQO1G/|O!*gQTO,5<eOOQP-E9w-E9wOOQP,5:f,5:fO!+QQQO,5:fOOQP1G0[1G0[O!,vQTO1G0[O!.wQTO1G0[O!/OQTO1G0[O!0pQTO1G0[O!1QQTO1G0cO!1bQQO,5:jOOQP1G/b1G/bOOQP1G0f1G0fOOQP1G0i1G0iOOQP1G0y1G0yOOQP,59Q,59QO&]QRO'#FmO!1mQSO,59VOOQP,59V,59VOOQO'#DQ'#DQO?tQQO'#DQO!1{QQO'#DQOOQO'#Gh'#GhO!2SQQO'#GhO!2[QQO,59kO!2aQSO'#CqOJkQQO'#DPOOQP,5=R,5=RO@kQQO1G1pOOQP1G/w1G/wO.hQQO'#ElO!2rQRO1G1oO@kQQO1G1oO@kQQO'#DVO?tQQO'#DWOOQP'#Gk'#GkO!2}QRO'#GjOOQP'#Gj'#GjO&]QRO'#FsO!3`QQO,59pOOQP,59p,59pO!3gQRO'#CxO!3uQQO'#CxO!3|QRO'#CxO.hQQO'#CxO&]QRO'#FoO!4XQQO,59cOOQP,59c,59cO!4dQQO1G/nO4cQQO,5;RO!4iQQO,5;RO&]QRO'#FzO!4nQQO,5;SOOQP,5;S,5;SO!6aQQO'#DgO?tQQO,5;VOOQP,5;V,5;VO&]QRO'#F}O!6hQQO,5;YOOQP,5;Y,5;YO!6pQRO,5;]O4cQQO,5;]O&]QRO'#GOO!6{QQO,5;^OOQP,5;^,5;^O!7TQRO1G0{O!7`QQO1G0{O4cQQO1G1UO!8vQQO1G1UOOQP1G1O1G1OO!9OQQO'#GPO!9YQQO,5;fOOQP,5;f,5;fO4cQQO'#E{O!9eQQO'#E{O<uQQO1G1OOOQP1G1X1G1XO!9jQQO,5:zO!9jQQO,5:}O!9tQSO,5;oO!:OQQO,5;oO!:VQQO,5;oO!9OQQO'#GRO!:aQQO,5;vOOQP,5;v,5;vO!<PQQO'#F]O!<WQQO'#F]POOO-E9i-E9iPOOO1G.d1G.dO!<]QQO,5:VO!<gQQO,5=ZO!<tQQO,5=ZOOQP1G/p1G/pO!<|QQO,5=YO!=WQQO,5=YOOQP1G/k1G/kOOQP7+%W7+%WOOQP7+%X7+%XOOQP7+%e7+%eO!=cQQO7+%eO!=hQQO7+%iOOQP7+%g7+%gO!=mQQO7+%gO!=rQQO7+%hO!>PQSO7+%hOOQP7+%h7+%hO4cQQO7+%hOOQP1G0Q1G0QO!>^QQO1G0QOOQP1G0U1G0UO!>fQQO1G0UOF|QQO1G0UOOQO,5<X,5<XOOQO-E9k-E9kOOQP1G.q1G.qOOQO,59l,59lO?tQQO,59lO!?cQQO,5=SO!?jQQO,5=SOOQP1G/V1G/VO!?rQQO,59yO!?}QRO7+'[O!@YQQO'#EmO!@dQQO'#HOO!@lQQO,5;WOOQP7+'Z7+'ZO!@qQRO7+'ZOOQP,59q,59qOOQP,59r,59rOOQO'#DZ'#DZO!@]QQO'#FtO!@|QRO,59tOOQO,5<_,5<_OOQO-E9q-E9qOOQP1G/[1G/[OOQP,59d,59dOHgQQO'#FpO!3uQQO,59dO!A_QRO,59dO!AjQRO,59dOOQO,5<Z,5<ZOOQO-E9m-E9mOOQP1G.}1G.}O(kQQO7+%YOOQP1G0m1G0mO4cQQO1G0mOOQO,5<f,5<fOOQO-E9x-E9xOOQP1G0n1G0nO!AxQQO'#GdOOQP1G0q1G0qOOQO,5<i,5<iOOQO-E9{-E9{OOQP1G0t1G0tO4cQQO1G0wOOQP1G0w1G0wOOQO,5<j,5<jOOQO-E9|-E9|OOQP1G0x1G0xO!B]QQO7+&gO!BeQSO7+&gO!CsQSO7+&pO!CzQQO7+&pOOQO,5<k,5<kOOQO-E9}-E9}OOQP1G1Q1G1QO!DRQQO,5;gOOQO,5;g,5;gO!DWQSO7+&jOOQP7+&j7+&jO!DbQQO7+&pO!7`QQO1G1[O!DgQQO1G1ZOOQO1G1Z1G1ZO!DnQSO1G1ZOOQO,5<m,5<mOOQO-E:P-E:POOQP1G1b1G1bO!DxQSO'#GqO!E]QQO'#F^O!EbQQO'#F^O!EgQQO,5;wOOQO,5;w,5;wO!ElQSO1G/qOOQO1G/q1G/qO!EyQSO'#DoO!FZQQO'#DoO!FfQQO'#DnOOQO,5<c,5<cO!FkQQO1G2uOOQO-E9u-E9uOOQO,5<b,5<bO!FxQQO1G2tOOQO-E9t-E9tOOQP<<IP<<IPOOQP<<IT<<ITOOQP<<IR<<IRO!GSQSO<<ISOOQP<<IS<<ISO4cQQO<<ISO!GaQSO<<ISOOQP7+%l7+%lO!GkQQO7+%lOOQP7+%p7+%pO!GpQQO7+%pO!GuQQO7+%pOOQO1G/W1G/WOOQO,5<^,5<^O!G}QQO1G2nOOQO-E9p-E9pOOQP<<Jv<<JvO.hQQO'#F{O!@YQQO,5;XOOQO,5;X,5;XO!HUQQO,5=jO!H^QQO,5=jOOQO1G0r1G0rOOQP<<Ju<<JuOOQP,5<`,5<`OOQP-E9r-E9rOOQO,5<[,5<[OOQO-E9n-E9nO!HfQRO1G/OOOQP1G/O1G/OOOQP<<Ht<<HtOOQP7+&X7+&XO!HqQQO'#DeOOQP7+&c7+&cOOQP<<JR<<JRO!HxQRO<<JRO!ITQQO<<J[O!I]QQO<<J[OOQO1G1R1G1ROOQP<<JU<<JUO4cQQO<<J[O!IbQSO7+&vOOQO7+&u7+&uO!IlQQO7+&uO4cQQO,5;xOOQO1G1c1G1cO!<]QQO,5:YP!<]QQO'#FwP?tQQO'#FvOOQPAN>nAN>nO4cQQOAN>nO!IsQSOAN>nOOQP<<IW<<IWOOQP<<I[<<I[O!I}QQO<<I[P!>nQQO'#FrOOQO,5<g,5<gOOQO-E9y-E9yOOQO1G0s1G0sOOQO,5<h,5<hO!JVQQO1G3UOOQO-E9z-E9zOOQP7+$j7+$jO!J_QQO'#GnO!B]QQOAN?mO!JjQQOAN?vO!JqQQOAN?vO!KzQSOAN?vOOQO<<Ja<<JaO!LRQSO1G1dO!L]QSO1G/tOOQO1G/t1G/tO!LjQSOG24YOOQPG24YG24YOOQPAN>vAN>vO!LtQQOAN>vP.hQQO'#F|OOQPG25XG25XO!LyQQOG25bO!MOQQO'#FPOOQPG25bG25bO!MZQQOG25bOOQPLD)tLD)tOOQPG24bG24bO!JqQQOLD*|O!9OQQO'#GQO!McQQO,5;kOOQP,5;k,5;kO?tQQO'#FQO!MnQQO'#FQO!MsQQOLD*|OOQP!$'Nh!$'NhOOQO,5<l,5<lOOQO-E:O-E:OOOQP1G1V1G1VO!MzQQO,5;lOOQO,5;l,5;lO!NPQQO!$'NhOOQO1G1W1G1WO!JqQQO!)9DSOOQP!.K9n!.K9nO# {QTO'#CqO#!`QTO'#CqO##}QSO'#CqO#$XQSO'#CqO#&]QSO'#CqO#&gQQO'#FyO#&tQQO'#FyO#'OQQO,5=]O#'ZQQO,5=]O#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO!7`QQO,5:wO!7`QQO,5:zO!7`QQO,5:}O#(yQSO'#CbO#)}QSO'#CbO#*bQSO'#GqO#*rQSO'#GqO#+PQRO'#GgO#+yQSO,5<eO#,ZQSO,5<eO#,hQSO1G0[O#-rQTO1G0[O#-yQSO1G0[O#.TQSO1G0[O#0{QTO1G0[O#1SQSO1G0[O#2eQSO1G0[O#2lQTO1G0[O#2sQSO1G0[O#4XQSO1G0[O#4`QTO1G0[O#4jQSO1G0[O#4wQSO1G0cO#5dQTO'#CqO#5kQTO'#CqO#6bQSO'#GqO#'cQQO'#EPO!7`QQO'#EPOF|QQO'#EPO#8]QQO'#EPO#8gQQO'#EPO#8qQQO'#EPO#8{QQO'#E`O#9TQQO'#EcO@kQQO'#C}O?tQQO,5:RO#9YQQO,59vO#:iQQO,59vO?tQQO,59vO?tQQO1G/lO?tQQO1G/mO?tQQO7+%YO?tQQO'#C{O#:pQQO'#DgO#9YQQO'#D[O#:wQQO'#D[O#:|QSO,5:QO#;WQQO,5:RO#;]QQO1G/nO?tQQO,5:SO#;bQQO'#Dh",stateData:"#;m~O$yOSPOS$zPQ~OVvOX{O[oO^YOaoOdoOh!POjcOr|Ow}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO$v%QP~OTzO~P]O$z!`O~OVeXZeX^eX^!TXj!TXnUXneX!QeX!WeX!W!TX!|eX#ReX#TeX#UeX#WUX$weX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeX~O!a#hX~P$XOV!bO$w!bO~O[!wX^pX^!wXa!wXd!wXhpXh!wXrpXr!wXwpXw!wX!PpX!P!wX!QpX!Q!wX!WpX!W!wX!]pX!]!wX!p!wX!q!wX%OpX%O!wX%U!wX%V!wX%YpX%Y!wX%f!wX%g!wX%h!wX%i!wX%j!wX~O^!hOh!POr!jOw}O!P!OO!Q!kO!WaO!]!QO%O!eO%Y!fO~On!lO#W%]XV%]X^%]Xh%]Xr%]Xw%]X!P%]X!Q%]X!W%]X!]%]X#T%]X$w%]X%O%]X%Y%]Xu%]X~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!WaO!]!QO!phO!qhO%O+wO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O!Q-OO~P*aOj!qO^%XX]%XXn%XX!V%XX~O!W!tOV%TXZ%TX^%TXn%TX!Q%TX!W%TX!|%TX#R%TX#T%TX#U%TX$w%TX%Y%TX%`%TX%f%TX%g%TX%i%TX%j%TX%k%TX%l%TX%m%TX%n%TX%o%TX%p%TX%q%TX]%TX!V%TXj%TXi%TX!a%TXu%TX~OZ!sO~P,^O%O!eO~O!W!tO^%WXj%WX]%WXn%WX!V%WXu%WXV%WX$w%WX%`%WX#T%WX[%WX!a%WX~Ou!{O!QnO!V!zO~P*aOV!}O[oO^YOaoOdoOh!POjcOr!pOw}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlOi%dP~O^#QO~OZ#RO^#VOn#TO!Q#cO!W#SO#R#dO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]OV`X#T%eX#U%eX$w`X~O!|#`O~P2gO^#VO~O^#eO~O!QnO~P*aO[oO^YOaoOdoOh!POr!pOw}O!QnO!WaO!]!QO!phO!qhO%O+wO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O!P#hO~P4jO#T#iO#U#iO~O#W#jO~O!a#kO~OVvO[oO^YOaoOdoOh!POjcOr|Ow}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O$v%QX~P6hO%O#oO~OZ#rO[#qO^#sO%O#oO~O^#uO%O#oO~Oj#yO~O^!hOh!POr!jOw}O!P!OO!Q#|O!WaO!]!QO%O!eO%Y!fO~Oj#}O~O!W$PO~O^$RO%O#oO~O^$UO%O#oO~O^$XO%O#oO~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-PO!WaO!]!QO!phO!qhO%O$ZO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~Oj$`O~P;_OV$fOjcO~P;_Oj$kO~O!QnOV$RX$w$RX~P*aO%O$oOV$TX$w$TX~O%O$oO~O${$rO$|$rO$}$tO~OZeX^!TX!W!TXj!TXn!TXh!TXr!TXw!TX{!TX!P!TX!Q!TX!]!TX%O!TX%Y!TX~O]!TX!V!TXu!TX#T!TXV!TX$w!TX%`!TX[!TX!a!TX~P>VO^!hOh!POr-TOw}O!P-_O!Q-`O!W-^O!]-eO%O!eO%Y!fO~OZ!sO~O^#uO~O!P$xO~On!lO#W%]aV%]a^%]ah%]ar%]aw%]a!P%]a!Q%]a!W%]a!]%]a#T%]a$w%]a%O%]a%Y%]au%]a~O]${O^#QO~OZ#RO^#VO!W#SO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]O~O]$|O!|,WO~PBROj!qOn%QO!QnOi%cP~P*aO!V%WO!|#`O~PBRO!V%YO~OV!}O[oO^YOaoOdoOh!POjcOr!pOw}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~Oi%dX#p%dX#q%dX~PDQOi%]O~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-QO!WaO!]!QO!phO!qhO%O+{O%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O^%aO%O%_O~O!QnO!a%cO~P*aO!QnOn$mX#T$mX#U$mXV$mX$w$mX!a$mX~P*aOn#TO#T%ea#U%eaV%ea$w%ea!a%ea~O]%fO~PF|OV#ga$w#ga~PDTO[%sO~OZ#rO[#qO]%vO%O#oO~O^!hOh!POn%zOr-TOu%xOw}O!P-_O!Q-`O!W-^O!]-eO%O,dO%Y!fO]%[P~O^&OOh!POr!jOw}O!P!OO!Q!kO!WaO!]!QO%Y!fO^%ZXj%ZX~O%O%}O~PKfOjcO^qa]qanqa!Vqa~O^#uO!W&SO~O^!hOh!POr-TOw}O{&WO!P-_O!Q-`O!W-^O!]-eO%O,xO%Y!fO~Oi&^O~PL{O^!hOh!POr!jOw}O!Q!kO!WaO!]!QO%O!eO%Y!fO~O!P#hO~PMwOi&eO%O,yO%Y!fO~O#T&gOV#ZX$w#ZX~P?tO]&kO%O#oO~O^!hOh!POr-TOw}O!P-_O!Q-`O!]-eO%O!eO%Y!fO~O!W&lO#T&mO~P! _O]&qO%O#oO~O#T&sOV#eX$w#eX~P?tO]&vO%O#oO~OjeX~P$XOjcO!|,XO~P2gOn!lO#W&yO#W%]X~O^#VOn#TO!Q#cO!W#SO!|,XO#R#dO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]OV`X#T%eX#U%eX~OZ&zOj$`O$w`X~P!#cOi'OO#p'PO#q'QO~OZ#ROjcO~P!#cO#T'TO#U#iO~O#W'UO~OV'WO!QnO~P*aOV'XO~OjcO~O!|#`OV#za$w#za~PBROi'[O#p']O#q'^O~On#TO!|#`OV%eX$w%eX!a%eX~PBRO!|#`OV$Za$w$Za~PBRO${$rO$|$rO$}'`O~O]${O~O%O!eO]%ZXn%ZX!V%ZX~PKfO!|#`Oi!_Xn!_X!a!`X~PBROi!_Xn!_X!a!`X~O!a'aO~On'bOi%cX~Oi'dO~On'eO!V%bX!a%bX~O!V'gO~O]'jOn'kO!|,YO~PBROn'nO!V'mO!a'oO!|#`O~PBRO!QnO!V'qO!a'rO~P*aO!|#`On$ma#T$ma#U$maV$ma$w$ma!a$ma~PBRO]'sOu'tO~O%Y#XO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOV!xiZ!xi^!xin!xi!Q!xi!W!xi!|!xi#R!xi#T!xi#U!xi$w!xi%`!xi%f!xi%g!xi%i!xi%p!xi%q!xi~O!V!xii!xi!a!xi~P!+YO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOV!xiZ!xi^!xin!xi!Q!xi!W!xi#R!xi#T!xi#U!xi$w!xi%p!xi%q!xi!V!xii!xi!a!xi~O!|!xi~P!-TO!|#`O~P!-TO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[OV!xiZ!xi^!xin!xi!Q!xi!W!xi#R!xi#T!xi#U!xi$w!xi%q!xi~O!|#`O!V!xii!xi!a!xi~P!/VO!|#`OV#Pi$w#Pi!a#Pi~PBRO]'uOn'wOu'vO~OZ#rO[#qO]'zO%O#oO~Ou'|O~P?tOn'}O]%[X~O](PO~OZeX^mX^!TXj!TX!W!TX~OjcOV$]i$w$]i~O%`(ZOV%^X$w%^Xn%^X!V%^X~Oi(`O~PL{O[(aO!W!tOVlX$wlX~On(bO~P?tO[(aOVlX$wlX~Oi(hO%O,yO%Y!fO~O!V(iO~O#T(kO~O](nO%O#oO~O[oO^YOaoOdoOh!POr!pOu-bOw}O!P!OO!QnO!V-UO!WaO!]!QO!phO!qhO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O%O+zO~P!4vO](sO%O#oO~O#T(tOV#ea$w#ea~O](xO%O#oO~O#k(yOV#ii$w#ii~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-PO!WaO!]!QO!phO!qhO%O+xO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O^(|O%O%_O~O#p%dP#q%dP~P/uOi)PO#p'PO#q'QO~O!a)RO~O!QnO#y)VO~P*aOV)WO!|#`O~PBROj#wa~P;_OV)WO!QnO~P*aOi)]O#p']O#q'^O~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!QnO!WaO!]!QO!phO!qhO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O%O,eO~P!:lO!a)bO~Oj!qO!QnO~P*aOj!qO!QnOi%ca~P*aOn)iOi%ca~O!V%ba!a%ba~P?tOn)lO!V%ba!a%ba~O])nO~O])oO~O!V)pO~O!QnO!V)rO!a)sO~P*aO!V)rO!a)sO!|#`O~PBRO])uOn)vO~O])wOn)xO~O^!hOh!POr-TOu%xOw}O!P-_O!Q-`O!W-^O!]-eO%O,dO%Y!fO~O]%[a~P!>nOn)|O]%[a~O]${O]tXntX~OjcOV$^q$w$^q~On*PO{&WO~P?tOn*SO!V%rX~O!V*UO~OjcOV$]q$w$]q~O%`(ZOV|a$w|an|a!V|a~O[*]OVla$wla~O[*]O!W!tOVla$wla~On*PO{&WO!W*`O^%WXj%WX~P! _OjcO#j!UO~OjcO!|,XO~PBROZ*dO^#VO!W#SO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]O~O!|#`O~P!BoO#^*eO~P?tO!a*fO~Oj$`O!|,XO~P!BoO#W*hO~Oj#wi~P;_OV*kO!|#`O~PBROn#TO!Q#cO!|#`O!a$QX#T%eX~PBRO#T*lO~O#W*lO~O!a*mO~O!|#`Oi!_in!_i~PBRO!|#`Oi!bXn!bX!a!cX~PBROi!bXn!bX!a!cX~O!a*nO~Oj!qO!QnOi%ci~P*aO!V%bi!a%bi~P?tO!V*qO!a*rO!|#`O~PBRO!V*qO!|#`O~PBRO]*tO~O]*uO~O]*uOu*vO~O]%[i~P!>nO%O!eO!V%ra~On*|O!V%ra~O[+OOVli$wli~O%O+yO~P!4vO#k+QOV#iy$w#iy~O^+RO%O%_O~O]+SO~O!|,XOj#xq~PBROj#wq~P;_O!V+ZO!|#`O~PBRO]+[On+]O~O%O!eO!V%ri~O^#QOn'eO!V%bX~O#^+`O~P?tOj+aO~O^#VO!W#SO!|#`O%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]O~OZ+cO~P!JvO!|#`O!a$Qi~PBRO!|#`Oi!bin!bi~PBRO!V+dO!|#`O~PBRO]+eO~O]+fO~Oi+iO#p+jO#q+kO~O^+lO%O%_O~Oi+pO#p+jO#q+kO~O!a+rO~O#^+sO~P?tO!a+tO~O]+uO~OZeX^eX^!TXj!TX!WeX!W!TX!|eX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeXVeXneX!QeX#ReX#TeX#UeX$weX~O]eX]!TX!VeXieX!aeX~P!NUOjeX~P!NUOZeX^eX^!TXj!TX!WeX!W!TX!|eX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeXn!TX!VeX~O]eX!V!TX~P#!gOh!TXr!TXw!TX{!TX!P!TX!Q!TX!]!TX%O!TX%Y!TX~P#!gOZeX^eX^!TXj!TXneX!WeX!W!TX!|eX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeX~O]eXueX~P#$xO]$mXn$mXu$mX~PF|Oj$mXn$mX~P!7`On+|O]%eau%ea~On+}Oj%ea~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-OO!WaO!]!QO!phO!qhO%O+yO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~OZeX]!TX^UXhUXnUXn!TXrUXuUXwUX!PUX!QUX!WUX!W!TX!]UX%OUX%YUX~OnUX!QeX!aeX#TeX#WUX~P#$xOn+|O!|,YO]%eXu%eX~PBROn+}O!|,XOj%eX~PBRO^&OOV%ZXj%ZX$w%ZX]%ZXn%ZX!V%ZXu%ZX%`%ZX#T%ZX[%ZX!a%ZX~P?wO!|,YO]$man$mau$ma~PBRO!|,XOj$man$ma~PBRO%Y#XO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOZ!xi]!xi^!xi!W!xi!|!xi%`!xi%f!xi%g!xi%i!xi%p!xi%q!xi~Oj!xi~P!+YOn!xiu!xi~P#,hO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOZ!xi]!xi^!xi!W!xi!|!xi%p!xi%q!xi~O%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOV!xiZ!xi^!xij!xin!xi!Q!xi!W!xi#R!xi#T!xi#U!xi$w!xi%p!xi%q!xi~O!|!xi~P#/_On!xiu!xi~P#.TO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOZ!xi]!xi^!xi!W!xi%p!xi%q!xi~O!|,WO~P#1^O!|,XO~P#/_O!|,YOn!xiu!xi~P#1^O%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[OZ!xi]!xi^!xi!W!xi%q!xi~O!|,WO~P#3QO!|,XOj!xi~P!/VO!|,YOn!xiu!xi~P#3QO!|,XOj#Pi~PBROV!TXZeX^mX!W!TX$w!TX~O%`!TX~P#5RO[!TXhmXnmXrmXwmX!PmX!QmX!WmX!]mX%OmX%YmX~P#5ROn#TO!Q,aO!|,XO#R#dOj`X#T%eX#U%eX~PBRO[oO^YOaoOdoOh!POr!pOw}O!P#hO!WaO!]!QO!phO!qhO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O!Q-OO%O+yO~P#6{O!Q-PO%O+xO~P#6{O!Q-QO%O+{O~P#6{O#T,bO#U,bO~O#W,cO~O^!hOh!POr-TOw}O!P-_O!Q-WO!W-^O!]-eO%O!eO%Y!fO~O^!hOh!POr-TOw}O!Q-`O!W-^O!]-eO%O!eO%Y!fO~O!P-VO~P#9zO%O+wO~P!4vO!P-XO~O!V-YO!|#`O~PBRO!V-ZO~O!V-[O~O!W-dO~OP%ka%Oa~",goto:"!FW%sPP%tP%wP%zP'SP'XPPPP'`'cP'u'uP)w'u-_PPP0j0m0qP1V4b1VP7s8WP1VP8a8d8hP8p8w1VPP1V8{<`?vPPCY-_-_-_PCdCuCxPC{DQ'u'uDV'uES'u'u'u'uGUIW'uPPJR'uJUMjMjMj'u! r! r!#SP!$`!%d!&d'cP'cPP'cP!&yP!'V!'^!&yP!'a!'h!'n!'w!&yP!'z!(R!&y!(U!(fPP!&yP!(x!)UPP!&y!)Y!)c!&yP!)g!)gP!&yP!&yP!)j!)m!&v!&yP!&yPPP!&yP!&yP!)q!)q!)w!)}!*U!*[!*d!*j!*p!*w!*}!+T!+Z!.q!.x!/O!/X!/m!/s!/z!0Q!0W!0^!0d!0jPPPPPPPPP!0p!1f!1k!1{!2kPP!7P!:^P!>u!?Z!?_!@Z!@fP!@p!D_!Df!Di!DuPPPPPPPPPPPP!FSR!aPRyO!WXOScw!R!T!U!W#O#k#n#u$R$X&O&j&u&|'W'Y']'})W)|*k*w+gQ#pzU#r{#s%uQ#x|U$T!S$U&pQ$^!VQ$y!lR)U'RVROS#nQ#t{T%t#s%uR#t{qrOScw!U!V!W#O#k#n&|'W'Y)W*k+g%PoOSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^%O]OSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^#u!iW^!O!h!t!z#e#h#u#v#y#|#}$P$Q$T$W$v$x%W%Y%a%x%y&O&S&W&]&`&b&d&m'e'|'}(S([(c(i(o(|)l)|*P*Q*S*p*w*|+R+^+j+l,h-U-V-W-X-Y-Z-[-]-_-d'cbOSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dR$O!PT&c#}&dW%`#R&z*d+cQ&Q#vS&V#y&]S&`#}&dR*Y(b'cZOSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-d%fWOSWYacmnw!O!U!V!W!X!Z!_!q!z#O#Q#S#T#V#^#_#`#a#b#c#h#i#j#k#n#v#|$f$v$x%W%Y%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(i(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^S&b#}&d!{-]!h!t#e#u#y$P$Q$T$W%a%x%y&O&W&]&`&m'e'|'}(S([(c(o(|)l)|*Q*p*w+R+j+l,h-U-V-W-X-Y-Z-[-]-_-dQ#v|S$v!j!pU&P#v$v,hZ,h#x&Q&U&V-TS%{#u&OV){'})|*wR#z}T&[#y&]]&X#y&](S([(o*QZ&Z#y&](S(o*QT([&Y(]'s_OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|#}$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&S&W&]&`&b&d&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*P*Q*S*`*h*k*l*n*o*p*r*w*|+R+^+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-d'r_OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|#}$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&S&W&]&`&b&d&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*P*Q*S*`*h*k*l*n*o*p*r*w*|+R+^+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dR!w^'bbOSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dS&a#}&dR(d&bS!u]fX!x`&_(e(oQ!r[Q%O!qQ)d'aU)f'b)i*oR+X*nR%R!qR%P!qV)h'b)i*oV)g'b)i*odtOScw#O#k#n&|'Y+gQ$h!WQ&R#wQ&w$[S'S$c$iQ(V&TQ*O(RQ*V(WQ*b(yQ*c(zR+_+Q%PfOSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^%PgOSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^!q#Weg!o!y$[$_$c$j$m$q$}%^%b%d%m'V'p(z({)S)Y)^)c)e)q)t*i*s+T+V+W+Y,f,g,i,j,w,z-aR#fh#^mOSacmnw!X!Z!_!q#O#S#T#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&y&|'P'T'U'X'Y']'a'b'o'r(k(t)i)s*`*h*l*n*o*r+g-^!W#_e!y$j$m$q$}%b%d%j%k%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aW,T!o,n,q,tj,U$[$_$c(z)S*i,g,j,o,r,u,w,z[,V%^,f,i,p,s,v`,{Y,Q,T,W,Z,^,{-Ox,|!U!V!W&x'R'W)V)W*k+},R,U,X,[,_,a,b,c,|-Pg,}#Q#V'w+|,S,V,Y,],`,}-Q#^mOSacmnw!X!Z!_!q#O#S#T#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&y&|'P'T'U'X'Y']'a'b'o'r(k(t)i)s*`*h*l*n*o*r+g-^`,{Y,Q,T,W,Z,^,{-Ox,|!U!V!W&x'R'W)V)W*k+},R,U,X,[,_,a,b,c,|-Pg,}#Q#V'w+|,S,V,Y,],`,}-Q!Y#^e!y$j$m$q$}%b%d%i%j%k%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aY,Q!o,k,n,q,tl,R$[$_$c(z)S*i,g,j,l,o,r,u,w,z_,S%^,f,i,m,p,s,v!W#_e!y$j$m$q$}%b%d%j%k%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aW,T!o,n,q,tj,U$[$_$c(z)S*i,g,j,o,r,u,w,z],V%^,f,i,p,s,v!S#ae!y$j$m$q$}%b%d%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aS,Z!o,tf,[$[$_$c(z)S*i,g,j,u,w,zX,]%^,f,i,v!Q#be!y$j$m$q$}%b%d%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aQ,^!od,_$[$_$c(z)S*i,g,j,w,zV,`%^,f,iprOScw!U!V!W#O#k#n&|'W'Y)W*k+gR)a']etOScw#O#k#n&|'Y+gQ$S!RT&i$R&jR$S!RQ$V!ST&o$U&pQ&U#xR&m$TS(T&S&lV*{*S*|+^R$V!SQ$Y!TT&t$X&uR$Y!TdsOScw#O#k#n&|'Y+gT$p![!]dtOScw#O#k#n&|'Y+gQ*b(yR+_+QQ$a!VQ&{$_Q)T'RR*g)ST&|$`&}Q+b+SQ+m+fR+v+uT+g+a+hR$i!WR$l!YT'Y$k'ZXuOSw#nQ$s!`R'_$sSSO#nR!dSQ%u#sR'y%uUwOS#nR#mwQ&d#}R(g&dQ(c&`R*Z(cS!mX$^R$z!mQ(O%{R)}(OQ&]#yR(_&]Q(]&YR*X(]'r^OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|#}$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&S&W&]&`&b&d&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*P*Q*S*`*h*k*l*n*o*p*r*w*|+R+^+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dR!v^S'f%T+PR)m'fQ'c%RR)j'cW#Oc&|'Y+gR%[#O^#Ue$[$_$c$m)^,zU%e#U,O,PQ,O,fR,P,gQ&j$RR(m&jS*Q(S(oR*y*QQ*T(TR*}*TQ&p$UR(r&pQ&u$XR(w&uQ&}$`R)O&}Q+h+aR+o+hQ'Z$kR)['ZQ!cRQ#luQ#nyQ%Z!|Q&x$]Q'R$bQ'x%tQ(^&[Q(f&cQ(l&iQ(q&oR(v&tVxOS#nWuOSw#nY!|c#O&|'Y+gR%r#kdtOScw#O#k#n&|'Y+gQ$]!UQ$b!VQ$g!WQ)X'WQ*j)WR+U*kdeOScw#O#k#n&|'Y+gQ!oYQ!ya`#gmn,{,|,}-O-P-QQ$[!UQ$_!VQ$c!WQ$j!Xd$m!Z#i#j&g&s'P'T'U(k(tQ$q!_Q$}!qQ%^#QQ%b#SQ%d#TW%h#^,Q,R,SQ%i#_Q%j#`Q%k#aQ%l#bQ%m#cQ'V$fQ'p%cQ(z&xQ({&yQ)S'RQ)Y'XQ)^']Q)c'aU)e'b)i*oQ)q'oQ)t'rQ*i)VQ*s)sQ+T*hQ+V*lQ+W*nQ+Y*rS,f#V'wS,g,b,cQ,i+|Q,j+}Q,k,TQ,l,UQ,m,VQ,n,WQ,o,XQ,p,YQ,q,ZQ,r,[Q,s,]Q,t,^Q,u,_Q,v,`Q,w,aU,z'W)W*kV-a&l*`-^#bZW!O!h!t!z#e#h#u#v#y#|$P$Q$T$W$v$x%W%Y%a%x%y&O&W&]&`&m'e'|'}(S([(c(i(o(|)l)|*Q*p*w+R+j+l,h-U-V-W-X-Y-Z-[-]-_-d%P[OSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^$zdOSacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^S!gW-]Q!nYS#{!O-_Q$u!hS%T!t+jS%X!z-UQ%n#e[%o#h#|$x-V-W-XW%w#u'})|*wU&P#v$v,h[&X#y&](S([(o*QQ&f$PQ&h$QQ&n$TQ&r$WS'h%W-YS'i%Y-ZW'l%a(|+R+lS'{%x%yQ(Q&OQ(Y&WQ(d&`Q(p&mU)k'e)l*pQ)z'|Q*[(cS*^(i-[Q+P*`R-c-dS#w|!pS$w!j-TQ&T#xQ(R&QQ(W&UR(X&VT%|#u&OhqOScw!U!V#O#k#n&|'Y+gU$Q!R$R&jU$W!T$X&uQ$e!WY%y#u&O'})|*wQ)`']V-S'W)W*kS&[#y&]S*R(S(oR*z*QY&Y#y&](S(o*QR*W(['``OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dS&_#}&dW(S&S*S*|+^Q(e&bQ(o&lR*x*PS%U!t*`R+q+jR%S!qQ#PcQ(}&|Q)Z'YR+n+ghpOScw!U!V#O#k#n&|'Y+gQ$d!WQ$n!ZQ%g#VU%p#i'T,bU%q#j'U,cQ(j&gQ(u&sQ)Q'PQ)_']Q)y'wQ*_(kQ*a(tV-R'W)W*kT(U&S&l",nodeNames:"⚠ LineComment BlockComment SourceFile PackageClause package DefName ; ImportDecl import ImportSpec . String ) ( SpecList ExprStatement Number Bool Nil Rune VariableName TypedLiteral StructType struct } { StructBody FieldDecl FieldName , PointerType * FunctionType func Parameters Parameter ... InterfaceType interface InterfaceBody MethodElem UnderlyingType ~ TypeElem LogicOp ChannelType chan <- ParenthesizedType QualifiedType TypeName ParameterizedType ] [ TypeArgs ArrayType SliceType MapType map LiteralValue Element Key : Element Key ParenthesizedExpr FunctionLiteral Block Conversion SelectorExpr IndexExpr SliceExpr TypeAssertion CallExpr ParameterizedExpr Arguments CallExpr make new Arguments UnaryExp ArithOp LogicOp BitOp DerefOp BinaryExp ArithOp BitOp BitOp CompareOp LogicOp LogicOp SendStatement IncDecStatement IncDecOp Assignment = UpdateOp VarDecl := ConstDecl const ConstSpec SpecList TypeDecl type TypeSpec TypeParams TypeParam SpecList VarDecl var VarSpec SpecList LabeledStatement LabelName IfStatement if else SwitchStatement switch SwitchBlock Case case default TypeSwitchStatement SwitchBlock Case ForStatement for ForClause RangeClause range GoStatement go SelectStatement select SelectBlock Case ReceiveStatement ReturnStatement return GotoStatement break continue goto FallthroughStatement fallthrough DeferStatement defer FunctionDecl MethodDecl",maxTerm:218,context:trackTokens,nodeProps:[["isolate",-3,2,12,20,""],["group",-18,12,17,18,19,20,21,22,66,67,69,70,71,72,73,74,77,81,86,"Expr",-20,16,68,93,94,96,99,101,105,111,115,117,120,126,129,134,136,141,143,147,149,"Statement",-12,23,31,33,38,46,49,50,51,52,56,57,58,"Type"],["openedBy",13,"(",25,"{",53,"["],["closedBy",14,")",26,"}",54,"]"]],propSources:[goHighlighting],skippedNodes:[0,1,2,153],repeatNodeCount:23,tokenData:":b~RvXY#iYZ#i]^#ipq#iqr#zrs$Xuv&Pvw&^wx&yxy(qyz(vz{({{|)T|})e}!O)j!O!P)u!P!Q+}!Q!R,y!R![-t![!]2^!]!^2k!^!_2p!_!`3]!`!a3e!c!}3x!}#O4j#P#Q4o#Q#R4t#R#S4|#S#T9X#T#o3x#o#p9q#p#q9v#q#r:W#r#s:]$g;'S3x;'S;=`4d<%lO3x~#nS$y~XY#iYZ#i]^#ipq#iU$PP%hQ!_!`$SS$XO!|S~$^W[~OY$XZr$Xrs$vs#O$X#O#P${#P;'S$X;'S;=`%y<%lO$X~${O[~~%ORO;'S$X;'S;=`%X;=`O$X~%^X[~OY$XZr$Xrs$vs#O$X#O#P${#P;'S$X;'S;=`%y;=`<%l$X<%lO$X~%|P;=`<%l$X~&UP%l~!_!`&X~&^O#U~~&cR%j~vw&l!_!`&X#Q#R&q~&qO%p~~&vP%o~!_!`&X~'OWd~OY&yZw&ywx'hx#O&y#O#P'm#P;'S&y;'S;=`(k<%lO&y~'mOd~~'pRO;'S&y;'S;=`'y;=`O&y~(OXd~OY&yZw&ywx'hx#O&y#O#P'm#P;'S&y;'S;=`(k;=`<%l&y<%lO&y~(nP;=`<%l&y~(vO^~~({O]~~)QP%Y~!_!`&X~)YQ%f~{|)`!_!`&X~)eO#R~~)jOn~~)oQ%g~}!O)`!_!`&X~)zRZS!O!P*T!Q![*`#R#S+w~*WP!O!P*Z~*`Ou~Q*eTaQ!Q![*`!g!h*t#R#S+w#X#Y*t#]#^+rQ*wS{|+T}!O+T!Q![+^#R#S+lQ+WQ!Q![+^#R#S+lQ+cRaQ!Q![+^#R#S+l#]#^+rQ+oP!Q![+^Q+wOaQQ+zP!Q![*`~,SR%k~z{,]!P!Q,b!_!`&X~,bO$z~~,gSP~OY,bZ;'S,b;'S;=`,s<%lO,b~,vP;=`<%l,bQ-O[aQ!O!P*`!Q![-t!d!e.c!g!h*t!q!r/Z!z!{/x#R#S.]#U#V.c#X#Y*t#]#^+r#c#d/Z#l#m/xQ-yUaQ!O!P*`!Q![-t!g!h*t#R#S.]#X#Y*t#]#^+rQ.`P!Q![-tQ.fR!Q!R.o!R!S.o#R#S/QQ.tSaQ!Q!R.o!R!S.o#R#S/Q#]#^+rQ/TQ!Q!R.o!R!S.oQ/^Q!Q!Y/d#R#S/rQ/iRaQ!Q!Y/d#R#S/r#]#^+rQ/uP!Q!Y/dQ/{T!O!P0[!Q![1c!c!i1c#R#S2Q#T#Z1cQ0_S!Q![0k!c!i0k#R#S1V#T#Z0kQ0pVaQ!Q![0k!c!i0k!r!s*t#R#S1V#T#Z0k#]#^+r#d#e*tQ1YR!Q![0k!c!i0k#T#Z0kQ1hWaQ!O!P0k!Q![1c!c!i1c!r!s*t#R#S2Q#T#Z1c#]#^+r#d#e*tQ2TR!Q![1c!c!i1c#T#Z1c~2cP!a~!_!`2f~2kO#W~~2pOV~~2uR!|S}!O3O!^!_3T!_!`$S~3TO!Q~~3YP%m~!_!`&X~3bP#T~!_!`$S~3jQ!|S!_!`$S!`!a3p~3uP%n~!_!`&X~3}V%O~!Q![3x!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~4gP;=`<%l3x~4oO!W~~4tO!V~~4yP%i~!_!`&X~5RV%O~!Q![5h!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~5o^aQ%O~!O!P*`!Q![5h!c!g3x!g!h6k!h!}3x#R#S4|#T#X3x#X#Y6k#Y#]3x#]#^8k#^#o3x$g;'S3x;'S;=`4d<%lO3x~6pX%O~{|+T}!O+T!Q![7]!c!}3x#R#S8P#T#o3x$g;'S3x;'S;=`4d<%lO3x~7dXaQ%O~!Q![7]!c!}3x#R#S8P#T#]3x#]#^8k#^#o3x$g;'S3x;'S;=`4d<%lO3x~8UV%O~!Q![7]!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~8rVaQ%O~!Q![3x!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~9[TO#S9X#S#T$v#T;'S9X;'S;=`9k<%lO9X~9nP;=`<%l9X~9vOj~~9{Q%`~!_!`&X#p#q:R~:WO%q~~:]Oi~~:bO{~",tokenizers:[semicolon$2,1,2,new LocalTokenGroup("j~RQYZXz{^~^O$|~~aP!P!Qd~iO$}~~",25,181)],topRules:{SourceFile:[0,3]},dynamicPrecedences:{19:1,51:-1,55:2,69:-1,108:-1},specialized:[{term:184,get:O=>spec_identifier$4[O]||-1}],tokenPrec:5451});class CompletionContext{constructor(O,e,t,i){this.state=O,this.pos=e,this.explicit=t,this.view=i,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(O){let e=syntaxTree(this.state).resolveInner(this.pos,-1);for(;e&&O.indexOf(e.name)<0;)e=e.parent;return e?{from:e.from,to:this.pos,text:this.state.sliceDoc(e.from,this.pos),type:e.type}:null}matchBefore(O){let e=this.state.doc.lineAt(this.pos),t=Math.max(e.from,this.pos-250),i=e.text.slice(t-e.from,this.pos-e.from),n=i.search(ensureAnchor(O));return n<0?null:{from:t+n,to:this.pos,text:i.slice(n)}}get aborted(){return null==this.abortListeners}addEventListener(O,e,t){"abort"==O&&this.abortListeners&&(this.abortListeners.push(e),t&&t.onDocChange&&(this.abortOnDocChange=!0))}}function toSet(O){let e=Object.keys(O).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function prefixMatch(O){let e=Object.create(null),t=Object.create(null);for(let{label:i}of O){e[i[0]]=!0;for(let O=1;O<i.length;O++)t[i[O]]=!0}let i=toSet(e)+toSet(t)+"*$";return[new RegExp("^"+i),new RegExp(i)]}function completeFromList(O){let e=O.map((O=>"string"==typeof O?{label:O}:O)),[t,i]=e.every((O=>/^\w+$/.test(O.label)))?[/\w*$/,/\w+$/]:prefixMatch(e);return O=>{let n=O.matchBefore(i);return n||O.explicit?{from:n?n.from:O.pos,options:e,validFor:t}:null}}function ifNotIn(O,e){return t=>{for(let e=syntaxTree(t.state).resolveInner(t.pos,-1);e;e=e.parent){if(O.indexOf(e.name)>-1)return null;if(e.type.isTop)break}return e(t)}}function ensureAnchor(O,e){var t;let{source:i}=O,n="$"!=i[i.length-1];return n?new RegExp(`(?:${i})${n?"$":""}`,null!==(t=O.flags)&&void 0!==t?t:O.ignoreCase?"i":""):O}const pickedCompletion=Annotation.define(),baseTheme=EditorView.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".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:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",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",boxSizing:"content-box"},".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 FieldPos{constructor(O,e,t,i){this.field=O,this.line=e,this.from=t,this.to=i}}class FieldRange{constructor(O,e,t){this.field=O,this.from=e,this.to=t}map(O){let e=O.mapPos(this.from,-1,MapMode.TrackDel),t=O.mapPos(this.to,1,MapMode.TrackDel);return null==e||null==t?null:new FieldRange(this.field,e,t)}}class Snippet{constructor(O,e){this.lines=O,this.fieldPositions=e}instantiate(O,e){let t=[],i=[e],n=O.doc.lineAt(e),r=/^\s*/.exec(n.text)[0];for(let n of this.lines){if(t.length){let t=r,a=/^\t*/.exec(n)[0].length;for(let e=0;e<a;e++)t+=O.facet(indentUnit);i.push(e+t.length-a),n=t+n.slice(a)}t.push(n),e+=n.length+1}let a=this.fieldPositions.map((O=>new FieldRange(O.field,i[O.line]+O.from,i[O.line]+O.to)));return{text:t,ranges:a}}static parse(O){let e,t=[],i=[],n=[];for(let r of O.split(/\r\n?|\n/)){for(;e=/[#$]\{(?:(\d+)(?::([^}]*))?|((?:\\[{}]|[^}])*))\}/.exec(r);){let O=e[1]?+e[1]:null,a=e[2]||e[3]||"",s=-1,o=a.replace(/\\[{}]/g,(O=>O[1]));for(let e=0;e<t.length;e++)(null!=O?t[e].seq==O:o&&t[e].name==o)&&(s=e);if(s<0){let e=0;for(;e<t.length&&(null==O||null!=t[e].seq&&t[e].seq<O);)e++;t.splice(e,0,{seq:O,name:o}),s=e;for(let O of n)O.field>=s&&O.field++}n.push(new FieldPos(s,i.length,e.index,e.index+o.length)),r=r.slice(0,e.index)+a+r.slice(e.index+e[0].length)}r=r.replace(/\\([{}])/g,((O,e,t)=>{for(let O of n)O.line==i.length&&O.from>t&&(O.from--,O.to--);return e})),i.push(r)}return new Snippet(i,n)}}let fieldMarker=Decoration.widget({widget:new class extends WidgetType{toDOM(){let O=document.createElement("span");return O.className="cm-snippetFieldPosition",O}ignoreEvent(){return!1}}}),fieldRange=Decoration.mark({class:"cm-snippetField"});class ActiveSnippet{constructor(O,e){this.ranges=O,this.active=e,this.deco=Decoration.set(O.map((O=>(O.from==O.to?fieldMarker:fieldRange).range(O.from,O.to))))}map(O){let e=[];for(let t of this.ranges){let i=t.map(O);if(!i)return null;e.push(i)}return new ActiveSnippet(e,this.active)}selectionInsideField(O){return O.ranges.every((O=>this.ranges.some((e=>e.field==this.active&&e.from<=O.from&&e.to>=O.to))))}}const setActive=StateEffect.define({map:(O,e)=>O&&O.map(e)}),moveToField=StateEffect.define(),snippetState=StateField.define({create:()=>null,update(O,e){for(let t of e.effects){if(t.is(setActive))return t.value;if(t.is(moveToField)&&O)return new ActiveSnippet(O.ranges,t.value)}return O&&e.docChanged&&(O=O.map(e.changes)),O&&e.selection&&!O.selectionInsideField(e.selection)&&(O=null),O},provide:O=>EditorView.decorations.from(O,(O=>O?O.deco:Decoration.none))});function fieldSelection(O,e){return EditorSelection.create(O.filter((O=>O.field==e)).map((O=>EditorSelection.range(O.from,O.to))))}function snippet(O){let e=Snippet.parse(O);return(O,t,i,n)=>{let{text:r,ranges:a}=e.instantiate(O.state,i),{main:s}=O.state.selection,o={changes:{from:i,to:n==s.from?s.to:n,insert:Text.of(r)},scrollIntoView:!0,annotations:t?[pickedCompletion.of(t),Transaction.userEvent.of("input.complete")]:void 0};if(a.length&&(o.selection=fieldSelection(a,0)),a.some((O=>O.field>0))){let e=new ActiveSnippet(a,0),t=o.effects=[setActive.of(e)];void 0===O.state.field(snippetState,!1)&&t.push(StateEffect.appendConfig.of([snippetState,addSnippetKeymap,snippetPointerHandler,baseTheme]))}O.dispatch(O.state.update(o))}}function moveField(O){return({state:e,dispatch:t})=>{let i=e.field(snippetState,!1);if(!i||O<0&&0==i.active)return!1;let n=i.active+O,r=O>0&&!i.ranges.some((e=>e.field==n+O));return t(e.update({selection:fieldSelection(i.ranges,n),effects:setActive.of(r?null:new ActiveSnippet(i.ranges,n)),scrollIntoView:!0})),!0}}const clearSnippet=({state:O,dispatch:e})=>!!O.field(snippetState,!1)&&(e(O.update({effects:setActive.of(null)})),!0),nextSnippetField=moveField(1),prevSnippetField=moveField(-1),defaultSnippetKeymap=[{key:"Tab",run:nextSnippetField,shift:prevSnippetField},{key:"Escape",run:clearSnippet}],snippetKeymap=Facet.define({combine:O=>O.length?O[0]:defaultSnippetKeymap}),addSnippetKeymap=Prec.highest(keymap.compute([snippetKeymap],(O=>O.facet(snippetKeymap))));function snippetCompletion(O,e){return Object.assign(Object.assign({},e),{apply:snippet(O)})}const snippetPointerHandler=EditorView.domEventHandlers({mousedown(O,e){let t,i=e.state.field(snippetState,!1);if(!i||null==(t=e.posAtCoords({x:O.clientX,y:O.clientY})))return!1;let n=i.ranges.find((O=>O.from<=t&&O.to>=t));return!(!n||n.field==i.active)&&(e.dispatch({selection:fieldSelection(i.ranges,n.field),effects:setActive.of(i.ranges.some((O=>O.field>n.field))?new ActiveSnippet(i.ranges,n.field):null),scrollIntoView:!0}),!0)}}),closedBracket=new class extends RangeValue{};closedBracket.startSide=1,closedBracket.endSide=-1;const snippets$2=[snippetCompletion("func ${name}(${params}) ${type} {\n\t${}\n}",{label:"func",detail:"declaration",type:"keyword"}),snippetCompletion("func (${receiver}) ${name}(${params}) ${type} {\n\t${}\n}",{label:"func",detail:"method declaration",type:"keyword"}),snippetCompletion("var ${name} = ${value}",{label:"var",detail:"declaration",type:"keyword"}),snippetCompletion("type ${name} ${type}",{label:"type",detail:"declaration",type:"keyword"}),snippetCompletion("const ${name} = ${value}",{label:"const",detail:"declaration",type:"keyword"}),snippetCompletion("type ${name} = ${type}",{label:"type",detail:"alias declaration",type:"keyword"}),snippetCompletion("for ${init}; ${test}; ${update} {\n\t${}\n}",{label:"for",detail:"loop",type:"keyword"}),snippetCompletion("for ${i} := range ${value} {\n\t${}\n}",{label:"for",detail:"range",type:"keyword"}),snippetCompletion("select {\n\t${}\n}",{label:"select",detail:"statement",type:"keyword"}),snippetCompletion("case ${}:\n${}",{label:"case",type:"keyword"}),snippetCompletion("switch ${} {\n\t${}\n}",{label:"switch",detail:"statement",type:"keyword"}),snippetCompletion("switch ${}.(${type}) {\n\t${}\n}",{label:"switch",detail:"type statement",type:"keyword"}),snippetCompletion("if ${} {\n\t${}\n}",{label:"if",detail:"block",type:"keyword"}),snippetCompletion("if ${} {\n\t${}\n} else {\n\t${}\n}",{label:"if",detail:"/ else block",type:"keyword"}),snippetCompletion('import ${name} "${module}"\n${}',{label:"import",detail:"declaration",type:"keyword"})],cache$2=new NodeWeakMap,ScopeNodes$2=new Set(["SourceFile","Block","FunctionDecl","MethodDecl","FunctionLiteral","ForStatement","SwitchStatement","TypeSwitchStatement","IfStatement"]);function defIDs(O,e){return(t,i)=>{O:for(let n=t.node.firstChild,r=0,a=null;;){for(;!n;){if(!r)break O;r--,n=a.nextSibling,a=a.parent}e&&n.name==e||"SpecList"==n.name?(r++,a=n,n=n.firstChild):("DefName"==n.name&&i(n,O),n=n.nextSibling)}return!0}}const gatherCompletions$2={FunctionDecl:defIDs("function"),VarDecl:defIDs("var","VarSpec"),ConstDecl:defIDs("constant","ConstSpec"),TypeDecl:defIDs("type","TypeSpec"),ImportDecl:defIDs("constant","ImportSpec"),Parameter:defIDs("var"),__proto__:null};function getScope$2(O,e){let t=cache$2.get(e);if(t)return t;let i=[],n=!0;function r(e,t){let n=O.sliceString(e.from,e.to);i.push({label:n,type:t})}return e.cursor(IterMode.IncludeAnonymous).iterate((e=>{if(n)n=!1;else if(e.name){let O=gatherCompletions$2[e.name];if(O&&O(e,r)||ScopeNodes$2.has(e.name))return!1}else if(e.to-e.from>8192){for(let t of getScope$2(O,e.node))i.push(t);return!1}})),cache$2.set(e,i),i}const Identifier$4=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,dontComplete$2=["String","LineComment","BlockComment","DefName","LabelName","FieldName",".","?."],localCompletionSource$2=O=>{let e=syntaxTree(O.state).resolveInner(O.pos,-1);if(dontComplete$2.indexOf(e.name)>-1)return null;let t="VariableName"==e.name||e.to-e.from<20&&Identifier$4.test(O.state.sliceDoc(e.from,e.to));if(!t&&!O.explicit)return null;let i=[];for(let t=e;t;t=t.parent)ScopeNodes$2.has(t.name)&&(i=i.concat(getScope$2(O.state.doc,t)));return{options:i,from:t?e.from:O.pos,validFor:Identifier$4}},goLanguage=LRLanguage.define({name:"go",parser:parser$c.configure({props:[indentNodeProp.add({IfStatement:continuedIndent({except:/^\s*({|else\b)/}),LabeledStatement:flatIndent,"SwitchBlock SelectBlock":O=>{let e=O.textAfter,t=/^\s*\}/.test(e),i=/^\s*(case|default)\b/.test(e);return O.baseIndent+(t||i?0:O.unit)},Block:delimitedIndent({closing:"}"}),BlockComment:()=>null,Statement:continuedIndent({except:/^{/})}),foldNodeProp.add({"Block SwitchBlock SelectBlock LiteralValue InterfaceType StructType SpecList":foldInside,BlockComment:O=>({from:O.from+2,to:O.to-2})})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case\b|default\b|\})$/}});let kwCompletion$1=O=>({label:O,type:"keyword"});const keywords$3="interface struct chan map package go return break continue goto fallthrough else defer range true false nil".split(" ").map(kwCompletion$1);function go(){let O=snippets$2.concat(keywords$3);return new LanguageSupport(goLanguage,[goLanguage.data.of({autocomplete:ifNotIn(dontComplete$2,completeFromList(O))}),goLanguage.data.of({autocomplete:localCompletionSource$2})])}const scriptText=54,StartCloseScriptTag=1,styleText=55,StartCloseStyleTag=2,textareaText=56,StartCloseTextareaTag=3,EndTag=4,SelfClosingEndTag=5,StartTag$1=6,StartScriptTag=7,StartStyleTag=8,StartTextareaTag=9,StartSelfClosingTag=10,StartCloseTag$1=11,NoMatchStartCloseTag=12,MismatchedStartCloseTag=13,missingCloseTag=57,IncompleteCloseTag=14,commentContent$1$1=58,Element$3=20,TagName=22,Attribute=23,AttributeName=24,AttributeValue=26,UnquotedAttributeValue=27,ScriptText=28,StyleText=31,TextareaText=34,OpenTag$1=36,CloseTag=37,Dialect_noMatch=0,Dialect_selfClosing=1,selfClosers$1={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},closeOnOpen={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function nameChar$1(O){return 45==O||46==O||58==O||O>=65&&O<=90||95==O||O>=97&&O<=122||O>=161}function isSpace$3(O){return 9==O||10==O||13==O||32==O}let cachedName$1=null,cachedInput$1=null,cachedPos$1=0;function tagNameAfter$1(O,e){let t=O.pos+e;if(cachedPos$1==t&&cachedInput$1==O)return cachedName$1;let i=O.peek(e);for(;isSpace$3(i);)i=O.peek(++e);let n="";for(;nameChar$1(i);)n+=String.fromCharCode(i),i=O.peek(++e);return cachedInput$1=O,cachedPos$1=t,cachedName$1=n?n.toLowerCase():i==question$1||i==bang?void 0:null}const lessThan=60,greaterThan=62,slash$1=47,question$1=63,bang=33,dash=45;function ElementContext$1(O,e){this.name=O,this.parent=e}const startTagTerms=[6,10,7,8,9],elementContext$1=new ContextTracker({start:null,shift:(O,e,t,i)=>startTagTerms.indexOf(e)>-1?new ElementContext$1(tagNameAfter$1(i,1)||"",O):O,reduce:(O,e)=>20==e&&O?O.parent:O,reuse(O,e,t,i){let n=e.type.id;return 6==n||36==n?new ElementContext$1(tagNameAfter$1(i,1)||"",O):O},strict:!1}),tagStart=new ExternalTokenizer(((O,e)=>{if(60!=O.next)return void(O.next<0&&e.context&&O.acceptToken(57));O.advance();let t=47==O.next;t&&O.advance();let i=tagNameAfter$1(O,0);if(void 0===i)return;if(!i)return O.acceptToken(t?14:6);let n=e.context?e.context.name:null;if(t){if(i==n)return O.acceptToken(11);if(n&&implicitlyClosed[n])return O.acceptToken(57,-2);if(e.dialectEnabled(0))return O.acceptToken(12);for(let O=e.context;O;O=O.parent)if(O.name==i)return;O.acceptToken(13)}else{if("script"==i)return O.acceptToken(7);if("style"==i)return O.acceptToken(8);if("textarea"==i)return O.acceptToken(9);if(selfClosers$1.hasOwnProperty(i))return O.acceptToken(10);n&&closeOnOpen[n]&&closeOnOpen[n][i]?O.acceptToken(57,-1):O.acceptToken(6)}}),{contextual:!0}),commentContent$2=new ExternalTokenizer((O=>{for(let e=0,t=0;;t++){if(O.next<0){t&&O.acceptToken(58);break}if(45==O.next)e++;else{if(62==O.next&&e>=2){t>=3&&O.acceptToken(58,-2);break}e=0}O.advance()}}));function inForeignElement(O){for(;O;O=O.parent)if("svg"==O.name||"math"==O.name)return!0;return!1}const endTag=new ExternalTokenizer(((O,e)=>{if(47==O.next&&62==O.peek(1)){let t=e.dialectEnabled(1)||inForeignElement(e.context);O.acceptToken(t?5:4,2)}else 62==O.next&&O.acceptToken(4,1)}));function contentTokenizer(O,e,t){let i=2+O.length;return new ExternalTokenizer((n=>{for(let r=0,a=0,s=0;;s++){if(n.next<0){s&&n.acceptToken(e);break}if(0==r&&60==n.next||1==r&&47==n.next||r>=2&&r<i&&n.next==O.charCodeAt(r-2))r++,a++;else if(2!=r&&r!=i||!isSpace$3(n.next)){if(r==i&&62==n.next){s>a?n.acceptToken(e,-a):n.acceptToken(t,-(a-2));break}if((10==n.next||13==n.next)&&s){n.acceptToken(e,1);break}r=a=0}else a++;n.advance()}}))}const scriptTokens=contentTokenizer("script",54,1),styleTokens=contentTokenizer("style",55,2),textareaTokens=contentTokenizer("textarea",56,3),htmlHighlighting=styleTags({"Text RawText":tags$1.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":tags$1.angleBracket,TagName:tags$1.tagName,"MismatchedCloseTag/TagName":[tags$1.tagName,tags$1.invalid],AttributeName:tags$1.attributeName,"AttributeValue UnquotedAttributeValue":tags$1.attributeValue,Is:tags$1.definitionOperator,"EntityReference CharacterReference":tags$1.character,Comment:tags$1.blockComment,ProcessingInst:tags$1.processingInstruction,DoctypeDecl:tags$1.documentMeta}),parser$b=LRParser.deserialize({version:14,states:",xOVO!rOOO!WQ#tO'#CqO!]Q#tO'#CzO!bQ#tO'#C}O!gQ#tO'#DQO!lQ#tO'#DSO!qOaO'#CpO!|ObO'#CpO#XOdO'#CpO$eO!rO'#CpOOO`'#Cp'#CpO$lO$fO'#DTO$tQ#tO'#DVO$yQ#tO'#DWOOO`'#Dk'#DkOOO`'#DY'#DYQVO!rOOO%OQ&rO,59]O%ZQ&rO,59fO%fQ&rO,59iO%qQ&rO,59lO%|Q&rO,59nOOOa'#D^'#D^O&XOaO'#CxO&dOaO,59[OOOb'#D_'#D_O&lObO'#C{O&wObO,59[OOOd'#D`'#D`O'POdO'#DOO'[OdO,59[OOO`'#Da'#DaO'dO!rO,59[O'kQ#tO'#DROOO`,59[,59[OOOp'#Db'#DbO'pO$fO,59oOOO`,59o,59oO'xQ#|O,59qO'}Q#|O,59rOOO`-E7W-E7WO(SQ&rO'#CsOOQW'#DZ'#DZO(bQ&rO1G.wOOOa1G.w1G.wOOO`1G/Y1G/YO(mQ&rO1G/QOOOb1G/Q1G/QO(xQ&rO1G/TOOOd1G/T1G/TO)TQ&rO1G/WOOO`1G/W1G/WO)`Q&rO1G/YOOOa-E7[-E7[O)kQ#tO'#CyOOO`1G.v1G.vOOOb-E7]-E7]O)pQ#tO'#C|OOOd-E7^-E7^O)uQ#tO'#DPOOO`-E7_-E7_O)zQ#|O,59mOOOp-E7`-E7`OOO`1G/Z1G/ZOOO`1G/]1G/]OOO`1G/^1G/^O*PQ,UO,59_OOQW-E7X-E7XOOOa7+$c7+$cOOO`7+$t7+$tOOOb7+$l7+$lOOOd7+$o7+$oOOO`7+$r7+$rO*[Q#|O,59eO*aQ#|O,59hO*fQ#|O,59kOOO`1G/X1G/XO*kO7[O'#CvO*|OMhO'#CvOOQW1G.y1G.yOOO`1G/P1G/POOO`1G/S1G/SOOO`1G/V1G/VOOOO'#D['#D[O+_O7[O,59bOOQW,59b,59bOOOO'#D]'#D]O+pOMhO,59bOOOO-E7Y-E7YOOQW1G.|1G.|OOOO-E7Z-E7Z",stateData:",]~O!^OS~OUSOVPOWQOXROYTO[]O][O^^O`^Oa^Ob^Oc^Ox^O{_O!dZO~OfaO~OfbO~OfcO~OfdO~OfeO~O!WfOPlP!ZlP~O!XiOQoP!ZoP~O!YlORrP!ZrP~OUSOVPOWQOXROYTOZqO[]O][O^^O`^Oa^Ob^Oc^Ox^O!dZO~O!ZrO~P#dO![sO!euO~OfvO~OfwO~OS|OT}OhyO~OS!POT}OhyO~OS!ROT}OhyO~OS!TOT}OhyO~OS}OT}OhyO~O!WfOPlX!ZlX~OP!WO!Z!XO~O!XiOQoX!ZoX~OQ!ZO!Z!XO~O!YlORrX!ZrX~OR!]O!Z!XO~O!Z!XO~P#dOf!_O~O![sO!e!aO~OS!bO~OS!cO~Oi!dOSgXTgXhgX~OS!fOT!gOhyO~OS!hOT!gOhyO~OS!iOT!gOhyO~OS!jOT!gOhyO~OS!gOT!gOhyO~Of!kO~Of!lO~Of!mO~OS!nO~Ok!qO!`!oO!b!pO~OS!rO~OS!sO~OS!tO~Oa!uOb!uOc!uO!`!wO!a!uO~Oa!xOb!xOc!xO!b!wO!c!xO~Oa!uOb!uOc!uO!`!{O!a!uO~Oa!xOb!xOc!xO!b!{O!c!xO~OT~bac!dx{!d~",goto:"%p!`PPPPPPPPPPPPPPPPPPPP!a!gP!mPP!yP!|#P#S#Y#]#`#f#i#l#r#x!aP!a!aP$O$U$l$r$x%O%U%[%bPPPPPPPP%hX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:67,context:elementContext$1,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,21,30,33,36,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,29,32,35,37,"OpenTag"],["group",-9,14,17,18,19,20,39,40,41,42,"Entity",16,"Entity TextContent",-3,28,31,34,"TextContent Entity"],["isolate",-11,21,29,30,32,33,35,36,37,38,41,42,"ltr",-3,26,27,39,""]],propSources:[htmlHighlighting],skippedNodes:[0],repeatNodeCount:9,tokenData:"!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|c`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bX`P!a`!cpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UV`P!cpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pT`POv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!cpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({W`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!a`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!a`!cpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYkWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]``P!a`!cp!^^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljhS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebhSkWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXhSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vchS`P!a`!cpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!`h`P!cpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WihSkWc!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zbkWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOa!R!R7tP;=`<%l7S!Z8OYkWa!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{ihSkWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbhSkWa!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QchSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXhSa!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TakWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOb!R!RAwP;=`<%lAY!ZBRYkWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbhSkWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbhSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXhSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!bx`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYlhS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_khS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_X`P!a`!cp!eQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZhSfQ`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!a`!cpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!a`!cp!dPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!a`!cpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!a`!cpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!a`!cpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!a`!cpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!a`!cpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!a`!cpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!a`!cpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!cpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO{PP!-nP;=`<%l!-Sq!-xS!cp{POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!a`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!a`{POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!a`!cp{POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!a`!cpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!a`!cpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!a`!cpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!a`!cpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!a`!cpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!a`!cpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!cpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOxPP!7TP;=`<%l!6Vq!7]V!cpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!cpxPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!a`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!a`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!a`xPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!a`!cpxPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXiS`P!a`!cpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X",tokenizers:[scriptTokens,styleTokens,textareaTokens,endTag,tagStart,commentContent$2,0,1,2,3,4,5],topRules:{Document:[0,15]},dialects:{noMatch:0,selfClosing:509},tokenPrec:511});function getAttrs(O,e){let t=Object.create(null);for(let i of O.getChildren(23)){let O=i.getChild(24),n=i.getChild(26)||i.getChild(27);O&&(t[e.read(O.from,O.to)]=n?26==n.type.id?e.read(n.from+1,n.to-1):e.read(n.from,n.to):"")}return t}function findTagName(O,e){let t=O.getChild(22);return t?e.read(t.from,t.to):" "}function maybeNest(O,e,t){let i;for(let n of t)if(!n.attrs||n.attrs(i||(i=getAttrs(O.node.parent.firstChild,e))))return{parser:n.parser};return null}function configureNesting(O=[],e=[]){let t=[],i=[],n=[],r=[];for(let e of O){("script"==e.tag?t:"style"==e.tag?i:"textarea"==e.tag?n:r).push(e)}let a=e.length?Object.create(null):null;for(let O of e)(a[O.name]||(a[O.name]=[])).push(O);return parseMixed(((O,e)=>{let s=O.type.id;if(28==s)return maybeNest(O,e,t);if(31==s)return maybeNest(O,e,i);if(34==s)return maybeNest(O,e,n);if(20==s&&r.length){let t,i=O.node,n=i.firstChild,a=n&&findTagName(n,e);if(a)for(let O of r)if(O.tag==a&&(!O.attrs||O.attrs(t||(t=getAttrs(n,e))))){let e=i.lastChild,t=37==e.type.id?e.from:i.to;if(t>n.to)return{parser:O.parser,overlay:[{from:n.to,to:t}]}}}if(a&&23==s){let t,i=O.node;if(t=i.firstChild){let O=a[e.read(t.from,t.to)];if(O)for(let t of O){if(t.tagName&&t.tagName!=findTagName(i.parent,e))continue;let O=i.lastChild;if(26==O.type.id){let e=O.from+1,i=O.lastChild,n=O.to-(i&&i.isError?0:1);if(n>e)return{parser:t.parser,overlay:[{from:e,to:n}]}}else if(27==O.type.id)return{parser:t.parser,overlay:[{from:O.from,to:O.to}]}}}}return null}))}const noSemi=314,noSemiType=315,incdec=1,incdecPrefix=2,questionDot=3,JSXStartTag=4,insertSemi=316,spaces=318,newline$2=319,LineComment$1=5,BlockComment$1=6,Dialect_jsx=0,space$2=[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],braceR=125,semicolon$1=59,slash=47,star=42,plus=43,minus=45,lt=60,comma=44,question=63,dot$1=46,bracketL=91,trackNewline=new ContextTracker({start:!1,shift:(O,e)=>5==e||6==e||318==e?O:319==e,strict:!1}),insertSemicolon=new ExternalTokenizer(((O,e)=>{let{next:t}=O;(125==t||-1==t||e.context)&&O.acceptToken(316)}),{contextual:!0,fallback:!0}),noSemicolon=new ExternalTokenizer(((O,e)=>{let t,{next:i}=O;space$2.indexOf(i)>-1||(47!=i||47!=(t=O.peek(1))&&42!=t)&&(125==i||59==i||-1==i||e.context||O.acceptToken(314))}),{contextual:!0}),noSemicolonType=new ExternalTokenizer(((O,e)=>{91!=O.next||e.context||O.acceptToken(315)}),{contextual:!0}),operatorToken=new ExternalTokenizer(((O,e)=>{let{next:t}=O;if(43==t||45==t){if(O.advance(),t==O.next){O.advance();let t=!e.context&&e.canShift(1);O.acceptToken(t?1:2)}}else 63==t&&46==O.peek(1)&&(O.advance(),O.advance(),(O.next<48||O.next>57)&&O.acceptToken(3))}),{contextual:!0});function identifierChar(O,e){return O>=65&&O<=90||O>=97&&O<=122||95==O||O>=192||!e&&O>=48&&O<=57}const jsx=new ExternalTokenizer(((O,e)=>{if(60!=O.next||!e.dialectEnabled(0))return;if(O.advance(),47==O.next)return;let t=0;for(;space$2.indexOf(O.next)>-1;)O.advance(),t++;if(identifierChar(O.next,!0)){for(O.advance(),t++;identifierChar(O.next,!1);)O.advance(),t++;for(;space$2.indexOf(O.next)>-1;)O.advance(),t++;if(44==O.next)return;for(let e=0;;e++){if(7==e){if(!identifierChar(O.next,!0))return;break}if(O.next!="extends".charCodeAt(e))break;O.advance(),t++}}O.acceptToken(4,-t)})),jsHighlight=styleTags({"get set async static":tags$1.modifier,"for while do if else switch try catch finally return throw break continue default case":tags$1.controlKeyword,"in of await yield void typeof delete instanceof":tags$1.operatorKeyword,"let var const using function class extends":tags$1.definitionKeyword,"import export from":tags$1.moduleKeyword,"with debugger as new":tags$1.keyword,TemplateString:tags$1.special(tags$1.string),super:tags$1.atom,BooleanLiteral:tags$1.bool,this:tags$1.self,null:tags$1.null,Star:tags$1.modifier,VariableName:tags$1.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":tags$1.function(tags$1.variableName),VariableDefinition:tags$1.definition(tags$1.variableName),Label:tags$1.labelName,PropertyName:tags$1.propertyName,PrivatePropertyName:tags$1.special(tags$1.propertyName),"CallExpression/MemberExpression/PropertyName":tags$1.function(tags$1.propertyName),"FunctionDeclaration/VariableDefinition":tags$1.function(tags$1.definition(tags$1.variableName)),"ClassDeclaration/VariableDefinition":tags$1.definition(tags$1.className),"NewExpression/VariableName":tags$1.className,PropertyDefinition:tags$1.definition(tags$1.propertyName),PrivatePropertyDefinition:tags$1.definition(tags$1.special(tags$1.propertyName)),UpdateOp:tags$1.updateOperator,"LineComment Hashbang":tags$1.lineComment,BlockComment:tags$1.blockComment,Number:tags$1.number,String:tags$1.string,Escape:tags$1.escape,ArithOp:tags$1.arithmeticOperator,LogicOp:tags$1.logicOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,RegExp:tags$1.regexp,Equals:tags$1.definitionOperator,Arrow:tags$1.function(tags$1.punctuation),": Spread":tags$1.punctuation,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace,"InterpolationStart InterpolationEnd":tags$1.special(tags$1.brace),".":tags$1.derefOperator,", ;":tags$1.separator,"@":tags$1.meta,TypeName:tags$1.typeName,TypeDefinition:tags$1.definition(tags$1.typeName),"type enum interface implements namespace module declare":tags$1.definitionKeyword,"abstract global Privacy readonly override":tags$1.modifier,"is keyof unique infer asserts":tags$1.operatorKeyword,JSXAttributeValue:tags$1.attributeValue,JSXText:tags$1.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":tags$1.angleBracket,"JSXIdentifier JSXNameSpacedName":tags$1.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":tags$1.attributeName,"JSXBuiltin/JSXIdentifier":tags$1.standard(tags$1.tagName)}),spec_identifier$3={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,const:52,extends:56,this:60,true:68,false:68,null:80,void:84,typeof:88,super:104,new:138,delete:150,yield:159,await:163,class:168,public:231,private:231,protected:231,readonly:233,instanceof:252,satisfies:255,in:256,import:290,keyof:347,unique:351,infer:357,asserts:393,is:395,abstract:415,implements:417,type:419,let:422,var:424,using:427,interface:433,enum:437,namespace:443,module:445,declare:449,global:453,for:472,of:481,while:484,with:488,do:492,if:496,else:498,switch:502,case:508,try:514,catch:518,finally:522,return:526,throw:530,break:534,continue:538,debugger:542},spec_word={__proto__:null,async:125,get:127,set:129,declare:191,public:193,private:193,protected:193,static:195,abstract:197,override:199,readonly:205,accessor:207,new:399},spec_LessThan={__proto__:null,"<":189},parser$a=LRParser.deserialize({version:14,states:"$EOQ%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#D_O.QQlO'#DeO.bQlO'#DpO%[QlO'#DxO0fQlO'#EQOOQ!0Lf'#EY'#EYO1PQ`O'#EVOOQO'#En'#EnOOQO'#Ij'#IjO1XQ`O'#GrO1dQ`O'#EmO1iQ`O'#EmO3hQ!0MxO'#JpO6[Q!0MxO'#JqO6uQ`O'#F[O6zQ,UO'#FsOOQ!0Lf'#Fe'#FeO7VO7dO'#FeO7eQMhO'#F{O9UQ`O'#FzOOQ!0Lf'#Jq'#JqOOQ!0Lb'#Jp'#JpO9ZQ`O'#GvOOQ['#K]'#K]O9fQ`O'#IWO9kQ!0LrO'#IXOOQ['#J^'#J^OOQ['#I]'#I]Q`QlOOQ`QlOOO9sQ!L^O'#DtO9zQlO'#D|O:RQlO'#EOO9aQ`O'#GrO:YQMhO'#CoO:hQ`O'#ElO:sQ`O'#EwO:xQMhO'#FdO;gQ`O'#GrOOQO'#K^'#K^O;lQ`O'#K^O;zQ`O'#GzO;zQ`O'#G{O;zQ`O'#G}O9aQ`O'#HQO<qQ`O'#HTO>YQ`O'#CeO>jQ`O'#HaO>rQ`O'#HgO>rQ`O'#HiO`QlO'#HkO>rQ`O'#HmO>rQ`O'#HpO>wQ`O'#HvO>|Q!0LsO'#H|O%[QlO'#IOO?XQ!0LsO'#IQO?dQ!0LsO'#ISO9kQ!0LrO'#IUO?oQ!0MxO'#CiO@qQpO'#DjQOQ`OOO%[QlO'#EOOAXQ`O'#ERO:YQMhO'#ElOAdQ`O'#ElOAoQ!bO'#FdOOQ['#Cg'#CgOOQ!0Lb'#Do'#DoOOQ!0Lb'#Jt'#JtO%[QlO'#JtOOQO'#Jw'#JwOOQO'#If'#IfOBoQpO'#EeOOQ!0Lb'#Ed'#EdOOQ!0Lb'#J{'#J{OCkQ!0MSO'#EeOCuQpO'#EUOOQO'#Jv'#JvODZQpO'#JwOEhQpO'#EUOCuQpO'#EePEuO&2DjO'#CbPOOO)CD{)CD{OOOO'#I^'#I^OFQO#tO,59UOOQ!0Lh,59U,59UOOOO'#I_'#I_OF`O&jO,59UOFnQ!L^O'#DaOOOO'#Ia'#IaOFuO#@ItO,59yOOQ!0Lf,59y,59yOGTQlO'#IbOGhQ`O'#JrOIgQ!fO'#JrO+}QlO'#JrOInQ`O,5:POJUQ`O'#EnOJcQ`O'#KROJnQ`O'#KQOJnQ`O'#KQOJvQ`O,5;[OJ{Q`O'#KPOOQ!0Ln,5:[,5:[OKSQlO,5:[OMQQ!0MxO,5:dOMqQ`O,5:lON[Q!0LrO'#KOONcQ`O'#J}O9ZQ`O'#J}ONwQ`O'#J}O! PQ`O,5;ZO! UQ`O'#J}O!#ZQ!fO'#JqOOQ!0Lh'#Ci'#CiO%[QlO'#EQO!#yQ!fO,5:qOOQS'#Jx'#JxOOQO-E<h-E<hO9aQ`O,5=^O!$aQ`O,5=^O!$fQlO,5;XO!&iQMhO'#EiO!(SQ`O,5;XO!(XQlO'#DwO!(cQpO,5;bO!(kQpO,5;bO%[QlO,5;bOOQ['#FS'#FSOOQ['#FU'#FUO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cO%[QlO,5;cOOQ['#FY'#FYO!(yQlO,5;sOOQ!0Lf,5;x,5;xOOQ!0Lf,5;y,5;yOOQ!0Lf,5;{,5;{O%[QlO'#InO!*|Q!0LrO,5<hO%[QlO,5;cO!&iQMhO,5;cO!+kQMhO,5;cO!-]QMhO'#E[O%[QlO,5;vOOQ!0Lf,5;z,5;zO!-dQ,UO'#FiO!.aQ,UO'#KVO!-{Q,UO'#KVO!.hQ,UO'#KVOOQO'#KV'#KVO!.|Q,UO,5<ROOOW,5<_,5<_O!/_QlO'#FuOOOW'#Im'#ImO7VO7dO,5<PO!/fQ,UO'#FwOOQ!0Lf,5<P,5<PO!0VQ$IUO'#CwOOQ!0Lh'#C{'#C{O!0jO#@ItO'#DPO!1WQMjO,5<dO!1_Q`O,5<gO!2zQ(CWO'#GWO!3XQ`O'#GXO!3^Q`O'#GXO!4|Q(CWO'#G]O!6RQpO'#GaOOQO'#Gm'#GmO!+rQMhO'#GlOOQO'#Go'#GoO!+rQMhO'#GnO!6tQ$IUO'#JjOOQ!0Lh'#Jj'#JjO!7OQ`O'#JiO!7^Q`O'#JhO!7fQ`O'#CuOOQ!0Lh'#Cy'#CyO!7qQ`O'#C{OOQ!0Lh'#DT'#DTOOQ!0Lh'#DV'#DVO1SQ`O'#DXO!+rQMhO'#GOO!+rQMhO'#GQO!7vQ`O'#GSO!7{Q`O'#GTO!3^Q`O'#GZO!+rQMhO'#G`O;zQ`O'#JiO!8QQ`O'#EoO!8oQ`O,5<fOOQ!0Lb'#Cr'#CrO!8wQ`O'#EpO!9qQpO'#EqOOQ!0Lb'#KP'#KPO!9xQ!0LrO'#K_O9kQ!0LrO,5=bO`QlO,5>rOOQ['#Jf'#JfOOQ[,5>s,5>sOOQ[-E<Z-E<ZO!;wQ!0MxO,5:`O!9lQpO,5:^O!>bQ!0MxO,5:hO%[QlO,5:hO!@xQ!0MxO,5:jOOQO,5@x,5@xO!AiQMhO,5=^O!AwQ!0LrO'#JgO9UQ`O'#JgO!BYQ!0LrO,59ZO!BeQpO,59ZO!BmQMhO,59ZO:YQMhO,59ZO!BxQ`O,5;XO!CQQ`O'#H`O!CfQ`O'#KbO%[QlO,5;|O!9lQpO,5<OO!CnQ`O,5=yO!CsQ`O,5=yO!CxQ`O,5=yO9kQ!0LrO,5=yO;zQ`O,5=iOOQO'#Cw'#CwO!DWQpO,5=fO!D`QMhO,5=gO!DkQ`O,5=iO!DpQ!bO,5=lO!DxQ`O'#K^O>wQ`O'#HVO9aQ`O'#HXO!D}Q`O'#HXO:YQMhO'#HZO!ESQ`O'#HZOOQ[,5=o,5=oO!EXQ`O'#H[O!EjQ`O'#CoO!EoQ`O,59PO!EyQ`O,59PO!HOQlO,59POOQ[,59P,59PO!H`Q!0LrO,59PO%[QlO,59PO!JkQlO'#HcOOQ['#Hd'#HdOOQ['#He'#HeO`QlO,5={O!KRQ`O,5={O`QlO,5>RO`QlO,5>TO!KWQ`O,5>VO`QlO,5>XO!K]Q`O,5>[O!KbQlO,5>bOOQ[,5>h,5>hO%[QlO,5>hO9kQ!0LrO,5>jOOQ[,5>l,5>lO# lQ`O,5>lOOQ[,5>n,5>nO# lQ`O,5>nOOQ[,5>p,5>pO#!YQpO'#D]O%[QlO'#JtO#!{QpO'#JtO##VQpO'#DkO##hQpO'#DkO#%yQlO'#DkO#&QQ`O'#JsO#&YQ`O,5:UO#&_Q`O'#ErO#&mQ`O'#KSO#&uQ`O,5;]O#&zQpO'#DkO#'XQpO'#ETOOQ!0Lf,5:m,5:mO%[QlO,5:mO#'`Q`O,5:mO>wQ`O,5;WO!BeQpO,5;WO!BmQMhO,5;WO:YQMhO,5;WO#'hQ`O,5@`O#'mQ07dO,5:qOOQO-E<d-E<dO#(sQ!0MSO,5;POCuQpO,5:pO#(}QpO,5:pOCuQpO,5;PO!BYQ!0LrO,5:pOOQ!0Lb'#Eh'#EhOOQO,5;P,5;PO%[QlO,5;PO#)[Q!0LrO,5;PO#)gQ!0LrO,5;PO!BeQpO,5:pOOQO,5;V,5;VO#)uQ!0LrO,5;PPOOO'#I['#I[P#*ZO&2DjO,58|POOO,58|,58|OOOO-E<[-E<[OOQ!0Lh1G.p1G.pOOOO-E<]-E<]OOOO,59{,59{O#*fQ!bO,59{OOOO-E<_-E<_OOQ!0Lf1G/e1G/eO#*kQ!fO,5>|O+}QlO,5>|OOQO,5?S,5?SO#*uQlO'#IbOOQO-E<`-E<`O#+SQ`O,5@^O#+[Q!fO,5@^O#+cQ`O,5@lOOQ!0Lf1G/k1G/kO%[QlO,5@mO#+kQ`O'#IhOOQO-E<f-E<fO#+cQ`O,5@lOOQ!0Lb1G0v1G0vOOQ!0Ln1G/v1G/vOOQ!0Ln1G0W1G0WO%[QlO,5@jO#,PQ!0LrO,5@jO#,bQ!0LrO,5@jO#,iQ`O,5@iO9ZQ`O,5@iO#,qQ`O,5@iO#-PQ`O'#IkO#,iQ`O,5@iOOQ!0Lb1G0u1G0uO!(cQpO,5:sO!(nQpO,5:sOOQS,5:u,5:uO#-qQdO,5:uO#-yQMhO1G2xO9aQ`O1G2xOOQ!0Lf1G0s1G0sO#.XQ!0MxO1G0sO#/^Q!0MvO,5;TOOQ!0Lh'#GV'#GVO#/zQ!0MzO'#JjO!$fQlO1G0sO#2VQ!fO'#JuO%[QlO'#JuO#2aQ`O,5:cOOQ!0Lh'#D]'#D]OOQ!0Lf1G0|1G0|O%[QlO1G0|OOQ!0Lf1G1e1G1eO#2fQ`O1G0|O#4zQ!0MxO1G0}O#5RQ!0MxO1G0}O#7iQ!0MxO1G0}O#7pQ!0MxO1G0}O#:WQ!0MxO1G0}O#<nQ!0MxO1G0}O#<uQ!0MxO1G0}O#<|Q!0MxO1G0}O#?dQ!0MxO1G0}O#?kQ!0MxO1G0}O#AxQ?MtO'#CiO#CsQ?MtO1G1_O#CzQ?MtO'#JqO#D_Q!0MxO,5?YOOQ!0Lb-E<l-E<lO#FlQ!0MxO1G0}O#GiQ!0MzO1G0}OOQ!0Lf1G0}1G0}O#HlQMjO'#JzO#HvQ`O,5:vO#H{Q!0MxO1G1bO#IoQ,UO,5<VO#IwQ,UO,5<WO#JPQ,UO'#FnO#JhQ`O'#FmOOQO'#KW'#KWOOQO'#Il'#IlO#JmQ,UO1G1mOOQ!0Lf1G1m1G1mOOOW1G1x1G1xO#KOQ?MtO'#JpO#KYQ`O,5<aO!(yQlO,5<aOOOW-E<k-E<kOOQ!0Lf1G1k1G1kO#K_QpO'#KVOOQ!0Lf,5<c,5<cO#KgQpO,5<cO#KlQMhO'#DROOOO'#I`'#I`O#KsO#@ItO,59kOOQ!0Lh,59k,59kO%[QlO1G2OO!7{Q`O'#IpO#LOQ`O,5<yOOQ!0Lh,5<v,5<vO!+rQMhO'#IsO#LlQMjO,5=WO!+rQMhO'#IuO#M_QMjO,5=YO!&iQMhO,5=[OOQO1G2R1G2RO#MiQ!dO'#CrO#M|Q(CWO'#EpO$ RQpO'#GaO$ iQ!dO,5<rO$ pQ`O'#KYO9ZQ`O'#KYO$!OQ`O,5<tO!+rQMhO,5<sO$!TQ`O'#GYO$!fQ`O,5<sO$!kQ!dO'#GVO$!xQ!dO'#KZO$#SQ`O'#KZO!&iQMhO'#KZO$#XQ`O,5<wO$#^QlO'#JtO$#hQpO'#GbO##hQpO'#GbO$#yQ`O'#GfO!3^Q`O'#GjO$$OQ!0LrO'#IrO$$ZQpO,5<{OOQ!0Lp,5<{,5<{O$$bQpO'#GbO$$oQpO'#GcO$%QQpO'#GcO$%VQMjO,5=WO$%gQMjO,5=YOOQ!0Lh,5=],5=]O!+rQMhO,5@TO!+rQMhO,5@TO$%wQ`O'#IwO$&VQ`O,5@SO$&_Q`O,59aOOQ!0Lh,59g,59gO$'UQ$IYO,59sOOQ!0Lh'#Jn'#JnO$'wQMjO,5<jO$(jQMjO,5<lO@iQ`O,5<nOOQ!0Lh,5<o,5<oO$(tQ`O,5<uO$(yQMjO,5<zO$)ZQ`O,5@TO$)iQ`O'#J}O!$fQlO1G2QO$)nQ`O1G2QO9ZQ`O'#KQO9ZQ`O'#ErO%[QlO'#ErO9ZQ`O'#IyO$)sQ!0LrO,5@yOOQ[1G2|1G2|OOQ[1G4^1G4^OOQ!0Lf1G/z1G/zOOQ!0Lf1G/x1G/xO$+uQ!0MxO1G0SOOQ[1G2x1G2xO!&iQMhO1G2xO%[QlO1G2xO#-|Q`O1G2xO$-yQMhO'#EiOOQ!0Lb,5@R,5@RO$.WQ!0LrO,5@ROOQ[1G.u1G.uO!BYQ!0LrO1G.uO!BeQpO1G.uO!BmQMhO1G.uO$.iQ`O1G0sO$.nQ`O'#CiO$.yQ`O'#KcO$/RQ`O,5=zO$/WQ`O'#KcO$/]Q`O'#KcO$/kQ`O'#JPO$/yQ`O,5@|O$0RQ!fO1G1hOOQ!0Lf1G1j1G1jO9aQ`O1G3eO@iQ`O1G3eO$0YQ`O1G3eO$0_Q`O1G3eOOQ[1G3e1G3eO!DkQ`O1G3TO!&iQMhO1G3QO$0dQ`O1G3QOOQ[1G3R1G3RO!&iQMhO1G3RO$0iQ`O1G3RO$0qQpO'#HPOOQ[1G3T1G3TO!5|QpO'#I{O!DpQ!bO1G3WOOQ[1G3W1G3WOOQ[,5=q,5=qO$0yQMhO,5=sO9aQ`O,5=sO$#yQ`O,5=uO9UQ`O,5=uO!BeQpO,5=uO!BmQMhO,5=uO:YQMhO,5=uO$1XQ`O'#KaO$1dQ`O,5=vOOQ[1G.k1G.kO$1iQ!0LrO1G.kO@iQ`O1G.kO$1tQ`O1G.kO9kQ!0LrO1G.kO$3|Q!fO,5AOO$4ZQ`O,5AOO9ZQ`O,5AOO$4fQlO,5=}O$4mQ`O,5=}OOQ[1G3g1G3gO`QlO1G3gOOQ[1G3m1G3mOOQ[1G3o1G3oO>rQ`O1G3qO$4rQlO1G3sO$8vQlO'#HrOOQ[1G3v1G3vO$9TQ`O'#HxO>wQ`O'#HzOOQ[1G3|1G3|O$9]QlO1G3|O9kQ!0LrO1G4SOOQ[1G4U1G4UOOQ!0Lb'#G^'#G^O9kQ!0LrO1G4WO9kQ!0LrO1G4YO$=dQ`O,5@`O!(yQlO,5;^O9ZQ`O,5;^O>wQ`O,5:VO!(yQlO,5:VO!BeQpO,5:VO$=iQ?MtO,5:VOOQO,5;^,5;^O$=sQpO'#IcO$>ZQ`O,5@_OOQ!0Lf1G/p1G/pO$>cQpO'#IiO$>mQ`O,5@nOOQ!0Lb1G0w1G0wO##hQpO,5:VOOQO'#Ie'#IeO$>uQpO,5:oOOQ!0Ln,5:o,5:oO#'cQ`O1G0XOOQ!0Lf1G0X1G0XO%[QlO1G0XOOQ!0Lf1G0r1G0rO>wQ`O1G0rO!BeQpO1G0rO!BmQMhO1G0rOOQ!0Lb1G5z1G5zO!BYQ!0LrO1G0[OOQO1G0k1G0kO%[QlO1G0kO$>|Q!0LrO1G0kO$?XQ!0LrO1G0kO!BeQpO1G0[OCuQpO1G0[O$?gQ!0LrO1G0kOOQO1G0[1G0[O$?{Q!0MxO1G0kPOOO-E<Y-E<YPOOO1G.h1G.hOOOO1G/g1G/gO$@VQ!bO,5<hO$@_Q!fO1G4hOOQO1G4n1G4nO%[QlO,5>|O$@iQ`O1G5xO$@qQ`O1G6WO$@yQ!fO1G6XO9ZQ`O,5?SO$ATQ!0MxO1G6UO%[QlO1G6UO$AeQ!0LrO1G6UO$AvQ`O1G6TO$AvQ`O1G6TO9ZQ`O1G6TO$BOQ`O,5?VO9ZQ`O,5?VOOQO,5?V,5?VO$BdQ`O,5?VO$)iQ`O,5?VOOQO-E<i-E<iOOQS1G0_1G0_OOQS1G0a1G0aO#-tQ`O1G0aOOQ[7+(d7+(dO!&iQMhO7+(dO%[QlO7+(dO$BrQ`O7+(dO$B}QMhO7+(dO$C]Q!0MzO,5=WO$EhQ!0MzO,5=YO$GsQ!0MzO,5=WO$JUQ!0MzO,5=YO$LgQ!0MzO,59sO$NlQ!0MzO,5<jO%!wQ!0MzO,5<lO%%SQ!0MzO,5<zOOQ!0Lf7+&_7+&_O%'eQ!0MxO7+&_O%(XQlO'#IdO%(fQ`O,5@aO%(nQ!fO,5@aOOQ!0Lf1G/}1G/}O%(xQ`O7+&hOOQ!0Lf7+&h7+&hO%(}Q?MtO,5:dO%[QlO7+&yO%)XQ?MtO,5:`O%)fQ?MtO,5:hO%)pQ?MtO,5:jO%)zQMhO'#IgO%*UQ`O,5@fOOQ!0Lh1G0b1G0bOOQO1G1q1G1qOOQO1G1r1G1rO%*^Q!jO,5<YO!(yQlO,5<XOOQO-E<j-E<jOOQ!0Lf7+'X7+'XOOOW7+'d7+'dOOOW1G1{1G1{O%*iQ`O1G1{OOQ!0Lf1G1}1G1}OOOO,59m,59mO%*nQ!dO,59mOOOO-E<^-E<^OOQ!0Lh1G/V1G/VO%*uQ!0MxO7+'jOOQ!0Lh,5?[,5?[O%+iQMhO1G2eP%+pQ`O'#IpPOQ!0Lh-E<n-E<nO%,^QMjO,5?_OOQ!0Lh-E<q-E<qO%-PQMjO,5?aOOQ!0Lh-E<s-E<sO%-ZQ!dO1G2vO%-bQ!dO'#CrO%-xQMhO'#KQO$#^QlO'#JtOOQ!0Lh1G2^1G2^O%.PQ`O'#IoO%.eQ`O,5@tO%.eQ`O,5@tO%.mQ`O,5@tO%.xQ`O,5@tOOQO1G2`1G2`O%/WQMjO1G2_O!+rQMhO1G2_O%/hQ(CWO'#IqO%/uQ`O,5@uO!&iQMhO,5@uO%/}Q!dO,5@uOOQ!0Lh1G2c1G2cO%2_Q!fO'#CiO%2iQ`O,5=OOOQ!0Lb,5<|,5<|O%2qQpO,5<|OOQ!0Lb,5<},5<}OCfQ`O,5<|O%2|QpO,5<|OOQ!0Lb,5=Q,5=QO$)iQ`O,5=UOOQO,5?^,5?^OOQO-E<p-E<pOOQ!0Lp1G2g1G2gO##hQpO,5<|O$#^QlO,5=OO%3[Q`O,5<}O%3gQpO,5<}O!+rQMhO'#IsO%4aQMjO1G2rO!+rQMhO'#IuO%5SQMjO1G2tO%5^QMjO1G5oO%5hQMjO1G5oOOQO,5?c,5?cOOQO-E<u-E<uOOQO1G.{1G.{O!9lQpO,59uO%[QlO,59uOOQ!0Lh,5<i,5<iO%5uQ`O1G2YO!+rQMhO1G2aO!+rQMhO1G5oO!+rQMhO1G5oO%5zQ!0MxO7+'lOOQ!0Lf7+'l7+'lO!$fQlO7+'lO%6nQ`O,5;^OOQ!0Lb,5?e,5?eOOQ!0Lb-E<w-E<wO%6sQ!dO'#K[O#'cQ`O7+(dO4UQ!fO7+(dO$BuQ`O7+(dO%6}Q!0MvO'#CiO%7nQ!0LrO,5=RO%8PQ!0MvO,5=RO%8dQ`O,5=ROOQ!0Lb1G5m1G5mOOQ[7+$a7+$aO!BYQ!0LrO7+$aO!BeQpO7+$aO!$fQlO7+&_O%8lQ`O'#JOO%9TQ`O,5@}OOQO1G3f1G3fO9aQ`O,5@}O%9TQ`O,5@}O%9]Q`O,5@}OOQO,5?k,5?kOOQO-E<}-E<}OOQ!0Lf7+'S7+'SO%9bQ`O7+)PO9kQ!0LrO7+)PO9aQ`O7+)PO@iQ`O7+)POOQ[7+(o7+(oO%9gQ!0MvO7+(lO!&iQMhO7+(lO!DfQ`O7+(mOOQ[7+(m7+(mO!&iQMhO7+(mO%9qQ`O'#K`O%9|Q`O,5=kOOQO,5?g,5?gOOQO-E<y-E<yOOQ[7+(r7+(rO%;`QpO'#HYOOQ[1G3_1G3_O!&iQMhO1G3_O%[QlO1G3_O%;gQ`O1G3_O%;rQMhO1G3_O9kQ!0LrO1G3aO$#yQ`O1G3aO9UQ`O1G3aO!BeQpO1G3aO!BmQMhO1G3aO%<QQ`O'#I}O%<fQ`O,5@{O%<nQpO,5@{OOQ!0Lb1G3b1G3bOOQ[7+$V7+$VO@iQ`O7+$VO9kQ!0LrO7+$VO%<yQ`O7+$VO%[QlO1G6jO%[QlO1G6kO%=OQ!0LrO1G6jO%=YQlO1G3iO%=aQ`O1G3iO%=fQlO1G3iOOQ[7+)R7+)RO9kQ!0LrO7+)]O`QlO7+)_OOQ['#Kf'#KfOOQ['#JQ'#JQO%=mQlO,5>^OOQ[,5>^,5>^O%[QlO'#HsO%=zQ`O'#HuOOQ[,5>d,5>dO9ZQ`O,5>dOOQ[,5>f,5>fOOQ[7+)h7+)hOOQ[7+)n7+)nOOQ[7+)r7+)rOOQ[7+)t7+)tO%>PQpO1G5zO%>kQ?MtO1G0xO%>uQ`O1G0xOOQO1G/q1G/qO%?QQ?MtO1G/qO>wQ`O1G/qO!(yQlO'#DkOOQO,5>},5>}OOQO-E<a-E<aOOQO,5?T,5?TOOQO-E<g-E<gO!BeQpO1G/qOOQO-E<c-E<cOOQ!0Ln1G0Z1G0ZOOQ!0Lf7+%s7+%sO#'cQ`O7+%sOOQ!0Lf7+&^7+&^O>wQ`O7+&^O!BeQpO7+&^OOQO7+%v7+%vO$?{Q!0MxO7+&VOOQO7+&V7+&VO%[QlO7+&VO%?[Q!0LrO7+&VO!BYQ!0LrO7+%vO!BeQpO7+%vO%?gQ!0LrO7+&VO%?uQ!0MxO7++pO%[QlO7++pO%@VQ`O7++oO%@VQ`O7++oOOQO1G4q1G4qO9ZQ`O1G4qO%@_Q`O1G4qOOQS7+%{7+%{O#'cQ`O<<LOO4UQ!fO<<LOO%@mQ`O<<LOOOQ[<<LO<<LOO!&iQMhO<<LOO%[QlO<<LOO%@uQ`O<<LOO%AQQ!0MzO,5?_O%C]Q!0MzO,5?aO%EhQ!0MzO1G2_O%GyQ!0MzO1G2rO%JUQ!0MzO1G2tO%LaQ!fO,5?OO%[QlO,5?OOOQO-E<b-E<bO%LkQ`O1G5{OOQ!0Lf<<JS<<JSO%LsQ?MtO1G0sO%NzQ?MtO1G0}O& RQ?MtO1G0}O&#SQ?MtO1G0}O&#ZQ?MtO1G0}O&%[Q?MtO1G0}O&']Q?MtO1G0}O&'dQ?MtO1G0}O&'kQ?MtO1G0}O&)lQ?MtO1G0}O&)sQ?MtO1G0}O&)zQ!0MxO<<JeO&+rQ?MtO1G0}O&,oQ?MvO1G0}O&-rQ?MvO'#JjO&/xQ?MtO1G1bO&0VQ?MtO1G0SO&0aQMjO,5?ROOQO-E<e-E<eO!(yQlO'#FpOOQO'#KX'#KXOOQO1G1t1G1tO&0kQ`O1G1sO&0pQ?MtO,5?YOOOW7+'g7+'gOOOO1G/X1G/XO&0zQ!dO1G4vOOQ!0Lh7+(P7+(PP!&iQMhO,5?[O!+rQMhO7+(bO&1RQ`O,5?ZO9ZQ`O,5?ZOOQO-E<m-E<mO&1aQ`O1G6`O&1aQ`O1G6`O&1iQ`O1G6`O&1tQMjO7+'yO&2UQ!dO,5?]O&2`Q`O,5?]O!&iQMhO,5?]OOQO-E<o-E<oO&2eQ!dO1G6aO&2oQ`O1G6aO&2wQ`O1G2jO!&iQMhO1G2jOOQ!0Lb1G2h1G2hOOQ!0Lb1G2i1G2iO%2qQpO1G2hO!BeQpO1G2hOCfQ`O1G2hOOQ!0Lb1G2p1G2pO&2|QpO1G2hO&3[Q`O1G2jO$)iQ`O1G2iOCfQ`O1G2iO$#^QlO1G2jO&3dQ`O1G2iO&4WQMjO,5?_OOQ!0Lh-E<r-E<rO&4yQMjO,5?aOOQ!0Lh-E<t-E<tO!+rQMhO7++ZOOQ!0Lh1G/a1G/aO&5TQ`O1G/aOOQ!0Lh7+'t7+'tO&5YQMjO7+'{O&5jQMjO7++ZO&5tQMjO7++ZO&6RQ!0MxO<<KWOOQ!0Lf<<KW<<KWO&6uQ`O1G0xO!&iQMhO'#IxO&6zQ`O,5@vO&8|Q!fO<<LOO!&iQMhO1G2mO&9TQ!0LrO1G2mOOQ[<<G{<<G{O!BYQ!0LrO<<G{O&9fQ!0MxO<<IyOOQ!0Lf<<Iy<<IyOOQO,5?j,5?jO&:YQ`O,5?jO&:_Q`O,5?jOOQO-E<|-E<|O&:mQ`O1G6iO&:mQ`O1G6iO9aQ`O1G6iO@iQ`O<<LkOOQ[<<Lk<<LkO&:uQ`O<<LkO9kQ!0LrO<<LkOOQ[<<LW<<LWO%9gQ!0MvO<<LWOOQ[<<LX<<LXO!DfQ`O<<LXO&:zQpO'#IzO&;VQ`O,5@zO!(yQlO,5@zOOQ[1G3V1G3VOOQO'#I|'#I|O9kQ!0LrO'#I|O&;_QpO,5=tOOQ[,5=t,5=tO&;fQpO'#EeO&;mQpO'#GdO&;rQ`O7+(yO&;wQ`O7+(yOOQ[7+(y7+(yO!&iQMhO7+(yO%[QlO7+(yO&<PQ`O7+(yOOQ[7+({7+({O9kQ!0LrO7+({O$#yQ`O7+({O9UQ`O7+({O!BeQpO7+({O&<[Q`O,5?iOOQO-E<{-E<{OOQO'#H]'#H]O&<gQ`O1G6gO9kQ!0LrO<<GqOOQ[<<Gq<<GqO@iQ`O<<GqO&<oQ`O7+,UO&<tQ`O7+,VO%[QlO7+,UO%[QlO7+,VOOQ[7+)T7+)TO&<yQ`O7+)TO&=OQlO7+)TO&=VQ`O7+)TOOQ[<<Lw<<LwOOQ[<<Ly<<LyOOQ[-E=O-E=OOOQ[1G3x1G3xO&=[Q`O,5>_OOQ[,5>a,5>aO&=aQ`O1G4OO9ZQ`O7+&dO!(yQlO7+&dOOQO7+%]7+%]O&=fQ?MtO1G6XO>wQ`O7+%]OOQ!0Lf<<I_<<I_OOQ!0Lf<<Ix<<IxO>wQ`O<<IxOOQO<<Iq<<IqO$?{Q!0MxO<<IqO%[QlO<<IqOOQO<<Ib<<IbO!BYQ!0LrO<<IbO&=pQ!0LrO<<IqO&={Q!0MxO<= [O&>]Q`O<= ZOOQO7+*]7+*]O9ZQ`O7+*]OOQ[ANAjANAjO&>eQ!fOANAjO!&iQMhOANAjO#'cQ`OANAjO4UQ!fOANAjO&>lQ`OANAjO%[QlOANAjO&>tQ!0MzO7+'yO&AVQ!0MzO,5?_O&CbQ!0MzO,5?aO&EmQ!0MzO7+'{O&HOQ!fO1G4jO&HYQ?MtO7+&_O&J^Q?MvO,5=WO&LeQ?MvO,5=YO&LuQ?MvO,5=WO&MVQ?MvO,5=YO&MgQ?MvO,59sO' mQ?MvO,5<jO'#pQ?MvO,5<lO'&UQ?MvO,5<zO''zQ?MtO7+'jO'(XQ?MtO7+'lO'(fQ`O,5<[OOQO7+'_7+'_OOQ!0Lh7+*b7+*bO'(kQMjO<<K|OOQO1G4u1G4uO'(rQ`O1G4uO'(}Q`O1G4uO')]Q`O7++zO')]Q`O7++zO!&iQMhO1G4wO')eQ!dO1G4wO')oQ`O7++{O')wQ`O7+(UO'*SQ!dO7+(UOOQ!0Lb7+(S7+(SOOQ!0Lb7+(T7+(TO!BeQpO7+(SOCfQ`O7+(SO'*^Q`O7+(UO!&iQMhO7+(UO$)iQ`O7+(TO'*cQ`O7+(UOCfQ`O7+(TO'*kQMjO<<NuOOQ!0Lh7+${7+${O!+rQMhO<<NuO'*uQ!dO,5?dOOQO-E<v-E<vO'+PQ!0MvO7+(XO!&iQMhO7+(XOOQ[AN=gAN=gO9aQ`O1G5UOOQO1G5U1G5UO'+aQ`O1G5UO'+fQ`O7+,TO'+fQ`O7+,TO9kQ!0LrOANBVO@iQ`OANBVOOQ[ANBVANBVOOQ[ANArANArOOQ[ANAsANAsO'+nQ`O,5?fOOQO-E<x-E<xO'+yQ?MtO1G6fOOQO,5?h,5?hOOQO-E<z-E<zOOQ[1G3`1G3`O',TQ`O,5=OOOQ[<<Le<<LeO!&iQMhO<<LeO&;rQ`O<<LeO',YQ`O<<LeO%[QlO<<LeOOQ[<<Lg<<LgO9kQ!0LrO<<LgO$#yQ`O<<LgO9UQ`O<<LgO',bQpO1G5TO',mQ`O7+,ROOQ[AN=]AN=]O9kQ!0LrOAN=]OOQ[<= p<= pOOQ[<= q<= qO',uQ`O<= pO',zQ`O<= qOOQ[<<Lo<<LoO'-PQ`O<<LoO'-UQlO<<LoOOQ[1G3y1G3yO>wQ`O7+)jO'-]Q`O<<JOO'-hQ?MtO<<JOOOQO<<Hw<<HwOOQ!0LfAN?dAN?dOOQOAN?]AN?]O$?{Q!0MxOAN?]OOQOAN>|AN>|O%[QlOAN?]OOQO<<Mw<<MwOOQ[G27UG27UO!&iQMhOG27UO#'cQ`OG27UO'-rQ!fOG27UO4UQ!fOG27UO'-yQ`OG27UO'.RQ?MtO<<JeO'.`Q?MvO1G2_O'0UQ?MvO,5?_O'2XQ?MvO,5?aO'4[Q?MvO1G2rO'6_Q?MvO1G2tO'8bQ?MtO<<KWO'8oQ?MtO<<IyOOQO1G1v1G1vO!+rQMhOANAhOOQO7+*a7+*aO'8|Q`O7+*aO'9XQ`O<= fO'9aQ!dO7+*cOOQ!0Lb<<Kp<<KpO$)iQ`O<<KpOCfQ`O<<KpO'9kQ`O<<KpO!&iQMhO<<KpOOQ!0Lb<<Kn<<KnO!BeQpO<<KnO'9vQ!dO<<KpOOQ!0Lb<<Ko<<KoO':QQ`O<<KpO!&iQMhO<<KpO$)iQ`O<<KoO':VQMjOANDaO':aQ!0MvO<<KsOOQO7+*p7+*pO9aQ`O7+*pO':qQ`O<= oOOQ[G27qG27qO9kQ!0LrOG27qO!(yQlO1G5QO':yQ`O7+,QO';RQ`O1G2jO&;rQ`OANBPOOQ[ANBPANBPO!&iQMhOANBPO';WQ`OANBPOOQ[ANBRANBRO9kQ!0LrOANBRO$#yQ`OANBROOQO'#H^'#H^OOQO7+*o7+*oOOQ[G22wG22wOOQ[ANE[ANE[OOQ[ANE]ANE]OOQ[ANBZANBZO';`Q`OANBZOOQ[<<MU<<MUO!(yQlOAN?jOOQOG24wG24wO$?{Q!0MxOG24wO#'cQ`OLD,pOOQ[LD,pLD,pO!&iQMhOLD,pO';eQ!fOLD,pO';lQ?MvO7+'yO'=bQ?MvO,5?_O'?eQ?MvO,5?aO'AhQ?MvO7+'{O'C^QMjOG27SOOQO<<M{<<M{OOQ!0LbANA[ANA[O$)iQ`OANA[OCfQ`OANA[O'CnQ!dOANA[OOQ!0LbANAYANAYO'CuQ`OANA[O!&iQMhOANA[O'DQQ!dOANA[OOQ!0LbANAZANAZOOQO<<N[<<N[OOQ[LD-]LD-]O'D[Q?MtO7+*lOOQO'#Ge'#GeOOQ[G27kG27kO&;rQ`OG27kO!&iQMhOG27kOOQ[G27mG27mO9kQ!0LrOG27mOOQ[G27uG27uO'DfQ?MtOG25UOOQOLD*cLD*cOOQ[!$(![!$(![O#'cQ`O!$(![O!&iQMhO!$(![O'DpQ!0MzOG27SOOQ!0LbG26vG26vO$)iQ`OG26vO'GRQ`OG26vOCfQ`OG26vO'G^Q!dOG26vO!&iQMhOG26vOOQ[LD-VLD-VO&;rQ`OLD-VOOQ[LD-XLD-XOOQ[!)9Ev!)9EvO#'cQ`O!)9EvOOQ!0LbLD,bLD,bO$)iQ`OLD,bOCfQ`OLD,bO'GeQ`OLD,bO'GpQ!dOLD,bOOQ[!$(!q!$(!qOOQ[!.K;b!.K;bO'GwQ?MvOG27SOOQ!0Lb!$( |!$( |O$)iQ`O!$( |OCfQ`O!$( |O'ImQ`O!$( |OOQ!0Lb!)9Eh!)9EhO$)iQ`O!)9EhOCfQ`O!)9EhOOQ!0Lb!.K;S!.K;SO$)iQ`O!.K;SOOQ!0Lb!4/0n!4/0nO!(yQlO'#DxO1PQ`O'#EVO'IxQ!fO'#JpO'JPQ!L^O'#DtO'JWQlO'#D|O'J_Q!fO'#CiO'LuQ!fO'#CiO!(yQlO'#EOO'MVQlO,5;XO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO,5;cO!(yQlO'#InO( YQ`O,5<hO!(yQlO,5;cO( bQMhO,5;cO(!{QMhO,5;cO!(yQlO,5;vO!&iQMhO'#GlO( bQMhO'#GlO!&iQMhO'#GnO( bQMhO'#GnO1SQ`O'#DXO1SQ`O'#DXO!&iQMhO'#GOO( bQMhO'#GOO!&iQMhO'#GQO( bQMhO'#GQO!&iQMhO'#G`O( bQMhO'#G`O!(yQlO,5:hO(#SQpO'#D]O(#^QpO'#JtO!(yQlO,5@mO'MVQlO1G0sO(#hQ?MtO'#CiO!(yQlO1G2OO!&iQMhO'#IsO( bQMhO'#IsO!&iQMhO'#IuO( bQMhO'#IuO(#rQ!dO'#CrO!&iQMhO,5<sO( bQMhO,5<sO'MVQlO1G2QO!(yQlO7+&yO!&iQMhO1G2_O( bQMhO1G2_O!&iQMhO'#IsO( bQMhO'#IsO!&iQMhO'#IuO( bQMhO'#IuO!&iQMhO1G2aO( bQMhO1G2aO'MVQlO7+'lO'MVQlO7+&_O!&iQMhOANAhO( bQMhOANAhO($VQ`O'#EmO($[Q`O'#EmO($dQ`O'#F[O($iQ`O'#EwO($nQ`O'#KRO($yQ`O'#KPO(%UQ`O,5;XO(%ZQMjO,5<dO(%bQ`O'#GXO(%gQ`O'#GXO(%lQ`O,5<fO(%tQ`O,5;XO(%|Q?MtO1G1_O(&TQ`O,5<sO(&YQ`O,5<sO(&_Q`O,5<uO(&dQ`O,5<uO(&iQ`O1G2QO(&nQ`O1G0sO(&sQMjO<<K|O(&zQMjO<<K|O7eQMhO'#F{O9UQ`O'#FzOAdQ`O'#ElO!(yQlO,5;sO!3^Q`O'#GXO!3^Q`O'#GXO!3^Q`O'#GZO!3^Q`O'#GZO!+rQMhO7+(bO!+rQMhO7+(bO%-ZQ!dO1G2vO%-ZQ!dO1G2vO!&iQMhO,5=[O!&iQMhO,5=[",stateData:"((P~O'zOS'{OSTOS'|RQ~OPYOQYOSfOY!VOaqOdzOeyOj!POnkOpYOqkOrkOxkOzYO|YO!QWO!UkO!VkO!]XO!guO!jZO!mYO!nYO!oYO!qvO!swO!vxO!z]O$V|O$miO%g}O%i!QO%k!OO%l!OO%m!OO%p!RO%r!SO%u!TO%v!TO%x!UO&U!WO&[!XO&^!YO&`!ZO&b![O&e!]O&k!^O&q!_O&s!`O&u!aO&w!bO&y!cO(RSO(TTO(WUO(_VO(m[O~OWtO~P`OPYOQYOSfOd!jOe!iOnkOpYOqkOrkOxkOzYO|YO!QWO!UkO!VkO!]!eO!guO!jZO!mYO!nYO!oYO!qvO!s!gO!v!hO$V!kO$miO(R!dO(TTO(WUO(_VO(m[O~Oa!wOq!nO!Q!oO!`!yO!a!vO!b!vO!z;wO#R!pO#S!pO#T!xO#U!pO#V!pO#Y!zO#Z!zO(S!lO(TTO(WUO(c!mO(m!sO~O'|!{O~OP]XR]X[]Xa]Xp]X!O]X!Q]X!Z]X!j]X!n]X#P]X#Q]X#^]X#ifX#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#w]X#y]X#z]X$P]X'x]X(_]X(p]X(w]X(x]X~O!e%QX~P(qO_!}O(T#PO(U!}O(V#PO~O_#QO(V#PO(W#PO(X#QO~Ov#SO!S#TO(`#TO(a#VO~OPYOQYOSfOd!jOe!iOnkOpYOqkOrkOxkOzYO|YO!QWO!UkO!VkO!]!eO!guO!jZO!mYO!nYO!oYO!qvO!s!gO!v!hO$V!kO$miO(R;{O(TTO(WUO(_VO(m[O~O!Y#ZO!Z#WO!W(fP!W(tP~P+}O![#cO~P`OPYOQYOSfOd!jOe!iOpYOqkOrkOxkOzYO|YO!QWO!UkO!VkO!]!eO!guO!jZO!mYO!nYO!oYO!qvO!s!gO!v!hO$V!kO$miO(TTO(WUO(_VO(m[O~On#mO!Y#iO!z]O#g#lO#h#iO(R;|O!i(qP~P.iO!j#oO(R#nO~O!v#sO!z]O%g#tO~O#i#uO~O!e#vO#i#uO~OP$[OR#zO[$cOp$aO!O#yO!Q#{O!Z$_O!j#xO!n$[O#P$RO#l$OO#m$PO#n$PO#o$PO#p$QO#q$RO#r$RO#s$bO#t$RO#u$SO#w$UO#y$WO#z$XO(_VO(p$YO(w#|O(x#}O~Oa(dX'x(dX'u(dX!i(dX!W(dX!](dX%h(dX!e(dX~P1qO#Q$dO#^$eO$P$eOP(eXR(eX[(eXp(eX!O(eX!Q(eX!Z(eX!j(eX!n(eX#P(eX#l(eX#m(eX#n(eX#o(eX#p(eX#q(eX#r(eX#s(eX#t(eX#u(eX#w(eX#y(eX#z(eX(_(eX(p(eX(w(eX(x(eX!](eX%h(eX~Oa(eX'x(eX'u(eX!W(eX!i(eXt(eX!e(eX~P4UO#^$eO~O$[$hO$^$gO$e$mO~OSfO!]$nO$h$oO$j$qO~Oh%VOj%cOn%WOp%XOq$tOr$tOx%YOz%ZO|%[O!Q${O!]$|O!g%aO!j$xO#h%bO$V%_O$s%]O$u%^O$x%`O(R$sO(TTO(WUO(_$uO(w$}O(x%POg([P~O!j%dO~O!Q%gO!]%hO(R%fO~O!e%lO~Oa%mO'x%mO~O!O%qO~P%[O(S!lO~P%[O%m%uO~P%[Oh%VO!j%dO(R%fO(S!lO~Oe%|O!j%dO(R%fO~O#t$RO~O!O&RO!]&OO!j&QO%i&UO(R%fO(S!lO(TTO(WUO`)UP~O!v#sO~O%r&WO!Q)QX!])QX(R)QX~O(R&XO~Oj!PO!s&^O%i!QO%k!OO%l!OO%m!OO%p!RO%r!SO%u!TO%v!TO~Od&cOe&bO!v&`O%g&aO%z&_O~P<POd&fOeyOj!PO!]&eO!s&^O!vxO!z]O%g}O%k!OO%l!OO%m!OO%p!RO%r!SO%u!TO%v!TO%x!UO~Ob&iO#^&lO%i&gO(S!lO~P=UO!j&mO!s&qO~O!j#oO~O!]XO~Oa%mO'v&yO'x%mO~Oa%mO'v&|O'x%mO~Oa%mO'v'OO'x%mO~O'u]X!W]Xt]X!i]X&Y]X!]]X%h]X!e]X~P(qO!`']O!a'UO!b'UO(S!lO(TTO(WUO~Oq'SO!Q'RO!Y'VO(c'QO![(gP![(vP~P@]Ol'`O!]'^O(R%fO~Oe'eO!j%dO(R%fO~O!O&RO!j&QO~Oq!nO!Q!oO!z;wO#R!pO#S!pO#U!pO#V!pO(S!lO(TTO(WUO(c!mO(m!sO~O!`'kO!a'jO!b'jO#T!pO#Y'lO#Z'lO~PAwOa%mOh%VO!e#vO!j%dO'x%mO(p'nO~O!n'rO#^'pO~PCVOq!nO!Q!oO(TTO(WUO(c!mO(m!sO~O!]XOq(kX!Q(kX!`(kX!a(kX!b(kX!z(kX#R(kX#S(kX#T(kX#U(kX#V(kX#Y(kX#Z(kX(S(kX(T(kX(W(kX(c(kX(m(kX~O!a'jO!b'jO(S!lO~PCuO'}'vO(O'vO(P'xO~O_!}O(T'zO(U!}O(V'zO~O_#QO(V'zO(W'zO(X#QO~Ot'|O~P%[Ov#SO!S#TO(`#TO(a(PO~O!Y(RO!W'UX!W'[X!Z'UX!Z'[X~P+}O!Z(TO!W(fX~OP$[OR#zO[$cOp$aO!O#yO!Q#{O!Z(TO!j#xO!n$[O#P$RO#l$OO#m$PO#n$PO#o$PO#p$QO#q$RO#r$RO#s$bO#t$RO#u$SO#w$UO#y$WO#z$XO(_VO(p$YO(w#|O(x#}O~O!W(fX~PGpO!W(YO~O!W(sX!Z(sX!e(sX!i(sX(p(sX~O#^(sX#i#bX![(sX~PIsO#^(ZO!W(uX!Z(uX~O!Z([O!W(tX~O!W(_O~O#^$eO~PIsO![(`O~P`OR#zO!O#yO!Q#{O!j#xO(_VOP!la[!lap!la!Z!la!n!la#P!la#l!la#m!la#n!la#o!la#p!la#q!la#r!la#s!la#t!la#u!la#w!la#y!la#z!la(p!la(w!la(x!la~Oa!la'x!la'u!la!W!la!i!lat!la!]!la%h!la!e!la~PKZO!i(aO~O!e#vO#^(bO(p'nO!Z(rXa(rX'x(rX~O!i(rX~PMvO!Q%gO!]%hO!z]O#g(gO#h(fO(R%fO~O!Z(hO!i(qX~O!i(jO~O!Q%gO!]%hO#h(fO(R%fO~OP(eXR(eX[(eXp(eX!O(eX!Q(eX!Z(eX!j(eX!n(eX#P(eX#l(eX#m(eX#n(eX#o(eX#p(eX#q(eX#r(eX#s(eX#t(eX#u(eX#w(eX#y(eX#z(eX(_(eX(p(eX(w(eX(x(eX~O!e#vO!i(eX~P! dOR(lO!O(kO!j#xO#Q$dO!z!ya!Q!ya~O!v!ya%g!ya!]!ya#g!ya#h!ya(R!ya~P!#eO!v(pO~OPYOQYOSfOd!jOe!iOnkOpYOqkOrkOxkOzYO|YO!QWO!UkO!VkO!]XO!guO!jZO!mYO!nYO!oYO!qvO!s!gO!v!hO$V!kO$miO(R!dO(TTO(WUO(_VO(m[O~Oh%VOn%WOp%XOq$tOr$tOx%YOz%ZO|<eO!Q${O!]$|O!g=vO!j$xO#h<kO$V%_O$s<gO$u<iO$x%`O(R(tO(TTO(WUO(_$uO(w$}O(x%PO~O#i(vO~O!Y(xO!i(iP~P%[O(c(zO(m[O~O!Q(|O!j#xO(c(zO(m[O~OP;vOQ;vOSfOd=rOe!iOnkOp;vOqkOrkOxkOz;vO|;vO!QWO!UkO!VkO!]!eO!g;yO!jZO!m;vO!n;vO!o;vO!q;zO!s;}O!v!hO$V!kO$m=pO(R)ZO(TTO(WUO(_VO(m[O~O!Z$_Oa$pa'x$pa'u$pa!i$pa!W$pa!]$pa%h$pa!e$pa~Oj)bO~P!&iOh%VOn%WOp%XOq$tOr$tOx%YOz%ZO|%[O!Q${O!]$|O!g%aO!j$xO#h%bO$V%_O$s%]O$u%^O$x%`O(R(tO(TTO(WUO(_$uO(w$}O(x%PO~Og(nP~P!+rO!O)gO!e)fO!]$]X$Y$]X$[$]X$^$]X$e$]X~O!e)fO!](yX$Y(yX$[(yX$^(yX$e(yX~O!O)gO~P!-{O!O)gO!](yX$Y(yX$[(yX$^(yX$e(yX~O!])iO$Y)mO$[)hO$^)hO$e)nO~O!Y)qO~P!(yO$[$hO$^$gO$e)uO~Ol$yX!O$yX#Q$yX'w$yX(w$yX(x$yX~OgkXg$yXlkX!ZkX#^kX~P!/qOv)wO(`)xO(a)zO~Ol*TO!O)|O'w)}O(w$}O(x%PO~Og){O~P!0uOg*UO~Oh%VOn%WOp%XOq$tOr$tOx%YOz%ZO|<eO!Q*WO!]*XO!g=vO!j$xO#h<kO$V%_O$s<gO$u<iO$x%`O(TTO(WUO(_$uO(w$}O(x%PO~O!Y*[O(R*VO!i(|P~P!1dO#i*^O~O!j*_O~Oh%VOn%WOp%XOq$tOr$tOx%YOz%ZO|<eO!Q${O!]$|O!g=vO!j$xO#h<kO$V%_O$s<gO$u<iO$x%`O(R*aO(TTO(WUO(_$uO(w$}O(x%PO~O!Y*dO!W(}P~P!3cOp*pOq!nO!Q*fO!`*nO!a*hO!b*hO!j*_O#Y*oO%_*jO(S!lO(TTO(WUO(c!mO~O![*mO~P!5WO#Q$dOl(^X!O(^X'w(^X(w(^X(x(^X!Z(^X#^(^X~Og(^X#}(^X~P!6YOl*uO#^*tOg(]X!Z(]X~O!Z*vOg([X~Oj%cO(R&XOg([P~Oq*yO~O!j+OO~O(R(tO~On+TO!Q%gO!Y#iO!]%hO!z]O#g#lO#h#iO(R%fO!i(qP~O!e#vO#i+UO~O!Q%gO!Y+WO!Z([O!]%hO(R%fO!W(tP~Oq'YO!Q+YO!Y+XO(TTO(WUO(c(zO~O![(vP~P!9]O!Z+ZOa)RX'x)RX~OP$[OR#zO[$cOp$aO!O#yO!Q#{O!j#xO!n$[O#P$RO#l$OO#m$PO#n$PO#o$PO#p$QO#q$RO#r$RO#s$bO#t$RO#u$SO#w$UO#y$WO#z$XO(_VO(p$YO(w#|O(x#}O~Oa!ha!Z!ha'x!ha'u!ha!W!ha!i!hat!ha!]!ha%h!ha!e!ha~P!:TOR#zO!O#yO!Q#{O!j#xO(_VOP!pa[!pap!pa!Z!pa!n!pa#P!pa#l!pa#m!pa#n!pa#o!pa#p!pa#q!pa#r!pa#s!pa#t!pa#u!pa#w!pa#y!pa#z!pa(p!pa(w!pa(x!pa~Oa!pa'x!pa'u!pa!W!pa!i!pat!pa!]!pa%h!pa!e!pa~P!<kOR#zO!O#yO!Q#{O!j#xO(_VOP!ra[!rap!ra!Z!ra!n!ra#P!ra#l!ra#m!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#w!ra#y!ra#z!ra(p!ra(w!ra(x!ra~Oa!ra'x!ra'u!ra!W!ra!i!rat!ra!]!ra%h!ra!e!ra~P!?ROh%VOl+dO!]'^O%h+cO~O!e+fOa(ZX!](ZX'x(ZX!Z(ZX~Oa%mO!]XO'x%mO~Oh%VO!j%dO~Oh%VO!j%dO(R%fO~O!e#vO#i(vO~Ob+qO%i+rO(R+nO(TTO(WUO![)VP~O!Z+sO`)UX~O[+wO~O`+xO~O!]&OO(R%fO(S!lO`)UP~Oh%VO#^+}O~Oh%VOl,QO!]$|O~O!],SO~O!O,UO!]XO~O%m%uO~O!v,ZO~Oe,`O~Ob,aO(R#nO(TTO(WUO![)TP~Oe%|O~O%i!QO(R&XO~P=UO[,fO`,eO~OPYOQYOSfOdzOeyOnkOpYOqkOrkOxkOzYO|YO!QWO!UkO!VkO!guO!jZO!mYO!nYO!oYO!qvO!vxO!z]O$miO%g}O(TTO(WUO(_VO(m[O~O!]!eO!s!gO$V!kO(R!dO~P!FRO`,eOa%mO'x%mO~OPYOQYOSfOd!jOe!iOnkOpYOqkOrkOxkOzYO|YO!QWO!UkO!VkO!]!eO!guO!jZO!mYO!nYO!oYO!qvO!v!hO$V!kO$miO(R!dO(TTO(WUO(_VO(m[O~Oa,kOj!OO!swO%k!OO%l!OO%m!OO~P!HkO!j&mO~O&[,qO~O!],sO~O&m,uO&o,vOP&jaQ&jaS&jaY&jaa&jad&jae&jaj&jan&jap&jaq&jar&jax&jaz&ja|&ja!Q&ja!U&ja!V&ja!]&ja!g&ja!j&ja!m&ja!n&ja!o&ja!q&ja!s&ja!v&ja!z&ja$V&ja$m&ja%g&ja%i&ja%k&ja%l&ja%m&ja%p&ja%r&ja%u&ja%v&ja%x&ja&U&ja&[&ja&^&ja&`&ja&b&ja&e&ja&k&ja&q&ja&s&ja&u&ja&w&ja&y&ja'u&ja(R&ja(T&ja(W&ja(_&ja(m&ja![&ja&c&jab&ja&h&ja~O(R,{O~Oh!cX!Z!PX![!PX!e!PX!e!cX!j!cX#^!PX~O!Z!cX![!cX~P# qO!e-QO#^-POh(hX!Z#fX![#fX!e(hX!j(hX~O!Z(hX![(hX~P#!dOh%VO!e-SO!j%dO!Z!_X![!_X~Oq!nO!Q!oO(TTO(WUO(c!mO~OP;vOQ;vOSfOd=rOe!iOnkOp;vOqkOrkOxkOz;vO|;vO!QWO!UkO!VkO!]!eO!g;yO!jZO!m;vO!n;vO!o;vO!q;zO!s;}O!v!hO$V!kO$m=pO(TTO(WUO(_VO(m[O~O(R<rO~P##yO!Z-WO![(gX~O![-YO~O!e-QO#^-PO!Z#fX![#fX~O!Z-ZO![(vX~O![-]O~O!a-^O!b-^O(S!lO~P##hO![-aO~P'_Ol-dO!]'^O~O!W-iO~Oq!ya!`!ya!a!ya!b!ya#R!ya#S!ya#T!ya#U!ya#V!ya#Y!ya#Z!ya(S!ya(T!ya(W!ya(c!ya(m!ya~P!#eO!n-nO#^-lO~PCVO!a-pO!b-pO(S!lO~PCuOa%mO#^-lO'x%mO~Oa%mO!e#vO#^-lO'x%mO~Oa%mO!e#vO!n-nO#^-lO'x%mO(p'nO~O'}'vO(O'vO(P-uO~Ot-vO~O!W'Ua!Z'Ua~P!:TO!Y-zO!W'UX!Z'UX~P%[O!Z(TO!W(fa~O!W(fa~PGpO!Z([O!W(ta~O!Q%gO!Y.OO!]%hO(R%fO!W'[X!Z'[X~O#^.QO!Z(ra!i(raa(ra'x(ra~O!e#vO~P#,PO!Z(hO!i(qa~O!Q%gO!]%hO#h.UO(R%fO~On.ZO!Q%gO!Y.WO!]%hO!z]O#g.YO#h.WO(R%fO!Z'_X!i'_X~OR._O!j#xO~Oh%VOl.bO!]'^O%h.aO~Oa#ai!Z#ai'x#ai'u#ai!W#ai!i#ait#ai!]#ai%h#ai!e#ai~P!:TOl=|O!O)|O'w)}O(w$}O(x%PO~O#i#]aa#]a#^#]a'x#]a!Z#]a!i#]a!]#]a!W#]a~P#.{O#i(^XP(^XR(^X[(^Xa(^Xp(^X!Q(^X!j(^X!n(^X#P(^X#l(^X#m(^X#n(^X#o(^X#p(^X#q(^X#r(^X#s(^X#t(^X#u(^X#w(^X#y(^X#z(^X'x(^X(_(^X(p(^X!i(^X!W(^X'u(^Xt(^X!](^X%h(^X!e(^X~P!6YO!Z.oO!i(iX~P!:TO!i.rO~O!W.tO~OP$[OR#zO!O#yO!Q#{O!j#xO!n$[O(_VO[#kia#kip#ki!Z#ki#P#ki#m#ki#n#ki#o#ki#p#ki#q#ki#r#ki#s#ki#t#ki#u#ki#w#ki#y#ki#z#ki'x#ki(p#ki(w#ki(x#ki'u#ki!W#ki!i#kit#ki!]#ki%h#ki!e#ki~O#l#ki~P#2kO#l$OO~P#2kOP$[OR#zOp$aO!O#yO!Q#{O!j#xO!n$[O#l$OO#m$PO#n$PO#o$PO(_VO[#kia#ki!Z#ki#P#ki#q#ki#r#ki#s#ki#t#ki#u#ki#w#ki#y#ki#z#ki'x#ki(p#ki(w#ki(x#ki'u#ki!W#ki!i#kit#ki!]#ki%h#ki!e#ki~O#p#ki~P#5YO#p$QO~P#5YOP$[OR#zO[$cOp$aO!O#yO!Q#{O!j#xO!n$[O#P$RO#l$OO#m$PO#n$PO#o$PO#p$QO#q$RO#r$RO#s$bO#t$RO(_VOa#ki!Z#ki#w#ki#y#ki#z#ki'x#ki(p#ki(w#ki(x#ki'u#ki!W#ki!i#kit#ki!]#ki%h#ki!e#ki~O#u#ki~P#7wOP$[OR#zO[$cOp$aO!O#yO!Q#{O!j#xO!n$[O#P$RO#l$OO#m$PO#n$PO#o$PO#p$QO#q$RO#r$RO#s$bO#t$RO#u$SO(_VO(x#}Oa#ki!Z#ki#y#ki#z#ki'x#ki(p#ki(w#ki'u#ki!W#ki!i#kit#ki!]#ki%h#ki!e#ki~O#w$UO~P#:_O#w#ki~P#:_O#u$SO~P#7wOP$[OR#zO[$cOp$aO!O#yO!Q#{O!j#xO!n$[O#P$RO#l$OO#m$PO#n$PO#o$PO#p$QO#q$RO#r$RO#s$bO#t$RO#u$SO#w$UO(_VO(w#|O(x#}Oa#ki!Z#ki#z#ki'x#ki(p#ki'u#ki!W#ki!i#kit#ki!]#ki%h#ki!e#ki~O#y#ki~P#=TO#y$WO~P#=TOP]XR]X[]Xp]X!O]X!Q]X!j]X!n]X#P]X#Q]X#^]X#ifX#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#w]X#y]X#z]X$P]X(_]X(p]X(w]X(x]X!Z]X![]X~O#}]X~P#?rOP$[OR#zO[<_Op<]O!O#yO!Q#{O!j#xO!n$[O#P<SO#l<PO#m<QO#n<QO#o<QO#p<RO#q<SO#r<SO#s<^O#t<SO#u<TO#w<VO#y<XO#z<YO(_VO(p$YO(w#|O(x#}O~O#}.vO~P#BPO#Q$dO#^<`O$P<`O#}(eX![(eX~P! dOa'ba!Z'ba'x'ba'u'ba!i'ba!W'bat'ba!]'ba%h'ba!e'ba~P!:TO[#kia#kip#ki!Z#ki#P#ki#p#ki#q#ki#r#ki#s#ki#t#ki#u#ki#w#ki#y#ki#z#ki'x#ki(p#ki'u#ki!W#ki!i#kit#ki!]#ki%h#ki!e#ki~OP$[OR#zO!O#yO!Q#{O!j#xO!n$[O#l$OO#m$PO#n$PO#o$PO(_VO(w#ki(x#ki~P#EROl=|O!O)|O'w)}O(w$}O(x%POP#kiR#ki!Q#ki!j#ki!n#ki#l#ki#m#ki#n#ki#o#ki(_#ki~P#ERO!Z.zOg(nX~P!0uOg.|O~Oa$Oi!Z$Oi'x$Oi'u$Oi!W$Oi!i$Oit$Oi!]$Oi%h$Oi!e$Oi~P!:TO$[.}O$^.}O~O$[/OO$^/OO~O!e)fO#^/PO!]$bX$Y$bX$[$bX$^$bX$e$bX~O!Y/QO~O!])iO$Y/SO$[)hO$^)hO$e/TO~O!Z<ZO![(dX~P#BPO![/UO~O!e)fO$e(yX~O$e/WO~Ot/XO~P!&iOv)wO(`)xO(a/[O~O!Q/_O~O(w$}Ol%`a!O%`a'w%`a(x%`a!Z%`a#^%`a~Og%`a#}%`a~P#LTO(x%POl%ba!O%ba'w%ba(w%ba!Z%ba#^%ba~Og%ba#}%ba~P#LvO!ZfX!efX!ifX!i$yX(pfX~P!/qO!Y/hO!Z([O(R/gO!W(tP!W(}P~P!1dOp*pO!`*nO!a*hO!b*hO!j*_O#Y*oO%_*jO(S!lO(TTO(WUO~Oq<oO!Q/iO!Y+XO![*mO(c<nO![(vP~P#NaO!i/jO~P#.{O!Z/kO!e#vO(p'nO!i(|X~O!i/pO~O!Q%gO!Y*[O!]%hO(R%fO!i(|P~O#i/rO~O!W$yX!Z$yX!e%QX~P!/qO!Z/sO!W(}X~P#.{O!e/uO~O!W/wO~OnkO(R/xO~P.iOh%VOp/}O!e#vO!j%dO(p'nO~O!e+fO~Oa%mO!Z0RO'x%mO~O![0TO~P!5WO!a0UO!b0UO(S!lO~P##hOq!nO!Q0VO(TTO(WUO(c!mO~O#Y0XO~Og%`a!Z%`a#^%`a#}%`a~P!0uOg%ba!Z%ba#^%ba#}%ba~P!0uOj%cO(R&XOg'kX!Z'kX~O!Z*vOg([a~Og0bO~OR0cO!O0cO!Q0dO#Q$dOl{a'w{a(w{a(x{a!Z{a#^{a~Og{a#}{a~P$&dO!O)|O'w)}Ol$ra(w$ra(x$ra!Z$ra#^$ra~Og$ra#}$ra~P$'`O!O)|O'w)}Ol$ta(w$ta(x$ta!Z$ta#^$ta~Og$ta#}$ta~P$(RO#i0gO~Og%Sa!Z%Sa#^%Sa#}%Sa~P!0uOl0iO#^0hOg(]a!Z(]a~O!e#vO~O#i0lO~O!Z+ZOa)Ra'x)Ra~OR#zO!O#yO!Q#{O!j#xO(_VOP!pi[!pip!pi!Z!pi!n!pi#P!pi#l!pi#m!pi#n!pi#o!pi#p!pi#q!pi#r!pi#s!pi#t!pi#u!pi#w!pi#y!pi#z!pi(p!pi(w!pi(x!pi~Oa!pi'x!pi'u!pi!W!pi!i!pit!pi!]!pi%h!pi!e!pi~P$*OOh%VOp%XOq$tOr$tOx%YOz%ZO|<eO!Q${O!]$|O!g=vO!j$xO#h<kO$V%_O$s<gO$u<iO$x%`O(TTO(WUO(_$uO(w$}O(x%PO~On0vO%[0wO(R0tO~P$,fO!e+fOa(Za!](Za'x(Za!Z(Za~O#i0|O~O[]X!ZfX![fX~O!Z0}O![)VX~O![1PO~O[1QO~Ob1SO(R+nO(TTO(WUO~O!]&OO(R%fO`'sX!Z'sX~O!Z+sO`)Ua~O!i1VO~P!:TO[1YO~O`1ZO~O#^1^O~Ol1aO!]$|O~O(c(zO![)SP~Oh%VOl1jO!]1gO%h1iO~O[1tO!Z1rO![)TX~O![1uO~O`1wOa%mO'x%mO~O(R#nO(TTO(WUO~O#Q$dO#^$eO$P$eOP(eXR(eX[(eXp(eX!O(eX!Q(eX!Z(eX!j(eX!n(eX#P(eX#l(eX#m(eX#n(eX#o(eX#p(eX#q(eX#r(eX#s(eX#u(eX#w(eX#y(eX#z(eX(_(eX(p(eX(w(eX(x(eX~O#t1zO&Y1{Oa(eX~P$2PO#^$eO#t1zO&Y1{O~Oa1}O~P%[Oa2PO~O&c2SOP&aiQ&aiS&aiY&aia&aid&aie&aij&ain&aip&aiq&air&aix&aiz&ai|&ai!Q&ai!U&ai!V&ai!]&ai!g&ai!j&ai!m&ai!n&ai!o&ai!q&ai!s&ai!v&ai!z&ai$V&ai$m&ai%g&ai%i&ai%k&ai%l&ai%m&ai%p&ai%r&ai%u&ai%v&ai%x&ai&U&ai&[&ai&^&ai&`&ai&b&ai&e&ai&k&ai&q&ai&s&ai&u&ai&w&ai&y&ai'u&ai(R&ai(T&ai(W&ai(_&ai(m&ai![&aib&ai&h&ai~Ob2YO![2WO&h2XO~P`O!]XO!j2[O~O&o,vOP&jiQ&jiS&jiY&jia&jid&jie&jij&jin&jip&jiq&jir&jix&jiz&ji|&ji!Q&ji!U&ji!V&ji!]&ji!g&ji!j&ji!m&ji!n&ji!o&ji!q&ji!s&ji!v&ji!z&ji$V&ji$m&ji%g&ji%i&ji%k&ji%l&ji%m&ji%p&ji%r&ji%u&ji%v&ji%x&ji&U&ji&[&ji&^&ji&`&ji&b&ji&e&ji&k&ji&q&ji&s&ji&u&ji&w&ji&y&ji'u&ji(R&ji(T&ji(W&ji(_&ji(m&ji![&ji&c&jib&ji&h&ji~O!W2bO~O!Z!_a![!_a~P#BPOq!nO!Q!oO!Y2hO(c!mO!Z'VX!['VX~P@]O!Z-WO![(ga~O!Z']X![']X~P!9]O!Z-ZO![(va~O![2oO~P'_Oa%mO#^2xO'x%mO~Oa%mO!e#vO#^2xO'x%mO~Oa%mO!e#vO!n2|O#^2xO'x%mO(p'nO~Oa%mO'x%mO~P!:TO!Z$_Ot$pa~O!W'Ui!Z'Ui~P!:TO!Z(TO!W(fi~O!Z([O!W(ti~O!W(ui!Z(ui~P!:TO!Z(ri!i(ria(ri'x(ri~P!:TO#^3OO!Z(ri!i(ria(ri'x(ri~O!Z(hO!i(qi~O!Q%gO!]%hO!z]O#g3TO#h3SO(R%fO~O!Q%gO!]%hO#h3SO(R%fO~Ol3[O!]'^O%h3ZO~Oh%VOl3[O!]'^O%h3ZO~O#i%`aP%`aR%`a[%`aa%`ap%`a!Q%`a!j%`a!n%`a#P%`a#l%`a#m%`a#n%`a#o%`a#p%`a#q%`a#r%`a#s%`a#t%`a#u%`a#w%`a#y%`a#z%`a'x%`a(_%`a(p%`a!i%`a!W%`a'u%`at%`a!]%`a%h%`a!e%`a~P#LTO#i%baP%baR%ba[%baa%bap%ba!Q%ba!j%ba!n%ba#P%ba#l%ba#m%ba#n%ba#o%ba#p%ba#q%ba#r%ba#s%ba#t%ba#u%ba#w%ba#y%ba#z%ba'x%ba(_%ba(p%ba!i%ba!W%ba'u%bat%ba!]%ba%h%ba!e%ba~P#LvO#i%`aP%`aR%`a[%`aa%`ap%`a!Q%`a!Z%`a!j%`a!n%`a#P%`a#l%`a#m%`a#n%`a#o%`a#p%`a#q%`a#r%`a#s%`a#t%`a#u%`a#w%`a#y%`a#z%`a'x%`a(_%`a(p%`a!i%`a!W%`a'u%`a#^%`at%`a!]%`a%h%`a!e%`a~P#.{O#i%baP%baR%ba[%baa%bap%ba!Q%ba!Z%ba!j%ba!n%ba#P%ba#l%ba#m%ba#n%ba#o%ba#p%ba#q%ba#r%ba#s%ba#t%ba#u%ba#w%ba#y%ba#z%ba'x%ba(_%ba(p%ba!i%ba!W%ba'u%ba#^%bat%ba!]%ba%h%ba!e%ba~P#.{O#i{aP{a[{aa{ap{a!j{a!n{a#P{a#l{a#m{a#n{a#o{a#p{a#q{a#r{a#s{a#t{a#u{a#w{a#y{a#z{a'x{a(_{a(p{a!i{a!W{a'u{at{a!]{a%h{a!e{a~P$&dO#i$raP$raR$ra[$raa$rap$ra!Q$ra!j$ra!n$ra#P$ra#l$ra#m$ra#n$ra#o$ra#p$ra#q$ra#r$ra#s$ra#t$ra#u$ra#w$ra#y$ra#z$ra'x$ra(_$ra(p$ra!i$ra!W$ra'u$rat$ra!]$ra%h$ra!e$ra~P$'`O#i$taP$taR$ta[$taa$tap$ta!Q$ta!j$ta!n$ta#P$ta#l$ta#m$ta#n$ta#o$ta#p$ta#q$ta#r$ta#s$ta#t$ta#u$ta#w$ta#y$ta#z$ta'x$ta(_$ta(p$ta!i$ta!W$ta'u$tat$ta!]$ta%h$ta!e$ta~P$(RO#i%SaP%SaR%Sa[%Saa%Sap%Sa!Q%Sa!Z%Sa!j%Sa!n%Sa#P%Sa#l%Sa#m%Sa#n%Sa#o%Sa#p%Sa#q%Sa#r%Sa#s%Sa#t%Sa#u%Sa#w%Sa#y%Sa#z%Sa'x%Sa(_%Sa(p%Sa!i%Sa!W%Sa'u%Sa#^%Sat%Sa!]%Sa%h%Sa!e%Sa~P#.{Oa#aq!Z#aq'x#aq'u#aq!W#aq!i#aqt#aq!]#aq%h#aq!e#aq~P!:TO!Y3dO!Z'WX!i'WX~P%[O!Z.oO!i(ia~O!Z.oO!i(ia~P!:TO!W3gO~O#}!la![!la~PKZO#}!ha!Z!ha![!ha~P#BPO#}!pa![!pa~P!<kO#}!ra![!ra~P!?ROg'ZX!Z'ZX~P!+rO!Z.zOg(na~OSfO!]3{O$c3|O~O![4QO~Ot4RO~P#.{Oa$lq!Z$lq'x$lq'u$lq!W$lq!i$lqt$lq!]$lq%h$lq!e$lq~P!:TO!W4TO~P!&iO!Q4UO~O!O)|O'w)}O(x%POl'ga(w'ga!Z'ga#^'ga~Og'ga#}'ga~P%+uO!O)|O'w)}Ol'ia(w'ia(x'ia!Z'ia#^'ia~Og'ia#}'ia~P%,hO(p$YO~P#.{O!WfX!W$yX!ZfX!Z$yX!e%QX#^fX~P!/qO(R<xO~P!1dO!Q%gO!Y4XO!]%hO(R%fO!Z'cX!i'cX~O!Z/kO!i(|a~O!Z/kO!e#vO!i(|a~O!Z/kO!e#vO(p'nO!i(|a~Og${i!Z${i#^${i#}${i~P!0uO!Y4aO!W'eX!Z'eX~P!3cO!Z/sO!W(}a~O!Z/sO!W(}a~P#.{OP]XR]X[]Xp]X!O]X!Q]X!W]X!Z]X!j]X!n]X#P]X#Q]X#^]X#ifX#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#w]X#y]X#z]X$P]X(_]X(p]X(w]X(x]X~O!e%XX#t%XX~P%0XO!e#vO#t4fO~Oh%VO!e#vO!j%dO~Oh%VOp4kO!j%dO(p'nO~Op4pO!e#vO(p'nO~Oq!nO!Q4qO(TTO(WUO(c!mO~O(w$}Ol%`i!O%`i'w%`i(x%`i!Z%`i#^%`i~Og%`i#}%`i~P%3xO(x%POl%bi!O%bi'w%bi(w%bi!Z%bi#^%bi~Og%bi#}%bi~P%4kOg(]i!Z(]i~P!0uO#^4wOg(]i!Z(]i~P!0uO!i4zO~Oa$nq!Z$nq'x$nq'u$nq!W$nq!i$nqt$nq!]$nq%h$nq!e$nq~P!:TO!W5QO~O!Z5RO!])OX~P#.{Oa]Xa$yX!]]X!]$yX%]]X'x]X'x$yX!Z]X!Z$yX~P!/qO%]5UOa%Za!]%Za'x%Za!Z%Za~OlmX!OmX'wmX(wmX(xmX~P%7nOn5VO(R#nO~Ob5]O%i5^O(R+nO(TTO(WUO!Z'rX!['rX~O!Z0}O![)Va~O[5bO~O`5cO~Oa%mO'x%mO~P#.{O!Z5kO#^5mO![)SX~O![5nO~Op5tOq!nO!Q*fO!`!yO!a!vO!b!vO!z;wO#R!pO#S!pO#T!pO#U!pO#V!pO#Y5sO#Z!zO(S!lO(TTO(WUO(c!mO(m!sO~O![5rO~P%:ROl5yO!]1gO%h5xO~Oh%VOl5yO!]1gO%h5xO~Ob6QO(R#nO(TTO(WUO!Z'qX!['qX~O!Z1rO![)Ta~O(TTO(WUO(c6SO~O`6WO~O#t6ZO&Y6[O~PMvO!i6]O~P%[Oa6_O~Oa6_O~P%[Ob2YO![6dO&h2XO~P`O!e6fO~O!e6hOh(hi!Z(hi![(hi!e(hi!j(hip(hi(p(hi~O!Z#fi![#fi~P#BPO#^6iO!Z#fi![#fi~O!Z!_i![!_i~P#BPOa%mO#^6rO'x%mO~Oa%mO!e#vO#^6rO'x%mO~O!Z(rq!i(rqa(rq'x(rq~P!:TO!Z(hO!i(qq~O!Q%gO!]%hO#h6yO(R%fO~O!]'^O%h6|O~Ol7QO!]'^O%h6|O~O#i'gaP'gaR'ga['gaa'gap'ga!Q'ga!j'ga!n'ga#P'ga#l'ga#m'ga#n'ga#o'ga#p'ga#q'ga#r'ga#s'ga#t'ga#u'ga#w'ga#y'ga#z'ga'x'ga(_'ga(p'ga!i'ga!W'ga'u'gat'ga!]'ga%h'ga!e'ga~P%+uO#i'iaP'iaR'ia['iaa'iap'ia!Q'ia!j'ia!n'ia#P'ia#l'ia#m'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#w'ia#y'ia#z'ia'x'ia(_'ia(p'ia!i'ia!W'ia'u'iat'ia!]'ia%h'ia!e'ia~P%,hO#i${iP${iR${i[${ia${ip${i!Q${i!Z${i!j${i!n${i#P${i#l${i#m${i#n${i#o${i#p${i#q${i#r${i#s${i#t${i#u${i#w${i#y${i#z${i'x${i(_${i(p${i!i${i!W${i'u${i#^${it${i!]${i%h${i!e${i~P#.{O#i%`iP%`iR%`i[%`ia%`ip%`i!Q%`i!j%`i!n%`i#P%`i#l%`i#m%`i#n%`i#o%`i#p%`i#q%`i#r%`i#s%`i#t%`i#u%`i#w%`i#y%`i#z%`i'x%`i(_%`i(p%`i!i%`i!W%`i'u%`it%`i!]%`i%h%`i!e%`i~P%3xO#i%biP%biR%bi[%bia%bip%bi!Q%bi!j%bi!n%bi#P%bi#l%bi#m%bi#n%bi#o%bi#p%bi#q%bi#r%bi#s%bi#t%bi#u%bi#w%bi#y%bi#z%bi'x%bi(_%bi(p%bi!i%bi!W%bi'u%bit%bi!]%bi%h%bi!e%bi~P%4kO!Z'Wa!i'Wa~P!:TO!Z.oO!i(ii~O#}#ai!Z#ai![#ai~P#BPOP$[OR#zO!O#yO!Q#{O!j#xO!n$[O(_VO[#kip#ki#P#ki#m#ki#n#ki#o#ki#p#ki#q#ki#r#ki#s#ki#t#ki#u#ki#w#ki#y#ki#z#ki#}#ki(p#ki(w#ki(x#ki!Z#ki![#ki~O#l#ki~P%MQO#l<PO~P%MQOP$[OR#zOp<]O!O#yO!Q#{O!j#xO!n$[O#l<PO#m<QO#n<QO#o<QO(_VO[#ki#P#ki#q#ki#r#ki#s#ki#t#ki#u#ki#w#ki#y#ki#z#ki#}#ki(p#ki(w#ki(x#ki!Z#ki![#ki~O#p#ki~P& YO#p<RO~P& YOP$[OR#zO[<_Op<]O!O#yO!Q#{O!j#xO!n$[O#P<SO#l<PO#m<QO#n<QO#o<QO#p<RO#q<SO#r<SO#s<^O#t<SO(_VO#w#ki#y#ki#z#ki#}#ki(p#ki(w#ki(x#ki!Z#ki![#ki~O#u#ki~P&#bOP$[OR#zO[<_Op<]O!O#yO!Q#{O!j#xO!n$[O#P<SO#l<PO#m<QO#n<QO#o<QO#p<RO#q<SO#r<SO#s<^O#t<SO#u<TO(_VO(x#}O#y#ki#z#ki#}#ki(p#ki(w#ki!Z#ki![#ki~O#w<VO~P&%cO#w#ki~P&%cO#u<TO~P&#bOP$[OR#zO[<_Op<]O!O#yO!Q#{O!j#xO!n$[O#P<SO#l<PO#m<QO#n<QO#o<QO#p<RO#q<SO#r<SO#s<^O#t<SO#u<TO#w<VO(_VO(w#|O(x#}O#z#ki#}#ki(p#ki!Z#ki![#ki~O#y#ki~P&'rO#y<XO~P&'rOa#{y!Z#{y'x#{y'u#{y!W#{y!i#{yt#{y!]#{y%h#{y!e#{y~P!:TO[#kip#ki#P#ki#p#ki#q#ki#r#ki#s#ki#t#ki#u#ki#w#ki#y#ki#z#ki#}#ki(p#ki!Z#ki![#ki~OP$[OR#zO!O#yO!Q#{O!j#xO!n$[O#l<PO#m<QO#n<QO#o<QO(_VO(w#ki(x#ki~P&*nOl=}O!O)|O'w)}O(w$}O(x%POP#kiR#ki!Q#ki!j#ki!n#ki#l#ki#m#ki#n#ki#o#ki(_#ki~P&*nO#Q$dOP(^XR(^X[(^Xl(^Xp(^X!O(^X!Q(^X!j(^X!n(^X#P(^X#l(^X#m(^X#n(^X#o(^X#p(^X#q(^X#r(^X#s(^X#t(^X#u(^X#w(^X#y(^X#z(^X#}(^X'w(^X(_(^X(p(^X(w(^X(x(^X!Z(^X![(^X~O#}$Oi!Z$Oi![$Oi~P#BPO#}!pi![!pi~P$*OOg'Za!Z'Za~P!0uO![7dO~O!Z'ba!['ba~P#BPO!W7eO~P#.{O!e#vO(p'nO!Z'ca!i'ca~O!Z/kO!i(|i~O!Z/kO!e#vO!i(|i~Og${q!Z${q#^${q#}${q~P!0uO!W'ea!Z'ea~P#.{O!e7lO~O!Z/sO!W(}i~P#.{O!Z/sO!W(}i~O!W7oO~Oh%VOp7tO!j%dO(p'nO~O!e#vO#t7vO~Op7yO!e#vO(p'nO~O!O)|O'w)}O(x%POl'ha(w'ha!Z'ha#^'ha~Og'ha#}'ha~P&3oO!O)|O'w)}Ol'ja(w'ja(x'ja!Z'ja#^'ja~Og'ja#}'ja~P&4bO!W7{O~Og$}q!Z$}q#^$}q#}$}q~P!0uOg(]q!Z(]q~P!0uO#^7|Og(]q!Z(]q~P!0uOa$ny!Z$ny'x$ny'u$ny!W$ny!i$nyt$ny!]$ny%h$ny!e$ny~P!:TO!e6hO~O!Z5RO!])Oa~O!]'^OP$SaR$Sa[$Sap$Sa!O$Sa!Q$Sa!Z$Sa!j$Sa!n$Sa#P$Sa#l$Sa#m$Sa#n$Sa#o$Sa#p$Sa#q$Sa#r$Sa#s$Sa#t$Sa#u$Sa#w$Sa#y$Sa#z$Sa(_$Sa(p$Sa(w$Sa(x$Sa~O%h6|O~P&7SO%]8QOa%Zi!]%Zi'x%Zi!Z%Zi~Oa#ay!Z#ay'x#ay'u#ay!W#ay!i#ayt#ay!]#ay%h#ay!e#ay~P!:TO[8SO~Ob8UO(R+nO(TTO(WUO~O!Z0}O![)Vi~O`8YO~O(c(zO!Z'nX!['nX~O!Z5kO![)Sa~O![8cO~P%:RO(m!sO~P$$oO#Y8dO~O!]1gO~O!]1gO%h8fO~Ol8iO!]1gO%h8fO~O[8nO!Z'qa!['qa~O!Z1rO![)Ti~O!i8rO~O!i8sO~O!i8vO~O!i8vO~P%[Oa8xO~O!e8yO~O!i8zO~O!Z(ui![(ui~P#BPOa%mO#^9SO'x%mO~O!Z(ry!i(rya(ry'x(ry~P!:TO!Z(hO!i(qy~O%h9VO~P&7SO!]'^O%h9VO~O#i${qP${qR${q[${qa${qp${q!Q${q!Z${q!j${q!n${q#P${q#l${q#m${q#n${q#o${q#p${q#q${q#r${q#s${q#t${q#u${q#w${q#y${q#z${q'x${q(_${q(p${q!i${q!W${q'u${q#^${qt${q!]${q%h${q!e${q~P#.{O#i'haP'haR'ha['haa'hap'ha!Q'ha!j'ha!n'ha#P'ha#l'ha#m'ha#n'ha#o'ha#p'ha#q'ha#r'ha#s'ha#t'ha#u'ha#w'ha#y'ha#z'ha'x'ha(_'ha(p'ha!i'ha!W'ha'u'hat'ha!]'ha%h'ha!e'ha~P&3oO#i'jaP'jaR'ja['jaa'jap'ja!Q'ja!j'ja!n'ja#P'ja#l'ja#m'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#w'ja#y'ja#z'ja'x'ja(_'ja(p'ja!i'ja!W'ja'u'jat'ja!]'ja%h'ja!e'ja~P&4bO#i$}qP$}qR$}q[$}qa$}qp$}q!Q$}q!Z$}q!j$}q!n$}q#P$}q#l$}q#m$}q#n$}q#o$}q#p$}q#q$}q#r$}q#s$}q#t$}q#u$}q#w$}q#y$}q#z$}q'x$}q(_$}q(p$}q!i$}q!W$}q'u$}q#^$}qt$}q!]$}q%h$}q!e$}q~P#.{O!Z'Wi!i'Wi~P!:TO#}#aq!Z#aq![#aq~P#BPO(w$}OP%`aR%`a[%`ap%`a!Q%`a!j%`a!n%`a#P%`a#l%`a#m%`a#n%`a#o%`a#p%`a#q%`a#r%`a#s%`a#t%`a#u%`a#w%`a#y%`a#z%`a#}%`a(_%`a(p%`a!Z%`a![%`a~Ol%`a!O%`a'w%`a(x%`a~P&HgO(x%POP%baR%ba[%bap%ba!Q%ba!j%ba!n%ba#P%ba#l%ba#m%ba#n%ba#o%ba#p%ba#q%ba#r%ba#s%ba#t%ba#u%ba#w%ba#y%ba#z%ba#}%ba(_%ba(p%ba!Z%ba![%ba~Ol%ba!O%ba'w%ba(w%ba~P&JnOl=}O!O)|O'w)}O(x%PO~P&HgOl=}O!O)|O'w)}O(w$}O~P&JnOR0cO!O0cO!Q0dO#Q$dOP{a[{al{ap{a!j{a!n{a#P{a#l{a#m{a#n{a#o{a#p{a#q{a#r{a#s{a#t{a#u{a#w{a#y{a#z{a#}{a'w{a(_{a(p{a(w{a(x{a!Z{a![{a~O!O)|O'w)}OP$raR$ra[$ral$rap$ra!Q$ra!j$ra!n$ra#P$ra#l$ra#m$ra#n$ra#o$ra#p$ra#q$ra#r$ra#s$ra#t$ra#u$ra#w$ra#y$ra#z$ra#}$ra(_$ra(p$ra(w$ra(x$ra!Z$ra![$ra~O!O)|O'w)}OP$taR$ta[$tal$tap$ta!Q$ta!j$ta!n$ta#P$ta#l$ta#m$ta#n$ta#o$ta#p$ta#q$ta#r$ta#s$ta#t$ta#u$ta#w$ta#y$ta#z$ta#}$ta(_$ta(p$ta(w$ta(x$ta!Z$ta![$ta~Ol=}O!O)|O'w)}O(w$}O(x%PO~OP%SaR%Sa[%Sap%Sa!Q%Sa!j%Sa!n%Sa#P%Sa#l%Sa#m%Sa#n%Sa#o%Sa#p%Sa#q%Sa#r%Sa#s%Sa#t%Sa#u%Sa#w%Sa#y%Sa#z%Sa#}%Sa(_%Sa(p%Sa!Z%Sa![%Sa~P'%sO#}$lq!Z$lq![$lq~P#BPO#}$nq!Z$nq![$nq~P#BPO![9dO~O#}9eO~P!0uO!e#vO!Z'ci!i'ci~O!e#vO(p'nO!Z'ci!i'ci~O!Z/kO!i(|q~O!W'ei!Z'ei~P#.{O!Z/sO!W(}q~Op9lO!e#vO(p'nO~O[9nO!W9mO~P#.{O!W9mO~O!e#vO#t9tO~Og(]y!Z(]y~P!0uO!Z'la!]'la~P#.{Oa%Zq!]%Zq'x%Zq!Z%Zq~P#.{O[9yO~O!Z0}O![)Vq~O#^9}O!Z'na!['na~O!Z5kO![)Si~P#BPO!Q:PO~O!]1gO%h:SO~O(TTO(WUO(c:XO~O!Z1rO![)Tq~O!i:[O~O!i:]O~O!i:^O~O!i:^O~P%[O#^:aO!Z#fy![#fy~O!Z#fy![#fy~P#BPO%h:fO~P&7SO!]'^O%h:fO~O#}#{y!Z#{y![#{y~P#BPOP${iR${i[${ip${i!Q${i!j${i!n${i#P${i#l${i#m${i#n${i#o${i#p${i#q${i#r${i#s${i#t${i#u${i#w${i#y${i#z${i#}${i(_${i(p${i!Z${i![${i~P'%sO!O)|O'w)}O(x%POP'gaR'ga['gal'gap'ga!Q'ga!j'ga!n'ga#P'ga#l'ga#m'ga#n'ga#o'ga#p'ga#q'ga#r'ga#s'ga#t'ga#u'ga#w'ga#y'ga#z'ga#}'ga(_'ga(p'ga(w'ga!Z'ga!['ga~O!O)|O'w)}OP'iaR'ia['ial'iap'ia!Q'ia!j'ia!n'ia#P'ia#l'ia#m'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#w'ia#y'ia#z'ia#}'ia(_'ia(p'ia(w'ia(x'ia!Z'ia!['ia~O(w$}OP%`iR%`i[%`il%`ip%`i!O%`i!Q%`i!j%`i!n%`i#P%`i#l%`i#m%`i#n%`i#o%`i#p%`i#q%`i#r%`i#s%`i#t%`i#u%`i#w%`i#y%`i#z%`i#}%`i'w%`i(_%`i(p%`i(x%`i!Z%`i![%`i~O(x%POP%biR%bi[%bil%bip%bi!O%bi!Q%bi!j%bi!n%bi#P%bi#l%bi#m%bi#n%bi#o%bi#p%bi#q%bi#r%bi#s%bi#t%bi#u%bi#w%bi#y%bi#z%bi#}%bi'w%bi(_%bi(p%bi(w%bi!Z%bi![%bi~O#}$ny!Z$ny![$ny~P#BPO#}#ay!Z#ay![#ay~P#BPO!e#vO!Z'cq!i'cq~O!Z/kO!i(|y~O!W'eq!Z'eq~P#.{Op:pO!e#vO(p'nO~O[:tO!W:sO~P#.{O!W:sO~Og(]!R!Z(]!R~P!0uOa%Zy!]%Zy'x%Zy!Z%Zy~P#.{O!Z0}O![)Vy~O!Z5kO![)Sq~O(R:zO~O!]1gO%h:}O~O!i;QO~O%h;VO~P&7SOP${qR${q[${qp${q!Q${q!j${q!n${q#P${q#l${q#m${q#n${q#o${q#p${q#q${q#r${q#s${q#t${q#u${q#w${q#y${q#z${q#}${q(_${q(p${q!Z${q![${q~P'%sO!O)|O'w)}O(x%POP'haR'ha['hal'hap'ha!Q'ha!j'ha!n'ha#P'ha#l'ha#m'ha#n'ha#o'ha#p'ha#q'ha#r'ha#s'ha#t'ha#u'ha#w'ha#y'ha#z'ha#}'ha(_'ha(p'ha(w'ha!Z'ha!['ha~O!O)|O'w)}OP'jaR'ja['jal'jap'ja!Q'ja!j'ja!n'ja#P'ja#l'ja#m'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#w'ja#y'ja#z'ja#}'ja(_'ja(p'ja(w'ja(x'ja!Z'ja!['ja~OP$}qR$}q[$}qp$}q!Q$}q!j$}q!n$}q#P$}q#l$}q#m$}q#n$}q#o$}q#p$}q#q$}q#r$}q#s$}q#t$}q#u$}q#w$}q#y$}q#z$}q#}$}q(_$}q(p$}q!Z$}q![$}q~P'%sOg%d!Z!Z%d!Z#^%d!Z#}%d!Z~P!0uO!W;ZO~P#.{Op;[O!e#vO(p'nO~O[;^O!W;ZO~P#.{O!Z'nq!['nq~P#BPO!Z#f!Z![#f!Z~P#BPO#i%d!ZP%d!ZR%d!Z[%d!Za%d!Zp%d!Z!Q%d!Z!Z%d!Z!j%d!Z!n%d!Z#P%d!Z#l%d!Z#m%d!Z#n%d!Z#o%d!Z#p%d!Z#q%d!Z#r%d!Z#s%d!Z#t%d!Z#u%d!Z#w%d!Z#y%d!Z#z%d!Z'x%d!Z(_%d!Z(p%d!Z!i%d!Z!W%d!Z'u%d!Z#^%d!Zt%d!Z!]%d!Z%h%d!Z!e%d!Z~P#.{Op;fO!e#vO(p'nO~O!W;gO~P#.{Op;nO!e#vO(p'nO~O!W;oO~P#.{OP%d!ZR%d!Z[%d!Zp%d!Z!Q%d!Z!j%d!Z!n%d!Z#P%d!Z#l%d!Z#m%d!Z#n%d!Z#o%d!Z#p%d!Z#q%d!Z#r%d!Z#s%d!Z#t%d!Z#u%d!Z#w%d!Z#y%d!Z#z%d!Z#}%d!Z(_%d!Z(p%d!Z!Z%d!Z![%d!Z~P'%sOp;rO!e#vO(p'nO~Ot(dX~P1qO!O%qO~P!(yO(S!lO~P!(yO!WfX!ZfX#^fX~P%0XOP]XR]X[]Xp]X!O]X!Q]X!Z]X!ZfX!j]X!n]X#P]X#Q]X#^]X#^fX#ifX#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#w]X#y]X#z]X$P]X(_]X(p]X(w]X(x]X~O!efX!i]X!ifX(pfX~P'JlOP;vOQ;vOSfOd=rOe!iOnkOp;vOqkOrkOxkOz;vO|;vO!QWO!UkO!VkO!]XO!g;yO!jZO!m;vO!n;vO!o;vO!q;zO!s;}O!v!hO$V!kO$m=pO(R)ZO(TTO(WUO(_VO(m[O~O!Z<ZO![$pa~Oh%VOn%WOp%XOq$tOr$tOx%YOz%ZO|<fO!Q${O!]$|O!g=wO!j$xO#h<lO$V%_O$s<hO$u<jO$x%`O(R(tO(TTO(WUO(_$uO(w$}O(x%PO~Oj)bO~P( bOp!cX(p!cX~P# qOp(hX(p(hX~P#!dO![]X![fX~P'JlO!WfX!W$yX!ZfX!Z$yX#^fX~P!/qO#i<OO~O!e#vO#i<OO~O#^<`O~O#t<SO~O#^<pO!Z(uX![(uX~O#^<`O!Z(sX![(sX~O#i<qO~Og<sO~P!0uO#i<yO~O#i<zO~O!e#vO#i<{O~O!e#vO#i<qO~O#}<|O~P#BPO#i<}O~O#i=OO~O#i=TO~O#i=UO~O#i=VO~O#i=WO~O#}=XO~P!0uO#}=YO~P!0uO#Q#R#S#U#V#Y#g#h#s$m$s$u$x%[%]%g%h%i%p%r%u%v%x%z~'|T#m!V'z(S#nq#l#op!O'{$['{(R$^(c~",goto:"$8f)ZPPPPPP)[PP)_P)pP+Q/VPPPP6aPP6wPP<oP@cP@yP@yPPP@yPCRP@yP@yP@yPCVPC[PCyPHsPPPHwPPPPHwKzPPPLQLrPHwPHwPP! QHwPPPHwPHwP!#XHwP!&o!'t!'}P!(q!(u!(q!,SPPPPPPP!,s!'tPP!-T!.uP!2RHwHw!2W!5d!:Q!:Q!>PPPP!>XHwPPPPPPPPPP!AhP!BuPPHw!DWPHwPHwHwHwHwHwPHw!EjP!HtP!KzP!LO!LY!L^!L^P!HqP!Lb!LbP# hP# lHwPHw# r#$wCV@yP@yP@y@yP#&U@y@y#(h@y#+`@y#-l@y@y#.[#0p#0p#0u#1O#0p#1ZPP#0pP@y#1s@y#5r@y@y6aPPP#9wPPP#:b#:bP#:bP#:x#:bPP#;OP#:uP#:u#;c#:u#;}#<T#<W)_#<Z)_P#<b#<b#<bP)_P)_P)_P)_PP)_P#<h#<kP#<k)_P#<oP#<rP)_P)_P)_P)_P)_P)_)_PP#<x#=O#=Z#=a#=g#=m#=s#>R#>X#>c#>i#>s#>y#?Z#?a#@R#@e#@k#@q#AP#Af#CZ#Ci#Cp#E[#Ej#G[#Gj#Gp#Gv#G|#HW#H^#Hd#Hn#IQ#IWPPPPPPPPPPP#I^PPPPPPP#JR#MY#Nr#Ny$ RPPP$&mP$&v$)o$0Y$0]$0`$1_$1b$1i$1qP$1w$1zP$2h$2l$3d$4r$4w$5_PP$5d$5j$5n$5q$5u$5y$6u$7^$7u$7y$7|$8P$8V$8Y$8^$8bR!|RoqOXst!Z#d%l&p&r&s&u,n,s2S2VY!vQ'^-`1g5qQ%svQ%{yQ&S|Q&h!VS'U!e-WQ'd!iS'j!r!yU*h$|*X*lQ+l%|Q+y&UQ,_&bQ-^']Q-h'eQ-p'kQ0U*nQ1q,`R<m;z%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y,k,n,s-d-l-z.Q.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3d4q5y6Z6[6_6r8i8x9SS#q];w!r)]$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sU*{%[<e<fQ+q&OQ,a&eQ,h&mQ0r+dQ0u+fQ1S+rQ1y,fQ3W.bQ5V0wQ5]0}Q6Q1rQ7O3[Q8U5^R9Y7Q'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=s!S!nQ!r!v!y!z$|'U']'^'j'k'l*h*l*n*o-W-^-`-p0U0X1g5q5s%[$ti#v$b$c$d$x${%O%Q%]%^%b)w*P*R*T*W*^*d*t*u+c+f+},Q.a.z/_/h/r/s/u0Y0[0g0h0i1^1a1i3Z4U4V4a4f4w5R5U5x6|7l7v7|8Q8f9V9e9n9t:S:f:t:};V;^<^<_<a<b<c<d<g<h<i<j<k<l<t<u<v<w<y<z<}=O=P=Q=R=S=T=U=X=Y=p=x=y=|=}Q&V|Q'S!eS'Y%h-ZQ+q&OQ,a&eQ0f+OQ1S+rQ1X+xQ1x,eQ1y,fQ5]0}Q5f1ZQ6Q1rQ6T1tQ6U1wQ8U5^Q8X5cQ8q6WQ9|8YQ:Y8nR<o*XrnOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VR,c&i&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=r=s[#]WZ#W#Z'V(R!b%im#h#i#l$x%d%g([(f(g(h*W*[*_+W+X+Z,j-Q.O.U.V.W.Y/h/k2[3S3T4X6h6yQ%vxQ%zyS&P|&UQ&]!TQ'a!hQ'c!iQ(o#sS+k%{%|Q+o&OQ,Y&`Q,^&bS-g'd'eQ.d(pQ0{+lQ1R+rQ1T+sQ1W+wQ1l,ZS1p,_,`Q2t-hQ5[0}Q5`1QQ5e1YQ6P1qQ8T5^Q8W5bQ9x8SR:w9y!U$zi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y!^%xy!i!u%z%{%|'T'c'd'e'i's*g+k+l-T-g-h-o/{0O0{2m2t2{4i4j4m7s9pQ+e%vQ,O&YQ,R&ZQ,]&bQ.c(oQ1k,YU1o,^,_,`Q3].dQ5z1lS6O1p1qQ8m6P#f=t#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}o=u<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=YW%Ti%V*v=pS&Y!Q&gQ&Z!RQ&[!SQ+S%cR+|&W%]%Si#v$b$c$d$x${%O%Q%]%^%b)w*P*R*T*W*^*d*t*u+c+f+},Q.a.z/_/h/r/s/u0Y0[0g0h0i1^1a1i3Z4U4V4a4f4w5R5U5x6|7l7v7|8Q8f9V9e9n9t:S:f:t:};V;^<^<_<a<b<c<d<g<h<i<j<k<l<t<u<v<w<y<z<}=O=P=Q=R=S=T=U=X=Y=p=x=y=|=}T)x$u)yV*{%[<e<fW'Y!e%h*X-ZS({#y#zQ+`%qQ+v&RS.](k(lQ1b,SQ4x0cR8^5k'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=s$i$^c#Y#e%p%r%t(Q(W(r(w)P)Q)R)S)T)U)V)W)X)Y)[)^)`)e)o+a+u-U-s-x-}.P.n.q.u.w.x.y/]0j2c2f2v2}3c3h3i3j3k3l3m3n3o3p3q3r3s3t3w3x4P5O5Y6k6q6v7V7W7a7b8`8|9Q9[9b9c:c:y;R;x=gT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sQ'W!eR2i-W!W!nQ!e!r!v!y!z$|'U']'^'j'k'l*X*h*l*n*o-W-^-`-p0U0X1g5q5sR1d,UnqOXst!Z#d%l&p&r&s&u,n,s2S2VQ&w!^Q't!xS(q#u<OQ+i%yQ,W&]Q,X&_Q-e'bQ-r'mS.m(v<qS0k+U<{Q0y+jQ1f,VQ2Z,uQ2],vQ2e-RQ2r-fQ2u-jS5P0l=VQ5W0zS5Z0|=WQ6j2gQ6n2sQ6s2zQ8R5XQ8}6lQ9O6oQ9R6tR:`8z$d$]c#Y#e%r%t(Q(W(r(w)P)Q)R)S)T)U)V)W)X)Y)[)^)`)e)o+a+u-U-s-x-}.P.n.q.u.x.y/]0j2c2f2v2}3c3h3i3j3k3l3m3n3o3p3q3r3s3t3w3x4P5O5Y6k6q6v7V7W7a7b8`8|9Q9[9b9c:c:y;R;x=gS(m#p'gQ(}#zS+_%p.wS.^(l(nR3U._'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sS#q];wQ&r!XQ&s!YQ&u![Q&v!]R2R,qQ'_!hQ+b%vQ-c'aS.`(o+eQ2p-bW3Y.c.d0q0sQ6m2qW6z3V3X3]5TU9U6{6}7PU:e9W9X9ZS;T:d:gQ;b;UR;j;cU!wQ'^-`T5o1g5q!Q_OXZ`st!V!Z#d#h%d%l&g&i&p&r&s&u(h,n,s.V2S2V]!pQ!r'^-`1g5qT#q];w%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SS({#y#zS.](k(l!s=^$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sU$fd)],hS(n#p'gU*s%R(u3vU0e*z.i7]Q5T0rQ6{3WQ9X7OR:g9Ym!tQ!r!v!y!z'^'j'k'l-`-p1g5q5sQ'r!uS(d#g1|S-n'i'uQ/n*ZQ/{*gQ2|-qQ4]/oQ4i/}Q4j0OQ4o0WQ7h4WS7s4k4mS7w4p4rQ9g7iQ9k7oQ9p7tQ9u7yS:o9l9mS;Y:p:sS;e;Z;[S;m;f;gS;q;n;oR;t;rQ#wbQ'q!uS(c#g1|S(e#m+TQ+V%eQ+g%wQ+m%}U-m'i'r'uQ.R(dQ/m*ZQ/|*gQ0P*iQ0x+hQ1m,[S2y-n-qQ3R.ZS4[/n/oQ4e/yS4h/{0WQ4l0QQ5|1nQ6u2|Q7g4WQ7k4]U7r4i4o4rQ7u4nQ8k5}S9f7h7iQ9j7oQ9r7wQ9s7xQ:V8lQ:m9gS:n9k9mQ:v9uQ;P:WS;X:o:sS;d;Y;ZS;l;e;gS;p;m;oQ;s;qQ;u;tQ=a=[Q=l=eR=m=fV!wQ'^-`%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SS#wz!j!r=Z$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sR=a=r%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SQ%ej!^%wy!i!u%z%{%|'T'c'd'e'i's*g+k+l-T-g-h-o/{0O0{2m2t2{4i4j4m7s9pS%}z!jQ+h%xQ,[&bW1n,],^,_,`U5}1o1p1qS8l6O6PQ:W8m!r=[$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sQ=e=qR=f=r%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&p&r&s&u&y'R'`'p(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SY#bWZ#W#Z(R!b%im#h#i#l$x%d%g([(f(g(h*W*[*_+W+X+Z,j-Q.O.U.V.W.Y/h/k2[3S3T4X6h6yQ,i&m!p=]$Z$n)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sR=`'VU'Z!e%h*XR2k-Z%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y,k,n,s-d-l-z.Q.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3d4q5y6Z6[6_6r8i8x9S!r)]$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sQ,h&mQ0r+dQ3W.bQ7O3[R9Y7Q!b$Tc#Y%p(Q(W(r(w)X)Y)^)e+u-s-x-}.P.n.q/]0j2v2}3c3s5O5Y6q6v7V9Q:c;x!P<U)[)o-U.w2c2f3h3q3r3w4P6k7W7a7b8`8|9[9b9c:y;R=g!f$Vc#Y%p(Q(W(r(w)U)V)X)Y)^)e+u-s-x-}.P.n.q/]0j2v2}3c3s5O5Y6q6v7V9Q:c;x!T<W)[)o-U.w2c2f3h3n3o3q3r3w4P6k7W7a7b8`8|9[9b9c:y;R=g!^$Zc#Y%p(Q(W(r(w)^)e+u-s-x-}.P.n.q/]0j2v2}3c3s5O5Y6q6v7V9Q:c;xQ4V/fz=s)[)o-U.w2c2f3h3w4P6k7W7a7b8`8|9[9b9c:y;R=gQ=x=zR=y={'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sS$oh$pR3|/P'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/P/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sT$kf$qQ$ifS)h$l)lR)t$qT$jf$qT)j$l)l'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/P/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sT$oh$pQ$rhR)s$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9S!s=q$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=s#glOPXZst!Z!`!o#S#d#o#{$n%l&i&l&m&p&r&s&u&y'R'`(|)q*f+Y+d,k,n,s-d.b/Q/i0V0d1j1z1{1}2P2S2V2X3[3{4q5y6Z6[6_7Q8i8x!U%Ri$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y#f(u#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}Q+P%`Q/^)|o3v<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=Y!U$yi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=yQ*`$zU*i$|*X*lQ+Q%aQ0Q*j#f=c#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}n=d<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=YQ=h=tQ=i=uQ=j=vR=k=w!U%Ri$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y#f(u#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}o3v<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=YnoOXst!Z#d%l&p&r&s&u,n,s2S2VS*c${*WQ,|&|Q,}'OR4`/s%[%Si#v$b$c$d$x${%O%Q%]%^%b)w*P*R*T*W*^*d*t*u+c+f+},Q.a.z/_/h/r/s/u0Y0[0g0h0i1^1a1i3Z4U4V4a4f4w5R5U5x6|7l7v7|8Q8f9V9e9n9t:S:f:t:};V;^<^<_<a<b<c<d<g<h<i<j<k<l<t<u<v<w<y<z<}=O=P=Q=R=S=T=U=X=Y=p=x=y=|=}Q,P&ZQ1`,RQ5i1_R8]5jV*k$|*X*lU*k$|*X*lT5p1g5qS/y*f/iQ4n0VT7x4q:PQ+g%wQ0P*iQ0x+hQ1m,[Q5|1nQ8k5}Q:V8lR;P:W!U%Oi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=yx*P$v)c*Q*r+R/q0^0_3y4^4{4|4}7f7z9v:l=b=n=oS0Y*q0Z#f<a#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}n<b<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=Y!d<t(s)a*Y*b.e.h.l/Y/f/v0p1]3`4S4_4c5h7R7U7m7p7}8P9i9q9w:q:u;W;];h=z={`<u3u7X7[7`9]:h:k;kS=P.g3aT=Q7Z9`!U%Qi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y|*R$v)c*S*q+R/b/q0^0_3y4^4s4{4|4}7f7z9v:l=b=n=oS0[*r0]#f<c#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}n<d<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=Y!h<v(s)a*Y*b.f.g.l/Y/f/v0p1]3^3`4S4_4c5h7R7S7U7m7p7}8P9i9q9w:q:u;W;];h=z={d<w3u7Y7Z7`9]9^:h:i:k;kS=R.h3bT=S7[9arnOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VQ&d!UR,k&mrnOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VR&d!UQ,T&[R1[+|snOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VQ1h,YS5w1k1lU8e5u5v5zS:R8g8hS:{:Q:TQ;_:|R;i;`Q&k!VR,d&gR6T1tR:Y8nS&P|&UR1T+sQ&p!WR,n&qR,t&vT2T,s2VR,x&wQ,w&wR2^,xQ'w!{R-t'wSsOtQ#dXT%os#dQ#OTR'y#OQ#RUR'{#RQ)y$uR/Z)yQ#UVR(O#UQ#XWU(U#X(V-{Q(V#YR-{(WQ-X'WR2j-XQ.p(wS3e.p3fR3f.qQ-`'^R2n-`Y!rQ'^-`1g5qR'h!rQ.{)cR3z.{U#_W%g*WU(]#_(^-|Q(^#`R-|(XQ-['ZR2l-[t`OXst!V!Z#d%l&g&i&p&r&s&u,n,s2S2VS#hZ%dU#r`#h.VR.V(hQ(i#jQ.S(eW.[(i.S3P6wQ3P.TR6w3QQ)l$lR/R)lQ$phR)r$pQ$`cU)_$`-w<[Q-w;xR<[)oQ/l*ZW4Y/l4Z7j9hU4Z/m/n/oS7j4[4]R9h7k$e*O$v(s)a)c*Y*b*q*r*|*}+R.g.h.j.k.l/Y/b/d/f/q/v0^0_0p1]3^3_3`3u3y4S4^4_4c4s4u4{4|4}5h7R7S7T7U7Z7[7^7_7`7f7m7p7z7}8P9]9^9_9i9q9v9w:h:i:j:k:l:q:u;W;];h;k=b=n=o=z={Q/t*bU4b/t4d7nQ4d/vR7n4cS*l$|*XR0S*lx*Q$v)c*q*r+R/q0^0_3y4^4{4|4}7f7z9v:l=b=n=o!d.e(s)a*Y*b.g.h.l/Y/f/v0p1]3`4S4_4c5h7R7U7m7p7}8P9i9q9w:q:u;W;];h=z={U/c*Q.e7Xa7X3u7Z7[7`9]:h:k;kQ0Z*qQ3a.gU4t0Z3a9`R9`7Z|*S$v)c*q*r+R/b/q0^0_3y4^4s4{4|4}7f7z9v:l=b=n=o!h.f(s)a*Y*b.g.h.l/Y/f/v0p1]3^3`4S4_4c5h7R7S7U7m7p7}8P9i9q9w:q:u;W;];h=z={U/e*S.f7Ye7Y3u7Z7[7`9]9^:h:i:k;kQ0]*rQ3b.hU4v0]3b9aR9a7[Q*w%UR0a*wQ5S0pR8O5SQ+[%jR0o+[Q5l1bS8_5l:OR:O8`Q,V&]R1e,VQ5q1gR8b5qQ1s,aS6R1s8oR8o6TQ1O+oW5_1O5a8V9zQ5a1RQ8V5`R9z8WQ+t&PR1U+tQ2V,sR6c2VYrOXst#dQ&t!ZQ+^%lQ,m&pQ,o&rQ,p&sQ,r&uQ2Q,nS2T,s2VR6b2SQ%npQ&x!_Q&{!aQ&}!bQ'P!cQ'o!uQ+]%kQ+i%yQ+{&VQ,c&kQ,z&zW-k'i'q'r'uQ-r'mQ0R*kQ0y+jS1v,d,gQ2_,yQ2`,|Q2a,}Q2u-jW2w-m-n-q-sQ5W0zQ5d1XQ5g1]Q5{1mQ6V1xQ6a2RU6p2v2y2|Q6s2zQ8R5XQ8Z5fQ8[5hQ8a5pQ8j5|Q8p6US9P6q6uQ9R6tQ9{8XQ:U8kQ:Z8qQ:b9QQ:x9|Q;O:VQ;S:cR;a;PQ%yyQ'b!iQ'm!uU+j%z%{%|Q-R'TU-f'c'd'eS-j'i'sQ/z*gS0z+k+lQ2g-TS2s-g-hQ2z-oS4g/{0OQ5X0{Q6l2mQ6o2tQ6t2{U7q4i4j4mQ9o7sR:r9pS$wi=pR*x%VU%Ui%V=pR0`*vQ$viS(s#v+fS)a$b$cQ)c$dQ*Y$xS*b${*WQ*q%OQ*r%QQ*|%]Q*}%^Q+R%bQ.g<aQ.h<cQ.j<gQ.k<iQ.l<kQ/Y)wQ/b*PQ/d*RQ/f*TQ/q*^S/v*d/hQ0^*tQ0_*ul0p+c,Q.a1a1i3Z5x6|8f9V:S:f:};VQ1]+}Q3^<tQ3_<vQ3`<yS3u<^<_Q3y.zS4S/_4UQ4^/rQ4_/sQ4c/uQ4s0YQ4u0[Q4{0gQ4|0hQ4}0iQ5h1^Q7R<}Q7S=PQ7T=RQ7U=TQ7Z<bQ7[<dQ7^<hQ7_<jQ7`<lQ7f4VQ7m4aQ7p4fQ7z4wQ7}5RQ8P5UQ9]<zQ9^<uQ9_<wQ9i7lQ9q7vQ9v7|Q9w8QQ:h=OQ:i=QQ:j=SQ:k=UQ:l9eQ:q9nQ:u9tQ;W=XQ;]:tQ;h;^Q;k=YQ=b=pQ=n=xQ=o=yQ=z=|R={=}Q*z%[Q.i<eR7]<fnpOXst!Z#d%l&p&r&s&u,n,s2S2VQ!fPS#fZ#oQ&z!`W'f!o*f0V4qQ'}#SQ)O#{Q)p$nS,g&i&lQ,l&mQ,y&yS-O'R/iQ-b'`Q.s(|Q/V)qQ0m+YQ0s+dQ2O,kQ2q-dQ3X.bQ4O/QQ4y0dQ5v1jQ6X1zQ6Y1{Q6^1}Q6`2PQ6e2XQ7P3[Q7c3{Q8h5yQ8t6ZQ8u6[Q8w6_Q9Z7QQ:T8iR:_8x#[cOPXZst!Z!`!o#d#o#{%l&i&l&m&p&r&s&u&y'R'`(|*f+Y+d,k,n,s-d.b/i0V0d1j1z1{1}2P2S2V2X3[4q5y6Z6[6_7Q8i8xQ#YWQ#eYQ%puQ%rvS%tw!gS(Q#W(TQ(W#ZQ(r#uQ(w#xQ)P$OQ)Q$PQ)R$QQ)S$RQ)T$SQ)U$TQ)V$UQ)W$VQ)X$WQ)Y$XQ)[$ZQ)^$_Q)`$aQ)e$eW)o$n)q/Q3{Q+a%sQ+u&QS-U'V2hQ-s'pS-x(R-zQ-}(ZQ.P(bQ.n(vQ.q(xQ.u;vQ.w;yQ.x;zQ.y;}Q/]){Q0j+UQ2c-PQ2f-SQ2v-lQ2}.QQ3c.oQ3h<OQ3i<PQ3j<QQ3k<RQ3l<SQ3m<TQ3n<UQ3o<VQ3p<WQ3q<XQ3r<YQ3s.vQ3t<]Q3w<`Q3x<mQ4P<ZQ5O0lQ5Y0|Q6k<pQ6q2xQ6v3OQ7V3dQ7W<qQ7a<sQ7b<{Q8`5mQ8|6iQ9Q6rQ9[<|Q9b=VQ9c=WQ:c9SQ:y9}Q;R:aQ;x#SR=g=sR#[WR'X!el!tQ!r!v!y!z'^'j'k'l-`-p1g5q5sS'T!e-WU*g$|*X*lS-T'U']S0O*h*nQ0W*oQ2m-^Q4m0UR4r0XR(y#xQ!fQT-_'^-`]!qQ!r'^-`1g5qQ#p]R'g;wR)d$dY!uQ'^-`1g5qQ'i!rS's!v!yS'u!z5sS-o'j'kQ-q'lR2{-pT#kZ%dS#jZ%dS%jm,jU(e#h#i#lS.T(f(gQ.X(hQ0n+ZQ3Q.UU3R.V.W.YS6x3S3TR9T6yd#^W#W#Z%g(R([*W+W.O/hr#gZm#h#i#l%d(f(g(h+Z.U.V.W.Y3S3T6yS*Z$x*_Q/o*[Q1|,jQ2d-QQ4W/kQ6g2[Q7i4XQ8{6hT=_'V+XV#aW%g*WU#`W%g*WS(S#W([U(X#Z+W/hS-V'V+XT-y(R.OV'[!e%h*XQ$lfR)v$qT)k$l)lR3}/PT*]$x*_T*e${*WQ0q+cQ1_,QQ3V.aQ5j1aQ5u1iQ6}3ZQ8g5xQ9W6|Q:Q8fQ:d9VQ:|:SQ;U:fQ;`:}R;c;VnqOXst!Z#d%l&p&r&s&u,n,s2S2VQ&j!VR,c&gtmOXst!U!V!Z#d%l&g&p&r&s&u,n,s2S2VR,j&mT%km,jR1c,SR,b&eQ&T|R+z&UR+p&OT&n!W&qT&o!W&qT2U,s2V",nodeNames:"⚠ ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:378,context:trackNewline,nodeProps:[["isolate",-8,5,6,14,35,37,49,51,53,""],["group",-26,9,17,19,66,206,210,214,215,217,220,223,233,235,241,243,245,247,250,256,262,264,266,268,270,272,273,"Statement",-34,13,14,30,33,34,40,49,52,53,55,60,68,70,74,78,80,82,83,108,109,118,119,135,138,140,141,142,143,144,146,147,166,168,170,"Expression",-23,29,31,35,39,41,43,172,174,176,177,179,180,181,183,184,185,187,188,189,200,202,204,205,"Type",-3,86,101,107,"ClassItem"],["openedBy",23,"<",36,"InterpolationStart",54,"[",58,"{",71,"(",159,"JSXStartCloseTag"],["closedBy",-2,24,167,">",38,"InterpolationEnd",48,"]",59,"}",72,")",164,"JSXEndTag"]],propSources:[jsHighlight],skippedNodes:[0,5,6,276],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$h&j(X!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(X!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$h&j(UpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(UpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Up(X!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$h&j(Up(X!b'z0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(V#S$h&j'{0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$h&j(Up(X!b'{0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$h&j!n),Q(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#u(Ch$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#u(Ch$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(T':f$h&j(X!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$h&j(X!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$h&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$c`$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$c``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$c`$h&j(X!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(X!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$c`(X!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$h&j(Up(X!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$h&j(Up(X!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$h&j(X!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$h&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(X!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$h&j(UpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(UpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Up(X!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$h&j(m%1l(Up(X!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$h&j(Up(X!b$[#t(R,2j(c$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$h&j(Up(X!b$[#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$h&j(Up(X!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$h&j$P(Ch(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(x+JY$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$h&j#y(Ch(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(W';W$h&j(UpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$h&j(UpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$h&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$c`$h&j(UpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(UpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$c`(UpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!j/.^$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!i!Lf$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$h&j(Up(X!b(S%&f#o(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$h&j(Up(X!b#l(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$h&j(Up(X!bp+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!Z+Jf$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$h&j(Up(X!b!O.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_!Y!L^$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$h&j(Up(X!b#m(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$h&j(Up(X!b!V7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$h&j(X!b!V7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$h&j!V7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$h&j!V7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!V7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!V7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$h&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$h&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$h&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$h&j(X!b!V7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(X!b!V7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(X!b!V7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(X!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$h&j(X!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$h&j(Up!V7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$h&j(Up!V7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Up!V7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Up!V7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(UpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$h&j(UpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$h&j(Up(X!b!V7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Up(X!b!V7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Up(X!b!V7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Up(X!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$h&j(Up(X!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$h&j(Up(X!b'|0/l!V7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$h&j(Up(X!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$h&j(X!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$h&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(X!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$h&j(UpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(UpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Up(X!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$h&j$P(Ch(Up(X!b!V7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Y#t$h&j(Up(X!b!V7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$h&j(Up(X!bq'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!e$b$h&j#})Lv(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#P-<U(Up(X!b$m7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$j&j(Up(X!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#p(Ch(Up(X!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$P(Ch(Up(X!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#q(Ch(Up(X!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#^*!Y$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#i(Cl$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#q(Ch$e#|$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#q(Ch$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#p(Ch$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#p(Ch$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(p(Ct$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$h&j#z(Ch(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!z$Ip$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!Q0,v$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$h&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$h&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$h&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$h&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$h&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!W#)l$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#w(Ch$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$h&j(Up(X!b(_+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$h&j(Up(X!b(R,2j$^#t(c$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$h&j(Up(X!b$^#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!]#Hb(Up(X!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(w+JY$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_![(CdtBr$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!o7`$h&j(Up(X!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$h&j(Up(X!b'z0/l$[#t(R,2j(c$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$h&j(Up(X!b'{0/l$[#t(R,2j(c$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",tokenizers:[noSemicolon,noSemicolonType,operatorToken,jsx,2,3,4,5,6,7,8,9,10,11,12,13,14,insertSemicolon,new LocalTokenGroup("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOv~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!S~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(a~~",141,338),new LocalTokenGroup("j~RQYZXz{^~^O(O~~aP!P!Qd~iO(P~~",25,321)],topRules:{Script:[0,7],SingleExpression:[1,274],SingleClassItem:[2,275]},dialects:{jsx:0,ts:15091},dynamicPrecedences:{78:1,80:1,92:1,168:1,198:1},specialized:[{term:325,get:O=>spec_identifier$3[O]||-1},{term:341,get:O=>spec_word[O]||-1},{term:93,get:O=>spec_LessThan[O]||-1}],tokenPrec:15116}),snippets$1=[snippetCompletion("function ${name}(${params}) {\n\t${}\n}",{label:"function",detail:"definition",type:"keyword"}),snippetCompletion("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n\t${}\n}",{label:"for",detail:"loop",type:"keyword"}),snippetCompletion("for (let ${name} of ${collection}) {\n\t${}\n}",{label:"for",detail:"of loop",type:"keyword"}),snippetCompletion("do {\n\t${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),snippetCompletion("while (${}) {\n\t${}\n}",{label:"while",detail:"loop",type:"keyword"}),snippetCompletion("try {\n\t${}\n} catch (${error}) {\n\t${}\n}",{label:"try",detail:"/ catch block",type:"keyword"}),snippetCompletion("if (${}) {\n\t${}\n}",{label:"if",detail:"block",type:"keyword"}),snippetCompletion("if (${}) {\n\t${}\n} else {\n\t${}\n}",{label:"if",detail:"/ else block",type:"keyword"}),snippetCompletion("class ${name} {\n\tconstructor(${params}) {\n\t\t${}\n\t}\n}",{label:"class",detail:"definition",type:"keyword"}),snippetCompletion('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),snippetCompletion('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],typescriptSnippets=snippets$1.concat([snippetCompletion("interface ${name} {\n\t${}\n}",{label:"interface",detail:"definition",type:"keyword"}),snippetCompletion("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),snippetCompletion("enum ${name} {\n\t${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),cache$1=new NodeWeakMap,ScopeNodes$1=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function defID$1(O){return(e,t)=>{let i=e.node.getChild("VariableDefinition");return i&&t(i,O),!0}}const functionContext=["FunctionDeclaration"],gatherCompletions$1={FunctionDeclaration:defID$1("function"),ClassDeclaration:defID$1("class"),ClassExpression:()=>!0,EnumDeclaration:defID$1("constant"),TypeAliasDeclaration:defID$1("type"),NamespaceDeclaration:defID$1("namespace"),VariableDefinition(O,e){O.matchContext(functionContext)||e(O,"variable")},TypeDefinition(O,e){e(O,"type")},__proto__:null};function getScope$1(O,e){let t=cache$1.get(e);if(t)return t;let i=[],n=!0;function r(e,t){let n=O.sliceString(e.from,e.to);i.push({label:n,type:t})}return e.cursor(IterMode.IncludeAnonymous).iterate((e=>{if(n)n=!1;else if(e.name){let O=gatherCompletions$1[e.name];if(O&&O(e,r)||ScopeNodes$1.has(e.name))return!1}else if(e.to-e.from>8192){for(let t of getScope$1(O,e.node))i.push(t);return!1}})),cache$1.set(e,i),i}const Identifier$3=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,dontComplete$1=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName",".","?."];function localCompletionSource$1(O){let e=syntaxTree(O.state).resolveInner(O.pos,-1);if(dontComplete$1.indexOf(e.name)>-1)return null;let t="VariableName"==e.name||e.to-e.from<20&&Identifier$3.test(O.state.sliceDoc(e.from,e.to));if(!t&&!O.explicit)return null;let i=[];for(let t=e;t;t=t.parent)ScopeNodes$1.has(t.name)&&(i=i.concat(getScope$1(O.state.doc,t)));return{options:i,from:t?e.from:O.pos,validFor:Identifier$3}}const javascriptLanguage=LRLanguage.define({name:"javascript",parser:parser$a.configure({props:[indentNodeProp.add({IfStatement:continuedIndent({except:/^\s*({|else\b)/}),TryStatement:continuedIndent({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:flatIndent,SwitchBody:O=>{let e=O.textAfter,t=/^\s*\}/.test(e),i=/^\s*(case|default)\b/.test(e);return O.baseIndent+(t?0:i?1:2)*O.unit},Block:delimitedIndent({closing:"}"}),ArrowFunction:O=>O.baseIndent+O.unit,"TemplateString BlockComment":()=>null,"Statement Property":continuedIndent({except:/^{/}),JSXElement(O){let e=/^\s*<\//.test(O.textAfter);return O.lineIndent(O.node.from)+(e?0:O.unit)},JSXEscape(O){let e=/\s*\}/.test(O.textAfter);return O.lineIndent(O.node.from)+(e?0:O.unit)},"JSXOpenTag JSXSelfClosingTag":O=>O.column(O.node.from)+O.unit}),foldNodeProp.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":foldInside,BlockComment:O=>({from:O.from+2,to:O.to-2})})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),jsxSublanguage={test:O=>/^JSX/.test(O.name),facet:defineLanguageFacet({commentTokens:{block:{open:"{/*",close:"*/}"}}})},typescriptLanguage=javascriptLanguage.configure({dialect:"ts"},"typescript"),jsxLanguage=javascriptLanguage.configure({dialect:"jsx",props:[sublanguageProp.add((O=>O.isTop?[jsxSublanguage]:void 0))]}),tsxLanguage=javascriptLanguage.configure({dialect:"jsx ts",props:[sublanguageProp.add((O=>O.isTop?[jsxSublanguage]:void 0))]},"typescript");let kwCompletion=O=>({label:O,type:"keyword"});const keywords$2="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(kwCompletion),typescriptKeywords=keywords$2.concat(["declare","implements","private","protected","public"].map(kwCompletion));function javascript(O={}){let e=O.jsx?O.typescript?tsxLanguage:jsxLanguage:O.typescript?typescriptLanguage:javascriptLanguage,t=O.typescript?typescriptSnippets.concat(typescriptKeywords):snippets$1.concat(keywords$2);return new LanguageSupport(e,[javascriptLanguage.data.of({autocomplete:ifNotIn(dontComplete$1,completeFromList(t))}),javascriptLanguage.data.of({autocomplete:localCompletionSource$1}),O.jsx?autoCloseTags$2:[]])}function findOpenTag(O){for(;;){if("JSXOpenTag"==O.name||"JSXSelfClosingTag"==O.name||"JSXFragmentTag"==O.name)return O;if("JSXEscape"==O.name||!O.parent)return null;O=O.parent}}function elementName$3(O,e,t=O.length){for(let i=null==e?void 0:e.firstChild;i;i=i.nextSibling)if("JSXIdentifier"==i.name||"JSXBuiltin"==i.name||"JSXNamespacedName"==i.name||"JSXMemberExpression"==i.name)return O.sliceString(i.from,Math.min(i.to,t));return""}const android="object"==typeof navigator&&/Android\b/.test(navigator.userAgent),autoCloseTags$2=EditorView.inputHandler.of(((O,e,t,i,n)=>{if((android?O.composing:O.compositionStarted)||O.state.readOnly||e!=t||">"!=i&&"/"!=i||!javascriptLanguage.isActiveAt(O.state,e,-1))return!1;let r=n(),{state:a}=r,s=a.changeByRange((O=>{var e;let t,{head:n}=O,r=syntaxTree(a).resolveInner(n-1,-1);if("JSXStartTag"==r.name&&(r=r.parent),a.doc.sliceString(n-1,n)!=i||"JSXAttributeValue"==r.name&&r.to>n);else{if(">"==i&&"JSXFragmentTag"==r.name)return{range:O,changes:{from:n,insert:"</>"}};if("/"==i&&"JSXStartCloseTag"==r.name){let O=r.parent,i=O.parent;if(i&&O.from==n-2&&((t=elementName$3(a.doc,i.firstChild,n))||"JSXFragmentTag"==(null===(e=i.firstChild)||void 0===e?void 0:e.name))){let O=`${t}>`;return{range:EditorSelection.cursor(n+O.length,-1),changes:{from:n,insert:O}}}}else if(">"==i){let e=findOpenTag(r);if(e&&"JSXOpenTag"==e.name&&!/^\/?>|^<\//.test(a.doc.sliceString(n,n+2))&&(t=elementName$3(a.doc,e,n)))return{range:O,changes:{from:n,insert:`</${t}>`}}}}return{range:O}}));return!s.changes.empty&&(O.dispatch([r,a.update(s,{userEvent:"input.complete",scrollIntoView:!0})]),!0)})),Targets=["_blank","_self","_top","_parent"],Charsets=["ascii","utf-8","utf-16","latin1","latin1"],Methods=["get","post","put","delete"],Encs=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Bool$1=["true","false"],S={},Tags={a:{attrs:{href:null,ping:null,type:null,media:null,target:Targets,hreflang:null}},abbr:S,address:S,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:S,aside:S,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:S,base:{attrs:{href:null,target:Targets}},bdi:S,bdo:S,blockquote:{attrs:{cite:null}},body:S,br:S,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:Encs,formmethod:Methods,formnovalidate:["novalidate"],formtarget:Targets,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:S,center:S,cite:S,code:S,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:S,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:S,div:S,dl:S,dt:S,em:S,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:S,figure:S,footer:S,form:{attrs:{action:null,name:null,"accept-charset":Charsets,autocomplete:["on","off"],enctype:Encs,method:Methods,novalidate:["novalidate"],target:Targets}},h1:S,h2:S,h3:S,h4:S,h5:S,h6:S,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:S,hgroup:S,hr:S,html:{attrs:{manifest:null}},i:S,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:Encs,formmethod:Methods,formnovalidate:["novalidate"],formtarget:Targets,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:S,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:S,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:S,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:Charsets,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:S,noscript:S,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:S,param:{attrs:{name:null,value:null}},pre:S,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:S,rt:S,ruby:S,samp:S,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:Charsets}},section:S,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:S,source:{attrs:{src:null,type:null,media:null}},span:S,strong:S,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:S,summary:S,sup:S,table:S,tbody:S,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:S,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:S,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:S,time:{attrs:{datetime:null}},title:S,tr:S,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:S,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:S},GlobalAttrs={accesskey:null,class:null,contenteditable:Bool$1,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:Bool$1,autocorrect:Bool$1,autocapitalize:Bool$1,style:null,tabindex:null,title:null,translate:["yes","no"],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":Bool$1,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Bool$1,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Bool$1,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Bool$1,"aria-hidden":Bool$1,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Bool$1,"aria-multiselectable":Bool$1,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Bool$1,"aria-relevant":null,"aria-required":Bool$1,"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},eventAttributes="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map((O=>"on"+O));for(let O of eventAttributes)GlobalAttrs[O]=null;class Schema{constructor(O,e){this.tags=Object.assign(Object.assign({},Tags),O),this.globalAttrs=Object.assign(Object.assign({},GlobalAttrs),e),this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}function elementName$2(O,e,t=O.length){if(!e)return"";let i=e.firstChild,n=i&&i.getChild("TagName");return n?O.sliceString(n.from,Math.min(n.to,t)):""}function findParentElement$1(O,e=!1){for(;O;O=O.parent)if("Element"==O.name){if(!e)return O;e=!1}return null}function allowedChildren(O,e,t){let i=t.tags[elementName$2(O,findParentElement$1(e))];return(null==i?void 0:i.children)||t.allTags}function openTags(O,e){let t=[];for(let i=findParentElement$1(e);i&&!i.type.isTop;i=findParentElement$1(i.parent)){let n=elementName$2(O,i);if(n&&"CloseTag"==i.lastChild.name)break;n&&t.indexOf(n)<0&&("EndTag"==e.name||e.from>=i.firstChild.to)&&t.push(n)}return t}Schema.default=new Schema;const identifier=/^[:\-\.\w\u00b7-\uffff]*$/;function completeTag(O,e,t,i,n){let r=/\s*>/.test(O.sliceDoc(n,n+5))?"":">",a=findParentElement$1(t,!0);return{from:i,to:n,options:allowedChildren(O.doc,a,e).map((O=>({label:O,type:"type"}))).concat(openTags(O.doc,t).map(((O,e)=>({label:"/"+O,apply:"/"+O+r,type:"type",boost:99-e})))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function completeCloseTag(O,e,t,i){let n=/\s*>/.test(O.sliceDoc(i,i+5))?"":">";return{from:t,to:i,options:openTags(O.doc,e).map(((O,e)=>({label:O,apply:O+n,type:"type",boost:99-e}))),validFor:identifier}}function completeStartTag(O,e,t,i){let n=[],r=0;for(let i of allowedChildren(O.doc,t,e))n.push({label:"<"+i,type:"type"});for(let e of openTags(O.doc,t))n.push({label:"</"+e+">",type:"type",boost:99-r++});return{from:i,to:i,options:n,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function completeAttrName(O,e,t,i,n){let r=findParentElement$1(t),a=r?e.tags[elementName$2(O.doc,r)]:null,s=a&&a.attrs?Object.keys(a.attrs):[];return{from:i,to:n,options:(a&&!1===a.globalAttrs?s:s.length?s.concat(e.globalAttrNames):e.globalAttrNames).map((O=>({label:O,type:"property"}))),validFor:identifier}}function completeAttrValue(O,e,t,i,n){var r;let a,s=null===(r=t.parent)||void 0===r?void 0:r.getChild("AttributeName"),o=[];if(s){let r=O.sliceDoc(s.from,s.to),l=e.globalAttrs[r];if(!l){let i=findParentElement$1(t),n=i?e.tags[elementName$2(O.doc,i)]:null;l=(null==n?void 0:n.attrs)&&n.attrs[r]}if(l){let e=O.sliceDoc(i,n).toLowerCase(),t='"',r='"';/^['"]/.test(e)?(a='"'==e[0]?/^[^"]*$/:/^[^']*$/,t="",r=O.sliceDoc(n,n+1)==e[0]?"":e[0],e=e.slice(1),i++):a=/^[^\s<>='"]*$/;for(let O of l)o.push({label:O,apply:t+O+r,type:"constant"})}}return{from:i,to:n,options:o,validFor:a}}function htmlCompletionFor(O,e){let{state:t,pos:i}=e,n=syntaxTree(t).resolveInner(i,-1),r=n.resolve(i);for(let O,e=i;r==n&&(O=n.childBefore(e));){let t=O.lastChild;if(!t||!t.type.isError||t.from<t.to)break;r=n=O,e=t.from}return"TagName"==n.name?n.parent&&/CloseTag$/.test(n.parent.name)?completeCloseTag(t,n,n.from,i):completeTag(t,O,n,n.from,i):"StartTag"==n.name?completeTag(t,O,n,i,i):"StartCloseTag"==n.name||"IncompleteCloseTag"==n.name?completeCloseTag(t,n,i,i):"OpenTag"==n.name||"SelfClosingTag"==n.name||"AttributeName"==n.name?completeAttrName(t,O,n,"AttributeName"==n.name?n.from:i,i):"Is"==n.name||"AttributeValue"==n.name||"UnquotedAttributeValue"==n.name?completeAttrValue(t,O,n,"Is"==n.name?i:n.from,i):!e.explicit||"Element"!=r.name&&"Text"!=r.name&&"Document"!=r.name?null:completeStartTag(t,O,n,i)}function htmlCompletionSource(O){return htmlCompletionFor(Schema.default,O)}function htmlCompletionSourceWith(O){let{extraTags:e,extraGlobalAttributes:t}=O,i=t||e?new Schema(e,t):Schema.default;return O=>htmlCompletionFor(i,O)}const jsonParser=javascriptLanguage.parser.configure({top:"SingleExpression"}),defaultNesting=[{tag:"script",attrs:O=>"text/typescript"==O.type||"ts"==O.lang,parser:typescriptLanguage.parser},{tag:"script",attrs:O=>"text/babel"==O.type||"text/jsx"==O.type,parser:jsxLanguage.parser},{tag:"script",attrs:O=>"text/typescript-jsx"==O.type,parser:tsxLanguage.parser},{tag:"script",attrs:O=>/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(O.type),parser:jsonParser},{tag:"script",attrs:O=>!O.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(O.type),parser:javascriptLanguage.parser},{tag:"style",attrs:O=>(!O.lang||"css"==O.lang)&&(!O.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(O.type)),parser:cssLanguage.parser}],defaultAttrs=[{name:"style",parser:cssLanguage.parser.configure({top:"Styles"})}].concat(eventAttributes.map((O=>({name:O,parser:javascriptLanguage.parser})))),htmlPlain=LRLanguage.define({name:"html",parser:parser$b.configure({props:[indentNodeProp.add({Element(O){let e=/^(\s*)(<\/)?/.exec(O.textAfter);return O.node.to<=O.pos+e[0].length?O.continue():O.lineIndent(O.node.from)+(e[2]?0:O.unit)},"OpenTag CloseTag SelfClosingTag":O=>O.column(O.node.from)+O.unit,Document(O){if(O.pos+/\s*/.exec(O.textAfter)[0].length<O.node.to)return O.continue();let e,t=null;for(let e=O.node;;){let O=e.lastChild;if(!O||"Element"!=O.name||O.to!=e.to)break;t=e=O}return t&&(!(e=t.lastChild)||"CloseTag"!=e.name&&"SelfClosingTag"!=e.name)?O.lineIndent(t.from)+O.unit:null}}),foldNodeProp.add({Element(O){let e=O.firstChild,t=O.lastChild;return e&&"OpenTag"==e.name?{from:e.to,to:"CloseTag"==t.name?t.from:O.to}:null}}),bracketMatchingHandle.add({"OpenTag CloseTag":O=>O.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"\x3c!--",close:"--\x3e"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-._"}}),htmlLanguage=htmlPlain.configure({wrap:configureNesting(defaultNesting,defaultAttrs)});function html(O={}){let e,t="";!1===O.matchClosingTags&&(t="noMatch"),!0===O.selfClosingTags&&(t=(t?t+" ":"")+"selfClosing"),(O.nestedLanguages&&O.nestedLanguages.length||O.nestedAttributes&&O.nestedAttributes.length)&&(e=configureNesting((O.nestedLanguages||[]).concat(defaultNesting),(O.nestedAttributes||[]).concat(defaultAttrs)));let i=e?htmlPlain.configure({wrap:e,dialect:t}):t?htmlLanguage.configure({dialect:t}):htmlLanguage;return new LanguageSupport(i,[htmlLanguage.data.of({autocomplete:htmlCompletionSourceWith(O)}),!1!==O.autoCloseTags?autoCloseTags$1:[],javascript().support,css().support])}const selfClosers=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),autoCloseTags$1=EditorView.inputHandler.of(((O,e,t,i,n)=>{if(O.composing||O.state.readOnly||e!=t||">"!=i&&"/"!=i||!htmlLanguage.isActiveAt(O.state,e,-1))return!1;let r=n(),{state:a}=r,s=a.changeByRange((O=>{var e,t,n;let r,s=a.doc.sliceString(O.from-1,O.to)==i,{head:o}=O,l=syntaxTree(a).resolveInner(o,-1);if(s&&">"==i&&"EndTag"==l.name){let i=l.parent;if("CloseTag"!=(null===(t=null===(e=i.parent)||void 0===e?void 0:e.lastChild)||void 0===t?void 0:t.name)&&(r=elementName$2(a.doc,i.parent,o))&&!selfClosers.has(r)){return{range:O,changes:{from:o,to:o+(">"===a.doc.sliceString(o,o+1)?1:0),insert:`</${r}>`}}}}else if(s&&"/"==i&&"IncompleteCloseTag"==l.name){let O=l.parent;if(l.from==o-2&&"CloseTag"!=(null===(n=O.lastChild)||void 0===n?void 0:n.name)&&(r=elementName$2(a.doc,O,o))&&!selfClosers.has(r)){let O=o+(">"===a.doc.sliceString(o,o+1)?1:0),e=`${r}>`;return{range:EditorSelection.cursor(o+e.length,-1),changes:{from:o,to:O,insert:e}}}}return{range:O}}));return!s.changes.empty&&(O.dispatch([r,a.update(s,{userEvent:"input.complete",scrollIntoView:!0})]),!0)})),javaHighlighting=styleTags({null:tags$1.null,instanceof:tags$1.operatorKeyword,this:tags$1.self,"new super assert open to with void":tags$1.keyword,"class interface extends implements enum var":tags$1.definitionKeyword,"module package import":tags$1.moduleKeyword,"switch while for if else case default do break continue return try catch finally throw":tags$1.controlKeyword,"requires exports opens uses provides public private protected static transitive abstract final strictfp synchronized native transient volatile throws":tags$1.modifier,IntegerLiteral:tags$1.integer,FloatingPointLiteral:tags$1.float,"StringLiteral TextBlock":tags$1.string,CharacterLiteral:tags$1.character,LineComment:tags$1.lineComment,BlockComment:tags$1.blockComment,BooleanLiteral:tags$1.bool,PrimitiveType:tags$1.standard(tags$1.typeName),TypeName:tags$1.typeName,Identifier:tags$1.variableName,"MethodName/Identifier":tags$1.function(tags$1.variableName),Definition:tags$1.definition(tags$1.variableName),ArithOp:tags$1.arithmeticOperator,LogicOp:tags$1.logicOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,AssignOp:tags$1.definitionOperator,UpdateOp:tags$1.updateOperator,Asterisk:tags$1.punctuation,Label:tags$1.labelName,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace,".":tags$1.derefOperator,", ;":tags$1.separator}),spec_identifier$2={__proto__:null,true:34,false:34,null:42,void:46,byte:48,short:48,int:48,long:48,char:48,float:48,double:48,boolean:48,extends:62,super:64,class:76,this:78,new:84,public:100,protected:102,private:104,abstract:106,static:108,final:110,strictfp:112,default:114,synchronized:116,native:118,transient:120,volatile:122,throws:150,implements:160,interface:166,enum:176,instanceof:238,open:267,module:269,requires:274,transitive:276,exports:278,to:280,opens:282,uses:284,provides:286,with:288,package:292,import:296,if:308,else:310,while:314,for:318,var:325,assert:332,switch:336,case:342,do:346,break:350,continue:354,return:358,throw:364,try:368,catch:372,finally:380},parser$9=LRParser.deserialize({version:14,states:"##jQ]QPOOQ$wQPOOO(bQQO'#H^O*iQQO'#CbOOQO'#Cb'#CbO*pQPO'#CaO*xOSO'#CpOOQO'#Hc'#HcOOQO'#Cu'#CuO,eQPO'#D_O-OQQO'#HmOOQO'#Hm'#HmO/gQQO'#HhO/nQQO'#HhOOQO'#Hh'#HhOOQO'#Hg'#HgO1rQPO'#DUO2PQPO'#GnO4wQPO'#D_O5OQPO'#DzO*pQPO'#E[O5qQPO'#E[OOQO'#DV'#DVO7SQQO'#HaO9^QQO'#EeO9eQPO'#EdO9jQPO'#EfOOQO'#Hb'#HbO7jQQO'#HbO:pQQO'#FhO:wQPO'#ExO:|QPO'#E}O:|QPO'#FPOOQO'#Ha'#HaOOQO'#HY'#HYOOQO'#Gh'#GhOOQO'#HX'#HXO<^QPO'#FiOOQO'#HW'#HWOOQO'#Gg'#GgQ]QPOOOOQO'#Hs'#HsO<cQPO'#HsO<hQPO'#D{O<hQPO'#EVO<hQPO'#EQO<pQPO'#HpO=RQQO'#EfO*pQPO'#C`O=ZQPO'#C`O*pQPO'#FcO=`QPO'#FeO=kQPO'#FkO=kQPO'#FnO<hQPO'#FsO=pQPO'#FpO:|QPO'#FwO=kQPO'#FyO]QPO'#GOO=uQPO'#GQO>QQPO'#GSO>]QPO'#GUO=kQPO'#GWO:|QPO'#GXO>dQPO'#GZO?QQQO'#HiO?mQQO'#CuO?tQPO'#HxO@SQPO'#D_O@rQPO'#DpO?wQPO'#DqO@|QPO'#HxOA_QPO'#DpOAgQPO'#IROAlQPO'#E`OOQO'#Hr'#HrOOQO'#Gm'#GmQ$wQPOOOAtQPO'#HsOOQO'#H^'#H^OCsQQO,58{OOQO'#H['#H[OOOO'#Gi'#GiOEfOSO,59[OOQO,59[,59[OOQO'#Hi'#HiOFVQPO,59eOGXQPO,59yOOQO-E:f-E:fO*pQPO,58zOG{QPO,58zO*pQPO,5;}OHQQPO'#DQOHVQPO'#DQOOQO'#Gk'#GkOIVQQO,59jOOQO'#Dm'#DmOJqQPO'#HuOJ{QPO'#DlOKZQPO'#HtOKcQPO,5<_OKhQPO,59^OLRQPO'#CxOOQO,59c,59cOLYQPO,59bOLeQQO'#H^ONgQQO'#CbO!!iQPO'#D_O!#nQQO'#HmO!$OQQO,59pO!$VQPO'#DvO!$eQPO'#H|O!$mQPO,5:`O!$rQPO,5:`O!%YQPO,5;nO!%eQPO'#ITO!%pQPO,5;eO!%uQPO,5=YOOQO-E:l-E:lOOQO,5:f,5:fO!']QPO,5:fO!'dQPO,5:vO?tQPO,5<_O*pQPO,5:vO<hQPO,5:gO<hQPO,5:qO<hQPO,5:lO<hQPO,5<_O!'zQPO,59qO:|QPO,5:}O!(RQPO,5;QO:|QPO,59TO!(aQPO'#DXOOQO,5;O,5;OOOQO'#El'#ElOOQO'#Eo'#EoO:|QPO,5;UO:|QPO,5;UO:|QPO,5;UO:|QPO,5;UO:|QPO,5;UO:|QPO,5;UO:|QPO,5;UO:|QPO,5;UO:|QPO,5;UO:|QPO,5;fOOQO,5;i,5;iOOQO,5<S,5<SO!(hQPO,5;bO!(yQPO,5;dO!(hQPO'#CyO!)QQQO'#HmO!)`QQO,5;kO]QPO,5<TOOQO-E:e-E:eOOQO,5>_,5>_O!*sQPO,5:gO!+RQPO,5:qO!+ZQPO,5:lO!+fQPO,5>[O!$VQPO,5>[O!'iQPO,59UO!+qQQO,58zO!+yQQO,5;}O!,RQQO,5<PO*pQPO,5<PO:|QPO'#DUO]QPO,5<VO]QPO,5<YO!,ZQPO'#FrO]QPO,5<[O]QPO,5<aO!,kQQO,5<cO!,uQPO,5<eO!,zQPO,5<jOOQO'#Fj'#FjOOQO,5<l,5<lO!-PQPO,5<lOOQO,5<n,5<nO!-UQPO,5<nO!-ZQQO,5<pOOQO,5<p,5<pO>gQPO,5<rO!-bQQO,5<sO!-iQPO'#GdO!.oQPO,5<uO>gQPO,5<}O!2mQPO,59jO!2zQPO'#HuO!3RQPO,59xO!3WQPO,5>dO?tQPO,59xO!3cQPO,5:[OAlQPO,5:zO!3kQPO'#DrO?wQPO'#DrO!3vQPO'#HyO!4OQPO,5:]O?tQPO,5>dO!(hQPO,5>dOAgQPO,5>mOOQO,5:[,5:[O!$rQPO'#DtOOQO,5>m,5>mO!4TQPO'#EaOOQO,5:z,5:zO!7UQPO,5:zO!(hQPO'#DxOOQO-E:k-E:kOOQO,5:y,5:yO*pQPO,58}O!7ZQPO'#ChOOQO1G.k1G.kOOOO-E:g-E:gOOQO1G.v1G.vO!+qQQO1G.fO*pQPO1G.fO!7eQQO1G1iOOQO,59l,59lO!7mQPO,59lOOQO-E:i-E:iO!7rQPO,5>aO!8ZQPO,5:WO<hQPO'#GpO!8bQPO,5>`OOQO1G1y1G1yOOQO1G.x1G.xO!8{QPO'#CyO!9kQPO'#HmO!9uQPO'#CzO!:TQPO'#HlO!:]QPO,59dOOQO1G.|1G.|OLYQPO1G.|O!:sQPO,59eO!;QQQO'#H^O!;cQQO'#CbOOQO,5:b,5:bO<hQPO,5:cOOQO,5:a,5:aO!;tQQO,5:aOOQO1G/[1G/[O!;yQPO,5:bO!<[QPO'#GsO!<oQPO,5>hOOQO1G/z1G/zO!<wQPO'#DvO!=YQPO1G/zO!(hQPO'#GqO!=_QPO1G1YO:|QPO1G1YO<hQPO'#GyO!=gQPO,5>oOOQO1G1P1G1POOQO1G0Q1G0QO!=oQPO'#E]OOQO1G0b1G0bO!>`QPO1G1yO!'dQPO1G0bO!*sQPO1G0RO!+RQPO1G0]O!+ZQPO1G0WOOQO1G/]1G/]O!>eQQO1G.pO9eQPO1G0jO*pQPO1G0jO<pQPO'#HpO!@[QQO1G.pOOQO1G.p1G.pO!@aQQO1G0iOOQO1G0l1G0lO!@hQPO1G0lO!@sQQO1G.oO!AZQQO'#HqO!AhQPO,59sO!BzQQO1G0pO!DfQQO1G0pO!DmQQO1G0pO!FUQQO1G0pO!F]QQO1G0pO!GbQQO1G0pO!I]QQO1G0pO!IdQQO1G0pO!IkQQO1G0pO!IuQQO1G1QO!I|QQO'#HmOOQO1G0|1G0|O!KSQQO1G1OOOQO1G1O1G1OOOQO1G1o1G1oO!KjQPO'#D[O!(hQPO'#D|O!(hQPO'#D}OOQO1G0R1G0RO!KqQPO1G0RO!KvQPO1G0RO!LOQPO1G0RO!LZQPO'#EXOOQO1G0]1G0]O!LnQPO1G0]O!LsQPO'#ETO!(hQPO'#ESOOQO1G0W1G0WO!MmQPO1G0WO!MrQPO1G0WO!MzQPO'#EhO!NRQPO'#EhOOQO'#Gx'#GxO!NZQQO1G0mO# }QQO1G3vO9eQPO1G3vO#$PQPO'#FXOOQO1G.f1G.fOOQO1G1i1G1iO#$WQPO1G1kOOQO1G1k1G1kO#$cQQO1G1kO#$kQPO1G1qOOQO1G1t1G1tO+QQPO'#D_O-OQQO,5<bO#(cQPO,5<bO#(tQPO,5<^O#({QPO,5<^OOQO1G1v1G1vOOQO1G1{1G1{OOQO1G1}1G1}O:|QPO1G1}O#,oQPO'#F{OOQO1G2P1G2PO=kQPO1G2UOOQO1G2W1G2WOOQO1G2Y1G2YOOQO1G2[1G2[OOQO1G2^1G2^OOQO1G2_1G2_O#,vQQO'#H^O#-aQQO'#CbO-OQQO'#HmO#-zQQOOO#.hQQO'#EeO#.VQQO'#HbO!$VQPO'#GeO#.oQPO,5=OOOQO'#HQ'#HQO#.wQPO1G2aO#2uQPO'#G]O>gQPO'#GaOOQO1G2a1G2aO#2zQPO1G2iO#6xQPO,5>gOOQO1G/d1G/dOOQO1G4O1G4OO#7ZQPO1G/dOOQO1G/v1G/vOOQO1G0f1G0fO!7UQPO1G0fOOQO,5:^,5:^O!(hQPO'#DsO#7`QPO,5:^O?wQPO'#GrO#7kQPO,5>eOOQO1G/w1G/wOAgQPO'#H{O#7sQPO1G4OO?tQPO1G4OOOQO1G4X1G4XO!#YQPO'#DvO!!iQPO'#D_OOQO,5:{,5:{O#8OQPO,5:{O#8OQPO,5:{O#8VQQO'#HaO#9hQQO'#HbO#9rQQO'#EbO#9}QPO'#EbO#:VQPO'#IOOOQO,5:d,5:dOOQO1G.i1G.iO#:bQQO'#EeO#:rQQO'#H`O#;SQPO'#FTOOQO'#H`'#H`O#;^QPO'#H`O#;{QPO'#IWO#<TQPO,59SOOQO7+$Q7+$QO!+qQQO7+$QOOQO7+'T7+'TOOQO1G/W1G/WO#<YQPO'#DoO#<dQQO'#HvOOQO'#Hv'#HvOOQO1G/r1G/rOOQO,5=[,5=[OOQO-E:n-E:nO#<tQWO,58{O#<{QPO,59fOOQO,59f,59fO!(hQPO'#HoOKmQPO'#GjO#=ZQPO,5>WOOQO1G/O1G/OOOQO7+$h7+$hOOQO1G/{1G/{O#=cQQO1G/{OOQO1G/}1G/}O#=hQPO1G/{OOQO1G/|1G/|O<hQPO1G/}OOQO,5=_,5=_OOQO-E:q-E:qOOQO7+%f7+%fOOQO,5=],5=]OOQO-E:o-E:oO:|QPO7+&tOOQO7+&t7+&tOOQO,5=e,5=eOOQO-E:w-E:wO#=mQPO'#EUO#={QPO'#EUOOQO'#Gw'#GwO#>dQPO,5:wOOQO,5:w,5:wOOQO7+'e7+'eOOQO7+%|7+%|OOQO7+%m7+%mO!KqQPO7+%mO!KvQPO7+%mO!LOQPO7+%mOOQO7+%w7+%wO!LnQPO7+%wOOQO7+%r7+%rO!MmQPO7+%rO!MrQPO7+%rOOQO7+&U7+&UOOQO'#Ee'#EeO9eQPO7+&UO9eQPO,5>[O#?TQPO7+$[OOQO7+&T7+&TOOQO7+&W7+&WO:|QPO'#GlO#?cQPO,5>]OOQO1G/_1G/_O:|QPO7+&lO#?nQQO,59eO#@tQPO,59vOOQO,59v,59vOOQO,5:h,5:hOOQO'#EP'#EPOOQO,5:i,5:iO#@{QPO'#EYO<hQPO'#EYO#A^QPO'#IPO#AiQPO,5:sO?tQPO'#HxO!(hQPO'#HxO#AqQPO'#DpOOQO'#Gu'#GuO#AxQPO,5:oOOQO,5:o,5:oOOQO,5:n,5:nOOQO,5;S,5;SO#BrQQO,5;SO#ByQPO,5;SOOQO-E:v-E:vOOQO7+&X7+&XOOQO7+)b7+)bO#CQQQO7+)bOOQO'#G|'#G|O#DqQPO,5;sOOQO,5;s,5;sO#DxQPO'#FYO*pQPO'#FYO*pQPO'#FYO*pQPO'#FYO#EWQPO7+'VO#E]QPO7+'VOOQO7+'V7+'VO]QPO7+']O#EhQPO1G1|O?tQPO1G1|O#EvQQO1G1xO!(aQPO1G1xO#E}QPO1G1xO#FUQQO7+'iOOQO'#HP'#HPO#F]QPO,5<gOOQO,5<g,5<gO#FdQPO'#HsO:|QPO'#F|O#FlQPO7+'pO#FqQPO,5=PO?tQPO,5=PO#FvQPO1G2jO#HPQPO1G2jOOQO1G2j1G2jOOQO-E;O-E;OOOQO7+'{7+'{O!<[QPO'#G_O>gQPO,5<wOOQO,5<{,5<{O#HXQPO7+(TOOQO7+(T7+(TO#LVQPO1G4ROOQO7+%O7+%OOOQO7+&Q7+&QO#LhQPO,5:_OOQO1G/x1G/xOOQO,5=^,5=^OOQO-E:p-E:pOOQO7+)j7+)jO#LsQPO7+)jO!:bQPO,5:aOOQO1G0g1G0gO#MOQPO1G0gO#MVQPO,59qO#MkQPO,5:|O9eQPO,5:|O!(hQPO'#GtO#MpQPO,5>jO#M{QPO,59TO#NSQPO'#IVO#N[QPO,5;oO*pQPO'#G{O#NaQPO,5>rOOQO1G.n1G.nOOQO<<Gl<<GlO#NiQPO'#HwO#NqQPO,5:ZOOQO1G/Q1G/QOOQO,5>Z,5>ZOOQO,5=U,5=UOOQO-E:h-E:hO#NvQPO7+%gOOQO7+%g7+%gOOQO7+%i7+%iOOQO<<J`<<J`O$ ^QPO'#H^O$ eQPO'#CbO$ lQPO,5:pO$ qQPO,5:xO#=mQPO,5:pOOQO-E:u-E:uOOQO1G0c1G0cOOQO<<IX<<IXO!KqQPO<<IXO!KvQPO<<IXOOQO<<Ic<<IcOOQO<<I^<<I^O!MmQPO<<I^OOQO<<Ip<<IpO$ vQQO<<GvO9eQPO<<IpO*pQPO<<IpOOQO<<Gv<<GvO$#mQQO,5=WOOQO-E:j-E:jO$#zQQO<<JWOOQO1G/b1G/bOOQO,5:t,5:tO$$bQPO,5:tO$$pQPO,5:tO$%RQPO'#GvO$%iQPO,5>kO$%tQPO'#EZOOQO1G0_1G0_O$%{QPO1G0_O?tQPO,5:pOOQO-E:s-E:sOOQO1G0Z1G0ZOOQO1G0n1G0nO$&QQQO1G0nOOQO<<L|<<L|OOQO-E:z-E:zOOQO1G1_1G1_O$&XQQO,5;tOOQO'#G}'#G}O#DxQPO,5;tOOQO'#IX'#IXO$&aQQO,5;tO$&rQQO,5;tOOQO<<Jq<<JqO$&zQPO<<JqOOQO<<Jw<<JwO:|QPO7+'hO$'PQPO7+'hO!(aQPO7+'dO$'_QPO7+'dO$'dQQO7+'dOOQO<<KT<<KTOOQO-E:}-E:}OOQO1G2R1G2ROOQO,5<h,5<hO$'kQQO,5<hOOQO<<K[<<K[O:|QPO1G2kO$'rQPO1G2kOOQO,5=n,5=nOOQO7+(U7+(UO$'wQPO7+(UOOQO-E;Q-E;QO$)fQWO'#HhO$)QQWO'#HhO$)mQPO'#G`O<hQPO,5<yO!$VQPO,5<yOOQO1G2c1G2cOOQO<<Ko<<KoO$*OQPO1G/yOOQO<<MU<<MUOOQO7+&R7+&RO$*ZQPO1G0jO$*fQQO1G0hOOQO1G0h1G0hO$*nQPO1G0hOOQO,5=`,5=`OOQO-E:r-E:rO$*sQQO1G.oOOQO1G1[1G1[O$*}QPO'#GzO$+[QPO,5>qOOQO1G1Z1G1ZO$+dQPO'#FUOOQO,5=g,5=gOOQO-E:y-E:yO$+iQPO'#GoO$+vQPO,5>cOOQO1G/u1G/uOOQO<<IR<<IROOQO1G0[1G0[O$,OQPO1G0dO$,TQPO1G0[O$,YQPO1G0dOOQOAN>sAN>sO!KqQPOAN>sOOQOAN>xAN>xOOQOAN?[AN?[O9eQPOAN?[OOQO1G0`1G0`O$,_QPO1G0`OOQO,5=b,5=bOOQO-E:t-E:tO$,mQPO,5:uOOQO7+%y7+%yOOQO7+&Y7+&YOOQO1G1`1G1`O$,tQQO1G1`OOQO-E:{-E:{O$,|QQO'#IYO$,wQPO1G1`O$&gQPO1G1`O*pQPO1G1`OOQOAN@]AN@]O$-XQQO<<KSO:|QPO<<KSO$-`QPO<<KOOOQO<<KO<<KOO!(aQPO<<KOOOQO1G2S1G2SO$-eQQO7+(VO:|QPO7+(VOOQO<<Kp<<KpP!-iQPO'#HSO!$VQPO'#HRO$-oQPO,5<zO$-zQPO1G2eO<hQPO1G2eO9eQPO7+&SO$.PQPO7+&SOOQO7+&S7+&SOOQO,5=f,5=fOOQO-E:x-E:xO#M{QPO,5;pOOQO,5=Z,5=ZOOQO-E:m-E:mO$.UQPO7+&OOOQO7+%v7+%vO$.dQPO7+&OOOQOG24_G24_OOQOG24vG24vOOQO7+%z7+%zOOQO7+&z7+&zO*pQPO'#HOO$.iQPO,5>tO$.qQPO7+&zO$.vQQO'#IZOOQOAN@nAN@nO$/RQQOAN@nOOQOAN@jAN@jO$/YQPOAN@jO$/_QQO<<KqO$/iQPO,5=mOOQO-E;P-E;POOQO7+(P7+(PO$/zQPO7+(PO$0PQPO<<InOOQO<<In<<InO$0UQPO<<IjOOQO<<Ij<<IjO#M{QPO<<IjO$0UQPO<<IjO$0dQQO,5=jOOQO-E:|-E:|OOQO<<Jf<<JfO$0oQPO,5>uOOQOG26YG26YOOQOG26UG26UOOQO<<Kk<<KkOOQOAN?YAN?YOOQOAN?UAN?UO#M{QPOAN?UO$0wQPOAN?UO$0|QPOAN?UO$1[QPOG24pOOQOG24pG24pO#M{QPOG24pOOQOLD*[LD*[O$1aQPOLD*[OOQO!$'Mv!$'MvO*pQPO'#CaO$1fQQO'#H^O$1yQQO'#CbO!(hQPO'#Cy",stateData:"$2i~OPOSQOS%yOS~OZ`O_VO`VOaVObVOcVOeVOg^Oh^Op!POv{OwkOz!OO}cO!PvO!SyO!TyO!UyO!VyO!WyO!XyO!YyO!ZzO![!`O!]yO!^yO!_yO!u}O!z|O#fpO#roO#tpO#upO#y!RO#z!QO$W!SO$Y!TO$`!UO$c!VO$e!XO$h!WO$l!YO$n!ZO$s![O$u!]O$w!^O$y!_O$|!aO%O!bO%}TO&PRO&RQO&XUO&tdO~Og^Oh^Ov{O}cO!P!mO!SyO!TyO!UyO!VyO!W!pO!XyO!YyO!ZzO!]yO!^yO!_yO!u}O!z|O%}TO&P!cO&R!dO&_!hO&tdO~OWiXW&QXZ&QXuiXu&QX!P&QX!b&QX#]&QX#_&QX#a&QX#b&QX#d&QX#e&QX#f&QX#g&QX#h&QX#i&QX#k&QX#o&QX#r&QX%}iX&PiX&RiX&^&QX&_iX&_&QX&n&QX&viX&v&QX&x!aX~O#p$^X~P&bOWUXW&]XZUXuUXu&]X!PUX!bUX#]UX#_UX#aUX#bUX#dUX#eUX#fUX#gUX#hUX#iUX#kUX#oUX#rUX%}&]X&P&]X&R&]X&^UX&_UX&_&]X&nUX&vUX&v&]X&x!aX~O#p$^X~P(iO&PSO&R!qO~O&W!vO&Y!tO~Og^Oh^O!SyO!TyO!UyO!VyO!WyO!XyO!YyO!ZzO!]yO!^yO!_yO%}TO&P!wO&RWOg!RXh!RX$h!RX&P!RX&R!RX~O#y!|O#z!{O$W!}Ov!RX!u!RX!z!RX&t!RX~P+QOW#XOu#OO%}TO&P#SO&R#SO&v&aX~OW#[Ou&[X%}&[X&P&[X&R&[X&v&[XY&[Xw&[X&n&[X&q&[XZ&[Xq&[X&^&[X!P&[X#_&[X#a&[X#b&[X#d&[X#e&[X#f&[X#g&[X#h&[X#i&[X#k&[X#o&[X#r&[X}&[X!r&[X#p&[Xs&[X|&[X~O&_#YO~P-dO&_&[X~P-dOZ`O_VO`VOaVObVOcVOeVOg^Oh^Op!POwkOz!OO!SyO!TyO!UyO!VyO!WyO!XyO!YyO!ZzO!]yO!^yO!_yO#fpO#roO#tpO#upO%}TO&XUO~O&P#^O&R#]OY&pP~P/uO%}TOg%bXh%bXv%bX!S%bX!T%bX!U%bX!V%bX!W%bX!X%bX!Y%bX!Z%bX!]%bX!^%bX!_%bX!u%bX!z%bX$h%bX&P%bX&R%bX&t%bX&_%bX~O!SyO!TyO!UyO!VyO!WyO!XyO!YyO!ZzO!]yO!^yO!_yOg!RXh!RXv!RX!u!RX!z!RX&P!RX&R!RX&t!RX&_!RX~O$h!RX~P3gO|#kO~P]Og^Oh^Ov#pO!u#rO!z#qO&P!wO&RWO&t#oO~O$h#sO~P5VOu#uO&v#vO!P&TX#_&TX#a&TX#b&TX#d&TX#e&TX#f&TX#g&TX#h&TX#i&TX#k&TX#o&TX#r&TX&^&TX&_&TX&n&TX~OW#tOY&TX#p&TXs&TXq&TX|&TX~P5xO!b#wO#]#wOW&UXu&UX!P&UX#_&UX#a&UX#b&UX#d&UX#e&UX#f&UX#g&UX#h&UX#i&UX#k&UX#o&UX#r&UX&^&UX&_&UX&n&UX&v&UXY&UX#p&UXs&UXq&UX|&UX~OZ#XX~P7jOZ#xO~O&v#vO~O#_#|O#a#}O#b$OO#d$QO#e$RO#f$SO#g$TO#h$UO#i$UO#k$YO#o$VO#r$WO&^#zO&_#zO&n#{O~O!P$XO~P9oO&x$ZO~OZ`O_VO`VOaVObVOcVOeVOg^Oh^Op!POwkOz!OO#fpO#roO#tpO#upO%}TO&P0qO&R0pO&XUO~O#p$_O~O![$aO~O&P#SO&R#SO~Og^Oh^O&P!wO&RWO&_#YO~OW$gO&v#vO~O#z!{O~O!W$kO&PSO&R!qO~OZ$lO~OZ$oO~O!P$vO&P$uO&R$uO~O!P$xO&P$uO&R$uO~O!P${O~P:|OZ%OO}cO~OW&]Xu&]X%}&]X&P&]X&R&]X&_&]X~OZ!aX~P>lOWiXuiX%}iX&PiX&RiX&_iX~OZ!aX~P?XOu#OO%}TO&P#SO&R#SO~O%}TO~P3gOg^Oh^Ov#pO!u#rO!z#qO&_!hO&t#oO~O&P!cO&R!dO~P@ZOg^Oh^O%}TO&P!cO&R!dO~O}cO!P%aO~OZ%bO~O}%dO!m%gO~O}cOg&gXh&gXv&gX!S&gX!T&gX!U&gX!V&gX!W&gX!X&gX!Y&gX!Z&gX!]&gX!^&gX!_&gX!u&gX!z&gX%}&gX&P&gX&R&gX&_&gX&t&gX~OW%jOZ%kOgTahTa%}Ta&PTa&RTa~OvTa!STa!TTa!UTa!VTa!WTa!XTa!YTa!ZTa!]Ta!^Ta!_Ta!uTa!zTa#yTa#zTa$WTa$hTa&tTa&_TauTaYTaqTa|Ta!PTa~PC[O&W%nO&Y!tO~Ou#OO%}TOqma&^maYma&nma!Pma~O&vma}ma!rma~PEnO!SyO!TyO!UyO!VyO!WyO!XyO!YyO!ZzO!]yO!^yO!_yO~Og!Rah!Rav!Ra!u!Ra!z!Ra$h!Ra&P!Ra&R!Ra&t!Ra&_!Ra~PFdO#z%pO~Os%rO~Ou%sO%}TO~Ou#OO%}ra&Pra&Rra&vraYrawra&nra&qra!Pra&^raqra~OWra#_ra#ara#bra#dra#era#fra#gra#hra#ira#kra#ora#rra&_ra#prasra|ra~PH_Ou#OO%}TOq&iX!P&iX!b&iX~OY&iX#p&iX~PJ`O!b%vOq!`X!P!`XY!`X~Oq%wO!P&hX~O!P%yO~Ov%zO~Og^Oh^O%}0oO&P!wO&RWO&b%}O~O&^&`P~PKmO%}TO&P!wO&RWO~OW&QXYiXY!aXY&QXZ&QXq!aXu&QXwiX!b&QX#]&QX#_&QX#a&QX#b&QX#d&QX#e&QX#f&QX#g&QX#h&QX#i&QX#k&QX#o&QX#r&QX&^&QX&_&QX&niX&n&QX&qiX&viX&v&QX&x!aX~P?XOWUXYUXY!aXY&]XZUXq!aXuUXw&]X!bUX#]UX#_UX#aUX#bUX#dUX#eUX#fUX#gUX#hUX#iUX#kUX#oUX#rUX&^UX&_UX&nUX&n&]X&q&]X&vUX&v&]X&x!aX~P>lOg^Oh^O%}TO&P!wO&RWOg!RXh!RX&P!RX&R!RX~PFdOu#OOw&XO%}TO&P&UO&R&TO&q&WO~OW#XOY&aX&n&aX&v&aX~P!#YOY&ZO~P9oOg^Oh^O&P!wO&RWO~Oq&]OY&pX~OY&_O~Og^Oh^O%}TO&P!wO&RWOY&pP~PFdOY&dO&n&bO&v#vO~Oq&eO&x$ZOY&wX~OY&gO~O%}TOg%bah%bav%ba!S%ba!T%ba!U%ba!V%ba!W%ba!X%ba!Y%ba!Z%ba!]%ba!^%ba!_%ba!u%ba!z%ba$h%ba&P%ba&R%ba&t%ba&_%ba~O|&hO~P]O}&iO~Op&uOw&vO&PSO&R!qO&_#YO~Oz&tO~P!'iOz&xO&PSO&R!qO&_#YO~OY&eP~P:|Og^Oh^O%}TO&P!wO&RWO~O}cO~P:|OW#XOu#OO%}TO&v&aX~O#r$WO!P#sa#_#sa#a#sa#b#sa#d#sa#e#sa#f#sa#g#sa#h#sa#i#sa#k#sa#o#sa&^#sa&_#sa&n#saY#sa#p#sas#saq#sa|#sa~Oo'_O}'^O!r'`O&_!hO~O}'eO!r'`O~Oo'iO}'hO&_!hO~OZ#xOu'mO%}TO~OW%jO}'sO~OW%jO!P'uO~OW'vO!P'wO~O$h!WO&P0qO&R0pO!P&eP~P/uO!P(SO#p(TO~P9oO}(UO~O$c(WO~O!P(XO~O!P(YO~O!P(ZO~P9oO!P(]O~P9oOZ$lO_VO`VOaVObVOcVOeVOg^Oh^Op!POwkOz!OO%}TO&P(_O&R(^O&XUO~PFdO%Q(hO%U(iOZ$}a_$}a`$}aa$}ab$}ac$}ae$}ag$}ah$}ap$}av$}aw$}az$}a}$}a!P$}a!S$}a!T$}a!U$}a!V$}a!W$}a!X$}a!Y$}a!Z$}a![$}a!]$}a!^$}a!_$}a!u$}a!z$}a#f$}a#r$}a#t$}a#u$}a#y$}a#z$}a$W$}a$Y$}a$`$}a$c$}a$e$}a$h$}a$l$}a$n$}a$s$}a$u$}a$w$}a$y$}a$|$}a%O$}a%w$}a%}$}a&P$}a&R$}a&X$}a&t$}a|$}a$a$}a$q$}a~O}ra!rra'Ora~PH_OZ%bO~PJ`O!P(mO~O!m%gO}&la!P&la~O}cO!P(pO~Oo(tOq!fX&^!fX~Oq(vO&^&mX~O&^(xO~OZ`O_VO`VOaVObVOcVOeVOg^Oh^Op)UOv{Ow)TOz!OO|)PO}cO!PvO![!`O!u}O!z|O#fpO#roO#tpO#upO#y!RO#z!QO$W!SO$Y!TO$`!UO$c!VO$e!XO$h!WO$l!YO$n!ZO$s![O$u!]O$w!^O$y!_O$|!aO%O!bO%}TO&PRO&RQO&XUO&_#YO&tdO~PFdO}%dO~O})]OY&zP~P:|OW%jO!P)dO~Os)eO~Ou#OO%}TOq&ia!P&ia!b&iaY&ia#p&ia~O})fO~P:|Oq%wO!P&ha~Og^Oh^O%}0oO&P!wO&RWO~O&b)mO~P!8jOu#OO%}TOq&aX&^&aXY&aX&n&aX!P&aX~O}&aX!r&aX~P!9SOo)oOp)oOqnX&^nX~Oq)pO&^&`X~O&^)rO~Ou#OOw)tO%}TO&PSO&R!qO~OYma&nma&vma~P!:bOW&QXY!aXq!aXu!aX%}!aX~OWUXY!aXq!aXu!aX%}!aX~OW)wO~Ou#OO%}TO&P#SO&R#SO&q)yO~Og^Oh^O%}TO&P!wO&RWO~PFdOq&]OY&pa~Ou#OO%}TO&P#SO&R#SO&q&WO~OY)|O~OY*PO&n&bO~Oq&eOY&wa~Og^Oh^Ov{O|*XO!u}O%}TO&P!wO&RWO&tdO~PFdO!P*YO~OW^iZ#XXu^i!P^i!b^i#]^i#_^i#a^i#b^i#d^i#e^i#f^i#g^i#h^i#i^i#k^i#o^i#r^i&^^i&_^i&n^i&v^iY^i#p^is^iq^i|^i~OW*iO~Os*jO~P9oOz*kO&PSO&R!qO~O!P]iY]i#p]is]iq]i|]i~P9oOq*lOY&eX!P&eX~P9oOY*nO~O#f$SO#g$TO#k$YO#r$WO!P#^i#_#^i#a#^i#b#^i#d#^i#e#^i#o#^i&^#^i&_#^i&n#^iY#^i#p#^is#^iq#^i|#^i~O#h$UO#i$UO~P!AmO#_#|O#d$QO#e$RO#f$SO#g$TO#h$UO#i$UO#k$YO#r$WO&^#zO&_#zO&n#{O!P#^i#b#^i#o#^iY#^i#p#^is#^iq#^i|#^i~O#a#^i~P!CUO#a#}O~P!CUO#_#|O#f$SO#g$TO#h$UO#i$UO#k$YO#r$WO&^#zO&_#zO!P#^i#a#^i#b#^i#d#^i#e#^i#o#^iY#^i#p#^is#^iq#^i|#^i~O&n#^i~P!DtO&n#{O~P!DtO#f$SO#g$TO#k$YO#r$WO!P#^i#a#^i#b#^i#e#^i#o#^iY#^i#p#^is#^iq#^i|#^i~O#_#|O#d$QO#h$UO#i$UO&^#zO&_#zO&n#{O~P!FdO#k$YO#r$WO!P#^i#_#^i#a#^i#b#^i#d#^i#e#^i#f#^i#h#^i#i#^i#o#^i&^#^i&_#^i&n#^iY#^i#p#^is#^iq#^i|#^i~O#g$TO~P!G{O#g#^i~P!G{O#h#^i#i#^i~P!AmO#p*oO~P9oO#_&aX#a&aX#b&aX#d&aX#e&aX#f&aX#g&aX#h&aX#i&aX#k&aX#o&aX#r&aX&_&aX#p&aXs&aX|&aX~P!9SO!P#liY#li#p#lis#liq#li|#li~P9oO|*rO~P$wO}'^O~O}'^O!r'`O~Oo'_O}'^O!r'`O~O%}TO&P#SO&R#SO|&sP!P&sP~PFdO}'eO~Og^Oh^Ov{O|+PO!P*}O!u}O!z|O%}TO&P!wO&RWO&_!hO&tdO~PFdO}'hO~Oo'iO}'hO~Os+RO~P:|Ou+TO%}TO~Ou'mO})fO%}TOW#Zi!P#Zi#_#Zi#a#Zi#b#Zi#d#Zi#e#Zi#f#Zi#g#Zi#h#Zi#i#Zi#k#Zi#o#Zi#r#Zi&^#Zi&_#Zi&n#Zi&v#ZiY#Zi#p#Zis#Ziq#Zi|#Zi~O}'^OW&diu&di!P&di#_&di#a&di#b&di#d&di#e&di#f&di#g&di#h&di#i&di#k&di#o&di#r&di&^&di&_&di&n&di&v&diY&di#p&dis&diq&di|&di~O#}+]O$P+^O$R+^O$S+_O$T+`O~O|+[O~P##nO$Z+aO&PSO&R!qO~OW+bO!P+cO~O$a+dOZ$_i_$_i`$_ia$_ib$_ic$_ie$_ig$_ih$_ip$_iv$_iw$_iz$_i}$_i!P$_i!S$_i!T$_i!U$_i!V$_i!W$_i!X$_i!Y$_i!Z$_i![$_i!]$_i!^$_i!_$_i!u$_i!z$_i#f$_i#r$_i#t$_i#u$_i#y$_i#z$_i$W$_i$Y$_i$`$_i$c$_i$e$_i$h$_i$l$_i$n$_i$s$_i$u$_i$w$_i$y$_i$|$_i%O$_i%w$_i%}$_i&P$_i&R$_i&X$_i&t$_i|$_i$q$_i~Og^Oh^O$h#sO&P!wO&RWO~O!P+hO~P:|O!P+iO~OZ`O_VO`VOaVObVOcVOeVOg^Oh^Op!POv{OwkOz!OO}cO!PvO!SyO!TyO!UyO!VyO!WyO!XyO!YyO!Z+nO![!`O!]yO!^yO!_yO!u}O!z|O#fpO#roO#tpO#upO#y!RO#z!QO$W!SO$Y!TO$`!UO$c!VO$e!XO$h!WO$l!YO$n!ZO$q+oO$s![O$u!]O$w!^O$y!_O$|!aO%O!bO%}TO&PRO&RQO&XUO&tdO~O|+mO~P#)QOW&QXY&QXZ&QXu&QX!P&QX&viX&v&QX~P?XOWUXYUXZUXuUX!PUX&vUX&v&]X~P>lOW#tOu#uO&v#vO~OW&UXY%XXu&UX!P%XX&v&UX~OZ#XX~P#.VOY+uO!P+sO~O%Q(hO%U(iOZ$}i_$}i`$}ia$}ib$}ic$}ie$}ig$}ih$}ip$}iv$}iw$}iz$}i}$}i!P$}i!S$}i!T$}i!U$}i!V$}i!W$}i!X$}i!Y$}i!Z$}i![$}i!]$}i!^$}i!_$}i!u$}i!z$}i#f$}i#r$}i#t$}i#u$}i#y$}i#z$}i$W$}i$Y$}i$`$}i$c$}i$e$}i$h$}i$l$}i$n$}i$s$}i$u$}i$w$}i$y$}i$|$}i%O$}i%w$}i%}$}i&P$}i&R$}i&X$}i&t$}i|$}i$a$}i$q$}i~OZ+xO~O%Q(hO%U(iOZ%Vi_%Vi`%Via%Vib%Vic%Vie%Vig%Vih%Vip%Viv%Viw%Viz%Vi}%Vi!P%Vi!S%Vi!T%Vi!U%Vi!V%Vi!W%Vi!X%Vi!Y%Vi!Z%Vi![%Vi!]%Vi!^%Vi!_%Vi!u%Vi!z%Vi#f%Vi#r%Vi#t%Vi#u%Vi#y%Vi#z%Vi$W%Vi$Y%Vi$`%Vi$c%Vi$e%Vi$h%Vi$l%Vi$n%Vi$s%Vi$u%Vi$w%Vi$y%Vi$|%Vi%O%Vi%w%Vi%}%Vi&P%Vi&R%Vi&X%Vi&t%Vi|%Vi$a%Vi$q%Vi~Ou#OO%}TO}&oa!P&oa!m&oa~O!P,OO~Oo(tOq!fa&^!fa~Oq(vO&^&ma~O!m%gO}&li!P&li~O|,XO~P]OW,ZO~P5xOW&UXu&UX#_&UX#a&UX#b&UX#d&UX#e&UX#f&UX#g&UX#h&UX#i&UX#k&UX#o&UX#r&UX&^&UX&_&UX&n&UX&v&UX~OZ#xO!P&UX~P#8^OW$gOZ#xO&v#vO~Op,]Ow,]O~Oq,^O}&rX!P&rX~O!b,`O#]#wOY&UXZ#XX~P#8^OY&SXq&SX|&SX!P&SX~P9oO})]O|&yP~P:|OY&SXg%[Xh%[X%}%[X&P%[X&R%[Xq&SX|&SX!P&SX~Oq,cOY&zX~OY,eO~O})fO|&kP~P:|Oq&jX!P&jX|&jXY&jX~P9oO&bTa~PC[Oo)oOp)oOqna&^na~Oq)pO&^&`a~OW,mO~Ow,nO~Ou#OO%}TO&P,rO&R,qO~Og^Oh^Ov#pO!u#rO&P!wO&RWO&t#oO~Og^Oh^Ov{O|,wO!u}O%}TO&P!wO&RWO&tdO~PFdOw-SO&PSO&R!qO&_#YO~Oq*lOY&ea!P&ea~O#_ma#ama#bma#dma#ema#fma#gma#hma#ima#kma#oma#rma&_ma#pmasma|ma~PEnO|-WO~P$wOZ#xO}'^Oq!|X|!|X!P!|X~Oq-[O|&sX!P&sX~O|-_O!P-^O~O&_!hO~P5VOg^Oh^Ov{O|-cO!P*}O!u}O!z|O%}TO&P!wO&RWO&_!hO&tdO~PFdOs-dO~P9oOs-dO~P:|O}'^OW&dqu&dq!P&dq#_&dq#a&dq#b&dq#d&dq#e&dq#f&dq#g&dq#h&dq#i&dq#k&dq#o&dq#r&dq&^&dq&_&dq&n&dq&v&dqY&dq#p&dqs&dqq&dq|&dq~O|-hO~P##nO!W-lO$O-lO&PSO&R!qO~O!P-oO~O$Z-pO&PSO&R!qO~O!b%vO#p-rOq!`X!P!`X~O!P-tO~P9oO!P-tO~P:|O!P-wO~P9oO|-yO~P#)QO![$aO#p-zO~O!P-|O~O!b-}O~OY.QOZ$lO_VO`VOaVObVOcVOeVOg^Oh^Op!POwkOz!OO%}TO&P(_O&R(^O&XUO~PFdOY.QO!P.RO~O%Q(hO%U(iOZ%Vq_%Vq`%Vqa%Vqb%Vqc%Vqe%Vqg%Vqh%Vqp%Vqv%Vqw%Vqz%Vq}%Vq!P%Vq!S%Vq!T%Vq!U%Vq!V%Vq!W%Vq!X%Vq!Y%Vq!Z%Vq![%Vq!]%Vq!^%Vq!_%Vq!u%Vq!z%Vq#f%Vq#r%Vq#t%Vq#u%Vq#y%Vq#z%Vq$W%Vq$Y%Vq$`%Vq$c%Vq$e%Vq$h%Vq$l%Vq$n%Vq$s%Vq$u%Vq$w%Vq$y%Vq$|%Vq%O%Vq%w%Vq%}%Vq&P%Vq&R%Vq&X%Vq&t%Vq|%Vq$a%Vq$q%Vq~Ou#OO%}TO}&oi!P&oi!m&oi~O&n&bOq!ga&^!ga~O!m%gO}&lq!P&lq~O|.^O~P]Op.`Ow&vOz&tO&PSO&R!qO&_#YO~O!P.aO~Oq,^O}&ra!P&ra~O})]O~P:|Oq.gO|&yX~O|.iO~Oq,cOY&za~Oq.mO|&kX~O|.oO~Ow.pO~Oq!aXu!aX!P!aX!b!aX%}!aX~OZ&QX~P#N{OZUX~P#N{O!P.qO~OZ.rO~OW^yZ#XXu^y!P^y!b^y#]^y#_^y#a^y#b^y#d^y#e^y#f^y#g^y#h^y#i^y#k^y#o^y#r^y&^^y&_^y&n^y&v^yY^y#p^ys^yq^y|^y~OY%`aq%`a!P%`a~P9oO!P#nyY#ny#p#nys#nyq#ny|#ny~P9oO}'^Oq!|a|!|a!P!|a~OZ#xO}'^Oq!|a|!|a!P!|a~O%}TO&P#SO&R#SOq%jX|%jX!P%jX~PFdOq-[O|&sa!P&sa~O|!}X~P$wO|/PO~Os/QO~P9oOW%jO!P/RO~OW%jO$Q/WO&PSO&R!qO!P&|P~OW%jO$U/XO~O!P/YO~O!b%vO#p/[Oq!`X!P!`X~OY/^O~O!P/_O~P9oO#p/`O~P9oO!b/bO~OY/cOZ$lO_VO`VOaVObVOcVOeVOg^Oh^Op!POwkOz!OO%}TO&P(_O&R(^O&XUO~PFdOW#[Ou&[X%}&[X&P&[X&R&[X'O&[X~O&_#YO~P$)QOu#OO%}TO'O/eO&P%SX&R%SX~O&n&bOq!gi&^!gi~Op/iO&PSO&R!qO~OW*iOZ#xO~O!P/kO~OY&SXq&SX~P9oO})]Oq%nX|%nX~P:|Oq.gO|&ya~O!b/nO~O})fOq%cX|%cX~P:|Oq.mO|&ka~OY/qO~O!P/rO~OZ/sO~O}'^Oq!|i|!|i!P!|i~O|!}a~P$wOW%jO!P/wO~OW%jOq/xO!P&|X~OY/|O~P9oOY0OO~OY%Xq!P%Xq~P9oO'O/eO&P%Sa&R%Sa~OY0TO~O!P0WO~Ou#OO!P0YO!Z0ZO%}TO~OY0[O~Oq/xO!P&|a~O!P0_O~OW%jOq/xO!P&}X~OY0aO~P9oOY0bO~OY%Xy!P%Xy~P9oOu#OO%}TO&P%ua&R%ua'O%ua~OY0cO~O!P0dO~Ou#OO!P0eO!Z0fO%}TO~OW%jOq%ra!P%ra~Oq/xO!P&}a~O!P0jO~Ou#OO!P0jO!Z0kO%}TO~O!P0lO~O!P0nO~O#p&QXY&QXs&QXq&QX|&QX~P&bO#pUXYUXsUXqUX|UX~P(iO`Q_P#g%y&P&Xc&X~",goto:"#+S'OPPPP'P'd*x.OP'dPP.d.h0PPPPPP1nP3ZPP4v7l:[<z=d?[PPP?bPA{PPPBu3ZPDqPPElPFcFkPPPPPPPPPPPPGvH_PKjKrLOLjLpLvNiNmNmNuP! U!!^!#R!#]P!#r!!^P!#x!$S!!y!$cP!%S!%^!%d!!^!%g!%mFcFc!%q!%{!&O3Z!'m3Z3Z!)iP.hP!)mPP!*_PPPPPP.hP.h!+O.hPP.hP.hPP.h!,g!,qPP!,w!-QPPPPPPPP'PP'PPP!-U!-U!-i!-UPP!-UP!-UP!.S!.VP!-U!.m!-UP!-UP!.p!.sP!-UP!-UP!-UP!-UP!-U!-UP!-UP!.wP!.}!/Q!/WP!-U!/d!/gP!/o!0R!4T!4Z!4a!5g!5m!5{!7R!7X!7_!7i!7o!7u!7{!8R!8X!8_!8e!8k!8q!8w!8}!9T!9_!9e!9o!9uPPP!9{!-U!:pP!>WP!?[P!Ap!BW!E]3ZPPP!F|!Jm!MaPP#!P#!SP#$`#$f#&V#&f#&n#'p#(Y#)T#)^#)a#)oP#)r#*OP#*V#*^P#*aP#*lP#*o#*r#*u#*y#+PstOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,Y'urOPXY`acopx!Y![!_!a!e!f!h!i!o!x#P#T#Y#[#_#`#e#i#l#n#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$]$_$e$l$m$n$o$p$q%O%S%V%Z%^%_%b%d%g%k%u%v%{%|&R&S&[&]&`&b&d&i'X'^'_'`'e'h'i'm'n'p'{'|(O(T(U(`(l(t(v({(})O)Q)R)])f)o)p*P*T*W*l*o*p*q*z*{+O+T+d+f+h+i+l+o+r+s+x+},W,Y,^,`,u-[-^-a-r-t-}.R.V.g.m/O/[/_/b/d/n/q0R0X0Z0[0f0h0k0r#xhO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%d%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0kt!sT!Q!S!T!{!}$k%p+]+^+_+`-k-m/W/X/x0oQ#mdS&Y#`(}Q&l#oU&q#t$g,ZQ&x#vW(b%O+s.R/dU)Y%j'v+bQ)Z%kS)u&S,WU*f&s-R._Q*k&yQ,t*TQ-P*iQ.j,cR.t,uu!sT!Q!S!T!{!}$k%p+]+^+_+`-k-m/W/X/x0oT%l!r)l#{qO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0k#zlO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0kX(c%O+s.R/d$TVO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%O%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o+s,Y,`-r-t-}.R.g.m/[/_/b/d/n0Z0f0k$TkO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%O%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o+s,Y,`-r-t-}.R.g.m/[/_/b/d/n0Z0f0k&O[OPX`ceopx!O!Y![!_!a!g!i!o#Y#_#b#e#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$_$f$l$m$n$o$p$q%O%_%b%d%g%k%v%{&]&b&d&i&t'^'_'`'h'i'm'{'}(O(T(U(d(t)O)Q)R)])f)o)p*P*U*W*l*o*q*{*|+O+T+d+h+i+l+o+s,Y,^,`-^-r-t-}.R.g.m/O/[/_/b/d/n0Z0f0k0rQ&Q#[Q)s&RV.T+x.X/e&O[OPX`ceopx!O!Y![!_!a!g!i!o#Y#_#b#e#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$_$f$l$m$n$o$p$q%O%_%b%d%g%k%v%{&]&b&d&i&t'^'_'`'h'i'm'{'}(O(T(U(d(t)O)Q)R)])f)o)p*P*U*W*l*o*q*{*|+O+T+d+h+i+l+o+s,Y,^,`-^-r-t-}.R.g.m/O/[/_/b/d/n0Z0f0k0rV.T+x.X/e&O]OPX`ceopx!O!Y![!_!a!g!i!o#Y#_#b#e#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$_$f$l$m$n$o$p$q%O%_%b%d%g%k%v%{&]&b&d&i&t'^'_'`'h'i'm'{'}(O(T(U(d(t)O)Q)R)])f)o)p*P*U*W*l*o*q*{*|+O+T+d+h+i+l+o+s,Y,^,`-^-r-t-}.R.g.m/O/[/_/b/d/n0Z0f0k0rV.U+x.X/eS#Z[.TS$f!O&tS&s#t$gQ&y#vQ)V%dQ-R*iR._,Z$kZO`copx!Y![!_!a#Y#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$_$l$m$n$o$p$q%O%d%g%k%v&b&d'_'`'i'm(O(T(U(t)Q)R)])f)o)p*P*l*o+T+d+h+i+l+o+s,Y,^,`-r-t-}.R.g.m/[/_/b/d/n0Z0f0kQ&O#YR,k)p&P_OPX`ceopx!Y![!_!a!g!i!o#Y#_#b#e#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$_$l$m$n$o$p$q%O%_%b%d%g%k%v%{&]&b&d&i'^'_'`'h'i'm'{'}(O(T(U(d(t)O)Q)R)])f)o)p*P*U*W*l*o*q*{*|+O+T+d+h+i+l+o+s+x,Y,^,`-^-r-t-}.R.X.g.m/O/[/_/b/d/e/n0Z0f0k0r!o#QY!e!x#R#T#`#n$]%R%S%V%^%u%|&S&[&`'X'|(`(l({(}*T*p*z+f+r+},W,u-a.V/q0R0X0[0h$SkO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%O%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o+s,Y,`-r-t-}.R.g.m/[/_/b/d/n0Z0f0kQ$m!UQ$n!VQ$s!ZQ$|!`R+p(WQ#yiS'q$e*hQ*e&rQ+X'rS,[)T)UQ-O*gQ-Y*vQ.b,]Q.x-QQ.{-ZQ/j.`Q/u.yR0V/iQ'a$bW*[&m'b'c'dQ+W'qU,x*]*^*_Q-X*vQ-f+XS.u,y,zS.z-Y-ZQ/t.vR/v.{]!mP!o'^*q-^/OreOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,Y[!gP!o'^*q-^/OW#b`#e%b&]Q'}$oW(d%O+s.R/dS*U&i*WS*w'e-[S*|'h+OR.X+xh#VY!W!e#n#s%V'|*T*z+f,u-aQ)j%wQ)v&WR,o)y#xnOcopx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0k^!kP!g!o'^*q-^/Ov#TY!W#`#n#s%w&W&[&`'|(`(})y*T+f+r,u.W/hQ#g`Q$b{Q$c|Q$d}W%S!e%V*z-aS%Y!h(vQ%`!iQ&m#pQ&n#qQ&o#rQ(u%ZS(y%^({Q*R&eS*v'e-[R-Z*wU)h%v)f.mR+V'p[!mP!o'^*q-^/OT*}'h+O^!iP!g!o'^*q-^/OQ'd$bQ'l$dQ*_&mQ*d&oV*{'h*|+OQ%[!hR,S(vQ(s%YR,R(u#znO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0kQ%c!kS(l%S(yR(|%`T#e`%bU#c`#e%bR)z&]Q%f!lQ(n%UQ(r%XQ,U(zR.],VrvOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,Y[!mP!o'^*q-^/OQ%P!bQ%a!jQ%i!pQ'[$ZQ([$|Q(k%QQ(p%WQ+z(iR.Y+yrtOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,Y[!mP!o'^*q-^/OS*V&i*WT*}'h+OQ'c$bS*^&m'dR,z*_Q'b$bQ'g$cU*]&m'c'dQ*a&nS,y*^*_R.v,zQ*u'`R+Q'iQ'k$dS*c&o'lR,}*dQ'j$dU*b&o'k'lS,|*c*dR.w,}rtOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,Y[!mP!o'^*q-^/OT*}'h+OQ'f$cS*`&n'gR,{*aQ*x'eR.|-[R-`*yQ&j#mR*Z&lT*V&i*WQ%e!lS(q%X%fR,P(rR)R%dWk%O+s.R/d#{lO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0k$SiO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%O%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o+s,Y,`-r-t-}.R.g.m/[/_/b/d/n0Z0f0kU&r#t$g,ZS*g&s._Q-Q*iR.y-RT'o$e'p!_#|m#a$r$z$}&w&z&{'O'P'Q'R'S'W'Z)[)g+S+g+j-T-V-e-v-{.e/Z/a/}0Q!]$Pm#a$r$z$}&w&z&{'O'P'R'S'W'Z)[)g+S+g+j-T-V-e-v-{.e/Z/a/}0Q#{nO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0ka)^%k)],`.g/n0Z0f0kQ)`%kR.k,cQ't$hQ)b%oR,f)cT+Y's+ZsvOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,YruOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,YQ$w!]R$y!^R$p!XrvOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,YR(O$oR$q!XR(V$sT+k(U+lX(f%P(g(k+{R+y(hQ.W+xR/h.XQ(j%PQ+w(gQ+|(kR.Z+{R%Q!bQ(e%OV.P+s.R/dQxOQ#lcW$`x#l)Q,YQ)Q%dR,Y)RrXOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,Yn!fP!o#e&]&i'^'e'h*W*q+O+x-[-^/Ol!zX!f#P#_#i$[%Z%_%{&R'n'{)O0r!j#PY!e!x#T#`#n$]%S%V%^%u%|&S&[&`'X'|(`(l({(}*T*p*z+f+r+},W,u-a.V/q0R0X0[0hQ#_`Q#ia#d$[op!Y!_!a#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$l%g%k%v&b&d'_'`'i'm(O(T(t)])f)o*P*l*o+T+h+i+o,^,`-r-t-}.g.m/[/_/b/n0Z0f0kS%Z!h(vS%_!i*{S%{#Y)pQ&R#[S'n$e'pY'{$o%O+s.R/dQ)O%bR0r$YQ!uUR%m!uQ)q&OR,l)q^#RY#`$]'X'|(`*px%R!e!x#n%V%^%|&S&[&`({(}*T*z+f+r,W,u-a.V0R[%t#R%R%u+}0X0hS%u#T%SQ+}(lQ0X/qR0h0[Q*m&{R-U*mQ!oPU%h!o*q/OQ*q'^R/O-^!pbOP`cx![!o#e#l$_$m$n$o$p$q%O%b%d&]&i'^'e'h(U)Q)R*W*q+O+d+l+s+x,Y-[-^.R/O/dY!yX!f#_'{)OT#jb!yQ.n,gR/p.nQ%x#VR)k%xQ&c#fS*O&c.[R.[,QQ(w%[R,T(wQ&^#cR){&^Q,_)WR.d,_Q+O'hR-b+OQ-]*xR.}-]Q*W&iR,v*WQ'p$eR+U'pQ&f#gR*S&fQ.h,aR/m.hQ,d)`R.l,dQ+Z'sR-g+ZQ-k+]R/T-kQ/y/US0^/y0`R0`/{Q+l(UR-x+lQ(g%PS+v(g+{R+{(kQ/f.VR0S/fQ+t(eR.S+t`wOcx#l%d)Q)R,YQ$t![Q']$_Q'y$mQ'z$nQ(Q$pQ(R$qS+k(U+lR-q+d'dsOPXY`acopx!Y![!_!a!e!f!h!i!o!x#P#T#Y#[#_#`#e#i#l#n#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$]$_$e$l$m$n$o$p$q%O%S%V%Z%^%_%b%d%g%u%v%{%|&R&S&[&]&`&b&d&i'X'^'_'`'e'h'i'm'n'p'{'|(O(T(U(`(l(t(v({(})O)Q)R)f)o)p*P*T*W*l*o*p*q*z*{+O+T+d+f+h+i+l+o+r+s+x+},W,Y,^,u-[-^-a-r-t-}.R.V.m/O/[/_/b/d/q0R0X0[0h0ra)_%k)],`.g/n0Z0f0kQ!rTQ$h!QQ$i!SQ$j!TQ%o!{Q%q!}Q'x$kQ)c%pQ)l0oS-i+]+_Q-m+^Q-n+`Q/S-kS/U-m/WQ/{/XR0]/x%uSOT`cdopx!Q!S!T!Y![!_!a!{!}#`#l#o#t#u#v#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$g$k$l$m$n$o$p$q%O%d%j%k%p%v&S&d&s&y'm'v(O(T(U(})Q)R)])f*P*T*i*l*o+T+]+^+_+`+b+d+h+i+l+o+s,W,Y,Z,`,c,u-R-k-m-r-t-}.R._.g.m/W/X/[/_/b/d/n/x0Z0f0k0oQ)a%kQ,a)]S.f,`/nQ/l.gQ0g0ZQ0i0fR0m0krmOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,YS#a`$lQ$WoQ$^pQ$r!YQ$z!_Q$}!aQ&w#uQ&z#wY&{#x$o+h-t/_Q&}#|Q'O#}Q'P$OQ'Q$PQ'R$QQ'S$RQ'T$SQ'U$TQ'V$UQ'W$VQ'Z$Z^)[%k)].g/n0Z0f0kU)g%v)f.mQ*Q&dQ+S'mQ+g(OQ+j(TQ,p*PQ-T*lQ-V*oQ-e+TQ-v+iQ-{+oQ.e,`Q/Z-rQ/a-}Q/}/[R0Q/b#xgO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o,Y,`-r-t-}.g.m/[/_/b/n0Z0f0kW(a%O+s.R/dR)S%drYOcx![#l$_$m$n$p$q%d(U)Q)R+d+l,Y[!eP!o'^*q-^/OW!xX$[%{'{Q#``Q#ne#S$]op!Y!_!a#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$l%k%v&d'm(O(T)])f*P*l*o+T+h+i+o,`-r-t-}.g.m/[/_/b/n0Z0f0kQ%V!gS%^!i*{d%|#Y%g&b'_'`'i(t)o)p,^Q&S#_Q&[#bS&`#e&]Q'X$YQ'|$oW(`%O+s.R/dQ({%_Q(}%bS*T&i*WQ*p0rS*z'h+OQ+f'}Q+r(dQ,W)OQ,u*UQ-a*|S.V+x.XR0R/e&O_OPX`ceopx!Y![!_!a!g!i!o#Y#_#b#e#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$_$l$m$n$o$p$q%O%_%b%d%g%k%v%{&]&b&d&i'^'_'`'h'i'm'{'}(O(T(U(d(t)O)Q)R)])f)o)p*P*U*W*l*o*q*{*|+O+T+d+h+i+l+o+s+x,Y,^,`-^-r-t-}.R.X.g.m/O/[/_/b/d/e/n0Z0f0k0rQ$e!OQ'r$fR*h&t&ZWOPX`ceopx!O!Y![!_!a!g!i!o#Y#[#_#b#e#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Y$Z$[$_$f$l$m$n$o$p$q%O%_%b%d%g%k%v%{&R&]&b&d&i&t'^'_'`'h'i'm'{'}(O(T(U(d(t)O)Q)R)])f)o)p*P*U*W*l*o*q*{*|+O+T+d+h+i+l+o+s+x,Y,^,`-^-r-t-}.R.X.g.m/O/[/_/b/d/e/n0Z0f0k0rR&P#Y$QjOcopx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%O%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o+s,Y,`-r-t-}.R.g.m/[/_/b/d/n0Z0f0kQ#f`Q&O#YQ'Y$YU)W%g'`'iQ)}&bQ*s'_Q,Q(tQ,j)oQ,k)pR.c,^Q)n%}R,i)m$SfO`copx!Y![!_!a#l#u#w#x#|#}$O$P$Q$R$S$T$U$V$Z$_$l$m$n$o$p$q%O%d%k%v&d'm(O(T(U)Q)R)])f*P*l*o+T+d+h+i+l+o+s,Y,`-r-t-}.R.g.m/[/_/b/d/n0Z0f0kT&p#t,ZQ&|#xQ(P$oQ-u+hQ/]-tR0P/_]!nP!o'^*q-^/O#PaOPX`bcx![!f!o!y#_#e#l$_$m$n$o$p$q%O%b%d&]&i'^'e'h'{(U)O)Q)R*W*q+O+d+l+s+x,Y-[-^.R/O/dU#WY!W'|Q%T!eU&k#n#s+fQ(o%VS,s*T*zT.s,u-aj#UY!W!e#n#s%V%w&W)y*T*z,u-aU&V#`&`(}Q)x&[Q+e'|Q+q(`Q-s+fQ.O+rQ/g.WR0U/hQ)i%vQ,g)fR/o.mR,h)f`!jP!o'^'h*q+O-^/OT%W!g*|R%]!hW%U!e%V*z-aQ(z%^R,V({S#d`%bR&a#eQ)X%gT*t'`'iR*y'e[!lP!o'^*q-^/OR%X!gR#h`R,b)]R)a%kT-j+]-kQ/V-mR/z/WR/z/X",nodeNames:"⚠ LineComment BlockComment Program ModuleDeclaration MarkerAnnotation Identifier ScopedIdentifier . Annotation ) ( AnnotationArgumentList AssignmentExpression FieldAccess IntegerLiteral FloatingPointLiteral BooleanLiteral CharacterLiteral StringLiteral TextBlock 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 LogicOp BitOp BitOp BitOp 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 ClassContent",maxTerm:276,nodeProps:[["isolate",-4,1,2,18,19,""],["group",-26,4,47,76,77,82,87,92,145,147,150,151,153,156,158,161,163,165,167,172,174,176,178,180,181,183,191,"Statement",-25,6,13,14,15,16,17,18,19,20,21,22,39,40,41,99,100,102,103,106,118,120,122,125,127,130,"Expression",-7,23,24,25,26,27,29,34,"Type"],["openedBy",10,"(",44,"{"],["closedBy",11,")",45,"}"]],propSources:[javaHighlighting],skippedNodes:[0,1,2],repeatNodeCount:28,tokenData:"#'f_R!_OX%QXY'fYZ)bZ^'f^p%Qpq'fqr*|rs,^st%Qtu4euv5zvw7[wx8rxyAZyzAwz{Be{|CZ|}Dq}!OE_!O!PFx!P!Q! r!Q!R!,h!R![!0`![!]!>p!]!^!@Q!^!_!@n!_!`!BX!`!a!B{!a!b!Di!b!c!EX!c!}!LT!}#O!Mj#O#P%Q#P#Q!NW#Q#R!Nt#R#S4e#S#T%Q#T#o4e#o#p# h#p#q#!U#q#r##n#r#s#$[#s#y%Q#y#z'f#z$f%Q$f$g'f$g#BY4e#BY#BZ#$x#BZ$IS4e$IS$I_#$x$I_$I|4e$I|$JO#$x$JO$JT4e$JT$JU#$x$JU$KV4e$KV$KW#$x$KW&FU4e&FU&FV#$x&FV;'S4e;'S;=`5t<%lO4eS%VV&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QS%qO&YSS%tVOY&ZYZ%lZr&Zrs&ys;'S&Z;'S;=`'`<%lO&ZS&^VOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QS&vP;=`<%l%QS&|UOY&ZYZ%lZr&Zs;'S&Z;'S;=`'`<%lO&ZS'cP;=`<%l&Z_'mk&YS%yZOX%QXY'fYZ)bZ^'f^p%Qpq'fqr%Qrs%qs#y%Q#y#z'f#z$f%Q$f$g'f$g#BY%Q#BY#BZ'f#BZ$IS%Q$IS$I_'f$I_$I|%Q$I|$JO'f$JO$JT%Q$JT$JU'f$JU$KV%Q$KV$KW'f$KW&FU%Q&FU&FV'f&FV;'S%Q;'S;=`&s<%lO%Q_)iY&YS%yZX^*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*XZ*^Y%yZX^*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*XV+TX#tP&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`+p!`;'S%Q;'S;=`&s<%lO%QU+wV#_Q&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QT,aXOY,|YZ%lZr,|rs3Ys#O,|#O#P2d#P;'S,|;'S;=`3S<%lO,|T-PXOY-lYZ%lZr-lrs.^s#O-l#O#P.x#P;'S-l;'S;=`2|<%lO-lT-qX&YSOY-lYZ%lZr-lrs.^s#O-l#O#P.x#P;'S-l;'S;=`2|<%lO-lT.cVcPOY&ZYZ%lZr&Zrs&ys;'S&Z;'S;=`'`<%lO&ZT.}V&YSOY-lYZ/dZr-lrs1]s;'S-l;'S;=`2|<%lO-lT/iW&YSOY0RZr0Rrs0ns#O0R#O#P0s#P;'S0R;'S;=`1V<%lO0RP0UWOY0RZr0Rrs0ns#O0R#O#P0s#P;'S0R;'S;=`1V<%lO0RP0sOcPP0vTOY0RYZ0RZ;'S0R;'S;=`1V<%lO0RP1YP;=`<%l0RT1`XOY,|YZ%lZr,|rs1{s#O,|#O#P2d#P;'S,|;'S;=`3S<%lO,|T2QUcPOY&ZYZ%lZr&Zs;'S&Z;'S;=`'`<%lO&ZT2gVOY-lYZ/dZr-lrs1]s;'S-l;'S;=`2|<%lO-lT3PP;=`<%l-lT3VP;=`<%l,|T3_VcPOY&ZYZ%lZr&Zrs3ts;'S&Z;'S;=`'`<%lO&ZT3yR&WSXY4SYZ4`pq4SP4VRXY4SYZ4`pq4SP4eO&XP_4lb&YS&PZOY%QYZ%lZr%Qrs%qst%Qtu4eu!Q%Q!Q![4e![!c%Q!c!}4e!}#R%Q#R#S4e#S#T%Q#T#o4e#o$g%Q$g;'S4e;'S;=`5t<%lO4e_5wP;=`<%l4eU6RX#hQ&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`6n!`;'S%Q;'S;=`&s<%lO%QU6uV#]Q&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QV7cZ&nR&YSOY%QYZ%lZr%Qrs%qsv%Qvw8Uw!_%Q!_!`6n!`;'S%Q;'S;=`&s<%lO%QU8]V#aQ&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QT8wZ&YSOY9jYZ%lZr9jrs:xsw9jwx%Qx#O9j#O#P<S#P;'S9j;'S;=`AT<%lO9jT9oX&YSOY%QYZ%lZr%Qrs%qsw%Qwx:[x;'S%Q;'S;=`&s<%lO%QT:cVbP&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QT:{XOY&ZYZ%lZr&Zrs&ysw&Zwx;hx;'S&Z;'S;=`'`<%lO&ZT;mVbPOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QT<XZ&YSOY<zYZ%lZr<zrs=rsw<zwx9jx#O<z#O#P9j#P;'S<z;'S;=`?^<%lO<zT=PZ&YSOY<zYZ%lZr<zrs=rsw<zwx:[x#O<z#O#P%Q#P;'S<z;'S;=`?^<%lO<zT=uZOY>hYZ%lZr>hrs?dsw>hwx;hx#O>h#O#P&Z#P;'S>h;'S;=`@}<%lO>hT>kZOY<zYZ%lZr<zrs=rsw<zwx:[x#O<z#O#P%Q#P;'S<z;'S;=`?^<%lO<zT?aP;=`<%l<zT?gZOY>hYZ%lZr>hrs@Ysw>hwx;hx#O>h#O#P&Z#P;'S>h;'S;=`@}<%lO>hP@]VOY@YZw@Ywx@rx#O@Y#P;'S@Y;'S;=`@w<%lO@YP@wObPP@zP;=`<%l@YTAQP;=`<%l>hTAWP;=`<%l9j_AbVZZ&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QVBOVYR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QVBnX$ZP&YS#gQOY%QYZ%lZr%Qrs%qs!_%Q!_!`6n!`;'S%Q;'S;=`&s<%lO%QVCbZ#fR&YSOY%QYZ%lZr%Qrs%qs{%Q{|DT|!_%Q!_!`6n!`;'S%Q;'S;=`&s<%lO%QVD[V#rR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QVDxVqR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QVEf[#fR&YSOY%QYZ%lZr%Qrs%qs}%Q}!ODT!O!_%Q!_!`6n!`!aF[!a;'S%Q;'S;=`&s<%lO%QVFcV&xR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%Q_GPZWY&YSOY%QYZ%lZr%Qrs%qs!O%Q!O!PGr!P!Q%Q!Q![IQ![;'S%Q;'S;=`&s<%lO%QVGwX&YSOY%QYZ%lZr%Qrs%qs!O%Q!O!PHd!P;'S%Q;'S;=`&s<%lO%QVHkV&qR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QTIXc&YS`POY%QYZ%lZr%Qrs%qs!Q%Q!Q![IQ![!f%Q!f!gJd!g!hKQ!h!iJd!i#R%Q#R#SNz#S#W%Q#W#XJd#X#YKQ#Y#ZJd#Z;'S%Q;'S;=`&s<%lO%QTJkV&YS`POY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QTKV]&YSOY%QYZ%lZr%Qrs%qs{%Q{|LO|}%Q}!OLO!O!Q%Q!Q![Lp![;'S%Q;'S;=`&s<%lO%QTLTX&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![Lp![;'S%Q;'S;=`&s<%lO%QTLwc&YS`POY%QYZ%lZr%Qrs%qs!Q%Q!Q![Lp![!f%Q!f!gJd!g!h%Q!h!iJd!i#R%Q#R#SNS#S#W%Q#W#XJd#X#Y%Q#Y#ZJd#Z;'S%Q;'S;=`&s<%lO%QTNXZ&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![Lp![#R%Q#R#SNS#S;'S%Q;'S;=`&s<%lO%QT! PZ&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![IQ![#R%Q#R#SNz#S;'S%Q;'S;=`&s<%lO%Q_! y]&YS#gQOY%QYZ%lZr%Qrs%qsz%Qz{!!r{!P%Q!P!Q!)e!Q!_%Q!_!`6n!`;'S%Q;'S;=`&s<%lO%Q_!!wX&YSOY!!rYZ!#dZr!!rrs!%Psz!!rz{!&_{;'S!!r;'S;=`!'s<%lO!!r_!#iT&YSOz!#xz{!$[{;'S!#x;'S;=`!$y<%lO!#xZ!#{TOz!#xz{!$[{;'S!#x;'S;=`!$y<%lO!#xZ!$_VOz!#xz{!$[{!P!#x!P!Q!$t!Q;'S!#x;'S;=`!$y<%lO!#xZ!$yOQZZ!$|P;=`<%l!#x_!%SXOY!%oYZ!#dZr!%ors!'ysz!%oz{!(i{;'S!%o;'S;=`!)_<%lO!%o_!%rXOY!!rYZ!#dZr!!rrs!%Psz!!rz{!&_{;'S!!r;'S;=`!'s<%lO!!r_!&dZ&YSOY!!rYZ!#dZr!!rrs!%Psz!!rz{!&_{!P!!r!P!Q!'V!Q;'S!!r;'S;=`!'s<%lO!!r_!'^V&YSQZOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%Q_!'vP;=`<%l!!r_!'|XOY!%oYZ!#dZr!%ors!#xsz!%oz{!(i{;'S!%o;'S;=`!)_<%lO!%o_!(lZOY!!rYZ!#dZr!!rrs!%Psz!!rz{!&_{!P!!r!P!Q!'V!Q;'S!!r;'S;=`!'s<%lO!!r_!)bP;=`<%l!%o_!)lV&YSPZOY!)eYZ%lZr!)ers!*Rs;'S!)e;'S;=`!+X<%lO!)e_!*WVPZOY!*mYZ%lZr!*mrs!+_s;'S!*m;'S;=`!,b<%lO!*m_!*rVPZOY!)eYZ%lZr!)ers!*Rs;'S!)e;'S;=`!+X<%lO!)e_!+[P;=`<%l!)e_!+dVPZOY!*mYZ%lZr!*mrs!+ys;'S!*m;'S;=`!,b<%lO!*mZ!,OSPZOY!+yZ;'S!+y;'S;=`!,[<%lO!+yZ!,_P;=`<%l!+y_!,eP;=`<%l!*mT!,ou&YS_POY%QYZ%lZr%Qrs%qs!O%Q!O!P!/S!P!Q%Q!Q![!0`![!d%Q!d!e!3j!e!f%Q!f!gJd!g!hKQ!h!iJd!i!n%Q!n!o!2U!o!q%Q!q!r!5h!r!z%Q!z!{!7`!{#R%Q#R#S!2r#S#U%Q#U#V!3j#V#W%Q#W#XJd#X#YKQ#Y#ZJd#Z#`%Q#`#a!2U#a#c%Q#c#d!5h#d#l%Q#l#m!7`#m;'S%Q;'S;=`&s<%lO%QT!/Za&YS`POY%QYZ%lZr%Qrs%qs!Q%Q!Q![IQ![!f%Q!f!gJd!g!hKQ!h!iJd!i#W%Q#W#XJd#X#YKQ#Y#ZJd#Z;'S%Q;'S;=`&s<%lO%QT!0gi&YS_POY%QYZ%lZr%Qrs%qs!O%Q!O!P!/S!P!Q%Q!Q![!0`![!f%Q!f!gJd!g!hKQ!h!iJd!i!n%Q!n!o!2U!o#R%Q#R#S!2r#S#W%Q#W#XJd#X#YKQ#Y#ZJd#Z#`%Q#`#a!2U#a;'S%Q;'S;=`&s<%lO%QT!2]V&YS_POY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QT!2wZ&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![!0`![#R%Q#R#S!2r#S;'S%Q;'S;=`&s<%lO%QT!3oY&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q!R!4_!R!S!4_!S;'S%Q;'S;=`&s<%lO%QT!4f`&YS_POY%QYZ%lZr%Qrs%qs!Q%Q!Q!R!4_!R!S!4_!S!n%Q!n!o!2U!o#R%Q#R#S!3j#S#`%Q#`#a!2U#a;'S%Q;'S;=`&s<%lO%QT!5mX&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q!Y!6Y!Y;'S%Q;'S;=`&s<%lO%QT!6a_&YS_POY%QYZ%lZr%Qrs%qs!Q%Q!Q!Y!6Y!Y!n%Q!n!o!2U!o#R%Q#R#S!5h#S#`%Q#`#a!2U#a;'S%Q;'S;=`&s<%lO%QT!7e_&YSOY%QYZ%lZr%Qrs%qs!O%Q!O!P!8d!P!Q%Q!Q![!:r![!c%Q!c!i!:r!i#T%Q#T#Z!:r#Z;'S%Q;'S;=`&s<%lO%QT!8i]&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![!9b![!c%Q!c!i!9b!i#T%Q#T#Z!9b#Z;'S%Q;'S;=`&s<%lO%QT!9gc&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![!9b![!c%Q!c!i!9b!i!r%Q!r!sKQ!s#R%Q#R#S!8d#S#T%Q#T#Z!9b#Z#d%Q#d#eKQ#e;'S%Q;'S;=`&s<%lO%QT!:yi&YS_POY%QYZ%lZr%Qrs%qs!O%Q!O!P!<h!P!Q%Q!Q![!:r![!c%Q!c!i!:r!i!n%Q!n!o!2U!o!r%Q!r!sKQ!s#R%Q#R#S!=r#S#T%Q#T#Z!:r#Z#`%Q#`#a!2U#a#d%Q#d#eKQ#e;'S%Q;'S;=`&s<%lO%QT!<ma&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![!9b![!c%Q!c!i!9b!i!r%Q!r!sKQ!s#T%Q#T#Z!9b#Z#d%Q#d#eKQ#e;'S%Q;'S;=`&s<%lO%QT!=w]&YSOY%QYZ%lZr%Qrs%qs!Q%Q!Q![!:r![!c%Q!c!i!:r!i#T%Q#T#Z!:r#Z;'S%Q;'S;=`&s<%lO%QV!>wX#pR&YSOY%QYZ%lZr%Qrs%qs![%Q![!]!?d!];'S%Q;'S;=`&s<%lO%QV!?kV&vR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QV!@XV!PR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%Q_!@uY&_Z&YSOY%QYZ%lZr%Qrs%qs!^%Q!^!_!Ae!_!`+p!`;'S%Q;'S;=`&s<%lO%QU!AlX#iQ&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`6n!`;'S%Q;'S;=`&s<%lO%QV!B`X!bR&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`+p!`;'S%Q;'S;=`&s<%lO%QV!CSY&^R&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`+p!`!a!Cr!a;'S%Q;'S;=`&s<%lO%QU!CyY#iQ&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`6n!`!a!Ae!a;'S%Q;'S;=`&s<%lO%Q_!DrV&bX#oQ&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%Q_!E`X%}Z&YSOY%QYZ%lZr%Qrs%qs#]%Q#]#^!E{#^;'S%Q;'S;=`&s<%lO%QV!FQX&YSOY%QYZ%lZr%Qrs%qs#b%Q#b#c!Fm#c;'S%Q;'S;=`&s<%lO%QV!FrX&YSOY%QYZ%lZr%Qrs%qs#h%Q#h#i!G_#i;'S%Q;'S;=`&s<%lO%QV!GdX&YSOY%QYZ%lZr%Qrs%qs#X%Q#X#Y!HP#Y;'S%Q;'S;=`&s<%lO%QV!HUX&YSOY%QYZ%lZr%Qrs%qs#f%Q#f#g!Hq#g;'S%Q;'S;=`&s<%lO%QV!HvX&YSOY%QYZ%lZr%Qrs%qs#Y%Q#Y#Z!Ic#Z;'S%Q;'S;=`&s<%lO%QV!IhX&YSOY%QYZ%lZr%Qrs%qs#T%Q#T#U!JT#U;'S%Q;'S;=`&s<%lO%QV!JYX&YSOY%QYZ%lZr%Qrs%qs#V%Q#V#W!Ju#W;'S%Q;'S;=`&s<%lO%QV!JzX&YSOY%QYZ%lZr%Qrs%qs#X%Q#X#Y!Kg#Y;'S%Q;'S;=`&s<%lO%QV!KnV&tR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%Q_!L[b&RZ&YSOY%QYZ%lZr%Qrs%qst%Qtu!LTu!Q%Q!Q![!LT![!c%Q!c!}!LT!}#R%Q#R#S!LT#S#T%Q#T#o!LT#o$g%Q$g;'S!LT;'S;=`!Md<%lO!LT_!MgP;=`<%l!LT_!MqVuZ&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QV!N_VsR&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QU!N{X#eQ&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`6n!`;'S%Q;'S;=`&s<%lO%QV# oV}R&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%Q_#!_Z'OX#dQ&YSOY%QYZ%lZr%Qrs%qs!_%Q!_!`6n!`#p%Q#p#q##Q#q;'S%Q;'S;=`&s<%lO%QU##XV#bQ&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QV##uV|R&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%QT#$cV#uP&YSOY%QYZ%lZr%Qrs%qs;'S%Q;'S;=`&s<%lO%Q_#%Ru&YS%yZ&PZOX%QXY'fYZ)bZ^'f^p%Qpq'fqr%Qrs%qst%Qtu4eu!Q%Q!Q![4e![!c%Q!c!}4e!}#R%Q#R#S4e#S#T%Q#T#o4e#o#y%Q#y#z'f#z$f%Q$f$g'f$g#BY4e#BY#BZ#$x#BZ$IS4e$IS$I_#$x$I_$I|4e$I|$JO#$x$JO$JT4e$JT$JU#$x$JU$KV4e$KV$KW#$x$KW&FU4e&FU&FV#$x&FV;'S4e;'S;=`5t<%lO4e",tokenizers:[0,1,2,3],topRules:{Program:[0,3],ClassContent:[1,194]},dynamicPrecedences:{27:1,232:-1,243:-1},specialized:[{term:231,get:O=>spec_identifier$2[O]||-1}],tokenPrec:7144}),javaLanguage=LRLanguage.define({name:"java",parser:parser$9.configure({props:[indentNodeProp.add({IfStatement:continuedIndent({except:/^\s*({|else\b)/}),TryStatement:continuedIndent({except:/^\s*({|catch|finally)\b/}),LabeledStatement:flatIndent,SwitchBlock:O=>{let e=O.textAfter,t=/^\s*\}/.test(e),i=/^\s*(case|default)\b/.test(e);return O.baseIndent+(t?0:i?1:2)*O.unit},Block:delimitedIndent({closing:"}"}),BlockComment:()=>null,Statement:continuedIndent({except:/^{/})}),foldNodeProp.add({"Block SwitchBlock ClassBody ElementValueArrayInitializer ModuleBody EnumBody ConstructorBody InterfaceBody ArrayInitializer":foldInside,BlockComment:O=>({from:O.from+2,to:O.to-2})})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\})$/}});function java(){return new LanguageSupport(javaLanguage)}const jsonHighlighting=styleTags({String:tags$1.string,Number:tags$1.number,"True False":tags$1.bool,PropertyName:tags$1.propertyName,Null:tags$1.null,", :":tags$1.separator,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),parser$8=LRParser.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[jsonHighlighting],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),jsonLanguage=LRLanguage.define({name:"json",parser:parser$8.configure({props:[indentNodeProp.add({Object:continuedIndent({except:/^\s*\}/}),Array:continuedIndent({except:/^\s*\]/})}),foldNodeProp.add({"Object Array":foldInside})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function json(){return new LanguageSupport(jsonLanguage)}class CompositeBlock{static create(O,e,t,i,n){return new CompositeBlock(O,e,t,i+(i<<8)+O+(e<<4)|0,n,[],[])}constructor(O,e,t,i,n,r,a){this.type=O,this.value=e,this.from=t,this.hash=i,this.end=n,this.children=r,this.positions=a,this.hashProp=[[NodeProp.contextHash,i]]}addChild(O,e){O.prop(NodeProp.contextHash)!=this.hash&&(O=new Tree(O.type,O.children,O.positions,O.length,this.hashProp)),this.children.push(O),this.positions.push(e)}toTree(O,e=this.end){let t=this.children.length-1;return t>=0&&(e=Math.max(e,this.positions[t]+this.children[t].length+this.from)),new Tree(O.types[this.type],this.children,this.positions,e-this.from).balance({makeTree:(O,e,t)=>new Tree(NodeType.none,O,e,t,this.hashProp)})}}var Type$1;!function(O){O[O.Document=1]="Document",O[O.CodeBlock=2]="CodeBlock",O[O.FencedCode=3]="FencedCode",O[O.Blockquote=4]="Blockquote",O[O.HorizontalRule=5]="HorizontalRule",O[O.BulletList=6]="BulletList",O[O.OrderedList=7]="OrderedList",O[O.ListItem=8]="ListItem",O[O.ATXHeading1=9]="ATXHeading1",O[O.ATXHeading2=10]="ATXHeading2",O[O.ATXHeading3=11]="ATXHeading3",O[O.ATXHeading4=12]="ATXHeading4",O[O.ATXHeading5=13]="ATXHeading5",O[O.ATXHeading6=14]="ATXHeading6",O[O.SetextHeading1=15]="SetextHeading1",O[O.SetextHeading2=16]="SetextHeading2",O[O.HTMLBlock=17]="HTMLBlock",O[O.LinkReference=18]="LinkReference",O[O.Paragraph=19]="Paragraph",O[O.CommentBlock=20]="CommentBlock",O[O.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",O[O.Escape=22]="Escape",O[O.Entity=23]="Entity",O[O.HardBreak=24]="HardBreak",O[O.Emphasis=25]="Emphasis",O[O.StrongEmphasis=26]="StrongEmphasis",O[O.Link=27]="Link",O[O.Image=28]="Image",O[O.InlineCode=29]="InlineCode",O[O.HTMLTag=30]="HTMLTag",O[O.Comment=31]="Comment",O[O.ProcessingInstruction=32]="ProcessingInstruction",O[O.Autolink=33]="Autolink",O[O.HeaderMark=34]="HeaderMark",O[O.QuoteMark=35]="QuoteMark",O[O.ListMark=36]="ListMark",O[O.LinkMark=37]="LinkMark",O[O.EmphasisMark=38]="EmphasisMark",O[O.CodeMark=39]="CodeMark",O[O.CodeText=40]="CodeText",O[O.CodeInfo=41]="CodeInfo",O[O.LinkTitle=42]="LinkTitle",O[O.LinkLabel=43]="LinkLabel",O[O.URL=44]="URL"}(Type$1||(Type$1={}));class LeafBlock{constructor(O,e){this.start=O,this.content=e,this.marks=[],this.parsers=[]}}class Line{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 O=this.skipSpace(this.basePos);this.indent=this.countIndent(O,this.pos,this.indent),this.pos=O,this.next=O==this.text.length?-1:this.text.charCodeAt(O)}skipSpace(O){return skipSpace(this.text,O)}reset(O){for(this.text=O,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(O){this.basePos=O,this.baseIndent=this.countIndent(O,this.pos,this.indent)}moveBaseColumn(O){this.baseIndent=O,this.basePos=this.findColumn(O)}addMarker(O){this.markers.push(O)}countIndent(O,e=0,t=0){for(let i=e;i<O;i++)t+=9==this.text.charCodeAt(i)?4-t%4:1;return t}findColumn(O){let e=0;for(let t=0;e<this.text.length&&t<O;e++)t+=9==this.text.charCodeAt(e)?4-t%4:1;return e}scrub(){if(!this.baseIndent)return this.text;let O="";for(let e=0;e<this.basePos;e++)O+=" ";return O+this.text.slice(this.basePos)}}function skipForList(O,e,t){if(t.pos==t.text.length||O!=e.block&&t.indent>=e.stack[t.depth+1].value+t.baseIndent)return!0;if(t.indent>=t.baseIndent+4)return!1;let i=(O.type==Type$1.OrderedList?isOrderedList:isBulletList)(t,e,!1);return i>0&&(O.type!=Type$1.BulletList||isHorizontalRule(t,e,!1)<0)&&t.text.charCodeAt(t.pos+i-1)==O.value}const DefaultSkipMarkup={[Type$1.Blockquote]:(O,e,t)=>62==t.next&&(t.markers.push(elt(Type$1.QuoteMark,e.lineStart+t.pos,e.lineStart+t.pos+1)),t.moveBase(t.pos+(space$1(t.text.charCodeAt(t.pos+1))?2:1)),O.end=e.lineStart+t.text.length,!0),[Type$1.ListItem]:(O,e,t)=>!(t.indent<t.baseIndent+O.value&&t.next>-1)&&(t.moveBaseColumn(t.baseIndent+O.value),!0),[Type$1.OrderedList]:skipForList,[Type$1.BulletList]:skipForList,[Type$1.Document]:()=>!0};function space$1(O){return 32==O||9==O||10==O||13==O}function skipSpace(O,e=0){for(;e<O.length&&space$1(O.charCodeAt(e));)e++;return e}function skipSpaceBack(O,e,t){for(;e>t&&space$1(O.charCodeAt(e-1));)e--;return e}function isFencedCode(O){if(96!=O.next&&126!=O.next)return-1;let e=O.pos+1;for(;e<O.text.length&&O.text.charCodeAt(e)==O.next;)e++;if(e<O.pos+3)return-1;if(96==O.next)for(let t=e;t<O.text.length;t++)if(96==O.text.charCodeAt(t))return-1;return e}function isBlockquote(O){return 62!=O.next?-1:32==O.text.charCodeAt(O.pos+1)?2:1}function isHorizontalRule(O,e,t){if(42!=O.next&&45!=O.next&&95!=O.next)return-1;let i=1;for(let e=O.pos+1;e<O.text.length;e++){let t=O.text.charCodeAt(e);if(t==O.next)i++;else if(!space$1(t))return-1}return t&&45==O.next&&isSetextUnderline(O)>-1&&O.depth==e.stack.length&&e.parser.leafBlockParsers.indexOf(DefaultLeafBlocks.SetextHeading)>-1||i<3?-1:1}function inList(O,e){for(let t=O.stack.length-1;t>=0;t--)if(O.stack[t].type==e)return!0;return!1}function isBulletList(O,e,t){return 45!=O.next&&43!=O.next&&42!=O.next||O.pos!=O.text.length-1&&!space$1(O.text.charCodeAt(O.pos+1))||!(!t||inList(e,Type$1.BulletList)||O.skipSpace(O.pos+2)<O.text.length)?-1:1}function isOrderedList(O,e,t){let i=O.pos,n=O.next;for(;n>=48&&n<=57;){if(i++,i==O.text.length)return-1;n=O.text.charCodeAt(i)}return i==O.pos||i>O.pos+9||46!=n&&41!=n||i<O.text.length-1&&!space$1(O.text.charCodeAt(i+1))||t&&!inList(e,Type$1.OrderedList)&&(O.skipSpace(i+1)==O.text.length||i>O.pos+1||49!=O.next)?-1:i+1-O.pos}function isAtxHeading(O){if(35!=O.next)return-1;let e=O.pos+1;for(;e<O.text.length&&35==O.text.charCodeAt(e);)e++;if(e<O.text.length&&32!=O.text.charCodeAt(e))return-1;let t=e-O.pos;return t>6?-1:t}function isSetextUnderline(O){if(45!=O.next&&61!=O.next||O.indent>=O.baseIndent+4)return-1;let e=O.pos+1;for(;e<O.text.length&&O.text.charCodeAt(e)==O.next;)e++;let t=e;for(;e<O.text.length&&space$1(O.text.charCodeAt(e));)e++;return e==O.text.length?t:-1}const EmptyLine=/^[ \t]*$/,CommentEnd=/-->/,ProcessingEnd=/\?>/,HTMLBlockStyle=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*<!--/,CommentEnd],[/^\s*<\?/,ProcessingEnd],[/^\s*<![A-Z]/,/>/],[/^\s*<!\[CDATA\[/,/\]\]>/],[/^\s*<\/?(?:address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul)(?:\s|\/?>|$)/i,EmptyLine],[/^\s*(?:<\/[a-z][\w-]*\s*>|<[a-z][\w-]*(\s+[a-z:_][\w-.]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*>)\s*$/i,EmptyLine]];function isHTMLBlock(O,e,t){if(60!=O.next)return-1;let i=O.text.slice(O.pos);for(let O=0,e=HTMLBlockStyle.length-(t?1:0);O<e;O++)if(HTMLBlockStyle[O][0].test(i))return O;return-1}function getListIndent(O,e){let t=O.countIndent(e,O.pos,O.indent),i=O.countIndent(O.skipSpace(e),e,t);return i>=t+5?t+1:i}function addCodeText(O,e,t){let i=O.length-1;i>=0&&O[i].to==e&&O[i].type==Type$1.CodeText?O[i].to=t:O.push(elt(Type$1.CodeText,e,t))}const DefaultBlockParsers={LinkReference:void 0,IndentedCode(O,e){let t=e.baseIndent+4;if(e.indent<t)return!1;let i=e.findColumn(t),n=O.lineStart+i,r=O.lineStart+e.text.length,a=[],s=[];for(addCodeText(a,n,r);O.nextLine()&&e.depth>=O.stack.length;)if(e.pos==e.text.length){addCodeText(s,O.lineStart-1,O.lineStart);for(let O of e.markers)s.push(O)}else{if(e.indent<t)break;{if(s.length){for(let O of s)O.type==Type$1.CodeText?addCodeText(a,O.from,O.to):a.push(O);s=[]}addCodeText(a,O.lineStart-1,O.lineStart);for(let O of e.markers)a.push(O);r=O.lineStart+e.text.length;let t=O.lineStart+e.findColumn(e.baseIndent+4);t<r&&addCodeText(a,t,r)}}return s.length&&(s=s.filter((O=>O.type!=Type$1.CodeText)),s.length&&(e.markers=s.concat(e.markers))),O.addNode(O.buffer.writeElements(a,-n).finish(Type$1.CodeBlock,r-n),n),!0},FencedCode(O,e){let t=isFencedCode(e);if(t<0)return!1;let i=O.lineStart+e.pos,n=e.next,r=t-e.pos,a=e.skipSpace(t),s=skipSpaceBack(e.text,e.text.length,a),o=[elt(Type$1.CodeMark,i,i+r)];a<s&&o.push(elt(Type$1.CodeInfo,O.lineStart+a,O.lineStart+s));for(let t=!0;O.nextLine()&&e.depth>=O.stack.length;t=!1){let i=e.pos;if(e.indent-e.baseIndent<4)for(;i<e.text.length&&e.text.charCodeAt(i)==n;)i++;if(i-e.pos>=r&&e.skipSpace(i)==e.text.length){for(let O of e.markers)o.push(O);o.push(elt(Type$1.CodeMark,O.lineStart+e.pos,O.lineStart+i)),O.nextLine();break}{t||addCodeText(o,O.lineStart-1,O.lineStart);for(let O of e.markers)o.push(O);let i=O.lineStart+e.basePos,n=O.lineStart+e.text.length;i<n&&addCodeText(o,i,n)}}return O.addNode(O.buffer.writeElements(o,-i).finish(Type$1.FencedCode,O.prevLineEnd()-i),i),!0},Blockquote(O,e){let t=isBlockquote(e);return!(t<0)&&(O.startContext(Type$1.Blockquote,e.pos),O.addNode(Type$1.QuoteMark,O.lineStart+e.pos,O.lineStart+e.pos+1),e.moveBase(e.pos+t),null)},HorizontalRule(O,e){if(isHorizontalRule(e,O,!1)<0)return!1;let t=O.lineStart+e.pos;return O.nextLine(),O.addNode(Type$1.HorizontalRule,t),!0},BulletList(O,e){let t=isBulletList(e,O,!1);if(t<0)return!1;O.block.type!=Type$1.BulletList&&O.startContext(Type$1.BulletList,e.basePos,e.next);let i=getListIndent(e,e.pos+1);return O.startContext(Type$1.ListItem,e.basePos,i-e.baseIndent),O.addNode(Type$1.ListMark,O.lineStart+e.pos,O.lineStart+e.pos+t),e.moveBaseColumn(i),null},OrderedList(O,e){let t=isOrderedList(e,O,!1);if(t<0)return!1;O.block.type!=Type$1.OrderedList&&O.startContext(Type$1.OrderedList,e.basePos,e.text.charCodeAt(e.pos+t-1));let i=getListIndent(e,e.pos+t);return O.startContext(Type$1.ListItem,e.basePos,i-e.baseIndent),O.addNode(Type$1.ListMark,O.lineStart+e.pos,O.lineStart+e.pos+t),e.moveBaseColumn(i),null},ATXHeading(O,e){let t=isAtxHeading(e);if(t<0)return!1;let i=e.pos,n=O.lineStart+i,r=skipSpaceBack(e.text,e.text.length,i),a=r;for(;a>i&&e.text.charCodeAt(a-1)==e.next;)a--;a!=r&&a!=i&&space$1(e.text.charCodeAt(a-1))||(a=e.text.length);let s=O.buffer.write(Type$1.HeaderMark,0,t).writeElements(O.parser.parseInline(e.text.slice(i+t+1,a),n+t+1),-n);a<e.text.length&&s.write(Type$1.HeaderMark,a-i,r-i);let o=s.finish(Type$1.ATXHeading1-1+t,e.text.length-i);return O.nextLine(),O.addNode(o,n),!0},HTMLBlock(O,e){let t=isHTMLBlock(e,O,!1);if(t<0)return!1;let i=O.lineStart+e.pos,n=HTMLBlockStyle[t][1],r=[],a=n!=EmptyLine;for(;!n.test(e.text)&&O.nextLine();){if(e.depth<O.stack.length){a=!1;break}for(let O of e.markers)r.push(O)}a&&O.nextLine();let s=n==CommentEnd?Type$1.CommentBlock:n==ProcessingEnd?Type$1.ProcessingInstructionBlock:Type$1.HTMLBlock,o=O.prevLineEnd();return O.addNode(O.buffer.writeElements(r,-i).finish(s,o-i),i),!0},SetextHeading:void 0};class LinkReferenceParser{constructor(O){this.stage=0,this.elts=[],this.pos=0,this.start=O.start,this.advance(O.content)}nextLine(O,e,t){if(-1==this.stage)return!1;let i=t.content+"\n"+e.scrub(),n=this.advance(i);return n>-1&&n<i.length&&this.complete(O,t,n)}finish(O,e){return(2==this.stage||3==this.stage)&&skipSpace(e.content,this.pos)==e.content.length&&this.complete(O,e,e.content.length)}complete(O,e,t){return O.addLeafElement(e,elt(Type$1.LinkReference,this.start,this.start+t,this.elts)),!0}nextStage(O){return O?(this.pos=O.to-this.start,this.elts.push(O),this.stage++,!0):(!1===O&&(this.stage=-1),!1)}advance(O){for(;;){if(-1==this.stage)return-1;if(0==this.stage){if(!this.nextStage(parseLinkLabel(O,this.pos,this.start,!0)))return-1;if(58!=O.charCodeAt(this.pos))return this.stage=-1;this.elts.push(elt(Type$1.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else{if(1!=this.stage){if(2==this.stage){let e=skipSpace(O,this.pos),t=0;if(e>this.pos){let i=parseLinkTitle(O,e,this.start);if(i){let e=lineEnd(O,i.to-this.start);e>0&&(this.nextStage(i),t=e)}}return t||(t=lineEnd(O,this.pos)),t>0&&t<O.length?t:-1}return lineEnd(O,this.pos)}if(!this.nextStage(parseURL(O,skipSpace(O,this.pos),this.start)))return-1}}}}function lineEnd(O,e){for(;e<O.length;e++){let t=O.charCodeAt(e);if(10==t)break;if(!space$1(t))return-1}return e}class SetextHeadingParser{nextLine(O,e,t){let i=e.depth<O.stack.length?-1:isSetextUnderline(e),n=e.next;if(i<0)return!1;let r=elt(Type$1.HeaderMark,O.lineStart+e.pos,O.lineStart+i);return O.nextLine(),O.addLeafElement(t,elt(61==n?Type$1.SetextHeading1:Type$1.SetextHeading2,t.start,O.prevLineEnd(),[...O.parser.parseInline(t.content,t.start),r])),!0}finish(){return!1}}const DefaultLeafBlocks={LinkReference:(O,e)=>91==e.content.charCodeAt(0)?new LinkReferenceParser(e):null,SetextHeading:()=>new SetextHeadingParser},DefaultEndLeaf=[(O,e)=>isAtxHeading(e)>=0,(O,e)=>isFencedCode(e)>=0,(O,e)=>isBlockquote(e)>=0,(O,e)=>isBulletList(e,O,!0)>=0,(O,e)=>isOrderedList(e,O,!0)>=0,(O,e)=>isHorizontalRule(e,O,!0)>=0,(O,e)=>isHTMLBlock(e,O,!0)>=0],scanLineResult={text:"",end:0};class BlockContext{constructor(O,e,t,i){this.parser=O,this.input=e,this.ranges=i,this.line=new Line,this.atEnd=!1,this.reusePlaceholders=new Map,this.stoppedAt=null,this.rangeI=0,this.to=i[i.length-1].to,this.lineStart=this.absoluteLineStart=this.absoluteLineEnd=i[0].from,this.block=CompositeBlock.create(Type$1.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=t.length?new FragmentCursor(t,e):null,this.readLine()}get parsedPos(){return this.absoluteLineStart}advance(){if(null!=this.stoppedAt&&this.absoluteLineStart>this.stoppedAt)return this.finish();let{line:O}=this;for(;;){for(let e=0;;){let t=O.depth<this.stack.length?this.stack[this.stack.length-1]:null;for(;e<O.markers.length&&(!t||O.markers[e].from<t.end);){let t=O.markers[e++];this.addNode(t.type,t.from,t.to)}if(!t)break;this.finishContext()}if(O.pos<O.text.length)break;if(!this.nextLine())return this.finish()}if(this.fragments&&this.reuseFragment(O.basePos))return null;O:for(;;){for(let e of this.parser.blockParsers)if(e){let t=e(this,O);if(0!=t){if(1==t)return null;O.forward();continue O}}break}let e=new LeafBlock(this.lineStart+O.pos,O.text.slice(O.pos));for(let O of this.parser.leafBlockParsers)if(O){let t=O(this,e);t&&e.parsers.push(t)}O:for(;this.nextLine()&&O.pos!=O.text.length;){if(O.indent<O.baseIndent+4)for(let t of this.parser.endLeafBlock)if(t(this,O,e))break O;for(let t of e.parsers)if(t.nextLine(this,O,e))return null;e.content+="\n"+O.scrub();for(let t of O.markers)e.marks.push(t)}return this.finishLeaf(e),null}stopAt(O){if(null!=this.stoppedAt&&this.stoppedAt<O)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=O}reuseFragment(O){if(!this.fragments.moveTo(this.absoluteLineStart+O,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let e=this.fragments.takeNodes(this);return!!e&&(this.absoluteLineStart+=e,this.lineStart=toRelative(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0)}get depth(){return this.stack.length}parentType(O=this.depth-1){return this.parser.nodeSet.types[this.stack[O].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(O){let e=scanLineResult;if(e.end=O,O>=this.to)e.text="";else if(e.text=this.lineChunkAt(O),e.end+=e.text.length,this.ranges.length>1){let O=this.absoluteLineStart,t=this.rangeI;for(;this.ranges[t].to<e.end;){t++;let i=this.ranges[t].from,n=this.lineChunkAt(i);e.end=i+n.length,e.text=e.text.slice(0,this.ranges[t-1].to-O)+n,O=e.end-e.text.length}}return e}readLine(){let{line:O}=this,{text:e,end:t}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=t,O.reset(e);O.depth<this.stack.length;O.depth++){let e=this.stack[O.depth],t=this.parser.skipContextMarkup[e.type];if(!t)throw new Error("Unhandled block context "+Type$1[e.type]);if(!t(e,this,O))break;O.forward()}}lineChunkAt(O){let e,t=this.input.chunk(O);if(this.input.lineChunks)e="\n"==t?"":t;else{let O=t.indexOf("\n");e=O<0?t:t.slice(0,O)}return O+e.length>this.to?e.slice(0,this.to-O):e}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(O,e,t=0){this.block=CompositeBlock.create(O,t,this.lineStart+e,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(O,e,t=0){this.startContext(this.parser.getNodeType(O),e,t)}addNode(O,e,t){"number"==typeof O&&(O=new Tree(this.parser.nodeSet.types[O],none,none,(null!=t?t:this.prevLineEnd())-e)),this.block.addChild(O,e-this.block.from)}addElement(O){this.block.addChild(O.toTree(this.parser.nodeSet),O.from-this.block.from)}addLeafElement(O,e){this.addNode(this.buffer.writeElements(injectMarks(e.children,O.marks),-e.from).finish(e.type,e.to-e.from),e.from)}finishContext(){let O=this.stack.pop(),e=this.stack[this.stack.length-1];e.addChild(O.toTree(this.parser.nodeSet),O.from-e.from),this.block=e}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(O){return this.ranges.length>1?injectGaps(this.ranges,0,O.topNode,this.ranges[0].from,this.reusePlaceholders):O}finishLeaf(O){for(let e of O.parsers)if(e.finish(this,O))return;let e=injectMarks(this.parser.parseInline(O.content,O.start),O.marks);this.addNode(this.buffer.writeElements(e,-O.start).finish(Type$1.Paragraph,O.content.length),O.start)}elt(O,e,t,i){return"string"==typeof O?elt(this.parser.getNodeType(O),e,t,i):new TreeElement(O,e)}get buffer(){return new Buffer(this.parser.nodeSet)}}function injectGaps(O,e,t,i,n){let r=O[e].to,a=[],s=[],o=t.from+i;function l(t,n){for(;n?t>=r:t>r;){let n=O[e+1].from-r;i+=n,t+=n,e++,r=O[e].to}}for(let Q=t.firstChild;Q;Q=Q.nextSibling){l(Q.from+i,!0);let t,c=Q.from+i,h=n.get(Q.tree);h?t=h:Q.to+i>r?(t=injectGaps(O,e,Q,i,n),l(Q.to+i,!1)):t=Q.toTree(),a.push(t),s.push(c-o)}return l(t.to+i,!1),new Tree(t.type,a,s,t.to+i-o,t.tree?t.tree.propValues:void 0)}class MarkdownParser extends Parser{constructor(O,e,t,i,n,r,a,s,o){super(),this.nodeSet=O,this.blockParsers=e,this.leafBlockParsers=t,this.blockNames=i,this.endLeafBlock=n,this.skipContextMarkup=r,this.inlineParsers=a,this.inlineNames=s,this.wrappers=o,this.nodeTypes=Object.create(null);for(let e of O.types)this.nodeTypes[e.name]=e.id}createParse(O,e,t){let i=new BlockContext(this,O,e,t);for(let n of this.wrappers)i=n(i,O,e,t);return i}configure(O){let e=resolveConfig(O);if(!e)return this;let{nodeSet:t,skipContextMarkup:i}=this,n=this.blockParsers.slice(),r=this.leafBlockParsers.slice(),a=this.blockNames.slice(),s=this.inlineParsers.slice(),o=this.inlineNames.slice(),l=this.endLeafBlock.slice(),Q=this.wrappers;if(nonEmpty(e.defineNodes)){i=Object.assign({},i);let O,n=t.types.slice();for(let t of e.defineNodes){let{name:e,block:r,composite:a,style:s}="string"==typeof t?{name:t}:t;if(n.some((O=>O.name==e)))continue;a&&(i[n.length]=(O,e,t)=>a(e,t,O.value));let o=n.length,l=a?["Block","BlockContext"]:r?o>=Type$1.ATXHeading1&&o<=Type$1.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;n.push(NodeType.define({id:o,name:e,props:l&&[[NodeProp.group,l]]})),s&&(O||(O={}),Array.isArray(s)||s instanceof Tag$1?O[e]=s:Object.assign(O,s))}t=new NodeSet(n),O&&(t=t.extend(styleTags(O)))}if(nonEmpty(e.props)&&(t=t.extend(...e.props)),nonEmpty(e.remove))for(let O of e.remove){let e=this.blockNames.indexOf(O),t=this.inlineNames.indexOf(O);e>-1&&(n[e]=r[e]=void 0),t>-1&&(s[t]=void 0)}if(nonEmpty(e.parseBlock))for(let O of e.parseBlock){let e=a.indexOf(O.name);if(e>-1)n[e]=O.parse,r[e]=O.leaf;else{let e=O.before?findName(a,O.before):O.after?findName(a,O.after)+1:a.length-1;n.splice(e,0,O.parse),r.splice(e,0,O.leaf),a.splice(e,0,O.name)}O.endLeaf&&l.push(O.endLeaf)}if(nonEmpty(e.parseInline))for(let O of e.parseInline){let e=o.indexOf(O.name);if(e>-1)s[e]=O.parse;else{let e=O.before?findName(o,O.before):O.after?findName(o,O.after)+1:o.length-1;s.splice(e,0,O.parse),o.splice(e,0,O.name)}}return e.wrap&&(Q=Q.concat(e.wrap)),new MarkdownParser(t,n,r,a,l,i,s,o,Q)}getNodeType(O){let e=this.nodeTypes[O];if(null==e)throw new RangeError(`Unknown node type '${O}'`);return e}parseInline(O,e){let t=new InlineContext(this,O,e);O:for(let O=e;O<t.end;){let e=t.char(O);for(let i of this.inlineParsers)if(i){let n=i(t,e,O);if(n>=0){O=n;continue O}}O++}return t.resolveMarkers(0)}}function nonEmpty(O){return null!=O&&O.length>0}function resolveConfig(O){if(!Array.isArray(O))return O;if(0==O.length)return null;let e=resolveConfig(O[0]);if(1==O.length)return e;let t=resolveConfig(O.slice(1));if(!t||!e)return e||t;let i=(O,e)=>(O||none).concat(e||none),n=e.wrap,r=t.wrap;return{props:i(e.props,t.props),defineNodes:i(e.defineNodes,t.defineNodes),parseBlock:i(e.parseBlock,t.parseBlock),parseInline:i(e.parseInline,t.parseInline),remove:i(e.remove,t.remove),wrap:n?r?(O,e,t,i)=>n(r(O,e,t,i),e,t,i):n:r}}function findName(O,e){let t=O.indexOf(e);if(t<0)throw new RangeError(`Position specified relative to unknown parser ${e}`);return t}let nodeTypes=[NodeType.none];for(let O,e=1;O=Type$1[e];e++)nodeTypes[e]=NodeType.define({id:e,name:O,props:e>=Type$1.Escape?[]:[[NodeProp.group,e in DefaultSkipMarkup?["Block","BlockContext"]:["Block","LeafBlock"]]],top:"Document"==O});const none=[];class Buffer{constructor(O){this.nodeSet=O,this.content=[],this.nodes=[]}write(O,e,t,i=0){return this.content.push(O,e,t,4+4*i),this}writeElements(O,e=0){for(let t of O)t.writeTo(this,e);return this}finish(O,e){return Tree.build({buffer:this.content,nodeSet:this.nodeSet,reused:this.nodes,topID:O,length:e})}}let Element$2=class{constructor(O,e,t,i=none){this.type=O,this.from=e,this.to=t,this.children=i}writeTo(O,e){let t=O.content.length;O.writeElements(this.children,e),O.content.push(this.type,this.from+e,this.to+e,O.content.length+4-t)}toTree(O){return new Buffer(O).writeElements(this.children,-this.from).finish(this.type,this.to-this.from)}};class TreeElement{constructor(O,e){this.tree=O,this.from=e}get to(){return this.from+this.tree.length}get type(){return this.tree.type.id}get children(){return none}writeTo(O,e){O.nodes.push(this.tree),O.content.push(O.nodes.length-1,this.from+e,this.to+e,-1)}toTree(){return this.tree}}function elt(O,e,t,i){return new Element$2(O,e,t,i)}const EmphasisUnderscore={resolve:"Emphasis",mark:"EmphasisMark"},EmphasisAsterisk={resolve:"Emphasis",mark:"EmphasisMark"},LinkStart={},ImageStart={};class InlineDelimiter{constructor(O,e,t,i){this.type=O,this.from=e,this.to=t,this.side=i}}const Escapable="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~";let Punctuation$1=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\u2010-\u2027]/;try{Punctuation$1=new RegExp("[\\p{S}|\\p{P}]","u")}catch(O){}const DefaultInline={Escape(O,e,t){if(92!=e||t==O.end-1)return-1;let i=O.char(t+1);for(let e=0;e<32;e++)if(Escapable.charCodeAt(e)==i)return O.append(elt(Type$1.Escape,t,t+2));return-1},Entity(O,e,t){if(38!=e)return-1;let i=/^(?:#\d+|#x[a-f\d]+|\w+);/i.exec(O.slice(t+1,t+31));return i?O.append(elt(Type$1.Entity,t,t+1+i[0].length)):-1},InlineCode(O,e,t){if(96!=e||t&&96==O.char(t-1))return-1;let i=t+1;for(;i<O.end&&96==O.char(i);)i++;let n=i-t,r=0;for(;i<O.end;i++)if(96==O.char(i)){if(r++,r==n&&96!=O.char(i+1))return O.append(elt(Type$1.InlineCode,t,i+1,[elt(Type$1.CodeMark,t,t+n),elt(Type$1.CodeMark,i+1-n,i+1)]))}else r=0;return-1},HTMLTag(O,e,t){if(60!=e||t==O.end-1)return-1;let i=O.slice(t+1,O.end),n=/^(?:[a-z][-\w+.]+:[^\s>]+|[a-z\d.!#$%&'*+/=?^_`{|}~-]+@[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?(?:\.[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?)*)>/i.exec(i);if(n)return O.append(elt(Type$1.Autolink,t,t+1+n[0].length,[elt(Type$1.LinkMark,t,t+1),elt(Type$1.URL,t+1,t+n[0].length),elt(Type$1.LinkMark,t+n[0].length,t+1+n[0].length)]));let r=/^!--[^>](?:-[^-]|[^-])*?-->/i.exec(i);if(r)return O.append(elt(Type$1.Comment,t,t+1+r[0].length));let a=/^\?[^]*?\?>/.exec(i);if(a)return O.append(elt(Type$1.ProcessingInstruction,t,t+1+a[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(i);return s?O.append(elt(Type$1.HTMLTag,t,t+1+s[0].length)):-1},Emphasis(O,e,t){if(95!=e&&42!=e)return-1;let i=t+1;for(;O.char(i)==e;)i++;let n=O.slice(t-1,t),r=O.slice(i,i+1),a=Punctuation$1.test(n),s=Punctuation$1.test(r),o=/\s|^$/.test(n),l=/\s|^$/.test(r),Q=!l&&(!s||o||a),c=!o&&(!a||l||s),h=Q&&(42==e||!c||a),$=c&&(42==e||!Q||s);return O.append(new InlineDelimiter(95==e?EmphasisUnderscore:EmphasisAsterisk,t,i,(h?1:0)|($?2:0)))},HardBreak(O,e,t){if(92==e&&10==O.char(t+1))return O.append(elt(Type$1.HardBreak,t,t+2));if(32==e){let e=t+1;for(;32==O.char(e);)e++;if(10==O.char(e)&&e>=t+2)return O.append(elt(Type$1.HardBreak,t,e+1))}return-1},Link:(O,e,t)=>91==e?O.append(new InlineDelimiter(LinkStart,t,t+1,1)):-1,Image:(O,e,t)=>33==e&&91==O.char(t+1)?O.append(new InlineDelimiter(ImageStart,t,t+2,1)):-1,LinkEnd(O,e,t){if(93!=e)return-1;for(let e=O.parts.length-1;e>=0;e--){let i=O.parts[e];if(i instanceof InlineDelimiter&&(i.type==LinkStart||i.type==ImageStart)){if(!i.side||O.skipSpace(i.to)==t&&!/[(\[]/.test(O.slice(t+1,t+2)))return O.parts[e]=null,-1;let n=O.takeContent(e),r=O.parts[e]=finishLink(O,n,i.type==LinkStart?Type$1.Link:Type$1.Image,i.from,t+1);if(i.type==LinkStart)for(let t=0;t<e;t++){let e=O.parts[t];e instanceof InlineDelimiter&&e.type==LinkStart&&(e.side=0)}return r.to}}return-1}};function finishLink(O,e,t,i,n){let{text:r}=O,a=O.char(n),s=n;if(e.unshift(elt(Type$1.LinkMark,i,i+(t==Type$1.Image?2:1))),e.push(elt(Type$1.LinkMark,n-1,n)),40==a){let t,i=O.skipSpace(n+1),a=parseURL(r,i-O.offset,O.offset);a&&(i=O.skipSpace(a.to),i!=a.to&&(t=parseLinkTitle(r,i-O.offset,O.offset),t&&(i=O.skipSpace(t.to)))),41==O.char(i)&&(e.push(elt(Type$1.LinkMark,n,n+1)),s=i+1,a&&e.push(a),t&&e.push(t),e.push(elt(Type$1.LinkMark,i,s)))}else if(91==a){let t=parseLinkLabel(r,n-O.offset,O.offset,!1);t&&(e.push(t),s=t.to)}return elt(t,i,s,e)}function parseURL(O,e,t){if(60==O.charCodeAt(e)){for(let i=e+1;i<O.length;i++){let n=O.charCodeAt(i);if(62==n)return elt(Type$1.URL,e+t,i+1+t);if(60==n||10==n)return!1}return null}{let i=0,n=e;for(let e=!1;n<O.length;n++){let t=O.charCodeAt(n);if(space$1(t))break;if(e)e=!1;else if(40==t)i++;else if(41==t){if(!i)break;i--}else 92==t&&(e=!0)}return n>e?elt(Type$1.URL,e+t,n+t):n==O.length&&null}}function parseLinkTitle(O,e,t){let i=O.charCodeAt(e);if(39!=i&&34!=i&&40!=i)return!1;let n=40==i?41:i;for(let i=e+1,r=!1;i<O.length;i++){let a=O.charCodeAt(i);if(r)r=!1;else{if(a==n)return elt(Type$1.LinkTitle,e+t,i+1+t);92==a&&(r=!0)}}return null}function parseLinkLabel(O,e,t,i){for(let n=!1,r=e+1,a=Math.min(O.length,r+999);r<a;r++){let a=O.charCodeAt(r);if(n)n=!1;else{if(93==a)return!i&&elt(Type$1.LinkLabel,e+t,r+1+t);if(i&&!space$1(a)&&(i=!1),91==a)return!1;92==a&&(n=!0)}}return null}class InlineContext{constructor(O,e,t){this.parser=O,this.text=e,this.offset=t,this.parts=[]}char(O){return O>=this.end?-1:this.text.charCodeAt(O-this.offset)}get end(){return this.offset+this.text.length}slice(O,e){return this.text.slice(O-this.offset,e-this.offset)}append(O){return this.parts.push(O),O.to}addDelimiter(O,e,t,i,n){return this.append(new InlineDelimiter(O,e,t,(i?1:0)|(n?2:0)))}get hasOpenLink(){for(let O=this.parts.length-1;O>=0;O--){let e=this.parts[O];if(e instanceof InlineDelimiter&&(e.type==LinkStart||e.type==ImageStart))return!0}return!1}addElement(O){return this.append(O)}resolveMarkers(O){for(let e=O;e<this.parts.length;e++){let t=this.parts[e];if(!(t instanceof InlineDelimiter&&t.type.resolve&&2&t.side))continue;let i,n=t.type==EmphasisUnderscore||t.type==EmphasisAsterisk,r=t.to-t.from,a=e-1;for(;a>=O;a--){let O=this.parts[a];if(O instanceof InlineDelimiter&&1&O.side&&O.type==t.type&&!(n&&(1&t.side||2&O.side)&&(O.to-O.from+r)%3==0&&((O.to-O.from)%3||r%3))){i=O;break}}if(!i)continue;let s=t.type.resolve,o=[],l=i.from,Q=t.to;if(n){let O=Math.min(2,i.to-i.from,r);l=i.to-O,Q=t.from+O,s=1==O?"Emphasis":"StrongEmphasis"}i.type.mark&&o.push(this.elt(i.type.mark,l,i.to));for(let O=a+1;O<e;O++)this.parts[O]instanceof Element$2&&o.push(this.parts[O]),this.parts[O]=null;t.type.mark&&o.push(this.elt(t.type.mark,t.from,Q));let c=this.elt(s,l,Q,o);this.parts[a]=n&&i.from!=l?new InlineDelimiter(i.type,i.from,l,i.side):null,(this.parts[e]=n&&t.to!=Q?new InlineDelimiter(t.type,Q,t.to,t.side):null)?this.parts.splice(e,0,c):this.parts[e]=c}let e=[];for(let t=O;t<this.parts.length;t++){let O=this.parts[t];O instanceof Element$2&&e.push(O)}return e}findOpeningDelimiter(O){for(let e=this.parts.length-1;e>=0;e--){let t=this.parts[e];if(t instanceof InlineDelimiter&&t.type==O)return e}return null}takeContent(O){let e=this.resolveMarkers(O);return this.parts.length=O,e}skipSpace(O){return skipSpace(this.text,O-this.offset)+this.offset}elt(O,e,t,i){return"string"==typeof O?elt(this.parser.getNodeType(O),e,t,i):new TreeElement(O,e)}}function injectMarks(O,e){if(!e.length)return O;if(!O.length)return e;let t=O.slice(),i=0;for(let O of e){for(;i<t.length&&t[i].to<O.to;)i++;if(i<t.length&&t[i].from<O.from){let e=t[i];e instanceof Element$2&&(t[i]=new Element$2(e.type,e.from,e.to,injectMarks(e.children,[O])))}else t.splice(i++,0,O)}return t}const NotLast=[Type$1.CodeBlock,Type$1.ListItem,Type$1.OrderedList,Type$1.BulletList];class FragmentCursor{constructor(O,e){this.fragments=O,this.input=e,this.i=0,this.fragment=null,this.fragmentEnd=-1,this.cursor=null,O.length&&(this.fragment=O[this.i++])}nextFragment(){this.fragment=this.i<this.fragments.length?this.fragments[this.i++]:null,this.cursor=null,this.fragmentEnd=-1}moveTo(O,e){for(;this.fragment&&this.fragment.to<=O;)this.nextFragment();if(!this.fragment||this.fragment.from>(O?O-1:0))return!1;if(this.fragmentEnd<0){let O=this.fragment.to;for(;O>0&&"\n"!=this.input.read(O-1,O);)O--;this.fragmentEnd=O?O-1:0}let t=this.cursor;t||(t=this.cursor=this.fragment.tree.cursor(),t.firstChild());let i=O+this.fragment.offset;for(;t.to<=i;)if(!t.parent())return!1;for(;;){if(t.from>=i)return this.fragment.from<=e;if(!t.childAfter(i))return!1}}matches(O){let e=this.cursor.tree;return e&&e.prop(NodeProp.contextHash)==O}takeNodes(O){let e=this.cursor,t=this.fragment.offset,i=this.fragmentEnd-(this.fragment.openEnd?1:0),n=O.absoluteLineStart,r=n,a=O.block.children.length,s=r,o=a;for(;;){if(e.to-t>i){if(e.type.isAnonymous&&e.firstChild())continue;break}let n=toRelative(e.from-t,O.ranges);if(e.to-t<=O.ranges[O.rangeI].to)O.addNode(e.tree,n);else{let t=new Tree(O.parser.nodeSet.types[Type$1.Paragraph],[],[],0,O.block.hashProp);O.reusePlaceholders.set(t,e.tree),O.addNode(t,n)}if(e.type.is("Block")&&(NotLast.indexOf(e.type.id)<0?(r=e.to-t,a=O.block.children.length):(r=s,a=o,s=e.to-t,o=O.block.children.length)),!e.nextSibling())break}for(;O.block.children.length>a;)O.block.children.pop(),O.block.positions.pop();return r-n}}function toRelative(O,e){let t=O;for(let i=1;i<e.length;i++){let n=e[i-1].to,r=e[i].from;n<O&&(t-=r-n)}return t}const markdownHighlighting=styleTags({"Blockquote/...":tags$1.quote,HorizontalRule:tags$1.contentSeparator,"ATXHeading1/... SetextHeading1/...":tags$1.heading1,"ATXHeading2/... SetextHeading2/...":tags$1.heading2,"ATXHeading3/...":tags$1.heading3,"ATXHeading4/...":tags$1.heading4,"ATXHeading5/...":tags$1.heading5,"ATXHeading6/...":tags$1.heading6,"Comment CommentBlock":tags$1.comment,Escape:tags$1.escape,Entity:tags$1.character,"Emphasis/...":tags$1.emphasis,"StrongEmphasis/...":tags$1.strong,"Link/... Image/...":tags$1.link,"OrderedList/... BulletList/...":tags$1.list,"BlockQuote/...":tags$1.quote,"InlineCode CodeText":tags$1.monospace,"URL Autolink":tags$1.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":tags$1.processingInstruction,"CodeInfo LinkLabel":tags$1.labelName,LinkTitle:tags$1.string,Paragraph:tags$1.content}),parser$7=new MarkdownParser(new NodeSet(nodeTypes).extend(markdownHighlighting),Object.keys(DefaultBlockParsers).map((O=>DefaultBlockParsers[O])),Object.keys(DefaultBlockParsers).map((O=>DefaultLeafBlocks[O])),Object.keys(DefaultBlockParsers),DefaultEndLeaf,DefaultSkipMarkup,Object.keys(DefaultInline).map((O=>DefaultInline[O])),Object.keys(DefaultInline),[]);function leftOverSpace(O,e,t){let i=[];for(let n=O.firstChild,r=e;;n=n.nextSibling){let O=n?n.from:t;if(O>r&&i.push({from:r,to:O}),!n)break;r=n.to}return i}function parseCode(O){let{codeParser:e,htmlParser:t}=O,i=parseMixed(((O,i)=>{let n=O.type.id;if(!e||n!=Type$1.CodeBlock&&n!=Type$1.FencedCode){if(t&&(n==Type$1.HTMLBlock||n==Type$1.HTMLTag))return{parser:t,overlay:leftOverSpace(O.node,O.from,O.to)}}else{let t="";if(n==Type$1.FencedCode){let e=O.node.getChild(Type$1.CodeInfo);e&&(t=i.read(e.from,e.to))}let r=e(t);if(r)return{parser:r,overlay:O=>O.type.id==Type$1.CodeText}}return null}));return{wrap:i}}const StrikethroughDelim={resolve:"Strikethrough",mark:"StrikethroughMark"},Strikethrough={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":tags$1.strikethrough}},{name:"StrikethroughMark",style:tags$1.processingInstruction}],parseInline:[{name:"Strikethrough",parse(O,e,t){if(126!=e||126!=O.char(t+1)||126==O.char(t+2))return-1;let i=O.slice(t-1,t),n=O.slice(t+2,t+3),r=/\s|^$/.test(i),a=/\s|^$/.test(n),s=Punctuation$1.test(i),o=Punctuation$1.test(n);return O.addDelimiter(StrikethroughDelim,t,t+2,!a&&(!o||r||s),!r&&(!s||a||o))},after:"Emphasis"}]};function parseRow(O,e,t=0,i,n=0){let r=0,a=!0,s=-1,o=-1,l=!1,Q=()=>{i.push(O.elt("TableCell",n+s,n+o,O.parser.parseInline(e.slice(s,o),n+s)))};for(let c=t;c<e.length;c++){let t=e.charCodeAt(c);124!=t||l?(l||32!=t&&9!=t)&&(s<0&&(s=c),o=c+1):((!a||s>-1)&&r++,a=!1,i&&(s>-1&&Q(),i.push(O.elt("TableDelimiter",c+n,c+n+1))),s=o=-1),l=!l&&92==t}return s>-1&&(r++,i&&Q()),r}function hasPipe(O,e){for(let t=e;t<O.length;t++){let e=O.charCodeAt(t);if(124==e)return!0;92==e&&t++}return!1}const delimiterLine=/^\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/;class TableParser{constructor(){this.rows=null}nextLine(O,e,t){if(null==this.rows){let i;if(this.rows=!1,(45==e.next||58==e.next||124==e.next)&&delimiterLine.test(i=e.text.slice(e.pos))){let n=[];parseRow(O,t.content,0,n,t.start)==parseRow(O,i,e.pos)&&(this.rows=[O.elt("TableHeader",t.start,t.start+t.content.length,n),O.elt("TableDelimiter",O.lineStart+e.pos,O.lineStart+e.text.length)])}}else if(this.rows){let t=[];parseRow(O,e.text,e.pos,t,O.lineStart),this.rows.push(O.elt("TableRow",O.lineStart+e.pos,O.lineStart+e.text.length,t))}return!1}finish(O,e){return!!this.rows&&(O.addLeafElement(e,O.elt("Table",e.start,e.start+e.content.length,this.rows)),!0)}}const Table={defineNodes:[{name:"Table",block:!0},{name:"TableHeader",style:{"TableHeader/...":tags$1.heading}},"TableRow",{name:"TableCell",style:tags$1.content},{name:"TableDelimiter",style:tags$1.processingInstruction}],parseBlock:[{name:"Table",leaf:(O,e)=>hasPipe(e.content,0)?new TableParser:null,endLeaf(O,e,t){if(t.parsers.some((O=>O instanceof TableParser))||!hasPipe(e.text,e.basePos))return!1;let i=O.peekLine();return delimiterLine.test(i)&&parseRow(O,e.text,e.basePos)==parseRow(O,i,e.basePos)},before:"SetextHeading"}]};class TaskParser{nextLine(){return!1}finish(O,e){return O.addLeafElement(e,O.elt("Task",e.start,e.start+e.content.length,[O.elt("TaskMarker",e.start,e.start+3),...O.parser.parseInline(e.content.slice(3),e.start+3)])),!0}}const TaskList={defineNodes:[{name:"Task",block:!0,style:tags$1.list},{name:"TaskMarker",style:tags$1.atom}],parseBlock:[{name:"TaskList",leaf:(O,e)=>/^\[[ xX]\][ \t]/.test(e.content)&&"ListItem"==O.parentType().name?new TaskParser:null,after:"SetextHeading"}]},autolinkRE=/(www\.)|(https?:\/\/)|([\w.+-]{1,100}@)|(mailto:|xmpp:)/gy,urlRE=/[\w-]+(\.[\w-]+)+(\/[^\s<]*)?/gy,lastTwoDomainWords=/[\w-]+\.[\w-]+($|\/)/,emailRE=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,xmppResourceRE=/\/[a-zA-Z\d@.]+/gy;function count(O,e,t,i){let n=0;for(let r=e;r<t;r++)O[r]==i&&n++;return n}function autolinkURLEnd(O,e){urlRE.lastIndex=e;let t=urlRE.exec(O);if(!t||lastTwoDomainWords.exec(t[0])[0].indexOf("_")>-1)return-1;let i=e+t[0].length;for(;;){let t,n=O[i-1];if(/[?!.,:*_~]/.test(n)||")"==n&&count(O,e,i,")")>count(O,e,i,"("))i--;else{if(";"!=n||!(t=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(O.slice(e,i))))break;i=e+t.index}}return i}function autolinkEmailEnd(O,e){emailRE.lastIndex=e;let t=emailRE.exec(O);if(!t)return-1;let i=t[0][t[0].length-1];return"_"==i||"-"==i?-1:e+t[0].length-("."==i?1:0)}const Autolink={parseInline:[{name:"Autolink",parse(O,e,t){let i=t-O.offset;if(i&&/\w/.test(O.text[i-1]))return-1;autolinkRE.lastIndex=i;let n=autolinkRE.exec(O.text),r=-1;if(!n)return-1;if(n[1]||n[2]){if(r=autolinkURLEnd(O.text,i+n[0].length),r>-1&&O.hasOpenLink){r=i+/([^\[\]]|\[[^\]]*\])*/.exec(O.text.slice(i,r))[0].length}}else n[3]?r=autolinkEmailEnd(O.text,i):(r=autolinkEmailEnd(O.text,i+n[0].length),r>-1&&"xmpp:"==n[0]&&(xmppResourceRE.lastIndex=r,n=xmppResourceRE.exec(O.text),n&&(r=n.index+n[0].length)));return r<0?-1:(O.addElement(O.elt("URL",t,r+O.offset)),r+O.offset)}}]},GFM=[Table,TaskList,Strikethrough,Autolink];function parseSubSuper(O,e,t){return(i,n,r)=>{if(n!=O||i.char(r+1)==O)return-1;let a=[i.elt(t,r,r+1)];for(let n=r+1;n<i.end;n++){let s=i.char(n);if(s==O)return i.addElement(i.elt(e,r,n+1,a.concat(i.elt(t,n,n+1))));if(92==s&&a.push(i.elt("Escape",n,2+n++)),space$1(s))break}return-1}}const Superscript={defineNodes:[{name:"Superscript",style:tags$1.special(tags$1.content)},{name:"SuperscriptMark",style:tags$1.processingInstruction}],parseInline:[{name:"Superscript",parse:parseSubSuper(94,"Superscript","SuperscriptMark")}]},Subscript={defineNodes:[{name:"Subscript",style:tags$1.special(tags$1.content)},{name:"SubscriptMark",style:tags$1.processingInstruction}],parseInline:[{name:"Subscript",parse:parseSubSuper(126,"Subscript","SubscriptMark")}]},Emoji={defineNodes:[{name:"Emoji",style:tags$1.character}],parseInline:[{name:"Emoji",parse(O,e,t){let i;return 58==e&&(i=/^[a-zA-Z_0-9]+:/.exec(O.slice(t+1,O.end)))?O.addElement(O.elt("Emoji",t,t+1+i[0].length)):-1}}]},data=defineLanguageFacet({commentTokens:{block:{open:"\x3c!--",close:"--\x3e"}}}),headingProp=new NodeProp,commonmark=parser$7.configure({props:[foldNodeProp.add((O=>!O.is("Block")||O.is("Document")||null!=isHeading(O)||isList(O)?void 0:(O,e)=>({from:e.doc.lineAt(O.from).to,to:O.to}))),headingProp.add(isHeading),indentNodeProp.add({Document:()=>null}),languageDataProp.add({Document:data})]});function isHeading(O){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(O.name);return e?+e[1]:void 0}function isList(O){return"OrderedList"==O.name||"BulletList"==O.name}function findSectionEnd(O,e){let t=O;for(;;){let O,i=t.nextSibling;if(!i||null!=(O=isHeading(i.type))&&O<=e)break;t=i}return t.to}const headerIndent=foldService.of(((O,e,t)=>{for(let i=syntaxTree(O).resolveInner(t,-1);i&&!(i.from<e);i=i.parent){let O=i.type.prop(headingProp);if(null==O)continue;let e=findSectionEnd(i,O);if(e>t)return{from:t,to:e}}return null}));function mkLang(O){return new Language(data,O,[headerIndent],"markdown")}const commonmarkLanguage=mkLang(commonmark),extended=commonmark.configure([GFM,Subscript,Superscript,Emoji,{props:[foldNodeProp.add({Table:(O,e)=>({from:e.doc.lineAt(O.from).to,to:O.to})})]}]),markdownLanguage=mkLang(extended);function getCodeParser(O,e){return t=>{if(t&&O){let e=null;if(t=/\S*/.exec(t)[0],e="function"==typeof O?O(t):LanguageDescription.matchLanguageName(O,t,!0),e instanceof LanguageDescription)return e.support?e.support.language.parser:ParseContext.getSkippingParser(e.load());if(e)return e.parser}return e?e.parser:null}}let Context$2=class{constructor(O,e,t,i,n,r,a){this.node=O,this.from=e,this.to=t,this.spaceBefore=i,this.spaceAfter=n,this.type=r,this.item=a}blank(O,e=!0){let t=this.spaceBefore+("Blockquote"==this.node.name?">":"");if(null!=O){for(;t.length<O;)t+=" ";return t}for(let O=this.to-this.from-t.length-this.spaceAfter.length;O>0;O--)t+=" ";return t+(e?this.spaceAfter:"")}marker(O,e){let t="OrderedList"==this.node.name?String(+itemNumber(this.item,O)[2]+e):"";return this.spaceBefore+t+this.type+this.spaceAfter}};function getContext(O,e){let t=[],i=[];for(let e=O;e;e=e.parent){if("FencedCode"==e.name)return i;"ListItem"!=e.name&&"Blockquote"!=e.name||t.push(e)}for(let O=t.length-1;O>=0;O--){let n,r=t[O],a=e.lineAt(r.from),s=r.from-a.from;if("Blockquote"==r.name&&(n=/^ *>( ?)/.exec(a.text.slice(s))))i.push(new Context$2(r,s,s+n[0].length,"",n[1],">",null));else if("ListItem"==r.name&&"OrderedList"==r.parent.name&&(n=/^( *)\d+([.)])( *)/.exec(a.text.slice(s)))){let O=n[3],e=n[0].length;O.length>=4&&(O=O.slice(0,O.length-4),e-=4),i.push(new Context$2(r.parent,s,s+e,n[1],O,n[2],r))}else if("ListItem"==r.name&&"BulletList"==r.parent.name&&(n=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(a.text.slice(s)))){let O=n[4],e=n[0].length;O.length>4&&(O=O.slice(0,O.length-4),e-=4);let t=n[2];n[3]&&(t+=n[3].replace(/[xX]/," ")),i.push(new Context$2(r.parent,s,s+e,n[1],O,t,r))}}return i}function itemNumber(O,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(O.from,O.from+10))}function renumberList(O,e,t,i=0){for(let n=-1,r=O;;){if("ListItem"==r.name){let O=itemNumber(r,e),a=+O[2];if(n>=0){if(a!=n+1)return;t.push({from:r.from+O[1].length,to:r.from+O[0].length,insert:String(n+2+i)})}n=a}let O=r.nextSibling;if(!O)break;r=O}}function normalizeIndent(O,e){let t=/^[ \t]*/.exec(O)[0].length;if(!t||"\t"!=e.facet(indentUnit))return O;let i="";for(let e=countColumn(O,4,t);e>0;)e>=4?(i+="\t",e-=4):(i+=" ",e--);return i+O.slice(t)}const insertNewlineContinueMarkup=({state:O,dispatch:e})=>{let t=syntaxTree(O),{doc:i}=O,n=null,r=O.changeByRange((e=>{if(!e.empty||!markdownLanguage.isActiveAt(O,e.from,0))return n={range:e};let r=e.from,a=i.lineAt(r),s=getContext(t.resolveInner(r,-1),i);for(;s.length&&s[s.length-1].from>r-a.from;)s.pop();if(!s.length)return n={range:e};let o=s[s.length-1];if(o.to-o.spaceAfter.length>r-a.from)return n={range:e};let l=r>=o.to-o.spaceAfter.length&&!/\S/.test(a.text.slice(o.to));if(o.item&&l){let e=o.node.firstChild,t=o.node.getChild("ListItem","ListItem");if(e.to>=r||t&&t.to<r||a.from>0&&!/[^\s>]/.test(i.lineAt(a.from-1).text)){let O,e=s.length>1?s[s.length-2]:null,t="";e&&e.item?(O=a.from+e.from,t=e.marker(i,1)):O=a.from+(e?e.to:0);let n=[{from:O,to:r,insert:t}];return"OrderedList"==o.node.name&&renumberList(o.item,i,n,-2),e&&"OrderedList"==e.node.name&&renumberList(e.item,i,n),{range:EditorSelection.cursor(O+t.length),changes:n}}{let e=blankLine(s,O,a);return{range:EditorSelection.cursor(r+e.length+1),changes:{from:a.from,insert:e+O.lineBreak}}}}if("Blockquote"==o.node.name&&l&&a.from){let t=i.lineAt(a.from-1),n=/>\s*$/.exec(t.text);if(n&&n.index==o.from){let i=O.changes([{from:t.from+n.index,to:t.to},{from:a.from+o.from,to:a.to}]);return{range:e.map(i),changes:i}}}let Q=[];"OrderedList"==o.node.name&&renumberList(o.item,i,Q);let c=o.item&&o.item.from<a.from,h="";if(!c||/^[\s\d.)\-+*>]*/.exec(a.text)[0].length>=o.to)for(let O=0,e=s.length-1;O<=e;O++)h+=O!=e||c?s[O].blank(O<e?countColumn(a.text,4,s[O+1].from)-h.length:null):s[O].marker(i,1);let $=r;for(;$>a.from&&/\s/.test(a.text.charAt($-a.from-1));)$--;return h=normalizeIndent(h,O),nonTightList(o.node,O.doc)&&(h=blankLine(s,O,a)+O.lineBreak+h),Q.push({from:$,to:r,insert:O.lineBreak+h}),{range:EditorSelection.cursor($+h.length+1),changes:Q}}));return!n&&(e(O.update(r,{scrollIntoView:!0,userEvent:"input"})),!0)};function isMark(O){return"QuoteMark"==O.name||"ListMark"==O.name}function nonTightList(O,e){if("OrderedList"!=O.name&&"BulletList"!=O.name)return!1;let t=O.firstChild,i=O.getChild("ListItem","ListItem");if(!i)return!1;let n=e.lineAt(t.to),r=e.lineAt(i.from),a=/^[\s>]*$/.test(n.text);return n.number+(a?0:1)<r.number}function blankLine(O,e,t){let i="";for(let e=0,n=O.length-2;e<=n;e++)i+=O[e].blank(e<n?countColumn(t.text,4,Math.min(t.text.length,O[e+1].from))-i.length:null,e<n);return normalizeIndent(i,e)}function contextNodeForDelete(O,e){let t=O.resolveInner(e,-1),i=e;isMark(t)&&(i=t.from,t=t.parent);for(let O;O=t.childBefore(i);)if(isMark(O))i=O.from;else{if("OrderedList"!=O.name&&"BulletList"!=O.name)break;t=O.lastChild,i=t.to}return t}const deleteMarkupBackward=({state:O,dispatch:e})=>{let t=syntaxTree(O),i=null,n=O.changeByRange((e=>{let n=e.from,{doc:r}=O;if(e.empty&&markdownLanguage.isActiveAt(O,e.from)){let e=r.lineAt(n),i=getContext(contextNodeForDelete(t,n),r);if(i.length){let t=i[i.length-1],r=t.to-t.spaceAfter.length+(t.spaceAfter?1:0);if(n-e.from>r&&!/\S/.test(e.text.slice(r,n-e.from)))return{range:EditorSelection.cursor(e.from+r),changes:{from:e.from+r,to:n}};if(n-e.from==r&&(!t.item||e.from<=t.item.from||!/\S/.test(e.text.slice(0,t.to)))){let i=e.from+t.from;if(t.item&&t.node.from<t.item.from&&/\S/.test(e.text.slice(t.from,t.to))){let n=t.blank(countColumn(e.text,4,t.to)-countColumn(e.text,4,t.from));return i==e.from&&(n=normalizeIndent(n,O)),{range:EditorSelection.cursor(i+n.length),changes:{from:i,to:e.from+t.to,insert:n}}}if(i<n)return{range:EditorSelection.cursor(i),changes:{from:i,to:n}}}}}return i={range:e}}));return!i&&(e(O.update(n,{scrollIntoView:!0,userEvent:"delete"})),!0)},markdownKeymap=[{key:"Enter",run:insertNewlineContinueMarkup},{key:"Backspace",run:deleteMarkupBackward}],htmlNoMatch=html({matchClosingTags:!1});function markdown(O={}){let{codeLanguages:e,defaultCodeLanguage:t,addKeymap:i=!0,base:{parser:n}=commonmarkLanguage,completeHTMLTags:r=!0,htmlTagLanguage:a=htmlNoMatch}=O;if(!(n instanceof MarkdownParser))throw new RangeError("Base parser provided to `markdown` should be a Markdown parser");let s,o=O.extensions?[O.extensions]:[],l=[a.support];t instanceof LanguageSupport?(l.push(t.support),s=t.language):t&&(s=t);let Q=e||s?getCodeParser(e,s):void 0;o.push(parseCode({codeParser:Q,htmlParser:a.language.parser})),i&&l.push(Prec.high(keymap.of(markdownKeymap)));let c=mkLang(n.configure(o));return r&&l.push(c.data.of({autocomplete:htmlTagCompletion})),new LanguageSupport(c,l)}function htmlTagCompletion(O){let{state:e,pos:t}=O,i=/<[:\-\.\w\u00b7-\uffff]*$/.exec(e.sliceDoc(t-25,t));if(!i)return null;let n=syntaxTree(e).resolveInner(t,-1);for(;n&&!n.type.isTop;){if("CodeBlock"==n.name||"FencedCode"==n.name||"ProcessingInstructionBlock"==n.name||"CommentBlock"==n.name||"Link"==n.name||"Image"==n.name)return null;n=n.parent}return{from:t-i[0].length,to:t,options:htmlTagCompletions(),validFor:/^<[:\-\.\w\u00b7-\uffff]*$/}}let _tagCompletions=null;function htmlTagCompletions(){if(_tagCompletions)return _tagCompletions;let O=htmlCompletionSource(new CompletionContext(EditorState.create({extensions:htmlNoMatch}),0,!0));return _tagCompletions=O?O.options:[]}const castOpen=1,HeredocString=2,interpolatedStringContent=263,EscapeSequence=3,afterInterpolation=264,automaticSemicolon=265,eof$2=266,abstract=4,and=5,array=6,as=7,Boolean=8,_break=9,_case=10,_catch=11,clone=12,_const=13,_continue=14,_default=15,declare=16,_do=17,echo=18,_else=19,elseif=20,enddeclare=21,endfor=22,endforeach=23,endif=24,endswitch=25,endwhile=26,_enum=27,_extends=28,final=29,_finally=30,fn=31,_for=32,foreach=33,from=34,_function=35,global=36,goto=37,_if=38,_implements=39,include=40,include_once=41,_instanceof=42,insteadof=43,_interface=44,list=45,match=46,namespace=47,_new=48,_null=49,or=50,print=51,_require=52,require_once=53,_return=54,_switch=55,_throw=56,trait=57,_try=58,unset=59,use=60,_var=61,Visibility=62,_while=63,xor=64,_yield=65,keywordMap={abstract:4,and:5,array:6,as:7,true:8,false:8,break:9,case:10,catch:11,clone:12,const:13,continue:14,declare:16,default:15,do:17,echo:18,else:19,elseif:20,enddeclare:21,endfor:22,endforeach:23,endif:24,endswitch:25,endwhile:26,enum:27,extends:28,final:29,finally:30,fn:31,for:32,foreach:33,from:34,function:35,global:36,goto:37,if:38,implements:39,include:40,include_once:41,instanceof:42,insteadof:43,interface:44,list:45,match:46,namespace:47,new:48,null:49,or:50,print:51,require:52,require_once:53,return:54,switch:55,throw:56,trait:57,try:58,unset:59,use:60,var:61,public:62,private:62,protected:62,while:63,xor:64,yield:65,__proto__:null};function keywords$1(O){let e=keywordMap[O.toLowerCase()];return null==e?-1:e}function isSpace$2(O){return 9==O||10==O||13==O||32==O}function isASCIILetter(O){return O>=97&&O<=122||O>=65&&O<=90}function isIdentifierStart(O){return 95==O||O>=128||isASCIILetter(O)}function isHex$1(O){return O>=48&&O<=55||O>=97&&O<=102||O>=65&&O<=70}const castTypes={int:!0,integer:!0,bool:!0,boolean:!0,float:!0,double:!0,real:!0,string:!0,array:!0,object:!0,unset:!0,__proto__:null},expression=new ExternalTokenizer((O=>{if(40==O.next){O.advance();let e=0;for(;isSpace$2(O.peek(e));)e++;let t,i="";for(;isASCIILetter(t=O.peek(e));)i+=String.fromCharCode(t),e++;for(;isSpace$2(O.peek(e));)e++;41==O.peek(e)&&castTypes[i.toLowerCase()]&&O.acceptToken(1)}else if(60==O.next&&60==O.peek(1)&&60==O.peek(2)){for(let e=0;e<3;e++)O.advance();for(;32==O.next||9==O.next;)O.advance();let e=39==O.next;if(e&&O.advance(),!isIdentifierStart(O.next))return;let t=String.fromCharCode(O.next);for(;O.advance(),isIdentifierStart(O.next)||O.next>=48&&O.next<=55;)t+=String.fromCharCode(O.next);if(e){if(39!=O.next)return;O.advance()}if(10!=O.next&&13!=O.next)return;for(;;){let e=10==O.next||13==O.next;if(O.advance(),O.next<0)return;if(e){for(;32==O.next||9==O.next;)O.advance();let e=!0;for(let i=0;i<t.length;i++){if(O.next!=t.charCodeAt(i)){e=!1;break}O.advance()}if(e)return O.acceptToken(2)}}}})),eofToken=new ExternalTokenizer((O=>{O.next<0&&O.acceptToken(266)})),semicolon=new ExternalTokenizer(((O,e)=>{63==O.next&&e.canShift(265)&&62==O.peek(1)&&O.acceptToken(265)}));function scanEscape(O){let e=O.peek(1);if(110==e||114==e||116==e||118==e||101==e||102==e||92==e||36==e||34==e||123==e)return 2;if(e>=48&&e<=55){let e,t=2;for(;t<5&&(e=O.peek(t))>=48&&e<=55;)t++;return t}if(120==e&&isHex$1(O.peek(2)))return isHex$1(O.peek(3))?4:3;if(117==e&&123==O.peek(2))for(let e=3;;e++){let t=O.peek(e);if(125==t)return 2==e?0:e+1;if(!isHex$1(t))break}return 0}const interpolated=new ExternalTokenizer(((O,e)=>{let t=!1;for(;!(34==O.next||O.next<0||36==O.next&&(isIdentifierStart(O.peek(1))||123==O.peek(1))||123==O.next&&36==O.peek(1));t=!0){if(92==O.next){let e=scanEscape(O);if(e){if(t)break;return O.acceptToken(3,e)}}else if(!t&&(91==O.next||45==O.next&&62==O.peek(1)&&isIdentifierStart(O.peek(2))||63==O.next&&45==O.peek(1)&&62==O.peek(2)&&isIdentifierStart(O.peek(3)))&&e.canShift(264))break;O.advance()}t&&O.acceptToken(263)})),phpHighlighting=styleTags({"Visibility abstract final static":tags$1.modifier,"for foreach while do if else elseif switch try catch finally return throw break continue default case":tags$1.controlKeyword,"endif endfor endforeach endswitch endwhile declare enddeclare goto match":tags$1.controlKeyword,"and or xor yield unset clone instanceof insteadof":tags$1.operatorKeyword,"function fn class trait implements extends const enum global interface use var":tags$1.definitionKeyword,"include include_once require require_once namespace":tags$1.moduleKeyword,"new from echo print array list as":tags$1.keyword,null:tags$1.null,Boolean:tags$1.bool,VariableName:tags$1.variableName,"NamespaceName/...":tags$1.namespace,"NamedType/...":tags$1.typeName,Name:tags$1.name,"CallExpression/Name":tags$1.function(tags$1.variableName),"LabelStatement/Name":tags$1.labelName,"MemberExpression/Name":tags$1.propertyName,"MemberExpression/VariableName":tags$1.special(tags$1.propertyName),"ScopedExpression/ClassMemberName/Name":tags$1.propertyName,"ScopedExpression/ClassMemberName/VariableName":tags$1.special(tags$1.propertyName),"CallExpression/MemberExpression/Name":tags$1.function(tags$1.propertyName),"CallExpression/ScopedExpression/ClassMemberName/Name":tags$1.function(tags$1.propertyName),"MethodDeclaration/Name":tags$1.function(tags$1.definition(tags$1.variableName)),"FunctionDefinition/Name":tags$1.function(tags$1.definition(tags$1.variableName)),"ClassDeclaration/Name":tags$1.definition(tags$1.className),UpdateOp:tags$1.updateOperator,ArithOp:tags$1.arithmeticOperator,LogicOp:tags$1.logicOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,ControlOp:tags$1.controlOperator,AssignOp:tags$1.definitionOperator,"$ ConcatOp":tags$1.operator,LineComment:tags$1.lineComment,BlockComment:tags$1.blockComment,Integer:tags$1.integer,Float:tags$1.float,String:tags$1.string,ShellExpression:tags$1.special(tags$1.string),"=> ->":tags$1.punctuation,"( )":tags$1.paren,"#[ [ ]":tags$1.squareBracket,"${ { }":tags$1.brace,"-> ?->":tags$1.derefOperator,", ; :: : \\":tags$1.separator,"PhpOpen PhpClose":tags$1.processingInstruction}),spec_Name={__proto__:null,static:311,STATIC:311,class:333,CLASS:333},parser$6=LRParser.deserialize({version:14,states:"$GSQ`OWOOQhQaOOP%oO`OOOOO#t'#H_'#H_O%tO#|O'#DtOOO#u'#Dw'#DwQ&SOWO'#DwO&XO$VOOOOQ#u'#Dx'#DxO&lQaO'#D|O(mQdO'#E}O(tQdO'#EQO*kQaO'#EWO,zQ`O'#ETO-PQ`O'#E^O/nQaO'#E^O/uQ`O'#EfO/zQ`O'#EoO*kQaO'#EoO0VQ`O'#HhO0[Q`O'#E{O0[Q`O'#E{OOQS'#Ic'#IcO0aQ`O'#EvOOQS'#IZ'#IZO2oQdO'#IWO6tQeO'#FUO*kQaO'#FeO*kQaO'#FfO*kQaO'#FgO*kQaO'#FhO*kQaO'#FhO*kQaO'#FkOOQO'#Id'#IdO7RQ`O'#FqOOQO'#Hi'#HiO7ZQ`O'#HOO7uQ`O'#FlO8QQ`O'#H]O8]Q`O'#FvO8eQaO'#FwO*kQaO'#GVO*kQaO'#GYO8}OrO'#G]OOQS'#Iq'#IqOOQS'#Ip'#IpOOQS'#IW'#IWO,zQ`O'#GdO,zQ`O'#GfO,zQ`O'#GkOhQaO'#GmO9UQ`O'#GnO9ZQ`O'#GqO9`Q`O'#GtO9eQeO'#GuO9eQeO'#GvO9eQeO'#GwO9oQ`O'#GxO9tQ`O'#GzO9yQaO'#G{O<YQ`O'#G|O<_Q`O'#G}O<dQ`O'#G}O9oQ`O'#HOO<iQ`O'#HQO<nQ`O'#HRO<sQ`O'#HSO<xQ`O'#HVO=TQ`O'#HWO9yQaO'#H[OOQ#u'#IV'#IVOOQ#u'#Ha'#HaQhQaOOO=fQ`O'#HPO7pQ`O'#HPO=kO#|O'#DrPOOO)CCw)CCwOOO#t-E;]-E;]OOO#u,5:c,5:cOOO#u'#H`'#H`O&XO$VOOO=vQ$VO'#IUOOOO'#IU'#IUQOOOOOOOQ#y,5:h,5:hO=}QaO,5:hOOQ#u,5:j,5:jO@eQaO,5:mO@lQaO,5;UO*kQaO,5;UO@sQ`O,5;VOCbQaO'#EsOOQS,5;^,5;^OCiQ`O,5;jOOQP'#F]'#F]O*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qO*kQaO,5;qOOQ#u'#Im'#ImOOQS,5<q,5<qOOQ#u,5:l,5:lOEbQ`O,5:rOEiQdO'#E}OF]Q`O'#FlOFeQ`O'#FlOFmQ`O,5:oOFrQaO'#E_OOQS,5:x,5:xOHyQ`O'#I]O9yQaO'#EaO9yQaO'#I]OOQS'#I]'#I]OIQQ`O'#I[OIYQ`O,5:xO-UQaO,5:xOI_QaO'#EgOOQS,5;Q,5;QOOQS,5;Z,5;ZOIiQ`O,5;ZOOQO,5>S,5>SOJ[QdO,5;gOOQO-E;f-E;fOL^Q`O,5;gOLcQpO,5;bO0aQ`O'#EyOLkQtO'#E}OOQS'#Ez'#EzOOQS'#Ib'#IbOM`QaO,5:wO*kQaO,5;nOOQS,5;p,5;pO*kQaO,5;pOMgQdO,5<POMwQdO,5<QONXQdO,5<RONiQdO,5<SO!!sQdO,5<SO!!zQdO,5<VO!#[Q`O'#FrO!#gQ`O'#IgO!#oQ`O,5<]OOQO-E;g-E;gO!#tQ`O'#IoO<_Q`O,5=iO!#|Q`O,5=iO9oQ`O,5=jO!$RQ`O,5=nO!$WQ`O,5=kO!$]Q`O,5=kO!$bQ`O'#FnO!$xQ`O,5<WO!%TQ`O,5<WO!%WQ`O,5?ZO!%]Q`O,5<WO!%eQ`O,5<bO!%mQdO'#GPO!%{QdO'#InO!&WQdO,5=wO!&`Q`O,5<bO!%WQ`O,5<bO!&hQdO,5<cO!&xQ`O,5<cO!'lQdO,5<qO!)nQdO,5<tO!*OOrO'#HsOOOQ'#It'#ItO*kQaO'#GbOOOQ'#Hs'#HsO!*pOrO,5<wOOQS,5<w,5<wO!*wQaO,5=OO!+OQ`O,5=QO!+WQeO,5=VO!+bQ`O,5=XO!+gQaO'#GoO!+WQeO,5=YO9yQaO'#GrO!+WQeO,5=]O!&WQdO,5=`O(tQdO,5=aOOQ#u,5=a,5=aO(tQdO,5=bOOQ#u,5=b,5=bO(tQdO,5=cOOQ#u,5=c,5=cO!+nQ`O,5=dO!+vQ`O,5=fO!+{QdO'#IvOOQS'#Iv'#IvO!&WQdO,5=gO>UQaO,5=hO!-eQ`O'#F}O!-jQdO'#IlO!&WQdO,5=iOOQ#u,5=j,5=jO!-uQ`O,5=lO!-xQ`O,5=mO!-}Q`O,5=nO!.YQdO,5=qOOQ#u,5=q,5=qO!.eQ`O,5=rO!.eQ`O,5=rO!.mQdO'#IwO!.{Q`O'#HXO!&WQdO,5=rO!/ZQ`O,5=rO!/fQdO'#IYO!&WQdO,5=vOOQ#u-E;_-E;_O!1RQ`O,5=kOOO#u,5:^,5:^O!1^O#|O,5:^OOO#u-E;^-E;^OOOO,5>p,5>pOOQ#y1G0S1G0SO!1fQ`O1G0XO*kQaO1G0XO!2xQ`O1G0pOOQS1G0p1G0pO!4[Q`O1G0pOOQS'#I_'#I_O*kQaO'#I_OOQS1G0q1G0qO!4cQ`O'#IaO!7lQ`O'#E}O!7yQaO'#EuOOQO'#Ia'#IaO!8TQ`O'#I`O!8]Q`O,5;_OOQS'#FQ'#FQOOQS1G1U1G1UO!8bQdO1G1]O!:dQdO1G1]O!<PQdO1G1]O!=lQdO1G1]O!?XQdO1G1]O!@tQdO1G1]O!BaQdO1G1]O!C|QdO1G1]O!EiQdO1G1]O!GUQdO1G1]O!HqQdO1G1]O!J^QdO1G1]O!KyQdO1G1]O!MfQdO1G1]O# RQdO1G1]O#!nQdO1G1]OOQT1G0^1G0^O!%WQ`O,5<WO#$ZQaO'#EXOOQS1G0Z1G0ZO#$bQ`O,5:yOFuQaO,5:yO#$gQaO,5:}O#$nQdO,5:{O#&jQdO,5>wO#(fQaO'#HdO#(vQ`O,5>vOOQS1G0d1G0dO#)OQ`O1G0dO#)TQ`O'#I^O#*mQ`O'#I^O#*uQ`O,5;ROIbQaO,5;ROOQS1G0u1G0uPOQO'#E}'#E}O#+fQdO1G1RO0aQ`O'#HgO#-hQtO,5;cO#.YQaO1G0|OOQS,5;e,5;eO#0iQtO,5;gO#0vQdO1G0cO*kQaO1G0cO#2cQdO1G1YO#4OQdO1G1[OOQO,5<^,5<^O#4`Q`O'#HjO#4nQ`O,5?ROOQO1G1w1G1wO#4vQ`O,5?ZO!&WQdO1G3TO<_Q`O1G3TOOQ#u1G3U1G3UO#4{Q`O1G3YO!1RQ`O1G3VO#5WQ`O1G3VO#5]QpO'#FoO#5kQ`O'#FoO#5{Q`O'#FoO#6WQ`O'#FoO#6`Q`O'#FsO#6eQ`O'#FtOOQO'#If'#IfO#6lQ`O'#IeO#6tQ`O,5<YOOQS1G1r1G1rO0aQ`O1G1rO#6yQ`O1G1rO#7OQ`O1G1rO!%WQ`O1G4uO#7ZQdO1G4uO!%WQ`O1G1rO#7iQ`O1G1|O!%WQ`O1G1|O9yQaO,5<kO#7qQdO'#HqO#8PQdO,5?YOOQ#u1G3c1G3cO*kQaO1G1|O0aQ`O1G1|O#8[QdO1G1}O7RQ`O'#FyO7RQ`O'#FzO#:nQ`O'#F{OOQS1G1}1G1}O!-xQ`O1G1}O!1UQ`O1G1}O!1RQ`O1G1}O#;eO`O,5<xO#;jO`O,5<xO#;uO!bO,5<yO#<TQ`O,5<|OOOQ-E;q-E;qOOQS1G2c1G2cO#<[QaO'#GeO#<uQ$VO1G2jO#AuQ`O1G2jO#BQQ`O'#GgO#B]Q`O'#GjOOQ#u1G2l1G2lO#BhQ`O1G2lOOQ#u'#Gl'#GlOOQ#u'#Iu'#IuOOQ#u1G2q1G2qO#BmQ`O1G2qO,zQ`O1G2sO#BrQaO,5=ZO#ByQ`O,5=ZOOQ#u1G2t1G2tO#COQ`O1G2tO#CTQ`O,5=^OOQ#u1G2w1G2wO#DgQ`O1G2wOOQ#u1G2z1G2zOOQ#u1G2{1G2{OOQ#u1G2|1G2|OOQ#u1G2}1G2}O#DlQ`O'#HxO9oQ`O'#HxO#DqQ$VO1G3OO#IwQ`O1G3QO9yQaO'#HwO#I|QdO,5=[OOQ#u1G3R1G3RO#JXQ`O1G3SO9yQaO,5<iO#J^QdO'#HpO#JlQdO,5?WOOQ#u1G3T1G3TOOQ#u1G3W1G3WO!-xQ`O1G3WOOQ#u1G3X1G3XO#KfQ`O'#HTOOQ#u1G3Y1G3YO#KmQ`O1G3YO0aQ`O1G3YOOQ#u1G3]1G3]O!&WQdO1G3^O#KrQ`O1G3^O#KzQdO'#HzO#L]QdO,5?cO#LhQ`O,5?cO#LmQ`O'#HYO7RQ`O'#HYO#LxQ`O'#IxO#MQQ`O,5=sOOQ#u1G3^1G3^O!.eQ`O1G3^O!.eQ`O1G3^O#MVQeO'#HbO#MgQdO,5>tOOQ#u1G3b1G3bOOQ#u1G3V1G3VO!-xQ`O1G3VO!1UQ`O1G3VOOO#u1G/x1G/xO*kQaO7+%sO#MuQdO7+%sOOQS7+&[7+&[O$ bQ`O,5>yO>UQaO,5;`O$ iQ`O,5;aO$#OQaO'#HfO$#YQ`O,5>zOOQS1G0y1G0yO$#bQ`O'#EYO$#gQ`O'#IXO$#oQ`O,5:sOOQS1G0e1G0eO$#tQ`O1G0eO$#yQ`O1G0iO9yQaO1G0iOOQO,5>O,5>OOOQO-E;b-E;bOOQS7+&O7+&OO>UQaO,5;SO$%`QaO'#HeO$%jQ`O,5>xOOQS1G0m1G0mO$%rQ`O1G0mOOQS,5>R,5>ROOQS-E;e-E;eO$%wQdO7+&hO$'yQtO1G1RO$(WQdO7+%}OOQS1G0i1G0iOOQO,5>U,5>UOOQO-E;h-E;hOOQ#u7+(o7+(oO!&WQdO7+(oOOQ#u7+(t7+(tO#KmQ`O7+(tO0aQ`O7+(tOOQ#u7+(q7+(qO!-xQ`O7+(qO!1UQ`O7+(qO!1RQ`O7+(qO$)sQ`O,5<ZO$*OQ`O,5<ZO$*WQ`O,5<_O$*]QpO,5<ZO>UQaO,5<ZOOQO,5<_,5<_O$*kQpO,5<`O$*sQ`O,5<`O$+OQ`O'#HkO$+iQ`O,5?POOQS1G1t1G1tO$+qQpO7+'^O$+yQ`O'#FuO$,UQ`O7+'^OOQS7+'^7+'^O0aQ`O7+'^O#6yQ`O7+'^O$,^QdO7+*aO0aQ`O7+*aO$,lQ`O7+'^O*kQaO7+'hO0aQ`O7+'hO$,wQ`O7+'hO$-PQdO1G2VOOQS,5>],5>]OOQS-E;o-E;oO$.iQdO7+'hO$.yQpO7+'hO$/RQdO'#IiOOQO,5<e,5<eOOQO,5<f,5<fO$/dQpO'#GOO$/lQ`O'#GOOOQO'#Ik'#IkOOQO'#Ho'#HoO$0]Q`O'#GOO<_Q`O'#F|O!&WQdO'#GOO!.YQdO'#GQO7RQ`O'#GROOQO'#Ij'#IjOOQO'#Hn'#HnO$0yQ`O,5<gOOQ#y,5<g,5<gOOQS7+'i7+'iO!-xQ`O7+'iO!1UQ`O7+'iOOOQ1G2d1G2dO$1pO`O1G2dO$1uO!bO1G2eO$2TO`O'#G`O$2YO`O1G2eOOOQ1G2h1G2hO$2_QaO,5=PO,zQ`O'#HtO$2xQ$VO7+(UOhQaO7+(UO,zQ`O'#HuO$7xQ`O7+(UO!&WQdO7+(UO$8TQ`O7+(UO$8YQaO'#GhO$:iQ`O'#GiOOQO'#Hv'#HvO$:qQ`O,5=ROOQ#u,5=R,5=RO$:|Q`O,5=UO!&WQdO7+(WO!&WQdO7+(]O!&WQdO7+(_O$;XQaO1G2uO$;`Q`O1G2uO$;eQaO1G2uO!&WQdO7+(`O9yQaO1G2xO!&WQdO7+(cO0aQ`O'#GyO9oQ`O,5>dOOQ#u,5>d,5>dOOQ#u-E;v-E;vO$;lQaO7+(lO$<TQdO,5>cOOQS-E;u-E;uO!&WQdO7+(nO$=mQdO1G2TOOQS,5>[,5>[OOQS-E;n-E;nOOQ#u7+(r7+(rO$?nQ`O'#GQO$?uQ`O'#GQO$@ZQ`O'#HUOOQO'#Hy'#HyO$@`Q`O,5=oOOQ#u,5=o,5=oO$@gQpO7+(tOOQ#u7+(x7+(xO!&WQdO7+(xO$@rQdO,5>fOOQS-E;x-E;xO$AQQdO1G4}O$A]Q`O,5=tO$AbQ`O,5=tO$AmQ`O'#H{O$BRQ`O,5?dOOQS1G3_1G3_O#KrQ`O7+(xO$BZQdO,5=|OOQS-E;`-E;`O$CvQdO<<I_OOQS1G4e1G4eO$EcQ`O1G0zOOQO,5>Q,5>QOOQO-E;d-E;dO$8YQaO,5:tO$FxQaO'#HcO$GVQ`O,5>sOOQS1G0_1G0_OOQS7+&P7+&PO$G_Q`O7+&TO$HtQ`O1G0nO$JZQ`O,5>POOQO,5>P,5>POOQO-E;c-E;cOOQS7+&X7+&XOOQS7+&T7+&TOOQ#u<<LZ<<LZOOQ#u<<L`<<L`O$@gQpO<<L`OOQ#u<<L]<<L]O!-xQ`O<<L]O!1UQ`O<<L]O>UQaO1G1uO$KsQ`O1G1uO$LOQ`O1G1yOOQO1G1y1G1yO$LTQ`O1G1uO$L]Q`O1G1uO$MrQ`O1G1zO>UQaO1G1zOOQO,5>V,5>VOOQO-E;i-E;iOOQS<<Jx<<JxO$M}Q`O'#IhO$NVQ`O'#IhO$N[Q`O,5<aO0aQ`O<<JxO$+qQpO<<JxO$NaQ`O<<JxO0aQ`O<<M{O$NiQtO<<M{O#6yQ`O<<JxO$NwQdO<<KSO% XQpO<<KSO*kQaO<<KSO0aQ`O<<KSO% aQdO'#HmO% xQdO,5?TO!&WQdO,5<jO$/dQpO,5<jO%!ZQ`O,5<jO<_Q`O,5<hO!.YQdO,5<lOOQO-E;m-E;mO!&WQdO,5<hOOQO,5<j,5<jOOQO,5<l,5<lO%!tQdO,5<mOOQO-E;l-E;lOOQ#y1G2R1G2ROOQS<<KT<<KTO!-xQ`O<<KTOOOQ7+(O7+(OO%#PO`O7+(POOOO,5<z,5<zOOOQ7+(P7+(POhQaO,5>`OOQ#u-E;r-E;rOhQaO<<KpOOQ#u<<Kp<<KpO$8TQ`O,5>aOOQO-E;s-E;sO!&WQdO<<KpO$8TQ`O<<KpO%#UQ`O<<KpO%#ZQ`O,5=SO%$pQaO,5=TOOQO-E;t-E;tOOQ#u1G2m1G2mOOQ#u<<Kr<<KrOOQ#u<<Kw<<KwOOQ#u<<Ky<<KyOOQT7+(a7+(aO%%QQ`O7+(aO%%VQaO7+(aO%%^Q`O7+(aOOQ#u<<Kz<<KzO%%cQ`O7+(dO%&xQ`O7+(dOOQ#u<<K}<<K}O%&}QpO,5=eOOQ#u1G4O1G4OO%'YQ`O<<LWOOQ#u<<LY<<LYO$?uQ`O,5<lO%'_Q`O,5=pO%'dQdO,5=pOOQO-E;w-E;wOOQ#u1G3Z1G3ZO#KmQ`O<<L`OOQ#u<<Ld<<LdO%'oQ`O1G4QO%'tQdO7+*iOOQO1G3`1G3`O%(PQ`O1G3`O%(UQ`O'#HZO7RQ`O'#HZOOQO,5>g,5>gOOQO-E;y-E;yO!&WQdO<<LdO%(aQ`O1G0`OOQO,5=},5=}OOQO-E;a-E;aO>UQaO,5;TOOQ#uANAzANAzO#KmQ`OANAzOOQ#uANAwANAwO!-xQ`OANAwO%)vQ`O7+'aO>UQaO7+'aOOQO7+'e7+'eO%+]Q`O7+'aO%+hQ`O7+'eO>UQaO7+'fO%+mQ`O7+'fO%-SQ`O'#HlO%-bQ`O,5?SO%-bQ`O,5?SOOQO1G1{1G1{O$+qQpOAN@dOOQSAN@dAN@dO0aQ`OAN@dO%-jQtOANCgO%-xQ`OAN@dO*kQaOAN@nO%.QQdOAN@nO%.bQpOAN@nOOQS,5>X,5>XOOQS-E;k-E;kOOQO1G2U1G2UO!&WQdO1G2UO$/dQpO1G2UO<_Q`O1G2SO!.YQdO1G2WO!&WQdO1G2SOOQO1G2W1G2WOOQO1G2S1G2SO%.jQaO'#GSOOQO1G2X1G2XOOQSAN@oAN@oOOOQ<<Kk<<KkOOQ#u1G3z1G3zOOQ#uANA[ANA[OOQO1G3{1G3{O%0iQ`OANA[O!&WQdOANA[O%0nQaO1G2nO%1OQaO1G2oOOQT<<K{<<K{O%1`Q`O<<K{O%1eQaO<<K{O*kQaO,5=_OOQT<<LO<<LOOOQO1G3P1G3PO%1lQ`O1G3PO!+WQeOANArO%1qQdO1G3[OOQO1G3[1G3[O%1|Q`O1G3[OOQS7+)l7+)lOOQO7+(z7+(zO%2UQ`O,5=uO%2ZQ`O,5=uOOQ#uANBOANBOO%2fQ`O1G0oOOQ#uG27fG27fOOQ#uG27cG27cO%3{Q`O<<J{O>UQaO<<J{OOQO<<KP<<KPO%5bQ`O<<KQOOQO,5>W,5>WO%6wQ`O,5>WOOQO-E;j-E;jO%6|Q`O1G4nOOQSG26OG26OO$+qQpOG26OO0aQ`OG26OO%7UQdOG26YO*kQaOG26YOOQO7+'p7+'pO!&WQdO7+'pO!&WQdO7+'nOOQO7+'r7+'rOOQO7+'n7+'nO%7fQ`OLD+tO%8uQ`O'#E}O%9PQ`O'#IZO!&WQdO'#HrO%:|QaO,5<nOOQO,5<n,5<nO!&WQdOG26vOOQ#uG26vG26vO%<{QaO7+(YOOQTANAgANAgO%=]Q`OANAgO%=bQ`O1G2yOOQO7+(k7+(kOOQ#uG27^G27^O%=iQ`OG27^OOQO7+(v7+(vO%=nQ`O7+(vO!&WQdO7+(vOOQO1G3a1G3aO%=vQ`O1G3aO%={Q`OAN@gOOQO1G3r1G3rOOQSLD+jLD+jO$+qQpOLD+jO%?bQdOLD+tOOQO<<K[<<K[OOQO<<KY<<KYO%?rQ`O,5<oO%?wQ`O,5<pOOQP,5>^,5>^OOQP-E;p-E;pOOQO1G2Y1G2YOOQ#uLD,bLD,bOOQTG27RG27RO!&WQdOLD,xO!&WQdO<<LbOOQO<<Lb<<LbOOQO7+({7+({OOQS!$( U!$( UOOQS1G2Z1G2ZOOQS1G2[1G2[O%@PQdO1G2[OOQ#u!$(!d!$(!dOOQOANA|ANA|OOQS7+'v7+'vO%@[Q`O'#E{O%@[Q`O'#E{O%@aQ`O,5;gO%@fQdO,5<cO%BbQaO,5:}O*kQaO1G0iO%BiQaO'#FwO#.YQaO'#GVO#.YQaO'#GYO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO#.YQaO,5;qO%BpQdO'#I]O%D`QdO'#I]O#.YQaO'#EaO#.YQaO'#I]O%FbQaO,5:wO#.YQaO,5;nO#.YQaO,5;pO%FiQdO,5<PO%HeQdO,5<QO%JaQdO,5<RO%L]QdO,5<SO%NXQdO,5<SO%NoQdO,5<VO&!kQdO,5<tO#.YQaO1G0XO&$gQdO1G1]O&&cQdO1G1]O&(_QdO1G1]O&*ZQdO1G1]O&,VQdO1G1]O&.RQdO1G1]O&/}QdO1G1]O&1yQdO1G1]O&3uQdO1G1]O&5qQdO1G1]O&7mQdO1G1]O&9iQdO1G1]O&;eQdO1G1]O&=aQdO1G1]O&?]QdO1G1]O&AXQdO,5:{O&CTQdO,5>wO&EPQdO1G0cO#.YQaO1G0cO&F{QdO1G1YO&HwQdO1G1[O#.YQaO1G1|O#.YQaO7+%sO&JsQdO7+%sO&LoQdO7+%}O#.YQaO7+'hO&NkQdO7+'hO'!gQdO<<I_O'$cQdO<<KSO#.YQaO<<KSO#.YQaOAN@nO'&_QdOAN@nO'(ZQdOG26YO#.YQaOG26YO'*VQdOLD+tO',RQaO,5:}O'.QQaO1G0iO'/|QdO'#IWO'0aQeO'#FUO'4aQeO'#FUO#.YQaO'#FeO'.QQaO'#FeO#.YQaO'#FfO'.QQaO'#FfO#.YQaO'#FgO'.QQaO'#FgO#.YQaO'#FhO'.QQaO'#FhO#.YQaO'#FhO'.QQaO'#FhO#.YQaO'#FkO'.QQaO'#FkO'8gQaO,5:mO'8nQ`O,5<bO'8vQ`O1G0XO'.QQaO1G0|O':YQ`O1G1|O':bQ`O7+'hO':jQpO7+'hO':rQpO<<KSO':zQpOAN@nO';SQaO'#FwO'.QQaO'#GVO'.QQaO'#GYO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO,5;qO'.QQaO'#EaO'.QQaO'#I]O'=RQaO,5:wO'.QQaO,5;nO'.QQaO,5;pO'?QQdO,5<PO'ASQdO,5<QO'CUQdO,5<RO'EWQdO,5<SO'GYQdO,5<SO'GvQdO,5<VO'IxQdO,5<tO'.QQaO1G0XO'KzQdO1G1]O'M|QdO1G1]O(!OQdO1G1]O($QQdO1G1]O(&SQdO1G1]O((UQdO1G1]O(*WQdO1G1]O(,YQdO1G1]O(.[QdO1G1]O(0^QdO1G1]O(2`QdO1G1]O(4bQdO1G1]O(6dQdO1G1]O(8fQdO1G1]O(:hQdO1G1]O(<jQdO,5:{O(>lQdO,5>wO(@nQdO1G0cO'.QQaO1G0cO(BpQdO1G1YO(DrQdO1G1[O'.QQaO1G1|O'.QQaO7+%sO(FtQdO7+%sO(HvQdO7+%}O'.QQaO7+'hO(JxQdO7+'hO(LzQdO<<I_O(N|QdO<<KSO'.QQaO<<KSO'.QQaOAN@nO)#OQdOAN@nO)%QQdOG26YO'.QQaOG26YO)'SQdOLD+tO))UQaO,5:}O#.YQaO1G0iO))]Q`O'#FvO))eQpO,5;bO))mQ`O,5<bO!%WQ`O,5<bO!%WQ`O1G1|O0aQ`O1G1|O0aQ`O7+'hO0aQ`O<<KSO))uQdO,5<cO)+wQdO'#I]O)-vQdO'#IWO).aQaO,5:mO).hQ`O,5<bO).pQ`O1G0XO)0SQ`O1G1|O)0[Q`O7+'hO)0dQpO7+'hO)0lQpO<<KSO)0tQpOAN@nO0aQ`O'#EvO9yQaO'#FeO9yQaO'#FfO9yQaO'#FgO9yQaO'#FhO9yQaO'#FhO9yQaO'#FkO)0|QaO'#FwO9yQaO'#GVO9yQaO'#GYO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO9yQaO,5;qO)1TQ`O'#FlO*kQaO'#EaO*kQaO'#I]O)1]QaO,5:wO9yQaO,5;nO9yQaO,5;pO)1dQdO,5<PO)3`QdO,5<QO)5[QdO,5<RO)7WQdO,5<SO)9SQdO,5<SO)9jQdO,5<VO);fQdO,5<cO)=bQdO,5<tO)?^Q`O'#IvO)@sQ`O'#IYO9yQaO1G0XO)BYQdO1G1]O)DUQdO1G1]O)FQQdO1G1]O)G|QdO1G1]O)IxQdO1G1]O)KtQdO1G1]O)MpQdO1G1]O* lQdO1G1]O*#hQdO1G1]O*%dQdO1G1]O*'`QdO1G1]O*)[QdO1G1]O*+WQdO1G1]O*-SQdO1G1]O*/OQdO1G1]O*0zQaO,5:}O*1RQdO,5:{O*1cQdO,5>wO*1sQaO'#HdO*2TQ`O,5>vO*2]QdO1G0cO9yQaO1G0cO*4XQdO1G1YO*6TQdO1G1[O9yQaO1G1|O>UQaO'#HwO*8PQ`O,5=[O*8XQaO'#HbO*8cQ`O,5>tO9yQaO7+%sO*8kQdO7+%sO*:gQ`O1G0iO>UQaO1G0iO*;|QdO7+%}O9yQaO7+'hO*=xQdO7+'hO*?tQ`O,5>cO*AZQ`O,5=|O*BpQdO<<I_O*DlQ`O7+&TO*FRQdO<<KSO9yQaO<<KSO9yQaOAN@nO*G}QdOAN@nO*IyQdOG26YO9yQaOG26YO*KuQdOLD+tO*MqQaO,5:}O9yQaO1G0iO*MxQdO'#I]O*NcQ`O'#FvO*NkQ`O,5<bO!%WQ`O,5<bO!%WQ`O1G1|O0aQ`O1G1|O0aQ`O7+'hO0aQ`O<<KSO*NsQdO'#IWO+ ^QeO'#FUO+ zQaO'#FUO+#sQaO'#FUO+%`QaO'#FUO>UQaO'#FeO>UQaO'#FfO>UQaO'#FgO>UQaO'#FhO>UQaO'#FhO>UQaO'#FkO+'XQaO'#FwO>UQaO'#GVO>UQaO'#GYO+'`QaO,5:mO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO+'gQ`O'#I]O$8YQaO'#EaO+)PQaOG26YO$8YQaO'#I]O+*{Q`O'#I[O++TQaO,5:wO>UQaO,5;nO>UQaO,5;pO++[Q`O,5<PO+,wQ`O,5<QO+.dQ`O,5<RO+0PQ`O,5<SO+1lQ`O,5<SO+3XQ`O,5<VO+4tQ`O,5<bO+4|Q`O,5<cO+6iQ`O,5<tO+8UQ`O1G0XO>UQaO1G0XO+9hQ`O1G1]O+;TQ`O1G1]O+<pQ`O1G1]O+>]Q`O1G1]O+?xQ`O1G1]O+AeQ`O1G1]O+CQQ`O1G1]O+DmQ`O1G1]O+FYQ`O1G1]O+GuQ`O1G1]O+IbQ`O1G1]O+J}Q`O1G1]O+LjQ`O1G1]O+NVQ`O1G1]O, rQ`O1G1]O,#_Q`O1G0cO>UQaO1G0cO,$zQ`O1G1YO,&gQ`O1G1[O,(SQ`O1G1|O>UQaO1G1|O>UQaO7+%sO,([Q`O7+%sO,)wQ`O7+%}O>UQaO7+'hO,+dQ`O7+'hO,+lQ`O7+'hO,-XQpO7+'hO,-aQ`O<<I_O,.|Q`O<<KSO,0iQpO<<KSO>UQaO<<KSO>UQaOAN@nO,0qQ`OAN@nO,2^QpOAN@nO,2fQ`OG26YO>UQaOG26YO,4RQ`OLD+tO,5nQaO,5:}O>UQaO1G0iO,5uQ`O'#I]O$8YQaO'#FeO$8YQaO'#FfO$8YQaO'#FgO$8YQaO'#FhO$8YQaO'#FhO+)PQaO'#FhO$8YQaO'#FkO,6SQaO'#FwO,6ZQaO'#FwO$8YQaO'#GVO+)PQaO'#GVO$8YQaO'#GYO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO,8YQ`O'#FlO>UQaO'#EaO>UQaO'#I]O,8bQaO,5:wO,8iQaO,5:wO$8YQaO,5;nO+)PQaO,5;nO$8YQaO,5;pO,:hQ`O,5<PO,<TQ`O,5<QO,=pQ`O,5<RO,?]Q`O,5<SO,@xQ`O,5<SO,BeQ`O,5<SO,CtQ`O,5<VO,EaQ`O,5<cO%7fQ`O,5<cO,F|Q`O,5<tO$8YQaO1G0XO+)PQaO1G0XO,HiQ`O1G1]O,JUQ`O1G1]O,KeQ`O1G1]O,MQQ`O1G1]O,NaQ`O1G1]O- |Q`O1G1]O-#]Q`O1G1]O-$xQ`O1G1]O-&XQ`O1G1]O-'tQ`O1G1]O-)TQ`O1G1]O-*pQ`O1G1]O-,PQ`O1G1]O--lQ`O1G1]O-.{Q`O1G1]O-0hQ`O1G1]O-1wQ`O1G1]O-3dQ`O1G1]O-4sQ`O1G1]O-6`Q`O1G1]O-7oQ`O1G1]O-9[Q`O1G1]O-:kQ`O1G1]O-<WQ`O1G1]O-=gQ`O1G1]O-?SQ`O1G1]O-@cQ`O1G1]O-BOQ`O1G1]O-C_Q`O1G1]O-DzQ`O1G1]O-FZQ`O,5:{O-GvQ`O,5>wO-IcQ`O1G0cO-KOQ`O1G0cO$8YQaO1G0cO+)PQaO1G0cO-L_Q`O1G1YO-MzQ`O1G1YO. ZQ`O1G1[O$8YQaO1G1|O$8YQaO7+%sO+)PQaO7+%sO.!vQ`O7+%sO.$cQ`O7+%sO.%rQ`O7+%}O.'_Q`O7+%}O$8YQaO7+'hO.(nQ`O7+'hO.*ZQ`O<<I_O.+vQ`O<<I_O.-VQ`O<<KSO$8YQaO<<KSO$8YQaOAN@nO..rQ`OAN@nO.0_Q`OG26YO$8YQaOG26YO.1zQ`OLD+tO.3gQaO,5:}O.3nQaO,5:}O$8YQaO1G0iO+)PQaO1G0iO.5mQ`O'#I]O.7PQ`O'#I]O.:fQ`O'#IWO.:vQ`O'#FvO.;OQaO,5:mO.;VQ`O,5<bO.;_Q`O,5<bO!%WQ`O,5<bO.;gQ`O1G0XO.<yQ`O,5:{O.>fQ`O,5>wO.@RQ`O1G1|O!%WQ`O1G1|O0aQ`O1G1|O0aQ`O7+'hO.@ZQ`O7+'hO.@cQpO7+'hO.@kQpO<<KSO0aQ`O<<KSO.@sQpOAN@nO.@{Q`O'#IWO.A]Q`O'#IWO.CSQaO,5:mO.CZQaO,5:mO.CbQ`O,5<bO.CjQ`O7+'hO.CrQ`O1G0XO.EUQ`O1G0XO.FhQ`O1G1|O.FpQ`O7+'hO.FxQpO7+'hO.GQQpOAN@nO.GYQpO<<KSO.GbQpOAN@nO.GjQ`O'#FvO.GrQ`O'#FlO.GzQ`O,5<bO!%WQ`O,5<bO!%WQ`O1G1|O0aQ`O1G1|O0aQ`O7+'hO0aQ`O<<KSO.HSQ`O'#FvO.H[Q`O,5<bO.HdQ`O,5<bO!%WQ`O,5<bO!%WQ`O1G1|O!%WQ`O1G1|O0aQ`O1G1|O0aQ`O<<KSO0aQ`O7+'hO0aQ`O<<KSO.HlQ`O'#FlO.HtQ`O'#FlO.H|Q`O'#Fl",stateData:".Ic~O!dOS!eOS&vOS!gQQ~O!iTO&wRO~OPgOQ|OS!lOU^OW}OX!XO[mO]!_O^!WO`![Oa!SOb!]Ok!dOm!lOowOp!TOq!UOsuOt!gOu!VOv!POxkOykO|!bO}`O!O]O!P!eO!QxO!R}O!TpO!UlO!VlO!W!YO!X!QO!YzO!Z!cO![!ZO!]!^O!^!fO!`!`O!a!RO!cjO!mWO!oXO!sYO!y[O#W_O#bhO#daO#ebO#peO$ToO$]nO$^oO$aqO$drO$l!kO$zyO${!OO$}}O%O}O%V|O'g{O~O!g!mO~O&wRO!i!hX&p!hX&t!hX~O!i!pO~O!d!qO!e!qO!g!mO&t!tO&v!qO~PhO!n!vO~PhOT'VXz'VX!S'VX!b'VX!m'VX!o'VX!v'VX!y'VX#S'VX#W'VX#`'VX#a'VX#p#qX#s'VX#z'VX#{'VX#|'VX#}'VX$O'VX$Q'VX$R'VX$S'VX$T'VX$U'VX$V'VX$W'VX$z'VX&s'VX~O!q!xO~P&sOT#TOz#RO!S#UO!b#VO!m#cO!o!{O!v!yO!y!}O#S#QO#W!zO#`!|O#a!|O#s#PO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO&s#cO~OPgOQ|OU^OW}O[mOowOs#hOxkOykO}`O!O]O!QxO!R}O!TpO!UlO!VlO!YzO!cjO!s#gO!y[O#W_O#bhO#daO#ebO#peO$ToO$]nO$^oO$aqO$zyO${!OO$}}O%O}O%V|O'g{O~O!y[O~O!y#kO~OP6]OQ|OU^OW}O[6`Oo=YOs#hOx6^Oy6^O}`O!O]O!Q6dO!R}O!T6cO!U6_O!V6_O!Y6fO!c8fO!s#gO!y[O#S#oO#U#nO#W_O#bhO#daO#ebO#peO$T6bO$]6aO$^6bO$aqO$z6eO${!OO$}}O%O}O%V|O'g{O#X'OP~O!}#sO~P-UO!y#tO~O#b#vO#daO#ebO~O#p#xO~O!s#yO~OU$PO!R$PO!s$OO!v#}O#p2XO~OT&zXz&zX!S&zX!b&zX!m&zX!o&zX!v&zX!y&zX#S&zX#W&zX#`&zX#a&zX#s&zX#z&zX#{&zX#|&zX#}&zX$O&zX$Q&zX$R&zX$S&zX$T&zX$U&zX$V&zX$W&zX$z&zX&s&zX!x&zX!n&zX~O#u$RO#w$SO~P0rOP6]OQ|OU^OW}O[6`Oo=YOs#hOx6^Oy6^O}`O!O]O!Q6dO!R}O!T6cO!U6_O!V6_O!Y6fO!c8fO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T6bO$]6aO$^6bO$aqO$z6eO${!OO$}}O%O}O%V|O'g{OT#xXz#xX!S#xX!b#xX!m#xX!o#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX&s#xX!x#xX!n#xX~Or$UO#S6yO#U6xO~P2yO!s#gO#peO~OS$gO]$bOk$eOm$gOs$aO!`$cO$drO$l$fO~O!s$kO!y$hO#S$jO~Oo$mOs$lO#b$nO~O!y$hO#S$rO~O$l$tO~P*kOR$zO!o$yO#b$xO#e$yO&q$zO~O'f$|O~P8lO!y%RO~O!y%TO~O!s%VO~O!m#cO&s#cO~P*kO!oXO~O!y%_O~OP6]OQ|OU^OW}O[6`Oo=YOs#hOx6^Oy6^O}`O!O]O!Q6dO!R}O!T6cO!U6_O!V6_O!Y6fO!c8fO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T6bO$]6aO$^6bO$aqO$z6eO${!OO$}}O%O}O%V|O'g{O~O!y%cO~O!s%dO~O]$bO~O!s%hO~O!s%iO~O!s%jO~O!oXO!s#gO#peO~O]%rOs%rO!o%pO!s#gO#p%nO~O!s%vO~O!i%wO&t%wO&wRO~O&t%zO~PhO!n%{O~PhOPgOQ|OU^OW}O[8lOo=yOs#hOx8jOy8jO}`O!O]O!Q8pO!R}O!T8oO!U8kO!V8kO!Y8rO!c8iO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T8nO$]8mO$^8nO$aqO$z8qO${!OO$}}O%O}O%V|O'g{O~O!q%}O~P>UO#X&PO~P>UO!o&SO!s&RO#b&RO~OPgOQ|OU^OW}O[8lOo=yOs#hOx8jOy8jO}`O!O]O!Q8pO!R}O!T8oO!U8kO!V8kO!Y8rO!c8iO!s&VO!y[O#U&WO#W_O#bhO#daO#ebO#peO$T8nO$]8mO$^8nO$aqO$z8qO${!OO$}}O%O}O%V|O'g{O~O!x'SP~PAOO!s&[O#b&[O~OT#TOz#RO!S#UO!b#VO!o!{O!v!yO!y!}O#S#QO#W!zO#`!|O#a!|O#s#PO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO~O!x&nO~PCqO!x'VX!}'VX#O'VX#X'VX!n'VXV'VX!q'VX#u'VX#w'VXw'VX~P&sO!y$hO#S&oO~Oo$mOs$lO~O!o&pO~O!}&sO#S;dO#U;cO!x'OP~P9yOT6iOz6gO!S6jO!b6kO!o!{O!v8sO!y!}O#S#QO#W!zO#`!|O#a!|O#s#PO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}'PX#X'PX~O#O&tO~PGSO!}&wO#X'OX~O#X&yO~O!}'OO!x'QP~P9yO!n'PO~PCqO!m#oa!o#oa#S#oa#p#qX&s#oa!x#oa#O#oaw#oa~OT#oaz#oa!S#oa!b#oa!v#oa!y#oa#W#oa#`#oa#a#oa#s#oa#z#oa#{#oa#|#oa#}#oa$O#oa$Q#oa$R#oa$S#oa$T#oa$U#oa$V#oa$W#oa$z#oa!}#oa#X#oa!n#oaV#oa!q#oa#u#oa#w#oa~PIpO!s'RO~O!x'UO#l'SO~O!x'VX#l'VX#p#qX#S'VX#U'VX#b'VX!o'VX#O'VXw'VX!m'VX&s'VX~O#S'YO~P*kO!m$Xa&s$Xa!x$Xa!n$Xa~PCqO!m$Ya&s$Ya!x$Ya!n$Ya~PCqO!m$Za&s$Za!x$Za!n$Za~PCqO!m$[a&s$[a!x$[a!n$[a~PCqO!o!{O!y!}O#W!zO#`!|O#a!|O#s#PO$z#dOT$[a!S$[a!b$[a!m$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a&s$[a!x$[a!n$[a~Oz#RO~PNyO!m$_a&s$_a!x$_a!n$_a~PCqO!y!}O!}$fX#X$fX~O!}'^O#X'ZX~O#X'`O~O!s$kO#S'aO~O]'cO~O!s'eO~O!s'fO~O$l'gO~O!`'mO#S'kO#U'lO#b'jO$drO!x'XP~P0aO!^'sO!oXO!q'rO~O!s'uO!y$hO~O!y$hO#S'wO~O!y$hO#S'yO~O#u'zO!m$sX!}$sX&s$sX~O!}'{O!m'bX&s'bX~O!m#cO&s#cO~O!q(PO#O(OO~O!m$ka&s$ka!x$ka!n$ka~PCqOl(ROw(SO!o(TO!y!}O~O!o!{O!y!}O#W!zO#`!|O#a!|O#s#PO~OT$yaz$ya!S$ya!b$ya!m$ya!v$ya#S$ya#z$ya#{$ya#|$ya#}$ya$O$ya$Q$ya$R$ya$S$ya$T$ya$U$ya$V$ya$W$ya$z$ya&s$ya!x$ya!}$ya#O$ya#X$ya!n$ya!q$yaV$ya#u$ya#w$ya~P!'WO!m$|a&s$|a!x$|a!n$|a~PCqO#W([O#`(YO#a(YO&r(ZOR&gX!o&gX#b&gX#e&gX&q&gX'f&gX~O'f(_O~P8lO!q(`O~PhO!o(cO!q(dO~O!q(`O&s(gO~PhO!a(kO~O!m(lO~P9yOZ(wOn(xO~O!s(zO~OT6iOz6gO!S6jO!b6kO!v8sO!}({O#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'jX&s'jX~P!'WO#u)PO~O!})QO!m'`X&s'`X~Ol(RO!o(TO~Ow(SO!o)WO!q)ZO~O!m#cO!oXO&s#cO~O!o%pO!s#yO~OV)aO!})_O!m'kX&s'kX~O])cOs)cO!s#gO#peO~O!o%pO!s#gO#p)hO~OT6iOz6gO!S6jO!b6kO!v8sO!})iO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&|X&s&|X#O&|X~P!'WOl(ROw(SO!o(TO~O!i)oO&t)oO~OT8vOz8tO!S8wO!b8xO!q)pO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#X)rO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!n)rO~PCqOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x'TX!}'TX~P!'WOT'VXz'VX!S'VX!b'VX!o'VX!v'VX!y'VX#S'VX#W'VX#`'VX#a'VX#p#qX#s'VX#z'VX#{'VX#|'VX#}'VX$O'VX$Q'VX$R'VX$S'VX$T'VX$U'VX$V'VX$W'VX$z'VX~O!q)tO!x'VX!}'VX~P!5xO!x#iX!}#iX~P>UO!})vO!x'SX~O!x)xO~O$z#dOT#yiz#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi$W#yi&s#yi!x#yi!}#yi#O#yi#X#yi!n#yi!q#yiV#yi#u#yi#w#yi~P!'WOz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi&s#yi!x#yi!n#yi~P!'WOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi&s#yi!x#yi!n#yi~P!'WOT#TOz#RO!b#VO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO!S#yi!m#yi&s#yi!x#yi!n#yi~P!'WOT#TOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO!S#yi!b#yi!m#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi#}#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi~P!'WOz#RO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi~P!'WOz#RO$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi&s#yi!x#yi!n#yi~P!'WOz#RO$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi&s#yi!x#yi!n#yi~P!'WOz#RO$T#`O$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$S#_O$T#`O$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi&s#yi!x#yi!n#yi~P!'WO_)yO~P9yO!x)|O~O#S*PO~P9yOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Ta#X#Ta#O#Ta!m#Ta&s#Ta!x#Ta!n#TaV#Ta!q#Ta~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}'Pa#X'Pa#O'Pa!m'Pa&s'Pa!x'Pa!n'PaV'Pa!q'Pa~P!'WO#S#oO#U#nO!}&WX#X&WX~P9yO!}&wO#X'Oa~O#X*SO~OT6iOz6gO!S6jO!b6kO!v8sO!}*UO#O*TO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x'QX~P!'WO!}*UO!x'QX~O!x*WO~O!m#oi!o#oi#S#oi#p#qX&s#oi!x#oi#O#oiw#oi~OT#oiz#oi!S#oi!b#oi!v#oi!y#oi#W#oi#`#oi#a#oi#s#oi#z#oi#{#oi#|#oi#}#oi$O#oi$Q#oi$R#oi$S#oi$T#oi$U#oi$V#oi$W#oi$z#oi!}#oi#X#oi!n#oiV#oi!q#oi#u#oi#w#oi~P#*zO#l'SO!x#ka#S#ka#U#ka#b#ka!o#ka#O#kaw#ka!m#ka&s#ka~OPgOQ|OU^OW}O[4OOo5xOs#hOx3zOy3zO}`O!O]O!Q2^O!R}O!T4UO!U3|O!V3|O!Y2`O!c3xO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4SO$]4QO$^4SO$aqO$z2_O${!OO$}}O%O}O%V|O'g{O~O#l#oa#U#oa#b#oa~PIpOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#Pi!S#Pi!b#Pi!m#Pi&s#Pi!x#Pi!n#Pi~P!'WOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#vi!S#vi!b#vi!m#vi&s#vi!x#vi!n#vi~P!'WO!m#xi&s#xi!x#xi!n#xi~PCqO!s#gO#peO!}&^X#X&^X~O!}'^O#X'Za~O!s'uO~Ow(SO!o)WO!q*fO~O!s*jO~O#S*lO#U*mO#b*kO#l'SO~O#S*lO#U*mO#b*kO$drO~P0aO#u*oO!x$cX!}$cX~O#U*mO#b*kO~O#b*pO~O#b*rO~P0aO!}*sO!x'XX~O!x*uO~O!y*wO~O!^*{O!oXO!q*zO~O!q*}O!o'ci!m'ci&s'ci~O!q+QO#O+PO~O#b$nO!m&eX!}&eX&s&eX~O!}'{O!m'ba&s'ba~OT$kiz$ki!S$ki!b$ki!m$ki!o$ki!v$ki!y$ki#S$ki#W$ki#`$ki#a$ki#s$ki#u#fa#w#fa#z$ki#{$ki#|$ki#}$ki$O$ki$Q$ki$R$ki$S$ki$T$ki$U$ki$V$ki$W$ki$z$ki&s$ki!x$ki!}$ki#O$ki#X$ki!n$ki!q$kiV$ki~OS+^O]+aOm+^Os$aO!^+dO!_+^O!`+^O!n+hO#b$nO$aqO$drO~P0aO!s+lO~O#W+nO#`+mO#a+mO~O!s+pO#b+pO$}+pO%T+oO~O!n+qO~PCqOc%XXd%XXh%XXj%XXf%XXg%XXe%XX~PhOc+uOd+sOP%WiQ%WiS%WiU%WiW%WiX%Wi[%Wi]%Wi^%Wi`%Wia%Wib%Wik%Wim%Wio%Wip%Wiq%Wis%Wit%Wiu%Wiv%Wix%Wiy%Wi|%Wi}%Wi!O%Wi!P%Wi!Q%Wi!R%Wi!T%Wi!U%Wi!V%Wi!W%Wi!X%Wi!Y%Wi!Z%Wi![%Wi!]%Wi!^%Wi!`%Wi!a%Wi!c%Wi!m%Wi!o%Wi!s%Wi!y%Wi#W%Wi#b%Wi#d%Wi#e%Wi#p%Wi$T%Wi$]%Wi$^%Wi$a%Wi$d%Wi$l%Wi$z%Wi${%Wi$}%Wi%O%Wi%V%Wi&p%Wi'g%Wi&t%Wi!n%Wih%Wij%Wif%Wig%WiY%Wi_%Wii%Wie%Wi~Oc+yOd+vOh+xO~OY+zO_+{O!n,OO~OY+zO_+{Oi%^X~Oi,QO~Oj,RO~O!m,TO~P9yO!m,VO~Of,WO~OT6iOV,XOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WOg,YO~O!y,ZO~OZ(wOn(xOP%liQ%liS%liU%liW%liX%li[%li]%li^%li`%lia%lib%lik%lim%lio%lip%liq%lis%lit%liu%liv%lix%liy%li|%li}%li!O%li!P%li!Q%li!R%li!T%li!U%li!V%li!W%li!X%li!Y%li!Z%li![%li!]%li!^%li!`%li!a%li!c%li!m%li!o%li!s%li!y%li#W%li#b%li#d%li#e%li#p%li$T%li$]%li$^%li$a%li$d%li$l%li$z%li${%li$}%li%O%li%V%li&p%li'g%li&t%li!n%lic%lid%lih%lij%lif%lig%liY%li_%lii%lie%li~O#u,_O~O!}({O!m%da&s%da~O!x,bO~O!s%dO!m&dX!}&dX&s&dX~O!})QO!m'`a&s'`a~OS+^OY,iOm+^Os$aO!^+dO!_+^O!`+^O$aqO$drO~O!n,lO~P#JwO!o)WO~O!o%pO!s'RO~O!s#gO#peO!m&nX!}&nX&s&nX~O!})_O!m'ka&s'ka~O!s,rO~OV,sO!n%|X!}%|X~O!},uO!n'lX~O!n,wO~O!m&UX!}&UX&s&UX#O&UX~P9yO!})iO!m&|a&s&|a#O&|a~Oz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT!uq!S!uq!b!uq!m!uq!v!uq&s!uq!x!uq!n!uq~P!'WO!n,|O~PCqOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#ia!}#ia~P!'WO!x&YX!}&YX~PAOO!})vO!x'Sa~O#O-QO~O!}-RO!n&{X~O!n-TO~O!x-UO~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Vi#X#Vi~P!'WO!x&XX!}&XX~P9yO!}*UO!x'Qa~O!x-[O~OT#jqz#jq!S#jq!b#jq!m#jq!v#jq#S#jq#u#jq#w#jq#z#jq#{#jq#|#jq#}#jq$O#jq$Q#jq$R#jq$S#jq$T#jq$U#jq$V#jq$W#jq$z#jq&s#jq!x#jq!}#jq#O#jq#X#jq!n#jq!q#jqV#jq~P!'WO#l#oi#U#oi#b#oi~P#*zOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#Pq!S#Pq!b#Pq!m#Pq&s#Pq!x#Pq!n#Pq~P!'WO#u-dO!x$ca!}$ca~O#U-fO#b-eO~O#b-gO~O#S-hO#U-fO#b-eO#l'SO~O#b-jO#l'SO~O#u-kO!x$ha!}$ha~O!`'mO#S'kO#U'lO#b'jO$drO!x&_X!}&_X~P0aO!}*sO!x'Xa~O!oXO#l'SO~O#S-pO#b-oO!x'[P~O!oXO!q-rO~O!q-uO!o'cq!m'cq&s'cq~O!^-wO!oXO!q-rO~O!q-{O#O-zO~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m$si!}$si&s$si~P!'WO!m$jq&s$jq!x$jq!n$jq~PCqO#O-zO#l'SO~O!}-|Ow']X!o']X!m']X&s']X~O#b$nO#l'SO~OS+^O].ROm+^Os$aO!_+^O!`+^O#b$nO$aqO$drO~P0aOS+^O].ROm+^Os$aO!_+^O!`+^O#b$nO$aqO~P0aOS+^O]+aOm+^Os$aO!^+dO!_+^O!`+^O!n.ZO#b$nO$aqO$drO~P0aO!s.^O~O!s._O#b._O$}._O%T+oO~O$}.`O~O#X.aO~Oc%Xad%Xah%Xaj%Xaf%Xag%Xae%Xa~PhOc.dOd+sOP%WqQ%WqS%WqU%WqW%WqX%Wq[%Wq]%Wq^%Wq`%Wqa%Wqb%Wqk%Wqm%Wqo%Wqp%Wqq%Wqs%Wqt%Wqu%Wqv%Wqx%Wqy%Wq|%Wq}%Wq!O%Wq!P%Wq!Q%Wq!R%Wq!T%Wq!U%Wq!V%Wq!W%Wq!X%Wq!Y%Wq!Z%Wq![%Wq!]%Wq!^%Wq!`%Wq!a%Wq!c%Wq!m%Wq!o%Wq!s%Wq!y%Wq#W%Wq#b%Wq#d%Wq#e%Wq#p%Wq$T%Wq$]%Wq$^%Wq$a%Wq$d%Wq$l%Wq$z%Wq${%Wq$}%Wq%O%Wq%V%Wq&p%Wq'g%Wq&t%Wq!n%Wqh%Wqj%Wqf%Wqg%WqY%Wq_%Wqi%Wqe%Wq~Oc.iOd+vOh.hO~O!q(`O~OP6]OQ|OU^OW}O[:fOo>ROs#hOx:dOy:dO}`O!O]O!Q:kO!R}O!T:jO!U:eO!V:eO!Y:oO!c8gO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:hO$]:gO$^:hO$aqO$z:mO${!OO$}}O%O}O%V|O'g{O~O!m.lO!q.lO~OY+zO_+{O!n.nO~OY+zO_+{Oi%^a~O!x.rO~P>UO!m.tO~O!m.tO~P9yOQ|OW}O!R}O$}}O%O}O%V|O'g{O~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&ka!}&ka&s&ka~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m$qi!}$qi&s$qi~P!'WOS+^Om+^Os$aO!_+^O!`+^O$aqO$drO~OY/PO~P$?VOS+^Om+^Os$aO!_+^O!`+^O$aqO~O!s/QO~O!n/SO~P#JwOw(SO!o)WO#l'SO~OV/VO!m&na!}&na&s&na~O!})_O!m'ki&s'ki~O!s/XO~OV/YO!n%|a!}%|a~O]/[Os/[O!s#gO#peO!n&oX!}&oX~O!},uO!n'la~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&Ua!}&Ua&s&Ua#O&Ua~P!'WOz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT!uy!S!uy!b!uy!m!uy!v!uy&s!uy!x!uy!n!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#hi!}#hi~P!'WO_)yO!n&VX!}&VX~P9yO!}-RO!n&{a~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Vq#X#Vq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#[i!}#[i~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#O/cO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x&Xa!}&Xa~P!'WO#u/iO!x$ci!}$ci~O#b/jO~O#U/lO#b/kO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$ci!}$ci~P!'WO#u/mO!x$hi!}$hi~O!}/oO!x'[X~O#b/qO~O!x/rO~O!oXO!q/uO~O#l'SO!o'cy!m'cy&s'cy~O!m$jy&s$jy!x$jy!n$jy~PCqO#O/xO#l'SO~O!s#gO#peOw&aX!o&aX!}&aX!m&aX&s&aX~O!}-|Ow']a!o']a!m']a&s']a~OU$PO]0QO!R$PO!s$OO!v#}O#b$nO#p2XO~P$?uO!m#cO!o0VO&s#cO~O#X0YO~Oh0_O~OT:tOz:pO!S:vO!b:xO!m0`O!q0`O!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO~P!'WOY%]a_%]a!n%]ai%]a~PhO!x0bO~O!x0bO~P>UO!m0dO~OT6iOz6gO!S6jO!b6kO!v8sO!x0fO#O0eO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WO!x0fO~O!x0gO#b0hO#l'SO~O!x0iO~O!s0jO~O!m#cO#u0lO&s#cO~O!s0mO~O!})_O!m'kq&s'kq~O!s0nO~OV0oO!n%}X!}%}X~OT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!n!|i!}!|i~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$cq!}$cq~P!'WO#u0vO!x$cq!}$cq~O#b0wO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$hq!}$hq~P!'WO#S0zO#b0yO!x&`X!}&`X~O!}/oO!x'[a~O#l'SO!o'c!R!m'c!R&s'c!R~O!oXO!q1PO~O!m$j!R&s$j!R!x$j!R!n$j!R~PCqO#O1RO#l'SO~OP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!n1^O!s1YO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOh1_O~OY%[i_%[i!n%[ii%[i~PhOY%]i_%]i!n%]ii%]i~PhO!x1bO~O!x1bO~P>UO!x1eO~O!m#cO#u1iO&s#cO~O$}1jO%V1jO~O!s1kO~OV1lO!n%}a!}%}a~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#]i!}#]i~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$cy!}$cy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$hy!}$hy~P!'WO#b1nO~O!}/oO!x'[i~O!m$j!Z&s$j!Z!x$j!Z!n$j!Z~PCqOT:uOz:qO!S:wO!b:yO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dO~P!'WOV1uO{1tO~P!5xOV1uO{1tOT&}Xz&}X!S&}X!b&}X!o&}X!v&}X!y&}X#S&}X#W&}X#`&}X#a&}X#s&}X#u&}X#w&}X#z&}X#{&}X#|&}X#}&}X$O&}X$Q&}X$R&}X$S&}X$T&}X$U&}X$V&}X$W&}X$z&}X~OP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!n1xO!s1YO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOY%[q_%[q!n%[qi%[q~PhO!x1zO~O!x%gi~PCqOe1{O~O$}1|O%V1|O~O!s2OO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$c!R!}$c!R~P!'WO!m$j!c&s$j!c!x$j!c!n$j!c~PCqO!s2QO~O!`2SO!s2RO~O!s2VO!m$xi&s$xi~O!s'WO~O!s*]O~OT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$ka#u$ka#w$ka&s$ka!x$ka!n$ka!q$ka#X$ka!}$ka~P!'WO#S2]O~P*kO$l$tO~P#.YOT6iOz6gO!S6jO!b6kO!v8sO#O2[O#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'PX&s'PX!x'PX!n'PX~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#O3uO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}'PX#X'PX#u'PX#w'PX!m'PX&s'PX!x'PX!n'PXV'PX!q'PX~P!'WO#S3dO~P#.YOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Xa#u$Xa#w$Xa&s$Xa!x$Xa!n$Xa!q$Xa#X$Xa!}$Xa~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Ya#u$Ya#w$Ya&s$Ya!x$Ya!n$Ya!q$Ya#X$Ya!}$Ya~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Za#u$Za#w$Za&s$Za!x$Za!n$Za!q$Za#X$Za!}$Za~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$[a#u$[a#w$[a&s$[a!x$[a!n$[a!q$[a#X$[a!}$[a~P!'WOz2aO#u$[a#w$[a!q$[a#X$[a!}$[a~PNyOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$_a#u$_a#w$_a&s$_a!x$_a!n$_a!q$_a#X$_a!}$_a~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$|a#u$|a#w$|a&s$|a!x$|a!n$|a!q$|a#X$|a!}$|a~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!S#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!S#yi!b#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$T2nO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$S2mO$T2nO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m#Ta#u#Ta#w#Ta&s#Ta!x#Ta!n#Ta!q#Ta#X#Ta!}#Ta~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m'Pa#u'Pa#w'Pa&s'Pa!x'Pa!n'Pa!q'Pa#X'Pa!}'Pa~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#Pi!S#Pi!b#Pi!m#Pi#u#Pi#w#Pi&s#Pi!x#Pi!n#Pi!q#Pi#X#Pi!}#Pi~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#vi!S#vi!b#vi!m#vi#u#vi#w#vi&s#vi!x#vi!n#vi!q#vi#X#vi!}#vi~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m#xi#u#xi#w#xi&s#xi!x#xi!n#xi!q#xi#X#xi!}#xi~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT!uq!S!uq!b!uq!m!uq!v!uq#u!uq#w!uq&s!uq!x!uq!n!uq!q!uq#X!uq!}!uq~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#Pq!S#Pq!b#Pq!m#Pq#u#Pq#w#Pq&s#Pq!x#Pq!n#Pq!q#Pq#X#Pq!}#Pq~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$jq#u$jq#w$jq&s$jq!x$jq!n$jq!q$jq#X$jq!}$jq~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT!uy!S!uy!b!uy!m!uy!v!uy#u!uy#w!uy&s!uy!x!uy!n!uy!q!uy#X!uy!}!uy~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$jy#u$jy#w$jy&s$jy!x$jy!n$jy!q$jy#X$jy!}$jy~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!R#u$j!R#w$j!R&s$j!R!x$j!R!n$j!R!q$j!R#X$j!R!}$j!R~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!Z#u$j!Z#w$j!Z&s$j!Z!x$j!Z!n$j!Z!q$j!Z#X$j!Z!}$j!Z~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!c#u$j!c#w$j!c&s$j!c!x$j!c!n$j!c!q$j!c#X$j!c!}$j!c~P!'WOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S3vO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lO#u2uO#w2vO!q&zX#X&zX!}&zX~P0rOP6]OU^O[4POo8^Or2wOs#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S2tO#U2sO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OOT#xXz#xX!S#xX!b#xX!m#xX!o#xX!v#xX#`#xX#a#xX#s#xX#u#xX#w#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX&s#xX!x#xX!n#xX!q#xX#X#xX!}#xX~P$;lOP6]OU^O[4POo8^Or4xOs#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S4uO#U4tO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OOT#xXz#xX!S#xX!b#xX!o#xX!v#xX!}#xX#O#xX#X#xX#`#xX#a#xX#s#xX#u#xX#w#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX!m#xX&s#xX!x#xX!n#xXV#xX!q#xX~P$;lO!q3PO~P>UO!q5}O#O3gO~OT8vOz8tO!S8wO!b8xO!q3hO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!q6OO#O3kO~O!q6PO#O3oO~O#O3oO#l'SO~O#O3pO#l'SO~O#O3sO#l'SO~OP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$l$tO$z4bO${!OO~P$;lOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S5eO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Xa#O$Xa#X$Xa#u$Xa#w$Xa!m$Xa&s$Xa!x$Xa!n$XaV$Xa!q$Xa~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Ya#O$Ya#X$Ya#u$Ya#w$Ya!m$Ya&s$Ya!x$Ya!n$YaV$Ya!q$Ya~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Za#O$Za#X$Za#u$Za#w$Za!m$Za&s$Za!x$Za!n$ZaV$Za!q$Za~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$[a#O$[a#X$[a#u$[a#w$[a!m$[a&s$[a!x$[a!n$[aV$[a!q$[a~P!'WOz4dO!}$[a#O$[a#X$[a#u$[a#w$[aV$[a!q$[a~PNyOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$_a#O$_a#X$_a#u$_a#w$_a!m$_a&s$_a!x$_a!n$_aV$_a!q$_a~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$|a#O$|a#X$|a#u$|a#w$|a!m$|a&s$|a!x$|a!n$|aV$|a!q$|a~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!S#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!S#yi!b#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$T4qO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$S4pO$T4qO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}#Ta#O#Ta#X#Ta#u#Ta#w#Ta!m#Ta&s#Ta!x#Ta!n#TaV#Ta!q#Ta~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}'Pa#O'Pa#X'Pa#u'Pa#w'Pa!m'Pa&s'Pa!x'Pa!n'PaV'Pa!q'Pa~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#Pi!S#Pi!b#Pi!}#Pi#O#Pi#X#Pi#u#Pi#w#Pi!m#Pi&s#Pi!x#Pi!n#PiV#Pi!q#Pi~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#vi!S#vi!b#vi!}#vi#O#vi#X#vi#u#vi#w#vi!m#vi&s#vi!x#vi!n#viV#vi!q#vi~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}#xi#O#xi#X#xi#u#xi#w#xi!m#xi&s#xi!x#xi!n#xiV#xi!q#xi~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT!uq!S!uq!b!uq!v!uq!}!uq#O!uq#X!uq#u!uq#w!uq!m!uq&s!uq!x!uq!n!uqV!uq!q!uq~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#Pq!S#Pq!b#Pq!}#Pq#O#Pq#X#Pq#u#Pq#w#Pq!m#Pq&s#Pq!x#Pq!n#PqV#Pq!q#Pq~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$jq#O$jq#X$jq#u$jq#w$jq!m$jq&s$jq!x$jq!n$jqV$jq!q$jq~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT!uy!S!uy!b!uy!v!uy!}!uy#O!uy#X!uy#u!uy#w!uy!m!uy&s!uy!x!uy!n!uyV!uy!q!uy~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$jy#O$jy#X$jy#u$jy#w$jy!m$jy&s$jy!x$jy!n$jyV$jy!q$jy~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!R#O$j!R#X$j!R#u$j!R#w$j!R!m$j!R&s$j!R!x$j!R!n$j!RV$j!R!q$j!R~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!Z#O$j!Z#X$j!Z#u$j!Z#w$j!Z!m$j!Z&s$j!Z!x$j!Z!n$j!ZV$j!Z!q$j!Z~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!c#O$j!c#X$j!c#u$j!c#w$j!c!m$j!c&s$j!c!x$j!c!n$j!cV$j!c!q$j!c~P!'WO#S5wO~P#.YO!y$hO#S5{O~O!x4ZO#l'SO~O!y$hO#S5|O~OT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$ka#O$ka#X$ka#u$ka#w$ka!m$ka&s$ka!x$ka!n$kaV$ka!q$ka~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#O5vO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!m'PX#u'PX#w'PX&s'PX!x'PX!n'PX!q'PX#X'PX!}'PX~P!'WO#u4vO#w4wO!}&zX#O&zX#X&zXV&zX!q&zX~P0rO!q5QO~P>UO!q8bO#O5hO~OT8vOz8tO!S8wO!b8xO!q5iO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!q8cO#O5lO~O!q8dO#O5pO~O#O5pO#l'SO~O#O5qO#l'SO~O#O5tO#l'SO~O$l$tO~P9yOo5zOs$lO~O#S7oO~P9yOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Xa#O$Xa#X$Xa!m$Xa&s$Xa!x$Xa!n$XaV$Xa!q$Xa~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Ya#O$Ya#X$Ya!m$Ya&s$Ya!x$Ya!n$YaV$Ya!q$Ya~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Za#O$Za#X$Za!m$Za&s$Za!x$Za!n$ZaV$Za!q$Za~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$[a#O$[a#X$[a!m$[a&s$[a!x$[a!n$[aV$[a!q$[a~P!'WOz6gO!}$[a#O$[a#X$[aV$[a!q$[a~PNyOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$_a#O$_a#X$_a!m$_a&s$_a!x$_a!n$_aV$_a!q$_a~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$ka#O$ka#X$ka!m$ka&s$ka!x$ka!n$kaV$ka!q$ka~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$|a#O$|a#X$|a!m$|a&s$|a!x$|a!n$|aV$|a!q$|a~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO!}7sO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x'jX~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO!}7uO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&|X~P!'WOz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT6iOz6gO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!S#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT6iOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!S#yi!b#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi#}#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$T6tO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$S6sO$T6tO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WO#S7zO~P>UO!m#Ta&s#Ta!x#Ta!n#Ta~PCqO!m'Pa&s'Pa!x'Pa!n'Pa~PCqO#S;dO#U;cO!x&WX!}&WX~P9yO!}7lO!x'Oa~Oz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#Pi!S#Pi!b#Pi!}#Pi#O#Pi#X#Pi!m#Pi&s#Pi!x#Pi!n#PiV#Pi!q#Pi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#vi!S#vi!b#vi!}#vi#O#vi#X#vi!m#vi&s#vi!x#vi!n#viV#vi!q#vi~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#xi#O#xi#X#xi!m#xi&s#xi!x#xi!n#xiV#xi!q#xi~P!'WO!}7sO!x%da~O!x&UX!}&UX~P>UO!}7uO!x&|a~Oz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT!uq!S!uq!b!uq!v!uq!}!uq#O!uq#X!uq!m!uq&s!uq!x!uq!n!uqV!uq!q!uq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#Vi!}#Vi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#Pq!S#Pq!b#Pq!}#Pq#O#Pq#X#Pq!m#Pq&s#Pq!x#Pq!n#PqV#Pq!q#Pq~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$jq#O$jq#X$jq!m$jq&s$jq!x$jq!n$jqV$jq!q$jq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&ka!}&ka~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&Ua!}&Ua~P!'WOz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT!uy!S!uy!b!uy!v!uy!}!uy#O!uy#X!uy!m!uy&s!uy!x!uy!n!uyV!uy!q!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#Vq!}#Vq~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$jy#O$jy#X$jy!m$jy&s$jy!x$jy!n$jyV$jy!q$jy~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!R#O$j!R#X$j!R!m$j!R&s$j!R!x$j!R!n$j!RV$j!R!q$j!R~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!Z#O$j!Z#X$j!Z!m$j!Z&s$j!Z!x$j!Z!n$j!ZV$j!Z!q$j!Z~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!c#O$j!c#X$j!c!m$j!c&s$j!c!x$j!c!n$j!cV$j!c!q$j!c~P!'WO#S8[O~P9yO#O8ZO!m'PX&s'PX!x'PX!n'PXV'PX!q'PX~PGSO!y$hO#S8`O~O!y$hO#S8aO~O#u6zO#w6{O!}&zX#O&zX#X&zXV&zX!q&zX~P0rOr6|O#S#oO#U#nO!}#xX#O#xX#X#xXV#xX!q#xX~P2yOr;iO#S9XO#U9VOT#xXz#xX!S#xX!b#xX!m#xX!o#xX!q#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX!n#xX!}#xX~P9yOr9WO#S9WO#U9WOT#xXz#xX!S#xX!b#xX!o#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX~P9yOr9]O#S;dO#U;cOT#xXz#xX!S#xX!b#xX!o#xX!q#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX#X#xX!x#xX!}#xX~P9yO$l$tO~P>UO!q7XO~P>UOT6iOz6gO!S6jO!b6kO!v8sO#O7iO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x'PX!}'PX~P!'WOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lO!}7lO!x'OX~O#S9yO~P>UOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Xa#X$Xa!x$Xa!}$Xa~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Ya#X$Ya!x$Ya!}$Ya~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Za#X$Za!x$Za!}$Za~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$[a#X$[a!x$[a!}$[a~P!'WOz8tO$z#dOT$[a!S$[a!b$[a!q$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a#X$[a!x$[a!}$[a~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$_a#X$_a!x$_a!}$_a~P!'WO!q=dO#O7rO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$ka#X$ka!x$ka!}$ka~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$|a#X$|a!x$|a!}$|a~P!'WOT8vOz8tO!S8wO!b8xO!q7wO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#X#yi!x#yi!}#yi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi#X#yi!x#yi!}#yi~P!'WOT8vOz8tO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!S#yi!q#yi#X#yi!x#yi!}#yi~P!'WOT8vOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!S#yi!b#yi!q#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi#X#yi!x#yi!}#yi~P!'WOz8tO$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi#X#yi!x#yi!}#yi~P!'WOz8tO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi#X#yi!x#yi!}#yi~P!'WOz8tO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi#X#yi!x#yi!}#yi~P!'WOz8tO$T9RO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$S9QO$T9RO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi#X#yi!x#yi!}#yi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#Pi!S#Pi!b#Pi!q#Pi#X#Pi!x#Pi!}#Pi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#vi!S#vi!b#vi!q#vi#X#vi!x#vi!}#vi~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q#xi#X#xi!x#xi!}#xi~P!'WO!q=eO#O7|O~Oz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT!uq!S!uq!b!uq!q!uq!v!uq#X!uq!x!uq!}!uq~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#Pq!S#Pq!b#Pq!q#Pq#X#Pq!x#Pq!}#Pq~P!'WO!q=iO#O8TO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$jq#X$jq!x$jq!}$jq~P!'WO#O8TO#l'SO~Oz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT!uy!S!uy!b!uy!q!uy!v!uy#X!uy!x!uy!}!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$jy#X$jy!x$jy!}$jy~P!'WO#O8UO#l'SO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!R#X$j!R!x$j!R!}$j!R~P!'WO#O8XO#l'SO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!Z#X$j!Z!x$j!Z!}$j!Z~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!c#X$j!c!x$j!c!}$j!c~P!'WO#S:bO~P>UO#O:aO!q'PX!x'PX~PGSO$l$tO~P$8YOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$l$tO$z:nO${!OO~P$;lOo8_Os$lO~O#S<jO~P$8YOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#S<kO#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$Xa!q$Xa!n$Xa!}$Xa~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$Ya!q$Ya!n$Ya!}$Ya~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$Za!q$Za!n$Za!}$Za~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$[a!q$[a!n$[a!}$[a~P!'WOz:pO$z#dOT$[a!S$[a!b$[a!m$[a!q$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a!n$[a!}$[a~P!'WOz:qO$z#dOT$[a!S$[a!b$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$_a!q$_a!n$_a!}$_a~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$ka!q$ka!n$ka!}$ka~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$|a!q$|a!n$|a!}$|a~P!'WOz:pO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi!n#yi!}#yi~P!'WOz:qO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi~P!'WOz:pO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!n#yi!}#yi~P!'WOz:qO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi~P!'WOT:tOz:pO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!S#yi!m#yi!q#yi!n#yi!}#yi~P!'WOT:uOz:qO!b:yO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dO!S#yi~P!'WOT:tOz:pO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!S#yi!b#yi!m#yi!q#yi!n#yi!}#yi~P!'WOT:uOz:qO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dO!S#yi!b#yi~P!'WOz:pO#S#QO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#z#yi#{#yi!n#yi!}#yi~P!'WOz:qO#S#QO#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#z#yi#{#yi~P!'WOz:pO#S#QO#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#z#yi#{#yi#|#yi!n#yi!}#yi~P!'WOz:qO#S#QO#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#z#yi#{#yi#|#yi~P!'WOz:pO#S#QO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi!n#yi!}#yi~P!'WOz:qO#S#QO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#z#yi#{#yi#|#yi#}#yi~P!'WOz:pO#S#QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi!n#yi!}#yi~P!'WOz:qO#S#QO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi~P!'WOz:pO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi!n#yi!}#yi~P!'WOz:qO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi~P!'WOz:pO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi!n#yi!}#yi~P!'WOz:qO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi~P!'WOz:pO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi!n#yi!}#yi~P!'WOz:qO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi~P!'WOz:pO$T;[O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi!n#yi!}#yi~P!'WOz:qO$T;]O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi~P!'WOz:pO$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi!n#yi!}#yi~P!'WOz:qO$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi~P!'WOz:pO$S;YO$T;[O$V;`O$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi!n#yi!}#yi~P!'WOz:qO$S;ZO$T;]O$V;aO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi~P!'WOz:pO$W;`O$z#dOT#yi!S#yi!b#yi!m#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi!n#yi!}#yi~P!'WOz:qO$W;aO$z#dOT#yi!S#yi!b#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#Ta!}#Ta!q#Ta#X#Ta~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x'Pa!}'Pa!q'Pa#X'Pa~P!'WOz:pO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#Pi!S#Pi!b#Pi!m#Pi!q#Pi!n#Pi!}#Pi~P!'WOz:qO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#Pi!S#Pi!b#Pi~P!'WOz:pO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#vi!S#vi!b#vi!m#vi!q#vi!n#vi!}#vi~P!'WOz:qO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#vi!S#vi!b#vi~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m#xi!q#xi!n#xi!}#xi~P!'WOz:pO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT!uq!S!uq!b!uq!m!uq!q!uq!v!uq!n!uq!}!uq~P!'WOz:qO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT!uq!S!uq!b!uq!v!uq~P!'WOz:pO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT#Pq!S#Pq!b#Pq!m#Pq!q#Pq!n#Pq!}#Pq~P!'WOz:qO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT#Pq!S#Pq!b#Pq~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$jq!q$jq!n$jq!}$jq~P!'WOz:pO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dOT!uy!S!uy!b!uy!m!uy!q!uy!v!uy!n!uy!}!uy~P!'WOz:qO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dOT!uy!S!uy!b!uy!v!uy~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$jy!q$jy!n$jy!}$jy~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$j!R!q$j!R!n$j!R!}$j!R~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$j!Z!q$j!Z!n$j!Z!}$j!Z~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m$j!c!q$j!c!n$j!c!}$j!c~P!'WO#S=TO~P$8YOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#S=UO#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOT6iOz6gO!S6jO!b6kO!v8sO#O=SO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#O=RO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'PX!q'PX!n'PX!}'PX~P!'WOT&zXz&zX!S&zX!b&zX!o&zX!q&zX!v&zX!y&zX#S&zX#W&zX#`&zX#a&zX#s&zX#z&zX#{&zX#|&zX#}&zX$O&zX$Q&zX$R&zX$S&zX$T&zX$U&zX$V&zX$W&zX$z&zX!}&zX~O#u9ZO#w9[O#X&zX!x&zX~P.8oO!y$hO#S=^O~O!q9hO~P>UO!y$hO#S=cO~O!q>OO#O9}O~OT8vOz8tO!S8wO!b8xO!q:OO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m#Ta!q#Ta!n#Ta!}#Ta~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m'Pa!q'Pa!n'Pa!}'Pa~P!'WO!q>PO#O:RO~O!q>QO#O:YO~O#O:YO#l'SO~O#O:ZO#l'SO~O#O:_O#l'SO~O#u;eO#w;gO!m&zX!n&zX~P.8oO#u;fO#w;hOT&zXz&zX!S&zX!b&zX!o&zX!v&zX!y&zX#S&zX#W&zX#`&zX#a&zX#s&zX#z&zX#{&zX#|&zX#}&zX$O&zX$Q&zX$R&zX$S&zX$T&zX$U&zX$V&zX$W&zX$z&zX~O!q;tO~P>UO!q;uO~P>UO!q>XO#O<oO~O!q>YO#O9WO~OT8vOz8tO!S8wO!b8xO!q<pO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOT8vOz8tO!S8wO!b8xO!q<qO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!q>ZO#O<vO~O!q>[O#O<{O~O#O<{O#l'SO~O#O9WO#l'SO~O#O<|O#l'SO~O#O=PO#l'SO~O!y$hO#S=|O~Oo=[Os$lO~O!y$hO#S=}O~O!y$hO#S>UO~O!y$hO#S>VO~O!y$hO#S>WO~Oo={Os$lO~Oo>TOs$lO~Oo>SOs$lO~O%O$U$}$d!d$V#b%V#e'g!s#d~",goto:"%&y'mPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP'nP'uPP'{(OPPP(hP(OP(O*ZP*ZPP2W:j:mPP*Z:sBpPBsPBsPP:sCSCVCZ:s:sPPPC^PP:sK^!$S!$S:s!$WP!$W!$W!%UP!.]!7pP!?oP*ZP*Z*ZPPPPP!?rPPPPPPP*Z*Z*Z*ZPP*Z*ZP!E]!GRP!GV!Gy!GR!GR!HP*Z*ZP!HY!Hl!Ib!J`!Jd!J`!Jo!J}!J}!KV!KY!KY*ZPP*ZPP!K^#%[#%[#%`P#%fP(O#%j(O#&S#&V#&V#&](O#&`(O(O#&f#&i(O#&r#&u(O(O(O(O(O#&x(O(O(O(O(O(O(O(O(O#&{!KR(O(O#'_#'o#'r(O(OP#'u#'|#(S#(o#(y#)P#)Z#)b#)h#*d#4X#5T#5Z#5a#5k#5q#5w#6]#6c#6i#6o#6u#6{#7R#7]#7g#7m#7s#7}PPPPPPPP#8T#8X#8}#NO#NR#N]$(f$(r$)X$)_$)b$)e$)k$,X$5v$>_$>b$>h$>k$>n$>w$>{$?X$?k$Bk$CO$C{$K{PP%%y%%}%&Z%&p%&vQ!nQT!qV!rQUOR%x!mRVO}!hPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1a|!hPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aQ%^!ZQ%g!aQ%l!eQ'd$dQ'q$iQ)[%kQ*y'tQ,](xU-n*v*x+OQ.W+cQ.{,[S/t-s-tQ0T.SS0}/s/wQ1V0RQ1o1OR2P1p0u!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=n0t!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=nQ#j]Q$}!PQ%O!QQ%P!RQ,S(kQ.b+sR.f+vR&q#jQ)z&pR/a-R0uhPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=nR#l^k#p_j#k#s&s&w3x3y7l8f8g8h8iR#u`T&|#t'OR-Y*U0thPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=nR#va-r#OZ#f#m#w$V$W$X$Y$Z$[$u$v%W%Y%[%`%s%|&O&Q&U&^&_&`&a&b&c&d&e&f&g&h&i&j&k&l&m&u&v&{'X'Z'[(](p)q)s)u*O*[*^+S+V,`,c,y,{,}-V-W-X-i-x.k.w/`/h/n/y0r0u0x1Q1X1d1m1q2q2r2x2y2z2{2|2}3O3Q3R3S3T3U3V3W3X3Y3Z3[3]3^3_3`3a3b3c3e3f3i3j3l3m3n3q3r3t4Y4y4z4{4|4}5O5P5R5S5T5U5V5W5X5Y5Z5[5]5^5_5`5a5b5c5d5f5g5j5k5m5n5o5r5s5u6R6V6}7O7P7Q7R7S7U7V7W7Y7Z7[7]7^7_7`7a7b7c7d7e7f7g7h7j7k7n7p7q7x7y7{7}8O8P8Q8R8S8V8W8Y8]9U9^9_9`9a9b9c9f9g9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9z9{:P:Q:T:V:W:[:^:`:c;j;k;l;m;n;o;p;s;v;w;x;y;z;{;|;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<[<]<^<_<`<a<b<c<d<e<f<g<h<i<l<m<n<r<s<t<u<w<x<y<z<}=O=Q=V=W=_=`=a=q=rQ']$]Y(Q$s7T9e;q;rS(U2Z6QR(X$tT&X!})v!w$Qg#}$h'S'i'm'r(P(T)Z*f*s*z*}+Q+]+`+g,Z-r-u-{.Q/u1P5}6O6P6]8b8c8d=d=e=i>O>P>Q>X>Y>Z>[3ZfPVX[_bgjklmnoprxyz!S!W!X!Y!]!e!f!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t#}$R$S$U$h$y$}%P%R%S%T%U%c%p%r%}&S&W&p&s&t&w'O'S'U'Y'^'i'm'r'z(O(P(R(S(T(`(l({)P)Z)_)c)i)p)t)v*P*T*U*f*o*s*z*}+P+Q+]+`+d+g+r+u+z,T,V,X,Z,u-Q-R-d-k-r-u-z-{-|.Q.b.d.l.t/[/c/i/m/u/x0V0`0a0d0e0i0v1P1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w5}6O6P6T6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8b8c8d8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=d=e=i=m=n>O>P>Q>X>Y>Z>[3scPVX[_bdegjklmnoprxyz!S!W!X!Y!]!e!f!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t#{#}$R$S$U$h$y$}%P%R%S%T%U%c%m%n%p%r%}&S&W&p&s&t&w'O'S'U'Y'^'i'm'r'z(O(P(R(S(T(`(l({)P)Z)^)_)c)g)h)i)p)t)v*P*T*U*f*o*s*z*}+P+Q+]+`+d+g+r+u+z,T,V,X,Z,u,x-Q-R-d-k-r-u-z-{-|.Q.b.d.l.t/[/c/i/m/u/x0V0`0a0d0e0i0v1P1R1]1a2W2X2Y2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w5}6O6P6T6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8b8c8d8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=d=e=i=m=n>O>P>Q>X>Y>Z>[0phPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0`0a0d0e0i0v1R1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=nT1Z0V1]R&]#P!n#[Z#f#w$V$W$X$Y$[$s$v%W%Y%[&Q&_&`&a&b&c&d&e&f'X'Z'[(])q)s*^+V,{-x/y1Q1d1q7j7k!Y2j2Z2x2y2z2{2}3O3Q3R3S3T3U3V3W3X3a3b3c3e3f3i3j3l3m3n3q3r3t!^4m2r4y4z4{4|5O5P5R5S5T5U5V5W5X5Y5b5c5d5f5g5j5k5m5n5o5r5s5u6Q6R#Q6p#m%`%s&u&v&{(p*O+S,`,c,y-V-X.w2q6}7O7P7Q7S7T7U7Y7Z7[7]7^7_7`7a7n7p7q7x7{7}8Q8S8V8W8Y8]9U:c=V=W#^8}%|&O&U)u,}-W-i/h/n0r0u0x1m4Y6V7V7W7y8O8P8R9^9_9`9a9c9e9f9g9i9j9k9l9m9n9o9p9x9z9{:P:Q:T:V:W:[:^:`<f<g=_=q=r!^;S.k/`;j;k;l;m;p;q;s;v;x;z;|<O<Q<S<U<h<l<n<r<t<w<x<z<}=O=Q=`=ao;T1X;r;w;y;{;}<P<R<T<V<i<m<s<u<yS$iu#hQ$qwU't$j$l&oQ'v$kS'x$m$rQ*|'uQ+O'wQ+R'yQ4X5xS4[5z5{Q4]5|Q6U8^S6W8_8`Q6X8aQ9d=YS9|=[=^Q:S=cQ=]=yS=b={=|Q=f=}Q=o>RS=p>S>VS=s>T>UR=t>WT'n$h*s!csPVXt!S!j!r!s!w$h$}%P%S%U'i(T(`)W*s+]+g+r+u,g,k.b.d.l0`0a0i1aQ$^rR*`'^Q*x'sQ-t*{R/w-wQ(W$tQ)U%hQ)n%vQ*i'fQ+k(XR-c*jQ(V$tQ)Y%jQ)m%vQ*e'eS*h'f)nS+j(W(XS-b*i*jQ.]+kQ/T,mQ/e-`R/g-cQ(U$tQ)T%hQ)V%iQ)l%vU*g'f)m)nU+i(V(W(XQ,f)UU-a*h*i*jS.[+j+kS/f-b-cQ0X.]R0t/gT+e(T+g[%e!_$b'c+a.R0QR,d)Qb$ov(T+[+]+`+g.P.Q0PR+T'{S+e(T+gT,j)W,kR0W.XT1[0V1]0w|PVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X,_-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=nT$x{${Q+p([R._+nT$z{${Q(b$}Q(j%PQ(o%SQ(r%UQ.j+yQ0].fQ0^.iR1g0iR(e%OX+|(c(d+},PR(f%OX(h%P%S%U0iR%S!T_%a!]%R(l,T,V.t0dR%U!UR.x,XR,[(wQ)X%jS*d'e)YS-_*e,mS/d-`/TR0s/eQ%q!fU)]%m%n%rU,o)^)g)hR/_,xR)d%pR/],uSSO!mR!oSQ!rVR%y!rQ!jPS!sV!rQ!wX[%u!j!s!w+r0a1aQ+r(`Q0a.lR1a0`Q)j%sS,z)j7vR7v7WQ-S)zR/b-SQ&x#qS*R&x7mR7m9YS*V&{&|R-Z*VQ)w&YR-P)w!l'T#|'h*n*q*v+W+[,m-`-s-v-y.P.z/s/v/z0P1O1p4^4_4`5y6Y6Z6[:U:X:]=g=h=j=u=v=w=xR*Z'T1^dPVX[_bjklmnoprxyz!S!W!X!Y!]!e!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%p%}&S&W&p&s&t&w'O'U'Y'^'z(O(R(S(`(l({)P)_)c)i)p)t)v*P*T*U*o+P+d+r+u+z,T,V,X,u-Q-R-d-k-z-|.b.d.l.t/[/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=n`#zd#{%m)^)g,x2W2YQ#{eQ%m!fQ)^%nQ)g%rQ,x)h!v2Wg#}$h'S'i'm'r(P(T)Z*f*s*z*}+Q+]+`+g,Z-r-u-{.Q/u1P5}6O6P6]8b8c8d=d=e=i>O>P>Q>X>Y>Z>[R2Y2X|tPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aW$`t'i+],gS'i$h*sS+](T+gT,g)W,kQ'_$^R*a'_Q*t'oR-m*tQ/p-oS0{/p0|R0|/qQ-}+XR/|-}Q+g(TR.Y+gS+`(T+gS,h)W,kQ.Q+]W.T+`,h.Q/OR/O,gQ)R%eR,e)RQ'|$oR+U'|Q1]0VR1w1]Q${{R(^${Q+t(aR.c+tQ+w(bR.g+wQ+}(cQ,P(dT.m+},PQ(|%`S,a(|7tR7t7VQ(y%^R,^(yQ,k)WR/R,kQ)`%oS,q)`/WR/W,rQ,v)dR/^,vT!uV!rj!iPVX!j!r!s!w(`+r.l0`0a1aQ%Q!SQ(a$}W(h%P%S%U0iQ.e+uQ0Z.bR0[.d|ZPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aQ#f[U#m_#s&wQ#wbQ$VkQ$WlQ$XmQ$YnQ$ZoQ$[pQ$sx^$uy2_4b6e8q:m:nQ$vzQ%W!WQ%Y!XQ%[!YW%`!]%R(l,VU%s!g&p-RQ%|!yQ&O!zQ&Q!{S&U!})v^&^#R2a4d6g8t:p:qQ&_#SQ&`#TQ&a#UQ&b#VQ&c#WQ&d#XQ&e#YQ&f#ZQ&g#[Q&h#]Q&i#^Q&j#_Q&k#`Q&l#aQ&m#bQ&u#nQ&v#oS&{#t'OQ'X$RQ'Z$SQ'[$UQ(]$yQ(p%TQ)q%}Q)s&SQ)u&WQ*O&tS*['U4ZQ*^'Y^*_2[3u5v8Z:a=R=SQ+S'zQ+V(OQ,`({Q,c)PQ,y)iQ,{)pQ,})tQ-V*PQ-W*TQ-X*U^-]2]3v5w8[:b=T=UQ-i*oQ-x+PQ.k+zQ.w,XQ/`-QQ/h-dQ/n-kQ/y-zQ0r/cQ0u/iQ0x/mQ1Q/xU1X0V1]9WQ1d0eQ1m0vQ1q1RQ2Z2^Q2qjQ2r3yQ2x3zQ2y3|Q2z4OQ2{4QQ2|4SQ2}4UQ3O2`Q3Q2bQ3R2cQ3S2dQ3T2eQ3U2fQ3V2gQ3W2hQ3X2iQ3Y2jQ3Z2kQ3[2lQ3]2mQ3^2nQ3_2oQ3`2pQ3a2sQ3b2tQ3c2uQ3e2vQ3f2wQ3i3PQ3j3dQ3l3gQ3m3hQ3n3kQ3q3oQ3r3pQ3t3sQ4Y4WQ4y3{Q4z3}Q4{4PQ4|4RQ4}4TQ5O4VQ5P4cQ5R4eQ5S4fQ5T4gQ5U4hQ5V4iQ5W4jQ5X4kQ5Y4lQ5Z4mQ5[4nQ5]4oQ5^4pQ5_4qQ5`4rQ5a4sQ5b4tQ5c4uQ5d4vQ5f4wQ5g4xQ5j5QQ5k5eQ5m5hQ5n5iQ5o5lQ5r5pQ5s5qQ5u5tQ6Q4aQ6R3xQ6V6TQ6}6^Q7O6_Q7P6`Q7Q6aQ7R6bQ7S6cQ7T6dQ7U6fU7V,T.t0dQ7W%cQ7Y6hQ7Z6iQ7[6jQ7]6kQ7^6lQ7_6mQ7`6nQ7a6oQ7b6pQ7c6qQ7d6rQ7e6sQ7f6tQ7g6uQ7h6vQ7j6xQ7k6yQ7n6zQ7p6{Q7q6|Q7x7XQ7y7iQ7{7oQ7}7rQ8O7sQ8P7uQ8Q7wQ8R7zQ8S7|Q8V8TQ8W8UQ8Y8XQ8]8fU9U#k&s7lQ9^8jQ9_8kQ9`8lQ9a8mQ9b8nQ9c8oQ9e8pQ9f8rQ9g8sQ9i8uQ9j8vQ9k8wQ9l8xQ9m8yQ9n8zQ9o8{Q9p8|Q9q8}Q9r9OQ9s9PQ9t9QQ9u9RQ9v9SQ9w9TQ9x9ZQ9z9[Q9{9]Q:P9hQ:Q9yQ:T9}Q:V:OQ:W:RQ:[:YQ:^:ZQ:`:_Q:c8iQ;j:dQ;k:eQ;l:fQ;m:gQ;n:hQ;o:iQ;p:jQ;q:kQ;r:lQ;s:oQ;v:rQ;w:sQ;x:tQ;y:uQ;z:vQ;{:wQ;|:xQ;}:yQ<O:zQ<P:{Q<Q:|Q<R:}Q<S;OQ<T;PQ<U;QQ<V;RQ<W;SQ<X;TQ<Y;UQ<Z;VQ<[;WQ<];XQ<^;YQ<_;ZQ<`;[Q<a;]Q<b;^Q<c;_Q<d;`Q<e;aQ<f;cQ<g;dQ<h;eQ<i;fQ<l;gQ<m;hQ<n;iQ<r;tQ<s;uQ<t<jQ<u<kQ<w<oQ<x<pQ<y<qQ<z<vQ<}<{Q=O<|Q=Q=PQ=V8hQ=W8gQ=_=ZQ=`9VQ=a9XQ=q=mR=r=nR){&pQ%t!gQ)O%cT)y&p-R$SiPVX[bklmnopxyz!S!W!X!Y!j!r!s!w!{#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b$R$S$U$y$}%P%S%U%}&S'Y(O(`)p+P+r+u-z.b.d.l/x0`0a0e0i1R1a2[2]6x6y!t3w'U2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3z3|4O4Q4S4U5v5w!x6S3u3v3x3y3{3}4P4R4T4V4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t$O8e_j!]!g#k#n#o#s#t%R%T&p&s&t&w'O'z(l({)P)i*P*U,V,X-R6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6z6{6|7X7l7o7r7w7|8T8U8X8Z8[8f8g8h8i#|=X!y!z!}%c&W)t)v*T*o,T-d-k.t/c/i/m0d0v4W6T7i7s7u7z8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9Z9[9]9h9y9}:O:R:Y:Z:_:a:b;c;d=Z=m=n!v=k+z-Q9V9X:d:e:f:g:h:j:k:m:o:p:r:t:v:x:z:|;O;Q;S;U;W;Y;[;^;`;e;g;i;t<j<o<p<v<{<|=P=R=T!]=l0V1]9W:i:l:n:q:s:u:w:y:{:};P;R;T;V;X;Z;];_;a;f;h;u<k<q=S=UQ#r_Q&r#kQ&z#sR)}&sS#q_#s^$Tj3x3y8f8g8h8iS*Q&w7lT9Y#k&sQ&}#tR*X'OR&T!|R&Z!}Q&Y!}R-O)vQ#|gQ'V#}S'h$h*sQ*Y'SQ*n'iQ*q'mQ*v'rQ+W(PS+[(T+gQ,m)ZQ-`*fQ-s*zQ-v*}Q-y+QS.P+]+`Q.z,ZQ/s-rQ/v-uQ/z-{Q0P.QQ1O/uQ1p1PQ4^5}Q4_6OQ4`6PQ5y6]Q6Y8bQ6Z8cQ6[8dQ:U=dQ:X=eQ:]=iQ=g>OQ=h>PQ=j>QQ=u>XQ=v>YQ=w>ZR=x>[0t!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=n!v$Pg#}$h'S'i'm'r(P(T)Z*f*s*z*}+Q+]+`+g,Z-r-u-{.Q/u1P5}6O6P6]8b8c8d=d=e=i>O>P>Q>X>Y>Z>[S$]r'^Q%k!eS%o!f%rQ)b%pU+X(R(S+dQ,p)_Q,t)cQ/Z,uQ/{-|R0p/[|vPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1a#U#i[bklmnopxyz!W!X!Y!{#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b$R$S$U$y%}&S'Y(O)p+P-z/x0e1R2[2]6x6yd+^(T)W+]+`+g,g,h,k.Q/O!t6w'U2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3z3|4O4Q4S4U5v5w!x;b3u3v3x3y3{3}4P4R4T4V4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t$O=z_j!]!g#k#n#o#s#t%R%T&p&s&t&w'O'z(l({)P)i*P*U,V,X-R6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6z6{6|7X7l7o7r7w7|8T8U8X8Z8[8f8g8h8i#|>]!y!z!}%c&W)t)v*T*o,T-d-k.t/c/i/m0d0v4W6T7i7s7u7z8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9Z9[9]9h9y9}:O:R:Y:Z:_:a:b;c;d=Z=m=n!v>^+z-Q9V9X:d:e:f:g:h:j:k:m:o:p:r:t:v:x:z:|;O;Q;S;U;W;Y;[;^;`;e;g;i;t<j<o<p<v<{<|=P=R=T!]>_0V1]9W:i:l:n:q:s:u:w:y:{:};P;R;T;V;X;Z;];_;a;f;h;u<k<q=S=UR'p$hQ'o$hR-l*sR$_rR-q*wQ+Y(RQ+Z(SR.X+dT+f(T+ge+_(T)W+]+`+g,g,h,k.Q/OQ%f!_Q'b$bQ*c'cQ.U+aQ0S.RR1U0QQ#eZQ%X!WQ%Z!XQ%]!YQ'}$pQ(s%VQ(t%WQ(u%YQ(v%[Q(}%bQ)S%fQ)[%kQ)f%qQ)k%tQ*b'bQ,n)]Q-^*cQ.V+bQ.W+cQ.e+xQ.o,QQ.p,RQ.q,SQ.v,WQ.y,YQ.},bQ/U,oQ/}.OQ0T.SQ0U.UQ0W.XQ0[.hQ0k/QQ0q/_Q1S0OQ1V0RQ1W0SQ1`0_Q1h0jQ1r1TQ1s1UQ1v1[Q1y1_Q1}1jQ2T1{R2U1|Q$pvS+b(T+gU.O+[+]+`S0O.P.QR1T0P|!aPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aQ$dtW+c(T)W+g,kW.S+]+`,g,hT0R.Q/O0t!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=nR.|,_0w}PVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X,_-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;u<j<k<o<p<q<v<{<|=P=R=S=T=U=Z=m=nT$w{${Q(i%PQ(n%SQ(q%UR1f0iQ%b!]Q(m%RQ,U(lQ.s,TQ.u,VQ0c.tR1c0dQ%q!fR)]%rR)e%p",nodeNames:"⚠ ( HeredocString EscapeSequence abstract LogicOp array as Boolean break case catch clone const continue default declare do echo else elseif enddeclare endfor endforeach endif endswitch endwhile enum extends final finally fn for foreach from function global goto if implements include include_once LogicOp insteadof interface list match namespace new null LogicOp print require require_once return switch throw trait try unset use var Visibility while LogicOp yield LineComment BlockComment TextInterpolation PhpClose Text PhpOpen Template TextInterpolation EmptyStatement ; } { Block : LabelStatement Name ExpressionStatement ConditionalExpression LogicOp MatchExpression ) ( ParenthesizedExpression MatchBlock MatchArm , => AssignmentExpression ArrayExpression ValueList & VariadicUnpacking ... Pair [ ] ListExpression ValueList Pair Pair SubscriptExpression MemberExpression -> ?-> VariableName DynamicVariable $ ${ CallExpression ArgList NamedArgument SpreadArgument CastExpression UnionType LogicOp OptionalType NamedType QualifiedName \\ NamespaceName ScopedExpression :: ClassMemberName AssignOp UpdateExpression UpdateOp YieldExpression BinaryExpression LogicOp LogicOp LogicOp BitOp BitOp BitOp CompareOp CompareOp BitOp ArithOp ConcatOp ArithOp ArithOp IncludeExpression RequireExpression CloneExpression UnaryExpression ControlOp LogicOp PrintIntrinsic FunctionExpression static ParamList Parameter #[ Attributes Attribute VariadicParameter PropertyParameter UseList ArrowFunction NewExpression class BaseClause ClassInterfaceClause DeclarationList ConstDeclaration VariableDeclarator PropertyDeclaration VariableDeclarator MethodDeclaration UseDeclaration UseList UseInsteadOfClause UseAsClause UpdateExpression ArithOp ShellExpression ThrowExpression Integer Float String MemberExpression SubscriptExpression UnaryExpression ArithOp Interpolation String IfStatement ColonBlock SwitchStatement Block CaseStatement DefaultStatement ColonBlock WhileStatement EmptyStatement DoStatement ForStatement ForSpec SequenceExpression ForeachStatement ForSpec Pair GotoStatement ContinueStatement BreakStatement ReturnStatement TryStatement CatchDeclarator DeclareStatement EchoStatement UnsetStatement ConstDeclaration FunctionDefinition ClassDeclaration InterfaceDeclaration TraitDeclaration EnumDeclaration EnumBody EnumCase NamespaceDefinition NamespaceUseDeclaration UseGroup UseClause UseClause GlobalDeclaration FunctionStaticDeclaration Program",maxTerm:304,nodeProps:[["group",-36,2,8,49,81,83,85,88,93,94,102,106,107,110,111,114,118,123,126,130,132,133,147,148,149,150,153,154,164,165,179,181,182,183,184,185,191,"Expression",-28,74,78,80,82,192,194,199,201,202,205,208,209,210,211,212,214,215,216,217,218,219,220,221,222,225,226,230,231,"Statement",-3,119,121,122,"Type"],["isolate",-4,66,67,70,191,""],["openedBy",69,"phpOpen",76,"{",86,"(",101,"#["],["closedBy",71,"phpClose",77,"}",87,")",158,"]"]],propSources:[phpHighlighting],skippedNodes:[0],repeatNodeCount:29,tokenData:"!F|_R!]OX$zXY&^YZ'sZ]$z]^&^^p$zpq&^qr)Rrs+Pst+otu2buv5evw6rwx8Vxy>]yz>yz{?g{|@}|}Bb}!OCO!O!PDh!P!QKT!Q!R!!o!R![!$q![!]!,P!]!^!-a!^!_!-}!_!`!1S!`!a!2d!a!b!3t!b!c!7^!c!d!7z!d!e!9W!e!}!7z!}#O!;^#O#P!;z#P#Q!<h#Q#R!=U#R#S!7z#S#T!=u#T#U!7z#U#V!9W#V#o!7z#o#p!Co#p#q!D]#q#r!Er#r#s!F`#s$f$z$f$g&^$g&j!7z&j$I_$z$I_$I`&^$I`$KW$z$KW$KX&^$KX;'S$z;'S;=`&W<%l?HT$z?HT?HU&^?HUO$zP%PV&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zP%kO&wPP%nWOY$zYZ%fZ!a$z!b;'S$z;'S;=`&W<%l~$z~O$z~~%fP&ZP;=`<%l$zV&ed&wP&vUOX$zXY&^YZ'sZ]$z]^&^^p$zpq&^q!^$z!^!_%k!_$f$z$f$g&^$g$I_$z$I_$I`&^$I`$KW$z$KW$KX&^$KX;'S$z;'S;=`&W<%l?HT$z?HT?HU&^?HUO$zV'zW&wP&vUXY(dYZ(d]^(dpq(d$f$g(d$I_$I`(d$KW$KX(d?HT?HU(dU(iW&vUXY(dYZ(d]^(dpq(d$f$g(d$I_$I`(d$KW$KX(d?HT?HU(dR)YW$^Q&wPOY$zYZ%fZ!^$z!^!_%k!_!`)r!`;'S$z;'S;=`&W<%lO$zR)yW$QQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`*c!`;'S$z;'S;=`&W<%lO$zR*jV$QQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV+YV'fS&wP'gQOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV+v]&wP!dUOY,oYZ%fZ],o]^$z^!^,o!^!_-i!_!a,o!a!b/y!b!},o!}#O1f#O;'S,o;'S;=`/s<%lO,oV,vZ&wP!dUOY,oYZ%fZ],o]^$z^!^,o!^!_-i!_!a,o!a!b/y!b;'S,o;'S;=`/s<%lO,oV-nZ!dUOY,oYZ%fZ],o]^$z^!a,o!a!b.a!b;'S,o;'S;=`/s<%l~,o~O,o~~%fU.dWOY.|YZ/nZ].|]^/n^!`.|!a;'S.|;'S;=`/h<%lO.|U/RV!dUOY.|Z].|^!a.|!a!b.a!b;'S.|;'S;=`/h<%lO.|U/kP;=`<%l.|U/sO!dUV/vP;=`<%l,oV0OZ&wPOY,oYZ0qZ],o]^0x^!^,o!^!_-i!_!`,o!`!a$z!a;'S,o;'S;=`/s<%lO,oV0xO&wP!dUV1PV&wP!dUOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV1oZ&wP$dQ!dUOY,oYZ%fZ],o]^$z^!^,o!^!_-i!_!a,o!a!b/y!b;'S,o;'S;=`/s<%lO,o_2i`&wP#dQOY$zYZ%fZ!^$z!^!_%k!_!c$z!c!}3k!}#R$z#R#S3k#S#T$z#T#o3k#o#p4w#p$g$z$g&j3k&j;'S$z;'S;=`&W<%lO$z_3ra&wP#b^OY$zYZ%fZ!Q$z!Q![3k![!^$z!^!_%k!_!c$z!c!}3k!}#R$z#R#S3k#S#T$z#T#o3k#o$g$z$g&j3k&j;'S$z;'S;=`&W<%lO$zV5OV&wP#eUOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR5lW&wP$VQOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR6]V#wQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV6yY#SU&wPOY$zYZ%fZv$zvw7iw!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR7pV#|Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR8^Z&wP%VQOY8VYZ9PZw8Vwx;_x!^8V!^!_;{!_#O8V#O#P<y#P;'S8V;'S;=`>V<%lO8VR9WV&wP%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X<%lO9mQ9rV%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X<%lO9mQ:^O%VQQ:aRO;'S9m;'S;=`:j;=`O9mQ:oW%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X;=`<%l9m<%lO9mQ;[P;=`<%l9mR;fV&wP%VQOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR<Q]%VQOY8VYZ9PZw8Vwx;_x!a8V!a!b9m!b#O8V#O#P<y#P;'S8V;'S;=`>V<%l~8V~O8V~~%fR=OW&wPOY8VYZ9PZ!^8V!^!_;{!_;'S8V;'S;=`=h;=`<%l9m<%lO8VR=mW%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X;=`<%l8V<%lO9mR>YP;=`<%l8VR>dV!yQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV?QV!xU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR?nY&wP$VQOY$zYZ%fZz$zz{@^{!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR@eW$WQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zRAUY$TQ&wPOY$zYZ%fZ{$z{|At|!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zRA{V$zQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRBiV!}Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z_CXZ$TQ%TW&wPOY$zYZ%fZ}$z}!OAt!O!^$z!^!_%k!_!`6U!`!aCz!a;'S$z;'S;=`&W<%lO$zVDRV#`U&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVDo[&wP$UQOY$zYZ%fZ!O$z!O!PEe!P!Q$z!Q![Fs![!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zVEjX&wPOY$zYZ%fZ!O$z!O!PFV!P!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVF^V#UU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRFz_&wP%OQOY$zYZ%fZ!Q$z!Q![Fs![!^$z!^!_%k!_!g$z!g!hGy!h#R$z#R#SJc#S#X$z#X#YGy#Y;'S$z;'S;=`&W<%lO$zRHO]&wPOY$zYZ%fZ{$z{|Hw|}$z}!OHw!O!Q$z!Q![Ii![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRH|X&wPOY$zYZ%fZ!Q$z!Q![Ii![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRIpZ&wP%OQOY$zYZ%fZ!Q$z!Q![Ii![!^$z!^!_%k!_#R$z#R#SHw#S;'S$z;'S;=`&W<%lO$zRJhX&wPOY$zYZ%fZ!Q$z!Q![Fs![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVK[[&wP$VQOY$zYZ%fZz$zz{LQ{!P$z!P!Q,o!Q!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zVLVX&wPOYLQYZLrZzLQz{N_{!^LQ!^!_! s!_;'SLQ;'S;=`!!i<%lOLQVLwT&wPOzMWz{Mj{;'SMW;'S;=`NX<%lOMWUMZTOzMWz{Mj{;'SMW;'S;=`NX<%lOMWUMmVOzMWz{Mj{!PMW!P!QNS!Q;'SMW;'S;=`NX<%lOMWUNXO!eUUN[P;=`<%lMWVNdZ&wPOYLQYZLrZzLQz{N_{!PLQ!P!Q! V!Q!^LQ!^!_! s!_;'SLQ;'S;=`!!i<%lOLQV! ^V!eU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV! vZOYLQYZLrZzLQz{N_{!aLQ!a!bMW!b;'SLQ;'S;=`!!i<%l~LQ~OLQ~~%fV!!lP;=`<%lLQZ!!vm&wP$}YOY$zYZ%fZ!O$z!O!PFs!P!Q$z!Q![!$q![!^$z!^!_%k!_!d$z!d!e!&o!e!g$z!g!hGy!h!q$z!q!r!(a!r!z$z!z!{!){!{#R$z#R#S!%}#S#U$z#U#V!&o#V#X$z#X#YGy#Y#c$z#c#d!(a#d#l$z#l#m!){#m;'S$z;'S;=`&W<%lO$zZ!$xa&wP$}YOY$zYZ%fZ!O$z!O!PFs!P!Q$z!Q![!$q![!^$z!^!_%k!_!g$z!g!hGy!h#R$z#R#S!%}#S#X$z#X#YGy#Y;'S$z;'S;=`&W<%lO$zZ!&SX&wPOY$zYZ%fZ!Q$z!Q![!$q![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!&tY&wPOY$zYZ%fZ!Q$z!Q!R!'d!R!S!'d!S!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!'k[&wP$}YOY$zYZ%fZ!Q$z!Q!R!'d!R!S!'d!S!^$z!^!_%k!_#R$z#R#S!&o#S;'S$z;'S;=`&W<%lO$zZ!(fX&wPOY$zYZ%fZ!Q$z!Q!Y!)R!Y!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!)YZ&wP$}YOY$zYZ%fZ!Q$z!Q!Y!)R!Y!^$z!^!_%k!_#R$z#R#S!(a#S;'S$z;'S;=`&W<%lO$zZ!*Q]&wPOY$zYZ%fZ!Q$z!Q![!*y![!^$z!^!_%k!_!c$z!c!i!*y!i#T$z#T#Z!*y#Z;'S$z;'S;=`&W<%lO$zZ!+Q_&wP$}YOY$zYZ%fZ!Q$z!Q![!*y![!^$z!^!_%k!_!c$z!c!i!*y!i#R$z#R#S!){#S#T$z#T#Z!*y#Z;'S$z;'S;=`&W<%lO$zR!,WX!qQ&wPOY$zYZ%fZ![$z![!]!,s!]!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!,zV#sQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!-hV!mU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!.S[$RQOY$zYZ%fZ!^$z!^!_!.x!_!`!/i!`!a*c!a!b!0]!b;'S$z;'S;=`&W<%l~$z~O$z~~%fR!/PW$SQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR!/pX$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`$z!`!a*c!a;'S$z;'S;=`&W<%lO$zP!0bR!iP!_!`!0k!r!s!0p#d#e!0pP!0pO!iPP!0sQ!j!k!0y#[#]!0yP!0|Q!r!s!0k#d#e!0kV!1ZX#uQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`)r!`!a!1v!a;'S$z;'S;=`&W<%lO$zV!1}V#OU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!2kX$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`!3W!`!a!.x!a;'S$z;'S;=`&W<%lO$zR!3_V$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!3{[!vQ&wPOY$zYZ%fZ}$z}!O!4q!O!^$z!^!_%k!_!`$z!`!a!6P!a!b!6m!b;'S$z;'S;=`&W<%lO$zV!4vX&wPOY$zYZ%fZ!^$z!^!_%k!_!`$z!`!a!5c!a;'S$z;'S;=`&W<%lO$zV!5jV#aU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!6WV!gU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!6tW#zQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR!7eV$]Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z_!8Ra&wP!s^OY$zYZ%fZ!Q$z!Q![!7z![!^$z!^!_%k!_!c$z!c!}!7z!}#R$z#R#S!7z#S#T$z#T#o!7z#o$g$z$g&j!7z&j;'S$z;'S;=`&W<%lO$z_!9_e&wP!s^OY$zYZ%fZr$zrs!:psw$zwx8Vx!Q$z!Q![!7z![!^$z!^!_%k!_!c$z!c!}!7z!}#R$z#R#S!7z#S#T$z#T#o!7z#o$g$z$g&j!7z&j;'S$z;'S;=`&W<%lO$zR!:wV&wP'gQOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!;eV#WU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!<RV#pU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!<oV#XQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!=]W$OQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR!=zZ&wPOY!=uYZ!>mZ!^!=u!^!_!@u!_#O!=u#O#P!Aq#P#S!=u#S#T!B{#T;'S!=u;'S;=`!Ci<%lO!=uR!>rV&wPO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o<%lO!?XQ!?[VO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o<%lO!?XQ!?tRO;'S!?X;'S;=`!?};=`O!?XQ!@QWO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o;=`<%l!?X<%lO!?XQ!@oO${QQ!@rP;=`<%l!?XR!@x]OY!=uYZ!>mZ!a!=u!a!b!?X!b#O!=u#O#P!Aq#P#S!=u#S#T!B{#T;'S!=u;'S;=`!Ci<%l~!=u~O!=u~~%fR!AvW&wPOY!=uYZ!>mZ!^!=u!^!_!@u!_;'S!=u;'S;=`!B`;=`<%l!?X<%lO!=uR!BcWO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o;=`<%l!=u<%lO!?XR!CSV${Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!ClP;=`<%l!=uV!CvV!oU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!DfY#}Q#lS&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`#p$z#p#q!EU#q;'S$z;'S;=`&W<%lO$zR!E]V#{Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!EyV!nQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!FgV$^Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z",tokenizers:[expression,interpolated,semicolon,0,1,2,3,eofToken],topRules:{Template:[0,72],Program:[1,232]},dynamicPrecedences:{284:1},specialized:[{term:81,get:(O,e)=>keywords$1(O)<<1,external:keywords$1},{term:81,get:O=>spec_Name[O]||-1}],tokenPrec:29354}),phpLanguage=LRLanguage.define({name:"php",parser:parser$6.configure({props:[indentNodeProp.add({IfStatement:continuedIndent({except:/^\s*({|else\b|elseif\b|endif\b)/}),TryStatement:continuedIndent({except:/^\s*({|catch\b|finally\b)/}),SwitchBody:O=>{let e=O.textAfter,t=/^\s*\}/.test(e),i=/^\s*(case|default)\b/.test(e);return O.baseIndent+(t?0:i?1:2)*O.unit},ColonBlock:O=>O.baseIndent+O.unit,"Block EnumBody DeclarationList":delimitedIndent({closing:"}"}),ArrowFunction:O=>O.baseIndent+O.unit,"String BlockComment":()=>null,Statement:continuedIndent({except:/^({|end(for|foreach|switch|while)\b)/})}),foldNodeProp.add({"Block EnumBody DeclarationList SwitchBody ArrayExpression ValueList":foldInside,ColonBlock:O=>({from:O.from+1,to:O.to}),BlockComment:O=>({from:O.from+2,to:O.to-2})})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"},line:"//"},indentOnInput:/^\s*(?:case |default:|end(?:if|for(?:each)?|switch|while)|else(?:if)?|\{|\})$/,wordChars:"$",closeBrackets:{stringPrefixes:["b","B"]}}});function php(O={}){let e,t=[];if(null===O.baseLanguage);else if(O.baseLanguage)e=O.baseLanguage;else{let O=html({matchClosingTags:!1});t.push(O.support),e=O.language}return new LanguageSupport(phpLanguage.configure({wrap:e&&parseMixed((O=>O.type.isTop?{parser:e.parser,overlay:O=>"Text"==O.name}:null)),top:O.plain?"Program":"Template"}),t)}const printKeyword=1,indent=194,dedent=195,newline$1=196,blankLineStart=197,newlineBracketed=198,eof$1=199,stringContent=200,Escape=2,replacementStart=3,stringEnd=201,ParenL$1=24,ParenthesizedExpression=25,TupleExpression=49,ComprehensionExpression=50,BracketL$2=55,ArrayExpression=56,ArrayComprehensionExpression=57,BraceL$2=59,DictionaryExpression=60,DictionaryComprehensionExpression=61,SetExpression=62,SetComprehensionExpression=63,ArgList=65,subscript=238,String$1$1=71,stringStart=241,stringStartD=242,stringStartL=243,stringStartLD=244,stringStartR=245,stringStartRD=246,stringStartRL=247,stringStartRLD=248,FormatString=72,stringStartF=249,stringStartFD=250,stringStartFL=251,stringStartFLD=252,stringStartFR=253,stringStartFRD=254,stringStartFRL=255,stringStartFRLD=256,FormatReplacement=73,nestedFormatReplacement=77,importList=263,TypeParamList=112,ParamList=130,SequencePattern=151,MappingPattern=152,PatternArgList=155,newline=10,carriageReturn=13,space=32,tab=9,hash=35,parenOpen=40,dot=46,braceOpen=123,braceClose=125,singleQuote=39,doubleQuote=34,backslash=92,letter_o=111,letter_x=120,letter_N=78,letter_u=117,letter_U=85,bracketed=new Set([25,49,50,263,65,130,56,57,238,62,63,72,73,77,60,61,151,152,155,112]);function isLineBreak(O){return 10==O||13==O}function isHex(O){return O>=48&&O<=57||O>=65&&O<=70||O>=97&&O<=102}const newlines$1=new ExternalTokenizer(((O,e)=>{let t;if(O.next<0)O.acceptToken(199);else if(e.context.flags&cx_Bracketed)isLineBreak(O.next)&&O.acceptToken(198,1);else if(((t=O.peek(-1))<0||isLineBreak(t))&&e.canShift(197)){let e=0;for(;32==O.next||9==O.next;)O.advance(),e++;10!=O.next&&13!=O.next&&35!=O.next||O.acceptToken(197,-e)}else isLineBreak(O.next)&&O.acceptToken(196,1)}),{contextual:!0}),indentation$1=new ExternalTokenizer(((O,e)=>{let t=e.context;if(t.flags)return;let i=O.peek(-1);if(10==i||13==i){let e=0,i=0;for(;;){if(32==O.next)e++;else{if(9!=O.next)break;e+=8-e%8}O.advance(),i++}e!=t.indent&&10!=O.next&&13!=O.next&&35!=O.next&&(e<t.indent?O.acceptToken(195,-i):O.acceptToken(194))}})),cx_Bracketed=1,cx_String=2,cx_DoubleQuote=4,cx_Long=8,cx_Raw=16,cx_Format=32;function Context$1(O,e,t){this.parent=O,this.indent=e,this.flags=t,this.hash=(O?O.hash+O.hash<<8:0)+e+(e<<4)+t+(t<<6)}const topIndent=new Context$1(null,0,0);function countIndent(O){let e=0;for(let t=0;t<O.length;t++)e+=9==O.charCodeAt(t)?8-e%8:1;return e}const stringFlags=new Map([[stringStart,0],[stringStartD,cx_DoubleQuote],[stringStartL,cx_Long],[stringStartLD,cx_Long|cx_DoubleQuote],[stringStartR,cx_Raw],[stringStartRD,cx_Raw|cx_DoubleQuote],[stringStartRL,cx_Raw|cx_Long],[stringStartRLD,cx_Raw|cx_Long|cx_DoubleQuote],[stringStartF,cx_Format],[stringStartFD,cx_Format|cx_DoubleQuote],[stringStartFL,cx_Format|cx_Long],[stringStartFLD,cx_Format|cx_Long|cx_DoubleQuote],[stringStartFR,cx_Format|cx_Raw],[stringStartFRD,cx_Format|cx_Raw|cx_DoubleQuote],[stringStartFRL,cx_Format|cx_Raw|cx_Long],[stringStartFRLD,cx_Format|cx_Raw|cx_Long|cx_DoubleQuote]].map((([O,e])=>[O,2|e]))),trackIndent=new ContextTracker({start:topIndent,reduce:(O,e,t,i)=>O.flags&cx_Bracketed&&bracketed.has(e)||(71==e||72==e)&&2&O.flags?O.parent:O,shift:(O,e,t,i)=>194==e?new Context$1(O,countIndent(i.read(i.pos,t.pos)),0):195==e?O.parent:24==e||55==e||59==e||3==e?new Context$1(O,0,cx_Bracketed):stringFlags.has(e)?new Context$1(O,0,stringFlags.get(e)|O.flags&cx_Bracketed):O,hash:O=>O.hash}),legacyPrint=new ExternalTokenizer((O=>{for(let e=0;e<5;e++){if(O.next!="print".charCodeAt(e))return;O.advance()}if(!/\w/.test(String.fromCharCode(O.next)))for(let e=0;;e++){let t=O.peek(e);if(32!=t&&9!=t)return void(40!=t&&46!=t&&10!=t&&13!=t&&35!=t&&O.acceptToken(1))}})),strings=new ExternalTokenizer(((O,e)=>{let{flags:t}=e.context,i=t&cx_DoubleQuote?34:39,n=(t&cx_Long)>0,r=!(t&cx_Raw),a=(t&cx_Format)>0,s=O.pos;for(;!(O.next<0);)if(a&&123==O.next){if(123!=O.peek(1)){if(O.pos==s)return void O.acceptToken(3,1);break}O.advance(2)}else{if(r&&92==O.next){if(O.pos==s){O.advance();let e=O.next;return e>=0&&(O.advance(),skipEscape(O,e)),void O.acceptToken(2)}break}if(O.next==i&&(!n||O.peek(1)==i&&O.peek(2)==i)){if(O.pos==s)return void O.acceptToken(201,n?3:1);break}if(10==O.next){if(n)O.advance();else if(O.pos==s)return void O.acceptToken(201);break}O.advance()}O.pos>s&&O.acceptToken(200)}));function skipEscape(O,e){if(111==e)for(let e=0;e<2&&O.next>=48&&O.next<=55;e++)O.advance();else if(120==e)for(let e=0;e<2&&isHex(O.next);e++)O.advance();else if(117==e)for(let e=0;e<4&&isHex(O.next);e++)O.advance();else if(85==e)for(let e=0;e<8&&isHex(O.next);e++)O.advance();else if(78==e&&123==O.next){for(O.advance();O.next>=0&&125!=O.next&&39!=O.next&&34!=O.next&&10!=O.next;)O.advance();125==O.next&&O.advance()}}const pythonHighlighting=styleTags({'async "*" "**" FormatConversion FormatSpec':tags$1.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield match case":tags$1.controlKeyword,"in not and or is del":tags$1.operatorKeyword,"from def class global nonlocal lambda":tags$1.definitionKeyword,import:tags$1.moduleKeyword,"with as print":tags$1.keyword,Boolean:tags$1.bool,None:tags$1.null,VariableName:tags$1.variableName,"CallExpression/VariableName":tags$1.function(tags$1.variableName),"FunctionDefinition/VariableName":tags$1.function(tags$1.definition(tags$1.variableName)),"ClassDefinition/VariableName":tags$1.definition(tags$1.className),PropertyName:tags$1.propertyName,"CallExpression/MemberExpression/PropertyName":tags$1.function(tags$1.propertyName),Comment:tags$1.lineComment,Number:tags$1.number,String:tags$1.string,FormatString:tags$1.special(tags$1.string),Escape:tags$1.escape,UpdateOp:tags$1.updateOperator,"ArithOp!":tags$1.arithmeticOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,AssignOp:tags$1.definitionOperator,Ellipsis:tags$1.punctuation,At:tags$1.meta,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace,".":tags$1.derefOperator,", ;":tags$1.separator}),spec_identifier$1={__proto__:null,await:44,or:54,and:56,in:60,not:62,is:64,if:70,else:72,lambda:76,yield:94,from:96,async:102,for:104,None:162,True:164,False:164,del:178,pass:182,break:186,continue:190,return:194,raise:202,import:206,as:208,global:212,nonlocal:214,assert:218,type:223,elif:236,while:240,try:246,except:248,finally:250,with:254,def:258,class:268,match:279,case:285},parser$5=LRParser.deserialize({version:14,states:"##jO`QeOOP$}OSOOO&WQtO'#HUOOQS'#Co'#CoOOQS'#Cp'#CpO'vQdO'#CnO*UQtO'#HTOOQS'#HU'#HUOOQS'#DU'#DUOOQS'#HT'#HTO*rQdO'#D_O+VQdO'#DfO+gQdO'#DjO+zOWO'#DuO,VOWO'#DvO.[QtO'#GuOOQS'#Gu'#GuO'vQdO'#GtO0ZQtO'#GtOOQS'#Eb'#EbO0rQdO'#EcOOQS'#Gs'#GsO0|QdO'#GrOOQV'#Gr'#GrO1XQdO'#FYOOQS'#G^'#G^O1^QdO'#FXOOQV'#IS'#ISOOQV'#Gq'#GqOOQV'#Fq'#FqQ`QeOOO'vQdO'#CqO1lQdO'#C}O1sQdO'#DRO2RQdO'#HYO2cQtO'#EVO'vQdO'#EWOOQS'#EY'#EYOOQS'#E['#E[OOQS'#E^'#E^O2wQdO'#E`O3_QdO'#EdO3rQdO'#EfO3zQtO'#EfO1XQdO'#EiO0rQdO'#ElO1XQdO'#EnO0rQdO'#EtO0rQdO'#EwO4VQdO'#EyO4^QdO'#FOO4iQdO'#EzO0rQdO'#FOO1XQdO'#FQO1XQdO'#FVO4nQdO'#F[P4uOdO'#GpPOOO)CBd)CBdOOQS'#Ce'#CeOOQS'#Cf'#CfOOQS'#Cg'#CgOOQS'#Ch'#ChOOQS'#Ci'#CiOOQS'#Cj'#CjOOQS'#Cl'#ClO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO5TQdO'#DoOOQS,5:Y,5:YO5hQdO'#HdOOQS,5:],5:]O5uQ!fO,5:]O5zQtO,59YO1lQdO,59bO1lQdO,59bO1lQdO,59bO8jQdO,59bO8oQdO,59bO8vQdO,59jO8}QdO'#HTO:TQdO'#HSOOQS'#HS'#HSOOQS'#D['#D[O:lQdO,59aO'vQdO,59aO:zQdO,59aOOQS,59y,59yO;PQdO,5:RO'vQdO,5:ROOQS,5:Q,5:QO;_QdO,5:QO;dQdO,5:XO'vQdO,5:XO'vQdO,5:VOOQS,5:U,5:UO;uQdO,5:UO;zQdO,5:WOOOW'#Fy'#FyO<POWO,5:aOOQS,5:a,5:aO<[QdO'#HwOOOW'#Dw'#DwOOOW'#Fz'#FzO<lOWO,5:bOOQS,5:b,5:bOOQS'#F}'#F}O<zQtO,5:iO?lQtO,5=`O@VQ#xO,5=`O@vQtO,5=`OOQS,5:},5:}OA_QeO'#GWOBqQdO,5;^OOQV,5=^,5=^OB|QtO'#IPOCkQdO,5;tOOQS-E:[-E:[OOQV,5;s,5;sO4dQdO'#FQOOQV-E9o-E9oOCsQtO,59]OEzQtO,59iOFeQdO'#HVOFpQdO'#HVO1XQdO'#HVOF{QdO'#DTOGTQdO,59mOGYQdO'#HZO'vQdO'#HZO0rQdO,5=tOOQS,5=t,5=tO0rQdO'#EROOQS'#ES'#ESOGwQdO'#GPOHXQdO,58|OHXQdO,58|O*xQdO,5:oOHgQtO'#H]OOQS,5:r,5:rOOQS,5:z,5:zOHzQdO,5;OOI]QdO'#IOO1XQdO'#H}OOQS,5;Q,5;QOOQS'#GT'#GTOIqQtO,5;QOJPQdO,5;QOJUQdO'#IQOOQS,5;T,5;TOJdQdO'#H|OOQS,5;W,5;WOJuQdO,5;YO4iQdO,5;`O4iQdO,5;cOJ}QtO'#ITO'vQdO'#ITOKXQdO,5;eO4VQdO,5;eO0rQdO,5;jO1XQdO,5;lOK^QeO'#EuOLjQgO,5;fO!!kQdO'#IUO4iQdO,5;jO!!vQdO,5;lO!#OQdO,5;qO!#ZQtO,5;vO'vQdO,5;vPOOO,5=[,5=[P!#bOSO,5=[P!#jOdO,5=[O!&bQtO1G.jO!&iQtO1G.jO!)YQtO1G.jO!)dQtO1G.jO!+}QtO1G.jO!,bQtO1G.jO!,uQdO'#HcO!-TQtO'#GuO0rQdO'#HcO!-_QdO'#HbOOQS,5:Z,5:ZO!-gQdO,5:ZO!-lQdO'#HeO!-wQdO'#HeO!.[QdO,5>OOOQS'#Ds'#DsOOQS1G/w1G/wOOQS1G.|1G.|O!/[QtO1G.|O!/cQtO1G.|O1lQdO1G.|O!0OQdO1G/UOOQS'#DZ'#DZO0rQdO,59tOOQS1G.{1G.{O!0VQdO1G/eO!0gQdO1G/eO!0oQdO1G/fO'vQdO'#H[O!0tQdO'#H[O!0yQtO1G.{O!1ZQdO,59iO!2aQdO,5=zO!2qQdO,5=zO!2yQdO1G/mO!3OQtO1G/mOOQS1G/l1G/lO!3`QdO,5=uO!4VQdO,5=uO0rQdO1G/qO!4tQdO1G/sO!4yQtO1G/sO!5ZQtO1G/qOOQS1G/p1G/pOOQS1G/r1G/rOOOW-E9w-E9wOOQS1G/{1G/{O!5kQdO'#HxO0rQdO'#HxO!5|QdO,5>cOOOW-E9x-E9xOOQS1G/|1G/|OOQS-E9{-E9{O!6[Q#xO1G2zO!6{QtO1G2zO'vQdO,5<jOOQS,5<j,5<jOOQS-E9|-E9|OOQS,5<r,5<rOOQS-E:U-E:UOOQV1G0x1G0xO1XQdO'#GRO!7dQtO,5>kOOQS1G1`1G1`O!8RQdO1G1`OOQS'#DV'#DVO0rQdO,5=qOOQS,5=q,5=qO!8WQdO'#FrO!8cQdO,59oO!8kQdO1G/XO!8uQtO,5=uOOQS1G3`1G3`OOQS,5:m,5:mO!9fQdO'#GtOOQS,5<k,5<kOOQS-E9}-E9}O!9wQdO1G.hOOQS1G0Z1G0ZO!:VQdO,5=wO!:gQdO,5=wO0rQdO1G0jO0rQdO1G0jO!:xQdO,5>jO!;ZQdO,5>jO1XQdO,5>jO!;lQdO,5>iOOQS-E:R-E:RO!;qQdO1G0lO!;|QdO1G0lO!<RQdO,5>lO!<aQdO,5>lO!<oQdO,5>hO!=VQdO,5>hO!=hQdO'#EpO0rQdO1G0tO!=sQdO1G0tO!=xQgO1G0zO!AvQgO1G0}O!EqQdO,5>oO!E{QdO,5>oO!FTQtO,5>oO0rQdO1G1PO!F_QdO1G1PO4iQdO1G1UO!!vQdO1G1WOOQV,5;a,5;aO!FdQfO,5;aO!FiQgO1G1QO!JjQdO'#GZO4iQdO1G1QO4iQdO1G1QO!JzQdO,5>pO!KXQdO,5>pO1XQdO,5>pOOQV1G1U1G1UO!KaQdO'#FSO!KrQ!fO1G1WO!KzQdO1G1WOOQV1G1]1G1]O4iQdO1G1]O!LPQdO1G1]O!LXQdO'#F^OOQV1G1b1G1bO!#ZQtO1G1bPOOO1G2v1G2vP!L^OSO1G2vOOQS,5=},5=}OOQS'#Dp'#DpO0rQdO,5=}O!LfQdO,5=|O!LyQdO,5=|OOQS1G/u1G/uO!MRQdO,5>PO!McQdO,5>PO!MkQdO,5>PO!NOQdO,5>PO!N`QdO,5>POOQS1G3j1G3jOOQS7+$h7+$hO!8kQdO7+$pO#!RQdO1G.|O#!YQdO1G.|OOQS1G/`1G/`OOQS,5<`,5<`O'vQdO,5<`OOQS7+%P7+%PO#!aQdO7+%POOQS-E9r-E9rOOQS7+%Q7+%QO#!qQdO,5=vO'vQdO,5=vOOQS7+$g7+$gO#!vQdO7+%PO##OQdO7+%QO##TQdO1G3fOOQS7+%X7+%XO##eQdO1G3fO##mQdO7+%XOOQS,5<_,5<_O'vQdO,5<_O##rQdO1G3aOOQS-E9q-E9qO#$iQdO7+%]OOQS7+%_7+%_O#$wQdO1G3aO#%fQdO7+%_O#%kQdO1G3gO#%{QdO1G3gO#&TQdO7+%]O#&YQdO,5>dO#&sQdO,5>dO#&sQdO,5>dOOQS'#Dx'#DxO#'UO&jO'#DzO#'aO`O'#HyOOOW1G3}1G3}O#'fQdO1G3}O#'nQdO1G3}O#'yQ#xO7+(fO#(jQtO1G2UP#)TQdO'#GOOOQS,5<m,5<mOOQS-E:P-E:POOQS7+&z7+&zOOQS1G3]1G3]OOQS,5<^,5<^OOQS-E9p-E9pOOQS7+$s7+$sO#)bQdO,5=`O#){QdO,5=`O#*^QtO,5<aO#*qQdO1G3cOOQS-E9s-E9sOOQS7+&U7+&UO#+RQdO7+&UO#+aQdO,5<nO#+uQdO1G4UOOQS-E:Q-E:QO#,WQdO1G4UOOQS1G4T1G4TOOQS7+&W7+&WO#,iQdO7+&WOOQS,5<p,5<pO#,tQdO1G4WOOQS-E:S-E:SOOQS,5<l,5<lO#-SQdO1G4SOOQS-E:O-E:OO1XQdO'#EqO#-jQdO'#EqO#-uQdO'#IRO#-}QdO,5;[OOQS7+&`7+&`O0rQdO7+&`O#.SQgO7+&fO!JmQdO'#GXO4iQdO7+&fO4iQdO7+&iO#2QQtO,5<tO'vQdO,5<tO#2[QdO1G4ZOOQS-E:W-E:WO#2fQdO1G4ZO4iQdO7+&kO0rQdO7+&kOOQV7+&p7+&pO!KrQ!fO7+&rO!KzQdO7+&rO`QeO1G0{OOQV-E:X-E:XO4iQdO7+&lO4iQdO7+&lOOQV,5<u,5<uO#2nQdO,5<uO!JmQdO,5<uOOQV7+&l7+&lO#2yQgO7+&lO#6tQdO,5<vO#7PQdO1G4[OOQS-E:Y-E:YO#7^QdO1G4[O#7fQdO'#IWO#7tQdO'#IWO1XQdO'#IWOOQS'#IW'#IWO#8PQdO'#IVOOQS,5;n,5;nO#8XQdO,5;nO0rQdO'#FUOOQV7+&r7+&rO4iQdO7+&rOOQV7+&w7+&wO4iQdO7+&wO#8^QfO,5;xOOQV7+&|7+&|POOO7+(b7+(bO#8cQdO1G3iOOQS,5<c,5<cO#8qQdO1G3hOOQS-E9u-E9uO#9UQdO,5<dO#9aQdO,5<dO#9tQdO1G3kOOQS-E9v-E9vO#:UQdO1G3kO#:^QdO1G3kO#:nQdO1G3kO#:UQdO1G3kOOQS<<H[<<H[O#:yQtO1G1zOOQS<<Hk<<HkP#;WQdO'#FtO8vQdO1G3bO#;eQdO1G3bO#;jQdO<<HkOOQS<<Hl<<HlO#;zQdO7+)QOOQS<<Hs<<HsO#<[QtO1G1yP#<{QdO'#FsO#=YQdO7+)RO#=jQdO7+)RO#=rQdO<<HwO#=wQdO7+({OOQS<<Hy<<HyO#>nQdO,5<bO'vQdO,5<bOOQS-E9t-E9tOOQS<<Hw<<HwOOQS,5<g,5<gO0rQdO,5<gO#>sQdO1G4OOOQS-E9y-E9yO#?^QdO1G4OO<[QdO'#H{OOOO'#D{'#D{OOOO'#F|'#F|O#?oO&jO,5:fOOOW,5>e,5>eOOOW7+)i7+)iO#?zQdO7+)iO#@SQdO1G2zO#@mQdO1G2zP'vQdO'#FuO0rQdO<<IpO1XQdO1G2YP1XQdO'#GSO#AOQdO7+)pO#AaQdO7+)pOOQS<<Ir<<IrP1XQdO'#GUP0rQdO'#GQOOQS,5;],5;]O#ArQdO,5>mO#BQQdO,5>mOOQS1G0v1G0vOOQS<<Iz<<IzOOQV-E:V-E:VO4iQdO<<JQOOQV,5<s,5<sO4iQdO,5<sOOQV<<JQ<<JQOOQV<<JT<<JTO#BYQtO1G2`P#BdQdO'#GYO#BkQdO7+)uO#BuQgO<<JVO4iQdO<<JVOOQV<<J^<<J^O4iQdO<<J^O!KrQ!fO<<J^O#FpQgO7+&gOOQV<<JW<<JWO#FzQgO<<JWOOQV1G2a1G2aO1XQdO1G2aO#JuQdO1G2aO4iQdO<<JWO1XQdO1G2bP0rQdO'#G[O#KQQdO7+)vO#K_QdO7+)vOOQS'#FT'#FTO0rQdO,5>rO#KgQdO,5>rOOQS,5>r,5>rO#KrQdO,5>qO#LTQdO,5>qOOQS1G1Y1G1YOOQS,5;p,5;pOOQV<<Jc<<JcO#L]QdO1G1dOOQS7+)T7+)TP#LbQdO'#FwO#LrQdO1G2OO#MVQdO1G2OO#MgQdO1G2OP#MrQdO'#FxO#NPQdO7+)VO#NaQdO7+)VO#NaQdO7+)VO#NiQdO7+)VO#NyQdO7+(|O8vQdO7+(|OOQSAN>VAN>VO$ dQdO<<LmOOQSAN>cAN>cO0rQdO1G1|O$ tQtO1G1|P$!OQdO'#FvOOQS1G2R1G2RP$!]QdO'#F{O$!jQdO7+)jO$#TQdO,5>gOOOO-E9z-E9zOOOW<<MT<<MTO$#cQdO7+(fOOQSAN?[AN?[OOQS7+'t7+'tO$#|QdO<<M[OOQS,5<q,5<qO$$_QdO1G4XOOQS-E:T-E:TOOQVAN?lAN?lOOQV1G2_1G2_O4iQdOAN?qO$$mQgOAN?qOOQVAN?xAN?xO4iQdOAN?xOOQV<<JR<<JRO4iQdOAN?rO4iQdO7+'{OOQV7+'{7+'{O1XQdO7+'{OOQVAN?rAN?rOOQS7+'|7+'|O$(hQdO<<MbOOQS1G4^1G4^O0rQdO1G4^OOQS,5<w,5<wO$(uQdO1G4]OOQS-E:Z-E:ZOOQU'#G_'#G_O$)WQfO7+'OO$)cQdO'#F_O$*jQdO7+'jO$*zQdO7+'jOOQS7+'j7+'jO$+VQdO<<LqO$+gQdO<<LqO$+gQdO<<LqO$+oQdO'#H^OOQS<<Lh<<LhO$+yQdO<<LhOOQS7+'h7+'hOOQS'#D|'#D|OOOO1G4R1G4RO$,dQdO1G4RO$,lQdO1G4RP!=hQdO'#GVOOQVG25]G25]O4iQdOG25]OOQVG25dG25dOOQVG25^G25^OOQV<<Kg<<KgO4iQdO<<KgOOQS7+)x7+)xP$,wQdO'#G]OOQU-E:]-E:]OOQV<<Jj<<JjO$-kQtO'#FaOOQS'#Fc'#FcO$-{QdO'#FbO$.mQdO'#FbOOQS'#Fb'#FbO$.rQdO'#IYO$)cQdO'#FiO$)cQdO'#FiO$/ZQdO'#FjO$)cQdO'#FkO$/bQdO'#IZOOQS'#IZ'#IZO$0PQdO,5;yOOQS<<KU<<KUO$0XQdO<<KUO$0iQdOANB]O$0yQdOANB]O$1RQdO'#H_OOQS'#H_'#H_O1sQdO'#DcO$1lQdO,5=xOOQSANBSANBSOOOO7+)m7+)mO$2TQdO7+)mOOQVLD*wLD*wOOQVANARANARO5uQ!fO'#GaO$2]QtO,5<SO$)cQdO'#FmOOQS,5<W,5<WOOQS'#Fd'#FdO$2}QdO,5;|O$3SQdO,5;|OOQS'#Fg'#FgO$)cQdO'#G`O$3tQdO,5<QO$4`QdO,5>tO$4pQdO,5>tO1XQdO,5<PO$5RQdO,5<TO$5WQdO,5<TO$)cQdO'#I[O$5]QdO'#I[O$5bQdO,5<UOOQS,5<V,5<VO'vQdO'#FpOOQU1G1e1G1eO4iQdO1G1eOOQSAN@pAN@pO$5gQdOG27wO$5wQdO,59}OOQS1G3d1G3dOOOO<<MX<<MXOOQS,5<{,5<{OOQS-E:_-E:_O$5|QtO'#FaO$6TQdO'#I]O$6cQdO'#I]O$6kQdO,5<XOOQS1G1h1G1hO$6pQdO1G1hO$6uQdO,5<zOOQS-E:^-E:^O$7aQdO,5=OO$7xQdO1G4`OOQS-E:b-E:bOOQS1G1k1G1kOOQS1G1o1G1oO$8YQdO,5>vO$)cQdO,5>vOOQS1G1p1G1pO$8hQtO,5<[OOQU7+'P7+'PO$+oQdO1G/iO$)cQdO,5<YO$8oQdO,5>wO$8vQdO,5>wOOQS1G1s1G1sOOQS7+'S7+'SP$)cQdO'#GdO$9OQdO1G4bO$9YQdO1G4bO$9bQdO1G4bOOQS7+%T7+%TO$9pQdO1G1tO$:OQtO'#FaO$:VQdO,5<}OOQS,5<},5<}O$:eQdO1G4cOOQS-E:a-E:aO$)cQdO,5<|O$:lQdO,5<|O$:qQdO7+)|OOQS-E:`-E:`O$:{QdO7+)|O$)cQdO,5<ZP$)cQdO'#GcO$;TQdO1G2hO$)cQdO1G2hP$;cQdO'#GbO$;jQdO<<MhO$;tQdO1G1uO$<SQdO7+(SO8vQdO'#C}O8vQdO,59bO8vQdO,59bO8vQdO,59bO$<bQtO,5=`O8vQdO1G.|O0rQdO1G/XO0rQdO7+$pP$<uQdO'#GOO'vQdO'#GtO$=SQdO,59bO$=XQdO,59bO$=`QdO,59mO$=eQdO1G/UO1sQdO'#DRO8vQdO,59j",stateData:"$>O~O%cOS%^OSSOS%]PQ~OPdOVaOfoOhYOopOs!POvqO!PrO!Q{O!T!SO!U!RO!XZO!][O!h`O!r`O!s`O!t`O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#l!QO#o!TO#s!UO#u!VO#z!WO#}hO$P!XO%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~O%]!YO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%j![O%k!]O%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aO~Ok%xXl%xXm%xXn%xXo%xXp%xXs%xXz%xX{%xX!x%xX#g%xX%[%xX%_%xX%z%xXg%xX!T%xX!U%xX%{%xX!W%xX![%xX!Q%xX#[%xXt%xX!m%xX~P%SOfoOhYO!XZO!][O!h`O!r`O!s`O!t`O%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~Oz%wX{%wX#g%wX%[%wX%_%wX%z%wX~Ok!pOl!qOm!oOn!oOo!rOp!sOs!tO!x%wX~P)pOV!zOg!|Oo0cOv0qO!PrO~P'vOV#OOo0cOv0qO!W#PO~P'vOV#SOa#TOo0cOv0qO![#UO~P'vOQ#XO%`#XO%a#ZO~OQ#^OR#[O%`#^O%a#`O~OV%iX_%iXa%iXh%iXk%iXl%iXm%iXn%iXo%iXp%iXs%iXz%iX!X%iX!f%iX%j%iX%k%iX%l%iX%m%iX%n%iX%o%iX%p%iX%q%iX%r%iX%s%iXg%iX!T%iX!U%iX~O&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O{%iX!x%iX#g%iX%[%iX%_%iX%z%iX%{%iX!W%iX![%iX!Q%iX#[%iXt%iX!m%iX~P,eOz#dO{%hX!x%hX#g%hX%[%hX%_%hX%z%hX~Oo0cOv0qO~P'vO#g#gO%[#iO%_#iO~O%uWO~O!T#nO#u!VO#z!WO#}hO~OopO~P'vOV#sOa#tO%uWO{wP~OV#xOo0cOv0qO!Q#yO~P'vO{#{O!x$QO%z#|O#g!yX%[!yX%_!yX~OV#xOo0cOv0qO#g#SX%[#SX%_#SX~P'vOo0cOv0qO#g#WX%[#WX%_#WX~P'vOh$WO%uWO~O!f$YO!r$YO%uWO~OV$eO~P'vO!U$gO#s$hO#u$iO~O{$jO~OV$qO~P'vOS$sO%[$rO%_$rO%c$tO~OV$}Oa$}Og%POo0cOv0qO~P'vOo0cOv0qO{%SO~P'vO&Y%UO~Oa!bOh!iO!X!kO!f!mOVba_bakbalbambanbaobapbasbazba{ba!xba#gba%[ba%_ba%jba%kba%lba%mba%nba%oba%pba%qba%rba%sba%zbagba!Tba!Uba%{ba!Wba![ba!Qba#[batba!mba~On%ZO~Oo%ZO~P'vOo0cO~P'vOk0eOl0fOm0dOn0dOo0mOp0nOs0rOg%wX!T%wX!U%wX%{%wX!W%wX![%wX!Q%wX#[%wX!m%wX~P)pO%{%]Og%vXz%vX!T%vX!U%vX!W%vX{%vX~Og%_Oz%`O!T%dO!U%cO~Og%_O~Oz%gO!T%dO!U%cO!W&SX~O!W%kO~Oz%lO{%nO!T%dO!U%cO![%}X~O![%rO~O![%sO~OQ#XO%`#XO%a%uO~OV%wOo0cOv0qO!PrO~P'vOQ#^OR#[O%`#^O%a%zO~OV!qa_!qaa!qah!qak!qal!qam!qan!qao!qap!qas!qaz!qa{!qa!X!qa!f!qa!x!qa#g!qa%[!qa%_!qa%j!qa%k!qa%l!qa%m!qa%n!qa%o!qa%p!qa%q!qa%r!qa%s!qa%z!qag!qa!T!qa!U!qa%{!qa!W!qa![!qa!Q!qa#[!qat!qa!m!qa~P#yOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P%SOV&OOopOvqO{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P'vOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#g$zX%[$zX%_$zX~P'vO#g#gO%[&TO%_&TO~O!f&UOh&sX%[&sXz&sX#[&sX#g&sX%_&sX#Z&sXg&sX~Oh!iO%[&WO~Okealeameaneaoeapeaseazea{ea!xea#gea%[ea%_ea%zeagea!Tea!Uea%{ea!Wea![ea!Qea#[eatea!mea~P%SOsqazqa{qa#gqa%[qa%_qa%zqa~Ok!pOl!qOm!oOn!oOo!rOp!sO!xqa~PEcO%z&YOz%yX{%yX~O%uWOz%yX{%yX~Oz&]O{wX~O{&_O~Oz%lO#g%}X%[%}X%_%}Xg%}X{%}X![%}X!m%}X%z%}X~OV0lOo0cOv0qO!PrO~P'vO%z#|O#gUa%[Ua%_Ua~Oz&hO#g&PX%[&PX%_&PXn&PX~P%SOz&kO!Q&jO#g#Wa%[#Wa%_#Wa~Oz&lO#[&nO#g&rX%[&rX%_&rXg&rX~O!f$YO!r$YO#Z&qO%uWO~O#Z&qO~Oz&sO#g&tX%[&tX%_&tX~Oz&uO#g&pX%[&pX%_&pX{&pX~O!X&wO%z&xO~Oz&|On&wX~P%SOn'PO~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO%['UO~P'vOt'YO#p'WO#q'XOP#naV#naf#nah#nao#nas#nav#na!P#na!Q#na!T#na!U#na!X#na!]#na!h#na!r#na!s#na!t#na!{#na!}#na#P#na#R#na#T#na#X#na#Z#na#^#na#_#na#a#na#c#na#l#na#o#na#s#na#u#na#z#na#}#na$P#na%X#na%o#na%p#na%t#na%u#na&Z#na&[#na&]#na&^#na&_#na&`#na&a#na&b#na&c#na&d#na&e#na&f#na&g#na&h#na&i#na&j#na%Z#na%_#na~Oz'ZO#[']O{&xX~Oh'_O!X&wO~Oh!iO{$jO!X&wO~O{'eO~P%SO%['hO%_'hO~OS'iO%['hO%_'hO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%k!]O~P!#uO%kWi~P!#uOV!aO_!aOa!bOh!iO!X!kO!f!mO%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%m!_O%n!_O~P!&pO%mWi%nWi~P!&pOa!bOh!iO!X!kO!f!mOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%mWi%nWi%oWi%pWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~OV!aO_!aO%q!aO%r!aO%s!aO~P!)nOVWi_Wi%qWi%rWi%sWi~P!)nO!T%dO!U%cOg&VXz&VX~O%z'kO%{'kO~P,eOz'mOg&UX~Og'oO~Oz'pO{'rO!W&XX~Oo0cOv0qOz'pO{'sO!W&XX~P'vO!W'uO~Om!oOn!oOo!rOp!sOkjisjizji{ji!xji#gji%[ji%_ji%zji~Ol!qO~P!.aOlji~P!.aOk0eOl0fOm0dOn0dOo0mOp0nO~Ot'wO~P!/jOV'|Og'}Oo0cOv0qO~P'vOg'}Oz(OO~Og(QO~O!U(SO~Og(TOz(OO!T%dO!U%cO~P%SOk0eOl0fOm0dOn0dOo0mOp0nOgqa!Tqa!Uqa%{qa!Wqa![qa!Qqa#[qatqa!mqa~PEcOV'|Oo0cOv0qO!W&Sa~P'vOz(WO!W&Sa~O!W(XO~Oz(WO!T%dO!U%cO!W&Sa~P%SOV(]Oo0cOv0qO![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~P'vOz(^O![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~O![(aO~Oz(^O!T%dO!U%cO![%}a~P%SOz(dO!T%dO!U%cO![&Ta~P%SOz(gO{&lX![&lX!m&lX%z&lX~O{(kO![(mO!m(nO%z(jO~OV&OOopOvqO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~P'vOz(pO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~O!f&UOh&sa%[&saz&sa#[&sa#g&sa%_&sa#Z&sag&sa~O%[(uO~OV#sOa#tO%uWO~Oz&]O{wa~OopOvqO~P'vOz(^O#g%}a%[%}a%_%}ag%}a{%}a![%}a!m%}a%z%}a~P%SOz(zO#g%hX%[%hX%_%hX%z%hX~O%z#|O#gUi%[Ui%_Ui~O#g&Pa%[&Pa%_&Pan&Pa~P'vOz(}O#g&Pa%[&Pa%_&Pan&Pa~O%uWO#g&ra%[&ra%_&rag&ra~Oz)SO#g&ra%[&ra%_&rag&ra~Og)VO~OV)WOh$WO%uWO~O#Z)XO~O%uWO#g&ta%[&ta%_&ta~Oz)ZO#g&ta%[&ta%_&ta~Oo0cOv0qO#g&pa%[&pa%_&pa{&pa~P'vOz)^O#g&pa%[&pa%_&pa{&pa~OV)`Oa)`O%uWO~O%z)eO~Ot)hO#j)gOP#hiV#hif#hih#hio#his#hiv#hi!P#hi!Q#hi!T#hi!U#hi!X#hi!]#hi!h#hi!r#hi!s#hi!t#hi!{#hi!}#hi#P#hi#R#hi#T#hi#X#hi#Z#hi#^#hi#_#hi#a#hi#c#hi#l#hi#o#hi#s#hi#u#hi#z#hi#}#hi$P#hi%X#hi%o#hi%p#hi%t#hi%u#hi&Z#hi&[#hi&]#hi&^#hi&_#hi&`#hi&a#hi&b#hi&c#hi&d#hi&e#hi&f#hi&g#hi&h#hi&i#hi&j#hi%Z#hi%_#hi~Ot)iOP#kiV#kif#kih#kio#kis#kiv#ki!P#ki!Q#ki!T#ki!U#ki!X#ki!]#ki!h#ki!r#ki!s#ki!t#ki!{#ki!}#ki#P#ki#R#ki#T#ki#X#ki#Z#ki#^#ki#_#ki#a#ki#c#ki#l#ki#o#ki#s#ki#u#ki#z#ki#}#ki$P#ki%X#ki%o#ki%p#ki%t#ki%u#ki&Z#ki&[#ki&]#ki&^#ki&_#ki&`#ki&a#ki&b#ki&c#ki&d#ki&e#ki&f#ki&g#ki&h#ki&i#ki&j#ki%Z#ki%_#ki~OV)kOn&wa~P'vOz)lOn&wa~Oz)lOn&wa~P%SOn)pO~O%Y)tO~Ot)wO#p'WO#q)vOP#niV#nif#nih#nio#nis#niv#ni!P#ni!Q#ni!T#ni!U#ni!X#ni!]#ni!h#ni!r#ni!s#ni!t#ni!{#ni!}#ni#P#ni#R#ni#T#ni#X#ni#Z#ni#^#ni#_#ni#a#ni#c#ni#l#ni#o#ni#s#ni#u#ni#z#ni#}#ni$P#ni%X#ni%o#ni%p#ni%t#ni%u#ni&Z#ni&[#ni&]#ni&^#ni&_#ni&`#ni&a#ni&b#ni&c#ni&d#ni&e#ni&f#ni&g#ni&h#ni&i#ni&j#ni%Z#ni%_#ni~OV)zOo0cOv0qO{$jO~P'vOo0cOv0qO{&xa~P'vOz*OO{&xa~OV*SOa*TOg*WO%q*UO%uWO~O{$jO&{*YO~Oh'_O~Oh!iO{$jO~O%[*_O~O%[*aO%_*aO~OV$}Oa$}Oo0cOv0qOg&Ua~P'vOz*dOg&Ua~Oo0cOv0qO{*gO!W&Xa~P'vOz*hO!W&Xa~Oo0cOv0qOz*hO{*kO!W&Xa~P'vOo0cOv0qOz*hO!W&Xa~P'vOz*hO{*kO!W&Xa~Om0dOn0dOo0mOp0nOgjikjisjizji!Tji!Uji%{ji!Wji{ji![ji#gji%[ji%_ji!Qji#[jitji!mji%zji~Ol0fO~P!NkOlji~P!NkOV'|Og*pOo0cOv0qO~P'vOn*rO~Og*pOz*tO~Og*uO~OV'|Oo0cOv0qO!W&Si~P'vOz*vO!W&Si~O!W*wO~OV(]Oo0cOv0qO![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~P'vOz*zO!T%dO!U%cO![&Ti~Oz*}O![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~O![+OO~Oa+QOo0cOv0qO![&Ti~P'vOz*zO![&Ti~O![+SO~OV+UOo0cOv0qO{&la![&la!m&la%z&la~P'vOz+VO{&la![&la!m&la%z&la~O!]+YO&n+[O![!nX~O![+^O~O{(kO![+_O~O{(kO![+_O!m+`O~OV&OOopOvqO{%hq!x%hq#g%hq%[%hq%_%hq%z%hq~P'vOz$ri{$ri!x$ri#g$ri%[$ri%_$ri%z$ri~P%SOV&OOopOvqO~P'vOV&OOo0cOv0qO#g%ha%[%ha%_%ha%z%ha~P'vOz+aO#g%ha%[%ha%_%ha%z%ha~Oz$ia#g$ia%[$ia%_$ian$ia~P%SO#g&Pi%[&Pi%_&Pin&Pi~P'vOz+dO#g#Wq%[#Wq%_#Wq~O#[+eOz$va#g$va%[$va%_$vag$va~O%uWO#g&ri%[&ri%_&rig&ri~Oz+gO#g&ri%[&ri%_&rig&ri~OV+iOh$WO%uWO~O%uWO#g&ti%[&ti%_&ti~Oo0cOv0qO#g&pi%[&pi%_&pi{&pi~P'vO{#{Oz#eX!W#eX~Oz+mO!W&uX~O!W+oO~Ot+rO#j)gOP#hqV#hqf#hqh#hqo#hqs#hqv#hq!P#hq!Q#hq!T#hq!U#hq!X#hq!]#hq!h#hq!r#hq!s#hq!t#hq!{#hq!}#hq#P#hq#R#hq#T#hq#X#hq#Z#hq#^#hq#_#hq#a#hq#c#hq#l#hq#o#hq#s#hq#u#hq#z#hq#}#hq$P#hq%X#hq%o#hq%p#hq%t#hq%u#hq&Z#hq&[#hq&]#hq&^#hq&_#hq&`#hq&a#hq&b#hq&c#hq&d#hq&e#hq&f#hq&g#hq&h#hq&i#hq&j#hq%Z#hq%_#hq~On$|az$|a~P%SOV)kOn&wi~P'vOz+yOn&wi~Oz,TO{$jO#[,TO~O#q,VOP#nqV#nqf#nqh#nqo#nqs#nqv#nq!P#nq!Q#nq!T#nq!U#nq!X#nq!]#nq!h#nq!r#nq!s#nq!t#nq!{#nq!}#nq#P#nq#R#nq#T#nq#X#nq#Z#nq#^#nq#_#nq#a#nq#c#nq#l#nq#o#nq#s#nq#u#nq#z#nq#}#nq$P#nq%X#nq%o#nq%p#nq%t#nq%u#nq&Z#nq&[#nq&]#nq&^#nq&_#nq&`#nq&a#nq&b#nq&c#nq&d#nq&e#nq&f#nq&g#nq&h#nq&i#nq&j#nq%Z#nq%_#nq~O#[,WOz%Oa{%Oa~Oo0cOv0qO{&xi~P'vOz,YO{&xi~O{#{O%z,[Og&zXz&zX~O%uWOg&zXz&zX~Oz,`Og&yX~Og,bO~O%Y,eO~O!T%dO!U%cOg&Viz&Vi~OV$}Oa$}Oo0cOv0qOg&Ui~P'vO{,hOz$la!W$la~Oo0cOv0qO{,iOz$la!W$la~P'vOo0cOv0qO{*gO!W&Xi~P'vOz,lO!W&Xi~Oo0cOv0qOz,lO!W&Xi~P'vOz,lO{,oO!W&Xi~Og$hiz$hi!W$hi~P%SOV'|Oo0cOv0qO~P'vOn,qO~OV'|Og,rOo0cOv0qO~P'vOV'|Oo0cOv0qO!W&Sq~P'vOz$gi![$gi#g$gi%[$gi%_$gig$gi{$gi!m$gi%z$gi~P%SOV(]Oo0cOv0qO~P'vOa+QOo0cOv0qO![&Tq~P'vOz,sO![&Tq~O![,tO~OV(]Oo0cOv0qO![%}q#g%}q%[%}q%_%}qg%}q{%}q!m%}q%z%}q~P'vO{,uO~OV+UOo0cOv0qO{&li![&li!m&li%z&li~P'vOz,zO{&li![&li!m&li%z&li~O!]+YO&n+[O![!na~O{(kO![,}O~OV&OOo0cOv0qO#g%hi%[%hi%_%hi%z%hi~P'vOz-OO#g%hi%[%hi%_%hi%z%hi~O%uWO#g&rq%[&rq%_&rqg&rq~Oz-RO#g&rq%[&rq%_&rqg&rq~OV)`Oa)`O%uWO!W&ua~Oz-TO!W&ua~On$|iz$|i~P%SOV)kO~P'vOV)kOn&wq~P'vOt-XOP#myV#myf#myh#myo#mys#myv#my!P#my!Q#my!T#my!U#my!X#my!]#my!h#my!r#my!s#my!t#my!{#my!}#my#P#my#R#my#T#my#X#my#Z#my#^#my#_#my#a#my#c#my#l#my#o#my#s#my#u#my#z#my#}#my$P#my%X#my%o#my%p#my%t#my%u#my&Z#my&[#my&]#my&^#my&_#my&`#my&a#my&b#my&c#my&d#my&e#my&f#my&g#my&h#my&i#my&j#my%Z#my%_#my~O%Z-]O%_-]O~P`O#q-^OP#nyV#nyf#nyh#nyo#nys#nyv#ny!P#ny!Q#ny!T#ny!U#ny!X#ny!]#ny!h#ny!r#ny!s#ny!t#ny!{#ny!}#ny#P#ny#R#ny#T#ny#X#ny#Z#ny#^#ny#_#ny#a#ny#c#ny#l#ny#o#ny#s#ny#u#ny#z#ny#}#ny$P#ny%X#ny%o#ny%p#ny%t#ny%u#ny&Z#ny&[#ny&]#ny&^#ny&_#ny&`#ny&a#ny&b#ny&c#ny&d#ny&e#ny&f#ny&g#ny&h#ny&i#ny&j#ny%Z#ny%_#ny~Oz-aO{$jO#[-aO~Oo0cOv0qO{&xq~P'vOz-dO{&xq~O%z,[Og&zaz&za~OV*SOa*TO%q*UO%uWOg&ya~Oz-hOg&ya~O$S-lO~OV$}Oa$}Oo0cOv0qO~P'vOo0cOv0qO{-mOz$li!W$li~P'vOo0cOv0qOz$li!W$li~P'vO{-mOz$li!W$li~Oo0cOv0qO{*gO~P'vOo0cOv0qO{*gO!W&Xq~P'vOz-pO!W&Xq~Oo0cOv0qOz-pO!W&Xq~P'vOs-sO!T%dO!U%cOg&Oq!W&Oq![&Oqz&Oq~P!/jOa+QOo0cOv0qO![&Ty~P'vOz$ji![$ji~P%SOa+QOo0cOv0qO~P'vOV+UOo0cOv0qO~P'vOV+UOo0cOv0qO{&lq![&lq!m&lq%z&lq~P'vO{(kO![-xO!m-yO%z-wO~OV&OOo0cOv0qO#g%hq%[%hq%_%hq%z%hq~P'vO%uWO#g&ry%[&ry%_&ryg&ry~OV)`Oa)`O%uWO!W&ui~Ot-}OP#m!RV#m!Rf#m!Rh#m!Ro#m!Rs#m!Rv#m!R!P#m!R!Q#m!R!T#m!R!U#m!R!X#m!R!]#m!R!h#m!R!r#m!R!s#m!R!t#m!R!{#m!R!}#m!R#P#m!R#R#m!R#T#m!R#X#m!R#Z#m!R#^#m!R#_#m!R#a#m!R#c#m!R#l#m!R#o#m!R#s#m!R#u#m!R#z#m!R#}#m!R$P#m!R%X#m!R%o#m!R%p#m!R%t#m!R%u#m!R&Z#m!R&[#m!R&]#m!R&^#m!R&_#m!R&`#m!R&a#m!R&b#m!R&c#m!R&d#m!R&e#m!R&f#m!R&g#m!R&h#m!R&i#m!R&j#m!R%Z#m!R%_#m!R~Oo0cOv0qO{&xy~P'vOV*SOa*TO%q*UO%uWOg&yi~O$S-lO%Z.VO%_.VO~OV.aOh._O!X.^O!].`O!h.YO!s.[O!t.[O%p.XO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O~Oo0cOv0qOz$lq!W$lq~P'vO{.fOz$lq!W$lq~Oo0cOv0qO{*gO!W&Xy~P'vOz.gO!W&Xy~Oo0cOv.kO~P'vOs-sO!T%dO!U%cOg&Oy!W&Oy![&Oyz&Oy~P!/jO{(kO![.nO~O{(kO![.nO!m.oO~OV*SOa*TO%q*UO%uWO~Oh.tO!f.rOz$TX#[$TX%j$TXg$TX~Os$TX{$TX!W$TX![$TX~P$-VO%o.vO%p.vOs$UXz$UX{$UX#[$UX%j$UX!W$UXg$UX![$UX~O!h.xO~Oz.|O#[/OO%j.yOs&|X{&|X!W&|Xg&|X~Oa/RO~P$)oOh.tOs&}Xz&}X{&}X#[&}X%j&}X!W&}Xg&}X![&}X~Os/VO{$jO~Oo0cOv0qOz$ly!W$ly~P'vOo0cOv0qO{*gO!W&X!R~P'vOz/ZO!W&X!R~Og&RXs&RX!T&RX!U&RX!W&RX![&RXz&RX~P!/jOs-sO!T%dO!U%cOg&Qa!W&Qa![&Qaz&Qa~O{(kO![/^O~O!f.rOh$[as$[az$[a{$[a#[$[a%j$[a!W$[ag$[a![$[a~O!h/eO~O%o.vO%p.vOs$Uaz$Ua{$Ua#[$Ua%j$Ua!W$Uag$Ua![$Ua~O%j.yOs$Yaz$Ya{$Ya#[$Ya!W$Yag$Ya![$Ya~Os&|a{&|a!W&|ag&|a~P$)cOz/jOs&|a{&|a!W&|ag&|a~O!W/mO~Og/mO~O{/oO~O![/pO~Oo0cOv0qO{*gO!W&X!Z~P'vO{/sO~O%z/tO~P$-VOz/uO#[/OO%j.yOg'PX~Oz/uOg'PX~Og/wO~O!h/xO~O#[/OOs%Saz%Sa{%Sa%j%Sa!W%Sag%Sa![%Sa~O#[/OO%j.yOs%Waz%Wa{%Wa!W%Wag%Wa~Os&|i{&|i!W&|ig&|i~P$)cOz/zO#[/OO%j.yO!['Oa~O{$da~P%SOg'Pa~P$)cOz0SOg'Pa~Oa0UO!['Oi~P$)oOz0WO!['Oi~Oz0WO#[/OO%j.yO!['Oi~O#[/OO%j.yOg$biz$bi~O%z0ZO~P$-VO#[/OO%j.yOg%Vaz%Va~Og'Pi~P$)cO{0^O~Oa0UO!['Oq~P$)oOz0`O!['Oq~O#[/OO%j.yOz%Ui![%Ui~Oa0UO~P$)oOa0UO!['Oy~P$)oO#[/OO%j.yOg$ciz$ci~O#[/OO%j.yOz%Uq![%Uq~Oz+aO#g%ha%[%ha%_%ha%z%ha~P%SOV&OOo0cOv0qO~P'vOn0hO~Oo0hO~P'vO{0iO~Ot0jO~P!/jO&]&Z&j&h&i&g&f&d&e&c&b&`&a&_&^&[%u~",goto:"!=l'QPPPPPP'RP'Z*s+]+v,b,}-kP.YP'Z.y.y'ZPPP'Z2cPPPPPP2c5VPP5VP7g7p=xPP={>m>pPP'Z'ZPP?PPP'Z'ZPP'Z'Z'Z'Z'Z?T?}'ZP@QP@WD_G{HPPHSH^Hb'ZPPPHeHn'RP'R'RP'RP'RP'RP'RP'R'R'RP'RPP'RPP'RP'RPHtIQIYPIaIgPIaPIaIaPPPIaPKuPLOLYL`KuPIaLiPIaPLpLvPLzM`M}NhLzLzNnN{LzLzLzLz! a! g! j! o! r! |!!S!!`!!r!!x!#S!#Y!#v!#|!$S!$^!$d!$j!$|!%W!%^!%d!%n!%t!%z!&Q!&W!&^!&h!&n!&x!'O!'X!'_!'n!'v!(Q!(XPPPPPPPPPPP!(_!(b!(h!(q!({!)WPPPPPPPPPPPP!-z!/`!3`!6pPP!6x!7X!7b!8Z!8Q!8d!8j!8m!8p!8s!8{!9lPPPPPPPPPPPPPPPPP!9o!9s!9yP!:_!:c!:o!:x!;U!;l!;o!;r!;x!<O!<U!<XP!<a!<j!=f!=i]eOn#g$j)t,P'}`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r}!cQ#c#p$R$d$p%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0g!P!dQ#c#p$R$d$p$u%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0g!R!eQ#c#p$R$d$p$u$v%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0g!T!fQ#c#p$R$d$p$u$v$w%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0g!V!gQ#c#p$R$d$p$u$v$w$x%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0g!X!hQ#c#p$R$d$p$u$v$w$x$y%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0g!]!hQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0g'}TOTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r&cVOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/Z/s0c0d0e0f0h0i0j0k0n0r%mXOYZ[dnrxy}!P!Q!U!i!k#[#d#g#y#{#}$Q$h$j$}%S%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/Z0i0j0kQ#vqQ/[.kR0o0q't`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rh#jhz{$W$Z&l&q)S)X+f+g-RW#rq&].k0qQ$]|Q$a!OQ$n!VQ$o!WW$|!i'm*d,gS&[#s#tQ'S$iQ(s&UQ)U&nU)Y&s)Z+jW)a&w+m-T-{Q*Q']W*R'_,`-h.TQ+l)`S,_*S*TQ-Q+eQ-_,TQ-c,WQ.R-al.W-l.^._.a.z.|/R/j/o/t/y0U0Z0^Q/S.`Q/a.tQ/l/OU0P/u0S0[X0V/z0W0_0`R&Z#r!_!wYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZR%^!vQ!{YQ%x#[Q&d#}Q&g$QR,{+YT.j-s/s![!jQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0gQ&X#kQ'c$oR*^'dR'l$|Q%V!mR/_.r'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rS#a_#b!P.[-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rT#a_#bT#^^#_R(o%xa(l%x(n(o+`,{-y-z.oT+[(k+]R-z,{Q$PsQ+l)aR,^*RX#}s$O$P&fQ&y$aQ'a$nQ'd$oR)s'SQ)b&wV-S+m-T-{ZgOn$j)t,PXkOn)t,PQ$k!TQ&z$bQ&{$cQ'^$mQ'b$oQ)q'RQ)x'WQ){'XQ)|'YQ*Z'`S*]'c'dQ+s)gQ+u)hQ+v)iQ+z)oS+|)r*[Q,Q)vQ,R)wS,S)y)zQ,d*^Q-V+rQ-W+tQ-Y+{S-Z+},OQ-`,UQ-b,VQ-|-XQ.O-[Q.P-^Q.Q-_Q.p-}Q.q.RQ/W.dR/r/XWkOn)t,PR#mjQ'`$nS)r'S'aR,O)sQ,]*RR-f,^Q*['`Q+})rR-[,OZiOjn)t,PQ'f$pR*`'gT-j,e-ku.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^t.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^Q/S.`X0V/z0W0_0`!P.Z-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`Q.w.YR/f.xg.z.].{/b/i/n/|0O0Q0]0a0bu.b-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^X.u.W.b/a0PR/c.tV0R/u0S0[R/X.dQnOS#on,PR,P)tQ&^#uR(x&^S%m#R#wS(_%m(bT(b%p&`Q%a!yQ%h!}W(P%a%h(U(YQ(U%eR(Y%jQ&i$RR)O&iQ(e%qQ*{(`T+R(e*{Q'n%OR*e'nS'q%R%SY*i'q*j,m-q.hU*j'r's'tU,m*k*l*mS-q,n,oR.h-rQ#Y]R%t#YQ#_^R%y#_Q(h%vS+W(h+XR+X(iQ+](kR,|+]Q#b_R%{#bQ#ebQ%}#cW&Q#e%}({+bQ({&cR+b0gQ$OsS&e$O&fR&f$PQ&v$_R)_&vQ&V#jR(t&VQ&m$VS)T&m+hR+h)UQ$Z{R&p$ZQ&t$]R)[&tQ+n)bR-U+nQ#hfR&S#hQ)f&zR+q)fQ&}$dS)m&})nR)n'OQ'V$kR)u'VQ'[$lS*P'[,ZR,Z*QQ,a*VR-i,aWjOn)t,PR#ljQ-k,eR.U-kd.{.]/b/i/n/|0O0Q0]0a0bR/h.{U.s.W/a0PR/`.sQ/{/nS0X/{0YR0Y/|S/v/b/cR0T/vQ.}.]R/k.}R!ZPXmOn)t,PWlOn)t,PR'T$jYfOn$j)t,PR&R#g[sOn#g$j)t,PR&d#}&bQOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/Z/s0c0d0e0f0h0i0j0k0n0rQ!nTQ#caQ#poU$Rt%c(SS$d!R$gQ$p!XQ$u!cQ$v!dQ$w!eQ$x!fQ$y!gQ$z!hQ%e!zQ%j#OQ%p#SQ%q#TQ&`#xQ'O$eQ'g$qQ(q&OU(|&h(}+cW)j&|)l+x+yQ*o'|Q*x(]Q+w)kQ,v+QQ/q/VR0g0lQ!yYQ!}ZQ$b!PQ$c!QQ%R!kQ't%S^'{%`%g(O(W*q*t*v^*f'p*h,k,l-p.g/ZQ*l'rQ*m'sQ+t)gQ,j*gQ,n*kQ-n,hQ-o,iQ-r,oQ.e-mR/Y.f[bOn#g$j)t,P!^!vYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZQ#R[Q#fdS#wrxQ$UyW$_}$Q'P)pS$l!U$hW${!i'm*d,gS%v#[+Y`&P#d%|(p(r(z+a-O0kQ&a#yQ&b#{Q&c#}Q'j$}Q'z%^W([%l(^*y*}Q(`%nQ(i%wQ(v&ZS(y&_0iQ)P&jQ)Q&kU)]&u)^+kQ)d&xQ)y'WY)}'Z*O,X,Y-dQ*b'lS*n'w0jW+P(d*z,s,wW+T(g+V,y,zQ+p)eQ,U)zQ,c*YQ,x+UQ-P+dQ-e,]Q-v,uR.S-fhUOn#d#g$j%|&_'w(p(r)t,P%S!uYZ[drxy}!P!Q!U!i!k#[#y#{#}$Q$h$}%S%^%`%g%l%n%w&Z&j&k&u&x'P'W'Z'l'm'p'r's(O(W(^(d(g(z)^)e)g)p)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/Z0i0j0kQ#qpW%W!o!s0d0nQ%X!pQ%Y!qQ%[!tQ%f0cS'v%Z0hQ'x0eQ'y0fQ,p*rQ-u,qS.i-s/sR0p0rU#uq.k0qR(w&][cOn#g$j)t,PZ!xY#[#}$Q+YQ#W[Q#zrR$TxQ%b!yQ%i!}Q%o#RQ'j${Q(V%eQ(Z%jQ(c%pQ(f%qQ*|(`Q,f*bQ-t,pQ.m-uR/].lQ$StQ(R%cR*s(SQ.l-sR/}/sR#QZR#V[R%Q!iQ%O!iV*c'm*d,g!]!lQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v/q0gR%T!kT#]^#_Q%x#[R,{+YQ(m%xS+_(n(oQ,}+`Q-x,{S.n-y-zR/^.oT+Z(k+]Q$`}Q&g$QQ)o'PR+{)pQ$XzQ)W&qR+i)XQ$XzQ&o$WQ)W&qR+i)XQ#khW$Vz$W&q)XQ$[{Q&r$ZZ)R&l)S+f+g-RR$^|R)c&wXlOn)t,PQ$f!RR'Q$gQ$m!UR'R$hR*X'_Q*V'_V-g,`-h.TQ.d-lQ/P.^R/Q._U.]-l.^._Q/U.aQ/b.tQ/g.zU/i.|/j/yQ/n/RQ/|/oQ0O/tU0Q/u0S0[Q0]0UQ0a0ZR0b0^R/T.`R/d.t",nodeNames:"⚠ print Escape { Comment Script AssignStatement * BinaryExpression BitOp BitOp BitOp BitOp ArithOp ArithOp @ ArithOp ** UnaryExpression ArithOp BitOp AwaitExpression await ) ( ParenthesizedExpression BinaryExpression or and CompareOp in not is UnaryExpression ConditionalExpression if else LambdaExpression lambda ParamList VariableName AssignOp , : NamedExpression AssignOp YieldExpression yield from TupleExpression ComprehensionExpression async for LambdaExpression ] [ ArrayExpression ArrayComprehensionExpression } { DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression CallExpression ArgList AssignOp MemberExpression . PropertyName Number String FormatString FormatReplacement FormatSelfDoc FormatConversion FormatSpec FormatReplacement FormatSelfDoc ContinuedString Ellipsis None Boolean TypeDef AssignOp UpdateStatement UpdateOp ExpressionStatement DeleteStatement del PassStatement pass BreakStatement break ContinueStatement continue ReturnStatement return YieldStatement PrintStatement RaiseStatement raise ImportStatement import as ScopeStatement global nonlocal AssertStatement assert TypeDefinition type TypeParamList TypeParam StatementGroup ; IfStatement Body elif WhileStatement while ForStatement TryStatement try except finally WithStatement with FunctionDefinition def ParamList AssignOp TypeDef ClassDefinition class DecoratedStatement Decorator At MatchStatement match MatchBody MatchClause case CapturePattern LiteralPattern ArithOp ArithOp AsPattern OrPattern LogicOp AttributePattern SequencePattern MappingPattern StarPattern ClassPattern PatternArgList KeywordPattern KeywordPattern Guard",maxTerm:277,context:trackIndent,nodeProps:[["isolate",-5,4,71,72,73,77,""],["group",-15,6,85,87,88,90,92,94,96,98,99,100,102,105,108,110,"Statement Statement",-22,8,18,21,25,40,49,50,56,57,60,61,62,63,64,67,70,71,72,79,80,81,82,"Expression",-10,114,116,119,121,122,126,128,133,135,138,"Statement",-9,143,144,147,148,150,151,152,153,154,"Pattern"],["openedBy",23,"(",54,"[",58,"{"],["closedBy",24,")",55,"]",59,"}"]],propSources:[pythonHighlighting],skippedNodes:[0,4],repeatNodeCount:34,tokenData:"!2|~R!`OX%TXY%oY[%T[]%o]p%Tpq%oqr'ars)Yst*xtu%Tuv,dvw-hwx.Uxy/tyz0[z{0r{|2S|}2p}!O3W!O!P4_!P!Q:Z!Q!R;k!R![>_![!]Do!]!^Es!^!_FZ!_!`Gk!`!aHX!a!b%T!b!cIf!c!dJU!d!eK^!e!hJU!h!i!#f!i!tJU!t!u!,|!u!wJU!w!x!.t!x!}JU!}#O!0S#O#P&o#P#Q!0j#Q#R!1Q#R#SJU#S#T%T#T#UJU#U#VK^#V#YJU#Y#Z!#f#Z#fJU#f#g!,|#g#iJU#i#j!.t#j#oJU#o#p!1n#p#q!1s#q#r!2a#r#s!2f#s$g%T$g;'SJU;'S;=`KW<%lOJU`%YT&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T`%lP;=`<%l%To%v]&n`%c_OX%TXY%oY[%T[]%o]p%Tpq%oq#O%T#O#P&o#P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To&tX&n`OY%TYZ%oZ]%T]^%o^#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc'f[&n`O!_%T!_!`([!`#T%T#T#U(r#U#f%T#f#g(r#g#h(r#h#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(cTmR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(yT!mR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk)aV&n`&[ZOr%Trs)vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk){V&n`Or%Trs*bs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk*iT&n`&^ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To+PZS_&n`OY*xYZ%TZ]*x]^%T^#o*x#o#p+r#p#q*x#q#r+r#r;'S*x;'S;=`,^<%lO*x_+wTS_OY+rZ]+r^;'S+r;'S;=`,W<%lO+r_,ZP;=`<%l+ro,aP;=`<%l*xj,kV%rQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-XT!xY&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-oV%lQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.]V&n`&ZZOw%Twx.rx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.wV&n`Ow%Twx/^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/eT&n`&]ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/{ThZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc0cTgR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk0yXVZ&n`Oz%Tz{1f{!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk1mVaR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk2ZV%oZ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc2wTzR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To3_W%pZ&n`O!_%T!_!`-Q!`!a3w!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Td4OT&{S&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk4fX!fQ&n`O!O%T!O!P5R!P!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5WV&n`O!O%T!O!P5m!P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5tT!rZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti6[a!hX&n`O!Q%T!Q![6T![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S6T#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti7fZ&n`O{%T{|8X|}%T}!O8X!O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8^V&n`O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8z]!hX&n`O!Q%T!Q![8s![!l%T!l!m9s!m#R%T#R#S8s#S#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti9zT!hX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk:bX%qR&n`O!P%T!P!Q:}!Q!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj;UV%sQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti;ro!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!d%T!d!e?q!e!g%T!g!h7a!h!l%T!l!m9s!m!q%T!q!rA]!r!z%T!z!{Bq!{#R%T#R#S>_#S#U%T#U#V?q#V#X%T#X#Y7a#Y#^%T#^#_9s#_#c%T#c#dA]#d#l%T#l#mBq#m#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti=xV&n`O!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti>fc!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S>_#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti?vY&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti@mY!hX&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiAbX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBUX!hX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBv]&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiCv]!hX&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToDvV{_&n`O!_%T!_!`E]!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TcEdT%{R&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkEzT#gZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkFbXmR&n`O!^%T!^!_F}!_!`([!`!a([!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjGUV%mQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkGrV%zZ&n`O!_%T!_!`([!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkH`WmR&n`O!_%T!_!`([!`!aHx!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjIPV%nQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkIoV_Q#}P&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToJ_]&n`&YS%uZO!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoKZP;=`<%lJUoKge&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!tJU!t!uLx!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#gLx#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoMRa&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUkN_V&n`&`ZOr%TrsNts#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkNyV&n`Or%Trs! `s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! gT&n`&bZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! }V&n`&_ZOw%Twx!!dx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!!iV&n`Ow%Twx!#Ox#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!#VT&n`&aZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!#oe&n`&YS%uZOr%Trs!%Qsw%Twx!&px!Q%T!Q![JU![!c%T!c!tJU!t!u!(`!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#g!(`#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!%XV&n`&dZOr%Trs!%ns#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!%sV&n`Or%Trs!&Ys#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&aT&n`&fZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&wV&n`&cZOw%Twx!'^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!'cV&n`Ow%Twx!'xx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!(PT&n`&eZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!(ia&n`&YS%uZOr%Trs!)nsw%Twx!+^x!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!)uV&n`&hZOr%Trs!*[s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*aV&n`Or%Trs!*vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*}T&n`&jZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!+eV&n`&gZOw%Twx!+zx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,PV&n`Ow%Twx!,fx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,mT&n`&iZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!-Vi&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!dJU!d!eLx!e!hJU!h!i!(`!i!}JU!}#R%T#R#SJU#S#T%T#T#UJU#U#VLx#V#YJU#Y#Z!(`#Z#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUo!.}a&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!0ZT!XZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc!0qT!WR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj!1XV%kQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!1sO!]~k!1zV%jR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!2fO![~i!2mT%tX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T",tokenizers:[legacyPrint,indentation$1,newlines$1,strings,0,1,2,3,4],topRules:{Script:[0,5]},specialized:[{term:221,get:O=>spec_identifier$1[O]||-1}],tokenPrec:7664}),cache=new NodeWeakMap,ScopeNodes=new Set(["Script","Body","FunctionDefinition","ClassDefinition","LambdaExpression","ForStatement","MatchClause"]);function defID(O){return(e,t,i)=>{if(i)return!1;let n=e.node.getChild("VariableName");return n&&t(n,O),!0}}const gatherCompletions={FunctionDefinition:defID("function"),ClassDefinition:defID("class"),ForStatement(O,e,t){if(t)for(let t=O.node.firstChild;t;t=t.nextSibling)if("VariableName"==t.name)e(t,"variable");else if("in"==t.name)break},ImportStatement(O,e){var t,i;let{node:n}=O,r="from"==(null===(t=n.firstChild)||void 0===t?void 0:t.name);for(let O=n.getChild("import");O;O=O.nextSibling)"VariableName"==O.name&&"as"!=(null===(i=O.nextSibling)||void 0===i?void 0:i.name)&&e(O,r?"variable":"namespace")},AssignStatement(O,e){for(let t=O.node.firstChild;t;t=t.nextSibling)if("VariableName"==t.name)e(t,"variable");else if(":"==t.name||"AssignOp"==t.name)break},ParamList(O,e){for(let t=null,i=O.node.firstChild;i;i=i.nextSibling)"VariableName"!=i.name||t&&/\*|AssignOp/.test(t.name)||e(i,"variable"),t=i},CapturePattern:defID("variable"),AsPattern:defID("variable"),__proto__:null};function getScope(O,e){let t=cache.get(e);if(t)return t;let i=[],n=!0;function r(e,t){let n=O.sliceString(e.from,e.to);i.push({label:n,type:t})}return e.cursor(IterMode.IncludeAnonymous).iterate((e=>{if(e.name){let O=gatherCompletions[e.name];if(O&&O(e,r,n)||!n&&ScopeNodes.has(e.name))return!1;n=!1}else if(e.to-e.from>8192){for(let t of getScope(O,e.node))i.push(t);return!1}})),cache.set(e,i),i}const Identifier$2=/^[\w\xa1-\uffff][\w\d\xa1-\uffff]*$/,dontComplete=["String","FormatString","Comment","PropertyName"];function localCompletionSource(O){let e=syntaxTree(O.state).resolveInner(O.pos,-1);if(dontComplete.indexOf(e.name)>-1)return null;let t="VariableName"==e.name||e.to-e.from<20&&Identifier$2.test(O.state.sliceDoc(e.from,e.to));if(!t&&!O.explicit)return null;let i=[];for(let t=e;t;t=t.parent)ScopeNodes.has(t.name)&&(i=i.concat(getScope(O.state.doc,t)));return{options:i,from:t?e.from:O.pos,validFor:Identifier$2}}const globals=["__annotations__","__builtins__","__debug__","__doc__","__import__","__name__","__loader__","__package__","__spec__","False","None","True"].map((O=>({label:O,type:"constant"}))).concat(["ArithmeticError","AssertionError","AttributeError","BaseException","BlockingIOError","BrokenPipeError","BufferError","BytesWarning","ChildProcessError","ConnectionAbortedError","ConnectionError","ConnectionRefusedError","ConnectionResetError","DeprecationWarning","EOFError","Ellipsis","EncodingWarning","EnvironmentError","Exception","FileExistsError","FileNotFoundError","FloatingPointError","FutureWarning","GeneratorExit","IOError","ImportError","ImportWarning","IndentationError","IndexError","InterruptedError","IsADirectoryError","KeyError","KeyboardInterrupt","LookupError","MemoryError","ModuleNotFoundError","NameError","NotADirectoryError","NotImplemented","NotImplementedError","OSError","OverflowError","PendingDeprecationWarning","PermissionError","ProcessLookupError","RecursionError","ReferenceError","ResourceWarning","RuntimeError","RuntimeWarning","StopAsyncIteration","StopIteration","SyntaxError","SyntaxWarning","SystemError","SystemExit","TabError","TimeoutError","TypeError","UnboundLocalError","UnicodeDecodeError","UnicodeEncodeError","UnicodeError","UnicodeTranslateError","UnicodeWarning","UserWarning","ValueError","Warning","ZeroDivisionError"].map((O=>({label:O,type:"type"})))).concat(["bool","bytearray","bytes","classmethod","complex","float","frozenset","int","list","map","memoryview","object","range","set","staticmethod","str","super","tuple","type"].map((O=>({label:O,type:"class"})))).concat(["abs","aiter","all","anext","any","ascii","bin","breakpoint","callable","chr","compile","delattr","dict","dir","divmod","enumerate","eval","exec","exit","filter","format","getattr","globals","hasattr","hash","help","hex","id","input","isinstance","issubclass","iter","len","license","locals","max","min","next","oct","open","ord","pow","print","property","quit","repr","reversed","round","setattr","slice","sorted","sum","vars","zip"].map((O=>({label:O,type:"function"})))),snippets=[snippetCompletion("def ${name}(${params}):\n\t${}",{label:"def",detail:"function",type:"keyword"}),snippetCompletion("for ${name} in ${collection}:\n\t${}",{label:"for",detail:"loop",type:"keyword"}),snippetCompletion("while ${}:\n\t${}",{label:"while",detail:"loop",type:"keyword"}),snippetCompletion("try:\n\t${}\nexcept ${error}:\n\t${}",{label:"try",detail:"/ except block",type:"keyword"}),snippetCompletion("if ${}:\n\t\n",{label:"if",detail:"block",type:"keyword"}),snippetCompletion("if ${}:\n\t${}\nelse:\n\t${}",{label:"if",detail:"/ else block",type:"keyword"}),snippetCompletion("class ${name}:\n\tdef __init__(self, ${params}):\n\t\t\t${}",{label:"class",detail:"definition",type:"keyword"}),snippetCompletion("import ${module}",{label:"import",detail:"statement",type:"keyword"}),snippetCompletion("from ${module} import ${names}",{label:"from",detail:"import",type:"keyword"})],globalCompletion=ifNotIn(dontComplete,completeFromList(globals.concat(snippets)));function innerBody(O){let{node:e,pos:t}=O,i=O.lineIndent(t,-1),n=null;for(;;){let r=e.childBefore(t);if(!r)break;if("Comment"==r.name)t=r.from;else if("Body"==r.name)O.baseIndentFor(r)+O.unit<=i&&(n=r),e=r;else{if(!r.type.is("Statement"))break;e=r}}return n}function indentBody(O,e){let t=O.baseIndentFor(e),i=O.lineAt(O.pos,-1),n=i.from+i.text.length;return/^\s*($|#)/.test(i.text)&&O.node.to<n+100&&!/\S/.test(O.state.sliceDoc(n,O.node.to))&&O.lineIndent(O.pos,-1)<=t||/^\s*(else:|elif |except |finally:)/.test(O.textAfter)&&O.lineIndent(O.pos,-1)>t?null:t+O.unit}const pythonLanguage=LRLanguage.define({name:"python",parser:parser$5.configure({props:[indentNodeProp.add({Body:O=>{var e;return null!==(e=indentBody(O,innerBody(O)||O.node))&&void 0!==e?e:O.continue()},IfStatement:O=>/^\s*(else:|elif )/.test(O.textAfter)?O.baseIndent:O.continue(),"ForStatement WhileStatement":O=>/^\s*else:/.test(O.textAfter)?O.baseIndent:O.continue(),TryStatement:O=>/^\s*(except |finally:|else:)/.test(O.textAfter)?O.baseIndent:O.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":delimitedIndent({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":delimitedIndent({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":delimitedIndent({closing:"]"}),"String FormatString":()=>null,Script:O=>{var e;let t=innerBody(O);return null!==(e=t&&indentBody(O,t))&&void 0!==e?e:O.continue()}}),foldNodeProp.add({"ArrayExpression DictionaryExpression SetExpression TupleExpression":foldInside,Body:(O,e)=>({from:O.from+1,to:O.to-(O.to==e.doc.length?0:1)})})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""'],stringPrefixes:["f","fr","rf","r","u","b","br","rb","F","FR","RF","R","U","B","BR","RB"]},commentTokens:{line:"#"},indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/}});function python(){return new LanguageSupport(pythonLanguage,[pythonLanguage.data.of({autocomplete:localCompletionSource}),pythonLanguage.data.of({autocomplete:globalCompletion})])}const closureParamDelim=1,tpOpen=2,tpClose=3,RawString=4,Float=5,_b=98,_e=101,_f=102,_r=114,_E=69,Zero=48,Dot$1=46,Plus=43,Minus=45,Hash=35,Quote=34,Pipe=124,LessThan=60,GreaterThan=62;function isNum(O){return O>=48&&O<=57}function isNum_(O){return isNum(O)||95==O}const literalTokens=new ExternalTokenizer(((O,e)=>{if(isNum(O.next)){let e=!1;do{O.advance()}while(isNum_(O.next));if(46==O.next)if(e=!0,O.advance(),isNum(O.next))do{O.advance()}while(isNum_(O.next));else if(46==O.next||O.next>127||/\w/.test(String.fromCharCode(O.next)))return;if(O.next==_e||69==O.next){if(e=!0,O.advance(),43!=O.next&&45!=O.next||O.advance(),!isNum_(O.next))return;do{O.advance()}while(isNum_(O.next))}if(O.next==_f){let t=O.peek(1);if(!(51==t&&50==O.peek(2)||54==t&&52==O.peek(2)))return;O.advance(3),e=!0}e&&O.acceptToken(5)}else if(98==O.next||O.next==_r){if(98==O.next&&O.advance(),O.next!=_r)return;O.advance();let e=0;for(;35==O.next;)e++,O.advance();if(34!=O.next)return;O.advance();O:for(;;){if(O.next<0)return;let t=34==O.next;if(O.advance(),t){for(let t=0;t<e;t++){if(35!=O.next)continue O;O.advance()}return void O.acceptToken(4)}}}})),closureParam=new ExternalTokenizer((O=>{124==O.next&&O.acceptToken(1,1)})),tpDelim=new ExternalTokenizer((O=>{60==O.next?O.acceptToken(2,1):62==O.next&&O.acceptToken(3,1)})),rustHighlighting=styleTags({"const macro_rules struct union enum type fn impl trait let static":tags$1.definitionKeyword,"mod use crate":tags$1.moduleKeyword,"pub unsafe async mut extern default move":tags$1.modifier,"for if else loop while match continue break return await":tags$1.controlKeyword,"as in ref":tags$1.operatorKeyword,"where _ crate super dyn":tags$1.keyword,self:tags$1.self,String:tags$1.string,Char:tags$1.character,RawString:tags$1.special(tags$1.string),Boolean:tags$1.bool,Identifier:tags$1.variableName,"CallExpression/Identifier":tags$1.function(tags$1.variableName),BoundIdentifier:tags$1.definition(tags$1.variableName),"FunctionItem/BoundIdentifier":tags$1.function(tags$1.definition(tags$1.variableName)),LoopLabel:tags$1.labelName,FieldIdentifier:tags$1.propertyName,"CallExpression/FieldExpression/FieldIdentifier":tags$1.function(tags$1.propertyName),Lifetime:tags$1.special(tags$1.variableName),ScopeIdentifier:tags$1.namespace,TypeIdentifier:tags$1.typeName,"MacroInvocation/Identifier MacroInvocation/ScopedIdentifier/Identifier":tags$1.macroName,"MacroInvocation/TypeIdentifier MacroInvocation/ScopedIdentifier/TypeIdentifier":tags$1.macroName,'"!"':tags$1.macroName,UpdateOp:tags$1.updateOperator,LineComment:tags$1.lineComment,BlockComment:tags$1.blockComment,Integer:tags$1.integer,Float:tags$1.float,ArithOp:tags$1.arithmeticOperator,LogicOp:tags$1.logicOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,"=":tags$1.definitionOperator,".. ... => ->":tags$1.punctuation,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace,". DerefOp":tags$1.derefOperator,"&":tags$1.operator,", ; ::":tags$1.separator,"Attribute/...":tags$1.meta}),spec_identifier={__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},parser$4=LRParser.deserialize({version:14,states:"$2xQ]Q_OOP$wOWOOO&sQWO'#CnO)WQWO'#I`OOQP'#I`'#I`OOQQ'#Ie'#IeO)hO`O'#C}OOQR'#Ih'#IhO)sQWO'#IuOOQO'#Hk'#HkO)xQWO'#DpOOQR'#Iw'#IwO)xQWO'#DpO*ZQWO'#DpOOQO'#Iv'#IvO,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'#Io'#IoOA]Q_O'#InOEPQWO'#InOOQV'#Fw'#FwOF[QWO'#JuOFcQWO'#F|OOQO'#IO'#IOOGrQWO'#GhOOQV'#Im'#ImOOQV'#Il'#IlOOQV'#Hj'#HjQGyQ_OOOKeQ_O'#DUOKlQYO'#CqOOQP'#I_'#I_OOQV'#Hg'#HgQ]Q_OOOLuQWO'#I`ONsQYO'#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)CC})CC}OOOO'#Hi'#HiO!5OO`O,59iOOQV,59i,59iO!5ZQYO,5?aOOQO-E;i-E;iOOQO,5:[,5:[OOQP,59Z,59ZO)xQWO,5:[O)xQWO,5:[O!5oQWO,5?kO!5zQYO,5;qO!6PQYO,5;TO!6hQWO,59QO!7kQXO'#CnO!7xQXO'#I`O!9SQWO'#CoO,^QWO'#EiOOQV-E;n-E;nO!9eQWO'#FsOOQV,5<g,5<gO!9SQWO'#CoO!9jQWO'#CoO!9oQWO'#I`O! yQWO'#JuO!9yQWO'#J`O!:aQWO,5;VOOQO'#In'#InO!0zQWO'#DaO!<aQWO'#DcO!<iQWO,5;ZO.YQ_O,5;ZOOQO,5;[,5;[OOQV'#Er'#ErOOQV'#Es'#EsOOQV'#Et'#EtOOQV'#Eu'#EuOOQV'#Ev'#EvOOQV'#Ew'#EwOOQV'#Ex'#ExOOQV'#Ey'#EyO.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;]O.YQ_O,5;fO!=PQ_O,5;kO!@gQ_O'#FROOQO,5;l,5;lO!BrQWO,5;pO.YQ_O,5;wOKlQYO,5;gO!D_QWO,5;kO!EOQWO,5;xOOQO,5;x,5;xO!E]QWO,5;xO!EbQ_O,5;xO!GmQWO'#CfO!GrQWO,5<QO!G|Q_O,5<QOOQO,5;{,5;{O!JjQXO'#CnO!K{QXO'#I`OOQS'#Dk'#DkOOQP'#Ir'#IrO!LuQ[O'#IrO!L}QXO'#DjO!M{QWO'#DnO!M{QWO'#DnO!N^QWO'#DnOOQP'#It'#ItO!NcQXO'#ItO# ^Q^O'#DoO# hQWO'#DrO# pQ^O'#DzO# zQ^O'#D|O#!RQWO'#EPO#!^QXO'#FdOOQP'#ES'#ESOOQP'#Iq'#IqO#!lQXO'#JfOOQP'#Je'#JeO#!tQXO,5;}O#!yQXO'#I`O!1PQ^O'#DyO!1PQ^O'#FdO##sQWO,5;|OOQO,5;|,5;|OKlQYO,5;|O#$ZQWO'#FhOOQO,5<R,5<ROOQV,5=l,5=lO#&`QYO'#FzOOQV,5<h,5<hO#&gQWO,5<hO#&nQWO,5=SO!1WQWO,59rO!1dQWO,5<dO#&uQWO,5=iO!2_QWO,5<jO!2_QWO,5<zO!2_QWO,5<|O!2_QWO,5=QO#&|QWO,5=]O#'TQWO,5=SO!2_QWO,5=]O!3|QWO,5=aO#']QWO,5=jOOQO-E;|-E;|O#'hQWO'#JjOOQV-E;h-E;hO#(PQWO'#HRO#(WQ_O,59pOOQV,59p,59pO#(_QWO,59pO#(dQ_O,59pO#)SQZO'#CuO#+[QZO'#CvOOQV'#C|'#C|O#-wQWO'#HTO#.OQYO'#IdOOQO'#Hh'#HhO#.WQWO'#CwO#.WQWO'#CwO#.iQWO'#CwOOQR'#Ic'#IcO#.nQZO'#IbO#1TQYO'#HTO#1qQYO'#H[O#2}QYO'#H_OKlQYO'#H`OOQR'#Hb'#HbO#4ZQWO'#HeO#4`QYO,59]OOQR'#Ib'#IbO#5PQZO'#CtO#7[QYO'#HUO#7aQWO'#HTO#7fQYO'#CrO#8VQWO'#H]O#7fQYO'#HcOOQV-E;e-E;eO#8_QWO,59sOOQV,59{,59{O#8mQYO,5=[OOQV,59},59}O!0zQWO,59}O#;aQWO'#IpOOQO'#Ip'#IpO!1PQ^O'#DhO!0zQWO,5:QO#;hQWO,5;iO#<OQWO,5;rO#<fQ_O,5;rOOQO,5;u,5;uO#@PQ_O,5;|O#BXQWO,5;PO!0zQWO,5<XO#B`QWO,5<ZOOQV,5<Z,5<ZO#BkQWO,5<]O!1PQ^O'#EOOOQQ'#D_'#D_O#BsQWO,59rO#BxQWO,5<`O#B}QWO,5<dOOQO,5@U,5@UO#CVQWO,5=iOOQQ'#Cv'#CvO#C[QYO,5<jO#CmQYO,5<zO#CxQYO,5<|O#DTQYO,5=_O#DcQYO,5=SO#E{QYO'#GQO#FYQYO,5=[O#FmQWO,5=[O#F{QYO,5=[O#HUQYO,5=]O#HdQWO,5=`O!1PQ^O,5=`O#HrQWO'#CnO#ITQWO'#I`OOQO'#Jy'#JyO#IfQWO'#IQO#IkQWO'#GwOOQO'#Jz'#JzO#JSQWO'#GzOOQO'#G|'#G|OOQO'#Jx'#JxO#IkQWO'#GwO#JZQWO'#GxO#J`QWO,5=aO#JeQWO,5=jO!1dQWO,5=jO#'`QWO,5=jPOOO'#Hf'#HfP#JjOpO,58}POOO,58},58}OOOO-E;g-E;gOOQV1G/T1G/TO#JuQWO1G4{O#JzQ^O'#CyPOQQ'#Cx'#CxOOQO1G/v1G/vOOQP1G.u1G.uO)xQWO1G/vO#NTQ!fO'#ETO#N[Q!fO'#EaO#NcQ!fO'#EbO$ kQWO1G1yO$!_Q_O1G1yOOQP1G5V1G5VOOQO1G1]1G1]O$&RQWO1G0oO$&WQWO'#CiO!7xQXO'#I`O!6PQYO1G.lO!5oQWO,5<_O!9SQWO,59ZO!9SQWO,59ZO!5oQWO,5?kO$&iQWO1G0uO$(vQWO1G0wO$*nQWO1G0wO$+UQWO1G0wO$-YQWO1G0wO$-aQWO1G0wO$/bQWO1G0wO$/iQWO1G0wO$1jQWO1G0wO$1qQWO1G0wO$3YQWO1G1QO$5ZQWO1G1VO$5zQ_O'#JcO$8SQWO'#JcOOQO'#Jb'#JbO$8^QWO,5;mOOQO'#Dw'#DwOOQO1G1[1G1[OOQO1G1Y1G1YO$8cQWO1G1cOOQO1G1R1G1RO$8jQ_O'#HrO$:xQWO,5@OO.YQ_O1G1dOOQO1G1d1G1dO$;QQWO1G1dO$;_QWO1G1dO$;dQWO1G1eOOQO1G1l1G1lO$;lQWO1G1lOOQP,5?^,5?^O$;vQ^O,5:kO$<aQXO,5:YO!M{QWO,5:YO!M{QWO,5:YO!1PQ^O,5:gO$=bQWO'#IyOOQO'#Ix'#IxO$=pQWO,5:ZO# ^Q^O,5:ZO$=uQWO'#DsOOQP,5:^,5:^O$>WQWO,5:fOOQP,5:h,5:hO!1PQ^O,5:hO!1PQ^O,5:mO$>]QYO,5<OO$>gQ_O'#HsO$>tQXO,5@QOOQV1G1i1G1iOOQP,5:e,5:eO$>|QXO,5<OO$?[QWO1G1hO$?dQWO'#CnO$?oQWO'#FiOOQO'#Fi'#FiO$?wQWO'#FjO.YQ_O'#FkOOQO'#Ji'#JiO$?|QWO'#JhOOQO'#Jg'#JgO$@UQWO,5<SOOQQ'#Hv'#HvO$@ZQYO,5<fOOQV,5<f,5<fO$@bQYO,5<fOOQV1G2S1G2SO$@iQWO1G2nO$@qQWO1G/^O$@vQWO1G2OO#CVQWO1G3TO$AOQYO1G2UO#CmQYO1G2fO#CxQYO1G2hO$AaQYO1G2lO!2_QWO1G2wO#DcQYO1G2nO#HUQYO1G2wO$AiQWO1G2{O$AnQWO1G3UO!1dQWO1G3UO$AsQWO1G3UOOQV1G/[1G/[O$A{QWO1G/[O$BQQ_O1G/[O#7aQWO,5=oO$BXQYO,5?OO$BmQWO,5?OO$BrQZO'#IeOOQO-E;f-E;fOOQR,59c,59cO#.WQWO,59cO#.WQWO,59cOOQR,5=n,5=nO$E_QYO'#HVO$FwQZO,5=oO!5oQWO,5={O$IZQWO,5=oO$IbQZO,5=vO$KqQYO,5=vO$>]QYO,5=vO$LRQWO'#KRO$L^QWO,5=xOOQR,5=y,5=yO$LcQWO,5=zO$>]QYO,5>PO$>]QYO,5>POOQO1G.w1G.wO$>]QYO1G.wO$LnQYO,5=pO$LvQZO,59^OOQR,59^,59^O$>]QYO,5=wO% YQZO,5=}OOQR,5=},5=}O%#lQWO1G/_O!6PQYO1G/_O#FYQYO1G2vO%#qQWO1G2vO%$PQYO1G2vOOQV1G/i1G/iO%%YQWO,5:SO%%bQ_O1G/lO%*kQWO1G1^O%+RQWO1G1hOOQO1G1h1G1hO$>]QYO1G1hO%+iQ^O'#EgOOQV1G0k1G0kOOQV1G1s1G1sO!!vQ_O1G1sO!0zQWO1G1uO!1PQ^O1G1wO!.cQ_O1G1wOOQP,5:j,5:jO$>]QYO1G/^OOQO'#Cn'#CnO%+vQWO1G1zOOQV1G2O1G2OO%,OQWO'#CnO%,WQWO1G3TO%,]QWO1G3TO%,bQYO'#GQO%,sQWO'#G]O%-UQYO'#G_O%.hQYO'#GXOOQV1G2U1G2UO%/wQWO1G2UO%/|QWO1G2UO$ARQWO1G2UOOQV1G2f1G2fO%/wQWO1G2fO#CpQWO1G2fO%0UQWO'#GdOOQV1G2h1G2hO%0gQWO1G2hO#C{QWO1G2hO%0lQYO'#GSO$>]QYO1G2lO$AdQWO1G2lOOQV1G2y1G2yO%1xQWO1G2yO%3hQ^O'#GkO%3rQWO1G2nO#DfQWO1G2nO%4QQYO,5<lO%4[QYO,5<lO%4jQYO,5<lO%5XQYO,5<lOOQQ,5<l,5<lO!1WQWO'#JuO%5dQYO,5<lO%5lQWO1G2vOOQV1G2v1G2vO%5tQWO1G2vO$>]QYO1G2vOOQV1G2w1G2wO%5tQWO1G2wO%5yQWO1G2wO#HXQWO1G2wOOQV1G2z1G2zO.YQ_O1G2zO$>]QYO1G2zO%6RQWO1G2zOOQO,5>l,5>lOOQO-E<O-E<OOOQO,5=c,5=cOOQO,5=e,5=eOOQO,5=g,5=gOOQO,5=h,5=hO%6aQWO'#J|OOQO'#J{'#J{O%6iQWO,5=fO%6nQWO,5=cO!1dQWO,5=dOOQV1G2{1G2{O$>]QYO1G3UPOOO-E;d-E;dPOOO1G.i1G.iOOQO7+*g7+*gO%7VQYO'#IcO%7nQYO'#IfO%7yQYO'#IfO%8RQYO'#IfO%8^QYO,59eOOQO7+%b7+%bOOQP7+$a7+$aO%8cQ!fO'#JTOOQS'#EX'#EXOOQS'#EY'#EYOOQS'#EZ'#EZOOQS'#JT'#JTO%;UQWO'#EWOOQS'#E`'#E`OOQS'#JR'#JROOQS'#Hn'#HnO%;ZQ!fO,5:oOOQV,5:o,5:oOOQV'#JQ'#JQO%;bQ!fO,5:{OOQV,5:{,5:{O%;iQ!fO,5:|OOQV,5:|,5:|OOQV7+'e7+'eOOQV7+&Z7+&ZO%;pQ!fO,59TOOQO,59T,59TO%>YQWO7+$WO%>_QWO1G1yOOQV1G1y1G1yO!9SQWO1G.uO%>dQWO,5?}O%>nQ_O'#HqO%@|QWO,5?}OOQO1G1X1G1XOOQO7+&}7+&}O%AUQWO,5>^OOQO-E;p-E;pO%AcQWO7+'OO.YQ_O7+'OOOQO7+'O7+'OOOQO7+'P7+'PO%AjQWO7+'POOQO7+'W7+'WOOQP1G0V1G0VO%ArQXO1G/tO!M{QWO1G/tO%BsQXO1G0RO%CkQ^O'#HlO%C{QWO,5?eOOQP1G/u1G/uO%DWQWO1G/uO%D]QWO'#D_OOQO'#Dt'#DtO%DhQWO'#DtO%DmQWO'#I{OOQO'#Iz'#IzO%DuQWO,5:_O%DzQWO'#DtO%EPQWO'#DtOOQP1G0Q1G0QOOQP1G0S1G0SOOQP1G0X1G0XO%EXQXO1G1jO%EdQXO'#FeOOQP,5>_,5>_O!1PQ^O'#FeOOQP-E;q-E;qO$>]QYO1G1jOOQO7+'S7+'SOOQO,5<T,5<TO%ErQWO,5<UO.YQ_O,5<UO%EwQWO,5<VO%FRQWO'#HtO%FdQWO,5@SOOQO1G1n1G1nOOQQ-E;t-E;tOOQV1G2Q1G2QO%FlQYO1G2QO#DcQYO7+(YO$>]QYO7+$xOOQV7+'j7+'jO%FsQWO7+(oO%FxQWO7+(oOOQV7+'p7+'pO%/wQWO7+'pO%F}QWO7+'pO%GVQWO7+'pOOQV7+(Q7+(QO%/wQWO7+(QO#CpQWO7+(QOOQV7+(S7+(SO%0gQWO7+(SO#C{QWO7+(SO$>]QYO7+(WO%GeQWO7+(WO#HUQYO7+(cO%GjQWO7+(YO#DfQWO7+(YOOQV7+(c7+(cO%5tQWO7+(cO%5yQWO7+(cO#HXQWO7+(cOOQV7+(g7+(gO$>]QYO7+(pO%GxQWO7+(pO!1dQWO7+(pOOQV7+$v7+$vO%G}QWO7+$vO%HSQZO1G3ZO%JfQWO1G4jOOQO1G4j1G4jOOQR1G.}1G.}O#.WQWO1G.}O%JkQWO'#KQOOQO'#HW'#HWO%J|QWO'#HXO%KXQWO'#KQOOQO'#KP'#KPO%KaQWO,5=qO%KfQYO'#H[O%LrQWO'#GmO%L}QYO'#CtO%MXQWO'#GmO$>]QYO1G3ZOOQR1G3g1G3gO#7aQWO1G3ZO%M^QZO1G3bO$>]QYO1G3bO& mQYO'#IVO& }QWO,5@mOOQR1G3d1G3dOOQR1G3f1G3fO.YQ_O1G3fOOQR1G3k1G3kO&!VQYO7+$cO&!_QYO'#KOOOQQ'#J}'#J}O&!gQYO1G3[O&!lQZO1G3cOOQQ7+$y7+$yO&${QWO7+$yO&%QQWO7+(bOOQV7+(b7+(bO%5tQWO7+(bO$>]QYO7+(bO#FYQYO7+(bO&%YQWO7+(bO!.cQ_O1G/nO&%hQWO7+%WO$?[QWO7+'SO&%pQWO'#EhO&%{Q^O'#EhOOQU'#Ho'#HoO&%{Q^O,5;ROOQV,5;R,5;RO&&VQWO,5;RO&&[Q^O,5;RO!0zQWO7+'_OOQV7+'a7+'aO&&iQWO7+'cO&&qQWO7+'cO&&xQWO7+$xO&'TQ!fO7+'fO&'[Q!fO7+'fOOQV7+(o7+(oO!1dQWO7+(oO&'cQYO,5<lO&'nQYO,5<lO!1dQWO'#GWO&'|QWO'#JpO&([QWO'#G^O!BxQWO'#G^O&(aQWO'#JpOOQO'#Jo'#JoO&(iQWO,5<wOOQO'#DX'#DXO&(nQYO'#JrO&)}QWO'#JrO$>]QYO'#JrOOQO'#Jq'#JqO&*YQWO,5<yO&*_QWO'#GZO#D^QWO'#G[O&*gQWO'#G[O&*oQWO'#JmOOQO'#Jl'#JlO&*zQYO'#GTOOQO,5<s,5<sO&+PQWO7+'pO&+UQWO'#JtO&+dQWO'#GeO#BxQWO'#GeO&+uQWO'#JtOOQO'#Js'#JsO&+}QWO,5=OO$>]QYO'#GUO&,SQYO'#JkOOQQ,5<n,5<nO&,kQWO7+(WOOQV7+(e7+(eO&.TQ^O'#D|O&._QWO'#GlO&.gQ^O'#JwOOQO'#Gn'#GnO&.nQWO'#JwOOQO'#Jv'#JvO&.vQWO,5=VO&.{QWO'#I`O&/]Q^O'#GmO&/dQWO'#IqO&/rQWO'#GmOOQV7+(Y7+(YO&/zQWO7+(YO$>]QYO7+(YO&0SQYO'#HxO&0hQYO1G2WOOQQ1G2W1G2WOOQQ,5<m,5<mO$>]QYO,5<qO&0pQWO,5<rO&0uQWO7+(bO&1QQWO7+(fO&1XQWO7+(fOOQV7+(f7+(fO.YQ_O7+(fO$>]QYO7+(fO&1dQWO'#IRO&1nQWO,5@hOOQO1G3Q1G3QOOQO1G2}1G2}OOQO1G3P1G3POOQO1G3R1G3ROOQO1G3S1G3SOOQO1G3O1G3OO&1vQWO7+(pO$>]QYO,59fO&2RQ^O'#ISO&2xQYO,5?QOOQR1G/P1G/PO&3QQ!bO,5:pO&3VQ!fO,5:rOOQS-E;l-E;lOOQV1G0Z1G0ZOOQV1G0g1G0gOOQV1G0h1G0hO&3^QWO'#JTOOQO1G.o1G.oOOQV<<Gr<<GrO&3iQWO1G5iO$5zQ_O,5>]O&3qQWO,5>]OOQO-E;o-E;oOOQO<<Jj<<JjO&3{QWO<<JjOOQO<<Jk<<JkO&4SQXO7+%`O&5TQWO,5>WOOQO-E;j-E;jOOQP7+%a7+%aO!1PQ^O,5:`O&5cQWO'#HmO&5wQWO,5?gOOQP1G/y1G/yOOQO,5:`,5:`O&6PQWO,5:`O%DzQWO,5:`O$>]QYO,5<PO&6UQXO,5<PO&6dQXO7+'UO.YQ_O1G1pO&6oQWO1G1pOOQO,5>`,5>`OOQO-E;r-E;rOOQV7+'l7+'lO&6yQWO<<KtO#DfQWO<<KtO&7XQWO<<HdOOQV<<LZ<<LZO!1dQWO<<LZOOQV<<K[<<K[O&7dQWO<<K[O%/wQWO<<K[O&7iQWO<<K[OOQV<<Kl<<KlO%/wQWO<<KlOOQV<<Kn<<KnO%0gQWO<<KnO&7qQWO<<KrO$>]QYO<<KrOOQV<<K}<<K}O%5tQWO<<K}O%5yQWO<<K}O#HXQWO<<K}OOQV<<Kt<<KtO&7yQWO<<KtO$>]QYO<<KtO&8RQWO<<L[O$>]QYO<<L[O&8^QWO<<L[OOQV<<Hb<<HbO$>]QYO7+(uOOQO7+*U7+*UOOQR7+$i7+$iO&8cQWO,5@lOOQO'#Gm'#GmO&8kQWO'#GmO&8vQYO'#IUO&8cQWO,5@lOOQR1G3]1G3]O&:cQYO,5=vO&;rQYO,5=XO&;|QWO,5=XOOQO,5=X,5=XOOQR7+(u7+(uO&<RQZO7+(uO&>eQZO7+(|O&@tQWO,5>qOOQO-E<T-E<TO&APQWO7+)QOOQO<<G}<<G}O&AWQYO'#ITO&AcQYO,5@jOOQQ7+(v7+(vOOQQ<<He<<HeO$>]QYO<<K|OOQV<<K|<<K|O&0uQWO<<K|O&AkQWO<<K|O%5tQWO<<K|O&AsQWO7+%YOOQV<<Hr<<HrOOQO<<Jn<<JnO.YQ_O,5;SO&AzQWO,5;SO.YQ_O'#EjO&BPQWO,5;SOOQU-E;m-E;mO&B[QWO1G0mOOQV1G0m1G0mO&%{Q^O1G0mOOQV<<Jy<<JyO!.cQ_O<<J}OOQV<<J}<<J}OOQV<<Hd<<HdO.YQ_O<<HdO&BaQWO'#FvO&BfQWO<<KQO&BnQ!fO<<KQO&BuQWO<<KQO&BzQWO<<KQO&CSQ!fO<<KQOOQV<<KQ<<KQO&CZQWO<<LZO&C`QWO,5@[O$>]QYO,5<xO&ChQWO,5<xO&CmQWO'#H{O&C`QWO,5@[OOQV1G2c1G2cO&DRQWO,5@^O$>]QYO,5@^O&D^QYO'#H|O&EsQWO,5@^OOQO1G2e1G2eO%,nQWO,5<uOOQO,5<v,5<vO&E{QYO'#HzO&G_QWO,5@XO%,bQYO,5=pO$>]QYO,5<oO&GjQWO,5@`O.YQ_O,5=PO&GrQWO,5=PO&G}QWO,5=PO&H`QWO'#H}O&GjQWO,5@`OOQV1G2j1G2jO&HtQYO,5<pO%0lQYO,5>PO&I]QYO,5@VOOQV<<Kr<<KrO&ItQWO,5=XO&KfQ^O,5:hO&KmQWO,5=XO$>]QYO,5=WO&KuQWO,5@cO&K}QWO,5@cO&MvQ^O'#IPO&KuQWO,5@cOOQO1G2q1G2qO&NTQWO,5=WO&N]QWO<<KtO&NkQYO,5>oO&NvQYO,5>dO' UQYO,5>dOOQQ,5>d,5>dOOQQ-E;v-E;vOOQQ7+'r7+'rO' aQYO1G2]O$>]QYO1G2^OOQV<<LQ<<LQO.YQ_O<<LQO' lQWO<<LQO' sQWO<<LQOOQO,5>m,5>mOOQO-E<P-E<POOQV<<L[<<L[O.YQ_O<<L[O'!OQYO1G/QO'!ZQYO,5>nOOQQ,5>n,5>nO'!fQYO,5>nOOQQ-E<Q-E<QOOQS1G0[1G0[O'$tQ!fO1G0^O'%RQ!fO1G0^O'%YQWO1G3wOOQOAN@UAN@UO'%dQWO1G/zOOQO,5>X,5>XOOQO-E;k-E;kO!1PQ^O1G/zOOQO1G/z1G/zO'%oQWO1G/zO'%tQXO1G1kO$>]QYO1G1kO'&PQWO7+'[OOQVANA`ANA`O'&ZQWOANA`O$>]QYOANA`O'&cQWOANA`OOQVAN>OAN>OO.YQ_OAN>OO'&qQWOANAuOOQVAN@vAN@vO'&vQWOAN@vOOQVANAWANAWOOQVANAYANAYOOQVANA^ANA^O'&{QWOANA^OOQVANAiANAiO%5tQWOANAiO%5yQWOANAiO''TQWOANA`OOQVANAvANAvO.YQ_OANAvO''cQWOANAvO$>]QYOANAvOOQR<<La<<LaO''nQWO1G6WO%JkQWO,5>pOOQO'#HY'#HYO''vQWO'#HZOOQO,5>p,5>pOOQO-E<S-E<SO'(RQYO1G2sO'(]QWO1G2sOOQO1G2s1G2sO$>]QYO<<LaOOQR<<Ll<<LlOOQQ,5>o,5>oOOQQ-E<R-E<RO&0uQWOANAhOOQVANAhANAhO%5tQWOANAhO$>]QYOANAhO'(bQWO1G1rO')UQ^O1G0nO.YQ_O1G0nO'*zQWO,5;UO'+RQWO1G0nP'+WQWO'#ERP&%{Q^O'#HpOOQV7+&X7+&XO'+cQWO7+&XO&&qQWOAN@iO'+hQWOAN>OO!5oQWO,5<bOOQS,5>a,5>aO'+oQWOAN@lO'+tQWOAN@lOOQS-E;s-E;sOOQVAN@lAN@lO'+|QWOAN@lOOQVANAuANAuO',UQWO1G5vO',^QWO1G2dO$>]QYO1G2dO&'|QWO,5>gOOQO,5>g,5>gOOQO-E;y-E;yO',iQWO1G5xO',qQWO1G5xO&(nQYO,5>hO',|QWO,5>hO$>]QYO,5>hOOQO-E;z-E;zO'-XQWO'#JnOOQO1G2a1G2aOOQO,5>f,5>fOOQO-E;x-E;xO&'cQYO,5<lO'-gQYO1G2ZO'.RQWO1G5zO'.ZQWO1G2kO.YQ_O1G2kO'.eQWO1G2kO&+UQWO,5>iOOQO,5>i,5>iOOQO-E;{-E;{OOQQ,5>c,5>cOOQQ-E;u-E;uO'.pQWO1G2sO'/QQWO1G2rO'/]QWO1G5}O'/eQ^O,5>kOOQO'#Go'#GoOOQO,5>k,5>kO'/lQWO,5>kOOQO-E;}-E;}O$>]QYO1G2rO'/zQYO7+'xO'0VQWOANAlOOQVANAlANAlO.YQ_OANAlO'0^QWOANAvOOQS7+%x7+%xO'0eQWO7+%xO'0pQ!fO7+%xO'0}QWO7+%fO!1PQ^O7+%fO'1YQXO7+'VOOQVG26zG26zO'1eQWOG26zO'1sQWOG26zO$>]QYOG26zO'1{QWOG23jOOQVG27aG27aOOQVG26bG26bOOQVG26xG26xOOQVG27TG27TO%5tQWOG27TO'2SQWOG27bOOQVG27bG27bO.YQ_OG27bO'2ZQWOG27bOOQO1G4[1G4[OOQO7+(_7+(_OOQRANA{ANA{OOQVG27SG27SO%5tQWOG27SO&0uQWOG27SO'2fQ^O7+&YO'4PQWO7+'^O'4sQ^O7+&YO.YQ_O7+&YP.YQ_O,5;SP'6PQWO,5;SP'6UQWO,5;SOOQV<<Is<<IsOOQVG26TG26TOOQVG23jG23jOOQO1G1|1G1|OOQVG26WG26WO'6aQWOG26WP&B}QWO'#HuO'6fQWO7+(OOOQO1G4R1G4RO'6qQWO7++dO'6yQWO1G4SO$>]QYO1G4SO%,nQWO'#HyO'7UQWO,5@YO'7dQWO7+(VO.YQ_O7+(VOOQO1G4T1G4TOOQO1G4V1G4VO'7nQWO1G4VO'7|QWO7+(^OOQVG27WG27WO'8XQWOG27WOOQS<<Id<<IdO'8`QWO<<IdO'8kQWO<<IQOOQVLD,fLD,fO'8vQWOLD,fO'9OQWOLD,fOOQVLD)ULD)UOOQVLD,oLD,oOOQVLD,|LD,|O'9^QWOLD,|O.YQ_OLD,|OOQVLD,nLD,nO%5tQWOLD,nO'9eQ^O<<ItO';OQWO<<JxO';rQ^O<<ItP'=OQWO1G0nP'=oQ^O1G0nP.YQ_O1G0nP'?bQWO1G0nOOQVLD+rLD+rO'?gQWO7+)nOOQO,5>e,5>eOOQO-E;w-E;wO'?rQWO<<KqOOQVLD,rLD,rOOQSAN?OAN?OOOQV!$(!Q!$(!QO'?|QWO!$(!QOOQV!$(!h!$(!hO'@UQWO!$(!hOOQV!$(!Y!$(!YO'@]Q^OAN?`POQU7+&Y7+&YP'AvQWO7+&YP'BgQ^O7+&YP.YQ_O7+&YOOQV!)9El!)9ElOOQV!)9FS!)9FSPOQU<<It<<ItP'DYQWO<<ItP'DyQ^O<<ItPOQUAN?`AN?`O'FlQWO'#CnO'FsQXO'#CnO'GlQWO'#I`O'IRQXO'#I`O'IxQWO'#DpO'IxQWO'#DpO!.cQ_O'#EkO'JZQ_O'#EoO'JbQ_O'#FPO'MfQ_O'#FbO'MmQXO'#I`O'NdQ_O'#E}O( gQ_O'#FWO'IxQWO,5:[O'IxQWO,5:[O!.cQ_O,5;ZO!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;]O!.cQ_O,5;fO(!jQ_O,5;kO(%nQWO,5;kO(&OQWO,5;|O(&VQYO'#CuO(&bQYO'#CvO(&mQWO'#CwO(&mQWO'#CwO('OQYO'#CtO('ZQWO,5;iO('bQWO,5;rO('iQ_O,5;rO((oQ_O,5;|O'IxQWO1G/vO((vQWO1G0uO(*eQWO1G0wO(*oQWO1G0wO(,dQWO1G0wO(,kQWO1G0wO(.]QWO1G0wO(.dQWO1G0wO(0UQWO1G0wO(0]QWO1G0wO(0dQWO1G1QO(0tQWO1G1VO(1UQYO'#IeO(&mQWO,59cO(&mQWO,59cO(1aQWO1G1^O(1hQWO1G1hO(&mQWO1G.}O(1oQWO'#DpO!.^QXO'#FbO(1tQWO,5;ZO(1{QWO'#Cw",stateData:"(2_~O&|OSUOS&}PQ~OPoOQ!QOSVOTVOZeO[lO^RO_RO`ROa!UOd[Og!nOsVOtVOuVOw!POyvO|!VO}mO!Q!dO!U!WO!W!XO!X!^O!Z!YO!]!pO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO$i!eO$m!fO$q!gO$s!hO%T!iO%V!jO%Z!kO%]!lO%^!mO%f!oO%j!qO%s!rO'Q`O'TQO'ZkO'^UO'gcO'qiO(QdO~O&}!sO~OZbX[bXdbXdlXobXwjX}bX!lbX!qbX!tbX#ObX#PbX#pbX'gbX'qbX'rbX'xbX'ybX'zbX'{bX'|bX'}bX(ObX(PbX(QbX(RbX(TbX~OybXXbX!ebX!PbXvbX#RbX~P$|OZ'SX['SXd'SXd'XXo'SXw'kXy'SX}'SX!l'SX!q'SX!t'SX#O'SX#P'SX#p'SX'g'SX'q'SX'r'SX'x'SX'y'SX'z'SX'{'SX'|'SX'}'SX(O'SX(P'SX(Q'SX(R'SX(T'SXv'SX~OX'SX!e'SX!P'SX#R'SX~P'ZOr!uO']!wO'_!uO~Od!xO~O^RO_RO`ROaRO'TQO~Od!}O~Od#PO[(SXo(SXy(SX}(SX!l(SX!q(SX!t(SX#O(SX#P(SX#p(SX'g(SX'q(SX'r(SX'x(SX'y(SX'z(SX'{(SX'|(SX'}(SX(O(SX(P(SX(Q(SX(R(SX(T(SXv(SX~OZ#OO~P*`OZ#RO[#QO~OQ!QO^#TO_#TO`#TOa#]Od#ZOg!nOyvO|!VO!Q!dO!U#^O!W!lO!]!pO$i!eO$m!fO$q!gO$s!hO%T!iO%V!jO%Z!kO%]!lO%^!mO%f!oO%j!qO%s!rO'Q#VO'T#SO~OPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdO~P)xOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!j#eO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdO~P)xO[#}Oo#xO}#zO!l#yO!q#jO!t#yO#O#xO#P#uO#p$OO'g#gO'q#yO'r#lO'x#hO'y#iO'z#iO'{#kO'|#nO'}#mO(O#|O(P#gO(Q#hO(R#fO(T#hO~OPoOQ!QOSVOTVOZeOd[OsVOtVOuVOw!PO!U#bO!W#cO!X!^O!Z!YO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO[#sXo#sXy#sX}#sX!l#sX!q#sX!t#sX#O#sX#P#sX#p#sX'g#sX'q#sX'r#sX'x#sX'y#sX'z#sX'{#sX'|#sX'}#sX(O#sX(P#sX(Q#sX(R#sX(T#sXX#sX!e#sX!P#sXv#sX#R#sX~P)xOX(SX!e(SX!P(SXw(SX#R(SX~P*`OPoOQ!QOSVOTVOX$ROZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'Q$UO'ZkO'^UO'gcO'qiO(QdO~P)xOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!P$XO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'Q$UO'ZkO'^UO'gcO'qiO(QdO~P)xOQ!QOSVOTVO[$gO^$pO_$ZO`9yOa9yOd$aOsVOtVOuVO}$eO!i$qO!l$lO!q$hO#V$lO'T$YO'^UO'g$[O~O!j$rOP(XP~P<cOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Q$uO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdO~P)xOw$vO~Oo'bX#O'bX#P'bX#p'bX'r'bX'x'bX'y'bX'z'bX'{'bX'|'bX'}'bX(O'bX(P'bX(R'bX(T'bX~OP%tXQ%tXS%tXT%tXZ%tX[%tX^%tX_%tX`%tXa%tXd%tXg%tXs%tXt%tXu%tXw%tXy%tX|%tX}%tX!Q%tX!U%tX!W%tX!X%tX!Z%tX!]%tX!l%tX!q%tX!t%tX#Y%tX#r%tX#{%tX$O%tX$b%tX$d%tX$f%tX$i%tX$m%tX$q%tX$s%tX%T%tX%V%tX%Z%tX%]%tX%^%tX%f%tX%j%tX%s%tX&z%tX'Q%tX'T%tX'Z%tX'^%tX'g%tX'q%tX(Q%tXv%tX~P@[Oy$xO['bX}'bX!l'bX!q'bX!t'bX'g'bX'q'bX(Q'bXv'bX~P@[Ow$yO!Q(iX!U(iX!W(iX$q(iX%](iX%^(iX~Oy$zO~PEsO!Q$}O!U%UO!W!lO$m%OO$q%PO$s%QO%T%RO%V%SO%Z%TO%]!lO%^%VO%f%WO%j%XO%s%YO~O!Q!lO!U!lO!W!lO$q%[O%]!lO~O%^%VO~PGaOPoOQ!QOSVOTVOZeO[lO^RO_RO`ROa!UOd[Og!nOsVOtVOuVOw!POyvO|!VO}mO!Q!dO!U!WO!W!XO!X!^O!Z!YO!]!pO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO$i!eO$m!fO$q!gO$s!hO%T!iO%V!jO%Z!kO%]!lO%^!mO%f!oO%j!qO%s!rO'Q#VO'TQO'ZkO'^UO'gcO'qiO(QdO~Ov%`O~P]OQ!QOZ%rO[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaO!Q{X!U{X!W{X$m{X$q{X$s{X%T{X%V{X%Z{X%]{X%^{X%f{X%j{X%s{X~P'ZO!Q{X!U{X!W{X$m{X$q{X$s{X%T{X%V{X%Z{X%]{X%^{X%f{X%j{X%s{X~O}%}O'T{XQ{XZ{X[{X^{X_{X`{Xa{Xd{Xg{X!q{X$f{X&W{X'Z{X(Q{X~PMuOg&PO%f%WO!Q(iX!U(iX!W(iX$q(iX%](iX%^(iX~Ow!PO~P! yOw!PO!X&RO~PEvOPoOQ!QOSVOTVOZeO[lO^9qO_9qO`9qOa9qOd9tOsVOtVOuVOw!PO}mO!U#bO!W#cO!X:zO!Z!YO!]&UO!l9wO!q9vO!t9wO#Y!_O#r9zO#{9{O$O!]O$b!`O$d!bO$f!cO'T9oO'ZkO'^UO'gcO'q9wO(QdO~OPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdOo#qXy#qX#O#qX#P#qX#p#qX'r#qX'x#qX'y#qX'z#qX'{#qX'|#qX'}#qX(O#qX(P#qX(R#qX(T#qXX#qX!e#qX!P#qXv#qX#R#qX~P)xOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdOo#zXy#zX#O#zX#P#zX#p#zX'r#zX'x#zX'y#zX'z#zX'{#zX'|#zX'}#zX(O#zX(P#zX(R#zX(T#zXX#zX!e#zX!P#zXv#zX#R#zX~P)xO'ZkO[#}Xo#}Xy#}X}#}X!l#}X!q#}X!t#}X#O#}X#P#}X#p#}X'g#}X'q#}X'r#}X'x#}X'y#}X'z#}X'{#}X'|#}X'}#}X(O#}X(P#}X(Q#}X(R#}X(T#}XX#}X!e#}X!P#}Xv#}Xw#}X#R#}X~OPoO~OPoOQ!QOSVOTVOZeO[lO^9qO_9qO`9qOa9qOd9tOsVOtVOuVOw!PO}mO!U#bO!W#cO!X:zO!Z!YO!l9wO!q9vO!t9wO#Y!_O#r9zO#{9{O$O!]O$b!`O$d!bO$f!cO'T9oO'ZkO'^UO'gcO'q9wO(QdO~O!S&_O~Ow!PO~O!j&bO~P<cO'T&cO~PEvOZ&eO~O'T&cO~O'^UOw(^Xy(^X!Q(^X!U(^X!W(^X$q(^X%](^X%^(^X~Oa&hO~P!1iO'T&iO~O_&nO'T&cO~OQ&oOZ&pO[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaO!j&uO~P<cO^&wO_&wO`&wOa&wOd'POw&|O'T&vO(Q&}O~O!i'UO!j'TO'T&cO~O&}!sO'O'VO'P'XO~Or!uO']'ZO'_!uO~OQ']O^'ia_'ia`'iaa'ia'T'ia~O['cOw'dO}'bO~OQ']O~OQ!QO^#TO_#TO`#TOa'kOd#ZO'T#SO~O['lO~OZbXdlXXbXobXPbX!SbX!ebX'rbX!PbX!ObXybX!ZbX#RbXvbX~O[bXwbX}bX~P!6mOZ'SXd'XXX'SX['SXo'SXw'SX}'SX#p'SXP'SX!S'SX!e'SX'r'SX!P'SX!O'SXy'SX!Z'SX#R'SXv'SX~O^#TO_#TO`#TOa'kO'T#SO~OZ'mO~Od'oO~OZ'SXd'XX~PMuOZ'pOX(SX!e(SX!P(SXw(SX#R(SX~P*`O[#}O}#zO(O#|O(R#fOo#_ay#_a!l#_a!q#_a!t#_a#O#_a#P#_a#p#_a'g#_a'q#_a'r#_a'x#_a'y#_a'z#_a'{#_a'|#_a'}#_a(P#_a(Q#_a(T#_aX#_a!e#_a!P#_av#_aw#_a#R#_a~Ow!PO!X&RO~Oy#caX#ca!e#ca!P#cav#ca#R#ca~P2gOPoOQ!QOSVOTVOZeOd[OsVOtVOuVOw!PO!U#bO!W#cO!X!^O!Z!YO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO[#sao#say#sa}#sa!l#sa!q#sa!t#sa#O#sa#P#sa#p#sa'g#sa'q#sa'r#sa'x#sa'y#sa'z#sa'{#sa'|#sa'}#sa(O#sa(P#sa(Q#sa(R#sa(T#saX#sa!e#sa!P#sav#sa#R#sa~P)xOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'Q#VO'ZkO'^UO'gcO'qiO(QdO!P(UP~P)xOu(SO#w(TO'T(RO~O[#}O}#zO!q#jO'g#gO'r#lO'x#hO'y#iO'z#iO'{#kO'|#nO'}#mO(O#|O(P#gO(Q#hO(R#fO(T#hO!l#sa!t#sa#p#sa'q#sa~Oo#xO#O#xO#P#uOy#saX#sa!e#sa!P#sav#sa#R#sa~P!B}Oy(YO!e(WOX(WX~P2gOX(ZO~OPoOQ!QOSVOTVOX(ZOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'Q$UO'ZkO'^UO'gcO'qiO(QdO~P)xOZ#RO~O!P(_O!e(WO~P2gOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'Q$UO'ZkO'^UO'gcO'qiO(QdO~P)xOZbXdlXwjX}jX!tbX'qbX~OP!RX!S!RX!e!RX'p!RX'r!RX!O!RXo!RXy!RX!P!RXX!RX!Z!RX#R!RXv!RX~P!JUOZ'SXd'XXw'kX}'kX!t'SX'q'SX~OP!`X!S!`X!e!`X'r!`X!O!`Xo!`Xy!`X!P!`XX!`X!Z!`X#R!`Xv!`X~P!KgOT(aOu(aO~O!t(bO'q(bOP!^X!S!^X!e!^X'r!^X!O!^Xo!^Xy!^X!P!^XX!^X!Z!^X#R!^Xv!^X~O^9rO_9rO`9yOa9yO'T9pO~Od(eO~O'p(fOP'hX!S'hX!e'hX'r'hX!O'hXo'hXy'hX!P'hXX'hX!Z'hX#R'hXv'hX~O!j&bO!P'lP~P<cOw(kO}(jO~O!j&bOX'lP~P<cO!j(oO~P<cOZ'pO!t(bO'q(bO~O!S(qO'r(pOP$WX!e$WX~O!e(rOP(YX~OP(tO~OP!aX!S!aX!e!aX'r!aX!O!aXo!aXy!aX!P!aXX!aX!Z!aX#R!aXv!aX~P!KgOy$UaX$Ua!e$Ua!P$Uav$Ua#R$Ua~P2gO!l(|O'Q#VO'T(xOv(ZP~OQ!QO^#TO_#TO`#TOa#]Od#ZOg!nOyvO|!VO!Q!dO!U#^O!W!lO!]!pO$i!eO$m!fO$q!gO$s!hO%T!iO%V!jO%Z!kO%]!lO%^!mO%f!oO%j!qO%s!rO'Q`O'T#SO~Ov)TO~P#$iOy)VO~PEsO%^)WO~PGaOa)ZO~P!1iO%f)`O~PEvO_)aO'T&cO~O!i)fO!j)eO'T&cO~O'^UO!Q(^X!U(^X!W(^X$q(^X%](^X%^(^X~Ov%uX~P2gOv)gO~PGyOv)gO~Ov)gO~P]OQiXQ'XXZiXd'XX}iX#piX(PiX~ORiXwiX$fiX$|iX[iXoiXyiX!liX!qiX!tiX#OiX#PiX'giX'qiX'riX'xiX'yiX'ziX'{iX'|iX'}iX(OiX(QiX(RiX(TiX!PiX!eiXXiXPiXviX!SiX#RiX~P#(kOQjXQlXRjXZjXdlX}jX#pjX(PjXwjX$fjX$|jX[jXojXyjX!ljX!qjX!tjX#OjX#PjX'gjX'qjX'rjX'xjX'yjX'zjX'{jX'|jX'}jX(OjX(QjX(RjX(TjX!PjX!ejXXjX!SjXPjXvjX#RjX~O%^)jO~PGaOQ']Od)kO~O^)mO_)mO`)mOa)mO'T%dO~Od)qO~OQ']OZ)uO})sOR'UX#p'UX(P'UXw'UX$f'UX$|'UX['UXo'UXy'UX!l'UX!q'UX!t'UX#O'UX#P'UX'g'UX'q'UX'r'UX'x'UX'y'UX'z'UX'{'UX'|'UX'}'UX(O'UX(Q'UX(R'UX(T'UX!P'UX!e'UXX'UXP'UXv'UX!S'UX#R'UX~OQ!QO^:bO_:^O`TOaTOd:aO%^)jO'T:_O~PGaOQ!QOZ%rO[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!j)yO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaOQ!QOZ%rO[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!P)|O!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaO(P*OO~OR*QO#p*RO(P*PO~OQhXQ'XXZhXd'XX}hX(PhX~ORhX#phXwhX$fhX$|hX[hXohXyhX!lhX!qhX!thX#OhX#PhX'ghX'qhX'rhX'xhX'yhX'zhX'{hX'|hX'}hX(OhX(QhX(RhX(ThX!PhX!ehXXhXPhXvhX!ShX#RhX~P#4kOQ*SO~O})sO~OQ!QO^%vO_%cO`TOaTOd%jO$f%wO%^%xO'T%dO~PGaO!Q*VO!j*VO~O^*YO`*YOa*YO!O*ZO~OQ&oOZ*[O[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaO[#}Oo:YO}#zO!l:ZO!q#jO!t:ZO#O:YO#P:VO#p$OO'g#gO'q:ZO'r#lO'x#hO'y#iO'z#iO'{#kO'|#nO'}#mO(O#|O(P#gO(Q#hO(R#fO(T#hO~Ow'dX~P#9vOy#qaX#qa!e#qa!P#qav#qa#R#qa~P2gOy#zaX#za!e#za!P#zav#za#R#za~P2gOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!S&_O!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdOo#zay#za#O#za#P#za#p#za'r#za'x#za'y#za'z#za'{#za'|#za'}#za(O#za(P#za(R#za(T#zaX#za!e#za!P#zav#za#R#za~P)xOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Q*eO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdO~P)xOw*fO~P#9vO$b*iO$d*jO$f*kO~O!O*lO'r(pO~O!S*nO~O'T*oO~Ow$yOy*qO~O'T*rO~OQ*uOw*vOy*yO}*wO$|*xO~OQ*uOw*vO$|*xO~OQ*uOw+QO$|*xO~OQ*uOo+VOy+XO!S+UO~OQ*uO}+ZO~OQ!QOZ%rO[%qO^%vO`TOaTOd%jOg%yO}%pO!U!lO!W!lO!q%oO$f%wO$q%[O%]!lO%^%xO&W%{O'T%dO'Z%eO(Q%zO~OR+bO_+^O!Q+cO~P#DkO_%cO!Q!lOw&UX$|&UX(P&UX~P#DkOw$yO$f+hO$|*xO(P*PO~OQ!QOZ*[O[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaOQ*uOw$yO!S+UO$|*xO~Oo+nOy+mO!S+oO'r(pO~OdlXy!RX#pbXv!RX!e!RX~Od'XXy(mX#p'SXv(mX!e(mX~Od+qO~O^#TO_#TO`#TOa'kOw&|O'T&vO(Q+vO~Ov(oP~P!3|O#p+{O~Oy+|O~O!S+}O~O&}!sO'O'VO'P,PO~Od,QO~OSVOTVO_%cOsVOtVOuVOw!PO!Q!lO'^UO~P#DkOS,^OT,^OZ,^O['cO_,YOd,^Oo,^Os,^Ou,^Ow'dOy,^O}'bO!S,^O!e,^O!l,^O!q,[O!t,^O!y,^O#O,^O#P,^O#Q,^O#R,^O'Q,^O'Z%eO'^UO'g,ZO'r,[O'v,_O'x,ZO'y,[O'z,[O'{,[O'|,]O'},]O(O,^O(P,`O(Q,`O(R,aO~O!P,dO~P#KkOX,gO~P#KkOv,iO~P#KkOo'tX#O'tX#P'tX#p'tX'r'tX'x'tX'y'tX'z'tX'{'tX'|'tX'}'tX(O'tX(P'tX(R'tX(T'tX~Oy,jO['tX}'tX!l'tX!q'tX!t'tX'g'tX'q'tX(Q'tXv'tX~P#NjOP$giQ$giS$giT$giZ$gi[$gi^$gi_$gi`$gia$gid$gig$gis$git$giu$giw$giy$gi|$gi}$gi!Q$gi!U$gi!W$gi!X$gi!Z$gi!]$gi!l$gi!q$gi!t$gi#Y$gi#r$gi#{$gi$O$gi$b$gi$d$gi$f$gi$i$gi$m$gi$q$gi$s$gi%T$gi%V$gi%Z$gi%]$gi%^$gi%f$gi%j$gi%s$gi&z$gi'Q$gi'T$gi'Z$gi'^$gi'g$gi'q$gi(Q$giv$gi~P#NjOX,kO~O['cOo,lOw'dO}'bOX]X~Oy#ciX#ci!e#ci!P#civ#ci#R#ci~P2gO[#}O}#zO'x#hO(O#|O(Q#hO(R#fO(T#hOo#eiy#ei!l#ei!q#ei!t#ei#O#ei#P#ei#p#ei'q#ei'r#ei'y#ei'z#ei'{#ei'|#ei'}#eiX#ei!e#ei!P#eiv#ei#R#ei~O'g#ei(P#ei~P$'PO[#}O}#zO(O#|O(R#fOo#eiy#ei!l#ei!q#ei!t#ei#O#ei#P#ei#p#ei'q#ei'r#ei'y#ei'z#ei'{#ei'|#ei'}#eiX#ei!e#ei!P#eiv#ei#R#ei~O'g#ei'x#ei(P#ei(Q#ei(T#eiw#ei~P$)QO'g#gO(P#gO~P$'PO[#}O}#zO'g#gO'x#hO'y#iO'z#iO(O#|O(P#gO(Q#hO(R#fO(T#hOo#eiy#ei!l#ei!t#ei#O#ei#P#ei#p#ei'q#ei'r#ei'{#ei'|#ei'}#eiX#ei!e#ei!P#eiv#ei#R#ei~O!q#ei~P$+`O!q#jO~P$+`O[#}O}#zO!q#jO'g#gO'x#hO'y#iO'z#iO'{#kO(O#|O(P#gO(Q#hO(R#fO(T#hOo#eiy#ei!l#ei!t#ei#O#ei#P#ei#p#ei'q#ei'|#ei'}#eiX#ei!e#ei!P#eiv#ei#R#ei~O'r#ei~P$-hO'r#lO~P$-hO[#}O}#zO!q#jO#P#uO'g#gO'r#lO'x#hO'y#iO'z#iO'{#kO(O#|O(P#gO(Q#hO(R#fO(T#hOo#eiy#ei!l#ei!t#ei#O#ei#p#ei'q#ei'|#eiX#ei!e#ei!P#eiv#ei#R#ei~O'}#ei~P$/pO'}#mO~P$/pO[#}O}#zO!q#jO'g#gO'r#lO'x#hO'y#iO'z#iO'{#kO'|#nO'}#mO(O#|O(P#gO(Q#hO(R#fO(T#hO!l#ni!t#ni#p#ni'q#ni~Oo#xO#O#xO#P#uOy#niX#ni!e#ni!P#niv#ni#R#ni~P$1xO[#}O}#zO!q#jO'g#gO'r#lO'x#hO'y#iO'z#iO'{#kO'|#nO'}#mO(O#|O(P#gO(Q#hO(R#fO(T#hO!l#si!t#si#p#si'q#si~Oo#xO#O#xO#P#uOy#siX#si!e#si!P#siv#si#R#si~P$3yOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'Q#VO'ZkO'^UO'gcO'qiO(QdO~P)xO!e,sO!P(VX~P2gO!P,uO~OX,vO~P2gOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO'gcO'qiO(QdOX&fX!e&fX!P&fX~P)xO!e(WOX(Wa~Oy,zO!e(WOX(WX~P2gOX,{O~O!P,|O!e(WO~O!P-OO!e(WO~P2gOSVOTVOsVOtVOuVO'^UO'g$[O~P!6POP!baZca!S!ba!e!ba!tca'qca'r!ba!O!bao!bay!ba!P!baX!ba!Z!ba#R!bav!ba~O!e-TO'r(pO!P'mXX'mX~O!P-VO~O!i-`O!j-_O!l-[O'T-XOv'nP~OX-aO~O_%cO!Q!lO~P#DkO!j-gOP&gX!e&gX~P<cO!e(rOP(Ya~O!S-iO'r(pOP$Wa!e$Wa~Ow!PO(P*PO~OvbX!S!kX!ebX~O'Q#VO'T(xO~O!S-mO~O!e-oOv([X~Ov-qO~Ov-sO~P,cOv-sO~P#$iO_-uO'T&cO~O!S-vO~Ow$yOy-wO~OQ*uOw*vOy-zO}*wO$|*xO~OQ*uOo.UO~Oy._O~O!S.`O~O!j.bO'T&cO~Ov.cO~Ov.cO~PGyOQ']O^'Wa_'Wa`'Waa'Wa'T'Wa~Od.gO~OQ'XXQ'kXR'kXZ'kXd'XX}'kX#p'kX(P'kXw'kX$f'kX$|'kX['kXo'kXy'kX!l'kX!q'kX!t'kX#O'kX#P'kX'g'kX'q'kX'r'kX'x'kX'y'kX'z'kX'{'kX'|'kX'}'kX(O'kX(Q'kX(R'kX(T'kX!P'kX!e'kXX'kXP'kXv'kX!S'kX#R'kX~OQ!QOZ%rO[%qO^.rO_%cO`TOaTOd%jOg%yO}%pO!j.sO!q.pO!t.kO#V.mO$f%wO%^%xO&W%{O'Q#VO'T%dO'Z%eO(Q%zO!P(sP~PGaO#Q.tOR%wa#p%wa(P%waw%wa$f%wa$|%wa[%wao%way%wa}%wa!l%wa!q%wa!t%wa#O%wa#P%wa'g%wa'q%wa'r%wa'x%wa'y%wa'z%wa'{%wa'|%wa'}%wa(O%wa(Q%wa(R%wa(T%wa!P%wa!e%waX%waP%wav%wa!S%wa#R%wa~O%^.vO~PGaO(P*POR&Oa#p&Oaw&Oa$f&Oa$|&Oa[&Oao&Oay&Oa}&Oa!l&Oa!q&Oa!t&Oa#O&Oa#P&Oa'g&Oa'q&Oa'r&Oa'x&Oa'y&Oa'z&Oa'{&Oa'|&Oa'}&Oa(O&Oa(Q&Oa(R&Oa(T&Oa!P&Oa!e&OaX&OaP&Oav&Oa!S&Oa#R&Oa~O_%cO!Q!lO!j.xO(P*OO~P#DkO!e.yO(P*PO!P(uX~O!P.{O~OX.|Oy.}O(P*PO~O'Z%eOR(qP~OQ']O})sORfa#pfa(Pfawfa$ffa$|fa[faofayfa!lfa!qfa!tfa#Ofa#Pfa'gfa'qfa'rfa'xfa'yfa'zfa'{fa'|fa'}fa(Ofa(Qfa(Rfa(Tfa!Pfa!efaXfaPfavfa!Sfa#Rfa~OQ']O})sOR&Va#p&Va(P&Vaw&Va$f&Va$|&Va[&Vao&Vay&Va!l&Va!q&Va!t&Va#O&Va#P&Va'g&Va'q&Va'r&Va'x&Va'y&Va'z&Va'{&Va'|&Va'}&Va(O&Va(Q&Va(R&Va(T&Va!P&Va!e&VaX&VaP&Vav&Va!S&Va#R&Va~O!P/UO~Ow$yO$f/ZO$|*xO(P*PO~OQ!QOZ/[O[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaOo/^O'r(pO~O#W/_OP!YiQ!YiS!YiT!YiZ!Yi[!Yi^!Yi_!Yi`!Yia!Yid!Yig!Yio!Yis!Yit!Yiu!Yiw!Yiy!Yi|!Yi}!Yi!Q!Yi!U!Yi!W!Yi!X!Yi!Z!Yi!]!Yi!l!Yi!q!Yi!t!Yi#O!Yi#P!Yi#Y!Yi#p!Yi#r!Yi#{!Yi$O!Yi$b!Yi$d!Yi$f!Yi$i!Yi$m!Yi$q!Yi$s!Yi%T!Yi%V!Yi%Z!Yi%]!Yi%^!Yi%f!Yi%j!Yi%s!Yi&z!Yi'Q!Yi'T!Yi'Z!Yi'^!Yi'g!Yi'q!Yi'r!Yi'x!Yi'y!Yi'z!Yi'{!Yi'|!Yi'}!Yi(O!Yi(P!Yi(Q!Yi(R!Yi(T!YiX!Yi!e!Yi!P!Yiv!Yi!i!Yi!j!Yi#V!Yi#R!Yi~Oy#ziX#zi!e#zi!P#ziv#zi#R#zi~P2gOy$UiX$Ui!e$Ui!P$Uiv$Ui#R$Ui~P2gOv/eO!j&bO'Q`O~P<cOw/nO}/mO~Oy!RX#pbX~Oy/oO~O#p/pO~OR+bO_+dO!Q/sO'T&iO'Z%eO~Oa/zO|!VO'Q#VO'T(ROv(cP~OQ!QOZ%rO[%qO^%vO_%cO`TOa/zOd%jOg%yO|!VO}%pO!q%oO$f%wO%^%xO&W%{O'Q#VO'T%dO'Z%eO(Q%zO!P(eP~PGaOQ!QOZ%rO[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f0VO%^%xO&W%{O'T%dO'Z%eO(Q%zOw(`Py(`P~PGaOw*vO~Oy-zO$|*xO~Oa/zO|!VO'Q#VO'T*oOv(gP~Ow+QO~OQ!QOZ%rO[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f0VO%^%xO&W%{O'T%dO'Z%eO(Q%zO(R0`O~PGaOy0dO~OQ!QOSVOTVO[$gO^0lO_$ZO`9yOa9yOd$aOsVOtVOuVO}$eO!i$qO!j0mO!l$lO!q0eO!t0hO'Q#VO'T$YO'Z%eO'^UO'g$[O~O#V0nO!P(jP~P%1}Ow!POy0pO#Q0rO$|*xO~OR0uO!e0sO~P#(kOR0uO!S+UO!e0sO(P*OO~OR0uOo0wO!S+UO!e0sOQ'VXZ'VX}'VX#p'VX(P'VX~OR0uOo0wO!e0sO~OR0uO!e0sO~O$f/ZO(P*PO~Ow$yO~Ow$yO$|*xO~Oo0}Oy0|O!S1OO'r(pO~O!e1POv(pX~Ov1RO~O^#TO_#TO`#TOa'kOw&|O'T&vO(Q1VO~Oo1YOQ'VXR'VXZ'VX}'VX!e'VX(P'VX~O!e1ZO(P*POR'YX~O!e1ZOR'YX~O!e1ZO(P*OOR'YX~OR1]O~O!S1^OS'wXT'wXZ'wX['wX_'wXd'wXo'wXs'wXu'wXw'wXy'wX}'wX!P'wX!e'wX!l'wX!q'wX!t'wX!y'wX#O'wX#P'wX#Q'wX#R'wX'Q'wX'Z'wX'^'wX'g'wX'r'wX'v'wX'x'wX'y'wX'z'wX'{'wX'|'wX'}'wX(O'wX(P'wX(Q'wX(R'wXX'wXv'wX~O}1_O~O!P1aO~P#KkOX1bO~P#KkOv1cO~P#KkOS,^OT,^OZ,^O['cO_1dOd,^Oo,^Os,^Ou,^Ow'dOy,^O}'bO!S,^O!e,^O!l,^O!q,[O!t,^O!y,^O#O,^O#P,^O#Q,^O#R,^O'Q,^O'Z%eO'^UO'g,ZO'r,[O'v,_O'x,ZO'y,[O'z,[O'{,[O'|,]O'},]O(O,^O(P,`O(Q,`O(R,aO~OX1fO~Oy,jO~O!e,sO!P(Va~P2gOPoOQ!QOSVOTVOZeO[lOd[OsVOtVOuVOw!PO}mO!U#bO!W#cO!X!^O!Z!YO!liO!qgO!tiO#Y!_O#r!ZO#{![O$O!]O$b!`O$d!bO$f!cO'Q#VO'ZkO'^UO'gcO'qiO(QdO!P&eX!e&eX~P)xO!e,sO!P(Va~OX&fa!e&fa!P&fa~P2gOX1kO~P2gO!P1mO!e(WO~OP!biZci!S!bi!e!bi!tci'qci'r!bi!O!bio!biy!bi!P!biX!bi!Z!bi#R!biv!bi~O'r(pOP!oi!S!oi!e!oi!O!oio!oiy!oi!P!oiX!oi!Z!oi#R!oiv!oi~O!j&bO!P&`X!e&`XX&`X~P<cO!e-TO!P'maX'ma~O!P1qO~Ov!RX!S!kX!e!RX~O!S1rO~O!e1sOv'oX~Ov1uO~O'T-XO~O!j1xO'T-XO~O(P*POP$Wi!e$Wi~O!S1yO'r(pOP$XX!e$XX~O!S1|O~Ov$_a!e$_a~P2gO!l(|O'Q#VO'T(xOv&hX!e&hX~O!e-oOv([a~Ov2QO~P,cOy2UO~O#p2VO~Oy2WO$|*xO~Ow*vOy2WO}*wO$|*xO~Oo2aO~Ow!POy2fO#Q2hO$|*xO~O!S2jO~Ov2lO~O#Q2mOR%wi#p%wi(P%wiw%wi$f%wi$|%wi[%wio%wiy%wi}%wi!l%wi!q%wi!t%wi#O%wi#P%wi'g%wi'q%wi'r%wi'x%wi'y%wi'z%wi'{%wi'|%wi'}%wi(O%wi(Q%wi(R%wi(T%wi!P%wi!e%wiX%wiP%wiv%wi!S%wi#R%wi~Od2nO~O^2qO!j.sO!q2rO'Q#VO'Z%eO~O(P*PO!P%{X!e%{X~O!e2sO!P(tX~O!P2uO~OQ!QOZ%rO[%qO^2wO_%cO`TOaTOd%jOg%yO}%pO!j2xO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(Q%zO~PGaO^2yO!j2xO(P*OO~O!P%aX!e%aX~P#4kO^2yO~O(P*POR&Oi#p&Oiw&Oi$f&Oi$|&Oi[&Oio&Oiy&Oi}&Oi!l&Oi!q&Oi!t&Oi#O&Oi#P&Oi'g&Oi'q&Oi'r&Oi'x&Oi'y&Oi'z&Oi'{&Oi'|&Oi'}&Oi(O&Oi(Q&Oi(R&Oi(T&Oi!P&Oi!e&OiX&OiP&Oiv&Oi!S&Oi#R&Oi~O_%cO!Q!lO!P&yX!e&yX~P#DkO!e.yO!P(ua~OR3QO(P*PO~O!e3ROR(rX~OR3TO~O(P*POR&Pi#p&Piw&Pi$f&Pi$|&Pi[&Pio&Piy&Pi}&Pi!l&Pi!q&Pi!t&Pi#O&Pi#P&Pi'g&Pi'q&Pi'r&Pi'x&Pi'y&Pi'z&Pi'{&Pi'|&Pi'}&Pi(O&Pi(Q&Pi(R&Pi(T&Pi!P&Pi!e&PiX&PiP&Piv&Pi!S&Pi#R&Pi~O!P3UO~O$f3VO(P*PO~Ow$yO$f3VO$|*xO(P*PO~Ow!PO!Z!YO~O!Z3aO#R3_O'r(pO~O!j&bO'Q#VO~P<cOv3eO~Ov3eO!j&bO'Q`O~P<cO!O3hO'r(pO~Ow!PO~P#9vOo3kOy3jO(P*PO~O!P3oO~P%;pOv3rO~P%;pOR0uO!S+UO!e0sO~OR0uOo0wO!S+UO!e0sO~Oa/zO|!VO'Q#VO'T(RO~O!S3uO~O!e3wOv(dX~Ov3yO~OQ!QOZ%rO[%qO^%vO_%cO`TOa/zOd%jOg%yO|!VO}%pO!q%oO$f%wO%^%xO&W%{O'Q#VO'T%dO'Z%eO(Q%zO~PGaO!e3|O(P*PO!P(fX~O!P4OO~O!S4PO(P*OO~O!S+UO(P*PO~O!e4ROw(aXy(aX~OQ4TO~Oy2WO~Oa/zO|!VO'Q#VO'T*oO~Oo4WOw*vO}*wOv%XX!e%XX~O!e4ZOv(hX~Ov4]O~O(P4_Oy(_Xw(_X$|(_XR(_Xo(_X!e(_X~Oy4aO(P*PO~OQ!QOSVOTVO[$gO^4bO_$ZO`9yOa9yOd$aOsVOtVOuVO}$eO!i$qO!l$lO!q$hO#V$lO'T$YO'^UO'g$[O~O!j4cO'Z%eO~P&,sO!S4eO'r(pO~O#V4gO~P%1}O!e4hO!P(kX~O!P4jO~O!P%aX!S!aX!e%aX'r!aX~P!KgO!j&bO~P&,sO!e4hO!P(kX!S'eX'r'eX~O^2yO!j2xO~Ow!POy2fO~O_4pO!Q/sO'T&iO'Z%eOR&lX!e&lX~OR4rO!e0sO~O!S4tO~Ow$yO$|*xO(P*PO~Oy4uO~P2gOo4vOy4uO(P*PO~Ov&uX!e&uX~P!3|O!e1POv(pa~Oo4|Oy4{O(P*PO~OSVOTVO_%cOsVOtVOuVOw!PO!Q!lO'^UOR&vX!e&vX~P#DkO!e1ZOR'Ya~O!y5SO~O!P5TO~P#KkO!S1^OX'wX#R'wX~O!e,sO!P(Vi~O!P&ea!e&ea~P2gOX5WO~P2gOP!bqZcq!S!bq!e!bq!tcq'qcq'r!bq!O!bqo!bqy!bq!P!bqX!bq!Z!bq#R!bqv!bq~O'r(pO!P&`a!e&`aX&`a~O!i-`O!j-_O!l5YO'T-XOv&aX!e&aX~O!e1sOv'oa~O!S5[O~O!S5`O'r(pOP$Xa!e$Xa~O(P*POP$Wq!e$Wq~Ov$^i!e$^i~P2gOw!POy5bO#Q5dO$|*xO~Oo5gOy5fO(P*PO~Oy5iO~Oy5iO$|*xO~Oy5mO(P*PO~Ow!POy5bO~Oo5tOy5sO(P*PO~O!S5vO~O!e2sO!P(ta~O^2yO!j2xO'Z%eO~OQ!QOZ%rO[%qO^.rO_%cO`TOaTOd%jOg%yO}%pO!j.sO!q.pO!t5zO#V5|O$f%wO%^%xO&W%{O'Q#VO'T%dO'Z%eO(Q%zO!P&xX!e&xX~PGaOQ!QOZ%rO[%qO^6OO_%cO`TOaTOd%jOg%yO}%pO!j6PO!q%oO$f%wO%^%xO&W%{O'T%dO'Z%eO(P*OO(Q%zO~PGaO!P%aa!e%aa~P#4kO^6QO~O#Q6ROR%wq#p%wq(P%wqw%wq$f%wq$|%wq[%wqo%wqy%wq}%wq!l%wq!q%wq!t%wq#O%wq#P%wq'g%wq'q%wq'r%wq'x%wq'y%wq'z%wq'{%wq'|%wq'}%wq(O%wq(Q%wq(R%wq(T%wq!P%wq!e%wqX%wqP%wqv%wq!S%wq#R%wq~O(P*POR&Oq#p&Oqw&Oq$f&Oq$|&Oq[&Oqo&Oqy&Oq}&Oq!l&Oq!q&Oq!t&Oq#O&Oq#P&Oq'g&Oq'q&Oq'r&Oq'x&Oq'y&Oq'z&Oq'{&Oq'|&Oq'}&Oq(O&Oq(Q&Oq(R&Oq(T&Oq!P&Oq!e&OqX&OqP&Oqv&Oq!S&Oq#R&Oq~O(P*PO!P&ya!e&ya~OX6SO~P2gO'Z%eOR&wX!e&wX~O!e3ROR(ra~O$f6YO(P*PO~Ow![q~P#9vO#R6]O~O!Z3aO#R6]O'r(pO~Ov6bO~O#R6fO~Oy6gO!P6hO~O!P6hO~P%;pOy6kO~Ov6kOy6gO~Ov6kO~P%;pOy6mO~O!e3wOv(da~O!S6pO~Oa/zO|!VO'Q#VO'T(ROv&oX!e&oX~O!e3|O(P*PO!P(fa~OQ!QOZ%rO[%qO^%vO_%cO`TOa/zOd%jOg%yO|!VO}%pO!q%oO$f%wO%^%xO&W%{O'Q#VO'T%dO'Z%eO(Q%zO!P&pX!e&pX~PGaO!e3|O!P(fa~OQ!QOZ%rO[%qO^%vO_%cO`TOaTOd%jOg%yO}%pO!q%oO$f0VO%^%xO&W%{O'T%dO'Z%eO(Q%zOw&nX!e&nXy&nX~PGaO!e4ROw(aay(aa~O!e4ZOv(ha~Oo7SOv%Xa!e%Xa~Oo7SOw*vO}*wOv%Xa!e%Xa~Oa/zO|!VO'Q#VO'T*oOv&qX!e&qX~O(P*POy$xaw$xa$|$xaR$xao$xa!e$xa~O(P4_Oy(_aw(_a$|(_aR(_ao(_a!e(_a~O!P%aa!S!aX!e%aa'r!aX~P!KgOQ!QOSVOTVO[$gO_$ZO`9yOa9yOd$aOsVOtVOuVO}$eO!i$qO!j&bO!l$lO!q$hO#V$lO'T$YO'^UO'g$[O~O^7ZO~P&JUO^6QO!j6PO~O!e4hO!P(ka~O!e4hO!P(ka!S'eX'r'eX~OQ!QOSVOTVO[$gO^0lO_$ZO`9yOa9yOd$aOsVOtVOuVO}$eO!i$qO!j0mO!l$lO!q0eO!t7_O'Q#VO'T$YO'Z%eO'^UO'g$[O~O#V7aO!P&sX!e&sX~P&L]O!S7cO'r(pO~Ow!POy5bO$|*xO(P*PO~O!S+UOR&la!e&la~Oo0wO!S+UOR&la!e&la~Oo0wOR&la!e&la~O(P*POR$yi!e$yi~Oy7fO~P2gOo7gOy7fO(P*PO~O(P*PORni!eni~O(P*POR&va!e&va~O(P*OOR&va!e&va~OS,^OT,^OZ,^O_,^Od,^Oo,^Os,^Ou,^Oy,^O!S,^O!e,^O!l,^O!q,[O!t,^O!y,^O#O,^O#P,^O#Q,^O#R,^O'Q,^O'Z%eO'^UO'g,ZO'r,[O'x,ZO'y,[O'z,[O'{,[O'|,]O'},]O(O,^O~O(P7iO(Q7iO(R7iO~P'!qO!P7kO~P#KkO!P&ei!e&ei~P2gO'r(pOv!hi!e!hi~O!S7mO~O(P*POP$Xi!e$Xi~Ov$^q!e$^q~P2gOw!POy7oO~Ow!POy7oO#Q7rO$|*xO~Oy7tO~Oy7uO~Oy7vO(P*PO~Ow!POy7oO$|*xO(P*PO~Oo7{Oy7zO(P*PO~O!e2sO!P(ti~O(P*PO!P%}X!e%}X~O!P%ai!e%ai~P#4kO^8OO~O!e8TO['bXv$`i}'bX!l'bX!q'bX!t'bX'g'bX'q'bX(Q'bX~P@[OQ#[iS#[iT#[i[#[i^#[i_#[i`#[ia#[id#[is#[it#[iu#[iv$`i}#[i!i#[i!j#[i!l#[i!q#[i!t'bX#V#[i'Q#[i'T#[i'^#[i'g#[i'q'bX(Q'bX~P@[O#R#^a~P2gO#R8WO~O!Z3aO#R8XO'r(pO~Ov8[O~Oy8^O~P2gOy8`O~Oy6gO!P8aO~Ov8`Oy6gO~O!e3wOv(di~O(P*POv%Qi!e%Qi~O!e3|O!P(fi~O!e3|O(P*PO!P(fi~O(P*PO!P&pa!e&pa~O(P8hOw(bX!e(bXy(bX~O(P*PO!S$wiy$wiw$wi$|$wiR$wio$wi!e$wi~O!e4ZOv(hi~Ov%Xi!e%Xi~P2gOo8kOv%Xi!e%Xi~O!P%ai!S!aX!e%ai'r!aX~P!KgO(P*PO!P%`i!e%`i~O!e4hO!P(ki~O#V8nO~P&L]O!P&sa!S'eX!e&sa'r'eX~O(P*POR$zq!e$zq~Oy8pO~P2gOy7zO~P2gO(P8rO(Q8rO(R8rO~O(P8rO(Q8rO(R8rO~P'!qO'r(pOv!hq!e!hq~O(P*POP$Xq!e$Xq~Ow!POy8uO$|*xO(P*PO~Ow!POy8uO~Oy8xO~P2gOy8zO~P2gOo8|Oy8zO(P*PO~OQ#[qS#[qT#[q[#[q^#[q_#[q`#[qa#[qd#[qs#[qt#[qu#[qv$`q}#[q!i#[q!j#[q!l#[q!q#[q#V#[q'Q#[q'T#[q'^#[q'g#[q~O!e9PO['bXv$`q}'bX!l'bX!q'bX!t'bX'g'bX'q'bX(Q'bX~P@[Oo'bX!t'bX#O'bX#P'bX#p'bX'q'bX'r'bX'x'bX'y'bX'z'bX'{'bX'|'bX'}'bX(O'bX(P'bX(Q'bX(R'bX(T'bX~P'2fO#R9UO~O!Z3aO#R9UO'r(pO~Oy9WO~O(P*POv%Qq!e%Qq~O!e3|O!P(fq~O(P*PO!P&pi!e&pi~O(P8hOw(ba!e(bay(ba~Ov%Xq!e%Xq~P2gO!P&si!S'eX!e&si'r'eX~O(P*PO!P%`q!e%`q~Oy9]O~P2gO(P9^O(Q9^O(R9^O~O'r(pOv!hy!e!hy~Ow!POy9_O~Ow!POy9_O$|*xO(P*PO~Oy9aO~P2gOQ#[yS#[yT#[y[#[y^#[y_#[y`#[ya#[yd#[ys#[yt#[yu#[yv$`y}#[y!i#[y!j#[y!l#[y!q#[y#V#[y'Q#[y'T#[y'^#[y'g#[y~O!e9dO['bXv$`y}'bX!l'bX!q'bX!t'bX'g'bX'q'bX(Q'bX~P@[Oo'bX!t'bX#O'bX#P'bX#p'bX'q'bX'r'bX'x'bX'y'bX'z'bX'{'bX'|'bX'}'bX(O'bX(P'bX(Q'bX(R'bX(T'bX~P'9eO!e9eO['bX}'bX!l'bX!q'bX!t'bX'g'bX'q'bX(Q'bX~P@[OQ#[iS#[iT#[i[#[i^#[i_#[i`#[ia#[id#[is#[it#[iu#[i}#[i!i#[i!j#[i!l#[i!q#[i!t'bX#V#[i'Q#[i'T#[i'^#[i'g#[i'q'bX(Q'bX~P@[O#R9hO~O(P*PO!P&pq!e&pq~Ov%Xy!e%Xy~P2gOw!POy9iO~Oy9jO~P2gOQ#[!RS#[!RT#[!R[#[!R^#[!R_#[!R`#[!Ra#[!Rd#[!Rs#[!Rt#[!Ru#[!Rv$`!R}#[!R!i#[!R!j#[!R!l#[!R!q#[!R#V#[!R'Q#[!R'T#[!R'^#[!R'g#[!R~O!e9kO['bX}'bX!l'bX!q'bX!t'bX'g'bX'q'bX(Q'bX~P@[OQ#[qS#[qT#[q[#[q^#[q_#[q`#[qa#[qd#[qs#[qt#[qu#[q}#[q!i#[q!j#[q!l#[q!q#[q!t'bX#V#[q'Q#[q'T#[q'^#[q'g#[q'q'bX(Q'bX~P@[O!e9nO['bX}'bX!l'bX!q'bX!t'bX'g'bX'q'bX(Q'bX~P@[OQ#[yS#[yT#[y[#[y^#[y_#[y`#[ya#[yd#[ys#[yt#[yu#[y}#[y!i#[y!j#[y!l#[y!q#[y!t'bX#V#[y'Q#[y'T#[y'^#[y'g#[y'q'bX(Q'bX~P@[OwbX~P$|OwjX}jX!tbX'qbX~P!6mOZ'SXd'XXo'SXw'kX!t'SX'q'SX'r'SX~O['SXd'SXw'SX}'SX!l'SX!q'SX#O'SX#P'SX#p'SX'g'SX'x'SX'y'SX'z'SX'{'SX'|'SX'}'SX(O'SX(P'SX(Q'SX(R'SX(T'SX~P'GTOP'SX}'kX!S'SX!e'SX!O'SXy'SX!P'SXX'SX!Z'SX#R'SXv'SX~P'GTO^9qO_9qO`9qOa9qO'T9oO~O!j:OO~P!.cOPoOQ!QOSVOTVOZeOd9tOsVOtVOuVO!U#bO!W#cO!X:zO!Z!YO#Y!_O#r9zO#{9{O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO[#sXo#sXw#sX}#sX!l#sX!q#sX!t#sX#O#sX#P#sX#p#sX'g#sX'q#sX'r#sX'x#sX'y#sX'z#sX'{#sX'|#sX'}#sX(O#sX(P#sX(Q#sX(R#sX(T#sX~P'IxO#Q$uO~P!.cO}'kXP'SX!S'SX!e'SX!O'SXy'SX!P'SXX'SX!Z'SX#R'SXv'SX~P'GTOo#qX#O#qX#P#qX#p#qX'r#qX'x#qX'y#qX'z#qX'{#qX'|#qX'}#qX(O#qX(P#qX(R#qX(T#qX~P!.cOo#zX#O#zX#P#zX#p#zX'r#zX'x#zX'y#zX'z#zX'{#zX'|#zX'}#zX(O#zX(P#zX(R#zX(T#zX~P!.cOPoOQ!QOSVOTVOZeOd9tOsVOtVOuVO!U#bO!W#cO!X:zO!Z!YO#Y!_O#r9zO#{9{O$O!]O$b!`O$d!bO$f!cO'ZkO'^UO[#sao#saw#sa}#sa!l#sa!q#sa!t#sa#O#sa#P#sa#p#sa'g#sa'q#sa'r#sa'x#sa'y#sa'z#sa'{#sa'|#sa'}#sa(O#sa(P#sa(Q#sa(R#sa(T#sa~P'IxOo:YO#O:YO#P:VOw#sa~P!B}Ow$Ua~P#9vOQ'XXd'XX}iX~OQlXdlX}jX~O^:sO_:sO`:sOa:sO'T:_O~OQ'XXd'XX}hX~Ow#qa~P#9vOw#za~P#9vO!S&_Oo#za#O#za#P#za#p#za'r#za'x#za'y#za'z#za'{#za'|#za'}#za(O#za(P#za(R#za(T#za~P!.cO#Q*eO~P!.cOw#ci~P#9vO[#}O}#zO'x#hO(O#|O(Q#hO(R#fO(T#hOo#eiw#ei!l#ei!q#ei!t#ei#O#ei#P#ei#p#ei'q#ei'r#ei'y#ei'z#ei'{#ei'|#ei'}#ei~O'g#ei(P#ei~P((}O'g#gO(P#gO~P((}O[#}O}#zO'g#gO'x#hO'y#iO'z#iO(O#|O(P#gO(Q#hO(R#fO(T#hOo#eiw#ei!l#ei!t#ei#O#ei#P#ei#p#ei'q#ei'r#ei'{#ei'|#ei'}#ei~O!q#ei~P(*yO!q#jO~P(*yO[#}O}#zO!q#jO'g#gO'x#hO'y#iO'z#iO'{#kO(O#|O(P#gO(Q#hO(R#fO(T#hOo#eiw#ei!l#ei!t#ei#O#ei#P#ei#p#ei'q#ei'|#ei'}#ei~O'r#ei~P(,rO'r#lO~P(,rO[#}O}#zO!q#jO#P:VO'g#gO'r#lO'x#hO'y#iO'z#iO'{#kO(O#|O(P#gO(Q#hO(R#fO(T#hOo#eiw#ei!l#ei!t#ei#O#ei#p#ei'q#ei'|#ei~O'}#ei~P(.kO'}#mO~P(.kOo:YO#O:YO#P:VOw#ni~P$1xOo:YO#O:YO#P:VOw#si~P$3yOQ'XXd'XX}'kX~Ow#zi~P#9vOw$Ui~P#9vOd9}O~Ow#ca~P#9vOd:uO~OU'x_'v'P'O'^s!y'^'T'Z~",goto:"$Ku(vPPPPPPP(wPP)OPP)^PPPP)d-hP0f5aP7R7R8v7R>wD_DpPDvHQPPPPPPK`P! P! _PPPPP!!VP!$oP!$oPP!&oP!(rP!(w!)n!*f!*f!*f!(w!+]P!(w!.Q!.TPP!.ZP!(w!(w!(w!(wP!(w!(wP!(w!(w!.y!/dP!/dJ}J}J}PPPP!/d!.y!/sPP!$oP!0^!0a!0g!1h!1t!3t!3t!5r!7t!1t!1t!9p!;_!=O!>k!@U!Am!CS!De!1t!1tP!1tP!1t!1t!Et!1tP!Ge!1t!1tP!Ie!1tP!1t!7t!7t!1t!7t!1t!Kl!Mt!Mw!7t!1t!Mz!M}!M}!M}!NR!$oP!$oP!$oP! P! PP!N]! P! PP!Ni# }! PP! PP#!^##c##k#$Z#$_#$e#$e#$mP#&s#&s#&y#'o#'{! PP! PP#(]#(l! PP! PPP#(x#)W#)d#)|#)^! P! PP! P! P! PP#*S#*S#*Y#*`#*S#*S! P! PP#*m#*v#+Q#+Q#,x#.l#.x#.x#.{#.{5a5a5a5a5a5a5a5aP5a#/O#/U#/p#1{#2R#2b#6^#6d#6j#6|#7W#8w#9R#9b#9h#9n#9x#:S#:Y#:g#:m#:s#:}#;]#;g#=u#>R#>`#>f#>n#>u#?PPPPPPPP#?V#BaP#F^#Jx#Ls#Nr$&^P$&aPPP$)_$)h$)z$/U$1d$1m$3fP!(w$4`$7r$:i$>T$>^$>c$>fPPP$>i$A`$A|P$BaPPPPPPPPPP$BvP$EU$EX$E[$Eb$Ee$Eh$Ek$En$Et$HO$HR$HU$HX$H[$H_$Hb$He$Hh$Hk$Hn$Jt$Jw$Jz#*S$KW$K^$Ka$Kd$Kh$Kl$Ko$KrQ!tPT'V!s'Wi!SOlm!P!T$T$W$y%b)U*f/gQ'i#QR,n'l(OSOY[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'l'n'o'}(W(Y(b(d(e(f(j(o(p(r(|)S)U)i*Z*f*i*k*l+Z+n+z,q,s,z-R-T-g-m-t.}/^/b/d/g0e0g0m0}1P1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9s9t9u9v9w9x9z9{9|9}:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f:gS(z$v-oQ*p&eQ*t&hQ-k(yQ-y)ZW0Z+Q0Y4Z7UR4Y0[&w!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'l'}(W(Y(b(f(j(o(p(r(|)S)U)i*Z*f*i*k*l+Z+n,s,z-T-g-m-t.}/^/b/d/g0e0g0m0}1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f#r]Ofgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i+n,s,z-m.}0}1h1|3_3a3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9hb#[b#Q$y'l(b)S)U*Z-t!h$bo!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7m$b%k!Q!n$O$u%o%p%q%y%{&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8g!W:y!Y!_!`*i*l/^3h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fR:|%n$_%u!Q!n$O$u%o%p%q&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8g$e%l!Q!n$O$u%n%o%p%q%y%{&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8g'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'}(W(Y(d(e(f(j(o(p(r(|)i)p)q*f*i*k*l+Z+n,s,z-R-T-g-m.i.}/^/b/d/g0e0g0m0}1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9s9t9u9v9w9x9z9{9|9}:O:P:Q:R:S:T:U:V:W:X:Y:Z:`:a:e:f:g:t:u:x$^%l!Q!n$O$u%n%o%p%q%y%{&P&p&r(q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8gQ&j!hQ&k!iQ&l!jQ&m!kQ&s!oQ)[%QQ)]%RQ)^%SQ)_%TQ)b%WQ+`&oS,R']1ZQ.W)`S/r*u4TR4n0s+yTOY[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'l'n'o'}(W(Y(b(d(e(f(j(o(p(q(r(|)S)U)i)p)q)s)x)y*O*P*R*V*Z*[*^*e*f*i*k*l*n*w*x+U+V+Z+h+n+o+z+},q,s,z-R-T-g-i-m-t-v.U.`.i.p.t.x.y.}/Z/[/^/b/d/g/{/}0`0e0g0m0r0w0}1O1P1Y1Z1h1r1y1|2a2h2j2m2s2v3V3_3a3f3h3k3u3{3|4R4U4W4_4c4e4h4t4v4|5[5`5d5g5t5v6R6Y6]6a6p6v6x7S7^7c7g7m7r7{8W8X8g8k8|9U9h9s9t9u9v9w9x9z9{9|9}:O:P:Q:R:S:T:U:V:W:X:Y:Z:`:a:e:f:g:t:u:xQ'[!xQ'h#PQ)l%gU)r%m*T*WR.f)kQ,T']R5P1Z#t%s!Q!n$O$u%p%q&P&p&r(q)x)y*O*R*V*[*^*e*n*w+V+h+o+}-i-v.U.`.t.x.y/Z/[/{/}0`0r0w1O1Y1y2a2h2j2m2v3V3u3{3|4U4e4t5`5d5v6R6Y6p6v6x7c7r8gQ)x%oQ+_&oQ,U']n,^'b'c'd,c,f,h,l/m/n1_3n3q5T5U7kS.q)s2sQ/O*PQ/Q*SQ/q*uS0Q*x4RQ0a+U[0o+Z.j0g4h5y7^Q2v.pS4d0e2rQ4m0sQ5Q1ZQ6T3RQ6z4PQ7O4TQ7X4_R9Y8h&jVOfgilmop!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']'}(W(Y(b(f(j(o(p(r(|)i*f*i*k*l+Z+n,s,z-T-g-m.}/^/b/d/g0e0g0m0}1Z1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fU&g!g%P%[o,^'b'c'd,c,f,h,l/m/n1_3n3q5T5U7k$nsOfgilm!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y'}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9z9{:O:P:Q:R:S:T:U:V:W:X:Y:eS$tp9xS&O!W#bS&Q!X#cQ&`!bQ*_&RQ*a&VS*d&[:fQ*h&^Q,T']Q-j(wQ/i*jQ0p+[S2f.X0qQ3]/_Q3^/`Q3g/hQ3i/kQ5P1ZU5b2R2g4lU7o5c5e5rQ8]6dS8u7p7qS9_8v8wR9i9`i{Ob!O!P!T$y%_%b)S)U)i-thxOb!O!P!T$y%_%b)S)U)i-tW/v*v/t3w6qQ/}*wW0[+Q0Y4Z7UQ3{/{Q6x3|R8g6v!h$do!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7mQ&d!dQ&f!fQ&n!mW&x!q%X&|1PQ'S!rQ)X$}Q)Y%OQ)a%VU)d%Y'T'UQ*s&hS+s&z'PS-Y(k1sQ-u)WQ-x)ZS.a)e)fS0x+c/sQ1S+zQ1W+{S1v-_-`Q2k.bQ3s/pQ5]1xR5h2V${sOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f$zsOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fR3]/_V&T!Y!`*i!i$lo!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7m!k$^o!c!p$e$g$h$q$r&U&b&u(b(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7m!i$co!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7m&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'}(W(Y(f(j(o(p(r(|)i*f*i*k*l+Z+n,s,z-T-g-m.}/^/b/d/g0e0g0m0}1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fR(l$fQ-[(kR5Y1sQ(S#|S({$v-oS-Z(k1sQ-l(yW/u*v/t3w6qS1w-_-`Q3v/vR5^1xQ'e#Or,e'b'c'd'j'p)u,c,f,h,l/m/n1_3n3q5U6fR,o'mk,a'b'c'd,c,f,h,l/m/n1_3n3q5UQ'f#Or,e'b'c'd'j'p)u,c,f,h,l/m/n1_3n3q5U6fR,p'mR*g&]X/c*f/d/g3f!}aOb!O!P!T#z$v$y%_%b'}(y)S)U)i)s*f*v*w+Q+Z,s-o-t.j/b/d/g/t/{0Y0g1h2s3f3w3|4Z4h5y6a6q6v7U7^Q3`/aQ6_3bQ8Y6`R9V8Z${rOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f#nfOfglmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#z#}$T$W%_%b&Y&['}(W(Y(|)i+n,s,z-m.}0}1h1|3_3a3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h!T9u!Y!_!`*i*l/^3h9u9v9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:e:f#rfOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i+n,s,z-m.}0}1h1|3_3a3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h!X9u!Y!_!`*i*l/^3h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f$srOfglmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:e:f#U#oh#d$P$Q$V$s%^&W&X'q't'u'v'w'x'y'z'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9b}:P&S&]/k3[6d:[:]:c:d:h:j:k:l:m:n:o:p:q:r:v:w:{#W#ph#d$P$Q$V$s%^&W&X'q'r't'u'v'w'x'y'z'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9b!P:Q&S&]/k3[6d:[:]:c:d:h:i:j:k:l:m:n:o:p:q:r:v:w:{#S#qh#d$P$Q$V$s%^&W&X'q'u'v'w'x'y'z'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9b{:R&S&]/k3[6d:[:]:c:d:h:k:l:m:n:o:p:q:r:v:w:{#Q#rh#d$P$Q$V$s%^&W&X'q'v'w'x'y'z'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9by:S&S&]/k3[6d:[:]:c:d:h:l:m:n:o:p:q:r:v:w:{#O#sh#d$P$Q$V$s%^&W&X'q'w'x'y'z'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9bw:T&S&]/k3[6d:[:]:c:d:h:m:n:o:p:q:r:v:w:{!|#th#d$P$Q$V$s%^&W&X'q'x'y'z'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9bu:U&S&]/k3[6d:[:]:c:d:h:n:o:p:q:r:v:w:{!x#vh#d$P$Q$V$s%^&W&X'q'z'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9bq:W&S&]/k3[6d:[:]:c:d:h:p:q:r:v:w:{!v#wh#d$P$Q$V$s%^&W&X'q'{'|(O(U([(`*b*c,r,w,y-n0z1i1l1}3P4w5V5a6^6e7R7e7h7s7y8j8q8{9[9bo:X&S&]/k3[6d:[:]:c:d:h:q:r:v:w:{$]#{h#`#d$P$Q$V$s%^&S&W&X&]'q'r's't'u'v'w'x'y'z'{'|(O(U([(`*b*c,r,w,y-n/k0z1i1l1}3P3[4w5V5a6^6d6e7R7e7h7s7y8j8q8{9[9b:[:]:c:d:h:i:j:k:l:m:n:o:p:q:r:v:w:{${jOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f$v!aOfgilmp!O!P!T!Y!Z!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fQ&Y![Q&Z!]R:e9{#rpOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i+n,s,z-m.}0}1h1|3_3a3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9hQ&[!^!W9x!Y!_!`*i*l/^3h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fR:f:zR$moR-f(rR$wqT(}$v-oQ/f*fS3d/d/gR6c3fQ3m/mQ3p/nQ6i3nR6l3qQ$zwQ)V${Q*q&fQ+f&qQ+i&sQ-w)YW.Z)b+j+k+lS/X*]+gW2b.W.[.].^U3W/Y/]0yU5o2c2d2eS6W3X3ZS7w5p5qS8Q6V6XQ8y7xS8}8R8SR9c9O^|O!O!P!T%_%b)iX)R$y)S)U-tQ&r!nQ*^&PQ*|&jQ+P&kQ+T&lQ+W&mQ+]&nQ+l&sQ-})[Q.Q)]Q.T)^Q.V)_Q.Y)aQ.^)bQ2S-uQ2e.WR4U0VU+a&o*u4TR4o0sQ+Y&mQ+k&sS.])b+l^0v+_+`/q/r4m4n7OS2d.W.^S4Q0R0SR5q2eS0R*x4RQ0a+UR7X4_U+d&o*u4TR4p0sQ*z&jQ+O&kQ+S&lQ+g&qQ+j&sS-{)[*|S.P)]+PS.S)^+TU.[)b+k+lQ/Y*]Q0X*{Q0q+[Q2X-|Q2Y-}Q2].QQ2_.TU2c.W.].^Q2g.XS3Z/]0yS5c2R4lQ5j2ZS5p2d2eQ6X3XS7q5e5rQ7x5qQ8R6VQ8v7pQ9O8SR9`8wQ0T*xR6|4RQ*y&jQ*}&kU-z)[*z*|U.O)]+O+PS2W-{-}S2[.P.QQ4X0ZQ5i2YQ5k2]R7T4YQ/w*vQ3t/tQ6r3wR8d6qQ*{&jS-|)[*|Q2Z-}Q4X0ZR7T4YQ+R&lU.R)^+S+TS2^.S.TR5l2_Q0]+QQ4V0YQ7V4ZR8l7UQ+[&nS.X)a+]S2R-u.YR5e2SQ0i+ZQ4f0gQ7`4hR8m7^Q.m)sQ0i+ZQ2p.jQ4f0gQ5|2sQ7`4hQ7}5yR8m7^Q0i+ZR4f0gX'O!q%X&|1PX&{!q%X&|1PW'O!q%X&|1PS+u&z'PR1U+z_|O!O!P!T%_%b)iQ%a!PS)h%_%bR.d)i$^%u!Q!n$O$u%o%p%q&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8gQ*U%yR*X%{$c%n!Q!n$O$u%o%p%q%y%{&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8gW)t%m%x*T*WQ.e)jR2{.vR.m)sR5|2sQ'W!sR,O'WQ!TOQ$TlQ$WmQ%b!P[%|!T$T$W%b)U/gQ)U$yR/g*f$b%i!Q!n$O$u%o%p%q%y%{&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8g[)n%i)p.i:`:t:xQ)p%jQ.i)qQ:`%nQ:t:aR:x:uQ!vUR'Y!vS!OO!TU%]!O%_)iQ%_!PR)i%b#rYOfgilmp!O!P!T!Z![#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i+n,s,z-m.}0}1h1|3_3a3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9hh!yY!|#U$`'a'n(d,q-R9s9|:gQ!|[b#Ub#Q$y'l(b)S)U*Z-t!h$`o!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7mQ'a!}Q'n#ZQ(d$aQ,q'oQ-R(e!W9s!Y!_!`*i*l/^3h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fQ9|9tR:g9}Q-U(gR1p-UQ1t-[R5Z1tQ,c'bQ,f'cQ,h'dW1`,c,f,h5UR5U1_Q/d*fS3c/d3fR3f/gfbO!O!P!T$y%_%b)S)U)i-tp#Wb'}(y.j/b/t/{0Y0g1h5y6a6q6v7U7^Q'}#zS(y$v-oQ.j)sW/b*f/d/g3fQ/t*vQ/{*wQ0Y+QQ0g+ZQ1h,sQ5y2sQ6q3wQ6v3|Q7U4ZR7^4hQ,t(OQ1g,rT1j,t1gS(X$Q([Q(^$VU,x(X(^,}R,}(`Q(s$mR-h(sQ-p)OR2P-pQ3n/mQ3q/nT6j3n3qQ)S$yS-r)S-tR-t)UQ4`0aR7Y4``0t+^+_+`+a+d/q/r7OR4q0tQ8i6zR9Z8iQ4S0TR6}4SQ3x/wQ6n3tT6s3x6nQ3}/|Q6t3zU6y3}6t8eR8e6uQ4[0]Q7Q4VT7W4[7QhzOb!O!P!T$y%_%b)S)U)i-tQ$|xW%Zz$|%f)v$b%f!Q!n$O$u%o%p%q%y%{&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8gR)v%nS4i0i0nS7]4f4gT7b4i7]W&z!q%X&|1PS+r&z+zR+z'PQ1Q+wR4z1QU1[,S,T,UR5R1[S3S/Q7OR6U3SQ2t.mQ5x2pT5}2t5xQ.z)zR3O.z^_O!O!P!T%_%b)iY#Xb$y)S)U-t$l#_fgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['}(W(Y(|*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f!h$io!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7mS'j#Q'lQ-P(bR/V*Z&v!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'l'}(W(Y(b(f(j(o(p(r(|)S)U)i*Z*f*i*k*l+Z+n,s,z-T-g-m-t.}/^/b/d/g0e0g0m0}1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f[!{Y[#U#Z9s9tW&{!q%X&|1P['`!|!}'n'o9|9}S(c$`$aS+t&z'PU,X'a,q:gS-Q(d(eQ1T+zR1n-RS%t!Q&oQ&q!nQ(V$OQ(w$uS)w%o.pQ)z%pQ)}%qS*]&P&rQ+e&pQ,S']Q-d(qQ.l)sU.w)x)y2vS/O*O*PQ/P*RQ/T*VQ/W*[Q/]*^Q/`*eQ/l*nQ/|*wS0S*x4RQ0a+UQ0c+VQ0y+hQ0{+oQ1X+}Q1{-iQ2T-vQ2`.UQ2i.`Q2z.tQ2|.xQ2}.yQ3X/ZQ3Y/[S3z/{/}Q4^0`Q4l0rQ4s0wQ4x1OQ4}1YQ5O1ZQ5_1yQ5n2aQ5r2hQ5u2jQ5w2mQ5{2sQ6V3VQ6o3uQ6u3{Q6w3|Q7P4UQ7X4_Q7[4eQ7d4tQ7n5`Q7p5dQ7|5vQ8P6RQ8S6YQ8c6pS8f6v6xQ8o7cQ8w7rR9X8g$^%m!Q!n$O$u%o%p%q&P&o&p&r'](q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8gQ)j%nQ*T%yR*W%{$y%h!Q!n$O$u%i%j%n%o%p%q%y%{&P&o&p&r'](q)p)q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.i.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8g:`:a:t:u:x'pWOY[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'l'n'o'}(W(Y(b(d(e(f(j(o(p(r(|)S)U)i*Z*f*i*k*l+Z+n,q,s,z-R-T-g-m-t.}/^/b/d/g0e0g0m0}1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9s9t9u9v9w9x9z9{9|9}:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f:g$x%g!Q!n$O$u%i%j%n%o%p%q%y%{&P&o&p&r'](q)p)q)s)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.i.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8g:`:a:t:u:x_&y!q%X&z&|'P+z1PR,V']$zrOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f!j$]o!c!p$e$g$h$q$r&U&b&u(b(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7mQ,T']R5P1Z_}O!O!P!T%_%b)i^|O!O!P!T%_%b)iQ#YbX)R$y)S)U-tbhO!O!T3_6]8W8X9U9hS#`f9uQ#dgQ$PiQ$QlQ$VmQ$spW%^!P%_%b)iU&S!Y!`*iQ&W!ZQ&X![Q&]!_Q'q#eQ'r#oS's#p:QQ't#qQ'u#rQ'v#sQ'w#tQ'x#uQ'y#vQ'z#wQ'{#xQ'|#yQ(O#zQ(U#}Q([$TQ(`$WQ*b&YQ*c&[Q,r'}Q,w(WQ,y(YQ-n(|Q/k*lQ0z+nQ1i,sQ1l,zQ1}-mQ3P.}Q3[/^Q4w0}Q5V1hQ5a1|Q6^3aQ6d3hQ6e3kQ7R4WQ7e4vQ7h4|Q7s5gQ7y5tQ8j7SQ8q7gQ8{7{Q9[8kQ9b8|Q:[9wQ:]9xQ:c9zQ:d9{Q:h:OQ:i:PQ:j:RQ:k:SQ:l:TQ:m:UQ:n:VQ:o:WQ:p:XQ:q:YQ:r:ZQ:v:eQ:w:fR:{9v^tO!O!P!T%_%b)i$`#afgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['}(W(Y(|*i*l+n,s,z-m.}/^0}1h1|3a3h3k4W4v4|5g5t7S7g7{8k8|9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fQ6[3_Q8V6]Q9R8WQ9T8XQ9g9UR9m9hQ&V!YQ&^!`R/h*iQ$joQ&a!cQ&t!pU(g$e$g(jS(n$h0eQ(u$qQ(v$rQ*`&UQ*m&bQ+p&uQ-S(fS-b(o4cQ-c(pQ-e(rW/a*f/d/g3fQ/j*kW0f+Z0g4h7^Q1o-TQ1z-gQ3b/bQ4k0mQ5X1rQ7l5[Q8Z6aR8t7m!h$_o!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7mR-P(b'qXOY[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'l'n'o'}(W(Y(b(d(e(f(j(o(p(r(|)S)U)i*Z*f*i*k*l+Z+n,q,s,z-R-T-g-m-t.}/^/b/d/g0e0g0m0}1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9s9t9u9v9w9x9z9{9|9}:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f:g$zqOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f!i$fo!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7m&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'}(W(Y(f(j(o(p(r(|)i*f*i*k*l+Z+n,s,z-T-g-m.}/^/b/d/g0e0g0m0}1h1r1|3_3a3f3h3k4W4c4h4v4|5[5g5t6]6a7S7^7g7m7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f[!zY[$`$a9s9t['_!|!}(d(e9|9}W)o%i%j:`:aU,W'a-R:gW.h)p)q:t:uT2o.i:xQ(i$eQ(m$gR-W(jV(h$e$g(jR-^(kR-](k$znOfgilmp!O!P!T!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W%_%b&Y&['}(W(Y(|)i*i*l+n,s,z-m.}/^0}1h1|3_3a3h3k4W4v4|5g5t6]7S7g7{8W8X8k8|9U9h9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:f!i$ko!c!p$e$g$h$q$r&U&b&u(f(j(o(p(r*f*k+Z-T-g/b/d/g0e0g0m1r3f4c4h5[6a7^7mS'g#O'pj,a'b'c'd,c,f,h,l/m/n1_3n3q5UQ,m'jQ.u)uR8_6f`,b'b'c'd,c,f,h1_5UQ1e,lX3l/m/n3n3qj,a'b'c'd,c,f,h,l/m/n1_3n3q5UQ7j5TR8s7k^uO!O!P!T%_%b)i$`#afgilmp!Y!Z![!_!`#e#o#p#q#r#s#t#u#v#w#x#y#z#}$T$W&Y&['}(W(Y(|*i*l+n,s,z-m.}/^0}1h1|3a3h3k4W4v4|5g5t7S7g7{8k8|9u9v9w9x9z9{:O:P:Q:R:S:T:U:V:W:X:Y:Z:e:fQ6Z3_Q8U6]Q9Q8WQ9S8XQ9f9UR9l9hR(Q#zR(P#zQ$SlR(]$TR$ooR$noR)Q$vR)P$vQ)O$vR2O-ohwOb!O!P!T$y%_%b)S)U)i-t$l!lz!Q!n$O$u$|%f%n%o%p%q%y%{&P&o&p&r'](q)s)v)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8gR${xR0b+UR0W*xR0U*xR6{4PR/y*vR/x*vR0P*wR0O*wR0_+QR0^+Q%XyObxz!O!P!Q!T!n$O$u$y$|%_%b%f%n%o%p%q%y%{&P&o&p&r'](q)S)U)i)s)v)x)y*O*P*R*V*[*^*e*n*w*x+U+V+h+o+}-i-t-v.U.`.p.t.x.y/Z/[/{/}0`0r0w1O1Y1Z1y2a2h2j2m2s2v3V3u3{3|4R4U4_4e4t5`5d5v6R6Y6p6v6x7c7r8gR0k+ZR0j+ZQ'R!qQ)c%XQ+w&|R4y1PX'Q!q%X&|1PR+y&|R+x&|T/S*S4TT/R*S4TR.o)sR.n)sR){%p",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 TokenBinding Identifier TokenRepetition ArithOp BitOp LogicOp UpdateOp CompareOp -> => ArithOp BracketedTokens BracedTokens _ 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:359,nodeProps:[["isolate",-4,4,6,7,33,""],["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"],["openedBy",9,"[",38,"{",47,"("],["closedBy",12,"]",39,"}",45,")"]],propSources:[rustHighlighting],skippedNodes:[0,6,7,240],repeatNodeCount:32,tokenData:"$%h_R!XOX$nXY5gYZ6iZ]$n]^5g^p$npq5gqr7Xrs9cst:Rtu;Tuv>vvwAQwxCbxy!+Tyz!,Vz{!-X{|!/_|}!0g}!O!1i!O!P!3v!P!Q!8[!Q!R!Bw!R![!Dr![!]#+q!]!^#-{!^!_#.}!_!`#1b!`!a#3o!a!b#6S!b!c#7U!c!}#8W!}#O#:T#O#P#;V#P#Q#Cb#Q#R#Dd#R#S#8W#S#T$n#T#U#8W#U#V#El#V#f#8W#f#g#Ic#g#o#8W#o#p$ S#p#q$!U#q#r$$f#r${$n${$|#8W$|4w$n4w5b#8W5b5i$n5i6S#8W6S;'S$n;'S;=`4s<%lO$nU$u]'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$nU%uV'_Q'OSOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[S&aV'OSOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[S&yVOz'`z{&v{!P'`!P!Q*y!Q;'S'`;'S;=`*m<%lO'`S'cVOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[S'{UOz'`{!P'`!P!Q(_!Q;'S'`;'S;=`*m<%lO'`S(bUOz(t{!P(t!P!Q(_!Q;'S(t;'S;=`*a<%lO(tS(wVOz)^z{)z{!P)^!P!Q(_!Q;'S)^;'S;=`*g<%lO)^S)eV'PS'OSOz)^z{)z{!P)^!P!Q(_!Q;'S)^;'S;=`*g<%lO)^S)}UOz(tz{)z{!P(t!Q;'S(t;'S;=`*a<%lO(tS*dP;=`<%l(tS*jP;=`<%l)^S*pP;=`<%l'`S*vP;=`<%l&[S+OO'PSU+T]'_QOY+|YZ-xZr+|rs'`sz+|z{+O{!P+|!P!Q4y!Q#O+|#O#P'`#P;'S+|;'S;=`4m<%lO+|U,R]'_QOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$nU-P]'_QOY+|YZ-xZr+|rs'`sz+|z{.d{!P+|!P!Q/Z!Q#O+|#O#P'`#P;'S+|;'S;=`4m<%lO+|U-}V'_QOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[Q.iV'_QOY.dYZ/OZr.ds#O.d#P;'S.d;'S;=`/T<%lO.dQ/TO'_QQ/WP;=`<%l.dU/`]'_QOY0XYZ3uZr0Xrs(tsz0Xz{.d{!P0X!P!Q/Z!Q#O0X#O#P(t#P;'S0X;'S;=`4a<%lO0XU0^]'_QOY1VYZ2XZr1Vrs)^sz1Vz{2w{!P1V!P!Q/Z!Q#O1V#O#P)^#P;'S1V;'S;=`4g<%lO1VU1`]'_Q'PS'OSOY1VYZ2XZr1Vrs)^sz1Vz{2w{!P1V!P!Q/Z!Q#O1V#O#P)^#P;'S1V;'S;=`4g<%lO1VU2bV'_Q'PS'OSOz)^z{)z{!P)^!P!Q(_!Q;'S)^;'S;=`*g<%lO)^U2|]'_QOY0XYZ3uZr0Xrs(tsz0Xz{2w{!P0X!P!Q.d!Q#O0X#O#P(t#P;'S0X;'S;=`4a<%lO0XU3zV'_QOz)^z{)z{!P)^!P!Q(_!Q;'S)^;'S;=`*g<%lO)^U4dP;=`<%l0XU4jP;=`<%l1VU4pP;=`<%l+|U4vP;=`<%l$nU5QV'_Q'PSOY.dYZ/OZr.ds#O.d#P;'S.d;'S;=`/T<%lO.d_5p]'_Q&|X'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_6rV'_Q&|X'OSOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[_7b_ZX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`8a!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_8j]#PX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_9lV']Q'OS'^XOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[_:[]'QX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_;^i'_Q'vW'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!c$n!c!}<{!}#O$n#O#P&[#P#R$n#R#S<{#S#T$n#T#o<{#o${$n${$|<{$|4w$n4w5b<{5b5i$n5i6S<{6S;'S$n;'S;=`4s<%lO$n_=Uj'_Q_X'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![<{![!c$n!c!}<{!}#O$n#O#P&[#P#R$n#R#S<{#S#T$n#T#o<{#o${$n${$|<{$|4w$n4w5b<{5b5i$n5i6S<{6S;'S$n;'S;=`4s<%lO$n_?P_(TP'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_@X]#OX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_AZa!qX'_Q'OSOY$nYZ%nZr$nrs&[sv$nvwB`wz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_Bi]'}X'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_Cik'_Q'OSOYE^YZGfZrE^rsHvswE^wxFdxzE^z{Ih{!PE^!P!QKl!Q!cE^!c!}Lp!}#OE^#O#P!!l#P#RE^#R#SLp#S#TE^#T#oLp#o${E^${$|Lp$|4wE^4w5bLp5b5iE^5i6SLp6S;'SE^;'S;=`!*}<%lOE^_Ee_'_Q'OSOY$nYZ%nZr$nrs&[sw$nwxFdxz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_Fm]'_Q'OSsXOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_GmX'_Q'OSOw&[wxHYxz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[]HaV'OSsXOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[]H{X'OSOw&[wxHYxz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[_Im_'_QOY+|YZ-xZr+|rs'`sw+|wxJlxz+|z{+O{!P+|!P!Q4y!Q#O+|#O#P'`#P;'S+|;'S;=`4m<%lO+|_Js]'_QsXOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_Kq_'_QOY+|YZ-xZr+|rs'`sw+|wxJlxz+|z{.d{!P+|!P!Q/Z!Q#O+|#O#P'`#P;'S+|;'S;=`4m<%lO+|_Lyl'_Q'OS'ZXOY$nYZ%nZr$nrs&[sw$nwxFdxz$nz{+O{!P$n!P!Q,z!Q![Nq![!c$n!c!}Nq!}#O$n#O#P&[#P#R$n#R#SNq#S#T$n#T#oNq#o${$n${$|Nq$|4w$n4w5bNq5b5i$n5i6SNq6S;'S$n;'S;=`4s<%lO$n_Nzj'_Q'OS'ZXOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![Nq![!c$n!c!}Nq!}#O$n#O#P&[#P#R$n#R#SNq#S#T$n#T#oNq#o${$n${$|Nq$|4w$n4w5bNq5b5i$n5i6SNq6S;'S$n;'S;=`4s<%lO$n]!!qZ'OSOzHvz{!#d{!PHv!P!Q!$n!Q#iHv#i#j!%Z#j#lHv#l#m!'V#m;'SHv;'S;=`!*w<%lOHv]!#gXOw'`wx!$Sxz'`z{&v{!P'`!P!Q*y!Q;'S'`;'S;=`*m<%lO'`]!$XVsXOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[]!$qWOw'`wx!$Sxz'`{!P'`!P!Q(_!Q;'S'`;'S;=`*m<%lO'`]!%`^'OSOz&[z{&v{!P&[!P!Q'x!Q![!&[![!c&[!c!i!&[!i#T&[#T#Z!&[#Z#o&[#o#p!({#p;'S&[;'S;=`*s<%lO&[]!&a['OSOz&[z{&v{!P&[!P!Q'x!Q![!'V![!c&[!c!i!'V!i#T&[#T#Z!'V#Z;'S&[;'S;=`*s<%lO&[]!'[['OSOz&[z{&v{!P&[!P!Q'x!Q![!(Q![!c&[!c!i!(Q!i#T&[#T#Z!(Q#Z;'S&[;'S;=`*s<%lO&[]!(V['OSOz&[z{&v{!P&[!P!Q'x!Q![Hv![!c&[!c!iHv!i#T&[#T#ZHv#Z;'S&[;'S;=`*s<%lO&[]!)Q['OSOz&[z{&v{!P&[!P!Q'x!Q![!)v![!c&[!c!i!)v!i#T&[#T#Z!)v#Z;'S&[;'S;=`*s<%lO&[]!){^'OSOz&[z{&v{!P&[!P!Q'x!Q![!)v![!c&[!c!i!)v!i#T&[#T#Z!)v#Z#q&[#q#rHv#r;'S&[;'S;=`*s<%lO&[]!*zP;=`<%lHv_!+QP;=`<%lE^_!+^]}X'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!,`]!PX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!-`_(QX'_QOY+|YZ-xZr+|rs'`sz+|z{+O{!P+|!P!Q4y!Q!_+|!_!`!._!`#O+|#O#P'`#P;'S+|;'S;=`4m<%lO+|_!.f]#OX'_QOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!/h_(PX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!0p]!eX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!1r`'gX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`!a!2t!a#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!2}]#QX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!4P^(OX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!O$n!O!P!4{!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!5U`!lX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!O$n!O!P!6W!P!Q,z!Q!_$n!_!`!7Y!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!6a]!tX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$nV!7c]'qP'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!8c_'_Q'xXOY+|YZ-xZr+|rs'`sz+|z{!9b{!P+|!P!Q!:O!Q!_+|!_!`!._!`#O+|#O#P'`#P;'S+|;'S;=`4m<%lO+|_!9iV&}]'_QOY.dYZ/OZr.ds#O.d#P;'S.d;'S;=`/T<%lO.d_!:V]'_QUXOY!;OYZ3uZr!;Ors!>jsz!;Oz{!Aq{!P!;O!P!Q!:O!Q#O!;O#O#P!>j#P;'S!;O;'S;=`!Bk<%lO!;O_!;V]'_QUXOY!<OYZ2XZr!<Ors!=Ssz!<Oz{!@q{!P!<O!P!Q!:O!Q#O!<O#O#P!=S#P;'S!<O;'S;=`!Bq<%lO!<O_!<Z]'_QUX'PS'OSOY!<OYZ2XZr!<Ors!=Ssz!<Oz{!@q{!P!<O!P!Q!:O!Q#O!<O#O#P!=S#P;'S!<O;'S;=`!Bq<%lO!<O]!=]XUX'PS'OSOY!=SYZ)^Zz!=Sz{!=x{!P!=S!P!Q!?[!Q;'S!=S;'S;=`!@k<%lO!=S]!=}XUXOY!>jYZ(tZz!>jz{!=x{!P!>j!P!Q!?|!Q;'S!>j;'S;=`!@e<%lO!>j]!>oXUXOY!=SYZ)^Zz!=Sz{!=x{!P!=S!P!Q!?[!Q;'S!=S;'S;=`!@k<%lO!=S]!?aXUXOY!>jYZ(tZz!>jz{!?|{!P!>j!P!Q!?[!Q;'S!>j;'S;=`!@e<%lO!>jX!@RSUXOY!?|Z;'S!?|;'S;=`!@_<%lO!?|X!@bP;=`<%l!?|]!@hP;=`<%l!>j]!@nP;=`<%l!=S_!@x]'_QUXOY!;OYZ3uZr!;Ors!>jsz!;Oz{!@q{!P!;O!P!Q!Aq!Q#O!;O#O#P!>j#P;'S!;O;'S;=`!Bk<%lO!;OZ!AxX'_QUXOY!AqYZ/OZr!Aqrs!?|s#O!Aq#O#P!?|#P;'S!Aq;'S;=`!Be<%lO!AqZ!BhP;=`<%l!Aq_!BnP;=`<%l!;O_!BtP;=`<%l!<O_!CQjuX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![!Dr![#O$n#O#P&[#P#R$n#R#S!Dr#S#U$n#U#V#!}#V#]$n#]#^!FZ#^#c$n#c#d#%u#d#i$n#i#j!FZ#j#l$n#l#m#(g#m;'S$n;'S;=`4s<%lO$n_!D{duX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![!Dr![#O$n#O#P&[#P#R$n#R#S!Dr#S#]$n#]#^!FZ#^#i$n#i#j!FZ#j;'S$n;'S;=`4s<%lO$n_!Fbg'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!R$n!R!S!Gy!S!T$n!T!U!K_!U!W$n!W!X!Le!X!Y$n!Y!Z!J]!Z#O$n#O#P&[#P#g$n#g#h!Mk#h;'S$n;'S;=`4s<%lO$n_!HQa'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!S$n!S!T!IV!T!W$n!W!X!J]!X#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!I^_'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!Y$n!Y!Z!J]!Z#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!Jf]uX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!Kf_'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!S$n!S!T!J]!T#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!Ll_'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!U$n!U!V!J]!V#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_!Mr_'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P#]$n#]#^!Nq#^;'S$n;'S;=`4s<%lO$n_!Nx_'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P#n$n#n#o# w#o;'S$n;'S;=`4s<%lO$n_#!O_'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P#X$n#X#Y!J]#Y;'S$n;'S;=`4s<%lO$n_##Ua'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!R#$Z!R!S#$Z!S#O$n#O#P&[#P#R$n#R#S#$Z#S;'S$n;'S;=`4s<%lO$n_#$deuX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!R#$Z!R!S#$Z!S#O$n#O#P&[#P#R$n#R#S#$Z#S#]$n#]#^!FZ#^#i$n#i#j!FZ#j;'S$n;'S;=`4s<%lO$n_#%|`'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!Y#'O!Y#O$n#O#P&[#P#R$n#R#S#'O#S;'S$n;'S;=`4s<%lO$n_#'XduX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!Y#'O!Y#O$n#O#P&[#P#R$n#R#S#'O#S#]$n#]#^!FZ#^#i$n#i#j!FZ#j;'S$n;'S;=`4s<%lO$n_#(nd'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![#)|![!c$n!c!i#)|!i#O$n#O#P&[#P#R$n#R#S#)|#S#T$n#T#Z#)|#Z;'S$n;'S;=`4s<%lO$n_#*VhuX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![#)|![!c$n!c!i#)|!i#O$n#O#P&[#P#R$n#R#S#)|#S#T$n#T#Z#)|#Z#]$n#]#^!FZ#^#i$n#i#j!FZ#j;'S$n;'S;=`4s<%lO$n_#+z_!SX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![$n![!]#,y!]#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#-S]dX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#.U]yX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#/W`#PX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!^$n!^!_#0Y!_!`8a!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#0c_'yX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#1k`oX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`8a!`!a#2m!a#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#2v]#RX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#3x`#PX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`8a!`!a#4z!a#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#5T_'zX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#6]](RX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$nV#7_]'pP'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#8cj'_Q'OS!yW'TPOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![#8W![!c$n!c!}#8W!}#O$n#O#P&[#P#R$n#R#S#8W#S#T$n#T#o#8W#o${$n${$|#8W$|4w$n4w5b#8W5b5i$n5i6S#8W6S;'S$n;'S;=`4s<%lO$n_#:^][X'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$nU#;[Z'OSOz#;}z{#<k{!P#;}!P!Q#=V!Q#i#;}#i#j#=n#j#l#;}#l#m#?j#m;'S#;};'S;=`#C[<%lO#;}U#<UVrQ'OSOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[U#<pVrQOz'`z{&v{!P'`!P!Q*y!Q;'S'`;'S;=`*m<%lO'`U#=[UrQOz'`{!P'`!P!Q(_!Q;'S'`;'S;=`*m<%lO'`U#=s^'OSOz&[z{&v{!P&[!P!Q'x!Q![#>o![!c&[!c!i#>o!i#T&[#T#Z#>o#Z#o&[#o#p#A`#p;'S&[;'S;=`*s<%lO&[U#>t['OSOz&[z{&v{!P&[!P!Q'x!Q![#?j![!c&[!c!i#?j!i#T&[#T#Z#?j#Z;'S&[;'S;=`*s<%lO&[U#?o['OSOz&[z{&v{!P&[!P!Q'x!Q![#@e![!c&[!c!i#@e!i#T&[#T#Z#@e#Z;'S&[;'S;=`*s<%lO&[U#@j['OSOz&[z{&v{!P&[!P!Q'x!Q![#;}![!c&[!c!i#;}!i#T&[#T#Z#;}#Z;'S&[;'S;=`*s<%lO&[U#Ae['OSOz&[z{&v{!P&[!P!Q'x!Q![#BZ![!c&[!c!i#BZ!i#T&[#T#Z#BZ#Z;'S&[;'S;=`*s<%lO&[U#B`^'OSOz&[z{&v{!P&[!P!Q'x!Q![#BZ![!c&[!c!i#BZ!i#T&[#T#Z#BZ#Z#q&[#q#r#;}#r;'S&[;'S;=`*s<%lO&[U#C_P;=`<%l#;}_#Ck]XX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#Dm_'{X'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_#Ewl'_Q'OS!yW'TPOY$nYZ%nZr$nrs#Gosw$nwx#H]xz$nz{+O{!P$n!P!Q,z!Q![#8W![!c$n!c!}#8W!}#O$n#O#P&[#P#R$n#R#S#8W#S#T$n#T#o#8W#o${$n${$|#8W$|4w$n4w5b#8W5b5i$n5i6S#8W6S;'S$n;'S;=`4s<%lO$n]#GvV'OS'^XOz&[z{&v{!P&[!P!Q'x!Q;'S&[;'S;=`*s<%lO&[_#Hd_'_Q'OSOYE^YZGfZrE^rsHvswE^wxFdxzE^z{Ih{!PE^!P!QKl!Q#OE^#O#P!!l#P;'SE^;'S;=`!*}<%lOE^_#Ink'_Q'OS!yW'TPOY$nYZ%nZr$nrs&[st#Kctz$nz{+O{!P$n!P!Q,z!Q![#8W![!c$n!c!}#8W!}#O$n#O#P&[#P#R$n#R#S#8W#S#T$n#T#o#8W#o${$n${$|#8W$|4w$n4w5b#8W5b5i$n5i6S#8W6S;'S$n;'S;=`4s<%lO$nV#Kji'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!c$n!c!}#MX!}#O$n#O#P&[#P#R$n#R#S#MX#S#T$n#T#o#MX#o${$n${$|#MX$|4w$n4w5b#MX5b5i$n5i6S#MX6S;'S$n;'S;=`4s<%lO$nV#Mbj'_Q'OS'TPOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q![#MX![!c$n!c!}#MX!}#O$n#O#P&[#P#R$n#R#S#MX#S#T$n#T#o#MX#o${$n${$|#MX$|4w$n4w5b#MX5b5i$n5i6S#MX6S;'S$n;'S;=`4s<%lO$n_$ ]]wX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_$!_a'rX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q!_$n!_!`@O!`#O$n#O#P&[#P#p$n#p#q$#d#q;'S$n;'S;=`4s<%lO$n_$#m]'|X'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n_$$o]vX'_Q'OSOY$nYZ%nZr$nrs&[sz$nz{+O{!P$n!P!Q,z!Q#O$n#O#P&[#P;'S$n;'S;=`4s<%lO$n",tokenizers:[closureParam,tpDelim,literalTokens,0,1,2,3],topRules:{SourceFile:[0,8]},specialized:[{term:281,get:O=>spec_identifier[O]||-1}],tokenPrec:15596}),rustLanguage=LRLanguage.define({name:"rust",parser:parser$4.configure({props:[indentNodeProp.add({IfExpression:continuedIndent({except:/^\s*({|else\b)/}),"String BlockComment":()=>null,AttributeItem:O=>O.continue(),"Statement MatchArm":continuedIndent()}),foldNodeProp.add((O=>/(Block|edTokens|List)$/.test(O.name)?foldInside:"BlockComment"==O.name?O=>({from:O.from+2,to:O.to-2}):void 0))]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:\{|\})$/,closeBrackets:{stringPrefixes:["b","r","br"]}}});function rust(){return new LanguageSupport(rustLanguage)}const whitespace=36,LineComment=1,BlockComment=2,String$1=3,Number=4,Bool=5,Null=6,ParenL=7,ParenR=8,BraceL$1=9,BraceR=10,BracketL$1=11,BracketR=12,Semi=13,Dot=14,Operator=15,Punctuation=16,SpecialVar=17,Identifier$1=18,QuotedIdentifier=19,Keyword=20,Type=21,Bits=22,Bytes=23,Builtin=24;function isAlpha(O){return O>=65&&O<=90||O>=97&&O<=122||O>=48&&O<=57}function isHexDigit(O){return O>=48&&O<=57||O>=97&&O<=102||O>=65&&O<=70}function readLiteral(O,e,t){for(let i=!1;;){if(O.next<0)return;if(O.next==e&&!i)return void O.advance();i=t&&!i&&92==O.next,O.advance()}}function readDoubleDollarLiteral(O,e){O:for(;;){if(O.next<0)return;if(36==O.next){O.advance();for(let t=0;t<e.length;t++){if(O.next!=e.charCodeAt(t))continue O;O.advance()}if(36==O.next)return void O.advance()}else O.advance()}}function readPLSQLQuotedLiteral(O,e){let t="[{<(".indexOf(String.fromCharCode(e)),i=t<0?e:"]}>)".charCodeAt(t);for(;;){if(O.next<0)return;if(O.next==i&&39==O.peek(1))return void O.advance(2);O.advance()}}function readWord(O,e){for(;95==O.next||isAlpha(O.next);)null!=e&&(e+=String.fromCharCode(O.next)),O.advance();return e}function readWordOrQuoted(O){if(39==O.next||34==O.next||96==O.next){let e=O.next;O.advance(),readLiteral(O,e,!1)}else readWord(O)}function readBits(O,e){for(;48==O.next||49==O.next;)O.advance();e&&O.next==e&&O.advance()}function readNumber(O,e){for(;;){if(46==O.next){if(e)break;e=!0}else if(O.next<48||O.next>57)break;O.advance()}if(69==O.next||101==O.next)for(O.advance(),43!=O.next&&45!=O.next||O.advance();O.next>=48&&O.next<=57;)O.advance()}function eol(O){for(;!(O.next<0||10==O.next);)O.advance()}function inString(O,e){for(let t=0;t<e.length;t++)if(e.charCodeAt(t)==O)return!0;return!1}const Space=" \t\r\n";function keywords(O,e,t){let i=Object.create(null);i.true=i.false=5,i.null=i.unknown=6;for(let e of O.split(" "))e&&(i[e]=20);for(let O of e.split(" "))O&&(i[O]=21);for(let O of(t||"").split(" "))O&&(i[O]=24);return i}const SQLTypes="array binary bit boolean char character clob date decimal double float int integer interval large national nchar nclob numeric object precision real smallint time timestamp varchar varying ",SQLKeywords="absolute action add after all allocate alter and any are as asc assertion at authorization before begin between both breadth by call cascade cascaded case cast catalog check close collate collation column commit condition connect connection constraint constraints constructor continue corresponding count create cross cube current current_date current_default_transform_group current_transform_group_for_type current_path current_role current_time current_timestamp current_user cursor cycle data day deallocate declare default deferrable deferred delete depth deref desc describe descriptor deterministic diagnostics disconnect distinct do domain drop dynamic each else elseif end end-exec equals escape except exception exec execute exists exit external fetch first for foreign found from free full function general get global go goto grant group grouping handle having hold hour identity if immediate in indicator initially inner inout input insert intersect into is isolation join key language last lateral leading leave left level like limit local localtime localtimestamp locator loop map match method minute modifies module month names natural nesting new next no none not of old on only open option or order ordinality out outer output overlaps pad parameter partial path prepare preserve primary prior privileges procedure public read reads recursive redo ref references referencing relative release repeat resignal restrict result return returns revoke right role rollback rollup routine row rows savepoint schema scroll search second section select session session_user set sets signal similar size some space specific specifictype sql sqlexception sqlstate sqlwarning start state static system_user table temporary then timezone_hour timezone_minute to trailing transaction translation treat trigger under undo union unique unnest until update usage user using value values view when whenever where while with without work write year zone ",defaults={backslashEscapes:!1,hashComments:!1,spaceAfterDashes:!1,slashComments:!1,doubleQuotedStrings:!1,doubleDollarQuotedStrings:!1,unquotedBitLiterals:!1,treatBitsAsBytes:!1,charSetCasts:!1,plsqlQuotingMechanism:!1,operatorChars:"*+-%<>!=&|~^/",specialVar:"?",identifierQuotes:'"',caseInsensitiveIdentifiers:!1,words:keywords(SQLKeywords,SQLTypes)};function dialect(O,e,t,i){let n={};for(let e in defaults)n[e]=(O.hasOwnProperty(e)?O:defaults)[e];return e&&(n.words=keywords(e,t||"",i)),n}function tokensFor(O){return new ExternalTokenizer((e=>{var t;let{next:i}=e;if(e.advance(),inString(i,Space)){for(;inString(e.next,Space);)e.advance();e.acceptToken(36)}else if(36==i&&O.doubleDollarQuotedStrings){let O=readWord(e,"");36==e.next&&(e.advance(),readDoubleDollarLiteral(e,O),e.acceptToken(3))}else if(39==i||34==i&&O.doubleQuotedStrings)readLiteral(e,i,O.backslashEscapes),e.acceptToken(3);else if(35==i&&O.hashComments||47==i&&47==e.next&&O.slashComments)eol(e),e.acceptToken(1);else if(45!=i||45!=e.next||O.spaceAfterDashes&&32!=e.peek(1))if(47==i&&42==e.next){e.advance();for(let O=1;;){let t=e.next;if(e.next<0)break;if(e.advance(),42==t&&47==e.next){if(O--,e.advance(),!O)break}else 47==t&&42==e.next&&(O++,e.advance())}e.acceptToken(2)}else if(101!=i&&69!=i||39!=e.next)if(110!=i&&78!=i||39!=e.next||!O.charSetCasts)if(95==i&&O.charSetCasts)for(let t=0;;t++){if(39==e.next&&t>1){e.advance(),readLiteral(e,39,O.backslashEscapes),e.acceptToken(3);break}if(!isAlpha(e.next))break;e.advance()}else if(O.plsqlQuotingMechanism&&(113==i||81==i)&&39==e.next&&e.peek(1)>0&&!inString(e.peek(1),Space)){let O=e.peek(1);e.advance(2),readPLSQLQuotedLiteral(e,O),e.acceptToken(3)}else if(40==i)e.acceptToken(7);else if(41==i)e.acceptToken(8);else if(123==i)e.acceptToken(9);else if(125==i)e.acceptToken(10);else if(91==i)e.acceptToken(11);else if(93==i)e.acceptToken(12);else if(59==i)e.acceptToken(13);else if(O.unquotedBitLiterals&&48==i&&98==e.next)e.advance(),readBits(e),e.acceptToken(22);else if(98!=i&&66!=i||39!=e.next&&34!=e.next){if(48==i&&(120==e.next||88==e.next)||(120==i||88==i)&&39==e.next){let O=39==e.next;for(e.advance();isHexDigit(e.next);)e.advance();O&&39==e.next&&e.advance(),e.acceptToken(4)}else if(46==i&&e.next>=48&&e.next<=57)readNumber(e,!0),e.acceptToken(4);else if(46==i)e.acceptToken(14);else if(i>=48&&i<=57)readNumber(e,!1),e.acceptToken(4);else if(inString(i,O.operatorChars)){for(;inString(e.next,O.operatorChars);)e.advance();e.acceptToken(15)}else if(inString(i,O.specialVar))e.next==i&&e.advance(),readWordOrQuoted(e),e.acceptToken(17);else if(inString(i,O.identifierQuotes))readLiteral(e,i,!1),e.acceptToken(19);else if(58==i||44==i)e.acceptToken(16);else if(isAlpha(i)){let n=readWord(e,String.fromCharCode(i));e.acceptToken(46==e.next||46==e.peek(-n.length-1)?18:null!==(t=O.words[n.toLowerCase()])&&void 0!==t?t:18)}}else{const t=e.next;e.advance(),O.treatBitsAsBytes?(readLiteral(e,t,O.backslashEscapes),e.acceptToken(23)):(readBits(e,t),e.acceptToken(22))}else e.advance(),readLiteral(e,39,O.backslashEscapes),e.acceptToken(3);else e.advance(),readLiteral(e,39,!0),e.acceptToken(3);else eol(e),e.acceptToken(1)}))}const tokens=tokensFor(defaults),parser$1$1=LRParser.deserialize({version:14,states:"%vQ]QQOOO#wQRO'#DSO$OQQO'#CwO%eQQO'#CxO%lQQO'#CyO%sQQO'#CzOOQQ'#DS'#DSOOQQ'#C}'#C}O'UQRO'#C{OOQQ'#Cv'#CvOOQQ'#C|'#C|Q]QQOOQOQQOOO'`QQO'#DOO(xQRO,59cO)PQQO,59cO)UQQO'#DSOOQQ,59d,59dO)cQQO,59dOOQQ,59e,59eO)jQQO,59eOOQQ,59f,59fO)qQQO,59fOOQQ-E6{-E6{OOQQ,59b,59bOOQQ-E6z-E6zOOQQ,59j,59jOOQQ-E6|-E6|O+VQRO1G.}O+^QQO,59cOOQQ1G/O1G/OOOQQ1G/P1G/POOQQ1G/Q1G/QP+kQQO'#C}O+rQQO1G.}O)PQQO,59cO,PQQO'#Cw",stateData:",[~OtOSPOSQOS~ORUOSUOTUOUUOVROXSOZTO]XO^QO_UO`UOaPObPOcPOdUOeUOfUOgUOhUO~O^]ORvXSvXTvXUvXVvXXvXZvX]vX_vX`vXavXbvXcvXdvXevXfvXgvXhvX~OsvX~P!jOa_Ob_Oc_O~ORUOSUOTUOUUOVROXSOZTO^tO_UO`UOa`Ob`Oc`OdUOeUOfUOgUOhUO~OWaO~P$ZOYcO~P$ZO[eO~P$ZORUOSUOTUOUUOVROXSOZTO^QO_UO`UOaPObPOcPOdUOeUOfUOgUOhUO~O]hOsoX~P%zOajObjOcjO~O^]ORkaSkaTkaUkaVkaXkaZka]ka_ka`kaakabkackadkaekafkagkahka~Oska~P'kO^]O~OWvXYvX[vX~P!jOWnO~P$ZOYoO~P$ZO[pO~P$ZO^]ORkiSkiTkiUkiVkiXkiZki]ki_ki`kiakibkickidkiekifkigkihki~Oski~P)xOWkaYka[ka~P'kO]hO~P$ZOWkiYki[ki~P)xOasObsOcsO~O",goto:"#hwPPPPPPPPPPPPPPPPPPPPPPPPPPx||||!Y!^!d!xPPP#[TYOZeUORSTWZbdfqT[OZQZORiZSWOZQbRQdSQfTZgWbdfqQ^PWk^lmrQl_Qm`RrseVORSTWZbdfq",nodeNames:"⚠ LineComment BlockComment String Number Bool Null ( ) { } [ ] ; . Operator Punctuation SpecialVar Identifier QuotedIdentifier Keyword Type Bits Bytes Builtin Script Statement CompositeIdentifier Parens Braces Brackets Statement",maxTerm:38,nodeProps:[["isolate",-4,1,2,3,19,""]],skippedNodes:[0,1,2],repeatNodeCount:3,tokenData:"RORO",tokenizers:[0,tokens],topRules:{Script:[0,25]},tokenPrec:0});function tokenBefore(O){let e=O.cursor().moveTo(O.from,-1);for(;/Comment/.test(e.name);)e.moveTo(e.from,-1);return e.node}function idName(O,e){let t=O.sliceString(e.from,e.to),i=/^([`'"])(.*)\1$/.exec(t);return i?i[2]:t}function plainID(O){return O&&("Identifier"==O.name||"QuotedIdentifier"==O.name)}function pathFor(O,e){if("CompositeIdentifier"==e.name){let t=[];for(let i=e.firstChild;i;i=i.nextSibling)plainID(i)&&t.push(idName(O,i));return t}return[idName(O,e)]}function parentsFor(O,e){for(let t=[];;){if(!e||"."!=e.name)return t;let i=tokenBefore(e);if(!plainID(i))return t;t.unshift(idName(O,i)),e=tokenBefore(i)}}function sourceContext(O,e){let t=syntaxTree(O).resolveInner(e,-1),i=getAliases(O.doc,t);return"Identifier"==t.name||"QuotedIdentifier"==t.name||"Keyword"==t.name?{from:t.from,quoted:"QuotedIdentifier"==t.name?O.doc.sliceString(t.from,t.from+1):null,parents:parentsFor(O.doc,tokenBefore(t)),aliases:i}:"."==t.name?{from:e,quoted:null,parents:parentsFor(O.doc,t),aliases:i}:{from:e,quoted:null,parents:[],empty:!0,aliases:i}}const EndFrom=new Set("where group having order union intersect except all distinct limit offset fetch for".split(" "));function getAliases(O,e){let t;for(let O=e;!t;O=O.parent){if(!O)return null;"Statement"==O.name&&(t=O)}let i=null;for(let e=t.firstChild,n=!1,r=null;e;e=e.nextSibling){let t="Keyword"==e.name?O.sliceString(e.from,e.to).toLowerCase():null,a=null;if(n)if("as"==t&&r&&plainID(e.nextSibling))a=idName(O,e.nextSibling);else{if(t&&EndFrom.has(t))break;r&&plainID(e)&&(a=idName(O,e))}else n="from"==t;a&&(i||(i=Object.create(null)),i[a]=pathFor(O,r)),r=/Identifier$/.test(e.name)?e:null}return i}function maybeQuoteCompletions(O,e){return O?e.map((e=>Object.assign(Object.assign({},e),{label:e.label[0]==O?e.label:O+e.label+O,apply:void 0}))):e}const Span=/^\w*$/,QuotedSpan=/^[`'"]?\w*[`'"]?$/;function isSelfTag(O){return O.self&&"string"==typeof O.self.label}class CompletionLevel{constructor(O,e){this.idQuote=O,this.idCaseInsensitive=e,this.list=[],this.children=void 0}child(O){let e=this.children||(this.children=Object.create(null)),t=e[O];return t||(O&&!this.list.some((e=>e.label==O))&&this.list.push(nameCompletion(O,"type",this.idQuote,this.idCaseInsensitive)),e[O]=new CompletionLevel(this.idQuote,this.idCaseInsensitive))}maybeChild(O){return this.children?this.children[O]:null}addCompletion(O){let e=this.list.findIndex((e=>e.label==O.label));e>-1?this.list[e]=O:this.list.push(O)}addCompletions(O){for(let e of O)this.addCompletion("string"==typeof e?nameCompletion(e,"property",this.idQuote,this.idCaseInsensitive):e)}addNamespace(O){Array.isArray(O)?this.addCompletions(O):isSelfTag(O)?this.addNamespace(O.children):this.addNamespaceObject(O)}addNamespaceObject(O){for(let e of Object.keys(O)){let t=O[e],i=null,n=e.replace(/\\?\./g,(O=>"."==O?"\0":O)).split("\0"),r=this;isSelfTag(t)&&(i=t.self,t=t.children);for(let O=0;O<n.length;O++)i&&O==n.length-1&&r.addCompletion(i),r=r.child(n[O].replace(/\\\./g,"."));r.addNamespace(t)}}}function nameCompletion(O,e,t,i){return new RegExp("^[a-z_][a-z_\\d]*$",i?"i":"").test(O)?{label:O,type:e}:{label:O,type:e,apply:t+O+t}}function completeFromSchema$1(O,e,t,i,n,r){var a;let s=(null===(a=null==r?void 0:r.spec.identifierQuotes)||void 0===a?void 0:a[0])||'"',o=new CompletionLevel(s,!!(null==r?void 0:r.spec.caseInsensitiveIdentifiers)),l=n?o.child(n):null;return o.addNamespace(O),e&&(l||o).addCompletions(e),t&&o.addCompletions(t),l&&o.addCompletions(l.list),i&&o.addCompletions((l||o).child(i).list),O=>{let{parents:e,from:t,quoted:n,empty:r,aliases:a}=sourceContext(O.state,O.pos);if(r&&!O.explicit)return null;a&&1==e.length&&(e=a[e[0]]||e);let s=o;for(let O of e){for(;!s.children||!s.children[O];)if(s==o&&l)s=l;else{if(s!=l||!i)return null;s=s.child(i)}let e=s.maybeChild(O);if(!e)return null;s=e}let Q=n&&O.state.sliceDoc(O.pos,O.pos+1)==n,c=s.list;return s==o&&a&&(c=c.concat(Object.keys(a).map((O=>({label:O,type:"constant"}))))),{from:t,to:Q?O.pos+1:void 0,options:maybeQuoteCompletions(n,c),validFor:n?QuotedSpan:Span}}}function completionType(O){return 21==O?"type":20==O?"keyword":"variable"}function completeKeywords(O,e,t){let i=Object.keys(O).map((i=>t(e?i.toUpperCase():i,completionType(O[i]))));return ifNotIn(["QuotedIdentifier","SpecialVar","String","LineComment","BlockComment","."],completeFromList(i))}let parser$3=parser$1$1.configure({props:[indentNodeProp.add({Statement:continuedIndent()}),foldNodeProp.add({Statement:(O,e)=>({from:Math.min(O.from+100,e.doc.lineAt(O.from).to),to:O.to}),BlockComment:O=>({from:O.from+2,to:O.to-2})}),styleTags({Keyword:tags$1.keyword,Type:tags$1.typeName,Builtin:tags$1.standard(tags$1.name),Bits:tags$1.number,Bytes:tags$1.string,Bool:tags$1.bool,Null:tags$1.null,Number:tags$1.number,String:tags$1.string,Identifier:tags$1.name,QuotedIdentifier:tags$1.special(tags$1.string),SpecialVar:tags$1.special(tags$1.name),LineComment:tags$1.lineComment,BlockComment:tags$1.blockComment,Operator:tags$1.operator,"Semi Punctuation":tags$1.punctuation,"( )":tags$1.paren,"{ }":tags$1.brace,"[ ]":tags$1.squareBracket})]});class SQLDialect{constructor(O,e,t){this.dialect=O,this.language=e,this.spec=t}get extension(){return this.language.extension}static define(O){let e=dialect(O,O.keywords,O.types,O.builtin),t=LRLanguage.define({name:"sql",parser:parser$3.configure({tokenizers:[{from:tokens,to:tokensFor(e)}]}),languageData:{commentTokens:{line:"--",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}});return new SQLDialect(e,t,O)}}function defaultKeyword(O,e){return{label:O,type:e,boost:-1}}function keywordCompletionSource(O,e=!1,t){return completeKeywords(O.dialect.words,e,t||defaultKeyword)}function schemaCompletionSource(O){return O.schema?completeFromSchema$1(O.schema,O.tables,O.schemas,O.defaultTable,O.defaultSchema,O.dialect||StandardSQL):()=>null}function schemaCompletion(O){return O.schema?(O.dialect||StandardSQL).language.data.of({autocomplete:schemaCompletionSource(O)}):[]}function sql(O={}){let e=O.dialect||StandardSQL;return new LanguageSupport(e.language,[schemaCompletion(O),e.language.data.of({autocomplete:keywordCompletionSource(e,O.upperCaseKeywords,O.keywordCompletion)})])}const StandardSQL=SQLDialect.define({}),StartTag=1,StartCloseTag=2,MissingCloseTag=3,mismatchedStartCloseTag=4,incompleteStartCloseTag=5,commentContent$1=36,piContent$1=37,cdataContent$1=38,Element$1=11,OpenTag=13;function nameChar(O){return 45==O||46==O||58==O||O>=65&&O<=90||95==O||O>=97&&O<=122||O>=161}function isSpace$1(O){return 9==O||10==O||13==O||32==O}let cachedName=null,cachedInput=null,cachedPos=0;function tagNameAfter(O,e){let t=O.pos+e;if(cachedInput==O&&cachedPos==t)return cachedName;for(;isSpace$1(O.peek(e));)e++;let i="";for(;;){let t=O.peek(e);if(!nameChar(t))break;i+=String.fromCharCode(t),e++}return cachedInput=O,cachedPos=t,cachedName=i||null}function ElementContext(O,e){this.name=O,this.parent=e}const elementContext=new ContextTracker({start:null,shift:(O,e,t,i)=>1==e?new ElementContext(tagNameAfter(i,1)||"",O):O,reduce:(O,e)=>11==e&&O?O.parent:O,reuse(O,e,t,i){let n=e.type.id;return 1==n||13==n?new ElementContext(tagNameAfter(i,1)||"",O):O},strict:!1}),startTag=new ExternalTokenizer(((O,e)=>{if(60==O.next)if(O.advance(),47==O.next){O.advance();let t=tagNameAfter(O,0);if(!t)return O.acceptToken(5);if(e.context&&t==e.context.name)return O.acceptToken(2);for(let i=e.context;i;i=i.parent)if(i.name==t)return O.acceptToken(3,-2);O.acceptToken(4)}else if(33!=O.next&&63!=O.next)return O.acceptToken(1)}),{contextual:!0});function scanTo(O,e){return new ExternalTokenizer((t=>{let i=0,n=e.charCodeAt(0);O:for(;!(t.next<0);t.advance(),i++)if(t.next==n){for(let O=1;O<e.length;O++)if(t.peek(O)!=e.charCodeAt(O))continue O;break}i&&t.acceptToken(O)}))}const commentContent=scanTo(36,"--\x3e"),piContent=scanTo(37,"?>"),cdataContent=scanTo(38,"]]>"),xmlHighlighting=styleTags({Text:tags$1.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":tags$1.angleBracket,TagName:tags$1.tagName,"MismatchedCloseTag/TagName":[tags$1.tagName,tags$1.invalid],AttributeName:tags$1.attributeName,AttributeValue:tags$1.attributeValue,Is:tags$1.definitionOperator,"EntityReference CharacterReference":tags$1.character,Comment:tags$1.blockComment,ProcessingInst:tags$1.processingInstruction,DoctypeDecl:tags$1.documentMeta,Cdata:tags$1.special(tags$1.string)}),parser$2=LRParser.deserialize({version:14,states:",lOQOaOOOrOxO'#CfOzOpO'#CiO!tOaO'#CgOOOP'#Cg'#CgO!{OrO'#CrO#TOtO'#CsO#]OpO'#CtOOOP'#DT'#DTOOOP'#Cv'#CvQQOaOOOOOW'#Cw'#CwO#eOxO,59QOOOP,59Q,59QOOOO'#Cx'#CxO#mOpO,59TO#uO!bO,59TOOOP'#C|'#C|O$TOaO,59RO$[OpO'#CoOOOP,59R,59ROOOQ'#C}'#C}O$dOrO,59^OOOP,59^,59^OOOS'#DO'#DOO$lOtO,59_OOOP,59_,59_O$tOpO,59`O$|OpO,59`OOOP-E6t-E6tOOOW-E6u-E6uOOOP1G.l1G.lOOOO-E6v-E6vO%UO!bO1G.oO%UO!bO1G.oO%dOpO'#CkO%lO!bO'#CyO%zO!bO1G.oOOOP1G.o1G.oOOOP1G.w1G.wOOOP-E6z-E6zOOOP1G.m1G.mO&VOpO,59ZO&_OpO,59ZOOOQ-E6{-E6{OOOP1G.x1G.xOOOS-E6|-E6|OOOP1G.y1G.yO&gOpO1G.zO&gOpO1G.zOOOP1G.z1G.zO&oO!bO7+$ZO&}O!bO7+$ZOOOP7+$Z7+$ZOOOP7+$c7+$cO'YOpO,59VO'bOpO,59VO'mO!bO,59eOOOO-E6w-E6wO'{OpO1G.uO'{OpO1G.uOOOP1G.u1G.uO(TOpO7+$fOOOP7+$f7+$fO(]O!bO<<GuOOOP<<Gu<<GuOOOP<<G}<<G}O'bOpO1G.qO'bOpO1G.qO(hO#tO'#CnO(vO&jO'#CnOOOO1G.q1G.qO)UOpO7+$aOOOP7+$a7+$aOOOP<<HQ<<HQOOOPAN=aAN=aOOOPAN=iAN=iO'bOpO7+$]OOOO7+$]7+$]OOOO'#Cz'#CzO)^O#tO,59YOOOO,59Y,59YOOOO'#C{'#C{O)lO&jO,59YOOOP<<G{<<G{OOOO<<Gw<<GwOOOO-E6x-E6xOOOO1G.t1G.tOOOO-E6y-E6y",stateData:")z~OPQOSVOTWOVWOWWOXWOiXOyPO!QTO!SUO~OvZOx]O~O^`Oz^O~OPQOQcOSVOTWOVWOWWOXWOyPO!QTO!SUO~ORdO~P!SOteO!PgO~OuhO!RjO~O^lOz^O~OvZOxoO~O^qOz^O~O[vO`sOdwOz^O~ORyO~P!SO^{Oz^O~OteO!P}O~OuhO!R!PO~O^!QOz^O~O[!SOz^O~O[!VO`sOd!WOz^O~Oa!YOz^O~Oz^O[mX`mXdmX~O[!VO`sOd!WO~O^!]Oz^O~O[!_Oz^O~O[!aOz^O~O[!cO`sOd!dOz^O~O[!cO`sOd!dO~Oa!eOz^O~Oz^O{!gO}!hO~Oz^O[ma`madma~O[!kOz^O~O[!lOz^O~O[!mO`sOd!nO~OW!qOX!qO{!sO|!qO~OW!tOX!tO}!sO!O!tO~O[!vOz^O~OW!qOX!qO{!yO|!qO~OW!tOX!tO}!yO!O!tO~O",goto:"%cxPPPPPPPPPPyyP!PP!VPP!`!jP!pyyyP!v!|#S$[$k$q$w$}%TPPPP%ZXWORYbXRORYb_t`qru!T!U!bQ!i!YS!p!e!fR!w!oQdRRybXSORYbQYORmYQ[PRn[Q_QQkVjp_krz!R!T!X!Z!^!`!f!j!oQr`QzcQ!RlQ!TqQ!XsQ!ZtQ!^{Q!`!QQ!f!YQ!j!]R!o!eQu`S!UqrU![u!U!bR!b!TQ!r!gR!x!rQ!u!hR!z!uQbRRxbQfTR|fQiUR!OiSXOYTaRb",nodeNames:"⚠ StartTag StartCloseTag MissingCloseTag StartCloseTag StartCloseTag Document Text EntityReference CharacterReference Cdata Element EndTag OpenTag TagName Attribute AttributeName Is AttributeValue CloseTag SelfCloseEndTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag DoctypeDecl",maxTerm:50,context:elementContext,nodeProps:[["closedBy",1,"SelfCloseEndTag EndTag",13,"CloseTag MissingCloseTag"],["openedBy",12,"StartTag StartCloseTag",19,"OpenTag",20,"StartTag"],["isolate",-6,13,18,19,21,22,24,""]],propSources:[xmlHighlighting],skippedNodes:[0],repeatNodeCount:9,tokenData:"!)v~R!YOX$qXY)iYZ)iZ]$q]^)i^p$qpq)iqr$qrs*vsv$qvw+fwx/ix}$q}!O0[!O!P$q!P!Q2z!Q![$q![!]4n!]!^$q!^!_8U!_!`!#t!`!a!$l!a!b!%d!b!c$q!c!}4n!}#P$q#P#Q!'W#Q#R$q#R#S4n#S#T$q#T#o4n#o%W$q%W%o4n%o%p$q%p&a4n&a&b$q&b1p4n1p4U$q4U4d4n4d4e$q4e$IS4n$IS$I`$q$I`$Ib4n$Ib$Kh$q$Kh%#t4n%#t&/x$q&/x&Et4n&Et&FV$q&FV;'S4n;'S;:j8O;:j;=`)c<%l?&r$q?&r?Ah4n?Ah?BY$q?BY?Mn4n?MnO$qi$zXVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qa%nVVP!O`Ov%gwx&Tx!^%g!^!_&o!_;'S%g;'S;=`'W<%lO%gP&YTVPOv&Tw!^&T!_;'S&T;'S;=`&i<%lO&TP&lP;=`<%l&T`&tS!O`Ov&ox;'S&o;'S;=`'Q<%lO&o`'TP;=`<%l&oa'ZP;=`<%l%gX'eWVP|WOr'^rs&Tsv'^w!^'^!^!_'}!_;'S'^;'S;=`(i<%lO'^W(ST|WOr'}sv'}w;'S'};'S;=`(c<%lO'}W(fP;=`<%l'}X(lP;=`<%l'^h(vV|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oh)`P;=`<%l(oi)fP;=`<%l$qo)t`VP|W!O`zUOX$qXY)iYZ)iZ]$q]^)i^p$qpq)iqr$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk+PV{YVP!O`Ov%gwx&Tx!^%g!^!_&o!_;'S%g;'S;=`'W<%lO%g~+iast,n![!]-r!c!}-r#R#S-r#T#o-r%W%o-r%p&a-r&b1p-r4U4d-r4e$IS-r$I`$Ib-r$Kh%#t-r&/x&Et-r&FV;'S-r;'S;:j/c?&r?Ah-r?BY?Mn-r~,qQ!Q![,w#l#m-V~,zQ!Q![,w!]!^-Q~-VOX~~-YR!Q![-c!c!i-c#T#Z-c~-fS!Q![-c!]!^-Q!c!i-c#T#Z-c~-ug}!O-r!O!P-r!Q![-r![!]-r!]!^/^!c!}-r#R#S-r#T#o-r$}%O-r%W%o-r%p&a-r&b1p-r1p4U-r4U4d-r4e$IS-r$I`$Ib-r$Je$Jg-r$Kh%#t-r&/x&Et-r&FV;'S-r;'S;:j/c?&r?Ah-r?BY?Mn-r~/cOW~~/fP;=`<%l-rk/rW}bVP|WOr'^rs&Tsv'^w!^'^!^!_'}!_;'S'^;'S;=`(i<%lO'^k0eZVP|W!O`Or$qrs%gsv$qwx'^x}$q}!O1W!O!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk1aZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a2S!a;'S$q;'S;=`)c<%lO$qk2_X!PQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qm3TZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a3v!a;'S$q;'S;=`)c<%lO$qm4RXdSVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qo4{!P`S^QVP|W!O`Or$qrs%gsv$qwx'^x}$q}!O4n!O!P4n!P!Q$q!Q![4n![!]4n!]!^$q!^!_(o!_!c$q!c!}4n!}#R$q#R#S4n#S#T$q#T#o4n#o$}$q$}%O4n%O%W$q%W%o4n%o%p$q%p&a4n&a&b$q&b1p4n1p4U4n4U4d4n4d4e$q4e$IS4n$IS$I`$q$I`$Ib4n$Ib$Je$q$Je$Jg4n$Jg$Kh$q$Kh%#t4n%#t&/x$q&/x&Et4n&Et&FV$q&FV;'S4n;'S;:j8O;:j;=`)c<%l?&r$q?&r?Ah4n?Ah?BY$q?BY?Mn4n?MnO$qo8RP;=`<%l4ni8]Y|W!O`Oq(oqr8{rs&osv(owx'}x!a(o!a!b!#U!b;'S(o;'S;=`)]<%lO(oi9S_|W!O`Or(ors&osv(owx'}x}(o}!O:R!O!f(o!f!g;e!g!}(o!}#ODh#O#W(o#W#XLp#X;'S(o;'S;=`)]<%lO(oi:YX|W!O`Or(ors&osv(owx'}x}(o}!O:u!O;'S(o;'S;=`)]<%lO(oi;OV!QP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oi;lX|W!O`Or(ors&osv(owx'}x!q(o!q!r<X!r;'S(o;'S;=`)]<%lO(oi<`X|W!O`Or(ors&osv(owx'}x!e(o!e!f<{!f;'S(o;'S;=`)]<%lO(oi=SX|W!O`Or(ors&osv(owx'}x!v(o!v!w=o!w;'S(o;'S;=`)]<%lO(oi=vX|W!O`Or(ors&osv(owx'}x!{(o!{!|>c!|;'S(o;'S;=`)]<%lO(oi>jX|W!O`Or(ors&osv(owx'}x!r(o!r!s?V!s;'S(o;'S;=`)]<%lO(oi?^X|W!O`Or(ors&osv(owx'}x!g(o!g!h?y!h;'S(o;'S;=`)]<%lO(oi@QY|W!O`Or?yrs@psv?yvwA[wxBdx!`?y!`!aCr!a;'S?y;'S;=`Db<%lO?ya@uV!O`Ov@pvxA[x!`@p!`!aAy!a;'S@p;'S;=`B^<%lO@pPA_TO!`A[!`!aAn!a;'SA[;'S;=`As<%lOA[PAsOiPPAvP;=`<%lA[aBQSiP!O`Ov&ox;'S&o;'S;=`'Q<%lO&oaBaP;=`<%l@pXBiX|WOrBdrsA[svBdvwA[w!`Bd!`!aCU!a;'SBd;'S;=`Cl<%lOBdXC]TiP|WOr'}sv'}w;'S'};'S;=`(c<%lO'}XCoP;=`<%lBdiC{ViP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oiDeP;=`<%l?yiDoZ|W!O`Or(ors&osv(owx'}x!e(o!e!fEb!f#V(o#V#WIr#W;'S(o;'S;=`)]<%lO(oiEiX|W!O`Or(ors&osv(owx'}x!f(o!f!gFU!g;'S(o;'S;=`)]<%lO(oiF]X|W!O`Or(ors&osv(owx'}x!c(o!c!dFx!d;'S(o;'S;=`)]<%lO(oiGPX|W!O`Or(ors&osv(owx'}x!v(o!v!wGl!w;'S(o;'S;=`)]<%lO(oiGsX|W!O`Or(ors&osv(owx'}x!c(o!c!dH`!d;'S(o;'S;=`)]<%lO(oiHgX|W!O`Or(ors&osv(owx'}x!}(o!}#OIS#O;'S(o;'S;=`)]<%lO(oiI]V|W!O`yPOr(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oiIyX|W!O`Or(ors&osv(owx'}x#W(o#W#XJf#X;'S(o;'S;=`)]<%lO(oiJmX|W!O`Or(ors&osv(owx'}x#T(o#T#UKY#U;'S(o;'S;=`)]<%lO(oiKaX|W!O`Or(ors&osv(owx'}x#h(o#h#iK|#i;'S(o;'S;=`)]<%lO(oiLTX|W!O`Or(ors&osv(owx'}x#T(o#T#UH`#U;'S(o;'S;=`)]<%lO(oiLwX|W!O`Or(ors&osv(owx'}x#c(o#c#dMd#d;'S(o;'S;=`)]<%lO(oiMkX|W!O`Or(ors&osv(owx'}x#V(o#V#WNW#W;'S(o;'S;=`)]<%lO(oiN_X|W!O`Or(ors&osv(owx'}x#h(o#h#iNz#i;'S(o;'S;=`)]<%lO(oi! RX|W!O`Or(ors&osv(owx'}x#m(o#m#n! n#n;'S(o;'S;=`)]<%lO(oi! uX|W!O`Or(ors&osv(owx'}x#d(o#d#e!!b#e;'S(o;'S;=`)]<%lO(oi!!iX|W!O`Or(ors&osv(owx'}x#X(o#X#Y?y#Y;'S(o;'S;=`)]<%lO(oi!#_V!SP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(ok!$PXaQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qo!$wX[UVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk!%mZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a!&`!a;'S$q;'S;=`)c<%lO$qk!&kX!RQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk!'aZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_#P$q#P#Q!(S#Q;'S$q;'S;=`)c<%lO$qk!(]ZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a!)O!a;'S$q;'S;=`)c<%lO$qk!)ZXxQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$q",tokenizers:[startTag,commentContent,piContent,cdataContent,0,1,2,3,4],topRules:{Document:[0,6]},tokenPrec:0});function tagName(O,e){let t=e&&e.getChild("TagName");return t?O.sliceString(t.from,t.to):""}function elementName$1(O,e){let t=e&&e.firstChild;return t&&"OpenTag"==t.name?tagName(O,t):""}function attrName(O,e,t){let i=e&&e.getChildren("Attribute").find((O=>O.from<=t&&O.to>=t)),n=i&&i.getChild("AttributeName");return n?O.sliceString(n.from,n.to):""}function findParentElement(O){for(let e=O&&O.parent;e;e=e.parent)if("Element"==e.name)return e;return null}function findLocation(O,e){var t;let i=syntaxTree(O).resolveInner(e,-1),n=null;for(let O=i;!n&&O.parent;O=O.parent)"OpenTag"!=O.name&&"CloseTag"!=O.name&&"SelfClosingTag"!=O.name&&"MismatchedCloseTag"!=O.name||(n=O);if(n&&(n.to>e||n.lastChild.type.isError)){let O=n.parent;if("TagName"==i.name)return"CloseTag"==n.name||"MismatchedCloseTag"==n.name?{type:"closeTag",from:i.from,context:O}:{type:"openTag",from:i.from,context:findParentElement(O)};if("AttributeName"==i.name)return{type:"attrName",from:i.from,context:n};if("AttributeValue"==i.name)return{type:"attrValue",from:i.from,context:n};let t=i==n||"Attribute"==i.name?i.childBefore(e):i;return"StartTag"==(null==t?void 0:t.name)?{type:"openTag",from:e,context:findParentElement(O)}:"StartCloseTag"==(null==t?void 0:t.name)&&t.to<=e?{type:"closeTag",from:e,context:O}:"Is"==(null==t?void 0:t.name)?{type:"attrValue",from:e,context:n}:t?{type:"attrName",from:e,context:n}:null}if("StartCloseTag"==i.name)return{type:"closeTag",from:e,context:i.parent};for(;i.parent&&i.to==e&&!(null===(t=i.lastChild)||void 0===t?void 0:t.type.isError);)i=i.parent;return"Element"==i.name||"Text"==i.name||"Document"==i.name?{type:"tag",from:e,context:"Element"==i.name?i:findParentElement(i)}:null}class Element{constructor(O,e,t){this.attrs=e,this.attrValues=t,this.children=[],this.name=O.name,this.completion=Object.assign(Object.assign({type:"type"},O.completion||{}),{label:this.name}),this.openCompletion=Object.assign(Object.assign({},this.completion),{label:"<"+this.name}),this.closeCompletion=Object.assign(Object.assign({},this.completion),{label:"</"+this.name+">",boost:2}),this.closeNameCompletion=Object.assign(Object.assign({},this.completion),{label:this.name+">"}),this.text=O.textContent?O.textContent.map((O=>({label:O,type:"text"}))):[]}}const Identifier=/^[:\-\.\w\u00b7-\uffff]*$/;function attrCompletion(O){return Object.assign(Object.assign({type:"property"},O.completion||{}),{label:O.name})}function valueCompletion(O){return"string"==typeof O?{label:`"${O}"`,type:"constant"}:/^"/.test(O.label)?O:Object.assign(Object.assign({},O),{label:`"${O.label}"`})}function completeFromSchema(O,e){let t=[],i=[],n=Object.create(null);for(let O of e){let e=attrCompletion(O);t.push(e),O.global&&i.push(e),O.values&&(n[O.name]=O.values.map(valueCompletion))}let r=[],a=[],s=Object.create(null);for(let e of O){let O=i,o=n;e.attributes&&(O=O.concat(e.attributes.map((O=>"string"==typeof O?t.find((e=>e.label==O))||{label:O,type:"property"}:(O.values&&(o==n&&(o=Object.create(o)),o[O.name]=O.values.map(valueCompletion)),attrCompletion(O))))));let l=new Element(e,O,o);s[l.name]=l,r.push(l),e.top&&a.push(l)}a.length||(a=r);for(let e=0;e<r.length;e++){let t=O[e],i=r[e];if(t.children)for(let O of t.children)s[O]&&i.children.push(s[O]);else i.children=r}return O=>{var e;let{doc:t}=O.state,o=findLocation(O.state,O.pos);if(!o||"tag"==o.type&&!O.explicit)return null;let{type:l,from:Q,context:c}=o;if("openTag"==l){let O=a,e=elementName$1(t,c);if(e){let t=s[e];O=(null==t?void 0:t.children)||r}return{from:Q,options:O.map((O=>O.completion)),validFor:Identifier}}if("closeTag"==l){let i=elementName$1(t,c);return i?{from:Q,to:O.pos+(">"==t.sliceString(O.pos,O.pos+1)?1:0),options:[(null===(e=s[i])||void 0===e?void 0:e.closeNameCompletion)||{label:i+">",type:"type"}],validFor:Identifier}:null}if("attrName"==l){let O=s[tagName(t,c)];return{from:Q,options:(null==O?void 0:O.attrs)||i,validFor:Identifier}}if("attrValue"==l){let e=attrName(t,c,Q);if(!e)return null;let i=s[tagName(t,c)],r=((null==i?void 0:i.attrValues)||n)[e];return r&&r.length?{from:Q,to:O.pos+('"'==t.sliceString(O.pos,O.pos+1)?1:0),options:r,validFor:/^"[^"]*"?$/}:null}if("tag"==l){let e=elementName$1(t,c),i=s[e],n=[],o=c&&c.lastChild;!e||o&&"CloseTag"==o.name&&tagName(t,o)==e||n.push(i?i.closeCompletion:{label:"</"+e+">",type:"type",boost:2});let l=n.concat(((null==i?void 0:i.children)||(c?r:a)).map((O=>O.openCompletion)));if(c&&(null==i?void 0:i.text.length)){let e=c.firstChild;e.to>O.pos-20&&!/\S/.test(O.state.sliceDoc(e.to,O.pos))&&(l=l.concat(i.text))}return{from:Q,options:l,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}return null}}const xmlLanguage=LRLanguage.define({name:"xml",parser:parser$2.configure({props:[indentNodeProp.add({Element(O){let e=/^\s*<\//.test(O.textAfter);return O.lineIndent(O.node.from)+(e?0:O.unit)},"OpenTag CloseTag SelfClosingTag":O=>O.column(O.node.from)+O.unit}),foldNodeProp.add({Element(O){let e=O.firstChild,t=O.lastChild;return e&&"OpenTag"==e.name?{from:e.to,to:"CloseTag"==t.name?t.from:O.to}:null}}),bracketMatchingHandle.add({"OpenTag CloseTag":O=>O.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"\x3c!--",close:"--\x3e"}},indentOnInput:/^\s*<\/$/}});function xml(O={}){let e=[xmlLanguage.data.of({autocomplete:completeFromSchema(O.elements||[],O.attributes||[])})];return!1!==O.autoCloseTags&&e.push(autoCloseTags),new LanguageSupport(xmlLanguage,e)}function elementName(O,e,t=O.length){if(!e)return"";let i=e.firstChild,n=i&&i.getChild("TagName");return n?O.sliceString(n.from,Math.min(n.to,t)):""}const autoCloseTags=EditorView.inputHandler.of(((O,e,t,i,n)=>{if(O.composing||O.state.readOnly||e!=t||">"!=i&&"/"!=i||!xmlLanguage.isActiveAt(O.state,e,-1))return!1;let r=n(),{state:a}=r,s=a.changeByRange((O=>{var e,t,n;let r,{head:s}=O,o=a.doc.sliceString(s-1,s)==i,l=syntaxTree(a).resolveInner(s,-1);if(o&&">"==i&&"EndTag"==l.name){let i=l.parent;if("CloseTag"!=(null===(t=null===(e=i.parent)||void 0===e?void 0:e.lastChild)||void 0===t?void 0:t.name)&&(r=elementName(a.doc,i.parent,s))){return{range:O,changes:{from:s,to:s+(">"===a.doc.sliceString(s,s+1)?1:0),insert:`</${r}>`}}}}else if(o&&"/"==i&&"StartCloseTag"==l.name){let O=l.parent;if(l.from==s-2&&"CloseTag"!=(null===(n=O.lastChild)||void 0===n?void 0:n.name)&&(r=elementName(a.doc,O,s))){let O=s+(">"===a.doc.sliceString(s,s+1)?1:0),e=`${r}>`;return{range:EditorSelection.cursor(s+e.length,-1),changes:{from:s,to:O,insert:e}}}}return{range:O}}));return!s.changes.empty&&(O.dispatch([r,a.update(s,{userEvent:"input.complete",scrollIntoView:!0})]),!0)})),blockEnd=63,eof=64,DirectiveEnd=1,DocEnd=2,sequenceStartMark=3,sequenceContinueMark=4,explicitMapStartMark=5,explicitMapContinueMark=6,flowMapMark=7,mapStartMark=65,mapContinueMark=66,Literal=8,QuotedLiteral=9,Anchor=10,Alias=11,Tag=12,BlockLiteralContent=13,BracketL=19,FlowSequence=20,Colon=29,BraceL=33,FlowMapping=34,BlockLiteralHeader=47,type_Top=0,type_Seq=1,type_Map=2,type_Flow=3,type_Lit=4;class Context{constructor(O,e,t){this.parent=O,this.depth=e,this.type=t,this.hash=(O?O.hash+O.hash<<8:0)+e+(e<<4)+t}}function findColumn(O,e){for(let t=0,i=e-O.pos-1;;i--,t++){let e=O.peek(i);if(isBreakSpace(e)||-1==e)return t}}function isNonBreakSpace(O){return 32==O||9==O}function isBreakSpace(O){return 10==O||13==O}function isSpace(O){return isNonBreakSpace(O)||isBreakSpace(O)}function isSep(O){return O<0||isSpace(O)}Context.top=new Context(null,-1,0);const indentation=new ContextTracker({start:Context.top,reduce:(O,e)=>3!=O.type||20!=e&&34!=e?O:O.parent,shift(O,e,t,i){if(3==e)return new Context(O,findColumn(i,i.pos),1);if(65==e||5==e)return new Context(O,findColumn(i,i.pos),2);if(63==e)return O.parent;if(19==e||33==e)return new Context(O,0,3);if(13==e&&4==O.type)return O.parent;if(47==e){let e=/[1-9]/.exec(i.read(i.pos,t.pos));if(e)return new Context(O,O.depth+ +e[0],4)}return O},hash:O=>O.hash});function three(O,e,t=0){return O.peek(t)==e&&O.peek(t+1)==e&&O.peek(t+2)==e&&isSep(O.peek(t+3))}const newlines=new ExternalTokenizer(((O,e)=>{if(-1==O.next&&e.canShift(64))return O.acceptToken(64);let t=O.peek(-1);if((isBreakSpace(t)||t<0)&&3!=e.context.type){if(three(O,45)){if(!e.canShift(63))return O.acceptToken(1,3);O.acceptToken(63)}if(three(O,46)){if(!e.canShift(63))return O.acceptToken(2,3);O.acceptToken(63)}let t=0;for(;32==O.next;)t++,O.advance();!(t<e.context.depth)&&(t!=e.context.depth||1!=e.context.type||45==O.next&&isSep(O.peek(1)))||-1==O.next||isBreakSpace(O.next)||35==O.next||O.acceptToken(63,-t)}}),{contextual:!0}),blockMark=new ExternalTokenizer(((O,e)=>{if(3!=e.context.type)if(45==O.next)O.advance(),isSep(O.next)&&O.acceptToken(1==e.context.type&&e.context.depth==findColumn(O,O.pos-1)?4:3);else if(63==O.next)O.advance(),isSep(O.next)&&O.acceptToken(2==e.context.type&&e.context.depth==findColumn(O,O.pos-1)?6:5);else{let t=O.pos;for(;;)if(isNonBreakSpace(O.next)){if(O.pos==t)return;O.advance()}else if(33==O.next)readTag(O);else{if(38!=O.next){if(42==O.next){readAnchor(O);break}if(39==O.next||34==O.next){if(readQuoted(O,!0))break;return}if(91==O.next||123==O.next){if(!scanBrackets(O))return;break}readPlain(O,!0,!1,0);break}readAnchor(O)}for(;isNonBreakSpace(O.next);)O.advance();if(58==O.next){if(O.pos==t&&e.canShift(29))return;isSep(O.peek(1))&&O.acceptTokenTo(2==e.context.type&&e.context.depth==findColumn(O,t)?66:65,t)}}else 63==O.next&&(O.advance(),isSep(O.next)&&O.acceptToken(7))}),{contextual:!0});function uriChar(O){return O>32&&O<127&&34!=O&&37!=O&&44!=O&&60!=O&&62!=O&&92!=O&&94!=O&&96!=O&&123!=O&&124!=O&&125!=O}function hexChar(O){return O>=48&&O<=57||O>=97&&O<=102||O>=65&&O<=70}function readUriChar(O,e){return 37==O.next?(O.advance(),hexChar(O.next)&&O.advance(),hexChar(O.next)&&O.advance(),!0):!!(uriChar(O.next)||e&&44==O.next)&&(O.advance(),!0)}function readTag(O){if(O.advance(),60==O.next){for(O.advance();;)if(!readUriChar(O,!0)){62==O.next&&O.advance();break}}else for(;readUriChar(O,!1););}function readAnchor(O){for(O.advance();!isSep(O.next)&&"f"!=charTag(O.tag);)O.advance()}function readQuoted(O,e){let t=O.next,i=!1,n=O.pos;for(O.advance();;){let r=O.next;if(r<0)break;if(O.advance(),r==t){if(39!=r)break;if(39!=O.next)break;O.advance()}else if(92==r&&34==t)O.next>=0&&O.advance();else if(isBreakSpace(r)){if(e)return!1;i=!0}else if(e&&O.pos>=n+1024)return!1}return!i}function scanBrackets(O){for(let e=[],t=O.pos+1024;;)if(91==O.next||123==O.next)e.push(O.next),O.advance();else if(39==O.next||34==O.next){if(!readQuoted(O,!0))return!1}else if(93==O.next||125==O.next){if(e[e.length-1]!=O.next-2)return!1;if(e.pop(),O.advance(),!e.length)return!0}else{if(O.next<0||O.pos>t||isBreakSpace(O.next))return!1;O.advance()}}const charTable="iiisiiissisfissssssssssssisssiiissssssssssssssssssssssssssfsfssissssssssssssssssssssssssssfif";function charTag(O){return O<33?"u":O>125?"s":charTable[O-33]}function isSafe(O,e){let t=charTag(O);return"u"!=t&&!(e&&"f"==t)}function readPlain(O,e,t,i){if("s"!=charTag(O.next)&&(63!=O.next&&58!=O.next&&45!=O.next||!isSafe(O.peek(1),t)))return!1;O.advance();let n=O.pos;for(;;){let r=O.next,a=0,s=i+1;for(;isSpace(r);){if(isBreakSpace(r)){if(e)return!1;s=0}else s++;r=O.peek(++a)}if(!(r>=0&&(58==r?isSafe(O.peek(a+1),t):35==r?32!=O.peek(a-1):isSafe(r,t)))||!t&&s<=i||0==s&&!t&&(three(O,45,a)||three(O,46,a)))break;if(e&&"f"==charTag(r))return!1;for(let e=a;e>=0;e--)O.advance();if(e&&O.pos>n+1024)return!1}return!0}const literals=new ExternalTokenizer(((O,e)=>{if(33==O.next)readTag(O),O.acceptToken(12);else if(38==O.next||42==O.next){let e=38==O.next?10:11;readAnchor(O),O.acceptToken(e)}else 39==O.next||34==O.next?(readQuoted(O,!1),O.acceptToken(9)):readPlain(O,!1,3==e.context.type,e.context.depth)&&O.acceptToken(8)})),blockLiteral=new ExternalTokenizer(((O,e)=>{let t=4==e.context.type?e.context.depth:-1,i=O.pos;O:for(;;){let n=0,r=O.next;for(;32==r;)r=O.peek(++n);if(!n&&(three(O,45,n)||three(O,46,n)))break;if(!isBreakSpace(r)&&(t<0&&(t=Math.max(e.context.depth+1,n)),n<t))break;for(;;){if(O.next<0)break O;let e=isBreakSpace(O.next);if(O.advance(),e)continue O;i=O.pos}}O.acceptTokenTo(13,i)})),yamlHighlighting=styleTags({DirectiveName:tags$1.keyword,DirectiveContent:tags$1.attributeValue,"DirectiveEnd DocEnd":tags$1.meta,QuotedLiteral:tags$1.string,BlockLiteralHeader:tags$1.special(tags$1.string),BlockLiteralContent:tags$1.content,Literal:tags$1.content,"Key/Literal Key/QuotedLiteral":tags$1.definition(tags$1.propertyName),"Anchor Alias":tags$1.labelName,Tag:tags$1.typeName,Comment:tags$1.lineComment,": , -":tags$1.separator,"?":tags$1.punctuation,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),parser$1=LRParser.deserialize({version:14,states:"5lQ!ZQgOOO#PQfO'#CpO#uQfO'#DOOOQR'#Dv'#DvO$qQgO'#DRO%gQdO'#DUO%nQgO'#DUO&ROaO'#D[OOQR'#Du'#DuO&{QgO'#D^O'rQgO'#D`OOQR'#Dt'#DtO(iOqO'#DbOOQP'#Dj'#DjO(zQaO'#CmO)YQgO'#CmOOQP'#Cm'#CmQ)jQaOOQ)uQgOOQ]QgOOO*PQdO'#CrO*nQdO'#CtOOQO'#Dw'#DwO+]Q`O'#CxO+hQdO'#CwO+rQ`O'#CwOOQO'#Cv'#CvO+wQdO'#CvOOQO'#Cq'#CqO,UQ`O,59[O,^QfO,59[OOQR,59[,59[OOQO'#Cx'#CxO,eQ`O'#DPO,pQdO'#DPOOQO'#Dx'#DxO,zQdO'#DxO-XQ`O,59jO-aQfO,59jOOQR,59j,59jOOQR'#DS'#DSO-hQcO,59mO-sQgO'#DVO.TQ`O'#DVO.YQcO,59pOOQR'#DX'#DXO#|QfO'#DWO.hQcO'#DWOOQR,59v,59vO.yOWO,59vO/OOaO,59vO/WOaO,59vO/cQgO'#D_OOQR,59x,59xO0VQgO'#DaOOQR,59z,59zOOQP,59|,59|O0yOaO,59|O1ROaO,59|O1aOqO,59|OOQP-E7h-E7hO1oQgO,59XOOQP,59X,59XO2PQaO'#DeO2_QgO'#DeO2oQgO'#DkOOQP'#Dk'#DkQ)jQaOOO3PQdO'#CsOOQO,59^,59^O3kQdO'#CuOOQO,59`,59`OOQO,59c,59cO4VQdO,59cO4aQdO'#CzO4kQ`O'#CzOOQO,59b,59bOOQU,5:Q,5:QOOQR1G.v1G.vO4pQ`O1G.vOOQU-E7d-E7dO4xQdO,59kOOQO,59k,59kO5SQdO'#DQO5^Q`O'#DQOOQO,5:d,5:dOOQU,5:R,5:ROOQR1G/U1G/UO5cQ`O1G/UOOQU-E7e-E7eO5kQgO'#DhO5xQcO1G/XOOQR1G/X1G/XOOQR,59q,59qO6TQgO,59qO6eQdO'#DiO6lQgO'#DiO7PQcO1G/[OOQR1G/[1G/[OOQR,59r,59rO#|QfO,59rOOQR1G/b1G/bO7_OWO1G/bO7dOaO1G/bOOQR,59y,59yOOQR,59{,59{OOQP1G/h1G/hO7lOaO1G/hO7tOaO1G/hO8POaO1G/hOOQP1G.s1G.sO8_QgO,5:POOQP,5:P,5:POOQP,5:V,5:VOOQP-E7i-E7iOOQO,59_,59_OOQO,59a,59aOOQO1G.}1G.}OOQO,59f,59fO8oQdO,59fOOQR7+$b7+$bP,XQ`O'#DfOOQO1G/V1G/VOOQO,59l,59lO8yQdO,59lOOQR7+$p7+$pP9TQ`O'#DgOOQR'#DT'#DTOOQR,5:S,5:SOOQR-E7f-E7fOOQR7+$s7+$sOOQR1G/]1G/]O9YQgO'#DYO9jQ`O'#DYOOQR,5:T,5:TO#|QfO'#DZO9oQcO'#DZOOQR-E7g-E7gOOQR7+$v7+$vOOQR1G/^1G/^OOQR7+$|7+$|O:QOWO7+$|OOQP7+%S7+%SO:VOaO7+%SO:_OaO7+%SOOQP1G/k1G/kOOQO1G/Q1G/QOOQO1G/W1G/WOOQR,59t,59tO:jQgO,59tOOQR,59u,59uO#|QfO,59uOOQR<<Hh<<HhOOQP<<Hn<<HnO:zOaO<<HnOOQR1G/`1G/`OOQR1G/a1G/aOOQPAN>YAN>Y",stateData:";S~O!fOS!gOS^OS~OP_OQbORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!V[O!cTO~O`cO~P]OVkOWROXROYeOZfO[dOcPOmhOqQO~OboO~P!bOVtOWROXROYeOZfO[dOcPOmrOqQO~OpwO~P#WORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!cTO~OSvP!avP!bvP~P#|OWROXROYeOZfO[dOcPOqQO~OmzO~P%OOm!OOUzP!azP!bzP!dzP~P#|O^!SO!b!QO!f!TO!g!RO~ORSOTUOWROXROcPOqQO!PVO!cTO~OY!UOP!QXQ!QX!V!QX!`!QXS!QX!a!QX!b!QXU!QXm!QX!d!QX~P&aO[!WOP!SXQ!SX!V!SX!`!SXS!SX!a!SX!b!SXU!SXm!SX!d!SX~P&aO^!ZO!W![O!b!YO!f!]O!g!YO~OP!_O!V[OQaX!`aX~OPaXQaX!VaX!`aX~P#|OP!bOQ!cO!V[O~OP_O!V[O~P#|OWROXROY!fOcPOqQObfXmfXofXpfX~OWROXRO[!hOcPOqQObhXmhXohXphX~ObeXmlXoeX~ObkXokX~P%OOm!kO~Om!lObnPonP~P%OOb!pOo!oO~Ob!pO~P!bOm!sOosXpsX~OosXpsX~P%OOm!uOotPptP~P%OOo!xOp!yO~Op!yO~P#WOS!|O!a#OO!b#OO~OUyX!ayX!byX!dyX~P#|Om#QO~OU#SO!a#UO!b#UO!d#RO~Om#WOUzX!azX!bzX!dzX~O]#XO~O!b#XO!g#YO~O^#ZO!b#XO!g#YO~OP!RXQ!RX!V!RX!`!RXS!RX!a!RX!b!RXU!RXm!RX!d!RX~P&aOP!TXQ!TX!V!TX!`!TXS!TX!a!TX!b!TXU!TXm!TX!d!TX~P&aO!b#^O!g#^O~O^#_O!b#^O!f#`O!g#^O~O^#_O!W#aO!b#^O!g#^O~OPaaQaa!Vaa!`aa~P#|OP#cO!V[OQ!XX!`!XX~OP!XXQ!XX!V!XX!`!XX~P#|OP_O!V[OQ!_X!`!_X~P#|OWROXROcPOqQObgXmgXogXpgX~OWROXROcPOqQObiXmiXoiXpiX~Obkaoka~P%OObnXonX~P%OOm#kO~Ob#lOo!oO~Oosapsa~P%OOotXptX~P%OOm#pO~Oo!xOp#qO~OSwP!awP!bwP~P#|OS!|O!a#vO!b#vO~OUya!aya!bya!dya~P#|Om#xO~P%OOm#{OU}P!a}P!b}P!d}P~P#|OU#SO!a$OO!b$OO!d#RO~O]$QO~O!b$QO!g$RO~O!b$SO!g$SO~O^$TO!b$SO!g$SO~O^$TO!b$SO!f$UO!g$SO~OP!XaQ!Xa!V!Xa!`!Xa~P#|Obnaona~P%OOotapta~P%OOo!xO~OU|X!a|X!b|X!d|X~P#|Om$ZO~Om$]OU}X!a}X!b}X!d}X~O]$^O~O!b$_O!g$_O~O^$`O!b$_O!g$_O~OU|a!a|a!b|a!d|a~P#|O!b$cO!g$cO~O",goto:",]!mPPPPPPPPPPPPPPPPP!nPP!v#v#|$`#|$c$f$j$nP%VPPP!v%Y%^%a%{&O%a&R&U&X&_&b%aP&e&{&e'O'RPP']'a'g'm's'y(XPPPPPPPP(_)e*X+c,VUaObcR#e!c!{ROPQSTUXY_bcdehknrtvz!O!U!W!_!b!c!f!h!k!l!s!u!|#Q#R#S#W#c#k#p#x#{$Z$]QmPR!qnqfPQThknrtv!k!l!s!u#R#k#pR!gdR!ieTlPnTjPnSiPnSqQvQ{TQ!mkQ!trQ!vtR#y#RR!nkTsQvR!wt!RWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]RySR#t!|R|TR|UQ!PUR#|#SR#z#RR#z#SyZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]R!VXR!XYa]O^abc!a!c!eT!da!eQnPR!rnQvQR!{vQ!}yR#u!}Q#T|R#}#TW^Obc!cS!^^!aT!aa!eQ!eaR#f!eW`Obc!cQxSS}U#SQ!`_Q#PzQ#V!OQ#b!_Q#d!bQ#s!|Q#w#QQ$P#WQ$V#cQ$Y#xQ$[#{Q$a$ZR$b$]xZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]Q!VXQ!XYQ#[!UR#]!W!QWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]pfPQThknrtv!k!l!s!u#R#k#pQ!gdQ!ieQ#g!fR#h!hSgPn^pQTkrtv#RQ!jhQ#i!kQ#j!lQ#n!sQ#o!uQ$W#kR$X#pQuQR!zv",nodeNames:"⚠ DirectiveEnd DocEnd - - ? ? ? Literal QuotedLiteral Anchor Alias Tag BlockLiteralContent Comment Stream BOM Document ] [ FlowSequence Item Tagged Anchored Anchored Tagged FlowMapping Pair Key : Pair , } { FlowMapping Pair Pair BlockSequence Item Item BlockMapping Pair Pair Key Pair Pair BlockLiteral BlockLiteralHeader Tagged Anchored Anchored Tagged Directive DirectiveName DirectiveContent Document",maxTerm:74,context:indentation,nodeProps:[["isolate",-3,8,9,14,""],["openedBy",18,"[",32,"{"],["closedBy",19,"]",33,"}"]],propSources:[yamlHighlighting],skippedNodes:[0],repeatNodeCount:6,tokenData:"-Y~RnOX#PXY$QYZ$]Z]#P]^$]^p#Ppq$Qqs#Pst$btu#Puv$yv|#P|}&e}![#P![!]'O!]!`#P!`!a'i!a!}#P!}#O*g#O#P#P#P#Q+Q#Q#o#P#o#p+k#p#q'i#q#r,U#r;'S#P;'S;=`#z<%l?HT#P?HT?HU,o?HUO#PQ#UU!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PQ#kTOY#PZs#Pt;'S#P;'S;=`#z<%lO#PQ#}P;=`<%l#P~$VQ!f~XY$Qpq$Q~$bO!g~~$gS^~OY$bZ;'S$b;'S;=`$s<%lO$b~$vP;=`<%l$bR%OX!WQOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR%rX!WQ!VPOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR&bP;=`<%l%kR&lUoP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'VUmP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'p[!PP!WQOY#PZp#Ppq#hq{#P{|(f|}#P}!O(f!O!R#P!R![)p![;'S#P;'S;=`#z<%lO#PR(mW!PP!WQOY#PZp#Ppq#hq!R#P!R![)V![;'S#P;'S;=`#z<%lO#PR)^U!PP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR)wY!PP!WQOY#PZp#Ppq#hq{#P{|)V|}#P}!O)V!O;'S#P;'S;=`#z<%lO#PR*nUcP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+XUbP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+rUqP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,]UpP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,vU`P!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#P",tokenizers:[newlines,blockMark,literals,blockLiteral,0,1],topRules:{Stream:[0,15]},tokenPrec:0}),parser=LRParser.deserialize({version:14,states:"!vOQOPOOO]OPO'#C_OhOPO'#C^OOOO'#Cc'#CcOpOPO'#CaQOOOOOO{OPOOOOOO'#Cb'#CbO!WOPO'#C`O!`OPO,58xOOOO-E6a-E6aOOOO-E6`-E6`OOOO'#C_'#C_OOOO1G.d1G.d",stateData:"!h~OXPOYROWTP~OWVXXRXYRX~OYVOXSP~OXROYROWTX~OXROYROWTP~OYVOXSX~OX[O~OXY~",goto:"vWPPX[beioRUOQQOR]XRXQTTOUQWQRZWSSOURYS",nodeNames:"⚠ Document Frontmatter DashLine FrontmatterContent Body",maxTerm:10,skippedNodes:[0],repeatNodeCount:2,tokenData:"$z~RXOYnYZ!^Z]n]^!^^}n}!O!i!O;'Sn;'S;=`!c<%lOn~qXOYnYZ!^Z]n]^!^^;'Sn;'S;=`!c<%l~n~On~~!^~!cOY~~!fP;=`<%ln~!lZOYnYZ!^Z]n]^!^^}n}!O#_!O;'Sn;'S;=`!c<%l~n~On~~!^~#bZOYnYZ!^Z]n]^!^^}n}!O$T!O;'Sn;'S;=`!c<%l~n~On~~!^~$WXOYnYZ$sZ]n]^$s^;'Sn;'S;=`!c<%l~n~On~~$s~$zOX~Y~",tokenizers:[0],topRules:{Document:[0,1]},tokenPrec:67}),yamlLanguage=LRLanguage.define({name:"yaml",parser:parser$1.configure({props:[indentNodeProp.add({Stream:O=>{for(let e=O.node.resolve(O.pos,-1);e&&e.to>=O.pos;e=e.parent){if("BlockLiteralContent"==e.name&&e.from<e.to)return O.baseIndentFor(e);if("BlockLiteral"==e.name)return O.baseIndentFor(e)+O.unit;if("BlockSequence"==e.name||"BlockMapping"==e.name)return O.column(e.from,1);if("QuotedLiteral"==e.name)return null;if("Literal"==e.name){let t=O.column(e.from,1);if(t==O.lineIndent(e.from,1))return t;if(e.to>O.pos)return null}}return null},FlowMapping:delimitedIndent({closing:"}"}),FlowSequence:delimitedIndent({closing:"]"})}),foldNodeProp.add({"FlowMapping FlowSequence":foldInside,"Item Pair BlockLiteral":(O,e)=>({from:e.doc.lineAt(O.from).to,to:O.to})})]}),languageData:{commentTokens:{line:"#"},indentOnInput:/^\s*[\]\}]$/}});function yaml(){return new LanguageSupport(yamlLanguage)}tags$1.meta;const langItems=[{value:"text",text:"Plain text"},{value:"c",text:"C",component:cpp},{value:"csharp",text:"C#",component:cpp},{value:"cpp",text:"C++",component:cpp},{value:"css",text:"CSS",component:css},{value:"go",text:"Go",component:go},{value:"html",text:"HTML",component:html},{value:"java",text:"Java",component:java},{value:"javascript",text:"JavaScript",component:javascript},{value:"json",text:"JSON",component:json},{value:"markdown",text:"Markdown",component:markdown},{value:"php",text:"PHP",component:php},{value:"python",text:"Python",component:python},{value:"rust",text:"Rust",component:rust},{value:"sql",text:"SQL",component:sql},{value:"typescript",text:"TypeScript",component:javascript},{value:"xml",text:"XML",component:xml},{value:"yaml",text:"YAML",component:yaml}];export{Compartment,EditorState,EditorView,HighlightStyle,defaultKeymap,history,historyKeymap,indentWithTab,keymap,langItems,syntaxHighlighting,tags$1 as tags};
//# sourceMappingURL=/sm/f64af8a998bd6eb40b307641a7a2cd761bb5521689f8817c42917af6900fb543.map