@pyscript/core 0.6.55 → 0.6.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/codemirror-DtxT3fWl.js +2 -0
  2. package/dist/codemirror-DtxT3fWl.js.map +1 -0
  3. package/dist/codemirror_commands-DEH2ednO.js +2 -0
  4. package/dist/{codemirror_commands-BOf4K2ts.js.map → codemirror_commands-DEH2ednO.js.map} +1 -1
  5. package/dist/codemirror_lang-python-BmOE5ND1.js +2 -0
  6. package/dist/{codemirror_lang-python-DCbIUspM.js.map → codemirror_lang-python-BmOE5ND1.js.map} +1 -1
  7. package/dist/codemirror_language-Bq5O0hUR.js +2 -0
  8. package/dist/{codemirror_language-g0vQwyLF.js.map → codemirror_language-Bq5O0hUR.js.map} +1 -1
  9. package/dist/codemirror_state-BIAL8JKm.js +2 -0
  10. package/dist/{codemirror_state-1UkzIAPK.js.map → codemirror_state-BIAL8JKm.js.map} +1 -1
  11. package/dist/codemirror_view-DNx7dL5k.js +2 -0
  12. package/dist/codemirror_view-DNx7dL5k.js.map +1 -0
  13. package/dist/core-BDCblYQn.js +4 -0
  14. package/dist/core-BDCblYQn.js.map +1 -0
  15. package/dist/core.js +1 -1
  16. package/dist/{deprecations-manager-Rw32oYx-.js → deprecations-manager-CNW_JX9q.js} +2 -2
  17. package/dist/{deprecations-manager-Rw32oYx-.js.map → deprecations-manager-CNW_JX9q.js.map} +1 -1
  18. package/dist/{donkey-GLRef4JN.js → donkey-Cr9g1DDX.js} +2 -2
  19. package/dist/{donkey-GLRef4JN.js.map → donkey-Cr9g1DDX.js.map} +1 -1
  20. package/dist/error-B6G-5Pif.js +2 -0
  21. package/dist/{error-BSxhsz-z.js.map → error-B6G-5Pif.js.map} +1 -1
  22. package/dist/index-BtkFDJPe.js +2 -0
  23. package/dist/{index-Dhv1RkW_.js.map → index-BtkFDJPe.js.map} +1 -1
  24. package/dist/mpy-Dugbcp74.js +2 -0
  25. package/dist/{mpy-DS908FIP.js.map → mpy-Dugbcp74.js.map} +1 -1
  26. package/dist/py-FOsA_TSL.js +2 -0
  27. package/dist/{py-C1zn1oIN.js.map → py-FOsA_TSL.js.map} +1 -1
  28. package/dist/py-editor-HhWs46KO.js +2 -0
  29. package/dist/{py-editor-BeLSW3t2.js.map → py-editor-HhWs46KO.js.map} +1 -1
  30. package/dist/py-game-CQq-8UP0.js +2 -0
  31. package/dist/{py-game-c17lRx9G.js.map → py-game-CQq-8UP0.js.map} +1 -1
  32. package/dist/py-terminal-ApYpC8rm.js +2 -0
  33. package/dist/{py-terminal-CJcYGK_0.js.map → py-terminal-ApYpC8rm.js.map} +1 -1
  34. package/dist/service-worker.js +1 -1
  35. package/dist/storage.js +1 -1
  36. package/dist/storage.js.map +1 -1
  37. package/dist/toml-BK2RWy-G.js +3 -0
  38. package/dist/{toml-DiUM0_qs.js.map → toml-BK2RWy-G.js.map} +1 -1
  39. package/dist/toml-Blg7Izee.js +3 -0
  40. package/dist/toml-Blg7Izee.js.map +1 -0
  41. package/dist/xterm-DrSYbXEP.js +2 -0
  42. package/dist/{xterm-CVv2fC4I.js.map → xterm-DrSYbXEP.js.map} +1 -1
  43. package/dist/xterm-readline-CYfUpnbV.js +2 -0
  44. package/dist/xterm-readline-CYfUpnbV.js.map +1 -0
  45. package/dist/xterm_addon-fit--gyF3PcZ.js.map +1 -1
  46. package/dist/xterm_addon-web-links-D95xh2la.js +2 -0
  47. package/dist/{xterm_addon-web-links-Cnej-nJ6.js.map → xterm_addon-web-links-D95xh2la.js.map} +1 -1
  48. package/dist/zip-BKVoQflw.js +2 -0
  49. package/dist/{zip-D13-hp9W.js.map → zip-BKVoQflw.js.map} +1 -1
  50. package/package.json +10 -10
  51. package/src/stdlib/pyscript/web.py +10 -0
  52. package/src/stdlib/pyscript.js +1 -1
  53. package/dist/codemirror-8Ev_qLCE.js +0 -2
  54. package/dist/codemirror-8Ev_qLCE.js.map +0 -1
  55. package/dist/codemirror_commands-BOf4K2ts.js +0 -2
  56. package/dist/codemirror_lang-python-DCbIUspM.js +0 -2
  57. package/dist/codemirror_language-g0vQwyLF.js +0 -2
  58. package/dist/codemirror_state-1UkzIAPK.js +0 -2
  59. package/dist/codemirror_view-Gaaf0HCU.js +0 -2
  60. package/dist/codemirror_view-Gaaf0HCU.js.map +0 -1
  61. package/dist/core-CJABae_n.js +0 -4
  62. package/dist/core-CJABae_n.js.map +0 -1
  63. package/dist/error-BSxhsz-z.js +0 -2
  64. package/dist/index-Dhv1RkW_.js +0 -2
  65. package/dist/mpy-DS908FIP.js +0 -2
  66. package/dist/py-C1zn1oIN.js +0 -2
  67. package/dist/py-editor-BeLSW3t2.js +0 -2
  68. package/dist/py-game-c17lRx9G.js +0 -2
  69. package/dist/py-terminal-CJcYGK_0.js +0 -2
  70. package/dist/toml-BLBSZ43A.js +0 -3
  71. package/dist/toml-BLBSZ43A.js.map +0 -1
  72. package/dist/toml-DiUM0_qs.js +0 -3
  73. package/dist/xterm-CVv2fC4I.js +0 -2
  74. package/dist/xterm-readline-e8QPhSrm.js +0 -2
  75. package/dist/xterm-readline-e8QPhSrm.js.map +0 -1
  76. package/dist/xterm_addon-web-links-Cnej-nJ6.js +0 -2
  77. package/dist/zip-D13-hp9W.js +0 -2
@@ -1,2 +0,0 @@
1
- import{P as t,N as O,g as e,D as i,h as s,T as n,I as r,j as a,t as o,L as h,s as l,k as d,l as Q,m as c,n as p,o as f,p as u}from"./codemirror_language-g0vQwyLF.js";import{i as T,e as g,s as S}from"./index-Dhv1RkW_.js";import"./codemirror_state-1UkzIAPK.js";import"./codemirror_view-Gaaf0HCU.js";class m{constructor(t,O,e,i,s,n,r,a,o,h=0,l){this.p=t,this.stack=O,this.state=e,this.reducePos=i,this.pos=s,this.score=n,this.buffer=r,this.bufferBase=a,this.curContext=o,this.lookAhead=h,this.parent=l}toString(){return`[${this.stack.filter(((t,O)=>O%3==0)).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(t,O,e=0){let i=t.parser.context;return new m(t,[],O,e,e,0,[],0,i?new k(i,i.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(t,O){this.stack.push(this.state,O,this.bufferBase+this.buffer.length),this.state=t}reduce(t){var O;let e=t>>19,i=65535&t,{parser:s}=this.p,n=this.reducePos<this.pos-25;n&&this.setLookAhead(this.pos);let r=s.dynamicPrecedence(i);if(r&&(this.score+=r),0==e)return this.pushState(s.getGoto(this.state,i,!0),this.reducePos),i<s.minRepeatTerm&&this.storeNode(i,this.reducePos,this.reducePos,n?8:4,!0),void this.reduceContext(i,this.reducePos);let a=this.stack.length-3*(e-1)-(262144&t?6:0),o=a?this.stack[a-2]:this.p.ranges[0].from,h=this.reducePos-o;h>=2e3&&!(null===(O=this.p.parser.nodeSet.types[i])||void 0===O?void 0:O.isAnonymous)&&(o==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=h):this.p.lastBigReductionSize<h&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=o,this.p.lastBigReductionSize=h));let l=a?this.stack[a-1]:0,d=this.bufferBase+this.buffer.length-l;if(i<s.minRepeatTerm||131072&t){let t=s.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(i,o,t,d+4,!0)}if(262144&t)this.state=this.stack[a];else{let t=this.stack[a-3];this.state=s.getGoto(t,i,!0)}for(;this.stack.length>a;)this.stack.pop();this.reduceContext(i,o)}storeNode(t,O,e,i=4,s=!1){if(0==t&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let t=this,i=this.buffer.length;if(0==i&&t.parent&&(i=t.bufferBase-t.parent.bufferBase,t=t.parent),i>0&&0==t.buffer[i-4]&&t.buffer[i-1]>-1){if(O==e)return;if(t.buffer[i-2]>=O)return void(t.buffer[i-2]=e)}}if(s&&this.pos!=e){let s=this.buffer.length;if(s>0&&0!=this.buffer[s-4]){let t=!1;for(let O=s;O>0&&this.buffer[O-2]>e;O-=4)if(this.buffer[O-1]>=0){t=!0;break}if(t)for(;s>0&&this.buffer[s-2]>e;)this.buffer[s]=this.buffer[s-4],this.buffer[s+1]=this.buffer[s-3],this.buffer[s+2]=this.buffer[s-2],this.buffer[s+3]=this.buffer[s-1],s-=4,i>4&&(i-=4)}this.buffer[s]=t,this.buffer[s+1]=O,this.buffer[s+2]=e,this.buffer[s+3]=i}else this.buffer.push(t,O,e,i)}shift(t,O,e,i){if(131072&t)this.pushState(65535&t,this.pos);else if(262144&t)this.pos=i,this.shiftContext(O,e),O<=this.p.parser.maxNode&&this.buffer.push(O,e,i,4);else{let s=t,{parser:n}=this.p;(i>this.pos||O<=n.maxNode)&&(this.pos=i,n.stateFlag(s,1)||(this.reducePos=i)),this.pushState(s,e),this.shiftContext(O,e),O<=n.maxNode&&this.buffer.push(O,e,i,4)}}apply(t,O,e,i){65536&t?this.reduce(t):this.shift(t,O,e,i)}useNode(t,O){let e=this.p.reused.length-1;(e<0||this.p.reused[e]!=t)&&(this.p.reused.push(t),e++);let i=this.pos;this.reducePos=this.pos=i+t.length,this.pushState(O,i),this.buffer.push(e,i,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,t,this,this.p.stream.reset(this.pos-t.length)))}split(){let t=this,O=t.buffer.length;for(;O>0&&t.buffer[O-2]>t.reducePos;)O-=4;let e=t.buffer.slice(O),i=t.bufferBase+O;for(;t&&i==t.bufferBase;)t=t.parent;return new m(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,e,i,this.curContext,this.lookAhead,t)}recoverByDelete(t,O){let e=t<=this.p.parser.maxNode;e&&this.storeNode(t,this.pos,O,4),this.storeNode(0,this.pos,O,e?8:4),this.pos=this.reducePos=O,this.score-=190}canShift(t){for(let O=new P(this);;){let e=this.p.parser.stateSlot(O.state,4)||this.p.parser.hasAction(O.state,t);if(0==e)return!1;if(!(65536&e))return!0;O.reduce(e)}}recoverByInsert(t){if(this.stack.length>=300)return[];let O=this.p.parser.nextStates(this.state);if(O.length>8||this.stack.length>=120){let e=[];for(let i,s=0;s<O.length;s+=2)(i=O[s+1])!=this.state&&this.p.parser.hasAction(i,t)&&e.push(O[s],i);if(this.stack.length<120)for(let t=0;e.length<8&&t<O.length;t+=2){let i=O[t+1];e.some(((t,O)=>1&O&&t==i))||e.push(O[t],i)}O=e}let e=[];for(let t=0;t<O.length&&e.length<4;t+=2){let i=O[t+1];if(i==this.state)continue;let s=this.split();s.pushState(i,this.pos),s.storeNode(0,s.pos,s.pos,4,!0),s.shiftContext(O[t],this.pos),s.reducePos=this.pos,s.score-=200,e.push(s)}return e}forceReduce(){let{parser:t}=this.p,O=t.stateSlot(this.state,5);if(!(65536&O))return!1;if(!t.validAction(this.state,O)){let e=O>>19,i=65535&O,s=this.stack.length-3*e;if(s<0||t.getGoto(this.stack[s],i,!1)<0){let t=this.findForcedReduction();if(null==t)return!1;O=t}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(O),!0}findForcedReduction(){let{parser:t}=this.p,O=[],e=(i,s)=>{if(!O.includes(i))return O.push(i),t.allActions(i,(O=>{if(393216&O);else if(65536&O){let e=(O>>19)-s;if(e>1){let i=65535&O,s=this.stack.length-3*e;if(s>=0&&t.getGoto(this.stack[s],i,!1)>=0)return e<<19|65536|i}}else{let t=e(O,s+1);if(null!=t)return t}}))};return e(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:t}=this.p;return 65535==t.data[t.stateSlot(this.state,1)]&&!t.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(t){if(this.state!=t.state||this.stack.length!=t.stack.length)return!1;for(let O=0;O<this.stack.length;O+=3)if(this.stack[O]!=t.stack[O])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(t){return this.p.parser.dialect.flags[t]}shiftContext(t,O){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,t,this,this.p.stream.reset(O)))}reduceContext(t,O){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,t,this,this.p.stream.reset(O)))}emitContext(){let t=this.buffer.length-1;(t<0||-3!=this.buffer[t])&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let t=this.buffer.length-1;(t<0||-4!=this.buffer[t])&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(t){if(t!=this.curContext.context){let O=new k(this.curContext.tracker,t);O.hash!=this.curContext.hash&&this.emitContext(),this.curContext=O}}setLookAhead(t){t>this.lookAhead&&(this.emitLookAhead(),this.lookAhead=t)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class k{constructor(t,O){this.tracker=t,this.context=O,this.hash=t.strict?t.hash(O):0}}class P{constructor(t){this.start=t,this.state=t.state,this.stack=t.stack,this.base=this.stack.length}reduce(t){let O=65535&t,e=t>>19;0==e?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=3*(e-1);let i=this.start.p.parser.getGoto(this.stack[this.base-3],O,!0);this.state=i}}class q{constructor(t,O,e){this.stack=t,this.pos=O,this.index=e,this.buffer=t.buffer,0==this.index&&this.maybeNext()}static create(t,O=t.bufferBase+t.buffer.length){return new q(t,O,O-t.bufferBase)}maybeNext(){let t=this.stack.parent;null!=t&&(this.index=this.stack.bufferBase-t.bufferBase,this.stack=t,this.buffer=t.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 q(this.stack,this.pos,this.index)}}function $(t,O=Uint16Array){if("string"!=typeof t)return t;let e=null;for(let i=0,s=0;i<t.length;){let n=0;for(;;){let O=t.charCodeAt(i++),e=!1;if(126==O){n=65535;break}O>=92&&O--,O>=34&&O--;let s=O-32;if(s>=46&&(s-=46,e=!0),n+=s,e)break;n*=46}e?e[s++]=n:e=new O(n)}return e}class x{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const v=new x;class y{constructor(t,O){this.input=t,this.ranges=O,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=v,this.rangeIndex=0,this.pos=this.chunkPos=O[0].from,this.range=O[0],this.end=O[O.length-1].to,this.readNext()}resolveOffset(t,O){let e=this.range,i=this.rangeIndex,s=this.pos+t;for(;s<e.from;){if(!i)return null;let t=this.ranges[--i];s-=e.from-t.to,e=t}for(;O<0?s>e.to:s>=e.to;){if(i==this.ranges.length-1)return null;let t=this.ranges[++i];s+=t.from-e.to,e=t}return s}clipPos(t){if(t>=this.range.from&&t<this.range.to)return t;for(let O of this.ranges)if(O.to>t)return Math.max(t,O.from);return this.end}peek(t){let O,e,i=this.chunkOff+t;if(i>=0&&i<this.chunk.length)O=this.pos+t,e=this.chunk.charCodeAt(i);else{let i=this.resolveOffset(t,1);if(null==i)return-1;if(O=i,O>=this.chunk2Pos&&O<this.chunk2Pos+this.chunk2.length)e=this.chunk2.charCodeAt(O-this.chunk2Pos);else{let t=this.rangeIndex,i=this.range;for(;i.to<=O;)i=this.ranges[++t];this.chunk2=this.input.chunk(this.chunk2Pos=O),O+this.chunk2.length>i.to&&(this.chunk2=this.chunk2.slice(0,i.to-O)),e=this.chunk2.charCodeAt(0)}}return O>=this.token.lookAhead&&(this.token.lookAhead=O+1),e}acceptToken(t,O=0){let e=O?this.resolveOffset(O,-1):this.pos;if(null==e||e<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=t,this.token.end=e}acceptTokenTo(t,O){this.token.value=t,this.token.end=O}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:t,chunkPos:O}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=t,this.chunk2Pos=O,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let t=this.input.chunk(this.pos),O=this.pos+t.length;this.chunk=O>this.range.to?t.slice(0,this.range.to-this.pos):t,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(t=1){for(this.chunkOff+=t;this.pos+t>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();t-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=t,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(t,O){if(O?(this.token=O,O.start=t,O.lookAhead=t+1,O.value=O.extended=-1):this.token=v,this.pos!=t){if(this.pos=t,t==this.end)return this.setDone(),this;for(;t<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;t>=this.range.to;)this.range=this.ranges[++this.rangeIndex];t>=this.chunkPos&&t<this.chunkPos+this.chunk.length?this.chunkOff=t-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(t,O){if(t>=this.chunkPos&&O<=this.chunkPos+this.chunk.length)return this.chunk.slice(t-this.chunkPos,O-this.chunkPos);if(t>=this.chunk2Pos&&O<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(t-this.chunk2Pos,O-this.chunk2Pos);if(t>=this.range.from&&O<=this.range.to)return this.input.read(t,O);let e="";for(let i of this.ranges){if(i.from>=O)break;i.to>t&&(e+=this.input.read(Math.max(i.from,t),Math.min(i.to,O)))}return e}}class z{constructor(t,O){this.data=t,this.id=O}token(t,O){let{parser:e}=O.p;!function(t,O,e,i,s,n){let r=0,a=1<<i,{dialect:o}=e.p.parser;t:for(;a&t[r];){let e=t[r+1];for(let i=r+3;i<e;i+=2)if((t[i+1]&a)>0){let e=t[i];if(o.allows(e)&&(-1==O.token.value||O.token.value==e||b(e,O.token.value,s,n))){O.acceptToken(e);break}}let i=O.next,h=0,l=t[r+2];if(!(O.next<0&&l>h&&65535==t[e+3*l-3])){for(;h<l;){let s=h+l>>1,n=e+s+(s<<1),a=t[n],o=t[n+1]||65536;if(i<a)l=s;else{if(!(i>=o)){r=t[n+2],O.advance();continue t}h=s+1}}break}r=t[e+3*l-1]}}(this.data,t,O,this.id,e.data,e.tokenPrecTable)}}z.prototype.contextual=z.prototype.fallback=z.prototype.extend=!1,z.prototype.fallback=z.prototype.extend=!1;class X{constructor(t,O={}){this.token=t,this.contextual=!!O.contextual,this.fallback=!!O.fallback,this.extend=!!O.extend}}function R(t,O,e){for(let i,s=O;65535!=(i=t[s]);s++)if(i==e)return s-O;return-1}function b(t,O,e,i){let s=R(e,i,O);return s<0||R(e,i,t)<s}const W="undefined"!=typeof process&&process.env&&/\bparse\b/.test(process.env.LOG);let _=null;function U(t,O,e){let i=t.cursor(r.IncludeAnonymous);for(i.moveTo(O);;)if(!(e<0?i.childBefore(O):i.childAfter(O)))for(;;){if((e<0?i.to<O:i.from>O)&&!i.type.isError)return e<0?Math.max(0,Math.min(i.to-1,O-25)):Math.min(t.length,Math.max(i.from+1,O+25));if(e<0?i.prevSibling():i.nextSibling())break;if(!i.parent())return e<0?0:t.length}}class w{constructor(t,O){this.fragments=t,this.nodeSet=O,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let t=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(t){for(this.safeFrom=t.openStart?U(t.tree,t.from+t.offset,1)-t.offset:t.from,this.safeTo=t.openEnd?U(t.tree,t.to+t.offset,-1)-t.offset:t.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(t.tree),this.start.push(-t.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(t){if(t<this.nextStart)return null;for(;this.fragment&&this.safeTo<=t;)this.nextFragment();if(!this.fragment)return null;for(;;){let O=this.trees.length-1;if(O<0)return this.nextFragment(),null;let e=this.trees[O],i=this.index[O];if(i==e.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let r=e.children[i],a=this.start[O]+e.positions[i];if(a>t)return this.nextStart=a,null;if(r instanceof n){if(a==t){if(a<this.safeFrom)return null;let t=a+r.length;if(t<=this.safeTo){let O=r.prop(s.lookAhead);if(!O||t+O<this.fragment.to)return r}}this.index[O]++,a+r.length>=Math.max(this.safeFrom,t)&&(this.trees.push(r),this.start.push(a),this.index.push(0))}else this.index[O]++,this.nextStart=a+r.length}}}class V{constructor(t,O){this.stream=O,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=t.tokenizers.map((t=>new x))}getActions(t){let O=0,e=null,{parser:i}=t.p,{tokenizers:s}=i,n=i.stateSlot(t.state,3),r=t.curContext?t.curContext.hash:0,a=0;for(let i=0;i<s.length;i++){if(!(1<<i&n))continue;let o=s[i],h=this.tokens[i];if((!e||o.fallback)&&((o.contextual||h.start!=t.pos||h.mask!=n||h.context!=r)&&(this.updateCachedToken(h,o,t),h.mask=n,h.context=r),h.lookAhead>h.end+25&&(a=Math.max(h.lookAhead,a)),0!=h.value)){let i=O;if(h.extended>-1&&(O=this.addActions(t,h.extended,h.end,O)),O=this.addActions(t,h.value,h.end,O),!o.extend&&(e=h,O>i))break}}for(;this.actions.length>O;)this.actions.pop();return a&&t.setLookAhead(a),e||t.pos!=this.stream.end||(e=new x,e.value=t.p.parser.eofTerm,e.start=e.end=t.pos,O=this.addActions(t,e.value,e.end,O)),this.mainToken=e,this.actions}getMainToken(t){if(this.mainToken)return this.mainToken;let O=new x,{pos:e,p:i}=t;return O.start=e,O.end=Math.min(e+1,i.stream.end),O.value=e==i.stream.end?i.parser.eofTerm:0,O}updateCachedToken(t,O,e){let i=this.stream.clipPos(e.pos);if(O.token(this.stream.reset(i,t),e),t.value>-1){let{parser:O}=e.p;for(let i=0;i<O.specialized.length;i++)if(O.specialized[i]==t.value){let s=O.specializers[i](this.stream.read(t.start,t.end),e);if(s>=0&&e.p.parser.dialect.allows(s>>1)){1&s?t.extended=s>>1:t.value=s>>1;break}}}else t.value=0,t.end=this.stream.clipPos(i+1)}putAction(t,O,e,i){for(let O=0;O<i;O+=3)if(this.actions[O]==t)return i;return this.actions[i++]=t,this.actions[i++]=O,this.actions[i++]=e,i}addActions(t,O,e,i){let{state:s}=t,{parser:n}=t.p,{data:r}=n;for(let t=0;t<2;t++)for(let a=n.stateSlot(s,t?2:1);;a+=3){if(65535==r[a]){if(1!=r[a+1]){0==i&&2==r[a+1]&&(i=this.putAction(Y(r,a+2),O,e,i));break}a=Y(r,a+2)}r[a]==O&&(i=this.putAction(Y(r,a+1),O,e,i))}return i}}class G{constructor(t,O,e,i){this.parser=t,this.input=O,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 y(O,i),this.tokens=new V(t,this.stream),this.topTerm=t.top[1];let{from:s}=i[0];this.stacks=[m.start(this,t.top[0],s)],this.fragments=e.length&&this.stream.end-s>4*t.bufferLength?new w(e,t.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let t,O,e=this.stacks,i=this.minStackPos,s=this.stacks=[];if(this.bigReductionCount>300&&1==e.length){let[t]=e;for(;t.forceReduce()&&t.stack.length&&t.stack[t.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let n=0;n<e.length;n++){let r=e[n];for(;;){if(this.tokens.mainToken=null,r.pos>i)s.push(r);else{if(this.advanceStack(r,s,e))continue;{t||(t=[],O=[]),t.push(r);let e=this.tokens.getMainToken(r);O.push(e.value,e.end)}}break}}if(!s.length){let O=t&&function(t){let O=null;for(let e of t){let t=e.p.stoppedAt;(e.pos==e.p.stream.end||null!=t&&e.pos>t)&&e.p.parser.stateFlag(e.state,2)&&(!O||O.score<e.score)&&(O=e)}return O}(t);if(O)return W&&console.log("Finish with "+this.stackID(O)),this.stackToTree(O);if(this.parser.strict)throw W&&t&&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&&t){let e=null!=this.stoppedAt&&t[0].pos>this.stoppedAt?t[0]:this.runRecovery(t,O,s);if(e)return W&&console.log("Force-finish "+this.stackID(e)),this.stackToTree(e.forceAll())}if(this.recovering){let t=1==this.recovering?1:3*this.recovering;if(s.length>t)for(s.sort(((t,O)=>O.score-t.score));s.length>t;)s.pop();s.some((t=>t.reducePos>i))&&this.recovering--}else if(s.length>1){t:for(let t=0;t<s.length-1;t++){let O=s[t];for(let e=t+1;e<s.length;e++){let i=s[e];if(O.sameState(i)||O.buffer.length>500&&i.buffer.length>500){if(!((O.score-i.score||O.buffer.length-i.buffer.length)>0)){s.splice(t--,1);continue t}s.splice(e--,1)}}}s.length>12&&s.splice(12,s.length-12)}this.minStackPos=s[0].pos;for(let t=1;t<s.length;t++)s[t].pos<this.minStackPos&&(this.minStackPos=s[t].pos);return null}stopAt(t){if(null!=this.stoppedAt&&this.stoppedAt<t)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=t}advanceStack(t,O,e){let i=t.pos,{parser:r}=this,a=W?this.stackID(t)+" -> ":"";if(null!=this.stoppedAt&&i>this.stoppedAt)return t.forceReduce()?t:null;if(this.fragments){let O=t.curContext&&t.curContext.tracker.strict,e=O?t.curContext.hash:0;for(let o=this.fragments.nodeAt(i);o;){let i=this.parser.nodeSet.types[o.type.id]==o.type?r.getGoto(t.state,o.type.id):-1;if(i>-1&&o.length&&(!O||(o.prop(s.contextHash)||0)==e))return t.useNode(o,i),W&&console.log(a+this.stackID(t)+` (via reuse of ${r.getName(o.type.id)})`),!0;if(!(o instanceof n)||0==o.children.length||o.positions[0]>0)break;let h=o.children[0];if(!(h instanceof n&&0==o.positions[0]))break;o=h}}let o=r.stateSlot(t.state,4);if(o>0)return t.reduce(o),W&&console.log(a+this.stackID(t)+` (via always-reduce ${r.getName(65535&o)})`),!0;if(t.stack.length>=8400)for(;t.stack.length>6e3&&t.forceReduce(););let h=this.tokens.getActions(t);for(let s=0;s<h.length;){let n=h[s++],o=h[s++],l=h[s++],d=s==h.length||!e,Q=d?t:t.split(),c=this.tokens.mainToken;if(Q.apply(n,o,c?c.start:Q.pos,l),W&&console.log(a+this.stackID(Q)+` (via ${65536&n?`reduce of ${r.getName(65535&n)}`:"shift"} for ${r.getName(o)} @ ${i}${Q==t?"":", split"})`),d)return!0;Q.pos>i?O.push(Q):e.push(Q)}return!1}advanceFully(t,O){let e=t.pos;for(;;){if(!this.advanceStack(t,null,null))return!1;if(t.pos>e)return j(t,O),!0}}runRecovery(t,O,e){let i=null,s=!1;for(let n=0;n<t.length;n++){let r=t[n],a=O[n<<1],o=O[1+(n<<1)],h=W?this.stackID(r)+" -> ":"";if(r.deadEnd){if(s)continue;if(s=!0,r.restart(),W&&console.log(h+this.stackID(r)+" (restarted)"),this.advanceFully(r,e))continue}let l=r.split(),d=h;for(let t=0;l.forceReduce()&&t<10;t++){if(W&&console.log(d+this.stackID(l)+" (via force-reduce)"),this.advanceFully(l,e))break;W&&(d=this.stackID(l)+" -> ")}for(let t of r.recoverByInsert(a))W&&console.log(h+this.stackID(t)+" (via recover-insert)"),this.advanceFully(t,e);this.stream.end>r.pos?(o==r.pos&&(o++,a=0),r.recoverByDelete(a,o),W&&console.log(h+this.stackID(r)+` (via recover-delete ${this.parser.getName(a)})`),j(r,e)):(!i||i.score<r.score)&&(i=r)}return i}stackToTree(t){return t.close(),n.build({buffer:q.create(t),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:t.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(t){let O=(_||(_=new WeakMap)).get(t);return O||_.set(t,O=String.fromCodePoint(this.nextStackID++)),O+t}}function j(t,O){for(let e=0;e<O.length;e++){let i=O[e];if(i.pos==t.pos&&i.sameState(t))return void(O[e].score<t.score&&(O[e]=t))}O.push(t)}class Z{constructor(t,O,e){this.source=t,this.flags=O,this.disabled=e}allows(t){return!this.disabled||0==this.disabled[t]}}const E=t=>t;class A extends t{constructor(t){if(super(),this.wrappers=[],14!=t.version)throw new RangeError(`Parser version (${t.version}) doesn't match runtime version (14)`);let n=t.nodeNames.split(" ");this.minRepeatTerm=n.length;for(let O=0;O<t.repeatNodeCount;O++)n.push("");let r=Object.keys(t.topRules).map((O=>t.topRules[O][1])),a=[];for(let t=0;t<n.length;t++)a.push([]);function o(t,O,e){a[t].push([O,O.deserialize(String(e))])}if(t.nodeProps)for(let O of t.nodeProps){let t=O[0];"string"==typeof t&&(t=s[t]);for(let e=1;e<O.length;){let i=O[e++];if(i>=0)o(i,t,O[e++]);else{let s=O[e+-i];for(let n=-i;n>0;n--)o(O[e++],t,s);e++}}}this.nodeSet=new O(n.map(((O,i)=>e.define({name:i>=this.minRepeatTerm?void 0:O,id:i,props:a[i],top:r.indexOf(i)>-1,error:0==i,skipped:t.skippedNodes&&t.skippedNodes.indexOf(i)>-1})))),t.propSources&&(this.nodeSet=this.nodeSet.extend(...t.propSources)),this.strict=!1,this.bufferLength=i;let h=$(t.tokenData);this.context=t.context,this.specializerSpecs=t.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let t=0;t<this.specializerSpecs.length;t++)this.specialized[t]=this.specializerSpecs[t].term;this.specializers=this.specializerSpecs.map(C),this.states=$(t.states,Uint32Array),this.data=$(t.stateData),this.goto=$(t.goto),this.maxTerm=t.maxTerm,this.tokenizers=t.tokenizers.map((t=>"number"==typeof t?new z(h,t):t)),this.topRules=t.topRules,this.dialects=t.dialects||{},this.dynamicPrecedences=t.dynamicPrecedences||null,this.tokenPrecTable=t.tokenPrec,this.termNames=t.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(t,O,e){let i=new G(this,t,O,e);for(let s of this.wrappers)i=s(i,t,O,e);return i}getGoto(t,O,e=!1){let i=this.goto;if(O>=i[0])return-1;for(let s=i[O+1];;){let O=i[s++],n=1&O,r=i[s++];if(n&&e)return r;for(let e=s+(O>>1);s<e;s++)if(i[s]==t)return r;if(n)return-1}}hasAction(t,O){let e=this.data;for(let i=0;i<2;i++)for(let s,n=this.stateSlot(t,i?2:1);;n+=3){if(65535==(s=e[n])){if(1!=e[n+1]){if(2==e[n+1])return Y(e,n+2);break}s=e[n=Y(e,n+2)]}if(s==O||0==s)return Y(e,n+1)}return 0}stateSlot(t,O){return this.states[6*t+O]}stateFlag(t,O){return(this.stateSlot(t,0)&O)>0}validAction(t,O){return!!this.allActions(t,(t=>t==O||null))}allActions(t,O){let e=this.stateSlot(t,4),i=e?O(e):void 0;for(let e=this.stateSlot(t,1);null==i;e+=3){if(65535==this.data[e]){if(1!=this.data[e+1])break;e=Y(this.data,e+2)}i=O(Y(this.data,e+1))}return i}nextStates(t){let O=[];for(let e=this.stateSlot(t,1);;e+=3){if(65535==this.data[e]){if(1!=this.data[e+1])break;e=Y(this.data,e+2)}if(!(1&this.data[e+2])){let t=this.data[e+1];O.some(((O,e)=>1&e&&O==t))||O.push(this.data[e],t)}}return O}configure(t){let O=Object.assign(Object.create(A.prototype),this);if(t.props&&(O.nodeSet=this.nodeSet.extend(...t.props)),t.top){let e=this.topRules[t.top];if(!e)throw new RangeError(`Invalid top rule name ${t.top}`);O.top=e}return t.tokenizers&&(O.tokenizers=this.tokenizers.map((O=>{let e=t.tokenizers.find((t=>t.from==O));return e?e.to:O}))),t.specializers&&(O.specializers=this.specializers.slice(),O.specializerSpecs=this.specializerSpecs.map(((e,i)=>{let s=t.specializers.find((t=>t.from==e.external));if(!s)return e;let n=Object.assign(Object.assign({},e),{external:s.to});return O.specializers[i]=C(n),n}))),t.contextTracker&&(O.context=t.contextTracker),t.dialect&&(O.dialect=this.parseDialect(t.dialect)),null!=t.strict&&(O.strict=t.strict),t.wrap&&(O.wrappers=O.wrappers.concat(t.wrap)),null!=t.bufferLength&&(O.bufferLength=t.bufferLength),O}hasWrappers(){return this.wrappers.length>0}getName(t){return this.termNames?this.termNames[t]:String(t<=this.maxNode&&this.nodeSet.types[t].name||t)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(t){let O=this.dynamicPrecedences;return null==O?0:O[t]||0}parseDialect(t){let O=Object.keys(this.dialects),e=O.map((()=>!1));if(t)for(let i of t.split(" ")){let t=O.indexOf(i);t>=0&&(e[t]=!0)}let i=null;for(let t=0;t<O.length;t++)if(!e[t])for(let e,s=this.dialects[O[t]];65535!=(e=this.data[s++]);)(i||(i=new Uint8Array(this.maxTerm+1)))[e]=1;return new Z(t,e,i)}static deserialize(t){return new A(t)}}function Y(t,O){return t[O]|t[O+1]<<16}function C(t){if(t.external){let O=t.extend?1:0;return(e,i)=>t.external(e,i)<<1|O}return t.get}const F=10,N=new Set([25,49,50,263,65,130,56,57,238,62,63,72,73,77,60,61,151,152,155,112]);function I(t){return t==F||13==t}function J(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}const D=new X(((t,O)=>{let e;if(t.next<0)t.acceptToken(199);else if(O.context.flags&L)I(t.next)&&t.acceptToken(198,1);else if(((e=t.peek(-1))<0||I(e))&&O.canShift(197)){let O=0;for(;32==t.next||9==t.next;)t.advance(),O++;t.next!=F&&13!=t.next&&35!=t.next||t.acceptToken(197,-O)}else I(t.next)&&t.acceptToken(196,1)}),{contextual:!0}),B=new X(((t,O)=>{let e=O.context;if(e.flags)return;let i=t.peek(-1);if(i==F||13==i){let O=0,i=0;for(;;){if(32==t.next)O++;else{if(9!=t.next)break;O+=8-O%8}t.advance(),i++}O!=e.indent&&t.next!=F&&13!=t.next&&35!=t.next&&(O<e.indent?t.acceptToken(195,-i):t.acceptToken(194))}})),L=1,H=4,M=8,K=16,tt=32;function Ot(t,O,e){this.parent=t,this.indent=O,this.flags=e,this.hash=(t?t.hash+t.hash<<8:0)+O+(O<<4)+e+(e<<6)}const et=new Ot(null,0,0);const it=new Map([[241,0],[242,H],[243,M],[244,M|H],[245,K],[246,K|H],[247,K|M],[248,K|M|H],[249,tt],[250,tt|H],[251,tt|M],[252,tt|M|H],[253,tt|K],[254,tt|K|H],[255,tt|K|M],[256,tt|K|M|H]].map((([t,O])=>[t,2|O]))),st=new class{constructor(t){this.start=t.start,this.shift=t.shift||E,this.reduce=t.reduce||E,this.reuse=t.reuse||E,this.hash=t.hash||(()=>0),this.strict=!1!==t.strict}}({start:et,reduce:(t,O,e,i)=>t.flags&L&&N.has(O)||(71==O||72==O)&&2&t.flags?t.parent:t,shift:(t,O,e,i)=>194==O?new Ot(t,function(t){let O=0;for(let e=0;e<t.length;e++)O+=9==t.charCodeAt(e)?8-O%8:1;return O}(i.read(i.pos,e.pos)),0):195==O?t.parent:24==O||55==O||59==O||3==O?new Ot(t,0,L):it.has(O)?new Ot(t,0,it.get(O)|t.flags&L):t,hash:t=>t.hash}),nt=new X((t=>{for(let O=0;O<5;O++){if(t.next!="print".charCodeAt(O))return;t.advance()}if(!/\w/.test(String.fromCharCode(t.next)))for(let O=0;;O++){let e=t.peek(O);if(32!=e&&9!=e)return void(40!=e&&46!=e&&e!=F&&13!=e&&35!=e&&t.acceptToken(1))}})),rt=new X(((t,O)=>{let{flags:e}=O.context,i=e&H?34:39,s=(e&M)>0,n=!(e&K),r=(e&tt)>0,a=t.pos;for(;!(t.next<0);)if(r&&123==t.next){if(123!=t.peek(1)){if(t.pos==a)return void t.acceptToken(3,1);break}t.advance(2)}else{if(n&&92==t.next){if(t.pos==a){t.advance();let O=t.next;return O>=0&&(t.advance(),at(t,O)),void t.acceptToken(2)}break}if(92==t.next&&!n&&t.peek(1)>-1)t.advance(2);else{if(t.next==i&&(!s||t.peek(1)==i&&t.peek(2)==i)){if(t.pos==a)return void t.acceptToken(201,s?3:1);break}if(t.next==F){if(s)t.advance();else if(t.pos==a)return void t.acceptToken(201);break}t.advance()}}t.pos>a&&t.acceptToken(200)}));function at(t,O){if(111==O)for(let O=0;O<2&&t.next>=48&&t.next<=55;O++)t.advance();else if(120==O)for(let O=0;O<2&&J(t.next);O++)t.advance();else if(117==O)for(let O=0;O<4&&J(t.next);O++)t.advance();else if(85==O)for(let O=0;O<8&&J(t.next);O++)t.advance();else if(78==O&&123==t.next){for(t.advance();t.next>=0&&125!=t.next&&39!=t.next&&34!=t.next&&t.next!=F;)t.advance();125==t.next&&t.advance()}}const ot=a({'async "*" "**" FormatConversion FormatSpec':o.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield match case":o.controlKeyword,"in not and or is del":o.operatorKeyword,"from def class global nonlocal lambda":o.definitionKeyword,import:o.moduleKeyword,"with as print":o.keyword,Boolean:o.bool,None:o.null,VariableName:o.variableName,"CallExpression/VariableName":o.function(o.variableName),"FunctionDefinition/VariableName":o.function(o.definition(o.variableName)),"ClassDefinition/VariableName":o.definition(o.className),PropertyName:o.propertyName,"CallExpression/MemberExpression/PropertyName":o.function(o.propertyName),Comment:o.lineComment,Number:o.number,String:o.string,FormatString:o.special(o.string),Escape:o.escape,UpdateOp:o.updateOperator,"ArithOp!":o.arithmeticOperator,BitOp:o.bitwiseOperator,CompareOp:o.compareOperator,AssignOp:o.definitionOperator,Ellipsis:o.punctuation,At:o.meta,"( )":o.paren,"[ ]":o.squareBracket,"{ }":o.brace,".":o.derefOperator,", ;":o.separator}),ht={__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},lt=A.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>rO#KrQdO,5>rO#K}QdO,5>qO#L`QdO,5>qOOQS1G1Y1G1YOOQS,5;p,5;pOOQV<<Jc<<JcO#LhQdO1G1dOOQS7+)T7+)TP#LmQdO'#FwO#L}QdO1G2OO#MbQdO1G2OO#MrQdO1G2OP#M}QdO'#FxO#N[QdO7+)VO#NlQdO7+)VO#NlQdO7+)VO#NtQdO7+)VO$ UQdO7+(|O8vQdO7+(|OOQSAN>VAN>VO$ oQdO<<LmOOQSAN>cAN>cO0rQdO1G1|O$!PQtO1G1|P$!ZQdO'#FvOOQS1G2R1G2RP$!hQdO'#F{O$!uQdO7+)jO$#`QdO,5>gOOOO-E9z-E9zOOOW<<MT<<MTO$#nQdO7+(fOOQSAN?[AN?[OOQS7+'t7+'tO$$XQdO<<M[OOQS,5<q,5<qO$$jQdO1G4XOOQS-E:T-E:TOOQVAN?lAN?lOOQV1G2_1G2_O4iQdOAN?qO$$xQgOAN?qOOQVAN?xAN?xO4iQdOAN?xOOQV<<JR<<JRO4iQdOAN?rO4iQdO7+'{OOQV7+'{7+'{O1XQdO7+'{OOQVAN?rAN?rOOQS7+'|7+'|O$(sQdO<<MbOOQS1G4^1G4^O0rQdO1G4^OOQS,5<w,5<wO$)QQdO1G4]OOQS-E:Z-E:ZOOQU'#G_'#G_O$)cQfO7+'OO$)nQdO'#F_O$*uQdO7+'jO$+VQdO7+'jOOQS7+'j7+'jO$+bQdO<<LqO$+rQdO<<LqO$+rQdO<<LqO$+zQdO'#H^OOQS<<Lh<<LhO$,UQdO<<LhOOQS7+'h7+'hOOQS'#D|'#D|OOOO1G4R1G4RO$,oQdO1G4RO$,wQdO1G4RP!=hQdO'#GVOOQVG25]G25]O4iQdOG25]OOQVG25dG25dOOQVG25^G25^OOQV<<Kg<<KgO4iQdO<<KgOOQS7+)x7+)xP$-SQdO'#G]OOQU-E:]-E:]OOQV<<Jj<<JjO$-vQtO'#FaOOQS'#Fc'#FcO$.WQdO'#FbO$.xQdO'#FbOOQS'#Fb'#FbO$.}QdO'#IYO$)nQdO'#FiO$)nQdO'#FiO$/fQdO'#FjO$)nQdO'#FkO$/mQdO'#IZOOQS'#IZ'#IZO$0[QdO,5;yOOQS<<KU<<KUO$0dQdO<<KUO$0tQdOANB]O$1UQdOANB]O$1^QdO'#H_OOQS'#H_'#H_O1sQdO'#DcO$1wQdO,5=xOOQSANBSANBSOOOO7+)m7+)mO$2`QdO7+)mOOQVLD*wLD*wOOQVANARANARO5uQ!fO'#GaO$2hQtO,5<SO$)nQdO'#FmOOQS,5<W,5<WOOQS'#Fd'#FdO$3YQdO,5;|O$3_QdO,5;|OOQS'#Fg'#FgO$)nQdO'#G`O$4PQdO,5<QO$4kQdO,5>tO$4{QdO,5>tO1XQdO,5<PO$5^QdO,5<TO$5cQdO,5<TO$)nQdO'#I[O$5hQdO'#I[O$5mQdO,5<UOOQS,5<V,5<VO0rQdO'#FpOOQU1G1e1G1eO4iQdO1G1eOOQSAN@pAN@pO$5rQdOG27wO$6SQdO,59}OOQS1G3d1G3dOOOO<<MX<<MXOOQS,5<{,5<{OOQS-E:_-E:_O$6XQtO'#FaO$6`QdO'#I]O$6nQdO'#I]O$6vQdO,5<XOOQS1G1h1G1hO$6{QdO1G1hO$7QQdO,5<zOOQS-E:^-E:^O$7lQdO,5=OO$8TQdO1G4`OOQS-E:b-E:bOOQS1G1k1G1kOOQS1G1o1G1oO$8eQdO,5>vO$)nQdO,5>vOOQS1G1p1G1pOOQS,5<[,5<[OOQU7+'P7+'PO$+zQdO1G/iO$)nQdO,5<YO$8sQdO,5>wO$8zQdO,5>wOOQS1G1s1G1sOOQS7+'S7+'SP$)nQdO'#GdO$9SQdO1G4bO$9^QdO1G4bO$9fQdO1G4bOOQS7+%T7+%TO$9tQdO1G1tO$:SQtO'#FaO$:ZQdO,5<}OOQS,5<},5<}O$:iQdO1G4cOOQS-E:a-E:aO$)nQdO,5<|O$:pQdO,5<|O$:uQdO7+)|OOQS-E:`-E:`O$;PQdO7+)|O$)nQdO,5<ZP$)nQdO'#GcO$;XQdO1G2hO$)nQdO1G2hP$;gQdO'#GbO$;nQdO<<MhO$;xQdO1G1uO$<WQdO7+(SO8vQdO'#C}O8vQdO,59bO8vQdO,59bO8vQdO,59bO$<fQtO,5=`O8vQdO1G.|O0rQdO1G/XO0rQdO7+$pP$<yQdO'#GOO'vQdO'#GtO$=WQdO,59bO$=]QdO,59bO$=dQdO,59mO$=iQdO1G/UO1sQdO'#DRO8vQdO,59j",stateData:"$>S~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~O{#{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$-bO%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$)zOh.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$)nOz/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$-bOz/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$)nOz/zO#[/OO%j.yO!['Oa~Og'Pa~P$)nOz0SOg'Pa~Oa0UO!['Oi~P$)zOz0WO!['Oi~Oz0WO#[/OO%j.yO!['Oi~O#[/OO%j.yOg$biz$bi~O%z0ZO~P$-bO#[/OO%j.yOg%Vaz%Va~Og'Pi~P$)nO{0^O~Oa0UO!['Oq~P$)zOz0`O!['Oq~O#[/OO%j.yOz%Ui![%Ui~Oa0UO~P$)zOa0UO!['Oy~P$)zO#[/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:"!=j'QPPPPPP'RP'Z*s+[+t,_,y-fP.SP'Z.r.r'ZPPP'Z2[PPPPPP2[5PPP5PP7b7k=sPP=v>h>kPP'Z'ZPP>zPP'Z'ZPP'Z'Z'Z'Z'Z?O?w'ZP?zP@QDXGuGyPG|HWH['ZPPPH_Hk'RP'R'RP'RP'RP'RP'RP'R'R'RP'RPP'RPP'RP'RPHqH}IVPI^IdPI^PI^I^PPPI^PKrPK{LVL]KrPI^LfPI^PLmLsPLwM]MzNeLwLwNkNxLwLwLwLw! ^! d! g! l! o! y!!P!!]!!o!!u!#P!#V!#s!#y!$P!$Z!$a!$g!$y!%T!%Z!%a!%k!%q!%w!%}!&T!&Z!&e!&k!&u!&{!'U!'[!'k!'s!'}!(UPPPPPPPPPPP!([!(_!(e!(n!(x!)TPPPPPPPPPPPP!-u!/Z!3^!6oPP!6w!7W!7a!8Y!8P!8c!8i!8l!8o!8r!8z!9jPPPPPPPPPPPPPPPPP!9m!9q!9wP!:]!:a!:m!:v!;S!;j!;m!;p!;v!;|!<S!<VP!<_!<h!=d!=g]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,v0g}!dQ#c#p$R$d$p$u%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!P!eQ#c#p$R$d$p$u$v%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!R!fQ#c#p$R$d$p$u$v$w%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!T!gQ#c#p$R$d$p$u$v$w$x%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!V!hQ#c#p$R$d$p$u$v$w$x$y%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!Z!hQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g'}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&eVOYZ[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/V/Z/s0c0d0e0f0h0i0j0k0n0r%oXOYZ[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/V/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!Y!jQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gQ&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)aQ,^*RR-e,_X#}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#}&dQOYZ[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/V/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+QR0g0lQ!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,uQ.S-fR/q/VhUOn#d#g$j%|&_'w(p(r)t,P%U!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/V/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!Z!lQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gR%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:st,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:[ot],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:[nt,B,D,rt,0,1,2,3,4],topRules:{Script:[0,5]},specialized:[{term:221,get:t=>ht[t]||-1}],tokenPrec:7668}),dt=new u,Qt=new Set(["Script","Body","FunctionDefinition","ClassDefinition","LambdaExpression","ForStatement","MatchClause"]);function ct(t){return(O,e,i)=>{if(i)return!1;let s=O.node.getChild("VariableName");return s&&e(s,t),!0}}const pt={FunctionDefinition:ct("function"),ClassDefinition:ct("class"),ForStatement(t,O,e){if(e)for(let e=t.node.firstChild;e;e=e.nextSibling)if("VariableName"==e.name)O(e,"variable");else if("in"==e.name)break},ImportStatement(t,O){var e,i;let{node:s}=t,n="from"==(null===(e=s.firstChild)||void 0===e?void 0:e.name);for(let t=s.getChild("import");t;t=t.nextSibling)"VariableName"==t.name&&"as"!=(null===(i=t.nextSibling)||void 0===i?void 0:i.name)&&O(t,n?"variable":"namespace")},AssignStatement(t,O){for(let e=t.node.firstChild;e;e=e.nextSibling)if("VariableName"==e.name)O(e,"variable");else if(":"==e.name||"AssignOp"==e.name)break},ParamList(t,O){for(let e=null,i=t.node.firstChild;i;i=i.nextSibling)"VariableName"!=i.name||e&&/\*|AssignOp/.test(e.name)||O(i,"variable"),e=i},CapturePattern:ct("variable"),AsPattern:ct("variable"),__proto__:null};function ft(t,O){let e=dt.get(O);if(e)return e;let i=[],s=!0;function n(O,e){let s=t.sliceString(O.from,O.to);i.push({label:s,type:e})}return O.cursor(r.IncludeAnonymous).iterate((O=>{if(O.name){let t=pt[O.name];if(t&&t(O,n,s)||!s&&Qt.has(O.name))return!1;s=!1}else if(O.to-O.from>8192){for(let e of ft(t,O.node))i.push(e);return!1}})),dt.set(O,i),i}const ut=/^[\w\xa1-\uffff][\w\d\xa1-\uffff]*$/,Tt=["String","FormatString","Comment","PropertyName"];function gt(t){let O=l(t.state).resolveInner(t.pos,-1);if(Tt.indexOf(O.name)>-1)return null;let e="VariableName"==O.name||O.to-O.from<20&&ut.test(t.state.sliceDoc(O.from,O.to));if(!e&&!t.explicit)return null;let i=[];for(let e=O;e;e=e.parent)Qt.has(e.name)&&(i=i.concat(ft(t.state.doc,e)));return{options:i,from:e?O.from:t.pos,validFor:ut}}const St=["__annotations__","__builtins__","__debug__","__doc__","__import__","__name__","__loader__","__package__","__spec__","False","None","True"].map((t=>({label:t,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((t=>({label:t,type:"type"})))).concat(["bool","bytearray","bytes","classmethod","complex","float","frozenset","int","list","map","memoryview","object","range","set","staticmethod","str","super","tuple","type"].map((t=>({label:t,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((t=>({label:t,type:"function"})))),mt=[S("def ${name}(${params}):\n\t${}",{label:"def",detail:"function",type:"keyword"}),S("for ${name} in ${collection}:\n\t${}",{label:"for",detail:"loop",type:"keyword"}),S("while ${}:\n\t${}",{label:"while",detail:"loop",type:"keyword"}),S("try:\n\t${}\nexcept ${error}:\n\t${}",{label:"try",detail:"/ except block",type:"keyword"}),S("if ${}:\n\t\n",{label:"if",detail:"block",type:"keyword"}),S("if ${}:\n\t${}\nelse:\n\t${}",{label:"if",detail:"/ else block",type:"keyword"}),S("class ${name}:\n\tdef __init__(self, ${params}):\n\t\t\t${}",{label:"class",detail:"definition",type:"keyword"}),S("import ${module}",{label:"import",detail:"statement",type:"keyword"}),S("from ${module} import ${names}",{label:"from",detail:"import",type:"keyword"})],kt=T(Tt,g(St.concat(mt)));function Pt(t){let{node:O,pos:e}=t,i=t.lineIndent(e,-1),s=null;for(;;){let n=O.childBefore(e);if(!n)break;if("Comment"==n.name)e=n.from;else if("Body"==n.name||"MatchBody"==n.name)t.baseIndentFor(n)+t.unit<=i&&(s=n),O=n;else if("MatchClause"==n.name)O=n;else{if(!n.type.is("Statement"))break;O=n}}return s}function qt(t,O){let e=t.baseIndentFor(O),i=t.lineAt(t.pos,-1),s=i.from+i.text.length;return/^\s*($|#)/.test(i.text)&&t.node.to<s+100&&!/\S/.test(t.state.sliceDoc(s,t.node.to))&&t.lineIndent(t.pos,-1)<=e||/^\s*(else:|elif |except |finally:|case\s+[^=:]+:)/.test(t.textAfter)&&t.lineIndent(t.pos,-1)>e?null:e+t.unit}const $t=h.define({name:"python",parser:lt.configure({props:[Q.add({Body:t=>{var O;return null!==(O=qt(t,/^\s*(#|$)/.test(t.textAfter)&&Pt(t)||t.node))&&void 0!==O?O:t.continue()},MatchBody:t=>{var O;return null!==(O=qt(t,Pt(t)||t.node))&&void 0!==O?O:t.continue()},IfStatement:t=>/^\s*(else:|elif )/.test(t.textAfter)?t.baseIndent:t.continue(),"ForStatement WhileStatement":t=>/^\s*else:/.test(t.textAfter)?t.baseIndent:t.continue(),TryStatement:t=>/^\s*(except[ :]|finally:|else:)/.test(t.textAfter)?t.baseIndent:t.continue(),MatchStatement:t=>/^\s*case /.test(t.textAfter)?t.baseIndent+t.unit:t.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":p({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":p({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":p({closing:"]"}),MemberExpression:t=>t.baseIndent+t.unit,"String FormatString":()=>null,Script:t=>{var O;let e=Pt(t);return null!==(O=e&&qt(t,e))&&void 0!==O?O:t.continue()}}),c.add({"ArrayExpression DictionaryExpression SetExpression TupleExpression":f,Body:(t,O)=>({from:t.from+1,to:t.to-(t.to==O.doc.length?0:1)}),"String FormatString":(t,O)=>({from:O.doc.lineAt(t.from).to,to:t.to})})]}),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:|case\s+[^:]*:?)$/}});function xt(){return new d($t,[$t.data.of({autocomplete:gt}),$t.data.of({autocomplete:kt})])}export{kt as globalCompletion,gt as localCompletionSource,xt as python,$t as pythonLanguage};
2
- //# sourceMappingURL=codemirror_lang-python-DCbIUspM.js.map
@@ -1,2 +0,0 @@
1
- import{StateEffect as t,Facet as e,StateField as r,countColumn as n,EditorState as i,RangeSetBuilder as s,RangeSet as o,Prec as l,combineConfig as a}from"./codemirror_state-1UkzIAPK.js";import{V as h,E as f,q as u,a as c,S as d,D as p,G as g,W as m,l as b}from"./codemirror_view-Gaaf0HCU.js";const k=1024;let x=0;class y{constructor(t,e){this.from=t,this.to=e}}class w{constructor(t={}){this.id=x++,this.perNode=!!t.perNode,this.deserialize=t.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(t){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return"function"!=typeof t&&(t=A.match(t)),e=>{let r=t(e);return void 0===r?null:[this,r]}}}w.closedBy=new w({deserialize:t=>t.split(" ")}),w.openedBy=new w({deserialize:t=>t.split(" ")}),w.group=new w({deserialize:t=>t.split(" ")}),w.isolate=new w({deserialize:t=>{if(t&&"rtl"!=t&&"ltr"!=t&&"auto"!=t)throw new RangeError("Invalid value for isolate: "+t);return t||"auto"}}),w.contextHash=new w({perNode:!0}),w.lookAhead=new w({perNode:!0}),w.mounted=new w({perNode:!0});class v{constructor(t,e,r){this.tree=t,this.overlay=e,this.parser=r}static get(t){return t&&t.props&&t.props[w.mounted.id]}}const S=Object.create(null);class A{constructor(t,e,r,n=0){this.name=t,this.props=e,this.id=r,this.flags=n}static define(t){let e=t.props&&t.props.length?Object.create(null):S,r=(t.top?1:0)|(t.skipped?2:0)|(t.error?4:0)|(null==t.name?8:0),n=new A(t.name||"",e,t.id,r);if(t.props)for(let r of t.props)if(Array.isArray(r)||(r=r(n)),r){if(r[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");e[r[0].id]=r[1]}return n}prop(t){return this.props[t.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(t){if("string"==typeof t){if(this.name==t)return!0;let e=this.prop(w.group);return!!e&&e.indexOf(t)>-1}return this.id==t}static match(t){let e=Object.create(null);for(let r in t)for(let n of r.split(" "))e[n]=t[r];return t=>{for(let r=t.prop(w.group),n=-1;n<(r?r.length:0);n++){let i=e[n<0?t.name:r[n]];if(i)return i}}}}A.none=new A("",Object.create(null),0,8);class C{constructor(t){this.types=t;for(let e=0;e<t.length;e++)if(t[e].id!=e)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...t){let e=[];for(let r of this.types){let n=null;for(let e of t){let t=e(r);t&&(n||(n=Object.assign({},r.props)),n[t[0].id]=t[1])}e.push(n?new A(r.name,n,r.id,r.flags):r)}return new C(e)}}const N=new WeakMap,P=new WeakMap;var I;!function(t){t[t.ExcludeBuffers=1]="ExcludeBuffers",t[t.IncludeAnonymous=2]="IncludeAnonymous",t[t.IgnoreMounts=4]="IgnoreMounts",t[t.IgnoreOverlays=8]="IgnoreOverlays"}(I||(I={}));class T{constructor(t,e,r,n,i){if(this.type=t,this.children=e,this.positions=r,this.length=n,this.props=null,i&&i.length){this.props=Object.create(null);for(let[t,e]of i)this.props["number"==typeof t?t:t.id]=e}}toString(){let t=v.get(this);if(t&&!t.overlay)return t.tree.toString();let e="";for(let t of this.children){let r=t.toString();r&&(e&&(e+=","),e+=r)}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(t=0){return new F(this.topNode,t)}cursorAt(t,e=0,r=0){let n=N.get(this)||this.topNode,i=new F(n);return i.moveTo(t,e),N.set(this,i._tree),i}get topNode(){return new L(this,0,0,null)}resolve(t,e=0){let r=M(N.get(this)||this.topNode,t,e,!1);return N.set(this,r),r}resolveInner(t,e=0){let r=M(P.get(this)||this.topNode,t,e,!0);return P.set(this,r),r}resolveStack(t,e=0){return function(t,e,r){let n=t.resolveInner(e,r),i=null;for(let t=n instanceof L?n:n.context.parent;t;t=t.parent)if(t.index<0){let s=t.parent;(i||(i=[n])).push(s.resolve(e,r)),t=s}else{let s=v.get(t.tree);if(s&&s.overlay&&s.overlay[0].from<=e&&s.overlay[s.overlay.length-1].to>=e){let o=new L(s.tree,s.overlay[0].from+t.from,-1,t);(i||(i=[n])).push(M(o,e,r,!1))}}return i?W(i):n}(this,t,e)}iterate(t){let{enter:e,leave:r,from:n=0,to:i=this.length}=t,s=t.mode||0,o=(s&I.IncludeAnonymous)>0;for(let t=this.cursor(s|I.IncludeAnonymous);;){let s=!1;if(t.from<=i&&t.to>=n&&(!o&&t.type.isAnonymous||!1!==e(t))){if(t.firstChild())continue;s=!0}for(;s&&r&&(o||!t.type.isAnonymous)&&r(t),!t.nextSibling();){if(!t.parent())return;s=!0}}}prop(t){return t.perNode?this.props?this.props[t.id]:void 0:this.type.prop(t)}get propValues(){let t=[];if(this.props)for(let e in this.props)t.push([+e,this.props[e]]);return t}balance(t={}){return this.children.length<=8?this:H(A.none,this.children,this.positions,0,this.children.length,0,this.length,((t,e,r)=>new T(this.type,t,e,r,this.propValues)),t.makeTree||((t,e,r)=>new T(A.none,t,e,r)))}static build(t){return function(t){var e;let{buffer:r,nodeSet:n,maxBufferLength:i=k,reused:s=[],minRepeatType:o=n.types.length}=t,l=Array.isArray(r)?new O(r,r.length):r,a=n.types,h=0,f=0;function u(t,e,r,k,x,y){let{id:w,start:v,end:S,size:A}=l,C=f,N=h;for(;A<0;){if(l.next(),-1==A){let e=s[w];return r.push(e),void k.push(v-t)}if(-3==A)return void(h=w);if(-4==A)return void(f=w);throw new RangeError(`Unrecognized record size: ${A}`)}let P,I,T=a[w],O=v-t;if(S-v<=i&&(I=m(l.pos-e,x))){let e=new Uint16Array(I.size-I.skip),r=l.pos-I.size,i=e.length;for(;l.pos>r;)i=b(I.start,e,i);P=new B(e,S-I.start,n),O=I.start-t}else{let t=l.pos-A;l.next();let e=[],r=[],n=w>=o?w:-1,s=0,a=S;for(;l.pos>t;)n>=0&&l.id==n&&l.size>=0?(l.end<=a-i&&(p(e,r,v,s,l.end,a,n,C,N),s=e.length,a=l.end),l.next()):y>2500?c(v,t,e,r):u(v,t,e,r,n,y+1);if(n>=0&&s>0&&s<e.length&&p(e,r,v,s,v,a,n,C,N),e.reverse(),r.reverse(),n>-1&&s>0){let t=d(T,N);P=H(T,e,r,0,e.length,0,S-v,t,t)}else P=g(T,e,r,S-v,C-S,N)}r.push(P),k.push(O)}function c(t,e,r,s){let o=[],a=0,h=-1;for(;l.pos>e;){let{id:t,start:e,end:r,size:n}=l;if(n>4)l.next();else{if(h>-1&&e<h)break;h<0&&(h=r-i),o.push(t,e,r),a++,l.next()}}if(a){let e=new Uint16Array(4*a),i=o[o.length-2];for(let t=o.length-3,r=0;t>=0;t-=3)e[r++]=o[t],e[r++]=o[t+1]-i,e[r++]=o[t+2]-i,e[r++]=r;r.push(new B(e,o[2]-i,n)),s.push(i-t)}}function d(t,e){return(r,n,i)=>{let s,o,l=0,a=r.length-1;if(a>=0&&(s=r[a])instanceof T){if(!a&&s.type==t&&s.length==i)return s;(o=s.prop(w.lookAhead))&&(l=n[a]+s.length+o)}return g(t,r,n,i,l,e)}}function p(t,e,r,i,s,o,l,a,h){let f=[],u=[];for(;t.length>i;)f.push(t.pop()),u.push(e.pop()+r-s);t.push(g(n.types[l],f,u,o-s,a-o,h)),e.push(s-r)}function g(t,e,r,n,i,s,o){if(s){let t=[w.contextHash,s];o=o?[t].concat(o):[t]}if(i>25){let t=[w.lookAhead,i];o=o?[t].concat(o):[t]}return new T(t,e,r,n,o)}function m(t,e){let r=l.fork(),n=0,s=0,a=0,h=r.end-i,f={size:0,start:0,skip:0};t:for(let i=r.pos-t;r.pos>i;){let t=r.size;if(r.id==e&&t>=0){f.size=n,f.start=s,f.skip=a,a+=4,n+=4,r.next();continue}let l=r.pos-t;if(t<0||l<i||r.start<h)break;let u=r.id>=o?4:0,c=r.start;for(r.next();r.pos>l;){if(r.size<0){if(-3!=r.size)break t;u+=4}else r.id>=o&&(u+=4);r.next()}s=c,n+=t,a+=u}return(e<0||n==t)&&(f.size=n,f.start=s,f.skip=a),f.size>4?f:void 0}function b(t,e,r){let{id:n,start:i,end:s,size:a}=l;if(l.next(),a>=0&&n<o){let o=r;if(a>4){let n=l.pos-(a-4);for(;l.pos>n;)r=b(t,e,r)}e[--r]=o,e[--r]=s-t,e[--r]=i-t,e[--r]=n}else-3==a?h=n:-4==a&&(f=n);return r}let x=[],y=[];for(;l.pos>0;)u(t.start||0,t.bufferStart||0,x,y,-1,0);let v=null!==(e=t.length)&&void 0!==e?e:x.length?y[0]+x[0].length:0;return new T(a[t.topID],x.reverse(),y.reverse(),v)}(t)}}T.empty=new T(A.none,[],[],0);class O{constructor(t,e){this.buffer=t,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 O(this.buffer,this.index)}}class B{constructor(t,e,r){this.buffer=t,this.length=e,this.set=r}get type(){return A.none}toString(){let t=[];for(let e=0;e<this.buffer.length;)t.push(this.childString(e)),e=this.buffer[e+3];return t.join(",")}childString(t){let e=this.buffer[t],r=this.buffer[t+3],n=this.set.types[e],i=n.name;if(/\W/.test(i)&&!n.isError&&(i=JSON.stringify(i)),r==(t+=4))return i;let s=[];for(;t<r;)s.push(this.childString(t)),t=this.buffer[t+3];return i+"("+s.join(",")+")"}findChild(t,e,r,n,i){let{buffer:s}=this,o=-1;for(let l=t;l!=e&&!(_(i,n,s[l+1],s[l+2])&&(o=l,r>0));l=s[l+3]);return o}slice(t,e,r){let n=this.buffer,i=new Uint16Array(e-t),s=0;for(let o=t,l=0;o<e;){i[l++]=n[o++],i[l++]=n[o++]-r;let e=i[l++]=n[o++]-r;i[l++]=n[o++]-t,s=Math.max(s,e)}return new B(i,s,this.set)}}function _(t,e,r,n){switch(t){case-2:return r<e;case-1:return n>=e&&r<e;case 0:return r<e&&n>e;case 1:return r<=e&&n>e;case 2:return n>e;case 4:return!0}}function M(t,e,r,n){for(var i;t.from==t.to||(r<1?t.from>=e:t.from>e)||(r>-1?t.to<=e:t.to<e);){let e=!n&&t instanceof L&&t.index<0?null:t.parent;if(!e)return t;t=e}let s=n?0:I.IgnoreOverlays;if(n)for(let n=t,o=n.parent;o;n=o,o=n.parent)n instanceof L&&n.index<0&&(null===(i=o.enter(e,r,s))||void 0===i?void 0:i.from)!=n.from&&(t=o);for(;;){let n=t.enter(e,r,s);if(!n)return t;t=n}}class D{cursor(t=0){return new F(this,t)}getChild(t,e=null,r=null){let n=E(this,t,e,r);return n.length?n[0]:null}getChildren(t,e=null,r=null){return E(this,t,e,r)}resolve(t,e=0){return M(this,t,e,!1)}resolveInner(t,e=0){return M(this,t,e,!0)}matchContext(t){return R(this.parent,t)}enterUnfinishedNodesBefore(t){let e=this.childBefore(t),r=this;for(;e;){let t=e.lastChild;if(!t||t.to!=e.to)break;t.type.isError&&t.from==t.to?(r=e,e=t.prevSibling):e=t}return r}get node(){return this}get next(){return this.parent}}class L extends D{constructor(t,e,r,n){super(),this._tree=t,this.from=e,this.index=r,this._parent=n}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(t,e,r,n,i=0){for(let s=this;;){for(let{children:o,positions:l}=s._tree,a=e>0?o.length:-1;t!=a;t+=e){let a=o[t],h=l[t]+s.from;if(_(n,r,h,h+a.length))if(a instanceof B){if(i&I.ExcludeBuffers)continue;let o=a.findChild(0,a.buffer.length,e,r-h,n);if(o>-1)return new j(new z(s,a,t,h),null,o)}else if(i&I.IncludeAnonymous||!a.type.isAnonymous||V(a)){let o;if(!(i&I.IgnoreMounts)&&(o=v.get(a))&&!o.overlay)return new L(o.tree,h,t,s);let l=new L(a,h,t,s);return i&I.IncludeAnonymous||!l.type.isAnonymous?l:l.nextChild(e<0?a.children.length-1:0,e,r,n)}}if(i&I.IncludeAnonymous||!s.type.isAnonymous)return null;if(t=s.index>=0?s.index+e:e<0?-1:s._parent._tree.children.length,s=s._parent,!s)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(t){return this.nextChild(0,1,t,2)}childBefore(t){return this.nextChild(this._tree.children.length-1,-1,t,-2)}enter(t,e,r=0){let n;if(!(r&I.IgnoreOverlays)&&(n=v.get(this._tree))&&n.overlay){let r=t-this.from;for(let{from:t,to:i}of n.overlay)if((e>0?t<=r:t<r)&&(e<0?i>=r:i>r))return new L(n.tree,n.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,t,e,r)}nextSignificantParent(){let t=this;for(;t.type.isAnonymous&&t._parent;)t=t._parent;return t}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 E(t,e,r,n){let i=t.cursor(),s=[];if(!i.firstChild())return s;if(null!=r)for(let t=!1;!t;)if(t=i.type.is(r),!i.nextSibling())return s;for(;;){if(null!=n&&i.type.is(n))return s;if(i.type.is(e)&&s.push(i.node),!i.nextSibling())return null==n?s:[]}}function R(t,e,r=e.length-1){for(let n=t;r>=0;n=n.parent){if(!n)return!1;if(!n.type.isAnonymous){if(e[r]&&e[r]!=n.name)return!1;r--}}return!0}class z{constructor(t,e,r,n){this.parent=t,this.buffer=e,this.index=r,this.start=n}}class j extends D{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(t,e,r){super(),this.context=t,this._parent=e,this.index=r,this.type=t.buffer.set.types[t.buffer.buffer[r]]}child(t,e,r){let{buffer:n}=this.context,i=n.findChild(this.index+4,n.buffer[this.index+3],t,e-this.context.start,r);return i<0?null:new j(this.context,this,i)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(t){return this.child(1,t,2)}childBefore(t){return this.child(-1,t,-2)}enter(t,e,r=0){if(r&I.ExcludeBuffers)return null;let{buffer:n}=this.context,i=n.findChild(this.index+4,n.buffer[this.index+3],e>0?1:-1,t-this.context.start,e);return i<0?null:new j(this.context,this,i)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(t){return this._parent?null:this.context.parent.nextChild(this.context.index+t,t,0,4)}get nextSibling(){let{buffer:t}=this.context,e=t.buffer[this.index+3];return e<(this._parent?t.buffer[this._parent.index+3]:t.buffer.length)?new j(this.context,this._parent,e):this.externalSibling(1)}get prevSibling(){let{buffer:t}=this.context,e=this._parent?this._parent.index+4:0;return this.index==e?this.externalSibling(-1):new j(this.context,this._parent,t.findChild(e,this.index,-1,0,4))}get tree(){return null}toTree(){let t=[],e=[],{buffer:r}=this.context,n=this.index+4,i=r.buffer[this.index+3];if(i>n){let s=r.buffer[this.index+1];t.push(r.slice(n,i,s)),e.push(0)}return new T(this.type,t,e,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function W(t){if(!t.length)return null;let e=0,r=t[0];for(let n=1;n<t.length;n++){let i=t[n];(i.from>r.from||i.to<r.to)&&(r=i,e=n)}let n=r instanceof L&&r.index<0?null:r.parent,i=t.slice();return n?i[e]=n:i.splice(e,1),new U(i,r)}class U{constructor(t,e){this.heads=t,this.node=e}get next(){return W(this.heads)}}class F{get name(){return this.type.name}constructor(t,e=0){if(this.mode=e,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,t instanceof L)this.yieldNode(t);else{this._tree=t.context.parent,this.buffer=t.context;for(let e=t._parent;e;e=e._parent)this.stack.unshift(e.index);this.bufferNode=t,this.yieldBuf(t.index)}}yieldNode(t){return!!t&&(this._tree=t,this.type=t.type,this.from=t.from,this.to=t.to,!0)}yieldBuf(t,e){this.index=t;let{start:r,buffer:n}=this.buffer;return this.type=e||n.set.types[n.buffer[t]],this.from=r+n.buffer[t+1],this.to=r+n.buffer[t+2],!0}yield(t){return!!t&&(t instanceof L?(this.buffer=null,this.yieldNode(t)):(this.buffer=t.context,this.yieldBuf(t.index,t.type)))}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(t,e,r){if(!this.buffer)return this.yield(this._tree.nextChild(t<0?this._tree._tree.children.length-1:0,t,e,r,this.mode));let{buffer:n}=this.buffer,i=n.findChild(this.index+4,n.buffer[this.index+3],t,e-this.buffer.start,r);return!(i<0)&&(this.stack.push(this.index),this.yieldBuf(i))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(t){return this.enterChild(1,t,2)}childBefore(t){return this.enterChild(-1,t,-2)}enter(t,e,r=this.mode){return this.buffer?!(r&I.ExcludeBuffers)&&this.enterChild(1,t,e):this.yield(this._tree.enter(t,e,r))}parent(){if(!this.buffer)return this.yieldNode(this.mode&I.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let t=this.mode&I.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(t)}sibling(t){if(!this.buffer)return!!this._tree._parent&&this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+t,t,0,4,this.mode));let{buffer:e}=this.buffer,r=this.stack.length-1;if(t<0){let t=r<0?0:this.stack[r]+4;if(this.index!=t)return this.yieldBuf(e.findChild(t,this.index,-1,0,4))}else{let t=e.buffer[this.index+3];if(t<(r<0?e.buffer.length:e.buffer[this.stack[r]+3]))return this.yieldBuf(t)}return r<0&&this.yield(this.buffer.parent.nextChild(this.buffer.index+t,t,0,4,this.mode))}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(t){let e,r,{buffer:n}=this;if(n){if(t>0){if(this.index<n.buffer.buffer.length)return!1}else for(let t=0;t<this.index;t++)if(n.buffer.buffer[t+3]<this.index)return!1;({index:e,parent:r}=n)}else({index:e,_parent:r}=this._tree);for(;r;({index:e,_parent:r}=r))if(e>-1)for(let n=e+t,i=t<0?-1:r._tree.children.length;n!=i;n+=t){let t=r._tree.children[n];if(this.mode&I.IncludeAnonymous||t instanceof B||!t.type.isAnonymous||V(t))return!1}return!0}move(t,e){if(e&&this.enterChild(t,0,4))return!0;for(;;){if(this.sibling(t))return!0;if(this.atLastNode(t)||!this.parent())return!1}}next(t=!0){return this.move(1,t)}prev(t=!0){return this.move(-1,t)}moveTo(t,e=0){for(;(this.from==this.to||(e<1?this.from>=t:this.from>t)||(e>-1?this.to<=t:this.to<t))&&this.parent(););for(;this.enterChild(1,t,e););return this}get node(){if(!this.buffer)return this._tree;let t=this.bufferNode,e=null,r=0;if(t&&t.context==this.buffer)t:for(let n=this.index,i=this.stack.length;i>=0;){for(let s=t;s;s=s._parent)if(s.index==n){if(n==this.index)return s;e=s,r=i+1;break t}n=this.stack[--i]}for(let t=r;t<this.stack.length;t++)e=new j(this.buffer,e,this.stack[t]);return this.bufferNode=new j(this.buffer,e,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(t,e){for(let r=0;;){let n=!1;if(this.type.isAnonymous||!1!==t(this)){if(this.firstChild()){r++;continue}this.type.isAnonymous||(n=!0)}for(;;){if(n&&e&&e(this),n=this.type.isAnonymous,!r)return;if(this.nextSibling())break;this.parent(),r--,n=!0}}}matchContext(t){if(!this.buffer)return R(this.node.parent,t);let{buffer:e}=this.buffer,{types:r}=e.set;for(let n=t.length-1,i=this.stack.length-1;n>=0;i--){if(i<0)return R(this._tree,t,n);let s=r[e.buffer[this.stack[i]]];if(!s.isAnonymous){if(t[n]&&t[n]!=s.name)return!1;n--}}return!0}}function V(t){return t.children.some((t=>t instanceof B||!t.type.isAnonymous||V(t)))}const $=new WeakMap;function q(t,e){if(!t.isAnonymous||e instanceof B||e.type!=t)return 1;let r=$.get(e);if(null==r){r=1;for(let n of e.children){if(n.type!=t||!(n instanceof T)){r=1;break}r+=q(t,n)}$.set(e,r)}return r}function H(t,e,r,n,i,s,o,l,a){let h=0;for(let r=n;r<i;r++)h+=q(t,e[r]);let f=Math.ceil(1.5*h/8),u=[],c=[];return function e(r,n,i,o,l){for(let h=i;h<o;){let i=h,d=n[h],p=q(t,r[h]);for(h++;h<o;h++){let e=q(t,r[h]);if(p+e>=f)break;p+=e}if(h==i+1){if(p>f){let t=r[i];e(t.children,t.positions,0,t.children.length,n[i]+l);continue}u.push(r[i])}else{let e=n[h-1]+r[h-1].length-d;u.push(H(t,r,n,i,h,d,e,null,a))}c.push(d+l-s)}}(e,r,n,i,0),(l||a)(u,c,o)}class G{constructor(){this.map=new WeakMap}setBuffer(t,e,r){let n=this.map.get(t);n||this.map.set(t,n=new Map),n.set(e,r)}getBuffer(t,e){let r=this.map.get(t);return r&&r.get(e)}set(t,e){t instanceof j?this.setBuffer(t.context.buffer,t.index,e):t instanceof L&&this.map.set(t.tree,e)}get(t){return t instanceof j?this.getBuffer(t.context.buffer,t.index):t instanceof L?this.map.get(t.tree):void 0}cursorSet(t,e){t.buffer?this.setBuffer(t.buffer.buffer,t.index,e):this.map.set(t.tree,e)}cursorGet(t){return t.buffer?this.getBuffer(t.buffer.buffer,t.index):this.map.get(t.tree)}}class J{constructor(t,e,r,n,i=!1,s=!1){this.from=t,this.to=e,this.tree=r,this.offset=n,this.open=(i?1:0)|(s?2:0)}get openStart(){return(1&this.open)>0}get openEnd(){return(2&this.open)>0}static addTree(t,e=[],r=!1){let n=[new J(0,t.length,t,0,!1,r)];for(let r of e)r.to>t.length&&n.push(r);return n}static applyChanges(t,e,r=128){if(!e.length)return t;let n=[],i=1,s=t.length?t[0]:null;for(let o=0,l=0,a=0;;o++){let h=o<e.length?e[o]:null,f=h?h.fromA:1e9;if(f-l>=r)for(;s&&s.from<f;){let e=s;if(l>=e.from||f<=e.to||a){let t=Math.max(e.from,l)-a,r=Math.min(e.to,f)-a;e=t>=r?null:new J(t,r,e.tree,e.offset+a,o>0,!!h)}if(e&&n.push(e),s.to>f)break;s=i<t.length?t[i++]:null}if(!h)break;l=h.toA,a=h.toA-h.toB}return n}}class K{startParse(t,e,r){return"string"==typeof t&&(t=new Q(t)),r=r?r.length?r.map((t=>new y(t.from,t.to))):[new y(0,0)]:[new y(0,t.length)],this.createParse(t,e||[],r)}parse(t,e,r){let n=this.startParse(t,e,r);for(;;){let t=n.advance();if(t)return t}}}class Q{constructor(t){this.string=t}get length(){return this.string.length}chunk(t){return this.string.slice(t)}get lineChunks(){return!1}read(t,e){return this.string.slice(t,e)}}new w({perNode:!0});let X=0;class Y{constructor(t,e,r,n){this.name=t,this.set=e,this.base=r,this.modified=n,this.id=X++}toString(){let{name:t}=this;for(let e of this.modified)e.name&&(t=`${e.name}(${t})`);return t}static define(t,e){let r="string"==typeof t?t:"?";if(t instanceof Y&&(e=t),null==e?void 0:e.base)throw new Error("Can not derive from a modified tag");let n=new Y(r,[],null,[]);if(n.set.push(n),e)for(let t of e.set)n.set.push(t);return n}static defineModifier(t){let e=new tt(t);return t=>t.modified.indexOf(e)>-1?t:tt.get(t.base||t,t.modified.concat(e).sort(((t,e)=>t.id-e.id)))}}let Z=0;class tt{constructor(t){this.name=t,this.instances=[],this.id=Z++}static get(t,e){if(!e.length)return t;let r=e[0].instances.find((r=>{return r.base==t&&(n=e,i=r.modified,n.length==i.length&&n.every(((t,e)=>t==i[e])));var n,i}));if(r)return r;let n=[],i=new Y(t.name,n,t,e);for(let t of e)t.instances.push(i);let s=function(t){let e=[[]];for(let r=0;r<t.length;r++)for(let n=0,i=e.length;n<i;n++)e.push(e[n].concat(t[r]));return e.sort(((t,e)=>e.length-t.length))}(e);for(let e of t.set)if(!e.modified.length)for(let t of s)n.push(tt.get(e,t));return i}}function et(t){let e=Object.create(null);for(let r in t){let n=t[r];Array.isArray(n)||(n=[n]);for(let t of r.split(" "))if(t){let r=[],i=2,s=t;for(let e=0;;){if("..."==s&&e>0&&e+3==t.length){i=1;break}let n=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(s);if(!n)throw new RangeError("Invalid path: "+t);if(r.push("*"==n[0]?"":'"'==n[0][0]?JSON.parse(n[0]):n[0]),e+=n[0].length,e==t.length)break;let o=t[e++];if(e==t.length&&"!"==o){i=0;break}if("/"!=o)throw new RangeError("Invalid path: "+t);s=t.slice(e)}let o=r.length-1,l=r[o];if(!l)throw new RangeError("Invalid path: "+t);let a=new nt(n,i,o>0?r.slice(0,o):null);e[l]=a.sort(e[l])}}return rt.add(e)}const rt=new w;class nt{constructor(t,e,r,n){this.tags=t,this.mode=e,this.context=r,this.next=n}get opaque(){return 0==this.mode}get inherit(){return 1==this.mode}sort(t){return!t||t.depth<this.depth?(this.next=t,this):(t.next=this.sort(t.next),t)}get depth(){return this.context?this.context.length:0}}function it(t,e){let r=Object.create(null);for(let e of t)if(Array.isArray(e.tag))for(let t of e.tag)r[t.id]=e.class;else r[e.tag.id]=e.class;let{scope:n,all:i=null}=e||{};return{style:t=>{let e=i;for(let n of t)for(let t of n.set){let n=r[t.id];if(n){e=e?e+" "+n:n;break}}return e},scope:n}}function st(t,e,r,n=0,i=t.length){let s=new ot(n,Array.isArray(e)?e:[e],r);s.highlightRange(t.cursor(),n,i,"",s.highlighters),s.flush(i)}nt.empty=new nt([],2,null);class ot{constructor(t,e,r){this.at=t,this.highlighters=e,this.span=r,this.class=""}startSpan(t,e){e!=this.class&&(this.flush(t),t>this.at&&(this.at=t),this.class=e)}flush(t){t>this.at&&this.class&&this.span(this.at,t,this.class)}highlightRange(t,e,r,n,i){let{type:s,from:o,to:l}=t;if(o>=r||l<=e)return;s.isTop&&(i=this.highlighters.filter((t=>!t.scope||t.scope(s))));let a=n,h=function(t){let e=t.type.prop(rt);for(;e&&e.context&&!t.matchContext(e.context);)e=e.next;return e||null}(t)||nt.empty,f=function(t,e){let r=null;for(let n of t){let t=n.style(e);t&&(r=r?r+" "+t:t)}return r}(i,h.tags);if(f&&(a&&(a+=" "),a+=f,1==h.mode&&(n+=(n?" ":"")+f)),this.startSpan(Math.max(e,o),a),h.opaque)return;let u=t.tree&&t.tree.prop(w.mounted);if(u&&u.overlay){let s=t.node.enter(u.overlay[0].from+o,1),h=this.highlighters.filter((t=>!t.scope||t.scope(u.tree.type))),f=t.firstChild();for(let c=0,d=o;;c++){let p=c<u.overlay.length?u.overlay[c]:null,g=p?p.from+o:l,m=Math.max(e,d),b=Math.min(r,g);if(m<b&&f)for(;t.from<b&&(this.highlightRange(t,m,b,n,i),this.startSpan(Math.min(b,t.to),a),!(t.to>=g)&&t.nextSibling()););if(!p||g>r)break;d=p.to+o,d>e&&(this.highlightRange(s.cursor(),Math.max(e,p.from+o),Math.min(r,d),"",h),this.startSpan(Math.min(r,d),a))}f&&t.parent()}else if(t.firstChild()){u&&(n="");do{if(!(t.to<=e)){if(t.from>=r)break;this.highlightRange(t,e,r,n,i),this.startSpan(Math.min(r,t.to),a)}}while(t.nextSibling());t.parent()}}}const lt=Y.define,at=lt(),ht=lt(),ft=lt(ht),ut=lt(ht),ct=lt(),dt=lt(ct),pt=lt(ct),gt=lt(),mt=lt(gt),bt=lt(),kt=lt(),xt=lt(),yt=lt(xt),wt=lt(),vt={comment:at,lineComment:lt(at),blockComment:lt(at),docComment:lt(at),name:ht,variableName:lt(ht),typeName:ft,tagName:lt(ft),propertyName:ut,attributeName:lt(ut),className:lt(ht),labelName:lt(ht),namespace:lt(ht),macroName:lt(ht),literal:ct,string:dt,docString:lt(dt),character:lt(dt),attributeValue:lt(dt),number:pt,integer:lt(pt),float:lt(pt),bool:lt(ct),regexp:lt(ct),escape:lt(ct),color:lt(ct),url:lt(ct),keyword:bt,self:lt(bt),null:lt(bt),atom:lt(bt),unit:lt(bt),modifier:lt(bt),operatorKeyword:lt(bt),controlKeyword:lt(bt),definitionKeyword:lt(bt),moduleKeyword:lt(bt),operator:kt,derefOperator:lt(kt),arithmeticOperator:lt(kt),logicOperator:lt(kt),bitwiseOperator:lt(kt),compareOperator:lt(kt),updateOperator:lt(kt),definitionOperator:lt(kt),typeOperator:lt(kt),controlOperator:lt(kt),punctuation:xt,separator:lt(xt),bracket:yt,angleBracket:lt(yt),squareBracket:lt(yt),paren:lt(yt),brace:lt(yt),content:gt,heading:mt,heading1:lt(mt),heading2:lt(mt),heading3:lt(mt),heading4:lt(mt),heading5:lt(mt),heading6:lt(mt),contentSeparator:lt(gt),list:lt(gt),quote:lt(gt),emphasis:lt(gt),strong:lt(gt),link:lt(gt),monospace:lt(gt),strikethrough:lt(gt),inserted:lt(),deleted:lt(),changed:lt(),invalid:lt(),meta:wt,documentMeta:lt(wt),annotation:lt(wt),processingInstruction:lt(wt),definition:Y.defineModifier("definition"),constant:Y.defineModifier("constant"),function:Y.defineModifier("function"),standard:Y.defineModifier("standard"),local:Y.defineModifier("local"),special:Y.defineModifier("special")};for(let t in vt){let e=vt[t];e instanceof Y&&(e.name=t)}var St;it([{tag:vt.link,class:"tok-link"},{tag:vt.heading,class:"tok-heading"},{tag:vt.emphasis,class:"tok-emphasis"},{tag:vt.strong,class:"tok-strong"},{tag:vt.keyword,class:"tok-keyword"},{tag:vt.atom,class:"tok-atom"},{tag:vt.bool,class:"tok-bool"},{tag:vt.url,class:"tok-url"},{tag:vt.labelName,class:"tok-labelName"},{tag:vt.inserted,class:"tok-inserted"},{tag:vt.deleted,class:"tok-deleted"},{tag:vt.literal,class:"tok-literal"},{tag:vt.string,class:"tok-string"},{tag:vt.number,class:"tok-number"},{tag:[vt.regexp,vt.escape,vt.special(vt.string)],class:"tok-string2"},{tag:vt.variableName,class:"tok-variableName"},{tag:vt.local(vt.variableName),class:"tok-variableName tok-local"},{tag:vt.definition(vt.variableName),class:"tok-variableName tok-definition"},{tag:vt.special(vt.variableName),class:"tok-variableName2"},{tag:vt.definition(vt.propertyName),class:"tok-propertyName tok-definition"},{tag:vt.typeName,class:"tok-typeName"},{tag:vt.namespace,class:"tok-namespace"},{tag:vt.className,class:"tok-className"},{tag:vt.macroName,class:"tok-macroName"},{tag:vt.propertyName,class:"tok-propertyName"},{tag:vt.operator,class:"tok-operator"},{tag:vt.comment,class:"tok-comment"},{tag:vt.meta,class:"tok-meta"},{tag:vt.invalid,class:"tok-invalid"},{tag:vt.punctuation,class:"tok-punctuation"}]);const At=new w;function Ct(t){return e.define({combine:t?e=>e.concat(t):void 0})}const Nt=new w;class Pt{constructor(t,e,r=[],n=""){this.data=t,this.name=n,i.prototype.hasOwnProperty("tree")||Object.defineProperty(i.prototype,"tree",{get(){return Ot(this)}}),this.parser=e,this.extension=[Wt.of(this),i.languageData.of(((t,e,r)=>{let n=It(t,e,r),i=n.type.prop(At);if(!i)return[];let s=t.facet(i),o=n.type.prop(Nt);if(o){let i=n.resolve(e-n.from,r);for(let e of o)if(e.test(i,t)){let r=t.facet(e.facet);return"replace"==e.type?r:r.concat(s)}}return s}))].concat(r)}isActiveAt(t,e,r=-1){return It(t,e,r).type.prop(At)==this.data}findRegions(t){let e=t.facet(Wt);if((null==e?void 0:e.data)==this.data)return[{from:0,to:t.doc.length}];if(!e||!e.allowsNesting)return[];let r=[],n=(t,e)=>{if(t.prop(At)==this.data)return void r.push({from:e,to:e+t.length});let i=t.prop(w.mounted);if(i){if(i.tree.prop(At)==this.data){if(i.overlay)for(let t of i.overlay)r.push({from:t.from+e,to:t.to+e});else r.push({from:e,to:e+t.length});return}if(i.overlay){let t=r.length;if(n(i.tree,i.overlay[0].from+e),r.length>t)return}}for(let r=0;r<t.children.length;r++){let i=t.children[r];i instanceof T&&n(i,t.positions[r]+e)}};return n(Ot(t),0),r}get allowsNesting(){return!0}}function It(t,e,r){let n=t.facet(Wt),i=Ot(t).topNode;if(!n||n.allowsNesting)for(let t=i;t;t=t.enter(e,r,I.ExcludeBuffers))t.type.isTop&&(i=t);return i}Pt.setState=t.define();class Tt extends Pt{constructor(t,e,r){super(t,e,[],r),this.parser=e}static define(t){let e=Ct(t.languageData);return new Tt(e,t.parser.configure({props:[At.add((t=>t.isTop?e:void 0))]}),t.name)}configure(t,e){return new Tt(this.data,this.parser.configure(t),e||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function Ot(t){let e=t.field(Pt.state,!1);return e?e.tree:T.empty}function Bt(t,e,r=50){var n;let i=null===(n=t.field(Pt.state,!1))||void 0===n?void 0:n.context;if(!i)return null;let s=i.viewport;i.updateViewport({from:0,to:e});let o=i.isDone(e)||i.work(r,e)?i.tree:null;return i.updateViewport(s),o}class _t{constructor(t){this.doc=t,this.cursorPos=0,this.string="",this.cursor=t.iter()}get length(){return this.doc.length}syncTo(t){return this.string=this.cursor.next(t-this.cursorPos).value,this.cursorPos=t+this.string.length,this.cursorPos-this.string.length}chunk(t){return this.syncTo(t),this.string}get lineChunks(){return!0}read(t,e){let r=this.cursorPos-this.string.length;return t<r||e>=this.cursorPos?this.doc.sliceString(t,e):this.string.slice(t-r,e-r)}}let Mt=null;class Dt{constructor(t,e,r=[],n,i,s,o,l){this.parser=t,this.state=e,this.fragments=r,this.tree=n,this.treeLen=i,this.viewport=s,this.skipped=o,this.scheduleOn=l,this.parse=null,this.tempSkipped=[]}static create(t,e,r){return new Dt(t,e,[],T.empty,0,r,[],null)}startParse(){return this.parser.startParse(new _t(this.state.doc),this.fragments)}work(t,e){return null!=e&&e>=this.state.doc.length&&(e=void 0),this.tree!=T.empty&&this.isDone(null!=e?e:this.state.doc.length)?(this.takeTree(),!0):this.withContext((()=>{var r;if("number"==typeof t){let e=Date.now()+t;t=()=>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 n=this.parse.advance();if(n){if(this.fragments=this.withoutTempSkipped(J.addTree(n,this.fragments,null!=this.parse.stoppedAt)),this.treeLen=null!==(r=this.parse.stoppedAt)&&void 0!==r?r:this.state.doc.length,this.tree=n,this.parse=null,!(this.treeLen<(null!=e?e:this.state.doc.length)))return!0;this.parse=this.startParse()}if(t())return!1}}))}takeTree(){let t,e;this.parse&&(t=this.parse.parsedPos)>=this.treeLen&&((null==this.parse.stoppedAt||this.parse.stoppedAt>t)&&this.parse.stopAt(t),this.withContext((()=>{for(;!(e=this.parse.advance()););})),this.treeLen=t,this.tree=e,this.fragments=this.withoutTempSkipped(J.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(t){let e=Mt;Mt=this;try{return t()}finally{Mt=e}}withoutTempSkipped(t){for(let e;e=this.tempSkipped.pop();)t=Lt(t,e.from,e.to);return t}changes(t,e){let{fragments:r,tree:n,treeLen:i,viewport:s,skipped:o}=this;if(this.takeTree(),!t.empty){let e=[];if(t.iterChangedRanges(((t,r,n,i)=>e.push({fromA:t,toA:r,fromB:n,toB:i}))),r=J.applyChanges(r,e),n=T.empty,i=0,s={from:t.mapPos(s.from,-1),to:t.mapPos(s.to,1)},this.skipped.length){o=[];for(let e of this.skipped){let r=t.mapPos(e.from,1),n=t.mapPos(e.to,-1);r<n&&o.push({from:r,to:n})}}}return new Dt(this.parser,e,r,n,i,s,o,this.scheduleOn)}updateViewport(t){if(this.viewport.from==t.from&&this.viewport.to==t.to)return!1;this.viewport=t;let e=this.skipped.length;for(let e=0;e<this.skipped.length;e++){let{from:r,to:n}=this.skipped[e];r<t.to&&n>t.from&&(this.fragments=Lt(this.fragments,r,n),this.skipped.splice(e--,1))}return!(this.skipped.length>=e)&&(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(t,e){this.skipped.push({from:t,to:e})}static getSkippingParser(t){return new class extends K{createParse(e,r,n){let i=n[0].from,s=n[n.length-1].to;return{parsedPos:i,advance(){let e=Mt;if(e){for(let t of n)e.tempSkipped.push(t);t&&(e.scheduleOn=e.scheduleOn?Promise.all([e.scheduleOn,t]):t)}return this.parsedPos=s,new T(A.none,[],[],s-i)},stoppedAt:null,stopAt(){}}}}}isDone(t){t=Math.min(t,this.state.doc.length);let e=this.fragments;return this.treeLen>=t&&e.length&&0==e[0].from&&e[0].to>=t}static get(){return Mt}}function Lt(t,e,r){return J.applyChanges(t,[{fromA:e,toA:r,fromB:e,toB:r}])}class Et{constructor(t){this.context=t,this.tree=t.tree}apply(t){if(!t.docChanged&&this.tree==this.context.tree)return this;let e=this.context.changes(t.changes,t.state),r=this.context.treeLen==t.startState.doc.length?void 0:Math.max(t.changes.mapPos(this.context.treeLen),e.viewport.to);return e.work(20,r)||e.takeTree(),new Et(e)}static init(t){let e=Math.min(3e3,t.doc.length),r=Dt.create(t.facet(Wt).parser,t,{from:0,to:e});return r.work(20,e)||r.takeTree(),new Et(r)}}Pt.state=r.define({create:Et.init,update(t,e){for(let t of e.effects)if(t.is(Pt.setState))return t.value;return e.startState.facet(Wt)!=e.state.facet(Wt)?Et.init(e.state):t.apply(e)}});let Rt=t=>{let e=setTimeout((()=>t()),500);return()=>clearTimeout(e)};"undefined"!=typeof requestIdleCallback&&(Rt=t=>{let e=-1,r=setTimeout((()=>{e=requestIdleCallback(t,{timeout:400})}),100);return()=>e<0?clearTimeout(r):cancelIdleCallback(e)});const zt="undefined"!=typeof navigator&&(null===(St=navigator.scheduling)||void 0===St?void 0:St.isInputPending)?()=>navigator.scheduling.isInputPending():null,jt=h.fromClass(class{constructor(t){this.view=t,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(t){let e=this.view.state.field(Pt.state).context;(e.updateViewport(t.view.viewport)||this.view.viewport.to>e.treeLen)&&this.scheduleWork(),(t.docChanged||t.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(e)}scheduleWork(){if(this.working)return;let{state:t}=this.view,e=t.field(Pt.state);e.tree==e.context.tree&&e.context.isDone(t.doc.length)||(this.working=Rt(this.work))}work(t){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:r,viewport:{to:n}}=this.view,i=r.field(Pt.state);if(i.tree==i.context.tree&&i.context.isDone(n+1e5))return;let s=Date.now()+Math.min(this.chunkBudget,100,t&&!zt?Math.max(25,t.timeRemaining()-5):1e9),o=i.context.treeLen<n&&r.doc.length>n+1e3,l=i.context.work((()=>zt&&zt()||Date.now()>s),n+(o?0:1e5));this.chunkBudget-=Date.now()-e,(l||this.chunkBudget<=0)&&(i.context.takeTree(),this.view.dispatch({effects:Pt.setState.of(new Et(i.context))})),this.chunkBudget>0&&(!l||o)&&this.scheduleWork(),this.checkAsyncSchedule(i.context)}checkAsyncSchedule(t){t.scheduleOn&&(this.workScheduled++,t.scheduleOn.then((()=>this.scheduleWork())).catch((t=>b(this.view.state,t))).then((()=>this.workScheduled--)),t.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Wt=e.define({combine:t=>t.length?t[0]:null,enables:t=>[Pt.state,jt,f.contentAttributes.compute([t],(e=>{let r=e.facet(t);return r&&r.name?{"data-language":r.name}:{}}))]});class Ut{constructor(t,e=[]){this.language=t,this.support=e,this.extension=[t,e]}}class Ft{constructor(t,e,r,n,i,s=void 0){this.name=t,this.alias=e,this.extensions=r,this.filename=n,this.loadFunc=i,this.support=s,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then((t=>this.support=t),(t=>{throw this.loading=null,t})))}static of(t){let{load:e,support:r}=t;if(!e){if(!r)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");e=()=>Promise.resolve(r)}return new Ft(t.name,(t.alias||[]).concat(t.name).map((t=>t.toLowerCase())),t.extensions||[],t.filename,e,r)}static matchFilename(t,e){for(let r of t)if(r.filename&&r.filename.test(e))return r;let r=/\.([^.]+)$/.exec(e);if(r)for(let e of t)if(e.extensions.indexOf(r[1])>-1)return e;return null}static matchLanguageName(t,e,r=!0){e=e.toLowerCase();for(let r of t)if(r.alias.some((t=>t==e)))return r;if(r)for(let r of t)for(let t of r.alias){let n=e.indexOf(t);if(n>-1&&(t.length>2||!/\w/.test(e[n-1])&&!/\w/.test(e[n+t.length])))return r}return null}}const Vt=e.define(),$t=e.define({combine:t=>{if(!t.length)return" ";let e=t[0];if(!e||/\S/.test(e)||Array.from(e).some((t=>t!=e[0])))throw new Error("Invalid indent unit: "+JSON.stringify(t[0]));return e}});function qt(t){let e=t.facet($t);return 9==e.charCodeAt(0)?t.tabSize*e.length:e.length}function Ht(t,e){let r="",n=t.tabSize,i=t.facet($t)[0];if("\t"==i){for(;e>=n;)r+="\t",e-=n;i=" "}for(let t=0;t<e;t++)r+=i;return r}function Gt(t,e){t instanceof i&&(t=new Jt(t));for(let r of t.state.facet(Vt)){let n=r(t,e);if(void 0!==n)return n}let r=Ot(t.state);return r.length>=e?function(t,e,r){let n=e.resolveStack(r),i=e.resolveInner(r,-1).resolve(r,0).enterUnfinishedNodesBefore(r);if(i!=n.node){let t=[];for(let e=i;e&&!(e.from<n.node.from||e.to>n.node.to||e.from==n.node.from&&e.type==n.node.type);e=e.parent)t.push(e);for(let e=t.length-1;e>=0;e--)n={node:t[e],next:n}}return Qt(n,t,r)}(t,r,e):null}class Jt{constructor(t,e={}){this.state=t,this.options=e,this.unit=qt(t)}lineAt(t,e=1){let r=this.state.doc.lineAt(t),{simulateBreak:n,simulateDoubleBreak:i}=this.options;return null!=n&&n>=r.from&&n<=r.to?i&&n==t?{text:"",from:t}:(e<0?n<t:n<=t)?{text:r.text.slice(n-r.from),from:n}:{text:r.text.slice(0,n-r.from),from:r.from}:r}textAfterPos(t,e=1){if(this.options.simulateDoubleBreak&&t==this.options.simulateBreak)return"";let{text:r,from:n}=this.lineAt(t,e);return r.slice(t-n,Math.min(r.length,t+100-n))}column(t,e=1){let{text:r,from:n}=this.lineAt(t,e),i=this.countColumn(r,t-n),s=this.options.overrideIndentation?this.options.overrideIndentation(n):-1;return s>-1&&(i+=s-this.countColumn(r,r.search(/\S|$/))),i}countColumn(t,e=t.length){return n(t,this.state.tabSize,e)}lineIndent(t,e=1){let{text:r,from:n}=this.lineAt(t,e),i=this.options.overrideIndentation;if(i){let t=i(n);if(t>-1)return t}return this.countColumn(r,r.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const Kt=new w;function Qt(t,e,r){for(let n=t;n;n=n.next){let t=Xt(n.node);if(t)return t(Zt.create(e,r,n))}return 0}function Xt(t){let e=t.type.prop(Kt);if(e)return e;let r,n=t.firstChild;if(n&&(r=n.type.prop(w.closedBy))){let e=t.lastChild,n=e&&r.indexOf(e.name)>-1;return t=>re(t,!0,1,void 0,n&&!function(t){return t.pos==t.options.simulateBreak&&t.options.simulateDoubleBreak}(t)?e.from:void 0)}return null==t.parent?Yt:null}function Yt(){return 0}class Zt extends Jt{constructor(t,e,r){super(t.state,t.options),this.base=t,this.pos=e,this.context=r}get node(){return this.context.node}static create(t,e,r){return new Zt(t,e,r)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(t){let e=this.state.doc.lineAt(t.from);for(;;){let r=t.resolve(e.from);for(;r.parent&&r.parent.from==r.from;)r=r.parent;if(te(r,t))break;e=this.state.doc.lineAt(r.from)}return this.lineIndent(e.from)}continue(){return Qt(this.context.next,this.base,this.pos)}}function te(t,e){for(let r=e;r;r=r.parent)if(t==r)return!0;return!1}function ee({closing:t,align:e=!0,units:r=1}){return n=>re(n,e,r,t)}function re(t,e,r,n,i){let s=t.textAfter,o=s.match(/^\s*/)[0].length,l=n&&s.slice(o,o+n.length)==n||i==t.pos+o,a=e?function(t){let e=t.node,r=e.childAfter(e.from),n=e.lastChild;if(!r)return null;let i=t.options.simulateBreak,s=t.state.doc.lineAt(r.from),o=null==i||i<=s.from?s.to:Math.min(s.to,i);for(let t=r.to;;){let i=e.childAfter(t);if(!i||i==n)return null;if(!i.type.isSkipped){if(i.from>=o)return null;let t=/^ */.exec(s.text.slice(r.to-s.from))[0].length;return{from:r.from,to:r.to+t}}t=i.to}}(t):null;return a?l?t.column(a.from):t.column(a.to):t.baseIndent+(l?0:t.unit*r)}function ne(){return i.transactionFilter.of((t=>{if(!t.docChanged||!t.isUserEvent("input.type")&&!t.isUserEvent("input.complete"))return t;let e=t.startState.languageDataAt("indentOnInput",t.startState.selection.main.head);if(!e.length)return t;let r=t.newDoc,{head:n}=t.newSelection.main,i=r.lineAt(n);if(n>i.from+200)return t;let s=r.sliceString(i.from,n);if(!e.some((t=>t.test(s))))return t;let{state:o}=t,l=-1,a=[];for(let{head:t}of o.selection.ranges){let e=o.doc.lineAt(t);if(e.from==l)continue;l=e.from;let r=Gt(o,e.from);if(null==r)continue;let n=/^\s*/.exec(e.text)[0],i=Ht(o,r);n!=i&&a.push({from:e.from,to:e.from+n.length,insert:i})}return a.length?[t,{changes:a,sequential:!0}]:t}))}const ie=e.define(),se=new w;function oe(t){let e=t.firstChild,r=t.lastChild;return e&&e.to<r.from?{from:e.to,to:r.type.isError?t.to:r.from}:null}function le(t){let e=t.lastChild;return e&&e.to==t.to&&e.type.isError}function ae(t,e,r){for(let n of t.facet(ie)){let i=n(t,e,r);if(i)return i}return function(t,e,r){let n=Ot(t);if(n.length<r)return null;let i=null;for(let s=n.resolveStack(r,1);s;s=s.next){let o=s.node;if(o.to<=r||o.from>r)continue;if(i&&o.from<e)break;let l=o.type.prop(se);if(l&&(o.to<n.length-50||n.length==t.doc.length||!le(o))){let n=l(o,t);n&&n.from<=r&&n.from>=e&&n.to>r&&(i=n)}}return i}(t,e,r)}function he(t,e){let r=e.mapPos(t.from,1),n=e.mapPos(t.to,-1);return r>=n?void 0:{from:r,to:n}}const fe=t.define({map:he}),ue=t.define({map:he});function ce(t){let e=[];for(let{head:r}of t.state.selection.ranges)e.some((t=>t.from<=r&&t.to>=r))||e.push(t.lineBlockAt(r));return e}const de=r.define({create:()=>c.none,update(t,e){t=t.map(e.changes);for(let r of e.effects)if(r.is(fe)&&!ge(t,r.value.from,r.value.to)){let{preparePlaceholder:n}=e.state.facet(Ce),i=n?c.replace({widget:new Te(n(e.state,r.value))}):Ie;t=t.update({add:[i.range(r.value.from,r.value.to)]})}else r.is(ue)&&(t=t.update({filter:(t,e)=>r.value.from!=t||r.value.to!=e,filterFrom:r.value.from,filterTo:r.value.to}));if(e.selection){let r=!1,{head:n}=e.selection.main;t.between(n,n,((t,e)=>{t<n&&e>n&&(r=!0)})),r&&(t=t.update({filterFrom:n,filterTo:n,filter:(t,e)=>e<=n||t>=n}))}return t},provide:t=>f.decorations.from(t),toJSON(t,e){let r=[];return t.between(0,e.doc.length,((t,e)=>{r.push(t,e)})),r},fromJSON(t){if(!Array.isArray(t)||t.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let r=0;r<t.length;){let n=t[r++],i=t[r++];if("number"!=typeof n||"number"!=typeof i)throw new RangeError("Invalid JSON for fold state");e.push(Ie.range(n,i))}return c.set(e,!0)}});function pe(t,e,r){var n;let i=null;return null===(n=t.field(de,!1))||void 0===n||n.between(e,r,((t,e)=>{(!i||i.from>t)&&(i={from:t,to:e})})),i}function ge(t,e,r){let n=!1;return t.between(e,e,((t,i)=>{t==e&&i==r&&(n=!0)})),n}function me(e,r){return e.field(de,!1)?r:r.concat(t.appendConfig.of(Ne()))}const be=t=>{for(let e of ce(t)){let r=ae(t.state,e.from,e.to);if(r)return t.dispatch({effects:me(t.state,[fe.of(r),xe(t,r)])}),!0}return!1},ke=t=>{if(!t.state.field(de,!1))return!1;let e=[];for(let r of ce(t)){let n=pe(t.state,r.from,r.to);n&&e.push(ue.of(n),xe(t,n,!1))}return e.length&&t.dispatch({effects:e}),e.length>0};function xe(t,e,r=!0){let n=t.state.doc.lineAt(e.from).number,i=t.state.doc.lineAt(e.to).number;return f.announce.of(`${t.state.phrase(r?"Folded lines":"Unfolded lines")} ${n} ${t.state.phrase("to")} ${i}.`)}const ye=t=>{let{state:e}=t,r=[];for(let n=0;n<e.doc.length;){let i=t.lineBlockAt(n),s=ae(e,i.from,i.to);s&&r.push(fe.of(s)),n=(s?t.lineBlockAt(s.to):i).to+1}return r.length&&t.dispatch({effects:me(t.state,r)}),!!r.length},we=t=>{let e=t.state.field(de,!1);if(!e||!e.size)return!1;let r=[];return e.between(0,t.state.doc.length,((t,e)=>{r.push(ue.of({from:t,to:e}))})),t.dispatch({effects:r}),!0};function ve(t,e){for(let r=e;;){let n=ae(t.state,r.from,r.to);if(n&&n.to>e.from)return n;if(!r.from)return null;r=t.lineBlockAt(r.from-1)}}const Se=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:be},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:ke},{key:"Ctrl-Alt-[",run:ye},{key:"Ctrl-Alt-]",run:we}],Ae={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},Ce=e.define({combine:t=>a(t,Ae)});function Ne(t){let e=[de,Me];return t&&e.push(Ce.of(t)),e}function Pe(t,e){let{state:r}=t,n=r.facet(Ce),i=e=>{let r=t.lineBlockAt(t.posAtDOM(e.target)),n=pe(t.state,r.from,r.to);n&&t.dispatch({effects:ue.of(n)}),e.preventDefault()};if(n.placeholderDOM)return n.placeholderDOM(t,i,e);let s=document.createElement("span");return s.textContent=n.placeholderText,s.setAttribute("aria-label",r.phrase("folded code")),s.title=r.phrase("unfold"),s.className="cm-foldPlaceholder",s.onclick=i,s}const Ie=c.replace({widget:new class extends m{toDOM(t){return Pe(t,null)}}});class Te extends m{constructor(t){super(),this.value=t}eq(t){return this.value==t.value}toDOM(t){return Pe(t,this.value)}}const Oe={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class Be extends g{constructor(t,e){super(),this.config=t,this.open=e}eq(t){return this.config==t.config&&this.open==t.open}toDOM(t){if(this.config.markerDOM)return this.config.markerDOM(this.open);let e=document.createElement("span");return e.textContent=this.open?this.config.openText:this.config.closedText,e.title=t.state.phrase(this.open?"Fold line":"Unfold line"),e}}function _e(t={}){let e={...Oe,...t},r=new Be(e,!0),n=new Be(e,!1),i=h.fromClass(class{constructor(t){this.from=t.viewport.from,this.markers=this.buildMarkers(t)}update(t){(t.docChanged||t.viewportChanged||t.startState.facet(Wt)!=t.state.facet(Wt)||t.startState.field(de,!1)!=t.state.field(de,!1)||Ot(t.startState)!=Ot(t.state)||e.foldingChanged(t))&&(this.markers=this.buildMarkers(t.view))}buildMarkers(t){let e=new s;for(let i of t.viewportLineBlocks){let s=pe(t.state,i.from,i.to)?n:ae(t.state,i.from,i.to)?r:null;s&&e.add(i.from,i.from,s)}return e.finish()}}),{domEventHandlers:l}=e;return[i,u({class:"cm-foldGutter",markers(t){var e;return(null===(e=t.plugin(i))||void 0===e?void 0:e.markers)||o.empty},initialSpacer:()=>new Be(e,!1),domEventHandlers:{...l,click:(t,e,r)=>{if(l.click&&l.click(t,e,r))return!0;let n=pe(t.state,e.from,e.to);if(n)return t.dispatch({effects:ue.of(n)}),!0;let i=ae(t.state,e.from,e.to);return!!i&&(t.dispatch({effects:fe.of(i)}),!0)}}}),Ne()]}const Me=f.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class De{constructor(t,e){let r;function n(t){let e=d.newName();return(r||(r=Object.create(null)))["."+e]=t,e}this.specs=t;const i="string"==typeof e.all?e.all:e.all?n(e.all):void 0,s=e.scope;this.scope=s instanceof Pt?t=>t.prop(At)==s.data:s?t=>t==s:void 0,this.style=it(t.map((t=>({tag:t.tag,class:t.class||n(Object.assign({},t,{tag:null}))}))),{all:i}).style,this.module=r?new d(r):null,this.themeType=e.themeType}static define(t,e){return new De(t,e||{})}}const Le=e.define(),Ee=e.define({combine:t=>t.length?[t[0]]:null});function Re(t){let e=t.facet(Le);return e.length?e:t.facet(Ee)}function ze(t,e){let r,n=[We];return t instanceof De&&(t.module&&n.push(f.styleModule.of(t.module)),r=t.themeType),(null==e?void 0:e.fallback)?n.push(Ee.of(t)):r?n.push(Le.computeN([f.darkTheme],(e=>e.facet(f.darkTheme)==("dark"==r)?[t]:[]))):n.push(Le.of(t)),n}class je{constructor(t){this.markCache=Object.create(null),this.tree=Ot(t.state),this.decorations=this.buildDeco(t,Re(t.state)),this.decoratedTo=t.viewport.to}update(t){let e=Ot(t.state),r=Re(t.state),n=r!=Re(t.startState),{viewport:i}=t.view,s=t.changes.mapPos(this.decoratedTo,1);e.length<i.to&&!n&&e.type==this.tree.type&&s>=i.to?(this.decorations=this.decorations.map(t.changes),this.decoratedTo=s):(e!=this.tree||t.viewportChanged||n)&&(this.tree=e,this.decorations=this.buildDeco(t.view,r),this.decoratedTo=i.to)}buildDeco(t,e){if(!e||!this.tree.length)return c.none;let r=new s;for(let{from:n,to:i}of t.visibleRanges)st(this.tree,e,((t,e,n)=>{r.add(t,e,this.markCache[n]||(this.markCache[n]=c.mark({class:n})))}),n,i);return r.finish()}}const We=l.high(h.fromClass(je,{decorations:t=>t.decorations})),Ue=De.define([{tag:vt.meta,color:"#404740"},{tag:vt.link,textDecoration:"underline"},{tag:vt.heading,textDecoration:"underline",fontWeight:"bold"},{tag:vt.emphasis,fontStyle:"italic"},{tag:vt.strong,fontWeight:"bold"},{tag:vt.strikethrough,textDecoration:"line-through"},{tag:vt.keyword,color:"#708"},{tag:[vt.atom,vt.bool,vt.url,vt.contentSeparator,vt.labelName],color:"#219"},{tag:[vt.literal,vt.inserted],color:"#164"},{tag:[vt.string,vt.deleted],color:"#a11"},{tag:[vt.regexp,vt.escape,vt.special(vt.string)],color:"#e40"},{tag:vt.definition(vt.variableName),color:"#00f"},{tag:vt.local(vt.variableName),color:"#30a"},{tag:[vt.typeName,vt.namespace],color:"#085"},{tag:vt.className,color:"#167"},{tag:[vt.special(vt.variableName),vt.macroName],color:"#256"},{tag:vt.definition(vt.propertyName),color:"#00c"},{tag:vt.comment,color:"#940"},{tag:vt.invalid,color:"#f00"}]),Fe=f.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Ve="()[]{}",$e=e.define({combine:t=>a(t,{afterCursor:!0,brackets:Ve,maxScanDistance:1e4,renderMatch:Ge})}),qe=c.mark({class:"cm-matchingBracket"}),He=c.mark({class:"cm-nonmatchingBracket"});function Ge(t){let e=[],r=t.matched?qe:He;return e.push(r.range(t.start.from,t.start.to)),t.end&&e.push(r.range(t.end.from,t.end.to)),e}const Je=[r.define({create:()=>c.none,update(t,e){if(!e.docChanged&&!e.selection)return t;let r=[],n=e.state.facet($e);for(let t of e.state.selection.ranges){if(!t.empty)continue;let i=Ze(e.state,t.head,-1,n)||t.head>0&&Ze(e.state,t.head-1,1,n)||n.afterCursor&&(Ze(e.state,t.head,1,n)||t.head<e.state.doc.length&&Ze(e.state,t.head+1,-1,n));i&&(r=r.concat(n.renderMatch(i,e.state)))}return c.set(r,!0)},provide:t=>f.decorations.from(t)}),Fe];function Ke(t={}){return[$e.of(t),Je]}const Qe=new w;function Xe(t,e,r){let n=t.prop(e<0?w.openedBy:w.closedBy);if(n)return n;if(1==t.name.length){let n=r.indexOf(t.name);if(n>-1&&n%2==(e<0?1:0))return[r[n+e]]}return null}function Ye(t){let e=t.type.prop(Qe);return e?e(t.node):t}function Ze(t,e,r,n={}){let i=n.maxScanDistance||1e4,s=n.brackets||Ve,o=Ot(t),l=o.resolveInner(e,r);for(let n=l;n;n=n.parent){let i=Xe(n.type,r,s);if(i&&n.from<n.to){let o=Ye(n);if(o&&(r>0?e>=o.from&&e<o.to:e>o.from&&e<=o.to))return tr(t,e,r,n,o,i,s)}}return function(t,e,r,n,i,s,o){let l=r<0?t.sliceDoc(e-1,e):t.sliceDoc(e,e+1),a=o.indexOf(l);if(a<0||a%2==0!=r>0)return null;let h={from:r<0?e-1:e,to:r>0?e+1:e},f=t.doc.iterRange(e,r>0?t.doc.length:0),u=0;for(let t=0;!f.next().done&&t<=s;){let s=f.value;r<0&&(t+=s.length);let l=e+t*r;for(let t=r>0?0:s.length-1,e=r>0?s.length:-1;t!=e;t+=r){let e=o.indexOf(s[t]);if(!(e<0||n.resolveInner(l+t,1).type!=i))if(e%2==0==r>0)u++;else{if(1==u)return{start:h,end:{from:l+t,to:l+t+1},matched:e>>1==a>>1};u--}}r>0&&(t+=s.length)}return f.done?{start:h,matched:!1}:null}(t,e,r,o,l.type,i,s)}function tr(t,e,r,n,i,s,o){let l=n.parent,a={from:i.from,to:i.to},h=0,f=null==l?void 0:l.cursor();if(f&&(r<0?f.childBefore(n.from):f.childAfter(n.to)))do{if(r<0?f.to<=n.from:f.from>=n.to){if(0==h&&s.indexOf(f.type.name)>-1&&f.from<f.to){let t=Ye(f);return{start:a,end:t?{from:t.from,to:t.to}:void 0,matched:!0}}if(Xe(f.type,r,o))h++;else if(Xe(f.type,-r,o)){if(0==h){let t=Ye(f);return{start:a,end:t&&t.from<t.to?{from:t.from,to:t.to}:void 0,matched:!1}}h--}}}while(r<0?f.prevSibling():f.nextSibling());return{start:a,matched:!1}}function er(t,e,r,n=0,i=0){null==e&&-1==(e=t.search(/[^\s\u00a0]/))&&(e=t.length);let s=i;for(let i=n;i<e;i++)9==t.charCodeAt(i)?s+=r-s%r:s++;return s}class rr{constructor(t,e,r,n){this.string=t,this.tabSize=e,this.indentUnit=r,this.overrideIndent=n,this.pos=0,this.start=0,this.lastColumnPos=0,this.lastColumnValue=0}eol(){return this.pos>=this.string.length}sol(){return 0==this.pos}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)}eat(t){let e,r=this.string.charAt(this.pos);if(e="string"==typeof t?r==t:r&&(t instanceof RegExp?t.test(r):t(r)),e)return++this.pos,r}eatWhile(t){let e=this.pos;for(;this.eat(t););return this.pos>e}eatSpace(){let t=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>t}skipToEnd(){this.pos=this.string.length}skipTo(t){let e=this.string.indexOf(t,this.pos);if(e>-1)return this.pos=e,!0}backUp(t){this.pos-=t}column(){return this.lastColumnPos<this.start&&(this.lastColumnValue=er(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue}indentation(){var t;return null!==(t=this.overrideIndent)&&void 0!==t?t:er(this.string,null,this.tabSize)}match(t,e,r){if("string"==typeof t){let n=t=>r?t.toLowerCase():t;return n(this.string.substr(this.pos,t.length))==n(t)?(!1!==e&&(this.pos+=t.length),!0):null}{let r=this.string.slice(this.pos).match(t);return r&&r.index>0?null:(r&&!1!==e&&(this.pos+=r[0].length),r)}}current(){return this.string.slice(this.start,this.pos)}}function nr(t){if("object"!=typeof t)return t;let e={};for(let r in t){let n=t[r];e[r]=n instanceof Array?n.slice():n}return e}const ir=new WeakMap;class sr extends Pt{constructor(t){let e,r=Ct(t.languageData),n={name:(i=t).name||"",token:i.token,blankLine:i.blankLine||(()=>{}),startState:i.startState||(()=>!0),copyState:i.copyState||nr,indent:i.indent||(()=>null),languageData:i.languageData||{},tokenTable:i.tokenTable||fr,mergeTokens:!1!==i.mergeTokens};var i;super(r,new class extends K{createParse(t,r,n){return new ar(e,t,r,n)}},[],t.name),this.topNode=function(t,e){let r=A.define({id:ur.length,name:"Document",props:[At.add((()=>t)),Kt.add((()=>t=>e.getIndent(t)))],top:!0});return ur.push(r),r}(r,this),e=this,this.streamParser=n,this.stateAfter=new w({perNode:!0}),this.tokenTable=t.tokenTable?new mr(n.tokenTable):br}static define(t){return new sr(t)}getIndent(t){let e,{overrideIndentation:r}=t.options;r&&(e=ir.get(t.state),null!=e&&e<t.pos-1e4&&(e=void 0));let n,i,s=or(this,t.node.tree,t.node.from,t.node.from,null!=e?e:t.pos);if(s?(i=s.state,n=s.pos+1):(i=this.streamParser.startState(t.unit),n=t.node.from),t.pos-n>1e4)return null;for(;n<t.pos;){let e=t.state.doc.lineAt(n),s=Math.min(t.pos,e.to);if(e.length){let n=r?r(e.from):-1,o=new rr(e.text,t.state.tabSize,t.unit,n<0?void 0:n);for(;o.pos<s-e.from;)hr(this.streamParser.token,o,i)}else this.streamParser.blankLine(i,t.unit);if(s==t.pos)break;n=e.to+1}let o=t.lineAt(t.pos);return r&&null==e&&ir.set(t.state,o.from),this.streamParser.indent(i,/^\s*(.*)/.exec(o.text)[1],t)}get allowsNesting(){return!1}}function or(t,e,r,n,i){let s=r>=n&&r+e.length<=i&&e.prop(t.stateAfter);if(s)return{state:t.streamParser.copyState(s),pos:r+e.length};for(let s=e.children.length-1;s>=0;s--){let o=e.children[s],l=r+e.positions[s],a=o instanceof T&&l<i&&or(t,o,l,n,i);if(a)return a}return null}function lr(t,e,r,n,i){if(i&&r<=0&&n>=e.length)return e;i||0!=r||e.type!=t.topNode||(i=!0);for(let s=e.children.length-1;s>=0;s--){let o,l=e.positions[s],a=e.children[s];if(l<n&&a instanceof T){if(!(o=lr(t,a,r-l,n-l,i)))break;return i?new T(e.type,e.children.slice(0,s).concat(o),e.positions.slice(0,s+1),l+o.length):o}}return null}class ar{constructor(t,e,r,n){this.lang=t,this.input=e,this.fragments=r,this.ranges=n,this.stoppedAt=null,this.chunks=[],this.chunkPos=[],this.chunk=[],this.chunkReused=void 0,this.rangeIndex=0,this.to=n[n.length-1].to;let i=Dt.get(),s=n[0].from,{state:o,tree:l}=function(t,e,r,n,i){for(let i of e){let e,s=i.from+(i.openStart?25:0),o=i.to-(i.openEnd?25:0),l=s<=r&&o>r&&or(t,i.tree,0-i.offset,r,o);if(l&&l.pos<=n&&(e=lr(t,i.tree,r+i.offset,l.pos+i.offset,!1)))return{state:l.state,tree:e}}return{state:t.streamParser.startState(i?qt(i):4),tree:T.empty}}(t,r,s,this.to,null==i?void 0:i.state);this.state=o,this.parsedPos=this.chunkStart=s+l.length;for(let t=0;t<l.children.length;t++)this.chunks.push(l.children[t]),this.chunkPos.push(l.positions[t]);i&&this.parsedPos<i.viewport.from-1e5&&n.some((t=>t.from<=i.viewport.from&&t.to>=i.viewport.from))&&(this.state=this.lang.streamParser.startState(qt(i.state)),i.skipUntilInView(this.parsedPos,i.viewport.from),this.parsedPos=i.viewport.from),this.moveRangeIndex()}advance(){let t=Dt.get(),e=null==this.stoppedAt?this.to:Math.min(this.to,this.stoppedAt),r=Math.min(e,this.chunkStart+2048);for(t&&(r=Math.min(r,t.viewport.to));this.parsedPos<r;)this.parseLine(t);return this.chunkStart<this.parsedPos&&this.finishChunk(),this.parsedPos>=e?this.finish():t&&this.parsedPos>=t.viewport.to?(t.skipUntilInView(this.parsedPos,e),this.finish()):null}stopAt(t){this.stoppedAt=t}lineAfter(t){let e=this.input.chunk(t);if(this.input.lineChunks)"\n"==e&&(e="");else{let t=e.indexOf("\n");t>-1&&(e=e.slice(0,t))}return t+e.length<=this.to?e:e.slice(0,this.to-t)}nextLine(){let t=this.parsedPos,e=this.lineAfter(t),r=t+e.length;for(let t=this.rangeIndex;;){let n=this.ranges[t].to;if(n>=r)break;if(e=e.slice(0,n-(r-e.length)),t++,t==this.ranges.length)break;let i=this.ranges[t].from,s=this.lineAfter(i);e+=s,r=i+s.length}return{line:e,end:r}}skipGapsTo(t,e,r){for(;;){let n=this.ranges[this.rangeIndex].to,i=t+e;if(r>0?n>i:n>=i)break;e+=this.ranges[++this.rangeIndex].from-n}return e}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to<this.parsedPos;)this.rangeIndex++}emitToken(t,e,r,n){let i=4;if(this.ranges.length>1){e+=n=this.skipGapsTo(e,n,1);let t=this.chunk.length;r+=n=this.skipGapsTo(r,n,-1),i+=this.chunk.length-t}let s=this.chunk.length-4;return this.lang.streamParser.mergeTokens&&4==i&&s>=0&&this.chunk[s]==t&&this.chunk[s+2]==e?this.chunk[s+2]=r:this.chunk.push(t,e,r,i),n}parseLine(t){let{line:e,end:r}=this.nextLine(),n=0,{streamParser:i}=this.lang,s=new rr(e,t?t.state.tabSize:4,t?qt(t.state):2);if(s.eol())i.blankLine(this.state,s.indentUnit);else for(;!s.eol();){let t=hr(i.token,s,this.state);if(t&&(n=this.emitToken(this.lang.tokenTable.resolve(t),this.parsedPos+s.start,this.parsedPos+s.pos,n)),s.start>1e4)break}this.parsedPos=r,this.moveRangeIndex(),this.parsedPos<this.to&&this.parsedPos++}finishChunk(){let t=T.build({buffer:this.chunk,start:this.chunkStart,length:this.parsedPos-this.chunkStart,nodeSet:cr,topID:0,maxBufferLength:2048,reused:this.chunkReused});t=new T(t.type,t.children,t.positions,t.length,[[this.lang.stateAfter,this.lang.streamParser.copyState(this.state)]]),this.chunks.push(t),this.chunkPos.push(this.chunkStart-this.ranges[0].from),this.chunk=[],this.chunkReused=void 0,this.chunkStart=this.parsedPos}finish(){return new T(this.lang.topNode,this.chunks,this.chunkPos,this.parsedPos-this.ranges[0].from).balance()}}function hr(t,e,r){e.start=e.pos;for(let n=0;n<10;n++){let n=t(e,r);if(e.pos>e.start)return n}throw new Error("Stream parser failed to advance stream.")}const fr=Object.create(null),ur=[A.none],cr=new C(ur),dr=[],pr=Object.create(null),gr=Object.create(null);for(let[t,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"]])gr[t]=xr(fr,e);class mr{constructor(t){this.extra=t,this.table=Object.assign(Object.create(null),gr)}resolve(t){return t?this.table[t]||(this.table[t]=xr(this.extra,t)):0}}const br=new mr(fr);function kr(t,e){dr.indexOf(t)>-1||(dr.push(t),console.warn(e))}function xr(t,e){let r=[];for(let n of e.split(" ")){let e=[];for(let r of n.split(".")){let n=t[r]||vt[r];n?"function"==typeof n?e.length?e=e.map(n):kr(r,`Modifier ${r} used at start of tag`):e.length?kr(r,`Tag ${r} used as modifier`):e=Array.isArray(n)?n:[n]:kr(r,`Unknown highlighting tag ${r}`)}for(let t of e)r.push(t)}if(!r.length)return 0;let n=e.replace(/ /g,"_"),i=n+" "+r.map((t=>t.id)),s=pr[i];if(s)return s.id;let o=pr[i]=A.define({id:ur.length,name:n,props:[et({[n]:r})]});return ur.push(o),o.id}function yr(t){return t.length<=4096&&/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/.test(t)}function wr(t){for(let e=t.iter();!e.next().done;)if(yr(e.value))return!0;return!1}const vr=e.define({combine:t=>t.some((t=>t))});const Sr=h.fromClass(class{constructor(t){this.always=t.state.facet(vr)||t.textDirection!=p.LTR||t.state.facet(f.perLineTextDirection),this.hasRTL=!this.always&&wr(t.state.doc),this.tree=Ot(t.state),this.decorations=this.always||this.hasRTL?Ar(t,this.tree,this.always):c.none}update(t){let e=t.state.facet(vr)||t.view.textDirection!=p.LTR||t.state.facet(f.perLineTextDirection);if(e||this.hasRTL||!function(t){let e=!1;return t.iterChanges(((t,r,n,i,s)=>{!e&&wr(s)&&(e=!0)})),e}(t.changes)||(this.hasRTL=!0),!e&&!this.hasRTL)return;let r=Ot(t.state);(e!=this.always||r!=this.tree||t.docChanged||t.viewportChanged)&&(this.tree=r,this.always=e,this.decorations=Ar(t.view,r,e))}},{provide:t=>{function e(e){var r,n;return null!==(n=null===(r=e.plugin(t))||void 0===r?void 0:r.decorations)&&void 0!==n?n:c.none}return[f.outerDecorations.of(e),l.lowest(f.bidiIsolatedRanges.of(e))]}});function Ar(t,e,r){let n=new s,i=t.visibleRanges;r||(i=function(t,e){let r=e.iter(),n=0,i=[],s=null;for(let{from:e,to:o}of t)if(!(s&&s.to>e&&(e=s.to,e>=o)))for(n+r.value.length<e&&(r.next(e-(n+r.value.length)),n=e);;){let t=n,e=n+r.value.length;if(!r.lineBreak&&yr(r.value)&&(s&&s.to>t-10?s.to=Math.min(o,e):i.push(s={from:t,to:Math.min(o,e)})),e>=o)break;n=e,r.next()}return i}(i,t.state.doc));for(let{from:t,to:r}of i)e.iterate({enter:t=>{let e=t.type.prop(w.isolate);e&&n.add(t.from,t.to,Cr[e])},from:t,to:r});return n.finish()}const Cr={rtl:c.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:p.RTL}),ltr:c.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:p.LTR}),auto:c.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var Nr=Object.freeze({__proto__:null,DocInput:_t,HighlightStyle:De,IndentContext:Jt,LRLanguage:Tt,Language:Pt,LanguageDescription:Ft,LanguageSupport:Ut,ParseContext:Dt,StreamLanguage:sr,StringStream:rr,TreeIndentContext:Zt,bidiIsolates:function(t={}){let e=[Sr];return t.alwaysIsolate&&e.push(vr.of(!0)),e},bracketMatching:Ke,bracketMatchingHandle:Qe,codeFolding:Ne,continuedIndent:function({except:t,units:e=1}={}){return r=>{let n=t&&t.test(r.textAfter);return r.baseIndent+(n?0:e*r.unit)}},defaultHighlightStyle:Ue,defineLanguageFacet:Ct,delimitedIndent:ee,ensureSyntaxTree:Bt,flatIndent:t=>t.baseIndent,foldAll:ye,foldCode:be,foldEffect:fe,foldGutter:_e,foldInside:oe,foldKeymap:Se,foldNodeProp:se,foldService:ie,foldState:de,foldable:ae,foldedRanges:function(t){return t.field(de,!1)||o.empty},forceParsing:function(t,e=t.viewport.to,r=100){let n=Bt(t.state,e,r);return n!=Ot(t.state)&&t.dispatch({}),!!n},getIndentUnit:qt,getIndentation:Gt,highlightingFor:function(t,e,r){let n=Re(t),i=null;if(n)for(let t of n)if(!t.scope||r&&t.scope(r)){let r=t.style(e);r&&(i=i?i+" "+r:r)}return i},indentNodeProp:Kt,indentOnInput:ne,indentRange:function(t,e,r){let n=Object.create(null),i=new Jt(t,{overrideIndentation:t=>{var e;return null!==(e=n[t])&&void 0!==e?e:-1}}),s=[];for(let o=e;o<=r;){let e=t.doc.lineAt(o);o=e.to+1;let r=Gt(i,e.from);if(null==r)continue;/\S/.test(e.text)||(r=0);let l=/^\s*/.exec(e.text)[0],a=Ht(t,r);l!=a&&(n[e.from]=r,s.push({from:e.from,to:e.from+l.length,insert:a}))}return t.changes(s)},indentService:Vt,indentString:Ht,indentUnit:$t,language:Wt,languageDataProp:At,matchBrackets:Ze,sublanguageProp:Nt,syntaxHighlighting:ze,syntaxParserRunning:function(t){var e;return(null===(e=t.plugin(jt))||void 0===e?void 0:e.isWorking())||!1},syntaxTree:Ot,syntaxTreeAvailable:function(t,e=t.doc.length){var r;return(null===(r=t.field(Pt.state,!1))||void 0===r?void 0:r.context.isDone(e))||!1},toggleFold:t=>{let e=[];for(let r of ce(t)){let n=pe(t.state,r.from,r.to);if(n)e.push(ue.of(n),xe(t,n,!1));else{let n=ve(t,r);n&&e.push(fe.of(n),xe(t,n))}}return e.length>0&&t.dispatch({effects:me(t.state,e)}),!!e.length},unfoldAll:we,unfoldCode:ke,unfoldEffect:ue});export{k as D,I,Tt as L,C as N,K as P,T,ne as a,ze as b,Ke as c,Ue as d,Se as e,_e as f,A as g,w as h,$t as i,et as j,Ut as k,Kt as l,se as m,ee as n,oe as o,G as p,Jt as q,Gt as r,Ot as s,vt as t,Ht as u,Ze as v,qt as w,Nr as x};
2
- //# sourceMappingURL=codemirror_language-g0vQwyLF.js.map
@@ -1,2 +0,0 @@
1
- let t=[],e=[];function n(n){if(n<768)return!1;for(let i=0,s=t.length;;){let r=i+s>>1;if(n<t[r])s=r;else{if(!(n>=e[r]))return!0;i=r+1}if(i==s)return!1}}function i(t){return t>=127462&&t<=127487}(()=>{let n="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((t=>t?parseInt(t,36):1));for(let i=0,s=0;i<n.length;i++)(i%2?e:t).push(s+=n[i])})();function s(t,e,n=!0,i=!0){return(n?r:h)(t,e,i)}function r(t,e,s){if(e==t.length)return e;e&&l(t.charCodeAt(e))&&a(t.charCodeAt(e-1))&&e--;let r=o(t,e);for(e+=c(r);e<t.length;){let h=o(t,e);if(8205==r||8205==h||s&&n(h))e+=c(h),r=h;else{if(!i(h))break;{let n=0,s=e-2;for(;s>=0&&i(o(t,s));)n++,s-=2;if(n%2==0)break;e+=2}}}return e}function h(t,e,n){for(;e>0;){let i=r(t,e-2,n);if(i<e)return i;e--}return 0}function o(t,e){let n=t.charCodeAt(e);if(!a(n)||e+1==t.length)return n;let i=t.charCodeAt(e+1);return l(i)?i-56320+(n-55296<<10)+65536:n}function l(t){return t>=56320&&t<57344}function a(t){return t>=55296&&t<56320}function c(t){return t<65536?1:2}class f{lineAt(t){if(t<0||t>this.length)throw new RangeError(`Invalid position ${t} in document of length ${this.length}`);return this.lineInner(t,!1,1,0)}line(t){if(t<1||t>this.lines)throw new RangeError(`Invalid line number ${t} in ${this.lines}-line document`);return this.lineInner(t,!0,1,0)}replace(t,e,n){[t,e]=k(this,t,e);let i=[];return this.decompose(0,t,i,2),n.length&&n.decompose(0,n.length,i,3),this.decompose(e,this.length,i,1),g.from(i,this.length-(e-t)+n.length)}append(t){return this.replace(this.length,this.length,t)}slice(t,e=this.length){[t,e]=k(this,t,e);let n=[];return this.decompose(t,e,n,0),g.from(n,e-t)}eq(t){if(t==this)return!0;if(t.length!=this.length||t.lines!=this.lines)return!1;let e=this.scanIdentical(t,1),n=this.length-this.scanIdentical(t,-1),i=new m(this),s=new m(t);for(let t=e,r=e;;){if(i.next(t),s.next(t),t=0,i.lineBreak!=s.lineBreak||i.done!=s.done||i.value!=s.value)return!1;if(r+=i.value.length,i.done||r>=n)return!0}}iter(t=1){return new m(this,t)}iterRange(t,e=this.length){return new v(this,t,e)}iterLines(t,e){let n;if(null==t)n=this.iter();else{null==e&&(e=this.lines+1);let i=this.line(t).from;n=this.iterRange(i,Math.max(i,e==this.lines+1?this.length:e<=1?0:this.line(e-1).to))}return new x(n)}toString(){return this.sliceString(0)}toJSON(){let t=[];return this.flatten(t),t}constructor(){}static of(t){if(0==t.length)throw new RangeError("A document must have at least one line");return 1!=t.length||t[0]?t.length<=32?new u(t):g.from(u.split(t,[])):f.empty}}class u extends f{constructor(t,e=function(t){let e=-1;for(let n of t)e+=n.length+1;return e}(t)){super(),this.text=t,this.length=e}get lines(){return this.text.length}get children(){return null}lineInner(t,e,n,i){for(let s=0;;s++){let r=this.text[s],h=i+r.length;if((e?n:h)>=t)return new w(i,h,n,r);i=h+1,n++}}decompose(t,e,n,i){let s=t<=0&&e>=this.length?this:new u(p(this.text,t,e),Math.min(e,this.length)-Math.max(0,t));if(1&i){let t=n.pop(),e=d(s.text,t.text.slice(),0,s.length);if(e.length<=32)n.push(new u(e,t.length+s.length));else{let t=e.length>>1;n.push(new u(e.slice(0,t)),new u(e.slice(t)))}}else n.push(s)}replace(t,e,n){if(!(n instanceof u))return super.replace(t,e,n);[t,e]=k(this,t,e);let i=d(this.text,d(n.text,p(this.text,0,t)),e),s=this.length+n.length-(e-t);return i.length<=32?new u(i,s):g.from(u.split(i,[]),s)}sliceString(t,e=this.length,n="\n"){[t,e]=k(this,t,e);let i="";for(let s=0,r=0;s<=e&&r<this.text.length;r++){let h=this.text[r],o=s+h.length;s>t&&r&&(i+=n),t<o&&e>s&&(i+=h.slice(Math.max(0,t-s),e-s)),s=o+1}return i}flatten(t){for(let e of this.text)t.push(e)}scanIdentical(){return 0}static split(t,e){let n=[],i=-1;for(let s of t)n.push(s),i+=s.length+1,32==n.length&&(e.push(new u(n,i)),n=[],i=-1);return i>-1&&e.push(new u(n,i)),e}}class g extends f{constructor(t,e){super(),this.children=t,this.length=e,this.lines=0;for(let e of t)this.lines+=e.lines}lineInner(t,e,n,i){for(let s=0;;s++){let r=this.children[s],h=i+r.length,o=n+r.lines-1;if((e?o:h)>=t)return r.lineInner(t,e,n,i);i=h+1,n=o+1}}decompose(t,e,n,i){for(let s=0,r=0;r<=e&&s<this.children.length;s++){let h=this.children[s],o=r+h.length;if(t<=o&&e>=r){let s=i&((r<=t?1:0)|(o>=e?2:0));r>=t&&o<=e&&!s?n.push(h):h.decompose(t-r,e-r,n,s)}r=o+1}}replace(t,e,n){if([t,e]=k(this,t,e),n.lines<this.lines)for(let i=0,s=0;i<this.children.length;i++){let r=this.children[i],h=s+r.length;if(t>=s&&e<=h){let o=r.replace(t-s,e-s,n),l=this.lines-r.lines+o.lines;if(o.lines<l>>4&&o.lines>l>>6){let s=this.children.slice();return s[i]=o,new g(s,this.length-(e-t)+n.length)}return super.replace(s,h,o)}s=h+1}return super.replace(t,e,n)}sliceString(t,e=this.length,n="\n"){[t,e]=k(this,t,e);let i="";for(let s=0,r=0;s<this.children.length&&r<=e;s++){let h=this.children[s],o=r+h.length;r>t&&s&&(i+=n),t<o&&e>r&&(i+=h.sliceString(t-r,e-r,n)),r=o+1}return i}flatten(t){for(let e of this.children)e.flatten(t)}scanIdentical(t,e){if(!(t instanceof g))return 0;let n=0,[i,s,r,h]=e>0?[0,0,this.children.length,t.children.length]:[this.children.length-1,t.children.length-1,-1,-1];for(;;i+=e,s+=e){if(i==r||s==h)return n;let o=this.children[i],l=t.children[s];if(o!=l)return n+o.scanIdentical(l,e);n+=o.length+1}}static from(t,e=t.reduce(((t,e)=>t+e.length+1),-1)){let n=0;for(let e of t)n+=e.lines;if(n<32){let n=[];for(let e of t)e.flatten(n);return new u(n,e)}let i=Math.max(32,n>>5),s=i<<1,r=i>>1,h=[],o=0,l=-1,a=[];function c(t){let e;if(t.lines>s&&t instanceof g)for(let e of t.children)c(e);else t.lines>r&&(o>r||!o)?(f(),h.push(t)):t instanceof u&&o&&(e=a[a.length-1])instanceof u&&t.lines+e.lines<=32?(o+=t.lines,l+=t.length+1,a[a.length-1]=new u(e.text.concat(t.text),e.length+1+t.length)):(o+t.lines>i&&f(),o+=t.lines,l+=t.length+1,a.push(t))}function f(){0!=o&&(h.push(1==a.length?a[0]:g.from(a,l)),l=-1,o=a.length=0)}for(let e of t)c(e);return f(),1==h.length?h[0]:new g(h,e)}}function d(t,e,n=0,i=1e9){for(let s=0,r=0,h=!0;r<t.length&&s<=i;r++){let o=t[r],l=s+o.length;l>=n&&(l>i&&(o=o.slice(0,i-s)),s<n&&(o=o.slice(n-s)),h?(e[e.length-1]+=o,h=!1):e.push(o)),s=l+1}return e}function p(t,e,n){return d(t,[""],e,n)}f.empty=new u([""],0);class m{constructor(t,e=1){this.dir=e,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[t],this.offsets=[e>0?1:(t instanceof u?t.text.length:t.children.length)<<1]}nextInner(t,e){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,i=this.nodes[n],s=this.offsets[n],r=s>>1,h=i instanceof u?i.text.length:i.children.length;if(r==(e>0?h:0)){if(0==n)return this.done=!0,this.value="",this;e>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&s)==(e>0?0:1)){if(this.offsets[n]+=e,0==t)return this.lineBreak=!0,this.value="\n",this;t--}else if(i instanceof u){let s=i.text[r+(e<0?-1:0)];if(this.offsets[n]+=e,s.length>Math.max(0,t))return this.value=0==t?s:e>0?s.slice(t):s.slice(0,s.length-t),this;t-=s.length}else{let s=i.children[r+(e<0?-1:0)];t>s.length?(t-=s.length,this.offsets[n]+=e):(e<0&&this.offsets[n]--,this.nodes.push(s),this.offsets.push(e>0?1:(s instanceof u?s.text.length:s.children.length)<<1))}}}next(t=0){return t<0&&(this.nextInner(-t,-this.dir),t=this.value.length),this.nextInner(t,this.dir)}}class v{constructor(t,e,n){this.value="",this.done=!1,this.cursor=new m(t,e>n?-1:1),this.pos=e>n?t.length:0,this.from=Math.min(e,n),this.to=Math.max(e,n)}nextInner(t,e){if(e<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;t+=Math.max(0,e<0?this.pos-this.to:this.from-this.pos);let n=e<0?this.pos-this.from:this.to-this.pos;t>n&&(t=n),n-=t;let{value:i}=this.cursor.next(t);return this.pos+=(i.length+t)*e,this.value=i.length<=n?i:e<0?i.slice(i.length-n):i.slice(0,n),this.done=!this.value,this}next(t=0){return t<0?t=Math.max(t,this.from-this.pos):t>0&&(t=Math.min(t,this.to-this.pos)),this.nextInner(t,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}}class x{constructor(t){this.inner=t,this.afterBreak=!0,this.value="",this.done=!1}next(t=0){let{done:e,lineBreak:n,value:i}=this.inner.next(t);return e&&this.afterBreak?(this.value="",this.afterBreak=!1):e?(this.done=!0,this.value=""):n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=i,this.afterBreak=!1),this}get lineBreak(){return!1}}"undefined"!=typeof Symbol&&(f.prototype[Symbol.iterator]=function(){return this.iter()},m.prototype[Symbol.iterator]=v.prototype[Symbol.iterator]=x.prototype[Symbol.iterator]=function(){return this});class w{constructor(t,e,n,i){this.from=t,this.to=e,this.number=n,this.text=i}get length(){return this.to-this.from}}function k(t,e,n){return[e=Math.max(0,Math.min(t.length,e)),Math.max(e,Math.min(t.length,n))]}function y(t,e,n=!0,i=!0){return s(t,e,n,i)}function S(t,e){let n=t.charCodeAt(e);if(!(i=n,i>=55296&&i<56320&&e+1!=t.length))return n;var i;let s=t.charCodeAt(e+1);return function(t){return t>=56320&&t<57344}(s)?s-56320+(n-55296<<10)+65536:n}function I(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode(55296+(t>>10),56320+(1023&t)))}function b(t){return t<65536?1:2}const P=/\r\n?|\n/;var E=function(t){return t[t.Simple=0]="Simple",t[t.TrackDel=1]="TrackDel",t[t.TrackBefore=2]="TrackBefore",t[t.TrackAfter=3]="TrackAfter",t}(E||(E={}));class M{constructor(t){this.sections=t}get length(){let t=0;for(let e=0;e<this.sections.length;e+=2)t+=this.sections[e];return t}get newLength(){let t=0;for(let e=0;e<this.sections.length;e+=2){let n=this.sections[e+1];t+=n<0?this.sections[e]:n}return t}get empty(){return 0==this.sections.length||2==this.sections.length&&this.sections[1]<0}iterGaps(t){for(let e=0,n=0,i=0;e<this.sections.length;){let s=this.sections[e++],r=this.sections[e++];r<0?(t(n,i,s),i+=s):i+=r,n+=s}}iterChangedRanges(t,e=!1){C(this,t,e)}get invertedDesc(){let t=[];for(let e=0;e<this.sections.length;){let n=this.sections[e++],i=this.sections[e++];i<0?t.push(n,i):t.push(i,n)}return new M(t)}composeDesc(t){return this.empty?t:t.empty?this:N(this,t)}mapDesc(t,e=!1){return t.empty?this:T(this,t,e)}mapPos(t,e=-1,n=E.Simple){let i=0,s=0;for(let r=0;r<this.sections.length;){let h=this.sections[r++],o=this.sections[r++],l=i+h;if(o<0){if(l>t)return s+(t-i);s+=h}else{if(n!=E.Simple&&l>=t&&(n==E.TrackDel&&i<t&&l>t||n==E.TrackBefore&&i<t||n==E.TrackAfter&&l>t))return null;if(l>t||l==t&&e<0&&!h)return t==i||e<0?s:s+o;s+=o}i=l}if(t>i)throw new RangeError(`Position ${t} is out of range for changeset of length ${i}`);return s}touchesRange(t,e=t){for(let n=0,i=0;n<this.sections.length&&i<=e;){let s=i+this.sections[n++];if(this.sections[n++]>=0&&i<=e&&s>=t)return!(i<t&&s>e)||"cover";i=s}return!1}toString(){let t="";for(let e=0;e<this.sections.length;){let n=this.sections[e++],i=this.sections[e++];t+=(t?" ":"")+n+(i>=0?":"+i:"")}return t}toJSON(){return this.sections}static fromJSON(t){if(!Array.isArray(t)||t.length%2||t.some((t=>"number"!=typeof t)))throw new RangeError("Invalid JSON representation of ChangeDesc");return new M(t)}static create(t){return new M(t)}}class A extends M{constructor(t,e){super(t),this.inserted=e}apply(t){if(this.length!=t.length)throw new RangeError("Applying change set to a document with the wrong length");return C(this,((e,n,i,s,r)=>t=t.replace(i,i+(n-e),r)),!1),t}mapDesc(t,e=!1){return T(this,t,e,!0)}invert(t){let e=this.sections.slice(),n=[];for(let i=0,s=0;i<e.length;i+=2){let r=e[i],h=e[i+1];if(h>=0){e[i]=h,e[i+1]=r;let o=i>>1;for(;n.length<o;)n.push(f.empty);n.push(r?t.slice(s,s+r):f.empty)}s+=r}return new A(e,n)}compose(t){return this.empty?t:t.empty?this:N(this,t,!0)}map(t,e=!1){return t.empty?this:T(this,t,e,!0)}iterChanges(t,e=!1){C(this,t,e)}get desc(){return M.create(this.sections)}filter(t){let e=[],n=[],i=[],s=new F(this);t:for(let r=0,h=0;;){let o=r==t.length?1e9:t[r++];for(;h<o||h==o&&0==s.len;){if(s.done)break t;let t=Math.min(s.len,o-h);O(i,t,-1);let r=-1==s.ins?-1:0==s.off?s.ins:0;O(e,t,r),r>0&&R(n,e,s.text),s.forward(t),h+=t}let l=t[r++];for(;h<l;){if(s.done)break t;let t=Math.min(s.len,l-h);O(e,t,-1),O(i,t,-1==s.ins?-1:0==s.off?s.ins:0),s.forward(t),h+=t}}return{changes:new A(e,n),filtered:M.create(i)}}toJSON(){let t=[];for(let e=0;e<this.sections.length;e+=2){let n=this.sections[e],i=this.sections[e+1];i<0?t.push(n):0==i?t.push([n]):t.push([n].concat(this.inserted[e>>1].toJSON()))}return t}static of(t,e,n){let i=[],s=[],r=0,h=null;function o(t=!1){if(!t&&!i.length)return;r<e&&O(i,e-r,-1);let n=new A(i,s);h=h?h.compose(n.map(h)):n,i=[],s=[],r=0}return function t(l){if(Array.isArray(l))for(let e of l)t(e);else if(l instanceof A){if(l.length!=e)throw new RangeError(`Mismatched change set length (got ${l.length}, expected ${e})`);o(),h=h?h.compose(l.map(h)):l}else{let{from:t,to:h=t,insert:a}=l;if(t>h||t<0||h>e)throw new RangeError(`Invalid change range ${t} to ${h} (in doc of length ${e})`);let c=a?"string"==typeof a?f.of(a.split(n||P)):a:f.empty,u=c.length;if(t==h&&0==u)return;t<r&&o(),t>r&&O(i,t-r,-1),O(i,h-t,u),R(s,i,c),r=h}}(t),o(!h),h}static empty(t){return new A(t?[t,-1]:[],[])}static fromJSON(t){if(!Array.isArray(t))throw new RangeError("Invalid JSON representation of ChangeSet");let e=[],n=[];for(let i=0;i<t.length;i++){let s=t[i];if("number"==typeof s)e.push(s,-1);else{if(!Array.isArray(s)||"number"!=typeof s[0]||s.some(((t,e)=>e&&"string"!=typeof t)))throw new RangeError("Invalid JSON representation of ChangeSet");if(1==s.length)e.push(s[0],0);else{for(;n.length<i;)n.push(f.empty);n[i]=f.of(s.slice(1)),e.push(s[0],n[i].length)}}}return new A(e,n)}static createSet(t,e){return new A(t,e)}}function O(t,e,n,i=!1){if(0==e&&n<=0)return;let s=t.length-2;s>=0&&n<=0&&n==t[s+1]?t[s]+=e:s>=0&&0==e&&0==t[s]?t[s+1]+=n:i?(t[s]+=e,t[s+1]+=n):t.push(e,n)}function R(t,e,n){if(0==n.length)return;let i=e.length-2>>1;if(i<t.length)t[t.length-1]=t[t.length-1].append(n);else{for(;t.length<i;)t.push(f.empty);t.push(n)}}function C(t,e,n){let i=t.inserted;for(let s=0,r=0,h=0;h<t.sections.length;){let o=t.sections[h++],l=t.sections[h++];if(l<0)s+=o,r+=o;else{let a=s,c=r,u=f.empty;for(;a+=o,c+=l,l&&i&&(u=u.append(i[h-2>>1])),!(n||h==t.sections.length||t.sections[h+1]<0);)o=t.sections[h++],l=t.sections[h++];e(s,a,r,c,u),s=a,r=c}}}function T(t,e,n,i=!1){let s=[],r=i?[]:null,h=new F(t),o=new F(e);for(let t=-1;;){if(h.done&&o.len||o.done&&h.len)throw new Error("Mismatched change set lengths");if(-1==h.ins&&-1==o.ins){let t=Math.min(h.len,o.len);O(s,t,-1),h.forward(t),o.forward(t)}else if(o.ins>=0&&(h.ins<0||t==h.i||0==h.off&&(o.len<h.len||o.len==h.len&&!n))){let e=o.len;for(O(s,o.ins,-1);e;){let n=Math.min(h.len,e);h.ins>=0&&t<h.i&&h.len<=n&&(O(s,0,h.ins),r&&R(r,s,h.text),t=h.i),h.forward(n),e-=n}o.next()}else{if(!(h.ins>=0)){if(h.done&&o.done)return r?A.createSet(s,r):M.create(s);throw new Error("Mismatched change set lengths")}{let e=0,n=h.len;for(;n;)if(-1==o.ins){let t=Math.min(n,o.len);e+=t,n-=t,o.forward(t)}else{if(!(0==o.ins&&o.len<n))break;n-=o.len,o.next()}O(s,e,t<h.i?h.ins:0),r&&t<h.i&&R(r,s,h.text),t=h.i,h.forward(h.len-n)}}}}function N(t,e,n=!1){let i=[],s=n?[]:null,r=new F(t),h=new F(e);for(let t=!1;;){if(r.done&&h.done)return s?A.createSet(i,s):M.create(i);if(0==r.ins)O(i,r.len,0,t),r.next();else if(0!=h.len||h.done){if(r.done||h.done)throw new Error("Mismatched change set lengths");{let e=Math.min(r.len2,h.len),n=i.length;if(-1==r.ins){let n=-1==h.ins?-1:h.off?0:h.ins;O(i,e,n,t),s&&n&&R(s,i,h.text)}else-1==h.ins?(O(i,r.off?0:r.len,e,t),s&&R(s,i,r.textBit(e))):(O(i,r.off?0:r.len,h.off?0:h.ins,t),s&&!h.off&&R(s,i,h.text));t=(r.ins>e||h.ins>=0&&h.len>e)&&(t||i.length>n),r.forward2(e),h.forward(e)}}else O(i,0,h.ins,t),s&&R(s,i,h.text),h.next()}}class F{constructor(t){this.set=t,this.i=0,this.next()}next(){let{sections:t}=this.set;this.i<t.length?(this.len=t[this.i++],this.ins=t[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:t}=this.set,e=this.i-2>>1;return e>=t.length?f.empty:t[e]}textBit(t){let{inserted:e}=this.set,n=this.i-2>>1;return n>=e.length&&!t?f.empty:e[n].slice(this.off,null==t?void 0:this.off+t)}forward(t){t==this.len?this.next():(this.len-=t,this.off+=t)}forward2(t){-1==this.ins?this.forward(t):t==this.ins?this.next():(this.ins-=t,this.off+=t)}}class B{constructor(t,e,n){this.from=t,this.to=e,this.flags=n}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 t=7&this.flags;return 7==t?null:t}get goalColumn(){let t=this.flags>>6;return 16777215==t?void 0:t}map(t,e=-1){let n,i;return this.empty?n=i=t.mapPos(this.from,e):(n=t.mapPos(this.from,1),i=t.mapPos(this.to,-1)),n==this.from&&i==this.to?this:new B(n,i,this.flags)}extend(t,e=t){if(t<=this.anchor&&e>=this.anchor)return J.range(t,e);let n=Math.abs(t-this.anchor)>Math.abs(e-this.anchor)?t:e;return J.range(this.anchor,n)}eq(t,e=!1){return!(this.anchor!=t.anchor||this.head!=t.head||e&&this.empty&&this.assoc!=t.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(t){if(!t||"number"!=typeof t.anchor||"number"!=typeof t.head)throw new RangeError("Invalid JSON representation for SelectionRange");return J.range(t.anchor,t.head)}static create(t,e,n){return new B(t,e,n)}}class J{constructor(t,e){this.ranges=t,this.mainIndex=e}map(t,e=-1){return t.empty?this:J.create(this.ranges.map((n=>n.map(t,e))),this.mainIndex)}eq(t,e=!1){if(this.ranges.length!=t.ranges.length||this.mainIndex!=t.mainIndex)return!1;for(let n=0;n<this.ranges.length;n++)if(!this.ranges[n].eq(t.ranges[n],e))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return 1==this.ranges.length?this:new J([this.main],0)}addRange(t,e=!0){return J.create([t].concat(this.ranges),e?0:this.mainIndex+1)}replaceRange(t,e=this.mainIndex){let n=this.ranges.slice();return n[e]=t,J.create(n,this.mainIndex)}toJSON(){return{ranges:this.ranges.map((t=>t.toJSON())),main:this.mainIndex}}static fromJSON(t){if(!t||!Array.isArray(t.ranges)||"number"!=typeof t.main||t.main>=t.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new J(t.ranges.map((t=>B.fromJSON(t))),t.main)}static single(t,e=t){return new J([J.range(t,e)],0)}static create(t,e=0){if(0==t.length)throw new RangeError("A selection needs at least one range");for(let n=0,i=0;i<t.length;i++){let s=t[i];if(s.empty?s.from<=n:s.from<n)return J.normalized(t.slice(),e);n=s.to}return new J(t,e)}static cursor(t,e=0,n,i){return B.create(t,t,(0==e?0:e<0?8:16)|(null==n?7:Math.min(6,n))|(null!=i?i:16777215)<<6)}static range(t,e,n,i){let s=(null!=n?n:16777215)<<6|(null==i?7:Math.min(6,i));return e<t?B.create(e,t,48|s):B.create(t,e,(e>t?8:0)|s)}static normalized(t,e=0){let n=t[e];t.sort(((t,e)=>t.from-e.from)),e=t.indexOf(n);for(let n=1;n<t.length;n++){let i=t[n],s=t[n-1];if(i.empty?i.from<=s.to:i.from<s.to){let r=s.from,h=Math.max(i.to,s.to);n<=e&&e--,t.splice(--n,2,i.anchor>i.head?J.range(h,r):J.range(r,h))}}return new J(t,e)}}function D(t,e){for(let n of t.ranges)if(n.to>e)throw new RangeError("Selection points outside of document")}let L=0;class j{constructor(t,e,n,i,s){this.combine=t,this.compareInput=e,this.compare=n,this.isStatic=i,this.id=L++,this.default=t([]),this.extensions="function"==typeof s?s(this):s}get reader(){return this}static define(t={}){return new j(t.combine||(t=>t),t.compareInput||((t,e)=>t===e),t.compare||(t.combine?(t,e)=>t===e:q),!!t.static,t.enables)}of(t){return new $([],this,0,t)}compute(t,e){if(this.isStatic)throw new Error("Can't compute a static facet");return new $(t,this,1,e)}computeN(t,e){if(this.isStatic)throw new Error("Can't compute a static facet");return new $(t,this,2,e)}from(t,e){return e||(e=t=>t),this.compute([t],(n=>e(n.field(t))))}}function q(t,e){return t==e||t.length==e.length&&t.every(((t,n)=>t===e[n]))}class ${constructor(t,e,n,i){this.dependencies=t,this.facet=e,this.type=n,this.value=i,this.id=L++}dynamicSlot(t){var e;let n=this.value,i=this.facet.compareInput,s=this.id,r=t[s]>>1,h=2==this.type,o=!1,l=!1,a=[];for(let n of this.dependencies)"doc"==n?o=!0:"selection"==n?l=!0:1&(null!==(e=t[n.id])&&void 0!==e?e:1)||a.push(t[n.id]);return{create:t=>(t.values[r]=n(t),1),update(t,e){if(o&&e.docChanged||l&&(e.docChanged||e.selection)||V(t,a)){let e=n(t);if(h?!z(e,t.values[r],i):!i(e,t.values[r]))return t.values[r]=e,1}return 0},reconfigure:(t,e)=>{let o,l=e.config.address[s];if(null!=l){let s=st(e,l);if(this.dependencies.every((n=>n instanceof j?e.facet(n)===t.facet(n):!(n instanceof U)||e.field(n,!1)==t.field(n,!1)))||(h?z(o=n(t),s,i):i(o=n(t),s)))return t.values[r]=s,0}else o=n(t);return t.values[r]=o,1}}}}function z(t,e,n){if(t.length!=e.length)return!1;for(let i=0;i<t.length;i++)if(!n(t[i],e[i]))return!1;return!0}function V(t,e){let n=!1;for(let i of e)1&it(t,i)&&(n=!0);return n}function _(t,e,n){let i=n.map((e=>t[e.id])),s=n.map((t=>t.type)),r=i.filter((t=>!(1&t))),h=t[e.id]>>1;function o(t){let n=[];for(let e=0;e<i.length;e++){let r=st(t,i[e]);if(2==s[e])for(let t of r)n.push(t);else n.push(r)}return e.combine(n)}return{create(t){for(let e of i)it(t,e);return t.values[h]=o(t),1},update(t,n){if(!V(t,r))return 0;let i=o(t);return e.compare(i,t.values[h])?0:(t.values[h]=i,1)},reconfigure(t,s){let r=V(t,i),l=s.config.facets[e.id],a=s.facet(e);if(l&&!r&&q(n,l))return t.values[h]=a,0;let c=o(t);return e.compare(c,a)?(t.values[h]=a,0):(t.values[h]=c,1)}}}const W=j.define({static:!0});class U{constructor(t,e,n,i,s){this.id=t,this.createF=e,this.updateF=n,this.compareF=i,this.spec=s,this.provides=void 0}static define(t){let e=new U(L++,t.create,t.update,t.compare||((t,e)=>t===e),t);return t.provide&&(e.provides=t.provide(e)),e}create(t){let e=t.facet(W).find((t=>t.field==this));return((null==e?void 0:e.create)||this.createF)(t)}slot(t){let e=t[this.id]>>1;return{create:t=>(t.values[e]=this.create(t),1),update:(t,n)=>{let i=t.values[e],s=this.updateF(i,n);return this.compareF(i,s)?0:(t.values[e]=s,1)},reconfigure:(t,n)=>{let i,s=t.facet(W),r=n.facet(W);return(i=s.find((t=>t.field==this)))&&i!=r.find((t=>t.field==this))?(t.values[e]=i.create(t),1):null!=n.config.address[this.id]?(t.values[e]=n.field(this),0):(t.values[e]=this.create(t),1)}}}init(t){return[this,W.of({field:this,create:t})]}get extension(){return this}}const G=4,H=3,K=2,Q=1;function X(t){return e=>new Z(e,t)}const Y={highest:X(0),high:X(Q),default:X(K),low:X(H),lowest:X(G)};class Z{constructor(t,e){this.inner=t,this.prec=e}}class tt{of(t){return new et(this,t)}reconfigure(t){return tt.reconfigure.of({compartment:this,extension:t})}get(t){return t.config.compartments.get(this)}}class et{constructor(t,e){this.compartment=t,this.inner=e}}class nt{constructor(t,e,n,i,s,r){for(this.base=t,this.compartments=e,this.dynamicSlots=n,this.address=i,this.staticValues=s,this.facets=r,this.statusTemplate=[];this.statusTemplate.length<n.length;)this.statusTemplate.push(0)}staticFacet(t){let e=this.address[t.id];return null==e?t.default:this.staticValues[e>>1]}static resolve(t,e,n){let i=[],s=Object.create(null),r=new Map;for(let n of function(t,e,n){let i=[[],[],[],[],[]],s=new Map;function r(t,h){let o=s.get(t);if(null!=o){if(o<=h)return;let e=i[o].indexOf(t);e>-1&&i[o].splice(e,1),t instanceof et&&n.delete(t.compartment)}if(s.set(t,h),Array.isArray(t))for(let e of t)r(e,h);else if(t instanceof et){if(n.has(t.compartment))throw new RangeError("Duplicate use of compartment in extensions");let i=e.get(t.compartment)||t.inner;n.set(t.compartment,i),r(i,h)}else if(t instanceof Z)r(t.inner,t.prec);else if(t instanceof U)i[h].push(t),t.provides&&r(t.provides,h);else if(t instanceof $)i[h].push(t),t.facet.extensions&&r(t.facet.extensions,K);else{let e=t.extension;if(!e)throw new Error(`Unrecognized extension value in extension set (${t}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);r(e,h)}}return r(t,K),i.reduce(((t,e)=>t.concat(e)))}(t,e,r))n instanceof U?i.push(n):(s[n.facet.id]||(s[n.facet.id]=[])).push(n);let h=Object.create(null),o=[],l=[];for(let t of i)h[t.id]=l.length<<1,l.push((e=>t.slot(e)));let a=null==n?void 0:n.config.facets;for(let t in s){let e=s[t],i=e[0].facet,r=a&&a[t]||[];if(e.every((t=>0==t.type)))if(h[i.id]=o.length<<1|1,q(r,e))o.push(n.facet(i));else{let t=i.combine(e.map((t=>t.value)));o.push(n&&i.compare(t,n.facet(i))?n.facet(i):t)}else{for(let t of e)0==t.type?(h[t.id]=o.length<<1|1,o.push(t.value)):(h[t.id]=l.length<<1,l.push((e=>t.dynamicSlot(e))));h[i.id]=l.length<<1,l.push((t=>_(t,i,e)))}}let c=l.map((t=>t(h)));return new nt(t,r,c,h,o,s)}}function it(t,e){if(1&e)return 2;let n=e>>1,i=t.status[n];if(4==i)throw new Error("Cyclic dependency between fields and/or facets");if(2&i)return i;t.status[n]=4;let s=t.computeSlot(t,t.config.dynamicSlots[n]);return t.status[n]=2|s}function st(t,e){return 1&e?t.config.staticValues[e>>1]:t.values[e>>1]}const rt=j.define(),ht=j.define({combine:t=>t.some((t=>t)),static:!0}),ot=j.define({combine:t=>t.length?t[0]:void 0,static:!0}),lt=j.define(),at=j.define(),ct=j.define(),ft=j.define({combine:t=>!!t.length&&t[0]});class ut{constructor(t,e){this.type=t,this.value=e}static define(){return new gt}}class gt{of(t){return new ut(this,t)}}class dt{constructor(t){this.map=t}of(t){return new pt(this,t)}}class pt{constructor(t,e){this.type=t,this.value=e}map(t){let e=this.type.map(this.value,t);return void 0===e?void 0:e==this.value?this:new pt(this.type,e)}is(t){return this.type==t}static define(t={}){return new dt(t.map||(t=>t))}static mapEffects(t,e){if(!t.length)return t;let n=[];for(let i of t){let t=i.map(e);t&&n.push(t)}return n}}pt.reconfigure=pt.define(),pt.appendConfig=pt.define();class mt{constructor(t,e,n,i,s,r){this.startState=t,this.changes=e,this.selection=n,this.effects=i,this.annotations=s,this.scrollIntoView=r,this._doc=null,this._state=null,n&&D(n,e.newLength),s.some((t=>t.type==mt.time))||(this.annotations=s.concat(mt.time.of(Date.now())))}static create(t,e,n,i,s,r){return new mt(t,e,n,i,s,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(t){for(let e of this.annotations)if(e.type==t)return e.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(t){let e=this.annotation(mt.userEvent);return!(!e||!(e==t||e.length>t.length&&e.slice(0,t.length)==t&&"."==e[t.length]))}}function vt(t,e){let n=[];for(let i=0,s=0;;){let r,h;if(i<t.length&&(s==e.length||e[s]>=t[i]))r=t[i++],h=t[i++];else{if(!(s<e.length))return n;r=e[s++],h=e[s++]}!n.length||n[n.length-1]<r?n.push(r,h):n[n.length-1]<h&&(n[n.length-1]=h)}}function xt(t,e,n){var i;let s,r,h;return n?(s=e.changes,r=A.empty(e.changes.length),h=t.changes.compose(e.changes)):(s=e.changes.map(t.changes),r=t.changes.mapDesc(e.changes,!0),h=t.changes.compose(s)),{changes:h,selection:e.selection?e.selection.map(r):null===(i=t.selection)||void 0===i?void 0:i.map(s),effects:pt.mapEffects(t.effects,s).concat(pt.mapEffects(e.effects,r)),annotations:t.annotations.length?t.annotations.concat(e.annotations):e.annotations,scrollIntoView:t.scrollIntoView||e.scrollIntoView}}function wt(t,e,n){let i=e.selection,s=St(e.annotations);return e.userEvent&&(s=s.concat(mt.userEvent.of(e.userEvent))),{changes:e.changes instanceof A?e.changes:A.of(e.changes||[],n,t.facet(ot)),selection:i&&(i instanceof J?i:J.single(i.anchor,i.head)),effects:St(e.effects),annotations:s,scrollIntoView:!!e.scrollIntoView}}function kt(t,e,n){let i=wt(t,e.length?e[0]:{},t.doc.length);e.length&&!1===e[0].filter&&(n=!1);for(let s=1;s<e.length;s++){!1===e[s].filter&&(n=!1);let r=!!e[s].sequential;i=xt(i,wt(t,e[s],r?i.changes.newLength:t.doc.length),r)}let s=mt.create(t,i.changes,i.selection,i.effects,i.annotations,i.scrollIntoView);return function(t){let e=t.startState,n=e.facet(ct),i=t;for(let s=n.length-1;s>=0;s--){let r=n[s](t);r&&Object.keys(r).length&&(i=xt(i,wt(e,r,t.changes.newLength),!0))}return i==t?t:mt.create(e,t.changes,t.selection,i.effects,i.annotations,i.scrollIntoView)}(n?function(t){let e=t.startState,n=!0;for(let i of e.facet(lt)){let e=i(t);if(!1===e){n=!1;break}Array.isArray(e)&&(n=!0===n?e:vt(n,e))}if(!0!==n){let i,s;if(!1===n)s=t.changes.invertedDesc,i=A.empty(e.doc.length);else{let e=t.changes.filter(n);i=e.changes,s=e.filtered.mapDesc(e.changes).invertedDesc}t=mt.create(e,i,t.selection&&t.selection.map(s),pt.mapEffects(t.effects,s),t.annotations,t.scrollIntoView)}let i=e.facet(at);for(let n=i.length-1;n>=0;n--){let s=i[n](t);t=s instanceof mt?s:Array.isArray(s)&&1==s.length&&s[0]instanceof mt?s[0]:kt(e,St(s),!1)}return t}(s):s)}mt.time=ut.define(),mt.userEvent=ut.define(),mt.addToHistory=ut.define(),mt.remote=ut.define();const yt=[];function St(t){return null==t?yt:Array.isArray(t)?t:[t]}var It=function(t){return t[t.Word=0]="Word",t[t.Space=1]="Space",t[t.Other=2]="Other",t}(It||(It={}));const bt=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let Pt;try{Pt=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(t){}function Et(t){return e=>{if(!/\S/.test(e))return It.Space;if(function(t){if(Pt)return Pt.test(t);for(let e=0;e<t.length;e++){let n=t[e];if(/\w/.test(n)||n>"€"&&(n.toUpperCase()!=n.toLowerCase()||bt.test(n)))return!0}return!1}(e))return It.Word;for(let n=0;n<t.length;n++)if(e.indexOf(t[n])>-1)return It.Word;return It.Other}}class Mt{constructor(t,e,n,i,s,r){this.config=t,this.doc=e,this.selection=n,this.values=i,this.status=t.statusTemplate.slice(),this.computeSlot=s,r&&(r._state=this);for(let t=0;t<this.config.dynamicSlots.length;t++)it(this,t<<1);this.computeSlot=null}field(t,e=!0){let n=this.config.address[t.id];if(null!=n)return it(this,n),st(this,n);if(e)throw new RangeError("Field is not present in this state")}update(...t){return kt(this,t,!0)}applyTransaction(t){let e,n=this.config,{base:i,compartments:s}=n;for(let e of t.effects)e.is(tt.reconfigure)?(n&&(s=new Map,n.compartments.forEach(((t,e)=>s.set(e,t))),n=null),s.set(e.value.compartment,e.value.extension)):e.is(pt.reconfigure)?(n=null,i=e.value):e.is(pt.appendConfig)&&(n=null,i=St(i).concat(e.value));if(n)e=t.startState.values.slice();else{n=nt.resolve(i,s,this),e=new Mt(n,this.doc,this.selection,n.dynamicSlots.map((()=>null)),((t,e)=>e.reconfigure(t,this)),null).values}let r=t.startState.facet(ht)?t.newSelection:t.newSelection.asSingle();new Mt(n,t.newDoc,r,e,((e,n)=>n.update(e,t)),t)}replaceSelection(t){return"string"==typeof t&&(t=this.toText(t)),this.changeByRange((e=>({changes:{from:e.from,to:e.to,insert:t},range:J.cursor(e.from+t.length)})))}changeByRange(t){let e=this.selection,n=t(e.ranges[0]),i=this.changes(n.changes),s=[n.range],r=St(n.effects);for(let n=1;n<e.ranges.length;n++){let h=t(e.ranges[n]),o=this.changes(h.changes),l=o.map(i);for(let t=0;t<n;t++)s[t]=s[t].map(l);let a=i.mapDesc(o,!0);s.push(h.range.map(a)),i=i.compose(l),r=pt.mapEffects(r,l).concat(pt.mapEffects(St(h.effects),a))}return{changes:i,selection:J.create(s,e.mainIndex),effects:r}}changes(t=[]){return t instanceof A?t:A.of(t,this.doc.length,this.facet(Mt.lineSeparator))}toText(t){return f.of(t.split(this.facet(Mt.lineSeparator)||P))}sliceDoc(t=0,e=this.doc.length){return this.doc.sliceString(t,e,this.lineBreak)}facet(t){let e=this.config.address[t.id];return null==e?t.default:(it(this,e),st(this,e))}toJSON(t){let e={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(t)for(let n in t){let i=t[n];i instanceof U&&null!=this.config.address[i.id]&&(e[n]=i.spec.toJSON(this.field(t[n]),this))}return e}static fromJSON(t,e={},n){if(!t||"string"!=typeof t.doc)throw new RangeError("Invalid JSON representation for EditorState");let i=[];if(n)for(let e in n)if(Object.prototype.hasOwnProperty.call(t,e)){let s=n[e],r=t[e];i.push(s.init((t=>s.spec.fromJSON(r,t))))}return Mt.create({doc:t.doc,selection:J.fromJSON(t.selection),extensions:e.extensions?i.concat([e.extensions]):i})}static create(t={}){let e=nt.resolve(t.extensions||[],new Map),n=t.doc instanceof f?t.doc:f.of((t.doc||"").split(e.staticFacet(Mt.lineSeparator)||P)),i=t.selection?t.selection instanceof J?t.selection:J.single(t.selection.anchor,t.selection.head):J.single(0);return D(i,n.length),e.staticFacet(ht)||(i=i.asSingle()),new Mt(e,n,i,e.dynamicSlots.map((()=>null)),((t,e)=>e.create(t)),null)}get tabSize(){return this.facet(Mt.tabSize)}get lineBreak(){return this.facet(Mt.lineSeparator)||"\n"}get readOnly(){return this.facet(ft)}phrase(t,...e){for(let e of this.facet(Mt.phrases))if(Object.prototype.hasOwnProperty.call(e,t)){t=e[t];break}return e.length&&(t=t.replace(/\$(\$|\d*)/g,((t,n)=>{if("$"==n)return"$";let i=+(n||1);return!i||i>e.length?t:e[i-1]}))),t}languageDataAt(t,e,n=-1){let i=[];for(let s of this.facet(rt))for(let r of s(this,e,n))Object.prototype.hasOwnProperty.call(r,t)&&i.push(r[t]);return i}charCategorizer(t){return Et(this.languageDataAt("wordChars",t).join(""))}wordAt(t){let{text:e,from:n,length:i}=this.doc.lineAt(t),s=this.charCategorizer(t),r=t-n,h=t-n;for(;r>0;){let t=y(e,r,!1);if(s(e.slice(t,r))!=It.Word)break;r=t}for(;h<i;){let t=y(e,h);if(s(e.slice(h,t))!=It.Word)break;h=t}return r==h?null:J.range(r+n,h+n)}}function At(t,e,n={}){let i={};for(let e of t)for(let t of Object.keys(e)){let s=e[t],r=i[t];if(void 0===r)i[t]=s;else if(r===s||void 0===s);else{if(!Object.hasOwnProperty.call(n,t))throw new Error("Config merge conflict for field "+t);i[t]=n[t](r,s)}}for(let t in e)void 0===i[t]&&(i[t]=e[t]);return i}Mt.allowMultipleSelections=ht,Mt.tabSize=j.define({combine:t=>t.length?t[0]:4}),Mt.lineSeparator=ot,Mt.readOnly=ft,Mt.phrases=j.define({compare(t,e){let n=Object.keys(t),i=Object.keys(e);return n.length==i.length&&n.every((n=>t[n]==e[n]))}}),Mt.languageData=rt,Mt.changeFilter=lt,Mt.transactionFilter=at,Mt.transactionExtender=ct,tt.reconfigure=pt.define();class Ot{eq(t){return this==t}range(t,e=t){return Rt.create(t,e,this)}}Ot.prototype.startSide=Ot.prototype.endSide=0,Ot.prototype.point=!1,Ot.prototype.mapMode=E.TrackDel;class Rt{constructor(t,e,n){this.from=t,this.to=e,this.value=n}static create(t,e,n){return new Rt(t,e,n)}}function Ct(t,e){return t.from-e.from||t.value.startSide-e.value.startSide}class Tt{constructor(t,e,n,i){this.from=t,this.to=e,this.value=n,this.maxPoint=i}get length(){return this.to[this.to.length-1]}findIndex(t,e,n,i=0){let s=n?this.to:this.from;for(let r=i,h=s.length;;){if(r==h)return r;let i=r+h>>1,o=s[i]-t||(n?this.value[i].endSide:this.value[i].startSide)-e;if(i==r)return o>=0?r:h;o>=0?h=i:r=i+1}}between(t,e,n,i){for(let s=this.findIndex(e,-1e9,!0),r=this.findIndex(n,1e9,!1,s);s<r;s++)if(!1===i(this.from[s]+t,this.to[s]+t,this.value[s]))return!1}map(t,e){let n=[],i=[],s=[],r=-1,h=-1;for(let o=0;o<this.value.length;o++){let l,a,c=this.value[o],f=this.from[o]+t,u=this.to[o]+t;if(f==u){let t=e.mapPos(f,c.startSide,c.mapMode);if(null==t)continue;if(l=a=t,c.startSide!=c.endSide&&(a=e.mapPos(f,c.endSide),a<l))continue}else if(l=e.mapPos(f,c.startSide),a=e.mapPos(u,c.endSide),l>a||l==a&&c.startSide>0&&c.endSide<=0)continue;(a-l||c.endSide-c.startSide)<0||(r<0&&(r=l),c.point&&(h=Math.max(h,a-l)),n.push(c),i.push(l-r),s.push(a-r))}return{mapped:n.length?new Tt(i,s,n,h):null,pos:r}}}class Nt{constructor(t,e,n,i){this.chunkPos=t,this.chunk=e,this.nextLayer=n,this.maxPoint=i}static create(t,e,n,i){return new Nt(t,e,n,i)}get length(){let t=this.chunk.length-1;return t<0?0:Math.max(this.chunkEnd(t),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let t=this.nextLayer.size;for(let e of this.chunk)t+=e.value.length;return t}chunkEnd(t){return this.chunkPos[t]+this.chunk[t].length}update(t){let{add:e=[],sort:n=!1,filterFrom:i=0,filterTo:s=this.length}=t,r=t.filter;if(0==e.length&&!r)return this;if(n&&(e=e.slice().sort(Ct)),this.isEmpty)return e.length?Nt.of(e):this;let h=new Jt(this,null,-1).goto(0),o=0,l=[],a=new Ft;for(;h.value||o<e.length;)if(o<e.length&&(h.from-e[o].from||h.startSide-e[o].value.startSide)>=0){let t=e[o++];a.addInner(t.from,t.to,t.value)||l.push(t)}else 1==h.rangeIndex&&h.chunkIndex<this.chunk.length&&(o==e.length||this.chunkEnd(h.chunkIndex)<e[o].from)&&(!r||i>this.chunkEnd(h.chunkIndex)||s<this.chunkPos[h.chunkIndex])&&a.addChunk(this.chunkPos[h.chunkIndex],this.chunk[h.chunkIndex])?h.nextChunk():((!r||i>h.to||s<h.from||r(h.from,h.to,h.value))&&(a.addInner(h.from,h.to,h.value)||l.push(Rt.create(h.from,h.to,h.value))),h.next());return a.finishInner(this.nextLayer.isEmpty&&!l.length?Nt.empty:this.nextLayer.update({add:l,filter:r,filterFrom:i,filterTo:s}))}map(t){if(t.empty||this.isEmpty)return this;let e=[],n=[],i=-1;for(let s=0;s<this.chunk.length;s++){let r=this.chunkPos[s],h=this.chunk[s],o=t.touchesRange(r,r+h.length);if(!1===o)i=Math.max(i,h.maxPoint),e.push(h),n.push(t.mapPos(r));else if(!0===o){let{mapped:s,pos:o}=h.map(r,t);s&&(i=Math.max(i,s.maxPoint),e.push(s),n.push(o))}}let s=this.nextLayer.map(t);return 0==e.length?s:new Nt(n,e,s||Nt.empty,i)}between(t,e,n){if(!this.isEmpty){for(let i=0;i<this.chunk.length;i++){let s=this.chunkPos[i],r=this.chunk[i];if(e>=s&&t<=s+r.length&&!1===r.between(s,t-s,e-s,n))return}this.nextLayer.between(t,e,n)}}iter(t=0){return Dt.from([this]).goto(t)}get isEmpty(){return this.nextLayer==this}static iter(t,e=0){return Dt.from(t).goto(e)}static compare(t,e,n,i,s=-1){let r=t.filter((t=>t.maxPoint>0||!t.isEmpty&&t.maxPoint>=s)),h=e.filter((t=>t.maxPoint>0||!t.isEmpty&&t.maxPoint>=s)),o=Bt(r,h,n),l=new jt(r,o,s),a=new jt(h,o,s);n.iterGaps(((t,e,n)=>qt(l,t,a,e,n,i))),n.empty&&0==n.length&&qt(l,0,a,0,0,i)}static eq(t,e,n=0,i){null==i&&(i=999999999);let s=t.filter((t=>!t.isEmpty&&e.indexOf(t)<0)),r=e.filter((e=>!e.isEmpty&&t.indexOf(e)<0));if(s.length!=r.length)return!1;if(!s.length)return!0;let h=Bt(s,r),o=new jt(s,h,0).goto(n),l=new jt(r,h,0).goto(n);for(;;){if(o.to!=l.to||!$t(o.active,l.active)||o.point&&(!l.point||!o.point.eq(l.point)))return!1;if(o.to>i)return!0;o.next(),l.next()}}static spans(t,e,n,i,s=-1){let r=new jt(t,null,s).goto(e),h=e,o=r.openStart;for(;;){let t=Math.min(r.to,n);if(r.point){let n=r.activeForPoint(r.to),s=r.pointFrom<e?n.length+1:r.point.startSide<0?n.length:Math.min(n.length,o);i.point(h,t,r.point,n,s,r.pointRank),o=Math.min(r.openEnd(t),n.length)}else t>h&&(i.span(h,t,r.active,o),o=r.openEnd(t));if(r.to>n)return o+(r.point&&r.to>n?1:0);h=r.to,r.next()}}static of(t,e=!1){let n=new Ft;for(let i of t instanceof Rt?[t]:e?function(t){if(t.length>1)for(let e=t[0],n=1;n<t.length;n++){let i=t[n];if(Ct(e,i)>0)return t.slice().sort(Ct);e=i}return t}(t):t)n.add(i.from,i.to,i.value);return n.finish()}static join(t){if(!t.length)return Nt.empty;let e=t[t.length-1];for(let n=t.length-2;n>=0;n--)for(let i=t[n];i!=Nt.empty;i=i.nextLayer)e=new Nt(i.chunkPos,i.chunk,e,Math.max(i.maxPoint,e.maxPoint));return e}}Nt.empty=new Nt([],[],null,-1),Nt.empty.nextLayer=Nt.empty;class Ft{finishChunk(t){this.chunks.push(new Tt(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,t&&(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(t,e,n){this.addInner(t,e,n)||(this.nextLayer||(this.nextLayer=new Ft)).add(t,e,n)}addInner(t,e,n){let i=t-this.lastTo||n.startSide-this.last.endSide;if(i<=0&&(t-this.lastFrom||n.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=t),this.from.push(t-this.chunkStart),this.to.push(e-this.chunkStart),this.last=n,this.lastFrom=t,this.lastTo=e,this.value.push(n),n.point&&(this.maxPoint=Math.max(this.maxPoint,e-t)),!0)}addChunk(t,e){if((t-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(t);let n=e.value.length-1;return this.last=e.value[n],this.lastFrom=e.from[n]+t,this.lastTo=e.to[n]+t,!0}finish(){return this.finishInner(Nt.empty)}finishInner(t){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return t;let e=Nt.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(t):t,this.setMaxPoint);return this.from=null,e}}function Bt(t,e,n){let i=new Map;for(let e of t)for(let t=0;t<e.chunk.length;t++)e.chunk[t].maxPoint<=0&&i.set(e.chunk[t],e.chunkPos[t]);let s=new Set;for(let t of e)for(let e=0;e<t.chunk.length;e++){let r=i.get(t.chunk[e]);null==r||(n?n.mapPos(r):r)!=t.chunkPos[e]||(null==n?void 0:n.touchesRange(r,r+t.chunk[e].length))||s.add(t.chunk[e])}return s}class Jt{constructor(t,e,n,i=0){this.layer=t,this.skip=e,this.minPoint=n,this.rank=i}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(t,e=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(t,e,!1),this}gotoInner(t,e,n){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)<t||e.maxPoint<this.minPoint))break;this.chunkIndex++,n=!1}if(this.chunkIndex<this.layer.chunk.length){let i=this.layer.chunk[this.chunkIndex].findIndex(t-this.layer.chunkPos[this.chunkIndex],e,!0);(!n||this.rangeIndex<i)&&this.setRangeIndex(i)}this.next()}forward(t,e){(this.to-t||this.endSide-e)<0&&this.gotoInner(t,e,!0)}next(){for(;;){if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}{let t=this.layer.chunkPos[this.chunkIndex],e=this.layer.chunk[this.chunkIndex],n=t+e.from[this.rangeIndex];if(this.from=n,this.to=t+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(t){if(t==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=t}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(t){return this.from-t.from||this.startSide-t.startSide||this.rank-t.rank||this.to-t.to||this.endSide-t.endSide}}class Dt{constructor(t){this.heap=t}static from(t,e=null,n=-1){let i=[];for(let s=0;s<t.length;s++)for(let r=t[s];!r.isEmpty;r=r.nextLayer)r.maxPoint>=n&&i.push(new Jt(r,e,n,s));return 1==i.length?i[0]:new Dt(i)}get startSide(){return this.value?this.value.startSide:0}goto(t,e=-1e9){for(let n of this.heap)n.goto(t,e);for(let t=this.heap.length>>1;t>=0;t--)Lt(this.heap,t);return this.next(),this}forward(t,e){for(let n of this.heap)n.forward(t,e);for(let t=this.heap.length>>1;t>=0;t--)Lt(this.heap,t);(this.to-t||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 t=this.heap[0];this.from=t.from,this.to=t.to,this.value=t.value,this.rank=t.rank,t.value&&t.next(),Lt(this.heap,0)}}}function Lt(t,e){for(let n=t[e];;){let i=1+(e<<1);if(i>=t.length)break;let s=t[i];if(i+1<t.length&&s.compare(t[i+1])>=0&&(s=t[i+1],i++),n.compare(s)<0)break;t[i]=n,t[e]=s,e=i}}class jt{constructor(t,e,n){this.minPoint=n,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=Dt.from(t,e,n)}goto(t,e=-1e9){return this.cursor.goto(t,e),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=t,this.endSide=e,this.openStart=-1,this.next(),this}forward(t,e){for(;this.minActive>-1&&(this.activeTo[this.minActive]-t||this.active[this.minActive].endSide-e)<0;)this.removeActive(this.minActive);this.cursor.forward(t,e)}removeActive(t){zt(this.active,t),zt(this.activeTo,t),zt(this.activeRank,t),this.minActive=_t(this.active,this.activeTo)}addActive(t){let e=0,{value:n,to:i,rank:s}=this.cursor;for(;e<this.activeRank.length&&(s-this.activeRank[e]||i-this.activeTo[e])>0;)e++;Vt(this.active,e,n),Vt(this.activeTo,e,i),Vt(this.activeRank,e,s),t&&Vt(t,e,this.cursor.from),this.minActive=_t(this.active,this.activeTo)}next(){let t=this.to,e=this.point;this.point=null;let n=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]>t){this.to=this.activeTo[i],this.endSide=this.active[i].endSide;break}this.removeActive(i),n&&zt(n,i)}else{if(!this.cursor.value){this.to=this.endSide=1e9;break}if(this.cursor.from>t){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}{let t=this.cursor.value;if(t.point){if(!(e&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)){this.point=t,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=t.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}this.cursor.next()}else this.addActive(n),this.cursor.next()}}}if(n){this.openStart=0;for(let e=n.length-1;e>=0&&n[e]<t;e--)this.openStart++}}activeForPoint(t){if(!this.active.length)return this.active;let e=[];for(let n=this.active.length-1;n>=0&&!(this.activeRank[n]<this.pointRank);n--)(this.activeTo[n]>t||this.activeTo[n]==t&&this.active[n].endSide>=this.point.endSide)&&e.push(this.active[n]);return e.reverse()}openEnd(t){let e=0;for(let n=this.activeTo.length-1;n>=0&&this.activeTo[n]>t;n--)e++;return e}}function qt(t,e,n,i,s,r){t.goto(e),n.goto(i);let h=i+s,o=i,l=i-e;for(;;){let e=t.to+l-n.to,i=e||t.endSide-n.endSide,s=i<0?t.to+l:n.to,a=Math.min(s,h);if(t.point||n.point?t.point&&n.point&&(t.point==n.point||t.point.eq(n.point))&&$t(t.activeForPoint(t.to),n.activeForPoint(n.to))||r.comparePoint(o,a,t.point,n.point):a>o&&!$t(t.active,n.active)&&r.compareRange(o,a,t.active,n.active),s>h)break;(e||t.openEnd!=n.openEnd)&&r.boundChange&&r.boundChange(s),o=s,i<=0&&t.next(),i>=0&&n.next()}}function $t(t,e){if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!=e[n]&&!t[n].eq(e[n]))return!1;return!0}function zt(t,e){for(let n=e,i=t.length-1;n<i;n++)t[n]=t[n+1];t.pop()}function Vt(t,e,n){for(let n=t.length-1;n>=e;n--)t[n+1]=t[n];t[e]=n}function _t(t,e){let n=-1,i=1e9;for(let s=0;s<e.length;s++)(e[s]-i||t[s].endSide-t[n].endSide)<0&&(n=s,i=e[s]);return n}function Wt(t,e,n=t.length){let i=0;for(let s=0;s<n&&s<t.length;)9==t.charCodeAt(s)?(i+=e-i%e,s++):(i++,s=y(t,s));return i}function Ut(t,e,n,i){for(let i=0,s=0;;){if(s>=e)return i;if(i==t.length)break;s+=9==t.charCodeAt(i)?n-s%n:1,i=y(t,i)}return!0===i?-1:t.length}export{ut as Annotation,gt as AnnotationType,M as ChangeDesc,A as ChangeSet,It as CharCategory,tt as Compartment,J as EditorSelection,Mt as EditorState,j as Facet,w as Line,E as MapMode,Y as Prec,Rt as Range,Nt as RangeSet,Ft as RangeSetBuilder,Ot as RangeValue,B as SelectionRange,pt as StateEffect,dt as StateEffectType,U as StateField,f as Text,mt as Transaction,S as codePointAt,b as codePointSize,At as combineConfig,Wt as countColumn,y as findClusterBreak,Ut as findColumn,I as fromCodePoint};
2
- //# sourceMappingURL=codemirror_state-1UkzIAPK.js.map