@ytsaurus/ui 1.90.1 → 1.91.0

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 (44) hide show
  1. package/dist/public/build/assets-manifest.json +31 -31
  2. package/dist/public/build/css/2140.254b6ed2.chunk.css +2 -0
  3. package/dist/public/build/css/2140.254b6ed2.chunk.css.map +1 -0
  4. package/dist/public/build/css/{2747.49a10cfc.chunk.css → 2747.46d89bd1.chunk.css} +2 -2
  5. package/dist/public/build/css/2747.46d89bd1.chunk.css.map +1 -0
  6. package/dist/public/build/css/{yt-monaco-editor.35fedd61.chunk.css → yt-monaco-editor.f3c34bec.chunk.css} +2 -2
  7. package/dist/public/build/css/yt-monaco-editor.f3c34bec.chunk.css.map +1 -0
  8. package/dist/public/build/js/{8674.ba5cb9f1.chunk.js → 4330.37e8a0dd.chunk.js} +3 -3
  9. package/dist/public/build/js/4330.37e8a0dd.chunk.js.map +1 -0
  10. package/dist/public/build/js/9312.ce15a566.chunk.js +3 -0
  11. package/dist/public/build/js/9312.ce15a566.chunk.js.map +1 -0
  12. package/dist/public/build/js/{chyt.ca9dd200.chunk.js → chyt.a8612ac3.chunk.js} +2 -2
  13. package/dist/public/build/js/{chyt.ca9dd200.chunk.js.map → chyt.a8612ac3.chunk.js.map} +1 -1
  14. package/dist/public/build/js/{cluster-page-wrapper.96c4ce3a.chunk.js → cluster-page-wrapper.d6af732a.chunk.js} +2 -2
  15. package/dist/public/build/js/{cluster-page-wrapper.96c4ce3a.chunk.js.map → cluster-page-wrapper.d6af732a.chunk.js.map} +1 -1
  16. package/dist/public/build/js/main.376121e5.js +3 -0
  17. package/dist/public/build/js/main.376121e5.js.map +1 -0
  18. package/dist/public/build/js/{navigation.ac5ef83f.chunk.js → navigation.7e77d5e0.chunk.js} +2 -2
  19. package/dist/public/build/js/navigation.7e77d5e0.chunk.js.map +1 -0
  20. package/dist/public/build/js/{query-tracker.bd67de7b.chunk.js → query-tracker.b8789080.chunk.js} +2 -2
  21. package/dist/public/build/js/{query-tracker.bd67de7b.chunk.js.map → query-tracker.b8789080.chunk.js.map} +1 -1
  22. package/dist/public/build/js/{query-widget.e13e8196.chunk.js → query-widget.261b2836.chunk.js} +2 -2
  23. package/dist/public/build/js/{query-widget.e13e8196.chunk.js.map → query-widget.261b2836.chunk.js.map} +1 -1
  24. package/dist/public/build/js/{runtime.1a91f59f.js → runtime.dc94a394.js} +2 -2
  25. package/dist/public/build/js/{runtime.1a91f59f.js.map → runtime.dc94a394.js.map} +1 -1
  26. package/dist/public/build/js/{yt-monaco-editor.46876bce.chunk.js → yt-monaco-editor.b3cf8d2a.chunk.js} +2 -2
  27. package/dist/public/build/js/yt-monaco-editor.b3cf8d2a.chunk.js.map +1 -0
  28. package/dist/public/build/manifest.json +26 -26
  29. package/dist/shared/constants/settings-types.d.ts +4 -2
  30. package/package.json +3 -3
  31. package/dist/public/build/css/2140.0fdc720d.chunk.css +0 -2
  32. package/dist/public/build/css/2140.0fdc720d.chunk.css.map +0 -1
  33. package/dist/public/build/css/2747.49a10cfc.chunk.css.map +0 -1
  34. package/dist/public/build/css/yt-monaco-editor.35fedd61.chunk.css.map +0 -1
  35. package/dist/public/build/js/8674.ba5cb9f1.chunk.js.map +0 -1
  36. package/dist/public/build/js/9312.ae95dc3d.chunk.js +0 -3
  37. package/dist/public/build/js/9312.ae95dc3d.chunk.js.map +0 -1
  38. package/dist/public/build/js/main.adf0339f.js +0 -3
  39. package/dist/public/build/js/main.adf0339f.js.map +0 -1
  40. package/dist/public/build/js/navigation.ac5ef83f.chunk.js.map +0 -1
  41. package/dist/public/build/js/yt-monaco-editor.46876bce.chunk.js.map +0 -1
  42. /package/dist/public/build/js/{8674.ba5cb9f1.chunk.js.LICENSE.txt → 4330.37e8a0dd.chunk.js.LICENSE.txt} +0 -0
  43. /package/dist/public/build/js/{9312.ae95dc3d.chunk.js.LICENSE.txt → 9312.ce15a566.chunk.js.LICENSE.txt} +0 -0
  44. /package/dist/public/build/js/{main.adf0339f.js.LICENSE.txt → main.376121e5.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunk_ytsaurus_ui=self.webpackChunk_ytsaurus_ui||[]).push([[8810],{12054:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Te});var r=n(40319),i=n(77810),o=n(76872),a=n(65573),s=n(21274),l=n(69909);const c={readOnly:65,cursorWidth:20,fontInfo:32},u=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;function d(e){return/\w/.test(e)||e>"€"&&(e.toUpperCase()!=e.toLowerCase()||u.test(e))}function h(e,t){if(!(this instanceof h))return new h(e,t);this.line=e,this.ch=t}function p(e,t,n){e.dispatch(t,n)}let g,m;String.prototype.normalize?(g=function(e){return e.normalize("NFD").toLowerCase()},m=function(e){return e.normalize("NFD")}):(g=function(e){return e.toLowerCase()},m=function(e){return e});var f=function(e,t){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0};function y(e){return new h(e.lineNumber-1,e.column-1)}function v(e){return new s.Position(e.line+1,e.ch+1)}f.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},eat:function(e){var t=this.string.charAt(this.pos);if("string"==typeof e)var n=t==e;else n=t&&(e.test?e.test(t):e(t));if(n)return++this.pos,t},eatWhile:function(e){for(var t=this.pos;this.eat(e););return this.pos>t},eatSpace:function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},skipToEnd:function(){this.pos=this.string.length},skipTo:function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},backUp:function(e){this.pos-=e},column:function(){throw"not implemented"},indentation:function(){throw"not implemented"},match:function(e,t,n){if("string"!=typeof e){var r=this.string.slice(this.pos).match(e);return r&&r.index>0?null:(r&&!1!==t&&(this.pos+=r[0].length),r)}var i=function(e){return n?e.toLowerCase():e};if(i(this.string.substr(this.pos,e.length))==i(e))return!1!==t&&(this.pos+=e.length),!0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}}};class C{constructor(e,t,n,r){this.cm=e,this.id=t,this.lineNumber=n+1,this.column=r+1,e.marks[this.id]=this}clear(){delete this.cm.marks[this.id]}find(){return y(this)}}function S(e,t=!1){let n=!0,r=s.KeyCode[e.keyCode];e.key&&(r=e.key,n=!1);let i=r,o=t;switch(e.keyCode){case s.KeyCode.Shift:case s.KeyCode.Meta:case s.KeyCode.Alt:case s.KeyCode.Ctrl:return i;case s.KeyCode.Escape:o=!0,i="Esc";break;case s.KeyCode.Space:o=!0}return r.startsWith("Key")||r.startsWith("KEY_")?i=r[r.length-1].toLowerCase():r.startsWith("Digit")?i=r.slice(5,6):r.startsWith("Numpad")?i=r.slice(6,7):r.endsWith("Arrow")?(o=!0,i=r.substring(0,r.length-5)):(r.startsWith("US_")||r.startsWith("Bracket")||!i)&&(i=e.browserEvent.key),o||e.altKey||e.ctrlKey||e.metaKey?(e.altKey&&(i=`Alt-${i}`),e.ctrlKey&&(i=`Ctrl-${i}`),e.metaKey&&(i=`Meta-${i}`),e.shiftKey&&(i=`Shift-${i}`)):i=e.key||e.browserEvent.key,1===i.length&&n&&(i=`'${i}'`),i}class k{static Pos=h;static signal=p;static on=function(){};static off=function(){};static addClass=function(){};static rmClass=function(){};static defineOption=function(){};static keyMap={default:function(e){return function(e){return!0}}};static matchingBrackets={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};static isWordChar=d;static keyName=S;static StringStream=f;static e_stop=function(e){return e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,k.e_preventDefault(e),!1};static e_preventDefault=function(e){return e.preventDefault?(e.preventDefault(),e.browserEvent&&e.browserEvent.preventDefault()):e.returnValue=!1,!1};static commands={redo:function(e){e.editor.getModel().redo()},undo:function(e){e.editor.getModel().undo()},newlineAndIndent:function(e){e.triggerEditorAction("editor.action.insertLineAfter")}};static lookupKey=function e(t,n,r){"string"==typeof n&&(n=k.keyMap[n]);const i="function"==typeof n?n(t):n[t];if(!1===i)return"nothing";if("..."===i)return"multi";if(null!=i&&r(i))return"handled";if(n.fallthrough){if(!Array.isArray(n.fallthrough))return e(t,n.fallthrough,r);for(var o=0;o<n.fallthrough.length;o++){var a=e(t,n.fallthrough[o],r);if(a)return a}}};static defineExtension=function(e,t){k.prototype[e]=t};constructor(e){this.editor=e,this.state={keyMap:"vim"},this.marks={},this.$uid=0,this.disposables=[],this.listeners={},this.curOp={},this.attached=!1,this.statusBar=null,this.options={},this.addLocalListeners(),this.ctxInsert=this.editor.createContextKey("insertMode",!0)}attach(){k.keyMap.vim.attach(this)}addLocalListeners(){this.disposables.push(this.editor.onDidChangeCursorPosition(this.handleCursorChange),this.editor.onDidChangeModelContent(this.handleChange),this.editor.onKeyDown(this.handleKeyDown))}handleKeyDown=e=>{if(e.browserEvent.defaultPrevented&e.keyCode!==s.KeyCode.Escape)return;if(!this.attached)return;const t=S(e);if(this.replaceMode&&this.handleReplaceMode(t,e),!t)return;const n=this.state.keyMap;if(k.keyMap[n]&&k.keyMap[n].call){const r=k.keyMap[n].call(t,this);if(r){e.preventDefault(),e.stopPropagation();try{r()}catch(e){console.error(e)}}}};handleReplaceMode(e,t){let n=!1,r=e;const i=this.editor.getPosition();let o=new s.Range(i.lineNumber,i.column,i.lineNumber,i.column+1);if(e.startsWith("'"))r=e[1];else if("Enter"===r)r="\n";else{if("Backspace"!==r)return;{const e=this.replaceStack.pop();if(!e)return;n=!0,r=e,o=new s.Range(i.lineNumber,i.column,i.lineNumber,i.column-1)}}t.preventDefault(),t.stopPropagation(),this.replaceStack||(this.replaceStack=[]),n||this.replaceStack.push(this.editor.getModel().getValueInRange(o)),this.editor.executeEdits("vim",[{text:r,range:o,forceMoveMarkers:!0}]),n&&this.editor.setPosition(o.getStartPosition())}handleCursorChange=e=>{const{position:t,source:n}=e,{editor:r}=this,i=r.getSelection();if(!this.ctxInsert.get()&&"mouse"===e.source&&i.isEmpty()){const n=r.getModel().getLineMaxColumn(t.lineNumber);if(e.position.column===n)return void r.setPosition(new s.Position(e.position.lineNumber,n-1))}this.dispatch("cursorActivity",this,e)};handleChange=e=>{const{changes:t}=e,n={text:t.reduce(((e,t)=>(e.push(t.text),e)),[]),origin:"+input"},r=this.curOp=this.curOp||{};r.changeHandlers||(r.changeHandlers=this.listeners.change&&this.listeners.change.slice()),this.virtualSelectionMode()||(r.lastChange?r.lastChange.next=r.lastChange=n:r.lastChange=r.change=n,this.dispatch("change",this,n))};setOption(e,t){this.state[e]=t,"theme"===e&&s.editor.setTheme(t)}getConfiguration(){const{editor:e}=this;let t=c;return"function"==typeof e.getConfiguration?e.getConfiguration():("EditorOption"in s.editor&&(t=s.editor.EditorOption),{readOnly:e.getOption(t.readOnly),viewInfo:{cursorWidth:e.getOption(t.cursorWidth)},fontInfo:e.getOption(t.fontInfo)})}getOption(e){return"readOnly"===e?this.getConfiguration().readOnly:"firstLineNumber"===e?this.firstLine()+1:"indentWithTabs"===e?!this.editor.getModel().getOptions().insertSpaces:"function"==typeof this.editor.getConfiguration?this.editor.getRawConfiguration()[e]:this.editor.getRawOptions()[e]}dispatch(e,...t){const n=this.listeners[e];n&&n.forEach((e=>e(...t)))}on(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)}off(e,t){const n=this.listeners[e];n&&(this.listeners[e]=n.filter((e=>e!==t)))}firstLine(){return 0}lastLine(){return this.lineCount()-1}lineCount(){return this.editor.getModel().getLineCount()}defaultTextHeight(){return 1}getLine(e){if(e<0)return"";const t=this.editor.getModel().getLineCount();return e+1>t&&(e=t-1),this.editor.getModel().getLineContent(e+1)}getAnchorForSelection(e){return e.isEmpty()?e.getPosition():e.getDirection()===s.SelectionDirection.LTR?e.getStartPosition():e.getEndPosition()}getHeadForSelection(e){return e.isEmpty()?e.getPosition():e.getDirection()===s.SelectionDirection.LTR?e.getEndPosition():e.getStartPosition()}getCursor(e=null){if(!e)return y(this.editor.getPosition());const t=this.editor.getSelection();let n;return n=t.isEmpty()?t.getPosition():"anchor"===e?this.getAnchorForSelection(t):this.getHeadForSelection(t),y(n)}getRange(e,t){const n=v(e),r=v(t);return this.editor.getModel().getValueInRange(s.Range.fromPositions(n,r))}getSelection(){var e=[],t=this.editor;return t.getSelections().map((function(n){e.push(t.getModel().getValueInRange(n))})),e.join("\n")}replaceRange(e,t,n){const r=v(t),i=n?v(n):r;this.editor.executeEdits("vim",[{text:e,range:s.Range.fromPositions(r,i)}]),this.pushUndoStop()}pushUndoStop(){this.editor.pushUndoStop()}setCursor(e,t){let n=e;"object"!=typeof e&&(n={},n.line=e,n.ch=t);const r=this.editor.getModel().validatePosition(v(n));this.editor.setPosition(v(n)),this.editor.revealPosition(r)}somethingSelected(){return!this.editor.getSelection().isEmpty()}operation(e,t){return e()}listSelections(){const e=this.editor.getSelections();return!e.length||this.inVirtualSelectionMode?[{anchor:this.getCursor("anchor"),head:this.getCursor("head")}]:e.map((e=>(e.getPosition(),e.getStartPosition(),e.getEndPosition(),{anchor:this.clipPos(y(this.getAnchorForSelection(e))),head:this.clipPos(y(this.getHeadForSelection(e)))})))}focus(){this.editor.focus()}setSelections(e,t){const n=!!this.editor.getSelections().length,r=e.map(((e,t)=>{const{anchor:r,head:i}=e;return n?s.Selection.fromPositions(v(r),v(i)):s.Selection.fromPositions(v(i),v(r))}));if(t&&r[t]&&r.push(r.splice(t,1)[0]),!r.length)return;const i=r[0];let o;o=i.getDirection()===s.SelectionDirection.LTR?i.getEndPosition():i.getStartPosition(),this.editor.setSelections(r),this.editor.revealPosition(o)}setSelection(e,t){const n=s.Range.fromPositions(v(e),v(t));this.editor.setSelection(n)}getSelections(){const{editor:e}=this;return e.getSelections().map((t=>e.getModel().getValueInRange(t)))}replaceSelections(e){const{editor:t}=this;t.getSelections().forEach(((n,r)=>{t.executeEdits("vim",[{range:n,text:e[r],forceMoveMarkers:!1}])}))}toggleOverwrite(e){e?(this.enterVimMode(),this.replaceMode=!0):(this.leaveVimMode(),this.replaceMode=!1,this.replaceStack=[])}charCoords(e,t){return{top:e.line,left:e.ch}}coordsChar(e,t){}clipPos(e){return y(this.editor.getModel().validatePosition(v(e)))}setBookmark(e,t){const n=new C(this,this.$uid++,e.line,e.ch);return t&&t.insertLeft||(n.$insertRight=!0),this.marks[n.id]=n,n}getScrollInfo(){const{editor:e}=this,[t]=e.getVisibleRanges();return{left:0,top:t.startLineNumber-1,height:e.getModel().getLineCount(),clientHeight:t.endLineNumber-t.startLineNumber+1}}triggerEditorAction(e){this.editor.trigger("vim",e)}dispose(){this.dispatch("dispose"),this.removeOverlay(),k.keyMap.vim&&k.keyMap.vim.detach(this),this.disposables.forEach((e=>e.dispose()))}getInputField(){}getWrapperElement(){}enterVimMode(e=!0){this.ctxInsert.set(!1);const t=this.getConfiguration();this.initialCursorWidth=t.viewInfo.cursorWidth||0,this.editor.updateOptions({cursorWidth:t.fontInfo.typicalFullwidthCharacterWidth,cursorBlinking:"solid",cursorStyle:"block"})}leaveVimMode(){this.ctxInsert.set(!0),this.editor.updateOptions({cursorWidth:this.initialCursorWidth||0,cursorBlinking:"blink",cursorStyle:"line"})}virtualSelectionMode(){return this.inVirtualSelectionMode}markText(){return{clear:function(){},find:function(){}}}getUserVisibleLines(){const e=this.editor.getVisibleRanges();if(!e.length)return{top:0,bottom:0};const t={top:1/0,bottom:0};return e.reduce(((e,t)=>(t.startLineNumber<e.top&&(e.top=t.startLineNumber),t.endLineNumber>e.bottom&&(e.bottom=t.endLineNumber),e)),t),t.top-=1,t.bottom-=1,t}findPosV(e,t,n){const{editor:r}=this;let i=t,o=n;const a=v(e);if("page"===n){const e=r.getLayoutInfo().height,t=this.getConfiguration().fontInfo.lineHeight;i*=Math.floor(e/t),o="line"}return"line"===o&&(a.lineNumber+=i),y(a)}findMatchingBracket(e){const t=v(e),n=this.editor.getModel();let r;return r=n.bracketPairs?n.bracketPairs.matchBracket(t):n.matchBracket?.(t),r&&2===r.length?{to:y(r[1].getStartPosition())}:{to:null}}findFirstNonWhiteSpaceCharacter(e){return this.editor.getModel().getLineFirstNonWhitespaceColumn(e+1)-1}scrollTo(e,t){(e||t)&&(e||(t<0&&(t=this.editor.getPosition().lineNumber-t),this.editor.setScrollTop(this.editor.getTopForLineNumber(t+1))))}moveCurrentLineTo(e){const{editor:t}=this,n=t.getPosition(),r=s.Range.fromPositions(n,n);switch(e){case"top":return void t.revealRangeAtTop(r);case"center":return void t.revealRangeInCenter(r);case"bottom":return void t._revealRange?.(r,4)}}getSearchCursor(e,t){let n=!1,r=!1;e instanceof RegExp&&!e.global&&(n=!e.ignoreCase,e=e.source,r=!0),null==t.ch&&(t.ch=Number.MAX_VALUE);const i=v(t),o=this,{editor:a}=this;let s=null;const l=a.getModel(),c=l.findMatches(e,!1,r,n)||[];return{getMatches:()=>c,findNext(){return this.find(!1)},findPrevious(){return this.find(!0)},jumpTo(e){if(!c||!c.length)return!1;var t=c[e];return s=t.range,o.highlightRanges([s],"currentFindMatch"),o.highlightRanges(c.map((e=>e.range)).filter((e=>!e.equalsRange(s)))),s},find(t){if(!c||!c.length)return!1;let a;if(t){const t=s?s.getStartPosition():i;if(a=l.findPreviousMatch(e,t,r,n),!a||!a.range.getStartPosition().isBeforeOrEqual(t))return!1}else{const t=s?l.getPositionAt(l.getOffsetAt(s.getEndPosition())+1):i;if(a=l.findNextMatch(e,t,r,n),!a||!t.isBeforeOrEqual(a.range.getStartPosition()))return!1}return s=a.range,o.highlightRanges([s],"currentFindMatch"),o.highlightRanges(c.map((e=>e.range)).filter((e=>!e.equalsRange(s)))),s},from:()=>s&&y(s.getStartPosition()),to:()=>s&&y(s.getEndPosition()),replace(e){s&&(a.executeEdits("vim",[{range:s,text:e,forceMoveMarkers:!0}],(function(e){const{endLineNumber:t,endColumn:n}=e[0].range;s=s.setEndPosition(t,n)})),a.setPosition(s.getStartPosition()))}}}highlightRanges(e,t="findMatch"){const n=`decoration${t}`;return this[n]=this.editor.deltaDecorations(this[n]||[],e.map((e=>({range:e,options:{stickiness:s.editor.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges,zIndex:13,className:t,showIfCollapsed:!0}})))),this[n]}addOverlay({query:e},t,n){let r=!1,i=!1;e&&e instanceof RegExp&&!e.global&&(i=!0,r=!e.ignoreCase,e=e.source);const o=this.editor.getModel().findNextMatch(e,this.editor.getPosition(),i,r);o&&o.range&&this.highlightRanges([o.range])}removeOverlay(){["currentFindMatch","findMatch"].forEach((e=>{this.editor.deltaDecorations(this[`decoration${e}`]||[],[])}))}scrollIntoView(e){e&&this.editor.revealPosition(v(e))}moveH(e,t){if("char"!==t)return;const n=this.editor.getPosition();this.editor.setPosition(new s.Position(n.lineNumber,n.column+e))}scanForBracket(e,t,n,r){const{bracketRegex:i}=r;let o=v(e);const a=this.editor.getModel(),s=(-1===t?a.findPreviousMatch:a.findNextMatch).bind(a),l=[];let c=0;for(;;){if(c>10)return;const e=s(i.source,o,!0,!0,null,!0),n=e.matches[0];if(void 0===e)return;const r=k.matchingBrackets[n];if(r&&">"===r.charAt(1)==t>0)l.push(n);else{if(0===l.length)return{pos:y(e.range.getStartPosition())};l.pop()}o=a.getPositionAt(a.getOffsetAt(e.range.getStartPosition())+t),c+=1}}indexFromPos(e){return this.editor.getModel().getOffsetAt(v(e))}posFromIndex(e){return y(this.editor.getModel().getPositionAt(e))}indentLine(e,t=!0){const{editor:n}=this;let r;r=n._getViewModel?n._getViewModel().cursorConfig:n._getCursors().context.config;const i=new s.Position(e+1,1),o=s.Selection.fromPositions(i,i);n.executeCommand("vim",new l.Y(o,{isUnshift:!t,tabSize:r.tabSize,indentSize:r.indentSize,insertSpaces:r.insertSpaces,useTabStops:r.useTabStops,autoIndent:r.autoIndent}))}setStatusBar(e){this.statusBar=e}openDialog(e,t,n){if(this.statusBar)return this.statusBar.setSec(e,t,n)}openNotification(e){this.statusBar&&this.statusBar.showNotification(e)}smartIndent(){this.editor.getAction("editor.action.formatSelection").run()}moveCursorTo(e){const t=this.editor.getPosition();"start"===e?t.column=1:"end"===e&&(t.column=this.editor.getModel().getLineMaxColumn(t.lineNumber)),this.editor.setPosition(t)}execCommand(e){switch(e){case"goLineLeft":this.moveCursorTo("start");break;case"goLineRight":this.moveCursorTo("end");break;case"indentAuto":this.smartIndent()}}}const b=k;var A=b.Pos;function w(e,t){var n=e.state.vim;if(!n||n.insertMode)return t.head;var r=n.sel.head;return r?n.visualBlock&&t.head.line!=r.line?void 0:t.from()!=t.anchor||t.empty()||t.head.line!=r.line||t.head.ch==r.ch?t.head:new A(t.head.line,t.head.ch-1):t.head}var I=[{keys:"<Left>",type:"keyToKey",toKeys:"h"},{keys:"<Right>",type:"keyToKey",toKeys:"l"},{keys:"<Up>",type:"keyToKey",toKeys:"k"},{keys:"<Down>",type:"keyToKey",toKeys:"j"},{keys:"g<Up>",type:"keyToKey",toKeys:"gk"},{keys:"g<Down>",type:"keyToKey",toKeys:"gj"},{keys:"<Space>",type:"keyToKey",toKeys:"l"},{keys:"<BS>",type:"keyToKey",toKeys:"h",context:"normal"},{keys:"<Del>",type:"keyToKey",toKeys:"x",context:"normal"},{keys:"<C-Space>",type:"keyToKey",toKeys:"W"},{keys:"<C-BS>",type:"keyToKey",toKeys:"B",context:"normal"},{keys:"<S-Space>",type:"keyToKey",toKeys:"w"},{keys:"<S-BS>",type:"keyToKey",toKeys:"b",context:"normal"},{keys:"<C-n>",type:"keyToKey",toKeys:"j"},{keys:"<C-p>",type:"keyToKey",toKeys:"k"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"c",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"VdO",context:"visual"},{keys:"<Home>",type:"keyToKey",toKeys:"0"},{keys:"<End>",type:"keyToKey",toKeys:"$"},{keys:"<PageUp>",type:"keyToKey",toKeys:"<C-b>"},{keys:"<PageDown>",type:"keyToKey",toKeys:"<C-f>"},{keys:"<CR>",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"<Ins>",type:"keyToKey",toKeys:"i",context:"normal"},{keys:"<Ins>",type:"action",action:"toggleOverwrite",context:"insert"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"(",type:"motion",motion:"moveBySentence",motionArgs:{forward:!1}},{keys:")",type:"motion",motion:"moveBySentence",motionArgs:{forward:!0}},{keys:"<C-f>",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"<C-b>",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"<C-d>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"<C-u>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"g$",type:"motion",motion:"moveToEndOfDisplayLine"},{keys:"g^",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"g0",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'<character>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`<character>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:"=",type:"operator",operator:"indentAuto"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"gn",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!0}},{keys:"gN",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!1}},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"expandToLine",motionArgs:{linewise:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"<C-u>",type:"operatorMotion",operator:"delete",motion:"moveToStartOfLine",context:"insert"},{keys:"<C-w>",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"<C-w>",type:"idle",context:"normal"},{keys:"<C-i>",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"<C-o>",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"<C-e>",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"<C-y>",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"gi",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"lastEdit"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"gI",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"bol"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"<C-v>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"<C-q>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"gJ",type:"action",action:"joinLines",actionArgs:{keepSpaces:!0},isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r<character>",type:"action",action:"replace",isEdit:!0},{keys:"@<character>",type:"action",action:"replayMacro"},{keys:"q<character>",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0},context:"normal"},{keys:"R",type:"operator",operator:"change",operatorArgs:{linewise:!0,fullLine:!0},context:"visual",exitVisualBlock:!0},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"<C-r>",type:"action",action:"redo"},{keys:"m<character>",type:"action",action:"setMark"},{keys:'"<character>',type:"action",action:"setRegister"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z<CR>",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"<C-a>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"<C-x>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"<C-t>",type:"action",action:"indent",actionArgs:{indentRight:!0},context:"insert"},{keys:"<C-d>",type:"action",action:"indent",actionArgs:{indentRight:!1},context:"insert"},{keys:"a<character>",type:"motion",motion:"textObjectManipulation"},{keys:"i<character>",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],x=I.length,T=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"unmap"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"nohlsearch",shortName:"noh"},{name:"yank",shortName:"y"},{name:"delmarks",shortName:"delm"},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"vglobal",shortName:"v"},{name:"global",shortName:"g"}];b.Vim=function(){function e(e,n){e.attached=!1,this==b.keyMap.vim&&(e.options.$customCursor=null),n&&n.attach==t||function(e){e.setOption("disableInput",!1),e.off("cursorActivity",Qe),e.state.vim=null,Fe&&clearTimeout(Fe),e.leaveVimMode()}(e)}function t(e,n){this==b.keyMap.vim&&(e.attached=!0,e.curOp&&(e.curOp.selectionChanged=!0),e.options.$customCursor=w),n&&n.attach==t||function(e){e.setOption("disableInput",!0),e.setOption("showCursorWhenSelecting",!1),b.signal(e,"vim-mode-change",{mode:"normal"}),e.on("cursorActivity",Qe),B(e),e.enterVimMode()}(e)}function n(e,t){if(t){if(this[e])return this[e];var n=function(e){if("'"==e.charAt(0))return e.charAt(1);if("AltGraph"===e)return!1;var t=e.split(/-(?!$)/),n=t[t.length-1];if(1==t.length&&1==t[0].length)return!1;if(2==t.length&&"Shift"==t[0]&&1==n.length)return!1;for(var o=!1,a=0;a<t.length;a++){var s=t[a];s in r?t[a]=r[s]:o=!0,s in i&&(t[a]=i[s])}return!!o&&(y(n)&&(t[t.length-1]=n.toLowerCase()),"<"+t.join("-")+">")}(e);if(!n)return!1;var o=U.findKey(t,n);return"function"==typeof o&&b.signal(t,"vim-keypress",n),o}}b.defineOption("vimMode",!1,(function(e,t,n){t&&"vim"!=e.getOption("keyMap")?e.setOption("keyMap","vim"):!t&&n!=b.Init&&/^vim/.test(e.getOption("keyMap"))&&e.setOption("keyMap","default")}));var r={Shift:"S",Ctrl:"C",Alt:"A",Cmd:"D",Mod:"A",CapsLock:""},i={Enter:"CR",Backspace:"BS",Delete:"Del",Insert:"Ins"},o=/[\d]/,a=[b.isWordChar,function(e){return e&&!b.isWordChar(e)&&!/\s/.test(e)}],s=[function(e){return/\S/.test(e)}];function l(e,t){for(var n=[],r=e;r<e+t;r++)n.push(String.fromCharCode(r));return n}var c,u=l(65,26),d=l(97,26),h=l(48,10),p=[].concat(u,d,h,["<",">"]),g=[].concat(u,d,h,["-",'"',".",":","_","/"]);try{c=new RegExp("^[\\p{Lu}]$","u")}catch(e){c=/^[A-Z]$/}function m(e,t){return t>=e.firstLine()&&t<=e.lastLine()}function f(e){return/^[a-z]$/.test(e)}function y(e){return c.test(e)}function v(e){return/^\s*$/.test(e)}function C(e){return-1!=".?!".indexOf(e)}function S(e,t){for(var n=0;n<t.length;n++)if(t[n]==e)return!0;return!1}var k={};function M(e,t,n,r,i){if(void 0===t&&!i)throw Error("defaultValue is required unless callback is provided");if(n||(n="string"),k[e]={type:n,defaultValue:t,callback:i},r)for(var o=0;o<r.length;o++)k[r[o]]=k[e];t&&E(e,t)}function E(e,t,n,r){var i=k[e],o=(r=r||{}).scope;if(!i)return new Error("Unknown option: "+e);if("boolean"==i.type){if(t&&!0!==t)return new Error("Invalid argument: "+e+"="+t);!1!==t&&(t=!0)}i.callback?("local"!==o&&i.callback(t,void 0),"global"!==o&&n&&i.callback(t,n)):("local"!==o&&(i.value="boolean"==i.type?!!t:t),"global"!==o&&n&&(n.state.vim.options[e]={value:t}))}function O(e,t,n){var r=k[e],i=(n=n||{}).scope;if(!r)return new Error("Unknown option: "+e);if(r.callback){var o=t&&r.callback(void 0,t);return"global"!==i&&void 0!==o?o:"local"!==i?r.callback():void 0}return((o="global"!==i&&t&&t.state.vim.options[e])||"local"!==i&&r||{}).value}M("filetype",void 0,"string",["ft"],(function(e,t){if(void 0!==t){if(void 0===e)return"null"==(n=t.getOption("mode"))?"":n;var n=""==e?"null":e;t.setOption("mode",n)}}));var N,R,L=function(){var e=100,t=-1,n=0,r=0,i=new Array(e);function o(o,a){(t+=a)>n?t=n:t<r&&(t=r);var s=i[(e+t)%e];if(s&&!s.find()){var l,c=a>0?1:-1,u=o.getCursor();do{if((s=i[(e+(t+=c))%e])&&(l=s.find())&&!te(u,l))break}while(t<n&&t>r)}return s}return{cachedCursor:void 0,add:function(o,a,s){var l=i[t%e];function c(n){var r=++t%e,a=i[r];a&&a.clear(),i[r]=o.setBookmark(n)}if(l){var u=l.find();u&&!te(u,a)&&c(a)}else c(a);c(s),n=t,(r=t-e+1)<0&&(r=0)},find:function(e,n){var r=t,i=o(e,n);return t=r,i&&i.find()},move:o}},D=function(e){return e?{changes:e.changes,expectCursorActivityForChange:e.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};function P(){this.latestRegister=void 0,this.isPlaying=!1,this.isRecording=!1,this.replaySearchQueries=[],this.onRecordingDone=void 0,this.lastInsertModeChanges=D()}function B(e){return e.state.vim||(e.state.vim={inputState:new _,lastEditInputState:void 0,lastEditActionCommand:void 0,lastHPos:-1,lastHSPos:-1,lastMotion:null,marks:{},insertMode:!1,insertModeRepeat:void 0,visualMode:!1,visualLine:!1,visualBlock:!1,lastSelection:null,lastPastedText:null,sel:{},options:{}}),e.state.vim}function F(){for(var e in N={searchQuery:null,searchIsReversed:!1,lastSubstituteReplacePart:void 0,jumpList:L(),macroModeState:new P,lastCharacterSearch:{increment:0,forward:!0,selectedCharacter:""},registerController:new W({}),searchHistoryController:new q,exCommandHistoryController:new q},k){var t=k[e];t.value=t.defaultValue}}P.prototype={exitMacroRecordMode:function(){var e=N.macroModeState;e.onRecordingDone&&e.onRecordingDone(),e.onRecordingDone=void 0,e.isRecording=!1},enterMacroRecordMode:function(e,t){var n=N.registerController.getRegister(t);n&&(n.clear(),this.latestRegister=t,e.openDialog&&(this.onRecordingDone=e.openDialog(document.createTextNode("(recording)["+t+"]"),null,{bottom:!0})),this.isRecording=!0)}};var U={buildKeyMap:function(){},getRegisterController:function(){return N.registerController},resetVimGlobalState_:F,getVimGlobalState_:function(){return N},maybeInitVimState_:B,suppressErrorLogging:!1,InsertModeKey:Ze,map:function(e,t,n){je.map(e,t,n)},unmap:function(e,t){return je.unmap(e,t)},noremap:function(e,t,n){function r(e){return e?[e]:["normal","insert","visual"]}for(var i=r(n),o=I.length,a=o-x;a<o&&i.length;a++){var s=I[a];if(!(s.keys!=t||n&&s.context&&s.context!==n||"ex"===s.type.substr(0,2)||"key"===s.type.substr(0,3))){var l={};for(var c in s)l[c]=s[c];l.keys=e,n&&!l.context&&(l.context=n),this._mapCommand(l);var u=r(s.context);i=i.filter((function(e){return-1===u.indexOf(e)}))}}},mapclear:function(e){var t=I.length,n=x,r=I.slice(0,t-n);if(I=I.slice(t-n),e)for(var i=r.length-1;i>=0;i--){var o=r[i];if(e!==o.context)if(o.context)this._mapCommand(o);else{var a=["normal","insert","visual"];for(var s in a)if(a[s]!==e){var l={};for(var c in o)l[c]=o[c];l.context=a[s],this._mapCommand(l)}}}},setOption:E,getOption:O,defineOption:M,defineEx:function(e,t,n){if(t){if(0!==e.indexOf(t))throw new Error('(Vim.defineEx) "'+t+'" is not a prefix of "'+e+'", command not registered')}else t=e;Ye[e]=n,je.commandMap_[t]={name:e,shortName:t,type:"api"}},handleKey:function(e,t,n){var r=this.findKey(e,t,n);if("function"==typeof r)return r()},findKey:function(e,t,n){var r,i=B(e);function o(){if("<Esc>"==t){if(i.visualMode)ge(e);else{if(!i.insertMode)return;Ge(e)}return H(e),!0}}return!1===(r=i.insertMode?function(){if(o())return!0;for(var n=i.inputState.keyBuffer=i.inputState.keyBuffer+t,r=1==t.length,a=V.matchCommand(n,I,i.inputState,"insert");n.length>1&&"full"!=a.type;){n=i.inputState.keyBuffer=n.slice(1);var s=V.matchCommand(n,I,i.inputState,"insert");"none"!=s.type&&(a=s)}if("none"==a.type)return H(e),!1;if("partial"==a.type)return R&&window.clearTimeout(R),R=window.setTimeout((function(){i.insertMode&&i.inputState.keyBuffer&&H(e)}),O("insertModeEscKeysTimeout")),!r;if(R&&window.clearTimeout(R),r){for(var l=e.listSelections(),c=0;c<l.length;c++){var u=l[c].head;e.replaceRange("",Q(u,0,-(n.length-1)),u,"+input")}N.macroModeState.lastInsertModeChanges.changes.pop()}return H(e),a.command}():function(){if(function(){var r=N.macroModeState;if(r.isRecording){if("q"==t)return r.exitMacroRecordMode(),H(e),!0;"mapping"!=n&&function(e,t){if(!e.isPlaying){var n=e.latestRegister,r=N.registerController.getRegister(n);r&&r.pushText(t)}}(r,t)}}()||o())return!0;var r=i.inputState.keyBuffer=i.inputState.keyBuffer+t;if(/^[1-9]\d*$/.test(r))return!0;if(!(l=/^(\d*)(.*)$/.exec(r)))return H(e),!1;var a=i.visualMode?"visual":"normal",s=l[2]||l[1];i.inputState.operatorShortcut&&i.inputState.operatorShortcut.slice(-1)==s&&(s=i.inputState.operatorShortcut);var l,c=V.matchCommand(s,I,i.inputState,a);return"none"==c.type?(H(e),!1):"partial"==c.type||(i.inputState.keyBuffer="",(l=/^(\d*)(.*)$/.exec(r))[1]&&"0"!=l[1]&&i.inputState.pushRepeatDigit(l[1]),c.command)}())?i.insertMode||1!==t.length?void 0:function(){return!0}:!0===r?function(){return!0}:function(){return e.operation((function(){e.curOp.isVimOp=!0;try{"keyToKey"==r.type?function(n){for(var r;n;)r=/<\w+-.+?>|<\w+>|./.exec(n),t=r[0],n=n.substring(r.index+t.length),U.handleKey(e,t,"mapping")}(r.toKeys):V.processCommand(e,i,r)}catch(t){throw e.state.vim=void 0,B(e),U.suppressErrorLogging||console.log(t),t}return!0}))}},handleEx:function(e,t){je.processCommand(e,t)},defineMotion:function(e,t){Y[e]=t},defineAction:function(e,t){z[e]=t},defineOperator:function(e,t){G[e]=t},mapCommand:function(e,t,n,r,i){var o={keys:e,type:t};for(var a in o[t]=n,o[t+"Args"]=r,i)o[a]=i[a];ze(o)},_mapCommand:ze,defineRegister:function(e,t){var n=N.registerController.registers;if(!e||1!=e.length)throw Error("Register name must be 1 character");if(n[e])throw Error("Register already defined "+e);n[e]=t,g.push(e)},exitVisualMode:ge,exitInsertMode:Ge};function _(){this.prefixRepeat=[],this.motionRepeat=[],this.operator=null,this.operatorArgs=null,this.motion=null,this.motionArgs=null,this.keyBuffer=[],this.registerName=null}function H(e,t){e.state.vim.inputState=new _,b.signal(e,"vim-command-done",t)}function K(e,t,n){this.clear(),this.keyBuffer=[e||""],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!!t,this.blockwise=!!n}function W(e){this.registers=e,this.unnamedRegister=e['"']=new K,e["."]=new K,e[":"]=new K,e["/"]=new K}function q(){this.historyBuffer=[],this.iterator=0,this.initialPrefix=null}_.prototype.pushRepeatDigit=function(e){this.operator?this.motionRepeat=this.motionRepeat.concat(e):this.prefixRepeat=this.prefixRepeat.concat(e)},_.prototype.getRepeat=function(){var e=0;return(this.prefixRepeat.length>0||this.motionRepeat.length>0)&&(e=1,this.prefixRepeat.length>0&&(e*=parseInt(this.prefixRepeat.join(""),10)),this.motionRepeat.length>0&&(e*=parseInt(this.motionRepeat.join(""),10))),e},K.prototype={setText:function(e,t,n){this.keyBuffer=[e||""],this.linewise=!!t,this.blockwise=!!n},pushText:function(e,t){t&&(this.linewise||this.keyBuffer.push("\n"),this.linewise=!0),this.keyBuffer.push(e)},pushInsertModeChanges:function(e){this.insertModeChanges.push(D(e))},pushSearchQuery:function(e){this.searchQueries.push(e)},clear:function(){this.keyBuffer=[],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!1},toString:function(){return this.keyBuffer.join("")}},W.prototype={pushText:function(e,t,n,r,i){if("_"!==e){r&&"\n"!==n.charAt(n.length-1)&&(n+="\n");var o=this.isValidRegister(e)?this.getRegister(e):null;if(o)y(e)?o.pushText(n,r):o.setText(n,r,i),this.unnamedRegister.setText(o.toString(),r);else{switch(t){case"yank":this.registers[0]=new K(n,r,i);break;case"delete":case"change":-1==n.indexOf("\n")?this.registers["-"]=new K(n,r):(this.shiftNumericRegisters_(),this.registers[1]=new K(n,r))}this.unnamedRegister.setText(n,r,i)}}},getRegister:function(e){return this.isValidRegister(e)?(e=e.toLowerCase(),this.registers[e]||(this.registers[e]=new K),this.registers[e]):this.unnamedRegister},isValidRegister:function(e){return e&&S(e,g)},shiftNumericRegisters_:function(){for(var e=9;e>=2;e--)this.registers[e]=this.getRegister(""+(e-1))}},q.prototype={nextMatch:function(e,t){var n=this.historyBuffer,r=t?-1:1;null===this.initialPrefix&&(this.initialPrefix=e);for(var i=this.iterator+r;t?i>=0:i<n.length;i+=r)for(var o=n[i],a=0;a<=o.length;a++)if(this.initialPrefix==o.substring(0,a))return this.iterator=i,o;return i>=n.length?(this.iterator=n.length,this.initialPrefix):i<0?e:void 0},pushInput:function(e){var t=this.historyBuffer.indexOf(e);t>-1&&this.historyBuffer.splice(t,1),e.length&&this.historyBuffer.push(e)},reset:function(){this.initialPrefix=null,this.iterator=this.historyBuffer.length}};var V={matchCommand:function(e,t,n,r){var i,o=function(e,t,n,r){for(var i,o=[],a=[],s=0;s<t.length;s++){var l=t[s];"insert"==n&&"insert"!=l.context||l.context&&l.context!=n||r.operator&&"action"==l.type||!(i=Z(e,l.keys))||("partial"==i&&o.push(l),"full"==i&&a.push(l))}return{partial:o.length&&o,full:a.length&&a}}(e,t,r,n);if(!o.full&&!o.partial)return{type:"none"};if(!o.full&&o.partial)return{type:"partial"};for(var a=0;a<o.full.length;a++){var s=o.full[a];i||(i=s)}if("<character>"==i.keys.slice(-11)){var l=function(e){var t=/^.*(<[^>]+>)$/.exec(e),n=t?t[1]:e.slice(-1);if(n.length>1)switch(n){case"<CR>":n="\n";break;case"<Space>":n=" ";break;default:n=""}return n}(e);if(!l)return{type:"none"};n.selectedCharacter=l}return{type:"full",command:i}},processCommand:function(e,t,n){switch(t.inputState.repeatOverride=n.repeatOverride,n.type){case"motion":this.processMotion(e,t,n);break;case"operator":this.processOperator(e,t,n);break;case"operatorMotion":this.processOperatorMotion(e,t,n);break;case"action":this.processAction(e,t,n);break;case"search":this.processSearch(e,t,n);break;case"ex":case"keyToEx":this.processEx(e,t,n)}},processMotion:function(e,t,n){t.inputState.motion=n.motion,t.inputState.motionArgs=$(n.motionArgs),this.evalInput(e,t)},processOperator:function(e,t,n){var r=t.inputState;if(r.operator){if(r.operator==n.operator)return r.motion="expandToLine",r.motionArgs={linewise:!0},void this.evalInput(e,t);H(e)}r.operator=n.operator,r.operatorArgs=$(n.operatorArgs),n.keys.length>1&&(r.operatorShortcut=n.keys),n.exitVisualBlock&&(t.visualBlock=!1,he(e)),t.visualMode&&this.evalInput(e,t)},processOperatorMotion:function(e,t,n){var r=t.visualMode,i=$(n.operatorMotionArgs);i&&r&&i.visualLine&&(t.visualLine=!0),this.processOperator(e,t,n),r||this.processMotion(e,t,n)},processAction:function(e,t,n){var r=t.inputState,i=r.getRepeat(),o=!!i,a=$(n.actionArgs)||{};r.selectedCharacter&&(a.selectedCharacter=r.selectedCharacter),n.operator&&this.processOperator(e,t,n),n.motion&&this.processMotion(e,t,n),(n.motion||n.operator)&&this.evalInput(e,t),a.repeat=i||1,a.repeatIsExplicit=o,a.registerName=r.registerName,H(e),t.lastMotion=null,n.isEdit&&this.recordLastEdit(t,r,n),z[n.action](e,a,t)},processSearch:function(e,t,n){if(e.getSearchCursor){var r=n.searchArgs.forward,i=n.searchArgs.wholeWordOnly;Me(e).setReversed(!r);var o=r?"/":"?",a=Me(e).getQuery(),s=e.getScrollInfo();switch(n.searchArgs.querySrc){case"prompt":var l=N.macroModeState;l.isPlaying?h(d=l.replaySearchQueries.shift(),!0,!1):Pe(e,{onClose:function(t){e.scrollTo(s.left,s.top),h(t,!0,!0);var n=N.macroModeState;n.isRecording&&function(e,t){if(!e.isPlaying){var n=e.latestRegister,r=N.registerController.getRegister(n);r&&r.pushSearchQuery&&r.pushSearchQuery(t)}}(n,t)},prefix:o,desc:"(JavaScript regexp)",onKeyUp:function(t,n,i){var o,a,l,c=b.keyName(t);"Up"==c||"Down"==c?(o="Up"==c,a=t.target?t.target.selectionEnd:0,i(n=N.searchHistoryController.nextMatch(n,o)||""),a&&t.target&&(t.target.selectionEnd=t.target.selectionStart=Math.min(a,t.target.value.length))):"Left"!=c&&"Right"!=c&&"Ctrl"!=c&&"Alt"!=c&&"Shift"!=c&&N.searchHistoryController.reset();try{l=Be(e,n,!0,!0)}catch(t){}l?e.scrollIntoView(_e(e,!r,l),30):(He(e),e.scrollTo(s.left,s.top))},onKeyDown:function(t,n,r){var i=b.keyName(t);"Esc"==i||"Ctrl-C"==i||"Ctrl-["==i||"Backspace"==i&&""==n?(N.searchHistoryController.pushInput(n),N.searchHistoryController.reset(),Be(e,a),He(e),e.scrollTo(s.left,s.top),b.e_stop(t),H(e),r(),e.focus()):"Up"==i||"Down"==i?b.e_stop(t):"Ctrl-U"==i&&(b.e_stop(t),r(""))}});break;case"wordUnderCursor":var c=fe(e,!1,0,!1,!0),u=!0;if(c||(c=fe(e,!1,0,!1,!1),u=!1),!c)return;var d=e.getLine(c.start.line).substring(c.start.ch,c.end.ch);d=u&&i?"\\b"+d+"\\b":d.replace(/([.?*+$\[\]\/\\(){}|\-])/g,"\\$1"),N.jumpList.cachedCursor=e.getCursor(),e.setCursor(c.start),h(d,!0,!1)}}function h(r,i,o){N.searchHistoryController.pushInput(r),N.searchHistoryController.reset();try{Be(e,r,i,o)}catch(t){return De(e,"Invalid regex: "+r),void H(e)}V.processMotion(e,t,{type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:n.searchArgs.toJumplist}})}},processEx:function(e,t,n){function r(t){N.exCommandHistoryController.pushInput(t),N.exCommandHistoryController.reset(),je.processCommand(e,t)}function i(t,n,r){var i,o,a=b.keyName(t);("Esc"==a||"Ctrl-C"==a||"Ctrl-["==a||"Backspace"==a&&""==n)&&(N.exCommandHistoryController.pushInput(n),N.exCommandHistoryController.reset(),b.e_stop(t),H(e),r(),e.focus()),"Up"==a||"Down"==a?(b.e_stop(t),i="Up"==a,o=t.target?t.target.selectionEnd:0,r(n=N.exCommandHistoryController.nextMatch(n,i)||""),o&&t.target&&(t.target.selectionEnd=t.target.selectionStart=Math.min(o,t.target.value.length))):"Ctrl-U"==a?(b.e_stop(t),r("")):"Left"!=a&&"Right"!=a&&"Ctrl"!=a&&"Alt"!=a&&"Shift"!=a&&N.exCommandHistoryController.reset()}"keyToEx"==n.type?je.processCommand(e,n.exArgs.input):t.visualMode?Pe(e,{onClose:r,prefix:":",value:"'<,'>",onKeyDown:i,selectValueOnOpen:!1}):Pe(e,{onClose:r,prefix:":",onKeyDown:i})},evalInput:function(e,t){var n,r,i,o=t.inputState,a=o.motion,s=o.motionArgs||{},l=o.operator,c=o.operatorArgs||{},u=o.registerName,d=t.sel,h=ee(t.visualMode?J(e,d.head):e.getCursor("head")),p=ee(t.visualMode?J(e,d.anchor):e.getCursor("anchor")),g=ee(h),m=ee(p);if(l&&this.recordLastEdit(t,o),(i=void 0!==o.repeatOverride?o.repeatOverride:o.getRepeat())>0&&s.explicitRepeat?s.repeatIsExplicit=!0:(s.noRepeat||!s.explicitRepeat&&0===i)&&(i=1,s.repeatIsExplicit=!1),o.selectedCharacter&&(s.selectedCharacter=c.selectedCharacter=o.selectedCharacter),s.repeat=i,H(e),a){var f=Y[a](e,h,s,t,o);if(t.lastMotion=Y[a],!f)return;if(s.toJumplist){var y=N.jumpList,C=y.cachedCursor;C?(ye(e,C,f),delete y.cachedCursor):ye(e,h,f)}f instanceof Array?(r=f[0],n=f[1]):n=f,n||(n=ee(h)),t.visualMode?(t.visualBlock&&n.ch===1/0||(n=J(e,n)),r&&(r=J(e,r)),r=r||m,d.anchor=r,d.head=n,he(e),we(e,t,"<",ne(r,n)?r:n),we(e,t,">",ne(r,n)?n:r)):l||(n=J(e,n),e.setCursor(n.line,n.ch))}if(l){if(c.lastSel){r=m;var S=c.lastSel,k=Math.abs(S.head.line-S.anchor.line),b=Math.abs(S.head.ch-S.anchor.ch);n=S.visualLine?new A(m.line+k,m.ch):S.visualBlock?new A(m.line+k,m.ch+b):S.head.line==S.anchor.line?new A(m.line,m.ch+b):new A(m.line+k,m.ch),t.visualMode=!0,t.visualLine=S.visualLine,t.visualBlock=S.visualBlock,d=t.sel={anchor:r,head:n},he(e)}else t.visualMode&&(c.lastSel={anchor:ee(d.anchor),head:ee(d.head),visualBlock:t.visualBlock,visualLine:t.visualLine});var w,I,x,T,M;if(t.visualMode){if(w=re(d.head,d.anchor),I=ie(d.head,d.anchor),x=t.visualLine||c.linewise,M=pe(e,{anchor:w,head:I},T=t.visualBlock?"block":x?"line":"char"),x){var E=M.ranges;if("block"==T)for(var O=0;O<E.length;O++)E[O].head.ch=ae(e,E[O].head.line);else"line"==T&&(E[0].head=new A(E[0].head.line+1,0))}}else{if(w=ee(r||m),ne(I=ee(n||g),w)){var R=w;w=I,I=R}(x=s.linewise||c.linewise)?function(e,t,n){t.ch=0,n.ch=0,n.line++}(0,w,I):s.forward&&function(e,t,n){var r=e.getRange(t,n);if(/\n\s*$/.test(r)){var i=r.split("\n");i.pop();for(var o=i.pop();i.length>0&&o&&v(o);o=i.pop())n.line--,n.ch=0;o?(n.line--,n.ch=ae(e,n.line)):n.ch=0}}(e,w,I),M=pe(e,{anchor:w,head:I},T="char",!s.inclusive||x)}e.setSelections(M.ranges,M.primary),t.lastMotion=null,c.repeat=i,c.registerName=u,c.linewise=x;var L=G[l](e,c,M.ranges,m,n);t.visualMode&&ge(e,null!=L),L&&e.setCursor(L)}},recordLastEdit:function(e,t,n){var r=N.macroModeState;r.isPlaying||(e.lastEditInputState=t,e.lastEditActionCommand=n,r.lastInsertModeChanges.changes=[],r.lastInsertModeChanges.expectCursorActivityForChange=!1,r.lastInsertModeChanges.visualBlock=e.visualBlock?e.sel.head.line-e.sel.anchor.line:0)}},Y={moveToTopLine:function(e,t,n){var r=Ke(e).top+n.repeat-1;return new A(r,me(e.getLine(r)))},moveToMiddleLine:function(e){var t=Ke(e),n=Math.floor(.5*(t.top+t.bottom));return new A(n,me(e.getLine(n)))},moveToBottomLine:function(e,t,n){var r=Ke(e).bottom-n.repeat+1;return new A(r,me(e.getLine(r)))},expandToLine:function(e,t,n){return new A(t.line+n.repeat-1,1/0)},findNext:function(e,t,n){var r=Me(e),i=r.getQuery();if(i){var o=!n.forward;return o=r.isReversed()?!o:o,Ue(e,i),_e(e,o,i,n.repeat)}},findAndSelectNextInclusive:function(e,t,n,r,i){var o=Me(e),a=o.getQuery();if(a){var s=!n.forward,l=function(e,t,n,r,i){return void 0===r&&(r=1),e.operation((function(){var o=e.getCursor(),a=e.getSearchCursor(n,o),s=a.find(!t);!i.visualMode&&s&&te(a.from(),o)&&a.find(!t);for(var l=0;l<r;l++)if(!(s=a.find(t))&&!(a=e.getSearchCursor(n,t?new A(e.lastLine()):new A(e.firstLine(),0))).find(t))return;return[a.from(),a.to()]}))}(e,s=o.isReversed()?!s:s,a,n.repeat,r);if(l){if(i.operator)return l;var c=l[0],u=new A(l[1].line,l[1].ch-1);if(r.visualMode){(r.visualLine||r.visualBlock)&&(r.visualLine=!1,r.visualBlock=!1,b.signal(e,"vim-mode-change",{mode:"visual",subMode:""}));var d=r.sel.anchor;if(d)return o.isReversed()?n.forward?[d,c]:[d,u]:n.forward?[d,u]:[d,c]}else r.visualMode=!0,r.visualLine=!1,r.visualBlock=!1,b.signal(e,"vim-mode-change",{mode:"visual",subMode:""});return s?[u,c]:[c,u]}}},goToMark:function(e,t,n,r){var i=We(e,r,n.selectedCharacter);return i?n.linewise?{line:i.line,ch:me(e.getLine(i.line))}:i:null},moveToOtherHighlightedEnd:function(e,t,n,r){if(r.visualBlock&&n.sameLine){var i=r.sel;return[J(e,new A(i.anchor.line,i.head.ch)),J(e,new A(i.head.line,i.anchor.ch))]}return[r.sel.head,r.sel.anchor]},jumpToMark:function(e,t,n,r){for(var i=t,o=0;o<n.repeat;o++){var a=i;for(var s in r.marks)if(f(s)){var l=r.marks[s].find();if(!((n.forward?ne(l,a):ne(a,l))||n.linewise&&l.line==a.line)){var c=te(a,i),u=n.forward?oe(a,l,i):oe(i,l,a);(c||u)&&(i=l)}}}return n.linewise&&(i=new A(i.line,me(e.getLine(i.line)))),i},moveByCharacters:function(e,t,n){var r=t,i=n.repeat,o=n.forward?r.ch+i:r.ch-i;return new A(r.line,o)},moveByLines:function(e,t,n,r){var i=t,o=i.ch;switch(r.lastMotion){case this.moveByLines:case this.moveByDisplayLines:case this.moveByScroll:case this.moveToColumn:case this.moveToEol:o=r.lastHPos;break;default:r.lastHPos=o}var a=n.repeat+(n.repeatOffset||0),s=n.forward?i.line+a:i.line-a,l=e.firstLine(),c=e.lastLine(),u=e.findPosV(i,n.forward?a:-a,"line",r.lastHSPos);return(n.forward?u.line>s:u.line<s)&&(s=u.line,o=u.ch),s<l&&i.line==l?this.moveToStartOfLine(e,t,n,r):s>c&&i.line==c?be(e,t,n,r,!0):(n.toFirstChar&&(o=me(e.getLine(s)),r.lastHPos=o),r.lastHSPos=e.charCoords(new A(s,o),"div").left,new A(s,o))},moveByDisplayLines:function(e,t,n,r){var i=t;switch(r.lastMotion){case this.moveByDisplayLines:case this.moveByScroll:case this.moveByLines:case this.moveToColumn:case this.moveToEol:break;default:r.lastHSPos=e.charCoords(i,"div").left}var o=n.repeat;if((s=e.findPosV(i,n.forward?o:-o,"line",r.lastHSPos)).hitSide)if(n.forward)var a={top:e.charCoords(s,"div").top+8,left:r.lastHSPos},s=e.coordsChar(a,"div");else{var l=e.charCoords(new A(e.firstLine(),0),"div");l.left=r.lastHSPos,s=e.coordsChar(l,"div")}return r.lastHPos=s.ch,s},moveByPage:function(e,t,n){var r=t,i=n.repeat;return e.findPosV(r,n.forward?i:-i,"page")},moveByParagraph:function(e,t,n){var r=n.forward?1:-1;return xe(e,t,n.repeat,r)},moveBySentence:function(e,t,n){var r=n.forward?1:-1;return function(e,t,n,r){function i(e,t){if(t.pos+t.dir<0||t.pos+t.dir>=t.line.length){if(t.ln+=t.dir,!m(e,t.ln))return t.line=null,t.ln=null,void(t.pos=null);t.line=e.getLine(t.ln),t.pos=t.dir>0?0:t.line.length-1}else t.pos+=t.dir}function o(e,t,n,r){var o=""===(c=e.getLine(t)),a={line:c,ln:t,pos:n,dir:r},s={ln:a.ln,pos:a.pos},l=""===a.line;for(i(e,a);null!==a.line;){if(s.ln=a.ln,s.pos=a.pos,""===a.line&&!l)return{ln:a.ln,pos:a.pos};if(o&&""!==a.line&&!v(a.line[a.pos]))return{ln:a.ln,pos:a.pos};!C(a.line[a.pos])||o||a.pos!==a.line.length-1&&!v(a.line[a.pos+1])||(o=!0),i(e,a)}var c=e.getLine(s.ln);s.pos=0;for(var u=c.length-1;u>=0;--u)if(!v(c[u])){s.pos=u;break}return s}function a(e,t,n,r){var o={line:e.getLine(t),ln:t,pos:n,dir:r},a={ln:o.ln,pos:null},s=""===o.line;for(i(e,o);null!==o.line;){if(""===o.line&&!s)return null!==a.pos?a:{ln:o.ln,pos:o.pos};if(C(o.line[o.pos])&&null!==a.pos&&(o.ln!==a.ln||o.pos+1!==a.pos))return a;""===o.line||v(o.line[o.pos])||(s=!1,a={ln:o.ln,pos:o.pos}),i(e,o)}var l=e.getLine(a.ln);a.pos=0;for(var c=0;c<l.length;++c)if(!v(l[c])){a.pos=c;break}return a}for(var s={ln:t.line,pos:t.ch};n>0;)s=r<0?a(e,s.ln,s.pos,r):o(e,s.ln,s.pos,r),n--;return new A(s.ln,s.pos)}(e,t,n.repeat,r)},moveByScroll:function(e,t,n,r){var i,o=e.getScrollInfo(),a=n.repeat;a||(a=o.clientHeight/(2*e.defaultTextHeight()));var s=e.charCoords(t,"local");if(n.repeat=a,!(i=Y.moveByDisplayLines(e,t,n,r)))return null;var l=e.charCoords(i,"local");return e.scrollTo(null,o.top+l.top-s.top),i},moveByWords:function(e,t,n){return function(e,t,n,r,i,o){var a=ee(t),s=[];(r&&!i||!r&&i)&&n++;for(var l=!(r&&i),c=0;c<n;c++){var u=ke(e,t,r,o,l);if(!u){var d=ae(e,e.lastLine());s.push(r?{line:e.lastLine(),from:d,to:d}:{line:0,from:0,to:0});break}s.push(u),t=new A(u.line,r?u.to-1:u.from)}var h=s.length!=n,p=s[0],g=s.pop();return r&&!i?(h||p.from==a.ch&&p.line==a.line||(g=s.pop()),new A(g.line,g.from)):r&&i?new A(g.line,g.to-1):!r&&i?(h||p.to==a.ch&&p.line==a.line||(g=s.pop()),new A(g.line,g.to)):new A(g.line,g.from)}(e,t,n.repeat,!!n.forward,!!n.wordEnd,!!n.bigWord)},moveTillCharacter:function(e,t,n){var r=Ae(e,n.repeat,n.forward,n.selectedCharacter),i=n.forward?-1:1;return ve(i,n),r?(r.ch+=i,r):null},moveToCharacter:function(e,t,n){var r=n.repeat;return ve(0,n),Ae(e,r,n.forward,n.selectedCharacter)||t},moveToSymbol:function(e,t,n){return function(e,t,n,r){var i=ee(e.getCursor()),o=n?1:-1,a=n?e.lineCount():-1,s=i.ch,l=i.line,c=e.getLine(l),u={lineText:c,nextCh:c.charAt(s),lastCh:null,index:s,symb:r,reverseSymb:(n?{")":"(","}":"{"}:{"(":")","{":"}"})[r],forward:n,depth:0,curMoveThrough:!1},d=Ce[r];if(!d)return i;var h=Se[d].init,p=Se[d].isComplete;for(h&&h(u);l!==a&&t;){if(u.index+=o,u.nextCh=u.lineText.charAt(u.index),!u.nextCh){if(l+=o,u.lineText=e.getLine(l)||"",o>0)u.index=0;else{var g=u.lineText.length;u.index=g>0?g-1:0}u.nextCh=u.lineText.charAt(u.index)}p(u)&&(i.line=l,i.ch=u.index,t--)}return u.nextCh||u.curMoveThrough?new A(l,u.index):i}(e,n.repeat,n.forward,n.selectedCharacter)||t},moveToColumn:function(e,t,n,r){var i=n.repeat;return r.lastHPos=i-1,r.lastHSPos=e.charCoords(t,"div").left,function(e,t){var n=e.getCursor().line;return J(e,new A(n,t-1))}(e,i)},moveToEol:function(e,t,n,r){return be(e,t,n,r,!1)},moveToFirstNonWhiteSpaceCharacter:function(e,t){var n=t;return new A(n.line,me(e.getLine(n.line)))},moveToMatchedSymbol:function(e,t){var n=t,r=n.line,i=n.ch;if(i<e.getLine(r).length){var o="<"===i||">"===i?/[(){}[\]<>]/:/[(){}[\]]/;return e.findMatchingBracket(new A(r,i),{bracketRegex:o}).to}return n},moveToStartOfLine:function(e,t){return new A(t.line,0)},moveToLineOrEdgeOfDocument:function(e,t,n){var r=n.forward?e.lastLine():e.firstLine();return n.repeatIsExplicit&&(r=n.repeat-e.getOption("firstLineNumber")),new A(r,me(e.getLine(r)))},moveToStartOfDisplayLine:function(e){return e.execCommand("goLineLeft"),e.getCursor()},moveToEndOfDisplayLine:function(e){e.execCommand("goLineRight");var t=e.getCursor();return"before"==t.sticky&&t.ch--,t},textObjectManipulation:function(e,t,n,r){var i=n.selectedCharacter;"b"==i?i="(":"B"==i&&(i="{");var o,a=!n.textObjectInner;if({"(":")",")":"(","{":"}","}":"{","[":"]","]":"[","<":">",">":"<"}[i])o=function(e,t,n,r){var i,o,a=t,s={"(":/[()]/,")":/[()]/,"[":/[[\]]/,"]":/[[\]]/,"{":/[{}]/,"}":/[{}]/,"<":/[<>]/,">":/[<>]/}[n],l={"(":"(",")":"(","[":"[","]":"[","{":"{","}":"{","<":"<",">":"<"}[n],c=e.getLine(a.line).charAt(a.ch)===l?1:0;if(i=e.scanForBracket(new A(a.line,a.ch+c),-1,void 0,{bracketRegex:s}),o=e.scanForBracket(new A(a.line,a.ch+c),1,void 0,{bracketRegex:s}),!i||!o)return{start:a,end:a};if(i=i.pos,o=o.pos,i.line==o.line&&i.ch>o.ch||i.line>o.line){var u=i;i=o,o=u}return r?o.ch+=1:i.ch+=1,{start:i,end:o}}(e,t,i,a);else if({"'":!0,'"':!0,"`":!0}[i])o=function(e,t,n,r){var i,o,a,s,l=ee(t),c=e.getLine(l.line).split(""),u=c.indexOf(n);if(l.ch<u?l.ch=u:u<l.ch&&c[l.ch]==n&&(o=l.ch,--l.ch),c[l.ch]!=n||o)for(a=l.ch;a>-1&&!i;a--)c[a]==n&&(i=a+1);else i=l.ch+1;if(i&&!o)for(a=i,s=c.length;a<s&&!o;a++)c[a]==n&&(o=a);return i&&o?(r&&(--i,++o),{start:new A(l.line,i),end:new A(l.line,o)}):{start:l,end:l}}(e,t,i,a);else if("W"===i)o=fe(e,a,0,!0);else if("w"===i)o=fe(e,a,0,!1);else if("p"===i)if(o=xe(e,t,n.repeat,0,a),n.linewise=!0,r.visualMode)r.visualLine||(r.visualLine=!0);else{var s=r.inputState.operatorArgs;s&&(s.linewise=!0),o.end.line--}else{if("t"!==i)return null;o=function(e,t,n){var r=t;if(!b.findMatchingTag||!b.findEnclosingTag)return{start:r,end:r};var i=b.findMatchingTag(e,t)||b.findEnclosingTag(e,t);return i&&i.open&&i.close?n?{start:i.open.from,end:i.close.to}:{start:i.open.to,end:i.close.from}:{start:r,end:r}}(e,t,a)}return e.state.vim.visualMode?function(e,t,n){var r,i=e.state.vim.sel,o=i.head,a=i.anchor;return ne(n,t)&&(r=n,n=t,t=r),ne(o,a)?(o=re(t,o),a=ie(a,n)):(a=re(t,a),-1==(o=Q(o=ie(o,n),0,-1)).ch&&o.line!=e.firstLine()&&(o=new A(o.line-1,ae(e,o.line-1)))),[a,o]}(e,o.start,o.end):[o.start,o.end]},repeatLastCharacterSearch:function(e,t,n){var r=N.lastCharacterSearch,i=n.repeat,o=n.forward===r.forward,a=(r.increment?1:0)*(o?-1:1);e.moveH(-a,"char"),n.inclusive=!!o;var s=Ae(e,i,o,r.selectedCharacter);return s?(s.ch+=a,s):(e.moveH(a,"char"),t)}};function j(e,t){for(var n=[],r=0;r<t;r++)n.push(e);return n}var G={change:function(e,t,n){var r,i,o=e.state.vim,a=n[0].anchor,s=n[0].head;if(o.visualMode)if(t.fullLine)s.ch=Number.MAX_VALUE,s.line--,e.setSelection(a,s),i=e.getSelection(),e.replaceSelections(""),r=a;else{i=e.getSelection();var l=j("",n.length);e.replaceSelections(l),r=re(n[0].head,n[0].anchor)}else{i=e.getRange(a,s);var c=o.lastEditInputState||{};if("moveByWords"==c.motion&&!v(i)){var u=/\s+$/.exec(i);u&&c.motionArgs&&c.motionArgs.forward&&(s=Q(s,0,-u[0].length),i=i.slice(0,-u[0].length))}var d=new A(a.line-1,Number.MAX_VALUE),h=e.firstLine()==e.lastLine();s.line>e.lastLine()&&t.linewise&&!h?e.replaceRange("",d,s):e.replaceRange("",a,s),t.linewise&&(h||(e.setCursor(d),b.commands.newlineAndIndent(e)),a.ch=Number.MAX_VALUE),r=a}N.registerController.pushText(t.registerName,"change",i,t.linewise,n.length>1),z.enterInsertMode(e,{head:r},e.state.vim)},delete:function(e,t,n){var r,i;e.pushUndoStop();var o=e.state.vim;if(o.visualBlock){i=e.getSelection();var a=j("",n.length);e.replaceSelections(a),r=re(n[0].head,n[0].anchor)}else{var s=n[0].anchor,l=n[0].head;t.linewise&&l.line!=e.firstLine()&&s.line==e.lastLine()&&s.line==l.line-1&&(s.line==e.firstLine()?s.ch=0:s=new A(s.line-1,ae(e,s.line-1))),i=e.getRange(s,l),e.replaceRange("",s,l),r=s,t.linewise&&(r=Y.moveToFirstNonWhiteSpaceCharacter(e,s))}return N.registerController.pushText(t.registerName,"delete",i,t.linewise,o.visualBlock),J(e,r)},indent:function(e,t,n){var r=e.state.vim,i=n[0].anchor.line,o=r.visualBlock?n[n.length-1].anchor.line:n[0].head.line,a=r.visualMode?t.repeat:1;t.linewise&&o--,e.pushUndoStop();for(var s=i;s<=o;s++)for(var l=0;l<a;l++)e.indentLine(s,t.indentRight);return e.pushUndoStop(),Y.moveToFirstNonWhiteSpaceCharacter(e,n[0].anchor)},indentAuto:function(e,t,n){return e.execCommand("indentAuto"),Y.moveToFirstNonWhiteSpaceCharacter(e,n[0].anchor)},changeCase:function(e,t,n,r,i){for(var o=e.getSelections(),a=[],s=t.toLower,l=0;l<o.length;l++){var c=o[l],u="";if(!0===s)u=c.toLowerCase();else if(!1===s)u=c.toUpperCase();else for(var d=0;d<c.length;d++){var h=c.charAt(d);u+=y(h)?h.toLowerCase():h.toUpperCase()}a.push(u)}return e.replaceSelections(a),t.shouldMoveCursor?i:!e.state.vim.visualMode&&t.linewise&&n[0].anchor.line+1==n[0].head.line?Y.moveToFirstNonWhiteSpaceCharacter(e,r):t.linewise?r:re(n[0].anchor,n[0].head)},yank:function(e,t,n,r){var i=e.state.vim,o=e.getSelection(),a=i.visualMode?re(i.sel.anchor,i.sel.head,n[0].head,n[0].anchor):r;return N.registerController.pushText(t.registerName,"yank",o,t.linewise,i.visualBlock),a}},z={jumpListWalk:function(e,t,n){if(!n.visualMode){var r=t.repeat,i=t.forward,o=N.jumpList.move(e,i?r:-r),a=o?o.find():void 0;a=a||e.getCursor(),e.setCursor(a)}},scroll:function(e,t,n){if(!n.visualMode){var r=t.repeat||1,i=e.defaultTextHeight(),o=e.getScrollInfo().top,a=i*r,s=t.forward?o+a:o-a,l=ee(e.getCursor()),c=e.charCoords(l,"local");if(t.forward)s>c.top?(l.line+=(s-c.top)/i,l.line=Math.ceil(l.line),e.setCursor(l),c=e.charCoords(l,"local"),e.scrollTo(null,c.top)):e.scrollTo(null,s);else{var u=s+e.getScrollInfo().clientHeight;u<c.bottom?(l.line-=(c.bottom-u)/i,l.line=Math.floor(l.line),e.setCursor(l),c=e.charCoords(l,"local"),e.scrollTo(null,c.bottom-e.getScrollInfo().clientHeight)):e.scrollTo(null,s)}}},scrollToCursor:function(e,t){var n=e.getCursor().line,r=e.charCoords(new A(n,0),"local"),i=e.getScrollInfo().clientHeight,o=r.top,a=r.bottom-o;switch(t.position){case"center":o=o-i/2+a;break;case"bottom":o=o-i+a}e.moveCurrentLineTo(o)},replayMacro:function(e,t,n){var r=t.selectedCharacter,i=t.repeat,o=N.macroModeState;for("@"==r?r=o.latestRegister:o.latestRegister=r;i--;)Je(e,n,o,r)},enterMacroRecordMode:function(e,t){var n=N.macroModeState,r=t.selectedCharacter;N.registerController.isValidRegister(r)&&n.enterMacroRecordMode(e,r)},toggleOverwrite:function(e){e.state.overwrite?(e.toggleOverwrite(!1),e.setOption("keyMap","vim-insert"),b.signal(e,"vim-mode-change",{mode:"insert"})):(e.toggleOverwrite(!0),e.setOption("keyMap","vim-replace"),b.signal(e,"vim-mode-change",{mode:"replace"}))},enterInsertMode:function(e,t,n){if(!e.getOption("readOnly")){n.insertMode=!0,n.insertModeRepeat=t&&t.repeat||1;var r=t?t.insertAt:null,i=n.sel,o=t.head||e.getCursor("head"),a=e.listSelections().length;if("eol"==r)o=new A(o.line,ae(e,o.line));else if("bol"==r)o=new A(o.line,0);else if("charAfter"==r)o=Q(o,0,1);else if("firstNonBlank"==r)o=Y.moveToFirstNonWhiteSpaceCharacter(e,o);else if("startOfSelectedArea"==r){if(!n.visualMode)return;n.visualBlock?(o=new A(Math.min(i.head.line,i.anchor.line),Math.min(i.head.ch,i.anchor.ch)),a=Math.abs(i.head.line-i.anchor.line)+1):o=i.head.line<i.anchor.line?i.head:new A(i.anchor.line,0)}else if("endOfSelectedArea"==r){if(!n.visualMode)return;n.visualBlock?(o=new A(Math.min(i.head.line,i.anchor.line),Math.max(i.head.ch,i.anchor.ch)+1),a=Math.abs(i.head.line-i.anchor.line)+1):o=i.head.line>=i.anchor.line?Q(i.head,0,1):new A(i.anchor.line,0)}else if("inplace"==r){if(n.visualMode)return}else"lastEdit"==r&&(o=qe(e)||o);e.setOption("disableInput",!1),t&&t.replace?(e.toggleOverwrite(!0),e.setOption("keyMap","vim-replace"),b.signal(e,"vim-mode-change",{mode:"replace"})):(e.toggleOverwrite(!1),e.setOption("keyMap","vim-insert"),b.signal(e,"vim-mode-change",{mode:"insert"})),N.macroModeState.isPlaying||(e.on("change",$e),b.on(e.getInputField(),"keydown",Xe)),n.visualMode&&ge(e),ue(e,o,a)}},toggleVisualMode:function(e,t,n){var r,i=t.repeat,o=e.getCursor();n.visualMode?n.visualLine^t.linewise||n.visualBlock^t.blockwise?(n.visualLine=!!t.linewise,n.visualBlock=!!t.blockwise,b.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""}),he(e)):ge(e):(n.visualMode=!0,n.visualLine=!!t.linewise,n.visualBlock=!!t.blockwise,r=J(e,new A(o.line,o.ch+i-1)),n.sel={anchor:o,head:r},b.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""}),he(e),we(e,n,"<",re(o,r)),we(e,n,">",ie(o,r)))},reselectLastSelection:function(e,t,n){var r=n.lastSelection;if(n.visualMode&&de(e,n),r){var i=r.anchorMark.find(),o=r.headMark.find();if(!i||!o)return;n.sel={anchor:i,head:o},n.visualMode=!0,n.visualLine=r.visualLine,n.visualBlock=r.visualBlock,he(e),we(e,n,"<",re(i,o)),we(e,n,">",ie(i,o)),b.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""})}},joinLines:function(e,t,n){var r,i;if(n.visualMode){if(r=e.getCursor("anchor"),ne(i=e.getCursor("head"),r)){var o=i;i=r,r=o}i.ch=ae(e,i.line)-1}else{var a=Math.max(t.repeat,2);r=e.getCursor(),i=J(e,new A(r.line+a-1,1/0))}for(var s=0,l=r.line;l<i.line;l++){s=ae(e,r.line),o=new A(r.line+1,ae(e,r.line+1));var c=e.getRange(r,o);c=t.keepSpaces?c.replace(/\n\r?/g,""):c.replace(/\n\s*/g," "),e.replaceRange(c,r,o)}var u=new A(r.line,s);n.visualMode&&ge(e,!1),e.setCursor(u)},newLineAndEnterInsertMode:function(e,t,n){if(!e.getOption("readOnly")){n.insertMode=!0;var r=ee(e.getCursor());r.line!==e.firstLine()||t.after?(r.line=t.after?r.line:r.line-1,r.ch=ae(e,r.line),e.setCursor(r),(b.commands.newlineAndIndentContinueComment||b.commands.newlineAndIndent)(e)):(e.replaceRange("\n",new A(e.firstLine(),0)),e.setCursor(e.firstLine(),0)),this.enterInsertMode(e,{repeat:t.repeat},n)}},paste:function(e,t,n){var r=ee(e.getCursor()),i=N.registerController.getRegister(t.registerName);if(h=i.toString()){if(t.matchIndent){var o=e.getOption("tabSize"),a=function(e){var t=e.split("\t").length-1,n=e.split(" ").length-1;return t*o+1*n},s=e.getLine(e.getCursor().line),l=a(s.match(/^\s*/)[0]),c=h.replace(/\n$/,""),u=h!==c,d=a(h.match(/^\s*/)[0]),h=c.replace(/^\s*/gm,(function(t){var n=l+(a(t)-d);if(n<0)return"";if(e.getOption("indentWithTabs")){var r=Math.floor(n/o);return Array(r+1).join("\t")}return Array(n+1).join(" ")}));h+=u?"\n":""}t.repeat>1&&(h=Array(t.repeat+1).join(h));var p,g,m=i.linewise,f=i.blockwise;if(f){h=h.split("\n"),m&&h.pop();for(var y=0;y<h.length;y++)h[y]=""==h[y]?" ":h[y];r.ch+=t.after?1:0,r.ch=Math.min(ae(e,r.line),r.ch)}else m?n.visualMode?h=n.visualLine?h.slice(0,-1):"\n"+h.slice(0,h.length-1)+"\n":t.after?(h="\n"+h.slice(0,h.length-1),r.ch=ae(e,r.line)):r.ch=0:r.ch+=t.after?1:0;if(n.visualMode){var v;n.lastPastedText=h;var C=function(e,t){var n=t.lastSelection;return t.visualMode?function(){var t=e.listSelections(),n=t[0],r=t[t.length-1];return[ne(n.anchor,n.head)?n.anchor:n.head,ne(r.anchor,r.head)?r.head:r.anchor]}():function(){var t=e.getCursor(),r=e.getCursor(),i=n.visualBlock;if(i){var o=i.width,a=i.height;r=new A(t.line+a,t.ch+o);for(var s=[],l=t.line;l<r.line;l++){var c={anchor:new A(l,t.ch),head:new A(l,r.ch)};s.push(c)}e.setSelections(s)}else{var u=n.anchorMark.find(),d=n.headMark.find(),h=d.line-u.line,p=d.ch-u.ch;r={line:r.line+h,ch:h?r.ch:p+r.ch},n.visualLine&&(t=new A(t.line,0),r=new A(r.line,ae(e,r.line))),e.setSelection(t,r)}return[t,r]}()}(e,n),S=C[0],k=C[1],b=e.getSelection(),w=e.listSelections(),I=new Array(w.length).join("1").split("1");n.lastSelection&&(v=n.lastSelection.headMark.find()),N.registerController.unnamedRegister.setText(b),f?(e.replaceSelections(I),k=new A(S.line+h.length-1,S.ch),e.setCursor(S),ce(e,k),e.replaceSelections(h),p=S):n.visualBlock?(e.replaceSelections(I),e.setCursor(S),e.replaceRange(h,S,S),p=S):(e.replaceRange(h,S,k),p=e.posFromIndex(e.indexFromPos(S)+h.length-1)),v&&(n.lastSelection.headMark=e.setBookmark(v)),m&&(p.ch=0)}else if(f){for(e.setCursor(r),y=0;y<h.length;y++){var x=r.line+y;x>e.lastLine()&&e.replaceRange("\n",new A(x,0)),ae(e,x)<r.ch&&le(e,x,r.ch)}e.setCursor(r),ce(e,new A(r.line+h.length-1,r.ch)),e.replaceSelections(h),p=r}else e.replaceRange(h,r),m&&t.after?p=new A(r.line+1,me(e.getLine(r.line+1))):m&&!t.after?p=new A(r.line,me(e.getLine(r.line))):!m&&t.after?(g=e.indexFromPos(r),p=e.posFromIndex(g+h.length-1)):(g=e.indexFromPos(r),p=e.posFromIndex(g+h.length));n.visualMode&&ge(e,!1),e.setCursor(p)}},undo:function(e,t){e.operation((function(){X(e,b.commands.undo,t.repeat)(),e.setCursor(e.getCursor("anchor"))}))},redo:function(e,t){X(e,b.commands.redo,t.repeat)()},setRegister:function(e,t,n){n.inputState.registerName=t.selectedCharacter},setMark:function(e,t,n){we(e,n,t.selectedCharacter,e.getCursor())},replace:function(e,t,n){var r,i,o=t.selectedCharacter,a=e.getCursor(),s=e.listSelections();if(n.visualMode)a=e.getCursor("start"),i=e.getCursor("end");else{var l=e.getLine(a.line);(r=a.ch+t.repeat)>l.length&&(r=l.length),i=new A(a.line,r)}if("\n"==o)n.visualMode||e.replaceRange("",a,i),(b.commands.newlineAndIndentContinueComment||b.commands.newlineAndIndent)(e);else{var c=e.getRange(a,i);if(c=c.replace(/[^\n]/g,o),n.visualBlock){var u=new Array(e.getOption("tabSize")+1).join(" ");c=(c=e.getSelection()).replace(/\t/g,u).replace(/[^\n]/g,o).split("\n"),e.replaceSelections(c)}else e.replaceRange(c,a,i);n.visualMode?(a=ne(s[0].anchor,s[0].head)?s[0].anchor:s[0].head,e.setCursor(a),ge(e,!1)):e.setCursor(Q(i,0,-1))}},incrementNumberToken:function(e,t){for(var n,r,i,o,a=e.getCursor(),s=e.getLine(a.line),l=/(-?)(?:(0x)([\da-f]+)|(0b|0|)(\d+))/gi;null!==(n=l.exec(s))&&(i=(r=n.index)+n[0].length,!(a.ch<i)););if((t.backtrack||!(i<=a.ch))&&n){var c=n[2]||n[4],u=n[3]||n[5],d=t.increase?1:-1,h={"0b":2,0:8,"":10,"0x":16}[c.toLowerCase()];o=(parseInt(n[1]+u,h)+d*t.repeat).toString(h);var p=c?new Array(u.length-o.length+1+n[1].length).join("0"):"";o="-"===o.charAt(0)?"-"+c+p+o.substr(1):c+p+o;var g=new A(a.line,r),m=new A(a.line,i);e.replaceRange(o,g,m),e.setCursor(new A(a.line,r+o.length-1))}},repeatLastEdit:function(e,t,n){if(n.lastEditInputState){var r=t.repeat;r&&t.repeatIsExplicit?n.lastEditInputState.repeatOverride=r:r=n.lastEditInputState.repeatOverride||r,et(e,n,r,!1)}},indent:function(e,t){e.indentLine(e.getCursor().line,t.indentRight)},exitInsertMode:Ge};function J(e,t){var n=e.state.vim,r=n.insertMode||n.visualMode,i=Math.min(Math.max(e.firstLine(),t.line),e.lastLine()),o=ae(e,i)-1+!!r,a=Math.min(Math.max(0,t.ch),o);return new A(i,a)}function $(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function Q(e,t,n){return"object"==typeof t&&(n=t.ch,t=t.line),new A(e.line+t,e.ch+n)}function Z(e,t){if("<character>"==t.slice(-11)){var n=t.length-11,r=e.slice(0,n),i=t.slice(0,n);return r==i&&e.length>n?"full":0==i.indexOf(r)&&"partial"}return e==t?"full":0==t.indexOf(e)&&"partial"}function X(e,t,n){return function(){for(var r=0;r<n;r++)t(e)}}function ee(e){return new A(e.line,e.ch)}function te(e,t){return e.ch==t.ch&&e.line==t.line}function ne(e,t){return e.line<t.line||e.line==t.line&&e.ch<t.ch}function re(e,t){return arguments.length>2&&(t=re.apply(void 0,Array.prototype.slice.call(arguments,1))),ne(e,t)?e:t}function ie(e,t){return arguments.length>2&&(t=ie.apply(void 0,Array.prototype.slice.call(arguments,1))),ne(e,t)?t:e}function oe(e,t,n){var r=ne(e,t),i=ne(t,n);return r&&i}function ae(e,t){return e.getLine(t).length}function se(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function le(e,t,n){var r=ae(e,t),i=new Array(n-r+1).join(" ");e.setCursor(new A(t,r)),e.replaceRange(i,e.getCursor())}function ce(e,t){var n=[],r=e.listSelections(),i=ee(e.clipPos(t)),o=!te(t,i),a=function(e,t,n){for(var r=0;r<e.length;r++){var i=te(e[r].anchor,t),o=te(e[r].head,t);if(i||o)return r}return-1}(r,e.getCursor("head")),s=te(r[a].head,r[a].anchor),l=r.length-1,c=l-a>a?l:0,u=r[c].anchor,d=Math.min(u.line,i.line),h=Math.max(u.line,i.line),p=u.ch,g=i.ch,m=r[c].head.ch-p,f=g-p;m>0&&f<=0?(p++,o||g--):m<0&&f>=0?(p--,s||g++):m<0&&-1==f&&(p--,g++);for(var y=d;y<=h;y++){var v={anchor:new A(y,p),head:new A(y,g)};n.push(v)}return e.setSelections(n),t.ch=g,u.ch=p,u}function ue(e,t,n){for(var r=[],i=0;i<n;i++){var o=Q(t,i,0);r.push({anchor:o,head:o})}e.setSelections(r,0)}function de(e,t){var n=t.sel.anchor,r=t.sel.head;t.lastPastedText&&(r=e.posFromIndex(e.indexFromPos(n)+t.lastPastedText.length),t.lastPastedText=null),t.lastSelection={anchorMark:e.setBookmark(n),headMark:e.setBookmark(r),anchor:ee(n),head:ee(r),visualMode:t.visualMode,visualLine:t.visualLine,visualBlock:t.visualBlock}}function he(e,t,n){var r=e.state.vim,i=pe(e,t=t||r.sel,n=n||r.visualLine?"line":r.visualBlock?"block":"char");e.setSelections(i.ranges,i.primary)}function pe(e,t,n,r){var i=ee(t.head),o=ee(t.anchor);if("char"==n){var a=r||ne(t.head,t.anchor)?0:1,s=ne(t.head,t.anchor)?1:0;return i=Q(t.head,0,a),{ranges:[{anchor:o=Q(t.anchor,0,s),head:i}],primary:0}}if("line"==n){if(ne(t.head,t.anchor))i.ch=0,o.ch=ae(e,o.line);else{o.ch=0;var l=e.lastLine();i.line>l&&(i.line=l),i.ch=ae(e,i.line)}return{ranges:[{anchor:o,head:i}],primary:0}}if("block"==n){var c=Math.min(o.line,i.line),u=o.ch,d=Math.max(o.line,i.line),h=i.ch;u<h?h+=1:u+=1;for(var p=d-c+1,g=i.line==c?0:p-1,m=[],f=0;f<p;f++)m.push({anchor:new A(c+f,u),head:new A(c+f,h)});return{ranges:m,primary:g}}}function ge(e,t){var n=e.state.vim;!1!==t&&e.setCursor(J(e,n.sel.head)),de(e,n),n.visualMode=!1,n.visualLine=!1,n.visualBlock=!1,n.insertMode||b.signal(e,"vim-mode-change",{mode:"normal"})}function me(e){if(!e)return 0;var t=e.search(/\S/);return-1==t?e.length:t}function fe(e,t,n,r,i){for(var o=function(e){var t=e.getCursor("head");return 1==e.getSelection().length&&(t=re(t,e.getCursor("anchor"))),t}(e),l=e.getLine(o.line),c=o.ch,u=i?a[0]:s[0];!u(l.charAt(c));)if(++c>=l.length)return null;r?u=s[0]:(u=a[0])(l.charAt(c))||(u=a[1]);for(var d=c,h=c;u(l.charAt(d))&&d<l.length;)d++;for(;u(l.charAt(h))&&h>=0;)h--;if(h++,t){for(var p=d;/\s/.test(l.charAt(d))&&d<l.length;)d++;if(p==d){for(var g=h;/\s/.test(l.charAt(h-1))&&h>0;)h--;h||(h=g)}}return{start:new A(o.line,h),end:new A(o.line,d)}}function ye(e,t,n){te(t,n)||N.jumpList.add(e,t,n)}function ve(e,t){N.lastCharacterSearch.increment=e,N.lastCharacterSearch.forward=t.forward,N.lastCharacterSearch.selectedCharacter=t.selectedCharacter}var Ce={"(":"bracket",")":"bracket","{":"bracket","}":"bracket","[":"section","]":"section","*":"comment","/":"comment",m:"method",M:"method","#":"preprocess"},Se={bracket:{isComplete:function(e){if(e.nextCh===e.symb){if(e.depth++,e.depth>=1)return!0}else e.nextCh===e.reverseSymb&&e.depth--;return!1}},section:{init:function(e){e.curMoveThrough=!0,e.symb=(e.forward?"]":"[")===e.symb?"{":"}"},isComplete:function(e){return 0===e.index&&e.nextCh===e.symb}},comment:{isComplete:function(e){var t="*"===e.lastCh&&"/"===e.nextCh;return e.lastCh=e.nextCh,t}},method:{init:function(e){e.symb="m"===e.symb?"{":"}",e.reverseSymb="{"===e.symb?"}":"{"},isComplete:function(e){return e.nextCh===e.symb}},preprocess:{init:function(e){e.index=0},isComplete:function(e){if("#"===e.nextCh){var t=e.lineText.match(/^#(\w+)/)[1];if("endif"===t){if(e.forward&&0===e.depth)return!0;e.depth++}else if("if"===t){if(!e.forward&&0===e.depth)return!0;e.depth--}if("else"===t&&0===e.depth)return!0}return!1}}};function ke(e,t,n,r,i){var o=t.line,l=t.ch,c=e.getLine(o),u=n?1:-1,d=r?s:a;if(i&&""==c){if(o+=u,c=e.getLine(o),!m(e,o))return null;l=n?0:c.length}for(;;){if(i&&""==c)return{from:0,to:0,line:o};for(var h=u>0?c.length:-1,p=h,g=h;l!=h;){for(var f=!1,y=0;y<d.length&&!f;++y)if(d[y](c.charAt(l))){for(p=l;l!=h&&d[y](c.charAt(l));)l+=u;if(f=p!=(g=l),p==t.ch&&o==t.line&&g==p+u)continue;return{from:Math.min(p,g+1),to:Math.max(p,g),line:o}}f||(l+=u)}if(!m(e,o+=u))return null;c=e.getLine(o),l=u>0?0:c.length}}function be(e,t,n,r,i){var o=new A(t.line+n.repeat-1,1/0),a=e.clipPos(o);return a.ch--,i||(r.lastHPos=1/0,r.lastHSPos=e.charCoords(a,"div").left),o}function Ae(e,t,n,r){for(var i,o=e.getCursor(),a=o.ch,s=0;s<t;s++){if(-1==(i=Ie(a,e.getLine(o.line),r,n,!0)))return null;a=i}return new A(e.getCursor().line,i)}function we(e,t,n,r){S(n,p)&&(t.marks[n]&&t.marks[n].clear(),t.marks[n]=e.setBookmark(r))}function Ie(e,t,n,r,i){var o;return r?-1==(o=t.indexOf(n,e+1))||i||(o-=1):-1==(o=t.lastIndexOf(n,e-1))||i||(o+=1),o}function xe(e,t,n,r,i){var o,a=t.line,s=e.firstLine(),l=e.lastLine(),c=a;function u(t){return!e.getLine(t)}function d(e,t,n){return n?u(e)!=u(e+t):!u(e)&&u(e+t)}if(r){for(;s<=c&&c<=l&&n>0;)d(c,r)&&n--,c+=r;return new A(c,0)}var h=e.state.vim;if(h.visualLine&&d(a,1,!0)){var p=h.sel.anchor;d(p.line,-1,!0)&&(i&&p.line==a||(a+=1))}var g=u(a);for(c=a;c<=l&&n;c++)d(c,1,!0)&&(i&&u(c)==g||n--);for(o=new A(c,0),c>l&&!g?g=!0:i=!1,c=a;c>s&&(i&&u(c)!=g&&c!=a||!d(c,-1,!0));c--);return{start:new A(c,0),end:o}}function Te(){}function Me(e){var t=e.state.vim;return t.searchState_||(t.searchState_=new Te)}function Ee(e,t){var n=Oe(e,t)||[];if(!n.length)return[];var r=[];if(0===n[0]){for(var i=0;i<n.length;i++)"number"==typeof n[i]&&r.push(e.substring(n[i]+1,n[i+1]));return r}}function Oe(e,t){t||(t="/");for(var n=!1,r=[],i=0;i<e.length;i++){var o=e.charAt(i);n||o!=t||r.push(i),n=!n&&"\\"==o}return r}M("pcre",!0,"boolean"),Te.prototype={getQuery:function(){return N.query},setQuery:function(e){N.query=e},getOverlay:function(){return this.searchOverlay},setOverlay:function(e){this.searchOverlay=e},isReversed:function(){return N.isReversed},setReversed:function(e){N.isReversed=e},getScrollbarAnnotate:function(){return this.annotate},setScrollbarAnnotate:function(e){this.annotate=e}};var Ne={"\\n":"\n","\\r":"\r","\\t":"\t"},Re={"\\/":"/","\\\\":"\\","\\n":"\n","\\r":"\r","\\t":"\t","\\&":"&"};function Le(e){"string"==typeof e&&(e=document.createElement(e));for(var t,n=1;n<arguments.length;n++)if(t=arguments[n])if("object"!=typeof t&&(t=document.createTextNode(t)),t.nodeType)e.appendChild(t);else for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&("$"===r[0]?e.style[r.slice(1)]=t[r]:e.setAttribute(r,t[r]));return e}function De(e,t){var n=Le("pre",{$color:"red",class:"cm-vim-message"},t);e.openNotification?e.openNotification(n,{bottom:!0,duration:5e3}):alert(n.innerText)}function Pe(e,t){var n,r,i=(n=t.prefix,r=t.desc,Le(document.createDocumentFragment(),Le("span",{$fontFamily:"monospace",$whiteSpace:"pre"},n,Le("input",{type:"text",autocorrect:"off",autocapitalize:"off",spellcheck:"false"})),r&&Le("span",{$color:"#888"},r)));if(e.openDialog)e.openDialog(i,t.onClose,{onKeyDown:t.onKeyDown,onKeyUp:t.onKeyUp,bottom:!0,selectValueOnOpen:!1,value:t.value});else{var o="";"string"!=typeof t.prefix&&t.prefix&&(o+=t.prefix.textContent),t.desc&&(o+=" "+t.desc),t.onClose(prompt(o,""))}}function Be(e,t,n,r){if(t){var i=Me(e),o=function(e,t,n){if(N.registerController.getRegister("/").setText(e),e instanceof RegExp)return e;var r,i,o=Oe(e,"/");return o.length?(r=e.substring(0,o[0]),i=-1!=e.substring(o[0]).indexOf("i")):r=e,r?(O("pcre")||(r=function(e){for(var t=!1,n=[],r=-1;r<e.length;r++){var i=e.charAt(r)||"",o=e.charAt(r+1)||"",a=o&&-1!="|(){".indexOf(o);t?("\\"===i&&a||n.push(i),t=!1):"\\"===i?(t=!0,o&&-1!="}".indexOf(o)&&(a=!0),a&&"\\"!==o||n.push(i)):(n.push(i),a&&"\\"!==o&&n.push("\\"))}return n.join("")}(r)),n&&(t=/^[^A-Z]*$/.test(r)),new RegExp(r,t||i?"im":"m")):null}(t,!!n,!!r);if(o)return Ue(e,o),function(e,t){if(e instanceof RegExp&&t instanceof RegExp){for(var n=["global","multiline","ignoreCase","source"],r=0;r<n.length;r++){var i=n[r];if(e[i]!==t[i])return!1}return!0}return!1}(o,i.getQuery())||i.setQuery(o),o}}var Fe=0;function Ue(e,t){clearTimeout(Fe),Fe=setTimeout((function(){if(e.state.vim){var n=Me(e),r=n.getOverlay();r&&t==r.query||(r&&e.removeOverlay(r),r=function(e){if("^"==e.source.charAt(0))var t=!0;return{token:function(n){if(!t||n.sol()){var r=n.match(e,!1);if(r)return 0==r[0].length?(n.next(),"searching"):n.sol()||(n.backUp(1),e.exec(n.next()+r[0]))?(n.match(e),"searching"):(n.next(),null);for(;!n.eol()&&(n.next(),!n.match(e,!1)););}else n.skipToEnd()},query:e}}(t),e.addOverlay(r),e.showMatchesOnScrollbar&&(n.getScrollbarAnnotate()&&n.getScrollbarAnnotate().clear(),n.setScrollbarAnnotate(e.showMatchesOnScrollbar(t))),n.setOverlay(r))}}),50)}function _e(e,t,n,r){return void 0===r&&(r=1),e.operation((function(){for(var i=e.getCursor(),o=e.getSearchCursor(n,i),a=0;a<r;a++){var s=o.find(t);if(0==a&&s&&te(o.from(),i)){var l=t?o.from():o.to();(s=o.find(t))&&!s[0]&&te(o.from(),l)&&e.getLine(l.line).length==l.ch&&(s=o.find(t))}if(!s&&!(o=e.getSearchCursor(n,t?new A(e.lastLine()):new A(e.firstLine(),0))).find(t))return}return o.from()}))}function He(e){var t=Me(e);e.removeOverlay(Me(e).getOverlay()),t.setOverlay(null),t.getScrollbarAnnotate()&&(t.getScrollbarAnnotate().clear(),t.setScrollbarAnnotate(null))}function Ke(e){var t=e.getScrollInfo(),n=e.coordsChar({left:0,top:6+t.top},"local"),r=t.clientHeight-10+t.top,i=e.coordsChar({left:0,top:r},"local");return{top:n.line,bottom:i.line}}function We(e,t,n){if("'"==n||"`"==n)return N.jumpList.find(e,-1)||new A(0,0);if("."==n)return qe(e);var r=t.marks[n];return r&&r.find()}function qe(e){for(var t=e.doc.history.done,n=t.length;n--;)if(t[n].changes)return ee(t[n].changes[0].to)}var Ve=function(){this.buildCommandMap_()};Ve.prototype={processCommand:function(e,t,n){var r=this;e.operation((function(){e.curOp.isVimOp=!0,r._processCommand(e,t,n)}))},_processCommand:function(e,t,n){var r=e.state.vim,i=N.registerController.getRegister(":"),o=i.toString();r.visualMode&&ge(e);var a=new b.StringStream(t);i.setText(t);var s,l,c=n||{};c.input=t;try{this.parseInput_(e,a,c)}catch(t){throw De(e,t.toString()),t}if(c.commandName){if(s=this.matchCommand_(c.commandName)){if(l=s.name,s.excludeFromCommandHistory&&i.setText(o),this.parseCommandArgs_(a,c,s),"exToKey"==s.type){for(var u=0;u<s.toKeys.length;u++)U.handleKey(e,s.toKeys[u],"mapping");return}if("exToEx"==s.type)return void this.processCommand(e,s.toInput)}}else void 0!==c.line&&(l="move");if(l)try{Ye[l](e,c),s&&s.possiblyAsync||!c.callback||c.callback()}catch(t){throw De(e,t.toString()),t}else De(e,'Not an editor command ":'+t+'"')},parseInput_:function(e,t,n){t.eatWhile(":"),t.eat("%")?(n.line=e.firstLine(),n.lineEnd=e.lastLine()):(n.line=this.parseLineSpec_(e,t),void 0!==n.line&&t.eat(",")&&(n.lineEnd=this.parseLineSpec_(e,t)));var r=t.match(/^(\w+|!!|@@|[!#&*<=>@~])/);return n.commandName=r?r[1]:t.match(/.*/)[0],n},parseLineSpec_:function(e,t){var n=t.match(/^(\d+)/);if(n)return parseInt(n[1],10)-1;switch(t.next()){case".":return this.parseLineSpecOffset_(t,e.getCursor().line);case"$":return this.parseLineSpecOffset_(t,e.lastLine());case"'":var r=t.next(),i=We(e,e.state.vim,r);if(!i)throw new Error("Mark not set");return this.parseLineSpecOffset_(t,i.line);case"-":case"+":return t.backUp(1),this.parseLineSpecOffset_(t,e.getCursor().line);default:return void t.backUp(1)}},parseLineSpecOffset_:function(e,t){var n=e.match(/^([+-])?(\d+)/);if(n){var r=parseInt(n[2],10);"-"==n[1]?t-=r:t+=r}return t},parseCommandArgs_:function(e,t,n){if(!e.eol()){t.argString=e.match(/.*/)[0];var r=n.argDelimiter||/\s+/,i=se(t.argString).split(r);i.length&&i[0]&&(t.args=i)}},matchCommand_:function(e){for(var t=e.length;t>0;t--){var n=e.substring(0,t);if(this.commandMap_[n]){var r=this.commandMap_[n];if(0===r.name.indexOf(e))return r}}return null},buildCommandMap_:function(){this.commandMap_={};for(var e=0;e<T.length;e++){var t=T[e],n=t.shortName||t.name;this.commandMap_[n]=t}},map:function(e,t,n){if(":"!=e&&":"==e.charAt(0)){if(n)throw Error("Mode not supported for ex mappings");var r=e.substring(1);":"!=t&&":"==t.charAt(0)?this.commandMap_[r]={name:r,type:"exToEx",toInput:t.substring(1),user:!0}:this.commandMap_[r]={name:r,type:"exToKey",toKeys:t,user:!0}}else if(":"!=t&&":"==t.charAt(0)){var i={keys:e,type:"keyToEx",exArgs:{input:t.substring(1)}};n&&(i.context=n),I.unshift(i)}else i={keys:e,type:"keyToKey",toKeys:t},n&&(i.context=n),I.unshift(i)},unmap:function(e,t){if(":"!=e&&":"==e.charAt(0)){if(t)throw Error("Mode not supported for ex mappings");var n=e.substring(1);if(this.commandMap_[n]&&this.commandMap_[n].user)return delete this.commandMap_[n],!0}else for(var r=e,i=0;i<I.length;i++)if(r==I[i].keys&&I[i].context===t)return I.splice(i,1),!0}};var Ye={colorscheme:function(e,t){!t.args||t.args.length<1?De(e,e.getOption("theme")):e.setOption("theme",t.args[0])},map:function(e,t,n){var r=t.args;!r||r.length<2?e&&De(e,"Invalid mapping: "+t.input):je.map(r[0],r[1],n)},imap:function(e,t){this.map(e,t,"insert")},nmap:function(e,t){this.map(e,t,"normal")},vmap:function(e,t){this.map(e,t,"visual")},unmap:function(e,t,n){var r=t.args;(!r||r.length<1||!je.unmap(r[0],n))&&e&&De(e,"No such mapping: "+t.input)},move:function(e,t){V.processCommand(e,e.state.vim,{type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0},repeatOverride:t.line+1})},set:function(e,t){var n=t.args,r=t.setCfg||{};if(!n||n.length<1)e&&De(e,"Invalid mapping: "+t.input);else{var i=n[0].split("="),o=i[0],a=i[1],s=!1;if("?"==o.charAt(o.length-1)){if(a)throw Error("Trailing characters: "+t.argString);o=o.substring(0,o.length-1),s=!0}void 0===a&&"no"==o.substring(0,2)&&(o=o.substring(2),a=!1);var l=k[o]&&"boolean"==k[o].type;if(l&&null==a&&(a=!0),!l&&void 0===a||s){var c=O(o,e,r);c instanceof Error?De(e,c.message):De(e,!0===c||!1===c?" "+(c?"":"no")+o:" "+o+"="+c)}else{var u=E(o,a,e,r);u instanceof Error&&De(e,u.message)}}},setlocal:function(e,t){t.setCfg={scope:"local"},this.set(e,t)},setglobal:function(e,t){t.setCfg={scope:"global"},this.set(e,t)},registers:function(e,t){var n=t.args,r=N.registerController.registers,i="----------Registers----------\n\n";if(n){n=n.join("");for(var o=0;o<n.length;o++)a=n.charAt(o),N.registerController.isValidRegister(a)&&(i+='"'+a+" "+(r[a]||new K).toString()+"\n")}else for(var a in r){var s=r[a].toString();s.length&&(i+='"'+a+" "+s+"\n")}De(e,i)},sort:function(e,t){var n,r,i,o,a,s=function(){if(t.argString){var e=new b.StringStream(t.argString);if(e.eat("!")&&(n=!0),e.eol())return;if(!e.eatSpace())return"Invalid arguments";var s=e.match(/([dinuox]+)?\s*(\/.+\/)?\s*/);if(!s&&!e.eol())return"Invalid arguments";if(s[1]){r=-1!=s[1].indexOf("i"),i=-1!=s[1].indexOf("u");var l=-1!=s[1].indexOf("d")||-1!=s[1].indexOf("n")&&1,c=-1!=s[1].indexOf("x")&&1,u=-1!=s[1].indexOf("o")&&1;if(l+c+u>1)return"Invalid arguments";o=(l?"decimal":c&&"hex")||u&&"octal"}s[2]&&(a=new RegExp(s[2].substr(1,s[2].length-2),r?"i":""))}}();if(s)De(e,s+": "+t.argString);else{var l=t.line||e.firstLine(),c=t.lineEnd||t.line||e.lastLine();if(l!=c){var u=new A(l,0),d=new A(c,ae(e,c)),h=e.getRange(u,d).split("\n"),p=a||("decimal"==o?/(-?)([\d]+)/:"hex"==o?/(-?)(?:0x)?([0-9a-f]+)/i:"octal"==o?/([0-7]+)/:null),g="decimal"==o?10:"hex"==o?16:"octal"==o?8:null,m=[],f=[];if(o||a)for(var y=0;y<h.length;y++){var v=a?h[y].match(a):null;v&&""!=v[0]?m.push(v):!a&&p.exec(h[y])?m.push(h[y]):f.push(h[y])}else f=h;if(m.sort(a?function(e,t){var i;return n&&(i=e,e=t,t=i),r&&(e[0]=e[0].toLowerCase(),t[0]=t[0].toLowerCase()),e[0]<t[0]?-1:1}:k),a)for(y=0;y<m.length;y++)m[y]=m[y].input;else o||f.sort(k);if(h=n?m.concat(f):f.concat(m),i){var C,S=h;for(h=[],y=0;y<S.length;y++)S[y]!=C&&h.push(S[y]),C=S[y]}e.replaceRange(h.join("\n"),u,d)}}function k(e,t){var i;n&&(i=e,e=t,t=i),r&&(e=e.toLowerCase(),t=t.toLowerCase());var a=o&&p.exec(e),s=o&&p.exec(t);return a?(a=parseInt((a[1]+a[2]).toLowerCase(),g))-(s=parseInt((s[1]+s[2]).toLowerCase(),g)):e<t?-1:1}},vglobal:function(e,t){this.global(e,t)},global:function(e,t){var n=t.argString;if(n){var r,i="v"===t.commandName[0],o=void 0!==t.line?t.line:e.firstLine(),a=t.lineEnd||t.line||e.lastLine(),s=function(e){return Ee(e,"/")}(n),l=n;if(s.length&&(l=s[0],r=s.slice(1,s.length).join("/")),l)try{Be(e,l,!0,!0)}catch(t){return void De(e,"Invalid regex: "+l)}for(var c=Me(e).getQuery(),u=[],d=o;d<=a;d++){var h=e.getLineHandle(d);c.test(h.text)!==i&&u.push(r?h:h.text)}if(r){var p=0,g=function(){if(p<u.length){var t=u[p++],n=e.getLineNumber(t);if(null==n)return void g();var i=n+1+r;je.processCommand(e,i,{callback:g})}};g()}else De(e,u.join("\n"))}else De(e,"Regular Expression missing from global")},substitute:function(e,t){if(!e.getSearchCursor)throw new Error("Search feature not available. Requires searchcursor.js or any other getSearchCursor implementation.");var n,r,i,a,s=t.argString,l=s?Ee(s,s[0]):[],c="",u=!1,d=!1;if(l.length)n=l[0],O("pcre")&&""!==n&&(n=new RegExp(n).source),void 0!==(c=l[1])&&(c=O("pcre")?function(e){for(var t=new b.StringStream(e),n=[];!t.eol();){for(;t.peek()&&"\\"!=t.peek();)n.push(t.next());var r=!1;for(var i in Re)if(t.match(i,!0)){r=!0,n.push(Re[i]);break}r||n.push(t.next())}return n.join("")}(c.replace(/([^\\])&/g,"$1$$&")):function(e){for(var t,n=!1,r=[],i=-1;i<e.length;i++){var a=e.charAt(i)||"",s=e.charAt(i+1)||"";Ne[a+s]?(r.push(Ne[a+s]),i++):n?(r.push(a),n=!1):"\\"===a?(n=!0,t=s,o.test(t)||"$"===s?r.push("$"):"/"!==s&&"\\"!==s&&r.push("\\")):("$"===a&&r.push("$"),r.push(a),"/"===s&&r.push("\\"))}return r.join("")}(c),N.lastSubstituteReplacePart=c),r=l[2]?l[2].split(" "):[];else if(s&&s.length)return void De(e,"Substitutions should be of the form :s/pattern/replace/");if(r&&(i=r[0],a=parseInt(r[1]),i&&(-1!=i.indexOf("c")&&(u=!0),-1!=i.indexOf("g")&&(d=!0),n=O("pcre")?n+"/"+i:n.replace(/\//g,"\\/")+"/"+i)),n)try{Be(e,n,!0,!0)}catch(t){return void De(e,"Invalid regex: "+n)}if(void 0!==(c=c||N.lastSubstituteReplacePart)){var h=Me(e).getQuery(),p=void 0!==t.line?t.line:e.getCursor().line,g=t.lineEnd||p;p==e.firstLine()&&g==e.lastLine()&&(g=1/0),a&&(g=(p=g)+a-1);var m=J(e,new A(p,0)),f=e.getSearchCursor(h,m);e.pushUndoStop(),function(e,t,n,r,i,o,a,s,l){e.state.vim.exMode=!0;var c,u,d,h=!1;function p(){e.operation((function(){for(;!h;)g(),m();f()}))}function g(){var t=e.getRange(o.from(),o.to()).replace(a,s),n=o.to().line;o.replace(t),u=o.to().line,i+=u-n,d=u<n}function m(){for(;l=void 0,p=void 0,l=c&&ee(o.to()),(p=o.findNext())&&!p[0]&&l&&te(o.from(),l)&&(p=o.findNext()),p&&(t=o.from(),a=r,s=i,"number"!=typeof t&&(t=t.line),a instanceof Array?S(t,a):"number"==typeof s?t>=a&&t<=s:t==a);)if(n||o.from().line!=u||d)return e.scrollIntoView(o.from(),30),e.setSelection(o.from(),o.to()),c=o.from(),void(h=!1);var t,a,s,l,p;h=!0}function f(t){if(t&&t(),e.focus(),c){e.setCursor(c);var n=e.state.vim;n.exMode=!1,n.lastHPos=n.lastHSPos=c.ch}l&&l()}if(m(),!h)return t?void Pe(e,{prefix:Le("span","replace with ",Le("strong",s)," (y/n/a/q/l)"),onKeyDown:function(t,n,r){switch(b.e_stop(t),b.keyName(t)){case"Y":g(),m();break;case"N":m();break;case"A":var i=l;l=void 0,e.operation(p),l=i;break;case"L":g();case"Q":case"Esc":case"Ctrl-C":case"Ctrl-[":f(r)}return h&&f(r),!0}}):(p(),void(l&&l()));De(e,"No matches for "+a.source)}(e,u,d,p,g,f,h,c,t.callback)}else De(e,"No previous substitute regular expression")},redo:b.commands.redo,undo:b.commands.undo,write:function(e){b.commands.save?b.commands.save(e):e.save&&e.save()},nohlsearch:function(e){He(e)},yank:function(e){var t=ee(e.getCursor()).line,n=e.getLine(t);N.registerController.pushText("0","yank",n,!0,!0)},delmarks:function(e,t){if(t.argString&&se(t.argString))for(var n=e.state.vim,r=new b.StringStream(se(t.argString));!r.eol();){r.eatSpace();var i=r.pos;if(!r.match(/[a-zA-Z]/,!1))return void De(e,"Invalid argument: "+t.argString.substring(i));var o=r.next();if(r.match("-",!0)){if(!r.match(/[a-zA-Z]/,!1))return void De(e,"Invalid argument: "+t.argString.substring(i));var a=o,s=r.next();if(!(f(a)&&f(s)||y(a)&&y(s)))return void De(e,"Invalid argument: "+a+"-");var l=a.charCodeAt(0),c=s.charCodeAt(0);if(l>=c)return void De(e,"Invalid argument: "+t.argString.substring(i));for(var u=0;u<=c-l;u++){var d=String.fromCharCode(l+u);delete n.marks[d]}}else delete n.marks[o]}else De(e,"Argument required")}},je=new Ve;function Ge(e){var t=e.state.vim,n=N.macroModeState,r=N.registerController.getRegister("."),i=n.isPlaying,o=n.lastInsertModeChanges;i||(e.off("change",$e),b.off(e.getInputField(),"keydown",Xe)),!i&&t.insertModeRepeat>1&&(et(e,t,t.insertModeRepeat-1,!0),t.lastEditInputState.repeatOverride=t.insertModeRepeat),delete t.insertModeRepeat,t.insertMode=!1,e.setCursor(e.getCursor().line,e.getCursor().ch-1),e.setOption("keyMap","vim"),e.setOption("disableInput",!0),e.toggleOverwrite(!1),r.setText(o.changes.join("")),b.signal(e,"vim-mode-change",{mode:"normal"}),n.isRecording&&function(e){if(!e.isPlaying){var t=e.latestRegister,n=N.registerController.getRegister(t);n&&n.pushInsertModeChanges&&n.pushInsertModeChanges(e.lastInsertModeChanges)}}(n),e.enterVimMode()}function ze(e){I.unshift(e)}function Je(e,t,n,r){var i=N.registerController.getRegister(r);if(":"==r)return i.keyBuffer[0]&&je.processCommand(e,i.keyBuffer[0]),void(n.isPlaying=!1);var o=i.keyBuffer,a=0;n.isPlaying=!0,n.replaySearchQueries=i.searchQueries.slice(0);for(var s=0;s<o.length;s++)for(var l,c,u=o[s];u;)if(c=(l=/<\w+-.+?>|<\w+>|./.exec(u))[0],u=u.substring(l.index+c.length),U.handleKey(e,c,"macro"),t.insertMode){var d=i.insertModeChanges[a++].changes;N.macroModeState.lastInsertModeChanges.changes=d,tt(e,d,1),Ge(e)}n.isPlaying=!1}function $e(e,t){var n=N.macroModeState,r=n.lastInsertModeChanges;if(!n.isPlaying)for(;t;){if(r.expectCursorActivityForChange=!0,r.ignoreCount>1)r.ignoreCount--;else if("+input"==t.origin||"paste"==t.origin||void 0===t.origin){var i=e.listSelections().length;i>1&&(r.ignoreCount=i);var o=t.text.join("\n");r.maybeReset&&(r.changes=[],r.maybeReset=!1),o&&(e.state.overwrite&&!/\n/.test(o)?r.changes.push([o]):r.changes.push(o))}t=t.next}}function Qe(e){var t=e.state.vim;if(t.insertMode){var n=N.macroModeState;if(n.isPlaying)return;var r=n.lastInsertModeChanges;r.expectCursorActivityForChange?r.expectCursorActivityForChange=!1:r.maybeReset=!0}else e.curOp.isVimOp||function(e,t){var n=e.getCursor("anchor"),r=e.getCursor("head");if(t.visualMode&&!e.somethingSelected()?ge(e,!1):t.visualMode||t.insertMode||!e.somethingSelected()||(t.visualMode=!0,t.visualLine=!1,b.signal(e,"vim-mode-change",{mode:"visual"})),t.visualMode){var i=ne(r,n)?0:-1,o=ne(r,n)?-1:0;r=Q(r,0,i),n=Q(n,0,o),t.sel={anchor:n,head:r},we(e,t,"<",re(r,n)),we(e,t,">",ie(r,n))}else t.insertMode||(t.lastHPos=e.getCursor().ch)}(e,t)}function Ze(e){this.keyName=e}function Xe(e){var t=N.macroModeState.lastInsertModeChanges,n=b.keyName(e);n&&(-1==n.indexOf("Delete")&&-1==n.indexOf("Backspace")||b.lookupKey(n,"vim-insert",(function(){return t.maybeReset&&(t.changes=[],t.maybeReset=!1),t.changes.push(new Ze(n)),!0})))}function et(e,t,n,r){var i=N.macroModeState;i.isPlaying=!0;var o=!!t.lastEditActionCommand,a=t.inputState;function s(){o?V.processAction(e,t,t.lastEditActionCommand):V.evalInput(e,t)}function l(n){if(i.lastInsertModeChanges.changes.length>0){n=t.lastEditActionCommand?n:1;var r=i.lastInsertModeChanges;tt(e,r.changes,n)}}if(t.inputState=t.lastEditInputState,o&&t.lastEditActionCommand.interlaceInsertRepeat)for(var c=0;c<n;c++)s(),l(1);else r||s(),l(n);t.inputState=a,t.insertMode&&!r&&Ge(e),i.isPlaying=!1}function tt(e,t,n){function r(t){return"string"==typeof t?b.commands[t](e):t(e),!0}var i=e.getCursor("head"),o=N.macroModeState.lastInsertModeChanges.visualBlock;o&&(ue(e,i,o+1),n=e.listSelections().length,e.setCursor(i));for(var a=0;a<n;a++){o&&e.setCursor(Q(i,a,0));for(var s=0;s<t.length;s++){var l=t[s];if(l instanceof Ze)b.lookupKey(l.keyName,"vim-insert",r);else if("string"==typeof l)window.cm=e,e.replaceSelections(l);else{var c=e.getCursor(),u=Q(c,0,l[0].length);e.replaceRange(l[0],c,u),e.setCursor(u)}}}o&&e.setCursor(Q(i,0,1))}return b.keyMap.vim={attach:t,detach:e,call:n},M("insertModeEscKeysTimeout",200,"number"),b.keyMap["vim-insert"]={fallthrough:["default"],attach:t,detach:e,call:n},b.keyMap["vim-replace"]={Backspace:"goCharLeft",fallthrough:["vim-insert"],attach:t,detach:e,call:n},F(),U}();const M=b;class E{constructor(e,t,n=null){this.node=e,this.modeInfoNode=document.createElement("span"),this.secInfoNode=document.createElement("span"),this.notifNode=document.createElement("span"),this.notifNode.className="vim-notification",this.keyInfoNode=document.createElement("span"),this.keyInfoNode.setAttribute("style","float: right"),this.node.appendChild(this.modeInfoNode),this.node.appendChild(this.secInfoNode),this.node.appendChild(this.notifNode),this.node.appendChild(this.keyInfoNode),this.toggleVisibility(!1),this.editor=t,this.sanitizer=n}setMode(e){"visual"!==e.mode?this.setText(`--${e.mode.toUpperCase()}--`):"linewise"===e.subMode?this.setText("--VISUAL LINE--"):"blockwise"===e.subMode?this.setText("--VISUAL BLOCK--"):this.setText("--VISUAL--")}setKeyBuffer(e){this.keyInfoNode.textContent=e}setSec(e,t,n){if(this.notifNode.textContent="",void 0===e)return this.closeInput;this.setInnerHtml_(this.secInfoNode,e);const r=this.secInfoNode.querySelector("input");return r&&(r.focus(),this.input={callback:t,options:n,node:r},n&&(n.selectValueOnOpen&&r.select(),n.value&&(r.value=n.value)),this.addInputListeners()),this.closeInput}setText(e){this.modeInfoNode.textContent=e}toggleVisibility(e){this.node.style.display=e?"block":"none",this.input&&this.removeInputListeners(),clearInterval(this.notifTimeout)}closeInput=()=>{this.removeInputListeners(),this.input=null,this.setSec(""),this.editor&&this.editor.focus()};clear=()=>{this.setInnerHtml_(this.node,"")};inputKeyUp=e=>{const{options:t}=this.input;t&&t.onKeyUp&&t.onKeyUp(e,e.target.value,this.closeInput)};inputKeyInput=e=>{const{options:t}=this.input;t&&t.onKeyInput&&t.onKeyUp(e,e.target.value,this.closeInput)};inputBlur=()=>{const{options:e}=this.input;e.closeOnBlur&&this.closeInput()};inputKeyDown=e=>{const{options:t,callback:n}=this.input;t&&t.onKeyDown&&t.onKeyDown(e,e.target.value,this.closeInput)||((27===e.keyCode||t&&!1!==t.closeOnEnter&&13==e.keyCode)&&(this.input.node.blur(),e.stopPropagation(),this.closeInput()),13===e.keyCode&&n&&(e.stopPropagation(),e.preventDefault(),n(e.target.value)))};addInputListeners(){const{node:e}=this.input;e.addEventListener("keyup",this.inputKeyUp),e.addEventListener("keydown",this.inputKeyDown),e.addEventListener("input",this.inputKeyInput),e.addEventListener("blur",this.inputBlur)}removeInputListeners(){if(!this.input||!this.input.node)return;const{node:e}=this.input;e.removeEventListener("keyup",this.inputKeyUp),e.removeEventListener("keydown",this.inputKeyDown),e.removeEventListener("input",this.inputKeyInput),e.removeEventListener("blur",this.inputBlur)}showNotification(e){const t=document.createElement("span");this.setInnerHtml_(t,e),this.notifNode.textContent=t.textContent,this.notifTimeout=setTimeout((()=>{this.notifNode.textContent=""}),5e3)}setInnerHtml_(e,t){for(;e.childNodes.length;)e.removeChild(e.childNodes[0]);t&&(this.sanitizer?e.appendChild(this.sanitizer(t)):e.appendChild(t))}}var O=n(15647),N=n(52797),R="yt-light";s.editor.defineTheme(R,{base:"vs",inherit:!0,rules:[{token:"tablepath",foreground:"3e999f"},{token:"path",foreground:"3e999f",fontStyle:"underline"},{token:"string.sql",foreground:"a31515"}],colors:{"editorLineNumber.foreground":"#000000b3","editor.lineHighlightBackground":"#0000000a","editorGutter.background":"#0000000a"}});var L="yt-dark";s.editor.defineTheme(L,{base:"vs-dark",inherit:!0,rules:[{token:"tablepath",foreground:"3e999f"},{token:"path",foreground:"3e999f"},{token:"string.sql",foreground:"ce9178"}],colors:{"editorLineNumber.foreground":"#ffffffb3","editor.lineHighlightBackground":"#ffffff0a","editorGutter.background":"#ffffff0a","editor.background":"#2d2c33"}});var D=n(31470),P=n.n(D),B=n(28407),F=n(70232),U=n.n(F),_=n(29121),H=n(12937),K=n(77720),W={},q={},V=function(){function e(t){var n=this;(0,_.A)(this,e),this._languageId=void 0,this._loadingTriggered=void 0,this._lazyLoadPromise=void 0,this._lazyLoadPromiseResolve=void 0,this._lazyLoadPromiseReject=void 0,this._languageId=t,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((function(e,t){n._lazyLoadPromiseResolve=e,n._lazyLoadPromiseReject=t}))}return(0,H.A)(e,[{key:"whenLoaded",value:function(){return this._lazyLoadPromise}},{key:"load",value:function(){var e=this;return this._loadingTriggered||(this._loadingTriggered=!0,W[this._languageId].loader().then((function(t){return e._lazyLoadPromiseResolve(t)}),(function(t){return e._lazyLoadPromiseReject(t)}))),this._lazyLoadPromise}}],[{key:"getOrCreate",value:function(t){return q[t]||(q[t]=new e(t)),q[t]}}]),e}();function Y(e){var t=e.id;W[t]=e,K.eo.register(e);var n=V.getOrCreate(t);K.eo.setMonarchTokensProvider(t,n.whenLoaded().then((function(e){return e.language}))),K.eo.onLanguage(t,(function(){n.load().then((function(e){K.eo.setLanguageConfiguration(t,e.conf)}))})),n.whenLoaded().then((function(e){e.provideSuggestionsFunction&&K.eo.registerCompletionItemProvider(t,{triggerCharacters:["`",":","/",""," "],provideCompletionItems:e.provideSuggestionsFunction}),e.provideInlineSuggestionsFunction&&K.eo.registerInlineCompletionsProvider(t,{provideInlineCompletions:e.provideInlineSuggestionsFunction,freeInlineCompletions:function(){}})}))}var j,G=function(){function e(t,n,r){(0,_.A)(this,e),this._onDidChange=new K.vl,this._diagnosticsOptions=void 0,this._modeConfiguration=void 0,this._languageId=void 0,this._languageId=t,this.setDiagnosticsOptions(n),this.setModeConfiguration(r)}return(0,H.A)(e,[{key:"onDidChange",get:function(){return this._onDidChange.event}},{key:"languageId",get:function(){return this._languageId}},{key:"modeConfiguration",get:function(){return this._modeConfiguration}},{key:"diagnosticsOptions",get:function(){return this._diagnosticsOptions}},{key:"setDiagnosticsOptions",value:function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)}},{key:"setModeConfiguration",value:function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}}]),e}(),z=n(13322),J=n(2336),$=function(e,t){var n=(0,J.kV)(t,e.suggestColumnAliases),r=(0,J.mF)(t,e.suggestKeywords);return[].concat((0,z.A)(n),(0,z.A)(r))},Q=n(52891),Z=n(51757),X=n(57436),ee=n(33547),te=n(29746),ne=n(64714),re=n(55956),ie=function(){var e=(0,B.A)(U().mark((function e(t,n){var i,o,a,s,l,c;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.match(/(\w+\.)*`(\/\/([^`]*))`/g)){e.next=3;break}return e.abrupt("return",{});case 3:return o=(0,z.A)(t.matchAll(/(USE|use)\s([^;]+)/g))[0],a=(null==o?void 0:o[2].replace(/[^\w]/g,""))||null,s=[],i.forEach((function(e){var t=(0,X.$)(e,n),i=t.path,o=t.cluster||a;if(i&&o){var l=ee.YT.clusters[o];l&&s.push({command:"get",parameters:{path:"".concat(i,"/@schema")},setup:(0,r.A)({proxy:(0,N.v9)(l)},re.oj)})}})),e.next=9,ne.Qq.executeBatch(ne.Vu.navigationGetPath,{parameters:{requests:s}});case 9:return l=e.sent,c={},l.forEach((function(e,t){if(e.output){var n=te.A.getValue(e.output,"");c[i[t]]=n.map((function(e){return e.name}))}})),e.abrupt("return",c);case 13:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),oe=n(11737),ae=function(){var e=(0,B.A)(U().mark((function e(t){var n,r,i,o,a,s,l;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.tableSuggestions,i=t.model,o=t.engine,a=t.range,r){e.next=3;break}return e.abrupt("return",[]);case 3:return s=[{label:"*",insertText:"*",kind:K.eo.CompletionItemKind.Field,range:a,sortText:(0,oe.s)(J.GX.suggestColumns)}],e.next=6,ie(i.getValue(),o);case 6:return l=e.sent,null===(n=r.tables)||void 0===n||n.forEach((function(e){var t=e.name,n=e.alias;t in l&&l[t].forEach((function(e){var r=n?"".concat(n,".").concat(e):e;s.push({label:{label:r,description:"Column",detail:" (".concat(t,")")},insertText:r,kind:K.eo.CompletionItemKind.Field,range:a,sortText:(0,oe.s)(J.GX.suggestColumns)})}))})),e.abrupt("return",s);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),se=function(e){var t=e.model,n=e.parseResult,r=e.range,i=[],o=t.getLineContent(r.startLineNumber).slice(r.startColumn-2,r.endColumn);if("suggestTableFunctions"in n&&n.suggestTableFunctions||"suggestViewsOrTables"in n&&n.suggestViewsOrTables){var a="``"===o,s=a?"//":"`//`",l=a?"//${1:}":"`//${1:}`";i.push({label:s,insertText:l,insertTextRules:K.eo.CompletionItemInsertTextRule.InsertAsSnippet,kind:K.eo.CompletionItemKind.Snippet,range:r,sortText:(0,oe.s)(0)})}return i},le=function(e,t){return function(){var n=(0,B.A)(U().mark((function n(r,i,o,a){var s,l,c,u,d,h;return U().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s=e(r.getValue(),{line:i.lineNumber,column:i.column}),l=(0,Q.k)(r,i),n.next=4,(0,Z.T)({model:r,monacoCursorPosition:i,engine:t,range:l});case 4:return c=n.sent,n.next=7,ae({model:r,engine:t,tableSuggestions:s.suggestColumns,range:l});case 7:return u=n.sent,d=se({model:r,parseResult:s,range:l}),h=$(s,l),n.abrupt("return",{suggestions:[].concat((0,z.A)(d),(0,z.A)(u),(0,z.A)(c),(0,z.A)(h))});case 11:case"end":return n.stop()}}),n)})));return function(e,t,r,i){return n.apply(this,arguments)}}()},ce=n(50449),ue=n(73689),de=n(30996),he=n(13542),pe=n(94383),ge=n(7787),me=n(24503),fe=n.n(me),ye=(0,he.ai)(),ve=fe()((function(e){var t;return null===(t=ge.Ay.getInlineSuggestionsApi())||void 0===t?void 0:t.getQuerySuggestions(e)}),200),Ce=function(e){return function(){var t=(0,B.A)(U().mark((function t(n,r,i,o){var a,s,l;return U().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=ye.getState(),(0,pe.RR)(a)){t.next=4;break}return t.abrupt("return",{items:[]});case 4:return t.next=6,ve({query:n.getValue(),line:r.lineNumber,column:r.column,engine:e});case 6:if(s=t.sent){t.next=9;break}return t.abrupt("return",{items:[]});case 9:return l=(0,Q.k)(n,r),t.abrupt("return",{items:s.map((function(e){return{insertText:e,range:l,command:{id:"accessQuerySuggestionsTelemetry",title:"string",arguments:[]}}}))});case 11:case"end":return t.stop()}}),t)})));return function(e,n,r,i){return t.apply(this,arguments)}}()};Y({id:ue.m.CHYT,extensions:[],loader:(j=(0,B.A)(U().mark((function e(){var t,r;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.e(9293).then(n.bind(n,14919));case 2:return t=e.sent,e.next=5,Promise.all([n.e(1306),n.e(3800)]).then(n.bind(n,84807));case 5:return r=e.sent,e.abrupt("return",{conf:t.conf,language:t.language,provideSuggestionsFunction:r?le(r.parseClickHouseQuery,de.d.CHYT):ce._q,provideInlineSuggestionsFunction:Ce(de.d.CHYT)});case 7:case"end":return e.stop()}}),e)}))),function(){return j.apply(this,arguments)})});var Se=new G(ue.m.CHYT,{validate:!0},{completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0});K.eo[ue.m.CHYT]=Se;var ke=n(71183);Y({id:ue.m.YQL,extensions:[],loader:function(){var e=(0,B.A)(U().mark((function e(){var t,r;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.resolve().then(n.bind(n,65185));case 2:return t=e.sent,e.next=5,Promise.all([n.e(1306),n.e(7432)]).then(n.bind(n,23439));case 5:return r=e.sent,e.abrupt("return",{conf:t.conf,language:t.language,provideSuggestionsFunction:r?le(r.parseYqlQuery,de.d.YQL):ke.rL,provideInlineSuggestionsFunction:Ce(de.d.YQL)});case 7:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});var be=n(89814);Y({id:"yql_ansi",extensions:[],loader:function(){return Promise.resolve().then(n.bind(n,89814)).then((function(e){return{conf:e.conf,language:e.language,provideSuggestionsFunction:be.provideSuggestionsFunction}}))}}),Y({id:"s-expression",extensions:[],loader:function(){return n.e(9369).then(n.bind(n,57897)).then((function(e){return{conf:e.conf,language:e.language,provideSuggestionsFunction:e.provideSuggestionsFunction}}))}}),s.editor.defineTheme("vs",{base:"vs",inherit:!0,rules:[{token:"string.tablepath",foreground:"338186"},{token:"constant.yql",foreground:"608b4e"},{token:"keyword.type",foreground:"4d932d"},{token:"string.sql",foreground:"a31515"},{token:"support.function",foreground:"7a3e9d"},{token:"constant.other.color",foreground:"7a3e9d"},{token:"comment",foreground:"969896"}],colors:{"editor.lineHighlightBackground":"#EFEFEF"}}),s.editor.defineTheme("vs-dark",{base:"vs-dark",inherit:!0,rules:[{token:"string.tablepath",foreground:"338186"},{token:"constant.yql",foreground:"608b4e"},{token:"storage.type",foreground:"6A8759"},{token:"string.sql",foreground:"ce9178"},{token:"support.function",foreground:"9e7bb0"},{token:"constant.other.color",foreground:"9e7bb0"},{token:"comment",foreground:"969896"}],colors:{"editor.lineHighlightBackground":"#282A2E"}});var Ae=n(66026),we=n(64922),Ie=(0,o.A)("yt-monaco-editor"),xe={dark:L,"dark-hc":"hc-black",light:R,"light-hc":R};const Te=function(e){var t=e.className,n=e.readOnly,o=e.monacoConfig,l=e.value,c=e.language,u=e.onClick,d=e.onChange,h=e.editorRef,p=(0,O.d4)(Ae.wd),g=(0,O.d4)(N.O4),m=(0,i.useRef)(s.editor.createModel(l,c)),f=(0,i.useRef)(),y=(0,i.useRef)(null),v=(0,i.useRef)(null),C=(0,i.useRef)(a.A.getScope()),S=(0,i.useRef)(!1),k=(0,i.useRef)({theme:g,monacoConfig:o,readOnly:n}),b=(0,i.useCallback)((function(){S.current||d(m.current.getValue())}),[d]);return(0,i.useEffect)((function(){var e=m.current,t=s.editor.create(y.current,(0,r.A)({model:e,renderLineHighlight:"none",colorDecorators:!0,automaticLayout:!0,readOnly:n,minimap:{enabled:!1},lineNumbers:"on",suggestOnTriggerCharacters:!0,wordBasedSuggestions:!1,theme:xe[g]},o));return t.updateOptions({lineNumbers:function(e){return'<div class="'.concat(Ie("line-number"),'" data-number="').concat(e,'">').concat(e,"</div>")}}),t.onMouseDown((function(e){null==u||u(e)})),e.onDidChangeContent(b),a.A.setScope("monaco-editor"),h&&(h.current=t),function(){var e;null===(e=t.getModel())||void 0===e||e.dispose(),t.dispose(),a.A.setScope(C.current)}}),[]),(0,i.useEffect)((function(){if(p)return f.current=function(e,t=null,n=E,r=null){const i=new M(e);if(!t)return i.attach(),i;const o=new n(t,e,r);let a="";return i.on("vim-mode-change",(e=>{o.setMode(e)})),i.on("vim-keypress",(e=>{":"===e?a="":a+=e,o.setKeyBuffer(a)})),i.on("vim-command-done",(()=>{a="",o.setKeyBuffer(a)})),i.on("dispose",(function(){o.toggleVisibility(!1),o.closeInput(),o.clear()})),o.toggleVisibility(!0),i.setStatusBar(o),i.attach(),i}(null==h?void 0:h.current,null==v?void 0:v.current),function(){var e;null===(e=f.current)||void 0===e||e.dispose()}}),[h,p]),(0,i.useEffect)((function(){var e,t,i=m.current,a={};i.getValue()!==l&&(S.current=!0,i.setValue(l),S.current=!1),i.getLanguageId()!==c&&(m.current=s.editor.createModel(i.getValue(),c),m.current.onDidChangeContent(b),null==h||null===(e=h.current)||void 0===e||e.setModel(m.current)),P()(k.current.monacoConfig,o)||(a=(0,r.A)({},o)),g!==k.current.theme&&(a.theme=g),n!==k.current.readOnly&&(a.readOnly=n),Object.keys(a).length&&(null==h||null===(t=h.current)||void 0===t||t.updateOptions(a)),k.current={monacoConfig:o,theme:g,readOnly:n}}),[h,c,o,b,n,g,l]),(0,we.jsxs)(we.Fragment,{children:[(0,we.jsx)("div",{className:Ie(null,t),children:(0,we.jsx)("div",{ref:y,className:Ie("editor")})}),p&&(0,we.jsx)("div",{ref:v,className:Ie("status")})]})}},50449:(e,t,n)=>{n.d(t,{AA:()=>c,RE:()=>s,SL:()=>m,_q:()=>f,g6:()=>u,gI:()=>p,j4:()=>g,js:()=>d,m4:()=>h});var r=n(13322),i=n(77720),o=n(2336),a=n(52891),s=["AND","ANY","AS","ASC","ATTACH","BETWEEN","CASE","CAST","CREATE","CROSS","DATABASE","DATABASES","DEFAULT","DELETE","DESC","DESCRIBE","DETACH","DISTINCT","DROP","ELSE","END","FOREIGN","FROM","GRANT","HAVING","IF","INNER","INSERT","JOIN","KEY","LEFT","NATURAL","NOT","OFFSET","ON","OPTIMIZE","OR","OUTER","PREWHERE","PRIMARY","PROCESSLIST","REFERENCES","RIGHT","SELECT","SHOW","TABLE","THEN","TO","TOTALS","TYPE","UNION","UPDATE","USE","WHEN","WHERE","WITH"],l=["GROUP BY","ON CLUSTER","ORDER BY","LIMIT","RENAME TABLE","IF NOT EXISTS","IF EXISTS","FORMAT Vertical","FORMAT JSONCompact","FORMAT JSONEachRow","FORMAT TSKV","FORMAT TabSeparatedWithNames","FORMAT TabSeparatedWithNamesAndTypes","FORMAT TabSeparatedRaw","FORMAT BlockTabSeparated","FORMAT CSVWithNames","FORMAT CSV","FORMAT JSON","FORMAT TabSeparated"],c=["true","false","NULL"],u=["__bitBoolMaskAnd","__bitBoolMaskOr","__bitSwapLastTwo","__bitWrapperFunc","__getScalar","accurate_Cast","accurate_CastOrNull","accurateCast","accurateCastOrNull","acosh","addDays","addHours","addMinutes","addMonths","addQuarters","addressToLine","addressToSymbol","addSeconds","addWeeks","addYears","aes_decrypt_mysql","aes_encrypt_mysql","aggThrow","alphaTokens","and","any","anyHeavy","anyLast","appendTrailingCharIfAbsent","argMax","argMin","array","arrayAll","arrayAUC","arrayAvg","arrayCompact","arrayConcat","arrayCount","arrayCumSum","arrayCumSumNonNegative","arrayDifference","arrayDistinct","arrayElement","arrayEnumerate","arrayEnumerateDense","arrayEnumerateDenseRanked","arrayEnumerateUniq","arrayEnumerateUniqRanked","arrayExists","arrayFill","arrayFilter","arrayFirst","arrayFirstIndex","arrayFlatten","arrayIntersect","arrayJoin","arrayMap","arrayMax","arrayMin","arrayPopBack","arrayPopFront","arrayProduct","arrayPushBack","arrayPushFront","arrayReduce","arrayReduceInRanges","arrayResize","arrayReverse","arrayReverseFill","arrayReverseSort","arrayReverseSplit","arraySlice","arraySort","arraySplit","arrayStringConcat","arraySum","arrayUniq","arrayWithConstant","arrayZip","asinh","assumeNotNull","atanh","avgWeighted","bar","base64Decode","base64Encode","basename","bitAnd","bitCount","bitHammingDistance","bitmaskToArray","bitmaskToList","bitNot","bitOr","bitPositionsToArray","bitRotateLeft","bitRotateRight","bitShiftLeft","bitShiftRight","bitTest","bitTestAll","bitTestAny","bitXor","blockNumber","blockSerializedSize","blockSize","boundingRatio","buildId","byteSize","caseWithExpr","caseWithExpression","caseWithoutExpr","caseWithoutExpression","categoricalInformationValue","cbrt","cityHash64","concatAssumeInjective","ConvertYson","corrStable","cosh","countDigits","countEqual","countMatches","countMatchesCaseInsensitive","countSubstringsCaseInsensitive","countSubstringsCaseInsensitiveUTF8","covarPop","covarPopStable","covarSamp","covarSampStable","currentDatabase","currentProfiles","currentRoles","currentUser","cutFragment","cutIPv6","cutQueryString","cutQueryStringAndFragment","cutToFirstSignificantSubdomain","cutToFirstSignificantSubdomainCustom","cutToFirstSignificantSubdomainCustomWithWWW","cutToFirstSignificantSubdomainWithWWW","cutURLParameter","cutWWW","dateTime64ToSnowflake","dateTimeToSnowflake","dateTrunc","decodeURLComponent","decodeXMLComponent","decrypt","defaultProfiles","defaultRoles","defaultValueOfArgumentType","defaultValueOfTypeName","deltaSum","deltaSumTimestamp","demangle","dictGet","dictGetChildren","dictGetDate","dictGetDateOrDefault","dictGetDateTime","dictGetDateTimeOrDefault","dictGetDescendants","dictGetFloat32","dictGetFloat32OrDefault","dictGetFloat64","dictGetFloat64OrDefault","dictGetHierarchy","dictGetInt8","dictGetInt8OrDefault","dictGetInt16","dictGetInt16OrDefault","dictGetInt32","dictGetInt32OrDefault","dictGetInt64","dictGetInt64OrDefault","dictGetOrDefault","dictGetOrNull","dictGetString","dictGetStringOrDefault","dictGetUInt8","dictGetUInt8OrDefault","dictGetUInt16","dictGetUInt16OrDefault","dictGetUInt32","dictGetUInt32OrDefault","dictGetUInt64","dictGetUInt64OrDefault","dictGetUUID","dictGetUUIDOrDefault","dictHas","dictIsIn","divide","domain","domainWithoutWWW","dumpColumnStructure","e","empty","emptyArrayDate","emptyArrayDateTime","emptyArrayFloat32","emptyArrayFloat64","emptyArrayInt8","emptyArrayInt16","emptyArrayInt32","emptyArrayInt64","emptyArrayString","emptyArrayToSingle","emptyArrayUInt8","emptyArrayUInt16","emptyArrayUInt32","emptyArrayUInt64","enabledProfiles","enabledRoles","encodeXMLComponent","encrypt","endsWith","entropy","equals","erf","erfc","errorCodeToName","evalMLMethod","exp2","exp10","extract","extractAll","extractAllGroups","extractAllGroupsHorizontal","extractAllGroupsVertical","extractGroups","extractTextFromHTML","extractURLParameter","extractURLParameterNames","extractURLParameters","farmFingerprint64","farmHash64","file","filesystemAvailable","filesystemCapacity","filesystemFree","finalizeAggregation","firstSignificantSubdomain","firstSignificantSubdomainCustom","format","formatDateTime","formatReadableQuantity","formatReadableSize","formatReadableTimeDelta","formatRow","formatRowNoNewline","fragment","FROM_UNIXTIME","fromModifiedJulianDay","fromModifiedJulianDayOrNull","fromUnixTimestamp","fromUnixTimestamp64Micro","fromUnixTimestamp64Milli","fromUnixTimestamp64Nano","fullHostName","fuzzBits","gcd","generateUUIDv4","geoDistance","geohashDecode","geohashEncode","geohashesInBox","geoToH3","getMacro","getServerPort","getSetting","getSizeOfEnumType","globalIn","globalInIgnoreSet","globalNotIn","globalNotInIgnoreSet","globalNotNullIn","globalNotNullInIgnoreSet","globalNullIn","globalNullInIgnoreSet","globalVariable","greatCircleAngle","greatCircleDistance","greater","greaterOrEquals","groupArray","groupArrayInsertAt","groupArrayMovingAvg","groupArrayMovingSum","groupArraySample","groupBitAnd","groupBitOr","groupBitXor","groupUniqArray","h3EdgeAngle","h3EdgeLengthM","h3GetBaseCell","h3GetResolution","h3HexAreaM2","h3IndexesAreNeighbors","h3IsValid","h3kRing","h3ToChildren","h3ToGeo","h3ToParent","h3ToString","halfMD5","has","hasAll","hasAny","hasColumnInTable","hasSubstr","hasThreadFuzzer","hasToken","hasTokenCaseInsensitive","histogram","hiveHash","hostName","hostname","identity","ifNotFinite","ignore","ilike","in","indexHint","indexOf","inIgnoreSet","initializeAggregation","initialQueryID","intDiv","intDivOrZero","intervalLengthSum","intExp2","intExp10","intHash32","intHash64","IPv4CIDRToRange","IPv4NumToString","IPv4NumToStringClassC","IPv4StringToNum","IPv4ToIPv6","IPv6CIDRToRange","IPv6NumToString","IPv6StringToNum","isConstant","isDecimalOverflow","isFinite","isInfinite","isIPAddressInRange","isIPv4String","isIPv6String","isNaN","isNotNull","isValidJSON","isValidUTF8","isZeroOrNull","javaHash","javaHashUTF16LE","joinGet","joinGetOrNull","JSON_EXISTS","JSON_QUERY","JSON_VALUE","JSONExtract","JSONExtractArrayRaw","JSONExtractBool","JSONExtractFloat","JSONExtractInt","JSONExtractKeysAndValues","JSONExtractKeysAndValuesRaw","JSONExtractRaw","JSONExtractString","JSONExtractUInt","JSONHas","JSONKey","JSONLength","JSONType","jumpConsistentHash","kurtPop","kurtSamp","lagInFrame","lcm","leadInFrame","leftPad","leftPadUTF8","lengthUTF8","less","lessOrEquals","lgamma","like","log1p","logTrace","lowCardinalityIndices","lowCardinalityKeys","lowerUTF8","MACNumToString","MACStringToNum","MACStringToOUI","mannWhitneyUTest","map","mapAdd","mapContains","mapKeys","mapPopulateSeries","mapSubtract","mapValues","match","materialize","maxIntersections","maxIntersectionsPosition","maxMap","MD5","median","medianBFloat16","medianBFloat16Weighted","medianDeterministic","medianExact","medianExactHigh","medianExactLow","medianExactWeighted","medianTDigest","medianTDigestWeighted","medianTiming","medianTimingWeighted","metroHash64","minMap","minus","modelEvaluate","modulo","moduloLegacy","moduloOrZero","multiFuzzyMatchAllIndices","multiFuzzyMatchAny","multiFuzzyMatchAnyIndex","multiIf","multiMatchAllIndices","multiMatchAny","multiMatchAnyIndex","multiply","multiSearchAllPositions","multiSearchAllPositionsCaseInsensitive","multiSearchAllPositionsCaseInsensitiveUTF8","multiSearchAllPositionsUTF8","multiSearchAny","multiSearchAnyCaseInsensitive","multiSearchAnyCaseInsensitiveUTF8","multiSearchAnyUTF8","multiSearchFirstIndex","multiSearchFirstIndexCaseInsensitive","multiSearchFirstIndexCaseInsensitiveUTF8","multiSearchFirstIndexUTF8","multiSearchFirstPosition","multiSearchFirstPositionCaseInsensitive","multiSearchFirstPositionCaseInsensitiveUTF8","multiSearchFirstPositionUTF8","negate","neighbor","netloc","ngramDistance","ngramDistanceCaseInsensitive","ngramDistanceCaseInsensitiveUTF8","ngramDistanceUTF8","ngramMinHash","ngramMinHashArg","ngramMinHashArgCaseInsensitive","ngramMinHashArgCaseInsensitiveUTF8","ngramMinHashArgUTF8","ngramMinHashCaseInsensitive","ngramMinHashCaseInsensitiveUTF8","ngramMinHashUTF8","ngramSearch","ngramSearchCaseInsensitive","ngramSearchCaseInsensitiveUTF8","ngramSearchUTF8","ngramSimHash","ngramSimHashCaseInsensitive","ngramSimHashCaseInsensitiveUTF8","ngramSimHashUTF8","normalizedQueryHash","normalizedQueryHashKeepNames","normalizeQuery","normalizeQueryKeepNames","notEmpty","notEquals","notILike","notIn","notInIgnoreSet","notLike","notNullIn","notNullInIgnoreSet","nullIn","nullInIgnoreSet","or","parseDateTime32BestEffort","parseDateTime32BestEffortOrNull","parseDateTime32BestEffortOrZero","parseDateTime64BestEffort","parseDateTime64BestEffortOrNull","parseDateTime64BestEffortOrZero","parseDateTimeBestEffort","parseDateTimeBestEffortOrNull","parseDateTimeBestEffortOrZero","parseDateTimeBestEffortUS","parseDateTimeBestEffortUSOrNull","parseDateTimeBestEffortUSOrZero","partitionId","path","pathFull","plus","pointInEllipses","pointInPolygon","polygonAreaCartesian","polygonAreaSpherical","polygonConvexHullCartesian","polygonPerimeterCartesian","polygonPerimeterSpherical","polygonsDistanceCartesian","polygonsDistanceSpherical","polygonsEqualsCartesian","polygonsIntersectionCartesian","polygonsIntersectionSpherical","polygonsSymDifferenceCartesian","polygonsSymDifferenceSpherical","polygonsUnionCartesian","polygonsUnionSpherical","polygonsWithinCartesian","polygonsWithinSpherical","port","positionCaseInsensitive","positionCaseInsensitiveUTF8","positionUTF8","protocol","quantile","quantileBFloat16","quantileBFloat16Weighted","quantileDeterministic","quantileExact","quantileExactExclusive","quantileExactHigh","quantileExactInclusive","quantileExactLow","quantileExactWeighted","quantiles","quantilesBFloat16","quantilesBFloat16Weighted","quantilesDeterministic","quantilesExact","quantilesExactExclusive","quantilesExactHigh","quantilesExactInclusive","quantilesExactLow","quantilesExactWeighted","quantilesTDigest","quantilesTDigestWeighted","quantilesTiming","quantilesTimingWeighted","quantileTDigest","quantileTDigestWeighted","quantileTiming","quantileTimingWeighted","queryID","queryString","queryStringAndFragment","rand32","rand64","randConstant","randomFixedString","randomPrintableASCII","randomString","randomStringUTF8","range","rankCorr","readWktMultiPolygon","readWktPoint","readWktPolygon","readWktRing","regexpQuoteMeta","regionHierarchy","regionIn","regionToArea","regionToCity","regionToContinent","regionToCountry","regionToDistrict","regionToName","regionToPopulation","regionToTopContinent","reinterpret","reinterpretAsDate","reinterpretAsDateTime","reinterpretAsFixedString","reinterpretAsFloat32","reinterpretAsFloat64","reinterpretAsInt8","reinterpretAsInt16","reinterpretAsInt32","reinterpretAsInt64","reinterpretAsInt128","reinterpretAsInt256","reinterpretAsString","reinterpretAsUInt8","reinterpretAsUInt16","reinterpretAsUInt32","reinterpretAsUInt64","reinterpretAsUInt128","reinterpretAsUInt256","reinterpretAsUUID","replaceAll","replaceOne","replaceRegexpAll","replaceRegexpOne","replicate","retention","reverseUTF8","rightPad","rightPadUTF8","roundAge","roundBankers","roundDown","roundDuration","roundToExp2","rowNumberInAllBlocks","rowNumberInBlock","runningAccumulate","runningConcurrency","runningDifference","runningDifferenceStartingWithFirstValue","sequenceCount","sequenceMatch","sequenceNextNode","serverUUID","SHA1","SHA224","SHA256","SHA512","shardCount","shardNum","sigmoid","simpleJSONExtractBool","simpleJSONExtractFloat","simpleJSONExtractInt","simpleJSONExtractRaw","simpleJSONExtractString","simpleJSONExtractUInt","simpleJSONHas","simpleLinearRegression","singleValueOrNull","sinh","sipHash64","sipHash128","skewPop","skewSamp","sleep","sleepEachRow","snowflakeToDateTime","snowflakeToDateTime64","splitByChar","splitByNonAlpha","splitByRegexp","splitByString","splitByWhitespace","startsWith","stddevPop","stddevPopStable","stddevSamp","stddevSampStable","stochasticLinearRegression","stochasticLogisticRegression","stringToH3","studentTTest","substringUTF8","subtractDays","subtractHours","subtractMinutes","subtractMonths","subtractQuarters","subtractSeconds","subtractWeeks","subtractYears","sumCount","sumKahan","sumMap","sumMapFiltered","sumMapFilteredWithOverflow","sumMapWithOverflow","sumWithOverflow","svg","tcpPort","tgamma","throwIf","tid","timeSlot","timeSlots","timeZone","timezone","timeZoneOf","timezoneOf","timeZoneOffset","timezoneOffset","toColumnTypeName","toDate","toDate32","toDate32OrNull","toDate32OrZero","toDateOrNull","toDateOrZero","toDateTime","toDateTime32","toDateTime64","toDateTime64OrNull","toDateTime64OrZero","toDateTimeOrNull","toDateTimeOrZero","today","toDayOfMonth","toDayOfWeek","toDayOfYear","toDecimal32","toDecimal32OrNull","toDecimal32OrZero","toDecimal64","toDecimal64OrNull","toDecimal64OrZero","toDecimal128","toDecimal128OrNull","toDecimal128OrZero","toDecimal256","toDecimal256OrNull","toDecimal256OrZero","toFixedString","toFloat32","toFloat32OrNull","toFloat32OrZero","toFloat64","toFloat64OrNull","toFloat64OrZero","toHour","toInt8","toInt8OrNull","toInt8OrZero","toInt16","toInt16OrNull","toInt16OrZero","toInt32","toInt32OrNull","toInt32OrZero","toInt64","toInt64OrNull","toInt64OrZero","toInt128","toInt128OrNull","toInt128OrZero","toInt256","toInt256OrNull","toInt256OrZero","toIntervalDay","toIntervalHour","toIntervalMinute","toIntervalMonth","toIntervalQuarter","toIntervalSecond","toIntervalWeek","toIntervalYear","toIPv4","toIPv6","toISOWeek","toISOYear","toJSONString","toLowCardinality","toMinute","toModifiedJulianDay","toModifiedJulianDayOrNull","toMonday","toMonth","toNullable","topK","topKWeighted","topLevelDomain","toQuarter","toRelativeDayNum","toRelativeHourNum","toRelativeMinuteNum","toRelativeMonthNum","toRelativeQuarterNum","toRelativeSecondNum","toRelativeWeekNum","toRelativeYearNum","toSecond","toStartOfDay","toStartOfFifteenMinutes","toStartOfFiveMinute","toStartOfHour","toStartOfInterval","toStartOfISOYear","toStartOfMinute","toStartOfMonth","toStartOfQuarter","toStartOfSecond","toStartOfTenMinutes","toStartOfWeek","toStartOfYear","toString","toStringCutToZero","toTime","toTimeZone","toTimezone","toTypeName","toUInt8","toUInt8OrNull","toUInt8OrZero","toUInt16","toUInt16OrNull","toUInt16OrZero","toUInt32","toUInt32OrNull","toUInt32OrZero","toUInt64","toUInt64OrNull","toUInt64OrZero","toUInt128","toUInt128OrNull","toUInt128OrZero","toUInt256","toUInt256OrNull","toUInt256OrZero","toUnixTimestamp","toUnixTimestamp64Micro","toUnixTimestamp64Milli","toUnixTimestamp64Nano","toUUID","toUUIDOrNull","toUUIDOrZero","toValidUTF8","toWeek","toYear","toYearWeek","toYYYYMM","toYYYYMMDD","toYYYYMMDDhhmmss","transform","trimBoth","trimLeft","trimRight","tryBase64Decode","tuple","tupleElement","tupleHammingDistance","tupleToNameValuePairs","uniq","uniqCombined","uniqCombined64","uniqExact","uniqHLL12","uniqUpTo","upperUTF8","uptime","URLHash","URLHierarchy","URLPathHierarchy","UUIDNumToString","UUIDStringToNum","validateNestedArraySizes","varPop","varPopStable","varSamp","varSampStable","visibleWidth","visitParamExtractBool","visitParamExtractFloat","visitParamExtractInt","visitParamExtractRaw","visitParamExtractString","visitParamExtractUInt","visitParamHas","welchTTest","windowFunnel","wkt","wordShingleMinHash","wordShingleMinHashArg","wordShingleMinHashArgCaseInsensitive","wordShingleMinHashArgCaseInsensitiveUTF8","wordShingleMinHashArgUTF8","wordShingleMinHashCaseInsensitive","wordShingleMinHashCaseInsensitiveUTF8","wordShingleMinHashUTF8","wordShingleSimHash","wordShingleSimHashCaseInsensitive","wordShingleSimHashCaseInsensitiveUTF8","wordShingleSimHashUTF8","xor","xxHash32","xxHash64","yandexConsistentHash","yesterday","YPathArrayBoolean","YPathArrayBooleanStrict","YPathArrayDouble","YPathArrayDoubleStrict","YPathArrayInt64","YPathArrayInt64Strict","YPathArrayUInt64","YPathArrayUInt64Strict","YPathBoolean","YPathBooleanStrict","YPathDouble","YPathDoubleStrict","YPathExtract","YPathExtractStrict","YPathInt64","YPathInt64Strict","YPathRaw","YPathRawStrict","YPathString","YPathStringStrict","YPathUInt64","YPathUInt64Strict","YSONExtract","YSONExtractArrayRaw","YSONExtractBool","YSONExtractFloat","YSONExtractInt","YSONExtractKeysAndValues","YSONExtractKeysAndValuesRaw","YSONExtractRaw","YSONExtractString","YSONExtractUInt","YSONHas","YSONKey","YSONLength","YSONType"],d=["_CAST","abs","acos","asin","atan","atan2","avg","bin","BIT_AND","BIT_OR","BIT_XOR","CAST","ceil","ceiling","char","CHAR_LENGTH","CHARACTER_LENGTH","coalesce","concat","connection_id","connectionId","corr","cos","count","countSubstrings","COVAR_POP","COVAR_SAMP","CRC32","CRC32IEEE","CRC64","DATABASE","DATE","date_trunc","dateDiff","dateName","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","dense_rank","exp","first_value","flatten","floor","FQDN","FROM_BASE64","greatest","hex","HOUR","hypot","if","ifNull","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","initial_query_id","isNull","last_value","lcase","least","length","ln","locate","log","log2","log10","lower","lpad","max","mid","min","MINUTE","mod","MONTH","not","now","now64","nth_value","nullIf","pi","position","pow","power","QUARTER","query_id","rand","rank","repeat","replace","reverse","round","row_number","rpad","SECOND","sign","sin","sqrt","STDDEV_POP","STDDEV_SAMP","substr","substring","sum","tan","tanh","TO_BASE64","trunc","truncate","ucase","unbin","unhex","upper","user","VAR_POP","VAR_SAMP","version","week","YEAR","yearweek"],h=["cluster","clusterAllReplicas","concatYtTables","concatYtTablesLike","concatYtTablesRange","concatYtTablesRegexp","dictionary","executable","file","generateRandom","input","jdbc","merge","null","numbers","numbers_mt","odbc","remote","remoteSecure","url","values","view","ytSubquery","zeros","zeros_mt"],p=["Buffer","Memory","YtTable"],g=["AggregateFunction","Array","Enum8","Enum16","FixedString","Float32","Float64","Int8","Int16","Int32","Int64","Int128","Int256","IntervalDay","IntervalHour","IntervalMinute","IntervalMonth","IntervalQuarter","IntervalSecond","IntervalWeek","IntervalYear","IPv4","IPv6","LowCardinality","Map","MultiPolygon","Nested","Nothing","Nullable","Point","Polygon","Ring","SimpleAggregateFunction","String","Tuple","UInt8","UInt16","UInt32","UInt64","UInt128","UInt256","UUID","YtBoolean"],m=["BIGINT","BIGINT SIGNED","BIGINT UNSIGNED","BINARY","BINARY LARGE OBJECT","BINARY VARYING","BLOB","BOOL","BOOLEAN","BYTE","BYTEA","CHAR","CHAR LARGE OBJECT","CHAR VARYING","CHARACTER","CHARACTER LARGE OBJECT","CHARACTER VARYING","CLOB","DEC","DOUBLE","DOUBLE PRECISION","Date","Date32","DateTime","DateTime32","DateTime64","Decimal","Decimal128","Decimal256","Decimal32","Decimal64","ENUM","Enum","FIXED","FLOAT","INET4","INET6","INT","INT SIGNED","INT UNSIGNED","INT1","INT1 SIGNED","INT1 UNSIGNED","INTEGER","INTEGER SIGNED","INTEGER UNSIGNED","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMINT SIGNED","MEDIUMINT UNSIGNED","MEDIUMTEXT","NATIONAL CHAR","NATIONAL CHAR VARYING","NATIONAL CHARACTER","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NCHAR","NCHAR LARGE OBJECT","NCHAR VARYING","NUMERIC","NVARCHAR","REAL","SINGLE","SMALLINT","SMALLINT SIGNED","SMALLINT UNSIGNED","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYINT SIGNED","TINYINT UNSIGNED","TINYTEXT","VARCHAR","VARCHAR2"],f=function(e,t){var n=(0,a.k)(e,t);return{suggestions:y(n,{suggestFunctions:!0,suggestKeywords:[],errors:[]})}},y=function(e,t){var n=[].concat((0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.TypeParameter,detail:"Type",suggestionType:"suggestSimpleTypes",rangeToInsertSuggestion:e,items:[].concat(g,m,p)})),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Constant,detail:"Constant",suggestionType:"suggestConstants",rangeToInsertSuggestion:e,items:c})));return t.suggestFunctions&&(n=[].concat((0,r.A)(n),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Function,detail:"Function",suggestionType:"suggestFunctions",rangeToInsertSuggestion:e,items:[].concat(u,d,h)})))),t.suggestKeywords&&(n=[].concat((0,r.A)(n),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Keyword,detail:"Keyword",suggestionType:"suggestKeywords",rangeToInsertSuggestion:e,items:[].concat(s,l)})))),n}},2336:(e,t,n)=>{n.d(t,{GX:()=>o,Mg:()=>l,kV:()=>a,mF:()=>s});var r=n(77720),i=n(11737),o={path:0,suggestTemplates:1,suggestPragmas:2,binding:3,connection:4,suggestColumns:5,suggestColumnAliases:6,suggestKeywords:7,suggestAggregateFunctions:8,suggestTableFunctions:9,suggestWindowFunctions:10,suggestFunctions:11,suggestUdfs:12,suggestSimpleTypes:13,suggestConstants:14,suggestOperators:15,suggestTableIndexes:16,suggestTableHints:17,suggestEntitySettings:18},a=function(e,t){return t?t.map((function(t){return{label:t.name,insertText:t.name,kind:r.eo.CompletionItemKind.Field,detail:"Column alias",range:e,sortText:(0,i.s)(o.suggestColumnAliases)}})):[]},s=function(e,t){return t?t.map((function(t){return{label:t.value,insertText:t.value,kind:r.eo.CompletionItemKind.Keyword,detail:"Keyword",range:e,sortText:(0,i.s)(o.suggestKeywords)}})):[]},l=function(e){var t=e.kind,n=e.detail,r=e.suggestionType,a=e.rangeToInsertSuggestion;return e.items.map((function(e){return{label:e,insertText:e,kind:t,detail:n,range:a,sortText:(0,i.s)(o[r])}}))}},51757:(e,t,n)=>{n.d(t,{T:()=>y});var r=n(40319),i=n(28407),o=n(70232),a=n.n(o),s=n(64714),l=n(77720),c=n(29746),u=n(57436),d=function(e,t,n){var r,i=e.getLineContent(t.lineNumber).substring(0,t.column),o=(0,u.$)(i,n),a=o.path,s=o.cluster,l=e.getValue().match(/(USE|use)\s\w+/g),c=l?null===(r=l.pop())||void 0===r?void 0:r.replace(/(USE|use)\s/,""):null;return{path:a,cluster:s||c}},h=n(2336),p=n(11737),g=n(52797),m=n(33547),f=n(99745),y=function(){var e=(0,i.A)(a().mark((function e(t){var n,i,o,u,y,v,C,S,k,b,A,w;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.model,i=t.monacoCursorPosition,o=t.engine,u=t.range,y=d(n,i,o),v=y.path,C=y.cluster,v&&C){e.next=4;break}return e.abrupt("return",[]);case 4:if(S=m.YT.clusters[C]){e.next=7;break}return e.abrupt("return",[]);case 7:return k={setup:{proxy:(0,g.v9)(S)}},e.prev=8,b=v.replace(/(\/$)/g,""),e.next=12,s.X8.exists((0,r.A)((0,r.A)({},k),{},{parameters:{path:b}}));case 12:if(e.sent){e.next=22;break}if(!/[^/]\/$/.test(v)){e.next=16;break}return e.abrupt("return",[]);case 16:return b=b.split("/").slice(0,-1).join("/"),e.next=19,s.X8.exists((0,r.A)((0,r.A)({},k),{},{parameters:{path:b}}));case 19:if(e.sent){e.next=22;break}return e.abrupt("return",[]);case 22:return e.next=24,s.Qq.list(s.Vu.navigationListNodes,(0,r.A)((0,r.A)({},k),{},{parameters:{path:b,attributes:["type","broken"]}}));case 24:return A=e.sent,w=n.getLineContent(u.startLineNumber).slice(u.startColumn-1,u.endColumn-1),e.abrupt("return",A.reduce((function(e,t){var n=(0,f.a)(c.A.getValue(t),{asHTML:!1}).replaceAll('"',""),r=c.A.getAttributes(t),i=r.type,o=r.broken;if(!["table","map_node","link"].includes(i)||"link"===i&&o)return e;var a=b+"/"+n,s=v.replace(new RegExp(w+"$"),""),d=/[^/]\//.test(s)?a.replace(s,""):a.replace("//","");return e.push({label:d,detail:a,insertText:d,kind:l.eo.CompletionItemKind["table"===i?"File":"Folder"],range:u,sortText:(0,p.s)(h.GX.path)}),e}),[]));case 29:return e.prev=29,e.t0=e.catch(8),e.abrupt("return",[]);case 32:case"end":return e.stop()}}),e,null,[[8,29]])})));return function(t){return e.apply(this,arguments)}}()},52891:(e,t,n)=>{n.d(t,{k:()=>r});var r=function(e,t){var n=e.getWordUntilPosition(t),r=n.startColumn,i=n.endColumn;return{startColumn:r-("$"===e.getLineContent(t.lineNumber)[r-2]?1:0),startLineNumber:t.lineNumber,endColumn:i,endLineNumber:t.lineNumber}}},11737:(e,t,n)=>{n.d(t,{s:()=>i});var r="abcdefghijklmnopqrstuvwxyz",i=function(e){var t=r[e];if(t)return t;var n=Math.floor(e/26),i=e%26;return r.slice(-1).repeat(n)+r[i]}},71183:(e,t,n)=>{n.d(t,{RE:()=>s,XB:()=>c,rL:()=>u,to:()=>l});var r=n(13322),i=n(77720),o=n(2336),a=n(52891),s="$row|$rows|action|all|and|any|as|asc|assume|begin|bernoulli|between|by|case|columns|commit|compact|create|cross|cube|declare|define|delete|desc|dict|discard|distinct|do|drop|else|empty_action|end|erase|evaluate|exclusion|exists|export|flatten|for|from|full|group|grouping|having|if|ignore|ilike|import|in|inner|insert|into|is|join|left|like|limit|list|match|not|null|nulls|offset|on|only|optional|or|order|over|partition|pragma|presort|process|reduce|regexp|repeatable|replace|respect|result|return|right|rlike|rollup|sample|schema|select|semi|set|sets|stream|subquery|table|tablesample|then|truncate|union|update|upsert|use|using|values|view|when|where|window|with|without|xor".split("|"),l="bool|date|datetime|decimal|double|float|int16|int32|int64|int8|interval|json|string|timestamp|tzdate|tzdatetime|tztimestamp|uint16|uint32|uint64|uint8|utf8|uuid|yson".split("|"),c="abs|aggregate_by|aggregate_list|aggregate_list_distinct|agg_list|agg_list_distinct|as_table|avg|avg_if|adaptivedistancehistogram|adaptivewardhistogram|adaptiveweighthistogram|addmember|addtimezone|aggregateflatten|aggregatetransforminput|aggregatetransformoutput|aggregationfactory|asatom|asdict|asdictstrict|asenum|aslist|asliststrict|asset|assetstrict|asstruct|astagged|astuple|asvariant|atomcode|bitcast|bit_and|bit_or|bit_xor|bool_and|bool_or|bool_xor|bottom|bottom_by|blockwardhistogram|blockweighthistogram|cast|coalesce|concat|concat_strict|correlation|count|count_if|covariance|covariance_population|covariance_sample|callableargument|callableargumenttype|callableresulttype|callabletype|callabletypecomponents|callabletypehandle|choosemembers|combinemembers|countdistinctestimate|currentauthenticateduser|currentoperationid|currentoperationsharedid|currenttzdate|currenttzdatetime|currenttztimestamp|currentutcdate|currentutcdatetime|currentutctimestamp|dense_rank|datatype|datatypecomponents|datatypehandle|dictaggregate|dictcontains|dictcreate|dicthasitems|dictitems|dictkeytype|dictkeys|dictlength|dictlookup|dictpayloadtype|dictpayloads|dicttype|dicttypecomponents|dicttypehandle|each|each_strict|emptydicttype|emptydicttypehandle|emptylisttype|emptylisttypehandle|endswith|ensure|ensureconvertibleto|ensuretype|enum|evaluateatom|evaluatecode|evaluateexpr|evaluatetype|expandstruct|filter|filter_strict|find|first_value|folder|filecontent|filepath|flattenmembers|forceremovemember|forceremovemembers|forcerenamemembers|forcespreadmembers|formatcode|formattype|frombytes|funccode|greatest|grouping|gathermembers|generictype|histogram|hll|hyperloglog|if|if_strict|instanceof|json_exists|json_query|json_value|jointablerow|just|lag|last_value|lead|least|len|length|like|likely|like_strict|lambdaargumentscount|lambdacode|linearhistogram|listaggregate|listall|listany|listavg|listcode|listcollect|listconcat|listcreate|listdistinct|listenumerate|listextend|listextendstrict|listextract|listfilter|listflatmap|listflatten|listfromrange|listhas|listhasitems|listhead|listindexof|listitemtype|listlast|listlength|listmap|listmax|listmin|listnotnull|listreplicate|listreverse|listskip|listskipwhile|listskipwhileinclusive|listsort|listsortasc|listsortdesc|listsum|listtake|listtakewhile|listtakewhileinclusive|listtype|listtypehandle|listunionall|listuniq|listzip|listzipall|loghistogram|logarithmichistogram|max|max_by|max_of|median|min|min_by|min_of|mode|multi_aggregate_by|nanvl|nvl|nothing|nulltype|nulltypehandle|optionalitemtype|optionaltype|optionaltypehandle|percentile|parsefile|parsetype|parsetypehandle|pickle|quotecode|range|range_strict|rank|regexp|regexp_strict|rfind|row_number|random|randomnumber|randomuuid|removemember|removemembers|removetimezone|renamemembers|replacemember|reprcode|resourcetype|resourcetypehandle|resourcetypetag|some|stddev|stddev_population|stddev_sample|substring|sum|sum_if|sessionstart|sessionwindow|setcreate|setdifference|setincludes|setintersection|setisdisjoint|setsymmetricdifference|setunion|spreadmembers|stablepickle|startswith|staticmap|streamitemtype|streamtype|streamtypehandle|structmembertype|structmembers|structtypecomponents|structtypehandle|subqueryextend|subqueryextendfor|subquerymerge|subquerymergefor|subqueryunionall|subqueryunionallfor|subqueryunionmerge|subqueryunionmergefor|top|topfreq|top_by|tablename|tablepath|tablerecordindex|tablerow|taggedtype|taggedtypecomponents|taggedtypehandle|tobytes|todict|tomultidict|toset|tosorteddict|tosortedmultidict|trymember|tupleelementtype|tupletype|tupletypecomponents|tupletypehandle|typehandle|typekind|typeof|udaf|unittype|unpickle|untag|unwrap|variance|variance_population|variance_sample|variant|varianttype|varianttypehandle|variantunderlyingtype|voidtype|voidtypehandle|way|worldcode".split("|"),u=function(e,t){var n=(0,a.k)(e,t);return{suggestions:[].concat((0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Keyword,detail:"Keyword",suggestionType:"suggestKeywords",rangeToInsertSuggestion:n,items:[].concat((0,r.A)(s),(0,r.A)(l))})),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Function,detail:"Function",suggestionType:"suggestFunctions",rangeToInsertSuggestion:n,items:c})))}}},65185:(e,t,n)=>{n.r(t),n.d(t,{conf:()=>i,language:()=>o});var r=n(71183),i={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],wordPattern:/(-?\d*\.\d\w*)|([^`~!@#%^&*()\-=+[{\]}\\|;:'",./?\s]+)/g},o={defaultToken:"text",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],keywords:r.RE,typeKeywords:r.to,constants:["true","false"],builtinFunctions:r.XB,operators:["+","-","/","//","%","<@>","@>","<@","&","^","~","<",">","<=","=>","==","!=","<>","="],symbols:/[=><!~?:&|+\-*/^%]+/,escapes:/\\(?:[abfnrtv\\"'`]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/[a-zA-Z_]\w*/,tokenizer:{root:[{include:"@whitespace"},{include:"@comments"},{include:"@numbers"},{include:"@tablePath"},{include:"@strings"},[/(@variables)::(@variables)/,"support.function"],[/[;,.]/,"delimiter"],[/[(){}[\]]/,"@brackets"],[/(\w+\.)*`\/\/(.*)`/g,{token:"path"}],[/@?[a-zA-Z_$]\w*/,{cases:{"@keywords":"keyword","@typeKeywords":"keyword.type","@constants":"constant.yql","@builtinFunctions":"constant.other.color","[$@][a-zA-Z_]\\w*":"variable","@default":"identifier"}}],[/@symbols/,{cases:{"@operators":"operator.sql","@default":""}}]],whitespace:[[/\s+/,"white"]],comments:[[/--.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],commentAnsi:[[/\/\*/,{token:"comment.quote",next:"@comment"}],[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?f?\b/,"number.float"],[/[+-]?(?:\d+|0b[01]+|0o[0-8]+|0x[\da-f]+)(?:u?[lst]?)?\b/,"number"]],strings:[[/'/,{token:"string",next:"@stringSingle"}],[/"/,{token:"string",next:"@stringDouble"}],[/[@]{2}/,{token:"string",next:"@multilineString"}]],stringSingle:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiSingle:[[/[^']+/,"string"],[/''/,"string"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringDouble:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiDouble:[[/[^"]+/,"string"],[/""/,"string"],[/"[uyj]?/,{token:"string",next:"@pop"}]],multilineString:[[/#py/,{token:"string.python",nextEmbedded:"python",next:"@embedded",goBack:3}],[/\/\/js/,{token:"string.js",nextEmbedded:"javascript",next:"@embedded",goBack:4}],[/[^@]+/,"string"],[/[@]{4}/,"string"],[/[@]{2}[uyj]?/,{token:"string",next:"@pop"}],[/./,"string"]],embedded:[[/([^@]|^)([@]{4})*[@]{2}([@]([^@]|$)|[^@]|$)/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],tablePath:[[/`\/?[\w+]+`/,{token:"string.tablepath"}]]}}},89814:(e,t,n)=>{n.r(t),n.d(t,{conf:()=>g.conf,language:()=>m,provideSuggestionsFunction:()=>f});var r=n(13322),i=n(28407),o=n(70232),a=n.n(o),s=n(77720),l=n(52891),c=n(2336),u=n(71183),d=["SELECT","FROM","WITH","INDEX","WHERE","HAVING","OFFSET","LIMIT","JOIN","ARRAY","USING","GROUP","BY","WITH","TOTALS","ORDER","BY","ASC","DESC","LEFT","AS","ON","AND","OR","IS","NOT","NULL","BETWEEN","IN","TRANSFORM","LIKE","ILIKE","RLIKE","REGEXP","ESCAPE","FALSE","TRUE","CASE","WHEN","THEN","ELSE","END","INF"],h=n(51757),p=n(30996),g=n(65185),m={defaultToken:"text",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],keywords:u.RE,typeKeywords:u.to,constants:["true","false"],builtinFunctions:u.XB,operators:["+","-","/","//","%","<@>","@>","<@","&","^","~","<",">","<=","=>","==","!=","<>","="],symbols:/[=><!~?:&|+\-*/^%]+/,escapes:/\\(?:[abfnrtv\\"'`]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/[a-zA-Z_]\w*/,tokenizer:{root:[{include:"@whitespace"},{include:"@comments"},{include:"@numbers"},{include:"@tablePath"},{include:"@strings"},[/(@variables)::(@variables)/,"support.function"],[/[;,.]/,"delimiter"],[/[(){}[\]]/,"@brackets"],[/(\w+\.)*`\/\/(.*)`/g,{token:"path"}],[/@?[a-zA-Z_$]\w*/,{cases:{"@keywords":"keyword","@typeKeywords":"keyword.type","@constants":"constant.yql","@builtinFunctions":"constant.other.color","[$@][a-zA-Z_]\\w*":"variable","@default":"identifier"}}],[/@symbols/,{cases:{"@operators":"operator.sql","@default":""}}]],whitespace:[[/\s+/,"white"]],comments:[[/--.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@commentAnsi"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],commentAnsi:[[/\/\*/,{token:"comment.quote",next:"@comment"}],[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?f?\b/,"number.float"],[/[+-]?(?:\d+|0b[01]+|0o[0-8]+|0x[\da-f]+)(?:u?[lst]?)?\b/,"number"]],strings:[[/'/,{token:"string",next:"@stringAnsiSingle"}],[/"/,{token:"string",next:"@stringAnsiDouble"}],[/[@]{2}/,{token:"string",next:"@multilineString"}]],stringSingle:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiSingle:[[/[^']+/,"string"],[/''/,"string"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringDouble:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiDouble:[[/[^"]+/,"string"],[/""/,"string"],[/"[uyj]?/,{token:"string",next:"@pop"}]],multilineString:[[/#py/,{token:"string.python",nextEmbedded:"python",next:"@embedded",goBack:3}],[/\/\/js/,{token:"string.js",nextEmbedded:"javascript",next:"@embedded",goBack:4}],[/[^@]+/,"string"],[/[@]{4}/,"string"],[/[@]{2}[uyj]?/,{token:"string",next:"@pop"}],[/./,"string"]],embedded:[[/([^@]|^)([@]{4})*[@]{2}([@]([^@]|$)|[^@]|$)/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],tablePath:[[/`\/?[\w+]+`/,{token:"string.tablepath"}]]}},f=function(){var e=(0,i.A)(a().mark((function e(t,n){var i,o;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=(0,l.k)(t,n),e.next=3,(0,h.T)({model:t,monacoCursorPosition:n,engine:p.d.YT_QL,range:i});case 3:return o=e.sent,e.abrupt("return",{suggestions:[].concat((0,r.A)(o),(0,r.A)((0,c.Mg)({kind:s.eo.CompletionItemKind.Keyword,detail:"Keyword",suggestionType:"suggestKeywords",rangeToInsertSuggestion:i,items:(0,r.A)(d)})))});case 5:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()}}]);
2
- //# sourceMappingURL=yt-monaco-editor.46876bce.chunk.js.map
1
+ "use strict";(self.webpackChunk_ytsaurus_ui=self.webpackChunk_ytsaurus_ui||[]).push([[8810],{12054:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Te});var r=n(40319),i=n(77810),o=n(76872),a=n(65573),s=n(21274),l=n(69909);const c={readOnly:65,cursorWidth:20,fontInfo:32},u=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;function d(e){return/\w/.test(e)||e>"€"&&(e.toUpperCase()!=e.toLowerCase()||u.test(e))}function h(e,t){if(!(this instanceof h))return new h(e,t);this.line=e,this.ch=t}function p(e,t,n){e.dispatch(t,n)}let g,m;String.prototype.normalize?(g=function(e){return e.normalize("NFD").toLowerCase()},m=function(e){return e.normalize("NFD")}):(g=function(e){return e.toLowerCase()},m=function(e){return e});var f=function(e,t){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0};function y(e){return new h(e.lineNumber-1,e.column-1)}function v(e){return new s.Position(e.line+1,e.ch+1)}f.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},eat:function(e){var t=this.string.charAt(this.pos);if("string"==typeof e)var n=t==e;else n=t&&(e.test?e.test(t):e(t));if(n)return++this.pos,t},eatWhile:function(e){for(var t=this.pos;this.eat(e););return this.pos>t},eatSpace:function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},skipToEnd:function(){this.pos=this.string.length},skipTo:function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},backUp:function(e){this.pos-=e},column:function(){throw"not implemented"},indentation:function(){throw"not implemented"},match:function(e,t,n){if("string"!=typeof e){var r=this.string.slice(this.pos).match(e);return r&&r.index>0?null:(r&&!1!==t&&(this.pos+=r[0].length),r)}var i=function(e){return n?e.toLowerCase():e};if(i(this.string.substr(this.pos,e.length))==i(e))return!1!==t&&(this.pos+=e.length),!0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}}};class C{constructor(e,t,n,r){this.cm=e,this.id=t,this.lineNumber=n+1,this.column=r+1,e.marks[this.id]=this}clear(){delete this.cm.marks[this.id]}find(){return y(this)}}function S(e,t=!1){let n=!0,r=s.KeyCode[e.keyCode];e.key&&(r=e.key,n=!1);let i=r,o=t;switch(e.keyCode){case s.KeyCode.Shift:case s.KeyCode.Meta:case s.KeyCode.Alt:case s.KeyCode.Ctrl:return i;case s.KeyCode.Escape:o=!0,i="Esc";break;case s.KeyCode.Space:o=!0}return r.startsWith("Key")||r.startsWith("KEY_")?i=r[r.length-1].toLowerCase():r.startsWith("Digit")?i=r.slice(5,6):r.startsWith("Numpad")?i=r.slice(6,7):r.endsWith("Arrow")?(o=!0,i=r.substring(0,r.length-5)):(r.startsWith("US_")||r.startsWith("Bracket")||!i)&&(i=e.browserEvent.key),o||e.altKey||e.ctrlKey||e.metaKey?(e.altKey&&(i=`Alt-${i}`),e.ctrlKey&&(i=`Ctrl-${i}`),e.metaKey&&(i=`Meta-${i}`),e.shiftKey&&(i=`Shift-${i}`)):i=e.key||e.browserEvent.key,1===i.length&&n&&(i=`'${i}'`),i}class k{static Pos=h;static signal=p;static on=function(){};static off=function(){};static addClass=function(){};static rmClass=function(){};static defineOption=function(){};static keyMap={default:function(e){return function(e){return!0}}};static matchingBrackets={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};static isWordChar=d;static keyName=S;static StringStream=f;static e_stop=function(e){return e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,k.e_preventDefault(e),!1};static e_preventDefault=function(e){return e.preventDefault?(e.preventDefault(),e.browserEvent&&e.browserEvent.preventDefault()):e.returnValue=!1,!1};static commands={redo:function(e){e.editor.getModel().redo()},undo:function(e){e.editor.getModel().undo()},newlineAndIndent:function(e){e.triggerEditorAction("editor.action.insertLineAfter")}};static lookupKey=function e(t,n,r){"string"==typeof n&&(n=k.keyMap[n]);const i="function"==typeof n?n(t):n[t];if(!1===i)return"nothing";if("..."===i)return"multi";if(null!=i&&r(i))return"handled";if(n.fallthrough){if(!Array.isArray(n.fallthrough))return e(t,n.fallthrough,r);for(var o=0;o<n.fallthrough.length;o++){var a=e(t,n.fallthrough[o],r);if(a)return a}}};static defineExtension=function(e,t){k.prototype[e]=t};constructor(e){this.editor=e,this.state={keyMap:"vim"},this.marks={},this.$uid=0,this.disposables=[],this.listeners={},this.curOp={},this.attached=!1,this.statusBar=null,this.options={},this.addLocalListeners(),this.ctxInsert=this.editor.createContextKey("insertMode",!0)}attach(){k.keyMap.vim.attach(this)}addLocalListeners(){this.disposables.push(this.editor.onDidChangeCursorPosition(this.handleCursorChange),this.editor.onDidChangeModelContent(this.handleChange),this.editor.onKeyDown(this.handleKeyDown))}handleKeyDown=e=>{if(e.browserEvent.defaultPrevented&e.keyCode!==s.KeyCode.Escape)return;if(!this.attached)return;const t=S(e);if(this.replaceMode&&this.handleReplaceMode(t,e),!t)return;const n=this.state.keyMap;if(k.keyMap[n]&&k.keyMap[n].call){const r=k.keyMap[n].call(t,this);if(r){e.preventDefault(),e.stopPropagation();try{r()}catch(e){console.error(e)}}}};handleReplaceMode(e,t){let n=!1,r=e;const i=this.editor.getPosition();let o=new s.Range(i.lineNumber,i.column,i.lineNumber,i.column+1);if(e.startsWith("'"))r=e[1];else if("Enter"===r)r="\n";else{if("Backspace"!==r)return;{const e=this.replaceStack.pop();if(!e)return;n=!0,r=e,o=new s.Range(i.lineNumber,i.column,i.lineNumber,i.column-1)}}t.preventDefault(),t.stopPropagation(),this.replaceStack||(this.replaceStack=[]),n||this.replaceStack.push(this.editor.getModel().getValueInRange(o)),this.editor.executeEdits("vim",[{text:r,range:o,forceMoveMarkers:!0}]),n&&this.editor.setPosition(o.getStartPosition())}handleCursorChange=e=>{const{position:t,source:n}=e,{editor:r}=this,i=r.getSelection();if(!this.ctxInsert.get()&&"mouse"===e.source&&i.isEmpty()){const n=r.getModel().getLineMaxColumn(t.lineNumber);if(e.position.column===n)return void r.setPosition(new s.Position(e.position.lineNumber,n-1))}this.dispatch("cursorActivity",this,e)};handleChange=e=>{const{changes:t}=e,n={text:t.reduce(((e,t)=>(e.push(t.text),e)),[]),origin:"+input"},r=this.curOp=this.curOp||{};r.changeHandlers||(r.changeHandlers=this.listeners.change&&this.listeners.change.slice()),this.virtualSelectionMode()||(r.lastChange?r.lastChange.next=r.lastChange=n:r.lastChange=r.change=n,this.dispatch("change",this,n))};setOption(e,t){this.state[e]=t,"theme"===e&&s.editor.setTheme(t)}getConfiguration(){const{editor:e}=this;let t=c;return"function"==typeof e.getConfiguration?e.getConfiguration():("EditorOption"in s.editor&&(t=s.editor.EditorOption),{readOnly:e.getOption(t.readOnly),viewInfo:{cursorWidth:e.getOption(t.cursorWidth)},fontInfo:e.getOption(t.fontInfo)})}getOption(e){return"readOnly"===e?this.getConfiguration().readOnly:"firstLineNumber"===e?this.firstLine()+1:"indentWithTabs"===e?!this.editor.getModel().getOptions().insertSpaces:"function"==typeof this.editor.getConfiguration?this.editor.getRawConfiguration()[e]:this.editor.getRawOptions()[e]}dispatch(e,...t){const n=this.listeners[e];n&&n.forEach((e=>e(...t)))}on(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)}off(e,t){const n=this.listeners[e];n&&(this.listeners[e]=n.filter((e=>e!==t)))}firstLine(){return 0}lastLine(){return this.lineCount()-1}lineCount(){return this.editor.getModel().getLineCount()}defaultTextHeight(){return 1}getLine(e){if(e<0)return"";const t=this.editor.getModel().getLineCount();return e+1>t&&(e=t-1),this.editor.getModel().getLineContent(e+1)}getAnchorForSelection(e){return e.isEmpty()?e.getPosition():e.getDirection()===s.SelectionDirection.LTR?e.getStartPosition():e.getEndPosition()}getHeadForSelection(e){return e.isEmpty()?e.getPosition():e.getDirection()===s.SelectionDirection.LTR?e.getEndPosition():e.getStartPosition()}getCursor(e=null){if(!e)return y(this.editor.getPosition());const t=this.editor.getSelection();let n;return n=t.isEmpty()?t.getPosition():"anchor"===e?this.getAnchorForSelection(t):this.getHeadForSelection(t),y(n)}getRange(e,t){const n=v(e),r=v(t);return this.editor.getModel().getValueInRange(s.Range.fromPositions(n,r))}getSelection(){var e=[],t=this.editor;return t.getSelections().map((function(n){e.push(t.getModel().getValueInRange(n))})),e.join("\n")}replaceRange(e,t,n){const r=v(t),i=n?v(n):r;this.editor.executeEdits("vim",[{text:e,range:s.Range.fromPositions(r,i)}]),this.pushUndoStop()}pushUndoStop(){this.editor.pushUndoStop()}setCursor(e,t){let n=e;"object"!=typeof e&&(n={},n.line=e,n.ch=t);const r=this.editor.getModel().validatePosition(v(n));this.editor.setPosition(v(n)),this.editor.revealPosition(r)}somethingSelected(){return!this.editor.getSelection().isEmpty()}operation(e,t){return e()}listSelections(){const e=this.editor.getSelections();return!e.length||this.inVirtualSelectionMode?[{anchor:this.getCursor("anchor"),head:this.getCursor("head")}]:e.map((e=>(e.getPosition(),e.getStartPosition(),e.getEndPosition(),{anchor:this.clipPos(y(this.getAnchorForSelection(e))),head:this.clipPos(y(this.getHeadForSelection(e)))})))}focus(){this.editor.focus()}setSelections(e,t){const n=!!this.editor.getSelections().length,r=e.map(((e,t)=>{const{anchor:r,head:i}=e;return n?s.Selection.fromPositions(v(r),v(i)):s.Selection.fromPositions(v(i),v(r))}));if(t&&r[t]&&r.push(r.splice(t,1)[0]),!r.length)return;const i=r[0];let o;o=i.getDirection()===s.SelectionDirection.LTR?i.getEndPosition():i.getStartPosition(),this.editor.setSelections(r),this.editor.revealPosition(o)}setSelection(e,t){const n=s.Range.fromPositions(v(e),v(t));this.editor.setSelection(n)}getSelections(){const{editor:e}=this;return e.getSelections().map((t=>e.getModel().getValueInRange(t)))}replaceSelections(e){const{editor:t}=this;t.getSelections().forEach(((n,r)=>{t.executeEdits("vim",[{range:n,text:e[r],forceMoveMarkers:!1}])}))}toggleOverwrite(e){e?(this.enterVimMode(),this.replaceMode=!0):(this.leaveVimMode(),this.replaceMode=!1,this.replaceStack=[])}charCoords(e,t){return{top:e.line,left:e.ch}}coordsChar(e,t){}clipPos(e){return y(this.editor.getModel().validatePosition(v(e)))}setBookmark(e,t){const n=new C(this,this.$uid++,e.line,e.ch);return t&&t.insertLeft||(n.$insertRight=!0),this.marks[n.id]=n,n}getScrollInfo(){const{editor:e}=this,[t]=e.getVisibleRanges();return{left:0,top:t.startLineNumber-1,height:e.getModel().getLineCount(),clientHeight:t.endLineNumber-t.startLineNumber+1}}triggerEditorAction(e){this.editor.trigger("vim",e)}dispose(){this.dispatch("dispose"),this.removeOverlay(),k.keyMap.vim&&k.keyMap.vim.detach(this),this.disposables.forEach((e=>e.dispose()))}getInputField(){}getWrapperElement(){}enterVimMode(e=!0){this.ctxInsert.set(!1);const t=this.getConfiguration();this.initialCursorWidth=t.viewInfo.cursorWidth||0,this.editor.updateOptions({cursorWidth:t.fontInfo.typicalFullwidthCharacterWidth,cursorBlinking:"solid",cursorStyle:"block"})}leaveVimMode(){this.ctxInsert.set(!0),this.editor.updateOptions({cursorWidth:this.initialCursorWidth||0,cursorBlinking:"blink",cursorStyle:"line"})}virtualSelectionMode(){return this.inVirtualSelectionMode}markText(){return{clear:function(){},find:function(){}}}getUserVisibleLines(){const e=this.editor.getVisibleRanges();if(!e.length)return{top:0,bottom:0};const t={top:1/0,bottom:0};return e.reduce(((e,t)=>(t.startLineNumber<e.top&&(e.top=t.startLineNumber),t.endLineNumber>e.bottom&&(e.bottom=t.endLineNumber),e)),t),t.top-=1,t.bottom-=1,t}findPosV(e,t,n){const{editor:r}=this;let i=t,o=n;const a=v(e);if("page"===n){const e=r.getLayoutInfo().height,t=this.getConfiguration().fontInfo.lineHeight;i*=Math.floor(e/t),o="line"}return"line"===o&&(a.lineNumber+=i),y(a)}findMatchingBracket(e){const t=v(e),n=this.editor.getModel();let r;return r=n.bracketPairs?n.bracketPairs.matchBracket(t):n.matchBracket?.(t),r&&2===r.length?{to:y(r[1].getStartPosition())}:{to:null}}findFirstNonWhiteSpaceCharacter(e){return this.editor.getModel().getLineFirstNonWhitespaceColumn(e+1)-1}scrollTo(e,t){(e||t)&&(e||(t<0&&(t=this.editor.getPosition().lineNumber-t),this.editor.setScrollTop(this.editor.getTopForLineNumber(t+1))))}moveCurrentLineTo(e){const{editor:t}=this,n=t.getPosition(),r=s.Range.fromPositions(n,n);switch(e){case"top":return void t.revealRangeAtTop(r);case"center":return void t.revealRangeInCenter(r);case"bottom":return void t._revealRange?.(r,4)}}getSearchCursor(e,t){let n=!1,r=!1;e instanceof RegExp&&!e.global&&(n=!e.ignoreCase,e=e.source,r=!0),null==t.ch&&(t.ch=Number.MAX_VALUE);const i=v(t),o=this,{editor:a}=this;let s=null;const l=a.getModel(),c=l.findMatches(e,!1,r,n)||[];return{getMatches:()=>c,findNext(){return this.find(!1)},findPrevious(){return this.find(!0)},jumpTo(e){if(!c||!c.length)return!1;var t=c[e];return s=t.range,o.highlightRanges([s],"currentFindMatch"),o.highlightRanges(c.map((e=>e.range)).filter((e=>!e.equalsRange(s)))),s},find(t){if(!c||!c.length)return!1;let a;if(t){const t=s?s.getStartPosition():i;if(a=l.findPreviousMatch(e,t,r,n),!a||!a.range.getStartPosition().isBeforeOrEqual(t))return!1}else{const t=s?l.getPositionAt(l.getOffsetAt(s.getEndPosition())+1):i;if(a=l.findNextMatch(e,t,r,n),!a||!t.isBeforeOrEqual(a.range.getStartPosition()))return!1}return s=a.range,o.highlightRanges([s],"currentFindMatch"),o.highlightRanges(c.map((e=>e.range)).filter((e=>!e.equalsRange(s)))),s},from:()=>s&&y(s.getStartPosition()),to:()=>s&&y(s.getEndPosition()),replace(e){s&&(a.executeEdits("vim",[{range:s,text:e,forceMoveMarkers:!0}],(function(e){const{endLineNumber:t,endColumn:n}=e[0].range;s=s.setEndPosition(t,n)})),a.setPosition(s.getStartPosition()))}}}highlightRanges(e,t="findMatch"){const n=`decoration${t}`;return this[n]=this.editor.deltaDecorations(this[n]||[],e.map((e=>({range:e,options:{stickiness:s.editor.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges,zIndex:13,className:t,showIfCollapsed:!0}})))),this[n]}addOverlay({query:e},t,n){let r=!1,i=!1;e&&e instanceof RegExp&&!e.global&&(i=!0,r=!e.ignoreCase,e=e.source);const o=this.editor.getModel().findNextMatch(e,this.editor.getPosition(),i,r);o&&o.range&&this.highlightRanges([o.range])}removeOverlay(){["currentFindMatch","findMatch"].forEach((e=>{this.editor.deltaDecorations(this[`decoration${e}`]||[],[])}))}scrollIntoView(e){e&&this.editor.revealPosition(v(e))}moveH(e,t){if("char"!==t)return;const n=this.editor.getPosition();this.editor.setPosition(new s.Position(n.lineNumber,n.column+e))}scanForBracket(e,t,n,r){const{bracketRegex:i}=r;let o=v(e);const a=this.editor.getModel(),s=(-1===t?a.findPreviousMatch:a.findNextMatch).bind(a),l=[];let c=0;for(;;){if(c>10)return;const e=s(i.source,o,!0,!0,null,!0),n=e.matches[0];if(void 0===e)return;const r=k.matchingBrackets[n];if(r&&">"===r.charAt(1)==t>0)l.push(n);else{if(0===l.length)return{pos:y(e.range.getStartPosition())};l.pop()}o=a.getPositionAt(a.getOffsetAt(e.range.getStartPosition())+t),c+=1}}indexFromPos(e){return this.editor.getModel().getOffsetAt(v(e))}posFromIndex(e){return y(this.editor.getModel().getPositionAt(e))}indentLine(e,t=!0){const{editor:n}=this;let r;r=n._getViewModel?n._getViewModel().cursorConfig:n._getCursors().context.config;const i=new s.Position(e+1,1),o=s.Selection.fromPositions(i,i);n.executeCommand("vim",new l.Y(o,{isUnshift:!t,tabSize:r.tabSize,indentSize:r.indentSize,insertSpaces:r.insertSpaces,useTabStops:r.useTabStops,autoIndent:r.autoIndent}))}setStatusBar(e){this.statusBar=e}openDialog(e,t,n){if(this.statusBar)return this.statusBar.setSec(e,t,n)}openNotification(e){this.statusBar&&this.statusBar.showNotification(e)}smartIndent(){this.editor.getAction("editor.action.formatSelection").run()}moveCursorTo(e){const t=this.editor.getPosition();"start"===e?t.column=1:"end"===e&&(t.column=this.editor.getModel().getLineMaxColumn(t.lineNumber)),this.editor.setPosition(t)}execCommand(e){switch(e){case"goLineLeft":this.moveCursorTo("start");break;case"goLineRight":this.moveCursorTo("end");break;case"indentAuto":this.smartIndent()}}}const b=k;var A=b.Pos;function w(e,t){var n=e.state.vim;if(!n||n.insertMode)return t.head;var r=n.sel.head;return r?n.visualBlock&&t.head.line!=r.line?void 0:t.from()!=t.anchor||t.empty()||t.head.line!=r.line||t.head.ch==r.ch?t.head:new A(t.head.line,t.head.ch-1):t.head}var I=[{keys:"<Left>",type:"keyToKey",toKeys:"h"},{keys:"<Right>",type:"keyToKey",toKeys:"l"},{keys:"<Up>",type:"keyToKey",toKeys:"k"},{keys:"<Down>",type:"keyToKey",toKeys:"j"},{keys:"g<Up>",type:"keyToKey",toKeys:"gk"},{keys:"g<Down>",type:"keyToKey",toKeys:"gj"},{keys:"<Space>",type:"keyToKey",toKeys:"l"},{keys:"<BS>",type:"keyToKey",toKeys:"h",context:"normal"},{keys:"<Del>",type:"keyToKey",toKeys:"x",context:"normal"},{keys:"<C-Space>",type:"keyToKey",toKeys:"W"},{keys:"<C-BS>",type:"keyToKey",toKeys:"B",context:"normal"},{keys:"<S-Space>",type:"keyToKey",toKeys:"w"},{keys:"<S-BS>",type:"keyToKey",toKeys:"b",context:"normal"},{keys:"<C-n>",type:"keyToKey",toKeys:"j"},{keys:"<C-p>",type:"keyToKey",toKeys:"k"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"c",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"VdO",context:"visual"},{keys:"<Home>",type:"keyToKey",toKeys:"0"},{keys:"<End>",type:"keyToKey",toKeys:"$"},{keys:"<PageUp>",type:"keyToKey",toKeys:"<C-b>"},{keys:"<PageDown>",type:"keyToKey",toKeys:"<C-f>"},{keys:"<CR>",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"<Ins>",type:"keyToKey",toKeys:"i",context:"normal"},{keys:"<Ins>",type:"action",action:"toggleOverwrite",context:"insert"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"(",type:"motion",motion:"moveBySentence",motionArgs:{forward:!1}},{keys:")",type:"motion",motion:"moveBySentence",motionArgs:{forward:!0}},{keys:"<C-f>",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"<C-b>",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"<C-d>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"<C-u>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"g$",type:"motion",motion:"moveToEndOfDisplayLine"},{keys:"g^",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"g0",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'<character>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`<character>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:"=",type:"operator",operator:"indentAuto"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"gn",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!0}},{keys:"gN",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!1}},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"expandToLine",motionArgs:{linewise:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"<C-u>",type:"operatorMotion",operator:"delete",motion:"moveToStartOfLine",context:"insert"},{keys:"<C-w>",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"<C-w>",type:"idle",context:"normal"},{keys:"<C-i>",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"<C-o>",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"<C-e>",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"<C-y>",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"gi",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"lastEdit"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"gI",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"bol"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"<C-v>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"<C-q>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"gJ",type:"action",action:"joinLines",actionArgs:{keepSpaces:!0},isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r<character>",type:"action",action:"replace",isEdit:!0},{keys:"@<character>",type:"action",action:"replayMacro"},{keys:"q<character>",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0},context:"normal"},{keys:"R",type:"operator",operator:"change",operatorArgs:{linewise:!0,fullLine:!0},context:"visual",exitVisualBlock:!0},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"<C-r>",type:"action",action:"redo"},{keys:"m<character>",type:"action",action:"setMark"},{keys:'"<character>',type:"action",action:"setRegister"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z<CR>",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"<C-a>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"<C-x>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"<C-t>",type:"action",action:"indent",actionArgs:{indentRight:!0},context:"insert"},{keys:"<C-d>",type:"action",action:"indent",actionArgs:{indentRight:!1},context:"insert"},{keys:"a<character>",type:"motion",motion:"textObjectManipulation"},{keys:"i<character>",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],x=I.length,T=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"unmap"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"nohlsearch",shortName:"noh"},{name:"yank",shortName:"y"},{name:"delmarks",shortName:"delm"},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"vglobal",shortName:"v"},{name:"global",shortName:"g"}];b.Vim=function(){function e(e,n){e.attached=!1,this==b.keyMap.vim&&(e.options.$customCursor=null),n&&n.attach==t||function(e){e.setOption("disableInput",!1),e.off("cursorActivity",Qe),e.state.vim=null,Fe&&clearTimeout(Fe),e.leaveVimMode()}(e)}function t(e,n){this==b.keyMap.vim&&(e.attached=!0,e.curOp&&(e.curOp.selectionChanged=!0),e.options.$customCursor=w),n&&n.attach==t||function(e){e.setOption("disableInput",!0),e.setOption("showCursorWhenSelecting",!1),b.signal(e,"vim-mode-change",{mode:"normal"}),e.on("cursorActivity",Qe),B(e),e.enterVimMode()}(e)}function n(e,t){if(t){if(this[e])return this[e];var n=function(e){if("'"==e.charAt(0))return e.charAt(1);if("AltGraph"===e)return!1;var t=e.split(/-(?!$)/),n=t[t.length-1];if(1==t.length&&1==t[0].length)return!1;if(2==t.length&&"Shift"==t[0]&&1==n.length)return!1;for(var o=!1,a=0;a<t.length;a++){var s=t[a];s in r?t[a]=r[s]:o=!0,s in i&&(t[a]=i[s])}return!!o&&(y(n)&&(t[t.length-1]=n.toLowerCase()),"<"+t.join("-")+">")}(e);if(!n)return!1;var o=U.findKey(t,n);return"function"==typeof o&&b.signal(t,"vim-keypress",n),o}}b.defineOption("vimMode",!1,(function(e,t,n){t&&"vim"!=e.getOption("keyMap")?e.setOption("keyMap","vim"):!t&&n!=b.Init&&/^vim/.test(e.getOption("keyMap"))&&e.setOption("keyMap","default")}));var r={Shift:"S",Ctrl:"C",Alt:"A",Cmd:"D",Mod:"A",CapsLock:""},i={Enter:"CR",Backspace:"BS",Delete:"Del",Insert:"Ins"},o=/[\d]/,a=[b.isWordChar,function(e){return e&&!b.isWordChar(e)&&!/\s/.test(e)}],s=[function(e){return/\S/.test(e)}];function l(e,t){for(var n=[],r=e;r<e+t;r++)n.push(String.fromCharCode(r));return n}var c,u=l(65,26),d=l(97,26),h=l(48,10),p=[].concat(u,d,h,["<",">"]),g=[].concat(u,d,h,["-",'"',".",":","_","/"]);try{c=new RegExp("^[\\p{Lu}]$","u")}catch(e){c=/^[A-Z]$/}function m(e,t){return t>=e.firstLine()&&t<=e.lastLine()}function f(e){return/^[a-z]$/.test(e)}function y(e){return c.test(e)}function v(e){return/^\s*$/.test(e)}function C(e){return-1!=".?!".indexOf(e)}function S(e,t){for(var n=0;n<t.length;n++)if(t[n]==e)return!0;return!1}var k={};function M(e,t,n,r,i){if(void 0===t&&!i)throw Error("defaultValue is required unless callback is provided");if(n||(n="string"),k[e]={type:n,defaultValue:t,callback:i},r)for(var o=0;o<r.length;o++)k[r[o]]=k[e];t&&E(e,t)}function E(e,t,n,r){var i=k[e],o=(r=r||{}).scope;if(!i)return new Error("Unknown option: "+e);if("boolean"==i.type){if(t&&!0!==t)return new Error("Invalid argument: "+e+"="+t);!1!==t&&(t=!0)}i.callback?("local"!==o&&i.callback(t,void 0),"global"!==o&&n&&i.callback(t,n)):("local"!==o&&(i.value="boolean"==i.type?!!t:t),"global"!==o&&n&&(n.state.vim.options[e]={value:t}))}function O(e,t,n){var r=k[e],i=(n=n||{}).scope;if(!r)return new Error("Unknown option: "+e);if(r.callback){var o=t&&r.callback(void 0,t);return"global"!==i&&void 0!==o?o:"local"!==i?r.callback():void 0}return((o="global"!==i&&t&&t.state.vim.options[e])||"local"!==i&&r||{}).value}M("filetype",void 0,"string",["ft"],(function(e,t){if(void 0!==t){if(void 0===e)return"null"==(n=t.getOption("mode"))?"":n;var n=""==e?"null":e;t.setOption("mode",n)}}));var N,R,L=function(){var e=100,t=-1,n=0,r=0,i=new Array(e);function o(o,a){(t+=a)>n?t=n:t<r&&(t=r);var s=i[(e+t)%e];if(s&&!s.find()){var l,c=a>0?1:-1,u=o.getCursor();do{if((s=i[(e+(t+=c))%e])&&(l=s.find())&&!te(u,l))break}while(t<n&&t>r)}return s}return{cachedCursor:void 0,add:function(o,a,s){var l=i[t%e];function c(n){var r=++t%e,a=i[r];a&&a.clear(),i[r]=o.setBookmark(n)}if(l){var u=l.find();u&&!te(u,a)&&c(a)}else c(a);c(s),n=t,(r=t-e+1)<0&&(r=0)},find:function(e,n){var r=t,i=o(e,n);return t=r,i&&i.find()},move:o}},D=function(e){return e?{changes:e.changes,expectCursorActivityForChange:e.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};function P(){this.latestRegister=void 0,this.isPlaying=!1,this.isRecording=!1,this.replaySearchQueries=[],this.onRecordingDone=void 0,this.lastInsertModeChanges=D()}function B(e){return e.state.vim||(e.state.vim={inputState:new _,lastEditInputState:void 0,lastEditActionCommand:void 0,lastHPos:-1,lastHSPos:-1,lastMotion:null,marks:{},insertMode:!1,insertModeRepeat:void 0,visualMode:!1,visualLine:!1,visualBlock:!1,lastSelection:null,lastPastedText:null,sel:{},options:{}}),e.state.vim}function F(){for(var e in N={searchQuery:null,searchIsReversed:!1,lastSubstituteReplacePart:void 0,jumpList:L(),macroModeState:new P,lastCharacterSearch:{increment:0,forward:!0,selectedCharacter:""},registerController:new W({}),searchHistoryController:new q,exCommandHistoryController:new q},k){var t=k[e];t.value=t.defaultValue}}P.prototype={exitMacroRecordMode:function(){var e=N.macroModeState;e.onRecordingDone&&e.onRecordingDone(),e.onRecordingDone=void 0,e.isRecording=!1},enterMacroRecordMode:function(e,t){var n=N.registerController.getRegister(t);n&&(n.clear(),this.latestRegister=t,e.openDialog&&(this.onRecordingDone=e.openDialog(document.createTextNode("(recording)["+t+"]"),null,{bottom:!0})),this.isRecording=!0)}};var U={buildKeyMap:function(){},getRegisterController:function(){return N.registerController},resetVimGlobalState_:F,getVimGlobalState_:function(){return N},maybeInitVimState_:B,suppressErrorLogging:!1,InsertModeKey:Ze,map:function(e,t,n){je.map(e,t,n)},unmap:function(e,t){return je.unmap(e,t)},noremap:function(e,t,n){function r(e){return e?[e]:["normal","insert","visual"]}for(var i=r(n),o=I.length,a=o-x;a<o&&i.length;a++){var s=I[a];if(!(s.keys!=t||n&&s.context&&s.context!==n||"ex"===s.type.substr(0,2)||"key"===s.type.substr(0,3))){var l={};for(var c in s)l[c]=s[c];l.keys=e,n&&!l.context&&(l.context=n),this._mapCommand(l);var u=r(s.context);i=i.filter((function(e){return-1===u.indexOf(e)}))}}},mapclear:function(e){var t=I.length,n=x,r=I.slice(0,t-n);if(I=I.slice(t-n),e)for(var i=r.length-1;i>=0;i--){var o=r[i];if(e!==o.context)if(o.context)this._mapCommand(o);else{var a=["normal","insert","visual"];for(var s in a)if(a[s]!==e){var l={};for(var c in o)l[c]=o[c];l.context=a[s],this._mapCommand(l)}}}},setOption:E,getOption:O,defineOption:M,defineEx:function(e,t,n){if(t){if(0!==e.indexOf(t))throw new Error('(Vim.defineEx) "'+t+'" is not a prefix of "'+e+'", command not registered')}else t=e;Ye[e]=n,je.commandMap_[t]={name:e,shortName:t,type:"api"}},handleKey:function(e,t,n){var r=this.findKey(e,t,n);if("function"==typeof r)return r()},findKey:function(e,t,n){var r,i=B(e);function o(){if("<Esc>"==t){if(i.visualMode)ge(e);else{if(!i.insertMode)return;Ge(e)}return H(e),!0}}return!1===(r=i.insertMode?function(){if(o())return!0;for(var n=i.inputState.keyBuffer=i.inputState.keyBuffer+t,r=1==t.length,a=V.matchCommand(n,I,i.inputState,"insert");n.length>1&&"full"!=a.type;){n=i.inputState.keyBuffer=n.slice(1);var s=V.matchCommand(n,I,i.inputState,"insert");"none"!=s.type&&(a=s)}if("none"==a.type)return H(e),!1;if("partial"==a.type)return R&&window.clearTimeout(R),R=window.setTimeout((function(){i.insertMode&&i.inputState.keyBuffer&&H(e)}),O("insertModeEscKeysTimeout")),!r;if(R&&window.clearTimeout(R),r){for(var l=e.listSelections(),c=0;c<l.length;c++){var u=l[c].head;e.replaceRange("",Q(u,0,-(n.length-1)),u,"+input")}N.macroModeState.lastInsertModeChanges.changes.pop()}return H(e),a.command}():function(){if(function(){var r=N.macroModeState;if(r.isRecording){if("q"==t)return r.exitMacroRecordMode(),H(e),!0;"mapping"!=n&&function(e,t){if(!e.isPlaying){var n=e.latestRegister,r=N.registerController.getRegister(n);r&&r.pushText(t)}}(r,t)}}()||o())return!0;var r=i.inputState.keyBuffer=i.inputState.keyBuffer+t;if(/^[1-9]\d*$/.test(r))return!0;if(!(l=/^(\d*)(.*)$/.exec(r)))return H(e),!1;var a=i.visualMode?"visual":"normal",s=l[2]||l[1];i.inputState.operatorShortcut&&i.inputState.operatorShortcut.slice(-1)==s&&(s=i.inputState.operatorShortcut);var l,c=V.matchCommand(s,I,i.inputState,a);return"none"==c.type?(H(e),!1):"partial"==c.type||(i.inputState.keyBuffer="",(l=/^(\d*)(.*)$/.exec(r))[1]&&"0"!=l[1]&&i.inputState.pushRepeatDigit(l[1]),c.command)}())?i.insertMode||1!==t.length?void 0:function(){return!0}:!0===r?function(){return!0}:function(){return e.operation((function(){e.curOp.isVimOp=!0;try{"keyToKey"==r.type?function(n){for(var r;n;)r=/<\w+-.+?>|<\w+>|./.exec(n),t=r[0],n=n.substring(r.index+t.length),U.handleKey(e,t,"mapping")}(r.toKeys):V.processCommand(e,i,r)}catch(t){throw e.state.vim=void 0,B(e),U.suppressErrorLogging||console.log(t),t}return!0}))}},handleEx:function(e,t){je.processCommand(e,t)},defineMotion:function(e,t){Y[e]=t},defineAction:function(e,t){z[e]=t},defineOperator:function(e,t){G[e]=t},mapCommand:function(e,t,n,r,i){var o={keys:e,type:t};for(var a in o[t]=n,o[t+"Args"]=r,i)o[a]=i[a];ze(o)},_mapCommand:ze,defineRegister:function(e,t){var n=N.registerController.registers;if(!e||1!=e.length)throw Error("Register name must be 1 character");if(n[e])throw Error("Register already defined "+e);n[e]=t,g.push(e)},exitVisualMode:ge,exitInsertMode:Ge};function _(){this.prefixRepeat=[],this.motionRepeat=[],this.operator=null,this.operatorArgs=null,this.motion=null,this.motionArgs=null,this.keyBuffer=[],this.registerName=null}function H(e,t){e.state.vim.inputState=new _,b.signal(e,"vim-command-done",t)}function K(e,t,n){this.clear(),this.keyBuffer=[e||""],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!!t,this.blockwise=!!n}function W(e){this.registers=e,this.unnamedRegister=e['"']=new K,e["."]=new K,e[":"]=new K,e["/"]=new K}function q(){this.historyBuffer=[],this.iterator=0,this.initialPrefix=null}_.prototype.pushRepeatDigit=function(e){this.operator?this.motionRepeat=this.motionRepeat.concat(e):this.prefixRepeat=this.prefixRepeat.concat(e)},_.prototype.getRepeat=function(){var e=0;return(this.prefixRepeat.length>0||this.motionRepeat.length>0)&&(e=1,this.prefixRepeat.length>0&&(e*=parseInt(this.prefixRepeat.join(""),10)),this.motionRepeat.length>0&&(e*=parseInt(this.motionRepeat.join(""),10))),e},K.prototype={setText:function(e,t,n){this.keyBuffer=[e||""],this.linewise=!!t,this.blockwise=!!n},pushText:function(e,t){t&&(this.linewise||this.keyBuffer.push("\n"),this.linewise=!0),this.keyBuffer.push(e)},pushInsertModeChanges:function(e){this.insertModeChanges.push(D(e))},pushSearchQuery:function(e){this.searchQueries.push(e)},clear:function(){this.keyBuffer=[],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!1},toString:function(){return this.keyBuffer.join("")}},W.prototype={pushText:function(e,t,n,r,i){if("_"!==e){r&&"\n"!==n.charAt(n.length-1)&&(n+="\n");var o=this.isValidRegister(e)?this.getRegister(e):null;if(o)y(e)?o.pushText(n,r):o.setText(n,r,i),this.unnamedRegister.setText(o.toString(),r);else{switch(t){case"yank":this.registers[0]=new K(n,r,i);break;case"delete":case"change":-1==n.indexOf("\n")?this.registers["-"]=new K(n,r):(this.shiftNumericRegisters_(),this.registers[1]=new K(n,r))}this.unnamedRegister.setText(n,r,i)}}},getRegister:function(e){return this.isValidRegister(e)?(e=e.toLowerCase(),this.registers[e]||(this.registers[e]=new K),this.registers[e]):this.unnamedRegister},isValidRegister:function(e){return e&&S(e,g)},shiftNumericRegisters_:function(){for(var e=9;e>=2;e--)this.registers[e]=this.getRegister(""+(e-1))}},q.prototype={nextMatch:function(e,t){var n=this.historyBuffer,r=t?-1:1;null===this.initialPrefix&&(this.initialPrefix=e);for(var i=this.iterator+r;t?i>=0:i<n.length;i+=r)for(var o=n[i],a=0;a<=o.length;a++)if(this.initialPrefix==o.substring(0,a))return this.iterator=i,o;return i>=n.length?(this.iterator=n.length,this.initialPrefix):i<0?e:void 0},pushInput:function(e){var t=this.historyBuffer.indexOf(e);t>-1&&this.historyBuffer.splice(t,1),e.length&&this.historyBuffer.push(e)},reset:function(){this.initialPrefix=null,this.iterator=this.historyBuffer.length}};var V={matchCommand:function(e,t,n,r){var i,o=function(e,t,n,r){for(var i,o=[],a=[],s=0;s<t.length;s++){var l=t[s];"insert"==n&&"insert"!=l.context||l.context&&l.context!=n||r.operator&&"action"==l.type||!(i=Z(e,l.keys))||("partial"==i&&o.push(l),"full"==i&&a.push(l))}return{partial:o.length&&o,full:a.length&&a}}(e,t,r,n);if(!o.full&&!o.partial)return{type:"none"};if(!o.full&&o.partial)return{type:"partial"};for(var a=0;a<o.full.length;a++){var s=o.full[a];i||(i=s)}if("<character>"==i.keys.slice(-11)){var l=function(e){var t=/^.*(<[^>]+>)$/.exec(e),n=t?t[1]:e.slice(-1);if(n.length>1)switch(n){case"<CR>":n="\n";break;case"<Space>":n=" ";break;default:n=""}return n}(e);if(!l)return{type:"none"};n.selectedCharacter=l}return{type:"full",command:i}},processCommand:function(e,t,n){switch(t.inputState.repeatOverride=n.repeatOverride,n.type){case"motion":this.processMotion(e,t,n);break;case"operator":this.processOperator(e,t,n);break;case"operatorMotion":this.processOperatorMotion(e,t,n);break;case"action":this.processAction(e,t,n);break;case"search":this.processSearch(e,t,n);break;case"ex":case"keyToEx":this.processEx(e,t,n)}},processMotion:function(e,t,n){t.inputState.motion=n.motion,t.inputState.motionArgs=$(n.motionArgs),this.evalInput(e,t)},processOperator:function(e,t,n){var r=t.inputState;if(r.operator){if(r.operator==n.operator)return r.motion="expandToLine",r.motionArgs={linewise:!0},void this.evalInput(e,t);H(e)}r.operator=n.operator,r.operatorArgs=$(n.operatorArgs),n.keys.length>1&&(r.operatorShortcut=n.keys),n.exitVisualBlock&&(t.visualBlock=!1,he(e)),t.visualMode&&this.evalInput(e,t)},processOperatorMotion:function(e,t,n){var r=t.visualMode,i=$(n.operatorMotionArgs);i&&r&&i.visualLine&&(t.visualLine=!0),this.processOperator(e,t,n),r||this.processMotion(e,t,n)},processAction:function(e,t,n){var r=t.inputState,i=r.getRepeat(),o=!!i,a=$(n.actionArgs)||{};r.selectedCharacter&&(a.selectedCharacter=r.selectedCharacter),n.operator&&this.processOperator(e,t,n),n.motion&&this.processMotion(e,t,n),(n.motion||n.operator)&&this.evalInput(e,t),a.repeat=i||1,a.repeatIsExplicit=o,a.registerName=r.registerName,H(e),t.lastMotion=null,n.isEdit&&this.recordLastEdit(t,r,n),z[n.action](e,a,t)},processSearch:function(e,t,n){if(e.getSearchCursor){var r=n.searchArgs.forward,i=n.searchArgs.wholeWordOnly;Me(e).setReversed(!r);var o=r?"/":"?",a=Me(e).getQuery(),s=e.getScrollInfo();switch(n.searchArgs.querySrc){case"prompt":var l=N.macroModeState;l.isPlaying?h(d=l.replaySearchQueries.shift(),!0,!1):Pe(e,{onClose:function(t){e.scrollTo(s.left,s.top),h(t,!0,!0);var n=N.macroModeState;n.isRecording&&function(e,t){if(!e.isPlaying){var n=e.latestRegister,r=N.registerController.getRegister(n);r&&r.pushSearchQuery&&r.pushSearchQuery(t)}}(n,t)},prefix:o,desc:"(JavaScript regexp)",onKeyUp:function(t,n,i){var o,a,l,c=b.keyName(t);"Up"==c||"Down"==c?(o="Up"==c,a=t.target?t.target.selectionEnd:0,i(n=N.searchHistoryController.nextMatch(n,o)||""),a&&t.target&&(t.target.selectionEnd=t.target.selectionStart=Math.min(a,t.target.value.length))):"Left"!=c&&"Right"!=c&&"Ctrl"!=c&&"Alt"!=c&&"Shift"!=c&&N.searchHistoryController.reset();try{l=Be(e,n,!0,!0)}catch(t){}l?e.scrollIntoView(_e(e,!r,l),30):(He(e),e.scrollTo(s.left,s.top))},onKeyDown:function(t,n,r){var i=b.keyName(t);"Esc"==i||"Ctrl-C"==i||"Ctrl-["==i||"Backspace"==i&&""==n?(N.searchHistoryController.pushInput(n),N.searchHistoryController.reset(),Be(e,a),He(e),e.scrollTo(s.left,s.top),b.e_stop(t),H(e),r(),e.focus()):"Up"==i||"Down"==i?b.e_stop(t):"Ctrl-U"==i&&(b.e_stop(t),r(""))}});break;case"wordUnderCursor":var c=fe(e,!1,0,!1,!0),u=!0;if(c||(c=fe(e,!1,0,!1,!1),u=!1),!c)return;var d=e.getLine(c.start.line).substring(c.start.ch,c.end.ch);d=u&&i?"\\b"+d+"\\b":d.replace(/([.?*+$\[\]\/\\(){}|\-])/g,"\\$1"),N.jumpList.cachedCursor=e.getCursor(),e.setCursor(c.start),h(d,!0,!1)}}function h(r,i,o){N.searchHistoryController.pushInput(r),N.searchHistoryController.reset();try{Be(e,r,i,o)}catch(t){return De(e,"Invalid regex: "+r),void H(e)}V.processMotion(e,t,{type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:n.searchArgs.toJumplist}})}},processEx:function(e,t,n){function r(t){N.exCommandHistoryController.pushInput(t),N.exCommandHistoryController.reset(),je.processCommand(e,t)}function i(t,n,r){var i,o,a=b.keyName(t);("Esc"==a||"Ctrl-C"==a||"Ctrl-["==a||"Backspace"==a&&""==n)&&(N.exCommandHistoryController.pushInput(n),N.exCommandHistoryController.reset(),b.e_stop(t),H(e),r(),e.focus()),"Up"==a||"Down"==a?(b.e_stop(t),i="Up"==a,o=t.target?t.target.selectionEnd:0,r(n=N.exCommandHistoryController.nextMatch(n,i)||""),o&&t.target&&(t.target.selectionEnd=t.target.selectionStart=Math.min(o,t.target.value.length))):"Ctrl-U"==a?(b.e_stop(t),r("")):"Left"!=a&&"Right"!=a&&"Ctrl"!=a&&"Alt"!=a&&"Shift"!=a&&N.exCommandHistoryController.reset()}"keyToEx"==n.type?je.processCommand(e,n.exArgs.input):t.visualMode?Pe(e,{onClose:r,prefix:":",value:"'<,'>",onKeyDown:i,selectValueOnOpen:!1}):Pe(e,{onClose:r,prefix:":",onKeyDown:i})},evalInput:function(e,t){var n,r,i,o=t.inputState,a=o.motion,s=o.motionArgs||{},l=o.operator,c=o.operatorArgs||{},u=o.registerName,d=t.sel,h=ee(t.visualMode?J(e,d.head):e.getCursor("head")),p=ee(t.visualMode?J(e,d.anchor):e.getCursor("anchor")),g=ee(h),m=ee(p);if(l&&this.recordLastEdit(t,o),(i=void 0!==o.repeatOverride?o.repeatOverride:o.getRepeat())>0&&s.explicitRepeat?s.repeatIsExplicit=!0:(s.noRepeat||!s.explicitRepeat&&0===i)&&(i=1,s.repeatIsExplicit=!1),o.selectedCharacter&&(s.selectedCharacter=c.selectedCharacter=o.selectedCharacter),s.repeat=i,H(e),a){var f=Y[a](e,h,s,t,o);if(t.lastMotion=Y[a],!f)return;if(s.toJumplist){var y=N.jumpList,C=y.cachedCursor;C?(ye(e,C,f),delete y.cachedCursor):ye(e,h,f)}f instanceof Array?(r=f[0],n=f[1]):n=f,n||(n=ee(h)),t.visualMode?(t.visualBlock&&n.ch===1/0||(n=J(e,n)),r&&(r=J(e,r)),r=r||m,d.anchor=r,d.head=n,he(e),we(e,t,"<",ne(r,n)?r:n),we(e,t,">",ne(r,n)?n:r)):l||(n=J(e,n),e.setCursor(n.line,n.ch))}if(l){if(c.lastSel){r=m;var S=c.lastSel,k=Math.abs(S.head.line-S.anchor.line),b=Math.abs(S.head.ch-S.anchor.ch);n=S.visualLine?new A(m.line+k,m.ch):S.visualBlock?new A(m.line+k,m.ch+b):S.head.line==S.anchor.line?new A(m.line,m.ch+b):new A(m.line+k,m.ch),t.visualMode=!0,t.visualLine=S.visualLine,t.visualBlock=S.visualBlock,d=t.sel={anchor:r,head:n},he(e)}else t.visualMode&&(c.lastSel={anchor:ee(d.anchor),head:ee(d.head),visualBlock:t.visualBlock,visualLine:t.visualLine});var w,I,x,T,M;if(t.visualMode){if(w=re(d.head,d.anchor),I=ie(d.head,d.anchor),x=t.visualLine||c.linewise,M=pe(e,{anchor:w,head:I},T=t.visualBlock?"block":x?"line":"char"),x){var E=M.ranges;if("block"==T)for(var O=0;O<E.length;O++)E[O].head.ch=ae(e,E[O].head.line);else"line"==T&&(E[0].head=new A(E[0].head.line+1,0))}}else{if(w=ee(r||m),ne(I=ee(n||g),w)){var R=w;w=I,I=R}(x=s.linewise||c.linewise)?function(e,t,n){t.ch=0,n.ch=0,n.line++}(0,w,I):s.forward&&function(e,t,n){var r=e.getRange(t,n);if(/\n\s*$/.test(r)){var i=r.split("\n");i.pop();for(var o=i.pop();i.length>0&&o&&v(o);o=i.pop())n.line--,n.ch=0;o?(n.line--,n.ch=ae(e,n.line)):n.ch=0}}(e,w,I),M=pe(e,{anchor:w,head:I},T="char",!s.inclusive||x)}e.setSelections(M.ranges,M.primary),t.lastMotion=null,c.repeat=i,c.registerName=u,c.linewise=x;var L=G[l](e,c,M.ranges,m,n);t.visualMode&&ge(e,null!=L),L&&e.setCursor(L)}},recordLastEdit:function(e,t,n){var r=N.macroModeState;r.isPlaying||(e.lastEditInputState=t,e.lastEditActionCommand=n,r.lastInsertModeChanges.changes=[],r.lastInsertModeChanges.expectCursorActivityForChange=!1,r.lastInsertModeChanges.visualBlock=e.visualBlock?e.sel.head.line-e.sel.anchor.line:0)}},Y={moveToTopLine:function(e,t,n){var r=Ke(e).top+n.repeat-1;return new A(r,me(e.getLine(r)))},moveToMiddleLine:function(e){var t=Ke(e),n=Math.floor(.5*(t.top+t.bottom));return new A(n,me(e.getLine(n)))},moveToBottomLine:function(e,t,n){var r=Ke(e).bottom-n.repeat+1;return new A(r,me(e.getLine(r)))},expandToLine:function(e,t,n){return new A(t.line+n.repeat-1,1/0)},findNext:function(e,t,n){var r=Me(e),i=r.getQuery();if(i){var o=!n.forward;return o=r.isReversed()?!o:o,Ue(e,i),_e(e,o,i,n.repeat)}},findAndSelectNextInclusive:function(e,t,n,r,i){var o=Me(e),a=o.getQuery();if(a){var s=!n.forward,l=function(e,t,n,r,i){return void 0===r&&(r=1),e.operation((function(){var o=e.getCursor(),a=e.getSearchCursor(n,o),s=a.find(!t);!i.visualMode&&s&&te(a.from(),o)&&a.find(!t);for(var l=0;l<r;l++)if(!(s=a.find(t))&&!(a=e.getSearchCursor(n,t?new A(e.lastLine()):new A(e.firstLine(),0))).find(t))return;return[a.from(),a.to()]}))}(e,s=o.isReversed()?!s:s,a,n.repeat,r);if(l){if(i.operator)return l;var c=l[0],u=new A(l[1].line,l[1].ch-1);if(r.visualMode){(r.visualLine||r.visualBlock)&&(r.visualLine=!1,r.visualBlock=!1,b.signal(e,"vim-mode-change",{mode:"visual",subMode:""}));var d=r.sel.anchor;if(d)return o.isReversed()?n.forward?[d,c]:[d,u]:n.forward?[d,u]:[d,c]}else r.visualMode=!0,r.visualLine=!1,r.visualBlock=!1,b.signal(e,"vim-mode-change",{mode:"visual",subMode:""});return s?[u,c]:[c,u]}}},goToMark:function(e,t,n,r){var i=We(e,r,n.selectedCharacter);return i?n.linewise?{line:i.line,ch:me(e.getLine(i.line))}:i:null},moveToOtherHighlightedEnd:function(e,t,n,r){if(r.visualBlock&&n.sameLine){var i=r.sel;return[J(e,new A(i.anchor.line,i.head.ch)),J(e,new A(i.head.line,i.anchor.ch))]}return[r.sel.head,r.sel.anchor]},jumpToMark:function(e,t,n,r){for(var i=t,o=0;o<n.repeat;o++){var a=i;for(var s in r.marks)if(f(s)){var l=r.marks[s].find();if(!((n.forward?ne(l,a):ne(a,l))||n.linewise&&l.line==a.line)){var c=te(a,i),u=n.forward?oe(a,l,i):oe(i,l,a);(c||u)&&(i=l)}}}return n.linewise&&(i=new A(i.line,me(e.getLine(i.line)))),i},moveByCharacters:function(e,t,n){var r=t,i=n.repeat,o=n.forward?r.ch+i:r.ch-i;return new A(r.line,o)},moveByLines:function(e,t,n,r){var i=t,o=i.ch;switch(r.lastMotion){case this.moveByLines:case this.moveByDisplayLines:case this.moveByScroll:case this.moveToColumn:case this.moveToEol:o=r.lastHPos;break;default:r.lastHPos=o}var a=n.repeat+(n.repeatOffset||0),s=n.forward?i.line+a:i.line-a,l=e.firstLine(),c=e.lastLine(),u=e.findPosV(i,n.forward?a:-a,"line",r.lastHSPos);return(n.forward?u.line>s:u.line<s)&&(s=u.line,o=u.ch),s<l&&i.line==l?this.moveToStartOfLine(e,t,n,r):s>c&&i.line==c?be(e,t,n,r,!0):(n.toFirstChar&&(o=me(e.getLine(s)),r.lastHPos=o),r.lastHSPos=e.charCoords(new A(s,o),"div").left,new A(s,o))},moveByDisplayLines:function(e,t,n,r){var i=t;switch(r.lastMotion){case this.moveByDisplayLines:case this.moveByScroll:case this.moveByLines:case this.moveToColumn:case this.moveToEol:break;default:r.lastHSPos=e.charCoords(i,"div").left}var o=n.repeat;if((s=e.findPosV(i,n.forward?o:-o,"line",r.lastHSPos)).hitSide)if(n.forward)var a={top:e.charCoords(s,"div").top+8,left:r.lastHSPos},s=e.coordsChar(a,"div");else{var l=e.charCoords(new A(e.firstLine(),0),"div");l.left=r.lastHSPos,s=e.coordsChar(l,"div")}return r.lastHPos=s.ch,s},moveByPage:function(e,t,n){var r=t,i=n.repeat;return e.findPosV(r,n.forward?i:-i,"page")},moveByParagraph:function(e,t,n){var r=n.forward?1:-1;return xe(e,t,n.repeat,r)},moveBySentence:function(e,t,n){var r=n.forward?1:-1;return function(e,t,n,r){function i(e,t){if(t.pos+t.dir<0||t.pos+t.dir>=t.line.length){if(t.ln+=t.dir,!m(e,t.ln))return t.line=null,t.ln=null,void(t.pos=null);t.line=e.getLine(t.ln),t.pos=t.dir>0?0:t.line.length-1}else t.pos+=t.dir}function o(e,t,n,r){var o=""===(c=e.getLine(t)),a={line:c,ln:t,pos:n,dir:r},s={ln:a.ln,pos:a.pos},l=""===a.line;for(i(e,a);null!==a.line;){if(s.ln=a.ln,s.pos=a.pos,""===a.line&&!l)return{ln:a.ln,pos:a.pos};if(o&&""!==a.line&&!v(a.line[a.pos]))return{ln:a.ln,pos:a.pos};!C(a.line[a.pos])||o||a.pos!==a.line.length-1&&!v(a.line[a.pos+1])||(o=!0),i(e,a)}var c=e.getLine(s.ln);s.pos=0;for(var u=c.length-1;u>=0;--u)if(!v(c[u])){s.pos=u;break}return s}function a(e,t,n,r){var o={line:e.getLine(t),ln:t,pos:n,dir:r},a={ln:o.ln,pos:null},s=""===o.line;for(i(e,o);null!==o.line;){if(""===o.line&&!s)return null!==a.pos?a:{ln:o.ln,pos:o.pos};if(C(o.line[o.pos])&&null!==a.pos&&(o.ln!==a.ln||o.pos+1!==a.pos))return a;""===o.line||v(o.line[o.pos])||(s=!1,a={ln:o.ln,pos:o.pos}),i(e,o)}var l=e.getLine(a.ln);a.pos=0;for(var c=0;c<l.length;++c)if(!v(l[c])){a.pos=c;break}return a}for(var s={ln:t.line,pos:t.ch};n>0;)s=r<0?a(e,s.ln,s.pos,r):o(e,s.ln,s.pos,r),n--;return new A(s.ln,s.pos)}(e,t,n.repeat,r)},moveByScroll:function(e,t,n,r){var i,o=e.getScrollInfo(),a=n.repeat;a||(a=o.clientHeight/(2*e.defaultTextHeight()));var s=e.charCoords(t,"local");if(n.repeat=a,!(i=Y.moveByDisplayLines(e,t,n,r)))return null;var l=e.charCoords(i,"local");return e.scrollTo(null,o.top+l.top-s.top),i},moveByWords:function(e,t,n){return function(e,t,n,r,i,o){var a=ee(t),s=[];(r&&!i||!r&&i)&&n++;for(var l=!(r&&i),c=0;c<n;c++){var u=ke(e,t,r,o,l);if(!u){var d=ae(e,e.lastLine());s.push(r?{line:e.lastLine(),from:d,to:d}:{line:0,from:0,to:0});break}s.push(u),t=new A(u.line,r?u.to-1:u.from)}var h=s.length!=n,p=s[0],g=s.pop();return r&&!i?(h||p.from==a.ch&&p.line==a.line||(g=s.pop()),new A(g.line,g.from)):r&&i?new A(g.line,g.to-1):!r&&i?(h||p.to==a.ch&&p.line==a.line||(g=s.pop()),new A(g.line,g.to)):new A(g.line,g.from)}(e,t,n.repeat,!!n.forward,!!n.wordEnd,!!n.bigWord)},moveTillCharacter:function(e,t,n){var r=Ae(e,n.repeat,n.forward,n.selectedCharacter),i=n.forward?-1:1;return ve(i,n),r?(r.ch+=i,r):null},moveToCharacter:function(e,t,n){var r=n.repeat;return ve(0,n),Ae(e,r,n.forward,n.selectedCharacter)||t},moveToSymbol:function(e,t,n){return function(e,t,n,r){var i=ee(e.getCursor()),o=n?1:-1,a=n?e.lineCount():-1,s=i.ch,l=i.line,c=e.getLine(l),u={lineText:c,nextCh:c.charAt(s),lastCh:null,index:s,symb:r,reverseSymb:(n?{")":"(","}":"{"}:{"(":")","{":"}"})[r],forward:n,depth:0,curMoveThrough:!1},d=Ce[r];if(!d)return i;var h=Se[d].init,p=Se[d].isComplete;for(h&&h(u);l!==a&&t;){if(u.index+=o,u.nextCh=u.lineText.charAt(u.index),!u.nextCh){if(l+=o,u.lineText=e.getLine(l)||"",o>0)u.index=0;else{var g=u.lineText.length;u.index=g>0?g-1:0}u.nextCh=u.lineText.charAt(u.index)}p(u)&&(i.line=l,i.ch=u.index,t--)}return u.nextCh||u.curMoveThrough?new A(l,u.index):i}(e,n.repeat,n.forward,n.selectedCharacter)||t},moveToColumn:function(e,t,n,r){var i=n.repeat;return r.lastHPos=i-1,r.lastHSPos=e.charCoords(t,"div").left,function(e,t){var n=e.getCursor().line;return J(e,new A(n,t-1))}(e,i)},moveToEol:function(e,t,n,r){return be(e,t,n,r,!1)},moveToFirstNonWhiteSpaceCharacter:function(e,t){var n=t;return new A(n.line,me(e.getLine(n.line)))},moveToMatchedSymbol:function(e,t){var n=t,r=n.line,i=n.ch;if(i<e.getLine(r).length){var o="<"===i||">"===i?/[(){}[\]<>]/:/[(){}[\]]/;return e.findMatchingBracket(new A(r,i),{bracketRegex:o}).to}return n},moveToStartOfLine:function(e,t){return new A(t.line,0)},moveToLineOrEdgeOfDocument:function(e,t,n){var r=n.forward?e.lastLine():e.firstLine();return n.repeatIsExplicit&&(r=n.repeat-e.getOption("firstLineNumber")),new A(r,me(e.getLine(r)))},moveToStartOfDisplayLine:function(e){return e.execCommand("goLineLeft"),e.getCursor()},moveToEndOfDisplayLine:function(e){e.execCommand("goLineRight");var t=e.getCursor();return"before"==t.sticky&&t.ch--,t},textObjectManipulation:function(e,t,n,r){var i=n.selectedCharacter;"b"==i?i="(":"B"==i&&(i="{");var o,a=!n.textObjectInner;if({"(":")",")":"(","{":"}","}":"{","[":"]","]":"[","<":">",">":"<"}[i])o=function(e,t,n,r){var i,o,a=t,s={"(":/[()]/,")":/[()]/,"[":/[[\]]/,"]":/[[\]]/,"{":/[{}]/,"}":/[{}]/,"<":/[<>]/,">":/[<>]/}[n],l={"(":"(",")":"(","[":"[","]":"[","{":"{","}":"{","<":"<",">":"<"}[n],c=e.getLine(a.line).charAt(a.ch)===l?1:0;if(i=e.scanForBracket(new A(a.line,a.ch+c),-1,void 0,{bracketRegex:s}),o=e.scanForBracket(new A(a.line,a.ch+c),1,void 0,{bracketRegex:s}),!i||!o)return{start:a,end:a};if(i=i.pos,o=o.pos,i.line==o.line&&i.ch>o.ch||i.line>o.line){var u=i;i=o,o=u}return r?o.ch+=1:i.ch+=1,{start:i,end:o}}(e,t,i,a);else if({"'":!0,'"':!0,"`":!0}[i])o=function(e,t,n,r){var i,o,a,s,l=ee(t),c=e.getLine(l.line).split(""),u=c.indexOf(n);if(l.ch<u?l.ch=u:u<l.ch&&c[l.ch]==n&&(o=l.ch,--l.ch),c[l.ch]!=n||o)for(a=l.ch;a>-1&&!i;a--)c[a]==n&&(i=a+1);else i=l.ch+1;if(i&&!o)for(a=i,s=c.length;a<s&&!o;a++)c[a]==n&&(o=a);return i&&o?(r&&(--i,++o),{start:new A(l.line,i),end:new A(l.line,o)}):{start:l,end:l}}(e,t,i,a);else if("W"===i)o=fe(e,a,0,!0);else if("w"===i)o=fe(e,a,0,!1);else if("p"===i)if(o=xe(e,t,n.repeat,0,a),n.linewise=!0,r.visualMode)r.visualLine||(r.visualLine=!0);else{var s=r.inputState.operatorArgs;s&&(s.linewise=!0),o.end.line--}else{if("t"!==i)return null;o=function(e,t,n){var r=t;if(!b.findMatchingTag||!b.findEnclosingTag)return{start:r,end:r};var i=b.findMatchingTag(e,t)||b.findEnclosingTag(e,t);return i&&i.open&&i.close?n?{start:i.open.from,end:i.close.to}:{start:i.open.to,end:i.close.from}:{start:r,end:r}}(e,t,a)}return e.state.vim.visualMode?function(e,t,n){var r,i=e.state.vim.sel,o=i.head,a=i.anchor;return ne(n,t)&&(r=n,n=t,t=r),ne(o,a)?(o=re(t,o),a=ie(a,n)):(a=re(t,a),-1==(o=Q(o=ie(o,n),0,-1)).ch&&o.line!=e.firstLine()&&(o=new A(o.line-1,ae(e,o.line-1)))),[a,o]}(e,o.start,o.end):[o.start,o.end]},repeatLastCharacterSearch:function(e,t,n){var r=N.lastCharacterSearch,i=n.repeat,o=n.forward===r.forward,a=(r.increment?1:0)*(o?-1:1);e.moveH(-a,"char"),n.inclusive=!!o;var s=Ae(e,i,o,r.selectedCharacter);return s?(s.ch+=a,s):(e.moveH(a,"char"),t)}};function j(e,t){for(var n=[],r=0;r<t;r++)n.push(e);return n}var G={change:function(e,t,n){var r,i,o=e.state.vim,a=n[0].anchor,s=n[0].head;if(o.visualMode)if(t.fullLine)s.ch=Number.MAX_VALUE,s.line--,e.setSelection(a,s),i=e.getSelection(),e.replaceSelections(""),r=a;else{i=e.getSelection();var l=j("",n.length);e.replaceSelections(l),r=re(n[0].head,n[0].anchor)}else{i=e.getRange(a,s);var c=o.lastEditInputState||{};if("moveByWords"==c.motion&&!v(i)){var u=/\s+$/.exec(i);u&&c.motionArgs&&c.motionArgs.forward&&(s=Q(s,0,-u[0].length),i=i.slice(0,-u[0].length))}var d=new A(a.line-1,Number.MAX_VALUE),h=e.firstLine()==e.lastLine();s.line>e.lastLine()&&t.linewise&&!h?e.replaceRange("",d,s):e.replaceRange("",a,s),t.linewise&&(h||(e.setCursor(d),b.commands.newlineAndIndent(e)),a.ch=Number.MAX_VALUE),r=a}N.registerController.pushText(t.registerName,"change",i,t.linewise,n.length>1),z.enterInsertMode(e,{head:r},e.state.vim)},delete:function(e,t,n){var r,i;e.pushUndoStop();var o=e.state.vim;if(o.visualBlock){i=e.getSelection();var a=j("",n.length);e.replaceSelections(a),r=re(n[0].head,n[0].anchor)}else{var s=n[0].anchor,l=n[0].head;t.linewise&&l.line!=e.firstLine()&&s.line==e.lastLine()&&s.line==l.line-1&&(s.line==e.firstLine()?s.ch=0:s=new A(s.line-1,ae(e,s.line-1))),i=e.getRange(s,l),e.replaceRange("",s,l),r=s,t.linewise&&(r=Y.moveToFirstNonWhiteSpaceCharacter(e,s))}return N.registerController.pushText(t.registerName,"delete",i,t.linewise,o.visualBlock),J(e,r)},indent:function(e,t,n){var r=e.state.vim,i=n[0].anchor.line,o=r.visualBlock?n[n.length-1].anchor.line:n[0].head.line,a=r.visualMode?t.repeat:1;t.linewise&&o--,e.pushUndoStop();for(var s=i;s<=o;s++)for(var l=0;l<a;l++)e.indentLine(s,t.indentRight);return e.pushUndoStop(),Y.moveToFirstNonWhiteSpaceCharacter(e,n[0].anchor)},indentAuto:function(e,t,n){return e.execCommand("indentAuto"),Y.moveToFirstNonWhiteSpaceCharacter(e,n[0].anchor)},changeCase:function(e,t,n,r,i){for(var o=e.getSelections(),a=[],s=t.toLower,l=0;l<o.length;l++){var c=o[l],u="";if(!0===s)u=c.toLowerCase();else if(!1===s)u=c.toUpperCase();else for(var d=0;d<c.length;d++){var h=c.charAt(d);u+=y(h)?h.toLowerCase():h.toUpperCase()}a.push(u)}return e.replaceSelections(a),t.shouldMoveCursor?i:!e.state.vim.visualMode&&t.linewise&&n[0].anchor.line+1==n[0].head.line?Y.moveToFirstNonWhiteSpaceCharacter(e,r):t.linewise?r:re(n[0].anchor,n[0].head)},yank:function(e,t,n,r){var i=e.state.vim,o=e.getSelection(),a=i.visualMode?re(i.sel.anchor,i.sel.head,n[0].head,n[0].anchor):r;return N.registerController.pushText(t.registerName,"yank",o,t.linewise,i.visualBlock),a}},z={jumpListWalk:function(e,t,n){if(!n.visualMode){var r=t.repeat,i=t.forward,o=N.jumpList.move(e,i?r:-r),a=o?o.find():void 0;a=a||e.getCursor(),e.setCursor(a)}},scroll:function(e,t,n){if(!n.visualMode){var r=t.repeat||1,i=e.defaultTextHeight(),o=e.getScrollInfo().top,a=i*r,s=t.forward?o+a:o-a,l=ee(e.getCursor()),c=e.charCoords(l,"local");if(t.forward)s>c.top?(l.line+=(s-c.top)/i,l.line=Math.ceil(l.line),e.setCursor(l),c=e.charCoords(l,"local"),e.scrollTo(null,c.top)):e.scrollTo(null,s);else{var u=s+e.getScrollInfo().clientHeight;u<c.bottom?(l.line-=(c.bottom-u)/i,l.line=Math.floor(l.line),e.setCursor(l),c=e.charCoords(l,"local"),e.scrollTo(null,c.bottom-e.getScrollInfo().clientHeight)):e.scrollTo(null,s)}}},scrollToCursor:function(e,t){var n=e.getCursor().line,r=e.charCoords(new A(n,0),"local"),i=e.getScrollInfo().clientHeight,o=r.top,a=r.bottom-o;switch(t.position){case"center":o=o-i/2+a;break;case"bottom":o=o-i+a}e.moveCurrentLineTo(o)},replayMacro:function(e,t,n){var r=t.selectedCharacter,i=t.repeat,o=N.macroModeState;for("@"==r?r=o.latestRegister:o.latestRegister=r;i--;)Je(e,n,o,r)},enterMacroRecordMode:function(e,t){var n=N.macroModeState,r=t.selectedCharacter;N.registerController.isValidRegister(r)&&n.enterMacroRecordMode(e,r)},toggleOverwrite:function(e){e.state.overwrite?(e.toggleOverwrite(!1),e.setOption("keyMap","vim-insert"),b.signal(e,"vim-mode-change",{mode:"insert"})):(e.toggleOverwrite(!0),e.setOption("keyMap","vim-replace"),b.signal(e,"vim-mode-change",{mode:"replace"}))},enterInsertMode:function(e,t,n){if(!e.getOption("readOnly")){n.insertMode=!0,n.insertModeRepeat=t&&t.repeat||1;var r=t?t.insertAt:null,i=n.sel,o=t.head||e.getCursor("head"),a=e.listSelections().length;if("eol"==r)o=new A(o.line,ae(e,o.line));else if("bol"==r)o=new A(o.line,0);else if("charAfter"==r)o=Q(o,0,1);else if("firstNonBlank"==r)o=Y.moveToFirstNonWhiteSpaceCharacter(e,o);else if("startOfSelectedArea"==r){if(!n.visualMode)return;n.visualBlock?(o=new A(Math.min(i.head.line,i.anchor.line),Math.min(i.head.ch,i.anchor.ch)),a=Math.abs(i.head.line-i.anchor.line)+1):o=i.head.line<i.anchor.line?i.head:new A(i.anchor.line,0)}else if("endOfSelectedArea"==r){if(!n.visualMode)return;n.visualBlock?(o=new A(Math.min(i.head.line,i.anchor.line),Math.max(i.head.ch,i.anchor.ch)+1),a=Math.abs(i.head.line-i.anchor.line)+1):o=i.head.line>=i.anchor.line?Q(i.head,0,1):new A(i.anchor.line,0)}else if("inplace"==r){if(n.visualMode)return}else"lastEdit"==r&&(o=qe(e)||o);e.setOption("disableInput",!1),t&&t.replace?(e.toggleOverwrite(!0),e.setOption("keyMap","vim-replace"),b.signal(e,"vim-mode-change",{mode:"replace"})):(e.toggleOverwrite(!1),e.setOption("keyMap","vim-insert"),b.signal(e,"vim-mode-change",{mode:"insert"})),N.macroModeState.isPlaying||(e.on("change",$e),b.on(e.getInputField(),"keydown",Xe)),n.visualMode&&ge(e),ue(e,o,a)}},toggleVisualMode:function(e,t,n){var r,i=t.repeat,o=e.getCursor();n.visualMode?n.visualLine^t.linewise||n.visualBlock^t.blockwise?(n.visualLine=!!t.linewise,n.visualBlock=!!t.blockwise,b.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""}),he(e)):ge(e):(n.visualMode=!0,n.visualLine=!!t.linewise,n.visualBlock=!!t.blockwise,r=J(e,new A(o.line,o.ch+i-1)),n.sel={anchor:o,head:r},b.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""}),he(e),we(e,n,"<",re(o,r)),we(e,n,">",ie(o,r)))},reselectLastSelection:function(e,t,n){var r=n.lastSelection;if(n.visualMode&&de(e,n),r){var i=r.anchorMark.find(),o=r.headMark.find();if(!i||!o)return;n.sel={anchor:i,head:o},n.visualMode=!0,n.visualLine=r.visualLine,n.visualBlock=r.visualBlock,he(e),we(e,n,"<",re(i,o)),we(e,n,">",ie(i,o)),b.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""})}},joinLines:function(e,t,n){var r,i;if(n.visualMode){if(r=e.getCursor("anchor"),ne(i=e.getCursor("head"),r)){var o=i;i=r,r=o}i.ch=ae(e,i.line)-1}else{var a=Math.max(t.repeat,2);r=e.getCursor(),i=J(e,new A(r.line+a-1,1/0))}for(var s=0,l=r.line;l<i.line;l++){s=ae(e,r.line),o=new A(r.line+1,ae(e,r.line+1));var c=e.getRange(r,o);c=t.keepSpaces?c.replace(/\n\r?/g,""):c.replace(/\n\s*/g," "),e.replaceRange(c,r,o)}var u=new A(r.line,s);n.visualMode&&ge(e,!1),e.setCursor(u)},newLineAndEnterInsertMode:function(e,t,n){if(!e.getOption("readOnly")){n.insertMode=!0;var r=ee(e.getCursor());r.line!==e.firstLine()||t.after?(r.line=t.after?r.line:r.line-1,r.ch=ae(e,r.line),e.setCursor(r),(b.commands.newlineAndIndentContinueComment||b.commands.newlineAndIndent)(e)):(e.replaceRange("\n",new A(e.firstLine(),0)),e.setCursor(e.firstLine(),0)),this.enterInsertMode(e,{repeat:t.repeat},n)}},paste:function(e,t,n){var r=ee(e.getCursor()),i=N.registerController.getRegister(t.registerName);if(h=i.toString()){if(t.matchIndent){var o=e.getOption("tabSize"),a=function(e){var t=e.split("\t").length-1,n=e.split(" ").length-1;return t*o+1*n},s=e.getLine(e.getCursor().line),l=a(s.match(/^\s*/)[0]),c=h.replace(/\n$/,""),u=h!==c,d=a(h.match(/^\s*/)[0]),h=c.replace(/^\s*/gm,(function(t){var n=l+(a(t)-d);if(n<0)return"";if(e.getOption("indentWithTabs")){var r=Math.floor(n/o);return Array(r+1).join("\t")}return Array(n+1).join(" ")}));h+=u?"\n":""}t.repeat>1&&(h=Array(t.repeat+1).join(h));var p,g,m=i.linewise,f=i.blockwise;if(f){h=h.split("\n"),m&&h.pop();for(var y=0;y<h.length;y++)h[y]=""==h[y]?" ":h[y];r.ch+=t.after?1:0,r.ch=Math.min(ae(e,r.line),r.ch)}else m?n.visualMode?h=n.visualLine?h.slice(0,-1):"\n"+h.slice(0,h.length-1)+"\n":t.after?(h="\n"+h.slice(0,h.length-1),r.ch=ae(e,r.line)):r.ch=0:r.ch+=t.after?1:0;if(n.visualMode){var v;n.lastPastedText=h;var C=function(e,t){var n=t.lastSelection;return t.visualMode?function(){var t=e.listSelections(),n=t[0],r=t[t.length-1];return[ne(n.anchor,n.head)?n.anchor:n.head,ne(r.anchor,r.head)?r.head:r.anchor]}():function(){var t=e.getCursor(),r=e.getCursor(),i=n.visualBlock;if(i){var o=i.width,a=i.height;r=new A(t.line+a,t.ch+o);for(var s=[],l=t.line;l<r.line;l++){var c={anchor:new A(l,t.ch),head:new A(l,r.ch)};s.push(c)}e.setSelections(s)}else{var u=n.anchorMark.find(),d=n.headMark.find(),h=d.line-u.line,p=d.ch-u.ch;r={line:r.line+h,ch:h?r.ch:p+r.ch},n.visualLine&&(t=new A(t.line,0),r=new A(r.line,ae(e,r.line))),e.setSelection(t,r)}return[t,r]}()}(e,n),S=C[0],k=C[1],b=e.getSelection(),w=e.listSelections(),I=new Array(w.length).join("1").split("1");n.lastSelection&&(v=n.lastSelection.headMark.find()),N.registerController.unnamedRegister.setText(b),f?(e.replaceSelections(I),k=new A(S.line+h.length-1,S.ch),e.setCursor(S),ce(e,k),e.replaceSelections(h),p=S):n.visualBlock?(e.replaceSelections(I),e.setCursor(S),e.replaceRange(h,S,S),p=S):(e.replaceRange(h,S,k),p=e.posFromIndex(e.indexFromPos(S)+h.length-1)),v&&(n.lastSelection.headMark=e.setBookmark(v)),m&&(p.ch=0)}else if(f){for(e.setCursor(r),y=0;y<h.length;y++){var x=r.line+y;x>e.lastLine()&&e.replaceRange("\n",new A(x,0)),ae(e,x)<r.ch&&le(e,x,r.ch)}e.setCursor(r),ce(e,new A(r.line+h.length-1,r.ch)),e.replaceSelections(h),p=r}else e.replaceRange(h,r),m&&t.after?p=new A(r.line+1,me(e.getLine(r.line+1))):m&&!t.after?p=new A(r.line,me(e.getLine(r.line))):!m&&t.after?(g=e.indexFromPos(r),p=e.posFromIndex(g+h.length-1)):(g=e.indexFromPos(r),p=e.posFromIndex(g+h.length));n.visualMode&&ge(e,!1),e.setCursor(p)}},undo:function(e,t){e.operation((function(){X(e,b.commands.undo,t.repeat)(),e.setCursor(e.getCursor("anchor"))}))},redo:function(e,t){X(e,b.commands.redo,t.repeat)()},setRegister:function(e,t,n){n.inputState.registerName=t.selectedCharacter},setMark:function(e,t,n){we(e,n,t.selectedCharacter,e.getCursor())},replace:function(e,t,n){var r,i,o=t.selectedCharacter,a=e.getCursor(),s=e.listSelections();if(n.visualMode)a=e.getCursor("start"),i=e.getCursor("end");else{var l=e.getLine(a.line);(r=a.ch+t.repeat)>l.length&&(r=l.length),i=new A(a.line,r)}if("\n"==o)n.visualMode||e.replaceRange("",a,i),(b.commands.newlineAndIndentContinueComment||b.commands.newlineAndIndent)(e);else{var c=e.getRange(a,i);if(c=c.replace(/[^\n]/g,o),n.visualBlock){var u=new Array(e.getOption("tabSize")+1).join(" ");c=(c=e.getSelection()).replace(/\t/g,u).replace(/[^\n]/g,o).split("\n"),e.replaceSelections(c)}else e.replaceRange(c,a,i);n.visualMode?(a=ne(s[0].anchor,s[0].head)?s[0].anchor:s[0].head,e.setCursor(a),ge(e,!1)):e.setCursor(Q(i,0,-1))}},incrementNumberToken:function(e,t){for(var n,r,i,o,a=e.getCursor(),s=e.getLine(a.line),l=/(-?)(?:(0x)([\da-f]+)|(0b|0|)(\d+))/gi;null!==(n=l.exec(s))&&(i=(r=n.index)+n[0].length,!(a.ch<i)););if((t.backtrack||!(i<=a.ch))&&n){var c=n[2]||n[4],u=n[3]||n[5],d=t.increase?1:-1,h={"0b":2,0:8,"":10,"0x":16}[c.toLowerCase()];o=(parseInt(n[1]+u,h)+d*t.repeat).toString(h);var p=c?new Array(u.length-o.length+1+n[1].length).join("0"):"";o="-"===o.charAt(0)?"-"+c+p+o.substr(1):c+p+o;var g=new A(a.line,r),m=new A(a.line,i);e.replaceRange(o,g,m),e.setCursor(new A(a.line,r+o.length-1))}},repeatLastEdit:function(e,t,n){if(n.lastEditInputState){var r=t.repeat;r&&t.repeatIsExplicit?n.lastEditInputState.repeatOverride=r:r=n.lastEditInputState.repeatOverride||r,et(e,n,r,!1)}},indent:function(e,t){e.indentLine(e.getCursor().line,t.indentRight)},exitInsertMode:Ge};function J(e,t){var n=e.state.vim,r=n.insertMode||n.visualMode,i=Math.min(Math.max(e.firstLine(),t.line),e.lastLine()),o=ae(e,i)-1+!!r,a=Math.min(Math.max(0,t.ch),o);return new A(i,a)}function $(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function Q(e,t,n){return"object"==typeof t&&(n=t.ch,t=t.line),new A(e.line+t,e.ch+n)}function Z(e,t){if("<character>"==t.slice(-11)){var n=t.length-11,r=e.slice(0,n),i=t.slice(0,n);return r==i&&e.length>n?"full":0==i.indexOf(r)&&"partial"}return e==t?"full":0==t.indexOf(e)&&"partial"}function X(e,t,n){return function(){for(var r=0;r<n;r++)t(e)}}function ee(e){return new A(e.line,e.ch)}function te(e,t){return e.ch==t.ch&&e.line==t.line}function ne(e,t){return e.line<t.line||e.line==t.line&&e.ch<t.ch}function re(e,t){return arguments.length>2&&(t=re.apply(void 0,Array.prototype.slice.call(arguments,1))),ne(e,t)?e:t}function ie(e,t){return arguments.length>2&&(t=ie.apply(void 0,Array.prototype.slice.call(arguments,1))),ne(e,t)?t:e}function oe(e,t,n){var r=ne(e,t),i=ne(t,n);return r&&i}function ae(e,t){return e.getLine(t).length}function se(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function le(e,t,n){var r=ae(e,t),i=new Array(n-r+1).join(" ");e.setCursor(new A(t,r)),e.replaceRange(i,e.getCursor())}function ce(e,t){var n=[],r=e.listSelections(),i=ee(e.clipPos(t)),o=!te(t,i),a=function(e,t,n){for(var r=0;r<e.length;r++){var i=te(e[r].anchor,t),o=te(e[r].head,t);if(i||o)return r}return-1}(r,e.getCursor("head")),s=te(r[a].head,r[a].anchor),l=r.length-1,c=l-a>a?l:0,u=r[c].anchor,d=Math.min(u.line,i.line),h=Math.max(u.line,i.line),p=u.ch,g=i.ch,m=r[c].head.ch-p,f=g-p;m>0&&f<=0?(p++,o||g--):m<0&&f>=0?(p--,s||g++):m<0&&-1==f&&(p--,g++);for(var y=d;y<=h;y++){var v={anchor:new A(y,p),head:new A(y,g)};n.push(v)}return e.setSelections(n),t.ch=g,u.ch=p,u}function ue(e,t,n){for(var r=[],i=0;i<n;i++){var o=Q(t,i,0);r.push({anchor:o,head:o})}e.setSelections(r,0)}function de(e,t){var n=t.sel.anchor,r=t.sel.head;t.lastPastedText&&(r=e.posFromIndex(e.indexFromPos(n)+t.lastPastedText.length),t.lastPastedText=null),t.lastSelection={anchorMark:e.setBookmark(n),headMark:e.setBookmark(r),anchor:ee(n),head:ee(r),visualMode:t.visualMode,visualLine:t.visualLine,visualBlock:t.visualBlock}}function he(e,t,n){var r=e.state.vim,i=pe(e,t=t||r.sel,n=n||r.visualLine?"line":r.visualBlock?"block":"char");e.setSelections(i.ranges,i.primary)}function pe(e,t,n,r){var i=ee(t.head),o=ee(t.anchor);if("char"==n){var a=r||ne(t.head,t.anchor)?0:1,s=ne(t.head,t.anchor)?1:0;return i=Q(t.head,0,a),{ranges:[{anchor:o=Q(t.anchor,0,s),head:i}],primary:0}}if("line"==n){if(ne(t.head,t.anchor))i.ch=0,o.ch=ae(e,o.line);else{o.ch=0;var l=e.lastLine();i.line>l&&(i.line=l),i.ch=ae(e,i.line)}return{ranges:[{anchor:o,head:i}],primary:0}}if("block"==n){var c=Math.min(o.line,i.line),u=o.ch,d=Math.max(o.line,i.line),h=i.ch;u<h?h+=1:u+=1;for(var p=d-c+1,g=i.line==c?0:p-1,m=[],f=0;f<p;f++)m.push({anchor:new A(c+f,u),head:new A(c+f,h)});return{ranges:m,primary:g}}}function ge(e,t){var n=e.state.vim;!1!==t&&e.setCursor(J(e,n.sel.head)),de(e,n),n.visualMode=!1,n.visualLine=!1,n.visualBlock=!1,n.insertMode||b.signal(e,"vim-mode-change",{mode:"normal"})}function me(e){if(!e)return 0;var t=e.search(/\S/);return-1==t?e.length:t}function fe(e,t,n,r,i){for(var o=function(e){var t=e.getCursor("head");return 1==e.getSelection().length&&(t=re(t,e.getCursor("anchor"))),t}(e),l=e.getLine(o.line),c=o.ch,u=i?a[0]:s[0];!u(l.charAt(c));)if(++c>=l.length)return null;r?u=s[0]:(u=a[0])(l.charAt(c))||(u=a[1]);for(var d=c,h=c;u(l.charAt(d))&&d<l.length;)d++;for(;u(l.charAt(h))&&h>=0;)h--;if(h++,t){for(var p=d;/\s/.test(l.charAt(d))&&d<l.length;)d++;if(p==d){for(var g=h;/\s/.test(l.charAt(h-1))&&h>0;)h--;h||(h=g)}}return{start:new A(o.line,h),end:new A(o.line,d)}}function ye(e,t,n){te(t,n)||N.jumpList.add(e,t,n)}function ve(e,t){N.lastCharacterSearch.increment=e,N.lastCharacterSearch.forward=t.forward,N.lastCharacterSearch.selectedCharacter=t.selectedCharacter}var Ce={"(":"bracket",")":"bracket","{":"bracket","}":"bracket","[":"section","]":"section","*":"comment","/":"comment",m:"method",M:"method","#":"preprocess"},Se={bracket:{isComplete:function(e){if(e.nextCh===e.symb){if(e.depth++,e.depth>=1)return!0}else e.nextCh===e.reverseSymb&&e.depth--;return!1}},section:{init:function(e){e.curMoveThrough=!0,e.symb=(e.forward?"]":"[")===e.symb?"{":"}"},isComplete:function(e){return 0===e.index&&e.nextCh===e.symb}},comment:{isComplete:function(e){var t="*"===e.lastCh&&"/"===e.nextCh;return e.lastCh=e.nextCh,t}},method:{init:function(e){e.symb="m"===e.symb?"{":"}",e.reverseSymb="{"===e.symb?"}":"{"},isComplete:function(e){return e.nextCh===e.symb}},preprocess:{init:function(e){e.index=0},isComplete:function(e){if("#"===e.nextCh){var t=e.lineText.match(/^#(\w+)/)[1];if("endif"===t){if(e.forward&&0===e.depth)return!0;e.depth++}else if("if"===t){if(!e.forward&&0===e.depth)return!0;e.depth--}if("else"===t&&0===e.depth)return!0}return!1}}};function ke(e,t,n,r,i){var o=t.line,l=t.ch,c=e.getLine(o),u=n?1:-1,d=r?s:a;if(i&&""==c){if(o+=u,c=e.getLine(o),!m(e,o))return null;l=n?0:c.length}for(;;){if(i&&""==c)return{from:0,to:0,line:o};for(var h=u>0?c.length:-1,p=h,g=h;l!=h;){for(var f=!1,y=0;y<d.length&&!f;++y)if(d[y](c.charAt(l))){for(p=l;l!=h&&d[y](c.charAt(l));)l+=u;if(f=p!=(g=l),p==t.ch&&o==t.line&&g==p+u)continue;return{from:Math.min(p,g+1),to:Math.max(p,g),line:o}}f||(l+=u)}if(!m(e,o+=u))return null;c=e.getLine(o),l=u>0?0:c.length}}function be(e,t,n,r,i){var o=new A(t.line+n.repeat-1,1/0),a=e.clipPos(o);return a.ch--,i||(r.lastHPos=1/0,r.lastHSPos=e.charCoords(a,"div").left),o}function Ae(e,t,n,r){for(var i,o=e.getCursor(),a=o.ch,s=0;s<t;s++){if(-1==(i=Ie(a,e.getLine(o.line),r,n,!0)))return null;a=i}return new A(e.getCursor().line,i)}function we(e,t,n,r){S(n,p)&&(t.marks[n]&&t.marks[n].clear(),t.marks[n]=e.setBookmark(r))}function Ie(e,t,n,r,i){var o;return r?-1==(o=t.indexOf(n,e+1))||i||(o-=1):-1==(o=t.lastIndexOf(n,e-1))||i||(o+=1),o}function xe(e,t,n,r,i){var o,a=t.line,s=e.firstLine(),l=e.lastLine(),c=a;function u(t){return!e.getLine(t)}function d(e,t,n){return n?u(e)!=u(e+t):!u(e)&&u(e+t)}if(r){for(;s<=c&&c<=l&&n>0;)d(c,r)&&n--,c+=r;return new A(c,0)}var h=e.state.vim;if(h.visualLine&&d(a,1,!0)){var p=h.sel.anchor;d(p.line,-1,!0)&&(i&&p.line==a||(a+=1))}var g=u(a);for(c=a;c<=l&&n;c++)d(c,1,!0)&&(i&&u(c)==g||n--);for(o=new A(c,0),c>l&&!g?g=!0:i=!1,c=a;c>s&&(i&&u(c)!=g&&c!=a||!d(c,-1,!0));c--);return{start:new A(c,0),end:o}}function Te(){}function Me(e){var t=e.state.vim;return t.searchState_||(t.searchState_=new Te)}function Ee(e,t){var n=Oe(e,t)||[];if(!n.length)return[];var r=[];if(0===n[0]){for(var i=0;i<n.length;i++)"number"==typeof n[i]&&r.push(e.substring(n[i]+1,n[i+1]));return r}}function Oe(e,t){t||(t="/");for(var n=!1,r=[],i=0;i<e.length;i++){var o=e.charAt(i);n||o!=t||r.push(i),n=!n&&"\\"==o}return r}M("pcre",!0,"boolean"),Te.prototype={getQuery:function(){return N.query},setQuery:function(e){N.query=e},getOverlay:function(){return this.searchOverlay},setOverlay:function(e){this.searchOverlay=e},isReversed:function(){return N.isReversed},setReversed:function(e){N.isReversed=e},getScrollbarAnnotate:function(){return this.annotate},setScrollbarAnnotate:function(e){this.annotate=e}};var Ne={"\\n":"\n","\\r":"\r","\\t":"\t"},Re={"\\/":"/","\\\\":"\\","\\n":"\n","\\r":"\r","\\t":"\t","\\&":"&"};function Le(e){"string"==typeof e&&(e=document.createElement(e));for(var t,n=1;n<arguments.length;n++)if(t=arguments[n])if("object"!=typeof t&&(t=document.createTextNode(t)),t.nodeType)e.appendChild(t);else for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&("$"===r[0]?e.style[r.slice(1)]=t[r]:e.setAttribute(r,t[r]));return e}function De(e,t){var n=Le("pre",{$color:"red",class:"cm-vim-message"},t);e.openNotification?e.openNotification(n,{bottom:!0,duration:5e3}):alert(n.innerText)}function Pe(e,t){var n,r,i=(n=t.prefix,r=t.desc,Le(document.createDocumentFragment(),Le("span",{$fontFamily:"monospace",$whiteSpace:"pre"},n,Le("input",{type:"text",autocorrect:"off",autocapitalize:"off",spellcheck:"false"})),r&&Le("span",{$color:"#888"},r)));if(e.openDialog)e.openDialog(i,t.onClose,{onKeyDown:t.onKeyDown,onKeyUp:t.onKeyUp,bottom:!0,selectValueOnOpen:!1,value:t.value});else{var o="";"string"!=typeof t.prefix&&t.prefix&&(o+=t.prefix.textContent),t.desc&&(o+=" "+t.desc),t.onClose(prompt(o,""))}}function Be(e,t,n,r){if(t){var i=Me(e),o=function(e,t,n){if(N.registerController.getRegister("/").setText(e),e instanceof RegExp)return e;var r,i,o=Oe(e,"/");return o.length?(r=e.substring(0,o[0]),i=-1!=e.substring(o[0]).indexOf("i")):r=e,r?(O("pcre")||(r=function(e){for(var t=!1,n=[],r=-1;r<e.length;r++){var i=e.charAt(r)||"",o=e.charAt(r+1)||"",a=o&&-1!="|(){".indexOf(o);t?("\\"===i&&a||n.push(i),t=!1):"\\"===i?(t=!0,o&&-1!="}".indexOf(o)&&(a=!0),a&&"\\"!==o||n.push(i)):(n.push(i),a&&"\\"!==o&&n.push("\\"))}return n.join("")}(r)),n&&(t=/^[^A-Z]*$/.test(r)),new RegExp(r,t||i?"im":"m")):null}(t,!!n,!!r);if(o)return Ue(e,o),function(e,t){if(e instanceof RegExp&&t instanceof RegExp){for(var n=["global","multiline","ignoreCase","source"],r=0;r<n.length;r++){var i=n[r];if(e[i]!==t[i])return!1}return!0}return!1}(o,i.getQuery())||i.setQuery(o),o}}var Fe=0;function Ue(e,t){clearTimeout(Fe),Fe=setTimeout((function(){if(e.state.vim){var n=Me(e),r=n.getOverlay();r&&t==r.query||(r&&e.removeOverlay(r),r=function(e){if("^"==e.source.charAt(0))var t=!0;return{token:function(n){if(!t||n.sol()){var r=n.match(e,!1);if(r)return 0==r[0].length?(n.next(),"searching"):n.sol()||(n.backUp(1),e.exec(n.next()+r[0]))?(n.match(e),"searching"):(n.next(),null);for(;!n.eol()&&(n.next(),!n.match(e,!1)););}else n.skipToEnd()},query:e}}(t),e.addOverlay(r),e.showMatchesOnScrollbar&&(n.getScrollbarAnnotate()&&n.getScrollbarAnnotate().clear(),n.setScrollbarAnnotate(e.showMatchesOnScrollbar(t))),n.setOverlay(r))}}),50)}function _e(e,t,n,r){return void 0===r&&(r=1),e.operation((function(){for(var i=e.getCursor(),o=e.getSearchCursor(n,i),a=0;a<r;a++){var s=o.find(t);if(0==a&&s&&te(o.from(),i)){var l=t?o.from():o.to();(s=o.find(t))&&!s[0]&&te(o.from(),l)&&e.getLine(l.line).length==l.ch&&(s=o.find(t))}if(!s&&!(o=e.getSearchCursor(n,t?new A(e.lastLine()):new A(e.firstLine(),0))).find(t))return}return o.from()}))}function He(e){var t=Me(e);e.removeOverlay(Me(e).getOverlay()),t.setOverlay(null),t.getScrollbarAnnotate()&&(t.getScrollbarAnnotate().clear(),t.setScrollbarAnnotate(null))}function Ke(e){var t=e.getScrollInfo(),n=e.coordsChar({left:0,top:6+t.top},"local"),r=t.clientHeight-10+t.top,i=e.coordsChar({left:0,top:r},"local");return{top:n.line,bottom:i.line}}function We(e,t,n){if("'"==n||"`"==n)return N.jumpList.find(e,-1)||new A(0,0);if("."==n)return qe(e);var r=t.marks[n];return r&&r.find()}function qe(e){for(var t=e.doc.history.done,n=t.length;n--;)if(t[n].changes)return ee(t[n].changes[0].to)}var Ve=function(){this.buildCommandMap_()};Ve.prototype={processCommand:function(e,t,n){var r=this;e.operation((function(){e.curOp.isVimOp=!0,r._processCommand(e,t,n)}))},_processCommand:function(e,t,n){var r=e.state.vim,i=N.registerController.getRegister(":"),o=i.toString();r.visualMode&&ge(e);var a=new b.StringStream(t);i.setText(t);var s,l,c=n||{};c.input=t;try{this.parseInput_(e,a,c)}catch(t){throw De(e,t.toString()),t}if(c.commandName){if(s=this.matchCommand_(c.commandName)){if(l=s.name,s.excludeFromCommandHistory&&i.setText(o),this.parseCommandArgs_(a,c,s),"exToKey"==s.type){for(var u=0;u<s.toKeys.length;u++)U.handleKey(e,s.toKeys[u],"mapping");return}if("exToEx"==s.type)return void this.processCommand(e,s.toInput)}}else void 0!==c.line&&(l="move");if(l)try{Ye[l](e,c),s&&s.possiblyAsync||!c.callback||c.callback()}catch(t){throw De(e,t.toString()),t}else De(e,'Not an editor command ":'+t+'"')},parseInput_:function(e,t,n){t.eatWhile(":"),t.eat("%")?(n.line=e.firstLine(),n.lineEnd=e.lastLine()):(n.line=this.parseLineSpec_(e,t),void 0!==n.line&&t.eat(",")&&(n.lineEnd=this.parseLineSpec_(e,t)));var r=t.match(/^(\w+|!!|@@|[!#&*<=>@~])/);return n.commandName=r?r[1]:t.match(/.*/)[0],n},parseLineSpec_:function(e,t){var n=t.match(/^(\d+)/);if(n)return parseInt(n[1],10)-1;switch(t.next()){case".":return this.parseLineSpecOffset_(t,e.getCursor().line);case"$":return this.parseLineSpecOffset_(t,e.lastLine());case"'":var r=t.next(),i=We(e,e.state.vim,r);if(!i)throw new Error("Mark not set");return this.parseLineSpecOffset_(t,i.line);case"-":case"+":return t.backUp(1),this.parseLineSpecOffset_(t,e.getCursor().line);default:return void t.backUp(1)}},parseLineSpecOffset_:function(e,t){var n=e.match(/^([+-])?(\d+)/);if(n){var r=parseInt(n[2],10);"-"==n[1]?t-=r:t+=r}return t},parseCommandArgs_:function(e,t,n){if(!e.eol()){t.argString=e.match(/.*/)[0];var r=n.argDelimiter||/\s+/,i=se(t.argString).split(r);i.length&&i[0]&&(t.args=i)}},matchCommand_:function(e){for(var t=e.length;t>0;t--){var n=e.substring(0,t);if(this.commandMap_[n]){var r=this.commandMap_[n];if(0===r.name.indexOf(e))return r}}return null},buildCommandMap_:function(){this.commandMap_={};for(var e=0;e<T.length;e++){var t=T[e],n=t.shortName||t.name;this.commandMap_[n]=t}},map:function(e,t,n){if(":"!=e&&":"==e.charAt(0)){if(n)throw Error("Mode not supported for ex mappings");var r=e.substring(1);":"!=t&&":"==t.charAt(0)?this.commandMap_[r]={name:r,type:"exToEx",toInput:t.substring(1),user:!0}:this.commandMap_[r]={name:r,type:"exToKey",toKeys:t,user:!0}}else if(":"!=t&&":"==t.charAt(0)){var i={keys:e,type:"keyToEx",exArgs:{input:t.substring(1)}};n&&(i.context=n),I.unshift(i)}else i={keys:e,type:"keyToKey",toKeys:t},n&&(i.context=n),I.unshift(i)},unmap:function(e,t){if(":"!=e&&":"==e.charAt(0)){if(t)throw Error("Mode not supported for ex mappings");var n=e.substring(1);if(this.commandMap_[n]&&this.commandMap_[n].user)return delete this.commandMap_[n],!0}else for(var r=e,i=0;i<I.length;i++)if(r==I[i].keys&&I[i].context===t)return I.splice(i,1),!0}};var Ye={colorscheme:function(e,t){!t.args||t.args.length<1?De(e,e.getOption("theme")):e.setOption("theme",t.args[0])},map:function(e,t,n){var r=t.args;!r||r.length<2?e&&De(e,"Invalid mapping: "+t.input):je.map(r[0],r[1],n)},imap:function(e,t){this.map(e,t,"insert")},nmap:function(e,t){this.map(e,t,"normal")},vmap:function(e,t){this.map(e,t,"visual")},unmap:function(e,t,n){var r=t.args;(!r||r.length<1||!je.unmap(r[0],n))&&e&&De(e,"No such mapping: "+t.input)},move:function(e,t){V.processCommand(e,e.state.vim,{type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0},repeatOverride:t.line+1})},set:function(e,t){var n=t.args,r=t.setCfg||{};if(!n||n.length<1)e&&De(e,"Invalid mapping: "+t.input);else{var i=n[0].split("="),o=i[0],a=i[1],s=!1;if("?"==o.charAt(o.length-1)){if(a)throw Error("Trailing characters: "+t.argString);o=o.substring(0,o.length-1),s=!0}void 0===a&&"no"==o.substring(0,2)&&(o=o.substring(2),a=!1);var l=k[o]&&"boolean"==k[o].type;if(l&&null==a&&(a=!0),!l&&void 0===a||s){var c=O(o,e,r);c instanceof Error?De(e,c.message):De(e,!0===c||!1===c?" "+(c?"":"no")+o:" "+o+"="+c)}else{var u=E(o,a,e,r);u instanceof Error&&De(e,u.message)}}},setlocal:function(e,t){t.setCfg={scope:"local"},this.set(e,t)},setglobal:function(e,t){t.setCfg={scope:"global"},this.set(e,t)},registers:function(e,t){var n=t.args,r=N.registerController.registers,i="----------Registers----------\n\n";if(n){n=n.join("");for(var o=0;o<n.length;o++)a=n.charAt(o),N.registerController.isValidRegister(a)&&(i+='"'+a+" "+(r[a]||new K).toString()+"\n")}else for(var a in r){var s=r[a].toString();s.length&&(i+='"'+a+" "+s+"\n")}De(e,i)},sort:function(e,t){var n,r,i,o,a,s=function(){if(t.argString){var e=new b.StringStream(t.argString);if(e.eat("!")&&(n=!0),e.eol())return;if(!e.eatSpace())return"Invalid arguments";var s=e.match(/([dinuox]+)?\s*(\/.+\/)?\s*/);if(!s&&!e.eol())return"Invalid arguments";if(s[1]){r=-1!=s[1].indexOf("i"),i=-1!=s[1].indexOf("u");var l=-1!=s[1].indexOf("d")||-1!=s[1].indexOf("n")&&1,c=-1!=s[1].indexOf("x")&&1,u=-1!=s[1].indexOf("o")&&1;if(l+c+u>1)return"Invalid arguments";o=(l?"decimal":c&&"hex")||u&&"octal"}s[2]&&(a=new RegExp(s[2].substr(1,s[2].length-2),r?"i":""))}}();if(s)De(e,s+": "+t.argString);else{var l=t.line||e.firstLine(),c=t.lineEnd||t.line||e.lastLine();if(l!=c){var u=new A(l,0),d=new A(c,ae(e,c)),h=e.getRange(u,d).split("\n"),p=a||("decimal"==o?/(-?)([\d]+)/:"hex"==o?/(-?)(?:0x)?([0-9a-f]+)/i:"octal"==o?/([0-7]+)/:null),g="decimal"==o?10:"hex"==o?16:"octal"==o?8:null,m=[],f=[];if(o||a)for(var y=0;y<h.length;y++){var v=a?h[y].match(a):null;v&&""!=v[0]?m.push(v):!a&&p.exec(h[y])?m.push(h[y]):f.push(h[y])}else f=h;if(m.sort(a?function(e,t){var i;return n&&(i=e,e=t,t=i),r&&(e[0]=e[0].toLowerCase(),t[0]=t[0].toLowerCase()),e[0]<t[0]?-1:1}:k),a)for(y=0;y<m.length;y++)m[y]=m[y].input;else o||f.sort(k);if(h=n?m.concat(f):f.concat(m),i){var C,S=h;for(h=[],y=0;y<S.length;y++)S[y]!=C&&h.push(S[y]),C=S[y]}e.replaceRange(h.join("\n"),u,d)}}function k(e,t){var i;n&&(i=e,e=t,t=i),r&&(e=e.toLowerCase(),t=t.toLowerCase());var a=o&&p.exec(e),s=o&&p.exec(t);return a?(a=parseInt((a[1]+a[2]).toLowerCase(),g))-(s=parseInt((s[1]+s[2]).toLowerCase(),g)):e<t?-1:1}},vglobal:function(e,t){this.global(e,t)},global:function(e,t){var n=t.argString;if(n){var r,i="v"===t.commandName[0],o=void 0!==t.line?t.line:e.firstLine(),a=t.lineEnd||t.line||e.lastLine(),s=function(e){return Ee(e,"/")}(n),l=n;if(s.length&&(l=s[0],r=s.slice(1,s.length).join("/")),l)try{Be(e,l,!0,!0)}catch(t){return void De(e,"Invalid regex: "+l)}for(var c=Me(e).getQuery(),u=[],d=o;d<=a;d++){var h=e.getLineHandle(d);c.test(h.text)!==i&&u.push(r?h:h.text)}if(r){var p=0,g=function(){if(p<u.length){var t=u[p++],n=e.getLineNumber(t);if(null==n)return void g();var i=n+1+r;je.processCommand(e,i,{callback:g})}};g()}else De(e,u.join("\n"))}else De(e,"Regular Expression missing from global")},substitute:function(e,t){if(!e.getSearchCursor)throw new Error("Search feature not available. Requires searchcursor.js or any other getSearchCursor implementation.");var n,r,i,a,s=t.argString,l=s?Ee(s,s[0]):[],c="",u=!1,d=!1;if(l.length)n=l[0],O("pcre")&&""!==n&&(n=new RegExp(n).source),void 0!==(c=l[1])&&(c=O("pcre")?function(e){for(var t=new b.StringStream(e),n=[];!t.eol();){for(;t.peek()&&"\\"!=t.peek();)n.push(t.next());var r=!1;for(var i in Re)if(t.match(i,!0)){r=!0,n.push(Re[i]);break}r||n.push(t.next())}return n.join("")}(c.replace(/([^\\])&/g,"$1$$&")):function(e){for(var t,n=!1,r=[],i=-1;i<e.length;i++){var a=e.charAt(i)||"",s=e.charAt(i+1)||"";Ne[a+s]?(r.push(Ne[a+s]),i++):n?(r.push(a),n=!1):"\\"===a?(n=!0,t=s,o.test(t)||"$"===s?r.push("$"):"/"!==s&&"\\"!==s&&r.push("\\")):("$"===a&&r.push("$"),r.push(a),"/"===s&&r.push("\\"))}return r.join("")}(c),N.lastSubstituteReplacePart=c),r=l[2]?l[2].split(" "):[];else if(s&&s.length)return void De(e,"Substitutions should be of the form :s/pattern/replace/");if(r&&(i=r[0],a=parseInt(r[1]),i&&(-1!=i.indexOf("c")&&(u=!0),-1!=i.indexOf("g")&&(d=!0),n=O("pcre")?n+"/"+i:n.replace(/\//g,"\\/")+"/"+i)),n)try{Be(e,n,!0,!0)}catch(t){return void De(e,"Invalid regex: "+n)}if(void 0!==(c=c||N.lastSubstituteReplacePart)){var h=Me(e).getQuery(),p=void 0!==t.line?t.line:e.getCursor().line,g=t.lineEnd||p;p==e.firstLine()&&g==e.lastLine()&&(g=1/0),a&&(g=(p=g)+a-1);var m=J(e,new A(p,0)),f=e.getSearchCursor(h,m);e.pushUndoStop(),function(e,t,n,r,i,o,a,s,l){e.state.vim.exMode=!0;var c,u,d,h=!1;function p(){e.operation((function(){for(;!h;)g(),m();f()}))}function g(){var t=e.getRange(o.from(),o.to()).replace(a,s),n=o.to().line;o.replace(t),u=o.to().line,i+=u-n,d=u<n}function m(){for(;l=void 0,p=void 0,l=c&&ee(o.to()),(p=o.findNext())&&!p[0]&&l&&te(o.from(),l)&&(p=o.findNext()),p&&(t=o.from(),a=r,s=i,"number"!=typeof t&&(t=t.line),a instanceof Array?S(t,a):"number"==typeof s?t>=a&&t<=s:t==a);)if(n||o.from().line!=u||d)return e.scrollIntoView(o.from(),30),e.setSelection(o.from(),o.to()),c=o.from(),void(h=!1);var t,a,s,l,p;h=!0}function f(t){if(t&&t(),e.focus(),c){e.setCursor(c);var n=e.state.vim;n.exMode=!1,n.lastHPos=n.lastHSPos=c.ch}l&&l()}if(m(),!h)return t?void Pe(e,{prefix:Le("span","replace with ",Le("strong",s)," (y/n/a/q/l)"),onKeyDown:function(t,n,r){switch(b.e_stop(t),b.keyName(t)){case"Y":g(),m();break;case"N":m();break;case"A":var i=l;l=void 0,e.operation(p),l=i;break;case"L":g();case"Q":case"Esc":case"Ctrl-C":case"Ctrl-[":f(r)}return h&&f(r),!0}}):(p(),void(l&&l()));De(e,"No matches for "+a.source)}(e,u,d,p,g,f,h,c,t.callback)}else De(e,"No previous substitute regular expression")},redo:b.commands.redo,undo:b.commands.undo,write:function(e){b.commands.save?b.commands.save(e):e.save&&e.save()},nohlsearch:function(e){He(e)},yank:function(e){var t=ee(e.getCursor()).line,n=e.getLine(t);N.registerController.pushText("0","yank",n,!0,!0)},delmarks:function(e,t){if(t.argString&&se(t.argString))for(var n=e.state.vim,r=new b.StringStream(se(t.argString));!r.eol();){r.eatSpace();var i=r.pos;if(!r.match(/[a-zA-Z]/,!1))return void De(e,"Invalid argument: "+t.argString.substring(i));var o=r.next();if(r.match("-",!0)){if(!r.match(/[a-zA-Z]/,!1))return void De(e,"Invalid argument: "+t.argString.substring(i));var a=o,s=r.next();if(!(f(a)&&f(s)||y(a)&&y(s)))return void De(e,"Invalid argument: "+a+"-");var l=a.charCodeAt(0),c=s.charCodeAt(0);if(l>=c)return void De(e,"Invalid argument: "+t.argString.substring(i));for(var u=0;u<=c-l;u++){var d=String.fromCharCode(l+u);delete n.marks[d]}}else delete n.marks[o]}else De(e,"Argument required")}},je=new Ve;function Ge(e){var t=e.state.vim,n=N.macroModeState,r=N.registerController.getRegister("."),i=n.isPlaying,o=n.lastInsertModeChanges;i||(e.off("change",$e),b.off(e.getInputField(),"keydown",Xe)),!i&&t.insertModeRepeat>1&&(et(e,t,t.insertModeRepeat-1,!0),t.lastEditInputState.repeatOverride=t.insertModeRepeat),delete t.insertModeRepeat,t.insertMode=!1,e.setCursor(e.getCursor().line,e.getCursor().ch-1),e.setOption("keyMap","vim"),e.setOption("disableInput",!0),e.toggleOverwrite(!1),r.setText(o.changes.join("")),b.signal(e,"vim-mode-change",{mode:"normal"}),n.isRecording&&function(e){if(!e.isPlaying){var t=e.latestRegister,n=N.registerController.getRegister(t);n&&n.pushInsertModeChanges&&n.pushInsertModeChanges(e.lastInsertModeChanges)}}(n),e.enterVimMode()}function ze(e){I.unshift(e)}function Je(e,t,n,r){var i=N.registerController.getRegister(r);if(":"==r)return i.keyBuffer[0]&&je.processCommand(e,i.keyBuffer[0]),void(n.isPlaying=!1);var o=i.keyBuffer,a=0;n.isPlaying=!0,n.replaySearchQueries=i.searchQueries.slice(0);for(var s=0;s<o.length;s++)for(var l,c,u=o[s];u;)if(c=(l=/<\w+-.+?>|<\w+>|./.exec(u))[0],u=u.substring(l.index+c.length),U.handleKey(e,c,"macro"),t.insertMode){var d=i.insertModeChanges[a++].changes;N.macroModeState.lastInsertModeChanges.changes=d,tt(e,d,1),Ge(e)}n.isPlaying=!1}function $e(e,t){var n=N.macroModeState,r=n.lastInsertModeChanges;if(!n.isPlaying)for(;t;){if(r.expectCursorActivityForChange=!0,r.ignoreCount>1)r.ignoreCount--;else if("+input"==t.origin||"paste"==t.origin||void 0===t.origin){var i=e.listSelections().length;i>1&&(r.ignoreCount=i);var o=t.text.join("\n");r.maybeReset&&(r.changes=[],r.maybeReset=!1),o&&(e.state.overwrite&&!/\n/.test(o)?r.changes.push([o]):r.changes.push(o))}t=t.next}}function Qe(e){var t=e.state.vim;if(t.insertMode){var n=N.macroModeState;if(n.isPlaying)return;var r=n.lastInsertModeChanges;r.expectCursorActivityForChange?r.expectCursorActivityForChange=!1:r.maybeReset=!0}else e.curOp.isVimOp||function(e,t){var n=e.getCursor("anchor"),r=e.getCursor("head");if(t.visualMode&&!e.somethingSelected()?ge(e,!1):t.visualMode||t.insertMode||!e.somethingSelected()||(t.visualMode=!0,t.visualLine=!1,b.signal(e,"vim-mode-change",{mode:"visual"})),t.visualMode){var i=ne(r,n)?0:-1,o=ne(r,n)?-1:0;r=Q(r,0,i),n=Q(n,0,o),t.sel={anchor:n,head:r},we(e,t,"<",re(r,n)),we(e,t,">",ie(r,n))}else t.insertMode||(t.lastHPos=e.getCursor().ch)}(e,t)}function Ze(e){this.keyName=e}function Xe(e){var t=N.macroModeState.lastInsertModeChanges,n=b.keyName(e);n&&(-1==n.indexOf("Delete")&&-1==n.indexOf("Backspace")||b.lookupKey(n,"vim-insert",(function(){return t.maybeReset&&(t.changes=[],t.maybeReset=!1),t.changes.push(new Ze(n)),!0})))}function et(e,t,n,r){var i=N.macroModeState;i.isPlaying=!0;var o=!!t.lastEditActionCommand,a=t.inputState;function s(){o?V.processAction(e,t,t.lastEditActionCommand):V.evalInput(e,t)}function l(n){if(i.lastInsertModeChanges.changes.length>0){n=t.lastEditActionCommand?n:1;var r=i.lastInsertModeChanges;tt(e,r.changes,n)}}if(t.inputState=t.lastEditInputState,o&&t.lastEditActionCommand.interlaceInsertRepeat)for(var c=0;c<n;c++)s(),l(1);else r||s(),l(n);t.inputState=a,t.insertMode&&!r&&Ge(e),i.isPlaying=!1}function tt(e,t,n){function r(t){return"string"==typeof t?b.commands[t](e):t(e),!0}var i=e.getCursor("head"),o=N.macroModeState.lastInsertModeChanges.visualBlock;o&&(ue(e,i,o+1),n=e.listSelections().length,e.setCursor(i));for(var a=0;a<n;a++){o&&e.setCursor(Q(i,a,0));for(var s=0;s<t.length;s++){var l=t[s];if(l instanceof Ze)b.lookupKey(l.keyName,"vim-insert",r);else if("string"==typeof l)window.cm=e,e.replaceSelections(l);else{var c=e.getCursor(),u=Q(c,0,l[0].length);e.replaceRange(l[0],c,u),e.setCursor(u)}}}o&&e.setCursor(Q(i,0,1))}return b.keyMap.vim={attach:t,detach:e,call:n},M("insertModeEscKeysTimeout",200,"number"),b.keyMap["vim-insert"]={fallthrough:["default"],attach:t,detach:e,call:n},b.keyMap["vim-replace"]={Backspace:"goCharLeft",fallthrough:["vim-insert"],attach:t,detach:e,call:n},F(),U}();const M=b;class E{constructor(e,t,n=null){this.node=e,this.modeInfoNode=document.createElement("span"),this.secInfoNode=document.createElement("span"),this.notifNode=document.createElement("span"),this.notifNode.className="vim-notification",this.keyInfoNode=document.createElement("span"),this.keyInfoNode.setAttribute("style","float: right"),this.node.appendChild(this.modeInfoNode),this.node.appendChild(this.secInfoNode),this.node.appendChild(this.notifNode),this.node.appendChild(this.keyInfoNode),this.toggleVisibility(!1),this.editor=t,this.sanitizer=n}setMode(e){"visual"!==e.mode?this.setText(`--${e.mode.toUpperCase()}--`):"linewise"===e.subMode?this.setText("--VISUAL LINE--"):"blockwise"===e.subMode?this.setText("--VISUAL BLOCK--"):this.setText("--VISUAL--")}setKeyBuffer(e){this.keyInfoNode.textContent=e}setSec(e,t,n){if(this.notifNode.textContent="",void 0===e)return this.closeInput;this.setInnerHtml_(this.secInfoNode,e);const r=this.secInfoNode.querySelector("input");return r&&(r.focus(),this.input={callback:t,options:n,node:r},n&&(n.selectValueOnOpen&&r.select(),n.value&&(r.value=n.value)),this.addInputListeners()),this.closeInput}setText(e){this.modeInfoNode.textContent=e}toggleVisibility(e){this.node.style.display=e?"block":"none",this.input&&this.removeInputListeners(),clearInterval(this.notifTimeout)}closeInput=()=>{this.removeInputListeners(),this.input=null,this.setSec(""),this.editor&&this.editor.focus()};clear=()=>{this.setInnerHtml_(this.node,"")};inputKeyUp=e=>{const{options:t}=this.input;t&&t.onKeyUp&&t.onKeyUp(e,e.target.value,this.closeInput)};inputKeyInput=e=>{const{options:t}=this.input;t&&t.onKeyInput&&t.onKeyUp(e,e.target.value,this.closeInput)};inputBlur=()=>{const{options:e}=this.input;e.closeOnBlur&&this.closeInput()};inputKeyDown=e=>{const{options:t,callback:n}=this.input;t&&t.onKeyDown&&t.onKeyDown(e,e.target.value,this.closeInput)||((27===e.keyCode||t&&!1!==t.closeOnEnter&&13==e.keyCode)&&(this.input.node.blur(),e.stopPropagation(),this.closeInput()),13===e.keyCode&&n&&(e.stopPropagation(),e.preventDefault(),n(e.target.value)))};addInputListeners(){const{node:e}=this.input;e.addEventListener("keyup",this.inputKeyUp),e.addEventListener("keydown",this.inputKeyDown),e.addEventListener("input",this.inputKeyInput),e.addEventListener("blur",this.inputBlur)}removeInputListeners(){if(!this.input||!this.input.node)return;const{node:e}=this.input;e.removeEventListener("keyup",this.inputKeyUp),e.removeEventListener("keydown",this.inputKeyDown),e.removeEventListener("input",this.inputKeyInput),e.removeEventListener("blur",this.inputBlur)}showNotification(e){const t=document.createElement("span");this.setInnerHtml_(t,e),this.notifNode.textContent=t.textContent,this.notifTimeout=setTimeout((()=>{this.notifNode.textContent=""}),5e3)}setInnerHtml_(e,t){for(;e.childNodes.length;)e.removeChild(e.childNodes[0]);t&&(this.sanitizer?e.appendChild(this.sanitizer(t)):e.appendChild(t))}}var O=n(15647),N=n(52797),R="yt-light";s.editor.defineTheme(R,{base:"vs",inherit:!0,rules:[{token:"tablepath",foreground:"3e999f"},{token:"path",foreground:"3e999f",fontStyle:"underline"},{token:"string.sql",foreground:"a31515"}],colors:{"editorLineNumber.foreground":"#000000b3","editor.lineHighlightBackground":"#0000000a","editorGutter.background":"#0000000a"}});var L="yt-dark";s.editor.defineTheme(L,{base:"vs-dark",inherit:!0,rules:[{token:"tablepath",foreground:"3e999f"},{token:"path",foreground:"3e999f"},{token:"string.sql",foreground:"ce9178"}],colors:{"editorLineNumber.foreground":"#ffffffb3","editor.lineHighlightBackground":"#ffffff0a","editorGutter.background":"#ffffff0a","editor.background":"#2d2c33"}});var D=n(31470),P=n.n(D),B=n(28407),F=n(70232),U=n.n(F),_=n(29121),H=n(12937),K=n(77720),W={},q={},V=function(){function e(t){var n=this;(0,_.A)(this,e),this._languageId=void 0,this._loadingTriggered=void 0,this._lazyLoadPromise=void 0,this._lazyLoadPromiseResolve=void 0,this._lazyLoadPromiseReject=void 0,this._languageId=t,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((function(e,t){n._lazyLoadPromiseResolve=e,n._lazyLoadPromiseReject=t}))}return(0,H.A)(e,[{key:"whenLoaded",value:function(){return this._lazyLoadPromise}},{key:"load",value:function(){var e=this;return this._loadingTriggered||(this._loadingTriggered=!0,W[this._languageId].loader().then((function(t){return e._lazyLoadPromiseResolve(t)}),(function(t){return e._lazyLoadPromiseReject(t)}))),this._lazyLoadPromise}}],[{key:"getOrCreate",value:function(t){return q[t]||(q[t]=new e(t)),q[t]}}]),e}();function Y(e){var t=e.id;W[t]=e,K.eo.register(e);var n=V.getOrCreate(t);K.eo.setMonarchTokensProvider(t,n.whenLoaded().then((function(e){return e.language}))),K.eo.onLanguage(t,(function(){n.load().then((function(e){K.eo.setLanguageConfiguration(t,e.conf)}))})),n.whenLoaded().then((function(e){e.provideSuggestionsFunction&&K.eo.registerCompletionItemProvider(t,{triggerCharacters:["`",":","/",""," "],provideCompletionItems:e.provideSuggestionsFunction}),e.provideInlineSuggestionsFunction&&K.eo.registerInlineCompletionsProvider(t,{provideInlineCompletions:e.provideInlineSuggestionsFunction,freeInlineCompletions:function(){}})}))}var j,G=function(){function e(t,n,r){(0,_.A)(this,e),this._onDidChange=new K.vl,this._diagnosticsOptions=void 0,this._modeConfiguration=void 0,this._languageId=void 0,this._languageId=t,this.setDiagnosticsOptions(n),this.setModeConfiguration(r)}return(0,H.A)(e,[{key:"onDidChange",get:function(){return this._onDidChange.event}},{key:"languageId",get:function(){return this._languageId}},{key:"modeConfiguration",get:function(){return this._modeConfiguration}},{key:"diagnosticsOptions",get:function(){return this._diagnosticsOptions}},{key:"setDiagnosticsOptions",value:function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)}},{key:"setModeConfiguration",value:function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}}]),e}(),z=n(13322),J=n(2336),$=function(e,t){var n=(0,J.kV)(t,e.suggestColumnAliases),r=(0,J.mF)(t,e.suggestKeywords);return[].concat((0,z.A)(n),(0,z.A)(r))},Q=n(52891),Z=n(51757),X=n(57436),ee=n(33547),te=n(29746),ne=n(64714),re=n(55956),ie=function(){var e=(0,B.A)(U().mark((function e(t,n){var i,o,a,s,l,c;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.match(/(\w+\.)*`(\/\/([^`]*))`/g)){e.next=3;break}return e.abrupt("return",{});case 3:return o=(0,z.A)(t.matchAll(/(USE|use)\s([^;]+)/g))[0],a=(null==o?void 0:o[2].replace(/[^\w]/g,""))||null,s=[],i.forEach((function(e){var t=(0,X.$)(e,n),i=t.path,o=t.cluster||a;if(i&&o){var l=ee.YT.clusters[o];l&&s.push({command:"get",parameters:{path:"".concat(i,"/@schema")},setup:(0,r.A)({proxy:(0,N.v9)(l)},re.oj)})}})),e.next=9,ne.Qq.executeBatch(ne.Vu.navigationGetPath,{parameters:{requests:s}});case 9:return l=e.sent,c={},l.forEach((function(e,t){if(e.output){var n=te.A.getValue(e.output,"");c[i[t]]=n.map((function(e){return e.name}))}})),e.abrupt("return",c);case 13:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),oe=n(11737),ae=function(){var e=(0,B.A)(U().mark((function e(t){var n,r,i,o,a,s,l;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.tableSuggestions,i=t.model,o=t.engine,a=t.range,r){e.next=3;break}return e.abrupt("return",[]);case 3:return s=[{label:"*",insertText:"*",kind:K.eo.CompletionItemKind.Field,range:a,sortText:(0,oe.s)(J.GX.suggestColumns)}],e.next=6,ie(i.getValue(),o);case 6:return l=e.sent,null===(n=r.tables)||void 0===n||n.forEach((function(e){var t=e.name,n=e.alias;t in l&&l[t].forEach((function(e){var r=n?"".concat(n,".").concat(e):e;s.push({label:{label:r,description:"Column",detail:" (".concat(t,")")},insertText:r,kind:K.eo.CompletionItemKind.Field,range:a,sortText:(0,oe.s)(J.GX.suggestColumns)})}))})),e.abrupt("return",s);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),se=function(e){var t=e.model,n=e.parseResult,r=e.range,i=[],o=t.getLineContent(r.startLineNumber).slice(r.startColumn-2,r.endColumn);if("suggestTableFunctions"in n&&n.suggestTableFunctions||"suggestViewsOrTables"in n&&n.suggestViewsOrTables){var a="``"===o,s=a?"//":"`//`",l=a?"//${1:}":"`//${1:}`";i.push({label:s,insertText:l,insertTextRules:K.eo.CompletionItemInsertTextRule.InsertAsSnippet,kind:K.eo.CompletionItemKind.Snippet,range:r,sortText:(0,oe.s)(0)})}return i},le=function(e,t){return function(){var n=(0,B.A)(U().mark((function n(r,i,o,a){var s,l,c,u,d,h;return U().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s=e(r.getValue(),{line:i.lineNumber,column:i.column}),l=(0,Q.k)(r,i),n.next=4,(0,Z.T)({model:r,monacoCursorPosition:i,engine:t,range:l});case 4:return c=n.sent,n.next=7,ae({model:r,engine:t,tableSuggestions:s.suggestColumns,range:l});case 7:return u=n.sent,d=se({model:r,parseResult:s,range:l}),h=$(s,l),n.abrupt("return",{suggestions:[].concat((0,z.A)(d),(0,z.A)(u),(0,z.A)(c),(0,z.A)(h))});case 11:case"end":return n.stop()}}),n)})));return function(e,t,r,i){return n.apply(this,arguments)}}()},ce=n(50449),ue=n(73689),de=n(30996),he=n(13542),pe=n(94383),ge=n(7787),me=n(24503),fe=n.n(me),ye=(0,he.ai)(),ve=fe()((function(e){var t;return null===(t=ge.Ay.getInlineSuggestionsApi())||void 0===t?void 0:t.getQuerySuggestions(e)}),200),Ce=function(e){return function(){var t=(0,B.A)(U().mark((function t(n,r,i,o){var a,s,l;return U().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=ye.getState(),(0,pe.RR)(a)){t.next=4;break}return t.abrupt("return",{items:[]});case 4:return t.next=6,ve({query:n.getValue(),line:r.lineNumber,column:r.column,engine:e});case 6:if(s=t.sent){t.next=9;break}return t.abrupt("return",{items:[]});case 9:return l=(0,Q.k)(n,r),t.abrupt("return",{items:s.map((function(e){return{insertText:e,range:l,command:{id:"accessQuerySuggestionsTelemetry",title:"string",arguments:[]}}}))});case 11:case"end":return t.stop()}}),t)})));return function(e,n,r,i){return t.apply(this,arguments)}}()};Y({id:ue.m.CHYT,extensions:[],loader:(j=(0,B.A)(U().mark((function e(){var t,r;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.e(9293).then(n.bind(n,14919));case 2:return t=e.sent,e.next=5,Promise.all([n.e(1306),n.e(3800)]).then(n.bind(n,84807));case 5:return r=e.sent,e.abrupt("return",{conf:t.conf,language:t.language,provideSuggestionsFunction:r?le(r.parseClickHouseQuery,de.d.CHYT):ce._q,provideInlineSuggestionsFunction:Ce(de.d.CHYT)});case 7:case"end":return e.stop()}}),e)}))),function(){return j.apply(this,arguments)})});var Se=new G(ue.m.CHYT,{validate:!0},{completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0});K.eo[ue.m.CHYT]=Se;var ke=n(71183);Y({id:ue.m.YQL,extensions:[],loader:function(){var e=(0,B.A)(U().mark((function e(){var t,r;return U().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.resolve().then(n.bind(n,65185));case 2:return t=e.sent,e.next=5,Promise.all([n.e(1306),n.e(7432)]).then(n.bind(n,23439));case 5:return r=e.sent,e.abrupt("return",{conf:t.conf,language:t.language,provideSuggestionsFunction:r?le(r.parseYqlQuery,de.d.YQL):ke.rL,provideInlineSuggestionsFunction:Ce(de.d.YQL)});case 7:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});var be=n(89814);Y({id:"yql_ansi",extensions:[],loader:function(){return Promise.resolve().then(n.bind(n,89814)).then((function(e){return{conf:e.conf,language:e.language,provideSuggestionsFunction:be.provideSuggestionsFunction}}))}}),Y({id:"s-expression",extensions:[],loader:function(){return n.e(9369).then(n.bind(n,57897)).then((function(e){return{conf:e.conf,language:e.language,provideSuggestionsFunction:e.provideSuggestionsFunction}}))}}),s.editor.defineTheme("vs",{base:"vs",inherit:!0,rules:[{token:"string.tablepath",foreground:"338186"},{token:"constant.yql",foreground:"608b4e"},{token:"keyword.type",foreground:"4d932d"},{token:"string.sql",foreground:"a31515"},{token:"support.function",foreground:"7a3e9d"},{token:"constant.other.color",foreground:"7a3e9d"},{token:"comment",foreground:"969896"}],colors:{"editor.lineHighlightBackground":"#EFEFEF"}}),s.editor.defineTheme("vs-dark",{base:"vs-dark",inherit:!0,rules:[{token:"string.tablepath",foreground:"338186"},{token:"constant.yql",foreground:"608b4e"},{token:"storage.type",foreground:"6A8759"},{token:"string.sql",foreground:"ce9178"},{token:"support.function",foreground:"9e7bb0"},{token:"constant.other.color",foreground:"9e7bb0"},{token:"comment",foreground:"969896"}],colors:{"editor.lineHighlightBackground":"#282A2E"}});var Ae=n(66026),we=n(64922),Ie=(0,o.A)("yt-monaco-editor"),xe={dark:L,"dark-hc":"hc-black",light:R,"light-hc":R};const Te=function(e){var t=e.className,n=e.readOnly,o=e.monacoConfig,l=e.value,c=e.language,u=e.onClick,d=e.onChange,h=e.editorRef,p=(0,O.d4)(Ae.qP),g=(0,O.d4)(N.O4),m=(0,i.useRef)(s.editor.createModel(l,c)),f=(0,i.useRef)(),y=(0,i.useRef)(null),v=(0,i.useRef)(null),C=(0,i.useRef)(a.A.getScope()),S=(0,i.useRef)(!1),k=(0,i.useRef)({theme:g,monacoConfig:o,readOnly:n}),b=(0,i.useCallback)((function(){S.current||d(m.current.getValue())}),[d]);return(0,i.useEffect)((function(){var e=m.current,t=s.editor.create(y.current,(0,r.A)({model:e,renderLineHighlight:"none",colorDecorators:!0,automaticLayout:!0,readOnly:n,minimap:{enabled:!1},lineNumbers:"on",suggestOnTriggerCharacters:!0,wordBasedSuggestions:!1,theme:xe[g]},o));return t.updateOptions({lineNumbers:function(e){return'<div class="'.concat(Ie("line-number"),'" data-number="').concat(e,'">').concat(e,"</div>")}}),t.onMouseDown((function(e){null==u||u(e)})),e.onDidChangeContent(b),a.A.setScope("monaco-editor"),h&&(h.current=t),function(){var e;null===(e=t.getModel())||void 0===e||e.dispose(),t.dispose(),a.A.setScope(C.current)}}),[]),(0,i.useEffect)((function(){if(p&&null!=h&&h.current)return f.current=function(e,t=null,n=E,r=null){const i=new M(e);if(!t)return i.attach(),i;const o=new n(t,e,r);let a="";return i.on("vim-mode-change",(e=>{o.setMode(e)})),i.on("vim-keypress",(e=>{":"===e?a="":a+=e,o.setKeyBuffer(a)})),i.on("vim-command-done",(()=>{a="",o.setKeyBuffer(a)})),i.on("dispose",(function(){o.toggleVisibility(!1),o.closeInput(),o.clear()})),o.toggleVisibility(!0),i.setStatusBar(o),i.attach(),i}(null==h?void 0:h.current,null==v?void 0:v.current),function(){var e;null===(e=f.current)||void 0===e||e.dispose()}}),[h,p]),(0,i.useEffect)((function(){var e,t,i=m.current,a={};i.getValue()!==l&&(S.current=!0,i.setValue(l),S.current=!1),i.getLanguageId()!==c&&(m.current=s.editor.createModel(i.getValue(),c),m.current.onDidChangeContent(b),null==h||null===(e=h.current)||void 0===e||e.setModel(m.current)),P()(k.current.monacoConfig,o)||(a=(0,r.A)({},o)),g!==k.current.theme&&(a.theme=g),n!==k.current.readOnly&&(a.readOnly=n),Object.keys(a).length&&(null==h||null===(t=h.current)||void 0===t||t.updateOptions(a)),k.current={monacoConfig:o,theme:g,readOnly:n}}),[h,c,o,b,n,g,l]),p?(0,we.jsxs)("div",{className:Ie({"vim-mode":p},t),children:[(0,we.jsx)("div",{ref:y,className:Ie("editor")}),(0,we.jsx)("div",{ref:v,className:Ie("status")})]}):(0,we.jsx)("div",{className:Ie(null,t),children:(0,we.jsx)("div",{ref:y,className:Ie("editor")})})}},50449:(e,t,n)=>{n.d(t,{AA:()=>c,RE:()=>s,SL:()=>m,_q:()=>f,g6:()=>u,gI:()=>p,j4:()=>g,js:()=>d,m4:()=>h});var r=n(13322),i=n(77720),o=n(2336),a=n(52891),s=["AND","ANY","AS","ASC","ATTACH","BETWEEN","CASE","CAST","CREATE","CROSS","DATABASE","DATABASES","DEFAULT","DELETE","DESC","DESCRIBE","DETACH","DISTINCT","DROP","ELSE","END","FOREIGN","FROM","GRANT","HAVING","IF","INNER","INSERT","JOIN","KEY","LEFT","NATURAL","NOT","OFFSET","ON","OPTIMIZE","OR","OUTER","PREWHERE","PRIMARY","PROCESSLIST","REFERENCES","RIGHT","SELECT","SHOW","TABLE","THEN","TO","TOTALS","TYPE","UNION","UPDATE","USE","WHEN","WHERE","WITH"],l=["GROUP BY","ON CLUSTER","ORDER BY","LIMIT","RENAME TABLE","IF NOT EXISTS","IF EXISTS","FORMAT Vertical","FORMAT JSONCompact","FORMAT JSONEachRow","FORMAT TSKV","FORMAT TabSeparatedWithNames","FORMAT TabSeparatedWithNamesAndTypes","FORMAT TabSeparatedRaw","FORMAT BlockTabSeparated","FORMAT CSVWithNames","FORMAT CSV","FORMAT JSON","FORMAT TabSeparated"],c=["true","false","NULL"],u=["__bitBoolMaskAnd","__bitBoolMaskOr","__bitSwapLastTwo","__bitWrapperFunc","__getScalar","accurate_Cast","accurate_CastOrNull","accurateCast","accurateCastOrNull","acosh","addDays","addHours","addMinutes","addMonths","addQuarters","addressToLine","addressToSymbol","addSeconds","addWeeks","addYears","aes_decrypt_mysql","aes_encrypt_mysql","aggThrow","alphaTokens","and","any","anyHeavy","anyLast","appendTrailingCharIfAbsent","argMax","argMin","array","arrayAll","arrayAUC","arrayAvg","arrayCompact","arrayConcat","arrayCount","arrayCumSum","arrayCumSumNonNegative","arrayDifference","arrayDistinct","arrayElement","arrayEnumerate","arrayEnumerateDense","arrayEnumerateDenseRanked","arrayEnumerateUniq","arrayEnumerateUniqRanked","arrayExists","arrayFill","arrayFilter","arrayFirst","arrayFirstIndex","arrayFlatten","arrayIntersect","arrayJoin","arrayMap","arrayMax","arrayMin","arrayPopBack","arrayPopFront","arrayProduct","arrayPushBack","arrayPushFront","arrayReduce","arrayReduceInRanges","arrayResize","arrayReverse","arrayReverseFill","arrayReverseSort","arrayReverseSplit","arraySlice","arraySort","arraySplit","arrayStringConcat","arraySum","arrayUniq","arrayWithConstant","arrayZip","asinh","assumeNotNull","atanh","avgWeighted","bar","base64Decode","base64Encode","basename","bitAnd","bitCount","bitHammingDistance","bitmaskToArray","bitmaskToList","bitNot","bitOr","bitPositionsToArray","bitRotateLeft","bitRotateRight","bitShiftLeft","bitShiftRight","bitTest","bitTestAll","bitTestAny","bitXor","blockNumber","blockSerializedSize","blockSize","boundingRatio","buildId","byteSize","caseWithExpr","caseWithExpression","caseWithoutExpr","caseWithoutExpression","categoricalInformationValue","cbrt","cityHash64","concatAssumeInjective","ConvertYson","corrStable","cosh","countDigits","countEqual","countMatches","countMatchesCaseInsensitive","countSubstringsCaseInsensitive","countSubstringsCaseInsensitiveUTF8","covarPop","covarPopStable","covarSamp","covarSampStable","currentDatabase","currentProfiles","currentRoles","currentUser","cutFragment","cutIPv6","cutQueryString","cutQueryStringAndFragment","cutToFirstSignificantSubdomain","cutToFirstSignificantSubdomainCustom","cutToFirstSignificantSubdomainCustomWithWWW","cutToFirstSignificantSubdomainWithWWW","cutURLParameter","cutWWW","dateTime64ToSnowflake","dateTimeToSnowflake","dateTrunc","decodeURLComponent","decodeXMLComponent","decrypt","defaultProfiles","defaultRoles","defaultValueOfArgumentType","defaultValueOfTypeName","deltaSum","deltaSumTimestamp","demangle","dictGet","dictGetChildren","dictGetDate","dictGetDateOrDefault","dictGetDateTime","dictGetDateTimeOrDefault","dictGetDescendants","dictGetFloat32","dictGetFloat32OrDefault","dictGetFloat64","dictGetFloat64OrDefault","dictGetHierarchy","dictGetInt8","dictGetInt8OrDefault","dictGetInt16","dictGetInt16OrDefault","dictGetInt32","dictGetInt32OrDefault","dictGetInt64","dictGetInt64OrDefault","dictGetOrDefault","dictGetOrNull","dictGetString","dictGetStringOrDefault","dictGetUInt8","dictGetUInt8OrDefault","dictGetUInt16","dictGetUInt16OrDefault","dictGetUInt32","dictGetUInt32OrDefault","dictGetUInt64","dictGetUInt64OrDefault","dictGetUUID","dictGetUUIDOrDefault","dictHas","dictIsIn","divide","domain","domainWithoutWWW","dumpColumnStructure","e","empty","emptyArrayDate","emptyArrayDateTime","emptyArrayFloat32","emptyArrayFloat64","emptyArrayInt8","emptyArrayInt16","emptyArrayInt32","emptyArrayInt64","emptyArrayString","emptyArrayToSingle","emptyArrayUInt8","emptyArrayUInt16","emptyArrayUInt32","emptyArrayUInt64","enabledProfiles","enabledRoles","encodeXMLComponent","encrypt","endsWith","entropy","equals","erf","erfc","errorCodeToName","evalMLMethod","exp2","exp10","extract","extractAll","extractAllGroups","extractAllGroupsHorizontal","extractAllGroupsVertical","extractGroups","extractTextFromHTML","extractURLParameter","extractURLParameterNames","extractURLParameters","farmFingerprint64","farmHash64","file","filesystemAvailable","filesystemCapacity","filesystemFree","finalizeAggregation","firstSignificantSubdomain","firstSignificantSubdomainCustom","format","formatDateTime","formatReadableQuantity","formatReadableSize","formatReadableTimeDelta","formatRow","formatRowNoNewline","fragment","FROM_UNIXTIME","fromModifiedJulianDay","fromModifiedJulianDayOrNull","fromUnixTimestamp","fromUnixTimestamp64Micro","fromUnixTimestamp64Milli","fromUnixTimestamp64Nano","fullHostName","fuzzBits","gcd","generateUUIDv4","geoDistance","geohashDecode","geohashEncode","geohashesInBox","geoToH3","getMacro","getServerPort","getSetting","getSizeOfEnumType","globalIn","globalInIgnoreSet","globalNotIn","globalNotInIgnoreSet","globalNotNullIn","globalNotNullInIgnoreSet","globalNullIn","globalNullInIgnoreSet","globalVariable","greatCircleAngle","greatCircleDistance","greater","greaterOrEquals","groupArray","groupArrayInsertAt","groupArrayMovingAvg","groupArrayMovingSum","groupArraySample","groupBitAnd","groupBitOr","groupBitXor","groupUniqArray","h3EdgeAngle","h3EdgeLengthM","h3GetBaseCell","h3GetResolution","h3HexAreaM2","h3IndexesAreNeighbors","h3IsValid","h3kRing","h3ToChildren","h3ToGeo","h3ToParent","h3ToString","halfMD5","has","hasAll","hasAny","hasColumnInTable","hasSubstr","hasThreadFuzzer","hasToken","hasTokenCaseInsensitive","histogram","hiveHash","hostName","hostname","identity","ifNotFinite","ignore","ilike","in","indexHint","indexOf","inIgnoreSet","initializeAggregation","initialQueryID","intDiv","intDivOrZero","intervalLengthSum","intExp2","intExp10","intHash32","intHash64","IPv4CIDRToRange","IPv4NumToString","IPv4NumToStringClassC","IPv4StringToNum","IPv4ToIPv6","IPv6CIDRToRange","IPv6NumToString","IPv6StringToNum","isConstant","isDecimalOverflow","isFinite","isInfinite","isIPAddressInRange","isIPv4String","isIPv6String","isNaN","isNotNull","isValidJSON","isValidUTF8","isZeroOrNull","javaHash","javaHashUTF16LE","joinGet","joinGetOrNull","JSON_EXISTS","JSON_QUERY","JSON_VALUE","JSONExtract","JSONExtractArrayRaw","JSONExtractBool","JSONExtractFloat","JSONExtractInt","JSONExtractKeysAndValues","JSONExtractKeysAndValuesRaw","JSONExtractRaw","JSONExtractString","JSONExtractUInt","JSONHas","JSONKey","JSONLength","JSONType","jumpConsistentHash","kurtPop","kurtSamp","lagInFrame","lcm","leadInFrame","leftPad","leftPadUTF8","lengthUTF8","less","lessOrEquals","lgamma","like","log1p","logTrace","lowCardinalityIndices","lowCardinalityKeys","lowerUTF8","MACNumToString","MACStringToNum","MACStringToOUI","mannWhitneyUTest","map","mapAdd","mapContains","mapKeys","mapPopulateSeries","mapSubtract","mapValues","match","materialize","maxIntersections","maxIntersectionsPosition","maxMap","MD5","median","medianBFloat16","medianBFloat16Weighted","medianDeterministic","medianExact","medianExactHigh","medianExactLow","medianExactWeighted","medianTDigest","medianTDigestWeighted","medianTiming","medianTimingWeighted","metroHash64","minMap","minus","modelEvaluate","modulo","moduloLegacy","moduloOrZero","multiFuzzyMatchAllIndices","multiFuzzyMatchAny","multiFuzzyMatchAnyIndex","multiIf","multiMatchAllIndices","multiMatchAny","multiMatchAnyIndex","multiply","multiSearchAllPositions","multiSearchAllPositionsCaseInsensitive","multiSearchAllPositionsCaseInsensitiveUTF8","multiSearchAllPositionsUTF8","multiSearchAny","multiSearchAnyCaseInsensitive","multiSearchAnyCaseInsensitiveUTF8","multiSearchAnyUTF8","multiSearchFirstIndex","multiSearchFirstIndexCaseInsensitive","multiSearchFirstIndexCaseInsensitiveUTF8","multiSearchFirstIndexUTF8","multiSearchFirstPosition","multiSearchFirstPositionCaseInsensitive","multiSearchFirstPositionCaseInsensitiveUTF8","multiSearchFirstPositionUTF8","negate","neighbor","netloc","ngramDistance","ngramDistanceCaseInsensitive","ngramDistanceCaseInsensitiveUTF8","ngramDistanceUTF8","ngramMinHash","ngramMinHashArg","ngramMinHashArgCaseInsensitive","ngramMinHashArgCaseInsensitiveUTF8","ngramMinHashArgUTF8","ngramMinHashCaseInsensitive","ngramMinHashCaseInsensitiveUTF8","ngramMinHashUTF8","ngramSearch","ngramSearchCaseInsensitive","ngramSearchCaseInsensitiveUTF8","ngramSearchUTF8","ngramSimHash","ngramSimHashCaseInsensitive","ngramSimHashCaseInsensitiveUTF8","ngramSimHashUTF8","normalizedQueryHash","normalizedQueryHashKeepNames","normalizeQuery","normalizeQueryKeepNames","notEmpty","notEquals","notILike","notIn","notInIgnoreSet","notLike","notNullIn","notNullInIgnoreSet","nullIn","nullInIgnoreSet","or","parseDateTime32BestEffort","parseDateTime32BestEffortOrNull","parseDateTime32BestEffortOrZero","parseDateTime64BestEffort","parseDateTime64BestEffortOrNull","parseDateTime64BestEffortOrZero","parseDateTimeBestEffort","parseDateTimeBestEffortOrNull","parseDateTimeBestEffortOrZero","parseDateTimeBestEffortUS","parseDateTimeBestEffortUSOrNull","parseDateTimeBestEffortUSOrZero","partitionId","path","pathFull","plus","pointInEllipses","pointInPolygon","polygonAreaCartesian","polygonAreaSpherical","polygonConvexHullCartesian","polygonPerimeterCartesian","polygonPerimeterSpherical","polygonsDistanceCartesian","polygonsDistanceSpherical","polygonsEqualsCartesian","polygonsIntersectionCartesian","polygonsIntersectionSpherical","polygonsSymDifferenceCartesian","polygonsSymDifferenceSpherical","polygonsUnionCartesian","polygonsUnionSpherical","polygonsWithinCartesian","polygonsWithinSpherical","port","positionCaseInsensitive","positionCaseInsensitiveUTF8","positionUTF8","protocol","quantile","quantileBFloat16","quantileBFloat16Weighted","quantileDeterministic","quantileExact","quantileExactExclusive","quantileExactHigh","quantileExactInclusive","quantileExactLow","quantileExactWeighted","quantiles","quantilesBFloat16","quantilesBFloat16Weighted","quantilesDeterministic","quantilesExact","quantilesExactExclusive","quantilesExactHigh","quantilesExactInclusive","quantilesExactLow","quantilesExactWeighted","quantilesTDigest","quantilesTDigestWeighted","quantilesTiming","quantilesTimingWeighted","quantileTDigest","quantileTDigestWeighted","quantileTiming","quantileTimingWeighted","queryID","queryString","queryStringAndFragment","rand32","rand64","randConstant","randomFixedString","randomPrintableASCII","randomString","randomStringUTF8","range","rankCorr","readWktMultiPolygon","readWktPoint","readWktPolygon","readWktRing","regexpQuoteMeta","regionHierarchy","regionIn","regionToArea","regionToCity","regionToContinent","regionToCountry","regionToDistrict","regionToName","regionToPopulation","regionToTopContinent","reinterpret","reinterpretAsDate","reinterpretAsDateTime","reinterpretAsFixedString","reinterpretAsFloat32","reinterpretAsFloat64","reinterpretAsInt8","reinterpretAsInt16","reinterpretAsInt32","reinterpretAsInt64","reinterpretAsInt128","reinterpretAsInt256","reinterpretAsString","reinterpretAsUInt8","reinterpretAsUInt16","reinterpretAsUInt32","reinterpretAsUInt64","reinterpretAsUInt128","reinterpretAsUInt256","reinterpretAsUUID","replaceAll","replaceOne","replaceRegexpAll","replaceRegexpOne","replicate","retention","reverseUTF8","rightPad","rightPadUTF8","roundAge","roundBankers","roundDown","roundDuration","roundToExp2","rowNumberInAllBlocks","rowNumberInBlock","runningAccumulate","runningConcurrency","runningDifference","runningDifferenceStartingWithFirstValue","sequenceCount","sequenceMatch","sequenceNextNode","serverUUID","SHA1","SHA224","SHA256","SHA512","shardCount","shardNum","sigmoid","simpleJSONExtractBool","simpleJSONExtractFloat","simpleJSONExtractInt","simpleJSONExtractRaw","simpleJSONExtractString","simpleJSONExtractUInt","simpleJSONHas","simpleLinearRegression","singleValueOrNull","sinh","sipHash64","sipHash128","skewPop","skewSamp","sleep","sleepEachRow","snowflakeToDateTime","snowflakeToDateTime64","splitByChar","splitByNonAlpha","splitByRegexp","splitByString","splitByWhitespace","startsWith","stddevPop","stddevPopStable","stddevSamp","stddevSampStable","stochasticLinearRegression","stochasticLogisticRegression","stringToH3","studentTTest","substringUTF8","subtractDays","subtractHours","subtractMinutes","subtractMonths","subtractQuarters","subtractSeconds","subtractWeeks","subtractYears","sumCount","sumKahan","sumMap","sumMapFiltered","sumMapFilteredWithOverflow","sumMapWithOverflow","sumWithOverflow","svg","tcpPort","tgamma","throwIf","tid","timeSlot","timeSlots","timeZone","timezone","timeZoneOf","timezoneOf","timeZoneOffset","timezoneOffset","toColumnTypeName","toDate","toDate32","toDate32OrNull","toDate32OrZero","toDateOrNull","toDateOrZero","toDateTime","toDateTime32","toDateTime64","toDateTime64OrNull","toDateTime64OrZero","toDateTimeOrNull","toDateTimeOrZero","today","toDayOfMonth","toDayOfWeek","toDayOfYear","toDecimal32","toDecimal32OrNull","toDecimal32OrZero","toDecimal64","toDecimal64OrNull","toDecimal64OrZero","toDecimal128","toDecimal128OrNull","toDecimal128OrZero","toDecimal256","toDecimal256OrNull","toDecimal256OrZero","toFixedString","toFloat32","toFloat32OrNull","toFloat32OrZero","toFloat64","toFloat64OrNull","toFloat64OrZero","toHour","toInt8","toInt8OrNull","toInt8OrZero","toInt16","toInt16OrNull","toInt16OrZero","toInt32","toInt32OrNull","toInt32OrZero","toInt64","toInt64OrNull","toInt64OrZero","toInt128","toInt128OrNull","toInt128OrZero","toInt256","toInt256OrNull","toInt256OrZero","toIntervalDay","toIntervalHour","toIntervalMinute","toIntervalMonth","toIntervalQuarter","toIntervalSecond","toIntervalWeek","toIntervalYear","toIPv4","toIPv6","toISOWeek","toISOYear","toJSONString","toLowCardinality","toMinute","toModifiedJulianDay","toModifiedJulianDayOrNull","toMonday","toMonth","toNullable","topK","topKWeighted","topLevelDomain","toQuarter","toRelativeDayNum","toRelativeHourNum","toRelativeMinuteNum","toRelativeMonthNum","toRelativeQuarterNum","toRelativeSecondNum","toRelativeWeekNum","toRelativeYearNum","toSecond","toStartOfDay","toStartOfFifteenMinutes","toStartOfFiveMinute","toStartOfHour","toStartOfInterval","toStartOfISOYear","toStartOfMinute","toStartOfMonth","toStartOfQuarter","toStartOfSecond","toStartOfTenMinutes","toStartOfWeek","toStartOfYear","toString","toStringCutToZero","toTime","toTimeZone","toTimezone","toTypeName","toUInt8","toUInt8OrNull","toUInt8OrZero","toUInt16","toUInt16OrNull","toUInt16OrZero","toUInt32","toUInt32OrNull","toUInt32OrZero","toUInt64","toUInt64OrNull","toUInt64OrZero","toUInt128","toUInt128OrNull","toUInt128OrZero","toUInt256","toUInt256OrNull","toUInt256OrZero","toUnixTimestamp","toUnixTimestamp64Micro","toUnixTimestamp64Milli","toUnixTimestamp64Nano","toUUID","toUUIDOrNull","toUUIDOrZero","toValidUTF8","toWeek","toYear","toYearWeek","toYYYYMM","toYYYYMMDD","toYYYYMMDDhhmmss","transform","trimBoth","trimLeft","trimRight","tryBase64Decode","tuple","tupleElement","tupleHammingDistance","tupleToNameValuePairs","uniq","uniqCombined","uniqCombined64","uniqExact","uniqHLL12","uniqUpTo","upperUTF8","uptime","URLHash","URLHierarchy","URLPathHierarchy","UUIDNumToString","UUIDStringToNum","validateNestedArraySizes","varPop","varPopStable","varSamp","varSampStable","visibleWidth","visitParamExtractBool","visitParamExtractFloat","visitParamExtractInt","visitParamExtractRaw","visitParamExtractString","visitParamExtractUInt","visitParamHas","welchTTest","windowFunnel","wkt","wordShingleMinHash","wordShingleMinHashArg","wordShingleMinHashArgCaseInsensitive","wordShingleMinHashArgCaseInsensitiveUTF8","wordShingleMinHashArgUTF8","wordShingleMinHashCaseInsensitive","wordShingleMinHashCaseInsensitiveUTF8","wordShingleMinHashUTF8","wordShingleSimHash","wordShingleSimHashCaseInsensitive","wordShingleSimHashCaseInsensitiveUTF8","wordShingleSimHashUTF8","xor","xxHash32","xxHash64","yandexConsistentHash","yesterday","YPathArrayBoolean","YPathArrayBooleanStrict","YPathArrayDouble","YPathArrayDoubleStrict","YPathArrayInt64","YPathArrayInt64Strict","YPathArrayUInt64","YPathArrayUInt64Strict","YPathBoolean","YPathBooleanStrict","YPathDouble","YPathDoubleStrict","YPathExtract","YPathExtractStrict","YPathInt64","YPathInt64Strict","YPathRaw","YPathRawStrict","YPathString","YPathStringStrict","YPathUInt64","YPathUInt64Strict","YSONExtract","YSONExtractArrayRaw","YSONExtractBool","YSONExtractFloat","YSONExtractInt","YSONExtractKeysAndValues","YSONExtractKeysAndValuesRaw","YSONExtractRaw","YSONExtractString","YSONExtractUInt","YSONHas","YSONKey","YSONLength","YSONType"],d=["_CAST","abs","acos","asin","atan","atan2","avg","bin","BIT_AND","BIT_OR","BIT_XOR","CAST","ceil","ceiling","char","CHAR_LENGTH","CHARACTER_LENGTH","coalesce","concat","connection_id","connectionId","corr","cos","count","countSubstrings","COVAR_POP","COVAR_SAMP","CRC32","CRC32IEEE","CRC64","DATABASE","DATE","date_trunc","dateDiff","dateName","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","dense_rank","exp","first_value","flatten","floor","FQDN","FROM_BASE64","greatest","hex","HOUR","hypot","if","ifNull","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","initial_query_id","isNull","last_value","lcase","least","length","ln","locate","log","log2","log10","lower","lpad","max","mid","min","MINUTE","mod","MONTH","not","now","now64","nth_value","nullIf","pi","position","pow","power","QUARTER","query_id","rand","rank","repeat","replace","reverse","round","row_number","rpad","SECOND","sign","sin","sqrt","STDDEV_POP","STDDEV_SAMP","substr","substring","sum","tan","tanh","TO_BASE64","trunc","truncate","ucase","unbin","unhex","upper","user","VAR_POP","VAR_SAMP","version","week","YEAR","yearweek"],h=["cluster","clusterAllReplicas","concatYtTables","concatYtTablesLike","concatYtTablesRange","concatYtTablesRegexp","dictionary","executable","file","generateRandom","input","jdbc","merge","null","numbers","numbers_mt","odbc","remote","remoteSecure","url","values","view","ytSubquery","zeros","zeros_mt"],p=["Buffer","Memory","YtTable"],g=["AggregateFunction","Array","Enum8","Enum16","FixedString","Float32","Float64","Int8","Int16","Int32","Int64","Int128","Int256","IntervalDay","IntervalHour","IntervalMinute","IntervalMonth","IntervalQuarter","IntervalSecond","IntervalWeek","IntervalYear","IPv4","IPv6","LowCardinality","Map","MultiPolygon","Nested","Nothing","Nullable","Point","Polygon","Ring","SimpleAggregateFunction","String","Tuple","UInt8","UInt16","UInt32","UInt64","UInt128","UInt256","UUID","YtBoolean"],m=["BIGINT","BIGINT SIGNED","BIGINT UNSIGNED","BINARY","BINARY LARGE OBJECT","BINARY VARYING","BLOB","BOOL","BOOLEAN","BYTE","BYTEA","CHAR","CHAR LARGE OBJECT","CHAR VARYING","CHARACTER","CHARACTER LARGE OBJECT","CHARACTER VARYING","CLOB","DEC","DOUBLE","DOUBLE PRECISION","Date","Date32","DateTime","DateTime32","DateTime64","Decimal","Decimal128","Decimal256","Decimal32","Decimal64","ENUM","Enum","FIXED","FLOAT","INET4","INET6","INT","INT SIGNED","INT UNSIGNED","INT1","INT1 SIGNED","INT1 UNSIGNED","INTEGER","INTEGER SIGNED","INTEGER UNSIGNED","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMINT SIGNED","MEDIUMINT UNSIGNED","MEDIUMTEXT","NATIONAL CHAR","NATIONAL CHAR VARYING","NATIONAL CHARACTER","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NCHAR","NCHAR LARGE OBJECT","NCHAR VARYING","NUMERIC","NVARCHAR","REAL","SINGLE","SMALLINT","SMALLINT SIGNED","SMALLINT UNSIGNED","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYINT SIGNED","TINYINT UNSIGNED","TINYTEXT","VARCHAR","VARCHAR2"],f=function(e,t){var n=(0,a.k)(e,t);return{suggestions:y(n,{suggestFunctions:!0,suggestKeywords:[],errors:[]})}},y=function(e,t){var n=[].concat((0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.TypeParameter,detail:"Type",suggestionType:"suggestSimpleTypes",rangeToInsertSuggestion:e,items:[].concat(g,m,p)})),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Constant,detail:"Constant",suggestionType:"suggestConstants",rangeToInsertSuggestion:e,items:c})));return t.suggestFunctions&&(n=[].concat((0,r.A)(n),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Function,detail:"Function",suggestionType:"suggestFunctions",rangeToInsertSuggestion:e,items:[].concat(u,d,h)})))),t.suggestKeywords&&(n=[].concat((0,r.A)(n),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Keyword,detail:"Keyword",suggestionType:"suggestKeywords",rangeToInsertSuggestion:e,items:[].concat(s,l)})))),n}},2336:(e,t,n)=>{n.d(t,{GX:()=>o,Mg:()=>l,kV:()=>a,mF:()=>s});var r=n(77720),i=n(11737),o={path:0,suggestTemplates:1,suggestPragmas:2,binding:3,connection:4,suggestColumns:5,suggestColumnAliases:6,suggestKeywords:7,suggestAggregateFunctions:8,suggestTableFunctions:9,suggestWindowFunctions:10,suggestFunctions:11,suggestUdfs:12,suggestSimpleTypes:13,suggestConstants:14,suggestOperators:15,suggestTableIndexes:16,suggestTableHints:17,suggestEntitySettings:18},a=function(e,t){return t?t.map((function(t){return{label:t.name,insertText:t.name,kind:r.eo.CompletionItemKind.Field,detail:"Column alias",range:e,sortText:(0,i.s)(o.suggestColumnAliases)}})):[]},s=function(e,t){return t?t.map((function(t){return{label:t.value,insertText:t.value,kind:r.eo.CompletionItemKind.Keyword,detail:"Keyword",range:e,sortText:(0,i.s)(o.suggestKeywords)}})):[]},l=function(e){var t=e.kind,n=e.detail,r=e.suggestionType,a=e.rangeToInsertSuggestion;return e.items.map((function(e){return{label:e,insertText:e,kind:t,detail:n,range:a,sortText:(0,i.s)(o[r])}}))}},51757:(e,t,n)=>{n.d(t,{T:()=>y});var r=n(40319),i=n(28407),o=n(70232),a=n.n(o),s=n(64714),l=n(77720),c=n(29746),u=n(57436),d=function(e,t,n){var r,i=e.getLineContent(t.lineNumber).substring(0,t.column),o=(0,u.$)(i,n),a=o.path,s=o.cluster,l=e.getValue().match(/(USE|use)\s\w+/g),c=l?null===(r=l.pop())||void 0===r?void 0:r.replace(/(USE|use)\s/,""):null;return{path:a,cluster:s||c}},h=n(2336),p=n(11737),g=n(52797),m=n(33547),f=n(99745),y=function(){var e=(0,i.A)(a().mark((function e(t){var n,i,o,u,y,v,C,S,k,b,A,w;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.model,i=t.monacoCursorPosition,o=t.engine,u=t.range,y=d(n,i,o),v=y.path,C=y.cluster,v&&C){e.next=4;break}return e.abrupt("return",[]);case 4:if(S=m.YT.clusters[C]){e.next=7;break}return e.abrupt("return",[]);case 7:return k={setup:{proxy:(0,g.v9)(S)}},e.prev=8,b=v.replace(/(\/$)/g,""),e.next=12,s.X8.exists((0,r.A)((0,r.A)({},k),{},{parameters:{path:b}}));case 12:if(e.sent){e.next=22;break}if(!/[^/]\/$/.test(v)){e.next=16;break}return e.abrupt("return",[]);case 16:return b=b.split("/").slice(0,-1).join("/"),e.next=19,s.X8.exists((0,r.A)((0,r.A)({},k),{},{parameters:{path:b}}));case 19:if(e.sent){e.next=22;break}return e.abrupt("return",[]);case 22:return e.next=24,s.Qq.list(s.Vu.navigationListNodes,(0,r.A)((0,r.A)({},k),{},{parameters:{path:b,attributes:["type","broken"]}}));case 24:return A=e.sent,w=n.getLineContent(u.startLineNumber).slice(u.startColumn-1,u.endColumn-1),e.abrupt("return",A.reduce((function(e,t){var n=(0,f.a)(c.A.getValue(t),{asHTML:!1}).replaceAll('"',""),r=c.A.getAttributes(t),i=r.type,o=r.broken;if(!["table","map_node","link"].includes(i)||"link"===i&&o)return e;var a=b+"/"+n,s=v.replace(new RegExp(w+"$"),""),d=/[^/]\//.test(s)?a.replace(s,""):a.replace("//","");return e.push({label:d,detail:a,insertText:d,kind:l.eo.CompletionItemKind["table"===i?"File":"Folder"],range:u,sortText:(0,p.s)(h.GX.path)}),e}),[]));case 29:return e.prev=29,e.t0=e.catch(8),e.abrupt("return",[]);case 32:case"end":return e.stop()}}),e,null,[[8,29]])})));return function(t){return e.apply(this,arguments)}}()},52891:(e,t,n)=>{n.d(t,{k:()=>r});var r=function(e,t){var n=e.getWordUntilPosition(t),r=n.startColumn,i=n.endColumn;return{startColumn:r-("$"===e.getLineContent(t.lineNumber)[r-2]?1:0),startLineNumber:t.lineNumber,endColumn:i,endLineNumber:t.lineNumber}}},11737:(e,t,n)=>{n.d(t,{s:()=>i});var r="abcdefghijklmnopqrstuvwxyz",i=function(e){var t=r[e];if(t)return t;var n=Math.floor(e/26),i=e%26;return r.slice(-1).repeat(n)+r[i]}},71183:(e,t,n)=>{n.d(t,{RE:()=>s,XB:()=>c,rL:()=>u,to:()=>l});var r=n(13322),i=n(77720),o=n(2336),a=n(52891),s="$row|$rows|action|all|and|any|as|asc|assume|begin|bernoulli|between|by|case|columns|commit|compact|create|cross|cube|declare|define|delete|desc|dict|discard|distinct|do|drop|else|empty_action|end|erase|evaluate|exclusion|exists|export|flatten|for|from|full|group|grouping|having|if|ignore|ilike|import|in|inner|insert|into|is|join|left|like|limit|list|match|not|null|nulls|offset|on|only|optional|or|order|over|partition|pragma|presort|process|reduce|regexp|repeatable|replace|respect|result|return|right|rlike|rollup|sample|schema|select|semi|set|sets|stream|subquery|table|tablesample|then|truncate|union|update|upsert|use|using|values|view|when|where|window|with|without|xor".split("|"),l="bool|date|datetime|decimal|double|float|int16|int32|int64|int8|interval|json|string|timestamp|tzdate|tzdatetime|tztimestamp|uint16|uint32|uint64|uint8|utf8|uuid|yson".split("|"),c="abs|aggregate_by|aggregate_list|aggregate_list_distinct|agg_list|agg_list_distinct|as_table|avg|avg_if|adaptivedistancehistogram|adaptivewardhistogram|adaptiveweighthistogram|addmember|addtimezone|aggregateflatten|aggregatetransforminput|aggregatetransformoutput|aggregationfactory|asatom|asdict|asdictstrict|asenum|aslist|asliststrict|asset|assetstrict|asstruct|astagged|astuple|asvariant|atomcode|bitcast|bit_and|bit_or|bit_xor|bool_and|bool_or|bool_xor|bottom|bottom_by|blockwardhistogram|blockweighthistogram|cast|coalesce|concat|concat_strict|correlation|count|count_if|covariance|covariance_population|covariance_sample|callableargument|callableargumenttype|callableresulttype|callabletype|callabletypecomponents|callabletypehandle|choosemembers|combinemembers|countdistinctestimate|currentauthenticateduser|currentoperationid|currentoperationsharedid|currenttzdate|currenttzdatetime|currenttztimestamp|currentutcdate|currentutcdatetime|currentutctimestamp|dense_rank|datatype|datatypecomponents|datatypehandle|dictaggregate|dictcontains|dictcreate|dicthasitems|dictitems|dictkeytype|dictkeys|dictlength|dictlookup|dictpayloadtype|dictpayloads|dicttype|dicttypecomponents|dicttypehandle|each|each_strict|emptydicttype|emptydicttypehandle|emptylisttype|emptylisttypehandle|endswith|ensure|ensureconvertibleto|ensuretype|enum|evaluateatom|evaluatecode|evaluateexpr|evaluatetype|expandstruct|filter|filter_strict|find|first_value|folder|filecontent|filepath|flattenmembers|forceremovemember|forceremovemembers|forcerenamemembers|forcespreadmembers|formatcode|formattype|frombytes|funccode|greatest|grouping|gathermembers|generictype|histogram|hll|hyperloglog|if|if_strict|instanceof|json_exists|json_query|json_value|jointablerow|just|lag|last_value|lead|least|len|length|like|likely|like_strict|lambdaargumentscount|lambdacode|linearhistogram|listaggregate|listall|listany|listavg|listcode|listcollect|listconcat|listcreate|listdistinct|listenumerate|listextend|listextendstrict|listextract|listfilter|listflatmap|listflatten|listfromrange|listhas|listhasitems|listhead|listindexof|listitemtype|listlast|listlength|listmap|listmax|listmin|listnotnull|listreplicate|listreverse|listskip|listskipwhile|listskipwhileinclusive|listsort|listsortasc|listsortdesc|listsum|listtake|listtakewhile|listtakewhileinclusive|listtype|listtypehandle|listunionall|listuniq|listzip|listzipall|loghistogram|logarithmichistogram|max|max_by|max_of|median|min|min_by|min_of|mode|multi_aggregate_by|nanvl|nvl|nothing|nulltype|nulltypehandle|optionalitemtype|optionaltype|optionaltypehandle|percentile|parsefile|parsetype|parsetypehandle|pickle|quotecode|range|range_strict|rank|regexp|regexp_strict|rfind|row_number|random|randomnumber|randomuuid|removemember|removemembers|removetimezone|renamemembers|replacemember|reprcode|resourcetype|resourcetypehandle|resourcetypetag|some|stddev|stddev_population|stddev_sample|substring|sum|sum_if|sessionstart|sessionwindow|setcreate|setdifference|setincludes|setintersection|setisdisjoint|setsymmetricdifference|setunion|spreadmembers|stablepickle|startswith|staticmap|streamitemtype|streamtype|streamtypehandle|structmembertype|structmembers|structtypecomponents|structtypehandle|subqueryextend|subqueryextendfor|subquerymerge|subquerymergefor|subqueryunionall|subqueryunionallfor|subqueryunionmerge|subqueryunionmergefor|top|topfreq|top_by|tablename|tablepath|tablerecordindex|tablerow|taggedtype|taggedtypecomponents|taggedtypehandle|tobytes|todict|tomultidict|toset|tosorteddict|tosortedmultidict|trymember|tupleelementtype|tupletype|tupletypecomponents|tupletypehandle|typehandle|typekind|typeof|udaf|unittype|unpickle|untag|unwrap|variance|variance_population|variance_sample|variant|varianttype|varianttypehandle|variantunderlyingtype|voidtype|voidtypehandle|way|worldcode".split("|"),u=function(e,t){var n=(0,a.k)(e,t);return{suggestions:[].concat((0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Keyword,detail:"Keyword",suggestionType:"suggestKeywords",rangeToInsertSuggestion:n,items:[].concat((0,r.A)(s),(0,r.A)(l))})),(0,r.A)((0,o.Mg)({kind:i.eo.CompletionItemKind.Function,detail:"Function",suggestionType:"suggestFunctions",rangeToInsertSuggestion:n,items:c})))}}},65185:(e,t,n)=>{n.r(t),n.d(t,{conf:()=>i,language:()=>o});var r=n(71183),i={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],wordPattern:/(-?\d*\.\d\w*)|([^`~!@#%^&*()\-=+[{\]}\\|;:'",./?\s]+)/g},o={defaultToken:"text",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],keywords:r.RE,typeKeywords:r.to,constants:["true","false"],builtinFunctions:r.XB,operators:["+","-","/","//","%","<@>","@>","<@","&","^","~","<",">","<=","=>","==","!=","<>","="],symbols:/[=><!~?:&|+\-*/^%]+/,escapes:/\\(?:[abfnrtv\\"'`]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/[a-zA-Z_]\w*/,tokenizer:{root:[{include:"@whitespace"},{include:"@comments"},{include:"@numbers"},{include:"@tablePath"},{include:"@strings"},[/(@variables)::(@variables)/,"support.function"],[/[;,.]/,"delimiter"],[/[(){}[\]]/,"@brackets"],[/(\w+\.)*`\/\/(.*)`/g,{token:"path"}],[/@?[a-zA-Z_$]\w*/,{cases:{"@keywords":"keyword","@typeKeywords":"keyword.type","@constants":"constant.yql","@builtinFunctions":"constant.other.color","[$@][a-zA-Z_]\\w*":"variable","@default":"identifier"}}],[/@symbols/,{cases:{"@operators":"operator.sql","@default":""}}]],whitespace:[[/\s+/,"white"]],comments:[[/--.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],commentAnsi:[[/\/\*/,{token:"comment.quote",next:"@comment"}],[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?f?\b/,"number.float"],[/[+-]?(?:\d+|0b[01]+|0o[0-8]+|0x[\da-f]+)(?:u?[lst]?)?\b/,"number"]],strings:[[/'/,{token:"string",next:"@stringSingle"}],[/"/,{token:"string",next:"@stringDouble"}],[/[@]{2}/,{token:"string",next:"@multilineString"}]],stringSingle:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiSingle:[[/[^']+/,"string"],[/''/,"string"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringDouble:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiDouble:[[/[^"]+/,"string"],[/""/,"string"],[/"[uyj]?/,{token:"string",next:"@pop"}]],multilineString:[[/#py/,{token:"string.python",nextEmbedded:"python",next:"@embedded",goBack:3}],[/\/\/js/,{token:"string.js",nextEmbedded:"javascript",next:"@embedded",goBack:4}],[/[^@]+/,"string"],[/[@]{4}/,"string"],[/[@]{2}[uyj]?/,{token:"string",next:"@pop"}],[/./,"string"]],embedded:[[/([^@]|^)([@]{4})*[@]{2}([@]([^@]|$)|[^@]|$)/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],tablePath:[[/`\/?[\w+]+`/,{token:"string.tablepath"}]]}}},89814:(e,t,n)=>{n.r(t),n.d(t,{conf:()=>g.conf,language:()=>m,provideSuggestionsFunction:()=>f});var r=n(13322),i=n(28407),o=n(70232),a=n.n(o),s=n(77720),l=n(52891),c=n(2336),u=n(71183),d=["SELECT","FROM","WITH","INDEX","WHERE","HAVING","OFFSET","LIMIT","JOIN","ARRAY","USING","GROUP","BY","WITH","TOTALS","ORDER","BY","ASC","DESC","LEFT","AS","ON","AND","OR","IS","NOT","NULL","BETWEEN","IN","TRANSFORM","LIKE","ILIKE","RLIKE","REGEXP","ESCAPE","FALSE","TRUE","CASE","WHEN","THEN","ELSE","END","INF"],h=n(51757),p=n(30996),g=n(65185),m={defaultToken:"text",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],keywords:u.RE,typeKeywords:u.to,constants:["true","false"],builtinFunctions:u.XB,operators:["+","-","/","//","%","<@>","@>","<@","&","^","~","<",">","<=","=>","==","!=","<>","="],symbols:/[=><!~?:&|+\-*/^%]+/,escapes:/\\(?:[abfnrtv\\"'`]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/[a-zA-Z_]\w*/,tokenizer:{root:[{include:"@whitespace"},{include:"@comments"},{include:"@numbers"},{include:"@tablePath"},{include:"@strings"},[/(@variables)::(@variables)/,"support.function"],[/[;,.]/,"delimiter"],[/[(){}[\]]/,"@brackets"],[/(\w+\.)*`\/\/(.*)`/g,{token:"path"}],[/@?[a-zA-Z_$]\w*/,{cases:{"@keywords":"keyword","@typeKeywords":"keyword.type","@constants":"constant.yql","@builtinFunctions":"constant.other.color","[$@][a-zA-Z_]\\w*":"variable","@default":"identifier"}}],[/@symbols/,{cases:{"@operators":"operator.sql","@default":""}}]],whitespace:[[/\s+/,"white"]],comments:[[/--.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@commentAnsi"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],commentAnsi:[[/\/\*/,{token:"comment.quote",next:"@comment"}],[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?f?\b/,"number.float"],[/[+-]?(?:\d+|0b[01]+|0o[0-8]+|0x[\da-f]+)(?:u?[lst]?)?\b/,"number"]],strings:[[/'/,{token:"string",next:"@stringAnsiSingle"}],[/"/,{token:"string",next:"@stringAnsiDouble"}],[/[@]{2}/,{token:"string",next:"@multilineString"}]],stringSingle:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiSingle:[[/[^']+/,"string"],[/''/,"string"],[/'[uyj]?/,{token:"string",next:"@pop"}]],stringDouble:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"[uyj]?/,{token:"string",next:"@pop"}]],stringAnsiDouble:[[/[^"]+/,"string"],[/""/,"string"],[/"[uyj]?/,{token:"string",next:"@pop"}]],multilineString:[[/#py/,{token:"string.python",nextEmbedded:"python",next:"@embedded",goBack:3}],[/\/\/js/,{token:"string.js",nextEmbedded:"javascript",next:"@embedded",goBack:4}],[/[^@]+/,"string"],[/[@]{4}/,"string"],[/[@]{2}[uyj]?/,{token:"string",next:"@pop"}],[/./,"string"]],embedded:[[/([^@]|^)([@]{4})*[@]{2}([@]([^@]|$)|[^@]|$)/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],tablePath:[[/`\/?[\w+]+`/,{token:"string.tablepath"}]]}},f=function(){var e=(0,i.A)(a().mark((function e(t,n){var i,o;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=(0,l.k)(t,n),e.next=3,(0,h.T)({model:t,monacoCursorPosition:n,engine:p.d.YT_QL,range:i});case 3:return o=e.sent,e.abrupt("return",{suggestions:[].concat((0,r.A)(o),(0,r.A)((0,c.Mg)({kind:s.eo.CompletionItemKind.Keyword,detail:"Keyword",suggestionType:"suggestKeywords",rangeToInsertSuggestion:i,items:(0,r.A)(d)})))});case 5:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()}}]);
2
+ //# sourceMappingURL=yt-monaco-editor.b3cf8d2a.chunk.js.map