filesbox/web/dist/53239.141280f3.async.js

942 lines
401 KiB
JavaScript
Raw Permalink Normal View History

2024-07-26 06:10:54 +00:00
(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[53239],{53239:function(fe,ve,pe){fe=pe.nmd(fe),function(){var E="ace",x=function(){return this}();if(!x&&typeof window!="undefined"&&(x=window),!E&&typeof requirejs!="undefined")return;var P=function(e,n,i){if(typeof e!="string"){P.original?P.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(i=n),P.modules[e]||(P.payloads[e]=i,P.modules[e]=null)};P.modules={},P.payloads={};var R=function(e,n,i){if(typeof n=="string"){var t=s(e,n);if(t!=null)return i&&i(),t}else if(Object.prototype.toString.call(n)==="[object Array]"){for(var r=[],o=0,c=n.length;o<c;++o){var d=s(e,n[o]);if(d==null&&k.original)return;r.push(d)}return i&&i.apply(null,r)||!0}},k=function(e,n){var i=R("",e,n);return i==null&&k.original?k.original.apply(this,arguments):i},C=function(e,n){if(n.indexOf("!")!==-1){var i=n.split("!");return C(e,i[0])+"!"+C(e,i[1])}if(n.charAt(0)=="."){var t=e.split("/").slice(0,-1).join("/");for(n=t+"/"+n;n.indexOf(".")!==-1&&r!=n;){var r=n;n=n.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},s=function(e,n){n=C(e,n);var i=P.modules[n];if(!i){if(i=P.payloads[n],typeof i=="function"){var t={},r={id:n,uri:"",exports:t,packaged:!0},o=function(d,$){return R(n,d,$)},c=i(o,t,r);t=c||r.exports,P.modules[n]=t,delete P.payloads[n]}i=P.modules[n]=t||i}return i};function l(e){var n=x;e&&(x[e]||(x[e]={}),n=x[e]),(!n.define||!n.define.packaged)&&(P.original=n.define,n.define=P,n.define.packaged=!0),(!n.require||!n.require.packaged)&&(k.original=n.require,n.require=k,n.require.packaged=!0)}l(E)}(),ace.define("ace/lib/es6-shim",["require","exports","module"],function(E,x,P){function R(k,C,s){Object.defineProperty(k,C,{value:s,enumerable:!1,writable:!0,configurable:!0})}String.prototype.startsWith||R(String.prototype,"startsWith",function(k,C){return C=C||0,this.lastIndexOf(k,C)===C}),String.prototype.endsWith||R(String.prototype,"endsWith",function(k,C){var s=this;(C===void 0||C>s.length)&&(C=s.length),C-=k.length;var l=s.indexOf(k,C);return l!==-1&&l===C}),String.prototype.repeat||R(String.prototype,"repeat",function(k){for(var C="",s=this;k>0;)k&1&&(C+=s),(k>>=1)&&(s+=s);return C}),String.prototype.includes||R(String.prototype,"includes",function(k,C){return this.indexOf(k,C)!=-1}),Object.assign||(Object.assign=function(k){if(k==null)throw new TypeError("Cannot convert undefined or null to object");for(var C=Object(k),s=1;s<arguments.length;s++){var l=arguments[s];l!=null&&Object.keys(l).forEach(function(e){C[e]=l[e]})}return C}),Object.values||(Object.values=function(k){return Object.keys(k).map(function(C){return k[C]})}),Array.prototype.find||R(Array.prototype,"find",function(k){for(var C=this.length,s=arguments[1],l=0;l<C;l++){var e=this[l];if(k.call(s,e,l,this))return e}}),Array.prototype.findIndex||R(Array.prototype,"findIndex",function(k){for(var C=this.length,s=arguments[1],l=0;l<C;l++){var e=this[l];if(k.call(s,e,l,this))return l}}),Array.prototype.includes||R(Array.prototype,"includes",function(k,C){return this.indexOf(k,C)!=-1}),Array.prototype.fill||R(Array.prototype,"fill",function(k){for(var C=this,s=C.length>>>0,l=arguments[1],e=l>>0,n=e<0?Math.max(s+e,0):Math.min(e,s),i=arguments[2],t=i===void 0?s:i>>0,r=t<0?Math.max(s+t,0):Math.min(t,s);n<r;)C[n]=k,n++;return C}),Array.of||R(Array,"of",function(){return Array.prototype.slice.call(arguments)})}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/es6-shim"],function(E,x,P){"use strict";E("./es6-shim")}),ace.define("ace/lib/lang",["require","exports","module"],function(E,x,P){"use strict";x.last=function(C){return C[C.length-1]},x.stringReverse=function(C){return C.split("").reverse().join("")},x.stringRepeat=function(C,s){for(var l="";s>0;)s&1&&(l+=C),(s>>=1)&&(C+=C);return l};var R=/^\s\s*/,k=/\s\s*$/;x.stringTrimLeft=function(C){return C.replace(R,"")},x.stringTrimRight=function(C){return C.replace(k,"")},x.copyObject=function(C){var s={};for(var l in C)s[l]=C[l];return s}
/*# sourceURL=ace/css/`+t+" */");var d=x.createElement("style");d.appendChild(c.createTextNode(i)),t&&(d.id=t),o==c&&(o=x.getDocumentHead(c)),o.insertBefore(d,o.firstChild)}}}if(x.importCssString=e,x.importCssStylsheet=function(i,t){x.buildDom(["link",{rel:"stylesheet",href:i}],x.getDocumentHead(t))},x.scrollbarWidth=function(i){var t=x.createElement("ace_inner");t.style.width="100%",t.style.minWidth="0px",t.style.height="200px",t.style.display="block";var r=x.createElement("ace_outer"),o=r.style;o.position="absolute",o.left="-10000px",o.overflow="hidden",o.width="200px",o.minWidth="0px",o.height="150px",o.display="block",r.appendChild(t);var c=i&&i.documentElement||document&&document.documentElement;if(!c)return 0;c.appendChild(r);var d=t.offsetWidth;o.overflow="scroll";var $=t.offsetWidth;return d===$&&($=r.clientWidth),c.removeChild(r),d-$},x.computedStyle=function(i,t){return window.getComputedStyle(i,"")||{}},x.setStyle=function(i,t,r){i[t]!==r&&(i[t]=r)},x.HAS_CSS_ANIMATION=!1,x.HAS_CSS_TRANSFORMS=!1,x.HI_DPI=R.isWin?typeof window!="undefined"&&window.devicePixelRatio>=1.5:!0,R.isChromeOS&&(x.HI_DPI=!1),typeof document!="undefined"){var n=document.createElement("div");x.HI_DPI&&n.style.transform!==void 0&&(x.HAS_CSS_TRANSFORMS=!0),!R.isEdge&&typeof n.style.animationName!="undefined"&&(x.HAS_CSS_ANIMATION=!0),n=null}x.HAS_CSS_TRANSFORMS?x.translate=function(i,t,r){i.style.transform="translate("+Math.round(t)+"px, "+Math.round(r)+"px)"}:x.translate=function(i,t,r){i.style.top=Math.round(r)+"px",i.style.left=Math.round(t)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(E,x,P){/*
* based on code from:
*
* @license RequireJS text 0.25.0 Copyright (c) 2010-2011, The Dojo Foundation All Rights Reserved.
* Available via the MIT or new BSD license.
* see: http://github.com/jrburke/requirejs for details
*/"use strict";var R=E("./dom");x.get=function(k,C){var s=new XMLHttpRequest;s.open("GET",k,!0),s.onreadystatechange=function(){s.readyState===4&&C(s.responseText)},s.send(null)},x.loadScript=function(k,C){var s=R.getDocumentHead(),l=document.createElement("script");l.src=k,s.appendChild(l),l.onload=l.onreadystatechange=function(e,n){(n||!l.readyState||l.readyState=="loaded"||l.readyState=="complete")&&(l=l.onload=l.onreadystatechange=null,n||C())}},x.qualifyURL=function(k){var C=document.createElement("a");return C.href=k,C.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(E,x,P){"use strict";x.inherits=function(R,k){R.super_=k,R.prototype=Object.create(k.prototype,{constructor:{value:R,enumerable:!1,writable:!0,configurable:!0}})},x.mixin=function(R,k){for(var C in k)R[C]=k[C];return R},x.implement=function(R,k){x.mixin(R,k)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(E,x,P){"use strict";var R={},k=function(){this.propagationStopped=!0},C=function(){this.defaultPrevented=!0};R._emit=R._dispatchEvent=function(s,l){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var e=this._eventRegistry[s]||[],n=this._defaultHandlers[s];if(!(!e.length&&!n)){(typeof l!="object"||!l)&&(l={}),l.type||(l.type=s),l.stopPropagation||(l.stopPropagation=k),l.preventDefault||(l.preventDefault=C),e=e.slice();for(var i=0;i<e.length&&(e[i](l,this),!l.propagationStopped);i++);if(n&&!l.defaultPrevented)return n(l,this)}},R._signal=function(s,l){var e=(this._eventRegistry||{})[s];if(!!e){e=e.slice();for(var n=0;n<e.length;n++)e[n](l,this)}},R.once=function(s,l){var e=this;if(this.on(s,function n(){e.off(s,n),l.apply(null,arguments)}),!l)return new Promise(function(n){l=n})},R.setDefaultHandler=function(s,l){var e=this._defaultHandlers;if(e||(e=this._defaultHandlers={_disabled_:{}}),e[s]){var n=e[s],i=e._disabled_[s];i||(e._disabled_[s]=i=[]),i.push(n);var t=i.indexOf(l);t!=-1&&i.splice(t,1)}e[s]=l},R.removeDefaultHandler=function(s,l){var e=this._defaultHandlers;if(!!e){var n=e._disabled_[s];if(e[s]==l)n&&this.setDefaultHandler(s,n.pop());else if(n){var i=n.indexOf(l);i!=-1&&n.splice(i,1)}}},R.on=R.addEventListener=function(s,l,e){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[s];return n||(n=this._eventRegistry[s]=[]),n.indexOf(l)==-1&&n[e?"unshift":"push"](l),l},R.off=R.removeListener=R.removeEventListener=function(s,l){this._eventRegistry=this._eventRegistry||{};var e=this._eventRegistry[s];if(!!e){var n=e.indexOf(l);n!==-1&&e.splice(n,1)}},R.removeAllListeners=function(s){s||(this._eventRegistry=this._defaultHandlers=void 0),this._eventRegistry&&(this._eventRegistry[s]=void 0),this._defaultHandlers&&(this._defaultHandlers[s]=void 0)},x.EventEmitter=R}),ace.define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(E,x,P){var R=E("./oop"),k=E("./event_emitter").EventEmitter,C={setOptions:function(n){Object.keys(n).forEach(function(i){this.setOption(i,n[i])},this)},getOptions:function(n){var i={};if(n)Array.isArray(n)||(i=n,n=Object.keys(i));else{var t=this.$options;n=Object.keys(t).filter(function(r){return!t[r].hidden})}return n.forEach(function(r){i[r]=this.getOption(r)},this),i},setOption:function(n,i){if(this["$"+n]!==i){var t=this.$options[n];if(!t)return s('misspelled option "'+n+'"');if(t.forwardTo)return this[t.forwardTo]&&this[t.forwardTo].setOption(n,i);t.handlesSet||(this["$"+n]=i),t&&t.set&&t.set.call(this,i)}},getOption:function(n){var i=this.$options[n];return i?i.forwardTo?this[i.forwardTo]&&this[i.forwardTo].getOption(n):i&&i.get?i.get.call(this):this["$"+n]:s('misspelled option "'+n+'"')}};function s(n){typeof console!="undefined"&&console.warn&&console.warn.apply(console,arguments)}function l(n,i){var t=new Error(n);t.data=i,typeof console=="object"&&console.error&&console.error(t),setTimeout(function(){throw t})}var e=function(){function n(){this.$defaultOptions={}}return n.prototype.defineOptions=function(i,t,r){return i.$options||(this.$defaultOptions[t]=
background: #f0f0f0;
color: #333;
}
.ace-tm .ace_print-margin {
width: 1px;
background: #e8e8e8;
}
.ace-tm .ace_fold {
background-color: #6B72E6;
}
.ace-tm {
background-color: #FFFFFF;
color: black;
}
.ace-tm .ace_cursor {
color: black;
}
.ace-tm .ace_invisible {
color: rgb(191, 191, 191);
}
.ace-tm .ace_storage,
.ace-tm .ace_keyword {
color: blue;
}
.ace-tm .ace_constant {
color: rgb(197, 6, 11);
}
.ace-tm .ace_constant.ace_buildin {
color: rgb(88, 72, 246);
}
.ace-tm .ace_constant.ace_language {
color: rgb(88, 92, 246);
}
.ace-tm .ace_constant.ace_library {
color: rgb(6, 150, 14);
}
.ace-tm .ace_invalid {
background-color: rgba(255, 0, 0, 0.1);
color: red;
}
.ace-tm .ace_support.ace_function {
color: rgb(60, 76, 114);
}
.ace-tm .ace_support.ace_constant {
color: rgb(6, 150, 14);
}
.ace-tm .ace_support.ace_type,
.ace-tm .ace_support.ace_class {
color: rgb(109, 121, 222);
}
.ace-tm .ace_keyword.ace_operator {
color: rgb(104, 118, 135);
}
.ace-tm .ace_string {
color: rgb(3, 106, 7);
}
.ace-tm .ace_comment {
color: rgb(76, 136, 107);
}
.ace-tm .ace_comment.ace_doc {
color: rgb(0, 102, 255);
}
.ace-tm .ace_comment.ace_doc.ace_tag {
color: rgb(128, 159, 191);
}
.ace-tm .ace_constant.ace_numeric {
color: rgb(0, 0, 205);
}
.ace-tm .ace_variable {
color: rgb(49, 132, 149);
}
.ace-tm .ace_xml-pe {
color: rgb(104, 104, 91);
}
.ace-tm .ace_entity.ace_name.ace_function {
color: #0000A2;
}
.ace-tm .ace_heading {
color: rgb(12, 7, 255);
}
.ace-tm .ace_list {
color:rgb(185, 6, 144);
}
.ace-tm .ace_meta.ace_tag {
color:rgb(0, 22, 142);
}
.ace-tm .ace_string.ace_regex {
color: rgb(255, 0, 0)
}
.ace-tm .ace_marker-layer .ace_selection {
background: rgb(181, 213, 255);
}
.ace-tm.ace_multiselect .ace_selection.ace_start {
box-shadow: 0 0 3px 0px white;
}
.ace-tm .ace_marker-layer .ace_step {
background: rgb(252, 255, 0);
}
.ace-tm .ace_marker-layer .ace_stack {
background: rgb(164, 229, 101);
}
.ace-tm .ace_marker-layer .ace_bracket {
margin: -1px 0 0 -1px;
border: 1px solid rgb(192, 192, 192);
}
.ace-tm .ace_marker-layer .ace_active-line {
background: rgba(0, 0, 0, 0.07);
}
.ace-tm .ace_gutter-active-line {
background-color : #dcdcdc;
}
.ace-tm .ace_marker-layer .ace_selected-word {
background: rgb(250, 250, 255);
border: 1px solid rgb(200, 200, 250);
}
.ace-tm .ace_indent-guide {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;
}
.ace-tm .ace_indent-guide-active {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAZSURBVHjaYvj///9/hivKyv8BAAAA//8DACLqBhbvk+/eAAAAAElFTkSuQmCC") right repeat-y;
}
`}),ace.define("ace/theme/textmate",["require","exports","module","ace/theme/textmate.css","ace/lib/dom"],function(E,x,P){"use strict";x.isDark=!1,x.cssClass="ace-tm",x.cssText=E("./textmate.css"),x.$id="ace/theme/textmate";var R=E("../lib/dom");R.importCssString(x.cssText,x.cssClass,!1)}),ace.define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/net","ace/lib/dom","ace/lib/app_config","ace/theme/textmate"],function(E,x,P){var R=E("./lib/lang"),k=E("./lib/net"),C=E("./lib/dom"),s=E("./lib/app_config").AppConfig;P.exports=x=new s;var l={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{},loadWorkerFromBlob:!0,sharedPopups:!1,useStrictCSP:null};x.get=function(i){if(!l.hasOwnProperty(i))throw new Error("Unknown config key: "+i);return l[i]},x.set=function(i,t){if(l.hasOwnProperty(i))l[i]=t;else if(this.setDefaultValue("",i,t)==!1)throw new Error("Unknown config key: "+i);i=="useStrictCSP"&&C.useStrictCSP(t)},x.all=function(){return R.copyObject(l)},x.$modes={},x.moduleUrl=function(i,t){if(l.$moduleUrls[i])return l.$moduleUrls[i];var r=i.split("/");t=t||r[r.length-2]||"";var o=t=="snippets"?"/":"-",c=r[r.length-1];if(t=="worker"&&o=="-"){var d=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g");c=c.replace(d,"")}(!c||c==t)&&r.length>1&&(c=r[r.length-2]);var $=l[t+"Path"];return $==null?$=l.basePath:o=="/"&&(t=o=""),$&&$.slice(-1)!="/"&&($+="/"),$+t+o+c+this.get("suffix")},x.setModuleUrl=function(i,t){return l.$moduleUrls[i]=t};var e=function(i,t){return i==="ace/theme/textmate"||i==="./theme/textmate"?t(null,E("./theme/textmate")):console.error("loader is not configured")};x.setLoader=function(i){e=i},x.dynamicModules=Object.create(null),x.$loading={},x.loadModule=function(i,t){var r,o;Array.isArray(i)&&(o=i[0],i=i[1]);var c=function(d){if(d&&!x.$loading[i])return t&&t(d);if(x.$loading[i]||(x.$loading[i]=[]),x.$loading[i].push(t),!(x.$loading[i].length>1)){var $=function(){e(i,function(S,y){x._emit("load.module",{name:i,module:y});var m=x.$loading[i];x.$loading[i]=null,m.forEach(function(b){b&&b(y)})})};if(!x.get("packaged"))return $();k.loadScript(x.moduleUrl(i,o),$),n()}};if(x.dynamicModules[i])x.dynamicModules[i]().then(function(d){d.default?c(d.default):c(d)});else{try{r=E(i)}catch(d){}c(r)}},x.setModuleLoader=function(i,t){x.dynamicModules[i]=t};var n=function(){!l.basePath&&!l.workerPath&&!l.modePath&&!l.themePath&&!Object.keys(l.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),n=function(){})};x.version="1.17.0"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(E,x,P){"use strict";E("./lib/fixoldbrowsers");var R=E("./config");R.setLoader(function(l,e){E([l],function(n){e(null,n)})});var k=function(){return this||typeof window!="undefined"&&window}();P.exports=function(l){R.init=C,l.require=E,l.define=pe.amdD},C(!0);function C(l){if(!(!k||!k.document)){R.set("packaged",l||E.packaged||P.packaged||k.define&&pe.amdD.packaged);var e={},n="",i=document.currentScript||document._currentScript,t=i&&i.ownerDocument||document;i&&i.src&&(n=i.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var r=t.getElementsByTagName("script"),o=0;o<r.length;o++){var c=r[o],d=c.src||c.getAttribute("src");if(!!d){for(var $=c.attributes,S=0,y=$.length;S<y;S++){var m=$[S];m.name.indexOf("data-ace-")===0&&(e[s(m.name.replace(/^data-ace-/,""))]=m.value)}var b=d.match(/^(.*)\/ace([\-.]\w+)?\.js(\?|$)/);b&&(n=b[1])}}n&&(e.base=e.base||n,e.packaged=!0),e.basePath=e.base,e.workerPath=e.workerPath||e.base,e.modePath=e.modePath||e.base,e.themePath=e.themePath||e.base,delete e.base;for(var p in e)typeof e[p]!="undefined"&&R.set(p,e[p])}}function s(l){return l.replace(/-(.)/g,function(e,n){return n.toUpperCase()})}}),ace.define("ace/range",["require","exports","module"],function(E,x,P){"use strict";var R=function(C,s){return C.row-s.row||C.column-s.column},k=function
==========================================================================
SproutCore -- JavaScript Application Framework
copyright 2006-2009, Sprout Systems Inc., Apple Inc. and contributors.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
SproutCore and the SproutCore logo are trademarks of Sprout Systems, Inc.
For more information about SproutCore, visit http://www.sproutcore.com
==========================================================================
@license */"use strict";var R=E("./oop"),k=function(){var C={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta",91:"MetaLeft",92:"MetaRight",93:"ContextMenu"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,super:8,meta:8,command:8,cmd:8,control:1},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}};C.PRINTABLE_KEYS[173]="-";var s,l;for(l in C.FUNCTION_KEYS)s=C.FUNCTION_KEYS[l].toLowerCase(),C[s]=parseInt(l,10);for(l in C.PRINTABLE_KEYS)s=C.PRINTABLE_KEYS[l].toLowerCase(),C[s]=parseInt(l,10);return R.mixin(C,C.MODIFIER_KEYS),R.mixin(C,C.PRINTABLE_KEYS),R.mixin(C,C.FUNCTION_KEYS),C.enter=C.return,C.escape=C.esc,C.del=C.delete,function(){for(var e=["cmd","ctrl","alt","shift"],n=Math.pow(2,e.length);n--;)C.KEY_MODS[n]=e.filter(function(i){return n&C.KEY_MODS[i]}).join("-")+"-"}(),C.KEY_MODS[0]="",C.KEY_MODS[-1]="input-",C}();R.mixin(x,k),x.keyCodeToString=function(C){var s=k[C];return typeof s!="string"&&(s=String.fromCharCode(C)),s.toLowerCase()}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(E,x,P){"use strict";var R=E("./keys"),k=E("./useragent"),C=null,s=0,l;function e(){l=!1;try{document.createComment("").addEventListener("test",function(){},{get passive(){l={passive:!1}}})}catch(S){}}function n(){return l==null&&e(),l}function i(S,y,m){this.elem=S,this.type=y,this.callback=m}i.prototype.destroy=function(){r(this.elem,this.type,this.callback),this.elem=this.type=this.callback=void 0};var t=x.addListener=function(S,y,m,b){S.addEventListener(y,m,n()),b&&b.$toDestroy.push(new i(S,y,m))},r=x.removeListener=function(S,y,m){S.removeEventListener(y,m,n())};x.stopEvent=function(S){return x.stopPropagation(S),x.preventDefault(S),!1},x.stopPropagation=function(S){S.stopPropagation&&S.stopPropagation()},x.preventDefault=function(S){S.preventDefault&&S.preventDefault()},x.getButton=function(S){return S.type=="dblclick"?0:S.type=="contextmenu"||k.isMac&&S.ctrlKey&&!S.altKey&&!S.shiftKey?2:S.button},x.capture=function(S,y,m){var b=S&&S.ownerDocument||document;function p(w){y&&y(w),m&&m(w),r(b,"mousemove",y),r(b,"mouseup",p),r(b,"dragstart",p)}return t(b,"mousemove",y),t(b,"mouseup",p),t(b,"dragstart",p),p},x.addMouseWheelListener=function(S,y,m){t(S,"wheel",function(b){var p=.15,w=b.deltaX||0,v=b.deltaY||0;switch(b.deltaMode){case b.DOM_DELTA_PIXEL:b.wheelX=w*p,b.wheelY=v*p;break;case b.DOM_DELTA_LINE:var f=15;b.wheelX=w*f,b.wheelY=v*f;break;case b.DOM_DELTA_PAGE:var a=150;b.wheelX=w*a,b.wheelY=v*a;break}y(b)},m)},x.addMultiMouseDownListener=function(S,y,m,b,p){var w=0,v,f,a,h={2:"dblclick",3:"tripleclick",4:"quadclick"};function u(g){if(x.getButton(g)!==0?w=0:g.detail>1?(w++,w>4&&(w=1)):w=1,k.isIE){var A=Math.abs(g.clientX-v)>5||Math.abs(g.clientY-f)>5;(!a||A)&&(w=1),a&&clearTimeout(a),a=setTimeout(function(){a=null},y[w-1]||600),w==1&&(v=g.clientX,f=g.clientY)}if(g._clicks=w,m[b]("mousedown",g),w>4)w=0;else if(w>1)return m[b](h[w],g)}Array.isArray(S)||(S=[S]),S.forEach(function(g){t(g,"mousedown",u,p)})};var o=function(S){return 0|(S.ctrlKey?1:0)|(S.altKey?2:0)|(S.shiftKey?4:0)|(S.metaKey?8:0)};x.getModifierString=function(S){return R.KEY_MODS[o(S)]};function c(S,y,m){var b=o(y);if(!k.isMac&&C){if(y.getModifierState&&(y.getModi
ab`+D+`cde fg
`;V!=b.value&&(b.value=g=V);var K=4,ee=4+(D.length||(m.selection.isEmpty()?0:1));(A!=K||L!=ee)&&b.setSelectionRange(K,ee),A=K,L=ee}}:function(){if(!(v||f)&&!(!T&&!B)){v=!0;var D=0,V=0,K="";if(m.session){var ee=m.selection,te=ee.getRange(),oe=ee.cursor.row;if(D=te.start.column,V=te.end.column,K=m.session.getLine(oe),te.start.row!=oe){var le=m.session.getLine(oe-1);D=te.start.row<oe-1?0:D,V+=le.length+1,K=le+`
`+K}else if(te.end.row!=oe){var ae=m.session.getLine(oe+1);V=te.end.row>oe+1?ae.length:V,V+=K.length+1,K=K+`
`+ae}else $&&oe>0&&(K=`
`+K,V+=1,D+=1);K.length>t&&(D<t&&V<t?K=K.slice(0,t):(K=`
`,D==V?D=V=0:(D=0,V=1)))}var ne=K+`
`;if(ne!=g&&(b.value=g=ne,A=L=ne.length),B&&(A=b.selectionStart,L=b.selectionEnd),L!=V||A!=D||b.selectionEnd!=L)try{b.setSelectionRange(D,V),A=D,L=V}catch(ie){}v=!1}};this.resetSelection=I,T&&m.onFocus();var F=function(D){return D.selectionStart===0&&D.selectionEnd>=g.length&&D.value===g&&g&&D.selectionEnd!==L},_=function(D){v||(p?p=!1:F(b)?(m.selectAll(),I()):$&&b.selectionStart!=A&&I())};function W(D){if((!b||!b.parentNode)&&document.removeEventListener("selectionchange",W),!v&&b.selectionStart===b.selectionEnd){var V=b.selectionStart-A,K=L-A;V>0?V=Math.max(V-K,1):V===0&&K&&(V=-1);for(var ee=Math.abs(V),te=V>0?r.right:r.left,oe=0;oe<ee;oe++)m.onCommandKey({},0,te)}}var O=null;this.setInputHandler=function(D){O=D},this.getInputHandler=function(){return O};var B=!1,H=function(D,V){if(B&&(B=!1),w)return I(),D&&m.onPaste(D),w=!1,"";for(var K=b.selectionStart,ee=b.selectionEnd,te=A,oe=g.length-L,le=D,ae=D.length-K,ne=D.length-ee,ie=0;te>0&&g[ie]==D[ie];)ie++,te--;for(le=le.slice(ie),ie=1;oe>0&&g.length-ie>A-1&&g[g.length-ie]==D[D.length-ie];)ie++,oe--;ae-=ie-1,ne-=ie-1;var ue=le.length-ie+1;if(ue<0&&(te=-ue,ue=0),le=le.slice(0,ue),!V&&!le&&!ae&&!te&&!oe&&!ne)return"";f=!0;var ge=!1;return k.isAndroid&&le==". "&&(le=" ",ge=!0),le&&!te&&!oe&&!ae&&!ne||h?m.onTextInput(le):m.onTextInput(le,{extendLeft:te,extendRight:oe,restoreStart:ae,restoreEnd:ne}),f=!1,g=D,A=K,L=ee,M=ne,ge?`
`:le},z=function(D){if(v)return Q();if(D&&D.inputType){if(D.inputType=="historyUndo")return m.execCommand("undo");if(D.inputType=="historyRedo")return m.execCommand("redo")}var V=b.value,K=H(V,!0);(V.length>t+100||d.test(K)||$&&A<1&&A==L)&&I()},Y=function(D,V,K){var ee=D.clipboardData||window.clipboardData;if(!(!ee||e)){var te=n||K?"Text":"text/plain";try{return V?ee.setData(te,V)!==!1:ee.getData(te)}catch(oe){if(!K)return Y(oe,V,!0)}}},Z=function(D,V){var K=m.getCopyText();if(!K)return R.preventDefault(D);Y(D,K)?(c&&(I(K),p=K,setTimeout(function(){p=!1},10)),V?m.onCut():m.onCopy(),R.preventDefault(D)):(p=!0,b.value=K,b.select(),setTimeout(function(){p=!1,I(),V?m.onCut():m.onCopy()}))},N=function(D){Z(D,!0)},U=function(D){Z(D,!1)},X=function(D){var V=Y(D);l.pasteCancelled()||(typeof V=="string"?(V&&m.onPaste(V,D),k.isIE&&setTimeout(I),R.preventDefault(D)):(b.value="",w=!0))};R.addCommandKeyListener(b,m.onCommandKey.bind(m),m),R.addListener(b,"select",_,m),R.addListener(b,"input",z,m),R.addListener(b,"cut",N,m),R.addListener(b,"copy",U,m),R.addListener(b,"paste",X,m),(!("oncut"in b)||!("oncopy"in b)||!("onpaste"in b))&&R.addListener(y,"keydown",function(D){if(!(k.isMac&&!D.metaKey||!D.ctrlKey))switch(D.keyCode){case 67:U(D);break;case 86:X(D);break;case 88:N(D);break}},m);var G=function(D){if(!(v||!m.onCompositionStart||m.$readOnly)&&(v={},!h)){D.data&&(v.useTextareaForIME=!1),setTimeout(Q,0),m._signal("compositionStart"),m.on("mousedown",q);var V=m.getSelectionRange();V.end.row=V.start.row,V.end.column=V.start.column,v.markerRange=V,v.selectionStart=A,m.onCompositionStart(v),v.useTextareaForIME?(g=b.value="",A=0,L=0):(b.msGetInputContext&&(v.context=b.msGetInputContext()),b.getInputContext&&(v.context=b.getInputContext()))}},Q=function(){if(!(!v||!m.onCompositionUpdate||m.$readOnly)){if(h)return q();if(v.useTextareaForIME)m.onCompositionUpdate(b.value);else{var D=b.value;H(D),v.markerRange&&(v.context&&(v.markerRange.start.column=v.selectionStart=v.context.compositionStartOffset),v.markerRange.end.column=v.markerRange.start.column+L-v.selectionStart+M)}}},J=function(D){!m.onCompositionEnd||m.$readOnly||(v=!1,m.onCompositionEnd(),m.off("mousedown",q),D&&z())};function q(){u=!0,b.blur(),b.focus(),u=!1}var j=s.delayedCall(Q,50).schedule.bind(null,null);function re(D){D.keyCode==27&&b.value.length<b.selectionStart&&(v||(g=b.value),A=L=-1,I()),j()}R.addListener(b,"compositionstart",G,m),R.addListener(b,"compositionupdate",Q,m),R.addListener(b,"keyup",re,m),R.addListener(b,"keydown",j,m),R.addListener(b,"compositionend",J,m),this.getElement=function(){return b},this.setCommandMode=function(D){h=D,b.readOnly=!1},this.setReadOnly=function(D){h||(b.readOnly=D)},this.setCopyWithEmptySelection=function(D){},this.onContextMenu=function(D){B=!0,I(),m._emit("nativecontextmenu",{target:m,domEvent:D}),this.moveToMouse(D,!0)},this.moveToMouse=function(D,V){a||(a=b.style.cssText),b.style.cssText=(V?"z-index:100000;":"")+(k.isIE?"opacity:0.1;":"")+"text-indent: -"+(A+L)*m.renderer.characterWidth*.5+"px;";var K=m.container.getBoundingClientRect(),ee=C.computedStyle(m.container),te=K.top+(parseInt(ee.borderTopWidth)||0),oe=K.left+(parseInt(K.borderLeftWidth)||0),le=K.bottom-te-b.clientHeight-2,ae=function(ne){C.translate(b,ne.clientX-oe-2,Math.min(ne.clientY-te-2,le))};ae(D),D.type=="mousedown"&&(m.renderer.$isMousePressed=!0,clearTimeout(he),k.isWin&&R.capture(m.container,ae,de))},this.onContextMenuClose=de;var he;function de(){clearTimeout(he),he=setTimeout(function(){a&&(b.style.cssText=a,a=""),m.renderer.$isMousePressed=!1,m.renderer.$keepTextAreaAtCursor&&m.renderer.$moveTextAreaToCursor()},0)}var ce=function(D){m.textInput.onContextMenu(D),de()};R.addListener(b,"mouseup",ce,m),R.addListener(b,"mousedown",function(D){D.preventDefault(),de()},m),R.addListener(m.renderer.scroller,"contextmenu",ce,m),R.addListener(b,"contextmenu",ce,m),c&&se(y,m,b);function se(D,V,K){var ee=null,te=!1;K.addEventListener("keydown",function(le){ee&&clearTimeout(ee),te=!0},!0),K.addEventListener("keyup",function(le){ee=setTimeout(function(){te=!1},100)},!0);
`?ie=r.end:ae<A&&g[ae-1]==" "?(ie=r.left,ue=o.option):ae<A||ae==A&&L!=A&&ae==ne?ie=r.left:ne>L&&g.slice(0,ne).split(`
`).length>2?ie=r.down:ne>L&&g[ne-1]==" "?(ie=r.right,ue=o.option):(ne>L||ne==L&&L!=A&&ae==ne)&&(ie=r.right),ae!==ne&&(ue|=o.shift),ie){var ge=V.onCommandKey({},ue,ie);if(!ge&&V.commands){ie=r.keyCodeToString(ie);var me=V.commands.findKeyCommand(ue,ie);me&&V.execCommand(me)}A=ae,L=ne,I("")}}};document.addEventListener("selectionchange",oe),V.on("destroy",function(){document.removeEventListener("selectionchange",oe)})}this.destroy=function(){b.parentElement&&b.parentElement.removeChild(b)}};x.TextInput=S,x.$setUserAgentForTests=function(y,m){$=y,c=m}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(E,x,P){"use strict";var R=E("../lib/useragent"),k=0,C=550,s=function(){function n(i){i.$clickSelection=null;var t=i.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(i)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(i)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(i)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(i)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(i));var r=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];r.forEach(function(o){i[o]=this[o]},this),i.selectByLines=this.extendSelectionBy.bind(i,"getLineRange"),i.selectByWords=this.extendSelectionBy.bind(i,"getWordRange")}return n.prototype.onMouseDown=function(i){var t=i.inSelection(),r=i.getDocumentPosition();this.mousedownEvent=i;var o=this.editor,c=i.getButton();if(c!==0){var d=o.getSelectionRange(),$=d.isEmpty();($||c==1)&&o.selection.moveToPosition(r),c==2&&(o.textInput.onContextMenu(i.domEvent),R.isMozilla||i.preventDefault());return}if(this.mousedownEvent.time=Date.now(),t&&!o.isFocused()&&(o.focus(),this.$focusTimeout&&!this.$clickSelection&&!o.inMultiSelectMode)){this.setState("focusWait"),this.captureMouse(i);return}return this.captureMouse(i),this.startSelect(r,i.domEvent._clicks>1),i.preventDefault()},n.prototype.startSelect=function(i,t){i=i||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var r=this.editor;!this.mousedownEvent||(this.mousedownEvent.getShiftKey()?r.selection.selectToPosition(i):t||r.selection.moveToPosition(i),t||this.select(),r.setStyle("ace_selecting"),this.setState("select"))},n.prototype.select=function(){var i,t=this.editor,r=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var o=this.$clickSelection.comparePoint(r);if(o==-1)i=this.$clickSelection.end;else if(o==1)i=this.$clickSelection.start;else{var c=e(this.$clickSelection,r);r=c.cursor,i=c.anchor}t.selection.setSelectionAnchor(i.row,i.column)}t.selection.selectToPosition(r),t.renderer.scrollCursorIntoView()},n.prototype.extendSelectionBy=function(i){var t,r=this.editor,o=r.renderer.screenToTextCoordinates(this.x,this.y),c=r.selection[i](o.row,o.column);if(this.$clickSelection){var d=this.$clickSelection.comparePoint(c.start),$=this.$clickSelection.comparePoint(c.end);if(d==-1&&$<=0)t=this.$clickSelection.end,(c.end.row!=o.row||c.end.column!=o.column)&&(o=c.start);else if($==1&&d>=0)t=this.$clickSelection.start,(c.start.row!=o.row||c.start.column!=o.column)&&(o=c.end);else if(d==-1&&$==1)o=c.end,t=c.start;else{var S=e(this.$clickSelection,o);o=S.cursor,t=S.anchor}r.selection.setSelectionAnchor(t.row,t.column)}r.selection.selectToPosition(o),r.renderer.scrollCursorIntoView()},n.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},n.prototype.focusWait=function(){var i=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(i>k||t-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},n.prototype.onDoubleClick=function(i){var t=i.getDocumentPosition(),r=this.editor,o=r.session,c=o.getBracketRange(t);c?(c.isEmpty()&&(c.start.column--,c.end.column++),this.setState("select")):(c=r.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=c,this.select()},n.prototype.onTripleClick=function(i){var t=i.getDocumentPos
`))&&(this.seenBidi=!0,this.currentRow=null)},l.prototype.getDocumentRow=function(){var e=0,n=this.session.$screenRowCache;if(n.length){var i=this.session.$getRowCacheIndex(n,this.currentRow);i>=0&&(e=this.session.$docRowCache[i])}return e},l.prototype.getSplitIndex=function(){var e=0,n=this.session.$screenRowCache;if(n.length)for(var i,t=this.session.$getRowCacheIndex(n,this.currentRow);this.currentRow-e>0&&(i=this.session.$getRowCacheIndex(n,this.currentRow-e-1),i===t);)t=i,e++;else e=this.currentRow;return e},l.prototype.updateRowLine=function(e,n){e===void 0&&(e=this.getDocumentRow());var i=e===this.session.getLength()-1,t=i?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(e),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var r=this.session.$wrapData[e];r&&(n===void 0&&(n=this.getSplitIndex()),n>0&&r.length?(this.wrapIndent=r.indent,this.wrapOffset=this.wrapIndent*this.charWidths[R.L],this.line=n<r.length?this.line.substring(r[n-1],r[n]):this.line.substring(r[r.length-1])):this.line=this.line.substring(0,r[n]),n==r.length&&(this.line+=this.showInvisibles?t:R.DOT))}else this.line+=this.showInvisibles?t:R.DOT;var o=this.session,c=0,d;this.line=this.line.replace(/\t|[\u1100-\u2029, \u202F-\uFFE6]/g,function($,S){return $===" "||o.isFullWidth($.charCodeAt(0))?(d=$===" "?o.getScreenTabSize(S+c):2,c+=d-1,k.stringRepeat(R.DOT,d)):$}),this.isRtlDir&&(this.fontMetrics.$main.textContent=this.line.charAt(this.line.length-1)==R.DOT?this.line.substr(0,this.line.length-1):this.line,this.rtlLineOffset=this.contentWidth-this.fontMetrics.$main.getBoundingClientRect().width)},l.prototype.updateBidiMap=function(){var e=[];R.hasBidiCharacters(this.line,e)||this.isRtlDir?this.bidiMap=R.doBidiReorder(this.line,e,this.isRtlDir):this.bidiMap={}},l.prototype.markAsDirty=function(){this.currentRow=null},l.prototype.updateCharacterWidths=function(e){if(this.characterWidth!==e.$characterSize.width){this.fontMetrics=e;var n=this.characterWidth=e.$characterSize.width,i=e.$measureCharWidth("\u05D4");this.charWidths[R.L]=this.charWidths[R.EN]=this.charWidths[R.ON_R]=n,this.charWidths[R.R]=this.charWidths[R.AN]=i,this.charWidths[R.R_H]=i*.45,this.charWidths[R.B]=this.charWidths[R.RLE]=0,this.currentRow=null}},l.prototype.setShowInvisibles=function(e){this.showInvisibles=e,this.currentRow=null},l.prototype.setEolChar=function(e){this.EOL=e},l.prototype.setContentWidth=function(e){this.contentWidth=e},l.prototype.isRtlLine=function(e){return this.$isRtl?!0:e!=null?this.session.getLine(e).charAt(0)==this.RLE:this.isRtlDir},l.prototype.setRtlDirection=function(e,n){for(var i=e.getCursorPosition(),t=e.selection.getSelectionAnchor().row;t<=i.row;t++)!n&&e.session.getLine(t).charAt(0)===e.session.$bidiHandler.RLE?e.session.doc.removeInLine(t,0,1):n&&e.session.getLine(t).charAt(0)!==e.session.$bidiHandler.RLE&&e.session.doc.insert({column:0,row:t},e.session.$bidiHandler.RLE)},l.prototype.getPosLeft=function(e){e-=this.wrapIndent;var n=this.line.charAt(0)===this.RLE?1:0,i=e>n?this.session.getOverwrite()?e:e-1:n,t=R.getVisualFromLogicalIdx(i,this.bidiMap),r=this.bidiMap.bidiLevels,o=0;!this.session.getOverwrite()&&e<=n&&r[t]%2!=0&&t++;for(var c=0;c<t;c++)o+=this.charWidths[r[c]];return!this.session.getOverwrite()&&e>n&&r[t]%2==0&&(o+=this.charWidths[r[t]]),this.wrapIndent&&(o+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(o+=this.rtlLineOffset),o},l.prototype.getSelections=function(e,n){var i=this.bidiMap,t=i.bidiLevels,r,o=[],c=0,d=Math.min(e,n)-this.wrapIndent,$=Math.max(e,n)-this.wrapIndent,S=!1,y=!1,m=0;this.wrapIndent&&(c+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var b,p=0;p<t.length;p++)b=i.logicalFromVisual[p],r=t[p],S=b>=d&&b<$,S&&!y?m=c:!S&&y&&o.push({left:m,width:c-m}),c+=this.charWidths[r],y=S;if(S&&p===t.length&&o.push({left:m,width:c-m}),this.isRtlDir)for(var w=0;w<o.length;w++)o[w].left+=this.rtlLineOffset;return o},l.prototype.offsetToCol=function(e){this.isRtlDir&&(e-=this.rtlLineOffset);var n=0,e=Math.max(e,0),i=0,t=0,r=this.bidiMap.bidiLevels,o=this.
`||b==`\r
`){r(y);var u="";c.isMaybeInsertedClosing(p,w)&&(u=s.stringRepeat("}",n.maybeInsertedBrackets),c.clearMaybeInsertedClosing());var a=w.substring(p.column,p.column+1);if(a==="}"){var g=m.findMatchingBracket({row:p.row,column:p.column+1},"}");if(!g)return null;var A=this.$getIndent(m.getLine(g.row))}else if(u)var A=this.$getIndent(w);else{c.clearMaybeInsertedClosing();return}var L=A+m.getTabString();return{text:`
`+L+`
`+A+u,selection:[1,L.length,1,L.length]}}else c.clearMaybeInsertedClosing()}),this.add("braces","deletion",function($,S,y,m,b){var p=m.doc.getTextRange(b);if(!b.isMultiLine()&&p=="{"){r(y);var w=m.doc.getLine(b.start.row),v=w.substring(b.end.column,b.end.column+1);if(v=="}")return b.end.column++,b;n.maybeInsertedBrackets--}}),this.add("parens","insertion",function($,S,y,m,b){if(b=="("){r(y);var p=y.getSelectionRange(),w=m.doc.getTextRange(p);if(w!==""&&y.getWrapBehavioursEnabled())return o(p,w,"(",")");if(c.isSaneInsertion(y,m))return c.recordAutoInsert(y,m,")"),{text:"()",selection:[1,1]}}else if(b==")"){r(y);var v=y.getCursorPosition(),f=m.doc.getLine(v.row),a=f.substring(v.column,v.column+1);if(a==")"){var h=m.$findOpeningBracket(")",{column:v.column+1,row:v.row});if(h!==null&&c.isAutoInsertedClosing(v,f,b))return c.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function($,S,y,m,b){var p=m.doc.getTextRange(b);if(!b.isMultiLine()&&p=="("){r(y);var w=m.doc.getLine(b.start.row),v=w.substring(b.start.column+1,b.start.column+2);if(v==")")return b.end.column++,b}}),this.add("brackets","insertion",function($,S,y,m,b){if(b=="["){r(y);var p=y.getSelectionRange(),w=m.doc.getTextRange(p);if(w!==""&&y.getWrapBehavioursEnabled())return o(p,w,"[","]");if(c.isSaneInsertion(y,m))return c.recordAutoInsert(y,m,"]"),{text:"[]",selection:[1,1]}}else if(b=="]"){r(y);var v=y.getCursorPosition(),f=m.doc.getLine(v.row),a=f.substring(v.column,v.column+1);if(a=="]"){var h=m.$findOpeningBracket("]",{column:v.column+1,row:v.row});if(h!==null&&c.isAutoInsertedClosing(v,f,b))return c.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function($,S,y,m,b){var p=m.doc.getTextRange(b);if(!b.isMultiLine()&&p=="["){r(y);var w=m.doc.getLine(b.start.row),v=w.substring(b.start.column+1,b.start.column+2);if(v=="]")return b.end.column++,b}}),this.add("string_dquotes","insertion",function($,S,y,m,b){var p=m.$mode.$quotes||t;if(b.length==1&&p[b]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(b)!=-1)return;r(y);var w=b,v=y.getSelectionRange(),f=m.doc.getTextRange(v);if(f!==""&&(f.length!=1||!p[f])&&y.getWrapBehavioursEnabled())return o(v,f,w,w);if(!f){var a=y.getCursorPosition(),h=m.doc.getLine(a.row),u=h.substring(a.column-1,a.column),g=h.substring(a.column,a.column+1),A=m.getTokenAt(a.row,a.column),L=m.getTokenAt(a.row,a.column+1);if(u=="\\"&&A&&/escape/.test(A.type))return null;var M=A&&/string|escape/.test(A.type),T=!L||/string|escape/.test(L.type),I;if(g==w)I=M!==T,I&&/string\.end/.test(L.type)&&(I=!1);else{if(M&&!T||M&&T)return null;var F=m.$mode.tokenRe;F.lastIndex=0;var _=F.test(u);F.lastIndex=0;var W=F.test(g),O=m.$mode.$pairQuotesAfter,B=O&&O[w]&&O[w].test(u);if(!B&&_||W||g&&!/[\s;,.})\]\\]/.test(g))return null;var H=h[a.column-2];if(u==w&&(H==w||F.test(H)))return null;I=!0}return{text:I?w+w:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function($,S,y,m,b){var p=m.$mode.$quotes||t,w=m.doc.getTextRange(b);if(!b.isMultiLine()&&p.hasOwnProperty(w)){r(y);var v=m.doc.getLine(b.start.row),f=v.substring(b.start.column+1,b.start.column+2);if(f==w)return b.end.column++,b}})};c.isSaneInsertion=function(d,$){var S=d.getCursorPosition(),y=new C($,S.row,S.column);if(!this.$matchTokenType(y.getCurrentToken()||"text",l)){if(/[)}\]]/.test(d.session.getLine(S.row)[S.column]))return!0;var m=new C($,S.row,S.column+1);if(!this.$matchTokenType(m.getCurrentToken()||"text",l))return!1}return y.stepForward(),y.getCurrentTokenRow()!==S.row||this.$matchTokenType(y.getCurrentToken()||"text",e)},c.$matchTokenType=function(d,$){return $.indexOf(d.type||d)>-1},c.recordAutoInsert=function(d,$,S){var y=d.getCursorPosition(),m=$.doc.getLine(y.row);this.isAutoInsertedClosing(y,m,n.autoInsertedLineEnd[0])||(n.autoInsertedBrackets=0),n.autoInsertedRow=y.row,n.autoInsertedLineEnd=S+m.substr(y.column),n.autoInsertedBrackets++},c.recordMaybeInsert=function(d,$,S){var y=d.getCursorPosition(),m=$.doc.getLine(y.row);this.isMaybeInsertedClosing(y,m)||(n.maybeInsertedBrackets=0),n.maybeInsertedRow=
`,this._signal("changeNewLineMode")},n.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return`\r
`;case"unix":return`
`;default:return this.$autoNewLine||`
`}},n.prototype.setNewLineMode=function(i){this.$newLineMode!==i&&(this.$newLineMode=i,this._signal("changeNewLineMode"))},n.prototype.getNewLineMode=function(){return this.$newLineMode},n.prototype.isNewLine=function(i){return i==`\r
`||i=="\r"||i==`
`},n.prototype.getLine=function(i){return this.$lines[i]||""},n.prototype.getLines=function(i,t){return this.$lines.slice(i,t+1)},n.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},n.prototype.getLength=function(){return this.$lines.length},n.prototype.getTextRange=function(i){return this.getLinesForRange(i).join(this.getNewLineCharacter())},n.prototype.getLinesForRange=function(i){var t;if(i.start.row===i.end.row)t=[this.getLine(i.start.row).substring(i.start.column,i.end.column)];else{t=this.getLines(i.start.row,i.end.row),t[0]=(t[0]||"").substring(i.start.column);var r=t.length-1;i.end.row-i.start.row==r&&(t[r]=t[r].substring(0,i.end.column))}return t},n.prototype.insertLines=function(i,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(i,t)},n.prototype.removeLines=function(i,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(i,t)},n.prototype.insertNewLine=function(i){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(i,["",""])},n.prototype.insert=function(i,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(i,this.$split(t))},n.prototype.insertInLine=function(i,t){var r=this.clippedPos(i.row,i.column),o=this.pos(i.row,i.column+t.length);return this.applyDelta({start:r,end:o,action:"insert",lines:[t]},!0),this.clonePos(o)},n.prototype.clippedPos=function(i,t){var r=this.getLength();i===void 0?i=r:i<0?i=0:i>=r&&(i=r-1,t=void 0);var o=this.getLine(i);return t==null&&(t=o.length),t=Math.min(Math.max(t,0),o.length),{row:i,column:t}},n.prototype.clonePos=function(i){return{row:i.row,column:i.column}},n.prototype.pos=function(i,t){return{row:i,column:t}},n.prototype.$clipPosition=function(i){var t=this.getLength();return i.row>=t?(i.row=Math.max(0,t-1),i.column=this.getLine(t-1).length):(i.row=Math.max(0,i.row),i.column=Math.min(Math.max(i.column,0),this.getLine(i.row).length)),i},n.prototype.insertFullLines=function(i,t){i=Math.min(Math.max(i,0),this.getLength());var r=0;i<this.getLength()?(t=t.concat([""]),r=0):(t=[""].concat(t),i--,r=this.$lines[i].length),this.insertMergedLines({row:i,column:r},t)},n.prototype.insertMergedLines=function(i,t){var r=this.clippedPos(i.row,i.column),o={row:r.row+t.length-1,column:(t.length==1?r.column:0)+t[t.length-1].length};return this.applyDelta({start:r,end:o,action:"insert",lines:t}),this.clonePos(o)},n.prototype.remove=function(i){var t=this.clippedPos(i.start.row,i.start.column),r=this.clippedPos(i.end.row,i.end.column);return this.applyDelta({start:t,end:r,action:"remove",lines:this.getLinesForRange({start:t,end:r})}),this.clonePos(t)},n.prototype.removeInLine=function(i,t,r){var o=this.clippedPos(i,t),c=this.clippedPos(i,r);return this.applyDelta({start:o,end:c,action:"remove",lines:this.getLinesForRange({start:o,end:c})},!0),this.clonePos(o)},n.prototype.removeFullLines=function(i,t){i=Math.min(Math.max(0,i),this.getLength()-1),t=Math.min(Math.max(0,t),this.getLength()-1);var r=t==this.getLength()-1&&i>0,o=t<this.getLength()-1,c=r?i-1:i,d=r?this.getLine(c).length:0,$=o?t+1:t,S=o?0:this.getLine($).length,y=new s(c,d,$,S),m=this.$lines.slice(i,t+1);return this.applyDelta({start:y.start,end:y.end,action:"remove",lines:this.getLinesForRange(y)}),m},n.prototype.removeNewLine=function(i){i<this.getLength()-1&&i>=0&&this.applyDelta({start:this.pos(i,this.getLine(i).length),end:this.pos(i+1,0),action:"remove",lines:["",""]})},n.prototype.replace=function(i,t){if(i instanceof s||(i=s.fromPoints(i.start,i.end)),t.length===0&&i.isEmpty())return i.start;if(t==this.getTextRange(i))return i.end;this.remove(i);var r;return t?r=this.insert(i.start,t):r=i.start,r},n.prototype.applyDeltas=function(i){for(var t=0;t<i.length;t++)this.applyDelta(i[t])},n.prototype.revertDeltas=function(i){for(var t=i.length-1;t>=0;t--)this.revertDelta(i[t])},n.prototype.applyDelta=function(i,t){var r=i.action=="insert"
`).split(`
`)}:function(n){return n.split(/\r\n|\r|\n/)},e.prototype.$autoNewLine="",e.prototype.$newLineMode="auto",R.implement(e.prototype,C),x.Document=e}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(E,x,P){"use strict";var R=E("./lib/oop"),k=E("./lib/event_emitter").EventEmitter,C=function(){function s(l,e){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=l;var n=this;this.$worker=function(){if(!!n.running){for(var i=new Date,t=n.currentLine,r=-1,o=n.doc,c=t;n.lines[t];)t++;var d=o.getLength(),$=0;for(n.running=!1;t<d;){n.$tokenizeRow(t),r=t;do t++;while(n.lines[t]);if($++,$%5==0&&new Date-i>20){n.running=setTimeout(n.$worker,20);break}}n.currentLine=t,r==-1&&(r=t),c<=r&&n.fireUpdateEvent(c,r)}}}return s.prototype.setTokenizer=function(l){this.tokenizer=l,this.lines=[],this.states=[],this.start(0)},s.prototype.setDocument=function(l){this.doc=l,this.lines=[],this.states=[],this.stop()},s.prototype.fireUpdateEvent=function(l,e){var n={first:l,last:e};this._signal("update",{data:n})},s.prototype.start=function(l){this.currentLine=Math.min(l||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},s.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},s.prototype.$updateOnChange=function(l){var e=l.start.row,n=l.end.row-e;if(n===0)this.lines[e]=null;else if(l.action=="remove")this.lines.splice(e,n+1,null),this.states.splice(e,n+1,null);else{var i=Array(n+1);i.unshift(e,1),this.lines.splice.apply(this.lines,i),this.states.splice.apply(this.states,i)}this.currentLine=Math.min(e,this.currentLine,this.doc.getLength()),this.stop()},s.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},s.prototype.getTokens=function(l){return this.lines[l]||this.$tokenizeRow(l)},s.prototype.getState=function(l){return this.currentLine==l&&this.$tokenizeRow(l),this.states[l]||"start"},s.prototype.$tokenizeRow=function(l){var e=this.doc.getLine(l),n=this.states[l-1],i=this.tokenizer.getLineTokens(e,n,l);return this.states[l]+""!=i.state+""?(this.states[l]=i.state,this.lines[l+1]=null,this.currentLine>l+1&&(this.currentLine=l+1)):this.currentLine==l&&(this.currentLine=l+1),this.lines[l]=i.tokens},s.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},s}();R.implement(C.prototype,k),x.BackgroundTokenizer=C}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(E,x,P){"use strict";var R=E("./lib/lang"),k=E("./range").Range,C=function(){function s(l,e,n){n===void 0&&(n="text"),this.setRegexp(l),this.clazz=e,this.type=n}return s.prototype.setRegexp=function(l){this.regExp+""!=l+""&&(this.regExp=l,this.cache=[])},s.prototype.update=function(l,e,n,i){if(!!this.regExp)for(var t=i.firstRow,r=i.lastRow,o={},c=t;c<=r;c++){var d=this.cache[c];d==null&&(d=R.getMatchOffsets(n.getLine(c),this.regExp),d.length>this.MAX_RANGES&&(d=d.slice(0,this.MAX_RANGES)),d=d.map(function(m){return new k(c,m.offset,c,m.offset+m.length)}),this.cache[c]=d.length?d:"");for(var $=d.length;$--;){var S=d[$].toScreenRange(n),y=S.toString();o[y]||(o[y]=!0,e.drawSingleLineMarker(l,S,this.clazz,i))}}},s}();C.prototype.MAX_RANGES=500,x.SearchHighlight=C}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(E,x,P){"use strict";var R=E("../range").Range,k=function(){function C(s,l){this.foldData=s,Array.isArray(l)?this.folds=l:l=this.folds=[l];var e=l[l.length-1];this.range=new R(l[0].start.row,l[0].start.column,e.end.row,e.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(n){n.setFoldLine(this)},this)}return C.prototype.shiftRow=function(s){this.start.row+=s,this.end.row+=s,this.folds.forEach(function(l){l.start.row+=s,l.end.row+=s})},C.prototype.addFold=function(s){if(s.sameRow){if(s
`)},C.prototype.idxToPosition=function(s){for(var l=0,e=0;e<this.folds.length;e++){var n=this.folds[e];if(s-=n.start.column-l,s<0)return{row:n.start.row,column:n.start.column+s};if(s-=n.placeholder.length,s<0)return n.start;l=n.end.column}return{row:this.end.row,column:this.end.column+s}},C}();x.FoldLine=k}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(E,x,P){"use strict";var R=E("./range").Range,k=R.comparePoints,C=function(){function s(){this.ranges=[],this.$bias=1}return s.prototype.pointIndex=function(l,e,n){for(var i=this.ranges,t=n||0;t<i.length;t++){var r=i[t],o=k(l,r.end);if(!(o>0)){var c=k(l,r.start);return o===0?e&&c!==0?-t-2:t:c>0||c===0&&!e?t:-t-1}}return-t-1},s.prototype.add=function(l){var e=!l.isEmpty(),n=this.pointIndex(l.start,e);n<0&&(n=-n-1);var i=this.pointIndex(l.end,e,n);return i<0?i=-i-1:i++,this.ranges.splice(n,i-n,l)},s.prototype.addList=function(l){for(var e=[],n=l.length;n--;)e.push.apply(e,this.add(l[n]));return e},s.prototype.substractPoint=function(l){var e=this.pointIndex(l);if(e>=0)return this.ranges.splice(e,1)},s.prototype.merge=function(){var l=[],e=this.ranges;e=e.sort(function(o,c){return k(o.start,c.start)});for(var n=e[0],i,t=1;t<e.length;t++){i=n,n=e[t];var r=k(i.end,n.start);r<0||r==0&&!i.isEmpty()&&!n.isEmpty()||(k(i.end,n.end)<0&&(i.end.row=n.end.row,i.end.column=n.end.column),e.splice(t,1),l.push(n),n=i,t--)}return this.ranges=e,l},s.prototype.contains=function(l,e){return this.pointIndex({row:l,column:e})>=0},s.prototype.containsPoint=function(l){return this.pointIndex(l)>=0},s.prototype.rangeAtPoint=function(l){var e=this.pointIndex(l);if(e>=0)return this.ranges[e]},s.prototype.clipRows=function(l,e){var n=this.ranges;if(n[0].start.row>e||n[n.length-1].start.row<l)return[];var i=this.pointIndex({row:l,column:0});i<0&&(i=-i-1);var t=this.pointIndex({row:e,column:0},i);t<0&&(t=-t-1);for(var r=[],o=i;o<t;o++)r.push(n[o]);return r},s.prototype.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},s.prototype.attach=function(l){this.session&&this.detach(),this.session=l,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},s.prototype.detach=function(){!this.session||(this.session.removeListener("change",this.onChange),this.session=null)},s.prototype.$onChange=function(l){for(var e=l.start,n=l.end,i=e.row,t=n.row,r=this.ranges,o=0,c=r.length;o<c;o++){var d=r[o];if(d.end.row>=i)break}if(l.action=="insert")for(var $=t-i,S=-e.column+n.column;o<c;o++){var d=r[o];if(d.start.row>i)break;if(d.start.row==i&&d.start.column>=e.column&&(d.start.column==e.column&&this.$bias<=0||(d.start.column+=S,d.start.row+=$)),d.end.row==i&&d.end.column>=e.column){if(d.end.column==e.column&&this.$bias<0)continue;d.end.column==e.column&&S>0&&o<c-1&&d.end.column>d.start.column&&d.end.column==r[o+1].start.column&&(d.end.column-=S),d.end.column+=S,d.end.row+=$}}else for(var $=i-t,S=e.column-n.column;o<c;o++){var d=r[o];if(d.start.row>t)break;d.end.row<t&&(i<d.end.row||i==d.end.row&&e.column<d.end.column)?(d.end.row=i,d.end.column=e.column):d.end.row==t?d.end.column<=n.column?($||d.end.column>e.column)&&(d.end.column=e.column,d.end.row=e.row):(d.end.column+=S,d.end.row+=$):d.end.row>t&&(d.end.row+=$),d.start.row<t&&(i<d.start.row||i==d.start.row&&e.column<d.start.column)?(d.start.row=i,d.start.column=e.column):d.start.row==t?d.start.column<=n.column?($||d.start.column>e.column)&&(d.start.column=e.column,d.start.row=e.row):(d.start.column+=S,d.start.row+=$):d.start.row>t&&(d.start.row+=$)}if($!=0&&o<c)for(;o<c;o++){var d=r[o];d.start.row+=$,d.end.row+=$}},s}();C.prototype.comparePoints=k,x.RangeList=C}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range_list"],function(E,x,P){"use strict";var R=this&&this.__extends||function(){var i=function(t,r){return i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,c){o.__proto__=c}||function(o,c){for(var d in c)Object.prototype.hasOwnProperty.call(c,d)&&(o[d]=c[d])},i(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class
`)},this.bgTokenizer=new r(new n().getTokenizer(),this);var u=this;this.bgTokenizer.on("update",function(g){u._signal("tokenizerUpdate",g)}),this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),(typeof a!="object"||!a.getLine)&&(a=new t(a)),this.setDocument(a),this.selection=new e(this),this.$bidiHandler=new C(this),s.resetOptions(this),this.setMode(h),s._signal("session",this),this.destroyed=!1}return f.prototype.setDocument=function(a){this.doc&&this.doc.off("change",this.$onChange),this.doc=a,a.on("change",this.$onChange,!0),this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},f.prototype.getDocument=function(){return this.doc},f.prototype.$resetRowCache=function(a){if(!a){this.$docRowCache=[],this.$screenRowCache=[];return}var h=this.$docRowCache.length,u=this.$getRowCacheIndex(this.$docRowCache,a)+1;h>u&&(this.$docRowCache.splice(u,h),this.$screenRowCache.splice(u,h))},f.prototype.$getRowCacheIndex=function(a,h){for(var u=0,g=a.length-1;u<=g;){var A=u+g>>1,L=a[A];if(h>L)u=A+1;else if(h<L)g=A-1;else return A}return u-1},f.prototype.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.destroyed||this.bgTokenizer.start(0)},f.prototype.onChangeFold=function(a){var h=a.data;this.$resetRowCache(h.start.row)},f.prototype.onChange=function(a){this.$modified=!0,this.$bidiHandler.onChange(a),this.$resetRowCache(a.start.row);var h=this.$updateInternalDataOnChange(a);!this.$fromUndo&&this.$undoManager&&(h&&h.length&&(this.$undoManager.add({action:"removeFolds",folds:h},this.mergeUndoDeltas),this.mergeUndoDeltas=!0),this.$undoManager.add(a,this.mergeUndoDeltas),this.mergeUndoDeltas=!0,this.$informUndoManager.schedule()),this.bgTokenizer.$updateOnChange(a),this._signal("change",a)},f.prototype.setValue=function(a){this.doc.setValue(a),this.selection.moveTo(0,0),this.$resetRowCache(0),this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},f.prototype.toString=function(){return this.doc.getValue()},f.prototype.getSelection=function(){return this.selection},f.prototype.getState=function(a){return this.bgTokenizer.getState(a)},f.prototype.getTokens=function(a){return this.bgTokenizer.getTokens(a)},f.prototype.getTokenAt=function(a,h){var u=this.bgTokenizer.getTokens(a),g,A=0;if(h==null){var L=u.length-1;A=this.getLine(a).length}else for(var L=0;L<u.length&&(A+=u[L].value.length,!(A>=h));L++);return g=u[L],g?(g.index=L,g.start=A-g.value.length,g):null},f.prototype.setUndoManager=function(a){if(this.$undoManager=a,this.$informUndoManager&&this.$informUndoManager.cancel(),a){var h=this;a.addSession(this),this.$syncInformUndoManager=function(){h.$informUndoManager.cancel(),h.mergeUndoDeltas=!1},this.$informUndoManager=k.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},f.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},f.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},f.prototype.getTabString=function(){return this.getUseSoftTabs()?k.stringRepeat(" ",this.getTabSize()):" "},f.prototype.setUseSoftTabs=function(a){this.setOption("useSoftTabs",a)},f.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},f.prototype.setTabSize=function(a){this.setOption("tabSize",a)},f.prototype.getTabSize=function(){return this.$tabSize},f.prototype.isTabStop=function(a){return this.$useSoftTabs&&a.column%this.$tabSize==0},f.prototype.setNavigateWithinSoftTabs=function(a){this.setOption("navigateWithinSoftTabs",a)},f.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},f.prototype.setOverwrite=function(a){this.setOption("overwrite",a)},f.prototype.getOverwrite=function(){return this.$overwrite},f.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},f.prototype.addGutterDecoration=function(a,h){this.$decorations[a]||(this.$decorations[a]=""),this.$decorations[a]+=" "+h,this._signal("changeBreakpoint",{})},f.prototype.removeG
`},f.prototype.getWordRange=function(a,h){var u=this.getLine(a),g=!1;if(h>0&&(g=!!u.charAt(h-1).match(this.tokenRe)),g||(g=!!u.charAt(h).match(this.tokenRe)),g)var A=this.tokenRe;else if(/^\s+$/.test(u.slice(h-1,h+1)))var A=/\s/;else var A=this.nonTokenRe;var L=h;if(L>0){do L--;while(L>=0&&u.charAt(L).match(A));L++}for(var M=h;M<u.length&&u.charAt(M).match(A);)M++;return new i(a,L,a,M)},f.prototype.getAWordRange=function(a,h){for(var u=this.getWordRange(a,h),g=this.getLine(u.end.row);g.charAt(u.end.column).match(/[ \t]/);)u.end.column+=1;return u},f.prototype.setNewLineMode=function(a){this.doc.setNewLineMode(a)},f.prototype.getNewLineMode=function(){return this.doc.getNewLineMode()},f.prototype.setUseWorker=function(a){this.setOption("useWorker",a)},f.prototype.getUseWorker=function(){return this.$useWorker},f.prototype.onReloadTokenizer=function(a){var h=a.data;this.bgTokenizer.start(h.first),this._signal("tokenizerUpdate",a)},f.prototype.setMode=function(a,h){if(a&&typeof a=="object"){if(a.getTokenizer)return this.$onChangeMode(a);var u=a,g=u.path}else g=a||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new n),this.$modes[g]&&!u){this.$onChangeMode(this.$modes[g]),h&&h();return}this.$modeId=g,s.loadModule(["mode",g],function(A){if(this.$modeId!==g)return h&&h();this.$modes[g]&&!u?this.$onChangeMode(this.$modes[g]):A&&A.Mode&&(A=new A.Mode(u),u||(this.$modes[g]=A,A.$id=g),this.$onChangeMode(A)),h&&h()}.bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},f.prototype.$onChangeMode=function(a,h){if(h||(this.$modeId=a.$id),this.$mode!==a){var u=this.$mode;this.$mode=a,this.$stopWorker(),this.$useWorker&&this.$startWorker();var g=a.getTokenizer();if(g.on!==void 0){var A=this.onReloadTokenizer.bind(this);g.on("update",A)}this.bgTokenizer.setTokenizer(g),this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=a.tokenRe,this.nonTokenRe=a.nonTokenRe,h||(a.attachToSession&&a.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(a.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode",{oldMode:u,mode:a}))}},f.prototype.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},f.prototype.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(a){s.warn("Could not load worker",a),this.$worker=null}},f.prototype.getMode=function(){return this.$mode},f.prototype.setScrollTop=function(a){this.$scrollTop===a||isNaN(a)||(this.$scrollTop=a,this._signal("changeScrollTop",a))},f.prototype.getScrollTop=function(){return this.$scrollTop},f.prototype.setScrollLeft=function(a){this.$scrollLeft===a||isNaN(a)||(this.$scrollLeft=a,this._signal("changeScrollLeft",a))},f.prototype.getScrollLeft=function(){return this.$scrollLeft},f.prototype.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},f.prototype.getLineWidgetMaxWidth=function(){if(this.lineWidgetsWidth!=null)return this.lineWidgetsWidth;var a=0;return this.lineWidgets.forEach(function(h){h&&h.screenWidth>a&&(a=h.screenWidth)}),this.lineWidgetWidth=a},f.prototype.$computeWidth=function(a){if(this.$modified||a){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var h=this.doc.getAllLines(),u=this.$rowLengthCache,g=0,A=0,L=this.$foldData[A],M=L?L.start.row:Infinity,T=h.length,I=0;I<T;I++){if(I>M){if(I=L.end.row+1,I>=T)break;L=this.$foldData[A++],M=L?L.start.row:Infinity}u[I]==null&&(u[I]=this.$getStringScreenWidth(h[I])[0]),u[I]>g&&(g=u[I])}this.screenWidth=g}},f.prototype.getLine=function(a){return this.doc.getLine(a)},f.prototype.getLines=function(a,h){return this.doc.getLines(a,h)},f.prototype.getLength=function(){return this.doc.getLength()},f.prototype.getTextRange=function(a){return this.doc.getTextRange(a||this.selection.getRange())},f.prototype.insert=function(a,h){return this.doc.insert(a,h)},f.prototype.remove=function(a){return this.doc.remove(a)},f.prototype.removeFullLines=function(a,h){return this
^`).split(`
`),r=[],o=0;o<t.length;o++)try{r.push(new RegExp(t[o],i))}catch(c){return!1}return r},e.prototype.$matchIterator=function(n,i){var t=this.$assembleRegExp(i);if(!t)return!1;var r=i.backwards==!0,o=i.skipCurrent!=!1,c=i.range,d=i.start;d||(d=c?c[r?"end":"start"]:n.selection.getRange()),d.start&&(d=d[o!=r?"end":"start"]);var $=c?c.start.row:0,S=c?c.end.row:n.getLength()-1;if(r)var y=function(p){var w=d.row;if(!b(w,d.column,p)){for(w--;w>=$;w--)if(b(w,Number.MAX_VALUE,p))return;if(i.wrap!=!1){for(w=S,$=d.row;w>=$;w--)if(b(w,Number.MAX_VALUE,p))return}}};else var y=function(w){var v=d.row;if(!b(v,d.column,w)){for(v=v+1;v<=S;v++)if(b(v,0,w))return;if(i.wrap!=!1){for(v=$,S=d.row;v<=S;v++)if(b(v,0,w))return}}};if(i.$isMultiLine)var m=t.length,b=function(p,w,v){var f=r?p-m+1:p;if(!(f<0||f+m>n.getLength())){var a=n.getLine(f),h=a.search(t[0]);if(!(!r&&h<w||h===-1)){for(var u=1;u<m;u++)if(a=n.getLine(f+u),a.search(t[u])==-1)return;var g=a.match(t[m-1])[0].length;if(!(r&&g>w)&&v(f,h,f+m-1,g))return!0}}};else if(r)var b=function(w,v,f){var a=n.getLine(w),h=[],u,g=0;for(t.lastIndex=0;u=t.exec(a);){var A=u[0].length;if(g=u.index,!A){if(g>=a.length)break;t.lastIndex=g+=1}if(u.index+A>v)break;h.push(u.index,A)}for(var L=h.length-1;L>=0;L-=2){var M=h[L-1],A=h[L];if(f(w,M,w,M+A))return!0}};else var b=function(w,v,f){var a=n.getLine(w),h,u;for(t.lastIndex=v;u=t.exec(a);){var g=u[0].length;if(h=u.index,f(w,h,w,h+g))return!0;if(!g&&(t.lastIndex=h+=1,h>=a.length))return!1}};return{forEach:y}},e}();function l(e,n){function i(t){return/\w/.test(t)||n.regExp?"\\b":""}return i(e[0])+e+i(e[e.length-1])}x.Search=s}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(E,x,P){"use strict";var R=E("../lib/keys"),k=E("../lib/useragent"),C=R.KEY_MODS;function s(e,n){this.platform=n||(k.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=!0}function l(e,n){s.call(this,e,n),this.$singleCommand=!1}l.prototype=s.prototype,function(){this.addCommand=function(n){this.commands[n.name]&&this.removeCommand(n),this.commands[n.name]=n,n.bindKey&&this._buildKeyHash(n)},this.removeCommand=function(n,i){var t=n&&(typeof n=="string"?n:n.name);n=this.commands[t],i||delete this.commands[t];var r=this.commandKeyBinding;for(var o in r){var c=r[o];if(c==n)delete r[o];else if(Array.isArray(c)){var d=c.indexOf(n);d!=-1&&(c.splice(d,1),c.length==1&&(r[o]=c[0]))}}},this.bindKey=function(n,i,t){if(typeof n=="object"&&n&&(t==null&&(t=n.position),n=n[this.platform]),!!n){if(typeof i=="function")return this.addCommand({exec:i,bindKey:n,name:i.name||n});n.split("|").forEach(function(r){var o="";if(r.indexOf(" ")!=-1){var c=r.split(/\s+/);r=c.pop(),c.forEach(function(S){var y=this.parseKeys(S),m=C[y.hashId]+y.key;o+=(o?" ":"")+m,this._addCommandToBinding(o,"chainKeys")},this),o+=" "}var d=this.parseKeys(r),$=C[d.hashId]+d.key;this._addCommandToBinding(o+$,i,t)},this)}};function e(n){return typeof n=="object"&&n.bindKey&&n.bindKey.position||(n.isDefault?-100:0)}this._addCommandToBinding=function(n,i,t){var r=this.commandKeyBinding,o;if(!i)delete r[n];else if(!r[n]||this.$singleCommand)r[n]=i;else{Array.isArray(r[n])?(o=r[n].indexOf(i))!=-1&&r[n].splice(o,1):r[n]=[r[n]],typeof t!="number"&&(t=e(i));var c=r[n];for(o=0;o<c.length;o++){var d=c[o],$=e(d);if($>t)break}c.splice(o,0,i)}},this.addCommands=function(n){n&&Object.keys(n).forEach(function(i){var t=n[i];if(!!t){if(typeof t=="string")return this.bindKey(t,i);typeof t=="function"&&(t={exec:t}),typeof t=="object"&&(t.name||(t.name=i),this.addCommand(t))}},this)},this.removeCommands=function(n){Object.keys(n).forEach(function(i){this.removeCommand(n[i])},this)},this.bindKeys=function(n){Object.keys(n).forEach(function(i){this.bindKey(i,n[i])},this)},this._buildKeyHash=function(n){this.bindKey(n.bindKey,n)},this.parseKeys=function(n){var i=n.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function($){return $}),t=i.pop(),r=R[t];if(R.FUNCTION_KEYS[r])t=R.FUNCTION_KEYS[r].toLowerCase();else if(i.length){if(i.length==1&&i[0]=="shi
`)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"addLineBefore",description:"Add new line before the current line",exec:function(e){e.selection.clearSelection();var n=e.getCursorPosition();e.selection.moveTo(n.row-1,Number.MAX_VALUE),e.insert(`
`),n.row===0&&e.navigateUp()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"openCommandPallete",description:"Open command palette",bindKey:s("F1","F1"),exec:function(e){e.prompt({$type:"commands"})},readOnly:!0},{name:"modeSelect",description:"Change language mode...",bindKey:s(null,null),exec:function(e){e.prompt({$type:"modes"})},readOnly:!0}];for(var l=1;l<9;l++)x.commands.push({name:"foldToLevel"+l,description:"Fold To Level "+l,level:l,exec:function(e){e.session.foldToLevel(this.level)},scrollIntoView:"center",readOnly:!0})}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/dom"],function(E,x,P){"use strict";var R=E("./lib/dom"),k=function(){function C(s){this.session=s,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeFold",this.updateOnFold),this.session.on("changeEditor",this.$onChangeEditor)}return C.prototype.getRowLength=function(s){var l;return this.lineWidgets?l=this.lineWidgets[s]&&this.lineWidgets[s].rowCount||0:l=0,!this.$useWrapMode||!this.$wrapData[s]?1+l:this.$wrapData[s].length+1+l},C.prototype.$getWidgetScreenLength=function(){var s=0;return this.lineWidgets.forEach(function(l){l&&l.rowCount&&!l.hidden&&(s+=l.rowCount)}),s},C.prototype.$onChangeEditor=function(s){this.attach(s.editor)},C.prototype.attach=function(s){s&&s.widgetManager&&s.widgetManager!=this&&s.widgetManager.detach(),this.editor!=s&&(this.detach(),this.editor=s,s&&(s.widgetManager=this,s.renderer.on("beforeRender",this.measureWidgets),s.renderer.on("afterRender",this.renderWidgets)))},C.prototype.detach=function(s){var l=this.editor;if(!!l){this.editor=null,l.widgetManager=null,l.renderer.off("beforeRender",this.measureWidgets),l.renderer.off("afterRender",this.renderWidgets);var e=this.session.lineWidgets;e&&e.forEach(function(n){n&&n.el&&n.el.parentNode&&(n._inDocument=!1,n.el.parentNode.removeChild(n.el))})}},C.prototype.updateOnFold=function(s,l){var e=l.lineWidgets;if(!(!e||!s.action)){for(var n=s.data,i=n.start.row,t=n.end.row,r=s.action=="add",o=i+1;o<t;o++)e[o]&&(e[o].hidden=r);e[t]&&(r?e[i]?e[t].hidden=r:e[i]=e[t]:(e[i]==e[t]&&(e[i]=void 0),e[t].hidden=r))}},C.prototype.updateOnChange=function(s){var l=this.session.lineWidgets;if(!!l){var e=s.start.row,n=s.end.row-e;if(n!==0)if(s.action=="remove"){var i=l.splice(e+1,n);!l[e]&&i[i.length-1]&&(l[e]=i.pop()),i.forEach(function(r){r&&this.removeLineWidget(r)},this),this.$updateRows()}else{var t=new Array(n);l[e]&&l[e].column!=null&&s.start.column>l[e].column&&e++,t.unshift(e,0),l.splice.apply(l,t),this.$updateRows()}}},C.prototype.$updateRows=function(){var s=this.session.lineWidgets;if(!!s){var l=!0;s.forEach(function(e,n){if(e)for(l=!1,e.row=n;e.$oldWidget;)e.$oldWidget.row=n,e=e.$oldWidget}),l&&(this.session.lineWidgets=null)}},C.prototype.$registerLineWidget=function(s){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var l=this.session.lineWidgets[s.row];return l&&(s.$oldWidget=l,l.el&&l.el.parentNode&&(l.el.parentNode.removeChild(l.el),l._inDocument=!1)),this.session.lineWidgets[s.row]=s,s},C.prototype.addLineWidget=function(s){if(this.$registerLineWidget(s),s.session=this.session,!this.editor)return s;var l=this.editor.renderer;s.html&&!s.el&&(s.el=R.createElement("div"),s.el.innerHTML=s.html),s.text&&!s.el&&(s.el=R.createElement("div"),s.el.textContent=s.text),s.el&&(R.addCssClass(s.el,"ace_lineWidgetContainer"),s.className&&R.addCssClass(s.el,s.className),s.el.style.position="absolute",s.el.style.zIndex=5,l.container.appendChild(s.el),s._inDocument=!0,s.coverGutter||(s.el.style.zIndex=3),s.pixelHeight==null&&(s.pixelHeight=s.el.offsetHeight)),s.rowCount==null&&(s.rowCount=s.pixelHeight/l.layerConfig.lineHeight
`)==-1){var T=new c.fromPoints(L,L);T.end.column+=h.length,this.session.remove(T)}}else{var T=this.getSelectionRange();L=this.session.remove(T),this.clearSelection()}if(h==`
`||h==`\r
`){var W=g.getLine(L.row);if(L.column>W.search(/\S|$/)){var I=W.substr(L.column).search(/\S|$/);g.doc.removeInLine(L.row,L.column,L.column+I)}}this.clearSelection();var F=L.column,_=g.getState(L.row),W=g.getLine(L.row),O=A.checkOutdent(_,W,h);if(g.insert(L,h),M&&M.selection&&(M.selection.length==2?this.selection.setSelectionRange(new c(L.row,F+M.selection[0],L.row,F+M.selection[1])):this.selection.setSelectionRange(new c(L.row+M.selection[0],M.selection[1],L.row+M.selection[2],M.selection[3]))),this.$enableAutoIndent){if(g.getDocument().isNewLine(h)){var B=A.getNextLineIndent(_,W.slice(0,L.column),g.getTabString());g.insert({row:L.row+1,column:0},B)}O&&A.autoOutdent(_,g,L.row)}},a.prototype.autoIndent=function(){var h=this.session,u=h.getMode(),g,A;if(this.selection.isEmpty())g=0,A=h.doc.getLength()-1;else{var L=this.getSelectionRange();g=L.start.row,A=L.end.row}for(var M="",T="",I="",F,_,W,O=h.getTabString(),B=g;B<=A;B++)B>0&&(M=h.getState(B-1),T=h.getLine(B-1),I=u.getNextLineIndent(M,T,O)),F=h.getLine(B),_=u.$getIndent(F),I!==_&&(_.length>0&&(W=new c(B,0,B,_.length),h.remove(W)),I.length>0&&h.insert({row:B,column:0},I)),u.autoOutdent(M,h,B)},a.prototype.onTextInput=function(h,u){if(!u)return this.keyBinding.onTextInput(h);this.startOperation({command:{name:"insertstring"}});var g=this.applyComposition.bind(this,h,u);this.selection.rangeCount?this.forEachSelection(g):g(),this.endOperation()},a.prototype.applyComposition=function(h,u){if(u.extendLeft||u.extendRight){var g=this.selection.getRange();g.start.column-=u.extendLeft,g.end.column+=u.extendRight,g.start.column<0&&(g.start.row--,g.start.column+=this.session.getLine(g.start.row).length+1),this.selection.setRange(g),!h&&!g.isEmpty()&&this.remove()}if((h||!this.selection.isEmpty())&&this.insert(h,!0),u.restoreStart||u.restoreEnd){var g=this.selection.getRange();g.start.column-=u.restoreStart,g.end.column-=u.restoreEnd,this.selection.setRange(g)}},a.prototype.onCommandKey=function(h,u,g){return this.keyBinding.onCommandKey(h,u,g)},a.prototype.setOverwrite=function(h){this.session.setOverwrite(h)},a.prototype.getOverwrite=function(){return this.session.getOverwrite()},a.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},a.prototype.setScrollSpeed=function(h){this.setOption("scrollSpeed",h)},a.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},a.prototype.setDragDelay=function(h){this.setOption("dragDelay",h)},a.prototype.getDragDelay=function(){return this.getOption("dragDelay")},a.prototype.setSelectionStyle=function(h){this.setOption("selectionStyle",h)},a.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},a.prototype.setHighlightActiveLine=function(h){this.setOption("highlightActiveLine",h)},a.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},a.prototype.setHighlightGutterLine=function(h){this.setOption("highlightGutterLine",h)},a.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},a.prototype.setHighlightSelectedWord=function(h){this.setOption("highlightSelectedWord",h)},a.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},a.prototype.setAnimatedScroll=function(h){this.renderer.setAnimatedScroll(h)},a.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},a.prototype.setShowInvisibles=function(h){this.renderer.setShowInvisibles(h)},a.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},a.prototype.setDisplayIndentGuides=function(h){this.renderer.setDisplayIndentGuides(h)},a.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},a.prototype.setHighlightIndentGuides=function(h){this.renderer.setHighlightIndentGuides(h)},a.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},a.prototype.setShowPrintMargin=function(h){this.renderer.setShowPrintMargin(h)},a.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},a.prototype.setPrintMargi
`){var T=g.getLine(u.end.row);/^\s+$/.test(T)&&(u.end.column=T.length)}}L&&(u=L)}this.session.remove(u),this.clearSelection()},a.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},a.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},a.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},a.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var h=this.getSelectionRange();h.start.column==h.end.column&&h.start.row==h.end.row&&(h.end.column=0,h.end.row++),this.session.remove(h),this.clearSelection()},a.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var h=this.getCursorPosition();this.insert(`
`),this.moveCursorToPosition(h)},a.prototype.setGhostText=function(h,u){this.session.widgetManager||(this.session.widgetManager=new b(this.session),this.session.widgetManager.attach(this)),this.renderer.setGhostText(h,u)},a.prototype.removeGhostText=function(){!this.session.widgetManager||this.renderer.removeGhostText()},a.prototype.transposeLetters=function(){if(!!this.selection.isEmpty()){var h=this.getCursorPosition(),u=h.column;if(u!==0){var g=this.session.getLine(h.row),A,L;u<g.length?(A=g.charAt(u)+g.charAt(u-1),L=new c(h.row,u-1,h.row,u+1)):(A=g.charAt(u-1)+g.charAt(u-2),L=new c(h.row,u-2,h.row,u)),this.session.replace(L,A),this.session.selection.moveToPosition(L.end)}}},a.prototype.toLowerCase=function(){var h=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var u=this.getSelectionRange(),g=this.session.getTextRange(u);this.session.replace(u,g.toLowerCase()),this.selection.setSelectionRange(h)},a.prototype.toUpperCase=function(){var h=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var u=this.getSelectionRange(),g=this.session.getTextRange(u);this.session.replace(u,g.toUpperCase()),this.selection.setSelectionRange(h)},a.prototype.indent=function(){var h=this.session,u=this.getSelectionRange();if(u.start.row<u.end.row){var g=this.$getSelectedRows();h.indentRows(g.first,g.last," ");return}else if(u.start.column<u.end.column){var A=h.getTextRange(u);if(!/^\s+$/.test(A)){var g=this.$getSelectedRows();h.indentRows(g.first,g.last," ");return}}var L=h.getLine(u.start.row),M=u.start,T=h.getTabSize(),I=h.documentToScreenColumn(M.row,M.column);if(this.session.getUseSoftTabs())var F=T-I%T,_=s.stringRepeat(" ",F);else{for(var F=I%T;L[u.start.column-1]==" "&&F;)u.start.column--,F--;this.selection.setSelectionRange(u),_=" "}return this.insert(_)},a.prototype.blockIndent=function(){var h=this.$getSelectedRows();this.session.indentRows(h.first,h.last," ")},a.prototype.blockOutdent=function(){var h=this.session.getSelection();this.session.outdentRows(h.getRange())},a.prototype.sortLines=function(){for(var h=this.$getSelectedRows(),u=this.session,g=[],A=h.first;A<=h.last;A++)g.push(u.getLine(A));g.sort(function(T,I){return T.toLowerCase()<I.toLowerCase()?-1:T.toLowerCase()>I.toLowerCase()?1:0});for(var L=new c(0,0,0,0),A=h.first;A<=h.last;A++){var M=u.getLine(A);L.start.row=A,L.end.row=A,L.end.column=M.length,u.replace(L,g[A-h.first])}},a.prototype.toggleCommentLines=function(){var h=this.session.getState(this.getCursorPosition().row),u=this.$getSelectedRows();this.session.getMode().toggleCommentLines(h,this.session,u.first,u.last)},a.prototype.toggleBlockComment=function(){var h=this.getCursorPosition(),u=this.session.getState(h.row),g=this.getSelectionRange();this.session.getMode().toggleBlockComment(u,this.session,g,h)},a.prototype.getNumberAt=function(h,u){var g=/[\-]?[0-9]+(?:\.[0-9]+)?/g;g.lastIndex=0;for(var A=this.session.getLine(h);g.lastIndex<u;){var L=g.exec(A);if(L.index<=u&&L.index+L[0].length>=u){var M={value:L[0],start:L.index,end:L.index+L[0].length};return M}}return null},a.prototype.modifyNumber=function(h){var u=this.selection.getCursor().row,g=this.selection.getCursor().column,A=new c(u,g-1,u,g),L=this.session.getTextRange(A);if(!isNaN(parseFloat(L))&&isFinite(L)){var M=this.getNumberAt(u,g);if(M){var T=M.value.indexOf(".")>=0?M.start+M.value.indexOf(".")+1:M.end,I=M.start+M.value.length-T,F=parseFloat(M.value);F*=Math.pow(10,I),T!==M.end&&g<T?h*=Math.pow(10,M.end-g-1):h*=Math.pow(10,M.end-g),F+=h,F/=Math.pow(10,I);var _=F.toFixed(I),W=new c(u,M.start,u,M.end);this.session.replace(W,_),this.moveCursorTo(u,Math.max(M.start+1,g+_.length-M.value.length))}}else this.toggleWord()},a.prototype.toggleWord=function(){var h=this.selection.getCursor().row,u=this.selection.getCursor().column;this.selection.selectWord();var g=this.getSelectedText(),A=this.selection.getWordRange().start.column,L=g.replace(/([a-z]+|[A-Z]+)(?=[A-Z_]|$)/g,"$1 ").split(/\s/),M=u-A-1;M<0&&(M=0);var T=0,I=0,F=this;g.match(/[A-Za-z0-9_]+/)&&L.forEach(function(N,U){I=T+N.length,M>=T&&M<=
---
`+t(this.$redoStack)},p}();R.prototype.hasUndo=R.prototype.canUndo,R.prototype.hasRedo=R.prototype.canRedo,R.prototype.isClean=R.prototype.isAtBookmark,R.prototype.markClean=R.prototype.bookmark;function k(p,w){for(var v=w;v--;){var f=p[v];if(f&&!f[0].ignore){for(;v<w-1;){var a=c(p[v],p[v+1]);p[v]=a[0],p[v+1]=a[1],v++}return!0}}}var C=E("./range").Range,s=C.comparePoints,l=C.comparePoints;function e(p){var w=p.action=="insert",v=p.start,f=p.end,a=(f.row-v.row)*(w?1:-1),h=(f.column-v.column)*(w?1:-1);w&&(f=v);for(var u in this.marks){var g=this.marks[u],A=l(g,v);if(!(A<0)){if(A===0&&w)if(g.bias==1)A=1;else{g.bias==-1;continue}var L=w?A:l(g,f);if(L>0){g.row+=a,g.column+=g.row==f.row?h:0;continue}!w&&L<=0&&(g.row=v.row,g.column=v.column,L===0&&(g.bias=1))}}}function n(p){return{row:p.row,column:p.column}}function i(p){return{start:n(p.start),end:n(p.end),action:p.action,lines:p.lines.slice()}}function t(p){if(p=p||this,Array.isArray(p))return p.map(t).join(`
`);var w="";return p.action?(w=p.action=="insert"?"+":"-",w+="["+p.lines+"]"):p.value&&(Array.isArray(p.value)?w=p.value.map(r).join(`
`):w=r(p.value)),p.start&&(w+=r(p)),(p.id||p.rev)&&(w+=" ("+(p.id||p.rev)+")"),w}function r(p){return p.start.row+":"+p.start.column+"=>"+p.end.row+":"+p.end.column}function o(p,w){var v=p.action=="insert",f=w.action=="insert";if(v&&f)if(s(w.start,p.end)>=0)$(w,p,-1);else if(s(w.start,p.start)<=0)$(p,w,1);else return null;else if(v&&!f)if(s(w.start,p.end)>=0)$(w,p,-1);else if(s(w.end,p.start)<=0)$(p,w,-1);else return null;else if(!v&&f)if(s(w.start,p.start)>=0)$(w,p,1);else if(s(w.start,p.start)<=0)$(p,w,1);else return null;else if(!v&&!f)if(s(w.start,p.start)>=0)$(w,p,1);else if(s(w.end,p.start)<=0)$(p,w,-1);else return null;return[w,p]}function c(p,w){for(var v=p.length;v--;)for(var f=0;f<w.length;f++)if(!o(p[v],w[f])){for(;v<p.length;){for(;f--;)o(w[f],p[v]);f=w.length,v++}return[p,w]}return p.selectionBefore=w.selectionBefore=p.selectionAfter=w.selectionAfter=null,[w,p]}function d(p,w){var v=p.action=="insert",f=w.action=="insert";if(v&&f)s(p.start,w.start)<0?$(w,p,1):$(p,w,1);else if(v&&!f)s(p.start,w.end)>=0?$(p,w,-1):(s(p.start,w.start)<=0||$(p,C.fromPoints(w.start,p.start),-1),$(w,p,1));else if(!v&&f)s(w.start,p.end)>=0?$(w,p,-1):(s(w.start,p.start)<=0||$(w,C.fromPoints(p.start,w.start),-1),$(p,w,1));else if(!v&&!f)if(s(w.start,p.end)>=0)$(w,p,-1);else if(s(w.end,p.start)<=0)$(p,w,-1);else{var a,h;return s(p.start,w.start)<0&&(a=p,p=y(p,w.start)),s(p.end,w.end)>0&&(h=y(p,w.end)),S(w.end,p.start,p.end,-1),h&&!a&&(p.lines=h.lines,p.start=h.start,p.end=h.end,h=p),[w,a,h].filter(Boolean)}return[w,p]}function $(p,w,v){S(p.start,w.start,w.end,v),S(p.end,w.start,w.end,v)}function S(p,w,v,f){p.row==(f==1?w:v).row&&(p.column+=f*(v.column-w.column)),p.row+=f*(v.row-w.row)}function y(p,w){var v=p.lines,f=p.end;p.end=n(w);var a=p.end.row-p.start.row,h=v.splice(a,v.length),u=a?w.column:w.column-p.start.column;v.push(h[0].substring(0,u)),h[0]=h[0].substr(u);var g={start:n(w),end:f,lines:h,action:p.action};return g}function m(p,w){w=i(w);for(var v=p.length;v--;){for(var f=p[v],a=0;a<f.length;a++){var h=f[a],u=d(h,w);w=u[0],u.length!=2&&(u[2]?(f.splice(a+1,1,u[1],u[2]),a++):u[1]||(f.splice(a,1),a--))}f.length||p.splice(v,1)}return p}function b(p,w){for(var v=0;v<w.length;v++)for(var f=w[v],a=0;a<f.length;a++)m(p,f[a])}x.UndoManager=R}),ace.define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(E,x,P){"use strict";var R=E("../lib/dom"),k=function(){function C(s,l){this.element=s,this.canvasHeight=l||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return C.prototype.moveContainer=function(s){R.translate(this.element,0,-(s.firstRowScreen*s.lineHeight%this.canvasHeight)-s.offset*this.$offsetCoefficient)},C.prototype.pageChanged=function(s,l){return Math.floor(s.firstRowScreen*s.lineHeight/this.canvasHeight)!==Math.floor(l.firstRowScreen*l.lineHeight/this.canvasHeight)},C.prototype.computeLineTop=function(s,l,e){var n=l.firstRowScreen*l.lineHeight,i=Math.floor(n/this.canvasHeight),t=e.documentToScreenRow(s,0)*l.lineHeight;return t-i*this.canvasHeight},C.prototype.computeLineHeight=function(s,l,e){return l.lineHeight*e.getRowLineCount(s)},C.prototype.getLength=function(){return this.cells.length},C.prototype.get=function(s){return this.cells[s]},C.prototype.shift=function(){this.$cacheCell(this.cells.shift())},C.prototype.pop=function(){this.$cacheCell(this.cells.pop())},C.prototype.push=function(s){if(Array.isArray(s)){this.cells.push.apply(this.cells,s);for(var l=R.createFragment(this.element),e=0;e<s.length;e++)l.appendChild(s[e].element);this.element.appendChild(l)}else this.cells.push(s),this.element.appendChild(s.element)},C.prototype.unshift=function(s){if(Array.isArray(s)){this.cells.unshift.apply(this.cells,s);for(var l=R.createFragment(this.element),e=0;e<s.length;e++)l.appendChild(s[e].element);this.element.firstChild?this.element.insertBefore(l,this.element.firstChild):this.element.appendChild(l)}else this.cells.unshift(s),this.element.insertAdjacentElement("afterbegin",s.element)},C.prototype.last=function(){return this.cells.length?
`&&i.getNewLineMode()!="windows",r=t?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=r)return this.EOL_CHAR=r,!0},n.prototype.setPadding=function(i){this.$padding=i,this.element.style.margin="0 "+i+"px"},n.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},n.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},n.prototype.$setFontMetrics=function(i){this.$fontMetrics=i,this.$fontMetrics.on("changeCharacterSize",function(t){this._signal("changeCharacterSize",t)}.bind(this)),this.$pollSizeChanges()},n.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},n.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},n.prototype.setSession=function(i){this.session=i,i&&this.$computeTabString()},n.prototype.setShowInvisibles=function(i){return this.showInvisibles==i?!1:(this.showInvisibles=i,typeof i=="string"?(this.showSpaces=/tab/i.test(i),this.showTabs=/space/i.test(i),this.showEOL=/eol/i.test(i)):this.showSpaces=this.showTabs=this.showEOL=i,this.$computeTabString(),!0)},n.prototype.setDisplayIndentGuides=function(i){return this.displayIndentGuides==i?!1:(this.displayIndentGuides=i,this.$computeTabString(),!0)},n.prototype.setHighlightIndentGuides=function(i){return this.$highlightIndentGuides===i?!1:(this.$highlightIndentGuides=i,i)},n.prototype.$computeTabString=function(){var i=this.session.getTabSize();this.tabSize=i;for(var t=this.$tabStrings=[0],r=1;r<i+1;r++)if(this.showTabs){var o=this.dom.createElement("span");o.className="ace_invisible ace_invisible_tab",o.textContent=C.stringRepeat(this.TAB_CHAR,r),t.push(o)}else t.push(this.dom.createTextNode(C.stringRepeat(" ",r),this.element));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var c="ace_indent-guide",d=this.showSpaces?" ace_invisible ace_invisible_space":"",$=this.showSpaces?C.stringRepeat(this.SPACE_CHAR,this.tabSize):C.stringRepeat(" ",this.tabSize),S=this.showTabs?" ace_invisible ace_invisible_tab":"",y=this.showTabs?C.stringRepeat(this.TAB_CHAR,this.tabSize):$,o=this.dom.createElement("span");o.className=c+d,o.textContent=$,this.$tabStrings[" "]=o;var o=this.dom.createElement("span");o.className=c+S,o.textContent=y,this.$tabStrings[" "]=o}},n.prototype.updateLines=function(i,t,r){if(this.config.lastRow!=i.lastRow||this.config.firstRow!=i.firstRow)return this.update(i);this.config=i;for(var o=Math.max(t,i.firstRow),c=Math.min(r,i.lastRow),d=this.element.childNodes,$=0,y=i.firstRow;y<o;y++){var m=this.session.getFoldLine(y);if(m)if(m.containsRow(o)){o=m.start.row;break}else y=m.end.row;$++}for(var S=!1,y=o,m=this.session.getNextFoldLine(y),b=m?m.start.row:Infinity;y>b&&(y=m.end.row+1,m=this.session.getNextFoldLine(y,m),b=m?m.start.row:Infinity),!(y>c);){var p=d[$++];if(p){this.dom.removeChildren(p),this.$renderLine(p,y,y==b?m:!1),S&&(p.style.top=this.$lines.computeLineTop(y,i,this.session)+"px");var w=i.lineHeight*this.session.getRowLength(y)+"px";p.style.height!=w&&(S=!0,p.style.height=w)}y++}if(S)for(;$<this.$lines.cells.length;){var v=this.$lines.cells[$++];v.element.style.top=this.$lines.computeLineTop(v.row,i,this.session)+"px"}},n.prototype.scrollLines=function(i){var t=this.config;if(this.config=i,this.$lines.pageChanged(t,i))return this.update(i);this.$lines.moveContainer(i);var r=i.lastRow,o=t?t.lastRow:-1;if(!t||o<i.firstRow)return this.update(i);if(r<t.firstRow)return this.update(i);if(!t||t.lastRow<i.firstRow)return this.update(i);if(i.lastRow<t.firstRow)return this.update(i);if(t.firstRow<i.firstRow)for(var c=this.session.getFoldedRowCount(t.firstRow,i.firstRow-1);c>0;c--)this.$lines.shift();if(t.lastRow>i.lastRow)for(var c=this.session.getFoldedRowCount(i.lastRow+1,t.lastRow);c>0;c--)this.$lines.pop();i.firstRow<t.firstRow&&this.$lines.unshift(this.$renderLinesFragment(i,i.firstRow,t.firstRow-1)),i.lastRow>t.lastRow&&this.$lines.push(this.$renderLinesFragment(i,t.lastRow+1,i.lastRow)),this.$highlightIndentGuide()},n.prototype.$renderLinesFragment=function(i,t,r){for(var o=
position: absolute;
background: rgba(128, 128, 128, 0.6);
-moz-box-sizing: border-box;
box-sizing: border-box;
border: 1px solid #bbb;
border-radius: 2px;
z-index: 8;
}
.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {
position: absolute;
z-index: 6;
background: none;
overflow: hidden!important;
}
.ace_editor>.ace_sb-v {
z-index: 6;
right: 0;
top: 0;
width: 12px;
}
.ace_editor>.ace_sb-v div {
z-index: 8;
right: 0;
width: 100%;
}
.ace_editor>.ace_sb-h {
bottom: 0;
left: 0;
height: 12px;
}
.ace_editor>.ace_sb-h div {
bottom: 0;
height: 100%;
}
.ace_editor>.ace_sb_grabbed {
z-index: 8;
background: #000;
}`,"ace_scrollbar.css",!1);var e=function(){function t(r,o){this.element=C.createElement("div"),this.element.className="ace_sb"+o,this.inner=C.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,r.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,s.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return t.prototype.setVisible=function(r){this.element.style.display=r?"":"none",this.isVisible=r,this.coeff=1},t}();k.implement(e.prototype,l);var n=function(t){R(r,t);function r(o,c){var d=t.call(this,o,"-v")||this;return d.scrollTop=0,d.scrollHeight=0,d.parent=o,d.width=d.VScrollWidth,d.renderer=c,d.inner.style.width=d.element.style.width=(d.width||15)+"px",d.$minWidth=0,d}return r.prototype.onMouseDown=function(o,c){if(o==="mousedown"&&!(s.getButton(c)!==0||c.detail===2)){if(c.target===this.inner){var d=this,$=c.clientY,S=function(f){$=f.clientY},y=function(){clearInterval(w)},m=c.clientY,b=this.thumbTop,p=function(){if($!==void 0){var f=d.scrollTopFromThumbTop(b+$-m);f!==d.scrollTop&&d._emit("scroll",{data:f})}};s.capture(this.inner,S,y);var w=setInterval(p,20);return s.preventDefault(c)}var v=c.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(v)}),s.preventDefault(c)}},r.prototype.getHeight=function(){return this.height},r.prototype.scrollTopFromThumbTop=function(o){var c=o*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return c=c>>0,c<0?c=0:c>this.pageHeight-this.viewHeight&&(c=this.pageHeight-this.viewHeight),c},r.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},r.prototype.setHeight=function(o){this.height=Math.max(0,o),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},r.prototype.setScrollHeight=function(o,c){this.pageHeight===o&&!c||(this.pageHeight=o,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop})))},r.prototype.setScrollTop=function(o){this.scrollTop=o,o<0&&(o=0),this.thumbTop=o*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},r}(e);n.prototype.setInnerHeight=n.prototype.setScrollHeight;var i=function(t){R(r,t);function r(o,c){var d=t.call(this,o,"-h")||this;return d.scrollLeft=0,d.scrollWidth=0,d.height=d.HScrollHeight,d.inner.style.height=d.element.style.height=(d.height||12)+"px",d.renderer=c,d}return r.prototype.onMouseDown=function(o,c){if(o==="mousedown"&&!(s.getButton(c)!==0||c.detail===2)){if(c.target===this.inner){var d=this,$=c.clientX,S=function(f){$=f.clientX},y=function(){clearInterval(w)},m=c.clientX,b=this.thumbLeft,p=function(){if($!==void 0){var f=d.scrollLeftFromThumbLeft(b+$-m);f!==d.scrollLeft&&d._emit("scroll",{data:f})}};s.capture(this.inner,S,y);var w=setInterval(p,20);return s.preventDefault(c)}var v=c.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(v)}),s.preventDefault(c)}},r.prototype.getHeight=function(){return this.isVisible?this.height:0},r.prototype.scrollLeftFromThumbLeft=function(o){var c=o*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return c=c>>0,c<0?c=0:c>this.pageWidth-this.viewWidth&&(c=this.pageWidth-this.viewWidth),c},r.prototype.setWidth=function(o){this.width=Math.max(0,o),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},r.prototype.setScrollWidth=function(o,c){this.pageWidth===o&&!c||(this.pageWidth=o,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>t
.ace_br1 {border-top-left-radius : 3px;}
.ace_br2 {border-top-right-radius : 3px;}
.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}
.ace_br4 {border-bottom-right-radius: 3px;}
.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}
.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}
.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}
.ace_br8 {border-bottom-left-radius : 3px;}
.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}
.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}
.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}
.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
.ace_editor {
position: relative;
overflow: hidden;
padding: 0;
font: 12px/normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', 'source-code-pro', monospace;
direction: ltr;
text-align: left;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.ace_scroller {
position: absolute;
overflow: hidden;
top: 0;
bottom: 0;
background-color: inherit;
-ms-user-select: none;
-moz-user-select: none;
-webkit-user-select: none;
user-select: none;
cursor: text;
}
.ace_content {
position: absolute;
box-sizing: border-box;
min-width: 100%;
contain: style size layout;
font-variant-ligatures: no-common-ligatures;
}
.ace_keyboard-focus:focus {
box-shadow: inset 0 0 0 2px #5E9ED6;
outline: none;
}
.ace_dragging .ace_scroller:before{
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
content: '';
background: rgba(250, 250, 250, 0.01);
z-index: 1000;
}
.ace_dragging.ace_dark .ace_scroller:before{
background: rgba(0, 0, 0, 0.01);
}
.ace_gutter {
position: absolute;
overflow : hidden;
width: auto;
top: 0;
bottom: 0;
left: 0;
cursor: default;
z-index: 4;
-ms-user-select: none;
-moz-user-select: none;
-webkit-user-select: none;
user-select: none;
contain: style size layout;
}
.ace_gutter-active-line {
position: absolute;
left: 0;
right: 0;
}
.ace_scroller.ace_scroll-left:after {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;
pointer-events: none;
}
.ace_gutter-cell, .ace_gutter-cell_svg-icons {
position: absolute;
top: 0;
left: 0;
right: 0;
padding-left: 19px;
padding-right: 6px;
background-repeat: no-repeat;
}
.ace_gutter-cell_svg-icons .ace_icon_svg{
margin-left: -14px;
float: left;
}
.ace_gutter-cell.ace_error, .ace_icon.ace_error {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");
background-repeat: no-repeat;
background-position: 2px center;
}
.ace_gutter-cell.ace_warning, .ace_icon.ace_warning {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");
background-repeat: no-repeat;
background-position: 2px center;
}
.ace_gutter-cell.ace_info, .ace_icon.ace_info {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");
background-repeat: no-repeat;
background-position: 2px center;
}
.ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");
}
.ace_icon_svg.ace_error {
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+");
background-color: crimson;
}
.ace_icon_svg.ace_warning {
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==");
background-color: darkorange;
}
.ace_icon_svg.ace_info {
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==");
background-color: royalblue;
}
.ace_scrollbar {
contain: strict;
position: absolute;
right: 0;
bottom: 0;
z-index: 6;
}
.ace_scrollbar-inner {
position: absolute;
cursor: text;
left: 0;
top: 0;
}
.ace_scrollbar-v{
overflow-x: hidden;
overflow-y: scroll;
top: 0;
}
.ace_scrollbar-h {
overflow-x: scroll;
overflow-y: hidden;
left: 0;
}
.ace_print-margin {
position: absolute;
height: 100%;
}
.ace_text-input {
position: absolute;
z-index: 0;
width: 0.5em;
height: 1em;
opacity: 0;
background: transparent;
-moz-appearance: none;
appearance: none;
border: none;
resize: none;
outline: none;
overflow: hidden;
font: inherit;
padding: 0 1px;
margin: 0 -1px;
contain: strict;
-ms-user-select: text;
-moz-user-select: text;
-webkit-user-select: text;
user-select: text;
/*with \`pre-line\` chrome inserts &nbsp; instead of space*/
white-space: pre!important;
}
.ace_text-input.ace_composition {
background: transparent;
color: inherit;
z-index: 1000;
opacity: 1;
}
.ace_composition_placeholder { color: transparent }
.ace_composition_marker {
border-bottom: 1px solid;
position: absolute;
border-radius: 0;
margin-top: 1px;
}
[ace_nocontext=true] {
transform: none!important;
filter: none!important;
clip-path: none!important;
mask : none!important;
contain: none!important;
perspective: none!important;
mix-blend-mode: initial!important;
z-index: auto;
}
.ace_layer {
z-index: 1;
position: absolute;
overflow: hidden;
/* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/
word-wrap: normal;
white-space: pre;
height: 100%;
width: 100%;
box-sizing: border-box;
/* setting pointer-events: auto; on node under the mouse, which changes
during scroll, will break mouse wheel scrolling in Safari */
pointer-events: none;
}
.ace_gutter-layer {
position: relative;
width: auto;
text-align: right;
pointer-events: auto;
height: 1000000px;
contain: style size layout;
}
.ace_text-layer {
font: inherit !important;
position: absolute;
height: 1000000px;
width: 1000000px;
contain: style size layout;
}
.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {
contain: style size layout;
position: absolute;
top: 0;
left: 0;
right: 0;
}
.ace_hidpi .ace_text-layer,
.ace_hidpi .ace_gutter-layer,
.ace_hidpi .ace_content,
.ace_hidpi .ace_gutter {
contain: strict;
}
.ace_hidpi .ace_text-layer > .ace_line,
.ace_hidpi .ace_text-layer > .ace_line_group {
contain: strict;
}
.ace_cjk {
display: inline-block;
text-align: center;
}
.ace_cursor-layer {
z-index: 4;
}
.ace_cursor {
z-index: 4;
position: absolute;
box-sizing: border-box;
border-left: 2px solid;
/* workaround for smooth cursor repaintng whole screen in chrome */
transform: translatez(0);
}
.ace_multiselect .ace_cursor {
border-left-width: 1px;
}
.ace_slim-cursors .ace_cursor {
border-left-width: 1px;
}
.ace_overwrite-cursors .ace_cursor {
border-left-width: 0;
border-bottom: 1px solid;
}
.ace_hidden-cursors .ace_cursor {
opacity: 0.2;
}
.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {
opacity: 0;
}
.ace_smooth-blinking .ace_cursor {
transition: opacity 0.18s;
}
.ace_animate-blinking .ace_cursor {
animation-duration: 1000ms;
animation-timing-function: step-end;
animation-name: blink-ace-animate;
animation-iteration-count: infinite;
}
.ace_animate-blinking.ace_smooth-blinking .ace_cursor {
animation-duration: 1000ms;
animation-timing-function: ease-in-out;
animation-name: blink-ace-animate-smooth;
}
@keyframes blink-ace-animate {
from, to { opacity: 1; }
60% { opacity: 0; }
}
@keyframes blink-ace-animate-smooth {
from, to { opacity: 1; }
45% { opacity: 1; }
60% { opacity: 0; }
85% { opacity: 0; }
}
.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {
position: absolute;
z-index: 3;
}
.ace_marker-layer .ace_selection {
position: absolute;
z-index: 5;
}
.ace_marker-layer .ace_bracket {
position: absolute;
z-index: 6;
}
.ace_marker-layer .ace_error_bracket {
position: absolute;
border-bottom: 1px solid #DE5555;
border-radius: 0;
}
.ace_marker-layer .ace_active-line {
position: absolute;
z-index: 2;
}
.ace_marker-layer .ace_selected-word {
position: absolute;
z-index: 4;
box-sizing: border-box;
}
.ace_line .ace_fold {
box-sizing: border-box;
display: inline-block;
height: 11px;
margin-top: -2px;
vertical-align: middle;
background-image:
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");
background-repeat: no-repeat, repeat-x;
background-position: center center, top left;
color: transparent;
border: 1px solid black;
border-radius: 2px;
cursor: pointer;
pointer-events: auto;
}
.ace_dark .ace_fold {
}
.ace_fold:hover{
background-image:
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");
}
.ace_tooltip {
background-color: #f5f5f5;
border: 1px solid gray;
border-radius: 1px;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
color: black;
max-width: 100%;
padding: 3px 4px;
position: fixed;
z-index: 999999;
box-sizing: border-box;
cursor: default;
white-space: pre;
word-wrap: break-word;
line-height: normal;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
pointer-events: none;
}
.ace_tooltip:focus {
outline: 1px solid black;
}
.ace_gutter-tooltip_header {
font-weight: bold;
}
.ace_gutter-tooltip_body {
padding-top: 5px;
}
.ace_gutter-tooltip .ace_icon {
display: inline-block;
width: 18px;
}
.ace_icon_svg {
display: inline-block;
width: 12px;
vertical-align: top;
-webkit-mask-repeat: no-repeat;
-webkit-mask-size: 12px;
-webkit-mask-position: center;
}
.ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {
padding-right: 13px;
}
.ace_fold-widget {
box-sizing: border-box;
margin: 0 -12px 0 1px;
display: none;
width: 11px;
vertical-align: top;
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");
background-repeat: no-repeat;
background-position: center;
border-radius: 3px;
border: 1px solid transparent;
cursor: pointer;
}
.ace_folding-enabled .ace_fold-widget {
display: inline-block;
}
.ace_fold-widget.ace_end {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");
}
.ace_fold-widget.ace_closed {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");
}
.ace_fold-widget:hover {
border: 1px solid rgba(0, 0, 0, 0.3);
background-color: rgba(255, 255, 255, 0.2);
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
}
.ace_fold-widget:active {
border: 1px solid rgba(0, 0, 0, 0.4);
background-color: rgba(0, 0, 0, 0.05);
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);
}
/**
* Dark version for fold widgets
*/
.ace_dark .ace_fold-widget {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");
}
.ace_dark .ace_fold-widget.ace_end {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");
}
.ace_dark .ace_fold-widget.ace_closed {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");
}
.ace_dark .ace_fold-widget:hover {
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
background-color: rgba(255, 255, 255, 0.1);
}
.ace_dark .ace_fold-widget:active {
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
}
.ace_inline_button {
border: 1px solid lightgray;
display: inline-block;
margin: -1px 8px;
padding: 0 5px;
pointer-events: auto;
cursor: pointer;
}
.ace_inline_button:hover {
border-color: gray;
background: rgba(200,200,200,0.2);
display: inline-block;
pointer-events: auto;
}
.ace_fold-widget.ace_invalid {
background-color: #FFB4B4;
border-color: #DE5555;
}
.ace_fade-fold-widgets .ace_fold-widget {
transition: opacity 0.4s ease 0.05s;
opacity: 0;
}
.ace_fade-fold-widgets:hover .ace_fold-widget {
transition: opacity 0.05s ease 0.05s;
opacity:1;
}
.ace_underline {
text-decoration: underline;
}
.ace_bold {
font-weight: bold;
}
.ace_nobold .ace_bold {
font-weight: normal;
}
.ace_italic {
font-style: italic;
}
.ace_error-marker {
background-color: rgba(255, 0, 0,0.2);
position: absolute;
z-index: 9;
}
.ace_highlight-marker {
background-color: rgba(255, 255, 0,0.2);
position: absolute;
z-index: 8;
}
.ace_mobile-menu {
position: absolute;
line-height: 1.5;
border-radius: 4px;
-ms-user-select: none;
-moz-user-select: none;
-webkit-user-select: none;
user-select: none;
background: white;
box-shadow: 1px 3px 2px grey;
border: 1px solid #dcdcdc;
color: black;
}
.ace_dark > .ace_mobile-menu {
background: #333;
color: #ccc;
box-shadow: 1px 3px 2px grey;
border: 1px solid #444;
}
.ace_mobile-button {
padding: 2px;
cursor: pointer;
overflow: hidden;
}
.ace_mobile-button:hover {
background-color: #eee;
opacity:1;
}
.ace_mobile-button:active {
background-color: #ddd;
}
.ace_placeholder {
font-family: arial;
transform: scale(0.9);
transform-origin: left;
white-space: pre;
opacity: 0.7;
margin: 0 10px;
}
.ace_ghost_text {
opacity: 0.5;
font-style: italic;
white-space: pre;
}`}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(E,x,P){"use strict";var R=E("../lib/dom"),k=E("../lib/oop"),C=E("../lib/event_emitter").EventEmitter,s=function(){function l(e,n){this.canvas=R.createElement("canvas"),this.renderer=n,this.pixelRatio=1,this.maxHeight=n.layerConfig.maxHeight,this.lineHeight=n.layerConfig.lineHeight,this.canvasHeight=e.parent.scrollHeight,this.heightRatio=this.canvasHeight/this.maxHeight,this.canvasWidth=e.width,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.canvas.style.top=0+"px",this.canvas.style.right=0+"px",this.canvas.style.zIndex=7+"px",this.canvas.style.position="absolute",this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},e.element.appendChild(this.canvas)}return l.prototype.$updateDecorators=function(e){var n=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;if(e){this.maxHeight=e.maxHeight,this.lineHeight=e.lineHeight,this.canvasHeight=e.height;var i=(e.lastRow+1)*this.lineHeight;i<this.canvasHeight?this.heightRatio=1:this.heightRatio=this.canvasHeight/this.maxHeight}var t=this.canvas.getContext("2d");function r(a,h){return a.priority<h.priority?-1:a.priority>h.priority?1:0}var o=this.renderer.session.$annotations;if(t.clearRect(0,0,this.canvas.width,this.canvas.height),o){var c={info:1,warning:2,error:3};o.forEach(function(a){a.priority=c[a.type]||null}),o=o.sort(r);for(var d=this.renderer.session.$foldData,$=0;$<o.length;$++){var S=o[$].row,y=this.compensateFoldRows(S,d),m=Math.round((S-y)*this.lineHeight*this.heightRatio),b=Math.round((S-y)*this.lineHeight*this.heightRatio),p=Math.round(((S-y)*this.lineHeight+this.lineHeight)*this.heightRatio),w=p-b;if(w<this.minDecorationHeight){var v=(b+p)/2|0;v<this.halfMinDecorationHeight?v=this.halfMinDecorationHeight:v+this.halfMinDecorationHeight>this.canvasHeight&&(v=this.canvasHeight-this.halfMinDecorationHeight),b=Math.round(v-this.halfMinDecorationHeight),p=Math.round(v+this.halfMinDecorationHeight)}t.fillStyle=n[o[$].type]||null,t.fillRect(0,m,this.canvasWidth,p-b)}}var f=this.renderer.session.selection.getCursor();if(f){var y=this.compensateFoldRows(f.row,d),m=Math.round((f.row-y)*this.lineHeight*this.heightRatio);t.fillStyle="rgba(0, 0, 0, 0.5)",t.fillRect(0,m,this.canvasWidth,2)}},l.prototype.compensateFoldRows=function(e,n){var i=0;if(n&&n.length>0)for(var t=0;t<n.length;t++)e>n[t].start.row&&e<n[t].end.row?i+=e-n[t].start.row:e>=n[t].end.row&&(i+=n[t].end.row-n[t].start.row);return i},l}();k.implement(s.prototype,C),x.Decorator=s}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/scrollbar_custom","ace/scrollbar_custom","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/css/editor.css","ace/layer/decorators","ace/lib/useragent"],function(E,x,P){"use strict";var R=E("./lib/oop"),k=E("./lib/dom"),C=E("./lib/lang"),s=E("./config"),l=E("./layer/gutter").Gutter,e=E("./layer/marker").Marker,n=E("./layer/text").Text,i=E("./layer/cursor").Cursor,t=E("./scrollbar").HScrollBar,r=E("./scrollbar").VScrollBar,o=E("./scrollbar_custom").HScrollBar,c=E("./scrollbar_custom").VScrollBar,d=E("./renderloop").RenderLoop,$=E("./layer/font_metrics").FontMetrics,S=E("./lib/event_emitter").EventEmitter,y=E("./css/editor.css"),m=E("./layer/decorators").Decorator,b=E("./lib/useragent");k.importCssString(y,"ace_editor.css",!1);var p=function(){function w(v,f){var a=this;this.container=v||k.createElement("div"),k.addCssClass(this.container,"ace_editor"),k.HI_DPI&&k.addCssClass(this.container,"ace_hidpi"),this.setTheme(f),s.get("useStrictCSP")==null&&s.set("useStrictCSP",!
`);this.addToken(u[0],"ghost_text",h.row,h.column),this.$ghostText={text:v,position:{row:h.row,column:h.column}},u.length>1&&(this.$ghostTextWidget={text:u.slice(1).join(`
`),row:h.row,column:h.column,className:"ace_ghost_text"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget))},w.prototype.removeGhostText=function(){if(!!this.$ghostText){var v=this.$ghostText.position;this.removeExtraToken(v.row,v.column),this.$ghostTextWidget&&(this.session.widgetManager.removeLineWidget(this.$ghostTextWidget),this.$ghostTextWidget=null),this.$ghostText=null}},w.prototype.addToken=function(v,f,a,h){var u=this.session;u.bgTokenizer.lines[a]=null;var g={type:f,value:v},A=u.getTokens(a);if(h==null||!A.length)A.push(g);else for(var L=0,M=0;M<A.length;M++){var T=A[M];if(L+=T.value.length,h<=L){var I=T.value.length-(L-h),F=T.value.slice(0,I),_=T.value.slice(I);A.splice(M,1,{type:T.type,value:F},g,{type:T.type,value:_});break}}this.updateLines(a,a)},w.prototype.removeExtraToken=function(v,f){this.session.bgTokenizer.lines[v]=null,this.updateLines(v,v)},w.prototype.setTheme=function(v,f){var a=this;if(this.$themeId=v,a._dispatchEvent("themeChange",{theme:v}),!v||typeof v=="string"){var h=v||this.$options.theme.initialValue;s.loadModule(["theme",h],u)}else u(v);function u(g){if(a.$themeId!=v)return f&&f();if(!g||!g.cssClass)throw new Error("couldn't load module "+v+" or it didn't call define");g.$id&&(a.$themeId=g.$id),k.importCssString(g.cssText,g.cssClass,a.container),a.theme&&k.removeCssClass(a.container,a.theme.cssClass);var A="padding"in g?g.padding:"padding"in(a.theme||{})?4:a.$padding;a.$padding&&A!=a.$padding&&a.setPadding(A),a.$theme=g.cssClass,a.theme=g,k.addCssClass(a.container,g.cssClass),k.setCssClass(a.container,"ace_dark",g.isDark),a.$size&&(a.$size.width=0,a.$updateSizeAsync()),a._dispatchEvent("themeLoaded",{theme:g}),f&&f()}},w.prototype.getTheme=function(){return this.$themeId},w.prototype.setStyle=function(v,f){k.setCssClass(this.container,v,f!==!1)},w.prototype.unsetStyle=function(v){k.removeCssClass(this.container,v)},w.prototype.setCursorStyle=function(v){k.setStyle(this.scroller.style,"cursor",v)},w.prototype.setMouseCursor=function(v){k.setStyle(this.scroller.style,"cursor",v)},w.prototype.attachToShadowRoot=function(){k.importCssString(y,"ace_editor.css",this.container)},w.prototype.destroy=function(){this.freeze(),this.$fontMetrics.destroy(),this.$cursorLayer.destroy(),this.removeAllListeners(),this.container.textContent="",this.setOption("useResizeObserver",!1)},w.prototype.$updateCustomScrollbar=function(v){var f=this;this.$horizScroll=this.$vScroll=null,this.scrollBarV.element.remove(),this.scrollBarH.element.remove(),this.$scrollDecorator&&delete this.$scrollDecorator,v===!0?(this.scrollBarV=new c(this.container,this),this.scrollBarH=new o(this.container,this),this.scrollBarV.setHeight(this.$size.scrollerHeight),this.scrollBarH.setWidth(this.$size.scrollerWidth),this.scrollBarV.addEventListener("scroll",function(a){f.$scrollAnimation||f.session.setScrollTop(a.data-f.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(a){f.$scrollAnimation||f.session.setScrollLeft(a.data-f.scrollMargin.left)}),this.$scrollDecorator=new m(this.scrollBarV,this),this.$scrollDecorator.$updateDecorators()):(this.scrollBarV=new r(this.container,this),this.scrollBarH=new t(this.container,this),this.scrollBarV.addEventListener("scroll",function(a){f.$scrollAnimation||f.session.setScrollTop(a.data-f.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(a){f.$scrollAnimation||f.session.setScrollLeft(a.data-f.scrollMargin.left)}))},w.prototype.$addResizeObserver=function(){if(!(!window.ResizeObserver||this.$resizeObserver)){var v=this;this.$resizeTimer=C.delayedCall(function(){v.destroyed||v.onResize()},50),this.$resizeObserver=new window.ResizeObserver(function(f){var a=f[0].contentRect.width,h=f[0].contentRect.height;Math.abs(v.$size.width-a)>1||Math.abs(v.$size.height-h)>1?v.$resizeTimer.delay():v.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},w}();p.prototype.CHANGE_CURSOR=1,p.prototype.CHANGE_MARKER=2,p.prototype.CHANGE_GUTTER=4,p.prototype.CHANGE_SCROLL=8,p.prototype.CHANGE_LINES=16,p.prototype.CHANGE_TEXT=32,p.prototype.CHANGE_SI
`)+`
`),h||(v.start.column=0,v.end.column=A[A.length-1].length),this.selection.setRange(v)}else{w.forEach(function(I){m.substractPoint(I.cursor)});var L=0,M=Infinity,T=b.map(function(I){var F=I.cursor,_=y.getLine(F.row),W=_.substr(F.column).search(/\S/g);return W==-1&&(W=0),F.column>L&&(L=F.column),W<M&&(M=W),W});b.forEach(function(I,F){var _=I.cursor,W=L-_.column,O=T[F]-M;W>O?y.insert(_,e.stringRepeat(" ",W-O)):y.remove(new k(_.row,_.column,_.row,_.column-W+O)),I.start.column=I.end.column=L,I.start.row=I.end.row=_.row,I.cursor=I.end}),m.fromOrientedRange(b[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(y,m){var b=!0,p=!0,w,v,f;return y.map(function(A){var L=A.match(/(\s*)(.*?)(\s*)([=:].*)/);return L?w==null?(w=L[1].length,v=L[2].length,f=L[3].length,L):(w+v+f!=L[1].length+L[2].length+L[3].length&&(p=!1),w!=L[1].length&&(b=!1),w>L[1].length&&(w=L[1].length),v<L[2].length&&(v=L[2].length),f>L[3].length&&(f=L[3].length),L):[A]}).map(m?h:b?p?u:h:g);function a(A){return e.stringRepeat(" ",A)}function h(A){return A[2]?a(w)+A[2]+a(v-A[2].length+f)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function u(A){return A[2]?a(w+v-A[2].length)+A[2]+a(f)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function g(A){return A[2]?a(w)+A[2]+a(f)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}}}).call(c.prototype);function d(y,m){return y.row==m.row&&y.column==m.column}x.onSessionChange=function(y){var m=y.session;m&&!m.multiSelect&&(m.$selectionMarkers=[],m.selection.$initRangeList(),m.multiSelect=m.selection),this.multiSelect=m&&m.multiSelect;var b=y.oldSession;b&&(b.multiSelect.off("addRange",this.$onAddRange),b.multiSelect.off("removeRange",this.$onRemoveRange),b.multiSelect.off("multiSelect",this.$onMultiSelect),b.multiSelect.off("singleSelect",this.$onSingleSelect),b.multiSelect.lead.off("change",this.$checkMultiselectChange),b.multiSelect.anchor.off("change",this.$checkMultiselectChange)),m&&(m.multiSelect.on("addRange",this.$onAddRange),m.multiSelect.on("removeRange",this.$onRemoveRange),m.multiSelect.on("multiSelect",this.$onMultiSelect),m.multiSelect.on("singleSelect",this.$onSingleSelect),m.multiSelect.lead.on("change",this.$checkMultiselectChange),m.multiSelect.anchor.on("change",this.$checkMultiselectChange)),m&&this.inMultiSelectMode!=m.selection.inMultiSelectMode&&(m.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())};function $(y){y.$multiselectOnSessionChange||(y.$onAddRange=y.$onAddRange.bind(y),y.$onRemoveRange=y.$onRemoveRange.bind(y),y.$onMultiSelect=y.$onMultiSelect.bind(y),y.$onSingleSelect=y.$onSingleSelect.bind(y),y.$multiselectOnSessionChange=x.onSessionChange.bind(y),y.$checkMultiselectChange=y.$checkMultiselectChange.bind(y),y.$multiselectOnSessionChange(y),y.on("changeSession",y.$multiselectOnSessionChange),y.on("mousedown",s),y.commands.addCommands(n.defaultCommands),S(y))}function S(y){if(!y.textInput)return;var m=y.textInput.getElement(),b=!1;l.addListener(m,"keydown",function(w){var v=w.keyCode==18&&!(w.ctrlKey||w.shiftKey||w.metaKey);y.$blockSelectEnabled&&v?b||(y.renderer.setMouseCursor("crosshair"),b=!0):b&&p()},y),l.addListener(m,"keyup",p,y),l.addListener(m,"blur",p,y);function p(w){b&&(y.renderer.setMouseCursor(""),b=!1)}}x.MultiSelect=$,E("./config").defineOptions(c.prototype,"editor",{enableMultiselect:{set:function(y){$(this),y?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",s)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",s))},value:!0},enableBlockSelect:{set:function(y){this.$blockSelectEnabled=y},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(E,x,P){"use strict";var R=E("../../range").Range,k=x.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(C,s,l){var e=C.getLine(l);return this.foldingStartMarker.test(e)?"start":s=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(e)?"end":""},this.getFoldWidgetRange=function(C,s,l){return null},this.indentat
.error_widget_wrapper {
background: inherit;
color: inherit;
border:none
}
.error_widget {
border-top: solid 2px;
border-bottom: solid 2px;
margin: 5px 0;
padding: 10px 40px;
white-space: pre-wrap;
}
.error_widget.ace_error, .error_widget_arrow.ace_error{
border-color: #ff5a5a
}
.error_widget.ace_warning, .error_widget_arrow.ace_warning{
border-color: #F1D817
}
.error_widget.ace_info, .error_widget_arrow.ace_info{
border-color: #5a5a5a
}
.error_widget.ace_ok, .error_widget_arrow.ace_ok{
border-color: #5aaa5a
}
.error_widget_arrow {
position: absolute;
border: solid 5px;
border-top-color: transparent!important;
border-right-color: transparent!important;
border-left-color: transparent!important;
top: -5px;
}
`,"error_marker.css",!1)}),ace.define("ace/ace",["require","exports","module","ace/lib/dom","ace/range","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config","ace/loader_build"],function(E,x,P){"use strict";E("./loader_build")(x);var R=E("./lib/dom"),k=E("./range").Range,C=E("./editor").Editor,s=E("./edit_session").EditSession,l=E("./undomanager").UndoManager,e=E("./virtual_renderer").VirtualRenderer;E("./worker/worker_client"),E("./keyboard/hash_handler"),E("./placeholder"),E("./multi_select"),E("./mode/folding/fold_mode"),E("./theme/textmate"),E("./ext/error_marker"),x.config=E("./config"),x.edit=function(n,i){if(typeof n=="string"){var t=n;if(n=document.getElementById(t),!n)throw new Error("ace.edit can't find div #"+t)}if(n&&n.env&&n.env.editor instanceof C)return n.env.editor;var r="";if(n&&/input|textarea/i.test(n.tagName)){var o=n;r=o.value,n=R.createElement("pre"),o.parentNode.replaceChild(n,o)}else n&&(r=n.textContent,n.innerHTML="");var c=x.createEditSession(r),d=new C(new e(n),c,i),$={document:c,editor:d,onResize:d.resize.bind(d,null)};return o&&($.textarea=o),d.on("destroy",function(){$.editor.container.env=null}),d.container.env=d.env=$,d},x.createEditSession=function(n,i){var t=new s(n,i);return t.setUndoManager(new l),t},x.Range=k,x.Editor=C,x.EditSession=s,x.UndoManager=l,x.VirtualRenderer=e,x.version=x.config.version}),function(){ace.require(["ace/ace"],function(E){E&&(E.config.init(!0),E.define=ace.define),window.ace||(window.ace=E);for(var x in E)E.hasOwnProperty(x)&&(window.ace[x]=E[x]);window.ace.default=window.ace,fe&&(fe.exports=window.ace)})}()}}]);